Welcome!

Welcome to the 2nd year redesign of my portfolio.

Here are some bullet points to summarize how I am:
  • Name: Haruki Wakamatsu
  • Name meaning: "haru" meaning "spring" and "ki" meaning "hope" or "rare"
  • Nickname: Harry
  • Age: 16
  • Date of Birth: 1999-02-05
  • Birthplace: Tomakomai, Hokkaido, Japan
  • Gender: male
  • Sexual Orientation: straight
  • Race/Ethnicity: Far Eastern
  • Nationality: Japanese
  • Languages: Japanese, English, Spanish (intermediate)
  • Religion: none
  • Relationship status: single
  • Hair color: black
  • Eye color: brownish black
  • Height: 168 cm
  • Weight: 45 kg
  • Other traits: noticeable mole under right eye next to nose
  • Best traits: intelligent, honest, witty
  • Worst traits: procrastinator, impatient, bad at listening, bad at memorizing names & faces
  • Fears: death
  • Talents: graphic design, music, dance (contemporary), fast typing
  • Hobbies: Internet surfing, listening to music, composing electronic music, gaming, graphic design, learning quasi-useless trivia
  • IQ: 138
  • Last year's GPA: 3.4
Also, here's an ASCII art representation of how I look like:
````` ````` ``  ```          `
`` ````` `  ``  `` ``
`` ` ` `` ``` ``  `         ``
````` `  ``` `    `     `
````` `` `  ````   ` `
``````` ``     `
````     ```` ``  ``
````` `` ``  ` ` `       `    `
`  `````       ``      `
``` ` ``   `` `                                                                                        ``......`
``````` ``  `   `         `                                                                          .,,:::,::::,.
`` ````` `        `                                                                         `,::,    `;;;;;;;;;:;,,
```` `` `  ` ` `  ` `                                                                   .:;:;;;;,    `;;;;;:;;:;;;:.
` ` `` ``` ````  `` `                                                               ,;;;;;;';;;;,    `';';';;;::;;;:`
````` `` ``` ````                                                               `,;;;;;;;;;;;;;;:`   `;;;''';;;;;;;;;` ``
``` ` `````  ` `` `  ` `                                                     `.;;;;;;;;;;;'';;;;,`   .;;;;';;;;,;;;;;;` .:
````` ``    ``                 `                                             ::;';;''';;;;;;;::,`    .;;;;;;;;;.:;;;;;:  ::`
` ` ```` ````` `  `    `                                              `      ::;;'';;;;:,.``         `:;;;;';;;. ;:;;;;,  ::,
`` ` `   ` ``   `   ``                `                              `       :;';;;:.`                :;;:;;;;;,  ;;;;;:.  ;::
`````` ``     ``      `` ` `                                         `       ;;;:.`          `...`    ,;;::;:;;,  `;;;;;:`  ;::
` ` ` ````           `                                              :        ,.`       `,:;;;;;;:.    .;;:,:,:;,   `;;';;:  `::,
 ` ``  ` ````` `  `     `    `                                     ``              .,:;'';;';';;;,    ,;;:,,,:;:    .;;;;;:  .::,
``````````  `  `                                                   '           `,::;;''''''''';;;:    .;;:,,,:;;`    .;;;;;,  :::.
 `  ````    `  ` `  `                                             ,:         `;:;'''''''';;;''';::    `';;:::::;.     ,;;;;:,  :;:`
