ooooooooo .o .ooooo. .o d"""""""8' o888 d88' `8. o888 .8' 888 Y88.. .8' 888 .8' 888 `88888b. 888 .8' 888 .8' ``88b 888 .8' 888 `8. .88P 888 .8' o888o `boood8' o888o
oooooooo .o .ooooo. .o dP""""""" .d88 888' `Y88. o888 d88888b. .d'888 888 888 888 `Y88b .d' 888 `Vbood888 888 ]88 88ooo888oo 888' 888 o. .88P 888 .88P' 888 `8bd88P' o888o .oP' o888o