Received: from localhost ([::1]:44518 helo=stodi.digitalkingdom.org) by stodi.digitalkingdom.org with esmtp (Exim 4.76) (envelope-from ) id 1Uh6is-0001RV-4z; Mon, 27 May 2013 16:21:02 -0700 Received: from 173-13-139-235-sfba.hfc.comcastbusiness.net ([173.13.139.235]:36280 helo=digitalkingdom.org) by stodi.digitalkingdom.org with smtp (Exim 4.76) (envelope-from ) id 1Uh6if-0001RP-3O for wikineurotic@lojban.org; Mon, 27 May 2013 16:21:00 -0700 Received: by digitalkingdom.org (sSMTP sendmail emulation); Mon, 27 May 2013 16:20:48 -0700 From: "Apache" Date: Mon, 27 May 2013 16:20:48 -0700 To: wikineurotic@lojban.org X-PHP-Originating-Script: 48:htmlMimeMail.php MIME-Version: 1.0 Message-ID: X-Spam-Score: 0.4 (/) X-Spam_score: 0.4 X-Spam_score_int: 4 X-Spam_bar: / X-Spam-Report: Spam detection software, running on the system "stodi.digitalkingdom.org", has identified this incoming email as possible spam. The original message has been attached to this so you can view it (if it isn't spam) or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: The page Perguntas mais frequentes was changed by AndreIbaque at 23:20 UTC Comment: Test You can view the page by following this link: http://www.lojban.org/tiki/Perguntas%20mais%20frequentes [...] Content analysis details: (0.4 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 0.0 URIBL_BLOCKED ADMINISTRATOR NOTICE: The query to URIBL was blocked. See http://wiki.apache.org/spamassassin/DnsBlocklists#dnsbl-block for more information. [URIs: loglan.org] 0.4 RDNS_DYNAMIC Delivered to internal network by host with dynamic-looking rDNS Subject: [Wikineurotic] Wiki page Perguntas mais frequentes changed by AndreIbaque X-BeenThere: wikineurotic@lojban.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: webmaster@lojban.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: wikineurotic-bounces@lojban.org VGhlIHBhZ2UgUGVyZ3VudGFzIG1haXMgZnJlcXVlbnRlcyB3YXMgY2hhbmdlZCBieSBBbmRyZUli YXF1ZSBhdCAyMzoyMCBVVEMKQ29tbWVudDogVGVzdAoKWW91IGNhbiB2aWV3IHRoZSBwYWdlIGJ5 IGZvbGxvd2luZyB0aGlzIGxpbms6CiAKaHR0cDovL3d3dy5sb2piYW4ub3JnL3Rpa2kvUGVyZ3Vu dGFzJTIwbWFpcyUyMGZyZXF1ZW50ZXMKCllvdSBjYW4gdmlldyBhIGRpZmYgYmFjayB0byB0aGUg cHJldmlvdXMgdmVyc2lvbiBieSBmb2xsb3dpbmcgdGhpcyBsaW5rOiAKaHR0cDovL3d3dy5sb2pi YW4ub3JnL3Rpa2kvdGlraS1wYWdlaGlzdG9yeS5waHA/cGFnZT1QZXJndW50YXMlMjBtYWlzJTIw ZnJlcXVlbnRlcyZjb21wYXJlPTEmb2xkdmVyPTEmbmV3dmVyPTIKCgoqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgpUaGUgY2hhbmdlcyBp biB0aGlzIHZlcnNpb24gZm9sbG93IGJlbG93LCBmb2xsb3dlZCBhZnRlciBieSB0aGUgY3VycmVu dCBmdWxsIHBhZ2UgdGV4dC4KKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioKCgorLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKwpAQCAtTGluZXM6IDEwLTE0IGNoYW5nZWQgdG8gK0xp bmVzOiAxMC0xNCBAQAorLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r LSstKy0rLSstKy0rLSstKwojIHtBTElOSyhhbmFtZT0+aGlzdG9yaWNhbCl9SGlzdG9yaWNhbHtB TElOS30KIyB7QUxJTksoYW5hbWU9PnByb251bmNpYXRpb24pfVByb251bmNpYXRpb257QUxJTkt9 Ci0gISF7QU5BTUUoKX1nZW5lcmFse0FOQU1FfUdFTkVSQUwKKyAhIXtBTkFNRSgpfWdlcmFse0FO QU1FfUdFUkFMCiBHMS4ge0FMSU5LKGFuYW1lPT5HMSl9SGVscCEgIEkgZG9uJ3Qgc3BlYWsgRW5n bGlzaCF7QUxJTkt9CiBHMi4ge0FMSU5LKGFuYW1lPT5HMil9V2hhdCBpcyAnJ2xvamJhbicnP3tB TElOS30KCgoKCioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqClRoZSBuZXcgcGFnZSBjb250ZW50IGZvbGxvd3MgYmVsb3cuCioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCgpeVHJh bnNsYXRpb24gb2YgdGhpcyBwYWdlIGlzIGluY29tcGxldGUuXgoKCgpZb3UgbWF5IGFsc28gZmlu ZCB1c2VmdWwgaW5mb3JtYXRpb24gb24gdGhlICgoRkFRLWxpa2UgUmVzb3VyY2VzKSkgcGFnZS4K CgoKISFDb250ZcO6ZG8KCiMge0FMSU5LKGFuYW1lPT5nZXJhbCl9UGVyZ3VudGFzIEdlcmFpc3tB TElOS30KCiMge0FMSU5LKGFuYW1lPT5yZXNvdXJjZXMpfVJlc291cmNlc3tBTElOS30KCiMge0FM SU5LKGFuYW1lPT50ZWNobmljYWwpfVRlY2huaWNhbHtBTElOS30KCiMge0FMSU5LKGFuYW1lPT5z dGF0dXMpfVByb2plY3QgU3RhdHVze0FMSU5LfQoKIyB7QUxJTksoYW5hbWU9Pmhpc3RvcmljYWwp fUhpc3RvcmljYWx7QUxJTkt9CgojIHtBTElOSyhhbmFtZT0+cHJvbnVuY2lhdGlvbil9UHJvbnVu Y2lhdGlvbntBTElOS30KCiEhe0FOQU1FKCl9Z2VyYWx7QU5BTUV9R0VSQUwKCiBHMS4ge0FMSU5L KGFuYW1lPT5HMSl9SGVscCEgIEkgZG9uJ3Qgc3BlYWsgRW5nbGlzaCF7QUxJTkt9CgogRzIuIHtB TElOSyhhbmFtZT0+RzIpfVdoYXQgaXMgJydsb2piYW4nJz97QUxJTkt9CgogRzMuIHtBTElOSyhh bmFtZT0+RzMpfVdobyBpcyBpbnZvbHZlZCBpbiB0aGUgTG9qYmFuIHByb2plY3Q/e0FMSU5LfQoK IEc0LiB7QUxJTksoYW5hbWU9Pkc0KX1Ib3cgbWFueSBwZW9wbGUgYXJlIHRoZXJlIGluIHRoZSBM b2piYW4gY29tbXVuaXR5PyBIb3cgbWFueSBjYW4gdXNlIExvamJhbj97QUxJTkt9CgogRzUuIHtB TElOSyhhbmFtZT0+RzUpfVdoYXQgaXMgTG9nRmVzdCAvIGpib251bnNsYSA/e0FMSU5LfQoKIEc2 LiB7QUxJTksoYW5hbWU9Pkc2KX1XaGF0IGlzIHRoZSBkaWZmZXJlbmNlIGJldHdlZW4gdGhlIFJl ZmVyZW5jZSBHcmFtbWFyIGFuZCB0aGUgQ29tcGxldGUgTG9qYmFuIExhbmd1YWdlP3tBTElOS30K CiBHNy4ge0FMSU5LKGFuYW1lPT5HNyl9SXMgdGhlcmUgYSBtb3JlIGNvbXBsZXRlIGludHJvZHVj dGlvbiB0byBMb2piYW4gdGhhbiB0aGlzIEZBUT97QUxJTkt9CgohIXtBTkFNRSgpfXJlc291cmNl c3tBTkFNRX1SRVNPVVJDRVMKCiBSMS4ge0FMSU5LKGFuYW1lPT5SMSl9V2hhdCBpcyB0aGUgYmVz dCB3YXkgdG8gc3RhcnQgbGVhcm5pbmcgTG9qYmFuP3tBTElOS30KCiBSMi4ge0FMSU5LKGFuYW1l PT5SMil9SG93IGNhbiBJIGxvb2sgdXAgJydnaXNtdScnLCAnJ2x1anZvJycsIGFuZCAnJ2NtYXZv Jycgd2hlbiBJIGFtIHRyYW5zbGF0aW5nIGZyb20gbG9qYmFuP3tBTElOS30KCiBSMy4ge0FMSU5L KGFuYW1lPT5SMyl9U291cmNlcyBvZiB0ZXh0IHRvIHJlYWQ/e0FMSU5LfQoKIFI0LiB7QUxJTkso YW5hbWU9PlI0KX1XaGF0IG1lc3NhZ2VzIGFyZSBhcHByb3ByaWF0ZSBmb3IgdGhlIExvamJhbiBM aXN0P3tBTElOS30KCiBSNS4ge0FMSU5LKGFuYW1lPT5SNSl9QXJlIHRoZXJlIGFyY2hpdmVzPyBX V1cgc2l0ZT8gZnRwIHNpdGU/e0FMSU5LfQoKIFI2LiB7QUxJTksoYW5hbWU9PlI2KX1XaGF0IGlz IGF2YWlsYWJsZSBpbiBsYW5ndWFnZXMgb3RoZXIgdGhhbiBFbmdsaXNoP3tBTElOS30KCiBSNy4g e0FMSU5LKGFuYW1lPT5SNyl9V2hhdCBzb2Z0d2FyZSBpcyBhdmFpbGFibGU/e0FMSU5LfQoKISF7 QU5BTUUoKX10ZWNobmljYWx7QU5BTUV9VEVDSE5JQ0FMCgogVDEuIHtBTElOSyhhbmFtZT0+VDEp fShHbG9zc2FyeSkgSW4gRW5nbGlzaCBkZXNjcmlwdGlvbnMgb2YgJydsb2piYW4nJywgSSBzZWUg Jydsb2piYW4nJyB3b3JkcyB1c2VkLCBhcyB3ZWxsIGFzICcnbG9qYmFuJycgamFyZ29uLiBXaGF0 IGRvIHRoZXNlIHdvcmRzIG1lYW4/e0FMSU5LfQoKIFQyLiB7QUxJTksoYW5hbWU9PlQyKX1Ib3cg ZG8geW91IGJvcnJvdyB3b3JkcyBmcm9tIG90aGVyIGxhbmd1YWdlcz97QUxJTkt9CgogVDMuIHtB TElOSyhhbmFtZT0+VDMpfUlzbid0IGl0IGNvbmZ1c2luZyB0aGF0IHNvbWUgJydyYWZzaScnIGFy ZSBpZGVudGljYWwgdG8gJydjbWF2bycnP3tBTElOS30KCiBUNC4ge0FMSU5LKGFuYW1lPT5UNCl9 IFdoeSBkbyBzb21lIHRleHRzIHVzZSAiaCIgaW5zdGVhZCBvZiAnJycnJyAoc2luZ2xlIHF1b3Rl KSwgb3IgaGF2ZSBwYXJlbnRoZXNlcywgb3Igb3RoZXIgbm9uLXN0YW5kYXJkIGNvbnZlbnRpb25z P3tBTElOS30KCiBUNS4ge0FMSU5LKGFuYW1lPT5UNSl9V2h5IGRvZXMgaXQgaGF2ZSBhIHNwZWNp YWwgbWVhbmluZyB3aGVuIHRoZSAnJ3NlbGJyaScnIGNvbWVzIGZpcnN0IGluIGEgc2VudGVuY2U/ e0FMSU5LfQoKIFQ2LiB7QUxJTksoYW5hbWU9PlQ2KX1XaHkgYXJlIHRoZXJlIHNvIG1hbnkgd29y ZHMgZm9yIEFORD8gV2h5IG5vdCBqdXN0IGxldCAnJy5lJycgY29ubmVjdCB0d28gJydzdW10aScn LCAnJ2JyaWRpJycsICcnYnJpZGkgJyctdGFpbHMsIG9yIGFueXRoaW5nIGVsc2U/e0FMSU5LfQoK IFQ3LiB7QUxJTksoYW5hbWU9PlQ3KX1JcyB0aGUgJ3MnIGF0IHRoZSBlbmQgb2YgbG9qYmFuaXpl ZCBuYW1lcyAoc3VjaCBhcyAnbm9yYXMuJykgc2lsZW50P3tBTElOS30KCiEhe0FOQU1FKCl9c3Rh dHVze0FOQU1FfVBST0pFQ1QgU1RBVFVTCgogUFMxLiB7QUxJTksoYW5hbWU9PlBTMSl9V2hhdCBw YXJ0cyBvZiB0aGUgbGFuZ3VhZ2UgYXJlIHdlbGwgd29ya2VkIG91dCwgYW5kIHdoaWNoIHBhcnRz IGFyZSBpbiBmbHV4P3tBTElOS30KCiBQUzIuIHtBTElOSyhhbmFtZT0+UFMyKX1XaGF0IGFyZSB0 aGUgbW9zdCBjdXJyZW50IHJldmlzaW9ucyBvZiBlYWNoIHBhcnQgb2YgdGhlIGxhbmd1YWdlIGRl c2NyaXB0aW9ucz97QUxJTkt9CgogUFMzLiB7QUxJTksoYW5hbWU9PlBTMyl9V2hhdCBwcm9qZWN0 cyBhcmUgYmVpbmcgd29ya2VkIG9uPyBXaGVuIHdpbGwgdGhleSBiZSBkb25lP3tBTElOS30KCiBQ UzQuIHtBTElOSyhhbmFtZT0+UFM0KX1XaGF0IGNhbiBJIGRvIHRvIGhlbHA/e0FMSU5LfQoKISF7 QU5BTUUoKX1oaXN0b3JpY2Fse0FOQU1FfUhJU1RPUklDQUwKCiBIMS4ge0FMSU5LKGFuYW1lPT5I MSl9SG93IHdhcyB0aGUgZGVmYXVsdCBwbGFjZSBzdHJ1Y3R1cmUgb3JkZXIgb2YgJydzdW10aScn IGluIGEgJydzZWxicmknJyBkZXRlcm1pbmVkPyAoVGhlcmUgZG9lcyBub3QgYXBwZWFyIHRvIGJl IGFueSByaHltZSBvciByZWFzb24gZm9yIHRoZSBvcmRlciBvZiAnJ3N1bXRpJycgaW4gbWFueSAn J2dpc211JycuKXtBTElOS30KCiBIMi4ge0FMSU5LKGFuYW1lPT5IMil9SG93IGRpZCB0aGUgJydn aXNtdScnIGdldCBtYWRlOiBkaXNjdXNzaW9uLCBldHltb2xvZ3kgZXhhbXBsZXN7QUxJTkt9Cgog SDMuIHtBTElOSyhhbmFtZT0+SDMpfVdoYXQgaXMgdGhlIGRpZmZlcmVuY2UgYmV0d2VlbiBMb2ds YW4gYW5kIExvamJhbj8gSG93IGlzIExvZ2xhbi04MiByZWxhdGVkP3tBTElOS30KCiBINC4ge0FM SU5LKGFuYW1lPT5INCl9V2h5IGRvIG9sZGVyIExvamJhbiB0ZXh0cyAoYmVmb3JlIDE5OTMpIG5v dCBtYWtlIG11Y2ggc2Vuc2Ugc29tZXRpbWVzP3tBTElOS30KCiEhIHtBTkFNRSgpfXByb251bmNp YXRpb257QU5BTUV9UFJPTlVOQ0lBVElPTgoKQjEuIHtBTElOSyhhbmFtZT0+QjEpfUknbSBub3Qg cXVpdGUgc3VyZSBJIHVuZGVyc3RhbmQgdGhlIHdyaXR0ZW4gZGVzY3JpcHRpb25zIG9mIGhvdyB0 aGUgdm93ZWxzIHNvdW5kLntBTElOS30KCgoKISFHRVJBTAoKe0FOQU1FKCl9RzF7QU5BTUV9RzEu X18gSGVscCEgIEkgZG9uJ3Qgc3BlYWsgRW5nbGlzaCFfXwoKCgo7Tm8gaGFibG8gbXV5IGJpZW4g aW5nbMOpcy4uLjpQdWVkZXMgY29udGFjdGFydGUgY29uIFttYWlsdG86ampsbGFtYmlhc0BnbWFp bC5jb218Sm9yZ2UgTGxhbWLDrWFzXQoKO0plIG5lIGNvbXByZW5kcyBwYXMgdHLDqHMgYmllbiBs J2FuZ2xhaXMuLi46VHUgcGV1eCBjb250YWN0ZXIgW21haWx0bzpncmVnb3J5LmR5a2VAZXBmbC5j aHxHcmVnIER5a2VdCgo7SWNoIHZlcnN0ZWhlIEVuZ2xpc2NoIG5pY2h0IHNlaHIgZ3V0Li4uLjpE dSBrYW5uc3QgZWluZSBNYWlsIGFuIFttYWlsdG86Z3JlZ29yeS5keWtlQGVwZmwuY2h8R3JlZyBE eWtlXSBzZW5kZW4KCjttaSBuYSBzZSBiYW5ndSBsZSBnbGliYXU6Lm9pcnUnZSBkbyBuYSBuaXRj dSBsZSBudSB0Y2lkdSBkZWkga2VpIGtpJ3UgbGUgemEnaSAudWkgZG8gcHVqZWNhIHNlIGJhbmd1 IGxlIGpib2JhdQoKCgpBbHNvLCBzZWUgKChOb24tRW5nbGlzaCBMb2piYW4gTWF0ZXJpYWxzfHRo ZSBub24tRW5nbGlzaCByZXNvdXJjZXMgcGFnZSkpIGZvciBtb3JlIGxpc3RpbmdzIG9mIG5vbi1F bmdsaXNoIGxvamJhbmljIHJlc291cmNlcy4KCgoKCgp7QU5BTUUoKX1HMntBTkFNRX1HMi5fXyBX aGF0IGlzICcnbG9qYmFuJyc/X18KCgoKTG9qYmFuIGlzIGEgY2FyZWZ1bGx5IGNvbnN0cnVjdGVk ICcnc3Bva2VuJycsIGFzIHdlbGwgYXMgd3JpdHRlbiwgbGFuZ3VhZ2UgZGVzaWduZWQgaW4gdGhl IGhvcGUgb2YgcmVtb3ZpbmcgYSBsYXJnZSBwb3J0aW9uIG9mIHRoZSBhbWJpZ3VpdHkgZnJvbSBo dW1hbiBjb21tdW5pY2F0aW9uLiBJdCB3YXMgbWFkZSB3ZWxsLWtub3duIGJ5IGEgU2NpZW50aWZp YyBBbWVyaWNhbiBhcnRpY2xlIGFuZCByZWZlcmVuY2VzIGluIGJvdGggc2NpZW5jZSBmaWN0aW9u IGFuZCBjb21wdXRlciBwdWJsaWNhdGlvbnMuIExvamJhbiBoYXMgYmVlbiBidWlsdCBvdmVyIGZp dmUgZGVjYWRlcyBieSBkb3plbnMgb2Ygd29ya2VycyBhbmQgaHVuZHJlZHMgb2Ygc3VwcG9ydGVy cy4KCgoKe0FOQU1FKCl9RzN7QU5BTUV9RzMuX19XaG8gaXMgaW52b2x2ZWQgaW4gdGhlIExvamJh biBwcm9qZWN0PyBfXwoKCgpLZXkgcGVvcGxlIGFyZSBsaXN0ZWQgb24gdGhlICgoTG9qYmFuaWMg Q29tbXVuaXR5IExpbmtzfGNvbW11bml0eSkpIHBhZ2UuIAoKCgp7QU5BTUUoKX1HNHtBTkFNRX1H NC5fX0hvdyBtYW55IHBlb3BsZSBhcmUgdGhlcmUgaW4gdGhlIExvamJhbiBjb21tdW5pdHk/IEhv dyBtYW55IGNhbiB1c2UgTG9qYmFuP19fCgoKCkFzIG9mIE1hcmNoIDIwMTAsIGNsb3NlIHRvIHR3 byB0aG91c2FuZCBwZW9wbGUgZnJvbSBhcm91bmQgdGhlIHdvcmxkIGhhdmUgZGV2ZWxvcGVkIGFu IGludGVyZXN0IGluIExvamJhbiB0byB0aGUgcG9pbnQgb2Ygb3JkZXJpbmcgYSBbQm9va3N8Ym9v a10gb3Igam9pbmVkIGEge0FMSU5LKGFuYW1lPT5saXN0cyxwYWdlbmFtZT0+TG9qYmFuaWMgRm9y dW1zKX1Mb2piYW4gTGlzdHtBTElOS30gLiBBdCBhbnkgZ2l2ZW4gdGltZSwgdGhlcmUgYXJlIGF0 IGxlYXN0IDUwIHRvIDEwMCBhY3RpdmUgcGFydGljaXBhbnRzIChwZW9wbGUgd2hvIHdpbGwgcmVz cG9uZCBpZiB5b3UgYXNrIGEgcXVlc3Rpb24gb24gb25lIG9mIHRoZSBlbWFpbCBsaXN0cyBvciBp biBbTG9qYmFuIElSQ3xJUkMgY2hhdCByb29tXSwgZm9yIGV4YW1wbGUpLiBBIG51bWJlciBvZiB0 aGVtIGNhbiBob2xkIGEgcmVhbC10aW1lIGNvbnZlcnNhdGlvbiBpbiB0aGUgbGFuZ3VhZ2UuCgoK CntBTkFNRSgpfUc1e0FOQU1FfUc1Ll9fV2hhdCBpcyAoKExvZ0Zlc3QpKSAvICgoamJvbnVuc2xh KSkgP19fCgoKCkxvZ0Zlc3QgaXMgdGhlIGFubnVhbCBnYXRoZXJpbmcgb2YgdGhlIFtUaGUgTG9n aWNhbCBMYW5ndWFnZSBHcm91cHxMb2dpY2FsIExhbmd1YWdlIEdyb3VwXS4gV2UgYXJlIHJlcXVp cmVkIGJ5IGFuIFtCeWxhd3Mgb2YgVGhlIExvZ2ljYWwgTGFuZ3VhZ2UgR3JvdXAsIEluYy58TExH IGJ5bGF3XSB0byBoYXZlIGFuIGFubnVhbCBtZWV0aW5nLiBFdmVyeSB5ZWFyIHdlIGhhdmUgYSBM b2piYW4gQ29udmVudGlvbiBmb3IgYW55IGFuZCBhbGwgaW4gdGhlICgoTG9qYmFuaWMgQ29tbXVu aXR5IExpbmtzfGNvbW11bml0eSkpIHdobyBhcmUgd2lsbGluZyB0byBjb21lLiAoKExvZ0Zlc3Qp KSB3YXMgdHJhZGl0aW9uYWxseSBoZWxkIGF0ICcnbG9qYmFiJ3MnJyBob3VzZSBpbiBGYWlyZmF4 IFZBLCBhIHN1YnVyYiBvZiBXYXNoaW5ndG9uIERDLCB1c3VhbGx5IG92ZXIgYSB3ZWVrZW5kIGlu IEp1bHkgb3IgQXVndXN0LiBXZSBoYXZlIHR5cGljYWxseSBoYWQgYXJvdW5kIDIwIHBlb3BsZSBj b21lIGZvciBwYXJ0IG9yIGFsbCBvZiB0aGUgd2Vla2VuZC4gU29tZSBvZiB0aGVzZSBwZW9wbGUg YXJlIGFtb25nIHRoZSBtb3JlIGNvbW1pdHRlZCBMb2piYW5pc3RzLCBhbmQgYXJvdW5kIGhhbGYg dGhlIGF0dGVuZGVlcyB0eXBpY2FsbHkgYXJlIGF0IGJlZ2lubmVyIHNraWxsIGxldmVscy4gVXN1 YWxseSBzZXZlcmFsIHBlb3BsZSB0cmF2ZWwgYSBzdWJzdGFudGlhbCBkaXN0YW5jZSBpbiBvcmRl ciB0byBhdHRlbmQsIGFuZCB0aG9zZSBwZW9wbGUgYXJlIG9mdGVuIHRyZWF0ZWQgYXMgYSBndWVz dHMgb2YgaG9ub3IgYW5kIGFyZSBnaXZlbiBmaXJzdCBjb25zaWRlcmF0aW9uIGZvciBjaG9vc2lu ZyB0aGUgYWN0aXZpdGllcyBvbiB3aGljaCB3ZSBmb2N1cy4gCgoKCk90aGVyIHRoYW4gZ2l2aW5n IHRob3NlIHdobyBoYWQgdG8gdHJhdmVsIGZ1cnRoZXN0IHByZWZlcmVuY2UgaW4gcGlja2luZyB0 b3BpY3MsICgoTG9nRmVzdCkpIGlzIGxhcmdlbHkgdW5zdHJ1Y3R1cmVkLCBpbiBwYXJ0IGJlY2F1 c2Ugd2UgZG9uJ3Qga25vdyB3aG8gb3IgaG93IG1hbnkgYXJlIGNvbWluZyB1bnRpbCBhIGNvdXBs ZSBvZiBkYXlzIGJlZm9yZSB0aGluZ3Mgc3RhcnQuICgoTG9nRmVzdCkpIGlzIHdoYXQgdGhlICgo TG9qYmFuaWMgQ29tbXVuaXR5IExpbmtzfGNvbW11bml0eSkpIGNob29zZXMgdG8gbWFrZSBpdC4g QmVjYXVzZSB0aGUgb2ZmaWNpYWwgTExHIG1lZXRpbmcgb2NjdXJzIGR1cmluZyAoKExvZ2Zlc3Qp KSwgc29tZSBvZiB0aGUgbWFqb3IgZGVjaXNpb25zIGFmZmVjdGluZyB0aGUgKChMb2piYW5pYyBD b21tdW5pdHkgTGlua3N8TG9qYmFuIGNvbW11bml0eSkpIHRlbmQgdG8gZ2V0IG1hZGUgdGhlcmUu CgoKCkluIDIwMDUgYW5kIDIwMDYsIHRoZSBhbm51YWwgZ2F0aGVyaW5ncyBzdGFydGVkIGJlaW5n IGhlbGQgYXQgc2NpZW5jZSBmaWN0aW9uIGNvbnZlbnRpb25zLgoKCgpUaGUgbmFtZSAiKChMb2dG ZXN0KSkiIGlzIGEgaG9sZG92ZXIgZnJvbSBMb2dsYW4uIFRoZSB3b3JkIGZvciBpdCBpbiBMb2pi YW4gaXMgIigoamJvbnVuc2xhKSkiLgoKCgp7QU5BTUUoKX1HNntBTkFNRX1HNi5fX1doYXQgaXMg dGhlIGRpZmZlcmVuY2UgYmV0d2VlbiB0aGUgUmVmZXJlbmNlIEdyYW1tYXIgYW5kIHRoZSBDb21w bGV0ZSBMb2piYW4gTGFuZ3VhZ2U/X18KCgoKVGhlICgoVGhlIExvamJhbiBSZWZlcmVuY2UgR3Jh bW1hcnxSZWZlcmVuY2UgR3JhbW1hcikpIGlzIG9ubGluZTsgKChUaGUgQ29tcGxldGUgTG9qYmFu IExhbmd1YWdlKSkgaXMgdGhlIGhhcmQtY29weSBib29rIHZlcnNpb24uIFRoZSB0ZXJtcyBhcmUg c29tZXRpbWVzIHVzZWQgaW50ZXJjaGFuZ2VhYmx5LiAKCgoKe0FOQU1FKCl9Rzd7QU5BTUV9Rzcu X19JcyB0aGVyZSBhIG1vcmUgY29tcGxldGUgaW50cm9kdWN0aW9uIHRvIExvamJhbiB0aGFuIHRo aXMgRkFRP19fCgoKClllcyEgWW91IGNhbiByZWFkIG9yIGRvd25sb2FkICgoV2hhdCBJcyBMb2pi YW4/LCBUaGUgQm9va3xXaGF0IElzIExvamJhbj8pKSwgYWxzbyBrbm93biBhcyB0aGUgTGV2ZWwg WmVybyBib29rLCBlZGl0ZWQgYnkgTmljayBOaWNob2xhcyBhbmQgSm9obiBXb2xkZW1hciBDb3dh bi4gIFRoaXMgYm9vayBtYWtlcyBhbiAnJ2V4Y2VsbGVudCcnIGludHJvZHVjdGlvbiB0byBsb2pi YW4uIAoKCgohIVJFU09VUkNFUwoKe0FOQU1FKCl9UjF7QU5BTUV9UjEuX19XaGF0IGlzIHRoZSBi ZXN0IHdheSB0byBzdGFydCBsZWFybmluZyBMb2piYW4/X18KCgoKV2UgcmVjb21tZW5kIHRoZSBm b2xsb3dpbmc6IAoKCgojICBZb3UgY2FuIHJlYWQgb3IgZG93bmxvYWQgKChXaGF0IElzIExvamJh bj8sIFRoZSBCb29rfFdoYXQgSXMgTG9qYmFuPykpLCBhbHNvIGtub3duIGFzIHRoZSBMZXZlbCBa ZXJvIGJvb2ssIGVkaXRlZCBieSBOaWNrIE5pY2hvbGFzIGFuZCBKb2huIFdvbGRlbWFyIENvd2Fu LiAgVGhpcyBib29rIG1ha2VzIGFuICcnZXhjZWxsZW50JycgaW50cm9kdWN0aW9uIHRvIGxvamJh bi4KCiMgIFdvcmsgdGhyb3VnaCBbaHR0cDovL3d3dy50bGcudWNpLmVkdS9+b3BvdWRqaXMvbG9q YmFuYnJvY2h1cmUvbGVzc29ucy9ib29rMS5odG1sfCBMb2piYW4gRm9yIEJlZ2lubmVyc10uCgoj IFJlYWQgdGhyb3VnaCB0aGUgKChUaGUgTG9qYmFuIFJlZmVyZW5jZSBHcmFtbWFyfFJlZmVyZW5j ZSBHcmFtbWFyKSkgLS0gcmVhZGluZyBmb3IgY29uY2VwdHMsIG5vdCBkZXRhaWwuCgojICBDcmVh dGUgYSBjaGVhdCBzaGVldCB3aXRoIGxpc3RzIG9mIHtBTElOSyhhbmFtZT0+Y21hdm8pfScnY21h dm8nJ3tBTElOS30geW91J3JlIGxpa2VseSB0byBuZWVkLgoKIyAgUmVhZCBhbmQgd3JpdGUgKChU ZXh0cyBJbiBMb2piYW58TG9qYmFuIHRleHRzKSkgdXNpbmcgdGhlICgoVGhlIExvamJhbiBSZWZl cmVuY2UgR3JhbW1hcnxSZWZlcmVuY2UgR3JhbW1hcikpIGFuZCB5b3VyIGNoZWF0IHNoZWV0cyBm b3IgcmVmZXJlbmNlLiBQb3N0IHlvdXIgdHJhbnNsYXRlZCB0ZXh0IHRvIHRoZSB7QUxJTksoYW5h bWU9Pmxpc3RzLHBhZ2VuYW1lPT5Mb2piYW5pYyBGb3J1bXMpfUxvamJhbiBMaXN0e0FMSU5LfSBm b3IgZmVlZGJhY2suCgojICBJZiB5b3UgZ2V0IHNlcmlvdXMgYWJvdXQgaXQsIHVzZSBbaHR0cDov L3d3dy5sb2piYW4ub3JnL2ZpbGVzL3NvZnR3YXJlL2xvZ2ZsYXNoLnppcHxMb2dmbGFzaF0gb3Ig W2h0dHA6Ly9xdWl6bGV0LmNvbS98UXVpemxldF0gKHJlZ2lzdGVyIGFuZCBqb2luIHRoZSBMb2pi YW4gR3JvdXApIHRvIGhlbHAgeW91IG1lbW9yaXplIHZvY2FidWxhcnkuCgogICAgCgpJZiBzb21l IGNvbmNlcHRzIGluIGFueSBvZiB0aGUgYWJvdmUgcmVzb3VyY2VzIHNlZW0gdW5jbGVhciwgcG9z dCB5b3VyIHF1ZXN0aW9ucyB0byB0aGUge0FMSU5LKGFuYW1lPT5saXN0cyxwYWdlbmFtZT0+TG9q YmFuaWMgRm9ydW1zKX1Mb2piYW4gTGlzdHtBTElOS30uIAoKCgp7QU5BTUUoKX1SMntBTkFNRX1S Mi5fX0hvdyBjYW4gSSBsb29rIHVwICcne0FMSU5LKGFuYW1lPT5jbWF2byl9Y21hdm97QUxJTkt9 Jycgd2hlbiBJIGFtIHRyYW5zbGF0aW5nIGZyb20gTG9qYmFuP19fCgoKClVzZSBvbmUgb2YgdGhl c2U6IC0gcHJpbnQgeW91cnNlbGYgb3V0IHRoZSBbaHR0cDovL3d3dy5sb2piYW4ub3JnL3B1Ymxp Y2F0aW9ucy93b3JkbGlzdHMvZ2lzbXUudHh0fGNvbXBsZXRlICcnZ2lzbXUnJyBsaXN0XSwgdGhl IFtodHRwOi8vd3d3LmxvamJhbi5vcmcvZmlsZXMvZHJhZnQtZGljdGlvbmFyeS9OT1JBTFVKVi50 eHR8IGN1cnJlbnQgJydsdWp2bycnIGxpc3RdLCBhbmQgdGhlIFtodHRwOi8vd3d3LmxvamJhbi5v cmcvcHVibGljYXRpb25zL3dvcmRsaXN0cy9jbWF2by50eHR8IGNvbXBsZXRlICcnY21hdm8nJyBs aXN0XSBhcyB3ZWxsIGFzIHRoZSBbaHR0cDovL3d3dy5sb2piYW4ub3JnL3B1YmxpY2F0aW9ucy93 b3JkbGlzdHMvcmFmc2kudHh0fCBjb21wbGV0ZSAnJ3JhZnNpJycgbGlzdF0gLSByZWZlciB0byB0 aGUgb25saW5lIFtodHRwOi8vamJvdmxhc3RlLmxvamJhbi5vcmcvfGRpY3Rpb25hcnldLgoKCgp7 QU5BTUUoKX1SM3tBTkFNRX1SMy5fX1NvdXJjZXMgb2YgdGV4dCB0byByZWFkP19fCgoKClRoZXJl IGFyZSBtYW55LiAgWW91IGNhbiBmaW5kIGEgY29tcGxldGUgbGlzdCBbVGV4dHMgaW4gTG9qYmFu fGhlcmVdLiBUYWtlIHlvdXIgcGljayBmcm9tIG9yaWdpbmFsIG9yIHRyYW5zbGF0ZWQsIHNob3J0 IG9yIGxvbmcsIHByb3NlIG9yIHBvZXRyeSwgY3VycmVudGx5LWJlaW5nLXdvcmtlZC1vbiBvciBj b21wbGV0ZWQtYW5kLXJldmlld2VkLgoKCgpUaGUge0FMSU5LKGFuYW1lPT5saXN0cyxwYWdlbmFt ZT0+TG9qYmFuaWMgRm9ydW1zKX1Mb2piYW4gTGlzdHtBTElOS30gd2lsbCBoYXZlIGRpc2N1c3Np b24gaW4gTG9qYmFuIGZyb20gdGltZSB0byB0aW1lLiBUaGVyZSBpcyBhbHNvIG5vdyBhIExvamJh bi1vbmx5IGxpc3QgY2FsbGVkIHtBTElOSyhhbmFtZT0+amJvc251LHBhZ2VuYW1lPT5Mb2piYW5p YyBGb3J1bXMpfScnamJvc251Jyd7QUxJTkt9ICgiTG9qYmFuaWMgRGlzY3Vzc2VycyIpLiAKCgoK e0FMSU5LKGFuYW1lPT5KTCl9JydqdSdpIGxvYnlwbGknJ3tBTElOS30gKEF0dGVudGlvbiEgTG9q YmFuaWMgVXNlcnMpIHVzdWFsbHkgaGF2ZSBzZXZlcmFsIGV4YW1wbGVzIG9mIGNvbW1lbnRlZCB0 ZXh0LCB0aG91Z2ggZWFybHkgaXNzdWVzIG1heSBoYXZlIHNvbWUgb2Jzb2xldGUgd29yZHMgb3Ig dXNhZ2VzLiAKCgoKT3RoZXIgTG9qYmFuaXN0cyBwdWJsaXNoIFdlYiBwYWdlcywgc29tZSB3aXRo IExvamJhbiB0ZXh0cyBhbmQgc29tZSBlbnRpcmVseSBpbiBMb2piYW4uIFtMb2piYW5pYyBDb21t dW5pdHkgTGlua3N8SGVyZV0gYXJlIHNvbWUgaW50ZXJlc3Rpbmcgc2l0ZXMuIAoKCgpTdHVmZiBv biBwYXBlciBjYW4gYmUgb3JkZXJlZCBmcm9tIHRoZSB7QUxJTksoYW5hbWU9PkxMRyl9TG9naWNh bCBMYW5ndWFnZSBHcm91cHtBTElOS307IGhvd2V2ZXIgaXQgaXMgbXVjaCBiZXR0ZXIgaWYgeW91 IGNhbiByZXRyaWV2ZSBzdHVmZiBkaXJlY3RseSBvZmYgdGhlIG5ldC4gCgoKCntBTkFNRSgpfVI0 e0FOQU1FfVI0Ll9fV2hhdCBtZXNzYWdlcyBhcmUgYXBwcm9wcmlhdGUgZm9yIHRoZSBMb2piYW4g TGlzdD9fXwoKCgpCZWdpbm5lcnMgYXJlIGVuY291cmFnZWQgdG8gcG9zdC4gQW55dGhpbmcgaXMg YXBwcm9wcmlhdGUgYXMgbG9uZyBhcyB0aGUgdGl0bGUgYXBwcm94aW1hdGVseSByZWZsZWN0cyB0 aGUgY29udGVudCBhbmQgeW91J3JlIG5vdCBzZWxsaW5nIG1hZ2F6aW5lIHN1YnNjcmlwdGlvbnMg b3IgbWFpbC1vcmRlciBicmlkZXMgKGV4Y2VwdGlvbjogZXZlbiBUSEFUIGlzIE9LIGlmIHRoZSBw b3N0IGlzIHdyaXR0ZW4gaW4gTG9qYmFuISkuICBZb3UgY2FuIHBvc3Qgb24gYW55IHN1YmplY3Qg aW4gTG9qYmFuLCBvciBhYm91dCBMb2piYW4gaW4gYW55IGxhbmd1YWdlLiBZb3UgY2FuIHBvc3Qg aW4gYW55IGxhbmd1YWdlIHlvdSB0aGluayBwZW9wbGUgd2lsbCB1bmRlcnN0YW5kLiAKCgoKe0FO QU1FKCl9UjV7QU5BTUV9UjUuX19BcmUgdGhlcmUgYXJjaGl2ZXM/IFdXVyBzaXRlPyBmdHAgc2l0 ZT9fXwoKCgpUaGVyZSBhcmUgYXJjaGl2ZXMgb2Ygc29tZSBvZiB0aGUgbW9yZSByZWNlbnQgZS1t YWlsIGxpc3QgbWVzc2FnZXMgb24gdGhpcyB3ZWJzaXRlLCB3aGlsZSBvdGhlcnMgYXJlIHN0b3Jl ZCBhdCBZYWhvby4gIFNlZSBbaHR0cDovL3d3dy5sb2piYW4ub3JnL3Jlc291cmNlcy9mb3J1bXMu aHRtbCNsaXN0c3x0aGUgbWFpbGluZyBsaXN0cyBwYWdlXS4KCgoKCgp7QU5BTUUoKX1SNntBTkFN RX1SNi5fX1doYXQgaXMgYXZhaWxhYmxlIGluIGxhbmd1YWdlcyBvdGhlciB0aGFuIEVuZ2xpc2g/ X18KCgoKVGhlcmUgYXJlIGJyb2NodXJlcyBpbiBTcGFuaXNoICh7ZmlsZSBuYW1lPSJCcm9jaHVy ZV9TcGFuaXNoMS5kb2MiIHNob3dkZXNjPTF9KSwgRnJlbmNoICh7ZmlsZSBuYW1lPSJCcm9jaHVy ZV9GcmVuY2gxLmRvYyIgc2hvd2Rlc2M9MX0pLCBbaHR0cDovL3d3dy5sb2piYW4ub3JnL3Jlc291 cmNlcy8uLi9wdWJsaWNhdGlvbnMvYnJvY2h1cmVzL2Jyb2NodXJlX2VzcGVyYW50by5odG1sfEVz cGVyYW50b10sIGFuZCBbaHR0cDovL3d3dy5sb2piYW4ub3JnL3Jlc291cmNlcy8uLi9wdWJsaWNh dGlvbnMvYnJvY2h1cmVzL2Jyb2NodXJlX3J1c3NpYW4uaHRtbHxSdXNzaWFuXS4gSm9yZ2UgYW5k IEpvc2UgaGF2ZSB0cmFuc2xhdGVkIHRoZSAnJ3tBTElOSyhhbmFtZT0+Z2lzbXUpfWdpc211e0FM SU5LfScnIGxpc3QgaW50byBTcGFuaXNoICh7ZmlsZSBuYW1lPSJMaXN0YV9kZV9naXNtdV9jb25f ZGVmaW5pY2lvbmVzX2VuX2VzLmRvYyIgc2hvd2Rlc2M9MX0pLgoKCgoKCntBTkFNRSgpfVI3e0FO QU1FfVI3Ll9fV2hhdCBzb2Z0d2FyZSBpcyBhdmFpbGFibGU/X18KCgoKVXAtdG8tZGF0ZSBpbmZv cm1hdGlvbiBpcyBhdmFpbGFibGUgYXQgW2h0dHA6Ly93d3cubG9qYmFuLm9yZy9yZXNvdXJjZXMv dG9vbHMuaHRtbHx0aGUgbG9qYmFuIHNvZnR3YXJlIHRvb2xzIHBhZ2VdIG9uIHRoZSBtYWluIHNp dGUuICBCZWxvdyBhcmUgZGlyZWN0IGxpbmtzIHRvIHNvbWUgb2YgdGhlIHNvZnR3YXJlIGRpcmVj dGx5IGFzc29jaWF0ZWQgd2l0aCB0aGUgTExHLgoKCgpbaHR0cDovL3d3dy5sb2piYW4ub3JnL3Jl c291cmNlcy8uLi9maWxlcy9zb2Z0d2FyZS9sb2dmbGFzaC56aXB8TG9nZmxhc2ggMV0gLSB0ZWFj aGVzICcne0FMSU5LKGFuYW1lPT5naXNtdSl9Z2lzbXV7QUxJTkt9Jyc7IFtodHRwOi8vd3d3Lmxv amJhbi5vcmcvcmVzb3VyY2VzLy4uL2ZpbGVzL3NvZnR3YXJlL2xmc3JjLlpJUHxUdXJiby1QYXNj YWwgc291cmNlIGNvZGVdIChub3Qgd2VsbC1kb2N1bWVudGVkKSBpcyBhdmFpbGFibGUgCgoKClto dHRwOi8vd3d3LmxvamJhbi5vcmcvcmVzb3VyY2VzLy4uL2ZpbGVzL3NvZnR3YXJlL2xvZ2ZsMy56 aXB8TG9nZmxhc2ggM10gLSB0ZWFjaGVzICcne0FMSU5LKGFuYW1lPT5jbWF2byl9Y21hdm97QUxJ Tkt9JycKCgoKW2h0dHA6Ly93d3cubG9qYmFuLm9yZy9yZXNvdXJjZXMvLi4vZmlsZXMvc29mdHdh cmUvcGFyc2VyL1BBUlNFUjMuWklQfExvamJhbiBQYXJzZXJdIC0gdGhlIGRlZmluaXRpdmUgc3Rh bmRhcmQgb2YgTG9qYmFuIGdyYW1tYXI7IHZlcmlmaWVzIHRoZSBMb2piYW4gZ3JhbW1hciBpbiBh IHRleHQgCgoKCltodHRwOi8vd3d3LmxvamJhbi5vcmcvcmVzb3VyY2VzLy4uL2ZpbGVzL3NvZnR3 YXJlL2dsb3NzMy0yLlpJUHxMb2piYW4gUGFyc2VyL0dsb3NzZXJdIChpbmNsdWRlcyB0aGUgcGFy c2VyLCByb3VnaGx5IGdsb3NzZXMgdGV4dCB0byBFbmdsaXNoKSAKCgoKW2h0dHA6Ly93d3cubG9q YmFuLm9yZy9yZXNvdXJjZXMvLi4vZmlsZXMvc29mdHdhcmUvbHVqdm9tYWsuemlwfEx1anZvLW1h a2VyIHByb2dyYW1dCgoKCltodHRwOi8vd3d3LmxvamJhbi5vcmcvcmVzb3VyY2VzLy4uL2ZpbGVz L3NvZnR3YXJlL2FuYWx5c2VyfFByb2xvZyBTZW1hbnRpYyBBbmFseXplcl0KCgoKW2h0dHA6Ly93 d3cubG9qYmFuLm9yZy9yZXNvdXJjZXMvLi4vZmlsZXMvc29mdHdhcmUvcm5kc2VuMjguemlwfFJh bmRvbSBTZW50ZW5jZSBHZW5lcmF0b3JdIC0gdXBkYXRlZCB2ZXJzaW9uIGluIHByb2dyZXNzLCB0 aGUgYXZhaWxhYmxlIHZlcnNpb24gaGFzIHNvbWV3aGF0IG9ic29sZXRlIGdyYW1tYXIgZGVmaW5p dGlvbnMgCgoKCiEhVEVDSE5JQ0FMCgp7QU5BTUUoKX1UMXtBTkFNRX1UMS5fXyhHbG9zc2FyeSkg SW4gRW5nbGlzaCBkZXNjcmlwdGlvbnMgb2YgJydsb2piYW4nJywgSSBzZWUgJydsb2piYW4nJyB3 b3JkcyB1c2VkLCBhcyB3ZWxsIGFzICcnbG9qYmFuJycgamFyZ29uLiBXaGF0IGRvIHRoZXNlIG1l YW4/X18KCgoKSGVyZSBhcmUgQVBQUk9YSU1BVEUgZGVmaW5pdGlvbnMuIAoKCgpOb3RlOiBXb3Jk cyBpbiBBTEwgQ0FQUyBvbiB0aGUge0FMSU5LKGFuYW1lPT5saXN0cyxwYWdlbmFtZT0+TG9qYmFu aWMgRm9ydW1zKX1Mb2piYW4gTGlzdHtBTElOS30gb2Z0ZW4gcmVmZXIgdG8gTG9qYmFuIHBhcnRz IG9mIHNwZWVjaC4gdGhlIEVuZ2xpc2gtbGFuZ3VhZ2UgcGhvbmV0aWMgdHJhbnNsYXRpb24gb2Yg JycnJycgKHNpbmdsZSBxdW90ZSkgaXMgImgiLCBzbyB3aGVuIHRoaXMgY29udmVudGlvbiBpcyB1 c2VkLCAiaCIgaXMgdXNlZCBhcyB0aGUgImNhcGl0YWxpemF0aW9uIiBvZiAnJycnJy4gIFNvIGlu IEVuZ2xpc2gtbGFuZ3VhZ2UgZGlzY3Vzc2lvbiwgdGhlIGxvamJhbiBwYXJ0IG9mIHNwZWVjaCBj b250YW5pbmcgdGhlIHdvcmQgJydsYSdlJycgKHRoZSByZWZlcmVudCBvZiBhIHN1bXRpKSB3b3Vs ZCBiZSAiTEFoRSIuCgoKCjtfX3tBTkFNRSgpfWF0dGl0dWRpbmFse0FOQU1FfWF0dGl0dWRpbmFs X186QSBMb2piYW4gaW50ZXJqZWN0aW9uIChjb3JyZXNwb25kaW5nIHRvICJXb3chIiBvciAiRWVr ISIgaW4gRW5nbGlzaCwgb25seSBsb2piYW4gaGFzIG1hbnkgbW9yZSkKCjtfX3tBTkFNRSgpfWF1 ZGlvdmlzdWFsaXNvbW9ycGhpc217QU5BTUV9YXVkaW92aXN1YWwgaXNvbW9ycGhpc21fXzpVc2Vk IHRvIGRlc2NyaWJlIHRoZSBmYWN0IHRoYXQgc3Bva2VuIGFuZCB3cml0dGVuIExvamJhbiBoYXZl IHRoZSBzYW1lIGZvcm0KCjtfXycne0FOQU1FKCl9YnJpZGl7QU5BTUV9YnJpZGknJ19fOkxvamJh biBzZW50ZW5jZX4tLX5hIHByZWRpY2F0ZQoKO19fJyd7QU5BTUUoKX1icml2bGF7QU5BTUV9YnJp dmxhJydfXzpBbnkgd29yZCB0aGF0IGNhbiBzdGF0ZSBhIHJlbGF0aW9uc2hpcCBhbW9uZyBzZXZl cmFsIG9iamVjdHMgb3IgY29uY2VwdHMsIGFuZCB0aHVzIGJlIHRoZSBjb3JlIHdvcmQgaW4gYSBM b2piYW4gJyd7QUxJTksoYW5hbWU9PmJyaWRpKX1icmlkaXtBTElOS30nJyAtIGEgcHJlZGljYXRl IHdvcmQKCjtfXycne0FOQU1FKCl9Y21hdm97QU5BTUV9Y21hdm8nJ19fOkEgbGl0dGxlIHdvcmQg c2hvd2luZyBzdHJ1Y3R1cmUgcmF0aGVyIHRoYW4gY2FycnlpbmcgbWVhbmluZy4gVGhlIFtodHRw Oi8vd3d3LmxvamJhbi5vcmcvcmVzb3VyY2VzLy4uL3B1YmxpY2F0aW9ucy93b3JkbGlzdHMvY21h dm8udHh0fGN1cnJlbnQgY21hdm8gbGlzdF0gaXMgYXZhaWxhYmxlLCBidXQgaXQgaXNuJ3QgdmVy eSBlYXN5IHRvIHJlYWQhCgo7X18nJ3tBTkFNRSgpfWNtZW5le0FOQU1FfWNtZW5lJydfXzpMb2pi YW4gbmFtZXMKCjtfX3tBTkFNRSgpfWV2aWRlbnRpYWx7QU5BTUV9ZXZpZGVudGlhbF9fOlNwZWNp YWwgd29yZCBpbmRpY2F0aW5nIGhvdyB0aGUgc3BlYWtlciBnb3QgdGhlaXIgaW5mb3JtYXRpb24K CjtfXycne0FOQU1FKCl9ZnUnaXZsYXtBTkFNRX1mdSdpdmxhJydfXzpCb3Jyb3dlZCB3b3JkCgo7 X18nJ3tBTkFNRSgpfWdhZHJpe0FOQU1FfWdhZHJpJydfXzpMb2piYW4gYXJ0aWNsZSBvciBkZXRl cm1pbmVyfi0tfnNpZ25hbHMgdGhlIHN0YXJ0IG9mIGEgJyd7QUxJTksoYW5hbWU9PnN1bXRpKX1z dW10aXtBTElOS30nJwoKO19fJyd7QU5BTUUoKX1naXNtdXtBTkFNRX1naXNtdScnX186QmFzaWMg NS1sZXR0ZXIgbG9qYmFuIHJvb3Qgd29yZDsgdGhlIGJhc2ljIGdpc211IGxpc3QgaXMgYXZhaWxh YmxlIFtodHRwOi8vd3d3LmxvamJhbi5vcmcvcmVzb3VyY2VzLy4uL2ZpbGVzL2Jyb2NodXJlcy9n aXNtdS5odG1sfGhlcmVdCgo7X18nJ3tBTkFNRSgpfUpMe0FOQU1FfWp1J2kgbG9ieXBsaScnX18g KEF0dGVudGlvbiEgTG9qYmFuaWMgVXNlcnMpIChhbHNvIGtub3duIGFzIEpMKTpBIExvamJhbiBu ZXdzbGV0dGVyL2pvdXJuYWwuIFB1YmxpY2F0aW9uIGlzIGN1cnJlbnRseSBzdXNwZW5kZWQsIGJ1 dCB3ZSBhcmUgaG9waW5nIHRvIHJlc3VtZSBwdWJsaWNhdGlvbiBpbiBmdXR1cmUuIFtodHRwOi8v d3d3LmxvamJhbi5vcmcvcmVzb3VyY2VzLy4uL2ZpbGVzL2psfEJhY2sgaXNzdWVzIGFyZSBhdmFp bGFibGUgb25saW5lXS4KCjtfXycne0FOQU1FKCl9TEt7QU5BTUV9bGUgbG9qYm8ga2FybmknJ19f IChUaGUgTG9qYmFuaWMgSm91cm5hbCkgKGFsc28ga25vd24gYXMgTEspOkEgTG9qYmFuIG5ld3Ns ZXR0ZXIgaW50ZW5kZWQgdG8ga2VlcCBvdXIgbG93ZXN0IGxldmVsIG9mIHN1cHBvcnRlcnMgaW5m b3JtZWQgYXMgdG8gd2hhdCBpcyBnb2luZyBvbiAoaW4gaG9wZXMgb2YgaW5zcGlyaW5nIGdyZWF0 ZXIgYWN0aXZpdHkpLiAgQWxzbyBjdXJyZW50bHkgc3VzcGVuZGVkLgoKO19fJyd7QU5BTUUoKX1s ZSdhdmxhe0FOQU1FfWxlJ2F2bGEnJ19fOlRoZSBvbGQgd29yZCBmb3IgJyd7QUxJTksoYW5hbWU9 PmZ1J2l2bGEpfWZ1J2l2bGF7QUxJTkt9JycKCjtfX3tBTkFNRSgpfUxMR3tBTkFNRX1Mb2dpY2Fs IExhbmd1YWdlIEdyb3VwIChMTEcpX186IFRoZSBbVGhlIExvZ2ljYWwgTGFuZ3VhZ2UgR3JvdXB8 TG9naWNhbCBMYW5ndWFnZSBHcm91cF0gaXMgbGVnYWxseSBpbiBjaGFyZ2Ugb2YgdGhlIGRldmVs b3BtZW50IGFuZCBtYWludGVuYW5jZSBvZiAnJ2xvamJhbicnLiBJdCBhbHNvIHdvcmtzIHRvIHBy b21vdGUgdGhlIHVzZSBvZiAnJ2xvamJhbicnIHRocm91Z2hvdXQgdGhlIHdvcmxkLiAKCjtfXycn e0FOQU1FKCl9bHVqdm97QU5BTUV9bHVqdm8nJ19fOkNvbXBvdW5kIHdvcmQKCjtfX3tBTkFNRSgp fW1vZGFse0FOQU1FfW1vZGFsX186QSB3b3JkIGZvciAnJ3tBTElOSyhhbmFtZT0+c3VtdGNpdGEp fXN1bXRjaXRhe0FMSU5LfScnIHdob3NlIGV4YWN0IGRlcml2YXRpb24gaXMgbG9zdCBpbiB0aGUg aGlzdG9yeSBvZiB0aGUgTG9qYmFuIHByb2plY3QKCjtfXycne0FOQU1FKCl9cGUnaXtBTkFNRX1w ZSdpJydfXzpBbiBhdHRpdHVkaW5hbCBtZWFuaW5nICJJbiBteSBvcGluaW9uIgoKO19fe0FOQU1F KCl9cGxhY2VzdHJ1Y3R1cmV7QU5BTUV9cGxhY2Ugc3RydWN0dXJlX186VGhlIHNwZWNpZmllZCBj YW5vbmljYWwgb3JkZXIgb2YgJyd7QUxJTksoYW5hbWU9PmJyaWRpKX1icmlkaXtBTElOS30nJywg c28gdGhhdCB5b3Uga25vdyB3aG8gaXMgZG9pbmcgd2hhdCB0byB3aG9tLgoKO19fJyd7QU5BTUUo KX1yYWZzaXtBTkFNRX1yYWZzaScnX186QnVpbGRpbmcgYmxvY2socykgb2YgJyd7QUxJTksoYW5h bWU9Pmx1anZvKX1sdWp2b3tBTElOS30nJyBjb21wb3VuZCB3b3JkcwoKO19fJyd7QU5BTUUoKX1z ZWxicml7QU5BTUV9c2VsYnJpJydfXzpUaGUgcGFydCBvZiBhIExvamJhbiBzZW50ZW5jZSB0aGF0 IGV4cHJlc3NlcyB0aGUgcmVsYXRpb25zaGlwIGJldHdlZW4gdGhlIHZhcmlvdXMgb2JqZWN0cyAo Jyd7QUxJTksoYW5hbWU9PnN1bXRpKX1zdW10aXtBTElOS30nJykKCjtfXycne0FOQU1FKCl9c2Vs bWEnb3tBTkFNRX1zZWxtYSdvJydfXzpQYXJ0IG9mIHNwZWVjaAoKO19fJyd7QU5BTUUoKX1zbGlu a3UnaXtBTkFNRX1zbGlua3UnaScnX186QSBoeXBvdGhldGljYWwgYm9ycm93ZWQgd29yZCwgd2hp Y2ggd291bGQgbm90IGJlIGxlZ2FsIGJlY2F1c2UgaXQgY291bGQgYmUgaW50ZXJwcmV0ZWQgYXMg cGFydHMgb2Ygb3RoZXIgd29yZHMgaW4gc29tZSBjb250ZXh0cy4KCjtfXycne0FOQU1FKCl9c3Vt dGl7QU5BTUV9c3VtdGknJ19fOkFuIG9iamVjdCBvciBpZGVhIHdoaWNoIG1heSBiZSByZWxhdGVk IHRvIG90aGVycywgdGhhdCByZWxhdGlvbnNoaXAgYmVpbmcgZXhwcmVzc2VkIGluIGEgTG9qYmFu ICcne0FMSU5LKGFuYW1lPT5icmlkaSl9YnJpZGl7QUxJTkt9JycKCjtfXycne0FOQU1FKCl9c3Vt dGNpdGF7QU5BTUV9c3VtdGNpdGEnJ19fOkxvamJhbiBwcmVwb3NpdGlvbnMvYWR2ZXJicwoKO19f Jyd7QU5BTUUoKX10YW5ydXtBTkFNRX10YW5ydScnX186QSBwaHJhc2UgZm9ybWVkIG9mIHR3byBv ciBtb3JlIExvamJhbiAnJ3tBTElOSyhhbmFtZT0+YnJpdmxhKX1icml2bGF7QUxJTkt9JycKCjtf X3tBTkFNRSgpfVRMSXtBTkFNRX1UTElfXzpbaHR0cDovL3d3dy5sb2dsYW4ub3JnL3xUaGUgTG9n bGFuIEluc3RpdHV0ZV0KCgoKe0FOQU1FKCl9VDJ7QU5BTUV9VDIuX19Ib3cgZG8geW91IGJvcnJv dyB3b3JkcyBmcm9tIG90aGVyIGxhbmd1YWdlcz9fXwoKCgpUaGVyZSBhcmUgZm91ciB3YXlzIHRv IGJvcnJvdyB3b3Jkcy4gT25seSB0aGUgbW9zdCBjb21tb24gbWV0aG9kIGlzIGNvdmVyZWQgaGVy ZTsgc2VlIHRoZSBbaHR0cDovL3d3dy5sb2piYW4ub3JnL3B1YmxpY2F0aW9ucy9yZWZlcmVuY2Vf Z3JhbW1hci9jaGFwdGVyNC5odG1sI3M3fExvamJhbiBSZWZlcmVuY2UgR3JhbW1hciAoQ2hhcHRl ciA0LCBTZWN0aW9uIDcpXSBmb3IgbW9yZSBkZXRhaWwuIEJvcnJvd2VkIHdvcmRzIGFyZSBjYWxs ZWQgJyd7QUxJTksoYW5hbWU9PmZ1J2l2bGEpfWZ1J2l2bGF7QUxJTkt9JycsIG1lYW5pbmcgYXBw cm94aW1hdGVseSAiY29waWVkIHdvcmRzIiAoYWZ0ZXIgYWxsLCAiYm9ycm93aW5nIiBpbXBsaWVz IHdlJ3JlIGdvaW5nIHRvIGdpdmUgdGhlbSBiYWNrIHNvbWVkYXkhKS4KCgoKVGhlIHVzZSBvZiAn J3tBTElOSyhhbmFtZT0+bHVqdm8pfWx1anZve0FMSU5LfScnIGlzIG5vdCBhbHdheXMgYXBwcm9w cmlhdGUgZm9yIHZlcnkgY29uY3JldGUgb3Igc3BlY2lmaWMgdGVybXMgKGUuIGcuICJicmllLCIg b3IgImNvYnJhIiksIG9yIGZvciBqYXJnb24gd29yZHMgc3BlY2lhbGl6ZWQgdG8gYSBuYXJyb3cg ZmllbGQgKGUuIGcuICJxdWFyaywiICJpbnRlZ3JhbCwiIG9yICJpYW1iaWMgcGVudGFtZXRlciIp LiBUaGVzZSB3b3JkcyBhcmUgaW4gZWZmZWN0ICcnbmFtZXMnJyBmb3IgY29uY2VwdHMsIGFuZCB0 aGUgbmFtZXMgd2VyZSBpbnZlbnRlZCBieSBzcGVha2VycyBvZiBhbm90aGVyIGxhbmd1YWdlLiBU aGUgdmFzdCBtYWpvcml0eSBvZiBuYW1lcyBmb3IgcGxhbnRzLCBhbmltYWxzLCBmb29kcywgYW5k IHNjaWVudGlmaWMgdGVybWlub2xvZ3kgY2Fubm90IGJlIGVhc2lseSBleHByZXNzZWQgYXMgJyd7 QUxJTksoYW5hbWU9PnRhbnJ1KX10YW5ydXtBTElOS30nJy4gVGhleSB0aHVzIG11c3QgYmUgImJv cnJvd2VkIiAoYWN0dWFsbHksIHRha2VuKSBpbnRvIExvamJhbiBmcm9tIHRoZSBvcmlnaW5hbCBs YW5ndWFnZSwgZm9ybWluZyB3b3JkcyBjYWxsZWQgJyd7QUxJTksoYW5hbWU9PmZ1J2l2bGEpfWZ1 J2l2bGF7QUxJTkt9JycuIFRoZSB3b3JkIG11c3QgYmUgTG9qYmFuaXplZCBpbnRvIG9uZSBvZiBz ZXZlcmFsIHBlcm1pdHRlZCAnJ3tBTElOSyhhbmFtZT0+cmFmc2kpfXJhZnNpe0FMSU5LfScnIGlz IHRoZW4gYXR0YWNoZWQgdG8gdGhlIGJlZ2lubmluZyBvZiB0aGUgTG9qYmFuaXplZCBmb3JtLCB1 c3VhbGx5IHVzaW5nIGEgdm9jYWxpYyBjb25zb25hbnQgYXMgImdsdWUiIHRvIGVuc3VyZSB0aGF0 IHRoZSByZXN1bHRpbmcgd29yZCBkb2Vzbid0IGZhbGwgYXBhcnQuIFRoZSAnJ3tBTElOSyhhbmFt ZT0+cmFmc2kpfXJhZnNpe0FMSU5LfScnIGNhdGVnb3JpemVzIG9yIGxpbWl0cyB0aGUgbWVhbmlu ZyBvZiB0aGUgJyd7QUxJTksoYW5hbWU9PmZ1J2l2bGEpfWZ1J2l2bGF7QUxJTkt9Jyc7IG90aGVy d2lzZSBhIHdvcmQgaGF2aW5nIHNldmVyYWwgZGlmZmVyZW50IGphcmdvbiBtZWFuaW5ncyBpbiBv dGhlciBsYW5ndWFnZXMgKHN1Y2ggYXMgImludGVncmFsIiksIHdvdWxkIHJlcXVpcmUgYSBjaG9p Y2UgbWFkZSBhcyB0byB3aGljaCBtZWFuaW5nIHNob3VsZCBiZSBhc3NpZ25lZCB0byB0aGUgJyd7 QUxJTksoYW5hbWU9PmZ1J2l2bGEpfWZ1J2l2bGF7QUxJTkt9JycuICcne0FMSU5LKGFuYW1lPT5m dSdpdmxhKX1mdSdpdmxhe0FMSU5LfScnLCBsaWtlIG90aGVyICcne0FMSU5LKGFuYW1lPT5icml2 bGEpfWJyaXZsYXtBTElOS30nJywgYXJlIG5vdCBwZXJtaXR0ZWQgdG8gaGF2ZSBtb3JlIHRoYW4g b25lIGRlZmluaXRpb24uIAoKCgpTdW1tYXJpemluZyB0aGUgbW9zdCBjb21tb24gbWV0aG9kIHRv IG1ha2UgJyd7QUxJTksoYW5hbWU9PmZ1J2l2bGEpfWZ1J2l2bGF7QUxJTkt9Jyc6IAoKCgojIExv amJhbml6ZSB0aGUgd29yZCB0byBiZSBib3Jyb3dlZCBieSB0aGUgbWV0aG9kcyB1c2VkIGZvciAn J3tBTElOSyhhbmFtZT0+Y21lbmUpfWNtZW5le0FMSU5LfScnLgoKIyBDb252ZXJ0IGFsbCAieSJz IHRvIHNvbWUgb3RoZXIgdm93ZWwgb3IgdG8gYSB2b2NhbGljIGNvbnNvbmFudC4KCiMgTW9kaWZ5 IHRoZSBlbmRpbmcgdG8gYmUgYSB2b3dlbCwgZWl0aGVyIGJ5IGRyb3BwaW5nIGEgZmluYWwgY29u c29uYW50IG9yIGJ5IGFkZGluZyBhbiBleHRyYSB2b3dlbC4KCiMgTW9kaWZ5IHRoZSBiZWdpbm5p bmcgdG8gYmUgYSBjb25zb25hbnQsIGVpdGhlciBieSBhZGRpbmcgYW4gZXh0cmEgY29uc29uYW50 IG9yIGRyb3BwaW5nIGFuIGluaXRpYWwgdm93ZWwuCgojIENob29zZSBhICcne0FMSU5LKGFuYW1l PT5naXNtdSl9Z2lzbXV7QUxJTkt9JycgKG5vdCBhICcne0FMSU5LKGFuYW1lPT5yYWZzaSl9cmFm c2l7QUxJTkt9JycpIHRoYXQgY2F0ZWdvcml6ZXMgdGhlICcne0FMSU5LKGFuYW1lPT5mdSdpdmxh KX1mdSdpdmxhe0FMSU5LfScnIGludG8gYSAidG9waWMgYXJlYS4iIFJlcGxhY2UgdGhlIGZpbmFs IHZvd2VsIG9mIHRoZSAnJ3tBTElOSyhhbmFtZT0+Z2lzbXUpfWdpc211e0FMSU5LfScnIHdpdGgg YSB2b2NhbGljICJyIi4gCgojIFByZWZpeCB0aGUgbW9kaWZpZWQgJyd7QUxJTksoYW5hbWU9PmZ1 J2l2bGEpfWZ1J2l2bGF7QUxJTkt9JycuCgoKCkV4YW1wbGVzOiAKCnx8X19FbmdsaXNoX198X18n J2xvamJhbicnX18KCnNwYWdoZXR0aXwnJ2NpZGpyc3BhZ2V0aScnIG9yICcnZGphcnNwYWdldGkn JwoKbWFwbGUgdHJlZXwnJ3RyaWNybWVpcGxpJycKCm1hcGxlIHN1Z2FyfCcnc2FrdHJtZWlwbGkn JwoKbWF0aGVtYXRpY2FsIGludGVncmFsfCcnY21hY3JuaW50ZWdyYScnIG9yICcnY21hY3JudGVn cmEnJwoKYnJpZXwnJ2NpcmxyYnJpJycKCmNvYnJhfCcnc2luY3Jrb2JyYScnCgpxdWFya3wnJ3Nh c2tya3VhcmthJycKCmlhbWJpY3wnJ3BlbWNybmlhbWJvJyd8fAoKCgpBICcne0FMSU5LKGFuYW1l PT5mdSdpdmxhKX1mdSdpdmxhe0FMSU5LfScnIHRodXMgY29uc2lzdHMgb2YgdGhyZWUgcGFydHM6 IHRoZSBjbGFzc2lmaWVyLCB0aGUgZ2x1ZSwgYW5kIHRoZSBib3Jyb3dlZCBwYXJ0CgoKCgoKVGhl IHF1aW50ZXNzZW50aWFsIGV4YW1wbGUgaXMgJydkamFyc3BhZ2V0aScnLCBtZWFuaW5nICJzcGFn aGV0dGkuIiAnJ2RqYScnIGlzIHRoZSBjbGFzc2lmaWVyOiBpdCBpcyB0aGUgc2hvcnQgZm9ybSAn J3tBTElOSyhhbmFtZT0+cmFmc2kpfXJhZnNpe0FMSU5LfScnIGZvciAnJ2NpZGphJycsIG1lYW5p bmcgImZvb2QuIiAiciIgaXMgdGhlIGdsdWU6IGl0IGlzIG5lY2Vzc2FyeSB0byBrZWVwIHRoZSB3 b3JkIGZyb20gZmFsbGluZyBpbnRvIHR3byBwYXJ0cy4gJydzcGFnZXRpJycgaXMgdGhlIExvamJh bml6ZWQgdmVyc2lvbiBvZiAic3BhZ2hldHRpLiIgVGhlIGNsYXNzaWZpZXIgaXMgZ2x1ZWQgb24g dGhlIGZyb250IGZvciB0d28gcmVhc29uczogaXQgaGVscHMgaWRlbnRpZnkgc3RyYW5nZSBib3Jy b3dpbmdzLCBhbmQgaXQgcHJldmVudHMgYm9ycm93aW5ncyB0aGF0IGhhcHBlbiB0byBjb2luY2lk ZSB3aXRoIHRoaW5ncyB0aGF0IGFyZSBhbHJlYWR5IExvamJhbiB3b3Jkcy4gRm9yIGV4YW1wbGUg aWYgeW91IGJvcnJvd2VkIHRoZSB3b3JkICJzcGFnZXRpIiBkaXJlY3RseSwgaXQgY291bGQgbGVh ZCB0byBhbWJpZ3VpdHkgaW4gYSBwaHJhc2UgbGlrZQoKCgonJ2tvIGJldnJpIHJlIHNwYWdldGkg cGFsdGEnJwoKCgp3aGljaCBjb3VsZCBtZWFuICJCcmluZyB0d28gcGxhdGVzIG9mIHNwYWdoZXR0 aSIgb3Igc29tZXRoaW5nIGxpa2UgIkJlIGEgY2FycnlpbmctcmVwdGlsZSBhbmQgYSBwbGF0ZSBt YWRlIG9mIHRoaXMiOiAKCgoKJydrbyBiZXZyaSByZXNwYSBnZSB0aSBwYWx0YScnCgoKCkluIGEg bmF0dXJhbCBsYW5ndWFnZSB0aGVyZSB3b3VsZCBiZSBubyBkb3VidCB3aGljaCBvZiB0aGUgdHdv IHdhcyBtZWFudCwgYnV0IExvamJhbiBpcyBjb25zdHJ1Y3RlZCBzbyB0aGF0IHlvdSBzaG91bGRu J3QgbmVlZCB0byB1bmRlcnN0YW5kIHRoZSBzZW50ZW5jZSB0byBrbm93IHdoZXJlIG9uZSB3b3Jk IGVuZHMgYW5kIHRoZSBuZXh0IGJlZ2lucy4KCgoKe0FOQU1FKCl9VDN7QU5BTUV9VDMuX19Jc24n dCBpdCBjb25mdXNpbmcgdGhhdCBzb21lICcne0FMSU5LKGFuYW1lPT5yYWZzaSl9cmFmc2l7QUxJ Tkt9JycgYXJlIGlkZW50aWNhbCB0byAnJ3tBTElOSyhhbmFtZT0+Y21hdm8pfWNtYXZve0FMSU5L fScnP19fCgoKCk5vLCBpdCBpc24ndC4gSW4gdGhlb3J5IHlvdSBjYW4gdGVsbCBjb21wbGV0ZWx5 IGZyb20gdGhlIG5laWdoYm9yaW5nIHN5bGxhYmxlcyB3aGV0aGVyIHNvbWV0aGluZyBpcyBhICcn e0FMSU5LKGFuYW1lPT5yYWZzaSl9cmFmc2l7QUxJTkt9JycuIFRoaXMgaXMgaG93IHRoZSBjb21w dXRlciBpcyBhYmxlIHRvIHBhcnNlIExvamJhbiB3aXRob3V0IHVuZGVyc3RhbmRpbmcgaXRzIG1l YW5pbmcuIEZvciBleGFtcGxlIHRoZSAnJ2RlaScnIGluICcnYmF2bGFtZGVpJycgKCJ0b21vcnJv dyIpIGlzIGEgJyd7QUxJTksoYW5hbWU9PnJhZnNpKX1yYWZzaXtBTElOS30nJyBmb3IgImRheSwi IG5vdCB0aGUgJyd7QUxJTksoYW5hbWU9PmNtYXZvKX1jbWF2b3tBTElOS30nJycnZGVpJycsIGEg c3BlY2lhbCBwcm9ub3VuIG1lYW5pbmcgInRoaXMgc2VudGVuY2UuIiBXZSBrbm93IHdoaWNoIGlz IHdoaWNoIGJlY2F1c2UgTG9qYmFuIHdvcmRzIGNhbid0IGVuZCBpbiBhIGNvbnNvbmFudCwgc28g JydkZWknJycnbXVzdCcnIGJlIGEgcGFydCBvZiAnJ2JhdmxhbWRlaScnOyAiYmF2TEFNIiBjYW4n dCBiZSBhIHdob2xlIHdvcmQuIChObywgaXQgY2FuJ3QgYmUgYSBuYW1lLCBlaXRoZXIuIE5hbWVz IGVuZCB3aXRoIGEgY29uc29uYW50IGZvbGxvd2VkIGJ5IGEgcGF1c2UsIHdyaXR0ZW4gYXMgYSAi JycuJyciKSBJbiBwcmFjdGljZSB5b3UgY2FuIGFsc28gdXNlIHlvdXIga25vd2xlZGdlIG9mIHRo ZSBtZWFuaW5ncyBvZiB0aGUgd29yZHMgdG8gaGVscCB3aXRoIHRoaXM7IGl0IGlzIHBvc3NpYmxl IHRvIHRoaW5rIHVwIGEgc2VudGVuY2UgbGlrZSAKCgoKJydsYSBiYXZMQU0uIGRlaSBjdXNrdScn LCAKCgoKIkJhdmxhbSBzYXlzIHRoaXMgc2VudGVuY2UuIiwgYnV0IGl0IGlzIG5vdCBsaWtlbHkg aW4gcHJhY3RpY2UgaWYgeW91IGRvbid0IGtub3cgYW55b25lIG5hbWVkICJCYXZsYW0iISAKCgoK e0FOQU1FKCl9VDR7QU5BTUV9VDQuX19XaHkgZG8gc29tZSB0ZXh0cyB1c2UgImgiIGluc3RlYWQg b2YgJycnJycgKHNpbmdsZSBxdW90ZSksIG9yIGhhdmUgcGFyZW50aGVzZXMsIG9yIG90aGVyIG5v bi1zdGFuZGFyZCBjb252ZW50aW9ucz9fXwoKCgpBZXN0aGV0aWMgcmVhc29ucy4gKChBbmQgUm9z dGEpKSBpbiBwYXJ0aWN1bGFyIHRoaW5rcyAnJ21vaGknJyBsb29rcyBiZXR0ZXIgaW4gcHJpbnQg dGhhbiAnJ21vJ2knJyAoc3BhY2UgbW90aW9uKSBhbmQgc29tZXRpbWVzIHVzZXMgaXQgdGhlIGhv cGVzIHRoYXQgaGUgY2FuIGluZmx1ZW5jZSB0aGUgKChMb2piYW5pYyBDb21tdW5pdHkgTGlua3N8 TG9qYmFuIGNvbW11bml0eSkpIHRvIGFjY2VwdCB0aGlzIG90aGVyIHNwZWxsaW5nIGNvbnZlbnRp b24uIFRoaXMgaXMgcHVyZWx5IGEgZGlmZmVyZW5jZSBpbiBzcGVsbGluZzsgdGhleSBhcmUgcHJv bm91bmNlZCB0aGUgc2FtZSwgYW5kIHNob3VsZCBiZSBjb25zaWRlcmVkIGRpZmZlcmVudCB3YXlz IG9mIHdyaXRpbmcgdGhlIHNhbWUgImxldHRlci4iIFRoaXMgYWx0ZXJuYXRlIHNwZWxsaW5nIGFs c28gaXMgc29tZXdoYXQgY2xvc2VyIHRvIHRoZSBzcGVsbGluZyBvZiBbVGhlIExvZ2xhbiBJbnN0 aXR1dGV8VExJXSBMb2dsYW4uIFRoZXJlIGlzIGFub3RoZXIgc2ltaWxhciBzcGVsbGluZyBjb252 ZW50aW9uLCB3aGljaCBoYXMgbmV2ZXIgYmVlbiB1c2VkLCBkZXNpZ25lZCB0byBtYWtlIExvamJh biBsb29rIG1vcmUgZmFtaWxpYXIgdG8gcG90ZW50aWFsIGNvbnZlcnRzIGZyb20gW1RoZSBMb2ds YW4gSW5zdGl0dXRlfFRMSV0uIFRoaXMgYWx0ZXJuYXRlIGNvbnZlbnRpb24gbWF5IGJlIGZvdW5k IGluIHRoZSBbaHR0cDovL3d3dy5sb2piYW4ub3JnL3B1YmxpY2F0aW9ucy9yZWZlcmVuY2VfZ3Jh bW1hci9jaGFwdGVyMy5odG1sI3MxMnxMb2piYW4gUmVmZXJlbmNlIEdyYW1tYXJdLiAKCgoKVGhl cmUgYXJlIGEgbnVtYmVyIG9mIG90aGVyIG5vbi1zdGFuZGFyZCBzcGVsbGluZyBjb252ZW50aW9u czogCgoKCigoQW5kIFJvc3RhKSkgaGFzIChvciBhdCBsZWFzdCAnJ2hhZCcnKSBhIHN0eWxlIGlu IHdoaWNoICcnJycnIChzaW5nbGUgcXVvdGUpIGlzIG9taXR0ZWQgYWx0b2dldGhlciB3aGVyZSB0 aGUgdm93ZWxzIGNvdWxkbid0IHBvc3NpYmx5IGJlIHN0dWNrIHRvZ2V0aGVyOyBmb3IgZXhhbXBs ZSwgaGUnZCB3cml0ZSAnJ2NvZScnIGZvciAnJ2NvJ2UnJyAodW5zcGVjaWZpZWQgYnJpZGkpLCBz aW5jZSAib2UiIGlzIG5vdCBhIGxlZ2FsIGNvbWJpbmF0aW9uLiBIZSBoYXMgdXNlZCAiLiIgKHBl cmlvZCkgYXMgaW4gRW5nbGlzaCwgdG8gZW5kIGEgc2VudGVuY2UsIHJhdGhlciB0aGFuIGFzIGEg cGF1c2UuIEhlIGhhcyBjYXBpdGFsaXplZCB0aGUgZmlyc3Qgd29yZCBvZiB0aGUgc2VudGVuY2Uu IAoKCgooKFhvZCkpIG9mdGVuIHVzZXMgLyAoYSBmb3J3YXJkIHNsYXNoKSBvciBwYXJlbnRoZXNl cyB0byBtYXJrIGNsYXVzZXMgb3V0IHdoZW4gd3JpdGluZyBpbiBsb2piYW4uICBIZSBhbHNvIHVz ZXMgYSBzaW5nbGUgY2FwaXRhbCBsZXR0ZXIgZm9yIGFjcm9ueW1zIGluc3RlYWQgb2YgdGhlIGxv amJhbiBsZXR0ZXJhbHMgKGkuZS4gQSBpbnN0ZWFkIG9mIC5hYnUuKS4KCgoKVGhlcmUgaGF2ZSBi ZWVuIG90aGVycy4gIEluIGdlbmVyYWwsIHRoZXkgYXJlIGFsbCBxdWl0ZSB1bmRlcnN0YW5kYWJs ZSBieSBhIGNvbXBldGVudCBsb2piYW5pYyBwZXJzb24sIHdpdGggdGhlIHBvc3NpYmxlIGV4Y2Vw dGlvbiBvZiBBbmQncyByZW1vdmFsIG9mICcnJycnIChzaW5nbGUgcXVvdGUpLgoKCgoKCntBTkFN RSgpfVQ1e0FOQU1FfVQ1Ll9fV2h5IGRvZXMgaXQgaGF2ZSBhIHNwZWNpYWwgbWVhbmluZyB3aGVu IHRoZSAnJ3tBTElOSyhhbmFtZT0+c2VsYnJpKX1zZWxicml7QUxJTkt9JycgY29tZXMgZmlyc3Q/ X18KCgoKSW4gTG9nbGFuIGl0IHVzZWQgdG8gYmUgYSBjb21tYW5kLCBidXQgbm93IHdlIHVzZSBl aXRoZXIgJydrbycnIChpbXBlcmF0aXZlKSBvciB7QUxJTksoYW5hbWU9PmF0dGl0dWRpbmFsKX1h dHRpdHVkaW5hbHN7QUxJTkt9LiAgSW4gYSBzaW1wbGUgYnJpZGksIGhhdmluZyB0aGUgc2VsYnJp IGF0IHRoZSBiZWdpbm5pbmcgbWFrZSBpdCBhbiBvYnNlcnZhdGl2ZSwgd2hpY2ggbWVhbnMgeW91 IGFyZSBzdGF0aW5nIHRoYXQgeW91IGFyZSBvYnNlcnZpbmcgdGhlIHJlbGF0aW9uc2hpcCBpbiBx dWVzdGlvbiAobXVjaCBsaWtlIHNheWluZyAiRmlyZSEiIGluIEVuZ2xpc2gsIGV4Y2VwdCB3aXRo b3V0IG5lY2Vzc2FyaWx5IGNhcnJ5aW5nIGVtb3Rpb25hbCBjb25ub3RhdGlvbnMpLgoKCgoKCklu IGEgJydwb2kgYnJvZGEnJyAod2hpY2ggZG9lcy9pcyBzb21ldGhpbmctb3Itb3RoZXIpIHBocmFz ZSwgaXQgaXMgbGlrZWx5IHRoYXQgeW91J2xsIHdhbnQgeHtTVUIoKX0xe1NVQn0gdG8gYmUgJydr ZSdhJycgYW5kIHRvIGV4cGxpY2l0bHkgc3RhdGUgeHtTVUIoKX0ye1NVQn0uIElmIHZlcmItaW5p dGlhbCBvcmRlcmluZyAoYWxzbyBjYWxsZWQgVi1pbml0aWFsKSB3YXNuJ3Qgc3BlY2lhbCwgYW5k IGlmIHN5bnRheCB3aXRoaW4gYSAnJ3BvaScnIChyZXN0cmljdGl2ZSBjbGF1c2UpIHdhcyBjb25z aXN0ZW50IHdpdGggc2VudGVuY2UtbGV2ZWwgc3ludGF4LCB0aGVuIHlvdSdkIGhhdmUgdG8gZXhw bGljaXRseSB1c2UgJydmZScnIChzZWNvbmQgc3VtdGkgcGxhY2UpIG9yICcnem8nZScnICh1bnNw ZWNpZmllZCBpdCkgb3IgJydrZSdhJycgdG8gZ2V0IHRvIHRoZSB4e1NVQigpfTJ7U1VCfS4gRm9y IGV4YW1wbGUsIG5vdyB3ZSBzYXkgCgoKCicnbGUgbmFubXUgcG9pIHByYW1pIG1pJycgKFRoZSBt YW4gd2hpY2ggbG92ZXMgbWUpIAoKCgphbmQgdGhlIHh7U1VCKCl9MXtTVUJ9IG9mICcncHJhbWkn JyAobG92ZSkgaXMgZWxpZGVkLCBhbmQgd2UgY2FuIGFzc3VtZSBpdCBpcyAnJ2tlJ2EnJywgd2hp Y2ggaGVyZSBlcXVhbHMgJydsZSBuYW5tdScnIChUaGUvYSBtYW4vbWVuKS4gV2l0aG91dCB0aGlz IHNwZWNpYWwgdHJlYXRtZW50IG9mIFYtaW5pdGlhbCwgd2UnZCBoYXZlIHRvIHNheSAKCgoKJyds ZSBuYW5tdSBwb2kga2UnYSBwcmFtaSBtaScnIChUaGUgbWFuIHdoaWNoIGxvdmVzIG1lKSAKCgoK b3IgCgoKCicnbGUgbmFubXUgcG9pIGtlJ2EgbWkgcHJhbWkuJycgKFRoZSBtYW4gd2hpY2ggbG92 ZXMgbWUpIAoKCgpTbzogaXQgc2F2ZXMgMiBzeWxsYWJsZXMgaW4gd2hhdCBpcyBhcmd1YWJseSB0 aGUgbW9zdCBjb21tb24gd2F5IG9mIHVzaW5nICcncG9pJycgKHJlc3RyaWN0aXZlIGNsYXVzZSku IE1heSBvciBtYXkgbm90IGJlIHdvcnRoIGl0LCBkZXBlbmRpbmcgb24gaG93IHlvdSB2YWx1ZSB3 b3JkLW9yZGVyIGZsZXhpYmlsaXR5IHZzLiBicmV2aXR5LiBJbiBnZW5lcmFsIGl0IGxldHMgeW91 IGVhc2lseSBnZXQgdG8geHtTVUIoKX0ye1NVQn0gaW4gc2VudGVuY2VzIHdpdGhvdXQgYW4geHtT VUIoKX0xe1NVQn0uIAoKCgpSZW1lbWJlcjogVGhlcmUncyBhbHdheXMgbW9yZSB0aGFuIG9uZSB3 YXkgdG8gZG8gaXQgaW4gJydsb2piYW4nJy4gCgoKCntBTkFNRSgpfVQ2e0FOQU1FfVQ2Ll9fV2h5 IGFyZSB0aGVyZSBzbyBtYW55IHdvcmRzIGZvciBBTkQ/IFdoeSBub3QganVzdCBsZXQgIicnLmUn JyIgKGFuZCwgYmV0d2VlbiBzdW10aSkgY29ubmVjdCB0d28gJyd7QUxJTksoYW5hbWU9PmJyaWRp KX1icmlkaXtBTElOS30nJywgJydicmlkaScnLXRhaWxzIChhIHByZWRpY2F0ZSBhbmQgYSBzdW10 aSksIG9yIGFueXRoaW5nIGVsc2U/X18KCgoKV2UgdXNlIGRpZmZlcmVudCBjb25uZWN0aXZlcyBm b3IgZGlmZmVyZW50IHNjb3Blcy4gRG9pbmcgc28gaGVscHMgdGhlIGxpc3RlbmVyIGtlZXAgdHJh Y2sgb2Ygd2hhdCBleGFjdGx5IHRoZSBzcGVha2VyIHdhbnRzIGNvbm5lY3RlZC4gVGhpcyBpcyAn J211Y2gnJyBtb3JlIGltcG9ydGFudCBpbiBzcGVlY2ggdGhhbiBpbiB0ZXh0LCBiZWNhdXNlIGlu IHRleHQgeW91IGNhbiByZS1yZWFkIGFuZCBwb25kZXIuIElmIHlvdSBoYXZlIGEgbXVsdGktcGFy dCBuZXN0ZWQgJyd7QUxJTksoYW5hbWU9PnN1bXRpKX1zdW10aXtBTElOS30nJyBqb2luZWQgdG8g YW5vdGhlciBtdWx0aS1wYXJ0IG5lc3RlZCAnJ3tBTElOSyhhbmFtZT0+c3VtdGkpfXN1bXRpe0FM SU5LfScnLCBoYXZpbmcgY2xlYXIgaW5kaWNhdG9ycyBvZiBzY29wZSBtYXkgbWFrZSB0aGUgc2Vu dGVuY2UgdW5kZXJzdGFuZGFibGUgd2hlbiBvdGhlcndpc2UgaXQgaXMgbm90LiBJdCBpcyB0aGVy ZWZvcmUgaG9wZWQgdGhhdCBzcG9rZW4gTG9qYmFuIGFuZCB3cml0dGVuIExvamJhbiBjYW4gYmUg c2ltaWxhciBpbiBsZXZlbCBvZiBjb21wbGV4aXR5LiAoWW91IGtub3csIHtBTElOSyhhbmFtZT0+ YXVkaW92aXN1YWxpc29tb3JwaGlzbSl9YXVkaW92aXN1YWwgaXNvbW9ycGhpc217QUxJTkt9Likg CgoKCntBTkFNRSgpfVQ3e0FOQU1FfVQ3Ll9fSXMgdGhlICdzJyBhdCB0aGUgZW5kIG9mIGxvamJh bml6ZWQgbmFtZXMgKHN1Y2ggYXMgJ25vcmFzLicpIHNpbGVudD9fXwoKCgpOby4gJ25vcmFzLicg aXMgcmVhbGx5IHByb25vdW5jZWQgd2l0aCBhbiAncycgYXQgdGhlIGVuZC4KCgoKU29tZSBsYW5n dWFnZXMgY2FuIGJvcnJvdyBuYW1lcyB3aXRoIHZpcnR1YWxseSBubyBjaGFuZ2VzLCBidXQgTG9q YmFuIGlzIG9uZSBvZiB0aGUgbGFuZ3VhZ2VzIHRoYXQgc29tZXRpbWVzIHJlcXVpcmVzIHF1aXRl IGhlYXZ5IG1vZGlmaWNhdGlvbiBvZiB0aGUgbmFtZXMuIFNwZWNpZmljYWxseSwgYWxsIExvamJh biB3b3JkcyBvZiB0aGUgY2xhc3MgJyd7QUxJTksoYW5hbWU9PmNtZW5lKX1jbWVuZXtBTElOS30n JyBtdXN0IGFsd2F5cyBlbmQgaW4gYSBjb25zb25hbnQuIFNvbWV0aW1lcywgdGhpcyByZXF1aXJl cyByZW1vdmluZyBhIHZvd2VsIGF0IHRoZSBlbmQsIG9yIGFkZGluZyBhIGNvbnNvbmFudC4gQnkg Y29udmVudGlvbiwgdGhpcyBpcyBvZnRlbiAncycsIGJ1dCBpdCBjb3VsZCBiZSBhbnkgY29uc29u YW50LgoKCgpJZiBuYW1lcyB3ZXJlIG5vdCBjaGFuZ2VkIHRoaXMgd2F5LCBzb21lIG9mIHRoZW0g Y291bGQgYmUgbWlzdGFrZW4gZm9yIG90aGVyIHdvcmRzLCBvciBzZXF1ZW5jZXMgb2Ygd29yZHMu IEluIHRoaXMgY2FzZSwgd2VyZSB0aGVyZSBubyAncycgYXQgdGhlIGVuZCwgJ25vcmEnIHdvdWxk IHJlYWQgYXMgJ25vIHJhJywgaWUuICJub25lIG9mIHRoZW0iISBUaGlzIGRpc3RpbmN0aW9uIGlz IGFzIGltcG9ydGFudCBpbiBzcGVlY2ggYXMgaW4gd3JpdGluZywgc28gbmFtZXMsIGFzIGFueSBv dGhlciBMb2piYW4gd29yZCwgbXVzdCBiZSBwcm9ub3VuY2VkIGV4YWN0bHkgYXMgd3JpdHRlbi4g VGhlcmUgYXJlIG5vIHNpbGVudCBsZXR0ZXJzIGluIExvamJhbi4KCgoKCgohIVBST0pFQ1QgU1RB VFVTCgp7QU5BTUUoKX1QUzF7QU5BTUV9UFMxLl9fV2hhdCBwYXJ0cyBvZiB0aGUgbGFuZ3VhZ2Ug YXJlIHdlbGwgd29ya2VkIG91dCwgYW5kIHdoaWNoIHBhcnRzIGFyZSBpbiBmbHV4P19fCgoKCkFz IG9mIDE5OTcsIHRoZSBsYW5ndWFnZSBkZXNpZ24gaGFzIGJlZW4gYmFzZWxpbmVkIGZvciBhIG1p bmltdW0gb2YgNSB5ZWFycyBhZnRlciB0aGUgcHVibGljYXRpb24gb2YgdGhlIHRocmVlIGJvb2tz OiB0aGUgcmVmZXJlbmNlIGdyYW1tYXIsIHRoZSBkaWN0aW9uYXJ5LCBhbmQgdGhlIHRleHRib29r LiBTaW5jZSB0aGUgbGF0dGVyIHR3byBhcmUgbm90IG5lYXIgcHVibGljYXRpb24sIHRoaXMgbWVh bnMgdGhhdCBubyBjaGFuZ2VzIHRvIHRoZSBsYW5ndWFnZSB3aWxsIGV2ZW4gYmUgY29uc2lkZXJl ZCB1bnRpbCBhdCBsZWFzdCAyMDA2LiBUaGlzIGJhc2VsaW5lIGlzIG5vbi1uZWdvdGlhYmxlLCBl dmVuIGlmIHdlIGVudGVyIGludG8gZGlzY3Vzc2lvbnMgd2l0aCBUaGUgTG9nbGFuIEluc3RpdHV0 ZSB0byByZXVuaXRlIHRoZSBMb2dsYW4gY29tbXVuaXR5IG5vdyB0aGF0ICgoSmFtZXMgQ29va2Ug QnJvd258SkNCKSkgaGFzIHBhc3NlZCBvbi4KCgoKVGhlIHBob25vbG9neSwgb3J0aG9ncmFwaHks IGFuZCBtb3JwaG9sb2d5IGhhdmUgYmVlbiBlc3NlbnRpYWxseSBzdGFibGUgc2luY2UgMTk4OCwg ZXhjZXB0IGZvciBhIHNsaWdodCBjaGFuZ2UgaW4gd2hhdCBjb3VudHMgYXMgYSBsZWdhbCAnJ3tB TElOSyhhbmFtZT0+ZnUnaXZsYSl9ZnUnaXZsYXtBTElOS30nJy4gVGhlIFtodHRwOi8vd3d3Lmxv amJhbi5vcmcvcHVibGljYXRpb25zL3dvcmRsaXN0cy9naXNtdS50eHR8JydnaXNtdScnIGxpc3Rd IGhhcyBiZWVuIHN0YWJsZSBzaW5jZSAxOTg4LCBleGNlcHQgdGhhdCBhYm91dCAyNSAnJ3tBTElO SyhhbmFtZT0+Z2lzbXUpfWdpc211e0FMSU5LfScnIGhhdmUgYmVlbiBhZGRlZCBhbmQgMiAnJ3tB TElOSyhhbmFtZT0+Z2lzbXUpfWdpc211e0FMSU5LfScnIGhhZCBtaW5vciBjaGFuZ2VzIHVwIHVu dGlsIDE5OTQsIGJ1dCBzaW5jZSB0aGVuIG9ubHkgY2xhcmlmaWNhdGlvbnMgb2YgY29uZnVzaW5n IHdvcmRpbmcgaGF2ZSBiZWVuIG1hZGUgdG8gdGhlIG9mZmljaWFsIFtodHRwOi8vd3d3LmxvamJh bi5vcmcvcHVibGljYXRpb25zL3dvcmRsaXN0cy9naXNtdS50eHR8YmFzZWxpbmUgJydnaXNtdScn IGxpc3RdLCBhbmQgdGhleSBhcmUgbm93IGNvbnNpZGVyZWQgYmFzZWxpbmVkLiBUaGUgJyd7QUxJ TksoYW5hbWU9PnJhZnNpKX1yYWZzaXtBTElOS30nJyBoYXZlIGJlZW4gdW5jaGFuZ2VkIHNpbmNl IDE5OTMsIHdoZW4gYXJvdW5kIDIwJSB3ZXJlIGNoYW5nZWQgaW4gYSBmaW5hbCB0dW5pbmcgYmVm b3JlIGJhc2VsaW5pbmcgdGhlbS4gTXVjaCBleGlzdGluZyB0ZXh0IGhhcyBub3QgYmVlbiB1cGRh dGVkIGFmdGVyIHRoZSAnJ3tBTElOSyhhbmFtZT0+cmFmc2kpfXJhZnNpe0FMSU5LfScnIGNoYW5n ZSwgc28gdGV4dHMgZGF0ZWQgYmVmb3JlIDE5OTMgbWF5IGJlIGNvbmZ1c2luZy4gVGhlIGdyYW1t YXIgaGFzIGJlZW4gYmFzaWNhbGx5IHN0YWJsZSBzaW5jZSAxOTkzLCB3YXMgdW5kZXIgY2FyZWZ1 bCBkb2N1bWVudGVkIGNvbnRyb2wgYWZ0ZXIgdGhhdCBkYXRlLCBhbmQgZnJvemVuIHdpdGggdGhl IHB1YmxpY2F0aW9uIG9mICgoVGhlIENvbXBsZXRlIExvamJhbiBMYW5ndWFnZSkpIGluIDE5OTcu IFRoZSBbaHR0cDovL3d3dy5sb2piYW4ub3JnL3B1YmxpY2F0aW9ucy93b3JkbGlzdHMvY21hdm8u dHh0fCcnY21hdm8nJyBsaXN0XSBoYXMgYmVlbiBiYXNlbGluZWQgc2luY2UgMTk5NywgdGhvdWdo IG5ldyBjb21wb3VuZHMgbWF5IGJlIGRlZmluZWQgdGhyb3VnaCB1c2FnZS4gVGhlIG9ubHkgYXJl YSBub3QgZnJvemVuIGlzIHRoZSBhZGRpdGlvbiBvZiBuZXcgd29yZHMgdG8gdGhlIGxleGljb24g dGhyb3VnaCBib3Jyb3dpbmcgKCcne0FMSU5LKGFuYW1lPT5sdWp2byl9bHVqdm97QUxJTkt9Jycp LiBUaG9zZSB0d28gcHJvZHVjdGl2ZSBhcmVhcyBhcmUgb3Blbi1lbmRlZDsgYSBwcmltYXJ5IGxp bWl0YXRpb24gb24gdGhlIGxhbmd1YWdlIGRlZmluaXRpb24gaXMgdGhlIGluYWJpbGl0eSB0byBy ZWNvcmQgYW5kIGRlZmluZSBuZXcgY29pbmluZ3MgYXMgZmFzdCBhcyB0aGV5IGFyZSBpbnZlbnRl ZC4gCgoKClRoZSBiYXNpYyBzZW1hbnRpY3Mgb2YgdGhlIGxhbmd1YWdlIGFyZSBzdGFibGUuIFRo ZXJlIGFyZSBzdGlsbCBvbmdvaW5nIGRpc3B1dGVzIGFib3V0ICJob3cgdG8gc2F5IGl0IGJlc3Qg aW4gTG9qYmFuIjsgd2UgZXhwZWN0IHRoZXNlIHRvIGNvbnRpbnVlIGluZGVmaW5pdGVseS4gQXMg YSBtYXR0ZXIgb2YgcG9saWN5LCBjaGFuZ2VzIGV2ZW4gdG8gTG9qYmFuIG5vbi1iYXNlbGluZWQg dXNhZ2VzLCBpZiB0aGV5IHdvdWxkIHJlcXVpcmUgcGVvcGxlIHRvIHJlLWxlYXJuIHRoaW5ncywg YXJlIHJlc2lzdGVkIHZpZ29yb3VzbHkuIEFsbW9zdCBhbnl0aGluZyB0aGF0IHByYWN0aWNhbCBw ZW9wbGUgKGkuZS4gYmVnaW5uZXJzKSB3b3VsZCBhY3R1YWxseSB1c2UgaXMgd2VsbCB3b3JrZWQg b3V0LCBkZWJ1Z2dlZCBhbmQgc3RhYmxlLiBQb2ludHMgb2YgY29udHJvdmVyc3kgaW5jbHVkZSBo aWdobHkgdGVjaG5pY2FsIHBoaWxvc29waGljYWwgaXNzdWVzIHN1Y2ggYXMgd2hldGhlciBlbXB0 eSBzZXRzIGFyZSBvciBhcmUgbm90IGV4Y2x1ZGVkIGFzIHRoZSBjYW5kaWRhdGUgcmVmZXJlbnQg c2V0IG9mIGEgJyd7QUxJTksoYW5hbWU9PnN1bXRpKX1zdW10aXtBTElOS30nJywgb3Igd2hldGhl ciBjdXJyZW50IGdyYW1tYXIgaXMgYWRlcXVhdGUgdG8gcmVwcmVzZW50IGFsbCBwb3NzaWJsZSBm b3JtcyBvZiBpbmRpcmVjdCBxdWVzdGlvbnMuIFRoZSBhbnN3ZXJzIGFyZSB2ZXJ5IGltcG9ydGFu dCB0byB0aGUgbGFuZ3VhZ2UgZGVmaW5pdGlvbiAobm8gam9rZSksIGJ1dCBwZW9wbGUgaGF2ZSBi ZWVuIHNwZWFraW5nIG5hdHVyYWwgbGFuZ3VhZ2VzIGZvciB5ZWFycyB3aXRob3V0IGtub3dpbmcg dGhlIGFuc3dlcnMsIHNvIGRvbid0IHdvcnJ5IGFib3V0IExvamJhbi4gQW5kIHlvdSBkb24ndCBo YXZlIHRvIGtub3cgd2hhdCBsYW1iZGEgY2FsY3VsdXMgaXMuIFRoZSBtYWpvciBwb2ludCBvZiBj b250cm92ZXJzeSB0aGF0IGlzIHNpZ25pZmljYW50IHRvIGJlZ2lubmVycyBpcyBhIGZlZWxpbmcg aW4gc29tZSBxdWFydGVycyB0aGF0IHRoZSBwb2xpY2llcyB1c2VkIHRvIGRlc2lnbiB0aGUgcGxh Y2UgKGFyZ3VtZW50LCAnJ3tBTElOSyhhbmFtZT0+Z2lzbXUpfWdpc211e0FMSU5LfScnIChiYXNp YyBwcmVkaWNhdGUgd29yZHMpIHdlcmUgbm90IGV4YWN0bHkgb3B0aW1hbC4gU29tZXRpbWVzIHRo ZSBzZW1hbnRpY3Mgb2YgdGhlIGxlc3MtdXNlZCBwbGFjZXMgYXJlIGF0IGlzc3VlLiBPZmZpY2lh bGx5LCB3ZSdsbCBnbyB3aXRoIHdoYXQgd2UgaGF2ZSB0byBwcmVzZXJ2ZSB0aGUgaW52ZXN0bWVu dCBwZW9wbGUgaGF2ZSBtYWRlIGluIGxlYXJuaW5nIHRoZSBsYW5ndWFnZSwgYW5kIGFmdGVyIHRo ZSBiYXNlbGluZSBwZXJpb2QgaXMgb3ZlciwgdGhvc2Ugd2hvIGFyZSBhY3R1YWxseSBzcGVha2lu ZyB0aGUgbGFuZ3VhZ2Ugd2lsbCBiZSBhbGxvd2VkIHRvIGRpc2N1c3MgY2hhbmdlcyBpbiBMb2pi YW4uIFRoZXJlIGFyZSBubyBwbGFucyB0byBldmVyIHNlcmlvdXNseSBkaXNjdXNzIGNoYW5nZXMg dG8gdGhlIGxhbmd1YWdlIG90aGVyIHRoYW4gaW4gTG9qYmFuLiAKCgoKe0FOQU1FKCl9UFMye0FO QU1FfVBTMi5fX1doYXQgYXJlIHRoZSBtb3N0IGN1cnJlbnQgcmV2aXNpb25zIG9mIGVhY2ggcGFy dCBvZiB0aGUgbGFuZ3VhZ2UgZGVzY3JpcHRpb25zP19fCgoKClRoZSB2ZXJzaW9ucyBmb3VuZCBv biB0aGUgW2h0dHA6Ly93d3cubG9qYmFuLm9yZ3xMb2piYW4gd2ViIHNpdGVdIGFyZSBkZWZpbml0 aXZlLCBleGNlcHQgdGhhdCB0aGUgcHJpbnRlZCB2ZXJzaW9uIG9mICgoVGhlIExvamJhbiBSZWZl cmVuY2UgR3JhbW1hcikpICggd2hpY2ggaXMgY2FsbGVkICgoVGhlIENvbXBsZXRlIExvamJhbiBM YW5ndWFnZSkpICkgdGFrZXMgcHJlY2VkZW5jZSBvdmVyIHRoZSBIVE1MIHZlcnNpb24uIFdvcmtp bmcgZHJhZnRzIG9mIGJvb2tzIGluIHByZXBhcmF0aW9uIGFyZSBtYWludGFpbmVkIG9uICcnbG9q YmFiJ3MnJyBob21lIGNvbXB1dGVycywgYW5kIG1heSBiZSBzbGlnaHRseSB1cGRhdGVkIGZyb20g dGhlIG9uLWxpbmUgdmVyc2lvbnMuIAoKCgp7QU5BTUUoKX1QUzN7QU5BTUV9UFMzLl9fV2hhdCBw cm9qZWN0cyBhcmUgYmVpbmcgd29ya2VkIG9uPyBXaGVuIHdpbGwgdGhleSBiZSBkb25lP19fCgoK CigoVGhlIENvbXBsZXRlIExvamJhbiBMYW5ndWFnZSkpIGlzIG9mIGNvdXJzZSBjb21wbGV0ZSBh bmQgcHVibGlzaGVkLiAKCgoKRm9yIGEgY3VycmVudCBsaXN0IG9mIG9uZ29pbmcgcHJvamVjdHMs IHNlZSB0aGUgKChPZmZpY2lhbCBMTEcgUHJvamVjdHMpKSBwYWdlLCB0aGUgKChPZmZpY2lhbCBM TEcgQ29tbWl0dGVlcykpIHBhZ2UsIGFuZCAoKG9uZ29pbmcgcHJvamVjdHN8dGhlIHdpa2kgb25n b2luZyBwcm9qZWN0cyBwYWdlKSkuCgoKCgoKX18nJ1dIRU4/JydfXwoKCgpQcm9qZWN0cyBhcmUg YWxsIGJlaW5nIGRvbmUgYnkgdm9sdW50ZWVycywgYW5kIHRoZXJlZm9yZSB3aWxsIGJlIGRvbmUg d2hlbiBwZW9wbGUgZmluaXNoIHRoZW0uIFdlJ3ZlIHByb21pc2VkIGRhdGVzIGluIHRoZSBwYXN0 IGFuZCBpbnZhcmlhYmx5IGJlZW4gd3JvbmcuIFRoZSBwcmlvcml0aWVzIGFyZSBmb3IgdGhlIGRp Y3Rpb25hcnkgYW5kIHRoZSBpbnRyb2R1Y3RvcnkgbWF0ZXJpYWxzIGJvb2ssIHdpdGggdGhlIGxh dHRlciBtb3JlIGxpa2VseSB0byBjb21lIG91dCBlYXJsaWVyIHRoYW4gdGhlIGZvcm1lci4gUHVi bGljYXRpb24gb2YgYm9va3MgaXMgc2V2ZXJlbHkgaGFtcGVyZWQgYnkgZmluYW5jZXMgKGFueW9u ZSB3aXRoIG1vbmV5IGlzIHdlbGNvbWUgdG8gKChzYXJqaSBmbyBsbyBqZGluaXxkb25hdGUpKSEp LCBhbmQgdGhlIGxhY2sgb2YgYWJpbGl0eSB0byBwdWJsaXNoIGluIHRoZSBzaG9ydCB0ZXJtIGhh cyB0ZW5kZWQgdG8gaHVydCBtb3RpdmF0aW9uIGFuZCBwcm9kdWN0aXZpdHkgb2YgdGhvc2Ugd29y a2luZyBvbiB0aG9zZSBwdWJsaWNhdGlvbnMuIAoKCgp7QU5BTUUoKX1QUzR7QU5BTUV9UFM0Ll9f V2hhdCBjYW4gSSBkbyB0byBoZWxwP19fCgoKCkEgZmV3IHBvc3NpYmlsaXRpZXM6IAoKCgoqIFBv c3QgYmVnaW5uZXIgcXVlc3Rpb25zIG9uIHRoZSB7QUxJTksoYW5hbWU9Pmxpc3RzLHBhZ2VuYW1l PT5Mb2piYW5pYyBGb3J1bXMpfUxvamJhbiBMaXN0e0FMSU5LfSBhbmQgZG9uJ3QgYmUgaW50aW1p ZGF0ZWQKCiogVGVsbCBhYm91dCB5b3Vyc2VsZiBhbmQgeW91ciBpbnRlcmVzdHMgKGluIExvamJh biBwcmVmZXJhYmx5LCBidXQgRW5nbGlzaCBpcyBPSykgb24gdGhlIHtBTElOSyhhbmFtZT0+bGlz dHMscGFnZW5hbWU9PkxvamJhbmljIEZvcnVtcyl9TG9qYmFuIExpc3R7QUxJTkt9CgoqIFdyaXRl IGluIExvamJhbiBvbiB0aGUge0FMSU5LKGFuYW1lPT5saXN0cyxwYWdlbmFtZT0+TG9qYmFuaWMg Rm9ydW1zKX1Mb2piYW4gTGlzdHtBTElOS30KCiogV3JpdGUgc29tZXRoaW5nIGluIExvamJhbiAo VHJ5IHRvIHdyaXRlIHNvbWV0aGluZyBuZXd+LS1+KChUcmFuc2xhdGlvbnN8dHJhbnNsYXRpb24g b2YgbGl0ZXJhdHVyZSkpIGlzIG5vdCBnZW5lcmFsbHkgYSBnb29kIG9yIGVhc3kgYmVnaW5uZXIg ZXhlcmNpc2UpLgoKKiBTdHVkeSBMb2piYW4gdm9jYWJ1bGFyeSB1c2luZyBMb2dGbGFzaCBvciBm bGFzaGNhcmRzCgoqIENvbWUgdG8ge0FMSU5LKGFuYW1lPT5HNSl9TG9nRmVzdHtBTElOS30gaW4g SnVseS9BdWd1c3QgaW4gRmFpcmZheCBWQSAobmVhciBXYXNoaW5ndG9uLCBEQyksIFVTQS4KCiog VHJ5IGV4cHJlc3NpbmcgeW91cnNlbGYgaW4gTG9qYmFuCgoqIEludml0ZSBvdGhlcnMgdG8gam9p biBhIGxpdmUge0FMSU5LKGFuYW1lPT5pcmMscGFnZW5hbWU9PkxvamJhbmljIEZvcnVtcyl9SVJD IGNoYXR7QUxJTkt9IGluIG9yIGFib3V0IExvamJhbgoKKiBLZWVwIGEgZGlhcnkgaW4gTG9qYmFu CgoqIENoZWNrIG91dCB0aGUgKChPZmZpY2lhbCBMTEcgUHJvamVjdHN8UHJvamVjdHMpKSBhbmQg dGhlICgoT2ZmaWNpYWwgTExHIENvbW1pdHRlZXN8Q29tbWl0dGVlcykpIHBhZ2VzIGZvciBuZXcg YW5kIG9uZ29pbmcgcHJvamVjdHMKCiogU2VuZCBtb25leSB0byB0aGUge0FMSU5LKGFuYW1lPT5M TEcpfUxMR3tBTElOS30gdXNpbmcgUGF5UGFsCgoKCiEhSElTVE9SSUNBTAoKe0FOQU1FKCl9SDF7 QU5BTUV9SDEuX19Ib3cgd2FzIHRoZSBkZWZhdWx0IHtBTElOSyhhbmFtZT0+c2VsYnJpKX1zZWxi cml7QUxJTkt9JycgZGV0ZXJtaW5lZD8gKFRoZXJlIGRvZXMgbm90IGFwcGVhciB0byBiZSBhbnkg cmh5bWUgb3IgcmVhc29uIGZvciB0aGUgb3JkZXIgb2YgJyd7QUxJTksoYW5hbWU9Pmdpc211KX1n aXNtdXtBTElOS30nJy4pX18KCgoKVGhleSB3ZW50IHRocm91Z2ggYSBsb3Qgb2YgcmV2aXNpb25z OyBpdCBpcyBzb21ldGhpbmcgaW4tYmV0d2VlbiBwbGFubmluZyBhbmQgZXZvbHV0aW9uLiBUaGVy ZSBpcyBhIGNvbnNpZGVyYWJsZSBhbW91bnQgb2Ygc3lzdGVtIHRoZXJlLCBidXQgaXQgaXMgaWxs LWRvY3VtZW50ZWQuIAoKCgpUaGUgbmljZSB0aGluZyB0byBrbm93IGlzIHRoYXQgeW91IGRvbid0 IGhhdmUgdG8gbWVtb3JpemUgdGhlIHtBTElOSyhhbmFtZT0+cGxhY2VzdHJ1Y3R1cmUpfXBsYWNl IHN0cnVjdHVyZXN7QUxJTkt9LiBKdXN0IHVzaW5nIHRoZSBsYW5ndWFnZSwgeW91IHdpbGwgY29t ZSB0byBoYXZlIGEgZmVlbCBmb3Igd2hpY2ggcGxhY2VzIGFyZSBwcmVzZW50IGFuZCBpbiB3aGF0 IG9yZGVyLiAKCgoKTW9zdCBwZW9wbGUgd2hvIHRha2UgdGhlIHRpbWUgdG8gYmVjb21lIGZhbWls aWFyIHdpdGggdGhlIGxhbmd1YWdlIGZpbmQgdGhhdCB3aXRoIHByYWN0aWNlLCB0aGV5IGJlZ2lu IHRvIGRldmVsb3AgYSBzZW5zZSBvZiB3aGF0IHRoZSBwbGFjZSBzdHJ1Y3R1cmVzIG91Z2h0IHRv IGJlLiBDb252ZW5pZW50bHksIHRoZWlyIHNlbnNlIHVzdWFsbHkgbWF0Y2hlcyB1cCB3aXRoIHRo ZSBkZWZpbml0aW9uLgoKCgp7QU5BTUUoKX1IMntBTkFNRX1IMi5fX0hvdyBkaWQgdGhlICcne0FM SU5LKGFuYW1lPT5naXNtdSl9Z2lzbXV7QUxJTkt9JycgZ2V0IG1hZGU6IGRpc2N1c3Npb24sIGV0 eW1vbG9neSBleGFtcGxlcz9fXwoKCgpUaGVyZSBpcyBhICgoZ2lzbXUgRXR5bW9sb2d5fGZ1bGwg c2V0IG9mIGV0eW1vbG9naWVzKSkgb24gdGhlIGZpbGUgc2VydmVyLiBUaGVyZSBpcyBzb21lIGV4 cGxhbmF0aW9uIGF2YWlsYWJsZSwgaW5jbHVkaW5nIFtodHRwOi8vd3d3LmxvamJhbi5vcmcvZmls ZXMvZXR5bW9sb2d5L2V0eXNhbXBsZS50eHR8c2FtcGxlc10gKGJyb2tlbiBsaW5rKSwgYW5kIGEg bW9yZSB2ZXJib3NlIGRlc2NyaXB0aW9uIGluIHRoZSAgW2h0dHA6Ly9sb2piYW4ub3JnL3B1Ymxp Y2F0aW9ucy9sZXZlbDAvYnJvY2h1cmUvbGluZ2lzc3Vlcy5odG1sI2lkeDQ1MnxMZXZlbCAwIHBh Y2thZ2VdIGFuZCBhdCB0aGUgKChMb2piYW4gRXR5bW9sb2d5fExvamJhbiBFdHltb2xvZ3kgSW5m b3JtYXRpb24pKSBwYWdlLiAKCgoKVGhlIGV0eW1vbG9naWVzIGluIDYgbGFuZ3VhZ2VzIGFuZCB0 aGUgc2NvcmluZyBmb3IgZWFjaCBsYW5ndWFnZSBhcmUgZ2l2ZW4sIGluIG9yZGVyIENoaW5lc2Uv RW5nbGlzaC9IaW5kaS9TcGFuaXNoL1J1c3NpYW4vQXJhYmljfi0tfmEgMCBzY29yZSBtZWFucyB0 aGF0IHRoZSBsYW5ndWFnZSBtYWRlIG5vIGNvbnRyaWJ1dGlvbiB0byB0aGUgd29yZCwgYW5kIHRo dXMgaXRzIGV0eW1vbG9naWNhbCBrZXl3b3JkIGRpZCBub3QgbWF0dGVyLiBUaGUgbGFuZ3VhZ2Vz IHdlcmUgd2VpZ2h0ZWQuIFdoaWxlIG5ldyAnJ3tBTElOSyhhbmFtZT0+Z2lzbXUpfWdpc211e0FM SU5LfScnIGFyZSBub3QgYmVpbmcgbWFkZSwgJydsb2piYWInJyB1cGRhdGVzIHRoZSB3ZWlnaHRp bmcgYmFzZWQgb24gZXN0aW1hdGVkIG51bWJlcnMgb2YgZmlyc3QgYW5kIHNlY29uZCBsYW5ndWFn ZSBzcGVha2VycyBldmVyeSBjb3VwbGUgb2YgeWVhcnMuIFRoZSBvcmlnaW5hbCBhbmQgMTk5OSB3 ZWlnaHRzIGFyZSBhdmFpbGFibGUgIFtodHRwOi8vd3d3LmxvamJhbi5vcmcvcHVibGljYXRpb25z L2V0eW1vbG9neS9sYW5nc3RhdDk5Lmh0bXxvbmxpbmVdLgoKCgoKCntBTkFNRSgpfUgze0FOQU1F fUgzLl9fV2hhdCBpcyB0aGUgZGlmZmVyZW5jZSBiZXR3ZWVuIExvZ2xhbiBhbmQgTG9qYmFuPyBI b3cgaXMgTG9nbGFuLTgyIHJlbGF0ZWQ/X18KCgoKSmFtZXMgQ29va2UgQnJvd24gKCAoKEphbWVz IENvb2tlIEJyb3dufEpDQikpICkgY2FtZSB1cCB3aXRoIHRoZSBpZGVhIG9mIExvZ2xhbiBpbiB0 aGUgMTk0MHMgYW5kIHN0YXJ0aW5nIGludmVudGluZyB0aGUgbGFuZ3VhZ2UgYXJvdW5kIDE5NTUu IEl0IGhhcyBiZWVuIGV2b2x2aW5nIGV2ZXIgc2luY2UuIEluIDE5ODItNCBvciBzbyB0aGVyZSB3 YXMgYSBwb2xpdGljYWwgZGlzYWdyZWVtZW50IGFuZCB0aGUgTG9nbGFuIGNvbW11bml0eSBmZWxs IGFwYXJ0LiBBIGNvdXBsZSBvZiB5ZWFycyBsYXRlciwgQm9iIExlQ2hldmFsaWVyICgnJ2xvamJh YicnKSwgdGhlbiB3b3JraW5nIHdpdGggKChKYW1lcyBDb29rZSBCcm93bnxKQ0IpKSwgYXR0ZW1w dGVkIHRvIHJlc3VycmVjdCB0aGUgY29tbXVuaXR5LiBUaGlzIGxlZCB0byBhIGZhbGxpbmcgb3V0 IGJhc2VkIG9uICgoSmFtZXMgQ29va2UgQnJvd258SkNCKSkncyBwcm9wcmlldGFyeSBpbnRlbGxl Y3R1YWwgcHJvcGVydHkgY2xhaW1zIG9uIHRoZSBsYW5ndWFnZS4gVGhlIGNvbW11bml0eSBzcGxp dCBpbnRvIHR3byBlZmZvcnRzLCB3aXRoICgoSmFtZXMgQ29va2UgQnJvd258SkNCKSkgYXQgdGhl IGhlYWQgb2Ygb2YgdGhlIExvZ2xhbiBlZmZvcnQsIHtBTElOSyhhbmFtZT0+VExJKX1UaGUgTG9n bGFuIEluc3RpdHV0ZSAoVExJKXtBTElOS30sIGFuZCAoJydsb2piYWInJykgYXQgdGhlIGhlYWQg b2YgdGhlIExvamJhbiBlZmZvcnQsIHRoZSB7QUxJTksoYW5hbWU9PkxMRyl9TG9naWNhbCBMYW5n dWFnZSBHcm91cCAoTExHKXtBTElOS30uIFRoZSBsYXR0ZXIgaXMgTG9qYmFuLCB3aGljaCB7QUxJ TksoYW5hbWU9PkxMRyl9TExHe0FMSU5LfSAoYmFja2VkIHVwIGJ5IGEgY291cnQgZGVjaXNpb24p IGNvbnNpZGVycyBhIHN1YmNhdGVnb3J5IG9mIExvZ2xhbi4gU2FkbHksICgoSmFtZXMgQ29va2Ug QnJvd258SkNCKSkgcGFzc2VkIGF3YXkgaW4gMjAwMC4gSXQgaXMgdW5jbGVhciBpZiB0aGUgTG9n bGFuIG9yZ2FuaXphdGlvbiBoYXMgbGVhZGVyc2hpcCBjYXBhYmxlIG9mIHN1c3RhaW5pbmcgdGhl IGVmZm9ydC4gQSBtb3JlIGxlbmd0aHkgZGlzY3Vzc2lvbiBvZiB0aGUgaXNzdWVzIGNhbiBiZSBm b3VuZCBpbiB0aGUgYXJ0aWNsZSAoKFRoZSBMb2dsYW4tTG9qYmFuIERpc3B1dGUpKSwgYW5kIGlu ICcne0FMSU5LKGFuYW1lPT5KTCl9anUnaSBsb2J5cGxpe0FMSU5LfScnIChBdHRlbnRpb24hIExv amJhbmljIFVzZXJzKS4gCgoKCicnbG9qYmFiJycgbWFrZXMgb2NjYXNpb25hbCBlZmZvcnRzIHRv IHNwYXJrIGRpc2N1c3Npb24gdGhhdCB3b3VsZCBsZWFkIHRvIHJldW5pZmljYXRpb24gb2YgdGhl IGVmZm9ydHMgYmVoaW5kIExvamJhbiwgYWx0aG91Z2ggbm8gY29uc2lkZXJhdGlvbiB3aWxsIGJl IGdpdmVuIHRvIGFiYW5kb25pbmcgdGhlIExvamJhbiBiYXNlbGluZS4gCgoKCkxvZ2xhbi04MiBp cyBhIGNvbXBsZXRlbHkgdW5yZWxhdGVkIGNvbXB1dGVyIGxhbmd1YWdlIGRldmVsb3BlZCBpbiBQ b2xhbmQgYnkgcGVvcGxlIHVuYXdhcmUgb2YgdGhlIGV4aXN0ZW5jZSBvZiB0aGUgTG9nbGFuL0xv amJhbiBwcm9qZWN0LgoKCgoKCntBTkFNRSgpfUg0e0FOQU1FfUg0Ll9fV2h5IGRvIG9sZGVyIExv amJhbiB0ZXh0cyAoYmVmb3JlIDE5OTMpIG5vdCBtYWtlIG11Y2ggc2Vuc2Ugc29tZXRpbWVzP19f CgoKCkxvamJhbiBoYXMgYmVlbiBxdWl0ZSBzdGFibGUgc2luY2UgMTk5Mi0zLCB3aGVuIHRoZSBs YXN0IHNpZ25pZmljYW50IGNoYW5nZXMgd2VyZSBtYWRlIChzaW5jZSB0aGVuLCBtb3N0ICJjaGFu Z2VzIiBoYXZlIGJlZW4gYWRkaXRpb25zIHRvIHRoZSBsYW5ndWFnZSB3aGljaCBkaWQgbm90IG1h a2Ugb2xkZXIgdGV4dCBpbnZhbGlkKS4gVGhlIGxhc3QgY2hhbmdlcyB0byB0aGUgJyd7QUxJTkso YW5hbWU9Pmdpc211KX1naXNtdXtBTElOS30nJyBsaXN0IHdlcmUgbWFkZSBpbiAxOTkyLCBhbmQg aW4gMTk5MyB0aGUgJyd7QUxJTksoYW5hbWU9PnJhZnNpKX1yYWZzaXtBTElOS30nJyBpbiBMb2pi YW4gd29yZC1tYWtpbmcuIFRoZXJlIGlzIGEgW2h0dHA6Ly93d3cubG9qYmFuLm9yZy9maWxlcy9o aXN0b3J5L2JvdGhyYWYudHh0fHRyYW5zbGF0aW9uIHRhYmxlXSBmcm9tIHRoZSBvbGRlciAnJ3tB TElOSyhhbmFtZT0+cmFmc2kpfXJhZnNpe0FMSU5LfScnIHRvIHRoZSBmaW5hbCBzZXQuIAoKCgoK CiEhIFBST05VTkNJQVRJT04KCntBTkFNRSgpfUIxe0FOQU1FfUIxLl9fSSdtIG5vdCBxdWl0ZSBz dXJlIEkgdW5kZXJzdGFuZCB0aGUgd3JpdHRlbiBkZXNjcmlwdGlvbnMgb2YgaG93IHRoZSB2b3dl bHMgc291bmQuX18KCgoKSGVyZSBpcyBhIGxpbmsgdG8gW2h0dHA6Ly9wZXJwZXR1dW0taW1tb2Jp bGUuZGUvdm93ZWxzX2FsZWtzLm9nZ3xhIHZvd2VsIHNvdW5kIGZpbGUgaW4gT2dnIFZvcmJpcyBm b3JtYXRdLgoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f Cldpa2luZXVyb3RpYyBtYWlsaW5nIGxpc3QKV2lraW5ldXJvdGljQGxvamJhbi5vcmcKaHR0cDov L21haWwubG9qYmFuLm9yZy9tYWlsbWFuL2xpc3RpbmZvL3dpa2luZXVyb3RpYwo=