@@@ @@@@@ @@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@XX@XX@@@XXX@@@@@@XXXXX@@@@@@@@@@@@@@X@@@@@@@@@@@@@XSXXXX@@@@@@@@@XXXX@XXXXXXXXXXXXXXXXXXXXXXXXXXXSXXSXXXXXXXXXXXX
   @@ @ @@@ @@@ @@@@@@ @@  @ @@@   @@ @ @@@@@ @@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@X@@@@@@@X@@@@@@@@@@@@@@@@@@@@@@@@XX@@@@@@@@@@@@XXSSXXXXX@@@@@@@@@@XXXXXXXXXXXXXXXXXXXXXXXXX@@XXXXXXXXXXXXXXXXXXX
@ @ @@ @ @    @ @@@@ @@ @@@ @ @ @@@ @@ @ @ @@@@@  @@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@X@XX@@XX@@@@@@XXXSSSXXXXXXXXSXX@@@@@@@@@@@XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX@XXXXXX@XX@@@
 @ @ @ @ @ @@ @ @ @ @  @@ @ @ @ @@@ @ @@@@@@@@@@@@@@ @@ @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S8SXSOOSSSSXXXS888SS8SSX@XXXXSSXX@@@@@@@@@@X@XXXXXXXXX@XX@XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
@ @ @ @ @ @  @  @ @ @@@ @@ @ @ @ @ @   @ @ @ @ @ @@@@ @@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@X@@@@SO8S8OO8S8O8SXS88S88888SX@@@X@@XXX@@@@@@@@@@@@@@XXXXXX@@@X@@XXX@XXXXXXXXXXXXXXXXXXXXXXXX
 @  @ @  @@ @ @ @ @   @  @@ @ @ @@  @ @ @ @@ @ @@ @@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@XXS8SSXXXXXS8SSXS888OO888SSXX@XX@@XX@XX@@@X@@@@@@@X@@@@@@@@@@@@@@@@XX@X@XXX@XXXXXXXXXXXXXX
@ @  @ @  @ @ @ @ @@ @ @ @ @ @@@@@@ @@@ @@@@ @@@ @@@@@ @ @@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@XSSXXX@@XXXXSSS8888S888SSSSXXXX@@@@@@@@@@@XXX@@@ @@@@@@@@@@@@@@@@@@@@X@@@@@@@XXXXXXXXXXXXX
   @ @ @ @ @ @ @@  @  @ @@ @    @ @   @ @@ @@ @@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@XXXX@@@@@@@@X@XXXSXXS8OO8SSSXSSSXXX@@@@@@@@@XX@@@@ @ @@@@@@@@@@@@@@@@@@@@@X@@@XXXXXXXXXXX@@
@@@@ @@ @ @  @   @ @ @ @ @@@@@@@ @ @   @ @@ @@@@ @ @@@@@@ @@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@X@XXSSO&OSSXSSSSSSXX@@@@@@@@@@@@@@@@  @@@@@@@@@@@@@@@@@@@@@@@@@XXXXXXXXX@@@
@  @ @ @@@@@@ @ @ @ @ @@ @ @@  @ @ @ @  @  @@@@ @@@ @ @ @@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@XXXXXXXXXXSSSSXXXXX@@XXX@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@X@X@@XXXXXX@@@
@ @  @  @ @ @ @ @  @@ @@ @ @@ @ @@ @@ @@ @@@@@ @ @@ @ @@ @ @@ @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@X@@@@@@@@@@@@@@@@@@@@@@@@@XXXXX@XXSSSSXXXXX@XXXSX@@@@@@@@@ @@@@@@ @@@@@@@@@@@@@@@@@@X@@@@@XX@XXX@X@@X
 @ @  @ @ @ @ @@ @  @  @@ @ @@@ @ @ @@ @@@@@@@@@@ @@@ @ @@@ @  @@  @@@@@@@@@@@XXXX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@XXSXXX@@@@@@@@@@@@@@@@@@@@@@@@XXXXXXXSS8888SXXSXXXXX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@X@XXXXXXX@
@  @ @  @@ @ @ @  @ @ @ @@@@ @ @ @ @ @  @@@@ @@@@@@@@@@@@@@@ @   @@@@@ @@@@@@@@XXXXXX@X@@@@X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@XXXXX@@@@@@@@@@@@@@@@@@@@@@@@@@@XXXXXXXXSSSXSXXX@@XXX@@@@@@@@@@@@ @@@@ @ @@@@@@@@@@@@@@@@@@@@@@@@XXX@@@
@ @  @ @ @ @ @ @@ @@ @ @  @ @ @@ @@ @ @@ @@ @   @@@@@@@@@@@ @  @ @@ @ @@@@@XXXX@@XXXXXXX@@@XXX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@XSSXX@@@@@@@@@@@@@@@@@@@@@@@@@@@XXXXXXX@XXSSSXXX@@@@@XX@@@@@ @@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@X@@@@@
 @ @  @    @ @ @ @ @@ @ @@@@ @ @@ @@ @@@@@@@  @@@@@@@@@@@@@@  @ @@@ @@@@@@@@XXSX@@@@@XX@XXXXXX@@X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@X8SX@@@@@@@@@@@@@@@@@@@@@@@@@XX@@@XXXXXXXXXXXSXX@@@X@@@XXX@@  @@@ @@ @@ @@ @@@@@@@@@@@@@@@@@@@@@@@X@@@XX
@  @ @  @@@ @ @ @  @ @ @ @  @@@  @  @@@@@@@ @@@@@@@@@@@@@@@@  @  @ @@@@@@@@@@@@@@@@@@@XXXX@@@XXXX@@@@@@@@@@@@@@@@@@@@@@@@   @@@@@@@XXSS@@@@@@@@@@@@@@@@@@@@@@XXXXXX@@@@XXXXXSSXXXXXXXXX@XXXX@@XX@@@ @@ @ @  @@@@ @@@@@@@@@@@@@@@@@@@@@X@@X@XX
@   @  @ @   @  @ @ @ @@ @ @ @ @ @ @ @@ @ @@@@@@@@ @@@@@@@@ @    @ @@@@@@ @  @@@@@@X@@@@@X@@XX@XXX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@XSSSX@@X@@@@@@@@@@@@@@@@@@XXSXSXXSXXXXXXXXSSSSSXXS8XXXXXXX@@@@X@@ @@@ @  @  @@ @@@@@@@@@@@@@@@@@@@@X@@@@@XX
@ @@ @ @  @@ @@ @ @ @ @   @ @@  @  @     @@@@@@@@@@@@@@@@@@@    @  @  @@ @@@@@@@@@@X@XXXX@@XXXX@@XXXXXX@@@@@@@@@@@@@@@@@@@@@@@@@@@XSSXX@XX@@@@@@@@@@@@@@@@@@@@@@@@XXXS8SXSXXXSS88SSSSXX@XXX@@X@@@XX@@@@@ @ @@  @  @@@@@@@@@@@@@@@@@@@XX@@X@XX
@  @ @ @@  @@ @ @@ @ @ @ @@@ @@@ @ @@@@@@@@@@@@@@@@@XXXX@@@       @@@@@@@@@@@@@@@@@@@XXXXXXXXSXXXXXXXXXXX@@@@@@@@@@@@@@  @@@@@@@@@XXXXXX@@@@XXX@@@@@@@@@XXXXX@@@X@XXXXSSS888SSS8O8SSSXXX@XX@@XX@@@@@@@@@ @@ @ @    @@@@@@@@@@@@@@@@@X@XXXXX@X
 @  @ @  @ @@ @@@ @@@ @@@@ @ @ @ @@   @@@@@@@@@@@XXXXX@X@@   @   @@ @@@@@@@@@@@@@@@@@@@XXXXXXXXXXXXXX@XXX@@@@@@@@@@@@@@@@ @@@@X@@@XXX@@@@@XXXXX@XXXXXX@@@XX@XXX@XXXSSXXSSS888SS88S8888SS@XXX@@@@@@@@@@@@@  @@ @    @@@@@@@@@@@@@@@@XXX@XXXXXX
@ @    @ @@ @@ @@@@@@@ @ @  @ @ @   @@@@@@@@@@@@@XXXX@@@@@      @   @@@@@  @@@@@@@@@@@@@@XXXSSXXXXXXXXXXXX@@@@@@@@@@@@@@  @@@@X@XXXX@XXX@@X@@@@@@@@@@X@@@@@@@@X@@XXXSSSSS8SS8O8S8S88O88SXSSX@@@@@@@@@@@ @@@@ @@@ @ @ @@@@@@@@@@@@@@XX@@XXXXXX
@  @ @ @  @   @  @ @ @@ @ @ @ @ @ @ @@@@@@@@@@@@XXXX@@@@@  @ @  @ @@ @@@ @@@@@@@@@@@@@XXX@XXXXX@XXXXXXXXXXX@@@@@@@@@@@@@ @@@@@@XSXX@@XX@@@@@@@X@@@@XX@@@@@@@@@XXXXXXXX88888SSS8O888OOOO8SSSSXXX@@@@@@@@@@@@@@@ @@  @@@@@@@@@@@@@@@@XX@@XXX@XX
 @@ @ @ @@ @ @ @ @ @ @ @ @ @@ @@@ @@@@@@@@@@@@@XXX@@@@@@ @       @@ @@@@@@@@@@@@@@@@@@@@XXXXXXXXXXXXXXXSXXX@@@@@@@@@@@ @@@@@@@@S8SX@@@@@@X@@@XXX@XXXXXX@X@@XXXXXXXXXXXSSS8O88SS88OOOOOO&O888X@X@@@@@@@@@@@@@@@ @@ @@@@@@@@@@@@@@@@@@X@XXXXXXX
  @ @ @@ @ @@  @ @ @@ @@ @@    @  @@@@@@@@@@@@XXSX@@@@@ @ @ @  @    @@@@@@@@@@@@@@@XX@@@XXXXXXSSXX@XSX@X8XXXXX@@@@@@@@@@ @@@@XXS8SX@@@@@@@@@@@X@@XXXXXSSXX@XXXXXXXXSSSSS888OOO8SS8OO&&&&&O888@@@@@@@ @@ @@ @@@@@@  @@  @@@@@@@@@@@@XXXXXXXXXX
