Received: from localhost ([::1]:33721 helo=stodi.digitalkingdom.org) by stodi.digitalkingdom.org with esmtp (Exim 4.76) (envelope-from ) id 1TI1Pp-0005Uo-V4; Sat, 29 Sep 2012 11:05:26 -0700 Received: from 173-13-139-235-sfba.hfc.comcastbusiness.net ([173.13.139.235]:36233 helo=digitalkingdom.org) by stodi.digitalkingdom.org with smtp (Exim 4.76) (envelope-from ) id 1TI1Pd-0005Uf-7K for wikineurotic@lojban.org; Sat, 29 Sep 2012 11:05:21 -0700 Received: by digitalkingdom.org (sSMTP sendmail emulation); Sat, 29 Sep 2012 11:05:12 -0700 From: "Apache" Date: Sat, 29 Sep 2012 11:05:12 -0700 To: wikineurotic@lojban.org X-PHP-Originating-Script: 48:htmlMimeMail.php MIME-Version: 1.0 Message-ID: X-Spam-Score: 0.4 (/) X-Spam_score: 0.4 X-Spam_score_int: 4 X-Spam_bar: / X-Spam-Report: Spam detection software, running on the system "stodi.digitalkingdom.org", has identified this incoming email as possible spam. The original message has been attached to this so you can view it (if it isn't spam) or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: The page CLL, aka Reference Grammar, Errata was changed by jcowan at 18:04 UTC Comment: Approved erratum for Example 10.10.3 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: [Wikineurotic] Wiki page CLL, aka Reference Grammar, Errata changed by jcowan X-BeenThere: wikineurotic@lojban.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: webmaster@lojban.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: wikineurotic-bounces@lojban.org VGhlIHBhZ2UgQ0xMLCBha2EgUmVmZXJlbmNlIEdyYW1tYXIsIEVycmF0YSB3YXMgY2hhbmdlZCBi eSBqY293YW4gYXQgMTg6MDQgVVRDCkNvbW1lbnQ6IEFwcHJvdmVkIGVycmF0dW0gZm9yIEV4YW1w bGUgMTAuMTAuMwoKWW91IGNhbiB2aWV3IHRoZSBwYWdlIGJ5IGZvbGxvd2luZyB0aGlzIGxpbms6 CiAKaHR0cDovL3d3dy5sb2piYW4ub3JnL3Rpa2kvQ0xMJTJDJTIwYWthJTIwUmVmZXJlbmNlJTIw R3JhbW1hciUyQyUyMEVycmF0YQoKWW91IGNhbiB2aWV3IGEgZGlmZiBiYWNrIHRvIHRoZSBwcmV2 aW91cyB2ZXJzaW9uIGJ5IGZvbGxvd2luZyB0aGlzIGxpbms6IApodHRwOi8vd3d3LmxvamJhbi5v cmcvdGlraS90aWtpLXBhZ2VoaXN0b3J5LnBocD9wYWdlPUNMTCUyQyUyMGFrYSUyMFJlZmVyZW5j ZSUyMEdyYW1tYXIlMkMlMjBFcnJhdGEmY29tcGFyZT0xJm9sZHZlcj0yMTcmbmV3dmVyPTIxOAoK CioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqClRoZSBjaGFuZ2VzIGluIHRoaXMgdmVyc2lvbiBmb2xsb3cgYmVsb3csIGZvbGxvd2VkIGFm dGVyIGJ5IHRoZSBjdXJyZW50IGZ1bGwgcGFnZSB0ZXh0LgoqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgoKCistKy0rLSstKy0rLSstKy0r LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCkBAIC1MaW5lczogMjYy LTI2NiBjaGFuZ2VkIHRvICtMaW5lczogMjYyLTI2NiBAQAorLSstKy0rLSstKy0rLSstKy0rLSst Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKwoqIFNlY3Rpb24gOSBzYXlzICcn SW4gdm9jYXRpdmUgcGhyYXNlcyB3aGljaCBhcmUgc2ltcGxlIG5hbWVzIChhZnRlciB0aGUgdm9j YXRpdmUgd29yZHMpLCBhbnkgcmVsYXRpdmUgY2xhdXNlcyBtdXN0IGNvbWUganVzdCBhZnRlciB0 aGUgbmFtZXMnJy4gVGhpcyBpc24ndCB0cnVlLiBSZWxhdGl2ZSBjbGF1c2VzIGNhbiBnbyBiZXR3 ZWVuIHRoZSB2b2NhdGl2ZSBhbmQgdGhlIGNtZXZsYS4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293 YW4gQXBwcm92ZWQpKSAgRHJvcCBpdDsgaXQgcmVmbGVjdHMgYW4gZWFybGllciBzdGF0ZSBvZiB0 aGUgbGFuZ3VhZ2UuCgotICogU2VjdGlvbiAxMCwgZXhhbXBsZSAxMC4zIHVzZXMgJnF1b3Q7a2Un YSBnb2kga28nZSB6byd1IGtvJ2EgemJhc3Uga2UnYSZxdW90OyBidXQgZ2xvc3NlcyBpdCBhcyAm cXVvdDsoSVQgPSBpdDIgOiBpdDEgYnVpbHQgaXQyKSZxdW90Oy4gVGhlIGFzc2lnbmVkICZxdW90 O2tvJ2UmcXVvdDsgaXMgbm90IHVzZWQgYXMgZXhwZWN0ZWQgb3IgZGVzY3JpYmVkLCBhbmQgc2hv dWxkIHByb2JhYmx5IGJlICZxdW90O2tvJ2EgemJhc3Uga28nZSZxdW90Oy4KKyAqIFNlY3Rpb24g MTAsIGV4YW1wbGUgMTAuMyB1c2VzICZxdW90O2tlJ2EgZ29pIGtvJ2Ugem8ndSBrbydhIHpiYXN1 IGtlJ2EmcXVvdDsgYnV0IGdsb3NzZXMgaXQgYXMgJnF1b3Q7KElUID0gaXQyIDogaXQxIGJ1aWx0 IGl0MikmcXVvdDsuIFRoZSBhc3NpZ25lZCAmcXVvdDtrbydlJnF1b3Q7IGlzIG5vdCB1c2VkIGFz IGV4cGVjdGVkIG9yIGRlc2NyaWJlZCwgYW5kIHNob3VsZCBwcm9iYWJseSBiZSAmcXVvdDtrbydh IHpiYXN1IGtvJ2UmcXVvdDsuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkg IFllcywgJnF1b3Q7a28nYSB6YmFzdSBrbydlJnF1b3Q7IGlzIGNsZWFybHkgd2hhdCdzIG1lYW50 LgoKLS0tCgoKCgoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKgpUaGUgbmV3IHBhZ2UgY29udGVudCBmb2xsb3dzIGJlbG93LgoqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgoKVGhp cyBwYWdlIGlzIGZvciBlcnJhdGEgaW4gKChUaGUgQ29tcGxldGUgTG9qYmFuIExhbmd1YWdlKSks IHRoYXQgaXMgZm9yIG1pc3Rha2VzIHN1Y2ggYXMgdHlwb3MsIG9yIHNlbGYtY29udHJhZGljdGlv bnMsIG9yIGNvbnRyYWRpY3Rpb25zIHdpdGggb3RoZXIgYmFzZWxpbmVkIGxhbmd1YWdlIGRlZmlu aXRpb24gbWF0ZXJpYWwuIFRoaXMgaXMgX19ub3RfXyBhIHBhZ2UgdG8gcHV0IGRlc2lkZXJhdGEg KHN1Z2dlc3Rpb25zIGZvciBpbXByb3ZlbWVudCk7IHN1Y2ggc3VnZ2VzdGlvbnMgc2hvdWxkIGdv IHRvICgoU3VnZ2VzdGlvbnMgZm9yIENMTCwgc2Vjb25kIGVkaXRpb24pKS4gIFRoaXMgaXMgYWxz byBub3QgYSBwYWdlIHRvIHB1dCBlcnJhdGEgcmVzdWx0aW5nIGZyb20gdGhlIDR0aCBCYXNlbGlu ZSBHcmFtbWFyIHByb3Bvc2FsIChpLmUuLCB0aGUgKChQRUcpKSBncmFtbWFyKTsgUEVHIGdyYW1t YXIgZXJyYXRhIHNob3VsZCBnbyB0byAoKENMTCBQRUcgRXJyYXRhKSkuCgoKCkFuIG9ubGluZSB2 ZXJzaW9uIG9mIHRoZSBDTEwgaW5jb3Jwb3JhdGluZyB0aGUgY2hhbmdlcyBvbiB0aGlzIHBhZ2Ug W2h0dHA6Ly9kYWcuZ2l0aHViLmNvbS9jbGwvfGlzIGF2YWlsYWJsZV0uCgoKClNlZSBhbHNvIFtX aGF0K2lzK0xvamJhbiUzRitlcnJhdGEmYmw9eXxXaGF0IGlzIExvamJhbj8gZXJyYXRhXSAoZm9y IHRoZSBwdWJsaXNoZWQgdmVyc2lvbiksIExldmVsIDAgQm9va2xldCBFcnJhdGEgW3Rpa2ktZWRp dHBhZ2UucGhwP3BhZ2U9TGV2ZWwrMCtCb29rbGV0K0VycmF0YSZsYW5nPXw/XSAoZm9yIHRoZSBw cmUtcHVibGljYXRpb24gcmV2aWV3czsgbm93IGZpbmlzaGVkKSwgYW5kIFtMZXNzb25zK0VycmF0 YSZibD15fExlc3NvbnMgRXJyYXRhXSAoZm9yIHRoZSBiZWdpbm5lcnMnIGNvdXJzZSkuCgoKClRo ZSAiJydJTkNMVURFRCBJTiBEQUctQ0xMJyciIHRhZyBtZWFucyB0aGF0IGh0dHA6Ly9kYWcuZ2l0 aHViLmNvbS9jbGwvIGluY2x1ZGVzIHRoaXMgZml4LCB3aGljaCBhbHNvIG1lYW5zIGl0J2xsIHBy b2JhYmx5IGJlIGluIHRoZSBuZXh0IENMTCB2ZXJzaW9uLgoKCgotLS0KCgoKIUNoYXB0ZXIgMQoK CgoqIFRoZXJlIGlzIGEgcGFyYWdyYXBoIGF0IHRoZSB2ZXJ5IGJlZ2lubmluZyBvZiBDTEwsIG9u IHBhZ2UgNCwgd2l0aCB0aGUgc2VudGVuY2UgJyciSW4gZXNzZW5jZSwgQ2hhcHRlciAyIGdpdmVz IGEgYnJpZWYgb3ZlcnZpZXcgb2YgdGhlIGxhbmd1YWdlLCBDaGFwdGVyIDIxIGdpdmVzIHRoZSBm b3JtYWwgc3RydWN0dXJlIG9mIHRoZSBsYW5ndWFnZSwgYW5kIHRoZSBjaGFwdGVycyBpbiBiZXR3 ZWVuIHB1dCBzZW1hbnRpYyBib25lcyBvbiB0aGF0IGZvcm1hbCBmbGVzaC4iJycKCioqIFdvdWxk bid0IGl0IG1ha2UgbW9yZSBzZW5zZSB0byBzYXkgInB1dCBzZW1hbnRpYyBmbGVzaCBvbiB0aG9z ZSBmb3JtYWwgYm9uZXMiPyAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkgJydJ TkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBTZWN0aW9uIDYsIGl0IHNheXMgIkxhcnJ5IEhvcm4n cyB3b3JrICcnVGhlIE5hdHVyYWwgSGlzdG9yeSBvZiBOZWdhdGlvbicnIi4gSXQgd291bGQgYXBw ZWFyIHRoYXQgZXZlcnlvbmUgZWxzZSBjYWxscyBpdCAnJ19fQV9fIE5hdHVyYWwgSGlzdG9yeSBv ZiBOZWdhdGlvbicnLCBieSBfX0xhdXJlbmNlX18gKFIuKSBIb3JuLgoKKiogJydJTkNMVURFRCBJ TiBEQUctQ0xMJycgKHpvcnQncyBmb3JrIGF0IGxlYXN0KSBidXQgbmVlZHMgYXBwcm92YWwKCgoK LS0tCgohQ2hhcHRlciAyCgoKCiogU2VjdGlvbiA1IGV4YW1wbGUgNS43IHVzZXMgInRpIiB0byBw b2ludCBhdCBhIGxhbmd1YWdlLCBhbmQgc2hvdWxkIGhhdmUgaXRzIGFjY29tcGFueWluZyBub3Rl IGNoYW5nZWQgdG8gbW9yZSBhY2N1cmF0ZWx5IHJlZmxlY3QgdGhhdCB0aGlzIGlzIG5vdCBob3cg InRpIiB3b3Jrcy4KCgoKKiBTZWN0aW9uIDYgRXhhbXBsZSA2LjUgaGFzICJjdSIgYXMgZWxpZGFi bGUsIHdoZW4gaW4gZmFjdCBpdCBpcyBzaW1wbHkgaWxsZWdhbCB0aGVyZS4gIFJlbW92ZWQuICAn J0lOQ0xVREVEIElOIERBRy1DTEwnJwoKKiogdWFuYWksIEkgc3RpbGwgc2VlICJjdSIgaW4gREFH LUNMTC4KCgoKKiBTZWN0aW9uIDggcGFnZSAxNyBjbGFpbXMgdGhhdCAieHUiIGlzIGRpc2N1c3Nl ZCBpbiBzZWN0aW9uIDEuNywgd2hpY2ggaGFwcGVucyB0byBsaXN0IHRoZSBjYXB0aW9ucyBmb3Ig YWxsIHRoZSBjaGFwdGVyIHBpY3R1cmVzLgoKKiogSXQgc2hvdWxkIHJlZmVyIHRvIFNlY3Rpb24g MTUuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBE QUctQ0xMJycKCioqKiBUaGUgbGluayBpbiB0aGUgY3VycmVudCBEQUctQ0xMIGlzIHBvaW50aW5n IHRvICIyLzIvMTUiIGluc3RlYWQgb2YgdG8gIjIvMTUiLgoKCgoqIFNlY3Rpb24gMTAgc2F5cyB0 aGF0IGV4YW1wbGUgMTAuMyAobWkgdGF2bGEgZG8gbGUgdGF2bGEga3UpIG1lYW5zIHRoZSBzYW1l IGFzIChtaSB0YXZsYSBkbyBsZSB0YXZsYSBrdSkuIEV4YW1wbGUgMTAuMyBzaG91bGQgYmUgIm1p IHRhdmxhIGRvIGxlIHRhdmxhIiwgYXMgaXQgZGVzY3JpYmVzIGhvdyAia3UiIG1heSBiZSBvbWl0 dGVkLgoKKiogSXQgYXBwZWFycyB0aGF0IGV4YW1wbGUgMTAuMyBpcyBpbmNvcnJlY3Qgb25seSBp biB0aGUgb25saW5lIHZlcnNpb24sIG5vdCB0aGUgcHVibGlzaGVkIGJvb2suCgoKCiogU2VjdGlv biAxNyBzYXlzICJOb3RlIHRoYXQgRXhhbXBsZSAxNy4zICBoYXMgYW5kIHJlcXVpcmVzIGEg4oCc Y3XigJ0gdG8gcHJldmVudCDigJxiYWpyYeKAnSBhbmQg4oCca2xhbWHigJ0gZnJvbSBmb3JtaW5n IGEgdGFucnUsIGJ1dCBFeGFtcGxlIDE3LjQgIGFuZCBFeGFtcGxlIDE3LjUgIGxhY2sgdGhlIHVu bmVjZXNzYXJ5IOKAnGN14oCdLiIsIGJ1dCBleGFtcGxlIDE3LjMgaXMgImxhIGRqYW4uIH5ucH5b Y3Vdfi9ucH4ga2xhbWEgbGUgemFyY2kiLgoKKiogSXQgYXBwZWFycyB0aGF0IHRoZSBvZmZlbmRp bmcgc2VudGVuY2UgaXMgcHJlc2VudCBvbmx5IGluIHRoZSBvbmxpbmUgdmVyc2lvbiwgbm90IHRo ZSBwdWJsaXNoZWQgYm9vay4KCgoKKiBFeGFtcGxlIDE3LjkgaXMgImxlIHZpIHRhdmxhIGt1IGN1 IGJhIGtsYW1hIiBpbiB0aGUgb25saW5lIHZlcnNpb24sIGFuZCB0b3RhbGx5IGJyb2tlbiBpbiB0 aGUgcHVibGlzaGVkIGJvb2suCgoqKiBHbyB3aXRoIHRoZSBvbmxpbmUgdmVyc2lvbi4gICgoQXBw cm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwn JwoKCgoqIEV4YW1wbGUgMTcuOSBpbiBkYWctY2xsIGFzIG9mIDIwMTItMDUtMDUgaXMgImxlIHZp IHRhdmxhIH5ucH5ba3Vdfi9ucH4gY3UgYmEga2xhbWEiLiBTaW5jZSB0aGUgc2FtZSBzZWN0aW9u IGhhcyBleHBsYWluZWQgdGhhdCB0ZW5zZSB0YWdzIG1ha2UgImN1IiB1bm5lY2Vzc2FyeSwgSSB0 aGluayB0aGUgZXhhbXBsZSBzaG91bGQgYmUgImxlIHZpIHRhdmxhIH5ucH5ba3VdIFtjdV1+L25w fiBiYSBrbGFtYSIuCgoKCi0tLQoKCgohIENoYXB0ZXIgMwoKCgpBIGxvdCBvZiB0aGUgSVBBIGV4 YW1wbGVzIHVzZSBhIHNwYWNlIHRvIGluZGljYXRlIGEgc3lsbGFibGUgYnJlYWsuIFRoaXMgaXMg bm90IHN0YW5kYXJkIElQQSB1c2FnZTsgYWNjb3JkaW5nIHRvIElQQSwgdGhlIHBlcmlvZCDigJwu 4oCdIHNob3VsZCBiZSB1c2VkIHRvIGluZGljYXRlIGEgc3lsbGFibGUgZGl2aXNpb24uCgoKCiog U2VjdGlvbiAyLCBwYWdlIDMwOiBpbiB0aGUgdGFibGUgdGhlIGRlc2NyaXB0aW9uIG9mICJhcG9z dHJvcGhlIiBzaG91bGQgcmVhZCAiYW4gdW52b2ljZWQgZ2xvdHRhbCBzcGlyYW50Iiwgbm90ICJh IHVudm9pY2VkIi4KCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAn J0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gMiwgZGlnaXRhbCB2ZXJzaW9uLiAg VGhlIElQQSB0YWJsZSBnb3QgaG9ycmlibHkgbWFuZ2xlZCBzb21ld2hlcmUgYWxvbmcgdGhlIHdh eS4gIEl0IHNob3VsZCBsb29rIGxpa2UgKFNBTVBBIGNvbHVtbiBhZGRlZCk6CgoKCnx8IExldHRl ciB8IElQQSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgU0FNUEEgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IERlc2NyaXB0aW9uICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCiAnICAgICAgfCBbaF0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB8IFtoXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgfCBhbiB1bnZvaWNlZCBnbG90dGFsIHNwaXJhbnQgICAgICAgICAgICAg ICAgICAgICAgCgogLCAgICAgIHwgLS0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgfCAtLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgdGhl IHN5bGxhYmxlIHNlcGFyYXRvciAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKIC4gICAgICB8 IFvKlF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFs/XSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBhIGdsb3R0YWwgc3RvcCBvciBhIHBh dXNlICAgICAgICAgICAgICAgICAgICAgICAgCgogYSAgICAgIHwgW2FdLCBbyZFdICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHwgW2FdLCBbQV0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB8IGFuIG9wZW4gdm93ZWwgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAKCiBiICAgICAgfCBbYl0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB8IFtiXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBhIHZv aWNlZCBiaWxhYmlhbCBzdG9wICAgICAgICAgICAgICAgICAgICAgICAgICAgCgogYyAgICAgIHwg W8qDXSwgW8qCXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFtTXSwgW3NgXSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBhbiB1bnZvaWNlZCBwb3N0YWx2ZW9s YXIgZnJpY2F0aXZlICAgICAgICAgICAgICAgICAgICAgCgogZCAgICAgIHwgW2RdICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBbZF0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHwgYSB2b2ljZWQgZGVudGFsL2FsdmVvbGFyIHN0b3AgICAgICAg ICAgICAgICAgICAgIAoKIGUgICAgICB8IFvJm10sIFtlXSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB8IFtFXSwgW2VdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg fCBhIGZyb250IG1pZCB2b3dlbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgogZiAg ICAgIHwgW2ZdLCBbybhdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW2ZdLCBbcFxd ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGFuIHVudm9pY2VkIGxhYmlh bCBmcmljYXRpdmUgICAgICAgICAgICAgICAgICAgICAKCiBnICAgICAgfCBbyaFdICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBbZ10gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHwgYSB2b2ljZWQgdmVsYXIgc3RvcCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIAoKIGkgICAgICB8IFtpXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHwgW2ldICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8 IGEgZnJvbnQgY2xvc2Ugdm93ZWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCiBqICAg ICAgfCBbypJdLCBbypBdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW1pdLCBbemBd ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGEgdm9pY2VkIHBvc3RhbHZl b2xhciBmcmljYXRpdmUgICAgICAgICAgICAgICAgICAgICAgICAKCiBrICAgICAgfCBba10gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFtrXSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgfCBhbiB1bnZvaWNlZCB2ZWxhciBzdG9wICAgICAgICAg ICAgICAgICAgICAgICAgICAgCgogbCAgICAgIHwgW2xdLCBbbMypXSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB8IFtsXSwgW2w9XSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgfCBhIHZvaWNlZCBsYXRlcmFsIGFwcHJveGltYW50IChtYXkgYmUgc3lsbGFiaWMpICAg CgogbSAgICAgIHwgW21dLCBbbcypXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFtt XSwgW209XSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBhIHZvaWNlZCBi aWxhYmlhbCBuYXNhbCAobWF5IGJlIHN5bGxhYmljKSAgICAgICAgCgogbiAgICAgIHwgW25dLCBb bsypXSwgW8WLXSwgW8WLzKldICAgICAgICAgICAgICAgICAgICAgfCBbbl0sIFtuPV0sIFtOXSwg W049XSAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgYSB2b2ljZWQgZGVudGFsIG9yIHZlbGFy IG5hc2FsIChtYXkgYmUgc3lsbGFiaWMpIAoKIG8gICAgICB8IFtvXSwgW8mUXSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB8IFtvXSwgW09dICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgfCBhIGJhY2sgbWlkIHZvd2VsICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgCgogcCAgICAgIHwgW3BdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg fCBbcF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgYW4gdW52 b2ljZWQgYmlsYWJpYWwgc3RvcCAgICAgICAgICAgICAgICAgICAgICAgIAoKIHIgICAgICB8IFty XSwgW8m5XSwgW8m+XSwgW8qAXSwgW3LMqV0sIFvJucypXSwgW8m+zKldLCBbyoDMqV0gfCBbcl0s IFtyXF0sIFs0XSwgW1JcXSwgW3I9XSwgW3JcPV0sIFs0PV0sIFtSXD1dIHwgYSByaG90aWMgc291 bmQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKIHMgICAgICB8IFtzXSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3NdICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB8IGFuIHVudm9pY2VkIGFsdmVvbGFyIHNpYmlsYW50ICAg ICAgICAgICAgICAgICAgICAKCiB0ICAgICAgfCBbdF0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICB8IFt0XSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgfCBhbiB1bnZvaWNlZCBkZW50YWwvYWx2ZW9sYXIgc3RvcCAgICAgICAgICAgICAgICAgCgog dSAgICAgIHwgW3VdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBbdV0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgYSBiYWNrIGNsb3NlIHZv d2VsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKIHYgICAgICB8IFt2XSwgW86yXSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFt2XSwgW0JdICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgfCBhIHZvaWNlZCBsYWJpYWwgZnJpY2F0aXZlICAgICAgICAg ICAgICAgICAgICAgIAoKIHggICAgICB8IFt4XSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHwgW3hdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8 IGFuIHVudm9pY2VkIHZlbGFyIGZyaWNhdGl2ZSAgICAgICAgICAgICAgICAgICAgICAKCiB5ICAg ICAgfCBbyZldICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBbQF0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgYSBjZW50cmFsIG1pZCB2b3dl bCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKIHogICAgICB8IFt6XSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3pdICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB8IGEgdm9pY2VkIGFsdmVvbGFyIHNpYmlsYW50ICAgICAgICAgICAg ICAgICAgICAgICB8fAoKCgoqKiBTb3J0LW9mICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMg QXBwcm92ZWQpKTsgd2hhdCBJIGFjdHVhbGx5IGRpZCBpcyBoYWQgQXJudCByZXZpZXcgd2hhdCBz b21lb25lIGVudGVyZWQgaW4gREFHLUNMTCwgd2hpY2ggcHJlc3VtYWJseSB3YXMgYmFzZWQgb24g dGhlIGFib3ZlLiAgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBTZWN0aW9uIDIsIHBhZ2Ug MzAuIGZvciB0aGUgc2Vjb25kIGVuZyAoaW1tZWRpYXRlbHkgdG8gdGhlIGxlZnQgb2YgIihtYXkg YmUgc3lsbGFiaWMpIikgdGhlIHN5bGxhYmljaXR5IG1hcmtlciBpcyBjb25jZWFsZWQgYnkgdGhl IHJpZ2h0IHRhaWwuCgoqKiBJIGNhbiBqdXN0IGJhcmVseSBzZWUgdGhlIG1hcmtlciB1bmRlciBh IGdvb2QgbGlnaHQuICAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoqKiog Rm9yIGZ1dHVyZSBlZGl0aW9ucyA6LSkgLCBub3RlIHRoYXQgdGhlIElQQSBhcHByb3ZlcyBwdXR0 aW5nIGRpYWNyaXRpY3MgYWJvdmUgcmF0aGVyIHRoYW4gYmVsb3cgdGhlIGxldHRlciBpbiBjYXNl cyBsaWtlIHRoZXNlLiBVbmZvcnR1bmF0ZWx5LCB0aGUgZm9udHMgaGl0aGVydG8gYXZhaWxhYmxl IGhhdmUgbm90IG1hZGUgdGhpcyBmYWNpbGl0eSBhdmFpbGFibGUsIHNvIG91dHNpZGUgdGhlIGpv dXJuYWwgb2YgdGhlIElQQSBpdHNlbGYsIHN1Y2ggb3Zlci1kaWFjcml0aWNzIGFyZSBzZWxkb20g c2Vlbi4g4oCUIG5pdGNpb24KCgoKKiBJbiBzZWN0aW9uIDMuMiwgdGhlIGNvbW1hIHNob3VsZCAo cHJvYmFibHkpIGJlIHJlcHJlc2VudGVkIGJ5IHRoZSBJUEEgbm90YXRpb24gWy58Ll0sIGFzIHRo ZSBwZXJpb2QgaXMgdXNlZCBpbiBJUEEgdG8gZGVub3RlIHN5bGxhYmxlIGJyZWFrcy4gICgoQXBw cm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoKCgoqIFNlY3Rpb24gMiwgcGFnZSAzMC4g Rm9yIHRoZSBMb2piYW4gcGhvbmVtZSAvci8sIHRoZSBJUEEgc3ltYm9sIGZvciBhIGRlbnRhbC9h bHZlb2xhciB2b2ljZWQgYXBpY2FsIHRhcCBpcyBnaXZlbiB3aXRoIGEgc3lsbGFiaWNpdHkgbWFy a2VyIGJlbG93LiBBIHRhcCBjYW4ndCBiZSBzeWxsYWJpYywgYmVjYXVzZSBpdCBpcyBieSBkZWZp bml0aW9uIGluc3RhbnRhbmVvdXMuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVk KSkgSnVzdCByZW1vdmUgdGhhdCBjYXNlIGFsdG9nZXRoZXIuCgoKCiogU2VjdGlvbiAyLiAgVGhl IGRlc2NyaXB0aW9ucyBvZiAnJ2MnJyBhbmQgJydqJycgYXJlIGxpc3RlZCBhcyAiY29yb25hbCBz aWJpbGFudCJzLiAgVGhlIGRlc2NyaXB0aW9ucyBzaG91bGQgcmVhZCAidm9pY2VsZXNzIHBvc3Rh bHZlb2xhciBmcmljYXRpdmUiIGFuZCAidm9pY2VkIHBvc3RhbHZlb2xhciBmcmljYXRpdmUiLCBy ZXNwZWN0aXZlbHkuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBT ZWN0aW9uIDMsIHRoaXJkIHBhcmFncmFwaCAocGFnZSAzMSk6ICJhIHVudm9pY2VkIHZvd2VsIGds aWRlIiBzaG91bGQgYmUgImFuIHVudm9pY2VkIHZvd2VsIGdsaWRlIi4KCioqICgoQXBwcm92ZWQg RXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoq IFNlY3Rpb24gNiwgcGFnZSAzNi4gSVBBIGZvciB0aGUgdW5hY2NlcHRhYmxlIEFtZXJpY2FuIGZs YXAgdmFyaWFudCBvZiBpbnRlcnZvY2FsaWMgJyd0Jycgc2hvd3MgdGhlIEdBICcncicnIHNvdW5k ICh1cHNpZGUtZG93biByKSBpbnN0ZWFkIG9mIHRoZSBmbGFwIChsaWtlIGFuIHIgd2l0aCBubyB2 ZXJ0aWNhbCBiaXQgYXQgdGhlIHRvcCDigJQgc2VlIHRoZSBsaXN0IG9mIGFjY2VwdGlibGUgJydy JycgdmFyaWFudHMgb24gb24gcGFnZSA0NCB3aGVyZSBpdCBhcHBlYXJzIGNvcnJlY3RseSkgICgo QXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoKKiogKChBcHByb3ZlZCBFcnJhdHVt fGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlv biA2LCBwYWdlIDM2LiAoU2FtZSBhcyBwcmV2aW91cyBlcnJhdHVtKSBUaGUgY29uc29uYW50IGlz IHJlZmVycmVkIHRvIGFzIGEgZmxhcCwgd2hpbGUgaXQgaXMgYWN0dWFsbHkgYSB0YXAuICAoKEFw cHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBTZWN0aW9uIDcuIEluIGJldHdl ZW4gdGhlIHNoYWRlZCBib3hlcywgImEgcGFpcmluZyBvZiB2b2ljZWQgYW5kIHVudm9pY2VkIGVx dWl2YWxlbnQgdm93ZWxzIiBzaG91bGQgcmVhZCAiYSBwYWlyaW5nIG9mIHZvaWNlZCBhbmQgdW52 b2ljZWQgZXF1aXZhbGVudCBjb25zb25hbnRzIi4KCgoKKiBTZWN0aW9uIDgsIHBhZ2UgMzguIElQ QSBmb3IgcHJvbnVuY2lhdGlvbiBvZiAieGFwY2tlIiBoYXMgYyB3aGVyZSBpdCBzaG91bGQgaGF2 ZSBTIChsb25nIHMpLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoKCiog U2VjdGlvbiA5LCBwYWdlIDQwLiBJUEEgZm9yIHByb251bmNpYXRpb24gb2YgImRpa3lqdm8iIGhh cyBqIHdoZXJlIGl0IHNob3VsZCBoYXZlIFogKHRoYXQgbGl0dGxlIHNjcmlwdCB6IHRoaW5nKSAg KChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoqKiAoKEFwcHJvdmVkIEVycmF0 dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBTZWN0 aW9uIDEyLCBwYWdlIDQ2LiBXaGF0IHNob3VsZCBiZSB0aGUgQ3lyaWxsaWMgbGV0dGVyIDsgaXMg cHJpbnRlZCBhcyBzb21ldGhpbmcgdGhhdCBsb29rcyBsaWtlIHRoZSBHcmVlayBsZXR0ZXIgLiBJ cyB0aGlzIG9ubHkgYSB0eXBvZ3JhcGhpY2FsIHZhcmlhbnQgb2YgdGhlIDssIG9yIGlzIGl0IGEg dmFyaWFudD8KCgoKKiogVGhpcyBlcnJhdHVtIGlzIGluZGVjaXBoZXJhYmxlIGFuZCBzaG91bGQg YmUgZHJvcHBlZCwgdW5sZXNzIHNvbWVvbmUgY2FuIHJlY29uc3RydWN0IGl0LiAgVGhlIEN5cmls bGljIGxldHRlcnMgbG9vayBmaW5lLiAgLS1qY293YW4KCgoKKiBTZWN0aW9uIDEyLCBwYWdlIDQ2 LiBSZXBsYWNlIHRoZSB3b3JkcyAidGhlIGhhcmQgc2lnbiIgd2l0aCBhbiBhY3R1YWwgaGFyZCBz aWduLCBVKzA0NEEgQ1lSSUxMSUMgU01BTEwgTEVUVEVSIEhBUkQgU0lHTi4KCgoKKiBTZWN0aW9u IDEyLCBwYWdlIDQ3LiAiYXJlLyJlc3NlIiBzaG91bGQgcHJvYmFibHkgYmUgImFyZSIvImVzc2Ui ICh0aGUgYWN1dGUgb24gdGhlIGEgbWF5IG9yIG1heSBub3QgaGF2ZSBiZWVuIGxlZnQgb2ZmLCBi dXQgdGhlIGNsb3NpbmcgcXVvdGUgYWZ0ZXIgYXJlIGlzIGRlZmluYXRlbHkgbWlzc2luZy4pCgoq KiBNeSBjb3B5IHNob3dzIHRoZSBhY3V0ZS4KCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNt aXMgQXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgotLS0KCgoKIUNoYXB0ZXIg NAoKCgoqIFNlY3Rpb24gNCwgcGFnZSA1NC4gVGhlIGJvb2sgc3RhdGVzIHRoYXQgZnUnaXZsYSB3 aXRoIGEgZm9ybSBsaWtlICcnc3BhJ2knJyBhcmUgdmFsaWQuIFRoZXkgYXJlIG5vdCwgdGhleSBm YWlsIHRoZSBzbGlua3UnaSB0ZXN0LiAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVk KSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBTZWN0aW9uIDYsIHAgNTgsICItbGFjIiBp biB0aGUgdGhpcmQgdGFibGUgaW4gdGhhdCBzZWN0aW9uIHNob3VsZCBiZSAiLWxhYy0iCgoKCiog U2VjdGlvbiA2LCBpdCBzYXlzICJNb3N0IGNtYXZvIHRoYXQgaGF2ZSByYWZzaSBhcmUgb25lcyB1 c2VkIGluIGNvbXBvc2luZyB0YW5ydSAoZm9yIGEgY29tcGxldGUgbGlzdCwgc2VlIENoYXB0ZXIg MTIpIiwgYnV0IHRoZXJlIGlzIG5vIHN1Y2ggbGlzdCBpbiBDaGFwdGVyIDEyLCBvciBhbnl3aGVy ZSBpbiB0aGUgYm9vayAoanUnb3NhaSkuIFBlcmhhcHMgaXQgd2FudHMgdG8gcG9pbnQgdG8gdGhl IGxpc3Qgb2YgUEEgcmFmc2kgaW4gQ2hhcHRlciAxOCBzZWN0aW9uIDI1PyBPciB0byB0aGUgbGlz dHMgb2YgdGFucnUgaW4gQ2hhcHRlciA1IHNlY3Rpb25zIDE0IGFuZCAxNT8KCioqIFdoYXQgSSBw cm9iYWJseSBtZWFudCB3YXMgdGhhdCBDaGFwdGVyIDEyLCB0YWtlbiBhcyBhIHdob2xlLCBkaXNj dXNzZXMgdGhlIGNtYXZvIHVzZWQgaW4gY29uc3RydWN0aW5nIHRhbnJ1LiAgSSBkb24ndCB0aGlu ayBhbnkgc3BlY2lmaWMgbGlzdCBldmVyIGV4aXN0ZWQuICBJJ2QganVzdCBkcm9wIHRoZSBwYXJl bnRoZXRpY2FsIHNlbnRlbmNlLgoKCgoqIFNlY3Rpb24gNiwganVzdCBhZnRlciBleGFtcGxlIDYu OS4gSXQgc2F5cyAic29tZSBvZiB0aGUgdW5yZWR1Y2VkIGZvcm1zIGluIHRoZSBwcmV2aW91cyBl eGFtcGxlIiwgYnV0IGl0IGlzIG5vdCByZWZlcnJpbmcgdG8gdGhlIHByZXZpb3VzIGV4YW1wbGU6 IGl0IGlzIHJlZmVycmluZyBhbGwgdGhlIHdheSBiYWNrIHRvIGV4YW1wbGVzIDYuMSBhbmQgNi4y LCBzbyBpdCBzaG91bGQgYmUgInNvbWUgb2YgdGhlIHVucmVkdWNlZCBmb3JtcyBpbiB0aGUgcHJl dmlvdXMgZXhhbXBsZV9fc19fIi4KCioqICcnSU5DTFVERUQgSU4gREFHLUNMTCcnICh6b3J0J3Mg Zm9yayBhdCBsZWFzdCkKCihBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpICBSZWZl ciBleHBsaWNpdGx5IHRvIDYuMSBhbmQgNi4yCgoKCiogU2VjdGlvbiA3LCBwYWdlIDYwLiBJbiBl eGFtcGxlIDYuMTYsIHRoZSB3b3JkICJ4YXJueWthcmNlIiBpcyBnbG9zc2VkIGFzICJ3YXItY2Fy Ii4gRWl0aGVyIHRoZSBnbG9zcyBzaG91bGQgYmUgdXBkYXRlZCB0byByZWZsZWN0IHRoZSB2ZWxq dm8gKCJzdHViYm9ybi1jYXIiKSwgb3IgdGhlIGx1anZvIHNob3VsZCBiZSB1cGRhdGVkIHRvIHJl ZmxlY3QgdGhlIGdsb3NzICJqYW1rYXJjZSIKCioqIFRoZSBsYXR0ZXIgKChBcHByb3ZlZCBFcnJh dHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2Vj dGlvbiA3LCBtYWtpbmcgYSB0eXBlIDMgZnUnaXZsYSwgc3RlcCA1IHNob3VsZCByZWFkICJzdGVw cyAxLTQiLCBub3QgInN0ZXBzIDEtNSIuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJv dmVkKSkKCgoKKiBTZWN0aW9uIDcsIHN0ZXAgNSBvZiB0aGUgU3RhZ2UgMyBmdSdpdmxhOiAiaWYg dGhlIHJhZnNpIGVuZHMgaW4gJydyJycgYW5kIHRoZSByZXN0IG9mIHRoZSBmdSdpdmxhIGJlZ2lu cyB3aXRoICcnbicnIChvciB2aWNlIHZlcnNhKSB1c2UgYW4gJydsJyctaHlwaGVuIiBzaG91bGQg cmVhZCAgImlmIHRoZSByYWZzaSBlbmRzIGluICcncicnIGFuZCB0aGUgcmVzdCBvZiB0aGUgZnUn aXZsYSBiZWdpbnMgd2l0aCAnJ24nJywgJyd0YycnLCAnJ3RzJycsICcnZHonJyBvciAnJ2RqJycs IG9yIHRoZSByYWZzaSBlbmRzIGluICcnbicnIGFuZCB0aGUgcmVzdCBvZiB0aGUgZnUnaXZsYSBi ZWdpbnMgd2l0aCAnJ3InJyB1c2UgYW4gJydsJyctaHlwaGVuIi4gICgoQXBwcm92ZWQgRXJyYXR1 bXxqY293YW4gQXBwcm92ZWQpKQoKCgoqIFRoZSBlbmQgb2Ygc2VjdGlvbiA3IHNlZW1zIHRvIGlt cGx5IHRoYXQgY21lbmUgYXJlIGV4ZW1wdCBmcm9tIHRoZSBub3JtYWwgcmVzdHJpY3Rpb25zIG9u IGNvbnNvbmFudCBjbHVzdGVycyBhcyBsb25nIGFzIGVhY2ggY29uc29uYW50IHBhaXIgaXMgdmFs aWQuCgoKCiogU2VjdGlvbiA4LiBFeGFtcGxlIDguMTAgJydkamFuZGpvbnonJyBpcyBub3QgdmFs aWQgbG9qYmFuIGFzIGl0IGNvbnRhaW5zIHRoZSBmb3JiaWRkZW4gY29uc29uYW50IHNlcXVlbmNl IGBuZGpgLiAgICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkgIFJlcGxhY2Ug d2l0aCBhIGRpZmZlcmVudCBuYW1lLgoKKiogUmVwbGFjaW5nIHdpdGggIkpvaG4gQnJvd24iIGFz ICJkamFuYnJhdW4iLiAtLXJscG93ZWxsICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2Vj dGlvbiA4LCBwYWdlIDY2LiBFeGFtcGxlIDguMTIuIFNheXMgdGhhdCB0aGUgZ2lzbXUgInNvbHJp IiBtZWFucyAiYWN0dWFsbHksICdwZXJ0YWluaW5nIHRvIHRoZSBzdW4nIi4gVGhpcyBpcyBmYWxz ZS4gQWNjb3JkaW5nIHRvIHRoZSBnaXNtdSBsaXN0LCBpdCBtZWFucyAnJ2lzJydhIHN1bi4KCioq IExlYXZlIHRoaXMgb25lIGFsb25lLiAgQXMgYSBzZWx0YXUsICJzb2xyaSIgZG9lcyBpbmRlZWQg bWVhbiAic29sYXIiLiAgLS1qY293YW4KCgoKKiBTZWN0aW9uIDExLCA1YSkgJydFeGFtaW5lIGFs bCB0aGUgQy9DIGNvbnNvbmFudCBwYWlycyB0aGF0IGpvaW4gdGhlIENWQyByYWZzaSwgYW5kIGFs c28gdGhlIHBhaXIgYmV0d2VlbiB0aGUgbGFzdCBDVkMgYW5kIHRoZSBYIHBvcnRpb24sIGlnbm9y aW5nIGFueSAieSItaHlwaGVuIGJlZm9yZSB0aGUgWC4nJyBzaG91bGQgcmVhZCBpbnN0ZWFkOiAn J0V4YW1pbmUgYWxsIHRoZSBDL0MgY29uc29uYW50IHBhaXJzIHVwIHRvIHRoZSBmaXJzdCAieSIt aHlwaGVuLCBvciB1cCB0byB0aGUgZW5kIG9mIHRoZSB3b3JkIGluIGNhc2UgdGhlcmUgYXJlIG5v ICJ5Ii1oeXBoZW5zLicnCgoqKiAoKEFwcHJvdmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJvdmVk KSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBTZWN0aW9uIDEyLiBJbiBFeGFtcGxlcyAx Mi4yLCAxMi4zIGFuZCAxMi40IHRoZSBjYWxjdWxhdGlvbnMgYXJlIGdpdmVuIGFzIDMyNTAwIG1p bnVzIHRoZSBzY29yZSwgaW5zdGVhZCBvZiBzaW1wbHkgdGhlIHNjb3JlLiAoUHJvYmFibHkgZnJv bSBwcmV2aW91cyB2ZXJzaW9ucyBvZiB0aGUgYWxnb3JpdGhtLikgICAgKChBcHByb3ZlZCBFcnJh dHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoKCiogU2VjdGlvbiAxMywgcGFnZSA3NCwgdGhpcmQgdGFi bGU6IHRoZXJlIGlzIG5vIHNwYWNlIGJldHdlZW4gImxvamJhdWdyaSIgYW5kICJsb2piYW5neWdy aSIsIHNvIHRoYXQgdGhleSBhcmUgcnVuIGludG8gb25lIHdvcmQgaW4gdGhlIHNlY29uZCBjb2x1 bW4gb2YgdGhlIHRhYmxlLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoK CiogU2VjdGlvbiAxNSBzdGF0ZXMgdGhhdCAiZHppcG8iIGNvbWVzIGZyb20gImNhZHp1IGNpcG5p IiAoIndhbGtpbmcgYmlyZCIpLiAgVGhpcyBmYWlscyB0byBtYWtlIHNlbnNlIGVpdGhlciBldHlt b2xvZ2ljYWxseSBvciBzZW1hbnRpY2FsbHkgKElmIHRoZSBuYW1lIHJlZmVycyB0byBwZW5ndWlu cywgdGhlcmUgYXJlIGEgbG90IG9mIG90aGVyIGZlYXR1cmVzIG9mIEFudGFyY3RpY2EgdGhhdCBh cmUgbW9yZSBwcm9taW5lbnQgYW5kIG5vdCBzaGFyZWQgYnkgb3RoZXIgcGxhY2VzKS4gIEkgc3Vz cGVjdCB0aGF0IHRoZSB3b3JkIG1heSBhY3R1YWxseSBjb21lIGZyb20gImRpemxvIGRhcGx1IiAo ImxvdyBpc2xhbmQiKSwgd2hpY2ggaXMgYSBzb21ld2hhdCBtb3JlIHJlYXNvbmFibGUgbmFtZS4K CioqIE5vdCBhbiBlcnJhdHVtLCB0aGUgd29yZCByZWFsbHkgZG9lcyBjb21lIGZyb20gImNhRFp1 IGNJUG5pIi4gVGhhdCBpdCBmYWlscyB0byBtYWtlIHNlbnNlIGRvZXNuJ3QgY2hhbmdlIHRoZSBm YWN0IHRoYXQgdGhhdCBpcyBob3cgdGhleSBjb25zdHJ1Y3RlZCBpdC4gVGhlIGV0eW1vbG9naWVz IG9mICJiZW1ybyIgYW5kICJrZXRjbyIgbWFrZSBldmVuIGxlc3Mgc2Vuc2UsIGJ5IHRoZSB3YXku CgoqKiogQ29ycmVjdCwgYnV0IHRoZSBldHltb2xvZ2llcyBhcmUgd2hhdCB0aGV5IGFyZS4gIC0t amNvd2FuCgoKCi0tLQoKCgohQ2hhcHRlciA1CgoKCiogU2VjdGlvbiA2LCBleGFtcGxlIDYuMTU6 IEl0IHNheXMge3hhbWd1IGpvIGNvcnR1IG51bnRhdmxhfSwgYW5kIHRoZSBnbG9zcyBzYXlzIHso Z29vZCBpZi1hbmQtb25seS1pZiBzaG9ydCkgc3BlZWNofSwgYnV0IHtjb3J0dX0gbWVhbnMgImh1 cnQiLCBub3QgInNob3J0Ii4KCioqICcnSU5DTFVERUQgSU4gREFHLUNMTCcnICAoY2hhbmdlZCB0 byB7dG9yZHV9KSAoaW4gem9ydCdzIGZvcmsgYXQgbGVhc3QpICgoQXBwcm92ZWQgRXJyYXR1bXxq Y293YW4gQXBwcm92ZWQpKQoKCgoqIEV4YW1wbGUgNi4xNjogdmFqbmkganUgc2VscGx1a2EgbnVu dGF2bGEgLCAgKGltcG9ydGFudCB3aGV0aGVyLW9yLW5vdCBwbGVhc2luZykgZXZlbnQtb2YtdGFs a2luZwoKKiogU2hvdWxkIGJlIHBsdWthLCBub3Qgc2VscGx1a2EuICAoKEFwcHJvdmVkIEVycmF0 dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBTZWN0 aW9uIDggc2F5cyAiaW52b2x2aW5nIHNlbG1hJ28gVk9oQSBhbmQgR09oSSwgZXhwbGFpbmVkIGlu IENoYXB0ZXIgNyIsIGJ1dCBWT2hBIGRvZXNuJ3QgYXBwZWFyIGluIENoYXB0ZXIgNy4gVk9oQSBk b2Vzbid0IGV2ZW4gc2VlbSB0byBiZSBhIHNlbG1hJ28sIGZvciB0aGF0IG1hdHRlci4gQWxzbywg cHJvYmFibHkgR09oSSBzaG91bGQgYmUgR09oQT8KCgoKKiBTZWN0aW9uIDgsIHBhZ2UgOTYvOTc6 IEV4YW1wbGUgOC4xMyBuZWVkcyBzb21lIGtpbmQgb2YgdGVybWluYXRvciAobGlrZSAiYmUnbyIp IGJlZm9yZSB0aGUgImNvIi4gICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkK CgoKKiBBbHNvLCB0aGUgcHJlY2VkaW5nIHBhcmFncmFwaCBzdWdnZXN0cyB0aGF0ICJiZSIgaXMg dGhlIG9ubHkgd2F5IHRvIGZpbGwgc2VsYnJpIHBsYWNlcyBvdGhlciB0aGFuIHgxLiBUaGlzIGlz IG5vdCB0aGUgY2FzZTogIm1pIGxlIHphcmNpIGN1IGtsYW1hIGNvIHN1dHJhIiB3b3VsZCBhbHMK Cm8gd29yay4KCioqIEkgZG9uJ3QgYWdyZWUgdGhhdCB0aGVyZSdzIGFueSBzdWNoIHN1Z2dlc3Rp b24sIGFsdGhvdWdoIGFkZGluZyBhIHNlY29uZCBwb3NzaWJpbGl0eSBpcyBmaW5lIHdpdGggbWUu ICAtLWpjb3dhbgoKCgoqIFNlY3Rpb24gOSBsaXN0cyAia2VpIiBhcyB0aGUgdGVybWluYXRvciBm b3IgbnUsIGJ1dCBpdCdzIG5vdCBvbmx5IGZvciBudSwgYnV0IGZvciBhbGwgb2YgTlUuICAoKEFw cHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBTZWN0aW9uIDE0LCBwYWdlIDEw NCBzYXlzICJkYWR5bHNpIiBmb3IgImRhZHlzbGkiLgoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNh bWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlvbiAx NCwgcGFnZSAxMDUgdXNlcyAiemRhbmkgbGlqZ3JpIiBpbiB0aGUgZXhhbXBsZSBsaXN0LCBidXQg dGhlIHBhcmFncmFwaCBhZnRlciwgYXMgd2VsbCBhcyB0aGUgbmV4dCBsaXN0LCByZWZlciB0byAi emRhbmkgbGluamkiIGFuZCAibGluamkgemRhbmkiLgoKCgoqIFNlY3Rpb24gMTQsIHBhZ2UgMTA1 IGhhcyB0aGUgbHVqdm8gImNwdW1pJ2kiIGJ1dCBkZWZpbmVzIGl0IGF0IHRoZSBib3R0b20gb2Yg dGhlIHNldCBhcyAiY3BhbWknaSIuCgoqKiBjdWFtaSdpIHMgcHVsbC1tYWNoaW5lLCBzbyB1c2lu ZyB0aGF0ICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAnJ0lOQ0xVREVE IElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gMTQsIHBhZ2UgMTA2IHNheXMgInBsaXNlIHRhcGxh IiBmb3IgImFwcGxlIGNha2UiLiBEb2VzIFR1cmtpc2ggcmVhbGx5IHJlZmVyIHRvIGEgY2FrZSBh cyBhIHRpbGUsIG9yIGlzIHRoaXMgYSBtaXN1bmRlcnN0YW5kaW5nIG9mIHRoZSBkZWZpbml0aW9u IG9mICJ0YXBsYSI/CgoqKiBObywgaXQncyB0aGF0IHt0YXBsYX0gY2FuIG1lYW4gYm90aCBjYWtl IGFuZCB0aWxlLCBhcyB0aGUgZ2lzbXUgbGlzdCBzaG93czsgaXQncyBhIGdlbmVyaWMgd29yZCBm b3IgYSBmbGF0IDMtRCBzaGFwZSwgb3Igc2hvcnQgY3lsaW5kZXIuICBTdGV0LiAgLS1qY293YW4K CgoKKiBTZWN0aW9uIDE0LCBwYWdlIDEwOCBzYXlzICJ0dW1sYSBzcGlzYSIuIFRoaXMgc2hvdWxk IHByb2JhYmx5IGJlICJ0dW1sYSBwYWdidSIsIHNpbmNlIHBpZWNlcyBvZiBsYW5kIGFyZSBub3Qg YWN0dWFsbHkgZGV0YWNoZWQuCgoqKiBXaGF0IG1ha2VzIHlvdSB0aGluayB0aGF0IHNwaXNhIGhh dmUgdG8gYmUgZGV0YWNoZWQ/ICBTdGV0LiAgLS1qY293YW4KCgoKKiBTZWN0aW9uIDE0LCBwYWdl IDEwOSBzYXlzICJyb3N0dSBtb2p5c3UnYSIuICJyb3N0dSIgaXMgbm90IGEgTG9qYmFuIGdpc211 LCBub3IgYW4gT2xkIExvZ2xhbiBwcmltaXRpdmUuIEl0J3Mgc3VwcG9zZWQgdG8gYmUgIm1yb3N0 Cgp1Ii4KCioqICJNcm9zdHUiIGlzIGNvcnJlY3QsIGFuZCB0aGF0J3MgdGhlIHJlYWRpbmcgb2Yg dGhlIG9ubGluZSB2ZXJzaW9uLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkp CgoKCiogU2VjdGlvbiAxNCwgIm51bmtpbGJyYSIgaXMgY2xlYXJseSBub3QgInNoYXJwZW5lciIs IGFuZCBldmVuIGlmIGl0IHdhcyB1c2luZyB0aGUgcmlnaHQgcmFmc2kgZm9yIGNhYnJhLCB0aGF0 IHN0cmlrZXMgbWUgYXMgYSBwcmV0dHkgY3JhcHB5IGx1anZvOyBuZWVkcyB6ZW5iYSBvciB6bWFk dSBvciBiaW54byBvciBzb21ldGhpbmcuCgoKCiogU2VjdGlvbiAxNCwgcGFnZSAxMTIgbGlzdHMg bnVtZXJvdXMgdGFucnUgZXhhbXBsZXMgd2hvc2UgbWVhbmluZ3MgYXJlIGh5cGVybnltcyBvZiB0 aGUgdGVydGF1IGluc3RlYWQgb2YgaHlwb255bXMuIFRoaXMgY29udHJhZGljdHMgdGhlIHByaW1h cmluZXNzIG9mIHRoZSB0ZXJ0YXUgYXMgZGVmaW5lZCBvbiBwYWdlIDg0LiBUaGUgd29yZCAiamEi IHNob3VsZCBwcm9iYWJseSBiZSBpbnNlcnRlZCBiZXR3ZWVuIHRoZSBjb25zdGl0dWVudHMsIG9y IHRoZSBlbnRpcmUgc2VjdGlvbiBzaG91bGQgYmUgcmVtb3ZlZC4KCioqIFN0ZXQuICBMaW9ucyBj YW4ndCBiZSBtYWRlIG9mIHN0b25lLCBidXQge3Jva2NpIGNpbmZvfSBpcyBhIGxlZ2l0aW1hdGUg dGFucnUgbm9uZXRoZWxlc3MuICAtLWpjb3dhbgoKCgotLS0KCgoKIUNoYXB0ZXIgNgoKCgoqIEVu ZCBvZiBzZWN0aW9uIDIsIGl0IHNheXMgImNvbXBvdW5kIG5lZ2F0b3IgYGBuYWt1JycgKGRpc2N1 c3NlZCBpbiBDaGFwdGVyIDE1KSIsIGJ1dCAibmFrdSIgaXMgbmV2ZXIgbWVudGlvbmVkIGluIGNo YXB0ZXIgMTU7IGluZGVlZCwgdGhlIG9ubHkgdXNlcyBvZiB0aGUgd29yZCB7a3V9IGF0IGFsbCBh cmUgYWZ0ZXIgdGhlIHdvcmRzIHtqaSd1fSBvciB7bmEnaX0uIENoYXB0ZXIgMTYgdGFsa3MgYWJv dXQge25ha3V9LgoKKiogJydJTkNMVURFRCBJTiBEQUctQ0xMJycgKHpvcnQncyBmb3JrIGF0IGxl YXN0KSBidXQgbmVlZHMgYXBwcm92YWwKCgoKKiBTZWN0aW9uIDEyLCBwLiAxMzggY2xhaW1zIHRo YXQgdGhlIHN1bXRpIGluIGV4YW1wbGVzIDEyLjIgYW5kIDEyLjMgb3BlcmF0ZSBsaWtlIGV4YW1w bGVzIDIuNSBhbmQgMy42IHJlc3BlY3RpdmVseS4gIjIuNiBhbmQgMy42IiBpcyBhbG1vc3Qgc3Vy ZWx5IHdoYXQgd2FzIG1lYW50LiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkp ICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogSW4gc2VjdGlvbiAxMSBFeGFtcGxlIDExLjIg b2NjdXJzIHR3aWNlLgoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkp ICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlvbiAyIGhhcyBleGFtcGxlcyAyLjMg YW5kIDIuNSB0byBzaG93IHRoZSBkaWZmZXJlbmNlIGJldHdlZW4ge2xvfSBhbmQge2xlfS4gRXhh bXBsZSAyLjUgYW5kIHRoZSBzdWJzZXF1ZW50IHRleHQgc2F5IHRoYXQge2xvIG5hbm11IGN1IG5p bm11fSBpcyBuZWNlc3NhcmlseSBmYWxzZSBpbiBsb2piYW4gc2luY2Uge25vZGEgbmFubXUgZ2kn ZSBuaW5tdX0uIFRoaXMgY29udHJpYnV0ZXMgdG8gdHJhbnMtZXJhc3VyZSwgYW5kIHNob3VsZCBi ZSByZXZpc2VkLgoKCgoqIEluIHNlY3Rpb24gNSBiZXR3ZWVuIGV4YW1wbGVzIDUuMiBhbmQgNS4z LCBpdCBzYXlzIHRoYXQgdGhlIHR5cGljYWwgbGlvbiBiZXN0IGV4ZW1wbGlmaWVzIHRoZSBzZXQg b2YgbGlvbnMuIFRoaXMgaXMgZmFsc2UsIGl0IGV4ZW1wbGlmaWVzIG5vdCB0aGUgc2V0LCBidXQg dGhlIG1lbWJlcnMgb2YgdGhhdCBzZXQuCgoKCi0tLQoKCgohIENoYXB0ZXIgNwoKCgoqIFNlY3Rp b24gNiwgcGFnZSAxNTUgaGFzIGEgbm90ZSBiZWxvdyBleGFtcGxlIDYuMTMgdGhhdCBzYXlzLCBp biBwYXJ0OiAiVGhlIExvamJhbiBkb2VzIG5vdCBjb250YWluIGFuIGVxdWl2YWxlbnQgb2YgdGhl ICJteSIgaW4gY29sbG9xdWlhbCBFbmdsaXNoOyIgYW5kIHRoZW4gZ29lcyBvbiB0byBleHBsYWlu IGhvdyBleGFtcGxlIDYuMTMgY291bGQgYmUgbW9kaWZpZWQgdG8gaW5jbHVkZSAgdGhlIHJlbGF0 aW9uc2hpcCBiZXR3ZWVuIHRoZSBzcGVha2VyIGFuZCB0aGVpciBzb24gYW5kIGRhdWdodGVyLiAg SSBiZWxpZXZlIHlvdSBjb3VsZCBzYXkgImxlIG1pIGJlcnNhIiBvciAibGUgYmVyc2EgcGUgbWki IHRvIGV4cHJlc3MgdGhlIEVuZ2xpc2ggIm15LCIgdGhlcmVmb3IgcmVtb3ZpbmcgdGhlIChwcmVz dW1hYmx5IGluYWNjdXJhdGUpIG5vdGUgYW5kIG1ha2luZyB0aGUgTG9qYmFuIHRyYW5zbGF0aW9u IG1vcmUgYWNjdXJhdGUuCgoqKiBTdXJlIHlvdSBjb3VsZCwgYnV0IHRoZSBwb2ludCBvZiB0aGUg bm90ZSAod2hpY2ggaXMgJydub3QnJyBpbmFjY3VyYXRlKSBpcyBub3QgdGVhY2hpbmcgaG93IHRv IHVzZSByZWxhdGl2ZSBjbGF1c2VzLCBidXQgdG8gY2xhcmlmeSB0aGF0IHRoZSBpZGlvbWF0aWMg RW5nbGlzaCB2ZXJzaW9uIGNvbnRhaW5zIG1vcmUgaW5mb3JtYXRpb24gdGhhbiB0aGUgTG9qYmFu IHZlcnNpb24gZG9lcy4gIFN0ZXQuCgoKCiogU2VjdGlvbiA2LCBwYWdlIDE1NiBoYXMgJydrYXJj YScnIGZvciAnJ2thcmNlJycuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkK CgoKKiBBZnRlciBleGFtcGxlIDYuMTggaXMgYSBwYXJhZ3JhcGggdGhhdCBxdW90ZXMgbm9uLWV4 aXN0ZW50IHRleHQgZnJvbSBleGFtcGxlIDYuMTAuICAiZ28nZSByYSdvIiBzaG91bGQgcmVhZCAi Z28naSByYSdvIiBhbmQgImRvIGdvJ2UiIHNob3VsZCByZWFkICJtaSBnbydpIgoKKiogVGhlIGNv cnJlY3QgY29ycmVjdGlvbiBpcyB0byByZXBsYWNlICJCJ3Mgc3RhdGVtZW50IiB3aXRoICJBJ3Mg c2Vjb25kIHN0YXRlbWVudCIuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkK CioqKiBOb3QgcmVhbGx5LiAiZ28nZSByYSdvIiBpbiBBJ3Mgc2Vjb25kIHN0YXRlbWVudCB3b3Vs ZCBtZWFuIHRoZSBzYW1lIGFzICJnbydlIiwgd2hpY2ggaXMgd3JvbmcuIFRoZSBvcmlnaW5hbCBj b3JyZWN0aW9uIGlzIHZhbGlkIHRob3VnaC4KCgoKKlNlY3Rpb24gNiwgdGhlIGV4Y2VwdGlvbnMg dG8gdGhlIGFuYXBob3JhIHJ1bGVzIGFyZSBhbG1vc3QgY2VydGFpbmx5IGluY29tcGxldGUuIElu IHBhcnRpY3VsYXIgIm1hIiBhbmQgImNlJ3UiIGRlZmluaXRlbHkgd2FycmFudCBleGNlcHRpb25z LgoKCgoqIFNlY3Rpb24gNywgZXhhbXBsZSA3LjcgaGFzICJtaSB6YmFzdSBsb2kgbXVkcmkgemkn byIgZm9yICJtaSB6YmFzdSBsZSBkaW5qdSB6aSdvIgoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNh bWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlvbiA4 LCBwLiAxNTggaW1wbGllcyB0aGF0ICcndm8nYScnLXNlcmllcyBhbmFwaG9yYSByZWZlciB0byBz dW10aSBvZiB0aGUgYnJpZGkgdGhleSB0aGVtc2VsdmVzIGFyZSBzdW10aSBvZi4gVGhpcyBjb250 cmFkaWN0cyB0aGUgY21hdm8gbGlzdCwgYW5kIGlzIGluY29ycmVjdDogJyd2bydhJyctc2VyaWVz IGFuYXBob3JhIChhY2NvcmRpbmcgdG8gdGhlIG1hJ29zdGUpIHJlZmVyIHRvIHN1bXRpIG9mIHRo ZSBvdXRlcm1vc3QgYnJpZGkgd2l0aGluIHRoZSBjdXJyZW50IHNlbnRlbmNlLiBUaGlzIG1ha2Vz IHRoZW0gbG9nb3Bob3JzL2xvbmcgZGlzdGFuY2UgcmVmbGV4aXZlcywgcmF0aGVyIHRoYW4gc2hv cnQtZGlzdGFuY2UgcmVmbGV4aXZlcywgYXMgaXMgbm9ybWFsIGluIGh1bWFuIGxhbmd1YWdlLiBU aHVzLCBpbiAnJ21pIG5lbGNpIGxlbnUgZG8gcHJhbWkgdm8nYScnLCAnJ3ZvJ2EnJ21lYW5zICcn bWknJywgbm90ICcnZG8nJy4KCioqX18tLT5fXygoV2h5IHRoZSBCb29rIGlzIFJpZ2h0IGFuZCB0 aGUgbWEnb3N0ZSBpcyBXcm9uZykpCgoqKipXaGljaCBvZiB0aGUgdHdvIGNhc2VzIGlzIG5vcm1h bCBpbiBodW1hbiBsYW5ndWFnZT8gSWYgeW91J2Qgd3JpdHRlbiBpdCBpbiBMb2piYW4sIEknZCBr bm93IQoKKioqKiBJJ2QgZ3Vlc3MgdGhhdCBzaG9ydC1kaXN0YW5jZSBpcyBub3JtYWwsIGIvYyBv dGhlcndpc2UgaXQgd291bGQgbm90IGJlIHdvcnRoIGNvbXBhcmluZyB0aGUgdHdvLiBCdXQgb2Yg Y291cnNlIGluIGxvamJhbiB3ZSB3b3VsZG4ndCBoYXZlIHRvIGdsb3JrIHRoYXQuCgoqKioqKiBT aG9ydC1kaXN0YW5jZSBpcyBpbmRlZWQgbm9ybWFsLCBidXQgTG9qYmFuaXN0cyBoYXZlIGNvbnNp c3RlbnRseSB1c2VkIGxvbmctZGlzdGFuY2UuICBOaWNrIHdyb3RlIGEgcGVlci1yZXZpZXdlZCBw YXBlciBvbiB0aGlzLiAgLS1qY293YW4KCgoKKiBFeGFtcGxlIDcuOC41IChwMTU5KTogYmFqcmEg b24gdGhpcmQgbGluZSBzaG91bGQgYmUgYmFqeWtsYSwgbGlrZSB0aGUgb3RoZXJzLgoKKiogKChB cHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNM TCcnCgoKCiogU2VjdGlvbiA4LCBpdCBzYXlzICJFeGFtcGxlIDkuMyBpcyBhIHRydWx5IHByZWdu YW50IHF1ZXN0aW9uLi4uIiB3aGVuIGV4YW1wbGUgOS4yIGlzIHRoZSBwcmVnbmFudCBxdWVzdGlv biwgYW5kIGV4YW1wbGUgOS4zIGlzIGEgYmV0dGVyIHdheSBvZiBleHByZXNzaW5nICJXaG8gYXJl IHlvdT8iCgoKCiogU2VjdGlvbiAxNSwgaXQgc2F5cyAiRmluYWxseSwgbHVqdm8gaW52b2x2aW5n IGBgemknbycnIGFyZSBhbHNvIHBvc3NpYmxlLCBhbmQgYXJlIGZ1bGx5IGRpc2N1c3NlZCBpbiBD aGFwdGVyIDEyIiwgYnV0IG5vd2hlcmUgZG9lcyBDaGFwdGVyIDEyIG1lbnRpb24gdGhlIHdvcmQg e3ppJ299LCBtdWNoIGxlc3MgbHVqdm8gaW52b2x2aW5nIGl0LiBUaGlzIGlzIHByb2JhYmx5IGEg Q2hhcHRlciAxMiBlcnJhdHVtLgoKLS0tCgoKCiFDaGFwdGVyIDgKCgoKKiBJbiBTZWN0aW9uIDMg dGhlIGV4YW1wbGUgMy4yMCBzaG91bGQgaGF2ZSB7eGFuY2V9IGluc3RlYWQgb2Yge3hhbmNpfSwg d2hpY2ggaXMgZGVmaW5pdGVseSBhIHR5cG8uIC0taWRvbnRrbncKCioqICgoQXBwcm92ZWQgRXJy YXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNl Y3Rpb24gOCwgcC4gMTgxOiAgOC4xKSAnJ2xpIHBhaSBub2kgbmEnZSBmcmludSBuYW1jdScnc2hv dWxkIGJlICcnbGkgcGFpIG5vaSBuYSdlIGZyaW51IGN1IG5hbWN1JycuICAoKEFwcHJvdmVkIEVy cmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBTZWN0aW9uIDgsIEV4YW1wbGUgOC42LCB0aGUg dGhpcmQgbGluZSwgIkkgcnVubmluZ2x5LWdvIHRvLXRoaXMgW3JlY2lwcm9jaXR5XSBbeDMgb2Yg dGhpcyBicmlkaV0gZnJvbS10aGF0IiwgaXMgbm90IHRoZSB1c3VhbCBkZWNlbnQgRW5nbGlzaCBv bmUgd291bGQgZXhwZWN0IGluIHRoYXQgcG9zaXRpb247IHJlcGxhY2VkIHdpdGggIkkgcnVuIHRv IHRoaXMgZnJvbSB0aGF0IGFuZCB2aWNlIHZlcnNhLiIgaXMgZGFnLWNsbCAnJ0lOQ0xVREVEIElO IERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gOSwgZXhhbXBsZSA5LjIgaXMgJydjbydvIHhpcm1hJycu IFRoZW4sICcnTm90ZSB0aGF0IEV4YW1wbGUgOS4yIHNheXMgZmFyZXdlbGwgdG8gc29tZXRoaW5n IHdoaWNoIGRvZXNu4oCZdCByZWFsbHkgaGF2ZSB0byBiZSBhIGhvcnNlLCBzb21ldGhpbmcgdGhh dCB0aGUgc3BlYWtlciBzaW1wbHkgdGhpbmtzIG9mIGFzIGJlaW5nIGEgaG9yc2UsIG9yIGV2ZW4g bWlnaHQgYmUgc29tZXRoaW5nIChhIHBlcnNvbiwgZm9yIGV4YW1wbGUpIHdobyBpcyBuYW1lZCAi SG9yc2UiLiBJbiBhIHNlbnNlLCBFeGFtcGxlIDkuMiBpcyBhbWJpZ3VvdXMgYmV0d2VlbiAiY28n byBsZSB4aXJtYSIgYW5kICJjbydvIGxhIHhpcm1hIicnLiBJcyB0aGlzIHRydWU/CgoqKiBZZXMs IGluIHRoZSBzZW5zZSB0aGF0IGFsbCB1c2VzIG9mICJsZSIgJydtaWdodCcnIG1lYW4gImxhIi4g IEJ1dCBpdCdzIHByb2JhYmx5IG1vcmUgY29uZnVzaW5nIHRoYW4gaXQncyB3b3J0aC4gIFRydW5j YXRlIGFmdGVyICJ0aGlua3Mgb2YgYXMgYmVpbmcgYSBob3JzZSIuICAtLWpjb3dhbgoKCgoqIFNl Y3Rpb24gOSBzYXlzICcnSW4gdm9jYXRpdmUgcGhyYXNlcyB3aGljaCBhcmUgc2ltcGxlIG5hbWVz IChhZnRlciB0aGUgdm9jYXRpdmUgd29yZHMpLCBhbnkgcmVsYXRpdmUgY2xhdXNlcyBtdXN0IGNv bWUganVzdCBhZnRlciB0aGUgbmFtZXMnJy4gVGhpcyBpc24ndCB0cnVlLiBSZWxhdGl2ZSBjbGF1 c2VzIGNhbiBnbyBiZXR3ZWVuIHRoZSB2b2NhdGl2ZSBhbmQgdGhlIGNtZXZsYS4gICgoQXBwcm92 ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKSAgRHJvcCBpdDsgaXQgcmVmbGVjdHMgYW4gZWFy bGllciBzdGF0ZSBvZiB0aGUgbGFuZ3VhZ2UuCgoKCiogU2VjdGlvbiAxMCwgZXhhbXBsZSAxMC4z IHVzZXMgImtlJ2EgZ29pIGtvJ2Ugem8ndSBrbydhIHpiYXN1IGtlJ2EiIGJ1dCBnbG9zc2VzIGl0 IGFzICIoSVQgPSBpdDIgOiBpdDEgYnVpbHQgaXQyKSIuIFRoZSBhc3NpZ25lZCAia28nZSIgaXMg bm90IHVzZWQgYXMgZXhwZWN0ZWQgb3IgZGVzY3JpYmVkLCBhbmQgc2hvdWxkIHByb2JhYmx5IGJl ICJrbydhIHpiYXN1IGtvJ2UiLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkp ICBZZXMsICJrbydhIHpiYXN1IGtvJ2UiIGlzIGNsZWFybHkgd2hhdCdzIG1lYW50LgoKCgotLS0K CiFDaGFwdGVyIDkKCgoKKiBTZWN0aW9uIDYsIHBsYWNlIHN0cnVjdHVyZSBvZiAnJ3BpbG5vJycg aXMgbWlzc2luZyAiZm9yIHB1cnBvc2UgeDMiLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBB cHByb3ZlZCkpCgoKCiogU2VjdGlvbiA4LCB0aGUgZXhhbXBsZXMgOC41IGFuZCA4LjYgYXJlIHN1 cHBvc2VkIHRvIG1lYW4gdGhlIHNhbWUgdGhpbmcsIGJ1dCBkbyBub3QuCgoqKiBQbGVhc2UgZWxh Ym9yYXRlLiAgLS1qY293YW4KCioqKiA4LjUgbWVhbnMgIkkgZ2F2ZSB0aGUgYm9vayB0byBKb2hu LCBiZWNhdXNlIEpvaG4gZ2F2ZSB0aGUgbW9uZXkgdG8gbWUiIGJ1dCA4LjYgbWVhbnMgIkpvaG4g Z2F2ZSB0aGUgbW9uZXkgdG8gbWUgYmVjYXVzZSBJIGdhdmUgdGhlIGJvb2sgdG8gSm9obi4iCgoq KiAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJyAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJv dmVkKSkKCgoKKiBTZWN0aW9uIDExLCBkZXNjcmlwdGlvbiBvZiB0aGUgbWVhbmluZyBvZiAiLmlq ZSBzZXJpJ2EgdHUnZSIgY29udHJhZGljdHMgdGhlIGV4cGxhbmF0aW9uIG9mIEV4YW1wbGUgOS45 LCB3aGljaCB3b3VsZCBzdWdnZXN0ICIuaWplIHJpJ2EgdHUnZSIuCgoKCiogc2VjdGlvbiAxNywg ImZyb20gc291cmNlIGFzIGFuIG9yaWdpbiBvZiIgc2hvdWxkIGJlIHR3byBlbnRyaWVzOyAiZnJv bSBzb3VyY2UiIGFuZCAiYXMgYW4gb3JpZ2luIG9mIiAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoK CgotLS0KCgoKIUNoYXB0ZXIgMTAKCgoKKiBTZWN0aW9uIDQsICJ3aGVuIGJvdGggc3BhdGlhbCBh bmQgdGVtcG9yYWwgdGVuc2UgY21hdm8gYXJlIGdpdmVuIGluIGEgc2luZ2xlIHRlbnNlIGNvbnN0 cnVjdCwgdGhlIHRlbXBvcmFsIHRlbnNlIGlzIGV4cHJlc3NlZCBmaXJzdCIgZGlzYWdyZWVzIHdp dGggdGhlIHJ1bGUgc2ltcGxlLXRlbnNlLW1vZGFsLTk3MiBpbiB0aGUgQk5GIGdyYW1tYXIuCgoK CiogU2VjdGlvbiA5LCBleGFtcGxlIDkuOSBvbiBwYWdlIDIyNyBoYXMgImNpcmxpIiBmb3IgImNp cmxhIi4KCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAnJ0lOQ0xV REVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gMTIsIGV4YW1wbGUgMTIuNiB0cmFuc2xhdGVz IG1vcnNpIGFzICJkaWUiIHJhdGhlciB0aGFuICJhbSBkZWFkIiBpbiB0aGUgdHJhbnNsYXRpb24g KGFzIG9wcG9zZWQgdG8gdGhlIGdsb3NzKS4KCgoKKiBTZWN0aW9uIDE2LCBhdCB0aGUgZW5kLCB0 aGUgWCBhbmQgWSBpbiB0aGUgMyBmb3JtcyBkb24ndCBmaXQgcHJvcGVybHkgKHRoZSAzcmQgZG9l c24ndCBtYXRjaCB0aGUgZmlyc3QgdHdvKS4gSSByZWNvbW1lbmQsIGNvcHlpbmcgZnJvbSBTZWN0 aW9uIDIzICh3aGVyZSB0aGV5IGFyZSB3cml0dGVuIGFnYWluIGNvcnJlY3RseSk6CgogICAgICAg WCAuaSBURU5TRSBibyBZCgogICAgICAgVEVOU0UgZ2kgWCBnaSBZCgogICAgICAgWSBURU5TRSBs ZSBudSBYCgoKCiogU2VjdGlvbiAxNywgZXhhbXBsZSAxNy4xMiBzaG91bGQgbm90IGhhdmUgdGhl IHNlY29uZCAiYmV2cmkiLgoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3Zl ZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlvbiAxOCwgZXhhbXBsZSAxOC45 IGlzIHN1cHBvc2VkIHRvIHNob3cgc2NhbGFyIG5lZ2F0aW9uIG9mIHRlbnNlcyBub3QgbGltaXRl ZCB0byBQVSBhbmQgRkFoQSwgYnV0IHRoZSBleGFtcGxlIHRlbnNlIGlzIHJpJ3UgKEZBaEEyKS4K CgoKKiBTZWN0aW9uIDE5LCBleGFtcGxlIDE5LjEwIHNob3VsZCBoYXZlICJiYSIsIG5vdCAicHUi LCBhbmQgIltmdXR1cmVdIiwgbm90ICJbcGFzdF0iLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dh biBBcHByb3ZlZCkpCgoKCiogU2VjdGlvbiAyNSwgZXhhbXBsZXMgMjUuMSBhbmQgMjUuMiBoYXZl ICcnbHUnYScnIGZvciAnJ2xhJ3UnJy4KCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMg QXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gMjUsIHRoaXMg d2hvbGUgc2VjdGlvbiBpcyBhdCBvZGRzIHdpdGggdGhlIGZvcm1hbCBncmFtbWFyLiBJdCBzYXlz OiAnJ0l0IGlzIGdyYW1tYXRpY2FsIGZvciBhIHRlcm1zZXQgdG8gYmUgcGxhY2VkIGFmdGVyIGEg dGVuc2Ugb3IgbW9kYWwgdGFnIHJhdGhlciB0aGFuIGEgc3VtdGknJy4gIEJ1dCB0aGF0IGlzIGlu IGZhY3QgaW5jb3JyZWN0LCBpdCBpcyBub3QgZ3JhbW1hdGljYWwgZm9yIGEgdGVybXNldCB0byBi ZSB0aGUgYXJndW1lbnQgb2YgYSB0YWcuCgoqKiBVbmZvcnR1bmF0ZWx5IHRydWUuICBUZXJtc2V0 cyBzdWNrIHJvY2tzLCBhbmQgc29tZSB3b3JrIHdpbGwgaGF2ZSB0byBiZSBkb25lIHRvIG1ha2Ug ZXZlcnl0aGluZyBzYWlkIGFib3V0IHRoZW0gY29uc2lzdGVudCAtLSBpZiBpdCBpcyBldmVuIHBv c3NpYmxlLiAgUGVyc29uYWxseSwgSSdkIGxpa2UgdG8ganVzdCBidXJuIHRoZW0uICAtLWpjb3dh biAgJycnTk9GSVgnJycKCgoKKiBTZWN0aW9uIDI3OiBNT2hJIHNlZSBTZWN0aW9uIDI4LCBub3Qg MjcuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKLS0tCgoKCiFDaGFw dGVyIDExCgoKCiogU2VjdGlvbiA0OiBUaGUgdXNlIG9mIGthIGluIEV4YW1wbGUgNC40IChwYWdl IDI1OSkgaXMgZXJyb25lb3VzOyBpdCBzaG91bGQgYmUgZHUndS4gLS0oKEpvaG4gQ293YW4pKSAo KEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBMYXN0IHBhcmFncmFwaCBv ZiBzZWN0aW9uIDcgcmVmZXJlbmNlcyBjaGFwdGVyIDUgZm9yIGEgZGlzY3Vzc2lvbiBvZiAibHUn ZSIuICBsdSdlIGlzbid0IG1lbnRpb25lZCBpbiBjaGFwdGVyIDUuICBQcm9iYWJseSBjaGFwdGVy IDYgaXMgbWVhbnQgaGVyZS4KCioqIFllcywgc2hvdWxkIGJlIFNlY3Rpb24gNS4xMC4gICAgKChB cHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoKCiogU2VjdGlvbiA5LCBwYWdlIDI2 NiBoYXMgInNhbydyZHppZmEnYSIgaW5zdGVhZCBvZiAic2Enb3JkemlmYSdhIi4KCioqICgoQXBw cm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwn JwoKCgoqIFRoZSBzYW1lIGV4YW1wbGUgKDkuNikgYWxzbyBoYXMga3VjdHJhIGluc3RlYWQgb2Yg a3VjdGFpCgoqKiAoKEFwcHJvdmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJTkNM VURFRCBJTiBEQUctQ0xMJycKCgoKKiBUaGUgYm9vayB0aXRsZSBpbiBleGFtcGxlIDkuNiBzZWVt cyB0byBiZSBpbmNvcnJlY3Q6ICJUaGUgQ3J1Y2lmaXhpb24gb2YgSmVzdXMgQ29uc2lkZXJlZCBB cyBBIERvd25oaWxsIEJpY3ljbGUgUmFjZSIgaXMgYWN0dWFsbHkgIltodHRwOi8vd3d3LmV2ZXJn cmVlbnJldmlldy5jb20vMTAyL2ZpY3Rpb24vZHVvLmh0bWx8VGhlIENydWNpZml4aW9uIENvbnNp ZGVyZWQgQXMgQW4gVXBoaWxsIEJpY3ljbGUgUmFjZV0uIgoKKiogVW5hcHByb3ZlZAoKCgoqIFNl Y3Rpb24gMTA6IFBhcmFncmFwaCBhYm92ZSBleGFtcGxlIDEwLjcgcmVmZXJlbmNlcyAiQ2hhcHRl ciAxMSIuIFRoYXQgc2hvdWxkIHJlYWQgIkNoYXB0ZXIgMTAiLgoKKiogKChBcHByb3ZlZCBFcnJh dHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2Vj dGlvbiAxMiwgcGFnZSAyNjkgaGFzIGV4YW1wbGVzIDEzLjEgYW5kIDEzLjIsIHRob3NlIHNob3Vs ZCBiZSBjYWxsZWQgMTIuMSBhbmQgMTIuMi4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBw cm92ZWQpKQoKCgotLS0KCgoKIUNoYXB0ZXIgMTIKCgoKKiBTZWN0aW9uIDIsIHBhZ2UgMjc1LiBU aGUgcGFyYWdyYXBoIHVuZGVyIEV4YW1wbGUgMi4zIHJlZmVycyB0byBpdCBhcyBFeGFtcGxlIDIu NCAoMi40IGRvZXNuJ3QgZXZlbiBleGlzdCkuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFw cHJvdmVkKSkKCgoKKiBTZWN0aW9uIDUsIHJpZ2h0IGFmdGVyIGV4YW1wbGUgNS43LiBJdCBzYXlz ICJhIiBpbnN0ZWFkIG9mICJhbiIuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVk KSkKCgoKKiBTZWN0aW9uIDYsIHBhZ2UgMjgwLiBFeGFtcGxlIDYuNiBzaG91bGQgaGF2ZSBhIHNw YWNlIGJldHdlZW4gImxhIHNwYXQuIiBhbmQgIm5vaSIuCgoqKiAoKEFwcHJvdmVkIEVycmF0dW18 Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBTZWN0aW9u IDcsIHBhZ2UgMjgyLiBFeGFtcGxlIDcuNSBoYXMgImJhbnNvaSIgaW5zdGVhZCBvZiAiYmFsc29p Ii4KCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAnJ0lOQ0xVREVE IElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gMTEsIHBhZ2UgMjg1IGhhcyAieGFzY2FrY3VybnUi IGluc3RlYWQgb2YgInhhc3ljYWtjdXJudSIuCgoqKiAoKEFwcHJvdmVkIEVycmF0dW18Y2FtZ3Vz bWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBTZWN0aW9uIDEyIGNs YWltcyB0aGF0IC1qYXgtIGlzIGEgcmFmc2kgZm9yIHtqYWl9LCBidXQgaXQgaXNuJ3QgaW4gW2h0 dHA6Ly93d3cubG9qYmFuLm9yZy9wdWJsaWNhdGlvbnMvd29yZGxpc3RzL3JhZnNpLnR4dHxodHRw Oi8vd3d3LmxvamJhbi5vcmcvcHVibGljYXRpb25zL3dvcmRsaXN0cy9yYWZzaS50eHRdLiBEb2Vz IHtqYWl9IGhhdmUgYSByYWZzaSBvciBub3Q/CgoqKiBJdCBzaG91bGQsIGJ1dCBzb21laG93IGl0 IG5ldmVyIGdvdCBpbnRvIHRoZSBnaXNtdSBsaXN0LCBhbmQgY29uc2VxdWVudGx5IG5vdCBpbnRv IHRoZSByYWZzaSBsaXN0IGVpdGhlci4gIFN0ZXQsIGFuZCB3ZSdsbCBhZGQgaXQgdG8gdGhlIGdp c211IGxpc3QuICAtLWpjb3dhbgoKCgoqIFNlY3Rpb24gMTIsIHJpZ2h0IGF0IHRoZSBlbmQsIHNh eXMgdGhhdCB7ZmFpfSBpcyBleHBsYWluZWQgaW4gQ2hhcHRlciAxMSwgYnV0IENoYXB0ZXIgMTEg bWFrZXMgbm8gbWVudGlvbiBvZiB7ZmFpfS4gT25seSBjaGFwdGVycyA5IGFuZCAxMCBkby4KCioq ICcnSU5DTFVERUQgSU4gREFHLUNMTCcnICh6b3J0J3MgZm9yayBhdCBsZWFzdCkgICgoQXBwcm92 ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoKCgoqIFNlY3Rpb24gMTQsIGV4YW1wbGUgMTQu Mi4gTWlzc2luZyA8IC9wcmUgPiB0YWcsIGFuZCBtaXNzaW5nIDwgcHJlPiB0YWcgZm9sbG93aW5n IGV4cGxhbmF0b3J5IHBhcmFncmFwaC4KCgoKKiBTZWN0aW9uIDE0LCBwYWdlIDI5MS4gVGhlIHBh cmFncmFwaCB1bmRlciBleGFtcGxlIDE0Ljcgc2F5cyAic2UgeGFuY2UgbWluZHUiIGluc3RlYWQg b2YgInNlIHhhbmNlIG1pbmRlIi4KCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBw cm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gMTUsIHR3byBwYXJh Z3JhcGhzIGJlZm9yZSBleGFtcGxlIDE1LjcuIEl0IHNheXMgIlRoZXJlIGFyZSBzb21lIGNvbXBh cmF0aXZlIGNvbmNlcHRzIHdoaWNoIGFyZSBpbiB3aGljaCB0aGUgJ3NlIHptYWR1JyBpcyBkaWZm aWN1bHQgdG8gc3BlY2lmeS4iIFRoZSAid2hpY2ggYXJlIGluIHdoaWNoIiBzZWVtcyBncmFtbWF0 aWNhbGx5IGluY29ycmVjdC4KCioqIERyb3AgIndoaWNoIGFyZSIuICAtLWpjb3dhbiAgICgoQXBw cm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoKCgoqIFNlY3Rpb24gMTUsIHBhZ2UgMjk0 LCBleGFtcGxlIDE1LjE0LiAibGEgYWluY3RhaW4iIG5lZWRzIGEgcGVyaW9kIGJlZm9yZSBpdCBi ZWNhdXNlIGl0IHN0YXJ0cyB3aXRoIGEgdm93ZWwuCgoqKiAoKEFwcHJvdmVkIEVycmF0dW18Y2Ft Z3VzbWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKLS0tCgoKCiFDaGFw dGVyIDEzCgoKCiogTWFueSBpbmNpZGVudHMgb2Ygbm90IGhhdmluZyBwZXJpb2RzIGluIGZyb250 IG9mIHZvd2VsLWluaXRpYWwgY21hdm8uCgoqKiAoKEFwcHJvdmVkIEVycmF0dW18Y2FtZ3VzbWlz IEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBJbiBzZWN0aW9uIDIsIHAu IDMwMCByZWZlcmVuY2VzIHRvIHRoZSBleGFtcGxlcyBmb3IgLnVlIGFuZCAudWVjdSdpIGFyZSBm bGlwcGVkLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoKCiogU2VjdGlv biAzLCBwYWdlIDMwMywgZXhhbXBsZSAzLjkuICJlJ2UiIG5lZWRzIGEgcGVyaW9kIGJlZm9yZSBp dC4KCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAnJ0lOQ0xVREVE IElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gMywgcGFnZSAzMDMsIGV4YW1wbGUgMy4xMC4gInRp c25hIiBuZWVkcyB0byBiZSByZXBsYWNlZCB3aXRoICJ0aXN5Z2F1Ii4KCioqICgoQXBwcm92ZWQg RXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoq IFNlY3Rpb24gNCwgcGFnZSAzMDUuIFRoZSBzY2FsZSB3aXRoIHRoZSBnaXNtdSBtbmVtb25pY3Mg aXMgbWlzYWxpZ25lZCB3aXRoIHRoZSBzY2FsZSB3aXRoIHRoZSBtZW1iZXJzIG9mIHNlbG1hJ28g Q0FJLiAic2FpIiBzaG91bGQgYmUgdGFiYmVkIG9uZSBwbGFjZSBsZWZ0LCBzbyB0aGF0IGl0IGFs aWducyB3aXRoIHRzYWxpLCAmYy4KCgoKKiBTZWN0aW9uIDcsIGl0IHNheXMgIkl0IGlzIG5vdCBj bGVhciBob3cgbXVjaCB1c2UgbG9naWNhbGx5IGNvbm5lY3RlZCBhYnN0cmFjdG9ycyB3aWxsIGJl OiBzZWUgQ2hhcHRlciAxMy4iIEl0IHNob3VsZCBiZSAiQ2hhcHRlciAxNS4iCgoqKiAnJ0lOQ0xV REVEIElOIERBRy1DTEwnJyAoem9ydCdzIGZvcmsgYXQgbGVhc3QpIGJ1dCBuZWVkcyBhcHByb3Zh bAoKKiBTZWN0aW9uIDEwLCBwYWdlIDMxMy4gVGhlcmUgaXMgYSBtaXNzaW5nIHNwYWNlIGJldHdl ZW4gImNvbnRpbnVlIGVtb3Rpb24iIGFuZCAiZW5kIGVtb3Rpb24iLgoKCgoqIFNlY3Rpb24gMTUu IEEgc2FtcGxlIGRpYWxvZ3VlICAxNS40KSAvIH5ucH5bQ29tbWVudF0gUGFtIHNheXMsIFtQbGVh c2VdIEFsaWNlLCBbZW5kLW9mLWNvbW1lbnRdIC8gW0NvbW1lbnRdIFBhbSBzYXlzLCBbZW5kLW9m LWNvbW1lbnRdIFtQbGVhc2VdIEFsaWNlLC9+L25wfiAoKEFwcHJvdmVkIEVycmF0dW18amNvd2Fu IEFwcHJvdmVkKSkKCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAn J0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gMTUsIGV4YW1wbGUgMTUuNSAveGFt Z3UvZ2xla2kvID8KCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAn J0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gMTUsIGV4YW1wbGUgMTUuMTApIC9m aSdpIHJvIHp2YXRpIGtvIHBpbnhlIHBhIGNrYWZpL2ZpJ2kgcm8genZhdGkgLmkga28gcGlueGUg cGEgY2thZmkvCgoqKiBObywgdGhpcyBvbmUgaXMgcGVyZmVjdGx5IGZpbmU6ICJmaSdpIHJvIHp2 YXRpIiBpcyBhIHZvY2F0aXZlIHBocmFzZSwgd2hpY2ggaXMgYSBmcmVlIG1vZGlmaWVyLCBtZWFu aW5nIHRoYXQgaXQgY2FuIG9jY3VyIGFsbW9zdCBhbnl3aGVyZS4gICgoQXBwcm92ZWQgRXJyYXR1 bXxqY293YW4gQXBwcm92ZWQpKQoKCgoqIFNlY3Rpb24gMTUsIGV4YW1wbGUgMTUuMTMpIC9maSdv IHNlbHBsZWppIG1pL2ZpJ28gcGxlamkgbWkvCgoqKiBBbmQgIndpdGggcGF5ZXIiIHJhdGhlciB0 aGFuICJ3aXRoIHBheW1lbnQiOyBleSdzIG5vdCBwYXlpbmcgd2l0aCBlbXNlbGYhIC0tIGNhbWd1 c21pcwoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVE RUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlvbiAxNSwgZXhhbXBsZSAxNS4xMy4gV3JvbmcgdXNl IG9mIHtzZWxmdX0uIHtiZXZyaX0gd291bGQgZml0IGJldHRlci4KCi0tLQoKCgohQ2hhcHRlciAx NAoKCgoqIFNlY3Rpb24gOCwgcmlnaHQgYmVmb3JlIGV4YW1wbGUgOC45IGlzICJwcm9kdWNpbmcg ZXhhbXBsZSA4LjEwIiB3aGljaCBzaG91bGQgaW4gZmFjdCByZWFkICJwcm9kdWNpbmcgZXhhbXBs ZSA4LjkiLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoKCiogU2VjdGlv biA5OiBiZXR3ZWVuIGV4YW1wbGUgOS4xMCBhbmQgOS4xMSwgImlkZW50aWZpZWQiIHNob3VsZCBy ZWFkICJpZGVudGljYWwiCgoqKiAoKEFwcHJvdmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJvdmVk KSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBTZWN0aW9uIDExLCByaWdodCBiZWZvcmUg c2VjdGlvbiAxMi4gSXQgc2F5cyAidGVybXNldHMuLi5hcmUgZXhwbGFpbmVkIGluIENoYXB0ZXIg MTIgYW5kIENoYXB0ZXIgMTYiIGJ1dCBjaGFwdGVyIDEyICh3aGljaCBpcyBvbiBsdWp2bykgbWFr ZXMgYWJzb2x1dGVseSBubyBtZW50aW9uIG9mIHRlcm1zZXRzLiBDaGFwdGVycyA5IGFuZCAxMCBk aXNjdXNzIHRlcm1zZXRzLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoK CiogU2VjdGlvbiAxNCwgZXhhbXBsZSAxNC4xNSBpcyBub3QgZ3JhbW1hdGljYWwgKGFjY29yZGlu ZyB0byBqYm9maSdlIGFuZCBjYW14ZXMpIGJlY2F1c2UgaXQgc2F5cyAicGUnZSAuZSIgd2hlbiBp dCBzaG91bGQgc2F5ICJwZSdlIGplIi4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92 ZWQpKQoKCgoqIFNlY3Rpb24gMTQsIGV4YW1wbGUgMTQuMTYgbWVudGlvbnMgInNvcm1lIiwgd2hp Y2ggaXMgcHJvYmFibHkgT2xkIExvZ2xhbiwgYW5kIHNob3VsZCBiZSByZXBsYWNlZCBieSAibWVu c2kiLgoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVE RUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlvbiAxNCwgInRoZSBzdGF0ZWQgZ2xvc3Mgb2YgVEZU VGFzIOKAnG9ubHkgaWbigJ0gd29ya3MgbmF0dXJhbGx5IG9ubHkgd2hlbiB0aGUgcmlnaHQtaGFu ZCBicmlkaSBpcyB0cnVlOyBpZiBpdCBpcyBmYWxzZSwgdGhlIGxlZnQtaGFuZCBicmlkaSBtYXkg YmUgZWl0aGVyIHRydWUgb3IgZmFsc2UuIiBjaGFuZ2VkIHRvICJ0aGUgc3RhdGVkIGdsb3NzIG9m IFRGVFRhcyDigJxvbmx5IGlm4oCdIHdvcmtzIG5hdHVyYWxseSBvbmx5IHdoZW4gdGhlIHJpZ2h0 LWhhbmQgYnJpZGkgaXMgZmFsc2U7IGlmIGl0IGlzIHRydWUsIHRoZSBsZWZ0LWhhbmQgYnJpZGkg bWF5IGJlIGVpdGhlciB0cnVlIG9yIGZhbHNlLiIKCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1n dXNtaXMgQXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gMTUs IHJpZ2h0IGFmdGVyIDE1LjksIGl0IHNheXMgImV4YW1wbGUgMTQuMTciIHdoZXJlIGl0IHNob3Vs ZCBzYXkgImV4YW1wbGUgMTUuOSIgKDE0LjE3IGRvZXMgbm90IGV4aXN0KS4gICgoQXBwcm92ZWQg RXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoKCgoqIFNlY3Rpb24gMTUsIGV4YW1wbGUgMTUuOSBp cyBub3QgZ3JhbW1hdGljYWw7IGl0IHNob3VsZCBiZSAibGEgZGphbi4gZmEndSBsYSBmcmFuay4g Y3Vza3UgbnUnaSBiYXUgbGEgbG9qYmFuLiBwZSdlIGZhJ3UgYmFpIGxhIGRqb3Jkai4iLgoKCgoq IFNlY3Rpb24gMTksIGV4YW1wbGUgMTkuNCBpcyB0cmFuc2xhdGVkIGFzICJJIG9waW5lIHRoZSBm YWN0LXRoYXQgYS1tYXNzLW9mIGxpdmluZy10aGluZ3MgaXMtYXQgSnVwaXRlciBvci1lbHNlIEkg b3BpbmUgdGhlIGZhY3QtdGhhdCBhLW1hc3Mtb2YgbGl2aW5nLXRoaW5ncyBpc24ndC1hdCBKdXBp dGVyIiBidXQgcmVhbGx5IGl0J3MgIkkgb3BpbmUgdGhlIGZhY3QtdGhhdCBhLW1hc3Mtb2YgbGl2 aW5nLXRoaW5ncyBpcy1hdCBKdXBpdGVyIG9yLWVsc2UgSSBfX2RvLW5vdF9fIG9waW5lIHRoZSBm YWN0LXRoYXQgYS1tYXNzLW9mIGxpdmluZy10aGluZ3MgX19pcy1hdF9fIEp1cGl0ZXIiLiBTbyAx OS40IGlzIGFjdHVhbGx5IHRydWUsIG5vdCBmYWxzZSBhcyBpdCBpcyBjbGFpbWVkIHRvIGJlLgoK KiogQ29ycmVjdCwgc28gdGhpcyBleGFtcGxlIHdpbGwgbmVlZCByZXBsYWNpbmcuICAgICgoQXBw cm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoKCgoqIEFsc28gdGhlcmUgaXNuJ3QgcmVh bGx5IGEgcmVhc29uIGZvciBpdCB0byBzYXkgYSBtYXNzIG9mIGxpdmluZyB0aGluZ3MgYW5kIG5v dCBzb21lIGluZGl2aWR1YWwgbGl2aW5nIHRoaW5ncy4KCioqIFN0ZXQuICBUaGUgYXV0aG9yIHBy ZWZlcnMgaXQgdGhhdCB3YXksIHRoYW5reW91dmVyeW11Y2guICAtLWpjb3dhbi4KCgoKCgotLS0K CgoKISBDaGFwdGVyIDE1CgoKCiogU2VjdGlvbiAyLCBtaXNzaW5nIDwgL3ByZSA+IHRhZyBhZnRl ciBleGFtcGxlIDIuOCBhbmQgPCBwcmU+IHRhZyBiZWZvcmUgZXhhbXBsZSAyLjkuCgoKCiogU2Vj dGlvbiA0LCBleGFtcGxlIDQuMTIgL25ha2UvbmEnZWtlLwoKCgoqIFNlY3Rpb24gOSwgdHdvIHBh cmFncmFwaHMgYWJvdmUgZXhhbXBsZSA5LjQgdGhlIHdvcmQgIm5lZ2F0aXYiIHNob3VsZCBiZSAi bmVnYXRpdmUiLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoKCiogU2Vj dGlvbiA5OiBJcyB0aGVyZSBzdXBwb3NlZCB0byBiZSBhbnkgZGlmZmVyZW5jZSBiZXR3ZWVuIGV4 LiA5LjUgYW5kIDkuNj8KCioqIFRoYXQgcHJvYmxlbSBpcyBvbmx5IGluIHRoZSBvbmxpbmUgdmVy c2lvbi4KCgoKKiBTZWN0aW9uIDEwLCB0aHJlZSBwYXJhZ3JhcGhzIGFmdGVyIGV4YW1wbGUgMTAu MTQsIHRoZXJlJ3MgYSBzZW1pY29sb24gd2hpY2ggc2hvdWxkIGJlIGEgY29tbWEgYWZ0ZXIgIihz YXksIGEgc3BlbGxpbmcgZXJyb3IpIi4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92 ZWQpKQoKCgoqIFNlY3Rpb24gMTAsIGl0IHNheXMgIidqaSd1bmEnaWt1JyBtZXRhbGluZ3Vpc3Rp Y2FsbHkgc2F5cyB0aGF0IHNvbWV0aGluZyBpcyB3cm9uZyB3aXRoIHRoYXQgYXNzdW1wdGlvbi4g KFNlZSBDaGFwdGVyIDEwLikiLiBTaG91bGRuJ3QgdGhhdCBiZSBDaGFwdGVyIDksIG1vZGFscz8K CioqICcnSU5DTFVERUQgSU4gREFHLUNMTCcnICh6b3J0J3MgZm9yayBhdCBsZWFzdCkgKChBcHBy b3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgotLS0KCgoKIUNoYXB0ZXIgMTYKCgoKKiBT ZWN0aW9uIDUsIGV4YW1wbGUgNS41OiBFbmdsaXNoIGhhcyAiZXZlcnkgWSIgd2hlbiBpdCBzaG91 bGQgcmVhZCAiZXZlcnkgWCIKCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92 ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gNiwgZXhhbXBsZSA2LjYg aGFzIGEgbWlzc2luZyAiY3UiIGJlZm9yZSAidmlza2EiLgoKKiogKChBcHByb3ZlZCBFcnJhdHVt fGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlv biA4LCB0aGUgZXhwbGFuYXRpb24gb2YgZXhhbXBsZSA4LjMgc2F5cyAiYW55IGVudGl0eSB3aGlj aCBpcyBvbmUgaXMgYWxzbyB0aGUgb3RoZXIiLiBUaGF0IHdvdWxkIGJlIHRydWUgaWYgdGhlIGV4 YW1wbGUgdXNlZCB7Z299LCBidXQgaXQgdXNlcyB7Z2FuYWl9LiA4LjMgZG9lcyBub3QgY2xhaW0g dGhhdCBpZiBzb21ldGhpbmcgd2Fsa3MgYWNyb3NzIHRoZSBmaWVsZCB0aGVuIGl0IGdvZXMgdG8g dGhlIHN0b3JlLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpICBDaGFuZ2Ug aXQgdG8gdXNlIHtnb30uICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoqKiBTYW1lIHBsYWNlOiBu ZWVkcyB0byBibyB7ZGEgZ299LCBub3Qge2dvIGRhfSAgQW5kIHRoZSBnbG9zcyBzaG91bGQgYmUg IkZvci1ldmVyeSBYOiBYIGlzLWEtZ29lci10byB0aGUgc3RvcmUgaWYtYW5kLW9ubHktaWYgaXQg aXMtYS13YWxrZXItb24gdGhlIGZpZWxkLiIgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBT ZWN0aW9uIDgsIGV4YW1wbGUgOC4zLiBFaXRoZXIgdGhlIHtkYX0gc2hvdWxkIGNvbWUgYmVmb3Jl IHRoZSB7Z2FuYWl9IChvciwgYnkgdGhlIHByZXZpb3VzIF4gZXJyYXR1bSwge2dvfSkgYW5kIHRo ZSBnbG9zcyBzaG91bGQgYmUgY2hhbmdlZCB0byBvbmx5IG1lbnRpb24gIlgiIG9uY2UsIG9yIGEg e2RhfSBzaG91bGQgYmUgaW5zZXJ0ZWQgYmVmb3JlIHtjYWR6dX0uCgoqKiAnJ0lOQ0xVREVEIElO IERBRy1DTEwnJyAgY2hvc2UgZmlyc3Qgb3B0aW9uIHNpbmNlIGl0J3MgdGVyc2VyICh6b3J0J3Mg Zm9yayBhdCBsZWFzdCkgYnV0IG5lZWRzIGFwcHJvdmFsCgoKCiogVGhpczogIkFkamFjZW50IG5l Z2F0aW9uIGJvdW5kYXJpZXMgaW4gdGhlIHByZW5leCBjYW4gYmUgZHJvcHBlZCwiIHJlYWRzIGJl dHRlciBhcyAiQWRqYWNlbnQgcGFpcnMgb2YgbmVnYXRpb24gYm91bmRhcmllcyBpbiB0aGUgcHJl bmV4IGNhbiBiZSBkcm9wcGVkLCIKCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBw cm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKKioqIFRoZSBvbmxpbmUgdmVyc2lvbiBz YXlzICJBZGphY2VudCBkb3VibGUgbmVnYXRpb24gYm91bmRhcmllcyIsIGJ1dCBJJ20gb2theSB3 aXRoIGVpdGhlciAiZG91YmxlIiBvciAicGFpcnMgb2YiLiAgLS1qY293YW4KCgoKKiBTZWN0aW9u IDEwLCBleC4gMTAuNSBhbmQgMTAuNiBoYXZlIGEgcHJlbmV4LCAibmFrdSB6byd1IiwgYWZ0ZXIg YW4gaWplay4gVGhpcyBpcyBub3QgYWxsb3dlZCBieSB0aGUgZ3JhbW1hci4gSXQgY291bGQgYmUg Zml4ZWQgYnkgcmVtb3ZpbmcgdGhlICJ6byd1IiBhbmQgdXNpbmcgIm5ha3UiIG91dHNpZGUgdGhl IHByZW5leCwgYWx0aG91Z2ggdGhpcyBpcyBvbmx5IGV4cGxhaW5lZCBpbiB0aGUgZm9sbG93aW5n IFNlY3Rpb24gMTEuCgoqKiBUaGlzIGlzIGEgYmlnIHByb2JsZW0sIGFuZCBJJ20gbm90IHN1cmUg d2hhdCBzaG91bGQgYmUgZml4ZWQuICAtLWpjb3dhbiAgJycnTk9GSVgnJycKCiogU2VjdGlvbiAx MiwgZXguIDEyLjcgYW5kIDEyLjkgaGF2ZSBtaXNzaW5nICJjdSJzLgoKKiogKChBcHByb3ZlZCBF cnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiog U2VjdGlvbiAxNCwgRXhhbXBsZSAxNC4xIGhhcyAiYmxhY2kiIChnbGFzcykgbm90ICJibGFiaSIg KHdoaXRlKSBhcyBwZXIgdGhlIEVuZ2xpc2guCgoqKiAoKEFwcHJvdmVkIEVycmF0dW18Y2FtZ3Vz bWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKLS0tCgoKCiFDaGFwdGVy IDE3CgoKCiogU2VjdGlvbiA1LCBhZnRlciBleGFtcGxlIDUuMSwgcGFyYWdyYXBoIHN0YXJ0aW5n ICJIb3dldmVyLCAiIGhhcyBpbmNvcnJlY3QgZm9udC4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293 YW4gQXBwcm92ZWQpKQoKCgoqIFNlY3Rpb24gNSwgaW4gdGhlIHNlY29uZCBwYXJhZ3JhcGggYWZ0 ZXIgZXhhbXBsZSA1LjEsIHNheXMgJ3RoZSBsZXJmdSB3b3JkIOKAnHR54oCdIHdvdWxkIHJlcHJl c2VudCBub3QgTGF0aW4g4oCcdOKAnSBidXQgR3JlZWsg4oCcdGF14oCdLicgU2hvdWxkbid0IGl0 IGJlICJ0eS4iPwoKCgoqIFNlY3Rpb24gOSwgcGFnZSA0MjEuIGxlcmZ1IHN0cmluZ3MgYXJlIHdy aXR0ZW4gd2l0aG91dCBwYXVzZXMgb3Igc3BhY2VzLCBldmVuIHRob3VnaCBCWSB3b3JkcyBoYXZl IHRvIGVuZCB3aXRoIGEgY29uc29uYW50LgoKKiogU3RldC4gIEJZIHdvcmRzIGRvIG5vdCBlbmQg d2l0aCBhIGNvbnNvbmFudCwgYW5kIGEgc3RyaW5nIG9mIHRoZW0gY2FuIG5ldmVyIGJlIGFtYmln dW91cywgc28gcGF1c2VzL3NwYWNlcyBhcmUgbm90IHJlcXVpcmVkLiAgLS1qY293YW4KCgoKKiBT ZWN0aW9uIDksIEV4YW1wbGUgOS40OiBzaG91bGRuJ3QgInN5bXlqeSIgYmUgInN5bXlkeSIgKGxv amJhbiBtb3JwaG9sb2d5KT8gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoK CgoqIFNlY3Rpb24gMTAuIEFmdGVyIEV4YW1wbGUgMTAuNC41LCB0aGUgcmVmZXJlbmNlIHRvIEV4 YW1wbGUgMTAuNCBzaG91bGQgYmUgaW5zdGVhZCB0byBFeGFtcGxlIDEwLjQuNS4KCioqSW4gdGhl IGN1cnJlbnQgREFHLUNMTCwgdGhlIGV4YW1wbGVzIG51bWJlcmluZyBpcyBzYW5lLCBidXQgYWZ0 ZXIgRXhhbXBsZSAxMC4zLCB0aGUgdHdvIHJlZmVyZW5jZXMgdG8gRXhhbXBsZSAxMC40IHNob3Vs ZCBiZSB0byBFeGFtcGxlIDEwLjMuCgoKCiogUmlnaHQgYmVmb3JlIHNlY3Rpb24gMTIsIHRoZXJl IGlzIGEgbGluZSBicmVhayBpbiB0aGUgbWlkZGxlIG9mIHRoZSBwYXJhZ3JhcGguICAoKEFwcHJv dmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBJbiBzZWN0aW9uIDEzLCB0aGUgZmly c3QgcGFyYWdyYXBoIHN0YXRlcyAiSGlzdG9yaWNhbGx5LCB0aGVzZSBjaGFyYWN0ZXIgc2V0cyBo YXZlIG9ubHkgY292ZXJlZCB0aGUgRW5nbGlzaCBhbHBoYWJldCBhbmQgYSBmZXcgc2VsZWN0ZWQg cHVuY3R1YXRpb24gbWFya3MuIiwgd2hpY2ggaXMgaW5jb3JyZWN0LiBUaGVyZSBoYXZlIGJlZW4g bXVsdGl0dWRlcyBvZiBjaGFyYWN0ZXIgc2V0cyBmb3Igd3JpdGluZyBzeXN0ZW1zIG90aGVyIHRo YW4gdGhlIEVuZ2xpc2ggYWxwaGFiZXQuCgoqKiBDaGFuZ2UgdG8gc29tZXRoaW5nIGFsb25nIHRo ZSBsaW5lIG9mICJIaXN0b3JpY2FsbHksIGVhY2ggb2YgdGhlc2UgY2hhcmFjdGVyIHNldHMgaGFz IG9ubHkgY292ZXJlZCBhIHBhcnRpY3VsYXIgd3JpdGluZyBzeXN0ZW0uIgoKCgoqIFNlY3Rpb24g MTcsIHBhZ2UgNDI3LiAiLnR2cml5ZG9zLiBidSIgYmVnaW5zIHdpdGggdGhlIGNvbnNvbmFudCBj bHVzdGVyLCB3aGljaCBpc24ndCBldmVuIHBlcm1pc3NpYmxlIG1lZGlhbGx5LgoKKiogY2hhbmdl IHRvIHR5dnJpeWRvcwoKKioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQp KSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKKioqKiBBY3R1YWxseSwgaXQgc2hvdWxkIGJlICJ0 eXZyZG9zLiBidSIgIC0tamNvd2FuCgoKCiogSW4gdGhlIHRhYmxlIGluIHNlY3Rpb24gMTksIHRo ZSBsZXJ2bGEgZm9yIG92ZXItZG90ICgiLmdhcm1vYy4gYnUiKSBhbmQgb3Zlci1yaW5nICgiLmdh cmppbi4gYnUiKSBzaG91bGQgYmUgdXBkYXRlZCB0byB0aGVpciBwb3N0LVJlYWxsb2NhdGlvbiBm b3JtcywgIi5nYXBtb2MuIGJ1IiBhbmQgIi5nYXB5amluLiBidSIuCgoqKiogKChBcHByb3ZlZCBF cnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiog U2VjdGlvbiAxOSBoYXMgdHdvIGNvbHVtbnMgcnVuIHRvZ2V0aGVyIGluIHRoZSByb3cgdGhhdCBz YXlzICJEYW5pc2gvTGF0aW4gYWV0ZWkgLmFidSAuZWJ1IGZvaSIKCgoKLS0tCgohQ2hhcHRlciAx OAoKCgoqIFNlY3Rpb24gMywgZXguIDMuMTAsIHNob3VsZCB0cmFuc2xhdGUgYXMgIi4xMDEyMDAx Ii4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoKCgoqIEluIHNlY3Rpb24g NCBleGFtcGxlIDQuNSBpcyBsaW5rZWQgaW5zdGVhZCBvZiA0LjcgLSAiRXhhbXBsZSA0LjUgaXMg bm90IGBgMSBtaW51cyAyJycsIFsuLi58Li4uXSIgd2hlcmUgZXhhbXBsZSA0LjUgaXMganVzdCAi dGUnbyIuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBTZWN0aW9u IDUsIHA0MzcgZXg1LjkgW2dsb3NzXTogb3VyIC0+IGZvdXIgKChBcHByb3ZlZCBFcnJhdHVtfGpj b3dhbiBBcHByb3ZlZCkpCgoqKiAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24g NiwgcDQzODogaiB2dSd1IC0+IHZ1J3UgICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92 ZWQpKQoKKiogJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBTdGFydCBvZiBzZWN0aW9uIDEx IHNob3VsZCByZWFkIHRoZXJlIGFyZSBmaXZlIG1lbWJlcnMgb2YgTU9JIChub3QgZm91cikuICAo KEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBJbiBzZWN0aW9uIDExLCBl eCAxMS4xMCBvbiB2YSdlICJzb2ZpJ3VwYW5vIiBpbiB0aGUgZXhhbXBsZSBpcyBnbG9zc2VkIGFz ICI4LzEwIiBpbnN0ZWFkIG9mICI5LzEwIi4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBw cm92ZWQpKQoKKiogJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBJbiBzZWN0aW9uIDExLCAi bGVpIHJhdGN1IHBvaSB6dmF0aSBsZSBwYW5rYSBjdSBzbyd1bWVpIGZvIGxvJ2kgcmF0Y3UiLCBi dXQgdGhlcmUgaXMgbm8gNHRoIHBsYWNlIG9mIG1laS4KCioqIFJlbW92ZSB0aGUgImZvIjsgKChB cHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcn CgoKCiogRXhhbXBsZSAxNC40IG5lZWRzIGEgc3ViLTIgYWZ0ZXIgYm90aCBudW1iZXJzLgoKKiog KChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFH LUNMTCcnCgoKCiogSW4gc2VjdGlvbiAxNywgYXQgdGhlIGJvdHRvbSBvZiBwYWdlIDQ1NCwgdGhl IHF1YWRyYXRpYyBmb3JtdWxhIHNob3VsZCBiZSBkZXNjcmliZWQgYXMgYSBjbGFzc2ljIGV4YW1w bGUgb2Ygb3BlcmF0b3IgbG9naWNhbCBjb25uZWN0aW9uLCBub3Qgb3BlcmFuZC4gICgoQXBwcm92 ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoKCgoqIFNlY3Rpb24gMjAsIHA0NTg6IC1lc3Rh Ymxpc2hlZCAtPiBlc3RhYmxpc2hlZCAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3Zl ZCkpCgoKCiogU2VjdGlvbiAyMSBzdGF0ZXMgdGhhdCB0aGUgcmFmc2kgb2YgImZyaW51IiBtYXkg YmUgdXNlZCBhcyByYWZzaSBmb3IgImZpJ3UiOyBob3dldmVyLCAiZnJpbnUiIGxvc3QgYm90aCBv ZiBpdHMgc2hvcnQgcmFmc2kgaW4gdGhlIFJlYWxsb2NhdGlvbiwgc28gdGhpcyByZWFsbHkgaXNu J3QgdmVyeSB1c2VmdWwuIFRoZSB0YWJsZSBiZWxvdyBsaXN0cyAiZmkndSIgYXMgYSByYWZzaSB1 c2FibGUgZm9yICJmaSd1IiwgdGhlcmVmb3JlIG9mICJmcmludSI7IHRoZSBnaW1zdGUgbGlzdHMg ImZpJ3UiIGFzIGEgcmFmc2kgb2YgImNmaXB1Ii4KCioqIFRoaXMgaXMgYSBzZXJpb3VzIHByb2Js ZW0gd2hpY2ggbmVlZHMgc29tZSB0aG91Z2h0LiAgVGhlcmUgbmVlZHMgdG8gYmUgYSByYWZzaSBm b3IgZmkndSBzb21laG93LiAgLS1qY293YW4gICcnJ05PRklYJycnCgoKCiogU2VjdGlvbiAyMiBl eGFtcGxlIDIyLjMsICJtbydlIHZvYm9pIHJlbm9tZWkgc3UnaSB6ZSIsIGRvZXMgbm90IHBhcnNl LgoKKiogSXQgbmVlZHMgInZlaSIgaW4gZnJvbnQgdG8gYmUgYSBxdWFudGlmaWVyIChhbiBvcGVy YW5kIGJ5IGl0c2VsZiBpcyBub3QgYSBwZXJtaXR0ZWQgZnJhZ21lbnQpLiBBbHNvLCB0aGUgZm9s bG93aW5nIHRleHQgbWVudGlvbnMgInRlJ3UiIGJ1dCB0aGUgZXhhbXBsZSBvbWl0cyBpdC4KCioq KiBOb25lIG9mIHRob3NlIGV4YW1wbGVzIHBhcnNlIHdpdGhvdXQge2xpfSwgd2hpY2ggSSBoYXZl IGFkZGVkIHRvIGFsbC4gIFJlcGxhY2VkIHRoZSBvbmUgaW4gcXVlc3Rpb24gd2l0aCAibGkgbW8n ZSB2b2JvaSByZW5vbWVpIHRlJ3Ugc3UnaSB6ZSIgKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21p cyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCi0tLQoKIUNoYXB0ZXIgMTkK CgoKKiBTZWN0aW9uIDQsIHA0NjcgZXg0LjM6IHp1J28gLT4gem8ndSAgKChBcHByb3ZlZCBFcnJh dHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoqKiAoKEFwcHJvdmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFw cHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBTZWN0aW9uIDYsIHBhZ2UgNDcy LiBFeGFtcGxlIDYuNiBlbmRzIHdpdGggImtsYW1hIiwgYnV0IGZvciB0aGUgYXJndW1lbnQgdG8g bWFrZSBzZW5zZSwgaXQgaGFzIHRvIHNheSAibnVua2xhIi4KCioqICgoQXBwcm92ZWQgRXJyYXR1 bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rp b24gNywgRXhhbXBsZSA3LjEgaGFzIGFzIHRoZSBFbmdsaXNoOiAiSSBnby10byAoZmlyc3RseSkg dGhlIHN0b3JlIGFuZCAoc2Vjb25kbHkpIHRoZSBtYXJrZXQuIiAgInRoZSBtYXJrZXQiIHNob3Vs ZCBiZSAidGhlIGhvdXNlIi4KCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92 ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIEV4YW1wbGUgMTEuOCwgdGhlcmUncyBh IGRlbnBhYnUgYWZ0ZXIge3phJ2V9IGFuZCBubyBkZW5wYWJ1IGFmdGVyIHthbGJlaW5pYXN9LgoK KiogJydJTkNMVURFRCBJTiBEQUctQ0xMJycgKHpvcnQncyBmb3JrIGF0IGxlYXN0KSBidXQgbmVl ZHMgYXBwcm92YWwKCgoKKiBTZWN0aW9uIDExLCB0aGUgcGFyYWdyYXBoIGFmdGVyIGV4YW1wbGUg MTEuOCBzYXlzICJjdGlpcHlyaXMiIGJ1dCBpdCBzaG91bGQgYmUgImNraWlweXJpcyIuICAoKEFw cHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCi0tLQoKCgohQ2hhcHRlciAyMAoKCgoq IFNlY3Rpb24gTEUsIHBhZ2UgNDk4LiBJbiAibGUgZ2Vya3Uga2xhbWEgbGUgemRhbmkiLCAiY3Ui IGlzIG1pc3NpbmcuCgoqKiAoKEFwcHJvdmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkg JydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBTZWN0aW9uIFRVaEUsIHBhZ2UgNTA1LiBJbiAi eGFnbWF1IHpvJ3UgdHUnZSBnYW5haSBjaWRqYSBnaSBjbmlubyAuaSBnYW5haSB2YW5qdSBnaSB0 b2xjaSdvIHR1J3UiLCAiY25pbm8iIHNob3VsZCBiZSByZXBsYWNlZCBieSAiY2l0bm8iLiAgQWxz bywgYSBwcmVuZXggY2FuJ3QgaGF2ZSBhIHNlbGJyaSwgc28gJyd4YWdtYXUnJyBzaG91bGQgYmUg cmVwbGFjZWQgYnkgJydsbyB4YWdtYXUnJy4KCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNt aXMgQXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gU0UsIHBh Z2UgNTA0OiBtaXNzaW5nICJjdSIgYWZ0ZXIgInphcmNpIi4KCioqICgoQXBwcm92ZWQgRXJyYXR1 bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIEluIHRo ZSBwYXNzYWdlcyBvbiBWRUkgYW5kIFZFaE8sIHRoZSAiYm8icyBzaG91bGQgYmUgY2hhbmdlZCB0 byAiYmknZSJzLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoKCi0tLQoK CgohQ2hhcHRlciAyMQoKCgoqIEluIHRoZSBCTkYgZ3JhbW1hciwgdGhlIHJ1bGUgc2ltcGxlLXRl bnNlLW1vZGFsLTk3MiBpcyBtaXNzaW5nIGEgInwiIGJlZm9yZSB0aGUgQ1VoRS4gICgoQXBwcm92 ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoKCgoqIEluIHRoZSBCTkYgZ3JhbW1hciwgdGhl IHJ1bGUgc2ltcGxlLXRlbnNlLW1vZGFsLTk3MiBoYXMgYW4gZXh0cmEgbmV3bGluZSBpbiB0aGUg c3BhY2UvdGltZSBzdWJwaHJhc2UuCgoKCiogSW4gdGhlIEJORiBncmFtbWFyLCB0aGUgcnVsZSBz ZWxicmktMS0xMzEgaXMgbWlzc2luZyBhICJ8IiBiZWZvcmUgdGhlIE5BLiAgKChBcHByb3ZlZCBF cnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoKCiogSW4gdGhlIEJORiBncmFtbWFyLCB0aGUgcnVs ZSB0YW5ydS11bml0LTItMTUyIGlzIG1pc3NpbmcgYSAifCIgYmVmb3JlIHRoZSBKQUkuICAoKEFw cHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiogKChBcHByb3ZlZCBFcnJhdHVt fGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnIDsgYml6YXJlbGx5 LCB0aGUgV29yZCBkb2MgdGhlIGJvb2sgd2FzIHByaW50ZWQgZnJvbSBkb2VzIG5vdCBoYXZlIHRo aXMgcHJvYmxlbSBhdCBhbGwuCgoKCiogSW4gdGhlIEJORiBncmFtbWFyLCB0aGUgcnVsZSBvcGVy YXRvci0xLTM3MSBpcyBtaXNzaW5nIHR3byAifCIuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2Fu IEFwcHJvdmVkKSkKCgoKKiBJbiB0aGUgQk5GIGdyYW1tYXIsIHRoZSBydWxlIG1leC1vcGVyYXRv ci0zNzQgaXMgbWlzc2luZyBhICJ8IiBiZWZvcmUgdGhlIE1BaE8gYW5kIGFub3RoZXIgYmVmb3Jl IHRoZSBWVWhVLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoKCiogSW4g dGhlIEJORiBncmFtbWFyLCB0aGUgcnVsZSBvcGVyYW5kLTMtMzg1IGlzIG1pc3NpbmcgYSAifCIg YmVmb3JlIHRoZSBOSWhFLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoK CiogSW4gdGhlIEJORiBncmFtbWFyLCBpbiB0aGUgcnVsZSB0aW1lXzEwMzAsIHRoZSAiWkVoQSBb UFUgW05BSV0gXSIgc2hvdWxkIGJlIGVuY2xvc2VkIGluIHBhcmVudGhlc2VzLiAgKChBcHByb3Zl ZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KV2lraW5ldXJvdGljIG1haWxpbmcgbGlzdApXaWtpbmV1cm90 aWNAbG9qYmFuLm9yZwpodHRwOi8vbWFpbC5sb2piYW4ub3JnL21haWxtYW4vbGlzdGluZm8vd2lr aW5ldXJvdGljCg==