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