``` ` ``  ```` `  `  ` `      ` `                                 '         :;;'';';''''';';;;;:::    `;;;;;:::;,    `:;;;;;:. `:::
`` ````  ` ` ` ``    `  `                                        ;;         ;''''''''';;;;:;::,...    `:;;;;:::;:   `:;;;;;;::` .:::
``    ` `` ````  `            `                                  '.         ;'''';;;;;;;:..`           :;;';;::;;`  ,;;;;;;;;:,  ,::,
`` `` ````` `   `         ``  `                                 :'          ;'';';;:,.`                :;';;;;::;, .:;;;;;;;;:,   ;::,
`````` ```   ```` `` ``                                        .;:          ;;;::,``                   :';;;;;;;';,:';;;;;;;;::   `;::`
```  `  `` ````` `               `                             ''          .::,.`   `     ``.,,,:,,    :''';;;;;;';'';;';;;;;;:    ;::,
```````````` `                                                ;''          ..`   `   `.,;;''''';;:.    :';';';;;'''';'';'''':;.    ,:::,
```````  ````    ``   `               `                      .'';                `.,:''''''''';';;,    ,'';;;;;;'';;;;';'''';;     ,:;:;`
````````  ``` ``        ``    `                              ;''.            .,::;''''''''''''''';:    .;;;';;;;''';;;;;';';',     ,:;:;:
`````` ` ` ``     `       `                                 :;'+           ,:;'''''''''''''''''';;:    `;;;';;;''''';;;;;';':`     :;;;;;.
` ```  ````````````  `                                     `;'++          `:;''''''''''''''''''''':`   `;;;;;;''''';'';;''';,     `:;;;;;,
`````   ` ``   `      `  ` `                               ;;+';          `;''''''''''''';';;;;::.`    `:;;;;;;;'';;';;;;;;:`     .;;;;;;:
 ` `` ````      `` ` `` ``                                .'''+`          `'''''''''';:,.`               ...,:;;;;;;;;;';;;.      .;;;;;:;
``` ` ``  ````` ` `` `           `                 ``     ;''''           .''''''';,`                       `` ``..,::;;;;,       .;;;;;;;
 `````` ```` ``  `    `  `  `                            :'''':           ,;;';;,`                                `````..,.       ,:;;';::
``` ```  ` `  ``     ` ``        `     ``                '+'''            :::,`                                        ````       ;;;;;;;;
``` ``````     ````   ` `      ``                       :'''';            ``                                             `      ``;;;;;;;:
```  `` ````` ` `   `   `` `  `            `           `;''''. `                                                                 .,:;:';;:
```````   ``   ` `` ``           ``  `                 .'''''  `                                                                    `.:;:: :`
```` `````````````` `  ` `  `  ` ``                    :'''''`                  `  ```````````````````                                 `.. `,
    ``` `````     `      `` `          ``              ''''':             ``````````.`............``````.```````                            :,
`` ````````  ```` `  `` ``       ``  `            `  ``;''''          `````.......,,,,,,,,,,,:,,,,,,,,,,,.,...`.```````                     ``
 `` `` ` ``````` ``   `   `   `   `                   :'''',      ``````..,,,,,,,,,:,:::::::;:;;;;:;;;:;;;::;::::,..```````                  .`
``` ````````` ` ``       `            `   ``  `      `'''''  ``````....,,,,,:::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::,..``` `                `
``` ``` `````` ` ``` `           `   ``       ``    ``;'''; ````....,,,,:::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:;::::,.`````
`````````````` `` ` ` ``   `  ``  `      ``    `     `'+'', ,`...,,,:::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;';;';;;'';;;;;;;;;;;;;;;;::.```
```` `````  `` `  ````` `         `` ` ```           :'+''.`...,,::;;;'''';;;;';;';;;';';';'''''''''';;';;;';;;;;;;;;;;;;;:;:;:;::::.```
` ```      ` `````````     `     `` ``              `'+'''`.:.,::;'''';';;;;'''''''''''''''''''''''';'';'';;;;;;;;;;;;'';';;;;;;;;;;;;;:.`
`````` ``````` ` `      `  `   ` `       `  ```      '+';+..:,;'''';;;;;;''';;;;'';''''''''''''';';;';'';;;;;;;;;''''';;'''+++####++++';;;;:`
`````````  ` ``   `` `` ```     ` `  `` `           ,''''+',:''';';;'''''''';'''''';;''';;';';''''';;;;;;';'''';;''+++##################++'';';`
````` ```` `` `````` `     ``  ```   `  `        `  ''''+';;;;;;;'''''';''''''''''''''';'';'';';;'''''''''''''++#############################+';;:`
````````````` ````   ` ````       `      ` ` ` `    ''';;;;;;;';;;;;'''''''''';;'';';';;;''''''''''''';+++###@#########@@#######################++;;:
`````````````    ````````` `` `     `     `        .'';;;''''''''''''';'';;;;;;'';';;''''''''''';''++##############################################+';;.
`  ```` `````` `  ````` `   ` ` ````          `   `:'';''''''''''';'';';''''''''''''''''''''++###################################@@@@#@@##############+;;,
`````` ````````  `    `` `` ````        ` ```````` ;;'''++''''+''''''''''''''''''''''''++###########@#########+###################@@@#@@@@##############+';,                                       `
```````````` `  ```` `   ```` `   ``````` `        ;''++''++++''''''''''''''''''++############@@#######+++++++############@##@@###@###@@@#@###############++;,
` ````` ````````````       ```` `````` `      ` ```;''###@+'+++++++++++++++###############@############++++++++#+########@###@@##@#@@@#############+#########';,                                      ``
````````` ``````` ```` ```` `` `        ``` ````` `;'#######++++++#+#####################+#+#+########+++++++++++##########@########@@#@#############++#######+';.
````````` ````````````````` ``  `` `  ``` `  `  ` .''########+;;''''+++++#####++#+##++#+#++++++++#+#++++++++++++###############@############@##@######+++########+;.
`` `````````` `````````   ```````` `  `      `` ``:'+########+;;;;;;''''''''+'+++++++++#++++++++++++++++++++++++########################@####@@###########++######+';.
````````````````` ` ` `` `````` `````  ` `` ``````;+######+##';;:;:;;';;'''''+++++++###+++++++++++++++++++++++++++++#++++++##################@#######@######++#######';.
````````` `````````````````      `````` `       ` ;'######+##;::::;;:;;;'''''+++++++########++++++++++++++++++++++++++++++#+#+#############+#@####++###########+##+###+;:`
`  ````` ` ````` `````  `  ``````````` `` `  `````;+######+##;;::::::;;;;;'''''++++++++####+++++++++++++++++++++++++++++++#################+#@#@##` ,'###########+######+;,                           `
``````````````````````````` ``````` `` ``  ````  `;######++#+;::::::::;:;'''+'+'+++++###+##+#+++++++++++++++++++++++++++#################+++#####`     `:'++#######+##+##+':
``````````` `` `` ````````` `` `` `````````` `    ;######++#';:::::::;;;;;''''''++++++++++++#++++++++++++++++++++++++++++#############++#+''+##+:          `;+######++####+',              `  `        `
`````` `````` ```````````````   ````` ``  `` `` ``;+######++;;:::::;';;;;;;;'''''''++'++++++++++++++++++++++++++++++++++####+#########++++''+##+``             ,'++#+++##++++              `           `
``````````````````` ```` ````  `````` `  ` ```` ``'++####+++;:::::;;:;;;;;;''''''+++++++++++++'+++++++++++++++++++++++###########++#+#+++'''+##;.                 .'+++'++++;                     ` `  `
````````````` ``` `  ``````  `   ``` ``````````` `;++#+':;;':;';;;;:;;;;;;''''+++''++++++++++++'++++++++++++++++++++++#++++++++++++++++++'''+#+;                     `,;;,:. `              ` `   ``
`` ```````````````````````````` ````````   ```````.+##+:::::,;+###+;;;;;;'++++#+;;'+###+++++++++++++++++#+++#+++++++++++++++++++++#++++'''''+#+:``                     `                ```   `        `
```````` `` ```````````` `` `````````` `  ````,:;:.####:,':;:;+++++;;;;'''''''+':;'+#++++++'++++++++++#+++######++++'+++#####+####+++++';+,.;#'` `                                 ` `    `       ``````
````````````````` ```````````  ``      ``````,,:;'++#####';;;;;;;;';;;;;;;';'''+;;+++#+++#+''++++++##+#@####@###+++++++#######++###+++'';'````:`                                 `           ``````````
```````````` `````````````` ```  ` `` ```` ``,;::;+#####+;;;;;;;;;+;;;;;;;;;';'''''###+++#''+++++++++++##########++++++###++#+++++##++'';'`  ` ;                                       `` `````` `` ````
 ````` ````````````  ``` ``` ``````````` `  ,:'':;'######;::::;;;;+';;';;;;;;;;''+'##++#++++++++++++++##########+++++++###+++++'++###+'';,``` ``,                                    `   ` ``  `````````
`````````````````````` ``````````` `````  ``:;''':'++####;:::::::;+''''''';;;;;;''+++++++++++++++###'####+######++++++++#+++++'+++##+++';:,.````'                               `        ` `````````````
``````````````````````````` ````````````````:;'';:''+#+#+;::::::::;+;'''''''';;'''''''+++++++++++'##'#++++++####+#++++++##+##++++#++++++'++++++++++;`                                   `````````` ` ```
`````` `````````````````````` `````````` ```:''';:;''+##+;:::::::::+;;;;'''''''''''''''+'++'++++++#+#+#++++#+#####++++++++++++#+++++++++' `:;'+++++'.                   `           ``````````  ````````
````````````````````` `````` ````  `   ````.:;'':::;'+##+;:::::::::'+;;;;''''+''''''''''''++++++++++++++++++++####++++++++++++++++++++++;``````:+ ``               `              ``````      ``````````
```````````````````  `` ``````````  ```````.:'''::;;'+##';::::::::;:++;;;'''''''''''''''''+''''+++'++++++++++++##++++++++++''+'++++++++';``````':                                   ` ` ```````````` ```
`````````` ` ```` `````````````````````` ``.:''',:;;+##+'::::::::::::++';''''''''''''''''''''+'+''+'++'+++++++++#'++++++++'''+++++++++++'``````'         ``                            `````````````````
``````` ``````````````` ``````````````` ` ``;;';,::;'##++:::::::::::::;+++'''''''''''''''''''''''''''''++++++++++@+++++++++++++++++++++';`````:' `                                ``  ``````````````````
`````` ```````````` ``````````````` ````````:;'::::;'##++:::::::::::::;;;''''''''''''''''''++''+';;''''''++++++++##+++''+++++++++++'++'''.``` '`             ```              ``````    `  `````````````
```````````` ````````````````` ``````````` `:;'::::''##+'::,,::::::::;;;;;';''''+'''''''''+++''';;''''''''+++++++++++++'''+++++++++++++'',```''                          `   ``        `````````````````
````````` `````````` `` `````````````````` `,;',:;;'++#+'::,:,::::::::;;;;''''''+'+++++'++++''';;;'''';;'''++++++++#++'++''+++++++'++++'':``''      ``  `            ` `            ````````````````````
``````````````````` ``````` `````````````````;',;;''+##+'::,,::::::::::;;;;;''''''++++++++'+''';;;'''';'''++++++++++++++''++++++++++++''';'++ ```  `           `````            ` ``````` ``````````````
```````````````   `````````````` ````````````:;:;''''+#+'::::::::::::::;;;;;;'''''+'''''''''++';;;''';;'''++++++++++++++++++++++++++++++++':; `             ``              `````````` `` ``````````````
``````````````````````````````` `````````````:;:;''''#++':::,::::::::::;;;;;;''''''''''''''''''''''';;''''''++++++++++++++++++++++++++''';;;:           ````  `         ` ```   ``` ````````````````````
`````````````````````````` ``````````````````,;,;''''++++:::::::::::::;:;;;;'''''''''''''''''''''''';'''''++++++++++++++++++++++++++++''';;;:    `   ``              `  `       `````````````` `````````
`````````````````````````````` `` ` ``````````::;'''''+++:::::::,::::::::;;;;;;''''''''''+''''''''';;;''''+'++++++++''++'''++''''++++'''';;;,`  ``                `             ````````````````````````
``````````````` ```````````````` `````````````::;''''''++;:::,,:::::::::;;;;;;;;''''''''''''''';+'';;;;'''''+++++++++++''+++'+''''''''';;;;:,`         `` ```             ``````````````````````````````
``````````````````````````````````````` `` ```,;:;'''';'':::,,::::::::::::;;;;;;'''''''''''''''''';;;;;''''''+++++++''+'''''+''''''''';;;;;:.       ``` `   `         ````     `     ```````````````````
````````````````` ````````````````` ``````````,;,;''''''+;:::,,:::::::::;;;;;;;;;'''++''''+''''';';;;;;''''''''''++++''''''''+'''''''';;;;;:`  ``  ```             `` `         ````````````````````````
```````````````` `` ```````````````````````````:::;::;''';::::::::::::::;;;;;;';';''++'''''+'';;;;;;;;;;'''''+''''++++''''''''''''''';;;;;;:````            `  ``           ````````` ``` ``````````````
```````````````````````````````````````````````,;;:::;;';;:,:::::::::::::;;:;;;;;';''+'''''+';;;;;;;;;;;''''''''''''+++'''''''''''';;;;;;;;: ``       ` ``` ``          `````````` `````````````````````
```````` `````````````````````````````` ```````,:;;,,::;;;::::::::::::::::;;;;;;;'''''''''++'';;;;;;;;;;;;''''''''''++++'''''''''';;;;;;;;;:`        ``` `         ` `` ```` ``` ```````````````````````
````````````````````````````````````````````````,:;:::::;;::::::::::::::::;;;;;;;''''''''+++';;;;;;;;;;;'''''''''''''+++'''''''''';;;;;;;;;,   ```` ``         ``` `` ` `     ```````````````` `````````
````````````````````````````````````````````````,:::::::;;::::::::::::::::;;;;;;;'''''''''++';;;;;''++;;;''''''''''''+''''''''''';;;;;;;;;;,`` ``          ````      `     `````````````````````````````
```````````````````````````````````````````` `` `,:::::::;::::::::::::::::;;;;;;;''''''''''++;;;;'####+;'''''''##'''''''''''''';;;;;;;;;;;:, `        `````````       ``````````` ` ````````````````````
``````````````````````````````````````````` ``````,::::::;::::::::::::::::;;;;;;;''''''''''++';;'++##+++;'''''@##+'''+''''''''';;;;;;;;;;::,    ``````````          ````````` `    `````````````````````
```````````````````````````````````` `````````````,,:::::;:::::::::::::::::;;;;;;''''''''''''+'''+++++'++''''+###+'''+'+''''';;;;;;;;;;;;::,  ```` ```         ````` ```     ` `````````````````````````
```````````````````````````````````````````````````,:::::;;:,:::::::::::::;:;;;;;;''''''''''''++++'+'+''+++++++++++++++'''''';;;;;;;;;;;:::.`` ```       ```` ``````     ```````````````````````````````
````````````````````````````````````````````````````,::::;;::,:::::::::::::;;;;;;;;''';''''''''''''++''''+++'+'++++++''''''';;;;;;;;;;;;:::          `  ``````        `````````````` ```````````````````
`````````````````````````````````````````````````````.::;:::::::::::::::::::;;;;;;''''';''''''''''''''''++''''++++++'''''';';;;;;;;;;;;;;:.  `   ```````          ``````````````  ``````````````````````
```````````````````````````````````````````````````` ```.;::,::::::::::::::;;:;;;;'''''';'''';''''''''''''''''++'''''''''''';;;;;;;;;;;;;:` ``````````       ````````` ````  ```````````````````````````
````````````````````````````````````````````````````````.+::::,::::::::::::::;;;;;;;;;';''';''''''''''''++'''''''''''''''';';';;;;;;;;;;;:``````          ``````````     ````````````` `````````````````
`````````````````````````````````````````````````````````':::::::::::::::::::;;;;;;;;;;;;''''''''''+''''+++''+'++''''''''';;;;;;;;;;;;;;:,```          ````````      ```````````````` ``````.```````````
`````````````````````````````````````````````````````````::::,::::::::::::::::;;;;';;;'''';;''''''''''+++++''+++''''';;;;';;;;;;;;;;;;;;;`      `  ````````       ``````````````` ``````````````````````
``````````````````````````````````````````````````````````::::::::::::::::::::;;;;;;;''''''''';''''''''++++''++'''''''';;;;;;;;;;;;;;;;;:   `` `````````      ``````````````   `````````````````````````
`````````````````````````````````````````````````````````.;:::::::::::::::::::;;;;;;'''''';';;;;''''''''''''''+'''''''''';;'';;;;;;;;;;;:```````` ``       ```````````   `  ````````````````````````````
`````````````````````````````````````````````````````````.,,::::;:::::::::::::;;;;;''''';';';;;'''''+'''''+++++''''''''''';';';;;;;;;;;;:```` `     ` ``````````` `  ` `` `````````  ```````````````````
`````````````````````````````````````````````````````````.`::::::::::::::::::;;;;;;;'''''';;;;'''+++++++++++++++''''''''''';'';;;;;;;;;;:``        ```````````` ` ``````````````````````````````````````
```````````````````````````````````````````````````````````:,::::::::::::::::;;;;;'''''''''''''++++++++++++++++'''''''''''''';;;;;;;;;;:,    ```````````    ````````````````   ``````````````````````..`
```````````````````````````````````````````````````````````,::::::::::::::;:;;;;;;'''+++'''++++++++++++++''++++++++''''''';;';;;;;;;;;;;````````````      ````````````   ````````````````````````.``````
```````````````````````````````````````````````````````````,:::::::::::::::::;;;;;'''+###+++#++++++++++++'++'+'+++++'''+''''';;;;;;;;;;:```````         ``````````   `  ````````````` `````````````.````
```````````````````````````````````````````````````````````.:::::::::::::::;:;;;;'''+++####++'+++++++++++#++++++####+++++''''';;;;;;;;;:``````    `````````````  `` `````````````` `````````````````````
````````````````````````````````````````````````````````````::::::::::::::;:;;;;;'''++++++++''''''''''''''''''''''+####++'''';;;;;;;;;;,``    ` `````````````` ```````````````` ````````````````````````
````````````````````````````````````````````````````````````::::::::::::::::;;;;;'''++'''''''''''''''''''''';'''''++'++++''';;;;;;;;;;;` ` ``````````````` ````````````````  ```````````````````````````
````````````````````````````````````````````````````````````,:::::::::::::::;;;;;;'''''';';;'''''''''''''''''''''+''''''+'''';;;;;;;;;:````````     ` ``````````````  ``````````````````````````````````
````````````````````````````````````````````````````````````,:::::::::::::::;;;;;'''''';;;;;;;;'''''''''''''''''''''''''+'''';;;;;;;;;:````````      ```````````` `````````````````````````.````````````
````````````````````````````````````````````````````````````,:::::::::::::::;;;;;''''';;;;;;;;;;''''''''''''''+''''''''''''';;;;;;;;;:.```       ````````````    ``````````````````````````````````````.
````````````````````````````````````````````````````````````,:::::::::::::::;;;;;;''';;;;;;;;;;''''''''''''''''''';'''''''';;;;;;;;;;;`     ` ````````````  `` ```````````` ````````````````````````````
````````````````````````````````````````````````````````````,::::::::::::::;;;;;;';';;;;;';;;'''''''++'''''+'''''''''''''';;';;;;;;;::` ``````````` ```` `````````````` ``````````````````````````.`````
````````````````````````````````````````````````````````````,::::::::::::;;:;;;;;;;;';;;;;;;'''''''+'+++++''''''''''''''''';';;;;;;;:``````````` `  ```````````````` ``````````````````````````.````````
````````````````````````````````````````````````````````````,:::::::::::::::;;;;;;;;;;;;;;;';'''''''''+++++'''''''';''''';';;;;;;;;;;````  ````  ``````````````` `` ````````````````````````````````````
````````````````````````````````````````````````````````````.:::::::;:::::;:;;;;;;;;;;;;;;;;'''''''''''+'''''''';'''';''';;;;';;;;;:.``` `     ````````````` ```````````````````````````````````````````
````````````````````````````````````````````````````````````,:::::::::::::::;;;;;;;;;;;;;;'''''''''''''''''''''';;'''''';;;;;;;;;;;:`` ` ```````````````` ````````````````````````````````````````````.`
`````````````````````````.`````````````````````````````````.,::::::::::::::;:;;;;;;;;;;;;;;';'''';'''''''''''''''''';;;'';;;;;;;;;;``     ``````````````````````````````  ``````````````````````````.```
````````````````````````````````````````````````````````````,:::::::::::::;::;;;;;;;;;;;;;;;;;;;;;;'''';';;;;''''';';;;';';;;;;;;;,``````````````` `````````````````````````````````````````````````````
````````````````````````````````````````````````````.```````,:::::;:;;::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;';;;;;';';;'''';';;;;;;;::``````````` ```````````````````` ```````````````````````````.`.```````
````````````````````````````````````````````````````````````,:::::;;;;;:::::;;;;;;;;;;;;;;;;;;;;;;;;;;;';;;;;;;;';''';;;;';;;;;;;``````````  ```````````````````````````````````````````````````````````
`````````````````````````````````````````````````````````...,:::::;;;;;:::::;;;;;;;;;;;;;;;;;;;;;;;;;';'';';;;;;;;;'';'''';;;;;;``````` ```  ```````````````` ``````````````````````````````````````````
``````````````````````````````````````````````````````......::::::;;;;;;;:;;:;;;;;;;;;;;;;;;;;;;;;;'';''';';;;;;;;''''';';;;;;;````   ` ````````````````````````````````````````````````````````````````
`````````````````````````````````````.``````````````........,::::::;;;;;;;;:;;;;;;;;;;;;;;;;;;;;;;';;'''';';';;;'';;;';;;;;;;:`    `` ````````` ` ``` ``````````````````````````````````````````````````
``````````````````````````````````````````````````.`........:::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;';;;;'';';'';;;;;;;';;;;;;;:`` ```````````````  ``````````````````` ```````````````````````````````````
```````````````````````````````````````````````.```........,:::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'';'''''''';'';';';;';;;;:` ``````````````   ` ```````````` ``````````````````````````````````````````
``````````````````````````````````````````````.```.........,,:::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;''''''''''''';;';;;';;;;;;:`````````````   ````````````````````````````````````````````````````````````.
```````````````````````````````````````````````````.......,,::::::;;;;;;;;';';;;;;;;;;;;;;;;';'''''';''''';''''';;;;';;;;,```````````` ` ` `````````````````````````````````````````````````````````````
`````````````````````````````````````````.````````.......,,,:::::;::;;;;;''''';;;;;;;;;;;;;';;'''''''''''''';;;;';;;;;;;,`````````` ````````````````` ``````````````````````````````````````````````````
`````````````````````````````````````````````````.....,...,:::::::;;;;;;;;;'''''';;;;;;;;;;;;'''''''''''''''''';;';;;;;;```````` `````````````` ````````````````````````````````````````````````````````
```````````````````````````````````.``````````........,..,,:::::::;:;;;;;;'';''''';';;;;;;''';'''''''''''''''''''';;;;;;````   ````````````````  ``````````````` ```````````````````````````````````````
`````````````````````````````````````````````.`...........,::::::::;;;;;;';'''''''''';;';''''''''''''''''''''''''';;;;;:`````````````````    ````````````````  ````````````````````````````````````````.
`````````````````````````````````````````````.........,,,.,:::::::;:;;;;;;;'''''''''''';;'''''''''''''''''''''';';;;;;;,```````````````   ``````````````````````````````````````````````````````````..``
``````````````````````````````````````````.``..`..........,:::::::;;;;;;;;;;'''''''''''''''''''''''''''''''''''''';;;;;````````````` ` ``````````````````````````````` ``````````````````````````````..`
````````````````````````````````````````.`.............,,.,:::::::;::;;;;;;'''''''';;'''''''''''+''''''''+''''';''';;;;`````````   ``  `````````````````````````````````````````````````````````````````
``````````````````````````````````````````````.....,..,...::::::::::;;;;;;;;';''''''''''''''''++++++'++++++''''''';;;;;````````` `````````````````````````````````````````````````````````````````.`````
`````````````````````````````````````````````....,.,.....,,:::::::::;;;;;;;;;;''''''''''''''''+++++++++++++++''''';;;;;`````````````````````` `` ```````````````````````````````````````````````````````
``````````````````````````````````````````........,....,.,:::::::::::;;;;;;;''';''''';;;;;'''''+++++++++++++'''';;;;;;:```````````````````  ``````````````````````````````.`````````````````````````````
`````````````````````````````````````````..............,.:::::::::::::;;;;;;;;;''''';;;;;;;'''''''++++++++''';;';;;;;;.` ````````````` ``````````````````` ````````````````````````````````````````````.
`````````````````````````````````````..`.......,......,.,:::::::::;:;:;;;;;;;;;;'';;';;;;;;';''''''''+'+''''';;';;;;;:```````````````   ```````````````````````````````````````````````````````````.`.``
````````````````````````.```````````...............,,..,,:::::::::::;:;;;;;;;;;';';'';;;;;;;;;''''''''''''';;;'';;;;;;`````````````` `````````````````````````````````````````````````````````````.`````
```````````````````````````````````.`..........,...,,..,:::::::::::::;;;;;;;;;;''';'';;;;;;;;;;;;;'''''';;'';;;;;;;;;:````````  `` `````````````````````````````````````````````````````````````````````
`````````````````````````````````...............,..,,...::::::::::::;:;;;;;;;;;;;';;;;;;;;;;;;;;;;';';';;;;;;;;;;;;;;;`````````````````````````````````````````````````````````````````````.````.`````.`
`````````````````.`````````````...`.`.....,....,...,...,::::::::::::;;;;;;;;;;;;;''';;;;;;;;;;;;;;;;;'';;;;;;;;;;;;;;:``````````````````````````````````````````````````````````````````````````````````
`````````````````````````````````..``.......,..,.......::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;';;;;;;;;;;,```````````````` ````````````````````````````````````````````````````````````.`..`
``````````````````````````.``..`````.....,,.,,........,:::::::::::::;::;;;;;;;;;';';';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:.````````````````````````````````````````````````````````````.```````````````..`.`.
`````````````````````````````````...`..,..,.........,.::::::::::::::::;;;;;;;;;;;;;;';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;``````````````  ````````````````````````````````````````````````````````.`....`````
``````````````````````````````````.....,..,.....,...,:::::::::::::::;::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;``````````````````````````````````````````````````````..``````````````````.````````
```````````````````````````````.......,,........,...,::::::::::::::::;:;;;;;;;;;;;;;';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;``.`````````````````````````` ```````````````````````````````````````````.``.``````
```````````````````````````````.......,........,,,..:::::::::::::::::;;;;;;;;;;;;;;;;;';;;;;;;;;;;;;;;;;;;;;;;;;;;;;:`````````````````````` ````````````````````````````.`````````````````````````````.`
`````````````````````````````.........,,.......,.,.::::::::::::::::::;;;;;;;;;;;;;;;;;';;;;;;;;;;;;;;;;;;';;;;';;;;;:`````````````````````````````````````````````````````````````````.``.`````````````.
`````````````````````````.............,,....,..,,.::::::::::::::::::::;;;;;;;;;;;;;;'';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,`````````````````` ``````````````````````````````````````````````````````````...``.
````````````````````````.`.`..........,,,..,,..,.::::::::::::::::::::::;;;;;;;;;;;;;';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:`````````````````````````````````````````````````````````.``...`````````..``...`.``
````````````````````````...``.........,,........:::::::::::::::::::::;:;;;;;;;;;;;;;;;;;;;;;;;;;;';;;'';'';;;;;;;;;;:`````````````````````````````````````````````````````````..```````````.``....``````
``````````````````````....`...........,,......,:::::::::::::::::::::::::;;;;;;;;;;;;;;;;;;;';;;;'';'''''';;;;;;;;;;;:.````````````````````````````` ```````````````````````..``````````````..`.````````.
`````````````````````````.``.......,.........,,,;:::::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;';''''''';;;;;;;;;;;:;;,````````````````````````````````````````````````````````````````.`..`.`.`````````
``````````````````````````.......,,,.........,,,,;;::::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;'''''';'';;;;;;;;;;;:;',```````````````````````````````````````````````````````````````...``.````````...
`````````````````````````.........,.......,,,,,,,,:;::::::::::::::::::;:;;;;;;;;;;;;;;;;;;;;;;;;;';;''';;;;;;;;;;;;;;:+;,````````````````````````````````````````````````````````````..```````````````.`
````````````````````````......,,..,......,,,,,,,,,,:;:::::::::::::::::;;:;;;;;;;;;;;;;;;;;;;;;';;;;';';;;;;;;;;;;;;;;;'+',````````````````````````````````````````````````````````````````````````...`..
```````````````````````........,....,,,,,,,,,,,,,,:::;;;::::::::::::::;:;;;;;;;;;;;;;;;;;;;;;;;;;;;';;;;;;;;;;;;;;;;;;;#+;,,.``````````````````````````````````````````````````.`````.```````.``````.`.`
```````````.````````...............,,,,,,:::,:,,:::::::;;::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;';;;;;;;;;;;;;;;;;;;'#+;,,,.``````````````````````````````````````````````..````````````````..```````
`````````````````````............,::,,,,,,::,::,,:::::::;;:;:;;:::::::;;:;;;;;;;;;;;;;;;;;;;;;;;;;';;;;;;;;;;;;;;;;;;;;;#+':,:,,.``````````````````  ````````````````````...```````````````...``````````
```````````````````.............,,::,,,,,:::::::::::::::::;;;;:::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;';;;;;;;;;;;;;;;;;;##+:,,,,,...``````````````````````````````````.``````````````````.`.````````````
`````.````````.````...........,.,::::,,,,,,:::::::::::::::::;;;;;::;:;;::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;';;;;;;;;;;;;;;;;;+##::::,,,....```````````````````````````````.````.```````````..`````````````...
``.````````````..`...........,..,::;::,,,,::::::::::::::;:;:::;;;;;:::::;;;;;;;;;;;;;;;;;;;;;;;;;;;';';;;;;;;;;;;;';;;;'+##:::,:,,,,....```` ```````````````````````.`.`````````````.`.`..````.```..`...
````````````....```.......,,,,.,,::;::,,,:,:,,::::::::::::;::::;;;;;;;::;:;;;;;;;;;;;;;;;;;;;;;;;';';';;;;;;;;;;;';;;'''+##;:,:,,,,,,.......`````````````````````````````````````...`.`````````````.`..`
`````````...``...`......,,,,,,.,::::::,,::,,,:::::::::::::::;:::::;;;;:;;;;;;;;;;;;;;;;;;;;;;;;';;';;;;;;;;;;;;;';'';;''+##::,::,,,,,,...`....``````````````````.```..``````.````.`.``````````.....`````
````````````````````..,,,,::,...:::;::::,,,,::::;:;;;:;;:::;:;;:::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;';;;;;;;;;;;;;;;''''''''++;::,,::,,,,......``....```````````````````````````.....`````````````.````````.
```````````.``````...,::,:::,.,::::;;::::,,,::::;;;;;;:;:;:::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;';';';'+++;:::,,,::,,,,,......`....````````.``.```````````....``.`````````.....`````````
````.```````````...,::,::::,,,,::;;;;:::::,:,::::;;;;;;::::::;::::::::;::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'';;;''++':::::,::::,,,.........`..`.`````````````````.``..````.```````..`.````````````.
`.`````````````..,,:::::::,.,,:::;;;;::::::::,:::;;;;;;::::::;::::::;::;::::;;;;;;;;;;;;;;;;;;;;;;;;;';;;;;;;;;;;;;;;''+':::::::::,::,,,,,...............``````````````.``..````````.`..``...```````..`.
`````````````....,::::::::,,,,,:::;;::::::,:,,,:::;;;::::::::::::::;;::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;';;;;';+;::::::::::::,,,,,,,,...............```````..`..````````````.`.`....``````````..`
``````````.```..,,:::::;:,,,,,,::::;;::::;::,,,::::;;::::::::::;:;::;::;::::;:::;;;:;;;;;;;;;;;;;'';;''';;;;;;;;;;;;;';;;::::::::::;:,,,,.,.,............`....`````.`.`.```..`````.....``.`.```..````...
``````````.``..,,:::::::,,,,,,::::::::::::::,,,,::::;;:::::::::::::;;::::;:;;;;;;:;;;::;;;;;;;;';;';''''';;;;;;;;;;;;;:;;::::::::::::::,,,,,,,,....,......`....`.`...`````````.`...`..`.```````.``..````
`````````.``...,::::::;:,,:,,,::::::::::::::,,,,::::;;;::::,::::::::::::::::;;:;;:;;;;;::;:;;;;;';'''''''';;;;;;;::;;;;::;;::::;::;::::,,,,,,,,,.,.........```.````.````````...``.`.`````````......`````
````````......,,::::::::,,,,,,::::;:::::::::,,,:::::;;:::::::::::::::::::;:;;;::;;;;;;;:;;;::;:;:;;;'''''';;;::::::;;;:::;::::::::::::::,,,,,,,.,...................```````..``.`..```````.`..`..```.```
````````.....,,,,::::::::,,,,,,:::::::::,:::::,:::::::::::::::::::::::::::;;;;;:;;;;;;;;;;;;;:;;;;;:;;;;;;;:;:;;;;:;::;:;::::::;:;:::::::,,,,,,.,,..,...............`````......`.`.`````.`.`.```````````
```..``..`...,,,,::::::::::,,,::::::::,:,:::::,:::::;;;:::::::;::::::::::::;:;::;;;:;;;;;:;;;;;;;;;;;;;;;;;;;;;;;:;;;;;;::::::;:;;:;::::::,,..,,..,,..,....,....`......`.......```````..```...``..``....
...```........,,,::::::::::,,,:::::::::::::::,:::::::;;::::::::::::::::;::;::;::;;;;;;;;;;;;;;;;;;;;;;:;;;;;;;;;;;;;;;::::::;:::;::::::::::,,..,....,,.,,.,,,..........`..`.``.`.`.`..`.....``````......
``````.....,,,,,::::::::::::,,,::;:;:::::::::,:::::::;::::::::::::::::::::;::::::;:;;;;;:;;:;;;;;;;;;;;;;;;;;;;;;;;;;:;:;;:;::;;::;::::::::,,,,.,,.,,,,....,,............``..````````.`.`.`````.```.`...
````..``....,,,::::::::::::,,:::;;::;::::;:::,,:::::::;::::::::::::::;:::::;:;;;;;;;;;::::;;;;:;;;;;;;;;;;;;;;;;;;;;;;;;;::::;:::;::::::::::,,..,,,.,,,,,.,..,..,,,.........`.``.`...`.`.``.````.`.``.``
```````.....,,:,:::::::::::,,,::::::;::::;:::,:::::;:;;::::::::::::::::;;::::;:::;:;;;;;;;;;;;;;;:;;;;;;;;;;;;;;;;;;;;;::::::::::;:::::::::::,,,.,,,,,,,,,.,.,..,,,.,......`````......`.`.``````..`..```
...........,,:,::::::::;;:::,::::::;::::::::::,:::::;;;::::::::::::::::::::::::;;;;;::::;;;;;;;;;;;;;;;;;;;;;';;;;;;;;;;::;:::::;:::::;::::::,,,.,..,,,,,,,.,..,,,,,,.......`.`.`...``````````.`.`.`````
............,,:::::::::;;::::,:::::::::::;::::::::::::::::::::;::::;:::::::;;::::;;;;;:;::;;;;;;;;;;;;;;;;;;;;;;;:;;;;;:;:;;:::::::::::::::::,,,...,,.,,,,,,,,.,..,,,,,......`.......`.````..`.```.`````
........,...,,:::::::::;;:::::::::::::::::::::::::::::;;::::::;::::::::::::;;;:::::;;:;;:;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::;::::::,,,...,,,,,,,,.,.,.,,,,,,.,,,....`.````````......````````
.......,..,,,,:::::;;::;::::,::,,:,:::::;;::::::::::::;;;:::::;::;::::;:::::::::;;;;::::;;;;;;:;;;;;:;:;:;;;;;;;;;;;;;;;::::;:::::::::::::::;::,.,...,,,,,,,,,..,,,,,.,,.,,,,......`.``````.`.`.````````
`.........,,,,::::;;;;:;;::::,:,:,,::::;;:;::::::::::;;;;:::::::::;:::::;:;;::::;;;;::::::;::;;;:;;;;;;;;;;;;;;;;;;;;:::;;;;:::::::;::::::;:::::,..,.,,.,,,,,,,.,,,,,,,,,,,,,,..````````.```````````````
..........,,,::::;;;:;:;;:::::::::::::::;;;:::::::::::::;:::::::::;;;;;::::;;:::::;;;;::;::;:;:::;;;;;;;:;:;;;;;;;;:::;;;;;:::::::::::::::::::::,.......,,,,,,,,,,..,,,,,,,,::,.``````.`.```````````````
Comments