_______     ___    _ ,---.   .--.,---------.     .-------.    ____    .-------. ,---------.  ____     __  
       /   __  \  .'   |  | ||    \  |  |\          \    \  _(`)_ \ .'  __ `. |  _ _   \\          \ \   \   /  / 
      | ,_/  \__) |   .'  | ||  ,  \ |  | `--.  ,---'    | (_ o._)|/   '  \  \| ( ' )  | `--.  ,---'  \  _. /  '  
    ,-./  )       .'  '_  | ||  |\_ \|  |    |   \       |  (_,_) /|___|  /  ||(_ o _) /    |   \      _( )_ .'   
    \  '_ '`)     '   ( \.-.||  _( )_\  |    :_ _:       |   '-.-'    _.-`   || (_,_).' __  :_ _:  ___(_ o _)'    
     > (_)  )  __ ' (`. _` /|| (_ o _)  |    (_I_)  _ _  |   |     .'   _    ||  |\ \  |  | (_I_) |   |(_,_)'     
    (  .  .-'_/  )| (_ (_) _)|  (_,_)\  |   (_(=)_)( ` ) |   |     |  _( )_  ||  | \ `'   /(_(=)_)|   `-'  /      
     `-'`-'     /  \ /  . \ /|  |    |  |    (_I_)(_{;}_)/   )     \ (_ o _) /|  |  \    /  (_I_)  \      /       
       `._____.'    ``-'`-'' '--'    '--'    '---' (_,_) `---'      '.(_,_).' ''-'   `'-'   '---'   `-..-'