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