.........                               ..............                        
                      ..................                      ..............                        
                  ......%@*+@.##+%@@%:.......             ...:@@@#%=%=*-@@*.....                    
              ......#*+.-...::.:..*.=@*%@:.......     ...-@@*@-:+..:..=...:=.%*....... ..           
           . ....@@..*.:=* .-:..+.-..=.*%*@=...........+@*%*-:..:.....=..*.=:.+.@@......            
        ......+*.+.%.#-=:::##:.-..+..+.:-:@%@........:@@@:-:.:+.-.:.%::+-::%-*.-..+@:.....  .       
         ....@-%.#=%+%#%#***+*%---.%.*.%:*@+%@%.....@@@=@*-#.#..+:@+=%%##*#@%+==--:-#@......        
         ..=%--**#@@@@@@@@@@@@@%@+#=::+=.=%:=@@@+*#@@@+-%=.-#:.%=%*%@@@@@@@@@@@@@%#+=:@......       
    ......#=#=@#@@@@@@@@@@@@@@@@@@%+%.-%..=*#@@@@%#@@@%++..#+:%+@@@@@@@@@@@@@@@@@@@#@*--.....       
    .....@@:@@@@@@@@@@@@@@@@@@@@@@@@*%##-=@-%@=*:=.@*@#=@+:%*##@@@@@@@@@@@@@@@@@@@@@@#%:+*...       
    ....@#:@=%@%@@@@@@@@@@@@@@@@@@@@@@#@#+@%@=--:..+*-@@@=#@#@@@@@@@@@@@@@@@@@@@@@@@@+=%.=-.....    
    ....%:%.=@@@@@#@@@@@@@@@@@@@@@@@@@@@@@=@::-:....-::@-@@@@@@@@@@@@@@@@@@@@@@@%@@@@%-.@:@.....    
    ...@*==+@%@@@@*@@@@@*......:@@@@@%*#.:.:.:.::+:-::.=.-.#*%@@@@@.......%@@@@@+@@@%%%==*:=....    
    ...#:-@@@%@@@+@@@@%...*@+-=%@@@@#.-...=--:-:..:.:::-....-.*@@*@#==*@=...@@@@@+@@%%%@%%-@....    
    ..%@=**+#@@@+#@@@--**#@@@@%.#@@:.:....:=-==:...--=:==....:.:@@*.#@@@@#*+%#@@@*+@@@*+*%=@-...    
    ..@#=@#+#*-+%@@@@.%.-#%@@@@@*@*..:...:-#...-..:.:..*...:.:..#@%@@@@@%*=:-.@@@@#==*#=#@.+%. .    
    ..@@+=.-=+@@@@@@+..=:.=*%@@@@@-.-#--:-+#--.-...-:--**-.:+*:.+@@@@@%*=:+...@@@@@@%+=-.=#@#       
    ..@@#+%%**@@@@@@.....@.:+%@@@@@@@@@:==@*.....=.....*@-.:@@@@@@@@@*=.:#....*@@@@@@+*%#=#%%       
    ..@@@#=:=*@@@@@@........#%*+%@@=%%@@+@+:--.......=-:=@:@@#@=@@#+*%+.......*@@@@@%*=:=%@@#       
    ..@@*%#%%@%+.......%%*..=:#@@@%.::-@@@=*:*.......*:*%@@@-::.@@@@*:-..%#*......:*@@@##%#@#       
    ..#@-@*=+*+*=-:::..:...@#*%@@@#...-%@%**.=:.....:=.--%@#-..-%@@@#*#%......-:---#+#+-%#=@.       
  . ...%@%@@@@@@@@+***+==....#@@@@@#.-:#*.:.::-....:-.:.:.%*-.:@@@@@@:....=+-#+%#%@@@@@@@@%@.       
