::::::::::│ :::::::i |:::::::::::::::::::::::::::
::::::::::│ .. ...... : :::::: l |: : ::::::::::::::::::::
::::::::::│ .. . .. . .. .. . : :::: : : ::::l ! .: :: ::::::::: |::::
::::::::::│................................ .......................... ................................. :::::::::::: ,. -─……… - i ! ::::::::::::::::::|::::
::::::::::│:::::::::::::::::::::::::::::::::::::::::::: : ::::::::::::::::::::::::::::::::::::::::::: :: :: ::: : / ::::::::::::::::::::::::::::::::::::::::::::ヽ! ::::::::::::::::::|::::
::::::::::│:::::::::::::::::::::::::::::::::: : :::::::::::::::::::::::::: ::::::: ::::::: : : :::::::::::::: / :::/:/ ' : | :::::\:::::::::::::::::::::: ヽ : ::::::::: |::::
::::::::::│ ::: : :::: : :: :: : :: :: :: :: :: :: : : : ::: : : :: : : :: :::: : : :: ::: :./::/::::/:::| : :| ::::ヾ::::ヽ:::::::::::::::::::::::V::::::::: |::::
::::::::::│:;:;: : : : : : : : : : : : : : : : ノ:;:; : : : : : : : : : : : : : : : : l:/ :::::: ' : :| : :|::::::::::|_ノ ::::::::::::::::::::::::|:::::::::::|::::::
::::::::::│;::::.,.,..,., :::::::::.,. ;::;;:':;:;:;::;:;::;ヽ :: : : :: ,., __ ,..,... :;:;\ / :::::j ::::|__::::イ:::::::::::::::::: l::::::::::|:::::::::::|:::::::
::::::::::│人;::;:;:;:;:"'ノ:;:;:;:;::;:;f:;:;:;::;:;:;:;::;:;:;:;:::;:`Y"´:;;::;:;:;:;:;::;:; ;:;:;:;:;::;:;丁::::`ー|::::::::::::ヽ :::::::::::: | ::::::::| ::::::::::::::::
::::::::::│:;:;:;: . :;:;:;:;:;:;::;:;:., ':;:;:;:;:;:;::::::::::::::::;::;:;:;:;::;:;:;:;:;:;:;: Y : :;:;:;::;:;:;::;│:::::::::|!:::::::::::::: ' , ::::::::::',::::/::! ::::::::::::::::
::::::::::│;:;:;::;:;:);::;:;:;:;:;:ノ;;;;::;:;:;:;:;:;;:::::::::::::::ノヾ:;:;:;:;:;::;:;: /:;:;:;:;:;::;:;:;:;:: │:::::::ハヽ.::::::::::::::\::::::::V:::::! ::::::::::::::::
::::::::::│:;:;:ノ ⌒ v':;:;:;:;:;::;:;:;::::::::::::::::::::j;::;:;:;:;::;ヽ ;:;:;:;::;:;::::::;:;:;::;:;:;:;::;│::::/`ー |! ` ー- 、:::ヽ:::::|::::| ::::::::::::::::
::::::::::│´":;:;::;:;:/:;:;:;:;:;:;::;:;:;:::::::::::::::::::; '":;:;:;:;:;:;:;::ヾ:;:;:;:;:;:;:;::;:;::;:;:;:;::; |:::::l :;:;:;:/ゝ) --ァ⌒:ヾ ::: |::::| ::::::::::::::::
::::::::::│::;:;: :::::::::::::>:;;:;::::;:;:;::;:;:;:;: /:;:;:;:;:;:;:;:;::;:;:;:::::;i;:;:;:;:;::;:;:;ヾ:;:;:;:;: |:::::| ;: /:::::/ / / ::::::V::|::::| ::::::::::::::::
::::::::::│:;:;:;::v '":;:;:;:;;::;:;:,,,. ::;:;:;:;:;:/;::;:;:;:;:;::;:;:::::;:;::;:;:;i;::;:;:;:;:;:;::;:;:ゞ:::;:│:::| :::l:: ノノ / ::::::: |::::::::', :::::::::::::::
::::::::::│:;:;:;::;;ヾ.:;:;:;:;:;レ':;::;:;:V:;:;:;ゞ:;:;:;:;:;:;:;:;:;::;:;:;:::;:;:ノ ::;:;:;:;:;::;:;:;::;:;:; │:::|;:: レ′ | Y ::::::: | :::::::ハ ::::::::::::
::::::::::│:;:;:;:;::;:;:;:V`:;:;:;:;:;:;:;:;:::::;::;:;:;:;::;:;:;::;:;:;:;: ,. ⌒ 、 :; :;:;:;:;::;:; │:│:│ :| ! :::::::::/ :::::: |: ', ::::::::::::
::::::::::│,.;;.:;::;::;::;:;i ';::;:;:;:;:;::;:;:;:;::;:;:;:;:;:;::;:;:;: / l \:;:;::;:;:;:;:;:│:/ ハ `ー| :::: ハ ::::::: |::::V :::::::::
::::::::::│;:;:;:;:;::;:;:;: v ;::;:;:;:;:;:;:;:;:;:;:;:;::;:;:;:;:; / :::::::::::: |::::::::. \ : : :::::;::;:;::: } i | :::::| j::::::::: ! :::| ::::::::::
::::::::::│ ; : : : :: :::: ヽ :;:;:;:;:;:;::;:;:;:;:;:;:;::;:;ハ .::::::::::::::::|::::::::::: \_ :;:;::; _ 人 i | :::::|ノ ::::|::::! :::| ::::::::::
::::::::::│"ヽ:;:;:;:;:;:;:;:;::;:\ :;:;::::;::;:;:;::;:;:;: Y ` 、:::::::::::|:::::::::::::::::::: √::「 . ::::::: | :::::| ::::: |::::| :::| ::::::::::
::::::::::│:;:;:;:;):;:;:;:;:;::;:;:;:;:: ):;:;:;:;:;:;::;:;::;:;::; | :::::\:::: |:::::::::::::::::::::::::::! :::|::::........... :::::::::: | :::::| ::::: |::::|:::ノ :::::::::::