........................................................_.............................................................................
....................................................../:::"-,..........................................................................
......................................................"-,:::",....................________..................................
..............._,------'''''''''''''-----,_...........,'__,|--------''''''''''''''::::::::::::::::::\::""""""""--,,...............
........,-':::::::::::::::::::::::::/::::::::::::::::/:::::::::"--------------,,,,,,,::::::::::::::"--,,,::::::::::"-,...........
......,"::::::::::::::::::::::,-":::::::::::::::,-'::::::::::::::::::::::::::::::::::::::"--,,::::::::::::::",:::::::::::.|..........
.....|:::::::::::::::::::::::/::::::::::::::::::/:::::::::::::::::::::::::::::::::::::::::::::::\:::::::::::::::\::::::::::::|..........
.....|:::::::::::::::::::::/::::::::::::::::::/:::::::::::::::::::::::::::::::::::::::::::::::::::\::::::::::::::\:::::::::::|..........
......|::::::::::::::::::::|:::::::::::::::::|:::::::::::::::::::::::::::::::::::::::::::::::::::::|::::::::::::::|::::::::::|..........
.......|:::::::::::::::::::|:::::::::::::::::|:::::::::::::::::::::::::::::::::::::::::::::::::::::|::::::::::::::|:::::::::/...........
........\::::::::::::::::::\:::::::::::::::::\::::::::::::::::::::::::::::::::::::::::::::::::::::/::::::::::::::/:::::::::/............
.........."-,:::::::::::::::\:::::::::::::::::\::::::::::::::::::::::::::::::::::::::::::::::::/:::::::::::::::/:::::::,-"............
................"-,:::::::::::\:::::::::::::::::\::::::::::::::::::::::::::::::::::::::::::::/:::::::::::::::/::::,-".................
....................."--,,:::::"--,:::::::::::::"-,::::::::::::::::::::::::::::::::::::,-"::::::::::::,-":,-"......................
............................."--__";_::::::::::::"--,::::::::::::::::::::::::,--":::::::::::,--"--"...........................
............................................""""""""'....""""""*---*""""""....."""""""".....................................