888 888 888
888 o 888 888
888 d8b 888 888
888 d888b 888 .d88b. 888 .d8888b .d88b. 88888b.d88b. .d88b.
888d88888b888 d8P Y8b 888 d88P" d88""88b 888 "888 "88b d8P Y8b
88888P Y88888 88888888 888 888 888 888 888 888 888 88888888
8888P Y8888 Y8b. 888 Y88b. Y88..88P 888 888 888 Y8b. d8b d8b d8b
888P Y888 "Y8888 888 "Y8888P "Y88P" 888 888 888 "Y8888 Y8P Y8P Y8P