Dinh, Tim curriculum-vitae.pdf (315kB)
............................................```````````````````````````````````````......`````.......``````````````````````````````````````````````````````````````````````````````````````````````````                                                                                                                                                                                                                                                                                                             
............................................```````````````````````````````````````......`````......``````````````````````````````````````````````````````````````````````````````````````````````````````````                                                                                                                                                                                                                                                                                                      
............................................```````````````````````````````````````......``````.....`````````````````````````````````````````````````````````````````````````````````````````````````````````````````                                                                                                                                                                                                                                                                                               
............................................```````````````````````````````````````......```````....```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````                                                                                                                                                                                                                                                                                         
............................................```````````````````````````````````````......```````...``````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````                                                                                                                                                                                                                                                                                   
.................................................```...............``````````````````````````````....````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````                                                                                                                                                                                                                                                                           
....................................................``````````......`````````````````````````````.....`````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````                                                                                                                                                                                                                                                                     
................................................``````````````...``````````````````````````````````..`````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````                                                                                                                                                                                                                                                              
........................................``....`````````````````.```````````````````````````````````.`````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````                                                                                                                                                                                                                                                       
.............................``......````````````````````````````````````````````````````````````````````````````````````````.`````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````                                                                                                                                                                                                                                                 
...........................````.`````````````````````````````````````````````````````````````````````````````````````````````.```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````                                                                                                                                                                                                                                           
................``````````.....``````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````                                                                                                                                                                                                                                   
............``````````````````.`````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````                                                                                                                                                                                                                            
........`````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.``````````````````````.``````````.```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````                                                                                                                                                                                                                     
.......``````````````````````````````````````````````````````````````````````````````````````````````````````````````````````..```..```````````...`...````````...``````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````...````````                                                                                                                                                                                                              
.......``````````````````````````````````````````````````````````````````````````````````````````````````````````````````````..``....````````..........```````...```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.....````````                                                                                                                                                                                                       
......``````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````......````````....`......`````.....``..`````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````                                                                                                                                                                                                
.....````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````..........```````............`````.....``````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````                                                                                                                                                                                          
`````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````...````....````...............````......``````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````                                                                                                                                                                                 
`````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````...````......................```````......````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````                                                                                                                                                                             
`````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````...````..............`.....``````````.....``````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````                                                                                                                                                                   
`````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````..``````.........................`````....`````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````                                                                                                                                                            
``````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.......................```````.......`````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````                                                                                                                                                    
``````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````....................```````````........``````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.```````````````````````````                                                                                                                                             
`````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.`````````````````````````````````````....`````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````....````````````````````````````````````                                                                                                                                    
`````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````......`````````````...````````````````````````````````````````````                                                                                                                             
`````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````..`````````````````..`````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````...``....````````````````````````````````````````````````````````````````````                                                                                                                    
``````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.`..```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````..````````````````````````````````````````````````````````````````````````````                                                                                                             
`````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````..`````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````                                                                                                    
```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.```````````````````````                                                                                            
````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.`````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````                                                                                      
``````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.`````````````..``````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````                                                                            
.....````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````....`````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````...--:---:.---..`````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````                                                                     
...........``````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````...---:::://++/-:::--.........`......`````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````                                                             
``````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.``..----:::://:::--::--.---:::::-::/::::--.`````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````` ````                                                   
                                      ```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````...--::---------.---:--:::://+oooyssoo//:::--..``````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````...``````                                             
                                                         ```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.....---.....-----:::::://///:////++osso+++:::---...``````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````...``````````````                                     
                                                                               ```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.......`.......```````````````````.............-----::-::::////:-:///+++o+++++/::----.-.```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````...````````````````````````                            
                                                                                                        ```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.....----......--.-....-....````...`````````.`.......---:::/:-:://////++/:/+ooossoo//++:/::-----``````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````...```````````````````````````````                     
                                                                                                                                    ``````````````````````````````````````````````````````````````````````````````````````.......--:::::::///::-----.::--------..-.....`..``.........--::::///++/::/+/+++ss+/+o+osysoo+//////::-::-..````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````...```````````````````````````````````````             
                                                                                                                                                                       ````````````````````````````````````````````````...--:::::////+++++++oooo+o//://///:::::--::----.......-.--:-::///+++++/////++++//+oo+ossssyyysoo+////:::-----...`````````````````````````````````````````````````````````````````````````````````````````````````````````````````````...````````````````````````````````````````````````    
                                                                                                                                                                                          ` ````````````````````````...-:::::::://+++oosssssysssss+osso++++//+//::::::/----:---::///+++/ossssoo+s///o/////ooo++osssyhysso/://:-/:--:::::-.``````````````````````````````````````````````````````````````````````````````````````````````````````````````````....````````````````````````````````````````````````````
                                                                                                                                                                                                                ```.-::://:/----:++osssssyyyyyyyyosyhysssysooso++++::/+/:::///+/++++soosyyyhh+osy+//o/:/+++oso++osshhyyhys+::////:-::://::--...`````````````````````````````````````````````````````````````````````````````````````````````````````````````....````````````````````````````````````````````````````
                                                                                                                                                                                                                ``.-/++---:--:://+oosyyyyyssshhhhoyhhhhhyyhhhhyssooooo+++++++ooossssysyhdhhdd++oss+/+/::++oooo++osshhhyhhhy+/://+/::://:+//:-:--.```````````````````````````````````````````````````````````````````````````````````````````````````````````...`````````````````````````````````````````````````````
                                                                                                                                                                                                              ``.-:++/::::::/+ooosssoossyyyyyyyssshddhdddhddddhhhyyyysoosssoossyyyyhhyyyhyyhhyo+os+///://+ooso+//osyyhyyhhyyo+:+oo/://///+oo//:::---..``````````````````````````````````````````````````````````````````````````````````````````````````````...`````````````````````````````````````````````````````
                                                                                                                                                                                                             ```.:oo/://////+++oossyssyyssyyyssooyhdddddddhddmddddhhhhysssssssssssyhyyysyhdmdsso:ooo++///+ossyo+++ossyyyyyhyso//oso++++o/+oso++//:::/:-..`                                        ``````````````````````````````````````````````````````````..``````````````````````````````````````````````````    
                                                                                                                                                                                                             ``.:++/////ossosssssssosyyhyyhhhhyssyyhhdmddmdhhhhyhhhyhhhhyyysyyyyyyyyyyhhhhhhhosss/oyso+++/osssssssssssyyssysyso++osyo++o+/+sysoo++//////:-.`                                                                                          `` ````````````````````````````````````````````````````       
                                                                                                                                                                                                            ```:oo+//+osssossyyyyysshhhddddhhs+++ssyyhddhdhyyhddmmmmmmdhyyyyysssoo++++++/+++o+++o+oo++oos+ossyyysosyysyhhyssssso++osys++++//oooo+++////////:-``                                                                                            ``                                                       
                                                                                                                                                                                                           ``.-oo+/+osssssyhhyyyhhddmddhyyyhhy++osyyhdhyyhmmmmmmmmmmddysso+:--......-------::://///++//+soossyyyysossssyyyyssssosss++ooooss+//++ooo++///+////:-``                                                                                                                                                   
                                                                                                                                                                                                          ``.-+s+/+ossyyyyhhhhhhddmmdddddhyhddhhdhyhhyyssymddmmddhyo++/-.````  ```````..`.....----:////++oooosyyyyysooosssssssssssssoooo+ooo++++//+++////+++//::-```                                                                                                                                                
                                                                                                                                                                                                       `  `.-//:/+ossyhhhhhhddmmmddddmmmmmmdmhyhdhyysohdhyddddys+/-````       `````````````.......--::///+++ossyyyhyss++++++oooooosssyydyoosyso+/++o+//+///+++////-`````  `                                                                                `                                                        
                                                                                                                                                                                                      ````.-:://+ossyyyyhdddddddhhhdddddddddmhhdmmdyshddhs++/:.```    `       `````````````````.....----:+//++ssssyyyso+/:///+oyysossssyddhsoosyyso++++++//////+++/:-.````                                                                                ``                                                        
