..                                                                                                                                                                                                          
                                                                                               .,.                                                                                                                                                                                                          
                                                                                              .,.                                                                                                                                                                                                           
                                                                                             .''.                                                                                                                                                                                                           
                                                                                             .''                                                                                                                                                                                                            
                                                                                             ''.                                                                                                                                                                                                            
                                                                                            .''.                                                                                                                                                                                                            
                                                                                           .,''                                                                                                                                                                                                             
                                                                                          .'''.                                                                                                                                                                                                             
                                                                                          ..'.     .              .. ............................                                                                                                                                                           
                                                                                         .....    .......',,;:;;::;;cclocc:;,'';;,''''''..    ..........                                                                                                                                                    
                                                                                        .......';;::c:;;:;;;;;;;;;,,,,,'''....'''',,,'',,,''''.................                                                                                                                                             
                                                                                       .'..',;,;;,,''.',,,',,,'.......'''''',,,'',','''',;;;,'.,.......'',',;;,,,'............                                                                                                                              
                                                                                  ...''..''c;'..........'.'''...''''..,;;,,;;;;,,;,;;,,'''''''...'',,,,;;;::cclc::;::::;;;,,,'............   ....                                                                                                           
                                                                              ..',,''....',:,'............'''....''''..,,,,,,,;;;,'.',,;;''''''''.............,,;;;;;;;;;;:;;;;,,..',;;,''',,,,,,'.......                                                                                                   
                                                                          ..,;,,,'........;:;;.............'.....'.'''',,,;;:cccccc::ccc:;::;:c:;clooc:cc;.';;:;;,,,;;;;;;;;,,,;;,....;;;;;;,;;;;;:,,,''.....           ..                                                                                  
                                                                       .',,,'.'''..........,;:''';'..........;,'.,,;::::cc:colcc:clolllllocccc::::clcccc:clllc;,'...',;:::::,'.',,''',';;;,,,,,'''''..'...........      '.                                                      .                           
                                                                    ..''''...',,','..,,''...,;;,...';;......;c:;,;:c:;:;;;,,::lodoloc::cccccllllllllllccc::,...........';:c'..'',;;:lc:;,',;;;;;,,,'',,;,...............'.                                                     .                            
                                                                 ..'',,'........'....''','...',.......'.....'oo;.;::;;;;;;'':olllolllcccllccllllcclccccc,..................,;,:cc::;:c:;;:;:cc:ccclc:;;,,,,''''''''..'........                                                ...                           
                                                              ..'',,''..'''..'...........',;c'...............,l,',;;;;:::;;;,cl::c::cdoooooloooodddooo:...............',;cloooooodddoooollloolccc:::::ccc:,.';c::,'''..............                                           ..                            
                                                           ..''',,'....','.''..','.'.........,'......''......':oc:'.;;;;;;;,,col::cllloloooooddooddo:'........',''',;;coodxddddoooooololllllll::::::cclllcc;.'';lcc:''.''..'....''....                                      ....                            
                                                         ..',,'.,,..'.''';,'......'..''.',;'.'lc'.......';;:'.'oo;'.';;;;;::::c:;;:llolodc:cclodol:,'.';;,;:;;:::cccldxkkkkxxxxddodol:cl,'',,;::clllccccol:c:'',,lll:''.'''.,,,'.........                                   ....   .                        
                                                       ...''''.','''''.,''',,;;;;;:::ccclooooloxdooc,....''','lo:;'..,:;::c:::'..,;cooodkdoc::::ccccc::::::;::;;;;:::::;:clookkkkkxxo::''',''....,,;,,;;;;;;;;;,,,;cl:'''.''',;,......''''...                              .....                            
                                                    ....','..',;,,,,,';',;cc::cloddxddooddxddxxkOkkkkl...''',;dl......;::::cc:'...;coccllllclolool::::lloololllllllllclodxkxxOOOOOOOOxc;:cc,'''''''''''':,,,;;;;,,'',,,'''',',,;,........,;,','.                           .....                            
                                                  .''''',,.''','',:cc;,;::;;;cldddoddddddxxxxkkkkkxkkxo;',:cc;;c'...',;c:::ccc,....,llllcccllclc::oddxxxddxdddxddxxxddxkkxkOOocccdxdoc:c,,'''',:;dkddl:'..',llc::;;;:::;;,,,;;;:;,......''.''...;,...                     .......                           
                                               ..,'',',;;,''',;,,:c:'..,;,;:lldxo::lodoodxxkxkxxkkxxxxxxxkxxd::;......'::::c:::;'...',;::::;;::clcoddddolooxxkkxkkkkOO000OOkl::::::::c:cc::;;lxkxkkkkOkl,':cllool::;:::;;,,,;,;;;;,'...'....'.....,::,,..                .......                            
                                             .''''.',,;;;'';;;,,cc,'..'::cloodddddoodddoddlldxdxxddkxkkkkxxkx:,,,....';cc:::::;',,;:,,,,,,,'.:loxk0OOxdddxkkOOOO0OOOOOOOxlc:::ccc:coxd:lodddocccdOOOOOkd;oddodlo:lollc:::;,'',.',',;::;,',;:;;,.'...,:,;;,.           ..........                            
                                           .';;,;;';;,;;,'::,''c;'''.'c::dddddddddxxxddcc;.'ccllldkkkO0OkxkOO:,,;,,;:cllo:;;;:c,',,;,,,,',,,;dO00000kdodkO0000000000Oxl:::lodkxxxxxddkkkkkkxdd;,:lkkkOkkxkkkkkxolloooolcc::;'',',,''':c::::;;:;;'.'.  .....          ..........                             
                                         .'',,;::;,,',,'';;;'.,,.''.,cc:dddxddddxxxdkxdc'''ldldkkk0kO0O000KKXx;,;clllllccl:;,:c;,,,,,,,,',,;ck0K000OOOOO0000KO000Odc:::clkOOOOOkxxxddxxkkkkxxkoo:',:ccoxxxxdoc::odoolooocc::;,','',''':c:;;;;::;,',,.               ...........                             
                                        .,,;,',;;;:,,;,,;::;.','''.:cc:odxdodddodddxdkkxxxxkkkkkkOOoxkkOO00000xc;:lcclcc:cc:l:;c,,,,,,,,,,,,;000KK00OkOKKK0Okxxkol::lxO0000000OOOOOkxdddddkOOOOko;;loodlc:;;;:ldolllllllcc::;,,,';,''..;:;;:::::'',;,'.             ..........                              
                                       ..,;::,,,;;,,;:;;::;.',',';cc:cddooodddddxxkkOOkkxxxkkkOOOkkkkkOOO0OOOOkdl;:lccccccllc;:cl,,,,,,,,,,;;lOO0KKOkoooxxddxdddlodk0KKKKXXXKKOO000OkkdooxOOxxddxdlllc;;;;;loodolooooddoolc::,,,',;;:c::::;:cc:;',',;,,            ...........                              
                                      ';;cc:::;,,,;;;;;;::'',:c',;c::xxxdddoodxxkkOOkkxkkxkkkO00OkkkkkkOOOOkO0c;d:;cllllcclllccclc;,,,,,,,,,,,cddxdxdlodkkkdxkOOO0KKKKKKXXXNNXXKKKO00k0Oxddc::;::,;cc:;;:loxkdllldxkxxxxddddo:;,,,:looooolcc::;,,''',;;'..         ..........                               
                                    .,::cccc:,',;;;;:::cl:'',:l;'':ldddddl:ccdOkkkkkkkkkxkkOkkkkOOOOOOOOOkodxxl,lc;:cclcccolllclldl:,,,,,,,,,,,:lllcclx0OxxdkOk0KK000K00KKKK0KNNNX0000OOd,,,'::;;:::;''''ldxoollookxkOkkkdxddo:;;;:lllollcol:ccc;,,',,;;....      ...........                               
                                   .,,::cl:;,,::c;,:,;clc,'',:,'';lxxxdlc,'';:xkkkkkkxxkkkkkxocoO0KKKK0OOkcoddc'l:;ccccccoxollolodklc:,,,,,,;cdllccclxKKOOOOKOO00kk00O00Okk00O0KKKK00Oxl;',clc:::;;,:::;,ckkxxkolldkkkkxkxkkxdl;;:,,;llool:,;cc::;;,'';;,'....    ...........                               
                                  .,,:::::;;;:::c,;;:ccc:,',;,,:oxxxxxxdoclookOkkkkkOxooxkOOoldOOxoool:;;::col;,l:;:cccccodlllooodk0kx;,,,,,cOOxcllld000XKK0OkOxxxk0K0O0kxddxK0kk0kkdc;,::ccc:;,'';dOkOkxOOkxdxdllldkddddoxxxdc;,'...,llc:;:clcc::;,,'';;''','.   ..........                                
                                .,,,,;;:,;;:;;:::,;,::llcc:;:ldkkxxxkkkOOOOOOOkOOOOOOkxkxddoool:::::cclloooolo;'lcclcc:cccccodldloxkK0xl;:;:dddddxOOOOkO0OO0kxkkxkOKKXXXOxxdOkl,,;c:,,cxxol:cc::ld:k00XKOOOOOkxdocccldkkdxkkxc;;''..'::::c:;;looc:::,,';;',,';,   ..........                                
                                .'''';,,':c:;:::,,,',odoollldxxxkkkkkOOOOOxxkOOO0OOOOOOkdxOOxol:ccllollololooc,,,;cllllcccllxOlooolOKKXOlldxddxxkxkxxkOOkkOOkkxxOO0KKXXKOxxd:;,,,,,,;xxdoo:;,,;cc;,o0O000Okdddddlc:::dkkOxddd:;;'''.:ooc:c::;cdoccc:,,,;;,,,'';,    ........                                
                               .';,',,,'.:cc::;;,,'.:dddddoxxxdxkOOkOOOOOOkkkOOOOkkkkO0KK000o:;;;coolooollolc,,,,,;looollllxOKkxdo:oOO00000000OxkkkOOOkO0000O0KXXXNXKKXKOOOOkc;,,;ccllol:;,,,,,,;cldxkkOOxddoooooc;;:dkxxxoll::;''''cooc:::::clxolc:,,,;;;','''',.   .......                                
                              .''',,,;,.,::;;;;,,...coooodddxkxxkkkkOOOkkkxkkOOkkOkk00000KKKdo:cooldll:;:ccc:,,,,,,loollllx0KKOoooddx0KXXXXXX0kxkkOOOO00KKKKKKKK0OXXKKOO0OKXXKdcolooloc;,,,,,,;ldodc:oodkooooloddlc:oldxxxddd:;:::c;odlcllc::c::xxl;;;,;;;,,,'''',.      ........                           
                              ''..,,,,'.;';:;;,''...cldddxxxxkxxxkxxkkOOkxxkkkkxkkxkOOOOOOkkkooxkxdo::;::clo;,,,,,,;:lllloOOKK0kdoo;o0K0KKXXNNXXXXK0OO0XXXK00OOxodxkdxOk000OOxollllool;,,,,,,cdxd;oxcoloxxodxxkxddoolllloooddl;::l:;ol;,:dllccc;cdl;;;;;;;,,,,,''',,.    ............                       
                            .'....,,',.'.'c:;,''''':olooldxdddxxkxdxxxxdddxxxkkOOkkO0OOOOOOOOolool::::cllloll;;;;;;,,cooxxxxxxkllddccd0KKXNNNXXXXK00kkKNXKOkkoolodxoloxkkkkkxlllllc:;,,,,,,,cooxl;,cxooddkxkkkOkxddllloollddod::::':ol;,,;oocccc:cc,;;;;;;,,,,,,'',',.      .............                   
                           .'....',,,'..':;;,;:cllllodl:,,collllooddddddxxxxkkOOOkOdooodddddooclodocccllllloc,;;,;;,,;odxdddxxxxdloxk0XXWWWWWWWNWWNXXKKX00xxxdooodxxOOxddxxoolllc;,,,,;lcloxxxxxdc;,lxddkdkOOOOkkkoooooododxod:::;'odo;,,,',;:ccc::,,,;;:;;,;,,,,,'',..    ..............                   
                          .,,..',,,:c'.',,;:c::cllloodxo:,'',:llclooooooddxxxxkkxxxl:::::::::ccccodllllllldkl;;;;;;,;;;lddxxdkOOOolxKXXNWWNWWWWWWWNNXNWN0OkkOOkkkkOO0X0Oxooooll:;,,,;lO0OkkxddoodkdllxxxddxOOkddxkxddddoddoool::;,'ldo,,,,,'.':c:c;,,,;;:;;,,,,,,,,.,,..     ............                   
                         .,,'.,;,:;::;,,:ccc;.,lclooxxxxxl,,'.':ooodddoolododlcccccc:cclcclclccclxdolodddxkxd:;;;cc;;;::ddk00kkO0d:o0XNNWWNXWWWWMWWWNNXkkkkkkOOOOOkxkkxoollllc;,;;lkKXXKK000kxx0OkOkkocccoO000kxkOxxOxkkxxxool:,,,'ldl,,,,,,',cccc:;,,,,c:;;,,;,,,'.'''.          ..........                
                        .,:;.,;;;c:c;,;ccc;;;.;::clddddxdoo:',,';;dxkkxdooololllllllldkklldlcllccdO0OOOOOOOOOkxxxxxo::cldoxxodddxdcll0KWWWNNNWWWWWWWWWWNXK00OO000koolloooddc;,,;ckK0KXXXK000OOKKkOkxdcll:o000OxkOkxOOO0OOOOkkc,,,,,ddl,,,,,,,,:ccc:;;;,,c::;;,,,,,'.''''.     ..       ....                 
                        ';:,.;;;:,,,;clc::;:;',,;::::::cc::c:;,',,,:looooooxxooxkdooxOkdxxOOxddlxOOOkkO0K00Oxdxxxxxd:::cccxxdxxkOxooodkXWWWWMWWWWMMMWWWWWNNXKO0kxdoolldO00KOxddk0KKXXNXNNKXXXKKkkxxxoccclx0KKKOOOkkkkxO0O000ko,,,,:oo:,,,,,,,,:cl:;;;;,;:;::;,,,,,'',,,''.      ..            &nb