oooooo oooooo oooo ooooo .o88o.
`888. `888. .8' `888' 888 `"
`888. .8888. .8' .oooo. 888 oooooooo oooo oooo o888oo
`888 .8'`888. .8' `P )88b 888 d'""7d8P `888 `888 888
`888.8' `888.8' .oP"888 888 .d8P' 888 888 888
`888' `888' d8( 888 888 .d8P' .P 888 888 888
`8' `8' `Y888""8o o888o d8888888P `V88V"V8P' o888o