@@@@@@@@@@@@@@@        @@@@@@@                                                                                             
                                                                             @@@@@@@@@@@@@@@        @@@@@@@                                                                                             
                                                                      @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@                                                                                        
                                                                @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'+'+@@@@@@@@@@.                                                                                    
                                                                @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@''''@@@@@@@@@@.                                                                                    
                                                              :@@@@@@@@@@@@@@@'++'+'+'''+@@@@@@@@@@@@@@@@''+'+@@@@@@@                                                                                   
                                                              :@@@@@@@@@@@@@@@'''''+'''''@@@@@@@@@@@@@@@@'';';@@@@@@@                                                                                   
                                                            .@@@@@@@+'++'+'+'+'++'+'+'++++'+'+'++'@@@@@@@@@+'+'+@@@@@@@@;                                                                               
                                                           @@@+''';+''@@@@@@@@@@'''+''''''''+''''''+'@@@@@@@+''''''#@@@@@@,                                                                             
                                                           @@@#'''+'''@@@@@@@@@@+'+'+'''++'+'+''''+'+@@@@@@@'+'++''@@@@@@@,                                                                             
                                                         @@@#'+@@@@@@@@@@@@@@@@@@@@@@@@@@@@:::::::::;''''@@@@@'''''';@@@@@,                                                                             
                                               @@@@@@@@@@@@@@@@@@@@@@@;;;;:;:;;;;;;:;:;;;@@@@@@@+;;:;:;'++'@@@@@+++'+@@@@@@@`                                                                           
                                               @@@@@@@@@@@@@@@@@@@@@@@:::::::::::::::::::@@@@@@@'::::::''''@@@@@'''';@@@@@@@`                                                                           
                                         #@@@@@@@@@@@@@@@@@@@@@@;:;::;;;;::;:;:;;:;:;::;;;::@@@@@@@@;:;;:''+'+@@@+''+''@@@@@@@                                                                          
                                         #@@@@@@@@@@@@@@@@@@@@@@::::::::::::::::::::::::::::@@@@@@@@:::::'';';@@@+'';''@@@@@@@                                                                          
                                    @@@@@@@@@@@@@@@@@@@@@@@@#';;;:;:;;;;;;:;:;;;;;;:;:;,,,,::;;;+@@@@:;;;;;+'+'+@++'+'+@@@@@@@                                                                          
                                #@@@@@@@@@@@@'''@@@@@@@@@:;:;::::::::::::::.,,,..,.,.,.,,.,.,.,,,:::@@@:::::+'''@@@+;+'@@@@@@@@@                                                                        
                                #@@@@@@@@@@@@'''@@@@@@@@@':';;:;::;:;:;;:;::,,,,,,,.,,,,,,,,.,,,:;;:@@@:;:;;'+'+@@@++''@@@@@@@@@                                                                        
                              '@@@@@@@@@';+''''@@@@@@@@';:;::::::::::::,,.,.,.,..,.,.,..,.,.,.,..,.,:@@@@:::::'''+@+;'''+@@@@@@@                                                                        
                           @@@@@@@@@++++'+'+'@@@@@@@+'+';;:;:;;;;:;:,,,,,,.:.,,,,,,.,,,,,,,:.,,,,,,,::;;;@@;:;:;+#@++'+'#@@@@@@@       @@@@@@@@@@@@                                                     
                           @@@@@@@@@''''';'''@@@@@@#''';;:::::::::::.,..,.,.,.,..,.,.,..,.,.,.,..,.,.::::@@:::::'+@+;+''+@@@@@@@       @@@@@@@@@@@@                                                     
                          @@@@@@@@+'''++'+'@@@@@@@+'+';';;:;:;;:;::.,,,,,,,:,,,,,,,.,,,,,,,,.,,,,,,.,.,;:;;@:::;:'''+'''#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@                                               
                        @@@@@@+''+'''''''@@@@@@@'';';;;:::::::::.,.,.,..,.,.,.,..,.,.,..,.,.,.,..,.,.,.,.:::@@:::;'';'''+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@                                            
                        @@@@@@#'+'+'++++'@@@@@@@+'+'''';;;:;:;;;,,,.,,,,,,.,.,,,,,,.,,,,,,,:.,,,,,,,:,,,,;;;@@:;;'+'+'+'#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@                                            
                     ;@@@@@@@''''+'''''''@@@@@@''+:;;;;,,:::::,,,,.,.,..,.,.,,,..,.,.,.,,.,.,.,,.,.,.,.,.,,:@@:::::';+''+@@@@@@@@@@@@::::::::::::::@@@@@@@@@@@@@                                        
                     ;@@@@@@@++'+'+'''++'@@@@@@'+'';';;:,;:::;:,,,:.,,,,,,,:,,,,,,,.,,,,,,,,.,,,,,,.,.,,,,,;@@:;;:;'+'''#@@@@@@@@@@@@:;::;;;:::;:;:@@@@@@@@@@@@@                                        
                    @@@@@@@''''''+''''''@@@@@''':;:;;:.,:::::..,.,.,.,..,.,.,.,..,.,.,..,.,.,.,..,.,.,.,..,:::@@:::';@@@@@@@;::::::::::::::::::::::::::::@@@@@@@@'                                      
                  @@@@@@@@'+'++'+'+'++@@@@@+'++;';';,,,:;;:,,,,,,,,.,,,,,,.:.,,,,,,.,,,,,,,:.,,,,,,,:,,;;,,,:;:;;;;#@@@@+;;;:;:;;;;,,.,,,,,,,:.,,,,,,:;:;;;;@@@@@@@                                     
                  @@@@@@@@'''''''+;''+@@@@@'''';:;:;.,.,:::.,..,.,.,.,..,.,.,.,..,.,.,..,.,.,.,..,.,.,.::.,.:::::::#@@@@+::::::::::,.,.,..,.,.,.,..,.:::::::@@@@@@@                                     
                 @@@@@@@'+'''++'+'+''+@@@@@+''''':,.,,,:;,.,,,,,,,:.,,,,,,,:,,,,;;';';;;';;';';;:,,.,.,;:,,,:::;:;:'+'':;;:;:;::;;,::,,,,,,,,,.,,,,,,.,.,:;:;;:;@@@@@                                   
                 @@@@+''';'''''''+''@@@@@'+'';;;.,.,.,:::.,.,..,.,.,.,..,.,.,.;;;;:;:;;;;;;:;:;;;;.,.,.::::.;::::::';:::::::;:;;:::,.,.,..,.,.,.,..,.,.,.,:::::::;@@@@@                                 
                 @@@@#'+'+'+'++'+'+'@@@@@+'+'';;,,:,,:;;;,.,,,,,,,,.,,,,,,.,.,;;''';''';;''';''';;,,:,,;;;;,;':;;;;'+:;;;;;;;';';;;,,.,,,,,,,:.,,,,,,,:,,,;;;;:;:+@@@@@                                 
               @@@@@''''';'''''''+''@@@@@'+'';;;.,.,.,:,,.,.,..,,,.,.,..,.,.,;,..,.;:';;;;':;:;;;;;;.,.::::.':::::::::::::;:';::::.,.,.,,.,.,.,.,.,,.,.,.,,.:::::::@@@@                                 
               @@@@@++'''+'''++'+'+'@@@@'+'';;;,,.,.,::,,,.,,,,,,,:.,,,,,,,:,,;;;;';';;;;;;';';;;;':,.,:;:;;:''+;:;:;::;;;'''+:;,,,,,.,,,,,,,,.,,,,,,.,.,,,,,,:::;:;:@@@@                               
               @@@@@''''';'''''''+''@@@@';+:;;;,.,.,.,:,,.,.,..,.,.,.,..,.,.,.;;;;:;:;;;;;;:;:;;;;:;.,.:::::;:'':::::::::;;'';::,..,.,.,..,.,.,.,..,.,.,.,..,.:::::::@@@@                               
             ;@@@@+'++'+'+'+'++'+'+'@@@@'+''',,,,,:,,,,,,,.,,,,,,,,.,,,,,,.';';;''';''';;''';''';;';',,,,;;;'+'+;;;:;:;;'+'+;;,,,,,,,.,,,,,,,:.,,,,,,,:,,,,,,,.,:;;;;@@@@@;                             
             ;@@@@''''''';'''''''+;'@@@@';':;..,.,.,.,..,.,.,..,.,.,.,..,.,:;;;;;;:;:;;;;;;:;:;;;;:;:,.,.:::+'''::::::::;'''::,.,..,.,.,..,.,.,.,..,.,.,.,..,.,.:::::@@@@@;                             
             ;@@@@''++'''+'''++'+'@@@#++'+'';,,,,.,.,,,,,,.,,,,,,,:.,,,,,';':''++'+'+'''++'+'+;;';':'.,,,;;;'+;':;::;:;'++'',:,,,,,,,.,,,,,,,,.,,,,,,.,.,,,,,,.,,:;:;:;@@@;                             
             ;@@@@''''''';'''''''+@@@+''';+:;..,.,.,.,..,.,.,..,.,.,.,..,:;:;;'''''+''''''';+';;;;:;:,.,.:::';;;:::::::''''',.,.,..,.,.,..,.,.,.,..,.,.,.,..,.,.,,:::::@@@;                             
           @@@@@@'+'++'+'+'+'++'+'@@@#++'';,,,,,,,:,,,,,,,.,,,,,,,,.,,,:'';';+'++'+'+'++++'+'+'++'+'',,,,;;;'+'+;;;:;'+'++'';';';;''';''';;,,:.,,,,,,,:,,,,,,,.,,,,;;:;:;@@@                            
           @@@@@@+''''''';'''''''+@@''''':;.,.,,.,.,.,,.,.,.,..,,,.,.,;;;'';'''''''+''''''''+''''''+',.,.:::+''''''';+''''':;:';;;;':;:;;;;;;:;:;:,,.,.,.,,.,.,.,..,,::::@@@                            
           @@@@@@:''++'''+'''++'+'@@''++',.,,,,,,.,.,,,,,,.,,,,,,,:.';';;';':';;;;+'+'''++'+'+''''+'+'+,,:;;'+'++'''+'''++;';''''++'+'+'''++'+'+'';;':'.,,,,,,.,,,,,,,::;@@@                            
           @@@@@@;''''''';'''''''+@@'''''.,.,..,.,.,.,..,.,.,..,.,.,:;;;;:;:;;;;;;'+''''''';+''''''';'',.:::';'''''';''''';:;:'''''''+''''''';+'';;;:;:,.,..,.,.,..,.,.::@@@                            
           @@@@'+;+'++'+'+'+'++'+'@@++++':.,,,,,,,:,,,,,,,.,,,,,,,';';'''';';''++'+'+'++++'+'+'++'+'+'+;;;;;'+'++++'+'+'++'+'+'+'++'+'+'++++'+'+'++'+;';',,,,,.,,,,,,,,:;;+@@@                          
           @@@@';;''''''';'''''''+@@'''''.,.,..,.,.,.,..,.,.,..,.,:;:;;;;:;:;;''''''''''''''+''''''+;'':::::+''''''';+''''''';'''''''+;'''''';''''''';:;;,..,.,.,..,.,.:::'@@@                          
           @@@@;':''++'''+'''++'+'@@''++',.,,,,,,.,.,,,,,,.,,,,,,,':';';;';+'@@@@@@@@@@'++'+'+''''+'+'+;:;;;'+'++'''+'''++'''+'''++'+'+'''++'+'+';;;;::.,,,,,,.,,,,,,,:.,;+@@@                          
           @@@@;:;''''''';;''''''+@@'''''.,.,..,.,.,.,..,.,.,..,;;:;:;;;;'';''''@@@@@@@@@'';+''''''';''::::;';'''''';'''''''';'''''''+''''''';+;:::::::::,..,.,.,..,.,.,.:::@@                          
           @@@@;';+'++'+'+;+'++'+'@@++++':.,,,,,,,:,,,,,,,.,,,,,';';';'''+'+'+'+@@@@@@@@@+'+'+'++'+'+'+;;;;+'+'++++'+'+'++'+'+'+'++'+'+'++++'+'+;;;;;:;:;,,,,,.,,,,,,,,.,;;;@@                          
           @@@@;:;''''''';'''''''+@@'''':,,.,.,,.,.,.,,.,.,.,..,;;:':;;;''';'@@@@@@@@@@@@'''+''''''+'+'::::'+''''''';+''''''';'''''''+''''''''+''''''+'+'',.,.,.,..,,,.@@,,:@@@@                        
           @@@@;':''++'''+:''++'+'@@''++:,.,,,,,,.,.,,,,,,.,,,:;';':''@@@@@@@@@@@@@@@@@@@@@@@@''''+'+'+'':;+'+'++'''+'''++'''+'''++'+'+'''++'+'+''''+'+'+''';'.,,,,,,,:.,@+;@@@@                        
           @@@@;:;''''''';;''''''+@@'''':.,.,..,.,.,.,..,.,.,.:;;;:;''@@@@@@@@@@@@@@@@@@@@@@@@'''''';''''::;';'''''';'''''''';'''''''+''''''';+''''''';''''';:,.,..,.,.,.@+:@@@@                        
 @@@@@@@@@@@@@@;';+'++'+'+;+'++'+'@@++++::.,,,,,,,:,,,,,,,.,,,:'';';@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+'+'+'++'+'+'++++'+'+'++'+'+'+'++'+'+'++++'+'+'++'+'+'+'++;';',,,,,,,.,@@@;;@@                        
 @@@@@@@@@@@@@@;:;''''''';;''''''+@@'''':.,.,..,.,.,.,..,.,.,;;;;;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;'''''''+''''''';+''''''';'''''''+;'''''';'''''''''''''''';:;:.,.,.,.,;@::@@                        
 @@@@@@@@@@@@@@;':''++'''+:''++'+'@@''++:,.,,,,,,.,.,,,,,,.,,';;''@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+'+''''+'+'++'''+'''++'''+'''++'+'+'''++'+'+''''+'+'+''''+:'';,,,,:.,,'@;:@@                        
 @@@@@@@@@@@@@@;:;'''''';:;''''''+@@'''':.,.,..,.,.,.,..,.,.,;;;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'''''';';'''''';'''''''';'''''''+''''''#@@@'''''';'''''';;:;:.,.,.,.,;@@@@@                        
 @@@@@@@@@@@@@@;';+'++'+;';+'++'+'@@++++::.,,,,,,,:,,,,,,,.,,'''@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'+'++'+'+'++++'+'+'++'+'+'+'++'+'+'++++@@@#'++'+'+'+'++'+;';;,,,,,.,,'@@@@@                        
 @@@@@@@@@@@@@@;:;'''''';:'''''''+@@'''':,,.,.,,.,.,.,,.,.,:;;;;@@@@@@@@@@@@@@@@@@@@@@@@@@@@+'''#@@@@+''''''+''''''';+''''''';'''''''+'''@@@@@+''''''+'+''''''+';;;,,,.,.,;@@@@@                        
 '++++'#'+'@@@@;':''++'';':''++'+'@@'';;:,.,,,,,,.,.,,,,,,.';''@@@@@@@++'''+'''++'+'+''@@@@@@@''''+'@@@''''+'+'++'''+'''++'''+'''++'+'+@@@@@@@@@@@@'+'+'+''''+'+;';,,,:.,,'@@@@@@                       
 +''''+''''@@@@;:;'''''';:;''''''+@@';:::.,.,..,.,.,.,..,.,:;;+@@@@@@@''''';'''''''+'''@@@@@@@''''''@@@'''';';'''''';'''''''';'''''''+'@@@@@@@@@@@@''';'''''';';;;;,.,.,.,;@@@@@@                       
 '++++'+'#'@@@@;';+'+''';';+'++'+'@@+';;::.,,,,,,,:,,,,,,';''@@@@@+'+'++'+'+'+'++'+'+'++++'@@@'++'+'+'+'++'+'+'++++'+'+'++'+'+'+'++@@@@@@@@@@@@@@@@@@@@'+'++'+'+;'',,,,.,,'@@@@@@                       
 @@@@@@@@@@@@@@@@;:;';;:;:;''''''+@@';:::.,.,..,.,.,.,..,:;@@@+''';+''''':;:;;;;;;:;:;;'''''+''''''+;'''''''+''''''';+':;'''';'''''#@@@@@@@@@@@@@@@@@@@@@'''''+'';;;;,.,.,;@@@@@@                       
 @@@@@@@@@@@@@@@@:''+';';':''++'+'@@';;;:,.,,,,,,.,.,,,,,':@@@#'''+'''++'';':'';;;';';;'++'+'+''''+'+'+''''+'+'++'''+'':'+'''+'''++#@@@@@@@@@@@@@@@@@@@@@''''+'+'';;',:.,,'@@@@@@                       
 +''''''''+@@@@@@;:;';;:;:;''''''+''@+:::.,.,..,.,.,.,.:;@@@#''''';':;;;;:;:;.,..,.,.,..,.,;+''''''';'''''';';'''''';:::::::::::::@@@@@@@@@@@@@@@@@@@@@@@@''';';';;;;,.,.,;@@@@@@@@;                    
 '+'++'+'#'@@@@@@;';+''';';+'++'+'+'@+;;::.,,,,,,,:,,,,;;@@@@++++'+'';'''';';,,,,,,.,,,,,,,+'+'++'+'+'+'++'+'+'++++'+:;;;;;;:;:;;;@@@@@@@@@@@@@@@@@@@@@@@@++'+'+''''',,.,,'@@@@@@@@;                    
 +'++'''+'''+#@@@;;;';;:;:'''''''+''@+:::,,.,.,,.,.,.,;#@@@''''';;:':;;,,.,.,,,..,.,.,.,,.,.::'''''+'+''''''+'''''':::::::::::::::@@@@@@@@@@@@@@@@@@@+'@@@''''+'';;;;,.,.,..@@@@@@@;                    
 '++++'#'+'++#@@@:';+';';':''++'+'+'@+;;:,.,,,,,,.,,';'''+'';';;';':,,,,,,,:,,,,,,,.,,,,,,,,.,;:''+'+'+''''+'+'++'';;::;;;;::;:;:;;:;:;::;;;'+@@@@@@@@@'+@@@'+'+'';;',:.,,,,@@@@@@@;                    
 +''''+''''''#@@@;:;';;:;:;''''''+''@+:::.,.,..,.,.,;;''';':;;;;;;:;.,..,.,.,.,..,.,.,..,.,.,.::;''';'''''';';''''':::::::::::::::::::::::::';@@@@@@@@@''@@@';';';;;;,.,.,..@@@@@@@;                    
 '++++'+'#'++#@@@@';'''';';+'++'+'+'+';;::.,,,,,,,:,''++'';';''',,,.,,,,,,.:.,,,,,,.,,,,,,,:.,,,:;+'+'+'++'+'+'++++'+:;;;;;;:;:;;;;;;:;:;;;;:;'#@@@@@@@'+'@@'+'+'','',,.,,,,@@@@ @@;                    
 +'++'''+'''++'@@@:;;;;:;:;''''''+;':::::.,.,..,.,:;''';;:;:;;:,.,.,.,..,.,.,.:::::::::::::.,.,..,'+;'''''''+''''''';+'';::::::::::::::::::.,.,,;;;@@@@@@'''''+'';:,.,.,.,..@@@@ @@;                    
 '++++'#'+'++++@@@''';;';':''++'+'+';:;;:,.,,,,,,.';+''';':''':,,,:.,,,,,,,:,,:;;:;:;::;;;:,.,,,,,+'+'+''''+'+'++'''+'''';:;:;::;;;;::;:;:;,,,.:;;;@@@@@@''''+'+'';,,,:.,,,,@@@@ @@;                    
 +''''''''+''''@@@:;;;;:;:;''''''+''::::,.,.,..,.,;'';;;;:;:;..,.,.,.,.:;'';'''''''+''''''';::::;''';'''''';';'''''';'''''''';'':::::,.,..,.,.,.,,;;:@@@@'''';';';:,.,.,.,..@@@@ @@;                    
 ;';;';';';';'+@@@@@'''';';+'++'+'+';;;;,:.,,,,,';+''''';';,,,,,,,,.';'''+'+'+'++'+'+'++++'+'+'++'+'+'+'++'+'+'++++'+'+'++'+'+'+'+;,,.,,,,,,,:.,,,,;';'@@@++'+'+'++,,,,.,,,,@@@@                        
 ;;;;;;:';;;;''@@@@@;;;:;:'''''''+''::::,.,.,.,,:''';;;;;:;.,..,,,.,:;;;''';'''''''+''''''''+''''''+'+''''''+''''''';+''''''';'''':,.,.,,.,.,.,.,.,;:':@@@''''+'''',,,.,.,..@@@@                        
 ;';;';';';++++@@@@@';;';':''++'+';::;;;,,.,,,,,':';,,,,,,.,,,,,,,':''++'''+'''++'+'+'''++'+'+''''+'+'+''''+'+'++'''+'''++'''+:;:;;,,.,,,,,,,,.,,,,,,.,;'@@@'+'+'++,,,:.,,,,@@@@                        
 ;;;;;;;;:;''''@@@@@;;;:;:;''''''+::::::,.,.,..,:;:;.,..,.,.,..,.,:;''''''';'''''''+''''''';+''''''';'''''';';'''''';'''''''';:::::,.,.,..,.,.,.,..,.,.;;@@@';';''',.,.,.,..@@@@                        
 @@@@@@@@@@@@@@@@@';@+'';';+'++'+';:;:,,,:.,,,,,';:,,,,,,,.,,,,,';+'+'++'+'+'+'++'+'+'++++'+'+'++'+'+'+'++'+'+'++++'+'+'++'+;;:;;;,,,.,,,,,,,:.,,,,,,,:,,''';''+'++,,,,.,,,,@@@@                        
 ;;;;;;:;;''++'@@@:;@';:;:;''''''+:::,,.,.,.,..;.,.,.,..,.,.,.:;;;;+''''''';''''''''''''''''+''''''+;'''''''+''''''';+''''''';:::::::::::::::::,,..,.,.,.,;;;:;:''',.,.,.,..@@@@                        
 ;';;';';''++++@@@''@+;';':''++'+';:;:,,,,.,,,,',.,.,,,,,,.,,,:;''+'''++'''+'''++'+'+'''++'+'+''''+'+'+''''+'+'++'''+'''++'''+::;;;;::;:;:;;:;:;,,,,,.,.,,;';':''++,,,:.,,,,@@@@                        
 ;;;;;;;;:+''''@@@:;;;;:;:;''''':::::,,.,.,.,;;;.,.,.,..,.,.,.:;'';'''''''';'''''''+''''''';+''''''';'''''';';'''''';'''''''';:::::::::::::::::::::,.,.,.,..;:;:;;';;,.,.,;@@@@@                        
 ;';;';';''++#@@@;';'''';';+'++';:;:,,,,,:.,,';;,,:,,,,,,,.,,,:'+'+'+'++'+'+'+'++'+'+'++++'+'+'++'+'+#@@@@@@@@@@@@@@@@@'++'+'+'+;;;;;:;:;;;;:;:;;;;;;,:,,,,,,,;';'''',,.,,'@@@@@                        
 ;;;;;;:';''+#@@@;;;;;;:;:''''''::::,.,.,.,.,;;;.,.,.,,.,.,.,.:;'';+''''''';'''''''+''''''''+''''''+'##@@@@@@@@@@@@@@@@'''''';'':::::::::::::::::::::,.,.,,.,.;:;;;;;,.,.,;@@@@@                        
 ;';;';''+'++#@;':@@';;';':''++';:;:,,,,,,.';;;,,.,.,,,,,,.,,,:;''+'''++'''+'''++'+'+'''++'+'+''''+'@@@@@@@@@@@@@@@@@@@@#+'''+'''++'+'+'''++'+:;:;:;;:;.,,,,,,.,;';;',:.,,'@@@@@                        
 ;;;;;;;'''''#@;:@:;;;;:;:;'''''::.,..,.,:;:;;;,.,.,.,..,;'.,.:;'';'''''''';'''''''+''''''';+'''''@@@@@@@@@@@@@@@@@@@@@@@@+'';'''''''+''''''';+''''::::::,..,.,.,,;;;,.,.,;@@@@@                        
 ;';;';''#'++#@;'@';'''';';+'++';:,,,,,,,';''';,,,:,,,,,,+',,,:'+'+'+'++'+'+'+'++'+'+'++++'+'+'++'@@@@@@@@@@@@@@@@@@@@@@@@++'+'+'++'+'+'++++'+'+'++;;:;:;,,,,,.,,:''',,.,,'@@@@@                        
 ;;;;;''+''@@#'@@@:;;;;:;:;''';:::.,..,.,:;:;;;,.,.,.,..,'+';.:;'';+''''''';''''''''''''''''+'''''@@@@@@@@@@@@@@@@@@@@@@@@@@';'''''''+;'''''';''''''''':::..,.,.,..;;,.@@@@@@@                          
 ;';;''#'+'@@+'@@@''';;';':''+';::,,,,,,,';';;;,,.,.,,,,,+'+;,:;''+'''++'''+'''++'+'+'''++'+'+''''@@@@@@@@@@@@@@@@@@@@@@@@@@'+'''++'+'+'''++'+'+''''+'+:;:,,,,.,,,,;',:@@@@@@@                          
 ;;;''''''+@@+'@@@:;;;;:;:;''';:::.,..,.;:;.,..,.,.,.,..,;';'';;'';'''''''';'''''''+''''''';+'''''@@@@@@@@@@@@@@@@@@@@@@@@@@+;'''''''+''''''';+''''''';'':..,.,.,..,.,.@@@@@@@                          
 ;''++'+'#'@@@@@@;';'''';''+'+';:.,,,,,,,:.,,,,,,,:,,,,,,+'+'++++'+'+'++'+'+'+'++'+'+'++++'+'+'++'@@@@@@@@@@@@@@@@@@@@@@@@@@'+'+'++'+'+'++++'+'+'++'+'+'+',,,,.,,,,,,,,.,@@@@@                          
 ;;++'''+''@@@@@@;;;;;;:;:'''';:.,.,,.,.,.,.,.,,.,.,.,,.,'+''''''';+''''''';'''''''+''''''''+'''''@@@@@@@@@@@@@@@@@@@@@@@@@@+;'''''''+''''''''+''''''+'+'',.,.,.,..,,,.,.@@@@@                          
 ;'+++'#'+'@@@@@@:';';;';'''';;:,.,,,,,,,,.,,,,;,.,.,,,:;+'+'++'''+'''++'''+'''++'+'+'''++'+'+''''@@@@@@@@@@@@@@@@@@@@@@@@@@'+'''++'+'+'''++'+'+''''+'+'+''',,.,,,,,,,:.,@@@@@                          
 +''''+''''''#@@@;:;;;;:';'@@@':.,.,..,.,.,.,..;.,.,.,.,:;';'''''';'''''''';'''''''+''''''';+'''''''@@@@@@@@@@@@@@@@@@@@@@@@+;'''''''+''''''';+''''''';''''';:,.,..,.,.,.,;@@@                          
 '++++'+'#'++#@@@;';'''''+'@@@+;:.,,,,,,,:.,,,,;,,:,,,,:;+'+'++++'+'+'++'+'+'+'++'+'+'++++'+'+'++'+'@@@@@@@@@@@@@@@@@@@@@@@@'+'+'++'+'+'++++'+'+'++'+'+'+'++;'.,,,,,,,,.,,'@@@                          
 @#++'''+''@@@@;:;:;;;;:';'@@:,,.,.,..,.,.,.,..;.,.,.,.;''+''''''';+''''''';''''''''''''''''+''''''+@@@@@@@@@@@@@@@@@@@@@@+'';'''''''+;'''''';'''''''''''''''',.,..,.,.,.,;@@@                          
 @#+++'#'+'@@@@;':''';;''+'@@;:,,.,,,,,,,,.,,,,',.,.,,,;'+'+'++'''+'''++'''+'''++'+'+'''++'+'+''''+'@@@@@@@@@@@@@@@@@@@@@@+''+'''++'+'+'''++'+'+''''+'+'+''''+.,,,,,,,:.,,'@@@                          
 ++@@@@@@@@@@@@;:;:;;;;:';'@@:,,.,.,..,.,.,.,;;,.,.,.,:;';';'''''';'''''''';'''''''+''''''';+''''''';@@@@@@@@@@@@@@@@@@@@@+'';'''''''+''''''';+''''''';'''''';,.,..,.,.,.,;@@@                          
 '#@@@@@@@@@@@@;';';'''''+'@@;,,,.,,,,,,,:.,,';,,,:,,:;''+'+'++++'+'+'++'+'+'+'++'+'+'++++'+'+'++'+'+@@@@@@@@@@@@@@@@@@@@@++'+'+'++'+'+'++++'+'+'++'+'+'+'++'+.,,,,,,,,.,,'@@@                          
 +'++'''+''@@@@;:;;;;;;:';'@@:,,.,.,,.,.,.,.,;;,.,.,.,:;''+''''''';+''''''';'''''''+''''''''+''''''+'+'@@@@@@@@@@@@@@@@@#'''';'''''''+''''''''+''''''+'+'''''',.,..,,,.,.,;@@@                          
 '++++'#'+'@@@@;':';';;''+'@@;:,,.,,,,,,,,.,,;;,,.,.,:'''+'+'++'''+'''++'''+'''++'+'+'''++'+'+''''+'+'+''@@@@@@@@@@@@'''++'''+'''++'+'+'''++'+'+''''+'+'+''''+.,,,,,,,:.,,'@@@@@                        
 @@@@@+'@@@@@@@@@;:;;;;:';'@@..,.,.,..,.,.,:;;;,.,.,:;''';';'''''';'''''''';''''@@@@@@@'''';+''''''';'''''';@@@@#+'';'''''''';'''''''+''''''';+''''''';'''''';,.,..,.,.,.,..@@@@                        
 @@@@@'+@@@@@@@@@;';'''''+'@@,,,,.,,,,,,,:.''';,,,:,;;++'+'+'++++'+'+'++'+'+'+'+@@@@@@@+++'+'+'++'+'+'+'++'+@@@@@++'+'+'++'+'+'+'++'+'+'++++'+'+'++'+'+'+'++'+.,,,,,,,,.,,,,@@@@                        
 @@@@@@@@@@@@#'@@@:;;;;:';'@@..,.,.,..,.,.,:;;;,.,.,''''''+''''''';+''''''';'@@@@@@@@@@@@@@'+''''''+;'''''''+''''''';+''''''';'''''''+;'''''';'''''''''''''''',.,..,.,.,.,..@@@@                        
 @@@@@@@@@@@@+'@@@''';;''+'@@,,,,.,,,,,,,,.';;;,,.,,+''''+'+'++'''+'''++'''+'@@@@@@@@@@@@@@+'+''''+'+'+''''+'+'++'''+'''++'''+'''++'+'+'''++'+'+''''+'+'+''''+.,,,,,,,:.,,,,@@@@                        
 @@@@@@@@@@@@+'@@@@@;;;:';'@@..,.,.,..,.,.,:;;;,.,.,''''';';'''''';''''''''@@@@@@@@@@+   ;;@@@'''''';'''''';';'''''';'''''''';'''''''+''''''';+''''''';'''''::,.,..,.,.,.,..@@@@                        
 @@@@@@@@@@++#@'+@@@@+'';''@@,,,,.,,,,,,,:.''';;,,+'+'++'+'+'++++'+'+'++'+'@@@@@@@@        '@@@@#'+'+'+'++'+'+'++++'+'+'++'+'+'+'++'+'+'++++'+'+'++'+'+'+'++;;.,,,,,,,,.,,,,@@@@                        
 @@@@@@@@@@''#@';@@@@';:;:'@@..,.,.,,.,.,.,:;;;;.,'+''''''+''''''';+'''''''@@@@@@@@        :@@@@+''+'+''''''+''''''';+''''''';'''''''+''''''''+''''''+'+''''::,.,..,,,.,.,..@@@@                        
 :'@@@@@@@@++#@'+'@@@@@@;''@@,,,,.,,,,,,,,.';;;;':+'+''''+'+'++'''+'''++'''@@@@@@@@      ;;'    ;@@@+'+''''+'+'++'''+'''#@@@@@@@@@@@@@@'''++'+'+''''+'+'+':;;;.,,,,,,,:.,,,,@@@@                        
 @@@@@@@@@@''''@@'''@@@@;:'@@..,.,.,..,.,.,:;;;;'';'''''';';'''''';''''''''@@@@@@@@    ;;;;       @@@@@'''';';'''''';@@@@@, ;:@@@@@@@@@@@'''';+'''''';:;;:::::,.,..,.,.,.,..@@@@                        
 @@@@@@@@@@++++@@'+'@@@@;''@@,,,,.,,,,,,,:.''';;+'+'+'++'+'+'++++'+'+'++'+'@@@@@@@@    ;;''       @@@@@'++'+'+'++++'+@@@@@, :'@@@@@@@@@@@+++'+'+'++'+;';';;;;;.,,,,,,,,.,,,,@@@@                        
 @@@@@@@@@@''''@@+''@@@@@@'@@;,,.,.,..,.,.,.,;;;''''''''''+''''''';+''''''';'@@@@@@  `;@@;;            @@@@@@@@@@@@@@@@@;   ;:@@@@@@@@@@@'''';''''''''',.,..,.,.,..,.,.,.,..@@@@                        
 @@@@@::@@@++'''+@''+#@@@@@@@':,,.,,,,,,,,.,,,,'+'+'+''''+'+'++'''+'''++'''+'@@@@@@'';@@@;;     ,;                          ;'@@@@@@@@@@@@@+'+'+''''+''.,,,,,,.,,,,,,,:.,,'@@@@@                        
 @@@@@::@@@''''';@'''#@@@@@@@;,,.,.,..,.,.,.,..''';'''''';';'''''';'''''''';'@@@@@@':'@@@;;     .;                          ;:@@@@@@@@@@@@@'';+''''''';,.,..,.,.,..,.,.,.,;@@@@@                        
 @@@::::@@@'''+'+'@@@@@@@@@@@@;,,.,,,,,,,:.,,';'+'+'+'++'+'+'++++'+'+'++'+'@@@@@@@@@@@@@@''   ''+@                          :'@@@@@@@@@@@@@+'+'+'++'+'+:;,,,,,.,,,,,,,,.,,'@@@@@                        
 @@@:::,@@@;;''';+@@@@@@@@@@@@;,.,.,,.,.,.,.,;;''+'+''''''+''''''';+'''''''@@@@@@@@@@@@@@;'   ;;+@                          ;:@@@@@@@@@@@@@'''+''''''+'::,,.,.,.,..,,,.,.,;@@@@@                        
 @@@@@@@@@@';;''+'''+#@@@@@@@@+;,.,,,,,,,,.';;;;':';';;';':';'''''+'''++'''@@@@@@@@@@@@@@@@'@@@@@@':                        :'@@@@@@@@@@@@@+'+'+''''+'+'+,,,,,.,,,,,,,:.,,'@@@                          
 @@@,,::@@@;;;;;:;''''''@@@@@@@@;;.,..,.,:;:;;;;:;:;;;;;;:;:;''''';''''''@@@@@@@@@@@@@@@@@@@@@@@@@@@:;;    :;:   ,;;:;:   ::#@@@@@@@@@@@@@@'';+''''''';'':..,.,.,..,.,.,.,;@@@                          
 @@@::::@@@'''';';+'++'+@@@@@@@@';,,,,,,,';''';;';';'''';';';++++'+'+'++'@@@@@@@@@@@@@@@@@@@@@@@@@@@';'    ';'   ,';';'   :'@@@@@@@@@@@@@@@+'+'+'++'+'+'+;,,,,.,,,,,,,,.,,'@@@                          
 @@@::,:@@@;;;;;:;:;''''';'@@@@@'+.,..,.,.,:;;;;:;:;;;;;;:;''''''';+'''#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;;;;:;:;;;+@@@@@;;;+@@@@@@@'''@@@@@@'';''''''''':::::,.,.,..,.,.,.@@@@@                          
 @#:::::@@@';;';':'''''''+'''+#@@@+',,,,,,.,,;;'':';';;';+'+'++'''+'''@@@@@@@@@@@@@@@@@@@@@+'+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+'+'+'''++'+'+''''+'+:;:;:,,.,,,,,,,:.,@@@                            
 @#:,,::@@@;;;;;:;:;;;''';''''#@@@''..,.,.,.,;;;:;:;;;;;;;';'''''';'''@@@@@@@@@@@@@@@@@@@@@;+'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'''+''''''';+''''''';:::::,.,.,..,.,.,.@@@                            
 @#:::::@@@'''';';';'''''+'+'++'@@@@':,,,:.,,,,;';';'''''+'';'''+'@@@@@@@+'+'+'+@@@@@@++++'+'+'++'@@@@@@@@@@@@@@@++'+'+'++#@@@@@@@+'+'+'++++'+'+'++'+'+:;;;;;;.,,,,,,,,@@@@@                            
 @#::::,@@@;;;;,.;;;;;;:;:'''''''+@@@',.,.,.,.,;:':;;;;;;:;:;;'''';+''''''';'''''''+''''''''+''''''+'@@@@@@@@@'''''';+''''''@@@@@@'''+''''''''+''';;:+':::::::,.,..,,@@@@@;                             
 @#:::::@@@';;',::';';;';''''++'+'@@@',,,,.,,,,;':';';;';':';'''''+'''++'''+'''++'+'+'''++'+'+''''+'+@@@@@@@@@'++'''+'''++''@@@@@@+'+'+'''++'+'+'';;''+:;;:;;;.,,,,,,@@@@@;                             
 @#:,,@@@@@;;:.,.,:;;;;:;:;''''''+@@@@@@,.,.,..,.,:;;;;;;:;:;;;''';'''''''';'''''''+''''''';+''''''';'''''';';'''''';'''''''';@@@@@+'+''''''';+'';;;:;:,.,::::::,..@@@@@@                               
 @#:::@@@@@'':,,:.';'''';';+'++'+'@@@@@@,:.,,,,,,,';'''';';';''++'+'+'++'+'+'+'++'+'+'++++'+'+'++'+'+'+'++'+'+'++++'+'+'++'+'+@@@@@++'+'++++'+'+'';;';',,,;;;;:;,,,@@@@@@                               
 ::,::@@@@@@@'.,.,:;;;;:;:;;;''''+;'@@@@@.,.,..,.,:;;;;;;:;:'''''';+''''''';';;;;;:;:;;;;'''+''''''+;'''''''+''''''';+''''''';''''@+'+;'''''';'''';;:,.,.,..,.,.,:@@@@@@@                               
 :::::@@@@@@@@@,:.''';;';':';'''+'+''+@@@@@,,,,,,.,,';;';':''';;''':';,,,,,:,,,,;;';';;;';;+'+''''+'+'+''''+'+'++'''+'''';;''+'''++'+'+'''++'+'+'';,,.,.,,,,,,.,@@@@@@@                                 
 :::,,@@@@@@@@@,.,:;;;;:;:;;;;;''+'''#@@@@@.,..,.,.,;;;;;:;:;;;;;;:;:;..,.,.,.,.;;:;:;;;;;;;+''''''';'''''';';'''''';''';:;'';'''''''+''''''';+'';;,.,.,.,..,.,.@@@@@@@                                 
 :::::@@@@@@@@@@@.,,'''';';';;+'+'+'++++@@@@@,,,,,:,,:'';';';,,,,,,.,,,,,,.,.,,,,,,;''';;''+'+'++'+'+'+'++'+'+'++++'+'+'++;;:;'+'++'+'+'';;''';'':,,,,:,,,,,,,.,@@@@@                                   
 :,:::@@@@@@@@@@@@@@;;;:;:';;;;''+'''''''@@@@@@,.,.,.,,.,.,.,..,,,.,.,..,.,.,,,..,.,.,;;;;':+''''''+'+''''''+''''''';+''''':,.::'''''+';;;;;;:;:,.,,.,.,.,,.,.@@@@@                                     
 :::::@@@@@@@@@@@@@@';;';':';;;;''+'''++'@@@@@@,,.,.,,,,,,.,,,,,,,:.,,,,,,,:,,,,,,,.,,;;;;;''+''''+'+'+''''+'+'++'''+'''++;',::;'++'+'+;;;;;;';;,,,,,.,.,,,,,,@@@@@                                     
 :::,,@@@@@@@@@@@@@@@';:;:;;;;;;;+''''''';+@@@@@.,.,.,..,.,.,..,.,.,.,..,.,.,.,..,.,.,..,;;:;:'''''';'''''';';'''''';''';;;:,.,.::''';:;;;;;,.,.,..,.,.,.,..@@@@@'                                      
 :::::@@@@@@@@@@@@@@@@@@;';';;''';+'++++'+'+'@@@@@:,,,,,,,.,,,,,,,,.,,,,,,.:.,,,,,,.,,,,,''';''++'+'+'+'++'+'+'++++'+'+;'''';',,,,;,,.,,,,,,,:.,,,,,,,:,,,@@@@@@                                        
 ::,::@@@@@@@@@@@@@@@@@@;:;;;;;;:;;'''''';'''@@@@@.,.,..,.,.,..,.,.,.,..,.,.,.,..,.,.,..,;;:;:'''''+;'''''''+''''''';+';;;;:;:,.,.:,.,.,..,.,.,.,..,.,.,.,@@@@@@                                        
 :::::@@@@@@@@@@@@@@@@@@@@:';';;';+'''++'+'+''''@@@@@+,,,,.,,,:;''':';,,,,,:,,,,,,,.,,,,,,,';';;''+'+'+''''+'+'++'''+:''';;';',,,,,,,.,,,,,,,,.,,,,,,.,@@@@@@@                                          
 :::,,@@@@@@@@@@@@@@@@@@@@;;;;;;:;''''''';+'''''@@@@@'..,.,.,.:;;;:;:;..,.,.,.,..,.,.,..,.,:;:;;;''';'''''';';'''''';;:;;;;:;:,.,..,.,.,..,.,.,.,..,.,.@@@@@@@                                          
 :::::@@@@@@@@@@@@@@@@@@@@@';;''';+'++++'+'+'++'+'+'@@@+;;:,,,,,,,,.,,''',.,.,,,,,,.,,,,,,,';'''''+'+'+'++'+'+'++++;';';'''';'.,,,,,,.,,,,,,,:.,,,,,,@@@@@@@                                            
 :,:::@@@@@@@@@@@@@@@@@@@@@@@;;':;''''''''+''''''+'+'#@@@@@@#''''':':;;;;:;:;;,..,.,.,.,,.,:;:;;;;'+'+''''''+''''';;:;;;;;;:;:,.,..,.,.,,.,.,.,.,.,@@@@@@@                                              
 :::::@@@@@@@@@@@@@@@@@@@@@@@;;;';+'''++'+'+''''+'+'++@@@@@@#++'''':';';;';':',,,,,.,,,,,,,';';;;;+'+'+''''+'+'++;';':';';;';',,,,,,,.,,,,,,,,.,,,,@@@@@@@                                              
 :::,,@@@@@@@@@@@@@@@@@@@@@@@;;;:;@@''''';+''''''';'''''';';'''''';'''';;:;:;;;;;;.,.,..,.,:;:;;;;'';'''''';';'';;;,.,.,..,.,.,.,..,.,.,..,.,.,.,;@@@@@@@                                               
 :::::@@@@@@@@@@@@@@@@@@@@@@@;''#@@@@#++'+'+'++'+'+'+'++'+'+'++++'+'+'+';;::.,,,,,,.,,,,,,,:.,,,:;';+'+'++'+'+;',,,,:.,,,,,,,,,,,,,,,.,,,,,,#@@@@@@@@                                                   
 ::,::@@@@@@@@@@@@@@@@@@@@@@@;;;#@@@@#''';''''''''''''''''+''''''';+''';:::.,.,..,.,.,..,.,.,.,.:;:;;'''''''+';;.,.,.,.,..,.,.,.,..,.,.,..,.#@@@@@@@@                                                   
 :::::@@@@@@@@@@@@@@@@@@@@@@@'+@@@@@@@@@@+'+''''+'+'+''''+'+'++'''+'''+;,,,:,,,,,,,.,,,,,,,,.,,,,,':''+''''+:';',,,,:.,,,,,,,:,,,,,::@@@@@@@@@@@@@@                                                     
 :::,,@@@@@@@@@@@@@@@@@@@@@@@;#@@@@@@@@@@'+''''''';'''''';';'''''';'''':,.,.,.,..,.,.,..,.,.,.,..,:;:'''''';;:;;.,.,.,.,..,.,.,.,..::@@@@@@@@@@@@@@                                                     
 :::::@@;'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@++'+'+'+'++'+'+'+++';';';''',.,.,,,,,,.,,,,,,,:.,,,,,,,''+'++'';',,,,,,,.,,,,,,.,.,@@@@@@@@@@@@@@@+                                                        
 :,:@@@@':,..'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'+''''''+''''''':':;;;;:;.,,,.@@.,.,.,,.,.,.,,.,.,:;;'';;:,.,..,.,.,,,..,,#@@@@@@@@@@@@@@@@@@+                                                        
 :::@@@@:',,,'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+'+''''+'+'++'''':';';;';:,,,,@@,.,,,,,,,,.,,,,,,.';'''';',,,,,,,,:.,,,,,,#@@@@@@@@@@@@@@@@@@+                                                        
 :::@@@@;:,..,.@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#''';';'''''';':;;;;:;:;.,..,@,.,..,.,.,.,..,.,.,.;;;;.,.,..,.,.,.,;@@@@@@@@@@@@@@@@@@@@@@+                                                        
 :::@@@@;';,,,,,:;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#'+'+'++++'+'+''''';';,,,,,,@@@@,,,,';',,,,,,:,,,,,,,.,,,,,,,:.,,'@@@@@@@@@@@@@@@@@@@@@@+                                                        
 ::,@@@@;:;..,.,.;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+''+''''''';+'';;;:;:;.,..,.@@@@.,.,:;:,..,.,.,.,..,.,.,..,.,.,.,;@@@@@@@@@@@@@@@@@@@@@@+                                                        
 :::@@'':';,,,,,::''@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#'+'+'++'''+'''+';';':',,,,,.,,,@@,,';';;';':'.,,,,,,.,,,,,,,:.,@@@@@@@@@@@+'+@@@@@@@@@@+                                                        
 :;@@@;:;:;..,.;:;:;;;;:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;';''''@@;'''''''':;;;;.,.,.,..,@@@;:;;;;:;:;;;;;;:;:;;.,.,.@@@@@+'';'''''#@@@@@@@'#@@+                                                        
 :'@@@;';';,,,,;';';''''@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+'+'+++@@+'+'++'+'';';;,,,.,,,,,@@@;''';;';';'''';';';',,,,,@@@@@++'+'+'++@@@@@@@@+@@@+                                                        
 :;@@@;:':;..,.;:;;;;;;:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'+'''''@@;+''''''':;;;;.,.,.,.,,@@@;:;;;;;;:;;;;;;:':;;.,.,.@@@@@+'';'''''#@@@@@@@'#@@+                                                        
 :'@@@;':';';:,;':';';;';':@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+'++'@@@@@@++'''+'';;;;',,,,,,,,,@@@@@@':';';;';@@@@@@;,#@@@@#+'''+'''++#@@@@@@@+@@@+                                                        
 :;@@@,.;:;;;:.;:;:;;;;:;:;;;;#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#'''@@@@@@@+''';'''';;:;:;..,.,.+'''#@@@@@@@@@@@@@@@;:.#@@@'''''';'''''#@@@@@@@'#@@+                                                        
 :'@,,,,;';'''';';';'''';';';;''+'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+'@@@@@@@@@+'+'++'+;''',,,,:.,'+#@@@@@@@@@@@@@'+''+@@@@'++'+'+'+'+@@@@@@@+++'#@+                                                        
 :;@..,.;:;;;;;;:;:;;;;:;:;;;;;;'+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@''@@@@@@@@@;''''''';:;;.,.,.,.''#@@@@@@@@@@@@@'';''#@@@'''''';''''@@@@@@@'''+'@+                                                        
 @@@,,,,:';';;';':''';;';':';';;''+''+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@''++'+'+';;';;'.,''''@@@@@@@@@@'+'++''@@'''++#@@@'''+@@@@@@@+++'+@+                                                        
 @@@..,.;:;;;;;;:;:;;;;:;:;;;;;;;+'''#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@''''''+'';;;;;:,.''''@@@@@@@@@@';'''''#@'''''#@@@''''@@@@@@@'+'''@+                                                        
 @+,,,,,;';'''';';';'''';';';;''+'+'+';''@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+'+'+'';;''';'@@@@@@@@@@@@@@@@@@+#@@@'+'#@@@@@'+@@@@@@@@@+++'#@+                                                        
 @+,.,,.,.;;;;;;:;;;;;;:;:';;;;':;'';;;;;:;:;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'+''';;;':;:;;+@@@@@@@@@@@@@'''#@+;+'@@@@@@@@@@@@@@@@@@'''+'@+                                                        
 @+,,,,,.,;';;';':';';;';':';;;;';+';;;;;';';@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+'+'';;;;';';;+@@@@@@@@@@@@@'++#@++''@@@@@@@@@@@@@@@@@@+++'+@+                                                        
 @+,..,.,.;;;;;;:;:;;;;:;:;;;;;;:;'';;;;;:;:;'''@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+''''';;@+';;;;:;@@@@@'';';@@@@@+;@@@@@@@@@@@@@@@@@@@@+''''@+                                                        
 ,,,,,,,.,,'''';';';'''';';';;''';+'';;''';''';'+'+'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@++''@@@'++'';'@@@@+'+'+@@@@@@@@@@@@@@@@@@@@@@@::@@+++'#@@@;                                                      
 ,.,..,.,.,;;;;;:;:;;;;:;:;;;;;;:;;';;;;;:;:;;;''''+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'';;@@@'''':;:@@@@'''+'@@@@@@@@@@@@@@@@@@@@@@@:,@@'''+'@@@;