&&&&&&&&*************;;:::;;:--------::;XXXXXXXXXXXS&;:::;OSSSSSSSSSSS*,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
&&&&&&&O&&&&**********;:::;;:-------:-;XXXXXXXXXXS*:::::;*O8OOS8SSSSS&-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,..,
&&&&&&OO&****&********;;::;;:-------:::S@@X@XXXXS*::::;OSSSSSOOXSSXSSO-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,..,,
&&&&&OO&*&&**&********;;::;;:-------:::XXXXXXXO*;::;;:OSO&OOOSOXXSSSSO-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,..,..
&&O&&&&&&&&**&*********;::;;:-------:::S@@@@@O*;&&OOO:SO*8S8&XOSXSSSS8:--,,,,,,,,,,,,,,,,,,,,.,,,,,,.....,
&O&&&&&&&&&**&*********;::;;:--------:::8@@@@@*OSSSSO8:S8;OO8*SOSXXSXS8;,,,,,,,,,,,,,,,,,...,-,.,.
&&&&&&&&&&&&*&&**&*****;::;*:---------::O@@@XX**XXXS&S;8S&SXSOSOSSXSXS8;------------,,.,,,--,,.,-:::-,.,
&&&&&&O&&O&&&&&*****&&*;:::;:---------::O@@@@@*;XSS8*S;8XSXXSS88XXSXSSS*-------------::-,,,,,,,,-:-:::,,::;:::.,
O&O&&&&&OO&&&&****&*&O*;:::;;---------::O@@@@@O:&O**:;*SS8OO888XXSXXSXS*-------------:::---,,,,,,,,,,---,,,,-::--:::-,:::;:;;-,,,
O&&&&&&&O&&&&&&&&*****;*;::;;:-------::&@@@@@S;;;::::;*;;;OXSXXXXSXSSSO--------------::----,,,,,,,,,--:::;:,:::---:::-:::-::::,,,
OO&&&O&&&&&&&*&&O&*****;;::;;:--------:-*@@@@@@S88S*;:::;*8XXXXXSXXXSXSO:------------;;:-,,,,:::---;::-::::-:--:-,::---:::,,,
OOOOO&&&&&&&&&&&&&******;::;;:--------::*@@@@@@@@@@XSO&O8SXXXXXXXXXXXSSO;:::::::-----:---------::::--:---::----:-:,-:::::::,.,
OO&O&&&&&&&&&&&*********;::;;:--------::;@@@@@@@@@@@@@XXXXS88XXXXSS88OO&&****;;;;::----:::--:-------:----,-::::::-,,-:::::-,.,
OO&&O&&&&&&&&&&&*****&**;::*;:--------::;X@@@@@@@XS8S8O8&88O8SXS88OO&&&*&&******;;;;;---::;::::---:---------,,,----,,,,-::-:-,,..
OOO&&&&&O&&&&&&O&&&*****;::;*:--------::;X@@@@@@@@SO8SSOO&OO8S8OOO&&&&*&&&********;;;;;:;;;;::---::------:-:::-,,,,,,,,,,,,,,.,-,,,,,
O8OOO&&&O&&&&&&O&&&&&&***;:;*:--------:::S@@@@@@@@S8SOSSSS8OOOOOO&&&&&&&&&&&******;;;;;;::;;:--::----,,--,,,,,,,,,,,,,,,,,,,,,,,
O88OO&&OOOO&&&&&&&*&O****;:;*:--------:::S@@@@@@@@S8SXSXSS8OOOOOOOO&&&&&&&&&*&****;;;;;;:::::--:-,,,,,,,,,,,,,,,,,,,,,
8OOOOO&&OO&&O8O&&&&&&&&**;:;*;---------:-8@@@@@@@@@@@XXS8OOOOOOOOOOO&O&&&&&&&*****;;;;;;;:::::::-,,,,,,,,,,,,-:::-,.,------,---
S88O8OOOOOOOOO&OO&&&&&&**;:;*;-:-------::O@@@@@@@@@XXS8OOOOOOOOOOOOOO&&&&&&&&&&***;;;;;;;:::::::--,,,,,,,,,,:;;;::::--:--,,-------
8888OOO&OO&OO&&&&&&O&&&&*;:;*;--:-----:;;O@@@@XS8OO888O8OOOOOOOOOOOOOOO&&&&&&&*****;;;;;;:::::::::-:;;::::;;;;;;;------------
888OOO&&OOOO&&O&&&OOO&&***;;*;-:-:----:*;*88O**;:*OO888OOOOOOOOOOOOOOOOO&&&&&&******;;;;;::::::::::---;;*;;*;:,:;:::::----------
888O8OOOO88O&OO&&&&&&&&***;;**:::------;;;;::;;;&888888O888OOOOOOOOOOO&&&&&&&******;;;;;;;:::::::::::--;;;;:;:-.------,,,,,,-----,,-
88888OOOOOOOO8O&&&&&&&8&**;;**::::----:*;**::;*O88888O888OOOOOOOOOOOOOO&&&&&&&*******;;;;;:::::::::----:::--::-----:----,,,,,,,----,,
8888OOOOOOO&OOOOO&&&*&O&**;;**:::------;;;*;:;O888888888O88OOOOOOOOOOO&O&&&&&&&*****;;;;;;:::::::::::----:-:--:--------,,,,,,,,,,,.,,..
S88OOOOOOOO&O8O&OO&&&&&&&*;;**::::-:---;;***;O888888888888OOOOOOOOOOOOO&&&&&&*&*****;;;;;;;;::::::-:------:-:--,,---,,,,,,.,,,,,,,....,.
88S8OOOOOOOOOOOOOOO&&&&&&&*;&&;:::-:---;;***&8SSSSSS888888O8OOOOOOOOOO&&&&&&&*******;;;;;;:::::::::-:--:------,,---,,,,,.,.,,,.,,..,...
8888OOO888OOOOOOOOO&&OOO&&*;&&:::::::--::;&O8SSSSSSSSSS888OOOOOOOOOOOO&O&&&&&&******;;;;;;;;:::::::::--------,,,-:-,,,,,,,,,,,,,,,,,,,,....,,
88888OO8SSOOOOO8OOOO&OOO&&&;&&;::::-:--::;O8SSSSSSSSSSS888OOOOOOOOOOO&&&&&&&**&*****;;;;;;:::::::::---:------,,,,,--,,,,,,,,,,,,,,,,,,.,,,,,.,
88888O88S8O88O888OO&&O8O&&&;&&;:::::---;;*8SSSSS8SSSSSSS88O8OOOOOOOOO&&&&&&&&*******;;;;;;;::::::::::-:-------,,,,,,,,,,,,,,,,,,,,,,,,.,,.,.,,,
SS88O8O8O888O8OOOOOOO&&OO&&;*&;:;;:::--:;OSSS8SSSSSSSSS88O8OOOOOOOOO&&&&&&**********;;;;;;:::::::::::---::-----,,,,,,,,,,,,,,,,,,,,,,,,,.,,
8S888O8OO888OO88O88OO&OOOOO*&O;:;;:::--;O8SSSSSSSSSSSS888OOOOOOOOOOO&&&&&&&*********;;;;;;::::::::::-:----:-----,,,,,,,,,-,,,,---:-,,
88S888888888888S888OOO88OOO*&O;:;;:::--;8SSSSSSSS8888888O8O8OOOOOOOO&&&&&&**********;;;;;:::::::::::-:-::-:------,,,,,,,,,----,,-::--::
88S888888888888S888&&&O88OO**8*:;*;::-:O888888888888888O8OOOOOOOOOO&O&&&&*********;;;;;;;;;::::::::::::-----:-----,,,,,,,-----,,-::::::::-
S88888888888888S888OO&O88OO&&8*:;**;::&SSSSS88888888888OO8OOOOOOOOOO&&&&&*********;;;;;;;;:::::::::::-::----::--:--,,,,----::::::::--
SSSSS8888SS88888OOOOOOOO88O&*S&;;*&*:;8SSS88888888888888OOOOOOOOOOO&&&&&*********;;;;;;;;:::::::::::::-::::-::::---,,,---::---:::
SSSSS888888888888OO8888O8S8O*S&;;&&*;OSS88888S8888888OOOOOOOOOOOOOO&&&&&*********;;;;;;;:::::::::::::::::::::::-:-:------,,-----:::--:::
XSSS88888888S888S88888OOO8OO*S&;*&&**8SSSS8S8888888OOOOO8OOOOOOOOO&&&&&&********;;;;;;;;;:::::::::::::::::;::::-:----:--,-----,,-::::::,
XSS88S88SSSS8888SSS888S8OS88*SO;;&&&OSS88S8S888888O8OOOOOOOOOOOOOOO&&&&&********;;;;;;;;::::::::::::::::;;;;;:::::::---,-------,,-::--,.,
XXSS88S8SXXX8O88XXS8888O&888*S8;;&&OSSSSS8S888888OOOOOOOOOOOOOOOOO&&&&&&********;;;;;;;;::::::::::::::::;;;;;:::::::--,,,,-:---,,,,,,,..,,
XXSSSSSSSXXXS888SSSSS8S8OS88*S8;;&&8SSS8SS888888888OOOOOO8OOOOOOOO&&&&&*&********;;;;;;;:::::::::::::::;;;;;;::::::::-,,,,,,---,,,,,,,,,--
SXXS8S@@XXXSSSS88O8SS88OOSSS&SS*;*&SSSSSSSSSSSSS8OOO8OOO888OOOOOOO&&&&&********;*;;;;;;::::::::::::::::;;;;;;:::::::::-,,,,,,,,,,,,,,,-:*O-,,
XXXSSXXXXXSSS8888O88OO8O&SSS&8S*;&8S88888888888888OOOO888888OOOOO&&&&&&*********;;;;;;;;:::::::::::::::;;;;;:;:;;;;;;::,,,,,,,,,--:;OS;,
@@@SS@@@SXS8SS8888OOOOOO&8SS&OX*;&O8OOOO8888888888O8OO888888OOOO&&&&&&*********;;;;;;;::::::::::::::::::;;;;;;;;;*;;;;;-,,,,,,--:*8*
XSXXSXXSSS888888888OOOSOO8SSOOX**&&&&&&&O88888888O8O8O8888888OOOO&&&&&&********;;;;;;;;:::::::::::::::::;:::;;;;;****;;:-,,,,,,,,,,,,,,,,
@XSXSSSS88S888888OOO8888O8SSO&X&***;;*;**&&OO8O888OO8O888888OOOOO&&&&&********;;;;;;;;::::::::::::::::::::;;;;;;;;****;;:-,,,,,,,,,,,,,,,,,,,,,
@@SXSSS88888888S888OS888OSXSO&X&*;;;;;::;;;*&OOOOOOOOOOO8888OOOO&&&&&&*******;;;;;;;;;:::::::::::::::::::::;;;;;;****&*;;:,,,,,,,,,,,,,,,,,,,,,
XSSSSXXSS8888SSS88888OOOO8SS8&S&;;;;:::::::;*&&&OOOO&OOOOOOOOOO&&&&&&******;;;;;;;;;;:;::::::::::::::::::::;:;;;;******;;:-,,,,,,,,,,,,,,,,,,,,
@@@SSSXS8SXS8SS8OSS8OOOOOOSSS*O&&&*;::---:::;**&&O&&&OOOOOOOO&&&&&&*****;;;;;;;;;;;;;;::::::::::::::::::::::::;;;;****;;;::,,,,,,,,,,,,,,,.,,,,
XXXXSS888S@@S8888SSSOOOOOOS8S&OOO8O&&*;;::;;;**&&&&&&OOOOOO&&&******;*;;;:::;::::;;;;:::::::::::::::::::::::::::;;*****;;;:-,,,,,,,,,,,,.,,,,,,
XXXSSS888S@SS8888SSS88OOOOSSS&88888OO&&**;;;****&&&&&OOOOO&&&***;;;;;:::::--:::::::::::::::::::::::::::-::::::::;;*****;;;;-,,,,,,,,,,,,,,,,,,,
SX@SX8888SXSS8S8O88888OO8O88SOS88OO&&***********&&&OOOOOO&&***;:::::----------::::::::::::::::::-:--::::::;;;****;;;::-,,,,,,,,,,,,,,,,,,
X@@SS8888SSO88S8OO888OOO88S8SOS8&*;;;;;;;;****&&&OOOOOOOO&**;:::----:::::::::-::::::-----:::::;;;;***;;:;:-,,,,,,,,,,,,,,,,,,
XXXXS888SS8OO8888OO8OOO&8SS8SO8&;;::::;;::;**&&&O88OOOOO&&*;;::----:::::::::::--------:-::::::;;***;;;::-,,,,,,,,,,,,,,,,,,
XXSSXS888SO88SS8888OO&&&O8S888O*;::--:::;;;**&&O8888OO&&&*;;:-------::::--,,,--::::-:----:---------:::::::;;;;;;:::-,,,,,,,,,,,,,,,,,,
S@XXXX888OOS888888OOOOO&&8S88O&*;:**:--:;;***&&O88OOO&&**;;::--------::;;;*;;;::--::::---------------:::::::;;;;;;:::--,,,,,,,,,,,,,,,,,
SSSSS8888888S88O88888OOOOOO88O&*;::**::;;;;**&&OOOO&&**;;:::-----:::::;;****;;;;:---::::---------------:::::::;;;;;:::--,,,,,,,,,,,,,,,,,
SSSSSS88S888888O8OO888&&OOO888&*&;::::;***;**&OOOO&&&*;;::-----::::::-:::;;;;;;;:::--::-:-------------:----:-::::::::::-,,,,,,,,,,,,,,,,,
SSSSS888S88888OOO88O&&&O&8888SO***;:::;******&&O&&&**;;:---:::::------::::;;;:::---::-----------------:-::-::::::::--,,,,,,,,,,,,,,,,
SSSSS888888888O8S88&&&&&OOOO8S8O**;;:;******&&O&&&**;;;:--:;:::------::::::::----::::---------------------:::::::---,,,,,,,,,,,,,,,,
SSSSSS88888888888OOOOO&&O&&8SXSSOO&&&&&&&&&&&&&***;;:::---:;::::---,-::::::----:::::---------------------::::-:--,,,,,,,,,,,,,,
SSSSS8888888OOOOO&&O&&&&O&O8XXSSOOOOOO&&&&&&&***;;;;:::----:;;:::--:;-,-----::----::::-------------------------:---,,,,,,,,,,,,,,,
SSSS888888SS8OO8OOOO&&&&OO&8XXS8OOOO&&&&OO&&&**;;::::::---::::--:::------:---::::-----------------------:-:---,,,,,,,,,,,,,,,,
SSSS88888888S88OOO88O&&&OOOSXSS8OO&&&&&OO&&***;;:::::::---:::--::------::--------:::------------------------:-:---,,,,,,,,,,,,,,,,,
SSSSS8888888888OOOO8O&&&&88SXS88OOOOOOOOO&&**;;::::::::----::;:::::---::------:::------------------------:----,,,,,,,,,,,,,
SSXSSSS888888OO8OOOO&&&&O&8SS8888888888OO&&*;;;;::::::::----:;;;;;*;;:---::::-------::::------------------------:---,,,,,,,,,,,,,
XXS8S88888O88OS8OO8O&&OO88SSSSS888SXS888O&&*;;::::::::::------:;;;;****;;;::::::-------::::------------------------:---,,,,,,,,,,,,,,,
8SSSS888888888S8OO8&&&O8O8SSSS8888SS8OOOO&*;;;::::-:::::------:;;;;;***;;;::::::-------------:::----------------------------,,,,,,,,,,
8SSSS88SS8888888&OOOO&&O8SS8888888S88O&&&**;;::::::::::::----:::;;;;;***;;;;:::----------::----------------------------,,,,,,,,
8SSS88888O888OO8O&&OO&&8SSSSS8888888O&***;;::::::::-:::::---::::;;;;;;;;;;;:::----------------::---------------------------,,,,,,,
SSS88S8888888OOO&O&&&&&SXS888888S88O&&**;;:::::::::---------::::;;;;;;;;;;::::---------------------------------------------,,,,,,,,
88SS88O88888888O&OO&&&8@XS88888888&****;;::--:::::::--:----::::;;;;;;**;;;;:::::--------------------------------------------,,,,,,-
8S888888S88OOOO8OOOOO&S@XS88888888*;;;;;::----::::::---:---::::;;;;;;****;;;:::::::--------------------------------------,,,,,
88888888888888&88O&OOS@@SS8888888O*:-:;;::-:;:::::------::;;;;;;;******;;;:::::::--:--------------:--------------------,,,,--
888888888OOO8OO&8&&&&S@@S8S888888O*:::;;:--:;::::------::;;;;;;***;***;;;;;:::::::::::--:-----:-:--:-----------------,,,--
88888O88888O8O&OO&&&O@@SS88S88S888*;;;**;:---::;::::-----::;;;;;;;******;;;;;:::::::::::::----::-:-:---------------,,,--
S8888888888O88&OO&&&8XXSS8S8888888O*;*&&*::---,::::::---:::;;;;*;*******;;;;;::::::::::::-:-:-:-::-::--------------,,,-----:
8OO8OOOOO88OO8&O&O&&S@XS8S8888888S8O**&&*;:::---::::::----:::;;;;****;*****;*;;;;::::::::::::--:-:-::::-----------,,,------:
8888888O8888OOO&O&&&SXSS88888888888O&&&&*;;:::--::;:::-----:;;;*;***********;;;;;;:::::::-:--:::-::::::::--------,,,,-------:
SSSSS888OOOO&&OO&&&OSSS88888888888OO&&&&**;;::--::::-:---:;;;;*;********;;;;;;;;::::::::-:---:::-::::::---------,------:
88S8S88OOOOO&OO&O&&OXS88888888888OO&&&&&***;::---::-----::;;*****;******;;;;;;;;;::::::-:-:-----::::::::---------------
8888O88O&OO&OOO&&&&8SSS88888888O&&&********;::----------:;;*****;**;**;;;;;;;;;;:::::::::-----:---:::::-----------
O888O88OOO88OOO&&&&8SSSS88888OO&&****;;;***;;:::---------:::;*************;;;;;;;;:::::::::-:------:---::-----------,,,
88888888OOO8OO&&&**8SSS88888OO&&***;;;;;***;;:::::::::::::::;**********;*;*;;;;;;;;::::::::-:-:-------------------,,,,,,,,,,,,,,,,,,
8O888OOO&OOOO&&&&**OS888888OOO&&**;;:::;***;;:::-::::;:::::;;*********;****;;;;;;;::::::::--------------------,,,,,,,,,,,,,,,,,,,
8O8888OOOOOOO&&&&**8S88888OOO&&***;;:::;;;;;:::--::::;;;;;;;***********;**;;;;;;;;:::::::-:-:-------------------,,,,,,,,,,,,--
8888OO88OOOOOO&&&**8888888OO&&**;;;::::;;;;;::-----::;;;;;;;*************;;;;;;;;:::::::-:------------------------::,,,,,,--::--
SOO88OOOOOOOOO&&**&888888OO&&****;;::;;*;;;;:::----:::;;;;;;***********;*;;;;;;;;:::::::-----------------------,,---::----,,.
O8OO8OO&&&O&OO&&&&&88SS8OO&&&&**;;;:;****;:::::-----::::;;;;***********;;;;;;;;:::::::-------------------------,,::,,,,,,.
O8888O88&&O&&OO&&&&8888O&&&&****;;:;;***;;:::::------:::;;;;;*********;;;;;;;;:;:::::-----------------------,,,,,,,,,,,,
88S888OOOO8O&&&*&*&8SSO&&*****;;;;;;;;;;;:::::::-----::::::;;;*******;;*;;;;;::::::::-------------------------,,,,,,,,,,,,,,,,,,,,
888O88OOO888O&&*&*&888O&*****;*;;;;;;;;;:::::::------::::::;;;*****;*;;;;;;;;;::::::-----------------,,,,,,,--,,,,,,
8OOOOOO&OOOOO&**&&O888&****;;;;:::;;;;;::::::::-:---:::---::;;;***;*;;;;;;;;:::::::--------------------------,,,,,,,,::,,,,,
8O&&&&&*&O&OO&*&**O888&***;;;;;;;;;;;;:::::::::::::::-:::::::;;;;**;;;;;;;::::::::-----------------------,,,,,,,,:;;:,,,,
8O&*&&&*&&O&&&****&88O&***;;**&O**;;;::::::::::--::::::::::::;;;;;;;;;;;;;:::::::----------------------,,,,,,,,:;*;-,,,
O&OO&&&&*&&&&&****O88O&*****&OOOOO&**;:::::--:--:-:::-::----:::;;;;;;;;;:;::::::::-------------------,,,,,,,,-------
&&&O&*&&&**&&&&***O88O&***&&&&&&&&&&***;;:-:------:----:----:::;;;;;;;;;;::::::::--------------------,,,,,,,,,,--::::::---
&&&&&&&**&*****&*&O88OO&&&&&O&&**********;;:::---------:------::;;;;;;;;::::::::--------------------,,,,,,,,,,,---:::;;;;;;;:
&&&&*****&&******&OO8OO&&&OOO&&***********;;:::-------------:::;;;;;;::::::::-:----------------------,,,,,,,,,,,,,--:*****;;;:
O&&&******&&&****&O8OOOOOOOOO&****;;*****;;::::::---:-:------::;;;;;::::::::---------------,,,,,,,,,,,,,----:*&&****;;
&&**&&************O8OOOOOOOOO&&**;;;;*;;;;::::::::---:::-----::::;:;::::::::------------------,,,,,,,,,,,,,,---:;&**;;;;:
&*&&************;*OOOOOO888OOO&*;;::::;;:::::::::::--:::------:::::;:::::::::----------------,,,,,,,,,,,,,,-----:::---
**&&&**&&*******;*OOOOOOO88OOO&&*;;::::;;;;;;::::::-----::::------::;:::::::-:-----------,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
&&&&&&**&*******;*OOOOOOO8OOOO&&*;;::::::;:::::::::::--:::::------::::::::::::-----------------,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
&&**;**;;;*****;**&OOOOOO8OOO&**;;:::::::;;;;:::::::::-:::;;:-----::::::::::-:-------,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
*&***********&&*;*&OOOOOO88OO&**;;:-:-::;;;;;;::::::::::::;;:::-:::::::::::::---------,,,,,,,,,,,,,,
**&**********&****&OOO8O888O&&**;;;:::-::;;;;;;::::::::::;;;;:::::::::::::::::-----,,,,,,,,,,,,,,
&&&****;******;***&OOOO8888O&&***;;;::::::;;;;;;;;;:::::;;;;;;:::::::::::::::------,,,,,,,,,,,,,,,,,,,,,,,
*&***;;;;;;;;;;***&&OOOO88OO&&***;;;;;::::;;;;;;;;;;::::;;;;;;;:::::::::::--------,,,,,,,,,,,,,,,,,,,,,,
*****;;*****;*;;**&&&OO88OO&****;;;;;;:::::;;;;;;;;;:;:;;;;;;;;;:::::::-------------,,,,,,,,,,,,,,,,,,,,,,,,,,
****;;**;;;*;*****&&OO888O&&****;;;;;;;::;:;;;;;;;;;:;;;:;;;:;;;::::::-----------------,---,,,,,,,,,,,,,,,,,,,,,,,,,
****;;**;;;*;*****&&&OOOOO&***;;*;;;;;::::;:;;;;;;;;;;;:;:;::;:::::::::------------,,----,,,,,,,,,,,,,,,,,,,,,,,,
**********;;;;;;*&&&&OO&&&****;***;;;;:::::;;;;;;;;;;:;:;::::::::::::-:---:---------,,,,---,,,,,,,,,,,,,,,,,,,,,,,,,,
;****;**;*;;;;;;***&&&&&*&***;;;;;;;;::::::::;;;;;;;;;:::::::::::::::--------------,,,,,,----,,,,,,,,,,,,.,......,.,..,,
*****;*;;;;******;**&&&&***;**;;;;;;;::::::::::::;::::::::::::::::::---------------,,,,,,,,,,,,..,,,,...,,,,,.,,,,,,,
********;;;;;;;;;;;**&&***;;;;;;:;;:::::-::::::::::::::::::::::::::-----------------,,,,,.,,,,,,,,,,,,,,,,,,,,,,,,,
**;*&*;;;;;;;;:;;;;*******;:;;;;:;::::::-::::-::::::::-:-:--::::::------------------------,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
;;;**;;;;;;;;;:;;;;;****;;;;;;;;;:::::::::-------:::---------------------------------,,,,,,,--,,,,,,,,,,,,,,,,
;*;**;;;;;;;;;;:;;;****;;;;;;:::::::---::-------------------------------------,----,,,,,,,,,,,,,,
;;;;*;;;;;;;:;;:;;;;;;;;::::::::::::--------------------------------------------,-,,,,,,,
;;;;;;;;;;;;;::;;;:;;::::::::::------------------------------------,,,,,,,,,,
;***;;;;;;;::::::::::::---:--:-------------------------,,-,,
;*;;;;;*;;:--:::--::-------------------------,,,,,,,,
;;;;;;;;:----::--:-------------------,,,,,,,,,,,
**;;;::--:::--,,--------,,,,,,,,,,,,,-------,,,,,,
;;;;:--:::-,,,,,,,,,,,,,,,,,,,,,-----,,,,,,,
;;::--::-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,------,,,,,,,,--
::--:::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-----,,,,,---,,
--::-,,,,,,,,,,-:,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,------,,--,
----,,,,,,,,,,,,;*;:,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-------,---
---,,,,,,,,,,,;&&;-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,----,,,,
---,,,,,,,,,,,:*&&*;-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,--,,,,,,,-
--,,,,,,,,-;&&&&*;:,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,----,,,,
,,---,,,,,,,,,-;&&&&**;:,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,--,,....,,,,,,
--,,,,,,,,,:*&&&&***;:,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,--,..,,....,,,
,-,,,,,,,,,,,:*&&&&&***;:-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,--,..........,,,,,
--,,,,,,,,,,,:*&&&&&**;;::-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,,...,........,,,,
,,,,,,,,,,,,,;&&&&&&&**;;::--,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,--,,..,..,,.........,,,,,,
,,,,,,,,,,,,,;&&&&&&&***;;:-----,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,--,........,.........,,,,,,,,
,,,,,,,,,,,,,,,-;&&&&&&&***;;::----,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,........,...........,,,,,,,,,,
,,,,,,,,,,,,,,,,-*&&&&&&&&***;;::----,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.......................,,,,,,
,,,,,,,,,,,,,,,,-*&&&&&*&&&**;;;::--,,,,,,,,,,,,,,,,,,,,,,,,,,,,.........................,,,,,,,,,,,
,,,,,,,,,,,,,,,-*&&&&&***&**;;;::---,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,............,...............,,,,,,,,,
,,,,,,,,,,,,,,,,-*&&&&&*******;;;::----,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,..............................,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,*&&&&&********;;;::----,,,,,,,,,,,,,,,,,,,,,,,,,,,...............................,,,,,,,,,
,,,,,,,,,,,,,,,,,,*&&&*&********;;::::----,,,,,,,,,,,,,,,,,,,,,,,,,,...........,.,....................,,,,,,,,
,,,,,,,,,,,,,,,,,,,,;&&&&&********;;;::::----,,,,,,,,,,,,,,,,,,,,,,.............,.,.....................,,,,
,,,,,,,,,,,,,,,,,,,,,,,:&&&&*&*****;*;;;::::----,,,,,,,,,,,,,,,,,,,,,,,,.......................................,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,-*&&&&*****;*;;;;:::::----,,,,,,,,,,,,,,,,,,,,,,,,,,.........................................,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,;&&&*&****;;;;;;;::::-:----,,,,,,,,,,,,,,,,,,,.............................................,,
,,,,,,,,,,,,,,,,,,,,,,,,,:*&&&*****;;;;;;;;:::::----,,,,,,,,,,,,,,,,,,,,...........................................,,.,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,-**&*&****;;;;;;;;;:::-------,,,,,,,,,,,,,,,,,,,,.............................................,.,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,;********;;;;;;;;;;::::-----,,,,,,,,,,,,,,,,,,,,,.................................................,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,,:*&*****;*;;;;;;;;;;::-------,,,,,,,,,,,,,,,,,,..................................................,,
,,
,,,,,,,,,,,,,,,,,,,,,,,,,;*******;;;;;;;:;;;::-------,,,,,,,,,,,,,,,,,,,,..................................................,,
,,,,,,,,,,,,,,,,,,,,,,,,,,,,:******;;;;;;:;:::::::-----,,,,,,,,,,,,,,,,,,,,,.....................................................
,,,,,,,,,,,,,,,,,,,,,,,,,,,,;*****;;;;;;;;:;::::::--,,,,,,,,,,,,,,,,,,,,,,.....................................................
,,,,,,,,,,,,,,,,,,,,,,,,,,,,:;**;*;;;;;;:;;:::::::---,,,,,,,,,,,,,,,,,,,,,,,......................................................
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;**;;;;;;;;::;::::::---,,,,,,,,,,,,,,,,,......................................................
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:;;;;;;;;;;;;:;:::::::----,,,,,,,,,,,,,,,,,......................................................
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:;;;;;;;;;;;:::::::::--,,,,,,,,,,,,,......................................................
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:;;;;;;;;;;::::::::-:------,,,,,,,,,,,,,.......................................................
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-:;;;;;;;;;;;::::::-----,,,,,,,,,,,,,,,.......................................................
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,::;;;;;;;;;::::::::-:---,,,,,,,,,,,,,,.....................................................,.
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,,-::;;;;;;::;::::::-:----,,,,,,,,,,,,,........................................................
,,,,.,,,,,,,,,,,,,,,,,,,,.,,,,,.,-:::;:;:;::::::::--:----,,,,,,,,,,,,,,........................................................
,,,,.,,,,,,,,,,,,,,,,,,,,,,,,,.,.,:::::::::::::::::-:-----,,,,,,,,,,........................................................
,,,,,.,,,,,,,,,,,,,,,,,,,,,,,...,,,-:::::::::::::::::---------,,,,,,,,,,........................................................
,,,,,,,,,,,,,,,,,,,,,,,,,,,.,,..,.,-:::::::::::-:::::-------,,,,,,,,,,,........................................................
,,,,,,,,,,,,,,,,,,,,,,,,,,,,...,,..,-::::::::-:-::-:-----,,,,,,,,,.........................................................
,,...,,,,,,,,,,,,,,,,,,,,,,.,.,..,.,,--::::--:--:--:----,,,,,,,,,,,..........................................................
,,,,.,.,,,,,,,,,,,,,,,,,,,,,.,......,---:::------------,,,,,,,,,,,,,,,,,..........................................................
,.,,,,,,,,,.,..,,,,,,,,,,,.,...,.,..,,---:--------------,,,,,,,,,,,,,,,,,...........................................................
,,.,.,,,.........,,,,,,,,,.,.,.......,,--:-:--------,,,,,,,,,,,,,,,,,,............................................................
.,...,,....,,,,,,,,,,,,,....,.........,---:-----------,,,,,,,,,,,,,,,,,,,............................................................
.............,.,,,,,,,................,,--:----------,,,,,,,,,,,,,,,,,,.............................................................
............,.,,,.,,....,..............,,-------------,,,,,,,,,,,,,,,,,..............................................................
......,....,,,,,,....,...................,-------------,,,,,,,,,,,,,,,,,..............................................................
..,.....,.,,,,,....,.....................,,-----,,,,,,,,,,,................................................................
...,....,,.,,,.,..........................,,-------,,,,,,,,................................................................
.
......,,,.,.,..............................,,,,,,,,,,..................................................................
....,,...,.,.................................,,,,,,,,,,,,,...................................................................
.........,.......................................,,,,,,,,,,,,,,,,,.....................................................................
.....................................................,,,,,,,,,,,,,,,......................................................................
.......................................................,,,,,,,,,,,,,,........................................................................
............................................................,,,,,,,,............................................................................