;==-.                  ...,,-=::::=--------,,,,--=:::;;/;;;+++++%$$$$;
/;-...             ,=:/%$$XHHHHXX$$$X$XX$++++////;;;;;;;;;////+%$$$H$;
//:,...     .....-%HX%%$$$%%%%%%%%$XHHH@MMMM#M%/X$+%////+%%/+$XXHHXX+;
;/=,,=,  ..,,..:%HH$%%%%%$%%%$$$%$$XHHHHH@@@@M#$:;;/X+//++%$$X$X$XXHX;
;+:==-  .,--,-+@H$$$%$$%%%%%%$$$$$$XHH@@H@@@MMM#M$;;$$$%%%++%%$XXXHHX;
;//;-,,..,--=XHXXX$%%%%%%%%%%%%$$$$XXH@@H@@MMMMM###MMHX$$$$%%$$$XXXX$;
;//;,=-,,,,:HMXHHX$$$$$%%%%%%%$$$$$XXHHHH@@@MMMM#######@X$$HXXX$$X$XH%
;;/:=--,,,-$#HXHHHX$$$%%%%%%%%$$$$XXHHHH@@@@MMM#########@X$XX+$H$H$XH%
;;;:=-,.,=+MMXXXHHX$$%%+%%+++%$%%%$$XHHHH@@@MMMM##########MH@$+XXH$X$/
;;/:=,.-/;HMMHXHHX$%%%%++++++%%%%%$$XH@@HHH@MMMMM##########M#M++XHXH+/
;//;:-=;//@#MHXXXX$%+++++++++%%%++%$XHHHHHH@MMMMM#############@+%HHX//
;//;;::-/;@##@XX$$%++//++++++++++%%%%$$$XH@H@MMM########M######%/XH$+/
;;;;;-.=$$###@H$$$%+//++++/+%+/+%%$$$XHH@MM@@MMM###############H+$X+//
;;;;=, +M#M@#@XXXX$%+++%%$%%%%+%$$XM############M###############$%////
;;;;:,,+MM#M#HXMMM#MMM@HXX$$$$$$HM######@MMMM####MM#############X%/++/
;;;;:--%@M#MMH@########M@H$XXHXM#####M@HXHH@@M###MM############MX%+++/
;;;;;:-/H#M@M@@XX$H@MMM@@@XXH@HMMM#####M#MMMMMMM#MM############@HX++//
;;;;;;=:%@MHMMH$$X@@MMMMMM@XXH@MM#####@$#M####MMMMM###########M@H$/%+/
;;;;;;;:%MM@MMHXHM##HMMMM#M$+X@#####@X##@%M###M@MMM###########MMH+/+++
;;;;;;;=/MMMM@XHM#@#HM$HHHMX%X@##M@MX$@MHX@@###M@@M##########M#@X+++++
;;;;;;;;/$@MMMXHM#$$MH+XHHHX%%H##MM@HHHXH@@M#MM@HHMM##M######M@HX%++++
;;;;;;;;:/%@MMXX@MHX$$XH@@HX$$H#MM#HH@HXH@##M@@HH@@M##M######@H@X%++++
:;;;;;;;;:;XH#XXXH@HXHHMMHX$%X@#MM@@XH@@@M@@HXHHX@M###M######HX@X+++++
:;;;;;;;;;/XX#HX$$XHH@@@X$X$+$@MM@HHHXXXXHXXXXXXH@MM##M@M###MXXMX+%%%+
:;;;;;;;;;/XXMHXX$$$$XX$$$X$/$@MM@@HHHXX$$$$$$$XH@M####@@MMMMH@M%+%%%+
:;;;;;;;;;;XHH@X%%$$$X$$$$X%/$@MMM@HHXHHXX$%$$$X@MM####@MM@MM@@$/+%%%+
:;;;;;;;;;;XHH@$$%+$$$$$%XX%/$HMMMMH$%XHHX$$XXXH@M######MM@@@H$+%+++++
:;;;;::;;::+$HMX$%%$$$%%%X$+;$HMMM#@%++%$$$$XH@@@M#######MM@@HX%%%+%++
:;;;;:;;;:;;%$@H$$$$%%%%XH$+;$H@####H$%%%%%$XHH@M#######M##@@HH%+%+%++
:;;;;;;;:;;;%+XMHH$%%%%XMX$+;$XM#@@#MH$$$%$$XXX@M#######MMMMMHH$+%+%%+
:;;;;;;;;/;:%X$M@X$%%%XMH$$%;%@MM@H@MMHX$XXXHHH@M#######MMMM@HXH%%+%%+
:;;;;;;;;/;:%@HMMH$%%$@M%$$X/$MHXH@@M@HHX$$XH@@M########MMMMMHXH$+%%%+
:;;;;;;;;;;;/XMMMMX%$XM@%$$$+$HXXH@M#MHHH$$$XH@M########MM@@MHX@X+%%++
:;;;;;;:;;;;/$XHMMH$$XMH%%$%+XX$X@####@@HXXXH@@M########MM@@MXXHX+%%++
;;;;;;::;;:;+XH@#MMXXXHXHH%%$@H@M####M##MHXH@MM###########MMMXXXH%%%++
;;;;;;:::;;;/XM@M#MHHX@MMMMXX@M#####M@M##MHH@MM###########M@MHXXH%++%+
;;;;;;::::;;/%HHHMM@HXM#MMMM##M##MMM#MMM##MH@#############M@MHHXX%++%%
;;;;;;;;:;;:;/XH@M#M@HMM@@M######MM########@@#############M@MHHXX%%%%%
;;;;;;;;;;;;/+$X@@##@XM#MM###@@H@MM@@M######M############M@@@HHXH%%%%+
;;;;;;;;;;;;;++%@@##MH@##@@@@$$X@M@@M##M#################M@@@HHXH%%%%%
:;;;;;;;;;;;;++H@@M##MH#M@MMM@@@M###M@X@M###MM###########M@@@HH$X%%%%%
:;;;;;;;;;;:/%%@HHMMM#@@MXXH@MMMM@HH@H@MMMMM#############M@@HHH$X$%$$+
:;;;;;;;;;;:/++@@@@@M####HXXXXXH$$$HMM#MMMM###M##########MM@HHH%X$%%%+
:;;;;;;;;;;:/%+%X@@H####M@HX$++%+%H@@###MM###############M@@HHX%X$%%%%
:;;;;;;;;;::;//$HHHM##MMMM@HX$$HHH@M####MMM##############M@@HH$%X%+%%%
:;;;;;;;;;::;;:/$X@@@##MMMMM##M#########MMM#######M#######M@HX$%$X%%%+
::;;;;;;;;:::=- -/X@@##MM@MMMM#M#M###MMM@M################M@H$$+$H$%%%
:;;;;;;;//;=,. .=:%HM####M@M#MMM#M@@M##M@@###############M@@HX$++HXXX$
:;;;;;;;/;-.  .-:=/X@M####@MMMM#MMMMMM##MMM##############M@@HX%//X$XHX
:;;;;;;:=.    ,::=/X@#####M@M###M@MM#@M###M##############M@@H$%/;$%$HX
:;;;;:=,      ,;:-$HMM#####@M#MMM@MMMM@##################M@@H$%/:$+%X$
::::;-...     ,/:;%$@#######MM@MM@M#@M@@@################M@@H%+;:+%+%%
::=-.         ,++:=+MMM#####MMMM@MMM@@#@@#################@HH%+:=;%++%
-,.           ,/+=:$@MM#####M@M#@MMMMMMMM#################HXX%/:=:%/++
             ..:+;;%H@M###M@@@##@MM#MM@MMMM###############H$X%/;==%;/;
   ..        .,:+%+%%@M###@HHMM@MMMM#MMMM@@###############@XX%/;=:+/=:
   ,         .,:%%+++@##MM@HMM@#M@M@MMMM#M@###############@H%%;:==;+=-
   -.         .;+%+H%M##MM@MM@@#MM@MMM#MM@@###############@X%%;:--;/;-
   ,.         ,;++%H+@###MMM@MM#MM@MMMMM@MMM##############@X$+;=-,-:;=
 ..-.         .;+++%HMM#MMM@@MMM##M#@@@M@MM###############M$$+;--,,:-;
.. ,.         .;+%/+HMM#M#@MMMMM##M@@M#MMMM################$$+;=,,,;,=
   ,,          :+%%;X#@MMM@#@M#M##M@@M@M#@MMM##############$++:=,.,:=-
   .-.         =++++XHMM#M@@@MM##MMM@#M##M@##############M#X/+:=-,.-;-
   .-,         -/%/;%@M@MM#@MM####MMM#####@M###########MMM#X//:=-,..-:
   .=,         ./%+=$M@MM##MM#MM#####MM####@#########M@@@MMH+;;=,,.. =
   .--.         :$+/;$@MM#@@MMM####MMM@##############MHMM@@@+;:=-..  .
    ,--.        =$%/:XH@M#MMM##MM##MMM#M############M@HH@H@@%;:-,...  
    .,=,        ,%$::%HX@#MMM##@M#M##MMM###########M@HXHHHHH$;:-,...  
     .,,        .%$:-%HX@MMMMMMMM#M###M###########M@HX$@@XXXM+=-,.    
--====::=-------=%X+/%XX@@@@@M@@@MMMMMMMMMMMMMMM@@HHHXXHHXX@MX;:==--=-