_              _   _             ____                   _                   _                
 | |__     ___  | | | |   ___     / __ \   _ __    __ _  (_)  _ __         __| |   ___  __   __
 | '_ \   / _ \ | | | |  / _ \   / / _` | | '__|  / _` | | | | '_ \       / _` |  / _ \ \ \ / /
 | | | | |  __/ | | | | | (_) | | | (_| | | |    | (_| | | | | | | |  _  | (_| | |  __/  \ V / 
 |_| |_|  \___| |_| |_|  \___/   \ \__,_| |_|     \__,_| |_| |_| |_| (_)  \__,_|  \___|   \_/  
                                  \____/