ooooooooooooo ooooo oooooooooooo oooooo oooo ooooo .o.
8' 888 `8 `888' d'""""""d888' `888. .8' `888' .888.
888 888 .888P `888. .8' 888 .8"888.
888 888 d888' `888.8' 888 .8' `888.
888 888 .888P `888' 888 .88ooo8888.
888 888 o d888' .P 888 888 .8' `888.
o888o o888ooooood8 .8888888888P o888o o888o o88o o8888o