@@@@@@@##@@##########$$$$$$$$$#$&%=?>)*!;;;;;;!!*!***))))+>????=?=$#####@@@@@@@@
@@##################$$$$$$$$##$&=?+)*!;;:::--~~~~:;!***)))+>>??>>%$########@##@@
@##################$$$&&&$###$%=>+**!;:::--~^^,,,,~:;!*))++>??>>=$#######@#@@@@@
##################$$$$&$$###$&=>+)*!;;::---~^,....,^-:!*++>????%&$######@@#####@
##################$$&%&&$$$$&%=>+)*!;;::---~^,.....,^~:!)+>?==%%&$$#######@####@
#################$$&%%%%&&$$&%=?+)*!;;:::--~^,,....,,^~:!+?==%%%&&$$######@#####
################$&&%%%%%&&#$&%=?>)*!;;:::--~^,,.....,^~~:*?==%%&&&$$$######@@###
################&&&%%%%%&&#$&&=?>)*!!;:::--~~^,....,,,^~-:)====%&$$$############
###############$&&&%=%%%&$$$&&%?>)*!;;:::---~^^~:*)+))!-~-:+%===%&$$############
###############$&%&%=%%%&$$$&&%?+)*!;;;:::::;)>=%=?)!;!)!~-;?%%====&$$##########
###############$&%&%=%%%&$$$&&=?+)**!;;;;!*>?=%==>+);:-~:-~~!%&&&%=??%&$######@#
###############$%%&%%%%%&$$$&%=?>++)*!!;!)>?=?=%%&&%%&?>*--~-+&&$$$$&===%&######
###############$&%&%%%%%&$$$$&&&%%=?+)*!!*+>>=%$$&%>=&$$%>!~~:?&&$$$&&&&%&&$####
###############$%&&%&%&&&$####$$$$$&%?)!;:!*>=&$$##&#$$#$?-~^~!%$&$$$$&&&&&&$$##
################%&&&&%&&$$#########$$&?!~^-!>%$$&&$&&$$%)-^^^~-+&$$&&$$$$&&$&$$#
################%&&&$&&$$####@###@###$%!^,^-*%$&%%%=%&=;,.,,^^~!?&$$$&&$$$$$$$##
################&&&&$$&$$##########@##&!^,,,~+=%%&&%=)-,...,^^~:+%&&&&$&&$$##$$#
################&&&$$$$$$$######$$$#@#$!^,,,,~;!!!!:-^,..'.,^~~-)=%%%%%$&$$$$$#$
###########@@###$&$$$$$$$######$%&&$##$!^,,,,^^~~~~^^,..''.,^~-:*>?=%%%%$&$#$$$#
###########@@###$&$$$$$##########$&&&#&!^,,,,,,^^^^^,,.''.,^~--:!+*+=%%=#$$##$$$
##########@@@####&$$$$$####@@###&%=%&$=;~^,,..,,,,,,,....,^~--::!*!*)??>##&##$$$
##########@@@####$$$$$#####@##$%=??=&&+;~,^,..,,,,,,,,,,^~---:::;!;;;;!)##$$#$$$
#########@@@@@#$#$$#$$#######&%=???=&&?*:-~^,,,^^^^,,^^~~--::::-:;--~-:>##$$$$$$
##########@@@@#$#$$#$$######$&=???=%$$&=)**-^^^^^^^^^^~~---::::-:;-~~-*&$$&$$$$$
##########@@@@#$$#$##$######$&%===%&$$$&?+%=;^^^^^^^~~~---::::---!:-;>$&&$&&&$$$
#########@@@@@#$$############$&%%%%$#$$#%*-::^,,,^^^~~----:::--~:=%%$$$%&&%%&$$$
########@#@@#@#$$############$$&&&&$###$=+-,,,,..,^^~~--------~~;&##$$$%%%%%&&&&
##########@@#@@#$$#########@##$$$$$###$=;:;^,,...,^^~~~------~~~;&#$$$&%%%=%%%%%
$#########@##@###$#######@@@@##$$$$$$$&?)))!-~,.,,^^~~~~---~~~~~!&#$$$&%%%=%%=%=
$##########@@@@##########@@@@##$$$$$$$$&%=?>>)*-^^^^~~~~~~~~~~~-!&#$$&%%%%=%%===
###########@@@##$########@##@@##$&%$$$$$&&%%%==>*-~~~~~~~~~~~~~-*$$$$&&&&%%&====
##########@@@@@#$#########@@@@#&?!!$$$$$#######$&>-~~~~~~~~~~~-:*$$$$&&&$%%&====
##########@@@@##$#########@#&=?=>!*&&%???=&####&);-~~~~~^^~~~-:;*##$$&&$$%&&=%%=
$########@@@@@##$$%=$$==??>>*:>&%=??>)*)>?=&$&>:-;~~^^^^^~~~-:!-*##$$&$$$&$%%%%=
$########@@@@@##&+-~;++>=%&&=?===>++))?==%%%?+:;*-~~~^~^~~~-:*;-)##$$$$$&&$%&&&=
$#########@@@@#$&+;-~-*?=&&&%?>>))>?==%&&?>>>++>!-~~~^~~~~-;)!--)###$$$$&$$%&&&%
$###$$####@@@#&%%%?*-~:?%==>)!)>>=%%&&$#&=====?)-~~^^~~~-:!+*:-:=###$$##$$&&&$&&
$$$&=$$$##@@#&%=%%%=?=%=>)!!)>=%%&&%%$$$$&&&%>;^^^^^^~~-;+>)*)?$########$$&$$$&&
$&&&=&#$%=????==%%%%=?+!!!)?=%&&&%+:;$$$$$$%+;~,,^^^~-:*=%&&#@@@########$$&$$$&&
$&&%&&&=*;:--:>&&=>*!;+?==%%&$$#&>!!=#$$$$%?)*;-~~~-:!>$####@@@@##@#####$$$$$$&&
$$&&&%=?>>++?%=+***!)>%%&&&$#@#$=++>#@#$$&%=?>+*!;;*>&######@@@@@#@#####$$$$$$$$
$$%==??==%&$%);;*+?=%&&&&%>$@#$%?++#@@@#$&%%====??=$#&$$$$==@@@@@@@#####$$$$$$$$
$&%====%%=?)+?+?%%%&&&&&%+~>##&=>)+#@@@@@#&%%%%&&$$$&>$####$@@@@@@@@####$$$$$$$$
####$?*!:+>>=&%&&&&&&&%&%>~)#$&?+!)@@@@@@@@@#$##$&##$&#@#@#$@@@@@@@@#####$$$$$$$
###&%!-;-)&&&$$&&&%>=%%%###&&%%?);>@@@@@@@@@@###$$#@#%$####&@#@@@@@@#####$$$$$$$
#####=**:!%$&%%%%&?)*%==###&==?>>>$@@@@@@@@@@@@##$###%>&$&&=@@@@@@@@@####$$$$$$$
####@$?))>%====%%%?);==?%&%=?>>+?#@@@@@@@@@@@@@@#&$$$==###@$@@@@@@@@@####$$$$$$$
######&>>?=====%%%%=!==?>>+++))+$@@@@@@@@@@#@####&&##&$####$#@@@@@#@@@###$#$$$$$
#####&=?>?=====%%%%%=?>+****!*)$@@@@@@@@@@@@#%&$#$$$$%%$@@#&#@@@@@@@@@@####$$$$$
#####&=?>>?====%%%%=>+*!;:!!!!%@@@@@@@@@@@@@#&$&#$#$$###@@@$$#@@@@@#@@@@####$$$$
#####&=>+)+>???===?>)*;;::!!!>##@@@@@@@@@@@@#####$####@@#@##%###@@#@@@@@@####$$$
#####&=>)**)++>??>>)*!;;;;!*+$@@@@@@@@@@@@@@@####$#@@$$@####??$####@@#@@@@####$$
#####&=+*!!!**)+++)*!!;!!!)?#@#@@@@@@@@@@@@@@#$%$&$#$;&#@#$%)^-=#$##@@##@@@####$
#####&=+*;;;;;!)))**!!!!*)%#@@@@@@@@@@@@@@@@@#&%$$$&%)#@#$?;^^~;$####@##@@@@####
#####&=+*;::::;*********+&@@@@@@@@@@@@@@@@@@@#$$$$#$$%#$*;-!*)?&#####@#@@@@@####
#####$=+*;::::;!**)))))>$#@@@@@@@@@@@@@@@@@@@@@##$####$$&%%%==?&#$$##@##@@@@@###
##@@#&=+*;:::;!*)))+++?##@@@@@@#%$@@@#$&%=??%$###$####$%+**!;-:=$>^%#@@@@@@@@##@
#@@#$&=>)!;;;;*)++>>?=#####@@@%?%@@@#&%=?>*;-:>$$$$$&=):~^,^^~-==*^&#@@@##@@@###
@@#$&%=>+)*!!!)++>?=$#####@@#=%#@@@@$%==?+*:-~-*?==>)!;-~^,,,,^=),?##@@@#@@@####
@$%%%%?>++)*!!)++>?$#####@@#%&#@@@@$===?>+!:-~~-;!!;;:--~^^,,,^=:;##@@@##@@###@@
#%????>+)*!!;;**)>$#@@###@#&$@@#@@$?>>>>+)!:-----::::-~~~^^^^^;=*&##@@@##$=$##@@
$=>+++*!;;;::;!*+&@@########@@@@@$?+)))))!;:---------~~^^^^^^-?$=####@@&!~)#$&@@
$?+)**;:::::;!!)%#@###@##$#@@@@@$>)*****!;;:--------~~~^^^^^~:%#######?)!^%#=$@@
$?)*!;:---::;!*%#@@@@@@#%#@@@@#&+!!!!!!;;;::-------~~~~^^^^^~!&###@@#?*#))##?@@@
&>)!;:-----:;!=#@@@@@@$=#@@@##?*;;;;;:;:::::-------~~~~^^^^^~*$###@@#*$#&##>$@#=
&>*;:--~---:;)##@@@@#$%#####%);::::::::::::------~~~~~~^^^^^~)$###@@?%#@#@&?#?*?