........''''''''''''''''''''''''''''''''''''''''',,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,''''''....''''''''''''''''''''''''''''''''''''''''''''''''''''''''',,,,,,,,,,,,;;;:::ccclllllccc::;;,''........................''''',,,,,,,,,''''''''''''''''',,,,,,,,,;;;;;,,,,,,,,,,,,,,,,,,;;;;;;;;;,,,,,,,,,'''''''''''''''''''''''''''..'..........''''''''''''''''''''',,,,,,,,,,;;;;::ccclloooodddoooooooooooooddddxxxkkkkOOO00KKKXXNNNNWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMMWWMWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWW
'''.''''''''''''''''''''''''''''''''''''''''''''',,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,''''''......'''''''''''''''''''''''''''''''''''''''''''''''''''''''',,,,,,,,,,,,;;;:::ccccllcccc::;;,,'.......................'''''''',,,,,'''''''''''''''''''',,,,,,,,,,,;,,,,,,,,,,,,,,,,,,,;;;;;;;;;,,,,,,,,,'''''''''''''''''''''''''''.............'''''''''''''''''''''',,,,,,,,,,;;;:::ccllooooddddddooooooooooddddxxxxkkkOOO00KKXXXNNNNWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMWWWWWWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWW
''''''''''''''''',,''''''''''''''''''''''''''''''',,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;::;;;;;;;,,,,'''''..........''''''''''''''''''''''''''''''''''''''''''''''''''''''''''',,,,,,;;;:::ccccccccc::;;,,''.......................''''''''''''''''''''''''''''''''',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;,,,,,,,,,''''''''''''''''''''''''''''''.............''..'''''''''''''''''',,,,,,,,,;;;::cccllooodddddddddddoooooddddddxxxkkkOO00KKKXXNNNNWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWW
'''''''''''''',,,,''''''''''''''''''''''''''''''''''',,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;:::::::;;;;;,,,''''''...........'''''''''''''''''''''''''''''''''''''''''''''''''''''''''',,,,,;;;;:::cccccc:::;;;,'''......................'''''''''''''''''''''''''''''''''''',,,,,,,,,,,,,,,'''''',,,,,,,,,,,,,,,,,,,,,,,''''''''''''''''''''''''''''''''.................'''''''''''''''''',,,,,,,,;;;::cclloooddddxddddddddddddddddddxxxkkOOO00KKXXNNNNWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWW
,,,,'',,,,,,,,,,,,''''''''''''''''''''''''''''''''''''',,,,,,,,,,,,,,,,,,,,,;;;;;;;;:::::::::;;;;,,,,,''''.............''''''''''''''''........'...''''''''''''''''''''''''''''',,,,,;;;;:::::c:::::;;,,,''.....................''''''''''''''''''''''''''''''''''''''',,,,,,,,,'''''''''',,,,,,,,,,,,,,,,,,,,,,'''''''''''''''''''.....''''''''...................'''''''''''''''''',,,,,,;;;:::clloooddxxxxxxxxxxddddddddddddxxxkkOO00KKXXNNNNWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
,,,,,,,,,,,,,,,,,,,''''''''''''''''''''''''''''''''''''''',,,,,,,,,,,,,,,,,,,,;;;;;;::::::::::::;;;;,,,''''...........................................'''''''''''''''''''''''''''',,,,,;;;;:::::::::;;;,,,''....................'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''',,,,,,,,,,,,,,,,,,,'''''''''''''..............''''''...................'..''''''''''''''''',,,,,;;;::cclloodxxxxkkkkkxxxxxddddddddddxxxkkO00KKXXXNNNWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNN
,,,,,,,,,,,,,,,,,''''''''''''''.'..........''''''''''''''''''',,,,,,,,,,,,,,,,,;;;;;::::cccccc:::::;;;,,,''''...........................................'''''''''''''''''''''''''''',,,,,;;;;::::::::;;;,,,'''....................''''''''''''''''''''''''..'''''''''''''''''''''''''''''''''',,,,,,,,,,,,,,,''''''''''''............................................''''''''''''''''''',,,,,;;;::clloddxxkkkkkkkkkkxxxxdddddddddxxkkOO00KKXXXNNNWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWMWWWWWWWWWWWWWWNNNNNNNNNNNNNNXXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
,,,,,,,,,,,,,,,'''''''''''''.........................''''''''''''''''',',,,,,,,,;;;;::::cccccccccc::::;;,,,'''............................................'''''''''''''''''''''''''''',,,,;;;;;:::::::;;;;,,,'''...................''''''''''''.'...............''''''''''''''''''''''''''''''''',,,,,,,,,,'''''''''''''..............................................''''''''''''''''''',,,,;;;::ccloddxxkkOOOOOOOkkkxxxdddddddddxxkkOO00KKXXXNNNNWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWNNNNNNNXXXXXXXXKKKKKKKKKKKXXXXXXXXXXXXXNXXXXXXXXNNNXXXXXXX
,,,,,,,,,,,,,,'''''''''...................................''''''''''''''''',,,,,,;;;;:::cccclllllcccc:::;;,,,'''..............................................''''''''''''''''''''''''',,,,,;;;::::::::;;;;,,,'''........................'...........................'''''''''''''''''''''''''''''',''',,''''''''''''''.................................................'''''''''''''''''',,,,;;;:ccloodxxkkOOOOOOOOOkkxxxdddddddddxxkkOO000KKKXXXNNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWNNNNNXXXXXKKKK00000OOOOOOOO000000KKKKKKKKKKKKKKKKKKKKXXXXXX
,,,,,,,,,,,,,'''''''''.......................................''''''''''''''',,,,,;;;;:::cccllllllllllccc::;;,,,'''..............................................'''''''''''''''''''''''',,,,,;;;;::::::::;;;,,,'''......................................................'''''''''''''''''''''''''''''''''''''''''''''......................................................''''''''''''''',,,,;;;::clloddxkkOOOOOOOOOOkkxxdddooooodddxxkkOOO000KKXXNNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWNNNNXXXKKK000OOOkkkxxxxxxxxxxkkkkOOOOOOOOOO0000000000KKKKKK
,,,,,,,,,,,,'''''''''..........''..............................'''''''''''''',,,,,;;;:::cccllllooooollllcc::;;,,,'''''...........................................''''''''''''''''''''''''',,,,;;;;::::::::;;;,,,'''.....................................................'''''''''''''''''''''''''''''''''''''''''''.........................................................''''''''''''''',,,,;;::ccloodxxkkOOOOOOOOOkkkxxdddooooodddxxxkkkOOO00KKXXNNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWNNNXXXKK000OOkkxxddoooollloooooddddxxxxkkkkkkkkOOOOOO000000
',,,,,,,,,,,'''''''''.'''''''''''''''.............................'''''''''''',,,,,;;;::ccclllooooooooolllcc::;;;,,,'''''''.......................................''''''''''''''''''''''''',,,,;;;;::::::::;;;,,,''''......................................................''''''''''''''''''''''''''''''''''''''............................................................'''''''''''''',,,,,;;::ccloodxxkkOOOOOOOOkkkxxdddooooooodddxxxxkkOOO00KKXNNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWNNNXXKK00OOkkxxdooollccccccccccllloooodddddxxxxxkkkkOOOOOO0
''',,,,,,,''''''''''''''''''''''''''''''..........................''''''''''',,,,,;;;;:::cclllooooddddoooollcc:::;;;,,,,'''''''''''................................'''''''''''..'''''''''''',,,,;;;;:::::::;;;;,,,''''......................................................''''''''''''''''''''''..''''''''''''.............................................................'''''''''''''''',,,,;;;::cloodxxkkOOOOOOOkkkxxdddoooooooooddddxxxkkOO00KXXNNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWNNNXXKK00Okkxxdoollc::::;;;;;:::cccllllooooddddxxxkkkkOOOOO
''''''''''''''''''''''''''''',',''''''''''........................'''''''''''',,,,,;;;:::ccllloooddddddddooolllcc::;;;;,,,,,,,'''''''''...........................'''''''''''.........''''''',,,,,;;;;::::::;;;;,,,''''...................................................''''''''''''''''''''''''....'''''...................................................................'''''''''''''''',,,,,;;::ccloddxxkkkkkkkkkxxxdddoooooooooooddddxxkkOO00KXXNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWNNXXXK00Okkxxdoolcc:::;;;;;;;;:::ccccllloooodddxxxkkkOOOOO
''''''''''''''''''''''',,,,,,,,,,,,,,''''''.....................''''''''''''''',,,,;;;:::cclllooddddxxxxddddooolllcc:::;;;;,,,,,,,''''''...........................'''''''''''.........''''''',,,,;;;;;::::;;;;;;,,,''''..................................................'''''''''''''''''''''''............................................................................''''''''''''''''''',,,,,;;::clloodxxxxkkkkxxxxddddoooooooooooddddxxkkOO0KKXXNNWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWNNXXKK00Okkxxdoollcc::::;;;;;:::ccccllloooodddxxkkkkOOOOO
.'''''''''''''''''''',,,,,,,,,,,,,,,,,,'''''''..................''''''''''''''',,,,,;;;::ccclloodddxxxxxxxxxdddooollccc:::;;;;,,,,,,'''''.......................''''''''''''''...........'''''',,,,;;;;;;::;;;;;;,,,,,''''................................................''''''''''''''''''''''............................................................................'''''''''''''''''''''',,,,;;;::clloodddxxxxxxxxxddddooooooooooddddxxkkOO00KXXNNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWNNNXXKK0OOkkxxddoollcccc:::ccccccllloooodddxxxkkkkOOOOOO
''''''''''''''''''',,,,,,,,,,,,,,,,,,,,,,''''''................'''''''''''''''',,,,,;;;::ccclloodddxxxxxkxxxxxxdddoolllcc:::;;;;,,,,,'''''.....................''''''''''''''''............''''',,,,;;;;;;:::;;;;;,,,,,'''''..............................................'''''''''''''''''''''''...........................................................................''''''''''''''''''''''''',,,;;;:ccllloodddddxxxxdddddddooooooodddddxxkkOO0KKXXNNNWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWNNNXXXK00OOOkkxxdddooollllllllooooddddxxxkkkkkkOOOOOOO
'''''''''''''''''',,,,,,,,,,,,,,,,,,,,,,'''''''''..............'''''''''''''',,,,,,,;;;;::ccllooddxxxxkkkkkkkkkxxxddooolccc::;;;;,,,,'''''....................''''''''''''''''''.............'''',,,,;;;;;;::;;;;;;;,,,,,''''''...........................................''''''''''''''''''''''...........................................................................'''''''''''''''''''''''''''',,,;;:::ccllloodddxxxxxxdddddddoodooddddxxxkkOO0KKXXNNNWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWNNNXXXKKK00OOOkkkxxxddddddddxxxxxkkkkkkOOOOOOOOOOOO
'''''''''''''''',,,,,,,,,,,,,,,,,,,,,,,,'''''''''..............''''''''''',,,,,,,,,,,;;;:::clloooddxxxkkkkkkkkkkkxxxddoollcc::;;;;,,,,'''''.................'''''''''''''''''''...............'''',,,;;;;;;;;;;;;;;;;;,,,,,,'''''..........................................''''''''''''''''''''''..........................................................................'''''''''''''''''''''''''''''',,,;;;:::cclloodddxxxxxdddddddddddddddddxxxkOO00KKXXNNWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWNNNNXXXXKKK000OOOOkkkkkkOOOOOOOOOO0OOOOOO00OOOO
''''''''''''',,,,,,,,,,,,,,,,,,,,,,,,,''''''''''...............'''''''''',,,,,,,,,,,,,;;;::ccllooddxxxkkkkkOOkkkkkxxxddolllcc::;;;,,,,''''''...............'''''''''''''''''''''...............'''',,,;;;;;;;;;;;;;;;;;;;,,,,,''''''.........................................''''''''''''''''''''.........................................................................'''''''''''''''''''''''''''''''''',,,;;;:cclloodddxxxxxxddddddddoooooodddxxxkOO0KKXXNNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWNNNNNXXXKKKKKK000000KKKKKKKKKK00000000000
,','''''',,,,,,,,,;;;,,,,,,,,,,,,,,,'''''''''''''.............'''''''''',,,,,,,,,,,,,,;;;:::cclloodddxxxkkkkkkOkkkkxxxdoollcc:::;;;,,,,'''''..............'''''''''''''''''''''''...............'''',,,,;;;;;;;;;;;;;;;;;;;;,,,,'''''.....................'''.'...............''''''''''''''''''...................................................................'..'..''''''''''''''''''''''''''''''''''''',,,;;::ccloodddxxxxxxxdddddooooooooooddxxxkO00KXXNNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWNNNNNXXXXXXXXXXXXXXXXXXXKKKKKKKKKK0
,,,,,,,,,,,,;;;;;;;;;;;;;;,,,,,,,''''''''''''''''.............''''''''''',,,,,,,,,,,,,,;;;;::ccllloodddxxxkkkkkkkkkxxxddoollcc:::;;;,,,,''''..............'''''''''''''''''''''''................'''',,,,,;;;;;;;;;;:::::;;;;;,,,''''''.................''''''''................'''''''''''''.......................................................................'''''''''''''''''',,'''''''''''''........'''',,;;:cclloodddxxxxdddddooooolllllllooddxkOO0KKXXNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWNNNNNNNNNNNNNNNNNNXXXXXXXXXXK
;;;;;;;;;;;:::::::::::;;;;;,,,,,,''''''''''''''.''...........'''''''''''',,,,,,,,,,,,,,,,;;;::ccclllooddddxxxxxkxxxxxxddoollccc::;;;;,,,,''''............''''''''''''''''''''''''.................'''',,,,,,;;;;;;;:::::::::;;;;,,,'''''''..........''''''''''''''.................''''''.''............................................''..'''''.....................''''''''''''''''',,,''''''''''...........'''',,;::clloodddddddddddooollllccccllloodxxkO0KKXXNNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNNNNN
::::::::::ccccccccccc:::::;;;;,,,,'''''''''''''..............'''''''''''''',,,,,,,,,,,,,,,;;;;::cccclllooodddddxxxxxxdddooollccc:::;;;,,,,'''''..........''''''''''',,,,''''''''''..................''''',,,,,,;;;;::::::::::;;;,,,,''''''''........'''''''''''''''........................................................................'''''''.'...............''.'''''''''''''''''',''''''''''...............'',,;::ccloooddddddddoooolllccccccclllodxxkO00KXXNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNN
llcllllllllllllllllllccc::::;;;,,,,'''''''''''''............'''''''''''''''''',,,,,,,,,,,,,;;;;;::::cccclllooooddddddddoooollcccc:::;;;;,,,,'''''........'''''''''',,,,,,''''''''''..................'''''',,,,,;;;;::::::::::;;;,,,,''''''''.'''...''''''''''''''''.......................................................................'''''''''''..............''''''''''''''''''''''''''''''..................'',;;:ccllooooddddoooolllcccc:::ccclloddxkOO0KKXNNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
ooooooooodooooooooooolllccc:::;;,,,,''''''''''''..'.........'''''''''''''''''''''',,,',,,,,,,,,;;;;;::::ccccllllooooooooollllccccc::::;;;;,,,'''''........'''''''',,,,,,,,'''''''''....................''''',,,,,;;;:::::::::::;;;,,,,''''''''''''''''''''''''''''''''.....................................................................''''''''''''..............'''''''''''''''''''''''''''''...................'',;;:ccllloooooooooollcccc::::::cccloodxkkO00KXXNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
xxxxxxxxxxxxxxxdddddoooolllcc:::;;,,,,'''''''''''...............''''''''''''''''''''''''',,,,,,,,,,,;;;;;::::cccccllllllllllcccccccc::::;;;,,,'''''.......'''''''',,',,,,,''''''''''...................'''''',,,,,;;;::::::::::;;;,,,,,'''''''''''''''''''''''''''''''......................................................................''''''''''''............'''''''''''''''''''''''''''''.....................'',;;::clllloooooollllccc::::::::ccclloddxkOO0KXXNNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMMMMMMM
OOOOOOkkkkkkkkkxxxxxdddooollccc::;;;,,,''''''''''......................'''''''''''''''''''''''''',,,,,,,,;;;;;:::::ccccccccccccccccc:::::;;;,,,'''''.......'''''''''''''',,'''''''''.....................''''',,,,,;;;;::::::::;;;;,,,,,,'''''''''''''''''''''''''''''........................................................................'''''''''''''........'''''''''''''''''''''''''''''''....................'',,;;:ccclllllllllllcccc::::::::::cclloodxkkO00KXXNNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMM
00000000OOOOOkkkkkkxxxxdddoollcc::;;;,,,'''''''..............................'''''''''''''''''''''''''''',,,,,;;;;;;:::::::::::cccccc:::::;;;,,,'''''......'''''''''''',''''''''''''.....................'''''',,,,,;;;;;;::;;;;;;;;,,,,,,,'''''''''''''''''''''''''''..........................................................................'''''''''..........''''''''''''''''''''''''''''''''....................'',,;::ccclllllllllcccc:::::::::::::cclloddxkOO0KKXXNNNWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNNNWWWWWWWWWWWMMMMMMMMMMMMMMMMMM
KKKKKK000000OOOOOkkkkxxxxdddoollc::;;;,,,''''''....................................................''''''''''',,,,,,;;;;;;;;::::::::::::::;;;,,,'''''.......''''''''''''''''''''''''......................''''''',,,,,;;;;;;;;;;;;;;;;,,,,,,,,,,,,,',,,,,,,,''''''''''...........................................................................''''.''''..........''''''''''''''''''''''''''''''''...................'',,;;::ccclllllllccccc::::::::::::::cclloodxkkOO0KKKXXNNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNNNNNNNNNNNWWWWWWWWMMMMMMMMMMMMMMMMMM
KKKKKKKKK00000OOOOOkkkkxxxddooolcc::;;,,,'''''............................................................''''''''',,,,,,,;;;;;::::::::::::;;;,,,''''.........'''''''''''''''''''''''......................''''''',,,,,,;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,,,,'''''''''................................................................................''............''''''''''''''''''''''''''''''''...................'',,;::ccccllllllccccc:::::::::::::::ccllloddxxkkOO00KKKXXNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWNNNNNNNNNNNNNNNNNNNNNXXXXXXNNNNNNWWWWWWMMMMMMMMMMMMMMMMMM
XXXXXKKKKK00000OOOOOkkkkxxxddoollcc::;;,,,''''..................................................................'''''''',,,,,;;;;;:::::::::;;;,,,''''...........''''''''''''''''''''''........................'''''',,,,,,;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,'''''''..................................................................................'........''.''''''''''',,',,'''''''''''''''....................',,;;::cccclllllccccccc::::::::::::::cclllloodddxxkkOOO00KXXNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWNNNNNNNWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWNNNNNNNNNNNNNNNNNNNNNNNXXXXXXXXXXXNNNNWWWWWWWMMMMMMMMMMMWWWWW
XXXXXXKKKKKK00000OOOkkkkxxxdddoollc::;;,,,''''......................................................................''''''',,,,;;;;::::::::;;;;,,,'''''...........'''''''''''''''''''''........................''''''',,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,'''''..................................................................................'''......''''''''''',,,,,,,,,''''''''''''''...................'',,;::ccclllllllcccccccc:::::::::::ccccllllooooddddxxxkkO00KXXNNWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWNNNNNNNXXXXXXXXXXNNNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWNNNNNNNNNNNNNNNNNNNNNNNXXXXXXXXXXXXXXNNNNWWWWWWWWWWMWWWWWWWWWW
XXXXXXXKKKKKK0000OOOkkkkxxxdddoollcc:;;;,,'''''.......................................................................''''''',,,,;;;;::::::;;;;;,,,'''''............'''''''''''''''''''..........................''''''',,,,,,;;;;;;;;:::::::::::;;;;;;;;;;,,,,,,,'''''...............................................................................'''''''''''''''''''',,,,,,,,,,,,'''''''''''''..................'',,;::cccllllllllllccccccccc:::cccccccclllllloooooooooddxxkO00KXNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWNNNNXXXKKK0000000KKKKXXNNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWNNNNNNNXXXXNNNNNNNNNNNNNNXXXXXXXXXXXXXXXXNNNNNWWWWWWWWWWWWWWWWWW
XXXXXKKKKKKK0000OOOOkkkxxxdddooollcc::;;,,,'''''........................................................................'''''',,,,;;;;:::::;;;;;,,,,,'''''''...........''''''''''''''''''..........................'''''',,,,,,;;;;;:::::::::::::::::::;;;;;;;;,,,,,''''..............................................................................'''''''''''''''''''',,,,,,,,,,,,,,,,''''''''''................'',,;::cclllllllllllccccccccccccccccccclllllllllllllllllooodxkkO0KXXNNWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWNNNXXXKK00OOkkkkkkkOO00KKXXNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWNNNNNXXXXXXXXXXXNNNNNNNNNNNNXXXXXXXXXKKKKKXXXXXNNNNWWWWWWWWWWWWWWWW
KKKKKKKKKKK0000OOOkkkkxxxdddooollccc::;;,,,''''''...................'....................................................'''''',,,,;;;;;:::::;;;;;,,,,,'''''''''.......'''''''',,,,,'''''''..........................''''',,,,,;;;;:::::c::cccc::::::::::::;;;;;,,,,,,''''...........................................................................''''''''''''''''''''',,,,,,,,,,,,,,,,,,,,,'''''''............''',;;::cccllllllllllllccccccccccccccccllllllllllllllllcllllloddxkO0KKXNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWNNXXKK0OOkxxdddddddxkkO00KXXNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWNNNNXXXXXXKKKKXXXXXXXXNNNNNXXNXXXXXXXXXXXKKKKKXXXXXXXNNNNNWWWWWWWWWNNN
000000000000OOOOkkkkxxxxdddoooollcc:::;;;,,,,''''''''......''.'''''''''''''..............................................''''''',,,,;;;;::::::::;;;;,,,,,,''''''''''''''''''',,,,,,,,,''''''''.........................'''',,,,;;;:::::cccccccccccccccc:::::::;;;;;,,,,,''''''.....'''''''''''......................................................'''''''''''''''''''',,,,,,,,;;;;;,,,,,,,,,,,,,,,'''''''''''''',,,;;::cccllllollllllllccccccccccccccclllllllllllllllccccclllloodxkO00KXXNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWNNNXKK0OkxddooollooddxkkO0KKXNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWNNNXXXXKKKKKKKKKKXXXXXXXXXXXXXXXXXXXXXXXXXXXXXKKKKKKXXXXXNNNNNNNNNNNNNNN
OOOOOOOOOOOOOkkkkxxxxdddddooolllccc::;;;;,,,,'''''''''''''''''''''''''''''''''............................................'''''',,,,;;;;::::::::::;;;;;,,,,,,''''''''''''',,,,,,,,,,,,,,,,''''''........................'''',,,;;;:::cccccccccccccccccccc:::::::;;;;;;,,,,,''''''''''','','''''''..............................'''''''...........'''''''''''''''',,''',,,,,,,,,;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,;;:::ccllllllllllllllcccccccccccccccllllllllllllllllcccccccllloodxkkO0KKXNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWNNXXK0OkxddoollllooddxkkO0KKXNNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWNNNXXXKKK000000KKKKKXXXXXXXXXXXXXXXXNNNNNNNNXXXXXXXKKKKKXXXXXNNNNNNNNNNNNN
kkkkkkkkkkkkkxxxxxdddddooooollllcc:::;;;;,,,,,,''''''''''''''''',,,,,,'''''''''''.........................................'''''',,,,;;;::::::c::::::;;;;;;,,,,,,''''''',,,,,,,,;;;;;;;;;,,,,,,''''.......................''',,,;;;:::cccccclllllllccccccccc:::::::::;;;;;,,,,,,,,,,,,,,,,,,,,'''''''''''''...................''''''''''''....''.''''''''''''',,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;:::;;;;;;;;;;;;;;::::ccclllllllllllllcccccccccccccccccllllllllllllllllcccccclllooodxxkOO0KXXNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWNNXXK0OkxxdoooooooddxkkO00KXXNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWNNNNXXXKKK00000000KKKKXXXXXXNNNNXNNNNNNNNNNNNNNNNNXXXXXXXXXXXXXXNNNNNNNNNNNNN
xxxxxxxxxdddddddddoooooollllllcccc:::;;;;;,,,,,,,,,''''''''',,,,,,,,,,,,,,,'''''''''''....................................'''''',,,;;;:::ccccccccc::::;;;;;;,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;;,,,,''''......................''',,;;;::cccclllllllllllllccccccccc::::::::::;;;;;;,,,,,,;;;;;;,,,,,,'',,,''''''''..............''''''''''''''''''''''''''''''',,,,,,,,,,,,,,,,,;;;;;;;::::::::::::::::cccc::::::::::::::cccccllllllllllllcccccccccccccccccccclllllllllllllllllcccccclllloodxxkO0KXXNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWNXXK0OOkxxddddddxxxkkO00KKXXNNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWNNNNXXXKKKK00000000KKKXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXXXXXXXXNNNNNNNNNWWWN
dddddddooooooooooooollllllcccccc:::::;;;;;;,,,,,,,,,,,,',,,,,,,,,,,,,,,,,,,,,,'''''''''''''''............................'''''',,,;;;:::ccccccccccc:::::;;;;;;,,,,,,,;;;;;;;;::::::::::::::;;;;,,,'''......................''',,;;::cccclllllllllllllccccccccccccc:::::::::;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,''''.........'''''',,,,,''''''''''''''''',,,,,,,,,,,,,,,,,,,,;;;;;;::::::::::::::cccccccccccccccccccccccccccclllllllllllcccccccccccccccccccccllllllllllllllllccccccccccllloodxkO0KKXNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWNNXKK0OOkkkxxxxkkkOOO00KKXXNNNWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWNNNNXXXXKKKK00000KKKKXXXXNNNNNNNNNNNNNNNNNNNWWWWWWWWNNNNNNXXXXXXXNNNNNNNNWWWWWWW
ddooooooollllllllllllllccccccc:::::::;;;;;;;;,,,,,,,,,,,,,,,,,,,;;;;;;;;,,,,,,,,,'''''''''''''''''......................'''''',,,,;;:::cccclllcccccc:::::;;;;;;;;;;;;;;;;:::::::::ccccccccc:::;;;,,,'''....................''',,;;::cccllllloolllllllccccccccccccccccccccc::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,''''......''''',,,,,,,,,,,''''''',,,,,,,,,,,,,,,,,,,,,,,,,;;;;;:::::::::::::::ccccllllllllllllcccccccccccclllllllllcccccccccccccccccccccccccccclllllcclllcccccccccccccccllodxxkO0KXNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWNNXXKK00OOOOOOOOOO000KKXXXNNNNNWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWNNNNNXXXXXKKKKKKKKXXXXNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNNNNNNWWWWWWWWWW
oooollllllllllllllcccccccccccc::::::::;;;;;;;;;,,,,,,,,,,,,,,,,;;;;;;;;;;,,,,,,,,,,,,,,'''''''''''''..................''''''',,,,;;:::cccllllllllcccc::::::;;;;;;;;;;;;::::::::cccccccllllcccc:::;;,,'''....................'',,,;;::cclllloooollllllccccccccccccllllllccccc::::::::::::;;;;;;;;;;;;;;;;;;;;,,,,'''''''''''',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;::::::::::::::cccclllooooooolllllcccccccccclllllllccccccccccccccccclllllllccllccccccccccccccccccccc:::::cccloddkkO0KXNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWNNXXXKKK0000000000KKKXXXXNNNNNNWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWNNNNNNNNXXXXXXXXXXNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNWWWWWWWWWWWWW
oolllllllllcclllccccccccccccccc::::::::::::;;;;;;;;,,,,,,,,,,;;;;;;;;;;;;;;,,,,,,,,,,,,,,,,,,''''''''''''''''''''''''''''''',,,,;;;:::ccclllllllcccccc:::::::;;;;;;:::::::::ccccccclllllllllllccc::;;,,'''..................'',,,;;::cclllloooollllllccccccccclllllllllllllccc:::::::::::;;;;;;;;;;;;;;;;;;;;,,,,''''''''',,,,,,,,;;;,,,,,,,,,,,,,,;;;;,,,,,,,,,,,,,,;;;;;;;:::::::::::::::ccclllooooooooolllllcccccccccccclllcccccccccccccccccclllllllclllccccccccccccccccccc:::::::::ccloodxkO0KXXNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWNNNXXXKKKKKKKKKKKKKXXXXXNNNNNNNNNWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
oollllllcccccccccccccccccccccccccccc::::::::::;;;;;;;;;;;,,;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,,,''''''''''''''''''''''''''''',,,,;;;::ccccllllllcccccccc::::::::::::::::::::cccccccllllooooooooollcc::;;,,,'''...............'',,,;;:::ccllloooooolllllccccclllllooooooooollllccc:::::::::::;;;;;;;;;;;;;;;;;;;,,,,,,'',,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,;;;;;;;;::::::::::::::::ccccllloooooooolllllccccccccccclllccccccccccccccccccllllllllllllccccccccccccccccc::::::::::::ccloddxkO0KXXNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWNNNNXXXXXXXXXXXXXXXXXXXXNNNNNNNNNNNWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
llllllcccccccccllllllllcccccccccccccccccc::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,;,,,,,,,,,,,''''''''''''''''''''''''''',,,,,;;;;:::ccccllllcccccccccccccc:::::::::::::::::cccccllloooddddddddoollcc:;;;,,''''...........'''',,,;;::cclllloooooollllllllllloooodddddddooolllcccc:::::::::;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;:;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::::ccclllloooooollllllccccccccccclccccccccccccccccccccccccllccclcccclccccccccccccc::::::::::::::ccloddxkO0KKXXNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWNNNNNNXXXXXXXXXXXXXXXXXXXXXXXXXNNNNNWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
lllllllccccllllllllllllllllllllllllllcccccc::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,''''''''''''''''','''''''',,,,,;;;;:::cccccccccccccccccccccccc::::::::::::::::::cclllooddxxxxxxxxddoollcc:;;,,,'''.........'''',,,;;:::ccllllooooolllllllllooooddddxxxxdddooolllccccc:::::::;;;;;,;;;;;;;;;;;,,,,,,,,,,,,,,,;;;;;;;;;;;;;;:::::::::::::::;;;;;;;;;;;;;;;;:::::::::::;:::::::cccllllllllllllllllllcccccccccllcccccccccccccccccccccccccccccccccccccccccccccc::::::::::::::::ccloodxkOO0KXXNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWNNNNNNNXXXXXXXXXXXXXXXXXXXXXXXXNNNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWMMWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWWWWMWWWWWWWW
llllllllllllllllllllllllllllllllllllllllccccccc::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,'''''''''''''''''''''''''',,,,,,;;;;::::cccccccccccccccccccccccc::::::::;:;;:::::cclloodxxkkkkkkkkxxddoolcc::;;,,'''.......'''',,,,;;:::cclllllooooolllllloooodddxxxxxxxxdddoolllccccc::::::;;;;;,,,,,,,;;;;,,,,,,,,,,,,,,;;;;;;;;;;;;;;;::::::::::::::::::::::::::::::;;;::;;;::;::;:::::::ccccclllllllllllllccllccclcccccllccccccccccccccccccccccccccccccccccccccccccccccc:::::::::::::::ccllodxxkO0KKXNNNWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWNNNNNNNNXXXXXXXXXXXXXXKKKKKXXXXXNNNWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWMMMMMMMMMMMMMMMW
lllllllllllllllooooooooooooloolllllllllllllcccccc::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,''''''''''''''''''''''''',,,,,,,,;;;;;::::::cccc:cccccccccccccc::::::;;;;;;;;;;;::ccllodxxkkOOOOOOOkkxxdoolcc:;;,,'''......''''',,,;;;:::cccllllolllllollooooodddxxxxxxxxdddooolllcccc:::::;;;;;,,,,,,,,,,,,,,,,,,,,,,,,;,;;;;;;;;;;;;;;:::::::::::::::::::::::::::::::::;;;;;;;;;;:::::::::ccccccccllllllllllccccccccccccccclllcccccccccccccccccccccccccccccccccccccccccccc::::::::::::::::cclloodxkO00KXNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWNNNNNNXXXXXXXXXXKKKKKKKKKKKKXXXNNNNWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWMMWWMMMMMMMMMMMMMMMM
llllllllllllooooooooooooooooollllllllllllllccccccc:::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,''''''''''''''''''''''''',,,,,,,,;;;;;;::::::::::::::::::::::::::;;;;;;,,,,,,,;;;::cloddxkkOOO000OOOkkxxdollc::;,,,'''....''''',,,,;;;:::ccclllllllllllllloooooddddddddddddooolllcccc::::;;;;;,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;::::::::::::::::::::::::::::::;;;;;;;;;:::::::::::ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc:::::::::::::::::cclloddxkO0KKXXNNWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWNNNXXXXXKKKKKKKKKK0000KKKKKXXXNNNNWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWMWWMMMMMMMMMMMMMMMMMMMM
oooooooooooooooooooooooooooollllllllllllllllccccccc:::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,'''''''''''''''''''''''''''',,,,,,,,;;;;;;;;;;;;;;;;;:;;;::;;;;;;;;;,,,,''''',,,,;::clodxxkOOO00000OOkkxxdollc::;,,''''''.'''''',,,;;;::::ccccllllllllllllllllloooooodddooooolllccc::::;;;;;;,,,,,,,,,,,,,;,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;:::::::::::::::::::::::;:;;;;;;;;;;;:::::::::::cccccccccccccccccccccccccccccccccclcclcclllcccccccccccc::ccccccccccccccccccccccc:::::::::;;:::::cclloddxkO00KXNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWNNNXXXKKKK00000000000000KKKXXXNNNNWWWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWMMMMMMMMMMMMMMMMMMMMMMM
ooooooooooooooooooooooooollllllllllllllllllccccccccc:::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,''''''..''''''''''''''''''''',,,,,,,,,,;,;;;;;;,,;;;;;;;;;;;;,;,,,,,,'''''''''',,;;:cloddxkkOOO0000OOkkxxdollc::;,,,'''''''''',,,,;;;;::::ccccccccccccccccccccccllllllooolllllccc::::;;;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;,;;;;;;;;::::::::::::::::;;;;;;;;;;;;;;;::::::::::::::::::cccccccccccccccccccccccccccccccllllllcccccccccc::::::ccccccccccccccccccccc:::::::;;;;:::::cclloddxkO00KXNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWNNNXXKKK000OOOOOOOO00000KKKXXXNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
ddddddddddoooooooooooooollllllllllllllllllccccccccc::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,'''''''..'''''''''''''''''''''''',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,''''''....''',,;;:cloddxkkkOOOOOOOkkkxddolcc::;;,,'''''''',,,,,;;;;:::::::cccc:::::::::::::::::cccccllllllcccc:::;;,,,,,,'''',,,,,,,,,,,,,,,'''''''''''''',,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::::::::::::::::::cccccccccccccc:ccccccccccllllllllllcccccccc::::::ccccccccccccccccccccc::::::;;;;;;;:::cccloodxxkO00KXNNNWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWNNXXKK000OOOOOOOOOO0000KKKXXXXNNNNNNNWWWWWWWWNNNWWWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
xxxxxxddddddooooooooollllllllllccccccccccccccccccc::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,''''''''''''''''''''''''''''''''''',,'',,,,''''''''''''''''''''''''''''......'''',;;:cllodxxkkOOOOOOkkkxxddolcc::;;,,,,,',,,,,,,;;;;;:::::::::::::;;;;;;;,,,,;;;;;:::cccccccccc:::;;;,,,,'''''''''',,,,,,,,,'''''''''''''''''''''''''''''',,,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::::::::::::::::::::::::ccccccccclllllllllllccccccc::::::ccccccccccccccccccccc::::::;;;;;;;::::ccllooddxkO00KXXNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWNNXXKK00OOOOOOOOOO000KKKKXXXXNNNNNNNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
xxxxxxxxxddddooooolllllllllccccccccccccccccccccc::::::::::::::;;;;;;;;;;;;;;;;;;;;;:::::::;;;;;,,,,'''''''''''''''''''''''''''''''''''''''''''''''''''''...'''''''''''''''.......''',,;;:ccloddxxkkOOOkkkkxxddoolcc::;;;,,,,,,,,,,,;;;;;;;::::::;;;;;;,,,,,,'''',,,,,;;:::ccccccccc:::;;;,,'''''''''''',,,,''''''''.........''''''''''''''''''''''',,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;::::;;::;;::::::::::::::::::::::::::ccccccccllllllllllllccccccc:::cccccccccccccccccccccccc:::::;;;;;;;;::::ccclooddxkOO0KXXNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWNNNXXKK000OOOO00000KKKKXXXXXNNNNNNNNNXXXXXXXXXXNNNNNNNNNWWWWWWWWWWWWMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWNNNNNNNNWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMWWMMWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
kkkkxkxxxxdddoooollllllcccccccccccccccccccccccc::::::::::::;;;;;;;;;;;;;;;;;;;;;;::::::::::;;;;;,,,,''''''''''''''''''''''''''''''''''''''''''''................''''''''''........''',,;;:ccloddxxkkkkkkkkxxxddoolcc:::;;;,,,,,,,,,,;;;;;;;;;;;;;;,,,,,''''''''''''',,;;:::cccllllccc::;;,,,'''''''''''''''''''''...............................'''''''''''''''''',,,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;:::::::::::::::::::::::::cccccccccclllllllllccccccccccccccccccccccccccccccccc:::::::;;;;;;::::::ccclloodxkOO0KXXNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWNNNXXXKKKKKKKKKKKKKXXXXXXXXXXXXXXXXXXXXXXXXXXXXXNNNNNWWWWWWWWWWWWWWWMMMMMMMMMMMMMMWWWWWWWWNNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
kkkkkkkxxxdddooollllcccccccccccccccccccccccc::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;:::::::::;;;;;,,,,,''''''''''''''''''''''''''''''''''''''.......................''''''''.........''',,;;:clloodxxkkkkkkkkxxxddoollcc::;;;;,,,,,,,,,;;;;;;;;;;,,,,,,'''''......'''',,;;;:ccclllllllccc::;;,,''''''''''''''''''.......................................'.'''''''''''''',,,,,,,,,;;;;;;;;;;;;;;;;;;;;;::::::::::::::::::::::::ccccccccccllcllllllccccccccccccccccccccccccccccccccc::::::::;::::;:::::ccclloodxkOO0KXXNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWNNNNXXXXXXXXXXXXXXXXXXXXXXXXXXXKKKKKKKKXXXXXXNNNNNWWWWWWWWWWWMMMMMMMMMMMMMMMMWWWWWWWNNNNNXXXXXXXNNNNNNNNNNNWWWWWWWWWWWWMMMMMMMMMMMWWWWWWWWWWWWWWWNNNNNNNWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWW
kkkkkkxxxxdddooolllcccccccc:ccccccccccccc::::::::::::::::::;;;;;;;;;;;,,;;;;;;;;;;:::::::::;;;;;,,,,,,''''''''''''''''''''''''''''''''''............................'''''''.........''',,;;:clloddxxxkkkkkkkxxxddoollcc:::;;;,,,,,,,,,,,;;;;,,,,,,,'''''.........''',,;;::cclloooooolllcc:;;,,'''''...............................................................''''''',,,,,,,;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::::::::cccccccccccccccclllcccccccccccccccccccccccccccccccccc::::::::::::::::::::cccloodxkkO0KKXXNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMWWWWWWNNNNNNNNNXXXXXXXXXKKKKKKKKKKKKKKKKKXXXXNNNNWWWWWWWWWWWWMMMMMMMMMMMMMMMWWWWWWWNNNXXXXXXXKKXXXXXXXXNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNNNNNNNNNWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWW
xxxxxxxxxxddooollllccccc:::::::cccccccccc:::::::::::::::::;;;;;;;;;,,,,,,,;;;;;;;;;;;;::;;;;;;;;;,,,,,,,,''''''''''''''''''''''''''''................................''''............''',,;::clloddxxxkkkkkkkkxxxddoollc::;;;,,,,,,,,,,,,,,,,,,,,,''''...........''',,;;::clloooddddooolcc::;;,,'''..................................................................''''',,,,,,,,,,,;;;;;;;;;;;;;;;;;:::::::::::::::::::::::cccccccccccccccclccccccccccccccccccccccccccccccccccc:::::::::::::::::::::cccloodxxkO00KXXNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWNNNNXXXXKKKK0000000000000KKKXXXNNNNWWWWWWWWWWMMMMMMMMMMMMMMMMWWWWWWWNNNXXKKKKKK000KKKKKXXXXNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNXXXXXKKKKKXXXXXNNNNWWWWWWWWWWWWWWWWWWWWWWWWMMWWWWWWWMWWWWWWWWWWWW
dddxxxxxddddooollllcccc::::::::::cccccccc::::::::::::::::;;;;;;;;;,,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,'''''''''''''''''..''.....................................................''',,;::clloddxxkkkkkkkkkxxxddoollc:::;;,,,,,,,,,,,,,,,,,,,,''''''.......''''',,;;::cclooddddddddollcc:;;,,'''..................................................................''''',,,,,,,,,,,,;;;;;;;;;;;;;;;:::::::::::::::::::::ccccccccccccccccccccccccccccccccccccccccccccccccccccccccc:cc:::::::::::::::::cclooddxkOO0KKXNNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWNNNNNNNNNNWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWNNXXKKK000OOOOOOOOOOO00KKKXXNNNWWWWWWWWMMMMMMMMMMMMMMMMMMMWWWWWWNNNXXKK000OOOOOOO000KKKXXXNNNNNWWWWWWWWWWWWWWWWWWWWWWNNNNNXXXXKKKKK000000KKKXXXNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
oodddddddddoooollllcccccc::::::::cccccccc::::::::::;:;;;;;;;;;;;;;,,,,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,'''''''''''''''...''.......................................................'',,;::clloddxxkkkkkkkkkkxxddoollcc::;;,,,,,,,,,,,;;;;,,,,,''''''......''''',,,;;:ccllooddddddddoolcc:;;,,'''...................................................................''''',,,,,,,,,,,,,,;;;;;;;;;;;;;:::::::::::::::::cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc:::::::::::::::ccclloddxkkO00KXXNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWNNNNNNNNNNNNNNWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMWWWWNNXKK00OOkkkkxxxkkkOOO00KKXXNNWWWWWWMMMMMMMMMMMMMMMMMMMMWWWWWWWNNNXXK00OOkkkkkkkOOO00KKKXXXNNNNNWWWWWWWWWWWWWWWNNNNNNNNNXXXXKKK00000OOO0000KKXXXNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
llooooooooooooolllllcccccc:c::::::ccccccc:::::::;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;;;;,,,,,,,,''''''''''......'..........................................................'',,;;:clloddxxkkkkkkkkkkxxxdoollcc::;;;;,,,,,;;;;;;;;;;,,,,,''''''.....''''',,;;:ccllooddddddddoolcc:;;,,'''...................................................................''''',,,,,,,,,,,,,,;;;;;;;;;;;;;::::::::::::::::ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc:::::::::::::ccllloodxxkOO0KKXNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWNNNNNXXXXXNNNNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMWWWNXXK0OOkxxxdddddxxxkkO00KXXNNNWWWWWMMMMMMMMMMMMMMMMMMMMMWWWWWWWNNXXK00OOkxxxxxxxkkOO00KKXXXNNNNNNNWWWWWWNNNNNNNNNNNNNXXXXXXKKK0000OOOOO0000KKXXXNNNNWWWWWWWWWNNNNNNNNNNNNNNNNNNNNNWWWWWWWWWNNNN
cclllllllloollllllllllcccccccc:::::::c:::::::::;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;,,,,,,,'''''''.....................................................................''',;;:ccloddxxkkkOOOkkkkxxxdoollcc::;;;;;;;;;;;;;:::;;;;;,,,,''''.......'''',,;;::clllodddddddooolcc:;;,,'''...................................................................''''',,,,,,,,,,,,,,,;;;;;;;;;;;:::::::::::::::cccccccccccccccccccccccccccccccccccccclcccccccccccccccccccccccccccccc:::::::::::::cccllloodxxkO00KXNNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWNNNNXXXXXXXNNNNNWWWWWMMMMMMMMMMMMMMMMMMMMMMWWWNNXK0OOkxdddoooodddxkkO0KKXXNNWWWWMMMMMMMMMMMMMMMMMMMMMMMWWWWWWNNNXKK0OOkxxxdddxxkkOO00KXXXNNNNNNNNNNNNNNNNNNNNNNXXXXXXXXXXKKKKK0000000000KKKXXXNNNNNNWWWWWNNNNNNNNNNNXXXXNNNNNNNNNNNNNNNNNNNNNN
::cccccccllllllllllllllcccccc:c:::::::::::::::;;;;;;;;;;;;;;;;,;,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;,,,,,,'''''''.......................................................................'',,;::cloddxxkkkOOOOkkkxxddoolcc:::;;;;;;;:;:::::::::;;;;,,,'''''.......''',,,;;::cllooddddddooolcc::;,,,''...................................................................'''''''',,,,,,,,,,,;,;;;;;;;;;:::::::::::::cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc::::::::::::cccclllooddxkOO0KXXNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWNNNNXXXXXXXXNNNNWWWWWWMMMMMMMMMMMMMMMMMMMMWWWNNXK0OkxddoooooooddxkOO0KXXNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWNNXKK0OOkkxxxxxxxkOO00KXXXNNNNNNNNNNNNNNNNNNNXXXXXXXXXXXXXXXKKKKKKKKKKKKKKXXXXNNNNNNWWWWNNNNNNNNNXXXXXXXXXXXXXXXXXNNNNNNNNNNNNNN
;;:::::cccccccclllllllcccccc::::::::::::::;;;;;;;;;;;;;;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;,,,,,,,,,''''''..............''''......................................................'',,;::cloodxxkkkkkkkkkxxddoollcc:::;;;;;:::::::ccc:::::;;;,,''''.........''',,,;;:cclloodddddooollc::;,,,'''...................................................................''''''',,,,,,,,,,,;;;;;;;;;;;::::::::::::cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc::::::::::::ccccccllloodxxkO0KKXXNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWNNNNXXXXXXXXXNNNNWWWWWWMMMMMMMMMMMMMMMMMWWWWNXXK0OkxdoooooooddxkkO0KKXNNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWNNXXK00OOkkxxxkkkOO0KKXXXNNNNNNWWWNNNNNNNNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXNNNNNNNWWWWWWNNNNNNNXXXXXXXKKKKKKXXXXXXXXXXXXNNNNNNNNX
;;;;;;;:::::ccccccccccccccc::::::::;;;;;;;;;;;;;;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,''''',,,,,,,,,,,,,,,;;,,,,,,,,,''''''''..........'''''''''......................................................'',,;:ccloodxxkkkkkkkkxxxdoollcc:::;;;;;::::::cccccc::::;;;,,,'''..........''',,;;:cclloodddddooollc::;;,,'''...................................................................'''''''',,,,,,,,,;;;;;;;;;;;:::::::::::::::ccccccccccccccccccccccccccccccccccccccccccccccccccc::::::::cc:cccccccccccc::::::::cccccccllooddxkOO0KKXXNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWNNNXXXXKKXXXXXNNNNWWWWWWWMMMMMMMMMMMMMWWWWNNXKK0OkxxddoooodxxkOO0KXXNNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWNNXXK00OOOkkkOOO0KKXXXNNNWWWWWWWWNNNNNNNXXXXXXXXXXXXXXXXXXXXXXXXXXXNNNNNNNNNWWWWWWWWWNNNNNNXXXXXKKKKKKKKKKKKKKXXXXXXXXXXXXXXXXX
,,,,,;;;;;;:::::ccccccccc:::::::;;;;;;;;;;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,''''''''''',,,,,,,,,,,,,,,,,,,,'''''''''...........''''''''''.....................................................'',,;::cloodxxxkkkkkkxxxdoollcc::::;;;;;::::cccccccccc:::;;,,,''''.........''',,;;::cloooddddddoollcc:;;,,''.......................... ..........................................''''''',,,,,,,,;;;;;;;;;;;;::::::::::::::::ccccccccccccccccccccccccccccccccccccccccccccccccccc::::::::::ccccccccccccccc:::::::cccccllooddxxkOO0KKXNNNWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWNNNXXXKKKKKKKKXXXXNNNNWWWWWWWWMMMMMMWWWWWWWNNXKK0OkkxxddddxxkkO00KXXNNNWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWNNNXXKK00000000KKKXXNNNWWWWWWWWWWNNNNNNXXXXXKKKKKKKKKXXXXXXXXXNNNNNNNNWWWWWWWWWWWWWWNNNNNXXXXKKKKKKKKKKKKKKKKKKXXXXXXXXXXXXXXXX
,,,,,,,,,,;;;;;::::::::::::::;;;;;;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,'''''''''''''''''',''',,''''''''''''''............'''''''''''.....................................................'',,;:cclooddxxxxkxxxxddoollcc::;;;;;;;;::::ccccccccccc:::;;,,,,'''........''',,;;:cllooddddddddoolcc:;;,''.......................................................................'''''',,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;::::::::cccccccccccccccccccccccccccccccccccccccccccccccc::::::::::cccccccccccccccc::::::ccccclllooddxkkOO0KKXNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWNNNXXXKKK00000KKKKXXXNNNNWWWWWWWWWWWWWWWWWWNNNXKK00OOkkkkkkkOO00KXXXNNNWWWWWWWMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWNNNXXXKKKKKKKKKXXNNNWWWWWWWWWWWNNNNNXXXXXKKKKKKKKKKKKXXXXXXNNNNNNNNWWWWWWWWWWWWWWWNNNNNXXXKKKKKK00KKKKKKKKKKKKXXXXXXXXXXXXXXXX
,'''''',,,,,,;;;;;;;:::;;;;;;;;;,,,,,,,,,,,,,,,,,,''',,',,,,,,,,,,,,,,,,,,'''''''''''''''''''''''''''''''''''''''''............'''''''''''''''..................................................'',,;;:cclooddxxxxxxxdddoollc:::;;;;;;;;;::::cccclllllcccc:::;;,,,'''''....''',,,;::cllooddddddddoolc::;,,''........................................................................'''''',,,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;:::::::cccccccccccccccccccccccccccccccccccccccccccccccc:::::::::ccccccccccccccc::c:ccccccccllloooddxxkOO0KXXNNWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWNNNNXXKK0000OOOO0000KKKXXXNNNNNWWWWWWWWWWWWNNNNXXXKK00OOOOOOO00KKKXXNNNWWWWWWWWWWMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWNNNNXXXXXXXXXXNNNNWWWWWWWWWWWWNNNNXXXXXKKKKKKKKKKKKKKXXXXXNNNNNNNWWWWWWWWWWWWWWNNNNNXXXKKKKK0000000KKKKKKKKXXXXXXXXXXXXXXXXXX
,''''''''',,,,,,,,;;;;;;;;;;;,,,,,,''''''''''''''''''''''''''''',''',,,,,,'''''''''''''''''''.........'''''''''''...............''''''''''''''''''''............................................''',,;::cclooddddxdddddoollcc::;;;,,,,,;;;;::cccclllllllllccc::;;;,,''''''''''',,;;:ccloodddxxxdddoolcc:;,,'..........................................................................'''''',,,,,,,,,,,,,;;;;;;;;;,,;;;;;;;;::::::ccccccccccccccccccccccccccccccccccccccccccccccccccc:::cccccccccccccccccccccccccccccllllllooodxxkO0KKXNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWNNNNNXXKK000OOOkkkOOOO000KKKXXXXNNNNNNNWNNNNNNNNXXXXKKK0000000KKKXXXNNNNWWWWWWWWWWWWWWWMMMMMMMWMMWWWWWWWWWWWWWWWWWWWWWNNNNNNXXXXNNNNNNWWWWWWWWWWNNNNNXXXXKKKKKKKKKKKKKKKKXXXXXNNNNNNNNWWWWWWWWWWNNNNNNXXXKKKK00000000000KKKKKKXXXXXXXXXXXXXXXXXXX
,'''''''''''',,,,,,,,,,,,,,,,,,,''''''''''.'''''''''''''''''''''''''''''''''''''''''''''......................'.................'''''''''''',,,,,,,,,,,'''''''.......'''''''''''''''''''........''',,,;::ccllooodddddddoollcc::;;,,,,,,,,;;;:::cclllloooollllcc::;;;,,,'''''''',,,;::clloodddxxxxddoolc::;,''...........................................................................'''''''',,,,,,,,,,,,,,,,,,,,,,,,;;;;;::::ccccccccclllllllllllllllccccccccclllllllllllccccccccccccccccccccccccccccccccccccccclllllllllloodxkkO0KXNNWWWWMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWNNNNNXXKKK00OOkkkkkkkkkkOOO000KKKKXXXXNNNNNNNNNNXXXXXKKKKKKKKKKXXXNNNNNWWWWWWWWWWWWWWWWWWMWWMMMWMWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNNNWWWWWWWWWWNNNNNXXXXKKKKKKKKKKKKKKKKKXXXXNNNNNNNNNNNNNNNNNNNNNNXXXXXKKK0000000000000KKKKKXXXXXXXXXXXXXXXXXXXX
,,'''''''''''''',,,,,,,,,,,,'''''''................''''''''''''''''''''''''''''''''''............................................''''',,,,,,,;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,,;,,,,,,,,''''''''...'''',,;;::cclllooooodoooollcc::;;,,,,,,,,,,;;:::cclllooooooolllcc::;;;,,,'''''',,,;;::clloodddxxxdddoolc::;,,''............................................................................'''''''''''',,,,,,,,,,,,,,,,,,;;;:::::ccccccllllllloooooooooolloollllllloollllllllllllcccccccccccccccccccccccccccccccccclccccccccclllodxxkO0KXXNWWWWWMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWNNNNNXXXKK00OOkkkxxxxxxxkkkkOOO000KKKXXXXXXNNXXXXXXXXXXXXXXXXXXNNNNNNWWWWWWWWWWWWWWWWWWWWWWWMMWMMWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNWWWWWWWNNNNNNNXXXXKKKKKKKKKKKKKKKXXXXXNNNNNNNNNNNNNNNNNNNNNXXXXXKKKK0000000O000000KKKKKXXXXXXXXXXXXXXXXXXXX
,,,'''''''''''''''''''''''''''''..........................''''''''''''''''''''''''''..............................................'''',,,,;;;:::::ccccccccccc::::::::::::::::::::;;;;,,,'''''''''''',,;;;::cccllloooooooollcc::;;,,,''''',,,;;::cclllooooooooolllcc::;;,,,,,'''',,,;;::cclooddddxxdddoolc::;,,'''............................................. .................................''''''''',,,,,,,,,,,,,;;;;::::cccclllllooooddddddddddddddddddddddddddooooooooolllllllcccccccccccccccccccccccccccclcccccccccccloodxkOO0KXNNNWWWWMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWNNNNXXXKK00OOkkxxxxxxxxxxxkkkOOO00KKKKXXXXXXXXXXXXXXXXXXXNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWMWWMWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNNNNNNNNNNXXXXXXXKKKKKKKXXXXXXXXXNNNNNNNNNNNNNNNNXXXXXXXXXXKKKK000000000000000KKKKXXXXXXXXXXXXNXNXXXXNX
,,,,,,'''''''''''''''''''''''..............................'''''''''''''''''''''''''..............................................'''',,;;;::ccclloooooooooooooooolllloooloollllccc::;;,,,''''''''',,,,;;;:::ccclllloooolllcc::;;,,,''''''',,;;::ccllloooddooooollcc::;;;,,,,'''',,,;;;::clloodddxxdddoolcc:;,,,'''....................................... .... ........................'''''''',,,,,,,,,;;;;:::ccclllllooodddxxxxkkkkkkkkkkkkkkkkkkkkxxxxxxddddddooooolllllccccccccccccccccccccccllllccccccccccclloodxkO0KKXXNNWWWWWMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWNNNNXXKK00OkkkxxxddxxxxxxkkkOO00KKKXXXXXNXXXXXXXXNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMMMMMMMWWWWWWWWWWWWWWWMMMWWWWWWWWWWWWWNNNNNNNNNNNNNNNNNNNNXXXXXXXXXXXXXXXXXXXNNNNNNNNNNNNNNNNXXXXXXXXXXXKKKKKK0000000000000KKKKKKXXXXXXXXXXNNNNNNNNNNN
,,,,,,,,,,,,,,,'''''''''''..................................'''''''''''''''''''''.................................................''',,;;::ccllodddxxxxxkkkxxxxxxxxxxxxxxxxxddddoollc::;;,,,,,,,,,,,,,,,;;;;:::cccllllollllcc:::;,,,'''''''',,,;;::clllooooddoooollcc::;;;,,,,''''',,,;;::ccloodddxxdddoolcc:;;,,'''..................................... . ....................''''''',,,,,,,,,;;;;:::ccclllooooddxxxkkOOOO0000000000000000OOOOOkkkkkkxxxdddddooolllllllccccccccccccccccccllcccccccccccclloddxkkO0KKXXNNWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWNNNXXKK0OOkkxxxxxxxxxkkkOO000KKXXXXNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXXXXXXXXXXXKKKKKK0000000000KKKKKKKXXXXXXXXXNNNNNNNNNNNN
;;,,,,,,,,,,,,,,,,''''''''....................................''''''''''''''''....................................................'',,;;:ccloodxxkkkOOOOOOOOOOOOOOOOOOOOOOOOkkkxxxdoolcc::;;,,,,,,,,,,,,;;;;;:::ccclllllllllcc::;;,,''''''''',,,;;::cclloooodoooolllcc::;;;,,,'''''',,,;;::cclooddddddddoolcc:;;,,''''..................................................... ......................''''',,,,,,,,,,;;;;;;:::ccclloooddxxxkkOO000KKKXXXXXXXXXXXXXKKKKKK0000OOOOkkkkxxxddddoooollllllcccccccccccccccccccccccccclllloddxkkO00KKXXNNWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWNNXXKK00OOkkkkkkkkkOOO00KKKXXNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWNNNNNNNNNNWWWWWWWWNNNNNWWNNWWWWWWWWWWWWWWNNNNNNNNNNXXXXXXXXXXXXXXXXXXKKKKKKKKKKKKKKKKKXXXXXXXXXXXNNNNNNNNNNNN
;;;;,,,,,,,,,,,,,,,,'''''''....................................''''''''''''''....................................................'',,;::cloodxxkkOO0000KKKKKKKKKKK00K000KK00000OOkkxddollc::;;;;;,,,,,,,,;;;;;::::cccclllllccc::;;;,,''''''''',,,;;::ccllooooooooolllcc::;;,,,,''''''',,,;::ccloodddddddoollc::;,,,''''.......................................................................'''',,,,,,;;;;;;;;;;;;;;::::ccclllooddxxxkkO000KKXXXNNNNNNNNNNNNNNNNNXXXXXKKKK00000OOkkkxxxxdddoooolllllccccccccccccccccccccclllllooddxxkOO00KKXXNNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWNNNXKKK00OOOOOO0000KKKXXXNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXNNNNNNNNNNNWN
;;;;;;;;;,,,;;,,,,,,,''''''''..................................''''''''''''''''................................................''',,;:cllodxkkOO000KKKKKKXXXXXXXXXKKKXXXXXXXKKKK00OOkxxdollcc:::;;;;;;;,;;;;;;::::cccccllllccc:::;;,,,''''''''',,,;;::cclllooooooolllcc:::;;,,''''''''',,,;;:cclloodddddoollc::;;,,''''..............................................................''''',,,;;;;::::::::c::::::::::::::cccllloodddxxkkO00KKXXXNNNNWWWWWWWWWWWWWWWNNNNNNNXXXXXKKKK000OOkkkxxddddoolllllcccccccccccccccccclllllooooddxxkkO00KKXXXNNWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWNNXXXKKKKKKKKKXXXXXNNNNWWWWWWWWWWWWWWWWWMMMMMMMMMMMWMWWWWWWWWWWWWWWWMWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMMWWWWWWWWWWWWWWNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXXNXXXXXXXXXXXXXXXXNNNNNNNNNNNWWW
;;;;;;;;;;;;;;;,,,,,,,,'''''''''...............................'''''''''''''''''..''..........................................'',,;;:clodxkkOO00KKKKXXXXXXXXXXXXXXXXXXXXXXXXXXXXKKK0OOkkxdoollcc:::;;;;;;;;;;;;;::::cccccccccc:::;;;,,,''''''''',,,;;::ccclllooooollllcc::;;,,,''''''''',,,;::cclloooooooollc::;;,,''''.......................................'''''',,,,,,;;;;;;;;;;;;::::ccclllooooooooooooolllllllcccccllloooddxxkkOO00KKXXNNNWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNXXXXKK000OOkkxxxddooolllccccccccccccccccllllllooooddxxxkkOO00KKXXNNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWNNNNNNNNNNNNNNNNWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXXXXXXNNNNNNNNNWWWWWW
;;;;;;;;;;;;;;;;;,,,,,,,,'''''''''............................''''''''''''''''''''''''''..................................'''',,;;:clodxxkOO00KKKXXXXXXXXXXXXXXXXXXXXXXNNNNNNNNXXXXKK00OOkxddollcc::;;;;;;;;;;;;::::ccccccccc::::;;;,,,,''''''''',,,;;;::cccllllllllllcc:::;;,,,''''''''',,;;::cclllooooollcc::;;,,''''''...............................''',,,,;;::::ccccllllllllloooooodddxxxkkkkkkkkkkkkxxxddddoooolllllooooddxxkkOO0KKXXNNNWWWWWWWWWWMMMMMMMMMMMWWWWWWWWWWWNNNNXXXKKK00OOkkxxddoollllccccccccccccclllllllooooddddxxxkkOO00KKXXNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNXXXXXXXNNNNNNNNNNWWWWW
;;;;;;;;;;;;;;;;;,,,,,,,,,,,'''''''...........................'.''''''''''''''''''''''''''..............................''',,,;;:cclodxkkO00KKKXXXXXXXXXXXXXXXXXXXXXXXXNNNNNNNNNNNXXXXKK0Okkxdoolcc::;;;;;;;;;;;::::::ccccc:::::::;;;,,,,,'''''''',,,,;;:::ccclllllllcccc::;;,,,''''''''',,,;;::ccclllllllccc::;;,,,''''............................'''',,;;::cclloodddxxxxkkkkkkkkkkkOOOO0000KKKKKKKKK000OOOkkxxxdddooooooodddxxkkOO00KXXNNNWWWWWWWWMMMMMMMMMMMMMMMMMMMMWWWWWWWWNNNXXXKK00OOkkxddooollllcccccccccclllllllooooooddddxxxkkkO00KKXXNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNXXXXXXXXXNNNNNNNNNWWWW
;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,''''''............................'''''''''''''''''''''''''''..........................'''',,;;;:ccloddxkOO00KKXXXXXXXXXXXXXXXXXXXXXXXXXXNNNNNNNNNNNNNNXXKK00Okxdoolc:::;;;;;;;;;:::::::::::::::::::;;;;;,,,,,,'''',,,,,,;;;:::ccccllllccc:::;;,,,'''''''''',,,;;:::cccllllccc:::;;,,,''''''........................''',,,;::clloddxkkOOO00000KKKKKKKKKKKKXXXXXNNNNNNNNNNXXXKK00OOkkkxxdddodddddxxxkkOO00KXXNNNWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMWWWWWWWNNNXXKK00OOkxxddooolllllcccccllllllllooooooooodddddxxxkkOO00KXXNNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNXXXXXXXXXXXXXNNNNNNNNNN
;;;;;;;;;;;;;;;;,;,,,,,,,,,,,,''''''............................'.''.'''''''''''''''''''''''''....................''',,,;;;::ccloodxxkOO00KKKXXXXXXXXXXXXXXXXXXXXXXXXXXNNNNNNNNNNNNNNNXXKK0OOkxdolcc::;;;;;;;;;::::::::::::::::::::;;;;;;;;,,,,,,,',,,,,,;;;:::ccccccccc:::;;,,,''''''''''',,,;;:::ccccccccc:::;;,,,,''''''.....................'''',,;::clodxxkOO0KKKXXXXXNNNNNNNNNNNNNNNWWWWWWWWWWWWWNNNXXKK00OOkkxxdddddddddxxkkOO00KXXXNNNWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMWWWWWWNNNXXKK00OkkxxddoolllllllllllllllooooooooooooodddddxxxkkOO00KKXNNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNXXXXXXKKKKXXXXXXXXNNNNNNN
;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,''''''.................................'.'''''''''''''''',,'''''''''''.......'''''',,,;;;:::cclloodxxkkOO000KKKXXXXXXXXXXXXXXXXXXXXXXXXXXXNNNNNNNNNNNNNNXXXK00Okxdollc::;;;;;;;;::::::::::::::::::::::::;;;;;;;,,,,,,,,,,,,,;;;;:::::ccc:::::;;,,,'''''''''''',,,;;;:::cccccc::::;;;,,,,'''''....................''',,,;:cloodxkO0KKXXNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNXXK000OkkxxxddddddddxxkkOO0KKXXXNNNNWWWWWWWWMMMMMMMMMMMMMMMMMMMMWWWWWNNNXXKK00OOkxxddooolllllllllloooooooooooooooooddddddxxxkkkO00KKXXNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNXXXXKKKKKKKKKKKKKKXXXXXXXXX
;;;;;;;;;;;;;;;;;,;;,,,,,,,,,,,'''''....................................'''''''''''',,,,,,,,,,,,,,,,,,,,,,,,,;;;;:::cccllloooddxxkkkOO000KKKKKKXXXXXXXXXXXXXXXXXXXXXXXXXXXNNNNNNNNNNNXXXKK0OOkxdollc:::;;;;::::::::::::cccccc:::::::::::::;;;;;;,,,,,,,,,,,;;;;;::::::::::;;;;,,''''''''''''',,,;;;::::cccc::::;;;;,,,,'''''..................'''',,;:clodxkO0KKXNNNWWWWWWWWWWWWWWWWWWWWWWWWMMMMMWMWWWWWWWNNXXKKK00OkkxxdddddddddxxkkOO0KKXXXNNNNNWWWWWWWWMMMMMMMMMMMMMMMMWWWWWWNNNXXKK00OkkxxddoooolllllllooooooooodooooooooooddddddxxxkkOO00KKXXNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNXXXKKKK000000000000KKKKKKKKK
;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,'''''........................................''''''',,,,,;;;;;:::::::::::::::cccclllloooddddxxxxkkkOOO0000KKKKKKKKXXXXXXXXXXXXXXXXXXXXXXXXXXNNNNNNNNXXXXXKK0OOkxddollcc::::::::::::ccccccccccccccccccccc::::::;;;;;;;,,,,,,,,;;;;;;;::::::::;;;;,,,'''''''''''',,,;;;::::ccccc::::;;;;,,,'''''.................'''',;;:clodxkO0KXXNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWMMMMWWWWWWWWNNNXXKKK0OOkkxxdddoooodddxxkOO00KKXXXNNNNNWWWWWWWMMMMMMMMMMMMWWWWWWWNNNXXKKK0OOkkxxddooollllllloooooooodddddddddddddddddddxxxxkkOO00KKXXNNNWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNXXXKK0000OOOOOkkOOOOO00000000
:;;;;;;;;;;;;;;;;;;,,,,,,,,,,,'''''.........................................''''',,,,;;;::cccllllllloooooooodddddxxxxkkkkkOOOOO000000KKKKKKKKKKKKKXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXKKKK00Okkxxdoolccc::::::::::ccccccccccllcclcccccccccccc::::::;;;;;;;;;;,,;;;;;;;:::::::;;;;,,,,''''''''''',,,,;;:::ccccccc::::;;;,,,,'''''...............'''',;;:clodxkO0KXXNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNXXXKK0OOkxxddoooooooddxxkOO00KKKXXXXNNNNNWWWWWWWMWWWWWWWWWWWWNNNXXXXKK0OOkkxxddooolllllllllooooodddddddddddddddddddxxxxxkkkkOO000KKXXNNNWWWWWWMMMMMMMMMMMMMMMMMMMMMWWWWMMWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNXXXKKK00OOkkkkxxxxkkkkOOOOOOOO
:;;;;;;;;;;;;;;;;;;,,,,,,,,,,,''''''........................................'''',,,;;::ccloooddxxxxxxxxkkkkkkkOOOOO000000000KKKKKKKKKKKKKKKKKKKKKXXXXXXXXXXXXXXXXXXXXXXXXXXXXKKKKKK000OOkkxxddoollccc:::::::ccccccllllllllllllllllllllccccccc::::::;;;;;;;;;;;;;;;;;:::::::;;;;;,,,'''''''''',,,;;;:::ccccccccc:::;;;,,,''''''.............''',,,;:clodxkO0KXXNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNXXXKK0OOkxxddoooooooddxxkkOO00KKKKXXXXNNNNWWWWWWWWWWWWNNNNNNXXXXKK000OOkxxddooolllllllllllooooodddddddddddddddddxxxxxkkkkkOOO000KKKXXXNNNWWWWWWMMMMMMMMMMMMMMMMMMWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWMMMMMWMMMMMMMMMMMWMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWWWWWMWWWWWWWWWWWWWWWWWWNNNNNXXXKK00OOkkxxxxxxxxxxxkkkkkkkO
;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,''''''......................................'''',,;;:ccloddxxkkOOOO00000000000KKKKKKKKXXXXXXXXXXXXXXXXXXXXXXKKKKKKKKKKXXXXKKXKKKKKKKKKKKKKKKKK00000OOOkkxxxddoolllcccc:cccccccccclllllllllllllllllllllllllcccccccc:::::;;;;;;;;;;;;::::::::::;;;;;,,,''''''''',,,;;;::ccccccccccc:::;;;,,,'''''...........''''',,;;:clodxkO0KXNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNXXXK00OkkxddoollllooddxxkkOO0000KKKKXXXXNNNNNNNNNNNNNXXXXXKKKKK000OOkkxdddoollllccllllllloooooooddddddddddddxxxxxxkkkkOOOOOO0000KKKXXXNNNNWWWWWMMMMMMMMMMMMMMMMMMWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNWWWWWWWWWWWMMMMWWWWWWWWWWWWWWWNNNNNXXXKK00OOkkxxxdddddxxxxxxkkkkk
;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,'''''''.................................'''',,;::cllodxkkOO00KKKKKXXXXXXXXXXXXXXXNNNNNNNNNNNNNNNNXXXXXXXXXXXXXKKKKKKKKKKKKKKKKKKK0000000000OOOOkkkxxxdddooolllccccccccccccccccllllllllllloooolllllllllllllllccccc:::::::;;;;;;;::::::::::::::;;;;,,,,'''''',,,;;;:::cccccccccccc::;;;;,,,'''''..........'''',,,;:ccloxkO00KXNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNXXK00OkxddoollllloooddxxkkkOOO0000KKKKXXXXXXXXXXXXKKKKK000000OOOkkxxddoollllccccccllllloooooooddddddddddxxxxxxkkkkkOOOOOOO000000KKKXXXNNNWWWWWWMMMMMMMMMMMMMMMMMMMMMMMWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWNNNNNNNNNNXXXXXXXXXXNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNXXXXXXXNNNNWWWWWWWWMMMMMMMWWWWWWWWWWWNNNNNNXXXXKK0OOkkkxxxxxxxxxxxxxxkkkk
;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,''''''''''''''''''.''''..'..........''''',,,;::clodxxkO00KKXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXXXXXKKKKKKKKKKKKK0000000OOOOOOkkkkxxxddddoooolllllcccccccccccccccclllllllloooolooolllllllllllllllllccccc:::::::::::::::::::ccc:::::;;;;,,,,,,,,,,,;;;;::cccclllllcccc:::;;;;,,,''''''......'''''',,;;:cllodxkO0KXXNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNXXK0OOkxdoollllllloooddxxxkkkOOOO000000KKKKKKKK000000000OOOOOOkkxxdddoolllllccclllllloooooooooodddddddxxxxxkkkkkOOOOOOOOOOO000000KKKXXNNNWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWNNNNNXXXXXKKKKKKK000KKKKXXXXNNNNNNNWWWWNNNNNNNNNNNNNNNNNNNXXXXXXKKKKKXXXXNNNNWWWWWWMMMMMMMWWWWWWWWWWWWNNNNNNXXXXKK00OOkkkxxxxxxxxxxkkkkkk
;;;;;;;;;;;;;;;;;;;;;,,;,,,,,,,,,,,''''''''''''''''''''''''''''''''''''',,;;:cclodxkOO0KKXXXNNNNNNNNNNNNWWNWWNWWWWWWWWWWWWWWWWWWNNNNNNNNNXXXXXXXKKKKKKKKKK00000OOOOkkkkkxxxxdddoooolllllllccccccccccccccccccclllllllllooooollllloollllllllllllllcccccc::::::::::::ccccccccc:::::;;;;,,,,,,,,,;;;;:::cccclllllccccc:::;;;;,,,'''''''....'''''',,;;:cclodxkO0KKXXNNNNWWWWWWWWWWNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNXKK0OkkxdoollllllllooodddxxxxkkkkOOOOOOOOOOOOOOOOOOOOOOOOOOOOkkxxdddooollllllllllllooooooooooddddddddxxxkkkkkOOOOOOOOOOOOOOOOO0000KKXXXNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWNNNNXXXXKKK000OOOOOOOOOO000KKXXXNNNNNNNNNNNNNNNNNNNNNNXXXXXXXXKKKKKKKKKKKKXXNNNWWWWWWMMMMMMMMMWWWWWWWWWWWNNNNNNNXXXKKK000OOOOOkkkkkkkkkkkkk
;,,,,,,,,,,,;;;;;;;;;,;;,,,,,,,,,,,,,,'''''''''''''''''''''''''''''',,,;;::cllodxkO0KKXXNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNXXXXXXKKKKKKK00000OOOOkkkkxxxddddooollllccccccccccccccccccccccccccllllllllooolllllllllllllllolllllllllcccccccc:::::ccccccccccccccc:::::;;;;;;,,,,,;;;;::::ccclcllllllcccc:::;;;,,,,''''''....'''''',,;;::clodxxkO00KXXXNNNNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNXXK0OkxxdoollccclllllooooddddxxxxkkkkkkkkkOOOOOOOOOO0000OOOOOkkxxxddoooolllllloooooooooooooodddddddxxxxkkkkOOOOOOOOOOOOOOOOOOOO000KKXXXNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWNNNNXXKKK00OOOkkkkxxxkkkOOO00KKXXXNNNNNNNNNNNNXXXXXXXXXXXXXXXKKKK0000000KKKXXNNNWWWWWMMMMMMMMMMMWWWWWWWWWWWNNNNNNNXXXXKKKKK00000000OOOOOOOO
;,,,,,,,,,,,,,,,,,,,,,;,,,,,,,,,,,,,,,,''''''''''''''''''''''''''',,;;;:cclodxxkO0KKXNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNXXXXXKKKKK000000OOOOkkkxxxdddooolllcccccccccccccccccccccccccccccccllllllllooollllllllllllllooolllllllllccccccccccccccccccccccccccccc:::::;;;;;;;;;;;;::::ccccccllllllccccc:::;;;,,,''''''...'..'''',,,;;:cclodxxkO00KKXXXNNNNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWNNXXK0OkkxdoollcccccclllllooooddddxxxxxxkkkkkkOOOOO00000000000OOkkkxxddddoooooooooooodddddddddddddddxxxxkkkkOOOOOOOOOOOOOOOOOOOOO000KKXXNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWNNNXXKK00OOkkkkxxxxxxxkkkO00KKKXXXNNNNNNNNNNNNNXXNXNNXXXXXXXKKK000000000KKXXNNNWWWWWMMMMMMMMMMMMMWWWWWWWWWWWWWNNNNNNNNXXXXXXXKKKKKK000000O
;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,'''''''''''''''''''''''',,,;;;:cclodxkOO0KXXNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNXXXXKKKKK00000OOOOkkkxxxdddoolllcccc:::::::::cccccccccccccccccccclllllllllllllllllllllllllloooooollllllcccccccccccccccllllllcccccccc:::::::;;;;;;;:::::::cccccclllllllccccc:::;;;,,,''''''.'...''''',,,;;:ccloddxkkO00KKXXXXNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNXXK0OOkxdoollcccccccccclllooooddddxxxxkkkkOOOO0000KKKKKKKKK00OOOkkkxxxddddddddddddddddddddddddddddxxxkkkkkOOOOkkkkkkkkkkkkkOOO000KKXXNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWNNNNXXKK00OOOkkkkxxxxkkkOO00KKKXXXXNNNNNNNNNNNNNNNNNNNXXXXXKKK0000000000KKXXNNNWWWWWMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWNNNNNNNNNXXXXXKKKKK0
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,'''''''''''''''''''''',,,;;:cclodxkO00KXXNNNWWWWWWWWWWWWWWWWWNNWWWWWWNNNNWWWWWWWWWWWWWWWWWNNNNNNNXXXXKKK00000OOOOkkkkkxxdddooollcccc:::::::::::cccccccccccccccccccclllllllllllllllllllllllllloooooolllllcccccccccccccccllllllllccccccc:::::::::::;;::::::::cccccccllllllllcccc:::;;,,,'''''.....''''''',,,;;::cllodxxkOO00KKXXXXNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWMMMMWWWWWWWWNNXK00Okxdoolccc:::::cccclllloodddxxxkkkOOO0000KKKKXXXXXXXXKKK000OOOkkkkxxxxxxxxxxxxddddddddddddddxxxxkkkkkkkkkkkkkkkkkkkkkOOO000KKXXNNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWNNNXXXKK000OOOOOOkkkOOOO00KKKXXXNNNNNNNNNNNNNNNNNNNXXXXXKKK0000OOOO0000KKXXNNWWWWWMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNXXXXXX
;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,''''''''''''''''''',,,,,;::clodxkOO0KXXNNNWWWWWWWWWWWWWWNNNNNNNNNNNNNNNNNNNNNNNNNNWWNNNNNNNNNNNNXXXXKKK000OOOOkkkkkxxxxdddooollcccc::::::::::cccccccccccccccccccccclllllllllllllllllllllllllloooollllllllcccccccccccclllllllllllcccccc::::::::::::::::::::::cccccccllllllllcccc::;;;,,'''''.....''.'''''',,,;;:ccloodxkkOO00KKKXXXXNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWMMMMMMWWWWWWNNXXK0Okxdoolcc:::::::cccclloooddxxkkOOO0000KKKXXXXXNNNNNXXXXXKKK000OOOOkkkkkkkkxxxxxxxxdddddddddxxxxxkkkkkkkkkkkxxxkkkkkkOOO00KKXXXNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWNNNNXXXXKKKK00000000000KKKKXXXNNNNNNNNNNNNNNNNNXXXXXKKK000OOOOOOOOO00KKXXNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWNNNNNNN
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,'''''''''''''''''',,,,,,;::clodxkO0KKXNNNNWWWWWWWWWWWWWWNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXKKK00OOOkkkkxxxxxxddddooolllccccc:::::ccccccccclcccccccccccccccccccclllllllllcccllllllllllllllllllllllcccccccccccclllllllllccccccccc::::::::::::::::::::::cccccclllllllllccc:::;;,,,''''........'.'''''',,,;;:ccloodxxkkO000KKKXXXNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWMMMMMMMWWWWWWNNXXK0Okxdoolcc:::::::cccllooddxxkkOO000KKKKXXXNNNNNNNNNNNNNXXXXKKKK000OOOOOkkkkkkkkxxxxxxxdddxxxxxxxxkkkkkkkkkxxxxxkkkkOOOO00KKXXNNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWNNNNNNXXXXXXKKKKKKKKKKKKXXXXXNNNNNNNNNNNNXXXXXKKK000OOOkkkkkkkkOO00KXXNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWN
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,''''''''''''''''''',,,,,;;;:cllodxOO0KXXNNNWWWWWWWWWWWNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXKKK00OOOkkxxxxxddddddddoooollllcccccccccccllllllllllllllccccccccccccccccccccccccccccccllllllllllllllllllcccccccccccclllllllcccccccccccc::::::::::;::::;:::::::ccccclllllllllccc::;;,,,''''''............'''',,,;::cclooddxkkkOO00KKXXXXNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWMMMMMMWWWWWWWNNXKK0Okxdolcc:::::::ccclloddxxkOOO00KKKXXXNNNNNNNNWWWWNNNNNNNXXXXKKK00000OOOOOOkkkkkkxxxxxxxxxxxxxkkkkkkkkkkkkkkkkkOOOO00KKKXXNNNWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWNNNNNNXXXXXKKKKKKXXXXXXXNNNNNNXXXXXKKK000OOOkkkkxxxxxxkkkO00KKXNNNWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWW
;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,''''''''''''''''''',,,,,,,;;;::cloodkkO0KKXNNNNNNWWWWWNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXKKK00OOkkxxxddddddodooooooooollllllllllllllllooooooooooooolllllccccccccccccccccccccccccclllllllllllllllllcccccccllccccllllcccccccccccccccc::::::::;;;;;;;;;;:::::cccllllllllllccc:::;;,,,''''''..............''',,,;::ccllooddxxkkOO00KKKXXXNNNNNWWWWWWWWWWWWWWWWWWWWWWWMMMMMWWWWWWWWWNXXK0Okxdolcc::::::ccclloddxxkOO00KKKXXXNNNNNNWWWWWWWWWWWWNNNNNXXXXKKKK000000OOOOOkkkkkkkkkkkkkkkkkOOOOOOOOOOOOOOO0000KKKXXNNNNWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWNNNNXXXXXKKKKXXXXXXXXXXXXXXKKK00OOOkkkxxxxxdxxxxxxkkO00KXXNNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWW
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,'''''''''''''''''''''',,,,,,;;;;::cllodxkO00KKXXXNNNNNNNNNNNNNNNXXNXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXXXKK00OOkkxxdddoooooooooooooooooooooolooooooooodddddddddddddddoooollllllccccccccccccccccccccccllllllllllllllllcllllllllllcllcccccccccccccccccc::::::;;;;;;;;;;;;;::::ccclllllllllllcc::;;;,,,'''''''...............'',,,;;:::ccllooddxxkkOO0KKKXXNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWMMMMMMWWWWWNNXK0Okxdolcc::::::cclloodxxkOO00KKXXXXNNNNNNWWWWWWWWWWWWWWNNNNNNXXXXXKKKKK00000OOOOOOOOOOOOOOOOOO0000000000000KKKKKXXXXNNNNWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWNNNNXXXXXKKXXXXXXXXXXXKKK00OOOkkkxxxxxdddxxxxxkkOO0KKXXNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,''''''''''''''''''''''',,,,,,;;;;;::cllodxxkOO00KKKXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXKKK00OOkkxddooolllllllllllllloooooooooooooddddddxxxxxxxxxxxxxxxddddoooolllllllllllcccccccccccccllcccllclllllllllllllllllllllccccccccccccccccccc::::::;;;;;;,,;;;;;;:::cccclllllllllllcc::;;;,,,''''''................'''',,,,;;;:::cclloddxxkOO0KKKXXNNNNNNNWWWWWWWWWWWWWWWWWWWWWWMMMMMMWWWWNNXKKOkxdolcc::::::cclloodxxkOO00KKXXXNNNNNWWWWWWWWWWWWWWWWWNNNNNNNXXXXXXKKKKK000000000000000KKKKKKKKKKKXXXXXXXXXNNNNNNWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWNNNNXXXXXXXXXXXXXXXKKK000OOkkkxxxxxxxxxxxkkkkOO0KKXXNNNWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
,,,,,,,,,;;,,;;;,,,,,,,,,,,,,,,'''''''''''''..''''''',,,,,,,;;;;;::cclloddxxkkOO0000KKKKKKKKKKKKKKKKKXXXXXXXXXXXXXXXXXXXXKKKKKKKKKKK00OOkkxddoollccccccccccllllllloooooooddddddxxxxxxxkkkkkkkkkkkkxxxxddddooooolllllllllllllllllllllllllllllllllllllllllllllllllccccccccccccccccccc:::::;;;;;;,,,;;;;;::::ccclllllolllllccc::;;;,,,''''.....................'''',,,,,;;;::ccloodxxkOO0KKKXXXNNNNNNNWWWWWWWWWWWWWWWWWWMMMMMMMMWWWWNXXKOkxdolc:::::::cclloddxkkOO00KKXXXNNNNWWWWWWWWWWWWWWWWWWWNNNNNNNNNNXXXXXXKKKKKKKKKKKKKXXXXXXXXNNNNNNNNNNNNNWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWNNNNXXXXXXXXXXXXXKKKK000OOOkkkkkkkkkkOOOOO00KKXXXNNWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
,,,,,,,;;;;;,,,;;,,,,,,,,,,,,,''''''''''''.''''''''',,,,,,,,,,,,;;;;::ccllooddxxkkkOOO000000000KKKKKKKKKKKKKKKKKKKKKKKK000000000000OOOkkxddollccc::::::::ccccclllllooooodddddxxxxxxxkkkkkkkkkkkkkkkkkxxxdddddddooooooooooollllllllllllllllllllllllllllllllllllllllccccccccccccccccccc::::;;;;;;;;;;;;;;:::ccclllllooollllccc::;;,,,''''..........................'''''',,,;;:ccloodxxkOO00KKXXXXNNNNNNWWWWWWWWWWWWWWWMMMMMMMMMWWWWNXK0Okxolcc:::::::cclloddxkkOO00KKXXXNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNXXXXXXXXXXXXXNNNNNNNNNWWWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWNNNNNXXXXXXXXXXXXKKKK000000000000000KKKKKXXXXNNNWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
,,,,,,,,,,,,;;;;;,,;,,,,,,,,,,,''''''''''..''.''''''',,,,,,,,,,,,,,,;;;:::cclllooddxxxkkOOOOOOOO0000000000000000000OOOOOOOOOOOOOOOOkkkxddoolcc:::;;;;;;:::::cccclllloooodddddxxxxxxxxxkkkkkkkkkkkkkkkkxxxxxxxdddddddddddoooooooooooooollllllooooooloooollllllllllllllcccccccccccccccc::::::;;;;;;;;;;;;;:::cccllloooooolllcc::;;,,,'''..................................''',,;;:ccloodxxkOOO00KKKXXXNNNNWWWWWWWWWWWWWMMMMMMMMMMWWWWNXK0Oxdolc::::::::cllooddxkkOO00KKXXXNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWNNNNNNNNNNNNXXXXXXXXKKKKKKKXXXXXXXXXXNNNNNNWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,'''''''''.......'''''''',,,,,,''''''',,,,,;;;:::ccllooddxxxkkkkkkkkkkkOOOkOOOkkkkkkkkkkxxxxxxxkkkkkkxxxdoollc::;;;;;;;;;;;;::::cccclllloooodddddddxxxxxxxxxkkkkkkkkkkkkkxxxxxxxxxxxxxxxxdddddddddddddoooooooooooooooooooooloolllllllllllllllcccccccccccccc::::;;;;;;;;;;;::::ccllllloooollllcc::;,,,''......................................''',,;;:cclloddxkkOO000KKXXXNNNNWWWWWWWWWWWMMMMMMMMMWWWWNNXKOkxdlcc:::;:::cclloodxxkkOO0KKKXXXNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,'''''''''.......'''''''''','''''''''''''''',,,;;;::cclloooddddxxxxxxxxxxxxxxxxxxddddddoooooddddddddddddoollc::;;;,,,,,,,;;;;;;:::ccccllllooooodddddddddddxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxdddddddddddddddddooooooooooollllllllllllllllllllcccccccccc:::::;;;;;;;;;:::cccllllooooolllcc::;,,'''.........................................''',,;;::cllooddxxkkO00KKXXNNNWWWWWWWWWWMMMMMMMMMMWWWNNXK0Oxdolc:::::::ccllooddxkkOO00KKXXXXNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
;,,,,,,,,,,,,,,,,,,,,,,,,,,,,'''''''''..........''''''''''''''''.......''''''',,,;;::ccclllooooooooooooooooooollllllllllllllloooooooooollcc:;;;,,,,,,,,,,,;;;;;::::ccclllllooooooooddddddddddxxxxxxxxxxxxxxkkxxkkkkkkkkkkkkxxxxxxxxxxxxxxxdddddddddddooooooooooooooollllllllllllllllcccccccccc:::::;;;;;;::::cccllllooollllcc::;,,'''............................................''',,,;;::cclloodxxkOO0KKXXNNWWWWWWWWMMMMMMMMMMWWWWNXK0Okxdllc::::::cclloodxxkOO000KKKXXXXNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWMWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
;;,,,,,,,,,,,,,,,,,,,,,,,,'''''''''''............'''''''''''''...............''',,,,;;:::ccccclllllllcclccccccc:::::::::::ccclllooooolllcc::;;;,,,,''',,,,,,,;;;;;::::cccclllllloooooooodddddddddddxxxxxxxxxkkkkkkkkkkkkkkkkkkkkkkkkxxxxxxxxxxxddddddddoooooooooooooooolllllllllllllllllllcccccc:::::;;;;:::::cccllllolllllcc:;;,,''................................................'''',,,;;;::ccloddxkO0KKXNNNWWWWWWMMMMMMMMMMMWWWNNXK0kxdolcc::::ccclooddxkkOO000KKKXXXXXNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWNWWWWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
;;,,,,,,,,,,,,,,,,,,,,,''''''''''''...............''''''''''''.................'''',,,,;;::::::::::::::::::;;;;;;;;;,;;;;;:::ccclllllllccc::;;;,,,,'''''''',,,,,,;;;;::::cccclllllloooooooooddddddddxxxxxxxxxxxxxkkkkkkkkkkkkkkkkkkkkxxkxxxxxxxxxxddddddddoooooooooooooooollllllllllllllllllcccccc::::::::::::ccccllllllllccc:;;,,'''.....................................................'''',,,;::clodxkO0KXXNNNWWWWMMMMMMMMMMMWWWWNXK0Okdollcc::ccclloodxxkOO0000KKKKXXXXXXXXNNNNNNWWWWWWWWWWWWWWWWNNNNNNNNNNNNNNNNWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMM
;;;;,,,,,,,,,,,,,,,,,''''''''''''''...............'''''''''''.....................'''',,,,,;;;;;;;;;;;;,,,,,,,,,,,,,,,,,,;;;:::cccllllccc:::;;,,,,''''''''''''',,,,,,;;;;::::ccclllllooooooooddddddddxxxxxxxxxxxxxxxxxxkkxxxxxkkkkkkkxxkxxxxxxxxxxddddddddddoooooooooooooooloollllllllllllllllcccccc:::::::::::cccclllllllccc::;;,,''...........................................................'',,;:clodkO0KXXNNNWWWMMMMMMMMMMMWWWWNXK0OkxdollccccclloodxxkkOO0000KKKKKKKKKXXXXXNNNNNNNNWWNNNNNNNNNNXXXXXXKKKXXXXXXXNNNNNWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWNNNNXXXXXXXXXXXNNNNNNNNNNNWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMM
;;;;;,,,,,,,,,,,,,''''''''''''''''.................'''''''''........................'''',,,,,,,,,,,,,,,,,,,,''''''''''',,,,;;:::ccccccccc:::;;;,,,'''''''...''''''',,,,,;;;;:::ccclllllooooooodddddddxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxdddddddddddoooooooooooooooooooooooooolllllllllccccccc::::::::cccccllllllcccc::;;,,'''.............................................................'',;:lodxO0KXXNNWWWWWMMMMMMMMMWWWWNXXKOkxdoolccclllooddxxkkOOO000000000000KKKKXXXXXNNNNNNNNXXXXXXKKKK0000000000KKKKXXXXNNNNWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWMWMMWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWNNNNXXXXKKKKKKKKXXXXXXXNNNNNNNNNNWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMM
;;;,,,,,,,,,,,,,,,''''''''''''''''...................''''''..........................'''''''''''''''''','''''''''''''''',,,;;;::::cccccc::::;;;,,,''''............''''',,,,;;;:::cccclllloooooooddddddxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxddddddddddddooooooooooooooooooooooooooolllllllllcccccccccc::cccccclllllllccc:::;;,,'''..............................................................',;:codkO0KKXNNWWWWWMMMMMMMMWWWWNNXK0OkxdolllllllooddxxkkOOOOO000OOOOOOOO000KKKKKXXXXXXKKKKK0000OOOOOOOkkOOOOOO000KKKKXXXXNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWNNNNNNXXXKKKKK0000KKKKKKXXXXXXXXNNNNNNNNWWWWWWWWWWWMMMMMMMMMMMMMMMMM
;;;;,,,,,,,,,,,,,''''''''''''''''''...................................................'''''''''''''''''''''''''''''''''',,,,;;;:::::::::::::;;;,,,''''...............''''',,,;;;:::ccccllllllooooodddddxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxdddddddddddoooooooooooooooooooooooooooollllllllccccccccccccccccccllllllcccc::;;;,,'''..............................................................',;:loxkO0KKXNNWWWWWWMMMMMWWWWNNXKK0OkxdoollllloooddxxkkkkkOOOOOOkkkkkkkkkOOOO000000000OOOOOkkkkxxxxxxxxxxxxkkkOOOO000KKKKKXXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMWWWWWWWWWWWWWWWWNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNXXXXKKKK0000000000KKKKKKKXXXXXXXXXNNNNNNWWWWWWWWWWWWWMMMMMMMMMMMM
;;;,,,,,,,,,,,,,,,,'''''''''''''''''....................................................''''''''''''''''''''''''''''''',,,,,;;;;::::::::::::;;;,,,,''''.................''''',,,;;;::::cccccllllloooddddxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxdddddddooooooooooooooooodoooooooooooolllllllllccccccccccccccclllllllcccc::;;,,,'''..............................................................',;cloxkO00KXXNNNWWWWWWWWWWWNNXXK0OkxxdooollloooodddxxxxxkkkkkxxxxxxxxxxxxxxkkkkkkkkkkxxxxxxdddddddddddddddxxxxkkkkkkOOOO000000KKKKKKKKXKXXKXXKXXKKKKXKKKKKXXXXXXXXXNNNNNWWWWWWWWWWWWWWWWMMWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXXXXXXXXXXNNNNNNNNNNNWNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXXXXXKKKK0000000000000KKKKKKKKXXXXXXXXXXNNNNNNNWWWWWWWWWWWWWWMMMMMMM
,,,,,,,,,,,,,,,,,,,,,,,,,,'',,'''''''''...................................................''''''''''''''''''''''''''''',,,,,,;;;;:::::::::::;;;;,,,,''''....................'''',,,;;;;:::::ccccllloooodddddxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxddddddddoooooooooddddddddddddoooooooollllllllccccccccccccccclllllllcccc::;;;,,'''.................................................... .......'',:cloxkkO00KXXXNNNNNWWNNNNNXXK0OkkxddooolloooooddddddxxxxxxdddddoooooooooooddddddddddooooooooooooooooooooddddddxxxxxxxkkkkkkkkOOOOOOOOOO000000000000OOOOO0000000KKKKXXXXNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXKKKKKKKKKKKKKKKKKKKKKKXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXKKKKKKKKK0000000000000000KKKKKKKKKKKXXXXXXXXXXNNNNNNNWWWWWWWWWWWWWWWWW
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,''''''''...................................................'''''''''''''',,'''','''''''',,,,,,;;;;;::::::::::;;;;;,,,,'''.......................''''',,,,;;;;::::ccclllooodddddddddddddddddddddddxxxxxxxxxxxxxxxxxxxxxxxxxxddddddoooooooodddddddddddddoooooooooollllllllccccccccccccclllllllcccc:::;;,,,''''.................................................. ......',;:clodxxkOO00KKKXXXXXXXXXKK00OkkxddooolllloooooooodddddddooooolllllcccccclllllllllllllllllllllllllllllloooooooooddddddddddddddxxxxxxxxxkkkkkkkkkkkkkkkkkkkkkkkOOOO000KKXXXNNNNNNWWWWWWWWWWWWWWWWWWWWNNNNNXXXXXKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK000000000000000OOOOOOOOOOOOOOO0000000KK0KK00000000KKKKKKKKKKKKKKKKKKKKKKKKKK0000000000000000000000KKKKKKKKKKKKKKKKKKKXXXXXNNNNNNNNWWWWWWWWWWWW
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,''''''..................................................'''''''''''',,,,','''''''''''',,,,,,,;;;;;:::::::;;;;;;;,,,,,''''.........................'''''',,,,;;;:::cclllloooooooodooooooooooooodddddxxxxxkkkkkkkkkkkxxxxxxddddddoooooooodddddddddddddddooooooooolllllllcccccccccccllllllllccccc:::;;;,,,'''''................................................ ......'';;:clloddxxkkOOO00000000OOkkxxddooollllllloooooooooooooollllccccc:::::::::::::ccccccccclcllllllllllllllllllllllllllllllllllloooooooodddddddxxxxxxxxxxxxxxxxxxxxkkkkOO000KKKXXXNNNNNNNNNNNNNNNNNNNNNNNXXXXKKKKK00000000000000000000OOOOOOO000000000000OOOOOOOOOOOOOOOOOOOOOOOkkkkkkkkkkkkkkkkkkkkkkkkkkOOOOOOOOOOOOOOOOOOOOOOOO00000000000000000000000000000OOOOOOOO0000000000KKKKKKKK000KKKKKKKKXXXXXXNNNNNNNNNWWWWWW
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,''''....................................................'''''''''''',,,,'''''''''''''''',,,,,;;;;;;:::;;;;;;;;;,,,,,,''''''...........................''''',,,;;;:::cccllllllllllllllllllllllloooddddxxxxkkkkkkkkkxxxxxdddddooooooooooooodddddooooooooooooooooollllllccccccccccclllllllccccc::::;;;,,,,'''''''''........................................... .......'',;;::clllooddxxxxxxkxxxxxdddooollllllllllooooooooolllllllcccc::::;;;;;;;;;;::::::::cccccccclllllcccccccccccccccllccccccccccllllllllloooooddddxxxxxxxxxxxdddddddxxxxkkkOOO00KKKKXXXXXNNNNNNNNNNNNNXXXXXKKKK000000OOO00OOOOOOOOOOOOOkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxkkkkkkkkkxxxxxxxkkkkkkkkOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO000000000000000000000000KKKKKXXXXXXXNNNNNNNNNN
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,'''''....................................................''''''''''''''''''''''''''''''''',,,,,;;;;;;;;;;;;;;;;;;,,,,,,,''''''''...........................'''',,,;;;::::ccccccccccccc::::::ccccclloodddxxxxxkkxxxxxxxddddooooooloooooooooooooooooooooooooooooollllllccccccccccccllccccccccc:::::;;;;,,,,,,''''''''.......................................... ........'',,;;:::cccllllooooooooollllllcllllllllllooooollllllllcccc:::;;;;;;;;;;;;;;;;:::::::cccccccccccccccccccccccccccccccccccccccccccccllllooodddxxxkkkkkkkxxxxxdddddddddddxxkkkOO000KKKXXXXXXXXNNXXXXXXKKKK0000OOOOOOOOOOOOOOOOkkkkkkkxxxxxxxxxxxxxxxxxxxxxdddddddddddddddddddddddddddddddddddddddddddxxxxxxxxxxxxxxxddxxxxxxxxxxxkkkkkkkkkkOOOOOOOOOOOOOOOOOOOOOOOkOOOOOOOOOOOOOOOOOOOOOOOOOOOOO0000KKKKKKXXXXXXXXXXXXX
,,,'''',,,,,,,,,,,,,,,,,,,,,,,,,'''''....................................................''''''',,,,'''''''''''''''''''''''',,,,,,,;;;;;;;;;;;;;;,,,,,,,,,,,,,,'''''..........................'''',,,,;;;;;::::::::::;;;;;;;;;;;:::ccllloddddxxxxxxxddddoooolllllllllllllllloooooooooooooooooolllllllccccccccccccccccccccccc:::::;;;;;,,,,,,,,,,''''''........................................ ..........'',,,,;;;;;:::::::ccccccccccccccclllllloooooooolllllccccc:::;;;;,,,;;;;;;;;::::::::cccccccccccccccccccccccccccccccc::c:cccccccccclllooodxxkkkOOOOOOOOOkkkxxdddoooooooodddxxkkOO00KKKKXXXXXXXXXXKKKK000OOOOOOOkkkkkkkkkkkkkkkxxxxxxxxxxxxxxxdddddddddooooooooooooooooooooooooooooooodddddddddddddddddddddddddddddddddddxdxxxxxxxxxxkkkkkkkkOOOOOOOOOOOOOOkkkkkkkkkkkkkkkkOOOOOOkkkkkkkkkkkOOOOO0000KKKKKKKKKKKKXXXX
,''''''''''''''',,,,,,,,,,,,,,''''''.....................................................''''',,,,,,,''''''''''''''''''''''''',,,,,,,,,,,,,,,,,,,;;;;;;;;;;;,,,,,,,''''.........................''''',,,,,;;;;;;;;;;;,,,,,,,,,,,,;;;:::cclloooooooooooollllcccccccccccccccllllllllllllllllllllllllllcccccccccccccccccccccc:::::;;;;;;;;;;,,,,,,,,'''''.......................................... ...........'''''',,,,,,,,,;;;;;;;:::::::ccccllllllooolllllllllcccc::::;;;;;;;;;;;;::::::::::ccccccccccccccccccccccccccccccccccccccccccccccclllooddxkkOO00KKKKK000OOkkxxdoollllllllooddxkkOO000KKKKKKKKKKKKK000OOOOOkkkkkkkkkkkkkkkkxxxxxxxxxxdddddddddddoooooooooooooloooooollllllllloooooooooddddddddddddddddddddddddddddddddddddddxxxxxxxxxxxxkkkkkkOkkOOOOOkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkOOOOO00000000000KKKKKKK
''''''''''''''''''''',',,,,,''''''''....................................................''',,,,,,,,,,''''''''''........''''''''',,,,,,,,,,,,,,,;;;;;;;;;;:::;;;;;;,,,''''........................'''''',,,,,,,,,,,,,,,,,''''''''''',,,;;:::cccclllllllccccc:::::::::::::::cccccccccccclllllllllccccccccccccccccccccccccc::::::;;;;;;;;;;;;,,,,,,,'''''''.......................................... ..............'''''''''''''',,,,,;;;;::::cccllllllllllllllllllcccc::::;;;;;;;;;;::::::::cccccccccccccccccccccccccccccccccccccccccccccccccccllloddxkkO00KKXXXXXXKKK00OkxddollccccccllooddxkkOO000KKKKKKKK0000OOOOOkkkkkkkkkxxxxxxxxxxxxxxxddddddddddddooooooollllllllllllllllllllllllllllooooodddddddddddddddddddddddddddddddddddddddddddxxxxxxxxxkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkxkkkkkkkkOOOOOOOO0000000000000
''''''''''''''''''''''''''''''''''......................................................'',,,,,,,,,,,'''''''''............'''''''',,,,,,,,,,,,;;;;;;::::::::::::::;;;;,,,'''.....................'''''',,,,,,,,,,,,,,,,,''''''.'''''''',,,;;;;::::::::::::;;;;;;;;;;;;;;;;:::::::cccccccccccccccccccccccccccccccccccc:::::::;;;;;;;;;;;;;;;,,,,,,''''''........................................... ...............''''''''..'''''',,,;;;;::::cccccllllllllllllllccccc::::;;;;;;;;::::::cccccccccccccccccccccccccccccccccccccccccccccccccccccclllooddxkO00KXXXNNNNNXXXKK0Okxdollcc:::ccclloddxkkOO000000000000OOOOOkkkkkkkxxxxxxxxxxxxxxxxxxddddddddddooooooollllllllllllllllllllllllllllllooooodddddddddxxddxdddddddddddddddddddxxdddddddddddxxxxxxxkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkxxxkkkkkkkkOOOOOOOOOOOOOOOOOOOO
''''''''''''''''''''''''''''''''''.....................................................''',,,,;,;,,,,,''''''..............'''''''''',,,,,,,,,;;;;;:::::ccccccccccc::::;;;,,,,''..................''''',,,,,,,,,,,,,,,,,,,,''''''......'''''',,,,,,;;;;;;;;,,,,,,,,,,,,,;;;;;;;::::::::::::::::::::::::::ccccccccccc::::::::;;;;;;;;;;;;;;,,,,,,,'''''''.............................................................'''''...''''''',,,,;;;::::ccccccccllllllllcclccccc:::::;;;;;::::::cccccccccccccccc:cccccccccccccccccccccllcccccccccccccclllllooddxkO00KXXNNNNNNNNXXKK0Okxdolccc:::cclloodxxkkOOO000000000OOOOOkkkkkkkkxxxxxxxxxxxxxxxdddddddddddooooooolllllllllllllllllllllllllllllllloooooodddddddddddddddddddddddddddxxxxxxxxxxxxxxxdddxxxxxxxxkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkOOOOOOOOOOOOOOOO
''''''''''''''''''''''''''''''''''.....................................................'',,,;;;;;;,,,,'''''...............'''''''',,,,,,,,,,;;;;;::::cccclllllllllccccc:::;;;,,,''.............'''''',,,,,;;;;;;;;;;;;;;;,,,,,''''...........'''''',,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;::::::::::::::::::::::::::::::::::::;;;;;;;;;;;;;;;;,,,,,,,''''''''....................'''''''................................''''''''''''''',,,;;;;::::::ccccccccccccccccccccccc::::::;;;:::::::cccccccccccc:cc::c:cccccccccccclllllllllllllllllllccclllllllooddxkO00KXXNNNNNNNNNXXKK0OkxdollcccccclloodxxkkOOOOO00000OOOOOOOOkkkkkkkxxxxxxxxxxxxdddddddddddddoooooolllllllllllllllllllllllllllllllllllooooodddddddddddddddddddddddddxxxxxxxxxxxxxxxxxxxxxxxxxxxxxkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkOkkOOOOOOOOOOO
''''.''.'''''''''''''''''''''''''......................................................'',,;;;;;;;;,,,,''''..............'''''''',,,,,,,,,,;;;;;::::cccclllllllllllllllcccc::;;,,'''...........''',,,,,;;;;;;;;;;;;:::::::;;;,,,,'''............''''''',,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::::;;;;;;;;;;;;;;;;,,,,,,,'''''''''................'''''''''''''''...........................'''''''''''',,,,,;;;:::::ccccccccccccccccccccccccccc::::::;;:::::::cccccccccccccccc:::::ccccccccllllllllllllllllllllllllllllllllooodxkkO0KKXXNNNNWNNNNXXKK0OkkxdooolllloooddxxkkkOOOOOO000OOOOOOOOkkkkkkkkxxxxxxxxxxxddddddddddooooooooolllllllllllllllllllllllllllllllllllooooooddddddddddddddddddddddddxxxxxxxxxxxxxxxxxxxxxxxxxxxxxkkkkkkkkkkkkkkkkkkkkkkkkkkOOOOkOOkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkOOOOOOOOO
'.....'''....''''''''''''''''''''......................................................'',,;;;;;;;;;,,''''...............''''''',,,,,,,,,;;;;;;::::ccccllllllllllooolllllllcc::;;,,'''.........''',,,,;;;;;;;:::::::::::cc::::;;;,,'''............''''',,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::::::;;;;;;;;;;;,,;;,,,,,,,,,,''''''...................''''''',',,''''''.......................''''',,,,,,,,,;;;;::::cccccccccccccccccccccccccccccccc::::::::::::::cccccccccccccccc:::::::cccccccllllllllllllllllllllllllllllllllloodxxkO00KXXNNNNWNNNNNXXXKK0OkkxxdddddddddxxxkkkOOOOO000000OOOOOOOOkkkkkkkxxxxxxxxxddddddddooooooooooolllllllllllllllllllllllllllllllllllllooooooddddddddddddddddddddxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxkkkkkkkkkOOOOOOOOOOkkkkkkkkkkkkkkkkkkkkkkkkkkkkOOOOOOOOOO
.........'...'''''''''''''''''''.......................................................'',,;;;;;;;;;,,''''.............''''''',,,,,,,,,;;;;;;;;::::cccclllllllloooooooooooollcc::;;,,''......''''',,,;;;;;;::::::::cccccclccccc::;;,,'''.........'''',,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,'''''''''''...............''''',,,,,,,,,,''''......................'''',,,,;;;;;;::::ccccllllllllllllllcccccccccccccccccc:::::::::::::::ccccccccccccc:::::::::ccccccclllllllllllllllloooooolllllllllllooddxxkO0KKXXNNNNWWWNNNNNXXKK00OOkkxxxxxxxxkkkkOOOOO00000000000OOOOOOkkkkkkxxxxxxxxdddddddooooooooooollllllllllllllllllllllllllllllllllllloooooooodddddddddddddddddxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxkkkkkkkOOOOOOOOOkkkkkkkkkkkkkkkkkkkkkkkkkkkkOOOOOOOOOO
...........'.''''''.'''''''''..........................................................'',,,;;;;;;;,,,'''...............''''',,,,,,,;;;;;;;;;;::::::ccccllllllloooooooooddooollcc:;;,,'''''.''''',,,,;;;;;;:::::::cccclllllllllcc::;;,,''''....'''',,,,;;;;::::::::::::::::::::::::::;;;;;;;;;;;;;;;,,,,;;,,;;;;;;;;;;;;;;,,,,,,,,,,,,,,,,,,''''''''''''..............'''',,,,,,;,,,,,,'''....................'''',,,;;;:::::ccccllllloooooollllllllllccccccccccccccc:::::::::::::::::ccccccccccccc:::::::::cccccclllllllllllloooooooooooolllllllllooddxkkO0KKXNNNNWWWWWWWNNNNXXKK00OOOkkkkkkkkkOOOOO00000000000000OOOOkkkkkkkxxxxxxdddddddooooooooolllllllllllllllllllllllllllllllllllllllllooooooodddddddddddddddddddxxxxxxxxxxxxxxxxxxdxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkOOOOOOOOO
.............'''.''...'................................................................''',,,;;;;;,,,,'''..............'''',,,,,,,;;;;;;;;;;;;:::::::cccccllllloooooodddddddoollcc::;,,,'''''''',,,,,;;;;;;;::::::ccclllooooooollcc::;;,,''''''''',,,;;::::cccccccclllllllcccccccccc:::::::::;;;;;;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,'''''''''''''..............''',,,,;;;;;;;;,,,'''...................'',,,,;;;:::ccccclllllloooooooooollllllllcccccccccccccc::::::::::::::::::cccccccccccc:::::::::ccccccccllllllllllloooooooooolllllllllllooddxkO00KXXNNNWWWWWWWWWWWNNNXXKK000OOOkkkkOOOOOO00000000000000OOOOOkkkkkkxxxxxxdddddddooooollllllllllllllllllllllllllllllllllllllllllllllloooooooooooodddddddddddddddxxxxxdxxxdddddddddddddddxxxxxxxxxdddddddddddddxxxxxxkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkOOOOOOO
........................................................................................''',,,,;;,,,,,''..............'''',,,,,,,;;;;;;;;;;;;;;::::::ccccccllllloooodddddddddooollc::;;,,,''''',,,,,,;;;;;;;;::::::ccllooodddddoollcc:;;,,,''''',,,;;;::cclllloooooooooooooooolllllllccccc:::::;;;;,,,,,''''''',,,,,,,,,,,,,,,,,,,,,,',,,,''''''''''''''''...........'''',,,;;;;;;;;;;;,,,''................'''',,,;;;:::ccccclllllllloooooooollllllllllllccccccccccc::::::;:;::::::::::ccccccc::::::::::::::ccccccccccccllllllllllllllllllllllllllllooddxkO0KKXNNWWWWWWWWWWWWWWWNNXXKK000OOOOkOOOOOO00000000000000OOOOOkkkkxxxxxxxdddddddoooooolllllllllllllllllllllllllllllllllllllllllllllllllooooooooooooooodddddddddddddddddddddddddddddddddddddddddddddddddddddddddddxxxxxxxkkkkkkkkkkkkkxkkkkxxxxxxkkkkkkkkkkkkkkkkkkkkkk
.........................................................................................''',,,,,,,,,''''............'''',,,,,,;;;;;;;;;;;;;::::::::::cccccclllllooooddddddddddoollcc::;;,,,,,,,,,,,,;;;;;;;;;;;:::ccllloodddddddoollc::;;,,,,,,,,,;;::cllooodddddddddddddddddddooooolllllccc:::;;;,,,''''''''''''''',,,,,,,'''''''''''''''''''''''''''''''..........'''',,,;;;;;::::;;;,,,''...............''',,,,;;::::cccccccccclllllllllllllllllllccccccccccccccc:::::;;;;;;;:::::::::::::::::::::::::::::::cccccccccccccccllclllllllllccccccccclllodxkkO0KXXNNWWWWMMMMMMWWWWWWNNXXKK00OOOOkkOOOOO0000000000000OOOOkkkkkxxxxxddddddddoooooollllllllllllllcclcccclcccllllllllcllllclllllllllllllllllooooooooooooodddddddddddddddddddddddddddddddddddddddddddoooooooooddddddxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxkkkkkkkkkkkkkkkkkk
'.........................................................................................'''',,,,,,'''''..........''''',,,,,;;;;;;;;;;;;::::::::::::::ccccccllllooooddddxxxxddddoollcc::;;;,,,,,,,,;;;;;;;;;;;;;:::cclloodddxxxddoollcc:;;;,,,,,,;;::cllooddxxxxxxkkkxxxxxxxxxxxdddddooolllcc:::;;,,,'''.......''''''''''''''''''''''''''''''''''''''''''''''......''''',,,,;;;::::::;;;,,,''''..........'''',,,,;;;:::::ccccccccccccccccccccccccccccccccccccccccccc:::::;;;;;;;;;:::::::::::::::::::::::::::::::::::::::::::::cccccccccccccc:::::cccllodxkO0KKXNNWWWWMMMMMMMMWWWWWNNXXK00OOOkkkkkkOOOOO000000000OOOOOkkkxxxxxxdddddddoooooolllllllllcccccccccccccccccccccccccccccccccccccccllllllllllllllllooooooooooooooooooooooooooooooooooooooddooooooooooooooooooooodddddddxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxkxxxxkkkkkkkkkkk
''.........................................................................................''''''',''''''''......'''',,,,,;;;;;;;;;;;;;::::::::::::::::::ccccccllllooodddddxxxxdddoolllc:::;;;;;;;;;;;;;;;;;;;;;;;:::ccloodddxxxxxddoolcc::;;;;;;;;::cclooddxxkkkkkkkkkkkkkkkkkkxxxxxdddoolllc:::;;,,'''.............''''''''''''''''''''''''''''''''''''''''''''.''''''',,,,;;;::::::::;;;,,,''''......''''',,,,;;;:::::::::::::::::::::::::::::::::::::ccccccccccccc:::::;;;;;;;;;;:;;::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;:;;::::::::::::::::::ccllodxkO0KXXNWWWWMMMMMMMMMMWWWNNXXK00OOkkkkkkkkkOOOOOO0000OOOOOOkkkkxxxxxdddddddoooooooollllllcccccccccccccccccccccccccccccccccccccccccccccccclllllllllllllllloooooooooooooooooooooooooooooooooooooooooooooollooooooooddddddddxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxkkkkkkkkk
'''..........................................................................................'''''''''''''''''''''',,,,,;;;;;;;;;;;;;;:::::::::::::::::::::cccccclllloooddddxxxxddddoollccc:::;;;;;;;;;;;;;;;;;;;;;;::cclooddxxxxxxddoollc::;;;;;;;::clloddxxkkkOOOOOOOOOOOOkkkkkkkxxxddooolccc:;;;,''''..........................'''''''''''''''''''''''''''''''''''''''',,,;;;;::::::::;;;,,,'''''...''''',,,,;;;;::::::::::::::;;;;;;;;;;:::::::::::::::::ccccccccc::::::;;;;;;;;;;;;;:::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,;;;;;;;;;;;;;;;;;;;;;::cllodxkO0KXNNWWWMMMMMMMMMMWWWWNNXK00OOkkxxxxxkkkkkOOOOOOOOOOOkkkkkxxxxxdddddoooooooooolllllllcccccccccccccccccccccccccccccccccccccccccccccccccccccllllllllllllllllloooollllllllllooooooooooooooooollllllllllllllloooooodddddddxxdxxxxxxdddddddddxdxxxxxxxxxxxxxxxxkkkkkkk
''''...........................................................................................'''''''''''''''''',,,,,;;;;;;;;;;;;;;:::::::::::::::::::::::::::ccccllloooddddxxxxxdddooollccc::::::::;;;;;;;;;;;;;;;;:ccllooddxxxxxdddoollcc:::;;::::ccloddxxkkkOOOOOOOOOOOOkOkkkkkxxxddoollcc::;;,,'''.............................''''''''''''''''''''',,,''''''''''''''',,,;;;:::::::::;;;,,'''''..'''''',,,;;;;:::::ccc:::::::;;;;;;;;;;;;;;;;;;;;;::::::ccccccccccc::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;::clodxkO0KXNNWWWMMMMMMMMMMWWWWNNXKK0OkkxxxxxxxxkkkkkkOOOOOOOOkkkkkxxxdddddooooooooooolllllllcccccccc:cc:cc::ccccccccccccccccccccccccccccccccccccccccclllllllllllllllllllllllllllllllllooooolllllllllllllllllllllllllooooddddddddddxddddddddddddddddddxxxxxxxxxxxxxxxxkkkk
'''''..'................................................ .... ....... .....................'''''''''''''',,,,,;;;;;;;;;;;;;;::::::::::::::::::::;;;;;;:::::cccllloooddddxxxxxddddoolllccc::::::::::;;;;;;,;;;;;:::clloodddxxxxdddooolccc::::::ccllooddxxkkkOOOOOOkkkkkkkkkkkxxxddoollcc::;,,,'''..............................''..''''''''''''''',,,,,,,'''''''''''''',,,;;;:::::::::;;,,,''''..'''''',,,;;;:::cccccccccc::::::::;;;:::;:::::::::::::::ccccccccccccc:::::::::::::::::;;;;;;;;;;;;;;;,,;,,,,,,,,,,,,''''''''''''''',,,,,,,,,,,,,;;::clodxkOKKXNWWWWMMMMMMMMMWWWWNNXKK0OkkxxxxddxxxxxkkkkkOOOOkkkkkkxxxddddddooooooolllllllllllccccccc:::::::::::cccccccccccccccccccccccccccccccccccccccccclllllllllllllllllllllllllllllllllllllllllllllllcccccllllllllloooodddddddddddddddddddddddddddddxxxxxxxxxxxxxxkkkkk
''''''''''''''................................................ . . .................'''''''''''',,,,,,;;;;;;;;::;::;::::::::::::::::;;;;;;;;;;;;;::::ccclllooodddxxxxxddddooolllcccc::::::::;;;;;,,,;;;;::cclloodddxxxxddddoolllcccc:ccccllooddxxkkkkkkkkkkkkkkxxxxxxdddoolccc:;;,,,''''.......................................'''''''''',,,,,,,,,''''''''''''',,,;;;::::::::;;;,,''''...'''',,,;;;:::cclllllllllllcccccccc:::::::::::::::::cccccclllllllcccc::::::::::::::::::::;;;;;;;;;;;;;;;,,,,,,,,,,''''''''''''''''''',,,,,,,,,,,;;:clodxkO0KXNNWWWWMMMMMMMWWWWWNXXKK0Okkxxxxdddxxxxxkkkkkkkkkkkkkxxxxdddddooooooollllllllllllccccccc:::::::::::::::ccc::cccccccccccccccccccccccccccccccccclllllllllllllllllllllllllllllllllllllllllllccccccccccccllllllooooooddddddddddddddddddddddddddddxxxxxxxxxxxkxkkkk
'''''''''''''''''''''.................................................... . ................'''''''''',,,,,,,;;;;;;;;:::::::::::::::::::::;;;;;;;;;;;;;;;:::::ccclloooddddxxxxddddooollllccccc:::::;;;;;,,,,;;;;::cclloooddddxxxdddooolllcccccccllloodddxxxxxxxxxxxxxxddddddooollcc::;;,,,'''''...........................................'''''',,,,,,,,,''''''''..'''',,,;;;::::::::;;;,,'''''.'''',,;;:::cccllooooooooooooollllllllllllllccccccccccllllllllllllcccccc:::::::::::::::::::::;;;;;;;;;;;;;,,,,,,,,,'''''''''.'''''''''''',,',,,,;;::clodxkO0KXNNWWWWWWMMWWWWWWNNXXKK0OOkxxxxdddxxxxxxkkkkkkkkkkkxxxxdddddooooollllllllllllllccccccc::::::::::::::::::::::c::cc::ccccc:ccccccccccccccccccccclllllllllllllllllllllllllllllllllllllllllccccccccccccccclllllloooooooddddddddddddddddddddddddddxxxxxxxxxxkxkkkk
'''''''''''''''','''''''''''''''''''.......................................... ..................''''''''',,,,,,;;;;;;;;;;;;::::::::::::::::;;;;;;;;;;;;;;;;;::::cccllloodddddxxxdddddooolllccccc:::::;;;;;,;;;;;;:::ccllooodddddxxdddooolllccccccllllooooddddddddddddddoooooolllcc:::;;;,,,,'''''''.........................................'''''''',,,,''''''''....'''''',,;;;;:::::::;;,,,''''''''',,;;::ccllooodddxxxxxxxxxdddddddddddoooooooollllllllllllllllllcccccccccccccccccccc:::::::::::::;;;;;;;;;,,,,,,,'''''''..'''''''',,,',,,,,,,,;;:clloxxkO0KXXNNWWWWWWWWWWWNNNXXKK0OOkkxxxxxdxxxxxxxkkkkkkkkxxxxxdddddooooolllllllllllllllcccccccc:::::::::::::::::::::::::::::c:cccccccccccccccccccccccccllllllllllllllllllllllllllllllllllllcccccccccccccccccccclllllllooooooooooooooooddddddddddddddxxxxxxxxxxxxxxxkk
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,''''''..................................... .......................'''''''',,,,,,,,;;;;;;;;;::;:::::::::::::;;;;;;;;;;;;;;;;;:::::cccllloooddddxxddddddooollllcccc:::::;;;;;;;;;;;;::ccclloodddddxxxxdddooolllcccccclllllooooooooooooooolllllllcccc:::;;;;,,,,,,,'''''''''''''''''''''''''''..................'''''''''''''''''''.....'''''',,,;;;::::::;;;;,,''''''',,,;::ccllooddxxxkkkkkkkkkkkkkkkkkkkkxxxxxxddddooooooooolllllllccccccccccccccccccccccccccc::::::::::;;;;;;,,,,,,''''''''''''''',,,,,,,,,,,,,,;;::cloodxkO0KKXXNNNNNNNNNNNNNXXXKK00OOkkkxxxxxxxxxxxxkkkkkxxxxxxddddoooooollllllllllllllcccccccccc:::::::::::::::::::::::::::::::ccccccccccccccccccccccclllllllllllllllllllllllllllllllllllllcccccccccccccc::cccccccclllllllooooooooooooooooddddddddddddxxxxxxxxxxxxxkkx
,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,'''''...............................................................'''''''',,,,,,;;;;;;;;:::::::::::::::::;;;;;;;;;;;;;:::::::::cccllloooddddddddddddooolllccccc::::;;;;;;;;;;;;:::cccllooddddxxxxxdddooollllcccccccclllllllllllllllllllllcccccc::::::::;;;;;;;;;;;,,,,,,,,,,,,,,,,'''''''''''...............''''''''''''.............'''',,,;;;::::::;;;;,,,'''',,,;;:cccloodxxkkOOOO000000000000OOOOOOOOOOkkkxxxddddoooolllllccccccccccccccccccccccccccccccccccc::::::;;;;;,,,,,,'''''''''',,,,,,,;;;;;;;;;;;;;::ccllodxxkO00KKXXXXXXXXXXXXXXKK000OOkkkkxxxxxxxxxxxxxxxxxxxxxddddoooooollllllllllccccccccccccccc:::::::::::::::::::::::::::::::::cccccccccccccccccccclllllllllllllllllllllllllllllllllllllccccccc:::::::::::cccccccccclllllllllloooooooooooooddddddddddxxxxxxxxxxxxxxx
;;;;;;;;;;;;;;:;::::::::::::::::::;;;;,,,,''''.............................................................'''''''''',,,,,,;;;;;;;:::::::::::::::::::::::::::::::::::::::cccclloooodddddddddddooolllccc:::::;;;;;;;;;;;::::cccllloodddxxxxxxxdddoolllccccccccccccccccccccccccccccccccccccccccccccccccccc::::::::::;;;;;;;;;;;,,,,,,,''''''''''..'''...''''......................''',,,;;;;:::::;;;;,,,,,,,,;;::cccloddxkkOO0000KKKKKKKKKKKKKKKKKK0000OOOkkxxddoooolllcccccccccccccccccccccccccccccccccccccc::::::;;;;;;;,,,,,,,,,,,,,;;;;;:::::::::::;;;;::::cclooddxkkOO000KKKKKKKKKKKK0000OOOkkkkkxxxxxxxxxxxxxxxxxddddooooolllllllllllllcccccccccccccccc:::::::::::::::::::::::::::::::::::cccccccccccccccccllllllllllllllllllllllllllllllllllllcccccc::::::::::::::::ccccccccccllllllllllllooooooooooddddddddxxxxxxxxxxxxxxx
;;;;;;;;;:::::::::::::::::::::::::::;;;;,,,,'''.............................................................''''''''''',,,,;;;;;;;:::::::::::::::::::::::::::::::::::::::cccccllloooddddxdddddooollcccc::::::;;;;;;:::::::::cccllloodddxxxxxxxddooolllcccccc:::::::::::ccccccccccclllllllllooooooooooooooolllllllllcccccc:::::::;;;;;,,,,,,''''''''''''''''.....................'''',,,;;;;::::;;;;;;;,,,,;;;:cccloodxxkOO00KKKKXXXXXXXXXXXXXXXXXKKKK000OOkxxddoolllccccc::::ccccccccccccccccccccccccccccccccc::::::;;;;;;;;;;;;;:::::cccccllllllcccccccc:::ccccllooddxxkkOOOO0000000000000OOOOkkkkkkxxxxxxxxxxxxxxdddddoooollllllllllllccccccccccccccc:::::::::::::::::::::;;:::::::::::::::::ccccccccccccccccclllllllllllllllllllllllllllllllllllccccc:::::::::::::::::::::ccccccccccllllllllloooooooooooodddddddddxxxxxxxxxxx
:::;::::::::::::::::::cccccccccc:::::;;;;,,,,'''''....................................... ................'''''''''''',,,,,;;;;;;:::::::::::::::::::c:::::cc:::::::::::::ccccclllooodddxdddddooollccc::::;;;;;;;;::::::::::ccccllooddddxxxxxxxdddoolllccc::::::::::::::::ccccclllllooooddddxxxxxxxxxxxxxxxxdddddddoooooolllllccccc::::;;;;;;,,,,,,,,,,'''''''''...'...'...'....'''''',,,;;;;;:::;;;;;;;;;;;::cclloodxxkOO00KKKXXXXXXXXXXXXXXXXXXXXXKKK00OOkxxdoollccc::::::::::cccccccccccccccccccccccccccccccccc:::::::::ccccclllllooooddddddddddoooolllcccccccllloooddxxxkkkOOOOOOOO00OOOOOkkkkkkxkxxxxxxxxxxxxdddddooooolllllllllllcccccccccccccc:::::::::::::::::::::::;;:::::::::::::::::::ccc:ccccccccccclllllllllllllllllllllllllllllllllllcccc::::::;::::::::::::::::ccccccccccllllllllllooooooooooodddddddddddxxxxxxxx
::::::::::::::::::::ccccccccccccc::::;;;;,,,,,'''''''................................. ............'''''''''''',,,,,,;;;;;;;:::::::::::::::cccccccccccc:::::::::::::ccccclllooodddddddddooollcc::::;;;;;;;:::::::::ccccccllloodddxxxxxxxxdddoolllccc:::::::;;;::::::ccclllloodddxxxkkkOOOOOOOOOOOOOOOkkkkkkkxxxxxdddddoooolllllccccc::::::;;;;;;;,,,,,,'''''''''''''''''.''''''',,,;;;;;:;:;;;;;;;;::::cclloddxkkOO00KKKXXXXXXXXXXXNNNNXXXXXXXKKK00Okkxdoollcc:::::;:::::::cccccccccccccccccccccccccccclllllllllllllloooddddxxxkkkkOOOOOOOkkkkxxxddoooolllllloooodddxxxkkkkkOOOOOOOOOOOkkkkkxxxxxxxxxxxxxxxddddooooollllllllllllcccccccccccccc::c:::::::::::::::::::::::::::::::::::::::::cc::cccccccccccccclllllllllllllllllllllllloolllllllccc:::::::;;;;;;::::::::::::cccccccccllllllllllloooooooooooddddddddddddddddd
::::::::::::::::::::cccccccccccc::::::;;;;,,,,,'''''''''''''........................ ..........''''''''''''',,,,,,,;;;;;;;::::::::::::cccccccccccccc:::::::::::::::ccccllloooddddddddooollcc:::;;;;;;;;;:::::::cccccccclloooddxxxxxxxxxxddoolllcc:::::::;;;::::::ccclloooddxxkkkOOO00000KKKKKK000000000OOOOOkkkkkxxxxxdddddoooollllllccccccc:::::;;;;,,,,,,,,'''''''''''''''',,,,;;;;;;;;;;;;;;:::::cllloodxxkkO000KKKXXXXXXXXXXXNNNNNXXXXXXKKK0OOkxxdoolcc::::;;;;:::::::c:ccccccccccccccccccccllllllooooooddddxxxxkkkOOO0000KKKKKKKKKKK000OOOkkkxxxdddddddddddddxxxxkkkkkkkkOOOkkkkkkxxxxxxxxxxxxxxdddddddoooollllllllllccccccccccccccccc::c:::::::::::::::::::::::::::::::::::::::::::ccccccccccccccccclcccccccclllllllllllloooooolllllccc:::::::;;;;;:::::::::::::cccccccccclllllllllllooooooooooooodddddddddddddd
::::::::::::::::::::::::ccccccc::::::;;;;;;;,,,,,,,'''''''''''''.................. .........''''''''''''',,,,,,,;;;;;;;;;;::::::::cccccccccccccc::::::::::::::::::cccllloooddddddddooolcc:::;;;;;;;;;::::::ccccccccclllooodddxxxxxxxxxddoollccc::::::;;;:::::ccclllooddxxkkkOO000KKKKKKKKKKKKKKKKKK0000000OOOOOkkkkkkkxxxxxdddddoooooooolllllcccc:::;;;;;,,,,,''''''''''''',,,,;;;;;;;;;;;;:;:::cclllooddxkkkOO000KKKKXXXXXXXXXXXXXXXXXXXKKK00Okkxddollcc::::;;;;;:::::::ccccccccccccccccccclllooodddxxxxkkkkOOO000KKKKXXXXXNNNNNNNNNXXXXXKKK000OOOkkkxxxxxxxxxxxxxkkkkkkkkkkkkkkkkxxxxxxddddddddddddddddoooolllllcccccccccccccccccccccccccc::::::::::::::::::::::::::::::::::::::::::ccccccccccccccccccccccccccccclllllllloooooooolllllcccc::::::;;::::::::::::::::ccccccccclllllllllllloooooooooooooddddddddddddd
::::::::::::::::::::::::::::::::::::;;;;;;;;;,,,,,,,,,,,,,,,,''''''............... .........''''''''''''',,,,,,,,;;;;;;;;;;;::::::::cccccc:::::::::::::::::::::::::cccllloooddddddddoollcc::;;;;;;;;;;:::::ccccccccccllllooddxxxxxkxxxxddooollcc:::::::::::::ccclloooddxxkkOOO00KKKKXXXXXXXXXXKKKKKKKKK0000000OOOOOOOOkkkkkkkxxxxxxxxxxdddddddooollccc:::;;;,,,,'''''''''''',,,,,;;;;;;;;;;:::::ccccllooddxxkkkOO0000KKKKKKXXXXXXXXXXXXXXKKK00OOkkxdoolccc::::;;;;;:::::::ccccccccccccccccllloodddxxkkkOOO0000KKKXXXXNNNNNNWWWWWWWWWWWWNNNNNNXXXXKKK000OOOOkkkkkkkkkkkkkkOOkkkkkkkkxxxxxddddddddddddddddoooollllllccccccccccccccccccccccccc:::::::::::::::::::::::::::::::::::::::::ccccccccccccccccccccccccccccccllllllllooooooooooollllcccc:::::::::::::::::::::::ccccccccccllllllllllloooooooooooooooodddddddddd
;;;:;::::::::::::::::::::::::::::::;;;;;;;;;;;;;;;;;;,;,;;;,,,,,,''''.............. .........''''''''''''''',,,,,,,,,;;;;;;;;;;:::::::::::::::::::::::::::::::::::::::ccclloooddddddddoollcc::;;;;;;;;;:::::cccccccccccllllooddxxxxxkxxxxdddoollccc:::::::::::ccclloooddxxkkkOOO00KKKKKKXXXXXXXKKKKKKKKKK000000000000OOOOOOOOOkkkkkkkkkkkkkkkkxxxdddoollcc::;;;,,,,,,''''''',,,,,,,,;;;;;;;;;:::::cccclloooddxxxkkkOOOO0000KKKKKKKKXXXXXXXKKK000Okkxxdoolccc:::;;;;;;;::::::cccccccccccccccllooddxxkkOO00KKKKXXXXNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNXXXKKKK0000OOOOOOOOOOOOOOOOkkkkkxxxxddddddddoddddddoooooollllccccccccccccccccccccccccccc::::::::::::::::::::::::::::::::::::::::ccccccccccccccccccccccccccccccclllllllloooooooooooolllllcccc:::::::::::::::::::::ccccccccccllllllllllloooooooooooooooodddddddddd
;;::::::::::::::::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,'''.............. ...........'''''''''''''''',,,,,,,,,,,,,;;;;;;;::::::::::::::::::::::::::::::::::::::cclloodddddddddoollcc::;;;;;;;;::::::cccccccccccclllooddxxxxxxxxxxddoolllccc:::::::::ccccllloodddxxxkkkOO0000KKKKKKKKKKKKKKKKK000000000000000000OOOOOOOOOOOOOOOOOOOOOOOkkkkxxddollcc::;;;,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;::::ccccllloooodddxxxxkkkOOOO00000KKKKKKKKKKKK000OOkkxddollcc::::;;;;;;;::::::cccccccccccccllloodxxkOO00KKKXXXNNNNNNWWWWWWWWWWWWMMMMMMMWMMMMWWWWWWWWWWNNNNXXXKKKK0000000000OOOOOOOkkkkxxxdddddoooooooooooooolllllcccccccccccccccccccccccccccc::::::::::::::::::::::::::::::::::::::::ccccccccccccccccccccccccccccccclllllllooooooooooooooolllllcccc:::::::::::::::::::cccccccccccclllllllllooooooooooooooooddoooddddo
:::::::::::::::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,'''............... ..............''''''''''''''''''',,,,,,,,,,,,;;;;;;;::::::::::::::::::::::::::::;:::::ccclloooddddddddollcc:::;;;;;;;:::::ccccc:::ccccccllloodddxxxxxxxxdddoolllccccc::::::cccclllloooodddxxxkkOOO00000000000000000000000000000000000OOOOOOOOOOOOO00000000000OOOOkkxxdoollcc::;;;,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;:::::ccclllllloooooddddxxkkkOOOO00000KKKKKK0000OOOkxxdoollcc:::;;;;;;;;::::::::ccccccccclllooddxkkO00KKXXXNNNNNWWWWWWWWWWWWWWMMMMMMMMMMMMMMMMMMMWWWWWWWNNNNXXXKKKKKKK00000000OOOOkkkxxxddddooooooooooooollllllcccccccccccccccccccccccccccc:::::::::::::::::::::::::::::::::::::::ccccccccccccccccccccccccccccccccccllllllooooooooooooooooollllcccc::::::::::::::::::ccccccccccccccllllllloooooooooooooooooooooddooo
::::::::::::::::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;::::::::;;;;;,,,'''......................................''......'''''''''''''''',,,,,,,,;;;;;;;;;;;;;;;;:::::::::::::;;:::::::cccllooodddddddoollcc::::;;;::::::::::c:::::::cccccllooodddxxxxddddoooolllcccccc::cccccccclllllooooddddxxkkkOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO0000000000000OOOkkxxddollcc::;;;;,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;:::::::ccccccccclllloooddxxkkkOOOO0000000000OOOkkxxdoollcc::;;;;;;;;;;;:::::::::cccccclllooddxkkO00KKXXXNNNNWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMWWWWWWWNNNNXXXXXKKKKKKKK00000OOOkkxxxddddooooooollllllllccccccccccccccccccccccccccccccc:::::::::;;:::::::::::::::::::::::::::::cccccccccccccccccccc:cccccccccccclllllllooooooooddddoooooollllcccc::::::::::::::::ccccccccccccccclllllllloooooooooooooooooooddoooo
:::::::::::::::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;:::::::::;;;;;,,,'''.........................................................'''''''''',,,,,,,;;;;;;;;;;;;;;;;;;::;;;::::::::::ccclllooooddddooolllcc::::::::::::::::::::::::ccccclllooooddddddddoooollllccccccccccccccccccccllllllooooddxxxxkkkkkkkkkkkkkkkkkOkOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO0000000OOOOOkkkxddoollcc:::;;;;,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;::::::::::::::ccclloodddxxkkkOOOOOOOOOOOOkkxxddoollc:::;;;;;;;;;;;;;:::::::::cccccllooddxkkO00KKXXXNNNNNNWWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMMMMWWWWWWWNNNNNXXXXXKKKKKKKK0000OOOkkkxxxdddoooolllllllccccccccccc::::::::cccccccccccccc:::::::::;;;;;;;::::::::::::::::::::::::::cccccccccccccccccccc:cccccccccccccllllllllooooooddddddooooollllccc::::::::::::::::cccccccccccccccccclllllloooooooooooooooooooooooo
:::::::::::::::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;:::::::;;;;;,,,,'''...............................................................''''''',,,,,,,,,;;;;;;;;;;;;;;;;;;:::::::::ccccllllooooooooolllccccc::::::::::::::::::::::cccccllloooooooooooollllllccccccc::c::::cccccccccccccclllloodddddxxxxxxxxxxxxxxxkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkOOOOOOOOOOOkkkkkxxdddoollccc:::;;;;;;;;,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;,,;;;;;;:::cclloodddxxxkkkkkkkkkkkxxxddoollcc::;;;;;;;;;;;;;;;:::::::::ccccllloddxxkOO00KKKXXXNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNXXXXXXXKKKKKKKK0000OOOkkkxxxdddoooolllllccccccccc:c::c:::::::::ccccc:::::::::::::::;;;;;;;;;;:::::::::::::::::::::::::cccccccccccccccccccccccccccccccccllllllllloooooodddddddooooolllccc::::::::::::::::ccccccccccccccccclllllllooooooooooooooooooooooo
:::::::::::::::::::::::::::::::;;;;;;;;;;,;,,,,;;;;;;;;;:;;;:;;;;;;,,,,,'''''..................................................................''''''',,,,,,,,,,,;;;;;;;;;;;;::::::::cccccllllloooooolllllccccccccc::::::::::::::::cccccclllllllllllllllllccccccccccc::::::::::::::::::::::cccclllloooooooodddddddddddddxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxddddooolllccc::::;;;;;;;;;,,,,,,,,,'''''',,,,,,,,,,,,,,,,,,,,,,,,;;;:::cclloooddddxxxxxxxxddddoollccc::;;;;;,,,,;;;;;;;;:::::::::ccccllooddxxkOOO00KKKKXXXXXXXXXXXXXXXXNNNNNNNNNNWWWWWWWWWWWWWNNNNNNNXXXXXKKKKKKKKKK000000OOOkkkxxxddoooollllllccccccc:::::::::::::::::::::::::::::::::::;;;;;;;;;;;;:::::::::::::::::::::::::ccccccccccccccccccccccccccccccccccllllllllooooooodddddooooollllcccc::::::::::::::ccccccccccccccccccllllllloooooooooooooooooooooo
::::::::::::::::::::::::::::::::;;;;;;;,,,,,,,,,,,,;;;;;;;;;;;;;;;;,,,,,'''''''....................................................................''''''',,,,,,,,,,,,;;;;;;;::::::::cccccclllllllllllllllccccccccc:::::::::::::cccccccccccllllclllccccccccccccc:cc:::::::::::::::;;;;;;;;;:::::ccccccclllllllllloooooooooooooooooooooooooooooooddddddddddddddddoooooooollllccccc:::::;;;;;;,,,,,,,,''''''''''''',,',,,''''''''''',,,,;;;::ccclllllooooooooooooollccc:::;;;;;,,,,,;;;;;;;;;;:::::::ccccllooodxxxkkOOO000000KKKKKKKKKKKKKKKKKXXXXXXXNNNNNNNNNNNNNXXXXXXKKKKKK000000000000000OOOOkkkxxxdddoooollllllcccccccc::::::::::::::::::::::::::::::::;;;;;;;;;;;;;;:::::::::::::::::::::::cccccccccccccccccccccccccccccccccccccllllllloooooodddddoooooollllcccc:::::::::::::::::::ccccccccccccccllllllllooooooooooooooooooo
:::::::::::::::::::::::::::::::;;;;;;;,,,,,,,,,,,,,,,;;;;;;;;;;;;;,,,,,,,''''''''.....................................................................'''''''''''',,,,,,,;;;;;::::::::cccccccccllllllllllllcccccccccccccc::::cccccccccccccccccccccccccc::::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;:::::::::::cccccccccllllllllllllllllllllllllllllllllllllllllllllllllllllllcccccc::::;;;;;;,,,,,,'''''''''''''''''''''''''''''''''',,,,;;;;:::cccccccllllllllcccc::::;;;;,,,,,,,,;;;;;;;;;;;:::::::cccclloodddxxkkkkkOOOOOOOOOOOOOOOOOOOO000000KKKKKKKKKKKKKKKKKKK00000OOOOOOOOOOOOOOOOOOOOOOOkkkxxxddddooooollllllccccccccccccc:ccc::::::::::::::::::::;;;;;;;;;;;;;;;;;;::::::::::::::::::::cccccccccccccccccccccccccccccccccccccccllllllloooooooooooooooollllccccc:::::::::::::::::ccccccccccccccccclllllloooooooooooooooooo
::::::::::::::::::::::::::::::;;;;;;;;,,,,,,,,,,,,,,,,;;;;;;;;;;;;,,,,,,,,,','''''''....................................................................''''''''''''',,,,,;;;;;:::::::::cccccccclllllllllllllcccccccccccccccccccccccccccccccccc::::::::::::::::::::::;;;;;;;;;;;;,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;::::::::::::::::::::::::::::::::::::cccc::ccccccccccccccccccccccc:::::;;;;,,,,,,'''''''''''''''''''''''''''''''''''',,,,,,;;;;;;:::::::::::::::::;;;;;;,,,,,,,,,,;;;;;;;;;;;;;::::::ccclllooodddxxxxxxxxxxxxxxxxxxxxxxxxkkkkkOOOOO0000000000OOOOOOOkkkkkkkkkkkkkkkkkkkOOOOOOOkkkkkxxxddddoooooolllllllcccccccccccccccccccc::::::::::::;;;;;;;;;;;;;;;;;;;;::::::::::::::::::::cccccccccccccccccccccccccccccccccccccccclllllllooooooooooooooooollllccccccc:::::::cc::ccccccccccccccccccccclllllloooooooooooooooo
::::::::::::::::::::::::::::;;;;;;;;;,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;,,,,,,,,,,,,'''''''....................................................................''''''''''''',,,,,;;;;;;:::::::::ccccccccllllllllllccccccccccccccccccccccccccccccc:::::::::;;;;;::;;;:;;;;;;;;;;;;,,,,,,,,,,,,,,'''''''''''''',,,,,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::ccccccccc:::::;;;;,,,,,'''''''''..''''''''''''''''''''''''''',,,,,,,,,,;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,,;;;;;;;;;;;;;:::::cccclllooodddddddddddoooooooooooooddddxxxxkkkkkkkkkkkkkkkkkxxxxxxddddddddddxxxxxkkkkkkkkkkkkkxxxxxdddddoooooolllllllccccccccccccccccccc::::::::::;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::::cccccccccccccccccccccccccccccccccccccccccllllllllooooooooooooooooollllccccccccccccccccccccccccccccccccccccccclllllllooooooooooooo
;:::::::::::::::;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,,,,;;,;;;;;;;;;;;;,,,,,,,,,,,''''''.......................................................................''''''''''',,,,;;;;;;;:::::::::cccccccclllllllcccccccccccccccccccccccccccccc:::::::;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,'''''''''''''''''''''''''''''''''''',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;::::::::c::::::;;;;,,,,''''''''''.......'''''''''''''''''''',,'',,,,,,,,,,,,,,,,,,,,;,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;::::cccclllooooooooooolllllllllllllloooooddddddxxxxxxxxxxxdddddddooooooooooooodddxxxxkkkkkkkkkkkxxxxxdddddooooooolllllllcccccccccccccccccccc::::::::;;;;;;;;;;;;;;;;;;;;;::::::::::::::::::cccccccccccccccc::cc:::::cccccccccccccccclllllllllloooooooooooooooolllllccccccccccccccccccccccccccc:cc::ccccccccllllloooooooooooo
;;;;;::::::::;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;,,,,,,,,,,'''''''.......................................................................'''''''',,,,,,,;;;;;;;;:::::::cccccccccclllcccccccccccccccccccccccccccc:::::::;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,,'''''''''''..........................''''''''''''''''''''''''''',,,,',,,,,,',,,,,,,,,,;;;;;:::::::::::;;;;,,,,,'''''''''........''''''''''''''','',',,'''''''''''',,,,,,,,,,,,,,,,,,,,,,,'',,,,,,,,,,,,,,,,,;;;;;;;;;;;:::cccclllllllllllllccccccccccclllllloooooooddddddddddddoooooolllllclllllllooodddxxxkkkkkkkkkkxxxxddddddooooooollllllllllccccccccccccccccc:::::::;;;;;;;;;;;;;;;;;;::::::::::::::::::::::cccccccccccccc::::::::::cccccccccccccccccllllllllllooooooododddooooollllllcccccccccccccccccccccccc::::::::cccccclllllooooooooooo
;;;;;;;;:;::;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,,,,,,,,,,,,;,;;;;;;;;;;;;;;;;,,,,,,''''''''''''''''''''''''''''''''.............................................'''''''''',,,,,,,,,;;;;;;;;:::::cccccccccccccccccccccccccccccccccccccccc:::::::;;;;;;;;;;,,,,,,,,,,,,,,''''''''''''''''''......................................'''''''''''''''''''''''''''''''''''''',,,,,;;;;;::::::;;;;;,,,,,''''''''''.........'''''''''''',,,,,,,'''',''''''''',,,,,,,,,,,,,,,,,,,''''''''',,,,,,,,,,,,,,,,,,,,;;;;;::::cccccllllllllcccccccccccccccllllllooooooooooooooooooolllllccccccccccccllloodddxxxxxkkkkxxxxxxdddddoooooooolllllllllllcccccccccccccccccc:::::::;;;;;;;;;;;;;;;;::::::::::::::::::::cccccccccccccccc::::::::::::ccccccccccccccccllllllllllooooooddddddoooooolllllllllllllllccccccccccccc::::::::::cccccllllloooooooooo
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;,,,,,,,'''''''''''''''''''',,,,,''''''''........................................'''''''''''',,,,,,,,,,,;;;;;;;::::::ccccccccccccccccccccccccccccccccccccccc::::::;;;;;;;;;,,,,,,,,,,,,'''''''''''''''''''....................................................''''''''''''''''''''''''''''',,,,,;;;;;;;;;;;;,,,,,,'''''''''..........''''''''',,,,,,,,,,,,,''''''''''',,,,,,,,,,,,,,,,,,,,'''''''''''',,,,,,,,,,,,,,,,,,,;;;;::::cccccccccccccccccccccccccllllllllllllooooooooooollllllccc::::::::::ccclllooddddxxxxxxxxxdddddddoooooooooolllllllllllccllllclcccccccccc:::::::;;;;;;;;;;;;:::::::::::::::::::::ccccccccccccccccccc:::::::::ccccccccccccccccccclllllllllloooooddddddddooooooolllllllllllllllllllcccccccc::::::::cccccclllllllllllooo
,,,,,;;;;;;;;;;;;;;;;;;;;;,;;;,;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;,,,,,,,''''''''''',,,,,,,,,,,,,,,,,,,''''''................................''''''''''''''',,,,,,,,,,,,,,;;;;;;;:::::cccccccccccccccccccccccccccccccccccccc:::::::;;;;;;;,,,,,,,,,'''''''''''''''''''..........................................................'''''''''''............''''''',,,,,,,,;,;;,,,,,,,,'''''''''...........''''''',,,,,,,,,,,,,,,'',''''''''''',,,,,,,,,,,,,,,,'''''''''''''',,,,,,,,,,,,,,,,,,,;;;;;::::ccccccccccccccccccccclllllllllllllllllollloollllllccc:::::;;;;::::ccclllooooodddddddddddddooooooooooollllllllllllllllllllllllccccccccc:::::::::;;;:::::::::::::::::::::::cccccccccccccccccccccc:::::::ccccccccccccccccccccccllllllllloooodddddddddddooooooooooooolllllllllllcccccccccccccccccccccclllllllllllll
,,,,,,,,,,,;;;;;;;,,,,,;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;,,,,,,,,'''''''',,,,,,,,,,,,,,,,,,,,,,,,'''''''...........................'''''''''',,,,,,,,,,,,,,,,,,,,,,;;;;;;:::::cccccccccccccccccccccccccccccccccccccc:::::::;;;;;,,,,,,,,,'''''''''''....................................................................''''''''.'..............'''''''',,,,,,,,,,,,,,,,''''''''..............''''''',,,,,,,,,,,,,,,,,,,'''',,''',,,,,,,,,,,,,,,,'''''''''''''''''''''''',,,,,,,,,,;;;;;::::ccccccccccccccccclclllllllllllllllllllllllllllllcccc::::;;;;;;;:::cccccllllllooooooooooooooooooooooolllllllllllllllllllllllllcccccccccc:::::::::::::::::::::::::::cc::ccccccccccccccccccccccccccccccccccccccccccccccccccccccccllllllloooodddddddddddddooooooooooooolllllllllllccccccccccccccccccclclllllllllll
,''',',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;,,,,,,,,''''',,',,,,,,,,;;;;;;;;;;,,,,,,,,''''''''.....................''''''',,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;:::::ccccccccccccccccccccccccccccccccccccccc:::::;;;;;,,,,,,,,''''''''''''................................................................................................'''''''''',,,,,,,,,''''''''''................''''',,,,,,,,,,,',,,,,,,,,,,',,'',,,,,,,,,,,,,,,,''''''''''''''''''''''''''',,,,,,,;;;;;::::::ccccccccccccclllllllllllllllllllllllllllllllccccc::::;;;;;;;;:::::ccccccccccccccclllllloooooooooolllllllllccclcllllllllllllllccccccccccc:::::::::::::::::::::ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccllllllooooddddddddddddddddddooooooooollllllllllllllllccccccccccccccccllllllllll
''''''''''',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,',,',,,,,,,,,,,,,,,;;;;;;;;,,,,,,,,'''''''',,,,,,,,;;;;;;;;;;;;;,,,,,,,,,'''''''''.............''''''',,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;:::::ccccccccccccccc::ccccccccccccccccccccccc::::;;;;;,,,,,,,''''''''''......................................................................................................'''''''''''''''''''''''''..................''''''',,,''',,,'',,,,,,,'''''''',,,,,,,,,,,,,,,'''''''''''''''''''''''''',,,,,,,,;;;;;;:::::cccccccccclclllccclcccccccccccllllllllllcccccccc::::;;;;;;;;::::ccccccc:::::::::::cccclllloooooollllllcccccccccclllllllllllllllccccccccccccc::::::::::::::::cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccllllloooodddddddxxdddddddddooooooollllllllllollllllllllccccccccccccllllllllll
''''''''''''',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,'''''''''''''''''''',,,,,,,,,,;;;,,,,,,,,,''''''''',,,,,,,;;;;;;;;;;;;;;;,,,,,,,,,,,,''''''''''''''''''''',,,,,,;,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;::::ccccccccccccccc:::::cccccccccccccccccccc::::;;;;,,,,,''''''''''''..........................................................................................................'''''''''''''''''''''.....................''''''''''''''''',,,,'''''''''''',,,,,,,,,,,,,''''''''''''''''''''''''',,,,,,,,;;;;;;:::::::cccccccccccccccccccccccccccccccccccccccccccc:::::::;;;;;::::::cccccccc:::;;;;;;;;:::cccllllllollllllcccccccccccllllllllllllllcccccccccccccccccc::c:::cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccllllooooddddddxxxxxxddddddooooollllllllllooooooolllllllllccccccclllllllllll
'''......''''''',,,,,,,,,,,,,,,,,,,,,'''''''''''''''''''''''''''''''''',,,,,,,,,,,,,,,,,,'''''''''',,,,,,,;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,''''''''''''',,,,,,,,;;;;;;,,,,,,,,,,,,,,,,,,,,,;;;;;;;:::::cccccccccccccccc:cc::cccccccccccccccccc::::;;;,,,,''''''''''''''............................................................................................................'''''''''''''''''''.........................''''''''''''''''''''''''''''''',,,,,,,,,,''''''''''''''''''''''''',,,,,,,,;;;;;;;::::::ccccccccccccccccccccccc::c:::::::cccccc::::::::::;;;;;;:::::cccllllllccc::;;;;,,,;;;:::ccllllllllllccccccccccccccclllllllllllllccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccclllllooodddddxxxxxxxdddddooooolllllllllloooooooooollllllllllcclllllllllccl
''''....''''''''',,,,,,,,,,,,,,,,'''''''''''''''''''''''''''''''''''''''',,,,,,,,,,,,,,,'''''''''''',,,,,,,;;;;;;;;;;;;;;;;;;;;,,;,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;,,,,,,,,,,,,,,,,,,,,,,,;;;;;;:::::ccccccccccccccc:ccc:ccccccccccccccccc::::;;;,,,,,'''''''''''''''.............................................................................................................'''''''''''''''..................................'''''''''''''''''''''''''''',,,'''''''''''''''''''''''''',,,,,,,,;;;;;;;;:::::::::cccccccccccccccc::::::::::::::::::::::::::::::;;;;;;;::::cclllooooollcc::;;;;,,,;;;;::cccllllllccccccc::::ccccccclllllllllllllcccccccccccccccccccc::cc:ccccccccccccllllllllllcccccccccccccccclllllclcccccccccccccccccccccccccccccclllloooddddxxxxxxxxddddoooollllllllllloooooooooooolllllllllllllllllclccc
,''''''''''''''',,,,,,,,,,,,,''''''''''''...........................''''''',,,,,,,,,,,'''''''''''''',,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,,,,,,,;;;;;;,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;::::::cccccccccccc:cc:cc:ccccccccccccccc:::;;;;,,,,''''''''''''''..........................................................................'......................................''''''''''''''.....................................''''''''''''''''''''''''''''''''''''''''''''''''''',,,,,,,,;;;;;;;;;;::::::::::c::cccccccc::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::cccllooddddddoollcc::;;;;;;;;::::ccccccccccccc::::::ccccccclllllllllllcccccccccccccccccccccccccccccccccccclllllllllllllllclllllccccllllllllllccccccccccccccccccccccccccccccclllloooddddxxxxxxxddddoooollllllllllloooooooooooooolllllllllllllllccccc
;;,,,,,,,''''',,,,,,,,,,,,,'''''''''..................................''''''''','''''''''''''''''''',,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,;;,;;;;;;,;,,,,,,,,,,'''''''''''',,,,,,,,;;;;:::::::::ccc:::::::::cccc::cccccccc:::::;;;;,,,,,'''''''''''''''........................................................................''''''''...................................''''''''''.........................................''''.'''.....''''''''''''''''''''''''''''''',,,,,,,,,,;;;;;;;;;;;:::::::::::::::::::::::::::;;;;;;;;;;,;;;;;;;;;;;;;;;;;;;;;;;;:::cclooddxxxxxxxddollcc::::;;;;:::::::ccccccc::::::::::ccccccclllllllllllccccccccccccccccccccccccccccccccclllllllllllllllllllllllllllllllllllllcclccccccccccccccccccccccccccccclllloooddddxddxddddddoooolllllllllllloooooooooooooooooollllllllllccccc
:::;;;;;;;,,,,,,,,,,,,,,,,'''''''........................................'''''''''''''''''''''''''''',,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,''''''''''''''',,,,;;;;:::::::::::::::::::::::::::ccc:::::::;;;;;,,,,,'''''''''''''''.....................................................................'''''''''''''''...............................'.''''''''.........................................................''''''''''''''''''''''''',,,,,,,,,;;;;;;;;;;;;;;;:::::::::::::::::::::;;;;;;;;;,,,,,,,,,,,,,,,,,,,,;;;;,;;;;;;;:::clloddxxkkkkkkxxxdoollccc:::::::::::::::::::::::::::::ccccccllllllllllllccccccccccccccccccccccccccccccllllllllllllllllllllllllllllllllllllllccclllllcccccccccccccccccccccccccclllloooddddddddddddddooolllllllllllllloooooooooooooooooooollllllllccc
lccccc:::::;;;;;;;,,,,,,'''''''......................................................'''''''''''''''',,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;::;;:;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,'''''''''''''''''',,,;;;;;;;:::::::::::::::::::::::::::::::;;;;,,,,,,,'''''''''''''........................................................................''''''''''''''''''..............................''''''................. .. ......................................''''''''''''''''''''''',,,,,,,;;;;;;;;;;;;;;;;;;;;:::::::::::::;;;;;;;;;;,,,,,,,,,,,',,,,,,,,,,,,,,,,,,,,,;;;;::ccloodxxkkkOOOOkkkxxddoollcc::::::::::::::::::::::::::ccccccccccllllllllllccccccccccccc::ccccccccccccccllllllllllllllllllllllllllllllllllllllllllllllllllllllccccccccccccccccccclllloooodddddddddddddoooolllllllcllllllooooooooooooooooooolllllllccc
ooollllllcccc:::;;;;,,,,,'''''.............................................................'''''''''',,,,,,,,,,;;;;;;;;;;;;::::::::::::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;,,,,,,'''''''''''''''',,,,,,;;;;;;;;;;;;;:::::::::::::::::::::;;;;;;,,,,,,,''''''''''''......................................................................''''''''''''''''''''''''.............................'''................. .....................................'''''''''''''''''''''',,,,,,;;;;;;:::::::::::;;;::::::::::::;;;;;;;;;,,,,,,,'''''''''''''',,,,,,,,,,,,,,,,;;;;::cclloddxkkkOOOOOOkkkxxddollccc::::;;;;;:;;;:::::::::::cccccccccccccllllllllccccccccccc::c:ccccccccccccclllllllllllllllllllllllllllllllllllllllllllllllllllllllcccccccccccccccccccllllooooodddddddddddoooollllllcccllllllloooooooooooooooooollllllccc
dddddddooolllccc::;;;,,,,''''...............................................................''''''''',,,,,,,,,,;;;;;;;;;;::::::::::::::::::::::::::::::::::::::::::::::::;;;;;;,,,,''''''''.''''''',,,,,,,,;;;;;;;;;;;;;;;;;;::::::::::::;;;;;;;,,,,,,,,'''''''''''......................................................................''''''''',,,,,,,,'''''''''''.........................'''................. ..................................''''''''''''''''''',,,,,,,;;;;;;:::::::::::;;;::::::::::;;;;;;;;,,,,,,,''''''''''''''''''''',,,,,,,,,,,,,;;;;::cclooddxkkkOOOOOOOkkxxddollcc:::;;;;;;;;;;;::::::::::ccc:::cccccccccllllllllcccccc::c:::::cccccccccclllllllllllllllllllllllllllllllllllllcllllllllllllllllllllcccccccccccccccccllllllooooodddddddddddoooolllllcccccllllllooooooooooooooooollllllccc
xxxxxxxxdddoollcc:::;;,,,''''................................................................''''''''',,,,,,,,,;;;;;;;;;::::::::::::::::::::::ccc:::::::::::::::::c:::::::::;;;;;,,,'''''''''''''''',,,,,,,,,,,,,,,,,,;;;;;;;;;;;::::::::;;;;;;;;,,,,,,,,''''''''''.....................................................................''''''',,,,,,,,,,,,,,,''''''''''''..'''................................... ..................................''''''''''''''''''',,,,,,;;;;;;:::::::::::;;;::::::;;;;;;;;;;,,,,,''''''''''........'''''''',,,,,,,,,,,,,;;;:::cclooddxxkkkOOOOOkkkxxdoolcc::;;;;;;;;;;;;;;::::::::::::::::::cccccclllllllcccccccc:::ccccccccccccclllllllllllllllllllollllllllllllllllllllllllllllllllllllllllccccccccccccccccccllllloooodddddddddddoooollllcccccclllllloooooooooooooooollllllccc
kkkkkkkxxxxddollcc::;;,,,'''...................................................................'''''''',,,,,,,,,,;;;;;;;::::::::::::::::::::ccccccccccccccccccccccccccccccc::::;;;,,,,,'''''''''',,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,'''''''''....................................................................''''',,,,,,;;;;;;;;,,,,,,,,''''''''''''''''............................... ................................'''''''''''''''''''',,,,,,,;;;;;;;;;;;;;;:;;;;;;;;;;;;;;;;;;;,,,,,''''''''...............''''''',,,,,,,,,,,,;;;::ccclooddxxkkkkkkkkkxxdoolcc::;;;;,,,,;;;;;;;:::::::::::::::::::ccccllllllcccccccc::c:c::ccccccccclllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllcccccccccccccccllllloooodddddddddddooollllccccccccllllooooooooooooooolllllccccc
kkkkkkkkxxxddoolcc::;;,,,'''..................... .......................................'''''''',,,,,,,,,;;;;;;;;:::::::::::::::ccccccccccccccccccccccccccllccccccccc:::;;;;;,,,,,,,,,,,,,,,,,,,,,,,,,''''''''',,,,,,,,,,;;;;;;;;;;;;;;;;;;;,,,,,,,'''''''''''..'...............................................................'''',,,,;;;;;;;;;;;;;;;;,,,,,,,'''''''''''''''............................ .................................'''''''''''''''''''',,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,''''''''.................'''''''',,,,,,,,,,,;;;;::ccllooddxxkkkkkkkxxddolcc::;;;,,,,,,,;;;;;::::::::::::::;::::::cccclllllccccccccccccccccccccccllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllcccccccccccccclllllooooddddddddddoooolllllcccccclllllooooooooooooollllllccccc
xxxxxxxxxdddoollc::;;,,,'''................... ...................................''''''',,,,,,,,,,,;;;;;;;::::::::::::ccccccccccccccccccccccccccllllllllccccc:::::;;;;;;;;,,,,,,,,,,,,,,,,,''''''''''''''''',,,,,,,;;;;;;;;;;;;;;;;;;,,,,,,,,'''''''''''''..'...........................................................''',,,,;;;:::::::::::::;;;;;,,,,,,,,,,'''''''''''''.....'''................ ....................................'''''''''''''''''''',,,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,''''''''...................''''''''',,',,,,,,,;;;:::ccllooddxxkkkkkxxddollcc:;;;;,,,,,,,;;;;;:::::::::::;;;;;;::::ccclllllllccccccccccccccccccccclllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllccccccccccccccllllloooddddddddddoooolllllcclllllllloooooooooooollllllcccccc
dddddddooooollcc::;;,,''''................... .............................''''''''',,,,,,,,,;;;;;;;::::::::cccccccccccccccccccccccccccccllllllllllccccc::::::;;;;;;;;;;;,,,,,,,,,,,'''''''''''''''''''',,,,,;;;;;;;;;;;;;;;;;,,,,,,,,,,'''''''''''''''.........................................................'''',,,;;:::ccccccccccc:::::;;;;;;,,,,,,,,,,,'''''''''''''''................. ......................................''''''''''''''''''''',,,,,,,,,,,,,,;;;;;;;;;;;;,,;;,;,,,,,,,,,,,,,,,,,'''''...................'''''''',,,,,,,,,,;;;;::ccclooddxxxkkkkxxddollc::;;;,,,,,,,,,;;;;::::::::;;;;;;;;;::::cccllllllccccccccccccccccccccclllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllcccccccccccccccclllloooddddddddddoooollllllllllllllloooooooooolllllcccccccc
lllllllllcccc:::;;,,''''.................. ..................''''''',,,,,,,,,,,;;;;;;;:::::::cccccccccccccccccccccccccccccclllllllllcccccc::::::::;;;;;;;;;;,,,,,,,,''''''''''.''''''''''',,,,,;;;;;;;;;;;;;;;;;,,,,,,,,,,'''''''''''''''''......................................................''',,,;;::ccllllllolllllcccc:::::;;;;;;;;;,,,,,,'''''''''''''............................................................''''''''''''''''''''''',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,''''..................''''''',,,,,,,,,,;;;;;::ccclooddxxkkkkkxxddoolc::;;;,,,,,,,,,;;;::::::::;;;;;;;;;;:::cccccclllcccccccccccccccccccccllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllccccccccccccccccllllooooddddddddooooollllllllllllllllllooooolllllllcccccc:
::::::::;;;;;;;,,,'''.................... .................''''''',,,,,,,,,,,;;;;;;::::::ccccccccccccccccccccccccccccccccclllllcccccccc:::::::::::;;;;;;;;,,,,,,,''''''''''''''''''''''',,,,,;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,,''''''''''''....................................................'''',,;;::ccllooooodoooooollllccccc::::::;;;;;;,,,,,,''''''''''..............................................................'''''''''''''''''''''''''',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;,,,,,'''.................'''''',,,,,,,,,;;;;;;::::cllooddxxkkkkkxxddoolcc:;;;,,,,,,,,,;;;::::::::;;;;;;;;;;:::cccccccccccccccccccccccccccclllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllollllllllccccccccccccccccllllooooddddddddoooooollllllllllllllllllllllllllllccccc::
,,,,,,,,,,,'''''''...................... ..................'''''',,,,,,,,,,;;;;;;::::::cccccccccccccccccccccccccccccccccccccccccccccc:::::::::::;;;;;;;,,,,,,,,''''''''''''''''''''''',,,,,,;;;;;;;;;;;;;,;,,,,,,,,,,,,,,,,,'''''''''''''..................................................''',,;;::cclloodddddxddddddooooollllccccc:::::;;;;,,,,,,'''''''.................................................................'''''''''''''''''''''''''''''''''''''''''',,,,,,,,,,;;;;;;;;;;;;;;;,,,''''............'''''',,,,,,,,,;;;;;;;;;:::ccllooddxxxkkkkxxxdoollc:;;;,,,,,,,,;;;;:::::::;;;;;;;;;;::::cccccccccccccccccccccccccccclllllllllllllllllllllllllllllllllllllllllccccccllllllllllllllllllllllllccccccccccccccccccclllooooddddddddooooooolllllllllllllllllllllllllcccccc:
''''''................................ ................'''''',,,,,,,,;;;;;;;:::::::cccccccccccccccccccccccccccccccccccccccccccccc:::::::::;;;;;;;,,,,,,,,'''''''''''''''''''''''',,,,,,,;;;;;;;;;;,,,,,,,,,,,,,,,,,,,,,,,''''''''''''''''............................................''',,,;;:cclooddxxxxxxxxxxxxdddddoooolllllcccc::::;;;;,,,,,'''''..................................................................'..'''''''''''''''''''''''''''''''''''''''''',,,,,;;;;::::::::::;;;;,,,,'''........'''''',,,,,,,;;;;;;;;;;;;;;;:::ccllooddxxxkkkxxdddolcc:;;,,,,,,,,,;;;::::::::;;;;;;;;;;:::::ccccccccccccccccccccccccccclllllllllllllllllllllllllllllllllllcccccccccccllllllllllllllllllllllllllccccccccc::ccccccclllooooddddddddooooooolllllllllllllllllllllllllcccccc
...................................... ................''''''',,,,,,,;;;;;;;:::::::cccccccccccccccccccccccccccccccccccccccccccccc:::::::::;;;;;,,,,,,,,,'''''''''''''''''''''''',,,,,,,,;;;;;;;;;,,,,,,,,,,,,,,,,,,,,,,,,,,,''''''''''''''''.......................................''''',,;;::clooddxxkkkkkkkkkkkxxxxdddddoooolllccccc:::;;;;,,,,'''''..........................................................................'.............'''.........'.'''''''',,,,,;;;;::::::::::::;;;;,,,'''''''''''''',,,,,,;;;;;;;;;;;;;;;;;;;;;::ccllooddxxxxxxxddoolcc:;;,,,,,,,,;;;:::::::::;;;;;;;;;:::::::ccccccccc:ccccccccccccccccllllllllllllcllclllllllllllllllcclccccccccccclllllllllllllllllllllllllllcccccccc::::cccccclllooooodddddddoooooollllllllllllllllllllllllllccccc
....................................... ..................'''''',,,,,,;;;;;;;;::::::::::ccccccccccccccccccccccccccccccccccccccccc:::::::;;;;;;,,,,,,,,''''''''''''''''''''''''''',,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,'''''''''''''''.................................'''''',,;;::clloddxxkkkkOOOOOkkkkkkxxxxddddoooolllccc::::;;;;,,,,''''............................................................''''.........................................''''',,,,,;;;;:::::::::::::;;;;,,,,,'''''''',,,,,;;;;;;;;;;;;;;;;;,,,,,,;;;;:::clloodddxxxxxddollcc:;;;,,,,,;;;;::::::::::;;;;;;;::::::::cccc:cccc:::cc:cccccccccccccllccclcccccccclllllllllllllccccccccccccccccllllllllllllllllllllllllllllllccccc:::::::cccclllooooddddddddoooooollllllllllllllllllllllllllllcc
........................................ ....................'''''',,,,,,;;;;;;;;;::::::::::cccccccccccccccccccccccccccccccccccccccc:::::::;;;;,,,,,,'''''''''''''''''''''''''''''''',,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,,'''''''''''''''......................''''''',,,;;;:ccloodxxkkkOOOOOOOOOkkkkkxxxxddddoooolllccc:::;;;;,,,,'''........................................................'''''''''''''......................................''''',,,,;;;;::::::::::::::;;;;,,,,,,,,,,,,,,;;;;;;:::::::;;;;;;,,,,,,,,,,,;;:::clloodddxxxdddollcc::;;;,;;;;;:::::::::::::::;;;;::::::::::c:c::cc:::c::cccccccccccccccccccccccccllllllllllllllccccccccccccccllllllllllllllllllllllllllllllllcccccc:::::::ccclllloooodddddddddooooolllllllllllllllllloolllllllll
........................................ ... ....................'''''',,,,,,,;;;;;;;;;;;::::::::ccccccccccccccccccccccccccccccccccccccc::::::;;;;,,,,''''''''...................'''''''',,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,'''''''''''''...............'''''''',,,,;;;:cclloddxxkkkOOOOOOOOOkkkkkxxxxxddddooolllccc:::;;;,,,,,''''.................................................'''''''''''''''''''......................................'''''',,,,;;;;;::::::::::::;;;;;,,,,,,,,,,;;;;;:::::::::::::;;;;;,,,,,,,,,,,,;;::cclooddddddddooolcc:::;;;;;;:::::::cc::::::::::::::::::::::::::c::ccccccccccccccccccccccccccccccllllllllllllllcccccccccccclllllllllllllllllllllllllllllllllllccccc::::::::cccclllooodddddddddooooolllllllcllllllllloooooollllll
'''''..................................... .............................'''''''',,,,,,,,,;;;;;;;:::::::::cccccccccc::cccccccccccccccccccccccccccc::::;;;,,,,''''...........................'''',,,,;;;;;;;;:::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,'''''''''..........''''''',,,,,;;;;::clloodxxxkkkkkOOOOOOkkkkkkxxxxxdddoooolllccc:::;;;;,,,,''''..........................................'''''''''',,,,,,,,,,,,'''''.....................................'''''',,,,,;;;;;;;::::::;;;;;;;;;;;;;;;;;;;;::::::cccccccc::::::;;;;;;,,,,,,,;;;::ccloodddddddddoollcc::::::::::::ccccccc:::::::::::::::::::ccc:ccccccccccccccccccccccccccccccccclllllllllllllllllcccccccclllllllllllllllllllllllllllllllllllllcccc:::::::::cccllllooodddddddddoooooolllllllllllllloooooooooooll
'''''''''''''.............................. ......................................''''''''',,,,,,,,,;;;;;::::::::::::::::c::cccccccccccccccccccccccccccccc:::;;;,,''''..............................''',,,;;;;;:::::::::ccc:::::::::::;;;;;;::::::::::::::::;;;;;;;;;,,,,,,,,,'''''''....'''''',,,,,,,;;;;:::cclooddxxxkkkkkkkkkkkkkkxxxxxxxddddoooolllccc:::;;;;,,,,''''.....................................'''''',,,,,,,,,,,,,,,,,,,,,,'''''''................................''''''''',,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::ccccccccccccccccccc:::::;;;;;;;;;;::ccllooddddxxddddoollccc:::::::::ccccccccc::::::::::::::::cccccccccccccccccccccccccccccccccccccclllllllllllllllllcccccccllllllllllllllllllllllllllllllllllllllccccc:::::::::ccclllloooddddddddddooooolllllllllllllooooooooooooo
,,,,''''''''''''...........'................ . ............................................'''''''''',,,,,;;;;;:::::::::::::::::::ccccccccccccccccccccccccccccc:::;;,,'''...............................''',,,;;;;:::::cccccccccccc:::::::::;;::::::::::::::::::::::::::;;;;;;;,,,,,,''''''''''''',,,,;;;;;::::cccllooddxxxxxkkkkkkkkkxxxxxxxxxxddddoooolllccc:::;;;;,,,,,''''..................................''',,,,,;;;;;;;;;;;;;;;;;,,,,,''''''...............................''''''''''',,,,,,,,;;;;;;;;;;;;;;;;;;;;;;:::::cccccclllllllllllllllllllccccc:::::::::cccllooodddxxxxxddooollccc::::::::ccccccccccc::::::::::::ccccccccccccccccccccccccccccccccccccccccllllllllllllllllcllcccccllllllllllllllllllllllllllllllllllllllcccccc:::::::cccclllooooodddddddddooooollllllllllllooooooooooooo
,,,,,,,'''''''''''''''''''''''.............. .............................................................''''',,,,;;;;;;:::::::::::::::::::::::::::::cccccccccccllllccc:::;;,'''................................'',,,;;;::::ccccccclllccccc:::::::;;;:::::::::::::cccccccccccc::::::;;;;;,,,,,,,'''''',,,,,,;;;;;:::ccccllooodddxxxxxxxxxxxxxxxxxxxxddddddoooolllccc:::;;;;;,,,,,''''................................''',,;;;;::::::::::;;;;;;;;;,,,,''''''''''........................'''''''''''''''',,,,,,;;;;;;;;;;;;;;;;;;;:::::cccccllllllooooooooooooooooooolllllcccccccccclloooddxxxxxxxxddoollccc:::::::::cccccccccc::::::::::::cccccccccccccccccccccccccccccccccccccccclllllllllllccllccccccccclllllllllllllllllllllllllllllllllllllccccccc::::::ccccclllooooodddddddddooooolllllllllllllooooooooooo
,,,,,,,'''''''''''''''''''''''''.............. ....................................................................''''',,,,,;;;;;;;::::::::::::::::::::::::::::::ccccccllllcccc::;;,,'.................................'',,,;;::::cccccllllllllcccc:::::;;;;;;;;;::::::::cccccccccccccccc::::::;;;;;;,,,,,,,,,,,;;;;;:::::cccllllooddddddxddddxxdddddddddddddddddooolllcccc:::;;;;;;,,,,,''''.............................''',,;;::::ccccc:::::::;;;;;;,,,,,,'''''''''''''..............'''''''''''''''''''''',,,,,,;;;;;;;;;::;;;;::::::ccccccllllloooooooddddddddddddddddoooollllcllcllllloodddxxxxxxxxddoollcc::::::::::ccccccccccc:::::::::::ccccccccccccccccccccccccccccccccccccccccccccccclccccccccccccccclllllllllllllllllllllllllllllllllllllllccccccc:::::ccccclllooooddddddddoooooolllllllllllllllooooooooo
,,,,,,,,,'''''''''''''''''''''''''.............. ...........................''''''''......................................''''',,,,,;;;;;;;;;;:;::::::::::;;::::;;:::::::ccccccllcccc::;;,''.................................'',,;;;::::ccccllllllllllcccc::::::;;;;;;;;::::::::ccccccllllllcccccc:::::;;;;;;;;;;;;;;;;;:::::cccccllloooodddddddddddddddddddddddddddddoooolllccc::::;;;;;;,,,,,''''............................'',,;;:::ccccccccccc::::;;;;;,,,,,,,''''''''''''''''''''''''''''''''''''''''''''''''''',,,,;;;;;;;:::::::::::::ccccclllllloooooodddddxxxxxxxxxxxxdddddooolllllllllloooddxxxkkkkxxxdoolcc:::;;;::::::ccccccccc::::::::::::cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccclllllllllllllllllllllllllllllllllllllcccccccccc::ccccclllloooodddddddddoooollllllcclllllllllooooooo
,,,,,,,,,'''''''''''''''''''''''''............... ..............................'''',,,,'''....................................''''''',,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::ccccccccc:::;,,''.................................''',,;;::::ccclllllloolllllcccc::::::::;;;:::::::::ccccccllllllllcccccc:::::::::::;:::::::::ccccclllllooooooodddddddddoooooddddddddddddddooollllccc::::;;;;;,,,,,,''''...........................'',,;;::ccllllllllccc::::;;;;,,,,,,,,,'''''''''''''''''''''''''''''''''''''''''''''''''',,,,;;;;;;::::::::::::ccccccllllloooooooddddxxxxxxxxkxxxxxxxddddoooollllllllooodddxxkkkkkkxxdoolcc::;;;;;;:::::cccccccc:::::::::::cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccllllllllllllllllllllllllllllllllllccccccccccccccccccllllooooodddddddoooollllcccccccllllllloooooo
;,,,,,,,,,''''''''''''''''''''''''..............................................'',,,,,,,,'''...............................'''''''''''''',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;::::cccccc::;;,,''..................................'',,,;;:::cccclllloooooooolllllcccc::::::::::::::::cccccclllllccccccccccc::::::::::::::cccccccllllllooooooooooooooooooooooooddddddddddddoooolllccc:::::;;;;;;,,,,,''''..........................'',,;;:cclllooooolllcc:::;;;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,''''''''''''''''',,,,,;;;;;;;;:::::::::ccccclllllllooooooddddxxxxxxkkkkxxxxxxxxddddoooollllllllooddxxkkkkkkkxxdoolcc::;;;;;;;::::::ccccc::::::::::::cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccllllllllllllllllllllllllllllllllllcccccccccccccccccllllloooooddddddoooolllllccccccccllllllllooo
;;,,,,,,,,,'''''''''''''''''''''''..............................................'',,,,;;;,,,,''''''''''',,,,,,,,,,,,,,,,,''''''''''''''''''''''',,,,,,,,,'''''''''''''''',,,,;;;:::::::::;;,,''...................................''',,;;:::cccllloooooooddooooooollllllllccccccccccccccccclllllccccccccccc::cccccccccccccclllllllooooooooooooooooooooooooooooodddddddddoooooolllcccc:::::;;;;,,,,,''''..........................'',,;;::cllloooooollccc::;;;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;,,,,,,,,,,',,,'',,,,,,,;;;;;;;;;;::::::ccccclllllllloooooddddxxxxxxkkkxxxxxxxxxdddddoooollllllllooddxxkkkkkkkkxddolcc::;;;;;;;;::::::cccc:::::::::::cccccccccccccccccllllcclccccccccccccccccccccccccccccccccccccccccccccllllllllllllllllllllllllllllllllllcccccccccccccccclllllloooooooooooooollllccccccccccclllllllll
;;;,,,,,,,,'''''''''''''''''''''''..............................................'',,,;;;;;;;;;;;;;;;;::::::::::::::::::;;;;;,,,,,,'''''''''''''''''''''''''............''''',,,,;;;;;;;;;,,''.....................................''',,;;:::ccllloooodddddddddddddddddddoooooolllllllllllllllllllcccccc:cccccccccccccccccllllllllooooooooooooooollllllloooooooooooodddddooooollllcccc::::;;;;;,,,,''''...........................'',,;;:cclllooooolllcc::;;,,,,,,,,,,,,,,,,,,,,,,,,,,;;,;;;;;;;;;;;:::::::::;;;;;;;;;,,,,,,,,,,,,,;;;;;;;;;;;::::::ccccccllllllloooodddxxxxxxxxxxxxxxxxxxdddddooollllccccllooddxxkkOOOkkkxxdollc:::;;;;;;;:::::::cc:::cc::::ccccccccccccccclllllllllllllcccccccccccccccccccccccccccccccccccccccccccclllllllllllllllllllllllllllllllccccccccccccccccccllllllooooooooooooollllccccccccccccclllllll
;;;;;,,,,,,,,'''''''''''''''''''''..............................................'',,;;::::cccccclllllooooooooooooooollllccc:::;;;;,,,,''''''''''''''.....................''''',,,,,,,,,,,'''......................................''',,;;::cccllooooddddxxxxxkkkkkkkkkxxxxxxdddddooooooollllllllllcccccccccccccccccccccclllllllllloooooollllllllllllllllllllooooooooooooooollllllccccc::::;;;;,,,''''...........................''',,;;::ccllllllllcc:::;;,,,,,,,,,,,,,,,,,,,,;,,;;;;;;;;;;;;::::::cccccccccccccc::::::;;;;;;;;;,;;;,,;;;;;;;;;;:::::cccccccllllloooddddxxxxxxxxxxxxxxxxddddddooolllcccccclloodxxkkOOOOOOkkxdollc::;;;;;;;;::::::cccccccccccccccccccccccccclllllllllllllllcccccccccccccccccccccccccccc:ccccccccccccccllllllllllllllllllllllllllllllllcccccccccccccccccclllllllooooooooollllllcccccccccccccclllll
;;;;;;;;,,,,,,,''''''''''''''''''''''''........................................'',,;;::ccllooodddxxxxkkkkkkkkkkkkkkxxxdddoollccc::;;;;,,,,,''''''''''.......................'''''''''''''......... ..........................''',,;;::cccllooodddxxxxkkkkkOOOOOOOOOOOOkkkxxxxxddddddooooooollllcccccccccccccccccccccccclllllllllllllcccccccccccccccclllllllooooooooollllllllcccccc:::;;;,,,''''............................''',;;;:::ccccccccc::;;;,,,,''''''',,,,,,,,,,,;;;;;;;;;;;;::::::ccccllllllooooollllllcccc::::;;;;;;;;;;;;;;;;;;;;;;:::::::ccccllllooodddxxxxxxxxxxxxxxxdddddddooollcccccccclloodxkkOOOOOOOkkxdoolcc::;;;;;;::::::::ccccccccccccccccccccccccllllllllllllllllcccllccclccccccccccccccc::cccccccccccccccclllllllllllllllllllllllllllllllccccccccccccccccccccllllllllllooooolllllccccccccccccccccclll
;;;;;;;;;;,,,,,,,'''''''''''''''''''''''''....................''''''''''''''''',,,;;:clloddxxkkOOO0000KKKKKKKKKK0000OOOkkkxxdoollccc::::;;;;;;,,,,,,'''''''.................''''''''''.......... ........................'',,;;;:ccclloooddxxxxkkkkOOOOOO0000000OOOOOkkkkkxxxxxdddddooooolllllllllllllllllccccccccccccccccccccccc::::::::::::cccccclllllllllllllllllllccccccc:::;;;,,,'''.............................''',,,;;:::::::::::;;,,,,''''''''''',,,,,,,,,,,,,,;;;;;;;;;::::cccllllooooddddddddddoooollcccc::::;;;;;;;;;;;;;;;;;;;;;::::::ccclllooodddxxxxxxxxxxxxxxxxddddooolllcccc::cccloodxxkOOO000OOkkxddolcc:::;;;;;:::::::::cccccccccccccccccccccccclllllllllllllllllllllllllllccccccccccccccc:ccccccccccccllllllllllllllllllllllllllllllllcccccccccccccccccccclllllllllllllllllllllcccccccccccccccccll
;;;;;;;;;;;,,,,,,,,,'''''''''''''''''''''''''..........'''''''''''''''''''',,,,,;;:cclodxxkOO00KKKXXXXXXNNNXXXXXXXXKKKK00OOOkxxdddoollllcccc::::::;;;;;;;,,,,,,,,''''''''''''''''.............. .....................''',,;;:ccclooodddxxxxkkkkOOOOOO00000000OOOOOOOkkkkkxxxxxxddddddooooooooooooollllllllcccccccccccccccc::::;;;;;;;;;;::::cccccccclllcllllcccccccccccc::::;;;,,,'''.............................'''',,,;;;;;;;;;;;,,,''''''''''''''''',,,,,,,,,,,,,,,;;;;;;;:::cccllloodddxxxxxxxxxxxddddoolllcccc:::::;;;;;;;;;;;;;;;;;;;;;:::cccllooodddxxxxxxxxxxxxxxdddddooolllccc:::ccclloddxkkOO0000OOkkxddolccc:::::::::::::::::ccccccccc::::ccccccccclllllllllllllllllllllllllllccccccccccccccc:cccccccccccccllllllllllllllllllllllllllllllcccccccccccccccccccccclllllllllllllllllllllccccccccccccccclll
;;;;;;;;;;;;,,,,,,,,'''''''''''''''''''''''''''..''''''''''',,,,,,,,,,,,,,,,,;;;::cloodxkO00KKXXXNNNNNNNNWWWNNNNNNNNXXXXKK000OOkkkxxxdddddoooooolllllcccccccc:::::;;;;;,,,,,,'''''''........... .................'',,;;:cccloooddddxxxxxkkkkkOOOOOOOOOOOOOOOOOOkkkkkkkkxxxxxxxxxxdddddddddddddoooooolllllllccccccccc::::;;;;;;;;;;;;::::::ccccccccccccccccccccccccc::::;;;,,,'''..............................''''',,,,,,,,,,,''''''.........'''''''',,,,,,,,,,,,,,,,;;;;;:::ccclloooddxxxkkkkkkkkxxxxddoooolllccccc::::::;;;;;,,,,,,,,,;;;:::ccllooodddxxxxxxxxxxdddddddooolllcccc::cccclloddxxkOOO000OOOkkxdoollccc:::::::::::::::::cccc:::::::::cccccccllllllllllllllllllllllllllllllccccccccccccccccccccccccclllllllllllllllllllllllllllllllcccccccccccccccccccccccllllllllllllllllllllllccccccccllllllll
;;;;;;;;;;;;;,,,,,,,,''''''''''''''''''''''''''''''''''',,,,,,,,,,,,,,,,,,;;;;::ccloodxkO00KXXXNNNNWWWWWWWWWWWWWWNNNNNNNXXXKKKK000OOOOOkkkkkkxxxxxxxddddddddoooolllccc::::;;;,,,,'''''......... .............'',,;;:cclllooodddddxxxxxxxxkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkxxxxxxxxxxxxxxxxxxxdddddooooolllllllcccccc::::::;;:;;::::::::::::ccccccccccccccccccccc::::;;;,,,'''...............................'''''''''''''''..................''''''''''','',,,,,,,,,,;;;;;::cclllodddxxxkkkkkkkkkkxxxddddoooolllllcccc:::;;;,,,,,,,,,,,;;;:::clllooddddddxxxxdddddddddooolllccccccccccllooddxkkOOOOOOOOkkxxddollccc:::::::::::::::::ccc:::::::::::ccccccllllllllllllllllllllllllllccllcccccccccccccccccccccccclllllllllllllllllllllllllllllllccccccccccccccccccccccllllllllloooolllllllllllcccccllllllllll
;;;;;;;;;;;;;,,,,,,,,,''''''''''''''''''''''''''''''''',,,,,,,,,,,,,,,,,;;;;;;::cllodxkkO0KKXXNNNNNWWWWWWWWWWWWWWWWWWNNNNNNXXXXXXKKKKKK000000000OOOOOOOOOOkkkkkxxxddoolllcc:::;;;,,,'''......... ...........',,;;::cllloooddddddddddddddddddddxxxxxxxxxxxxxkxkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkxxxxxddddddooooolllllcccccccc:::::::::::::::::ccccccccccccccccccc::::;;;,,,''''.................................................................''''''''''''''''',,,,,,,,;;;:::cclloooddxxxkkkkkkkkkxxxxxdddddooooollllcc:::;;;,,,,,'',,,,;;;::ccllooodddddddddddddddddooolllllccccccclllooddxxkkkkOOOOOkkkxxddoollccc:::::::::::::::ccc:::::::::::ccccccllllllllllllllllllllllllllllllllcccccccccccccccccccccclllllllllllllllllllllllllllllllcccccccccccccccccccccccllllllllooooolllllllllllllllllllllllll
;;;;;;;;;;;;;;,,,,,,,,,'''''''''''''''''''''..'''''''',,,,,;;;;;;;,,,,,,;;;;;::ccllodxkkO00KXXXXNNNNNNNWWWWWWWWWWWWWWWNNNNNNNNNNNNXXXXXXXXXXXXKKKKKKKKKK000000OOOkkkxxddoollcc:::;;,,,''........ ........',,;;:cclloooodddddddddddoooooooooooooddddddxxxxxxxkkkkkkkkkkkkkOOOOOOOOOOOOOOOOOOkkkkkkxxxxxddddddoooooolllllllllcccccccccccccccccccccccccccccccc::::;;;,,,'''....................................................................''''''''''''''''',,,,,,,;;;;:::cclloodddxxxxxkkxxxxxxxxxxxddddddoooollcc:::;;,,,,,'',,,,,;;:::cllloooddddddddddddddooooolllllccclllllloooddxxxkkkkkkkkkkxxdddoollccc:::::::::::::cc:::::::::::::::ccccccllllllllllllllllllllllllllllllllccccccccccccccccccclllllllllllllllllllllllllllllccccccccccccccccccccccccclllllllllooolllllllllllllllllllllllllll
;;;;;;;;;;;;;;,,,,,,,''''''''''''''''''''........''''',,,,,;;;;;;;;;,,,,;;;;;:::clloddxkOO00KKKXXXXXNNNNNNNNNNWWWWWWWWWNWWNNNNNNNNNNNNNNNNNNNNNXXXXXXXXXXXKKKK000OOOkkkxxddoolcc::;;,,'''...... .......',,;::cclloooooddooooooooooooollllllllooooodddxxxxxxkkkkkkkkkkOOOOOOOOOO00000000000OOOOOOkkkkkkxxxxxxxdddddddddooooolllllccccccccccccccccclcccccccc::::;;;;,,''''.....................................................................'''''''''''''''''',,,,,,;;;;:::ccllooodddxxxxxxxxxxxxxxxxxxxddddooollcc:::;;,,,,',,',,,;;;::ccllloooodddddddddddoooooollllllllllllloooodddxxxxkkkkkkkkxxxdoolllccc::::::::::::c:::::::::::::::::ccccclllllllllllllllllllllllllllllllllcclcccccccccccccccccllllllllllllllllllllllllllcccccccccccccccccccccccccccllllllllllllllllllllllllllllllllllllll
;;;;;;;;;;;;;;,,,,,,,'''''''''''''................''''',,,,,;;;;;;,,,,,,;;;;;;::cclloddxkkOO000KKKKKXXXXXXNNNNNNNNNWNWWWWWWWWWWWWWWNNNNNNNNNNNNNNNNNNNNXXXXXXKKK0000OOkkkxxddollc::;;,'''...... .....'',,;:ccllooooddddooooooooooollllllllllllooooddxxxxxkkkkkkkkkkOOOOOOOOOO00000000000000000OOOOOOkkkkkkkkkkkkkkxxxxxdddoooollllllllllllllllllllllccccccc::::;;;,,,'''......................................................................''''''''''''''''''''',,,,,;;;::cccllloooddddxxxxxxxxxxxxxxxxxddddoollcc:::;;,,,,,,,,,,;;;:::cclllooooodddddddoooooooolllllllllllllooooodddxxxxkkkkkxxxxddoollccc:::::::::::::ccc:::::::::::::::ccccccllllllllllllllllllllllllllllllllllcccccccccccccccccllllllllllllllllllllllllcccccccccccccccccccccccccccccccclllllllllllllllcccccccccccccccccccc
;;;,,;;;;;,,,,,,,,,,,'''''''''.....................'''',,,,,,;;,,,,,,,,,,,;;;;:::cclooddxkkkOOOO000000KKKKXXXXNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWNNNNNNNNNNNNXXXXXKKKKK000OOOkkxxdoolcc:;;,''....... .....'',;::clloooodddddooooooooooooollllllllllooodddxxxkkkkkkOOOOOOOOOOOOOOOOOO00000000000000000OOOOOOOOOOOOOOOOOOOkkkkxxxxdddooooooooooooloolllllllllllccccc:::;;;,,'''........................................................................''''''''''''''''''''''',,,,;;;:::cclllooodddddxxxxxxxxxxxxxxxxdddoollcc::;;;,,,,,,,,,,;;;:::cclllooooodddddooooooooollllllllllllllooooodddxxxxkkkkxxxxdoolllcc::::::::::::cccc::::::::::::::::ccccccccllllllllllllllllllllllllllllllllcccccccccccccllccllllllllllllllllllllllllcccccccccccccccccccccccccccccccccclccccccccccccccccccccccccccccccc
,,,,,,,;;,,,,,,,,,''''''''''''.....................''''',,,,,;,,,,,,,,,,,,;;;;;:::cclloddxxxkkkkOOOOOOO000KKKXXXXXNNNNNNNNNNNNWWWWWWWWWWWWWWWNNNNNNNNNNNXXXXXKKKKKK0000OOkkxxdollc:;,,'.......... ......',;;:clloooodddddddooooooooooooooooollooooodddxxxkkkkOOOOOOOOOOOOOOOOOOOOOOOO0000000000000OOOOOOOOOOOOOOOOOOOOOOOOkkkxxxxdddddddoooooooooooooollllllllcccc::;;;,,'''......................................................................''''''''''''''''''''''''''',,,,;;;:::cclllooodddxxxxxxxxxxkxxxxxxxddoollcc::;;;;,,,,,,,,;;;;::ccclllloooooooooooooooolllllllllllllllloooodddxxxxxxxxxxxddoollccc:::::::::::::c:::::::::::::::::::ccccccccllllllllllllllllllllllllllllllcccclccllccccclllllllllllllllllllllllllllcccccccccccccccccccccccccccccccccccccccccccc:::::::::::::ccccccccc
,,,,,,,,,,,,,,,,,''''''''''''''....................''''',,,,,,,,,,,,,,,,,,,;;;;;:::ccllooddxxxxxkkkkkkkOOO000KKKXXXXXNNNNNNNNNNNWWWWWWWWWWWNNNNNNNNNNNNXXXXXXXKKKKKK0000OOkkxddolc:;,,'........................ ......'',;:cclloooddddddddoodddddodddooooooooooooddddxxkkkOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOkkkkxxxxxddddddddddddooooooooollllllccc::;;,,,''......................................................................'''''''''''''''''''''''''''''',,,,;;:::cclllooodddxxxxxxxkkkkkkkxxxxddoollcc::;;;;,,,,,,,;;;;:::cclllloooooooooooooolllllllllllllllllloooodddxxxxxxxxxxddoollccc:::::::::ccccc::::::::::::::::::::cccccccccllllllllllllllllllllcccllllccccllllcllcllllllllllllllllllllllllllllllllllcccccccccccccccccccccccc:ccccc::::::::::::::::::::::::::::::::
,,,,,,,,,,,,,,,,,''''''''''''''....................'''''',,,,,,,,,,,,,,,,,,,;;;;;:::ccllooddddxxxxxxxxkkkOOO00KKKKXXXXXXNNNNNNNNNNNNWNNNNNNNNNNNNNNNNNNXXXXXXXXKKKKKKK000OOkxxdolc:;;,'''...........''''''........................'',;;:cllloodddddddooooooodddddddoooooooooooddddxxxkkkOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOkkkkkxxxxxxxxdddddddddoooooooolllllccc::;;,,'''.....................................................................'''''''''''''''''''''''''''''''',,,;;;;::ccclloooddxxxxxxkkkkkkkkkkxxxddoollcc:::;;;;,,,,,,;;;:::ccclllloooooooooollllllllccccccclllllooooddddxxxxxxxxxddoolllcc::::::::::ccc:::::::::::::::::::::ccccccccccllllllllllllllllllllllllcllclllllllllllllllllllllllllllllllllllllllllllllllllllllcllcclcccccccc::::::::::::::::;;:;;;;;;::::::::::::::
,,,,,,,,,,,,,,,,'''''''''''''''.....................'''''',,,,,,,,,,,,,,,,,,,;;;;;:::ccllooodddddxxxxxxkkkOO000KKKKXXXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXXXXXXXXKKKKK000Okkxdollc:;;,,,,,,,,,,;;;;:::::::::;;;,,,''............'',,;::cllooodddddooooooooooooooooooooooooooooodddxxxkkkkOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO00OOOOOOOOOOOkkkkkkkxxxxxxxxxxddddddoooooollllccc:::;;,,'''....................................................................'''''''''''''''''''.....''''''''',,,,,;;;::ccclloodddxxxxxkkkkkkkkkkxxxddoolllcc::::;;;;,,,;;;;:::cccllllllloolllllllllccccccccccclllloooodddddxxxxxxxxddooollccc:::::::::ccc:cc:::::::::::::::::::::ccccccccllllllllllllllllllllllcclccllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllccccccc:::::::::::::::;;;;;;;;;;;;;:;:::::::::
,,,,,,,,,,,,,,,,''''''''''''''''..................''''''''',,,,,,,,,,,,,,,,,,,,;;;;:::cclllooodddxxxxxkkkkOO000KKKKXXXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXXXXXXXXXXXKKKK000Okkxdollc::;;;;;:::cclllooodddddoooollcc:;;,,'''....''',,;::cclloooddddooooooooooooooooooolllllllllooooddddxxxkkkkkkOOOOOOOOOOO0OOOOOOOOOOOOOOOOOOOOOOOOOOOOOO000000000000OOOOOOOOOkkkkkkkkxxxxxxxxxxxdddddooooolllccc::;;;,,'''.....................................................................'''''''''''''''.'.....''''''''''',,,,,;;:::ccllooodddxxxxkkkkkkkkkkkxxdddooollccc:::;;;;;;;;;;:::ccccclllllllllllcccccccccccccccclllloooodddddxxxxxxxdddoolllccc:::::::cccccccc::::::::::::::::::::cccccccclllllllllllllllllllllllllccllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllccccccc:::::::::::::::;;;;;;;;;;;;;;::::::::::
,,,,,,,,,,,,,,,,,,,'''''''''''''''...............'''''''''',,,,,,,,,,,,,,,,,,,,,,,;;;::ccllooodddxxxkkkkOOO000KKKKXXXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXXXXXXXXXXXXXKKK000OkkxddollcccccllooddxxxkkOOOOOOOOkkkxxdolcc:;;,,'''',,,;::ccllooodddddddooooollllllllllllllcllcllllllllooooddddxxxxkkkkkOOOOOO0000000000OOOOOOOOOOOOOOO0000000000000000000000OOOOOOOkkkkkkkkkkkkkxxxxxxddddooooolllccc::;;;,,'''......................................................................'''''''''..''........'''''''''''',,,,;;;::ccllloodddxxxxxkkkkkkkkkkxxxdddoolllccc:::;;;;;;;;;;:::cccccccccccccccccccccc::ccccccclllooooodddddxxxxxddddooolllcccc:::::cccccc::::::::::::::::::::::cccccccccllllllllllllllllllllllcllccllllllllllllllllllllllllllllllllllllllllloooooooooooollllllccccccc::::::::::::::::::::::::::::::::::;::::
,,,,,,,,,,,,,,,,,,,,,,''''''''''''''.'.....'''''''''''''''''''''''''''''''''''',,,,;;;::ccloodddxxkkkOOOO0000KKKXXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXXXXXXXXXXXKKK00OOkxxddooooodddxxkkOO000KKKKKKKKKK00OOkxdolc::;;,,,,;;;:cclloooddddddddooollllcccccccccccccccccccccccccllllloooodddxxxkkkkOOOOO0000000000000000000000000000000000000000000000000OOOOOOkkkkkkkkkkkkkkxxxxdddddooolllccc:::;;,,,'''........................................................................'..''.............'''''''''''',,,,,;;::ccclloooddddxxxxxkkkkkkxxxxxddddooollccc::;;;;;;;;;;::::::::::::::::ccc:c::::::::cccccllloooodddddddxxxdddddooollccccc::::ccccccc::::::::::::::::::::ccccccccccclllllllllllllllllllllccllcllcclllllllllllllllllllllllllllllllllllooooooooooooooolllllcccccccc::::::::::::::::::::::::::::::::::::::
,,,,,,,,,,,,,,,,,,,,,,,,''''''''''''''''''''''''''''''''''''''''''''''''''''''''',,,;;::clloddxxkkkOOO000KKKKKXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXXXXXXXXXXXXKKK00OOkkxxxxxxxkkOO000KKXXXXXXXNNXXXXXK00Okxdolc::;;;;;;::cllooodddddddddooolllccc:::::::::::::::::::::::cccccccllllooodddxxxkkkOOOOOO0000000000000000000000000000KKKKKKKKKKK0000000OOOOOOOOOOkkOOkkkkkkxxxxddddoooolllccc::;;;,,,'''........................................................................................''''''''''''',,,,;;;:::ccllllooooddddxxxxxxxxxxxxxddddooolllcc:::;;;;;;;;;;;;;;;;;;;;:::::::::::::::::::ccccllloooodddddddxxddddddoolllcccc::::::cccccc::::::::::::::::::ccccccccccccccllclllllllllllllllccccccccccllllllllllllllllllllllllllllllllllllooooooooooooooolllllcccccccc:::::::::::::::::::::::::::::::::::::
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,'''''''''''''''''''''''''''''''''''''''''''''''''''',,,;::cloodxxkkOOO000KKKXXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXXXKK000OOOkkkkOOO000KKXXXXXNNNNNNNNNNNXXXK0Okxdolcc::;;:::ccllooodddddddddooolllcc::::;;;;;;;;;;;;;;::::::::::::::cccccllloodddxxxkkkOOOOOO0000000000OO00000000000KKKKKKKKKKKKKKKK00000OOOOOOOOOOOOOOOOkkkkkxxxxdddoooolllccc::;;;,,'''''......................................................................................''''''''''',,,,,,;;;:::cccclllllooooodddddddxxddddddddooolllcc:::::;;;;;;;;;;;;;;;;;;;;:::::::::::::::::cccllloooooddddddxxxxxddddoolllccc::::::::::::::::::::::::::::c::ccccccccccccccccccllllllllllllllcccccccccccccllllllllllllllllllllllllllllllllloooooodddoooooolllllccccccccc::c:::::::::::::::c::::::::::::::::
,,,,,,,,,,,,,;;,,,,,,,,,,,,,,''''''''''''''''''''''''''''''...'.............'''',,,;::cloddxkkOO00KKKKXXXXNNNNNNNNNNNNNNNNNNNWNWWNNWNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXXKKK000OOOOO0000KKKXXXXNNNNNNNNNNNNNNNXXK0Okxdolcc::::::cccllooodddddddoooollccc::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::ccccllooodddxxkkkkOOOOOOOOOOOOOOOOOOOO0000000KKKKKKKKKKKKK000000OOOOOOOOOOOOOOOOOOkkkkxxxxdddooolllccc:::;;,,,,''''''''''''''''''...............'''''''''''.............................................'.''''''''',,,,,;;;:::::cccccclllllloooooooddddddddddooollllccc:::::;;;;;;;,,,,,,,;;;;;:::::::::::::::::cccllloooooddddxxxxxxxxdddoollccc::::::::::::::::::::::::::::cccccccccccccccccccccccllllllllccllccccccccccccccllllllllllllllllllcccccccccccllllooooooodoooooollllllccccccccccccccccccccccccccccccc::::::::::::
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,'''''''''''''''''''''''''....................''',,,;:cloodxkkO00KKKXXXXXNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXXKK000000000KKKXXXXXNNNNNNNNNNNNNNNNNXXK0Okxdolcc::::::cclllloooooooooollllcccc::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::cclllooddxxxxkkkkkkkkkkkkkkkkkkkOOOOOO0000000KKKKKK000000OOOOOOOOOOOOOOOOOOOOkkkkkxxxddddooolllcc::::;;,,,,,,,,,,,,,,,,,,''''''''''..'''''''''',,''''''''''.......''.'''''...........................''''''',,,,,;;;;;::::::::ccccccccclllllllooooooooooolllllcccc:::::;;;;;;,,,,,,,;;;;;::::::::::::::::::cccclloooodddxxxxxxxxxxddoollccc::::::::::::::::::::::::::::ccccccccccccccccccccccccllllllllcccccccccccccccccccclllllllllllccccccccccccccccclllloooooooooooollllllcccccccccccccccccccccccccccccccccc:::::::::
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,'''''''''''''''''''''''....................'''',,;;:clodxkkO00KKXXXXNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNNNNNNNNNNNNNNNNXXXKKKK000000KKKKXXXXXNNNNNNNNNNNNNNNNNXXKK0Okdoolcc:::::::cccclllllllllllllccccc:::::;;;;;;;;;;;;;;:::::::::::;;;;;;;;;;;;;:::ccclloooddddxxxxxxxxxxxxxxxxxxxkkkkOOOOO000000000000OOOOOOOOOOOOOOOOOOOOOOOOkkkkxxxxddddoollllccc:::;;;;;;;;;;;;;;;;;;,,,,,,'''''''''',,,,,,,,,,,,,,,'''''''''''''''''''''''''....................''''''',,,,,;;;;;;;::::::::::::::::ccccccclllllllllllllcccccc::::::;;;;;;;;,,,;;;;:::::::::::::::;::::::ccllloooddddxxxxxxxxxxddoollccc::::::::::::::::::::::::ccccccccccccccccccccccccccccclllllllcccccccccccccccccccccccccccccccccc::::::::::::cccclllloooooooollllllllllccllcccccccccccccccccccccccccccc::::::::
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,''''''''''''''''.''''....................'''',,;;:clodxkkO00KXXXNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNNNNNNNNNNNNNXXXKKKK00000KKKKXXXXXXNNNNNNNNNNNNNNNNNXXK0Okxdollc::::;::::::ccccccccccccccccccc:::::;;;;;;;;;::::::::::::::::::;;;;;;;;;;;;;::::ccllllooooooooooooooooddddddxxxxxkkkkkOOOOOOOOOOkkkkkkkkkkkkkOOOOOOOOOOOOkkkkkxxxxdddooollllccc:::::::::::::::::::;;;;;,,,,,,,,,,,,,,;;;;;;;;;;,,,,,,,,,,,,,,,,,,,,,''''''''''''''.............'''''',,,,,,;;;;;;;;;;;;;;;;;;::::::::::::::ccccccccccccccc:::::::::;;;;;;;;;;;;:::::ccc::::::;;;;;;::::cclllooodddxxxxxkkxxxxddoollccc:::::;::;;;;;;;;;:::::::cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc:::::::::;;;;;;;:::::ccclllllllllllllllllllllllllccccccccccccccccccccccccccccc:::::
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,'''''''''''''.''.....................'''',,;;:cclodxkO0KKXXXNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNWWNWWNNNNNNNNXXXKKKK000KKKKKXXXXXXXNNNNNNNNNNNNNNNNXXKK0Okxdolcc::;;;;;;;:::::::::ccccccccccc:::::::::::::::::::ccccccccccc::::;;;;;;;;;;;;;::::ccccllllllllllllllloooooooooddddxxxxxxxkkkkkkkxxxxxxxxxxxkkkkkkkOOOOOOOkkkkkkxxxxddddooollllcccccccccccccccccccc:::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,'''''''''............'''''',,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::::::::;;;;;;;;;::::::ccccc:::::;;;;;;;;;:::ccllloodddxxxkkkkkkxxxddoolllcc:::::;;;;;;;;;;;;::::::ccccccccccccccccccccccccccccccccccccccccccccc:cccc::cc:cccc:::::::::;;;;;;;;;;;;;;;;;:::ccccclllllllllllllllllllllllcccccccccccccclllccccccccccccc:
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,'''''''''''''''.'''...............'''',,;;:cllodxkO00KXXNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNWNNNNNWWWWWWWWWWWWWNNNNNXXXXKKKKKKKKKKKXXXXXXXXNNNNNNNNNNNNNNNNXXK0Okkxdolc::;;;;;;;;;;;;;;;:::::::ccccc:::::::::::::::::ccccccccccccccc::::;;;;;;;;;;:::::::ccccccccccclllllllllllllllooooooddddddddddddddddddddddxxxxxkkkkkkkkkkkkkkkxxxxxxddddooooollllllllllllllllllllccccc::::::;;;;;;;;;;:::::::::::::ccccccc:::::::::;;;;;;;,,,,,''''''.............''''',,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::;;;;;;;;;:::::cccccccc:::;;;;;;;;;;;:::cclloodddxxxkkkkkkxxxxddoolllccc::::;;;;;;;;;;;;:::::::ccccccc:::::::::::::ccccccccccccccccccccc::::::::::::::::::::::;;;;;,,,,,,,,,,,,,,;;;;:::cccccllllllllllllllllllllllllccllccllllllllllccccccccccc
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,''''''''''''''''''''''.....'''''',,;;::cllodxkOO0KKXXNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNWWWWWWWWWWWWWWWWNNNNNXXXXKKKKKKKKKKXXXXXXXXXXNNNNNNNNNNNNNNXXKK0Okxdolcc:;;;;,,,,,,,;;;;;;;:::::::::::::::::::::::::::cccccccccccccccc:::::::::::::::::::cccccccccccccccccccccccllllllllooooooooooooooooooooooddddddxxxxxxxkkkkkkkxxxxxxxddddddoooooooooloooooooooolllllllcccc:::::::::::::::::ccccccllllllllllllllccccc:::::::;;;;,,,,''''.............'''''',,,,,,,,,,,,,,,;;;;;;;;;;;;;;,,,,,,,,,,,,;;;;;;;;;;;;:;;;;;;;;;;;;:::::cccccccc:::;;;;,,,,,;;;:::ccllooddxxxkkkkkkkkxxxddoolllccc::::;;;;;;;;;;;;::::::::::::::::::::::::::::cccccccccccccccccccccccc::::::::::::::;;;;;,,,,,,'''''''''',,,;;;::::cccccllllllllllllllllllllllcllllllllllllllllllllcccccc
,,,,;;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,'''''''''''''''''''''''''',,,;;:ccloodxkOO0KKXXNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNWWWWWWWWWWWWWWWWNNNNNXXXXKKKKKKKKXXXXXXXXXXXXNNNNNNNNNNNNNXXXK0OOkxdolc::;;;,,,,,,,,;;;;;;;:::::::::::::::::::::::::::ccccccccccccccccc:::::cccccccccccccccccccccccccccccccccccccclllllllllllllllllllllllllllooooooddddddxxxxxxxxxxxxxxddddddddooooooooooooooooooooooolllllcccccc::::::::cccccllllloooooooddodoooooolllllcccc::::;;;,,,'''...............''''''''',,,,,,,,,,,,;;;;;;;;;;;;,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;::::::cccc:::::;;;,,,,,,,;;;::ccllooddxxxkkkkkkkkxxxxddooollccc::::;;;;;;;;;;::::::::::::::::::::::::::::cccccccclllllllllccccccccccccccccc::::::;;;;;,,,,,'''''''''',,,;;;:::ccccccllllllllllllllllllllllllllllllllllllllllllllllcll
;;;;;;;;;;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,'',',,,,,;;::cllodxxkOO0KKXXNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNWWWWWWWWWWWWWWWWNNNNNXXXXKKKKKKKKKXXXXXXXXXXNNNNNNNNNNNNNNXXKK0Okxdolcc:;;;,,,,,,,;;;;;;;;:::::::::::::::::::::::::::::::::ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccllllllloooooooddddddddddddddddddooooooooooooooooooooooooooolllllccccccc::::cccclllooooddddxxxxxxxxxxdddddooooolllccc:::;;,,''''..................''''''''''',,,,,,,,;;;;;;;;;;,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;:::::::::::::;;;;,,,,,,,,;;;::cllooddxxxkkkkkkkkkxxxdddoollccc::::;;;;;;;;;;:::::::::::::::::::::::::cccccccllllllooooooolllllllllllllllcccccc:::::;;;;;,,,,,,,,,,,,,;;;::cccccllllllllllllllllllllllllcclllllllllllllllllllllllllll
;;;;;;;;;;;;;,,,,,,,,,,,;;,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::ccloodxkkOO0KKXXXNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNWWWWWWWWWWWWWWWWWWNNNNNXXXXXKKKKKKKKKKXXXXXXXXNNNNNNNNNNNNNNNXXK0Okxxollc::;;,,,,;;;;;;;;::::::::::::::::::;;;;;;;;;;;:::::::::::::::::cccccccccllllcllccccccccccccccccccccccccccccccccccc::::::::::::ccc:ccccccccclllllllloooooooooooooooooooooollllllloooooooooooooooolllllccccccccccccclllooodddxxxkkkkkkkkkkkkxxxxxddddooolllcc::;;,,'''.......................'''''''',,,,,,,;;;;;;;;;;,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;;;;::::::::::::;;;;,,,,,,,,;;;::cclooddxxxkkkkkkkkkkxxdddoollccc:::::;;;;;;;;:::::::::::::::::::::ccccccclllllooooodddddddddddddddddooooooooollllccccc:::::;;;;;;;;;;:::ccclllllooooolllllllllllllllllllllclllllllllllllllllllllllllll
;;;;;;;;;;;;;;;;,,;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::::::::::::ccclloodxxkOO00KKXXXNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNNWWNWWWWWWWWWWWWNNNNNNXXXXKKKKKKKKKKKXXXXXXXNNNNNNNNNNNNNNNXXK00Okxdolc::;;;;;;;;;;;::::::::ccc:::::::::::;;;;;;;;;;;;;;;;;;;::::::::cccccccccllllcllccccccccccccc:ccccccccc::::::::::::::;;;;;;;;;:::::::::::::ccccccccccclllllllllllllllllllllllllllllllloooooooooolllllccccccccccccclloooddxxxkkkkOOOOOOOOOOkkkkkxxxxdddooolcc::;;,,,'''.........................'''''',,,,,,;;;;;;;;;;,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;::::::::::;;;;;;;,,,,;;;;::ccllooddxxxkkkkkkkkkxxddoollccc::::::;;;;::::::::::::::::cccccccccllllllooooodddddxxxxxxxxxxxxxxxxxxxxxxxxxdddddoooooollllllccccccclllloooodddddddddoooolllllcccclcccclllllcllllllllllllllllllllllllll
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:;;:::::::cccccccccclllllooddxxkkO00KKKXXXNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNNWWWWWWWWWWWWWNNNNNNNXXXXKKKKKKKKKKKXXXXXXXNNNNNNNNNNNNNNNXXKK0Okxdolcc::;;;;;;;::::::cccccccccccc:::::::::::::;;;;;;;;;;;;;;;;;::::::ccccccccccccccccccccc:::::::::::::::::::::::;;;;;;;;,,,,,;;;;;;;;;;;;::::::::::::::::cccccccccccccccccccccccccccclllllllllllllllllccccccccccccclllooddxxkkkOOOOOOOOOOOOOOOOkkkkkxxxddoollcc:;;,,,'''...........................'''''',,,,,,;;;;;;;;;,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;;:::::::::::;;;;;;;;;;;;;:::ccllodddxxxkkkkkkkxxxddoollcc::::;;;;;;::::::::::ccccccccllllllloooodddddxxxxxkkkkkkkOOOOOOOOOOOOOOOOOOOOkkkkkkxxxxxxxxddddddddddddxxxxxkkkkkkkkkxxddoollllccccccccccllllllllllllllllllllllllllllllll
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::ccccccllllooooooddddxxkkkOO00KKXXXXNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNWWNNNWWWWWWWWWWWWNNNNNNXXXXXKKKKKKKKKKKXXXXXXNNNNNNNNNNNNNNNNXXKK0Okxdolcc::;;;:;;:::::cccccccclcccccccc::::::::::::;;;;;;;;;;;;;;;;;::::::::::::::cc::::::::::::;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;;;;:::::::::::::::::::::::::::::cccccccllllllllcccccccc:::ccccclloodddxxkkOOOOOO0000OOOOOOOkkkkkxxxddoollcc:;;;,,''''............................'''''',,,,,,;;;;;;,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;::::::::::::::;;;;;;;;;;:::::cclloooddxxxxkkkkxxxddoollcc:::;;;;;;;;::::::::ccccclllllooooddddxxxxxkkkkkkOOOOOOO0000000000000000000000000000OOOOOOOOOOOOOOOOOOOOO0000000000OOOkkxddoollcccccccccccllllllllllllllclllllllllllllllll
,,,;;;;;;;;;;;;;;;;,,;;;;;;;;;;;;;;;;;:::::cccllllooodddxxxxkkkOOO000KKXXXXXNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNWNNNWWWWWWWWWWWWNNNNNNNXXXXKKKKKKKKKKKKXXXXXXNNNNNNNNNNNNNNNNXXKK0Okxdolcc:::::::::::cccccccllllllllccccccc:::::::::::;;;;;;;;;;;;;;;;;;:::::::::::;;;;;;;;;;;;;;,,,,,,,,,,,,,,,,,,,,,,,''''''''''''''',,,,,;;;;;;;;;;;;;;;;;;;;;;;;;::::::::;;;;;;;:;;:::::::ccccccccccccccc:::::::cccclloooddxxkkOOOOOOOOOOOOOOOOOkkkkkxxxddoollcc:;;;,,'''''.............................''''',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;::;:::::::::::::::::::::;;;;:::::ccclllooddxxxxxxxxxdddollcc::;;;;;;;;;;;:::::ccccclllooodddxxxkkkkkOOOOOOO000000000KKKKKKKKKKKKKKKKXXKKXXKKKKKKKKKKKKKKKKKKKKKKKKKXXXXXXXXXXKKK00OOkxddollcccccccccccllllllllllccccccccccccclcccllccc
,,,,,,,;;;;;;,,;;;;,,,;;;;;;;;;;;;;;;:::::cccclloooddxxkkkOOOO000KKKKXXXXNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNWWNNNWWWWWWWWWWWWNNNNNNNXXXXKKKKKKKKKKKKXXXXXXNNNNNNNNNNNNNNNNXXKK0Okxdollc:::::::::::ccccccclllllllllccccccc::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,,'''''''''',,,,,,,,,''''''''''''''''''',,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::cccc:::::::::::::ccclllooddxxxkkkOOOOOOOOOOOkkkkkkkkxxxdddoolcc::;;;,,,'''''..............................''''''',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;::::::::::::::::::::::::::;;;:::::::cccllooodddxxxxxxxdddollcc::;;;,,,,;;;;;::::ccclllooddxxxkkkOOOO000000000KKKKKKKKKKKKKXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXNNNNNNNNNNNNNNNNXXKK0OOkxdoollcccccccccccllllllllccccccccccccccccccccccc
,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;::::::cclllooddxxkkOO000KKKKXXXXXNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNXXXXKKKKKKKKKKKKKXXXXXXNNNNNNNNNNNNNNNXXKK00Okxdollc::::;;:::::::ccccccclllllccccccccc::::::::::::;;;;;;,,,,,,,,,,,,,,,,,,,,'''''''''''''''''''''''''''''''''''''''''''''''''''''',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;,,,,,,,,,,,,,,;;;;;;;:::::::::::::::::::::::ccclloooddxxxkkkkkkkkkkkkkkkkkxxxxxddddoollcc::;;;,,,'''''.................................''''''''',,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;:::::::::::::::::::::::::::;;;;::::::::cccllloodddxxxxxxdddollcc:;;;,,,,,,;;;;::::cccllooddxxkkOOO00000KKKKKKKKKKKKKKKKKXXXXXXXXXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWNNNXXKK0Okkxdollccccccccccclllllllcccccccccccccccccccccccc
,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;:::::cccllooddxxkOO000KKKXXXXXNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNXXXXKKKK0000KKKKKKXXXXXXNNNNNNNNNNNNNNXXKK00Okxdollc:::;;;;;;:::::::cccccccccccccccc::::::::::::;;;;;;,,,,,,,,,''''''''''''''.......................'''''''''''''''''''''''''''''',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;::::::::::::::::::ccclllooodddxxxkkkkkkkkkkxxxxxxxdddddooollccc::;;;,,,'''''....................................'''''''''''''''''',,,,,,,,,,,,,,;;;;;;;;::::::::::;;::;;;;;;;;;;;;;;;;;;;;;::::::cccllloodddxxxxdddoolcc::;;,,,,,,,;;;;::cccllooddxxkkOO000KKKKKKKKKKKKKKKKKKKKXXXXXXXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWNNNXXK00Okxddoollcccccccccclcccccccccccccccccccccccclllll
,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;::::::cccllooddxkkO00KKKXXXXNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNXXXKKK00000000KKKKKXXXXXXNNNNNNNNNNNNXXXKK00Okxdolcc::;;;;;;;;;;;;:::::::ccccc::::::::::::::;;;;;;;;,,,,,''''''''...................................'''''''''''''''''''''''''''''',,,,,,,,,,,,',,'''''''',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;:::::::::cccllloooddddxxxxxxxxxxxxxddddddooooolllccc::;;;,,,,'''''........................................'.'''''''''''''''',,,,,,,,,,,;;;;;;;;;:::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::ccclloodddxxxxdddoolcc:;;;,,,,,,;;;;::ccclloodxxkkOO0000KKKKKKKKKKKKKKKKKKKKKKKKXXXXXXXNNNNNNNNNNNNNWWNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNXXKK0Okkxddollllllccccccccccccccccccccccccccccccllllll
,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;::::::::::ccclloodxxkkO00KKXXXXNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNXXXKKK0000000000KKKKKXXXXXXNNNNNNNNNNXXXXKK00Okxdolcc::;;;;,;;;;;;;;;;;:::::::::::::::::;;;;;;;;;,,,,,,'''''........................................''''''',,,,,,,',,,,'''''''',,,,,,,,,,,,,'''''''''''''''',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;:::::::ccclllloooddddddxxxxddddddddoooooolllccc::::;;,,,,,'''''......................................................''''''',,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::ccclloodddxxxxddoollc::;;;,,,;;;;;:::ccllloodxxkkOOO0000000KKKKKKKKKKKKKKKKKKKKKKKXXXXXXNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNXXKK0Okkxddoolllllccccccccccccccccccccccccccccclllllll
,,,,,,,,;;;;,,,,,,,,,,;;;;;;;;::::::::::::ccclloodxxkOO00KKXXXXNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNXXXKKK000OOOOOOOO000KKKKXXXXXXNNNNNNNNNNXXXKK00Okxdollc::;;;;,,,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,'''''..........................................''''',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,''''''''''''''''''''''',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;::::::cccllllooooddddddddddddoooooolllllcccc:::;;;;,,,,''''''........................................................'''''',,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;,;;,,,;;;,;;;;;;;;;;;::::clloodddxxxxdddoollc:::;;;;;;;;:::ccclloooddxxkkOOOOOO000000000000000000000000KKKKXXXXXXNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNXXKK00Okkxddoolllllccccccccccccccccc:ccccccccccccllllll
,,,,,;;;;;;;;;,,,,,,,,;;;;;;:::::::::::::cccllloddxxkOO00KKKXXXXNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNXXXXXKKK00OOOkkkkkkkOOO000KKKKXXXXXXNNNNNNNNXXXKK00Okxddolc::;;;,,,,,,,,,,,,,,,,,,;;;;;,,,,,,,,,,,,,,,,'''''...........................................''''',,,,,;;;;;;;;,,,,,,,,,,,,,,,,,,,,''''''''''''''''''''''''',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;::::::ccccllllooooooooooooooooolllllllccccc::::;;;;,,,,''''''''........................................................'''''''',,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;,,;;;;,,,,,,,,,;;;;:::cclloodddxxxxdddoollcc::::;::::::cccclllooddxxxkkkkkOOOOOOOOOOOOOOOOOOOOOOOOO00000KKKXXXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNWWWWNNNNNNNNNXXKKK0OOkkxddoolllllcccccccccc::::::::::::::::cccccccccll
,,;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::::::::cccclloodxxkkO000KKXXXXXXNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNNNNXXXXXXXKK000OOOkkxxxxxxxxkkkOO000KKKXXXXXNNNNNNNXXXXKK00Okxddolcc::;;,,,,,,,'''',,,,,,,,,,,,,,,,,,,,,,,,''''''.............................................'''',,,,,;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,''''''''''''''''''''''',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;::::::cccclllllloooooooooollllllllllccccc:::::;;;;;,,,,,,,''''''''.......................''''....''......................'''''''',,,,,,,,,,;,;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,;;;;::ccclloodddddddddooollccc::::::::ccccllllooodddxxxxkkkkkkkkkkkkkkkkkkkkkkkkkkkkOOOO000KKKKXXXXXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXXKKK00OOkkxddoollllccccc::::::::::::::::::::::::::::ccccccc
;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::ccclloodxxkkOO00KKKXXXXXNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNXXXXXXXKKKK000OOOkkxxxdddddddddxxxkkOO00KKKXXXXXNNNNNNXXXXKK0OOkxddolcc::;;;,,,,''''''''''''',''''''''''''''''''''...........................................''''''',,,,,;;;;;::::::::;;;;;;;;;;;,,,,,,,,''''''''''''''''''''',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;::::::cccclllllllllllllllllllllcccccccc:::::::;;;;;;,,,,,,,,,,,,''''''.........''''''''''''''''''''''''''''.................''''''''',,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,;;;:::cclloooddddddddooolllccccccccccccccllllloooddddxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxkkkOOO0000KKKKKKKXXXXXXXXXXXXXXXXXXXXXXXXXXXKKKKKK000OOkkxxddoollcccc::::::::::;;;;;;;;;;;;;;;;;;;:::::::::cc
;;;:::::::::::::;;;;;;;;;;;;::;;:::;::::::cccllooddxkkOO00KKKXXXXXNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNXXXXXXKKKK0000OOOkkkxxxddooolllllooodddxkkOO000KKXXXXXNNNXXXXXKK00OOkxddolcc::;;;,,,,''''''''''''''''''''''''''''''''..........................................''''''''',,,,;;;;;:::::::::::::::;;;;;;;;,,,,,,,'''''''''''''''''',,,,,,,,,,;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,,,,,,;;;;;;;:::::cccccccllllllllllllllllcccccccccc::::::::;;;;;;;;;,,,,,,,,,,,,''''''''''''''''',,,,,,,,,,'''''''''''''''................''''''''',,,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,;;;;:::ccclllooodddddooooolllllccccccclllllllloooodddddddxxxdddddddddddoddddooddddddddxxxkkOOOO000000KKKKKKKKKKKKKKKKKKKKKK00000000OOOOkkkxxxddoollcc::::;;;;;;;;;;;;;;;;;;;;,,,,;;;;;;;;;;;;:::::
::::::::::::::::::::::::::;:::;;;;;;;;::::cccllooddxkkOO00KKKXXXXXNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNXXXXKKKK000OOOkkkkxxdddoollllccccclllooodxxkkOO00KKKXXXXXXXXXXXKKK0OOkxxdollcc:::;;;,,,''''''''''''''''''''''''''''''''''.......'''''''''''''''''''''''''''''''''''''',,,,,,,;;;;;::::::::::::::::::;;;;;;;,,,,,,,,,'''''''''''''',,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,;;;;;;;:::::ccccccccccccccllcccccccccccccccccccc:::::::;;;;;;;;;;;;;;;;;,,,,,,''''''''',,,,,,,,,,,,,,,,,,,,,,,''''''''''...............''''''''',,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;,,;,;;;;;;:::ccclllooooooooooooolllllllllllllllllloooooodddddddddddddddoooooooooooooooooooooodddxxkkkkOOOOOOOO000000000000000OOOOOOkkkkkkxxxxxdddoollccc:::;;;;;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;
:::cccccccccc:::::::::::::::;;;;;;;;;;;::::cclloodxxkkOO00KKKXXXXNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNXXXKKK000OOOkkkxxxdddoolllcccccccccclllooddxxkkOO00KKKXXXXXXXXXKK00OOkxxdoollcc:::;;;,,,,'''''''''''''''''''''''''''''''''''''''''''',,,,,,,,,,,,,,,,,,,',,',',,,,,,,,,,,,,,,,;;;;;::::::::::::::::::::;;;;;;;,,,,,,,,,,''''''''',,,,,,,,;;;;;;;::::::::::::::;;;;;;;;;;;,,,,;;;;;;;;;::::::ccccccccccccccccccccccccccccccccccccc:::::::::;:;;;::;;::;;;;;;,,,,,'''',,,,,,,,,,;;;,,,,,,,,,,,,,,,,,''''''''................'''''''',,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::ccccllllloooooooolllllllllllllllloooooooooddddddddddddddddooooooooolllllllllllllooodddxxxxxkkkkkkkkkkOOOOOOkkkkkkkxxxxxddddddooooollllcc:::;;;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;
ccccccccccccccccccc::::::::::;;;;;;;;;;;:::cclloddxxkkOO00KKXXXXXNNNNNNNNNNNNNNNNNNNWWNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNXXXKKK00OOOkkkxxxdddooolllccccccccccclllooodxxkkkOO00KKKKKKKKKKK000OOkxxdoollccc:::;;;,,,,''''''''''''''''''''''''''''''''''''''',,,,,,,;;;;;;;;;;;;;,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;::::::::::::::::::::::;;;;;;;;,,,,,,,,,,,,,,,,,,,,,,;;;;;;:::::::::::::::::::::::;;;;;;;;;;;;;;;;;::::::::ccccccccccccccccccccccccccccccccccc:::::::::::::::::::::::;;;;;;,,,,,,,,,,,,;;;;;;;;;;;;;;;;,,,,,,,,,,,,''''''...............'''''''',,,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::ccccclllllllllllllllllllllllllloooooooooodddddddddddddddddooooooolllllllllccccclllllooooddddddddxxxxxxxxxxxxxxxdddddooooooollllllllcccc:::;;;,,,,,'''''''''''''''',,,,,,,,,,,,,,,,,,,,,,;;;;
cccccccccccccccccccc:::::::::;;;;;;;;;;::::cllooddxkkOO00KKKXXXXNNNNNNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNNXXXKK000OOOkkkxxxdddooolllcccccccccclllloooddxxxkkOOO00000KK00000OOkkxddoollccc::::;;;,,,,'''''''''''''''''''''''''''''''''',,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,;;;;;;::::::::::::::::::::::;;;;;;;;;;;,,,,,,,,,,,,,,,,,,;;;;;::::::cccccccccccccccc::::::::::::;;;::::::::::::::::cc:::::::::::cccccccccccccccccccccc:::::::::::::::::::::;;;;;,,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,'''''''............'''''',,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::ccccccllllllllllllllllllllooooooooooooooddddddddddddddddddddooooooollllllccccccccccccllllloooooooooooooodddoooooooolllllllllccccccccccc::::;;;,,,,'''''''''''''''''',,,,,,,,,,,,,;;;;;;;;;;;;
ccccccccccccccccccc::::::::::;;;;;;;;::::ccclloddxxkOO00KKXXXXNNNNNNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNNNXXXKKK00OOOkkkkxxxxdddoooolllccccccllllloooodddxxxkkkOOOOOOOOOOOkkkxxddoollcccc::::;;;,,,,'''''''''.'''''''''''''''',,,,,,,,,,,,;;;;;;;;;;;;::;:::;;;;;;;;;;;;;;;;;;;;;;;;,,;;;;;;;;;:::::::::::::::::::::::::;;;;;;;;;;;;,,,,,,,,,,;;;;;;;:::::cccccccccccccccccccccccc:::::::::::::::::::::::::::::::::::::::::ccccccccccccccccccc:::::::::::::::::::::;;;;;;;,,,,,,;;;;;;;::::::;;;;;;;;;;;;;;,,,,,,,,''''''''''...''''''''',,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::ccccccccllllllllllllllllllllooooooooooooodddddddddddddddddddddoooooooolllllccccccccccccccccclllllllllllllllllllllllllccccccccccccccccccc::::;;;,,,,''''''''''''''''',,,,,,,;;;;;;;;:;:::::::::
cccccccccccccccccc:::::::::::::;;:::::::ccllloddxxkOO00KKKXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNNNNXXXXKKK000OOOOkkkkkxxxdddooolllllllllllllooooooddddxxxxkkkkkkkkxxxdddoolllccccc::::;;;;,,,,'''''''''''''..''''''''',,,,,,,,,;;;;;;;;;;;:;:::::;;;;;;:::::::;;:::;;;;;;;;;;;;;;;;;;;;;:::::::::::::::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;::::::cccccclllllllllllllccccccccccc:::::::::::::::::::::::::::::::::::::cccccccccccccccccc:::::::::::::::::;::;;;;;;;;,,,;;;;;;;::::::::::;::;;;;;;;;;;;,,,,,,,''''''''''''''''''',,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::::ccccccclclllllllllllllllllloooooooooooooodddddddddddddddddddddoooooooollllllcccccccccc:::cccccccccclcllllllllllllccccccccccccccccccccccccc:::;;;,,,''''''''''''''',,,,,;;;;;:::::ccccccccccccc
cccccccccccccc:::::::::::::::::::::::::ccllloddxkkOO00KKXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNNNNXXXXKKKK000000OOOOOkkkxxdddooolllllllllllllllllooooddddddxddddddddooolllccccccc:::::;;;,,,,'''''''''''''''''''''',,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::::::::::;;;;;;;;;;;;;;;;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::ccccccccllllllllllllllllccccccccccccccccc:::::::::::::;;;;;;::::::::::ccccccccccccccccccc:::::::::;:;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::;;;;;;;;;;;,,,,,,'''''''''''''''',,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::::cccccccccllllllllllllllllllllooooooooooooooddddddddddddddddddddddooooooolllllccccccc::::::::cccccccccccccllllllllllcccccccccccclllllllllcccc:::;;,,,,''''''''''''',,,;;;;:::ccccllllllooooooooo
ccccccccccc::::::::::::::::::::::::::cccllooddxkkOO00KKXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNWNNWNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNNNXXXXXXKKKKKKK0000OOOkkxxddooolllccccccccccccclllllooooooooooooooollllccccccccccc::::;;;;,,,,,,,,''''''''''''''',,,,;;;;;;;;::::::;;;;;;;;;;;;;;;;;::::::::::::::::::;;;;;;;;;;;;;;::::::::::::c:::::ccc:::ccccccc:::::ccc:::c::::::::::::::ccccccclllllllllllllllllccccccccccccccc:::::::::::;;;;;;;;;;;;;::::::::ccccccccccccccccccc:::::::;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::::::;;;;;;;;,,,,,,,,''''''',,,,,,,,,;;;;;;;;::::::::::;;;;;;;;;;;;;;;;;;;;::::::::::ccccccccllllllllllllllllllllllloooooooooooooooddodddddddddddodddddooooooolllllccccccccccccccccccccccccccllllllllllllcccccclclllllllllllllccc::;;;,,,''''''''''',,,,;;:::cccllloooddddddddxxxxd
ccccccccccc:::::::::::::::::::::::::ccclloodxxkOO00KKXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNWNNNNNNNWWNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNWWNNNNNNNNNNNXXXXXXXXKKKKK000OOkkxxddoollccccc:::::::cccccclllllooooooollllllccccccccccccccccc::::;;;;;;,,,,''''''''''',,,,,;;;;;:::::::::;;;;;;;;;;;;;;;;;::::::::::::::::::::;;;;;;;;;;;::::::::::::::ccccccccccccccccccccccccccccccccccccccccccccccccccccccllllllllllccccccccccccccc:c:::::::::;;;;;;;;;;;;;;;;;;;:::::::::cccccccccccccccc::::::::;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::::::::;;;;;;;;;,,,,,,,,,,,,,,,,,,,,;;;;;;;;:::::::::::::::::;;;;;;;;;;;;;:::::::::::::cccccccclllllllllllllllllllllollloooooooooooooooooooooooooddddddddddoooooolllllllccccccccccccccccccccllllllllllllllllllllllllllllllllllllccc:::;;,,,,'''''''',,,,;;::cccllooodddxxxxkkkkkkkkkk
llllcccccccc::::::::::::::::::::::cccclloodxxkOO00KKXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNWWNNNNNNNNWWWWWWWWWWWWWWWWWWWWNNNNNWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNNNNNNNXXXXXXKK000OOkkxddoollcccc:::::::::::ccccllllllllllllllllccccccccllllllllllcccccc:::;;;,,,,''''''',,,,,;;;;;::::::::::::;;;;;;;;;;;;;;;::::::::::::::::::::;;;;;;;;:::::::::::::::::ccccccccccccccccclllllllllllllllllllccccccccccccccccccccccccccccccc:::::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;:::::::::::cccccccccccc::::::::;;;;;;;;;;;;;;;;;;;;;;:::::::::::::::::::::::;;;;;;;;,,,,,,,,,,,,,,,,,;;;;;;;;::::::::::::::::::::;;;;;;;;;;;;;::::::::::::cccccccccllllllllllllllllllllloooooooooooooooooooooooooooooddddoddddooooooooooolllllllllccccccccclllllllllllllllllllllllllllllllllllllllllccc::;;;;,,,,''''',,,;;;::ccllloodddxxkkkkOOOOOOOOO00
llllllcccccc::::::::::::::::::::cccccllooddxkOO0KKXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNXXXXKKK00OOkkxxdoolllccc::::::::::ccccclllllllllllllllccccllllllloooooooooooolllcc::;;;,,,,''',,,,,;;;;;::::::::::::::;;;;;;;:;;;::::::::::::::::::::::::;;;;;;;;;;;::::::::::::::ccccccccccccllllllllllloollooooolllllllllcccccccccccccccccccc:::::::::;::::::::::;;;;;;;;;;;;;;;,,,;,,;,;;;;;;;;;;::::::::::::cccccc:c::::::::;;;;;;;;;;;;;;;;;;;;;:::::::::cccc::::::::::::;;;;;;;;;,,,,,,,,;;;;;;;;;;;::::::::::::::::::::::::;;;;;;;;;;;;;:::::::::cccccccccccccllllllllllllllllllloooooooooooooooooooooooooooooooodoodddddoodooooooooooollllllllllllllllllllllllllllllllllllccclllllllllllllllcccc:::;;;,,,,,,,,,,,;;::ccllloodddxxkkkOOOO0000000000
llllllllccccc:::::::::::::ccccccccccclloodxkkO00KXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNWNNWWWWWWWWWWWWWWWWNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNXXXXKKK00OOkkxxdooollccc::::::::cccccllllllllllllllllllcllllooooddddxxxxxxdddoollcc:;;;,,,,,,,,,,;;;;::::::::::::::::::::;;::::::::::::::::::::::::::::;;;;;;;;;;;;;;;;;;:::::::::cccccccccllllllllllllooooooooooooollllllllllcclccccccccc::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,;;;;;;;;;;;:::::::::::::::::::::::::;;;;;;;;;;;;;;;;;;;::::::::ccccc:::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;:::::::::::::::::::::::::::::;;;;;;;;;;;::::::::ccccccccccccccllllllllllllllllllloloooooooooooooooooooooooooooooooooooddoddddooooooooooooooollllllllllllllllllllllllllllllccccccccllllllllllcccc::::;;;;,,,,,,,;;;:::cclloodddxxxkkkOOOO00000KKKKKK
oolllllllcccc:::::::::::::ccccccccccllloddxkOO0KKXXNNNNNNWWWWWWWWNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNXXXXKK000OOkkxxddoollcccc::::ccccccllllllllllllllllllllllooodddxxkkkkkkkkkxxddoolc::;;,,,,,,,,,;;;;::::::c::::::::::::::::::::::::::::::::::::::::;;;;;;;;;;;,,;;;;;;;;;;;;;:::::::cccccccccllllllllloooooooooooooooooollllllllllccccccc::::;;;;;;;;,,,,;;;;,,;;;;,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;:::::::::::::::::::::::::;;;;;;;;;;;;;;;::::::::cccccccc:::::::::::::;;;;;;;;;;;;;;;;;;;:::::::::::::ccccc::c::::::::::::::;;;;;;;::::::::::cccccccccccccccllllllllllllllllllolllooooolllloolllooooooooooooooooooooddodddddddddoddoooooooooollllllllllllllllollllllllccccccccccccccccllcccccc::::;;;;;;;;;;;;;:::ccllooodddxxxkkkOOOOO0000000000
ollllllllccccc::::::::::ccccccccccccllloddxkOO0KXXXNNNNNWWWWWWWWWWWNNNNNNNNNNNNNNNNNNNNNNNNNWNNNNNWWNNWWWWWWWWWWWWWWWNNNNNNNNNNNNNNWWWNWWWWWNNNNNNNWWWWWWWWWWWWWWWWWNNNNNNNXXXXXKKK00OOkkxxdooollcccccccccccclllllllllllllllllllllloodddxkkkOOO00OOOOkkxddolcc:;;;,,,,,,,;;;;:::::::::::::::::::::::::::::::::::::::::::::;;;;;;;,,,,,,,,,,,,,,,,;;;;;;;;:::::::ccccccccclllllllooooooooodooooooooooooollllllccccc::::;;;;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;:::::::::::::::::::::::;;;;;;;;;;;;;;;::::::cccccccccc::::::::::::::;;::;;;;;;;;;;;::::::::::cccccccccccccccc::::::::::::::::;;;:::::::::cccccccccccccclllllllllllllllllllllllooooollllllllllllooooooooooooooooooooooodddddddddddddddoooooolllllllllllllllllllllllcccccccccccccccccccccccccc:::::;;;;;;;;;::::ccllloooddddxxxxkkkkOOOOO0000000
lllllllccccccc:::::::::::cccccccccccllooddxkO00KKXXNNNNNWWWWWWWWWWWWNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNNNWWNNNNNNNNNNNNNNNNNNNNNNWWWWWWWWWNNNNNNNNNXXXXKKK000OOkkxddoollcccccccccccllllllllllllllllllllloooddxkkOOO00000000OOkxxdollc::;;;,,,,,;;;;;:::::::::::::::::::::::::::;;;;;;::;;;;;;;;;;;;;,,,,,,,''''''',,,,,,,,,,,;;;;;;::::cccccccccclllllloooooodddddddddooooooooolllllccccc:::;;;;;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;:::::::::::::::::::::;;;;;;;;;;;;;;:::::ccccccccccc::::::::::::::::::::::;;;;:::::::::cccccccccccccccccccccc:::::::::::::::::::::::::cccccccccclllclllllllllllllllllllllllooolllllllllllllllllllllllooooooooooooooooooodddddddddddooooolllllllllllllllllllllllccccccccccccccccccccccccccc:::::::;;;;:::::::cccclloooodddddxxxxxkkkkOOOOOOOO
llllllccccccc:::::::::::ccccccccccclllooddxkOO0KKXXXNNNNNNWWWWWWWWWWWNNNNNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXXKKK00OOkxxddoolllccccccccccclllllllllllllllllllooddxxkkOO000KKKKK000Okkxdollc::;;;,,,,,;;;;:::::::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,'''''''''''''',,,,,,,,;;;;;:::::cccccccccllllloooooooddddddddddddooooooollllccccc:::::;;;;;;;;;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;:::::::::::::::::::;;;;;;;;;;;;::::ccccccccccccc:::::::::::::::::::::::::::::::::::cccccccccccccccccccccc::::::::::::::::::::::::cccccccccllllllllllllcllllllllllllllllllllllllllllllllllllllllllllloooooooooooooooooddddddddddooooolllllllllllllllllllllllcccccccccccccccccccccccccccc:::::::::::::::::ccccclllllooooooddddxxxxxxxkkkkk
lllllccccccc:::::::::::cccccccccccclllooddxkkO00KKXXXNNNNNNNWWWWWWWWWNNNNNNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNNNNNNNNNNNNNNXXXXXXXXXXXXXNNNNNNNNNNNNNNNNNXXXXKKK00OOkkxxdoolllccccccccccccclllllllllllllllloooddxxkOOO00KKKKKKK000Okkxdolcc::;;;,,,,;;;;;:::::::::::::::::::::;;;;;;;;;;;;;;;;;;,,,,,,,,,,'''''''''''''''''',,,,,,,,;;;;;:::::ccccccccclllllooooooddddddddddddddooooooolllllccccc:::::::;;;;;;;;;;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;;;;:::::::::::::::;;;;;;;;;;;::::::cccccccccccccc::::::;::::::::::::::::::::::::::cccccccccccccccccccccccc::::::::::::::::::::::cccccccllllllllllllllcccclllllllllllllllllllllllllllllllllllllllllllllllllooooooooooooodddddddddooooollllllllllllllllllllllccccccccccc:ccccccccccccccccccc:::::::::::::::ccccccccllllllloooooddddddddddd
lllccccccccc::::::::::::::ccccccccclllooddxxkkO00KKKXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNWWWWNWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNNNNNNNNNNNXXXXXKKKKKKKKKKXXXXXNNNNNNNNNNNXXXXKKK000OOkkxddoollllcccccccccccccccccccllllllllloooddxxkOO000KKKKKKKKK00Okxxdolcc::;;;,,,,;;;;;;::::::::::::::::;;;;;;;;;;;;;;;;;;,,,,,,,,,,,'''''''''''''''''''',,,,,,,;;;;;::::::ccccccccllllllooooooooooddddoooooooooooooolllllllllcccccc::::::::;;;;;;;;;,,,,,,,,,,,',,,'',,,,,,,,,,;;;;;;;;;;;;;;;;;;;;::::::::::::;;;;;;;;;;;:::::cccccccccccccccc:::::::;:::::::::::::::::::::::ccccccccccclccccccccccccccccc::::::::::::::::ccccccccccllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllloooooooooooodddddddddoooolllllllllllllllllllllccccccccccccc:cccccccccccccccccccccc::::::c:::::::cccccccccccccllllloooooooooo
lllllcccccccc::::::::::::::ccccccccllloooddxxkkOO00KKKKXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNNNNNNNNNNNXXXXKKK0000000000KKKKXXXXXXXXXXXXKKKK000OOkkkxdddoolllccccccccccccclccccccccllllllloooddxxkOO000KKKKKKKKK000Okxxdolcc::;;;;,,,;;;;;;:::::::::::::::;;;;;;;;;;;;;;;,,,,,,,,,,,,,,''''''''''''''''''',,,,,,;;;;;;;:::::cccccccclllllllooooooooooooooooooooooooooooooooooollllllllcccccccc::::::;;;;;,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;::::::::;;;;;;;;;;;::::::cccccccclcccccc:::::::::::::::::::::::::::::::cccccccccccccccccccccccccccccc:::::::::::::::cccccccllllllllllllllllllllllllllllllllllllllllllllllllllllllcccclcclllllllllllllloooooooooodddddddddoooolllllllllllllllllllllccccccccccccccccccccccccccccccccccccccccccccccc:::::::::::::::ccccccclllllllll
llllllcccccccc::::::::::::::cccccccclllooodddxkkkOOO000KKKKXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWNNNNNNNNNNNNNNNNNNNNNNNXXXKK000OOOOkkOOOOO0000KKKKKKKKKK0000OOOkkxxxddooollllccccccccccccllccccclccllllllloodddxxkOOO00KKKKKXXKKKK0OOkxxdolcc::;;;;;,,;;;;;;;::::::::::::::;;;;;;;;;;;;;;;,,,,,,,,,,,,,,''''''''''''''',,,,,,,;;;;;;;:::::::ccccccccllllllllloooooolllllllllllooooooooooooooooooooooooollllllccccc::::;;;;;;,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;:::;;;;;;;;;;;;;::::::cccccccllcccccccc::::::::::::::::::::::::::::::ccccccccccccccccccccccccccccccccc::::::::c:cccccccllllllllllllllllllllllllllllllllllllllllllllllllllllllllccccccccccclllllllllooooooooooodddddddddooooolllllllllllllllllllllccccccccccccccccccccccccclccccccccccccccccccccccc:::::::::::::::ccccccccccccc
lllllllllcccccc::::::::::::::cccccccllllooooddxxxkkOOOO0000KKKKXXXXXXXXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNWWWNWWWWWWWWWWWWWNNNNNNNNNNNNNNNNNNNNNNNNXXXKK0OOOkkxxxxxxxxkkkOOOOOOO0OOOOOOkkkxxxdddooolllllccccccccccccllllllllllllllllllooddxxxkOOO00KKKKXXXXXKK000Okxxdollc:::;;;;;;;;;;;;;:::::::::::::::;;;;;;;;;;;;;,,,,,,,,,,,,,,,''''''''''',,,,,,,,;;;;;;;;:::::::::ccccccccllllllllllllllllllllllllllllllooooooooodddddddddddoooooollllcccc::::;;;;;,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::ccccccclccccccccc:::::::::::::::::::::::::::::::cccccccccccccccccccccccccccccccccccccccccccccccllllllllllooooooooooolllllllllllllllloolloollllllllllllllccccccccclccllllllllllloooooooooodddddddddoooolllllllllllllllllllllcccccccccccccccccccccccccclllcllclllllccccccccccccc::::::::::::::::::ccc::ccc
llllllllllccccc::::::::::::ccccccccccllllloooddddxxxkkkkOOO0000KKKKKKXXXXXXXXXXXXNNNNNNNNNNNNNNNNNNNNNNNNWWWWWWWWWNWWNNNNNNNNNNNNNWWWWWWNNNNNNXXXKK0OOkxxdddooooodddddxxxxxxxxxxxxxddddoooollllccccccccccccllllllllllllllllllllllooddxxxkOO000KKKKXXXXXXKKK00Okxxdoolcc::;;;;;;;;;;;;;;:::::::::::::;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,',,,,,,,,,,,;;;;;;;;;;;:::::::::::::cccccccccccccccccccccccccccclllllllooooooodddddddddddddddddooooolllcccc::::;;;;;;;,,,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::ccccccccccccccccccc::::::::::::::::::::::::::::::cccccccccccccccccccccccccccccccccccccccccccccclllllllllloooooooooooooollllooooooooooooooooooooollllllllllllllcccccllllllllllllloooooooooodddddddddooooollllllllllllllllllllcccccccccccccccccccccccccclllcclllllllllllllccccccccccccc::::::::::::::::::::
oollllllllccccc::::::::::::cccccccccccccllllooooddddxxxxkkkOOOO00000KKKKKKKKKXXXXXXXXNNNNNNNNNNNNNNNNNNNNNWNNNNWWWWNNNNNNNNNNNNNNNWWWWWWWNNNNNXXXKK0OOkxddoolllcclllllllooooooooooooooolllllcccccccccccccclllllllllllllllllllllloooddxxkkOO000KKKXXXXXXXXKKK00Okxxdoolcc::;;;;;;;;;;;;;;::::::::::::::;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;::::::::::::cccccccccccccc::ccccccccllllloooooodddddddxxxxxxdddddddoooolllccc::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::cccccccccccccccccccccc::::::::::::::::::::::::::ccccccccccccccccccccccccccccccccccccccccccccclllllllllloooooooooooooooooooooooooooooooooooooooooolllllllllllllllllllllllllllllooooooooooodddddddddoooooolllllllllllllllllllllllccccccccccccccccccccccccccccllllllllllllllcccccccccccccccccc:::::::::::::
oollllllllccccccc::::::::ccccccccccccccccclllllooooddddxxxxkkkkOOOOO000000000KKKKKKXXXXXXXXNNNNNNNNNNNNNNNNNNNNNWNNNNNNNNNNNNNNNWWWWWWWWWWWNNNNXXKK00Okxdoolcc:::::::::::ccccccllllllllllccccccccccccccccclllllllllllllllllllllloooddxxkkOO000KKKXXXXXXXXXKKK00Okkxdoolcc:::;;;;;;;;;;;;;::::::::::::::;:;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,;;;;;;;;;;;;;;;;;;;;;;,;;;;;;;;;;;;;;::::::::::::::::::::::cccccllllloooooddddddxxxxxxxxxxxdddddooollllccccc:::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;::;;:::::::;;;;;;;;;;;;;::::::::cccccccccccccccccccccccccc:cccc:::::::::::::::::cccccccccccccccccccccccllccllllccccccccccccclllllllllllloooooooooooooooooooooooooooooooooooooooooooollllllllllllllllllllllllloooooooooooooddddddddoooooolllllllllllllllllllllllcccccllccccccccccccccccccccccccccccclllllllllccccccccccccccccc::::::::::;
oollllllllcccccccc:cccccccccccccccccc::ccccccclllloooodddddxxxxkkkkkOOOOOOOOO000000KKKKKXXXXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWNNNNXXKK0Okxxdolcc::;;;;;;;;;;;::::::ccccccccccccccccccccccccllllllllllllllllllllllloooddxxkkOO000KKKXXXXXXXXXXKK000Okkxdoolccc::;;;;;;;;;;;;::::::::::::::::::::::;::::::::::::;;;;;;;;;;;;;;;;;;;;:;:;;;;;;,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;;::::::cccccllllllooooooddddxxxxxxxxxxxdddddoooolllllccccccc:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::cccccccccccccccccccccccccccccccccccccc:::::::cccccccccccccccccccccccclcclllllllccccccccccclllllllllllllllloooooooooooooooooooooooodddddddddddooooooooollllllllllllllllllllllllooooooooooooodddddddoooooolllllllllllllllllllllllllllllclcccccccccccccccccccccccccccccccllllllcllllccccccccccccc:::::::;;;
llllllllllcccccccccccccccccccccc:::::::::::cccccclllloooodddddxxxxxxxkkkkkkkkkOOOOOO0000KKKKXXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWNNNNXXKK0Okxxdolcc::;;;;,,,,,,;;;;;::::cccccccccccccccccccccclllllllllllllllllllllooodddxxkkOO000KKKXXXXXXXXXXXKKK0OOkkxdoollcc::;;;;;;;;;;;:::::::::::::::::::::::::::::::::::::;;;;;;;;;;;;;;;:::::::;;;;,,,,,''''''''''''''',,,,,,,,,,,,;;;;;;;;;:::::cccccclllllloooodddddxxxxxxxxxdddddddooooollllllcccccccccc:::::::::::::::::::::::::::::::::::::::::::::::::::::::ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccllllllllllllllllllcccccccllllllllllllllollooooooooooooooooooooodddddddddddddddoooooooolllllllllllllllllllllllooooooooooooodddddddoooooollllllllllllllllllllllllllllllllclccccccccccccccccccccccccccccccccccccllllllllcccccccc::::::::;;
lllllllllcccccccccccccccccccc::::::::::::::::::cccclllloooooodddddddddxxxxxxxxxxkkkkOOOO000KKKKXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWNNNXXXK00Okxdoolcc:::;;;;,,,,,;;;;:::ccccccclcccccccccccccccclllllllllllllllllllloooddxxkkOO000KKKXXXXXXXXXXXKKK00OOkxxdoollc::;;;;;;;;;;;::::::::::::::::::::::::::::::::::::::;;;;;;;;;;;;;:::::::::;;;;,,,,'''''''''''''''''''''''',,,,,,,,;;;;;:::::::cccccllllloooodddddddxxxxxddddddddoooooooolllllllllccccccccccccccccccccccccccccccccc:::ccccc::::::::::::::::ccccccccccclcllcccccccccccccccccllccccccccccccccccccccccccccccccllllllllllllllllllllllclccccclllllllllllllllllooollolooooooooooooooddddddddddddddddoooooooollollllllllllllloollooooooooooooooooddddoooooooollllllllllllllllllllllllllllllllllccccccccccc:c::::c:cccccccccccccccccccccccccccccccccc::::::;;;
llllllccccccccccccccccccccc::::::::::::::::::::::ccccllllllooooooooooddoooddddddddxxxkkkkOO000KKKKXXXXXNNNNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWNNNXXXK00Okxxdoollcc:::;;;;;;;;;:::cccclllllccccccccccccccccllllllllllllllllllloooddxxkkOO000KKKKXXXXXXXXXXKKKK00OOkxxdoolcc::;;;;;;;;;;;::::::::::::::::::::::::::::::::::::::;;;;;;;;;;;;::::::::::;;;;,,,,,''''''''''''''''''''''''',,,,,,,;;;;;:::::::ccccccllllooodddddddddddddddddddddoooooooooollllllllllllcccccccccccccccccccccccccccccccccccccccccc:::::::ccccccccllclllllllllllccccclllcllllllllllllcccccccccccccccccccllllllllllllllllllllllllllllccccllllllllllllllllllllllllloolloooooooooddddddddddddddddoooooooooooooooooooooolloooooooooooooooooooooddooooooooollllllllllllllllllllllllllllllllllllcccccccc:::::::::::cccccccccccccccccccccccccccccccc:::::::;;
lccccccccccccccccccccccc::::::::::::::;;;;;;;::::::ccccclllllllllloollllllllloooooodddxxkkkOO000KKKKXXXXXNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWNNNNXXKK0OOkkxdddoollccc::::::::ccccclllllccccccccccccccccccccllccccccccllllloooddxxkkOOO000KKKXXXXXXXXXXXKKKK0OOkkxxdollcc::;;;;;;;;;:::::::::::::::::::::::::::::::::::::::;;;;;;;;;;;;:::::::::::::;;;;;,,,,,,,,,,,,,,,',''''''''',,,,,,,,,;;;;;;::::::cccccclllloooodddddddddddddddddddooooooooooollllllllllllllllllllllllllllllcccccccccccccccccccccccc::::cccccccccllllllllllllllllllllllllllllllllllllcllcccccccccccllllllllllllllllllllllllllllllccllcllllllllllllllllllllllllllllllllloooooodddddddddddddddddoooooooooooooooooooooooooooooooooooooooooooooooooooooooollllllllllllllllllllllllllllllllllllccccccc:::::::::::::::ccccccccccccccccccccccccccc::::::::;;
ccccccccccccc:::::c:::::::::::::::::;;;;;;;;;;:::::::ccccccclllllllllllcclllllllllloooddxxkkkOO000KKKXXXXXXNNNNNNNNNNNNNNWNWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNXXXKK000OOkkxxdooollccccccccccccccccccccccccccccccccccccclccccccccccllllooddxxkkkOO000KKKKXXXXXXXXXXXKKK000Okkxddolcc::;;;;;;;;;:::::::::::::::::::::cccc:::::::::::::;;;;;;;;;;;;;;:::::ccccccc:::::::::;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,,,;;;;;;;::::::cccccllllooooodddddddddddddddoooooooooooooollllllllllllllllllllllllllllllllllllccccccccccccccccccccccccccccccllllllllllllllllllllllllllllllllllllccllcccccclllllllllllllllllllllllllllllllllcccccclllllllllllllllllllllllllllllllllloooooooddddddddddddddddooooooooooooooooooooooooooooooooooooooooooooooooooooolllllllloollllllllllllllllllllllllllllccccccc::::::::::::::::::::::::::::c:::ccccccccc::::::::;;;
cccccc:cc:::::::::::::::::::::::::::::;:::::::::::::::ccccccccccccccccccccccccccccllloooddxxkkOOO000KKKXXXXXNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNXXXXKK00OOkkxxddoollllccccccccccccccccccccccccccccccccccccccccccclllooodxxxkkOO000KKKKKXXXXXXXXXXKKKK00OOkkxdoolcc::;;;;;;;;:::::::::::::::::ccccccc:::::::::::;;;;;;;;;,,,,,;;;;::::ccccllllllllllllllccccccccc:::::::::;;;;;;;;;;;;;;;;;;;;::::::ccccclllllooooooooooododdooooooooooooooollloooolllllllllllllllllllllllllllllllllllcccccccccccccc::ccccccccclllllllllllllllllllllllllllllllllllllllccllclllllllllllllllllllllllllllllllllllccccccclllllllllllllllllllllllllllllllllllloooooodddddddddddddddooooooooooooooooooooooooooooooooooooooooooooooooooolllloolooolooolllllllllllllllllllllllllllccccccc::::::::::::::::::::::::::::::::::::::::::::::::;;;
c:::::::::::::::::::::::::::::::::::::::::::::::::::cc::ccccccccccccccccccc:ccccccccllloodddxxkkOOO00KKKXXXXXNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNXXXXKK00OOkxxddoollllccccccccc:cccccccccccccccccccccccccccccllllooddxxkkOOO000KKKKXXXXXXXXXXXXKKK00OOkkxdollc::;;;;;;;;;:::::::::::::::cccccccc:::::::::::;;;;;;;;,,,,,,,,;;:::cclllooooodddddddddddooooooollllllllcccc:::::;;;;;;;;;;;;:::::::cccccllllllooooooooooooooooooooooollllllllllloooooollllllllllllllllllllllllllllllllccccccccc::::c:cccccccccllllllllllllllllllllllllllllllllcclllllllllllllllllllllllllllllllllllllllcclcccccccccclllllllllllllllllllllllllllllllllllooooooooddddddddddddddooooooooooooooooooooooooooooodddooooooooooooollollllllloooooooooolllllllllllllllllllllllllllccccccccc:::::::::::::::::::::::::::::::::::::::::::::::;
::::::::::::::::::::::::::::::::::::::::::::::::cccccccccccccccccccccccccc:::ccccccccllloooddxxxkkOO000KKKXXXXNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNXXXK00OOkxxdooolllccccccccccccccccccccccccccccccccccccclllloodddxkkkOO000KKKKXXXXXXXXXXXXKKKKK00Okkxdollc::;;;;;;;::::::::ccc::ccccccccccc:::::::;;;;;;;;;;;,,,,,,,,,;;;:ccllooddxxxxkkkkkkkkkkxxxxxxxxxdddddddooolllccc:::;;;;;;;::::::::ccccccclllllllooooooooooooooollllllllllllllllllllllolllllllllllllllllllllllllllllllccccccccc::::::ccccccccllllllllllllllllllllllllllllllcccccccllllllllllllllllllllllllllllllllllllllllccccccccccclllllllllllllllllllllllllllllllllllooooooooddddddddddddddoooooooooooooooooooooooooooddddooooooooooooolllllllllloooooooooollllllllllllllllllllllllllllcccccccccc:::::::::::::::::::::::::::::::::::::::::::::;
:::::::::::::::::::::::::::::::::::::::::ccccccccccccccccccccccccccccccccccccccccccccclllooodddxxkkOOO00KKKXXXXXXNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNXXKK00OkxxdoollccccccccccccccccccccccccccccccccccccclllloooddxxkkOO000KKKKXXXXXXXXXXXXXXXKKK00OOkxdollc:::;;;;;:::::::ccccccccccccccc::::::::;;;;;;;;;;,,,,,,,,,,;;;:ccllodxxkkOOOO0000000OOOOOOOkkkkkkkkkkkxxxddoolllccc::::::::::::::cccccccclllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllcccccccc::::::ccccccccccclllllllllllllllllllllllllccccccccccclllllllllllllllllllllllllllllllllllllcccccccccccccclllllllllllllllllllllllllllllllllllooooooooodddddddddddoooooooooooooooooooooooooooooodoooooooooooolllllllllllooooooooooollllllllllllllllllllllllllllcccccccccccccccc::::::::::;;;;;:::;:::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::ccccccccccccccccccccccccccccccccccccccccccccccccclllooooddxxkkkOO000KKKXXXXXXNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNXXK00OkxddoollcccccccccccccccccccccccllllcccccccccllllooddxxkkOO000KKKKXXXXXXXXXXXXXXXXKKK00OOkxdollc:::;;;;::::::cccccccccccccc:::::::;;;;;;;;;;,,,,,,,,,,,,,;;:cclodxxkOO000KKKKKKKKKK00000000O00O0OOOOOOkkxxxdooolllccccc:cc:::::cccccccccccllllllllllllllllllllccccccccccccllllllllllllllllllllllllllllllllllllllllccccccc::::::cccccccccccccllllllllllllllllllllllllccccccccccllllllllllllllllllllllllllllllllllllllcccccccccccccllllllllllllllllllllllllllllllllllllloooooooooddddddddoooooooooooooooooooooooooooooooooooooooooolllllllllllloooooooooooooollllllllllllllllllllllllllllccccccccccccccc::::::::::;;;;;;;;;;;;::;:::::::::::::::
:::c::::::::::::::::::::::::::::::ccccccccccccclllllllllllllllllllllllllllllcccccccccccclllooodddxxxkkkOO0000KKKKXXXXXNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMWWMMWWWWWWWWWNNNXKK0OkkxdoolllccccccccccccccccccccllllllclllcccclllloooddxkkOO000KKKKXXXXXXXXXXXXXXXXXXKKK00Okxdollc:::::::::::cccccccccccccc:::::::;;;;;;;,,,,,,,,,,,,,,,;;::cclodxkOO0KKKXXXXXXXXXXKKKKKKK0000000000000OOOkkkxxddooolllcccccccccccccccccccccccccccccccccccccccccccccccccccccccclllllllllllllllllllllllllllllllllllcccccccc:::c::cccccccccccclllllllllllllllllllllllllccccccccccclllllllllllllllllllllllllllllllllllllccccccccccccclllllllllllllllllllllllllllllllllllllllooooooooodooooooooooooooooooooooooooooooooooooooooooooooololllllllllloooooooooooooollllllllllllllllllllllllllllllccccccccccccccc::::::::;;;;;;;;;;;;;;;;:::::::::::;;;
ccccccccc::::::::::::::::::::cccccccccccccclllllllllloollllllllllllllllllllllllccccccccclllllooodddxxxkkkOOOO0000KKKKXXXXNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMWWWWWWWNNXXK0OOkxddoolllcccccccccccccccccllllllllllccccccllllooddxxkkOO00KKKKXXXXXXXXXXXXXXXXXXXXKK00Okxdoolcc::::::::cccccccccccc:::::::::;;;;;;,,,,,,,,,,,,,,,,;;;:clodxkkO0KKXXNNNNNNNXXXXXXKKKKKKKKKKKKKKKKKK0000OOOkkxxdddoollllcccccccccc:ccccccccc:::::::::::::::::::::::::::cccccccccccclccclccccccccccccccclllllccccccccccccccccccccccccccccllllllllllllllllllllllllcccccccccccclllllllllloooolllllllllllllllllllllllllccccccccccclllllllllllllllllllllllllllllllcclllllllloooooooooooooooooooooooooooooooooooooooooooooooooooooooolllllllloloooooooooooooooooooollllllllllllllllllllllllllllllllllccccccccc::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;
cccccccccc::::::::::::::::ccccccccccccccclllllllloooooooooooooooooooloollllllllllccccccccllllloooodddxxxxxkkkkOOOO000KKKXXXNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMMWWWWWWNNNXXK0OOkxxdoollllcccccccccccccccclllllllllcccccccllllooddxkkOO000KKKXXXXXXXXXXXXXXXXXXXXXKK00Okxdollcc:::::::ccccccccccc:::::::::;;;;;,,,,,,,,,,,,,,,,,;;;:ccoddkO00KXXNNNNNNNNNNNNXXXXKKKKKKKKKKKKKKKKKKKKK0000OOkkkxddooollccccc::::::::::::::::::;;;;;;;;;;;:::::::::::::::::::cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccllllllllllllllllllllllccccccccccccclllllllooooooooolllllllllllllllllllllccccccccccccllllllllllllolllllllllllllclccccccccllllllloooooooooooooooooooooooooooooooolllllllllooooooooooooolllollloooooooooooooooooooooooooolllllllllllllllllllllllllllllllllllcccccccc::::::::::;;;;;;;;;;;;;;;;;;;;;;;;
cccccccccccc::::::::::::ccccccccccccccclllllllllooooooooooooooooooooooloolllllllllcccccccclllllloooooddddddddxxxxkkkOO00KKKXXXNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMMWWWWWWWNNNXKK0OOkxddoolllcccccccccccccccccccccclclcccccccccllloodxxkkOO000KKKXXXXXXXXXXXXXXXXXXXXXKK00Okxdoolcc:::::cccccccccccc::::::::;;;;;,,,,,,,,,,,,,,,,;;;;:cclodxkO0KXXNNNNWWWWNNNNNXXXXKKKKKKKKKKKKKKKKKKKKKKKKK000OOkkxddoollccc::::::::;::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::::::::cc:cccccccccccccccccccccccccccccc:::cccccccccccccclllllllllllllllllllllllcccccccccccccllllllloooooooooooollllllllllllllllllllcccccccccllllllllllloolllllllllllcccccccccccccccllllllllollooloooooooooooooooooooooolllllllloolooooooooooolllollloooooooooooooooooooooooooooolllllllllllllllllllllllllllllllllllllcccccccc:::::::::;;;;;;;;;;;;;;;;;;;;;;
ccccccccccc::::::::::::ccccccccccccccllllllllllloooooooooooooooooooooolllllllllllllccccccclllllllllloooooloooooodddxxkkOO00KKXXXNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMWWWWWWNNNXXK00Okkxddoollcccccc:::ccccccccccccccccccccccccccllloodxxkkOO00KKKKXXXXXXXXXXXXXXXXNXXXXKK0OOkxdollcc::::::cccccccccc::::::;;;;;;,,,,,,,,,,,,,,,,,;;;::cllodxkO0KXXNNNWWWWWNNNNNXXXXXKKKKKKKKKKKKKKKKXXXXXXKKKKK00OOkxxdollccc:::;;;;;;;;;;;;;,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;:::::::::::::::::::::::cccccccccccccc:::cc::::::ccccccccccllllllllllllllllllllllllcccccccccccclllllllooooooooooooooollllllllllllllllllcccccccclllllllllllllooolllllllllcccccccccccccccclllllllllllllllllllooooooooooooooollllllllllllloooooooooooooooollooooooooooooooodooooooooooooollllllllllllllllllllllllllllllllllllcccccccccc:::::::;;;;;;;;;;;;;;,,,,,,,
cc::ccccc::::::::::::ccccccccccccccccllllllllllllloooooooooooooolollllllllllllllllcccccclllllllllllllllcccccccllllooddxxkkOO00KKXXNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMWWWWWWWNNXXKK0OOkxxdoolllccc::::::::ccccccccccccccccccccccclllooddxxkkOO000KKKXXXXXXXXXXXXXXXXNNXXXKK0Okxxoolcc::::::ccccccccc::::::;;;;;;;,,,,,,,,,,,,,,,,;;;;::cloodxkO0KKXXNNNNNNNNNNNNXXXXXXKKKKKKKKKKKKKKKXXXXXXXXXKKK00OOkxdoolcc:::;;;;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;:::::::::::::::::::::::::c::c::::::::::::::::::ccccccccccllllllllllllllllllllllccccccccccccllllllllooooooooooooooooolllllllllllllllllccccclllllllllllllooloolllllllllccccccccccccclllllllllllllllllllllllllooooooooollllllllllllllllloooooooooooooooooooooooooooooooooooooooooooooollllllllllllllllllllllllllllllllllllllllccccccccc:::::;;;;;;;;;;,,,,,,,,,,
:::::ccc::::::::::cccccccccccccccccclllllllllllllllllllooolllllllllllllllllccccccccclccllllllllllllccccc:::::::ccccllooodxxkkOO0KKXXXNNNNNNNNWWWWWWWWWWWWWWWWWMMMMMMMMMMWWWWWWWNNNXKK00Okkxxdoollcccc:::::::::::ccccccccccccccccccccclllloddxxkkOO000KKKKKXXXXXXXXXXXXNNNXXXXKK0Okxdollcc:::::cccccccc:::::::;;;;;;;,,,,,,,,,,,,,,,;;;;::ccllodxxkO00KKXXXNNNNNNNNXXXXXXXKKKKKKKKKKKKKKKKXXXXXXXXKKKK0OOkxxdolcc::;;;,,,,,,,,,,,,,,,',,'',,,,,,,,,,,,,,,,,;;;;;;;;;;:::::::::::::::::::::::::::::::::::::::::::::::cccccccclllllllllllllllllllllllccccccccccllllllllllooooooooooooooooooollllllllllllllllllcclllllllllooooooooooolllllllllcccccccccllllllllllllllllllllllllllllooooooollllllllllllllllllloooooooooooooooooooooooooooooooooooooooooooooolllllllllllllllllllllllllllllllllllllllllcccccccc:::::;;;;;;;;,,,,,,,,,,,
:::::::::cc:::::cc::ccccccccccccccccccccccccccccccllllllllllllllllllcccccccccccccccclllllllllllllllcccc::::::::::::ccclllooddxkkO00KKXXXNNNNNNNNWWWWWWWWWWWWWWWWMMMMMMMMWWWWWWNNNXXKK0OOkxxddoollccc::::::::::::::::::::c::ccc:ccccccclllooddxxkkOOO000KKKKKKKXXXXXXXXNNNNXXXKK0Okxxdolccc::::::::::c::::::::;;;;;;;;;,,,,,,,,,,,;;;;;;:::cclooddxkkOO00KKKXXXXXXXXXXXKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK00OOkxxdolc:::;;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;::::::::::::::::::::::c:c:cccc::::::::::::::::::ccccccccclllllllllllllllllllllllllllccccccllllllllllooooooooooooooooooooooolllllllllllllcclllllllllloooooooooooooolllllllllllllllllllllllllllllllllllllllloooooooooollllllllllllllllllllloooooooooooooooooooooooooooooooooooooooooooooollllllllllllllllllolllllllllllllllllllllllccccc::::::;;;;;;;,,,,,,,,,,,
::::::::cccccccc:::::ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccclllllllllllllllcccc:::::::;;;::::::cccllooddxkkO00KKXXXXNNNNNNWWWWWWWWWWWWWMWMMMWWWWWWWWWNNNXXK00Okkxxddoollccc::::::::::::::::::::::::::::::::ccccclloodddxkkkOO0000KKKKKKXXXXXXXNNNNNXXXKK0Okxdollcc::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;:::::cclloooddxxkkOO0000KKKKKKKKKKKKKK00000000000000KKKKKKKK0000OOkxxdollc:::;;,,,,,'',,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;:::::::::ccccccccccccccccccccccccccc::::::::::::::cccccccccclllllllllllllllllllllllllllcccccccllllllllooooooooooooooooooooooooooolllllllllllllllllllllooooooooooooooooooooooloooollolllllllllllllllllolloooooooooooooollllllllllllllllllllllloooooooolooooooooooooooooooooooooooooooooooooooolllllollllllllllllllllllllllllllllllllllcccccc:::::;;;;;;;,,,,,,,,,,
:::::::cc:c:::::::::::::c:cccccccccccccccccc:::::::::ccccccc:::::::::::::::::ccccccclllllloooolllllccccc:::::;;;;;;;:::::::cclloodxxkOO00KKXXXXNNNNNNWWWWWWWWWWWWWWWWWWWWWWWNNNXKK0OOkxxddooollccc:::::::::::::::::::::::::::::::::::cccclllooddxxkkOOOO000KKKKKXXXXXXNNNNNXXXXK0Okkddolcc:::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;:::::cccclllooodddxxkkkkOOOOO000000000000000O0OOOOOOOOOOOOOOOOOOkkxxxdoolcc::;;;,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;:::::::::ccccccccccccccccccccccccccccccccc:::::::::cccccccccclllllllllllllllollllllllllllllllllllllllllloooooooooooooooooooooooooooooolllllllllllllllllloooooooooooodddooddooooooooooooooooooooooooollooooooooooooooooooolllllllllllllllllllllllooooooooooooooooooooooooooooooooooooooooooooooooooolllllllllllllolloooooolllllllllllllllcccccc::::::;;;;;;;;;,,,,,,,
:::::::::::::::::::::::::::::::c::::::::::::::::::::::::::::::::::::;;::::::::::ccccllllllooollllllccccc::::::;;;;;;;;;;;;;:::cclloddxkkOO00KKXXXNNNNNNNWWWWWWWWWWWWWWWWWWNNNXXK00Okkxddoolllccc:::::;;;;;;;;;;;;;;;;;;;:::::::::::::::ccccllooddxxxkkkOO0000KKKKXXXXNNNNNNNNXXKK0Okxdollc::::;;;;;;;:::::::;;;;;;;;;:::::::::::::::::::cccccclllllooooddddxxxkkkkOOOOOOOOOOOkkkkkkkkkkkkkkkkkkkxxxxxdddoollcc::;;;;,,,,,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;:::::::cccccccccclcllllllllllllllllllcccccccccccccccccccccccccccllllllllloooooooooooolllllllllllllllllllllllooooooooooooooooooooooooooooooooolllllllllllloooooooooooodddddddddddddddddddddddoooooooooooooooooooooooooooooolollllllllllllllllllllllllllooooooooooooooooooooooooooooooooooooooooooooooooooolllllllllllloooooooollllllllllllllccccccc::::::;;;;;;;;;,,,,,,
::::::::::::::::::;;;;;;:;;:::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::cccllllllllllllllccccc:::::::::;;;;;;;;;;;;:::cclloddxkkOO00KKKXXXXNNNNNNWWWWWWWWWWWWNNNNXXKK0Okkxdoollccc:::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::cccllloodddxkkkOO000KKKKXXXXNNNNNNNNXXXK0OOxdollc:::;;;;;;;;;;;;;;;;;;;::::::::::::::::::::::ccccccclllllllllloooooodddxxxxxxxxxxxxxxxxxxddddddddddddddoooooollllcc:::;;;;;,,,,,,,,;;;;;;;;;:::::::::::::::::::::::::cccccccccccllllllllllllllllllllllllccccccccccccccccccccccclllllllllloooooooooooooooooolllllllllllllllllooooooooooooooooooooooooooooooooooolllllllllllooooooooooodddddddddddxxxddxddddddddddooooooooooooooooooooooooooollllllllllllllllllloolllooooooooooooooooooooooooooooooooooooooooooooooooooooooolllllllllllllllollllollllllllllllccccccc:::::::;;;;;;;;;;,,,,
;;;;;;:::::::;;;;;;;;;;;;;;;;;;::;;:::::;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,;;;;;;::::ccccccllllllllcccccc:::::::::::;;;;;;;;;;;;;:::cclloddxkkOO000KKKXXXXXNNNNNNNNNNNNNNNXXXK00Okkxdoolccc:::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::cccllooddxxkkOO000KKKXXXXNNNNNNNNNXXK00Okxdolc::;;;;,,,,;;;;;;;;;;;:::::::::cc::cccc:::::ccccccclllllllllllllllllllooooodddddddoooooooooooollllllllccccccccc:::::;;;;;;;;,;;;;;;;;;;::::::::::::::::::::::::::ccccccccccccllllllllllllllllooolllllllllllllccccccccccccccclllllllllllloooooooooooooooooooooollllllllllllllllooooooooooooooooooooooooooooooooooooolllloooolloooooooooddddddddxxxxxxxxxxddddddddddddooodoooddddooooooooooooollllllllllllllllloooooooooooooooooooooooooooooooooooooooooooooooooooooooooooollllllllllllllllllllllllllllllllllccccccccc:::::::;;;;;;;;;,,,
;;;;;;;;;;;;;;;;;,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,''''''',,,,,,,;;;;;::::cccccccccccc:::::::::::::::;;;;;;;;;;;;;;::::ccllooddxxkkOO0000KKKKKXXXXXXXXXXXXXXKK00Okkxdoolcc::;;;;,,,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::ccclloodxxkkOO00KKKXXXXNNNNNNNNNXXKK0Okxdolc:;;,,,,,,,,,,;;;;;;;;::::::::cccccccccccccccccccllllllllllcccccccccccclllllllllllllllcccccccccc:c::::::::::::;;;;;;;;;;;;;;;;;;;;;::::::::cccccccccccccccccccccccccccccccllllllllllllloooooooooooooooollllllllllcllcccccclllllllllllllllooooooooooooooooooooooooooolllllllollooooooooooooooooooooooooooooooooooooooollllllllloooooooooddddddddxxxxxxxdxxxddddddddddddddddddddodddooooooooooolllllllllllooloooooooooooooooooooooddddooooooooooooooooooooooooooooooooooooollllllllllllllllllllllllllllllllllccccccccccc::::::::;;;;;;;;;
,,,;;;;;;;;;;,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,'''''''''''''''',,,,,;;;;;::::::::::::::::::::::::::;;;;;;;;;;;;;;;;;::::cccllooddxxkkkOOOOO00000KKKKKKKKKK000OOkxxdollc:::;;,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;:;;;;;;;;;;;;;;;;;;;;;;::::ccloodxxkOO00KKKXXXXNNNNNNNNNXXKK0Okxdolc:;;,,,,,,,,,,,,;;;;;;::::::::ccccccccccccccccccllllllllllcccc:::::::::cccccccccccccc:::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::ccccccccccllcccccccccccccccclcccclllllllllllloooooooooooooooooooooooooollllllllllllllllllllllllllloloooooooooodddddddooooooooooooooooooooooooooooooooooooooooooododdoooooooooooolllllllooooooooooddddddddddddddddxddddddddddddddddddddddddddooooooooooollollollooooooooooooooooooooooooodddddddddddoooooooooooooooooooooooooooooolllllllllllllllllllllllllllllllllllllcccccccccccc:::::::;;;;;;;
,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;::::::::;;;;;;;;,,,,,,''''''''''....'''''',,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::cccllloodddxxxxkkkkkkOOOOOOOOOOOOOkkkxddollc::;;;,,,,,,,,,,,,,,,,,;;;;;;;::::::::::::::::;;;;;;;;;;;;;;;;;;::ccloodxkkO00KKKXXXXNNNNNNNNNNXXK0Okxdolc:;;,,'''',,,,,,;;;;;:::::::::cccccccccccccccccllllllllllcccc::::::::::::::::::::::::;;;;;;;;;,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;:::::::ccccccccccccllllllllllllllllllllllllllllllloooooooooooooooooooooooooddoooooooooollllllllllllllllllllllooooooooooodddddddddddddoooooooooooooooooooooooooooooooooooooooodddddddooooooolllllllllooooooooooddddddddddddddddddxxxdddddddddddddddddddddddooooooooooooooooooooooooooooooooooooooddddddddddddooooooooooooooooooooooooooooooollllllllccccccccllllllllllllllllllllllllllcccccccccc:::::::;;;;;
,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;::::::::::::::::;;;;;;;,,,,,''''''''...'''''''''',',,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;::::::::cccclllooodddddddxxxxxxxxxxxxxxxxxddoollcc::;;;,,,,,,',,,,,,,,,,;;;;;:::::::::::::::::::;;;;;;;;,,,,,,,,;;;::ccloddxkOO00KKXXXXNNNNNNNNNXXXK0Okxdolc:;,,,'''',,,,,;;;;;;::::::::ccccccccccccccccccllllllllllccc::::::::::::::::::::::;;;;;;;,,,,,,,,,,',,,,,,,,,,,,;;;;;;;;;:::::::cccccccccclllllllllllllllllllllllllllllllloooooooooddoodddddddddddddddddddddddddooooooooooooooooooooooooooooooooooodddddddddddddddddooooooooooooooooooooooooooooooooooooddddddddooooooollllllllloooooooooooooddodddddddddddddxxxxxxxxddddddddddddddddddooooooooooooooooooooooooooooooddoooddddddddddddddoooooooooooooooooooooooooooooooolllllllccccccccccclllllllllllllllllllllllllcccccccccc::::::::;;
,,,,,,,,,,,,,,,,,,,,,;;;;;;;::::::ccccccccccc:::::;;;;;;;,,,,,,''''''''''''''''''''''''''''''''''''''',,,,,,,,,,,,,,,,,,,,;;;;;;;;::::::cccclllloooooooooooooodddddddoooolllcc::;;;;,,,,,,,,,,,,,,,,,;;;;;::::::cccccc::::::::;;;;;;;;,,,,,,,,,,;;::cllodxkkO00KKXXXXNNNNNNNNNXXXK0Okxdolc:;,,,'''',,,,;;;;;::::::::::ccccccccccccccccccclllllllllccc:::::::::::::::::::::;;;;;;,,,,,,,,,,',,,,,,,,,;;;;;;;;;:::::::::ccccccccccccccllccllllllllllllolooooooooooooooooddddddddddddddddddddddddddddddddddddddddoooooooooooooooooooooooooooooddddddddddddddddddddddddooddddddddddoddooooooooooooooodddddddddooooooolllllllloooooooooooooooooooooddddddddxxxxxxxxxxxxxdddddddddddddddooooooooooooooooooooooooooooooddddddddddddddddoooooooooooooooooooooooooooooooooollllllcccccccccccclllllllllllllllllllllllllllcccccccccc:::::::
;;;;,,,,;;,,,;,,,;;;;;;;;;;:::::cccccccccccccccc:::::::;;;;;;;,,,,,'''''''''.......................'''''''''',,,,,,'',,,,,,,,;;;;;;:::::::ccccllllllllllllllllllllllllllcccc:::;;;;,,,,,,,,,,,,,,,,;;;;;;:::::cccccccc:::::::::;;;;;;;,,,,,,,,,,,;;::cloddxkO00KKXXXXNNNNNNNNNNXXK0Okxdolc:;,,,'''',,,,;;;;:::::::::cccccccccccccccccccccclllllllcccccc::::::::::::::::::;;;;;;;,,,,,,,,,,,,,,,,;;;;;;;;;::::::::::ccccccccccccccccccccccccllllllllllllllooolooooooooodddddddddddddddddddddddddxxxxxxxxxxxddddddddddddddddddddddooooooooooddddddddddddddddddddddddddddddddddddddddddddddoooooodddddddddddddooooollllllllloooooooooooooooooooooodddddddxxxxxxxxxxxxxxxxxxddddddddddddoooooooooooooooooooooooooooodooodddddddooooooooooooooooooooooooooooooooooooooooollllccccccccccccccllllllllllllllllllllllllllllllcccccc::::::
;;;;;;;,,,,,,;,;;;;;;;;;;;;:::::ccccccccccccccccccc:::::::::::;;;;,,,,,'''''.............................'''''''''''''''''',,,,,;;;;;:::::::ccccccccccccccccccccccccccccc:::::;;;;;;,,,,,,,,,,,,;;;;;;;;;::::::ccccccc::::::::;;;;;;;;,,,,,,,,,,,;;::cllodxkOO00KKXXXXNNNNNNNNXXXK0Okxdolc:;,,,,'',,,,,;;;;::::::::::ccccccccccccccccccccclllllllccccccc:::::::::::::::::;;;;;;;,,,,,,,,,,,,;;;;;;:::::::::::ccccccccccclllllllccccccccccccccccllllllllllllllllooooooooddddddddddddddddddddddxxxxxxxxxxxxxxxxdddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddoooddddddddddddddooooolllllllllooooooooooooooooooooooodddddddxxxxxxxxxxxxxxxxxxxxdxddddddddddooooooooooooooooooooooooooooooodoooooooooooooolooooooooooooooooooooooooooooooollllccccccccccccclllllllllllllllllllllllllllllllccccccc::::
;;;,,,,,,,,,,,,,,;;;;;;;;;;;::::::::ccccccccccccccccccccccc::::::;;;;,,,'''''...........................................'''''',,,,,;;;;;;:::::::ccccccccccccccc:::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::cccc:::::::::;;;;;;;;,,,,,,,,,,,,;;::cclodxxkO00KKKXXXNNNNNNNXXXKK0Okxdolc:;,,,,''',,,,;;;;::::::ccc:cccccccccccccccccccccccllclccccccccccc::c:::::::::::;;;;;;;;,,,,,,,;;;;;::::ccccccccccccclllllllllllllllllllllcccccccccccccccccllllllllllllllloooooodddddddddddddddddddddxxxxxxxxxxxxxxxxxxxxxxxxxxxxxdddddddddddddddddddddddddddddddddddddddddddddddxxxxxxxdddddddddddddddddddddddddddoooolllllllllloooooooooooooooooooooodddddddxxxxxxxxxxkkkkxxxxxxxxxxxxdddddddddooooooooooooooooooooooooooooooooooooollllllllllllllloooooooooooooddddddooooollllccccccccccccllllllllllllllllllllllllllllllllcccccccc::
;;,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;:::::::::::::ccccccccccccccccc::::;;;,,,''''.............................................'''''',,,,,;;;;;;;::::::::::::::::::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::;;;;;;;;;;,,,,,,,,,,,,,,;;::cloodxkkO00KKXXXXNNNNNXXXXK00Okxdolc:;,,,''''',,,;;;;::::::ccccccccccccccccccccccccccccccccccccccccccccccc:::::::::;;;;;;;;;;;;;;;;;:::ccccllllllllllloooooooooooooooooooollllllllccccccccccccccccccccccclllllllloooooooooooooooododddddddddddddddddddddddddxxxxxxxxxxxxxxddddddddddddddddddddddddddddddddddddddxxxxxxxxxxxxxxxddddddddddddddddddddddoooollllllllllllooooooooooooooooooooodddddddxxxxxxkkkkkkkkkkkxkxxxxxxxxxxxddddddddddoooooooooooooooooooooooooooooollllllllllllllllllllllloooooooooddddooooollllcccccccccccccccclllllllllllllllllllllllllllllcccccccc:
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;::::::::::::ccccccccc::::;;;,,,'''................................................''''',,,,,,;;;;;;;:::::::::::::::::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;:::::::::::::;;;;;;;,,,,,,,,,,,,''',,,,,;;::cloddxkOO00KKXXXXXXXXXXKKK0Okkxdolc:;,,'''''',,,,;;;;::::::::cccccccccccccccccccccccccccccccccccccccccccc:::::::::::;;;;;;;;;;;::::cccllloooooooddddddddddddddddddddddddooooooolllllllllccccccccccccccccccccllllllllllllllllllooooooooooddddddddddooddddddddddddddxxxxxxddddddddddddddddddddddddddddddddddddxxxdxxxxxxxxxxxxxxddddddddddddddddddddddoooollllllllllllllooooooooooooooooooooodddddxxxxxkkkkkkkkkkkkkkkkkkkkxxxxxxxxxxxddddddddoodooooooooooooooooooooooollllllllllcccccccccccclllllllooooooooooollllcccccccccccccccccccclllllllllllllllllllllllllccccccccc:
,,,,,,,,,,,',,,,,,,,'''''''''''',,,,,,,,,,,,;;;;;;;;;;::::::::cccc::::::;;;,,'''.................................................'''''',,,,,,,;;;;;;;:::::::::::::::::::cccc:::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::;;;;;;;;;,,,,,,,,,'''''''''',,,;;:ccloddxkOO00KKKXXXXXXKKKK00Okxdollc:;,,''''''',,,,;;;;:::::::ccccccccccccccccccccccccccccccccccccccccc:cc::::::::::::::::::::::ccccllloooddddxxxxxxxxxxxxxxxxxxxxxxxxxxxxxddddddoooooolllllllllllccccccccccccclllllllllclllllllllllllloooooooooooollooooooooodddddddddddddddddddddddddddddddddddddddddddddddddddxxxxxxxxxxxxxxxddddddddddddddddddddooooolllllllllllllllooooooooooooooooododdddddxxxxxkkkkkOOOOOOOOOkkkkkkkkkkkkxxxxxxxxxxxxdddddddddddddddddddddooooooooollllllccccccccccc::cccccclllllllllllllccccc::::::::cccccccccccclllllllllllllllllllllllcccccccc::
,,,,,''''''''''''''''''''''''''''''''''''''',,,,,,,,,;;;;;;;:::::::::::::;;;,,,'''................. .....................'''''',,,,,,,;;;;;:::::::::::cccccccccccccc::::;;;;;;;;;;;;;;,,,;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,''''''''''''''',,,;;:ccloddxkOO000KKKKKKKKKK00OOkxdoolc:;;,,''''''',,,,;;;::::::::ccccccccccccccccccccccccccccccccccccccccccc::::::::::::::::::::ccclllloodddxxxxkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkxxxxxxddddddoooooooolllllllllllllllllllcccccccccccccccllllllllllllllllllccllllllloooooooddddddddddddddddddddddddddddddddddddddddddddddxxxxxxxxxxxxxxdddddddddddddddddddoooollllllllccllllllllooooooooooooooooddddddddxxxxkkkkkkOOOOOOOOOOOOOkkkkkkkkkkkkkkkkkkxxxxxxxxxxxxdxxxxxxdddddddddddoooooollllcccc:::::::::::::::ccccccccc::::::::::::::::::cccccccccccccllllllllllllllllllccccccccc::
,,,'''''''''''''''''''''...............'''''''''''',,,,,,,,,;;;;;::::::::;;;;,,,'''................... ....................'''''',,,,,,;;;;::::::cccccccccccccccccccc::::;;;;;;;;;;;;;,,,;,,,;;;;;;;;;;;;;;;;;;;,,,,,,,,''''''''''''''''',,;;::cloodxxkOO0000KKKKKK000OOkxxdolc:;;,,''''''',,,,;;;;:::::::::cccccccccccccccccc:::::::::ccccccccccccccccccc:cccc::::::ccccccllloooddxxxxkkkkkkkOOkkkOOkkOOkkkkOOkkOkkkOkkkkkkkkxxxxxxxdddddddoooooooooooollllllllllllllcllllllllllllllllllccccccccccccccllllloooooooooooddddddddddddddddddddddddddddddddddddddddxxxxxxxxxxxxdddddddddddddddddoooooolllllllcllllllllllloooooooooooooooddddddddxxxxxkkkkkkOOOOOOOOOOOOOOOOOkkkkkkkkkkkkkkkkkkkxxkxxxxxxxxxxxxxxxxxxxxddddddoooolllccc::::::;;;;;;;;:::::;;;;;;;;;;;;;;;;;;:::::::cccccccccccccclllllllllllllcccccccc::::
,,,,''''''''''''''''''.......................'''''''''''''',,,,;;;;;;;::;;;;;;,,,''''................... ..................'''''''',,,,;;;;:::::cccccccclllllllllccccc::::;;;;;;;;;;;;;;;,,,,;;;;;;;;;;;;;;;;;,,,,,,,,'''''''''''''''''''',,;;::clloddxkkOOO0000000000OOkkxdoolc:;;,,''''''',,,;;;;::::::::::::ccccccccc:ccc:::::::::::ccccccccccccccccccccccccccccccccccllllooooddxxxxkkkkkOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOkkkkkkkkkxxxxxxxxxxxddddddddddddoooooooolloolllllllllllllllllcccccccccccccccclllllllooooooooooodddddddddddddddddddddddddddddddddddxxxxxxxxxxxxddddddddddddddddooooooollllllllllllllllloooooooooooooooooodddddddddxxxxxkkkkkkOOOOOOOOOOOOOOOOkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkxxxxxxdddooolllccc:::::;;;;;;;;;;;,,,,,,,,,,,,,,,;;;;;:::::::::cccccccccccccclllllllcccccccccc::::
,,,,'''''''''''''''''.................................'''''''',,,,,;;;;;;;;;;;;,,,,''''.................... ..................'''''',,,,,;;;;::::cccccclllllllllllllcccc::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,'''''''''''''''''''''',,,;;:cclloddxkkkOOO0000000OOOkkxdollc:;;,,,'''',,,,;;;;:::::::::::::::::::::::::::::::::::::ccccccccccccccccccccccccccccccccllllllooodddxxxxkkkkkkkOOOOOkOkkkkkkkkkkkOOOOOOOOOOOOOOOOOOkkkkkkkkkkkkkkkkkxxxxxxxxxxxxxddddddddddddddddooooooollllllccccccccccccllllllllloooooooooooooddddddddddddddddddddddddddddddddddxxxxxxxxxxddddddddddddddoooooooolllllllllllllllllloooooooooooooooooddddddddddddxxxxxxkkkkkkkkkkkkOkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkOOOOOOOOOOOOOOkkkkkkxxxxdddooolllccc:::::;;;;;,,,,'''''''''''',,,;;;;;:::::::::::ccccccccccccclllccccccccc::::::
''''''''''''''''''''...................................'''''''''',,,,,,,;;;;;;;;,,,,,,''''''................. .................''''',,,,,,;;;;:::cccccllllllllllllllllcccc::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,''''''''''''''''''''''',,,;;::cclooddxxkkOOOO00000OOOkxxdolcc:;;,,,,',,,,,;;;;;::::::::::::::::::::::::::::::::::::ccccccccccccccccccccclccccclcccclllllllooooddddxxxxxxkkkkkkkkkkkkkkkkkkkkkkkkkkkOOOOOOOOOOOOOOOOOOOOOOOOOOOOOkkOOkkkkkkkkkkkkkkxxxxxxxxxxxxddddddddooooolllllllllllllllllllllllloooooooooodddddddddddddooooodoodddddddddddddxxxxxddddddddddddddddddooooooollllllllllllllllllloooooooooooooooooooodddoddddddddddxxxxxxkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkOOOOOOOOOOOOOOOOOOOOOOOOOkkkkkkxxxdddoooolllcccc::;;;,,,''''''''''''',,,,;;;;;;::::::::::cccccccccccccccccccccc:::::::
'''''''''''''''''''....................................'''''''''''''',,,,,,,,,;;,,,,,,,,,,''''''.............. ................'''''',,,,,;;;;;::::ccccclllllllllllllllcccc:::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,''''''''''''''''''''''',,,;;;:ccllooddxxkkOOOO0000OOOkxxdolc::;,,,,,,,,,,;;;;;;::::::::::::::::::::::::::::::::::cccccccccccccccccccccclllllllcccccllllllloooooodddddxxxxxxxxxxkxxxxxkxxxxkxxxkkkkkkkkkOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOkkkkkkkkkkkxxxxxxddddddooooooooooooolllllllolllooooooooooooooooooooooooooooooodddddddddddddddddddddddddddddddddooooooollllllllllllllloooooooooooooooooooooooooooooooooooooodddddddxxxxxxxxkkkkxxxxxxxxxxxxkkkkkkkkkkkOOOOOOOOOOOOOOOOOOOOOOOOOOOOOkkkkkxxxxdddoooollcc::;;,,''''.....''''',,,,;;;;;;;:::::::::::ccccccccccccccccc::::::::
'''''''''''''''''..................................'''''''''''''''''''',,,,,,,,;;;;;,,,,,,,,,,,''''....................................''''',,,,,,,;;;;::::ccccclllllllllllllccccc:::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,,',,,,,,,,''''''''',,,,;;;::ccllooddxxkkOOO000OOOkkxdollc:;;,,,,,,,,,;;;;;;::::::::::::::::::::::::::::::::ccc:ccccccccccccccccccccllllllllclcccccllllllloooooodddddddxxxxxxxxxxxxxxxxxxxxxxxkkkkkkkkkOOOOOOOOOO0000000000000000000000000000000000OOOOOOOOOOOOOOOOkkkkkkxxxxxdddddooooooooooooollooooooooooooooooooooooooooooooooddddddddddddddddddddddddddddddddooooooooooooollllloooooooooooooooooooooooooooooooooooollllolooooooodddddxxxxxxxxxxxxxxxxxxxxxxkkkkkkkkkOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOkkkkkxxxddoollcc::;;,,'''''.''''''',,,,,;;;;;;;;;;::::::::ccccccccccccccc:::::::;
''''''''''''''....................................''''''''''''''''''''',,,,,,,,;;;;;;;;;;;;;;;,,,''''..................................'''''',,,,,,,;;;;;::::ccccccccclllllcccccc::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;:::ccllooddxkkOOOO0OOOkkxddolc::;;,,,,,,,,;;;;;;;;::::::::::::::::::::::::c:::::::cccccccccccccccccccccllllllllcccccccccclllllllllooooooddddddxxxxxxxxxxxxxxxxxxxxkkkkkkkkkOOOOOOOOO0000000000000000000000000000000000000000000000000000000OOOOkkkkxxxxddddddoooooooooooooooooooooooooooooooooooooooooooddddddddddddddddddddddddddddddoooooooooooooooooooooooooooooooooooooooooooooooooolllllllllllllllloooodddddxxxxxxxxxxxxxxxxxxxxxxkkkkkkkkkOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOkkkkxxddoolcc::;;,,,''''''''''',,,,,,,;;;;;;;;;::::::::ccccccccccccc::::::;;
'''''''''''''.............................''''.'''''''''''''''''''''''',,,,,,,,;;;;;;;;;;;;;;;;;,,,'''..................................'''''''',,,,,,,;;;;:::::ccccccccccccccccc::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,;;;;;;;;;;;,,,,,,,,,,,;;;;:::cclooddxkkOOOOOOOkkxddolc::;;,,,,,,,,;;;;;;;:::::::::::::::::::::::::::::::::::c:cc::ccccccccccccccllllllccccccccccccclllllllllooooooddddxxxxxxkkkkkkkkkkkkkkkkkkkkkOOOOOOOOOOOO0000000000OOOO000000000000000K0000000000000000000KK00000000OOOkkkkxxxxxdddddddoooooooooooooooooooooooooooooooooooooodddddddddddddddddddddddddddoooooooooooooooooooooooooooooooooooooollloloolooollllllllllcllccllllllooooddddxxxxxxxxxxxxxxxxxxxxxxxkkkkkkkkkkOOOOOOOOOOOOOOOOOOOOOOOOO00000OOOOOkkkkxxddoolcc::;;;,,,'''''''''',,,,,,;;;;;;;;;;;:::::::::ccccccccc::::::;;
'''''''''''''...................''''''''''''''''''''''',,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;:::::::::;;;,,''...................................'''''''''''',,,,;;;;;::::::cccccccccccc::::::;;;;;;;;;;;;;;;:;;;;;;;;;;;;;;;;;;;;;;,,,,;;;;;;;;;;;;;;::;;;;;;;;;;;;;;;;;;;:::ccllodxxkkOOOOOOkkxddolc::;,,,,,,,,,,;;;;;;;::::::::::::::::::::::c::cc::::::::::::ccccccccccccccccccccccccccccccccclllllllllllooooodddxxxxxxkkkkOOOOOOOOOOOOOOOOOOOOOOOOO0000000000000OOOOOOOOO00000000000000000000000000000KKKKKKKKKKK0000OOOOkkkkkxxxxxxddddddddooooooooooooooooooooooooooooooooodddddddddddddddddddddddddooooooooooooooooooooooooooooooooooooooooooolloooolllllllllllllcccccllllllooodddxxxxkkkkkkkkkkkkkkkkkkkkkkkkkkkkOOOOOOOOOOOOkkkOOOOOOOOOOOOOOOOOOOOOOkkkxxxddoollcc::;;;,,,,''''''''',,,,,,;;;;;;;;;;;;:::::::cccccccc::::::::
'''''''''''..................'''''''''''''''''''''',,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;::::::::::;;;,,''..................................''''''''''''''',,,,;;;;;::::::::c:cc:::::::;;;;;;;;;;;;;:;;::::::::::;;;;;;;;;;;;;;;;;;;;;;;;:::::::::::::::::;;;;;;;;;;;;;:::ccloodxxkkOOOOOkkxdoolc:;;,,,,,,,,,,;;;;;;::::::::::::::::::ccccccccccccc::c:::::::cccccccccccccccccccccccccccccllllllllllllloooooodddxxxxkkkOOOOO000000000000000000000000000000000000OOOOOOOOOOOOOO00000000000000000000000000KKKKKKKKKKK00000OOOOOkkkkkkkxxxxxxdddddddooooooooooooooooooooooooooooodddddddddddddddddddddddooooooooooooooooooooooooooooooooooooooooooooooooooollllllllllllllllllllllloooddxxxkkkkOOOOOOOOkkkkkkkkkkkkkOOOOOOOOOOOOOOOOOOOkkOOOOOOOOOOOOOOOOOOOkkkkkxxxxddooollcc::;;;,,,,'''''''',,,,,,,;;;;;;;;;;::::::::ccccccc::::::::
,''''''''''''''............''''''''''''''''''''''',,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;:::::::::::;;,,''..................................''''''''''''''''',,,,,;;;;;::::::::::::::;;;;;;;;;;;;;;;;;::::::::::::::::::;;;;;;;;;;;;;::::::cccccccccccccc:::::;;;;;;;;;:::ccloodxxkkkOOOkkkxdollc:;;,,,,,,,,,,,;;;;;:::::::cccccccccccccccccccccccccccccccc::::cccccccccccccccccccccccccccllllllllllllooooooddddxxxxkkkOOO00000KKKKKKKK000000000000000K0000000000000OOOOOOOOOOOOOOOOOOOOOOOOOOOO000000000KKKKKKKKKK0000000OOOOOOOOOkkkkkxxxxxxdddddddoooooooooooooooooooooooooddddddddddddddddddddddooooooooooooooooooododdddddoddoodddoooooooooooooooooolllllllllllllllllllllooooddxxkkkOOOOOO0OOOOOOOOOOOOOOOOOOOOOOO00OOOOOOOOOOOOOOOOOOOOOOOOOkkkkkkkkkkkxxxxxdddoolllcc::;;;,,,,,'''''',,,,,,;;;;;;;;;;;:::::::ccccccc::::::::
,,,'''''''''''''.........''''''''''''''''''''''''',,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;::::::::::;;,,'''................................''''''''''''''''''''',,,,,;;;;;:::::::::;;;;;;;;,;;;;;;;;;;:::::::::::::::::::::::;;::;::::::::ccclllllllllllccccc::::;;;;;;;:::cclooddxkkkOOkkkxxdollc:;;,,,,,,,,,,;;;;;::::::ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccllllllllllooooooooddddxxxxkkOOO0000KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK0000000000000OOOOOOOOOOOOOOOOOOOOO0000000000000KKKKKKK00000000000OOOOOOOOkkkkkxxxxxddddddoooooooooodooooooooooooddddddddddddddddddddddddooooooooooooooooodddddddddddddddddddddoooooooooooooooooooooooollllllllllooooddxxkkkOOOO00000000000OOOOOOO000000000000000000000OOOOOOOOOOOOkkkkkkkkkkkkkxxxxxxdddooolllcc:::;;,,,,,''',,,,,,,,;;;;;;;;;;:::::::cccccccc::::::;
,,,,,,,'''''''''''''....'''''''''''''''''''''''''',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;::::::::;;,,'''..............................'''''''',,,'''''''''''''',,,,,;;;;;;;:;;;;;;;;;;,,,,,,,,,;;;;;;;:::::::::::::::::::::::::::::::ccccllllllooooollllcccc::::;;;;;;:::cclooddxkkkkkkkkxxdolcc:;;,,,,,,,,,,,;;;::::::cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccclllllllllloooooooodddddxxxxkkOOO0000KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK0000000000000000OOOOOOOOOOOO00000000000000000000KKKKK0000000000000000OOOOOkkkkkxxxxdddddddddddddddddddddddoodooddddddddddddddddddddddddooooooooooooooodddddddddddddddddddddddddddoooooooooooooooooooollllllllllooodddxxkkkOOOOO000000000000000000000000000000000000000000OOOOOOOkkkkkkkkkkkkkkkkxxxxxxdddooolllcc::;;;,,,,,,,,,,,,;;;;;;;;;;:::::::::ccc:::::::::;;
,,,,,,,,,'''''''''''''''''''''''''''''''''''''''''',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;,,'''............................''''',,,,,,,,,,,,''''''''''''',,,,,,;;;;;;;;;;;;;,,,,,,,,,,,,;;;;;;::::::::::::cc:::::::::::::::ccccccllllooooooooollllccc:::;;;;;;:::cclloddxxkkkkkkxxddolcc:;;;,,,,,,,,,;;;;;:::::ccccccccccccccccccccccccccccccccccccccc:::::c::::::c::cccccccccccccccccllllllllllllloooooodddddxxxkkkOOO000000KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK000000000000000000000000000000000K0000KK0KKKKKKKKKKKKKKK000000000000OOOOkkkkxxxxxddddddddddddddddddddddddddddddddddddddddddddddddddooooooooooooddddddddddddddddddddddddddddddddooooooooooooooooollllllllllllooodddxxkkkkOOOOOO000000000000000000000000K0KKKKKKKKK0000000OOOOOOkkkkkkkkkkkkkkkkkkkxxxxdddooollcc::;;;,,,,,,;;;;;;;;;;;;;::::::::ccc:::::::::;;;
,,,,,,,,,,,,,,'''''''''''''''''''''''''''''''''''''''',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;,,,'''...........................''''',,,,,;;;;;;;;,,,,,'''''''''''',,,,,;;;;;;;;;;,,,,,,,,,,,,,,,;;;;;::::::::cccccccccccc::::::::ccccccllllooooooooooolllccc::::;;;;::::ccllooddxxxxkxxxddoolcc:;;;,,,,,,,,,;;;;:::::cccccccccccccccccccccccccccccccccccccc::::::::::::::::::ccccccccccccccccccccccccllllllllllooooooddddxxxkkkkOOOOOO00000000000000000000000000000000000000000000000000000KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK0000000OOOOOkkkkxxxxxxxxxxxxxxddddddddddddddddddddddddddddodddddddddoodoooooooooddddddddddddddddddddddddddddddddddddoooooooooooollllllllllclllllooodddxxxxkkkkkOOOOOOO0000000000000000000000KKKKKKKKKK000000OOOOOOOOOOOOOOOOOOOOOOOOkkkkkxxxddoollcc:::;;;;;;;;;;;;;;:::::::::::::::::::::;;;;;;
,,,,,,,,,,,,,,,''''''''''''''''''''''''''''''''''''''''','',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,'''...........................'''',,,;;;;;;::;;;;;;;,,,,,,'''''''''',,,,,;;;;;;;,,,,,,,'''''',,,,;;;;;:::::::ccccccccccc:::::::ccccccccclllloooooooooooolllcc:::::;;:::::ccllloodddxxxxxdddoolcc::;;;,,,,,,,;;;;;::::::ccccccccccccccccccccccccccccccccccccc::::::::::::::::::::c:::ccccc:cc:::::::::ccccccccllllllllllloooodddddxxxxkkkkkOOOOOOOOOOOOOOOOOOOOO00000000000000000000000000KKKKKKKKKKKKKKKKKKKKXXXXXXXXXXXXXXXKKKKKKKKK0000000OOOOkkkkxxxxxxxxxxxxxxxxxdddddddddddddddddddddddddoooddddoodooooooooodddddddddddddddddddddxxxxxxxxddddddddddddooooooollllllcccccccccllllloooodddddxxxxxkkkkOOOOOOOOOOOOOOOOOOOO00000000KKKKKK00000000OOOOOOOOO000000000000000OOOOkkkxxddollccc:::::::::::::::::::::::::::::::::;;;;;;;
,,,,,,,,,,,,,,,,,,,'''''''''''''''''''''''''''''''''''''''''''',,,,,,,,,,,''',,'',,,,'',,''''''..........................'''',,,;;;;::::::::::::;;;;;,,,,,,'''''',,,,,,,,,;;,,,,,,,,,''''',,,,,;;;;::::::::ccccccccccc:::c:::::ccccccclllloooooooooooolllcccc::::::::::ccclllooodddddddooollcc::;;;;;,,,;;;;;;;;::::ccccccccccccccccccccccccccccccccccccccc:::::::::::::::::::::::::::::::::::::::::::::cccccccccccclllllllllloooodddddxxxxxxxxkkkkkkkkkkkkkkkkOOOOOOO0000000000000000KKKKKKKKKKKKKKKXXXXXXXXXXXXXXXXXXXXXXXKKKKKKKKK000000OOOOOkkkkkkkxkxxxxxxxxxxxxxxdddddddddddddddddddddooooooooooooooooooodddddddddddxxddxxxxxxxxxxxxxxxxdddddddddddooooolllllccccccccccccclllllllooooooodddddxxxxkkkkkkkkkkkkkkkkkkkOOOOO000000000000000000000000000000000KKKKKKKKKK0000OOkkxddoollcccc::::::::::::::::::::::::::;;;;;;;,,
,,,,,,,,,,,,,,,,,,,,,,,''''''''''''''''''''''''''''''''''''''''',,,,,,,,,'''''''''''''''''''...........................'''',,,;;;;:::cccccccc:::::;;;;;,,,,,,,,,,,,,,,,,;;;;;;,,,,,,,,''',,,,,;;;;;:::::ccccccccccccccccc:::::ccccccccclllloooooooooooollllcccc:::::::::cccllllloooooooolllccc::;;;;;;;;;;;;;;;::::::cccccccccccccccccccccccccccccccccccccccc::::::::::::::::::::::::::::::;;;;;;;;;::::::ccccccccccccccccccccccllllllooooodddddddddddddddxxxxxxxkkkkkkOOOOOO0000000000000KKKKKKKKKKKKXXXXXXXXXNNNNNNNNNXXXXXXKKKKKKKK000000OOOOOkkkkkkkkkkkkxxxxxxxxxxxxxxdxxxddddddddddddooooooooooooooooooooddddddddxxxxxxxxxxxxxxxxxxxxxxxxxddddddddoooooolllccccccccccccccccllllllllllllllooooodddddddddddddddddddxxxxxkkkkOOOOOO00000000000000000000000KKKKKKKXXXXXXXXKKK00OOkxxddoolllccccccccccccccc::::::::::;;;;;;;,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,'''''''''''''''''''''''''''''''''''''',,,',,''''''''''''''''''..............................'',,,,;;;:::ccccccccccccc:::::;;;;;;,,,,,,,,,,,,,,;;;;;;;;,,,,,,,,,,,,,;;;;::::::cccccccccccccccccc::::::::cccccccllllooooodooooooollllccccc::::::cccccclllllllllllcccc:::;;;;;;;;;;;;;::::::::ccccccccc::::c:::ccccccccccccccccccccccccccc:::::::::::::::::::::::::;;;;;;;;;;;;::::ccccccccccccccccccccccccccccclllllllooooooooooooooooodddddxxxxkkkkkOOOOOOOOO000000000000KKKKKKKXXXXXXXNNNNNNNNNXXXXXXKKKKKKK000000OOOOOOOkkkkkkkkkkkkkkkxxxxxxxxxxxxxxxxxxddddddddddooooooooooooooooodddddddddxxxxxxxxxxxxxxxxxxxxxxxxxddddddddooooollllccccccccccccllllllllllllccccclllllllooooooooooooooooooodddddxxxxkkkkOOOOOOOOOOOOOOOOOO0000000KKKKKXXXXXXXXXXXKK00OOkkxddoollllccccccccccccc:::::::::;;;;;;,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,,'','''''''''''''''''''''''''''''''''',,,,,,,,''''''''''''''..............................'''',,;;;:::cccccllllllccccc::::::;;;;;;;;;;,;;;;;;;;;;;;;;;;,,,,,,,,,,,;;;;::::cccccccccccccccccccccc:::::c:::cccccllllloooodddddoooooollllcccccc::::ccccccccccccccccc:::::;;;;;;;;;;;;;:::::::::cccc::::::::::::::cccccccccccccccccccccccccccc::::::::::cc::::::::::::;;;;;;;;;;::::cccllllllllllllcccccc:::::::cccccccccllllllllllllllllllooooodddxxxxkkkkkkkkkkOOOOOOOOOOOO000000KKKKKXXXXXXXXNNXXXXXXXXKKKKKK00000OOOOOOOkkkkkkkkkkkkkkkkkkxxxxxxxxxxxxxxxxxxdddddddddooooooooooooooooddddddddxxxxxxxxxxxxxxxxxxxxxxxxxxxxdddddddooooollllcccccccclllllllllllllllccccccccclllllllllllllllllllllloooooodddxxxxkkkkkOOOOOOOOOOOOOOOOOO0000KKKKXXXXXXXXXXXKKK0OOkkxxddoollllllcccccccccccc::::::;;;;;;;,,,
;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,''''''''''''''''''''''''''','''',,,',,,,''''''''''''................................''',,,;;;:::ccccllllllllccccc:::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,;;;;;::::ccccccccccccccccccccccccccccccccccccccccllllooooodddddoooooollllcccccccccc:ccccccccccc::::::;;;;;;;;;;;;;:::::::::::cccccc:::::::::::::::cccccccccccccccccccccccccccccccccccccccccc:::::::::;;;;;;;;:::cccclllllloooollllllcccccc::::::ccccccccccccccccccccccclllllloooodddddxxxxxxxxxxxkxkkkkkkkkkkOOOOO0000KKKXXXXXXXXXXXXXXKKKKK000000OOOOOOkkkkkkkkkkkkkkkkkkkkkxxxxxxxxxxxxxxxxxxdddddddddoooooooooooooooodddddddxxxxxxxxxxxxkxxxxxxxxxxxxxxxxxdddddoooollllllllllllllloooooollllllllccccccccccccclllllllclllllllllllloooooddddxxxxxxkkkkkkkxxkkkkkkkkOOOO0000KKKKKXXXXKKKKK00OOkkxxddooolllllllllcccccccc:::::::;;;;;;;,
;;;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,'''''''''''''''''',,,,,,,,,,,,,,,,,,',''''''''...................................''',,,;;;:::ccclllllllllcccccc::::::::::::::::::::::::::::::;;;;;;;;;;;;;::::cccccccllllllccccccccccccccccccccccccccccccllllooooddddddddoooooollllcccccc:::::::::::::::::;;;;;;;;;;;;;;;;;::::::::cc:::cc::::::::::::::::::ccccccccccccccccccccccccccccccccccccccccccc::::::;::;:::::cccclllooooooooooooollllcccccccccccccccccccccccccccccccccccclllllooooodddddddddddddddddddxxxxxxxxkkkkOOO000KKKKXXXXXXXXXKKKKK0000OOOOOOkkkkkkkkkkkkkkxxkkxkkkkkxxkkxxxxxxxxxxxxxddddddddddooooooooooooooooddddddxxxxxxxxxxxxkkxxxxxxxxxxxxxxxxdddddddooooolllllllllooooooooooooolllllllcclcccccccccccccccclllllllllllllooooddddddddddxxxxxxdxxxxxxxxxxkkkkOOOO00000KKKKK0000OOkkxxxddooollllllllllccccccccccc:::::;;;;;;
;;;;;,,,,,,,,,,,,,,,,,,,,,,,,,,''''''''''''''''''''',,,,,,,,,,,,,,,,,,,'''''''''....................................''',,;;;:::ccccccllllllcccccccc:c:::::::::::::::::::::::::::::;;;;;;;;;:::ccccclllllllllllllllllccccccccccccccccccccccccclllooooodddddddddooooollllccccccc:::::::::::;;;;;;;;;;;;;;;;;;;;:::::::::c::::::::::::::::::::::::::::ccccccccccccccccccccccccccccccccccccccccc::::::::::::ccclllloooododdddooooooolllllccccccccccccccccccccccccccccccccllllllloooooooooooooooooooooooooooddddxxxkkkOO000KKKKKKXXXKKKKK0000OOOOOkkkkkkkkxxxxxxxxxxxxxxkkkxxxkkxxxxxxxxxxxxxxxxdddddddoooooooooooooooooodddddxxxxxxxxkkkkkkkkkkxxxxxxxxxxxxxxdddddooooooolooooooooodddoooooooollllllllllllccllclllllllcccllllllllloooooooodddddddddddddddddddddddddxxxxkkkkkOOOOOOOOOOOOOkkxxxddoooollllllllllllccccccccc::::::::;;;
::;;;;;;;;,,,,,,,,,,,,,,,,,,,,'''''''''''''''''''',,,,,,,,,,,,,,,,,,,,,,'''''''.....................................'''',,,;;;:::cccccccccccccccccccc:::::cccccccccccccccccccc::::::;;;;;:::::cccclllllllllllllllllllllllllccccccccccc::ccccccllllooooddddddddddooooollllccccccc:::::::::;;;;;;;;;;;;;;;;;;;;;:::::::::::::::::::::::::::::::::::::::cccccccccccccccccccccccccccccccccccccccc:::::::::::ccclllooooooddddddoooooooolllllllllllllllllllccccccccccccccccccllllllllllllooooooooooooooollllooooooddxxxkkOO000KKKKKKKKKKKK000OOOOkkkkkkxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxddddddddooooooollloooooodddddxxxxxxxxxxkkkkkkkkkkxxxxxxxxxxxxxddddddoooooooooooooodddddddoooooooolllllllllllllllllllllllllllllllllooooooooooodddooooooooooooooodddddddddxxxxxxkkkkkkkkkkxxxxdddooooolllllllllllllccccccccccc::::::::
c:::;;;;;;;;;;;,,,,,,,,,,,,,',,'''''''''''''''''',,,,,,,,,,,,,,,,,,,,,,,,'''''''......................................''',,,;;;;:::ccccccccccccccccccccccccccccccccccccccccccccc:::::::::::::ccclllllllllllllllllllllllllllclcccccccc:::::cccccllllooooodddddddddooooolllllccccccc::::::;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::::::::::::::::::::::::::cccccccccccccccccccccccccccccccccccccc::::::::::cccccllloooooooodddooooooooooooolllllllllllllllllccllllllllllllllllllllllllllllllooooollllllllllllloooddxxkkkOO000KKKKKKKKKK0000OOkkkkkxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxddddddddoooooollllllloooooddddxxxxxxxxxxxxkkkkkkkkkkkkkkxxxxxxxxddddddooooooooooodddddddddooooooooolllllllllllllllllllllllllllllloooooooooooooooooooooooooooooooooooooooodddddddxxxxxxxxxdddddooooollllllllllllllllccccccccccccc:::::
ccc:::::::;;;;;;;,,,,,,,,,,,,,,,'''''''''''''',,,,,,,,,,,,,,,,,,,,,,,,,,,,,'''''........................................''',,,;;;::::ccccccccccccccccccccccccccccccllllllllccccccc:::::::::cccccllllllllllllllllllllllllllllllccccccc::::::::cccclllloooodddddddddddooooolllllcccc::::::;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::::::::::::::::::::::::::ccc:cccccc::cccccccccccccccccccccccc::::::::::::ccccllllloooooooooooooooooooooooolollllllllllllcccllllllllllllllllllllllllllllooooooooollllllllllooodddxxkkOOO0000KKKKKKKKK000OOOkkkxxxxxxddxxxddxxxxxxxxxxxxxxxxxxxxxxxxdxxxxxxdddddddddddoooooollllllllooooddddddxxxxxxxxxxkkkkkkkkkkkkkkkkxxxxxxxddddoooooooooooodddddddddoooooooooolllllllllllllllllllllllllllloooooooooododdddooooooooooooooooooooooooooooooddddddddddddooooooollllllllllllllllllllcclcccccccccc:::
lllccc:::::::;;;;;;;;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;,,,,,,,,,,,,,,,''''''......................................'''',,,;;;::::cccccccccllccccccccccccccllllllllllllllcccccc::::::::cccclllllloolllllllllllllllllllllllccccccc:::::::::cccclllloooooddddddddddoooooollllccccc::::::;:;;;;;;;;;;;;;;;;;;;;;:::::::::::::::::::::::::::::::::::::::::::::::::::::ccccccccccccccccccccc::::::::::::::cccclllllllloooooooooooooooooooolllllllllllccccccccclllllllllllllllllloolloooooooooooooooooooooooodddxxkkkOOO000KKKKKKKKK0000OOkkkxxxxxdddddddddddddddxxxxxxxxxxxxxxdddddddddddddddddddddoooooolllllllloooooodddddddxxxxxxxxxxxkkxkkkkkkkkkkxxxxxxxddddddooooooooddoddddddddooooooooooollllllllllllllllllclllllllllooooooooodddddddddddooooooooooooooooooooooooooooooooooooooooooooololllllllllllllllllllcccccccccccccc
oollllcccc::::::;;;;;;;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;,;;;;;,,,,,,,,,,,,,''''''''''''................................''',,,,;;;:::cccccclllllllllllllllllllllllllllllllllllccccc::::::ccccclllllllllllllllllllllllllllllllccccccc::::::::::cccclllllooooooodddddooooooolllllccccc::::::::;::;;;;:::;;;;;;;;;;;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::cccccccccccccc::::::::::::::::ccccccllllllllllllollooooooloollllllllccccccccccccccclllllllllllllllooooooooooooooooooooooooodddddxxxkkkOOO0000KKKKKKKKKKK000OOkkkxxxxdddddddddddddddddddxxxxxxdddddddddddddddddddddddddddooooolllllllllooooooodddddddxxxxxxxxxxxxxxxkkkkkkxxxxxxxxdddddooooooooodddddddddoooooooooooooollllllllllllllcccccclllllllllooooooooddddddddddddodoooooooooooooooooooooooooooooooooooooooooloooooooooollllllllllllcccccccccccc
doooollllcccc:::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,;;,;;;;;;;;;,;;,,,,,,,,,,,,''''''''''''''''...........................''',,,,;;;;:::ccccllllllllllllllllllllllllllllllllllllccccccc::cccccccllllllllllllllllllllllllllllclcccccccc:::::::::::ccccclllloooooooooddddoooooooolllccccc::::::::::::::::::;;;;;;;;;;;;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::ccc:ccc::::::::;;;;;;;:::::cccccccclllllllllllllllllllllllllllccccccccccccccccccccllllllllllooooooooooooooooooddddddddddxxxxxkkkOOOO0000KKKKKKKKKKK0000OOkkkxxxxdddddddddddddddddddddddddddddddddddddddddddddddddddoooooollllllllooooooooodddddddddxxxxxxxxxxxxkkkkkkkxxxxxxddddddoooooooooddddddddddddooooooooooollllllllllllccccccccclllllllllloooooooodddddddddddddoddoooodoooooooooooollllllllllllooloooooooooooooooolllllllllllllllccccccccc
dddooollllccccc:::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,'''''''''''''''''.......................'''',,,,,;;;;:::cccclllllooooooollllllllllllllllllllllllcccccccccccccccccllllllllllllllllllllllllllllcccccccccc::::::::::::ccccclllllooooooodddoooooooollllcccc:::::::::::::::::;;;;;;;;;;;;;;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::;;;;;;;::::::cccccccccclllllllllllllllllllllllcccccccccccccccccccccllllllllloooooooooooooooooddddddddxxxxxxkkkkOOOO0000KKKKKKKKKKKKK000OOOkkkxxxxxddddddddddddddddddddddddddddddddddddddoooodddddddoooooooolllllllooooooooooodddddddddxxxxxxxxxxxxxkkxxxxxxxxddddddoooooooddddddddddddddoooooooooooooolllllllllllccccllllllllllllllooooooodddddddddoooooooododdooooooooooollllllllllllllooooooooooooooooooooooollllllllllccccccccc
xdddoooollllcccccc:::::::;;;;;;;;;;;;:::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,'''',,,,,,'''''.....................'''',,,,,;;;;::::ccccllllooooooooolllllllllllllllllllllllccccccccccccccccclllllllllllllllllllllllllccccccccccccc:::::::::::::cccccclllllooooooooooooooooollllcccc::::::::::::::;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::;:;;::::::ccccccccccccccllllllllllllllllcccccccccccccccccccccccccclllllllloooooooooooooodddddddxxxxxxkkkkkOOOOO00000KKKKKKKKKKKKK000OOOkkkxxxxxdddddddddddddoddddddddddddddddddoooooooooooooooooooooooooolllllloooooooooooooodddddddddxxxxxxxxxxxxxxxxxxxxddddddddddddddddddddddddddddddoooooooooooollllllllllllllllllllllllllllllooooooodddoooooooooooooooooooooooollllllllllllllllllloooooooooooooooooooooollllllllllcccccccc
xxxdddooollllcccccc::::::::::::::;:::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,'',,,,,,,'''''...................''',,,,,;;;;;;::::ccclllllooooooooooollllllllllllllllllllccccccccccccccccccclllllllllllllllllllllccccccccccccccc:::::::::::::::ccccccllllllooooooooooooooolllllcccc:::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::;::::::::::::cccccccccccccccllllllllllllllllcccccccccccccccccccccccllllllllllooooooooooooooddddddxxxxxxkkkkkOOOO0000000KKKKKKKKKKKKK0000OOOkkkxxxxxdddddddddooooodddddddddddddddddddooooooooooooooooooooooooollllllooooooooooooooddddddddxxxxxxxxxxxxxxxxxxxdddddddddddddddddddddddddddddddddddoooooooooollllllllllllllllllllllllllllooooooooooooooooooooooooooooooooollllllccccccllllllllooooooooooooooooooooooolllllllllcccccccc
kxxxdddooollllccccc::::::::::::::::;;:;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,',,,,,,,,,''''''...............'''',,,,,;;;;;;:::::cccclllloooooooooooolllllllllllllllllcccccccccccccccccccccccccllcllllllllllllcccccccccccccccccc::::::::::::::::ccccccccllllloooooooooooooollllccccc::::::;:;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::ccccccccccccccllllllllllllllllccccccccccccccccccccccccclllllllloooooooooooooooddddddxxxxxkkkkkOOOO00000000KKKKKKKKKKKKK0000OOOkkkkxxxxdddddddoooooooooooddddddddddddddddoooooooooooooooooooooooolloooooooooooooooooooddddddddddxxxxxxxxxxxxxxxxdddddddddddddddddddddddddddddddddddddddoooooooollllllllllllllllllllllllllloooooooooooooooooooooooooooolllllllccccccccccclllllloooooooooooooooooooooooolllllllllccccccc
kkxxxddoooolllccccc:::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,,,,,,''''''''...........'''',,,,,;;;;;;:::::::ccccclllloooooooooooollllllllllllllllclccccccccccccccccccccccccccccccccccccccccccccccccccccccccc:::::::::::::::::::cccccccllllllloooooooooolllllcccc::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::::::::::::::cc::ccccccccccc:::::::::::::::::::ccccccccccccccccllllllllllllllclccccccccccccccccccccccccclllllllllllooooooooooooddddddxxxxxkkkkOOOOO000000000KKKKKKKKKKKK0000OOOkkkkxxxxddddddooooooooooooddddddddddddddddddddooooooooooooooooooollllooloooooooooooooooodddddddddddddxxxxxxxxxxxddddddddddddddddddddddddddddddddddddddddddoooooolllllllllllllllllllllllllllllolooooooooooolllooooolllllllllccccccccccccccclllllooooooooooooooooooooolllllllllllllcccccc
Okkxxxddooollccccc:::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;:;;;;;;;;;;;;;;;,,,,,,,,,,,,,'''''''''''''''''''''''',,,,,;;;;;::::::::cccccccllllllooooooooooooollllllllllllllllllccccccccccccccccccccccccccccccccccccccccccccccccccccc:::::::::::::::::::::::::cccccccllllllllooooooooollllccccc::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::ccccccccccccccccccccccccccccccc:::::cc:cccccccccccccccccccccllllllclllllllllcccccccccccccccccccccccccccllllllllllloooooooooooddddddxxxxkkkkkOOO00000000000KKKKKKKKKKKK0000OOOkkkkxxxxddddoooooooooooooooddddddddddddddddddddoooooooooooooooooooolllloooooooooooooooooodddddddddddddxxxxxxxxxdddddddddddddddddddddddddddddddddddddddddddooooooooollllllllllllllllllllllllllllllllolllllllloolllllllllllcccccccccccccccccclllllloooooooooooooooooollllllllllllllllcccc
Okkkxxxdooollcccc:::::::::::::::;:;;;;;;;;;;;;;;;;;;;;::;:;;;;;;;;;;;;;;;;;,,,,,,,,,,'',,'''',,,',,,,,,,,,,,;;;;;::::::ccccccccccllllllllllooooooooooooooolllllllllllllllllllccccccccc::c::cccccccccccccccccccccccccccc:c::ccc:cccc:::::::::::::::::::::::::ccccccccclllllloooooollllllcccc::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::cccccccccccccccccccccccccccccccccccccccccccccccccccccccccllllllcllllllllllllcccccccccccccccccccccccccccccccllllllllloooooooooooodddddxxxxkkkkOOOO0000000000000KKKKKKKK000000OOOkkkkxxxxddddoooooooooooooooddddddddddddddddddddooooooooooooooooolloolloooooooooooooooooooodddddddddddddxdddxddddddddddddddddddddddddddddddddddddddddddddddddooooooollllllllllllllllllllllllllllllllllllllllllllllllllllccccccccc:ccccccccccclllllloooooooooooooooollllllllllllllllllccc
OOOkkxxddoollccc:::::::::::::::::::;;;;;;;;;;;;;;;;;:::::::::;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,,,,,,,;;;;;:::::cccclllllllllllllllooooooooooooooooooooooooolllllllllllllllllllccccccccc::c::ccccccccccccccccccccccc::::::::cccccccc::::::::::::::::::::::::::::::cccccccllllllooooollllllcccc::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::ccccccccccccccccccccccccccccccccccccccccccccllllllllllllllllllllllcccllllllccccccccccccccccccccccccccccccccccllllllllllooooooooddddddxxxkkkkOOO0000000000000000KKKKK00000000OOOOkkkxxxxdddddoooooooooooooodddddddddddddddddddddoooooooooooooooollolloooooooooooooooooooooodddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddooooooooooolllllllllllllllllllllllllllllllllllllllllllllllccccccc::::::::::ccccccllllllloooooooooooollllllllllllllllllllccc
0OOkkxxddoollccc::::;;;;;;:::::::::::::;;;;;;;;::::::::::::;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,;;;;;:::ccclllooooodddddddddddddddddddddddddddoooooooooooolllllllllllllllllllllcccccccccccccccccccccccccccccccccc:::::ccccccccccccccc::::::::::::::::::::::::::::::::ccccclllllooolllllllccccc::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::::::cc:ccccccccccccccccccccccccccclllllllllllllllllllllllllllllllcllllcccccccccccccccccccccc::c:::::::ccccccccclllllllllooooooodddddxxxkkkkOOO00000000000000000000KK0000000OOOOkkkkxxxxdddddooooooooooooooddddddddddddddddooodoooooooooooooooolloolloooooooooooooooooooooooddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddooooooooooooolooollllllllllllllllccccccllllllllllllllllccccccccc::::::::::::ccccccclllllllloooooollllllllllllllllllllllcccc
00OOkkxxddollccc:::::;;;;;::::::::::::::::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,;;;;:::cccllloodddxxxxkkkkkkkkxxxxxxxxxxxxxxxxdddddddoooooooollllllllllllllllllllllcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc:::::::::::::::::::::cccccllllllllllllllccccc::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::::::::::::::::::::::cccccccccccccccccclllllllllllllllllllllllllllllllllllllllllcccccccccccccccccccc:c:::::::::::::ccccccccllllllllooooooddddxxxkkkOOOO000000000K000000000000000000000OOOkkkkxxxxxdddddoooooooooooodddoooooodooooooooooooooooooooooooooolooooollooooooooooooooooooooodddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddooooooooooooooolllllllllllllccccccccccccccccccccccccccccccccccc:::::::::::::::ccccccllllllllllllllllllllllllllllllcccccccc
000OOkkxddoollcc::::::;;;;:::::::::::::::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::ccclloodddxxkkkOOOOO00000OOOOOOOOOkkkkkkkkxxxxdddddoooooolllllllllllllllllllllllccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc:::::::ccccccllllllllllllllcccccc::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::;::::::::::::::::::::::::::::ccccccccccccccccllllllllllllllloloololllllllllllllllllllcccccccccccccccccccccc:::::::::::::ccccccccclllllllooooodddxxxkkkOOO000000KKKKKKKK0KK000KKKK000000000OOOOkkkkxxxxxdddddddddddodddddooodoooooooooooooooooooooooollllllllollllloooooooooloooooooooooooddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddooooooooooooooooollllllllllccccccccccccccccccccccccccccccccccc:::::::::::::::::ccccccccllllllllllllllllllllllclcccccccccc
K00OOkkxxddollccc::::::;:::::::::::::::::::::::::::::::;;;;;;;;;,,,,,,;;;;;;;;;;;;;;::::::cccllooddxxxkkOOO0000KKKKKKKKKKK0000000OOOOOOkkkkxxxddddoooooolllllllllllllllllllllllccccccccccccccccclllcllcllccccccccccllllllllllllllllllllllllllllllcccccccccccccccccccccccccclllllllllllllllcccc:::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::;;;;;;;;;;;;;;;;;;:::::::::::::::::ccccccccccccclllllllllllooooooooooooolllllllllllllllllcccccccccccccccccccc::::::::::::::ccccccccllllllllooooddxxxkkOOOO00000KKKKKKKKKKKKKKKKKKKKKK0000000OOOOkkkkkxxxxxddddddddddddddddddooooooooooooooolllllllllllllllllllllllllllllllllllllloooooooodddddddddddddddddddddddddddddddoooooooooodddddddddddddddddddddddddddodddooooooooooooolllllllcccccccccc:c::c::::::cccccccccccccccc:::::::::::::::::::::cccccccclllllllllllllllllllcccccccccccc
K000OOkkxddoollcccc::::::::::::::::::::::::::::::::::::;;;;;;;,,,,,,,,,,,,,;;;;;::::cccclllooddxxxkkOO0000KKKKXXXXXXXXXXXXXKKKKKK00000OOOkkkxxxddddooooooolllllllllllllllllllllccccccccccclllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllcccccccccccclllllllloooolllllllccc::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::::::::::::ccccccccccllllllllloooooooooooooooooooooolllllllllllccccccccccccccccccccc::c::::::cccccccccllllllllooodddxxkkOOOO0000KKKKKKKKKKKKKKKKKKKKKKK00000000OOOOkkkkkxxxxxxxxxddddddddddddddooooooooooolllllllllllllllllllllllllllllllllllllllllooooooooooddddddddddddddddddddddddddddoooooooooooooddddddddddddddddddddddddddddddddooooooooooollllllllcccccccc::::::::::::::::::ccccccccc::::::::;;;;::::::::::::::ccccccccccllllllllllllllccccccccccc
KK00OOOkxxddoollcccc::::::::::::::::::::::::::::::::::;;;;;,,,,,,,,,,,,,,,,;;;;:::cclloooddxxkkOOO00KKKKKXXXXXXXNNNNNNNNNNXXXXXXKKKK000OOOkkkxxxdddddooooooooooooooooollllllllcccccccccccllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllooooooooooollllccc::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::::ccccccclllllllloooooooooooooooooooooooooooollllllllcccccccccccccccccccccccccccccccccclllllllllooooddxxkkOOO00000KKKKKKKKKKKKKKKKKKKKKKKKK0000000OOOOOkkkkkxxxxxxxxxxxxxxxxddddddddooooooooolllllllllllllllllllllllllllllllllllllllllloooooooddddddddddddddddddddddddddddddoooooooooooooddddddddddddddddddddddddddddddoooooooooooooollllllllccccccc:::::::::::::::::::::::cc::::::::::;;;;;;;;;;;;;::::::::::ccccccclllllllllllllcccccccccc
KK000OOkkxddoolllcccc::::::::::::::::::::::::::::::::;;;;;,,,,,,,'''''''',,,;;::cclooddxxkkOO000KKKXXXXXXNNNNNNNNNNNNNNNNNNNNNXXXXXKKK000OOOkkkxxxxdddddooooooooooooolllllllllcccccccccccclllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllooooooollllllloooooooooddddooooolllcccc:::::::::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::::::::ccccccclllllllooooooooooooooooooooooooooooooolllllllcccclllllllllllcccccccccccclllllllllllllooooddxxkkkOO0000KKKKKKKKKKKKKKKKKKKKKKKKKKK0000000OOOOOkkkkkkkkxxxxxxxxxxxxxxxddddddddooooooolllllllllllccccccccccccccllllllllllllllllloooooooodddddddddddddddddddddddddddddooooooooooooooddddddddddddddddddddddddddddddodooooooooooooollllllccccccc:::::::::::::::::::::::::::::::::::;;;;;;;;;;;;;;;;::::::::::ccccccccllllllllllccccccccc
KK000OOkkxddoolllcccc::::::::::::::::::::::;::;:::;;;;;;;;;,,,,'''''''''',,,;::cloodxkkOO00KKKXXXXXNNNNNNNNNNNNNNNNWWWWWWNNNNNNNNXXXXKK000OOOkkkxxxxxdddddddddoooooooolllllllllllllllllccclllllllllllllllllllllllllcccccccccccccccccllllllllllllccclccllllllllooooooooololooooooodddddddddddooolllllccccccccccccc:::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::::::::::cccccclllllllllllooooooooooodddddddddddddooooolllllllllllllllllllllllllllllllllllllooooooooooodddxxkkOOO000KKKKKKKKKKKKKKKKKKKKKKKKKKK0000000OOOOOOOkkkkkkkkkkkkkkkxxxxxxxxxxddddddoooooooolllllllllccccccccccccccllllllllllllllllllllooooooooddddddddddddddddddddddddddooooooooooooooddddddddddddddddddddddddddddddooooooooooooooooolllllllcccccc::::::::::::::::::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;:::::::ccccccccllllllcccccccccc
KK000OOkxxddoollccccc::::::::::::::::::::;;;;;;;;;;;;;;;;;,,,,,,'''''''',,,;;:clodxkOO0KKXXXNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWNNNNNNXXXKKK000OOOkkkkxxxxxxxxdddddddoooooooolollollllllllllllllllllllllllllllllllcccccc:::::::::::::::ccccccccc:::::::::cccccclllllllollllllllooooddddxxxxxxxddddoooolllllllllllccccccccc::::::::::::;;;;;;;;;;;;;,,;;;;;;;;;;;::::::::::ccccccccccc:::::ccccccccclllllllllllloooooooooooddddddddddddooooollllllllllllllllllllllllllllllolooooooooooooddddxxkkOOO000KKKKKKKKKKKKKKKKKKKKKKKKKKK00000000OOOOOOOOkkkkkkkkkkkkkkkkxxxxxxxxxxxddddddoooooooollllllllllccccccccclllllllllllllllllllllllooooooooodddddddddddddddddddddddddoooooooooooodddddddddddddddddddddddddddddddooooooooooooooooooollllllcccccccc::::::::::::::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;:::::::ccccccclllllllcccccccc
KK000Okkxxdoolllcccc:::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,'''',,,,;::clodxkO0KKXXNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNXXXXKK000OOOOkkkkkkkkkxxxxxxxddddddooooooooooodoooooooooollllllllllllllllccccc::::::;;;;;;;;;;;;::::::::;;;;;;;;;;;;;::::cccccccllccllllllooodddxxxxxxxxddddoooooooooooollllllcccccccccc::::::::;;;;;;;;;;;;;;;;;;;;;;;;:::::::ccccccccccccccccccccccccccccccccccllllllllllloooooooddddddddddddddooooolllllllllllllllllllllllllllooooooooooooodddddxxkkkOO0000KKKKKKKKKKKKKKKKKKKKKKKKKKK000000000OOOOOOOOOkkkkkkkkkkkkkkkxxxxxxxxxxxddddddddoooooooolllllllllllllllllllllllllllllllllllllllllloooooooooooddddddddddddddddddddooooooooooodddddddddddddddddddddddddddddddddooooooooooooooooooooolllllllcccccccccc:::::::::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;::::::cccccccclllllcccccccc
KK00OOkkxddoollcccc::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,;;;;:cclodxOO0KXXNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNXXXKKK000OOOOOOkkkkkkkkkkkxxxxxxxdddddxxxxxxxxxxdddddddoooooooolllllllllccc::::;;;;;;;;,,,;;;;;;;;;;;,,,,,,,,,,,,,,,,;;;;;:::::::::::ccclllooodddddddddddoooooooooooooollllllcccccccccc::::::::::;;;;;;;;;;;;;;;;;;;;::::::ccccccllllllllllllllccccccccccccccccccccccllllllllooooooddddddddddddddooooollllllllllllllllllllllllllooooooooooooddddxxxkkOO0000KKKKKKKKKKKKKKKKKKKKKKKKKKKKK000000000OOOOOOOOkkkkkkkkkkkkkkkkkxxxxxxxxxxxdddddddddooooooollllllllllllllooooooooooooooooollllllllllllloooooooooooodddddddddddddddoooooooooooddddddddddddddddddddddddddddddddddooooooooodooooooooooooolllllllccccccccccc::::::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;::::::cccccccccclccccccccc
KK00OOkxxdoolllccc:::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::cllodxkO0KKXNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNXXXKKK0000OOOOOOOOOOOOOOkkkkkkkkkkkkkkkkkkkkkkkkkkxxxxxddddddoooooollllcccc::::;;;;;,,,,,,,,,,,,,,,,,'''''''''''''',,,,,,,,,,;,,;;;;;:::cclllooooooooolllllllllllllllllllcccccccccccc:::::::::::::;;;;;;;;;;;;;;;;::::::ccccllllloooooooooolllllllllllcccccccccccccclllllllloooooodddddddddddddddooooolllllllccccccccccccccllllllllllooooodddxxxkkOOO000KKKKKKKKKKKKKKKKKKKKKKKKKKKKK00000000000OOOOOOOOkkkkkkkkkkkkxxxxxxxxxxxxxxxxxddddddddoooooooooolllllooooooooodddddddddooooooolllllllllllllllllloooooooooooddddddoooooooooooooddddddddddddddxddddddddddddddddddddoooododdddddddooooooooollllllllllccccccccccc::::::::::::::::::;;;;;;;;;;;;,,,,,,;;;;;;;::::::ccccccccccccccccccc
KK00Okkxxdoollcccc::::::::::::::::::::;;;;;;;;;;;:;;;;;;;;;;;;;;;;:::cccloodxkkO0KXXNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNXXKKKK000000000000OOOOOOOOOOOOOOOOOO00O00000OOOOOOOkkkkxxxxdddddoooollllcccc:::::;;;;;;;;;;,,,,,,,,''''''''''''''''''''''''''''',,,,,;;::::cccccccccccccccccccccccccccc::::::::::::::cc:::::::::::;;;;;;;;;;;;;:::::cccccllloooodddddddddoooooollllllllllclccccclllllllllloooooodddddddxxxxxxddddddooollllcccccc:::::::ccccccccclllllloodddxxkkOOO000KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK000000000OOOOOOOkkkkkkkkkxxxxxxxxxxxxxxxxxxxxddddddddddddooooooooooooooooodddddddddddddddddooooollllllllllllllllllllllloooooooooooooooooooooodddddddddddddddxxxdddddddddddddddddddooodddddddddddddddooooooooolllllllllccccccccc:::::::::::::::::;;;;;;;;;,,,,,,,,;;;;;;;:::::::cccccccccccccccccc
K00OOkkxddoollcccccc:::cccccc::::::::::::;;;;;:::::;;;;;;;;;;;;:::ccllooddxxkO00KXXNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNXXXXKKKK000000000000000000000000000000KKKK00000000OOOOkkkkkxxxxdddooooolllllcccc::::::::;;;;;;;;;,,,,,,,'''''''''''''''''''''''''''',,,,;;;;;;;;;;;;;;;;;;;;:::::::::;;;;;;;;;;:::::::::::::::::::;;;;;;;;;;;:::::::cccllloooodddddxxxxddddddooooooollllllllllllllllllooooooodddddddxxxxxxxxxxxxdddooolllcccc::::::::::::::::cccccclllooddxxkkOO000KKKKKKKXXXXXKKKKKKKKKKKKKKKKKKKKK0000000000OOOOOkkkkkkkxxxxxxxxxxxxxxxxxxxxxxxdddddddddddddooooooooooooooddddddxxxxxxxxxxxdddddoooollllllllclccccccllllllllllllllloooooooooooodddddddddxxxxxxxxxxdddddddddddddddooooodddddddddddddddddoooooooooooollllllllccccccc:::::::::::::::;;;;;;;;;;;,,,,,,;;;;;;;;::::::::ccccccccccccccccc
00OOkkxxddoollcccccccccccccccccccc::::::::::::::::::;;;;;;;;;;::cclloddxxkOO00KKXXNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNXXXKKKK0000000000000000000000KKKKKKKKKKKKKK000000OOOOOkkkkkxxxdddddooooooollllllccccccc::::::::;;;;;;;;;;;;;;;;,,,,,,,,,,''''''''''''',,,,,,,,'''''''''',,,,,,,,,,,,,,,,,,,;;;;;::::::::::::::::::;;;;;;;;;;:::::ccccllloooddddxxxxxxxxxxxddddddooooooooooooooooooooooodddddddxxxxxxxkkkkkkkxxxxdddooollccc::::::;;;;;;;:::::::cccllooddxkkkO000KKKKKKXXXXXXXKKKKKKKKKKKKKKKKKKKKKKK00000000OOOOOkkkkkxxxxxxxxxddddddxddxxxxxxxddddddddddddddoooooooooooodddddddxxxxxxxxxxxxxdddddooooolllllllllccccccccccclllllllllllllllloooooddddddddxxxxxddxxdddddddddddddddooooooddooddddddddddddddddoooooooooooollllllccccccc::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;:::::::::ccccccccccccccccc
OOOkkxxddooolllccccccccccccccccccccc::::::::::::::::::;;;;;;;::ccloodxkkOO00KKKXXNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNXXXXKKKK000000000000000KKKKKKKKKKKKKKKK000000000OOOOOOOkkkkxxxxdddddooooooooooooollllllccccccccccccccccccc:ccc::::::::;;;;;;,,,,,,,,,,,,,''''''''........''''''''''''''''',,,,;;;;;:::::::::::::::::;;;;;;;;:::::ccccllllooddddxxxxxxxxxxxxxxxdddddddddddddddddddddddddxxxxxxxxkkkkkkkkkkkkkkkkxxxdddooollcccc::::;::;;;::::::::ccllooddxkkOO000KKKKKXXXXXXXXXXXKKKKKKKKKKKKKKKKKKKKK000000OOOOkkkkkxxxxxddddddddddddddddddddddddddddddddddddddoooooooooooodddddddxxxxxxxxxxxxddddddooooolllllllllcccccccccccccccccccclllllloooooddddddddddddddddddddddddddddoooooooooooooooooodddddddddddddddoooooooooolllllcccccc::::::::::::::;;;;;;;;;;;;;;;;;;;;;;:::::::::::cccccccccccccclcl
kkkxxxddooolllllcccccccccccccccccccccc:::::::::::::::;;;;;;;::ccloddxkOO00KKKXXXXXNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNXXXKKK0000000000000000KKKKKKKKKKKK000000OOOOOOOOOOkkkkkkxxxxdddddooooooooooddddooooooollllllllllllllllllloooooooollllllccccc:::::;;;;;,,,,,,,'''''''....''''''''''''''''''',,,,;;;;:::::::::::::::::;;;;;;:::::::ccccllloooddddxxxxxkkkkkkxxxxxxxxxxxxxxxxxxxxxxxxxxxxkkkkkkkkkkkOOOOOOOOOOOOkkkkxxxdddoolllcccc::::::::::::::ccclloodxxkkO000KKKKKXXXXXXXXXXXXXXXXXXXKKKKKKKKKKKKKKK00000OOOOkkkkxxxxddddddddddddddddddddddddddddddddddddddddooooooooooooooooooddddddddxxxxddddddddddoooooooolllllllllllccccccccccccccclllllooooddddddddddddddddddddddddoooooooooooooooooooooooooooodddddddddddddooooolllllcccccc:::::::::::;;;;;;;;;;;;;;;;;;;;:::::::::::::::::ccccccccccclllll
xxxxdddoooolllllcccccccccccccccccccccccc:::::::::::::;;;;;;:::cllodxkO00KKKKXXXXXXXNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNXXXKKK000OOOOOOOOO00000KKKKKKK00000OOOOOkkkkkkxxxxxxxxxxdddddooooooooooooooddddddooooooooooooooooooodddddddddddxxdxxdddddoooollllcccc:::::::;;;;,,,,,,,''''''''''''''''''''',,,,;;;;;::::::::::::::::::;;;;:::::::ccccllllooodddxxxxxkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkOOOOOOOOOOOOOOOOOOOOOOOOOkkkkxxxxdddooolllcccccccccccccclllooodxxkkOO000KKKKKXXXXXXXXXXXXXXXXXXXXXXXKKKKKKKKKKK00000OOOOkkkxxxdddddddddoodoodddddddddddddddddddddddddddooooooooollllllllllooooodddddddddddddddddddddddoooooooooolllllcccccccccccccclllllooooooddddddddooooooooooooooooooooolllllllloooooooooooooodddddddddddoooooolllllcccc:::::::;;;;;;;;;;;;;::::::::::::::::::::::::::::cccccccccccccllcl
dddoooooolllllllccccccccccccccccccccccc::::::::::::::;;;;;;::cclodxkO00KKXXXXXXXXXXXXXXNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNXXXKKK000OOOOOOOOOOOO0000000000000OOOOkkkxxxxxddddddddddddoooooollllllllloooooooooooooooooooooooooodddddxxxxxxxxkkkkkkkkkxxxxxxdddoooooollllllcccc:::::;;;;;,,,,,,,',,',''',,,,,,,;;;;::::::::::::::::::::;:::::::::cccccllllooodddxxxxxkkkkkkkkkkkkkkkkkkkkkkOOOOOOOOOOOO0000000000000000000OOOOOOOkkkkxxxxdddoooollllllllllllooooddxxkkOO000KKKKKXXXXXXXXXXXXXXXXXXXXXXXXXXXKKKKKKKK00000OOOkkkxxxxddddddoooooooooooodddddddddddddddddddddddoooooolllllllllcllllllllloooooodddddddddddddddddddddddddooooollllccccccccccccllllloooooooooooooooooooooooooollllllllllllllllllllllllooooooodddddddddddooooolllllcccc::::::;;;;;;;;;;;;;::::::::ccccccccccccccc::::::::ccccccccccccccc
ooollllllllllllllcccccccccccccccccccc:::::::::::::::;;;;;;:::clodxkO00KKXXXXXXXXXXKKKKXXXXXNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNXXXKK0000OOOOOkkkkkOOOOOO00000000OOOOkkkxxxdddddddooooooooooooooolllllllllllloooooooooooooooooooooooddddddxxxxxkkkkkOOOOOOOkkkkkxxxxxxddddddddddddoooolllccc::::;;;;;,,,,,,,,,,,,,;;;;;;::::::::::::::::::::::::::::::ccccccllllooodddxxxxkkkkkkkkkkOOOOOOOOOOOOOOOOO00000000000000000000000000000OOOOOOOkkkkxxxxdddddoooooooodddddxxxkkkOO000KKKKKXXXXXXXXXXXXXXXXXXXXXXXXXXXXKKKKKK000000OOOkkkxxxddddddoooooooooooooooooodddddddddddddddooooooooolllllccccccccccccccllllloooodddddxxxxxxxxxxxxxxxxddddddoooolllcccccccccllllllllloooooooollllllllllllllllllllllllllllcllllllllllllloooooodddddddooooooollllccccc:::::;;;;;;;;;;;;:::::::ccccccccccccccccccccc::::cccccccccccccccc
lclccccccclcccccccccccccccccccccccccc::::::::::::::;;;;;;:::cllodxkO0KXXXXXXXXXXKKKKKKKKKKXXXXNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNXXXXKK000OOOOkkkkkkkkkkkOOOOOOOOOOOOOOOkkkxxxxxdddddddoooooooooooooooooolllllllllooooooooooooooooooooooooddddddxxxxkkkkkOOOOOOkkkkkkxxxxxxxxxkkkkkkkkkxxxxddoolllcc::::::;;;;;;;;;;;;;;;;;;::::::::::::::::::::::::::::::cccccccllllooodddxxxkkkkkkOOOOOOOOOOOOOOOO00000000000KK0KKK0000000000000000000000OOOOOOkkkkxxxxxxxxxxxxxxxxkkkkOOOO0000KKKKKKXXXXXXXXXXXXXXXXXXXXXXXXXKKKKKKK00000OOOOkkkxxxddddddooooooooooooooooooodddddddddddddoooooooooolllllcccccc::::::ccccclllloooddddxxxxxxxxxxxxxxxxxxxxxxdddoooolllllllllllllllllllllllllllllllllllllllllllllcccccccccccccccccclllllllooooooooodooooooooolllllcccc::::::;;;;;;;;;;:::::::cccccllllllllllcccccc:ccc:::cccccccccccccc
:::::ccccccccccccccccccccccccccccccc::::::::::;;;;;;;;;;:::cclodxkO0KKXXNNNNNXXXXKK000000KKKKXXXXNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNXXXXKK000OOOOOkkkkkkkkkkkkkkkkkOOOOOOOOOOOkkkkkkkkxxxxxxdddddddddddddddddddddoooooooooooooooooooooooooooooooooooodddxxxxxkkkkkkkkkkxxxxxxxxxxxkkkkOOOOOOOOOkkxxddooolllcccccc:::::::;;;;;;;;;;:::::::::::::::::::::::::::::ccccccccclllooodddxxxkkkkkOOOOOOOOOOOOOOOO000000000000KKKKK0000000000000000000000000000OOOOkkkkkkkkkkkkkkOOOOOOOO0000KKKKKKKKKKXXXXXXXXXXXXXXXXXXXXXKKKKKKK00000OOOOkkkkxxxdddddooooooooooooooooooooooooddddddddooooooooooolllllccccc:::::::::ccccclllloodddxxxxxkkkkkkkkkkxxkxxxxxxxddddoooooollllllllllllllllllllllllllcccccccccccccccccccccccccccccccccclllllloooooooooooooooooolllllccccc::::::::::::::::::::ccccclllllllllllllcccccccccccccccccccccccccc
:;;;::::::::ccccc:::cccccccccccccccc::::::;;;;;;;;;;;;::::cclodxkO00KXXXNNNNNNXXXKKK000000000KKKKXXXXNNNNNNNNNNNNNNNNWWWWWWWWWWWWNNNNNXXXKKK000OOOOkkkkkkkkkkkkxxxxxxxkkkkkkkkkOOOOOOOOOOOOOOkkkkkkkkkkkkkkkkkkkkkkxxxxxxdddddddddddddddddddddddooooooooooodddddddxxxxxxxxddddddddddxxxkkkOOOOO000OOOkkkxxddoooolllllccccc:::::;;;;;;;;;:::::::::::::::::::::::::cccccccccccclllooodddxxxkkkkkkOOOOOOOOOOOOOOO00000000000000000000000000000K00K0000000000000OOOOOOOOOOOOOOOO0000000000KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK00000OOOOkkkkxxxxddddddooooooooooooooooooooooooooodoodooooooooooooolllllcccccc:::::::::cccccllloooddxxxxxkkkkkkkkkkkkkkxkxxxxxxxdddddoooooooooollllllllllllllllllcccccccccccccccccccccccccccccccccllllllloooooooooooooooooolllllllccccc::::::::::::::ccccccccclllllllllllllcccccccccccccccccccccccccl
;;;;;;;;;:::::::::::::::cccccccccccc:::::;;;;;;;;;;;;;:::ccloodxkO0KKXXNNNNNNNNXXXKK00OOOOOOO00000KKKKKXXXXXXXXXNNNNNNNNNWWWWWNNNNNNXXXKKK000OOOkkkkkkkkkkkkxxxxxxxxdddxxxxxkkkkOOO000000000000OOOOOOOOO000000000000OOOOkkkkkkkxxxxxkkkkkkxxxxxxdddddooooooooooddddddddooooooooooooddddxxkkkkOOOOOOOOOkkkxxxdddoooooollllccc:::::;;;;;;;;:::::::::::::::::::::cccccccccccccclllloooodddxxxkkkkkkkkkkkkOOOOOOOOOO00000000000000000000000000KK00KKKKK0KK000000000000000000000000000KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK0000OOOOOkkkkxxxxxddddddoooooooooooooooooooooooooooooooooooooooooooooollllllcccccccccc::ccccccclllloodddxxxxxkkkkkkkkkkkkkkkkkkxxxxxxxxddddddooooooolllllllllllllllccllllllllllllcllcccccccccccclcllllllllooooooooooooooooooooooolllllcccccccccccccccccccccccccclllllllllllllllcccccccccccccccccccllllll
,,,,,,,;;;;;;;::::::::::cccccccccccc::::::;;;;;;;;;;;:::ccllodxkO00KXXNNNNNNNNNNXXKKK00OOOkkkkkOOOOO000000KKKKKXXXXXNNNNNNNNNNNNNNXXXKK000OOkkkkkxxxxxxxxxxxxxxxddddoooooodddxxkkOO000KKKKKKKKKK000000KKKKKXXXXXXXXKKKKK00000OOOOOOOOOOOOOOOOOkkkkkxxxxxdddddddddddodooooolllllllooooddddxxxkkkOOOOOOOOkkkxxxxdddddoooooollccc::::;;;;;;;;;;;:::::::::::::::cccccccclclllllllllloooodddxxxxxxkkkkkkkkkkkkkkkkkOOOOOOOOO0000000000000000000KK0KKKKKKKKK00K000000000000000KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK000000OOOOkkkkxxxxxxdddddddoooooooooooooooooooooooooooooooooooooooooooooooolllllllccccccccccccccccccllllooooddxxxxxkkkkkkkkxxkkxkkkkkkkkkxxxxxxddddddooooollllllllllllllllllllllllllllllllllllllllllllllllllooooooooooooooooooooooooooolllllllllllllllllllllllllllllllllcllcclcccccccccccccccccccccclllllllll
,,,,,,,,;;;;;;;;::::::::ccccccccccccc:::::;;;;;;;;;;:::ccllodxkkO0KKXXNNNNNNNNNNNXXKK00OOkkkxxxxxxkkkkkkOOOO0000KKKXXXXNNNNNNNNXXXXKK000OOkkkxxxxxxxxxxxxxxxxddddooolllllllloodxxkOO00KKKKKKKKKKKKKKKKKXXXXXXNNNNNNXXXXXXXKKKKKKKKKKKKKKK00000000OOOOOkkkkkxxxxxddddddooooooooooooooodddddxxxxkkkOOOOOOOkkkkxxxxxxdddddooolllccc:::;;;;;;;;;;;::::::::::::ccccccclllllllllllloooooooddddddxxxxxxxxxxxxxxxxxxkkkkkkkkkOOOOOOOOOOOO000000000000KKKKKKKKKKKK00000000000KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK000000000000000000OOOOkkkxxxxddddddddddoooooooooooooooooooooooooooooooooooooooooooooooooooolllllllccccccccccccccccccclllloooddddxxxxxxxxxxxxxxxkkkkkkkkkkkkxxxxxxxdddooooolllllllllllllllllllllllllllllllllllllllllllooooooooooooooooooooooooooooooooooollllllllllloooooooooollllllllccccccccccccccclcccccllccllllllllllllll
,,,,,,,,,;;;;;;;:::::::cccccccccccccc:::::;;;;;;;;;:::ccllodxxkO0KKXXXNNNNNNNNNNNNXXKK00OkkxxddddddddddxxxxkkkOO000KKKXXXXXXXXXXKKK00OOOkkxxxxdddddddddddddddddoolllcccc::ccclloddxkkOO000KKKKKKKKKKKKKXXXXXXNNNNNNNNNNNXXXXXXXXXXXXKKKKKKKKKKKKKKKKKK0000OOOOkkkkxxxxxddddddddddddxxxxxxxxxxkkkkkOOOOOOOOkkkkkkxxxxxxddddooollcc::::;;;;;;;;;;;:::::::cccccccllllllllooooooooooooooddddddddddddddddddddddddxxxxxxxkkkkkkkkkOOOOOOO000000000000000000000000000000KKKKKKKKKKKXXXXXXXXXXXXKKKKKKKK000000000000000000OOOOOkkkkxxxddddddoooooooooooooooooooooooooooooooooooooooooooooooooooooooooooollllllllllcccccccccccccccclllllooooddddxxxxxxxxxxxxkkkkkkkkkkkkkkkxxxxxddddooooollllllllllllllllllllllollllloooooooooooooooooooooooooooooooooooooooooooooooollllllllloooooooooooooollllllllcccccccccccclllllllllllllllllllllllll
,,,,,,,,;;;;;;::::::ccccccccccccccccc:::::;;;;;;;;::::cllodxxkO00KKXXXNNNNNNNNNNNNNXXKK0OkkxddooooooooooodddxxkkkOO000KKKKKKKKKK000OOkkkxxxddddoooooooooooooooollccc:::;;;;;;::ccloddxxkkOOOOOO0000000KKKKKXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXKKKK000OOOOkkkkkkkkkkkkkkkkkkkkkkkkkkkOOOOO0000000OOOOOkkkkkkkxxxxdddoollcc::::;;;;;;;;:::::ccccccclllllllooooooooooooooooooooooooooooooooooooooooooodddddddxxxxxxkkkkkkOOOOOO000000000000000000000000KKKKKKKKKKKXXXXXXXXXXXXXXXKKKKKK000000OOOOOOOOOOOOOOOOkkkkxxxxddddooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooolllllllllllllcccccccccccccccllllooooddddddddxxxxxxxxkkkkkkkkOkkkkkkkxxxxddddoooolllllllllllllllooooolooooooooooooooooooooooooooooooodddooooooooooooooooooollllllllloooooooooooooooolllllllccccccccclllllllllllllllllllllllllloo
,,,,,,;;;;;::::::cccccccccccccccccccc::::::;;;;;;::::ccloodxkOO00KXXXNNNNNNNNNNNNNNXXKK0OkxxdoollcccccllllooodddxxkkOOO000000000OOOkkkxxxdddooooolllllllllllllccc:::;;;,,,,,,,,;;::clloodddxxxxxkkkkkOOOOOO000000KKKKKKKKXKKXXKKKKKKKKKKKKKKKKXXXXXXXXXXXXXXKKKK00000OO0O00000000000000000000000KKKKKKKKKKK00000OOOOkkkkkkxxxddoollccc::::;:::::::cccccclllllloooooooooooooooooooooooooooollllllllllllllllllloooooodddddxxxxxkkkkkOOOOOO000000000000000000000000KKKKKKKKKXXXXXXXXXXXXXXKKKKKK0000OOOOOOOOOOOOOOOOkkkkxxxxddddooooooooooooooooooooooooooooooolloooooloooooooooooodddoooodoooooooooollllllllllllllllccccccccccclllllooooooddddddddxxxxxkkkkkOOOOOOOkkkkkkkxxxddddoooooolllllllllllooooooooooooooooooooooooooooooooooooooooooooooooooooooooooollllllllllloooooooooooooolllllllcllcllllllllllllllllllllllllllllloolo
,;;;;;;;:::::ccccccllllllccccccccccc::::::::;;;;;:::cclloddxkO00KKXXXNNNNNNNNNNNNNNXXKK0OkxddollcccccccccclllloodddxxkkkOOOOOOOOkkkxxxdddoooolllllccccccccccc::::;;;,,,'''''''''',,,;;:::cclllloooddddddxxxxxxxxkkkkkOOOOO000000000OOOOOOO00000KKKKKXXXXXXXXXKKKKKK000000KKKKKKKXXXXXXXXXXXXXXXXXXXNNNNXXXXXKKK0000OOOOOOOkkkkxxddoollccc:::::::ccccllllllooooooooooooooooooooooooollllllllcccccccccccccccccllllllooooodddddxxxxkkkkOOOOOO000000000000000000000000KKKKKKKKXXXXXXXXXXXKKKKKK000OOOOOkkkkkkkkkkkkkkkkxxxxddddooooooooooooooooooooooooooolllllllllllllloooooooooooddoddddddddoooooooollllllllllllllllllllllllcclllllllooooooodddddddxxxxxkkkkOOOOOOOOOOOkkkkkxxxxdddooooooooooolllllooooooooooooooooooodoooooooooooooooooooooooooooooooooooolllllllllllllllooooooooooolllllllllllllllllllllllllllllllllllllllllllll
;;;;;;;:::ccccllllllllllllllcccccc:::::::::;;;;:::::ccllodxxkOO0KKXXXNNNNNNNNNNNNNNXXKK0Okxdoolcc:::::::::ccccllloodddxxxxxxxxxxxxxdddoooolllllccccc:::::::::;;;;;,,,''''............''',,,;;;::::cccccclllllllllloooodddxxxxxxxxxxxxxxxxxxxkkkkOOO000000KKKKKKKKKK0KKKKKKKKKKXXXXXXXNNNNNNNNNNNNNWWWWNNNNNNXXXKK00000OOOOOOOkkkxxdddolllccccccccllllllooooooooooooooollllllllllllllllcccccccc:::::::::::cccccclllllloooodddddxxxxkkkkkkOOOOOOOO000000000000000000000KKKKKKKKKXXXXKKKKKKK0000OOOkkkkkkkkkkkkkkkkxxxxxddddooooooooooooooooooooooooooollllllllllllllllooooooooooodddddddddddddooooooolllllllllllllllllllllllllllllloooooooooooodddddddxxxkkkkOOOOOOOOOOOOOkkkkxxxxddddoooooooooooooooooooooooooooddddddddddddooooooooooooooooooooooooooooolllllllllllllllllloooollollllllllllllllllllllllllloollllllllllllllllllll
;;;;;:::cccclllllloolllllllcccccc::::::::;;;;;;;:::cccllodxxkOO0KKXXXXNNNNNNNNNNNNXXXKK0Okxdollcc::::;;:::::cccclllloooodddddddddddooooolllllccccc:::::;;;;;;;;;,,,,,''''...................''',,,,;;;;;;;;;;;;;;;:::::ccccllllllllllllllooooodddddxxxkkkkOOOOOOO000000000000KKKKXXXXXNNNNNNWWWWWWWWWWWWWWNNNXXKKK00000000000OOOOkkxxddoollllllllllloooooooooooooooolllllllccccccccccccccc::::::::::::::::::ccccccllllooooddddddxxxxxxkkkkkkOOOOOOOOOO00OO000000000000000KKKKKKKKKKKKK0000OOOOkkkkkxxxxxxxxxxxxxxxxdddddoooooooooooooooooooooooooollllllllllllllllllooooooooddddddddddddddddooooooolllllllllllllllllooooooooooooooooooooooooooooodddddxxxkkkkOOOOOOOOOOOOOkkkkxxxxddddooooooooooooooooooooooooodddddddddddddddddoooooooooooooooooooooooolllllllllllllllllllllllllllllllllllllloolllooollllllllllllllllllllllllll
;;;;::::ccclllloooooollllllccccc::::::;;;;;;;;;;::::cclloddxkkO00KKXXXNNNNNNNNNNNNXXKK00Okxdoolcc:::;;;;:::::::ccccllllloooooooooooolllllllcccccc::::;;;;;;;;;,,,,,,,''''........................'''''''''''''''''''',,,,,,;;;;;;;;;;;::::::::cccclllloooddddxxxxkkkkkkkkOOOOOO0000KKKXXXXNNNNWWWWWWWWWWWNNNXXXKK000OOOOO000000OOOkkkxxddooolllllloooooooodooooooolllllccccccccccccccc:::::::::::::::::::::::ccccccllloooooddddddddxxxxxxxkkkkkkkOOOOOOOOOOOOOOOOOOOOOO0000000000000000OOOOkkkkkxxxxxxxxxxxxxxxxxdddddoooooooooooooooooooooooooollllllllllllllllllloooooooodddddddddddddddddoooooooolllllllllllloooooooooodddddddddddddoooooooooooooddddxxxkkkkOOOOOOOOOOOOkkkkkxxxddddooooooooooooooooooooooooddddddddddddddddoooooooooooooooooooooooooolllllllllllllllllllllllllllllllloooooooooooooolllllllllollllllllllllllc
;;;;::::cccllllooooollllllccccc::::::;;;;;;;;;;;::::cclloodxxkO00KKXXXNNNNNNNNNNNXXXKK0OOkxdoolcc:::;;;;;;;:::::ccccccclllllllllllllllllllcccccc::::::;;;;;;,,,,,,,,,'''''.............................''................'''''''''',,,,,,,,,,,,,,;;;;;:::ccclllooooodddddddddxxxxkkkOO00KKKXXXNNNNNNNNNNNNXXXKK00OOOOOOOOOOOO00OOOOOkkxxdddoooooooooooooooooooooollllccccc::::::::::::::::::::::::::::::::::ccccccllllooooooddddddddddddxxxxxxkkkkkkkkkkkkkkkkkkkkkkOOOOOOOOO000OOOOOOOOkkkkkkxxxxxxxxxxdddxxddddddddoooooooooooooooooooooooooollllllllllllllllllllooooooddddddddddddddddddddooooooooolllllllloooooooddddddddxxddxddddddooooooolooooooodddxxxkkkOOOOOOOOOOOOOkkkkxxxddddooooooooooooooooooooooddddddddddddddddddooooooooooooooooooooooooooolllllllllllllllllllllllllllloooooooooooooooolllllllllllllllllllllcccc
;;;;;:::cccclllllllllllllccccc:::::::;;;;;;;;;;;;:::ccclooddxkOO0KKXXXXNNNNNNNNNNXXXKK0OOkxdoolcc:::;;;;;;;::::::::ccccccccllllllllllllccccccccc:::::::;;;;;;;;,,,,,,,'''''.................................'.......................'''''''''''''''''',,,,,;;;::::ccccccccccllllloooddxxkkOO00KKKKKXXXXKKKK00OOOkkkxxxxkkkkkOOOOOOOkkkxxxdddooooolloooooooooooolllllcccc::::::::::::::cccccccc:::::::::::ccccccllllllooooooodddddddddddddddxxxxxxxxxxxxxxxxxxxxxxkkkkkkkkkkkkOOOkkkkkkkkkkxxxxxxxxxxddddddddddddddddooooooooooooooooooooooooollllllllllllllllllooooooooodddddddddddddddddddddooooooooooooooooooooooddddddxxxxxxxxxxxxdddddooolllllllloooodddxxxkkkkkOOOOOOOOkkkkkxxxdddddoooooooooooooooooooooooddddddddddddddddddooooooooooooooooooooooooollllllllllllllllllllllllllloooooooooooooollllllllllllllllllllllcccccc
,,;;;;:::ccccllllllllllllcccccc::::::;;;;;;;;;;;;;:::cclloddxkOO0KKXXXNNNNNNNNNNXXXKK00OOkxddollc:::;;;;;;;::::::::ccccccccccccccclcccccccccccccc:::::::;;;;;;;;,,,,,,,'''''........................'''''''''''''......................................'''''',,,,,;;;;;;;;;;;;;::::cccllooddxxkkkOOOOOOOOOkkkxxxddddddddxxxxkkkkkkkkxxxxdddooolllllllllllllollllllcccccc::::::::::::ccccccccccccccccccccccccclllllloooooooooddddoooooddddddddddddddddddddddddxxxxxxxxxxxkkkkkkkkxxxxxxxxxxxxxxxxxxxxdddddddddddddddoooooooooooooooooooooooooolllllllllllllloooooooooodddddddddddddddddddddddddooooooooooooooooooodddddddxxxxxxxxxxxxxxddddoooollllllllloooddddxxxxkkkkkkkkkkkkkkxxxxddddooooooooooooooooooooooooooddddddddddddddddooooooooooooooooooooooooolollllllllllllllllllllllllloooooooooooooolllllllllllllllllllllllccccc
,,;;;;::::cccccccllllllllcccccc::::::;;;;;;;;;;;;;:::cclloddxkOO0KKXXXNNNNNNNNNNXXXKK00Okkxddollc:::;;;;;;;;::::::ccccccccccccccccccccccccccccccccc::::::;;;;;;;,,,,,,,,'''''''..................''''',,,,,,,,,,,''''''............''''''..................''''''''''','''',,,,,,,,,;;;::ccllloooddddddddddoooollllllloooodddxxxxxxxdddddooolllllllllllllllllllllcccccc:::::::::::cccccccccccccccccccccllllllloooooooodddddddddoooooooddddddddddddddddddddddddddxxxxxxxxxxxxxxxxxxxdddxxxxxxxxxxxdddddddooooooooodddddooddoddooooooooooooooooollllllllllooooooooddddddddddddddxddxddddddddddddddodooooooooooooooddddddddxxxxxxxxxxxxxxxddddoooolllllllloooodddddxxxxxxkkkkkkkxxxxxxddddoooooooooooooooooooooooooooooooodddddddddddddoooooooooooooooooooooooollllllllllllllllllllllllloooooooooooolllllllllllllllllllllllllllllcc
,;;;;;:::::ccccccccccllllllcccccc:::::;;;;;;;;;;;;;::ccllodxxkO00KKXXXNNNNNNNNNNXXXKK00Okkxddollc:::;;;;;;;:::::::ccccccccccccccccccccccccccccccccc::::::;;;;;;;,,,,,,,,''''''''...............'''',,,,,,;;;;;;,,,,,,'''''''''''''''''''''''''..............'''''''''''''''''''''''',,,,;;;:::ccclllllllllcccccccccccccllloooooooooooooollllllcccccccclllllllllccccccccccccccccccccclllllllllllllllllllllllooooooddddddddddddddddddddddddddddddddddoooooooodddddxxxxxxxxxxxxxxdddddddddddxxxxxxxxddddddoooooooooodddddddddddddddddddoooooooooollllllllooooooddddddddddxxxxxxxxxxxddddddddddddddddddddddooddddddddddddddxxxxxxxxxxxxxxxxdddddoooooollooooooooodddddddxxxxxxxxxxxxxdddddoooooooooooooooooooooooooooooooooodddddddddddoooooooooooodddooooooooooollllllllllllllllllllllllooooooooooollllllllllllllllllllllllllllllll
;;;;;::::::ccccccccllllllllllccccc::::::;;;;;;;;;::::ccloodxkOO0KKXXXNNNNNNNNNNNXXXKK00OOkxddollc::::;;;;;;:::::cccccccccccccccccccccccccccccccccc:::::;;;;;;;,,,,,,,,,,'''''''...............'''',,,,,;;;;;;;;;,,,,,,,,,'''''''''''''''''''''''''''''''''''''''''''''''''''''''''',,,,,,;;;;;:::::::::::::::;;;;;;::::ccccllllllllllllcccccccccccccccclllclllcccccccccccccccccllllllllllllllllllllllllooooodddddddddxxxxxddddddddddddddddddddddddddoooooodddddxxxxxxxxxxxxxxxdddddddddxxxxxxxxxxdddddoooooooooddddddddddddddddddddddddoooooooooooooooooodddddddxxxxxxxxxxxxxxxxxxdddddddddddddddddddddddddddddddddddddddxxxxxxxxxxxxxxddddddooooooooooooooooooooddddddddddddddddddooooooooooooooooooooooooooooooooooooooodddddddddddoooooooooddddddddoooooooolllllllllllllllllllllllooooooooooolllllllllllllloooooooooooooooooo
;;;:::::::ccccccccllllllllllllllcccc::::::;;;;;;;:::ccllodxkkO00KKXXXNNNNNNNNNNNXXXKKK00Okxxdollcc:::;;;::::::cccccccccccccccccccccccccccccccccc:::::::;;;;;;,,,,,,,,,,'''''''................'''',,,,;;;;;;;;;;,,,,,,,,,,,,,,,,,,,,,'''''''''''''''',''',,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;::::::::::;;;;;;;;;;;;;;;:::::ccccccccccc:::::::::ccccccccllllllllllllllllllllllllllloooooooooooooooooooooddddddxxxxxxxxxxxxxxxxxxxxxddddddddddddddddddddddddddxxxxxxkkkkkkkxxxxxxxxxxxxxxxxxxxxxxxxdddddooooooodddddxxxxxxxxxxxxxxdddddddddddddoooooooooddddddxxxxxxxxxxxxxxxxxxxxxxxdddddddddddddddddddddddddddddddddddddddddddxxddxxxxdddddddddddooooooooooooooooooooooddddddddoooooooooooooooooooooooooooooollllolloooooooodddddddddddooooddoddddddddddooooooollllllllllloooooooooooooooooooooooooolooooooooddddddddddxxxxxxxxx
::::::ccccccccclllllllooooollllllcccc::::::::::::::ccloodxxkO00KKXXXXNNNNNNNNNNNXXXXKK00OOkxddollcc::::::::::ccccccccccccccccccccccc:::::::::::c::::::;;;;;,,,,,,,,,,''''''''..................'''',,,,,,;;,;;,,,,,,,,,,,,,,,,,,,,,,,,,''''''',,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;:::::::::::::::::;;;;;;;;;;;;;;;;;:::::::::::::::::::::::cccccllllllllllllllllloooooooooooooddddddddddddddddddddddxxxxkkkkkkkkkkkkkkkkkkkkxxxxxxxxxxxxxxxxxxxxxxxxxxxxxkkkkkkkOOkkkkkkkkkxxxxxxxkkkkkkkkxxxxxddddddddddddxxxxxkkkkkkkkxxxxxxxxxxxxxxxdddddddddddddxxxxxxxxkkkkkkkkkkkxxxxxxxxxddddddddddddddddddddddddddddddddddddddddddddddddddddxxdddddddddddooooooooololoooooooooooooooooooooooooooooooooooooooolollllllllllooooooooddddddddddddddodddddddddddddoooooooooooooooooooooooooooooooooooooooooooodddddddxxxxxkkkkkkkkkkkkkOk
::cccccccllllllllllooooooooooollllccc::::::::::::cclloodxkkO00KKXXXXNNNNNNNNNNNNNXXXXKK00Okkxdoolcccc:::ccccccclllllcccccccccccccc:::::::::::::::::::;;;;;,,,,,,,,,,,''''''''..................'''',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;:;;:;;;;;::::::::::ccccccccccccc::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::ccccllllloooooooooooodddddddddxxxxxxxxxxxxxxxxxxxxxxxxxxkkkkkOOOOOOOOOOOOOOOOOOOkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkOOOOOOOOOOOOOOOOOOkkOOkkkOOOOOOkkkkkxxxxxxxdxxxxxxkkkkkOOOOOkkkkkkkkkkkkkkkkxxxxxxxxxxxxxxxxxxxkkkkkkkkkkkkkkkkkxxxxxxxdddddddddddddddddddddddddddddddddddddddddddddddddddddxdddddddddddddoooooolllllllllllloooooooooooooooooooooooooooooooollllllllllllllloooooooddddddddddooooooddddddddddddooooooooooooooooddddddddddddddddddddddxxxxxxxkkkkOOOOO000000000000000
cccclllllllllloooooooooooooooollllcccc::::::::cccllooddxkOO00KKXXXXNNNNNNNNNNNNNNNNXXXKK00Okxxdoollcccccccllllllllllcccccccccc:cc:::::::::::::::::::;;;;;;,,,,,,,,,,,,,,,'''''................'''',,,,,,,,,,,,,,,,,,,,,,,;;;,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;:::::::::::::::::::::::ccccccclllllccccccc:::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::cccclllloooodddddddddxxxxxxxkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkOOOOOO0000000000000000000OOOOOOOOOOOOOOOOOOOOOOOOOOOOOO000000000000000000000O00000000OOOOOOOkkkkkkkkkkkkkOOOOO0000000OOOOOOOOOOkkkOOOOkOkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkxxxxxxxxdddddddddddxxxdxddddddddddddddddddddddddddddddddddddxxdddxdddddddddoooollllllllllllllllooooooooooooooooooooooooooooolllllllllllllllllooooooooooooooooooooooodddddddddooooooooooddddddddddddddddddxxxxxxxxkkkkkkOOOOO0000KKKKKKKKXXXXXXXXXKK
ccllllloooooooooooooooddddoooooolllccccccccccclllooddxkkO00KKXXXXXNNNNNNNNNNNNNNNNNNXXXKK00Okxxdooolllllllllllllllllcccccccc::::::::::::::::::::::;;;;;;;,,,,,,,,,,,,,,,,,,''''''..........''''',,,,,,,,;;;;;;;;;;,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::::::c::::::::::::::cccccccllllcccccccc:::::::;;;;;;;;;;;;;;;;;;;;:::::::cccccllllooodddxxxxxxkkkkkkkkkOOOOOOOOO00OOOO00OOOOOOOOOOOO000000000KKKKKKKKKKKKKKKK0000000000000000000000000000000000KKKKKKKKKKKKKKKKKKKKKKKKKKKKK00000000OOOOOOOOOOO000000KKKKKK00000000OOOOOO000000000OOOOOOOOOOOOOkkkkkkkkkkkkkkkkxxxxxxxxdddddddddddxxxxdddddddddddddddddddddddddddddddddddddddddddxdddddddddooooolllllllllllolooooooooooooooooooooooooooooolllllllllllllllllllooooooooooooooooooooooooooooddoddddddddddddddddxxxxxxxxxxkkkkkkkOOOOO000000KKKKKXXXXXNNNNNNNNNNNNNNNX
lllloooooooooooodooddddddddooooollllllccclllllooddxxkOO00KKKXXXNNNNNNNNNNNNNNNNNNNNNNNXXKK00Okkxddooollllllllllllllcccccc:::::::::::::::::::;;;;;;;;;;;;,,,,,,,;;;;;;;;,,,,,,''''''''''''''',,,,,;;;;;;;;;;;;;;;;;;;::::::::::::::;;:;;;;;;;;;;;::::::::::::::ccccccc:::::::::::::::ccccccccccccccccc::::::::::::::::::::::::::::ccccclllloooodddddxxxkkkkOOOOOOO0000000000KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKXXKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKXXXXXXXXXXXXKKKKXKKKXKKKKKKKKKKKKKK00000000KKKKKKKKKKXKKKKKKKKKKKK0000000KKKKKKKK00000000OOOOOOOOkkkkkkkkkkkxxxxxxxxxddddddddddddxxdddddddddddddddddddddddddddddddddddddddddddddddddddddddoooooooollloooooooooooooooooooooooooooooooooooolllllllllllllllllllloooooooooooooooloooooooooooooddddddddddddxxxxxxxkkkkkOOOOOO00000KKKKKKXXXXXXXNNNNNNNNNNNWWNNNNNNNNN
lllooooooddddddodddddddddddoooooollllllllloooddxxkkOO00KKXXXXNNNNNNNNNNNNNNNNNNWWWNNNNNXXXKK0OOkxxddoooooooollllllccccc::::::::;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,;;;;;;;;;;;;;,,,,,,,''',,,,,,,,;;;;;::::::::::::::::::::cccccccccccc:::::::::::::::::::::::cccccccccccc::::::::::::::::::::cccccccccccccccccc::ccccccccccccccccccllllooooddddddxxxxxkkkkOOO000000KKKKKKKKKKXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXKKKKKKKKKKXXXXXXXXXXXXXXXXXKKKKKKKKKKKKKKKXXKKKKKKKK00000OOOOOOkkkkkkkkkxxxxxxxxddddddddddddddxxxxxxdddddddddddddddddddddddddddddddddddddddddddddddddddddooooooooooooodddddddddddoooooooooooooooooooooolllllllllllllllllllloooooooolllllllllllllooooooooddddddxxxxxxxkkkkkOOOOO00000KKKKKXXXXXXXNNNNNNNNNWWWWWWWWWWWWWWWWWWWW
loooooddddddddddoodddddddddddoooooooooooodddxxkkOO00KKXXXXNNNNNNNNNNNNNNNNNWWWWWWWWWNNNNNXXKK00Okkxxddoooooolllllcccc:::::::;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;,,,,,,,,,,,;;;;;;:::::ccccccccccc:cccccccccclllllllllccccccccc::::::::::::cccccccccccccc:::::::;;;;;;;;:::::::::::::cccccccccccllllllllllllllloooooddddxxxxxkkkkkkkkOOOO0000KKKKKKXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXNNNNNNXXXXXXXXXXXXXXXXXXXXXXXXXXXXKKKKK00000OOOOOOkkkkkkkxxxxxxxddddddddddddxxxxxxxxxdddddddddddddddddxddddddddddddoooooooddddddddddddddddddddddddddddddddddddddddddooooooooooooooooooooolllllllllllllllooooooollllllllllllllllloooooooddddxxxxxkkkkkkOOOO0000KKKKKXXXXXXNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWW
oooooodddddddoooooooooddddddddddddddddddxxxkkOO00KKXXXNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWNNNNXXXK00OOkxxdddoolllllccccc::::::;;;;;;;;;;;;;,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;;;,,,;,,;;;;;::::::ccccccccccccccccccccclllllllllllllllllcccccc:::::::::::cccccccccccc::::::;;;;;;;;;;;;;;::::::::cccccllllloooooooooooddddddddxxxxxkkkkOOOOOOOO00000000KKKKKXXXXXXXXXXNNXNNNNNNNNNNNNNNNNNNNNNNNNNNXXNXXXNNNNNNNNNNNNNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXNNNNNNNNNNNNNNXXNXXXXNNNNNNNNNNNNNNNNNXXNXXNNNNNNNNNNNNNNNNNNNNXXXXXXXXXXXXXXXNNNXXXXXXXKKKKK00000OOOOOOOOkkkkkxxxxxxxxddddddxxxxxxxxxxxxxxxxxdddddddddddddxxddddddddddooooooooooodddddddddddddddddddxxxxxxxxxxxddddddddooooooooooooooooooooooooooooooooooooooooooooooooollllllllooooooodddddxxxxkkkkOOOOO0000KKKKKXXXXXNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
oooodddddddooooooooooooddddddddddxxxxxxkkkOO00KKKXXXNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWNNNNXXKK00Okkxxdoollllcccc:::::::;;;;;;;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;;,;;;;;;;;;;::::ccccccclcclccccccccccccllllllllllllllllccccc::::::::::::::::cccc::::::::::;;;;;;;;;;;;;;;:::::::ccclllooooddddxxxxxxxxxxxkkkkkkkOOOOO0000000KKKKKKKKKKKXXXXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXXNNNNNNNNNNNNNNNNNNNXXXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXNNXXXXNNNNNNNNNNNXXXXXXKKKKK0000000OOOOOOkkkkkkxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxddddddxxddddddddddooooooooooooooddddddddddxxxxxxxxxxxxxxxxxxxxddddddooooooooooooooooooooooooooooooododdddddddddooooooooooooooooodddddxxxxkkkkOOOO00000KKKKKXXXXXNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
oddddddddoooooooooooooooddddxxxxxxkkkkOOO000KKXXXXNNNNNNNNWWNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWNNNNXXKK0OOkxxdoollcccc::::::::;;;;;;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;,,,;;;;;;;::::cccccccccccccccccccccccccccllllllllccccc:::::;;;;;;;;;;;::::::::::::::;;;;;;;;;;;;;;;;;;;::::cccllloodddxxxkkkkkkOOOOOOOOOOOO0000000KKKKKKKKXXXXXXXXXXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXXXXKKKKKK00000000OOOOOOkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkxxxxxxxxxxxxxxddddddddddoooooooooooooodddddddxxxxxxxxxxxxxxxxxxxxxddddddoooooooooooooooooooooooododddddddddxxxxxxxxxdddddddddddddxxxxxxxkkkkOOOO00000KKKKKKXXXXXXXNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
dddddddddoooooolllllooodddxxxkkkkkOOOO0000KKKXXXNNNNNNNNWNNWWNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNXXK00Okkxdoollccc::::::::;;;;;;,,,,,,,,,,,,,,,,,,,,'',,'',,,,,,,,,;;;;;;;;;,,,,,,,,;;;;;;;;::::::cccccccccc::::::::::::::cccccccc::::::;;;;;,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::ccccllooddxxxkkOOO000000000000000KKKKKKKKKXXXXXXXXXXXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXXXXXXXKKKKKKKK0000000OOOOOOOOOOOOkOOOOOOOOOOOOOOOOkkkkkkkkkkxxxxxxxxxxxxxxdddddddooooooooddddddddxxxxxxxxxxxxxxxxxxxxxxxdddddooooooooooooooooddddddddddddddxxxxxxkkkkkkkkkkkkkkkkkkkkkkkkkOOOOOO00000KKKKKKXXXXXXXXNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
ddddddddooooollllllloooddxxkkkOOOO00000KKKXXXXNNNNNNNNNNNNWWWNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNXKK0Okkxdoollccc:::::::;;;;;,,,,,,,,,,''',,,,''''''','',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;:::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,'''''',,,,,,,,,,,,,,,,,,,,,,;;;;;:::::::ccclllooodxxxkkOO0000KKKKKKKKKKKKKXXXXXXXXXXXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXXXXXXXXXKKKKKKKKK0000000000000000000000000OOOOOOOOOOOkkkkkkkkkkkxxkxxxxxxxxxxdddddddddddddddxxxxxxxxxxxxxxxxkkxxxxxxxxxdddddddooooooddddddddddddxxxxxxxxxkkkkkOOOOOOOOOOOOOOOOOOOOOO0000000KKKKKKXXXXXXXXXNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
dddddddoooooolllllloooddxxkkOOO0000KKKKKKXXXXNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNXXK00Okxddollcccc::::;;;;;;,,,,,,,'''''''',,'''''''''''',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;:;;;;;;;;;,,,,,,,,,,,,,,,,,,,,,,''''''''''''''''''''''''''''''',,,,,;;;::::ccccclllooddxxkkOO000KKKKXXXXXXXXXXXXXXXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXXXXXXXXXXXXXXKKKKKKKKKKKK0K00K0KKKK0000000000000000OOOOOOOOOOkkkkkkkkkkkkkkkkkkkkxxxxxxxxxxkkkkkkkkkkkkkkkkkkkkkkxxxxxxxxxdddddddddddxxxxxxxxxxkkkkkkkkkkOOOOO000000000000KKKKKKKKKKKKKXXXXXXXXXXNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
dddddddooooollllllloodddxkkOO000KKKKKXXXXXXNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNXXKK0Okxxdoollccc::::;;;;;,,,,,,,''''''''''''''''''''''''''''''''''',,',,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;,,,,,,,,'''''''''''''''''''''''''''''''''''''''''''....''''',,,;;;:::ccclllloodddxxkkOO000KKKXXXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXXXXXXXXXXXXXXXXXXXKKKKKKKKKKKKKKKKKKKKKKKKKKKK000000000OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOkkkkkkkkkkkkkxxxxxxxxkkkkkkkkkkkOOOOOOOOOOO00000KKKKKKKKXXXXXXXXXXXXXXXXXNNNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
dddddddooooolllllloooddxkkOO000KKKXXXXXXXNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNXKK0OOkxddollcc:::;;;;,,,,,,,,,''''''''''''''''''''''''''''''''''''''''''',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,''''''''..........'''''''''''''''''''''''''''.......'''',,;;::ccclloooodddxxkkOO000KKKXXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNWNWWWNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXKKKKKKKKKKKKKK000000000000000000KKKKK0000000000000000000000000000000000OOOOOOOOOOOOOOOOOOOOOOOOO0000000000000000KKKKKKKXXXXXXXXXXXNNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
ddddddddoooolllllloooddxkkO000KKKXXXXXNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNXXK00Okxddollcc::;;;,,,,,,,,,'''''''''''''''''''''''''''''''''''''''''''''',',,,,,,,'''''''''''',,,,,,'''''''..............'''''',,,,,,,,,,,,,,,'''''''''''''',,,;;::ccllooodddxxkkkOOO000KKKXXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNWNWNNWNNNNNWWNNNNWWWWNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXKKKKKKKKKKKKKKKKKKKKKKKKKKKKXXXXXXKKKXXKKKXKKKKKKKKKKKKKKKKKKKKKKKK00KK0000000000000000KKKKKKKKKKKKKKKKKKKKXXXXXXXXXNNNNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
ddddddddoooolllllloooddxkkO00KKKXXXXXNNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNXXKK00Okxddolcc:;;;,,,,,,,,,,,''''''''''''''''''''''''''''''..'''''''''''''''',,,,,,'''''''''''''''''''''''''............'''',,,,,;;;;;;;;;;;;;;;,,,,,,'''',,,,;;::cclloodddxxxkkkOOO0000KKKKXXXXXNNNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWNWWWNWWWWWWNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXKKKKKKKKKKKKXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXKXXXXXKKKKKKKKKKXXKXXXXXXXXXXXXXXXXXXXXXXXXXNNNNNNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
xdddddddoooolllllloooddxkkO00KKKXXXXXNNNNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNXXXK00Okxxdolcc:;;;,,,,',',,,,,''''''''''''''''''.''''.............'''''''''''',,,,,'''''''''''''''''''''''''''.........'''',,,;;;:::::::::::::::;;;;;,,,,,,,;;;::ccllodddxxxxkkkOOOO000KKKKXXXXXXNNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWNWWNWNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXKKXKXXXXXXXXXXXXXXXXXXXNNXXXNNNNNNNNNNNNNNNNNNNNXNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW