.'''........,;'. .                    ........''.......,;:cllccllllllodkdlcclddolllooo:',:::c:,.....';' ...                  ..'''...   .'''........';,....',,'....',,,,:l:...........''',,''';c:,......':;',:;,:l:':ddodkkkkkOOOOxldOOxkKKOkkOOOOOkkkkkO000OOOkkkkkkOOOkkxxkkxxxOOOOOOOOOkkkO0OOOO0OOOkkkkkkxxdxxo:;c:'.,'                                                                                                                                                           
                              ...''',,,'.......''',,;,...                  .........   ..',,;;;;;;;;::::cccc:::cllllllllllcccc:cc,..;'.,:'.'c,          .   .     .....     ......  ...''..';;;;;,'...',:;';cc;,'..........','..........',,,;,',::::cccldoloxkkkkkkkkxxxOOOOK0OkOOOOOOkkOkkk00OOkkkkkkkkkkkkxxkkOOxkOOOkkkkkkkxkOOOOOOOOOOkO0Okkkxdddolc:,''..              ..                                                                                                                                           
                        .    ..',;:::;;;;;;;;,,'..'',''...             ... .....         .,,'......',,'',,;;;;;:cccloddocldol:;,'...'..,:,....                      .                ......';,.',,''''''''';c:;;;'..';;;,'.',,'.........',,,,'',;:ccclllllloxkkkkkkkkkkOO00OOOkkOOOOOOkkkkxk00kxxxxxxkkkkkkkkkkkOOkxkkkkkxxddddxkOkkkkkkkkkkxxxkOkoooddoc;;,'.            ...                                                                                                                                            
   ..  .:,     .''.... .:,. ..':llclol::cc;:llc:::cloc;'..            ..'.  ..     ..     ........';:,.....''',;:::lddolllool:;lxo,,:;,'''';:'.'c,          ..          .             ...  .;,..',,,,,;:;,.,lc;;::cllc:::;',;;;,,'.....'',;,,,;;:cllolcokkkkkkOO0OxxkkkOKK0OkxxkOOOOOOOkkkkO00OkkxdxkkxxkkkkOkkkOOkkkkxxxxddxxodkOOOkkkkxxkkkkxk0Oxddddolc:;;...;;.                                                                                                                                                      
 ..... ..      .';::,.  .   ..,clollcc:::::cloolllllllc;'...           ...        ...      ....... ..      ..''',;cllllllooollclolcccc:;,'';:,..'..     ..  .....                          .;'. .,c:'..,:,.,cc:;;;::::::c;';cc:::;,'''',;::ccloooodxxocoOkdxOOxdxkxkkOkOOOOOkkxkkOOOOOOOOOOO0OOOOkxxkOkkkxodkOkkkOOOkkkkxdddkkddO0OkkOOOOOOOOkkkkkxxxxdolc:::,..',,'.    ..                                                                                                                                              
    .          ..,;;;.      ..':ll:;;;;::;;:lllccc:::::;,,'.           .:,                     ...       .........,;:::ccllllllllooddocc:;,,;;,,''.........  ...'.                         .,..  .......;;;;;;,,,,,;;;;:::::cccccc::cc:ccclloodxxxxkkkkkOOkOOkxxkkkkOOOOOOOOOOkkkOOOOOOOOOO000O00OxxkOOOkkkkOOkkkkOO0Okk000OOxdx00OkkOOO000OOOkkkkxxxxollcccc:;,.','.                                                                                                                                                    
                ..,,..        ..',,,''''''',;ldo:;;;;;,,,,,'...         .                 ..    .        .....     ....'''';clooooddolllcc:::loc;;:;,'.............                                    .',,,,'.','....',;::ccclllllloooooolooddxxxxkkOOOOOOO0OkkkkOOO000OOOOOOOOOOOOOkkkOO0000000kddOOOOkkOOOOxxkkOOOOkkOO00OkdxOOOkkOOOOOOOOOOOkkkkxdllllllllll:;,'...  .....                                                                                        ..                                                 
                                 ...'........',;;;:ll;..',,;;,... ..;'                          .        .....      ...';,..;::cccccccccc::::cc:;;;;;,'''...........'.  ..                        ......''',,...,,....',,;::cclllooddddxxxdxxxxkkOOO0OOOOkO0K0xxkOOO00OOOOO0K0kkOOOOOOOOOOO0000000OOOOOkkkkkkkkkkkkkkkxxxxkkOOOOOOkkkkkkkkO0KK0OOOkkxxdxxdlllollc:;,,,,,,,;::,.                                                                                                             ..                           
                                           .............,'.,::,'........              ..                  ..        ........'',,'...,;::;;;::;;;;;;;;,',;,''';c:,...,.  ..  .                     .....';'......,,'''',,;:::ccclodddxxxxxkkkkkkkkkOOOOOOkkk0KOddOOOO0kddkOO000kxkkOOOOOOkkxxkxxk00OkkkkkkxxxxxxxxxxxxxxxxxxddoooddddxkkkkkkO000000Okkxxdxolldo:;;;;;;;;;;,',c;.                                                                                                                                          
                                            ...    ....',;;::::;;,,:cc;,',,;;,...............           ..           .......''......''',,,'...,;;;;::,'cxl'.',;::,..'............  .......        .....,;...;;,,,,'''',:llcloddddxxxkkkkkkOxddkkkkkkkkkkkkOOOOOO00OOOOkkOOO0K0OkxkkOOOkkkxxkkkxxOOkkkkxxxdddddddooooodddddddolclxxddxkkkOOkOOO0KXKOkkkxxxxxxxdc::::clc,',,;:c;.                                                                                                                                          
                                            ..  .......',',:llcccccccc:::;',:c::;,'''''',;;,..         ...  ..         .'........  .'..':,....''''',,,,;;,'',,,,,'..'''........... .''',;'.    .............,,''''..',,;::cloddxxxkkkkkkkOOOkkOOOOkkkxxxkOOOkkkkO00OOOOOOOO000OOOOOOOkkxxxxkOkdxOxllxkxdoooooolllllllooooollc::ldxdxxkkkOOOOOkxxxxxxkxxxOkolccllcccllc,',;:coc'.                                                                                                                                         
                                      ..'.      .......;c:';lolllllllc::ccccllcc:::lol:,,,,'''',,,''''.....';,.....    .'.....     .;'..:,............''',,;;;,''',,,,,:c,.,lc....',;;;;;,,,'''''......';;,,,,''.'',;;;;;:loodxkOOOO00OOOOO000OOOOkkkkkO0OkkkxdxkOOOOOO000000OOOOkkkkkxddodxkxodOxllkkdlllclol:;::ccccccccc:::loodddxxkkkOkkkkkkkkxxxxxkkxxdooollllllc::::cllc;...                                                                                                                                       
                                     .....      .......''',,;::cl;.;llccccclllllllllolcc:;;;;;;;;;,'.......';,'...............     ...  .. ..         .............  ..... .:;'.';:c:,',;;;;;,,,,'''''',;;;;;;;,,,,:clllllodxxkkOOO00000000000OOOOOOOOkkkxdxxxddkkkkkOOO00000Okkkkkxxddooolooooooolllllllcccc:'',,.............,ldooxxkkkkOOOOOkkkxxkkkkxxxdddoollccllc:;cddoc:,..                                                                                                                                       
                                   .,,..  .....',.. ......';;:clc,.;oo::c::lddoooolllccclc::::::;,';llc::;;;;;;;,''..............                                     ..   .,;,'',;;,;::::;,''',;;';cc;;;;:::::ccllodddddddxOOkkOOOOOO00000OOOOOOOOkkkxxxxxxxxkkkkkkkkOOOO000Oxxkkxdolloddlcllllllllllooooc:;,..'''.'...   ....'llcldkxxkkkO00OOKK0OOkkkxxxddooodoccllc;,;lddl:;,'...                                                                                                                                    
                                   .....................'',;;,.,:,.',;;;;,;;::::ccccccc:::::cldoc;,:ddlllllc:;;;;;,'........'..                                             ......''.''''.......',,,;;::cclcc:cllollooooddxkkxdxOOkkOkxk00OOkkOOOkxddoooooooooodkkkxxxxxkkkkkxddxddoolccc::col,....,lc,;oo,........           ..',;cloddxxkOOOOO00OOOkkxxxxxdollddllol::ccloolc:;;:,..                                                                                                                                   
                                    ...';,.;oc,....';;;;;;,,,,,,,,,;;;,''''''',,,;;;;:::::cclllll:,cxdlloolllc::::;::::::;''''',,.                                      ..      ..   ......,c;.....',,;colcc::;clllllloodxxkkOkO0OkkOkkk00OOkkkOOkxddoolllllcccoxxxxOOO0K0kxxxdddoodkdc::ccldl'...';c:.,do'.......              ..:cccoddxxkkkOOOOO00Okxkkxxxddxxdllooccddooolccc:,'....,'..''                                                                                                                           
                                     ......;lc;,,'',:cccc:;,,,,;;'. ...  ...............;;;,,'''',,;;::::,';llcccccc:::::;;,,'',,..                                                   ...............',;;;;::;',ccclllodxkxkOOOkkkkO0OkO00OOOxddkkOxoollcccccccldxdxkOOOkkxkkxdooolodl;;::'.''...';;;,............              .,cc:codddxxxxkkOOOkkkkkOOkxxdlllllccccllooodl;,:;......,'. ..                                                                                                                           
                                   .:c:ccc:;;;;:ccccllodxdc:;,,,'.          .          ..... ..,:::;,,,;;;;:llllooooolcccccccc:;,,'.....'...                                                    .  ........,cc:::cccllldkkkkkOOOOkkO0OkOKKOOkxddxkkdlclllllooooodddxkkkkkkkkkxooddoooc,'::;'.....''''...,,'.....'.             .;c:;:clooddxxkkO000OOOkOOOkxxdolllllllcc::loxo;,;:::c:'....,:,.                                                                                                                          
                                   .:c::cc::;:ccccclodkkkxdl:;,'..                            .....','..,;:ccllllllooolllllloool:::;,''...........                                                          ...,:::cllloxxxxkkOOOOkkkkkOOOOOOkxxxkxdlcccloooddddxxdxxxxxkkOOkxdooooodc'.;::;'...''..''..,,'.....'..         .  .;;,,:ccloddxkkOO00000OOkkkkxxddoooooolccccloxoc::cccc:,''..,c:.                                                                                                                          
                        ...',.     .:;,lOx:;;:::ccloddxxkdlc:;,......     ..,'.            ........';;;,',;:cccccccllloooolodddlcccccc::;;;:;;,'........                                                     ...,,;:cc:ldxxxkkkO000000OOOOOOOkxxxxxxdoooooooddxkOkdodxxxkkOOOOkkOkdool:;;;;,....'''''..';,..''.....';,.        ..'',clloxkkkkOOOOOO00Okkkkkkxdddddodkxc:looooollllllc:;;,,,;::;,,.                                                                                                                       
                          ...      .;;,;:c:;'...,coolllllc:cl:'.....................     ..........,:,.........,:c:::loollllodxo:clllodolccc:::;,''.......      .. ..                                       .....'',;;:clodxxkkO0OOOOOOOOOOOOkkxxxxxxxddollloxkkkdlldxxxxk00OOkkkxdooool:;,'.....................',,,...        ...,:coooooxOOOOOOOO0OxxkOOOkxdxxxollc::lodddooc;cxxocc:;;;::ldo:'.                                                                                                                      
                                   .;,....... ...''',,;clllod:.....................................,c,   .....'',;;;;;:::ccllllc::ccllooolcllc;;,,'...';:;,.....,;;:c,.                                    .......'',;::cloxxxkOOOkkkkOOOOOOkkkkkkkxxxdddoooodddxxddxxxxdxkOOkkxdddl;;ll::;,'...;,. ...''''...'',,;,....          .',:looodxOOkkOOOO00OkkkOkkxdxkxolccccloodddo:';odolc:;;;:::ccc;..                                                                                                                     
         .,.                                           ....... .......''''''''...............,;;'.  ..  ....'''''''',,,;:;,;:::cc;,,;:clcccloc,,,,,',,;;;,,''....'''''....                              ..      ...',;:::lodxxxxxxxkkkkOO00OkkkkOkkkxxddddooolclxkkkxxkkkkkkOkkxxddl;;ccc,........  ..''',,,,',,,,;,,'....        .',:loodxkkkkkOkxkO0OOkkkkxxdddolcccccllooool:',cllodl'.;::::::,....                                                                                                                   
          .                                             .       ....'',;ccccc:,,'',;;,....';;;;:l;......'''','.......'';::,,,;;clc;''';::ccll:'',;;;,;;,,,,,,'......'''''........                       ..      ...,,;;:clddxxxxkkkkkkkOOOOkkkOOOkkxxxxxxdddxkxkkkkxxkkkkkkOOOkkxxxocccl:,.          .....'',,,,,,;;;;;,,''...   .',;:clddxkkkkOOOOO0OOxddxkkxxdooodxxlclloooolc::cllldc..;ccc:::;'.....,'.                                                                                                              
                                                                 ..'',;cllcccc:::::cl:'..,:c:,';c:''''...'','...'''....;c:;,'..'::;,'',;::c:;'',;;;,,;::;,;;,,''''',,'......'''.... ..                 ....   ...,::;,',coddxxkkOO0OOkkOOkxkOOOOOkkxxxxddddxkxxxkkxxkkkkkkkkkkkxxxxdlcll:,'.            ....',:::;:cl:'';;;'..  .';;,;codkkkkkOO00KK0OOkxxkkkkxdoodxxxoloooooolcccllcccc::ccccccc:;,'.....                                                                                                               
                                                            ..    .,lc;;cccllc:okdlloc;;;:cccc:cc:;;:;,'.'',,'.....'..';::,'...',;,,''.........,:;,'',,;;,,,;;:::;,,,'.....','..........''.................';:;;,;::c::cloodxxxkOOkkkkkkOOOO00OOkkkkOkxxxddxxxxkkkdxO0kxkkkkkkkxoodolclc;,'..           .....';::::coc'.;:,.. ..',,,,;:lxkkkkkkO00K0OOkkkkkO0Okdoodddolodddddollllllllc:::::ccccc:;,'..,l:.                                                                                                              
                                                           ...     'lc;;:cllcclooolccccccoddllcccccclcc:,,,,;;,'...''',;;;,'''',;,,''..................,;,.';'.';;,....................';::,.....'',,'....'''''',;:::,.;loodxddddoodkkkkkkkkOOOkkkkkOOkxxdodkxodkkxxkkxxxkkkkkkxdddolcc:,',,'','..      ..''',;:ccclol;',''.........,;:codxxxxxkO000OOOkkkkkOOkxdddddolodddddoolllloolc;;;:cccccc::;'..,l:.                                                                                                              
                                                           ...     .;;;;:::;;;:coocc::cccloollllolclxxdooodddoc:;;;;;,,;:;,'''';c:,''......','.  ......';;,;;'...''..  .;'.,l:....'''..'::,'..',;,':l:..,;:clc;,',:cccclooodxxxxxddxOOxk00OOOOO0K0kkOOkkxxxkkxodkOxdxxxxkkkOOkkk0Oxocllc,'',;;:cl;.     ...',,,:llclol;'...,c:.... .';;:lodxxkxkO00000OOOkkO00kxxxdxdollodddddoollloooc,..;clllllc:;;;;;;'..:;. .                                                                                                        
                                                                    ........,'.,:cc:;;;:clllllcccccldddddoooooollcc::;,:lool:;''''';;,.....,;'. ...     ..............  .  .................,,,,,,,,;;,;:cclolc:::ccclloolcldxxxxxxxxxxk00OOOOOOOOOOOOkkkkkkkxddkkddxxkkkOOOOOkkkkxdoool:,,;:;....      ....''',:cccc:,''..''..... ..',:ddodkkkkO0000000OOkOOOkkxxxxxoccloodxxdoolcclol;..,coolccc::cloc;.....                                                                                                           
                                                                   .'..    .',,,;;,'''';clllolc::::looollllllllllllccccokOxdoooooc;;::cll:,,;;,'........'.. ....''.',.      .......'c;. .  'cc,',,,,,;::cccoxdc:::ccllooddoddddxxxxkxxdxkOOKK0kkkkOOOOOOOOOkkkkkkkkOOOkkOO00OOkkkkxxddolc::cl:..,'..:;. ....''''',,;;;;:ol,....'cl:'.';ldxxxkkkOO000000KXK0O00Okkxxxxdlccldxxxddkxooooo:..,lddcldddolllc;,,,,..                                                                                                          
                                                                   .,'...      .............',;;,,,;;;;:cclccccloollllooddoollloolcccccllc;;;;,,'''''.................             ...     ....''''',;cc:::clcc:cloooooooddddddxxkkkkxxxddxxxxxxkkOOkkkOOOOOkkkkkOOOOkkkOO000OxxkOOkxdolc;,'''.';'....  ............,;;::;'';'..::;'.':lodxxxxxkO0000000K000000Okxdddolllodxxxddddddoolc:;::cc:lddlccclll:,.......                                                                                                       
                                                                  ..''',,.      ..            .....''',,;:::::codol:;:clooodxdollcccllllllc;,,;:c:;;;;;;:::cc;......                         ......'',,,,,;cllccclooodol:cdxkxddxkkkxkkkkkkkkkkkkkkkkOOOOOOOOOkkOOOkxxkOOOOOOOOOOOkkxddl:;,'...''''.....''....',::;;;;;;'',;c:..'''..':loddxxxkOOOOOO000000000OOkkxxdooooodxkxdoooooollllc::cllooocclloddl,','.'c:.                                                                                                      
                                                      .    .......''.''''..                       ............',;:c:;;::cloooollllccccllloolc:::c::::ccc:,';:;'.''''...  .,'.         ...    .......'''....,:ccclodddddooodddddxxxxxkkkkkkkkkkkkkkkkOO00OOOOOkxxkOOOOOO0OOOOO0000kxxdddolc:;,,,,'............',,;:;;;;;,'';::,......';clddxxxkkOOOO0000000KK0Okxxk0Odoooooodddoooolllllllc::loooooccllodoc,,:;..'..                                                                                                      
                                                 .....',,,''',,,;;;;:::ll;....                              ......',,,;,,;;:::cool:;;:clclloolccccc::::;;;;::;;,,,,,;,........        ..,.   ......',;,,,,,;;:cllooodddddddxxxdxxxxxkkkxddxkkkxxxxkOOOOkxkkOOOOO00OOOO0000OOkkOOOOkkkkdooc::::;;;,.'::'.....,,,,,,,;;;:;,'',,''''...,;cldxxxxxkkOOO00000OO000OkkxxxxdooolloxOkdoloooollllc:cododxdlc:cloollccc:;,'...                                                                                                    
                                              .........,:cc::::::::ccc:cl;.....                                .......'''',,,,;;;;;,;:ccccccccccccccccllllol::::;;;,,;;;,.......    .. ..     .........';;;;:cllloooodxxddxxxxxxxxxxkkOkxxxxxxxxxkOOOOOkkkkkkkkO000OO0000KKK0kddkOOkkxdoolc:c:;::;...''..  ...',,,,,;:cc;,'.',,''..';cclooddxxxkOOOO00000OOOOOOOkkkxdollooodddooloxxdoolcccclllloollccllooddoool:,'...                                                                                                   
                                           ............':c:cccc:;;cool:;:,....      .                  .'.     .;'     ........,:;'.',;:cc:;;;:clccccc:,'',;;;:::;;;;;:cc;.....  ..,:,...    ...........',,;:ccllooodddddooxOkddddxxxxxkkkxxxxdooxkOkkkkkkxxkkkOOOOOOO0000KXXKOkOOkkkxdolcclol;;:;......    .....'',,;;:::;,,,,;:::cccclloddxxkkOO00000000O0000OOkkkxdlloddxkxdlllodddoc::cclccloollcclloooooool:;,,....                                                                                                 
                                        ..'''.'''.......';:ccll:;:ccc:;;;,'..                          .,..     .              ............';;,;;:c:;,''.'',;;;;;,.,::;;,'.......',;,'........''''''....,'.;llcclllodddddollllllllllllcokkxxxxdlloxkkkxkkxxxxxxkOkxxkO00000KKK00Okxxxxdolllllc;,,'......   .....',;;,;;::cc:;,,;cc;:ccclodxxkkOOO00K0000OO00000OOkkkxdoloddkOkollllloolc::c::::ccc:;,,,:odooddoooddc.....                                                                                                
                                        ......',;,,'.......,;;;;,;;;;;;::;'....                     ..........          .  .,.  ............,,''''',,'....';::;;;;::c::;,'.,llccc;,....,;;,,,,;;:;;,,,,;;;;lddlclccoxxdooooodoloxdooooodxxxxkxollldxkkkxxxxxxxxxkOkkkOOOOO000000OOkkkxdoollcc:;,''.... ........;ooc;;:cccccc:;;:ll;;ccclodxxkkOOOO00KKKK000000OOOkkOOkdooodxOkdllllllllc:::ccllodl::loooooooddodkkd:..'''.                                                                                               
                                            ...,;'.        .....'''',;;;;,''..........                  ....,.      .  ...      ..',,.     .,'..  .';,... ....',:,..........'',;:;.....',;;;;;;;;:::::::::cloollc:::loool:,:oolllllooooddollloooooodkkxddddxxxxxxkkOOkxkOOOO000OOOOOkxdoolc:cc;,'..... ......',:ol::clollllllcc:::;:lolodxxxkkOOOOkO0KKKKKKKK0OOOOkkkkxdddooooooddoooool::ccllllllccllollllloooodolc:;;,..                                                                                               
                                             .....             ....  ...'',,;,''................'.    ......'.     ... ...      ...,:,     .'..    .,'.       ..,.            ..'..,:,..'''',,;,,,,;;;;;;:clllcc::::cccccccllollccclllllollloolodddxxxddddddddxxxxkkOOkk0OOO000000OOOkkxxdlcllc,...,c:..''..',;:cc:lxxolllloddoooodddddxxxdxO000KK00KKK0KKKKKKKXXKOkkxddddox0Oooxxdooool::loddllllc:::clllcldxxkOkollc:,.....                                                                                            
                                               ...              .      .'...,;,'':lc'...,coc'..'.....':;......                                                                   ..... ......;c:,''''',;;;::::::::;;;::::::clodl:;::;;;:ccccccccc:;:cloooooddddxkkxxxxxkkkkkOOOOOOOOOOkxdolccc::,'..:;......,::cclloddooooooooooddddxxdxxxdxOOOO0000KKKKKKXXK000OOOOkxdolldxOkoooooooolc;;looolllllc:::cllccodddddollcc;..''.                                                                                            
                                               ..               .      ...',,,'',;;;;,';clc:;,,;;,...,;;''',;,........        ....    ...                       .                       ..  ..........'',,;;;;;::;,....'''''',,,,,,'',:ccccc:;::::;:llllllllllldkkollodxxxxkOkkkkOkOOOkxdollc:::l:..,,...'';:cclllooddoxOkdoddxxkxddxkkkkOOOO0O00000KKKKKKK00OOkxxkkkxdl:cdxkxdollodxdoc,;loolclddlc;:cloolloddxkxlcc::,....                                                                                             
                                                    .                  ...';:,..;;;;:;;;::::cc:;,'..',;:;,,,,;::c:;;;,,,''''....'.........                              .                        ......',,,,;,,,,'........''...';,,,;:cclllcccclc:;cooollc::::::cccloddddxxkOxodOOkkOOOkxdoooc'.,,'''',,,;::clooddddddxxdddxxkkOOkxxkOOOO0KK00000000KK000000OOkkkkkkxxdddxxkOkdooooooooc,,loolcclllllllooooooddxxdc:::;,'.....                                                                                           
                                                   .,.                 ....;cc:;;:::::::cccldoollllllccloddxxoc:ccllooddxoc::::::::::,..'............                  .,'      .          ...   ...'..;o:';oc.....;l:....',,,;;;::ccclllllccclllc:lddollllccccldolldxdxkOkkOOkOOOOOOOOkxdddxoc;;;;;:::clllllooxOOOOO000000OOOOOO000000000KK0000KK0KKKKK000000OO0OOkkkxk00kkOOdooooooooc,,collllooooodoodddddddddddddoc;,,,;:,.     .                                                                                    
                                                                        ...',;;;;coc,,:ccccllllllc:ccclllodxxo::looooooooooooollclolc;''...''''.',:;'.....              .                         ..  ..''..............',,,''',;:lllllooolllllcc::cllollooolccclccloddddddxkkOOkkOOOOOkdddddolc::;::ccclodddddxxxxk0K00K00OOOOOOOOO000000000000KKKKKKXXKKKK000000OkkkkkOkkkOkdoodddoodl;,clllooolccoollodoooddddoollcc;'.....                                                                                           
                                                                    ..   ....'',;cl;..,;;;::::cloc;;::;,,;loolloolc:::cccllooollcclll:'',,,;::::;;;,,,;cc;...                                          .........'.    ..,,,'..',;;:clllooolcccc:::cc:::cccc:::::ccclllllooddxxkxddxxxxxxddoooolcc:;:locclodxkkkkxxkOKXXNNX0kxxkO000OOOOOOOO00000KKKKKKKKKKK0K00KK0OkkkkkkkkkOkollloooooc'':lllllcccclooooooooolccc::;,'..  .'.                                                                                           
                                                                   ...........';cl:,..'',,'....;ll::c,.lMMMMX;::;,...',,;,,:lolllccloc;,;;;::::::;,''',,;;,'...         .               .            .......'''..      ..','...';,.;lc;;:::ccc:ccllcc;;:c:,''',;oxxxxo::loodddxxxdddddddxddooollc:;::cclodNMMMMKOkk0NMMMMNOOOOOO0000OOOOOOOO0000KK0KKK000OkO00OkkkkOOOkkkkkOKOocccclloooccclllccc::cooddoolllc;;;;;:c;...                                                                                                
                                                               .;,'..'',;:cloolool:'...'''.....'cc:;;,,dMMMMX,''',,,,;;::,.,clllol:clllllccccc::cccllc;:::;;cc:;,,'''. .:'. ...........';'         .',',,..':;.          .'....'::::cc::::ccllllollooolll:,:lollKMMMM0ccllooooddxxdddoodkOkkkxdollclxxdoodNMMMMK00O0WMMMMW000000000OOOO000000000KK0KXXK00000K0OkOOO0XKOxxxxOXOccxkollloooooooocloddxkxollllooolllc::::::;'                                                                                               
                                                            ...,:c:::::::clodddolc;;,'......'..':;...,;xMMMMK....,;;;:cc;'.':ccllc::c:;cllccl:',:::lol::::;;;;,,,,,,;'....................  .      ....';'. .            .......,,';olcccccloc,:lc,;lolool;:c:,:KMMMM0ccccclooodxxdddollodxxxxxddoodxxolodNMMMMKO0O0KNNNNK0000000OOOOO00K0kkO000000000000000K0OkOOOOOOkkkxxk0kccdxdooooooooddolc:;,cxxlcllooooollc:::;,..           ..                                                                                   
                                            ;lloo; .;lx;,,''',cdk0000OxoccloddookOkkkc.,ldkkkdl:;'....'dMMMMX;..'',;coxkOOOOkxoclcc:::cllllxOOkO0Oxdoc;,;;;;;;;ldkkOOkooo:'';'.'oxdool.;dxxkkl.....lk0OOkdc,'...,'     ,ldxOOkoc;'':doclk0OOOOlokOO000kddo:,,;xONMMMMXOOOOooddodxOOKXXK0OkxxxxxdddodkxolodNMMMMKOOO0NNXXXK000000OO0KXNNNNXK0000000000K0KK000KKKKKK00OOO0K0kxkkxxxddddddddooodoolc::cdxooooooddooolc:;;,..          .:;.                                                                                  
                                            kMMMMOkWMMM:....cKWMMMMMMMMMN0ollllcKMMMMKKMMMMMMMMNx,.....lMMMMX'...'xXMMMMMMMMMMMNkc,....'cOWMMMMMMMMMW0l,;'.'l0NMMMMMMMMMW0c''..,kMMMMN0WMMMMMMXl,xNMMMMMMMMNd'..... .dXMMMMMMMMMW0l;:ccckMMMMW0WMMMMMMMNkl::::NMMMMMMMMMMMxdxxdONMMMMMMMMMMNkdddddddxxoodxWMMMMKOOOONMMMMN0OOOO0XNMMMMMMMMMMWXOxkOOO0KKKKK0KXXKKKKK000OOOOkxxxxdddddxxxxdooolooollcclloooc;:dxdoolc::;,'......      ..                                                                                   
                                            kMMMMMMMWXK:,',0MMMMWKOO0XMMMMWx;;,,0MMMMMMN0kOKWMMMMNc,:,.lMMMMK....'oNMNKOkkk0MMMMMk:;,';0MMMMMNK00XWMMWk;;,'xWMMMWX0kk0WMMMMO'..,kMMMMMMWK0ONMMMMWMMW0OOXMMMMMO..'..oWMMMMKkkOKWMMMM0ccloOMMMMMMWXOk0WMMMM0::;;dxNMMMMXOOO0xxxxOMMMMNKKKXNWWOddoddxxxxxxxxkWMMMMKOOkkXMMMMN00KKKWMMMMWNXXNWMMMMW0OOkO000KKKKKXXKKKKKK00OOOkkOK0dodddddddddollllllllc::cloooodddoool:col;'',;cl;..'...''                                                                                   
                                            kMMMMMK:......0MMMMk,'''''oWMMMW;. .OMMMMMd',,,,;OMMMMWlc;.lMMMMX....',cl,'.....xMMMM0.;::KMMMM0:......:k:';:;xMMMM0;;l:'.,XMMMMo...oMMMMMk;:;',KMMMMMO:;,''xMMMMM;...oMMMMK:.....,KMMMMO;',xMMMMM0ddl;,dMMMMMc,,,,;KMMMMKdodddxkxKMMMMXOkxxxxxdoollllloooooodNMMMMX0OddXMMMMN00KKWMMMMKkkkkkOKMMMMW0kxk0000KK0000KK0KKKK0OkOOO00Ododdddoodddl::llllolcccloooooooooddoc;,,,,,''...  ......                                                                                   
                                            kMMMMX..;,.  ;MMMMW00000000WMMMMo  .OMMMMk .;;;'..KMMMMk::;dMMMMX,..',:xOKNNWWWWWMMMMX;;;dMMMMX,;'.';'  ..';:;NMMMMK0000OOOXMMMMO  .lMMMMX..;;;;xMMMMNccl:'.'WMMMM:  .KMMMMX00OOOOOXMMMMX:::xMMMMNoooooodWMMMMl:ddc:KMMMMKdddddxxxONMMMMMMWXKOddkxolllccccllodNMMMMK0OxdXMMMMXOO0XMMMMMNNNNNNNNMMMMMKOOOOOO0K0O0KKKKKKXXNKkkkkkkkkkkkkxollodoollll:lkxc:loodddollllodoc::;'''....  .;:;;,.                                                                                   
                                            kMMMMd       ;MMMMMMMMMMMMMMMMMMo   kMMMMo .;:::::0MMMMO;::xMMMMX,,,,xWMMMMWNNNNWMMMMX;;,dMMMM0:c;.... ..','.'NMMMMMMMMMMMMMMMMM0   cMMMMK .....lMMMMN:::,'.'NMMMM;  .XMMMMMMMMMMMMMMMMMX,,;dMMMMN:coc'';NMMMMo:llccKMMMM0oddoodkkddOKNWMMMMMMMXOxoooc'';c:ldoNMMMM0xxdxXMMMMXxxkKMMMMMMMMMMMMMMMMMMKOOOOOkO00O0KKOO0KKKX0kxkxdxkxdddxxdllddo:,,cc:;:::cloooolccc:,,:c:::,.';,.    .:;.     .                                                                                
                                            kMMMMo       .NMMMW:.......'''''.   kMMMMX..;::loxWMMMMkccckMMMMNcccoWMMMMk:;;;;kMMMMX,'.;WMMMWxcc::;,.,o,....OMMMMxcc:cc;''''''.   lMMMMK      cMMMMX'''..':WMMMM:.  kMMMMx,;;,,,,;;;;:;'''oMMMMN;:lc;',NMMMMo;::::KMMMM0odxxookkxddddxkOKWMMMMNxdolcccc;,:olXMMMM0xxdxXMMMMNOOO0MMMMW0KKOkkkOOOOOOOkkkOOkOO00KKK00000KXKkkkkkOOkxdddoooodoolccllllolcclooolccclc:lkkocc;',c:'..  .;;.    .,'.         .                                                                    
                                            kMMMMo        :WMMMNd;...,l0O,      kMMMMMNxlodkKWMMMM0lcllkMMMMNllloWMMMM0olodOWMMMMX'...dWMMMMXkoodx0WMXl...;XMMMWOl,'',ckKl......lMMMMK.     cMMMMX'.....'WMMMMc.. .KMMMMOc,'',ckXo.',,''lMMMMX,;llcclNMMMMl,:;;;OMMMMWOxOKkldx0WX0kxddd0MMMMKc;;;:cl:,..''XMMMMkodddXMMMMNOOOkKMMMMWKOkkkOKNXxlodxxxxkkkO000K0OO00000OkkkkkOOOxddddooooolcllllloooc:cclooc;;cllllllcc;'''',''..                                                                                          
                                            kMMMMo         'OMMMMMMMMMMMMWc     kMMMMNWMMMMMMMMMWklllllkMMMMNlllokWMMMMMMMMMWMMMMNlccllxXMMMMMMMMMMMMW0c;;,;kWMMMMMMMMMMMMO,;,..oMMMMK...   lMMMMX,'...';WMMMMl''. .dNMMMMMMMMMMMM0::;,,oMMMMN::cccodWMMMMo;cccldXMMMMMMMMM0x0WMMMMMWWWMMMMNxoc:::::::;;;:NMMMMklodxXMMMMXOOOOO0NMMMMMMMMMMMMWklooodxxdxkO0000O0KK0000OOkkkOOOxxdddddddl::lllllllll:;:looollcccccccc::,'...,c:..  ....      ....                                                                         
                                            dNNNNl           .lkKNWMWNKkc.      kMMMMd;xXWMMWN0kollcccckWWWWXc:cccoOKNWMMWN0kNWWWXxxxxxxdxOXNWMMMWNXOdlccclc:cd0XWMMMWNKxc'''''.lNNNN0'''...lNNNNKc;...':XNNNN:...  ..ckXNWMMWNKko:;;;,;dNNNNXclc:;:cXNNNWxlooolllxKNWMMWX0kkOO0KXNWMMMWNKkocccccccccc:::cXWWWWOddkkXWWWWXOOkxddk0XNWWMMMWNXOxooooodxxdxkOO0000KKK000000O0KKKOkxddddddxdllooolllllllooooodkxdlcclllccc::;,''''.....';'.                                                                                  
                                                                  ...           kMMMMd..'',,'';:cc::;;;;;;::cccccccc::clollllc:cclooddoolllooooddooodolccccloc:;;:cloc;;;;,,,,'...'...,cl,...'''''..  .,l:.......  .;'.'c;':ll:,''':lc,',,,;::::cccccccclllooolllc::codddolokkxddddx0Oxoc:;,'',;::;;,;;;:cclllooddxxkkkOOOkxxdodkOxxddxdoooooooodddxxxxxkkkOOO0KXK0OO0OO000KX0dooodxdddoolllllloddoooooooooddo::llllllccl:,.....,;,;:,.                                                                                  
                                                                                kMMMMo     ......','............''',,..,cc;;;;;cllccc::ccc:::;;cddool;';c;.,ooc:;;;:::::c,.,::,'''''........'''',''..   .......    ...  ...;c;.....,l:..''';cc;,,,,;ccc:;,'cdl,,cl::loollcccccclooolllcc:,.....,c:'.'...:c;;;;;:cc:okOdddddxkxolloooooooolcc:;,;::::;;;cdxxxkkOOOOOkxxxkOOkOX0ocodddddoool:::ccllllloooool::::::c;,:dl'.',..'..':;....     ...                                                                           
                                                                                kMMMMo   ..',.         ............,c;.':ccccllccc:clc;cdl;:l:;cdolc:,',:,.;ll::;;;;;;;;,..':;',;:::c:;,'',;;;;::,';l;.   ..,'.   .'c,    ..',''...,c;..'..'::;,'',;:c:;'';coolllccclllc::clddooollldoc::,..:c::;;;;:,..;:;:odollccokOxxxdodkxolddllllclol:;;;::lc,...,:lodxxkkO0000000OOOO0X0xodxxxxddooooodolc:::cloooolccodoool;:do;,c;.'cc.'c;..cc.    .:;.                                                                          
                                                                                ':::c,  ..''.. ..          ...     ..............,;;,,,;;;,;;;;,...';;''...',;;;;,,,,,',,......';:::::::;;,;::;::,.;l;.........   ....    ..''......''',,'..';c:;,,,;::::::cccccl:',cllllllll:;;clcc:;;;;,..::'.,,,,,'..::;:odoollodOOkkkxdoollodl,,cc:;;;;;,'......''',:lodxxkOO0000000OOOOOkkxxxxxxxdollllollllc:cloooolc::::::::cc:::;,..........'''..  ...                                                                           
                                                                              .....':;,..,;'...,c,       ....              .''..  ....,,''''''.....';;'......... ...''';:,..,,'',;;;;,,:l:',;:;;;;::c;..'''..    .....   .......''....',;;,'.';;;::::;::ccccccclllllllclddlccc:cc:::::;,,',,,,,,,,,'',;:cloddxddoodkOOkk00xolclllcccc:;,'''''......,::'';clodxkkOOO0000000000OOkxxxxxxdo::ccclloddlcloooollllllllllooolc;;;'..',,;;;;,'....','.                                                                          
                                                            .           ..'',,''...':ccccc:,...;:'       .'..              ...'.     .,,'...  ................  ......... ..,,''',,;,'..''';::;;;:c:;,',,,,......';;,''.........'''','''''',,,;;:cllcc:::::cllllooddollllllllccc:;,,::;,'';:;;::;,,'';clloxxxxkkkkkkOOkxxxxxdddoclooc;;,,'....''''';:;.';clodxxkkOO00000000000OOkkxxxddooooddollddllooollllloooolooooollooo:..,;,,;:c:'.',::;'.... ...                                                                   
                                                           .,.      .  .;::ll;..,,;;;::::::,...',.            ...                      ..   ..........    ...  .;,.................'','','';:;,,,,,,,'..  ..............;,.....'',;cl:'...',:;;;;::coooddlcoOkoloollllllllllol:::::::;;,'',:::;;,'''',:ccloodxkkkkkOOOOkkkkkkxdolcc:;,',,;;cl:'.,;;;;;;;;:loodxkkOOOOOOOO00000OOOkkxxddoolldkxlcooloxdoodolcooooooooddlc::;'...'',,;c:',ll:,,,,,,...c:.                                                                  
                                                                    ...':;.......';::::::::,......            .                                     .                     .          ..',,'''''','......    .......    .,'......',::;,'....,;;,,,,,:loddolllllcodo:;:ccllc;:ol:,;;;,,'''',;:c:....'',;;:::cldxkkOOOOOOOOOxoooooool:;;'..,:::c;..,,'';:,,,;cllodxkkkkkkOO0000000OOkkxxxdolclllccllllllllodolclooooc;;:cc::;,''......';,.,cc,',:c:,...,'.                                                                  
                                                                      .':;..'... ..',,;:::,''',:c,    .....                    ...                 ...                                .';,.....''''...',,..........    .'......''''''......';;;,'',:cllllcclooloxdc;;:cllllodl;,,,,,,,,,,,;:l;....,;:cloooddxxkOOOOOOOOOOkdoollllc:;;:::::;;:::;;;;;:;;,;;:cllodxxkOOkkOKKKKK000OkkkOkxocclodolcllloddooddddddoollllllcodl,.,,,....'',,;;;,,;:::,''''.                                                                   
                                                        ..            ......''..  ..,'.........,:,....'......   ......    ........   . ..       ....'.          .                      ... ....',,'.....;,..'.....     .........'''','.'''..';::;,,,::ccccccloooolcc:::ldl;,,,,'''''',,,''.,c:..';;:coxkxdddxkkOOOOOOkkkkkdolc:;;::ccc:::;,;cllcc;.';;;;;;;:cllodxkkOOkO0K00KK0Okkkkkxddoooddollllooddooooodddollllloolodc'.,::;'..'''''''',;:c:,'....                                                                   
                                                        .              .'...'..    .''''.... ...',,;:,.............';'............ .,;,;:'    ..,...,.         .:'                     .,. .',,;;;'... .','''''''.      .......';,.;c;..,,'''',:l:,,;:clc::lxxdoooc::::ldo:,,,......'''....,:cc::;',clodxxxkkkOOOOOO0OkOK0dlllc::;:ldo::llllllcccc::::;;;;;::clodxxkOOkO0000XX0Oxxxxxxddoooodddoooloddooooooooooooddxdlcllc::;;,'.......'',;::;,'..'ll'.                                                                 
                                                                           ...         .........',,,,'..,;:;;,.....';,.........',...,,.''...........'.. .       .           .       .      .;,........     .;,...       ...... .'...........''.,::,,;:clc:;;;,,:ooc:::::cc:;;,...........',;;::;;,.,clclxxxxkOOOOxodkOkk0kllol;,;;;;;::cllccll::ccc:c::::::::clodxxkkkkkO00000OOxxdxxxkxollllooooooooc,:oxdoooooooooolcclcc::;,''.......',;::;''....;:'.                                                                 
                                                                                        ...''''',,,'',;:ccclllc:::;;;;;;;::clc:;;;;;;,,''';;::::c:;''',;:,..........       .;;..   .,'.   ..,,''.',:l;.....':,.   ...'',;;;;;'..'..':;'''...,,,,,,,;;::ccccccclloooddl:cxx:;:::clc,,,,.....',,;;;;:cloodxkkkkOOOOOOkkkkkOkdooc:lxx:;:cccllllol:coollccc:::clllloxxxk00kkO000KKOxddxkxxxdlclllooodddollldxxdxkkdooooolllllllcc;,''...;;,,,,;;;;,,..'',''......                                                            
                                                                                        .'::;;;,,'',;:llllllollccccccccccccllollc;',;::;;cdocccllllcccclc;,,;:::::::;,'.....,,'............',;;,'',,,'..'..',.   ..''...'''''...,'.'::,''...,,.....',;:cllooooooooooolc::::;;;;;;;,;;,......,;;;:clooddxxkOOOO000KK0OkkOOkxdolllcc:::cclloloolccloollodl:cddlcldkkkxxxkkOO0KXKOxkO00kxdoclxkxddddddollddxxddxxddodxxdoooooolc;,,,,',:c:;,,,,,;c:,',,,,'''.........                                                       
                                                                                          ....,;,..';:ccccllolc:::::cc::;;:clllol:,:ooccccllllcllllloolcccccc::clc:::;,;cc:;;,,''',,;;;:::cccc:,....'.',;,'...  ...,:,.....''. .,. .;;,,,'''...'''...';:ccloddddoollllc::::;'''',,,;;'..:c::c:,;llclxkxxxkkOO000KK0Okkkkkxdooollcc::::cldxdoollllllllool:::cccodxkkkOOOOOO0KXKOkkkxxddoocclodddddddooodxxxddxxddddddoooooool:;,:oc..;:;,,,;;,,,'''',;;,..........                                                        
                                                                                          ...',;,'.':c:;,;ccc:;;;;;;:::;;,',;::cc:;:clllllllolc:::ccc:;;;,;:cc:::;;;;;;;,,,;:;;,,,;;;,,;:clc:::,.....''''''...  ............        ..'',,,'....,,..',,,,'':oolcccclllc:::c:,',,,,,,'..';,...',;:::codddxkkkOOOOOkkkkxdddddooollc:c::ccllodollllllloooooodxxxddxkOOOOOOOOO0KXK0kkxoooooolccldxddooooloxkkxxdddddddooolllollll:,'.........';;;,..''',,,,'.                                                                
                                                                                       ......'',::cllc:'.';:;;,'''''''',,'..,,;;::::::::cccccc:;;;;::;,''..,::;;,,,,,,'''..;lc:;;;;;;;;;;;;,,,,'..'''...''...           ....             ......',,,,,'''...,;;,,',:ccc::;::;,''',,;;'.',,,,;;;::ccccodddxxkkOOOOkkkkkkddoooolc:;,;clccllc:cccllllllooddoooodkkxkO0OOOOO00KKXNKkdxxxxxxdollloddooddolloxkkxddddxxddolccllllloo:..............',''''',;,..                                                                 
                                                                            ..         .,,',,,,;:cclolc::;;;,...........''.',,';:cc:;;;;,,;:::,,,;;;;,'',..,lc;''.',;,..'..':c:;;;::c:;,'',;;;,;::;,,..';,....  .       ...... .....    .......','.','..',''...',;;:::::::;:c:'',;;;;;;;;;;::ccccccldxxxxxkkO00OkkkOOkxdolclol;;clllllooooollloodoooxxddollokOkkOOOOOOO00KKXNKxdxxxxxxdolllodc,:xkolodkOkxddxkkkxdlllooooddoc,.......,cc,..',,''......                                                                   
                                                                           .,'....    ..;::cllcccllllc:cc:;,'.     .....',,;:,.,cc:;,,,;:;,cdl,',;;,'',:o:.,l:'...,:l;..'..';;',;;:clc:;::ccl:;lxo;,;;;;;::cc,..'.  .   .....  .,'.    .,,''''.....'c;.'cc:::::;;;;;:::clc:cdo;,cc:;;;;;;:;:ccclooooxkkkkOO000OOOOOOOOkOOkllooddxdlclloodollllodxxdxOOxxOOOOOOOOOOO000OO0KKXXXKK0Okkkxdl;;coolclxkdoddxxkkkOOOxxxdldkkdoxxolc:cll:...'',;;;;;,'....',..                                                                  
                                                                           ............';::ccc::clol:;;,,,',,.      ..   ...,'..',;;'...,,''''',,,,'.',''.......'',,,...'...;'..';;;;;::cccllcc::;,,,'.';;,''...    .           .                      .........'',;;,,;cl:;;;;:::;;:;;;;;:;;:clooodxkkkkO00OOOOOOOOOkxxkxolllcclllccccc:::coodddddxOOkxkkkkOO00OOOOOOO0KKKXXKK0Okkkkxdl:;cooolllooddddddxxkxdodxxdooooodoolllcll:.... .;;'...........            .                                                      
                                                                           ..'.........':ccllc:;;;'...''''';;'.    .;'.   ..''.....',,''...'''',,;,'............''........ .,,''',,;;::ccccllllcc:;'...'''......               ...          .   ..     .',''''....';:;',:c:;;;;::cc::;;;;;;;,,cloodxxkkkkO00OOO0K00OOkxxxxdolcclodollllloodxkxxddxkO0OOkkOOOOO000O00000KKKXXKK0Okxkkkxdoc:clllllooooooooloodxxddxxdoooodxdllllccl:'... .;;...'..........   .   ...                                                       
                                                                           .'''',,'.   .';cc:;,;c,...';,,''''... ..................';:;,'..'''',;;,..  ... ...........'... ...',,'',::cccclllllllll,..','..''.                  ..              ........',;'....''',;,'''',;;;;;:cllc;'.,;:clloddxxxkkkOOO00OO0000OOkkxxddddoolloooooodddxxxkkxkkOO0000O000K00KKKKKKKKKKKXXXXXKOkkkkxxddlcccclllllllllloolloxxxddddooodddollllccc:,'...........',:c;'','.  .   ....                                                      
                                                                           ...''...     ..,,,'',:,. ..''''...........',,,.....';;'..;:;,'..,;,',;;'....,;'.':;.................',..';::cllllclllllc,.';;,,'''.                 ..               ..........'.....''';cc:;,,;:cccc:clllcc:;:codxddxxkkOOOOOOOOOO0000OOkkxxddddkkkkkkxxxxxxkkkkOOO00OO0XX000KKKKKKKKKKKKKKKKKXXNX0Okkkxddxxolloxdlllllloooooodddxxxddddooooooooolcc:;,'.... .','...,,'.....       ....                                                      
                                                                             ....         ......    ....'...''..'''',;c:,'.';::::,.,::;;;;,,;,';::,,;;,;:;',:;'.''''..............',;:clooolcclolc::::::;'..'.....            ....               ....   ........'',,,;;;;;:cllllloddolllllloddddxxkkOOOO00OO00KK00OOkkkkxxddxkkkOOOOOOOOOOOOOOOO00000000KXXKKKKKKKKKKKXXXXXXXK0kkkkkkkkxoooooollllloddddddddddxxxxkkxddooooooolcc:,''.'...,,..............     ...                                                       
                                                                                           ....  ........',;:;,:dolc:cc::clodoccccccc:;coolccccccclool:::::::;,'',,;:,.....'',,;:codddddxxxollllllcc:;,,'..,l;..;'.          .......                     .......,,'',,,;::;:oollodoolllllllodxxxxxxkOOO0K0O0XX0000OOOOOOOOOOkkkOOOO0000OOOOO000KXXXKK0O0XXXXXKKKKKKKKKKKXXXXXK0OOOkOOkdoooolllloddloxkxxxxddodxkxxdxxkxdddoddddolcccl:..........  .....''..                                         .                    
                                                                                                 .'.   .''';:::cllllllclollllllllc:::::looollllllcloolc:::ccl:;;;::::;',;,';:c:clllodddxOOkxdollllccc;..........:,...  ...      ...... ..   ..             ....';;'';,'';:;:ol,;odolloooolclxkkkkkxxkOOOOOO0XXOkOOOOOOOOOOOO00OkkkkOKK0O0000000KXXXKK0O0XXK0KKKKKKKKK0OOKXKKXXK00OOOOkollooool:cddololloxxdodxxkxdooxkxxddooodxdoc:cdl..........   ...      .           ..                                               
                                                                                                       .''';llcc:::lolcodocclllllc:lxxoolcclllloolloxo::lccldl::cc:oxl,:oc,:doclxxdddddkOOxdddxkkdc:c,.',...,. .,,',;. .:,        .....',. .,.      .. ..   ....,;,,,'.'loollllodocldddddolokOkOKKOkkOO0000KXXKKK0OO0000000KNXOk0KKKK0OOKXKKK00KKKXXKKKXXXXXKKKKXK000KKKKKKKXKKK00OOOkdoooddol:coollooddddddddxxxxxxxxddddddddoooc;cxo'.',,,;,..   .;,.     ..         .,,.                                              
                                                                                                       .''',;:c:;;;;;:::::::c::::::ldolcc::clllooolc::;;::::c::::cc::;;;;;,;::clooddxxxxxxddoooollcc:;',,'..'.                       .....             ...     .''.....';::::::lddc:looodddxkOkkkOOOOO0000KKKKKKK0OO000KKKKXNX0O0KKKK0O0KKKKKK00KKKKK000KKXXKKOOO00000KKKKKKKKKKK0OO00xdoddddoc::cclloddddddxxddddddddoooodxxxdool:coc'..'........  .                   .                                                
                                                                                                        ...,;,,,,,,',;::;;;;;;;,,,;:cc:;;;::::cclc:,'',,,,;:cc;;;::::;,',,,;:ccloodxxxkkkxxxdoolc:::;,',,,'...                         ..      ..      .,.     .''.....,;;;;:;,:ddlccllooddxkkkkkkOOOOOOOO0KKK0KK0OO000KKKKXXXXKKKKKKKKKKKKKKK000KKKK000000KKKK00000000KKKKKKKKKK0OO00kdollool::clllllooooddxdddddoodddolloxOOxdolccc::;,'......                                                                         
                                                                                                           '::'',''',;:;,'..'','''',,''.....''...',,,,'...,,,,,,;;;:::;,;,';ccclddddxkkkkkkxxolooc;;;,',;. ...                          ..    ...      .;'....    .....,::,;c:,,lolllllloddxxkOOOOOOO0OO00KKKK00KK00000000O0XXKKKKKKXXKKKKKKKK00KKKK0000K000000000000KKKK00KK00000Okkkxddolldo::clloooooddoodxddddddddddooloxxxdoc,,;;;;;'..''..   ...                  ..   ..                                          
                                                                                                           'lc;,',,,,'......',,,............,,.....','......''''',,;;::cc;.,ccclddddxxkkkxxxdoldOxc::,.',. .:,  .                                ...   .'...;,.    ..'',:c::ccccccloddolodxxxkkO00O0XX000KKKXXK0KK00XKO0XX00KKKKKK0KXNXKKKKKKK0KXXKK000KXXK00O00KK0000000KKKKK0000OOkkkkxdddxdlllloodoldOkodOOxdkkxddddddddddddddddxko;,;,..,,..   .,'.             ....'.                 ..                            
                                                                                                         ..;o:...,;;;.  .....','.       .    .......   .,'........'.......',;:clloodxxkxxxdddolclll:,.....  .           .                       ..              .  .',,',,',,;cclloodoodxkkkkkO000kOKXK0000000000000OO00000KKKKKKKK0KKKKKKK0000000000000KK00OOOO0000000000KKK000OOOOkO0Oxxxdddooddddoolooooodddxkxxxxxkkxxddxxddddllol;,,'..,'..                                                                         
                                                                                              .      ....';ll:....',;.. .              ...     ....    .,'...... .;;'. ..''',;:cllcoxxxxdddoollccc:,.....              .,.              .      .,'.            .'...'''''',,,,:loolodddxOOkxkkOO00O0KXKK000000000000000000KKKK00XXK00KKKK0OO00000000000KKK00OkkkOOOOO00000KKK000Okkkkkkkxxxddddxxdodxdooodddoodxxxkkxxxxxxdxkkddddoool::;;,,,,'.                                                                         
                                                                                             .'.  ...','.,cc:;''''.,;'.                ...                 ....  .:;.. ....',,,:olclddddddoolcc::;,'....                                        .... ...'...    ..  .....';:;;:col;:dkxkkkxkkOO00000KKKK00KKKKKKKK000000KKKKKKO0KXKK0KK00OxkO000000000KKK0000OxxkOOOO00000KKKKK0OO000OOkxxxxxxxxkd::odooooddxxxddkOOkddddddddddddddoolcc:;,,',,.                            ..                                           
