Received: from localhost ([::1]:59518 helo=stodi.digitalkingdom.org) by stodi.digitalkingdom.org with esmtp (Exim 4.80.1) (envelope-from ) id 1WnyJN-0008L0-H9; Fri, 23 May 2014 15:51:37 -0700 Received: from 173-13-139-235-sfba.hfc.comcastbusiness.net ([173.13.139.235]:43415 helo=jukni.digitalkingdom.org) by stodi.digitalkingdom.org with smtp (Exim 4.80.1) (envelope-from ) id 1WnyJC-0008KL-Ak for wikichanges@lojban.org; Fri, 23 May 2014 15:51:35 -0700 Received: by jukni.digitalkingdom.org (sSMTP sendmail emulation); Fri, 23 May 2014 15:51:26 -0700 From: "Apache" Date: Fri, 23 May 2014 15:51:26 -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 ionac at 00:50 CEST 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 ionac 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: 64912 VGhlIHBhZ2UgQ0xMLCBha2EgUmVmZXJlbmNlIEdyYW1tYXIsIEVycmF0YSB3YXMgY2hhbmdlZCBi eSBpb25hYyBhdCAwMDo1MCBDRVNUCgpZb3UgY2FuIHZpZXcgdGhlIHBhZ2UgYnkgZm9sbG93aW5n IHRoaXMgbGluazoKIApodHRwOi8vd3d3LmxvamJhbi5vcmcvdGlraS9DTEwlMkMlMjBha2ElMjBS ZWZlcmVuY2UlMjBHcmFtbWFyJTJDJTIwRXJyYXRhCgpZb3UgY2FuIHZpZXcgYSBkaWZmIGJhY2sg dG8gdGhlIHByZXZpb3VzIHZlcnNpb24gYnkgZm9sbG93aW5nIHRoaXMgbGluazogCmh0dHA6Ly93 d3cubG9qYmFuLm9yZy90aWtpL3Rpa2ktcGFnZWhpc3RvcnkucGhwP3BhZ2U9Q0xMJTJDJTIwYWth JTIwUmVmZXJlbmNlJTIwR3JhbW1hciUyQyUyMEVycmF0YSZjb21wYXJlPTEmb2xkdmVyPTIyMyZu ZXd2ZXI9MjI0CgoKKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioKVGhlIGNoYW5nZXMgaW4gdGhpcyB2ZXJzaW9uIGZvbGxvdyBiZWxvdywg Zm9sbG93ZWQgYWZ0ZXIgYnkgdGhlIGN1cnJlbnQgZnVsbCBwYWdlIHRleHQuCioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCgoKKy0rLSst Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKQEAg LUxpbmVzOiAyNzgtMjgyIGNoYW5nZWQgdG8gK0xpbmVzOiAyNzgtMjg0IEBACistKy0rLSstKy0r LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCiogU2VjdGlv biAxMSwgZGVzY3JpcHRpb24gb2YgdGhlIG1lYW5pbmcgb2YgIi5pamUgc2VyaSdhIHR1J2UiIGNv bnRyYWRpY3RzIHRoZSBleHBsYW5hdGlvbiBvZiBFeGFtcGxlIDkuOSwgd2hpY2ggd291bGQgc3Vn Z2VzdCAiLmlqZSByaSdhIHR1J2UiLgoKLSAqIHNlY3Rpb24gMTcsICZxdW90O2Zyb20gc291cmNl IGFzIGFuIG9yaWdpbiBvZiZxdW90OyBzaG91bGQgYmUgdHdvIGVudHJpZXM7ICZxdW90O2Zyb20g c291cmNlJnF1b3Q7IGFuZCAmcXVvdDthcyBhbiBvcmlnaW4gb2YmcXVvdDsgJydJTkNMVURFRCBJ TiBEQUctQ0xMJycKKyAqIHNlY3Rpb24gMTcsICZxdW90O3BlcnRhaW5lZCB0byBieSBjb25jZXJu aW5nJnF1b3Q7IHNob3VsZCBiZSBzZXBhcmF0ZWQsIHdpdGggJnF1b3Q7Y29uY2VybmluZyZxdW90 OyBzaG91bGQgYmUgaW4gdGhlIGxhc3QgY29sdW1uIG9mIHRoZSB0YWJsZTxiciAvPjxiciAvPiog c2VjdGlvbiAxNyAmcXVvdDtmcm9tIHNvdXJjZSBhcyBhbiBvcmlnaW4gb2YmcXVvdDsgc2hvdWxk IGJlIHR3byBlbnRyaWVzOyAmcXVvdDtmcm9tIHNvdXJjZSZxdW90OyBhbmQgJnF1b3Q7YXMgYW4g b3JpZ2luIG9mJnF1b3Q7ICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgotLS0KCgoKCioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqClRoZSBu ZXcgcGFnZSBjb250ZW50IGZvbGxvd3MgYmVsb3cuCioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCgpUaGlzIHBhZ2UgaXMgZm9yIGVycmF0 YSBpbiAoKFRoZSBDb21wbGV0ZSBMb2piYW4gTGFuZ3VhZ2UpKSwgdGhhdCBpcyBmb3IgbWlzdGFr ZXMgc3VjaCBhcyB0eXBvcywgb3Igc2VsZi1jb250cmFkaWN0aW9ucywgb3IgY29udHJhZGljdGlv bnMgd2l0aCBvdGhlciBiYXNlbGluZWQgbGFuZ3VhZ2UgZGVmaW5pdGlvbiBtYXRlcmlhbC4gVGhp cyBpcyBfX25vdF9fIGEgcGFnZSB0byBwdXQgZGVzaWRlcmF0YSAoc3VnZ2VzdGlvbnMgZm9yIGlt cHJvdmVtZW50KTsgc3VjaCBzdWdnZXN0aW9ucyBzaG91bGQgZ28gdG8gKChTdWdnZXN0aW9ucyBm b3IgQ0xMLCBzZWNvbmQgZWRpdGlvbikpLiAgVGhpcyBpcyBhbHNvIG5vdCBhIHBhZ2UgdG8gcHV0 IGVycmF0YSByZXN1bHRpbmcgZnJvbSB0aGUgNHRoIEJhc2VsaW5lIEdyYW1tYXIgcHJvcG9zYWwg KGkuZS4sIHRoZSAoKFBFRykpIGdyYW1tYXIpOyBQRUcgZ3JhbW1hciBlcnJhdGEgc2hvdWxkIGdv IHRvICgoQ0xMIFBFRyBFcnJhdGEpKS4KCgoKQW4gb25saW5lIHZlcnNpb24gb2YgdGhlIENMTCBp bmNvcnBvcmF0aW5nIHRoZSBjaGFuZ2VzIG9uIHRoaXMgcGFnZSBbaHR0cDovL2RhZy5naXRodWIu Y29tL2NsbC98aXMgYXZhaWxhYmxlXS4KCgoKU2VlIGFsc28gW1doYXQraXMrTG9qYmFuJTNGK2Vy cmF0YSZibD15fFdoYXQgaXMgTG9qYmFuPyBlcnJhdGFdIChmb3IgdGhlIHB1Ymxpc2hlZCB2ZXJz aW9uKSwgTGV2ZWwgMCBCb29rbGV0IEVycmF0YSBbdGlraS1lZGl0cGFnZS5waHA/cGFnZT1MZXZl bCswK0Jvb2tsZXQrRXJyYXRhJmxhbmc9fD9dIChmb3IgdGhlIHByZS1wdWJsaWNhdGlvbiByZXZp ZXdzOyBub3cgZmluaXNoZWQpLCBhbmQgW0xlc3NvbnMrRXJyYXRhJmJsPXl8TGVzc29ucyBFcnJh dGFdIChmb3IgdGhlIGJlZ2lubmVycycgY291cnNlKS4KCgoKVGhlICInJ0lOQ0xVREVEIElOIERB Ry1DTEwnJyIgdGFnIG1lYW5zIHRoYXQgaHR0cDovL2RhZy5naXRodWIuY29tL2NsbC8gaW5jbHVk ZXMgdGhpcyBmaXgsIHdoaWNoIGFsc28gbWVhbnMgaXQnbGwgcHJvYmFibHkgYmUgaW4gdGhlIG5l eHQgQ0xMIHZlcnNpb24uCgoKCi0tLQoKCgohQ2hhcHRlciAxCgoKCiogVGhlcmUgaXMgYSBwYXJh Z3JhcGggYXQgdGhlIHZlcnkgYmVnaW5uaW5nIG9mIENMTCwgb24gcGFnZSA0LCB3aXRoIHRoZSBz ZW50ZW5jZSAnJyJJbiBlc3NlbmNlLCBDaGFwdGVyIDIgZ2l2ZXMgYSBicmllZiBvdmVydmlldyBv ZiB0aGUgbGFuZ3VhZ2UsIENoYXB0ZXIgMjEgZ2l2ZXMgdGhlIGZvcm1hbCBzdHJ1Y3R1cmUgb2Yg dGhlIGxhbmd1YWdlLCBhbmQgdGhlIGNoYXB0ZXJzIGluIGJldHdlZW4gcHV0IHNlbWFudGljIGJv bmVzIG9uIHRoYXQgZm9ybWFsIGZsZXNoLiInJwoKKiogV291bGRuJ3QgaXQgbWFrZSBtb3JlIHNl bnNlIHRvIHNheSAicHV0IHNlbWFudGljIGZsZXNoIG9uIHRob3NlIGZvcm1hbCBib25lcyI/ICgo QXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwn JwoKCgoqIFNlY3Rpb24gNiwgaXQgc2F5cyAiTGFycnkgSG9ybidzIHdvcmsgJydUaGUgTmF0dXJh bCBIaXN0b3J5IG9mIE5lZ2F0aW9uJyciLiBJdCB3b3VsZCBhcHBlYXIgdGhhdCBldmVyeW9uZSBl bHNlIGNhbGxzIGl0ICcnX19BX18gTmF0dXJhbCBIaXN0b3J5IG9mIE5lZ2F0aW9uJycsIGJ5IF9f TGF1cmVuY2VfXyAoUi4pIEhvcm4uCgoqKiAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJyAoem9ydCdz IGZvcmsgYXQgbGVhc3QpIGJ1dCBuZWVkcyBhcHByb3ZhbAoKCgotLS0KCiFDaGFwdGVyIDIKCgoK KiBTZWN0aW9uIDUgZXhhbXBsZSA1LjcgdXNlcyAidGkiIHRvIHBvaW50IGF0IGEgbGFuZ3VhZ2Us IGFuZCBzaG91bGQgaGF2ZSBpdHMgYWNjb21wYW55aW5nIG5vdGUgY2hhbmdlZCB0byBtb3JlIGFj Y3VyYXRlbHkgcmVmbGVjdCB0aGF0IHRoaXMgaXMgbm90IGhvdyAidGkiIHdvcmtzLgoKCgoqIFNl Y3Rpb24gNiBFeGFtcGxlIDYuNSBoYXMgImN1IiBhcyBlbGlkYWJsZSwgd2hlbiBpbiBmYWN0IGl0 IGlzIHNpbXBseSBpbGxlZ2FsIHRoZXJlLiAgUmVtb3ZlZC4gICcnSU5DTFVERUQgSU4gREFHLUNM TCcnCgoqKiB1YW5haSwgSSBzdGlsbCBzZWUgImN1IiBpbiBEQUctQ0xMLgoKCgoqIFNlY3Rpb24g OCBwYWdlIDE3IGNsYWltcyB0aGF0ICJ4dSIgaXMgZGlzY3Vzc2VkIGluIHNlY3Rpb24gMS43LCB3 aGljaCBoYXBwZW5zIHRvIGxpc3QgdGhlIGNhcHRpb25zIGZvciBhbGwgdGhlIGNoYXB0ZXIgcGlj dHVyZXMuCgoqKiBJdCBzaG91bGQgcmVmZXIgdG8gU2VjdGlvbiAxNS4gICgoQXBwcm92ZWQgRXJy YXR1bXxqY293YW4gQXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKKioqIFRoZSBs aW5rIGluIHRoZSBjdXJyZW50IERBRy1DTEwgaXMgcG9pbnRpbmcgdG8gIjIvMi8xNSIgaW5zdGVh ZCBvZiB0byAiMi8xNSIuCgoKCiogU2VjdGlvbiAxMCBzYXlzIHRoYXQgZXhhbXBsZSAxMC4zICht aSB0YXZsYSBkbyBsZSB0YXZsYSBrdSkgbWVhbnMgdGhlIHNhbWUgYXMgKG1pIHRhdmxhIGRvIGxl IHRhdmxhIGt1KS4gRXhhbXBsZSAxMC4zIHNob3VsZCBiZSAibWkgdGF2bGEgZG8gbGUgdGF2bGEi LCBhcyBpdCBkZXNjcmliZXMgaG93ICJrdSIgbWF5IGJlIG9taXR0ZWQuCgoqKiBJdCBhcHBlYXJz IHRoYXQgZXhhbXBsZSAxMC4zIGlzIGluY29ycmVjdCBvbmx5IGluIHRoZSBvbmxpbmUgdmVyc2lv biwgbm90IHRoZSBwdWJsaXNoZWQgYm9vay4KCgoKKiBTZWN0aW9uIDE3IHNheXMgIk5vdGUgdGhh dCBFeGFtcGxlIDE3LjMgIGhhcyBhbmQgcmVxdWlyZXMgYSDigJxjdeKAnSB0byBwcmV2ZW50IOKA nGJhanJh4oCdIGFuZCDigJxrbGFtYeKAnSBmcm9tIGZvcm1pbmcgYSB0YW5ydSwgYnV0IEV4YW1w bGUgMTcuNCAgYW5kIEV4YW1wbGUgMTcuNSAgbGFjayB0aGUgdW5uZWNlc3Nhcnkg4oCcY3XigJ0u IiwgYnV0IGV4YW1wbGUgMTcuMyBpcyAibGEgZGphbi4gfm5wfltjdV1+L25wfiBrbGFtYSBsZSB6 YXJjaSIuCgoqKiBJdCBhcHBlYXJzIHRoYXQgdGhlIG9mZmVuZGluZyBzZW50ZW5jZSBpcyBwcmVz ZW50IG9ubHkgaW4gdGhlIG9ubGluZSB2ZXJzaW9uLCBub3QgdGhlIHB1Ymxpc2hlZCBib29rLgoK CgoqIEV4YW1wbGUgMTcuOSBpcyAibGUgdmkgdGF2bGEga3UgY3UgYmEga2xhbWEiIGluIHRoZSBv bmxpbmUgdmVyc2lvbiwgYW5kIHRvdGFsbHkgYnJva2VuIGluIHRoZSBwdWJsaXNoZWQgYm9vay4K CioqIEdvIHdpdGggdGhlIG9ubGluZSB2ZXJzaW9uLiAgKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1 c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogRXhhbXBsZSAxNy45 IGluIGRhZy1jbGwgYXMgb2YgMjAxMi0wNS0wNSBpcyAibGUgdmkgdGF2bGEgfm5wfltrdV1+L25w fiBjdSBiYSBrbGFtYSIuIFNpbmNlIHRoZSBzYW1lIHNlY3Rpb24gaGFzIGV4cGxhaW5lZCB0aGF0 IHRlbnNlIHRhZ3MgbWFrZSAiY3UiIHVubmVjZXNzYXJ5LCBJIHRoaW5rIHRoZSBleGFtcGxlIHNo b3VsZCBiZSAibGUgdmkgdGF2bGEgfm5wfltrdV0gW2N1XX4vbnB+IGJhIGtsYW1hIi4KCgoKLS0t CgoKCiEgQ2hhcHRlciAzCgoKCkEgbG90IG9mIHRoZSBJUEEgZXhhbXBsZXMgdXNlIGEgc3BhY2Ug dG8gaW5kaWNhdGUgYSBzeWxsYWJsZSBicmVhay4gVGhpcyBpcyBub3Qgc3RhbmRhcmQgSVBBIHVz YWdlOyBhY2NvcmRpbmcgdG8gSVBBLCB0aGUgcGVyaW9kIOKAnC7igJ0gc2hvdWxkIGJlIHVzZWQg dG8gaW5kaWNhdGUgYSBzeWxsYWJsZSBkaXZpc2lvbi4KCgoKKiBTZWN0aW9uIDIsIHBhZ2UgMzA6 IGluIHRoZSB0YWJsZSB0aGUgZGVzY3JpcHRpb24gb2YgImFwb3N0cm9waGUiIHNob3VsZCByZWFk ICJhbiB1bnZvaWNlZCBnbG90dGFsIHNwaXJhbnQiLCBub3QgImEgdW52b2ljZWQiLgoKKiogKChB cHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNM TCcnCgoKCiogU2VjdGlvbiAyLCBkaWdpdGFsIHZlcnNpb24uICBUaGUgSVBBIHRhYmxlIGdvdCBo b3JyaWJseSBtYW5nbGVkIHNvbWV3aGVyZSBhbG9uZyB0aGUgd2F5LiAgSXQgc2hvdWxkIGxvb2sg bGlrZSAoU0FNUEEgY29sdW1uIGFkZGVkKToKCgoKfHwgTGV0dGVyIHwgSVBBICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgfCBTQU1QQSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHwgRGVzY3JpcHRpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIAoKICcgICAgICB8IFtoXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHwgW2hdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGFu IHVudm9pY2VkIGdsb3R0YWwgc3BpcmFudCAgICAgICAgICAgICAgICAgICAgICAKCiAsICAgICAg fCAtLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IC0tLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCB0aGUgc3lsbGFibGUgc2VwYXJhdG9y ICAgICAgICAgICAgICAgICAgICAgICAgICAgCgogLiAgICAgIHwgW8qUXSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHwgWz9dICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB8IGEgZ2xvdHRhbCBzdG9wIG9yIGEgcGF1c2UgICAgICAgICAgICAgICAg ICAgICAgICAKCiBhICAgICAgfCBbYV0sIFvJkV0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgfCBbYV0sIFtBXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgYW4g b3BlbiB2b3dlbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKIGIgICAgICB8 IFtiXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW2JdICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGEgdm9pY2VkIGJpbGFiaWFsIHN0b3Ag ICAgICAgICAgICAgICAgICAgICAgICAgICAKCiBjICAgICAgfCBbyoNdLCBbyoJdICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHwgW1NdLCBbc2BdICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB8IGFuIHVudm9pY2VkIHBvc3RhbHZlb2xhciBmcmljYXRpdmUgICAgICAg ICAgICAgICAgICAgICAKCiBkICAgICAgfCBbZF0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB8IFtkXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg fCBhIHZvaWNlZCBkZW50YWwvYWx2ZW9sYXIgc3RvcCAgICAgICAgICAgICAgICAgICAgCgogZSAg ICAgIHwgW8mbXSwgW2VdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW0VdLCBbZV0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGEgZnJvbnQgbWlkIHZvd2Vs ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCiBmICAgICAgfCBbZl0sIFvJuF0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBbZl0sIFtwXF0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHwgYW4gdW52b2ljZWQgbGFiaWFsIGZyaWNhdGl2ZSAgICAgICAg ICAgICAgICAgICAgIAoKIGcgICAgICB8IFvJoV0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB8IFtnXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg fCBhIHZvaWNlZCB2ZWxhciBzdG9wICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgogaSAg ICAgIHwgW2ldICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBbaV0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgYSBmcm9udCBjbG9zZSB2b3dl bCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKIGogICAgICB8IFvKkl0sIFvKkF0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBbWl0sIFt6YF0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHwgYSB2b2ljZWQgcG9zdGFsdmVvbGFyIGZyaWNhdGl2ZSAgICAg ICAgICAgICAgICAgICAgICAgIAoKIGsgICAgICB8IFtrXSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHwgW2tdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB8IGFuIHVudm9pY2VkIHZlbGFyIHN0b3AgICAgICAgICAgICAgICAgICAgICAgICAgICAK CiBsICAgICAgfCBbbF0sIFtszKldICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW2xd LCBbbD1dICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGEgdm9pY2VkIGxh dGVyYWwgYXBwcm94aW1hbnQgKG1heSBiZSBzeWxsYWJpYykgICAKCiBtICAgICAgfCBbbV0sIFtt zKldICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW21dLCBbbT1dICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB8IGEgdm9pY2VkIGJpbGFiaWFsIG5hc2FsIChtYXkg YmUgc3lsbGFiaWMpICAgICAgICAKCiBuICAgICAgfCBbbl0sIFtuzKldLCBbxYtdLCBbxYvMqV0g ICAgICAgICAgICAgICAgICAgICB8IFtuXSwgW249XSwgW05dLCBbTj1dICAgICAgICAgICAgICAg ICAgICAgICAgICAgfCBhIHZvaWNlZCBkZW50YWwgb3IgdmVsYXIgbmFzYWwgKG1heSBiZSBzeWxs YWJpYykgCgogbyAgICAgIHwgW29dLCBbyZRdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHwgW29dLCBbT10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGEgYmFj ayBtaWQgdm93ZWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCiBwICAgICAgfCBb cF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFtwXSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBhbiB1bnZvaWNlZCBiaWxhYmlhbCBzdG9w ICAgICAgICAgICAgICAgICAgICAgICAgCgogciAgICAgIHwgW3JdLCBbybldLCBbyb5dLCBbyoBd LCBbcsypXSwgW8m5zKldLCBbyb7MqV0sIFvKgMypXSB8IFtyXSwgW3JcXSwgWzRdLCBbUlxdLCBb cj1dLCBbclw9XSwgWzQ9XSwgW1JcPV0gfCBhIHJob3RpYyBzb3VuZCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgCgogcyAgICAgIHwgW3NdICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgfCBbc10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHwgYW4gdW52b2ljZWQgYWx2ZW9sYXIgc2liaWxhbnQgICAgICAgICAgICAgICAgICAgIAoK IHQgICAgICB8IFt0XSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3RdICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGFuIHVudm9pY2VkIGRl bnRhbC9hbHZlb2xhciBzdG9wICAgICAgICAgICAgICAgICAKCiB1ICAgICAgfCBbdV0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFt1XSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgfCBhIGJhY2sgY2xvc2Ugdm93ZWwgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgCgogdiAgICAgIHwgW3ZdLCBbzrJdICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHwgW3ZdLCBbQl0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB8IGEgdm9pY2VkIGxhYmlhbCBmcmljYXRpdmUgICAgICAgICAgICAgICAgICAgICAgCgogeCAg ICAgIHwgW3hdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBbeF0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgYW4gdW52b2ljZWQgdmVsYXIg ZnJpY2F0aXZlICAgICAgICAgICAgICAgICAgICAgIAoKIHkgICAgICB8IFvJmV0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB8IFtAXSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgfCBhIGNlbnRyYWwgbWlkIHZvd2VsICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgCgogeiAgICAgIHwgW3pdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgfCBbel0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwg YSB2b2ljZWQgYWx2ZW9sYXIgc2liaWxhbnQgICAgICAgICAgICAgICAgICAgICAgIHx8CgoKCioq IFNvcnQtb2YgKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpOyB3aGF0IEkg YWN0dWFsbHkgZGlkIGlzIGhhZCBBcm50IHJldmlldyB3aGF0IHNvbWVvbmUgZW50ZXJlZCBpbiBE QUctQ0xMLCB3aGljaCBwcmVzdW1hYmx5IHdhcyBiYXNlZCBvbiB0aGUgYWJvdmUuICAnJ0lOQ0xV REVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gMiwgcGFnZSAzMC4gZm9yIHRoZSBzZWNvbmQg ZW5nIChpbW1lZGlhdGVseSB0byB0aGUgbGVmdCBvZiAiKG1heSBiZSBzeWxsYWJpYykiKSB0aGUg c3lsbGFiaWNpdHkgbWFya2VyIGlzIGNvbmNlYWxlZCBieSB0aGUgcmlnaHQgdGFpbC4KCioqIEkg Y2FuIGp1c3QgYmFyZWx5IHNlZSB0aGUgbWFya2VyIHVuZGVyIGEgZ29vZCBsaWdodC4gICAoKEFw cHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCioqKiBGb3IgZnV0dXJlIGVkaXRpb25z IDotKSAsIG5vdGUgdGhhdCB0aGUgSVBBIGFwcHJvdmVzIHB1dHRpbmcgZGlhY3JpdGljcyBhYm92 ZSByYXRoZXIgdGhhbiBiZWxvdyB0aGUgbGV0dGVyIGluIGNhc2VzIGxpa2UgdGhlc2UuIFVuZm9y dHVuYXRlbHksIHRoZSBmb250cyBoaXRoZXJ0byBhdmFpbGFibGUgaGF2ZSBub3QgbWFkZSB0aGlz IGZhY2lsaXR5IGF2YWlsYWJsZSwgc28gb3V0c2lkZSB0aGUgam91cm5hbCBvZiB0aGUgSVBBIGl0 c2VsZiwgc3VjaCBvdmVyLWRpYWNyaXRpY3MgYXJlIHNlbGRvbSBzZWVuLiDigJQgbml0Y2lvbgoK CgoqIEluIHNlY3Rpb24gMy4yLCB0aGUgY29tbWEgc2hvdWxkIChwcm9iYWJseSkgYmUgcmVwcmVz ZW50ZWQgYnkgdGhlIElQQSBub3RhdGlvbiBbLnwuXSwgYXMgdGhlIHBlcmlvZCBpcyB1c2VkIGlu IElQQSB0byBkZW5vdGUgc3lsbGFibGUgYnJlYWtzLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dh biBBcHByb3ZlZCkpCgoKCiogU2VjdGlvbiAyLCBwYWdlIDMwLiBGb3IgdGhlIExvamJhbiBwaG9u ZW1lIC9yLywgdGhlIElQQSBzeW1ib2wgZm9yIGEgZGVudGFsL2FsdmVvbGFyIHZvaWNlZCBhcGlj YWwgdGFwIGlzIGdpdmVuIHdpdGggYSBzeWxsYWJpY2l0eSBtYXJrZXIgYmVsb3cuIEEgdGFwIGNh bid0IGJlIHN5bGxhYmljLCBiZWNhdXNlIGl0IGlzIGJ5IGRlZmluaXRpb24gaW5zdGFudGFuZW91 cy4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKSBKdXN0IHJlbW92ZSB0aGF0 IGNhc2UgYWx0b2dldGhlci4KCgoKKiBTZWN0aW9uIDIuICBUaGUgZGVzY3JpcHRpb25zIG9mICcn YycnIGFuZCAnJ2onJyBhcmUgbGlzdGVkIGFzICJjb3JvbmFsIHNpYmlsYW50InMuICBUaGUgZGVz Y3JpcHRpb25zIHNob3VsZCByZWFkICJ2b2ljZWxlc3MgcG9zdGFsdmVvbGFyIGZyaWNhdGl2ZSIg YW5kICJ2b2ljZWQgcG9zdGFsdmVvbGFyIGZyaWNhdGl2ZSIsIHJlc3BlY3RpdmVseS4gICgoQXBw cm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoKCgoqIFNlY3Rpb24gMywgdGhpcmQgcGFy YWdyYXBoIChwYWdlIDMxKTogImEgdW52b2ljZWQgdm93ZWwgZ2xpZGUiIHNob3VsZCBiZSAiYW4g dW52b2ljZWQgdm93ZWwgZ2xpZGUiLgoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBB cHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlvbiA2LCBwYWdlIDM2 LiBJUEEgZm9yIHRoZSB1bmFjY2VwdGFibGUgQW1lcmljYW4gZmxhcCB2YXJpYW50IG9mIGludGVy dm9jYWxpYyAnJ3QnJyBzaG93cyB0aGUgR0EgJydyJycgc291bmQgKHVwc2lkZS1kb3duIHIpIGlu c3RlYWQgb2YgdGhlIGZsYXAgKGxpa2UgYW4gciB3aXRoIG5vIHZlcnRpY2FsIGJpdCBhdCB0aGUg dG9wIOKAlCBzZWUgdGhlIGxpc3Qgb2YgYWNjZXB0aWJsZSAnJ3InJyB2YXJpYW50cyBvbiBvbiBw YWdlIDQ0IHdoZXJlIGl0IGFwcGVhcnMgY29ycmVjdGx5KSAgKChBcHByb3ZlZCBFcnJhdHVtfGpj b3dhbiBBcHByb3ZlZCkpCgoqKiAoKEFwcHJvdmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJvdmVk KSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBTZWN0aW9uIDYsIHBhZ2UgMzYuIChTYW1l IGFzIHByZXZpb3VzIGVycmF0dW0pIFRoZSBjb25zb25hbnQgaXMgcmVmZXJyZWQgdG8gYXMgYSBm bGFwLCB3aGlsZSBpdCBpcyBhY3R1YWxseSBhIHRhcC4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293 YW4gQXBwcm92ZWQpKQoKCgoqIFNlY3Rpb24gNy4gSW4gYmV0d2VlbiB0aGUgc2hhZGVkIGJveGVz LCAiYSBwYWlyaW5nIG9mIHZvaWNlZCBhbmQgdW52b2ljZWQgZXF1aXZhbGVudCB2b3dlbHMiIHNo b3VsZCByZWFkICJhIHBhaXJpbmcgb2Ygdm9pY2VkIGFuZCB1bnZvaWNlZCBlcXVpdmFsZW50IGNv bnNvbmFudHMiLgoKCgoqIFNlY3Rpb24gOCwgcGFnZSAzOC4gSVBBIGZvciBwcm9udW5jaWF0aW9u IG9mICJ4YXBja2UiIGhhcyBjIHdoZXJlIGl0IHNob3VsZCBoYXZlIFMgKGxvbmcgcykuICAoKEFw cHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBTZWN0aW9uIDksIHBhZ2UgNDAu IElQQSBmb3IgcHJvbnVuY2lhdGlvbiBvZiAiZGlreWp2byIgaGFzIGogd2hlcmUgaXQgc2hvdWxk IGhhdmUgWiAodGhhdCBsaXR0bGUgc2NyaXB0IHogdGhpbmcpICAoKEFwcHJvdmVkIEVycmF0dW18 amNvd2FuIEFwcHJvdmVkKSkKCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92 ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gMTIsIHBhZ2UgNDYuIFdo YXQgc2hvdWxkIGJlIHRoZSBDeXJpbGxpYyBsZXR0ZXIgOyBpcyBwcmludGVkIGFzIHNvbWV0aGlu ZyB0aGF0IGxvb2tzIGxpa2UgdGhlIEdyZWVrIGxldHRlciAuIElzIHRoaXMgb25seSBhIHR5cG9n cmFwaGljYWwgdmFyaWFudCBvZiB0aGUgOywgb3IgaXMgaXQgYSB2YXJpYW50PwoKCgoqKiBUaGlz IGVycmF0dW0gaXMgaW5kZWNpcGhlcmFibGUgYW5kIHNob3VsZCBiZSBkcm9wcGVkLCB1bmxlc3Mg c29tZW9uZSBjYW4gcmVjb25zdHJ1Y3QgaXQuICBUaGUgQ3lyaWxsaWMgbGV0dGVycyBsb29rIGZp bmUuICAtLWpjb3dhbgoKCgoqIFNlY3Rpb24gMTIsIHBhZ2UgNDYuIFJlcGxhY2UgdGhlIHdvcmRz ICJ0aGUgaGFyZCBzaWduIiB3aXRoIGFuIGFjdHVhbCBoYXJkIHNpZ24sIFUrMDQ0QSBDWVJJTExJ QyBTTUFMTCBMRVRURVIgSEFSRCBTSUdOLgoKCgoqIFNlY3Rpb24gMTIsIHBhZ2UgNDcuICJhcmUv ImVzc2UiIHNob3VsZCBwcm9iYWJseSBiZSAiYXJlIi8iZXNzZSIgKHRoZSBhY3V0ZSBvbiB0aGUg YSBtYXkgb3IgbWF5IG5vdCBoYXZlIGJlZW4gbGVmdCBvZmYsIGJ1dCB0aGUgY2xvc2luZyBxdW90 ZSBhZnRlciBhcmUgaXMgZGVmaW5hdGVseSBtaXNzaW5nLikKCioqIE15IGNvcHkgc2hvd3MgdGhl IGFjdXRlLgoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5D TFVERUQgSU4gREFHLUNMTCcnCgoKCi0tLQoKCgohQ2hhcHRlciA0CgoKCiogU2VjdGlvbiA0LCBw YWdlIDU0LiBUaGUgYm9vayBzdGF0ZXMgdGhhdCBmdSdpdmxhIHdpdGggYSBmb3JtIGxpa2UgJydz cGEnaScnIGFyZSB2YWxpZC4gVGhleSBhcmUgbm90LCB0aGV5IGZhaWwgdGhlIHNsaW5rdSdpIHRl c3QuICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElOIERB Ry1DTEwnJwoKCgoqIFNlY3Rpb24gNiwgcCA1OCwgIi1sYWMiIGluIHRoZSB0aGlyZCB0YWJsZSBp biB0aGF0IHNlY3Rpb24gc2hvdWxkIGJlICItbGFjLSIKCgoKKiBTZWN0aW9uIDYsIGl0IHNheXMg Ik1vc3QgY21hdm8gdGhhdCBoYXZlIHJhZnNpIGFyZSBvbmVzIHVzZWQgaW4gY29tcG9zaW5nIHRh bnJ1IChmb3IgYSBjb21wbGV0ZSBsaXN0LCBzZWUgQ2hhcHRlciAxMikiLCBidXQgdGhlcmUgaXMg bm8gc3VjaCBsaXN0IGluIENoYXB0ZXIgMTIsIG9yIGFueXdoZXJlIGluIHRoZSBib29rIChqdSdv c2FpKS4gUGVyaGFwcyBpdCB3YW50cyB0byBwb2ludCB0byB0aGUgbGlzdCBvZiBQQSByYWZzaSBp biBDaGFwdGVyIDE4IHNlY3Rpb24gMjU/IE9yIHRvIHRoZSBsaXN0cyBvZiB0YW5ydSBpbiBDaGFw dGVyIDUgc2VjdGlvbnMgMTQgYW5kIDE1PwoKKiogV2hhdCBJIHByb2JhYmx5IG1lYW50IHdhcyB0 aGF0IENoYXB0ZXIgMTIsIHRha2VuIGFzIGEgd2hvbGUsIGRpc2N1c3NlcyB0aGUgY21hdm8gdXNl ZCBpbiBjb25zdHJ1Y3RpbmcgdGFucnUuICBJIGRvbid0IHRoaW5rIGFueSBzcGVjaWZpYyBsaXN0 IGV2ZXIgZXhpc3RlZC4gIEknZCBqdXN0IGRyb3AgdGhlIHBhcmVudGhldGljYWwgc2VudGVuY2Uu CgoKCiogU2VjdGlvbiA2LCBqdXN0IGFmdGVyIGV4YW1wbGUgNi45LiBJdCBzYXlzICJzb21lIG9m IHRoZSB1bnJlZHVjZWQgZm9ybXMgaW4gdGhlIHByZXZpb3VzIGV4YW1wbGUiLCBidXQgaXQgaXMg bm90IHJlZmVycmluZyB0byB0aGUgcHJldmlvdXMgZXhhbXBsZTogaXQgaXMgcmVmZXJyaW5nIGFs bCB0aGUgd2F5IGJhY2sgdG8gZXhhbXBsZXMgNi4xIGFuZCA2LjIsIHNvIGl0IHNob3VsZCBiZSAi c29tZSBvZiB0aGUgdW5yZWR1Y2VkIGZvcm1zIGluIHRoZSBwcmV2aW91cyBleGFtcGxlX19zX18i LgoKKiogJydJTkNMVURFRCBJTiBEQUctQ0xMJycgKHpvcnQncyBmb3JrIGF0IGxlYXN0KQoKKEFw cHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkgIFJlZmVyIGV4cGxpY2l0bHkgdG8gNi4x IGFuZCA2LjIKCgoKKiBTZWN0aW9uIDcsIHBhZ2UgNjAuIEluIGV4YW1wbGUgNi4xNiwgdGhlIHdv cmQgInhhcm55a2FyY2UiIGlzIGdsb3NzZWQgYXMgIndhci1jYXIiLiBFaXRoZXIgdGhlIGdsb3Nz IHNob3VsZCBiZSB1cGRhdGVkIHRvIHJlZmxlY3QgdGhlIHZlbGp2byAoInN0dWJib3JuLWNhciIp LCBvciB0aGUgbHVqdm8gc2hvdWxkIGJlIHVwZGF0ZWQgdG8gcmVmbGVjdCB0aGUgZ2xvc3MgImph bWthcmNlIgoKKiogVGhlIGxhdHRlciAoKEFwcHJvdmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJv dmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBTZWN0aW9uIDcsIG1ha2luZyBhIHR5 cGUgMyBmdSdpdmxhLCBzdGVwIDUgc2hvdWxkIHJlYWQgInN0ZXBzIDEtNCIsIG5vdCAic3RlcHMg MS01Ii4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoKCgoqIFNlY3Rpb24g Nywgc3RlcCA1IG9mIHRoZSBTdGFnZSAzIGZ1J2l2bGE6ICJpZiB0aGUgcmFmc2kgZW5kcyBpbiAn J3InJyBhbmQgdGhlIHJlc3Qgb2YgdGhlIGZ1J2l2bGEgYmVnaW5zIHdpdGggJyduJycgKG9yIHZp Y2UgdmVyc2EpIHVzZSBhbiAnJ2wnJy1oeXBoZW4iIHNob3VsZCByZWFkICAiaWYgdGhlIHJhZnNp IGVuZHMgaW4gJydyJycgYW5kIHRoZSByZXN0IG9mIHRoZSBmdSdpdmxhIGJlZ2lucyB3aXRoICcn bicnLCAnJ3RjJycsICcndHMnJywgJydkeicnIG9yICcnZGonJywgb3IgdGhlIHJhZnNpIGVuZHMg aW4gJyduJycgYW5kIHRoZSByZXN0IG9mIHRoZSBmdSdpdmxhIGJlZ2lucyB3aXRoICcncicnIHVz ZSBhbiAnJ2wnJy1oeXBoZW4iLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkp CgoKCiogVGhlIGVuZCBvZiBzZWN0aW9uIDcgc2VlbXMgdG8gaW1wbHkgdGhhdCBjbWVuZSBhcmUg ZXhlbXB0IGZyb20gdGhlIG5vcm1hbCByZXN0cmljdGlvbnMgb24gY29uc29uYW50IGNsdXN0ZXJz IGFzIGxvbmcgYXMgZWFjaCBjb25zb25hbnQgcGFpciBpcyB2YWxpZC4KCgoKKiBTZWN0aW9uIDgu IEV4YW1wbGUgOC4xMCAnJ2RqYW5kam9ueicnIGlzIG5vdCB2YWxpZCBsb2piYW4gYXMgaXQgY29u dGFpbnMgdGhlIGZvcmJpZGRlbiBjb25zb25hbnQgc2VxdWVuY2UgYG5kamAuICAgICgoQXBwcm92 ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKSAgUmVwbGFjZSB3aXRoIGEgZGlmZmVyZW50IG5h bWUuCgoqKiBSZXBsYWNpbmcgd2l0aCAiSm9obiBCcm93biIgYXMgImRqYW5icmF1biIuIC0tcmxw b3dlbGwgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBTZWN0aW9uIDgsIHBhZ2UgNjYuIEV4 YW1wbGUgOC4xMi4gU2F5cyB0aGF0IHRoZSBnaXNtdSAic29scmkiIG1lYW5zICJhY3R1YWxseSwg J3BlcnRhaW5pbmcgdG8gdGhlIHN1biciLiBUaGlzIGlzIGZhbHNlLiBBY2NvcmRpbmcgdG8gdGhl IGdpc211IGxpc3QsIGl0IG1lYW5zICcnaXMnJ2Egc3VuLgoKKiogTGVhdmUgdGhpcyBvbmUgYWxv bmUuICBBcyBhIHNlbHRhdSwgInNvbHJpIiBkb2VzIGluZGVlZCBtZWFuICJzb2xhciIuICAtLWpj b3dhbgoKCgoqIFNlY3Rpb24gMTEsIDVhKSAnJ0V4YW1pbmUgYWxsIHRoZSBDL0MgY29uc29uYW50 IHBhaXJzIHRoYXQgam9pbiB0aGUgQ1ZDIHJhZnNpLCBhbmQgYWxzbyB0aGUgcGFpciBiZXR3ZWVu IHRoZSBsYXN0IENWQyBhbmQgdGhlIFggcG9ydGlvbiwgaWdub3JpbmcgYW55ICJ5Ii1oeXBoZW4g YmVmb3JlIHRoZSBYLicnIHNob3VsZCByZWFkIGluc3RlYWQ6ICcnRXhhbWluZSBhbGwgdGhlIEMv QyBjb25zb25hbnQgcGFpcnMgdXAgdG8gdGhlIGZpcnN0ICJ5Ii1oeXBoZW4sIG9yIHVwIHRvIHRo ZSBlbmQgb2YgdGhlIHdvcmQgaW4gY2FzZSB0aGVyZSBhcmUgbm8gInkiLWh5cGhlbnMuJycKCioq ICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElOIERB Ry1DTEwnJwoKCgoqIFNlY3Rpb24gMTIuIEluIEV4YW1wbGVzIDEyLjIsIDEyLjMgYW5kIDEyLjQg dGhlIGNhbGN1bGF0aW9ucyBhcmUgZ2l2ZW4gYXMgMzI1MDAgbWludXMgdGhlIHNjb3JlLCBpbnN0 ZWFkIG9mIHNpbXBseSB0aGUgc2NvcmUuIChQcm9iYWJseSBmcm9tIHByZXZpb3VzIHZlcnNpb25z IG9mIHRoZSBhbGdvcml0aG0uKSAgICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVk KSkKCgoKKiBTZWN0aW9uIDEzLCBwYWdlIDc0LCB0aGlyZCB0YWJsZTogdGhlcmUgaXMgbm8gc3Bh Y2UgYmV0d2VlbiAibG9qYmF1Z3JpIiBhbmQgImxvamJhbmd5Z3JpIiwgc28gdGhhdCB0aGV5IGFy ZSBydW4gaW50byBvbmUgd29yZCBpbiB0aGUgc2Vjb25kIGNvbHVtbiBvZiB0aGUgdGFibGUuICAo KEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBTZWN0aW9uIDE1IHN0YXRl cyB0aGF0ICJkemlwbyIgY29tZXMgZnJvbSAiY2FkenUgY2lwbmkiICgid2Fsa2luZyBiaXJkIiku ICBUaGlzIGZhaWxzIHRvIG1ha2Ugc2Vuc2UgZWl0aGVyIGV0eW1vbG9naWNhbGx5IG9yIHNlbWFu dGljYWxseSAoSWYgdGhlIG5hbWUgcmVmZXJzIHRvIHBlbmd1aW5zLCB0aGVyZSBhcmUgYSBsb3Qg b2Ygb3RoZXIgZmVhdHVyZXMgb2YgQW50YXJjdGljYSB0aGF0IGFyZSBtb3JlIHByb21pbmVudCBh bmQgbm90IHNoYXJlZCBieSBvdGhlciBwbGFjZXMpLiAgSSBzdXNwZWN0IHRoYXQgdGhlIHdvcmQg bWF5IGFjdHVhbGx5IGNvbWUgZnJvbSAiZGl6bG8gZGFwbHUiICgibG93IGlzbGFuZCIpLCB3aGlj aCBpcyBhIHNvbWV3aGF0IG1vcmUgcmVhc29uYWJsZSBuYW1lLgoKKiogTm90IGFuIGVycmF0dW0s IHRoZSB3b3JkIHJlYWxseSBkb2VzIGNvbWUgZnJvbSAiY2FEWnUgY0lQbmkiLiBUaGF0IGl0IGZh aWxzIHRvIG1ha2Ugc2Vuc2UgZG9lc24ndCBjaGFuZ2UgdGhlIGZhY3QgdGhhdCB0aGF0IGlzIGhv dyB0aGV5IGNvbnN0cnVjdGVkIGl0LiBUaGUgZXR5bW9sb2dpZXMgb2YgImJlbXJvIiBhbmQgImtl dGNvIiBtYWtlIGV2ZW4gbGVzcyBzZW5zZSwgYnkgdGhlIHdheS4KCioqKiBDb3JyZWN0LCBidXQg dGhlIGV0eW1vbG9naWVzIGFyZSB3aGF0IHRoZXkgYXJlLiAgLS1qY293YW4KCgoKLS0tCgoKCiFD aGFwdGVyIDUKCgoKKiBTZWN0aW9uIDYsIGV4YW1wbGUgNi4xNTogSXQgc2F5cyB7eGFtZ3Ugam8g Y29ydHUgbnVudGF2bGF9LCBhbmQgdGhlIGdsb3NzIHNheXMgeyhnb29kIGlmLWFuZC1vbmx5LWlm IHNob3J0KSBzcGVlY2h9LCBidXQge2NvcnR1fSBtZWFucyAiaHVydCIsIG5vdCAic2hvcnQiLgoK KiogJydJTkNMVURFRCBJTiBEQUctQ0xMJycgIChjaGFuZ2VkIHRvIHt0b3JkdX0pIChpbiB6b3J0 J3MgZm9yayBhdCBsZWFzdCkgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoK CiogRXhhbXBsZSA2LjE2OiB2YWpuaSBqdSBzZWxwbHVrYSBudW50YXZsYSAsICAoaW1wb3J0YW50 IHdoZXRoZXItb3Itbm90IHBsZWFzaW5nKSBldmVudC1vZi10YWxraW5nCgoqKiBTaG91bGQgYmUg cGx1a2EsIG5vdCBzZWxwbHVrYS4gICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92 ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gOCBzYXlzICJpbnZvbHZp bmcgc2VsbWEnbyBWT2hBIGFuZCBHT2hJLCBleHBsYWluZWQgaW4gQ2hhcHRlciA3IiwgYnV0IFZP aEEgZG9lc24ndCBhcHBlYXIgaW4gQ2hhcHRlciA3LiBWT2hBIGRvZXNuJ3QgZXZlbiBzZWVtIHRv IGJlIGEgc2VsbWEnbywgZm9yIHRoYXQgbWF0dGVyLiBBbHNvLCBwcm9iYWJseSBHT2hJIHNob3Vs ZCBiZSBHT2hBPwoKCgoqIFNlY3Rpb24gOCwgcGFnZSA5Ni85NzogRXhhbXBsZSA4LjEzIG5lZWRz IHNvbWUga2luZCBvZiB0ZXJtaW5hdG9yIChsaWtlICJiZSdvIikgYmVmb3JlIHRoZSAiY28iLiAg ICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoKCgoqIEFsc28sIHRoZSBwcmVj ZWRpbmcgcGFyYWdyYXBoIHN1Z2dlc3RzIHRoYXQgImJlIiBpcyB0aGUgb25seSB3YXkgdG8gZmls bCBzZWxicmkgcGxhY2VzIG90aGVyIHRoYW4geDEuIFRoaXMgaXMgbm90IHRoZSBjYXNlOiAibWkg bGUgemFyY2kgY3Uga2xhbWEgY28gc3V0cmEiIHdvdWxkIGFscwoKbyB3b3JrLgoKKiogSSBkb24n dCBhZ3JlZSB0aGF0IHRoZXJlJ3MgYW55IHN1Y2ggc3VnZ2VzdGlvbiwgYWx0aG91Z2ggYWRkaW5n IGEgc2Vjb25kIHBvc3NpYmlsaXR5IGlzIGZpbmUgd2l0aCBtZS4gIC0tamNvd2FuCgoKCiogU2Vj dGlvbiA5IGxpc3RzICJrZWkiIGFzIHRoZSB0ZXJtaW5hdG9yIGZvciBudSwgYnV0IGl0J3Mgbm90 IG9ubHkgZm9yIG51LCBidXQgZm9yIGFsbCBvZiBOVS4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293 YW4gQXBwcm92ZWQpKQoKCgoqIFNlY3Rpb24gMTQsIHBhZ2UgMTA0IHNheXMgImRhZHlsc2kiIGZv ciAiZGFkeXNsaSIuCgoqKiAoKEFwcHJvdmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkg JydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBTZWN0aW9uIDE0LCBwYWdlIDEwNSB1c2VzICJ6 ZGFuaSBsaWpncmkiIGluIHRoZSBleGFtcGxlIGxpc3QsIGJ1dCB0aGUgcGFyYWdyYXBoIGFmdGVy LCBhcyB3ZWxsIGFzIHRoZSBuZXh0IGxpc3QsIHJlZmVyIHRvICJ6ZGFuaSBsaW5qaSIgYW5kICJs aW5qaSB6ZGFuaSIuCgoKCiogU2VjdGlvbiAxNCwgcGFnZSAxMDUgaGFzIHRoZSBsdWp2byAiY3B1 bWknaSIgYnV0IGRlZmluZXMgaXQgYXQgdGhlIGJvdHRvbSBvZiB0aGUgc2V0IGFzICJjcGFtaSdp Ii4KCioqIGN1YW1pJ2kgcyBwdWxsLW1hY2hpbmUsIHNvIHVzaW5nIHRoYXQgKChBcHByb3ZlZCBF cnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiog U2VjdGlvbiAxNCwgcGFnZSAxMDYgc2F5cyAicGxpc2UgdGFwbGEiIGZvciAiYXBwbGUgY2FrZSIu IERvZXMgVHVya2lzaCByZWFsbHkgcmVmZXIgdG8gYSBjYWtlIGFzIGEgdGlsZSwgb3IgaXMgdGhp cyBhIG1pc3VuZGVyc3RhbmRpbmcgb2YgdGhlIGRlZmluaXRpb24gb2YgInRhcGxhIj8KCioqIE5v LCBpdCdzIHRoYXQge3RhcGxhfSBjYW4gbWVhbiBib3RoIGNha2UgYW5kIHRpbGUsIGFzIHRoZSBn aXNtdSBsaXN0IHNob3dzOyBpdCdzIGEgZ2VuZXJpYyB3b3JkIGZvciBhIGZsYXQgMy1EIHNoYXBl LCBvciBzaG9ydCBjeWxpbmRlci4gIFN0ZXQuICAtLWpjb3dhbgoKCgoqIFNlY3Rpb24gMTQsIHBh Z2UgMTA4IHNheXMgInR1bWxhIHNwaXNhIi4gVGhpcyBzaG91bGQgcHJvYmFibHkgYmUgInR1bWxh IHBhZ2J1Iiwgc2luY2UgcGllY2VzIG9mIGxhbmQgYXJlIG5vdCBhY3R1YWxseSBkZXRhY2hlZC4K CioqIFdoYXQgbWFrZXMgeW91IHRoaW5rIHRoYXQgc3Bpc2EgaGF2ZSB0byBiZSBkZXRhY2hlZD8g IFN0ZXQuICAtLWpjb3dhbgoKCgoqIFNlY3Rpb24gMTQsIHBhZ2UgMTA5IHNheXMgInJvc3R1IG1v anlzdSdhIi4gInJvc3R1IiBpcyBub3QgYSBMb2piYW4gZ2lzbXUsIG5vciBhbiBPbGQgTG9nbGFu IHByaW1pdGl2ZS4gSXQncyBzdXBwb3NlZCB0byBiZSAibXJvc3QKCnUiLgoKKiogIk1yb3N0dSIg aXMgY29ycmVjdCwgYW5kIHRoYXQncyB0aGUgcmVhZGluZyBvZiB0aGUgb25saW5lIHZlcnNpb24u ICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBTZWN0aW9uIDE0LCAi bnVua2lsYnJhIiBpcyBjbGVhcmx5IG5vdCAic2hhcnBlbmVyIiwgYW5kIGV2ZW4gaWYgaXQgd2Fz IHVzaW5nIHRoZSByaWdodCByYWZzaSBmb3IgY2FicmEsIHRoYXQgc3RyaWtlcyBtZSBhcyBhIHBy ZXR0eSBjcmFwcHkgbHVqdm87IG5lZWRzIHplbmJhIG9yIHptYWR1IG9yIGJpbnhvIG9yIHNvbWV0 aGluZy4KCgoKKiBTZWN0aW9uIDE0LCBwYWdlIDExMiBsaXN0cyBudW1lcm91cyB0YW5ydSBleGFt cGxlcyB3aG9zZSBtZWFuaW5ncyBhcmUgaHlwZXJueW1zIG9mIHRoZSB0ZXJ0YXUgaW5zdGVhZCBv ZiBoeXBvbnltcy4gVGhpcyBjb250cmFkaWN0cyB0aGUgcHJpbWFyaW5lc3Mgb2YgdGhlIHRlcnRh dSBhcyBkZWZpbmVkIG9uIHBhZ2UgODQuIFRoZSB3b3JkICJqYSIgc2hvdWxkIHByb2JhYmx5IGJl IGluc2VydGVkIGJldHdlZW4gdGhlIGNvbnN0aXR1ZW50cywgb3IgdGhlIGVudGlyZSBzZWN0aW9u IHNob3VsZCBiZSByZW1vdmVkLgoKKiogU3RldC4gIExpb25zIGNhbid0IGJlIG1hZGUgb2Ygc3Rv bmUsIGJ1dCB7cm9rY2kgY2luZm99IGlzIGEgbGVnaXRpbWF0ZSB0YW5ydSBub25ldGhlbGVzcy4g IC0tamNvd2FuCgoKCi0tLQoKCgohQ2hhcHRlciA2CgoKCiogRW5kIG9mIHNlY3Rpb24gMiwgaXQg c2F5cyAiY29tcG91bmQgbmVnYXRvciBgYG5ha3UnJyAoZGlzY3Vzc2VkIGluIENoYXB0ZXIgMTUp IiwgYnV0ICJuYWt1IiBpcyBuZXZlciBtZW50aW9uZWQgaW4gY2hhcHRlciAxNTsgaW5kZWVkLCB0 aGUgb25seSB1c2VzIG9mIHRoZSB3b3JkIHtrdX0gYXQgYWxsIGFyZSBhZnRlciB0aGUgd29yZHMg e2ppJ3V9IG9yIHtuYSdpfS4gQ2hhcHRlciAxNiB0YWxrcyBhYm91dCB7bmFrdX0uCgoqKiAnJ0lO Q0xVREVEIElOIERBRy1DTEwnJyAoem9ydCdzIGZvcmsgYXQgbGVhc3QpIGJ1dCBuZWVkcyBhcHBy b3ZhbAoKCgoqIFNlY3Rpb24gMTIsIHAuIDEzOCBjbGFpbXMgdGhhdCB0aGUgc3VtdGkgaW4gZXhh bXBsZXMgMTIuMiBhbmQgMTIuMyBvcGVyYXRlIGxpa2UgZXhhbXBsZXMgMi41IGFuZCAzLjYgcmVz cGVjdGl2ZWx5LiAiMi42IGFuZCAzLjYiIGlzIGFsbW9zdCBzdXJlbHkgd2hhdCB3YXMgbWVhbnQu ICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUct Q0xMJycKCgoKKiBJbiBzZWN0aW9uIDExIEV4YW1wbGUgMTEuMiBvY2N1cnMgdHdpY2UuCgoqKiAo KEFwcHJvdmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUct Q0xMJycKCgoKKiBTZWN0aW9uIDIgaGFzIGV4YW1wbGVzIDIuMyBhbmQgMi41IHRvIHNob3cgdGhl IGRpZmZlcmVuY2UgYmV0d2VlbiB7bG99IGFuZCB7bGV9LiBFeGFtcGxlIDIuNSBhbmQgdGhlIHN1 YnNlcXVlbnQgdGV4dCBzYXkgdGhhdCB7bG8gbmFubXUgY3UgbmlubXV9IGlzIG5lY2Vzc2FyaWx5 IGZhbHNlIGluIGxvamJhbiBzaW5jZSB7bm9kYSBuYW5tdSBnaSdlIG5pbm11fS4gVGhpcyBjb250 cmlidXRlcyB0byB0cmFucy1lcmFzdXJlLCBhbmQgc2hvdWxkIGJlIHJldmlzZWQuCgoKCiogSW4g c2VjdGlvbiA1IGJldHdlZW4gZXhhbXBsZXMgNS4yIGFuZCA1LjMsIGl0IHNheXMgdGhhdCB0aGUg dHlwaWNhbCBsaW9uIGJlc3QgZXhlbXBsaWZpZXMgdGhlIHNldCBvZiBsaW9ucy4gVGhpcyBpcyBm YWxzZSwgaXQgZXhlbXBsaWZpZXMgbm90IHRoZSBzZXQsIGJ1dCB0aGUgbWVtYmVycyBvZiB0aGF0 IHNldC4KCgoKLS0tCgoKCiEgQ2hhcHRlciA3CgoKCiogU2VjdGlvbiA2LCBwYWdlIDE1NSBoYXMg YSBub3RlIGJlbG93IGV4YW1wbGUgNi4xMyB0aGF0IHNheXMsIGluIHBhcnQ6ICJUaGUgTG9qYmFu IGRvZXMgbm90IGNvbnRhaW4gYW4gZXF1aXZhbGVudCBvZiB0aGUgIm15IiBpbiBjb2xsb3F1aWFs IEVuZ2xpc2g7IiBhbmQgdGhlbiBnb2VzIG9uIHRvIGV4cGxhaW4gaG93IGV4YW1wbGUgNi4xMyBj b3VsZCBiZSBtb2RpZmllZCB0byBpbmNsdWRlICB0aGUgcmVsYXRpb25zaGlwIGJldHdlZW4gdGhl IHNwZWFrZXIgYW5kIHRoZWlyIHNvbiBhbmQgZGF1Z2h0ZXIuICBJIGJlbGlldmUgeW91IGNvdWxk IHNheSAibGUgbWkgYmVyc2EiIG9yICJsZSBiZXJzYSBwZSBtaSIgdG8gZXhwcmVzcyB0aGUgRW5n bGlzaCAibXksIiB0aGVyZWZvciByZW1vdmluZyB0aGUgKHByZXN1bWFibHkgaW5hY2N1cmF0ZSkg bm90ZSBhbmQgbWFraW5nIHRoZSBMb2piYW4gdHJhbnNsYXRpb24gbW9yZSBhY2N1cmF0ZS4KCioq IFN1cmUgeW91IGNvdWxkLCBidXQgdGhlIHBvaW50IG9mIHRoZSBub3RlICh3aGljaCBpcyAnJ25v dCcnIGluYWNjdXJhdGUpIGlzIG5vdCB0ZWFjaGluZyBob3cgdG8gdXNlIHJlbGF0aXZlIGNsYXVz ZXMsIGJ1dCB0byBjbGFyaWZ5IHRoYXQgdGhlIGlkaW9tYXRpYyBFbmdsaXNoIHZlcnNpb24gY29u dGFpbnMgbW9yZSBpbmZvcm1hdGlvbiB0aGFuIHRoZSBMb2piYW4gdmVyc2lvbiBkb2VzLiAgU3Rl dC4KCgoKKiBTZWN0aW9uIDYsIHBhZ2UgMTU2IGhhcyAnJ2thcmNhJycgZm9yICcna2FyY2UnJy4g ICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoKCgoqIEFmdGVyIGV4YW1wbGUg Ni4xOCBpcyBhIHBhcmFncmFwaCB0aGF0IHF1b3RlcyBub24tZXhpc3RlbnQgdGV4dCBmcm9tIGV4 YW1wbGUgNi4xMC4gICJnbydlIHJhJ28iIHNob3VsZCByZWFkICJnbydpIHJhJ28iIGFuZCAiZG8g Z28nZSIgc2hvdWxkIHJlYWQgIm1pIGdvJ2kiCgoqKiBUaGUgY29ycmVjdCBjb3JyZWN0aW9uIGlz IHRvIHJlcGxhY2UgIkIncyBzdGF0ZW1lbnQiIHdpdGggIkEncyBzZWNvbmQgc3RhdGVtZW50Ii4g ICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoKKioqIE5vdCByZWFsbHkuICJn bydlIHJhJ28iIGluIEEncyBzZWNvbmQgc3RhdGVtZW50IHdvdWxkIG1lYW4gdGhlIHNhbWUgYXMg ImdvJ2UiLCB3aGljaCBpcyB3cm9uZy4gVGhlIG9yaWdpbmFsIGNvcnJlY3Rpb24gaXMgdmFsaWQg dGhvdWdoLgoKCgoqU2VjdGlvbiA2LCB0aGUgZXhjZXB0aW9ucyB0byB0aGUgYW5hcGhvcmEgcnVs ZXMgYXJlIGFsbW9zdCBjZXJ0YWlubHkgaW5jb21wbGV0ZS4gSW4gcGFydGljdWxhciAibWEiIGFu ZCAiY2UndSIgZGVmaW5pdGVseSB3YXJyYW50IGV4Y2VwdGlvbnMuCgoKCiogU2VjdGlvbiA3LCBl eGFtcGxlIDcuNyBoYXMgIm1pIHpiYXN1IGxvaSBtdWRyaSB6aSdvIiBmb3IgIm1pIHpiYXN1IGxl IGRpbmp1IHppJ28iCgoqKiAoKEFwcHJvdmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkg JydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBTZWN0aW9uIDgsIHAuIDE1OCBpbXBsaWVzIHRo YXQgJyd2bydhJyctc2VyaWVzIGFuYXBob3JhIHJlZmVyIHRvIHN1bXRpIG9mIHRoZSBicmlkaSB0 aGV5IHRoZW1zZWx2ZXMgYXJlIHN1bXRpIG9mLiBUaGlzIGNvbnRyYWRpY3RzIHRoZSBjbWF2byBs aXN0LCBhbmQgaXMgaW5jb3JyZWN0OiAnJ3ZvJ2EnJy1zZXJpZXMgYW5hcGhvcmEgKGFjY29yZGlu ZyB0byB0aGUgbWEnb3N0ZSkgcmVmZXIgdG8gc3VtdGkgb2YgdGhlIG91dGVybW9zdCBicmlkaSB3 aXRoaW4gdGhlIGN1cnJlbnQgc2VudGVuY2UuIFRoaXMgbWFrZXMgdGhlbSBsb2dvcGhvcnMvbG9u ZyBkaXN0YW5jZSByZWZsZXhpdmVzLCByYXRoZXIgdGhhbiBzaG9ydC1kaXN0YW5jZSByZWZsZXhp dmVzLCBhcyBpcyBub3JtYWwgaW4gaHVtYW4gbGFuZ3VhZ2UuIFRodXMsIGluICcnbWkgbmVsY2kg bGVudSBkbyBwcmFtaSB2bydhJycsICcndm8nYScnbWVhbnMgJydtaScnLCBub3QgJydkbycnLgoK KipfXy0tPl9fKChXaHkgdGhlIEJvb2sgaXMgUmlnaHQgYW5kIHRoZSBtYSdvc3RlIGlzIFdyb25n KSkKCioqKldoaWNoIG9mIHRoZSB0d28gY2FzZXMgaXMgbm9ybWFsIGluIGh1bWFuIGxhbmd1YWdl PyBJZiB5b3UnZCB3cml0dGVuIGl0IGluIExvamJhbiwgSSdkIGtub3chCgoqKioqIEknZCBndWVz cyB0aGF0IHNob3J0LWRpc3RhbmNlIGlzIG5vcm1hbCwgYi9jIG90aGVyd2lzZSBpdCB3b3VsZCBu b3QgYmUgd29ydGggY29tcGFyaW5nIHRoZSB0d28uIEJ1dCBvZiBjb3Vyc2UgaW4gbG9qYmFuIHdl IHdvdWxkbid0IGhhdmUgdG8gZ2xvcmsgdGhhdC4KCioqKioqIFNob3J0LWRpc3RhbmNlIGlzIGlu ZGVlZCBub3JtYWwsIGJ1dCBMb2piYW5pc3RzIGhhdmUgY29uc2lzdGVudGx5IHVzZWQgbG9uZy1k aXN0YW5jZS4gIE5pY2sgd3JvdGUgYSBwZWVyLXJldmlld2VkIHBhcGVyIG9uIHRoaXMuICAtLWpj b3dhbgoKCgoqIEV4YW1wbGUgNy44LjUgKHAxNTkpOiBiYWpyYSBvbiB0aGlyZCBsaW5lIHNob3Vs ZCBiZSBiYWp5a2xhLCBsaWtlIHRoZSBvdGhlcnMuCgoqKiAoKEFwcHJvdmVkIEVycmF0dW18Y2Ft Z3VzbWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBTZWN0aW9uIDgs IGl0IHNheXMgIkV4YW1wbGUgOS4zIGlzIGEgdHJ1bHkgcHJlZ25hbnQgcXVlc3Rpb24uLi4iIHdo ZW4gZXhhbXBsZSA5LjIgaXMgdGhlIHByZWduYW50IHF1ZXN0aW9uLCBhbmQgZXhhbXBsZSA5LjMg aXMgYSBiZXR0ZXIgd2F5IG9mIGV4cHJlc3NpbmcgIldobyBhcmUgeW91PyIKCgoKKiBTZWN0aW9u IDE1LCBpdCBzYXlzICJGaW5hbGx5LCBsdWp2byBpbnZvbHZpbmcgYGB6aSdvJycgYXJlIGFsc28g cG9zc2libGUsIGFuZCBhcmUgZnVsbHkgZGlzY3Vzc2VkIGluIENoYXB0ZXIgMTIiLCBidXQgbm93 aGVyZSBkb2VzIENoYXB0ZXIgMTIgbWVudGlvbiB0aGUgd29yZCB7emknb30sIG11Y2ggbGVzcyBs dWp2byBpbnZvbHZpbmcgaXQuIFRoaXMgaXMgcHJvYmFibHkgYSBDaGFwdGVyIDEyIGVycmF0dW0u CgotLS0KCgoKIUNoYXB0ZXIgOAoKCgoqIFNlY3Rpb24gMS4gRXhhbXBsZSAxLjggaXMgc2FpZCB0 byBiZSBlcXVpdmFsZW50IHRvIEV4YW1wbGUgMS40LCB3aGVuIGl0IGlzIGluc3RlYWQgZXF1aXZh bGVudCB0byBFeGFtcGxlIDEuNS4KCgoKKiBJbiBTZWN0aW9uIDMgdGhlIGV4YW1wbGUgMy4yMCBz aG91bGQgaGF2ZSB7eGFuY2V9IGluc3RlYWQgb2Yge3hhbmNpfSwgd2hpY2ggaXMgZGVmaW5pdGVs eSBhIHR5cG8uIC0taWRvbnRrbncKCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBw cm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gOCwgcC4gMTgxOiAg OC4xKSAnJ2xpIHBhaSBub2kgbmEnZSBmcmludSBuYW1jdScnc2hvdWxkIGJlICcnbGkgcGFpIG5v aSBuYSdlIGZyaW51IGN1IG5hbWN1JycuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJv dmVkKSkKCgoKKiBTZWN0aW9uIDgsIEV4YW1wbGUgOC42LCB0aGUgdGhpcmQgbGluZSwgIkkgcnVu bmluZ2x5LWdvIHRvLXRoaXMgW3JlY2lwcm9jaXR5XSBbeDMgb2YgdGhpcyBicmlkaV0gZnJvbS10 aGF0IiwgaXMgbm90IHRoZSB1c3VhbCBkZWNlbnQgRW5nbGlzaCBvbmUgd291bGQgZXhwZWN0IGlu IHRoYXQgcG9zaXRpb247IHJlcGxhY2VkIHdpdGggIkkgcnVuIHRvIHRoaXMgZnJvbSB0aGF0IGFu ZCB2aWNlIHZlcnNhLiIgaXMgZGFnLWNsbCAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNl Y3Rpb24gOSwgZXhhbXBsZSA5LjIgaXMgJydjbydvIHhpcm1hJycuIFRoZW4sICcnTm90ZSB0aGF0 IEV4YW1wbGUgOS4yIHNheXMgZmFyZXdlbGwgdG8gc29tZXRoaW5nIHdoaWNoIGRvZXNu4oCZdCBy ZWFsbHkgaGF2ZSB0byBiZSBhIGhvcnNlLCBzb21ldGhpbmcgdGhhdCB0aGUgc3BlYWtlciBzaW1w bHkgdGhpbmtzIG9mIGFzIGJlaW5nIGEgaG9yc2UsIG9yIGV2ZW4gbWlnaHQgYmUgc29tZXRoaW5n IChhIHBlcnNvbiwgZm9yIGV4YW1wbGUpIHdobyBpcyBuYW1lZCAiSG9yc2UiLiBJbiBhIHNlbnNl LCBFeGFtcGxlIDkuMiBpcyBhbWJpZ3VvdXMgYmV0d2VlbiAiY28nbyBsZSB4aXJtYSIgYW5kICJj bydvIGxhIHhpcm1hIicnLiBJcyB0aGlzIHRydWU/CgoqKiBZZXMsIGluIHRoZSBzZW5zZSB0aGF0 IGFsbCB1c2VzIG9mICJsZSIgJydtaWdodCcnIG1lYW4gImxhIi4gIEJ1dCBpdCdzIHByb2JhYmx5 IG1vcmUgY29uZnVzaW5nIHRoYW4gaXQncyB3b3J0aC4gIFRydW5jYXRlIGFmdGVyICJ0aGlua3Mg b2YgYXMgYmVpbmcgYSBob3JzZSIuICAtLWpjb3dhbgoKCgoqIFNlY3Rpb24gOSBzYXlzICcnSW4g dm9jYXRpdmUgcGhyYXNlcyB3aGljaCBhcmUgc2ltcGxlIG5hbWVzIChhZnRlciB0aGUgdm9jYXRp dmUgd29yZHMpLCBhbnkgcmVsYXRpdmUgY2xhdXNlcyBtdXN0IGNvbWUganVzdCBhZnRlciB0aGUg bmFtZXMnJy4gVGhpcyBpc24ndCB0cnVlLiBSZWxhdGl2ZSBjbGF1c2VzIGNhbiBnbyBiZXR3ZWVu IHRoZSB2b2NhdGl2ZSBhbmQgdGhlIGNtZXZsYS4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4g QXBwcm92ZWQpKSAgRHJvcCBpdDsgaXQgcmVmbGVjdHMgYW4gZWFybGllciBzdGF0ZSBvZiB0aGUg bGFuZ3VhZ2UuCgoKCiogU2VjdGlvbiAxMCwgZXhhbXBsZSAxMC4zIHVzZXMgImtlJ2EgZ29pIGtv J2Ugem8ndSBrbydhIHpiYXN1IGtlJ2EiIGJ1dCBnbG9zc2VzIGl0IGFzICIoSVQgPSBpdDIgOiBp dDEgYnVpbHQgaXQyKSIuIFRoZSBhc3NpZ25lZCAia28nZSIgaXMgbm90IHVzZWQgYXMgZXhwZWN0 ZWQgb3IgZGVzY3JpYmVkLCBhbmQgc2hvdWxkIHByb2JhYmx5IGJlICJrbydhIHpiYXN1IGtvJ2Ui LiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpICBZZXMsICJrbydhIHpiYXN1 IGtvJ2UiIGlzIGNsZWFybHkgd2hhdCdzIG1lYW50LgoKCgotLS0KCiFDaGFwdGVyIDkKCgoKKiBT ZWN0aW9uIDYsIHBsYWNlIHN0cnVjdHVyZSBvZiAnJ3BpbG5vJycgaXMgbWlzc2luZyAiZm9yIHB1 cnBvc2UgeDMiLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoKCiogU2Vj dGlvbiA4LCB0aGUgZXhhbXBsZXMgOC41IGFuZCA4LjYgYXJlIHN1cHBvc2VkIHRvIG1lYW4gdGhl IHNhbWUgdGhpbmcsIGJ1dCBkbyBub3QuCgoqKiBQbGVhc2UgZWxhYm9yYXRlLiAgLS1qY293YW4K CioqKiA4LjUgbWVhbnMgIkkgZ2F2ZSB0aGUgYm9vayB0byBKb2huLCBiZWNhdXNlIEpvaG4gZ2F2 ZSB0aGUgbW9uZXkgdG8gbWUiIGJ1dCA4LjYgbWVhbnMgIkpvaG4gZ2F2ZSB0aGUgbW9uZXkgdG8g bWUgYmVjYXVzZSBJIGdhdmUgdGhlIGJvb2sgdG8gSm9obi4iCgoqKiAnJ0lOQ0xVREVEIElOIERB Ry1DTEwnJyAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBTZWN0aW9u IDExLCBkZXNjcmlwdGlvbiBvZiB0aGUgbWVhbmluZyBvZiAiLmlqZSBzZXJpJ2EgdHUnZSIgY29u dHJhZGljdHMgdGhlIGV4cGxhbmF0aW9uIG9mIEV4YW1wbGUgOS45LCB3aGljaCB3b3VsZCBzdWdn ZXN0ICIuaWplIHJpJ2EgdHUnZSIuCgoKCiogc2VjdGlvbiAxNywgInBlcnRhaW5lZCB0byBieSBj b25jZXJuaW5nIiBzaG91bGQgYmUgc2VwYXJhdGVkLCB3aXRoICJjb25jZXJuaW5nIiBzaG91bGQg YmUgaW4gdGhlIGxhc3QgY29sdW1uIG9mIHRoZSB0YWJsZQoKCgoqIHNlY3Rpb24gMTcgImZyb20g c291cmNlIGFzIGFuIG9yaWdpbiBvZiIgc2hvdWxkIGJlIHR3byBlbnRyaWVzOyAiZnJvbSBzb3Vy Y2UiIGFuZCAiYXMgYW4gb3JpZ2luIG9mIiAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgotLS0K CgoKIUNoYXB0ZXIgMTAKCgoKKiBTZWN0aW9uIDQsICJ3aGVuIGJvdGggc3BhdGlhbCBhbmQgdGVt cG9yYWwgdGVuc2UgY21hdm8gYXJlIGdpdmVuIGluIGEgc2luZ2xlIHRlbnNlIGNvbnN0cnVjdCwg dGhlIHRlbXBvcmFsIHRlbnNlIGlzIGV4cHJlc3NlZCBmaXJzdCIgZGlzYWdyZWVzIHdpdGggdGhl IHJ1bGUgc2ltcGxlLXRlbnNlLW1vZGFsLTk3MiBpbiB0aGUgQk5GIGdyYW1tYXIuCgoKCiogU2Vj dGlvbiA5LCBleGFtcGxlIDkuOSBvbiBwYWdlIDIyNyBoYXMgImNpcmxpIiBmb3IgImNpcmxhIi4K CioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElO IERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gMTIsIGV4YW1wbGUgMTIuNiB0cmFuc2xhdGVzIG1vcnNp IGFzICJkaWUiIHJhdGhlciB0aGFuICJhbSBkZWFkIiBpbiB0aGUgdHJhbnNsYXRpb24gKGFzIG9w cG9zZWQgdG8gdGhlIGdsb3NzKS4KCgoKKiBTZWN0aW9uIDE2LCBhdCB0aGUgZW5kLCB0aGUgWCBh bmQgWSBpbiB0aGUgMyBmb3JtcyBkb24ndCBmaXQgcHJvcGVybHkgKHRoZSAzcmQgZG9lc24ndCBt YXRjaCB0aGUgZmlyc3QgdHdvKS4gSSByZWNvbW1lbmQsIGNvcHlpbmcgZnJvbSBTZWN0aW9uIDIz ICh3aGVyZSB0aGV5IGFyZSB3cml0dGVuIGFnYWluIGNvcnJlY3RseSk6CgogICAgICAgWCAuaSBU RU5TRSBibyBZCgogICAgICAgVEVOU0UgZ2kgWCBnaSBZCgogICAgICAgWSBURU5TRSBsZSBudSBY CgoKCiogU2VjdGlvbiAxNywgZXhhbXBsZSAxNy4xMiBzaG91bGQgbm90IGhhdmUgdGhlIHNlY29u ZCAiYmV2cmkiLgoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpICcn SU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlvbiAxOCwgZXhhbXBsZSAxOC45IGlzIHN1 cHBvc2VkIHRvIHNob3cgc2NhbGFyIG5lZ2F0aW9uIG9mIHRlbnNlcyBub3QgbGltaXRlZCB0byBQ VSBhbmQgRkFoQSwgYnV0IHRoZSBleGFtcGxlIHRlbnNlIGlzIHJpJ3UgKEZBaEEyKS4KCgoKKiBT ZWN0aW9uIDE5LCBleGFtcGxlIDE5LjEwIHNob3VsZCBoYXZlICJiYSIsIG5vdCAicHUiLCBhbmQg IltmdXR1cmVdIiwgbm90ICJbcGFzdF0iLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHBy b3ZlZCkpCgoKCiogU2VjdGlvbiAyNSwgZXhhbXBsZXMgMjUuMSBhbmQgMjUuMiBoYXZlICcnbHUn YScnIGZvciAnJ2xhJ3UnJy4KCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92 ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gMjUsIHRoaXMgd2hvbGUg c2VjdGlvbiBpcyBhdCBvZGRzIHdpdGggdGhlIGZvcm1hbCBncmFtbWFyLiBJdCBzYXlzOiAnJ0l0 IGlzIGdyYW1tYXRpY2FsIGZvciBhIHRlcm1zZXQgdG8gYmUgcGxhY2VkIGFmdGVyIGEgdGVuc2Ug b3IgbW9kYWwgdGFnIHJhdGhlciB0aGFuIGEgc3VtdGknJy4gIEJ1dCB0aGF0IGlzIGluIGZhY3Qg aW5jb3JyZWN0LCBpdCBpcyBub3QgZ3JhbW1hdGljYWwgZm9yIGEgdGVybXNldCB0byBiZSB0aGUg YXJndW1lbnQgb2YgYSB0YWcuCgoqKiBVbmZvcnR1bmF0ZWx5IHRydWUuICBUZXJtc2V0cyBzdWNr IHJvY2tzLCBhbmQgc29tZSB3b3JrIHdpbGwgaGF2ZSB0byBiZSBkb25lIHRvIG1ha2UgZXZlcnl0 aGluZyBzYWlkIGFib3V0IHRoZW0gY29uc2lzdGVudCAtLSBpZiBpdCBpcyBldmVuIHBvc3NpYmxl LiAgUGVyc29uYWxseSwgSSdkIGxpa2UgdG8ganVzdCBidXJuIHRoZW0uICAtLWpjb3dhbiAgJycn Tk9GSVgnJycKCgoKKiBTZWN0aW9uIDI3OiBNT2hJIHNlZSBTZWN0aW9uIDI4LCBub3QgMjcuICAo KEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKLS0tCgoKCiFDaGFwdGVyIDEx CgoKCiogU2VjdGlvbiA0OiBUaGUgdXNlIG9mIGthIGluIEV4YW1wbGUgNC40IChwYWdlIDI1OSkg aXMgZXJyb25lb3VzOyBpdCBzaG91bGQgYmUgZHUndS4gLS0oKEpvaG4gQ293YW4pKSAoKEFwcHJv dmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBMYXN0IHBhcmFncmFwaCBvZiBzZWN0 aW9uIDcgcmVmZXJlbmNlcyBjaGFwdGVyIDUgZm9yIGEgZGlzY3Vzc2lvbiBvZiAibHUnZSIuICBs dSdlIGlzbid0IG1lbnRpb25lZCBpbiBjaGFwdGVyIDUuICBQcm9iYWJseSBjaGFwdGVyIDYgaXMg bWVhbnQgaGVyZS4KCioqIFllcywgc2hvdWxkIGJlIFNlY3Rpb24gNS4xMC4gICAgKChBcHByb3Zl ZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoKCiogU2VjdGlvbiA5LCBwYWdlIDI2NiBoYXMg InNhbydyZHppZmEnYSIgaW5zdGVhZCBvZiAic2Enb3JkemlmYSdhIi4KCioqICgoQXBwcm92ZWQg RXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoq IFRoZSBzYW1lIGV4YW1wbGUgKDkuNikgYWxzbyBoYXMga3VjdHJhIGluc3RlYWQgb2Yga3VjdGFp CgoqKiAoKEFwcHJvdmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJ TiBEQUctQ0xMJycKCgoKKiBUaGUgYm9vayB0aXRsZSBpbiBleGFtcGxlIDkuNiBzZWVtcyB0byBi ZSBpbmNvcnJlY3Q6ICJUaGUgQ3J1Y2lmaXhpb24gb2YgSmVzdXMgQ29uc2lkZXJlZCBBcyBBIERv d25oaWxsIEJpY3ljbGUgUmFjZSIgaXMgYWN0dWFsbHkgIltodHRwOi8vd3d3LmV2ZXJncmVlbnJl dmlldy5jb20vMTAyL2ZpY3Rpb24vZHVvLmh0bWx8VGhlIENydWNpZml4aW9uIENvbnNpZGVyZWQg QXMgQW4gVXBoaWxsIEJpY3ljbGUgUmFjZV0uIgoKKiogVW5hcHByb3ZlZAoKCgoqIFNlY3Rpb24g MTA6IFBhcmFncmFwaCBhYm92ZSBleGFtcGxlIDEwLjcgcmVmZXJlbmNlcyAiQ2hhcHRlciAxMSIu IFRoYXQgc2hvdWxkIHJlYWQgIkNoYXB0ZXIgMTAiLgoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNh bWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlvbiAx MTogRXhhbXBsZSAxMS41IGlzIHtzdSdvZGEgcG9pIHZlcmJhIGN1IGtsYW1hIHJvZGUgcG9pIGNr dWxlIG5ha3V9LiBJdCBzaG91bGQgYmUge3N1J29kYSBwb2kgdmVyYmEgY3Uga2xhbWEgcm9kZSBw b2kgY2t1bGUga3UnbyBuYWt1fSBvciBhbiBlcXVpdmFsZW50OyBhcyBpdCBzdGFuZHMgdGhlIG5h a3UgaXMgdW5kZXNpcmFibHkgaW4gdGhlIHJlbGF0aXZlIGNsYXVzZS4KCgoKKiBTZWN0aW9uIDEy LCBwYWdlIDI2OSBoYXMgZXhhbXBsZXMgMTMuMSBhbmQgMTMuMiwgdGhvc2Ugc2hvdWxkIGJlIGNh bGxlZCAxMi4xIGFuZCAxMi4yLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkp CgoKCi0tLQoKCgohQ2hhcHRlciAxMgoKCgoqIFNlY3Rpb24gMiwgcGFnZSAyNzUuIFRoZSBwYXJh Z3JhcGggdW5kZXIgRXhhbXBsZSAyLjMgcmVmZXJzIHRvIGl0IGFzIEV4YW1wbGUgMi40ICgyLjQg ZG9lc24ndCBldmVuIGV4aXN0KS4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQp KQoKCgoqIFNlY3Rpb24gNSwgcmlnaHQgYWZ0ZXIgZXhhbXBsZSA1LjcuIEl0IHNheXMgImEiIGlu c3RlYWQgb2YgImFuIi4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoKCgoq IFNlY3Rpb24gNiwgcGFnZSAyODAuIEV4YW1wbGUgNi42IHNob3VsZCBoYXZlIGEgc3BhY2UgYmV0 d2VlbiAibGEgc3BhdC4iIGFuZCAibm9pIi4KCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNt aXMgQXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gNywgcGFn ZSAyODIuIEV4YW1wbGUgNy41IGhhcyAiYmFuc29pIiBpbnN0ZWFkIG9mICJiYWxzb2kiLgoKKiog KChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFH LUNMTCcnCgoKCiogU2VjdGlvbiAxMSwgcGFnZSAyODUgaGFzICJ4YXNjYWtjdXJudSIgaW5zdGVh ZCBvZiAieGFzeWNha2N1cm51Ii4KCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBw cm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gMTIgcmVmZXJzIHRv ICJudW5rbGFtYSIgYXMgdGhlIHNhbWUgbHVqdm8gYXMgIm51bmtsYSIuICBFdmVuIGlmIHRoZXNl IGFyZSBlcXVpdmFsZW50IGFsdGVybmF0aXZlcyBpdCB3b3VsZCBiZSBsZXNzIGNvbmZ1c2luZyB0 byBiZSBjb25zaXN0ZW50LgoKCgoqIFNlY3Rpb24gMTIgY2xhaW1zIHRoYXQgLWpheC0gaXMgYSBy YWZzaSBmb3Ige2phaX0sIGJ1dCBpdCBpc24ndCBpbiBbaHR0cDovL3d3dy5sb2piYW4ub3JnL3B1 YmxpY2F0aW9ucy93b3JkbGlzdHMvcmFmc2kudHh0fGh0dHA6Ly93d3cubG9qYmFuLm9yZy9wdWJs aWNhdGlvbnMvd29yZGxpc3RzL3JhZnNpLnR4dF0uIERvZXMge2phaX0gaGF2ZSBhIHJhZnNpIG9y IG5vdD8KCioqIEl0IHNob3VsZCwgYnV0IHNvbWVob3cgaXQgbmV2ZXIgZ290IGludG8gdGhlIGdp c211IGxpc3QsIGFuZCBjb25zZXF1ZW50bHkgbm90IGludG8gdGhlIHJhZnNpIGxpc3QgZWl0aGVy LiAgU3RldCwgYW5kIHdlJ2xsIGFkZCBpdCB0byB0aGUgZ2lzbXUgbGlzdC4gIC0tamNvd2FuCgoK CiogU2VjdGlvbiAxMiwgcmlnaHQgYXQgdGhlIGVuZCwgc2F5cyB0aGF0IHtmYWl9IGlzIGV4cGxh aW5lZCBpbiBDaGFwdGVyIDExLCBidXQgQ2hhcHRlciAxMSBtYWtlcyBubyBtZW50aW9uIG9mIHtm YWl9LiBPbmx5IGNoYXB0ZXJzIDkgYW5kIDEwIGRvLgoKKiogJydJTkNMVURFRCBJTiBEQUctQ0xM JycgKHpvcnQncyBmb3JrIGF0IGxlYXN0KSAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHBy b3ZlZCkpCgoKCiogU2VjdGlvbiAxNCwgZXhhbXBsZSAxNC4yLiBNaXNzaW5nIDwgL3ByZSA+IHRh ZywgYW5kIG1pc3NpbmcgPCBwcmU+IHRhZyBmb2xsb3dpbmcgZXhwbGFuYXRvcnkgcGFyYWdyYXBo LgoKCgoqIFNlY3Rpb24gMTQsIHBhZ2UgMjkxLiBUaGUgcGFyYWdyYXBoIHVuZGVyIGV4YW1wbGUg MTQuNyBzYXlzICJzZSB4YW5jZSBtaW5kdSIgaW5zdGVhZCBvZiAic2UgeGFuY2UgbWluZGUiLgoK KiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4g REFHLUNMTCcnCgoKCiogU2VjdGlvbiAxNSwgdHdvIHBhcmFncmFwaHMgYmVmb3JlIGV4YW1wbGUg MTUuNy4gSXQgc2F5cyAiVGhlcmUgYXJlIHNvbWUgY29tcGFyYXRpdmUgY29uY2VwdHMgd2hpY2gg YXJlIGluIHdoaWNoIHRoZSAnc2Ugem1hZHUnIGlzIGRpZmZpY3VsdCB0byBzcGVjaWZ5LiIgVGhl ICJ3aGljaCBhcmUgaW4gd2hpY2giIHNlZW1zIGdyYW1tYXRpY2FsbHkgaW5jb3JyZWN0LgoKKiog RHJvcCAid2hpY2ggYXJlIi4gIC0tamNvd2FuICAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBB cHByb3ZlZCkpCgoKCiogU2VjdGlvbiAxNSwgZXhhbXBsZSAxNS4xLCB0aGUgeDQgb2Yge3ptYWR1 fSBhbmQge21sZWNhfSBzaG91bGQgYmUgImJ5IGFtb3VudCIgb3IgImJ5IHF1YW50aXR5Iiwgbm90 ICJpbiBxdWFudGl0eSIuCgoKCiogU2VjdGlvbiAxNSwgcGFnZSAyOTQsIGV4YW1wbGUgMTUuMTQu ICJsYSBhaW5jdGFpbiIgbmVlZHMgYSBwZXJpb2QgYmVmb3JlIGl0IGJlY2F1c2UgaXQgc3RhcnRz IHdpdGggYSB2b3dlbC4KCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQp KSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgotLS0KCgoKIUNoYXB0ZXIgMTMKCgoKKiBNYW55 IGluY2lkZW50cyBvZiBub3QgaGF2aW5nIHBlcmlvZHMgaW4gZnJvbnQgb2Ygdm93ZWwtaW5pdGlh bCBjbWF2by4KCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAnJ0lO Q0xVREVEIElOIERBRy1DTEwnJwoKCgoqIEluIHNlY3Rpb24gMiwgcC4gMzAwIHJlZmVyZW5jZXMg dG8gdGhlIGV4YW1wbGVzIGZvciAudWUgYW5kIC51ZWN1J2kgYXJlIGZsaXBwZWQuICAoKEFwcHJv dmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBTZWN0aW9uIDMsIHBhZ2UgMzAzLCBl eGFtcGxlIDMuOS4gImUnZSIgbmVlZHMgYSBwZXJpb2QgYmVmb3JlIGl0LgoKKiogKChBcHByb3Zl ZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoK CiogU2VjdGlvbiAzLCBwYWdlIDMwMywgZXhhbXBsZSAzLjEwLiAidGlzbmEiIG5lZWRzIHRvIGJl IHJlcGxhY2VkIHdpdGggInRpc3lnYXUiLgoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21p cyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlvbiA0LCBwYWdl IDMwNS4gVGhlIHNjYWxlIHdpdGggdGhlIGdpc211IG1uZW1vbmljcyBpcyBtaXNhbGlnbmVkIHdp dGggdGhlIHNjYWxlIHdpdGggdGhlIG1lbWJlcnMgb2Ygc2VsbWEnbyBDQUkuICJzYWkiIHNob3Vs ZCBiZSB0YWJiZWQgb25lIHBsYWNlIGxlZnQsIHNvIHRoYXQgaXQgYWxpZ25zIHdpdGggdHNhbGks ICZjLgoKCgoqIFNlY3Rpb24gNywgaXQgc2F5cyAiSXQgaXMgbm90IGNsZWFyIGhvdyBtdWNoIHVz ZSBsb2dpY2FsbHkgY29ubmVjdGVkIGFic3RyYWN0b3JzIHdpbGwgYmU6IHNlZSBDaGFwdGVyIDEz LiIgSXQgc2hvdWxkIGJlICJDaGFwdGVyIDE1LiIKCioqICcnSU5DTFVERUQgSU4gREFHLUNMTCcn ICh6b3J0J3MgZm9yayBhdCBsZWFzdCkgYnV0IG5lZWRzIGFwcHJvdmFsCgoqIFNlY3Rpb24gMTAs IHBhZ2UgMzEzLiBUaGVyZSBpcyBhIG1pc3Npbmcgc3BhY2UgYmV0d2VlbiAiY29udGludWUgZW1v dGlvbiIgYW5kICJlbmQgZW1vdGlvbiIuCgoKCiogU2VjdGlvbiAxNS4gQSBzYW1wbGUgZGlhbG9n dWUgIDE1LjQpIC8gfm5wfltDb21tZW50XSBQYW0gc2F5cywgW1BsZWFzZV0gQWxpY2UsIFtlbmQt b2YtY29tbWVudF0gLyBbQ29tbWVudF0gUGFtIHNheXMsIFtlbmQtb2YtY29tbWVudF0gW1BsZWFz ZV0gQWxpY2UsL34vbnB+ICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoKKiog KChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFH LUNMTCcnCgoKCiogU2VjdGlvbiAxNSwgZXhhbXBsZSAxNS41IC94YW1ndS9nbGVraS8gPwoKKiog KChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFH LUNMTCcnCgoKCiogU2VjdGlvbiAxNSwgZXhhbXBsZSAxNS4xMCkgL2ZpJ2kgcm8genZhdGkga28g cGlueGUgcGEgY2thZmkvZmknaSBybyB6dmF0aSAuaSBrbyBwaW54ZSBwYSBja2FmaS8KCioqIE5v LCB0aGlzIG9uZSBpcyBwZXJmZWN0bHkgZmluZTogImZpJ2kgcm8genZhdGkiIGlzIGEgdm9jYXRp dmUgcGhyYXNlLCB3aGljaCBpcyBhIGZyZWUgbW9kaWZpZXIsIG1lYW5pbmcgdGhhdCBpdCBjYW4g b2NjdXIgYWxtb3N0IGFueXdoZXJlLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3Zl ZCkpCgoKCiogU2VjdGlvbiAxNSwgZXhhbXBsZSAxNS4xMykgL2ZpJ28gc2VscGxlamkgbWkvZmkn byBwbGVqaSBtaS8KCioqIEFuZCAid2l0aCBwYXllciIgcmF0aGVyIHRoYW4gIndpdGggcGF5bWVu dCI7IGV5J3Mgbm90IHBheWluZyB3aXRoIGVtc2VsZiEgLS0gY2FtZ3VzbWlzCgoqKiAoKEFwcHJv dmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycK CgoKKiBTZWN0aW9uIDE1LCBleGFtcGxlIDE1LjEzLiBXcm9uZyB1c2Ugb2Yge3NlbGZ1fS4ge2Jl dnJpfSB3b3VsZCBmaXQgYmV0dGVyLgoKLS0tCgoKCiFDaGFwdGVyIDE0CgoKCiogU2VjdGlvbiA4 LCByaWdodCBiZWZvcmUgZXhhbXBsZSA4LjkgaXMgInByb2R1Y2luZyBleGFtcGxlIDguMTAiIHdo aWNoIHNob3VsZCBpbiBmYWN0IHJlYWQgInByb2R1Y2luZyBleGFtcGxlIDguOSIuICAoKEFwcHJv dmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBTZWN0aW9uIDk6IGJldHdlZW4gZXhh bXBsZSA5LjEwIGFuZCA5LjExLCAiaWRlbnRpZmllZCIgc2hvdWxkIHJlYWQgImlkZW50aWNhbCIK CioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElO IERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gMTEsIHJpZ2h0IGJlZm9yZSBzZWN0aW9uIDEyLiBJdCBz YXlzICJ0ZXJtc2V0cy4uLmFyZSBleHBsYWluZWQgaW4gQ2hhcHRlciAxMiBhbmQgQ2hhcHRlciAx NiIgYnV0IGNoYXB0ZXIgMTIgKHdoaWNoIGlzIG9uIGx1anZvKSBtYWtlcyBhYnNvbHV0ZWx5IG5v IG1lbnRpb24gb2YgdGVybXNldHMuIENoYXB0ZXJzIDkgYW5kIDEwIGRpc2N1c3MgdGVybXNldHMu ICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBTZWN0aW9uIDE0LCBl eGFtcGxlIDE0LjE1IGlzIG5vdCBncmFtbWF0aWNhbCAoYWNjb3JkaW5nIHRvIGpib2ZpJ2UgYW5k IGNhbXhlcykgYmVjYXVzZSBpdCBzYXlzICJwZSdlIC5lIiB3aGVuIGl0IHNob3VsZCBzYXkgInBl J2UgamUiLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoKCiogU2VjdGlv biAxNCwgZXhhbXBsZSAxNC4xNiBtZW50aW9ucyAic29ybWUiLCB3aGljaCBpcyBwcm9iYWJseSBP bGQgTG9nbGFuLCBhbmQgc2hvdWxkIGJlIHJlcGxhY2VkIGJ5ICJtZW5zaSIuCgoqKiAoKEFwcHJv dmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycK CgoKKiBTZWN0aW9uIDE0LCAidGhlIHN0YXRlZCBnbG9zcyBvZiBURlRUYXMg4oCcb25seSBpZuKA nSB3b3JrcyBuYXR1cmFsbHkgb25seSB3aGVuIHRoZSByaWdodC1oYW5kIGJyaWRpIGlzIHRydWU7 IGlmIGl0IGlzIGZhbHNlLCB0aGUgbGVmdC1oYW5kIGJyaWRpIG1heSBiZSBlaXRoZXIgdHJ1ZSBv ciBmYWxzZS4iIGNoYW5nZWQgdG8gInRoZSBzdGF0ZWQgZ2xvc3Mgb2YgVEZUVGFzIOKAnG9ubHkg aWbigJ0gd29ya3MgbmF0dXJhbGx5IG9ubHkgd2hlbiB0aGUgcmlnaHQtaGFuZCBicmlkaSBpcyBm YWxzZTsgaWYgaXQgaXMgdHJ1ZSwgdGhlIGxlZnQtaGFuZCBicmlkaSBtYXkgYmUgZWl0aGVyIHRy dWUgb3IgZmFsc2UuIgoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkp ICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlvbiAxNSwgcmlnaHQgYWZ0ZXIgMTUu OSwgaXQgc2F5cyAiZXhhbXBsZSAxNC4xNyIgd2hlcmUgaXQgc2hvdWxkIHNheSAiZXhhbXBsZSAx NS45IiAoMTQuMTcgZG9lcyBub3QgZXhpc3QpLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBB cHByb3ZlZCkpCgoKCiogU2VjdGlvbiAxNSwgZXhhbXBsZSAxNS44IGlzIG1pc3NpbmcgYSBkb3Qg YWZ0ZXIgImxhIGxvamJhbiIuCgoKCiogU2VjdGlvbiAxNSwgZXhhbXBsZSAxNS45IGlzIG5vdCBn cmFtbWF0aWNhbDsgaXQgc2hvdWxkIGJlICJsYSBkamFuLiBmYSd1IGxhIGZyYW5rLiBjdXNrdSBu dSdpIGJhdSBsYSBsb2piYW4uIHBlJ2UgZmEndSBiYWkgbGEgZGpvcmRqLiIuCgoKCiogU2VjdGlv biAxOSwgZXhhbXBsZSAxOS40IGlzIHRyYW5zbGF0ZWQgYXMgIkkgb3BpbmUgdGhlIGZhY3QtdGhh dCBhLW1hc3Mtb2YgbGl2aW5nLXRoaW5ncyBpcy1hdCBKdXBpdGVyIG9yLWVsc2UgSSBvcGluZSB0 aGUgZmFjdC10aGF0IGEtbWFzcy1vZiBsaXZpbmctdGhpbmdzIGlzbid0LWF0IEp1cGl0ZXIiIGJ1 dCByZWFsbHkgaXQncyAiSSBvcGluZSB0aGUgZmFjdC10aGF0IGEtbWFzcy1vZiBsaXZpbmctdGhp bmdzIGlzLWF0IEp1cGl0ZXIgb3ItZWxzZSBJIF9fZG8tbm90X18gb3BpbmUgdGhlIGZhY3QtdGhh dCBhLW1hc3Mtb2YgbGl2aW5nLXRoaW5ncyBfX2lzLWF0X18gSnVwaXRlciIuIFNvIDE5LjQgaXMg YWN0dWFsbHkgdHJ1ZSwgbm90IGZhbHNlIGFzIGl0IGlzIGNsYWltZWQgdG8gYmUuCgoqKiBDb3Jy ZWN0LCBzbyB0aGlzIGV4YW1wbGUgd2lsbCBuZWVkIHJlcGxhY2luZy4gICAgKChBcHByb3ZlZCBF cnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoKCiogQWxzbyB0aGVyZSBpc24ndCByZWFsbHkgYSBy ZWFzb24gZm9yIGl0IHRvIHNheSBhIG1hc3Mgb2YgbGl2aW5nIHRoaW5ncyBhbmQgbm90IHNvbWUg aW5kaXZpZHVhbCBsaXZpbmcgdGhpbmdzLgoKKiogU3RldC4gIFRoZSBhdXRob3IgcHJlZmVycyBp dCB0aGF0IHdheSwgdGhhbmt5b3V2ZXJ5bXVjaC4gIC0tamNvd2FuLgoKCgoKCi0tLQoKCgohIENo YXB0ZXIgMTUKCgoKKiBTZWN0aW9uIDIsIG1pc3NpbmcgPCAvcHJlID4gdGFnIGFmdGVyIGV4YW1w bGUgMi44IGFuZCA8IHByZT4gdGFnIGJlZm9yZSBleGFtcGxlIDIuOS4KCgoKKiBTZWN0aW9uIDQs IGV4YW1wbGUgNC4xMiAvbmFrZS9uYSdla2UvCgoKCiogU2VjdGlvbiA5LCB0d28gcGFyYWdyYXBo cyBhYm92ZSBleGFtcGxlIDkuNCB0aGUgd29yZCAibmVnYXRpdiIgc2hvdWxkIGJlICJuZWdhdGl2 ZSIuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBTZWN0aW9uIDk6 IElzIHRoZXJlIHN1cHBvc2VkIHRvIGJlIGFueSBkaWZmZXJlbmNlIGJldHdlZW4gZXguIDkuNSBh bmQgOS42PwoKKiogVGhhdCBwcm9ibGVtIGlzIG9ubHkgaW4gdGhlIG9ubGluZSB2ZXJzaW9uLgoK CgoqIFNlY3Rpb24gMTAsIHRocmVlIHBhcmFncmFwaHMgYWZ0ZXIgZXhhbXBsZSAxMC4xNCwgdGhl cmUncyBhIHNlbWljb2xvbiB3aGljaCBzaG91bGQgYmUgYSBjb21tYSBhZnRlciAiKHNheSwgYSBz cGVsbGluZyBlcnJvcikiLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoK CiogU2VjdGlvbiAxMCwgaXQgc2F5cyAiJ2ppJ3VuYSdpa3UnIG1ldGFsaW5ndWlzdGljYWxseSBz YXlzIHRoYXQgc29tZXRoaW5nIGlzIHdyb25nIHdpdGggdGhhdCBhc3N1bXB0aW9uLiAoU2VlIENo YXB0ZXIgMTAuKSIuIFNob3VsZG4ndCB0aGF0IGJlIENoYXB0ZXIgOSwgbW9kYWxzPwoKKiogJydJ TkNMVURFRCBJTiBEQUctQ0xMJycgKHpvcnQncyBmb3JrIGF0IGxlYXN0KSAoKEFwcHJvdmVkIEVy cmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCi0tLQoKCgohQ2hhcHRlciAxNgoKCgoqIFNlY3Rpb24g NSwgZXhhbXBsZSA1LjU6IEVuZ2xpc2ggaGFzICJldmVyeSBZIiB3aGVuIGl0IHNob3VsZCByZWFk ICJldmVyeSBYIgoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpICcn SU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlvbiA2LCBleGFtcGxlIDYuNiBoYXMgYSBt aXNzaW5nICJjdSIgYmVmb3JlICJ2aXNrYSIuCgoqKiAoKEFwcHJvdmVkIEVycmF0dW18Y2FtZ3Vz bWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBTZWN0aW9uIDgsIHRo ZSBleHBsYW5hdGlvbiBvZiBleGFtcGxlIDguMyBzYXlzICJhbnkgZW50aXR5IHdoaWNoIGlzIG9u ZSBpcyBhbHNvIHRoZSBvdGhlciIuIFRoYXQgd291bGQgYmUgdHJ1ZSBpZiB0aGUgZXhhbXBsZSB1 c2VkIHtnb30sIGJ1dCBpdCB1c2VzIHtnYW5haX0uIDguMyBkb2VzIG5vdCBjbGFpbSB0aGF0IGlm IHNvbWV0aGluZyB3YWxrcyBhY3Jvc3MgdGhlIGZpZWxkIHRoZW4gaXQgZ29lcyB0byB0aGUgc3Rv cmUuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkgIENoYW5nZSBpdCB0byB1 c2Uge2dvfS4gJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCioqIFNhbWUgcGxhY2U6IG5lZWRzIHRv IGJvIHtkYSBnb30sIG5vdCB7Z28gZGF9ICBBbmQgdGhlIGdsb3NzIHNob3VsZCBiZSAiRm9yLWV2 ZXJ5IFg6IFggaXMtYS1nb2VyLXRvIHRoZSBzdG9yZSBpZi1hbmQtb25seS1pZiBpdCBpcy1hLXdh bGtlci1vbiB0aGUgZmllbGQuIiAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24g OCwgZXhhbXBsZSA4LjMuIEVpdGhlciB0aGUge2RhfSBzaG91bGQgY29tZSBiZWZvcmUgdGhlIHtn YW5haX0gKG9yLCBieSB0aGUgcHJldmlvdXMgXiBlcnJhdHVtLCB7Z299KSBhbmQgdGhlIGdsb3Nz IHNob3VsZCBiZSBjaGFuZ2VkIHRvIG9ubHkgbWVudGlvbiAiWCIgb25jZSwgb3IgYSB7ZGF9IHNo b3VsZCBiZSBpbnNlcnRlZCBiZWZvcmUge2NhZHp1fS4KCioqICcnSU5DTFVERUQgSU4gREFHLUNM TCcnICBjaG9zZSBmaXJzdCBvcHRpb24gc2luY2UgaXQncyB0ZXJzZXIgKHpvcnQncyBmb3JrIGF0 IGxlYXN0KSBidXQgbmVlZHMgYXBwcm92YWwKCgoKKiBUaGlzOiAiQWRqYWNlbnQgbmVnYXRpb24g Ym91bmRhcmllcyBpbiB0aGUgcHJlbmV4IGNhbiBiZSBkcm9wcGVkLCIgcmVhZHMgYmV0dGVyIGFz ICJBZGphY2VudCBwYWlycyBvZiBuZWdhdGlvbiBib3VuZGFyaWVzIGluIHRoZSBwcmVuZXggY2Fu IGJlIGRyb3BwZWQsIgoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkp ICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoqKiogVGhlIG9ubGluZSB2ZXJzaW9uIHNheXMgIkFk amFjZW50IGRvdWJsZSBuZWdhdGlvbiBib3VuZGFyaWVzIiwgYnV0IEknbSBva2F5IHdpdGggZWl0 aGVyICJkb3VibGUiIG9yICJwYWlycyBvZiIuICAtLWpjb3dhbgoKCgoqIFNlY3Rpb24gMTAsIGV4 LiAxMC41IGFuZCAxMC42IGhhdmUgYSBwcmVuZXgsICJuYWt1IHpvJ3UiLCBhZnRlciBhbiBpamVr LiBUaGlzIGlzIG5vdCBhbGxvd2VkIGJ5IHRoZSBncmFtbWFyLiBJdCBjb3VsZCBiZSBmaXhlZCBi eSByZW1vdmluZyB0aGUgInpvJ3UiIGFuZCB1c2luZyAibmFrdSIgb3V0c2lkZSB0aGUgcHJlbmV4 LCBhbHRob3VnaCB0aGlzIGlzIG9ubHkgZXhwbGFpbmVkIGluIHRoZSBmb2xsb3dpbmcgU2VjdGlv biAxMS4KCioqIFRoaXMgaXMgYSBiaWcgcHJvYmxlbSwgYW5kIEknbSBub3Qgc3VyZSB3aGF0IHNo b3VsZCBiZSBmaXhlZC4gIC0tamNvd2FuICAnJydOT0ZJWCcnJwoKKiBTZWN0aW9uIDEyLCBleC4g MTIuNyBhbmQgMTIuOSBoYXZlIG1pc3NpbmcgImN1InMuCgoqKiAoKEFwcHJvdmVkIEVycmF0dW18 Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBTZWN0aW9u IDE0LCBFeGFtcGxlIDE0LjEgaGFzICJibGFjaSIgKGdsYXNzKSBub3QgImJsYWJpIiAod2hpdGUp IGFzIHBlciB0aGUgRW5nbGlzaC4KCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBw cm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgotLS0KCgoKIUNoYXB0ZXIgMTcKCgoK KiBTZWN0aW9uIDUsIGFmdGVyIGV4YW1wbGUgNS4xLCBwYXJhZ3JhcGggc3RhcnRpbmcgIkhvd2V2 ZXIsICIgaGFzIGluY29ycmVjdCBmb250LiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHBy b3ZlZCkpCgoKCiogU2VjdGlvbiA1LCBpbiB0aGUgc2Vjb25kIHBhcmFncmFwaCBhZnRlciBleGFt cGxlIDUuMSwgc2F5cyAndGhlIGxlcmZ1IHdvcmQg4oCcdHnigJ0gd291bGQgcmVwcmVzZW50IG5v dCBMYXRpbiDigJx04oCdIGJ1dCBHcmVlayDigJx0YXXigJ0uJyBTaG91bGRuJ3QgaXQgYmUgInR5 LiI/CgoKCiogU2VjdGlvbiA5LCBwYWdlIDQyMS4gbGVyZnUgc3RyaW5ncyBhcmUgd3JpdHRlbiB3 aXRob3V0IHBhdXNlcyBvciBzcGFjZXMsIGV2ZW4gdGhvdWdoIEJZIHdvcmRzIGhhdmUgdG8gZW5k IHdpdGggYSBjb25zb25hbnQuCgoqKiBTdGV0LiAgQlkgd29yZHMgZG8gbm90IGVuZCB3aXRoIGEg Y29uc29uYW50LCBhbmQgYSBzdHJpbmcgb2YgdGhlbSBjYW4gbmV2ZXIgYmUgYW1iaWd1b3VzLCBz byBwYXVzZXMvc3BhY2VzIGFyZSBub3QgcmVxdWlyZWQuICAtLWpjb3dhbgoKCgoqIFNlY3Rpb24g OSwgRXhhbXBsZSA5LjQ6IHNob3VsZG4ndCAic3lteWp5IiBiZSAic3lteWR5IiAobG9qYmFuIG1v cnBob2xvZ3kpPyAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoKCiogU2Vj dGlvbiAxMC4gQWZ0ZXIgRXhhbXBsZSAxMC40LjUsIHRoZSByZWZlcmVuY2UgdG8gRXhhbXBsZSAx MC40IHNob3VsZCBiZSBpbnN0ZWFkIHRvIEV4YW1wbGUgMTAuNC41LgoKKipJbiB0aGUgY3VycmVu dCBEQUctQ0xMLCB0aGUgZXhhbXBsZXMgbnVtYmVyaW5nIGlzIHNhbmUsIGJ1dCBhZnRlciBFeGFt cGxlIDEwLjMsIHRoZSB0d28gcmVmZXJlbmNlcyB0byBFeGFtcGxlIDEwLjQgc2hvdWxkIGJlIHRv IEV4YW1wbGUgMTAuMy4KCgoKKiBSaWdodCBiZWZvcmUgc2VjdGlvbiAxMiwgdGhlcmUgaXMgYSBs aW5lIGJyZWFrIGluIHRoZSBtaWRkbGUgb2YgdGhlIHBhcmFncmFwaC4gICgoQXBwcm92ZWQgRXJy YXR1bXxqY293YW4gQXBwcm92ZWQpKQoKCgoqIEluIHNlY3Rpb24gMTMsIHRoZSBmaXJzdCBwYXJh Z3JhcGggc3RhdGVzICJIaXN0b3JpY2FsbHksIHRoZXNlIGNoYXJhY3RlciBzZXRzIGhhdmUgb25s eSBjb3ZlcmVkIHRoZSBFbmdsaXNoIGFscGhhYmV0IGFuZCBhIGZldyBzZWxlY3RlZCBwdW5jdHVh dGlvbiBtYXJrcy4iLCB3aGljaCBpcyBpbmNvcnJlY3QuIFRoZXJlIGhhdmUgYmVlbiBtdWx0aXR1 ZGVzIG9mIGNoYXJhY3RlciBzZXRzIGZvciB3cml0aW5nIHN5c3RlbXMgb3RoZXIgdGhhbiB0aGUg RW5nbGlzaCBhbHBoYWJldC4KCioqIENoYW5nZSB0byBzb21ldGhpbmcgYWxvbmcgdGhlIGxpbmUg b2YgIkhpc3RvcmljYWxseSwgZWFjaCBvZiB0aGVzZSBjaGFyYWN0ZXIgc2V0cyBoYXMgb25seSBj b3ZlcmVkIGEgcGFydGljdWxhciB3cml0aW5nIHN5c3RlbS4iCgoKCiogU2VjdGlvbiAxNywgcGFn ZSA0MjcuICIudHZyaXlkb3MuIGJ1IiBiZWdpbnMgd2l0aCB0aGUgY29uc29uYW50IGNsdXN0ZXIs IHdoaWNoIGlzbid0IGV2ZW4gcGVybWlzc2libGUgbWVkaWFsbHkuCgoqKiBjaGFuZ2UgdG8gdHl2 cml5ZG9zCgoqKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5D TFVERUQgSU4gREFHLUNMTCcnCgoqKioqIEFjdHVhbGx5LCBpdCBzaG91bGQgYmUgInR5dnJkb3Mu IGJ1IiAgLS1qY293YW4KCgoKKiBJbiB0aGUgdGFibGUgaW4gc2VjdGlvbiAxOSwgdGhlIGxlcnZs YSBmb3Igb3Zlci1kb3QgKCIuZ2FybW9jLiBidSIpIGFuZCBvdmVyLXJpbmcgKCIuZ2FyamluLiBi dSIpIHNob3VsZCBiZSB1cGRhdGVkIHRvIHRoZWlyIHBvc3QtUmVhbGxvY2F0aW9uIGZvcm1zLCAi LmdhcG1vYy4gYnUiIGFuZCAiLmdhcHlqaW4uIGJ1Ii4KCioqKiAoKEFwcHJvdmVkIEVycmF0dW18 Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBTZWN0aW9u IDE5IGhhcyB0d28gY29sdW1ucyBydW4gdG9nZXRoZXIgaW4gdGhlIHJvdyB0aGF0IHNheXMgIkRh bmlzaC9MYXRpbiBhZXRlaSAuYWJ1IC5lYnUgZm9pIgoKCgotLS0KCiFDaGFwdGVyIDE4CgoKCiog U2VjdGlvbiAzLCBleC4gMy4xMCwgc2hvdWxkIHRyYW5zbGF0ZSBhcyAiLjEwMTIwMDEiLiAgKChB cHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoKCiogSW4gc2VjdGlvbiA0IGV4YW1w bGUgNC41IGlzIGxpbmtlZCBpbnN0ZWFkIG9mIDQuNyAtICJFeGFtcGxlIDQuNSBpcyBub3QgYGAx IG1pbnVzIDInJywgWy4uLnwuLi5dIiB3aGVyZSBleGFtcGxlIDQuNSBpcyBqdXN0ICJ0ZSdvIi4g ICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoKCgoqIFNlY3Rpb24gNSwgcDQz NyBleDUuOSBbZ2xvc3NdOiBvdXIgLT4gZm91ciAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFw cHJvdmVkKSkKCioqICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlvbiA2LCBwNDM4 OiBqIHZ1J3UgLT4gdnUndSAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoq KiAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFN0YXJ0IG9mIHNlY3Rpb24gMTEgc2hvdWxk IHJlYWQgdGhlcmUgYXJlIGZpdmUgbWVtYmVycyBvZiBNT0kgKG5vdCBmb3VyKS4gICgoQXBwcm92 ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoKCgoqIEluIHNlY3Rpb24gMTEsIGV4IDExLjEw IG9uIHZhJ2UgInNvZmkndXBhbm8iIGluIHRoZSBleGFtcGxlIGlzIGdsb3NzZWQgYXMgIjgvMTAi IGluc3RlYWQgb2YgIjkvMTAiLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkp CgoqKiAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIEluIHNlY3Rpb24gMTEsICJsZWkgcmF0 Y3UgcG9pIHp2YXRpIGxlIHBhbmthIGN1IHNvJ3VtZWkgZm8gbG8naSByYXRjdSIsIGJ1dCB0aGVy ZSBpcyBubyA0dGggcGxhY2Ugb2YgbWVpLgoKKiogUmVtb3ZlIHRoZSAiZm8iOyAoKEFwcHJvdmVk IEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBF eGFtcGxlIDE0LjQgbmVlZHMgYSBzdWItMiBhZnRlciBib3RoIG51bWJlcnMuCgoqKiAoKEFwcHJv dmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycK CgoKKiBJbiBzZWN0aW9uIDE3LCBhdCB0aGUgYm90dG9tIG9mIHBhZ2UgNDU0LCB0aGUgcXVhZHJh dGljIGZvcm11bGEgc2hvdWxkIGJlIGRlc2NyaWJlZCBhcyBhIGNsYXNzaWMgZXhhbXBsZSBvZiBv cGVyYXRvciBsb2dpY2FsIGNvbm5lY3Rpb24sIG5vdCBvcGVyYW5kLiAgKChBcHByb3ZlZCBFcnJh dHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoKCiogU2VjdGlvbiAyMCwgcDQ1ODogLWVzdGFibGlzaGVk IC0+IGVzdGFibGlzaGVkICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoK KiBTZWN0aW9uIDIxIHN0YXRlcyB0aGF0IHRoZSByYWZzaSBvZiAiZnJpbnUiIG1heSBiZSB1c2Vk IGFzIHJhZnNpIGZvciAiZmkndSI7IGhvd2V2ZXIsICJmcmludSIgbG9zdCBib3RoIG9mIGl0cyBz aG9ydCByYWZzaSBpbiB0aGUgUmVhbGxvY2F0aW9uLCBzbyB0aGlzIHJlYWxseSBpc24ndCB2ZXJ5 IHVzZWZ1bC4gVGhlIHRhYmxlIGJlbG93IGxpc3RzICJmaSd1IiBhcyBhIHJhZnNpIHVzYWJsZSBm b3IgImZpJ3UiLCB0aGVyZWZvcmUgb2YgImZyaW51IjsgdGhlIGdpbXN0ZSBsaXN0cyAiZmkndSIg YXMgYSByYWZzaSBvZiAiY2ZpcHUiLgoKKiogVGhpcyBpcyBhIHNlcmlvdXMgcHJvYmxlbSB3aGlj aCBuZWVkcyBzb21lIHRob3VnaHQuICBUaGVyZSBuZWVkcyB0byBiZSBhIHJhZnNpIGZvciBmaSd1 IHNvbWVob3cuICAtLWpjb3dhbiAgJycnTk9GSVgnJycKCgoKKiBTZWN0aW9uIDIyIGV4YW1wbGUg MjIuMywgIm1vJ2Ugdm9ib2kgcmVub21laSBzdSdpIHplIiwgZG9lcyBub3QgcGFyc2UuCgoqKiBJ dCBuZWVkcyAidmVpIiBpbiBmcm9udCB0byBiZSBhIHF1YW50aWZpZXIgKGFuIG9wZXJhbmQgYnkg aXRzZWxmIGlzIG5vdCBhIHBlcm1pdHRlZCBmcmFnbWVudCkuIEFsc28sIHRoZSBmb2xsb3dpbmcg dGV4dCBtZW50aW9ucyAidGUndSIgYnV0IHRoZSBleGFtcGxlIG9taXRzIGl0LgoKKioqIE5vbmUg b2YgdGhvc2UgZXhhbXBsZXMgcGFyc2Ugd2l0aG91dCB7bGl9LCB3aGljaCBJIGhhdmUgYWRkZWQg dG8gYWxsLiAgUmVwbGFjZWQgdGhlIG9uZSBpbiBxdWVzdGlvbiB3aXRoICJsaSBtbydlIHZvYm9p IHJlbm9tZWkgdGUndSBzdSdpIHplIiAoKEFwcHJvdmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJv dmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKLS0tCgohQ2hhcHRlciAxOQoKCgoqIFNl Y3Rpb24gNCwgcDQ2NyBleDQuMzogenUnbyAtPiB6byd1ICAoKEFwcHJvdmVkIEVycmF0dW18amNv d2FuIEFwcHJvdmVkKSkKCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQp KSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gNiwgcGFnZSA0NzIuIEV4YW1w bGUgNi42IGVuZHMgd2l0aCAia2xhbWEiLCBidXQgZm9yIHRoZSBhcmd1bWVudCB0byBtYWtlIHNl bnNlLCBpdCBoYXMgdG8gc2F5ICJudW5rbGEiLgoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1 c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlvbiA3LCBF eGFtcGxlIDcuMSBoYXMgYXMgdGhlIEVuZ2xpc2g6ICJJIGdvLXRvIChmaXJzdGx5KSB0aGUgc3Rv cmUgYW5kIChzZWNvbmRseSkgdGhlIG1hcmtldC4iICAidGhlIG1hcmtldCIgc2hvdWxkIGJlICJ0 aGUgaG91c2UiLgoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpICcn SU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogRXhhbXBsZSAxMS44LCB0aGVyZSdzIGEgZGVucGFi dSBhZnRlciB7emEnZX0gYW5kIG5vIGRlbnBhYnUgYWZ0ZXIge2FsYmVpbmlhc30uCgoqKiAnJ0lO Q0xVREVEIElOIERBRy1DTEwnJyAoem9ydCdzIGZvcmsgYXQgbGVhc3QpIGJ1dCBuZWVkcyBhcHBy b3ZhbAoKCgoqIFNlY3Rpb24gMTEsIHRoZSBwYXJhZ3JhcGggYWZ0ZXIgZXhhbXBsZSAxMS44IHNh eXMgImN0aWlweXJpcyIgYnV0IGl0IHNob3VsZCBiZSAiY2tpaXB5cmlzIi4gICgoQXBwcm92ZWQg RXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoKLS0tCgoKCiFDaGFwdGVyIDIwCgoKCiogU2VjdGlv biBMRSwgcGFnZSA0OTguIEluICJsZSBnZXJrdSBrbGFtYSBsZSB6ZGFuaSIsICJjdSIgaXMgbWlz c2luZy4KCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAnJ0lOQ0xV REVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gVFVoRSwgcGFnZSA1MDUuIEluICJ4YWdtYXUg em8ndSB0dSdlIGdhbmFpIGNpZGphIGdpIGNuaW5vIC5pIGdhbmFpIHZhbmp1IGdpIHRvbGNpJ28g dHUndSIsICJjbmlubyIgc2hvdWxkIGJlIHJlcGxhY2VkIGJ5ICJjaXRubyIuICBBbHNvLCBhIHBy ZW5leCBjYW4ndCBoYXZlIGEgc2VsYnJpLCBzbyAnJ3hhZ21hdScnIHNob3VsZCBiZSByZXBsYWNl ZCBieSAnJ2xvIHhhZ21hdScnLgoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHBy b3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlvbiBTRSwgcGFnZSA1MDQ6 IG1pc3NpbmcgImN1IiBhZnRlciAiemFyY2kiLgoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1 c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogSW4gdGhlIHBhc3Nh Z2VzIG9uIFZFSSBhbmQgVkVoTywgdGhlICJibyJzIHNob3VsZCBiZSBjaGFuZ2VkIHRvICJiaSdl InMuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKLS0tCgoKCiFDaGFw dGVyIDIxCgoKCiogSW4gdGhlIEJORiBncmFtbWFyLCB0aGUgcnVsZSBzaW1wbGUtdGVuc2UtbW9k YWwtOTcyIGlzIG1pc3NpbmcgYSAifCIgYmVmb3JlIHRoZSBDVWhFLiAgKChBcHByb3ZlZCBFcnJh dHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoKCiogSW4gdGhlIEJORiBncmFtbWFyLCB0aGUgcnVsZSBz aW1wbGUtdGVuc2UtbW9kYWwtOTcyIGhhcyBhbiBleHRyYSBuZXdsaW5lIGluIHRoZSBzcGFjZS90 aW1lIHN1YnBocmFzZS4KCgoKKiBJbiB0aGUgQk5GIGdyYW1tYXIsIHRoZSBydWxlIHNlbGJyaS0x LTEzMSBpcyBtaXNzaW5nIGEgInwiIGJlZm9yZSB0aGUgTkEuICAoKEFwcHJvdmVkIEVycmF0dW18 amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBJbiB0aGUgQk5GIGdyYW1tYXIsIHRoZSBydWxlIHRhbnJ1 LXVuaXQtMi0xNTIgaXMgbWlzc2luZyBhICJ8IiBiZWZvcmUgdGhlIEpBSS4gICgoQXBwcm92ZWQg RXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoKCgoqKiAoKEFwcHJvdmVkIEVycmF0dW18Y2FtZ3Vz bWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycgOyBiaXphcmVsbHksIHRoZSBX b3JkIGRvYyB0aGUgYm9vayB3YXMgcHJpbnRlZCBmcm9tIGRvZXMgbm90IGhhdmUgdGhpcyBwcm9i bGVtIGF0IGFsbC4KCgoKKiBJbiB0aGUgQk5GIGdyYW1tYXIsIHRoZSBydWxlIG9wZXJhdG9yLTEt MzcxIGlzIG1pc3NpbmcgdHdvICJ8Ii4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92 ZWQpKQoKCgoqIEluIHRoZSBCTkYgZ3JhbW1hciwgdGhlIHJ1bGUgbWV4LW9wZXJhdG9yLTM3NCBp cyBtaXNzaW5nIGEgInwiIGJlZm9yZSB0aGUgTUFoTyBhbmQgYW5vdGhlciBiZWZvcmUgdGhlIFZV aFUuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBJbiB0aGUgQk5G IGdyYW1tYXIsIHRoZSBydWxlIG9wZXJhbmQtMy0zODUgaXMgbWlzc2luZyBhICJ8IiBiZWZvcmUg dGhlIE5JaEUuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBJbiB0 aGUgQk5GIGdyYW1tYXIsIGluIHRoZSBydWxlIHRpbWVfMTAzMCwgdGhlICJaRWhBIFtQVSBbTkFJ XSBdIiBzaG91bGQgYmUgZW5jbG9zZWQgaW4gcGFyZW50aGVzZXMuICAoKEFwcHJvdmVkIEVycmF0 dW18amNvd2FuIEFwcHJvdmVkKSkKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwpXaWtpY2hhbmdlcyBtYWlsaW5nIGxpc3QKV2lraWNoYW5nZXNAbG9qYmFu Lm9yZwpodHRwOi8vbWFpbC5sb2piYW4ub3JnL21haWxtYW4vbGlzdGluZm8vd2lraWNoYW5nZXMK