...;;;;;;;;;;;;;;;;;;;;;;;;;;;...
,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;.
.;;;;;;;|;;;|;;|;;;;;;|;;|;;;|;;;|;;;;;:;;;
.;;:::::::::|:::|::||::::::::::::::::::; ;;;;`;
;;;:::::::|:|:::|::|:||::|::|::||::|::::; ;::::`;
;::::::::::::::|:::|::||::::|:|::::|::::,' .;;;;;;;;;
;;:::::::::`:|:::::::::'`;;;;;;;;;;;;;' :;;;);;;;;;
;;;::::(:::; `````````` '''''''''''' :;;;(;;;;;
;;;::::):;;' ``.;;);;;;;
;;;:::(::; `;;;(;;;;;
;;;::::::; % . . :;;;;;;;;
_;;;;;;);; %%, . . . :;;;;;;;;
\;;;;;;;;' %%%% ::: :;);;;;
\;;;;(;: %%% ' ::: , " :(;;;;;
_ \;;;| :: x. | |,' :;);;; _
)\ \;;: `%##%#% Xx : #% %####%.,, :;;; /(
\ (_ \;| ;###%. XX :##%. ,##. " |;; _) /
\ \_::` _ .%########:; ; `###########h.,- _ , :_/ /
\ ]|:: = XX%x < (_) )``"" \`%( (_) > _ = |[ /
: |::. ~ % `----'x#| ; %`----' ~ | :
: |::: % X#: ` xXx | :
| |::: `xxxxd' #| ` `dxxxxx" | |
| |::' x#| | |
| |::. __ X#: ;::::;;;; |` |
\_ |::::. ,;;;;x#| """\ ;;; |_/
\_::::: .;;(CCc%: |;;;::::::::;"" |/
:%:::......;' `CCc`-. ,-' `:::::::' :
`%%%%::~~~~ `. _,' ~~~~~ ;; ;
`;%;:' `--' . )) ,'
`;;' ::::'_ ______""______ _,%; ;:' ,'
_____`, ::: )`--'\ /`' \ `--'( `; ' ,____
__/######`, `: \----\ /-----\ /---/ ` ,'####\
/##########`, ` `--._\/_______\/,--' ,'#######\
_/############`-.__ , ~~~~~~` __,-'#####x####\
/#########x#########`-._ ` _,-'|##########x####\
/#########x#########/|@@@`-._ ^ _,'@@|n|###########x#####\
/#########x#########/ |@@@@@@@`----'`---'@@@@@@|n|###########x####/
\##########x#######|n |@@@@@@@@@|aaaaa|@@@@@@@@|nN|#########x####/
\#########x######|nN |@@@@@@@@|aaaaa|@@@@@@@@|nNn|#######x####/
\#######x#####|nN |@@@@@@@@|aaaaa|@@@@@@@@|nNn|#####x####/
\###########|nNNn|@@@@/~~~`aaaaa'~~~\@@@@|nNn|########/
\#######|nNNN ~~~~+++++~~~~~ +++ ~~~~~nNNn|####/
_/#######|nNNNN|a`.++++++++++++++,'aa|NNNNn|####\_
__/########|nNNNNN|aaa\_++++++++++_/aaaa|NNNNn|######\__
/###########|nNNNNN|aaaaa\_++++++_/aaaaaa|NNNNNn|########\__
_/###########|nNNNNNNN|aaaaaaa\__/aaaaaaaa|NNNNNNn|###########\_
/#############|nNNNNNNN|aaaaaaaa 0 aaaaaaaa|NNNNNNn|#############
###############|nNNNNNNN|aaaaaaaa o aaaaaaaa|NNNNNNn|#############
##############|nNNNNNNNN|aaaaa __/_\__ aaaaa|NNNNNNNn|############
##############|nNNNNNNNN|aaaa o (( )) `o aaa|NNNNNNNn|############
#############|nNNNNNNNNN|aaaaa `-.~ .-' aaaa|NNNNNNNnN|###########
_____ __ ___ _ \/ _____ __ _ _ _____
| |__) | .' |/ oR | |_) |_ /_\ |
| | \ _|_ :__ |\ /\,./\ | | \ |_ / \ |
)/`'\(
...;;;;;;;;;;;;;;;;;;;;;;;;;;;...
,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;.
.;;;;;;;|;;;|;;|;;;;;;|;;|;;;|;;;|;;;;;:;;;
.;;:::::::::|:::|::||::::::::::::::::::; ;;;;`;
;;;:::::::|:|:::|::|:||::|::|::||::|::::; ;::::`;
;::::::::::::::|:::|::||::::|:|::::|::::,' .;;;;;;;;;
;;:::::::::`:|:::::::::'`;;;;;;;;;;;;;' :;;;);;;;;;
;;;::::(:::; `````````` '''''''''''' :;;;(;;;;;
;;;::::):;;' ``.;;);;;;;
;;;:::(::; `;;;(;;;;;
;;;::::::; % . . :;;;;;;;;
_;;;;;;);; %%, . . . :;;;;;;;;
\;;;;;;;;' %%%% ::: :;);;;;
\;;;;(;: %%% ' ::: , " :(;;;;;
_ \;;;| :: x. | |,' :;);;; _
)\ \;;: `%##%#% Xx : #% %####%.,, :;;; /(
\ (_ \;| ;###%. XX :##%. ,##. " |;; _) /
\ \_::` _ .%########:; ; `###########h.,- _ , :_/ /
\ ]|:: = XX%x < (_) )``"" \`%( (_) > _ = |[ /
: |::. ~ % `----'x#| ; %`----' ~ | :
: |::: % X#: ` xXx | :
| |::: `xxxxd' #| ` `dxxxxx" | |
| |::' x#| | |
| |::. __ X#: ;::::;;;; |` |
\_ |::::. ,;;;;x#| """\ ;;; |_/
\_::::: .;;(CCc%: |;;;::::::::;"" |/
:%:::......;' `CCc`-. ,-' `:::::::' :
`%%%%::~~~~ `. _,' ~~~~~ ;; ;
`;%;:' `--' . )) ,'
`;;' ::::'_ ______""______ _,%; ;:' ,'
_____`, ::: )`--'\ /`' \ `--'( `; ' ,____
__/######`, `: \----\ /-----\ /---/ ` ,'####\
/##########`, ` `--._\/_______\/,--' ,'#######\
_/############`-.__ , ~~~~~~` __,-'#####x####\
/#########x#########`-._ ` _,-'|##########x####\
/#########x#########/|@@@`-._ ^ _,'@@|n|###########x#####\
/#########x#########/ |@@@@@@@`----'`---'@@@@@@|n|###########x####/
\##########x#######|n |@@@@@@@@@|aaaaa|@@@@@@@@|nN|#########x####/
\#########x######|nN |@@@@@@@@|aaaaa|@@@@@@@@|nNn|#######x####/
\#######x#####|nN |@@@@@@@@|aaaaa|@@@@@@@@|nNn|#####x####/
\###########|nNNn|@@@@/~~~`aaaaa'~~~\@@@@|nNn|########/
\#######|nNNN ~~~~+++++~~~~~ +++ ~~~~~nNNn|####/
_/#######|nNNNN|a`.++++++++++++++,'aa|NNNNn|####\_
__/########|nNNNNN|aaa\_++++++++++_/aaaa|NNNNn|######\__
/###########|nNNNNN|aaaaa\_++++++_/aaaaaa|NNNNNn|########\__
_/###########|nNNNNNNN|aaaaaaa\__/aaaaaaaa|NNNNNNn|###########\_
/#############|nNNNNNNN|aaaaaaaa 0 aaaaaaaa|NNNNNNn|#############
###############|nNNNNNNN|aaaaaaaa o aaaaaaaa|NNNNNNn|#############
##############|nNNNNNNNN|aaaaa __/_\__ aaaaa|NNNNNNNn|############
##############|nNNNNNNNN|aaaa o (( )) `o aaa|NNNNNNNn|############
#############|nNNNNNNNNN|aaaaa `-.~ .-' aaaa|NNNNNNNnN|###########
_____ __ ___ _ \/ _____ __ _ _ _____
| |__) | .' |/ oR | |_) |_ /_\ |
| | \ _|_ :__ |\ /\,./\ | | \ |_ / \ |
)/`'\(