,                                                                           
                                                                                                                                                                 ,  ,                                                                          
                                                                                                                                                                 ,,,  ,                                                                        
                                                                                                                                                                ,   , ,                                                                        
                                                                                                                                                                  ,.@.,                                                                        
                                                                                                                                                                ,  :W:,,                                                                       
                                                                                                                                                                  ,@@:,                                                                        
                                                                                                                                                                  ,@W:                                                                         
                                                                                                                                                                , .WW: ,                    ,    ,     ,                                       
                                                                                                                                                                  *W@+ ,                      , #*,                                            
                                                                                                                                                                 ,@@@* ,                 ,  , ,,W#   ,                                         
                                                                                                                                                                ,.W*#* ,                 ,  , ,:@# ,                                           
                                                                                                                                                                 +@:@* ,                 ,     #@# ,                                           
                                                                                                                                                                 @#.#*,                       ,W@*                                             
                                                                                                                                                                .W*.@*,                       +@@* ,                                           
                                                                                                                                                                :W::@*                    ,  ,#@@+    ,                                        
                                                                                                                                                             , ,#@..@# ,                 ,  ,,@#@+ ,                                           
                                                                                                                                                               ,@@++@*                     , +@+@+ ,                                           
                                                                                                                                                              ,.W***@#,,                   , @#:@:                                             
                                                                                                                                                               *@.::##                      .W*:@:                                             
                                                                                                                                                          ,  , @#.:.#@ ,                 ,, *@:+W.                                             
                                                                                                                                                          ,  ,.W*.:.#@ ,                ,   @#.+W.                                             
                                                                                                                                                              +@:...#@,                    .@#+*W.                                             
                                                                                                                                                        ,  ,  @#..::#@,                   ,+@*##@,                                             
                                                                                                                                                        ,,  ,.@#+*##@@                  ,  W*::+W,  ,                                          
                                                                                                                                                          ,, :W##*+:*@,,                  .W+..*W,  ,                                          
                                                                                                                                                             *#:....*@,,                , *@::.*W,  ,                                          
                                                                                                                                                        ,  ,,W#.:.::*@,                   W#.:.#@,                                             
                                                                                                                                                           ,.@+::...*W,,                ,:W+.:.#@,                                             
                                                                                                                                                         , ,*@:.:.:.#W,                  *@####@@,                                             
                                                                                                                                                        ,  ,@#:...:.*W,,                ,@*::::#@                                              
                                                                                                                                                        , ,,W@*#*++.*W,                 .W+..:.#@                                              
                                                                                                                                 ,    ,            , ,, ,  +@::+**##@@,          ,  ,   #@:..:.@#    ,                                         
                                                                                                                                ,   ,  ,         ,  , , , ,#@...:...*W,              , ,@*.:..:##    ,                                         
                                                                                                                                      ,            ,  ,  ,,@*.:.:...+W,,             , :@+.:..:@*    ,                                         
                                                                                                                                 , ,   ,            ,  ,,,:W:.:...:.*W,,             , *@+..:::#*                                              
                                                                                                                                  , ,,          , ,,      *@:.:::.:.*W,          ,    ,@@*#+:::@+                                              
                                                                                                                                , , , +           , ,,  ,,@@++:::.:.*W,,         ,    :W+:***##@+                                              
                                                                                                                                   ,  #:,        ,, @.  ,.@#*######*#W,,             ,##:.:..+*W:                                              
                                                                                                                                  ,  ,:W,,        ,@#   ,+W:..:::::+#@,            , ,W*.::.:::@:                                              
                                                                                                                  ,   ,   ,  , ,.., , ,W#, ,     ,#@:,,,,@@..:...::.+W,,  ,, ,  ,,,, :W+.:...:+W.,                                             
                                                                                                                ,  ,    ,, ,.#@WW@WW#:,*W:  ,:*#@#@W@@@@#@@##*+++:..+W, ,,  ,  ,.:##,#@..::::.+W.,                                             
                                                                                                                  , ,  ,,,.#W@***++#@W##@@*@W@@@@@@##@##@##@@@@@@@@#@@., ,  , *@@@@,.@@+::.::.+W.                                              
                                                                                                                   ,  , ,#W@+::..:...*##@W@@###@@@#*##*#######@##@@@@@##*:,, .@@W@+,:W**###*+:*W.                                              
                                                                                                                 , , , .@@*:..::.:::..+@@@@#*##@@@############**######@@@@WW##W@@+, @@...:++*#@@,                                              
                                                                                                                  ,  ,.@@@+.:::.::.::.:@@@@@#@@@@################*#####*###@@@@@W*..@#::::....*W,                                              
                                                                                                                   , ,WW@@#.::...::..::@@@@@@@@@@#####@@###**########*####*#@@@@@@WW@@@#+:.::.*W,                                              
                                                                                                                 ,  .W@@@@#..:::.::.:::#@@@@@@@@###@@@@##*###############*##@@W##@@@@@@W@@#+:.*@,                                              
                                                                                                                 ,  @@*@@@#.::.:::..:..*W@@@@@@@#@@@@@############*#@#**###@@@@@@#+:::++#@@W@##@,     ,                                        
                                                                                                                 , +W*+@@@*..:::.:..:..+@@@@@@@@@@@@@#*#*#########*#@@###*@#@@W#:...:....:+#WW@@.,  ,  ,                                       
                                                                                                                 ,,W#.+WW@:..::..::.::..#W#@@@@@@@@@####*############@@###@@@@*:.:::::::..::#@@@@#+,   ,                                       
                                                                                                                  *W:.:@@*.:.:.::::..::.+@@@@@@@@@@#*################@@##@@@W*..::.......:::#@@##@@W#:,                                        
                                                                                                                ,,@#.:.:+..::..::..:.:::.#@@@@@@@@##*###@###########*@@@@@@@@:.:.:::.:::.:.*W@@@####@W*                                        
                                                                                                                ,+@+::....::::..:.:::.::.:@@@@@@@#*##*#@@##*########*#@@@@@@*.::..::::::::.#W@@#@#*##@*,                                       
                                                                                                                ,##::.:::::.:::..::::.....#@@@@@@#*####@##############@@@@@@.::.:......:.:.*@@@+*@#**W+,                                       
                                                                                                                ,W*.::::.:.::.::.::..::::.*@#@@@#####@@#*##############@@@@#...::.::::.::..*@@@*.####@+,                                       
                                                                                                                :W+.:.:.:::::::::....::.:.*W@@@##**#@##################@@@@*.::::::::::::.::@@@*::@##@.,                                       
                                                                                                                *@:.::::::::::::..:::.::.:#@@W#########################@@@@+...:::::::::.::.*@@+::*##@.,                                       
                                                                                                                ##..::.:::::::::.::::..:.+@@@@*###@####################@@@@:.::.::::::::.:...+:::.:@#W,,                                       
                                                                                                                @#.:::.:::::::::::..::..+@@@@####@@####################@@@@:::::::::::::::.:...::..#@@,                                        
                                                                                                                @*.:::.:::::::::.:.::..+@W@@#*##@@#####################@@@@:::::::::::::::.::::..::+@@,                                        
                                                                                                                @*.:.:.::::::::::..:..+@@@@@#*#@@######################@@@@:.::.:::::::::::..:...::.@@,                                        
                                                                                                                @#.:.:::::::::::::...+#W@@@#*##@#######################@@@@+...:::::::::.:::..::..:.*#,                                        
                                                                                                                @#.:::::::::::::.::.:#W@@@####@#*####################*#@@@@*.:::::::::::.:.:.:.::.:.+# ,                                       
                                                                                                         ,, ,, ,@@.::::.:..:.::.::.:@@#@@#**@@#########################@W@@#.:.::::::::::::::::::.::+*                                         
                                                                                                        ,,   ,.#@@+...:.:..::::.:.:#@@@@@###@##########################@@@@@.:..::::::::::::::::.::::#,,                                       
                                                                                                          , ,,#W@@*.:....::...::::#W@@W@###@@#*#########################@@@W:.:.:::::::::::::::::..::#                                         
                                                                                                         , , :W@@@#::....::.::..:#W@@@@@*#@@############################@@@@*.::::::::::::::::::.:.:.#,,                                       
                                                                                                        ,  ,,@@@@@W*.:+.::.:::.:#W@#@@###@@#############################@@@@@:.:::::::::::::::::.::.:#                                         
                                                                                                        , ,,#@@@@@W@+...:..:..:#@@@@@@#*#@##*###########################@@@@@*..::::::::::::::::::.:+*,,                                       
                                                                                                         ,,+@##@@@@W@+.:.::..:#W@@@@####@################################@@@@@+.:::::::::::::::::.::+*++                                       
                                                                                                          :W@##@@@@@@@*:....:@W#@@@@@##@@#*##############################@@@@W#:::::::::::::::::.::.*W#,                                       
                                                                                                        ,,+@@###@@@@@@@@#*+*#@@@@@@@**@@#################################@@@@@@*::..::.:::::::::..:.@#,,                                       
                                                                                                   ,    ,,#@@@##@@@@@@@@W@@@@@@@@@@###@###################################@@@@W@+:.::.::.::...:::..+@, ,                                       
                                                                                                   ,    ,:W@@@@#@@@@@@@@@@@@@@@@@@#*#@####################################@@@@@@@+:::..:.:::::...:.@#,,                                        
                                                                                                ,        #@#@@@@@@@@@@@@@@@@@@@@@@#*#@#####################################@@@@@@@*.::.::...:::::.*@*,,,                                       
                                                                                                        .W##@@@@@@@@@@@@@@@@@@@@@#*#@@#####################################@@@@@@#@#:.:.:::::....+@@*.,,                                       
                                                                                                 ,  ,   #@##@@@@@@@@@@@@@@@@@@@@####@#*#####################################@@@@@@@@@+.:..::...:#W#@@@.                                        
                                                                                                    ,  .W####@@@@@@@@@@@@@@@@@#####@########################################@@@@#@@@@W#*+::::+*#@@@@+  ,                                       
                                                                                                 ,  , ,+@#####@@@@@@@@@@@@@@######@@#*##################################*####@@@@@@@@@@@@@##@@@@@#@W.,,                                        
                                                                                                , ,    @@#######@@@@@@@@@#######*#@#*#########################################@@@@@@@@@@@@@@@@@@@##@. ,                                        
                                                                                                 , ,  .@##########################@###########################################@@@@@@@@@@@@@@@@@@@@WW+,,                                        
                                                                                                 , ,  *@########################@###############################################@@@@@@@@@@@@@@@@@#@@,  ,                                       
                                                                                                 ,  ,,@#########################@#################################################@@@@@@@@@@@@@@@##@  ,                                        
                                                                                                     :W#########################@#*##################################################@@@@@@#######@#,                                          
                                                                                                   , #@########################@@##############################################################*#*@*  ,                                        
                                                                                                   ,,@#########################@#################################################################*@#  ,                                        
                                                                                                    .W#########################@*#################################################################@+,  ,                                       
                                                                                                   ,*@########################@##################################################*##*#############@: ,                                         
                                                                                                ,  ,@@########################@##################################################*##*#############@:                                           
                                                                                                 , .W########################@@#######################################################@###########@.  ,                                        
                                                                                                 , +W**###################*##@#*######################################################@###########W,  ,                                        
                                                                                                  ,@@########################@#*######################################################@#########*#@,  ,                                        
                                                                                                  ,W#########################@########################################################@#########*@@,                                           
                                                                                                  :@########################@@#######################################################@#*#########@@,                                           
                                                                                                  *@#**##################*#*@#*######################################################@#*#########@@    ,                                       
                                                                                                 ,@#########################@#################################################@@@@@@@@@@#########@*,  ,                                        
                                                                                                 .@#########################@#######################################################@@@#@@@@@@###@*,  ,                                        
                                                                                                 +@#########################@################################################***####@##########*#@+,                                           
                                                                                                 #@#*#######################@######################################################*@#####*######@+                                            
                                                                                                ,@@#*######################@###################################################@#@##@#*##########@:                                            
                                                                                                .@#########################@####################################################@@@@@#*########*#W.                                            
                                                                                                :@#########################@##################################################***##@@@@@#########W,                                            
                                                                                                *@#*#######################@#######################################################@###@@@#######W,                                            
                                   ,      ,                                                ,,   @########################*@@#######################################################@############@@, ,                                          
                                  , ,, ,,   ,  ,                                         ,     ,@######################*#*@@######**##############################################@@############@@,                                            
                                    , ,        ,                                         ,   , .@#########################@############*##########################################@#############@#                                             
                                   ,   ., ,                                                  , +@######################@##@#########@#########################################**##@#############@#                                             
                                     , @*, ,                                               ,   #@#*###############*##@@@#@@#####*##@@@@@##########################################@#############@*                                             
                                 ,  , +W*  ,  ,                                            ,  ,@@#*#################@@####@###*#########@##*#################################@@@#@@#@@##########@+ ,                                           
                                 , , ,@@,     ,                                               .@####################@##**#@###*####***###@#######################################W@#@#@#########@: ,                                           
                                , ,  +@W,   ,  ,                                              .@#########################@@*##*###########@##*###############################***#@*##*#*########@: ,                                           
                             ,   ,  ,@@@,     ,                                         , ,   *@####################@#***@##############*##@##################################**@#############*#W.                                             
                                , , +@@@,   ,  ,                                          ,  ,#@###################@@@###@######**########@#############################*##@@@##@###############W,                                             
                                   ,@@@@ ,,  ,,                                          ,   ,@@####################@@@@#@########@@@@@@@@###################################@@@@##*############@,                                             
                                  ,+W@#@+, ,,                                            ,   .W##########################@#######@@@##@###################################***##@@@###*##########@, ,  ,                                        
                                , ,@@##@@#+.,,,,                                         ,   .W##########################@##########*###########################################@@@@@##########@@, ,  ,                                        
                                 ,+W@#@##W@@@:                                              ,+@##########################@###*##@@#*################################################@@#*#######@#, ,                                           
                               ,,+@@##@##@##WW+                                           , ,#@##########################@###*##@#*#########################################**#@##**#########*#@#                                              
                              ,,@W@#@###@####@#,                                          , ,@@##########################@###*#@##*############################################@#####**########@*                                              
                        ,  ,  :@@@###########@#      ,                                  ,   ,W###########################@@#*#@@##########################################*####@##########*####@+    ,                                         
                         ,   .@@###@@###@#@#W@. ,     ,                                 ,  ,.@@*########################*#@@@@################################################@@*##############@:    ,                                         
                        , , ,#@#############@# , ,,  , ,                                 , ,.W##########################*###@@#*############################################*#@################@:                                              
                         ,  ,@@#######@@@@@@@@#**+. ,  ,                                  , +W*###########################*#############################################**##*#@################W.                                              
                         , ,,@@####@@@@@@@@@##W@@@@W*,,                                 ,  :@@#########################################################################@####*#@################W,                                              
                          ,, +@@####@@##@@########@#@@,                                   :@@###########################################################################@@@@#@@################@,                                              
                         ,   ,@W@###########@@#@###@#@W.                                 :W##*#############################**################################################@@@###############@,                                              
                          ,,+@@@@#########@#######@##@@#                                :@@##*#############################################################################*#@####@############@                                               
                        ,  @@#@#######################@@., ,  ,                       ,,W@#################################################################################*@@################@#                                               
                          .@###########################@*,                      , ,  ,,@@#*#############################################################################*###@#*###############@#                                               
                        ,,.W###########################@*  ,,  ,                 ,  , #@##*#################################################################################@#################@*                                               
                         ,,@@##########################@#                          , *W*###############################################################################*####@#*###############@+                                               
                         , +W@@########################@#,,   ,                   , .W#####################################################################################@@#*###############@:                                               
                        ,  ,*@@########################@#                           @####################################################################################*#@##################W:                                               
                          , ,+#@################@@@@@@@@@.,                        .@@**######################################################################################################W.                                               
                        , ,..+@@@@######@@@@@@@@@@@@@@#@@@W#.                     ,:@#*##############################################################################@@@@@@@@@@@##############@,                                               
                ,  , ,  :*@W@@@@@@#######################@@@@#:  ,              ,  .@@#@@@@@@@@@@#@@#########*#####*##*#####**########*###################################@@##################@, ,,       , , ,                                
                  ,,  +@@@@#####@###########################@@@#. , ,, ,         ,  :#@@**+++*@##@@#@@@@@@@@@@#@#####*#**#################################################@###############*##@W,,      ,       ,                               
                ,,  ,#@@@@###@################################@@@:,   ,          ,,  ,, ,,   ,@*+*+*+**@+@@##@@@@W@@@@@####**############*################################@#############*####@# ,,  .+*#*:, ,,                                 
                , , @W#########@################################@@:,            ,  ,          W*++**++@+ #*+++****##@#@@@@@@@######**#####################################@################**@#,  .*@@@@@@*,  ,                                
                 , @@@##@###################################@####@W: ,               ,   ,    @*++*++@* ,*#+*+*++++++#@:@##@@@@@@@#####*####################################*##*#############@*  +W@###*#@W:  ,                                
                 ,:@##@#####@#####################################@W ,,,         ,, ,   ,,    *#++++#@,, .W+*+++***+*W. ##+***##@@@@@@@@###################################*############*####@*,@@###*##*#@+ ,                                 
                , @@###############################################@@           ,      , , ,  :@+*+#W,,  ,@*+++++++*W., :@++++++++**##@@@@@@################################################*@@#@##*######@*   ,                               
                 :W##@#############################################@@: ,           , ,     , , #@#@#, ,   +@*+++*+#W:   ,W*++++**+++++*@*###@@@@@############################################@@@#########*@*  ,,                               
                ,*@##@##########################################@#@#@#           ,,     ,,,     +*:,    , ,##++++@@:    ,*#+++++*:**+#@: @*+***#@@@@@@#***#####*###**########################@@###########@*  ,                                
                 #@#############################################@#@#@@.               ,,       , ,   ,   , ,@@@@W*.  ,    W*+***+*++*W+  ##++++++*##@W#@@##**#############################################W:   ,                               
                 @@#################################################@@+                 ,,       ,  ,  ,,,,, .::,,  ,  ,, .W*+++*+*#W.   :@*+*+**+++*+#@@@W@###################################*##########W,   ,                               
                ,*@###@##############################################@*          ,   ,,,  ,.:+*#*#***+::., , , ,     ,    ,:W#**+*@@,,   ,W*++*++**++*@#@*#@@W@##########################################@@ ,                                  
                ,:W##############################################@###@#         ,  ,, ,:#@@@@#*******##@#@W**:,, ,,  ,, ,  ,.@@@W@: , ,, ,*#+*++++++*@*,@*+*#@@@##**#####################################@*                                    
                 ,@@#################################################@@          ,,,:@@#*++:.::::::::::.+:+**#@@#:,    , , ,  ,,, ,  , , ,,@*++*+*+#@*  #*++++*@@@#######################################@:                                    
                  +@@################################################@@,      ,, .*@@*::.:::::::::::::::::.::::+*#@@*.,   ,        ,,  ,, ,+W+++++#W: , ##+**+++#@@#####################################@#,   ,,                               
                  ,#@################################################@#       ,,#@#+:::::::::::::::::::::::::::.:::+#@@*.  , ,    ,      ,  +W###W#, ,,,+#++*++*+#@@####################################@* ,                                   
                , ,,@@############################################@##W* ,  , ,*@*+::::::::::::::::::::::::::::::::::::+*@@*.  ,       ,   ,  .+*+.      :@++++*+*+*@@#*#################################W. ,   ,                               
                 , ,,#W##############################################@*   , :W#+::::::::::::::::::::::::::::::::::::..::++#@#:,, ,  ,      ,   ,,  ,,   ,@**+*++*++*@@#####*#####################*##*##@*,                                     
                , ,   +W@@@#########################################@@:  ,,#W+:::::::::::::::::::++:.:::::::::::::::::::::::*W@+,  ,  ,,,  ,           ,,@*++++**+++*@@################################@.                                      
                 ,  ,,,:#@@#######################################@##W,  :@#::::::::::::::::::::+#@@##*++:::::::::::::::::::::+#@#. ,,       ,, ,,       +@+++*+++*+:#@@##############################W*  ,  ,                                 
                 , ,,W#*#@@@@#######################################@#  :@*.:::::::::::::::::::::+**##@@@@##*+::::::::::::::::::+*@#:,,, ,           ,   ,W*+***+*++#@#@##*######################*##*@@,                                       
                , , ,@###@@@@@@@@##################################@W: .@*::::::::::::::::::::::::::::::+**##@@#**+:::::::::::::::+*@#: ,   ,  ,  ,     , +@*+++*++@@.,#@#*########################*#W: ,                                      
                   ,,@******##@@@@@################################@#, *#::::::::::::::::::::::::::::::::::::+**##@@#*+:::::::::::::+*@@.,  ,   ,      ,   #@**+*@W*,  .@@##########################@* ,      ,                                
                 , ,,@*********#@@@@@@############################@@:, @+:::::::::::::::::::::::::::::::::::::::::++*#@@#*++:::::::::::*W#:         ,   ,,  +W@@@*.  , ,####*####################*#W@,    ,,  ,                                
                , ,, @*+***#++****#@@@@@@########################@@#   #*:::::::::::::::::::::::::::::::::::::::::::::++*#@@#*+::::::::::*@#:  , ,,  ,       ,,,        ,@@#######################@#,                                          
                ,    @*****+*********#@@@@@@@###################@@W,,  .W+::::::::::::::::::::::::::::::::::::::::::::::::+**#@@#*:::::::::*W#.     , ,,                ,#@################**#@@@@*. ,,                                        
                 ,, ,##****+*************##@@@@@@######@######@@@@,   , :@@++:.:::::::::::::::::::::::::::::::::::::::::::::::++#@@#*:::::+::#@*,,,  , ,                 :@#############**###W@#*.,    ,                                       
                     +##@@@W*****************##@@@@@@@@##@@@@@@@# ,, , , ,*W*++:::::::::::::::::::::::::::::::::::::::::::::::::::+#@@#*+:.::.+#@+ ,,  ,       ,         ,@@#############*###@:,,  ,, ,                                        
                  ,,     ,,*#***+************+****###@@@@@@@@@@@#:. ,   ,  ,+@@#*++::::::::::::::::::::::::::::::::::::::::::::::::::+#@@#*+::::*@@: ,                    #@#############*#*@W,, ,,  , ,                                       
                ,,     ,,, :@***###@@##********+****************##@#, ,  ,,   ,:##@@@#**+++:::+++++++++++++:::::::::::::::::::::::::::::+#@##*::.:*W#, ,   ,              *@################@#         ,                                       
                           ,@##@@@@@@@@@@#************************@+  , ,   ,     ,.:+*#@@@@@@@@@@@@@@@@@@@@@@@@##**+++::::::::::::::::::.+*#@@*+:::#W*,,   ,  ,          +@################@+  , ,, ,,                                        
                 ,,    ,, , #@@@@#######@@@@*+********************@.,  ,  ,,  , ,,       ,,,.,,,,,,,,,,,,,,,...::+*##@@@@@##*+:::::::::::::.:+*@@#+::+#@.,               ,.@##*#############W.,   , ,  ,                                       
                 , ,   ,, ,+#@@###########@W@#**************###**#@, ,                  ,   ,             ,    ,,    , ,,.+*#@@@#**+:::.::::::::+#@@*::*@*.   ,   ,   ,   .W###*###########@@, ,                                               
                ,   ,,,  :#@@###############@@#*+**+*****+*#@+*#@W@,   ,                 ,      ,            ,,  , ,,,++., ,  ,.:*@@@#**::::::::::+*@@*::#@:,             .W###############@+                                                  
                 ,,    ,*#@####*###########*#@@#*****+*****#*,,,  , ,                       ,,,     ,,,       , ,  .#@@#@@,, ,, ,,,,.:#@@@*+:::::::::*#@*++@#.,,, ,,  ,   .W###############W. ,                                                
                ,  , ,,@W@##*#################@@#*+**+*##@@@@#*:,,,   ,                 ,  ,    ,          ,  ,   :W#*++*@@    , ,,   , ,:*@@#*+:::::::+@@#+#@:  ,  ,     .W###############@,                                                  
                 ,  ,,W@#####*#################@@#*+**#@@@@@@@@@W+,  , ,                   ,   ,  ,,,,        ,, .W**+++++@:,  ,,,  ,      ,,:#@@*+::::::*#@#*@#,,,,  ,   .@##############@+ ,                                                 
                 ,, ,W@###*#####################@@#*#@@##*#**##@#W@:                     ,  ,,  ,,        ,  ,  .W#+++*****W, , , ,.+@#:,    ,  .*@@#+:::.+*@@*#W. ,, ,   :@############*@W. ,                                                 
                ,  ,@@#########*########*########@@@@@#**######**#@@+  ,                 ,  ,  ,*+.,,     , ,, .W*+**++**+*@: ,  .#W@*#W+,     ,,,,.*@#*+:.::*@##W*,      *@############*@@, ,                                                 
                 , *@#*###########################@@@########*####*@W.                   ,  , .@@@@W@#+., ,   ,##++++**+**+#@,  .W@:+*+*W.,  ,,:@@*,,,:@@#+:::+*@@W#. ,   #@#############@+                                                    
                , ,W#############################*#@@###############@@,       ,         , ,  :@@####@@@@@@#+..+@++++**+++++*W, +@#++**++#@ , ,#@#*#@,, ,.*W@+::.+#@@@+,  ,@#######*######W. ,                                                  
                  :W#############################*#@############*####@+                 ,  ,:@@###########@@@@@@##**++++*+**@.:@*++++++++@., ##*+++#* ,   ,+@@*:.:+#WW#, .@##########*##@#,                                                    
                  +@#############################*#@############*##*#@@,       ,            +W#*#####*##***####@@@@@@##***+:#@@*++***++*+@* +@*++++*W,,  ,  ,+@@*:::*@@@:*@######*##*###W:    ,                                                
                , :@###############################@##################W:       ,         ,, .@*#############**####@@@@@@@@@##@#:+++++++++##:@*+***++#* ,   ,, ,+W#+::+#*@@@######*######@,                                                     
                , ,W###############################@##############*###@#  ,                 ,W################**##**#####@@@@@@@##****+++*@@#+*+++*+*W, ,     ,  +W#::.+W@#####*#######@*                                                      
                  ,@@##############################@################*##@,    ,          ,   ,#@*#############################@#@@@@@###**+@@++**++**+@.  ,  ,, ,  ,*W*+@@#*##*##*#####@W.      ,                                               
                  ,+@#############################@@################*##W:    ,          ,,   :@##############*############*###*####@@@@@@@@##*+++++++#* ,  ,      , ,@@@#####*########@*                                                       
                   ,W@############################@##############*#####@*, ,              ,  ,@@#########################################@@@@@@@###**##  ,     ,   ,:@@####*###*##*###@. , ,  ,                                                
                 ,  .@W*#*#####*#################*@####################@@ ,             , ,  ,:W##*###########################################@@@@@@@@@@****+++++*@W@@#*#############@#                                                        
                ,  , :@W#####**###################@#####################@,,             , ,   .*@#######################################################@@@@@@@@@@@###############*##W:                                                        
                      :@@#*#######################@#####################W.,             ,      .W##*##*################################################################*##########*#@#                                                         
                 ,  ,  :@@##*#####################@#####################@:                     ,+W################################################################*#################W.                                                         
                ,       ,#W@#@**##################@#####################@+                      ,*W#*##############################################################################@* ,                                                        
                    ,  ,  :@@#####################@#####################@*                       ,#@@###########################################################**################@@.  ,                                                       
                 ,  ,  , , ,#W@@##################@*####################@#                    ,  , @@#############################################################################@+ , ,                                                       
                ,    ,, ,  +@@@@@#################@*##*#################@#                 ,  , , ,,@W#################################################################*#########@@   ,                                                        
                 ,   , , ,*W@###@@################@*####################@#,  ,                  ,   ,#W##*#####*################################################################@@,   ,,,,,     ,     ,                                        
                    , , .@W###*#*#@@@@#####**####@@*####################@@ ,   ,                     ,+W@####*##############################################################*##@@.,.+#@@@@@#+.,    , ,                                         
                ,  ,   .@@####*#######@@@@@@@@@@#@@##*##################@# ,                        , ,:@@#*##*#########################################################*#####@@@*WW@@#@#@@@WW*.  ,                                            
                   , ,,#@*##*######*####@######@#@@#####################@#, ,,                   ,  ,  ,.#W@#*#*############################################################@@@@@#@####**#####@W+,                                             
                 ,  , #W*###*#########**##########@#######################,    ,                ,      , ,+@@#*###########################################################@@@@@#*####**########@@+ , ,                                         
                , ,  :W###**##*#####*###########*#@*####################@@ ,  ,                    , ,, , .@W###########################################################@@@@@#####*#####*##**###@@+  ,                                         
                , , ,@@#*###*###*###############*#@######################@.,                     ,,   ,, +W@##########################################################@@@@@@########*##*#**###*#*@@.  ,                                        
                 ,  .W############################@##########@###########@@, , ,                    ,  ,#@@##########################################################@@@@@######*#*##*##*###*#####@#,                                          
                ,   :W############################@#*######@@############*W#  , ,      ,,       ,  ,  :@W##########**##*#####**#####################################@@@@###########################@:                                          
                    +@############################@#######@@@###########*##@@,  ,           ,,,, ,  .#@@####***##*####*###########################################@@@@###########################*#@#  ,                                       
                 ,  *@*###########################@@##*##@@@@############*##@W.,   ,,, ,  ,,    , .*@@################*########*###############################*#@@@@############################*##W.                                         
                   ,:@#*#########################*#@####@@##@@############*###W*,,      ,    ,,,.*W@######*######*++*###*#######################################@@@@##############################*#@+                                         
                ,  ,.@@*#########################*##@@@@@##*#@###########*##*##W@*.,,,,   ,,,.+@@@##############+,,:###*##########++*###########################@@################################*##@                                         
                ,  , #@###########################*###@###################*#*#*#@@W@#+::++*#@W@@###***#########*.,,*##########*##*,,,**#######################@@@##*#################################W,                                        
                   , :@@##############################@#*#####*##########*###*#*####@W@@W@@@@####**###########:.,,,..:#*:+*##*###*,  *#########################@#################################*###@:                                        
                 ,   ,#@########################*#####@#########################**###########*##*######*##W@#*.,,  , :#: ,..,,.:*#*::###########################*####################################@*                                        
                , ,   ,@@##*###*################*##*#@@##*########################################*######@@##*:,,,:..*#, , ,,, , ,..*#*##*###*####*################*##########*#####################*@# ,, , ,                                 
                    ,, .W@##*#*###############**##*##@@@#########################################*###*##@@@###:, :####*   ,.:,.:   ,++,:+######*##****##############*##@@@@@#*#######################@#,    , ,                                
                  ,  ,  .WW##**##################*#@@###@@#*####################################*###*##@@@####.,,*####:  ,+##***+ ,,*+,,.########,,##*#############*#@W*::+#@##*##################*#*#W##. , , ,                               
                  ,    , ,@W###*##############***#@@##*#@@###########################################*@@@@##**, .###**., :######*, ,##,, ####++*#.,.##*#########*##@W#,, , ,#@*#####################**@@#W#,  ,                                
                ,    ,   ,,*W@##########**######@@@##*####@#######################################**#@#+@####: ,:####*, ,*##*###+, ,*#., +###.,,++::###########*##@@: , ,   :@########################**#@#W: ,                                
                     ,  , ,,:@@@############@@@@@#######*#@@########################################@W.+@####. ,+#**#+  ,*####*#: ,.##:  :##+  ,,,:*#*###########@#,     ,  .W#####################*####*###W+                                 
                 ,,   ,   ,  ,#@@@@@@@@@@@@@#####**#######@######################################*#@@: @@#*#*,,,*####: ,:#*#####.  :##*  .#*. ,+,,,.###########@W*,  , ,,  ,,W@*################*####**####*#@.,                               
                    ,  , ,, ,  *@@#####################@@@########################################@W. :@##*#+,,.#####., :####*#*,  +###, ,#+ ,.**, .##########@W+,  ,   , , +@############################*##@@,                               
                                #W##**########**#####@@##@#*##*############################*###*#@W., #@##*#+ , :+.**,,,*######* ,,*###.,,*.,,+##.,.#*######*#W+         ,  *@############################**##@:   ,  ,                        
                                .#@@###*##########@#@*. :@@##############################*###*##@W., ,W#####*,   ,,*+, ,*#*####+,,,*###:, . ,,###,,.######*##W+,          ,,@@################################@#,  ,  ,                        
                                 +@@@##*###*####@@@@*, , #@#*##*###########################**#@@@.   *@#**###:,, ,,#.  .#####*#:  ,####+     +###, .########W*,            :W#*##############################*@W,                              
                                 .@#@@@@###@@@@@@#*@.  , .@##*############################*###@@,   ,W########++::+#.,,:#####*#.,,:#*###,  ,.#*#*, :#######@#, ,         , #@############################*#####W.                              
                                 ,@**#@@@@@@##***+##      +@#**##########################*###@#,   ,.@@*############****#*#####,  :#####. , *#*#*, :#######@,             .@@#################################*@:                              
                                ,,##**+***********W, ,,    #W#*############################@W+  ,   #@*#+:**#:*####*###########.,,+#####. ,.####*, :######@@ ,,           *@##*################################@+,                             
                                , :@**+*********+##  ,  ,  .@@@*##########################@@:     ,,W##:, ,,.,.#############*###**##**##+,,*####*  +#####*@@,  ,         :@#################################*##@*   ,                          
                                 ,.@+************@.,,,,   , .W##########################@W*,     ,,+@#.,,,  ,, *#+:...+*#*####*#########*,:@####+  +####*##@.            #@#*#############################*####@*   ,                          
                                ,  @#+**********##,     , ,, :@@####################*#@@@:  ,     ,W@:, ,+, , +#+, ,  , :###*####*#######*#*##+*+, *#######@.   , ,,  ,.@@################################*####@+                              
                                  ,*#*******++*+@: ,     ,  , .W@####**###########*#@@@#,      ,  +@#.  *#+ ,,*#+,,,,,  ,:###*..+######*####:,,:+,,*#####*#@: ,  ,  ,,+@@######################################@+    ,                         
                                  ,:@*******+**#@,    ,  ,  ,, .@@#################@W#:   ,,      @@#, .###,,,*##,,::. , ,*##*, .+.,,.+####@:,,+#*+*###*###@:     , .@W@#######################################@:    ,                         
                                  ,,@*********+@+ , ,      ,  , ,+@W####**#######@W#.  ,,,   ,   .W#*, :*** ,,*##+####: ,,*##+,,  , ,,,+##*+.,,*###########@:  ,   +@@#########################################W.                              
                                    @#*****+***@,,,     ,      ,, ,+@W@#@@@@@@@W#+,  ,,          *@#*, .@#+,,.#####**#*,, +##:  , , ,, ,##+,  ,+*##*#######@+    ,*W@#*########################################W,                              
                                    *#******++@+   ,  ,  ,  ,,      ,.+###@@#*:.        , ,,,   ,@##*.,,**., :##*:.,,,., ,+##.   :**:, ,+#: , ,,,:#########@*   .@W#*#########################################@@                               
                                 ,  .@****+*+*@,,  ,  , ,  ,   , ,,  ,, ,,,     ,   ,,          +@###:,  ,  .*#*,,,,,    ,*#*. ,:####,, :#+., , ,.##+..:*##@+ ,:W#####*#######################################@*                               
                                 ,  ,@******+@*  ,  ,  ,     ,  ,,             ,   ,,  ,  ,     @@###.,   , +#*,  , ,,,,,,##*,, +##*#.  :##: ,.:,+#:, ,,+##@+,+W############################################*#@:                               
                                  ,  ##****+*@.                                         ,, , , :W###:, ..,.*#@:  ,:***,,,.##+,  *####,  +##. ,+###+,,,, .##@*:W##*#####*###################################**@W,                               
                                  ,  +#*****##                                           , ,  ,#@#*#: ,..:*###,, :####,  :##:, ,####*,  +##. ,*###. ,*+ ,*#@*@@#*#####*########################################                                
                                 ,  ,.@*****W:                                           ,    .@####+, ,  ,:#*.,,+###*,  +##.  .####+, ,*#*, ,###+ ,:##.,*##**@###**##*######################################@+                                
                                 ,    @#*+*##  ,                                        ,,    +@#*#*#:,,, , :#,, :###:, ,*#*,  :####:  .##+  .###: ,..:,,*#W: W@**##*##*#####################################W,                                
                                   ,  ##***W:                                           ,    ,@@#*##+:#*+.,,.#., ,::.  ,,##*,  +####., :##:, :##*.  ,,, ,#@@.,.@@###*######################################*@#                                 
                                   , ,:@*+#@, ,                                              :W#*###,,+###  .#*,   ,,,  ,##+, ,*####,, +##., +##*,,,..,,:##@,  .@@####*###################################*#W.                                 
                                      ,@**@:  ,                                             ,*@#*##*, ,:+:, .##*,,,, ., ,*#: ,.####*,,,*#*, ,*##*,,:@#***#W+,   ,*W@#######################################@#, ,                               
                                      ,@#*@, , ,                                        ,  ,,W#####*+,,,,, ,:###**++*#., +#. ,.##*#+,,,##*, ,###*, +##*###@,,,,  ,+@@####################################*#@:, ,                               
                                  , , ,*#@+ , ,                                          , ,+@#*#####+.,,  .*########**+.#*.,,:##*#:,,.##*,, :+:*,,.**.*#@@ ,, ,  ,@@#####################################@#                                   
                                  ,    :W@.,  ,                                         ,  ,#@########*+..:*######*###@#*+**++**###.  +###,  ,,.*., , ,*#@@  , ,  ,@######################################@. ,                                 
                                  ,    ,W*                                          ,,,,, ,,@#*##############*#########+,,.########+::**#@+,,  :#+,,, .##@#       ,@#####################################W+  ,                                 
                                  ,  ,  @., ,,                                             ,@#######**##########*######., ,*#*#############+:::*##:,,+###@*,      ,@####################################@@ ,                                   
                                        : ,  ,                                          ,,,.W#*##########*#########*###:,,,###*+:+#######*##*####*####*##@*,      ,@################################*##@@:   , ,                               
                                        ,  ,  ,                                            :W#*#############**###*###*##::*###,,,:#################**####@*  ,    ,@@##############################*##@@W ,  ,                                 
                                         , ,                                    ,      , ,,*@###########*###########*,..**#*#*, ,*######*#####*##########@*  ,    ,#@################################@@@@, ,                                   
                                 ,      , , ,  ,                                  ,,.:++*##W@*#*####################*,   ,*#:. ,,*###*#**#*#*###*##*#####@*  ,     *@###########################*##@@@##@,  ,  ,                               
                                                                   ,   ,,  ,  ,,+*@WW@@@@@@####################*####*., ,.@+,,   ,,.***##################@*       ,.@@*######*#*############**###@@@@#*#W,   ,                                 
                                                                     ,,  ,  .*@@@@@###############################*##*. ,:#+, , ,  ,#####################@*     ,   @##*##########**#####@@@@@@@@@@####@@,   ,                                 
                                                                ,,,      ,+@W@#@###*####***#################***#######.  +##+ , :..:#####################@*      , ,,@@@######*#########@@@@@@@@@##*###@@, ,                                   
                                                                      ,,*@W@###***#########################*########**,,,*##+ ,.#########################@*     , , ,.@@@#####*#*###**##@@@#############@  ,                                   
                                                                  ,, ,+@@@###**#########################*####*++#####+ ,,###., :#######*#################@+     ,    ,,+@@@@@@#####**#@@###############@#  ,                                   
                                                                 , ,+@W@#***######*#########################*:,,:*###:  .###,, +###*#####################@+      ,  ,    .+#@@W@@@###@@@###############@*,                                     
                                                                  .#W@**#######*##*###**##################*##:  ,*###., +##+  ,#*##*#####################@+     , , ,  ,    ,.@@@@@@@@#################@+,                                     
                                                                 +@@######################################*##*. ,####,, +##:  :#######*##################@:      ,   ,    ,  ,@@#@@@@########*#########@:   ,                                  
                                                         ,  ,  ,#@@#*##########################################*####*, ,*##:,,:*#*####*##################@+   ,               *@#######*###############W.,                                     
                                                              ,@@@#####*###########################################**:,.###+,,,,,:##*#*##################W:   ,              ,.W#######################@,,                                     
                                                            ,,#@@#**##################################################**###*:,,,,:##*####################W.              ,     #@#####################@@,                                      
                                                         ,  .@@##*##############################################*#**#########*****#######################@: ,  ,         ,  , ,+@#####################@#                                       
                                                        ,, ,@W##*########################################################**###########*##################@*              ,  , ,+@#####################@*                                       
                                                          ,#@###################################################***#############*########################@@,  ,                @@#####################@+                                       
                                                        , #W#*#*########################################################*###############################*#W+,                ,.W######################@.                                       
                                                         *@###*######*##############################################*#####################################@@,  ,              *@###################*##@,                                       
                                                , ,, ,  :@@##*###########################################################################################*#@*    ,       ,   ,W######################@@,                                       
                                                 ,  , ,,@@#*################################*##*####*#######################################################@+ ,     ,,  ,, ,+@######################@#,                                       
                                                 ,     *W###############################*#########*###*###################################################*#@@,        ,,  ,,@@##################*###@+                                        
                                                ,  , ,.W#*##*###############################*###*#########################################################*##@*,    ,   , , +W@*#####################W.                                        
                                                      #@###*##*############################@@@@#@#*#########################################################*#W+         ,,.W@*######################W,                                        
                                                  ,  :@####*##*######################*###@W@**#@@@###**##################################################*####@@:  ,  ,   ,#@#*#####################@#,                                        
                                                  ,  @##**####*########################@W*.,   ,:#W@*####################################################*#####@@:   ,, ,,*@#*######################@*                                         
                                                 ,  :W######*##*######################@W:.  ,    ,+@W@##########################################################@@+    ,,+W#*#*#####################@:                                         
                          , ,                    ,  #@###########################**###W+        ,  ,+@W@###@#*######*#@#################***#*#########*##########@@#:,,.@@##########################W,                                         
                        ,     ,                  , .@#############################**#W+           ,, ,:#W@@@########*#@#*##**##*###**#####@#@@###*#*###############@@@@W@##########################@@ ,                                        
                           ,                       +@###############################@#,            ,   ,,:*@@*######*#@############@@@@@@@@W@#W##*###############################################*#@* ,                                        
                         ,                        ,#@##############################@W. ,         ,   ,, ,  :@##########@@@WWWWW@@W@@##*+:.,, ,#@#*##############**###############################*@@:                                          
                         ,     ,                  ,@@##############################@* ,                ,   .@#*########@.......,,,,          ,.@@#*####################*##########################@@,,                                         
                           ,                      .W###############################@.,              ,       ##*########@,       ,      , ,,  , :@@#*############################################*#@* ,                                         
                          ,+,                     *@##############################@# , ,         ,    ,,    +@#########@,      ,,,,,,    ,    , *@@#############*####*############################@:                                           
                        , :W.,                    #@#*############################W.  ,                     .@#########@,,              ,   ,   ,#@###############################################W,                                           
                          *W.   ,    ,           ,@@#############################@@, , ,                 ,   #@#####*#*@                        ,,@@###*###*###*#################################@* ,                                          
                        , #W.   ,      ,         ,@##############################@*,                         :@@@@#@@###                        , ,W@##*#####**###############################*##W. ,                                          
                         ,@@:,,   ,,             .@##############################W.,  ,                     ,,@##@@###@*                           .W####*###############################*##*##*@#                                             
                         :W@+         ,          .W##############################@,,, ,                   , ,,*#*#@#*@@.                           ,.W#########*#############################*##W.,                                            
                         +@W@, ,,  ,,            .W#############################@#  ,                   ,  ,  .@##@###@                         , ,  :W@##################################**#**W# ,                                            
                         ##@@:,       ,          .W#############################@+, ,                   ,    , *@*@@*@+,                        ,,  , :@@#**###############################**#@@.    , ,                                       
                        ,W@#@@@#*#*:,            .W#############################@.,                       ,  , ,@##@#@,                               ,:@@#*##*##########################*##*@@: ,   ,                                         
                        .@###@@@@@@@+, ,         .@#############################@,   ,                      , , .@@@W,                          ,       :@W#############################*#*#W@: ,  ,  ,                                        
                ,   , , +@##@#@####@@,,  ,,    ,,,W########################*##*@#     ,                          ,++, ,                                  .#W##*###########################@@@.                                                 
                  ,  ,  #W#########@@,  ,  ,,   ,,@######*#@##*################@*     ,                           ,,  ,                                 , ,#W#@#####**############*######@W*                                                   
                   ,  ,+@@######@##@*  , ,   ,   ,@@######@@#*##*##############@+   ,                           ,     ,                                 , , :W@###*##################*##@@:,,, ,                                               
                   ,  +W@#######*#@@+,:*#**+.    ,*@*#####@@@*###############*#W.   ,                            ,,,                                     , , ,*@@@#####*########*##*##@W*,,   ,,                                               
                 ,   :@@########@@@W@@W@#@@WW#.  ,:W####*@@@@#*##############*#W,                                                                       ,    ,,.#@@@#**#**#####**###@W#. ,  ,  ,                                               
                  , ,@@#######@@@@@@##@#@####W@:  ,W#####W+#@*##@@@#*#########@@,                                   ,, ,                                   ,,    .*@@@@@########@@@@*.    ,  ,                                                 
                ,  ,.W#@####@@@@@@###@########@W. ,#@**#@#,*@*##@@@#*#########@@                                  ,,                                     ,  ,,,    ,:*@W@@@@@@@@#*:,  ,    ,  ,                                                
                ,  ,+@#####@@@@@@######@###@###@#, +@##@W. :W#*#@@@###########@#   ,                            ,                                        ,,    , ,    ,,..::::.,,  ,,  ,  , ,                                                  
                  , +@@#########################W. ,@@@W:, .W###@.@###*#######@*                                                                                                                                                               
                 , ,,W@#@@######################@+,,,**. ,  @@#@+,#@##########@+                                                                                                                                                               
                ,  ,,.@W@@@#####################@* , ,,   ,,+@@W. :W###*######W:                                                                                                                                                               
                 ,   .@@@#######################@@, ,  ,, , ,@@+  ,@##########W,                                                                                                                                                               
                 ,  :@@#######################@@@@#*#+:,,   ,,,, , *@########@W,                                                                                                                                                               
                ,  ,@@#####################@@@@@@#@@@@@W@#:   , ,  .W########@@,                                                                                                                                                               
                 , .W####################@@@@@###@######@@@#:,    ,,#@#######@*                                                                                                                                                                
                ,  ,W@###############@@@@@@#########@#####@W@#,  ,  +@#######@+                                                                                                                                                                
                ,  ,*@@###########@@@@@@################@##@#W@.    ,W###*#*#@,,                                                                                                                                                               
                 ,   #@@@#####################################@@,   ,*@###*##W,                                                                                                                                                                
                ,   , ,#@@##############################@@#####W@,   ,@#*###@+ ,                                                                                                                                                               
                ,  ,, ,,@@@@################################@###W*    +W@*##W.                                                                                                                                                                 
                , ,  .*@@@@@#####################################@., , #@@#@*,                                                                                                                                                                 
                  ,.*@@@@###############################@##@####@@*, , ,#WW#,                                                                                                                                                                  
                , .W@@#######################################@###@W,,  , ,.,  ,                                                                                                                                                                
                 :@@@####################################@@#######@+ ,  , , ,  ,                                                                                                                                                               
          ,  ,  :W@#@############################################@@#,                                                                                                                                                                          
        ,      .@@##@############################################@@#,                                                                                                                                                                          
        ,  ,   *W@################################################@@,,,,                                                                                                                                                                       
           ,  .@##@@###############################################W,,  ,                                                                                                                                                                      
         ,    .W#####@#############################################W,,                                                                                  ,                                                                                      
         ,    +@@###@@#@##########################################@W,  ,                                                                                                                                                                       
             ,*@#######@##########################################@@,  ,            ,,    ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,    ,,                                                                                                     
              #@######@###########################################@@::::++******####@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#####******+++::::....,,,,,,,                                                                            
         ,  , *@##################################################@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###**++::..,,,,  ,   ,                 ,     ,,        ,                    
  ,,   ,      :@@################################################@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W@@##**+::..,,  ,,            ,,   ,,,                         
    ,,   ,,,  ,@@################################################@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W@@@@@@@**+:.,,         ,       , ,,,                  
 ,,  ,, ,,   ,,#@@###############################################@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W@@@@@@@#*:.,,,   ,,,  ,                       
        ,.:*@@@W@@@#############################################@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W@@#*+.,     ,    ,                 
