oooooo oooo oooooooooooo o8o o8o ooooooooooooo `888. .8' d'""""""d888' `"' `"' 8' 888 `8 `888. .8' .888P oooo ooo oooo oooo 888 `888.8' d888' `88. .8' `888 `888 888 `888' .888P `88..8' 888 888 888 888 d888' .P `888' 888 888 888 o888o .8888888888P .8' 888 888 o888o .o..P' 888 888 `Y8P' .o. 88P .o. 88P `Y888P `Y888P