oooooooooooo .oooooo..o oooooooo d'""""""d888' d8P' `Y8 dP""""""" .888P Y88bo. .oooo. d88888b. oooo d8b oooo oooo ooo d888' `"Y8888o. `P )88b `Y88b `888""8P `88. `88. .8' .888P `"Y88b .oP"888 ]88 888 `88..]88..8' d888' .P oo .d8P d8( 888 o. .88P 888 `888'`888' .8888888888P 8""88888P' `Y888""8o `8bd88P' d888b `8' `8'