                                                                                                                                                                                                                                                                                      
                                                                                                                                                                                                                                                                                      
   ,---,                ___                                               ___                                                 ____                                       ,--,                                                                                                         
,`--.' |              ,--.'|_                                           ,--.'|_    ,--,                                     ,'  , `.                ,---,              ,--.'|                                                                                                         
|   :  :      ,---,   |  | :,'             __  ,-.                      |  | :,' ,--.'|                                  ,-+-,.' _ |   ,---.      ,---.'|         ,--, |  | :                                                                                                         
:   |  '  ,-+-. /  |  :  : ' :           ,' ,'/ /|                      :  : ' : |  |,       .---.                    ,-+-. ;   , ||  '   ,'\     |   | :       ,'_ /| :  : '                                                                                                         
|   :  | ,--.'|'   |.;__,'  /     ,---.  '  | |' | ,--.--.      ,---. .;__,'  /  `--'_     /.  ./|   ,---.           ,--.'|'   |  || /   /   |    |   | |  .--. |  | : |  ' |      ,---.                                                                                              
'   '  ;|   |  ,"' ||  |   |     /     \ |  |   ,'/       \    /     \|  |   |   ,' ,'|  .-' . ' |  /     \         |   |  ,', |  |,.   ; ,. :  ,--.__| |,'_ /| :  . | '  | |     /     \                                                                                             
|   |  ||   | /  | |:__,'| :    /    /  |'  :  / .--.  .-. |  /    / ':__,'| :   '  | | /___/ \: | /    /  |        |   | /  | |--' '   | |: : /   ,'   ||  ' | |  . . |  | :    /    /  |                                                                                            
'   :  ;|   | |  | |  '  : |__ .    ' / ||  | '   \__\/: . . .    ' /   '  : |__ |  | : .   \  ' ..    ' / |        |   : |  | ,    '   | .; :.   '  /  ||  | ' |  | | '  : |__ .    ' / |                                                                                            
|   |  '|   | |  |/   |  | '.'|'   ;   /|;  : |   ," .--.; | '   ; :__  |  | '.'|'  : |__\   \   ''   ;   /|        |   : |  |/     |   :    |'   ; |:  |:  | : ;  ; | |  | '.'|'   ;   /|                                                                                            
'   :  ||   | |--'    ;  :    ;'   |  / ||  , ;  /  /  ,.  | '   | '.'| ;  :    ;|  | '.'|\   \   '   |  / |        |   | |`-'       \   \  / |   | '/  ''  :  `--'   \;  :    ;'   |  / |                                                                                            
;   |.' |   |/        |  ,   / |   :    | ---'  ;  :   .'   \|   :    : |  ,   / ;  :    ; \   \ ||   :    |        |   ;/            `----'  |   :    :|:  ,      .-./|  ,   / |   :    |                                                                                            
'---'   '---'          ---`-'   \   \  /        |  ,     .-./ \   \  /   ---`-'  |  ,   /   '---"  \   \  /         '---'                      \   \  /   `--`----'     ---`-'   \   \  /                                                                                             
                                 `----'          `--`---'      `----'             ---`-'            `----'                                      `----'                            `----'                                                                                              
                                                                                                    ,----,                                                                                                        ,----,                    ,----,                                    
               ,----..             ____  ,-.----.                                                 ,/   .`|                                                                 ,--.         ,--.    ,----..         ,/   .`|                  ,/   .`|            ,----..            ,--. 
  ,----..     /   /   \          ,'  , `.\    /  \     ,---,       ,-.----.      ,---,          ,`   .'  :   ,---,                ,---,.              ,---,              ,--.'|       ,--.'|   /   /   \      ,`   .'  : ,---,          ,`   .'  :   ,---,   /   /   \         ,--.'| 
 /   /   \   /   .     :      ,-+-,.' _ ||   :    \   '  .' \      \    /  \    '  .' \       ;    ;     /,`--.' |       ,---.  ,'  .' |             '  .' \         ,--,:  : |   ,--,:  : |  /   .     :   ;    ;     /'  .' \       ;    ;     /,`--.' |  /   .     :    ,--,:  : | 
|   :     : .   /   ;.  \  ,-+-. ;   , |||   |  .\ : /  ;    '.    ;   :    \  /  ;    '.   .'___,/    ,' |   :  :      /__./|,---.'   |            /  ;    '.    ,`--.'`|  ' :,`--.'`|  ' : .   /   ;.  \.'___,/    ,'/  ;    '.   .'___,/    ,' |   :  : .   /   ;.  \,`--.'`|  ' : 
.   |  ;. /.   ;   /  ` ; ,--.'|'   |  ;|.   :  |: |:  :       \   |   | .\ : :  :       \  |    :     |  :   |  ' ,---.;  ; ||   |   .'           :  :       \   |   :  :  | ||   :  :  | |.   ;   /  ` ;|    :     |:  :       \  |    :     |  :   |  '.   ;   /  ` ;|   :  :  | | 
.   ; /--` ;   |  ; \ ; ||   |  ,', |  ':|   |   \ ::  |   /\   \  .   : |: | :  |   /\   \ ;    |.';  ;  |   :  |/___/ \  | |:   :  |-,           :  |   /\   \  :   |   \ | ::   |   \ | :;   |  ; \ ; |;    |.';  ;:  |   /\   \ ;    |.';  ;  |   :  |;   |  ; \ ; |:   |   \ | : 
;   | ;    |   :  | ; | '|   | /  | |  |||   : .   /|  :  ' ;.   : |   |  \ : |  :  ' ;.   :`----'  |  |  '   '  ;\   ;  \ ' |:   |  ;/|           |  :  ' ;.   : |   : '  '; ||   : '  '; ||   :  | ; | '`----'  |  ||  :  ' ;.   :`----'  |  |  '   '  ;|   :  | ; | '|   : '  '; | 
|   : |    .   |  ' ' ' :'   | :  | :  |,;   | |`-' |  |  ;/  \   \|   : .  / |  |  ;/  \   \   '   :  ;  |   |  | \   \  \: ||   :   .'           |  |  ;/  \   \'   ' ;.    ;'   ' ;.    ;.   |  ' ' ' :    '   :  ;|  |  ;/  \   \   '   :  ;  |   |  |.   |  ' ' ' :'   ' ;.    ; 
.   | '___ '   ;  \; /  |;   . |  ; |--' |   | ;    '  :  | \  \ ,';   | |  \ '  :  | \  \ ,'   |   |  '  '   :  ;  ;   \  ' .|   |  |-,           '  :  | \  \ ,'|   | | \   ||   | | \   |'   ;  \; /  |    |   |  ''  :  | \  \ ,'   |   |  '  '   :  ;'   ;  \; /  ||   | | \   | 
'   ; : .'| \   \  ',  / |   : |  | ,    :   ' |    |  |  '  '--'  |   | ;\  \|  |  '  '--'     '   :  |  |   |  '   \   \   ''   :  ;/|       ___ |  |  '  '--'  '   : |  ; .''   : |  ; .' \   \  ',  /     '   :  ||  |  '  '--'     '   :  |  |   |  ' \   \  ',  / '   : |  ; .' 
'   | '/  :  ;   :    /  |   : '  |/     :   : :    |  :  :        :   ' | \.'|  :  :           ;   |.'   '   :  |    \   `  ;|   |    \    .'  .`||  :  :        |   | '`--'  |   | '`--'    ;   :    /      ;   |.' |  :  :           ;   |.'   '   :  |  ;   :    /  |   | '`--'   
|   :    /    \   \ .'   ;   | |`-'      |   | :    |  | ,'        :   : :-'  |  | ,'           '---'     ;   |.'      :   \ ||   :   .' .'  .'   :|  | ,'        '   : |      '   : |         \   \ .'       '---'   |  | ,'           '---'     ;   |.'    \   \ .'   '   : |       
 \   \ .'      `---`     |   ;/          `---'.|    `--''          |   |.'    `--''                       '---'         '---" |   | ,',---, '   .' `--''          ;   |.'      ;   |.'          `---`                 `--''                       '---'       `---`     ;   |.'       
  `---`                  '---'             `---`                   `---'                                                      `----'  ;   |  .'                   '---'        '---'                                                                                    '---'   
