.                                                
                                                                                                   `,;                                                
                                                                                                  .:;:                                                
                                                                                               `.,::;:                                                
                                                                                             `.,,,::;:                                                
                                                                                          ``...,,,::;:                                                
                                                                                        ````...,,:::;:                                                
                                                                                       `````...,,:::;:                                                
                                                                                       ````....,,:::;,                                                
                                                                                      `````....,,:::;,                                                
                   `                                                                  `````...,,,:::;,                                                
                   ..``````                                                           `````...,,,::;;.                                                
                   .````````                                                         ``````...,,,::;;.                                                
                   ..```````                                                         ``````...,,,::;;.                                                
                   ..```````                                                        ```````...,,,::;;.                                                
                   ..````````                                                     ````````....,,,::;;.                                                
                   `..```````                                                     ```z#`,.....,,:::;;`                                                
                   `..```````    `                                              ` ``*x,:z`....,,:::;;`                                                
                   `..```````` ```` ``   ` ` `                                ``````n,`in:i,.,,,:::;;`                                                
                   `..```````` ```````  ````````                            ````````M;,M@+;..,,,:::;;`                                                
                   `...```````````````  ````  `` `               `   ``````` ```.``z#W:nz....,,,:::;;`                                                
                   `...`````````,*:````` :i.``;,`` `   ```````` ``````````` ``iW@*`*W.`*+....,,,:::;;                                                 
                   `...`````````+#W`````.W#*``x* ```````````````` `````:zx*``:W;*W.`M``**....,,,:::;;                                                 
                   `...`````````*@#;````;@@+ `.`````` ```` ``,``;nn;``:Wzz@;`z*``M;.x``**....,,,::;;;                                                 
                   `...`````````*WMz ```zxW+```````.*#:``.#.Mn`*@zx@;`n#``;.`W.``xi.x``+i...,*+,::;;:                                                 
                   `...`````````iM*W````WiW+``n+``:WMx@;`:Wnz,.Wi``nn`M*````,W.``ni.x``+i...+##,::;;:                                                 
                   `....````````iW,@;``:@,W# `xz``Mn``+M`:@x``*M```iW`z@Mn+`:W```x:.x``+z:..###,::;;:                                                 
                    ....````````;W.xn``+x`W#``xz`:@:``.#`,@;``zn```:@..zMW##,W.``M.,x``;W+..z#+,::;;:                                                 
                    ....````````:W.*@.`x+`Mz``xz *W.`````,@,``zn```;@.````nx.W:`in`,z``.,...z#+::ii;:                                                 
                    .....```````:@..@i.@,`Mz``xz *W``````,@.` zn```*M`:```#z`zM#M,``,``.....n#*:#+i;,                                                 
                    .....```````:@.`nn;M``Mz``nn *W.```,`,@,``+M```n#.W+,iW:`.zz:``````.....n#xW@i;;,                                                 
                    .....```````,@,`i@M#``xn``nn`:@:``,M`,@,``,@+.*W,`*WWM;`````````````...,M###@;;;,                                                 
                    ......``````,@,`.W#;``xn``nn``Mn.`nz`,@,```*@@M:```.,````````````````:#W####n:;;,                                                 
                    ......``````.@:``z@.``xx``zn``;WWWM,`.z.````.,````````````````````.*x@####W*:;;;.                                                 
                    .......``````+.``:+```ii``:;```.ii.````````````````````````````,in@#######i::;;;.                                                 
                    .......````````````.```````````````````````````````````````.;#x@#####@Wz@@;::;;;.                                                 
                    .......``````````````````````````````````````````````````.#W#######@x#**W@;::;;;`                                                 
                    .......`````````````````````````````````````````````````:W#######@z+****@@:::;;;`                                                 
                    `.......```````````````````````````````````````````````i@####@###@+*****@@:::;;;`                                                 
                    `.......``````````````````````````izxMx+,`````````````;@##@#;,i@##niii**@@:::;;;`                                                 
                    `.......`````````````````;i*.```:M######@#```````````,W##M:````;##Wiiii*@W:::;;;`                                                 
                    `........```````````````:@##*``;@#########z``````````n##W,`````.M##*ii;i@W:::;;;`                                                 
                    `........```````````````:###*`:@###########i````````;###i``````.###+;;;i#M:::;;;                                                  
                    `,.......```````````````:###*.W##@x#+#x@###M````````x##x``````..i###:::;#M:::;;;                                                  
                    `,.......```````````````:###+z##Mi:;;;;#@###:``````:###;``````.`;##z,,,;#x:::;;;                                                  
                    `,........``````````````,@##M@#M;:;::;;:x###*``````+##W.```````.:##z,,,i#x:::;;;                                                  
                     ,........``````````````,@####W;;;;;;;;;*####``````M##z````.``.;n##n.,,i#x::;;;:                                                  
                     ,..........````````````,@#####:;;;;;;;;;@##z`````,@##*````.izW#@x#*.,,i#n::;;;:                                                  
                     .............``````````,@###W;;;;;;;;;;:M##n`````;###;.;#x@####Mz#*,,,*#n::;;;:                                                  
                     .............``````````,@###n::::::::::,M##n`````+###WW#######@nz#+;,,+#z::;;;:                                                  
                     .,............`````````.@###*::::::::::,x##n`````z#########Wn*,:zz#*,,+#z::;;;,                                                  
                     .,.............````````.@##@;,,,,,,,,,,,x##n`````n#####@Mzi:,,..+z#+;,###::;;;,                                                  
                     .,.............````````.@##@:,,,,,,,,,,,x##x`````n###n+i;::,,,..;zz#*:###::;;;,                                                  
                     .,,..............``````.W##@:,,,,,,,,,,,x##x`````x##@;;;;;::,,...+zz+;z#z:;i;;.                                                  
                     .,,................````.W##@:,,,,,,,,,,,x##x`````x##@ii;;;:,,,.,*#zz#*##W*M+;;.                                                  
                     .,,,.............``````.W##@:,,,,,,,,,,.x##x`````n##@ii;;;:,,,.##W+z#+i@###*;i.                                                  
                     .,,,..............``````W##@,,,.........x##x`````z##@ii;i;:,,,.M#z:zz#*x##@i;;.                                                  
                     .,,,................````W##@,..........`x##n`````+###+;;i;:,,,;##i,+z#+*@@*;;i.:;:.                                              
