;====:::;;;;%$$%+++//+$$%+$HXHHHHHHHHHH@@@@MMMMMMMM##MMMMMMMMM@@HHHXXXX+=:.
X$$$XX%;;//++++//+%%+$XXX$XHHHH@@@@HHHHH@@@@MMMMMMMMMMMMMMMMM@@@@HHH$$$$;=:..
@HHH@H/;///+++++++$+/%X%XHHHHHH@@@@@@@@@@@@@@@MMM####MMMMMMMM@@@@@@HHX$%%::=..
H@@@@@%/+++++/;+%$+//+X$$XHHHHHHHH@@@@@@@@HH@@@@MMMMMMMMMMMMM@@@HHH@@HX%%/-;-.
@@@@@MH%%%+%%+/+$H///+%%%%$XX$%$$XXX$%++%%$XXHH@@MMMMM@@@@@@@@MM@@HHH@HH$+=;:,
@@@@@M@$%++$$%/+X$:::/;:/+%%+;:=::/+%%%$XXXHHH@@@MMMM@@@HHHHHHH@@@@@HHHHH$;:;-
@MMMMMMH%++%+$%$X%:=::-==:;;:::;/%$XHHHHHH@@@@MMMMMMMMM@@@@@HHXXXXH@@@HHHX+;:-
MM@MMMMMX++/+$$$$X%/:-----=;/%$XXXXXX$$$$XXXHH@@@MMMMMMMMMMMMM@@HX$$XHHXXXX$/=
MMM@MMMMX+//+$%%%$HX=-,,,.,,--==::;;;;;//++++%$$XHH@@@MMM@@@@@@@M@@X$$$XXX%$%:
MMMMMMMMM$++%$%+%XH;,,,.......,,,,=::;//++%%$$XHH@@@@@@@@@@HHHHHHHHHHX+%X$%%$/
MMMMMMMMMH%%%%+/+X%-,,,......,,,--:+%%$XXXXXHH@@@@@@@H@@@@@HHHHHXXX$$$%$H$$%$$
MMMMMMMMMH$%%+//+X:,,,,,,,,,,,--:::;/+%$X$++++%%%%%%%$$$XXHHHHHHHHXXXXX$HHXX$$
MMMMMMMMM@X%%+++$%-,,,,,,,,,,,,--=;;;===;%+=-==::::;;;//+%%$XXXXX$$$$$+%H@XXX$
MMMMMMMMMMH$$%%%$:,,,,,,,,,,,-----;+$X%;=:++=--==:;;;//+%%$$$$$$$$%%%/+XXHXHX$
MMMMMMMMMM@$$$$X%--,,,,,,,,,------=+$$+$+:;++///+++%%%$$$$$$$$$$$$$%%+X@HXX@XX
MM#MMMMMMM@X$%%$/----,,,,,----===-==;;;++;;;;;:::::::;;//++++%%%$XX$XH@HHXX@@H
MMMMMMMMMMMHX$$X;==-----------==---==://:==----=====:::;;;////+%XXXH@@@HXXH@MH
###MMMMMMMMHX%$X;::::::=========---------,,-----======:;;;;;;+$HH@@@@MM@XXXH@@
####M#MMMM@@X$XX;::::::;::::====-,,,,,...,,-=:::=::::====:;+$H@@MMM@@MMMH$$$HM
########MM@HXH@$;::====//------.........,,-=:;+$%%++%%+;;%H@@@MMMM@MMMMMM@$X@M
########MMM@@@MX;;:::==;+:--,--,... ..,,-====;%%/+X%+$XHMMMMMMMM@MMMMMMMM@H@M
@HHXXXXXXX$$XXX%;:::::;//+:::===-,...,,,--======::/X@XH@MMMMMMMM@MMMMMMMMMMMMM
@@%======---===========:::==:::::===---::=======:+H@@@HHH@MMMM@@M#MMMMM@MMMMMM
@@$:=====----=-==========-----====:;///;:::==:;%H@@@@MMMMMMMMM@MMMMMM@X%$$$$$$
@@X:---=--=====================::===;/+%++++%$XHHHHHHXXHHH@HHHHHH@@@HXXX$%++/;
@@H;-==------=====::::=::=::::::::====:///+%%%%%%%%%%%$XHH@@@@@HHX$$%+;:====::
@@H;=================::::::;;;;::::::::::::;;;+$XXXXXXXXXX$$%/;:=====:;//++%%%
MMH:=======:::======::;;;::;;:;;;;;;;;:=:::::/$HHXX$%+/;::::;;;//////+/////++/
MMH;:::::::::::;::;;;;;/;;;;;:::::;+%%+/;:;;:;;;:::::;/+%%$$XXX$%%++/:;;:::://