oooooooooooo .o8 oooooooooooo .o ooooo ooo
d'""""""d888' "888 `888' `8 .d88 `888b. `8'
.888P 888oooo. oooo oooo 888 .d'888 8 `88b. 8
d888' d88' `88b `888 `888 888oooo8 .d' 888 8 `88b. 8
.888P 888 888 888 888 888 " 88ooo888oo 8 `88b.8
d888' .P 888 888 888 888 888 888 8 `888
.8888888888P `Y8bod8P' `V88V"V8P' o888o o888o o8o `8