`````````````````````.,,,................````M##@,..........`x##n````.;###n;;i;::,,x#M,,;zz#*+i:;;*znz+*:`      ,;.                                   
```...................,,,,...............````M##@,......``.``n##n`....,@##@i;i;::,*##*.,,#z#+;:;;;zxnn#+i,     :++;`                                  
``....,,,,,,,......,,,,,,,................`.`M##@,```````````n##x.,,,,,n###M;;;:,*@#M,,,,izz#*;:;ixxxnz#*i`  `i#++;`                                  
``...,,,,,,,,,,,,,,,,,,,,,...........:,.....`x##@,```````````n##x,:::::i@###M+iin##@i,.,,,zzz+*;;*xxxxnz++` `i#++i`                                   
```..,,,,,,,,,,,,,,,,,,,,,,........*W#@x,...`x##@:```````````n##x:;::;;;n##########+..,,,,*nnzni;*xxxxnn#+``+#++i`                                    
 ```..,,,,::::::::::::,,,,,.......*@####M...`x###:```````````n##x:;i;;;i+@#######@+...,,,,:nnnxz;;nxxxxnz*,++++i`                                     
 ````..,,,::::::::::::,,,,,.......M######+..`n###:```````````n##x:;i+zxW@#######M;...,,,,,,*xxxx#;;xxxxxni++++;`                                      
  ```..,,,::::::::::::,,,,,,.....,@######x..`n###:```````````n##@MW@########@M#;......,,,,,:nxxxx#,,+nzz+++++;`                                       
   ```..,,::::;;;;;;;:,,,,,,.....,@######W..`n###;```````````n##########@Wn*:........,,,,,,:*xxxxMn;.:i+++++;`                                        
    ```..,,:::;;;;;;;;,,,,,,,.....x######n..`z###;.``````````n######@Mz*:.`..........,,,,,,::nxxxxxxz++++*+i`                                         
     ```..,,::;;;;;;;;,,,,,,,.....i@####@i..`z###;.``````````n@WMz+;,.`.............,,,,,,:::+xxxxxn#+++++i`                                          
      ```..,::;;;;;;;;:,,,,,,......#@####...`z###;.````````..,:..``.................,,,,,,::,ixxxxn###++++,                                           
       ```..,::;;;iiii:,,,,,,,......;##;.....;nn#,.````````....```.``...............,,,,,,:,.,xxxnz####++i                                            
        ```..,::;;iiii:,,,,,,,................`....````````..``````................,,,,,,,,.`.xxnnz#####+,                                            
         ```.,,:;;;iii:,,,,,,,.....................`..````````````.................,,,,,,.```.xxnn#####+*`                                            
          ```.,,:;;iii;,,,,,,,,.......................`````````````................,,,,..``` `nxnz#####+;                                             
           ```.,,:;;ii;,,,,,,,,,.....................``````````````..............,,,,..```   `nxnz#+++++:                                             
            ```.,,:;ii;,,,,,,,,,......................``.````..................,,,..````     `nxnz#++++*,      ``                                     
             ```.,,:;i;,,,,,,,,,,........................`````..............,,,...```        `nxn#++++**.    `;*i,`                                   
              ```.,::;;,,,,,,,,,,...........................`..`.........,,,...````          .xxn#++****`   .#z#+i.                                   
               ``..,:::,,,,,,,,,,,............................`......,,,,...````            `ixxz#++***i`  .zxz+**;                                   
                ```.,,:,,,,,,,,,,,,......................`......,,,,....````              ``:ixnz#+****i` .zxx#+**;                      ``           
                 ```..,,,,,,,,,,,,.......................,,,,,,....`````                .;iiiinnn#+****; .zxxz++**,                `.,i+z#,           
                   ````...,,,,,,,,,,,,,,,,,,,,,,,,,,,,,......```````                   .###+**ii*++****;,zxMz#+**i`           `,;*zxWWWMn,            
                     ````````......................```````````                         +nz##+*ii;;;i****+nMn#++**,         `*zxW@##@@WMz.             
                            ````````````````````````                                  `nnnz##+**iii;;;i*zxx##++*;`        `+@####@@@WW#`              
                                                                                      `xxnnzz#++****ii;;#xn##++*.`````````+@#####@@@W+`               
                                                                              `...``  `#xxnnzz##+++***ii+xnz#++;,........+@#######@@*````             
                                                                           `.,,,,..````.#xxnnnzzz###++**+xnnz##+*i;::,,,#@@#######@;```````           
                                                                        `.,::,,,...``````,;+zxxnnzzzz##+nMxnnnxz+*i;;::#@@#######W:``````````````     
                                                                    `.,:;:::,,,....``....,::;+xWWMxxnnznnxnn#+i;;;;;;:#@@#######M,.```````````````    
                                                               `.,:;;;;:::::,,````....,,:;*+nMWWWW@@@WMn+ii;::;;i**++n@@#######n..````````````````    
                                                             .;;;;;;;;;:::::,````..,,::;i*#nxMWWWMMnz+ii;;;i*+####zzx@#######@x.....`````````````     
                                              `..`           ,;;;;;;::,.,::,````...,,:;i*+#zzzz#+*i;;;;i*+###zzzzzzx@######@@@M*;;:,,,......``````    
                                    `,;:.     ;;;:           ,;;;,..```.:::.````...,,,::;;ii;;:::,,,,;zzzzzznnzznnM@#####@@@@@WMxnz+*i;;:,,,..````    
                                   `;;;;;,    ;;;:           ,;;,``````.::,```````......,,,,..........,*zxxnnnnnxM@###@@@@WW@WWWMMxnz#+*i;::,..````   
                                   ,;;;;;;.   ;;;:           ,:;,``````,,:``````````````.`....````````..,;#xMxxxM@#@@@@@@@@@WWWMMxxnzz#+*i;::,.`````  
                                   :;;;;;;,   :;;:           ,::,``````,,,```````````````````````````````..,*nWW@@@@@@@@@WWWWMMxxxnzz#+**i;:,,.`````  
                                   :::::::,   ::::           .::,     .,,.``````````..```````````````````````.:+xMMWWWWWWMMMMxxnnzz#++*ii;::,..`````` 
                                   .::::::.   :::,           .::.     .,,.````````..`` ```````         ```````..:i*#zznnxxnnnnzz#++**ii;::,,,..```````
                                   `,:::::`   ,::,           .:,.     .,,``````....```                    ``````.,,:;i*++####++**ii;;;:::,,...``````` 
                                    `,::,`    ,::,           .,,.     ...````....`````                        `````..,,::;;;;;;;;:::,,,,,....``````   
                                      ``      ,,,,           .,,.     .........``  ``                              `````.....,,,........```````       
                                              ,,,,           .,,.     ......```    ``                                  ````````````````````           
                                              .,,.           ...`     ....``                                                                          
                                              .,,.           `..`     ..``                                                                            
                                              ....           `..`     ````                                                                            
                                              `...           `..`     ````