@ @ @ @  @ @ @ @ @@ @ @ @ @ @@ @ @@@@@@@@@@@@XSXXXX@@@ @  @   @  @ @@ @@@@@@@@@@@X@XX@@@@XXXXXXSSXXXXXXXXSXXXX@@@@@@@@@@@@@@@XXXSSX@@@@@@@@@@@@@@@X@@@X88X@@@X@XXXXXXSS8SS8OOOOO88SOO&&&&&OO8X@@@@@@@ @@ @@ @ @ @ @@ @@@ @@@@@@@@@XXX@XXXXXXX
@ @ @  @ @@ @ @ @@ @ @ @  @ @ @@@@@@@@@@@@@XXXXXX@@@@   @  @ @@@@@@@@@@@@@@@@@XX@@XXX@X@@@XXXXXXS8SXXXXXXXXXXXXX@@@@@@@@@@@@@XXXSXXX@@@@@@@@@@@@X@@@X@@@XXX@@@@XXXXSSS88888888O&&O88O&&OOOOO88X@@@@@@ @@ @@@@  @@@@@  @ @@@@@@@@@@@XXXX@XXXXX
 @@@  @ @ @ @ @ @ @ @ @ @ @@@  @@@@@@@@@@@@@@@X@@@@@ @ @ @ @ @@ @@@@@@@@@@@@@@XX@@@@XXX@@@@@XSXXXSSSXXXXX@XXXSXX@@@@@@@@@@@@@@@XSSXX@@@@@@@XX@@@@@@XXXX@XXXXX@@@XSS8SS8888OO8OO&&*&OOOOOOOO888SX@@@@@ @@    @@@ @ @ @  @  @@@@@@@@@XXX@XXXXXX
   @ @ @@ @ @ @ @ @ @ @ @@@ @ @@@@@@@@@@ @@@@@@@@@    @ @@@@@@@@@@@@@@@@@@@@XX@XXSX@@@@XX@@@@XXXXXSSSXX@XXXXXXX@@@@@@@@@@@@@@@@@XSSSXXXXXXXX@@@@@@XXX@XXXXXXSXXXXSSS888S88OO&OOOOO&&&OOOO888SSSSX@@@@@@@@@@@  @ @@@ @@ @@@ @@@@@X@@@XXXXXXXXX
@ @ @ @ @ @  @ @@@ @ @   @ @ @@@@@ @@@@@@@@@@@@@ @  @ @@@@@@@@@@@@@@@@@@@@@@@XX@@XXXXXXXXXXXX@@@XXXXXXXXXXX@@XX@@@@@@@@@@@@@X@XXXX88SXSS8SXX@XX@@@@@@XXXXSS88SSSSSS8OOO8OOOOOO&OOOOO&&OOO8S88XXSX@@@@@@@@@@ @@ @@@@@@@  @ @@@@@@@XXXXX@XXXXXX
@  @ @ @ @ @ @ @ @ @@ @@ @@@ @@@@ @@@@@@@@@@@@@@ @ @ @@@@@@@@@@@@@@@@@@@@X@@@@@@@@@XXXXXXXXSX@@@XXSXSXX@@@@@@@X@@@@@@@@@@@@@@XXXXXS8888888SSXXX@@@@@XXXXXSXS8S8888SS8OO&&&&OO&&&&OO8O&O8O8SSSSXXXX@@@X@@@XX@@@@@@ @@@ @@ @ @ @@@@@XX@XXXXXXXX
@@ @ @ @  @@@@@ @ @ @@ @@@  @@@@@@@@@  @@@@@@@@@ @  @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@XXSSXXXXXXXXXXXSS@X@@@@X@@@@@@@@@@@@@@XXXXSSSSSS88OOOO8SXXXXX@XXXXSSXSS8SS8S8888O&&&&&&&&O&&&OO88OO8SXXXXX@XX@@XX@@X8X@@@@@@@@@@@@  @ @ @@@@@XXXXXXXXXX
 @ @ @@ @@  @ @@@@@@ @ @ @ @@@@ @@@@@@@@@@@@@@@@  @@@@@@@@@@XXX@@XXXXXX@@@@@@@@@@X@@@@@@XXSXXXXXXXXXXXXX@@@@XX@@@@@@@@XXXXXXXXS8S888888OO&&&O88SSXXXXXXXSS8S888S8S88OOOO&&&OOO&&OOOOO8S8O8SSXXXXX@@@@@@X@@8S@@@@X@@ @@ @@@  @@@@@@@@@X@XX@XXX
@ @@@@ @  @@@@ @  @@ @ @@@ @@@@@@@@@@@@@@@X@@@@@@@@@@@@@XXXXXSSXXXXSSSSXXXXXXX@@@@@@@@@@@XXSSXXXXXXXXXXX@@@@SX@@@@@@@@@XXXXXSS88OOOOOOO&&&&*&&88O&OSSXXXXSS888O888888OOOO&&OO888888OO88SSSSSXXXXX@@@@@@@@@@XX@@@@@X@ @@ @@ @   @@@@@X@@@@XXXX
 @ @ @ @@ @@ @@ @@@ @@ @@@ @@  @@@@@X@X@XXX@@ @ @ @@@@@XXXSSS88SSS88888O8888SSXXXXX@X@@@@XXSSSSSXSSXXSSXXXX@XX@@@@@@@@XXXXXS8OOOO&&&&&*&***;;*&OOO&&8SSSSSS888O8OOOOOOO&&&&&&O8SSSS88OO8SXXSSXX@@@@@@@@@@@@@@@@@@@XX@@@@@@ @ @ @@@@@XX@XXXXXX
@  @@ @ @@ @@ @@@@ @@@@@@    @@@@@@XXXXXX@@@@@@ @@@@@XXXSS888OOO88OO&OOO&&OO88SSSSXXXXX@@XXXXSSXXXS8SXSSXXXX@@XX@@@@@@XXXXS88O&&&***;;;;;:;:::;O&O8O&O8S8OO8888OOOOO&&&&&&&*&&OO8SXXS8OO8SXXXXXX@@@@@@@@@@@ @ @@@@@XX@@@@@@@ @  @@@XXXXXXXXXX
 @ @ @ @ @@ @@@@ @ @ @@@   @@@@@@@XXXXX@@@@@@@ @@@@XXXSS8888OOO&OOO&**&&&*&&&OOOO8888SXXXX@@XXSSXXS88SSXXXXX@XXSXX@@@@XXXSS8OO&**;;;;;:::::::-:*O&O8OOO88O*&O8OOO&&&&&&&&&&&&OOO8SXXXXS88SXXXXXX@@@@@@@@@@@ @@@@@@@XXX@@@@@@  @@@@@@XX@XXXXXX
@ @ @@@ @@@ @ @@@ @ @@@    @@@@@XXXXXX@@@@@@@@@@@@@XSS88888OOO&&&&&&*****;*&&&&&&&&&&OOO88XX@XSSSXX8888SX@@@XXSSX@@@@@XXSS88O&**;:::::::-------:;&&OOO&OOO**&OOOO&&*&&&*&OOOOO8SSSXXXXXSS8SXXXXXX@@@@@@@@@@@@@@@@@@XXXX@@@@@@  @ @@@XX@XXXXXX
 @ @ @@@ @@ @ @@ @@@@@@ @  @@@XXXXX@@@@@XXX@@@@@@XXSSS888OOO&&*;********;******&*;;**;****&8SXXSOSXS888SXXXXXSXXX@@@@@XXXS8O&*;;:::--:----------::**&&&OOOO&&&&&&&&*****&&OO888SXXSXXXX@XXSXXX@@XX@@@@@@@@@@@@@X@@ @@@XX@@@@  @ @@@@X@X@XXXXX
@ @ @@ @@ @@ @ @ @@ @ @    @ @X@@@X@XX@XSSX@@XXXXXS888OO&&&&&****;;;;;;;;*;;;*;**;;;;:;;:::;&8SXSOSXSS8SXSXXXSXXXXX@@XXXXS8&*;;:::---------и---и-:;;:;**&OOOOO&****&&&&*&OOO8SSSSSXXXXXX@XXXXXX@@@@@@@@@@@@@@@@@@@@@@@XX@@@ @@@ @@@@@XXX@XXXX
@@ @ @@ @@ @@@@ @@@@ @@    @@@@@@X@XXXXSSX@@XXXSSS8OOO&&**;*;;;;;;;;;:::;;;;:;:;;;;;;::::::::*8SX88XXXXXXSXXXXXXXXX@X@XSS8O&*;::::--------иииии----;::;;;&OOOO&&******&&&&&OO8SXXXXXXXXXXXXXXXX@@@@@@@@@@@@@@@@@@@@@@@@XX@@@@@@@@@@@@XXXXXXXX
 @@@@@@@@@@ @ @@   @@ @   @@@@@@@@@XX@XXX@@XXXSSS88O&&&***;;;:::;:::::::::::::::::::::::::::::*8XSSSXXSXXXXXXSXXXX@XXXXX8O&*;:::::------ииииииии----;;:;::*&&&O&&**&&&&***&O8SSSXXXXXXXXXX@@@XXX@@@@@@@@@@@@@@@@@@@@@@XXS@@@@@ @@@@@@@XXXXXXX
@ @ @ @ @ @ @@ @@@@ @@ @  @@ @@@XXX@@@X@@XXXXXS88OOO&****;;;::::::::::::-::--::----------:::::;&SXSSX@XXXXXXXSSSSSXXX@XSO&*;;:::--------иииииииииии--;::;::;*&&O&&&&&&O&&OO8SXXXXXX@@@@@XX@@@@X@@@@@@@@@@@@@@@@@@@@@@@XXXX@@@@ @  @@@X@XXXXXX
@ @@@ @@@@@ @ @@ @@       @@ @@XX@@@XXXXXSXSSS8OOO&&&***;;;:;:::::::::-:------------------:::::*OSSSSX@XX@@@XS88OOSXXXS8O&*;::::-------ииииииииииииии:::::::;;;*&&&&&&OO8888SSSSSXXXX@@@@@@@@XX@@@@@@@@@@@@@@@@@@@@@@@XXXSX@@ @ @@@@@@XXXXXXX
@@@ @@ @ @ @ @ @@@@@@@ @ @@ @@@X@@@@@@XXXSSXS88OO&*****;;;;::::::::::::-------------------:::::;&OSSSX@@XX@@@X8O88XXXS8O&&*;:::--------и-иииииииииииии-:-:::::::;;;***&&OOOOOOOOO88SSXXX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@XXXSSXX@@@ @@@@@XXXXXXX
 @ @ @ @@ @ @ @ @@@@@    @@ @@@@@X@@@@XXXXXXSS8O&*****;;;;::::::::::::----------------------::::;&8SSXX@XX@@XX8O8SS8S88O&*;:::-:--------и-ииииииии,ии,ии-:::--:::::;;;*&&&&;;;;;&&OO888SX@@@@@@@X@@@@@@@@@@@@@@@@@@@@@@XXS88S@@@ @ @@@@XXXXXX