,   ,,+#@W@@@@@#@@@@@###########################################@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@WW#+.,    ,                   
  ,+@WW@@@@@@@W@@@@@@@@######################################@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@WW#*,,     ,               
 :@W@@@@@@@@@@@@@@@@@@@@@@##################################@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+  ,                  
,@@#@@W@@@@@@@@@@@@@@@@@@@@@@@@#########################@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W,  ,                 
,#WW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W#,                    
 .#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W#:   ,                 
, ,:*@@W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@WW@*:,    ,                 
  ,   .+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+.,    ,                    
 ,  ,  , ,.:+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+:.,,  ,,  ,  ,  ,               
,       ,     ,,,.:*#@@W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#*+:.,,              ,,                  
  ,  ,                ,,..:+*##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##*+::.,,,          ,       ,  , ,                 
                                ,,,..:++**#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##*++:..,,,,                                                   
                                ,           ,,,,...:::++***###@@@@@@@@@W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###***++:::...,,,,         ,                                                      
                                        ,             ,,    ,,,,,,,,,,,.....::::++++++++****###################################*****++++++++::::....,,,,,,,,,   ,                                                                              
                                   ,,,          ,                      ,      ,,                     ,,,                ,,      ,,,                                   ,,                                                                       
                                                              ,,                                                                                                                                                                               
                                      ,,,                                   ,,,,                                                ,       ,,      ,,                                                                                             
                                                                        ,                                                             ,,     ,,,       ,     ,,,        ,,           ,,,                                                       
                                                                  ,            ,