....                                                                                        ......',,;;,'''',,,;;,.,:'.           ...   ...  ...    ..     .:,....'........';;;cloooodddooolc:;;,'....                                           ...  .','....    .......,:c;;;:loodxkkO000000000OOOKKK00KKK0000KK00OO0KKKKKKXXXXKKK00K00000000OOOO000KKK0KKK00OOOOOOOOO000KXXK0000000OkxxxxxxxxxxxdoolllodxkkxddxX0xdolooddxxdddooolcck0;cX;..         ..             ... .,'.                                          
..                                                                                    .   .....';:::::c:,,,,',;:;,',;.             ...       .''...        .......,'.. .....',:clllllllllllc;'..'.  ..                                  ..      ........'.....  ..,,,,,,;:cc:;,;codxxkOOOOOO00KK0OO0KXKKKKKKKK000000000KKKKKKKKKKKKKKKXK0000K00OOO000KKK00KKK000OOOOOkxkO00000000000000OkkkkkxddxxdoolllooddddddxxK0kOOk0KOdooodx000Ol:OK,cM:..  .cddd' .lddo,  oco;.xcoxd. .:doo;  dco,.looc                            
.                                                                                         .....';;,....'''''',::;,,,'.   ...'..    ...       ...'..         ......       ..'';:cccl:;,;;;,,''.....  .                                  .'.      .............  ..''..';::::::ccllodxxxkkkkkO000000KKXXKKKKKKKKK000000KKKKKKKKKKKXKKKKKKKKK0KKK000KKKKK0000KKK0OkOOOOOOkkO0KKKKK0O000000OOkkkOkxddddxkxlloddoooodxxWKkXWOxOMkoodxOKOOWOcOK,lMl'. .Kk'....Xo. 'X: KO. ,Ml..0k.xXc,cNc.XO. ,Xd:'                            
                                                                                  .    ....    .....''.',,'..,cc;,,,,'.....','..,,'.............''.....................',,,;cclcccclcccc:,.......                                                  ..''''.     ......':cc:;;:cloodxxxxkkkkkO0K00000KXKOOKXKKK000000000KKKKKKXKKKXXKKKKKKKKKKK0000KKKKK00KKKK0kddkOOOkkkkO0KXXKKKKKK0000OOkkkkxxxxxdk0OolddddddddddN0xXNxxkWOxxkOWXkkN0cOX;lMl,'.,X0:.,'.Xx'.,X: Kl  'M;..k0.xXoldd'.Xc  ';;dW,                           
                                                                                       .:,     ....'cc:::,...':;,,,,;;;;;'.;l;.,lc,...'''..,:,.,cc:;;,,,''.,:,.,cc::;,,cdl::lllccccllc::c;...                                                 ...  .;;,''.. ....'....'',:cccclloodxxxkkkkkOO0K00000KXNXXXXK000000000000KKKKKXK00KXKKKKKKXXKKKK00KK00KKKKKKKK0000000OkkO00KKKXXKKXXK0000OOkkkkxxxkkdxOOdodddddooood0OxO0ddxKkxxxx0XKXN0lox:lO:;:cc:lddl'.cddol. .l;  .d..,oo..:dxOd. l'  'loo:                            
                                                                                                .. ...........,,''',;,',,,,',''''',,,,,,''.....';::::::;,,',;,',;::cc::lol::clccccc:;,';c;..                                                  ...  .:,.    ...,;:,..',.';cccllloddxxxxkOOOOOO000000KXXKK000000OOOO000000K000000000000KKKKKK000000OkxkOOO0000000000000000KKKKKKKKKKKK000Okkkkxxxxkxooddddddooolccodddddddxxxxxddxkkxk0kl:::;,'''..       ..             ..........                                        
                                                                                                .................'',;,';ll:;,'';::,,,,;::,...',,;;;;;;;;;,,,;;;;;;:lol:cloooolclolc;'',:c,.                                                  ....  .:'     ...',:,..;:;;::cloooodxxxddxkOOOOOOO0000KKKK00000OOOOOOOO00000000KK00XXKKK00KKKK0OO00000OOOOOOO0000000K00OO00KKKKXXXKKKKK00OkxxkkkxxxxdlldddxkxdodlcldxxxxxdxxkxxkkkkkkkO0koc:;,'....    .  .,'.             ...                 .                            
                                                                                                  ......  ..... .....'',;:c:;,,:cc;,'.......',;;;;;,'',;;;;;;;;;;;codocclooddollolc::'.                                                   ........        ..,'......,;,,:ccloooddxxxxxxkO0000OO00KKKKK000000OOOOOOkOO0000kxkKX0000KKK0000KKK000KK0000OOOOO000OO0KK000000KKKXXXXXXXXK0OOOkkkkkkkkxdooddxddddddolldddxxxxxxdoooddxxddxxxolc;'','........  ..              .                       ..                       
                                                                                                           .'.    .',,,,,,,''',;:;,'.......',,,,;;,,;;;;;;;;;;;;:;;ldo:cododddddolccc;...                                                    .,'.......   ..''..''..',,;:::lodddxxkkkkkOO0000000KKKKKKK0000000O000OOOOOOOOkOKKK0000000KK00000000000000000OOOOO00KK000000KKXXXXXXXXK0OOO0OOOOOkxxxxxdddddooodddooddodxxxddoooooodxxdxOkdlcc:cc;..:;......'..         .....                      .'.                       
                                                                                                           .......',::;;;,..'...........,'..'..,:,..,;;;,;;;;;;::;,cdoclxxddxkkxxoccl:'...                                                 ..',,'...................',,,:::cdxddkkOOOOOOOO00KKK0000KKK00KK00000000000OOOOOO0KXK000000KXXXXKKK000KK0000KKKK000000KK00K000KXXNNXKKKKK0000000O0KOooxkxxxxxxxdooxxdddoloxkkxddooooooodxkkxdollccc;.........''.      ..  ......      ...         ..                           
