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:::.
: :,:,:,:,,,:,:,:,,,:,:,:,:,:,:::,:,,:,:::::,,:,:,:,,:,,,,:,,::,:,,,,::,:,:,:,,,:,:::,:,,,,,,,:,:,:,:,,,,,:,,,,,:::,:,,,::,:,::::::,:,:,,,:::,:,:::,: 
, ,:,:,,,:,,,,,:,:,,,:,,,:::,:,,,:,:,,,:,,,,,:,:,:,:,:,,,:,,,,,:,:,:,::,::,:,:,,,,,:,:,:,,,:,:,,,,,:,:,:,,,:::,:,:,,,:,:,,,:,,,:,:,:,,,:,,,,,,,:,:,:: 
: :,:,:,:::::,,,,,:,,,,:,,,,:,:,:,:,:,,,,::,,,::,::,:::,:,,,:,,,,,:,:,,,:,,::,:,,:,,:::,:,,,:,,,:,:,:,,,::,,,,:,:,,,,,:,:,:,,,:,:,,,,,:,:,:,::,,:,:,: 
: ,:::,:,,,:,:,,,,:,,:::,:,,::,,,:,,,:,,,:,:,:,:,:,:,:,::,,:::,:,,,,,:,:,:,:,:,:,:,:,,,:,,,:,,::,::,,:,:,:,:::,:,,,,,:,,,:,:,:,:,:,:,,,:,,,,,:,,,,,:,.
: :,,,::,,,,:::,,,:,,,,::,:,:::,,,,,:,:,::,,:::,,,,::,:,::,::,,,:,:,:,:,,,:,:,,,:,:,:,:,,::,:,:,::,,:,:,:,,,,,,,:,,,:,:,:,:,:,,,,,:,:,:::,:,,::,,,:,: 
: ::,:,,,,,:,,::,,,,,:,:::,:,:::,,,:,:,,,:,:,:,,,:,,,,:,,:,:,,,::,,:,:,:,::,::,:,,,,,:,:::,,,,,,,:,:,:,:,,,:::,:,,:,,:,,,,,,,:,,:,,:,,,:,:,:::,,,,,::.
: :,:,:,,,:,:::,:,,,,,::,,:,:,:,,,::,,:,:,:,:,,,,,:,:,:,:::,,,:,:,,:,,:,:::,:,,,,,:,:,,,:,,:,,:,:,,,:,,,:,:,:,,,:::,,,:,:,:,:,:,,,:,:,,,:,:,:,:,:,,:: 
: ::,:,:,,,,,,,,::,:::,::::,,,,,,::,,,,,::::::,:,:,,,:,:,:,:,::,,:,:,,,:,:,:,:,:,:::,,,:,:,:,:,,,:,,,:,,::,:,:,:,:,:,:,:,:,:,::,:,::,:,:,:,,,,,:,:,::.
: :,,:,,:,:,:,:,:,:,:,,,:,,,:,,,,,:,::,,:,,::::,,,:,,,:,:::,:,,,:,,,,,:,:,:::,:,:,:,:,:,:,,,:,:,,,,::,,,,,:,,,:,:,:,:,:,,,:,,,:,:,:,:,:::,:,:,,,:,::: 
: ,::,,:,:,:,:,:,,,:,,,:,,,::,,:,:,,,:,:,,:,,,,:,:,:,:::,:,:,:,:,:,:,:,:,,,,,:,,,:,,,,:,,,,,,:,:,:,:,::,::,,,,,,,:,:,,,,,:,,,:,:,,,:,:,:,:::,:,,,::::.
: :,,,,::,,::,:,:::,:,:,:,::,,:,:,:,:::,:,:,:,,,,,,::,:,:,,,,,:,:,,,,,:,:,,,::,::,:,:,:,,,:,,::,:,:,:,,,:,:,:,:,:,:,,::,:,::::,,,,,,:::,,,:,,::,:::,: 
: ,:,:,,,:,:,:,:::,,,:::,:,:,:,,::,:,:,:,,,,,:,,,,::,,,:,,:,,:,:,:,:,:,,,:,:,,,:::,:,:,:,:,:,:,:,:,:,:,:,:,,,:,:,,,:::,,::,,::,:,:,:,:,:::::,,,:,:,:,.
: :,:,,,,::::,,,:,:,:::,,,,,:,,,:,:,:,:,:,:,:,:,:,:,,::,:,:,:,:::::,,,,,,,,,:,,,:,:,:,,,,::,,,,::,,,:,,,,,,,::,,::,,:::,:,,::,:,:::::,:,:,,,,,:,:,,,: 
: ::,::,,:,:,::,,,::,,:::::,,:,:,,,::::,::::,:,:,:,:,:,,,,,,,:,,,:::,:,,::,:::::,,,:::,:::,:,:,,,:::,,,:,,,,:::::,,:,:::,,,,::,,,:,,,,::,:,:,:,:,:,::.
: :::,:,,,,,:,:,:,,,,,,,,,:::::,:,:,,,:,:,:,:,:::,,,:,:::,,,:,,,,,:,:,:,,,:,,,:,:,:,:::,:,,,,,:,:,:,:,,,:::::::,,,,,,,,,:,:::,:,:,,,,,,,,,:,:,:,:,,,: 
: ::,:::,::,,:,,,,::::,:,:,:,:,:,:::,,,::,:,,::,,:,,,:,:,:,:,:,:,,,:,,,:,:,:,:,:,:,::,:,,:,:,:,:,,,:::,:,:,:,:::,::,,:,,:,:,,:,:,,::,,,,:,,:,:::,:::,.
: :,:,:,::::,,:,:,:,,,:,:,,,:,:,:,::,,:,:,:,:,:,,,:,:,:,,,:,:::,:,,,:,:,,,,,:,,,:,,,:,:::,,,:,,,:,,,,::,,,:,:,:,:,:,:,,,,::,:,,,:,:::::,:,:,:,:::,,:: 
, ,:,,::,:::,:,:,:::,:,:,:,:,:,:,:,,,:,,,:,,,,,,,:,:::,,,,,,,,,:,,,:,:,:::,:,:,:,:,:,,,,,,,:,,,,:,,,,,,,,,,:,,,:,:,::,,:,:,:::,,,:,:,::,,,,,,:,,,:,::.
: :,:,:,,,:,:,::,,:,:,:,::,,::,,,,,,:,,,,,,,:,:,,,:,,:,::,,,:,:,,,:,:,:,:,:,:,:,,,:::,,,:,:,,,,,:,:::,,,,,,,,,,,:,,,:,:,,,:,:,:::,:,,,:::,:,:::::,,,: 
: ::,,,:::,,,:,:,,,,,::::,,:,,,,,,,:,,,:,:::,:,:,,,:,,,,,:::,:::,,,:,,:,,:,:,,,:,,,:::,:,:::::,:,,,,:,,:,,,:,:,:,:,,,:,:,:,:::,:,:,:,:,,,,,:,,,:,:,::.
: :::,:,:,,,,:,,,,:::,::,,::,,,,:,:,,,,::,:::,,,:,:,:,,,:,,,:,:,:::,:,,,:,,,:,:,:,:,:,:,::,,,,:,:::,:,::,,,,:,:,:,,,:,,,:,:,:,:,:,:,:,:,:,,:,,:,:,,:: 
: ::,,,,,::,,:,:,:,,,:,,,,,,,,:,,:,:,,::::,,,,:,,:,,,:,,::,:,:,:,:,:,:,:,,,:,:::::,:,:,:,,,:,,,:,:,,,,,:,,,:,:,:,:,:,:,:,:,:,:,:,,,,,:,:,,::,:,:,:,:: 
: :,,,:,,,:,:,:,:,:,:,:,:,:,:,:,,,,,,,:,,,:,,,:,,,,,:,:,:,,,:,,,,,:,,,:,:,:,:,,,:,:::,:,,,:,:,,,,,,::,:,:,:,:,:::,:,,,:,,,,:::,,:,::,,:,,,:,:::,,,:,: 
: ::,:::,:,,,:,:,:,:,:,:,,,:,:,,,,,::,:,,:,:,:,:,:,:,:,:,:,:,:,::,,,:,,:,:,,::,,,,,,,:,,,:,:,:,,,:,:,:,:,::,,:,::,,:,:,:,:::,,::,,,:,,,:,:,:,:,::,,:: 
: :::,:,:,:,,::,::,,,::,:::,,,:,:,:,:,,,:,:,,,,,:,:,:,:,:,:,:,,,:::,:,:,:,:,:,,,:,,,:,,,,,,,,,:,:::,:,:,:,,:,,,,:,:,:,:,:,:,:::,:,:,:,:::,:,:::,:,:,: 
: ,:::,,,:,:,:,:,,,:::,:,:,,,,,,,,,,,,,,,,::,:,:,:,:,:,:,:,:,,,,,:,:,:,::,:,,:,:,:,,,:,,,:,,,:,:,,,:::::,:,,,,,:::::,,,:,:,:::,,,:,:,:,:,:,:,:,:,,::,.
: :,:,,::,:::,:,,,:,:,:,,,:,:,,,:,:,:,,,:,,:::::,,:,:,:,:,:,:,:,,::,,:::,,,,:,,::,,,:,:,,,,,,,,,:,,,:,:::,::,::,,,:,:,,,,,,,::::,,:,:,:,:::,:,:,:,,,: 
, :::,,:::,:::,,,:::,:,,,:,,,:,,,:,,,,,:,,,,,,,,,:::,::,,,,:,,,:,,,,:,::,:,,,:,:,,,:,,,:,:,:,:,:,:,:,::,,,,::,,:,:,:,,::,,,:,,,:,,,,,:,,::,,,,,:,::::.
: :,,,:,,,,,:,:,:,:,:,:,:,,,::,,:,,::,:,,,:,,,:::,,::,,,:,:,,,:::,:,:,:,:,:,,,,.,,,,:::,:::,:,:,,,:,:,:,,,:,:,,,:,,::,,,:,:,,,,,:,:,:,:,:::,:,::::,,: 
: ,:,:,,:,::,,,:,,,:,:,:,,,:,,,,,:,,,,,,,,,:,:,,,,,:,:,.  .,,,,,::,:,,,,,,,,   ,.,,:,,,,,:,:,:,:,:,:::,:,:,:,:,:,,,,,,,,,,,,,:,:,:,::,,::,,:,,,,::,::.
: :,,::,:::,:,,,:,:,,,:,:,,,:,,,:,:,::,,:,:,,,,,,,:,:.,,MS .:::,:,:,:,:,:,,.rBM0.,:,:,:,:::,:,:,,,:,:,,,:,,,:,:,:,:,:,,,:,:,:,:,:,,,:,::,,:,,,,,:::,: 
: ,:,:,,,,,:,:,::,,:::::,:,::,,,,,:,:,::,,,:,:,:,,::,.70ZMX.,,,,.,,,.,.,.:.X080i ,,:,:,,,,,:::,:,:,:,,,:,,,,,,,:,,,:,,,,,:,,,:,,,,,:,:,:,:,,,:,:,,,::.
: :,:,:,,,,,:,::,,:,:,:,:::,:,:,,,,,,,:,:,:::,:,:,:,,,..  :,:,,.        ..,.  .:.,:,:::,:,:,:::,:,,,,,,,:,:,:,:,:,:,:,,,:,:,:,:::,:,,,:,,,:,:,:,:,:,: 
: ::,:,,,:,,,,,,,:::,:,:::,:,:,:,:,,,:,:::,,,:,:,:,:,,,:.,.:,: ZMM@Z8Z8MM .,,,iX.,,,,:,:,,,:,:,:,:,::,,:,,:,,:,:,:,,,:,:,,,,,,,:,,,:,:,,::,:,:,,,,,::.
: :,,,:,:,:,:,,,,,,,,,,,:,,,:,:,:,,::,,,:,:,,,:,,,:,:::,,,:,:,.:X2ZaZZZZr ,,,,,.:,,,:,:,,,:,:,::,:,::,,,,,::,,:::,:::,:,:,:::,:,:,,,,,,::,:,:,:,,,:,: 
: ::,,,,,:,:,,,:,:,:,:,,,,::,:::,:,:,:,,::,,,,,,,,,:,,,:,,,::,,.         ,,:,:,:::,::,,:,:,,,:,:,:,:,,,:,:,,,:,,:,,,:,,,:,,,,:,,::,:,,,,,:,:,,,:,,::: 
: :::,:,:,::,::,:,:,:,:,,,,,:,:,:::,:,:,,,,,:,,,:,:,:,:,:,,,,,:,,,,,,,,.,,,,,,:,:,:,:,:::::,:,,,,,:,:::,:,,,:,,,,,,,::,,,,:,:::,,,:,,,:,:,:,:,,,:,,,: 
: ,:,:,:::,,,,,:::,::,::,:,:,,,:,:::,:::,:,:::,,:,,:,,,:::,,,::,,:,:,,,,,,,:,:,,::,,,,,:::,:,:,,,:,:,:,:,:,:,:,:,:,:,:,:,:,,,:,:,:,,,:,:,:::,,,,,,::, 
: :,,,,,:::,:,:,:,:,:,:,:,,,,,::::,:,::,,,,:,::,:,,,:,:,::,,:,,:,,:,:,:,:,:,:,:,:,::,,,::::,:,:,:::,,,:,:,:,,,,,:,:,:::,:,:,:,:,:,:,,,,,:,:,:,:,::::: 
, ::,,,,,:,:,:::,:,:,,,:,:,:,:,:,:,:,,,:,:,::,,,,,,:,,,:::,:::,:,:,:,,,:,:,:,:,,::,:,:,:,,,:,,,:,::,,:,:,,,,,:,,,:,,,::,,:,:,:,,,:,,,,,:,:,,,:,:,::::.
: :,:,:,:,:,:,:,:::,:,:,:::,:,:,:,:,:,:,:,:,:::,:,:,:,:,:,:,:::,:::,:,:,:,:,:,:,:,:,:,:::,:,:,:::,:,:,:,:,:,:::::::::,:::,:::,:,:,:,:,:,:,:::,:::,::i 
: ::::,:,:,:,:,:,:,:::::::::::::,:::::,:::::::::::::::,:,:::,:,:,:,:::::,:,:::::::::,:,:::::::::,:::::,:,:,:::::::::::::::,:::,:::::::::::,:::,::::::.
i . . . .   . . . .   . .       . .     . . . . . . . .     . . . . . .   . . . . . . . . .   . . .     .         . . . . . .   . . .   . .         . 
