::::::::::::::    ::::::::::::::::::::::::::::::::: 
       :+:       :+:+:   :+:    :+:    :+:       :+:    :+: 
      +:+       :+:+:+  +:+    +:+    +:+       +:+    +:+  
     +#++:++#  +#+ +:+ +#+    +#+    +#++:++#  +#++:++#:    
    +#+       +#+  +#+#+#    +#+    +#+       +#+    +#+    
   #+#       #+#   #+#+#    #+#    #+#       #+#    #+#     
  #############    ####    ###    #############    ###
//////////////////////////////////////////
//                    .___              //
// ____________     __| _/____ _______  //
// \_  __ \__  \   / __ |\__  \\_  __ \ //
//  |  | \// __ \_/ /_/ | / __ \|  | \/ //
//  |__|  (____  /\____ |(____  /__|    //
//             \/      \/     \/        //
//////////////////////////////////////////