When is progress..
..the suspense..
..of falling..
.. . . . . .. . ..... . ....... ........ ........... ................. ...... ................... .. ................................................... .................................... .............................................. ... ....................................................................... .............................................................................................',,,'''.....''''....................................................................................... ............ ...... ....... ..
......................... ................ ......... ....... ......... ...... ...... . ..... ............................................................................. ..........................................................................................................................................................................................................'...............................................'''......',;,,'.........''''..........'................................................................................ .................... ........ .... . ... .... ..... .. ..
........ ..... .... ....... ...... ............... ........... ... ..................... ...... .................... ......................................... ............. ........................................................................................................................................ .....................................................................................''...........................'''',,,,;;;;;;,''''''''''''...................................................................................................................... ..... ..... ...... ....... .... .
... ..... . ............... ....................... ........ ...',,,,,'... .......... ................... ..... ................................................. ......................... ............... ................................................. ...................................................................................................'.............................''........''..............',,,,',,;::::;,,;;;,,,;;;;,'...'''...'''''''.''''.''',,''.................''''................................................. ................... ........ ... ........ ..... ...... .... ....... ... .....
... .... ......................... ... ... .. .... . .. ....... ..;:ccll:,.... ............................ ............................................... .......................................... .......... ..................................... ................................... ....................................................................................................''''.............',,,,,,;;;;;,,,,,,,,,,;;;,,'........''''...'''''''''',,,'''''',''...''''''','''..'............''..................................................................................... ...... ... ....... . .
... ........................ .... .... ....',;c:,......... .......................................................................................... .........................................................................................................................................................................................................'.............''''...''''''............'',,,,;;::::;;;;;;;;,,;;;;;,''''''''',;,,'''',;,,''',,;;,,''''''',,,''''',,,,,,,,,,'''''''''''...'''..............'''................................. .... ... .... ........ ............................ .... ........
.......... .......................................................... .... ............ ........................................................................................................ ............ ... ......................................... ..................................................................................................'.................''....''........','''''....'''''.........'',;;;;;::::::;;;:;;;;;;;;;;;,'''''''''',,;,'..'''''''',,;,,,,,,,',,,,,,,,,,,;;;;;;;;;;;;;;;,,,,,,,,,,,,,,''''''''............................................ .... ........ .......... ........ ... ... .. ..
. .... ............................................. ....... ... ......... ... ............ .................... ...........................................''';:;;;'............. ............................ ...................... .. ....................................................... .. ...........................................................''''....''''''''''''......',,;;;:::::;;;;,,,,;;;;;;;;,,,,,,,,''''''',,;,,,,,,',,;;::;;;;;;;,,,,,,,,,,,,,,;;,,,,,,,,,,,,,,,''''',,,,,,''''................................................ .. ......... .......... ........ .... ................. ..
....... ................................................ ...... .. ... ....... . ..... ......................................................... .... ..................';cdOOxdlc,............. ...................................... ................... ....................................................... ........... .........................................................'''..............''''..'''',,,,;:cccc:::::;;,,,;;::;,,''''''''',,''''',,''''',,,,;;;,,,,,,;;;;;;,,,,,,'''',,,,;;,,,,,,,,,,,,,,',,,,,,'''''.................................. ................. ................. ...... .... ... ..... .. .. .... ... .. . ..
........ ............................................................. .. .......... .... ........................................................................................ . .. ...........,:ldxdoc;'....... .............................. ........... ................. ................... ............................... ......................................''...............''............''''.....'''......'''.....''',,,;;:c:::::;;;,;;;:::::;;,,,,,,,;;;,,,,,,,,,,',,,;:cc:;;,,;;;;;;;:::::;;;;,,,,;;;;;;;;;;;;;;,,,,,;;;;;;;,,,'................. ...... .. .............................. ... .................. .... ... .. ...
.. ... .................................................. . ... ........ ...... . ........ ......... ....... ............ ........... ............................... ...... ....................','............................ .......... ....................................................................................... ................................''''.......'''.'',,,''.....''''','''.....'''''....'''...'',,,,,;;:::::::::;;;;::::::;;;;,,;;;,,,,''''',,,,,,,;:::ccc::;;;;;;;;;;:;;;;;;;;;;;,,,,,,,,,,;;;;;;;;;;;,,,;;;,,,'.................... .... . ... ................. ..... .. . ... ...... .......... .... .... .... ...
. ... .... ............... ...................... ... . ....... ............ ........... ............... ........... .. ... .. ..................... ................................................ ............................. .. ....................................................... ....... ...... ............'...''''..............'''',,,''''''''''''''''..''''''''''''''''',,;;,,,;;,;;:::::;;;;;::c:;;:;;,,,,,,,,,,''',,,,,;,;;;::c:;;;;;:;;,,,,,,;;;,,;;;;;;;;;::;;;;;,,,;;;,,;;;;;;;;;;;;;,,'.................... ..... .................. .................... .. ..... ... . . .... . .. . ... .
.......................................................................................... ......... ................... .. ................................ ................................. ...... ..................................................................................................................................... ........ ....... .............................'''''',,,'''''''.....''','''''..'''''''''.''''''''''''.''''''',,;;;;;;;;:::ccllcc:::ccccccccc:;;;;;:;;;,,,,,,;;;:;;:ccccccclc;:ldo:;;;;;;;;;;;;;::::::cccccllccccccc:;;;;;;:ccc:ccc:;'....................... . ....................................... .. ..... ..... ..... .... ..... .. . ...
.............................................................................................. .......... ... ................................ ................................ ........... ................................................................................ .................................................. ................ ........... ................''''''''''..........'''..'''..''','''''''',,,'''''.......'',,;;;;;;;;;:clllllccc::::::::;;;,,'',,;;,,''''',,;;;;;::::::;;cdl:lkkl;,,;;;,,;;;:::::::::::clooollcccc:::;;;;:cccc::cc:;,,,'....................................... . .... .. .. ... .. . .. ... ... ...
.... ..................................................... .............................. . ... ......................... ........................................... .................... .............. ................................................................................ .............................. ......................... ...... ........ ...............''''...''''..........''.......''''''.......''''.......'',,,;;;;,;;:::cccllolc::::cc:::::;;,,,,,,,,,,,,,,,,,;:ccclloollcc;:lkkkKKxc:cc::;;;::cc::::::::cclloooolcc:::::::::::cc::;;;;;;;;;,'''............................................ ... ... ..... ... ....... .. . ... .............. ... ........
... ......................................................................... . ..................... ........ ......... ....................... .... ... .... ........... ....... ... .. ... ................................................................... ... .. ................................................ ..... ..............................'''''''','''..'''','''''''''.'',,''''''''''....''.....'',;;:::;;;::clloooooollllccccc:;;;,,,,,,'',,,,'''',,;;:::ldxxxxkOkkkKNWWNOddddlcccccclllccc:cccloooooooooolooolloolllccccc:;;;::::;;;;;,'''................ ........... .. ... ... . ... ..... .
............................................ ................................................................. ... ............ ........................ ...... ... ...... ... ............. ..... ...... . ........................................................................ . ..... ..................................................... .................................''''.''.''''''''''',,,''...''''''''.....'''''''''..''''',,;;:::::::clloooooooolllllllcc:;,,;,,,,,,,,,,,,,,,;;;::::cloxxkk0XXNNWMMMW0kkkdoooooollcccccccloddddooooooooooooooooollcccc:::::cc:::ccc::;;;,'........................................ ...... ............... ... ....... .... . . ...
.................................. ..................................................................... . ...................... . ..... . ....... .... ......................................................... ...................... .................................................................. .. .................''''.''''''''''''''''''''',,;,,,''''''',,,''....'''''''''''''''.',,;;;;;;:cccloooooooooolllooolc:;;;;;;;;;;;;;;;,,,;::::::cllodxkkOKXXKXNWMMWNXKK0kdoooollllllllooddddooooooooooooooddooollccccc:ccc::cccc:::::cc:;'''.................................... .... .. ............. ..... ..... ...... ..... .... ..... .. ...
............................................... .................................................................. ................ .... ...... .. ................... ..... ... . ............................................................... .................... ................ .......................................... ... ...........'''.''''''''''''','''.''',,'''''''''''''''''''.''''''''''''''',,'';:::::cclloooddddoooooolllllc::;;;,,,,;;;;;:;;:;;:ccc:cclllc::clodkOkxkO0KNWNKOkxdollllllllooddddddddddddoooooooooooooollllcccccllcccccc:::::c::c::;;,''......................................................... ..... ..... ........................
........................................... ........................................................................ ........................ ...... ............. .. .. ........ ....................... ...................................................... ................ ..................... ......... .................. .............'''''''',,'''''''',,,,,,,,,,,,''''''''',,''.''...........'''''''',;;;;;:;;:ccllooodxxdooooooollc::;;;;;,,,;;::;;:::ccllllccllolccccccccccclxkxx0K0Odoloooooloooooddddddddxxxddooodoooooooooollllllllclllcccllcccccc::::::::;;,''..................................................... ......... . .............. ........... . .. .
................................ ............................................................................................................ . ........ .................. .... ............................................................................................................................................................ .... .. ..................''''''''....'''..''',,,'''''''''',,,,,,'''''..''...''''''''',;;;;;;:::clodddxxddddoooooooll::;;;;;;;;;::::;;::ccloolloollllllccllllclccoO0xoxkkddoooooolooodxxddddddddxxxxdddddddddooolllllooolllcccclcllllllllcc::::cllcc:;'''''................................................................ .. ..... ............................ .. .
........................................... .................................................. .... .................................. .... ... . .... ................ .. ............ ................................... .......... ................................. .......... . .......................................... .......................'...'''',,''.....'''''',,,'..''.''',,,,'..'''.''.'''''''''''',,,;,,;;:cllodddxxxxxddoooooooolc:;;;;,,;;;::;;;;;;:ccllllooolcclllllllllllllldOOxlloolllooollllodxxxddxxxdddxxxxxxxxxddxdolllccclllllllcccclccclllccccccccclodol::,'',,'............................................................ .............................. ..
.............................................. ................................................. ............................................ ..... . ........ . ..... ................................................................................................................................................... .................................'''....'''....''',,,,,,'''''',,,,,,,''''''''..''..'''''..',,;;;,,;;;:coodddxxdddddxxxxxddoolc:::::::::c::;;;::cclllllloooolllclllllllcccllldkkollllllooooooooddxxddddxxddddddddddddddoolcccccccccccccccccccccccccccccccclloolccc:;,,,,,'.............................................................. ..... ......................... ...... .... ... ......
........... ......................................................................................................................................... .. .... ... .............. .. ... ......... ............ ............... ....................................................... ....................... ........ ............... ......... ......................'''.....'''''''..........''',,,,''..'''',,,,,'''..'''....''...''''',;;:;;;;;;;:clooddddddddxxxxxxxdllcc::::;:::::::;:ccccloollloooollllllllllllllllllodxdollllllllooodddddddxddddddddddddddxxddoolllllllccccllcccccccccccccllllccloodolccllc::;,,'''....'..............''..''''''............................................. .................................... .............. ....
.......... .................. ..................................................................................................................................... ..................... ............. ....... ... ...................................................... . ......... . ... ...... ............. ..............................'',,''''''.',,,''''........''',,,,,''..''''''''''.''''''......'..''',,,;:::;,,,,;:lodddooooddxxxxddddoccc::;;,;;;;;:;;;::cccloolodddooooolooooodooooooollloollllllllloodddddddxxxxxdddddddddddddddoollllllloooollllllllccccccclllllllodddollllc:::;;,,,'''....''''',,,,;;::;;;;;;;;:;,,,;;,,;;;,,,''''''''''......................................................... . ... .. ...... ...
..................................................................................................................................................................... ........ .. ........... ...................................................... ...........................................................................................'',''',,',,'''''...'''''',,;;;;;,'''',,;;,'...''''''''''''''''''',;;;;:::;;;:clooodoooodddddddddollc::::;;;;:cccc:::::cclllllllollcclllllllllllllllllllllllllllllooodddxxxxxxxxxxddddddddddddooolllllllllllllllllllllcccclllllllloddddolllcc::::::::::;,'''''',,,;;::ccc::::::cccllc::::::::ccllc:;;;,,'''...................................................... ........... ............................ ....
................................................ ... ........... ...... ........................................................................ .... ....... ... . ..... .......................................................................................................................................................''''''',',,,''''...''''''',,;,,,,,,,'''',,,,,'...'''..''''......''',;;;;::::::cloooddddooooooooddoollccc::::::ccccllccccclooollllllllccccccllllllllllllllllllllloooddxxxxxxxxxxxxxxxxddxxxxxxxdollllllllllcccccllllllllllcllllllcllodddddoolccc:::::cccccccc:;;;;;:::::cccccccccccllllccc:::::cllooolcc:::;;,'................................................. .......... .. . ..... . .
........ ......................................... ........... .............................................................................................................................. ........................ ................................................................................. ............. ......................... ........................''''....'''.'''..''''''''',,;,'''''''',,,''''''''''''''''..''''',,,;;;;;::clllooddddxxdoooollloolc::ccc:::::ccccc:ccc:::clooooodoolllccccclooooooooooolloolllloooddxxkkxxxddxxxxdddddddxxxxxdoolllllllllllooooooooooooollllllollloddxddooolllccccccclccccccccccccccccccllllccclloodoolccccccloddoollcccccc:;,'''.................................................. .... .... ........ ....
............................................... .... ... ... ................. .. ................................................ .............. ...... ... ..... . ... ..... .. ...................................................... . .................. ....................................................................''''''''''''''''''.'''''''',,,,,''''''',,,,'...''''''''''''''''',;;;;;;;;:::clooloodddxxxxxdddddoollcc:cc::::::::::::::ccclooooooooollllllllodddooooolllllllllllllodxxxxxxxddddddddddddddxxxxdooooooollllloooooooolllllllllllllllloodddddoooolllllccllllcccccccccccllcccccllllllllodddolllllllodddolllccccc::;,'................................................... .... ......... ......... ....
.............................................................. ............ ......................................................... ........... .. ... ... . . ......................................................... ...........................................................................................'''''''''''...''''''''''''',,,,''''',,,'''''''......'''''''',,;;::;,',;::::clodddxxxddxdddxxdooolcccllcccccc:c::::ccccclooddooooollllooooolooooooollllllllllloooodxxxxkkkkkxxxxxxdxxxxxxxxxxddooddoooooooolooooooooooooolllllllllododdddoolllllllcccclllcccccllccccccccccc::cccllooolllllllllloddolcccccc:;,,'.................................................... ...... ... ...... .. ....... ...
. ............................ ................................... .......................................................................... ... . ... .... ... ... . ................................................................................... .......... .............................................''''''''''''.....'''''''''',,'''''',,,,;,,''................',;;;::;;,,,;;;:clooddxxddoooooooollcccclllcccccccc::::::ccllodddoooollllllllllllllllllllllooooollooooddxxxxkkkxxkkkkxxxxxkkkxxxxdooooooollllllllllloooooooooollloooodddxddddoolollllllllllccccclllllllcccc:::::cccllooollccclllloddddolcccllc:;,'''.................................................. ...... ....
.... ................................................... ......... ................ . ................... .............................................................. ........................ ......... ....................... ............................................ .................. ............ .........................................''''''''''''''''''''''''',,,,,,''''''',,,,;;;,,,'..............''',,;;,,;;;:::clooddddxxxxddoooooooolllllccccccclcc::::::clllooodddooooooooolllllllllllllllllclllloooddxxxxdxxxxkkkkkkkkkkkkkkxxxdooollllllllllcclllllollllllllllllooddddddollcllllcccccllllcccccccccllcccccccccccloooollllllllloddxdoolccllllc:;,'''....'''....'''''..''''''''''..'''.............. ........ .. . ... ....
... ......... .......................................... ....... ..... ............ ................................... ....... .......... ............ .......... ................. ... .... ......................................................... ............. .................................................. . .....................'''''''''........'''..'',,,,''''''',,,,,,,,,''...............',,;;,,,,;;:cclodddddddddddddddddddolllllccccccclllc::cccloooooooooddddooooooooolllllllllllllllllllodxxxxxxxxxxxxxxxxxxxxkkkkkkxdddooooloolllooollloollllllllllllllloddxdddolllllllllccccclcccc:cccccccccccc::cccclllllllccclllooddxddollccccccc::;,''''''''''...''''......''',,''......................... .... .. ... . ...
..................................................... ..... .... ................................................................................ .. .. .. . ... ............ ........................ ... ... ............................................................... .............................'',,,,,,,''''''''''''',,;,,,,',,,,,,;;,''''......'..........'',;;;,,,;;:looddddddoodddddddddoooollllllllcccclccc::::ccloddddddoollloollllllooooooooooooooooooooddxxxkkxxxxkkkkxxkkxxxxxkkkkxxdooooolllllllllllllooolllllcllllllloddxxxxdollllllllllllllllllllllllllcccccccc:cclooolllcclllllooddxdolcccccccc:;,,''.............'''''...'''',,,'''.......................... ................
.................... ....................... ...... .. ...... .................. .......................................................... ...... ..... ....... .. ........................................................................................................... ...........'''''.....''',,,,,'''.......'''',,,,'''',',,,;;,,,,,'''''''''.....'''',,,,;;;;;;:clodxdddddooooooooddxdlllcclllccccccccc::::::ccloodddoolllllllolllooooooooodoooooooooooddxxxkxxxddddddxxxxxxxxxxxxxxdooolllllllllllllllllllllllllllllllllodxdddoollllllllllllllllllllcllllccllllllllccloodollllllllooddddddollccccccc:;,,,''..'''...''''''''''''',,,,,,,'''............................ . ........... .
....... ........................................................ ....... ........................................................................................ ...... .. ................................................................................................ ................................................... .............'''''''''''''''',,,'''''......'',,'''''''''',;;;,,,'''..............''',,,,,,;;::::looddddxxxddodddddddddolcclcccc:::ccc:c::;::cclllloollllccccclllolllooooollooooooooddddxxkkkkxxxxxxxxdxxxxxddddxxxxddoooooooolooooooooooooooooooooooooooddxxxxxdollloooooooooooooooolllllllcccclllccllooddolllllllllooddoollccccccc:;;,'''..........''''.....'..'''''''.................. .....................',;;;;;,'... ....... ...... ... ..
......................................................... ...... .. . ...................................................................................................... ........ .... ............................................................ ..........................................................................................'''''...''''''',,'''''.....',,,,,''''''''',,,,,''''''''..........''''''',,,,,;;:codddddddddddddddddddddollllccc:::::cc:::::::ccccllollclloooooooooooooooooooooooooooooddxkkkxkkxxxxxxxxxxxxxxxxxxxxddoooooooooooooodddddoooooodddddoooodxO00kkxxxdooooooooooooooooooooooolllllllccccllodddoollllllloodddddollccc::::;;,,''.....''....'''''.'''',,,,,,,,,''................ ......................';oxkxkxo;'............ .......
............................................... . .... .................. ............................................................. ....... .......................................................... ........................................................................... .... ....................................'''','''.'''''',,,,,'''''...'',;;;,'''''',,''',,''...........'''...''',,,,'',;;;;;;clooodddddddddoooddooollllllccccccccccc::::ccllllllooollooddddddoooooooollooooooooooodxxxxkkxxxxxxxxxxxxxxxxxkkxxxddddddoooooooooooddddooooddooodddoooodxkOOOkxdddddoooooddddoooooooollllllllloolllloooddolllllllloodxxxxdolccccc::;;;,,,,''',,'''',,,,'''''''',,,,,''''............... .......................':oxxdl:,....... .. ......... .........
................................................ ............... .... .................................................................................... ........................................................................................................................................................ .. ...................'''''''....''''''.''''......'''',,,'..'''',,,,'''''.................'',,'''',,;;;:cclodddooddddddddddooollccccc::::::::cc::::::cclooooooddoooooooodoooooooooooooooooooooddxxxxxxxxxxxdddxxxxxkkkkxxxxdddodddddddddoddooooooooooooooooooooooddxkkxxxdooooooooooddooooodddoollllllooooollloddddoolllllllooddoooolcccccc::;,,''...''''''',,,,,,''''''''''','''......................................... ..',,,'......... .........................
................................... ............ . ... ....................................................................... .................... ................................................................................................................... ... ..................... ...................''''''.'''',,,,'''''''''''''',,''....''''',,,''..........''''..'''',,,,,'',;;;;:cloddxxxxxxxdddddddddoollcc::::;;;;::;:::;:::::cloollllloooooooooooooodddddooooooolllooodxxxxxxxxxxdddddddxxxxxkkkxxxdddddddddddddddddoooooooooooooooooooddxxxxxdooollllllllloooolllloooooollloooolllooodddolloooooooddxxddolccccccc::;,,''....''...',,,''''''',,;,,,,,,,''...................................... ........ .... . ......'...................
.. ................................. ............................................................................................................................ ........................................................................................... ..................................................................................'''''''''''''''''',,,'',,,'..'''',,,,,''................''',,,,,,,,,,;::ccoooodddddooodddddoooollcccc::;;;;:::::;;;;::cccloolcccccllllloooooooooddoooooolooooooddxxxxkkkkxxkkxxxxxxxdddxxxxxxxdddddddddddddddddddoooooooooooodooooddxkkxxxdoooooooooollloooollllllloooooolllllloddddoollloooooodxxxxdoolllllcc::;;,''......''''''''',,,'',,;,,,,,,''..........................................................................'................
.............................................................. . .............. ... .............................................................................................................................................................................. .. .. ........... ...................................................'''''''...''',,,''..''...''',,,,''''...'',,''.'....................''',,,,,,,;:::clooooooooollcccloooolcccc::::;;;;;::::::;;;::::cclllllcccllllllllllloooooooooooooooddddddxxkkkkkkkkkkkkkkxxxxddddxxxddooodddddddooooddddoooooooloolllooooddxkkkkxxdoodooooodooooooooooooooollloooooooooodxkxdooooooooddxxxxxdoollllllc:;,,,'''.....'',,,'''',,,,,,,,,,,,''............................... ........................................'............... ...... .....
............... ................................. . ... ................ ................................................................................. ............................................................................................. ............................... ................................................''',,,''''''''''',,,,,,,''''''',,,,''''''''...........''',,,',,,',,,;;:clooooooooooollllllllolllcc::;;;;;::::::::;;;;::::ccccccclllllloolllllooooooooddoooooooooddxxxkkkkkkkkkkxxxxxxxxxxxxxddoooddddddddoodddooooooooooooooooooodxxkkkkxxdoooooollllooollllllooooooollllooooolooddxddooooooooddxxxxdoollllolcc:;,,''.''....',;,,''''''',,,;;;;,,,''........................................................................................ . . ..
............................................ ................ ...................................................................................... ......... .. ............................. ................................................................ ................................ ............... ................''..........'''''''....'''''''',,'''''...'',,''''''''''...........',,;;,,,,,,;;;:clllllloooolllloooooolllllllc::;;;:::::::::;;;;;::::clllcclllllllllllllooooolllooooooooooooodxxxxxxxxkkkkxxxxxxxxxxxkkxxddddddodddddoooddooooooloooooooooooodxxxxxxxdooooooooolllooooooooooooooooooooolllooodddoolllllllodxxxxdolllllcccc:;;,,,''''...'',,,''',''',;;;;;;;;,,,,'''.......................................... ..... ...... .... .....'...............
........ ........................................................................................................................................................... ..... ............. ............................... ...........................................................................................................''''''''''....'''...........'',,,''''.''''''..''....''...........''',,,,,,'',,:ccllloooolllllllllllloolcclllolcc:::::ccccccc:::::::ccclllllllllllllolllllllooooooooooooooooddxxxxxxxxxxxxxxxxxxkkxxxxxxxxddooddddddxxdddddddddddddodddooooooodxxxxkkkxdooooooooooooooooooooooooooooooooooooodddddoolllooodddxxxxdollllcc::::;;,,'',,''',,;,,'''','',,,,,,,;,,,''''''.......................................... ............ .............................. ..
............................................... .......................................................................... .... . ................ .......... ............................................................................... .....................''''..''''',,'.......................................................'''''''.....'',''...'''''....''.....''',,,;,,'',,;;:lloolooolllllllllooollloooooollllcccccclllllccccccllooolllllllolllllooooollllolooolllllooooooddxxxxxxkxxxkkkkkkkkkkkkkxxxxdddddddddddxxxxxxxxxxxxxxxxxxxdddddddxkkkkkxxdddoooooooooooooooooooooooooollllllooddddoollllooooddddddooollllcc::;;;,,,,''''',,;:;,,,,,,,''',''',,,''....''....................................................... ................................
........... ............................................................................................................................................... .................. .. ............................................................................... .......................'''........''''',;;;;;;;;,'............'..................''....'','...'',,,'''''..'''''.....................',,,,,,,,,,,;:clllllloolllllllloooolllllloooolc:cccllccccc::::::::ccloolllcccclloooollllllloooooollllloooooddxxxxxxxxxxxxxxxxxkkkkkxxxxxxxdddddodddddddddddddddddddddddddoolodxxkkkxxdooooooooooooooooolooooooooooooooddddodxxxxdoollooooodddddoolllllc::::::;;,;;;,,'',,;;,,,,,,,,,,,,,;,,,,,,'''''''...................................................................................... .
............ .......................................................................................................................................... ... ......... ..... ........................................................................................'''..........'''.',,,,,''..'',;;,,;:;;:::cccccc:;,,'''''''''........''.......'''..''''''...',,,'.........................'''''''',,;:ccllllllcccccccclllllllcclllolcccccccloolllcccccc::clooollccllllccllooollllllloooooooooooodddxxxxkxxxxxxxxxxxxxxxxxxxxxkxxxddddddddddddddddddddddxxdddddddddddddxkkkkkxxddoooooooooooooooolooloooooooooooooddxxxxxddoooolooddxxxddooolllcc:;;;;;;;;;;,'''',,,''',''',,,,;;;;;,,'''''''......................................... ................. ...................................
........................ .......................................................................................................................... .......................................................................................................................''...........'''''''''........''''''''',,;::cloddddolc:;;;,'''''''',,''..''''''',,'''...'''',,,'...................',,,''''.'',,;:cllllllooollllllllllllllllooooolc:::::clllllcccccccllccclllcccccccllcccllllllllloolloooooooooddxkkkxxxxxxxxxxxxxxxxxkkxxxxxxxddddddoooooooooooooodddddddddddddddddxxkkxxxddoooooooodddoodddooooooooodooooddoooddxxxdooooooooooddxxxxddoollc::;;,,''''',,''',,,,,,,,,''',;;;,,,,'''''..''''....................................................................................... .......
................... .....................................................................................................'''...........................................................................................................................'''........................'''..'''''.......''''''''''''''',,;;:cloddxdocc::;;,''',;;,,'','''''''''''...'',;,,,,'..'''''............'''''''',,;;:clooooooloooooooooollllllcllooolcc::cclllllllcccccccclllc::cccccccclllclllllllllooooooooooooodddxxkxxxxxxxxxdxxxdxxxxxxxxxxdddoooooooodddddddddddddddddddddxddddxxxkkxxxxddoooodddoooodddooddoooooddddddoddddddxxxxxddooooooddxxxxxxddoolllc:;,,,,''',,''',,;;;,,,,;,,,',,,,,,''''''''...''........................................................... ....''.......................... ...
...........................................................................................................................'',,''..''''........''..................................................................................................................'''........'''......'''''''''''''...'''...'''''...'''''''',,,;;:ccclodxxkkxdoc::cc:;;;;;,,,,,''.'''''',,,,,''................'',,,,,''',;;:ccccccllooolllllllooollllcccccllllcc:::ccccccccc::::::::clllllllllllccllllllllllllllllllllllllloddxxxxxxxxxxxxxxxxxxxxxxkkkxxxxdddddddooodddddxxxddddxxxddddddddddddxkkkkkxxxdddddxxxxddddxxxddddddddddddddddddddxxxxddddooooooddxxxxxxxxdollccc:;,,,,,,,'''',,,,,''',,,,,,,,,,,,,'''''''''''....................................................... ............................. .... ..... ...
.................................................................................................................''''''''''''''......................'..................................................................................................................''............''',,'..'''''''................'',,''',,,,,;;;;;,;:cooooodxxxxxxxxdololc:,,,'',,;,,,,,,'''''''............'''''''',,;::ccclllllollccllllllloolc::ccllllccccccccccccc:::ccccccclloolllllooolllllllllllloolllllllllllloooddxxxxxxxddxxxxxxxxxxxxxxxxxxdddooodddooooooddddxxdddddddddddxxxddddxxkkkkxxdddddddddddddddddddddddddoooooddddddxxxxxdddooddddddxxxxxdddddolcccc::;,,,,;,,'',,,,,,,''''',,,;;;,,,'''',,''''..'.............................................................''''..................... ... .........
..............................................................................................................''''....'''''.....'''''''...........'''''''................................................................................................'..............................''....''''....'..............',,,,,,,,,,,''',,,,;;;;:cloodooodxxxxxkkxdlc:;;::;,'''''''''''''''''''''',,,,,,,,,;;;cclloooooodoooloooooolllcccccclllcc:ccccccccccccccclclllloooolccccccccccccccccllllllccccccllllloooddddddxxdddddxdddddddddxxxxxxdddoooooooddooooooollllloddxxxdddxxxxxxxxkkkxxxxddddddddddooddddxxddddddooodddddddxxxxddoooodddddxxxxdddoooooolcc:::;;,;;,,,,,,;;;,,,;,'',;;,,,,,,,'''..''',''..................................................... .. ................................. ... .....
......... .......................................................................................................................''''''''''......'''''''''..........................................................................................................................................................',;::;;;,,;;,''''',,;;::cclccccccccccloxkxxdolc:;,,'''',,''',,,,'''',,,;;,,'',;;;:::cclllolllllllllooooooolccclooollcccccccccccllc:::cccccllllllcc:::ccccccllccccccccccccccllccccllooddxxxxdxxxxxxxxxdddxxdddxxxxdddooooooooooddlc:;,,,'''..;codxxxxxxxxxkkkkxxxxxxxxxxxxxxxdddddxxxxxxxddddddddddddddddddooooooodddxdddddooollllllc::;;,,;;;,,,,,;;,,,;,,,,,;;;,,'',''....''''''........................ .................'''.................................................. ..
......................................................................................................................................................'.........................................................................................................'.............................''''...............'',,,,,,,,,,,,,,,,,;:cccllccccccllollcccclodxxxddl:;,,,,,'''''''''''',,,,,,,,;;:::ccccloooolllllcclllllllcccc::cclllcc:::ccccc:ccc::::::::::clllc:::::::cccclllllclllcccccccccclllllloodddxxxxxxxxxxdddxxxxxxddxxxxxddoooodddddddoc;''.........',;ldxxxxxxxxkkkkxxxxxxxxxkkxxxddddddxxxxxxxxxxxxddddddxxdooooooooooddddddooooollllcccc:;;;,,,,,,,,,,,,,;::::;;;;;;,,,,,,,,'''''''..................................................................................... ..... ...
.....................................................................................................''.....................................................................................................................................................................................................'''.'',;,,,'''',,,'',,;;;:::ccclooolc:::cloolcc:ccoddddoc;,,,''',,''''''',;;;,,;;;:cllccccclllllllllllclllllllcc:::cllcccc:::::cccc:::::::::::::cclcc::::cccccccccccccccccccccccccclcclloodddddxxxxdddddddddxxxxdxxdddxxxddooooooddddoc,..'''......'',:ldddddxxxxxxxxxxxxxxxxxxxddodddooooooooddxxxdddddxxxxxxdoooooodddddxxxdoolllllc::::;;;;;;;,,;;:ccccc::cclllccccc::::;;;;;;;,''.....................''''''.................................................................. .
..................................................................................................'''..............................................''......''''...................................................................................... ........................''.......................'.'',;;;;;;::;,'''',,,,,,,,,;:::;;::;:clllc::ccloolc::coodddl:;,''''''''''',,,,,,,;:cclllc::cllllcccllccccccllllllc:::ccccc:;;:::ccc:::::::;;::;;;;;:ccc:::::cccccccccccc::cccccccccccccccclodxdddxxxdddddddddddxxxxxdddxxxddddoooooooodo:,...'''...','';coddddddxxxxxxxxxdddddddddddooooddooooollooddddxddodxxxdooollllooodxxxxdollllccc::;;;;;,,;;;;,;:looollllcccllcccccc:;;;;,,,,,,'......''''''',,'''''.'''........''............................................................. ......... .....
.............................................................. ....................................................................................''''''.........................'''.....''...'............................ .....................................'''......................'........'''',,;;;;:ccc::,,,,,;;;;;;;::;;;,;:;;,;::cccloddxkxollodxxxdol:,'.'''''',,,;;,,,,,;;cloolccclllcclllllccccccllllcc:::ccc:;;;;;::ccc:::::;;;;;;;;;;::cccc:cccllccccccc:::::ccccccclcccclllloodddddddddddddxxxdddxxxxxxdddxddoooooodddol:;'............';coxxxdddxxxxxxxxxxdddddddddddddoooddooooooooooddddddddddddoooddddxxdddddoollllllc:::;;;:c:;;;;;;:loooooollccccc:::::;;,,'',,,,'''''''''''''''''...................... .......................................................... .... ....... . ....
.....................................................................................................................................................'''''''''''..................'''........................................ ........................'''',,'',,,',,,,'''............................',,;;:::::::::cc:;,,,;:cllooollloolc:::::clodddxkkkddxxxkOOkkxo:,'''',,,,,,',;;;;,,;::ccccllllcccclllcllllllllc:;:cllc:;;;;::::::::;;;;;;;;:::::cccccccc::ccccccc:::::::::cccccccccccclooddddxxxxxddddxxxxddddddddxxdddddoooooooddoc;.....''........':odddddddxxkkkkxxxddodddddooooooooooooooddddddddddddddxxxxxxxxxxxkkkkxxdooooooolcc:::::;;:::::::cloddooooooolllllcc:;;;,,,,,,,,'''''''............................................................................................ ........ ..... ...
...............................................................................................................................................'''.......''',,'...............'''',,''.....'''..............................................''......''...'''''''''''......'.........................''',;;;;;;;;::;;;:cc:;,,;:cc:clloooodddolcccc::cldxkkkkxdoooxO0Oxoc,'',,;;;,,,,;;::::;;;:::clllcc:;;:::cclooooolllccccc:;,,,,;;;;;,,,,,;;;;;:::::ccccc::::c::::ccccccc:::::cccclccccccccloooodddxxxxxdddddddddddddddddddddoolllllooddc'...............;coddddddxkkkkkkxdddddoooooooooooooooooddxkkkkkkkkkkkkkkxxkkkxxxxxxxxxxxxdddoooollccccclllllllllllooddoollclllllllllcc:::;;;:;;,,'''''............................................................................... ........... ...... ...... ....
.. ......................................................................................................................................................'''........'''''..',,,,,''''..'',,,'......................................''.........................................''''''''......''...',;;,,,''',,,,,,',;::;;,,''',,,;::cccccloooloolc:codxxxkxolcldkOkxo:,',;;;,..',,,,,,,,,,;::clolc:::::cclllooooddxddxxddolc::;;;:::;;;;;;::::::ccclcc::::;;::::::ccclllccc::cccccccclllccllooooddddddddddddxxxddddddddddddooooooooooodoc,....... ....,codddddddxxxxxxxdddddddddoooooooooooddxxxxxxkkkkkkkkkkxxkkxxxxddxxxxkkxxdddddoooollccccllllllllllloooooollccllllllc:::;;;;,,;;;,,,'''..............';:cc:,........ ....................................................... .. .....
......................................................................'........................'''...................................'..''''...'.........''''''..''..'',,,,,'''''''''........................................................'..................................'''',,;,'.....''''',,;;,''''''''''',;cc:;,,,''',,,,,;;;;,,;clooolc::cloollolc::codxdl;'',,;;;;;;;,,,,'',,''',;:clc:;;;;;;::ccclloodoooodddddddoolcclcccc:::::::::::ccc:::::;;:::::ccllllllllccccccccllllllooooodddddddddddooddddddooodddoooooooooooooodool;'. ... .....;ldddxxxxxxkxxxddoooddddddddooooooooddxxkkxxxxkkkxxxxxxxxxdddddddxdxxkxxdddddddolllllccccccllllllllllloollccllllcc::;;;;;;;;;,,,,,,,,''''...''.......':dxo;'...................... .......................................... ... ......... .. ..
.........................................................................................''''''''''...''''''.....................''''...''...............'...........''''',,''''''.................................................................................................'''''......',,,''''''''''...''',;::;,,,;,,,'',,,,,,,,,',:clllc::;;:::cclllllodolc;,,,;;::::::;;,,,'',,'',,,,,;;;;;;;;;;;;;:clllooooollodxkkkkxxolcccc::::::ccccc:::::::::::::;;::clcccclccc:::ccllllllcloddddoodddddddooodddddddoddddolllolooddddddxdol:'......''..,cooddddxxxxxxxdddddddddddddddddoooooddddddddddxdddxxxxxdddooddoodddxxxdooodddddolcclllccccccccllllllllccccccccc:;;,,;;;;;;;;,''''''''''''''''..........''....................................................... ..... .........
..................................................................................''..''....',,,,''''''''''''..................''''''''''.''''''''.......''''''......'''''''....................'''..''''''............................................................................''''''''..''',,,;;,,''''',,;;;,,,,;;;:;;,,,,,,,''''';:c:::::::;::ccccccc::;;;;::ccc::::::::;,,,,,;;;;;,;;;;;;;;;;,,;;;:clloodddolcclodxkkxxxdlc:::;;;::::::::;;::ccc::::::::clllllllllccccclllooolllooddoooodddddoooooooddddddddo;..,,',cdddddxxdoc'.....'''..'cooddddxxxxxxddddddddddddddddoooooooodddoooooodooodddxxdddoooooooddddooooooddddolcccllllllccccccccllcc::::;;:;;;,,,,;;:;;;,,'....'.........''''................................ .............................. .... . ........ ..
...............................................................................................''''''''',,,'''''''''''''''..''''''.....'''''''''...'''....................................................'''..................................................................'''''.....''''......'''''''''',,;;,,,,,,''''',;;,''',,,,;;:codddxxxxxxddddol:;;;;;;;;::cc::;;;;;;;;;;;;;;;;;;;;;;;;:::;;,,,,,;:cllodxxxdoccclodxkxdxxdoc::;;::::::::ccccclllllllllllcccccccclllllllooodddodddddddddddddooooooooodddoodddl;......':oddddddl,.. ...''...;loodddxxxxxxdddddddddddddddddddoooddddoooodddddddxxxkkkxdddoooodddddoooooodddoolc::::::::::ccc:ccllcccc::::;;,,,,,,,;;;;:;;,''.........'''....................................... ............. .. ... ............. .. ........ . ....
...................................................................'''...........................''.....'''''......''''''...'',,'............''............................................................'''..............................................................''',,,'''''''..'.......''''''',,;;:::;,,,,,,,',,:::::::::::clodxkkkkkkkkkOOkxddolloddolc:cccccc:::::::::c::::::::::cccc:;;;;;;;::clooodddolllcccloxxkxxdddoccc:c:::::ccllcc:ccclcccllcccccccccclllllooooooooooooodddddooooooddddddddddooooooc'.... .,ldxdxdc'. ...'...,cdddxxxxxxxxddddddddddddodddddddddddooddddxxkkkkkkkxkkkkxdddddddddddooodoooooolcc:::;;;::;::::;:::::;;:::::::;;;;;;;;;:::;,'.........'''''''....................................................... ....... ............... ..... ..... .
...............................................................................................................''''''''''..'',,,,'''.............................................................................................................................''''..'.....'''''''''''.....''''...'',,,,,,,,,,,'''''''',,,,;:cllllloddolcllooddxxkkkkkxdollldxkOkxdolcccc::;::;;;;;,,,,,,;:ccc::;;,,;;;,;;:cclllllc::cccccllodxxxddollllcc::::::::::::cccccccccclllllllllloooddddddddddddoooddxxdddddddddddddddddooooo:.......'cdxdo:'. .......':oddxxkkkxxxddooodddddddddddddxxdddddddxkkkxxxxxxxxddddxddddddxxxdoolllooolcc::::::;;;;;::c:::::::;;:::::::::;;;;;,,''''''......'...'',,''..................................................... .............. ........... . ..... .
.................................................................................................................'''','''''.....................................................................................''...''...........................................''''....'''''''''''''....'.''''...'',,,'''',,,,,,,,,,',,,,,,;;::::;:ll:;,,,;:cldxkkkkkxdocc:ldkOOxdc:;;;;;;;::;;;;;;;;;;;;::;,,'''',,,,,,,;;;;;;;;:ccclooooooodxxxxdddddoccccc::::ccccccccllllcccllclllllooddddddddddddooooodddddddddddooddddddoooddddc'. .....,lol;... ........,loddxxxxxddddooooodddddddddddxxxxddddddxxxdddddddooooodddooddxxxdoollllllcc::::::::;;::::::;:::::::::cc::;;;;;,,,,,,''''.................................. ......................................................................... ... ......... ....
.........................................................................................................''''.........................................................'''''''...............................................................''''.....''...............................'''',,''''''''',;;;,'',,,,',,,;,,,,,;;;;;;;;;;;;;;;,,,,;:cldxxxxdxxdlcccoxkkxxdl:::::;;::;;;;;;::::c:;;,,,,,,',,,,,,,,;;;;;;;;:clllloollllllodxxxddddddddoollllllllllllllllllcccllllodddddddoooooodoooodddddddddddddodddddolloodddo;. .....,;.... .......':oddxxddddddddddddddddddddddddddddddddddooddodddddoooooodoodxxxxxdololllcc::;::::::;;::c::;;;::::ccc::::::;;;;;;;,,,''.......................................................................................................... ...... .....
........................................................................................''..........................................................................'',,,,,,,,'''....................'.''''.......................................................'''....................'''''''''...','''',,,,,,,,,,,;;;;;;,,,,,,,,,,,,,,,,,,;:cloddddoolcclodxxddddolccc:::;;,,,;;;::::;,,,,,,,,,,;,,,,,,;;;:;;::cllllcc::;:::::::ccccclodxxxxxxdooooooollllllllooooooodddddddddddddddooooddddddddddxdddooddooolloodddo;. ....... ..','..,ldddddooooodddddddddddddodddddxxdddddddooooooooddddooooodddxxxxddoollccc::::::::;::::cc:;;:::::ccllc::;;;,,,,,,,,,'''........................................................................................................ ....
...................................................................................................................................................'''''....''''''......''',''',,,''........'''''''''''''''',,'..........''''''''.................................................'''',,,,,,,,,;;,,''''''',,,,,,,,,;;;;;;;;;;,,',,;;;;,,,,,,,,,,;;;::cllllloodooddddoolllc:::;;;;;:::::;,,,,,,,',,,,,;;,,,,,,;;;;;;:::;;;;;;;;:::::;;;:::::ccloddxxddoooooooolloodddddddddxxxxxxddddddddddddddoooooooodddoooooollllooodoc'. ....... ...''...;lddooooooooddddoooooooooddddoddddddooooodddooooooooooooodddddooooollcccc:;:::::;;::::::::::;:codolc:;;,,,,,,,,''............................................................ ................................................ . .. ... .. .. ......
...............................................................................................................................................'........''.....................'',,''.....'',,'''..................''''',,,,,,,,,''...............................'''''''......'',,,,,,,,,,,',,;,,;;;::;;;,,,,;;;;,,,,;;,,,,,,,,;;;;;;;,,,,,,;;:clloooddxdddddddddxxxxxdoollc:::::cc:;;;,,,,,,,,,,,,,;;;;;;;;;;;;;,,,,,,,,,,,;;;;;;;;;::::;:::ccllodxdoodxddddddddddddddddddddddoooodooooddddoooooooooooooooooollloooool;. ........ ..,,'...:oddoooooooooooooooooooooooooooddddddoooooddooooooooooooddddooooollcc::::::::::cccccc::::::;;:lddoc:;,,,,,,,,,'............................................................................................... ........ ..... .. .........
...................................................................................................................................................................................'.....''....................''''''''''.......'.........''''''...........'''''''..''''....'''',,,,,,,''''''''''',,,;::;;,,,;::;;;;;;;;;;;;;;;;;;;;;;;,,;;;:::ccllllloodxxxdxxxdddddxkkkxxxxdolc::;,,,,,''',,,,,,,',,;,,;;;::::;;,,,,,,,,,,,;;;,,,;::cccc:::::::ccloddxxxddddxxxxxxddddoodddddddoooooooooooooooooooollllllllllllllloooc. ......... ..'''...codoooooooooooooooooooooooooooodddddooddooodddooooooooddxdddoooollc::;;;;;;;:::c:::;;::::::;::cll:;;,,,,,,,,,''............................................................................................... .......... ...... ........ ....... ..............
..................................................................................................................................................................................''''.................................'.......''''''''''''''''''''.....'',,;,',,,''',,'''''''''''''''''''....'''''',,;;;;;;:::;;;::::::::;;;;;;;;;;;;,,,;;;;;;::;;;;::clooodxxxxxdollodxkO000Oxoc:;,,,,,',,,,,,,''''',,,,;;:::;,,,;;;,,,,,,;;;;;;:cllccccccc:::ccccclooollllodxxkOOkkxdoooooooollllllooooodddoooooollloollllllllloooooc,.......... ...''...'cooooooooooooooooooooooooooooooddddoooooooodddoodddddxxxddooolllc:::;;;;;;::::cc::;;:cllc:;;;;;;,,,''''''''................................................................................................. .. .. .. .... .. ..............
.........................................................................................................................'''................................................................................''''''....'''''......'''''''''.''...........'',,,,'''''''''''.....''''''''.........'''',;;;;;;;;;;;;;;;;:::::;;;,,,,,,;;;;;;;;;;;;;;;;;;,,,;;:cllllloooddoooodxkOOkxdoc;;;;;;;;;;;,,,,,,;;;::ccc:;;;;;;;;,,,,,,;::::::::::::::::::::ccccccllllllloooodkkOkxooooooodooodddddoooooooooooooloooooooooooooooooodolc:;,. . ....'... .:ooooooooooooooooooooollloooooooooooooodddddddddddxxxxxdooollccc::::::;;;;:::ccc:::ccccc:;;;;;,,,,',,,,,,''............................................................................................... . .. . ..... ... ..........................
..........................................................................................................................'''..........................................................................''....'',,'...''''..........''''............''''''',,,'''...''''''''''''''''',,,'''''...'''',,,;;;;;:::::;;;:::::::;;;;;;;::::ccccccc:::;:::::;;:::::ccccclooooollodxkOkxolllodddxxxdolc:::clodxkkkkxdddddool:::clddxxddoolcccccc::::::cc::::cccclllllllllloddooooodddddddoddddddxxdoolllllllloollllooodddooooooodddol:'. ...'''....;looooodoooooooooooooollloodddoooooddooodddddddddxxxddooollccc:::::::::::::::ccc::ccc::::::;;,,,,,,,;;;,'................................................................................................ ........ ... ..........................
...............................................................................................................................................'''.............................................................'''..................................''',,,,,,,,,''''''''''',,;;,''',,,,''''''....'''',,,,,,;:ccccccccccc:::;;;;;:::::::::::;;,,;;;:;;;;;;;;;;;;::ccccllcclodxOOxoloddxxxkkkOOOkxddxkkkO00OOOOOO000OkxdodkkkkOOOOkxxxddolcccclcccccccccllllooolclccloolloooddddddollllllodxkkdoollllloodddddoooooooooooooooool;.. ..........'coddoooooooooooddddooooooodddooooodddddddooddddxxxdooollcc:::::::::::::cclllcc:;,,;;;;:;;;,,,,,;,,,,;,'................................................................................................ .... ............................... ............................
......................................................................................................................................................................................................................................''.................'''',,;;,,,'',,,,,,,;;,'.......'''''''''''''''''',,,,;:cccccccccccccccccllc:;;;;;;;;;;:;;:::;;;;;;::cccccccccccclodddxxxdooodddddodxO000OOOkkkkxddddddxxxkO00OkkkkxxxxxkkkkO00Oxdolollccccllllcclloolllccllllooooooodxxxxdoooooodddooolllooooodxxkxdooooooolooodddol:.. ............,:looooooooooooooddddddddddddddoooodddddddoddxxxxddoolllllc:::::::ccccccccllc:;;;;;;;;;;;,,,,,,,;,,''....................................................................................... .............................................................. ... ....... ..
...............................'..........................................................................................................................................................................................................................'..'''......'''''''''''........................'''''',,,,;;;::cccc::::ccc:::;;:::;;;;;;;::;;;;;;;;:cccc::::::::cllccloodxkOOOkxxddoodxkxxddoooooodddddddoodkO00OxolooddddddkOKK0kdollclllllllllcllllllllllllloooooooddxkxdooolllloooooooooooooodxxxdoooooooooooooooc'. ............',:coddddxddddddddddddddddddddddddddddddodddxxdddollccllcc:::ccccccccccccc::;;;:;;;;;;;,;;;;;;,,,'''...........................................'..................................................................................... ....................... ...........
.............................''...............................................................................................................................................................................................................................................,,''...........................''',,,,,,;;:::::;;;:::;;;;;;;,,,,,,,;::;;;;;;;:::;;;;;;,;;:::::;;:::ccloooooddxxdoollccccc::cclodxxxxolccllllllclllooooodk0KK0kxoolllllllllllllollclllloooooooooodddxxxdooooooddooooooooooooodddddooooooooolooddo;. ....... ......',:loddddddddddddddxxddddddoddddddddodxxddoooollcccc:::::::cccccc::cccc:;,;;;;;;;;;;;;;;;;,,'.'.......................................................................................................................... .... ......... ............... ...........
..........................................................................................................................................................''.'''''........................'''''..............................................................................'',,,,,''.....'''...............'''''',,,,;;;:::::::;;;;;;;;;;;;;;;;;::::cccccccc::;;;;;;;;;;;,,;;:::;;;;;:ccllllol:;;::::::;;;;:clllllcc:cclcccccccloddxk00Okxdooooooooollllllooollllooolllooddooooooooodddddddooooooooooooodddddddooolllooooodoc'. ....... .........',:lodddddddddddxxdddddddddddddddddxddoooolllcc::::;;;;:::::::::::c:;,,;;;;;;;;;;;;;,,'................................................................................................................ ........................... . ................ ..........
................................''.............................................................................................................................''''...........'''''.......'''..................................................................'''..............'''''............''''..........'',,,,,;;;;::cc:::;;;:::::c:::;;;:::ccccccccc:::::;;;;;;;:::::::::::::::ccllc:::::;;;;;::cc:::cccccc:::::::::ccclodxxxxkkOOkkxxddooooooooooooodddddddoollllooooooooooooodddddddoooddddddddddddddddooolcloooooool:. ..''.. ..........'',:loddxdddddddddddddxdddddxxxddddddoolllllcc:::::::::cccccccc:::::::::;;,,,;;;;;;,,'....................''''................................................................................... ............................................. ..........
............................................................................................... ................................. ........................',,,'....................'''''...................''..................................................'''''''''''''',,,''''''''''.''''''''...'''',,;::;;;::::::ccccc::::;;:::::;;;::clcc::::::::;;;;;;;;;;::::::::::::ccllllc:;;:::cc:::::::::;;;;;;::;;;;::ccccodkkkkxxxxxkkkOkkkxxddddxxxxxxddddddddddddddddoodddodddooodooddddddddddddddoooddddddddooooooooddo:. . .','.. .........''''':odddxxxddddddddddoooddxxxdddddoooolllllcccccccc:ccccccc::::::::::;;;;;;;;;,''''.............................................''''..........'''........................... ............ .... .............................................................
...................'''''''.......................................................................................................................................''.............................................''...............................................'''''''''''''''''',,''',,,''....''''''''''',,,,,;;;;;;;::::cc:cllcccc:::ccccccc:cccc::::cc::::::::;;;;:::::::::::::cccccc:;;;;;:::::cccc:::;;;;;;:;;;:::ccccccloddxxxxkkxxdddxOOOkdooddddooooddooddddddddddoooooooooool:::clodxxxxxxxdl;'',;;;:coddddddooooooc,. ..',;'. ..........''...';coddddddddddooooooodddooddoooooolcccclcccc:::::::::::::::::::;;;;;;;;,,'...................''...........................'''..........''''.................................. ................ ..............................................................
..................''''..............'.................................................................................................................................................................................................................'''.....''''''''''''....'..'',,,,,,,,,,'''',;;;,,,,,;;;;;;;,,;;;;;;;;;::ccllllllcccccllllcc::cccclllccccccccccccccccccccccllllccc:ccccccc:::::ccccccccc:::;;;;;;;;;;::::;::ccloooddxxxddxkOOOkddooooooooddoooddddoooddoooddoooddo:'...',;;:lodxdl,. ......'cdddddddolc:,... ........ ..................';coodooddooooooooooolllllllllllcccccccccccc:::::::cc::::::;;;;;;;,'''..........................''..................''''........''....................................... ......................,'........','..............................................
..................''''................................................................................................................................................................................................................................'''''''''''',,,'''''''''','''..''''',,,',,,,,,,'',,,;;;:::::;;;;;;,,,;;::clooooollccloolcc::::cclllccccccccccllllcccccccccllllc::cccccccccclllccccccccc::;;;;;::::::::::::::ccllcloddddxxxkOOOxdooloooooolllloooooooooooddddoooool:,....'''',;;;. .....cdxxxdoc;,... . ....... ......... ...........,;clodddooooooollccccccccccccccc::::ccccc:::::::cc::cc:;;;;;;;,'.................................................''...........''................................. .............'''..'''',cc;.....;c;............ ..................... ........
...............................................................................................................................................................................................................................................''''''''''''''''''....'''...''',,'''''''''',,,,,,,,,,,,,,,,,;;:::::;;;;;;;;,,,;;;::cclllllllllccccccccllllcc:ccccc:ccloollcclllllllcccccclllclllllllllllllllccc::::cccccc::cccccccllllloooddooddxkOOOkdooooooooolloooooooodddoodddoooooolll:'. .'','.... .. .,;;;,..... ... .... ..'..... ........ ...,ldddddooooollcccc::cccccccc::::;;;:::;::::::cc::::;;;;;;,''...............................................''''......''''''',,''.....''..............................................'',,;;:lol:,..:ol,....................................... .....
.................................................................................................''..................................................................................................'.......................................'',,''',,,,,,,''''''''''''''''',,''''''',,,''''''''''''''',,,,;;:::::;;;;,,;;;;;;;;;;;;;;::clllllllccccllccc:;;cllllcllllloooooooolllllccllloooddoolllclllllccccccccccccc:ccccclcccccccllloodddoddxxkkxdooooooooolllooodddoolc::::::loooollc:,....''''....... .. ....... .':::;,. ......... .,coooolllccccccc:::::ccc:::c:::::::::::::ccccc:;;;;;;,,,,,''...........................................................''....................................................',,;;;;;;;:cllloooodlcokxl,'',,,,'.......................................
..............................................................................................'.','.........................................................................................................................................'',,'''''',,,,,'''''''''''''''',,,''''''''''..............'''',,;:::cc::;;;;;;;,;;;;;;;;::::::cclllllllccc::;;;;:cclllllollcllolloolloddddxxxxxxxxdoolllcccccccccccccccccccllllllcccccclllllooolloddddooooooooooolllooddddoc,'..''...':lol:'................... ... .';;;,'.................. ..:lollccc:::ccccc::c::::c:::ccc::::::::::::::::;;,,;;;;,,,,''..............................''...........................'''......................'.............................''.''',;codxxkkOOKKK0KXKOdl;,''................. ..... ..............
.............................................................................................',,,,'.......................................................................................................................................'',,,,,,,,;;;,,''''''''',,',,,,,,,,'''',,'..''.......'''......'''',;:ccccc::::::;;;;;::::::::::cclloolc:::::::::::::clllllooollloooooddddddddddoooddxxkkxdoolcccllllllllooooooollllllllllloooooooooooooooooooooooooooooodddo:........ .','.. ....... ...... . ........ .. ..,:::;,. ....... .... .,cooooollcc:::c:::ccc::::c:::c:::::::::::;;;;;;,,,,,,,,''''........'''.................................................''''......................'....................... .........,:ccldkOO0KXWWNKkxoc,............................... .........
.........................................................................................',;,,,;:::;;;:c:;'......................................................................................................................''...''',,;;;,,,;;:::;;,,,,,,,,,,,'''',,,,,,'',,,,'.........''.........'''''',,,;;::c:::ccc:::::c::c::::::ccllc:;;::::::::::::cclloooooooooooooooooooooolooooddxxxxxdollooooooddxxxxxxxxxddddddoolllooooooooooollloooooooooooooodddooc;'.... ...... ..... .....'''. .. .,::;,.. .... .,cloolllcccc:::::::cc::cc::::::::::ccccc:;;;;;;;,'''''''.............'...............................................''.......................................................... ....',;:lxkxxk0KX0kxdoc;,................ . ....... ........
......................................................................................',,;:c::ldxkkxl::;,.........................................................................................................................'..'',,,,,,,,,,,;;,,,,,''''''''''.....'''..''',,'''''''''''''......''''''''''',,,,;;;;;;;;::;;;::;;;;::::;;;;;;;;;;;;::::::::cclllloooooooooloooloooolllllooollllllllccclllllllllloooddxxxxxxxxddddooooooooooooooooooooooooooooddddool:'.. ..',.. .. .... . ..''. ..;c:,.. ........ .;cllcc:::::ccc:;;;;:::::::::::::;:::ccc::;;,,,,,'''...''......''''''..................................''.................................................................. .... .....';collc:;:oxxo:,,,,,,,'.................... ..................
........................................................................................';::;:lxkkxdc;'........................................................................................................................'''''',,,,,,,,,,,,,,,,',,''''................'',,,,,,,,,,,,'''''''....'''''','',,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::;:::::cccccc::ccccccclooddooooooooooollllllooolllllllllllllllllllooolooooodddxxxxkxxddoooooddooooddddddddoooooooddddo:,.. ..,,. .. ..... ....';,.. ........ .':cllc::::::::::::;;:::::;;:::::::;;::::;;;,,,,,''.''..............''''................................'''...........'.............'''''............................................. ..';cc:,'',,'':oc'................................................
......................................................................................,;;;,'';cool:;,''....................... ...............................................................................................'''''',,;;;::::;;,,,,,,,,,,,'''''''''''.''',,;;,,,,,,;;;,''''''''.......''''''',;;;;;;,,,,,;;;;:::::;;;;;;;;;;:::cccc:::ccccccccccc::ccclooodooooooooollloooodddddoooooolllllllloooooooodddoooododxxxddoddddxxxxdodddddxxxdddooodddddl:.. ... ..,'. ........ ............ .......... .;looolcc:::::::::::::::::::::::cc:::cc:;,,,,,,,''.................''''.................................................................................................................. ...''..........',;'................................................
....................................................................................'''........,::;,'..''...........................................................................................................'....'''''',,,'',,,;::c::;;,,''',,,''',,''''''''...'',;;;;;;;;;;:;;,,,,,,''''.....'',''',;;::;;;:;;;;;;:::::cc::;;,,,;;::::ccccccccllllcccccccccccllllllllllllllllooollodddddddddooooooolllooooooodddddoddddddddddoddxkkkkxddddl:;;::ccloddddol:'. ... ...... ........... ... . ... ..... .;looollcc::cc:::::::;;;:::;;;;;;;;;:::;;,,,,,''''......................................................................................................................................... ................',..... .................................... ...
................................................................................................,'.............................................. .........................................................................'',,,,,,,,,;;:c:;;,,,,,,,''''''''.............',,;;;;::;;;,,,;,,'''''.....'',,,,,;;::::;;;;;;;;::::::::;;;;;;::ccccccccccllllllcccclccllclllcccllllccccccccllllooddooddddoooloooollloooooooooooooddddoooodddddddxxxxxxddoc:;'...,:lool:,.. . ...................... ...... ... .;loollc:::::::::::::::;;;;;;;;,,,,,;;;;,,,,,,,'''...................................................................................................................... ......... .. ..............''.................................... .. ......
..................'''''...................................................................... ...........................................................................................................................',,;;;;;;;,,;:::;;;,,,,,,''',,,,''''''''.'''''',,;:::::;,,,,,,,,,''''..''''''',,,;::::::;;;;;;;;;:::::;;;;;;:ccccccccccllooolllllllcccccllllcccllllllccccccllllloodooooodooooolllllloooollollooooooooooooooodddooddooddoooooc,. ..,;c:,.. ........... ...... .. .:lollcc:::::;;;::::::::;;;;;;,,,;;;;;,,,,'''...''.............................................'.''...................................................................... ........... .............................. ............... ............ ..
................................................................................................................................................ ......................................................................',,,;;::::::;,,,,;;,,,,,,,'',,;,'''''',,,,,,,,;;;:ccc:;;;;;;;,,,,,,'''''''''.',;;::::::;;;;;;;;;:::::;,;;;;;::cclllllllllloollllllllllllccllllllllllllllllcccccclllloolloolloooolllllloooooolooooooooooooooooooooooolllooooool;. ..','. ...'... ... .'cooollccc::::::::::;:::::;;;;;;;;;;;;;,'''''......................''.......................................................... ......................................... .. ...... ......................... ................. ............ ..
.....................................................................................................................................................................................................................'''',,,;;::::;;;;,,,,,,,,,,,;;,'''''..'''''',,,,;::cccc:;;;;;;;;;;;,,,''''',,,,,,;;:c::;;;;;;;;;::::c::;;;;;;::cclllllllloooooooooooooooollllllllllllclllllcccclllccccclcccclllllllllllllooooollllooooooooooooooooooooooollooooddl;. ....... ........ .. ':lolllllcccccccc:::;::::;;;;;;::::;;;:;,,'''..................................................'................................................................................. ........................... ..... ............... ...........
..................................................................................................... .......................................... ................................................................''',,,,;;:::::;,,,,;;::;;,,,,,,,,''''...'''''',,,;;;:::;;,,,,,,,;;;;;,'''',,,'',;::::::::::::::::::ccccc::;:::ccccllooooooooooollooooooooooolllllollllllllllllllllllllllclllcccllccclllllllloooooolloolooooooooooooooollllllolllllool,...... ..... .. .':llllccccc::::;:::;;;;;;;;;;:::;;;;;,,,,,,''...................''''................................................................................................ .. ........ ............... ....... ... . .... ................ ..........
.....'.........................................................................................................................................................................................................'',,,,,,,;::cc::;;;;;;;:ccccc::;;,,''''..'',,',,;;:::::::;;,,,,;;;:::;;;,''',,,,,,;:cccccccc::::::::ccllc::::::cclllooooddddddooooolllooooooooooooooooooooloollllllllllllllllllcclllllolllllllllllooollllllllooooooooooooooooloollolllool;...... ... .:llcccccc:::;;;;:::;;;;;;;;;;;;,'',,,''.''............''''.....'''''........................................................................................................................... ...... ....... .............................. ... ..........
..............'........................................................................................................................................................................................'''.....',;;;;;;::cccc:;:::::::ccllcc:;;;;;,''',,,,;;;;::;;;:::;;;;;;;::::::;,,,,,,,,;;;;:::ccc::ccc:::ccccccccc::::::ccllooddooooooooooodooooooooooooooddddooooooooloooollolllllllllllllloooooolooolc;.',;lolllllooolllooooooooooddddooooddddddol:;,''.... .. ... .:ccc::::::;;;;;;;;;;;;;;;;;,,,,''''''''''''.............................................''''...'''''............................................................. ...... .. .. .. ... ................. ........................
.............................................................................................................................................................................................''''''....''',,,,;;;::::ccclllllllllllc:cclllc:;;;,,'''''',,;;;;;;::;;,,,,,,,;;:cc:;,,,,,,,,;;;::cllccccc:ccccccclllcc::;;;;:cclooooooodddoooooooooooooooooooolllooooooddoooooooooooooolllooooolooddoooooooool:'. .':cllooooooooodooodddoooodddooooooooooollllcccc:;.. .. ... ..;ccc::;;;;;;;;;;;;;,,,,,,,''''...'''',,;;,,''...........................''....''..............'''''......................................................... ....................... ...... .. ... ..... ............................. ... ... .
................................................................................................................................................................. ..........................''''',,''',;;::cclccccccc:ccllc::cccc::ccccccccc:;,,,,,,,;;::::::::;;,,,,;;;;:cc:;;,,,,;;;;:cloolllllllooooddddollc:::::ccclloddddddooooooooooooooooolooooooooooooooooooooooooooooooolcclooooooddddoooooollc,. .;lloooooooodddddddddooooooooooooooodddolllooolc,. . . ...,:ccc::;;;:::::;;;;,,,,'''.........'''............................................................'''.................................................... ... ............... ....... .... . . . ... ........... ................ ..............
...............................................................................................................................................................................................''',,,,,,;;;;;:clllc::;;;;::c:::ccc:;;;:ccccccllcccccccccclcc::;;;;;,;;;::;;;;;;;;;;;,;;:::cccccccllllooodddddolllccccloooooddddddddoooooooodddddddoooodddddddddddddddddooooooooooooooooooooooooooooolc;,... ':llloollloooddddddddddddoooddddddddddddooodo:'. .. ..,;;:ccccc:::::::;;;,,,,,''''''.......''''.......................................................................................................................... ........... ... .... .................................................................. ....
........................................................................................................................ .....................................................................'''''',,,,,,;;:cclc:::;;;::::::::c:;,,,,,;::;;;::cccclllllooolc::;;;;;::::;;,,;:cc:cccccccccc::::ccccccllooollcclllllloooddddddddddddddddoddddxxxxxxxdc;:lodddddddddddddddoooooooooddddddoddddollcc:;,... ... ..,:llolllooddddddddoooooodddddddddxxxdoooooc;. ..;clooooollllccccccc:;,,,,,,'''''''....................................................................'''..'................................................................................................... ................... ............... ...........
...........................................................................................................................................................................................'..'''',,,,,,;;:cllc:;;;;;;;;;;;;;;:::;,,,,,;,,,;;;;;::::ccllllolc::ccllllcc:;::;:c:;;:lolllccccc::::ccclloooollc:::ccllloodddddddddddddddddddxxxxxxkOOx:...''';:llooddddddddxddddddddoooooolc:::,.... ... ..;:loooodddddoooooooodddoooooooooollcc:;.. .':loddxxxxxxddoollloooolc;;,,,,,''''''''''...''...............................'''''...............''''''''''............................................................................................................................................. ........ ...
...........................''.............................................................................................................................................................'..'',;;;;;;;;;::c::;;,,,,,,,,;::::;,,,,'''.',,,,;:::::::::cclllllc::cllc:;;:;;;;;;::::clllolcccccc:::ccllllllcc::::ccloodddddddddddddddddddddxxxxxxxkkd:. ......''',;:cccccccc::cc::;,,''.... ...'',;;::::cccccccc::::;;,,''....... .,:cllllooddddddddddoodxxxolc:;;;,,''.............................................................'''',,;;;;,,''.................................................................................. .................... ... .. . ...... ..........
........................................................................................''..''....'......................................................................................,;;,,;:::::::::cc:;;;;;,,,,,,;;:::;,''''.....',;;::::::::::;;;:::::::ccc::;,,',;;;;;;:cccllcccc:::::ccccllllcc::::cclloooddddddoodddddddddddddxxxxxxxxo:'. ... ..........''......... ................. .. ..,:ccccccccllooddddddddxxxxxdolc::;;,,,,,,,,,,,''....................................'.''''''''''',,,,,,,,,;;;,,'................................................................. .... ....... ... ... ...... ............................
......................................................................................'''........'''''''.................................................................................,;::;;;::::::::;;,,,;,,,'',,,;;;,''......','',;::::c::;;;;,,,;;;:::::::;;;;;,,;;::;::c:::cc::::;::::cccclcc::::::cllloooooddddddddddddddddddddxxxdddl:. ... ............... .... ..,::cccccccllclllodddddddddxxxxdol:::::;::ccc::cccc:;;,,,;;,''....................'''',,,,,;;;,,;;;;;,,,'',,,,,;;;,'..'........................................................ .. ... ..... ....... .............. .......... .......... ....
....................................................'''''.'''.........................''..''..''''''''''................................................................................',;:;;,;;::::;;,,,,,;;,,,,,;;;;;,,,''''',;;:::::::::::::;;;;::::;;;;;;;;;;;;,;;;;;;;:::::;;::ccccccllccc::::::ccclloooooddddddddddddddddddddxddddolc,. .... ... . ....,:ccc:::::::ccccllodddooooooddolcccccc:::cccllllooooollcc::,''',''.......''',,,,,,,,,;;:;;,,;;;;;;,,,,,''''',,,,,,,,''......'''''''''''''''''''................... .... ............................... .. ... ....................................................
......................................................'''''''''''''''...............''''''''''''...''''''''''''''.....................................................................'''',,;;;:::;;;;;,,,,;;,,;;::;;,,,,,''',;;;;;:::;;;;:;;;;;,;;;::;;,,,,,;;;;:;;;;::ccc::::::::::clodooolc:::;:ccclloooooooddddddddddddddddddddddoolc;'.. ... .... .... ... .......... . ...';::::::::;::::::::ccccccllllooollccccccc::::::::cclloodddddoc:;;:::::;,''',,;::cccccc:::::::;;;;,,,,'''','''''''''''.'''''''',;;:;;;;,,,,,,,,'',,,,''''......................................... . ........ .. ... .................... ......... ....................
......................................'''''.........'''''''''''',,;;,,,''',,''''''',,,,,,,''''''...''''''..''''''...................................................................'',,,,;;;::;;;,;;;,,,,,;,,;;,,,,,'''''''',;;;;;;;;;;;;::;;;;::::;;,,;;;;;;;;;::::::ccc:::;;;;::cllooooolcc:::cccllloooooddddddddddddddxdddddddol:;''... .. ......... ... . ......... ........ ...''',;;::cccc:::::;;;;::;;;;:::::cclllllllllllloollc:::::::ccclodddddol:::::cccc;,,;;:ccloooollllccc::;;;;,,''''''',,,,,,''''.......'',,;::::;;;;;,,,,,,''''''',''..........'....... ......................... ...............................................................................
...................................'''''',''.....'',,,,,,,',,,,'',,,,,,,,,;;,,,,,,,,,,,'''''''''''''..''...''''''...............................................................''',,;;;;;;;;,,,,,',,,,,,;;;;;,,,,,,,'',,,,,,;:::::::::::::;;;:::::;;;,,;;;;;:::::ccccc::::::::ccclloolc::::::::cclloooddddddddddddddddddddddddoc;,.. .. ... ... .............. .. . ......... . .. .,:cccccc:::::::;;;;;;;;;:::::;;::::::::::ccccloooddxdoc::::::::cclollc::;;,,;:cc:;;;:cllllllllllc::;;::::;;,,,,,''''''''''..'''......'',,,,,,,,,;;;;;,,,,,,,''''''''......................................... ...............................................................................
..........................................'''''''''''',,,,,;;;;;;;,,;,,,,,,,;;;::::;;,,,,,,''''''''''''''',,,,'''''.......''.............'''...................................'',,,,;;;;;;,,,,,;,,,,,,;;;;;,,,,,,,'',,;;;;:::::ccc::::::::;;;:::::::;;;,;;:ccccccccccc:::cccccclloollc::::ccclllooooooddddddddddddddddddolc:;,'.... ... .. ........................ ....... ............. . .. ........',:ccc::::::::::::::::::;;;;;::::::::::::::::::clodddddoc::::::::;:::ccccc:;;,,;;:::ccclcccc::::::;;;,,,,,,,,,;;;,,''''''''..'''.......'',,,,',,,;;;,,,,'''''''''''.'''.......................................... ......... ....... ............................................................
....'''''''''.''''....................''''''','''''...'''',,''',,,,,,,,,,,,'',;;;;:::;,,,,,,,,'''''''''''''''''''''......'''........''''''''''.............................'',,;,,;;;;;::;;,,;;;;;,;;;,,,,,,,,;,,,',;;::::::cc:::::::::;;;;;;;:::;;;;;;;;;::ccccccc::::::::::ccccllcc:::ccloddddddddddddddddddooodoolc::;,........... ... ...................''',;:::;:::;'.. ............. .....''.... ...',,;:::::::cccc::;;::::::;;:::;;;;;;;::::::;;;;::::::::cllllllc::;;;;,,,,,,,;;;;::::clooolc::;;;;;;;;,,,,,,,,,,'',,,;;;,',,,,,,,;;;;;,,'''''.'',,'''',,,,,,''''''''''''''....'.................................................... .. .................................. .......................... .....
.....'''.......'''''..................'''',,,,,,''''''',,,,,,,,,,''''''''',''',,,;;::;;,,,;;;;;,,,,,,,,,,'''''''.......'.....''''''''''''''..''.......................'''',,;;;;;;,;;;;;;,,;;;;;,,,,,,,,,;;;,,,,,,,,;;::::::::::::::;;;;::;:::;;;;;;;::::::::::::cccccccc:::cccccc:ccccclooooodddoooodddddddoolc:;,,'............ ..... ...............',;:cclllloodddoolllc:;,'......'......... .... . .......... ........ ..';::cccc:::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::;;;;;;;;;;;;;;;;;,,,,,,;;;;;;;;:clool:;,,''',,,;;;;;;;;;;,,,,;;;;;;,'',,,,,,,,;;:;;,'',,,,;,,''',;;,,''''''''''''''''.......'''........ ...................................... ............... .... ... .......................... ....
................'''...............''''''''',,,''''...''','''''''''',,'''''''',''',;::;;,,;;;;;;;;;;;:::::;;;;;;;,,'''''''.....''''.....................................',,,,,;;;,,,;;,,,,;;;;;;;;;;;,,,,;;;;,''',,,;:::::c::::::;;;;;,,;;::::;;;;;;;;::::cccccccccllcclccccclllccccllllloooooooooooooooollc;,'.......... ...............',;:cllooooooodddoooool:;,,,,,,,,''''''............... ... ..... .......... .... .. ...',::c::::::::c:::;;;;;;;;;;;;,,,,;;;;;;;;;;::;;;;;;;;,;,,,,;;,,,,,;;,;;;;;;,,;;;;;,,,,,;;;:::;''',;,,,,,,;;;;;;;;,,,,,,,,,,,,,''''''''''',,,''',,,,,,,,;;;;;;,''',''',,,,''...........'................................. ................ .................... ................... .......... ..........
'............'''''........''...'''''''.....''''''''''''''''''''''''''''.'''.''''''',,'''',,,''''',,,,;;,;;;;;;;;;,,,,,,'''.....................''''..'...............''',,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,;,,,,;;::c:::;:::;;::;;;;;;;;;;;;;;;;;;::::c::ccccccccllllllcccccllccclllllloooooooolc:;,,,'..... ... ............',:clooooooooodooooooollc:;'....'',''........................ ........ ...... ... .. .........',;::c:::;;;;;;;;;;;;;;;;,,,,,;;;;;;::::;;;;;;;;;;,;;,,,,,,,,,,;;;;,,;;;,,,,''',,,,'',,,,;;;,,,,,,,,,,;;;;;;;;,,'''''''''....''....'''''''''',,,,,,,,''''''''''',,,,'......................................................................... ........ ........ ..... ........... ....
.............................................'',,''''''''''''''''''''''..''''''''''''..'''''...''''''''''''',,,,,,,,,,,,,'''..'...............''''''''''.........'''',;;;;,,,;;;;;;;;;;;,,,;;;;;;;;:;;,'''',,,,;:::::::::::::::::;;;;;;;;;:;:::;;::cccccccccccccllllllllllcclllllllllccccc:,,'..... ...... ......... ... ..;clooddddddoooooooooll:;;,,,,''.''........................ ... .... .......... .,::::::;;;;;;;;;;;;;;;,,;;;;;;;;,,,,,,,,,,,,;;;;;;;;,,,,,,,,,,,,;;;;;,,,,,,;,,,,,'',,,,,,,,,,,,,,,,,,,;;:;;;;,'.....'...''''.'''''''...'''''''''''''..........''''............................................................. ...... . ......... . .............. .............
.........................''''''''''''.........''..........''''.................'''''''''''''''''''''''''''',,,;;;,,,,,;;;,''''''................'''''''.......'',,,,,,;::;,,;;;;,,;;;;,,,;;;;:::::;;;;;;,,,,,;;:::::::cc::::::::::::::;;;::::::::ccccccllllcclllllllccclc:;;;;;;,,'''...... ......... ....... ... .. ......':lodddoddddddddooooodo:'.....'',,,'''''... ... .. ... . .......... .'::::::;;:::::::;;;;;;;;;;;::;;;;;;;;;;;;;,,;;::;;;;;,,;;;;;;;;;;;;;;,,,,,,,,,,,,,,;;;;,,,,'',,,,,,,,;;;;,;:::;,'''''''''''''''''''....''.........''''''.........''.................. .... ................. ..................... ... .... ............... ...... ......
............................''........................'''''''''''.....''''''.....''''............''.......'''''....''''',,''''''....'''''''..'''''''','''''',,;;:;;;;;:::::;;;;;:::;;;;;;;:ccll:;;,,;;;;;;;;;:::::cccccc::::::;;::cc::::::cccccccc:::cccc::;;;;;,,'.............. ...... ..... .........',,,;:::::::clddxddddoodddddddooddddo;.. .......''....... ....'',;;:::,.. . ..... ..;::::::::;;;;;;;;;;;;;;::;;;:;;;;,,,,;;;;;;;;;;;;;;;;;,;;;;;;;;;:;;;::;;;,,,,,,,,,;;:::;;;,,,,;;,,,,,,,,,,,;;::;,''',,,,'''''''''''',,,'''',,,'''','''''''''..'''''''........................................................... .. ... ............... ....... ....................
......................'',,'',''.............'''''''''''''''''''''''''''''',,,,'''','''''''''.''''''''''''......''''....''',,''.........',,,,,,'''''',,,,'''',,;;;;;;:::ccccc::cclllc:::::::c::;;,,,;;;;;;;::::::::::::;;:::::::::::::;,,,''''''''.............. ... .. ..................''...'',,;::;;::llllooooodddodddddxxdddddddddddddddddooodddddool:,.. .....'...........':llllloooooc:,. ......... .. ..... ...'',;::;;;;;;;;;,,,;;;,,;;;,,,,,;;,,,,,;;;;;;;;;;;;,,,,,;;,,,,;,,,,,,,,,,,,,;;;;;;;;;;;;;;;;;;,,;;;;,,,,,,,,;;;;;;;;;,''',,,,''',,,,,''''''''''',,,,''''.............''''''.............................. ..... .. ..... ............... ............................ ............
....................'''''...''.............................'''....''''...''''..''''........''''''''..''''..''..''''..'''''''''''..''...'''''''......'''''',,,,,;;;;;;:::::::ccccccc:::::::::;;;;;;;:::::::;;::cc::::::::::::::::;;;;;,,,''........''',,,,,,,,,,,,,,,;;;,,,,,,,,;;;;;:::::cclllooooooooooodddddddddddddxddddxdddxdddddddddddddddooooooooooddddoooooooooooooool:,. ................ ..,:lllooooooll;. ...........',''';:cc::;;,'..... ...... ... .,:::;;;;;;;;;;;;;;;,,,,,,,,,,,,,;;;;;,,,,,,,;;;;;;;,,,;;;;;,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;,,;;;,,,,,;;;;,,;;,,,;;;;;;;,,'',,,,'''''''''..'''''''',,,,,''...................'........................ ................... .......... .... ......... .. .... ..... ............
...............'''''''''.......'''............''''......''''''....''''''..'''...''''.........''''............''''..........'''''''''..'''.......'...'',,,;;;;;;;;;::::;;;;;;;::::::ccccccccc::;;;;::::::cccccclllcccccccccc:c:::::;;;;:::;;;::;::::::cclllccccccccclllllloooooooooodddoooooooddddddddooodddddddoooooodddoooolloooooollooooooooooooooooooollllllooolllooooooooolc:,'.. ...............';clllooool:'..... .......';clllllllooooooooc,... .';::::;;;;;;;;;;;;;;,,,,,,;,,,,,;;;;;;;;,,,,,,;;,,,,,,,;,,,,,,,,,,,,,,;,,,,,;;;;;;;;;;;;;;,,,;;;,,,,,,;;;;;;;;;;;:::;;,'',,,,,'',,,,,'''''',,,,,,,,,''............................................. ......... ...... .. ............... ........ ..............................................
........''''''',,,,'''''''....'''''.........................................................''''''........'''''''''''''...'''''''''.....''''''',,''''',,,,,,,,;;;;;::::;;;::;:::c::cccc::::c::;;;::::::cllllcccccc:::;;;;::cc:::c::;;:::::::::::::::::ccclcccccccccllllloooooddoooooooooooooooooooooooooooddddoooooooddddooooooooooolooolllooooooooodooooooooollllllllllllooooooooolc:;,'... ..............'',;::clcccllc;'........';ldddoooooodddddooooc,'.. .. .',;:cc::::;;;;;;::;;;,,,;;;;;,,,,,;;;;;;;;;:::;;;;,,,,''',,,,,,,;;;;;;;;;;::;;;;;;;,,;;;,,,,,,,,,,,,,,,;;;;;;;;;;;,,,;;;,,,''',,,,'''''''',,,,,,,'............................. ............. .. .. ... ............................................. ..............................
........'''.''..''',,'''''''......''....................''.........................''''...................................................''''''''....''',,,;;;;;;;;:;;;;;::ccccc:::;;::::::::::::::::::cccccc::::::;;;:::::::;;;;;;;;;:::::c::::cccccccccccc::::cclllllloolloooooooollllllllloddollllllloooooooooooooooooollooooooooooooooooooooooooddddddooooooooollolllooooooooooooooolc:;'....... ............',;;;::;,,,'.....',;:::cloodddddddooool;,.. ........... ..',,::cccc:::::::::;;;;;;;;::;;;,,;;;;;;;;;;;;,,,,;,,,,;;;,,,;;;;;;;;;;;;;;;;;;;;,,,,,,;,,,,,,,,,;;;;;;;;;;;;,,''',,;,,,,,,,,,,,,,'''',,,,;;,,''............................................. ...... ..... ................... ....... ... ................''...
.....'''''...''''''''''''''''''''''''............................................''',,,'''''..''''..........''..'''.........................''.......',,,,,,,;;;;;;;;;::::::::::::::::::::::;;;;;::::::::::::::::::;;;;:;;;;;;;;::::::::::::::::ccccc:cccccccc:cccclloollcccccccccclcccccccllllollllllllclllllooooolllooooooloooooooooooddoooooooooooooooooooollllooooooooooooooollllllooooooooolc:;,'... ..........................,coooooooooddoc;'... .';;:::ccccllc;. ...'','',,;;;;:::c:;;;;;;,,,;:::::::;;;::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,;;;;;;;;;;,,,,,,,,'''',,,,',,,,,,,,,,''''',,,,'............................''...................... .... ... ................................ ......... ..... ........'...........'''
'.....................',,''''''......'''''.........'''''''''''..........................''''''',,,''.........'.......................''',,,''''''''',,,,,,,,,,,,;;;;:::;;;;;;::;;;:::::::::::;;;;;;;;;;:::;;;;;;;;;;:::;;;,;;::::::ccc:cccc::::cccccc:ccllcccccllllllllllccllcccccccccccllllllllllllllllllolllloooooloooooooddddoooodddooooooooooooodoooodddooooooooooodoooooooooooooooooooooodddddddolc:;,'.. .................. .'::;;cloooooddddoooollcc:,'......',,;:cccccclllllc,. .................,:cc:::;;;;:::;;;;;;;;;,,;;;;;,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;,,'',,,,,,,,,,,,,,,;;;;,,,;;,,,,,,,,,,,,'''',,;;;,''...........................''''............................ ................ . ....................... .......... ...............'''''''''''''''''
......................''''',,,,'''.....'''.........'................''...........'''........'......''''................................'',,,,,,,,,,,,,,,''''''',,;;;;;;;;;;;;;;;;;;;;;::;;;;;;,,,,;;;;;;;:::;;;;;;;;;;;;;;;;::cc:ccccccccc::::::cccc::cccccccllllooollllllllllcclllccccccccccclllllllllllooooooooooooooooooooooooooooooolloooooooooddooodddooooddddddddddddddoodddooodddooodddddooodddoooooolc:;,,,'...'',,,'''........,cllclllloooooooooooooooooolc::clllllllllllllllllc;. ... ..';::ccccc:::;;;::;;;;;;;;;;::::::::;;;;,,;;;;;;;;;;;;;;;;;;;;;;;,,,,,,;;;;;;;;;;;;;;;;;,,,,,;;,,,,;;;;;;;;;;;;;;,,,''..........................',,,''......... ................ .. ... .. ................. .. ................''''''''''''''........'',,'
...........................',,,,'''...''..........................................................................................''',,,,,,,,,,,;;,,,,,'''''''',,,,,,,,,''',,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;,;;;;;;;;;:::::::::::::::cc:::cc::cc:::::cccccllllllllllllllllccccllllccc:ccccccllllllcclllloooooooooooooolooooooooooooooooooooooooddddddooodddooddddddddddoooooooodddddddoodddddoooooooooooooooooooolllloooollllc:;,,;::clollllooooooooooloolooooooooooooooloollooooooollolc;'...... .. .':cccc::::::;;;:::::::::::::::;;;;;:::::;;;;;;;;;;;;;;;;;;,,;;;;;,,,,,,;;;;;;;;;;;;;,;;;,,,,,,,,'',,,,,'',,,,,,''''''............'''''............'................................ .. ...... .. ......................................''...',,''''''''''''',,
..................'''''''......''''''''''''.....................................................................................',,,,,,,,''',,,,,,,,,,,,,,,,'',,,,',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;,,,;;;;;;;;;;::;;:::::::;;:::::ccc:ccc::::cclllloooooooooooooolllllllllllcccllcccllolllllloooooooddddddddddoooooddddoooooddddoooooddddddddddddddddddddddddooooooooooooooooooooooddddoooooooooooooooooooollloooooooooooooooooooooolooooooooooooooooolloooooooolllloooooooooolloooolc:::;'... .;cccc:::;;:::::::::::::::::::::;;:::::::;;;;;;;;;;;::::;;;;;;,;;;,,,,,,,,,,,,,,,,;;;;;;;;;;;,,,''''''''..........................'''''.............................. .......... . .. .. .................. .. .............''''..''''...'''.'.....'''''''
''''''''''......''''''''............'''...............................................................................'''''''',,,,,,,;;;,,,,,,,,,;;,,;;,,,;,,,,,,''''',,'''''''''''',,,,,'',,,''',,,,,,,,,,,,,,;;;;,,,;,;;;;;;;;;;:;;;;;::::cc:::ccccccclloolloooooooooolllllllllllllllllllloooooooooloooooooooddodddooooooooooooooooooooooddooodddxdddddddddddddddoooooodddoddddoooodddoooooooooooooooolllooooooooooolooooooooooooollllllllllllllooooooooooollllllooooooooooooooooooolloolllloodoollc;,... .. .,:ccc::;;;::::;;;;;;;;::::::::;;;::::::::;;;;;;;::;:::;;;;;;;;;;;;;,;;;;;;;;;;;;;:::::;;;,,,'''''''.......''''............''......'''''....................................... .... . .......... .... ................................'''''''''''''''''''........''''
;;:::::::;;,,,,,,,,,''...............................................................................................'','''''''',,,,,;;;;,,,,,'',,,,,,,,,,,,,''''''''...'',,,'''''',,,''''''''''''',,,,,,,,,,;;;;;;,,,;;;;;;;;;;;;;;;;;;;::::::::ccllloooooolooooooodoollllllllllcccclllllooooooooooooooodooooodddddddoooooooooooooollooddxxxxxxxxxxxxxdddddddddoooooooooooooodddoodddddooooooddooooddooooooddddddoooooooollloolllolllllccccllllllllllooooooooooooooooooooooooollllllllloolllllllllllloolc:,.. ..;cc::;;::::;;;;;;;;;,,;;;;:::;;;;;;;;;;;;;;;:::::;;;;;;;;;;;;;;;;;;;;;;;;;,;;;;;;;:;;,,,'''''''........................''........''''''.................... ........... .. .. ...................... ........''''''.......''''...''............''
',,;,,;;;::::::;;;;,,''''.........................................................''''''''''''''''''''''''.............'',,,'''',,,,,,'',,,,,,'',,,,,,'''''''''''''''''',,,,''''',,,,,,''''''''''''''',,,;;;;;;;:;;;;;;;;;;;;;;;;;;::;;;;::::::::ccllodddooooodddoooooooooollcccc:;;:cclllllllloooooolllooooooodddooooooolllllloooolodxxkkOOOO000OOOOOOOOOOkxxddddoooooooooooooooooooooooooooodddoooooooooodddoooooooooooollloooooooooollllllllloooooooooooooooooooooooollooollllllllllllooloooooloooooollllc:;,.. ..,clccc::::::ccc::::::::;;;;;;;;::::::::::::;;:::;;;;;::::;;;;;;;;;;;;;;;;;;:;;,,,,,,,,,''',,'''......................'''....................... ............... .. .. . ... ..... ..... ..........................''''..''''''''''.............'',,
''',,,,,,;;;,,,,;;;;,,'''........................................''',,'',,,,,,,,,,;;:::::::::;;;;;;;;,,;,,,'........'.''',,,,''''',''''',,,,,,,''',,,,,''',,,,'''','',,;;;;,,;;;;;,,,,,,,,,,,',,'',,,,,,,,,,,,,,,,;;::;;;;;;;;::::;;;;;::::::::ccloodddddooddddddddddxxxkkxxdoool:::cllllllllloooooooooooooooooddddooddooooooddddddddkOOOO000O00OOO000000KK0Okxdoooodooooooooooooooooooooooooooooooooooooooooooooooooooollooooooooooooooooooolllooooolloooooolooooooollooooooooooooollllooollllcclllllllllllllllcc;,'.. ..;cllc:ccccccccccc:::::c::::::::::;:::::::::::::::::::::::;;;;;;;;;;;;;;,,,,''''''''''''',,'.''''''...'''''''....'''''....................... ...................... ..... ..... ... ............. .......''''''',,''......''''',,,,,'''''''''''''
''',,,,,,,,,'',,,,;;;,,,,''''''............................'''',;;::::::;;:::::::::::cccccc:::::::::::::;;;,,'',,,,,,,'''',,,''',,,,,,,,,,,,,'''',,,,,,''',,''',,,;;:::::::::::::;;;;;;,,,'''''''',,,,,,,,,,,''',,,;;;;;::::ccccllcc:::::::::clooddxkkkxxddxxxxxxxxxxxkkxxxxdddddddddddooooooooooooddddooodddddddddxxxxxxxxxxkkOOkkxxkkkkkkkxxkkkkxxkkO00000Okxdooodddddddddddddddddddddooooooooooooooooooooooooooooooooodddxdddxxxxxdddooooolllllllllllolllllloollllllllllllllllllllllllllllccccclllllllllllllccccccc:;,... ..';:ccccccc:::::ccccccc::::::::::::::::;;:::::::::::;;;:::::::::;;;,,,,,,,,,,,,,,,'''',,,''''''''''''''''''''''''.......................................................... .......... .......................................',,,,''''''.......'''.......'.....'''''''
'''''''''''''''''',,,''',,''''''''''....................'',,;;;:::::::::::::::cc::::cccccccc:cccc:::::cc:::;;,,,;;;,,,,,,;,,,,,,,,,,,,,;,,,,,,,'',,,,,,,',,,,;;:ccccccccccccccccccccc:c:;,,',,;;,,,,,,,;;;;;,,,,,,,,,;:clooodddxxxdolllllllloddxxxxxxxxxddddddddddddddddooooooooddoodddddddddoooddoooddooddddddddxxkOOOkkOOOO000OOkxxxxxxxdddxxxxxxddxkOO000OOkkxxxxxxxxxxxxxxxxxxxkOOOOOkxddddddddooooooooooooooooooooodddxxxkkOOOOO00kxddooooooooooollllllclllllllllllllllllllllllllllllcllcccllllllllllllcllccccccccccc:;,'.... ..,:cllccccccccccccccccc::::::ccc::::;:::::;;:::;:::::;;;;;;;;;,,,,,,,,,,,,;;;;,,,,,,;,,,,,,,,,,''..''''................................................................................ ......................................''''''............''''''.........'...'''''
,,,,,''''''''''','''...'.'',,,,,;;;;;;;,,''''''''..'',,,,,;;;;::::::::::::::::::::::::cc:::::ccccccc::::::::;;,,;;,,,,,,,,,,,,,,,;;;,,,,,,,,',,,;;;,,,,,,,;;;::clllllcccccccccccllcccllc:;;;;;::c:::::::::::;;;;;;;:cclooddddxxxxxddooooooodddddddddddooooooooooooooooooolllllllooolloooddddddodddddxxxxddooddxxkOOOOOOOOOOOkkkkxxxxxxxxxdddddxdxxxxxxkkOOOOOOOkkkxxkkkOOOOOOOOOkkO000KKKKOkkOOkxxxddddddddoooooooddddxxxxkkxxkkkOOO0000OOOkdoloxkkkkkkxoooooooollllloolllllllllllloolllllllllllllllccccccllccccllcccllcccclllcc::;'... ..';:clolllccccccccccc:::::cccc:::::::::;;;;;,,;;;;,,,,;;;;;;;;,,,,,,,,,,,,,,',,,,,'''''',,,,'''''''............................................................................... .........................................''''''''''.......'''.............'''''''
,,,,,''''',,,,,,,''....'''',;;;:c::;;;;;,,''',,,,,,,;;:;;;;;;::::::cc::::::;;;;;;;;;;:::::::::ccccccc::cccc::;;,;;;,,;,,,,,,,,;;;;;;;,,,,,;;,,,,,,,,,,,,,;::::cllcccc:::::::::ccllllllllc::::::clllllccccccc::;;;:::clloooollllooooooooooooddddoooooollllllllllllloollllccccllllllloollooooooodddddddxxdddddddxkOOOOkkkkkxxdddddddddddxxdddddddddddxxxxxkkxxxxxxxxxxxkkOOOOOOOOkkkOOO00OOOOO00KK00OxdddddddddddddxxxkkO00OkkkxxkkOO00K00000OkdoddxkkkkOkxxxdddddoollllolcccclllllccllllllllllllllcclllccllllcccccccclllcccccccllllccc:;,'.... ..';:cclllllccclllccccccccccc::;;;;;;;;;;;;;;,,,,;;;;;;;;;;;,,;;;;;;;;,,,,,,,',,'''''''',''''''''''............................................................................. .......................................'''''''''....'''''''''...''.......'''''..
;;,,,,,,,,,,,,,;,,,,,,,,,,;:::::::;;;;,,;;;;;;;;;;;;;;;;::;:::cccc::;;;;;::::::::;;;;;;:::;:::::::::cccccccccc:;;;;;;;;;;;;,,,,;;;;;;;;;;;;;;,,,,,,,;;;;;::cccccccccc:::::;;;:cccllllllccccc::::clllcccccccccc:::ccccllllllllcccccclllccclllllllllllccccc:ccccccccclllcc::ccccllllllllllloooooooooooooooodddddxxxxxkkxxxddddxxxdddddddddddddddddddxxxxxxxxxxdddddxxxxxkkkkOOO00OOkkkkOOkkOOOOO00000OxddxxxxxxxxxxxxxxkOO000KK0OOkkkOOOOkkxkkkkxxxxkkkkOOOOkxxxxxkkxxddollccccccclcllllolllllllccclllllcclllcccccccccllcccc:::ccccc::cccccccc::,'.... ...,;:ccllllllc::ccccc::::::::::::;;;;;;;,,,;;;;;;;;;;,,,,,,,,,,,,,,,,,,'',,,,,,,,,,,''''''''''............................................................................... ..... ............................''''''''...''''....'''''.........',,''...
,,,''',,,,,;;;::ccc::::::cccc:::cc::::;;,,;;;;;;;,,;;::cc::ccccc::;;,,;;;;;;;;;;;,,,;;;;;;,,,,,;;;;::::ccc::::::;;;;;;;;;;;,,,,,,;;;;::::::;,,,;;::;;::::::::::::::;;::;;;;;;;;;;::c::::ccccc::::cc:::cccccccc::ccccccllllcccccccccccccccccccccccllcc::::::::::::cccccccccclllllloooooooooooooooooooooooodddddddddxxxdddddddxxdddddddddddxxxddddddddddddddddddddddxxxxxxkkkkOOOkkxxxkkkkxkkkkOOOOOkkkOO0KXXX0OkkkxdddxxkkkOKKK0OkkkkkkkkxxxxxxxxxxkOO0KXNNX0kxxkO000Oxddoolllcllllcllllllcccllcccllllccccccccccccccccc:::::cccccc::ccccccccccccccc::;,,'.... ..',;;:::::::::::::::::::::::::::;;;;;;;,,,,,,,,,,,;;;;;,,,,,,,,,,,,,,,,,,,,,''.....'''''''............................................................ .......................... .............................'''',,'''...''''.......'.................
,'''',,;;;::c:::cc::::::c:::::::::;;;;;;,,,,,,,,,;;::cccc::::::;;;;,,,;,,,,,,,,;;;;;;;;;;;,,,,,,,,;;::::::::cc::cccc::;;;;;;;,,,;;;;;::::::::::ccccc:;;;;;;,;;;;;;;;;;;,,,,,,,,;;;;;;;;;;;::::::::::ccccccc::ccccccccccccccccccc:::::ccccccccclllllcc:cc:::::cc::ccccccccllllloooolllloooooollllloooooddxxxxxxxxxxxxxxxxxxxxxddddddddddxxddddddddddddddddxxkkkOkxxxddddxkkkkkkkxxxxxkkkxxxkkkkOkkkkO00KKXXXXXXK00OOkkxxxxkkOOO00000KK0kxxxxxxxxxxxxkkO0XNWNKkxdxkkkOkkO00Okdolllllllllllllllllcclooddddddoolc::cccc:::::::::::::::::::::::::::ccccc::::::::;,'''.... ...'''',,,;:::::::::::;;;;;;;;;,;;,,,,,,,,,,,;;;,,,;;,,,,,,,,,,,'''''''''................'............................................................................ .......................................'','''''...........'''.........'''''''
,,''',;::::::::ccc:::;;::;;;:;;;,,,,,,,,,,,,,,,,;;::::;;;;,,,,,,,,,;;;;;;;;;;,,;;;;,;;;;;;,,,,,,;;:::::ccllcclllloooolc::;;;;;,,;::::::::::::::;;;;;;;;;;;;;;;,,,,;;;,,,,;;;,,,,,,,;;;;;;;;;;:ccccccccccccc::ccccccccc:::::::;;;;;:::::::::cccccccc::::ccc:cccccccllllllcccccllcllllllloddooolllooooodxxxxxxxxxxxdxxxkkkkOOOOOkxddddoddddddddddddxxddxxxxxkkkkkkkOOOOOkkkkxxxxxxxxxxkxxxxxxkkOOkkxxxkkkOOOOO00KKKK000OkxddxxxxxkO0KKK0OkkO00KKKOkxxxxxxk00OkxddxxxxxkOOO0OOxdodddddoooddddddddddddxxkO0KXKOkdollllccc::;;;;;;;;::::;;::::::;;:::;;;;;;;;::::;;:::::;,'''..... .....''',,;;;;;;;;;;;,,,,,,,,,,,;;;;;;;;,,,,,,,,,,,''''''''',,''''''''...''''''''''...''''.................'''........'....................................... .........................................',,,,,''''........'.........',,,,;;
'''',;:::::;;::::;;;:::;;;;;;;;,,,,,,'''',,,,,,;;;:::;,,,,,,,,,,,,,,;;;;;;;;;;;;;,,,,,;;;;;;;;;;;::::;;:c::cloooddxxxdlc::;;;;,,,;;;;;;;;::::;;,,,,,,,,,,,,,,,,,;;::::::::c::;:::;;;;;;;;;;;:clllcc:::::cccc:::::ccccc::::::;;;;;::cc:;;;;::ccccc::::cccccccclllllllllllcclllllcccllcllloooooooooooddddoodxxxxxxdddooooodxxxkkkkxxxkxxddddddddddddxddxxxxxxdddxxxkkOOOOOkkkkkxxxxxxkkxxxkkkkkkkkxxxxxkkkkkkkkOOkkkOOOOkxddddddoddxkkkkxxxkO0KXK0kxxdddddxxxxddddddddxkkkkxxdddxxxkxxddxkxddxxxxxdddxxkkO0000OOOOOkkxolc:::::::::::::::::::::::;;;;;;;,,,;;;;;;;::::::cccc::;;;,'............ .............'',,,,,,,,,;;;;;;,,''',,,,''''''',,,,,,''''''''''''''''''''''''''''''''''''''''''''.....'............................................... ..........................................'',,,,''''''''''''''''''',,;;,,,''
,,,;;:::::;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,;,,,,;;;;;;;;;;;,;;;;,,,,;;;;;;;;;;;;;;;;;;;;;;:::;;;;;;;;;;;;::ccccclooddddoolllc::;,,,,,,,;;;;;;;::::::;;;;;,,,,,,;:ccllodddddddddolc:;;;::;;;:cllc::cc:::cccccc::::cccc:::ccc::::ccccccc:::::cccclllllllccccccllllollccccllllllccc:ccc::cccccccccllllloollllooolooooollllllllllooddxkkkkkkxdddddddxxxxxxxxxxkxxddddddxxxkkkxkkOOkxxxxkkkkkxxxkkkkkxxxxxxxxxxxxxxxxxxxxxxxxddddddddoooodddddddxxkxxxxdddddddddddddddxxxkkkkOkkxkkkkkkkkkxddxxxxxxxxxxxxxdddddxxxxkO0000kxdoc::::::::::::::::::::::;;;;;;;,,;;;;;:;;:::;;;;;;;;;;;;;:::::::;;;,,'''''''....................',;,,,'''''''''''''.''.'''''''''''''''''''''...'''''...........'''''''''.................................... ....................................................................',,,''',''.'',,,,,,,''''
;::::;;;;;,,,;;;;;;;;;,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;::;;;;;;;,,,,,,,;;;,,,,,;;::::;;;;;;;;;;;;;;;;;;:::cccccclllllodxxxkxdolcc:::;;;;;;::ccllllloolcc::;::::cclllooddddoodxxxxdolcc::::ccccc::;::::::::ccccc::ccccccccccc:cccc:cccccccccclllllllllllllcccccccccc:ccccc::::cc:::::;::::;::ccccccc::c:::ccccccllllcccccccclllllloddxxxxdoooddxxxxxxxxxddxxkkkxxxkkkkkkxxxxdxxxxxxxxxxxxxxkkkxxxxxxxxkkxxxdddxxxxxxxxxxxxddddddddooooooooodddxxdddddddddddddddxxxxkkOOOOOOkkOOOOOO000OkxddddddxxxkxxxdddddddddxkOOOkkxdoccc::::::::;;,;;;;;;;;;,,;;:::;;;;;;:::::::;;;;;;;;;;,,,,,,,;;,,,,,,,;;,;;;,,,''.'''''''''''..'',,,,'''''''',,,'''''''''''''''''.........''.................................................. ............ .....................................................................''''''',,,;;;;,,'''''''
;;;;;,,,,,,,,,;;;;;;;;;;,,,,,,,,,;;;;,,,;;;;;;;;,,,,,,,,,,,,,;;;;,;;;:::;;;;;;;,,,;;,,,,,,,,,,,,,,;;;:cccccccclllccllodxxxxxxddolc::::::cllllccclooooolllllllllllllllllllllodxkkxxdlcccccccc::::;;::::::ccccc:::ccllccccclcccccc:cccclllccclllooolllllcc:::;;;;;;::::;;;;;;;::;;;;;;;;;::::cc::::::::c::ccccccllllccccc::ccccccccccloddddddddddddxxxddoloddxxxxxxkkOOOOOOkxxxxxxkOkkkkkkkkkkkkkkkkkOOOkkxxddddddddddxxxxxddddddooodddddooddxxxxxddddodddddddddddddddxxkkkkkkkkkOOOOOOOkxdoooodkOkxddddddddddxxxxkkxxxdollllc::::::;;,;;;;;;;;;,,;;:::::::::::::::::;;;;;;,,,,,,,,,,,,,,,'''',,,,,,''''''''''''''''''''''''''''''''''''''''''....................................................................................................................................... ......................'',,;;;;;;;,,,,,''''''
,,,,,,,,;;;;;;;;;;:::;;;;;;;;;;;;;;;;;,,,,,,,,,,,''''''''.''',,,;;:clllc:::;;;,,,,,,,,,,,,,,,,,;;;;::ccccc:::::cllcccloddddddddolcccccccclllccclloooolllllllccclllllccccllloddddoooollcc:::cc::::::ccc::cccccclllcllllcccccc::ccccccclllllccccllccccc::::;;;;:;;;;;;;,,,,,,,,,;;;;;;;;;;:::::;;;;:::::::::::::cccccc:ccc::c::::ccccclooooooolllllooooooooooooooodddxkO000kxddddxkOOO000OOOOOOO00OOOOOOOOOkkxkxxxxdddxxxxdddddooddddddddooooodddddddddxxxxddoooddoooooodddddxxxxxkkkkkkkxddxxkO0K00Okxddddodxxxxxxxxxxxdoodxdddlc:::::cccc:;,,;;;;;;::::;;::::::::;;;;;;;,,,,,,,,;;,,,,,,,,'',,,,,''''',,,,,,'''''''''''''..''''''''..'''.''''..................................................................................................................................... ......................',,,,,,,,''''.........
;,,,,,,;;;,,,,,,;;;;;;;;;;;;;;;;;,,;;,,,,,,,,,,,,,,,,,,,,,,,,'',,,;;:::;;,,,,,,,,,,,,,,,,,,,,;;::::::;;:::::;::ccllccclllllccccccc::ccccccllllllllllllccccccccccccccccc:cccccccccccccc::cccclcccc::;;;;;;;::cccccccccc:;:::::::::::::::::::;;;;,,,;;;;;;;;;;;;;;,,,,,,,,,,,;;,;;;;;;;;;;::::;;;;;::::;;;::::::c::::cccccccc::::::::ccllcccccccclllclllllllllllooddddxkkOkxdoooodxxddxxdoodxxkxxdooddddxxxxxxxkkkxxddddddddddddddoooodddddddddooodddxxxxxxxdooddddddddoooooodddddxxxxxkkkkxkkOOO00000Oxddoooddxxxxxddddoodxxxxxdollodddxxdolc:;;;:::cc::;;;;::::;;;;;;;;;;;;;;,,,;;;,,,,,,''',,,''''''',,,'''''''''''''''''''''''''''''''.................................... ...... ..................................................................................................................',;;;,,''''............
,,,,,,,,,,,''',,,,,,,;;;;;;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,'''''''',,,''''''',,,,,,,,,,'''''',;::cccc:::::cc:::::cccccccccc::::ccc:::::ccccccllllllllllllccccc::::::::cc::::cc:::cccccc::::::ccccc:::;;;,,;;;;;;;;;:::::;;;;;;;;;;;,;;;;;,,,,,,,'''',,'',,,,,,,,,,'',,,,'',,,,,,,,,;;;;;;;;::::;;;;;;;;;:::::::::::;::ccllcccccc:::::ccccccccllllllccllccccccccccllooddddddoollooooollllllccllllllllloooolooodoodddooooooooooodooooooooooooddoooolloodddddxxxxddddddddoooooooooooodddxxxxkkkkkOOkO0KXXKOxxxxxxxxdddddddoooddddddddddddxxxxxxxdoc:;:::cc:;;;;;;;;;,,,;;;;;;;;;;;;;,,,,,''',,''',,'''''',,,,''''''''.''''''''''.''''''''..'....................................... ............................................................'...........''..............................................',;,,''....'............
;,,,,'',,,,,'',,,,,,,,,,,,,,'''',,,,''''''''''''''''''''''..'''''''',''''''''''',,'''.''',;:cccc:cc:::::::c:::cccccllccccccccccc:::::ccccccllcccccccccc:cccc::::ccc::::;:::;;:::::::::::::::cc:::ccc:;,,;;;;::cccccc::cccccllllccc::::;;;,,,',,,,,;,,,,,,,,,,,,'''''''''',,,,,,,,,;,,,,,;;::;;;;;,,;;;;;;;::;:::;;;::ccc::::cc::::cccc::::ccllccccccccccccclllllllodddddxxdoodddooolllllcccllllllllllllooddoooooooooodddooooolllllllllllllllllllllloodddxxkxxddooooollloddoollloooooodddxxxxkkkkO000OOO000000OOOkxxxxddddddddddddooodddoodddolc:::::::;;;;;;;;;;;;;;,,,,,,,,',,,,,,,,,'''''''''''''''''''''''''''''''''''''''''''''................................... ....... ... ................................................''',,,'',,,,,,,,,;;,,,,'''.....................................'',,''......''''........''
,,'''.'',''''',,,,,,,,,,,,,,,,,''''''''''''''''''''..''''''',,,'''''''''''''''''''''',,;;;:::::;;;;;;;;::::;;;;;;;;;:::::ccc::::::::::::::::::::c::;;:;;::::;;;;;;;;;;;;;;;;;::::cc:cccccc:cc:::cc:::;;;;;;::ccllloooooooddddoooodxddollcc::::::::::;,,,;;;,;;;,,,,''..'''''''''',,,,,',,,;,,',,,,,;;;::;;;;;;;::::;;:::::::cccc:cccc::::ccccllcccccccccccllllooooodxxxkkkkkkkOOkkxddddoollllllllodddoodddddddddddxddxxxxxxxdollllllccclcccclllloddddddddxxdddddooodddddxkkkkxdooooooodddddddxxxkkkkkkkO00OO0000Oxdddoolooddoooooolllloooooooollc:ccllllcc:::;;;,,,,,,,,,,''''''''''',,,''''''''''''''',,,,,''''''''''''''''....................................................................................... .............''..',,,,,'',,,;,,,,,,,,,,,,,,,,''''''''.............................'''......''',,,,,,,'''''''
''''''''',''',,,'''',,'''.'''''''''''','''''''''''...'''''''','''''''''',,,,,,,,,,,;;;::;;,;::;;;;;;;;;;;;;;,,,,,,,;;;;;;;:::::::::;;;;;;;;:::::::;;;;;:::::::;;;;;:::;;;::::cccclllloooollcllllcc::::::ccclloodddxdddoooooooolloddddddoooooooolccc::;,,,;;;;;;;;;,,,''.''''''''''''''''',,'''',,,;;::::::::;;::::::;::::cccccllllllccccccccccccc:cccccc:::ccclllclodddddddxxkkkkxxxxxxddolllllclloddoooooloooooooooooddddxkxdddooooooooooooooooddddxxdddddoooddoooddddddxxkkkxddxkxddddoooddddxxxxxxkkOOOkkOOOOkdddddoooooooolloollllooolloolllcccloddddolcc:::;;,,,,,,,'',,,,,,,'''''''''''''''''''.''''',,'''''''....'................................................................ .......... ........................''',,,,,,,,'',,,,,,,,,,,,,,,,,;;;,,,,,,,,'''''''.................''''......'',;;;;,,''''''''''''
'''''''''''''''''''''''''''''''''',''',,'''',,,'''..''''''''''''''''',,,,,,,,,,,,,;:::::;;;;;;;;;;;;;;;;;;;;;;;;,;;;;;;;;;::::::;;;;;;;;::::::::::;;:::::::::::::;:::::::ccccclloodddddxxxxddddddooccccllloodddddxxdoollllllllllllllllloooooodoolllccc:;,,,,,,;;;;;;,,'''''''''''''...'',,,,;;;;;;;;;:::::::::::::::::::cllllllooooooollllollllcccccc::::;;;:::cccclllcccclllllooolllloollcccccccccccccccllllcccccccclllloooooloooooooooooooooolllodddolllllloddoooooddddddxxkkOO0XX0kxddoodddddddodddxkkOOOOOOOOOOOkkkkkOOOkkkxxxdooooooloooollllllooooooooolc::;,,,,,,,,,,,,,,,,,,,,,,''''''''''''''''''''''............................................... . ............. ................... .....................'''',,,,,,,,,'''''''',,,,''',,,,,;;;;;;;;,,,,'',,,'''............''''.....',,,;;;;;,''''''',,,''''
...............''''''''''''''''''''..'''''''''''.''','''''',,,,,,''''''''''',,,,,,;;;;;;;;;;;;;;;;;;;;;;::;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::;;::;;;:::::::::ccccclllccllllllllllodddddxxkkkxxxkkkkxdddoooooooooooooollllllllllllccccccllllllllllcccccccccc:;,,,,,'',,,,'',,,,,,,,,'''',,;,,;;::::::::::cccclloollcccclllcloooooooooooloooooooooollcccc::::::::cccccccc::::ccc::cccccc:::::::::::::::::ccllollcclllllllloooolllllllllllllcllooooollloddoooooooddddddooddxddddddxxkk0KK0OkxddddooooooddxxkkOOOOOOOOOkkkxxxxkkkkOO0OOkxdooolllllllllllllllllloooolc::;,,,,,,,,'',,,,,,,,,,,,,,,,,'''''''',''''''............................................... ...... . ................. .. .... .......',,;;;,,'''''''''''''''''.''''..''''',,,,,,,,,,''''''.............''...''',;,,,,,''''.....''''''''
'''.....................'''',,'''..''''''''',,''''''''''''''',,'''''',,'',,,,,,,,,;;;;;;;:::;;;;;;;;;;;;::::;;;;;;:;;;:;;;;;;;;;;::::::::::::::::;::ccc::::cllllloolllllllllllllllooooodddddddddddddxddoooolllllllllllllllllllllllllcccccllllccccc::cc:::cc::;;,''''',''',,,,,,;;,,,,,,;;;::cc:::;;;;;:ccllooddddolllloooodddooooooollllloollloolccllcllllllclllllollcccccccc:::::cc::::::::::::::::::::cccccllllllllloddddddddollccccccccccclloooooooooooddddddddooooddxddddxxxxkxxxkOOOkxxdooooooodxxkkkkkxxddddoooooooooddxkOOOkxolooooolllllllloooooooooolllcc:;;,,,,,,'''''''''',,,,'''''''''''',,,,'''''............................................. ....... ........ ...... ....... ........'',,,;;;,''''''''''''''''''......'..''''''',,,,,,'''''''.....'''''..'''.'',,,,''''''...'''.''''.....
........................'''',,'''''''',''''',,''''''''''''''''''''',,,,,,,,,,;;;;;;;;;;;;;;;::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::;;::::::::;;;:ccc:cclllllllloolllllllcccccclllllllcccccllllllooddolllllllllllllllllcccllcccc:ccccccclllccccc::::::::ccc:;;,''',,,,;;:;;;::::::::;;;;;;:ccc::;,;;::clolllloooooollloooooollloooooolllollcloooloolccccclllccccllcccclcccclccc:::ccccc::::::::::::::::::cccc::::ccclloooddxxxdolccccccllccccllllcccllllllllloooooooodddxxxxxxxxxxxddxxxxddddoooooooooooooolllloooooolllllodxxkkOOkxdddddoollooooooooooooooddoollc:;;,,,,,,''',,,,,''',,''''''''''''''''''.................................... ....... ................ ...... ... ................'',,,,,,,,,'...'''''''''''''''..''''''',,''',,,,,,,,,,,,,,,,,'''''',''''''.',,,''''''''''''.......''''
............................'''''''''''''''''..'''''''''''',,,,,,,,,,,,',,,;;:;;,,,;,,,;;;;:::;;;;;;;;;;;;;;;;;,,,,,,,;;;,,,;;;::::::::::::::::;;:ccccccloooolccclccccllcccccccclccccccccccccccccllooolcclooolllllllllcc:::::;;;;;::clllllllcccccc::::::::::;,,'',;::::::::::;;;;::::::::;;::c:::::::;::cllcccccccccccccccccccllllolllllllllllllooddolccclodddollccccccccllllooolcccccccc:::cc::::::ccc::::::::cccc:::ccccllooolcccllllooollccclllllcclllcccloodooooooddddxdxxxxxxkxxddooooodxdoooollllloollllllllllllccclllllllloodddxkkkdolllloollllllllloodoollc:;;,,,,,,,,,,,,,,,,,,,,,,,'''''',,,'''''............................................... .... ......................... ..... ..................'',,;,,,,,,,'''''','',,''''''''''''''''''''''',,,,,,,,,,,;;;;;;;,''''''.......','''''''''''''''..'''''''
.................................'''''''''''''''',,,,,'''',,,,,,,,'',,,,,,,,,,,;;;;;,,;;;;;;;;;;;;;;,,,,,,'',,,,,,,,,;;;;;;;;;;:::::::;:::::::;;:ccccccclooolllcccc:::::::ccccccc::::ccccccccc:::cccc::::cclllllllcc::;;;;;;;;;;:::clllllcc:::ccccc::::;,,,,,,,''',,;::;;;;;;,,;;;::::::::::::::::c::::::;;;::cccccccccccllllccccllllcc:cccccllllooddooooodddddooolllllllooooooollllllollllccllcclcc:cc::::::::cllllc:cccclllolllcccccccccclllllloooolllccclooddddddooloddddxkkOOkkkkxdoooooxkOkxdlccllllllllllccccccccccccccccccccccloddddollllllllcccccclooooolllc::;;;;;;;;;;;;,,,,,,,,,;;,,,,,,,,,''...................................................... ...... .... ......... ... ........ ........''',,,,,;,,,;,,',,,,,,,,,''''',,,,,'''''''''',''',,,,'',,,,,,,,,,,'''''',,''''''..'''',,''''',,,'',,,,,,'''
...................................''''''''''',,''',,''..''',,,,,,',,,,,,,,,,,,,,,,,,,,,,;;,,,,,,,,,,,,,,,'''',,,,,,,;;;;::::::::::::::;;;;;;;,;:cllcclllooolllllllcc:c::ccccc::::ccllllllcccc:::cccc:::::cc:cccccc:;;;;;;;;::c:::ccllllcc::::::::::::::;;,;,,'',''',,,'''''',,,,,,,;;;:::::;;;:::::::::;;;,,;:::::::ccccclcccccllllllcccccccccllccclloodddddddoooollcc::ccllllllllllllllollllloooolllccccc::::::::c::::ccccccc:::::;;;::::::cccc:ccllloooolllllooooooooddddxxkkOOOkkkkkkxxxkOOOkdolooolcccllccccccccccccccccccccccccccccccccccclllllllllooooooooooolllc::::;;;;;;;;,;;;;;;;;,,,,,,,,,,''''''''.................................................................. ................................',,,,,;,,,,,,,,,,',,,,'''''''''''',,,'''',,,,,;,,,,,,''....''''''''..........'''''''''''''''''''''',,,,,,''''
..................................'''.......''''''',,,'''...'''''',,,;;,,'',,;;,,,,,,,,,,,,,,,,,,,,,''',,,'''',,,,,,,,;;;;;;;;;::::::::;;;;;,;;::cccccllcllllcllllllllllcccccccccllllllllccclcc:cclllccc::::::::::::;:::;;;;;:::::::::::::;;;;;;;;;::::;;;;;;,,'''''''''''''''''''''',,,,,,,,,,,,,,,,;;;;,,,,;;;;,,,,;;,;;;;;;;::cccllccccc::::::::::::ccllooooollcc::::::::::ccccc::::cc:ccccllllllllcc:::::::;;:::::::::::::::::::;;;;;;;;;:::::::::clllccccclloooddddddddddddddxxkkkOOkkkkkkkkkkxooolllllllooloodddddoolcccccccccccc:::::ccc::ccllcclllccccllllllllolc:::::::;;;;;:::;;;;;,,;;;,,,,;;;;;;;,,,,,,,,'''''................................................ ......................................',,,,,,,'',,'''''''.'''..''''''''''''''',,,,,,,,,,,,''.......'...'...........'''''.......'....'''',,''......'
...........................................'''..............''',,,'',,,,,,',,,,,,,,,',,,,'''''''''''',,,,,'',,,,''''',,;;;;;;,,,,;;;;;::::;;;;;;;::::llllllllcclllcccccccccccllllcccccccccccllc:::::::::::;;::::::::;;;;;;;;;;;;,,;;;;;,,,,,,,;;;;;;;;;,,,,,,,,,''''''..'''''''''',,,,;;,,;;,,,;;;;;;;;;,,,,,;;;;;;;;;,,,,,,,,;;;;;;:::::::;;;;;;;;;,,,,,;;::::::::;:::;;::;;:::::::::::;;;;:::cc:::cccc:::;;;;;;;:::::::ccc::::::;;;;;;;;;;;;;;;;;;;:::::cllllllooddddooooooooooooodddxxxxxxxxxxxddollllloodoooddxxxxkkkxolclccc:::cccccccccccc::cccccc::c::::ccccccccllccccc:::::;:::;;::::cccc::::;;;;;;,,,,,;;,,,,,,,,,'''''.......................................... ....... .............................'''''',,,,,,,,,,,,'''''..'''''''',,,,''''''''''',''......................'',,'''''''''',,,''...'''''''..'''''
......................................''''''................''',,,,''',,''''''',,,,,'''''''''''''''',,,,''''',,''',,,;;;;;,,''''',,,;:::::::;;;;;:ccccllllllllllllcccccccccccccc::::::::::::ccc:::::::::::;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,'''',,;;;;;,,,,'''''',,,,'''''''''',,,,,,,;::;;;:::;:ccccc:::::;;,;;;;;;;;;;;,,,,;;;;;;;;;;;;;;,;,,,;,,,,,,,,,,,,,,,,,,,,,,;;;,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;::;;;;;;;;;;;;;;;;;;;;;;,,,;;;;;:;;;;;;;;:::::::::::cccccllllllllllllloolllllllllloooddddddoddxxdddddddoooodxxxdxxxdolcllllccccllllooooolllcc:::::::::::::::c:cccccc:::::::::::c:::::::::::::::;;,,,,,,,,,,;;;;;,,,,,,'''''...''.......................................................... .........',,;;;;;;;,,'''''''''''..'''''''',,,,,'''''...............................',,,''........'''......''''...'''...
.......................................''''...................''''''..''......'''''''''''''''''''''''',,''''',,,''',,''''''......'',,;;::::::;;:::c::::clllllllollcc::c::;;:ccccc:::::;,,;;::::cccc::::::;;;;,,;;;;;;;;;;;;;;,,;;;,,;;;;;;;;;;::ccc:cc:::;;;;;;;::::::;;;;;,,,;;;,;;;;;;;;;;,;;;;;;;::::::;;;;;;;;,,;;;,,,;;:;;;;;;;;;,,,,,,,,,,,,,,,,,,,,,,,;;;,,,,,,,,,,,,,,,,;,,,,,,,,,,,,,,,,,;;,,,,,,,,,,,,,,;;;;;;,,''''''',,,,,,,,,,,'',;:::::::::::;;::cccllc:cllloocc::cccccccccclllooooodddooollllllllllooolllloolllodoolllllooddddddooolccccc::::;::::::;;::::::::::;;::ccc:::;;;;;;;;;;;;;;,,,,,,,,,,,,,,;;,,,,,,,,,'''''.......................................................... ...............'',,;;;;;,,'''''','''''',,''''''''''''''''.................................'''''''............'',,,,'''',,'''.
..........................................'''....................................''',,'''''''''''''',,,,''''''''''.''''.............',,;;:;;;;::::;;;;:::cclllllllcc::c::;;;:::::ccc:::::::ccccccccccc:;;;;;;;;;::c:::::::cccc::ccccllllolllooodddddddddddddddddxxxdddddddooodddoolllllcc:::ccc:::::::;;;;;,,;;;;;,,;;;;;;;;;;;,,,,,,,,,',,,,,,,,,,,,,,,,,,,,;;,,,;;,,,,,'''''',,,,,,,,''''',,''',,,,,,,,,,,;;,,,,,;;:::;,,,,,,,,,,,''''''',,;;;;;::ccc:::::ccccccccccccloooc::ccccccccccc::::cclcccccccccccccccccccccccclllcloolllllllooddooooooooooollc::;;;;;;;;:::::::::ccc:;:::::::;,,,,;;;;;::::;;;;,,,,,,,,,,,,,,,,,,,;;,,,,,'''''................................................ ..................'',,;:;;;,,,,;;;,'',,,,,,'''''''''.........................................',,,'...........'''''''''..'''...
..........................................'''....''''..'''.............'''''......''''...''''''''',,,,,''''''''''.....'''...............',,',,,,,,,,,;;;;;;:::::::;;;;;;;;;,;;,,;;:::;;:ccccc::c::;;;;;;,,,,;;::cccllllcccclllllllllllllllooodddoooddddddddxxxxxkkxxdddxxxxxxxxkkxxxxkkxxxxxxxkxxddxxxdxxxxdolcccccc:;;;;;;;;;;;;,;;;;,,,,,;;;;;;;;,,,;;;;;;,,;;;;;;;,,,,,'',,,,,''''''''''',,,,',,,;,,,,,,;:;,,''',,,,,,,,,,,;;;;:;;;;;;;;:cccc::cccccccccccc::::c:c:::cllc::::cllllcccllllllcc::;:::::::::cc::cccc::::ccccccccclloddddddddolcclllloooolllcccc:::::c::;::::::c::::::;;;,,,,;;;;;;;;;;;;;;;,,,,,,,,;,,,,,,,,,,,,,,,,,,,,,,,'''............''''........................... ... ....................'''',;;;,,,,,,,''''''''''..''''''''''.......................................................''.............
.................... ..............................''',''...............''..................'','''''.''.''..............................''''',,;;;;;;;;;;;;;:::::;;;;;;;;;;;;;;;;:::;;::::::::::;;;;::::;;::ccccccccccc:ccccccloooooooooooooooooodddxxddddddxxxxxxxdddddddddxxxxxxxxkxxxxxxxxxdxxxxkkkkkkkkkkxxkkOkxdooolllccccccc:::::::;;;;;;;;;;;;;;;;;;,,;;;;;;;;;,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;,,;;;;;;;;;;;;;;;;;,;;;;;;::clllc:::::::::::::::::::;::::ccccc::ccc::::ccllcccclllloool:;::::::;;;;;;;;;;;;;;;;::::::cclloooooddddddooooooddxddooooolllcc::::;;::::::::::::::;;;;;;;,,,;;;,,',;::;;,,,,,,,,,,',,,,,,,,,,,,;;;,,;;;;,''..''',;;;;;;,,,'...'..................... .........................''...',,,''''''''...........''''.'''................''......................................................
....... ......... ............... ....... ..............................''''''''''''....''','''''''''''''''.......................'...'...'',,,;;;:;;:::;;::::::::::::::cc::::ccccc:::::;;;;;;;;:::::ccc:::::::::::;;;::::clloodddooolllllllooddxxxxxxxxkkkxxxxxxxxxxxxkkkkxkkxxxxxxdddxkkxxxdddxkkxxxxxkkkkkOOOkkkOkkxkkkxxxkxxoollllc:::::;:::;;;;;;;;;;;::;;;,,,,;;;,,;;;;;:::::;;:;;:::;:::;;;;:;;;;::::::::;;;;;;;;;;;;;;;;;;:cllc;;:::::::::;;;;;;::cclllcc:::::ccc::::cccccclllloool:;::::::::::;;;;;;;;;;::ccc::::ccclllcccllllloooooddddxxxxxdddooollcccc::::ccccccc::cc::;;;;;;;;;;;;;;,,,;:c:;;;;;;;;,,;;,,,,,,,,,;;;;;;,,;;;;;,,,,,,,,,,,,,,,,,,,,,'''.'.........................................',,,,,,''''''''''''''''''''''..''.............................................................''''''..'',,'''..
....... ........ ............... ... .... ..........................'''''''''',''''..''''''',,'''''...........................'...........'',,,,,,,,,,,,,,,,,,;;;;;;:;;,;;:::::::;;;;;;;;;;:::;::::;;;;:::::::::::::cccllloooddooooollloodddxxxxxxkkkkxxkkxxxxxxkkkkkOOkkkkxkkxxxxkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkOOOO0000OkkO00OOkkxxdooollcc:;;;;;;;;;;;;,,;;;;;;;;:::;::::::::::;;;;;;;;;;;,,,;;;;;;;;::::;;;;;;;;;;:;;:::;;;;;:::::ccccccc::::cllllc:::::::ccc::::::cccccccclodolccccclllllllllc:::::ccllllccccllccc:::ccclccccccccllllooodddddddolllccllllllllllccccc::;::ccc::::cc::;;;;;:ll:;;:::::;;:::;;;;,,;;;,,,,,;;;;,,,,,,,,,,,,,,,',,,'',,,''''''''''..................................'',,;;;,''...''''''''','''''''..''''......'''....................................................'''''..',,'.''''
... ..... ............. ........................................................'''.................................................'''''''......'','',,,,,'''''',,,,,,;;;;;;;;;;:;;;::::::::::::::cc:::ccccc:::ccclloooooooddddddddddddxkkxxkkOkkkxkkkkkkkkkxxxkkkxxxxkkkkkkkkkkkkkkOOOkkOkkkkkkkkkkOOOOOOOOOO0OOO00K000000OOOOOOkkxddddolccc::::::;;;;;;;::;;;::::::;;;;;;;::::::;;,,,,,'''',,,;;;;:::::::::;;;;;;,;;;;;;;;;;::::::::::::::::::::;;::::;::::::::::::cloollllllllclllcccccccccccclllooooollllllllcccccccc::cccccllodddddolcc:;;::ccc:::ccccclllccccccc::;;;:::;;;;:clolc:::::;;;;;;;;;;;;;;,,,,,',,,,,,,,,,,,;,,,,,,,'''''''',,'',,'''''','''''.........................'''',,;;;,''.'''''..'''',,'.....'',,,,,,,,,,,,,,,,,,''...'.................................''''''..............'',,
. ........ . .. . ...............................................................................................................................'''''''''''''''',,,,,;;;,,,,,,,,,,;;:c::::cccccccccc:::::::::::::cclloooooodddddddxdddddddddddxxxxxxxxxxxxxxxxxxkkkxxxxxxkkkkkkOkkkkOOkkkOOOOOOOOOOOOOOOOOOOOOOOOOOOOOkkOOOOOO0000OOO000OOkkxxxxxxdolllcc::::;;;;:;;;;,,,,,,,;;;;;;;;,,'''''''''',,,;;;;::;;;;;;;,,,,,,;;;;;,,;;;;;;;;:::::::::;;;;;;;;,,;;::;;;;;::;:ccccc::::cccccccc:ccccccccccclllllccclloooollc:;;;;;;;::::ccllllcccc::;;;;:cccccllllllloolc::;;;::c:::::::::clllc:::::;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,,,,,,''''''''',,,,'''''''''''''''''...''''...........'''''',,;;;;;,,''''''''''''''',,''',,,,;:::;;;;,,,,,,,,;;;,,,,,,,,,,'..............................'''''.......''....''''
.............. ... ....................................................................................................................''...........................''''',,,,,,,'''''',,;::ccllllcclllllllllcllllllllllooooddxxxxxxxxdxxddxxxxxxxxxxddddxxxddxxddxxxxxxxxkkkkkkkkkkkkkkOOOkkkkkOOOO000000000000000OOOOOO000OOOOOOOOOO000000OOO000OOOOOOOO00OOOOkxdddoolccccc::::;,,,,,,,,,,,,,;,,,,,,,,,,',,,,,,,,,,,',,,''''',,;;,,,,,,,,,,;;::::::;;;;;,,,,,,,,,;;;;;;;;;;;;;:::::;;::c::::cllc::;;:cllccccccc::::::ccllcc::;;;;;:;;;;;;:::::ccclccccccccccclllccloooddoocccclllollccclllc:;;::ccccc::::::;;,,,,;;;,,,,,,,,;,,,,''',,,,,,''.'',,,'',',,,,,,,,,,,,''''''''''''''''''''','''',,,,,;;;;,,'''''',,;;;;;::::;;;;;;;;::::;;;;,,,',;;,,,,,,,,,',,,,,,,,,'''........................''....................
... ... ....... .........................................................................................................................'''............................'''.....''''''',,;:cclllcclcccccllllllooooooooolooooddxxxxxxxxxxdxxxxxxxkkkkkkkkkxxkkkxkkkkkkkkkkkkkkkkkkOOOOOOOOOOOOOOOOOOOOO00000OkO0000000KKKKKKKK0000000000000K0000000000000OOOOOOOOkkkkkkkxxxxxxxddddoolcc:ccc:;;,;;::;;;;,,,,,,,;;;,,,,,'',,,''','''',,,,,''''',,;;;;;;;;:::;;;;,,,;,,,;;::::;;;;;;;;;:;;;;::::;;;:ccc::;;;:cccc:::::::::::ccclcccccc:cllc:::;;:::;;:ccccclllllcccclllcclooooddddoollooolc:::clcc:::cclllllooooolc:;;;;,,,,,,,,,,,,;,,,'''''''''''''',,,,,,;;;;;:::::::;,''',,,,,,,,'''',,,,,,,,,,,,;;;,,,,,'',;;;;;;::::::ccc::cc::;::::;;;,,,,'.',,,,,,,'''''''',,;,,''''''''...............''''''''''..........''''..'
..... ..........'...........'''.......................................................................................................................'''..........................''',,,'',,,,,,,;;;;,,,;;;;;;:::::::::::;::::cclllllllloolodxxxxxkkkkkkkkkkkkkkkkkkkkkkkkkOOOOOOOOOOOOOOOOOOOOOOOOOOO000000000O0KXXXXKKXXXXXXK0000000000000000000OOOO0000000000OOOOOkkkkkkkkkkkkkkkkkkkkxdddoooolccccccc:;;;;;;;,,,,,,'',,,,,,'''''''''',,''''''',,,,,,;;;;;;;:::;;;;;;::::::;;;;;;;;;;;;;;;;;;;;;::ccc::cllllllc:;;;::ccllccccccllllcclloollcc::;;;;:clllcccllllllooollclloooooollllllllcc::cccc:ccccclllloooooolllc:;;;;;;;::::;;;;;;;;;,,,,,,,,,,,;;;;;::c::::::::ccc:::;,,,,,,,',;::::c::;;,,,;;;;;,''''',;;;;;;::::::;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,''''''''''''''''''..''''........'''''''..........................
. . ......'''''.''''...................................................................................................................................''''..''...''',,,'''',,,,,,,,,;;;;;;;;;;,,,,,;;,,,,,,,,,,,;;;;;;;,;;;;;;;,,;;;::::;;;::::ccclooooodxxkkkkOOOOOOO00K00OOO000OOOOOOOOOOOOOOOOOOO0000000000000000KXNNNXXXXNNWNXK000000000000000K00OO0OO000000000OOO0OOOOOOOkkkkkkkxxxkkkkxxddddddddddddolcc::;;;;;;,,,,,,,,,,''''''''''''''''''',,'''''',,'''',;;;;;;;;:::::::;:::;;;:::;;;;;;;;::::::cccc:::ccc::;;;::cccccccc:cccccccccccllllc:;;;;:cccc:::ccccccclllllllllllllccllcc:::::cccc:::c::::ccccclllcccc::::ccccclllllcllllllcc:::;;;;;;:cc:::ccc::;;;;;;;::::::;;,,,;;;;:ccclllc:;;;;:::;,,,'',,,,,,,;;;;;;;;;,,,,,;;;,,,,,,,,,''',,'''''''''''''''''....'''''''''''.....''''''''...................''......
........''...............................................................''............''''................'...................'''............'''''''',,'',,;;;;:;;,;;;;;:::::cc:::ccccccclllllclcccccccccclcccclcccccccc::::::;;;;;;;;;;:;;;;;:;;;,,;:cc:::cllooddxkkkkOOO00KK0OO000KKKKK000KKKKK000000KXXXXXXXXXXXXNNNNNNNNXKKKKXXNNNXXXXXXXXXXXXNNXXXKKKKK00000000000OOOOOOOOOOOOOOkkkkkOOOOOkkxxxxxxdddddddoooollclllcc:::;,;;;,,,,'''''',,,,,,,,,,,,',,'''',''''''',,,,,;;;;:::;;;;;;;:::;;;;;;,;;::;;;;;;;;;;;;::::::::::c:::ccc::;::::::::ccccllc::::ccc:::::ccccccccllllccccccclllooolcc::::::;;::::::;;::::::::::ccccccccccllllllloooolllllllc:::::::::;;:::::;;;;;:::;;;;;;;,;;:;:;;;:::::::;;;;;;,,,,;,,,;,,,,;;;;;;;;;,,,;;;;,,,''''''''''''''''''''''''''''''............'''....'''..........................''..''
'''''...................................................................................''......''.......''..'.........''''''''',;;,,,,,,,,;;;;:::;::ccccccc::cccccccccccc:ccllllllllloooooooooooddoooooooddooddddddddoooooooooooooooolllollcccllc::;;::cc:::::c::ccllloddxkOO0KKKKXNNNNNNNXKKXXNNNNNXKKKXXXXXXXNNWNNNWWWWWNNXXNNNNNWWWWWWWWWWWWWWWWWWWWNNXKKKKKKKKKKKK00OOOOOOO000OOOOOOOOOOOOOOkkkkkkkxxxxxxxddddddddddooooolc::::;;,,'''',,,'',,'''...'''''',,''''''',,,,,;,,,,,,,,,;;;;::;;;;;,,,,;;;,,,,,,;;;;;;;;;;;;;;;;;;;::::;;;;;::::::ccccccccccclllcccccccc::::cccllloollllllccccc::;;;;::::::::::::ccc:::cc:::cc:::c::ccclccllllccccccllllc::::::;;;::c::::;;;;;;;;::;;;;;;;;;;;;;;;;;:::;;;;;;;;,,;;;;;;,,,,,;;;,,,,,,',,,,,'''''''',,,,,,,,'''''''.............................................................''
..........''''......................'''...........................''............''''.........'''''''.......'''''''''''''''',,,,,;:::::::::::ccccccccccclllllcccccccclllllllloooooolllloooooddddddddddooooddddddxxxxxxxxddddxxxxxdddxxxxxxxxxdxxxxxxddddoooollllllllllllllooodxxk0KXXXK00KKKK000KKXNNNNNNNWWWWNNNNWWWWWWWWWWWNNNNNWWWWNNWMMMMMWWWWWWWWWWWWNXXKKXXXKXNNNXKKK00000000000KKK00000OOOOOOOOOkkkkkkkkxxxxxxxxxdddddxddolllcc:::;,,,,''''''''.......''''''...'''''''''''''''',,,;;;;;;;;;;;,,,,;;;,,,,,,;,,,;;;;;;;:;;;;;;;;;;;;;;;;;;;;;;::;;:ccccccc::ccccccccccccclllllllccc:::;;;::::::::::::ccclloollcccccccccccccc::::ccc::ccccccccccccccc:::;;,;;;;::::;::::;;;;;;;;,,;;;;;;;,,;;;,,,,,,,,,;;;;,,,,;,,,;,,,,;,,'''',,,,,''''',,,,,,;;;,,,,,''..............................................'''........'''''''''''
.........''.........'''.................................................''''.....'''......''.''''.....''''',,,,,,,,,,,;;;::::::::cccclccccccccccccccccccllllllllllllooooooooooooooddoodddddoodddddddddddddxxdxxxxxxxxxkxddddxxxdddxxxxkkkkkkkkkkkkkOOkkkkkxxxxxkkxxxxxxxxddoddddxkOOkkO00KKK0000KKXXNWWWWWWWNNNNWWWWWWWWWWWWWWWWWWMMWWWWMMMWWMMMMMMMMWWWNNNNXNNNNNNNNWWWWNXXXXXXXKKKKK0000000000OOOOOOOOkkkkkkkkkkxxxxxxxxxxxxddddooooooolc;;,,,,,,,,,,'''........'''''''........''''',,,,,,,,;;;;;;;;;;;;;;,,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,;;:ccccc::::::clllcccccccccccc:;;;::;;,;;;::;;;;;::::cloddolllllllllcccc:::::::::::::::::::ccccccc:::::::;;;;;;;;;;;;,,,;;,,,,,,,,,;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;,,;;,,,,,,,,''''''''''''.................................................................'',,''''''
.........''..'.....''''''''''''''.....................'''''............'''''...........'''''''.......',,,,,,;;;;;:::::::ccc:::::cccccccccccllllllcccccccllllooooooooooooooooooooodddddddddddooddddoddddxxxxkkxxxxxxxxxkxxxxxkkkkkkkkOOOkkkkkkkkxxkkkkkkkkkkkOO00000OOOOOOkkkOOOO000OOO00K00KKKKXXNNNNWMMWWWMMWWWWWWWWWWWWWMMMMMMMMMMMMMMMMWWWWWMMMMMWWNNNNNNWWMMMMWWWWWMMMWWNNNNNNNNXXXKKKKKKKK000000000OOkkkxxxxxxxkkkkkkxxxxxxxxxxxxdddxdoollc::;;,,,,,,''....''''''.................''''',,,,,;;;;;;;;;;;,,,,,,,,,,,,,,,,,,,;;;;;;;::;,,,,,''''''''',;;;;;;;;;;;::cccc:::cccccc:;;;;;;;;,,,,,,,,;;;;;;;;;:lllllllllllcccclllllcc:cclllllloolllllloddoooooollc:::;;;;,,,,,,''''',,,,,,,,,,,,,,,,,;;,,,,'',,,,,,,,;;;,,;;;;:;;;,,,,;;,,,'''''.'.......................................................................'''......
...'''''''''.......'''''''''''''''..........'..........................................'',,,,;;;;;;;;;;;;;;:::::ccc:::::ccccccccccclcccccccccllllccccccllllllllllllllloooooooooodddddddooodddddddddddddxxxxkkkxkkkkkxxxxxxkkkkkkkkkkkkkkkOOOkkOOOkkkkOOOOOO0KXXKK0KKKKKKK000KXNNWWWNNXXXXXXXNNWWWWWWWWMMMMMMMMMWWWMMMMMWMMMMMMMMMMMMMMMMMMMWWWMMMMMMMMMWWWWWMMMMMWMMMMWWWWWWWWWWWWWWWWWWWWWNNXXXXKKKKKKK0OOOOkkxxxxkkkkkxxxxxxxxxxxxxxxxdddddddoooolc:;;;;;,,'''''''''..................''..''''',;;;;;;;;;;,,;;;;,,,;;;;;;;;,,,,;,,',,,'..'.........''',,;;;;;:::::c::;;;;;:ccccc:::::;;;,,,,,,,;;;:;;;;;;;;:::::::ccc::::ccloooolllllooddoooooolloodddddddodollcccc:;;;;,,,,,,,,,,,,,,,,,,,,,''',,,,,,,''',,,,,,,;;,;;;;;;;;,,,,,,,,,'''''......................................................................'''..'''......
''''''''''''''............''......................................................''',,,;;;;:::::ccc::::::::::::cc:::ccccllcccccllllllcccc:::::ccccclllcccccccccclllloooooooollooooddoooooddddddddddddddddxxxxxxxxxxkkkkkkkkkkkkxxkxxkkkOOOOO000KKK0000000KXXXKKKKKXXKKKXNNXKKXNNNWMMWWNNNWWWMMMMMMMMMMMMMMMMMMMMMMMMWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWMMWWWWWWMWWWMMMMWNNNNWWNNNNXXXXXK0OOOOkkkOOOOkkkxxxxxxxdddxxxddddddddddxxxddoollc:;,,'''''''.........'''''''.....'''''',,;;;;;,,,,,;;,,,,,,,;;;,,,,,,,,,,,'''.........''',,;,,,,;;;;;;::::::;;;;;::::::::;,,,,,,,,;;;;;;;;;,,;;;;;;;;;,,,,;;::::::::ccccccclloolllloolcllcllodddooooollllcc:::;;,''',,,,,,'''''''''''''',,,,,,'''',,,,,,,,,;;;;;,,,,,,,,,,'''''''''...........................................................''''''.................
'............................................................................''..',;;;::::::ccccccc:::::cccccccc::::::::cccccc:cccc::::::ccccc::cccccccccccclllllcccccclllllllllloooddooddddddddddxxxxxxxxxxxkkkxxxkkkkkkkkkkkkkkkkkkkkkOOOOOOOOKXXK0000KKXNWWWNNNNNNNXXXNNXNNWWWWWWMMMMMWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWMMMMMMMMMWWWWWWWMMMMWWNNNNNXK00KKKK00OOkkkkkkkkxxxxxxxxxddddddddddodddddoolc:;;,''','..............''.......'',,',,,;;;;;,,,,,,''''''''''.....'''............'',,,,;;,,,,,,,,,;,,;;;;;;;;::::;;,,,,,,,,,;;;;;,,;,,;,,,,;;;;,,,,,'',,,;;;;;;:::::::::::ccc:::cc::::::cllllllccloooolcc:;;;;;,,,,,,,,,,',,,,,,',,,,,,,,,'',,,,,,,,,,;;;;;;;;,,,,''''..'..'''''''..........................................................''''..................
.....................................''''''''.................'..............',,,;:::;;;::::cccccc::;;::cccccc:::;;;;;;:::::cc::ccc:::::cccccccc:::c::::ccccccccccllcccllllloooooddddddddddddoodddxxxkkkkkkkxxkkkxxxxxxxkkkkkkkOOOOOOOOOOOOOOOOOO00OO000KKXXNNWWWWMMMMMWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWNNNNNNNXXXXXXXKK0OOOOOOOOkkkkkkkkkkxxxxxxddddddddooooollllccc::;,,,'''..................'''..'''''''',,,'.......'......................''',,;;;;;;,,,,,,,,,,,,''','',,,,,,,;;;;;;;;;;;;;;;;:::;;;;;::;;;,,,,,,,;;;;;;;;;;;;:::;;;:::::::::ccc:;;;;;:;;::cllllc:;,,,;;;,;;;;;;;;,,,,,,,,,,,,,,,,,,,;;,,,,,,,;;;;,,,,,,,,''''.........''..................................................................................
..............''''''''''''...''............................................'',,,,;;:::::::c:::::cc:::::::::::::::::::::::::::::ccllcccc:::c:::cccc:cccccccccccccccllloooooooollllloooodddddddoooddddddddddddddxxxxxxxxxkkkOOkkkOOOOOOOOOOOOOOOO00000KXXXXNWWWWWWWWMWWWMMMMMMMMMMMMMMMMMMMMWWMMMMWMMMMMMMMMMMMMMMWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWMMMMMMMMMMMMMMMMMMMMMMMWWWWWMMWNNNNNNNNNNNNNNXKK00000OOkkkkkkkkkkkkkkxxxxxxdddddoooooooooooollc:;;,'...................................................................'',,;;;:::;;;::;;,,,,;,,,,,,;;;;;;;;,,;;;;;;:;::::;;;:::ccc::::::::;;;;,,;;;;;;;;;:;;;;:::;;;;;:cc::;::::::;:::::::;,,,,,,;;;;;;:ccccccc:::;;;,,,,,',,,,,,,,,,,,,;;;;,,,,,,,,''''''.......................................................................'..................
'''.''........''''''''''''..'''...........................'...............''''''',;::cc:::::::::::::::;;;;;;;;:::::::::::::cccccccccc::::::::ccllccccllcllllllcccccllllllllllccclllooooddddddoodddddddddddddddxxxxxxxxxxxxkkkxkkkkkOOO00KKKKKKKKXXXXNNWNWWMMMMMMMMMMWMMMMMMMMMMMMMMMWWMMWNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWMMWWWWWNXKK00OOOOOkkkkkkkkkkkkxxxxdddddddddooodddddddddoolc:;;,''...................................'''......................'''''',,;:::::::::;;;;,;;,,;;;,,;;;;;;;;;;::::;::::c:::::::::::::;:::::::;;,,,,,;;;;;;;;;;;;;;,,,;;;;:::cc::::::::::::;;;,,,;;:::cclllolllllcc::::;;;,,,;;;;::;;;;::::;;:::::;;;;,,,;;,''.......''...''''............................................................''''.....''
.................................................''.....................'''''',,,,;;;:::::::::::::::;;;;;;:::::;;;;;;:::::ccc:::::::::::cccclllllcccc:::cclllcccc:::ccccccllllllloooooooooooodddddddxxxxxxxxxxdddddxxxxxdxxxkkOOOkOOO0KXNNWWNNNWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWNNNNNNNNXK0000000OOkkkkkxxxxxdxxxxxxxxdddddddodddddxxdddddddddol:;,,,,,'..''.......................'''''..''.....'''''.......'',,,,,;;;;;:::::::::::;;;::::;;,,;;;;;;;;::::;;;;;;;;;;;:::;;;:::::;;;;;,,,,,,,',,,,,,,,,,,,,,,,,,,,;;::::::::;;::;;;;:::;;;;;:::cccllllllllllccc::;;;;;;:::::;:::c::;;;:::::;;;,;;;;;;,,,,,,,;;;,''',,,,,,,,'................'''''''''''''''...'''............................
..'''''..................................................................''''''''',,;;;::::::::;;;;::::::::;;;;;;;;;;::cc::cccccccccccccccccccccccccc:::::cccccc:::ccccclllooollooooollooooodddddddxxxxxxdddxxxxxxxxxxxxxxxkkO0000000KXNNWMWWNWWMMMMMMMWWWWWWNNNNWWWMWWWWWNNNNNNNNNNNNNWWNNWWWMMMMMMMMMMMMMMMMMMWWWWMMWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWNNNWWWWNXXKKKKKK0OOOOkkkxxxxxxxxxkxxxxxdddddddddddxddddddoddddollc::;;,,,,,''','''''.''''.'..''''''.'''''....................'''''',,;;;:;;::::::;;;;;;;;;;,,,;;;;;::::;;;,,,,,,,,',;;;,,;;;;,'''''''''''''''''.....'''''''''''',,,;;;;::::;;;;::::::::::;;;;;:::cccccllcccc::::::::::::;;;;;;,,,,,,,,,,,,,,,,,,,,,'''',,,,,,'''''''''',,,''............'',,,,'''''.........''''''''.......................
''.''''''''''.........'..................................................'',,,,'''''',,;;;;;;;;;;;;;;;;;;;;;;;:::::::::::::::ccccccccccc:::::ccccccllcc:::::;:::ccccllllllllllllllllooooodddddddddddddddddddddxxxxxxkkkOOkkkOOOOOO00KXNWWMMWNXXWWWNNWWWWNXKXNNXXXNNWWWNXNNNNNNNXXNNNNNNNXXXXNNWWWWNNWWWWWWMMMMMMWWWWMMWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWMMMWWNNNXXXXKK00000OOOkkkkkkkxxxxxxxxdddddddxxxxxxddooddodddoollcc::;;;;;,,,,,,,,,,;;;;,,;;,,''',,''''',''''''''''.....'''''''''',,,,,;;::::;;;;;;;;;;;;,,,,,,;,,''''''''''''''''''',,'''''',,'''''''''.........'''''....''''',,,,;:::::::cccc:::::::;;;;;;;;;;;;;;::::;;;;;:::;;;;;,,,,,,,,,,,'''''''...'''''''''''''''''''''..........'.'''.........''''''',''.................................''...
...''''''...'''...............................................''''........''''''',,,,,;;;;;,;;;;;;;;;::::;;;::::::::cc::::::::::cc::::::::::::::cccc::::::cccccccccccccccccclloooooodddooodddddddddddddddddddxxxxxxxkkkOO0000000000KXXNNWWNXXXXNXK00KXXXK000KKKKKKKXXNNNNXXNWWWNXXNNNNXXXXXNNNNNNNXXXXNNWMMMWWWWWWWWMMWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWMWWWWWWNNNXKK000OOkkkxxxxxxkxxxxxxxxxxxxxxxxxxxxxxddddddooooolllcc:;;::::::;;;;;;;;:;;,,,,,;;;;:::::;;;;,,,,,'...''''..........'''',,,,,,;;;;;;,,,,',,,''....'''....'''''''''''''''''',,,''..'''''..''''............''''''''',,,;;::::;;;;;:::::::;;,,,;;,,;;;;:;;;;,,,,,,,,,,,,',,''''''''''''''..''..............''''.........'''''''...............'''''''..''....''''''''''''''.......''''''
.....................................................''''''''''''''''..............'',,,,,,;;,,,;;;;;;::::;:;;;;::::::::::;;;;;;;;;;;;::::::::::::::::::cccclllllcccccccclllloooddddddoooodddddddxxxxddddxxxxxxdddddxkkkkO0KXXKKK0KKXXXXXXXXXXXXXXXKK00000OOOO0KKK00000KXK00KXXXXXKKXNNNNXXXNWWWNNNNNNNNNNWWWWWNNNNNWWWWNNNNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWMMMMWWNNXKK0OOOkkkkkkkkxxxxxxxxxxxxxxxxxxxxxxxxdddddddooooooolc:::::;;;;;;;;;;;,,,;;;;;;;;;;;;;;;;;;,,,,,'''''..............''''''''''''',,,'..''''....''''''''''''...............''''...''''''''''........'''''''''''''''',,,',,,,,,,;;;;::c::::::::::::::;;;,,,''''',,,,,,'''''''''''''''...............'''.......''''''''''',,''..............................'''''''...................
................................................................................''''''''''''''',,,,,,,,;;;;;;;;;;;;;;:::;;;;;;;;;;;;:::::::ccc:::ccccccccccllllllllooooooollllooddooooodddooooodddddddddddddddoooooddxxxxkkkO0OOOkkkOOOOOO0KK000O0KKK00OOOOkkkkOKKXKK00000OO000000000KKXNNXXXXNNNWNNXXNNNNNNNWNNNXXXXNNWWWNNNWWWWWWWWWWMMMMMMMMMMMWMMMMMMMMMMMWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWMMMWNXXXKK00OOkkxxxxxxxxxxxxxxxxxxxxxxxkkkxxxxxxxdddooooooollc:;;;;;;;;;;;,,,,;;,,,,,,,,,,,,,,,,'''',,,,''''............''''''''''..''''.'''''''..'',,'''''''''.................'''.....''''''......'',,,''.....'''''.'''...'''.''''''',,,,,;;;::::;;;;;;;,,',,,',,,,,,''..''.................'',,,''''''''''..'''''''''.''''.........................................................
.......'''''.....''.....''..........................'....................''''',''',,,''''.'''''''''',,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;:::::cccccccccccc::::cccllllllllollllllllloooooooooooollllooooooooooodooddoooooooooddddxxxxxkxxxxkkkkkkkkkkxxxxkkOkkkxxkkkkkkOO00K000OOOO00OOOOOOOO00KKKKKKKXXXKKXXNNNWWNNXXXXXXXXXNNWNNNNWWWWWWWWWWWWWWWWWWWWWWWWMMMMMMMWWWMMMMMWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWNNNNNXK0OOkkxxxxxxdddxxxxxxxxxddddddddddddxxddddddddooooollcc:;;;;;;;,,,,,,,,,,,,,,,''''''''.''''''''''.......'''''''''''''''''',,,,,,,,,;,,,',,,,,''''''''''''''''''..''...'''...'''''',,,,''''''''''''''........''...............'''..'',,,;;;;;,,,''''''.''.....................'''''',,,,'''''.'',,,'',,,,,,''...''''...............................'''.....''''.....''''....
'.......''..................................'''.''',,,,,''''''......'''''''''''''''......'''''',,''',,,,,,,,,,,,,,,,,,;;;;;;;;;;:::::::::cccccccccc::::ccccllcccccccccclllllllllllllllllooollloooooooooodddooooddddoodddddxxxddddxxxxxxdxxxxxxxxxxkkkkkkkkkkkkkkkkkkkOOOOOOOOO000000000OOOOO00000KK000KKKXNWNXXXXXXNNNNNXXXKKKXXNNWWMWWNWWNNNNXNNNNWWMMMMMMMWWNWWMMWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWNXK00OOkkOkkkxxxxxxxddddddddoddddddddddddooodddddddddoolc::::;,,,,,,,'',,,,,''',,,''''....'''..........''..'''.......'',,;;;;;;;,,,;,,,,,'''',''....''..''''''............'',,,,,,,,,,,,''''.....'''''.''..........''........''....''..',,,;,,,'''........''.....'''''..''..''',,,,,,,''''''''''''''''''''''''''''..................................''..............'......
'..........................................',,,,,,,,,,,'''''''''''',,,,,,,;;,,,'''''''',,,',,,,,,''''''''''',,,,,;;,,,,;;;;;;;,,;;:::::cc:::ccccccccccccccccccccccccccccccccccllllllllllllloooooooooddoooooooodddxxxxxxxxxxxxxdddddddddddxxxxxxxxxkkxxxxxxkkkkxxxxxkkkkOOkkkkkkkOOOkkOOOOOOOOOOO0KKKKK00000KKKKKKXXXNNWWNNXKKKKKKXNNWNNWWWNWWWWNNNNNWMMMWMMMWWNNNWWNNWWMWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWNNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWNXKKKKKKK0OOOkkkkkkkkxxxddddddddddddddddddoooooooooooooollllcc:;;;;;;,,,,,,',,,,,,,,,,,,,,,,,,''''''',,,,,'''..''''''',,;;;,,,,,,'''''...................................''''''',,,,;;;,,,,,,,'''''''''''''''''..''''........''',,,,,''....',,,''''.........'''..''''''',,''''''''''''''''''''''''''''''''''..''............... ............................................
..................................'','',,,,,,,,,,,,'',,,,'',,,,,,,,,,,,;;;;;;;,,,,,,,,,,,,,'',,'''''''''''''''',,,,,;;;;,,;;;;,,,;;;:::ccc:::cclllcccccccccc::::cccccccccccccccllllllloooooooolllooodddoooodddddddddddddddxxxxdxxxxxkkxxxxxxxxxxxdxxxxxxxkkkkkkkkkkkkkkkOOkkkkkkkkkkkOOOOOOOOOOOO000KKXXKKKKKXXXNXXXXXNNNXXKKKKKXXNNXXXNWWNNNWWWWWNNNNWWWWWWWWNNNWWNNWWWWWMWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMWNNWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWNXXXNNNNXX0OOkkkkxxkkkxxxxxxxxxxddddddddddddoooooooooollllollllcccc::;;;;,,,;;;;;;;,,,;;,,,;;,,,,,',,,,,,,,,,,,,,;;;;,,,,,,,''''''........................................'''..'''''''',,,'',,,,,,''',,,''',''''',,,'''''''''',,,'''''......''..'''.........'''''''',,,,,'''''....'...'''..''...''''''''''..................................................................
.............................'','',,;,,,,;,,,,,,;;,,',,,,,,,,,,,,,,,,;;;;;;::::;;;;;,,,'''''''''',,,,,'',,,,,,,,;,,,,,;;;;;;,,,;;;;;:::::::::ccccccc:::::;;;;:::;::cccccclllllllllllooddddooooloooooooddddddddooooooooodddddddddxxxxxxxxxxxxddddddddxxxxxxxxxxkkkkkkxxxkkkkkkkkkOOOkOOOOOOkkkkkkkkkkkkOOOOOO000KXXXXXXKKK00KKKKKKKK000KKXXXXXXXXNNNNXXNNWNNNWWWWWWWWWWNNNNNNWWWWWWWMMWWWWWMMMMMMMMMMMMMMWWWWNNNNNWWWWNWWMMMMMMMMMMMWWWMMMMMMMMMMMMWWNXXNWWWWWWNXK0Okkkkkkxxxxxxxxxxxxdddddddxxdddddooolllloolllllllllllcccc:;;;:::;;;;;;;;;;;;;,,,,,,,,,,,,,,,,,,;;,,;;;,,,,,,'''..........................................................'''.........''',,,,,,,,,,'''''''',,''.........'.....................''''',,,,,,,,,'''''....''','''...................................................................................
........'..................'',,,,,,,,,,,;;;,,,,,,''''''''''''''',,,;;;:::::ccc:::::::;;;;;;;;;;,'''''',,,;;;::::;;,,,,,,,,,,;;;;;::::::cc::ccc:::::::::::;;::c:::::ccclloooooooooooooooooooooooooooooooooooooooddooooooooooodoodddddddddddddddddooddddoooddddddddddddddxxxkkkOkkkkkkkkkkkkkkkkkkkkkkkkkkkkOOO0000OOOOOOkOOOO00000OO0000OO00KKKKKKXNWWWWNNNWWWWWNNWWWNWWWNXNNWWWWMMMMWWWWMMMWWWWWMMMMMMMMWWWWMMWWWWWWWNNNWMWWWWWWWWNNNNWWNNNNNNWWMMWNNNNWWWWWWWNNXX0Okkkkkkkkkxxkkxxxxxdddddddooooooooooooooooolllllllllllcccc::::::;;;;;;;;;;;;,,,,,,,,,,,,,,,;,,,,,,,,;,,,,''''................................................................................................................................'',,,,,,''..''''''.........'''................................................................. ............ .
........................''''',,,,,,,,,,,,,,;,,,,''''''...''',,,;;;;;:::::::::::::::::::::cccccc::;;,,;;;;::::::;;;;;;;;;;;;;:::::::::cccccccc::::::::c::::::::::::ccclllllllllllooolllooooooooooddooooollllloodddoooddooooooodddddddddddddddddoooddooooooooddddddodddddxxxxxkkkkxxxkkxxxxxxxxxxxxxxxxxkkkkkkkOOOOOkkkkkkkOOOOOOOOOOOO0OOOOO00000000KXWWNXKXXNNNXXXNNXKXNNNXNNNNWWMMMWWWWWWMMMMWWMMMMMMMWWMMWWWWWMWWWWWWNNNNNNNWWWWWWNXXXXXNXXKXNWWWNWWWNNXXNNWNNK00OOOOOOOOOOkkkkkxxxxxxxxxxdddooddddooooooooooooooooooolooooollllc:;;;;;;;;;;;,,,,;,,,,,,,,,;;;,,,,,,,,,,,,,,''''...............................................................................................................................''',,,'''..''''''.....''...................... ...............................................................
'.....''''........'',,',,,,'''''''''''''''',''''''''''',,;;::::::::;;;;;;::;;:::::::::::cllllllllc:::::::;;;;::::::::::ccccccllcllloodddddddooooooolllllccccccccllllllllllllllllllooooooodoooooodoooooooooooooooooooooodddoodddddoooooooooooooooooooooooooooodddddddxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxkkkkkkkkkkkkkkxkkkkkkOOOOOOOkkkOOOOOO000O000OO00KK000000000000K0000KKKKXNNWWWWWMMWWWWWWWWWWMWWNWWNWWWNXKXNWWNNNNNNXXXXXXXXNNNWWNKKKXXNXK0KKXXXNWWNXXKKKKKK00OOOOkkkkkkkkxxxxxdxxxxddddddooddooooooooooolooollllloolllllllcllccc::;;;;;;;;;,;;,,'',,;;;,,;,,,,''''',,,'''''''...''..''''''....... .............................................................................................................'''..'.................................... ......................... ............................ ......
,''''',''''......''',,,,,,,'''''''''''''''''''''''',,,;;::cc:::::::;;;;;;;;,,;;;::;;;;::cclllcclllccccccc::::::::clllllllooooooddxxxkkOOOOOOOOOOOOOOkxxddooooooooolllllllllllllllloooooooooollloooollloooooooooooooooooddoooooooolllllllooolllllloooooooooooooodddddddddddxddddddxxxxxxxxxxxxxxxxxxxxxxxkkkkkkkkkkxxkkkkkkkkkkkkkkkkkkkOOOOOOOOOOOOOOOkkkkkOOkkOOOO000000000KKXXXXXXNWWNWWNNXKKKKXXXXNWWWNNNXKXNWWWNXKKKKKXXNNNXKKKKXKKK0000OOOO0000KXXXXNNKKKKK0000OOOOkkxxxxxxddxxxxxxxxdddddddooooodddoooooooolllllllllllcccc:::cc:::::;;;;;;;;;;,,,,,,;;,,,,,,,,''',,''''''''..'''''',,,''...................................................................................'''''.........''''''''''''......................................................................... ....................................
,,,,,''''''''''''''''''''''''''''''..'''...'''''',,;;::::::::::;;;;;;;;:::;;;;;;;:;;;::::cccccccllccccclllcc::::ccllllooodooooodddddxxkkkkkkOOOOO0000OOkkxxxdddddoolllllooooooooollllllllooooollllllllllllloooooooooollllllooollllllollooollcccccclllllllllllooooddoooooddddddddddddddddddddddxxxxxxxxxxkkkkkkkkkkkkkkkkkkkxxxxkxxkkkkkkkkkkxxkkOOOOOOOOkkkOOOkOOOOOOOOO0OOOOO000000KKXNWWWXKKKKKKKXXNNWNNNNNNNWWWNXXNNXXXXNNWNNXXKKKKKXXXXK000000000000KXXK00000000OOOOOkkkkkkxxxxkkkxxxxxxdddddddddoooodddoooooolllllllllllllccc::::ccccc::;;;::::;,,,,,,,,,,,',,,''''''''','''''''''''',''......................................................................................'''''.....''',,,,;;;,,,,,'''................................................................. ... . ................ .....................
;;,,,,,'''''''',,,,,,'''''..'...''''''''''''',;;,;;;;;;;;:::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::::::cc::::::::cc::cllllllllooodddddddddxxkkkkOOOOO00OO000OkkkkxxdoooooooooolloooollllllllllllccccllllllllolllllllllllllllllllcccclllllllcclloooolllllllloooooooooooooooodddddddddxdddddddxxxxxxxxxxkkkkkkkkkkkkkkkkxxxxxxxxkkkkkkOOkkkkkkkkkOOOOOOOOkkkkkkOOkkkkkkkkOOO0000O000000000KKKKKKKKKKKKKKXXXXXKXXNNNNNNNWWNKKKKXXXXKKKKKK0KXXNNXK00000000000OOOOOOOkkkkkkkkkxxxxxxxxxxxxxddddddddddddddoooooooddddddoooooolllllllllccccccccccccccc::::;;;,;;;;,,,,,,;;,'''',,'''''''',,'',,,,,,'''............................................................................'''''''',,,,,,,'''''''',,,,,''..''............................................................... ............ ..... ................... ....
,,,,,,,''''''''''''''.'''.''''.''''''',,,,,,,,,,,;;;;;;,,;::;;;;;;,,,,,,,,,;;;;;;;;;;;;;;;;;:::::;;;;;;;;;;;;;;:cccccccclccccclllloodoooooddxxkkkkkkOOOOO00K0000OOkkxxxdddddoooooooollllllclllllllllllllllllllllllllllloooollllccccccllooooooooooooollllollllllloooooddddddddxxxddxxxxxxxxxkkxxxxxddxxkkkxxxxxkkkkkkkxxxxxxxxkkkOOO00OkkkkkkxxkkOOkkkkkkkkkkkkkkkkOOOOOOO00000OOOO00OOOOOOO00000000OOOO000OOO00KKXNWWNNXXXXXKKXXXKKKKK0KXNNXKKXXX00000OOOOOkOOOOkkkkkkxkkxxkkkkkkkxxxddddddddddoooddddooooooooooooooooolllllllllcccccccccclcccllllc:;;;;;;;,,;;;;;;;,,,,,,,,',,,,,,;;;;;;;;;;;;;,,,,'''''''''...............................................................''''',,,,,''''''','''...................''................................ .... ... ......... ... .. . ......... ..... ....
,,,,,,,''''''''''''''..............'''''',,;;;;;;;::;;::;;:::;;;;;;;;;;;;;;;;;;;;;::::::::::::;;;;;;;::cc:::;;;;::ccclllloollllllooddddddddddxxxxxxxkkkkkO0000000OOOOOOOkkxdddddddooooolllllllllllllllllccccclllllllllllllllloooooooooooooooollllllllllllllllllloooddddddddddddddxxxxdddxxxxxxxxdddddxxxxxxddxxxxxxxxxxxxxxxxxxxkkkkkkxxxxxkkkxkkkkkkkkkkkkkkkkkxkkkkkkkkkOOOOkkkkkkkkkkkkOOOO000000OOOOOOOOOOOOOO0000O0KXXNXXNXXXXXXKKKKXNXKKXXXKOOOOkkkkkkkkkkxxxxkkkxxxxxxxxxkkxxxxddddddddddoooooodooooolllllllooolllcllllllllcccccccccccllllllc:::;;;,,;;::;;;;;;;;;;;,,;;;::;:;;;;;;;::::;;;;;,,,',,,,,'''''...........................................'''''''....'''''','''',,,'''..''...................................................... ...... ...... .... .. .......... ...
,,,,,,,,,,,'''''''''..'''''''''''',,,,,,,;;;;;::::::cccccclllcc:::::;;;;;;;;;;:::::ccc:::;::;::::::::cccccccc:::ccccclllllllllooooooddddxxddddxkkxxkkxxxkOOOO000OOOOOO0000OkxxxddddddddddoolllllcccccllllllllllollllllllloooddxxxdddddooooddooodddoooooooooooooooooodddddddddddxxxxxkxxxxxxxxxxddddxxddxxxxxxxxxxxxxxxxxdddxxxxxxxxkkkkkkkkkkkkxxxxxxxxxxxxxxxxxxxxxkkkkxxkkkkOOkkOOOOOkkkkOO0000000OOOOOOOOOOOkkkkkkkkkOOOO0KXNXXNWNXXXXKKK00KXK0Okkkkkxkkkkxkkxxxxkkkxxxddddxxxxdddddxdddddxddoooooooooooollllllllllllllllllllllllllllccccllllcccccc:;;;;;:::::;;;;;;;;;;;,;;;,;;;;;;;;;,,,;;;;,,'''''''''','''''''''',,,,,,,,,'''....................'...'''''''''....''...'...'''''........................................................ ...... ... ...... . .. ..... ... . .... .
,,'''',,''''''..'''.....''''...''''''',;;;;;,;:ccccllllllodoooolllllccc::;;;;::::;;:::;;;:::::ccccccccccccc::cccllcccccllllllolllloooooooooooodxxxxkkkxxxxkkOOOOkkkO0000000OkkkxxkkxxxxddoollllllcccclllllloooooooddddddddxxkkkkkkkkkxxxxxxxkkkkkkxdddddddoooooooddddddxxddddxxxxxxxkkxxxxxxxxxdddxxxdddxxxxxxxxxxxxxxxxxxxxxxxkkxkkkkkxxxxxxxxxddddxxxxxxxxxxxxddxxkkkkkkkkkkkkkkkOOOkkkkkkkOOOOOOOkkkkkkkkkkkkkkkkkkkkkkkOOOO0000K000KK000OO0KXXKOOkkkkkOOOkkOOOkkkxxxxxxxxxxxxddddddxxdddddddooollooooooollclllooollooolllccclllllllcccccccccc::::c:::;:::;;;;,,,,,,,,,,,,,,,,,;;,,,;;,,,,,,,,,'''.........'''''',,,,,,,,,,,,,;,,,,,''''''''''''.....'''''''''''...''''''',,,,,,,;;;,,'........................................................... .. .... ... .... .. ...............
;;;,;;;;,,,,,,,''',,,,''''''''''''''',,,,;;;::clllccccllooddollooddoolllcc:::::::::::::::cc:::::::::::::ccccc::ccclllllllooooolllllollloooollloddddddddddddxxxxxxxkOO0000000000OOOOxddddooollllllllllllllloooooooodddddddxxkkOO00000OOOOOOOOOOOOOkOOOOOOkkkkxxxdddddddddddddxxxxxkkkxxxxxkkkkkxxxxkkxxxxxxxxxxkkxxxxxxdddddddddxxxxxxxdddddxxxxxxxxxxxxxxkkkkxxxxxxxxxxxxxxxxxxxxxxxxxkxxxxxxxxkkkkkkkkkkkkkkkkkkkOOOOOkkkkkkkkkkkkkkkkkOOOOOOOO0K0Okkkkkkkkkkkkkkkkkxxxdxxxdddddddddddddddddddoolllllooolllllllooooooolllllllcccccllccccccc:::cc::::ccc::cc:::;;;,,,,,,,,,,,;;;;;;;;;;;;,,,,,,,''.....'''....''''''',''''',,,,,,,,''''''','''''''''.'''''',,,''''''',,,,,,;:cccc:;;;::::,'''''.......................................................... .. . . .. .. . .. .....
,,,,;;;,,,,,,,,,,,,,,,;;;,;;;;;,,,,,,,;;:::ccccclllcccllloooooooodxxxxxxdddolc::::;;;:::cccc::c::::::::cccccc:::ccccccclllllllllloooooddddoooodddddddddddxxxxxdxxxxxkkkkOOOOOOOOOkkkxxdooolllllcclllllllloooodddddxxxxkkOO00OO000000OO00000O000000000KKKK00KKK0OkxxddddddxxxxxkkkO00OOOOOOOOOOOOOOOOOkkOOOOkkkkkkxxxxxxxxxddxxxddddddxxxxxxxkkkkkkkxkkkxxxxxxxxxxxxxdxxxxxxxxxxxkkxxxxxxxxxxxxxxxkkkkkOOkkkkkkkkkkkkkkkxkkkkkkkkkkkkkkxxxkkkxxxxxkkkkxxxxxxxxxxxxxxxxxdddddxxdddddddxxxddooddddddoooooolllllloollooooooooolllllcccccccccccc:::::cc:cc:::::cccccc:;,,,,,,,,,',,,,,,,,,,,,,,,,'''''''....''''..'''''''''''''',,''''...''''''''',,,,,,,,,,,,,,,,,'''''',,,,,;:::cc:::;;;:c::;,'','''''..........'''....................................... ................... .... .... . ......... ... ..
,,,,,,,'''''',,,,;;:::::::::::::;;;;;;::ccccccccccclllccccccllooddddddddddxddolllc:::::::cccccccccccccccccccc::::::::::ccccccccccllllloooooooooooooooodddxxxxxxxxkkkkkkkkOOOOkkxxxkxxxddoollllcccllllloooddddxxxxxkkOOO00KK00OOOOOO0000000O00KKKKKKKKXXNXXXXXNNNNX0kxxxxxkkkkkkkkO000000OO000KKKKKK0000KKXKKKK0000OOOkkkkkxxkkkkkxxxxxxxxxxxxxxxxkkxxxxxdddddxxxxdxxxxxxxxkkkxxxkkxxxxddxxxxxxxxxxxkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkxxxxxxxxxxxxxxxxxxxxxxxxddddddddddddddddddddddddoooodddddooooooooooooooooooooooooooooollllccclcccccc:::::cccccc::::::::::;,,,,,,,,,,,;,''''',,,,',,'',,,,,,,'''''''''''......'''',,,,'''''',,,;;;,,,,,',,'',,,;;;,,,,''',;;;;;;;:::;;;,,,,,;;;;,'''''''''''''''''''''''............................. ... ...... ............... ........ ....... .
;;;,,,,,,,,,;::::c::::cccc::ccccccc::::ccccccccccccc:::::::::cclooooooooooddoddddolllccccccc::::cccccclcccccc::::cccc:::ccc:::::::ccccccllllllllloooooooooddddxxxxxkkkxxxxxxxxkxxkxxddoooooooolcclllllooddddxxkkkkkkkkkkkOOOOOO0OOOO00K00OOOO0000000KKKXXNNNNNNXXXXKkxxkxkkO0000KKKKKKKK000KKKXXKKKKKKKXXXXXKKKKKKKK00OOkxxxxxxxxxxdddxxxxxxxxxxxkkkkkkxkxxxxxxxdxxxxxxxxxxxxxxxxxxxxxxxxxxxxkkkkxxxxkkkkxxkkkkxxxxkkkkxxxxxkkkkkxxxxxxxkkxxkxxxdxxdddxxddddddxddoooooddoooooooooooooooodooooooooooooooolllllllllloolllllllllllccccccccc:::c::::::::c::cc::;;;;;;;;;,,,,,,,,,,,,''''''',''''',,,,,''''''''',,,''''''.''''',,,,,'',;;:::ccc:::;;:::;,,,,,,,'''',,;;::;;,;,,,,,,,,,'',,''''''...''''''''............''................. ... .. ... . ..... ........ ... . ... .. ... .....
;;;;,;;;;;;;:::::::::::::::ccc:::ccccccccccccccccccccccc:::ccccllllloodooooooooollllollcccc::::::cc:ccccccccc::::cccc::::::ccc::::::::::cclllllllooddddddddxxkkkkkkOOOOkkkkxkkOOOxxxxdddddoolllllloooooodddxxkOOOkkkkxxxxkxxkkOOOOOOOOO0OOOOOO00000000KKXNNNNNX0OO00OOOOOOOO00KKKKKXKKKKKKKKKKKKKKXKK00KKKKKKKKKKKK00000OOkkkkkkxxxxxxxxxxxxdddddddxxxxxxxxxxxxddxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxddxkkxxxkkkxxxxxxxxxxxxxxxxxxxxxxxkkkxxdddddddddodddddddooooooddddooddoooooooddddoooooooddooooooollllllllllllllllcccllllccccclccc::::::::;::;;;;;;,,,;:;,,,,,,,,''''''''''''''''''..''''''''''',,,;;,,'''',,;;;;;;;:;;;,,;;,;;;;;;,,,;:cc::;,,,,,,,,,,,,,,,,,,,,',,,'',,,,,''''''''''......'.....'''''',,',,,'....',,,,''..... . ................. . ... ....................
ccc::ccc::cc::::::;;;;;;;;;;;;;;:::::::cccccllllllllcccccllllcclllllllllllllllllcccllllccclcc::::ccccccccccccc:::::::::::::cc::::::::;;::cllooddooooodddddddxkkkkkkOOOOOkkkkxkOOOkkkkkkxxdoollooooddxxxkkkxxxkkOkkkxxxxxkkkkkkkkkkkkkkkkkkkkkO00KKKKKKKKXXNNNWNKOkkkkkkkOOO00000000000000000O0000KK000000000000000KKKKKK0000000OOOOOOOOO0OOkxdddddddddddoodddddddddddddddddxxxxxxxddddxxxxxddddxxxxxxkxxxxxxkkkkkkkxxxxxxxxxkkkkkxxxxxxddxxxxxxxxxxkkkkkkkkOkkxxddoooodddddddddddddddddddooooooooodddxxxxxddddoooolcccclllllllllloooodxxdollc:::::::;;;,;::;;;;;,,,,,,,,,,,,''''',,,,,'''''....''',,;;;:::::cc:::::::::;;;;;,,',,''''.'','''',;:cll:;,,,,,,,,,,,,,,''''''',,,,,''''...''''''''.......'',,,;;;;,,,,''''..''',,,;,,''.'.......... .. .......... .... ... ....................... ......
ccccccccccccc:::;;;;;;;;;;;;;;::::::::::cccllolllllllllloooolllllcccccclllllooooolllllllllllllllllllooooooollllcc::::::::::::::::::::::ccclllooddoooooddddddxxxxxxxxkkOOkkkkkkOO0000000OOkxddoodddxxxkkkkkOOOkkkkkxxddxxxkOOOOOOkkkkkkkkkkxxxkkOOO00000000KXXNX0OkkxxxxkkkkkkkkOOOO00OOOkkkkkOOO00OOO000000OOO00OO00000000KKKKKKKKKKKKKKKK00OkkxxxxxxdddoooooooooooddddddddddxdddddddddxxxxxddddxxxxxxxxxddxxxxxddddddddddxxxxxkxxxdxxxddxxkkkkOOO00000000000OOkxdooodxxxxxkkkxxdddddoooooooododdxxkkOOOOOOOOkkkOkkdlc:cloodddxxxkOOOOOOOxdolcc::::;;:::::::collcc::;;;;;;;;,,,'''',,''''''''',,;;;:::cccclllooooolc:;;;;:::;;,,;;;,''''''',,,;:clllccc::;,''..'''''''''''''''''..........'.......'',,,;;;;;;;,,,'''.....''',,,,'''''''.................. .. .......... ..........................................
:::::;;;::;::;;;;;;;;;;;;;;;,,;;;;;:::::::ccc::::cccccccccccccllcccccclccccclllllllllllooolllllooooodddddddddooooollllcc:::cccc::::::::::ccccllllloddddxxxxxxdddddxxkOOOOOOOO0000000OOOkxdoooooddxxxxkkkkkkOOkkkkOOOkkkkkxkkOOOOOkkkkkkkkOOOOkkOOOOOOOOOOOO0KXXKKK00OOO000OOkkkkkOOOOOOkkkkkkOOOOOkkkOO000OOkOO00000OOOOOO000000KKKXXXXXXXKKK00OkkkkxxxxdddooooooooooodddddddddddddddoooddddddddddddxxxddddddxxxxxddddddddxddddddddddxxxkkO0000OOkkkkkkkkkkOOOOkkxxxxxkkOOO000OOOOOkkxxxxdxxkkkxkkkkkkkkkkkkkkxkkOkxdooodddxxkOOOOOOkkkxxxxxdollllclooodddodxxkxxxdolcc::;:;;,''''''''''..''',,;::::;:cooddolcccc::::;;;;:::::;;;::::;;;,,;;;;;;::cclodddol:;,,,,'''''''....''..........'........'',,,,,;;,,,,,''''......''.........'''............... ... ......... ...............................'''''............... ..
::::;;;;:::::::;;;:::::;;,,,,,;;;;;;::::;;:::::::::cc:::c::::cccccccccccllllcccclllllloooolllcccllllooddddddooooddxxxddoollccc:::::::::::ccccccccllooooddddddxxddddxkkkOOOOOkkkOOOOOkxxddoooooddxxxxxxkkkkkkkkkkkOOOOOOOOkkO000OOkkkkkkkOO00OOOOOOO00000KK0KXNXXXXNXXNNWWXKOOOOkkkkkkkkkxkkkkOOOOOOOOOOOOOOOOO0000000OOOOOOO0OOO00KK000000KKKKKK000OOkkkxxdddddoollllloooooodddddddoooddddddddddxxxxxxxxxddddddddddddddddxxxxxdddxxxxxkkkkkkkkxxxxddddxxxxxxxxkkOOOOkkxkkkxxxxxxxxkkkkkkxxxxxxxxxddddoooooooooooddxxxdddddooddxxdddoooollooooolllooddxddddooooodddxddddoolc:;,''',,''..'',,,,,;:c::;:clooolc;,;;;;;,,,,,,;;::;;;;;;::::::::::;;;;:::clloollccc:;;,,''''................'''''..'''',,,,,,,,,,,,'''........'''.........',,'.''''........ .. ..................''.................................................
ccccc:::::::::::::::::::;;;::::::::;;:::;::::::::::::::::::::::ccccccc:ccllccccllcccccclllllcccclllllllllllloooooodddddddodoollllccccccccllllcccllloooooooodxxxddxxkkxxkOOkkkkkkkkkxxdddxxkkkkkkkxxxxxxkkkOOkkkOOOOkkOOOkkkOOOOOOkkOkkkkkkkkkkOOOO0KKKKKXKKKKXXKKKKXXXNWWNXXXK00000OkxxddxxxkkkkkOOkkxxxxxxkkkOOOOOOOOOOOOOOOOOOOO0K00OOOOOOO000000OOOOkxxdoooollllllloooooodoooooooooodoooooddddddddddddooooddddxxkkxxkkxkxxxxxxkkkkkkkxxdoollllllllloooodooooddddddooooddxxdddddooooollllcccccllccccllccloooolllooooollccccccclllllllccccccc::cloooollcccccllllllooddddool:;,,,;,,,'.'',,,,,;::;;:clllc:;;;,;;::::;;;;;::::::::;::::::;;;,,,,,,;;;;;,,;;;clllc;;,,'''''.........''''',,,,,,,,,,,,,,,,,,,,''''...''.................',,,'',,''''',,'.............'........'''..................................................
;:::;;;;;;;;;;;::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::;;;;;;;;;::::::::::;;;;;;:::;::::::::cccc:cccccccccllllllooodddoooodddddddooollccccccllcccccclloooooooodxxddxxxxxxxxxxxxxxxxxxxxddddddxxxddddddddxxxkkkxxkkkkkkkkkkkxxxkkkkkkkkkxxkkkkkOO000000000OOkkkkkOkkkkkkkkOOOOO0000KXXXKkxxxxkkkkxxxxkxxxxxxxxxxxkkkkkkkxxxkkkkkOOOkkkOOOOOOOOOOOOOOOOOOOOOOkxxdooollllllooolllllllllllllllllllllooddoooddddddddxxxkkkkxxdddoooollooooooddddddooolllllllllllooolllooooollllloodddooddolllllc:::::::cclllllllllllllllllllcccccccccccclllllllcccc:::::clllccccccccclllcllooooodddlcc:::;;;;;;::;;;;:::::ccllcc:::clcccc:::;;,,;;;;;;;;;::cc:::;;;,,,,,,,,,,,,,,,;cllc:;,'''''....'''',,,,,;;;;;;;;;;;;;;,,,,,,,,'.....................',,,,,,,,,,''''.''.............................................................................
;;;;;;;;;;;;;;;;;;;;;;;;,,,,;;,,,,,,;;;;;;;::::cc::::::;;;;;;;,,;;;;;:;;;;;;;;;;;;;::::::::::::;;;:::cccccccccllloollllllloooodooollccccccccccccccccccllllooooddddddddddxxxxddddddxxxxxxxddddddddddddddxxxxkkkxxxxxkkkkkkkxxxxxxxxxxddxxkkOO000OOkkkkkkkkxxxxxkxxddddoodddxxxxxkkkOOOkkkO0000000000OkkkkkkkxxxxxkkkkkOOOOOOO00000OOOOOOkkOOOOOOOOOOO0OOkkkxddollccllloolllllllolllllllllccccllloooollooooooooooooooooollllllllooodddooooodddddoooooddddddddoooooooooooooooodoooooooooollc:;;::::cclooooooollllllllcccccllllllllllloooollcccccccc::ccccccccc::::::::ccccllllooodddooollloooollc:::::cccccccccccc::;,,,'''''',,,,,,;;;;:::cccc:::;;,,,,',,,,,,:cllc:;,'''''',,,,,;;;::;::cc::::::::;;;,,,,;::;;;,'.........'''...',,,;;;,,''.''....................................................... .........................
:::;;;;;;;;;;;:::;;;;;;;;,,,,,,,,,,,,,,,,,,;;;;::::::::;;;;;;,,,,;;;;;;;;;;;;;;:::::::::cc::::;;;;:::::::::::ccccccccclccccllooollllllccccc::cccccccccccccccllooooddxxkxxxxxddddddddddddddddddddxdddddxxdxxxxxxxxxxxxxxxxxxxxdddddddddxxxxddxxxddxxxxxkxxxxxxxxkxxxddddddddddddddddxxxxkkO0KKKXXNNNK0OkkkkxkkkkkkkkO0KKKKKKKKXNNNNXKK00O000KKKK00KKKKKKKKK0OOkdoooooooollllllllllllllllccccclllllllllllllcllllllllllllolllllllloooddooolllloooolooodddddddooooooolllooooooollllllllllc::;;;;;;;;:cclllllollllllllllccccllllllllcccccccccc::ccccc::::cc::::ccc:::::::::cccccllooddlcllloodolcc:c::;;;;;,;;;;;,,,,,,,,',,,,,'',,,,,,,,;;;;;;:::ccc:;;,,,,,,,,,;;:::::;;,,,;::ccc::::::;;;;;;;:;;;,,,,,,,,,;;:cc:;;,,'''''',,;;;,,,,''''''............................................................ ...........................
::;;;;;;;;;;,,,,,,,,,,;;;;,,,,,,;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,;;:::::::c::::::::;;:::c:::::::ccccccccccccccccccccccc::cccccccccccclllcccccccccccccccc::cclodddddxxkkkxxxxxxxddddddddoodddoooooooddxxxxxxxxxxxxxxxxxddddddddddooddxxxkxxxxxxxxxxxxkOOOkkkkkkxddoooooooooooooolllodooddxxkOO00KXXXXXKKOkkkOOkkkkkkOOOOO000KXNNWWWWNNXXXXNWWWNNNNNXXXXNNNNNXXK0Okxdddoollclllllllllllooollllllllllllllcclllllccccccclccccccclcccccccccccclllllllloooooooooolllllcccllllccc:::::::::;;;;;;;;;;;;::ccccccllllllllloollcccccccccc:;;;;;::::;;;;;;:::::::::::cc::::::::::cccccllllcc:::::ccc::;;;;;;;;;;,,,,,,,,,,,,;;;,,,,,,,,,;;;;;;;::;;;;;;;:;;;,,,;;;;;;;;;;;;;;:::;;;,;;;;;;;;;;;,,'',,,,'''....'''''',;;;;;;,,,,,;;;;;;,,''''................. .....''....................... ..... ............................ .....
;;;;;;;;;;;;;;,,,;;;;;;;;,,,,,,;;;;;;;;;::;;;;;;;,,,,,,',,;;;,;;;;;;;:::::cccc::::::::::c::::::::::c::::cccccccccccccccc::::::::::::ccccccccccccccc::cccc:ccclloooollooododdddddddddddxxxxxdddoooddddxxxdddddddxxxxxxxxxxxxxxxxxxddxxddxxxxxxxxddooooodxkkkOOOOkkxddddddddddddoooooooooddddxxxxxkO00KKXXK0OOOkxxkkkkkOOOOOOOOO00KXXXXXKKKKKKKKKKKKKKKKKXXXXXKKKKK000OOkxdooooooooloooooooooooooolllllllllllccccllllllllcccccllllccccccllcclllccccllllllloolllccc::cccc:::::;;;;;;;;;,,,'''''''''',,;;::cclllllllllc::::::;;;;;;;;;;;;::::::::::::::::::;;;:;;;;::;;;:::::::ccccllllllcccc::;;,,;;;;;;;,,,;;;;;,,,,,,,,,,,,,,,,;;::::cccccccccccc:::;;;,,,,,,,,,,,,;;::::;,,'',,,,;,,,'''',,'''....''''''''''''''''''''''''''...........................'''''................ .............. ......................... .....
::::::cc:::::::::::cccc:::::;;;;;;,,,;;;;;;;;;;;;;;;;;;;;:::::::::::::::;;;::::::::::::cccccc:::;;;;;;:::ccccccc:cccccccc::::::::::::::cccclllcccccccccccccccllllllcccllollllllooooooodddxxxxxxxxkkxxxxxxxdddddxxxxxxxxxxkkkkkkkxxxxxxdddoodddollcclllllloddxxxxxxddddxxxxxxxxxddddoooddddxxxddddddxxxxkkOOOkkkkkkOOOOOOOO000OOO0000O000OO0000OOOO00000KXXXKKKKKKK00000OkxdoooooooooodddxxkkkkOkkxxxxdddddooolllllllllllllllllllllllllllllllllccccccccclllccllcc:::::::::::::;;;,,,,,,,,'''''',,,,,,;;;;;;::::ccc:;;;;;;;;;;,,,,,,,;;::ccllllllccclcc::::::::::::;;::::::ccllodxxxxxdddollcc:::::;;;;;;;;;;;:::::;;;;;;;;;;:::::cloooooollllllllllllc::;;,,,,,,;;;::cccc:;;,,;;;;;,,,,,''''''........''''''''..''',''...................................................... ....................................................
looooooolllllllllllllllllllllllllllllooooooooooollllllllllllllllllloooollllodxddddollllllllllllllloooloddddddddddddoooooooooooolcclloodddddddxxddxxxxxxxxddddxxxxxddddxxxxkxxxxxkkkkkxkkkkkkkkkOOOOOkkkOOkkkkxkkOOOOOOOOOO0OOkkkkxxkxxxxxxxxdxxxxxxxxxxdxxxxxxxkkkkxxkO0KKKKKK000OOkkOOOOOOOkkkkkkkkkxxkkOOOOkkOOO00000OOOO00OOO000000KKKKKKKKKKKXXXNNXXXXKKKKKKXXK000000OkkxxxkkkkkkkOO0KKXXXKKKK00OOOOOkkOkxxxxxxxxxxxxxxxxxxxxxxxddxxxxxkxxxdxddddddddddddxxdollllllllllllccccccccccc:::cccllllcccccllllooooooollcccc:::c:::c:::cccloddddddoooooooooodddddddddodddxxdooddxxxxxxxxxkkkxxxddoooolllooddoooooooooooooodddooodddddxxkkkxddddxxxdddddooooollccllloddddddoolccccccccccclcc:ccccccc::::;;::::::::;;;;;;;;;;::::::;;;,,;;;;;;;;:::;;,,,;;;;,,;:::;,,,,,,,;::::;,,,;;,,;;;;,,;;;;;;;;;;;;;;;;;,,,,,,,,,,;;;;;;;;;,,,,,