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