@ @@ @@ @@ @@@@@@@@@    @@@  @@ @X@@@XX@XXSS8O&****;;;;;;:::::::::::-------------------------::::*OSSXXXXX@@XXX88SS8888O&*;:::---------иииииииии,ииииииии-----::-:;****;;;;;:::;:;**&&&OOSX@@X@@@@@@@@@@@@@@@@@@@@@@@@@@XSS88X@@ @@@@@@@XXXXX
 @ @  @@ @@@@@@@@@@ @   @   @  @X@@@@X@XXSOO&&****;;;;;;;;:::::::::--:------------------------:::;&88SXX@X@@XXXSSS8888OO&*;:::--------ииииииииииии,и,,иииииии-----::::;::::;**;::;;***;;;*OSX@@@@@@@@@@@@@@@@@@@@@@@@@@@XXXS8SX@@@@@@@@@XXXXX
@ @ @@ @@ @ @ @ @ @@       @ @@@@@@@@XX8OO&&***;;;;;;;;;;::::::::::-----------------------------::*O8SXX@@@XXXXXS88888O&**::::--------иииииииииииии,,,,,и,,,,,,,,,иии-------:::;;;;;:;;;;;*&8SX@@@@@@@@@@@@@@@@@@@@@@@@@@XSXXSSX@@@@@@@XXXXXX
 @ @ @@ @@@@@@@@@@    @ @  @  @XX@@@XS8O&&&&****;;;;;;;;::::::::----------------и--------------:::;&OSXXX@@XXXXSS888S8O&*;::::-------ииииииииииии,,,,,,и,,,,,,.,,,,,,,,,ииииииии--ии--::::;;&O8X@@@@@@@@@@@@@@@@@@@@@@@@@@XSXXXXX@@@@@@@XX@XX
 @ @ @ @@@@ @ @@@ @@  @ @   @@@X@@XXSOO&&&&****;;;;;;;;;:::::::::-------------и-и-и-------------::;*&8XXX@X@@XXX8888S8O&*;:::-------и-и-ииииииии,ии,,,,,,,,,,.....,,,,,,,,и,и,,иииииии--:::;*&O8XXX@@@@@@@@@@@@@@@@@@@@@@@@SS@XSX@@@@@XXXXXXX
 @ @ @@  @ @@@ @ @@  @@ @   @@@@@@XS8OOO&&&****;;;;;;;;;:::::::-------------ииииииии-------------::;&OSXXXXXXXXXS88SS8O&*;::---------ииииииииииии,,,,,,,,,,.,......,,,,,,,,,,,,ииииииии-::::;*&O88XXXX@@@@@@@@@@@@@@@ @@@@@X8XXSX@@@@@XXXXXXX
 @ @ @ @ @@@ @ @@ @  @@@    @@@@@@XS8O&&&&&***;;;;;;;;;:::::::------------ии-иии-иииии-----------:::*O8XXX@XXXSXXSXSX8O&*;:::-------ииииииииииииии,и,,,,,,,,.,.,.,,,,,,,,,,,,,ииииииииии--:::;*&&O8SXXX@@@@@@@@@@@@@@@@@@@@@88XSSX@@@@XXXXXXX
  @ @ @@ @ @@ @@@   @@@    @ @@@@@XS8O&&&&&***;;;;;;;;:::::::--------------ииииииииии-----------::::;&8SXX@XXXSSXSSXX8&&*;::--------ииииииииииии,,и,,,,,,,,,,,,,,.,,,,,,,,,,,иииииииии-----:::;*&&O8SXX@@@@@@@@@@@@@@@@@@@@@XOXXSX@@@@@XXXXXX
@ @ @@ @@@@ @@@@ @ @@@@ @   @@@@@XS88&&&&&***;;;;;;;;::::::::-----------и-ии-ииииииииии------------::*88SX@@XXSSSXXSX8&**;::--------иииииииииииии,,,,,,,,,,,,,,.,.,,,,,,,,,,,,ииииииииии-и--::;**&O88SSXX@@@@@@@@@@@@@@ @@@@@S8XSS@@@@@X@XXXX
 @ @ @@ @ @@ @ @@   @@@     @ @@@XS8O&&&&****;;;;;::::::::::----------ииии-ииииииииииииии-----------:;O8OSX@XSXSSXXXS8&**:::-------и-иииииииии,ии,и,,,,,,,,,,,,,...,,,,,,,,,,ииииииииииии-----:;**OO88SSX@@@@@@@@@@@@@@@@ @@@@SXXXX@@@@XXXXXX
@ @ @ @@ @@@@@@@  @@@@     @@ @@@XX8O&&&&***;;;;::;:::::::::--------ииииииииииииииииииииии----------::&O&OX@XXSSSXXXS8&**:::-------и-ииииииииии,и,,,и,,,,,,,,,,..,.,,,,,,,,,и,иииииииииииии---::;**OO88SSX@@@@@@@@@@@@@@@@ @@@@SXXXX@@X@X@XXX
 @ @ @@@@@@ @@ @   @@@@    @  @@@XSOO&&&&***;;;:;:::::::::::------и-иииииииииииииииииииииии---------::*O&&8X@XXSXXSXX8&*;;:-------и-ииииииииииии,,,,,,,,,,,,,,,,,,.,,,,,,,,,,,ии,иииииииии-----:;;*&O8888SX@@@@@@@@@@@ @@ @@@@@XSXX@@@@XXX@XX
@ @ @ @@ @@@ @  @ @@@@       @ @@XSOO&&&&***;;;::::::::::::------и-ииииииииииииииииииииии-и-и--------:*O&&OSXXSSXXSSSO&*;:::--------иииииииииии,,и,,,,,,,,,,,,,,,,,,,,,,,,,,,,и,иииииииииии-----:;**&OOO8SXX@@@@@@@@@@@@@@@@@@@@XSX@@@XXXXXXX
@ @@ @ @ @@ @ @ @ @@X@     @  @@@XSOO&&&&**;;;;::::::::::::-------ииииииииии,и,ииииииииииииииии-------;&&**OSXSSXXXSSO&*;;::--------ииииииии,и,ии,и,,,,,,,,,,,,,,,.,,,,,,,,,,,,иииииииии-и-и-----::;*&OOO8SSX@@@@@@@@@@@@@@@@ @@@SS@@@@@XXXXX
 @ @@@@ @@@@  @   @XX       @@@@@XSOO&&&***;;;::::::::::::--------и-иииииииии,иииииииииииии-и-и-------:*O;*&OSXXXXXXSO&*;;:--------иииииииии,и,,и,,,,,,,,и,,,,,,,,,.,,,,,,,,,и,ииииииии-и-и-----:-::;*&&&O8SXX@@@@@@@@@@@@@@@@@X@@SX@@@@@@XXX
@ @  @ @@@ @@ @   @X@       @ @@@XSOO&&&**;;;:::::::::::::-------и-ииииииииии,иииииииииииии-ии--------:;&*;**OXXXXXXS&&**;::--------иииииииии,и,,,и,,,,,,,и,,,,,,,,..,,,,,,,,ии,ииииииии---------:--:;**;&O8SX@@@@@@@@@@@@@@@@@@@@XX@@@X@XXXX
 @ @ @@ @ @ @     XX@       @@@@@X8OO&&&**;;;::::::::::::---------ииииииииии,ииииии,ииииииииии--------::&&;;;*8XXXXX8&**;;::------ииииииииии,и,и,и,,,,,,,и,,,,,,,,,...,,,,,,,,ииииииииии---------:--::;*;;*&8SX@@@@@@@@@@@@@@@@@XXXXX@@@XXXXX
  @ @ @@ @ @ @   @XX@      @ @ @@X8OO&&&**;;:::::::::::::---------иииииииии,и,и,иииииииии---и-и--------:;&;;;;&SXXXX8&**;;::------иииииииииии,и,ии,и,,,,,и,и,,,,,,,,,,,,,,,,,,ииииииииии-------------::;*;:*&8XX@@@@@@@@@@@@@@XO&&OX@@@XXXXXX
@ @@ @ @ @ @     @XX@       @ @@@SOOOO&***;;;::::::::::---------и-иииииииии,и,и,,ииииииииии-ии--и-------:&*:;;:OXXXS8&**;;::-----иииииииииии,и,и,и,и,,,и,,и,,,,,,,,,,,,,,,,,,иииии-иииииии----------::::*;;;*O8X@@@@@@@@@@@@@X&;*&OS@@@@XXXXX
@  @ @@@ @@   @@@XX@       @   @@S8OO&&&**;;:::::::::::-----------ииииииии,и,,,,ииииииииииии-ии---------:;*;:;;:8XXX8&**;;::----иииииииииииии,и,,и,,ии,,и,,и,,,,,,,,,,,,,,,,,ииии---ии,иии----------:-::;;;;*&OS@@@@@@@@@@@@@SO&&&&8@@@@XX@XX
 @@ @ @ @ @@@@@@@XX@        @ @@@S8OO&&&**;:::::::::::-----------иии-иииии,,,,,и,,,ииииииии-и-иии--------:;*:;;:*8XX8***;;::----ииииииииииииии,,,и,,,и,,,и,и,,,,,,,,,..,,,иииии------ииииии----------:::::;;**OSX@@@@@@@@@@@@@@X8O&8@@@@XX@XX
@ @ @ @@ @  @@  @@X@        @ @@XSOO&&&&*;;;::::::::::------------и-иииииии,,,иии,,иииииии----------------:;;:;::*8S8***;:::-----иииииии,и,,,,,,,,,,,,и,и,,,,,и,,,,,,,,,иии-и--------------------------::::::;&OSX@@@@@@@@@@@@@@@XSSX@@@@XXXX
 @ @ @@ @@ @ @ @@XX@      @   @@S8O&&&&***;;:::::::::::-----------и-ииииииии,,,,и,,,иииииииии--и---------:-:;::;;:&8O***;;::----ииииииии,и,,и,,,и,,,,,ии,и,,,,,,,,,,,,ии-----::--иииии---::-------------:::::;*&8SXX@@@@@@@@@@@@@@XSXX@@XSXXX
