######@#+##@@@#@###################++++++####@@@@@@@@@@@@@@@@@@#####+++++++'''+++''++++++#++++#+######:....
######@#+##@@@#@###################+++#++####@@@@@@##@@@@@@@@@@#####+++++++'''+++''+++++++++++++#+####:....
######@####@@@#####################+++#++#####+';;;';''+#@@@@@@#####+++++++'''''+''++++++++++++###+##+:....
######@####@@######################'++#++###;::;'#++;;'+###@@@@#####+++++++''++++'''++++++++++++++++++:,,,,
######@#++#@@@@####################+++#+'#';+##@#####';'+###@@@@####+++++++''+'++'''+++++++++++++++++';::::
######@#++#@@@#####################++##'+#+'+@@#@####+++++##@@@#####+++++++''+'++'';''++++++'++++++++''''''
######@##+##@######################++#+'#@#'+#####+;'##++#####@#####+++++++++'+++';:;'+++++''''++++++''''''
######@#+#####@####################+++'+###++###@#+';;+#####@#@#####+++++++''++++';.:'+++++''''++++++''''''
######@#++#########################+++;'##+#####@@@@#''++#@##@######+++++++''++++':`,'++++++'''++++++''''''
######@##+#########################+'''##+#@####@@@##';+###@@#@#####+++++++''++++':`.+++++++++'++++++''''''
######@#++#########################+';+#########@@@@@@#''+##@@@#####+++++++''++++':`,++++++++++++++++''''''
######@#++#########################+''#@@@####++++@@@@@##+###@@@####+++++++''+++++;,:++++++++++++++++'';'''
######@#++#@#######################+;+@@@@###';;;;+##@@@@#+###@@@###++++++++++++++;:;++++++++++++++++'';;''
######@#++#@@######################''#@#@@#++;;:::::;+@@@@+#@@@@@@###+++++++++++++';'++++++++++++++++'';;''
++####@#++#@@@@@##################+'+##@#+';;:::,,,::;'##@#+#@@@@@@##+++++++++++++';'++++++++++++++++'';;''
;;'###@#++#@@@@@@@###############+''#+##+;;::::,,,,,,::+##@##@@@@@@##+++++++++++++''+++++++++++++++++''''''
..:###@#++#@@@@@@@###############+''####';;::::,,,,,,::;##@##@@@@@@@#+++++++++++++''+++++++++++++++++''''''
``,###@##+#@@@@@@@###############+'+##@#';;::::,,,,,,::;+###@@@@@@@@#+++++++++++++''+++++++++++++++++''''''
.###@##+####@@@@###############+'##@@#';;::::,,,,,,:::'+##@@@@@@@@@+++++++++++++''++++++++++++++++++'''''
.###@##+#####@@@###############'+#@@@+';;::,,,,,,,,:::;+#@@@@@@@@@@@++++++++++++''++++++++++++++++++'''''
.#####++######@@@###++#########++##@#+';;::,,,,,,,,,::;'+#@@@@@@@@@@@++'++++++++''++++++++++++++++++'''''
.######+###@#@@@@##############+###@#+';:::::,,,,,,::::;+#@@@@@@@@@@@@#+'+++++++';;'+++++++++++++++++''''
.###@@#+######@@@@#############+###@#++';:::::::::;++''+++@@@@@@@@@@@@#+++++++++'::;++++++++'++++++++++++
``,###@@#+#######@@@#############+###@@#+##++':::;+++';';''+#@@@@@@@@@@@#+++++++++';:;'+++++++;::+++++#####
..:###@@#+########@@#############++########++';:::;'#@###+''+@@#@@@@@@@@#+++++++++';;;'+++#+;::.,;++++#####
,,:###@@#+########@@@#############+#####@'+#''+:,::';;';#':;'#@#@@@@@@@@@++'++++++';;;:;+##;,.,,,:'+++###@@
::;###@@#+#########@@@############+####+#+'';;':,:,:''';:::;'#@##@@@@@@@@#+'+++##+;;:::;+##';,,,,,,:;+###@@
;:'###@@#+#########@@@@@@##############''';;::;:,::,,:::::::'#@##@@@@@@@@++'+++++'::::'+#++#+'';:,..,;###@@
''+###@@#+#@@@@#########@@@@###+####@##;::::::;::::,,,,,,::;'#@##@@@@@@@@#''+++';:,::::;+++++#+#+;,,,'+'+#@
###########@@@@@@@#############+##@####'::::::;:,::,,,,,,::;'####@#@@@@@@#+'++':,,,:::,,'#+++####',,;+';'+#
#++######+#@@@@@@@###+++######++####@##+;::,,:;:,:::,,,,,:;;'#'@#@@#@@@@@@++'+':,.,,:;;'+##+#####',,;;;'++#
#++######+#####@@@###++#++++++'##@@#@@@+;:::,:;,,:::::,,::;''##@#@@##@@@@@@+'+':,..:;+####+######':::,.,'##
+''######+#####@@@###++#+++++'#@#@##@@##';:::;'::'':,::::;'''+#@#@@####@@@@++';;:,:+#++##########':,...,;##
#++######++#####@##+++#+###+++####@#@@@@+':::;++'::,,::;;';;';#@@@@####@@@@#+''+;:'###+#####@#####;,...,;##
#++######++#####@#++++######+#######@@@@#+;;;;;::::::::;;;;;+#@@@@@#####@@@#+++##+###+#########+++;,.,..,'#
#++####@#++#####@#+++#######';'++###@@@@#+;;;;'';'';;::::;;'##@@@@@######@@#+++######++##+####++'':..::..:#
+++######++#######++########'''+@###@@@@#+';+++++++'';:::;;'@#@@@@@######@@@++###@@#+''++'+#####+';::##;,,+
+'+######+######@@##########'+#@###@@@@@@+'';'';::;';::;;;'#@@@@@@@@##@@@@#@#+###@@+''''++++#####+++####;;+
'''######+#####@@@######@@#+'+@###@#@@@@@#+'''''''';::;;;'#@#@@@@@@####@@@@@@###@@#+''''+''+####@########+#
';'######+##@@@@@@##@@@@@@@#++++###@@@@@@@#+';'''';:::;'+##@@@@@@@@####@@@@@##+######+''+';+@@###@@#####@@#
''+########@@@@@@@@@@@@@@@#@#####@@@@@@@@@##+;;::::::;'+###@@@@@@@@@####@@@@#++######';;''+@@@@##@@@@######
''+####@#+#@@@@@@@@@@@@@@@#@##@@@@@@@@@@@@###';::::::'+#++#@@@@@@@######@@@@####++##';;''+@@@@@##@@@@@@####
+++####@#+##@@@@@@@@@@@@@@##+#@@@@@@@@@@@@####';;;;;'+++++@@@@@@@@@######@@@@####+##';'+''#@@@#@##@@@######
+++#@##@#+##@@@@@@@@@@@@@@##+#@@@@@@@#####++###++'+++++++#@@@@@@@@#@######@@#####+++++#@#+#@@#####@@#######
+++######+##@@@@@@@@@@@#@##+'@@@@##++++'+++++##++++++''''##@@@@@##@@@###+##@@###+#''###########@@@@##+#####
####@###++##@@@@@@@@@@####++#@';''''';;;'+++++++++++''''+#@@@@@@####@@@#####@#####;;+#########@@@@@#++#####
###@@##+++##@@@@@@@@@##+#'+#;:;;;;;;:::;'+''''++++'''';;+##@@@@@###@@@@@#####@###+''++#####++###@###+######
###@@##+++##@@@@@@@@@@#+;+#@@::::::::::;;+'''''''''''';;'##@@@@###@@#@@@@@#@@###++++++++++',,''++##+++####@
####@##+'+##@@@@@@@@@'::::'@@'::::::::::;'''';'''''';;;;'+###@@###@@#@@#@@@@#@#++++++++++++,,'++++++++#####
####@#+''+##@@@@@@@+,::::::+@#:::::,::::;;;;;;;;''';;;;;'+@##@@##@@@@#@@@@@@@@#++++++++++###+###++++++#####
####@#+''+##@@@@@@;.::::::::@@;::::,,,,::;;;;;;;;;;;;;;;''+#@@@@#@@@@@#@@@##@@@##++++++++########+++++#####
####@#+''+#####@@' ,::::::::#@':::::::,,::;;;;;;;;;;;;;;;'++#@@@#@@@@@##@@#@@@@#+####++++###+####+++''+####
####@#+''+#######.`:;:::::::+@#,::::::,:::::;;;;;;;;;;;;;;++#@@@@@@@@@##@@@@@@@##++#++++####+####++''''++##
###@@#+''+######;,:;::,,::::;@@:,:,::::::::::;;;;;;;;;;::;''#@@@@@@@@####@@@@@@#+###++++#########+';;;'''''
####@#+'++####++::;;:::,,:::;@@;,,::::::::::::::;;:::;::::;'+@@@@@@@@###@@@@@@##@#++++++#########';;;;;''''
####@#+''+#++++::;';;::::::::@@#,,,:::,:::::::::;::;:;:::::;+#@@@@@@@@@@@@@@@@###++'''''+#######+;;;;;'''''
####@#''++#+++':;'';;::::::::@@@:,,:::::,,,,,,:::::::::::::;'#@@@@@@@@@@@@@@@@@@@#+';;:;+#######+;;;;;;''''
####@#'''+++++:;;';;;;:::::::@@@;,,,,,:::::,,,,:;:,:,::::,:::'#@@@##@@@@@@@@@@#@@@#';:,:'#######';;;;;;';;;
####@#+'+++++';;'';;;;:::::::@@@#,,,,,:::::::::::::::::::::::;+#@@@#@@@@@@@@@@##+#+';:::;#######;;;;;;;;;::
####@#+'++#++;;''';;;;;:::::;@@@@:,,,,:::::::::::::,::::::;;;'+####@@@@@@@@@@@@##'+;;;::;'####@+;;;;;';;;;;
####@#+++##++;;''';;;;;:::::'@@@@;,,,,:::::::::::::,:::::;;;;;'+#@#@@@@@@@@@@@@@#'';;;;;;'+####+''''''''';;
####@#++###+';''';;;;;::::::+@@@@#,,,,:::::::::::::::::;;:::::;'#@@@@@@@@@@@@@@@@@@#::::;;'''+'';;;;;;;;;::
####@#####++';''';;;;;::::::#@@@@@:,,::::::::::::::::::::::::::;'#@@@@@@@@@@@@@@@@@@::::;;;::;:::::::::::::
####@###@##+''''';;;;;;;::::@@@@@@#,,,::::,,,:::::::::::::::::::'#@@@@@@@@@@@@@@@@@@::::;;;:::::::::::::::;
####@###@##+;'''';;;;;;;:::;@@@@@@@,,,::::,,,,::::::::::::::::::;#@@@@@@###@@@@@@@@#;;;;;;;;;;;;;;;;;;;;;;;
####@###@##+;'''';;;;;;;;;:+@@@@@@@',,::::,:,,:,:::::::::::::::::@@@@@@@#+++#@@@@@@#';;;;;;;;;;;;';''''''''
####@##@@##+;''''';;;;;;;;:#@@@@@@@#:,:::::::,::::::::::::::::::;@@@@@@@@''''+#@@@@#';;;;;;;;;;;;;;;;''''''
####@##@@##+;'''';;;;;;'';;@@@@@@@@@;:::::::::::::::::::::::::::#@@@@@@@@';;;;'+#@@@;;;;;;;';;;;;;;;;;;''''
####@@##@##+;''''';;;;''';#@@@@@@@@@#:::::::::::::::::::::::::::@@@@@@@#@';;;;'+#@@@#;;;;'';;;;;;;;;;;';'''
####@######+;''''';;;;''+'@@@@@@@@@@@;:::::::::::::::::::::::::'@@@@##@##;;;;;''#@@###'+#';;;;;;;;;;;;;;'''
####@#++++#''''''';;;;'+++@@@@@@@@@@@#:::::::::::::::::::::::::@@@@@@@@#+;;;;;''+###@##+';;;;;;;;;;;;;';'''
####@#++++#''''''';;;;'+##@@@@@@@@@@@@::::::::::::::::::::::::'@@@@@@@##';;;;;''';'+##@+;;;;;;;;;;;;;;;;'''
####@@++++#''''''';;;;'+@@@@@@@@@@@@@@#:::::::::::::::::::::::@@@@@@@@#+';;;;;'';;''#'++'''''''''''''''''''
####@@++++#'''''';;;;;'+@@@@@@@@@@@@@@@::::::::::::::::::::::'@@@@@@@##+;;;;;;'+;;'++''++++++++++++++++++++
####@##+++#''''''';;;;'##@@@@@@@@@@@@@@+:::::::::::::::::::::@@@@@@@@##';;;;;;'';;''';;'+#++######@@@@#####
####@@#+++#'''';'';;;''##@@@@@@@@@@@@@@@::::::;:;:::::::::::'@@@@@@@@#+;;;;;;''';'';;;;'+#+#####@@@@@@@####
####@@+++++'''';';;;;'+##@@@@@@@@@@@@@@@#:::::;;;:::::::::::@@@@@@@@@#@';:;;;'';';;;;;;'+######@@@@@@@#####
####@@+++++''';'';;;''#@#@@@@@@@@@@@@@@@@:::::;;;:;::::,:::'@@@@@@@@@@@@;;;;''+;;;;;;;;'+#####@@@@@@@@#####
####@@++++'''';;;;;;'+#@@@@@@@@@@@@@@@@@@#::::;;;;;;:::,:::@@@@@@@@@@#@@#;;;''';;;;;;;;'#####@@@@@@@#######
####@@++++'''';;;;;;'##@@@@@@@@@@@@@@@@@@@':::;;;;;;;:::::+@@@@@@@@@@###@;;;''';;;;;;;;'#####@@@@@@#@@@##@#
#++#@@++++''''';;;;'+##@@@@@@@@@@@@@@@@@@@@::;;;;;;;:::::;@@@@@@@@@@#++#@';''';;;;;;;;;'#####@@##@@@@@@@@@@
++'+#@#+++;'''';;;;'++@@@@@@@@@@@@@@@@@@@@@':;;;;;;;::::;@@@@@@@@@@@#+###';''';;;;;;;;;'######@#@@@@#@@@@@@
#+++#@#+++;'''';;;;'#+#@@@@@@@@@@@@@@@@@@@@@;;;;;;;;::::#@@@@@@@@@@@#####;;''';;;;;;;;;'###@@###@#@##@#@@@@
####@@#+++;'';;;;;''#+#@@@@@@@@@@@@@@@@@@@@@@;';;;;;:::+@@@@@@@@@@@@####';;''+;;;;;;;;;'######@###@##@###@@
####@@#++''''';;;;'+++#@@@@@@@@@@@@@@@@@@@@@@#';;'';::+@@@@@@@@@@@@@###+';;''+;;;;;;;;;'##################@
####@@#++;''';;;;;'+++@@@@@@@@@@@@@@@@@@@@@@@@+;;'';;+@@@@@@@@@@@@@@#++';;;''+;;;;;;;;;'#############@#@@#@
####@@#++;'';';;;''#++@@@@@@@@@@@@@@@@@@@@@@@@@;;'';#@@@@@@@@@@@@@@@+'';;;;''';;;;;;;;;'++#################
####@@#+;;'';;;;;'+#++@@@@@@@@@@@@@@@@@@@@@@@@@#''+@@@@@@@@@@@@@@@@#';;;;;;''';;;;;;;;;'+################''
##@@@@#+:;'';;;;;'+#++@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@#';::;;;''';;;;;;;;;'+###############+;;
##@@@@#:;'';;;;;''++++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+';::;;;'+;;;;;;;;;;'+##############+';;
##@#@@+:;'';;;;;'+++++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#;@';;::;;;'+;;;;;;;;;;'+##############+';;
#####@;;;;;;;;;;'+++++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#;;#';;::;;''+;;;;;;;;;;'++#############+;;;
######;;;;;;;;'''+++++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+;;#';;::;;''';;;;;;;;;;'++############+';;;
######;';;;;;'''+#++++#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@';;+';;::;;'+;;;;;;;;;;;'++############';;;;
######'';;;;''''++++++#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;;'+';;:;;''+;;;;:::::::;++#####+++++#+';;;;
######;;;;;;''''+#++++#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#;;'+';;:;;''':;:::::::::'++++++++++++++'';;;
##+##'';;;;;''''+######@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+'''+;;;;;;''';'''''''';''++++++++++++++++'''
#####;';;;;;';''+######@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#++#+;;;;;''++++++++++''''++++++++++++++++#++
##+##;';;;;;;;;'+###++#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#####';;;;;;'++###++#++';''+++++++++++++++####
####+'';;;;;';;'+++++++#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#####';;;;;;'++##++++++';''+++++++++++++++++##