#/::,..,=%@MMMM#####M@HH@###############MMHX$%//+$MMHHHM#M@HHHH%$M#########M@@@@@@@@#########MX+/=-%
#-,-=::/%HMMM###MM#MMM@H@@@@@@@@@@@@@@MMMMM@HX$%%HH/===;HM@H@HHHX$%%%%%%%%$MM@@@HHHH%///////+XX$%/:H
#//+%XH@M############MMXHHHHHHHHHHHHHHHH@@M#M@HXXH;====-:@MHHHH@%----------%M@@@HH@+-=-=--==-:$HXX$@
#$$$HMM#######MMM#####M$X@@@@@@@@@@@@@@@@@H@M@HXH%=::===-%MHXHHX/-========-:@M@@@@@:=========:%HXXHM
#XXH@@######$::::/@####H+X@@@@@@@X+%X@@@@@@@@M@HH;========H@HHHX+;=========-$MHHHM$=========:/+%XXHM
#$XH@M#####@:;++/;;M###H%$@@@@@@@/;//X@@@@@@@M@@%========-%M@HHXXX/========-;M@HHM/-=======;//;;%XXM
#%%X@######@XXX$$$/X###$%$@@@@@@H$%$+%@@@@@@@@M@;=========:@@HHXHH%==========H@H@H========-/+;;:/%$@
#%%XH#######MM@@HHX%###;/X@@@@@@@HXXX$H@@@@@@H@$===========XM@HXXX+=========-%MH@$========-/X;:;+%$M
#$XH@########MMMMM@XXH$;+X@@@@@@@HHXHHH@@@@@@@X;=:========-/@HXXXX+==========;@@@;-========/X%%%%$XM
#$XXX##########MMMMMHX$X$X@@@@@@@@HXHHH@@@@@@H+====:=======:@HXXXX+-==========XMX=========-/X$X$$XXM
#$%+%##############MMMM@XX@@@@@@@@HH@@@@@@@@@%=====::======-$@$$XX/-==;======-+#%-=::=====-/X$$$$XHM
#X$%%#################MMHX@@@@@@@@@M@@@@@@@@@/====:/;======-;@X$XX+-==+=======:@:==::======;X$%$$XXM
#XX$+M#################M@H@@@@@@H@M@H@@@@@@@$/===:;%%;=======HH$$X+-==%;=======/===;;======;XXXX$$%@
#X$$+X##################MH@@@@@@HXHH@@@@@@@%:;===+X@MH:=====-+H$%$+===$/===========;;======;HXHHX$%@
#X$X$+@#################MH@@@@@@@@@@@@@@@H/=/:===/++++:-====-;HX$$+===$+===========+;======;XX$XXX$@
#%%XX+;$################MH@@@@@@@@@@@@@$/:=+%=======--========X@HX+===%%:=========:+;======;X$%$$XXM
#%+%%+/;/$M#############M$@@@@@@@HX%+;/;:/+X%================-+MHX+-==$$;=========:%:======;$$$$$X$@
#%%$$XXX%;::/%%X########M$@@@@@@H%/::;/+++%X;=====---========-:HX$/===$H%:=======-;%:======;X$$$$$$@
#%$XH@M@H%+/;:=-+#######M$@@@@@@H$%/+++%%%$$====-====;:========$X%/===%X$;=======:+$:======;XX$%%%$@
#%+%@##M@XX$%++++@######H%@@@@@@H$%++%%+%%X%====:/+++++:======-/@X+===+$%;=======;%%:======;X$$$$$$@
#%/+M###M@@HXX$$HM######%%@@@@@@H$%%%%%%++X/-==:/%%%%++;======-:@H+-==%H$/======-:+%:======;HX$$$$$@
#$%+M####MM@@@HH@######@;X@@@@@@HHX$$%+%%$X:===$$X$%%%$$:=======$#%-=-+MH$;====-=/%X:======:@@H$%$$@
#$$/%#####M@@@@M######M/+H@@@@@@@H@X%++%$H+====$@HXXXXX@;======-:X;-==:$@X/===-=;+$+========;XX%%%$@
#%+;:M######MM#######M;:X@@@@@@@@@X%+%%%$+======%$$$$$$/=========--====-/+///////+/=========-:/++//H
#+/;=;@#############X:=;H@@@@@@@@@$/%$$$+========/%%%%+================--=;/++++%+:==========-:////@
#+/+/;:+@#########X/:/+/+$XXXXXXX%:/$XX$+:======:+$$$%+/:======----------://+++%+/;====-=====:;/+++@
#++%%+/;;/%$$$$%/;;/%$$$%++//++++//%XXXX$+/;//++%$XX$%$$%%++++/;;;;;;;:;//+%++%%+++//+//++///++%%%$@