+++ ::::::::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++  
         +++ ::::::::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++    
            +++ ::::::::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++    
<
            +++ ::::::::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++    
            +++ ::::::::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++  
          +++ ::::::::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++::::+::::+::+:+:+:+:+:::+:+:+:+:+:+:+:+:+::::+++::::::+++  

-.-..-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.--.-.--.-.-.-.-.--.-.---.---.----.--.-.-.-.-.--.-..-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.--.