,e,         d8                  888                           888                
888 888 8e   "   dP"Y  d88    ,e e,  888,8, 888 88e   ,"Y88b 888 8e   e88 888  ,e e,  888,8, 
888 888 88b 888 C88b  d88888 d88 88b 888 "  888 888b "8" 888 888 88b d888 888 d88 88b 888 "  
888 888 888 888  Y88D  888   888   , 888    888 888P ,ee 888 888 888 Y888 888 888   , 888    
888 888 888 888 d,dP   888    "YeeP" 888    888 88"  "88 888 888 888  "88 888  "YeeP" 888