oooooooo .ooooo. .o o8o .oooooo. .oooooo. dP""""""" d88' `8. o888 `"' d8P' `Y8b d8P' `Y8b d88888b. Y88.. .8' 888 oooo 888 888 `Y88b `88888b. 888 `888 888 888 ]88 .8' ``88b 888 888 888 ooooo 888 ooooo o. .88P `8. .88P 888 888 `88. .88' `88. .88' `8bd88P' `boood8' o888o o888o `Y8bood8P' `Y8bood8P'