oooooooo .o .o .o dP""""""" o888 .d88 o888 d88888b. 888 .d'888 888 `Y88b 888 .d' 888 888 ]88 888 88ooo888oo 888 o. .88P 888 888 888 `8bd88P' o888o o888o o888o
.oooo. .oooo. oooooooo .oooo. .dP""Y88b .dP""Y88b dP""""""" .dP""Y88b ]8P' ]8P' d88888b. ]8P' <88b. <88b. `Y88b .d8P' `88b. `88b. ]88 .dP' o. .88P o. .88P o. .88P .oP .o `8bd88P' `8bd88P' `8bd88P' 8888888888