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