__  __                   _           _                        _      ____    ___             _       _    ___        _   _  _   
 |  \/  |   ___    _ __   (_)  _ __   (_)   ___    _ __        / \    |  _ \  |_ _|   __   __ / |     / |  ( _ )      / | | || |  
 | |\/| |  / _ \  | '_ \  | | | '_ \  | |  / _ \  | '_ \      / _ \   | |_) |  | |    \ \ / / | |     | |  / _ \      | | | || |_ 
 | |  | | | (_) | | |_) | | | | | | | | | | (_) | | | | |    / ___ \  |  __/   | |     \ V /  | |  _  | | | (_) |  _  | | |__   _|
 |_|  |_|  \___/  | .__/  |_| |_| |_| |_|  \___/  |_| |_|   /_/   \_\ |_|     |___|     \_/   |_| (_) |_|  \___/  (_) |_|    |_|  
                  |_|