ooooooooo oooooooooooo ooooo ooo oooo d"""""""8' `888' `8 `888b. `8' `888 .8' 888 8 `88b. 8 888 .8' 888oooo8 8 `88b. 8 888 .8' 888 " 8 `88b.8 888 .8' 888 8 `888 888 .8' o888o o8o `8 .o. 88P `Y888P