HHHHHHHHHHHH@HHH$%%+/%H$/+::;=====:-,-=---;=-:=;:===H@@M@H@M@@@@@H@@HX;--==:==-===;==;$H@H@@HHHM####MM@@@@@@@@
HHHHHHHHHHHHHHHX$$/:;%//;:;==/=,=;=-=:==-;;==--=--=:X@@HH@X$@HHHHH@X@H+--:==:=:==::=::%@@H@M@@$%#####M@@@@@@@@
HHHHHHHHHHHHHHHX$%+%/::+;=::/@;/%=-==:--:+:=-=%:::=-%H+/$/=:$+%HH@H%HH/==;=-;:-:==/:-=$@@@@@@@H/%####MM@M@@@@@
HHHHHHHHHHHHHHH$;;H@;=;;/%/X@@XM+-=,==--:::;-:H+%$:-;::=:===:=:+@@%/+/===;:-:;-::=+/,=H@@@@@@H@@%XM####MM@@@@H
HHHHHHHHHHHHHHH%=+M@$$:;XM@MM@@MH$/;:==-;:;=:$HX@H=:==:---;-,=:-+/:;:-=-==:=:::;:-;:-=$M@@@@M@@MH+%@###MM@@@@@
HHHXH@HHHHHHHHX+$MM@M%:H#MMMMMM@M@@X=-,:@%%X@@@MM@//:--==-;=--;:-,:;:=:=--:=-=::==::=:;$M@@M@MMM@$/%@###MM@@@@
HHHHHHHHHHHHHXXH#MMMMH@MMMM@M@%HM@@@$%/HMMM#M@@MH@H+=/;-,=;-:-/$:-;-=-===-==-:/-:==:::==$XMXXHXH+//+H#####MM@@
HHHHHHHHHHHHHHMMMMMMMMMMM@@@@X%@M@@@MMMMM@M@HM@H/H@HHM;:::X+%$@M$$@+-,:===;===$/=-=::::-:+%//+;+;:;+XM#####MM@
HHHHHHHHHHHHHMMM@MMMM@@@@@@@@@#M@@@@@MM@@@MHHHHX/@MMMMXX+:X@@M@@@@M@%+%==-/%:;@@+,=:==:==$/;/:;::;:+HH@#####M@
HHH@HHHHHHH@@M@H@@@##@@@@MMHH@@@@@MMMMMM@@HMM@HH@MM@M@M@HHH@@@HH@@@M@M$-=-%@HMMM@/--:=::-%X/=::::;:/MXX#####M@
HHH@HHHHHHHHMM@H@@MM@@HHM@HHH@HHH@MM@M@@@H@@@@H@@M@@@@@@@M@@@@@@@@@@HM@;:=X@@@@@MH//:=://XMX=-:;=/:;HMHM####M@
HHHHHHHHHHH@M@@@MM#@H@MH+$H$XHH@H@M@@@@@@@@$XHHM@@H@@@MMM@@M@H@M@@@@MM@H$$MHMHX@@@M@/-;XM@HM%=;;:+$HMM@M#####M
HHHHHHHHHH@@@@%X#M@HHH%:=+H:/XHH@H@@@@H@@H$:%X/HM@H@@MMMMM@HHH@@H@@@MH@@@#M@MHHM@@@M$=/MM@@M@H$::$@MMMM######M
HHHHHHHHHHH@@%:$%X@H%+=-=;+-=+/;$XHH@%+H%=::/:=$H@@M@@@@@@HXH@+$X@M@@HMM@M@@@M@@@@@MH%$@MH@M@M@//HM@@MM#######
HHHHHHHHHH@@$;/::MMX==-=::-,-=--/@XHH=:+=,===-:;X@@H$@M@@HHHHX:/@+$@@@@MM@@HH@@@@@MMM@@@M@@@MMMH@MM@HMM######M
HHHHHHHHH@@X:;;:+@X/=-=:;=,==,-:X@HH+===,=--=-==;+:-/@@H%+H$;:::/-%@@@@@M@H@@X@@@@@@M@@@@@H@MM@M#MM@H@M#######
HHHHHHHHHHH:://:+$/:=-/==-;+-=-=%$+=-=-,-/=,-,:=,-=%@@@$-:/=-==::=;$HXHH@M@@%+HM@M@@MM@HHHH@@@@MM@MM@@@M######
HHHHHHHHHX%=;::=;;::-:%--,+;,--==;-.---,:$===-;=-==/$H$+===----=,==;/;HHMX%$;/XH$H@M@M@HHXH@@@MMM@M@@@MM######
HHHHXHHHHX/;;:====:==/;,--:=,-=:,-,-=,-,-;=,,-;-=:-,=/==----=--,-::=-;X@@/-;;;/;;/%H@@@HX+$XHM@@@MHX@@@#######
HHHHHHHHH$;;;;====:==:=---=---,-==,=:,-,=:-,.-;---==,---,=,:;---++====/HX;=,=:==:=:%M@$+;:;/X@@HMX/X#MM#######
HHHHHHHH$%:;:===-==--=----=,-,----,=-,-,--,=--=---=-,=---=,;=,,=/=-====;=---===:;-:+@M$::--;%X@MX+/XH@########
HHHHHHHX$+;;:===-===-=--=-=-=,-,-=,=---,==,-,-:,-,=----=---=,-,==-===:--,=,,=--/;==:%M$:::-;/%@X;+/+HM########
HHHHHHH$$+/;===:--:=,-,=---,-,=,-=,-,-=,--,=--=--,-----=---=-,,==,===--===--==-::==-=+;:::=:/+XX;;/+HM#######M
HHHHHHHX%/::==:=-==--=,-------=,,,-:-,,,=-,-,=-,-,-,=-,,-===-=,==-=-:--,-=----======-::::=::;/+$+:;$@M#######M
HHHHHHHX%;::=:::=-=----=,-,--,,,=,,-,==,-,-=--,--,=--,---,-=,-.--,=-=,=--=-,=--=--==-=:==::;;;///:+%H########M
HHHHHHHX+/;;:======-==,=,:-.,-=,,,:-.---=,,-,=-,-,-,==-,=---,=,=-,,-=,---,=---=-====-,==-::://;/;/++@########M
@HHHHHXX+;:::===:::=---=,=-,-----,=,,=---,==-:--=,=,-,---,--,=-=,--,---,=,--=--=--==--==-=::///////%@########@
HHHHHHHX%;;======::--=,=-=,-,--,-,-.,-,=-.=-,-,----,=,-,=-----,=--,--,-----------,==--=--=::;;//+//XM#######M@
HHHHHHHX%/;==:==-===--,=---=--=--,-,,,,-,,:,,-,-,=-,-,=,-,-,--,-,=--------,-,---,---=-=-,===;/;;++%@########@@
HHHHHHHX%+;:======-=--,---,--,---,-,--,,,-=,-,,=--,-=,=,-,----,---,-,-------,-,-,-----=--:==:;;;/%$@#M#####M@@
HHHHHHHX$+;:=-===--==--=-,,==,,--,,,-,,-,--,=---,-,---=,=--,=----=,--=,----,,-----=-,-=-=====:;/+%$MM######M@@
HHHHHHHXX%/:==-==--==-,--,,,-,-,,,-,,,,-,,-,-,--,-,--,,-:,-,=-----,-,----------------=-===-=::;/+%XM######MM@@
@HHHHHHHX%/;;=--:=-=---:,,,=:,--=,,,==,--:=-=,=-,-,,,,---,-,----=-,--=---,-==--------=-==-===;;/+$@#######MMM@
HHHHHHHHH%/;;:-::===-:==--,==,-==,=,--,=-;=--,:=,,-;-,,-:,--=,--=,,-----=--=-----------===-==::/%$M#######MM@@
HHHHHHHHH$/;;:;:-:==-:-,==,-----,-:---,:-,,=;,,,-,--,=:,-,---,-,==-=-,--=------=----=,,==--==:;/%X##MM###M@@@@
HHHHHHHHX%/:::::===:--:----==-,--,-,=:,,,--=:---,-,-=/=,---,-;:--,-,---,=-----,---------=--=-:/%$X#######M@@@@
HHH@HHHHX+/;;=-;:====-=--=-,==,,,-=--------=----,-,,--,,---,-:-,=----=------=,,--=,--,---=-==:/%X@#######M@@@@
HHHHHHHHX%;:/:-=:::=:,,=----==,-=,,,-=-,--,-,,-=--,--=,----,-=-,=--=-=----===----------=-,---=/$X@#MM#M##M@@@@
HHHHHHHHX$/=/:=-;:===--=,,=---,=-.--,=--,,,--,--,-,,,,,-=---==,-=-,===--=-:=-----==--=-==--=-=/$X@M@HM#MMMM@@@
HHHHHHHHHX+=:======:=:,,----=:,,,,,,,:=,,---=-=:---,---==-=,----=-,==,,==-:==-=-===,=---==--=:/%$H###@M#MMMMMM
HHHHHHHHH$+;:;=:=:::=:===,,-==--,,.-=---=,-----=-==,,--=--=-==-:;--:=--=,-==-=-=-=--=-===:---:/%$@MM#M@MMMMMMM
HHHHHHHHX$%+;/:==:::=:===--===----,,----,,,.,-,-==-,-==--==--:==:=::=-:=,:=,,===-=-==,:=:=-:=;/%X@MMMMMMM##MM#
HHHHHHHHHH$%;/+///++////;;;/;;:;::::::;:::====:::;;:--==;;::=-======:==--::=---::=-:=-==;-=;=//%HM@MM@MM###MM#
HHHHHHHHHHHX+%X$X$%+%+++///+/;;;;;;;;;;::::;;;;;;;;;///+++++//////;--=====---==::--:-===--;==//%HM@MM@@M###MMM
HHHHH@HHHHHHXXHHXX%%%+++///////;;;;;;;;;;;;;;;;;;;;///+++++//+++++%%++++/;::;::::==--::=-=:,:/%$HMM@MM@M##MMMM
HHHHHHHHHHHHHHHHHX$%%%%+++/////////;;;;;;;;;;;;;;////+++++++///+++++%%$X%+%$+++;==:-:::=-;==++$HMMM@@@@MM#MMMM
HH@HHHHHHHHHHXH@HX$$$%%+++++////////;;;;;;;;;;;;;////++/+%%+////++++++%X$%%X%+++++/+/;;;:::++%H@MMM@@H@MM#MMM#
@H@HHHHHHHHHHHHHHX$$$%%+++++////////;;;;;;;;;;;;;;;;/++%%%++///////++++%XX%X$$%%%%+$%+/;;/+%$H##MMMM@@MMMMMMM#
H@@HHHHHHHHHHHHHHX$$$%%%++++////////;;;;;;;;;/;;//+$$$$%+//////////+++%%$H$X$$$$%%%%++%%%XXXHM###MMMMM###MMMMM
H@HHHHHHHHHHHHHH@X$$%%%%+++++///////;;;;;;//+++%$$X$%////////;;;/+++++%%%XXXX$XX$$%%%%%%$HM@H@MMM##M##M#MMMMMM
HHHHHHHHHHHHHHHHHX$%%%%%++++++//////;;;;//+%%$$X$%+;;/////+/;;;;////++++%$XX$X$$$$%%%/+%XMM@HX@M@MMM#####MMMMM
HHHHHHHHHHHHHHHHMH$%%%%%++++++++//////;//%$XHX$%/;////+++++//;;;;///++++%%$XX$%%%%%%+++%HMMMHHX@#MMM#MM##MMMM#
@@HHHHHHHH@HHXHH@@X%%%%+++++++/////////+%XHXX+///+++++%%%++//;;;;//++++%%%%$XXX$$%%%$$X$H@@HX$HH@M#MM@M#MMMMM#
@@H@HH@HH@HHHHHHHMH$%%%+++++++///////%$H@@H%+++%++%++%%%%++/;;;;;///++++%%%%$$$X$$%$H$$$XHHHX$XHH@M#M@MMMMMMM#
HHH@HH@HHHHHHHHHHHM@$%%%++++++///+/+%H@@XX$%%%%%%+//+%%%%+/;;;;;////++++%%%$%%%$$%%$X$$XXXHHHXXXXH@H@MMMMMMMMM
HHHHHHHHHHHHHHHHHH@M@X%%%+++++//++++$XXX$$$$$%%%/;:;+%%%%+;;;;;;///+++++%%%%%%+%%%%$XX$$XHHHHHXXXXHX@MMMMMMMM#
HHHHHHHHHH@HHHHHHHH@MHX%%%++++++++++%%$XXXXX$%+//;;/+%+++/;;;;;;///++++%%%%%%%%%%%%$XX$%XHHHHHXXX$XX@#MMMMM#MM
@@HHHHHHHHHHHHHHHH@M#@XXX$%++++//+++%%$XXXHX$$++/+%$%X%%/;;;;;;;///++++%%%$%%%%%%%%$XH$$XXXXXHXXX$$$M#MMMMMMMM
HHHHHHHHHHHHHHHHHH@##M$$%$$%%+%+/+/+%$$$$$XXXXH@@HXXXX$%/;;:;;;;;//+++++%%$%%%%%%%%$XX$$XHXXXXHHX$$XMM#MMMMMMM
HHHHHHHHHH@@HHHHHHM##MH$%%$HX%++++//+$%%%/;$MMMMMM$+%%%+//;;;;;;///+++++%%%%%%%%%%%$$XX$HHXXXHHXX$$H#MM#MM@MMM
HHHHHHHHHHHHHHHHH@M#MM@@@MM@@X%++////++++/+$XX$XHX%+%%++//;:;;;;///++++%%%%%%%%%%%%%$XX$HHXHXHHXXX$H#MMMMMMMMM
HHHH@HHHHHHHHH@@HMMMMM#M@X@@H$$%///;/++/++/%%X$$$%$$%%+///;::;;//////+++%%%%$$$%%%%$$XX$XHXXHHXXXX$H#MMMMMMMMM
@@HHHHHHHHHH@@@@@MMMMM#@HX$$$%$$+;;;;/////;/%$XXXXX$%++///;:;;;;////++++%%%%%$$%%%%$$XX$XHXXHXXXXX$@#MMMMMMMM#
@@HH@HHHHH@@@H@@MMMMMMMMHHHXXX$X+/;;;///////++%$$$%++++///;;;;;////+++++%%%%%$$%%$%%$XX$$@XXXXXXHX$MMMMMMMMMMM
HHHHHHHHHH@@@HH@MM#MMMMMHXXHX$$$%/;:;/////////++%%++//////;;;;;///+++%+++%%%%$$%%$$$$XX$$HX$XXXXXXXMMMMMMMMMM#
HHHHHHH@@HH@@HHMMMMMMMMM@XXX$$XX$+:::///;;;;;;/++++++++++/;;;;;;//+++%%+%%%%%%$%$$$$$XX%%XX$XXXXXXHMMMMMMMMMMM
@HHHHHH@@HHH@H@MM###MMMMMX$XX$$$X+;::;/;;;;::;////++%++++//;//////++++%%%%%%%%%$$$$$$X$%%XH$XXX$$XH#MMMMMMMMMM
@HHHHHHHHHHH@@MMMMMMMMMMMH$X$$$$$+;::;;;;;:;;;;;///++%++///////////++%%%%%%%%%%%$$$$$X$%%$H$$XXXXX@#MMMMMMMMMM
HHHHHHHH@@HH@M#MMMMMMMMMMMXXX$$$X+;:;;;;;;;;;;//////++++///////////++%%%%%%%%%%$$$$$$$$%%%XX$$XX$$@#MMMMMMMMMM
HHHHHHHHHHH@@##MMMM#MMMMMMHX$$$$$+;=:;;;;;;;;;//////+/+//////+///++++%%%%%$$%$$$$$$$$$%%%+XX$$XXXX@MMMMMMMMMMM
@@HHHHHHHH@MMMM##MMMMMMMMM@X$$$$$+;=:;;;;;;;;;///////////////+///++++%%%%%%%%$$$$$$X$$%%++XHX$$X$XMMMMMMMMMMMM
H@HHHHHHHH@###MM#M#MMMMMMMMHX$$%$+;::;//;;;:;////////////////+////++++%%%%%%%$$$$$$X$%%%%%$X$X$$$XMMMMMMMMMMMM
@HH@HHHHH@M###MMMM#MM#MMMMMM$$$%$%/::;////;;/////////////////////++++%%%%%%%%$$$$$$X$%%+%%%XX$XX$H#MMMMMMM##MM
HHHHHHHH@M#M####M##MMMMMMMM#H$$%$%/;:;//+/;///+++++//////////////+++%%%%%%%%%$$$$X$$$%++%%%$H$$X$H#MMMMMMMMMMM
HH@HHHH@M##M##M###MMMMMMMM@MMX$%$+/;:://++////++++++//////;;/////+++%+%%%%%%%%$$$X$$%++%+%%%$H$$X@MMMMMMMMMMMM
HHHHHHHHM####MM##MMMMM#MMMMM#@$$$%/;:=;++////++++/+++///////////+++++%%%%%%%%%%$XX$%%%%%%%%%%XX$$@MMMMMMMMMMMM
HHHHHHHHMM####MM#MMMM#MMMMMMMMH$X%+;:=:/+////+%++//+++//////////+++++++%%%%%%%%$XX$%%%++%%%$$$X$$@MMMMMMMMMMMM
HHH@HHHH@MMMM#MM#MM####MMMMMMMMH$%++:-:/+/;//+%//////+++////////++++++++%%%%$$$$X$$%+%%+++%$%%$XXMMMMMMMMMMMMM
HHHHHHHH@#MMM#MM#M#####MMM#M#MMMX%++;://+++/+%/;;;;;///+++///////++++++%%%%%$$$XX$%%++%%++%%%%$$H#MMMMMMMMMMMM
HHHHHHHH@#MMMMMMMMMMM##MMMMMMMMMMX+///+%%%+/+/;;;;;;;;//+++///////+++++%%%%%$$XXX%%%%+%++%%%%%$%H#MMMM@MMMMMMM
HHHHHHHH@#MMMMMMMMMMMM#MMMMMMMMM#M$+++%%%%+/;;;;;;;;;;/////////////++%%%%%%$$$XX$%%%++++%%%%%%$%@MM@@MMMMMMMMM
HHHHHH@H@MMMMMMMMMMMM###MMM#MMMMMMMX%$$$$%+/;;;;;;;;;;/////+++++///++%%%%%%$$XH$+%%%++++%%%%%%%%@MMMMMMMMMMMMM
HHH@H@@HHMMMMMMM#MM#M###MM#MM#MMMM#MHHHX%+++/;;;;;;/////+++++++++++++%%%%%%%XXX+%%%%+++%%%%%%%%$MMMMMMMMMMMMMM
HHHHH@HH@@#MMMMM#MMM####MMMM#MMMMMMMMHXX%/////;;;;;/;;;/%%+++++++++++%%%%%%%XH$%%%%++++%%%%%%%%XMMMMMMMMMMMMMM
HHHHHHHH@@#MMMM###MM####MMM#MMMMMMMM#M$$%++///;;;;;;:;+%%::++++++++++++%%%%$HX+%%%+++++%%%%%%%%H#@MMMMMMMMMMM@
HHHHHHHH@@#MM#MM#MMM#MMMMMMMMM#MMMMMM#@X%+////;;;:;/+%%+/:;/+++++++++++%%%$XH%%%%%++++++%%%%%$%@MMMMMMMMMMMMMM
HHHHHHHHHHMM##MMMMMMMMMMM#MMMMM#M#MMMMMMH$%+/+%%+%$$%++/;;;////++++++++%%%$@X%%%+%%+++++%%%%$%%MMMMMMMMM#MMMMM
HH@HHHHHHHH#MMMMM####MMMMMMMMMMMMMMMMM@MMHXX$XHX$$+/++/;;/////////++++%%%$HH%%%%%%%++%%%%%%%$%$MMM@MMMMMMMMMMM
HH@@HHH@HHHMMMMMM####MM#MMMMMMMMMMMMMMMMMMXXXX$$$%/++/;///+////////+++%%$X@$%%%%%%%%%%%%%%$$$%X#MMMMMMMMMMMMMM
HHH@HH@@@@H@#MMMM##MMMM#MMMMM#MMMMMMMMMMMM@X$$%$%%%+////+++///;;///++%%%$@H%%%%%%%%%%%%%%%$$$$@MMMMMMMMMMMMMMM
HHHH@H@@MMHX#MMMMMM#MM##MMMMM#MMMMMMMMMMMMM@$$$$$$%+/++++//////////++%%$H@$$$$%%%%%%%%%%$%$%%%@MMMMMMMMMMMMMMM
@HHHHHMMM@H%MMMMMMMMMMMMMMMMMMMM#MMMMMMMMMMMHXXX$$%%%%++++/////;//++%$$H@X$$$$%%%%%%%%%%$%$%%$MMMMMMMMMMMMMMMM
XH@H@MMMHH@$X#MMMMMMMMMMMM#MMMMM#MMMMMMMMMMM@XXXX$$$%%%++++///////+%%$XMHXXX$$$$$$$%%$$$%$$$%$#MMMMMMMMMMMMMMM
XXHHH@M@H@HH$M#MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMH$$$$%%%%%++++//////++%$XMMHXXXXXX$$$$$$$$$$$$$%X#MMMMMMMMMMMMMMM
HHXHX$XHHH@@X@#MMMMMMMM#MMMMMMMMMMMMMMMMMMMMMM$%%++++/++++//////++%$XM@XHHXXXXXX$$$$$$$$$$$$%@#MMMMMMMMMMMMMMM
XHHH@@HHXXHHHX#MM#MMMMMMMMMMMMMMM#MMMMMMMMMMMMH%%+++///////////+++%HMH+$HHHXXXXX$$$$$$$$$$$%%MMM@@MMMMMMMMMMMM
+%$$$HHHH@HHHX@#M##MMM#MM#MMMMMMM#MMMM#MMMM@MMM$%%+++//////;//+++%HMX++$$XXHXXX$$$$$$$$$$$$%$MMMM@MMMMMMMMMMMM
:::::;;//+X@HXXM#MMM##MMM##MMMMMMMMMMMMMMMMMMM#@$%%%+///////++++%H@%/+++%$XXXX$$$$$$$$$$$$$%X#M@MMMMMMMMMMMMMM
======--=-/@HX$H#MM#M####MMMMMM#MM##MMMMMMMMMMMMH%%%+++///++%++$@#$;+++++%$$$X$$$$$$$%%%%%%%H#@@MMMMMMMMMMMMMM
:==-------+@HHX%@#MMMM###MMMMM###MM##MMMMMMMMMMMMH%+%%+++++++%H##M$/+//+++%%$$$$$$$$$%%%%%%%@MMMMMMMMMMMM#MMMM
HHX$%///;:%@HHX$$@#MMM#MMMMMMM#####MMMMMMMMMMMMMMM@X$$X$%%$X@##M@MH////++++%%%%$$$$$%%++%%%$MMMMMMMMMMMMMMMMMM
+%$XHHH@@@@HHHXX$$##MMMMMMMM#MMMMMMMMMMMMMMMMMMMMMMMM@MMMMM##MM@MM@+//++/++%%%%%%%%$%%+++++$MMMM@MMMMMMMMMMMMM
/+++++/%%$HHHX$X$%X##MMMMMM#MMMMMMMMMMMMMMMMMMMMMM@MMMMMM##MMMMMMMM+//++++++%%%%%%%$%++++++X#@MMMMMMMMMMMMMMMM
/++++/++/+HHHXX$$$+X#M@M#M##MMMMMMMMMMMMMM#MMMMMMMM@MMMMMMMMMMMMMM#$;+++++++%%%%%%%%%++++%+XMMMMMMMMMMMMM#MMMM
+++//////+H@HXX$$$%+$MM@MM#MM@MMMMMMMMMMMMM#MMMMMMMMMMMMMMMMMMMMMMMX//++++++++++%%+%%++++++@MM@@MM@MMMMMMMMMMM