United States

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