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