,-----. ,--. ,---. ,--.
' .-. ' ,--,--, | | ,--. ,--. ' .-' ,--,--. ,-' '-. ,---.
| | | | | \ | | \ ' / `. `-. ' ,-. | '-. .-' ( .-'
' '-' ' | || | | | \ ' .-' | \ '-' | | | .-' `)
`-----' `--''--' `--' .-' / `-----' `--`--' `--' `----'
`---'