@ @ @ @@@ @ @  @@XX@      @ @ @X8OOO&&&**;;;:::::::::::---------ии-иииииииии,и,,,,,,,ииииииии--------------::;::;;;&O***;;:::-----иииииии,ии,,,,,,,,,,ии,,,и,ии,и,иии-----:---ии,,,,,,ии---:---:----------::::;&OSSXX@@@@@@@@@@@@@@XXX@XS88SX
@@ @ @ @ @ @   @XXX@@       @@@X8OOO&&&***;;;::::::::::----------ии-иииииии,и,,,,,,,ииииииии-ии-и---------:-:::::;;*&***;;::::----ииииииии,,и,,,,,,,,,,ии,и,иииии-----:::::-ии,,,,,,,,,и,ии----::-------::::::;*O8SSX@@@@@@@@@@@XX@@SSXX8OO8X
@@ @ @ @ @    @XXXX@      @ @@XS8OO&&&&&**;;;;::::::::::---------и-иииииииии,,,,,,,иииииииии--ии-и---------:::::::;*&**;;;::::------иииииии,,,,,,,,,,,,иииии,ии------:::::-иии,,,,,,,,,,ииии----:---------:::::*&O8SXX@@@@@@@@@XOSXX88SXSS8SX
 @ @@ @@ @    @XXXX@      @ @@XS8OO&&&&**;;;;;::::::::::-------ииииииииииии,,,,,,,и,ииииииии-и-и--и----------::::::;&&;;;;;::::-----иииииииии,,,,,,,,,,,,ииииии-------::--ии,и,,,,,,,,,и,ииии------------::::::;*O8SSXX@@@@@@@@S*&XX8O88SSSXX
@@ @@@  @@@  @@XXX@@   @  @ @@X88OO&&&&***;;;;:;;;;:::----------и-ииииииии,и,,,,,,,,иииииииииии-ии------------:::::;*&;******;;:::---иииииии,ии,,,,,,,ииииииии----------иииии,,и,и,,,ииииииии------------::::::;*&O8SXXX@@@@@@X&:*S@S88O8XXX@
@@@@ @@@ @  @@@XXX@@ @     @ @XSOO&&&&&&****;;****;;;:::------ииииии,ии,и,и,и,,,,,,,и,ииииииииии-ии-и-----------::;;*&*&&&&&***;;;::---и-иииииии,,,,,,и,ииии-----------ииииииии,и,иииииииииии-------------:::::;;&OOSSXX@@@@@@S;-:OXXSS8OXXX@
@@@@@@@@@@  @@XSXX@      @ @@@X88O&&&&&******&&&&&&&&**;;::---иииии,,,,и,,,,,,и,,,,,,и,,ииииииииии-и------------::;;*&*&&O&&****;;;:::----ииии,ии,и,,,и,ииии-----и---ииииииииииииииииииииииии---------------::::;*&O8SX@@XXX@XO;-:*8XSXSS@@@@
@@@@@@@@@   @@XXX@@@      @ @@X8OO&&&&&*&&&&O&&&&&&OOOO&&&*;:---иииии,,,,,,,и,,,,,,,,,,,ииииииииии--и------------::;*O&&&&&&&&*;;;::::------ииии,и,ии,,и,иии--ии-и---и-иииииииииииииииииииии---------------:::::;*&OOSSXXXXXXS&;-::&SXXXX@@@@
@@ @@@@@@@  @@XX@@@@     @ @@@S8OO&&&&&&&&OOO&*****&&OOOOOO&&*;::-ииииии,,,,,,,,,,,,,,,,,ииииииииии-ии-----::::::::;*OO&*;;:;;::::::::::::----иии,ии,и,,и,,ииии--и-----и-и-и----------иииии-и---------------:::::;&OO8SXXXSSS8&;:::;OXXXX@@@@
@@@@@@@@@  @@@XX@@@ @XX@  @ @XS8OO&&&&&&O88O*;;:::::;;**&OOO8OO&;:-ииииии,и,,,,,,,,,,,,,,,ииииииииии----::::::;;:::;*O&*::--:--::::-----:::---ииии,,,,,,,ииииии--------------------------и-и------и-и-------:::::;*&O8SSXSS8OO&*;--;OX@XX@@@@
@@@@@@@@@  @@@XX@@@ SOOX@  @@XS8OO&&&&&O88O*:::::---:--:;**&OOO&&;:--ииииииии,,,,,,,,,,,ииииииии----::::;;;;**;;;;;;*O&;;:-----:--::::::::::::-иии,,,,,,,,,иии--------::-:::::----::::::-----и----иииии-----:::::;;&O8SSS8O&&&&*;-и:8XXXX@@@@
@@@@@@@@   @@@XXX@@@8&&O@ @@@XS8O&&&&&&88O*;;:::----------::*&OOO&;::---иииииии,,,,,и,ииииииии--:;:;***&&&&&OO&**;;;&O&;::---------:::::::::::--ии,,,,,,,,,ииии-----:::::::::::::::::::::-------ииииииии-----:::::;*&O8SS8&***&&;:и:OXX@@@@@@
@@@@@@@@@ @@@@XX@@@X8O&O@  @@XSOOO&&*&O8O&*;;::::-----и-и----:*&O&*;;:--иииииии,и,,иииииииии--:;&&&&&OOOOO&***&&&***&O&;:::----------::::::::::-иии,,,,,,,,иии------::::::::;*&OOOOO&**;;::----и-ииииии------:::::;*&OSS8O&*;;&;;:и:OX@@@@@@@
@@@@@@@   @@@@XX@@ XOOOX @@@@X88O&&&&&O8&**;;::::-------------::;*&;;::---иииииииииииииии---:;;*&&O&&*;:;::::::;*&&&&OO;;:::::--------:::::::;;:-иии,,,,,,,ии------:;:::;;**&OS&*88OOO&&*;::-----ииииии------::::::;*&8SSO*;;;;:::-:8X@@@@@@@
@@@@@@@   @X@@XX@@@S*&S@  @ @X8OO&&&&OOO&*;;::::::-----:-------:::;*;::---и-ииииииииииии---:;;*&*&&;:---ии-----:;*&O&OO;::::::-::::::::::;;;;;;;-иии,,,,,,иии-----:;;:;;**::*&8&:88&&;;&&&*:::--иииииии------::::::;*&8S8O*:;;::::-:OX@@@@XX@
@@@@@@   @@X@@XX@@@X;&X   @ @X8OOO&&&OO&&*;;:::::::::::::-----:::-:;;::-----иииииииии------:;*&;;;:--ии----------:*OOOO*;;:::::;;;:::::-:::;*;;*:-иии,,,ии-и-----:::::*&;-,,;&&88SO&*:;;**;:::-иии,иииии-----::::::;*&O88O&;;;-:;:::OX@@@@XXX
@@ @@@@  @XX@@XXX@@X&O@ @ @@@SOOO&&&OOO&**;;::::::::::::::--:::-::::::::----ииииииии-----:::;*;:------ии--------:::&OOO&;;;:;;;;:::::::---:::;**:--ииииии--и-----:::;;;:-ии,-**&O&&**;**;;::--ииииииииии-----::::::;*&&O88&*;--:;:-:8X@@@XSSX
 @ @@@   @XX@@XX@@@@XS@ @@ @X8OOO&&OOO&&**;;;:::;;;;;*;;;;;:::::-:-::::::---и-иииии------:::;:-:------и---------:::*OOO&*;;;***;;*****;:::::-:;&:--ииииииии----и--::;;:--ии,,:*&***;;;;;;::--иииииииииии----::::::::;&&O8OO*:и-;;:-;8@X@@XSXX
@@ @@@   @XX@@XXX@@@@@@@@@@@X8OOO&&O&&&&*;;;;;;;;;&&O8OOOOO&*;:::--::::::---ииииииии---:::::::::---------------:::;*&OO&*;;*&**&OO8O8S88O*;;:--*;:--ииииии-----ии-:::;:::----:**;;;::;::::-иииииииииииии----::::::::;*&&OO&;:-:;:--&X@@@@@XXX
 @@ @@   @XXXXXX@@@@@X@@@@@@X8OOO&&&&&****;;;;;**&88O*;*&&*;*&*:::--:::::---иииииии---::::::::-------:----:-::-:::;*&OO&**;*&&&O&&&O88&OO&:-:;-;*::--иииии------и-:;::::::::;*;;:----::::--ииииииииииии-----::::;::;;*&&O&;:::;;--;SXX@@@XSXX
@@ @@@   XXXX@XX@@@@X8XXX@@@X8OOO&&&&****;;;;**&8SO:--;OOOO:и:**;::::::::--ииииииии----:::::::-:::::::::::::::::::;;&OO**;*&O88*-:&&88&O&*:ии:;*;::---и-и-------ии-:::::::::::::----------ииии,ииииииии------:::::::;*&*&&;;;::::*8XX@@@@XSSX
@@@@@@  @XXXXXXX@@@@X8SSSX@@S8OOO&&&*;*;**;;;*O88&:--*8SSXS8;и-;*::::-:;::--иииииии---::::-::-::;*&&&&&*;;;;:::::::;&OO*;;*O8O&:::*&&88O&*-ии-*&;::---и---------иии--:::::::----------ииииии,и,ииииииии-----:::::::;:*&*&&*;:--;*OSSXX@@@XSXX
 @ @@@  @XXXXXXX@@@@@8OOO8XX8OOOO&&&*;;;;;;;*&8O;::-:O8S8&SS&-и-;;;:::::;:---иииии---:;:::::::;**&&&*&O8O&*;;:::::;;*OO*;*&OO&*:::;&&&&&*;--:;*&*:-----и--------иии--::::::---------иииии,и,и,и,иииии-------:::::::;;;*****:-и-;&O8SX@@@XXSX@