``````````       ````                                                                                                                                                                                 ```..:::++osysyyyyhhhydddhdddddddhyyyyhsdmmNdhyy+/:-```             `   ``````````````````......---::///+oososso+///:/+osyyyyyyssyshdNdyoosyysoo++/////////+////:..``                                                                               ``                                                        
`````````````````````                                                                                 ```                                                                                           ````..:://++ossssssyyyhhddmmmddhhyyyyddhssyys+:-.`                      `````````````````````........--::://++ssso++//+++oyssydhyyyyyyhhmdddhsosoosso+////////////++/-..```                                                                          ```                                                        
`````````````````````````````````````````                                                         ``````````````                                                                                   ````..-:////+oo+ossyhdmmdddhhso++o+ooshhyo/-.``                         ```````````````````````.........--::://+ossyo/:/++ossosyhhhyssyyymmdydhhddsoosooo+:://://////++/:-.`                                                                         ````                                                        
```````````````````````````````````````````````````````                                    ``````````   ``````````                                                                                 ```.--::-:/+++oyyyhdddddhdysoooooysyyo:.`                              ```````````````````````````........--::////+o:::++//+so+/yhhyoosyyydmmssydmmmdyyyyss+//:::://///+///:-.`                                                                      ```                                                         
```````````````````````````````````````````````````````````````                        `````````````    ```````````                                                                            `` ``..-----://+syyyyyhhhhys+oooosyyyo:-.`                               `````````````````````````````.........---::/+++:-:o+////oo/+syyyoosysyhhhhyyyhdmddhhhhyyyo/:::///:/+o+/:::-`                                                                    ```                                                         
````````````````````````````````````````````````````````````````                   ``````````````````````````````````                                                                       ``````....--:/+//+sssssyyhhysoosyyhhy+:.                                   ```````````````````````````````........----:::/:--:o+/::/+++++osssoossoshmdddmysyNNmdddhhhhyso+::://+++++////:.`                                                                 ```                                                         
...````````````````````````````````````````````````` `````````` `````   `      `````````````````````````````````````                                                  ``      ````  ```` ````````...---////osssoosyhhyssoosysso/.`                             ``       ``````````````````````````````.........-----::----/+/::///+o++++sssshso+hddddmhssmNNmmmdhhhhhh+::::/+++o++/+++/-````     `        ``````       ```````````                     `````                                                     ```
////::::::-----------...............``````````````````````````````````     ``````````````````````````````````````````                                                 ```          ``  ```````..-----://+oysooosyyssooo++oso/.`                                        ``````````````````````````...............-----:----::://///++ooo+++ooyhyyoshdhyhddsydNNmmdmhyyyys+::::/sso+/+oo++/:-``````  ```````` `````````````````````````````````````````  `````                                                  `````.
hhhhhhhhhhyyyyyyysssssssssooooo++++//////:::::-------...........````    `````````````````````````````````````````````````````                                              ``    `` ` ```....-----::///ossooooosssss+/::o+:`                                            ```````````````````````````..........`...---------::::///+oo+ooooooooosyhysoyhhhdddysdmmmmmdhhysoo/:::/syyo/+osoo++/-..```````````` ``````````````````````````````````         ````                                               ````..---:
ddddddddddddddddddddddddddddddddddddddhhhhhhhhyyyyyyyysssoo+//:-.``` `````````````````````````````````````````````````````````````                        ```                 ```` ````.-----..-:/+++ossssosyysoo++//++/-`                                            ````````````````````````````................-----:--://////+ooooosoossoosssyssyyyhhhhddyyhdNmmdmdhsoo/:::+syho+/+yyssso+/:.``````````````````````````````````````````           `````                                           `````..-:/+osy
ddddd php mysql ajax java android javascript css hhhysso+//:--..```````````````````````````````````````````````````````````````````````                 `````               ```````...-::..---:/++osyhhyssyyso+++/:++/.`           `                                ````````````````````````````..................--------://++//+oossoooossssssssssyssyyddhhhysshdmmdmmdhso+/:/+syhs+/+syyyso++/:-.```````````````````````````````````````           `````                                       `````..--/+oyhdmmN
ddddd project management agile scrum html hyyso+/::-..```````````````````````````````````````````````````````````````````````````````````     ````             `     ```````....-------:-:://++ooyhhhhssys+///+///:.`                                        `  ````````````````````````````````.................-------::///+oo++osssssssssssyyssssysssyyyhhhhhsshdddmmmhso/://+hhhs+++oshhyso+//:--.``````````````````````````````````````````    `````                                  ```````..-:+oshdmmNNNNNm
mmmmdddddddddddddddddddddddddddddhhyso+///:--..````         ``````````````````````````````````````````````````````````````````````````````````````            ` ````````..-----.---...-://++++ssyhmddhdhys+//+o/:-.                                         `````````````````````````````````````.................-.-----::////+ooosssssyyyyyyyyyyysssssssyyyyyhhhyyyyhdddmdyo+///ohdhyo+++shhysyo+///:.``````````````````````````````````````       `````                             ``````..:/+osyhdmNNNNNNNNNmmd
mmmmdddddddddddddddddddddddhhyso+/:-..`````               ````````````````````````````````````````````````````````````````````````````````````````          `  ` `````.----.-......-::+oooooshdhhmmmmmdyo/////-``                                           `````````````````````````````````````````..........----------::://+++oossssysyyyhhhhyyyyyyyysysssyyyyyyyyyysyhhmdho//++yhddsso+oyhhyyysso+/:....```````````````````````````````          ````                `       ```````..:/+sydmmNNNNNNNNNNNNNmdhys
mmmddddddddddddddddddhyso+/:-..```                      `````````````````````````````````````````````````````````````````````````````````````               `  ` ````.--....--.--:+sssyyssoyhdddmmNNdyo+/:/.`                                           ````````````````````````````````````````````...........----::---::/:://++osssssyyyyyyhhhhhhhdhhhyhhyysssssyyyysssooyhdhs+//oshmhyso+oyhdhyyooso+:-.`.````  ``````````````                     ``            ```````````..-:/+osyhddmmNNNNNNNNNNNNNmmdhhso+/:
mddddddddddddddhhyo++:--.```                        ```````````````````````````````````````````````````````````````````````````````````           `````````````` ``.``.`....:////hdhsyyysyyhhddmNmmdy+::-``                ```````` `           `       `````````````````````.....`````````````````...........-----::::::://////++ossyyyyyyyyhhyhhhhhhhhhhddhhhyssssssssssossydys+/+syhmhyss+oshhhyyossso/-..```````                                  ``       `````````..-::+osyhdmmmNNNNNNNNNNNNNNNNNmmddyso+/::--
ddmmmddddhyso+/:-.````                            `````````````````````````````````````````````````````````````````````````````````````           `````````````` ``.````..-:+ossymdhyyhyyyyhdmmmmhyo/-``               `````````  ````` ``             `````````.......-------------.......................--------:::::-::/++++++ossssosyyhhhhyhhhhhhhhhhhhhhddhhyysossooooossyys+/oyyhddhyoosyyyhhyyyssso/-.`````````                              `````````.-::::/+osyhddmmNNNNNNNNNNNNNNNNNNNNNmmmdyso+/::---...
mddhhso+/:-..``                                 ```````````````````````````````````````````````````````````````````````````````````````               `````` ``  `..```.-:/+ssyyddhhyssso/++o++++//-`   `....--:-------::::::::--------------.-------..`````````......----------::::::::-:----::--------...--------:::::::://++++++sssssssyyyyhhhhhhdddddhhhhhdddhhhysso++ooooossys+oshyhddhsooyyyydhhhyssss+--.``````````                     ` ````.-::::/+osyhhddmmNNNNNNNNNNNNNNNNNNNNNNNNNNmmdhyso//::--..-----
yo/:-.```                                     `````````````````````````````````````````````````````````````````````````````````````````               ````````` ``.``...:/+ossoo+:----...```` ```````````.----..................``````````````.....--..```....-----:://::::::::---------...--:::::::::::::--::::::-::::://///+ooooosssyyyyhhyyyyhhhhhhhhddddhdddddhhhhssso+ooo+ooossoohyhhhdysoshhyyhddhyysss+/:.``````````````````````````...-:/++:::/shdmmmNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNmmmhyso+//:---...---:::/
-.`                                        ````````````````````````````````````````````````````````````````````````````````````````````            `  `````` `````.``.------..-::---:-----.````..------.--.```....`.`````````````````````````..``````.:::://////:::----------::////++++++++//:-..--:::::///::::/:::::::::///++++oossssyyyyhhyhhhhhhhhhhdddddddddddddhhhyyso+++oo++osooyhyhddhsooyhhhyhhdhhyysso+/-.----------:::::+++/+ossssyhdmmmm+//+ymNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNmmdyso+//::---..----:://+++
                                         ``````````````````````````````````````````````````````````````````````````````````````````````               `````` ``` ``````..-:/::-...```                 ```...`  .--...........````````````````.``.-//:-....``      ````````````````.....--:::/+ooo+/:--..-:///://:://::://://++++++oosssssyyhhhhyhhhhhhhdddddddddddddddhhyyyso+//+ooo+oohyhdmdysosyhddhyyddhhyssso/::/ooo++++/+o+++hmmmmmmNNmmmNNNmd+:/ohmNNNNNNNNNNNNNNNNNNNNNNNNNNNNmmdhyso+/:-----------::/+++oooo
                                       ````````````````````````````````````````````````````````````````````````````````````````````````               `````   ``````-:::-.`                                ```  .-:--...```.`````````````.```---:.`            ```````````...``.....-----.......-:/++o++/:.---/////////:::://++++++ooosssssshhhhhhhhdddddddmddddddddhddhhhyyso+/+oso+++syhdmmhsssyyhdddhyhhhyhysyso///oyhyosssoossoshdNNNNNNmdmNNmy/:/odNNNNNNNNNNNNNNNNNNNNNNNNNNmmdhys+//:---...----:::/++ooooo+++
                                     ``````````````````````````````````````````````````````````````````````````````````` `                             `  ```  `.-:/-.`                                    ```   .:`.-:+++++++++/-.` ``````.:.``             ```````````````................----------::/+oo+:-.-////////://///+oo+ooossssssyyyyhhhhhhddddddmmmmmmmddhddhhhyyso+++oooo/osymdNmhsssshdddddyhdhhyysyys+//+ohsosdyssoosoosdmNNNdhdMNds/:/sdNNNNNNNNNNNNNNNNNNNNNNNmmdhys+//:---------::://+++oooo++++++
                                   `````````````````````````````````````````````````````````````````````                                          `   `     `.:/:.`                                      ``````    :oo+//:---...`.-- ````--.                ```````````````.................----------------/+o+/-.-/+/+++//////+oooooossssyyyyyhhyhhhhhddddmmmmNmmmmmddhhhhhyyo++/ossosoydmmdhsyysymddmmdhhdyyyyosys/+//shsosyhhhyooo//ohdNdhdNNdo:/oymNNNNNNNNNNNNNNNNNNNNNmdhyo+//:---..---::///++oooooo+++++++//
                                 `````````````````````````````````````````````````````````                                                               ``-/:.`                                         ``````   `o++////::-...```` ```-``               ````````````````...................--------:---------:/++-.-++/+++++///++oooossssssyyyyyyhyhhhhddmmmmNNNNNNmmmmdhhhyyyso++osoooshmmddyssyodddddddddhyyhyssso++//+oyhhhyyyhys+o+oyddhymdy+:/oymNNNNNNNNNNNNNNNNNNmmhyo+/::---------::/++oooooooo+++++++////
                               ```````````````````````````````````````````````   ``                                                                `   `.:/-`               ``                          ``````  .:/sso+////:-....... `-:                  ```````````````...................-----------------:::::/+/:`://o++++/+++ooooossssssyyssyhhhhyhhdddmmmNmNNNNmmmNmdhhhhyso+osyooshmmddhsyysydddddddddhyyyssssso+/+/+ydmmdyyhdso++/osysdhs/:/shmmmmmdmmmNNNNNNNNmhyo+/::------:::://++oooooo++++++//////////
                             ``````````````````````````````````````````     `                                                                        `./:.`                `                           ``````` .+ssssoooo+/:------.` -.`                  ``````````````....................------------------::::::///..:++++++++++ooooosssssyyssyhhhhhhddmmmmmNNmmmNNmmmNmdhhhhhyo+oyoosydmdhdhysyyhddmddddmdhyyysysyyo/////oyhddyyyhhs++oooodyo/:/ymNNNNNNNmmdmmmNNdhy+/::-----::///+++ooooooo+++++++++//////////
                          ``````````````````````````````````````````                                                                                .:/`                                              ``````  `syysssssso+::----:-. `-.           `        ``````````````....................------------------::::://+/-`-oo+++++o++oooosssssss+syyyyhhhdddmmmNNNNmmmNNNmNNNmhyhhhsooyysoshdddddyshsyhddmmdhdmdhhyysyssso+++///+oNNmdmdhyysyyssso/:/ohNNNNNNNNNNNmdyso++::-----://++ooooooo+++++++++///+///////////
                         `````````````````````````````````````````                                                                                `:-.                                               ``````  ./yyyyssso++/:-----..` .`          ``````     ```````````````...................-----------------::::::://+/-`:+o+++++o+++ooososssooyhhyhhdhdddmmmNNNNNmdmNNmNNNNmhhhdysosysoshhhhddyshhyhdhmmmhhdddhhyssyysysoo+////syhddhdNNsyhyo+/::syyymmNNNNNNNNmds+/::---:://++o++oo+++++++++////////////////////
                       ``````````````````````````````````                                                                                       `./.`                                            `  `````` `:+sosssooo++/::-....-.` -`         ````      `````````````````...............--.------------------:::::::///+/.`/oo/++++++++oooossssosyhyhhddhhddmmNNNNNNmmmmmNNNNNmdddhysoyssohhhhmhhyhyyhmddmmmdddmhhyysyyysso+++++++/+ymmmmNmhyys+/:+shmhyhmmmmNNNmdhs+/::////++oooo+++++++++////////////////////////
                     ````````````````````````````````                                                                                          `-:`                                             ````` ``  `+oo/ooooo++++/::-......``-`    `..-..`   `````````````````````................------------------:::::::::://////`-/s++/++++++oooosoossssysyyyhhhhddmNNmNNNmmmmNmmmNNmddmdysoyyyoyyhhmyhdhysyddddmmmdhddhhyyyyhysso+o++++/+oshddmNmhsho///ydmNssyhhddmmmmdyso+/oooo++++++++++++++/////////////////////////
                    ``````````````````````````                                                                                                .:-                                         `-://:-` ``   `./+/++++++o++++:--.`...-.` -` `:+syddds-    ``````````````````..................--------------------:::::::::://++.`:yo//+++++++ooooooosssssyssyyhhddmmmNNNmNdmNNNNmmNNmmmdhysyhysosyhdydmdsyyhmddmmmddhdhhhyyyydyyss++//o++ooosydmmdss+///oyhhso+ossyyhdmmdyys+oo++++++++++++++////////////////////////:::
                  ````````````````````````                                                                                                  `./`                                      `-/shhhhddy:```  .:/+ooooooo+o+++/-..`....--. ./syhyyyddmmy    ``````````````...................----------------------:::::::::::://+.`-so+++//++o+++oooooosssyyyyyyyhhdmmmNNmmNdmmNMNNmNNmmmmdhshhyoosyhhydmmsyyymmddmddddhdddyhyshdyoooo+/+ooo++ososyyy+/::///+o+//++ossyyyyysso/++++++++++++///////////////////////////::::
                ``````````````````````                                                                                                     `.:                                     `-osyysyyyyhdh+    `./ooooo+soooo/:-.````....--`  syysyyyhdmdo  ```````````````.........--.......---------------------::::::::::::::///+.`-y+++++//+o++++ooooooossssssyyhhhhddmmmNmhdmNMNNmNNmdmmdhydhysshhhdydmNsyyhhmmdmmddmyhddhdhysdhyoysso:oso++++++osy/:-:://///++++oooooooso+++/++++++++++/////////////////////////:::::::
              `````````````````                                                                                                           `--                               ``   `/syssyyhhyyhmmy. `./ooosso++++/:-`````````...--::. +hdhhhhhdh+`  ```````````````.............---....-------------------:::::::::::::::///``-so++++///+++++ooooooosssssyyyyydyyhmmmmdhdmNMMNNmmmmmmdhydhhysyyyhydmNyyyhhdmmmmmdmhhdmhhhhyyhyosys+//+so+///////:--::////+++++++////++++++/++++++///////////////////////////:::::::::
             ```````````````                                                                                                              :.`                           `..-.-.../+ooyyhdmhhhdy+. .-+shyhhs+/:-```````````....--://: .smdddhy/-` `````````````````............---------------------------::::::::::::::://:`-/y+++o++++/+++++ooooossssssyyyhhdyydNmmmdydmNNNNNmmmmmmdhhhmmdyyhhhydmNhyydhdmmmmmmddhhmdyyhyyyysossos+++yso+////::--:+//++++///////////++++/++++////////////////////////::::::::::::::
          ```   ```                                                                                                                     ./-`                          `------:://+osyddddddhs:```-oyhdhhyo:.`` ``````.....----:::/++` /ymdo-`   `````````````````.............----..--------------------::::::::::::::::/:` .:/++++o++++++/+oooooosssssssyyyhhhhmmmmmhhmNNMNNmddddmNmdhdmdhysyyoydmNdhyhhdmNNNmdddhhdmhyymhhyysssyoso+/yys://:---:://///:///::://++++oo+++////////////////////////::::::::::::::::::
         ```                                                                                                                           ./s                          `.:::::::/+oyhhdddddddo:` `-/yddhs/:.`  ``````....------:::://+o/`.:+-`     ````````````````................---------------------:::::::::::::::::::::`   `-.:+oo++/++++++oooosssssssyyyhhhdmmmmdsdmNNNNNmmmmddmdhyyssssssoshdmNmhhhhhmNNNNmhdhhydhhymmyshhyssosso/+shs////.---::::////////+++o++o++///////////////////////::::::::::::::::--..`
                                                                                                                                   `..`/+.                     `----:://:::/:+yddddhhmds/.` `-+sys/-``  ````.......-------:::::://+o:`  `     `````````````````................--------------------::::::::::::::::::::::-`.......:.-/++/++++++ooosssssyyyyyhhdddmmdhhmmNNNNmmNNmmdysssossshyooydddNmhhhhhdNNmmmdyhhyhmmdyhyshddysssss+/+sds+/++-..---:::////++++++o+++/:////////////////////::::::::::::::-..```   
                                                                                                                                   .-.`::                     `-::::://+::///yddhhhhho:.  `-::--.` ```````.....--------::::::::://++:-.```` ```````````````````................--------------------:::::::::::::::::::::-..yyys:oss/.-/+/++++++ooosssssyyyyhhddddmdhhmmmmNNNmmNmdhyyyyysyyyooosydhdNmhhhhdmNmmmmmhhhhhmmdyhyyshddssssss+/+ydyo/s+:.`.---::://+++++++////:::///////////////:::::::::::::-..``        
                                                                                                                                      -.`                   `.-::::://///::/yhdhhs+:.`  `.-.`   ``````........--------:::::::::::/+o/::: ``````````````````````................-....----------------::::::::::::::::::::.`:hysyhyo/-:os+++++++++oooossssyyhhhhdddddddmmmmmmmmdhyhhhhyyyyso+ohhhydddNmhhhhdmNmNNNdddhhhdmmdhysshdmdoosssoo+/hdho/o+/`......-:://////////:::::::///////////:::::::::--.``             
                                                                                                                                     `.`                   `.-:/:::/+++/://+s+/:-``   `..`    ``````......----------:::::::::::/://os/+o:`````````````````````...............------------------------::::::::::::::::::.`.yysooossyyydd+++++++++ooooosssyyhhhddhhdmmmdddmddhhhhhdhhyyyyysssyhysydddNdhyydmNNmNNmdddhhhdmmmdhyshdmmyssyssso/ohdhs++o/-...``.-.--::::::///::::::::::////:::::::::-.``                 
                                                                                                                                     .`                   `-::::-::///////:-```     `..`    ````````.....------::::::::::::::::/://+soooy-````````````````````................------------------------:::--:::::::::::-`./dssosooooo+shdso++o++oooossssyyyhhhdhhhdmmdhmdhhhhhddhhyyddddyyyhy+oshhdmmhyhhdmNNmNmmddddddddmNmhsshdmmdsssssso+/shdys+/+/-..```.......---::::::::::::::://:::::--.`                     
                                                                                                                                     .                  `..::::/osyyso+:/-.      ``..`    ````````.......-----:::::::::::::::://:///+oooos:```````````````````.................------------------------::::::::::-::::.`/yhsssooooo++++yddy++oooooossssyyyhhhhhdddddhyyhhhhhdhyhhddddhhyyyyoshhyhddmdhhhdmNNNNmddNmddhdmmNmhsshdmmmhsssssso++smdhs+:+/:-.```.```......----:::::::::///:--.``                        
                                                                                                                                     `                 `.-:::/oyhhdddhs:/.`     `:-.     ```````........-----:::::::::::::://///::://++++oo/``````````````````..................-----------------------::::::::::::::-`-odysssooo+++++++shmdsoos+oososssyyyyyddddhhhyshdddhhhhdddhddhhyysssyyhhhdmmdhhhhhmNNNNmmNNmddydmNmmhsohdmmdhyososss+/+ymdyo+////-.``.``````.......---::::/:::-.``                           
                                                                                                                                    `                 `-:///osyyhdddhhs/:`   `.:o-`     ````......------------:::::::::::///////:::://++oosso.`````````````````.................------------------::::::::::::::::::-``shysssoooo++o++++++shmhyo+ooosssyyyyhhhhhhyyhhhhhyyhddmdddddhyyysyhhyhddhmmmmhyyhdmNNNmmmNmmdhhmNNmmhyyydmmmmhsooosso++odmdhy/:://:-.```````````````...----.``                               
                                                                                                                                    `                `./+++osyhhddddhyo/.` `./+o+`     ````..-----------:::----::::::////////////::///++ooooo+-` ````````````````................----------------::::::::::::::::::.``oyysssssoo++++++++++++hddysssosssssyyyhyyyyshhdddhhyddmmdmmdhysssdddyyddddmmmmdhyhdmNNNmmNNmddhdmNNddhyhyhmNmmdysooooso+osdmdho+/////:.`````````````````...``                                 
                                                                                                                                    `               `.:+++oosyhddddhhy+-``-/++o+.   ````..----:::::::::::::--------::://////////////////++++++o/-`````````````````...............--------------:::::::::::::::::::.`./hooosooooooo++++++++++osyddysoossyyyysssyhyhddddhhddmdhdmdhysyyyhddddhdddmmmmmhhhdmdmNmNNmmmdddmmmmdhhyhyhdNNmmdsssoosooooydmhyso+////:-.```````````````````                                  
                                                                                                                                                   `.-:/+ossyhhhdddhs/.`-///:/:-   ```..---:::://////:::::::::-------:::://////////////+//////+++:.```````....``.................--------------::::::::::::::::::-`-+ysooosoooo++oo++++oooooo+osddhysssyyssyysyhddddhhddmmmmmdhyysyhddhhdddhdddmmmmmhhdmNmmmdNNmmdmmdmmmdhhhhyhhdNNmmmyyssosooosoydddhs++++/:/:.`````````````````````                               
                                                                                                                                                   -:::+oosyyhhhdhs:..:/:--..-.` ````..---::///////////////::::---------::::///////:///////////////:.`````........................-------------::::::::::::::::--`:syoooooooo+++++o++++oooooooosohdmdyyyysssyyhdmmddddddddmmdhsosydhddhhmmdhhddmmmmddddNNNNmmmddmddddmmdhhhhhydddNNmmmdyysosoo+sossmmdysooo/:://-````````````````````````                           
                                                                                                                                                  `/++/ossyyyyhy+:.-///-```...` `````.-::://///+++++++++++////:::::---------://++/////:::::::::///://-.```.`.......................-----------::::::::::::::::-../hysoooooooooo++++++++oooooooosssshmmyoossyhmdmmddmmmmdmmhhhysyhdhhhhhdmdyyhdNNmmmdddmNMNNNNmddhmmdddhhhdhhyydddNmNmmmhyssooo+ssoohmmhyysoo/:://-.``....-:/+/+/::....`````                         
                                                                                                                                                 `::/+oossyys+:-.://-.`````..```````..-:////+++++++ooo+oo++++/////::::::----:://++///:::::::::::-::::-:-.````......---....-----....------------:::::::::::::-..+yyoooo+ooooooo++++++++ooooooosssssssyyssyyyhdmmmddNmmmmmmhhyssddddhyhhdddhydmNNddddhddmNMNNmmmmmhhhddhhddmdhhhddmmmmmmmdhsssso+oysoodmmyhyss+/:::::--/+oshmNNdNNmmys+:--....```                     
                                                                                                                                                `.//++oooo+/..-//:-````......`.--.``.-::/+++++oooooooooooossso+++///::::::::::///++///:::-::::---------:::.```....-----...--------------------::::::::::::.../yysooooo+oooo++++++++ooooooooooosyssssoosyshdddmdddmmmmmmdhhhyydddddhdhhdNmhydmNNmdhhddmNMMNmmNmmmdddhhdmmmdhhddddmNmmmmmmdysssso+osy+sdNdhhyss+///////shddhmNNmdmNNdddmdhyso+/:--..`                 
                                                                                                                                                .//++++:-..::/:-````....-..-.`.-/+:.`::/+++++oooosyhhddmmmmmmmmdso+////:::::::://+++//:::--::-------------::-.``...----------------------:::::::::::/::-..:+yysooooooo+++o+++++++++o+oooooooossossss+ssshdddmddmNmmmmmyhhyohmNdhhhyhddmddhhmmNNNdhdmmNNNNmmmNmmmmmddhhmmmhhhddhdmNmmmNdmdhyysssoosys+sdNddhyyo+//++//+osyosyhhyyyyyyydhyyso+/::--.``                
                                                                                                                                               `-::-.``.-:/:.``````.....-----`.:+oso--:/+ooooooosdNNNNMMMMMMMMMMNmyo+///:::::::/+++++//:::---------.....----://-.`...--------------------::::::::::--..-/yyssooooooo+++++++++++++ooooooooooooossyso+ssyhmdddddmmmmmmmhhhyshmmdddhyydmNNmdhhmmmmmhdmmmNNNNmmNmNNmmdddmddddhddddhdmNmdmmmmmdyyssooosyyo+odmmdhysso/:/++///++//++//::----....````````                  
                                                                                                                                        ``````````..--:::-.` `````..-.-----:-`.:+oyys.:/+ooooooosdNNmmNNMMMMMMMMMMNh+//:/:://///++++++//::-----...........----:://:.```...----------:::::::::::--...-osssssoosoo+++++++++++++++++++oooooooooossoysoosshmddddhmmmmmmdhhyyydmdddddhhdmNNmmdhdmmmNddmmdNNNNmNNNNmmmmdmmdmmdhhmmdddmmmNmddNmmmhyyyoossshso+ymmdhhssso///+////:---....````.`````````                   ``
                                                                                                                                  ```.-:+osooo//+o/-----`` ````...-----:----.`.:/oshho/:/ooooooosshhhhhdmNMMMMMMMMMMho:::///////++++++//::----.......``........-::/+o+/:-..``.....------......-:/osyyssssoooooo++oo+++++++++++++++++ooooooooossyoosyydddmhddmhdmmmdhhsyhddddddhhhdmmmmmmhhmdmmmdmmmdNNNNmNMNNmmmmmddmmmmmdyhddmmmmNNmhmmNNdhyyossssyysoohmmddyssyo+//+//:-..```......``                      ```````
                                                                                                                                `.-://+osss+/:----:----` ````..-.------------`.-/+oyhdo:-+ooooooooooooosshdNNMMMMMMMNy/:////////+++++++//:----.......````.`.......-://ossooo+//::------:/++oosssyysssooosoooo+oo+++++++++++++++++++++ooooooossss+ooshddddhdddddddddhyyhdddddhyhdmmmmmmmdhdNmmdddNmmNNNmmNNNNNmmmddmmmddddmhdddNmmNNNmdhdmNmdhysssssshyssydmmhyssyso+/////-.```````````````             `````````````
                                                                                                                           ``.-:/:/+oyso+/-----:::---.   ``......------------..-//osyh:``:++++++oo++++//+++shmNMMMMMMms:/++++++/++++oo+/::----..........`````.......---::/++ossyyyyyyyyyyysssooooooooo+++++++++++++//++oo++++++++++++++oooossys+ssshddddhddddddhhdhyyddddddhhhmmNNmNNNdddmNmdddmmmmNNNNNNNNNNddmmdmNmdddmdhhdhmmmmNNmdddmNmdhyssssssyyyssydmdhysssso+///+-.``````....`.....`       ``````````````   
                                                                                                                        ``---::/oo+//:---.-----:::-.`   ```.....----..---..--..-:/+os:.``-:/+++++o++++///////+sydmNNmds/+++++++++ooooo+/::----............`..`.........----:::://+++++++++++++++++++++++++////////////++++++++++++o++++oooosyo++yyhhddhhmhdmmhddhyyhddddddyhddmmNmdmmmhhmNNmhhdNmmmNNNNNNNNmmmmNdmmmmddmddhhhmNmmmNNmdddmmmddhyyyyysyyysosymmhysssso+/:///-.`..`.......--:::-`      ````````````````
                                                                                                                   ````...:/+oo+/.```..-..-:::----`     `````................`..::/::  ```--::///////////::////:://++++/++++ooooooooo+//::---............`````.............----:--::::::::::://////////////////////////+++++++++++o+ooooossyy++syhhddhhddddddyhhhyydmdhddydmmmmmmmmmmdhdNNNNhdmNmmNNNNNNNNmmdmmmmmmdhmmmmhddhdNmmmNNNmhddmmmddhyyyyssssyooshmdhyhssoso+/:::-..-..---------:::-```````````...........
                                                                                                                `````.-://++/-`````..-.--:-:--:-.`       ```````````````..``........` ``.`....-:::+///////////:+/://////+++oooosssoo+//::---............```.......``...........-------------::::::::::::///////////////+++++++o++++++ooossyh++oydhhdhydmdddhyhyyyhddddhhhdNmmdmNNmNmdhhmNNNmhdmmmNNNNNNNNNmmdmmmmmddhmmmdhdmmhNNmdNNNmhdmmmmmdhhysyysssysooyddhsdysosso++//:--::--------:::/::-```....-.............
                                                                                                            ```.....-:///:.` `````...-----:/:-.`            ```````````.--..........`........`.-::++++//++//////////////++ooooooo++//:::----.............`.........................-------------:::::::::::::////////++/++++++oo++ooooosssss/+shhdddyhddddhhyhyyhmddddhdmNNmmNmmmmNmhyymmmmddddmmNNmNNNNNNmmmdddNmdddmmdddmmmhNNmdNNNmhdmmmmmddhysydsssyyooyyyhhdhsooso+////:::::::::://///++++:-..------------.....
                                                                                                         ````.--..-:/+:-`  `` ```..--:-::/----`           ````````````.--:-------..../----...-:///:+++++oso//////::/:://////////::::::-----....................................-...-------------:::::::::::/:://////+++//++++++++oosoosssys+/oydyddhydddmhysyhhhhddhhhdNNNmmNNmmmNmdyyhNNmdddddNNNNNNNNNmmNNNmddNdddmmddhdmdddmNmdNNNmdhddmmddddyssdyssssooyhyyymhysooso+++//--:::::::/+++++ooo+:..-------------....
                                                                                                      ````......:/:-.`` ``   `...---:::::-----            ```````````.-::::-:----....-:--:-::::////++++osyyso+/+/:::::::::::::::::--------.....................................-----.-----------:::::://::///://////+++++++++++oooooosssyys:+yhhhdhyyhdmmssydhyhhmdhhhNNmdmNNNmdmNmhyydNNmdNmmdNmNNNNNNNNmmmmmmmmhdmNddddmmdhhhmmdmNNmddhhmmddhhysoyyyssyso+hhyymdhyoosso++//-:::://///++o+++++o+:.....--...-----...
                                                                                                   `````..--...--.``     ```..---::----...--.`              `````````..-.---:-...-..-::-----:::::::/+++oooooss/+//::::-:::------------------.........................-.......-------------------::::::/::://:::///++++++++/+o++ooooossssys+:yhhhyhhssdmdhoyhhsddhdhhhmNmmdNNNNddmmdyyhdNNmmmmmmNdmNNNNNNNmmmmdmmdhdmmdhddmmmmmdmmmmNNmddhhmmmddhhyosyyssysooshhymmhysoosy++/+:/:://///+/+o+++//++/-....--....----...
                                                                                                  `````--...---.```   ```...-.--:-..--......`                ````.--....--.``````..-:-.........-::::::/+++++os+++///::::---------------------............................----..--------------:::::::::://://://////+++++++++oo+oossssssyy+//hdddhysoyddhohdhsydhydhdNNmmmdNNNNdmmmhsydmmmmmmNmdddmNNNNNNNNmmmdmmddddmdhhdmmmmNddmNmNNNmmhhmmmmdhhysyyysooooooyhyhmdhyoosyooo+/////:///++++++++/+++:-...----....---..
                                                                                                ```....``.---..`  ``````...---:--.---....::.`          ``````````..-----.```````````````..........--:://///+oo+ooos////::---------------------..........--.................--------------:--::::-:::::://:////////++++/++o+ooooooosssssyo//shddhhysohdyssmhysddhyyddmmmmmNNNNNdmdhshdmmdmNNNmmdmmmNNNNmmmmmmdmmmdmddmmdddmmmmNddmNmNNNmmdhhmmmdhyysoyyysooo+oyhdyddhsssosoooo+////:///++++oooo+++o+:-.............--
                                                                                               .```..```.---`` `````````.--..:...:--.-:://-`           ````````````.-.` `````.````..------:-----....--::://////++os++++::::--------------------......----------........-...--------------::::::::::::///://///////+++++ooo+osoooossssssy+++hhddhdsoohysshhyyydddhsdmmmmNNNNNNdhdhsydmmdhmmmmNNmmmmmNNNNmmmmmmmdddmddmmmdddmmmmNddmmNNNNmddymmmddhyyoyhhysssoosyhyhddhsssosooos+///////+oo+osooo+++o/:--....-......--
                                                                                             `......```--.````````````.....-:-..-:--:////:.`       `````````````...````````.````.--::::::::::::::::------:-::////++////:///::::-----------------...--------------....--....--------------::::::::::::///://///////+++++++oooooosssssssss//ohdmmhhoosyooyhdyyydhhhhmmddmmmNNmmddhyyhmmddddmNNNNNNmmNNNNmmmmmmmdddmmddmdddmdmmmNNmmNmmmNNdddyhmmmhhyyosyhdysooosyyhyhdmsyyyosoooo+///////+o+ossooo++o+/------:---...-.
                                                                                            `.-.```....-```````  `````..`-:::---::::/+///+.`       `  ``````..`...```````....---:///////:/://///////:::------:://///////+++//:::::::------------...--------------------------------------::::::::/::::///////+///+o++++ooooooooyssssssso+osymmmhyo+oosyhdhysyddhydhdmmNNNNmmmhyyhdmmdhhmmNNMNNmNmmNNNmNNmmmmmdddmhdmmddmmdmddmdmmNmmmdmdddhydmmhhyyyooshyoooooosdhyydhyyhssooos+/+o+/:/+oo+oossooo+o/:---------...--
                                                                                          ` `...`..--..` ``    ``````..../::--::://++///::`     ````  `````....-.``......--:////+ooooo+++++++++++++/++//::------::://///++++///////::::-------------------------------..-------------:::-::::::://:::////////++++/o++++sssoooosssssossyo+osymmdhy+++shyydhysydhyydmmmmNNmmmmhyhyhdmdhdmNNmdMNNmNmmmmmmNNmmmmdmmdhmNNmmmmmmmmmmdmNNNNNmmmmmdydmNmdhyhsoshhysoo++osddysdhhhhsooooo+++oo+::+soooyssssoo+/:---..---.----
                                                                                           `......-.``       `   `` `...::::::///+////::--        ` `````...``.``.--.---:://++//+sssosooooosssoo++++++++++/::----:::////////+++///////::::::::-----------------------...-----------::--::::::::::///:////////++++/++oo+oooosoossoooshhsoooshNddhs+/+dhyyyyyyhmyyhNNmmNmmmmmhyshdmNmhhdNNNNmNNNmNmmmmmNNNmNmmdmmddNNmmmmmmNNmmddmNNNNNmNNmddhhdNmdhyhyssshhysooooshhysyhhydysoo++o/++oo+//+ysssyssssoso/------------.
                                                                                           `.--`.-:``           ``` `.-::-::://////::-..``    `   ` ``.....`...`.-:--::/+++ooooooyysoyssssysssssoooooooo+++++//::::::::::://++++++//++//////:::-------------------------------------:::::///::::::////////////++++ooo++oooooosssssyhhhy+ssydNdhyy//sdhhyyyysshsymNNNmmdmmmysyhdNmdyhdmNNNNmmNNNNNmmmmNNmmmmmmddmmdmNmmmmmNNNmhdmNNNNNNmNNmhhhhmNdhhhhysshhyssoooohddysyyyyhhs++++o+//+s+/:ossssyyyysss+:::----------
                                                                                         ``.--.`--.         `   ````-://:::///::---.``````         ``........``.::////+o+ossoossyhhysysyyyyyyyyysssssoooooooo+++///::://:///+++/++//+o+//+++//:::------------------------------------::::/++////://///////////++++ooooo+oosossssyyhhhhy+yyymNdhys:+hdhhyosyysyoymNmmmmdmmmsydmmmhhdddmNNNNNmmNNNNmmNmNNmmmmddddmmdmmNNmmmNNNmddmmNNNNNmNNNdhyyhmhhdhyysoyyyysoossshmdsyyyoyhyo+++s+++++o+/:+ososyyyssss:------------
                                                                                        ```.--`.-.``        `   `..-:/::::/::--.``````...`     ````````...-.```-/++++ooossssossyhhhdhyyyhhddddhhyyyssoosssosssoo+++/////////////+////+++++ooo+//::---------------------------------:::::://+///::////////////++++o++oo+oossssyyhyyhyhysoyyymmhyh+/ohhyhyssyhhsshNNmmmmmdhyhmmdhhdmdmNNNNNNNmmmmNNmmmmmmNmmddhmmmmmmmNNNmmmNNmmddmNNNNNNmmmmhysymhhddyyysssyyysooyoymmyyhmossyyo+/+o+++/+++//+ooosssssos/--:-::::::--
                                                                                       ````---.--.             `.-:://:://:-`.````...`...`   `` ``````.---..``.++ooso++/:::::::::////://++oooossssyyyyyyysyyysssssoo++/////////////++oo+++++os+///:---------------------------:-::::::://///////:////:///////+++++++oo+ossyyhhhhhhhyhhyohyhddhys/+syyyyyyshhy+sdNmmmmmmhysdhhhdNNNdNNNNNNNNNNNmmmmmmmmmNmmdddmmmmmNNNmNmmmNNNNmhhmNNNmNmmmmmhyyddddmyyyysyyyyysososhNdyshhysoyso//+oo+++oo+//+o++++ooooo/:::::::::::
                                                                                      ``` `/:-.:-` `         ``-///://////:-...``..```-:-      ```````.--...`.:+ooo/..`````````````````.......---::://+osyyyhhyyssssssoo+/////////++++oooooo++o+//::----------:--------------:::::::::://////////////////////++++o++oooossyhhdhyyyyhhysohhhdddho/syyyhhhhsdho/ymNmmmmdhyyhdddNMNNmdNNNNNNNNNNNNmdmmmNmmNmmdhdmmmmmmNNNmmmNNNNNmddmmmmmNNNNmmdysyhddmhyyhosyyyyssoosymddhsdhysyoo++++++/+oo++/:/++++oooos+:::::::::::
                                                                                      `   `/:--:.` ``    `` `-:+/:://///:/:--...----::/:-    ``````....---...:/oo:.     ```````````````````....--------::::+osyhhhhhyyysoo++++/+/+++++++o++ooooo++/:::::::------------:------:::::::::::/::://///+//://////+++++oo++oosssyhdhyyhhhdhhhyyhhhdmdhsosssyhddhydho/ydmmmmdhsyhmNNNNNNmdNNNNNNNNNNNNNNmmmmmmmmmdddddmmNdmmNMNNmNmNNNmmddmNmmNNNNmmmdyohdmddhyhssyhyssy+syyhddhodmdyysso/+++///+ooo+/:+oooosssoo/::::::::::
                                                                                    ``    .::-.:.` ```  ```./+/:://+////://::-://:::///:.     `````....-----:/+o.` `````............------:::-::::/:://////////oosyhdhhyyssssoo+////++/+oo++oosso++/:::::----------::::::::--::::::::::////::////+//////++/++o+++oooooyyyhdhyyhhhddhhhyyyyhmmdyooossyddhyydhs+hmmmdhhyhmNNNNNNMNddMMNNMNNNNNNNNNmmmdmmmmmdhdmddmmmmmNNNNNmmmmmmNmdmmmdmNNNmmNmdoshmdmdyyyssyyysyossyydddyymmdshys+/++++/+ooso+:/+ooosssso+:::::::::-
                                                                                   ```   `.::-.-.````  `.----:::/+/::/++/+++//++/:::///-`      ``````..---:+ooo.````...----::::::::://////+++/+//+++++/++++++++++++osyhdddhhyyyso++/////++++++oooo+//::::-::------:::::::---::::://::::/:::////++o+//////+//+o+++osoosyhhdhyyhdhhhhddhyyyhdmddy++ossyddhshdh+ohmmdddhdMMMNMNNNNmddMNMMMNNNMNNNNNNmmddmmmdhdddmmmmNmmdmmNNNmmNNdmmmmmmmhmNNNmmmmyyydddddshysshhyysosyssyhdohmNhyyyo+++o++++ooss+/++++oossso/:::::::::
                                                                                   ``     .:::--.``.`.---.`.:/++////////+oo+:://://///:.`  `````.....---://oys/ `..--::::::::///////+/+++oo++++++++++++++++oo++o++oooosshhddddhhysso+//////+oo++oo+//::::::--::--::::::::::--:::////:::::////:/++o+/:////+++++++oosssyyhddhhhhhhhhhddhyyhhhddhs+ooosyhdhshdh+ohdddmdmMMMMNNNNNNmddMNNNNNMMNNNNNNNNmmdmmmddddmmdddNNNmmmmNNNNNmmmmdmmNmmddmNNmmNhyyyddmdyhysosyhhhsooyssydsshNdyyysooo/++++/+oso/+o+++osyys/-::--::::
                                                                                  ```    ``::-.-.-:/-..`.::/oo+/+++o++++/oo+::::::::::-.` ````.....-::::/++sy+.`.---/////++/+++++++++++++ooo++++++++++++++++++++oo++oooossyyhdmmddhyo++//////+++++++//::::--::---::::::::::::::::////::://:::///+so+/+//////+oooosysyhhdddhhhhhhhhddhhyyhddddysoysoshhhhyhdhssyhmNmmNMMMNMNNNNNddmNMNNNMNNNMNNmNNNmmmmmmddddmmmddmmNNmmmmNNNNNmmmdmmmmNmddmNNmmhyyyhhdddyyyossyyhys+ssssshyymmdysyo+o++/+o+++oy+++o+++osys+::::---:-
                                                                                  .`     ``::--/:-..`..-/++ooooo+ooo/:::-://----::----.`  ``````..-::::////+/-```.--/////++++++++o+++o++++oo++++++++++///+////////++++++oooosyyhdmmds+///////++///////::::::::---::::::::::::::::::/:::::::::/::/so+:///++//++oosssyyhhdddhhyyhdhhdddhhyhddhhyoohyssdhhyyddhossdNmNNMMMMMNNNNNNdmmNNNNMMNNNNNNNmNNmdmmmmdddddmmmmdmmNNmmmNNNmNmmmmdmmmmmmmdmNNmdyyyshdhdhyssosyyyhys+ssssyyydmmdhsso++o//+o+++soo+so++/osso:-::----:
                                                                                 ```   ``..:/:::--:/:--///+o+ooo+oo+-.--..::..-:--...-.`  `   ```.-:////:--.`````..-:-:////++ooooooo+++oo++++++////////////////::///////////+++/+oso+////:::///++/:://:::-:::----:::::::::::::::://::::::://:////o+//+///+////oosssyyhmddhhyyhhdhhddddhyddhydyoohhyyyhhyyhdhooydNNNMMMMMNNNNNNmdmNNNNNNNNNNMNNNmmmmmNmddddddddmmmmddmNNNmmNNNmmmmdmmmdNNmddhmNmdhhhyyhhddhysosyyyyyysossysyyymdddsso+/oo+/+++++o++soo+/+oss+:-:---::
                                                                                 ``````....///:/:-.....-:/+ooo+o+so/`.-:-.::--:-`..-::`` `    ``..:///:--..```````..-::/+ooooooooooooo++o++++++////////////////////////:::::::::/::::::/:::::/++//::::::::::::-::::/:::::::::::::///:::/:://:////o+/:+//++///++oooyyyhmdhhhyhhdhhddhddhoddhydhsodhhyshhyydhysyhdmMNNMMMMNNMNNNmmmNNNNNNNNNNNNNNmdmmmNmmddddddddddmmmdmNNNNmmNNNmdmmmmmdNNmmddddmdhyhhhhddhhyoosyhhyyssooosyyydmmdhsso++++////+/+//+++++//+o+:--::::/
                                                                              ``......``...///.--..-.``:+/:.++++oso:`.-:/://-.``.--:::`  `  ````..:----..````````...-:///+oo+ooossssssooo++++++//+o+//////////////////:::::::::::::::::::/::-/+//:::::::::::::-::::/:::::::://:::////::////////++o+//++//+///++++odyhdmdhyhhhhdhhhddhdhshdhhmhyoddhyshhyyhhhyshmmMNNNMMNNNMNNNdmmNNNNNNMNNNNNNNNmmmmmmmdddddmmdhhmmddmNNNNmmmNNNmdmmmddmmNNmddhmmdydhyyhddhysoosyhyyssoo+osyyymmmmysoso++//+//++//++++/////+/:::--::
                                                                        ``.--:--..``       -//-///:--...-:::o//oooo/::::--/:.`.--:///-`     `` ..---...````````````..--::+///+osysooss+++++++++/++++///////:::::::::::::::::-----::::::::::::///::::::::::::::-::::////:::////:/://+///://////+o+++//+++/+++++++oohyhdmhyyhddhhhdddddhhyhhddmdhshddhsyhhsddhysdmNNNNMMMMMNNNNNddmNNMNNNNNNNNNNNNNmmmNmmdhddmmmmdhdddmmmNNNmmNNNNmdmmmmmmmmmmmdddmdyhhyshddhhysoosyhhysssoosyyyhdmmdysooo+//////++//oso+/+/:/+/::---:
                                                                   ``-----...`  ``         -/+++:.``   `-://+++osyys...--:::-.-::://:.  ```````.....```````````````..--::///+syyso++o++++++//+//////////::::::::::::::::::----------------:::::::::::::::::::::::::///:////////::/+++//:/:/++/+o++++//++/+++++oooohyhddhysyddhyyhhdddhhyhdddddhhhddhsyyhymmdhshdNNNMMMMMMNNNNNdmNNmMNNMNmmNNNNNNmmmmmmdddddmdmmmdddddmdmmNNNNNMNdhNNmmmmmmdddddmmdyydhyhhddhyssooyyyhssss+oyyyhdmmmdhosoo+///+/+o+/osso+++//+/::::::
                                                            ```.----.``          `    `.-::://..````   `:/+/++ohhyso/o+////::////+/:-````` ````....````````````````...-:--:/ooooo++++/+++//////////:::::::::::::-----:-:::-----------------:/----::::::::::///////:+///////+/////////+/:///++/+os+//+/++++++++oooohhhddhhyyddhyhhhdddddhhhddddddhhddhyyhddddhdydNNNNMMMNNNNMNNhmNNNNNNNNNmmNNNNNmmmmdmdddhdmmmmmmddddddddNNmmmMNmhNNNNmmmmmddddmmdhhddhshhhddysoossyhhysysoosyydNmmmdyosso/++++/++/oooo+/++////::---
                                                        `..--...``                `..----.` -:...`     `-/+/+osysso/-/:::://:+////:--`````   `````````````````````..-..---::/+ooo++/+////::::::::::::-:::--------------::::----------------::-:::::::::::::///////:++/////++/////++//++////////+s+/////+++++o+oosshhhddhhyydhhyhhhdmddddddddddmmddddhyyhmdmdhmyhNNmmNMMNNNNMNNdmNNNNNNNNNNmmNNNNmmNNddddmhdmmmmmmmmmdhddhdmmmmNNmdNNNNNmmmmddhdmmdhyhhhsyhhhmhysoosyyhysysooosyhmmddhh+oso/++++++//++o+o+/+o///:::--
                                                  ````.-..``                 `.--/:.`       .:.```     `-:///+oooo+:.-://///://///---``` `   `````````` ```````` ``.....----:/:::::::-:::-:----------------------------::-----------:------:::::::::::::///////++/////://++++++/++///++////:////o+///+///++++soosyyyhdddhyyhyyhhhhdmmmdddddydmmmmmmddyyhddmmdmhhdNNNmNMNNNNMNNdmmNNNNNmNNMNmmNNmmmNNmddddddddmmmmmmmmddddhmmNNmmmmNNNMNNmmmmdhhhdhhyhhyyssyhhhhyo+osyyhhssssoosyhmmdhhysss+++o++++//+o+so++o+/::::::
                                              ``....```                 ``-::-...`       `  .--```     `-://:++o+o+:::///::/:///::::-`.````````````````    `````````.--.....::----------------------------------------------------------::::::::::::::::///////+++///////////++o+++/+++++++//::/oo+/+++//++++o++osyyhddmdhyyyyyhhhhdmmmdhddhddmmmmmmhyhhhdmmdmmhyMNmdNNNNNNMNNddmNNmmmNNNNNNmmmNNNNNmhhdmddmmmmmmmmmmddhhydmNmmmmmmNMNNNmdddmmdhhhhshhhhsosdhddhyooosyyhhsyssossymmmdhyysoo+++o+++/+ooooo+++o+/::://
                                           ``..``                `..--:::.``       ``       `--```     `-///:/+o++/-:/-.-::::-:---::.`````````..``````````````` ``````...-...------------------------------------------::----------------::::::::::::::::////+/////++++/+////+o+++++////+++++///+o+++++////++++++ohhhdhddhyhyyyhhhhhdmmdhddddddhmmmmdyhhhhddmdmmhdmNNNNNNNNNNmddmNMNmmmNNNNNmmmmmmNNmdhdNddmmmmmNmmmdddhhdddddNmmmmNMMMmmmmmmmmmddhyhddhyssydhhdhhso+yyyhhysyososdddmdhhsoo++os+++//+oossso+oo+////:
                                         `..``            ```.--.....``        ```          `.-```     `-:/::/+///-.::---:::---...:-.````````````````````````````````..........------::------------..--------------:::---::---:::::::---::::::::::::::://////////////+++/////+++++++/////+oo+////+++/+++////+++++oyyhdhddhyhhhhhhhhhdmNmddddddddmmmNmdhhymmmmmmmmhmNNNNNNNNMNNmddNMNmmmNmNNNNNNNmmNNmdddNddmmNmmmmmmddhddddmmNmddmmNMMNmNNNmmNmmddmhhdddyssshhhhdhysoosyyhyysssssyyhdmhysoo+++o+++///++ssssoyys+/+++
                                       ````         ````.---..``                            `.. ``     `-:::/++//:--:---:::::-...-:-.` ```.``......```````...--......-:::--...---:::--:::::-------...-.-------------::----::::::::::::::::::::::::::://///////////////+o+///++/+/+o++/++/++++////+++/++++++//++++oyyhddhhhyhyhddhhhddmNNmddmddddmmmmdNmdydddmNNNmhdmNNNNNNNNNNmddNMNNmmmNNNNNNNNmmmmmmddmmmmmNNmmmmddhhdmmdmNNmmmddNNMNmmNMmmmNmddhhhhddhysohhhymhysooossyhhysoosyyyydhhysoo+++o++++++osooossyyo++++
                                      `.`   ````...``````                                   ``````     `-:::/+///::/---:://:-`..-::.` `````......``..--.....--:::--....-:-----::/:/+//::::::::-----..-.------------------::::///::::::::/:::::::::::://////////+//////+oo+//++///+++/+++/+++++++//+++o+//++++++oooyyhhhhhhyhhhddddhdmmNNmddddddddmmmdmNmhddddmmNNmhhmNNNNNNNNNNddmNNNNNmNNNNNNmNNmmdmmddmNmdmmmmmmdddddmmddmmNmNNmmmNMNmmmNNmmNmmdhyhddyhhyosyhydmhysoosysyyhssooshysyyhhsoooo+o+++++++sssssssso++++
                                      `````.--.`                                            ``.``  `  ``-:::////:::/-----///.`.-:/:.`````.`.....```````...`.....------..------::::::/++//:-::/::-------------------------::/:///+///:/:://::::::::::::////////+++/+//+++++//+++++//+o++////+++++////+o+//++++o+ooossyhdhhhyhhhdhddddmmNNNmdmmmdhdmmmdmNmddmmmmdmNNmdhNNNNNNNNNNmdhmNNNNmNNNNNNNmmmmdddmmmmmmmmmmmmdddmmmmmdmmdmNNNNddmNmmdNNmmNNNdhyydmmhyyyosyyyddhysosyysshysooshdhssyhy+ooo++++ooooossssyyyss++++
                                      `..```                                                `..```    `.--:://++:--:---:://-.---:/-.`````....-..--.........-::::----::::::--.-::::::/++////::/::-----.----::::----:::--:-::::://:++o///++////::::::::://////////+++////+oo+///+oo+//++++//+++++++++++oo+//+++soossssyhdhhyyhhdhddddmmmmNNmmmmmddhdmmmmNNmddmmNNNNNNmddNNNNNNNNNmdhdNNNNNNNMNNNNNmmmmddmNmNmmmNmmdddddmmmmmdmNdmNMMNmmNNmdddNmmdNNmmhyhdmdhyysssyshddyyssshysshysooshddsyhyoossoo++osoosyyysyssyy++++
                                       :.                                                   `.-`  `  ```.-::////:--:---:/+:-.----:-.``...-----.```...-.--:::------:::::::::///::::::///////::::::----------:::::::::::-:-:::::/+/++o++ooo////:::::::::///////////++++///+++/////+++//+oo//++++///+++++o+//+++oooososyyhhhyhhhdhdddhmmmNNNNmmmddmdhdmmmmNNdddmmmNNMNNmhdmNNNNNNNNdhhmNNNNNNNMNNNNmmmmddmNdNNmmNmddddmmNNNmmmmmdmNMMNmmNNmmmddmmdmNNmyyhhdmdhysssysyhmdyyssyhysyyysoosydyyyhsosyysoossoosyhhhyooos++++
                                       --.                                                  `..   `  ``.--:////--::-.-:/+::-:`..-:-.```...::--.....`..-::::::///::--::://////:::::::///+++///::///::-----::---:///:::::::::::::////+ssooo+/////:////////////////+++++///++o+++///++++++++///o+++///++oooo++ooo+oos+syyhdhhhhhddmdddmNNNNNNNmmddmdddmNddmNmmmdmmmmNNNNmhddmNNNNNNmdymNNmNNNNNNNNNmmmmddmmmmNNNmddhmmmmNNNmdmmmmmNNNMNmdNddddhdmddmNmydhhydmmdysssysyddhyysshhyohhyoosyydhyysyhhyysso+syyydddysooo/+o+
                                        .--`                                               `..`      `..-::/:/:-:::-.://:/:-.`.-::..``....-::::-....----::::::///:://////////::::://////+//////++/:::::::::::::///::::::::::::://++++yso+//++//::://////////:///++/////+++++++////+++++++++/s//+/////+oo+++osssossosyyyddhhhhddmdddmmmmNNNNNmmmmddddmmmmmmNmmdmNNNNNNNmmdhNNNmNNNmyhmNNmNNmNNNNNmmmmdmmmmNNNmddddmmmmNNNmdmmmNmNNNMNmmNmdddyhdddmNmhddhhhmmmysssysyhddhyssshdsyhdysooyddhsssyydddhysyhhhdmdssssy++++
                                         `.``                                          ````..`       `..-:/::::-::--:/++:::-`..-:/-..----://:------..--::::////++//+////:///////////++++++++++o++///+++//++++///++/++///////://+/++o+osso+++/+++///::://////////////////++o+o++/////+//+/+++s++++/////+++o+++ssoossssyyhddhhhdmmddmmNNNNNNNNmmmmdmddhmmmNmmmmdmNNNNNNNNNmdmmmmNNNmdydmMNNNNNNNNNNmmmmmmddmNNmhdmmmddmNNNmmmmNNNNNNNNNmNmmddhhhhdmmmddddhhhdNdysssssydmdhyssyddyydhysssyhdhsoooyyhhhhdddddysoyyhdso++
                                           ```                                           ````        `..-::::---:::-/++/:/::---://-..-::::--://:::---:::///+++////++++///+++++++++++//++//++ooo++/+++o++oo+o+///////++/+/::///++oooo+++oso++++++++///://///////////////////++++////+o+//+//+++++o+////+++oo++osssysssyyhhddhhddmdmmmmmmNNNNNNNmmmmmddddmNNNNNmmmdmNNNNNNNmmmmdddmNmyhdmMNNmNNNNNNmmmdmmddmmmdddmmNmmmNNNmNmmNMNNNNNNNmNNmddhhhdmmmmddddhhhdmmdyyssyyhdddhsssymhyhdhssyyyhhsoooshyoo+syyysoosyhhhso+o
                                                                                                    `.---::/:-..:/::////:::--:++/:-..:---:://////::::::://///++//++++///++++oo++++//+++++/+oo+/++ossso++osossoo+++o+++oo/////+o+sooooo+ooo++o++///++//::////////////////////++++++++//////++///+o++++++++oso+++osssssyyhhddddddmmmmNmmmNNNNNNNNNNNmmmdddmmmNNNmmdmNNMNNNNNdmmmmdmNNdhhhmNMNmNNNNmmmmmmmmdmmddmmmNNNmmNNNNNNNNMMNNNNNNmmNmdmhhdhhmmdhmmdhhhhdmdhyssyyyddddyysshmhyddhsyhhhhso++oysss+oosyyyyyyyyyyooo
                                                                                                    `..:::-:----:://++/:::://+/:-:-..---:/::--://:::://///////+/+oo+++/+ooooooo+oo+++soo+oooo++oooosysoosssssshsoo+sooo+o+++/+osso++osoosoo++o++/////////////++////////////////+++++//////+++///+++++o+++ooo+o+osssssyyhdmhddddddmmNNmNNNNNNNNNNNNNNmdddmmmmNNNmmddNMNNNMNmmmmmNNNNmdhydmNNNNNNNmmdmmmmmmmmddmmmNNNmdmNNNNNNNMMMNNNNNmmNNmdhddhhmmdydmddhhhhmmdysyyyyddddhysosddhyddyysyyysoooohyss+ooyyyhhyssyhysos
                                                                                                    `..--:::`.--/:://+///+//:--..-:-.-::::-::/://////+++////+++/sso+++++oooooooooo++sysssssssosssssyys+oosyooshdhyssossooossoooosssoosssssooosoo+////////////////////////+++///++++++++/+++++o+++++++soooooooooosyyssshhdmhdddhddmmNNmNNNMNNNNNNNNNNNmmddmmmmNNNmdmmNNNNMMNmmmmNmmmmmmhdmNNNNNNmNmddmmmmmNdhmmmmmNmmmmNNNNmNMMMMNMNNNNdmNNdhhdddddhhdmddhddhhddhsyyyyhdddhhyyshdmyddhyyyssyso+ohysso+oyhhhhhssymysos
                                                                                                    .------:.-://:://+++/:.` `..------///---:/+++//++oo++//++++oso++++o+oooo+ossosssyyysoyyyysyhhyhyysssssysssydhhyyssoyssssoosssyyyossssysoooooo//////////////+++////////++///++++++ooo++ooo++++++oossoosso+osssyyyyyydddddddddmmmmmmmNNNNNNNNNNNNmNNNmddmmmmNNNNdddmmNNNNNmmdmmNmmNNmhdmNMNNNNdddmdmmmNmmddmmmmNNmmNNNmmmNMMMMNNNMNNdNNNNhhhdmddhddddmhddhhdddssyyyyhdmdhyssyhmdhhdyysoohyo+oyyssoosyyhhhyyyhmsoos
                                                                                                   `.-:---::::::::://+:...`` `..-:-::://:-:///++/:+ooooo++/+/+ooo+++ooososssoossyyyyyyyyyyyyhhhhhyhyyyyyyssyyyyhhddyysoosssssssysyhhhsssysyyyoooso+////////////+o+/+////////+++++++o++oosooooooo+++oossssssoooosssyyyyydmddhddddmmmmNmmmNNNNNNNNNNNNNNNNNdddmNmmmNmddmmmNNmNNmmdmmNmmmNdhhdmNNNNmddmdmNmNmmmdmNNNNNNNNNNNmNNMMMMNmNMNmdNNNNhhhmdddhdddmmhddhhdddyssyyyhdmdhyyysyhmhhhdsso+yhyo+yysoooosyhdhyddddsssy
                                                                                                   `-:::::/:-::::::://-..```````..::/++/://++o+/+o++oso++os+/+oooss++oooossyysssyyyyysyyyhhdddhhhhhhyyhhhysyyyyhdddysssosssssoosyyyhddhyysyyhsooosoo++///+////:/++++++/////++++oo+++ooo+sssoossss+ooo+syyyssssssssyyyyydddhhddhmmmmmmmmmNNNNMNNNNNNNNNNNNmmmmmmNNNNNmmmmmmmNNNNmmmNNNmNNmddmNMMMNNmmdmmmmmmmmdmMNNNNNNmNMmNNMMMMMNNNNmmmmmmhdmNdddhmddmmhdddhdddyssyshdddmdhyyssyddhhdysoohhhyosyyssssssydmdddhhssyy
                                                                                                   `-::::::--:/:-::-/:-..```.`..--+//+///+oo+/oooooooosssooo+ooosss+oossyyyyyyyyhyhhyyyhhhhhhhhhhdhhhhyhdhyyyyymddddhyyssysossssosyhhmddhyyyhhsossssso+++++///:/++++///+++++++++oooooooo+sssossyyooosossyyysssssssyyyyhmdhhddddmmNNNmmmdmNNNNNNNNNNNNNNNNNNNmdmmmmNNNNNmNNNNmmNNmmmmNNmNNmdhdNMMNNmmmmmmmmmmmmNNMNNNmNNNMmNNMMNMNNMMNmmmmmdhdmNddddmddmdhdddhdddyssssdddymdhhyysydmhyhhyo+ydhysssyysssssssyhyyyyosyy
                                                                                                   `-:-::::-//:--:--:-.```````.--://:::/oo+++oooosyssssyssossssosysoosysyyyyhyyyhhhhyhhhddhdddddddhdhhyhhyyyhhyddddddhhsyyysoyysosssydddddhyyhysoossoooso+oo++///+///+++++++++o++ossoooooosyysosysoosooosyhyssyyyysyyyddhyydddmmmmmNNNNNmmmmmmNNNNNNNNNNNNNNNmdddhmmmmNmmNMNmNmNNNNmmmmNNNmmddmNNmmNNNNmmNmmNNNNMMNNmNNNNNNNNNNNNNMMNmmmmddhdmmmdddmdmmdhdddhddhysssshmmyddhhhysyhdhhydyso+yhhhyoosssssyysosssso+syy
                                                                                                    .-:-::://:------:-.....--...--///-/+o++//+osyyhssyhssssyysooyssssyyyyyyhhyyyddhhdhhdddhddddddmdhhhyhysyhhhhddddhhhhyhhhyssyysssssyhdddhhyhhyooysoooo++oooo+//++/++o+++osoos+/+oshso++osyhsssssoosysoosyyyohhhysyyyddhyhhddmmmNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNhmNNNNNNmmNNNNNNNNNNNmmNNNNmddmmmmNNNNmNmmNMMNNMNNNNNMNNmNNMMNNMMMNNmddmdddmmmmdddddmmhhddddmdhyyyyshmmddddhyyyyhddhydhyo+oyhdyso+ssssyysosyysosyyy
                                                                                                    .---////:-..--::/--..-.--:---:++//+//o+++soosyhyhhyyyssyssyysssyyyysyhhhhyyhdddddhdddmhdddmmmmdhhdddhyhdhhddddhhhhdhdddhyyyhyyssyyyhhddhhhysosssssso++/++++///+++oos++osoooo++oossso++oshyyyssssyyssyysssohhhhyyyhdhhhddddmmNNNNNNNNNNNNNddmNNNNNNNNNNNNNNmNNNdmNNNNNNdmNNmNNNNNNNNmmNNMNNmdddmmNNNNNmmNMMNNNNNNmNNNNNMMMNNNNNNNmmdmmmNmmmmmdddmmmmhhddddmmdyyyysydmmhddhyyyhydddyhhysooshyyssosoossysossssssyyy
                                                                              ``                   `---/+//::-----::///::/:--:://+ooo++osy+oosoosshyyyysssssyyyyyyyhyyyyhhhhhhhhddddddmdddddddmmmNddddmddhdmdhddddhddhhhddddhyyhhyysyhhhhmmddhyyysssssssso++++oo++oo+oosoo+ooooso++oosss++ooysyhyyysssoosyyssoyhhyyyyhdhhhdddmmNNNNMNNNMMNNNNNNNNNNNNNNNNNNNNNNNNNmmmNNNmmNmmmmmmmmNNNNNNmmNNNNNmmddmmmNmmNNMMNNNMNmmNNNNNNNNNNNNNmmmmmmmmNNmmmmddmmmmmdhddhhdddyyyyshdmdhmmdyyhhyhddhyhhs+osyhysssossosssosssssssyy
                                                                          ``````` ``               `--:++/:--::/---::+//////////:/ss++++osossssyyyyyysoyssyyyyyhhhhhhdddhyyyhhhddhddmNmddddddhdmmmmdddmddddmdddmddhddhhdmmdhdhyhhhhhhhddhhdddyhhhdyyssyssosoooo++oysooosyssooooyyo+oossssooossyhysyssssosyyssoyyyyhyhddyyhdddmmmmNNNNNNMNNMMMMMNNNNNNNNNmNNNNNNNNNNmmmNmmmNmmmmmNNmmmNNNNNNNNNNNNNNmmddmmNNNMNNNNNNNNMMNNNmmmmmmmmdmmmmmmmNNmmNmddmmmmddhdmdddddyyhyyydmdhmmmhhyyyhhdhyyhyossyyysssoooossoosssssssyy
                                                                          `       `                .-:++/:--://:-::::++++:--.----+++//+ossssssyyyhyhysyhyyyyyyyhhhhddddhysyhhyhddmdmmdddmdddhhdmmmmmmmmddmmdmmdddddmmddmmmddddhhddddhhhhyyhddhhyyhhyyssysooossyooosossosyyyoooooysoooosyyssssyyysssysysooyyyssyyyyhyhmmhyhdmmdmNNNNNNMMMNMMMMMNNMMNNNNNNNNNNNNNNNmmmNmNNNNNmmmmmmmmmmmNNNNNNNNNNNNNNNNmmmdmmNmmmddmNNNNmmmmmmmdmmNhmmmmmmNNNmmNmdmmmmmmdddmmddhhsyyyyhmNdhdmmhhhyyhhdhhhhhoooosyyyysooosoooysssysyyy
                                                                              `                  ``--/++----`...-------::/::::::+sooososssyyysyyyhssyhdhysyyhyyddddddhhhyyyhhhdmdddmmmmddmdmmddmmmmmmmmmmmmdmmmmddmmmdhdmmmmmmdhddmmmdhddyyyhdddhhhyyyssssssosyoossossysyyyysoooyysoooossyyyyyyyyssssyyssyyyysssyyhhhmmhhdmmdddmNNMMMNNNNNMNMNNNMMNNNNNNNNNmmNNNmmmmNNmNNNNNNmNmmmmmmmmmNNNNNNNNMMMNNNNNNmmddhhhddmmdmmmmmmmmmddmmmddmNNNNNNmmNmmmNmmmmddmmmhdhyyyyyyhdmdmmmmhhyyhhhhhyhhhssoooyyyyyso+o++oysssyysyy
                                                                            `````                `.:/++/---```.----:/-.`.::////+so//+oooooossyshddyyhhdhhhhhhhhmdddhhhhdhhdddhdmmmmmmmmmdNmmmmmmmmmmmmNmmmmmNNmmmmmdmmddmNNNmdmmdmmddhhhhhyssddddydhhhyyyysyyysoosyyssshhyyyyysssssoooossssyhyyyhyyyyyssyyyyysysyydhddmdddmmddmNNNNNNNNNNMMMMNNNNNNMMNNNNNNNNmmNNNNNNNNNNNNNNNNNNNmmmmNNNNmNNMNNNNNNNNNNNNNNNhhmNmmmmNNNNNNNNNmddmdmNNNNNNNmmNNdmmNmmmmddmmmddhyhyyhhdmNmmmmmdhhyhhhhdhhhhyssosyyysssoooosssssssyyyy
                                                                           ``` ````  ``         `.-:://:://--://+/:----..--::+oss+//osssssssyyyhdddhhhmddddmdhhdmmddddmmddddmdmmNmddmNNmmNmmmmmmmmmmmNNNmmdmmNmNmmmmmmddNNNNmmmmhdmmmddhyyhhyydmmyhhyyhdhyhyyhyysssyyysshhhhhyyossssosyyysssyyyyhhyyyhhhhdyyyhhyyhhhdmmmmmmdddmNNNMNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNmmNmmmNNmNNNNNNNNNNNmNNNNNNNNmNmmmNNNNNMMMNdmNMNNNNNNNNMNNNmhdmmNMMMMNNNNNNNNdmmNmmmmddmmmdhhhdhhhhdmmmmNmdddhhyhhhdhhhhyssshhyssysossssysyyssyyyy
                                                              ``````......---..```````````  ``.--:/+o++/+oyy++//:..-/::-----+so/::+oooossosyhyyyhddddmmhddddhhhmmmmmdmmmmddmmdmNNNmmNNNNNNNmmmmmmmmmNNmNNmmmNNNNmmmNmmmmNNmmmmmmddmmmmdhyyhhhyhddhysssyyhdhhyyhhhysyyysyyhhyhhhsssosoyyysyysshyyyyyyhhyyydhyyhyyyhhdmmdddddddmmNNNNMNNNNNMMMNNNNNNNNNNNNNNNNmNNNNNmmmmmmmmddddmmmmmmmmmmmmmmmmmmNNNNNNNNMNNmmNMMNNNNMNNNNNNmdmmmNNMMMMNmNNNNNNmmmNNmmmmddmmddhyhhyhddmmmmmmdddddhyddhhhhhhhsssdhsosysosssyysyyyyyyyy
                                                        ``````````.......----------......--://+oossooo+///++/:-.`--::::--/+os+///+++/+sssysssyyhddmddhhdddddhdmNdddmmmmmmdmmmmmNNNNNNNNNNNmmNNmmmmmNNmNNNmmNmmNNmmmNNmmmmNNddmdhmmmmmdddhyhhyyhdddhyyyyyyyddhyyhhhhyyyyyhyyhhhhhysossyhhssssyhyssyyyhhhyyyhhyyhyyhdddddddddmmmmNNNNNNNNNNNNMNMNNNNNNNNmmmNNNNmmNNNNNNNmmNNNNmmmmmmhdddhddddddddmmmmmmmmNmmddNmNNNNNNNNmmmmmmmmNNNNNNMNNmNNNNNNNmmmNmmmmmdddddhhhhhhddddmmmmddddhyyhhhhhhhhhyyydysssoosyoyyysyysyyyyy
                                                     `````...::--.----:---::-::::///+ooosssoosso++++///+//:::/+++///++/:/sso//+oo+//+sosyhosyhyhddhddddmmdddddmmhdmmmNNNmmmNmNNNNNNNNNNNNmmNNmmNNmNNNmNNNNmmNNNNmmNNNmmNmmNmdmmddddmmdddmddhhhdddddhyyhhhyyhhyhhhydhyyyyhdhhhyyyyyyysyhhssssshyyyyyhyhhhhyhhhhhhhddddmdddddmmmNNNNNNNNNMMMMMNNNNNNNNNNNmNNNmmmNNNNNNNNNmmNNNNNNNNNNNNNNNNNNmmmmmddddddddddddddddmmmmmmmmNNNNNNNNNMmNMMMNNNNNNNNmmmNNmmmmddddhhhhhhdmmmmNNmmmdddhhhhddhdddhdyyyysooyoosyossyssssyyyyy
                                                  `````...--.--.....--:://///+o+oooooo++++++++ooo+:/:/++//////+////++ossyo+++++++/++osossysyhhhhhdhmmdmddddddmmmddmmmNNNNmmmNNNmNmNNNNNNmmmNNmNNNmNNNNNNNNNmmmNNmmNNNNNNmmmmmmmddddmmmddmmdddhhddmdhhhhhhhhhhhhhhyhddhyhhhyydhyyhhysyhhysyysyyyhhyyhhhhhyyhhddddddddmNmddddmmmNNNNNNNNNNNNNNNNNNNNNNNNNNNmmmmNNNNNNNNNNNmmmmNNNNNNNNMMNMMNmdddmmNNNNNmmNmNNmmmmmNNNNNNNNMMNNNNMMMMNMMMMNNNNNNNNmmmNNmmmmmdddhhhddddmmNmmNmmdddddhhdddddhhhdyyssssyyooososyysssyyyyyy
                                                 ``````.-....----://////////::://+ooo++oosssssossso++os+///::/+oosooyyyyyyysso++++++oo+osyyyyyydddmmmmmmmmdmdmmdmmmmmNNNNNmNNmmmmmNNmNNNmmNNNmNNNmmmmmNmmmNmdmNNNNmNNNNNmmmNmNNmmmddmmmddmddddhhhdddddhhhhyhddddhhyhdmmhhyyyhddhhhhyyyhhhhhhhyyyhyyyhhhhyyyyhmmdddddmNmdddmmmmmNNNNNNNNNNNNNNNNNNNmmmNNmNmmmNNNNNNNNNNNMMNNNmmNNNNNNMMNmmddmNNNmmmmNNmmmNMMMNMMNNMMMMMMMMNMMMMMNNMMMMMMNNNNNNNNmmmNNmmmdmdddhddhhddmNNmmNNmdyddhhhhddddhhdhysyhsssoooosssssssyyyyyyy
                                               ``........-::::::::::::://////+++++ooooosssssyyhyhhyssyys+++/syhhosyyhysoyhhhhyoo+osssoosyhhdhyddddmdmmmdhhmmmmmdmmmdmNNmNmmmNmmmmNNNNNNNmmNNNNNmmNmmmmNmmmNmmmNmmmmNNNNNmmmmNNmmdmmdddmmdmmdddhhdhhhdmdhhhhyhhdmmdhhhdmmdddhhhhhhhhhsssydhhhhhhhhhhhhhhhhyhhhmmmdhdmmmmmmmmmmmNNNNNNNmNNNNNNNNNNNmmmmNmmmmNNNNNNNNNNNNNNNNNNNNmNNNNNNNmmddmNmmdmmmmNNNNNMNNMNMMMMMMNNNMMMMMMMNNMMMMMMMMNNNNNNNNNNNmmmmdmdddddddhdddmNNNmmNdhymdddddddddhhdhyyyhssso++oyssssyyyyyyyyy
                                            ```.....-::::---::://////+++oo++oosssossssyyyyyyyyyyhhyyyyyhsssyyoosyhhhhyyysssssyhhhyssyyyyyyhyhhyhdmdhddmmmmNNmmmddmmmmNNNmddmNmmmmNNNNNNmmmNNNNmmmNmNNmmmNNNmmmNNmmmNNNNNNmmmNNNNmmmmmdmmmmmmddddddhhdmdhhhhhhhddmmdhhhhhdmmdhhhhddddyyyyhyhhddhhhhhhhddhyhdhhdmmmhmmmmmmmmmmmNNNNNNNmmNNNNNNNNNNmmmmmmmmmNNNNNNNNNNNNNNNNNNNNNNNmddmmmmdmmNmNNNNNNNNNNNmNNMMMMMNNMMMMMMMMMMMMMMMMMMMMMMMNNNNNNNNmNNNmmmmddddddhhmmmmNNmmmdhhdmdddddddmddddhyyyyoss++osyyysyyyyyyyyyy
                                          `....---------.---:///+++oosssssssyyyhhyhhhhhhhhhhhddddhyyhhydysososhmmNNmmddddhhhhhhdddhhhhhhhdyyyyhhdmdddmNNmmmNmmmmmmmmmNNNNmmNNmmdmNNNNNNmmNNNNMmmmmmNNmmNNNNmmNmNNmmNNNNNmmdmmNmmNmmmmmmmNmmmmddddddhhddhhhdhhddddmmhhhhyhddmmddddddhhyyyhhyydmmdhddhhdddhdddhdmmmdmmmmmmNNNNNNNNNNNNmNNNNNNNNNNNmmmmmmmmmmmNNNNNNNNNNNNNNNNNNNmmmmmmmddmmmNNNNNNmmNNNNNNNNNNNNNMMMMMMMNMMMMMMMMMMMMNMMMMMNNNNNmNmNNmdmmmhdmdddddmddmNmmmmhhhdmddddmmmdhhddhyyys+ooo/ossssyyyyyyyyyyy
                                       ``.------...-----:-:/++++osoooossyssyyhhhddddddhdddhhhhhhdhyyhysdyyyddmNNNNNNNmmdmdddmmmmdddddddddyhhyydddhdddmNNNmmNmmmNmmmmmNNNNmmNNmmmmNNmmNNmNNNNNNmmmmmNNNNNNNNNmmNmmmNNNNmmmddmmmmmNNmdmmmmmmmmmmddhdddhhdddddddhddddmdddhhhhddddmddddddddyyyyhhdmmdmddhhddhdmdddmmmmmNmmdmNNNNNNNNNNNNmNNNNNNNNNNmmmmmmmmmmmmmNNmNNNNNNNNNNNNNNNNNNNNNNNmNNNNNNmmNmmNNNNNNmNNNNNMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNNNNNNmmmmmmhddmmmdddddmmmmmmdhhhmdmdddmmmdddhdhhyysoooo++ossssyyyyyyyyyy
                                      `....-....---:----//+++ooosyyhyyyssyyyhhhhhddddddddddhhhhssoooosydmmmmdmmmNNNNNNNNNNmmmmmmmNNmdmmmmdmmddddddhdmmdmNNmNNmmNNNmNmmmNmmmmNNmmmmmmmmNNmmNNNNddmmmNNNmNNNNNNmNNmNNmNNmmmddmmmmmNNmmmmmmmmmmmNmmdhddddddmmmddddmmmNmddhdddddddddddmmdmddhhhdddmmmmmdhhdddmmdhdmmmmmmmmmNNNNNNNNNNNNNNNNNNNNNNmmmdmmmmmmmmNNNNNmmNNNNNNNNNmNNNMMNNNNNNNNNNNNNmNNNmNMMMNNMNMMMMMMMMMMMMMMMMMMMMMMMMMNMMMMMMMNNNNNNmmmmmddhdmmdmmmNmdmmmdmdhhhdmmmmddmmmdmdddhhhyssooo+/+syssyyyyyyyyyy
                                       ```.`.-::-----://+ossyyhhhhdddmmdddhhhhhyyhhyyyysssyysssyhhdmmmmNmmmmmNNNNNNNmNNNMNNNNNNNNNNNNmdmmNmmmmNmdhdmNmdmmmmNNNmdNmmdmmmmmmmmNNmmmmmmmmNNmmNNNmdmmmmNNNmNmmNNNNmmmNNmNNNmddmmNmmmmmmmdmmmmmmmmmmNNdddddddmmdmmmdddmmmmmddmmddmmmdhddmdhdmddhhdmmmmNmmdhdmmNmdhdmddmNNNNNmNNNNNNNNNNNNNmmmmmNNmmmdmmmmmmmmmmmmmNmmNNNmmmNNNNNNNMNNNNNNNNNNNNNNmmmNNMMMMMMMMNMMMMMMMMMMMMMMNMMMMMMMMMMMMMMMMMMNNNNNmmmmdhhdmmmdmmmNmmmmmddddhhddmmmmmNmmdmdddddhyyssoso++oyyssyyyyyyyyy
                                       ```.://:-..-:+/+ossyyhyyhhddddddddmmmmmmmmdddddddddddmmNMMMMMMMNNmmmmNNNMNNNNmNNNNNNNNMMMMMMNNNNNNNNNNNmmmmNNmmmNNNNNNNNNNmmmNNmmmmmmmNNmmmmmmNNmmmNNNmdmmmmNNNmmmmmNNNmmmNNNNNNmdmNNmmmmmddmddmmmmmmmmmmmmmmdmddmmmmmmmmmmddmmmdmmmmmmmmmmmmmddddddddmmmNNmmddddmNNmddmmmmNNNNNmmNNNNNNmNNNNNmmmmmmNNmmmmmmmmmmmmmmmmmmmmmNNNNNNNNNNNNNNMMMNNNNNNNNNNNNmNMMMMMMNMMMMMMMMMMMMMMMMMMMMMMMMMNMMMMMMMMMNNNNmmmmmdddmmmmdmmmmmmmmdhhddhhhdNNmmNNmmdddddhhhyhysooso++syyssyyyyyyyy
                                       ``.-o/-..--:+++osssssyhhhhddddhhhdddmmmmmmmmmmNNNNNNMMMMMMMMMMMMNmmmNNNNNMNNmmNNNmNNNNNNNNMNNNNNNNNNNNNNNNNddddmmmNNmmmNNNmmNNNmmmmmmmmNNmmmmmmmmmmNNNmddmmmNNNNmmmmmNNNmmmNNNNNNmdmNNmmmmddmmmmmmmmmmmmmmmmddmmmmmNmmmNmmmmmmmNmmmmNNmmmmmddmmmmdmmmmmmmNNmmmmddmNNmmmmmmmmmNNNmmNNNNNNmNNNNmmmmmmNmmmmmmmmmmmmmmddmmhmNNNNNNNNNNNNNNNMMNNNNNNMNNNNNNNNNNNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNMNNMMMMMMNNNNmmmmdddmmNmmdmNNmmmmmdmddddhddNNNNNNmmmddddhhhhyssoosso+osyysyyyyyhhy
                                       `.:+:.``.-:://+ossyyyhyyyydysoosss+oosydmNNMMMMMMMMMMMMMMMMMMNNNNMNNmNNNNmddmNNNNNNNNNNmmmNNNNNNNNNNNNNMNmddmmmNNmdhdhdmNNNNNMNNNmNNmNmmNmmmmmmmmmmNNNmdddmmmmmNmmmmmmmNmmmmNNNmNNmmNNNNmmdddmmmdddmmmmmmmmmdddmmmmmmmmmddmmmmNNmmmmNmNNNmmmmdmmNmmmmmNNNNNmmmmmmmNNNmmmNNmmmNNNmmNmNNNmNNNNmmmmmmmmdmmmmmmmmmdddddddmdmNNNNNNNNNNNNNNNMNNNNNNNMNNNNNNNNNMMMMMMMMNMMMMMMMMMMMNMMMMMMMMMMMMMMNMMMMMMMNNNNmNmddmmmNNmmmmNNmNmmmmmddmdddmNNNNmNmmmddddhhhhyyssoyyso+osyysyyyyhhy
````````````                           `-::---.-:::/++oosssoosooso::/++++::://ohmNNNNNNNNNNNNNMMNNNNNNNNmNNNNNNmhyhNmmmmhdmmmmmdddmmmdmmmmNNNNMNNNmNNNNmmmmNNNNNNNNNMNNNmmNNNmmNmmNNmNmmdmNNmmmmmmmNNNNmmmmNmmmmmmdNNNNNNNNmNNNNNdddmmddmmmmmNmmmNmmdddmmmdmmmmdmmNmNmmmNNNNNNNNNmmmmmmmmNmmNNNNNNNmmmmNmNNNmNmNNNNNNNmNNNNNNNmNNmmdmmNdmmmmmmmmmmdddddmmNmmmdmNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNMMMMMMMMMMMMMNMMMMMMMMMMMMMMMMMMMMNMMMMMMMMNNNmNNNmdmmmmNNmmmNNNmmmmmmddmmdhdNNNNNNNmmmddddhddhhhyooyhhs++oshyssyyyyy
...``````````````````               ```.-//:::::///++++:::::oyyso:-::////+//oo+oyhmNNNNNMNNmmmdmmNNMMMMMNNmdmmdydhyhNNNNNddmMMMMMNNNNmmmmmmmNNNNNNNNNmNmNNNNNNNNNNNNMNNNNNNNmmNNNmmNmNNmdmNNmmmmmmNNNNmmmmmNmmmmmmmmmmmNNNNNNNmmNmddmmmmdmmmmmNNNmmmmmmmdmmmmmdddmmmmmNmmmNNNNNmNNmmmmmmmmmmmNNNNNNmNmmNmmNNNNmNNNNNNmmmNNNNmmmmmmNmdmmdmmmmmmddddddmmmmmmmmddmmNNNNNNNNNNNNNNNNNMNNNNNNNNNMNNNMMMMMMMMMMMMMMNMMMMMMMMMMMMMMMMNNNNNMMMMMMNNmmNNNNmmmmNNmmmmmNNNmmmmNmdmmNdddNNNNNNNNmdddmdhdddhdhsoshdhsoosyyysyyyyy
--......`````````      ````  ````````.`.-/+:::/::/+++oo+/++///+++/:::++++/://oyyyydmNNMMMNNmmmdmNMMNMMMNmdddmmmmshhshNNNNNmmmMMMMMMMMMMMMNNNNNNNNNNNNNNNNNmNmmmNNmmmNNNNNNNNmmNNmmmmmNmmdmNNNmmNNmmmmmNmmmdNNmmmmmmmmmmNNNmmNNNmNmddmmmmdmmdmmdmmmmmmmmmNNmmmmmmdddmmmmNNmmmmmmmmmmmmmNNmmmmdmNNNNNNNmmNNNNNNNNNNmmmmmdmmNNmmmmmmNNddddmdddddddmmmmmmmmmmmmmdmmNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNMMMMMMMMMMMMMMMMMMMNMMMMMMMMMMMMMNNNMMMMMMMNNNNNNNmmmmNNNmmmmmmNmmmNmmmmmmmmhdmNNNNNNNmmdmmmmddddddhysoydmhs++hhhhyhhhy
.......`````````     ```````````````````-::://///+soshddhhhyhysssoossoo++so++oosyhdmmmmddmNNNMNNNNNNNmdmhhdmmNMNdhhh+ymNNMMMNmNNMMMMMMMMMMMMMMNNNNMNNNNNNmNNNNmmmmNNdmmmNNNNNNNNNNmmmNmmdmmmmmNNNmmmmmNmmmmmmmmNmmmmmmmmNNNmmNNNmmmddmmdddddymmmdhdmdmmNNNNmmmmmmmdmmmmmmmmmmmmmmmddddddmmmmdddmmNNNNNmmmmmmmmNNNmmmmmmmmmNmmmmdmmNmmmmmddddmmmmmddddmmmmmNNmdmNNNNNNNNNNNNNNNNMNNNNNNNNMMNNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNNNNNNNmmNNNNmmmNmmmNmmmmmmmmmmmhhmNNNNNNNNmddmNNmmhhdddhyhoydNNds+hmmddhhhh
...````````````````````````.............-/++//+o+osyhddmddmmdmdddhhddhhhyyssooyyyymmmmmmNNNMMNMNNNmddhhdhhhmNMMMNmmmmoymMMMMMNmmNNMMMMMNNNMMMMMMMMMMMMMMMMMMMNNmNNmmddmmNmmNNNNNNNmmNNNmdddmmmNNNmNNmmNmmmmmmNmmmmmmmmdmmmNNmmNmmmmdddmmddddhhdmmdmmddhdmmmmmmNNmmmmmmNmmmmmmmmmmmmmddddhdmmmmdddmmmNNNmmmNNNmNmmNNmmdmmmmmmmmmddmmmmmmmddddddmmddddddmmNmmmmhmmNNmmNNNNNNNNNNNNNNNNNNNMMNNMMMMMMMMMMMMMMMMMMMMMMMMNNMMMNMMMMNNMMMMMMMNNNNNNNNNNNNNNNNNmmNNNNmmmmmmmmmmdymNNNNNNNNmddmNNNNmhdddmdhhyyhmNNhoomNNNdddd
``````      ``````.....--.-------::::::::/+ooossssyyyhhyhdmmmmmdhdmmmmmmmhyyhsyyymdddmdmNNNNMMMNmddddhshyyymMMMNNMNmMmysdMMMMMNmNmNNNNNNMMMMMMMMMMMMMMMMMMMMMMNNNNmmmmNNmmmmNNNmNNNNNmNmmdmmmmmmNmmNNNmmmmmmmmmNmmmNmmdmmmmmmmmNdmmmddmmmmddddddmmmmdmdhddmmmmNNNNmmdddmmmmmmmmmmmmmmmmmNmmmNmmmmmmmmmNNNNNNNmNmmmNNmmmdmmmddmmdddmmmmmmdddhmmmddddmddddmmmmmhdmNNNNNNNNNNNNNNNNNNNmNNMMMNNMMMMMMMMMMMMMMMMMMNMMMMMMMNNMMMMNNNMMNNNNNNNNNNNNNNNNNNNNNNNmNNNmmmmmmmmmmmhydNNNNNNNNmddmNNNNNmddmhmdhhhhhdNmdh+shdmmmNN
````      `````..-----::::///://///+++++++ohhyyhdddhhysshdddmmdddmmmmmmNNhyhdhhyshdhddddmNNNNNdhdmNmhsohysshNNNNNMMMmNNmohmMMMMNNmmmNMMMMMMMMMMMMMMMMMMMMMMMMMMMNNNNNNNNmmmmNNmmmmmNNmNNNNmmNNmmmmmmNNmdddmmmmmNmmdNmmmdmmmdmddmdmmmdmmmmdddmmmmmmmdddddddhddmmmNNNNmddmmmmmmmddmmmmmmddddmmddddmmmmmmmmmmmNNmNNNmmmmmmmmdmdddddmmmmdddmddddddddddmmddddmmmmmhdmNNNNNmmNNNNNNNNNNmNNNMMNNNMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNNNNNNNMNNMMMMMNNNNNNNNNNNNNNNNNNmmmmNNmmmmmmmhhdNNNNNNNmddmNNNNNNNmddmhddddhddmdmmds+oyhdmmN
         ````....--:::////+++/oo++oooooosyyddddmmmmmhyyhddddddddNNNNNNNNNhdmNmmddmdhhdddmNNmddhdNMNdysohyyyhNNmNMNNMNmmNNshmMNMMMNNNNmMMMMMMMMMMMMMMMMMMMMMMMMMMMNNNNmmmmmmmmmmmNmmmNmmmNNmmNNmmmmNmmmmmddmdmmNNmmdNmmmdmNmdmddddmmmmddmmdddddmNmddmmddddddddddmmddmNmmdmmmmmmmdmmddmmmddddhyhhhddddddmmmmNNNNNNNmmmmmmmdddddddddmmhhddmdddddddddddddddddmmmmhhdNNNmmmNNNNNNNNNNmmNMMMNNNMMMMMMMMMMMMMMMMMMMMMMNMMMMMMMMNNMMMNNNMMMMMMMMMNNNNNNNNNNNNNNNmmmNNmmmmmmmdhdmmNNNNNmmmNNNNMNNNNmdddhmmdddhdmNmddyoosyyhhd
         `  ``````````````````.-:/+osyyyyyhdmmmNNNmNdmmmmddmNmmmNNNMMMMMMhdmMNMNmNyhddmdddhhhdmNNNmhoosssssyNmNMMMNmNNNNMNdhmMMMMMMMMNdNMMMMMMMMMMMMMMMMMMMMMMMMNNmdmmNmNNNNmNNNNNNmmNmmNmmmmmmNNmmmNNmmddmddmNNmddmmmmmmmmdmmmdddmmmmdddmmmdmmmmmmmmdmmmdmddddddmddddmddmmmmmmmmddhdddddhhhyhhhhddmmmmmmmNNNNmNNNNmmNNmmmmmdddmmmdhhhdhddmmddhdhddddddddmmmmmddmNNmmNNNNNNNNNmmNMMMNNNMMMMMMMMMMMMMMMMMMMMMMMMMNMMMNMMMNMMMNMMMMMMMMMMMMMMNNNNNNNNNNNNmmmmmmmmmmdddddmmNNNNNmmmNMNNMMNNNmmmmddmmmdddddmmNmdo+osyyyh
``````````````````````````````   ``.-/+osshhdmmNNmmmmNNNmmNNMNNMMMMMMMMMNdmNMMMMmhdNNNNmdyyyhmNMmddyyo/yyssoyhdNMNNmNMNNMNNNmdNMMMMMMMmdmMMMMMMMMMMMMMMMMMMMMMMMNNmddmmNNNNmNNNmmmmmmNmmNmNmmmmmmNmmNNdmmddmdddmmmmmddmddmNNmmmddddmmddddddmmdddmmmmmdmmmmmmmmmmmmmmmmNmmmmmmNNmmdddddmmmmddhhhddmmmmmmmmmmmmmmmmmNmmmmmmmmmmmmNmdhhhhhydddddhddhhddddddmmmmmNddmNNmmNNNNNNNmmmNMMNMNNMMMMMMMMMMMMMMMMMMMMMMMMMMNNMMMNMMMMMMMMMMMMMMMMMMMMNNNNNNNNNNNNmmmmmmNNmmdddmmmNNNNNNNmmNMMNNNNNNNmNmmdddmmddddhhdmdNhsooyyhy
::::://::/+++////+++++o+//////:--....``````..-----:/oooosyhdmmNNNmNNmMNNNMNNMMMmdyMNNNmyyyhydNMmdhsohhs+yhddyhdNmNNNmmNNNMNNMNmmNMMMMMMNmNMNNMMMNNMMMMMMMMMMMMMMmmmmdddmmmmmNmmNNNmmmNmmmmNNNmmmmmmmmNdmmddddmmdmmmdhdmddddmmmmmdhdmmdmmdddmmmdddhdmNmmmmmdmmddmmNNNmmmmmmmmmmmmmNNmNNmmNmmdddddhhhhhddmmmddddddmmmdddmmdddmmmdmdddhdddyhddhhddhhhhhdmmmmmmmmmmmmmmmmNNNNNmmNNNNNNNNNNMNNMMMMMMMMMMMMMMMMMMMMMMMMmNNMNMMMNNMMMMMMMMMMMMMMMMNNMMNNNNNNNmNmmmmmmmdmmmmmmNNNNNNmNMMMMNNNNNNNNNmmmddddmmmdysdmdmdyooyyhy
///////////:::::::::////////++++++++++/:-....```    ``````..--:::-::-///+oydmNNNNmMNNNdssysymMNdmh++ydNysyhdhyhddNNNmmddNMNNNMNNmNMMMMNNNNMMMMMNNNMNNMMMMMMMMMMMmmmmddddmmmmmmmmmNmNNNmmmmmmmmmmmmmmmNdmmdddmmmdddmmdddddhhddddmmdddddmmmmddddmmdddddhhhdddddddmmmmNmmdddddmmmNNNNNNNNmmNmmddhhdddhyhhdddddddddmmmmddddmdddmmmdmmddddddhhdddddddddddddmmmmmmmmmmmmmNNNNNNNmNNNNNNNNNNNNNMMMNNNNMMMMMMMMMMMMMMMNNMMNNMMMMMNMMMMMMMMMMMMMMMNNMNNMNNNNNNNNNmmmNmmmmmmdmmNNNNNNNNMMMMMNNNNNNNNmmmmdmmmmmmdyshddmdys+yhhy
-------------------------------::--:://+++ooooo++/:--..`.````...---://::::----+oshhdmmsoyhohmNdmmh+/oymMhyyymhyhddmmhhmNdMMMNMMNmmmNMMNNNNMMMMNMMMMMNNNNMMMMMMMMNmmmddddmddddmmmdddddNNNNmmddddddmmmmNdmmdmmmmdmmddNmddmdddmdhhdddhhdddddmmddhhhdmmddddddddddddddmmmdddmdddmmmmmdmmmmNNmmmmmmddhdddddddhhdmmddmmmmmdddddmddhhdmmmmmddhhhhhhdddddddddddmmmmmmmmmmmmNNNmNmNNNNNNMMNNNMMMNMNNNNNNMMMMMMMMMMMMMMMNMMNMNNNMNNMMMMMMMMMMMMMMMMMMMNNNNMMMNNNNNNNNmmmmNmmmmNNNNNMMNNMMMMNMMNNNNNNNNmmmmmmmdmdhsshmmdhhy+yhhy
-----------------:-------::-::::::---::---::////++//++o++/:-----:oooooooossoo++/:/:/+o+oyy+hmmhmmh+:+ydMmhyyshdhhhhdmhyhdNMMNMMNNNhhdMdmNNMMNNNMMMMMNNmNNMMMMMMMMNmmdhhmmdhyyhdmddddddddmmmmmNmmmmmmmmmmddmmmmddmddmmddmddddhhddddhhddddmmmmmmdddddddmdddmdmmmddddddddddddddddddddmmmmmdddddmmmmmddmmddddmdddddmmmmmmmmmmdmdddmNNmmddddhhhddhdddhhddddmmmmmmmmmmmmmmmmNNNNNMMNNNNNNNNNNNNNNMMMMMMMMMMMMMMMMMNMMMMMMNNNNMMMMMMMMMMMMMMMMMNNMMMMMMMNNNNNNNNmmNmNNmmmNNNNMMMNNMMMMMMNMNNNNNmmmNmmmmmdhddhssyddhyys+syyh
----::------------:------:::::::----:::--:::::::::::://:+oooo+/:..-::/+sysssossoosyyo//sso+syhddhhs::oydNmdyyhddshddhhhyshmNNNMNmmmmddddmNMMNmmMMMNMNNNNNMMMMMMMMNNNmdhhdmmdhhdmddddhmmmmdmmmddmmmdmmmmddhdmmdhhddhdmdddddddhhdhhddddhhhddddddhhddddddhhhhhhddmdddmddddhddmmdddddddddmdddmmddmmmmdddhdmmmmddddddmmmmmmdddmmdddddmmmmddddddddddhhddddmmmmmmmmmmmNNmNmdNNNNNNNNNNNNNNNNNNMMMMMMMMMMMMMMMMMMMMMMMMMNMMNNmNMMMMMMMMMMMMMMMMMMMNNNMNMNNNNNNNNmmNNNNmmmNNMMMMMMMMMMMMMMNNNNNNNNmmNmmmmmmhmdyoohddhhysossyy
------------------:-------::--:------:/::::::::::::::::-::::/+++///:-.-::/+++o++ossys/+sso+hdhhyyhd/:/oydmmddysydddhysyhsyhdmmNNmmmmmmhhdmMMmhNNNNNMNNmmNMMMMMMMNNNNmddhhddmdddddmdhhddmmmddddmmddddddmdddhdmdddddhhdddhdhhyhdddyyhddhhyyyyhhddhhhhdddhhhhhhhhhhddddddddddmmmmdddmmmmmddddddmmdddddddddddddddmddddmmmmmmdddhhhhhddmmmmmmddddddddddmmmmmmmNmmmmmNNNNmmmNNNNNNNNNNNNNNNMMMMMMMMMMNMMMMMMMMMMMMMNMMMNMNNNNNMMMMMMMMMMMMMMMMMMNMNNNNNNNNNNNNmNNNNNmmNNNMMMMMMMMMMNNMMMNNNNNNNmNmmmmNmmdmhyohdmmdhyosyyyy
--------:-----------------:::::::--::::-::::::::::::::::----::/++++o+/++/:--........-:/oso+ssshysydy::+ohdmdddddyhhdhysssyhdhhmmddddNMmdhdMNmdNNNNNMNmmmNMMMMMMMNNNNNmddhyhdddddmmdddhhdmmmmmmmddmdhddddddhddddhdddhhddhhhhyyhhhyyhhhddddhyyyyhhddhhhhhhyyyyyyyhhhhhhdddddddddmdmmmmmmmmmmmmmmddddddmdddddmmmmmmmmmmmmmmmdddddhhddddmmmmmmdddmmmmmmmmmmmmNNNNNmmNNNNNmNNNNNNNNNNNMMNNNMMMMMMMMMMMMMMMMMMMMMMMNNMMNNNNMMNNMMMMMMMMMMMMMMMMMMMNNNMNNNNNNNNmNNNNmmmMNMMMMMMMMMMMNMMMNNNNNNmmNNmmmmNmmdmhyymddhdhs+yyyyy
------------------------::::::::::--:::----:::--::::::-----:::::::://++++oo+++:--::///+sys+sosdyssydo//ooshddmmNNmdhyyyysshhhddddyhddNdhhdNmmmmMMMNNNmmdNNMMMNNMMNNmNmmmdhyyhyhhhdddddhhhhdddNmdddddddhhhyydddhhdddyyhhddhhyyyhdhyyyhyyyhddhyyyysyhhhhhhhyyyyyyyyyyhhhddhhyhdddmmmddddddmmmmmmmmmmmmmmmmmmmmmmmmmmdddddddddddddhdddhddddmmmdmmmmmmmmmmmmNNmNNNmmNNNNNmNNNNNNNMNNMMNNMMMMMNNMMMMMMMMMNNNMMNNNNNMMMNNMMMMMMNMMMMMMMMMMMMMMMMMMNNNMNNNNNNNNNNNNNNNNNMMMMMMMMMMMMNMMMNNNNNNmmNmmmmNmmmmdhyhmddmhsoosyyyy
-------:--------::::::-::::::::--::-:::-:--::::-------::---::::::::::/++/+++++/++++oo+/syy+oshmdhysds++ooosdmdhdNNNmddhhyyyyhdddhyhhhmdhyddhdmNNMMNmmmddmNNMMNNNNNNmmmmmmhyyyhhhyhhhyhhddhhyyhdmmmdhhhdddhhyhhhdhhyyhyyhddhyyyyyhhhhhhyysyhhdhyyyyyyyyyyhhhhhhyyyyyyyhhhyyhdddhddddmmmmmmmmdddddmmNNNmmNNNNNNmmmmmmdddhhhhddhhhhddhdddddddddmmmmmmmmmmmmmNNNNNNNNNNNNNNNNNNNNNNMMMNMMMMMMMMMMMMMMMNNNNNMMNNMMMMNNNMMMMMMMNNNMMMMMMMMMMMMMMNNNMMMNNNNmNNNNNNNmNNMNNMMMMMMMMMMMMMMNNNmmNNmmNNNNNNmmmdhhdddmdhyoosyyyyy
---:---:-::--:::::::::-:::::::-::::::::---::::::----------:::::/::::::///+///::////+oo+yys++osddhsoysso+syyyddhhhdmmmmmdhhhhhhhddhdddmmhyhhhdmNNNNmNNmdhNMNNNMMNNNNNmmddddhhhyyysyhhyyhyyhdddhhddddhhyhhddmddddhhyyhyyyhdhyyyyssssyhdhhyysssyhhyyyyyysyyhhyyyhhyhhhyyyhhhhhhdddddddmddddhhhhhddddmNmmmmmmmmmmmmmmmddhhhhhhhhhhhdhhhhhhddddmmmmmmmmmmmmmmNNNNNNNNNNNNNNNNNMNNNMMNNNNMMMMNNMMMMMMMNNNNNNNNMMMMMMNNNMMMMMMMMMNNNMNNMMMMMMMMMMNNNMMNNNNNNNNNNmmNmNNMMNNMMMMMMMMMNMMMNNmmNNNNNNNNmmmmmmddmmmddhsyossyyssy
:::::::::::::::::::::::::::-:::::::::---::::::::::------:::://////////:::/::::://+++/++syyoo+ohdddhyysoosyyyhddhyhhhdmmmmdhhyhdddhddddmdhyydmmNNNNmNNmdhmMMMNNNMNNNNNmmddhhhhhysssyyyyyyyhhhhhhhdhhhhhhhhdmddddhhhhhyssyhyyssyyssosshhhyyssssyyyyssssosssyyyyyyyyyyyyyhyyhhhhhyhhhhdyhhdhhhhyddddmddmmdddmmmddmddddhhhhhhhdhdddhyhhhdddddmmdmmmmmmmmmmmNNNNNNNNNNNMNNNNNNNNNMMNNNNMMMMMMNNNMMMNNNNNNNNNMMMMMMMNNMMMMMMMMMMMNNNMMMMMMMMMMMMMNNNNNNNNNNNNNNNNNmNNMMNNNMMMMMMMMNMMMNNNNNNNNNNNmmmmmmmmmdddhyssossyyyyyy
:::::::::::::-::::::::::::::::::::::::::::::::::-:::--::::////////////::::--::/+++++//+osyhysoohdmddhyhdhyyhydmdhhhyyhddmNmmmdddddddddddhshddmNNmmmNNmdhmNNMMNNNNNNNNmmmdhhyhyyysssssyssyyyyyyysyhyyhyyyyhdhhhdyyyyyyysyyyyysyso+oooyyhhyyysoosssyssyyysssyyyssyyyyyyyysyyyyhyssyhhyyhhyhdhhhddhhddddmdddmdddmddhhhhhhddddhhhhhyyhddmmmdddddmmmmmmmmmmmNNNNNNNNNNNMNNNNNNNNNNNNNMMMNNNNNNNNNNNNNNNNNNMMMMMMMNNMMMMMMMMMMMMMMMNMMMMMMMMNNNNNNNNNNNmNNMNNNNNNNNNMMMMMNMMMMMMMMMMMNNmNNNNNNNNmmmmmmmmddddhssso+ssyyyyyy
:::::::::::::::::::::::::::::::::::::::::::::::::-:----:::///////////////:::://++o+//+//oyyhyysohdmdhdddddhdyhdmhyyyyyhdmmmNNNNmmdddmNmdhhdmmmmmmNNNmmddNNNMMMNNNNNNmmmdddhyyyyyysssssssyyssyhyssyyyyhyyyyyyyhdhhhhyyyssyyyysyyso+++ssyysssyysooooooooosssssssyhhhhhhhyyyyyyyyyyyhhyyyyyhhhyhdhhddhddhdddhdddhhhhhhhhhhhhhhhhhhhdmmmmmmdddddmmmmmmmmmmmNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNMMMMMMMMMMMMMMMMNNNMMMMMMMMMMNNMNNNNNNNNNNNNMNmmNMNNNNNNNMMNMMMMMMMMMNNNMMMNMNNNNNNNNNmNNmmmmmdmdmdhsossssoosyhhyy
::::::::::::::::::::::::::::::::::::::::::--::::::::::::://++++++////////://///+++++//-:/ohyhddyyhhddddhdddddyydhddddddddmmmmNNNNNdddmddddNmmmmmNMNNmmhdNNNNMMMMNNNNNmmmdhhyyysssssssssssysooosssssssosyyysyyyyyyyhyssoosssssyyso++++oossssossooooooooossssssssoooosooosssyysssssyyssyyysyyhddhhdhhhhhhhhhddhyhyyyhhhyyyyhhdhhhmmNNmmdmmmmmmmmmmmNNNmmNNNNNNNNNNNNNMMMNNNNNNNNNNNNNNNNNNNNNNNNNMMMMMNNMMMMMMMMNNMMNNNNNNNNNNNNNmmNNNmNNNNNNNNNNNNNMNmmmNNNNMMNNMMMMMNMMNNNNMMNNNNNNNNNNNmNNmmmdmddddysosooshysoosyyy
::::::::://::::::/:::::::::::::::::::/:::::-:::::::::::::///++++++++////:///////////::-:/+yhhhmdhyhhddddhhyyddddmmddmmmddddmmmmmmNNmmmdmmdNmmNmNNNNNNmddNMNNNNNMNNNmmmmddhhyysssssoooooooosso++oo+ssssosssossssyssssssosysoosssso+++++++osssoooooosssossooooooosssoosssyssssoossyysosyysyhhhdhhhyhdddhhhhhhhyyyyyhhhhhhyhhdhhdmNNmmmddmmmmmdmmmmNmNNNNNNNNNNNNNNNMNNMMMMNNNNNNNNNNNNNNNNNNNNNNMMMNNNMMMMMMMMMNNNMMNNmNmmNNmmmNmmmmmNNNNNNNNNNNNNNNNmNmmdmmmmNNNMMMMMMNMMMMMMNMNNNNNNNNNNmmmmmmmdddhddy+ooooysssysssy
//:::::::::::::::/:://::/:::::::::///:::::::::::::-::::::///++++++++//////++++++///::--://oydmmmmdhyyhdddmmddmmdmmmddmmmmdmmmmmmmmNmmmNmmdmmmmNNNNNNmmmmNMMNNNNNNNNmmmdddhhhyssssosoo+ooo+ooo+++++oooooosso+ooooooosyysyhhyssssysoo++++++++ooooss++ooo++++++ooooosossssssssssssyssssyyyyhyhdhyyhhdhddhyyhyyyyyyyyyhyyyhhhdhhdmNmdddddddmmmmmmmmmmmNNNNNNNNNNNNNMMMMMMMMMMMMMMNNNNNNNNNNNNMMMMMMMMMMMMMMMMMMNMMNNNNNNNNNmmNNNmNmmmmmmmNNNNNNNNmmmdddmmNNNNNNNMMMNMNMMMNNMMMMMNNNNNNNNNNmmmmNNmmmdhyhmmdssooossssyyyyy
::::::::/::::::::/:://::/:::::::::///::/::::::::::::::::////++++++/////++//+oo++///:--:://oshdmmmmddhhdddmNNNmmdmmmmdmmmmmmmmmmmmdmmmNNmmmNmmmNNNNNNmmdmNMNNNNNNNNNNmmmdhhhhyssssoooo++++++++++++++++++++ooooooooooossyssyysoossoooo+++++/++/++oo++ooo+++++++++oooo+ooosssooosssosyyyyyyyyhdhyyhhhhhyyyyyhhyyyyyyyyyyyhhhdhmNNNddddmddmmmmmNmmmmmmNNNNNNNNNNNMMMMMMMMMMMMMMMMNNNMMNMMMMMMMMMMMMMMMMMMMMMMMMMMMNNNNNNNNNNmmmmmNmmNNNNmmNmmmNmmmhhdmmNNNNNMNNNMMMNMNNNNNNNMMMMMNNNNNNNNmmNNNmmmmdhhhhhhhyyysosssyyyyhy
:::::::::::::::::////::///:::://::///:///:::::::::::::::////+++//////+++++/+ooo+++/:--::/+osyddmmmmddddddddmNNNmmmmNmmmmmNNmmmmddmmmmmmddNmmmNNNNNNNmmdNMMMNNNNNNmmNmmdddhhhyysssoooo+++++++++++++++++/++++++++o++++ooosssooooooo++o+++////++++//+++++//++++++++++++++ooo++oossoossssyysyhhyyyhhyhhyyyyyyyyyyyyyyyyyyhhhdddNNmhdddddmmmmNmmmmddmNNNNNNNNNNMMMMMMMMMMMMMMNNNMMNMMMMMMMMMMMMMMMMMMMMMMMMMMNNNNNNNNNNNNNNmmmNmmmmNNNNNNmmmmmmddddmmNNmNNNNNMNNNMMNNMMMNNNNNMMMMMNNNNNNNNmmNNmmmmmmhhdhhhhyossssyyyyyyhy
::::-::::::::::::///////////:::///////////:/:::::::::::://////////++/+++++++oo+++//:-:://+ooyhmddmmmddmdmddmmmmNNmmmmNNmmNNNNNNNmmmmNNmmmmmmmmNNNNNNmmmNMMMMNNNNNmmmmmddmdhhyyysssooo+++++////////+++++++/////+++++++++ooo++o+++o++//+//////+++///////+++/+///+++++++oo++oosoossssssyyyyyyyyyyyyyhyyyyyyyyyyyyyyyyyyyhhhhdNNmdhdddddmNNmNmmmddmmmNNNNNNNNMMMMMMMMMNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNNMNNNNNNNmNNNNNNmmmmmmmNmmmmmmmmdmmmmmmmmmmmNNNNMMMNNMMMMMMNNMMMMMMMMNNNNNNNNNmNNmmmmmmmhddhhdddsyyysssyhyyyy
::::::::::::::::////////://///://////////////:::::::::::///////++++++++++++++++++/:::://+ooosyhmdddddddmmddmmmddmmmmmmmNNNNNmmmNNNNNNNNmmNmNNNmmNNNNmmmNMMMMNNNNmmmmmmddddhhhyysssooo++++++//////////////////////++++++oo+++o+/+++++////////+//////////////////++++o+++oooo++ooosssssyyyyyssysssyhyyyyyyyyyyyyhyyyyhhhyhdmMdhhmdddmNNNmmmmmmmmmmNNMNNNNNMMMMMNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNNNNNNNmmmmNNNNNNmmmmmmmmmmmmmmmmmmmNmmmmNNNNMMMMMNNNMMMMMNNNNMMMMMMNNNNNNNmmmNmmmmmdmNNhhdddmmmsyyyysssyyyyh
:::::::::::::/:///++//////////::////////////////:::::///////////++++++++++++++++///:::/+++oooshmdddddhhdmmmmmmNmmmmmmmmmNNmmNmmmmNNNNNNmmNNNNNNNNNNmmmNNNMMMNNMNmmmmmmddhhhhyyyysssoooo++++///////////////////////+//+++++++++++++//////////+:://////////+//////++oo+++ooo++oooossoossssyysssssyhyysyyyyyyyyhyyyyyshhhyhmNmhhddddmmNNmmmddmmmmmNNMMNNNMMMMMNMNNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNmNNNmNNNmdmmNNNNNNNNNmmmNmmNNNNNNmmmmmmMNNNNNMMNNMMMMMMNNNNNNNMMMMMNNNNNNNNmmmmmddmdmNmhhhddmNmyyyyyyyysyyyy
::::::::::::://///+++////////://////////////////::::://://///////+++++++++o+++++///:://+oo++oshhdddhhhyhdmNmmmNNNNNNNNNNmmmmNNNmmmmmmmNNmmNNNNNNNNNNNmNNNMMMNNMMNmmmdddddhhhyyssysssooo++++///////////////////////////////+++++++////////////////////////////++++++++oooo++ooooooooossssyysssyyyyyyyyyyyyyyyyyyyhyyhhhsdNNhyhdddmNNmmddddddmmmNNMNNNNMMMNNNNNNMNNNNNNNNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNmmmNmmmmmmddmmNNNmmmmmmmmdmmmmmmmNNNmdhdmmmmNNNNMNNMMMMMNNNNMMMMMMMNNNNNNNNmddmddmmdmNmhhhmdmNmyyyyyyyyysyyy
:::::::::::://///++++////////:////////////////////::://////://///++++++++++++++////////+++ooooyyyhyyyssyhdmNmmmNNNNNNMMNNNNNmmNNNNNNNmmmmmNNNNNNNNNNmmNNNNMMNNMNNNNmdddddhhhhysssssssoooo+++///////////////////////////////////////////////::::::://///////+//+++++++++ooooo+++o+oooossssssyhysssyyyysyyyyyyyyyyyyyhysyNNdshhddNNNmdddddddmmmmNNNNNMMMNNNNNNNNNNNMMMNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNmmmNmmmmmddhmmmmmmmmmmmmmddddhhddhddddmmNNNmmmNNNmmNNMMMNNMMMMMMNNNNNNNNmddmmdhdmddmNdhhdmdmNmyyyyyyhhyyyyy
::::::::::///////+++//////////////////////////////////////////////++++++++++++//:////++++++oosysssyysooshddmmmmmNNNNNNMMMNNNNNNNNmNNNNNNmNmNNNMNNNNmmmNNNMMMNNMMMMNNmddddhhyhyyyysossssoo++++////////////////////////+++///////////////////::://////////////+++++++++++ooooooooooooossssssssssssyyssssyyyyyysyyyyyyyyydNmhsddmmNNmdddddddmmmmNNMMNMMMNNNNNNNNNMMNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNMNNmdmmmmdmmddhmmNNmmmmmmmmmmmmmddddddddddddhhhhhddmmNNNNNNMMMMMMMNNNNNNmmdhdmNdhdmdmNmdhhdmmmmmyyyyyyhhyyyyy
:::::::://///////++++//////////////////////+++/////://///////::////+++++++////:://:////++++osssoosssso+osyhmNmmdmmmmmNNNNMNNNNNNNNNNNNNNMNNNNNNNNNNNNNmNNMMNNNMMMMMNNmmddhhhhyyyyssooooooo++++//////////////////////////////////////////////////////:////////++++++++oo++ooooooooooosooooossssssssyysyyyssyyyssyyyyyyyNNmhydmNNmdhhdddddddmmmNNNNNMMNNNNNNNNNNNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNMNNmdmmmmmmmdhddmNNNNNmNNNNNNMMNNNmmmmmmNNNNNNmdddmmmNNNMMMMMMNNNNNNNmdddhhdmmddhddNNmhhhdmmNmdyyyhyyyyyyyyy
:://::://:::///++++++/+///////////////////////////::///////:///////+o++++++////:////+++++++osssoooooo++++oshmmdddmmdmmmmMMNNNNNNMMMNNNNNNNMMNNNNNNNNmNNNNMMNNMMNNMMMNNmmhdhhhyyyssssooo++++++++///////////////////////////////////////////////////////////////+++++++++++oooooooooooooosoosssosssssyyyyssyyyysyyyyyyyyNNdyhmmNNddhhddddddmmmNNMMMMNNNNNNNNNNNNNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNMNNmddmmddmmmdhdmmNNNNNNNMNMMMMMMMNmmNNNNmddmmmmdmmmmNNMMNNNNNNNNmmmdhddhhdmmdmdddNNdyhhddNNmdyyhhyyyyyyyyy
:::::::::://////+++++++////////////++//////++++//////////////:://///+++++++//:::////++++++ooooooooo+++/+++oohdddhhhdmdddmNNNNNNNNMNNNNNNNNNMNNNNNNNNNNNmNNMNNNMNNNNNMNNNddhhyyyyyssoo++++++++++++/////////////////////////////////////////////////////////+++/++++++ooooooooooooooooooooooosssssssssyyyssssssyyssyyyyhNmhydNNNdhhhhddddmmmmmNMMMMMNNNNNNNNMNNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNMMNNNNNNmdmmmmmmdddddddmNmmmmNNNNNMNNMNNNNmNNNNNNNNmmdmNNNMMNNNNNNNNNmddhhhyhhmNmdmmdmmmdyhdddNNmhyyhhyyyyyyyyh
/::/::::///////++++++++++/////////++++++////+++///////////////:://://++++////://///+++++++oooosoo++++//+++++ydddyyhhhyhhdmNNNNNNNNNNNNNNNMNNNNNNNNNNNNNmNNNNNNNNNNNNNNNNNmdhhyssssssooo++++++++++++/////////////////////////////////////////////////////+++++++++++++o++++++oooooooooooooooossssssssyysssssssyyssyyyyyNmhymNNmhhhhhdmmdddmmmNNMMMMNNNNNNMNMNNNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNMMNNNNNmmmmmmmmddddhhddddmmmmNNMMMMNNNMNNmNNNNNNmNNNNNNNNMNNNNNNNNmdhyyyhhhyhmmddmmmNmdhyhdmNNNdhhyyyyyyyyyyyy
/::/:::/://////++++++++++///////++++++/++///+++///////////////////////++//////////++++++oooooooo+++++//+++++oyhdyyyyyyyyhdmmNmmNNNNNNNNNNMMMMNNNNNNNNNNmmNNNNNNNNNNmmmmNNNNmhyssssssoooo+++++///+++/////////////////////////////////////////////::////////////+++++++o+++++ooooooooooooooooosssssssssssyyssssssssyyyyhNmhymMmdhhhhhdmmmmmmmNNMMMMNNNNNNNMNNMMNMMMNMMMMMMMMMMMMMMMMMMMMMMMMMMNNMMMMMMNNNNNNNNNNmmmmmmmmdddddhhddhhddmmmmNNNNNNNNNNNNNNNNNNNNNMNNMMMNNNmmddhyssyyhhydmmdmmmNNdhhhdmmNmdhyyyyhhyyyyyyyy
:::::::/://////+++++++++++////+///+++///////+++////////////////////////++//////+++ooo+ooooooo++oo+++////+++//oydhysosyyssyhdmmmmmNNNNNNNNNNNNNNNNNNNNNmmNNNNNNmmmmNNNmmmmmNNmdhysssoooooo+++++//////////////////////////////////////////////////////////////+++++++++ooo+++++ooooooooooooooosssssssssssyyssssssssssyyhNNdhNNmhhhhhhdddmmNNNNMMMMNNNNNNNNNMMMMNMMMNMMMMMMMMMMMMMMMMMMMMMNNMMMNNNNMMMMMMMNNNNNNNmmmmddmmmdddddhhdhhhddmmmmNNmNNNNNNNMNNNNNmmNNMMMMNMNNNdhyhyyyyysyyymmddmNNNmhhhhdmNNdhyyyyhhhhhhhhyyy
:::::::/://////++++++++++++//+++//++///+++//+++/////////////////+////://///////++oooooooooooo++oo++/++//+++/+oyhhhysssyssssydddmmmNNNNMMNNNNNNNNNNMNNmddmNNNNmNmmmmmNmmmmddmmmmhyosssooo++o+++++///////////////////////////////////////////////////++++/++/++++++++++++++ooooooooooooooooooosssssssssssssssssssssssyyymNmdNNdhyhhhdddmmmmmmNNMMMNNNNNNNNMMMMNNNNMNMMMMMMMMMMMMMMMMMMMMMNNMMMNNNNNMMMNMMMNmmmNNmmmmmmmmmmmddddhhhddhyyhdmmmdmmNNmmmmmmmmmmNNNmNNMMNNNNmhyyyyyyyyyydmdddNNNmhhhhdmNNmdhyhhhhhhhhhhhhhh
/////://///////+++++o++++++//+++++++++/++++++++/////////////////+////:///++++/+++++oooosooo++++oo+++++///+///+syhyysossssoosyddddhmmNNNNNMMNNNMMMMNNNNmddmNNNNmmmmmmmmmmmmdddmmmdyssooooo+++++++++//////////////////////////////////++++++////++++++++++++++++++oooo++++ooooooooooooooooooooooossssssssssssssssssssyyydNmmNNdhshhhddddmdmmNNNMMNNNNNNNNNNMMNNMNNMMMNNNNMMMMMMNMMMMNMMMNNNNNMNNNNNMMMMMNNNNmdmNNNmmmmmmmmmmddhhhhhhdhhhhyhhhhhdmmNNNNNNmddhhdmNNmmNNNNmdysyyyhyyyhdmddmNNmdhhhhmNNmhhhhhyhhhhhhhhhhhh
///////////////++o++++++++++/++++++++++//++++++////////////////+///////////+++++++ooooosooo++++oo+++++//+///++oyhyysoooosooooyhddddmmmNNNNNNNNNNMMMNNNNdddmMNNmmmmdmmmdddddddddmmhyssooo++++++++++///////////////////////////////////+++++++++++++ooooooooooooooooooooooooo+++ooooooooooooooooooossssssssssssssssysssyhNNNNmdhyhhhhdddmmmmNNNNNNNNNNNNNNNNNNMMNNMMNNNMMNNMMMMMMMMMMNMMNNNNNMNNNNNNNNMMMMNNNmmmmmmmmmmmmmmNmmmddhhhhhhdhyyyhhhhyydmNNNNNNNNmNNmmddddddmdhyyyyhyyhdNddmNNdhhhddmNmmdhhhhhhhhhhhhhyyyyy
///////////////++++++++++++++++++++++++++++++++++++////////////////////////+oo+oo+oooosooooo+++o++++++//////++oyhyyysooosssoosyhdhhddddmmNNNNNNNNNNMNNNmdhhmNNmmmmdmmddddddddhhhdmdhsoo++o++++++++++//////////////////////////////////+++++ooooooooooooooooooooooooooooooo+++++oooo+oooooooooooosssssssssssssssssssyysymNNNmdhyhhhhdddmmmmNNNNNNNNNNNNNNMMMNNNMMMNMMNNNNMMMMMNMMMNNNNNNNNNNNNNNNNNNNNNNMMNNNNmmmmmmmmmmmmmmmmmddddhhdddddhyyhhhhhhhhhddmmdddmmmdmmmdddhhhyyyyhdmmmdmNmdhhdmmmmdhhhhhhhhhhhhhhhhhyyyy
/////////://///+oo+oo++++++++++++++++++++++++++++++//////////+++////////////++o++++oooooooo+++++++o++////////++syyssyssoossoooosyhhhhdmmmmNNNNNNNNNNNNNNmdyymNNmdmmmdddddhhhhhhhhhddyyooo++++++++++++//////////:///////////////////////+++ooooooosssssooooooooooooooo+++++++++++ooooooo++oooooooosssssssssssssssssyyysshmNNmdhyhhhdddddmmmNNNMMNNNNNNNNNNMNNNNNMMMNNNNNNMMMMMNNMNNNNNNNNNNNNNNNNNNNMNNNMMNNNNNmmddmmmdmmmmmmmmdmddhhhhyhhdddhyyyhhhhhdddddddmmmdmmmmmmdhhsyyhmmmmNNNmhmmmmmmdhyyyyhhhhhhhhhhhhhhhhhh
///////////////++o+++++++++++++++++++++++++++++/////+////////++++////////+////+oo++ooooooo+++++++++++//////+++osyyssyyysoooooooosyhhhdddmdmNNNNNNNNNNNMmdhysshNNmmmmdddhhhhhhddhhyyhdysso+++++++++++/////////////////////////////////////+++oooossssssssssoooooooooooo++++++++++++++ooooooooooooosssssssossoossssssyyssydNNNmdhhhhddddmmmmNmNNNNNNNNNNNNNNNNNMMMMMNNMMNMMMMMMNNNNNNNNNNNMNNNNNNNNNNNNNNMMNNNNNNmmmdddddmmmmmmmmmmdddddhhhhyhdddyssyhyyhmmdhhhhddmNNNNNmmmdmmNmNNMmmmmmmdddyhhyyyyyyhhhhhhhhhhhhhhhhh
///////////////+ooo++oo+++++++++++++++++++++++++++++++/////++//+/////////////::/++oooooooo+++oo++++++++/////+++ossssssssoo++oso+osyyhhddddmNNNNNNNNNNNMmhyss+shmmmddddhhhhhhyhhhhhyydhysoo+++++++++///++///////://///////////////////////+++oooooosssssooooooooooooo++++++++++++++++oooooo+++oooooooosooossoosssssssssyyhdNNmddhhhdddmmmmmNNNNNNMNNNMNNNNMNNNMMMNMMMMMNNMMMNNNMNNNNNNMNmNMNNNNNNNNNNNMMMMNNNNNNNNmmdddddmdmmdmNmmmmddhhhhhhyyyhdhyyyyyyydmmmmmdhhdmdmNNNmddmmddhyyyyyhhyyyyyyshhhyyhhhhhhhhhhhhhhhhh
///////////////+++ooooo++++++++++++++++++++++++++++++//+//++++++++////////////:::/oooooooo+++o+++++++++++++++++ossssssssso+++oooososydddddNNNNNMNNNMNNNmdysso++sdmmdddhhhhhyyyyyyhyyydysooo+++++++////++/////////////:::////////////////////+++++oooooooooooooooooo+++++++++++++++++oooo++++ooooooooosssoooosssssssssyyyyhdNNmdhhhhdmmdmmmmNNNNMMNNNNNNNMNNNNMMMMMMMMMNNMMNNNNNNNNNNNNNmNMMNmNNMNNNNMMMNMMNNNNNNNNmmmdddddmmdddmmNNmmddddhhyyyyyyhhyyhyshhdddmmmmmmdmmNNmmdhyyhysossyyyyysyyssyyyyhhhhhhhhhhhhhhhhhh
///////////////+++ooooo+++++++o++++++++++++++++++++++/////++/++///////////////::::/++oooo++++oooo++++++/+++++++ossssssssssoo++ooooosshddmNNNNNNNNNNMNNNmhyysso++shdmddhhhhhyyyyyyyyyydhyoooo++++++/////////////////::://////////////////////++++++oooooooooooo++++++++++++++++++++++++ooooooooooooosoooooooossoosssssysyyyymNNmdddmmmmmmNNNNNNNNNNNNNNNNNNNMMMMMMMMMMMMMMMNNNNNNNNNNNNNNNMMNNNNMNNNNNMMMMNNMMNNNNNNmmmddhdddddddddmmmmmmdddhhhhyyyysyyyyddddmmmmmmmmmmmmmddhyyssoosyyyyyysssyyyyyyyyyyhhhhhhhhhhhhhh
///////////////++oooooooooo++++++++++++++++++++++++++///+++//++/////+++++/+++/////:///+o++ooo+oooo++++++++++++++ssssssoossoo+++ooosssyhdmmNNNNNNNNNNNNNdhysssoo++oyhddhhhhyyyyyysyyyyyhysooo++++++//////////////////////////////////////////+++++++++++++++++++++++++++++++++++++++++++ooooo+ooooooooossoooosssssssyyyyyyhydmNNmmmmmmmmNNNNNNNNNNNNNNNNNNMMMMMMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNmNNNNNNNNMMNNMMMNNNNNmmmddddhhhddddddddmmmmdddddhyyhhhyyyyyhdddddmNNNNmmmmNNmdhhysssyyyyyyysssyyyyyyyhyyyhhhhhhhhhhhhh
///////////////++ooooooooo++++++++++++++++++oo+++++++++/+++++++++++++++++++++///////::/+++oooo+oo+++++++++++++++ssoooooosssooo++osoooshdmNmNNNNmmmNNNNmhyyssssoo+++ohhdhhyyyyyyyyyyyysyysooo++++++////////////////////::://://////////////////////++++++++++++++++++++++++++++++++++++++ooooooooooosssoooooossssssyyyyyyhhhhmNNNmmmmmmNNNNNNNNNNNNNNNNMMMMMMMMMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNmNNNNNNNNMNNMMMMMNmNmdmmmdddddhhdddddddmmmmmdddddddhhhhhhsyhhdhhhddmmmdmmmmdhhhhhyyyssyssssssyyyyyyhhhhhhhhhhhhhhhhhh
////+//////////++ooooooooooo++++++++++++++o+oo++++///+++++//+++++++++++++++++/////////://+++ooooo+++++++++++++++soo+ooooooosso++oossyyyhdmmmNNNmdddmmmdysssssssooo++oyhdhyyyyyyyyssyyyyssoooo++////////////////////////////::::::::::::///////////////+++++++++++++++++++++++++++++++++++ooooooooooosooooooooooossssssyyyhhhdmNNNNNmmmNNmNNNmNNNNNNNNMMMMMMMMMMMMMMMMMNNNNNNNMNNNNNNNNNNNNNNNNNmNNNNNNNMNNNMMMMMMNNmmmmmdddddhhhhhhdmmmmmmmmmmddddhhhdddhyyyyhhyyyhhhdhhhhhhhhhhhysssyyssossyyhhhhhhhhhhhhhhhhhhhhhh
+//////////////++ooooooooooo++++++++++++++++o++++///+++++++/+++++++++++++o++///////////:://++++++ooo+++oo+++++++ooo+oooosoossoooososssyhdmdmmmNmdhhddhyssssssssossoo++oyhhhyyyysssssysyysooooo++/////+///////////////////////::::::::::::////////////////+//++++++++++++++++++++ooo++oooo++ooooooo++ooooooooo+ooooosssysyyhhddNNNmNmmmmmmNNNNNNNNNNNMMMMMMMMMNMMMMMNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNmNNNNNMMMMMMMMNNNmmmmmdhhdddddhyhhhmmmmdmmmmmmmdhhddddddhddddddddmdhhddhhdhhhhyssssssssyhhhhyyyhyhhhhhhhhhhhhhhhh
////////////////+oooooooooo+++o+++++++++++oo++++++++++++++++++++++++++++o+++///++++//////:://+++++++++o+++++++++oooooooooooosooooooooshhddddddddhyyhysssoosssssssssso+++syhyyyssysssysyysooo+oo+++///+//////////////////////////:::::::::::::://///////////////+++++++++++++++++++++++oo++ooooooooooooooooooooooooosssyyyhhhhdmNNNNNNmmmNNNNNNNNMNNNMMMMMMMMMMMMMMMNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNMMMMMMMMMMNNmdmNmddddhddhhhhhhmmmmddmmdddmmmmmddddhhdmmmdddmdddddddhhhhhysssoyyysyhyyhhhhhyhhhhhhhhhhhhhhhh
///////////////++ooooooooooooooooooooooo++++++++++++++++++++++++++++++++++++++++++//+++//////::/++o++++++++o++oooooooooooooosoooo+++osyhdhhyyyyhyssyssooooosssssssssooo++osyyyssssssssyysoooooo+++/////////////////////////////////::::::::::::::::::///////////+++++++++++++++++++++++++oooooooooooooooo+oooo+oooossssyyyhdddmNNNmNmmmNNNNNNNNNNMMMMMMMMMMMNMMMMMNNNMNNNNNNNNMMMMMMNNNNNNNNNNNNNNNNNNNNNNNMMMMMMMMMNmmmmmmmmddhhhhhhhyhdddhdddhhhhddhhdddmdddddmmdddddddddhhddhyyyyyyysssyyyyyhhhhhhhhhhhhhhhhhhhhh
//++////////////+ooooooooooooo+ooooo++++++++oo++++++++++++++++++++++++++/+////+++//+++++//////:://++ooo+oo+ooooosoooooooooooooooo+++oosyhyysoossssossoooooosoosoosssssoo+++ossysssssosyssoooo+++++////////////////////////////////////////:::::::::::////////////////////+++++++++++++++ooooooooooooo++++++++++ooooossssyyhhdddmNNmmmmNNNNNNNNNNMMMMMMMMMMMNNMMMMMNNNNmNNNNNNNMNNMMNNNNNmNNNNNNNNNNNNNNNNNNMMNMMMMMMMNmmmmdmmmdddhyhhhyyyyyyhhhhhhhhhhhdhhhdmmmdhddmmmddhhddddddddhhhhyyyyyyyyhhhhhhhhhhhhhhhhhhhhhh
///////////////+ooooooooooo+++ooooo++++++++++oo+++++++++++++++++++++++++/////++++++++///+++//////:::/+oooooooooosooooooo+oooooooo+++oossssyso++oooossoooooooooossoossssssoo++osyssssoyssooo++++++/++////////////////////////////////////:::::::::::::::////////////////////++/++++++++oo++++oooooo++++++++++++++oosoosyyyyhhddmmmmmmmmmmNNNNNNMMMMMMMMMMMMNNMMMMNNNNNNNNNMNNNNNNNMMNMMNmmmNNNNNNNNNNNNNNNNNMMNNMMMMMMNNmmmmmdmddmmdhhhhhhyssyyhhhhhhyhhddhhhyhhdhhhhhddddhddddddmdmmdhhysssssyyyyyyhhyyyyyhhhhhhhhhh
///////////////+oooosoooooooooooooo++++/+++++++++++++++++++++ooo++++++++/+/+++++++++++/+++//////////::/+oooooosssoooooo++ooooooo++++oooosssoo++++oooo+osooooo+oossosssssssooooososssoysoooo++++++/+++//////////////////////////////////////:::::::::::::::////////////////+////++++++++++++oooooooooo+++++++++oooooossyyyyhhdmddmmmmmmmmNNNMMNNMMMMMMMMMMMNNMMNNNMNNNmNNNMNMMMNNNMMNMMNmmmNNNNNNNNNNNNNNNMMNMMMMMNNNMNNmmmNmmNdhhmmdhyhyhhysssyhhhhhhhhhyyhhhyyysssysyyhdhhhdhdddddmmdhhyyyssyyyyyyyhhhhyhhhhhhhhhhh
///////+///////++ooooooooooooooooo++++++++++++++++++++++++++++++++++++++/+///+++++++oo+++++/++//+++//::://+oooooooooooo++ooooooo+ooooo++ooooooo++++ooooooosooooooooosssssssssoooosssssoo+++oo+++++++++/////////////////////////////////////:::::::::::::::////////////++/////+++++++ooooooooooooooo+++++++++++ooooosssyyyhhddmdmmmmmmmmmNNMMNMMMMMMMMMMMMNNNMNMMNNNNNmNNNMNMMMNNNMMNMNNmmmNNNmmNNNmmNNNNNMMNNMMMMMMMMNNmmmNmmddhhhdddhhhyyhhysoshhhyhdhhysssyyyyyyyyyoooo+ossyhddddddmdhhhyssyyyhhhhhhhhhhhhhhhhhhhh
//////////////++++ooosoooooooooooo++++++++++++++++++++++++++++++++++++++///++++++o++++oo++++++///////////://+oooosooooooooooooooooo+++++++++++o++++ooooooooooooossoosssssssssssooooossooo+++++++++////+//////////////////////////////////////::::::::::///:////////////////////++++oooooooooooo+++++++++++++ooooooosssyhhdhddmmmNNNmmmNNNNMMMMMMMMMMMMMMNNMMMMMMNNNNmNNNNNNMMNNNMMMNMNNmmmmmmmmNNNmmNmmNNMNNNMMMMMMMMNNmmmmmddhhyyydddhhyyyhhyssyhdhhhhhyysoooosssyyyyyysooo++osyddddmmdhsdhyyyyyyhhhhhhhhhhhhhhhhhh
///////////////++ooooooooooooo+o+++++++o+++++++++++++++++++++++++++++++/////++++++ooo++++++++++++//////////:::/+ooooooooosoooooo+oo+++++++o+++osso++++ooooooooooooossssssssssssssossssoooo+++++++++//////////////////////////////////////////////:::::////://////++//////////++/++++++++ooo+++++++++++++++++++ooooossyyhhhhddmmNNNNmmmNNNNMMMMMMMMMMMMMMNNNMMMNNNNNNmNMNNNMMMNNNMMMNNNNmmmmmmmNNNNmmNmmNMMNNNMMMMMMMMNNmmddddhyyssshmmdhyyyyyyyshddhyhhhssoo+++oooooo+++ooooooooosyyhhhddhhhyysyyyhhhhhhhhhhhhhhhhhh
///////////////++ooooooooooooo+++++++++o+++ooo++++++++++++++++++++++////////++++++o+++o+++++++++++////////////::://+oooooooooo++++oooooo++++oo+oooso+++oooooooooossysooossssssssssssssoo+++++++++++/////////////////////////////////////////////////////////////+++////+++++++++++++ooooo++++++++++++++++++++++oosssyyhhdddmmmmNNNMMNmNNNNNMMMMMMMMMMMNNNNMMMMNNMNNNNNNNNNMMNNMMMMNNNNNmNmmmmmNNNNmmmNNNMNNNNNMMMMMMNNmmdddhhyssssoydNmdhyhyhhdyyhddhyyysooo++ossoo+oooo+////+++++++oossyysyysyyyyhhhhyhhhhhhhhhhhhh
///////////////++oooosooooooo+o++++++++++++ooo++++++++++++++++++++++///////++++++++++++++o++++/++++++/++/++//////::://+osoooo+o+++oooo+oo++ooo+ooosooo++oooooossoossoosssssssssssyyssso+++++++++++++++/////////////////////////////////////////////////////////////++++++++++++++oooooo++++++++++++++++++++oooosssyyyyhhdddmmNNMNNMMNmmmNNNNNNMMMMMMMNNNNMMMMNNMMNNNNNNNNNMMNNMMMMNNNNNmNmdmmmNNNNNNmNNNNNNNNNMMMMMMNNddddhyyysssssshmNddhhhhhddhhhhysoso+oo++osso+++osso//:////+++//+/++sossssyyyhhhhyhhhhhhhhhhhhh
/////////////++++ooosoooooo+++o++++++++++++o++oo++++++++++++oo++++///////++++++++++++/+++++++++++++++++++++/++++////:://++oooooo+oooooooooooooo+++++osoo+++oooo+oooossssosssosyysyyyyyyso+++++++++++++////////////////////////////////////////////////////////+++++++++++++++++++++++++++++++++++++++++++++ooossssyyhhddmmNMMMMMMNNNNNmmNNNMNNNMMMMMMMMMNMMNNMNNMNNNNNNNNMNMMNMMMMNMNNNmNmmmmmmNNNNNNmNNNNNNNMMMMMMNNmmdhdyyysssssyyhdMmddhdhhhdhhyysooo+ooso+ooooo++oooo+/::////:://////+ooosssssyyyhhyyhhhhhhhhhhh
////+////////+++++oooooooooo+oo++++++++++++++++o++++++++oooo++++/////////+++++++++++++++++o+++++++++++++++++/////////////////+oo++oo++ooooooooo+oo++ooo++ooo+oo+ossooossoooossysssyyyssssooo+++++++++/+////////+/////////////////////////+++++++//////+++++++++++++++++++++++++o++++++++++++++++++++/////+++ooossyhhddmNNMMMNNMNNNNNNNmmmmNNMMMMMMMMMMMMMMNNNNNNNNNNNNNNNMMMMMMMMNMMNNNNmmmmmmNNNNNNNNNNNNMMNNNNMMNNNmmdddyyyhyssyyhhdNmdhhmdyshhyyysooooooosooo+oo++++os+//:://///://o+/:////+syyssyhhyhhhhhhhhhhhh
++++///////////+++oooooooooooo+oooo++++++++++oo+++++++++++++++++/////////++++++++++++++++++++++++++++++++++++++++/++/////////:/+++ooooooooo++oooooooo++yssoo+++ooooosssosssssssssssyyyyyyyssso++++////+////////////////////////////////////////+++++/++++++++++++++++++++++oooooooo+++++o++++++++/+++++++++oossyyhdmNNNNNNNNNNmmNNNNNNmmmNNMNMMMMMMMMMMNMNNNMNNNNNNNNNNNNMMNNMMMMMMMNmmmmmmmmmNNNNNmNNNNNNNNNNNMMNNNNmmddddddhyyyyhdddmNmhhmmdyysyyyso++oooosoo+oo+++++oso+/::::/+/::/yyo/:::--:/+sysyyyhhhhhhhhhhhh
++++//////////++++oooooooooo++++oo+++++++++++o++++++++oooo++++++/////////++++++++++++++++++++++++++++++++++++++++++++++///////////++ossoooooooooooooooosooooo+++ossoooosssosssssssssssssyyyssssoo++++/+++//////////////////////////////////++++++++++++++++++++++++++oooooooooooooo+++++++++++++++++++++++oosssydmNMMNmmNNNNNmmNNNNmmmmmmNNMMNNNMMNNMMMMMNNNNNNNNNNNNNNNNMMNNMMMMMMMNNmmmmNmdmNNNNNNNNNNNNNNNNNMNNNNNmdddddhyysssyhhhhmNmdydmmdssyhhso+/oooooooooo+++++oso++/:::/+///+oyyy/:::::--/sssyyyyhhhhhhhhhh
ooo++////////++++oooooooooo+++o++++++++++++oooo++++oooo++++++++////////+/+++++++++++++/+++++++++++++o+++++++++++++++++++////////++///oooosoooooooossoooooossoooo+++oooossssssssssyssssssyyysssyysoo++++////////+/////////////////////++++++++++++++ooooo++o++++++++++oooooooooo+++++++++++++++++++++++++++oosshmNNNmmmmNNNNmmmNNNmmmmNNNmNNMNNNNMNNMMNNNMNNNNNNNNNNNNNNMNNNMMMMMMMMMMNmmmmmmmmmNNNNNMNNNNNNNNNNNNNNNNmdddhysossyyhhddddNNmhhmmmosyyhys+/ooossooooooo++++oo++/::::////+osyhys+:--...-/oyhhyyhhhhhhhhh
oo++++///////+++++ooooooooo+++oooo+oo++o+++ooooo+++ooo++o+++++++///////++++++//++/+++++++++++++/+oo++++++++++++++++++++++//+///++o+/////++ooooooooosoooooosoosysoooossooosssssssssssssssyyyysysssssooo+++//////+///////+////////////////+++++++++++oooo+++++++++++++ooooooooooo+++++++++++++++///++++++++oosydNNmmddmmNNNmdmNNNmmmmmNNNNNNNNNNNMMMNNNNNMMmNNNNNNNNNNNNNNNNMMMMMMMMMMMNmmmmmmNmmNNNNNNNNNNNNNNNNNNNNNNmddhysoosyyhhhdddhmNmhhdmNhyyyyys+/+osssooo+ooo+++++o+++////////++syyhys+-..-...:ohhyyyyyyhhyyh
+oo++////////+++++oooooooooooooooo+++++++++ooooo++++oooo+++++++/////////+++++++++++++++++++++++++++++++++++ooo++++++++++++++//++++++///////+++osooooooosooooosyssssooooyosssossssyyyssssssssyyyyyyssssooo++/////////////////////////////+///+++++++ooooooooooooo++++++++++oooo+++++++++++++///++++/++soooshdNNddddmdmNNmddmNNmmmmmmNNNNNNNNNNNNNNMNNNNNMMNNNNNNNNNNNNNNNNNNNNNNMMMNMNNmmmmmmNNmNNNNNNNNNNNNNNNNNNNNNNmdysoooosyhhhdddhsdNmyydmMdyyhyyso/+oossoo++oooo+///+oo+/////+///+osyyhys+-..-:--+hhhhhyyyhhhhh
ooo+/////////+++++oooooooooooo++oo+++++++++oooo+o++ooooo+++++/////////++++++++++++/+++++++++++++++++++++++++++++++++o++++++++++++++++//////////+ooooooosoooo+oosyyysoooossoosyssssssssssyyyyssyyyysssssssoo+++/////////////+++//////////+////////+++++oooo+++++++++++++++++++++++++++++++////////++oo+osymNmdhhddhdmNNddmmNmmmmmmmmNNNNNNNNNNNNNNNMNNNNMMNNNMNNNNNNNNNNNNNNNNNNMMMNNNNmmmNNNNNmNNNNNNNNNNNMMNNNNNNNNNddyoooosyhhhhhhdhoydmhydmNNhyysso+/++ossoooo+++o++//+oo++////+++++oshyhhyo:-.----/yhhhhhhhhhhhh
o+///////+///+++++oooooooo+ooo+oo+o++++++++oooo++++++++++++///////////+++/++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++////////////+ooooooooooooossssysooooosoossysssyssyyyyyyyyyyyyyssssssssoo++///////////////++++++//+/////+/+++++++++++++++++++++++++++++++++++++++++++/+///++++++sdmNmhhhdhhhhmmmddmmmmmmmmmNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNmNmmNNNNNNNNNNNNNNmmNNNNNmmNNNNNNNNNNNNdmNNNNNmmdhsosssyhddddhhhysydmhyhmNNdyyso++/+oossooooooo++++++o++++///+++++oshyhhhs/:.---../yhhhhhhhhhhh
o+//////////++++++ooooooooo++oooo+o+++o++++ooooo+++++++++++///////++++//////+++++++++/+++++++++++++++++o++oo++++++++++++++++/+++++++++////////////:/++oooooooooo+oosyysysooossyysssyyyssyyyyysyyyyyyyssssyyssssoo+++///////////+++///////+oo++//+++++++++++++++++++++++++++++++++++++++++++++///+osydmmdyyyyhhhddmmdddmmmmdmmmmmNNNNNNNNmNNNNNNNNNNNNNNNNNNNNNNNNNNmmmmmmmNNNNNNNNNNNNNNNNNNNNNmNNmmNNNNNNmmdNNNNNNNmdyssosyhdhhhdhyyyyhdmhyhdNNmhyyo++//+sssssoooo++++++++++++++///++oosyhhhhso/-.---../shhhhhhhhhh
o+//////////++++++ooooooooooooooooooooo+++++oooo+++++++++++++////////++/////++++++++//+++//++++++++++++o++++++++++++++++++++/+++++++++//++++++/////////++oosooooooooosyhyssssoossssssyyssyssssyyysyyyyyysssyssssssoo+++////////+/////++//+oo++++++++++++++++++++++++++++++++++++++++++++++++//+oydmmdhyssyyyyhddmmddddmmmmdmmmNNNNMNNmmmmmNNNNmmNNNNNNNNNNNNNNNNNNNmmmmmmmmmmNNNNNNNNNNmNNNNmNNmmmmmNNNNMNmmdNNMMMNNmhsssssyhdhhyhhyyyhyhdhhddNNmhyyo+//+oossssooo+++/++++/+++++++//+++ooyhhhhyo/-.------/yyhhhhhhhh
o+/////////++++++ooooosssoooooooooooo++++++++++o++++o++++++//++///+++////+++///+++++++++///////+++++++++++++++++++++++++++++++++++++++++++++++/////////////+ooooooooooossyyyyso+osssosyysyyyysyyyyyyssyyssssyyyyssssssoo+++//////////+++++++++++++++++++++++++++++++++++++++++/////++++++//+oshddhyysssyyssyhdmdddhhdmmddddmmNNNNNmmmmmNNNNNNNNmNNNmNmNNNmNNNmNNNmmmmddmmmmmmNNNNNNNNNNNNNNNNNmmmmmmNNNNMmdddNNNMNNNmyssssyhhdhyyyhhyyhhddhddmNMmdyso+//+ooossssoo+++//+++//+o++++//++oooshhhhys+:.----:--:yhhhhhhhh
so++//////+++++++++ooossooooo+ooooooooo++++++++++++++++++++////++++++//////++++++++++++++++///+++++++++++++++++++++++++++++++++++++++++/++++++///////////////++ossoossoosyyysyssoooooysssysyyssssyyyyyssyyssyyyssyyyssssooo++//////++++++++++++++++++++++++++++++++++++++++++++++//+++///+oshddhysoosssssyhddddhhydmmmdddmmNNNNNmmdmmmmNNNNNNNNmmNNNNNNNNNNNNmNNmmmmmdmmmmmNNNNNNNNNNNNNNNNNNmmdmdddNNNNMNmdhNNMMNNNmyssyyyhdhhyysyyyyhhddhddmNNmdyss+//++oosooooo+++///++++++++++//++oooshhhhyso/-----::-.:yhhhhhhh
oo++//////+++++++++ooossooooo+ooooooooo++++++++++++++++++/+++++++++++//////////+++++++++///+++//++++++++++++++++++++++++++++++++++++++++/++++++//+//////////////+++oooooooosshhyyyso+syyyssssyysssyyyyyyssyyyyyysssyyyysssoooo++////++++++++++++++++++++++++++++++++++++++++/++/+++///+oshddhysooooooyyhdddhhhyhhddddddmmNNNNmmdddmNNNmmmNNMNNNNmmmmNNmmmmNNNmmmmmdddddmmmmNNNNNNNNNNNNNNNNmmmmddhhmNNNNMmdhhNNMMNNNmssyyyhhhhyyyyyyhhhhdhyhdmNNmdysso///+oooooooo++////+/+//+++++//+ooossyhhhyso/----:::::./shhhyhh
soo+/////++++++++oooossssoooooo++oooo++++++++++++++o++++++++++++++++++///+++//+++++//+++++////+////++++++++++++++++++++++++++++++++++++/+++++++//++/////////////////+ooossssossyhhyssooossyyyysssyyyysyyyyyyyyssyyyyyysyyyysssssoo+++++++++++++++++++++++++++++++++++++++/++++/o+///+syhdyyysooooossydddhhyyyhdhhhdddmmNNNmdhhddmmmmNNNNNNNNNNNNmmmmNNNmmmmNNmmmmmddddmmmmmmNNNNNNNNNNmNNNNmmmddhyhNMNNNNmddmNMMMNNmdssyyyhhhhyssyhhhhhddhhhdmNNmdysso+//++ooooooo++////+/++/+++o++/++ossyhhdhys+/-.--::/+/--/shhhhy
oooo++////+++++++oooossssoooooooooooooo+++++ooooo+++++++//+++////++++++++++++++++++++/////+++++++++++++++++++++++++++++++++++++++/+++++++++++++//++////////////////////+ooooososyyyyyyyysosssysssysssysyyyyyyyyyyyyyyyyyyyyyyyyyssssso+++++++++++++oooo+++++++o++++oo+++++++++///+shddddsooosoooshdddhyyyyyyyhhhhdmmmNmddhhhhdmmmmNNNNNNNNNNNNNmNmmmmNNNmNmmmNmmmddddmmmmmmmNNNNNNmmmNNNmmmdmdhdysyNMNNNNmddmNMMMNNmhysyyhddhhyyyyyyyhddhhdyhmNNmdhsso+//++oooooo+++////++///++++o++++ossyhhddyo+/-.--:/+++/-.:yhhhh
sooo+/////+++++++oooosssssooo+oooooooo+++++++++oo++++++++++++/+++++++++++++++//+++++++///////+++++++++//++++++/////++++++++++++++/+++//////+++//++///////////////////////+ooooooossyhhhhyysoosyysssyysyyyyyyyyyyyyyyyyyyyyyyyyyhsyyyyyssooooo+++++++++++oo+oooooooooo+o++++/+++ohdmNmhyooooossyyhdhyyssyyyyyhddddddddhhyhhhddmmmNNNmNNNNNNNNmmmmmNNmmNmmmmmmmNmmmdmddmmmmmmNNNNNmmmmNNNNNmmdmdhhssyMNNNMNddmNNMMNNNmysyyyhhhhhyyyyyyyhddhhdhdmMmmdhsoo+//++ooo+oo+++///++////++++o+++oossyhhdhyo+/-..-:/+o+/:-./yhhh
oooo+////++++++++ooooossssoooooooooooooo+ooooooo+++o+++++++//////////////+////////+////////+++//////++//+++/++++///+++++++++++///++++////////////+//////////////////////////++oosossosyhdhyyysossyyssssyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyssoooo+++++++++++++++++++++++/+oshmNNmhs++++oshdhhyyyyyyyyyyyhhhhyyyyyyyhhhddddmmmNNNNNNNNNNNNNmmmmmmNNmmmmNmmmmmmmdmmmmmmmmmmmmNmmmmmmmmmNmddmmdyysydMNNNMNmmmNMMMNNNdysyyyhdddhyyyyyyhhdmdhdddmMmmdyooo+///+oo+++++++///++/++/++++++++oosyyhhdhys+/-.--/++o+//-..oyhh
osso//////++++++++ooooosssooooooooooooo+++oooooo+++o+++++++++////////////++++/////////////////////+///+/++/////////++/////++++/////+++////////+////////////////////////////////++oooooosyyhhhhyyssossyyysssyyyyyyyyyyyyyyyyyyhyyhyyyhhhyhhyyyhyyyyyyssssoo+oooo++++o+++o++ohdmNNmhs+++osyhddhhhhhhhhhhhyyssyyhyyyhhdddddddmmmmNNNNNNNmmNNmmmmmmmdmmNNmmNNmmNNmmmdmmmmmmmmmmmmmmmmmmmmmmmhhhNdhyhshmMNNNNdmmNNMMNNNmdyhhyyhhdhhhhyyyyhhNmdhdmmmNddhyooo+///+oo+++++++///+++++/++++++++ossyyhhdhhs+/-.-:/+ooo+/::.-oyh
ssso////++++++ooo++oosoooooooo+oooo+++++++oooo+o++++++++++++++///////++++/+++//+++////////////+++++/////+++///////////++/////+///++//+////////////+/////////+/////////////////////+++oooosyyyyhhhyssoosyyyyyssyyyyyyyyyyyyyyyyyyhyyhhhhhhdhhhhhhhhhhhhhhhhhyyyyyyyyyyyosshmNNNNdyssyhhdmmmmdddddhhddhyyysyyyhhhhhdddddmmmmmmmNNNNNNNmmmNmmmmmmddhdmNmmmmmmmmmmmmmmmmmmmmmNNNmmmmmddmmddhhhdmysyhohNNNNNmdmmNNNNNNNdhyhyyyhhhhhhhyyhhhdmdhhdmNmdddhysoo+///+++++//+++//++/+++/+++++oooossyyhhhhhyo/-.-:++ooo+//:-.:+h
sso+////+++++oooo+oossoossoooooooooo+++++++o+++oo+++++++++//++/////////////////////////////////++//////+///+////+++///////////++//+//////////////////////////++//////+////////////////+++ooossyhhyhhysssssyyyyyssyyyyyyyyyyyyyyyyyhhyhhhhhhhhhhhdhhhdhhddddddhhhhhhhhhdhdmNNNNmmmmmmNNNmmmdddmdddddhhhhhhhhhhhhdddddddmmmmmmmNNNNNNNmNNmmmdmdddhhdmmmmmmmNmmmmmmNmmmmmmmmmmmmmddmmdddhyyhdmhooyyymMMMNmdmNNNMNNNNmhyyhyyyhhyyddhyhhhdNdhhhdNNNhdhysso+++://++++///++//++/+++//++++oooosssyyhhhhyo/-.-:+ooooo+/:---:o
soo++//+/++++oooo+ooososssoooooooooo+++oooo++++++oo++++++++++++///+////////////////////////////////////+////////++++///////////+///////+///////////////////+/////////+++//////////////////++oosssyhhhyhyssyssyhyyysssyhyyyyyyyyyhhhhhhhhhyhhhhhddhhhhhdhhdhddddddddddddddmNNNNNNNNNNmmmmmdmmdmddddddddddhhhhddhdddddddmmmmmmNNmmmmmmmmmmmmmddddddhdmNMNNNNNmNmmNNNNmmmmmmmmddddddhyysssydmdsossodNMNMmdhNNNNNNNNmdyyyyhhhhhhhhdhhhydmmyyhdmNNmhdyssoo++////+/++////++/++/+++//+++ooooossyyhhhhhso+---/++ooooo+/:----
yso+///++++++ooo+oooossssooooooooo++++++++o++++++ooooo+++++++++++/++++++/+++/////////////////////////////////////+//////////////////////////////////////////////////////////////////////////+++oosssyyhhhhdyssysyyyyyyyssyysyyyyhhhhhyhhdhhhhhhhhhddhhhhhhdhddddhhhddhhddmNNNNNNNNmmmmdmmmmmdddddddddddddddddddddddmmdmmmmmmmmmmmNNmmmmmmdddddhhhddmmNNNNNNNNNNNNNNmmmmmdddhyyhhyyyyyyhmdhyssyyhNNNNmddmNNNNNNNNmhyyyhyhddhhhhhhhhdNmhyhdmNNmdhdyssoo+++//:////+//+++/++/+++//+++ooooossyyhhhhhyo+:--/++ooooo+//---:
ssso////+++++oooo+oooossoooooooooooo+++++ooooo++++++++ooo+++++++///+++++//++++////+///////+////////////////////////////////////////////////////////////////////////+////+///////////////////+//++oosssssyhddhhdysssssyyyysssyyysyyyyhhhhhhhhhhdddhhhhhhhhhhhhdddhhhhhhdhddNNmmmmmmmmmmmmmmmmdddddddddddddddddddddddmmdmmmmmmmmmmmmmmmmddddddddddhdddmNNMMMNNmNNNNNNmmddddhyhhyysssyyyhmmhyssyyhmNNmdddmNmNNNNNmddhyyyhhhddhhhhdhhhNmhyhdmNNNmddyssso++++//:///////++++++++++/+++++oooossyyhhhhhyo/--:/+ooooo++//:-:/
osso///+++++oooooooooooooooooosoooo++++++++o+++++++oooooooo++++//////++//////////////+///////////////////////////++//////////////////+/////////////////////++++//////////////////////++//+///++///+++ossssssyyhhhhhyssosyyyyyyssyssshyyyhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhdmmmmmdmmmmddddddddddddddddddhdddddddddddmmmmmmmmmmmmmmmdddddddddddddmmdmNMNMMNNNNNNNNNNmdddhhhhyyyyyhddddsoooshdmNNNmmmmmNNNNmmmmddyyyyhhddhhhhhhhdNdhhhdmNNNmdddyysso+//+///://////++++++++++++++++oooossyyhhhhhyo+--:/+ooooo++//:--:
sys+////++++oooooooooooooooooooooo++ooo++++o++++++oo+oooooooo+++///////////////////////////++//////+++//++++/////+///////////////////+///////////////////////////++////+/////////++//////+////////++//+oooooooooyhhhhhhhysssyyyyyyyyyssyyyyyyhhyyhhhhhyhhhyyyhhhhhhyyhyhhhhhhhhdddddddddhddddddddhddddddddddddddddddddmmddmmmmmmmmmmmmdddddddddmdmmmmmNNNNMNNNNNNNNNmmddddhyyhyhdmmmdhsssyhdmNNmmmmmmmNNNmmmNmmdhyyyhhddddddhydmmdyhdmmNNNmddhhhyso++//////://////++++/+++++++++++oosossyyhhhhhys+--:/+oooooo++//:-:
sso/://++++ooooooooooooooooooooooo+++++++++o++++++++++oooooooo++++///+++/+//+//////////////////+++/+//+++////////+/////////////////////////////////////////////////////////+/////////+///+///////////++/++soosoooossyyyyhhhhyssssyyyyyyyyyssyysyyyyhhysyyyyhyyyyyyyhhhhhhhhhhhhhhhdddhhhhhhhhhhhhhddhdddhhdddddddddddddddmmmmdddmmmmdddddddddddmmmmmmmmNNNNNNNNNNmNNNNmddyshddmmmdhyhhhdmmNNNNNmmmmmmNNmmmmNmddhyyyyhhddhddhhdmmdydmmmNNNmddhhyyyys++//////////////++++++++++++++++ossssyyyhhhhys+:-/+ooooooo++//:--
ys+///+++++oooooooooooooooooo+ooo++++++++++++++++++++++++ooooooo++/++//////++/////////////+////////+//////////////////////////////////////////////////+///////////////////////////////////////////////////++ossooooosssssyyyyhhhyyyysssyyyyyyyyyyyyyyssyysyhhyyhyyhhhhyyhhyhhhhyhhddhhhdhhhhhhhhhhhhhhhhhhddddhddddddddmmmddddmmmmmdddhhddddddmmNmmmdmmNNNNNNNNNNNmmNNmmmmdmmmmdhdmmmNNNNNNmNmmmmmmmmmmmNNmmdhyyyyhhhhhddddmmmhhhmdmmNNNmddhyysyysso+//:////://////++++++++++++++o+oosssyhhhhyyys+:-:+ooooooooo+/:--
yo/:/++oo+oosooooooooooooooooooo++++++++++++++++///////+++++oooo++++++++++++///++/////////////////+////////////////////////////////////////////////////////+////////++////////////////////+//////////////////++ooosoooooooosssyyyhhhyyyyysssssyyyyhhhyyyyyyyyyyyyyyhyyyhyyhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhddddddhhhddddmmmmddddddddddddmmmmmmmdddmmNNNNNNNNmmNNNNNNNNNNmmNNNNNNNNNNNNmmmmmmmmmmmmmmNmmddhhyhyyhhddmmNNmdhhdmdmmmNmmmdhhyysssooo+//:///////////+o++++++++++++o+oosssyyyhhhyys+:-/+ooooooooo+/::-
y+//+++oo+ooooooooooooooooooooooooooooo+++++++++//////////++++++++++///+++++++++++////+++++//////////////////////////////////////////////////////////////////////////////////////+////////////////////////:////++ossssssssssoosssossyyyyyyhhyyyysssssyyyhhhhhhhhhhyhyyhhyyhyyyyyyyyhhhhhhhhhhhhyhhhhhhhhhhdddddddhhhhddmmmmmdddddddddddddmmmmmmmddddhhdmNNNNNNmmmNNNNNNNNmNNNNNNNNNNNNNNNNmmmmmmmmNNmmmNmdhhhyyyyyyhdmmNmmmdddddmmmNmmmmdhyhyyssoooo++////////:////+o++++++++++++++oosssyyyhhhyyso::/+ooooooooo+//:-
o///+oooooosossooooooooooo++oo+oooooooo++++++++////////////++++++++++++++++++++/++++//+///////////////////////////////////////////////////////////////////////////////////////////////////////////+///:///://////++ooossssssssssssssssssssyyyyhhhhdhhyhyyyyssssyyhhhhhhhhhhhhhhhhhhhhhddhhhhhhhhhddddhhdddhhhhhhhhddmmddddddddddddddddddmmmmddhhhhhhhddmmNmmmNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNmmNNmmdhhhhhhhhyyhdmNmmmdmmdddmmNmddmdhyyyyyssoooooo+//://+///////++o+++o+++++++++ooossyyhhhyyyso::/+oooooooo++//:-
+//++oo+oossoosooosoooo++o+++o+oo+++oo++++++++/////////////++++++++++o++++++++++++///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////://////+oooosssysssyyyssssssssssssssssyyyhhhhhhhhhyyyysyyssyysyssyyyyyhhyyhhhyyhhhyyyyyyyyyyyyhhdddddddddhdhhhdhhhddddddddddddddhhhddhhdmmmmmmmmNmmmNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNmdhhhhhhhhhdddmmmmmmmmmdmmmmmmmdddhyyyyyyysooooo+o++/://////////++oo+/o+++++++++oosssssyyhhyyso::+oooooooooo+//:-
//++ooooossssooooooooo++++++oooooo+++++++++/////////////////////+++++o+++++++/////////////+////+//+/////////////////://://///////:///://///////////////:::///////////////////////////////////////////////:::::////////+++oooosssyssyyssssssssssoosoooossssysyhyyhhyhhdhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhdhddddddddddhhhhhhhhhhhhhhhddddddmmdddddhhhhdddmmmmmmmmNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNmddhyhhddhhhdmmmmmmmdddddmmmmmNNmmdhyyyyyyyhysoo++oo++++///////::///++oo+/ooo++++++++oosssyyhyyyyso/:+oooooosoooo+/:-
/++oooooossssoooooooosoooo+++++ooo+++++++++++///////////////////++++++//+////////////////////////////////////////////////////////:///////:/:///////:///:://////:///:://////////////:///://////////:///:/:::::://///////+++oooooooosssssssssssssoosssssssssooooooooosssssyyyyyyhhhhhhhhhhdddhhddhhddhhhhhhhhhhhyyyhhhhhhhhhhhhhhhddddhhhdddmmdmmmmmmNmmNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNmmddhhdhhhhddddddmmmmdddddmmNNmmmmmdhysssyyhhhhyyyso+++o++++///////::///++ooo++oo++++++++oosssyyyyyyyso/:+oooooosoooo+/::
/++ooooososssoosooooosoooo++oooooo++++++++/+////////::::://///////++++//////////////+//++/////////////////////////////////////////://:///://://:://:///:://:///:///:://::::://:///:://:://:///:///:::::/::::::/:::///////++o+ooo+oosossoossssssssososysssssssooooossoooosooosssssssssyyyyyyyyyyyyhhyyyyhhhhhhhhhhhhhhhhhhhyhhdhhhhhhyyydmmmNNNNNmmNNNmNNmmmmmmmNNNNNNNNNNMNNNNNNNNNNmmdmmdhyyhhddddddmmmhyyhdddddmmmmmmmmmmmdhyssssyyyhhhhysssooo+++o++///////::///++ooo++oo++++++++oossssyyyyyyso/:/+oooossoooo+//:
+ooooooosssssoossoooooo++++++o+oooo+++++++++/////+oo+++///::::::://////+//////////++///////////////////////////////:/://///////://::/:://://::/:::/:://:::/://:://::/::::::://:://////:::::::/::::::::::::::::/:::://///+++++++++++++ooooooossssssyyyyysssyyssyyssyyyyysyyssysssssyyyyyyyhyyyyyyyyyyhhhyyhyyyyhhhhyyyyhhyyyhhhhhhyyhddddmmmmNNNNNNNNNNNNNNNNNNNNNMMMMNNNNNNNNNNNNNNmdddhhhhyyssyhdddhdmmmmmmmNNmNNmmmmdddhhhysssssyssyhhhhsssso++ooo+++////////:///++++o++oo++++++++ooossyyyyyyyso/:/oooosssoooo+//:
++oooooosssssoossooooo+++++++o+ooo++++++++//////+ydddddddhhyso+/:://////////////////++/////////////://:////////////:/::/::/:://::/::/::::://::/:::/:::::///:/:::/:::/:::::::/::::::::::::::::::::::::::::::::::::::::://////+++++++++++++++ooooosssssssssssyyyyyyyyyyhhyyhhyhyyyhhhhhhhhhhhhhhhyhhhyyhhyyhhyyhhhhhhhhyyyhhyhhhyssssyddddmmNNNNNNNNNmmNNNNNNNNNmmNNNNNNNNNNNNMNNNNNNNmdhyyyyyyssyyyhhhhdhyhhhhhhhhdddhhhhhyyyyssssssssyhyyyyssso++++++++///////::///+++++++oo++++++++ooosssyyyyysso/:+oooosssoooo+//:
ooo+oosssssssssssoooo++++o++++++++o++++////////:+yddddddddmmmmmdho/::::///////////////+////////////:://::::/:::/:/::/://:::::/::::::::::::::::::::/:://::/:::::::::/::::::::::::::::::::::::::::::::::::::::::::::/::://:////++++++++++++++++++ooooooooooosssssyyyyyyyyyyyyyyyyyyyyyyyyyyyysssssoossooooooossosssssssssssssysssosssyhhhdmmmmddmmmmmmmdmmmmddmdmmmmNNNNNNNNMMMMNNNNNMNNmdhhyysyyhhhhhyyyyssyhhhyyhyyhhyyyysyyyyssssssssyyyyyssooo+++++++//////:::///+++++++oo+ooo++ooooossyyyyyssss+:/oooosssooo+++/:
oooooossssssssssoooooo++oo+++o++++o++++////////:oydddddddddmmmmdmmdhy+//:/::////://///////:://:///::///::::/:::/::::/::::::::::::/::::::::::::/::::::::::/:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::://////+++//////+/////++//++/+++++++++++++++++++++++++++++++++++++++++++++++++oooooooooooooooooooooooosssyyyhhmmdddddddddddmddddmdddddddddmNMNMMMNNNMMNNNNNNMNmmddysssyyhhhyyyyyyyhyyyyyyyyhyyyysyyyyssssssssyyyyssooo+++++++///////::////++++++++oooooo+ooooossyyyyyysss+:/oooossoooo+++/:
oooooossssssssssoooo+o++++++oooo+++++++////////:ohdddddddddmmmmmmmmmmmdhhsoo+++/::::::://:/:::::/::::::::::::::/:::::::::::::/::::::/::::::::::::::::::/:::/:::::::::::::::::::::::::::::::::::::::::::::::::::::::://:://::::::////:////////////::::::::://::::::::////////////////////++++++++++++++++++++o++++++oooooooooooosssyhddddddddddddddddhdddddhhhdhhyyhhdmMMNNNNMMMMNNNNNNMNNmmdyysyyyyhyyysyyyysyyyyyhhhhhhysyyyysssssssssyyyssso++++++++////////::///++++++++ooooooo+oooosssyyyyysss+:+osoossooooo++/:
oooooossssssssssooooo++++++++o++++++//+/////////yddhdddddddmmmmmmmmmmmmmmmddddhhyyso+/::::/::::::::/:::/::::::::::::::::::::::::::::::::::::::/::::::::/:::::::::::::::::::::::::::::::::::::::::::::/::/::://:://:///:://///::::::::::::::::::::::::/:::////////////////////////////////+++++++++++++++++++o++ooooooooooooosssyyyhhddhhhhddhdddddddddhhdhhhhhyyyyyyyymNMMMNNNMMMNNNNNNMMNNmddhhyyyyyyyyyyyyyyyyyyhhhhhhhyyyyyyysssssssyyyssso++++++++/////////:///+++++++++ooooooooooosssyyyyyyso+:+osoossooooo++/:
ooossosssssssssooooooo+ooo+++++++++///////////:/hdddddddddddddmmmmmmmmmmmmdddddddddddhyo+/::::::::::-:ohhhhyyyyyyyyysssooo++//:::-::::::::::::/::::::::::::::::-::::::::::::::::::::::::::::::/::::://:://:///://////////////////////:://:::::/:://:////////////////////////////////++++/+++++++++++++++++++++++ooooooooosossssyyhhhhhhhhhhhhddhhhhhhhhhhhyyyhyyyyssyyydmMMMMMNMMMMNNNMNNNMNNmmdhyysyyyyyyyyysyyyhhhhhhyhhhhhsyyysossyssyyysso+/++++++/:///:///::/++o++/+++++ooo++oo+oossssssyyyso+:/osssssooooo++//
oooosssssssssssooooo+++++o++++++++////////////:/hdddhdddddddddmmdmmmmmmmmmdddddddddddddddhyo/:::::::-/sddddddddddddddddddddddhhyyo+//::::::::::::::::::::::::::::::::::::::::::::::::://::/:://:://///::////////////////////////////////////////////////////////////+/////////+++/+++++++++++++++++++++++++oo+oooooosssssssyyyyyyhhyhhhhhhhhhhhhhhhhhhhhhyyyyhyyyyyssysyhmNMMMMNMMMMNNNMMNNNNNNNdddhyyssyyyyyyyyhhdddmddddmdhshhyssyyyyssyysoo+/+++++++:///://::://+++++++++ooooo+ooooossssssyyyso+:+ossssssooo+++//
ossossssysssssooooooo+++++++++++++////////////:+hddhddddddddddddmmmmmmmmdmdddddddddddddddhddhy+::::::/odddddddddddddddddddddmmmmmmddhysoosso/-::::::::::::::::::::::::::::::::::::://////////////////////////////////////////////////++//+///++/////////++//++++++/+++++++++++/++++++++++++ooo+++oooooo++ooooooooossssssyysyyyyyyhhhhhhhhhhhhhhhhhhhhyhhhyyysyssyyyyyyyyyyhmNMMMMMMMMNNNNNNNNNNMNmmdhhyyyyyyyyyhhhdddmmmmNNdhsdddyyyyyyssyssso+//++++++:///://::///++++++++++oooo++oooosssssssysso/:+ossssssooo+++/:
ossssssssssoosssso+++o++++++++/++/////////////:ohhhhddddddddddmmdooohddddmddddhhddhdhhhhdddddddy+:-::/+mdddddddddddddddddddddmmmmmmmmddddddhs:-::::::::::::::::::::::::::::::////://///////////+/////////++++//////////++++/+++//////+++++++++++++++++++++oooo++oo+++++oooooooooooo+++oooooooooooooooossssssssssssssyyyyyyyyyyyhhhhhhhhhhhhhhhhhhhhhhyhhyyyyshyyyyyhhyyyyhyhdmNMMMMMMMMNNNNNNNNMMNNNdddhyyysyhhhhhdmmNNNNNNmddmddhyyyyysssysso+////+///:://///////+++++++++++++oooooooosssssssssso/:+ossssssooo+++//
oosossssssssoooooooooooooo+++/////////////://:/yhhhhddddddddddmmd/-://+oosyyhhhhddhhhhdhhhhhhdddhs/:-:oddddddddddddddddhdddddddmmmmmmmdddhhhy/:::::::::::::::::::::::::/:::::::///////////+++//++//++/////++++++/////+++++++/++++++/++++++++++++++ooooooooooosoooooooooooooosssoooosooooooossssssoossssssyyyyyssssyyyyyyyyyyyyhhhhhhhhhhhhhhhhhhhhhyyyyhyyyyyhyyyyyyyyhyyyhyyyhmNMMMMMMMMNNNNNMMMNNNNNmdhhyyyyhhhdmNNNNNNNNNNmmmmdhhhhyyssssoo+////+////://////://+++++++++++++ooooooooooooossssso/:+osossssooo+++//
sssssssssssooooo++oooooo++////+////////////////hddhhddddddddddddh:://::::://::/+oydddhddhhhhhhddddy--:+dddddddddddddddddhdddddmmddmmmmmddhddh+-::::::::::::::::::::::::/:::::/+ossssyssoo+++++++///++++///////+++++++/++++++++++++++++++++ooo+ooooooooosssssssssssssssssooossssssssssssssssssssssssssssyyyyyyyyyyyyyyyyyyyyyyhhhhhhhhhhhhhhhhyyyhhyyyyhhyyyyyhhyyyyyyyhyyshyyyyyhdNMMMMMMMMMNNMMMMMMNNNNmmdddhhhhdmNNNNNMNNNNNNNmdddddhhyssooo++////////:://://::/++++++o+++++++ooooooooooosssssso+/+sssssssoooo++//
ssssssssssoooooo+oo+++++++///////////////////:/hhhddddddddddddmdy-://:::::::::::::shdhdddhhdhhddddd+::+mdddddddddddddddy//+oosyyyhddmmmmdddmho::::::::/:::::::::::::/::::/+shdddddddmmddddhhyyso++///++++/++++/+++/+///+++++++++++ooooooooooooooossssossssyssyyyyyyyyyssssssssssssssssyysssssysssysssssyyyyyyyyyyyyyyyyyyyyyyyhhhhhyhhyhhhyyhyyyhyyyyyyhyyyyyyhhyyhhhyyyyyyyyyhhhhhmNMMMMMMMMMMNMMMMMMMMNNNmmddhhdddmmmNNNNNNNmmmmmmdhhdhsosoo+/////++/+////:/:::/++++++++++++oooooooosoooosssssso+/ossssssssoooo++/
ossssoooooooooooo++++++++///////////////////:/+dddddddddddddddmds-:////::::::::::-:yddddddhdddddddds::+dddddddddddddddhy--:::::::://+osssyhhs/::::::::///::::::://::/::+yhdmmdddddddmdddmdmmmmmddhyso+/++/+/++++++/+////+++++++++++++ooooooossssssssssssssyssssyyyyyyyyyyyyyyyyyyyyysyyyyysssyyyyyyyysyyyyyyyyyyyyyyyyyyyhyyhhhhhhhhyyyyyhhhyyyyyyyyyyyyhyyyyyhhhhyyhyyyyyyyyyhhyyhhhdmMMMMMMMNNMMMNNMMMMMMNNNNmddddddddmmmmmmmmmmmdddmdhyssoo+////////////////:///++++++++++ooooooooosooooooossso+/osssssssssooo++/
ssssssoooooooo+++++++++////////////////::::/:/smddddddddddddddmdo-://:::::::::/::::sdddddddddddddddh/:+mdddddddddddddddho+++//////::::::::///::///////:://::::///////+ydmmmmddddmdddmdddmddmmmmmmmmmddyso+//++/+++++//++++++++++++ooooooooooosssssssssssssysssssyyyyyyyyyyyyyyyyyyyyyyyyyyysyyyyyyyyyyyyyyyyyyyyyhhyyyyyyyyyyhhyyhhyhyyyyhhhyyyyyyyyyyyyhyyyyyyhhhyyyyyyyyyyyyyyyhhhhhddmNMMMMMMMMMNNMMMMMMNMMMNNNmmdhhhhhdddddmmdddddmdhyyso+/////////////////:://+++++++++ooooooooooooooooooosso+/ossssssssssoo++/
osssossoooooo++++++++///////////////////////:+ymddmdmmmmmmmmdmmd+:////:///:::://:/:yddddddddddddddmd/:+mdddddddddddddmmdddddhhyyyso+++///////////://///////////+////ydmmmmmmmddddmmmmmdmmdmmdmmmmmmmmmmmdhyo++++++++++++++++++oo++++++++ooooosssssssssssssyssssssyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyhyyyhhyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyhhhyhyyyyyyyyyyyhyyyyyyyhhhyyyyyyyyyyhyyhhhyyhhyyyhdNNMMMMMMMMMMMMMMMMMMMMMNNmmmddddddddddddddddhhysoo+////////////////:://+++++++++ooooossooooooo+oososoo/+ossssssssssoo+//
ooooooooo+++++++++++////////////////////////:+ymddddddddddddddmh/:///////:://////:/yddddddddddmmdmmd/:+mmddddddddddddmmmdddddmmmmmddddhyso:////////////////////+///ymmddmmmmmdmmmmmmmmmmmdmmmmmmmmmmmmmmmmmdy+/+++/+yyyysoo+++++++++++++++oooossssssssssossssssssyyyyyyyyyyyyyyyyyyyyyyyyyyhhyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyhyyyyyssyyyyhyyyyyyyyyhyyysyyhyyyyyyyyhhyyyhyyyyyhdmNNMMNMMMNNNMMMMMMMMMMMNNNNmmdddddmddddddhysoo+/////////////////::://+++++++++oooooooooo++o+oososo+/ossssssssssso++/:
soooooooo+++++++++/////////////////////////::+hmhhdddddddddddddy:://////////////::sdmmmmmmdmmmmmmmmh//oNmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmh////+//////////////++/:+ymdmmmmmmmmmmmmmmmmmmmmddmmmmmmmmmmmmmmmmmhs/+++/odNmmmmmdhhyso+++++++++++oooooosssssoosssssssssyyyyyyyyyyyyyhyyyyyyyyyyhhhyyhyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyhhhyyyyyyyyyyysyyyyyyyyyyyyyyyyyyssyhyhhyyyyyyhhhyyyyyyyyhyhdmNNNMMMMNNMMMMMMMMMMMMMMNNNNNNmmmddddhyyso++//////////////////::///++++++++oooooooooo+++++ooooo+/ossssssssssoo++//
oooooo++++++++/////////////:::///::////////:/oddddddddddddddddhy:////////////////ommmmmmmmmmmmmmmmmy/+yNmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmh//////++/+++/+///+++//+ydmmmddmmmmdmmmmmmmddmmmmmmmmmmmmmmmmmmmmdmho:++//ymNmmmmmmmmmmmmdhysso++++++oooooossoossssossssssyyyyyyyyyyyyhyyyyhhyyyyyhhyyyyyyyysyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyhhyyyyyyyyyyyyyyyyyyyyyyyyyyyyyysssyyyyyhyyyyyhhyyyyyyhhhddddmNNNNMMMMMNNNMMMMMMMMMMMNNNNNNNmmdhyssoo++///////////////////:::///+++ooooooooooooo++oo++oooo++/ssssssssssoo+++//
ooooo+++++///+//////////////::::///////////:/sdddddmdddddmmddmdy//+++////+//+++oymNNNNNNmmmmmmmmNNms+odNmmmNmmmmmmmmNNmmmmmmNmmmmmmmmmmNmy/+++///++++++++++++///ydmmmmmmmmmmmmmmmmmmmdhhhhddddmmmmmmmmmmmmmNhs/+///dmNmNmmmmmmmmNNmNNNmddhyo+++ooooooooooooooosssssssssyyyyyyyyhhyyyyyyyyyyyyyyyyyyyyyyyysyyyyyssssyyyyyssyyyyyyyyyysyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyysssyyyyyyyyyyyyyyyyyyhhhhdddmmmNNNNNNNNNNNNNNNNMNNNNNNmmmmmddhhyssooo++///////////////////::///++++o++o++ooooooo++++++oooo+++sssyyyyssoo++++/:
ooo+++++///////////:::////////::////////////+ymmddmmmmmmmmmmmmmmmmmdhhyyysyyhhmNNNNNNNNNNNNNNNNNNNd+oyNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNdo/ooo+++++//++/+++/+//+dmmmmmmmdmmdmdmmmdys+///////+osyhdmmmmmmmmmNho/++++mNmmmNNmmNNNmNNNNNNNNNNNmmho+++oooooooooossoosyyssyyyyyyyyyyyyyyyyyhyyyyyyyyyyyyyyyyyssyyyssssssssssyyyyyyysyyyyysyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyysyyyyyyyyyyyyyyhhhhhddddddmmmdmmmmmmmmmmmmmmdddhhhhhyysssoooo+/////////////////////::///++++++++oooooooo++++++oooo++osyyysyysooo+++//:
++++++//////////////////////////////////////shmmmmmmmmNmmNNNNNNNNNNNNNNNNNNNNNMNNNMNMMNNNMMNNNNMNmyohmMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNd+oosoooooooooo++++++/+ymmmmmmmmmmmddmmdy+//+++++++++///+oshdmmmmmmNho/+++sNNNNNNNNNNNNNNNNNNNNNNNNNNNmy++ooooooo+oooosssyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyssssssssssssssyssyyyyyyysssyysyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyssysyyyysyyyyyssyyyyyyyyyyyyyyyhhhhhhhhddddddddddddhhyyyyyyyysoooo++o+/////////////////////:////+++++++ooooooooo+++++oooo+++syyyhyysso+++++//:
+///////////////////////////////////////+++/hmNmNNNNNNNNNNNNNNNNNNNNNNNNNMMMMNMMMMMMMMMMMMMMMMMMmhhdNMMMMMMMMMMMMMMMNNNNNNNNNNNNNNNNNNNmy+sooooooooooooooooooosNNNNNNNNNNNNNmmdy/++++o+++++++++++//++ohdmNmNy+/++odNNNNNNNNNNNNNNNNNNNNNNNNNNNNmdooooooooooooossssssssyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyysssssyssssssssssssssyyssssssssyyyyyyyysyyyyyyyyyyyysyyysssyysssssyyyyssyssssssssssssssssssssssssssyyyyyyyhhhyyyyyyyyssssososssso++++/++//:://///////////////:://++++++++ooooooooo+++++oooo+++yhhhyysso+++++//::
///////////////////////////////////++oooooo+dNNNNNNNNNNNMMMMMMMMNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNmhhmNMMMMMMMMMMMMMMMMdssyshhdmNNNMMMMMMNhsossssssssssssooooosoymNNNNNNNNNNNNNNmy++++++o+++++++++++++++++oshNms+/++smNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNyooooooooooosssssssssssssssyyyyyyyyyyhyyyyyyyyyyssssssssssssssssysssysyyyyyssssyyyyysyyyyysyyyyyyyyysyyssssssssyssssssssssssssssssssoooosssooooooosoossossssssyyyysssssssooooooooooo++++++////:::////////+++++//::////++++++oooooo++o+++++ooo+/+ohhhhyysoo+++++//::
/////////////////////+///+/++++ooooossssssshNMMNNNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNmdmNNMMMMMMMMMMMMMMMMMNmhddyyyyyyyhhdmmmmhyyyyyyyyyyyyyssssssyoydNMNNNNMNNMNNMMNhsooooooooo++++++++++++++++++o+++o+oyNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNdoosoooooyhmNMNNNNNmddysosssyyyyyyyyyyyyyyyysyyssssssssoossssssssssssssyysssssssssssssyyysssssssssssssssssssosssssssyssssossssssssooooooooooooooooooooo+oooooossssoooooooooooooo+ooo+++///////////////////+++++/::////++++ooooooooo+++//++ooo+/oydhhyysooo++++o+/::
/////////////////++++++++ooosossssyyyyyyhhhNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNNNmmmmmmNNNNNNNNNNMMMMMMMMMMMMMMNNNmmmdhhhhhhhyhhhhhhhhhhhhhyhhyysssssmNMNNNNNNNMMNNMNhsoooooo+ooo+++++++oo++++++++oo+++o+ydNNNNNNNNNNMNmydmmNNNNNNNNNNNNNNmoooooosdNMMMNNNNNMMMNNmdyossyyyyyyyyyyyyyyssssssssossssssssssssssssssssssssssssssssssssssssssssssoosoosoossossssssysssssoooooooooo++++++oooo+++++++++o+oooooooooooooooo++++++++++oo++//////////////////////+++///////+++++oooosso++++++++ooo//shdhhyyso++sssos+///
////////+++/+++++++++o+ooosssyyyyyyhhhhhhdNMMMMMMMMMMMMMMMMMMMMMMMMNNNNNNNNNNNNNNNNNmmmmmNNNNmmNNNmmmmmmmmmNNMMMMMMMMMMMMMMMMNNNmmmdddmddddddddddddddhyyhhsmNMMNMMNNNNNNNMNmooooooooosooohddhysoooooooooooooo+++hNMNNNNNNNNNMdy//+ooshdmNNNNNNNNMmooo+sdNMNNNNNMMMNNNNNMMMNdssyysssssyyyyyysssssssssssssssssssyyssssyssssssyyssssssosssoooooooooooooooo+o++oo++oo+osssosymmNNNNNNNNmddhssoo+++++++++++++++++ooooo++++++++++++++++++++++/////////////////////++++///////++++++ooooo+++++//++ooo/oyddhyysooooyysss+/:/
///++++++++++oooooooooosyyhhhhhhhddddddmmmNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmNNNMMMMMMMMMMMMMMMMMMNmmdmmmmmmmmmddddhhhhhNMMMMMMMMNNNNNMmyosssosssssooyNNNNNNmmddhysoooo+ooo+odmNNNNNNNNNNNyooooo++/+smMNNNNNMNhoooomNMMNNNNNNNNNNNNMNNMMNhssssssssssssssoosooossssssssssssossssssssssssssssssssssyyyhhddddddddddddddddddddhdddddmmNhssmMNNNNNNNNNmmmmmmddhhyssso++///+/+++++++++++++++++++++///++++/////////////////////++++////////++++oooooooo++++//+++++/yddhhysooossyyyys+///
+++++o++ooosssosssyyyyyyhhhddmmmmmmNNNNMMMMMMMMMMMMNNNNNNNNNNNNNNNNNNNNmmmmmmNmmmmmmmmdmmmddmmdmmmmmmmmdddmmmmmmmmmmmNNNMMMMMMMMMMMNNmdmmmmmmmmmmmddddddddNMMMMMMMMMMMNNMNhoossssyssssoymMNNNNNNNNNNNNmmdhyso++ydmmmmmmNmNNNdo+oo+osoo++dMNNNNNMNs+oyNMNNMNNNNNNNNMNNNNNMMMMmhssssooydmmmdddhhyyyyyyyssyyyyyyyyyhhhhhyhysosshmmNNNNNNNNMMMMMMNNMMNNMNMMNMMMNNNNNMNMMMMMhs+mNNNNNNNNmmmddddmmmmmmmmmmdhys///++/++//////////++++++///++++//::////////////////++++++//////++++oooooooo+++///+ooo++hddhhyo++syhyyyso+///
+ooooooossssyyyyhhhhhddmmmNNNNNNNNNNNNNMMMMMMMMMMMMMMMMNNmmNNNNNmmmmmmmmmmmmmmmmmmmmmmmddddddddmddddddddddddddddddddmmddmmNNNMMNNNmmmmmmmmmmmmmmmmdmmmddmNMMMMMMMMMMMMMMMNhosssssysssohmMMMNNNNNNNNNNNNNNNNds+odmNNNNNNNmmNNy++oooooo++omMNNNNMNm+ohmMNNNNNNNNNNNNNNNNMNNNMMNdsooooosdNNmNNNNNNNNNNNNNNNNNNNNMNNNNMNNNMNdssshmMMMMMNMMMNNNNNNNNNNNNMNNNNNMNNNNNNNNNNNNMNdo+dNNNNmmmdddmddddmmmmmmmddmmmdo/+sdddddhhyysooo///+++++//++++///::://///:////////++++++//////+++ooooooooo+////++++++sdddhysoosyyhyssoo////
sssssyyyyyhhhhddddmmmNMMNNNNNNNNmmNNNNNMMMMMMMMMMMMMMMMMmmmMMMMMMNNNmmmddddddmmmmdmddmddddddddddddddddddddhddddddddddddddddddmmmmmmmmmmmmmmmmmmmmmmmmmdmNMMMMMMMMMMMMMMMMNhssyssysssssmNMMMMNNNMMNNNNNNNNNNho+yNNNNNNNNNNNNNs+/+ooooo/oyNNNNNNMmy/hNMNNNNNNMMNNNNNNNNNMNNNNNNmy+sooosdNNmNNNNNNNNNNNMNMMMNMNNMMMNNNMNNNMNdososdMMNMMMMMMMMMMMMNNNNNNNNNNNNNNNNMMMMMMMNNMmh:ohNNmmmdddddddmmmmmmmddddmdddy//sNNNNmmmmmdhhhy///+++++++++////:::/+////////////+++++/+//://+o+oooooooo++////++o+++yddhyssoohhyyysoo++++:
yyyyyyyhhddddddmmNMMMMMNNmNNNmmmmmmNNNNMMMMMMMMMMMMMMMMMhdmMMMMMMMMMMMMNNdhddmddhhddhhhhdddhhddhddhhddhhhhhhddhhhhdddhddddddddddddddmmmmmmmmmmmmmmmmmmdNNMMMMMMMMMMMMMMMMNdsyyyyyyssymNMMNNMMMMMMMNNNNNNNMNsosmNNNNNNNNNNNNNmmdhsso+++ymNNNNNMNy+yNMNMNNNNNNNNNNNNNNNNNNNNNNNmdsooooohNNNNNNNNNNNMMMMNNMMMMNNNNMMNNNNNNNMNmssoohmmmddhyyssssydmNNNNNNNNNNNNNNmdddyyyysssoo+/+ymdddddhhddddhddddmdmmddhhdd+/+mNmmmmmmddddddyo//+++//////+sys+//+++++//////////+++++/////+oooooooo++++////+oo++oddhyysoosdhyysoo++o++:
hhhhhhdddmmmmNNMMMMMMMMNmmmmmmmmmmmmmmNMMMMMMMMMMMMMMMMNydNMMMMMMMMMMMMMMhhdNMMNNmmmddyyyhhhhhhhdhhhhdhhhhhhhhhhhhhhhhhhhhhhhdddddddddddmdmmmmmmmmmmmmdNMMMMMMMMMMMMMMMMMMmhyhhyyyyydMMMNNMMMMMMMMMNNNNNNNh+shNNNNNNNNNNNNNNNNNNNmmmdmNNNNNNNMds+NMMMMNNNNNNNMNNNNNNNNNNNNNNNmmmso+oohmMNNNNNNNNNMNNMMMMMMMMMMMMMMNNMMNNNNmsooo+oooo++++++++/oyNNNNMNNNNNMNNMmo+++++/++//+///+dddhhhhhhhdddddddddddhdddddo//ymmmmmmddmdddhdhs////+/////ohmddyo/++++///://////+++++/////+oooooooo++++///++o+/oymdhysooshdhyss++ooo+/:
dddddddmNNMMMMMMMMMMMMNmdmmmmmmmmmmmddNMMMNNNNNNNMMMMMNmsdNMMMMMNNNNNNNNNyydMMMNMMMMMNNmdhyyyyyyhhyhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhdddddddddddddmmmmmmmNMMMMMMMMMMMMMMMMMNmhhhyhyyhhNNNMMNMMMMMMMMNNNNNNmoohNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMmoodMMNNNNNNNdysssyhdmNNNNNNNmmmmmNmho+oshNNNNNNNNMMMMMNNNNNNmmdddhhhyssoooooo+oos++o++++++++++//+yNNNNNNNNNNNNNNds/++++/+///////shdddhddhhhyosyhhdddddddddmy+:+mNNmmmmddhhhhhhhy+//+///+/+ymddmds++o+////://///+++++//://+oooooooo++++///+o+++shdhyssssydhysoo+osyo/::
ddddmNMMMMMMMMMMMMMMMMddmmmmddddddddhdNNNNNNNNNNNNNNNNmhsdNMNNNNNNNNNNNNmshmNNNNNNNNNNNNNNNmmddhhyyyyyyyhyyyhhyyyyhhhhhhyhhhhhhhhhhhhhhhhhddddddddmdmmmdmNMMMMMMMMMMMMMMMMMMNmdhhyyyhyhdddNNMMMMMMMMMNNMmy+ymMNNNNNNNNNMMNNNNNNNNNNNNNNNNNNNMo+yNMNNNMMNmh+++o+++osmNNNmmmmmmmNNNmdsooymMNNNNNNMNNNMNMNdsoo+++ooosssyyhddddso+o++++++++++++++///dNNNNNNNNNNNNNNmy/++//+//////:oyhhhhddhdds::/+++ossyhhhdmdo:/hmmmmmmmdhhhhhdddho/////+:+ymmmmmd/++++/////////++++///::/++oossoooo+++///+o++oyddyssoshhhyso++osss+/::
mmmNMMMMMMMMMMMMMMMMMNhhdddddddddddhhmNNNNNNNNNNNNNNNNdosdNNNNNNNNNNNNNmdohmNNNNNNNNNNNNNNMMMMMMNNNdhyyssyyyyyyyyyyyyyyyyyyyyyyyyyyhhhhhhhhhhhhdddddddmddmNMMMMMMMMMMMMMMMMMMMMNNmmmddddddNMMMMMMMMMMMMNhoomNMNNNNNNNNNNNNNMNNNNNNNNNNNNNNNmy:ymNNNNNNNdy+++oooooo+ohmmmmmmNNNNNNMNNyoosNNNNNNNMNMMNNMMNdhddmmmNNNNNNNNMMNNNds++++++++/+///+/+///ymNNNNNNNNNNNNNNs/////////////yhhhhhhhddho/////::::///++++//ohmmdddhhddddmmmddhy+:///:+ydmmmmd/++++//////////+++////:/++ossssoo+++///+oo++yddhssooyhhyso++sysso+/::
NmmNMMMMNMMMMNNMMMMMNdhhhdddhhhhhdhyhmNNNNNNNNNNNNNNNmy+ymNNNNNNNNNNNNNmyodNNNNNNNNNNNNNNNNMMMNMNNNNNNmddhysssyysyyyyyyyyyyyyyyyyyyyyyyyyyyhhhhhhhhddddddmmmNMMMMMMMMMMMMMMMMMMMMMMMMNMMMMMMMMMMMMMMMMMdsodNMMMNNNNNNNNNNNNNNNNNNNNNNNNMNNdy++dNNNNNNNms+oooooo+oo++oymmmNNNNNNNMNNNNho+dNMMMMMMMMMMNNMMMNNNNMNMMMNNNNNMMNNMNms//+++///++//////+//sdNNNNNmNNmmmmmm+////////////yhhhdhhhhhdhhhyssso++/::///////sdmmddhhddddmddddddy////:/ymmmmmm++++++/////////+++////:/+oossosoo+++///ooo+ohdhysssyhyyoooooyysoo////
mmmNMMMMMMMMMNNNNNMNmyhhhhyhhhhyhhyydNNNNNNNNNNNNNNNNhs+dmNNNNNNNNNNNNNhosdNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNmhhysssyyyyyyyyyyyyyyyyyyyyyyyyyyyyhhhhyhhhhdddddmmNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMdyydNMMMMNNNNNNNNNNNMMNNNNNNNNMNNNNso++smNNNNNNNdo/+++ooo+ooo+++smNNNNNNNNMNNNNNmy+dNMNNMMMMMMMNNNNNMMMMMMMNNNmmddddhyyyo//////++//++/////+//omNNNmmmmmmdddms/://///////:yhhhdhhhhhhhhhhhdddhhhhhys///+/oymddddhdddddhhhyhhdo+//:/ymmmmmm+/+++//+///////++/////://oossoooo+++//+oo++ydhysosyhhyso+osyhyso+////
ddmMMMMNMNMMNNNNNNNmdyhyyhyyyyyyyysydNNNNNNNNNNNNNNNms+sNmmNmmmmNmNNNNmy+ohmmmmNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNmdyyssssssssssssssssyyyyyyyyyyyyyyyyhhhhhhhhddddmNNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNmshmNMMMMMMNNNNNNNdyydmNNNNNNNNNNMNm/+++dNMNNNNNNds++oo+++oooo++++dNNMMMMMMMMNNNMMNyshNMNMMMMMMMNNNMNNNMNmhyyso+++////+/////++/////////////////ymmmmmmmddddddy+://///////:shdhhhhhhhhhhhhhhhhhhhddmms+:+/+smmddmdddhdddddddddds+/:+ymmmmmm///++//+//////////+///://oooosoooo++/++oo+ohhysosyhyssoo+yhhyso++/:/+
hdmMNNNNNNNNNNNNNMNdyyyyyyyyyyyyyyshmNmNNNNNNNNmNmmNdooyNmmmmmmmmmmmNNds+oossoosyhdmmNNNNNNNNNNNNNNNNNNNNNNNNNNNNNmhssssssssssssssssysyyyyyyyyyssyyyyyyhhhhhhdddddmmNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNdyhNMMMMMMMMMMNNNNms++oosydNNNNNNNMMNo+osNNNNNNNNMdo/++oo++ooo+++ooodNMNMMMNNNMNNNMMNsoyNMMNNMNNMNNNMNNNNNs++oyyyhddddddddmdddmdho/://///////////hdmddddddhhhdho//////////:shdhhhhhhhhhhhhhhhhhhhdddmh+:///oddddddmmddddmddddmmds/:/sdmmmmm+/++////+/////////////::/ooossooo++//+oo+oyyyysshhysso++hddhsoo+////+
ymNMNNNNNNNNNNNNNNdysyyyyyssssyssssdmNNNmmmmmNNmNNNNsoodNmmmmmmmmmmmNNyo+oooo++++++ossydmNNNNNNNNNNmmmmNNNNNmmmmNNNNyoososssssssssssssssssssssssyysyyyyyyyyyyhhhddddddmmNNMMMMMMMMMMMMMMMMMMMMMMMMNdhhNMMMMMMMMMMMMNMNdoooooooyNMNNNNNNMNo+oyMNNNNNNNMho++oo+++ooo+++osoohMNMNNNNNNNMMMNNmy+yNMMMMNNNNNNNNNNMNNmmNNNNNNNNNNNNNNNNmmNNdy/////////////:ohmdddddhhhhdhs/:///++///:shdhhdddhyyhhhhhhhhhhhdddmds////+yddddddddmmdddddddmmds-/ymmmmmm///++//+++////////////://oosssooo++/+os+oshyssyhhysooosymdhyoo++//+++
hmNNNNNNNNNNNNNNNNyssyyyssssssssooymmmmNNNmmmmmmmNmmo+smNmmmNmmmmmmmNmo++oooooo++oooo+/sdNNNNNNmmmmmmmmmNNmmmNNmmNNmssssoosoosssssoossssssssssssssssssyyyyysyyyhhhhhhhhdddddmmNNNMMMMMMMMMMMMMMMMNhhdNMMMMMMMMMMMMMMMmyosssosoyMMMNNNNNNNo+odMNNNNNNNNyo++oo+++oo++ooooooyNNNNNNNNNNNNNNNMds/ymMNNNNNMNNNNNNNNMNNNNNNNNNNNNmmmmmmmmmmNmo://///////////sddhhhhhhhhdds/:///+++//:ohdhdddhhhyyhhhhhhhhhhddddds/://+sdddhdddddmddddddmmmmh:/ymmmddd+//+///+++///////////////+oossoooo++osooyyysyhhhsssoosydmhyso++/:/+oo
dNNNNNNNNNNNNNNNNdsossssssssssssoohmmmmmmmmmmmmmmNmh/oyNmmmmmmmmmmmmmho+++++++++++++++/ydmmmmmmmmmmmmmmmmmmmmmmmNNNmoooosossoooooossssssssssssssssssssssssssyyssyyyyyhhhhhhhhhhhdddmmNNNNMMMMNMNdhhmMMMMMMMMMMMMMMMMmyosssssoshMMMMNNNNNmo+sNMNNNNNNNNho/+++++oooooooooo+yNNNNNNNNNNNNNNNMmh/+sdNNNNNNNNNNNNNNNNNNNNNNNNmmmmmmmmmNmNmmmh::///////////:ohdhhhddddddds//++++++//:oydhddddhhhyhyyyhhhhhdddddmy+:///oddddmdddddddmmmmmdmmmo+ymmmddmo//+//++++///////////////+ooosoooo/ossosyysyhdhssoooshmmhyso+++//++oo
mNNNNNNNNNNNNNNNmsssssssssssssssosdmmmmmmmmmmmmmmmmy/sdNmmmmmmmmmmmmms+++++++++++++++//hmmmmmmmmmmmmmmmmmmmmmmNNNNmh+oossooooooooosssyyssooossssssssssssssssssssssssyyyyyyyhhhhhhhhhhhddddddddddhhNMMMMMMMMMMMMMMMMNhsoysssyoydMNMMNNMMNm++yNNNNNmmmmmdyo++ooo+ooooooo+osdNNNNNNNNNNNNNNNMmy/++oymNNNNNNNNNmmmdddddddddmmmmmmmmNNmmmmmmm+/://////////:ohddddddddmmms/:+++oo+++:oydddddddddddo//+oosyyhdddmho:///oddddddddddmmmmmmdmmmmh+ymmmmmmo//o++++++////////+//////+oooosso+/sssoyyyyddysssoosdmmdssooo+++++++o
mNNNmNNNNNNNNmNmdosssoossoooossooyNmmmmmmmmmmmmmmmd+/ymmdmmmmmmmmmmmm+++++++++++++++++smNNmmNNmNmmmmmmdosyydmNmmNNdo+ooooooooooooossymNmmdysssoossssssssssssssssssssyssyyyyyyyyyyhhhhhhhhhhhhhhdmNMMMMMMMMMMMMMMMMNhssyysssyoymMNMMMNNMNm+oyNNNmmmmmmmmmdhsoo+oo++++osydNNNNNNNNNNNNNNNMMmy++++++oyhmmdysso+++//////////+++osssyyyhhhhdmo/:://////////shmdddddmmmNms///++oo+++/shmdmddmdddmNs+://////+oosss+////ommmmddddddhhmmmmmmmmmmyhmmmmmNs//++++++++//////++///////oooossoo+sooyhhhddysssoosdmdhyooooo++++oo++
NNNNNNNNNNNNNNNNdosssssssoosooooshNmmmmmmmNmmmmmmmh/ohmmmmmmmmmmmmmmh/+++++++++++/+/++dmNmmmNNNNNNNmNmh/++++ydmmNmh++ooooooooooooooshNNmmmmmmdyssooooooossssssssssssssssssssyyyyyyyhyyhhhhhhhhhhhdNNMMMMMMMMMMMMMNdsyyyyyssyohmMNNMMNNMNd+oyNNNmmmmmmmmmNNmddhhhhhhdmmNMMNNNNMMMNNNNMMNNdo++o++++/+++++/////////:///:////////////////++o///////++/////sdmmmmmmmmmNdo:++++oo++/:shmdmmmmmmmmNho+o+++//////////+/+hNmmmmmmmmmsohmmmmmmmmmddmdmmmNs//++++++++++////+////////+ooossoo+osyhhdmdysssoshdNdyssoooo+++++++oo
NNNNNNNNNNNNNNMNdossooosoooooooshmmmmmmmmmmmmmmNmhs:ydNmmmmmmmmmmmmds/+++++++++++++++smmmmNmmNNNNNNNNds/oo+++ooydhs+oooooooooooooo+sdNmmmmmmmmNmdhysooooossooosssssssssssssssssssyyyyyyyyhhhhhhyyyhhdmNNMMMMMMMMmdyyyyyysssyohNMNNMNNNMNm++sdNmmmmmmmmmNNmNNNNNNNNNNNNNNNNNNNMMNNNNNmdys+++++///+///+///////::/:://:://///////////////////++++++/+++++ymmmmmmmmmmNh+:+++++oo++/ydmmmmmNNNmmNmmmdyyss+++/++//++/odNNmmmmmmmms/ommmmmmmmmmmmdmmmNy//+++++++++/////+////////++oooso+osyhdmmdyssssydmmdysooooo+++++++ooo
NNNNNNNNNNNNNNNmdoooooooooooooohdmmmmmmmmmmmmmmmmy+/dmmmmmmmmmmmmmmho+++++++++//+++/oyNmmmNmmmmNNNNNmy+o+oooooooo++ooo++oo++oooooo+ymNmmmmmmmmmmmmmmmdhssoooooosoooosssssssssssssssssyyyyyyyyhyyyhhhhhhhhdmNNNNmhyyhyssysyyysdNMNNMMNMMNm++oymmmmmmmmmNNNNNNNNNNNNNNNNNNNMNNNNNmdhys++///////////////:///::///::::/::://:::////////////+++++o+++/+++oohNNNNNNNmmmNy+/+++++o++//hmNmNNmmNNNNmNNNNNmmmddhyso+++/+smNNNmmmmmmNy/:hmmmmmmmmmmmmmmmNh+:/++++++++/////+++///////++osoo+oyhmNmhyssosymmmdhssoo++o+oo+++oooo
NNNNNNNNNNNNNmmNNdysoo++oo+oosdmmmmmmmmmmmmmmmmNdo/ommmmmmmmmmmmmNdy//+++/+++//////+sdmmmmmmmmmNmmNms++ooo++oooooooo++oo+++++o++o+ohmmmmmmmmmmmmmmmmmmNNmdhysooooooooooooooossssssssssssyyyssyyyyyyyhhhhhhhhhhdhhhhdhyysyyyyymMMNMNNNNNNNs+/+ydmmNNNNNNNNNNNNNNNNNNNmmdhhhyysoo+////////+//////////:///////////////////////////++++++oo+oo+o+oo+++++++oyhdmmNNNNNNs+/++++o+++/omNNNNNNNNNNNNNNmmmmmmmmmmmmmmdo+smNNNNmmmmmNy/-sdmmmmmmmmmmmmmmmd+:/++++++++++///++++/////:/+osoo+sdmNmhyyysyhmmdhysooooo+ooo+++o+oos
NmmNNmmmNmmmNNNNNNmmddhhhhhdddmmmmmmmmmmmmmmmmmmy+/ymmmmmmmmmmmmmmho/++++++++++++//+ymdmmmmmmmmmmmNh+/+++oo++ooo++o++++o+++++++oo+sdNmmmmmmmmmmmmmmmmmmmmmmmmdyoooooooooooooosssosoosssssssssyssyyyyyyyhhyhhhhyhhhhhhyyyyyyyhNMMNNNNNNNmmho/++shmNNNNNNNNNNNmmdhyysoo++/////////////////////://:://:://////////////+++++++++++++ooooooo+ooooooooo+++++++++oooyhddd++++++oo+o+/oddddmddmmmmmdmmmmmmmmmmmmNNNNNsoymmmNNmNmmNNy+:+ydNmmmmmmmmmmmmNd+:/+++++++++////+++//////:/++s++odNNmhyyssydmmmhysssoo+ooooo+++o+oos
mmmNNmmmNmmmmNNNNmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmdo++dmmmmmmmmmmmmmmy+/++++++//++////ohmmmmmmmmmmdmmd+//+++++++++++oo+++++++++++++++hmNmmmmmmmmmmmmmmmNmmmmmmmmmmdyo+ooooooooo+ossooooooossossoooosssssysyyyyyyyyyyyyyyyyyyyyyhNMMMNNNNmmmmmho+ooooshddmmdhyyoo+++///////++///////////////////////://///////++++++++++++++ooooooooooosooooooooooooooooooooo+ooo+++o+//+++ooooo++sdmddddddddddmmmmmmmmNNNNNNNNNNssyNmmNmmmmmNmy+/+shNmmmmNmmmmmmmNd+:/+++++++++//////+///++////+o/ohNmdhyssyhmmmdhyssssooosssoooooooooo
mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmdy++smmmmmmmmmmmmmmdo/++/+++++++///+/ohNmmmmNNNmmNNmm///+++++++++++++++++++++++++++odmmdmmmmmmmmmmmmNNmmmmmmmmmmmNmdyo+ooo+ooooooooooooooooooooooooooosssssssssssssssssssssssosyhdmmmmdddddddh++oo++++++///:ddmmmmmmmmmmmdddh+::///////////////////++++///+++ooooooo+++o++ooooooooooooooooooooosssooooooooooooo+++++++++oooooo++hNNNNNmmmmmmmmmmmmmmNNNNNNNNNNN+ohNmmmmmmmmNds//+oyNmmmmmmmmmNmmNd+:/+++++++++/////+++//+++////++ymNdhhyyhdmmmdhyssssooosssssooooooooo
mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmdh+/oymmmmmmmmmmmmmmho/o+++++++++++/+:sdNmNNNNNNNNNNNNo//++++++++++++++++++++++++o++smNNmmmmmmmNmmmNNmNNNmmmmmmmmNmNNNds++o++++yyysssoossssssssssso+/+++++++++++o+syyyyhhhhhhhhhyys/+++/+++++++/////+/+++/:/oNNNNmNNmmmmmmdmmmd+//////////////////+yddhhyyso++++++oooooooooosooosssssossssssssssoosssssssooooooo++oo+++++ooosoo++yddmNNNNNNNNNmmNNNNNNNNNNNNNNNm/smNmmmmNmmmNho/+++odNNmmmmmmmmmmNd+:/++++++++++++++++++++++/////ohmdhyyyhdmmmdhysssoooosssssooooooooos
mNNmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmho+/sdmmmmmmmmmmmmmNyo+o+++o+o++o++++/sdmmmmmNNNNNNNNNs//++//+++++++++++++++++++++//ymNNNNNNNNNNNNNmdshhdmNNNNNNNNNNNNNNds+oo++oyyydNNNNNNNNNNNNNNmds+++++////////odNNNNNNNNNNNNNNNs/:////////////////////:+hmmmdmmmmmdddddmddmy+///////////++/+++omNNNNNNNNNmddhyssoooossssoossssssssosssssssssssssssssssoooooooooo+ooo++oooooo+oosssyyhhddmmNNNNNNNNNNNNNNNNNh+hNNNNNNNNNNNyo++o+oyNNNmmmmmmmmmNd+//++oo++++++++++++++++++++///yddhyyydmmmddhysos                osss
NNNNNNNNNNNNNNNNNNNmmmmmmmmmmmmmmmmmmmmmmmmmhs+ooymNmmmmmmmmmNNNmo++o+++ooooooo+++/ydmmmmmmmmmmmNNNd+/+++++++++++++//////////++//yNNNNNNNNNNNNNMNd:+++oshddmmmNNNNNNNNmdhhhs+/::+mNNNNNNNNNNNmNNNNNNmmmmmdhhdddmmNNmmmmmmmmmmmmNh/:://///://////://///:+ymmdddddddmdddddmmmmdy+//++++++++o++++oyMNNNNNNNNNMMMMMNNNmmdhssssssssssssssssssssssssssyysssssssssoosoooooo++++oooooososysssooooooosydmmNNNNNNNNNNmoohNNNNNNNNNNNs+++o++oNNmmNmmmmmmmNd+:/o+oo+//++++++++oo++ooo+++/ohdhhyhdmmmddyyssss www.timdinh.nl ssss