ooo ooooo oooooooo .oooooo. .oooo.
`88. .888' dP""""""" d8P' `Y8b .dP""Y88b
oooo ooo 888b d'888 oooo ooo d88888b. 888 ]8P'
`88. .8' 8 Y88. .P 888 `88b..8P' `Y88b 888 .d8P'
`88..8' 8 `888' 888 Y888' ]88 888 ooooo .dP'
`888' 8 Y 888 .o8"'88b o. .88P `88. .88' .oP .o
`8' o8o o888o o88' 888o `8bd88P' `Y8bood8P' 8888888888