....................................................................... ............................
...................................................*##%&%%%%%%%%(/*,,,...,..........................
.............................................,,,*(%%#%%%%%%##%%%%%%((%%##(/////*,,,.,,..............
.......................................,*,,,.,,/#%%%&&&&&&%%%%%%%%%%%%%%&&%%%%%##(/*,,,.............
....................................***/((((((####################%%%%%%%%%%%%%%#%%%#/,..,,*,,,,,...
................................**/#%%&&&&&&&%########%%%%%%%&&&&&&&&&&&&%%%%%%%%%%%%%%%%##((////**,
.............................,**(%&&&%&%%######%%%%%%%&&&&&&&&&&&&&&&&&&%&&&%%&&&&%%%%#%%%%%%%%%##(/
...........................,,(%&#&%%%##%#((###%%%%&&&&&&&&&&&&&&&&&&&&&&&%%%%%##%%%%#%%%%%%%%%%%%%%%
.........................,*#&&%%%%%#####(###%&&%%%%%&&&&&&&&&&&&&&&&&%%%%%#######%%%%%%%%%%%%%%%&&&%
........................*%&%%%%%#########&&%##%%%%&&@@&&&&&&&&&&&&&%%%%%%%###%%%%&&&&&%%%%%&&&%%%%%%
......................,(%#%%%%%#(############%%%&@&&&&&&&&&&&&&&&&%%%&&&&&%%%%&%&&&&&&&%%%%%%&&&&&&&
...................../##%&%%##(########(##%%%%&&&&@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&%%%%%%&&&&&&
...................*#%&%%%%##%#((#######%%%%%%&@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&%&&&%&&%%%%%%%%%&&&&
..................*%&%%%%%%%#########((%%##%%%%%%%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&%&%&%%&&%%%%&&&&&&&&
................,(%%%%%%&%%%%%%%#%%((%########%%%%%%%%%%%%&&&&&&&&&&&&&&&&&&&&&&%&%%%%&&%%%%%&&&&&&&
...............,(%%%%%%%%%%%%%%%%#(#((((#(/(#%%%##%%#%%%%%%%#%%%&&&&&&&&&&&&&&&%%%%%%%%&%%%%%&&&&&&&
..............,#&%%%%%%%%%&&&%%%#(((////*/(#%#((#%#(#%#(##(/((#%%%%&&&&&&&&&&&%&%%%####%%%%%%&&&&&&&
.............*#%%%%%%&&&&&&&%%%#((///(/**/#(//(#(/((#((#(/**/(((#%%%%%%%%%%%%%%%%#####(##%%%%%&&&&&&
............,#&%%%%%&&&&&&&%%%#(**(/#/**//**//(//(((//(/*,,**//(####%%%%%%%%%%%%######(#%##%%%%%&&&&
...........,(%&&&%&&&&&&&%%%#((*,((%//*///***/***//****,,,,***/(#((#%%%%%%%%%%%###((#######%%%%%%%&&
...........*%&%&%%&&&&&&%%%#/*/,*(%#//((//*//***//****,,..,***/((/(###%###########(#####%%%%%%%%%%%&
..........,(&%&&&&&&&&&%%##****,(#&(/(#((/////((////*,,,,,,**/((//##((#(##(##(####(#%%##%%%%#####%%%
.........,*#&&&&&&&&&&&%#/**,*,,(%%(/(##((#/(((////*,,...**,**///((#(((((###(##(%%##%%%%%%%%####%%%%
..........*(%%%&@@&@&&&%#/***/,,(%%*(##((%((#(((/*,,,...*//*(/**(((#((#(###(##(%%%%%%%%%%%%%%##%%%%&
.........,*#%%%########%%##/*/,/%&#/(#%(#((#((((**,,...,//*(/**/%%#%%#%%%####%#%%%%%%%%%%%%%%%##%%%&
........,*##(%%%&&&%%%(**/((//*/%%##/%#(##%##((/*,,,...*/*/(***#%%%%%%%%%%%%%%&&%%%%%&%%&%%%%%%%%&&&
........,/&&%(/##*,,/%&&%*,///*(&%##/%%%%%%%%%(/*,,,,,,/**(*,*/%%%%%&&&%%%&&%%&&&&&&&&%%%%%&&&&&&&&&
.......,*%&&*,//*,,/#%%(%%/**//(&##(/#%#%%%%%#((/**,,,/(*((***(%%#%&&&&&&&&%%&&&&&&&&&&&&&&&&&&&&&&&
......,*#&#..,//*,,/#%%&&&(****/((#(////##%%%##(((((((#(/#(***#%&%%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
.....,,/#/......,,,,,/(###*,************//((//(//////#%%%%#(//%&&%%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
.....,*#*..........,,,,,,,,,,,,,....,,***/////********/(%%%###%&%%%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
....,,**....................,,...  ..,,*****///(%%######(#####%&&&%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
....,**..... ..................    ...,,,***/##/**/%&&&&&%##((#&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
....,,*...... ................    ......,,,,/**,.,##%%&@@&&%#(#((%%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
..,..*,........ ............    ...........,,,,,,,/##%%%%%##%%(((((#%&&&@&&%%%&&&&&&&&&&&&&&&&&&&&&&
...../,...................     ................,...,..,,,*/(%%#//*/((#%&&&&%%%&&&&&&&&&&&&&&&@&&&@@&
....,#*.................      ........................,,***,,,,,,***/((#%&&%#%&&&&&&&&&&&&&&#(//,../
....*%/.,............       ........... .........................,,,**/(#####%%&&&&&&&&&&&&&%%####*,
....*#/,,.........,,...    ........,.........         ..............,,,*///((#%&&&&&&&&&&&&%#///*//,
....*(**,..........**,.....,,,....,,....                 ............,,,**/(#%&&&&&&&&&&&&&%(/****,/
....,(/*,,..,,,......,*/***/**,,,..,,......             .............,,,**/(#%&&&&&&&&&&&&&%(/*/*,/%
.....****,,,,**,.....,,**////(((***,.........         ..............,,,**/(#%&&&&&&&&&%%%&%#/***(%%%
......,**,,,.,,,,.................. ..............................,,,**//((#%&&&&&%%%&&%%&%(/(&&%%##
......,**,*,,..,*((*,............................................,,,*///(##%%@&%%%%%%&&&&&%%&&%%%###
.......,,,**,,..,,,,*//*,,,..................................,,,,***///(####&&&%%%%%&&&&&&&%%%%####(
........,*#%*....,,,,,,,,,*///,..,...,,,,,,............,,,,,,,,,****/(##%%#%&%((%&&%&&&&&&%%%%###((/
......,,*#%%#....,,..,,,..,,,,*/(((((((###/,....,,,,,,,,,,,,,,,**/((##%&@@&&&&&&%%%&&&&&&%%%%%####/,
..,...,(%(%&%,......,,,,,,,,,,,,..,,,,,,.,,,..,,,,,,,,,,,,,,***/(#%%&&@&&&%%%&%&&&&%%%%%%%%%%##(*,,,
.,.,,(#((%&@&/.............,,,,.,,.........,,,,,,,,,,,,,,**//(#%&&@&&&&&%#%%%&&&&&%%%%%%%%%##(/,,,,,
.,*##//(&&&%&#*,...................,,,..,,,,,,,,,******/(((%&@@&&&&&&%%%##%%&&&&&&&%%%%%#%%#/*,,,,,,
/(/,*/#&&&&&&&#*,,,,...............,,,,,,,,*****////(#%&&@@@@&&&%%%%%%%%%%%&&&&&%%%%%%%%%#(/*,,,,,,,
/,,(%&&&&&%#%%%&%*,,,,,,........,,,,,,,,**//((##%&&@@@@@@@&&%%%%&&%%%%%%%&@&&%%&%%%%%%%%###/,,,,,,,,

%####&&%%&&&&&&&&&&@@@@&#///////(((((##%&&&&@@@@&&&&%%%%%%&&&%%%%%%%%%&%%%%%#%&&&%%%%%%##%(*,,,,,,,,
#(#%&&&&&&&&&&&&&@@@%*,***/(((//(#%&&&&&@&&&&%&&%&&%%%%%&&&%%%%%%%%%%%%%%%%%&@&&%%%%%%##%#/,,,,,,,,,
/##&&&&&&&&&&&&@@%/,.,,***/(#%%&&&&&&&&&%&&&&&&%%%%%%%&&&&&&&%%%%%%%%%&%####&&%&&%%%%%%%%#*,,,,,,,,,
/&%&&&&&%%%&&@%,.......,*(##%&&&&&&%%%&@&&%%##(###%%%%%%%%%%%%%%%##%%%####(#%&&%%%%%##%%%#/*,,,,,,,,
&&&&%%&%%%&#,. ......,*/#%&%%%%%%%%&&%%##%%%###%%%%%%%%%%%%%%%##%%%##(((((##%%%%%%%%##%%%#/*,,,,,,,,
&&%%%%%&#*    ..    ,/#%%%%%%%%%%%%%%%%%%%%%%%%####%%%##%%%###%%###(((((((##%%%%%%%%%%%%%%(*,,,,,,,,
&%#%%(,.          ,/#%%%%%%%%%%%%%%%%%%%%%%%%#################%%%##%#//(((%%%%%%%%%#%%%&%%#*,,,,,,,,
#%#.            .*(#####%%%%%&&&&&&%%%%%%%%%############%%###((/**(%%%&%%%%%#%&&%%%%&&%&%%%(,,,,,,,,
,  ..          ,(#####%%%%%%%%########%%%%###%%%%%%%%####(((#%%##%%%%&%%&%&%%&%%#%%&&&%&%%%#/,,,,,,,
.             *#####%%%##############%%%%%#((/*****,,,,.....,**//#%%%%%%%&%&%%%%%%%%&&%&&%%%(*,,,,,,
.           ./(####(#######(#%#(*....   .         .    ....        ..,,,*/(///%&&&%%&%%&&%%##/,,,,,,
         .,/#((######%%%#/,.                                   .     .. ..,*/*/&%%&%%%%%&&%##(*,,,,,
        *#####%%%%%%&(.                                    .   .,.. .     . ,(/%%&&&%%%%%&&%##/,,,,,
    ,,/(#####%%%%&#*                                              . .. ..,..*,*%%%&&&%%%&&%%##/*,,,,
  .,*/####%%#%%%(,                                                      ...,..,(%%&&&%%%%&&%##(*,,,,
,.,*###%##%%%#/.                                          ....          ....,..*%%&&&%%&%%%%%##/,,,,
.,(##%%%%%%#,                                                 ....         ....,#&&&&%&%%%&%%#(/*,,,
/##%%%%%%%/ .                                                           .......#&&&&&&&%%%&%%#((*,,,
##%#%%%%#                                                                 ..*%%%%&&&&&&%%%&%%#((/*,,
##%#%%(.                                                                    .,##&&&&&&&%%&&%%(//*,,,
##%%%*                                                                       .,#@&%&&&&%&%%%(///,,,,
%%%%/                                                                          .*@&%&%%&%%%#((*,,,,.
%%%/                                                                            .,&%%&&%%#(/*,,,,,,,
%@(                                                                            . ./&&%%%#(***,,,,,,,
@*                                                                               ./&&%%%#/***,,,,,,,

                                                                                 .%&&%%&#/**,,,,,,,,
                                                                                 .*&&%%%#/**,,,,,,,,
                                                                                ...%&%%%%#(*,,,,,,,,
 ..                                                                             . ./@%%&%%#/*,,,,,,,
                                                                                   ,%&%%%%%(*,,,,,,,
                                                                               .   .(&%%%%%(*,,,,,,,
                                                                                    /@&%%%(*,,,,,,,,
                                                                               .    *&%%%#*,,,,,,,,.