;;;,;,'''''''',;,'.''',,,;;;;:::::;'',::;;,,',,;;;;:;;;,;,,'','',;,,,,',,;:::;,,:cccccc::;,..,;::;,,,;,',clcccccc::::;,;::;;;,,;cc;,;;;;;,,:llc;;;;;;:;,;;:;,::::::;::c::lcc:::c:::;::;::;cllccc:::;,,:o
;;;,,,,,,,',''',,'''','',,;;;;;::::,'',;;;;;;;;,,,,;;;,,,,'.''''',;:;;;,,;:ccc:;;;;;::ccc:;,;cc:;,,;:;,,,',:cc;;cc::::;';c:;:;;;::;,,:cc:,,;:c;;;::codl:;;::,,;::::;;;c:;;;:c:::cl:,;;,;:::::ccc:cc::;,;
;;;,,,,,;,,,,,,,,'',,,',,,,,,,,;::;,,,,,,,,;;;,,,,;,,,,,,,,,'.''',;;;;;;;;;;:::cc:::;;;;;:::::::;;;cc:,,,,;;,;,,;:::ccc;,;clloc::;,,,,,;;;;;;:;;;;;ldolllc:;;;;:llc;;;;,,',:::cccc:;,:;;clc:;:::::ccc;;;
,,'''',,,,,,',,,,,''''''',;;;;;;;;,,;;,'',,,,,,,,',,',,;;;,,,'''',,;;;;:::;,,;;;::c::::,''','',;;,;::;'.';cl:,,'';ccccc;,ldlllcc:;,,,'',;;:c:::;;;:lolccc::;:cc::cc:;;;;:::;,,cllcc::cc;:lcccccc::cclcc:
,,'''';,''',,,;,'''''',,,,,,;::;;,',;;,',,,,,,;,;;;;;;;;;;;,',,',,,,;;;;;:;,,,,,,;;;;::;;,'','',;;:::;'.;cloool;,;:;;,;:,:l:ccll:,:oc;,,,,;cloooc:;;:;::cc::cclllcc:,;cclc:;,,:cldlclc;;;:::ccccc:;:cccc
,,,,'',,,,'',,,,'...'',;;;;,,,;,,'.,;,'',,,'';;;;:::;;:c;',,'',;;,,',,,,;::;,;,,;;,;;,;;;,;::;,,,,,;::c,,ldocll:;;;,,',::,,::::cc:ldl;;:::;;::cc::,,;:,';:c::;;clc:;,:cc:::;,;;;cc:;::c;,,;::;:c::clcc::
,,,,'',,;,'',,,,,''..,;;;;:::;,'''.',,'''',,,,;,;:::::cc:,,,,,,,;;,,,,,,,;;,';;,,,,,,,,,,;clc:::,'''',;,';c:;;;;;,,:c:;;c:c:;;;::cll:;loclc;;:::;;;:l:,',,;;;,cdo::cc:c::clc;;:;::;;:cc:,;cc:,:c::cc::c:
,',,,,,;;;,,,',,,'''..,;;;::;;;,''''''.'''','''';:::::::;,;;,,,;;;;;,,,,,,,,'',,;;;,,,,,,,,,,,:;,,;,''';;,,,,',;,,:cooc,;;;:;,,;;;cc:;lo::cc:,;;;;;;;,,,,::;;;:lc;:lollc:::c:;:::cc:;;;;;;cl:;:cc:;;;:;,
'',,'',,;;,,,',,''''...''',,'''',,,''''''''''''',::::;::;,,,,,,;;;;;;,,,''',,,,,,,,,,,,,,,'',,,;,:oddol:;;;,,',;,,;:ccc:,',::;,''',,,;cc;;;cc,';c:;;,',;:c:;;;;::;:cccc:cc::;;;:cc::;;;::;cl:cc::;,;;:;,
,,,,''''',,,,',''',,'''''..',;;;;;;;,,,,,,,,,,',,;;;:;::;,',,;;;;;;;;;,,,''',;,,;;,,,,,,,;;;::;;,,cooolc,,,;,,,,,;,,;::c:,';,'''','',,;:;;:cl:,:ol:::clc:c:;;,;loc;;:lc:clc;::c:;,;:c:;;:::cccccc:;,,,;;
,,,,,,''',,,,,,'''..''';;;,,;;::::;;;,,,,,,,,,,,;;,,'',;;,,,;;,,;;;;;;,;;,''',,'',,,;;,,,,'',,''..,::::::;;cc;;;:cc;;;,,;'',,'',,;,'',;;;;:ll:,:lc:c:;clc;;;,.,:c:;;:cc::::::;:lllll:;:;;:::c::llclc;,,;
,,,,,,,,,,;;;;,'''.....,;;;,,;;::;;;;;,',,,'','..',,,'',,,',,,,,,;;;,,,;;;,''''''.',,,'..'''.''........',,;::,,;cl::cc:,,;;;,'',,;,.';;;:;;:c:;,;;;::,,;:;:cc;;,;::c;:c:;;;;::::coc::;;;:::::;;::;cccc:;
''',,'',,,;;;;,,',,....,,,,'',,;;,,;;,,'',,';'.....'',,,,,'''','',,,',,,'''.'',;;;;::;;,'',,,;;,'''............',;;cc;;:;;;;;;,'','';:::::,,,;,,,,,,;;;,::coccc;;;::;;;;ccc;;::;:c:coc;;:::llllc;;:::ccc
''''',,,,,,,'''',,,'...'''',,,,;,,;;;;,,'',;,.....''',;,,,'',,,',''''''..'',;:cc::::;;,;;,;;;;,,,,,'''......... ...',,,;:;;;,,,,,,,,::;;:c;,;;,',,',,;;,::;:;;;cdoc:;;;;:cccc:;;,,;:clc:;::cc:cl:;::;::c
.''...',,,,;,''''',''''.'''.',;;,,,,;;;;'',;,'........',,,,,;;,''''....',,;;,;;::c:;;,,,;:loolcccc;;:;;,,,''.........,,;;;:llll:;,;;;;;;;::;;:;,;,',;,,;;,'''';lol:c:;;;;ccclc;;;;;;;:cc:clc:::;:cccc:;:
,,,'...',,,;,,,''''''''''''....',,,,,;;:;'',,'.........',,,,;,;,'.......''','',;;,''',;:cloxkxxdddocc:;;;;;,'..........',,;colll:,;:c:;,:::;;;,,;;:cc,;:;;;,,,,:ccclc;:::cc:ccc:;coccc;:cllc::cc;;:cc::;
;,,,'...,,;;,,,,,,'.'',,,,,,'.....'.',,;;,,,''''......',,,,;,'.....'......'.....'';:loxkO0kkO00OOkxdoollcc:;;,'...........';::::;,,clc:;coc;;;,;:;;;:clool:,,,,;:clll::::cc::::ccoolcclccccc:c:::;:c:;:c
,;,,,.....,;,',,,,''',,,;,;;,''..'''',''''''''''''....',;,,,'................',:coxk0KKXNXXKKKK0000OOOOkkxdolc:,'..     ...'',,,;,,ll:::col;;::cc::;;:coddc,',;;,,,;:cc::coc:c:;cc:cccllc:::c:c::cloc;::
,,,,,,,''.','''','',,;;,,;,,,,,'',,,,,,'''''''''.'''''',,,,''.............';ldkO0KXNNNNNNNNXXKKKKKKKKKKKK00Okxdoc:,..     ...''',,,:;'';::ccccccccdoc::::cc;',;,,'''',;;;cll:;',;;::::::cc;::;:c:codl::;
,,,,,,;;;,,','''',,,,,,,;;,,,,,,,''',;,,;;,,,,'',,;;,,,,''........... ..:oxOKNNNWWWWWNNNNNNXXKKKKKKKKKKKKKK00OOkxdlc;..     ..'',,,,:;',::oocllllodollc;;;:;,;;,,,,,,,,;;:cc:,'''',::::;;c::::cllccc:;::
,,;,,,,,,,;;,'''''',,,,,,;,,,,;;,'.'',,,;;,,;,'.',;;::;,'............'cx0KXXXNNWWWNNNNXXXXXKKKK00KKKKKKKK000000OOkxooc;.     ...'',;:;,,;,:cccllllllcclc::::;;,',:::::;,,;;;;,,,,,;;:;;:c::::;clccodc:;;
;;;;,,,,,;;;;,'',,,,',,,,,,,,,;;,'''..',,;,,;;'....',,,'...........,lkKKXXXXXNNNXXXXXXKKKKKKK0000000KK0000000OOOkkxxdol;..     ...';c:::;;,,,;::;:c::;:cllc:,;;;cl;,,::;:c::;;:::::;;;;cooccc:cc;;lolclc
,;;;,,,,,;;;;,'.''''''',;,,,,;;;'...',,,;;;;;;'.''',;,'...........;x0KXXXXXKKKKKKKKKKKKKKKKKK0000KK0000OOOOOOkkxxxxxxdoc,...   ..','',:cc::;;;;,;;;;;;;colc;,';;clc:,,:;:lol:c::llc;;;::loooolc:;;;:c:lc
,,'''''',,,,''''''''''..''',;::;'...',,,;,,,;:,''',;;'... .......;d0KKKKKKKK00KKKKKKKKKKKKKKKKK0KKK00OOOOOOkkkxxxxxxxdlc,.........,,'':loll:,,;:::c:;;:;::::::c;;cll:;::;;cc:loc:clc;cc:::cldl::c;;c::::
,;,,,'''',,,,''',,'''''''...''''...'''''',',;;,''.',,....    ...,ok00KKKKKKKKKKKKKXXXXXXXXXKKKKKKKK000000OOkkkxxxxddool:,'.........''',,,;;;,',:;;c:;;:;;;;;clc;:lc::cllc::;;:;;;:cl::::ccccccccc::c:clc
'',,,;;;;;,;;,,''''.',,,,'''''''........'''''''''..'.. .. ......;oxO000KKKKKXXXXNNNNNNNXXXXXXXKKXXK00KKKK00OOOkxxdooooc:;'...........',,,;;,,,,,,;:;::;,,;::;;;;;;::;;;:cll:cc:c:,,;;;;,:::olcc:;;c;,:cc
''','',,,,,,,,,,',,'',;;;,',;:::::;,'..''....''',''...... ... ..,coxOO00KKKKXXXNNNNNNNXXXXXXXXXKXXK000K00OOkkkkxddddollc:,...........'',;::ccc;,,,;;,,,,;:ll:;:c;;:c;;;,,:::ooloollc;;:;;;:ol:;:::;;,;;:
,,,,',,,',,,,,,,,,,,,,,,,,';cccc:::;,,'''',,,;,,,,,'..        ..':oxkO00KKKXXXXKKKKKKKKXXKKKKKKKKK00000Okxxdxxxxxxxdollcc;'..    ......';::ccl:,,,,:;',;cll:;:ddc:cllllll:;;::;:cloolccc::::;,,:cc::::;;
,,,,,'',,,,,',,,,''',,,''',:cc::;;,,,',;,,,,,,,,,,,,...        .':okO000KKKKKKKK000000000OOO00OO0Okkkkkxxdddxxxxkkkkxollcc;..    ....''';::cll:;;;;:;;;;:;,,;;loolllccodolc;;,,:ccldooooc:cc:;;::::::::c
,,',,'',,,,,,,,,,,,,,',;,,;::::::;;::,,::;;;,,,,,,,'.          .,cxOO000K000OOOOOOOOkkkxxxddkOddkdooooodooolooooodddoolccc:,.     ...'',:cccll:;:::c:,;::;;::;:clllol:cooc::::c:::ccc:cc:clccoollc;::;;;
,,,,',,,,,,,,,,,,,,,'.,;;;::::;;;;;;;;;;:;;;;;,,,,,..          .,okOO00Okxddollcccc:::::clllxxlcllc:;;,,,,,,,;;;;::;:::cccc,.      ....',;:ccl:;:::lo:,;::;::;;;:;:loc:odlcoclooc:c:;;:::::ccllloolccc::
,,,,,,,,;;,,,,''',,,'.';,;::::;;;;;;;;;;,,;:;;;;,,'..      .....:dkOOkxoc::cc:;,,'....'',;:cdxl:::;,,,'...'',;;:::::;;::cc:,.      ....',,:ccl:;::coxc,;;;;:cc::ll:;:::ccccoolool:coooc:::::::::clllllll
,,,,,',,,,,,,,,,,,,,,'',,;:;;;;;;;;;;;;,'',::;;,,'...         ..:xkkkdl:;cllcc:;;,,,',,,,,;cxkdl::;,,,,,'''',,;;::ccc::ccc:'.       ...;c;;:ccc:c:cll:,;:;;:clooll:;cldolcllc:ccccclool:c:ll::ccc:::codl
,,,,,,,;;,,,,,,,,,,,,;;;;;;;,,,,,,,,,,,;;,',:;;;,,...     ......:xkkxlclol:;,'........'''':x0KOxl:;,'''...........',;::ccc:'.       ...',',:::cc:clll:,;:cclllxkdc:;:oxo:clc:;,;::::cllccccc;:llcccc:cc:
',,,,,,,,,;;,,,,,',,,,,;;,,;;;,,,,,,;;:;;,'',,;;,.......  .....'cxkkdool;'''''...'''..',,;oKNNXOd:;,,,'...'''',,,''.',;:cc:'        ....'',,;:::;::;;;;;,;::clddoc,,:ldlcc;;:::clllc:cc::::::;::clcc:ll:
,;;;;;;;:;;:;,,'',,;;,,;;,,,;,,,,'',,;;,,,',',,,'.......  .'..',ckOkxdlc:::::;;,,,,,,,,,:d0XNNX0dc:;,,,,,,,;;;;;;;;;;;::cc:'  ..   .....',;;;;:cc:;;clol:::;::cc:;,,;clc::;:::cllcclll:;;llll:::::ldllol
;;;;;;;;;;;;,,'..'',,,,,;;;;;,',',,,,,,,,,,,,,,,'..... ....,',;;lkOOkkxxkxxolcc:::::::clx0XNNNKOdlc::::;;;;:::::::::::cccc:,.       ....';::;;cllcllcc:;;loccodoc;,:clol::;;;;;;::;:cc:;;lxkxolcccclc:lc
::;;;;;;,,,'''...''',,,,,,,,,,,,,,;;,,'',,,,,,,,''...... ..,,;,,lkOOOOOOOOOOkxxddoddddkOKXXNNXKOxolcccccccc::ccccccccccccc:,.      ....''',,,,;;;;:clc:;:::::dxoc;;:c:cll:,,:cc:::;:lo:;::loddlcc::c::ol
:;;;;,;;,','.'...'',,,,,,,,,,,,,,,,,,,,'',,'',,,''...........'',cxOO0000000OOkOOkkkkO0KKKXXNNNXK0koccccccccccccccclllllllc:'.     ....'';:;,',;;:;;:;;;;cc:;:ldoc:;;;;;::;,;;clc:::;coc:clc:lllcc:::::cc
::::;;;;;,''..''',,,''''''',,''',,,,,,,,''''''',,'..............,lxkO00000OOOOOOOOO0KKKKKKKXNNXK0Oxolccccccccllllllllllllc;.     .....',:llc:;;;;:;,,;;:lcc:::lllclcccc::;::;cdl;,;,;:::clc:cllccc:::c::
:::;::;;;;,,'.''''..'''''''''.'',,,,;;,,''''.'','...... .........;oxkkOOkkkkOO000KKKKK0KKKKXXXK00Oxddolcloollllllllllllllc'...   ....';;:lloc;;::;:::::cc::::;:;:cccclccc:;;,;clc:,';:;:c::clll:;:cccol:
;;,,;;;;;;::;,,'...........''....',;;;,,,,'..',''...........'....':dxxxxxkkkO00KKKKK0O0KKKKKK0OOkxolllllloddollllllllllll:....  ....'',;:cc:;,;:ccclc::;::;;;:::::lc:::::;::;;:lc::::::::;:cclc:::lllooc
::::;;;;,,;;:;''..................'',;,,,,'''''...'..........''''.;oxddxxxkO000KK00OOkxolodkkdoolc,..';:ccoddolllllllllll:... .....',''';::;,',:c::cc:;;lol:;;;;:clc:;ccccccclooc:cl:;:;;:cloolc::clllll
;::::;;;;;;::,'.....................',,,,'',''...'........'..,;:;',cdddddxkO000000OOOOxl,.';::;;:,...',;:clodolllllllllll;... .....',',,',;,,,,::;;:::::xdccc:;;::::::lddlclddool:co:,;::;:lodolc;;::c:c
:;::;::;:;;;;''''''..................',''',,,,,..'..'........'cc;;,;odddxxO000000OOO0KK0o,,'',,;;,;;;;;::cclooolllllllllc;........',;;;,,,,;,,,;;;;;;:::dd;:cc;:ccccc:;cloldkdlooccol;,;:lolllloxolccc::
''',,,,,,,,,''',,'''..............''''''''',,,,,'''''......'..,:,:;':oddxkOO00000OO0KKXXOl:,,,,;,,;;;;:::ccclollllllllllc,.......',;:c;:clol:::;;;cc:c:clc;,;::clllolc;:odooxdcoolodo:;;;oxodxdlddodlc;:
'''',',,,,,,,,,',,'''',,,,,'''....',,,,'''',,,,;;,'''......'...,,''.'lodxkOOOOO0OOO0KKKKKOxl:;,,,,;;,;;:::::cclllllllllc:'......'',;:;,;clol:;,:ccc:;cccc;;;::::llooolccddlcddclccllc::::coxxkxolodxl;,;
',,,,''','',,,,';:;,'',;:::;;;;,,,,,,;;,,,'',,,,,''''........  ......;lodxkOOOOOkkkOO0000OOko:;,;;::;;;:::::::cllllllllc;. .....',,;;;,;cccl:;,,,;:::lc:c;',,;:clooool:ldlcldoccc::cc:::::okxddlclol:;',
,,'''''',,,'..'';l:,',,,;:c::::c::::;;:;',''',,''''''.........      .,codxkkkxkxdoodxkOOOOkxdolc:::ccccccc:;;:cclllllllc'......'';;;;;;;:coo;'',,,,,,,;,;;,',;ccc::loocllc:cc:::ccccclccc:odlllcccc::cc:
''''.''.''''...',;,'',',::::::::;;;:::;,''''..''''..''...........    .;codxxxdddlc;,;ccc:;;;;:c:;,,,,,;;;;,,;:ccccclllc,.....',,,,;,,,,,;;cl;,',,,;,',;,,,,,,:ccc:;:ccool:,::;,;l:;lloccl::c:cllccoocclc
'','.......'''''''''''',,;;;;,,;;::ccc:,,,,,''''',''''.............  ..;coddooddl:;;cllcc:::;;,,,,,,,,;;::cccccccccccc;.....'',,,,,,,,,,,,;;::::;;;;;;,,,;;:ccllc::cooodl;,;;;,;c:,:ll::l:;:colclloxxoll
,,'.........'....',,'......''',;;;;;;;,,,',;,,,',;;,,''.....'..........',:lllclooodxO00OOOkkxolc:::::cccccccccccc::c:,''''''''',;;:;,;::;,;;:::;;::cl:,,,:c:;;cdl:;;:ccc:;,;:cccc;;;clcc:,,,:olccccokold
,'..............''','..........',,'''''''.''''''',,;,''......''''......,,,;:cccclodxkkkxdolcc::::::::ccccccccccccc::,,,,;;,;;;'',;;;;;::;;;;;;,,,::locc:;,:;',;;;;:::cc:;;:cc:;::::;:cccc:;;:c:cc::clcco
,,.............',',,...........',,,,'''......''..'',,'''......''''.....;l:,,;::clooddxddl:;,,',,,;;:::ccccccccccc:;,;;;;;;;;;;,',,,;:;;:::;;::;,,,;ccc::;,,;,'',:cc:clcc:ldddoc;:ol:;:cllc::::::ccc:c::c
,,'............',,,,...........',,;,,,''...''''..''',','..........'..  :kd:;,,;codxxxxdolllc::;;:::ccccccccccccc:;;;;;;;,;;;;;,'',',;;;;::;;,;;;;:::ll;;::;,'..,cllc:::ccclcllccoooc;:lllc:cccccloolll:;
''............',,',,'............',,,,'....''''''''',,,''',,'.......   :kkoc:;,;:dkOOOOOOOOOkdllccccccccccccccc:;;;;;;;;;;;;;:;',,;,,,,,;:;;::;:ll:,;;;;:lc:;..';clc:::::::c:cclllc:;cdxoc:cclooooocc;;;
''.''...''''''''''',,,,'''.......';,,'''''''''''''',;;,,',;;,'........ :OOxoc:;;;:okOOO000OOkxdoccccccccccc::cc:..,;;,,;;;;:;:;,'',,,,,,,;;;:c:;lol:,,;:ll:c:,'.,:ccc:;;::ldolcccc::;:odoccc:clolllclcc:
',',,'.',,,,,'',,,,,,,,,,'''.'...',,'''',,,,''''',,;;;,,,,,''..........c00kdlcc:;;;:lodxxxdollcc::::::::::::ccc;. .,;,,;;;;;,,,,'''',,,,,,,;;;;,;::;;;;cc:;;:;;,;:;;::::::clolccccc::ccllclc:ccc:cc:cool
,,,,''',,,,,,''',,,,',,,,,,,',,,,,,,,,,,,;;;;,,,;;;;;;;;,'',,'.'.......oKKOxdolc::;,,,,,,,;;,,,,,,,;;;;;::ccccc;.  .;;;;;;:;,,''',,,'''',,,,,,;,,;;;;;;::::c:cc:::;;:cccldoolllllll::loddddllllllcclodoo
,,,,'''''','''''''''''''',,,,,,,,,,,,,,,,,,,,;,,;;;:;;:;'',,..'....''.,xKK0Okdollc:;;;,,''''''',,,,;;;::cccccc:,    .,,;;;;;;,,,,,,,,''',,,,',;,,,;:::clc:cllol:cc:coddodkkdldkkdol;;ldxxddoooooocldxddo
,;,'',',,'''''',,''''''''',,',,''''''''''.',,,'.',;;:c:,''''......,''''oKK0Okkdoddoc::;;;,,,,,,;;;:::::ccccccc:'     .,;:;;;;,,;,,,,,,'',,,,'',;::;::::cllolloc;cdodkOOxdxxoldxoolc::lddlllllooolldxdooo
;,,',,','''''''''''''''''''',;;,,,''','''.',,''.',,,;::,'.......',''''',d0K0OOkkxxxol:::;;;;;;;;:::ccccccccccc:.     .',;;;;;,,,',;,''',;,,,,',;;::;,;::codolc;,;dodkxxdoxoccloollcc:clolllloooooodxlllo
,,',,'',,',,,,''','',''''''',;;;;,,'',,,,'',,''',,;;;::,.......',''''''''ck00OOOkkkkxocc:::::;::::cccccccccccc;.      ....',,,;;,;;;'''',,,,''',;;;;,';;:ccc:cc;,:ccolllloolccloolllc:loollloooooldolcll
''.','''',,,,,,',,,,,,,,,,,'';;;,,,,'',;;,,,;,',;;;;,;,.......',,''''''''',okOOOkOOOkkdlcc::::::::ccccccccccc:,.            ....'',,,'''',,'''',;;,;;,;;;:::;:c:;;:::::cccccllloollloddddoooodddodddoodd
,'.','''''',,'',,,,,,,;;,,,''',,,,,,,'',;,,;,.',,,;,''... ...','''''''''''.';okOOOOOOOkxoccccccccccccccccccc:;'..                  .......'',,,;;;,;;;:::::::::ccclcccllooodxkxxxxxdxkxxxxxxkkxxxxxxxdxx
,'',,''''''''',,,,,,',,,;,,'''',;;,;,,',,,;;,'','','...... ..,,,''''''''''...';oxOOOkkkkxolcccccccccccccc:::;,...                         ......',;:;;:c::::ldxxxxxxkkkkkkkkkkkkkkkxxxxxxddxxddddoddddxx
''',,,''''',,,,,,,,,',,,,,,,''',;;;;,,,,,;;;;''',,'.........,,,,,''''''''.''...';cdkkkkkkxdllcccccccccccc:::;,....                               ....';:::::cdxddddxxxxxxxxxkkkkOkkkkkkkkxxxxxxxkkkOOOOO
,'',;,'''',,,,,,;,,,,,,,,,,,,,;;,,;,,,,;;;,;;,,,'........'',,,,,,'''''...''..''...';coxxxxxdollccccccc:::::::,'...                                    ..',,,:odoooooooooddxkkOOOOOOOOOOOOOOOkkkkkOOOOO00
''''',,',,,,,'',,,,,,,,,,,'',,,;,,,,,;;;;;;;;;,'.......''',,;,,,,,,,'''..............';codxkxollccccc::::::::;,''..                                      ...',;,,,,,''',;:lodxkkkOkxxxkkkkkkkxxxxkOOOOOO
.,,,,''',,'''.''''',,',,;,''',,,,,,,;;;;;;;:;,'......',,;,,,;;,,''''''''''.............',;:coxxoccc::::::::ccc::;,..                                        ..............',:codxkkkkkkkOOOOOOkkkOOOOOOO
'''.',,,,'''''...',,,,,,''''',,'';;;;;;;;,;;,,''''',,,,;;;;;::,'''''''''''''............'''.',:llc::c:::cccccccc::,.                                         ...............',;clloooooooooddxxkkOOOOOOO
,'....',',,,'....',;;;;,',,,',,'',,,'........''''',,,,,;;;;;:;;,''''''''''''''...........''''..',:::::ccccccccc::;,.                                            .'........'''''.............',:cldxxkkkk
'........'',,...',;;;;:;;;;;;,''''''...'''''''''''''..''''',,;;;,'''''''''''''''...'.''....',''...''',;:cccccccc:;,.                                            ...............................',:codxxx
'''...''''.',''',;;;;;;;;;,,,''''''..................'''.....'''''''''''''''''''''''''''...'...'''...'',;;:ccccc:;;.                                              ..............................',;clodx
.'..........'''',;;;;;,,,'',,'''''''......................''.....',''''''''''''''''''''..'..   ...'''',''',,;:ccc:;'.                                             .''''''''''''''''',,,',,,,,,,,,,,,;;;:
.....'.'.....'',;;;;,''''''..........''''''''''''.................,''''''''''''''''''''''.         ...........';cc:;'..                                            .,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;,,,,,
.'.....''....'',;;,'''....................''''''...............''.',''''''''''''''',,,'.                        .,:::;,'                                           .',,,,,,,,,,,,,,,,,,,,,,,,,,;;,,,'''.
,,'''........',,','....''''''''''''''''.....'''''.................',,''''''',,,,'''...                            .,:::;.                                           .,,,,,,,,,,,,,,,,,,,,,,,,,'''.......
'''........'',,........''''','''''''....'''''''''''''..............',,,'',''....                                    .;::'                                           .,,,,,,,,,,,,,;,,,,,,''.............
........'',,,,''','.........'''''''''.......'''''''''.''''''........,;;,..                .  ..........        ....  .,:,.                                           .,,,,,,;,,,,,'''',,'...............
..'''''',,,,,,,,'''.......'....'''.'''................'''''''''''''.',.          ..'.........''...........       ...  .,,.                                           .;;,,''''..'''''',,''..............
....'','',,,''''''''.....'''.....'''''..................'''''''''''''..      ...',,'''.''..''.''...''........  .........,.       ...                                  .''''......''''''..........'''....
'''.','..','...''''.......'''.....'''''.....................'''''''''''....',,'''......'...''.........'.................',,,,''......                 ....            .''''.............''''''...'''....
''''.',.,,'.....''''.......'''.....''''..........................''''''''''..............'',,'...........................;ccclccc:;,'..              .''....          ..'''............','''............
''''..',,,''....'''''...............''............................................ .......''''''..........................,cccccccccc:'.             ..''.......       .........'''''',;,,'.............
'''''.',''''''.....'''....................................................................................................':cccccccccc,.              ...........       .'.....'.''.'',;,''''..........'
''..',,,,''''''''....''..............'....................................   .............................................';cccclcc::c,..''..         ............. .   .''''''..'..,,'.',''''.........'
'''',,,,,'''''''''.......................................................    ......................................'.......,cccccc:::c;,'''''..........................  .,'''......'''............''.'.
''',,,,,''''''''.........................................................    ...................'..........................'cclccc:::::,'''''''............''...'''''..  ..''..............'...........'
'',,,,,,'''''............................ ..............................   ....................'''''.......................':ccccc:::::,............'.'''''........'....  ................';'...........
',,,,,,'''''.............................  ....................................................'''''''''..''...............';:cccc:::::;''...............''.''....''''...  .'..............'''..........
,,,,''''................ ................  ............................................'''''''''............................,;:::::;:::;'............''''''''''......'.''. ..'.....''.....'''....'......
,''........................ .............. ..................................'''''''''''''''''''''''.....'''................,;;;::::;:::'.............',,''''''.........'....'..''..'...',''.....'''....
..........................................  .........................''''''''''''''''''''''''',,,,'''''....................',;;;;:::::::,............'..'''.....................''....'''....'...'..,,'.
........''''............................'..  .....................'''''''''''''''''''''''''''''''...........................';,;;;::;::c,................''..............'.......'........''....''.','..
'.......'''.............................''..  ...................'''''''''''''''''''...'.....''''...........................',,,,;;;::::;.................''............''.. ..........''''............'
.'''...........'.........................''..  .................''''''''''''...........'..................................  .,',,,;;;;::;. ............................''.'. ...........''.............'
.'''''....................................'..   ...............''''''''''...........................''''............. .'.....,'',,;;:::::. . ...............     ...',,,,'.   .....................',:::
'''.......................................'...   ..............''.''''.............................''''''........... ..'.....'.',,,;:::::'.    ...............      .....     ...'',''.....''''...',:ooc
''............................................    ................................................'''..''........... .'........'',,;:::::;.      ..............               .....,;'.,'''''''.'',;:llo
'....''''......................................    .............................................................'... .'.. ......',,;:::::;.        ...............      .      .....,;;:;;;,,,,,,;::cdxk
...''''''.'''............................ .....     ........'...................................................... ..'.. ......'',;::::::.            ..................      ....,::cllllcclool:cdddxx
.''''''.................................. ......      ...................................................... ...... .....  ......',;;:::::'          . .. ................      ...,;:;cdooccodxkxdxkkxx
'''''''..........................     ....  ....       ......'''.'''......................................'. .....  .'...  .'..'.'',;:::::;.        ...   ................      ..,::;;;cddoolddoldxkOkk
'''''''''''''''...........................   ...        ... .'''''''''......................................  ....  .....  .'.....',;;::::;.      ....      ..............      ..,;:cclddodxdxkkxddxkkk
''''''''''.''''''........................     ..         .....'......................''...................    .... ......  .......',,;:::::.     ..... ...    .............      .::collodddoodxkxddxkkk
'''''''..''''''''...............               ..         .. .......................'';'...............       ...  .....    .'.....'',;;:::'    ..........      ...........      .,codddlcoxoloddddddxxx
''''................................           .           ........................................      ........ ......    .'.....',;;:::c,    ...  .....       .   .......      'loccolcoo:lOkkxdddlco
'''''.................................                       ................................'..       .........  .....     .'..'''',;;::::;.       ........          ......     .'lllooloddddkOkkdloddx
''''''...................................                    ................................    ...............  .....     ..'.'''',;;::::;.   ..  ........      ...... ....  .,:llloodkkddxxxxxxkkxkkO
.'''''...............................                         .............................   .................  .....   .  ..'.''''',::::::.   ....  ............'::,... .   .lkdccdxddOkkkkxdxxxOKK0KK
..............................                                                   .....       .................. .....   ..  .......'',,;:::c'   ......  ..........,:c'..'.  ..,lxdldOkdoxkdlldxkkkkOkkkx
...................................                                                        ..................   .....   ..  .''....'',;;:::c;.  .......  .... ...';:;...''....:oodxxxxkxdddlldkkkkdddxxd
.......''...........................                            ...                     ...................... ..'..   ..   ..''....',;;::::;.   ......   .......,:;'.. .,....;ddxkkxxxkOkxxxkOOxdxkxxxx
'.'''''..........................                                ....                 ............ ........... .....  ...  ...'...''',;;::cc:.   .......... ....';::'...''.  .;oxxdxkxkkddkkkOOOOkkkkkxx
''''''..........'...............                                  ....               ...........   ........... .'..   ... ....'''''''';::::cc.    ...........  .,;;,....,.   .;lodxkkkxxdxO0OOOOOOxoddoo