.... ..%**%+%@@@@@@@@*%+%=:..:+@@@@@*=:%%#=..--.....--..:%%+..:@@@@@:+..-+#*%%@@@@@@@@*:%-@:.       
........*%*==#+@@@@@@@:@@%+..=.=@@@:@*.=#@=..-:.....:-.:+@@-:=@=@@@*.+.:*@%@=@@@@@@@+#=+%*@..       
........-%-*+:*@*@#@@@@.@%*%%-=-@@@@**.-%@#:....:.:....-%@-.-@%@@@@#:-@#*%@=@@@@@@*@=-*+-@.         
    .....+%+=:#%+@@@@@@@=#+-=#-%%@%@@*%*-@..:......:.:...@+#%#@@@@*%+*--=%#@@@@@%@=@+:++@..         
    ......=@@%@.@*@@@@=*#%@@##*.@@@@@*@#@@ .:::.....:....%@@@=@@@@@.###@@*=:*@@@@-@=@@@@.           
    ........@@+:-%.+#*+-+@%*==#%@@@@@@@%#..-*...:::...@:.:@#@@@%@@@@+==*@@%-*=-%:=#:#@@..           
    .........@=#@-+-*@@@@@%%#-%@@@@@@@@@:..-@@@@#+*@@@@:..*@@@%@@@@@*=%%%@#@%#@++-+@%#...           
    ..........:@%#%=@@%@@@@#=+@@@@@#@@@@......*@@@@@+.....:@@@%@@%@@@=*#@@@@@%@#++-@...             
         ... ....%@@@@@@#%@%%@@@@-%-@@@@+.:....-@@%:......@@@@@@:@@@@@%@@#@@@@@@@*...               
           ... . ....-%*%@@@@@@@+:+@+#-@@%::::-=*@+=-:::.@@@@@:+%-#@@@@@@@##*:....                  
               .......+@@@@@@@#=%@.%--@%#@*%@@@@@@@@@@@%@@%@#:*.%=@@+#@@@@@@...... ..               
               ...+.:-@@@@%@=+%%.*+:.@=@@*@=:...::.....*@@-#--.%=:.%+#-@@@@@*#..%. ..               
               .....=@-@@@@@=:@@-:=.@-@.@@@@@@#-=+#+#@@@@@@%@++:.:+#@:%@@@@@*@.... ..               
             .......%.#@@@:%@#.*-.@@@@.@=@%-@@@%@@@@@@@@@%@#@@:+%.:#.=@=*@@=@-...  ..               
             .......*=*#@+@=.@..#@@*.+#@@--@@@@+@@@@@@%%-#@@@:@+%@%..%:-#-@:#....  ..               
                  ....-@-@+#@.%+@@+.#@@*-.@@@*#=##%+#@@=.::#@@#.::@++.%-=@@%*...                    
                  ....@.*#:#=#*@@.+*@@=*:%#=++#*=.=%--@-@*.*@#%-%#@%-*+@+@%:*.                      
                 .......*#:@.+-*@.=#@*#:*#+#%%*-**--*.=%:.#=@:@#**@@@*+@#@@...                      
                  .. ...:*@:@#@+#@#+@*.:+%#@+*.#%+.@*@**=--+#+%*.-@@@#@#@.#.                        
                   .. ....@..#@@%*#@@=@@@@@%#*+*.@@@@@::.@%@@@*.+#:@@..%#...                        
                  .........@..+@=@@%@@-+%@%#@++=@@#.*-#@@@*-#@@@@@:@*..*....                        
                  . .........:.%%@@@@@@-%-%-@%@@@%@@@@@@+.@=@@@@@=#=.-......                        
                  ..  ..........@@@=@@@#%-@=@@@@@@@@=.@@##%@@@@:@.*.........                        
                      ..... .......-.*@@@#*@@###@@@@%@@@@-@@#*.-.%...                               
                           .  ....%.=..@%@@.@%-#%@=@@@@=@@*=:.:....                                 
                             ...........+.@-:#%+%@@@-*.+@.*........                                 
                               .   .........@...@@=...%..... .                                      
                                        .........%........                                          
                                        .. .............                                            
                                        ...    ........ ..                                          
                                          ..........