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