=====================================================   __         __  =======
                                                      ///\\\     ///\\\
                        /\                           ////\\\\(~)////\\\\
                       /  \                         ////' `/~' `~\' `\\\\
                      /    \            /\         /// '  `\\_|_//'  ` \\\
      /\      /\     /      \   /\     /  \       // '      |~|~|      ` \\
     /  \_   /  \  / ____ ____\/   \  /    \      '         | | |  /\     `
\   /  ,  `\/    \/  \  / \  / \    \/      \          /\   | | | /  \
  \/  "|"   \    /    ||___||   /~~\  \~~/  \~\  /~/  /  \  |   |/    \
  /   /\     \  /     | ___ |  | /\ |  ||     \\//   /    \|_____|     \  /\
/    //\\\    \/      ||   ||  | \/ |  ||___   || \ /      \/           \/  \
    ///\\\\     \    /__\ /__\  \__/   |____\ /__\  \__   __\__          \
~~--| /\ || --~~~~~-================================~  ~~~     ~~~-----~~ ~-
    | || ||___________        _    _
    | ~~ |////////////\      | \  / |
   //////////////////  \     ||\\//||   ()  /~~~\  /~~~\  ()  /~~\  |~\  ||
   |  /\   /\  /\   | .|     || \/ ||   ,.  \ \~~' \ \~~' ,. | /\ | ||\\ ||
   |  ||   ||  ||   ||||     ||    ||   ||  __\`\  __\`\  || | \/ | || \\||
   |  ~~   ~~  ~~   |||/    /__\  /__\  \/  \___/' \___/' \/  \__/  ||  \_|
   |________________|/     =================================================