@@@@@@  @XXXXXXX@X@@@8**&OXX8OOOO&&*;;;;;*;*&OO&:;::;88XO-S8&:ии-;;::::;;:---иииии--::;:::::;*;;;&O&;и-:*O8&*;;;:::;*&O*;*&O&&**:::;&&*;;::::::&*:---и----------ииии----::--------ииии,и,и,,,,,иииииии-----::::::::;:;&***;:-и-*OO8SXXX@XXX@@
 @@@@@  @X@XXXXXXXX@@S;;*OXXOOOOO&&*;;;;;;;*&&O&*;::;O8SXSSO&-иии:::---;;::-----и---:;;::::;*:-;OO88O;иии:O8O*;:::;;*&O;::;*&O&***;;;;::-----::*;:---иии--------ииии-----------иииии,,иииииииииииииии-------:::::::;;;****;--:;&OOOSX@@XXXX@@
@ @@@   @X@XXXXXXXXX@8;;*8XSOOOOO&**;;:;;;;;*&OO&*;::*OO88OO;ииии:::--:;;;::----и---:;;---:;:и:O8S888O:и--:OSO*::::;;&O;:::*&&&&&***;::---::::;&;----ии-----------ииии--------ииииииииииииииииииииииии----:::::;;;:;;;***;:::;*OOO8SX@XXXXX@@
@@@@@@  @X@XXXXXXXXX@O:;&8SS88OOO&*;;;::;;;;;&&OOO*;::&OOOO*--::-;*:--:;;;:::------::;:---::-и;OS8-O8O*и--:;&8&;:::;;&&;:::;*&*****;::::::::::;*;:--ииии----------ииииии-------иии-и-и--и-ииииииииии-и-----::::;;;;;;;;;*;;::;&OO&8XXXSXXXX@@
@ @@@@  @@@@XXSXXXSSXO-:&88888OOO&*;;:;;:;::;;*&&&&&&;*&&&&*;*;;;:::--;;;;:::------::;;-и-*:ии:OOSO88O;и-:::*O&*:::;;&&;::::;**;;;:::::::::-::;&;:---иии----------иииииииии--------ии-иииииииииии----------::::;;;;;;;;;;*;:;*OOOOSSSXSSSSX@@
@@ @@@  @@@@@XXSSXSSXO:;OO88S8OOO&*;;::::::::;**&&&&&&&****;*;::::---:;;;;;:::-----:;;;:-:;*:--&O8S8O&:и--:;&&&*;;::;*&;::::;;*;;::::::::----:**;:--иии-------------ииииииииииии--иииииииииииии------------:::;;;:;;;;;;*;::;&OOOO8SXX8SSSX@@
 @@@@@   @@@@XXSSXSSSO:*&OOOS8OOO&*;;;::::::::;;********;;;::::::----:;;;;;:::---:::;;;:--::;;;*&&OOO;---:*&&&&*;::::*&;:::::;;;;::::::------:**;:---ии------------иииииииииииииииииииииииииииии-----------::::;;;;;;;;**;:*&&OO88SXXSSXSSX@X
 @@@@@  @@@@@@XSSSSXXS**&O88S8OOO&*;;;;::::::::;;;;;;;;;;:::::::-:::::;;;;::::----::;;;::---:;;;*;*&*:::*&&&&&**;::::*&;:::::::::::::-------:;***:---ии-------------ииииииииииииииииии,и,,,,,иииии--------:::::;;;;;;;;**;:*&&8888SXXSSS8SX@@
  @@@   @@@@@@@XSSSSXS&;*OS888OOO&*;;;::::::::::::;;;;;;:::::::-::-::;;;;;;;:::----:;*;::----::::;;**&&&&&&****;;::::*&;;::::::::::---------:;**;:---------------и--иииииииииииииииии,,,,,,,иииии---------:::::;;;;;;;;**;:*&O888OSXXSS8SXX@@
@ @@@@  @@@@@@@XSSSSSXO*;&8OO8OOO&**;;;::::---::::::::::::::::-:--:::;;;;:::::----:;;;;;:::--::::;;;;*&****;;;;;:::::*&*;::::::-::---------:;****:---и-----------и-ииииииииииииииии,,,,,,,,,,ииии----------::::;;;;;;;;**;;&OOS888XXXXXSXXX@@
 @ @@ @ @@ @@@@@XXSXSS8&*&O&&8OOO&*;;;;;::----::-:::::::::::------:::;;;::::::----::;;;;::--:::;;:;;:;;;;;;;;::::::::;&*;::::::-:----------:;****:---ии---------ииииииии,ииииииииииии,,,,,,,,иииии---------::::;;;;;;;;**;;OO8SS8XXXXXXX@@@XX
  @ @@ @ @ @ @@@XXSXXX8&*OO*&88OO&**;;;::::----:-----------::----:::::::::::;:----:;;;;;:::-:-::::::::::;:::::::::::;*&*;;::::::----------::;****:---и-----------ииииии,,,иииииииии,,,,,..,,ииии-----------:::::;;;;;;;*&&&O8SS8SXXX@@XXX@@X@
 @ @    @  @@@@@XSSXXXX&&OO*&8OOO&**;;;::::---:-------------:---::::::::::;;::-----:;;;;:::----:::::::::::::--:::::::*O*;;:::::-:---------::;***;:---ии----------иии,,,,,,,,иии,,,и,,,,,..,,,ии-ии--------::::::;;;;;;**&SSSSS8SXXXX@X@@@@@@@
@ @@@    @  @@@@@SXXXX@SOOO**88OO&**;;;:::::-------------------:::::::::::;;;:----::;;;::::-------::::::::-----:::::;*O&;;:::::-----------::;***;:----и----------ииииии,,,и,,ии,,,,,,,,...,,,ииии-и-------::::::;;;;*;**&XXXXS8XXXX@@@@@@@@@@
             @@@@XXXXX@@8&&&*888O&**;;;::::----------------------::::::::;;;;::---::;;;:::::-------::--:-------::::;;*O&;;:::::-----------::;;**;:-------------------иииииии,,,,,,,,,,...,,,,ииии---------::::::;;;;****OXXXXSSXXX@@@@@@@X@@X
         @ @ @@@ @XXXX@@X&&&*88OO&**;;;:::::--------иии------------::::::;;;;::---::;;;:::::-------------------::::;;*8&;;:::::------------::;&*;:---------------------и-ииииии,,,,,.,,.,,,,иииииии-------::::::;;;;***&8@XXXSSXXX@@@@@@XX@XX
     @      @@@@ @XXX@@@@8&&&88OO&&**;:::::--------и--------------::::::;;;;::-----:;;;::::--------------------::::;;*8O;;:::::------------::**;::------------------------ииииии,,,.,.,.,,,иииииии--------::::::;;;;****8@@XXSXXXX@@@@@@XX@XX
   @@     @   @ @@@@X@@@@@8&&88OO&&**;;::::------------------------::::;;;;;:::----:;;;:::---------------------::::;;*88;;:::-:-------------:**;::--ии---------:------:-----иииии,,,,,,,,,,ииииии-и-------::::::;;;****&S@XXSSXXX@@@@@@XXXXXX
 @ @@@       @@@  @@@@@@@ @8OS8OO&&**;;;::::-----------------------::::;;;;;::-----:;*;:::---------------------::::;*&SS*;;::::-------------:**::---ииии-и-----:------::-:----ииии,,,,,,,,ииииииии--------:::::::;;****&S@@XSSXXX@@@@@XXXXXSX
  @@@@   @   @@@@ @@@@@@@@ @XS8OO&***;;;::::---------------------:::::;;;;;;::-----::;;;:::--------------------::::;*&SX&;;:::::------------;*;::---ииииии-и---:------:::------ииии,,,,,,и,иииииии--------:::::::;;**&&&XXXXS8XXX@@@@@X@XXSSS
 @@@@@       @@ @  @@@@@@@ @ SO8&&***;;;::::::------и------------::-::;*;;;:::-----::;*;::----------и----------::::;*OX@&;;:::::------------;*:::---ииииииии---::------::-------ииииии,,,иииииииии--------:::::::;;**&&OXXXXS8XXX@@@XXXXXS88S
  @@@@       @@@ @  @@@@@@@@@SOOO&***;;;;::::---------------и------::;***;;:::--и--::;;;:::--------и-----------:::;**O@@8;;:::::---------ии-**:::--иииииииии-----------:--и--::---ииии,ии,иииииииии--------:::::::;;*&&OXXSSSSXX@@@XXXXXS8888
@@ @@@   @   @@@@ @@@@@@@@@@ SOOO&***;;;:::::----------------------:;;**;;::::-ии--::;*;::---------------------:::;*&8@@S;;:::::-------ии-и:**::----иииииииии----------:--ии---:--иииииииииииииии-и-------:::::::;;**&&OXSSSSSSXX@XXXXS88OOO8
@ @@@@   @   @X@@@   @@@@@@  XOOO&****;;;;:::---------------------::;***;;:::---ии--:;;;:-----и-------ии------:::;**&S@@X*;;::::-----------;&;::---иии,,,,иии---------::--ииии-:----ииииииииииииии-и-------:::::::;;*&&8XSSSS8SSX@XXXSS88OOO8
 @@@@@@@@@@   @X@@ @ @ @@ @@ XOOO&&***;;;;:::::----и-------и------:;;***;;:::--иии--::;;:----иииии--и---------:::;*&OS@@@&;;::::::-------и:&*;;:---ии,..,,,ии--------::---иииии-:-----ииииииии--и----------:::::::;;**&8XSSXS8SSX@XXXSSO8S88S
