.o oooooo oooooo oooo ooooo ooooo ooooo oooo
o888 `888. `888. .8' `888' `888' `888' `888
888 `888. .8888. .8' 888 888 888 888
888 `888 .8'`888. .8' 888ooooo888 888 888
888 `888.8' `888.8' 888 888 888 888
888 `888' `888' 888 888 888 o 888
o888o `8' `8' o888o o888o o888ooooood8 .o. 88P
`Y888P