                                                                                                                                   
                                  .. +-- .:                                                                                        
                               :+OoO.@@@+OO                                                                                        
                              -0#0##0####O+O.                      -.                                                              
                             -o##o#######+O#0:                     -o                                                              
                            .+#0####@####O###o::                   -0+                                                             
                            +@#oo##@+####@###@@@:.                 -OO                                                             
                           +@#OO@##@o############-     .:.    .--: -00: +. ..                                                      
                          .+@0O+###O@######@##@@#o    :0@-+  .0#@@.O@@oo#- oO-:                                                    
                          +###@O##OOO0@##+@O##0##O  .o-##0+-#@o#0###+O O###o#0#OO0+.                                               
                          o###0#@#-::.o##0##@@+##o :o#O###0@#+0#####0@:O#@@:0o##+:                                                 
                          :0#0##o.     -0####0@0#00@@@######O+########@###+-#@#@o                                                  
                         .o@#o0#o       +####O-oo-##@@#O#0@#.O#@0@########:OOoO:O                                                  
                          .####o         0##-.0##@#####0-@+#+o##o0oo#####@+@@#oOO:                                                 
                         .o@###O         -0+ o0@#000####++O#00####o0######0o####@@o:                                               
                          .0###O     :.  :---oO+@0+:@@###O-#####@O##@################-                                             
                          -####@-    Oo .@#####@0:@:Oo#@@@-#++##Oo@+###############@#+       :-+-.o.--:                            
                          +#####O  o@+@ +@@.@####@o@O::--o:o  o###O+##0@#O#####O00###0.    -@#@00o##@o#O.                          
                          o#####@: -#@#o@##O0@####+-:   .:-   .-@#@0@@OO#O###0o#0O@@#@O...-@@0O####@00#0:                          
                          :+o####o: OO##########@O.       :     :o+-+O0oOOO@O:0@:0#####+-o0OoO@#######oo+:                         
                            o####@-+@@#0--o#####0.                 -:Ooo-..:. #O-@##00#@-##-+O#@##@###0#@O                         
                            -##0@@o+###@@#@#0#0@-                  . .        --+@######0##O+@@0#0+###@0#@o                        
                            .####O -###@@#@@@#@o.                                +O##0######@OO##@o##@0###0                        
                             o####0o###OO#0#0##-                                   +0o#######@0#@@0###00#@O.                       
                             .o###00###@######@:                                   .##O####@##O0O##00#@##@O.                       
                               --:.###-@###@@##-                                    @##@##+.o++:: .-+o0##@O:                       
                               :O00@##+#######O.                                    0##0##0        -o@##@##o                       
                             .+##@00#0.:0@@@##0:                                    -######:       .o#@00##-                       
                            .O#0O0O##o-@@O0-@#-                                     .0##+##+       :@#@@##0.                       
                           -@##OOO#0+-@#O#####@:                                     +@+O##O +:    .-##@o@@                        
                           +#######.:@#+0###@#O-                                     .@o#O#@O#+    .00O: -o                        
                          .@##0###@o###@@##@#@00      :@#0.                          :@@00#O0@-    .-@O##-o                        
                          :@##@###0@###o0###oo0O       -##+                          +0@Oo###o     :0##@#@0          oOO+.         
                          :########@########0ooo-    +-O##O                         -#####O#0   .. oOO00@o.      :o@@#####@:       
                          o###0O@##0@###@##@o-+@.    O####O                         +@+@####O  o+0:00Oo#O       -@#@O--O0##@-      
                          :##0+@##O+@@#0o@#0###Oo    -####-                         -@@@####@O@###0#####O     :@#0+  :-: -0##-     
                          :###@+O#0@###@@##0####O     +OO+                 .O-      .+################0o:    -@#@. .o@#0. .##O     
                          +##0.O#######O########@+                       -+:##:     +#################o:    o##- .+#O:     -@o:    
                           ##@O#####@@0+######+-o                       .0@0##o   :-.0####@##########o:    -O@o  O@-.       +#0    
                           ###O@###0O@+@O-@@#@oo.                       -#####O   -@Oo###o########@#@    :O#0. :O:           @#:   
                           0##O#@##oO#OO:@#o##0-                        .0####+    o#@###@######O0--:   :@#O.  ..          - o#+   
                           0###.+##o###+@###-                            .0#0+   :o######0:@###0.     .0#@o .O+           :@:.0@:  
                          +####-@##O##00#@0@.             :---            .-.   +@########0O###O   ---O##- .OO.           +#- o#o  
                          :OO##########-O@@O             o#@0###0o:             0#######:+@####0.+0####@- -@O            -@0. -#O  
                            +#######+#O:0O#@.            o0.   :+0##o:          O###OO#O.:.@####@#@OO##+ :@0.           .@#:  -#O  
                            O@@####O-#+O+0#0:            :#o .-oO0###@:         :@##0+#00@O0##@@#@-  +0@- -o           -0#O   -#+  
                            :.o####o0###O@##-             o############o         .0############O#o     +@O.          .+##-   .0O   
                              -#########@+#@              .0###########0          +############@#@+     -#O          O##O    o#O   
                              .########0#0#O               .###########+         :@##########@@#@@##0.   +#o       -@##-    -##:   
                               @#@####OO###@                O#########+.         .-0#@#########@-0###O.  .O@-     -@#@+    -@#@    
                               .+ +###+O####-                -######o.            +@#o###@####@+@###@0@.   0@   .O##@.   .+##O.    
                                  -###0@####o.                o@##O+              O##########Oo@###o:-#O.  +#- :O##0-    O##0.     
                                  -#@0O#####@0.               ..                  @#########+:@##O.   :#@   o@:O#@+    -@#@-       
                                  .+-O-#####@#o               +o                  O###@o-+0#O -#@.     O#-  :#+o@:    -@#-:        
                                     : @#@@###0.:.           .##:               :.0###-    :O@-::      -#0.  0#     :@#O:          
                                       +oO0#@@#O@-+-        .o##O               oO####+     .@@-      .Oo0+  +#:   -@#@.           
                                       :::+-0O@##+0@    :::@@###O              OO######@+    .O#o    +O. O@  .0o .o##-             
                                   :-oO@@+- :++O#@##+-+O@@O#####0.-.       .++-0####0+oO#o.   .@@:  :o.  O#.  o@-0##O              
                                  -#######0Oo:. oOO+o############@#@::  -+o@0#####@o     0@.   .0@:    +@##-  -##O.                
                                .-O#####@@-.O0Oo-o. ++--@#@0########0@OO@#####0##@-      +#O.   -#O   -##0@o  -##.                 
                              .0########O  0o0#######0-..O00###+##O0#####@##O--@o.      .0@0@.   o#::@#@- OO  -##.                 
                              +##0####@+:.+#########+0#0:.-:--@O##oO##0O+:Oo-+0o        O0-:@o   .0oO#@: .0O  +##                  
                            .@###O0####+:@######0+O##@###@+.  .-:O+o+O-oO0o@#O.       -@o    O-   +#0-   +#@O@##o                  
                    .:      +##########@@######O.-#########0-   Oo:  o###@##o.       -@O     O@   .#O   .@####@+.                  
                 -o0#####O+O##########O.0#####- O###O#000@####0@##@O##0@##O:       .@@.      O#o   O#  O##0+:                      
                 ##+@################O.O####0oo+@@##O#@@-@########@######0.       -0o:      .@#@:  +#:-##O.                        
              .0###@0#@0#########@O00 -#####@#o##OO0##@+@##@####-#@####@:       .o0-       o@+.@O  :@##@-                          
            .-O##################0..:-@######0-##@+O00#####@####O#####o:       .O0.       -0+  o@   O##-                           
        -O@#####o#@OOO0#########OoO .######o#++#####O###O@#@########0-        O@-       .O-    -#:  +#+                            
        +#######00:   .+0###@@##O .-0####O0o#0O#####0#@+o00+#######0.       .o0-       .O:     .0-  o@:                            
        .@###0+O.:oOO+-: +0#@:.-+..@#####o###@####@@#O  .-- -####@-        -0o        ++       .0O-0#-                             
       .O######-+@####0+  -##@:   -###@##@###@####OO#+      .O##@-        +@-        --       .0###@0                              
       +O@####O@#####-:#0..O@#@+-:.#@@+@o#@00#####-0       -@#@o        -0o.       :o.       +@#@Oo.                               
        :@##########O-@0.-o :o@##@O#@oO@O0:O+#####@0     .o@##-        :@O        +o.       -000-                                  
       -@#####0#####O###o+#O:.-###########O. O:@@+..    o@##o.       .00.       -O.       .@#                                      
      .@#####0O#########0+@#@O+############0:+ O+       ##@o        :OO.       .O-       -0#@                                      
      :#O-00#0O0o@0########@#######o0########@0:      --#O.       .+0-        o+        +##-                                       
       #o0O@##@0@+o#####@@#@#######0@##########O    .o##+.       .O@.       .+-       .+#@o                                        
      :##########@######@-@###############0#####O..o##O:        o0-        -o.       -@##.                                         
      .######0########@##-O@@#############+@#####OO##O.        -0-        oo        o@###.                                         
       +####O#########O####@o##############:@######@.        :0o        +O.       -0#######-                                       
       .0###@#####0##Oo#######O@#######0o##oO######+        -@-       .oO.       -@###0O###o:                                      
        .@####0###0##00######@O########0@##+o###O@#O      :OO.       -@o       .0#####. -+###O                                     
         :o##O:###############0########+:@#o:@## o#@     :@0.       -@-       -0######OO.+o0#o.                                    
          -##+0###@#####################o+##:+##+o##:  .O@-       .+@:.-     -##@######@. +###O                                    
          .+@#####0#####################@o@#O-######- :O0-       .O@000#o.-:o@#00#######0++###+                                    
             +@0OO0#####o######0-0###########@#0####++@+    .-o+o@##############0########o:-00:                                    
              :.  .o@###o######@+-+############@####@@-     +############################+.:O#@:                                   
                     :--+. ooo###0.:@###############o.   :@@#@####@O####@0####@0###########@0##+                                   
                             ####@-O#########@@###O:   -###0#####0@OO###@+:0#@+o####O0#####+.##0:                                  
                             0####@##++0@########O.   :0###0######@#0#####+0##@@####+@#####O-0#:                                   
                             ######o.   .@o+@o#@:   .o0###########0@#0#+O#o###OO####@######:0#O                                    
                             +o##@o      :. -OO:    :@###########@+@O+#0-#o###@@#########@00@#O                                    
                           :+@#0+          +@+      O############0@o0###-##+0@###@######O#0#-#-                                    
                        .-o@#@o.         .+@:      .+@#######@-0##oO####O##-O###########-00#O#-                                    
                       :@####.          :@O.       -#@######@-O######@O###@:@#####00OO##@@+##0.                                    
                       -#@oo0O.        -@+.         O#######:-#######0@###o:@0####OOoO##o#@@@O                                     
                       o#-   O0      :OO.         o###O+##@-O#############+0-O####OOoO:o:##-oo                                     
                       O#:   .0.    .@O.          0###0@##O.@@###@########@#O####0@@@@  :##-..                                     
                       @#     o-  .O0.          .O@#######@0-@@0@0##########@#@-@:O#::.0@O-.                                       
                       #0     -- :Oo.          .O0:o###@@@#oo#o@@o#########Oo#+.O.0+-oo##-                                         
                      +#+     o++o:           -@-  :@###:0- @oO#0@@#@#####O @O +@@#@@#@+#                                          
                      o@:    .0-.            .0o    O###0#  #O@###@#@###O#o-O.o@######+ -                                          
                     :@+     O#-+OO-:       o0.     :O##OO#0O+-o0@OO++:-##0#0@#####@-@                                             
                     o#.    .##@OOO@@.     -@-     .@#@o..-.    .:      +@##########:+                                             
                    .#o    -@o:     -0.  .oO      +@#@.                 -0##########                                               
                    +#-   .0o        #-  O@.     -##@-                  .o##########:                                              
                   :@o               #-.OO.    .0##O                      :@########-                                              
                   o#:              :@:o@.     o@0O.                    +- O########-                                              
                  :#0               oo :.    .O#O                       :0 .@#######o:                                             
                  o#+              -@.      .O##-                        : .o########@+.                                           
                 -#+             .o#0:     .@#@-                        --o@.O#########@+                                          
                .O@.            .0###@O+:  O##-                        .####-.##0@Oo@###@.                                         
               .O#+            :O:     :OoO#@-                          @##0@@##@O..o####o                                         
               +#O.                  :-+0###:                         :oo00@++@#O-  :OO0@.                                         
              .#@.               .-O@####@O-                           O##..0O0+ .#@OO. 0O.                                        
              o#+              -o0#0Ooo#O@:                           o0##0+0#@:.oO:    0#o                                        
             o#+           :+0###O@-O0O+ #-                          .###OO0@-+-@@0#-   #0.                                        
            .@@.         :o@#00##o@@###-:@+:                         +@@@o -0o##@###OO- 0@:                                        
           .0@: :++   :OO#@+..O########O0o0-                        .O#00####O@#-@###oo###@:                                       
           O#0+O@@- .o@#0+:  +###########+#.-o                    :O:.o@####@+##O#@O@0Oo###+                                       
          -#####O.+0#@o.     o0#########00@-O                    +:O. .0##O-0O##@#@O@0-:O#O                                        
         -@####@-O#@O:        .############@o                 :+ -0@0O0###O+#########Oo@@#0                                        
        -########@o.          o#####0o####0@:                 O# .#0####@0@@######0+@#OO###-                                       
       -@######@o:           -@@####OO#@##@@-.  .- .     .. :.O#.O####O+@0########0::oOo###o                                       
      -######0+             :##0O0###@#+#####00#@@o0-.. .-@-O@0#+####@:-############+.-@##0                                        
     .0####@o.              :##+ O0###@-#@@######@+#OoO.0##@0###+####o-@######@######0O@#00                                        
    -####@o.                :##--O.###o-#@O####0##0#oO#+########o@########O###O#######0-#0+                                        
   .0###0:                 .O##O00O0O#--#0#####O0###--@+###0##@#####0O@@@@-###O##########+                                         
   o##0:                   @###ooO+  O00#OO####0o###-oO.@####0+@###0:o###0O#######@######O                                         
  .@#+.                    -o##-@++   .@##o#####+###0@O-#####O0###@:+#####0##############O                                         
  :+.                      .0@@@+-:o+   -####################@#O##. 0@###0#########O@@0##@:                                        
                           :0##+.0#..+-+ +@+############0O########O:#O###############O-##0.                                        
                            :##+0##+0##+  : @###########O-@+###0##+o#########0#@#0##+O-0#O                                         
                             ########@O:-:  -+@####@O###O-0o#####@+######@##@o##O@#@O#:O#O                                         
                             ###@###0: .0@o+o-o@####:@##Oo#######@@######@##O-##@###:O-0#0.                                        
                             0@+O##-.-o0O#######0+OO0@########@O##########00o-######+.####-                                        
                             OO+###o0#@OO0#######O  +O-O######Oo#########0O+O-######@O####-                                        
                             #o####0@0#+.oo0######0+o@O-######O#########@oO #0##@#######0@-                                        
                             ###O#0+O0@.+0:-@##########+######0#########O-O ###0#######@O:.                                        
                             O@0o#+00##0#@@@###########O################0O#-#0#@####0##o                                           
                              +@@#0+O#@#@oo-@##########O###################-#0######+0#@                                           
                              -####o#oO#@0-@###########O###################O######0@+-0-                                           
                              -######+###O :0##########o#############@####@#######:+O-O                                            
                              .+-O@#OO##@OOo+0O@#######-O###########O.####O#00##@#O.@@o                                            
                                 o##@0o#######O@#######+O###########:o###@O#0o##0@@O##-                                            
                                 .O#0+O0###############OO##########@@@###O0##@##@@-:@#.                                            
                                 :@0:@@0O##############OO###########0+###oO#######- 0#                                             
                                  :##O: :@#############@o###########--###-O#######-:@#                                             
                                   0#-.  0##############o###########Oo###+@#O#####0oO#.                                            
                                   O##o :#######00######Oo##########O0##0#@#0#####@###-                                            
                                   -0#@-O@##############O+########0#o###o#O###O#O0O#@0-                                            
                                     +##O00###-O########0ooO#######@O#0#+#@###:0+O##O                                              
                                     -##@#@@0#o:O#######O:+@########@#o@OO#0@#-oOO##0.                                             
                                     :@##@@.+###OO######O +######0###00OO 0Oo#O#@O00O                                              
                                      +o@@@O@###########@:O#####@@#####@O 0O-#O#oo+OO                                              
                                       .0#o-#o :0########-##############0.#--#:0 -o0o                                              
                                        -#o OOO+:o#######+##########O####-#-:@ O:-##-                                              
                                         0#O0#@@#00######o@#########o####o#0 O-0oO##:                                              
                                         -@##@@+0########-O#########0#@@#0##.O@#0@##.                                              
                                          :#@@##o@#######-O###########o##@#+0@@0O###:                                              
                                           #OO###########-O###########o#@O#-0@-o:+#O.--                                            
                                      .oOO@#@oO##########-O################0#@0####0@@-----                                        
                                    :O0#######0##########-O#####O#######oo#################+                                       
                                 +0######--0#############oo@###O-######@@@########0o+0@######o                                     
                              :--0#######-+##############O.:###@+#################: +@###O-O00-                                    
                            -@###@O+-+@@+--o-0###########@. ####@###########@@####O@@O----O:  :00OO.                               
                           o@##+-:    :00OO@+-############o #######@####0######0##@#-:.  :o: ::.o##:                               
                         -@#@-O@#######OOo@##O+###########@:############@@####0##Oo###@0#o:-0#@O0#O:                               
                         O##O -#####00#OO@##@#0############-############o0#@O#@#O-@##@@##0o@#@+.oO0@o.                             
                       .+########@@#--0  O#################o@@#############o@###@##########@O#@OO@# -O.                            
                       O#0@#########o0#OO@#################O:O#####@##@@##0O#######0-O#@+#Ooo-:  O#OO#o                            
                     .O##################################### O####@@##0###@#######0:0#@:-OOO@######- o#-                           
                     O##oo################################## O####+0##0#@##@@###O0o-##O:#########@+  :@@:                          
                     ##o0########@##########################-O####0##0O####@####O#o@O@0+##@O0#####O.o-0#O                          
                    .############@####@#####################+o#####0#+#####0###0###O@#####@-.##- o@o-@##O                          
                    +@Oo@####@@#######@0####################O-#####o#O#####@###0###@#######@0##-.oo@:-@#O                          
                   :@0+####0###############0O################@#####@#############0###########0#@@#O#0O@@O                          
                   -######O0###############@0#########################@#####o0###############0###00###0o@                          
                   o#++##+.################@+@##############0+#0############@#@####OO#######0OO@@-O######:                         
                   o#@@##.+#################0@#############@: 0@##############0####@0########OO##oO######-                         
                   -##O#+o@###########OO################0o:     .o###############@###########@@######@@##-                         
                   .0#@#0+O#################O--+OOOOOOO+.        .+OOOO0#############################0@##:                         
                    .@###0@###############o:                            .-+O@##########################o                           
                     :O##############O+OOo.                                 :+@#0#####################O.                           
                        :0########0+-.                                         :@#@o0###############0:                             
                         .--oOOo--.                                             :-O:.+@############O.                              
                                                                                       .-oO------:                                 
                                                                                                                                   
