___           ___                       ___           ___       ___           ___     
     /\  \         /\  \          ___        /\  \         /\__\     /\  \         /\  \    
    /::\  \       /::\  \        /\  \      /::\  \       /:/  /    /::\  \       /::\  \   
   /:/\:\  \     /:/\:\  \       \:\  \    /:/\ \  \     /:/  /    /:/\:\  \     /:/\:\  \  
  /::\~\:\  \   /::\~\:\  \      /::\__\  _\:\~\ \  \   /:/  /    /::\~\:\  \   /::\~\:\  \ 
 /:/\:\ \:\__\ /:/\:\ \:\__\  __/:/\/__/ /\ \:\ \ \__\ /:/__/    /:/\:\ \:\__\ /:/\:\ \:\__\
 \/__\:\/:/  / \/__\:\/:/  / /\/:/  /    \:\ \:\ \/__/ \:\  \    \:\~\:\ \/__/ \:\~\:\ \/__/
      \::/  /       \::/  /  \::/__/      \:\ \:\__\    \:\  \    \:\ \:\__\    \:\ \:\__\  
       \/__/        /:/  /    \:\__\       \:\/:/  /     \:\  \    \:\ \/__/     \:\ \/__/  
                   /:/  /      \/__/        \::/  /       \:\__\    \:\__\        \:\__\    
                   \/__/                     \/__/         \/__/     \/__/         \/__/