ad88                       88            88
  d8"                         88            ""   ,d
  88                          88                 88
MM88MMM ,adPPYba, 8b,     ,d8 88   ,d8      88 MM88MMM
  88   a8"     "8a `Y8, ,8P'  88 ,a8"       88   88
  88   8b       d8   )888(    8888[         88   88
  88   "8a,   ,a8" ,d8" "8b,  88`"Yba,  888 88   88,
  88    `"YbbdP"' 8P'     `Y8 88   `Y8a 888 88   "Y888