':..^.  .......!...'.....'''.'::'.'.'::::'::'.:...'''':::.'/^'........''.'..'''::!!:.!^':'!'...'
'.. ''  ....'''.....'':!!::'.'::''.!:'::!:'':....::!!!!:..'^^!:!::''.::''..':!^^!::..'!::.: .'..
:'.  .  .'':^:..'::'':::::'''.:.''..'....:'...'::':::::..'':'::''':.::..':.!^!:::'..'':'..'':!::
.''....::'.'..:!!^!!:'''.'.:':::.''''... ':.':!!:::'...'.''''....'..'..:!!!'''''.':''''''.'!''::
'''':....'.'..:::''''.''.^'..'!:.::'''.'..::':'''..'''''....'''..':'..':''...''.:!':''.'''^'':!'
^!:^!...''.:.'....^'.:.'..'....^'':''''''.':!:''..''.''::'''...':'''.''.!'''.'''''.'.''''':':.''
.:'.......''.'''..!X.:.'..'.''.''.'''''':::'.''..'''+^:'.'''''.:'...'.'''..:''!::'''.''.::.. ...
'.://:...'''...'''.!'''......'.'!!+^^^+:!!::'..:.'.:^''.'''.''''!:..'.'''':!:::'''':.''....''''.
..'':!.'''''.'''''.'''::.!'.'':!^//+%%!!C^::...:^:...'...'''''.'''!^^^:'^^^^:....'....''''''''''
'! ...''''.':!:!!'''''::.:'.''!!!//%+/^!^/:..'/++!^.:'..'''....':!''....''!^^!.''..'..''''''''..
':..  '.''':'::'.'+.'....^'.'.:'+^^%/^+^:^:':^^CX'/!.'..''.'^^^!'..'''.'!''^!'.'''.:..::::.. ...
......''.'.!'..'''%:  ....''..':!!%/!!.!:!:':''!0X^^!:'''' ^+!'..'..''..:!:''.''''''''' !^'.''..
!!^:.!!: .'+ .'.:^' ':':!^^:..'.:!X++:^.!!!!:!^^:+X%/^:+:':'::.':!:''..''::. .::::!!:'..!^''...'
!!' .^'....! ..!!.'.:!^+!:'. ....'+:^:!^.:!^+^/+++^^+/:'!^++/^''.'::':++!.....:!!!::'.'!:'.... .
'....''...!^^!.'.:!^:':'''. ::'.':':'''^:.:+:+%!%/+^+::'++^^+%C!!::!!^::'''.:!'''''...'..:!^!!''
'::'....:^!!:' '!^^!:''...'..'!!:::::!^^^:'.^+^+X++X^!:!....'/%///^^!.''.:!^!:''........^:':::.'
.':... !:::'.:!!!^^!::!!'.'.':':!^+////++^+^.'!+!+//^^::.!^^!.:+!^:'!..''''....':::'....:::....'
'.:.'. ::..!.':!:::!X/'^: ......''''''!!!+^:':/!:^..^'..''..%//0'/'.:.'''''''''''.':!' '::.'.::'
'''... .. ':'......./+!!..:::'''.'''''::.'/+^$C+$X:'++:++!'.^/X!!!..:.''.....''...!'''..''.::'''
!:!!!!'.. ':.'''':'./!!..''':::'':'''''!''%:CC!%0%/.^!!!!!!:.++.!'::'':!!!!!:::'.'^!.'....:::'..
':!':^^^!..'.....''.!' . '....'::::::''...^'/X^@X^!/!''..:+:+'!:!.':^^^!::'''''':'..'.....!!::''
......'!!^:'..''.'.   '. .....'''.... '...:^.%^X%.+!:... ':::!.^:'!:'...:'''.....'''''':''::' ..
'....... '::.....'!:.!:... .......... ....'+./%+!!:..'...:''''!:..''..':.:^::'.''...''.'!!''....
''..''''. '::...::':'. .'''::!:' ':''''.'''^'!!':.'''':!!:.:.:.:..':::'!..+::: ..''..':!::!:::'.
''.:'.... .: . ''''.''.!!^^!!:...:.:.......:^'.!':!!^++^:..'.' ''''''!!!.^!':'.:!!^^^!'.!'!''''!
:.'!.'.....'...'..'::!::!:::'. :'' ....''... ':!!:!^!!:'.'':.. '''''''::.!''::'++++^:...:!' '!:'
...:'  ':!^^!'  '::!!:::'.....':......'.....:!^^^^!:'...'::':!''!!:.':::'.:!^+^::::'.'........''
:''.  ':/^::.':..::''.. .'':':'.:.... ..'''''!!:''...'..... !:':':'::::'.:!^!:''..:.'''...'.... 
:::' .'^! '::':!::''::'......':.:... ..!::!!:.''':!:......' X%..'.'::'.''''':''!:.'......!!!!:''
'''. :^!. .'. ........!::.....'..'''. '!:!!!...'':::'...... %%.'''.:^.'^!'..'!:'!'.....:!'.:....
..' .'.'. ::..''......!:'':!!:..'+^::.:!:!!..'..'.'!' ..''' +/.....:+:'! .''.':::...'' ..''...'.
'.....'.''': .:''... '.'!!^!'. .':+::.:^:!^....... .:...'.  '''::'.:^!.'..''.':'..:::...' :: ...
''...'''. ''  .'.''..:!!::. .'.'.'^!: .:^!'.'...'.. ..::'.  '!!!^^.'+'!^'..''.'..:!:'::...:'...'
''... ... ''.':!^!:''... ':...''...:!''.'..''':''.:!:'''..'::::!...'^.'!.'!^::'' ::':......':..'
...::!.  .!+//+!'''':'.. ''..'::''....':...''..:!!''.'''::''^:!.'''...'':^:..'...''':!::::'.'!!'
:::'!+... .....'.''.'...'':::..!!'.'. ''.....':'''.'::!!!' !::. .''..:!^^:..... ::..:'...:....':