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