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