................................................................................................................................................................
................................................................................................................................................................
................................................................................................................................................................
...............................................................................'''...''.....................'''''...............................................
.............................................................''''.............''......''''''',,,,''...'...'''.'''''''...........................................
......................................................''''''''''''''''..'..''''''...............''..'''''.......'''''''.........................................
.....................................................'''''''''''''''''',,,,,,''''..............................'''''''''''''....................................
...............................................'....''''''..''''''''''''''''''..................... ...........''...'''''.....................................
....................................................''''''....''................................... .. ....''....................'''....................
........................................................''''''.......................... .......... ...............................................
........................................................'''''...................................... .. .............................................
.....................................................''''''.............................. ... ...........''..............................
.......................................................''..........................