;:cclloodddddxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxdddddddxxxkkkkkkkkxxxdoollcc:;;
clooodddxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxkkkkOkkkkkkxxdddoollcc
dddxxxxxxxxxxkkkxxxxxxxxdooxkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkOOOOOOkkkxxxxxxddoo
xxxkkkkkkkkkkkkkkkkkkxdo'..;okkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkxxxxxd
kkkkkkkOOOOOOOOOOOOOkc'...',;ooxkOkkkOOOOOOOOOOOOOkkkkkkOkkkkkkkkkkkkkkkkxxxxxxx
OOOOOOO0OOOOkkOOOOkxk:........'':l;',lOOOOOOOOOOOOOOOOOOOOOOOkkkkkOOkkkkkkxxxxxx
000000000Oo,;lkdco:,,...............,o0000000000000000OOOOOOOOOOOOOOOOOOkkkkkkkk
0000O0kl:,..'',,...................';lOKK00000000000000000000000000OOOOOOOOOOOkk
00000x:,........... ..... ...''''''.'oKKKKKKKKKKKKKKKKKKKKKK000000000000000OOOO
00000o'.................. ....'.'.. .cx0KKKKXXXXXKKKXXXXXXXKKKKKKKKKKK000000000
00KK0c,............... .. ..........:x0KXXXXXXXXXXXXXXXXXXXXXXXKKKKKKKK00000000
KKKK0l;............ ......''.,l0NXNNXXNNXXXXNNXXXXXXXXKKKKKKKKKKKK0000000
KKKK0oc:............ . ...... .,kXXXXNNNNNNNNNNNNNNNXXXXXXXXXKKKKKKKKKKKKK0
KKKKKo'.............................,lk0XNNNNNNNNNNNNNNNNNNNNXXXXXXXXXXXXXKKKKKK
KKXXX0dd:.....'''................... ..'oOXNNNNNNNNNNNNNNNNNNNNNNNNXXXXXXXXXXXKK
XXXXXXXXx:,''','''....... .......... ...'cKNNNNNNNNNNNNNNNNNNNNNNNXXXXXXXXXXXXXX
XNXNNNNNNKo;;''...'........',...... ...'.'xNWNWWNNNNNNNNNNNNNNNNNNNNNNNXXXXXXXXX
NNNNNNNNNOd;''''.................. .'';;oNWWWWWWWWWWWWNNNNNNNNNNNNNNNNXXXXXXXXX
NNNNNNNNO;..'..'...........'.'..'...c0OOxkWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNNXXXXXXX
NNNNNNNNXc'....'''......,'';...,''cckWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNXXXXXX
NXNKOXNNXd;..','.''....':,........,dNWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNNNNXXX
NOlol0NNNNx,',;,,.''....dd,'...,'..oNWWWNKOkkOOOXWWWWWWWWWWWWWWNNNNNK0XNNNKkOXXX
KxcccONKXNXOllc,;cl;'..:dOx::;,,',cKWWWWXxlcc:ccxkk00KKKKKKKXNNNNNNXkcONXKkccOXX
kcccldxodxkolol;,;ooo,.ldoxOOkcddxKNNNNNNklcc:ccdcoO0OOOOkxxxx00kkkkd:oOdxdcclxk
kc:ccl::,;c::lo::;loo;.collkkdxOO0KXXKKXXkolllooxlclxdlolclllcc::::::,;cllc:,',,
l:;:cl:;'';;;;:::::;;,.,;;clc:clc:clcccolloooloddolcllcc:cc:::;::,;;,,,'.'''....
;:cccccccccccclllllcc;'lcloooooolccc:cllc:ccc;;:c:;,''','''',,,''',,,,'.........
;;;;;;;;:::::ccccccc:,:oooooooooooddddddddddddddooooolllclcccclc:::::;;;,,;;,,,;
cccc:::::;;;;;;;;;:;'':::cccccccccllloooooodddooooooooooooooooooooooooooooolllll
cccccllcllllcllllc;',lccclccccccccccclllllllloollllloloooooooolooodddddddooooooo
;::;:::::::::::;;,..;:ccloooooooooododdddddddddddddxxxxxxxxddddddddddddddooooooo
;;;:;;;;;;;;:;;;;;;,,,,,;;:::ccllloooooddddddddddddddddddddddddddooooooooooollll
;;:;;;;::::::::c::c::cclllllccclllllloooooooooolooooooooooooooooolllllllllllllll
;;;;;;:::::::::;::::ccc::::cccccllllllllooooolllllllooooloooolllllllllllcccccccc
;;,,;;;;;;;;::::::::::::::::c:c:ccccllllllllooolllllllllllllllccllllcllccccccccc
,,,,',,,,,,,;;;,;;;;;;;::;;::;;:::::ccccccccllllllccccllccccccccccccc:::::::::::
.'''''.',','''',,,,,,,,;;;;;;;;;::::::ccc::cccccc::::c::::ccccccccc::::;;;;;:;;;
.''..'''''..''''',,,,,,,,;,;,;;:;::;;::;;;;,;;;;;;;;:::::::::;;;:::;;:;;;;;;;;;;
''....'',''''',',',,'',,,;;',,;;,,,,,;::;;;;::::::::::::;;;;;;;;;;;;:;;;;;;;;;;;
'''''''.'..'',''''''''',''''',,;,;;;;::::::::;;;;;:;;;;;;;,,,,;,,,,;,,;;;;;;;;;;
'..'''......''''''''''',',;;,',;;;;;;;:;;;;;,;,,;,,,,,,,;;,,,,,',;,,,',,,,,',,,'
.....'''''''''','','',,,;,,,,,,,,,'',,',,,;;,,,,,,,,,,'',,,,,,,,'',,,,,,,,,,,'''
'..''''''''...'''''''.'',,',''',''''''',,,,,,,,,''',,,''''''',,'''',,',,',,,,'''
...............''.''.''''''..'''','''''',,,',,''''''.'''.',,,,'.'''''''''.''.''.
.................'....''....'.'''..'.'''''''''''''''......''''''.''''''.'.''....
.................'''''.'........''............''''''............''''.''.''......
.................'''.....................'.....'''.............'...'''''''......
..............................................................''.....'..'.......
........................................................''...............'......
................................................................................
.... ...........................................................................
.. ..........................................................................
. ..........................................................................
......... .................................................................
. .. ......................... ........ ...............................
. .. ............ .. ...... ..... ...................... .... .
. ... .... ..... . . ......... ..... ..............
. .. ... ...... .. .. ..... . . .. ... ..
. .. .. . . . . . .... ... .. . . .
.. .... .. . . ... .... .