╔╦╗───────╔═╦╗─────╔╗────────────────╔╦╗─╔╗╔╗───────╔╗───╔╗
╠╣╠══╗─╔╦╦╣═╣╚╗╔═╗─║╚╦═╦═╦═╦╦═╗╔═╦═╗╔╝╠╬╦╣╚╣╚╦═╗╔═╗─║╚╦═╗║╚╦╦╗
║╠╣║║║─╠╣║╠═║╔╣║╬╚╗║╔╣╩╣╩╣║║║╬╚╣╬║╩╣║╬║║╔╣╔╣╬║╬╚╣╬╠╗║╬║╬╚╣╬║║║
╚╝╚╩╩╝╔╝╠═╩═╩═╝╚══╝╚═╩═╩═╩╩═╩══╬╗╠═╝╚═╩╩╝╚═╩═╩══╬╗╠╣╚═╩══╩═╬╗║
──────╚═╝──────────────────────╚═╝──────────────╚═╝╝───────╚═╝