,-----.     ____..--'   ____    ,---.   .--.  .-_'''-.       .-''-.     .-'''-.  
  .'  .-,  '.  |        | .'  __ `. |    \  |  | '_( )_   \    .'_ _   \   / _     \ 
 / ,-.|  \ _ \ |   .-'  '/   '  \  \|  ,  \ |  ||(_ o _)|  '  / ( ` )   ' (`' )/`--' 
;  \  '_ /  | :|.-'.'   /|___|  /  ||  |\_ \|  |. (_,_)/___| . (_ o _)  |(_ o _).    
|  _`,/ \ _/  |   /   _/    _.-`   ||  _( )_\  ||  |  .-----.|  (_,_)___| (_,_). '.  
: (  '\_/ \   ; .'._( )_ .'   _    || (_ o _)  |'  \  '-   .''  \   .---..---.  \  : 
 \ `"/  \  ) /.'  (_'o._)|  _( )_  ||  (_,_)\  | \  `-'`   |  \  `-'    /\    `-'  | 
  '. \_/``".' |    (_,_)|\ (_ o _) /|  |    |  |  \        /   \       /  \       /  
    '-----'   |_________| '.(_,_).' '--'    '--'   `'-...-'     `'-..-'    `-...-'