d8b                                      d8b
   d8P ?88                 d8P                  88P
d888888P88b             d888888P               d88
  ?88'  888888b  d888b8b  ?88' .d888b,     d888888   d8888b ?88,.d88b, d8888b
  88P   88P `?8bd8P' ?88  88P  ?8b,       d8P' ?88  d8P' ?88`?88'  ?88d8b_,dP
  88b  d88   88P88b  ,88b 88b    `?8b     88b  ,88b 88b  d88  88b  d8P88b
  `?8bd88'   88b`?88P'`88b`?8b`?888P'     `?88P'`88b`?8888P'  888888P'`?888P'
                                                              88P'
                                                             d88
                                                             ?8P