                                         :*?%SS###########@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#S?;:,                
                                         :+**?????%S##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#%*+:,           
                                          ,,::::::?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#S?+:,      
                                                  ;?%S##@@@@#####@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#%?+:, 
                                                 ,;+**??????????%%%SSS####@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#S
                                                  ,,,::::::::::;;;+++***??????S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                  ,,,,,,,::+*%#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                      ,;*%#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                              ,::+*?%#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                         ,+?S##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                        ;%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                       ,%#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#%?%S#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                       ,:;+*%S#@@@@@@@@@@@@@@@@@@@@@@#%?+:,,,:;*?%##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                            ,,:*%SS##############S?*;:,         ,,:+*%S#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                ,::;;;;;;;;;;;;;:,                   ,:;*?%#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                                                         ,:;+?%S#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                                                             ,,;+?%#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                                                                 ,,;+*%S#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                                                                     ,,;+*%S#@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                                                                         ,,:;+*?%S###@@@@@@@@@@@@@@@@@
                                                                                                                               ,,::;+**??%%%%%??**++;;
                                                                                                                                       ,,,,,,,        
                                                                                                                                                      
                                                                                                                                                      
                                                                                                                                                      
                                                                                                                                                      
                                                                                                                                                      
                                                                                                                                                      
                                                                                                                                                      
                                                                                                                                                      
                                                                                                                                                      
                                                                                                                                                      
                                                                                                                                                      
                                                                                                                                                      
                                                                                                                                                      
                                                                                                                                                      
                                               ,,,::;;;+++************+++;;::,                                                                        
                                          :;*?%%S##@@@@@@@@@@@@@@@@@@@@@@@@##S*,                                                                      
                                         *#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;                                                                      
                                        ,#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:                                                                      
                                         *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*                                                                       
                                         ,%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*                                                                        
                                          ,*#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#?:                                                                         
                                            ,;?#@@@@@@@@@@@@@@@@@@@@@@@@%+,                                                                           
                                               ,:*@@@@@@@@@@@@@@@@@@@@#:                                                                              