...   ..                                                                                            .......,cc:::::cc:;::'.,l:......  .':;.....,:;..',,,,,;;:;;,;,,:odddxxkkOkxxxo:co:....                                          .      .',,,;'.....'''',;'..,,.,ol,,:ccoxxodk00000OOOO0KNX00000KXX00KK000K000000KK000OO0KX00000000KKXXKKK000KXXXXXXXXXXXXXK0KKKKXK00KXXNNXK0KKKK00000OO00OxxxxxxxxxkkxoodxdddddxkkxxkkkOOOOOkOO00Oxdddlcc:;,'...:c;coc.    .;,. ......     .''....     .''                           
......''..      .. ...                                                                                 .;,.....';,,:ll::;'.....',.      .. ........''''''..,c,....';coddxkkkkxdddc;ldc.                                             ..     ...',,'..',;::;,........,cc,,:cloxdodkOO00OOO00KKXKOO0K00KK000OO0000000000000OOOO000000000000XXKKKK000000KKKKKKKKKKKKK000KK00KKKXNNK00KKKK00OOOOO0Okxkxxxxdlloooooddddoodkdccdxxkkkkxxxxxxxxddlc:;:::c,.'c:.'ol.                       ....      ..                           
',,,;,.....        ':,.                                                                             ...':;'..''',,;cllloo;..''',;.           ............. .;,.,c;',:loxkkxxxxxxdl:ldl'.    .               .......''.                      ........,;;co:.........'::',clloxxddkOkOOO00KK0000OO0000XK0O00O0000000000000OkkO000000000KKKXKKKKKKKKK0KKXKKK000000KKXKXXX0000KXNX0O0KKKK0OkkkkOOkxxkkxdooloxxdolloooodxkdllodxxkkkxdolx00dolc:colc::,.'lc.'lc.                                     ..                       
   .;,.......      .;'.                                                                            .''.,:;'',,,,,;:;,.....  .  .,'.... ...        ....     .',';c;';cooxkkxxxxxkkdl::::;'.  ..             ..''''..,:'                     .........''.......,;:;'',::,;lolokkxxkkxkOO000Okk000OOOO0K0xxOOkOKXK000OO0K000OkkkkkO0000KKKKKKKKKKKXXK00KXXKKK000OO0KKKKXK000KKXXK0O0KKKK0kkkkkxxxxkkxooooooooooddooolclxxdoddddxxkkkdco00dlllcldo;'...;dl'....     ..  ..                  ..      ..                       
