?????????????????????77777777777777777777777777777777777777777+==+================+==+8Z777777777777IIIIII???????????????777O88OO88888888888?????????????????????????????????????$ZZZZZZ????????????????
????????????77777777777777777777777777777$$$ZZOOOO8OOOO88888888++=+===================OOZZ$$77777777777777777777777777777$88OO88888O88OO88??????????????????????????????????????OZZZZZZZZ???????????????
?????IIIIIII777777777777777$OO88888OO88OO88O8O88OOOO8OOOOOOOO888=+===================++888O888O8OOO88O8888888OOOOOOOOO888888888888888O8O??????????IIIIIIIIIII$OZZZOZ????IIIIII$OZZZZZZZZZOIIII77777777$O
?????I777777777777777ZO888888OOO88888888888OOOOO8888888888888888O======================I8O88OOOOOOO8888888O888O8888888888888888888O8ZI??????????????????????ZZZZZZZZZ$??????ZOZOZZZZZZZZZZZZ?????????OZO
??????7777777777$ZOOOO888888888888888888OOO88888888888OOOOZZOOOOZZ==========+===========8DD8OO??IIIII777$$$$ZZZOOOO88O888888OO$$?????????????????????????????OZZZZZZZZI??IOZZZZZZZZZZZZZZZZZOO7???IZZZZZ
?????I777777$ZO88O88OO88888888OZ7I????????????????????????????????+=====================IOD8OO$???????????????????????????????????????????????????????????????7OZZZZZZZOOZZZZZZZZZZZZZZZZZZZZOZZZZZZZZZZ
777777777Z8OOOO8888888OZI???????????????????????????????????????++++++=============================++?I7$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ZOZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZOZZZZZ
777777O888OOO8O88OZZ$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$77?+============~~~:::::::::::::::::::::::~~===========+?I7$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ZZZZZZZZZOOOOOOOOOOOOOOOOOOOOZZZZZZZZZZ
77$O8888O8OOOOZ$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$77I+=========~:::::::::::::::::::::::::::::::::::::::::::::::~========+?7$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ZOO8888888888888888888888888888888OOZZ
$O88OO88O8OO$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$7?+======~~::::::::::::::::::::::::::::::::::::::::::::::::::::::::::~~======+I$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$888888888888888888888888888888888888O
8OOO88OOZ$$$$$$$$$$7IIIIIZ$$$$$$$$$$$$$7+=====~:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::=========?7$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$8888888888DDDDDDDDDDDDDDDDD88888888Z$
O88O8O$$$$$$$$$$$$7777777$ZZ$$$$$$$$I+====::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::~==::~=====?$$$$$$$$$$$$$$$$$$$$$$$$Z8DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD8888888$$
88O$$$$$$$$$$$$$$777777778ZZ$$$$$7====::::~~==~~==~~::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::~==::::~====+I$$$$$$$$$$$$$$$$$$DDDD88ZZZ$$88888DDDDDDNNDDDDDDDNNDDDDDD8888888$$
Z$$$$$$$$$$$$$$$$I77777788OZO$$?===========================~::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::==:::::::~====I$$$$$$$$$$$$$$$D8$$$$Z8$$OO8888DDDD????+?DDD$??+++++?$8888888$$
$$$$$$$$$$$$$$$$$$77777888OZO+========~:::::::::::::::::~=======~:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::==::::::::~====I$$$$$$$$$$$$8D$$$$$$8Z$O8888DDDD??????DDD$??????+?78888888$$
$$$$$$$$$$$$$$$$$$ZO888888$+=====~::::::::::::::::::::::::::::======:::::::::::::::::::::::::::::::::::::::::::::::::::::::::=~::::::::::~====7$$$$$$$$$ZD$$$$OZ$ZZZ88888DDD??????DDDZ????????7888888Z$$
$$$$$$$$$$$$$$$$$Z$$$$O8O?====~:::::::::::::::::::::::::::::::::::====~:::::::::::::::::::::::::::::::::::::::::::::::::::::::=:::::::::::::~===?$$$$$$$$D8$ZO$$$$Z888888DDD??????DDDZ????????7888888Z$$
$$$$$$$$$$$$$$$ZZ$$$$$$7====::::::::::::::::::::::::::::::::::::::::~====:::::::::::::::::::::::::::::::::::::::::::::::::::::==:::::::::::::::===+7$$$$$88OZ$$$$$$$88888DDD?????+NDDZ????????7888888Z$$
$$$$$$$$$$$$$$ZZ$$$$$$?===~:::::::::::::::::::::::::::::::::::::::::::~===~:::::::::::::::::::::::::::::::::::::::::::::::::::~=:::::::::::::::::===+7$$$OD$OO$$$$Z888888DDDI?????DDDZ????????7888888$$$
$$$$$$$$$$$$$Z$$$$$$$?==~:::::::::::::::::::::::::::::::::::::::::::::::~===:::::::::::::::::::::::::::::::::::::::::::::::::::=:::::::::::::::::::===+7$$DZ$$O?====+O888DDDZ+????DDDZ????????7888888$$$
$$$$$$$$$$$ZZ$$$$$$$===:::::::::::::::::::::::::::::::::::::::::::::::::::~===:::::::::::::::::::::::::::::::::::::::::::::::::=~::::::::::::::::::~~~===7DO$?=========88DDD8+????DDDO????????788888O$$$
$$$$$$$$$$Z$$$$$$$I===::::::::::::::::::::::::::::::::::::::::::::::::::::::===~:::::::::::::::::::::::::::::::::::::::::::::::=~::::::::::::::::::~~::~===O====~::~====ODDDD?????DDDO????????788888O$$$
$$$$$$$$ZZ$$$$$$$I==~:::::::::::::::::::::::::::::::::::::::::::::::::::::::::===::::::::::::::::::::::::::::::::::::::::::::::=~::::::::::::::::::~~::::~=====::::::~===?DDD?????DDDO????????788888O$$$
$$$$$$ZZ$$$$$$$$?==~:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::===::::::::::::::::::::::::::::::::::::::::::::~=:::::::::::::::::::~~::::~====::::::::~===$DD?????DDD8????????788888Z$$$
$$$$ZZ$$$$$$$$$I==::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::===:::::::::::::::::::::::::::::::::::::::::::==:::::::::::::::::::=~:::~===~:::::::::::===ID?????DDD8????????788888$$$$
$$$ZZ$$$$$$$$$?==~:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::~==::::::::::::::::::::::::::::::::::::::::::=~:::::::::::::::::::=~:::====::::::::::::====DI????DDDD????????788888$$$$
$ZZ$$$$$$$$$$$==::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::~==~:::::::::::::::::::::::::::::::::::::::~=:::::::::::::::::::~=:::====::::::::::::::===+$????DDDD????+???788888$$$$
ZZZOOOOOOOOOZ===:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::~==:::::::::::::::::::::::::::::::::::::::=::::::::::::::::::::==::====::::::::::::::::===IO$7IDDDD7$OO8DDND88888$$$$
ZZOOOOOOOOOO?==:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::==~:::::::::::::::::::::::::::::::::::::==::::::::::::::::::::==::====::::::::::::::::===+DDDDDDDDDDDDDDDDD8888O$$$$
OOOOOOOOOOOZ==:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::===::::::::::::::::::::::::::::::::::::=:::::::::::::::::::::=::~===:::::::::::::::::~===DDDDDDDDDDDDDDDDD8888$$$$$
OOOOOOOOOOZ+==::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::==:::::::::::::::::::::::::::::::::::=:::::::::::::::::::::=~::===~::::::::::::::::::===?DDDDDDDDDDDDDDD8888O$$$$$
OOOOOOOOOO?==:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::===:::::::::::::::::::::::::::::::::==::::::::::::::::::::==::~===::::::::::::::~:::::===O888888888888888888$$$$$$
OOOOOOOOOO==:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::===:::::::::::::::::::::::::::::::=~:::::::::::::::::::::=~::===~::::::::::::::=:::::===?88888888888888888Z$$$$$$
OOOOOOOOOI==::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::==::::::::::::::::::::::::::::::==:::::::::::::::::::::=~:::===:::::::::::::::=~::::====8888888888888888$$$$$$$$
OOOOOOOOZ==~::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::===::::::::::::::::::::::::::::=~:::::::::::::::::::::==:::~==::::::::::::::::==::::~===888888888888888$$$$$$$$$
OOOOOOOO?==::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::===::::::::::::::::::::::::::=~:::::::::::::::::::::=~::::===::::::::::::::::==:::::===Z888888888888Z$$$7IIIZ8O
OOOOOOOO==::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::==::::::::::::::::::::::::~=:::::::~================:::~===~::::::::::::::::==:::::===I888888888O$$$$$IIIIIIZ8
OOOOOOOZ==::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::==::::::::::::::::::::::::=~::::========~:::::~=========:==:::::::::::::::::==:::::~==+OZZZZO8O$$$$$$$IIIIIIIO
ZZOOOOO?==::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::~~============~:::~==:::::::::::::::::::::~=::======,,,:::::::::::,:,,:=====::::::::::::::::::==::::::==+ZOZZZZZ8$$$$$$$IIIIIIII
$$$$$$$==~::::::::::::::::::::::::::::::::::::::::::::::::::::::::::~=======~~~~~~===========~:::::::::::::::::::~=~====,,::::::::::::::::::::,:,,==::::::::::::::::::==::::::===OZZZZZZ8O$$$$$7IIIIIIII
$$$$$$?==:::::::::::::::::::::::::::::::::::::::::::::::::::::::::====~,,,,:::::::::::,,:~=====~::::::::::::::::====~,:,::::::::::::::::::::::::::::::::::::::::::::::==::::::===ZZZZZZZ8O$$$$$IIIIIIIII
$$$$$$==~:::::::::::::::::::::::::::::::::::::::::::::::::::::::====,,::::::,::,:::::::::,,,,~===~::::::::::::====,,::::::::::::::::::::::::::::::::::::::::::::::::::==::::::===OZZZZZZ8O$$$$$IIIIIIIII
$$$$$$==::::::::::::::::::::::::::::::::::::::::::::::::::::::=====77=::::::::::::::::::::::::::===:::::::::===~,,:::::::::::::::::::::::::::::::::::::::::::::::::::~==::::::===OZZZZZZ8$$$$$$IIIIIIIII
$$$$$$==::::::::::::::::::::::::::::::::::::::::::::::::::::~====MMMMOI:::::::::::::::::::::::::,~==::::::===:,:::::::::::::::::::::::,,,,,,,::::::::::::::::::::::::===::::::===ZZZZZZOZ$$$$$7IIIIIIIII
$$$$$7==:::::::::::::::::::::::::::::::::::::::::::::::::::===~+MM?,:::::::::::::::::::::::::::::::==~::===:,:::::::::::::::::::::::$8MMMMMMM$,::::::::::::::::::::::==~::::::===$$ZOOO$$$$$$$IIIIIIIIIO
$$$$$?==::::::::::::::::::::::::::::::::::::::::::::::::::===~+MO,,:::::,,::::::::::::::::::::::::::=====:::::::::::::::::::::::::::::::,:8MMMMM~:::::::::::::::::::===::::::~==+$$$$$$$$$$$$$IIIIIIIII7
$$$$$+==:::::::::::::::::::::::::::::::::::::::::::::::::===~=NN,::::,:::,,,::::::::::::::::::::::::~===,:::::::::::::::::::::::::::::::::::IMMMM8::::::::::::::::::==:::::::===+$$$$$$$$$$$$$IIIIIIIIII
II77$==~::::::::::::::::::::::::::::::::::::::::::::::::===~=?Z,:,:::::::,,,::::::::::::::::::::::::::,::::::::::::::::::::::::::::::::::::::::NMMD:::::::::::::::::==:::::::===I$OOOOO$$$$$$IIIIIIIIIII
IIIII==~:::::::::::::::::::::::::::::::::::::::::::::::~==~=+N,:::,:,,::::,,::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::=MMM:,:::::::::::::==::::::::===$7IO8888$$$$IIIIIIIIIII7
IIIII==~::::::::::::::::::::::::::::::::::::::::::::::~==~==O,::::,,==,,::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::DM$:::::::::::::~=::::::::====+$II$88888$IIIIIIIIIII$$
IIII+==~::::::::::::::::::::::::::::::::::::::::::::::==~===:::::~MMMMMM~:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::,+M+::::::::::::=~::::::::=====?IIIIIIIIIIIIIIIIII7$$$
III?~==~:::::::::::::::::::::::::::::::::::::::::::::======:::,:NMMMMMMMM8::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::$N:::::::::::=::::::::::===+==?IIIIIIIIIIIIIII7$$$$$
IIII+==~::::::::::::::::::::::::::::::::::::::::::::~==~==~,:::NMMMO..,MMM+::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::I::::::::::=::::::::::=======+IIIIIIIIIIIII7$$$7$$$
IIIII==~::::::::::::::::::::::::::::::::::::::::::::==~===::::MMMZ......NMM~:::::::::::::::::::::::::::::::::::::::::::::::::,::7ZOZI::::::::::::::::::::::::::~::::::::::=====:===+IIIIIIIIII$$$$$$7$$$
IIIII==~:::::::::::::::::::::::::::::::::::::::::::~=====~:::DMM.........DMN:::::::::::::::::::::::::::::::::::::::::::::::,8MMMMMMMMMMM::::::::::::::::::::::::::::::::::=====~====IIIIIII$$$$$$$$$7$$$
IIIII===:::::::::::::::::::::::::::::::::::::::::::======::,DMD...........MM:::::::::::::::::::::::::::::::::::::::::::::,MMMMMMMMMMMMMMMM,::::::::::::::::::::::::::::::===~:==~===?IIIIII$$$$$$$$$$$$$
IIIII===::::::::::::::::::::::::::::::::::::::::::======:::,MM......~$887:NM7:::::::::::::::::::::::::::::::::::::::::::IMMMMMN?...=MMMMMMM?::::::::::::::::::::::::::::====::==:===+IIIIII$$$$$$$$$$$$$
IIIII+==::::::::::::::::::::::::::::::::::::::::::======:::NM,....$8888888DMM,:::::::::::::::::::::::::::::::::::::::::NMMMM?,........7MMMMMZ,::::::::::::::::::::::::::===~::==::===?IIIII7$$$$$$$$$$$$
IIIII?==:::::::::::::::::::::::::::::::::::::::::~=====~::OM,...:8....88888NMI::::::::::::::::::::::::::::::::::::::,~MMMM888888........IMMMMM::::::::::::::::::::::::~===::::==::====IIIII7$$$$$$$$$$$$
IIIIII==:::::::::::::::::::::::::::::::::::::::::======:::M$...:$.....I8888DMD::::::::::::::::::::::::::::::::::::::8MMMN88888888$........DMMMO,::::::::::::::::::::::===~::::==::~===IIIII7$$$$$$$$$$$$
IIIIII==::::::::::::::::::::::::::::::::::::::::~======::Z8...+8......+88888MM:::::::::::::::::::::::::::::::::::::OMMM88888888888$........,MMMD::::::::::::::::::::~===::::::~=:::===+IIIII$$$$$$$$$$$$
777$$$==~:::::::::::::::::::::::::::::::::::::::==+===~:+M....O=......$DMMN8MM::::::::::::::::::::::::::::::::::::NMMM.....I8888888O........,MMM~,::::::::::::::::::==~:::::::~=~::~===IIIII$$$$$$$$$$$$
ZZZZZ$+==:::::::::::::::::::::::::::::::::::::::==+===:OMO...7Z.......MMMMMMMM,::::::::::::::::::::::::::::::::::?MM8.......O8888888:.........MMM~::::::::::::::::===~::::::::~=~:::===+IIII$$$$$$$$$$$$
IIIIII+==::::::::::::::::::::::::::::::::::::::~==7MMMMMM...~Z=......~MMMMMMMM::::::::::::::::::::::::::::::::::+MMM........~8888888O.........,MMM:::::::::::::::===::::::::::~=~:::====IIII$$$$$$$$$$$$
IIIIIII==~:::::::::::::::::::::::::::::::::::::~======:N=...$Z:.....,MMMMMMMMM::,,::::::::::::::::::::::::::::::MMM.........:888OOOOO?..........MM=::,:::::::::=====::::::::::~=~:::====IIII$$$$$$$7$$$$
IIIIIII===:::::::::::::::::::::::::::::::::::::==+====IM....ZZ~.....NMMMMMMMMM~:,::::::::::::::::::::::::::::::?MM:.........+OOOOOOOO$..........NM8,:::::::::~======:::::::::::=~::::===?III$$$$$$$7$$$$
II~~~II?==::::::::::::::::::::::::::::::::::::~==?===OM$...,$$$:...D:..DMMMMMM~:::::::::::::::::::::::::::::::~MMN..........OOOOOOOOZZ...........MM?::::::~~::::====:::::::::::=~::::===+III$$$$$$$7$$$$
II=~+III==::::::::::::::::::::::::::::::::::::~==NMMMM8....~$$$$$ZMM..~MMMMMMM~:::::::::::::::::::::::::::::::NMM,.........,OOOOZZZZZZ...........,MM::::::::::::====::::::::::~=~::::====III$$$$$$$7$$$$
~+IIIIII==~:::::::::::::::::::::::::::::::::::~==7++MM.....?$$$$$$MMNMMMMMMMMM:,::::::::::::::::::::::::::::::MM7..........MDZZZZZZZZZ............MMM$,,::,:::::====::::::::::~=~::::====?II7$$$$$$7$$$$
?IIIIIII+==:::::::::::::::::::::::::::::::::::==+$MMI=.....I$$$$$$MMMMMMMMMMMM:::::::::::::::::::::::::::::::$MM..........MMMZZZZZZZZZ,...........?MMMMMN$+~~~::====::::::::::~=:::::====+II7$$$$$$7$$$$
IIIIIIIII==~::::::::::::::::::::::::::::::::::==ZM$===.....?77$$$$MMMMMMMMMMMM,::::::::::::::::::::::::::::::MMM.........MMM=:?ZZZ$$$$.............NM?,:+7$$=,::====::::::::::==:::::=====III$$$$$$7$$$$
IIIIIIIII?==::::::::::::::::::::::::::::::::::==?I====.....+IIIIIIMMMMMMMMMMMM::::::::::::::::::::::::::::::?MMD.......+MM+....=$$$$$$.............:MM::::::::::===~::::::::::==:::::=====III$$$$$$7$$$$
IIIIIIIIII==::::::::::::::::::::::::::::::::::==?IMMMM.....:III?++MMMMMMMMMMMD::::::::::::::::::::::::::::::8MMMN~..+OMMMM.....$$$$$$$..............MMN=,:::::::===~::::::::::==:::::=~===?II$$$$$$7$$$$
IIIIIIIIII==~:::::::::::::::::::::::::::::::::==II+===......=====IMMMMMMMMMMM?::::::::::::::::::::::::::::::NMMMMMMMMMMMMM...:$$$$$$$$..............=MMMMN=,::::===~::::::::::==:::::=:===+II$$$$$$7$$$$
IIIIIIIIII?==:::::::::::::::::::::::::::::::::==I7+===......===+$$ZMMMMMMMMMM:::::::::::::::::::::::::::::::MMMMMMMMMMMMMMMM8$$$$$$$$?...............:MMD8MMMMMMD+=~::::::::::==::::~=:===+II$$$$$$7$$$$
Z$7IIIIIIII===::::::::::::::::::::::::::::::::==IINMMM+.....~=7$$$$NMMMMMMMMZ:::::::::::::::::::::::::::::::NMMMMMMMMMMMMMMM$$$$$$$$$~...............,=MMM,,:::~===:::::::::::==::::~=:~===II7$$$$$7$$$$
7$ZZZZ$7IIII==::::::::::::::::::::::::::::::::==INO===I......7$7?+===========~::::::::::::::::::::::::::::::NMMMMMMMMMMMMMMM$$$777III................:::$MMM+,:====::::::::::~=~::::==:~===II7$$$$$7$$$$
IIIIII7$ZZZZ==~:::::::::::::::::::::::::::::::==7II=+=~....,~=====~~::::::::::::::::::::::::::::::::::::::::8MMMMMMMMMMMMMMDIIIIIIII~...............,:::::=NMMMD+=~::::::::::==:::::==::===?I7$$$$$7$$$$
~~IIIIIIIIIII==:::::::::::::::::::::::::::::::==?I7+=+M7:===~:::::::::::::::::::::::::::::::::::::::::::::::7MMMMMMMMMMMMMM+?IIIIIII................,=??,:::,,?$$$+::::::::::==:::::=~::===+I7$$$$$7$$$$
??IIIIIIIIIII===::::::::::::::::::::::::::::::==?7I?=N=~::::::::::::::::==~::::::::::::::::::::::::::::::::::M8OI?======?II=====+?I~................8$II8M$,::====::::::::::~=~:::::=~::====I7$$$$$7$$$$
IIIIIIIIIIIIII==::::::::::::::::::::::::::::::==+7+=77=~:::,::::::::::==:::::::::::::::::::::::::::::::::::~======================:................,::::::::::====::::::::::==::::::=:::====IIIIIIIII777
IIIIIIIIIIIIII===:::::::::::::::::::::::::::::===7I=7===::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::~=====:.............++++~,,::::====~::::::::::==:::::~=:::====IIIIIIIIIIII
+~IIIIIIIIIIIII==~::::::::::::::::::::::::::::~==III====::::::::::::::::::::::::::~~======~:::::::::::::::::::::::::::::::::::::::~=====,........?DDDDMMMN,:~====:::::::::::==:::::=~:::~===IIIIIIIIIIII
IIIIIIIIIIIIIII7==:::::::::::::::::::::::::::::==?7I====~:::::::::::::::::::::======~~:::::::::::::::::::::::::::===::::::::::::::::::====~,.....::,::::~D8:====~:::::::::::=~:::::=::::~===IIIIIIIIIIII
IIIIIIIIIII=II7$==~::::::::::::::::::::::::::::==+77=====:::::::::::::::::::~~::::::::::::,::::::::::::::::::::::::~==::::::::::::::::::====~,.=M?::::::::O=====:::::::::::~=::::::=:::::===IIIIIIIIIIII
ZZZZZZZZZZZZZZ$$7==::::::::::::::::::::::::::::===I7~====~::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::~=:::::::::::::::::::~===:8M7:::::::=====~:::::::::::=~:::::~=:::::===IIIIIIIIIIII
IIIIIIIIIIIIII7$$I==:::::::::::::::::::::::::::~==II=~====::::::::::::::::=~:::::::::::::::::::::::::::::::::::::,,::::::::::::::::::::::::,::::,=M::::::~=====:::::::::::~=::::::==:::::===?IIIIIIIIIII
=IIII?II??II??7$$$==~:::::::::::::::::::::::::::==I7+=====~:::::::::::::::==::::::::::::::,~::::::::::::::::::::,::::::::::::::::::::::::::::::::,M:::::~=====::::::::::::==::::::=~:::::===~===========
IIIII?I=~~+I??$$$$7==:::::::::::::::::::::::::::==+7II=====:::::::::::::::==~::::::::::::::=::::::::::::::::::::::::::::::::::::::::::::::::::::::+:::::=====~::::::::::::==::::::=::::::===~===========
IIIIIII?~~III?$$$$$I==::::::::::::::::::::::::::~==IIIII====::::::::::::::::::::::::::::::==::,::::::::=======::::::::::::::::::::::::::::::::::::::::======~:::::::::::::=::::::~=::::::===+I??IIIIIIII
?IIIIIIIII????$$$$$7==~::::::::::::::::::::::::::==+IIII+===~:,::::::::::::::::::::::::::~~:::::::::::::::==::==:::::::::::::::::::::::::::::::::::::~======:::::::::::::=~::::::=~::::::~===IIIIII?IIII
??II??I?I???I?$$$$$7===~:::::::::::::::::::::::::===7III7+====:::::::,::::::::::::::::::::,:::::::::::::::==~:::::::::::::::::::::::::::::::::::::::======~::::::::::::::=:::::::=:::::::~===IIIIIIIIIII
??????????????$$$$$7====::::::::::::::::::::::::::==IIIII7====~::::::::::::::::::::::::::::::::::::::::::====::::::::::::::::::::::::::::::::::::::======~::::::::::::::==::::::~=:::::::~===IIIIIIIIIII
?~???????????I$$$$$$=====:::::::::::::::::::::::::==?I7IIII====:::::::==::::::::::::::::::::::::::::::::==~~=~::::::::::::::::::::::::::::::::::::=======:::::::::::::::==::::::==:::::::~===IIIIIIIIIII
?????????????I$$$$$$=====~::::::::::::::::::::::::~==IIIIII7====:::::::===::::::::::::::::::::::::::::===~.,==::::::::::::::::::::::::::::::::::~======~::::::::::::::::=:::::::=~:::::::~===IIIIIIIIIII
?????????????I$$$$$$======:::::::::::::::::::::::::==+IIIIIII====~:::::=====~:::::::::::::::::::::::====....==:::::::::::::::::::::::::::::::::~======~::::::::::::::::=~:::::::=::::::::~===IIIIIIIIIII
?????????????7$$$$$$=======::::::::::::::::::::::::~==$$$$$$$$=====:::::==,,=====~:::::::::::::~=====:......==::::::::::::::::::::::::::::::::=======~::::::::::::::::~=:::::::~=::::::::~===?IIIIIIIIII
?????????????$$$$$$$========::::::::::::::::::::::::==I$$$$$$$$+====::::===...,:~===============~:.........,==::::::::::::::::::::::::::::::~======~::::::::::::::::::==:::::::=::::::::::===?IIII?IIIII
IIIIIIIIIIIII$$$$$$$========~:::::::::::::::::::::::~==$$$$$$$$$I=====:::===..........,,.................,~~==~::::::::::::::::::::::::::::~======::::::::::::::::::::=~::::::~=::::::::::==~=====++++??
$$$$$$$$$$$$$$$$$$$$=========~:::::::::::::::::::::::==7$$$$$$$$$$======::===~........................,~~:..==~::::::::::::::::::::::::,::=======::::::::::::::::::::==:::::::==::::::::::==~===========
$$$$$$$$$$$$$$$$$$$$$$$$$$$7==:::::::::::::::::::::::==+$$$$$$$$$$$$=====~:===:~~:,........................,==::::::::::::::::::::::::::=======+::::::::::::::::::::~=::::::::=~::::::::::==~~==========
$$$$$$$$$$$$$$$$$$$$$$$$$$$$+==:::::::::::::::::::::::==$$$$$$$$$$$$$7=====~===~..........................:==~:::::::::::::::::::::::::=========::::::::::::::::::::==::::::::=::::::::::~===???????++++
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$+==::::::::::::::::::::::==7$$$$$$$$$$$$$$7=====~===:......................,===:::::::::::::::::::::::::~=====+===:::::::::::::::::::::=~:::::::~~::::::::::~==+$$$$$$$$$$$
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$===:::::::::::::::::::::==I$$$$$$$$$$$$$$$$+====~~===:..................:====:::::::::::::::::::::::::~=========~::::::::::::::::::::~=::::::::=:::::::::::~==+$$$$$$$$$$$
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$7===::::::::::::::::::::~==$$$$$$$$$$$$$$$$$$7=====:=====~:,,,,,,,,:~=====~::::::::::::::::::::::::::========+==:::::::::::::::::::::=:::::::::=:::::::::::~==+$$$$$$$$$$$
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$7===~:::::::::::::::::::==7$$$$$$$$$$$$$$$$$$$$+====~:~==============~:::::::::::::::::::::::::::::====:::====~::::::::::::::::::::==::::::::==:::::::::::~==?ZZZZZZZZZZZ
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$?===:::::::::::::::::::==+$$$$$$$$$$$$$$$$$$$$$OOI====::::::::::::,:,:::::::::::::::::::::::::::===::::::====:::::::::::::::::::::=~::::::::=~:::::::::::~==IZZZZZZZZZZZ
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$+===~:::::::::::::::::~==$$$$$$$$$$$$$$$$$$$$$OOOOO7+~==::::::::::::::::::::::::::::::::::::::=:::::::::~==:::::::::::::::::::::==:::::::::=::::::::::::~==7ZZZZZZZZZZZ
ZZZZZZZZZZZZZOZ$$$$$$$$$OOOOOOOOOZ====::::::::::::::::::==ZOOOOOOO$$$$$$$$$$$$$OOOOO77$$$I=~~::::::::::::::::::::::::::::::::::::::::::::===::::::::::::::::::::~=:::::::::~~::::::::::::===$ZZZZZZZZZZZ
ZZZZZZZZZZZZZZZ$$$$$$$$$OOOOOOOOOZ=====~::::::::::::::::==$OOOOOOO$$$$$$$$$$$$$OOOOO77777I777===:~~:::::::::::::::::::::::::::::::::::::+==:::::::::::::::::::::==:::::::::=:::::::::::::===$ZZZZZZZZZZZ
ZZZZZZZZZZZZZOZ$$$$$$$$$ZOOOOOOOOOI==~==::::::::::::::::==IZOOOOOO$$$$$$$$$$$$$OOOOO77777I77I===:::,::::::::::::::::::::::::::::::::::::==::::::::::::::::::::::=::::::::::=:::::::::::::===$ZZZZZZZZZZZ
ZZZZZZZZZZZZZO$$$$$$$$$$ZOOOOOOOOOZ===:==:::::::::::::::~==ZZOOOOO$$$$$$$$$$$$$OOOOO77777I777===:::::::::::::::::::::::::::::::::::::::+==:::::::::::::::::::::=~:::::::::==:::::::::::::===ZZZZZZZZZOOO
ZZZZZZZZZZZZZO$$$$$$$$$$OOOOOOOOOOO?==:~==:::::::::::::::==ZOOOOOZ$$$$$$$$$$$$$OOOOO77777I777===::::::::::::::::::::::::::::::::::::::~==~:::::::::::::::::::::=::::::::::=~:::::::::::::===ZZZZZZZZZZZZ
ZZZZZZZZZZZZZO$$$$$$$$$$OOOOOOOOOOOZ==~:==~::::::::::::::==7OOOOOZ$$$$$$$$$$$$$OOOOO77777I777===:::::::::::::::::::::::::::::::::::::,==~:::::::::::::=+++++++==::::::::::=::::::::::::::===ZZZZZZZZZZZZ
ZZZZZZZZZZZZZZ$$$$$$$$$$OOOOOOOOOOOO?+=::==~:::::~=========?OOOOOO$$$$$$$$ZZZZZOOOOO77777I777==?==~~~~~~~,:::::::::::::::::::::::::::~==:::::::::::::~M:::::::M?:::::~7DMMMMMNI~:::::::::===ZZZZZZZZZZZZ
ZZZZZZZZZZZZZZ$$$$$$$$$$ZOOOOZM?~~~~~~MN::==::::8M~~~~~~=M~=OOOOOO$$$$$$MM~~~~~~~~~887777I777=M+~~~~~~~~$M,::::::::::::::::::::::::::==~:::::::::::::~M.......MI::8MMO:.......:ZMN::::::~===ZZZZZZZZZZZZ
ZZZZZZZZZZZZOO$$$$$$$$$$ZZOOOZM~......NN::~=~:::8M......,M~=OOOOOZ$$$$$$MN.........,M7777?777OO.........+M,:::::::::::::::::::::::::===::::::::::::::~M.......MI:~M..............:MZ::::~==+ZZZZZZZZZZZZ
ZZZZZZZZZZZZZZ$$$$$$$$$$ZZZOOZM~......NN:::~=:::8M......,M~=OOOOOO$$$$$$MZ..........MD777?77$M..........~M,:::::::::::::::::::::::::==:::::::::::::::~M.......MI::M8...............M=:::===~=7ZZZZZZ+===
ZZZZZZZZZZZZZZ$$$$$$$$$$ZZZZOZM~......NN~:::==::8M......,M==ZOOOOO$$$$$$M?..........IM777?77MM...........M,::::::::::::::::::::::::+==:::::::::::::::~M.......MI::?M....=+.........~M:::===~=+ZZZZ$=====
ZZZZZZZZZZZZZZ$$$$$$$$$$ZZZZZZM~......NN=::::=::8M......,M==ZOOOOO$$$$$$M=...........MZ77?77M~...........M:::::::::,,~++++~,,:::::~==::::::::::=??=::~M.......MI:::DDMMZI+8M.......,M:::===~=IZZZZZZ====
ZZZZZZZZZZZZZZ$$$$$$$$$$ZZZZOZM~......NN=~:::~=:8M......,M==ZOOOOO$$$$$$M:.....7.....~M77?7DZ.....?......M~:::::8MMM8$=~~~7OMMO::,===::::::ZMMO?~~?8MMM.......MI::::::::=::N=......:M:::====IZZZZZZZZZ==
ZZZZZZZZZZZZZZ$$$$$$$$$$ZZZZZZM~......NN=~::::=~8M......,M~=$OOOOZ$$$$$$M,.....O......M87IZM.....,7......M+:::MN,.............~MD:==:::::8M+..........N.......MI:::::::=~:DM.......NI:::===$ZZZZZZZZZZZ+
ZZZZZZZZZZZZZZ$$$$$$$$$$ZZZZZZM~......NN==::::==8M......,M~=$OOOOZ$$$$$$M......O:.....NM7?NM.....Z7......N+:::ND................MM==::::MM....................MI:::::::=:IM:......$M:::~==IZZZZZZZZZZZZZ
ZZZZZZZZZZZZZZ$$$$$$$$$$ZZZZZ$M~......NN==::::~=8M......,M~=$OOOOO$$$$$ZN......NO.....,M7?M+....,M7......87:::=M.................NZ=:::N$.....................MI:::::::=MM.......?M~:::~==$ZZZZZZZZZZZZZ
ZZZZZZZZZZZZZZ$$$$$$$$7+==~~==M~......NN==:::::=8M......,M==7OOOOZ$$$$$88......MM,.....8O$N.....DMZ......$Z,::,D?=MMMDOONM?.......M:::NM........8MMMD,........MI::::::~DO.......MM:::::===ZZZZZZZZZZZZZ+
ZZZZZZZZZZZZZZ$$$$$$+==:::::::M~......NN==:::::=8M......,M~=$OOOOO$$$$$DZ......MMO.....:MM~.....MDZ......?D,:::,O$,+DMMMMMM,......M$::M~......:M?:::+M:.......MI::::::8M......~M+::::::===ZZZZZZZZZZZI==
ZZZZZZZZZZZZZZ$$$$?==:::::::::M~......NN==:::::~8M......,M~=$OOOOO$$$$$NI......MNM......MM.....IDI8......~M,:::,OMN?..............M8:+M.......MD:::::+N.......MI::::::M?......M7::::::~=================
ZZZZZZZZZZZZZZ$$$+==:::::::~==M~......NM==::::::NM......,M~=ZOOOOZ$$$$$M=......MOM:.....ND....,M:?D......:M:::ZM=.................M8:7O.......M?:::::~M.......MI::::::M,.....+D:::::::===~============IZ
ZZZZZZZZZZZZZZ$$+==::::::~==ZZM7......$M==::::::M8......+M==ZOOOOZ$$$$$M:......MZ8D.....==....DM:+N......,M::IM.........,:+~......M8:7O.......M?:::::~M.......MI::::::M:.....$O:::::::====+=====++7$ZZZZ
$$$$$$$$ZZZ$$$$7==~:::::===$$$MD......,M==::::::M:......8M==$$$$$$$$$$$M......:MZZM:..........MI::M ......M::M.......~MM7+M?......M8:?N.......MO:::::?D.......MI:::::~OMMMMMMM~:::::::===IZZZZZZZZZZZZZZ
$$$$$$$$$$$$$$$+==:::::~==7$$$OM.......,M$::::+M=.......M$==$$$$$$$$$$ZM......+MZZMN.........7D~::M.......M~8M......:M::::M~......M8::M.......~M+:::=M~.......MI:::::=MM:..,DM~:::::::=========++?7$ZZZZ
$$$$$$$$$$$$$$$===:::::===$$$$$M~.......+MMMMMM7.......~M==+$$$$$$$$$$ZM......IMZZ8M.........M=:::M,......M+8M......,M~,~ND.......M8::M$.......:MMDNMO........MI:::::NZ......=M~::::::===============+7$
$$$$$$$$$$$$$$7===::::~===$$$$$ZM~....................=M~==I$$$$$$$$$$OM......ZMZZZM~.......$M::::M,......MIIM........ODZ,........MD::IM......................M$::::?M........M8:::::~==================
$$$$$$$$$$$$$$7===::::~===N8$$$$8M:..................=M+===$$$$$$$$$$$8M......OMZZZOM.......M7::::M:......MZ:NI...................MD:::?M:.............+......M$::::IM........MN:::::===:::::::::::~====
$$$$$$$$$$$$$$O===:::::===8N$$$$$$MM,..............~MM::==I$$$$$$$$$$$NM......DMZZZZM?.....=N::::,M~......M8:,MM..........,N......DN::::+MZ...........MM......MO::::=M~.......M=:::::===::::::::::::::::
$$$$$$$$$$$$$O8===::::::===+Z$$$$7==DMMO~.....,+DMMZ:::~==$$$$$$$$$$$$NMOOOOOOMNZZZZDMMMMMMM+::::,MDOOOOOOM8::,+MM?,...:8MNMOOOOOONM::::::7MMZ,...:$MMZMOOOOOOMO::::==MM:..,NM~:::::~===::::::::::::::::
$$$$$$$$$$$$$88I==~:::::::~====~::::::::?$OOOOI+~=:::::==?$$$$$$$$$$$$$$$$$$$$$ZZZZZ7777$~==~:::::,,,,,,,,,::::::,=7OO$?:,::,==~:::::::::::::~7OOO?+=:::::::::::::::==::IOO7::::::::~===::::::::::::::::
$$$$$$$$$$$$O888===:::::::::::::::::::::::::::::==::::==+$$$$$$$$$$$$$$$$$$$$$$ZZZZZ77777===:::::::::::::::::::::::::::::::::===:::::::::::::::::::=~:::::::::::::::==::::::::::::::====::::::::::::::::
$$$$$$$$$$$$888D===~::::::::::::::::::::::::::::==:::===7$$$$$$$$$$$$$$$$$$$$$$ZZZZ$?????===:::::::::::::::::::::::::::::::::===:::::::::::::::::::=::::::::::::::::=~::::::::::::::===~::::::::::::::::
$$$$$$$$$$$$888NO===::::::::::::::::::::::::::::==::===I$$$$$$$$$$$$$$$$$$$$$$$ZZZ???????===:::::::::::::::::::::::::::::::::===::::::::::::::::::~=::::::::::::::::=~::::::::::::::===~::::::::::::::::
$$$$$$$$$$$$888?++==~:::::::::::::::::::::::::::=~:~==I$$$$$$$$$$$$$$$$$$$$$$$$ZZ????????===:::::::::::::::::::::::::::::::::===::::::::::::::::::~=::::::::::::::::=~::::::::::::::===~::::::::::::::::

(0.0496/d/web3)