Received: from localhost ([::1]:55300 helo=stodi.digitalkingdom.org) by stodi.digitalkingdom.org with esmtp (Exim 4.80.1) (envelope-from ) id 1WkJdI-0001mC-4T; Tue, 13 May 2014 13:49:04 -0700 Received: from 173-13-139-235-sfba.hfc.comcastbusiness.net ([173.13.139.235]:52036 helo=jukni.digitalkingdom.org) by stodi.digitalkingdom.org with smtp (Exim 4.80.1) (envelope-from ) id 1WkJd6-0001m5-9C for wikichanges@lojban.org; Tue, 13 May 2014 13:49:02 -0700 Received: by jukni.digitalkingdom.org (sSMTP sendmail emulation); Tue, 13 May 2014 13:48:52 -0700 From: "Apache" Date: Tue, 13 May 2014 13:48:52 -0700 To: wikichanges@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 CLL, aka Reference Grammar, Errata was changed by Eimi at 15:47 CDT You can view the page by following this link: http://www.lojban.org/tiki/CLL%2C%20aka%20Reference%20Grammar%2C%20Errata [...] Content analysis details: (0.4 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 0.4 RDNS_DYNAMIC Delivered to internal network by host with dynamic-looking rDNS Subject: [Wikichanges] Wiki page CLL, aka Reference Grammar, Errata changed by Eimi X-BeenThere: wikichanges@lojban.org X-Mailman-Version: 2.1.15 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: wikichanges-bounces@lojban.org Content-Length: 64386 VGhlIHBhZ2UgQ0xMLCBha2EgUmVmZXJlbmNlIEdyYW1tYXIsIEVycmF0YSB3YXMgY2hhbmdlZCBi eSBFaW1pIGF0IDE1OjQ3IENEVAoKWW91IGNhbiB2aWV3IHRoZSBwYWdlIGJ5IGZvbGxvd2luZyB0 aGlzIGxpbms6CiAKaHR0cDovL3d3dy5sb2piYW4ub3JnL3Rpa2kvQ0xMJTJDJTIwYWthJTIwUmVm ZXJlbmNlJTIwR3JhbW1hciUyQyUyMEVycmF0YQoKWW91IGNhbiB2aWV3IGEgZGlmZiBiYWNrIHRv IHRoZSBwcmV2aW91cyB2ZXJzaW9uIGJ5IGZvbGxvd2luZyB0aGlzIGxpbms6IApodHRwOi8vd3d3 LmxvamJhbi5vcmcvdGlraS90aWtpLXBhZ2VoaXN0b3J5LnBocD9wYWdlPUNMTCUyQyUyMGFrYSUy MFJlZmVyZW5jZSUyMEdyYW1tYXIlMkMlMjBFcnJhdGEmY29tcGFyZT0xJm9sZHZlcj0yMjImbmV3 dmVyPTIyMwoKCioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqClRoZSBjaGFuZ2VzIGluIHRoaXMgdmVyc2lvbiBmb2xsb3cgYmVsb3csIGZv bGxvd2VkIGFmdGVyIGJ5IHRoZSBjdXJyZW50IGZ1bGwgcGFnZSB0ZXh0LgoqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgoKCistKy0rLSst Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCkBAIC1M aW5lczogNDI5LTQzMiBjaGFuZ2VkIHRvICtMaW5lczogNDI5LTQzNCBAQAorLSstKy0rLSstKy0r LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKwoKKiBTZWN0aW9u IDE1LCByaWdodCBhZnRlciAxNS45LCBpdCBzYXlzICJleGFtcGxlIDE0LjE3IiB3aGVyZSBpdCBz aG91bGQgc2F5ICJleGFtcGxlIDE1LjkiICgxNC4xNyBkb2VzIG5vdCBleGlzdCkuICAoKEFwcHJv dmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKKyAKKyAqIFNlY3Rpb24gMTUsIGV4YW1wbGUg MTUuOCBpcyBtaXNzaW5nIGEgZG90IGFmdGVyICJsYSBsb2piYW4iLgoKKiBTZWN0aW9uIDE1LCBl eGFtcGxlIDE1LjkgaXMgbm90IGdyYW1tYXRpY2FsOyBpdCBzaG91bGQgYmUgImxhIGRqYW4uIGZh J3UgbGEgZnJhbmsuIGN1c2t1IG51J2kgYmF1IGxhIGxvamJhbi4gcGUnZSBmYSd1IGJhaSBsYSBk am9yZGouIi4KCgoKCioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqClRoZSBuZXcgcGFnZSBjb250ZW50IGZvbGxvd3MgYmVsb3cuCioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCgpU aGlzIHBhZ2UgaXMgZm9yIGVycmF0YSBpbiAoKFRoZSBDb21wbGV0ZSBMb2piYW4gTGFuZ3VhZ2Up KSwgdGhhdCBpcyBmb3IgbWlzdGFrZXMgc3VjaCBhcyB0eXBvcywgb3Igc2VsZi1jb250cmFkaWN0 aW9ucywgb3IgY29udHJhZGljdGlvbnMgd2l0aCBvdGhlciBiYXNlbGluZWQgbGFuZ3VhZ2UgZGVm aW5pdGlvbiBtYXRlcmlhbC4gVGhpcyBpcyBfX25vdF9fIGEgcGFnZSB0byBwdXQgZGVzaWRlcmF0 YSAoc3VnZ2VzdGlvbnMgZm9yIGltcHJvdmVtZW50KTsgc3VjaCBzdWdnZXN0aW9ucyBzaG91bGQg Z28gdG8gKChTdWdnZXN0aW9ucyBmb3IgQ0xMLCBzZWNvbmQgZWRpdGlvbikpLiAgVGhpcyBpcyBh bHNvIG5vdCBhIHBhZ2UgdG8gcHV0IGVycmF0YSByZXN1bHRpbmcgZnJvbSB0aGUgNHRoIEJhc2Vs aW5lIEdyYW1tYXIgcHJvcG9zYWwgKGkuZS4sIHRoZSAoKFBFRykpIGdyYW1tYXIpOyBQRUcgZ3Jh bW1hciBlcnJhdGEgc2hvdWxkIGdvIHRvICgoQ0xMIFBFRyBFcnJhdGEpKS4KCgoKQW4gb25saW5l IHZlcnNpb24gb2YgdGhlIENMTCBpbmNvcnBvcmF0aW5nIHRoZSBjaGFuZ2VzIG9uIHRoaXMgcGFn ZSBbaHR0cDovL2RhZy5naXRodWIuY29tL2NsbC98aXMgYXZhaWxhYmxlXS4KCgoKU2VlIGFsc28g W1doYXQraXMrTG9qYmFuJTNGK2VycmF0YSZibD15fFdoYXQgaXMgTG9qYmFuPyBlcnJhdGFdIChm b3IgdGhlIHB1Ymxpc2hlZCB2ZXJzaW9uKSwgTGV2ZWwgMCBCb29rbGV0IEVycmF0YSBbdGlraS1l ZGl0cGFnZS5waHA/cGFnZT1MZXZlbCswK0Jvb2tsZXQrRXJyYXRhJmxhbmc9fD9dIChmb3IgdGhl IHByZS1wdWJsaWNhdGlvbiByZXZpZXdzOyBub3cgZmluaXNoZWQpLCBhbmQgW0xlc3NvbnMrRXJy YXRhJmJsPXl8TGVzc29ucyBFcnJhdGFdIChmb3IgdGhlIGJlZ2lubmVycycgY291cnNlKS4KCgoK VGhlICInJ0lOQ0xVREVEIElOIERBRy1DTEwnJyIgdGFnIG1lYW5zIHRoYXQgaHR0cDovL2RhZy5n aXRodWIuY29tL2NsbC8gaW5jbHVkZXMgdGhpcyBmaXgsIHdoaWNoIGFsc28gbWVhbnMgaXQnbGwg cHJvYmFibHkgYmUgaW4gdGhlIG5leHQgQ0xMIHZlcnNpb24uCgoKCi0tLQoKCgohQ2hhcHRlciAx CgoKCiogVGhlcmUgaXMgYSBwYXJhZ3JhcGggYXQgdGhlIHZlcnkgYmVnaW5uaW5nIG9mIENMTCwg b24gcGFnZSA0LCB3aXRoIHRoZSBzZW50ZW5jZSAnJyJJbiBlc3NlbmNlLCBDaGFwdGVyIDIgZ2l2 ZXMgYSBicmllZiBvdmVydmlldyBvZiB0aGUgbGFuZ3VhZ2UsIENoYXB0ZXIgMjEgZ2l2ZXMgdGhl IGZvcm1hbCBzdHJ1Y3R1cmUgb2YgdGhlIGxhbmd1YWdlLCBhbmQgdGhlIGNoYXB0ZXJzIGluIGJl dHdlZW4gcHV0IHNlbWFudGljIGJvbmVzIG9uIHRoYXQgZm9ybWFsIGZsZXNoLiInJwoKKiogV291 bGRuJ3QgaXQgbWFrZSBtb3JlIHNlbnNlIHRvIHNheSAicHV0IHNlbWFudGljIGZsZXNoIG9uIHRo b3NlIGZvcm1hbCBib25lcyI/ICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKSAn J0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gNiwgaXQgc2F5cyAiTGFycnkgSG9y bidzIHdvcmsgJydUaGUgTmF0dXJhbCBIaXN0b3J5IG9mIE5lZ2F0aW9uJyciLiBJdCB3b3VsZCBh cHBlYXIgdGhhdCBldmVyeW9uZSBlbHNlIGNhbGxzIGl0ICcnX19BX18gTmF0dXJhbCBIaXN0b3J5 IG9mIE5lZ2F0aW9uJycsIGJ5IF9fTGF1cmVuY2VfXyAoUi4pIEhvcm4uCgoqKiAnJ0lOQ0xVREVE IElOIERBRy1DTEwnJyAoem9ydCdzIGZvcmsgYXQgbGVhc3QpIGJ1dCBuZWVkcyBhcHByb3ZhbAoK CgotLS0KCiFDaGFwdGVyIDIKCgoKKiBTZWN0aW9uIDUgZXhhbXBsZSA1LjcgdXNlcyAidGkiIHRv IHBvaW50IGF0IGEgbGFuZ3VhZ2UsIGFuZCBzaG91bGQgaGF2ZSBpdHMgYWNjb21wYW55aW5nIG5v dGUgY2hhbmdlZCB0byBtb3JlIGFjY3VyYXRlbHkgcmVmbGVjdCB0aGF0IHRoaXMgaXMgbm90IGhv dyAidGkiIHdvcmtzLgoKCgoqIFNlY3Rpb24gNiBFeGFtcGxlIDYuNSBoYXMgImN1IiBhcyBlbGlk YWJsZSwgd2hlbiBpbiBmYWN0IGl0IGlzIHNpbXBseSBpbGxlZ2FsIHRoZXJlLiAgUmVtb3ZlZC4g ICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoqKiB1YW5haSwgSSBzdGlsbCBzZWUgImN1IiBpbiBE QUctQ0xMLgoKCgoqIFNlY3Rpb24gOCBwYWdlIDE3IGNsYWltcyB0aGF0ICJ4dSIgaXMgZGlzY3Vz c2VkIGluIHNlY3Rpb24gMS43LCB3aGljaCBoYXBwZW5zIHRvIGxpc3QgdGhlIGNhcHRpb25zIGZv ciBhbGwgdGhlIGNoYXB0ZXIgcGljdHVyZXMuCgoqKiBJdCBzaG91bGQgcmVmZXIgdG8gU2VjdGlv biAxNS4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElO IERBRy1DTEwnJwoKKioqIFRoZSBsaW5rIGluIHRoZSBjdXJyZW50IERBRy1DTEwgaXMgcG9pbnRp bmcgdG8gIjIvMi8xNSIgaW5zdGVhZCBvZiB0byAiMi8xNSIuCgoKCiogU2VjdGlvbiAxMCBzYXlz IHRoYXQgZXhhbXBsZSAxMC4zIChtaSB0YXZsYSBkbyBsZSB0YXZsYSBrdSkgbWVhbnMgdGhlIHNh bWUgYXMgKG1pIHRhdmxhIGRvIGxlIHRhdmxhIGt1KS4gRXhhbXBsZSAxMC4zIHNob3VsZCBiZSAi bWkgdGF2bGEgZG8gbGUgdGF2bGEiLCBhcyBpdCBkZXNjcmliZXMgaG93ICJrdSIgbWF5IGJlIG9t aXR0ZWQuCgoqKiBJdCBhcHBlYXJzIHRoYXQgZXhhbXBsZSAxMC4zIGlzIGluY29ycmVjdCBvbmx5 IGluIHRoZSBvbmxpbmUgdmVyc2lvbiwgbm90IHRoZSBwdWJsaXNoZWQgYm9vay4KCgoKKiBTZWN0 aW9uIDE3IHNheXMgIk5vdGUgdGhhdCBFeGFtcGxlIDE3LjMgIGhhcyBhbmQgcmVxdWlyZXMgYSDi gJxjdeKAnSB0byBwcmV2ZW50IOKAnGJhanJh4oCdIGFuZCDigJxrbGFtYeKAnSBmcm9tIGZvcm1p bmcgYSB0YW5ydSwgYnV0IEV4YW1wbGUgMTcuNCAgYW5kIEV4YW1wbGUgMTcuNSAgbGFjayB0aGUg dW5uZWNlc3Nhcnkg4oCcY3XigJ0uIiwgYnV0IGV4YW1wbGUgMTcuMyBpcyAibGEgZGphbi4gfm5w fltjdV1+L25wfiBrbGFtYSBsZSB6YXJjaSIuCgoqKiBJdCBhcHBlYXJzIHRoYXQgdGhlIG9mZmVu ZGluZyBzZW50ZW5jZSBpcyBwcmVzZW50IG9ubHkgaW4gdGhlIG9ubGluZSB2ZXJzaW9uLCBub3Qg dGhlIHB1Ymxpc2hlZCBib29rLgoKCgoqIEV4YW1wbGUgMTcuOSBpcyAibGUgdmkgdGF2bGEga3Ug Y3UgYmEga2xhbWEiIGluIHRoZSBvbmxpbmUgdmVyc2lvbiwgYW5kIHRvdGFsbHkgYnJva2VuIGlu IHRoZSBwdWJsaXNoZWQgYm9vay4KCioqIEdvIHdpdGggdGhlIG9ubGluZSB2ZXJzaW9uLiAgKChB cHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNM TCcnCgoKCiogRXhhbXBsZSAxNy45IGluIGRhZy1jbGwgYXMgb2YgMjAxMi0wNS0wNSBpcyAibGUg dmkgdGF2bGEgfm5wfltrdV1+L25wfiBjdSBiYSBrbGFtYSIuIFNpbmNlIHRoZSBzYW1lIHNlY3Rp b24gaGFzIGV4cGxhaW5lZCB0aGF0IHRlbnNlIHRhZ3MgbWFrZSAiY3UiIHVubmVjZXNzYXJ5LCBJ IHRoaW5rIHRoZSBleGFtcGxlIHNob3VsZCBiZSAibGUgdmkgdGF2bGEgfm5wfltrdV0gW2N1XX4v bnB+IGJhIGtsYW1hIi4KCgoKLS0tCgoKCiEgQ2hhcHRlciAzCgoKCkEgbG90IG9mIHRoZSBJUEEg ZXhhbXBsZXMgdXNlIGEgc3BhY2UgdG8gaW5kaWNhdGUgYSBzeWxsYWJsZSBicmVhay4gVGhpcyBp cyBub3Qgc3RhbmRhcmQgSVBBIHVzYWdlOyBhY2NvcmRpbmcgdG8gSVBBLCB0aGUgcGVyaW9kIOKA nC7igJ0gc2hvdWxkIGJlIHVzZWQgdG8gaW5kaWNhdGUgYSBzeWxsYWJsZSBkaXZpc2lvbi4KCgoK KiBTZWN0aW9uIDIsIHBhZ2UgMzA6IGluIHRoZSB0YWJsZSB0aGUgZGVzY3JpcHRpb24gb2YgImFw b3N0cm9waGUiIHNob3VsZCByZWFkICJhbiB1bnZvaWNlZCBnbG90dGFsIHNwaXJhbnQiLCBub3Qg ImEgdW52b2ljZWQiLgoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkp ICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlvbiAyLCBkaWdpdGFsIHZlcnNpb24u ICBUaGUgSVBBIHRhYmxlIGdvdCBob3JyaWJseSBtYW5nbGVkIHNvbWV3aGVyZSBhbG9uZyB0aGUg d2F5LiAgSXQgc2hvdWxkIGxvb2sgbGlrZSAoU0FNUEEgY29sdW1uIGFkZGVkKToKCgoKfHwgTGV0 dGVyIHwgSVBBICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBTQU1QQSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgRGVzY3JpcHRpb24gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKICcgICAgICB8IFtoXSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHwgW2hdICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB8IGFuIHVudm9pY2VkIGdsb3R0YWwgc3BpcmFudCAgICAgICAgICAg ICAgICAgICAgICAKCiAsICAgICAgfCAtLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB8IC0tLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCB0 aGUgc3lsbGFibGUgc2VwYXJhdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgCgogLiAgICAg IHwgW8qUXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgWz9dICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGEgZ2xvdHRhbCBzdG9wIG9yIGEg cGF1c2UgICAgICAgICAgICAgICAgICAgICAgICAKCiBhICAgICAgfCBbYV0sIFvJkV0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgfCBbYV0sIFtBXSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHwgYW4gb3BlbiB2b3dlbCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIAoKIGIgICAgICB8IFtiXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHwgW2JdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGEg dm9pY2VkIGJpbGFiaWFsIHN0b3AgICAgICAgICAgICAgICAgICAgICAgICAgICAKCiBjICAgICAg fCBbyoNdLCBbyoJdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW1NdLCBbc2BdICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGFuIHVudm9pY2VkIHBvc3RhbHZl b2xhciBmcmljYXRpdmUgICAgICAgICAgICAgICAgICAgICAKCiBkICAgICAgfCBbZF0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFtkXSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgfCBhIHZvaWNlZCBkZW50YWwvYWx2ZW9sYXIgc3RvcCAgICAg ICAgICAgICAgICAgICAgCgogZSAgICAgIHwgW8mbXSwgW2VdICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHwgW0VdLCBbZV0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB8IGEgZnJvbnQgbWlkIHZvd2VsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCiBm ICAgICAgfCBbZl0sIFvJuF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBbZl0sIFtw XF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgYW4gdW52b2ljZWQgbGFi aWFsIGZyaWNhdGl2ZSAgICAgICAgICAgICAgICAgICAgIAoKIGcgICAgICB8IFvJoV0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFtnXSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgfCBhIHZvaWNlZCB2ZWxhciBzdG9wICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgCgogaSAgICAgIHwgW2ldICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgfCBbaV0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHwgYSBmcm9udCBjbG9zZSB2b3dlbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKIGog ICAgICB8IFvKkl0sIFvKkF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBbWl0sIFt6 YF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgYSB2b2ljZWQgcG9zdGFs dmVvbGFyIGZyaWNhdGl2ZSAgICAgICAgICAgICAgICAgICAgICAgIAoKIGsgICAgICB8IFtrXSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW2tdICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB8IGFuIHVudm9pY2VkIHZlbGFyIHN0b3AgICAgICAg ICAgICAgICAgICAgICAgICAgICAKCiBsICAgICAgfCBbbF0sIFtszKldICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHwgW2xdLCBbbD1dICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB8IGEgdm9pY2VkIGxhdGVyYWwgYXBwcm94aW1hbnQgKG1heSBiZSBzeWxsYWJpYykg ICAKCiBtICAgICAgfCBbbV0sIFttzKldICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwg W21dLCBbbT1dICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGEgdm9pY2Vk IGJpbGFiaWFsIG5hc2FsIChtYXkgYmUgc3lsbGFiaWMpICAgICAgICAKCiBuICAgICAgfCBbbl0s IFtuzKldLCBbxYtdLCBbxYvMqV0gICAgICAgICAgICAgICAgICAgICB8IFtuXSwgW249XSwgW05d LCBbTj1dICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBhIHZvaWNlZCBkZW50YWwgb3IgdmVs YXIgbmFzYWwgKG1heSBiZSBzeWxsYWJpYykgCgogbyAgICAgIHwgW29dLCBbyZRdICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHwgW29dLCBbT10gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB8IGEgYmFjayBtaWQgdm93ZWwgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAKCiBwICAgICAgfCBbcF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB8IFtwXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBhbiB1 bnZvaWNlZCBiaWxhYmlhbCBzdG9wICAgICAgICAgICAgICAgICAgICAgICAgCgogciAgICAgIHwg W3JdLCBbybldLCBbyb5dLCBbyoBdLCBbcsypXSwgW8m5zKldLCBbyb7MqV0sIFvKgMypXSB8IFty XSwgW3JcXSwgWzRdLCBbUlxdLCBbcj1dLCBbclw9XSwgWzQ9XSwgW1JcPV0gfCBhIHJob3RpYyBz b3VuZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgogcyAgICAgIHwgW3NdICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBbc10gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHwgYW4gdW52b2ljZWQgYWx2ZW9sYXIgc2liaWxhbnQg ICAgICAgICAgICAgICAgICAgIAoKIHQgICAgICB8IFt0XSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHwgW3RdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB8IGFuIHVudm9pY2VkIGRlbnRhbC9hbHZlb2xhciBzdG9wICAgICAgICAgICAgICAgICAK CiB1ICAgICAgfCBbdV0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFt1XSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBhIGJhY2sgY2xvc2Ug dm93ZWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgogdiAgICAgIHwgW3ZdLCBbzrJd ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3ZdLCBbQl0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB8IGEgdm9pY2VkIGxhYmlhbCBmcmljYXRpdmUgICAgICAg ICAgICAgICAgICAgICAgCgogeCAgICAgIHwgW3hdICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgfCBbeF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHwgYW4gdW52b2ljZWQgdmVsYXIgZnJpY2F0aXZlICAgICAgICAgICAgICAgICAgICAgIAoKIHkg ICAgICB8IFvJmV0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFtAXSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBhIGNlbnRyYWwgbWlkIHZv d2VsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgogeiAgICAgIHwgW3pdICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBbel0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHwgYSB2b2ljZWQgYWx2ZW9sYXIgc2liaWxhbnQgICAgICAgICAg ICAgICAgICAgICAgIHx8CgoKCioqIFNvcnQtb2YgKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21p cyBBcHByb3ZlZCkpOyB3aGF0IEkgYWN0dWFsbHkgZGlkIGlzIGhhZCBBcm50IHJldmlldyB3aGF0 IHNvbWVvbmUgZW50ZXJlZCBpbiBEQUctQ0xMLCB3aGljaCBwcmVzdW1hYmx5IHdhcyBiYXNlZCBv biB0aGUgYWJvdmUuICAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gMiwgcGFn ZSAzMC4gZm9yIHRoZSBzZWNvbmQgZW5nIChpbW1lZGlhdGVseSB0byB0aGUgbGVmdCBvZiAiKG1h eSBiZSBzeWxsYWJpYykiKSB0aGUgc3lsbGFiaWNpdHkgbWFya2VyIGlzIGNvbmNlYWxlZCBieSB0 aGUgcmlnaHQgdGFpbC4KCioqIEkgY2FuIGp1c3QgYmFyZWx5IHNlZSB0aGUgbWFya2VyIHVuZGVy IGEgZ29vZCBsaWdodC4gICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCioq KiBGb3IgZnV0dXJlIGVkaXRpb25zIDotKSAsIG5vdGUgdGhhdCB0aGUgSVBBIGFwcHJvdmVzIHB1 dHRpbmcgZGlhY3JpdGljcyBhYm92ZSByYXRoZXIgdGhhbiBiZWxvdyB0aGUgbGV0dGVyIGluIGNh c2VzIGxpa2UgdGhlc2UuIFVuZm9ydHVuYXRlbHksIHRoZSBmb250cyBoaXRoZXJ0byBhdmFpbGFi bGUgaGF2ZSBub3QgbWFkZSB0aGlzIGZhY2lsaXR5IGF2YWlsYWJsZSwgc28gb3V0c2lkZSB0aGUg am91cm5hbCBvZiB0aGUgSVBBIGl0c2VsZiwgc3VjaCBvdmVyLWRpYWNyaXRpY3MgYXJlIHNlbGRv bSBzZWVuLiDigJQgbml0Y2lvbgoKCgoqIEluIHNlY3Rpb24gMy4yLCB0aGUgY29tbWEgc2hvdWxk IChwcm9iYWJseSkgYmUgcmVwcmVzZW50ZWQgYnkgdGhlIElQQSBub3RhdGlvbiBbLnwuXSwgYXMg dGhlIHBlcmlvZCBpcyB1c2VkIGluIElQQSB0byBkZW5vdGUgc3lsbGFibGUgYnJlYWtzLiAgKChB cHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoKCiogU2VjdGlvbiAyLCBwYWdlIDMw LiBGb3IgdGhlIExvamJhbiBwaG9uZW1lIC9yLywgdGhlIElQQSBzeW1ib2wgZm9yIGEgZGVudGFs L2FsdmVvbGFyIHZvaWNlZCBhcGljYWwgdGFwIGlzIGdpdmVuIHdpdGggYSBzeWxsYWJpY2l0eSBt YXJrZXIgYmVsb3cuIEEgdGFwIGNhbid0IGJlIHN5bGxhYmljLCBiZWNhdXNlIGl0IGlzIGJ5IGRl ZmluaXRpb24gaW5zdGFudGFuZW91cy4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92 ZWQpKSBKdXN0IHJlbW92ZSB0aGF0IGNhc2UgYWx0b2dldGhlci4KCgoKKiBTZWN0aW9uIDIuICBU aGUgZGVzY3JpcHRpb25zIG9mICcnYycnIGFuZCAnJ2onJyBhcmUgbGlzdGVkIGFzICJjb3JvbmFs IHNpYmlsYW50InMuICBUaGUgZGVzY3JpcHRpb25zIHNob3VsZCByZWFkICJ2b2ljZWxlc3MgcG9z dGFsdmVvbGFyIGZyaWNhdGl2ZSIgYW5kICJ2b2ljZWQgcG9zdGFsdmVvbGFyIGZyaWNhdGl2ZSIs IHJlc3BlY3RpdmVseS4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoKCgoq IFNlY3Rpb24gMywgdGhpcmQgcGFyYWdyYXBoIChwYWdlIDMxKTogImEgdW52b2ljZWQgdm93ZWwg Z2xpZGUiIHNob3VsZCBiZSAiYW4gdW52b2ljZWQgdm93ZWwgZ2xpZGUiLgoKKiogKChBcHByb3Zl ZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoK CiogU2VjdGlvbiA2LCBwYWdlIDM2LiBJUEEgZm9yIHRoZSB1bmFjY2VwdGFibGUgQW1lcmljYW4g ZmxhcCB2YXJpYW50IG9mIGludGVydm9jYWxpYyAnJ3QnJyBzaG93cyB0aGUgR0EgJydyJycgc291 bmQgKHVwc2lkZS1kb3duIHIpIGluc3RlYWQgb2YgdGhlIGZsYXAgKGxpa2UgYW4gciB3aXRoIG5v IHZlcnRpY2FsIGJpdCBhdCB0aGUgdG9wIOKAlCBzZWUgdGhlIGxpc3Qgb2YgYWNjZXB0aWJsZSAn J3InJyB2YXJpYW50cyBvbiBvbiBwYWdlIDQ0IHdoZXJlIGl0IGFwcGVhcnMgY29ycmVjdGx5KSAg KChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoqKiAoKEFwcHJvdmVkIEVycmF0 dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBTZWN0 aW9uIDYsIHBhZ2UgMzYuIChTYW1lIGFzIHByZXZpb3VzIGVycmF0dW0pIFRoZSBjb25zb25hbnQg aXMgcmVmZXJyZWQgdG8gYXMgYSBmbGFwLCB3aGlsZSBpdCBpcyBhY3R1YWxseSBhIHRhcC4gICgo QXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoKCgoqIFNlY3Rpb24gNy4gSW4gYmV0 d2VlbiB0aGUgc2hhZGVkIGJveGVzLCAiYSBwYWlyaW5nIG9mIHZvaWNlZCBhbmQgdW52b2ljZWQg ZXF1aXZhbGVudCB2b3dlbHMiIHNob3VsZCByZWFkICJhIHBhaXJpbmcgb2Ygdm9pY2VkIGFuZCB1 bnZvaWNlZCBlcXVpdmFsZW50IGNvbnNvbmFudHMiLgoKCgoqIFNlY3Rpb24gOCwgcGFnZSAzOC4g SVBBIGZvciBwcm9udW5jaWF0aW9uIG9mICJ4YXBja2UiIGhhcyBjIHdoZXJlIGl0IHNob3VsZCBo YXZlIFMgKGxvbmcgcykuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoK KiBTZWN0aW9uIDksIHBhZ2UgNDAuIElQQSBmb3IgcHJvbnVuY2lhdGlvbiBvZiAiZGlreWp2byIg aGFzIGogd2hlcmUgaXQgc2hvdWxkIGhhdmUgWiAodGhhdCBsaXR0bGUgc2NyaXB0IHogdGhpbmcp ICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCioqICgoQXBwcm92ZWQgRXJy YXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNl Y3Rpb24gMTIsIHBhZ2UgNDYuIFdoYXQgc2hvdWxkIGJlIHRoZSBDeXJpbGxpYyBsZXR0ZXIgOyBp cyBwcmludGVkIGFzIHNvbWV0aGluZyB0aGF0IGxvb2tzIGxpa2UgdGhlIEdyZWVrIGxldHRlciAu IElzIHRoaXMgb25seSBhIHR5cG9ncmFwaGljYWwgdmFyaWFudCBvZiB0aGUgOywgb3IgaXMgaXQg YSB2YXJpYW50PwoKCgoqKiBUaGlzIGVycmF0dW0gaXMgaW5kZWNpcGhlcmFibGUgYW5kIHNob3Vs ZCBiZSBkcm9wcGVkLCB1bmxlc3Mgc29tZW9uZSBjYW4gcmVjb25zdHJ1Y3QgaXQuICBUaGUgQ3ly aWxsaWMgbGV0dGVycyBsb29rIGZpbmUuICAtLWpjb3dhbgoKCgoqIFNlY3Rpb24gMTIsIHBhZ2Ug NDYuIFJlcGxhY2UgdGhlIHdvcmRzICJ0aGUgaGFyZCBzaWduIiB3aXRoIGFuIGFjdHVhbCBoYXJk IHNpZ24sIFUrMDQ0QSBDWVJJTExJQyBTTUFMTCBMRVRURVIgSEFSRCBTSUdOLgoKCgoqIFNlY3Rp b24gMTIsIHBhZ2UgNDcuICJhcmUvImVzc2UiIHNob3VsZCBwcm9iYWJseSBiZSAiYXJlIi8iZXNz ZSIgKHRoZSBhY3V0ZSBvbiB0aGUgYSBtYXkgb3IgbWF5IG5vdCBoYXZlIGJlZW4gbGVmdCBvZmYs IGJ1dCB0aGUgY2xvc2luZyBxdW90ZSBhZnRlciBhcmUgaXMgZGVmaW5hdGVseSBtaXNzaW5nLikK CioqIE15IGNvcHkgc2hvd3MgdGhlIGFjdXRlLgoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1 c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCi0tLQoKCgohQ2hhcHRl ciA0CgoKCiogU2VjdGlvbiA0LCBwYWdlIDU0LiBUaGUgYm9vayBzdGF0ZXMgdGhhdCBmdSdpdmxh IHdpdGggYSBmb3JtIGxpa2UgJydzcGEnaScnIGFyZSB2YWxpZC4gVGhleSBhcmUgbm90LCB0aGV5 IGZhaWwgdGhlIHNsaW5rdSdpIHRlc3QuICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92 ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gNiwgcCA1OCwgIi1sYWMi IGluIHRoZSB0aGlyZCB0YWJsZSBpbiB0aGF0IHNlY3Rpb24gc2hvdWxkIGJlICItbGFjLSIKCgoK KiBTZWN0aW9uIDYsIGl0IHNheXMgIk1vc3QgY21hdm8gdGhhdCBoYXZlIHJhZnNpIGFyZSBvbmVz IHVzZWQgaW4gY29tcG9zaW5nIHRhbnJ1IChmb3IgYSBjb21wbGV0ZSBsaXN0LCBzZWUgQ2hhcHRl ciAxMikiLCBidXQgdGhlcmUgaXMgbm8gc3VjaCBsaXN0IGluIENoYXB0ZXIgMTIsIG9yIGFueXdo ZXJlIGluIHRoZSBib29rIChqdSdvc2FpKS4gUGVyaGFwcyBpdCB3YW50cyB0byBwb2ludCB0byB0 aGUgbGlzdCBvZiBQQSByYWZzaSBpbiBDaGFwdGVyIDE4IHNlY3Rpb24gMjU/IE9yIHRvIHRoZSBs aXN0cyBvZiB0YW5ydSBpbiBDaGFwdGVyIDUgc2VjdGlvbnMgMTQgYW5kIDE1PwoKKiogV2hhdCBJ IHByb2JhYmx5IG1lYW50IHdhcyB0aGF0IENoYXB0ZXIgMTIsIHRha2VuIGFzIGEgd2hvbGUsIGRp c2N1c3NlcyB0aGUgY21hdm8gdXNlZCBpbiBjb25zdHJ1Y3RpbmcgdGFucnUuICBJIGRvbid0IHRo aW5rIGFueSBzcGVjaWZpYyBsaXN0IGV2ZXIgZXhpc3RlZC4gIEknZCBqdXN0IGRyb3AgdGhlIHBh cmVudGhldGljYWwgc2VudGVuY2UuCgoKCiogU2VjdGlvbiA2LCBqdXN0IGFmdGVyIGV4YW1wbGUg Ni45LiBJdCBzYXlzICJzb21lIG9mIHRoZSB1bnJlZHVjZWQgZm9ybXMgaW4gdGhlIHByZXZpb3Vz IGV4YW1wbGUiLCBidXQgaXQgaXMgbm90IHJlZmVycmluZyB0byB0aGUgcHJldmlvdXMgZXhhbXBs ZTogaXQgaXMgcmVmZXJyaW5nIGFsbCB0aGUgd2F5IGJhY2sgdG8gZXhhbXBsZXMgNi4xIGFuZCA2 LjIsIHNvIGl0IHNob3VsZCBiZSAic29tZSBvZiB0aGUgdW5yZWR1Y2VkIGZvcm1zIGluIHRoZSBw cmV2aW91cyBleGFtcGxlX19zX18iLgoKKiogJydJTkNMVURFRCBJTiBEQUctQ0xMJycgKHpvcnQn cyBmb3JrIGF0IGxlYXN0KQoKKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkgIFJl ZmVyIGV4cGxpY2l0bHkgdG8gNi4xIGFuZCA2LjIKCgoKKiBTZWN0aW9uIDcsIHBhZ2UgNjAuIElu IGV4YW1wbGUgNi4xNiwgdGhlIHdvcmQgInhhcm55a2FyY2UiIGlzIGdsb3NzZWQgYXMgIndhci1j YXIiLiBFaXRoZXIgdGhlIGdsb3NzIHNob3VsZCBiZSB1cGRhdGVkIHRvIHJlZmxlY3QgdGhlIHZl bGp2byAoInN0dWJib3JuLWNhciIpLCBvciB0aGUgbHVqdm8gc2hvdWxkIGJlIHVwZGF0ZWQgdG8g cmVmbGVjdCB0aGUgZ2xvc3MgImphbWthcmNlIgoKKiogVGhlIGxhdHRlciAoKEFwcHJvdmVkIEVy cmF0dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBT ZWN0aW9uIDcsIG1ha2luZyBhIHR5cGUgMyBmdSdpdmxhLCBzdGVwIDUgc2hvdWxkIHJlYWQgInN0 ZXBzIDEtNCIsIG5vdCAic3RlcHMgMS01Ii4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBw cm92ZWQpKQoKCgoqIFNlY3Rpb24gNywgc3RlcCA1IG9mIHRoZSBTdGFnZSAzIGZ1J2l2bGE6ICJp ZiB0aGUgcmFmc2kgZW5kcyBpbiAnJ3InJyBhbmQgdGhlIHJlc3Qgb2YgdGhlIGZ1J2l2bGEgYmVn aW5zIHdpdGggJyduJycgKG9yIHZpY2UgdmVyc2EpIHVzZSBhbiAnJ2wnJy1oeXBoZW4iIHNob3Vs ZCByZWFkICAiaWYgdGhlIHJhZnNpIGVuZHMgaW4gJydyJycgYW5kIHRoZSByZXN0IG9mIHRoZSBm dSdpdmxhIGJlZ2lucyB3aXRoICcnbicnLCAnJ3RjJycsICcndHMnJywgJydkeicnIG9yICcnZGon Jywgb3IgdGhlIHJhZnNpIGVuZHMgaW4gJyduJycgYW5kIHRoZSByZXN0IG9mIHRoZSBmdSdpdmxh IGJlZ2lucyB3aXRoICcncicnIHVzZSBhbiAnJ2wnJy1oeXBoZW4iLiAgKChBcHByb3ZlZCBFcnJh dHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoKCiogVGhlIGVuZCBvZiBzZWN0aW9uIDcgc2VlbXMgdG8g aW1wbHkgdGhhdCBjbWVuZSBhcmUgZXhlbXB0IGZyb20gdGhlIG5vcm1hbCByZXN0cmljdGlvbnMg b24gY29uc29uYW50IGNsdXN0ZXJzIGFzIGxvbmcgYXMgZWFjaCBjb25zb25hbnQgcGFpciBpcyB2 YWxpZC4KCgoKKiBTZWN0aW9uIDguIEV4YW1wbGUgOC4xMCAnJ2RqYW5kam9ueicnIGlzIG5vdCB2 YWxpZCBsb2piYW4gYXMgaXQgY29udGFpbnMgdGhlIGZvcmJpZGRlbiBjb25zb25hbnQgc2VxdWVu Y2UgYG5kamAuICAgICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKSAgUmVwbGFj ZSB3aXRoIGEgZGlmZmVyZW50IG5hbWUuCgoqKiBSZXBsYWNpbmcgd2l0aCAiSm9obiBCcm93biIg YXMgImRqYW5icmF1biIuIC0tcmxwb3dlbGwgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBT ZWN0aW9uIDgsIHBhZ2UgNjYuIEV4YW1wbGUgOC4xMi4gU2F5cyB0aGF0IHRoZSBnaXNtdSAic29s cmkiIG1lYW5zICJhY3R1YWxseSwgJ3BlcnRhaW5pbmcgdG8gdGhlIHN1biciLiBUaGlzIGlzIGZh bHNlLiBBY2NvcmRpbmcgdG8gdGhlIGdpc211IGxpc3QsIGl0IG1lYW5zICcnaXMnJ2Egc3VuLgoK KiogTGVhdmUgdGhpcyBvbmUgYWxvbmUuICBBcyBhIHNlbHRhdSwgInNvbHJpIiBkb2VzIGluZGVl ZCBtZWFuICJzb2xhciIuICAtLWpjb3dhbgoKCgoqIFNlY3Rpb24gMTEsIDVhKSAnJ0V4YW1pbmUg YWxsIHRoZSBDL0MgY29uc29uYW50IHBhaXJzIHRoYXQgam9pbiB0aGUgQ1ZDIHJhZnNpLCBhbmQg YWxzbyB0aGUgcGFpciBiZXR3ZWVuIHRoZSBsYXN0IENWQyBhbmQgdGhlIFggcG9ydGlvbiwgaWdu b3JpbmcgYW55ICJ5Ii1oeXBoZW4gYmVmb3JlIHRoZSBYLicnIHNob3VsZCByZWFkIGluc3RlYWQ6 ICcnRXhhbWluZSBhbGwgdGhlIEMvQyBjb25zb25hbnQgcGFpcnMgdXAgdG8gdGhlIGZpcnN0ICJ5 Ii1oeXBoZW4sIG9yIHVwIHRvIHRoZSBlbmQgb2YgdGhlIHdvcmQgaW4gY2FzZSB0aGVyZSBhcmUg bm8gInkiLWh5cGhlbnMuJycKCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92 ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gMTIuIEluIEV4YW1wbGVz IDEyLjIsIDEyLjMgYW5kIDEyLjQgdGhlIGNhbGN1bGF0aW9ucyBhcmUgZ2l2ZW4gYXMgMzI1MDAg bWludXMgdGhlIHNjb3JlLCBpbnN0ZWFkIG9mIHNpbXBseSB0aGUgc2NvcmUuIChQcm9iYWJseSBm cm9tIHByZXZpb3VzIHZlcnNpb25zIG9mIHRoZSBhbGdvcml0aG0uKSAgICAoKEFwcHJvdmVkIEVy cmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBTZWN0aW9uIDEzLCBwYWdlIDc0LCB0aGlyZCB0 YWJsZTogdGhlcmUgaXMgbm8gc3BhY2UgYmV0d2VlbiAibG9qYmF1Z3JpIiBhbmQgImxvamJhbmd5 Z3JpIiwgc28gdGhhdCB0aGV5IGFyZSBydW4gaW50byBvbmUgd29yZCBpbiB0aGUgc2Vjb25kIGNv bHVtbiBvZiB0aGUgdGFibGUuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkK CgoKKiBTZWN0aW9uIDE1IHN0YXRlcyB0aGF0ICJkemlwbyIgY29tZXMgZnJvbSAiY2FkenUgY2lw bmkiICgid2Fsa2luZyBiaXJkIikuICBUaGlzIGZhaWxzIHRvIG1ha2Ugc2Vuc2UgZWl0aGVyIGV0 eW1vbG9naWNhbGx5IG9yIHNlbWFudGljYWxseSAoSWYgdGhlIG5hbWUgcmVmZXJzIHRvIHBlbmd1 aW5zLCB0aGVyZSBhcmUgYSBsb3Qgb2Ygb3RoZXIgZmVhdHVyZXMgb2YgQW50YXJjdGljYSB0aGF0 IGFyZSBtb3JlIHByb21pbmVudCBhbmQgbm90IHNoYXJlZCBieSBvdGhlciBwbGFjZXMpLiAgSSBz dXNwZWN0IHRoYXQgdGhlIHdvcmQgbWF5IGFjdHVhbGx5IGNvbWUgZnJvbSAiZGl6bG8gZGFwbHUi ICgibG93IGlzbGFuZCIpLCB3aGljaCBpcyBhIHNvbWV3aGF0IG1vcmUgcmVhc29uYWJsZSBuYW1l LgoKKiogTm90IGFuIGVycmF0dW0sIHRoZSB3b3JkIHJlYWxseSBkb2VzIGNvbWUgZnJvbSAiY2FE WnUgY0lQbmkiLiBUaGF0IGl0IGZhaWxzIHRvIG1ha2Ugc2Vuc2UgZG9lc24ndCBjaGFuZ2UgdGhl IGZhY3QgdGhhdCB0aGF0IGlzIGhvdyB0aGV5IGNvbnN0cnVjdGVkIGl0LiBUaGUgZXR5bW9sb2dp ZXMgb2YgImJlbXJvIiBhbmQgImtldGNvIiBtYWtlIGV2ZW4gbGVzcyBzZW5zZSwgYnkgdGhlIHdh eS4KCioqKiBDb3JyZWN0LCBidXQgdGhlIGV0eW1vbG9naWVzIGFyZSB3aGF0IHRoZXkgYXJlLiAg LS1qY293YW4KCgoKLS0tCgoKCiFDaGFwdGVyIDUKCgoKKiBTZWN0aW9uIDYsIGV4YW1wbGUgNi4x NTogSXQgc2F5cyB7eGFtZ3Ugam8gY29ydHUgbnVudGF2bGF9LCBhbmQgdGhlIGdsb3NzIHNheXMg eyhnb29kIGlmLWFuZC1vbmx5LWlmIHNob3J0KSBzcGVlY2h9LCBidXQge2NvcnR1fSBtZWFucyAi aHVydCIsIG5vdCAic2hvcnQiLgoKKiogJydJTkNMVURFRCBJTiBEQUctQ0xMJycgIChjaGFuZ2Vk IHRvIHt0b3JkdX0pIChpbiB6b3J0J3MgZm9yayBhdCBsZWFzdCkgKChBcHByb3ZlZCBFcnJhdHVt fGpjb3dhbiBBcHByb3ZlZCkpCgoKCiogRXhhbXBsZSA2LjE2OiB2YWpuaSBqdSBzZWxwbHVrYSBu dW50YXZsYSAsICAoaW1wb3J0YW50IHdoZXRoZXItb3Itbm90IHBsZWFzaW5nKSBldmVudC1vZi10 YWxraW5nCgoqKiBTaG91bGQgYmUgcGx1a2EsIG5vdCBzZWxwbHVrYS4gICgoQXBwcm92ZWQgRXJy YXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNl Y3Rpb24gOCBzYXlzICJpbnZvbHZpbmcgc2VsbWEnbyBWT2hBIGFuZCBHT2hJLCBleHBsYWluZWQg aW4gQ2hhcHRlciA3IiwgYnV0IFZPaEEgZG9lc24ndCBhcHBlYXIgaW4gQ2hhcHRlciA3LiBWT2hB IGRvZXNuJ3QgZXZlbiBzZWVtIHRvIGJlIGEgc2VsbWEnbywgZm9yIHRoYXQgbWF0dGVyLiBBbHNv LCBwcm9iYWJseSBHT2hJIHNob3VsZCBiZSBHT2hBPwoKCgoqIFNlY3Rpb24gOCwgcGFnZSA5Ni85 NzogRXhhbXBsZSA4LjEzIG5lZWRzIHNvbWUga2luZCBvZiB0ZXJtaW5hdG9yIChsaWtlICJiZSdv IikgYmVmb3JlIHRoZSAiY28iLiAgICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQp KQoKCgoqIEFsc28sIHRoZSBwcmVjZWRpbmcgcGFyYWdyYXBoIHN1Z2dlc3RzIHRoYXQgImJlIiBp cyB0aGUgb25seSB3YXkgdG8gZmlsbCBzZWxicmkgcGxhY2VzIG90aGVyIHRoYW4geDEuIFRoaXMg aXMgbm90IHRoZSBjYXNlOiAibWkgbGUgemFyY2kgY3Uga2xhbWEgY28gc3V0cmEiIHdvdWxkIGFs cwoKbyB3b3JrLgoKKiogSSBkb24ndCBhZ3JlZSB0aGF0IHRoZXJlJ3MgYW55IHN1Y2ggc3VnZ2Vz dGlvbiwgYWx0aG91Z2ggYWRkaW5nIGEgc2Vjb25kIHBvc3NpYmlsaXR5IGlzIGZpbmUgd2l0aCBt ZS4gIC0tamNvd2FuCgoKCiogU2VjdGlvbiA5IGxpc3RzICJrZWkiIGFzIHRoZSB0ZXJtaW5hdG9y IGZvciBudSwgYnV0IGl0J3Mgbm90IG9ubHkgZm9yIG51LCBidXQgZm9yIGFsbCBvZiBOVS4gICgo QXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoKCgoqIFNlY3Rpb24gMTQsIHBhZ2Ug MTA0IHNheXMgImRhZHlsc2kiIGZvciAiZGFkeXNsaSIuCgoqKiAoKEFwcHJvdmVkIEVycmF0dW18 Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBTZWN0aW9u IDE0LCBwYWdlIDEwNSB1c2VzICJ6ZGFuaSBsaWpncmkiIGluIHRoZSBleGFtcGxlIGxpc3QsIGJ1 dCB0aGUgcGFyYWdyYXBoIGFmdGVyLCBhcyB3ZWxsIGFzIHRoZSBuZXh0IGxpc3QsIHJlZmVyIHRv ICJ6ZGFuaSBsaW5qaSIgYW5kICJsaW5qaSB6ZGFuaSIuCgoKCiogU2VjdGlvbiAxNCwgcGFnZSAx MDUgaGFzIHRoZSBsdWp2byAiY3B1bWknaSIgYnV0IGRlZmluZXMgaXQgYXQgdGhlIGJvdHRvbSBv ZiB0aGUgc2V0IGFzICJjcGFtaSdpIi4KCioqIGN1YW1pJ2kgcyBwdWxsLW1hY2hpbmUsIHNvIHVz aW5nIHRoYXQgKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVE RUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlvbiAxNCwgcGFnZSAxMDYgc2F5cyAicGxpc2UgdGFw bGEiIGZvciAiYXBwbGUgY2FrZSIuIERvZXMgVHVya2lzaCByZWFsbHkgcmVmZXIgdG8gYSBjYWtl IGFzIGEgdGlsZSwgb3IgaXMgdGhpcyBhIG1pc3VuZGVyc3RhbmRpbmcgb2YgdGhlIGRlZmluaXRp b24gb2YgInRhcGxhIj8KCioqIE5vLCBpdCdzIHRoYXQge3RhcGxhfSBjYW4gbWVhbiBib3RoIGNh a2UgYW5kIHRpbGUsIGFzIHRoZSBnaXNtdSBsaXN0IHNob3dzOyBpdCdzIGEgZ2VuZXJpYyB3b3Jk IGZvciBhIGZsYXQgMy1EIHNoYXBlLCBvciBzaG9ydCBjeWxpbmRlci4gIFN0ZXQuICAtLWpjb3dh bgoKCgoqIFNlY3Rpb24gMTQsIHBhZ2UgMTA4IHNheXMgInR1bWxhIHNwaXNhIi4gVGhpcyBzaG91 bGQgcHJvYmFibHkgYmUgInR1bWxhIHBhZ2J1Iiwgc2luY2UgcGllY2VzIG9mIGxhbmQgYXJlIG5v dCBhY3R1YWxseSBkZXRhY2hlZC4KCioqIFdoYXQgbWFrZXMgeW91IHRoaW5rIHRoYXQgc3Bpc2Eg aGF2ZSB0byBiZSBkZXRhY2hlZD8gIFN0ZXQuICAtLWpjb3dhbgoKCgoqIFNlY3Rpb24gMTQsIHBh Z2UgMTA5IHNheXMgInJvc3R1IG1vanlzdSdhIi4gInJvc3R1IiBpcyBub3QgYSBMb2piYW4gZ2lz bXUsIG5vciBhbiBPbGQgTG9nbGFuIHByaW1pdGl2ZS4gSXQncyBzdXBwb3NlZCB0byBiZSAibXJv c3QKCnUiLgoKKiogIk1yb3N0dSIgaXMgY29ycmVjdCwgYW5kIHRoYXQncyB0aGUgcmVhZGluZyBv ZiB0aGUgb25saW5lIHZlcnNpb24uICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVk KSkKCgoKKiBTZWN0aW9uIDE0LCAibnVua2lsYnJhIiBpcyBjbGVhcmx5IG5vdCAic2hhcnBlbmVy IiwgYW5kIGV2ZW4gaWYgaXQgd2FzIHVzaW5nIHRoZSByaWdodCByYWZzaSBmb3IgY2FicmEsIHRo YXQgc3RyaWtlcyBtZSBhcyBhIHByZXR0eSBjcmFwcHkgbHVqdm87IG5lZWRzIHplbmJhIG9yIHpt YWR1IG9yIGJpbnhvIG9yIHNvbWV0aGluZy4KCgoKKiBTZWN0aW9uIDE0LCBwYWdlIDExMiBsaXN0 cyBudW1lcm91cyB0YW5ydSBleGFtcGxlcyB3aG9zZSBtZWFuaW5ncyBhcmUgaHlwZXJueW1zIG9m IHRoZSB0ZXJ0YXUgaW5zdGVhZCBvZiBoeXBvbnltcy4gVGhpcyBjb250cmFkaWN0cyB0aGUgcHJp bWFyaW5lc3Mgb2YgdGhlIHRlcnRhdSBhcyBkZWZpbmVkIG9uIHBhZ2UgODQuIFRoZSB3b3JkICJq YSIgc2hvdWxkIHByb2JhYmx5IGJlIGluc2VydGVkIGJldHdlZW4gdGhlIGNvbnN0aXR1ZW50cywg b3IgdGhlIGVudGlyZSBzZWN0aW9uIHNob3VsZCBiZSByZW1vdmVkLgoKKiogU3RldC4gIExpb25z IGNhbid0IGJlIG1hZGUgb2Ygc3RvbmUsIGJ1dCB7cm9rY2kgY2luZm99IGlzIGEgbGVnaXRpbWF0 ZSB0YW5ydSBub25ldGhlbGVzcy4gIC0tamNvd2FuCgoKCi0tLQoKCgohQ2hhcHRlciA2CgoKCiog RW5kIG9mIHNlY3Rpb24gMiwgaXQgc2F5cyAiY29tcG91bmQgbmVnYXRvciBgYG5ha3UnJyAoZGlz Y3Vzc2VkIGluIENoYXB0ZXIgMTUpIiwgYnV0ICJuYWt1IiBpcyBuZXZlciBtZW50aW9uZWQgaW4g Y2hhcHRlciAxNTsgaW5kZWVkLCB0aGUgb25seSB1c2VzIG9mIHRoZSB3b3JkIHtrdX0gYXQgYWxs IGFyZSBhZnRlciB0aGUgd29yZHMge2ppJ3V9IG9yIHtuYSdpfS4gQ2hhcHRlciAxNiB0YWxrcyBh Ym91dCB7bmFrdX0uCgoqKiAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJyAoem9ydCdzIGZvcmsgYXQg bGVhc3QpIGJ1dCBuZWVkcyBhcHByb3ZhbAoKCgoqIFNlY3Rpb24gMTIsIHAuIDEzOCBjbGFpbXMg dGhhdCB0aGUgc3VtdGkgaW4gZXhhbXBsZXMgMTIuMiBhbmQgMTIuMyBvcGVyYXRlIGxpa2UgZXhh bXBsZXMgMi41IGFuZCAzLjYgcmVzcGVjdGl2ZWx5LiAiMi42IGFuZCAzLjYiIGlzIGFsbW9zdCBz dXJlbHkgd2hhdCB3YXMgbWVhbnQuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVk KSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBJbiBzZWN0aW9uIDExIEV4YW1wbGUgMTEu MiBvY2N1cnMgdHdpY2UuCgoqKiAoKEFwcHJvdmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJvdmVk KSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBTZWN0aW9uIDIgaGFzIGV4YW1wbGVzIDIu MyBhbmQgMi41IHRvIHNob3cgdGhlIGRpZmZlcmVuY2UgYmV0d2VlbiB7bG99IGFuZCB7bGV9LiBF eGFtcGxlIDIuNSBhbmQgdGhlIHN1YnNlcXVlbnQgdGV4dCBzYXkgdGhhdCB7bG8gbmFubXUgY3Ug bmlubXV9IGlzIG5lY2Vzc2FyaWx5IGZhbHNlIGluIGxvamJhbiBzaW5jZSB7bm9kYSBuYW5tdSBn aSdlIG5pbm11fS4gVGhpcyBjb250cmlidXRlcyB0byB0cmFucy1lcmFzdXJlLCBhbmQgc2hvdWxk IGJlIHJldmlzZWQuCgoKCiogSW4gc2VjdGlvbiA1IGJldHdlZW4gZXhhbXBsZXMgNS4yIGFuZCA1 LjMsIGl0IHNheXMgdGhhdCB0aGUgdHlwaWNhbCBsaW9uIGJlc3QgZXhlbXBsaWZpZXMgdGhlIHNl dCBvZiBsaW9ucy4gVGhpcyBpcyBmYWxzZSwgaXQgZXhlbXBsaWZpZXMgbm90IHRoZSBzZXQsIGJ1 dCB0aGUgbWVtYmVycyBvZiB0aGF0IHNldC4KCgoKLS0tCgoKCiEgQ2hhcHRlciA3CgoKCiogU2Vj dGlvbiA2LCBwYWdlIDE1NSBoYXMgYSBub3RlIGJlbG93IGV4YW1wbGUgNi4xMyB0aGF0IHNheXMs IGluIHBhcnQ6ICJUaGUgTG9qYmFuIGRvZXMgbm90IGNvbnRhaW4gYW4gZXF1aXZhbGVudCBvZiB0 aGUgIm15IiBpbiBjb2xsb3F1aWFsIEVuZ2xpc2g7IiBhbmQgdGhlbiBnb2VzIG9uIHRvIGV4cGxh aW4gaG93IGV4YW1wbGUgNi4xMyBjb3VsZCBiZSBtb2RpZmllZCB0byBpbmNsdWRlICB0aGUgcmVs YXRpb25zaGlwIGJldHdlZW4gdGhlIHNwZWFrZXIgYW5kIHRoZWlyIHNvbiBhbmQgZGF1Z2h0ZXIu ICBJIGJlbGlldmUgeW91IGNvdWxkIHNheSAibGUgbWkgYmVyc2EiIG9yICJsZSBiZXJzYSBwZSBt aSIgdG8gZXhwcmVzcyB0aGUgRW5nbGlzaCAibXksIiB0aGVyZWZvciByZW1vdmluZyB0aGUgKHBy ZXN1bWFibHkgaW5hY2N1cmF0ZSkgbm90ZSBhbmQgbWFraW5nIHRoZSBMb2piYW4gdHJhbnNsYXRp b24gbW9yZSBhY2N1cmF0ZS4KCioqIFN1cmUgeW91IGNvdWxkLCBidXQgdGhlIHBvaW50IG9mIHRo ZSBub3RlICh3aGljaCBpcyAnJ25vdCcnIGluYWNjdXJhdGUpIGlzIG5vdCB0ZWFjaGluZyBob3cg dG8gdXNlIHJlbGF0aXZlIGNsYXVzZXMsIGJ1dCB0byBjbGFyaWZ5IHRoYXQgdGhlIGlkaW9tYXRp YyBFbmdsaXNoIHZlcnNpb24gY29udGFpbnMgbW9yZSBpbmZvcm1hdGlvbiB0aGFuIHRoZSBMb2pi YW4gdmVyc2lvbiBkb2VzLiAgU3RldC4KCgoKKiBTZWN0aW9uIDYsIHBhZ2UgMTU2IGhhcyAnJ2th cmNhJycgZm9yICcna2FyY2UnJy4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQp KQoKCgoqIEFmdGVyIGV4YW1wbGUgNi4xOCBpcyBhIHBhcmFncmFwaCB0aGF0IHF1b3RlcyBub24t ZXhpc3RlbnQgdGV4dCBmcm9tIGV4YW1wbGUgNi4xMC4gICJnbydlIHJhJ28iIHNob3VsZCByZWFk ICJnbydpIHJhJ28iIGFuZCAiZG8gZ28nZSIgc2hvdWxkIHJlYWQgIm1pIGdvJ2kiCgoqKiBUaGUg Y29ycmVjdCBjb3JyZWN0aW9uIGlzIHRvIHJlcGxhY2UgIkIncyBzdGF0ZW1lbnQiIHdpdGggIkEn cyBzZWNvbmQgc3RhdGVtZW50Ii4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQp KQoKKioqIE5vdCByZWFsbHkuICJnbydlIHJhJ28iIGluIEEncyBzZWNvbmQgc3RhdGVtZW50IHdv dWxkIG1lYW4gdGhlIHNhbWUgYXMgImdvJ2UiLCB3aGljaCBpcyB3cm9uZy4gVGhlIG9yaWdpbmFs IGNvcnJlY3Rpb24gaXMgdmFsaWQgdGhvdWdoLgoKCgoqU2VjdGlvbiA2LCB0aGUgZXhjZXB0aW9u cyB0byB0aGUgYW5hcGhvcmEgcnVsZXMgYXJlIGFsbW9zdCBjZXJ0YWlubHkgaW5jb21wbGV0ZS4g SW4gcGFydGljdWxhciAibWEiIGFuZCAiY2UndSIgZGVmaW5pdGVseSB3YXJyYW50IGV4Y2VwdGlv bnMuCgoKCiogU2VjdGlvbiA3LCBleGFtcGxlIDcuNyBoYXMgIm1pIHpiYXN1IGxvaSBtdWRyaSB6 aSdvIiBmb3IgIm1pIHpiYXN1IGxlIGRpbmp1IHppJ28iCgoqKiAoKEFwcHJvdmVkIEVycmF0dW18 Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBTZWN0aW9u IDgsIHAuIDE1OCBpbXBsaWVzIHRoYXQgJyd2bydhJyctc2VyaWVzIGFuYXBob3JhIHJlZmVyIHRv IHN1bXRpIG9mIHRoZSBicmlkaSB0aGV5IHRoZW1zZWx2ZXMgYXJlIHN1bXRpIG9mLiBUaGlzIGNv bnRyYWRpY3RzIHRoZSBjbWF2byBsaXN0LCBhbmQgaXMgaW5jb3JyZWN0OiAnJ3ZvJ2EnJy1zZXJp ZXMgYW5hcGhvcmEgKGFjY29yZGluZyB0byB0aGUgbWEnb3N0ZSkgcmVmZXIgdG8gc3VtdGkgb2Yg dGhlIG91dGVybW9zdCBicmlkaSB3aXRoaW4gdGhlIGN1cnJlbnQgc2VudGVuY2UuIFRoaXMgbWFr ZXMgdGhlbSBsb2dvcGhvcnMvbG9uZyBkaXN0YW5jZSByZWZsZXhpdmVzLCByYXRoZXIgdGhhbiBz aG9ydC1kaXN0YW5jZSByZWZsZXhpdmVzLCBhcyBpcyBub3JtYWwgaW4gaHVtYW4gbGFuZ3VhZ2Uu IFRodXMsIGluICcnbWkgbmVsY2kgbGVudSBkbyBwcmFtaSB2bydhJycsICcndm8nYScnbWVhbnMg JydtaScnLCBub3QgJydkbycnLgoKKipfXy0tPl9fKChXaHkgdGhlIEJvb2sgaXMgUmlnaHQgYW5k IHRoZSBtYSdvc3RlIGlzIFdyb25nKSkKCioqKldoaWNoIG9mIHRoZSB0d28gY2FzZXMgaXMgbm9y bWFsIGluIGh1bWFuIGxhbmd1YWdlPyBJZiB5b3UnZCB3cml0dGVuIGl0IGluIExvamJhbiwgSSdk IGtub3chCgoqKioqIEknZCBndWVzcyB0aGF0IHNob3J0LWRpc3RhbmNlIGlzIG5vcm1hbCwgYi9j IG90aGVyd2lzZSBpdCB3b3VsZCBub3QgYmUgd29ydGggY29tcGFyaW5nIHRoZSB0d28uIEJ1dCBv ZiBjb3Vyc2UgaW4gbG9qYmFuIHdlIHdvdWxkbid0IGhhdmUgdG8gZ2xvcmsgdGhhdC4KCioqKioq IFNob3J0LWRpc3RhbmNlIGlzIGluZGVlZCBub3JtYWwsIGJ1dCBMb2piYW5pc3RzIGhhdmUgY29u c2lzdGVudGx5IHVzZWQgbG9uZy1kaXN0YW5jZS4gIE5pY2sgd3JvdGUgYSBwZWVyLXJldmlld2Vk IHBhcGVyIG9uIHRoaXMuICAtLWpjb3dhbgoKCgoqIEV4YW1wbGUgNy44LjUgKHAxNTkpOiBiYWpy YSBvbiB0aGlyZCBsaW5lIHNob3VsZCBiZSBiYWp5a2xhLCBsaWtlIHRoZSBvdGhlcnMuCgoqKiAo KEFwcHJvdmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUct Q0xMJycKCgoKKiBTZWN0aW9uIDgsIGl0IHNheXMgIkV4YW1wbGUgOS4zIGlzIGEgdHJ1bHkgcHJl Z25hbnQgcXVlc3Rpb24uLi4iIHdoZW4gZXhhbXBsZSA5LjIgaXMgdGhlIHByZWduYW50IHF1ZXN0 aW9uLCBhbmQgZXhhbXBsZSA5LjMgaXMgYSBiZXR0ZXIgd2F5IG9mIGV4cHJlc3NpbmcgIldobyBh cmUgeW91PyIKCgoKKiBTZWN0aW9uIDE1LCBpdCBzYXlzICJGaW5hbGx5LCBsdWp2byBpbnZvbHZp bmcgYGB6aSdvJycgYXJlIGFsc28gcG9zc2libGUsIGFuZCBhcmUgZnVsbHkgZGlzY3Vzc2VkIGlu IENoYXB0ZXIgMTIiLCBidXQgbm93aGVyZSBkb2VzIENoYXB0ZXIgMTIgbWVudGlvbiB0aGUgd29y ZCB7emknb30sIG11Y2ggbGVzcyBsdWp2byBpbnZvbHZpbmcgaXQuIFRoaXMgaXMgcHJvYmFibHkg YSBDaGFwdGVyIDEyIGVycmF0dW0uCgotLS0KCgoKIUNoYXB0ZXIgOAoKCgoqIFNlY3Rpb24gMS4g RXhhbXBsZSAxLjggaXMgc2FpZCB0byBiZSBlcXVpdmFsZW50IHRvIEV4YW1wbGUgMS40LCB3aGVu IGl0IGlzIGluc3RlYWQgZXF1aXZhbGVudCB0byBFeGFtcGxlIDEuNS4KCgoKKiBJbiBTZWN0aW9u IDMgdGhlIGV4YW1wbGUgMy4yMCBzaG91bGQgaGF2ZSB7eGFuY2V9IGluc3RlYWQgb2Yge3hhbmNp fSwgd2hpY2ggaXMgZGVmaW5pdGVseSBhIHR5cG8uIC0taWRvbnRrbncKCioqICgoQXBwcm92ZWQg RXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoq IFNlY3Rpb24gOCwgcC4gMTgxOiAgOC4xKSAnJ2xpIHBhaSBub2kgbmEnZSBmcmludSBuYW1jdScn c2hvdWxkIGJlICcnbGkgcGFpIG5vaSBuYSdlIGZyaW51IGN1IG5hbWN1JycuICAoKEFwcHJvdmVk IEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBTZWN0aW9uIDgsIEV4YW1wbGUgOC42LCB0 aGUgdGhpcmQgbGluZSwgIkkgcnVubmluZ2x5LWdvIHRvLXRoaXMgW3JlY2lwcm9jaXR5XSBbeDMg b2YgdGhpcyBicmlkaV0gZnJvbS10aGF0IiwgaXMgbm90IHRoZSB1c3VhbCBkZWNlbnQgRW5nbGlz aCBvbmUgd291bGQgZXhwZWN0IGluIHRoYXQgcG9zaXRpb247IHJlcGxhY2VkIHdpdGggIkkgcnVu IHRvIHRoaXMgZnJvbSB0aGF0IGFuZCB2aWNlIHZlcnNhLiIgaXMgZGFnLWNsbCAnJ0lOQ0xVREVE IElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gOSwgZXhhbXBsZSA5LjIgaXMgJydjbydvIHhpcm1h JycuIFRoZW4sICcnTm90ZSB0aGF0IEV4YW1wbGUgOS4yIHNheXMgZmFyZXdlbGwgdG8gc29tZXRo aW5nIHdoaWNoIGRvZXNu4oCZdCByZWFsbHkgaGF2ZSB0byBiZSBhIGhvcnNlLCBzb21ldGhpbmcg dGhhdCB0aGUgc3BlYWtlciBzaW1wbHkgdGhpbmtzIG9mIGFzIGJlaW5nIGEgaG9yc2UsIG9yIGV2 ZW4gbWlnaHQgYmUgc29tZXRoaW5nIChhIHBlcnNvbiwgZm9yIGV4YW1wbGUpIHdobyBpcyBuYW1l ZCAiSG9yc2UiLiBJbiBhIHNlbnNlLCBFeGFtcGxlIDkuMiBpcyBhbWJpZ3VvdXMgYmV0d2VlbiAi Y28nbyBsZSB4aXJtYSIgYW5kICJjbydvIGxhIHhpcm1hIicnLiBJcyB0aGlzIHRydWU/CgoqKiBZ ZXMsIGluIHRoZSBzZW5zZSB0aGF0IGFsbCB1c2VzIG9mICJsZSIgJydtaWdodCcnIG1lYW4gImxh Ii4gIEJ1dCBpdCdzIHByb2JhYmx5IG1vcmUgY29uZnVzaW5nIHRoYW4gaXQncyB3b3J0aC4gIFRy dW5jYXRlIGFmdGVyICJ0aGlua3Mgb2YgYXMgYmVpbmcgYSBob3JzZSIuICAtLWpjb3dhbgoKCgoq IFNlY3Rpb24gOSBzYXlzICcnSW4gdm9jYXRpdmUgcGhyYXNlcyB3aGljaCBhcmUgc2ltcGxlIG5h bWVzIChhZnRlciB0aGUgdm9jYXRpdmUgd29yZHMpLCBhbnkgcmVsYXRpdmUgY2xhdXNlcyBtdXN0 IGNvbWUganVzdCBhZnRlciB0aGUgbmFtZXMnJy4gVGhpcyBpc24ndCB0cnVlLiBSZWxhdGl2ZSBj bGF1c2VzIGNhbiBnbyBiZXR3ZWVuIHRoZSB2b2NhdGl2ZSBhbmQgdGhlIGNtZXZsYS4gICgoQXBw cm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKSAgRHJvcCBpdDsgaXQgcmVmbGVjdHMgYW4g ZWFybGllciBzdGF0ZSBvZiB0aGUgbGFuZ3VhZ2UuCgoKCiogU2VjdGlvbiAxMCwgZXhhbXBsZSAx MC4zIHVzZXMgImtlJ2EgZ29pIGtvJ2Ugem8ndSBrbydhIHpiYXN1IGtlJ2EiIGJ1dCBnbG9zc2Vz IGl0IGFzICIoSVQgPSBpdDIgOiBpdDEgYnVpbHQgaXQyKSIuIFRoZSBhc3NpZ25lZCAia28nZSIg aXMgbm90IHVzZWQgYXMgZXhwZWN0ZWQgb3IgZGVzY3JpYmVkLCBhbmQgc2hvdWxkIHByb2JhYmx5 IGJlICJrbydhIHpiYXN1IGtvJ2UiLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3Zl ZCkpICBZZXMsICJrbydhIHpiYXN1IGtvJ2UiIGlzIGNsZWFybHkgd2hhdCdzIG1lYW50LgoKCgot LS0KCiFDaGFwdGVyIDkKCgoKKiBTZWN0aW9uIDYsIHBsYWNlIHN0cnVjdHVyZSBvZiAnJ3BpbG5v JycgaXMgbWlzc2luZyAiZm9yIHB1cnBvc2UgeDMiLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dh biBBcHByb3ZlZCkpCgoKCiogU2VjdGlvbiA4LCB0aGUgZXhhbXBsZXMgOC41IGFuZCA4LjYgYXJl IHN1cHBvc2VkIHRvIG1lYW4gdGhlIHNhbWUgdGhpbmcsIGJ1dCBkbyBub3QuCgoqKiBQbGVhc2Ug ZWxhYm9yYXRlLiAgLS1qY293YW4KCioqKiA4LjUgbWVhbnMgIkkgZ2F2ZSB0aGUgYm9vayB0byBK b2huLCBiZWNhdXNlIEpvaG4gZ2F2ZSB0aGUgbW9uZXkgdG8gbWUiIGJ1dCA4LjYgbWVhbnMgIkpv aG4gZ2F2ZSB0aGUgbW9uZXkgdG8gbWUgYmVjYXVzZSBJIGdhdmUgdGhlIGJvb2sgdG8gSm9obi4i CgoqKiAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJyAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFw cHJvdmVkKSkKCgoKKiBTZWN0aW9uIDExLCBkZXNjcmlwdGlvbiBvZiB0aGUgbWVhbmluZyBvZiAi LmlqZSBzZXJpJ2EgdHUnZSIgY29udHJhZGljdHMgdGhlIGV4cGxhbmF0aW9uIG9mIEV4YW1wbGUg OS45LCB3aGljaCB3b3VsZCBzdWdnZXN0ICIuaWplIHJpJ2EgdHUnZSIuCgoKCiogc2VjdGlvbiAx NywgImZyb20gc291cmNlIGFzIGFuIG9yaWdpbiBvZiIgc2hvdWxkIGJlIHR3byBlbnRyaWVzOyAi ZnJvbSBzb3VyY2UiIGFuZCAiYXMgYW4gb3JpZ2luIG9mIiAnJ0lOQ0xVREVEIElOIERBRy1DTEwn JwoKCgotLS0KCgoKIUNoYXB0ZXIgMTAKCgoKKiBTZWN0aW9uIDQsICJ3aGVuIGJvdGggc3BhdGlh bCBhbmQgdGVtcG9yYWwgdGVuc2UgY21hdm8gYXJlIGdpdmVuIGluIGEgc2luZ2xlIHRlbnNlIGNv bnN0cnVjdCwgdGhlIHRlbXBvcmFsIHRlbnNlIGlzIGV4cHJlc3NlZCBmaXJzdCIgZGlzYWdyZWVz IHdpdGggdGhlIHJ1bGUgc2ltcGxlLXRlbnNlLW1vZGFsLTk3MiBpbiB0aGUgQk5GIGdyYW1tYXIu CgoKCiogU2VjdGlvbiA5LCBleGFtcGxlIDkuOSBvbiBwYWdlIDIyNyBoYXMgImNpcmxpIiBmb3Ig ImNpcmxhIi4KCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAnJ0lO Q0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gMTIsIGV4YW1wbGUgMTIuNiB0cmFuc2xh dGVzIG1vcnNpIGFzICJkaWUiIHJhdGhlciB0aGFuICJhbSBkZWFkIiBpbiB0aGUgdHJhbnNsYXRp b24gKGFzIG9wcG9zZWQgdG8gdGhlIGdsb3NzKS4KCgoKKiBTZWN0aW9uIDE2LCBhdCB0aGUgZW5k LCB0aGUgWCBhbmQgWSBpbiB0aGUgMyBmb3JtcyBkb24ndCBmaXQgcHJvcGVybHkgKHRoZSAzcmQg ZG9lc24ndCBtYXRjaCB0aGUgZmlyc3QgdHdvKS4gSSByZWNvbW1lbmQsIGNvcHlpbmcgZnJvbSBT ZWN0aW9uIDIzICh3aGVyZSB0aGV5IGFyZSB3cml0dGVuIGFnYWluIGNvcnJlY3RseSk6CgogICAg ICAgWCAuaSBURU5TRSBibyBZCgogICAgICAgVEVOU0UgZ2kgWCBnaSBZCgogICAgICAgWSBURU5T RSBsZSBudSBYCgoKCiogU2VjdGlvbiAxNywgZXhhbXBsZSAxNy4xMiBzaG91bGQgbm90IGhhdmUg dGhlIHNlY29uZCAiYmV2cmkiLgoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHBy b3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlvbiAxOCwgZXhhbXBsZSAx OC45IGlzIHN1cHBvc2VkIHRvIHNob3cgc2NhbGFyIG5lZ2F0aW9uIG9mIHRlbnNlcyBub3QgbGlt aXRlZCB0byBQVSBhbmQgRkFoQSwgYnV0IHRoZSBleGFtcGxlIHRlbnNlIGlzIHJpJ3UgKEZBaEEy KS4KCgoKKiBTZWN0aW9uIDE5LCBleGFtcGxlIDE5LjEwIHNob3VsZCBoYXZlICJiYSIsIG5vdCAi cHUiLCBhbmQgIltmdXR1cmVdIiwgbm90ICJbcGFzdF0iLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpj b3dhbiBBcHByb3ZlZCkpCgoKCiogU2VjdGlvbiAyNSwgZXhhbXBsZXMgMjUuMSBhbmQgMjUuMiBo YXZlICcnbHUnYScnIGZvciAnJ2xhJ3UnJy4KCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNt aXMgQXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gMjUsIHRo aXMgd2hvbGUgc2VjdGlvbiBpcyBhdCBvZGRzIHdpdGggdGhlIGZvcm1hbCBncmFtbWFyLiBJdCBz YXlzOiAnJ0l0IGlzIGdyYW1tYXRpY2FsIGZvciBhIHRlcm1zZXQgdG8gYmUgcGxhY2VkIGFmdGVy IGEgdGVuc2Ugb3IgbW9kYWwgdGFnIHJhdGhlciB0aGFuIGEgc3VtdGknJy4gIEJ1dCB0aGF0IGlz IGluIGZhY3QgaW5jb3JyZWN0LCBpdCBpcyBub3QgZ3JhbW1hdGljYWwgZm9yIGEgdGVybXNldCB0 byBiZSB0aGUgYXJndW1lbnQgb2YgYSB0YWcuCgoqKiBVbmZvcnR1bmF0ZWx5IHRydWUuICBUZXJt c2V0cyBzdWNrIHJvY2tzLCBhbmQgc29tZSB3b3JrIHdpbGwgaGF2ZSB0byBiZSBkb25lIHRvIG1h a2UgZXZlcnl0aGluZyBzYWlkIGFib3V0IHRoZW0gY29uc2lzdGVudCAtLSBpZiBpdCBpcyBldmVu IHBvc3NpYmxlLiAgUGVyc29uYWxseSwgSSdkIGxpa2UgdG8ganVzdCBidXJuIHRoZW0uICAtLWpj b3dhbiAgJycnTk9GSVgnJycKCgoKKiBTZWN0aW9uIDI3OiBNT2hJIHNlZSBTZWN0aW9uIDI4LCBu b3QgMjcuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKLS0tCgoKCiFD aGFwdGVyIDExCgoKCiogU2VjdGlvbiA0OiBUaGUgdXNlIG9mIGthIGluIEV4YW1wbGUgNC40IChw YWdlIDI1OSkgaXMgZXJyb25lb3VzOyBpdCBzaG91bGQgYmUgZHUndS4gLS0oKEpvaG4gQ293YW4p KSAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBMYXN0IHBhcmFncmFw aCBvZiBzZWN0aW9uIDcgcmVmZXJlbmNlcyBjaGFwdGVyIDUgZm9yIGEgZGlzY3Vzc2lvbiBvZiAi bHUnZSIuICBsdSdlIGlzbid0IG1lbnRpb25lZCBpbiBjaGFwdGVyIDUuICBQcm9iYWJseSBjaGFw dGVyIDYgaXMgbWVhbnQgaGVyZS4KCioqIFllcywgc2hvdWxkIGJlIFNlY3Rpb24gNS4xMC4gICAg KChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoKCiogU2VjdGlvbiA5LCBwYWdl IDI2NiBoYXMgInNhbydyZHppZmEnYSIgaW5zdGVhZCBvZiAic2Enb3JkemlmYSdhIi4KCioqICgo QXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1D TEwnJwoKCgoqIFRoZSBzYW1lIGV4YW1wbGUgKDkuNikgYWxzbyBoYXMga3VjdHJhIGluc3RlYWQg b2Yga3VjdGFpCgoqKiAoKEFwcHJvdmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJ TkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBUaGUgYm9vayB0aXRsZSBpbiBleGFtcGxlIDkuNiBz ZWVtcyB0byBiZSBpbmNvcnJlY3Q6ICJUaGUgQ3J1Y2lmaXhpb24gb2YgSmVzdXMgQ29uc2lkZXJl ZCBBcyBBIERvd25oaWxsIEJpY3ljbGUgUmFjZSIgaXMgYWN0dWFsbHkgIltodHRwOi8vd3d3LmV2 ZXJncmVlbnJldmlldy5jb20vMTAyL2ZpY3Rpb24vZHVvLmh0bWx8VGhlIENydWNpZml4aW9uIENv bnNpZGVyZWQgQXMgQW4gVXBoaWxsIEJpY3ljbGUgUmFjZV0uIgoKKiogVW5hcHByb3ZlZAoKCgoq IFNlY3Rpb24gMTA6IFBhcmFncmFwaCBhYm92ZSBleGFtcGxlIDEwLjcgcmVmZXJlbmNlcyAiQ2hh cHRlciAxMSIuIFRoYXQgc2hvdWxkIHJlYWQgIkNoYXB0ZXIgMTAiLgoKKiogKChBcHByb3ZlZCBF cnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiog U2VjdGlvbiAxMTogRXhhbXBsZSAxMS41IGlzIHtzdSdvZGEgcG9pIHZlcmJhIGN1IGtsYW1hIHJv ZGUgcG9pIGNrdWxlIG5ha3V9LiBJdCBzaG91bGQgYmUge3N1J29kYSBwb2kgdmVyYmEgY3Uga2xh bWEgcm9kZSBwb2kgY2t1bGUga3UnbyBuYWt1fSBvciBhbiBlcXVpdmFsZW50OyBhcyBpdCBzdGFu ZHMgdGhlIG5ha3UgaXMgdW5kZXNpcmFibHkgaW4gdGhlIHJlbGF0aXZlIGNsYXVzZS4KCgoKKiBT ZWN0aW9uIDEyLCBwYWdlIDI2OSBoYXMgZXhhbXBsZXMgMTMuMSBhbmQgMTMuMiwgdGhvc2Ugc2hv dWxkIGJlIGNhbGxlZCAxMi4xIGFuZCAxMi4yLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBB cHByb3ZlZCkpCgoKCi0tLQoKCgohQ2hhcHRlciAxMgoKCgoqIFNlY3Rpb24gMiwgcGFnZSAyNzUu IFRoZSBwYXJhZ3JhcGggdW5kZXIgRXhhbXBsZSAyLjMgcmVmZXJzIHRvIGl0IGFzIEV4YW1wbGUg Mi40ICgyLjQgZG9lc24ndCBldmVuIGV4aXN0KS4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4g QXBwcm92ZWQpKQoKCgoqIFNlY3Rpb24gNSwgcmlnaHQgYWZ0ZXIgZXhhbXBsZSA1LjcuIEl0IHNh eXMgImEiIGluc3RlYWQgb2YgImFuIi4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92 ZWQpKQoKCgoqIFNlY3Rpb24gNiwgcGFnZSAyODAuIEV4YW1wbGUgNi42IHNob3VsZCBoYXZlIGEg c3BhY2UgYmV0d2VlbiAibGEgc3BhdC4iIGFuZCAibm9pIi4KCioqICgoQXBwcm92ZWQgRXJyYXR1 bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rp b24gNywgcGFnZSAyODIuIEV4YW1wbGUgNy41IGhhcyAiYmFuc29pIiBpbnN0ZWFkIG9mICJiYWxz b2kiLgoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVE RUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlvbiAxMSwgcGFnZSAyODUgaGFzICJ4YXNjYWtjdXJu dSIgaW5zdGVhZCBvZiAieGFzeWNha2N1cm51Ii4KCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1n dXNtaXMgQXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gMTIg cmVmZXJzIHRvICJudW5rbGFtYSIgYXMgdGhlIHNhbWUgbHVqdm8gYXMgIm51bmtsYSIuICBFdmVu IGlmIHRoZXNlIGFyZSBlcXVpdmFsZW50IGFsdGVybmF0aXZlcyBpdCB3b3VsZCBiZSBsZXNzIGNv bmZ1c2luZyB0byBiZSBjb25zaXN0ZW50LgoKCgoqIFNlY3Rpb24gMTIgY2xhaW1zIHRoYXQgLWph eC0gaXMgYSByYWZzaSBmb3Ige2phaX0sIGJ1dCBpdCBpc24ndCBpbiBbaHR0cDovL3d3dy5sb2pi YW4ub3JnL3B1YmxpY2F0aW9ucy93b3JkbGlzdHMvcmFmc2kudHh0fGh0dHA6Ly93d3cubG9qYmFu Lm9yZy9wdWJsaWNhdGlvbnMvd29yZGxpc3RzL3JhZnNpLnR4dF0uIERvZXMge2phaX0gaGF2ZSBh IHJhZnNpIG9yIG5vdD8KCioqIEl0IHNob3VsZCwgYnV0IHNvbWVob3cgaXQgbmV2ZXIgZ290IGlu dG8gdGhlIGdpc211IGxpc3QsIGFuZCBjb25zZXF1ZW50bHkgbm90IGludG8gdGhlIHJhZnNpIGxp c3QgZWl0aGVyLiAgU3RldCwgYW5kIHdlJ2xsIGFkZCBpdCB0byB0aGUgZ2lzbXUgbGlzdC4gIC0t amNvd2FuCgoKCiogU2VjdGlvbiAxMiwgcmlnaHQgYXQgdGhlIGVuZCwgc2F5cyB0aGF0IHtmYWl9 IGlzIGV4cGxhaW5lZCBpbiBDaGFwdGVyIDExLCBidXQgQ2hhcHRlciAxMSBtYWtlcyBubyBtZW50 aW9uIG9mIHtmYWl9LiBPbmx5IGNoYXB0ZXJzIDkgYW5kIDEwIGRvLgoKKiogJydJTkNMVURFRCBJ TiBEQUctQ0xMJycgKHpvcnQncyBmb3JrIGF0IGxlYXN0KSAgKChBcHByb3ZlZCBFcnJhdHVtfGpj b3dhbiBBcHByb3ZlZCkpCgoKCiogU2VjdGlvbiAxNCwgZXhhbXBsZSAxNC4yLiBNaXNzaW5nIDwg L3ByZSA+IHRhZywgYW5kIG1pc3NpbmcgPCBwcmU+IHRhZyBmb2xsb3dpbmcgZXhwbGFuYXRvcnkg cGFyYWdyYXBoLgoKCgoqIFNlY3Rpb24gMTQsIHBhZ2UgMjkxLiBUaGUgcGFyYWdyYXBoIHVuZGVy IGV4YW1wbGUgMTQuNyBzYXlzICJzZSB4YW5jZSBtaW5kdSIgaW5zdGVhZCBvZiAic2UgeGFuY2Ug bWluZGUiLgoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5D TFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlvbiAxNSwgdHdvIHBhcmFncmFwaHMgYmVmb3Jl IGV4YW1wbGUgMTUuNy4gSXQgc2F5cyAiVGhlcmUgYXJlIHNvbWUgY29tcGFyYXRpdmUgY29uY2Vw dHMgd2hpY2ggYXJlIGluIHdoaWNoIHRoZSAnc2Ugem1hZHUnIGlzIGRpZmZpY3VsdCB0byBzcGVj aWZ5LiIgVGhlICJ3aGljaCBhcmUgaW4gd2hpY2giIHNlZW1zIGdyYW1tYXRpY2FsbHkgaW5jb3Jy ZWN0LgoKKiogRHJvcCAid2hpY2ggYXJlIi4gIC0tamNvd2FuICAgKChBcHByb3ZlZCBFcnJhdHVt fGpjb3dhbiBBcHByb3ZlZCkpCgoKCiogU2VjdGlvbiAxNSwgZXhhbXBsZSAxNS4xLCB0aGUgeDQg b2Yge3ptYWR1fSBhbmQge21sZWNhfSBzaG91bGQgYmUgImJ5IGFtb3VudCIgb3IgImJ5IHF1YW50 aXR5Iiwgbm90ICJpbiBxdWFudGl0eSIuCgoKCiogU2VjdGlvbiAxNSwgcGFnZSAyOTQsIGV4YW1w bGUgMTUuMTQuICJsYSBhaW5jdGFpbiIgbmVlZHMgYSBwZXJpb2QgYmVmb3JlIGl0IGJlY2F1c2Ug aXQgc3RhcnRzIHdpdGggYSB2b3dlbC4KCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMg QXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgotLS0KCgoKIUNoYXB0ZXIgMTMK CgoKKiBNYW55IGluY2lkZW50cyBvZiBub3QgaGF2aW5nIHBlcmlvZHMgaW4gZnJvbnQgb2Ygdm93 ZWwtaW5pdGlhbCBjbWF2by4KCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92 ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIEluIHNlY3Rpb24gMiwgcC4gMzAwIHJl ZmVyZW5jZXMgdG8gdGhlIGV4YW1wbGVzIGZvciAudWUgYW5kIC51ZWN1J2kgYXJlIGZsaXBwZWQu ICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBTZWN0aW9uIDMsIHBh Z2UgMzAzLCBleGFtcGxlIDMuOS4gImUnZSIgbmVlZHMgYSBwZXJpb2QgYmVmb3JlIGl0LgoKKiog KChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFH LUNMTCcnCgoKCiogU2VjdGlvbiAzLCBwYWdlIDMwMywgZXhhbXBsZSAzLjEwLiAidGlzbmEiIG5l ZWRzIHRvIGJlIHJlcGxhY2VkIHdpdGggInRpc3lnYXUiLgoKKiogKChBcHByb3ZlZCBFcnJhdHVt fGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlv biA0LCBwYWdlIDMwNS4gVGhlIHNjYWxlIHdpdGggdGhlIGdpc211IG1uZW1vbmljcyBpcyBtaXNh bGlnbmVkIHdpdGggdGhlIHNjYWxlIHdpdGggdGhlIG1lbWJlcnMgb2Ygc2VsbWEnbyBDQUkuICJz YWkiIHNob3VsZCBiZSB0YWJiZWQgb25lIHBsYWNlIGxlZnQsIHNvIHRoYXQgaXQgYWxpZ25zIHdp dGggdHNhbGksICZjLgoKCgoqIFNlY3Rpb24gNywgaXQgc2F5cyAiSXQgaXMgbm90IGNsZWFyIGhv dyBtdWNoIHVzZSBsb2dpY2FsbHkgY29ubmVjdGVkIGFic3RyYWN0b3JzIHdpbGwgYmU6IHNlZSBD aGFwdGVyIDEzLiIgSXQgc2hvdWxkIGJlICJDaGFwdGVyIDE1LiIKCioqICcnSU5DTFVERUQgSU4g REFHLUNMTCcnICh6b3J0J3MgZm9yayBhdCBsZWFzdCkgYnV0IG5lZWRzIGFwcHJvdmFsCgoqIFNl Y3Rpb24gMTAsIHBhZ2UgMzEzLiBUaGVyZSBpcyBhIG1pc3Npbmcgc3BhY2UgYmV0d2VlbiAiY29u dGludWUgZW1vdGlvbiIgYW5kICJlbmQgZW1vdGlvbiIuCgoKCiogU2VjdGlvbiAxNS4gQSBzYW1w bGUgZGlhbG9ndWUgIDE1LjQpIC8gfm5wfltDb21tZW50XSBQYW0gc2F5cywgW1BsZWFzZV0gQWxp Y2UsIFtlbmQtb2YtY29tbWVudF0gLyBbQ29tbWVudF0gUGFtIHNheXMsIFtlbmQtb2YtY29tbWVu dF0gW1BsZWFzZV0gQWxpY2UsL34vbnB+ICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92 ZWQpKQoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVE RUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlvbiAxNSwgZXhhbXBsZSAxNS41IC94YW1ndS9nbGVr aS8gPwoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVE RUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlvbiAxNSwgZXhhbXBsZSAxNS4xMCkgL2ZpJ2kgcm8g enZhdGkga28gcGlueGUgcGEgY2thZmkvZmknaSBybyB6dmF0aSAuaSBrbyBwaW54ZSBwYSBja2Fm aS8KCioqIE5vLCB0aGlzIG9uZSBpcyBwZXJmZWN0bHkgZmluZTogImZpJ2kgcm8genZhdGkiIGlz IGEgdm9jYXRpdmUgcGhyYXNlLCB3aGljaCBpcyBhIGZyZWUgbW9kaWZpZXIsIG1lYW5pbmcgdGhh dCBpdCBjYW4gb2NjdXIgYWxtb3N0IGFueXdoZXJlLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dh biBBcHByb3ZlZCkpCgoKCiogU2VjdGlvbiAxNSwgZXhhbXBsZSAxNS4xMykgL2ZpJ28gc2VscGxl amkgbWkvZmknbyBwbGVqaSBtaS8KCioqIEFuZCAid2l0aCBwYXllciIgcmF0aGVyIHRoYW4gIndp dGggcGF5bWVudCI7IGV5J3Mgbm90IHBheWluZyB3aXRoIGVtc2VsZiEgLS0gY2FtZ3VzbWlzCgoq KiAoKEFwcHJvdmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBE QUctQ0xMJycKCgoKKiBTZWN0aW9uIDE1LCBleGFtcGxlIDE1LjEzLiBXcm9uZyB1c2Ugb2Yge3Nl bGZ1fS4ge2JldnJpfSB3b3VsZCBmaXQgYmV0dGVyLgoKLS0tCgoKCiFDaGFwdGVyIDE0CgoKCiog U2VjdGlvbiA4LCByaWdodCBiZWZvcmUgZXhhbXBsZSA4LjkgaXMgInByb2R1Y2luZyBleGFtcGxl IDguMTAiIHdoaWNoIHNob3VsZCBpbiBmYWN0IHJlYWQgInByb2R1Y2luZyBleGFtcGxlIDguOSIu ICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBTZWN0aW9uIDk6IGJl dHdlZW4gZXhhbXBsZSA5LjEwIGFuZCA5LjExLCAiaWRlbnRpZmllZCIgc2hvdWxkIHJlYWQgImlk ZW50aWNhbCIKCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAnJ0lO Q0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gMTEsIHJpZ2h0IGJlZm9yZSBzZWN0aW9u IDEyLiBJdCBzYXlzICJ0ZXJtc2V0cy4uLmFyZSBleHBsYWluZWQgaW4gQ2hhcHRlciAxMiBhbmQg Q2hhcHRlciAxNiIgYnV0IGNoYXB0ZXIgMTIgKHdoaWNoIGlzIG9uIGx1anZvKSBtYWtlcyBhYnNv bHV0ZWx5IG5vIG1lbnRpb24gb2YgdGVybXNldHMuIENoYXB0ZXJzIDkgYW5kIDEwIGRpc2N1c3Mg dGVybXNldHMuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBTZWN0 aW9uIDE0LCBleGFtcGxlIDE0LjE1IGlzIG5vdCBncmFtbWF0aWNhbCAoYWNjb3JkaW5nIHRvIGpi b2ZpJ2UgYW5kIGNhbXhlcykgYmVjYXVzZSBpdCBzYXlzICJwZSdlIC5lIiB3aGVuIGl0IHNob3Vs ZCBzYXkgInBlJ2UgamUiLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoK CiogU2VjdGlvbiAxNCwgZXhhbXBsZSAxNC4xNiBtZW50aW9ucyAic29ybWUiLCB3aGljaCBpcyBw cm9iYWJseSBPbGQgTG9nbGFuLCBhbmQgc2hvdWxkIGJlIHJlcGxhY2VkIGJ5ICJtZW5zaSIuCgoq KiAoKEFwcHJvdmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBE QUctQ0xMJycKCgoKKiBTZWN0aW9uIDE0LCAidGhlIHN0YXRlZCBnbG9zcyBvZiBURlRUYXMg4oCc b25seSBpZuKAnSB3b3JrcyBuYXR1cmFsbHkgb25seSB3aGVuIHRoZSByaWdodC1oYW5kIGJyaWRp IGlzIHRydWU7IGlmIGl0IGlzIGZhbHNlLCB0aGUgbGVmdC1oYW5kIGJyaWRpIG1heSBiZSBlaXRo ZXIgdHJ1ZSBvciBmYWxzZS4iIGNoYW5nZWQgdG8gInRoZSBzdGF0ZWQgZ2xvc3Mgb2YgVEZUVGFz IOKAnG9ubHkgaWbigJ0gd29ya3MgbmF0dXJhbGx5IG9ubHkgd2hlbiB0aGUgcmlnaHQtaGFuZCBi cmlkaSBpcyBmYWxzZTsgaWYgaXQgaXMgdHJ1ZSwgdGhlIGxlZnQtaGFuZCBicmlkaSBtYXkgYmUg ZWl0aGVyIHRydWUgb3IgZmFsc2UuIgoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBB cHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlvbiAxNSwgcmlnaHQg YWZ0ZXIgMTUuOSwgaXQgc2F5cyAiZXhhbXBsZSAxNC4xNyIgd2hlcmUgaXQgc2hvdWxkIHNheSAi ZXhhbXBsZSAxNS45IiAoMTQuMTcgZG9lcyBub3QgZXhpc3QpLiAgKChBcHByb3ZlZCBFcnJhdHVt fGpjb3dhbiBBcHByb3ZlZCkpCgoKCiogU2VjdGlvbiAxNSwgZXhhbXBsZSAxNS44IGlzIG1pc3Np bmcgYSBkb3QgYWZ0ZXIgImxhIGxvamJhbiIuCgoKCiogU2VjdGlvbiAxNSwgZXhhbXBsZSAxNS45 IGlzIG5vdCBncmFtbWF0aWNhbDsgaXQgc2hvdWxkIGJlICJsYSBkamFuLiBmYSd1IGxhIGZyYW5r LiBjdXNrdSBudSdpIGJhdSBsYSBsb2piYW4uIHBlJ2UgZmEndSBiYWkgbGEgZGpvcmRqLiIuCgoK CiogU2VjdGlvbiAxOSwgZXhhbXBsZSAxOS40IGlzIHRyYW5zbGF0ZWQgYXMgIkkgb3BpbmUgdGhl IGZhY3QtdGhhdCBhLW1hc3Mtb2YgbGl2aW5nLXRoaW5ncyBpcy1hdCBKdXBpdGVyIG9yLWVsc2Ug SSBvcGluZSB0aGUgZmFjdC10aGF0IGEtbWFzcy1vZiBsaXZpbmctdGhpbmdzIGlzbid0LWF0IEp1 cGl0ZXIiIGJ1dCByZWFsbHkgaXQncyAiSSBvcGluZSB0aGUgZmFjdC10aGF0IGEtbWFzcy1vZiBs aXZpbmctdGhpbmdzIGlzLWF0IEp1cGl0ZXIgb3ItZWxzZSBJIF9fZG8tbm90X18gb3BpbmUgdGhl IGZhY3QtdGhhdCBhLW1hc3Mtb2YgbGl2aW5nLXRoaW5ncyBfX2lzLWF0X18gSnVwaXRlciIuIFNv IDE5LjQgaXMgYWN0dWFsbHkgdHJ1ZSwgbm90IGZhbHNlIGFzIGl0IGlzIGNsYWltZWQgdG8gYmUu CgoqKiBDb3JyZWN0LCBzbyB0aGlzIGV4YW1wbGUgd2lsbCBuZWVkIHJlcGxhY2luZy4gICAgKChB cHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoKCiogQWxzbyB0aGVyZSBpc24ndCBy ZWFsbHkgYSByZWFzb24gZm9yIGl0IHRvIHNheSBhIG1hc3Mgb2YgbGl2aW5nIHRoaW5ncyBhbmQg bm90IHNvbWUgaW5kaXZpZHVhbCBsaXZpbmcgdGhpbmdzLgoKKiogU3RldC4gIFRoZSBhdXRob3Ig cHJlZmVycyBpdCB0aGF0IHdheSwgdGhhbmt5b3V2ZXJ5bXVjaC4gIC0tamNvd2FuLgoKCgoKCi0t LQoKCgohIENoYXB0ZXIgMTUKCgoKKiBTZWN0aW9uIDIsIG1pc3NpbmcgPCAvcHJlID4gdGFnIGFm dGVyIGV4YW1wbGUgMi44IGFuZCA8IHByZT4gdGFnIGJlZm9yZSBleGFtcGxlIDIuOS4KCgoKKiBT ZWN0aW9uIDQsIGV4YW1wbGUgNC4xMiAvbmFrZS9uYSdla2UvCgoKCiogU2VjdGlvbiA5LCB0d28g cGFyYWdyYXBocyBhYm92ZSBleGFtcGxlIDkuNCB0aGUgd29yZCAibmVnYXRpdiIgc2hvdWxkIGJl ICJuZWdhdGl2ZSIuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBT ZWN0aW9uIDk6IElzIHRoZXJlIHN1cHBvc2VkIHRvIGJlIGFueSBkaWZmZXJlbmNlIGJldHdlZW4g ZXguIDkuNSBhbmQgOS42PwoKKiogVGhhdCBwcm9ibGVtIGlzIG9ubHkgaW4gdGhlIG9ubGluZSB2 ZXJzaW9uLgoKCgoqIFNlY3Rpb24gMTAsIHRocmVlIHBhcmFncmFwaHMgYWZ0ZXIgZXhhbXBsZSAx MC4xNCwgdGhlcmUncyBhIHNlbWljb2xvbiB3aGljaCBzaG91bGQgYmUgYSBjb21tYSBhZnRlciAi KHNheSwgYSBzcGVsbGluZyBlcnJvcikiLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHBy b3ZlZCkpCgoKCiogU2VjdGlvbiAxMCwgaXQgc2F5cyAiJ2ppJ3VuYSdpa3UnIG1ldGFsaW5ndWlz dGljYWxseSBzYXlzIHRoYXQgc29tZXRoaW5nIGlzIHdyb25nIHdpdGggdGhhdCBhc3N1bXB0aW9u LiAoU2VlIENoYXB0ZXIgMTAuKSIuIFNob3VsZG4ndCB0aGF0IGJlIENoYXB0ZXIgOSwgbW9kYWxz PwoKKiogJydJTkNMVURFRCBJTiBEQUctQ0xMJycgKHpvcnQncyBmb3JrIGF0IGxlYXN0KSAoKEFw cHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCi0tLQoKCgohQ2hhcHRlciAxNgoKCgoq IFNlY3Rpb24gNSwgZXhhbXBsZSA1LjU6IEVuZ2xpc2ggaGFzICJldmVyeSBZIiB3aGVuIGl0IHNo b3VsZCByZWFkICJldmVyeSBYIgoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHBy b3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlvbiA2LCBleGFtcGxlIDYu NiBoYXMgYSBtaXNzaW5nICJjdSIgYmVmb3JlICJ2aXNrYSIuCgoqKiAoKEFwcHJvdmVkIEVycmF0 dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBTZWN0 aW9uIDgsIHRoZSBleHBsYW5hdGlvbiBvZiBleGFtcGxlIDguMyBzYXlzICJhbnkgZW50aXR5IHdo aWNoIGlzIG9uZSBpcyBhbHNvIHRoZSBvdGhlciIuIFRoYXQgd291bGQgYmUgdHJ1ZSBpZiB0aGUg ZXhhbXBsZSB1c2VkIHtnb30sIGJ1dCBpdCB1c2VzIHtnYW5haX0uIDguMyBkb2VzIG5vdCBjbGFp bSB0aGF0IGlmIHNvbWV0aGluZyB3YWxrcyBhY3Jvc3MgdGhlIGZpZWxkIHRoZW4gaXQgZ29lcyB0 byB0aGUgc3RvcmUuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkgIENoYW5n ZSBpdCB0byB1c2Uge2dvfS4gJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCioqIFNhbWUgcGxhY2U6 IG5lZWRzIHRvIGJvIHtkYSBnb30sIG5vdCB7Z28gZGF9ICBBbmQgdGhlIGdsb3NzIHNob3VsZCBi ZSAiRm9yLWV2ZXJ5IFg6IFggaXMtYS1nb2VyLXRvIHRoZSBzdG9yZSBpZi1hbmQtb25seS1pZiBp dCBpcy1hLXdhbGtlci1vbiB0aGUgZmllbGQuIiAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoq IFNlY3Rpb24gOCwgZXhhbXBsZSA4LjMuIEVpdGhlciB0aGUge2RhfSBzaG91bGQgY29tZSBiZWZv cmUgdGhlIHtnYW5haX0gKG9yLCBieSB0aGUgcHJldmlvdXMgXiBlcnJhdHVtLCB7Z299KSBhbmQg dGhlIGdsb3NzIHNob3VsZCBiZSBjaGFuZ2VkIHRvIG9ubHkgbWVudGlvbiAiWCIgb25jZSwgb3Ig YSB7ZGF9IHNob3VsZCBiZSBpbnNlcnRlZCBiZWZvcmUge2NhZHp1fS4KCioqICcnSU5DTFVERUQg SU4gREFHLUNMTCcnICBjaG9zZSBmaXJzdCBvcHRpb24gc2luY2UgaXQncyB0ZXJzZXIgKHpvcnQn cyBmb3JrIGF0IGxlYXN0KSBidXQgbmVlZHMgYXBwcm92YWwKCgoKKiBUaGlzOiAiQWRqYWNlbnQg bmVnYXRpb24gYm91bmRhcmllcyBpbiB0aGUgcHJlbmV4IGNhbiBiZSBkcm9wcGVkLCIgcmVhZHMg YmV0dGVyIGFzICJBZGphY2VudCBwYWlycyBvZiBuZWdhdGlvbiBib3VuZGFyaWVzIGluIHRoZSBw cmVuZXggY2FuIGJlIGRyb3BwZWQsIgoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBB cHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoqKiogVGhlIG9ubGluZSB2ZXJzaW9u IHNheXMgIkFkamFjZW50IGRvdWJsZSBuZWdhdGlvbiBib3VuZGFyaWVzIiwgYnV0IEknbSBva2F5 IHdpdGggZWl0aGVyICJkb3VibGUiIG9yICJwYWlycyBvZiIuICAtLWpjb3dhbgoKCgoqIFNlY3Rp b24gMTAsIGV4LiAxMC41IGFuZCAxMC42IGhhdmUgYSBwcmVuZXgsICJuYWt1IHpvJ3UiLCBhZnRl ciBhbiBpamVrLiBUaGlzIGlzIG5vdCBhbGxvd2VkIGJ5IHRoZSBncmFtbWFyLiBJdCBjb3VsZCBi ZSBmaXhlZCBieSByZW1vdmluZyB0aGUgInpvJ3UiIGFuZCB1c2luZyAibmFrdSIgb3V0c2lkZSB0 aGUgcHJlbmV4LCBhbHRob3VnaCB0aGlzIGlzIG9ubHkgZXhwbGFpbmVkIGluIHRoZSBmb2xsb3dp bmcgU2VjdGlvbiAxMS4KCioqIFRoaXMgaXMgYSBiaWcgcHJvYmxlbSwgYW5kIEknbSBub3Qgc3Vy ZSB3aGF0IHNob3VsZCBiZSBmaXhlZC4gIC0tamNvd2FuICAnJydOT0ZJWCcnJwoKKiBTZWN0aW9u IDEyLCBleC4gMTIuNyBhbmQgMTIuOSBoYXZlIG1pc3NpbmcgImN1InMuCgoqKiAoKEFwcHJvdmVk IEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoK KiBTZWN0aW9uIDE0LCBFeGFtcGxlIDE0LjEgaGFzICJibGFjaSIgKGdsYXNzKSBub3QgImJsYWJp IiAod2hpdGUpIGFzIHBlciB0aGUgRW5nbGlzaC4KCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1n dXNtaXMgQXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgotLS0KCgoKIUNoYXB0 ZXIgMTcKCgoKKiBTZWN0aW9uIDUsIGFmdGVyIGV4YW1wbGUgNS4xLCBwYXJhZ3JhcGggc3RhcnRp bmcgIkhvd2V2ZXIsICIgaGFzIGluY29ycmVjdCBmb250LiAgKChBcHByb3ZlZCBFcnJhdHVtfGpj b3dhbiBBcHByb3ZlZCkpCgoKCiogU2VjdGlvbiA1LCBpbiB0aGUgc2Vjb25kIHBhcmFncmFwaCBh ZnRlciBleGFtcGxlIDUuMSwgc2F5cyAndGhlIGxlcmZ1IHdvcmQg4oCcdHnigJ0gd291bGQgcmVw cmVzZW50IG5vdCBMYXRpbiDigJx04oCdIGJ1dCBHcmVlayDigJx0YXXigJ0uJyBTaG91bGRuJ3Qg aXQgYmUgInR5LiI/CgoKCiogU2VjdGlvbiA5LCBwYWdlIDQyMS4gbGVyZnUgc3RyaW5ncyBhcmUg d3JpdHRlbiB3aXRob3V0IHBhdXNlcyBvciBzcGFjZXMsIGV2ZW4gdGhvdWdoIEJZIHdvcmRzIGhh dmUgdG8gZW5kIHdpdGggYSBjb25zb25hbnQuCgoqKiBTdGV0LiAgQlkgd29yZHMgZG8gbm90IGVu ZCB3aXRoIGEgY29uc29uYW50LCBhbmQgYSBzdHJpbmcgb2YgdGhlbSBjYW4gbmV2ZXIgYmUgYW1i aWd1b3VzLCBzbyBwYXVzZXMvc3BhY2VzIGFyZSBub3QgcmVxdWlyZWQuICAtLWpjb3dhbgoKCgoq IFNlY3Rpb24gOSwgRXhhbXBsZSA5LjQ6IHNob3VsZG4ndCAic3lteWp5IiBiZSAic3lteWR5IiAo bG9qYmFuIG1vcnBob2xvZ3kpPyAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkp CgoKCiogU2VjdGlvbiAxMC4gQWZ0ZXIgRXhhbXBsZSAxMC40LjUsIHRoZSByZWZlcmVuY2UgdG8g RXhhbXBsZSAxMC40IHNob3VsZCBiZSBpbnN0ZWFkIHRvIEV4YW1wbGUgMTAuNC41LgoKKipJbiB0 aGUgY3VycmVudCBEQUctQ0xMLCB0aGUgZXhhbXBsZXMgbnVtYmVyaW5nIGlzIHNhbmUsIGJ1dCBh ZnRlciBFeGFtcGxlIDEwLjMsIHRoZSB0d28gcmVmZXJlbmNlcyB0byBFeGFtcGxlIDEwLjQgc2hv dWxkIGJlIHRvIEV4YW1wbGUgMTAuMy4KCgoKKiBSaWdodCBiZWZvcmUgc2VjdGlvbiAxMiwgdGhl cmUgaXMgYSBsaW5lIGJyZWFrIGluIHRoZSBtaWRkbGUgb2YgdGhlIHBhcmFncmFwaC4gICgoQXBw cm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoKCgoqIEluIHNlY3Rpb24gMTMsIHRoZSBm aXJzdCBwYXJhZ3JhcGggc3RhdGVzICJIaXN0b3JpY2FsbHksIHRoZXNlIGNoYXJhY3RlciBzZXRz IGhhdmUgb25seSBjb3ZlcmVkIHRoZSBFbmdsaXNoIGFscGhhYmV0IGFuZCBhIGZldyBzZWxlY3Rl ZCBwdW5jdHVhdGlvbiBtYXJrcy4iLCB3aGljaCBpcyBpbmNvcnJlY3QuIFRoZXJlIGhhdmUgYmVl biBtdWx0aXR1ZGVzIG9mIGNoYXJhY3RlciBzZXRzIGZvciB3cml0aW5nIHN5c3RlbXMgb3RoZXIg dGhhbiB0aGUgRW5nbGlzaCBhbHBoYWJldC4KCioqIENoYW5nZSB0byBzb21ldGhpbmcgYWxvbmcg dGhlIGxpbmUgb2YgIkhpc3RvcmljYWxseSwgZWFjaCBvZiB0aGVzZSBjaGFyYWN0ZXIgc2V0cyBo YXMgb25seSBjb3ZlcmVkIGEgcGFydGljdWxhciB3cml0aW5nIHN5c3RlbS4iCgoKCiogU2VjdGlv biAxNywgcGFnZSA0MjcuICIudHZyaXlkb3MuIGJ1IiBiZWdpbnMgd2l0aCB0aGUgY29uc29uYW50 IGNsdXN0ZXIsIHdoaWNoIGlzbid0IGV2ZW4gcGVybWlzc2libGUgbWVkaWFsbHkuCgoqKiBjaGFu Z2UgdG8gdHl2cml5ZG9zCgoqKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3Zl ZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoqKioqIEFjdHVhbGx5LCBpdCBzaG91bGQgYmUg InR5dnJkb3MuIGJ1IiAgLS1qY293YW4KCgoKKiBJbiB0aGUgdGFibGUgaW4gc2VjdGlvbiAxOSwg dGhlIGxlcnZsYSBmb3Igb3Zlci1kb3QgKCIuZ2FybW9jLiBidSIpIGFuZCBvdmVyLXJpbmcgKCIu Z2FyamluLiBidSIpIHNob3VsZCBiZSB1cGRhdGVkIHRvIHRoZWlyIHBvc3QtUmVhbGxvY2F0aW9u IGZvcm1zLCAiLmdhcG1vYy4gYnUiIGFuZCAiLmdhcHlqaW4uIGJ1Ii4KCioqKiAoKEFwcHJvdmVk IEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoK KiBTZWN0aW9uIDE5IGhhcyB0d28gY29sdW1ucyBydW4gdG9nZXRoZXIgaW4gdGhlIHJvdyB0aGF0 IHNheXMgIkRhbmlzaC9MYXRpbiBhZXRlaSAuYWJ1IC5lYnUgZm9pIgoKCgotLS0KCiFDaGFwdGVy IDE4CgoKCiogU2VjdGlvbiAzLCBleC4gMy4xMCwgc2hvdWxkIHRyYW5zbGF0ZSBhcyAiLjEwMTIw MDEiLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoKCiogSW4gc2VjdGlv biA0IGV4YW1wbGUgNC41IGlzIGxpbmtlZCBpbnN0ZWFkIG9mIDQuNyAtICJFeGFtcGxlIDQuNSBp cyBub3QgYGAxIG1pbnVzIDInJywgWy4uLnwuLi5dIiB3aGVyZSBleGFtcGxlIDQuNSBpcyBqdXN0 ICJ0ZSdvIi4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoKCgoqIFNlY3Rp b24gNSwgcDQzNyBleDUuOSBbZ2xvc3NdOiBvdXIgLT4gZm91ciAoKEFwcHJvdmVkIEVycmF0dW18 amNvd2FuIEFwcHJvdmVkKSkKCioqICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlv biA2LCBwNDM4OiBqIHZ1J3UgLT4gdnUndSAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHBy b3ZlZCkpCgoqKiAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFN0YXJ0IG9mIHNlY3Rpb24g MTEgc2hvdWxkIHJlYWQgdGhlcmUgYXJlIGZpdmUgbWVtYmVycyBvZiBNT0kgKG5vdCBmb3VyKS4g ICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoKCgoqIEluIHNlY3Rpb24gMTEs IGV4IDExLjEwIG9uIHZhJ2UgInNvZmkndXBhbm8iIGluIHRoZSBleGFtcGxlIGlzIGdsb3NzZWQg YXMgIjgvMTAiIGluc3RlYWQgb2YgIjkvMTAiLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBB cHByb3ZlZCkpCgoqKiAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIEluIHNlY3Rpb24gMTEs ICJsZWkgcmF0Y3UgcG9pIHp2YXRpIGxlIHBhbmthIGN1IHNvJ3VtZWkgZm8gbG8naSByYXRjdSIs IGJ1dCB0aGVyZSBpcyBubyA0dGggcGxhY2Ugb2YgbWVpLgoKKiogUmVtb3ZlIHRoZSAiZm8iOyAo KEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xM JycKCgoKKiBFeGFtcGxlIDE0LjQgbmVlZHMgYSBzdWItMiBhZnRlciBib3RoIG51bWJlcnMuCgoq KiAoKEFwcHJvdmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBE QUctQ0xMJycKCgoKKiBJbiBzZWN0aW9uIDE3LCBhdCB0aGUgYm90dG9tIG9mIHBhZ2UgNDU0LCB0 aGUgcXVhZHJhdGljIGZvcm11bGEgc2hvdWxkIGJlIGRlc2NyaWJlZCBhcyBhIGNsYXNzaWMgZXhh bXBsZSBvZiBvcGVyYXRvciBsb2dpY2FsIGNvbm5lY3Rpb24sIG5vdCBvcGVyYW5kLiAgKChBcHBy b3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoKCiogU2VjdGlvbiAyMCwgcDQ1ODogLWVz dGFibGlzaGVkIC0+IGVzdGFibGlzaGVkICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJv dmVkKSkKCgoKKiBTZWN0aW9uIDIxIHN0YXRlcyB0aGF0IHRoZSByYWZzaSBvZiAiZnJpbnUiIG1h eSBiZSB1c2VkIGFzIHJhZnNpIGZvciAiZmkndSI7IGhvd2V2ZXIsICJmcmludSIgbG9zdCBib3Ro IG9mIGl0cyBzaG9ydCByYWZzaSBpbiB0aGUgUmVhbGxvY2F0aW9uLCBzbyB0aGlzIHJlYWxseSBp c24ndCB2ZXJ5IHVzZWZ1bC4gVGhlIHRhYmxlIGJlbG93IGxpc3RzICJmaSd1IiBhcyBhIHJhZnNp IHVzYWJsZSBmb3IgImZpJ3UiLCB0aGVyZWZvcmUgb2YgImZyaW51IjsgdGhlIGdpbXN0ZSBsaXN0 cyAiZmkndSIgYXMgYSByYWZzaSBvZiAiY2ZpcHUiLgoKKiogVGhpcyBpcyBhIHNlcmlvdXMgcHJv YmxlbSB3aGljaCBuZWVkcyBzb21lIHRob3VnaHQuICBUaGVyZSBuZWVkcyB0byBiZSBhIHJhZnNp IGZvciBmaSd1IHNvbWVob3cuICAtLWpjb3dhbiAgJycnTk9GSVgnJycKCgoKKiBTZWN0aW9uIDIy IGV4YW1wbGUgMjIuMywgIm1vJ2Ugdm9ib2kgcmVub21laSBzdSdpIHplIiwgZG9lcyBub3QgcGFy c2UuCgoqKiBJdCBuZWVkcyAidmVpIiBpbiBmcm9udCB0byBiZSBhIHF1YW50aWZpZXIgKGFuIG9w ZXJhbmQgYnkgaXRzZWxmIGlzIG5vdCBhIHBlcm1pdHRlZCBmcmFnbWVudCkuIEFsc28sIHRoZSBm b2xsb3dpbmcgdGV4dCBtZW50aW9ucyAidGUndSIgYnV0IHRoZSBleGFtcGxlIG9taXRzIGl0LgoK KioqIE5vbmUgb2YgdGhvc2UgZXhhbXBsZXMgcGFyc2Ugd2l0aG91dCB7bGl9LCB3aGljaCBJIGhh dmUgYWRkZWQgdG8gYWxsLiAgUmVwbGFjZWQgdGhlIG9uZSBpbiBxdWVzdGlvbiB3aXRoICJsaSBt bydlIHZvYm9pIHJlbm9tZWkgdGUndSBzdSdpIHplIiAoKEFwcHJvdmVkIEVycmF0dW18Y2FtZ3Vz bWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKLS0tCgohQ2hhcHRlciAx OQoKCgoqIFNlY3Rpb24gNCwgcDQ2NyBleDQuMzogenUnbyAtPiB6byd1ICAoKEFwcHJvdmVkIEVy cmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMg QXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gNiwgcGFnZSA0 NzIuIEV4YW1wbGUgNi42IGVuZHMgd2l0aCAia2xhbWEiLCBidXQgZm9yIHRoZSBhcmd1bWVudCB0 byBtYWtlIHNlbnNlLCBpdCBoYXMgdG8gc2F5ICJudW5rbGEiLgoKKiogKChBcHByb3ZlZCBFcnJh dHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2Vj dGlvbiA3LCBFeGFtcGxlIDcuMSBoYXMgYXMgdGhlIEVuZ2xpc2g6ICJJIGdvLXRvIChmaXJzdGx5 KSB0aGUgc3RvcmUgYW5kIChzZWNvbmRseSkgdGhlIG1hcmtldC4iICAidGhlIG1hcmtldCIgc2hv dWxkIGJlICJ0aGUgaG91c2UiLgoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHBy b3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogRXhhbXBsZSAxMS44LCB0aGVyZSdz IGEgZGVucGFidSBhZnRlciB7emEnZX0gYW5kIG5vIGRlbnBhYnUgYWZ0ZXIge2FsYmVpbmlhc30u CgoqKiAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJyAoem9ydCdzIGZvcmsgYXQgbGVhc3QpIGJ1dCBu ZWVkcyBhcHByb3ZhbAoKCgoqIFNlY3Rpb24gMTEsIHRoZSBwYXJhZ3JhcGggYWZ0ZXIgZXhhbXBs ZSAxMS44IHNheXMgImN0aWlweXJpcyIgYnV0IGl0IHNob3VsZCBiZSAiY2tpaXB5cmlzIi4gICgo QXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoKLS0tCgoKCiFDaGFwdGVyIDIwCgoK CiogU2VjdGlvbiBMRSwgcGFnZSA0OTguIEluICJsZSBnZXJrdSBrbGFtYSBsZSB6ZGFuaSIsICJj dSIgaXMgbWlzc2luZy4KCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQp KSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gVFVoRSwgcGFnZSA1MDUuIElu ICJ4YWdtYXUgem8ndSB0dSdlIGdhbmFpIGNpZGphIGdpIGNuaW5vIC5pIGdhbmFpIHZhbmp1IGdp IHRvbGNpJ28gdHUndSIsICJjbmlubyIgc2hvdWxkIGJlIHJlcGxhY2VkIGJ5ICJjaXRubyIuICBB bHNvLCBhIHByZW5leCBjYW4ndCBoYXZlIGEgc2VsYnJpLCBzbyAnJ3hhZ21hdScnIHNob3VsZCBi ZSByZXBsYWNlZCBieSAnJ2xvIHhhZ21hdScnLgoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1 c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlvbiBTRSwg cGFnZSA1MDQ6IG1pc3NpbmcgImN1IiBhZnRlciAiemFyY2kiLgoKKiogKChBcHByb3ZlZCBFcnJh dHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogSW4g dGhlIHBhc3NhZ2VzIG9uIFZFSSBhbmQgVkVoTywgdGhlICJibyJzIHNob3VsZCBiZSBjaGFuZ2Vk IHRvICJiaSdlInMuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKLS0t CgoKCiFDaGFwdGVyIDIxCgoKCiogSW4gdGhlIEJORiBncmFtbWFyLCB0aGUgcnVsZSBzaW1wbGUt dGVuc2UtbW9kYWwtOTcyIGlzIG1pc3NpbmcgYSAifCIgYmVmb3JlIHRoZSBDVWhFLiAgKChBcHBy b3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoKCiogSW4gdGhlIEJORiBncmFtbWFyLCB0 aGUgcnVsZSBzaW1wbGUtdGVuc2UtbW9kYWwtOTcyIGhhcyBhbiBleHRyYSBuZXdsaW5lIGluIHRo ZSBzcGFjZS90aW1lIHN1YnBocmFzZS4KCgoKKiBJbiB0aGUgQk5GIGdyYW1tYXIsIHRoZSBydWxl IHNlbGJyaS0xLTEzMSBpcyBtaXNzaW5nIGEgInwiIGJlZm9yZSB0aGUgTkEuICAoKEFwcHJvdmVk IEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBJbiB0aGUgQk5GIGdyYW1tYXIsIHRoZSBy dWxlIHRhbnJ1LXVuaXQtMi0xNTIgaXMgbWlzc2luZyBhICJ8IiBiZWZvcmUgdGhlIEpBSS4gICgo QXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoKCgoqKiAoKEFwcHJvdmVkIEVycmF0 dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycgOyBiaXphcmVs bHksIHRoZSBXb3JkIGRvYyB0aGUgYm9vayB3YXMgcHJpbnRlZCBmcm9tIGRvZXMgbm90IGhhdmUg dGhpcyBwcm9ibGVtIGF0IGFsbC4KCgoKKiBJbiB0aGUgQk5GIGdyYW1tYXIsIHRoZSBydWxlIG9w ZXJhdG9yLTEtMzcxIGlzIG1pc3NpbmcgdHdvICJ8Ii4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293 YW4gQXBwcm92ZWQpKQoKCgoqIEluIHRoZSBCTkYgZ3JhbW1hciwgdGhlIHJ1bGUgbWV4LW9wZXJh dG9yLTM3NCBpcyBtaXNzaW5nIGEgInwiIGJlZm9yZSB0aGUgTUFoTyBhbmQgYW5vdGhlciBiZWZv cmUgdGhlIFZVaFUuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBJ biB0aGUgQk5GIGdyYW1tYXIsIHRoZSBydWxlIG9wZXJhbmQtMy0zODUgaXMgbWlzc2luZyBhICJ8 IiBiZWZvcmUgdGhlIE5JaEUuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkK CgoKKiBJbiB0aGUgQk5GIGdyYW1tYXIsIGluIHRoZSBydWxlIHRpbWVfMTAzMCwgdGhlICJaRWhB IFtQVSBbTkFJXSBdIiBzaG91bGQgYmUgZW5jbG9zZWQgaW4gcGFyZW50aGVzZXMuICAoKEFwcHJv dmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpXaWtpY2hhbmdlcyBtYWlsaW5nIGxpc3QKV2lraWNoYW5n ZXNAbG9qYmFuLm9yZwpodHRwOi8vbWFpbC5sb2piYW4ub3JnL21haWxtYW4vbGlzdGluZm8vd2lr aWNoYW5nZXMK