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