.  .,,.....        .'.                                                                            ..,'.,;,.',,,,,;;'..';:,..'. .,;,:c'.'l:.........,;' ....'',;:cclooodxkOkkxxkOOxolllcoo;. .          .'..,llcll;.':,.                ..........'';cc:;,;;;,,,,,;:::;,:odlokkxkkOOOO0000OO0KK00000000000000XXKK0000KKKKXKOkOOO00000KKKKKKKKXXXXXXXXXXXXXXXXXK00KKKKXXXXXXXXXXKKKKKKKKOkOOOOkkkkkxdkOkooddodkxodOxllxkkkkkddxxxkOxloO0xddooooool::cll:..;:;'.. .:;..;;.                .'.      ..                       
   .''.....                                                                                       .....''.......'''..';;,'.....,:,.,:;..'''',;::,'.';'..,,,,:::ccloodddxkOOOkkkOkxoooc'...             ..',:olccc;.....                .',,,''',;;;;;;;;;;;,,,;;::::::;cooookkkkOOOO000000O0XXK000000000000KKKXKK000000KKK0OO0000000KKKKK00KXXXXXK000K0KXXXXKKKKKK0KXXXXXXXXXXXKKK00KK0OOO00OOkkkxxddoooddoooodolccokkxddddxxkxxxdodOOkxdollloolc::;,'.';:;'.                               ..                           
    ....                                                                                             ...................'..,cc::;,.,:c:;,,;;::::cc:::::::;;cddolcloddxxkOOkOOOOOkkxxdl:'...            ..',col:::;,,,'..               .,,,''.';clllllcc:;;coooooolllloodddxkkxk0K0000000000XK000KKKK0OOOOO0KKKK0000000000000000KKKKKK00000KKKXXXXXXXK0KXXXKKKKKKKKKXXXKKKKXNNXKKK00KK00OOOOOOkkxxxxdddxxxdolooddoldkkxdoddxxxxdddodxxddddodxdlcc:;''..;lc'.    .       ..                              ..               
                                                                                                             ..............';;'',,'.'''',,;;::::cc:cc;';llcloddoooddxkkO0kdxOOOOkkxdolc;,,'.           ..',;;;;;;;;;,,'..              .,,'....,:cllooollcccoolloooooddxxxxxkkkO0K000000000000000KKKXKOOOkkOKK000000000000000000KKKKXKOO0000000KXXXXKKKKXXXKKKKKXKKKKKKKKK0KXXKKKK000000OOOOOOkkkxxxxddooooodddddddoooddddddddddddoolloddl;,:::::;'....'....    ..                          .