+++ ::::::::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+
         +++ ::::::::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::
         +++ ::::::::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++    
< +:+:+:+:+:+:+:+:+::::+++::::::+++
 
 
< ++::::::+++
 
 
         +++ ::::::::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++    
<
   
         +++ ::::::::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++    
<
  +++ ::::::::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++:
         +++ ::::::::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::++
         +++ ::::::::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++    
< +::::+::::+::+:+:+:+:+:::+
         +++ ::::::::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++    
< :+:+:+:+:+:+:+:+::::+++::::::+++
 
 
< :::::+++
 
 
<
         +++ ::::::::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+
         +++ ::::::::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++    
< :+:+:+:+::::+++::::::++
         +++ ::::::::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++    
< +
 
         +++ ::::::::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++    
<
<
         +++ ::::::::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++    
         +++ ::::::::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++    
         +++ ::::::::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:
         +++ ::::::::::+::::+:
         +++ ::::::::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:
         +++ ::::::::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++    
< +:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++
 
 
< :+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+
         +++ ::::::::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++    
< :+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++
 
 
< +:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++
 
 
+++ ::::::::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+:::
         +++ ::::::::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++    
<
         +++ ::::::::::+::::+::+:+:+:+
         +++ ::::::::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++    
< :+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++
 
 
<
         +++ ::::::::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::
         +++ ::::::::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++    
< +:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++
 
 
    rrererrerrrerrer     +++ ::::::::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++    
+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++