_    _     _____     _____     ______     _____  
| || | ||  |  ___||  / ____||  /_   _//   / ___// 
| || | ||  | ||__   / //---`'   -| ||-    \___ \\ 
| \\_/ ||  | ||__   \ \\___     _| ||_    /    // 
 \____//   |_____||  \_____||  /_____//  /____//  
  `---`    `-----`    `----`   `-----`  `-----`