i i:::i:i:::i:i:i:::::i:i:i:::::i:i:i:i:i:::i:::i:::i:i:i:::i:i:::::::::i:i:i:::i:i:i:i:i:::i:i:i:i:i:i:i:i:i:i:i:i:i:i:i:::i:i:i:i:::i:i:::::::i:i:i.
:                                                                                                                                      . . . .        
: :::::,:,:,:::::::::,:,:,:::::,:,:::::,:::::,:::,:::::::::,:,:::::,:,:,:::,:::::::::,:::::::::::::::,:::::::,:,::::::::::::i:i:::i:::i:, i:,: ,i,,:i 
: ,:,:,:,:,:,:,:::,:::,:,:,:,:,:,:,:,:,:,:,:::::,:,:,:::,:::::::::,:,:::,:::,:,:,:,:::::,:::,:,:,:::::,:::,:,:,:,:,:,:::,::    ,.......:: :, . .:  .:.
: :,,,:,:,:,:,,,,::,:,,,,,:,::,,,,,,:::,:,:,:,:,:,,,,,,,:,:,:,:,:::,,,::,,:::,:,:,:::,:,:,:,:,::,::,,:,,,:,,:,:,:::,,,:::,: . , . . .  ,i   ...  ...i 
: ::,:,:,:,:,,,,,,,:,::,,,:,,:,::,,:,:::::,:,:,,:,,:,:::,:,:,:,:,:,,,:,:,:,,,:,:,,,:,::,::::,:,:::,:,:,,,:,:,:::,:,:,,,,,,,:::::::::::::,::::::::i:::.
: :::,:::,:,:,::,:,,,:,,:,:,,,:,::::::,,:,,,:::,,,,,:,:,:,:,:,:,:,:,,,:,:,:::,:,:,:,,,,,:,,,,,:,:,:,,,:,:::,,,,,:,:,:,,,:,:,:::,:::,:,:::,:,:,:::,:,: 
: ::,:,:,:::,:,,,,,,,:,,,:,:,,,:,:,:,:,:,,,,,,,,,:,,::,:,:,:::,:,,::::,:,,,,,:,:,,,:,:,::,,:,:,,,:,:,:,,,:::,:::,:,:::,,,,,:,,::,:,:,:,,,:,,,:,,:,,::.
: :,,,:,:,:,,,:,:,:,,,,,:,:,:,:,:::,:,,,:,,::,:::,:,:,:,:,,,,::,:,::,::,,::,:,:::,:,:,:,:,:,,,:,:,,,:,:,,,:,:,:,,:,,,,:,,,:,:,,,,:,,,,:,:,:::::,,,,,: 
: ::,,,::,,:,:,:,,,:,,,:,:,:,,,,,,,:,:,,,:::,:,,,:,,,:,,,:::,,::,,,:,,,:,:,:,:,:,:,:,:,:,:,:,:,:,,::,:,:,,,:,,::,,,:::,,::::,:,:,:::,:,:,:,,,,,:,,,::.
: :,:,:,:::,:::,,,:,:::,,,:,,,:::,:,:,,,:,:,,::,:,,,:,:,:,:,:,:,:,,,,::,:,,,,,::,:,,,::,:::,:,,,,,:,,,:,:,,,,,:,,,:,,,:,,,,,:,,,:,:,:,:,:,,,,::,:,:,: 
: ::,,,,,:,:,,,::,,,,:,:,,,:,,,:,,,:,:,::::,,:,:,:,:,,,:,:,,,:,:,:,:,,,:,,,:,:::,,::,:,:,,:,,:,,::,:,:,,,,,:,:,:,:,,,:,:,,,,,:,,,,,:::,:,:,,::,:::,:, 
: :,,,,,:,,,:,:,,,:,:,:::,:::,,::,:,:,,,:,,::,,,,,:,,::,:,:,::::,:,:,::,:,,,:,,::,:,,::,,,:,:,:,:,,,:::,:,,,:,,:,,:,,::,,,:,,,:,:,:::,:,:,:,:,:,,,,,: 
: ::,:,,,:,:,:,,,:,,,:,,::::,:::,,::::,:::,,,:,,,,,,,:::::,:,,:,,:,:,::,,:::,:,,,:,,,:,::,,:,:,:,:,:,,,:::,:,,,:,:,:,,,:,,,,,:,,:,,:,:,,:,:,,:,:,,:::.
: :,:,:,:,:,:,:,:,:,:,:,:,,,:,:::,,,:,,,,,:,:,:,:,:,::,,:,,,,:,,:,:,,::,:,,::,:::,:,,,,,:,:,:,,,:,,,:,,,:::,:,:,,,:,,,:,:::::,:,,,:,,,:,,::::,:,,::,: 
: ,:,::,,:,:,:,,,,,,,,,,,:::,:,,,:,:,:,,,:,:,,,::,,,,:,::,,,,,,,,,,:::,::,,:,,,:,,,:,:,:,:,,:,,,,:,:,:,,,,:,,,::,::,,:,:::,,,,,:::,:,:,:,:,:,:,:,:,::.
: :,:,:,,,::,,::,,:::,:,,,:,,,:,:::,,,:,:,:,,,,,,,:,:,:,:,:::,:,:,,:,,:,:,:,:,:,:::,:,:,:,,:,,,,,::,,:,,,,:,:,:::,:,:,:::,:,,,,,:,:,:,:,:,,,:,,::,,,: 
: ::,:,:,::,,,::,,,:::,:,:::,,,,,:,:,,,:,:,:,:,,::,:,::,,:,,,,,:,:,:,,,,,,,:,:,:::,:,:::,,,:,:,:,:,:,:,:,,,:,:,:,:,:,,,:,:,:,:,:,:,:,:::::,,,:,,,:::,.
: :::,,,:::,:,:,:,:,:,:,:,:,:,:,:,:,:,:,,,,,:,:::::,,,:,:,:,:,:,:,:,:,:,::,,,,:::,,,:,:::,:,:,:,,,,,::,,:,:,,,:,,,:,:,:,:,:,,,:,,,:,:,:,:,:,,,:,:,,,: 
: ::,:,:,:,,,:,,:::::,,,,:,,,:,:,,,:::,:,:,:::,:,:,:,:::::,:,:,:,:,:,,,,,,:,,,,:,:,,,,,,,:,:,,,:,,,:,::,,:,:,:::,:,,,,,,,,,:,:,:,:,:,:,:,:,,,,:,,:,::.
: :,:::,:::,,,:,,::::::,:,,::,:,:,,,,,,:,::,,,:,:,:,:,::,,:,:,:,:,,,:,,,:,:.,,,,:,,,:,,,:,:,,,,,,::,,::::,,,:,:,:,::,,,,:::,,:,,,,:,,,:,,::,:,:,:,:,: 
: ::,,,:::,,,,::,:,:,,,,,:,:,,,,,::,,:,:,::,,:,,,,::,:,,::,:,:,:,,,:::,:,      .,,::,:::,::,::,,,,,,,,,:,,,:,:::::,:,:,,:::,,:,:::,:::,,,,,,,:,:,:,:,.
: ::,,:,,,,,:,,,:,:,:,:,:,,,,,:,:,:,,,:,,,::::,,:,:,:,,,:,:,,,,,,,:,:,:. :8BWB8. ,:,:,:,,,:,:::,:::,:,,:,:,,:,:,:,,,:,:,:,,,:,,,:,:,,,,,,::,:,:,:,:,: 
: ,:,,,:::,:,:,:,:,:,,:,,:,,,,::,:,:,:,:,:::,:,:,:,,,:,,,:,,,:,:,:,,,,, XMr, ,8M ,,:,:,::,,,,:,:,,,:,:,,,,,:,:,:,:,,,,::,:,,,:,:,:,,,:,:,:,:,:,:,:,:,.
: :,:,:,,,:,:,:,,:,:,,,,:,,,:,:,:,::,,:,:,:,:,:,,,,::,,,,,:,:,,,,,:,:,: rMZa0B@@ .,,,,,:,,:,:,:,,,,,:,,,:,:,:,:::,:::,:,:,,,:,:,,,:,:,,,:::,:::,:,:,: 
, ::,::,,,,:,,,:,:,:,:,,,:,::,,:,:,:,:::,,,:::,,::,,,,,:,,,:,,,:,:,:,:,,  ;;;:  .,,:,:,,,:,:,,,:::,:::,:,:,:,:,:::,:,::,,,,,,,,:,,,:,:,,,:::,::,:,,:,.
: ::,,,,:,,,,,,,:,,,:::,,,,:,,:,:,,,,,:,:,:,,,:::,:,:,:,,::,:::,,::,:,:,:.    ..:,,,,::,,,:,:,:,:,:,:,,,:,:,,,:,:,,,,,:,,,,,:,::,,:,,,:,:,,,,:,,:,,,: 
: ::::,:::,:,:,,,::,,:,:,,,:,,,,,,,:::,,,,,:,,,:,:,:,,:,,,,:::,:::,:::::,:,,,,,:,:,:,,,:::,:,,,:,,,:,:,,,,,:,,,:,:,,,,,:::,:::,:,:,,,:,:,,,,,:,:::::: 
: :,:,,,,,,,,,:,:,:,:,:,,,,,::,::,,,:,,,,,:,,:,,:,,,:,:,,,:::,:::,:,:,:,:,:::,,,:,:,:,:,:,::::,,:,:,,,:::::,,,:,:,:::,,,:,:,:,:,:,,,:,:::,,,::,,,::,: 
, ::,:,,,:,:,:,,::,:,,,:,,,:,:,:,:,,,:,:,:,,,:,:,:::,,,:,,::,:,:,:,:,:,:,,,,,:::::,:,,,:,:,:,,,:::,:,,::,:::,:::::,:,:,,,:,:,:,:,:,,,:,:,:,,,:,:,,,:,.
: :::::,:,:,:,:::,,,,,,,,,:,:,,,,,,,,,:,,,,,,,:,,,:,:,,,:,,,:,,,:,,,,,:::,:,,,:,,,:,:,,,:::,,,:,,,:,:,:,:,,,:,:,,:,:,::::,:,:,:,:,:,:,:,:,,,,,,,,,::: 
: ::,,:::,,:,,,:,,,:::,:::,::,,:,:::,:,,,:,,,,:,::,:,:,,,,,::,,:,:,:,:::,:,:,:,:,,,:,,,:,:,,,,,:,:,,,:::,:,,,,,:,,::::,:::,,,,::,:,:,:::::,:,:,:,:,:,.
: :,::,,,,:,,::,:,,,:,,,:,,,:,,,:,,::::,:,:,:,:,:,:,:,:,,,:,:,,,,,,,,,:,:::,,,:,:,,,:,::,::,:,,::,::,,:,:,:,:,:,::,::,:,,,,,:,:,,,:::,,:::,,,,:,,,::: 
: ::,,,:,,,:,:,:,:,:,,,,,,,:,:,,,:,,:,,:,:::,:,:,:::,:,:,:,:,,,:,:,:,:,,,:,:::,:,:,:,,,:,:,,,,,:,:,:,:,,,:,:::,:,:,:,,,:,,,,,:,:::,:,:,:,,,:,,,:,,,:, 
: :,:,:,,,:::,:,,,,,,,,,,,:,:,:,:,:,,,,,:,:,,,:,:::,:,,,:,:,,,:,::,,:,:,:,:,,,:,,,:,:,:,:,,,,,:,,,,,:,:,:,:,,,:,:,:,:,:,:,:,:,,,:,:,:,,,:,:,:,:,:,::: 
: ::::,:,,,:,:,:,:,,::,,:,,:,:::,,,:,,,:,:,:,:,:,,,:,:,:,:,,,,,,:,,,::,:,,,,::::,:::,,,:::,,,::,:,,:,,,:,:,:,:,,,:::,:,:,,,,,:,,,:::,,,:,:,:,:,,,,,:: 
: :,:,:,,,,,:,:,:,,,:,,,:,:,::,,:,:,,,,:,:,::,:,:,,,:::,,,,,:,,,,,:,:::,:::,::,,::,,:,:,,,:,:,,,:::,:,,,,:,,:::,:,,,:,:,,,:::,:::,:,,,:,:,:,:::::,::: 
: ,:,:,,,::,,:,,,,,:,:,:,,,:,,,:,:,:,:,:,::,,,::,:,:,,,:,::,,:,:,:,:,,::,:::,:,,,,::,:,:,,:,,,,:,,,,,:,:,:,,::::,,,:,:,:,:,,,,,:,,,,:::,,:,,,:,:::::,.
: ::,:,,:,:,:,:,,,:::,:,:,,:,,,,:,:,,,::,,,,:,:,:,:::,,,:,:,:,,,,,:,,,:,,,:::,:,,,:,:,::::,,:,,,,,,,,,:,:,:,:,,:,:,:,,:,:,:::,:,:,:,:,:,,,:,:::,:::,: 
: ::,,,:,,,,:,,,,:,:,:::,:,:::,:,:,,,:::,:,,,:,,,:,:::::,,,:::,:,:,:,:,:,,,,,:,:,:,:,,,:,:,:,,,:,:,:,:,:,,,:,:,:,::,,:,:,::,,:::::,:::,,,,::,,,:,:,::.
: :,,,:::,:,:,:,:::,:,:,:,:,:,,,,::,,:,::,:,:,,,,,,,,,:,,,:,:,:,:,:,,,,,:,:::,,,:,:,:,,,:,:::,:::,,:,,:,:,:,:,,,:,,,,,,::::,,,:::,,,,,:,,,,,:,:,:,::: 
, ,:,,,,::,:,:,,,:,:,::,,:,:,:,:,:,:,,,:::,:,:,:,,::,:,,,:,,,:,:,:,:,:,:,:,:,:,,,,,:,:,:,:,,,:,,,:,:,:,:,:,,,:,,::,::,,:,:::,::,,,,:,:,:,:::,:,:::::,.
: :,:,:,:,:::,,,:,:,:,:,,,,,,,:,,,:,:,:,:,,,,,:,:,:,:,,,,,:,:,,:,,:,:,,,:,:,,,:,:,:,:,:,,,,,:,,,,,,,:,:::,:,:,:,,,:,::::,,,,:,:,:,:,,,:::,:,,,:,,,::: 
: ,:,,,:,:,:,:::,:,:,:::,:,:,,,:,,,,,,::,:,:,:,:,::,,:,:::,,::,:,:::,:,,,:,:,::,,:,,::,:,:,:,:,,::,:,:,:,:,:,:::,:,:::,::,,:,,,:::,:,,,:,:,,,,,:,:,:: 
: :,:,:,:,:,:,:,:::,:,:::,:,:,,,:::,,::,:,,,:,:::,:,:,:,::,:,,:,,:,,:,:,:,:,:,:,,,:,,,:,:,:::,:,:::,,,:,::,,:,,::,,,:,:,,::,:,:,:,:,,,,,,:,,,,:,,,:,: 
: :::,,,,,,:,,,:,:,:,:,:,,,,::,::::,::,,:,,:,:,:::,:,:::,,,:,,,,,,,,:,,,::,:::,:,:,:,,,,,:,:,:,::,,,::,:,:,,,:,:,,,,::,:,,,:,:::,:,:,:,,,,,,,:,,::::: 
: :::,:,:,:,:,:,:,:::,:,:,:::,:,:::,:::,:,:,:,:,:::::,:,:,:,:,:,:::,:,:,:::,:::::::::::::::,:,:::::,:::::,:,:::,:::,:,:,:,:::,:::,:,:,:::,:::::::::,i 
:.::::,:::,:::::,:::::::::::,:::::::::::::,:::::::,:,:::,:,:,:::::::,:,:,:::::::::,:::,:,:,:::::::::::::::,:::,:,:,:,:,:,:::::::,:::::,:::::,:,::::::.
i . . . . . . . . . .   . . . . . .     .   . . . .   .   . .     .   . . .         . . .     .   . . . .   . . . . .   .     . . . . .     . .   . . 
