..............................................................................................................................................,::,,,.............................................................................,,...........,.,,,,,,,.....,.....,.
...............................................................................................................................................,,..,............................................................................................,.,......,,.,.....,,
...................................................................................................................................,,,.........................................................................................,........................,,,,.,......
.............................................................................................................................................................................................................................,....................,::,,,,,,.,,......
..................................................................................................................................................................................................................,..........,....................:::,,,.,..,.,.....
...........................................................................................................................................................................................,.....,.................,,,,,,,,.......,,,............,:,,.,....,...,....
.................................................................................................................................................................................................,..,,.,,...................,,,........,,,.......,,,.,,.........,...
........................................................................................................................................................................................................,,..,,,,,,.......,........,,,...,,...........,,..........,..
..............................................................................................................................................................................................................,,,.,,,,..,,,..,,...............,,,,..,,...........,,.
................................................................................................................................................................................................................,,,,,,,,,,,,,,..,,,,,,,,,.....,.....,,...,.........,
....................................................................................................................................................................................,..........,......,..............,..,,,.,,,,,.,,,,..,,,,..,.,,,.....,,..........
....................................................................................................................................................................................::....,...,:::,,,,+:.............,..,....,,,,,...,,..,,,,.,,,,,,,,,:,,,.........
...................................................................................................................................................................................,,,.,:,,::::+::::+:,............................,....,,,,,,,.,..,,,,.,,,,.......
..................................................................................................................................................................................,,,::,::,++::+%+%+++,........................................,...,,,,..,.,:,,.....
................................................................................... ..................................................................................,,,,,,,,,,,,,:::::::,,,,:+++++::...........................................,,,....,..,.......
.............................................................. ........... ............. . ................................................................,,.,,,,,,:,,,,,,,,,,,,,,:+%+:,:+%#%+:,.........................................,,..,........,......
............................................ .................. .................... ...... .................................................................,,.,:,,::::::,,,:+++%%%+++%#%+:+++++%%+::,......................................................,.....
..................... ..................... . ..... . ....... ...............................................................................................,:+:+%%++%%++:,::+++%++###@#+:+%%++++:::::.....................................................,,...
..................... ...................... ..... .. ... ............... .................................................................................:%++%%%%%%++++:::%##%#@@@@@###++%%++::,,,+:,...,................................................,,..
...................... ....................... .............................. ....... . ....................... ......... ..... .........................,,,,:%%%%##%%#######%++%#@@@@@@@#@@#####%:,,,,::,,,:,.................................................,,
...................... .................... .. ............................... ...... .. . .... .. ... ...... ... .... ..... .....................,,:::+%####@@@@##@@####%%#@@#@@@@@@@@#@####:.,:::::,::...................................................
...................... ...................................................... ............ . . . .. . .. ... . .. . .... .. .............,::+%##%###@@##@##@@@@@#@##@@@@##@#######@###:,:,,::,::...................................................
.............................. ............................................... ............. .. ....... . ... . .. . ... ..... .,,:+%%#############@@@@@@@@@@@@#@###%%#%#%%%###%:++:::+,:,,.....................................,.,.........
...................................................................................... ....... ........ ..... .......... . ... .. .. .. .,:++%###################@@@@@@@@#@####%%%%######%+%#++:%+,,,....................................,,,,,........
........................................................... . ............................................ ..... .. .... .. ..... . ............,+++%#########%%%%%%#####@@@@#############%#####@#:+#%%::%+,:,........................... .........,,,........
.............................................................................................................. ................. ................. ,::+%########%#%%%%%%%%%###@@@@@@@###########@##@#@@+++%#%::++:, ....................................,,.........
...................................................................................................................................................,::+#########%%%%%%%%%%%###@@#@@@@@@@######@@#@@##@###+%:%#%:,+%:. ...................... .......,,..........
..................................................................................................................................................,:::%########%%%%%%%%%%%%####@##@@@@#####@@@@@@@@#@@####%++%#+:,++:.. . ................,...........
.................................................................................................................................................,::+%#######%%%%%%%%%%%%%%#######@@@@@###@@@@@@@@@@@@@@###%%###+:+++,,......... . . . ..... .......
.....................................,,.,.......................................................................................................,,,+#%######%%%%%%%%%%%%%%%############@##@@@@@@@@@@@@@@####%###%+:++::,............. . .. . .... .......
...............................................................................................................................................,:,:##%%#####%+%%%%%%%%%%%%##############@@@@@@@@@@@@@@@@##@###@##%%+%+,+.................. . . .. ...... ......... .
...,,..........................................................................................................................................:,,%#++####%%+++%%%%%%%%##################@#@@@@@@@@@@@@@@##@@@@##%%%%+::+............ ..............................
....,...........................,,......,.....................................................................................................,:,:%++###%%%%+++%%%%%%%%####################@##@@@@@@@@@@@@@@@@@@#%%%%++:+,..........................................
....,..........................,.............................................................................................................,,,+%++%###%%+++++%%%%%%%%####################@##@@@@@@@@@@@@@@@@@##%+%%%++::..........................................
.............................................................................................................................................,,:++:%%##%%+++++%%%%%%#%%%#####################@@@@@@@@@@@@@@@@####%%%%#%%+:..................................,,......
..,...................................................................................,......................................................,:+%++%###%++++%+%%%%%%%%%%#####################@@#####@@@@@@@@@##%%%%%%##%%+,................................,,,..,,,.
..,,,........................................................................................................................................::%%+%%##%++++++%%%%%%%#%%%###############################@@@@####%+%+++%##%%+...............................,,....,,,,
...,,,........................,......,.,,....................................................................................................::%+:%%%%%+++++%%%%+%%%%%%%#####################################%%%+:,::+##%%%,........................................
........,.....,......................................,.,....................................................................................,,:%:+%%%%%+++:+%%%+%%%%%%%%%###################################%%%++:,,:+%@%%%+........................................
........,..........,.....................................,..,...........................,..................................................,::+%:++%%%%+++++%%%+%%%%%%%%%##########%######%#%#%%%%#########%%%++::,,,,:##%%%,.......................................
...................,.........................................,.............................................................................,,:%::+%%%%%+++:+%%%%%%%%%%%%%%%##%####%##%#%##%%%%%%%%######%%%%%%++:,,,,,:%###%:.......................................
........,........,,,,.,.....................................................................................................,...,..........:,:%:+%%%%%++++:++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+++:,,,,::#%#%%....... ...............................
...,,,,,,.,,,,,,,,,,,,,,,.....,.....................,......,..........................,..........................................,........,:,++:%%%%%%++++++++%+%%%%%%%%%%%%%#%##%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+++::,::+:+%+%%,......................................
.......,,,,,:,,,,,,,,,,,,,,....................,....................................,,,,,,..............................,......,,,,,,.....:::%,:%#%%%%++++++++%%%%%%%%%%%%%%%#%#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+++:,:::+++%%%+:......................................
,,,,..,,,,,,,,,,,.,,,,.,.......................,,.................................,,,,,,.,..............................,,.,....,,........::++:+%%%%%%+++++++++%%+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%++:::::+++%%++:......................................
..,,,,,,,,........................................................................,,.....................................,...,...........,+,+:::%%%%%++++++++++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+::::++++#+++......................................
..............................,......................................,.,,.....................................................,,.........,:,:::+%%%%%++++++++++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%++::::+++%%++............................,.........
...........,.........................................................,..........,,..........................,.................,,........,:,:::++%#%%%+++++++++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+++::+++:%#%:......................................
...,............,.....,................................................................,.....................................,,,...,,..,,::,::%%###%++++++++++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%++++++::+%%+,.....................................
...............,......................................,........................,,.....,,,......................,...........,,,,,.......,,::,+:%%##%%++++++++++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%++++++::%%+,.....................................
............................................,...............................,.......,..,,..................................,,,::,.....,,.::,:++###%%++++++++++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%++%++::%%+:...............,.....................
........................,.....................,...........................................................................,,,..,.....,,,,::,:++##%%+++++++++++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+%+++:%%+:...............,...........,,,.......
.........................,,............,...............................,................................................,............,,,,::::+%%#%%+++++++++++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+++:+%+:..........,,,,...........,...,,,.....
.................,.......,.......,....,,..........,...............................,...............,..................................,,.,,::+++%%%++++++++++++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+++:+%+:,............,...............,:,.....
...,............,,......,,,,,,,..,,.,,,,...,.,.,..,,...............,.....................................,....................,....,,,,.,,,:+:++%%%+++++++++++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%++:+%+:,.................. ................
.......,....,...,....,,,,,,:,,....,.,.....,..,.,,......................................................,,............................,,,,,::::++%%++++++++++++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%++:+%+,,.................. ................
...,,.................,,,.,,,,,,..,,,..........................................................................................,.....,,,,:::::++%%++++++++++++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%++:+%+::.............. ...........,.........
. ....,...............,,.,,,,,,,..,,,,..,,,...,,....................................,,..,,..................,...........,,....,,.....,,,,:+:::++++++++++++++++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%++::++:,..,....................,............
........,....,.......,,..,,,,,,,.,..,...,,,,,........,...................................,..,.................,,...,..,.,,..,..........,:++::+++++++++++++++++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+::+::,..,......,,..............,..........
.......,,....,............,:,.,,.,,,,,.,...,,.......,..................................,,.,.,................,,,...,,,,..,..,........,.,+++::+++++++++++++++++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+++:++:......,,,....,.,,...,...,............
.................,............,,.,..........,.........,..........................,.......,,,,............,,.,,,,.....,......,.........,::++::+++++++++++++++++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+++:+++........,,.,......,,,,,,.............
...............................,,................................,,...............,,.....,............,,..,.,,,,,...,,,...............,:+%+++++++++++++++++++++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+++:++:.....,.,.,,,............,............
..,,....,...,.....,..........,,,,,,,,.....................................................................,,,,.,,...,,,..,,,.,,.......::+%+:+%++++++++++++++++++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%++++++:............,,,..,..,,,..............
..,..,,,,....................,,,,,,.............,.........,..........,...,.............,,..................,,,,,,..,.,,.,.,.,:,.......::%#%:++++++++++++++++++++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+++++++..........,,,,,,,,.....,.............
.....,.....................,,,,.,..............,,,..,,..,.,,..,...,,..,,..............,,,...,,...........,,,,,,.,..,.,.......,,.......++%#++%%+:+++++++++++++++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+%%%%%%%%%%%%%%%%%%%%%%%%%%+++++++,............,,.,.,,,...,.......,,,..
.....,......................,,...........,.,,.,,,....,.,.....,....,,..................,,................,.,,....,..,..................++%%:+%%+::++++++++++++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+%%+%%%%%%%%%%%%%%%%%%%%%%%%%++++++++........,...............,........,,,,
.........................................,,,,.,,,,,...,,...........................,,,,,:..............,.......,,,,...,.........,::,..::%+::,,,,::+%+++++++++%%%%%%%%#######%##%%%%%%%%%%%%+%%%%%%%%%%%%%%%%%%%%%%%%%%%+++++%+:.....................................
............................,.............,..,,,,,,..,,,,,.,,,...,,,.....,.........,,,,::.....................,,,,,,,..........,+%%#%,,:%#%%+:::,,,,+%%%++++%%%###################%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+++++++%+:...........,....,,.,..,.............,
...........,.....,....,,.,,,,..,,,.,....,,..,,,,,,,....,,...,,,,................,...,................,.......,,,,,,.,..........++++%##%:+::::::::::,:%@@@@@@@@@@@@@@@@@@@@@#########%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%++%++::++++:..................,....,..,.,........
......,........,......,,...,,,,,,,,...........:,.,,.,,,,,.,...,,,......,..,..................................,,,..,...........:%%#%%%###+:::,,,:++::+%@@@@###########@@@@@@@@@@######%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%++++++:+%%%:..........,,.........,....,..........
......,,...,....,..,...,,..,,,,,,.................,.,.....................,.......................,,,,,,,.,,,...............::+####%%%###%+:::::+++%+%@@@##################@@@@@@@@###%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+++++::++%%,...........,.,....,,..,..............
......,,..,,,,,,,....,...,,,,,,,,...,.............,,.........................,..,.................,,.,.,.,.,,,..............::%###%%%%###%+++::::+++++%#@%#######################@@@@###%%%%%%%%%%#%%#########%%%%++++++::++%%:.....................,,..............
.,,,,,,,,..,.,,......,..,,....,,,.,,,,,..........,,,,,,,,..................................................,,,..............,:###%+%#%%%%++++::::++++%+%#%%######@@@@@@@@@@@@#######@@@@##%%%%%##################%+%++:+::++%%,.....,.,,,.,,.,,,,,,,,,,.............
,,,,,.,,,,,,,.,.,,......,,....,,,...,,..........,,,:,,,............,,,...........,.....,,............,,,..........,.........,:###++%##+%%+%%+::::+++++%+#%%###@@@##@@@@@@@#@@@########@@@@@@########@@@@@@@@@@####%%+:+:::++%%,......,,,.,,,.,,,,,,,,,,,...,........
,,,,,,.,,,,,,,,,.,,,.....,.,,,,,:..............,,,.,,.,................,...,.....,.....,.............,,,...,...........,....,+##%+%%##%+%%%%+::::++++++%#%%##@@#@#%#@@@@@#%#@#@########@@@@@@@@@@@@@@@@@@@@@@@@######++::+++%%,..........,.,.,......,,,.............
,,,,,,,,....,,,....,....,,,,,,,::,..............,,................,,.,,,,..,,..,.,,..,.............,.,,,,..........,...,....,%##%+%%%%%+%%%+++::+++++++%#%####%%%###@@@@@#%############@@@@@@@@@@@##########@####@@@##+:::++%%,.....................................
.,,,,,,.,,.,......,....,,,,,,,..,...............................,.,,,::,....,.,......,...............,......................,%##%+%%%%%+%%%+++:::+++++%%#%##%%++%%####@@##%############@######@@@#####################@@#%+:%%,.....................................
......,.,.... .,.,,.....,,......................................,,,,.,,,,,..,,,....................,.,,.,....................%#%%+%%%%++%%%++++::++++++%#%%+++%++%%##################%##%#%%%###@#####@@@@@@###########%%#@#%+,.....................................
... .....,.....,:... ...................,..,.....,,............,..,,,,,,..,,,,,.,,,..............................,,.....,..%#%%++%%%+%+%++++::++++++++#%%+%%%%%+%%#################%#%%%%%%%##@###@@@@@@@@@@@#########+:+%@@%:.................,.........,........
..... ......,.....,..,......,.,,..........,,.,.....,,..............,,,,,,,....,,..,,,,,,........................,,.......,..,+%%+++%%%%#%%++++::++++++++%++%%+%%%%%###########%%%###%###%%%%%%##@###@@@@@@@@@@##@@######%+%+%@@@:.... .....................,........
......,,.........................................,..,,,.............,:,.,,.,,,,,.,...,:,..............,...................,..:%%++%%%%###++++::::+++:+++%+%%%%%%%%%%#############%#%#@##%%%%%%##@###@#@#@@@@@@#%#@@#####%+%%#@@@,.........,..............,..........
. .,.,,...,,,..................,........................................,.,..........,,...................................,.:%%++%%%%###%+::::::+:::+++%++%%%%%%%%%%%%%%%%#%%###%%#@@#%%%%%%%#@@%###@@##@@@@@#%%#@@####%+%+%@%,... ..,.....,.......................
......,. ..,......,.....,.....,,..............,.........................,,....................................,............,.%%++%%%####%+:::::::::::++#++%%%%%%%%%%%%%%%%##%#%%%%#@##%%%%%%%%@@#%%######@@@#%%##@@@###%+%%%#+%+,............................. ....
..,,..,,...,..,,,..,,..,,,,..,.............,.,.,,,,............,.......,,,,,,,,,.......................................,......+%%+%%%####++:::::::::::++%+++%%%%%%#####%#%#%%%%%%%#####%%%%%%%%#@#%#######%%#%%%###@@#%%%+%++#+%%+.............................. ...
.,,....,,.,,,,:,,...,.,,..,.,,.............,...............,...........,,,,,,,................................................:%%+%%#####::::::::::::++:+%++%%%%%%%%%%%%%%%%%%%%%#####%++%%%%%%#@#%############%%%%#@##%%%++%%%%#%.........,........................
.......,,,,,.::,,...,.,.....,,...............,.......................,,,,.,,..................................................,%%+%%####%::::::::::::++::%++%%%%%%%%%%%%%%%%%%%%%%###%+++%%%%%+%#######%######%%%%%%###%%++:%%%###..................................
....,..,,,..,,,,,,..,,,,..,,,...........................,..,..................................................,,..............,+%+%%%###+::::::::::::++::+#++%%%%%%%%%%%%%%%%%%%%%##%++++%%%%%+%##%%###%%%%###%%%%%%##%%%++:#%%%##..................................
.......,,,,,,,,,,,...,,,..,,,.,,........................,,.,.....,..,..........................,..............................,:%++%%##%+:::::::::+:::::+++%%%%%%%%%%%%%%%%%%%%%+%#%+++++%%%%%+%##%%%###%%%%%##%%%%%%##%%+++%%%%##..........................,.,.,...
.,..........,:,.,,.,,,,,.,.,.::,...........,..,,..................,,,...........................,..............................:%%+%%##%%:::::::::+::::++++++%##%%%%%%%%%%%++++%%#%++++++%%%%%+%#@%%%%%###%%%%%%%%%%%%%%%++%+%%%%%............................,,,,,.
.,...........,,..,.,,.........,,..........................................,,..........................,........................,+%+%%%##%:::::::::++::::++++++%%%####%%%%%%%%%###%+++++++%%%%++%%@%%%%%%####%%%%%%%%++%%%++%+%%%%%..................................
...,.............,.................................................,,...,.,,.,.....................,...........................,:%%++:+%%::,::::::::::::++++++%%%%%###########%%+++++++++%%%%++%%##%%%+%%%###%%%%%%%++%%++%%+%%%#%........................,..,..,,,.
.,,,,,..........,,,...,,.......................................,........,..,..................,......................,.,......,,:+%%+:+%%:,,:::::::::::::++++++%%%%%%%%%+%+%%%%%+++++++++%%%%%+%%%#%+++%%%%%##%%%%%%++++++#+%%%%#%...........................,.....,
...,,..........,,,,,,,..............................................................................,......................,,,,:::%%+::+%:,,::::::::++:::++++++++%%%%%++++%%%%%%%++++++++%%%%%++%%%##%++++%%%%%%%%%%+++++%%+%%%%%+............................,,,,..
..............,,,,,,.,.......................................................................................,.................,::+%%:+++,,,::::::::+:::::+++++++%%%%%%%+%%%##%%%%+++++++%%%%+++%%%+%##%++++%%%%%%%%+++++%+%%%%%%:..................................
..............,,,..,..................................,...............,......................................................,..,:+%%::++,,::::::::::+::::+++++++%%%%%%%%%%###++%%+++++++%%%%%+++%%%%%%%##%%%%%%%%%+++++%%%%%%%%%,..................................
.......................................,..............,,...................................,,,...................................::+++:++,,:::::::+++:+:::+++++++%%%%%%%%%###%+++++++++++++%%%++++%%%%+%%%%%%%###%%%%%%+:%%%%%%%%.................................,.
............,..........................,,..................................................,..................,.,,................:++::+:,,:::::::+++::::+++++++%%%%%%%%%####+::+++:::++++++%%++++%%#%%+%%+%++%%%%%%++:::+%%%%%%+...................................
............,......,.......................................................................................,..,.,.,...............,,:::::,,:::::::::++::::++++++%%%%%%%%#####+++++++:::++++++%%++++%%#%%%%+++++%%%%%+++::%%%%%%%,...................................
.........,,,,.,,..,,.......................,............................,,..,..................,........,.,,..,,....................,:+::,::::::::::::::::+++++%%%%%%%%##%%%%%%%%%%+++:+++++++%++++++#%%%%++%++%%%%%+++:+%%%%%%+....................................
..........,.....,.,,,,......................................................,,............................,,.,,....,.,..............:++::,,::::::::::::::++++++%%%%%%%##%%%%%%%##@@#%++++++++++++++++%#%%%%%+++++%%%+++:+%%%%%%, .....................,.............
....................................................................,,.....,,,.,,..................,.,........,.....................++::+,:::::::::::++:++++++%%%%%%%###%%%%%%%######%+++%%+++%%%%%%%%#%%%%%%++++%%%+++:+%%%%%+.......,.............,.,...........,,
.....................................................,...............,..,....,........,........,,.,...........,..,.................,::::+,::::::::::++++++++++%%%%%%###%%%##%%%%%%%%##%+%%%+%%%%%##%%%##%%%%%++++++++++++%%%%%,..................,,.,,..............
..............................,......................,...................................,,,.,,,..,..........,.,,..,,...............:::+%,::::::::::++++++++++%%%%%%##%%%%%%%%%%%%%###%+%%%%%%%#####%%###%%%%%%++++++++++%%%%+......................,...............
..........................,....................................................................,.......................,............::++%:::::::::++++++++++++%%%%%%#%%%%%%%%%%%%%%####%%%%%%%#####%%%%##%%%%%%++++++++++%%%%,...........,................ ........
..................................................,...,..,..........................................................................,++%#:::::::::+:++++++++++%%%%%%%%%%%%%%%%%%%%%%####%%#######%%%%%%###%%%%%++++++++:+%%%+.............. ......................,.
...............,,...................,...............,.,...,........................,,.,..............................................:%%#::::::::::+++++++++++%%%%%%%%%%%%%%%%%%%%%%%##########%%%%%%%%%##%%%%%%%++++++:+%%%,........,.,..,........... .........,.,.
..............,,.......,..,,.....,............,.,.....,.....................................................,.............,...........:::,:::::::::+++++++++++%%%%%%%%%%%%%%%%%%%%%%%%########%%%%%%%%%%##%%%%%%+++++++:+%%:....,......,..,....................,....
..............,...................,,......,,.,,...,..,..,................................................. ..,...,,,,...........,.....,::,::::::::++++++++++++%%%%%%%%%%%%%%%%%%%%%%%%%######%%%%%%%%%%%%##%%%%%%++++++:+%+...................,..,,.,............,..
.................................,.......,,,,.,...,...,.....,.....,................................ .........,.,.,,,,,.....,.,,,......:::,::::::::++++++++++++%%%%%%%%%%%%%%%%%%%%%%%#######%%%%%%%%%%%%%#%%%%%%%++++++:++,..................,,,....,.,,.,.,...,....
..................................,,.....,,,................,.....,............................................,.,,,.,.......,,.......::,,:::::::++++++++++++++%%%%%%%%%%%%%%%%+%%%%%%%%###%%%%%%%%%%%%%%##%%%%%%++++++:+:....................,,,.,......,,,,,.,....
...........,..........................,,............................................................ ............,,.......,...........:::,::::::::+++++++++++++%%%%%%%%%%++++++%%+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+++++:+:....................,..,,,,........,.,....
............................,..................................................,.............................,....,,..................::,,::::::::+++++++++++++%%%%%%%%##%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+++++:++....,,................,..,:,,.,..,,,......
...............................................................,.............................,.....,,...........,..,..................::,,::::::::+++++++++++++%%%%%%#################%%%%%%%%%%%%%%%%%%%%%%%%%%%%++++++++......,................,,,,,,,,..,..,.....
.....................,...............,....................,.................................,......,,..,......,.,,.,,.................::,,:::::::+++++++++++++++%%%%%#%++%%%%%%%%%#############%%%%%%%%%%%%%%%%%%%%+++++%+...........,.......,....,....,.,,,,..,....
.....................,,.....................................................................,,................,,,....................,:::::::::::++++++++++++++++%%%%%%%++++%%%%%%%%%%###########%%%%%%%%%%%%%%%%%%++++++:.......,,,,.,........,...............,.. .
.........................................................,,,.................................,...,,.....................,,..,........,::::,::::::++++++++++++++++%%%%%%++++++++%%%%%%%%%%%%%%%%##@###%%%%%%%%%%%%%%++%++%...,..,,,.....................,.....,,.....
...,.....,.......................................................,...........,.,,,,,..,.........................,....,.,.......,.....,:::::::::::++++++++++++++++%%%%%+++++++++++%%%%%%%%%%%%%%%%%%%##%%%%%%%%%%%%%%%%+%,......,,,......,,........,....,,......,...,
...,,..,..,............................,,..,..................,,.........,,..,,..,.....................................,............:,:::::::::::+++++++++++++%%%%%%%++++++++++++%%%%%%%%%%%%+++%%%+%##%%+%%%+%%%%%%%%+..........,.,....,.,..............,,...,..,.,
..........,................................,....,........................,,..,,...,...............,....................,...........,:::::::::::::+++++++++++++%%%%%%%++++++++++++%%%%%%%%%%%%%%%+++++%#%%%+%%+%%%%%%%%,........................,..,..............,.,
............................,.............,...,,..................,.........,,......................,.........................,,,,,%::::::::::::+++++++++++++%%%%%%%%++++++++++++%%%%%%%%%%%%%%%%++++%#%%%%+++%%%%%%%+.,...,,,,.,...,.............,.,.....,..,......
....,.,...........,................,........,.,,..............,,.,,..........,..,...............................,........,::+%%#+:+@::::::::::::++++++++++++%%%%%%++++++++++++++%%%%%%%%%%%%%%%%%+++++%%%%%+++%%%%%%%:.,......,,.,....,........,......,,...........,
.,.,................,...............,...................,,,.,.,..,............,,..,...................................,::++%###+::#@::::::::::::++++++++%%+%%%%%%+++++++++++++++%%%%%%%%%%%%%%%%+++++%%%%%%++%%%%%%%%....,..............,,.....,..,,..,,,,,,,,,..,..
..............................................................,...............,.....................................,:::+%%###+:++#@::::::::::+:+++++++++%+%%%%++++++++%%++++++++%%%%%%%%%%%%%%%++++%%%%%%%++%%%%%%%:..............,.............,.....,,,..,,,,..,,
.................,............................................,.......................,...........................,::+++%%###+:%+%@@::::::::++++++++++++%%+%%%%+++++++%%%%+++++++%%%%%%%%%%%%%%%%++++%%%%%%%%%%%%%%%,.........,.,,,...,,......,,...,.,........,.,,,.
.................,.,.,..,,........................,,.,.........................................................,:+%%+++%####++%++#@#::::::::++++++++++%%%%%%++++++++++%%%%%%++++%%%%%%%%%%%%%%+%%++++%%%%%%%%%%%%%%+.........,.,,,,:,,,.,.........,..........,......
...............,...,.,...................................................................,.......,.,........,::+%%%#%%+%%%%++%%+%#@#::::::::++++++++++%%%%%%+++++++++++++%%%++%+%%%%%%%%%%%%%%+%%++++%%%%%%%%%%%%%%,.........,.,..,..,.,,,.,..,.,,,,,........,......
,..,,....,,.,,......,.................................................... ..............................,,::+++%%%%%%%+%%+++%##%%#@#:++:::::++++++++++%%%%%++++++++++++++%%%%+++%%%%%%%%%%%%%%%++++++%%%%%%%%%%%%%%.......,.....,.........,,.,,.....,..,.,,,..,,...,
,,..,,.,,,,,,,...,..,,......,...............................................,....,,.......,...........,,:+++%%%%%%%%#%++%+%%##%%#@@#+:+:::::++++++++%+%%%%%+++++++++++++++%%%%%%%%%%%%%%%%%%%%%%++++%%%%%%%%%%%%%%:....,,.........,....,,,,....,,..,,.,,,,.,,,,,,,.,
,...,.,,,,,............,...,.....,..................... .......... ..............,,.........,.......,:+++%%%%%%%%%####++%#%%###%#@@#+:+:::::++++++++%%%%%%%%+++++++++++++++++++%++%%%%%%%%%%%%%%%+++%%%%%%%%%%%%%%....,,,,.,,.,.,,,...,,.,.,.,,,.,,,,,.,,,....,,.,.,
..,.,...,,,...............,.......................... ..........................,........,..,,,...:+++%%%%%###%####%##%+%########@@#+++++::++++++++%%%%%%%%%%%%%++++++++++++++++%%%%%%%%%%%%%%%%%+++%%%%%%%%%%%%#:....,,.,,,,,,.,,.,,.,.,,.,,..,,,,.:,,.......,,.,..
.,............... .....................,,,..................................,...,,..,...,,.,...,:++++++%%%%%%######%%%#%#########@@#++++++++++++++++%%%%%%%%%%%%++++++++++++++++%%++%%++%%++%%%%%%+%%%%%%%%%%%%%+......,,,..,,......,,,.....,,,,....,.,..,,,..,,..,,
....,.....,............................... .......................,............,.,,.....,,...:++++%%%++%%%#%%%########%%#########@@#%+++++++++++++++%%%%%%%%%%%%%%%++++++++++++%%++++%%%+++%%%%%%%%%%%%%%%%%%%#%,..........,..,...,,,...,,:.,,,:::.,.......,,,,,..,,
....,........,...,..... ......................... .........,,.....,,......................,:++++++%%%%%%%%%############%#########@##%+++++++++++++++%%%%%%%%%%%%%%%%%++++++++%%%%+%++%%%%%++%%%%%%%%%%%%%%%%%%#:..............,....,...,.,,........,.....,.,,....,,.
....,...,,.,,,,.,,.........................................,,........,........,.........,:::::++%%%%###################%%%%######@##%+++++++++++++++%%%%%%%%%%%%%%%%%%%++%%++%%%%%%++%%%++%%%%%%%%%%%%%%%%%%%#%.........,..,,,.,,,,,.,.,,,,,,,...,,.....,,..,.,,.,,,
.....,,,:,.,,.,,,......,.,................,......... ......,,...,,.............,.......,::+%#####################################@###++++++++++++++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%###:.,....,...,....,,..,..,.,,.,,,.,,..,,,,,,,,,,,.:,,,,:
....,,,.,,..,,,..........................,,,,,..,,,..,......,.......................,+%###################################@@@####@@##++++++++++++%%+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#%%%%###+,,,........,.......,...........,.,.,.,,,,,,,,.,,,..:,,
....,,.,.............,......,,...........,,,,,.,,,,..,,................,...,..,..,+%######################%###############@@@####@@##++++++++++++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%####%%#%###::,,...........,.,,,,......,.,.,,.,,,..,,,,,,.,:,,,,.,.
............................,.......,:..,.,......................,,,..,..,.....,++%%################%%################@####@@####@@##%+++++++++++%%%%%%%%%%%%%%%%%%%%%%%########%###%#%%%%%%%#%######%%#####+:::::,...,.,..,..,,,:,,,:,.,.,.,,,,,,.,,.::.,,.,,,,,,,,
...............................,.,,,.,.,....,..,............,..,......,,.....,+++++%##################%##############@######@####@@##%+++++++++++%%%%%%%%%%%%%%%%%%%%%%%###############%%%##########%%#####%++:,::::,,,...,.,....,,:,,,.,,..,,,,,,..,.,..,,...,,.,.,
.................................,.,,,.........,.... .,.,....,.,....,......:+%%++::+%%%%%%%%%%#####################@@########@####@##%+++++++++++%%%%%%%%%%%%%%%%%%%%%%%#############################%####%:::::::,,:::,......,,...,,..,,,.,:,,,,,.,,,,.,,..,.,,,:,.
...........................,............................ ................:%%%%%%%+::++%%###%%%%###########%#####@@@##########@####@##%++++++++++++%%%%%%%%%%%%%%%%%%%%%%%##################################:::::+:::::::::,,,..,.,..,,,.,,.,,,.,...,,...,,.,,,,.,,,,
.......................,..,,.. ......,,..............,. ... .,...,,....:+%%%%%%%+%++:+%%%##%%%%%%###########@@@@@@###########@@###@##%%++++++++++%%%%%%%%%%%%%%%%%%%%%%%%%#######################%#%%####%%%:+%+:::++%%++::,,,,,,,,.,..,::,..,,,....,,,,,,,,,.,,,,,,
.............,..,................,,.,.............,,..,..........,..,:+%%%%%%++++++++:+++%%%%###########@@@@@@@@@@###########@####@@#%%++++++++++%%%%%%%%%%%%%%%%%%%%%%%%%#########################%#####%++#++++%%%%%%++:,,,::,:::,,,,,,,,..,...:,.,,,,..,,,,,.,,,,
.....,.......,,,.................................,.,,.,...........,:%%%%%%+::::++%%%++++%%%####%%%###@@@@@@##################@####@@#%%++++++++++++%%%%%%%%%%%%%%%%%%%%%%%%###########%##########%########+%+##%++%%%+++++%%%+++:::::,,,,,,,,,,.,.,,,.,,..::,,,.,.,,
.....,,,,,,............. .,.,............................,......,:%%%%%+:::::+%%%++%%%%%+%%%%####@@@@####@@####@@############@@####@##%%+++++++++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%##################%#####%##+%+++%##%++%%%+%%###%++++++++::::::,,,,..,,,,,,.,,,...,,,,
..,,,.....,.,.,......... ..............,.....,..,.....,...,,,.,:%%%%+::::::+%%+%##@##%%%%%####@@@######@@@#####@@#############@####@##%%%%%%++++++%%%%%%%%%%%%%%%%%%%%%%%######%%#########################%%%+%++%########@@#####%++++%%%%%%%++::::,,,,:...,:,,,.,,,
,,,,,.,,....,..........,.....................,....,,,,,..,,.,:%%%++:::::+%%+%####%%++++%+++++%%##########@####@###############@#####@#%%%%%%%%++++%%%%%%%%%%%%%%%%%%%#%%%##%##############%###########%####+#%+%%%++%###########%##@@@@##@###@@@@###%:,.,,,:,,,.,,..
.,....,,,,,,,,,............................ . ..........,:++++::,,::+%++%##%++++%%%%%%%%%%+%%%%%%######@#@#@@###############@@####@#%%%%%%%+++%++%%%%%%%%%%%%%%%%%%#################################%####+%%%%++%%+%##########%%%%#######%#####%++#@#:,,,,,:,.,,,,
...........,,..,...................,....................,::::::,,::+%%+%##%+++++%%%%%%%%%%##%%%%########@@@####################@####@##%%%%%%++%%%++%%%%%%%%%%%%%%%%%################################%%####%+##%+++%%%##########%%#########%%%####%+##%#%:,..,:,.,,,
.,:,,.,,...,.,......,...,..........,,.................,++::::::::+%%+%#%+:::++%%%%#####%%################@#####################@@@#@@##%%%%%%%%%%%%%+%%%%%%%%%%%%%%%%###%###########################%%%####%+%##%+++%%%###########%%#########%####%%%#%+%##%:,,,,,.,
,,::,..,,,..,,,.....,..,.,,..,,.,...,,....,........,,+++:::+++++%%+%#%++::++%%##################################################@@##@@#%%%%%%%+%%%%%%%%%%%%%%%%%%%%%%###%###########################%#%#####+%###%%++%############%##########%#####%%##+%%++%#+,..,.
,.,,,,.,,,,,.,,.......,,.,.......,,.,,...,:..,.....:%+::+%%+++%++%#%+++++%######################################################@@###@#%%%%%%%%%%%%%%++%%%%%%%%%%%%#%%%%###########################%%#%%####%+###%%+%%#############%###############%%##%+%%+++##%:..
,,,..,,,,,,,..,,,,.,,,,,..,....,,,,,..,,,.,......:%%+::+%%++%++##%%++++%%#######################################################@@@##@@#%%%%%%%++%%%%%+%%%%%%%%%%%%%%%%%##########################%%%%%%#####+%###%%+%%%###########################%%###%%%#%+###+,,
,,,,,..,,....,,.,.....,,.....,,,,..,...,.......,+#++::%%%++%+##%%%%%++%#%%#####@#################################################@@#####%%%%%%%%%%%%%%%%+%%%%%%%%%%%%%%%%#########################%%#%%%#####%+####%++%%######%#####################%###%%%#%+%###:,
....,,. ...,,,...,.,,..,.....,......,,,.......:##+::+%%%+%%%##%%%%%%%###%%##@#@@##################################################@####@%%%%%%+%%%%%%%%%%%%%%%%%%%%%%%%#%%%%####################%%%+##########+#####%+%%############################%###%%%%#%%###%+
...,..,....,.,.......,.,...,.,......,.,,....,%##+:+%%%++#%###%%%%%%######%%#@@@@@@################################################@@###@#%%%%%%%+%%%%%%%%+++%%%%%%%%%%%%%%%%###################%%%%+##########+%#####%+%############################%####%%#%%+#####
....,.,.,. .....,,:..,......,,,,.,.....,...:###+:%%%%+%#%##%%%%%%%#######%%####@@@################################################@@####@%%%%%+%%%%+%%%%%%%+++%%%%%%%%%%%%%%#%###############%%%%%+%##########%+#####%+%############################%####%%##%+####%
..:,.............,,,,,,,,..,.............,%###++%%%%+%%%#%%####%#########%%####@@@#################################################@@#####%++++%++%%%%+%%%++%%%%%%%%%%%%%%%##%%%#######%%%%%%%%%%%+%###########+######%+%###########################%####%%##%+%###%
,..... ..........,,.,,,,,..,,.....,..,,,:####+:++%%+%%%#%#################%%###@@@##################################################@@###@#%+++%%+%%%%++%%%%%%%++%%%%%%%%%%%%%%%%%%%%#%%%%%%%%%%%%+############%+######%%#################################%##%+%####
.... .....,......,,.....,....,..,.,,:,,+%%%%%+%%#%%%%%#%##%%%%############%%###@@@#################################################@@@####@%+++%%+%+%++++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#############+######%+%##################################%%%%####
..... .....,.... .,,...,,............,%#%%++++++%%%%#%+++++%###############%###@@@##################################################@@######%+++++++%+%%++%++%%%%%%%+++++%%%%%%%%%%%%%%%%%%%%%%%%%%#####%#######%%######%%##################################%%%%###%
..............,,.++,,,,,,.,.... ....,+%%%%+%%%%%%%+%%%+%%%#################%####@@@#################################################@########%%++%+++%%%++%%++%%++++++++++%%%%%%%%%%%%%%%%%%%%%%%%######%########+######%+%################################%%#%%####
.. ...... .,,,::::::::,,,.,,,,.,..,,++%%%%%%%%%##%%%%%%####%###############%%##@@@@#################################################@#########%%+%%+++%++++%+%+%%%+++++++++%%%%%%%%%%%%%%%%%%%%%%%######%########%%######%%###################################%%####
....,,....,,,,,::,,,....,.....,,...::%%%%%%%%%###%%##%######%%%#############%###@@@#@@##############################################@##########%%%%%++%+++++++%%%%+++++++%%+%%%%%%%%%%%%%%%%%%%%%%######%########%%######%+%#########################%#########%####
.........,........................,::%%%%%%%%##################%%###########%##@@@#@@@###############################################@########@#%%+%+++++++++++%%%+++++++%%+%%%%%+%%%%%%%%%%%%%%%#######%%########+#######%%###################################%####
...,....... .... ......... .....,:+%%%%%%%################################%###@@@@@@@##########################################################%%%+++%%+++%++++%+++++++++%%+%%%%%%%%%%%%%%%%%%%#######%%########%%######%%###################################%####
......... . .... . ... ... ..::%%%%%%%##################################%#@@@@@@################################################@############%%%+++++++++++++++++++++++%++%%%%%%%%++%%%%%%%########%%#########%#######%%##################################%####
................ ................,:+%%%%%%%################@#################%#@@@@@@@################################################@############%%+++++++++++++++++++++++++%%%%%%%%%++%%%%%%##########%#########%#######%%#######################################
......,.... .. ..........,......::%%%%%%%###################################%#@@@@@@################################################################+++++++++++++++++++++++++++%++++++++%+++%%##########%#########%%#######%#######################################
............ .....,.,.....,.....,:+%%%%%%####################@@################@@@@@@@@################################################@##############%+++++++++++++++++++++++++++++++++++++%%###########%##########%#######%%######################################
.............,,.....,...........::%%%%%%%#####################@@@#############%@@@@@@@@################################################@@###############%++++++++++++++++++++++++++++++++++%%###########%%##########%#######%%######################################
...,...............,....,,.....,:+%%%%%%######################@@@@##############@@@@@@#################################################@##################++++++++++++++++++++++++++++++++%%############%%##########%%#######%######################################
,,..,..,..........,,..,........::%%%%%%%#######################@@###############@@@@@@@####################################################################%+++++++++++++++++++++++++++++%%#############%############%#######%%#####################################
.,,..........,..,,.,.,,...,...,:+%%%%%%########################@@################@@@@@@#######################################################################%+++++++++++++++++++++++++%###############%############%#######%%############################@########
.................:,,....,.,...::%+%%%%%########################@@@###############@@@@@@#########################################################################%+++++++++++++++++++++%%################%############%%#######%############################@########
........,........,:::........,:++%%%%%%##########################@@##############@@@@@@################################################@@##########################%++++++++++++++++%%%#################%############%%#######%%####################################
..............,,,,,:,,,...,..:+%+%%%%%###########################@@@#############@@@@@@@##############################################################################%%++++++++++%%%###################%#############%#######%%##########################@#########
............,...,,,,,.:,.,,,,:++%%#%%############################@@@##############@@@@@@########################################################################################################%#####################%########%##########################@########%
....,......,,,.,.::,,::. ..::%+%%%%%############################@@@##############@@@@@@########################################################################################################%######%##############%########%##########################@#########
...........,..,,..,,.,+:,:,.:+++%%%%#############################@@@@@@@@##########@@@@@###############################################################################################################%#######################%##########################@#########
,,,,..,.,,,,,,,:,,,,:,:,,:,,+++%%%%###############################@@@@@@@##########@@@@@@######################################################################################################################################%#########################@##########
,,,,:,:,,...,,.,,,,,::,,,:,:+++%%%%################@###############@@@@@@@#########@@@@@@################################################################################################################################################################@##########
,,::,,,,,,,.,..,,.::,:,,:,,:+++%%%#################################@@@@@@@@#########@@@@@################################################################################################################################################################@##########