abobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaabobaaboba