oooooooooooo oooooooooooo oooooo oooooo oooo o8o ooooooooooooo oooo d'""""""d888' d'""""""d888' `888. `888. .8' `"' 8' 888 `8 `888 .888P .888P `888. .8888. .8' oooo 888 888 .oo. d888' d888' `888 .8'`888. .8' `888 888 888P"Y88b .888P .888P `888.8' `888.8' 888 888 888 888 d888' .P d888' .P `888' `888' 888 888 888 888 .8888888888P .8888888888P `8' `8' o888o o888o o888o o888o