Received: from localhost ([::1]:39710 helo=stodi.digitalkingdom.org) by stodi.digitalkingdom.org with esmtp (Exim 4.80.1) (envelope-from ) id 1YBJlF-0001xp-HU; Wed, 14 Jan 2015 00:57:09 -0800 Received: from 173-13-139-235-sfba.hfc.comcastbusiness.net ([173.13.139.235]:60334 helo=jukni.digitalkingdom.org) by stodi.digitalkingdom.org with smtp (Exim 4.80.1) (envelope-from ) id 1YBJlA-0001xi-CC for wikichanges@lojban.org; Wed, 14 Jan 2015 00:57:07 -0800 Received: by jukni.digitalkingdom.org (sSMTP sendmail emulation); Wed, 14 Jan 2015 00:57:04 -0800 From: "Apache" Date: Wed, 14 Jan 2015 00:57:04 -0800 To: wikichanges@lojban.org X-PHP-Originating-Script: 48:htmlMimeMail.php MIME-Version: 1.0 Message-ID: X-Spam-Score: 3.2 (+++) X-Spam_score: 3.2 X-Spam_score_int: 32 X-Spam_bar: +++ X-Spam-Report: Spam detection software, running on the system "stodi.digitalkingdom.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: The page CLL, aka Reference Grammar, Errata was changed by gleki at 08:56 GMT Comment: * Section 13, "and the undefined fu'ivla “speranto”." Replace "fu'ivla" with "lujvo". You can view the page by following this link: [...] Content analysis details: (3.2 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 2.7 DNS_FROM_AHBL_RHSBL RBL: Envelope sender listed in dnsbl.ahbl.org [listed in digitalkingdom.org.rhsbl.ahbl.org. IN] [A] 0.0 URIBL_BLOCKED ADMINISTRATOR NOTICE: The query to URIBL was blocked. See http://wiki.apache.org/spamassassin/DnsBlocklists#dnsbl-block for more information. [URIs: evergreenreview.com] 1.4 RCVD_IN_BRBL_LASTEXT RBL: No description available. [173.13.139.235 listed in bb.barracudacentral.org] -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] 1.0 RDNS_DYNAMIC Delivered to internal network by host with dynamic-looking rDNS Subject: [Wikichanges] Wiki page CLL, aka Reference Grammar, Errata changed by gleki X-BeenThere: wikichanges@lojban.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: webmaster@lojban.org Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: wikichanges-bounces@lojban.org VGhlIHBhZ2UgQ0xMLCBha2EgUmVmZXJlbmNlIEdyYW1tYXIsIEVycmF0YSB3YXMgY2hhbmdlZCBi eSBnbGVraSBhdCAwODo1NiBHTVQKQ29tbWVudDogKiBTZWN0aW9uIDEzLCAiYW5kIHRoZSB1bmRl ZmluZWQgZnUnaXZsYSDigJxzcGVyYW50b+KAnS4iIFJlcGxhY2UgImZ1J2l2bGEiIHdpdGggImx1 anZvIi4gCgpZb3UgY2FuIHZpZXcgdGhlIHBhZ2UgYnkgZm9sbG93aW5nIHRoaXMgbGluazoKIApo dHRwOi8vd3d3LmxvamJhbi5vcmcvdGlraS9DTEwlMkMlMjBha2ElMjBSZWZlcmVuY2UlMjBHcmFt bWFyJTJDJTIwRXJyYXRhCgpZb3UgY2FuIHZpZXcgYSBkaWZmIGJhY2sgdG8gdGhlIHByZXZpb3Vz IHZlcnNpb24gYnkgZm9sbG93aW5nIHRoaXMgbGluazogCmh0dHA6Ly93d3cubG9qYmFuLm9yZy90 aWtpL3Rpa2ktcGFnZWhpc3RvcnkucGhwP3BhZ2U9Q0xMJTJDJTIwYWthJTIwUmVmZXJlbmNlJTIw R3JhbW1hciUyQyUyMEVycmF0YSZjb21wYXJlPTEmb2xkdmVyPTIzMCZuZXd2ZXI9MjMxCgoKKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioK VGhlIGNoYW5nZXMgaW4gdGhpcyB2ZXJzaW9uIGZvbGxvdyBiZWxvdywgZm9sbG93ZWQgYWZ0ZXIg YnkgdGhlIGN1cnJlbnQgZnVsbCBwYWdlIHRleHQuCioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCgoKKy0rLSstKy0rLSstKy0rLSstKy0r LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKQEAgLUxpbmVzOiA1NzktNTgy IGNoYW5nZWQgdG8gK0xpbmVzOiA1NzktNTg0IEBACistKy0rLSstKy0rLSstKy0rLSstKy0rLSst Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCgoqIFNlY3Rpb24gMTEsIHRoZSBwYXJh Z3JhcGggYWZ0ZXIgZXhhbXBsZSAxMS44IHNheXMgImN0aWlweXJpcyIgYnV0IGl0IHNob3VsZCBi ZSAiY2tpaXB5cmlzIi4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQorIAor ICogU2VjdGlvbiAxMywgImFuZCB0aGUgdW5kZWZpbmVkIGZ1J2l2bGEg4oCcc3BlcmFudG/igJ0u IiBSZXBsYWNlICJmdSdpdmxhIiB3aXRoICJsdWp2byIuIAotLS0KCgoKCgoqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgpUaGUgbmV3IHBh Z2UgY29udGVudCBmb2xsb3dzIGJlbG93LgoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKgoKVGhpcyBwYWdlIGlzIGZvciBlcnJhdGEgaW4g KChUaGUgQ29tcGxldGUgTG9qYmFuIExhbmd1YWdlKSksIHRoYXQgaXMgZm9yIG1pc3Rha2VzIHN1 Y2ggYXMgdHlwb3MsIG9yIHNlbGYtY29udHJhZGljdGlvbnMsIG9yIGNvbnRyYWRpY3Rpb25zIHdp dGggb3RoZXIgYmFzZWxpbmVkIGxhbmd1YWdlIGRlZmluaXRpb24gbWF0ZXJpYWwuIFRoaXMgaXMg X19ub3RfXyBhIHBhZ2UgdG8gcHV0IGRlc2lkZXJhdGEgKHN1Z2dlc3Rpb25zIGZvciBpbXByb3Zl bWVudCk7IHN1Y2ggc3VnZ2VzdGlvbnMgc2hvdWxkIGdvIHRvICgoU3VnZ2VzdGlvbnMgZm9yIENM TCwgc2Vjb25kIGVkaXRpb24pKS4gIFRoaXMgaXMgYWxzbyBub3QgYSBwYWdlIHRvIHB1dCBlcnJh dGEgcmVzdWx0aW5nIGZyb20gdGhlIDR0aCBCYXNlbGluZSBHcmFtbWFyIHByb3Bvc2FsIChpLmUu LCB0aGUgKChQRUcpKSBncmFtbWFyKTsgUEVHIGdyYW1tYXIgZXJyYXRhIHNob3VsZCBnbyB0byAo KENMTCBQRUcgRXJyYXRhKSkuCgoKCkFuIG9ubGluZSB2ZXJzaW9uIG9mIHRoZSBDTEwgaW5jb3Jw b3JhdGluZyB0aGUgY2hhbmdlcyBvbiB0aGlzIHBhZ2UgW2h0dHA6Ly9sb2piYW4uZ2l0aHViLmNv bS9jbGwvfGlzIGF2YWlsYWJsZV0uCgoKClNlZSBhbHNvIFtXaGF0K2lzK0xvamJhbiUzRitlcnJh dGEmYmw9eXxXaGF0IGlzIExvamJhbj8gZXJyYXRhXSAoZm9yIHRoZSBwdWJsaXNoZWQgdmVyc2lv biksIExldmVsIDAgQm9va2xldCBFcnJhdGEgW3Rpa2ktZWRpdHBhZ2UucGhwP3BhZ2U9TGV2ZWwr MCtCb29rbGV0K0VycmF0YSZsYW5nPXw/XSAoZm9yIHRoZSBwcmUtcHVibGljYXRpb24gcmV2aWV3 czsgbm93IGZpbmlzaGVkKSwgYW5kIFtMZXNzb25zK0VycmF0YSZibD15fExlc3NvbnMgRXJyYXRh XSAoZm9yIHRoZSBiZWdpbm5lcnMnIGNvdXJzZSkuCgoKClRoZSAiJydJTkNMVURFRCBJTiBEQUct Q0xMJyciIHRhZyBtZWFucyB0aGF0IGh0dHA6Ly9sb2piYW4uZ2l0aHViLmNvbS9jbGwvIGluY2x1 ZGVzIHRoaXMgZml4LCB3aGljaCBhbHNvIG1lYW5zIGl0J2xsIHByb2JhYmx5IGJlIGluIHRoZSBu ZXh0IENMTCB2ZXJzaW9uLgoKCgotLS0KCgoKIUNoYXB0ZXIgMQoKCgoqIFRoZXJlIGlzIGEgcGFy YWdyYXBoIGF0IHRoZSB2ZXJ5IGJlZ2lubmluZyBvZiBDTEwsIG9uIHBhZ2UgNCwgd2l0aCB0aGUg c2VudGVuY2UgJyciSW4gZXNzZW5jZSwgQ2hhcHRlciAyIGdpdmVzIGEgYnJpZWYgb3ZlcnZpZXcg b2YgdGhlIGxhbmd1YWdlLCBDaGFwdGVyIDIxIGdpdmVzIHRoZSBmb3JtYWwgc3RydWN0dXJlIG9m IHRoZSBsYW5ndWFnZSwgYW5kIHRoZSBjaGFwdGVycyBpbiBiZXR3ZWVuIHB1dCBzZW1hbnRpYyBi b25lcyBvbiB0aGF0IGZvcm1hbCBmbGVzaC4iJycKCioqIFdvdWxkbid0IGl0IG1ha2UgbW9yZSBz ZW5zZSB0byBzYXkgInB1dCBzZW1hbnRpYyBmbGVzaCBvbiB0aG9zZSBmb3JtYWwgYm9uZXMiPyAo KEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xM JycKCgoKKiBTZWN0aW9uIDYsIGl0IHNheXMgIkxhcnJ5IEhvcm4ncyB3b3JrICcnVGhlIE5hdHVy YWwgSGlzdG9yeSBvZiBOZWdhdGlvbicnIi4gSXQgd291bGQgYXBwZWFyIHRoYXQgZXZlcnlvbmUg ZWxzZSBjYWxscyBpdCAnJ19fQV9fIE5hdHVyYWwgSGlzdG9yeSBvZiBOZWdhdGlvbicnLCBieSBf X0xhdXJlbmNlX18gKFIuKSBIb3JuLgoKKiogJydJTkNMVURFRCBJTiBEQUctQ0xMJycgKHpvcnQn cyBmb3JrIGF0IGxlYXN0KSBidXQgbmVlZHMgYXBwcm92YWwKCgoKLS0tCgohQ2hhcHRlciAyCgoK CiogU2VjdGlvbiA1IGV4YW1wbGUgNS43IHVzZXMgInRpIiB0byBwb2ludCBhdCBhIGxhbmd1YWdl LCBhbmQgc2hvdWxkIGhhdmUgaXRzIGFjY29tcGFueWluZyBub3RlIGNoYW5nZWQgdG8gbW9yZSBh Y2N1cmF0ZWx5IHJlZmxlY3QgdGhhdCB0aGlzIGlzIG5vdCBob3cgInRpIiB3b3Jrcy4KCgoKKiBT ZWN0aW9uIDYgRXhhbXBsZSA2LjUgaGFzICJjdSIgYXMgZWxpZGFibGUsIHdoZW4gaW4gZmFjdCBp dCBpcyBzaW1wbHkgaWxsZWdhbCB0aGVyZS4gIFJlbW92ZWQuICAnJ0lOQ0xVREVEIElOIERBRy1D TEwnJwoKKiogdWFuYWksIEkgc3RpbGwgc2VlICJjdSIgaW4gREFHLUNMTC4KCgoKKiBTZWN0aW9u IDggcGFnZSAxNyBjbGFpbXMgdGhhdCAieHUiIGlzIGRpc2N1c3NlZCBpbiBzZWN0aW9uIDEuNywg d2hpY2ggaGFwcGVucyB0byBsaXN0IHRoZSBjYXB0aW9ucyBmb3IgYWxsIHRoZSBjaGFwdGVyIHBp Y3R1cmVzLgoKKiogSXQgc2hvdWxkIHJlZmVyIHRvIFNlY3Rpb24gMTUuICAoKEFwcHJvdmVkIEVy cmF0dW18amNvd2FuIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCioqKiBUaGUg bGluayBpbiB0aGUgY3VycmVudCBEQUctQ0xMIGlzIHBvaW50aW5nIHRvICIyLzIvMTUiIGluc3Rl YWQgb2YgdG8gIjIvMTUiLgoKCgoqIFNlY3Rpb24gMTAgc2F5cyB0aGF0IGV4YW1wbGUgMTAuMyAo bWkgdGF2bGEgZG8gbGUgdGF2bGEga3UpIG1lYW5zIHRoZSBzYW1lIGFzIChtaSB0YXZsYSBkbyBs ZSB0YXZsYSBrdSkuIEV4YW1wbGUgMTAuMyBzaG91bGQgYmUgIm1pIHRhdmxhIGRvIGxlIHRhdmxh IiwgYXMgaXQgZGVzY3JpYmVzIGhvdyAia3UiIG1heSBiZSBvbWl0dGVkLgoKKiogSXQgYXBwZWFy cyB0aGF0IGV4YW1wbGUgMTAuMyBpcyBpbmNvcnJlY3Qgb25seSBpbiB0aGUgb25saW5lIHZlcnNp b24sIG5vdCB0aGUgcHVibGlzaGVkIGJvb2suCgoKCiogU2VjdGlvbiAxNyBzYXlzICJOb3RlIHRo YXQgRXhhbXBsZSAxNy4zICBoYXMgYW5kIHJlcXVpcmVzIGEg4oCcY3XigJ0gdG8gcHJldmVudCDi gJxiYWpyYeKAnSBhbmQg4oCca2xhbWHigJ0gZnJvbSBmb3JtaW5nIGEgdGFucnUsIGJ1dCBFeGFt cGxlIDE3LjQgIGFuZCBFeGFtcGxlIDE3LjUgIGxhY2sgdGhlIHVubmVjZXNzYXJ5IOKAnGN14oCd LiIsIGJ1dCBleGFtcGxlIDE3LjMgaXMgImxhIGRqYW4uIH5ucH5bY3Vdfi9ucH4ga2xhbWEgbGUg emFyY2kiLgoKKiogSXQgYXBwZWFycyB0aGF0IHRoZSBvZmZlbmRpbmcgc2VudGVuY2UgaXMgcHJl c2VudCBvbmx5IGluIHRoZSBvbmxpbmUgdmVyc2lvbiwgbm90IHRoZSBwdWJsaXNoZWQgYm9vay4K CgoKKiBFeGFtcGxlIDE3LjkgaXMgImxlIHZpIHRhdmxhIGt1IGN1IGJhIGtsYW1hIiBpbiB0aGUg b25saW5lIHZlcnNpb24sIGFuZCB0b3RhbGx5IGJyb2tlbiBpbiB0aGUgcHVibGlzaGVkIGJvb2su CgoqKiBHbyB3aXRoIHRoZSBvbmxpbmUgdmVyc2lvbi4gICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1n dXNtaXMgQXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIEV4YW1wbGUgMTcu OSBpbiBkYWctY2xsIGFzIG9mIDIwMTItMDUtMDUgaXMgImxlIHZpIHRhdmxhIH5ucH5ba3Vdfi9u cH4gY3UgYmEga2xhbWEiLiBTaW5jZSB0aGUgc2FtZSBzZWN0aW9uIGhhcyBleHBsYWluZWQgdGhh dCB0ZW5zZSB0YWdzIG1ha2UgImN1IiB1bm5lY2Vzc2FyeSwgSSB0aGluayB0aGUgZXhhbXBsZSBz aG91bGQgYmUgImxlIHZpIHRhdmxhIH5ucH5ba3VdIFtjdV1+L25wfiBiYSBrbGFtYSIuCgoKCi0t LQoKCgohIENoYXB0ZXIgMwoKCgpBIGxvdCBvZiB0aGUgSVBBIGV4YW1wbGVzIHVzZSBhIHNwYWNl IHRvIGluZGljYXRlIGEgc3lsbGFibGUgYnJlYWsuIFRoaXMgaXMgbm90IHN0YW5kYXJkIElQQSB1 c2FnZTsgYWNjb3JkaW5nIHRvIElQQSwgdGhlIHBlcmlvZCDigJwu4oCdIHNob3VsZCBiZSB1c2Vk IHRvIGluZGljYXRlIGEgc3lsbGFibGUgZGl2aXNpb24uCgoKCiogU2VjdGlvbiAyLCBwYWdlIDMw OiBpbiB0aGUgdGFibGUgdGhlIGRlc2NyaXB0aW9uIG9mICJhcG9zdHJvcGhlIiBzaG91bGQgcmVh ZCAiYW4gdW52b2ljZWQgZ2xvdHRhbCBzcGlyYW50Iiwgbm90ICJhIHVudm9pY2VkIi4KCioqICgo QXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1D TEwnJwoKCgoqIFNlY3Rpb24gMiwgZGlnaXRhbCB2ZXJzaW9uLiAgVGhlIElQQSB0YWJsZSBnb3Qg aG9ycmlibHkgbWFuZ2xlZCBzb21ld2hlcmUgYWxvbmcgdGhlIHdheS4gIEl0IHNob3VsZCBsb29r IGxpa2UgKFNBTVBBIGNvbHVtbiBhZGRlZCk6CgoKCnx8IExldHRlciB8IElQQSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHwgU0FNUEEgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB8IERlc2NyaXB0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAKCiAnICAgICAgfCBbaF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB8IFtoXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBh biB1bnZvaWNlZCBnbG90dGFsIHNwaXJhbnQgICAgICAgICAgICAgICAgICAgICAgCgogLCAgICAg IHwgLS0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAtLS0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgdGhlIHN5bGxhYmxlIHNlcGFyYXRv ciAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKIC4gICAgICB8IFvKlF0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB8IFs/XSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgfCBhIGdsb3R0YWwgc3RvcCBvciBhIHBhdXNlICAgICAgICAgICAgICAg ICAgICAgICAgCgogYSAgICAgIHwgW2FdLCBbyZFdICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHwgW2FdLCBbQV0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGFu IG9wZW4gdm93ZWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCiBiICAgICAg fCBbYl0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFtiXSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBhIHZvaWNlZCBiaWxhYmlhbCBzdG9w ICAgICAgICAgICAgICAgICAgICAgICAgICAgCgogYyAgICAgIHwgW8qDXSwgW8qCXSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB8IFtTXSwgW3NgXSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgfCBhbiB1bnZvaWNlZCBwb3N0YWx2ZW9sYXIgZnJpY2F0aXZlICAgICAg ICAgICAgICAgICAgICAgCgogZCAgICAgIHwgW2RdICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgfCBbZF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHwgYSB2b2ljZWQgZGVudGFsL2FsdmVvbGFyIHN0b3AgICAgICAgICAgICAgICAgICAgIAoKIGUg ICAgICB8IFvJm10sIFtlXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFtFXSwgW2Vd ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBhIGZyb250IG1pZCB2b3dl bCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgogZiAgICAgIHwgW2ZdLCBbybhdICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW2ZdLCBbcFxdICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB8IGFuIHVudm9pY2VkIGxhYmlhbCBmcmljYXRpdmUgICAgICAg ICAgICAgICAgICAgICAKCiBnICAgICAgfCBbyaFdICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgfCBbZ10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHwgYSB2b2ljZWQgdmVsYXIgc3RvcCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKIGkg ICAgICB8IFtpXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW2ldICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGEgZnJvbnQgY2xvc2Ugdm93 ZWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCiBqICAgICAgfCBbypJdLCBbypBdICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW1pdLCBbemBdICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB8IGEgdm9pY2VkIHBvc3RhbHZlb2xhciBmcmljYXRpdmUgICAg ICAgICAgICAgICAgICAgICAgICAKCiBrICAgICAgfCBba10gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB8IFtrXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgfCBhbiB1bnZvaWNlZCB2ZWxhciBzdG9wICAgICAgICAgICAgICAgICAgICAgICAgICAg CgogbCAgICAgIHwgW2xdLCBbbMypXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFts XSwgW2w9XSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBhIHZvaWNlZCBs YXRlcmFsIGFwcHJveGltYW50IChtYXkgYmUgc3lsbGFiaWMpICAgCgogbSAgICAgIHwgW21dLCBb bcypXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFttXSwgW209XSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBhIHZvaWNlZCBiaWxhYmlhbCBuYXNhbCAobWF5 IGJlIHN5bGxhYmljKSAgICAgICAgCgogbiAgICAgIHwgW25dLCBbbsypXSwgW8WLXSwgW8WLzKld ICAgICAgICAgICAgICAgICAgICAgfCBbbl0sIFtuPV0sIFtOXSwgW049XSAgICAgICAgICAgICAg ICAgICAgICAgICAgIHwgYSB2b2ljZWQgZGVudGFsIG9yIHZlbGFyIG5hc2FsIChtYXkgYmUgc3ls bGFiaWMpIAoKIG8gICAgICB8IFtvXSwgW8mUXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB8IFtvXSwgW09dICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBhIGJh Y2sgbWlkIHZvd2VsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgogcCAgICAgIHwg W3BdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBbcF0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgYW4gdW52b2ljZWQgYmlsYWJpYWwgc3Rv cCAgICAgICAgICAgICAgICAgICAgICAgIAoKIHIgICAgICB8IFtyXSwgW8m5XSwgW8m+XSwgW8qA XSwgW3LMqV0sIFvJucypXSwgW8m+zKldLCBbyoDMqV0gfCBbcl0sIFtyXF0sIFs0XSwgW1JcXSwg W3I9XSwgW3JcPV0sIFs0PV0sIFtSXD1dIHwgYSByaG90aWMgc291bmQgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIAoKIHMgICAgICB8IFtzXSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHwgW3NdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB8IGFuIHVudm9pY2VkIGFsdmVvbGFyIHNpYmlsYW50ICAgICAgICAgICAgICAgICAgICAK CiB0ICAgICAgfCBbdF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFt0XSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBhbiB1bnZvaWNlZCBk ZW50YWwvYWx2ZW9sYXIgc3RvcCAgICAgICAgICAgICAgICAgCgogdSAgICAgIHwgW3VdICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBbdV0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHwgYSBiYWNrIGNsb3NlIHZvd2VsICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIAoKIHYgICAgICB8IFt2XSwgW86yXSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICB8IFt2XSwgW0JdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgfCBhIHZvaWNlZCBsYWJpYWwgZnJpY2F0aXZlICAgICAgICAgICAgICAgICAgICAgIAoKIHgg ICAgICB8IFt4XSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGFuIHVudm9pY2VkIHZlbGFy IGZyaWNhdGl2ZSAgICAgICAgICAgICAgICAgICAgICAKCiB5ICAgICAgfCBbyZldICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBbQF0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHwgYSBjZW50cmFsIG1pZCB2b3dlbCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIAoKIHogICAgICB8IFt6XSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHwgW3pdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8 IGEgdm9pY2VkIGFsdmVvbGFyIHNpYmlsYW50ICAgICAgICAgICAgICAgICAgICAgICB8fAoKCgoq KiBTb3J0LW9mICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQpKTsgd2hhdCBJ IGFjdHVhbGx5IGRpZCBpcyBoYWQgQXJudCByZXZpZXcgd2hhdCBzb21lb25lIGVudGVyZWQgaW4g REFHLUNMTCwgd2hpY2ggcHJlc3VtYWJseSB3YXMgYmFzZWQgb24gdGhlIGFib3ZlLiAgJydJTkNM VURFRCBJTiBEQUctQ0xMJycKCgoKKiBTZWN0aW9uIDIsIHBhZ2UgMzAuIGZvciB0aGUgc2Vjb25k IGVuZyAoaW1tZWRpYXRlbHkgdG8gdGhlIGxlZnQgb2YgIihtYXkgYmUgc3lsbGFiaWMpIikgdGhl IHN5bGxhYmljaXR5IG1hcmtlciBpcyBjb25jZWFsZWQgYnkgdGhlIHJpZ2h0IHRhaWwuCgoqKiBJ IGNhbiBqdXN0IGJhcmVseSBzZWUgdGhlIG1hcmtlciB1bmRlciBhIGdvb2QgbGlnaHQuICAgKChB cHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoqKiogRm9yIGZ1dHVyZSBlZGl0aW9u cyA6LSkgLCBub3RlIHRoYXQgdGhlIElQQSBhcHByb3ZlcyBwdXR0aW5nIGRpYWNyaXRpY3MgYWJv dmUgcmF0aGVyIHRoYW4gYmVsb3cgdGhlIGxldHRlciBpbiBjYXNlcyBsaWtlIHRoZXNlLiBVbmZv cnR1bmF0ZWx5LCB0aGUgZm9udHMgaGl0aGVydG8gYXZhaWxhYmxlIGhhdmUgbm90IG1hZGUgdGhp cyBmYWNpbGl0eSBhdmFpbGFibGUsIHNvIG91dHNpZGUgdGhlIGpvdXJuYWwgb2YgdGhlIElQQSBp dHNlbGYsIHN1Y2ggb3Zlci1kaWFjcml0aWNzIGFyZSBzZWxkb20gc2Vlbi4g4oCUIG5pdGNpb24K CgoKKiBJbiBzZWN0aW9uIDMuMiwgdGhlIGNvbW1hIHNob3VsZCAocHJvYmFibHkpIGJlIHJlcHJl c2VudGVkIGJ5IHRoZSBJUEEgbm90YXRpb24gWy58Ll0sIGFzIHRoZSBwZXJpb2QgaXMgdXNlZCBp biBJUEEgdG8gZGVub3RlIHN5bGxhYmxlIGJyZWFrcy4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293 YW4gQXBwcm92ZWQpKQoKCgoqIFNlY3Rpb24gMiwgcGFnZSAzMC4gRm9yIHRoZSBMb2piYW4gcGhv bmVtZSAvci8sIHRoZSBJUEEgc3ltYm9sIGZvciBhIGRlbnRhbC9hbHZlb2xhciB2b2ljZWQgYXBp Y2FsIHRhcCBpcyBnaXZlbiB3aXRoIGEgc3lsbGFiaWNpdHkgbWFya2VyIGJlbG93LiBBIHRhcCBj YW4ndCBiZSBzeWxsYWJpYywgYmVjYXVzZSBpdCBpcyBieSBkZWZpbml0aW9uIGluc3RhbnRhbmVv dXMuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkgSnVzdCByZW1vdmUgdGhh dCBjYXNlIGFsdG9nZXRoZXIuCgoKCiogU2VjdGlvbiAyLiAgVGhlIGRlc2NyaXB0aW9ucyBvZiAn J2MnJyBhbmQgJydqJycgYXJlIGxpc3RlZCBhcyAiY29yb25hbCBzaWJpbGFudCJzLiAgVGhlIGRl c2NyaXB0aW9ucyBzaG91bGQgcmVhZCAidm9pY2VsZXNzIHBvc3RhbHZlb2xhciBmcmljYXRpdmUi IGFuZCAidm9pY2VkIHBvc3RhbHZlb2xhciBmcmljYXRpdmUiLCByZXNwZWN0aXZlbHkuICAoKEFw cHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBTZWN0aW9uIDMsIHRoaXJkIHBh cmFncmFwaCAocGFnZSAzMSk6ICJhIHVudm9pY2VkIHZvd2VsIGdsaWRlIiBzaG91bGQgYmUgImFu IHVudm9pY2VkIHZvd2VsIGdsaWRlIi4KCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMg QXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gNiwgcGFnZSAz Ni4gSVBBIGZvciB0aGUgdW5hY2NlcHRhYmxlIEFtZXJpY2FuIGZsYXAgdmFyaWFudCBvZiBpbnRl cnZvY2FsaWMgJyd0Jycgc2hvd3MgdGhlIEdBICcncicnIHNvdW5kICh1cHNpZGUtZG93biByKSBp bnN0ZWFkIG9mIHRoZSBmbGFwIChsaWtlIGFuIHIgd2l0aCBubyB2ZXJ0aWNhbCBiaXQgYXQgdGhl IHRvcCDigJQgc2VlIHRoZSBsaXN0IG9mIGFjY2VwdGlibGUgJydyJycgdmFyaWFudHMgb24gb24g cGFnZSA0NCB3aGVyZSBpdCBhcHBlYXJzIGNvcnJlY3RseSkgICgoQXBwcm92ZWQgRXJyYXR1bXxq Y293YW4gQXBwcm92ZWQpKQoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3Zl ZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlvbiA2LCBwYWdlIDM2LiAoU2Ft ZSBhcyBwcmV2aW91cyBlcnJhdHVtKSBUaGUgY29uc29uYW50IGlzIHJlZmVycmVkIHRvIGFzIGEg ZmxhcCwgd2hpbGUgaXQgaXMgYWN0dWFsbHkgYSB0YXAuICAoKEFwcHJvdmVkIEVycmF0dW18amNv d2FuIEFwcHJvdmVkKSkKCgoKKiBTZWN0aW9uIDcuIEluIGJldHdlZW4gdGhlIHNoYWRlZCBib3hl cywgImEgcGFpcmluZyBvZiB2b2ljZWQgYW5kIHVudm9pY2VkIGVxdWl2YWxlbnQgdm93ZWxzIiBz aG91bGQgcmVhZCAiYSBwYWlyaW5nIG9mIHZvaWNlZCBhbmQgdW52b2ljZWQgZXF1aXZhbGVudCBj b25zb25hbnRzIi4KCgoKKiBTZWN0aW9uIDgsIHBhZ2UgMzguIElQQSBmb3IgcHJvbnVuY2lhdGlv biBvZiAieGFwY2tlIiBoYXMgYyB3aGVyZSBpdCBzaG91bGQgaGF2ZSBTIChsb25nIHMpLiAgKChB cHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoKCiogU2VjdGlvbiA5LCBwYWdlIDQw LiBJUEEgZm9yIHByb251bmNpYXRpb24gb2YgImRpa3lqdm8iIGhhcyBqIHdoZXJlIGl0IHNob3Vs ZCBoYXZlIFogKHRoYXQgbGl0dGxlIHNjcmlwdCB6IHRoaW5nKSAgKChBcHByb3ZlZCBFcnJhdHVt fGpjb3dhbiBBcHByb3ZlZCkpCgoqKiAoKEFwcHJvdmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJv dmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBTZWN0aW9uIDEyLCBwYWdlIDQ2LiBX aGF0IHNob3VsZCBiZSB0aGUgQ3lyaWxsaWMgbGV0dGVyIDsgaXMgcHJpbnRlZCBhcyBzb21ldGhp bmcgdGhhdCBsb29rcyBsaWtlIHRoZSBHcmVlayBsZXR0ZXIgLiBJcyB0aGlzIG9ubHkgYSB0eXBv Z3JhcGhpY2FsIHZhcmlhbnQgb2YgdGhlIDssIG9yIGlzIGl0IGEgdmFyaWFudD8KCgoKKiogVGhp cyBlcnJhdHVtIGlzIGluZGVjaXBoZXJhYmxlIGFuZCBzaG91bGQgYmUgZHJvcHBlZCwgdW5sZXNz IHNvbWVvbmUgY2FuIHJlY29uc3RydWN0IGl0LiAgVGhlIEN5cmlsbGljIGxldHRlcnMgbG9vayBm aW5lLiAgLS1qY293YW4KCgoKKiBTZWN0aW9uIDEyLCBwYWdlIDQ2LiBSZXBsYWNlIHRoZSB3b3Jk cyAidGhlIGhhcmQgc2lnbiIgd2l0aCBhbiBhY3R1YWwgaGFyZCBzaWduLCBVKzA0NEEgQ1lSSUxM SUMgU01BTEwgTEVUVEVSIEhBUkQgU0lHTi4KCgoKKiBTZWN0aW9uIDEyLCBwYWdlIDQ3LiAiYXJl LyJlc3NlIiBzaG91bGQgcHJvYmFibHkgYmUgImFyZSIvImVzc2UiICh0aGUgYWN1dGUgb24gdGhl IGEgbWF5IG9yIG1heSBub3QgaGF2ZSBiZWVuIGxlZnQgb2ZmLCBidXQgdGhlIGNsb3NpbmcgcXVv dGUgYWZ0ZXIgYXJlIGlzIGRlZmluYXRlbHkgbWlzc2luZy4pCgoqKiBNeSBjb3B5IHNob3dzIHRo ZSBhY3V0ZS4KCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAnJ0lO Q0xVREVEIElOIERBRy1DTEwnJwoKCgotLS0KCgoKIUNoYXB0ZXIgNAoKCgoqIFNlY3Rpb24gNCwg cGFnZSA1NC4gVGhlIGJvb2sgc3RhdGVzIHRoYXQgZnUnaXZsYSB3aXRoIGEgZm9ybSBsaWtlICcn c3BhJ2knJyBhcmUgdmFsaWQuIFRoZXkgYXJlIG5vdCwgdGhleSBmYWlsIHRoZSBzbGlua3UnaSB0 ZXN0LiAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBE QUctQ0xMJycKCgoKKiBTZWN0aW9uIDYsIHAgNTgsICItbGFjIiBpbiB0aGUgdGhpcmQgdGFibGUg aW4gdGhhdCBzZWN0aW9uIHNob3VsZCBiZSAiLWxhYy0iCgoKCiogU2VjdGlvbiA2LCBpdCBzYXlz ICJNb3N0IGNtYXZvIHRoYXQgaGF2ZSByYWZzaSBhcmUgb25lcyB1c2VkIGluIGNvbXBvc2luZyB0 YW5ydSAoZm9yIGEgY29tcGxldGUgbGlzdCwgc2VlIENoYXB0ZXIgMTIpIiwgYnV0IHRoZXJlIGlz IG5vIHN1Y2ggbGlzdCBpbiBDaGFwdGVyIDEyLCBvciBhbnl3aGVyZSBpbiB0aGUgYm9vayAoanUn b3NhaSkuIFBlcmhhcHMgaXQgd2FudHMgdG8gcG9pbnQgdG8gdGhlIGxpc3Qgb2YgUEEgcmFmc2kg aW4gQ2hhcHRlciAxOCBzZWN0aW9uIDI1PyBPciB0byB0aGUgbGlzdHMgb2YgdGFucnUgaW4gQ2hh cHRlciA1IHNlY3Rpb25zIDE0IGFuZCAxNT8KCioqIFdoYXQgSSBwcm9iYWJseSBtZWFudCB3YXMg dGhhdCBDaGFwdGVyIDEyLCB0YWtlbiBhcyBhIHdob2xlLCBkaXNjdXNzZXMgdGhlIGNtYXZvIHVz ZWQgaW4gY29uc3RydWN0aW5nIHRhbnJ1LiAgSSBkb24ndCB0aGluayBhbnkgc3BlY2lmaWMgbGlz dCBldmVyIGV4aXN0ZWQuICBJJ2QganVzdCBkcm9wIHRoZSBwYXJlbnRoZXRpY2FsIHNlbnRlbmNl LgoKCgoqIFNlY3Rpb24gNiwganVzdCBhZnRlciBleGFtcGxlIDYuOS4gSXQgc2F5cyAic29tZSBv ZiB0aGUgdW5yZWR1Y2VkIGZvcm1zIGluIHRoZSBwcmV2aW91cyBleGFtcGxlIiwgYnV0IGl0IGlz IG5vdCByZWZlcnJpbmcgdG8gdGhlIHByZXZpb3VzIGV4YW1wbGU6IGl0IGlzIHJlZmVycmluZyBh bGwgdGhlIHdheSBiYWNrIHRvIGV4YW1wbGVzIDYuMSBhbmQgNi4yLCBzbyBpdCBzaG91bGQgYmUg InNvbWUgb2YgdGhlIHVucmVkdWNlZCBmb3JtcyBpbiB0aGUgcHJldmlvdXMgZXhhbXBsZV9fc19f Ii4KCioqICcnSU5DTFVERUQgSU4gREFHLUNMTCcnICh6b3J0J3MgZm9yayBhdCBsZWFzdCkKCihB cHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpICBSZWZlciBleHBsaWNpdGx5IHRvIDYu MSBhbmQgNi4yCgoKCiogU2VjdGlvbiA3LCBwYWdlIDYwLiBJbiBleGFtcGxlIDYuMTYsIHRoZSB3 b3JkICJ4YXJueWthcmNlIiBpcyBnbG9zc2VkIGFzICJ3YXItY2FyIi4gRWl0aGVyIHRoZSBnbG9z cyBzaG91bGQgYmUgdXBkYXRlZCB0byByZWZsZWN0IHRoZSB2ZWxqdm8gKCJzdHViYm9ybi1jYXIi KSwgb3IgdGhlIGx1anZvIHNob3VsZCBiZSB1cGRhdGVkIHRvIHJlZmxlY3QgdGhlIGdsb3NzICJq YW1rYXJjZSIKCioqIFRoZSBsYXR0ZXIgKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHBy b3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlvbiA3LCBtYWtpbmcgYSB0 eXBlIDMgZnUnaXZsYSwgc3RlcCA1IHNob3VsZCByZWFkICJzdGVwcyAxLTQiLCBub3QgInN0ZXBz IDEtNSIuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBTZWN0aW9u IDcsIHN0ZXAgNSBvZiB0aGUgU3RhZ2UgMyBmdSdpdmxhOiAiaWYgdGhlIHJhZnNpIGVuZHMgaW4g JydyJycgYW5kIHRoZSByZXN0IG9mIHRoZSBmdSdpdmxhIGJlZ2lucyB3aXRoICcnbicnIChvciB2 aWNlIHZlcnNhKSB1c2UgYW4gJydsJyctaHlwaGVuIiBzaG91bGQgcmVhZCAgImlmIHRoZSByYWZz aSBlbmRzIGluICcncicnIGFuZCB0aGUgcmVzdCBvZiB0aGUgZnUnaXZsYSBiZWdpbnMgd2l0aCAn J24nJywgJyd0YycnLCAnJ3RzJycsICcnZHonJyBvciAnJ2RqJycsIG9yIHRoZSByYWZzaSBlbmRz IGluICcnbicnIGFuZCB0aGUgcmVzdCBvZiB0aGUgZnUnaXZsYSBiZWdpbnMgd2l0aCAnJ3InJyB1 c2UgYW4gJydsJyctaHlwaGVuIi4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQp KQoKCgoqIFRoZSBlbmQgb2Ygc2VjdGlvbiA3IHNlZW1zIHRvIGltcGx5IHRoYXQgY21lbmUgYXJl IGV4ZW1wdCBmcm9tIHRoZSBub3JtYWwgcmVzdHJpY3Rpb25zIG9uIGNvbnNvbmFudCBjbHVzdGVy cyBhcyBsb25nIGFzIGVhY2ggY29uc29uYW50IHBhaXIgaXMgdmFsaWQuCgoKCiogU2VjdGlvbiA4 LiBFeGFtcGxlIDguMTAgJydkamFuZGpvbnonJyBpcyBub3QgdmFsaWQgbG9qYmFuIGFzIGl0IGNv bnRhaW5zIHRoZSBmb3JiaWRkZW4gY29uc29uYW50IHNlcXVlbmNlIGBuZGpgLiAgICAoKEFwcHJv dmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkgIFJlcGxhY2Ugd2l0aCBhIGRpZmZlcmVudCBu YW1lLgoKKiogUmVwbGFjaW5nIHdpdGggIkpvaG4gQnJvd24iIGFzICJkamFuYnJhdW4iLiAtLXJs cG93ZWxsICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlvbiA4LCBwYWdlIDY2LiBF eGFtcGxlIDguMTIuIFNheXMgdGhhdCB0aGUgZ2lzbXUgInNvbHJpIiBtZWFucyAiYWN0dWFsbHks ICdwZXJ0YWluaW5nIHRvIHRoZSBzdW4nIi4gVGhpcyBpcyBmYWxzZS4gQWNjb3JkaW5nIHRvIHRo ZSBnaXNtdSBsaXN0LCBpdCBtZWFucyAnJ2lzJydhIHN1bi4KCioqIExlYXZlIHRoaXMgb25lIGFs b25lLiAgQXMgYSBzZWx0YXUsICJzb2xyaSIgZG9lcyBpbmRlZWQgbWVhbiAic29sYXIiLiAgLS1q Y293YW4KCgoKKiBTZWN0aW9uIDExLCA1YSkgJydFeGFtaW5lIGFsbCB0aGUgQy9DIGNvbnNvbmFu dCBwYWlycyB0aGF0IGpvaW4gdGhlIENWQyByYWZzaSwgYW5kIGFsc28gdGhlIHBhaXIgYmV0d2Vl biB0aGUgbGFzdCBDVkMgYW5kIHRoZSBYIHBvcnRpb24sIGlnbm9yaW5nIGFueSAieSItaHlwaGVu IGJlZm9yZSB0aGUgWC4nJyBzaG91bGQgcmVhZCBpbnN0ZWFkOiAnJ0V4YW1pbmUgYWxsIHRoZSBD L0MgY29uc29uYW50IHBhaXJzIHVwIHRvIHRoZSBmaXJzdCAieSItaHlwaGVuLCBvciB1cCB0byB0 aGUgZW5kIG9mIHRoZSB3b3JkIGluIGNhc2UgdGhlcmUgYXJlIG5vICJ5Ii1oeXBoZW5zLicnCgoq KiAoKEFwcHJvdmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBE QUctQ0xMJycKCgoKKiBTZWN0aW9uIDEyLiBJbiBFeGFtcGxlcyAxMi4yLCAxMi4zIGFuZCAxMi40 IHRoZSBjYWxjdWxhdGlvbnMgYXJlIGdpdmVuIGFzIDMyNTAwIG1pbnVzIHRoZSBzY29yZSwgaW5z dGVhZCBvZiBzaW1wbHkgdGhlIHNjb3JlLiAoUHJvYmFibHkgZnJvbSBwcmV2aW91cyB2ZXJzaW9u cyBvZiB0aGUgYWxnb3JpdGhtLikgICAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3Zl ZCkpCgoKCiogU2VjdGlvbiAxMywgcGFnZSA3NCwgdGhpcmQgdGFibGU6IHRoZXJlIGlzIG5vIHNw YWNlIGJldHdlZW4gImxvamJhdWdyaSIgYW5kICJsb2piYW5neWdyaSIsIHNvIHRoYXQgdGhleSBh cmUgcnVuIGludG8gb25lIHdvcmQgaW4gdGhlIHNlY29uZCBjb2x1bW4gb2YgdGhlIHRhYmxlLiAg KChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoKCiogU2VjdGlvbiAxNSBzdGF0 ZXMgdGhhdCAiZHppcG8iIGNvbWVzIGZyb20gImNhZHp1IGNpcG5pIiAoIndhbGtpbmcgYmlyZCIp LiAgVGhpcyBmYWlscyB0byBtYWtlIHNlbnNlIGVpdGhlciBldHltb2xvZ2ljYWxseSBvciBzZW1h bnRpY2FsbHkgKElmIHRoZSBuYW1lIHJlZmVycyB0byBwZW5ndWlucywgdGhlcmUgYXJlIGEgbG90 IG9mIG90aGVyIGZlYXR1cmVzIG9mIEFudGFyY3RpY2EgdGhhdCBhcmUgbW9yZSBwcm9taW5lbnQg YW5kIG5vdCBzaGFyZWQgYnkgb3RoZXIgcGxhY2VzKS4gIEkgc3VzcGVjdCB0aGF0IHRoZSB3b3Jk IG1heSBhY3R1YWxseSBjb21lIGZyb20gImRpemxvIGRhcGx1IiAoImxvdyBpc2xhbmQiKSwgd2hp Y2ggaXMgYSBzb21ld2hhdCBtb3JlIHJlYXNvbmFibGUgbmFtZS4KCioqIE5vdCBhbiBlcnJhdHVt LCB0aGUgd29yZCByZWFsbHkgZG9lcyBjb21lIGZyb20gImNhRFp1IGNJUG5pIi4gVGhhdCBpdCBm YWlscyB0byBtYWtlIHNlbnNlIGRvZXNuJ3QgY2hhbmdlIHRoZSBmYWN0IHRoYXQgdGhhdCBpcyBo b3cgdGhleSBjb25zdHJ1Y3RlZCBpdC4gVGhlIGV0eW1vbG9naWVzIG9mICJiZW1ybyIgYW5kICJr ZXRjbyIgbWFrZSBldmVuIGxlc3Mgc2Vuc2UsIGJ5IHRoZSB3YXkuCgoqKiogQ29ycmVjdCwgYnV0 IHRoZSBldHltb2xvZ2llcyBhcmUgd2hhdCB0aGV5IGFyZS4gIC0tamNvd2FuCgoKCi0tLQoKCgoh Q2hhcHRlciA1CgoKCiogU2VjdGlvbiA2LCBleGFtcGxlIDYuMTU6IEl0IHNheXMge3hhbWd1IGpv IGNvcnR1IG51bnRhdmxhfSwgYW5kIHRoZSBnbG9zcyBzYXlzIHsoZ29vZCBpZi1hbmQtb25seS1p ZiBzaG9ydCkgc3BlZWNofSwgYnV0IHtjb3J0dX0gbWVhbnMgImh1cnQiLCBub3QgInNob3J0Ii4K CioqICcnSU5DTFVERUQgSU4gREFHLUNMTCcnICAoY2hhbmdlZCB0byB7dG9yZHV9KSAoaW4gem9y dCdzIGZvcmsgYXQgbGVhc3QpICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoK CgoqIEV4YW1wbGUgNi4xNjogdmFqbmkganUgc2VscGx1a2EgbnVudGF2bGEgLCAgKGltcG9ydGFu dCB3aGV0aGVyLW9yLW5vdCBwbGVhc2luZykgZXZlbnQtb2YtdGFsa2luZwoKKiogU2hvdWxkIGJl IHBsdWthLCBub3Qgc2VscGx1a2EuICAoKEFwcHJvdmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJv dmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBTZWN0aW9uIDggc2F5cyAiaW52b2x2 aW5nIHNlbG1hJ28gVk9oQSBhbmQgR09oSSwgZXhwbGFpbmVkIGluIENoYXB0ZXIgNyIsIGJ1dCBW T2hBIGRvZXNuJ3QgYXBwZWFyIGluIENoYXB0ZXIgNy4gVk9oQSBkb2Vzbid0IGV2ZW4gc2VlbSB0 byBiZSBhIHNlbG1hJ28sIGZvciB0aGF0IG1hdHRlci4gQWxzbywgcHJvYmFibHkgR09oSSBzaG91 bGQgYmUgR09oQT8KCgoKKiBTZWN0aW9uIDgsIHBhZ2UgOTYvOTc6IEV4YW1wbGUgOC4xMyBuZWVk cyBzb21lIGtpbmQgb2YgdGVybWluYXRvciAobGlrZSAiYmUnbyIpIGJlZm9yZSB0aGUgImNvIi4g ICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBBbHNvLCB0aGUgcHJl Y2VkaW5nIHBhcmFncmFwaCBzdWdnZXN0cyB0aGF0ICJiZSIgaXMgdGhlIG9ubHkgd2F5IHRvIGZp bGwgc2VsYnJpIHBsYWNlcyBvdGhlciB0aGFuIHgxLiBUaGlzIGlzIG5vdCB0aGUgY2FzZTogIm1p IGxlIHphcmNpIGN1IGtsYW1hIGNvIHN1dHJhIiB3b3VsZCBhbHMKCm8gd29yay4KCioqIEkgZG9u J3QgYWdyZWUgdGhhdCB0aGVyZSdzIGFueSBzdWNoIHN1Z2dlc3Rpb24sIGFsdGhvdWdoIGFkZGlu ZyBhIHNlY29uZCBwb3NzaWJpbGl0eSBpcyBmaW5lIHdpdGggbWUuICAtLWpjb3dhbgoKCgoqIFNl Y3Rpb24gOSBsaXN0cyAia2VpIiBhcyB0aGUgdGVybWluYXRvciBmb3IgbnUsIGJ1dCBpdCdzIG5v dCBvbmx5IGZvciBudSwgYnV0IGZvciBhbGwgb2YgTlUuICAoKEFwcHJvdmVkIEVycmF0dW18amNv d2FuIEFwcHJvdmVkKSkKCgoKKiBTZWN0aW9uIDE0LCBwYWdlIDEwNCBzYXlzICJkYWR5bHNpIiBm b3IgImRhZHlzbGkiLgoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkp ICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlvbiAxNCwgcGFnZSAxMDUgdXNlcyAi emRhbmkgbGlqZ3JpIiBpbiB0aGUgZXhhbXBsZSBsaXN0LCBidXQgdGhlIHBhcmFncmFwaCBhZnRl ciwgYXMgd2VsbCBhcyB0aGUgbmV4dCBsaXN0LCByZWZlciB0byAiemRhbmkgbGluamkiIGFuZCAi bGluamkgemRhbmkiLgoKCgoqIFNlY3Rpb24gMTQsIHBhZ2UgMTA1IGhhcyB0aGUgbHVqdm8gImNw dW1pJ2kiIGJ1dCBkZWZpbmVzIGl0IGF0IHRoZSBib3R0b20gb2YgdGhlIHNldCBhcyAiY3BhbWkn aSIuCgoqKiBjdWFtaSdpIHMgcHVsbC1tYWNoaW5lLCBzbyB1c2luZyB0aGF0ICgoQXBwcm92ZWQg RXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoq IFNlY3Rpb24gMTQsIHBhZ2UgMTA2IHNheXMgInBsaXNlIHRhcGxhIiBmb3IgImFwcGxlIGNha2Ui LiBEb2VzIFR1cmtpc2ggcmVhbGx5IHJlZmVyIHRvIGEgY2FrZSBhcyBhIHRpbGUsIG9yIGlzIHRo aXMgYSBtaXN1bmRlcnN0YW5kaW5nIG9mIHRoZSBkZWZpbml0aW9uIG9mICJ0YXBsYSI/CgoqKiBO bywgaXQncyB0aGF0IHt0YXBsYX0gY2FuIG1lYW4gYm90aCBjYWtlIGFuZCB0aWxlLCBhcyB0aGUg Z2lzbXUgbGlzdCBzaG93czsgaXQncyBhIGdlbmVyaWMgd29yZCBmb3IgYSBmbGF0IDMtRCBzaGFw ZSwgb3Igc2hvcnQgY3lsaW5kZXIuICBTdGV0LiAgLS1qY293YW4KCgoKKiBTZWN0aW9uIDE0LCBw YWdlIDEwOCBzYXlzICJ0dW1sYSBzcGlzYSIuIFRoaXMgc2hvdWxkIHByb2JhYmx5IGJlICJ0dW1s YSBwYWdidSIsIHNpbmNlIHBpZWNlcyBvZiBsYW5kIGFyZSBub3QgYWN0dWFsbHkgZGV0YWNoZWQu CgoqKiBXaGF0IG1ha2VzIHlvdSB0aGluayB0aGF0IHNwaXNhIGhhdmUgdG8gYmUgZGV0YWNoZWQ/ ICBTdGV0LiAgLS1qY293YW4KCgoKKiBTZWN0aW9uIDE0LCBwYWdlIDEwOSBzYXlzICJyb3N0dSBt b2p5c3UnYSIuICJyb3N0dSIgaXMgbm90IGEgTG9qYmFuIGdpc211LCBub3IgYW4gT2xkIExvZ2xh biBwcmltaXRpdmUuIEl0J3Mgc3VwcG9zZWQgdG8gYmUgIm1yb3N0Cgp1Ii4KCioqICJNcm9zdHUi IGlzIGNvcnJlY3QsIGFuZCB0aGF0J3MgdGhlIHJlYWRpbmcgb2YgdGhlIG9ubGluZSB2ZXJzaW9u LiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoKCiogU2VjdGlvbiAxNCwg Im51bmtpbGJyYSIgaXMgY2xlYXJseSBub3QgInNoYXJwZW5lciIsIGFuZCBldmVuIGlmIGl0IHdh cyB1c2luZyB0aGUgcmlnaHQgcmFmc2kgZm9yIGNhYnJhLCB0aGF0IHN0cmlrZXMgbWUgYXMgYSBw cmV0dHkgY3JhcHB5IGx1anZvOyBuZWVkcyB6ZW5iYSBvciB6bWFkdSBvciBiaW54byBvciBzb21l dGhpbmcuCgoKCiogU2VjdGlvbiAxNCwgcGFnZSAxMTIgbGlzdHMgbnVtZXJvdXMgdGFucnUgZXhh bXBsZXMgd2hvc2UgbWVhbmluZ3MgYXJlIGh5cGVybnltcyBvZiB0aGUgdGVydGF1IGluc3RlYWQg b2YgaHlwb255bXMuIFRoaXMgY29udHJhZGljdHMgdGhlIHByaW1hcmluZXNzIG9mIHRoZSB0ZXJ0 YXUgYXMgZGVmaW5lZCBvbiBwYWdlIDg0LiBUaGUgd29yZCAiamEiIHNob3VsZCBwcm9iYWJseSBi ZSBpbnNlcnRlZCBiZXR3ZWVuIHRoZSBjb25zdGl0dWVudHMsIG9yIHRoZSBlbnRpcmUgc2VjdGlv biBzaG91bGQgYmUgcmVtb3ZlZC4KCioqIFN0ZXQuICBMaW9ucyBjYW4ndCBiZSBtYWRlIG9mIHN0 b25lLCBidXQge3Jva2NpIGNpbmZvfSBpcyBhIGxlZ2l0aW1hdGUgdGFucnUgbm9uZXRoZWxlc3Mu ICAtLWpjb3dhbgoKCgotLS0KCgoKIUNoYXB0ZXIgNgoKCgoqIEVuZCBvZiBzZWN0aW9uIDIsIGl0 IHNheXMgImNvbXBvdW5kIG5lZ2F0b3IgYGBuYWt1JycgKGRpc2N1c3NlZCBpbiBDaGFwdGVyIDE1 KSIsIGJ1dCAibmFrdSIgaXMgbmV2ZXIgbWVudGlvbmVkIGluIGNoYXB0ZXIgMTU7IGluZGVlZCwg dGhlIG9ubHkgdXNlcyBvZiB0aGUgd29yZCB7a3V9IGF0IGFsbCBhcmUgYWZ0ZXIgdGhlIHdvcmRz IHtqaSd1fSBvciB7bmEnaX0uIENoYXB0ZXIgMTYgdGFsa3MgYWJvdXQge25ha3V9LgoKKiogJydJ TkNMVURFRCBJTiBEQUctQ0xMJycgKHpvcnQncyBmb3JrIGF0IGxlYXN0KSBidXQgbmVlZHMgYXBw cm92YWwKCgoKKiBTZWN0aW9uIDEyLCBwLiAxMzggY2xhaW1zIHRoYXQgdGhlIHN1bXRpIGluIGV4 YW1wbGVzIDEyLjIgYW5kIDEyLjMgb3BlcmF0ZSBsaWtlIGV4YW1wbGVzIDIuNSBhbmQgMy42IHJl c3BlY3RpdmVseS4gIjIuNiBhbmQgMy42IiBpcyBhbG1vc3Qgc3VyZWx5IHdoYXQgd2FzIG1lYW50 LiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFH LUNMTCcnCgoKCiogSW4gc2VjdGlvbiAxMSBFeGFtcGxlIDExLjIgb2NjdXJzIHR3aWNlLgoKKiog KChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFH LUNMTCcnCgoKCiogU2VjdGlvbiAyIGhhcyBleGFtcGxlcyAyLjMgYW5kIDIuNSB0byBzaG93IHRo ZSBkaWZmZXJlbmNlIGJldHdlZW4ge2xvfSBhbmQge2xlfS4gRXhhbXBsZSAyLjUgYW5kIHRoZSBz dWJzZXF1ZW50IHRleHQgc2F5IHRoYXQge2xvIG5hbm11IGN1IG5pbm11fSBpcyBuZWNlc3Nhcmls eSBmYWxzZSBpbiBsb2piYW4gc2luY2Uge25vZGEgbmFubXUgZ2knZSBuaW5tdX0uIFRoaXMgY29u dHJpYnV0ZXMgdG8gdHJhbnMtZXJhc3VyZSwgYW5kIHNob3VsZCBiZSByZXZpc2VkLgoKCgoqIElu IHNlY3Rpb24gNSBiZXR3ZWVuIGV4YW1wbGVzIDUuMiBhbmQgNS4zLCBpdCBzYXlzIHRoYXQgdGhl IHR5cGljYWwgbGlvbiBiZXN0IGV4ZW1wbGlmaWVzIHRoZSBzZXQgb2YgbGlvbnMuIFRoaXMgaXMg ZmFsc2UsIGl0IGV4ZW1wbGlmaWVzIG5vdCB0aGUgc2V0LCBidXQgdGhlIG1lbWJlcnMgb2YgdGhh dCBzZXQuCgoKCi0tLQoKCgohIENoYXB0ZXIgNwoKKiBTZWN0aW9uIDUuIGh0dHA6Ly9sb2piYW4u Z2l0aHViLmlvL2NsbC83LzYvaW5kZXguaHRtbC4gNi4xNCBpcyB1c2FnZSB3aXRoIG91dGVyIHJl cGVhdGluZy4gSXQgd291bGQgc2VlbSB0aGF0IHdhcyBhIG1pc3Rha2UuIExvb2tpbmcgYXQgdGhh dCwgaXQgc2VlbXMgbGlrZSB0aGUgYXV0aG9yIGV4cGVjdHMge25laX0gdG8gcmVwZWF0IHRoZSBl bnRpcmUgb3V0ZXJtb3N0IGJyaWRpLCBhbmQgZXhwZWN0cyB7bm8nYX0gdG8gcmVwZWF0IHRoZSBv dXRlciBicmlkaSBhbG9uZSwgc29tZWhvdyB3aXRob3V0IHRoZSBjdXJyZW50IGlubmVybW9zdCBi cmlkaS4gT3Igc29tZXRoaW5nLiBEZWZpbml0ZWx5IHNlZW1zIG1pc3Rha2VuIHRvIG1lLiBzbyB3 aXRoIHpvJ2UgaW4gcGxhY2Ugb2YgdGhlIGFic3RyYWN0aW9uIGNsYXVzZS4gSW4gdGhpcyBjYXNl LCBtYXliZSB3aXRoIHt6aSdvfSwgYWN0dWFsbHkuCgpUaGF0IHdvdWxkIGJlIHVzZWZ1bCBidXQg aXQgd291bGQgYmUgbmljZSBpZiB0aGF0IGhhZCBiZWVuIGV4cGxpY2l0LgoKKiBTZWN0aW9uIDYs IHBhZ2UgMTU1IGhhcyBhIG5vdGUgYmVsb3cgZXhhbXBsZSA2LjEzIHRoYXQgc2F5cywgaW4gcGFy dDogIlRoZSBMb2piYW4gZG9lcyBub3QgY29udGFpbiBhbiBlcXVpdmFsZW50IG9mIHRoZSAibXki IGluIGNvbGxvcXVpYWwgRW5nbGlzaDsiIGFuZCB0aGVuIGdvZXMgb24gdG8gZXhwbGFpbiBob3cg ZXhhbXBsZSA2LjEzIGNvdWxkIGJlIG1vZGlmaWVkIHRvIGluY2x1ZGUgIHRoZSByZWxhdGlvbnNo aXAgYmV0d2VlbiB0aGUgc3BlYWtlciBhbmQgdGhlaXIgc29uIGFuZCBkYXVnaHRlci4gIEkgYmVs aWV2ZSB5b3UgY291bGQgc2F5ICJsZSBtaSBiZXJzYSIgb3IgImxlIGJlcnNhIHBlIG1pIiB0byBl eHByZXNzIHRoZSBFbmdsaXNoICJteSwiIHRoZXJlZm9yIHJlbW92aW5nIHRoZSAocHJlc3VtYWJs eSBpbmFjY3VyYXRlKSBub3RlIGFuZCBtYWtpbmcgdGhlIExvamJhbiB0cmFuc2xhdGlvbiBtb3Jl IGFjY3VyYXRlLgoKKiogU3VyZSB5b3UgY291bGQsIGJ1dCB0aGUgcG9pbnQgb2YgdGhlIG5vdGUg KHdoaWNoIGlzICcnbm90JycgaW5hY2N1cmF0ZSkgaXMgbm90IHRlYWNoaW5nIGhvdyB0byB1c2Ug cmVsYXRpdmUgY2xhdXNlcywgYnV0IHRvIGNsYXJpZnkgdGhhdCB0aGUgaWRpb21hdGljIEVuZ2xp c2ggdmVyc2lvbiBjb250YWlucyBtb3JlIGluZm9ybWF0aW9uIHRoYW4gdGhlIExvamJhbiB2ZXJz aW9uIGRvZXMuICBTdGV0LgoKCgoqIFNlY3Rpb24gNiwgcGFnZSAxNTYgaGFzICcna2FyY2EnJyBm b3IgJydrYXJjZScnLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoKCiog QWZ0ZXIgZXhhbXBsZSA2LjE4IGlzIGEgcGFyYWdyYXBoIHRoYXQgcXVvdGVzIG5vbi1leGlzdGVu dCB0ZXh0IGZyb20gZXhhbXBsZSA2LjEwLiAgImdvJ2UgcmEnbyIgc2hvdWxkIHJlYWQgImdvJ2kg cmEnbyIgYW5kICJkbyBnbydlIiBzaG91bGQgcmVhZCAibWkgZ28naSIKCioqIFRoZSBjb3JyZWN0 IGNvcnJlY3Rpb24gaXMgdG8gcmVwbGFjZSAiQidzIHN0YXRlbWVudCIgd2l0aCAiQSdzIHNlY29u ZCBzdGF0ZW1lbnQiLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoqKiog Tm90IHJlYWxseS4gImdvJ2UgcmEnbyIgaW4gQSdzIHNlY29uZCBzdGF0ZW1lbnQgd291bGQgbWVh biB0aGUgc2FtZSBhcyAiZ28nZSIsIHdoaWNoIGlzIHdyb25nLiBUaGUgb3JpZ2luYWwgY29ycmVj dGlvbiBpcyB2YWxpZCB0aG91Z2guCgoKCipTZWN0aW9uIDYsIHRoZSBleGNlcHRpb25zIHRvIHRo ZSBhbmFwaG9yYSBydWxlcyBhcmUgYWxtb3N0IGNlcnRhaW5seSBpbmNvbXBsZXRlLiBJbiBwYXJ0 aWN1bGFyICJtYSIgYW5kICJjZSd1IiBkZWZpbml0ZWx5IHdhcnJhbnQgZXhjZXB0aW9ucy4KCgoK KiBTZWN0aW9uIDcsIGV4YW1wbGUgNy43IGhhcyAibWkgemJhc3UgbG9pIG11ZHJpIHppJ28iIGZv ciAibWkgemJhc3UgbGUgZGluanUgemknbyIKCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNt aXMgQXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gOCwgcC4g MTU4IGltcGxpZXMgdGhhdCAnJ3ZvJ2EnJy1zZXJpZXMgYW5hcGhvcmEgcmVmZXIgdG8gc3VtdGkg b2YgdGhlIGJyaWRpIHRoZXkgdGhlbXNlbHZlcyBhcmUgc3VtdGkgb2YuIFRoaXMgY29udHJhZGlj dHMgdGhlIGNtYXZvIGxpc3QsIGFuZCBpcyBpbmNvcnJlY3Q6ICcndm8nYScnLXNlcmllcyBhbmFw aG9yYSAoYWNjb3JkaW5nIHRvIHRoZSBtYSdvc3RlKSByZWZlciB0byBzdW10aSBvZiB0aGUgb3V0 ZXJtb3N0IGJyaWRpIHdpdGhpbiB0aGUgY3VycmVudCBzZW50ZW5jZS4gVGhpcyBtYWtlcyB0aGVt IGxvZ29waG9ycy9sb25nIGRpc3RhbmNlIHJlZmxleGl2ZXMsIHJhdGhlciB0aGFuIHNob3J0LWRp c3RhbmNlIHJlZmxleGl2ZXMsIGFzIGlzIG5vcm1hbCBpbiBodW1hbiBsYW5ndWFnZS4gVGh1cywg aW4gJydtaSBuZWxjaSBsZW51IGRvIHByYW1pIHZvJ2EnJywgJyd2bydhJydtZWFucyAnJ21pJycs IG5vdCAnJ2RvJycuCgoqKl9fLS0+X18oKFdoeSB0aGUgQm9vayBpcyBSaWdodCBhbmQgdGhlIG1h J29zdGUgaXMgV3JvbmcpKQoKKioqV2hpY2ggb2YgdGhlIHR3byBjYXNlcyBpcyBub3JtYWwgaW4g aHVtYW4gbGFuZ3VhZ2U/IElmIHlvdSdkIHdyaXR0ZW4gaXQgaW4gTG9qYmFuLCBJJ2Qga25vdyEK CioqKiogSSdkIGd1ZXNzIHRoYXQgc2hvcnQtZGlzdGFuY2UgaXMgbm9ybWFsLCBiL2Mgb3RoZXJ3 aXNlIGl0IHdvdWxkIG5vdCBiZSB3b3J0aCBjb21wYXJpbmcgdGhlIHR3by4gQnV0IG9mIGNvdXJz ZSBpbiBsb2piYW4gd2Ugd291bGRuJ3QgaGF2ZSB0byBnbG9yayB0aGF0LgoKKioqKiogU2hvcnQt ZGlzdGFuY2UgaXMgaW5kZWVkIG5vcm1hbCwgYnV0IExvamJhbmlzdHMgaGF2ZSBjb25zaXN0ZW50 bHkgdXNlZCBsb25nLWRpc3RhbmNlLiAgTmljayB3cm90ZSBhIHBlZXItcmV2aWV3ZWQgcGFwZXIg b24gdGhpcy4gIC0tamNvd2FuCgoKCiogRXhhbXBsZSA3LjguNSAocDE1OSk6IGJhanJhIG9uIHRo aXJkIGxpbmUgc2hvdWxkIGJlIGJhanlrbGEsIGxpa2UgdGhlIG90aGVycy4KCioqICgoQXBwcm92 ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoK CgoqIFNlY3Rpb24gOCwgaXQgc2F5cyAiRXhhbXBsZSA5LjMgaXMgYSB0cnVseSBwcmVnbmFudCBx dWVzdGlvbi4uLiIgd2hlbiBleGFtcGxlIDkuMiBpcyB0aGUgcHJlZ25hbnQgcXVlc3Rpb24sIGFu ZCBleGFtcGxlIDkuMyBpcyBhIGJldHRlciB3YXkgb2YgZXhwcmVzc2luZyAiV2hvIGFyZSB5b3U/ IgoKCgoqIFNlY3Rpb24gMTUsIGl0IHNheXMgIkZpbmFsbHksIGx1anZvIGludm9sdmluZyBgYHpp J28nJyBhcmUgYWxzbyBwb3NzaWJsZSwgYW5kIGFyZSBmdWxseSBkaXNjdXNzZWQgaW4gQ2hhcHRl ciAxMiIsIGJ1dCBub3doZXJlIGRvZXMgQ2hhcHRlciAxMiBtZW50aW9uIHRoZSB3b3JkIHt6aSdv fSwgbXVjaCBsZXNzIGx1anZvIGludm9sdmluZyBpdC4gVGhpcyBpcyBwcm9iYWJseSBhIENoYXB0 ZXIgMTIgZXJyYXR1bS4KCi0tLQoKCgohQ2hhcHRlciA4CgoKCiogU2VjdGlvbiAxLiBFeGFtcGxl IDEuOCBpcyBzYWlkIHRvIGJlIGVxdWl2YWxlbnQgdG8gRXhhbXBsZSAxLjQsIHdoZW4gaXQgaXMg aW5zdGVhZCBlcXVpdmFsZW50IHRvIEV4YW1wbGUgMS41LgoKCgoqIEluIFNlY3Rpb24gMyB0aGUg ZXhhbXBsZSAzLjIwIHNob3VsZCBoYXZlIHt4YW5jZX0gaW5zdGVhZCBvZiB7eGFuY2l9LCB3aGlj aCBpcyBkZWZpbml0ZWx5IGEgdHlwby4gLS1pZG9udGtudwoKKiogKChBcHByb3ZlZCBFcnJhdHVt fGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlv biA4LCBwLiAxODE6ICA4LjEpICcnbGkgcGFpIG5vaSBuYSdlIGZyaW51IG5hbWN1JydzaG91bGQg YmUgJydsaSBwYWkgbm9pIG5hJ2UgZnJpbnUgY3UgbmFtY3UnJy4gICgoQXBwcm92ZWQgRXJyYXR1 bXxqY293YW4gQXBwcm92ZWQpKQoKCgoqIFNlY3Rpb24gOCwgRXhhbXBsZSA4LjYsIHRoZSB0aGly ZCBsaW5lLCAiSSBydW5uaW5nbHktZ28gdG8tdGhpcyBbcmVjaXByb2NpdHldIFt4MyBvZiB0aGlz IGJyaWRpXSBmcm9tLXRoYXQiLCBpcyBub3QgdGhlIHVzdWFsIGRlY2VudCBFbmdsaXNoIG9uZSB3 b3VsZCBleHBlY3QgaW4gdGhhdCBwb3NpdGlvbjsgcmVwbGFjZWQgd2l0aCAiSSBydW4gdG8gdGhp cyBmcm9tIHRoYXQgYW5kIHZpY2UgdmVyc2EuIiBpcyBkYWctY2xsICcnSU5DTFVERUQgSU4gREFH LUNMTCcnCgoKCiogU2VjdGlvbiA5LCBleGFtcGxlIDkuMiBpcyAnJ2NvJ28geGlybWEnJy4gVGhl biwgJydOb3RlIHRoYXQgRXhhbXBsZSA5LjIgc2F5cyBmYXJld2VsbCB0byBzb21ldGhpbmcgd2hp Y2ggZG9lc27igJl0IHJlYWxseSBoYXZlIHRvIGJlIGEgaG9yc2UsIHNvbWV0aGluZyB0aGF0IHRo ZSBzcGVha2VyIHNpbXBseSB0aGlua3Mgb2YgYXMgYmVpbmcgYSBob3JzZSwgb3IgZXZlbiBtaWdo dCBiZSBzb21ldGhpbmcgKGEgcGVyc29uLCBmb3IgZXhhbXBsZSkgd2hvIGlzIG5hbWVkICJIb3Jz ZSIuIEluIGEgc2Vuc2UsIEV4YW1wbGUgOS4yIGlzIGFtYmlndW91cyBiZXR3ZWVuICJjbydvIGxl IHhpcm1hIiBhbmQgImNvJ28gbGEgeGlybWEiJycuIElzIHRoaXMgdHJ1ZT8KCioqIFllcywgaW4g dGhlIHNlbnNlIHRoYXQgYWxsIHVzZXMgb2YgImxlIiAnJ21pZ2h0JycgbWVhbiAibGEiLiAgQnV0 IGl0J3MgcHJvYmFibHkgbW9yZSBjb25mdXNpbmcgdGhhbiBpdCdzIHdvcnRoLiAgVHJ1bmNhdGUg YWZ0ZXIgInRoaW5rcyBvZiBhcyBiZWluZyBhIGhvcnNlIi4gIC0tamNvd2FuCgoKCiogU2VjdGlv biA5IHNheXMgJydJbiB2b2NhdGl2ZSBwaHJhc2VzIHdoaWNoIGFyZSBzaW1wbGUgbmFtZXMgKGFm dGVyIHRoZSB2b2NhdGl2ZSB3b3JkcyksIGFueSByZWxhdGl2ZSBjbGF1c2VzIG11c3QgY29tZSBq dXN0IGFmdGVyIHRoZSBuYW1lcycnLiBUaGlzIGlzbid0IHRydWUuIFJlbGF0aXZlIGNsYXVzZXMg Y2FuIGdvIGJldHdlZW4gdGhlIHZvY2F0aXZlIGFuZCB0aGUgY21ldmxhLiAgKChBcHByb3ZlZCBF cnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpICBEcm9wIGl0OyBpdCByZWZsZWN0cyBhbiBlYXJsaWVy IHN0YXRlIG9mIHRoZSBsYW5ndWFnZS4KCgoKKiBTZWN0aW9uIDEwLCBleGFtcGxlIDEwLjMgdXNl cyAia2UnYSBnb2kga28nZSB6byd1IGtvJ2EgemJhc3Uga2UnYSIgYnV0IGdsb3NzZXMgaXQgYXMg IihJVCA9IGl0MiA6IGl0MSBidWlsdCBpdDIpIi4gVGhlIGFzc2lnbmVkICJrbydlIiBpcyBub3Qg dXNlZCBhcyBleHBlY3RlZCBvciBkZXNjcmliZWQsIGFuZCBzaG91bGQgcHJvYmFibHkgYmUgImtv J2EgemJhc3Uga28nZSIuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkgIFll cywgImtvJ2EgemJhc3Uga28nZSIgaXMgY2xlYXJseSB3aGF0J3MgbWVhbnQuCgoKCi0tLQoKIUNo YXB0ZXIgOQoKCgoqIFNlY3Rpb24gNiwgcGxhY2Ugc3RydWN0dXJlIG9mICcncGlsbm8nJyBpcyBt aXNzaW5nICJmb3IgcHVycG9zZSB4MyIuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJv dmVkKSkKCgoKKiBTZWN0aW9uIDgsIHRoZSBleGFtcGxlcyA4LjUgYW5kIDguNiBhcmUgc3VwcG9z ZWQgdG8gbWVhbiB0aGUgc2FtZSB0aGluZywgYnV0IGRvIG5vdC4KCioqIFBsZWFzZSBlbGFib3Jh dGUuICAtLWpjb3dhbgoKKioqIDguNSBtZWFucyAiSSBnYXZlIHRoZSBib29rIHRvIEpvaG4sIGJl Y2F1c2UgSm9obiBnYXZlIHRoZSBtb25leSB0byBtZSIgYnV0IDguNiBtZWFucyAiSm9obiBnYXZl IHRoZSBtb25leSB0byBtZSBiZWNhdXNlIEkgZ2F2ZSB0aGUgYm9vayB0byBKb2huLiIKCioqICcn SU5DTFVERUQgSU4gREFHLUNMTCcnICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQp KQoKCgoqIFNlY3Rpb24gMTEsIGRlc2NyaXB0aW9uIG9mIHRoZSBtZWFuaW5nIG9mICIuaWplIHNl cmknYSB0dSdlIiBjb250cmFkaWN0cyB0aGUgZXhwbGFuYXRpb24gb2YgRXhhbXBsZSA5LjksIHdo aWNoIHdvdWxkIHN1Z2dlc3QgIi5pamUgcmknYSB0dSdlIi4KCgoKKiBzZWN0aW9uIDE3LCAicGVy dGFpbmVkIHRvIGJ5IGNvbmNlcm5pbmciIHNob3VsZCBiZSBzZXBhcmF0ZWQsIHdpdGggImNvbmNl cm5pbmciIHNob3VsZCBiZSBpbiB0aGUgbGFzdCBjb2x1bW4gb2YgdGhlIHRhYmxlCgoKCiogc2Vj dGlvbiAxNyAiZnJvbSBzb3VyY2UgYXMgYW4gb3JpZ2luIG9mIiBzaG91bGQgYmUgdHdvIGVudHJp ZXM7ICJmcm9tIHNvdXJjZSIgYW5kICJhcyBhbiBvcmlnaW4gb2YiICcnSU5DTFVERUQgSU4gREFH LUNMTCcnCgoKCi0tLQoKCgohQ2hhcHRlciAxMAoKCgoqIFNlY3Rpb24gNCwgIndoZW4gYm90aCBz cGF0aWFsIGFuZCB0ZW1wb3JhbCB0ZW5zZSBjbWF2byBhcmUgZ2l2ZW4gaW4gYSBzaW5nbGUgdGVu c2UgY29uc3RydWN0LCB0aGUgdGVtcG9yYWwgdGVuc2UgaXMgZXhwcmVzc2VkIGZpcnN0IiBkaXNh Z3JlZXMgd2l0aCB0aGUgcnVsZSBzaW1wbGUtdGVuc2UtbW9kYWwtOTcyIGluIHRoZSBCTkYgZ3Jh bW1hci4KCgoKKiBTZWN0aW9uIDksIGV4YW1wbGUgOS45IG9uIHBhZ2UgMjI3IGhhcyAiY2lybGki IGZvciAiY2lybGEiLgoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkp ICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlvbiAxMiwgZXhhbXBsZSAxMi42IHRy YW5zbGF0ZXMgbW9yc2kgYXMgImRpZSIgcmF0aGVyIHRoYW4gImFtIGRlYWQiIGluIHRoZSB0cmFu c2xhdGlvbiAoYXMgb3Bwb3NlZCB0byB0aGUgZ2xvc3MpLgoKCgoqIFNlY3Rpb24gMTYsIGF0IHRo ZSBlbmQsIHRoZSBYIGFuZCBZIGluIHRoZSAzIGZvcm1zIGRvbid0IGZpdCBwcm9wZXJseSAodGhl IDNyZCBkb2Vzbid0IG1hdGNoIHRoZSBmaXJzdCB0d28pLiBJIHJlY29tbWVuZCwgY29weWluZyBm cm9tIFNlY3Rpb24gMjMgKHdoZXJlIHRoZXkgYXJlIHdyaXR0ZW4gYWdhaW4gY29ycmVjdGx5KToK CiAgICAgICBYIC5pIFRFTlNFIGJvIFkKCiAgICAgICBURU5TRSBnaSBYIGdpIFkKCiAgICAgICBZ IFRFTlNFIGxlIG51IFgKCgoKKiBTZWN0aW9uIDE3LCBleGFtcGxlIDE3LjEyIHNob3VsZCBub3Qg aGF2ZSB0aGUgc2Vjb25kICJiZXZyaSIuCgoqKiAoKEFwcHJvdmVkIEVycmF0dW18Y2FtZ3VzbWlz IEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBTZWN0aW9uIDE4LCBleGFt cGxlIDE4LjkgaXMgc3VwcG9zZWQgdG8gc2hvdyBzY2FsYXIgbmVnYXRpb24gb2YgdGVuc2VzIG5v dCBsaW1pdGVkIHRvIFBVIGFuZCBGQWhBLCBidXQgdGhlIGV4YW1wbGUgdGVuc2UgaXMgcmkndSAo RkFoQTIpLgoKCgoqIFNlY3Rpb24gMTksIGV4YW1wbGUgMTkuMTAgc2hvdWxkIGhhdmUgImJhIiwg bm90ICJwdSIsIGFuZCAiW2Z1dHVyZV0iLCBub3QgIltwYXN0XSIuICAoKEFwcHJvdmVkIEVycmF0 dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBTZWN0aW9uIDI1LCBleGFtcGxlcyAyNS4xIGFuZCAy NS4yIGhhdmUgJydsdSdhJycgZm9yICcnbGEndScnLgoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNh bWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlvbiAy NSwgdGhpcyB3aG9sZSBzZWN0aW9uIGlzIGF0IG9kZHMgd2l0aCB0aGUgZm9ybWFsIGdyYW1tYXIu IEl0IHNheXM6ICcnSXQgaXMgZ3JhbW1hdGljYWwgZm9yIGEgdGVybXNldCB0byBiZSBwbGFjZWQg YWZ0ZXIgYSB0ZW5zZSBvciBtb2RhbCB0YWcgcmF0aGVyIHRoYW4gYSBzdW10aScnLiAgQnV0IHRo YXQgaXMgaW4gZmFjdCBpbmNvcnJlY3QsIGl0IGlzIG5vdCBncmFtbWF0aWNhbCBmb3IgYSB0ZXJt c2V0IHRvIGJlIHRoZSBhcmd1bWVudCBvZiBhIHRhZy4KCioqIFVuZm9ydHVuYXRlbHkgdHJ1ZS4g IFRlcm1zZXRzIHN1Y2sgcm9ja3MsIGFuZCBzb21lIHdvcmsgd2lsbCBoYXZlIHRvIGJlIGRvbmUg dG8gbWFrZSBldmVyeXRoaW5nIHNhaWQgYWJvdXQgdGhlbSBjb25zaXN0ZW50IC0tIGlmIGl0IGlz IGV2ZW4gcG9zc2libGUuICBQZXJzb25hbGx5LCBJJ2QgbGlrZSB0byBqdXN0IGJ1cm4gdGhlbS4g IC0tamNvd2FuICAnJydOT0ZJWCcnJwoKCgoqIFNlY3Rpb24gMjc6IE1PaEkgc2VlIFNlY3Rpb24g MjgsIG5vdCAyNy4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoKCgotLS0K CgoKIUNoYXB0ZXIgMTEKCgoKKiBTZWN0aW9uIDQ6IFRoZSB1c2Ugb2Yga2EgaW4gRXhhbXBsZSA0 LjQgKHBhZ2UgMjU5KSBpcyBlcnJvbmVvdXM7IGl0IHNob3VsZCBiZSBkdSd1LiAtLSgoSm9obiBD b3dhbikpICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoKCgoqIExhc3QgcGFy YWdyYXBoIG9mIHNlY3Rpb24gNyByZWZlcmVuY2VzIGNoYXB0ZXIgNSBmb3IgYSBkaXNjdXNzaW9u IG9mICJsdSdlIi4gIGx1J2UgaXNuJ3QgbWVudGlvbmVkIGluIGNoYXB0ZXIgNS4gIFByb2JhYmx5 IGNoYXB0ZXIgNiBpcyBtZWFudCBoZXJlLgoKKiogWWVzLCBzaG91bGQgYmUgU2VjdGlvbiA1LjEw LiAgICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBTZWN0aW9uIDks IHBhZ2UgMjY2IGhhcyAic2FvJ3JkemlmYSdhIiBpbnN0ZWFkIG9mICJzYSdvcmR6aWZhJ2EiLgoK KiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4g REFHLUNMTCcnCgoKCiogVGhlIHNhbWUgZXhhbXBsZSAoOS42KSBhbHNvIGhhcyBrdWN0cmEgaW5z dGVhZCBvZiBrdWN0YWkKCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQp KSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFRoZSBib29rIHRpdGxlIGluIGV4YW1wbGUg OS42IHNlZW1zIHRvIGJlIGluY29ycmVjdDogIlRoZSBDcnVjaWZpeGlvbiBvZiBKZXN1cyBDb25z aWRlcmVkIEFzIEEgRG93bmhpbGwgQmljeWNsZSBSYWNlIiBpcyBhY3R1YWxseSAiW2h0dHA6Ly93 d3cuZXZlcmdyZWVucmV2aWV3LmNvbS8xMDIvZmljdGlvbi9kdW8uaHRtbHxUaGUgQ3J1Y2lmaXhp b24gQ29uc2lkZXJlZCBBcyBBbiBVcGhpbGwgQmljeWNsZSBSYWNlXS4iCgoqKiBVbmFwcHJvdmVk CgoKCiogU2VjdGlvbiAxMDogUGFyYWdyYXBoIGFib3ZlIGV4YW1wbGUgMTAuNyByZWZlcmVuY2Vz ICJDaGFwdGVyIDExIi4gVGhhdCBzaG91bGQgcmVhZCAiQ2hhcHRlciAxMCIuCgoqKiAoKEFwcHJv dmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycK CgoKKiBTZWN0aW9uIDExOiBFeGFtcGxlIDExLjUgaXMge3N1J29kYSBwb2kgdmVyYmEgY3Uga2xh bWEgcm9kZSBwb2kgY2t1bGUgbmFrdX0uIEl0IHNob3VsZCBiZSB7c3Unb2RhIHBvaSB2ZXJiYSBj dSBrbGFtYSByb2RlIHBvaSBja3VsZSBrdSdvIG5ha3V9IG9yIGFuIGVxdWl2YWxlbnQ7IGFzIGl0 IHN0YW5kcyB0aGUgbmFrdSBpcyB1bmRlc2lyYWJseSBpbiB0aGUgcmVsYXRpdmUgY2xhdXNlLgoK CgoqIFNlY3Rpb24gMTIsIHBhZ2UgMjY5IGhhcyBleGFtcGxlcyAxMy4xIGFuZCAxMy4yLCB0aG9z ZSBzaG91bGQgYmUgY2FsbGVkIDEyLjEgYW5kIDEyLjIuICAoKEFwcHJvdmVkIEVycmF0dW18amNv d2FuIEFwcHJvdmVkKSkKCgoKLS0tCgoKCiFDaGFwdGVyIDEyCgoKCiogU2VjdGlvbiAyLCBwYWdl IDI3NS4gVGhlIHBhcmFncmFwaCB1bmRlciBFeGFtcGxlIDIuMyByZWZlcnMgdG8gaXQgYXMgRXhh bXBsZSAyLjQgKDIuNCBkb2Vzbid0IGV2ZW4gZXhpc3QpLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpj b3dhbiBBcHByb3ZlZCkpCgoKCiogU2VjdGlvbiA1LCByaWdodCBhZnRlciBleGFtcGxlIDUuNy4g SXQgc2F5cyAiYSIgaW5zdGVhZCBvZiAiYW4iLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBB cHByb3ZlZCkpCgoKCiogU2VjdGlvbiA2LCBwYWdlIDI4MC4gRXhhbXBsZSA2LjYgc2hvdWxkIGhh dmUgYSBzcGFjZSBiZXR3ZWVuICJsYSBzcGF0LiIgYW5kICJub2kiLgoKKiogKChBcHByb3ZlZCBF cnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiog U2VjdGlvbiA3LCBwYWdlIDI4Mi4gRXhhbXBsZSA3LjUgaGFzICJiYW5zb2kiIGluc3RlYWQgb2Yg ImJhbHNvaSIuCgoqKiAoKEFwcHJvdmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJ TkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBTZWN0aW9uIDExLCBwYWdlIDI4NSBoYXMgInhhc2Nh a2N1cm51IiBpbnN0ZWFkIG9mICJ4YXN5Y2FrY3VybnUiLgoKKiogKChBcHByb3ZlZCBFcnJhdHVt fGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlv biAxMiByZWZlcnMgdG8gIm51bmtsYW1hIiBhcyB0aGUgc2FtZSBsdWp2byBhcyAibnVua2xhIi4g IEV2ZW4gaWYgdGhlc2UgYXJlIGVxdWl2YWxlbnQgYWx0ZXJuYXRpdmVzIGl0IHdvdWxkIGJlIGxl c3MgY29uZnVzaW5nIHRvIGJlIGNvbnNpc3RlbnQuCgoKCiogU2VjdGlvbiAxMiBjbGFpbXMgdGhh dCAtamF4LSBpcyBhIHJhZnNpIGZvciB7amFpfSwgYnV0IGl0IGlzbid0IGluIFtodHRwOi8vd3d3 LmxvamJhbi5vcmcvcHVibGljYXRpb25zL3dvcmRsaXN0cy9yYWZzaS50eHR8aHR0cDovL3d3dy5s b2piYW4ub3JnL3B1YmxpY2F0aW9ucy93b3JkbGlzdHMvcmFmc2kudHh0XS4gRG9lcyB7amFpfSBo YXZlIGEgcmFmc2kgb3Igbm90PwoKKiogSXQgc2hvdWxkLCBidXQgc29tZWhvdyBpdCBuZXZlciBn b3QgaW50byB0aGUgZ2lzbXUgbGlzdCwgYW5kIGNvbnNlcXVlbnRseSBub3QgaW50byB0aGUgcmFm c2kgbGlzdCBlaXRoZXIuICBTdGV0LCBhbmQgd2UnbGwgYWRkIGl0IHRvIHRoZSBnaXNtdSBsaXN0 LiAgLS1qY293YW4KCgoKKiBTZWN0aW9uIDEyLCByaWdodCBhdCB0aGUgZW5kLCBzYXlzIHRoYXQg e2ZhaX0gaXMgZXhwbGFpbmVkIGluIENoYXB0ZXIgMTEsIGJ1dCBDaGFwdGVyIDExIG1ha2VzIG5v IG1lbnRpb24gb2Yge2ZhaX0uIE9ubHkgY2hhcHRlcnMgOSBhbmQgMTAgZG8uCgoqKiAnJ0lOQ0xV REVEIElOIERBRy1DTEwnJyAoem9ydCdzIGZvcmsgYXQgbGVhc3QpICAoKEFwcHJvdmVkIEVycmF0 dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBTZWN0aW9uIDE0LCBleGFtcGxlIDE0LjIuIE1pc3Np bmcgPCAvcHJlID4gdGFnLCBhbmQgbWlzc2luZyA8IHByZT4gdGFnIGZvbGxvd2luZyBleHBsYW5h dG9yeSBwYXJhZ3JhcGguCgoKCiogU2VjdGlvbiAxNCwgcGFnZSAyOTEuIFRoZSBwYXJhZ3JhcGgg dW5kZXIgZXhhbXBsZSAxNC43IHNheXMgInNlIHhhbmNlIG1pbmR1IiBpbnN0ZWFkIG9mICJzZSB4 YW5jZSBtaW5kZSIuCgoqKiAoKEFwcHJvdmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkg JydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBTZWN0aW9uIDE1LCB0d28gcGFyYWdyYXBocyBi ZWZvcmUgZXhhbXBsZSAxNS43LiBJdCBzYXlzICJUaGVyZSBhcmUgc29tZSBjb21wYXJhdGl2ZSBj b25jZXB0cyB3aGljaCBhcmUgaW4gd2hpY2ggdGhlICdzZSB6bWFkdScgaXMgZGlmZmljdWx0IHRv IHNwZWNpZnkuIiBUaGUgIndoaWNoIGFyZSBpbiB3aGljaCIgc2VlbXMgZ3JhbW1hdGljYWxseSBp bmNvcnJlY3QuCgoqKiBEcm9wICJ3aGljaCBhcmUiLiAgLS1qY293YW4gICAoKEFwcHJvdmVkIEVy cmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBTZWN0aW9uIDE1LCBleGFtcGxlIDE1LjEsIHRo ZSB4NCBvZiB7em1hZHV9IGFuZCB7bWxlY2F9IHNob3VsZCBiZSAiYnkgYW1vdW50IiBvciAiYnkg cXVhbnRpdHkiLCBub3QgImluIHF1YW50aXR5Ii4KCgoKKiBTZWN0aW9uIDE1LCBwYWdlIDI5NCwg ZXhhbXBsZSAxNS4xNC4gImxhIGFpbmN0YWluIiBuZWVkcyBhIHBlcmlvZCBiZWZvcmUgaXQgYmVj YXVzZSBpdCBzdGFydHMgd2l0aCBhIHZvd2VsLgoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1 c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCi0tLQoKCgohQ2hhcHRl ciAxMwoKCgoqIE1hbnkgaW5jaWRlbnRzIG9mIG5vdCBoYXZpbmcgcGVyaW9kcyBpbiBmcm9udCBv ZiB2b3dlbC1pbml0aWFsIGNtYXZvLgoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBB cHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogSW4gc2VjdGlvbiAyLCBwLiAz MDAgcmVmZXJlbmNlcyB0byB0aGUgZXhhbXBsZXMgZm9yIC51ZSBhbmQgLnVlY3UnaSBhcmUgZmxp cHBlZC4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoKCgoqIFNlY3Rpb24g MywgcGFnZSAzMDMsIGV4YW1wbGUgMy45LiAiZSdlIiBuZWVkcyBhIHBlcmlvZCBiZWZvcmUgaXQu CgoqKiAoKEFwcHJvdmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJ TiBEQUctQ0xMJycKCgoKKiBTZWN0aW9uIDMsIHBhZ2UgMzAzLCBleGFtcGxlIDMuMTAuICJ0aXNu YSIgbmVlZHMgdG8gYmUgcmVwbGFjZWQgd2l0aCAidGlzeWdhdSIuCgoqKiAoKEFwcHJvdmVkIEVy cmF0dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBT ZWN0aW9uIDQsIHBhZ2UgMzA1LiBUaGUgc2NhbGUgd2l0aCB0aGUgZ2lzbXUgbW5lbW9uaWNzIGlz IG1pc2FsaWduZWQgd2l0aCB0aGUgc2NhbGUgd2l0aCB0aGUgbWVtYmVycyBvZiBzZWxtYSdvIENB SS4gInNhaSIgc2hvdWxkIGJlIHRhYmJlZCBvbmUgcGxhY2UgbGVmdCwgc28gdGhhdCBpdCBhbGln bnMgd2l0aCB0c2FsaSwgJmMuCgoKCiogU2VjdGlvbiA3LCBpdCBzYXlzICJJdCBpcyBub3QgY2xl YXIgaG93IG11Y2ggdXNlIGxvZ2ljYWxseSBjb25uZWN0ZWQgYWJzdHJhY3RvcnMgd2lsbCBiZTog c2VlIENoYXB0ZXIgMTMuIiBJdCBzaG91bGQgYmUgIkNoYXB0ZXIgMTUuIgoKKiogJydJTkNMVURF RCBJTiBEQUctQ0xMJycgKHpvcnQncyBmb3JrIGF0IGxlYXN0KSBidXQgbmVlZHMgYXBwcm92YWwK CiogU2VjdGlvbiAxMCwgcGFnZSAzMTMuIFRoZXJlIGlzIGEgbWlzc2luZyBzcGFjZSBiZXR3ZWVu ICJjb250aW51ZSBlbW90aW9uIiBhbmQgImVuZCBlbW90aW9uIi4KCgoKKiBTZWN0aW9uIDE1LiBB IHNhbXBsZSBkaWFsb2d1ZSAgMTUuNCkgLyB+bnB+W0NvbW1lbnRdIFBhbSBzYXlzLCBbUGxlYXNl XSBBbGljZSwgW2VuZC1vZi1jb21tZW50XSAvIFtDb21tZW50XSBQYW0gc2F5cywgW2VuZC1vZi1j b21tZW50XSBbUGxlYXNlXSBBbGljZSwvfi9ucH4gKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBB cHByb3ZlZCkpCgoqKiAoKEFwcHJvdmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJ TkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBTZWN0aW9uIDE1LCBleGFtcGxlIDE1LjUgL3hhbWd1 L2dsZWtpLyA/CgoqKiAoKEFwcHJvdmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJ TkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBTZWN0aW9uIDE1LCBleGFtcGxlIDE1LjEwKSAvZmkn aSBybyB6dmF0aSBrbyBwaW54ZSBwYSBja2FmaS9maSdpIHJvIHp2YXRpIC5pIGtvIHBpbnhlIHBh IGNrYWZpLwoKKiogTm8sIHRoaXMgb25lIGlzIHBlcmZlY3RseSBmaW5lOiAiZmknaSBybyB6dmF0 aSIgaXMgYSB2b2NhdGl2ZSBwaHJhc2UsIHdoaWNoIGlzIGEgZnJlZSBtb2RpZmllciwgbWVhbmlu ZyB0aGF0IGl0IGNhbiBvY2N1ciBhbG1vc3QgYW55d2hlcmUuICAoKEFwcHJvdmVkIEVycmF0dW18 amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBTZWN0aW9uIDE1LCBleGFtcGxlIDE1LjEzKSAvZmknbyBz ZWxwbGVqaSBtaS9maSdvIHBsZWppIG1pLwoKKiogQW5kICJ3aXRoIHBheWVyIiByYXRoZXIgdGhh biAid2l0aCBwYXltZW50IjsgZXkncyBub3QgcGF5aW5nIHdpdGggZW1zZWxmISAtLSBjYW1ndXNt aXMKCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAnJ0lOQ0xVREVE IElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gMTUsIGV4YW1wbGUgMTUuMTMuIFdyb25nIHVzZSBv ZiB7c2VsZnV9LiB7YmV2cml9IHdvdWxkIGZpdCBiZXR0ZXIuCgotLS0KCgoKIUNoYXB0ZXIgMTQK CgoKKiBTZWN0aW9uIDgsIHJpZ2h0IGJlZm9yZSBleGFtcGxlIDguOSBpcyAicHJvZHVjaW5nIGV4 YW1wbGUgOC4xMCIgd2hpY2ggc2hvdWxkIGluIGZhY3QgcmVhZCAicHJvZHVjaW5nIGV4YW1wbGUg OC45Ii4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoKCgoqIFNlY3Rpb24g OTogYmV0d2VlbiBleGFtcGxlIDkuMTAgYW5kIDkuMTEsICJpZGVudGlmaWVkIiBzaG91bGQgcmVh ZCAiaWRlbnRpY2FsIgoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkp ICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlvbiAxMSwgcmlnaHQgYmVmb3JlIHNl Y3Rpb24gMTIuIEl0IHNheXMgInRlcm1zZXRzLi4uYXJlIGV4cGxhaW5lZCBpbiBDaGFwdGVyIDEy IGFuZCBDaGFwdGVyIDE2IiBidXQgY2hhcHRlciAxMiAod2hpY2ggaXMgb24gbHVqdm8pIG1ha2Vz IGFic29sdXRlbHkgbm8gbWVudGlvbiBvZiB0ZXJtc2V0cy4gQ2hhcHRlcnMgOSBhbmQgMTAgZGlz Y3VzcyB0ZXJtc2V0cy4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoKCgoq IFNlY3Rpb24gMTQsIGV4YW1wbGUgMTQuMTUgaXMgbm90IGdyYW1tYXRpY2FsIChhY2NvcmRpbmcg dG8gamJvZmknZSBhbmQgY2FteGVzKSBiZWNhdXNlIGl0IHNheXMgInBlJ2UgLmUiIHdoZW4gaXQg c2hvdWxkIHNheSAicGUnZSBqZSIuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVk KSkKCgoKKiBTZWN0aW9uIDE0LCBleGFtcGxlIDE0LjE2IG1lbnRpb25zICJzb3JtZSIsIHdoaWNo IGlzIHByb2JhYmx5IE9sZCBMb2dsYW4sIGFuZCBzaG91bGQgYmUgcmVwbGFjZWQgYnkgIm1lbnNp Ii4KCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAnJ0lOQ0xVREVE IElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gMTQsICJ0aGUgc3RhdGVkIGdsb3NzIG9mIFRGVFRh cyDigJxvbmx5IGlm4oCdIHdvcmtzIG5hdHVyYWxseSBvbmx5IHdoZW4gdGhlIHJpZ2h0LWhhbmQg YnJpZGkgaXMgdHJ1ZTsgaWYgaXQgaXMgZmFsc2UsIHRoZSBsZWZ0LWhhbmQgYnJpZGkgbWF5IGJl IGVpdGhlciB0cnVlIG9yIGZhbHNlLiIgY2hhbmdlZCB0byAidGhlIHN0YXRlZCBnbG9zcyBvZiBU RlRUYXMg4oCcb25seSBpZuKAnSB3b3JrcyBuYXR1cmFsbHkgb25seSB3aGVuIHRoZSByaWdodC1o YW5kIGJyaWRpIGlzIGZhbHNlOyBpZiBpdCBpcyB0cnVlLCB0aGUgbGVmdC1oYW5kIGJyaWRpIG1h eSBiZSBlaXRoZXIgdHJ1ZSBvciBmYWxzZS4iCgoqKiAoKEFwcHJvdmVkIEVycmF0dW18Y2FtZ3Vz bWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBTZWN0aW9uIDE1LCBy aWdodCBhZnRlciAxNS45LCBpdCBzYXlzICJleGFtcGxlIDE0LjE3IiB3aGVyZSBpdCBzaG91bGQg c2F5ICJleGFtcGxlIDE1LjkiICgxNC4xNyBkb2VzIG5vdCBleGlzdCkuICAoKEFwcHJvdmVkIEVy cmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBTZWN0aW9uIDE1LCBleGFtcGxlIDE1LjggaXMg bWlzc2luZyBhIGRvdCBhZnRlciAibGEgbG9qYmFuIi4KCgoKKiBTZWN0aW9uIDE1LCBleGFtcGxl IDE1LjkgaXMgbm90IGdyYW1tYXRpY2FsOyBpdCBzaG91bGQgYmUgImxhIGRqYW4uIGZhJ3UgbGEg ZnJhbmsuIGN1c2t1IG51J2kgYmF1IGxhIGxvamJhbi4gcGUnZSBmYSd1IGJhaSBsYSBkam9yZGou Ii4KCgoKKiBTZWN0aW9uIDE3LCBleGFtcGxlIDE3LjQgaXMgd3JvbmcuICBUaGUgc2VjdGlvbiBl eHBsYWlucyB0aGF0IG1la3NvIG9wZXJhdG9ycyBjYW4gYmUgbG9naWNhbGx5IGNvbm5lY3RlZCB1 c2luZyB7Z3UnZSAuLi4gZ2kgLi4ufSwgYnV0IHRoaXMgZXhhbXBsZSB0cmllcyB0byBjb25uZWN0 IHRoZW0gd2l0aCB7Z2UgLi4uIGdpIC4uLn0uICBSZXBsYWNlIHtnZX0gd2l0aCB7Z3UnZX0gaW4g dGhlIGV4YW1wbGUgdG8gY29ycmVjdCBpdC4KCgoKKiBTZWN0aW9uIDE5LCBleGFtcGxlIDE5LjQg aXMgdHJhbnNsYXRlZCBhcyAiSSBvcGluZSB0aGUgZmFjdC10aGF0IGEtbWFzcy1vZiBsaXZpbmct dGhpbmdzIGlzLWF0IEp1cGl0ZXIgb3ItZWxzZSBJIG9waW5lIHRoZSBmYWN0LXRoYXQgYS1tYXNz LW9mIGxpdmluZy10aGluZ3MgaXNuJ3QtYXQgSnVwaXRlciIgYnV0IHJlYWxseSBpdCdzICJJIG9w aW5lIHRoZSBmYWN0LXRoYXQgYS1tYXNzLW9mIGxpdmluZy10aGluZ3MgaXMtYXQgSnVwaXRlciBv ci1lbHNlIEkgX19kby1ub3RfXyBvcGluZSB0aGUgZmFjdC10aGF0IGEtbWFzcy1vZiBsaXZpbmct dGhpbmdzIF9faXMtYXRfXyBKdXBpdGVyIi4gU28gMTkuNCBpcyBhY3R1YWxseSB0cnVlLCBub3Qg ZmFsc2UgYXMgaXQgaXMgY2xhaW1lZCB0byBiZS4KCioqIENvcnJlY3QsIHNvIHRoaXMgZXhhbXBs ZSB3aWxsIG5lZWQgcmVwbGFjaW5nLiAgICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJv dmVkKSkKCgoKKiBBbHNvIHRoZXJlIGlzbid0IHJlYWxseSBhIHJlYXNvbiBmb3IgaXQgdG8gc2F5 IGEgbWFzcyBvZiBsaXZpbmcgdGhpbmdzIGFuZCBub3Qgc29tZSBpbmRpdmlkdWFsIGxpdmluZyB0 aGluZ3MuCgoqKiBTdGV0LiAgVGhlIGF1dGhvciBwcmVmZXJzIGl0IHRoYXQgd2F5LCB0aGFua3lv dXZlcnltdWNoLiAgLS1qY293YW4uCgoKCgoKLS0tCgoKCiEgQ2hhcHRlciAxNQoKCgoqIFNlY3Rp b24gMiwgbWlzc2luZyA8IC9wcmUgPiB0YWcgYWZ0ZXIgZXhhbXBsZSAyLjggYW5kIDwgcHJlPiB0 YWcgYmVmb3JlIGV4YW1wbGUgMi45LgoKCgoqIFNlY3Rpb24gNCwgZXhhbXBsZSA0LjEyIC9uYWtl L25hJ2VrZS8KCgoKKiBTZWN0aW9uIDksIHR3byBwYXJhZ3JhcGhzIGFib3ZlIGV4YW1wbGUgOS40 IHRoZSB3b3JkICJuZWdhdGl2IiBzaG91bGQgYmUgIm5lZ2F0aXZlIi4gICgoQXBwcm92ZWQgRXJy YXR1bXxqY293YW4gQXBwcm92ZWQpKQoKCgoqIFNlY3Rpb24gOTogSXMgdGhlcmUgc3VwcG9zZWQg dG8gYmUgYW55IGRpZmZlcmVuY2UgYmV0d2VlbiBleC4gOS41IGFuZCA5LjY/CgoqKiBUaGF0IHBy b2JsZW0gaXMgb25seSBpbiB0aGUgb25saW5lIHZlcnNpb24uCgoKCiogU2VjdGlvbiAxMCwgdGhy ZWUgcGFyYWdyYXBocyBhZnRlciBleGFtcGxlIDEwLjE0LCB0aGVyZSdzIGEgc2VtaWNvbG9uIHdo aWNoIHNob3VsZCBiZSBhIGNvbW1hIGFmdGVyICIoc2F5LCBhIHNwZWxsaW5nIGVycm9yKSIuICAo KEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBTZWN0aW9uIDEwLCBpdCBz YXlzICInamkndW5hJ2lrdScgbWV0YWxpbmd1aXN0aWNhbGx5IHNheXMgdGhhdCBzb21ldGhpbmcg aXMgd3Jvbmcgd2l0aCB0aGF0IGFzc3VtcHRpb24uIChTZWUgQ2hhcHRlciAxMC4pIi4gU2hvdWxk bid0IHRoYXQgYmUgQ2hhcHRlciA5LCBtb2RhbHM/CgoqKiAnJ0lOQ0xVREVEIElOIERBRy1DTEwn JyAoem9ydCdzIGZvcmsgYXQgbGVhc3QpICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92 ZWQpKQoKLS0tCgoKCiFDaGFwdGVyIDE2CgoKCiogU2VjdGlvbiA1LCBleGFtcGxlIDUuNTogRW5n bGlzaCBoYXMgImV2ZXJ5IFkiIHdoZW4gaXQgc2hvdWxkIHJlYWQgImV2ZXJ5IFgiCgoqKiAoKEFw cHJvdmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xM JycKCgoKKiBTZWN0aW9uIDYsIGV4YW1wbGUgNi42IGhhcyBhIG1pc3NpbmcgImN1IiBiZWZvcmUg InZpc2thIi4KCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAnJ0lO Q0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gOCwgdGhlIGV4cGxhbmF0aW9uIG9mIGV4 YW1wbGUgOC4zIHNheXMgImFueSBlbnRpdHkgd2hpY2ggaXMgb25lIGlzIGFsc28gdGhlIG90aGVy Ii4gVGhhdCB3b3VsZCBiZSB0cnVlIGlmIHRoZSBleGFtcGxlIHVzZWQge2dvfSwgYnV0IGl0IHVz ZXMge2dhbmFpfS4gOC4zIGRvZXMgbm90IGNsYWltIHRoYXQgaWYgc29tZXRoaW5nIHdhbGtzIGFj cm9zcyB0aGUgZmllbGQgdGhlbiBpdCBnb2VzIHRvIHRoZSBzdG9yZS4gICgoQXBwcm92ZWQgRXJy YXR1bXxqY293YW4gQXBwcm92ZWQpKSAgQ2hhbmdlIGl0IHRvIHVzZSB7Z299LiAnJ0lOQ0xVREVE IElOIERBRy1DTEwnJwoKKiogU2FtZSBwbGFjZTogbmVlZHMgdG8gYm8ge2RhIGdvfSwgbm90IHtn byBkYX0gIEFuZCB0aGUgZ2xvc3Mgc2hvdWxkIGJlICJGb3ItZXZlcnkgWDogWCBpcy1hLWdvZXIt dG8gdGhlIHN0b3JlIGlmLWFuZC1vbmx5LWlmIGl0IGlzLWEtd2Fsa2VyLW9uIHRoZSBmaWVsZC4i ICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlvbiA4LCBleGFtcGxlIDguMy4gRWl0 aGVyIHRoZSB7ZGF9IHNob3VsZCBjb21lIGJlZm9yZSB0aGUge2dhbmFpfSAob3IsIGJ5IHRoZSBw cmV2aW91cyBeIGVycmF0dW0sIHtnb30pIGFuZCB0aGUgZ2xvc3Mgc2hvdWxkIGJlIGNoYW5nZWQg dG8gb25seSBtZW50aW9uICJYIiBvbmNlLCBvciBhIHtkYX0gc2hvdWxkIGJlIGluc2VydGVkIGJl Zm9yZSB7Y2FkenV9LgoKKiogJydJTkNMVURFRCBJTiBEQUctQ0xMJycgIGNob3NlIGZpcnN0IG9w dGlvbiBzaW5jZSBpdCdzIHRlcnNlciAoem9ydCdzIGZvcmsgYXQgbGVhc3QpIGJ1dCBuZWVkcyBh cHByb3ZhbAoKCgoqIFRoaXM6ICJBZGphY2VudCBuZWdhdGlvbiBib3VuZGFyaWVzIGluIHRoZSBw cmVuZXggY2FuIGJlIGRyb3BwZWQsIiByZWFkcyBiZXR0ZXIgYXMgIkFkamFjZW50IHBhaXJzIG9m IG5lZ2F0aW9uIGJvdW5kYXJpZXMgaW4gdGhlIHByZW5leCBjYW4gYmUgZHJvcHBlZCwiCgoqKiAo KEFwcHJvdmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUct Q0xMJycKCioqKiBUaGUgb25saW5lIHZlcnNpb24gc2F5cyAiQWRqYWNlbnQgZG91YmxlIG5lZ2F0 aW9uIGJvdW5kYXJpZXMiLCBidXQgSSdtIG9rYXkgd2l0aCBlaXRoZXIgImRvdWJsZSIgb3IgInBh aXJzIG9mIi4gIC0tamNvd2FuCgoKCiogU2VjdGlvbiAxMCwgZXguIDEwLjUgYW5kIDEwLjYgaGF2 ZSBhIHByZW5leCwgIm5ha3Ugem8ndSIsIGFmdGVyIGFuIGlqZWsuIFRoaXMgaXMgbm90IGFsbG93 ZWQgYnkgdGhlIGdyYW1tYXIuIEl0IGNvdWxkIGJlIGZpeGVkIGJ5IHJlbW92aW5nIHRoZSAiem8n dSIgYW5kIHVzaW5nICJuYWt1IiBvdXRzaWRlIHRoZSBwcmVuZXgsIGFsdGhvdWdoIHRoaXMgaXMg b25seSBleHBsYWluZWQgaW4gdGhlIGZvbGxvd2luZyBTZWN0aW9uIDExLgoKKiogVGhpcyBpcyBh IGJpZyBwcm9ibGVtLCBhbmQgSSdtIG5vdCBzdXJlIHdoYXQgc2hvdWxkIGJlIGZpeGVkLiAgLS1q Y293YW4gICcnJ05PRklYJycnCgoqIFNlY3Rpb24gMTIsIGV4LiAxMi43IGFuZCAxMi45IGhhdmUg bWlzc2luZyAiY3Uicy4KCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQp KSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gMTQsIEV4YW1wbGUgMTQuMSBo YXMgImJsYWNpIiAoZ2xhc3MpIG5vdCAiYmxhYmkiICh3aGl0ZSkgYXMgcGVyIHRoZSBFbmdsaXNo LgoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQg SU4gREFHLUNMTCcnCgoKCi0tLQoKCgohQ2hhcHRlciAxNwoKCgoqIFNlY3Rpb24gNSwgYWZ0ZXIg ZXhhbXBsZSA1LjEsIHBhcmFncmFwaCBzdGFydGluZyAiSG93ZXZlciwgIiBoYXMgaW5jb3JyZWN0 IGZvbnQuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBTZWN0aW9u IDUsIGluIHRoZSBzZWNvbmQgcGFyYWdyYXBoIGFmdGVyIGV4YW1wbGUgNS4xLCBzYXlzICd0aGUg bGVyZnUgd29yZCDigJx0eeKAnSB3b3VsZCByZXByZXNlbnQgbm90IExhdGluIOKAnHTigJ0gYnV0 IEdyZWVrIOKAnHRhdeKAnS4nIFNob3VsZG4ndCBpdCBiZSAidHkuIj8KCgoKKiBTZWN0aW9uIDks IHBhZ2UgNDIxLiBsZXJmdSBzdHJpbmdzIGFyZSB3cml0dGVuIHdpdGhvdXQgcGF1c2VzIG9yIHNw YWNlcywgZXZlbiB0aG91Z2ggQlkgd29yZHMgaGF2ZSB0byBlbmQgd2l0aCBhIGNvbnNvbmFudC4K CioqIFN0ZXQuICBCWSB3b3JkcyBkbyBub3QgZW5kIHdpdGggYSBjb25zb25hbnQsIGFuZCBhIHN0 cmluZyBvZiB0aGVtIGNhbiBuZXZlciBiZSBhbWJpZ3VvdXMsIHNvIHBhdXNlcy9zcGFjZXMgYXJl IG5vdCByZXF1aXJlZC4gIC0tamNvd2FuCgoKCiogU2VjdGlvbiA5LCBFeGFtcGxlIDkuNDogc2hv dWxkbid0ICJzeW15ankiIGJlICJzeW15ZHkiIChsb2piYW4gbW9ycGhvbG9neSk/ICAoKEFwcHJv dmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBTZWN0aW9uIDEwLiBBZnRlciBFeGFt cGxlIDEwLjQuNSwgdGhlIHJlZmVyZW5jZSB0byBFeGFtcGxlIDEwLjQgc2hvdWxkIGJlIGluc3Rl YWQgdG8gRXhhbXBsZSAxMC40LjUuCgoqKkluIHRoZSBjdXJyZW50IERBRy1DTEwsIHRoZSBleGFt cGxlcyBudW1iZXJpbmcgaXMgc2FuZSwgYnV0IGFmdGVyIEV4YW1wbGUgMTAuMywgdGhlIHR3byBy ZWZlcmVuY2VzIHRvIEV4YW1wbGUgMTAuNCBzaG91bGQgYmUgdG8gRXhhbXBsZSAxMC4zLgoKCgoq IFJpZ2h0IGJlZm9yZSBzZWN0aW9uIDEyLCB0aGVyZSBpcyBhIGxpbmUgYnJlYWsgaW4gdGhlIG1p ZGRsZSBvZiB0aGUgcGFyYWdyYXBoLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3Zl ZCkpCgoKCiogSW4gc2VjdGlvbiAxMywgdGhlIGZpcnN0IHBhcmFncmFwaCBzdGF0ZXMgIkhpc3Rv cmljYWxseSwgdGhlc2UgY2hhcmFjdGVyIHNldHMgaGF2ZSBvbmx5IGNvdmVyZWQgdGhlIEVuZ2xp c2ggYWxwaGFiZXQgYW5kIGEgZmV3IHNlbGVjdGVkIHB1bmN0dWF0aW9uIG1hcmtzLiIsIHdoaWNo IGlzIGluY29ycmVjdC4gVGhlcmUgaGF2ZSBiZWVuIG11bHRpdHVkZXMgb2YgY2hhcmFjdGVyIHNl dHMgZm9yIHdyaXRpbmcgc3lzdGVtcyBvdGhlciB0aGFuIHRoZSBFbmdsaXNoIGFscGhhYmV0LgoK KiogQ2hhbmdlIHRvIHNvbWV0aGluZyBhbG9uZyB0aGUgbGluZSBvZiAiSGlzdG9yaWNhbGx5LCBl YWNoIG9mIHRoZXNlIGNoYXJhY3RlciBzZXRzIGhhcyBvbmx5IGNvdmVyZWQgYSBwYXJ0aWN1bGFy IHdyaXRpbmcgc3lzdGVtLiIKCgoKKiBTZWN0aW9uIDE3LCBwYWdlIDQyNy4gIi50dnJpeWRvcy4g YnUiIGJlZ2lucyB3aXRoIHRoZSBjb25zb25hbnQgY2x1c3Rlciwgd2hpY2ggaXNuJ3QgZXZlbiBw ZXJtaXNzaWJsZSBtZWRpYWxseS4KCioqIGNoYW5nZSB0byB0eXZyaXlkb3MKCioqKiAoKEFwcHJv dmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycK CioqKiogQWN0dWFsbHksIGl0IHNob3VsZCBiZSAidHl2cmRvcy4gYnUiICAtLWpjb3dhbgoKCgoq IEluIHRoZSB0YWJsZSBpbiBzZWN0aW9uIDE5LCB0aGUgbGVydmxhIGZvciBvdmVyLWRvdCAoIi5n YXJtb2MuIGJ1IikgYW5kIG92ZXItcmluZyAoIi5nYXJqaW4uIGJ1Iikgc2hvdWxkIGJlIHVwZGF0 ZWQgdG8gdGhlaXIgcG9zdC1SZWFsbG9jYXRpb24gZm9ybXMsICIuZ2FwbW9jLiBidSIgYW5kICIu Z2FweWppbi4gYnUiLgoKKioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQp KSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gMTkgaGFzIHR3byBjb2x1bW5z IHJ1biB0b2dldGhlciBpbiB0aGUgcm93IHRoYXQgc2F5cyAiRGFuaXNoL0xhdGluIGFldGVpIC5h YnUgLmVidSBmb2kiCgoKCi0tLQoKIUNoYXB0ZXIgMTgKCiogW2h0dHBzOi8vbG9qYmFuLmdpdGh1 Yi5pby9jbGwvMTgvMTAvIGp1J3VdIGlzIGluIFZVaFUuIEl0IHNob3VsZCBiZSBvZiB0aGUgdHlw ZSBQQS4gTm90aWNlIGhvdyB7cGl9IGFuZCB7bmkndX0gYW5kIHtrYSdvfSBhbmQge2NpJ2l9IGFu ZCB7ZmkndX0gYXJlIGFsbCBvZiB0eXBlIHtwYX0sIHNvIHRoZXkgY2FuIGdvIGluIGEgbnVtZXJp Y2FsIGxpdGVyYWwgYmV0d2VlbiBkaWdpdHMuIGVzcGVjaWFsbHkge2thJ299LCB3aGljaCBjYW4g c2VwYXJhdGUgdGhlIHJlYWwgcGFydCBhbmQgaW1hZ2luYXJ5IHBhcnQgdG8gbWFrZSBhIGNvbXBs ZXggbGl0ZXJhbCwgYW5kIHNpbWlsYXJseSB7c3Unb30gYW5kIHtzdSdlfSBjYW4gc2VwYXJhdGUg bnVtYmVycyB0byBtYWtlIGludGVydmFscy4KCiogU2VjdGlvbiAzLCBleC4gMy4xMCwgc2hvdWxk IHRyYW5zbGF0ZSBhcyAiLjEwMTIwMDEiLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHBy b3ZlZCkpCgoKCiogSW4gc2VjdGlvbiA0IGV4YW1wbGUgNC41IGlzIGxpbmtlZCBpbnN0ZWFkIG9m IDQuNyAtICJFeGFtcGxlIDQuNSBpcyBub3QgYGAxIG1pbnVzIDInJywgWy4uLnwuLi5dIiB3aGVy ZSBleGFtcGxlIDQuNSBpcyBqdXN0ICJ0ZSdvIi4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4g QXBwcm92ZWQpKQoKCgoqIFNlY3Rpb24gNSwgcDQzNyBleDUuOSBbZ2xvc3NdOiBvdXIgLT4gZm91 ciAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCioqICcnSU5DTFVERUQgSU4g REFHLUNMTCcnCgoKCiogU2VjdGlvbiA2LCBwNDM4OiBqIHZ1J3UgLT4gdnUndSAgKChBcHByb3Zl ZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoqKiAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoK CgoqIFN0YXJ0IG9mIHNlY3Rpb24gMTEgc2hvdWxkIHJlYWQgdGhlcmUgYXJlIGZpdmUgbWVtYmVy cyBvZiBNT0kgKG5vdCBmb3VyKS4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQp KQoKCgoqIEluIHNlY3Rpb24gMTEsIGV4IDExLjEwIG9uIHZhJ2UgInNvZmkndXBhbm8iIGluIHRo ZSBleGFtcGxlIGlzIGdsb3NzZWQgYXMgIjgvMTAiIGluc3RlYWQgb2YgIjkvMTAiLiAgKChBcHBy b3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoqKiAnJ0lOQ0xVREVEIElOIERBRy1DTEwn JwoKCgoqIEluIHNlY3Rpb24gMTEsICJsZWkgcmF0Y3UgcG9pIHp2YXRpIGxlIHBhbmthIGN1IHNv J3VtZWkgZm8gbG8naSByYXRjdSIsIGJ1dCB0aGVyZSBpcyBubyA0dGggcGxhY2Ugb2YgbWVpLgoK KiogUmVtb3ZlIHRoZSAiZm8iOyAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkg JydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBFeGFtcGxlIDE0LjQgbmVlZHMgYSBzdWItMiBh ZnRlciBib3RoIG51bWJlcnMuCgoqKiAoKEFwcHJvdmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJv dmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoKKiBJbiBzZWN0aW9uIDE3LCBleGFtcGxl IDE3LjUsIHtnaX0gc2hvdWxkIGJlIHJlcGxhY2VkIGJ5IHtndSdlfSwgYmVjYXVzZSBtZWtzbyBv cGVyYXRvcnMgYXJlIHRvIGJlIGNvbm5lY3RlZCBieSBndWhla3MuICBUaGlzIGlzIGVzc2VudGlh bGx5IHRoZSBzYW1lIG1pc3Rha2UgYXMgaW4gZXhhbXBsZSAxNC8xNy40LgoKCgoqIEluIHNlY3Rp b24gMTcsIHRoZSBFbmdsaXNoIHRyYW5zbGF0aW9uIGZvciBleGFtcGxlIDE3LjYgaGFzIHRoZSBm b3JtdWxhIHJlbmRlcmVkIHdyb25nIGluIHRoZSBIVE1MIHZlcnNpb24uICBUaGUgZnJhY3Rpb24g YmFyIHNob3VsZCBiZSBhZGRlZCAoaXQgaXMgaW52aXNibGUgY3VycmVudGx5KSwgYW5kIHRoZSB3 b3JkcyAidGhlbiB4ID0iIHNob3VsZCBiZSB2ZXJ0aWNhbGx5IGFsaWduZWQgdG8gdGhlIGZyYWN0 aW9uIGJhciAodGhleSBhcmUgY3VycmVudGx5IGFsaWduZWQgdG8gdGhlIG51bWVyYXRvcikuCgoK CiogSW4gc2VjdGlvbiAxNywgYXQgdGhlIGJvdHRvbSBvZiBwYWdlIDQ1NCwgdGhlIHF1YWRyYXRp YyBmb3JtdWxhIHNob3VsZCBiZSBkZXNjcmliZWQgYXMgYSBjbGFzc2ljIGV4YW1wbGUgb2Ygb3Bl cmF0b3IgbG9naWNhbCBjb25uZWN0aW9uLCBub3Qgb3BlcmFuZC4gICgoQXBwcm92ZWQgRXJyYXR1 bXxqY293YW4gQXBwcm92ZWQpKQoKCgoqIFNlY3Rpb24gMjAsIHA0NTg6IC1lc3RhYmxpc2hlZCAt PiBlc3RhYmxpc2hlZCAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoKCiog U2VjdGlvbiAyMSBzdGF0ZXMgdGhhdCB0aGUgcmFmc2kgb2YgImZyaW51IiBtYXkgYmUgdXNlZCBh cyByYWZzaSBmb3IgImZpJ3UiOyBob3dldmVyLCAiZnJpbnUiIGxvc3QgYm90aCBvZiBpdHMgc2hv cnQgcmFmc2kgaW4gdGhlIFJlYWxsb2NhdGlvbiwgc28gdGhpcyByZWFsbHkgaXNuJ3QgdmVyeSB1 c2VmdWwuIFRoZSB0YWJsZSBiZWxvdyBsaXN0cyAiZmkndSIgYXMgYSByYWZzaSB1c2FibGUgZm9y ICJmaSd1IiwgdGhlcmVmb3JlIG9mICJmcmludSI7IHRoZSBnaW1zdGUgbGlzdHMgImZpJ3UiIGFz IGEgcmFmc2kgb2YgImNmaXB1Ii4KCioqIFRoaXMgaXMgYSBzZXJpb3VzIHByb2JsZW0gd2hpY2gg bmVlZHMgc29tZSB0aG91Z2h0LiAgVGhlcmUgbmVlZHMgdG8gYmUgYSByYWZzaSBmb3IgZmkndSBz b21laG93LiAgLS1qY293YW4gICcnJ05PRklYJycnCgoKCiogU2VjdGlvbiAyMiBleGFtcGxlIDIy LjMsICJtbydlIHZvYm9pIHJlbm9tZWkgc3UnaSB6ZSIsIGRvZXMgbm90IHBhcnNlLgoKKiogSXQg bmVlZHMgInZlaSIgaW4gZnJvbnQgdG8gYmUgYSBxdWFudGlmaWVyIChhbiBvcGVyYW5kIGJ5IGl0 c2VsZiBpcyBub3QgYSBwZXJtaXR0ZWQgZnJhZ21lbnQpLiBBbHNvLCB0aGUgZm9sbG93aW5nIHRl eHQgbWVudGlvbnMgInRlJ3UiIGJ1dCB0aGUgZXhhbXBsZSBvbWl0cyBpdC4KCioqKiBOb25lIG9m IHRob3NlIGV4YW1wbGVzIHBhcnNlIHdpdGhvdXQge2xpfSwgd2hpY2ggSSBoYXZlIGFkZGVkIHRv IGFsbC4gIFJlcGxhY2VkIHRoZSBvbmUgaW4gcXVlc3Rpb24gd2l0aCAibGkgbW8nZSB2b2JvaSBy ZW5vbWVpIHRlJ3Ugc3UnaSB6ZSIgKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1c21pcyBBcHByb3Zl ZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlvbiAyNS4gIFRoZSByYWZzaSBm b3IgInNvJ2UiLCAtc29wLSwgaXMgbWlzc2luZywgdGhlIHJhZnNpIGZvciB0aGUgZm9sbG93aW5n IGZvdXIgd29yZHMgYXJlIGxpc3RlZCB1bmRlciB0aGUgd3Jvbmcgd29yZC4gIFRoYXQgaXMsIC1z b3ItIGlzIGFjdHVhbGx5IHRoZSByYWZzaSBmb3IgInNvJ2kiLCBhbmQgLWRhei0gaXMgdGhlIHJh ZnNpIGZvciAiZGEnYSIuCgoKCi0tLQoKIUNoYXB0ZXIgMTkKCgoKKiBTZWN0aW9uIDQsIHA0Njcg ZXg0LjM6IHp1J28gLT4gem8ndSAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkp CgoqKiAoKEFwcHJvdmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJ TiBEQUctQ0xMJycKCgoKKiBTZWN0aW9uIDYsIHBhZ2UgNDcyLiBFeGFtcGxlIDYuNiBlbmRzIHdp dGggImtsYW1hIiwgYnV0IGZvciB0aGUgYXJndW1lbnQgdG8gbWFrZSBzZW5zZSwgaXQgaGFzIHRv IHNheSAibnVua2xhIi4KCioqICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQp KSAnJ0lOQ0xVREVEIElOIERBRy1DTEwnJwoKCgoqIFNlY3Rpb24gNywgRXhhbXBsZSA3LjEgaGFz IGFzIHRoZSBFbmdsaXNoOiAiSSBnby10byAoZmlyc3RseSkgdGhlIHN0b3JlIGFuZCAoc2Vjb25k bHkpIHRoZSBtYXJrZXQuIiAgInRoZSBtYXJrZXQiIHNob3VsZCBiZSAidGhlIGhvdXNlIi4KCioq ICgoQXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElOIERB Ry1DTEwnJwoKCgoqIEV4YW1wbGUgMTEuOCwgdGhlcmUncyBhIGRlbnBhYnUgYWZ0ZXIge3phJ2V9 IGFuZCBubyBkZW5wYWJ1IGFmdGVyIHthbGJlaW5pYXN9LgoKKiogJydJTkNMVURFRCBJTiBEQUct Q0xMJycgKHpvcnQncyBmb3JrIGF0IGxlYXN0KSBidXQgbmVlZHMgYXBwcm92YWwKCgoKKiBTZWN0 aW9uIDExLCB0aGUgcGFyYWdyYXBoIGFmdGVyIGV4YW1wbGUgMTEuOCBzYXlzICJjdGlpcHlyaXMi IGJ1dCBpdCBzaG91bGQgYmUgImNraWlweXJpcyIuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2Fu IEFwcHJvdmVkKSkKCgoKKiBTZWN0aW9uIDEzLCAiYW5kIHRoZSB1bmRlZmluZWQgZnUnaXZsYSDi gJxzcGVyYW50b+KAnS4iIFJlcGxhY2UgImZ1J2l2bGEiIHdpdGggImx1anZvIi4gCgotLS0KCgoK IUNoYXB0ZXIgMjAKCgoKKiBTZWN0aW9uIExFLCBwYWdlIDQ5OC4gSW4gImxlIGdlcmt1IGtsYW1h IGxlIHpkYW5pIiwgImN1IiBpcyBtaXNzaW5nLgoKKiogKChBcHByb3ZlZCBFcnJhdHVtfGNhbWd1 c21pcyBBcHByb3ZlZCkpICcnSU5DTFVERUQgSU4gREFHLUNMTCcnCgoKCiogU2VjdGlvbiBUVWhF LCBwYWdlIDUwNS4gSW4gInhhZ21hdSB6byd1IHR1J2UgZ2FuYWkgY2lkamEgZ2kgY25pbm8gLmkg Z2FuYWkgdmFuanUgZ2kgdG9sY2knbyB0dSd1IiwgImNuaW5vIiBzaG91bGQgYmUgcmVwbGFjZWQg YnkgImNpdG5vIi4gIEFsc28sIGEgcHJlbmV4IGNhbid0IGhhdmUgYSBzZWxicmksIHNvICcneGFn bWF1Jycgc2hvdWxkIGJlIHJlcGxhY2VkIGJ5ICcnbG8geGFnbWF1JycuCgoqKiAoKEFwcHJvdmVk IEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUctQ0xMJycKCgoK KiBTZWN0aW9uIFNFLCBwYWdlIDUwNDogbWlzc2luZyAiY3UiIGFmdGVyICJ6YXJjaSIuCgoqKiAo KEFwcHJvdmVkIEVycmF0dW18Y2FtZ3VzbWlzIEFwcHJvdmVkKSkgJydJTkNMVURFRCBJTiBEQUct Q0xMJycKCgoKKiBJbiB0aGUgcGFzc2FnZXMgb24gVkVJIGFuZCBWRWhPLCB0aGUgImJvInMgc2hv dWxkIGJlIGNoYW5nZWQgdG8gImJpJ2Uicy4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBw cm92ZWQpKQoKCgotLS0KCgoKIUNoYXB0ZXIgMjEKCgoKKiBJbiB0aGUgQk5GIGdyYW1tYXIsIHRo ZSBydWxlIHNpbXBsZS10ZW5zZS1tb2RhbC05NzIgaXMgbWlzc2luZyBhICJ8IiBiZWZvcmUgdGhl IENVaEUuICAoKEFwcHJvdmVkIEVycmF0dW18amNvd2FuIEFwcHJvdmVkKSkKCgoKKiBJbiB0aGUg Qk5GIGdyYW1tYXIsIHRoZSBydWxlIHNpbXBsZS10ZW5zZS1tb2RhbC05NzIgaGFzIGFuIGV4dHJh IG5ld2xpbmUgaW4gdGhlIHNwYWNlL3RpbWUgc3VicGhyYXNlLgoKCgoqIEluIHRoZSBCTkYgZ3Jh bW1hciwgdGhlIHJ1bGUgc2VsYnJpLTEtMTMxIGlzIG1pc3NpbmcgYSAifCIgYmVmb3JlIHRoZSBO QS4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoKCgoqIEluIHRoZSBCTkYg Z3JhbW1hciwgdGhlIHJ1bGUgdGFucnUtdW5pdC0yLTE1MiBpcyBtaXNzaW5nIGEgInwiIGJlZm9y ZSB0aGUgSkFJLiAgKChBcHByb3ZlZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoKCioqICgo QXBwcm92ZWQgRXJyYXR1bXxjYW1ndXNtaXMgQXBwcm92ZWQpKSAnJ0lOQ0xVREVEIElOIERBRy1D TEwnJyA7IGJpemFyZWxseSwgdGhlIFdvcmQgZG9jIHRoZSBib29rIHdhcyBwcmludGVkIGZyb20g ZG9lcyBub3QgaGF2ZSB0aGlzIHByb2JsZW0gYXQgYWxsLgoKCgoqIEluIHRoZSBCTkYgZ3JhbW1h ciwgdGhlIHJ1bGUgb3BlcmF0b3ItMS0zNzEgaXMgbWlzc2luZyB0d28gInwiLiAgKChBcHByb3Zl ZCBFcnJhdHVtfGpjb3dhbiBBcHByb3ZlZCkpCgoKCiogSW4gdGhlIEJORiBncmFtbWFyLCB0aGUg cnVsZSBtZXgtb3BlcmF0b3ItMzc0IGlzIG1pc3NpbmcgYSAifCIgYmVmb3JlIHRoZSBNQWhPIGFu ZCBhbm90aGVyIGJlZm9yZSB0aGUgVlVoVS4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBw cm92ZWQpKQoKCgoqIEluIHRoZSBCTkYgZ3JhbW1hciwgdGhlIHJ1bGUgb3BlcmFuZC0zLTM4NSBp cyBtaXNzaW5nIGEgInwiIGJlZm9yZSB0aGUgTkloRS4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293 YW4gQXBwcm92ZWQpKQoKCgoqIEluIHRoZSBCTkYgZ3JhbW1hciwgaW4gdGhlIHJ1bGUgdGltZV8x MDMwLCB0aGUgIlpFaEEgW1BVIFtOQUldIF0iIHNob3VsZCBiZSBlbmNsb3NlZCBpbiBwYXJlbnRo ZXNlcy4gICgoQXBwcm92ZWQgRXJyYXR1bXxqY293YW4gQXBwcm92ZWQpKQoKCl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCldpa2ljaGFuZ2VzIG1haWxpbmcg bGlzdApXaWtpY2hhbmdlc0Bsb2piYW4ub3JnCmh0dHA6Ly9tYWlsLmxvamJhbi5vcmcvbWFpbG1h bi9saXN0aW5mby93aWtpY2hhbmdlcwo=