ooooo ooo ooooo .ooooo. oooooooo `888' `88. .888' d88' `8. dP""""""" 888 888b d'888 Y88.. .8' d88888b. 888 8 Y88. .P 888 `88888b. `Y88b 888 8 `888' 888 .8' ``88b ]88 888 o 8 Y 888 `8. .88P o. .88P o888ooooood8 o8o o888o `boood8' `8bd88P'