@@@@@@@@@@@   @X@@@ @ @@ @ @ XOOO&&**;;;;;:::::------------------::;***;;;:::-ии,и--::;;:-----и-иии---------:::::;*&OS@@@8;;;:::::--------:&*;;:---ии,,..,,ии------::::--иииииии-::----ииииии--------------::::::;;;*&&8SSXXS8SXXXXXXSOOSS8SS
@@XXXXX@@@@   @X@@@  @ @ @@  XOOO&***;;;;;;:::::------------------:;**;;;;::--и,,ии--:;;:-----иии-и-и--------:::;;&&OXX@@S*;;:::::--------;&&;;:-----ии,,,иии---::::::--и-иииииии-::------ии-и-------------:::::::;;*&OSSSXXS88SXXXXX8&OXSSXX
XXXXXXX@@@@@  @@@XX@   @@@ @ @8OO&&**;;;;;;;::::------------------;*;;;;:;::-ииииии--:;;:-----и-и-----------::::;**&8XX@@X&;;;:::---------:&&*;::------ииии---:::::---и-ииииииииии-:::---------------------::::::::;*&OSXXXXS8SXXSSXX8OSXSXXX
XXXXXX@@@@@@  @XX@X@@    @@ @@8OO&&**;;;;;;;:::::-----------------:;*;;;;;;:--ии-и--:;;;:---ии-и-----------:::;;**&&8XX@@@O;;;:::----------&&&*;:::-:--иии--:::::---и-иииииииииииии--::---------------------::::::;;*&8SXXXX88SXSSSSSS8XSXXXX
XXXXX@@@XXX@   @@XXX@ @ @ @@  SO&&****;;;;;;:::::-----------------:*;;;;;;;::-------:**;;----ии-ии--------::::;;**&OSX@@@@S*;;::::---------;&&&*;:::::-----:;::---иии-иииииииииииииии--::-------------------:::::::;*&8XXXXS88SX8888S88XSSXXX
XXXX@@XXXXX@   @XXXX@@  @ @  @SOO&&***;;;;;;;::::-:----------------;*;;;***;:------:;;;;;------и---------::::;;***&OXX@@@@X&;;;:::----------:*&O&*;:::::-::;::-иииииииииииииииииииииии--::-------------------:::::;;*&8XXXXS8SSX8O8888OS8SXSS
XXX@@XXXXXX@   @@XXXX@@@ @ @  XO&&&***;;;;;;;:::::::---------------:;;;;:*&;:::-:-:;;*;;:---------------::::;;***&&8XX@@@@@O;;;;:::-------::::;*&&&**;;;;;;::-ии,ииииииииииииииииииииии--::::----------------::::::;*&8XXXXS8SSXSOSSSS888SSSS
X@@XXXXXXXXX@  @@XX@XX@     @ X8O&&****;;;;;;:::::::----------------:;;:-:**;::::::;;*;:-----и--------::::::;;****OXXX@@@@@S**;;:::-------::::::;*&*&*;;;::---иииииииииииииииииииии-и----:::::--------------:::::::;*OSXXXXSOSXSSSSXSSSSSSXSS
@@@XXXXXXXXX@   @@XXXX@@ @ @  @8O&*****;;;;;;::::::------------------:::--:;;;;;;;;:;;::-------------:::::;;;****&8XXX@@@@@X&*;;;:::----:::::::;;;;;::::------иииииииииииииииии---------::-::::--------------:::::;**OSXXXXX8SXSSXXXXSXS8SSSS
@XXXXXXXXXXX@  @@XXXXXX@  @ @ @SO&*****;;;;;;;;:::::----------------:-::::::;;*;;;::::---------------:::::;;*****&S@XX@@@@@@O**;:::::-----::::::::::::---------иииииииииииии--------::::::---:::-------------:::::;*&OSXXXXXSXS88SXXXXXS8SSS8
XXXXXSXXXXXXX   @XXX@XX@@ @  @ XO&&****;;;;;;;:::::::-------------------:----:;;:::::----------------:::;;;******OX@XX@@@@@@X&**;;::::---::::;;:::::::-:-------ииииииииии-------:::;;;***;---::--------------::::;;*&8SSXXXXXXS88XXSSXXS88SS8
XXXSXXSSSXXSX@  @XXXXXXX@@ @ @ XO&&**;*;;;;;;;;::::::--------::---------------:----::---------и-----:::;;;******&8@@@@@@@@@@@O**;;:::::--:::;;;;;::::::---------иииии-и---::::;;*;;;:;&&&*----:--------------:::::;*&8SXSSXXXXS8SXXSSSXS88SS8
XSXXXXSXXSSSX@  @XXXXXXXX@  @  @8O&***;*;;;;;;;;:::::--------::------------и--------:---------------:::;;;*****&&X@@@@@@@@@@@8&**;;:::-:-::;;;;;:;:::::---------------:::;;;;;;;:--:;*&*;:----:--------------::::;;&OSSSSSXXXXS8SXXSSSXS88SS8
SXSSSXSSSSSSX@  @XXXXXXSX@  @ @@SO&***;**;;;;;;;:::::-------::::-----------иии-иии--------:--------:::;;***;***&8X@@@@@@@@@@@X&&*;;::::--::;;*;;;::;:::::::--::::::::;;;;;;:;:--:--;&&&;--------------------:::::;;&OSSXSSSXXXSSSXXSSSXS88S88
XSSSXSSSXSSSX@  @XXXXXXSX@@ @ @ XO&&*;;;**;;;;;;::::::------::::-----------ииии-и---------::-----::::;;****;**&&S@@@@@@@@@@@@@O**;;;:::--::;;****;*;;;;;:;;:::;;:;;;;;;:::-и----**;*&*;:-и--и---------------:::::;*&8SSXSSSSXXXSXXSSSXX888SS8
SSSSSSSSSSSXX@  @XXXXXXXXX@   @ XO&&**;;**;;;;;;;::::::----:::::-:--------ии-иии----------::-----:::;;***;*;**&O@@@@@@@@@@@@@@8***;;::----:::*&&&&******;;**;;;;*;:;:--ии-ии-:-:**;**;:--ии-и----------------::::;*O8SXSSSSSXXXSXXSSSSSS88SS8
SXXXSSSSXSSXX@  @XXXXSXXXX@ @ @ @8&&***;;;;;;;;;;;::::::-:::::::::--------иииииии--------::::---::::;****;***&&S@@@@@@@@@@@@@ X&**;::::----::;*&O&&&&&*********;;:ии-и,ии:*--;;;;***;;:-иии-и----------------:::;;*OSSXSSSSXXXXXXXSSSSS88888O
SSSSSSSSSSXXX@@ @XXXXXXXXX@ @    S&&&**;;;;;;;;;;;:::::::::::::::::------иии--иии-------::::::-::::;;****;***&OX@@@@@@@@@@@@@@@8***;::------:::;&&OOO&*****;;;::ии,ии-иии:&*;;;;;***;:-иииии-и--------------::::;*&8SSX8SSSSXXXXXSS8S8888O&*;
XXXSSSSSSSXXX@  @XXSXXXXXX@ @ @@ XO&&**;;;;;;;;*;;;::::::::::::::::------------и--------:::::::::;;;****;***&&S@@@@@@@@@@@@@@@@X&**;::----и----::*&&&*:--:--ии-ии,,ии---:****;;***;;::-ииииииии-------------::::;*OSSSS8SXSSXXXXXSS888SSO*::-
XXXXXSSSSXXXX@ @@XXSSSXSX@@       8&***;;;;;;;;*;;;:::::::::::::::::------и-----и------::::::::::;;*&***;***&O@@@@@@@@@@@@@@@@@@O**;::----ии--:-:;**O&:----и,и--ииии-*;***;;;;;***;::--ииииии-и-------------:::;*&OSSSSSSXSXXXXXSSS8O8SSO;::-
SXXXXSSSSSSSX@ @XXXSSXXXX@@  @ @  XO&**;;;;;;;;**;;;:::::::::::::::::----------------:::::::::::;;*******;*&&S@@@@@@@@@@@@@@@@@@X&;*;::---ии--::::;**OO;:;--и-------:****;;*;***;;::--ииииии--и------------::::;*&8SSSSSSSSXXXXSS8S888SS&;:--
SSSSSXXSSSSX@ @@XXSSSSXXX@@ @   @ @O&***;;;;;;;*;;;;:::::::::::::::::::--------------::::::::::;;******;***&OX@@@@@@@@@@@@@@@@@@@8*;;;::---и--:-::;**&O8O&;;:;**;;;***;********;;:::--иииииии-ии-----------:::;;&O8SSSSSXXSXXXSS88SO888S&;::-
XSSSXXXXXSX@@ @XSSSSSSXXX@@ @     @8O&**;;;;;;;***;;:::::::;;;::;::::::-------------:::::::::;;;***********&S@@@@@@@@@@@@@@@@@@@ X&;;;::---и----::;***&OO&;&O*************&**;;:::::-ииииии-иииии----------:::;*&8SSXSSS888XXSSS8S8O888S&;::-
XXXXSXSXXXX@ @@XSSSSSSXX@@@   @ @@ SO&**;;;;;*****;;::::::;;;;:;;;:::::::::-------:::::::;;;;;;;***&*******8X@@@@@@@@@@@@@@@@@@@@ S*;;;:::------:::;**&&&O*&O&&*******&****;;;;::::--иииии-и----ии--------:::;**O8SXSS88O8SXXSSS8SO8888S&;::-
@XXSXSSSSXX@@@XSSSSSSSX@@@@   @  @ @O&&*;;;;;;****;;:::::::;;:;;;;;;:;;;::::::::::;:;;:;;;;;;;;***&*******&X@@@@@@@@@@@@@@@@@@@@@@@O*;;::-----::::;;***&&&&&&&&&&&&****;;;;:::::::--иииии--иии-ии---------:::;*&OSSS8S8O8X@XSSSS88OO8OSS&;::-
@@XSSSSSSSXXXXXXSSSSSXX@@@@  @ @ @@@8O&*;;;;;;****;;;::::::;::;*;;;;;;;;;;;;;;;;;;;;;;;;;;;;**;***&&&****&S@X@@@@@@@@@@@@@@@@@@@@@ X&;;:::--и--::::;****&&&**********;;:::;:::::::-ии-ииии--иии-ии-------:::;*&O8SS88S8OXXXSSSS8S8O888SS&;::-
@XS888S8SSSSSXXXSSSSXX@@@@  @ @   @@XO&**;;;;;;****;::::::;;;;;;*;*****;;;;;;;;;*;;;******;;*;***&&&****&8@@XX@@ @@@@@@@@@@@@@@@@@@ S**;:::----:::::;***&&*&*****;;;;;;:::::-::::--и-и-и--и-ииии-и-------:::;*&8SS88SX8OXXSSSSSS8OO88SS8&;::-
@XSSSSS88SSSSXXXXSSSXXX@@@ @   @ @  @8O&*;;;;;**&**;;::::::;;;;*****&&&&&&*************&**;;**;**&&&***&OXXXX@@@@@@@@@ @@@@XX@@@@@@@@8*;;::----:::::;*&**&&&***;;;;;;;;::----:::----и-и--и-ииии---------:::;*&OSS88SSX88XS88SS8S8OO88888*;::-
@X888SSSSS8SSSSXXXXSSSX@@@      @   @8O&*;;;;;;**&*;;::::::::;***&&&&&O&&OO&&&OOOO&&&&&&**;*;;**&&&&***&SXXX@@@@@ @ @@@ @@@XXX@@@@@@ @O;;:::---:::::;;*&*&*&**;;;;::;::::---:::---и--ии-и--ииии-и------:-::*&&8S88SXSXS8SS8888SSOO888888*;:--
@XS88SXSSSSSSSSSSXXSSX@@@ @ @ @@ @@ @X8O&*;;;;;**&**;::::::::;;;*****;*&&*;:;*&88&&&&&&&**;;;;**&&&***&8XXX@X@@@ @ @@ @@ @@XXS@@@@@@@ X&*;:::---:::::;**&&*****;;;::::::::::::--------и-и-иииии--------:::;*&8888SXXSSSSXS8888S8O88888SO*;:--
XXXXS88XSS8888SSSXXXXX@@@@  @ @ @  @ @8O&*;;;;;;*&&*;;:::::::;;;;;;::;;;&&*:;&&O&;;******;;;;;**O&***&OXX@@@@@@@@@@ @@ @@@XXXS@@@@@@@@ X&*;:::---:::;;;******;;;;;;;;;:::::::--------ии-ии-ииии-------::::**&S8O8SSS8SSSX888SSSO888OO8SO*:::-
SSXXXX88SSSSS88SSSSXXX@@ @ @ @ @ @ @@@S8&*;;;;;;**&**;::::::::;;;;;::;;;;***&&**;;;::;;;;;;;;**&&&***OSXX@@@@@@@@@ @ @@  @@XXX@@@@@@@@@ X&;;:::--::::;;;**&****;;;;;;;;;;:::----и-----иии-иииии-------:::;*&8S8OSSSSSXXS8OO8SSO888OO8S8&;;:--
SSSSXXXS8SSXSS88SSSSXX@@@ @ @ @  @@   XSO&*;;;;;*&***;;:::::::;;;;;;:::;;;;*****;;::;*;*;;;;;*&&&***&8XXX@@@@@@@ @@@ @ @ @@XXX@@@@@@@@@@ X&;;::--:::;;;;;*******;;;;;;;;::--------------иииииии-----:-::;*&8SS88SSSXXXX8&&8S88O88OO888&*;::--
SSSSSXXXX88SSSSSSSSSSXX@@@@@ @ @@ @ @ @X8&*;;;;;**&**;::::::::;;;;;*;:::;;;****;;::;**;**;;;**&O&***OXXXX@@@@@@@@ @ @ @ @@ @XX@@@@@@@@@X@ X&;;;:::::::;;;;;;**;;;;;:::::::----------------ииии-----::::;;&OSSS88SSSXXXSOOOSSO8S8OO888O&*;::--
SSSSSSSXXXXSSSXSS8SSXX@ @@ @@ @@@   @ @@SO**;;;;;**&*;;:::::::::;;;**;:::;;;*;;::::;******;;*&&&&**&SXXX@@@@@@@@ @ @  @ @ @ @X@@@@@@@@@X@@ S&*;;:::::::;;;;;;;;;::::::::-----------------ииииии----:::;;&O8SSS8O8SXXXXSS8888O8SOO888O&;;;::--
SSSSSSSSSXXXS8SXSSSSX@@@@@@ @@@@@@ @  @@X8&*;;;;;****;;;:::::;:;:;;;;*;;:::;;;:;:;;******;;;*&&&***8XXXX@@@@@@@  @ @ @  @@@ @@@@@@@@@@@@@@@ XO*;;::::::;;;;:;;:::::::----------------иииииииии----::::;*O8SSXSSSSXXXXXXX888O88OOO888O*;;:::--
SSSSSSSSSSSXXXS8SXXX@@@@@@@@@@@@ @  @@ @@S&*;;;;;;****;:::::::::;;;;;;;;;;;;;;;;;********;;;*&&&**&S@XXX@@@@@@@@@ @ @ @   @@ @@@@@@@@@@@@@@@ XO**;;:::::;;;;:::::::::------и----и--ии-ииииииии---::::;*O8SSSSSSXXXXXXXXXSOO88OO8888O**;::::--
SSSSSSSSSSSSSXXXXX@@@@@@@@@@  @@@ @@@@@@@XO**;;;;;****;;::::::;;:;;:;;;;;;;;:;;*********;;;**&&&*&8@@XXX@@@@@@@ @  @ @ @ @  @@@@@@@@@@@@@@@@@ @8&*;;::::::;;:::::::---------и-и-ииииииииииииии---:::;*&8SXXXSSSSXXXXXXXS8O888O88888&*;::::---
SSSSSSSSSS8SSSX@@@@@@@@@@ @@@@@@@ @@XXX@ @S&*;;;;;;***;;::::::;::;;;:::;;;;:;;;;;;***;;;;;;*&&&**OX@XXXX@@@@@@@  @  @@ @ @  @ @@@@@@@@@@@@@@@@@@S&**;::::::;::::::--------иииии-ииии-иииииииии--:::;*&OSXXXXXXXSXXXXXXXS8O88O888O88*;;::::---
SSSSSSSSSSSSSSXXXXX@@@@@ @@@@@@@@XXXXSSX@@@O**;;;;;****;;::::::::;;;;;;;*;;;*;******;;;;;;;&&&&*&S@@XXXX@@@@@ @ @  @@@@  @ @   @@@@@@@@@@@@@@@@@@XO&*::-:::::::::---------иииииииииии--ииииии--:::;*&OSXXXXXXXXXXXXXXXXSS88O888O88O*::::::---
XSXSSSSSSSXSSSSSXX@@@@@@@@@@@X@@@XSXSSSX@@@S&*;;;;;****;:::::::::::;;;*;;;;;;*****;;:;;;;;*&&&&&OX@@@XX@@@@@@@   @@@@@@@@ @ @@@ @@@ @@@@@@@@@@@X@@X8&;::--::::::::-------ииииии-и-иии-иииииии--::;;&OS@XXSSXXXXXXXXXXXXXXSO8S8O888&;;::::----
XXXXSSSSSSSXSSSXXX@@@@@@@@@XXX@@XXXXS8SSX@@@8**;;;;;***;;:::::::::::::::::::::::::::::;;;;*&&&*&S@@@@@@@@@@@ @ @  @@@@@@@  @  @  @@@ @@@@@@@@@@XXX@@8&;:--::::::::-------иииииии--и-ииииииии--::;*&8X@@SSSSXXX@@XX@XXXXXXS888O8888&;:::::----
SSSSSXSSSSSSXXXXXXX@@@@XX@XXXXXXSSSSSSSSSX@ XO**;;;;***;;;::::::::::::::::::--:-::::::;;;*&&&&&8@@@@@@@@@@@ @@  @@@XX@@@@@@  @@@ @@@@ @@@@@@@XXXXSX@@S*:::::::::::------иииии,ииииииииииииии--:;*&8X@@XS8SXXXX@@@@@XXXXXXX8OO8888O*;:::::----
SSSSSSSSSSSSSXXXXSXX@XXXXXXXXSXXSSSSSSS8SS@@@S&**;;;****;:::::::::::::::::::::-:--::::;;**&&&&OX@@@X@@@@@@@ @ @@@@XXX@@@@@@@@@@@@@@@@@@@@@@@@@XXXXX@@@O;::::;::::--------ииии,ии,ииииииии-и---;*&OSSXXX88SXXXX@@@XXXX@XXXXSO88888O;;:::::----
8SSSSSSSSSSSSSXSSSXXXSXXXXXXXSSSSSSSSSSSSSX@@XO**;;;;***;;::::::::-::::::::::::-::::::;**&&&*OX@XXX@@@@@@ @@ @@@@XXXX@@@@@@@@@@@@@@@@@@@@@@@@@@XXXXX@ @&::::::::::-------иииии,и,ииииииииии--:*&O888X@XSSXX@@X@@XXXXXXXXXXXO888O8&;:::::-----
8SSSSS8SSSSSSSSSSXXSSSSSXXSXXXSSSSSSSSSSS8SX@@X&*;;;;*&;;;:::::::::::::::::::::::-:::;;**&&&&S@XXX@@@@@@@@@@@@XXXXXX@@@@@@@@@@@@@@@@@@@@@@@@@@@XXXXX@@@S*;::::::::-------ииииии,ииииииииии--:;&&&OOOX@XSXXX@@@@X@XXX@XXXXXXSO8888&;:::-------
8SS8888SSSSSSSSSSSSSSSSSSXXXXXSSSSSSSSSSS8SX@@@8&*;;;***;;:::::::::::::::::::::::-:::;**&&&&8XXXX@@@@@@@@@@@@XXXXXX@@@@@@@@@@@@@@@@@@@@@X@XX@@@@XSXX@@ @O;:::;:::---------иииииииииииии----:;&&&&OOOS@XXXXX@@@@@XXXXXXXXXX@SOO888*;::::-----и
SSSS88S88SSSSSSSSSSSSSSSSXSSXSSSSSSSSSSSS8SSSX@XO&*;;***;;;::::::::-:::::::::::::::::;**&&&OX@XX@X@@@XXX@X@@XXXX@@@@@@@@@@@XXX@@@@@@@@@XXXXXXXXX@XXXX@@@X&;:::::::---------и--ииииииии----:;*&&&&O&OS@XXXX@@@@@XXXXSXX@XXX@S8O8S8*;:::-------
SSSSSSSS88SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS888SXX@XO**;****;;::::::::-::::::::::::::::;;*&&&&SXXXXXXXXXXXXXXXXXXX@@@@@@@@@@@XXXXX@@@@@@@@XX@@XXXX@@@@XX@@@ X*;;:;:::-------------ииииии-----:*&&*&OO&OSXXX@@@@@@@XXX8SXXXSSX@X888SO;;;::-------
SSSSSSSSS8SS8SSSS8SSSSSSS8SSSSSSSS8SSSSSSS888SSXXS&;*;***;:;::::::::::::::::::::::::;**&&&8XXXXSSSXSSXXXXSXXXX@@@X@@@@@@@@X@@XXXX@@@@@XXXXXXXXXX@@@XXX@@@ S*;;;::::---------------------::*&&&&&O&O8XXX@@@@@@@@XXSSXXXS8SX@XS88S&;;::::-----и
XXXXXXSSSSSSSSSSS8SSSSSSSS8SSSSSSS88SSSSSSS888SSSX8&*****;;::::--:--:::::::::::::::;;**&&OSXXXSSSSSSSXXXSXXX@@@@@@@@@@@@@@@@@@XXXX@@@@XXXXXXXXXXX@@XXX@@@  8*;;;::::------------------:::*&&&&OO&&OSSSX@@@@XX@XXSSXXXXSSXX@XXS88&;;::::-----и
XXXXXXXXXSSSSSSSS8S88S8SSSSSSSSSSSS88SSSSSSSS8SS88X8*****;;:::::---::--------:-::::;***&&8SSXSSSSSXSSXXXSXX@@@@@@@@@@@@X@@XX@XXXX@@@@XSXXX@XSSSSX@@@XX@@@@ @S&;;;:::---------------::::;*&&&&&OO&&8S8SX@@@XXX@@XXSXXXXSXXXXXXXS8*;;::::----ии
XXXXXXXXSXSXSSSSSSSSS8888SSSSSSSSSSS8SSSSSSSSS8SS88XO*&&**;:;:::---------------:::;;;*&&8SSSSSSSSSXSSXXXXXX@@@@@@@@@@@@@@@@@@XX@@@@@SSXXXX@XXXSSX@@@XX@@@@@@ XO*;;;:::-:----------:::;**&&&&&&&&&OSS8SXX@XXX@@@XXXXX@XXXSSSXXXX8*;;;::------и
XXXXXXXXXXXXXXXSSSSSSS88888SSSSS8SSSSSSSSSSSSS88SSO8XO*&&**;::;::::-----------:::;;;**&OSSSSSSSSSSXSSXXXXX@@@@@@@@@@@@@@@@@XXX@@@@@XSXX@XXXXXXSXX@@@XX@@@@@@  @S&*;;::::::::::::::;;****&*&&&&&&&OS88SSXXSS@@@@XXXX@@XXSS88SXX@8;;;:::-----ии
XXXXXXXXXXXXXXXXXSSSSSS8888SSSSSSSSSSS8SSSSSSSS8SS8*8XO&&&;;:::;:::----------::::;;;*&OSSSSSSSSSSXXSSXXXX@@@@@@@@@@@@@@@@@@@@@@@@@XSXXXXXXXX@XSX@@@@@X@@@@@@@@ @@SO&**;;;;;;;;;;;***&*********&*&O8OO8SXSSX@@@@XXXX@@XXSS88SXXXO;;;;::-----и-
XXXXXXXXXXXXXXXXXXSSSSSSSSS8SSSSSSSS8SSSSSSSSSSS8SS**SX8&&&;;::;:::::------::::;;;;;&OSSSSSSSSSSSXXSXXXX@@@@@@@@@@@@@@@@@@@@@@@@@XSSX@XXXXXXXXXX@@@@@X@@@@@@@@@@@ @XSO&&***;***&&&&&**;;;;******&OOOO8SXSXX@X@@XXX@X@@XSSSSSXXXO;;;;::----и-и
SSXXSXXSXXXXXXXXXXXXXXSSSSSSS8SSSSSSS8SSSS8SSSSSSSS8;&SX8O&*;::;;:::::---:::::;;;;;*O8SSSSSSSSSSSXXXXXX@@@@@@@@@@@@@@@@@@@@@X@@@@@XX@XX@@@@XXXXX@@@@@XX@@@@@@@@@@@@@@@XS8OOOOOOO&&&&**;;;;;;****&OOOOOSSSXXX@XXXSX@@@@XSXXSSSXX&;;;;::-----ии
SSSSSSSSSSSSSSSSSXXXXSXXSSSSSS8SS8SSSS8SSSSSSSSSSSSS&;&8XS8O*;;:;;:::::::::;;;;;;;*OSSSSSSS8SSSSSXXSXX@@@@@@@@@@@@@@@@@@@@@@@@@@X@@@XX@@@@XXXXX@@@@@@XX@@@@@@@@@@XXX@@@@XXXSSO&&*******;;;;;;;;;*&OO&888SXSX@@@SSSX@@@XXXXSXXXX&;;;:::----иии
SSSSSSSSSSSSSSSSSSSSSSSXXSXXSS8SSSSSSSS88SSSSSSSSSSSO***8XXSO&*;;;;:::::::;;;;;;;&OSSSSSSSSSSSSSXXXXX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@X@@@@@XXXSX@@@@@@XX@@@@@@@@@@XXXXXXSOO88O&*********;;;;;;;;;*&OOOO88SXSSX@@S8SX@@@@XXXXXX@X&;;;:::----иии
SSSSSSSSSSSSSSSSS8SSS8SSSSSXSSS8SSSSSSSSSSSSSSSSSSSS8**&*OSXX8O&****;;;;;;;;;;**O8SSSSSSSSSSSSSSXXXXX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@XX@@@@XXXXX@@@@@@@X@@@@@@@@@@XXXXXXS&&&OO&*;;;******;;;;;;;;*&&O&O8SSXSSX@XS8SX@@@XXXXXX@@S*;;;::::---иии
SSSSSSSSSSSSSSSSSSS8SSSSS8SSSSSSSSSSSSSSSSSXS8SSSSSSS&*&&&&OSXXSO&&**********&&*OXSSSSSSSSSSSSSXXXXX@@@@@@XX@@@@@@@@@@@@@@@@@X@@@@@@X@@@X@@XXXX@@@@@@@X@@@@@@@@@@@XXXXXXO*&OO&*;;;;;**;**;;;;;:;**&&O&8SSXS8X@X88XX@@@X88XXXX@S*;*;::-::--иии
SSSSSSSSSSSSSSSSSSSSSSSSSSS88SSSSSSSSSSSSSSSSSSXSSSSX8**&&OOO8SXXS8OOOOOOOOO&**;OSSSSSSSSSSSSSSXXXXX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@XX@@X@@@@@@@@@@@@@@@@@@@@@@@@@XXXXXXS&&O&*;;::;;;;;***;;;;;***&&OO8SSSX8X@X8SX@@@@XSSXXXX@8**;;:--::---ии
SSSSSSSSSSSSSSSSSSSSSSSSSSS8SSS8SSSSSSSSSSS8SXXXXSSSSSO&&&OOO&OO88SSSSS88OO&*;;:OXSSSSSSSSSSSSSXXXXX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@XX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@XXXXXXXO&&&;;;:::;;;***;;;;;;*;;*&O88SSSX8X@XOSX@@@XSSXXXXXX8*;;;:---::--ии
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSS88S88SSSSSSSXS8XXXXSSSXXO&&OO&&&&&&&&&&&&&&*;;;;;;OSSSSSSSSSSSSSSXXXX@@@@@@X@@@@@@@@@@@@@@@@@@@@@@@@@XX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@XXXXXX8&&*;;;::::;;;**;;;;;***;*&O88SXXSSX@SOSX@@@XSSXXXXSSO*;;;:---::--ии
SSSSSSSSSSSSSSSSSSSSSSS8SSSSSSSSS88SSSSSSSSXSSXXXXSSXSO&OO&&&&&&**;;;;;;;;;;;;;;OSSSSSSSSSSSSSSXXXX@@@@@@X@@@@@@@@@@@@@@@@@@@@@@@@@XX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@XXXX@XXXO**:::::::::;:;;;;;;**;**OO8SXXXXSXX88XX@@@X88XXXSSSO*;:;:--и::--ии
SXSSSSSSSSSSSSSSXXXXSXSSSSSSSSSSSSSSSSSSSSSXXSSXXXXSSXS88O&***;;;;;;;;;;;;;;;;;;OSSSSSSSSSSSSSSXXXX@@@@@@XX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@XXXXXXXXX@O;*::::::::::::::;;;;;;**&O8XXXXSSXS88X@@@XS8SSXSSSSO*;:;:---::----
XXXSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS888SSSXXXSSXXXSSSX888O*;;;::::;::;;:;;;;;;;OSSSSSSSSSSSSSXXXX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@X@@@@@@@@@@@@@@@@ @@@@@@XX@@@@@@@@@@XXX@@X@S**;-:-::::::::::;**;;;**O8SXXXXXSSS8SX@XXX88XSSS8SS8*::;:----:---и
SXXSXSSXXSSSSSSSSSSSSSSSSSS8SSSSSSSSSSSSSSSSSXSSXXXSSSSS8SO*;:::::::::;::::;;;;;OSSSSSSSSSSSSSXXXX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@XX@@@@@@@@@@@@ @@@ @@X@XXXX@@@@@@@@@XXX@@XX@&*;----:::::--::;*;;;*&*OSSXXXXXSSS8SX@@XS8SSX88S8S8&;;;:--и-:----
SSSSSSSSSSSSSSSSSSSSSSS8SSSSSSSSS8SSSSSS8SSSSSXSSXXXSSSS8O&*;:::::::::::::;;;;;;OSSSSSSSSSSSSSXXXX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@XSX@@@@@@ @@@@@@@@ @@@@XSX@@@@@@@@@XXXXXX@@XS&;-----::::--::;;;;;&&&O8XXXXXSSS88X@@XX8SSSS8S888S&;:;:----::---
SSSSSSSSSSSSSSSSSSS8SSSSSSSSSSSSSSSSSSSSS8SSSSXXSSXXXSSS8&&*;;:::::::::::;;;;;;;OSSSSSSSSSSSSSXXXX@@@@@@@@@@@@@@@@@@@@@@@@@@@@XXXX@@@@@ @ @@@@@@@@@@@@XSX@@@@@@@@@@XXXSX@@@XO;:----:::---::::;**&*&8X@@XXSSSS8X@@XXS8SSSS888888O;:;;:-и-::---
SSSSSSSSSSSSSSSSSSSSSSSSSSSS8SSSSSSSSSSSSSSSSSXXSSXXXXSSS&&**;:::::::::::;;;;;;*OSSSSSSSSSSSSSXXX@@@@@@@@@@X@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@ @@@@@@@@@@@@@@@@@@@@@@@@XXXXX@@@@8;:----:----:::::;***&OX@XXXXSXSOSX@@XSSSSSSSS8S8888*::::----::--
SSSSSSSSSSSSSSSSSSSSSSS8SSS8S8888SSSSSS8SSSSSSSXXSSXXXXSSO&**;::::::::::;:;;;;**OSSSSSSSSSSSSXXXX@@@@@@@@@@X@@@@@@@@@@@@@@@@@@@@@X@@@@@@ @@@@@@@@@@@@@@@@@@@@X@@@XX@XX@X@@@@X*::--::--::-::::;**&OXXXXXXXS8OSX@@@XSSSSSSS8888888&;;:-----::--