888 888 .d8888b. d8888 8888888b. 8888888b.
888 888 d88P Y88b d88888 888 Y88b 888 Y88b
888 888 888 888 d88P888 888 888 888 888
Y88b d88P 888 d88P 888 888 d88P 888 d88P
Y88b d88P 888 d88P 888 8888888P" 8888888P"
Y88o88P 888 888 d88P 888 888 888 T88b
Y888P Y88b d88P d8888888888 888 888 T88b
Y8P "Y8888P" d88P 888 888 888 T88b