:::::::: ::: ::: :::::::: ::: ::::::::: ::: ::: ::::::::::: :::: ::: ::::::: ::::::::: :::::::::: :::::::::: :::::::::: :::: ::: :::::::: ::::::::::
:+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+:+: :+:+: :+: :+:+: :+: :+: :+: :+: :+: :+: :+: :+: :+:+: :+: :+: :+: :+:
+:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+:+ +:+ +:+ :+:+:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ :+:+:+ +:+ +:+ +:+
+#++:++#++ +#++: +#++:++#++ +#++:++#++: +#+ +:+ +#+ +:+ +#+ +#+ +#+ +:+ +#+ +#++: ++# +#+ +:+ +#++:++# :#::+::# +#++:++# +#+ +:+ +#+ +#++:++#++ +#++:++#
+#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+#+# +#+ +#+#+# +#+ +#+ +#+ +#+ +#+ +#+ +#+#+# +#+ +#+
#+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+#+# #+# #+#+ #+# #+# #+# #+# #+# #+# #+#+# #+# #+# #+#
######## ### ######## ### ### ######### ### ### ########### ### #### ########## ######### ########## ### ########## ### #### ######## ##########