From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Mattias =?ISO-8859-1?Q?Engdeg=E5rd?= Newsgroups: gmane.emacs.devel Subject: Re: regular expressions that match nothing Date: Wed, 15 May 2019 18:21:07 +0200 Message-ID: <7a6b23f52418b093a4cf7a6db4306cf425533249.camel@acm.org> References: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-qjOcxk1Kou41Es2+B50Y" Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="70105"; mail-complaints-to="usenet@blaine.gmane.org" User-Agent: Evolution 3.30.5 (3.30.5-1.fc29) To: Stefan Monnier , emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed May 15 18:21:37 2019 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by blaine.gmane.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1hQwet-000I4r-Dg for ged-emacs-devel@m.gmane.org; Wed, 15 May 2019 18:21:36 +0200 Original-Received: from localhost ([127.0.0.1]:39489 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hQwes-0004kW-DH for ged-emacs-devel@m.gmane.org; Wed, 15 May 2019 12:21:34 -0400 Original-Received: from eggs.gnu.org ([209.51.188.92]:57233) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hQwek-0004g5-EN for emacs-devel@gnu.org; Wed, 15 May 2019 12:21:29 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hQweh-0005Nz-LX for emacs-devel@gnu.org; Wed, 15 May 2019 12:21:26 -0400 Original-Received: from mail80c50.megamailservers.eu ([91.136.10.90]:34808 helo=mail70c50.megamailservers.eu) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1hQweg-00054A-TK for emacs-devel@gnu.org; Wed, 15 May 2019 12:21:23 -0400 X-Authenticated-User: mattiase@bredband.net DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=megamailservers.eu; s=maildub; t=1557937270; bh=lrMGPtQuO4tiCS2D3Cjd2JXrpRZcnlCVBuPWkBO0xoo=; h=Subject:From:To:Date:In-Reply-To:References:From; b=svyhhQvCzxADOOl3oJWvRJEuZCLdS+bkHWBLLe6XrxsEFm42Az5mPyGBEpbO4pn56 jgcWgt6usDfy42Ufuo0iRl8JdPf0Ec4zVCfe3OhnCsUZ7bHIbCSBJhLhTJsUATOuse MK8uGBHu81I2Fu4yQXUSWHKz2wVAFw1PPSggppsc= Feedback-ID: mattiase@acm.or Original-Received: from dhcppc0 (c-e636e253.032-75-73746f71.bbcust.telenor.se [83.226.54.230]) (authenticated bits=0) by mail70c50.megamailservers.eu (8.14.9/8.13.1) with ESMTP id x4FGL7Uo007402; Wed, 15 May 2019 16:21:09 +0000 In-Reply-To: X-CTCH-RefID: str=0001.0A0B0202.5CDC3C76.0013, ss=1, re=0.000, recu=0.000, reip=0.000, cl=1, cld=1, fgs=0 X-CTCH-VOD: Unknown X-CTCH-Spam: Unknown X-CTCH-Score: 0.000 X-CTCH-Flags: 0 X-CTCH-ScoreCust: 0.000 X-CSC: 0 X-CHA: v=2.3 cv=epTxMLhX c=1 sm=1 tr=0 a=M+GU/qJco4WXjv8D6jB2IA==:117 a=M+GU/qJco4WXjv8D6jB2IA==:17 a=jpOVt7BSZ2e4Z31A5e1TngXxSK0=:19 a=lcYDhMZ6pab4z0-Dlx0A:9 a=QEXdDO2ut3YA:10 a=N54-gffFAAAA:8 a=axan9JYh36eQR9lNOgcA:9 a=UEZnLJIWFb4C8Wdic9J8r10ra3M=:19 a=GoaqPNVbtYeSMo51:21 a=OWkwsViRCX7T2qYg:21 a=B2y7HmGcmWMA:10 a=6l0D2HzqY3Epnrm8mE3f:22 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x (no timestamps) [generic] X-Received-From: 91.136.10.90 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:236542 Archived-At: --=-qjOcxk1Kou41Es2+B50Y Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit tis 2019-05-14 klockan 15:41 -0400 skrev Stefan Monnier: > Yes, please. I'd recommend a `regexp-` prefix for it. Well, since you asked so nicely! > [ And I'll carefully avoid having an opinion on the rest of the name. > ] The correct name is obviously something like `regexp-empty', but I have to concede that it might be misinterpreted. The attached patch uses `regexp-unmatchable' which is reasonably descriptive. Better suggestions are welcome. --=-qjOcxk1Kou41Es2+B50Y Content-Disposition: attachment; filename="0001-Add-standard-unmatchable-regexp.patch" Content-Type: text/x-patch; name="0001-Add-standard-unmatchable-regexp.patch"; charset="UTF-8" Content-Transfer-Encoding: base64 RnJvbSBkZjY2MmNkOWQyY2Y3MTJiNDM2YTdiM2Q2OTNlYmY2YmQxODk0MjJmIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/TWF0dGlhcz0yMEVuZ2RlZz1DMz1BNXJkPz0g PG1hdHRpYXNlQGFjbS5vcmc+CkRhdGU6IFR1ZSwgMTQgTWF5IDIwMTkgMTE6NDM6NDkgKzAyMDAK U3ViamVjdDogW1BBVENIXSBBZGQgc3RhbmRhcmQgdW5tYXRjaGFibGUgcmVnZXhwCgpBZGQgYHJl Z2V4cC11bm1hdGNoYWJsZScgYXMgYSBzdGFuZGFyZCB1bm1hdGNoYWJsZSByZWdleHAsIGRlZmlu ZWQgYXMKIlxcYGFcXGAiLiAgVXNlIGl0IHdoZXJlIHN1Y2ggYSByZWdleHAgaXMgbmVlZGVkLCBy ZXBsYWNpbmcgc2xvd2VyCmV4cHJlc3Npb25zIGluIHNldmVyYWwgcGxhY2VzLgpGcm9tIGEgc3Vn Z2VzdGlvbiBieSBQaGlsaXBwZSBTY2hub2ViZWxlbi4KCiogbGlzcC9zdWJyLmVsIChyZWdleHAt dW5tYXRjaGFibGUpOiBOZXcgZGVmY29uc3QuCiogZXRjL05FV1MgKExpc3AgQ2hhbmdlcyk6IE1l bnRpb24gYHJlZ2V4cC11bm1hdGNoYWJsZScuCiogZG9jL2xpc3ByZWYvc2VhcmNoaW5nLnRleGkg KFJlZ2V4cCBGdW5jdGlvbnMpOiBEb2N1bWVudCBpdC4KKiBsaXNwL2VtYWNzLWxpc3AvcmVnZXhw LW9wdC5lbCAocmVnZXhwLW9wdCkKKiBsaXNwL3Byb2dtb2Rlcy9jYy1kZWZzLmVsIChjYy1jb25k aXRpb25hbC1yZXF1aXJlLWFmdGVyLWxvYWQpCihjLW1ha2Uta2V5d29yZHMtcmUpCiogbGlzcC9w cm9nbW9kZXMvY2MtZW5naW5lLmVsIChjLWJlZ2lubmluZy1vZi1zdGF0ZW1lbnQtMSkKKGMtZm9y d2FyZC08Pi1hcmdsaXN0LXJlY3VyLCBjLWZvcndhcmQtZGVjbC1vci1jYXN0LTEpCihjLWxvb2tp bmctYXQtZGVjbC1ibG9jaykKKiBsaXNwL3Byb2dtb2Rlcy9jYy1mb250cy5lbCAoYy1kb2MtbGlu ZS1qb2luLXJlKQooYy1kb2MtYnJpZ2h0LWNvbW1lbnQtc3RhcnQtcmUpCiogbGlzcC9wcm9nbW9k ZXMvY2MtbGFuZ3MuZWwgKGMtcG9wdWxhdGUtc3ludGF4LXRhYmxlKQooYy1hc3NpZ25tZW50LW9w LXJlZ2V4cCkKKGMtYmxvY2stY29tbWVudC1lbmRlci1yZWdleHAsIGMtZm9udC1sb2NrLWNvbW1l bnQtZW5kLXNraXApCihjLWJsb2NrLWNvbW1lbnQtc3RhcnQtcmVnZXhwLCBjLWxpbmUtY29tbWVu dC1zdGFydC1yZWdleHApCihjLWRvYy1jb21tZW50LXN0YXJ0LXJlZ2V4cCwgYy1kZWNsLXN0YXJ0 LWNvbG9uLWt3ZC1yZSkKKGMtdHlwZS1kZWNsLXByZWZpeC1rZXksIGMtdHlwZS1kZWNsLW9wZXJh dG9yLXByZWZpeC1rZXkpCihjLXByZS1pZC1icmFjZWxpc3Qta2V5LCBjLWVudW0tY2xhdXNlLWlu dHJvZHVjdGlvbi1yZSkKKGMtbm9ubGFiZWwtdG9rZW4tMi1rZXkpCiogbGlzcC9wcm9nbW9kZXMv Y2MtbW9kZS5lbCAoYy1kb2MtZmwtZGVjbC1zdGFydCwgYy1kb2MtZmwtZGVjbC1lbmQpCiogbGlz cC9wcm9nbW9kZXMvY2MtdmFycy5lbCAoYy1ub2lzZS1tYWNyby13aXRoLXBhcmVucy1uYW1lLXJl KQooYy1ub2lzZS1tYWNyby1uYW1lLXJlLCBjLW1ha2Utbm9pc2UtbWFjcm8tcmVnZXhwcykKKiBs aXNwL3Byb2dtb2Rlcy9vY3RhdmUuZWwgKG9jdGF2ZS1oZWxwLW1vZGUpCiogbGlzcC90ZXh0bW9k ZXMvaXNwZWxsLmVsIChpc3BlbGwtbm9uLWVtcHR5LXN0cmluZykKKiBsaXNwL3ZjL3ZjLWJ6ci5l bCAodmMtYnpyLWxvZy12aWV3LW1vZGUsIHZjLWJ6ci1yZXZpc2lvbi1jb21wbGV0aW9uLXRhYmxl KQoqIGxpc3AvdmMvdmMtZ2l0LmVsICh2Yy1naXQtbG9nLXZpZXctbW9kZSkKKiBsaXNwL3ZjL3Zj LWhnLmVsICh2Yy1oZy1sb2ctdmlldy1tb2RlKQoqIGxpc3AvdmMvdmMtbXRuLmVsICh2Yy1tdG4t bG9nLXZpZXctbW9kZSk6ClVzZSBgcmVnZXhwLXVubWF0Y2hhYmxlJy4KLS0tCiBkb2MvbGlzcHJl Zi9zZWFyY2hpbmcudGV4aSAgICB8ICA3ICsrKysrKysKIGV0Yy9ORVdTICAgICAgICAgICAgICAg ICAgICAgIHwgIDQgKysrKwogbGlzcC9lbWFjcy1saXNwL3JlZ2V4cC1vcHQuZWwgfCAgNCArKy0t CiBsaXNwL25ldC9hbmdlLWZ0cC5lbCAgICAgICAgICB8ICAyICstCiBsaXNwL3Byb2dtb2Rlcy9j Yy1kZWZzLmVsICAgICB8ICA2ICsrKy0tLQogbGlzcC9wcm9nbW9kZXMvY2MtZW5naW5lLmVsICAg fCAxMCArKysrKystLS0tCiBsaXNwL3Byb2dtb2Rlcy9jYy1mb250cy5lbCAgICB8ICA0ICsrLS0K IGxpc3AvcHJvZ21vZGVzL2NjLWxhbmdzLmVsICAgIHwgMjYgKysrKysrKysrKysrKy0tLS0tLS0t LS0tLS0KIGxpc3AvcHJvZ21vZGVzL2NjLW1vZGUuZWwgICAgIHwgIDQgKystLQogbGlzcC9wcm9n bW9kZXMvY2MtdmFycy5lbCAgICAgfCAgOCArKysrLS0tLQogbGlzcC9wcm9nbW9kZXMvZ3JlcC5l bCAgICAgICAgfCAgMyArKy0KIGxpc3AvcHJvZ21vZGVzL29jdGF2ZS5lbCAgICAgIHwgIDIgKy0K IGxpc3Avc3Vici5lbCAgICAgICAgICAgICAgICAgIHwgIDQgKysrKwogbGlzcC90ZXh0bW9kZXMv aXNwZWxsLmVsICAgICAgfCAgMiArLQogbGlzcC92Yy92Yy1ienIuZWwgICAgICAgICAgICAgfCAg NSArKystLQogbGlzcC92Yy92Yy1naXQuZWwgICAgICAgICAgICAgfCAgMiArLQogbGlzcC92Yy92 Yy1oZy5lbCAgICAgICAgICAgICAgfCAgMiArLQogbGlzcC92Yy92Yy1tdG4uZWwgICAgICAgICAg ICAgfCAgMiArLQogMTggZmlsZXMgY2hhbmdlZCwgNTggaW5zZXJ0aW9ucygrKSwgMzkgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEvZG9jL2xpc3ByZWYvc2VhcmNoaW5nLnRleGkgYi9kb2MvbGlz cHJlZi9zZWFyY2hpbmcudGV4aQppbmRleCA4Nzc1MjU0ZGQwLi4yNGYzMGI0ZGFjIDEwMDY0NAot LS0gYS9kb2MvbGlzcHJlZi9zZWFyY2hpbmcudGV4aQorKysgYi9kb2MvbGlzcHJlZi9zZWFyY2hp bmcudGV4aQpAQCAtMTA3MCw2ICsxMDcwLDEzIEBAIFJlZ2V4cCBGdW5jdGlvbnMKIAogQGMgSW50 ZXJuYWwgZnVuY3Rpb25zOiByZWdleHAtb3B0LWdyb3VwCiAKK0BkZWZ2YXIgcmVnZXhwLXVubWF0 Y2hhYmxlCitUaGlzIHZhcmlhYmxlIGNvbnRhaW5zIGEgcmVnZXhwIHRoYXQgaXMgZ3VhcmFudGVl ZCBub3QgdG8gbWF0Y2ggYW55CitzdHJpbmcgYXQgYWxsLiAgSXQgaXMgcGFydGljdWxhcmx5IHVz ZWZ1bCBhcyBkZWZhdWx0IHZhbHVlIGZvcgordmFyaWFibGVzIHRoYXQgbWF5IGJlIHNldCB0byBh IHBhdHRlcm4gdGhhdCBhY3R1YWxseSBtYXRjaGVzCitzb21ldGhpbmcuCitAZW5kIGRlZnZhcgor CiBAbm9kZSBSZWdleHAgU2VhcmNoCiBAc2VjdGlvbiBSZWd1bGFyIEV4cHJlc3Npb24gU2VhcmNo aW5nCiBAY2luZGV4IHJlZ3VsYXIgZXhwcmVzc2lvbiBzZWFyY2hpbmcKZGlmZiAtLWdpdCBhL2V0 Yy9ORVdTIGIvZXRjL05FV1MKaW5kZXggZmMzY2ExZWE5Mi4uNjk5YTA0YjUyNCAxMDA2NDQKLS0t IGEvZXRjL05FV1MKKysrIGIvZXRjL05FV1MKQEAgLTE5OTAsNiArMTk5MCwxMCBAQCByZXR1cm5z IGEgcmVnZXhwIHRoYXQgbmV2ZXIgbWF0Y2hlcyBhbnl0aGluZywgd2hpY2ggaXMgYW4gaWRlbnRp dHkgZm9yCiB0aGlzIG9wZXJhdGlvbi4gIFByZXZpb3VzbHksIHRoZSBlbXB0eSBzdHJpbmcgd2Fz IHJldHVybmVkIGluIHRoaXMKIGNhc2UuCiAKKyoqIE5ldyBjb25zdGFudCAncmVnZXhwLXVubWF0 Y2hhYmxlJyBjb250YWlucyBhIG5ldmVyLW1hdGNoaW5nIHJlZ2V4cC4KK0l0IGlzIGEgY29udmVu aWVudCBhbmQgcmVhZGFibGUgd2F5IHRvIHNwZWNpZnkgYSByZWdleHAgdGhhdCBzaG91bGQKK25v dCBtYXRjaCBhbnl0aGluZywgYW5kIGlzIGFzIGZhc3QgYXMgYW55IHN1Y2ggcmVnZXhwIGNhbiBi ZS4KKwogDAogKiBDaGFuZ2VzIGluIEVtYWNzIDI3LjEgb24gTm9uLUZyZWUgT3BlcmF0aW5nIFN5 c3RlbXMKIApkaWZmIC0tZ2l0IGEvbGlzcC9lbWFjcy1saXNwL3JlZ2V4cC1vcHQuZWwgYi9saXNw L2VtYWNzLWxpc3AvcmVnZXhwLW9wdC5lbAppbmRleCBkODgzNzUyZDcxLi4wMGY3MmUyODRhIDEw MDY0NAotLS0gYS9saXNwL2VtYWNzLWxpc3AvcmVnZXhwLW9wdC5lbAorKysgYi9saXNwL2VtYWNz LWxpc3AvcmVnZXhwLW9wdC5lbApAQCAtMTQ0LDkgKzE0NCw5IEBAIHJlZ2V4cC1vcHQKIAkJCSAg ICAoc29ydCAoY29weS1zZXF1ZW5jZSBzdHJpbmdzKSAnc3RyaW5nLWxlc3NwKSkpCiAJICAgKHJl CiAgICAgICAgICAgICAoY29uZAotICAgICAgICAgICAgIDs7IE5vIHN0cmluZ3M6IHJldHVybiBh XGAgd2hpY2ggY2Fubm90IG1hdGNoIGFueXRoaW5nLgorICAgICAgICAgICAgIDs7IE5vIHN0cmlu Z3M6IHJldHVybiBhbiB1bm1hdGNoYWJsZSByZWdleHAuCiAgICAgICAgICAgICAgKChudWxsIHN0 cmluZ3MpCi0gICAgICAgICAgICAgIChjb25jYXQgKG9yIG9wZW4gIlxcKD86IikgImFcXGBcXCki KSkKKyAgICAgICAgICAgICAgKGNvbmNhdCAob3Igb3BlbiAiXFwoPzoiKSByZWdleHAtdW5tYXRj aGFibGUgIlxcKSIpKQogICAgICAgICAgICAgIDs7IElmIHdlIGNhbm5vdCByZW9yZGVyLCBnaXZl IHVwIGFsbCBhdHRlbXB0cyBhdAogICAgICAgICAgICAgIDs7IG9wdGltaXNhdGlvbi4gIFRoZXJl IGlzIHJvb20gZm9yIGltcHJvdmVtZW50IChCdWcjMzQ2NDEpLgogICAgICAgICAgICAgICgoYW5k IGtlZXAtb3JkZXIgKHJlZ2V4cC1vcHQtLWNvbnRhaW5zLXByZWZpeCBzb3J0ZWQtc3RyaW5ncykp CmRpZmYgLS1naXQgYS9saXNwL25ldC9hbmdlLWZ0cC5lbCBiL2xpc3AvbmV0L2FuZ2UtZnRwLmVs CmluZGV4IDVhZjllYTc1ZWQuLmIwYTFlMTc5OWYgMTAwNjQ0Ci0tLSBhL2xpc3AvbmV0L2FuZ2Ut ZnRwLmVsCisrKyBiL2xpc3AvbmV0L2FuZ2UtZnRwLmVsCkBAIC0xOTg5LDcgKzE5ODksNyBAQCBp bnRlcm5hbC1hbmdlLWZ0cC1tb2RlCiAgIChtYWtlLWxvY2FsLXZhcmlhYmxlICdjb21pbnQtcGFz c3dvcmQtcHJvbXB0LXJlZ2V4cCkKICAgOzsgVGhpcyBpcyBhIHJlZ2V4cCB0aGF0IGNhbid0IG1h dGNoIGFueXRoaW5nLgogICA7OyBhbmdlLWZ0cCBoYXMgaXRzIG93biB3YXlzIG9mIGhhbmRsaW5n IHBhc3N3b3Jkcy4KLSAgKHNldHEgY29taW50LXBhc3N3b3JkLXByb21wdC1yZWdleHAgIlxcYGFc XGAiKQorICAoc2V0cSBjb21pbnQtcGFzc3dvcmQtcHJvbXB0LXJlZ2V4cCByZWdleHAtdW5tYXRj aGFibGUpCiAgIChtYWtlLWxvY2FsLXZhcmlhYmxlICdwYXJhZ3JhcGgtc3RhcnQpCiAgIChzZXRx IHBhcmFncmFwaC1zdGFydCBjb21pbnQtcHJvbXB0LXJlZ2V4cCkpCiAKZGlmZiAtLWdpdCBhL2xp c3AvcHJvZ21vZGVzL2NjLWRlZnMuZWwgYi9saXNwL3Byb2dtb2Rlcy9jYy1kZWZzLmVsCmluZGV4 IGNkNGVkNmIzNTIuLmQyMGUzZWYzMmQgMTAwNjQ0Ci0tLSBhL2xpc3AvcHJvZ21vZGVzL2NjLWRl ZnMuZWwKKysrIGIvbGlzcC9wcm9nbW9kZXMvY2MtZGVmcy5lbApAQCAtODEsNyArODEsNyBAQAog ICAocHJvZ24KICAgICAocmVxdWlyZSAnZm9udC1sb2NrKQogICAgIChsZXQgKGZvbnQtbG9jay1r ZXl3b3JkcykKLSAgICAgIChmb250LWxvY2stY29tcGlsZS1rZXl3b3JkcyAnKCJhXFxgIikpIDsg ZG9lc24ndCBtYXRjaCBhbnl0aGluZy4KKyAgICAgIChmb250LWxvY2stY29tcGlsZS1rZXl3b3Jk cyAobGlzdCByZWdleHAtdW5tYXRjaGFibGUpKQogICAgICAgZm9udC1sb2NrLWtleXdvcmRzKSkp KQogCiAMCkBAIC0xODkwLDggKzE4OTAsOCBAQCBjLW1ha2Uta2V5d29yZHMtcmUKIAogICAgIDs7 IFByb2R1Y2UgYSByZWdleHAgdGhhdCBkb2Vzbid0IG1hdGNoIGFueXRoaW5nLgogICAgIChpZiBh ZG9ybgotCSJcXChhXFxgXFwpIgotICAgICAgImFcXGAiKSkpCisJKGNvbmNhdCAiXFwoIiByZWdl eHAtdW5tYXRjaGFibGUgIlxcKSIpCisgICAgICByZWdleHAtdW5tYXRjaGFibGUpKSkKIAogKHB1 dCAnYy1tYWtlLWtleXdvcmRzLXJlICdsaXNwLWluZGVudC1mdW5jdGlvbiAxKQogCmRpZmYgLS1n aXQgYS9saXNwL3Byb2dtb2Rlcy9jYy1lbmdpbmUuZWwgYi9saXNwL3Byb2dtb2Rlcy9jYy1lbmdp bmUuZWwKaW5kZXggZWQ4MzEwZDBlNi4uNDFiYWIyNzBkYSAxMDA2NDQKLS0tIGEvbGlzcC9wcm9n bW9kZXMvY2MtZW5naW5lLmVsCisrKyBiL2xpc3AvcHJvZ21vZGVzL2NjLWVuZ2luZS5lbApAQCAt OTA3LDcgKzkwNyw3IEBAIGMtYmVnaW5uaW5nLW9mLXN0YXRlbWVudC0xCiAJc3RhY2sKIAk7OyBS ZWdleHAgd2hpY2ggbWF0Y2hlcyAiZm9yIiwgImlmIiwgZXRjLgogCShjb25kLWtleSAob3IgYy1v cHQtYmxvY2stc3RtdC1rZXkKLQkJICAgICAgImFcXGAiKSkJOyBEb2Vzbid0IG1hdGNoIGFueXRo aW5nLgorCQkgICAgICByZWdleHAtdW5tYXRjaGFibGUpKQogCTs7IFJldHVybiB2YWx1ZS4KIAko cmV0ICdzYW1lKQogCTs7IFBvc2l0aW9ucyBvZiB0aGUgbGFzdCB0aHJlZSBzZXhwcyBvciBib3Vu ZHMgd2UndmUgc3RvcHBlZCBhdC4KQEAgLTc2NDYsNyArNzY0Niw5IEBAIGMtZm9yd2FyZC08Pi1h cmdsaXN0LXJlY3VyCiAJCShwcm9nbgogCQkgIChjLWZvcndhcmQtc3ludGFjdGljLXdzKQogCQkg ICh3aGVuIChvciAoYW5kIGMtcmVjb3JkLXR5cGUtaWRlbnRpZmllcnMgYWxsLXR5cGVzKQotCQkJ ICAgIChub3QgKGVxdWFsIGMtaW5zaWRlLTw+LXR5cGUta2V5ICJcXChhXFxgXFwpIikpKQorCQkJ ICAgIChub3QgKGVxdWFsIGMtaW5zaWRlLTw+LXR5cGUta2V5CisJCQkJCShjb25jYXQKKwkJCQkJ ICJcXCgiIHJlZ2V4cC11bm1hdGNoYWJsZSAiXFwpIikpKSkKIAkJICAgIChjLWZvcndhcmQtc3lu dGFjdGljLXdzKQogCQkgICAgKGNvbmQKIAkJICAgICAoKGVxIChjaGFyLWFmdGVyKSA/PykKQEAg LTkyNTMsNyArOTI1NSw3IEBAIGMtZm9yd2FyZC1kZWNsLW9yLWNhc3QtMQogICAgICAgOzsgU2tp cCBvdmVyIHR5cGUgZGVjbCBwcmVmaXggb3BlcmF0b3JzLiAgKE5vdGUgc2ltaWxhciBjb2RlIGlu CiAgICAgICA7OyBgYy1mb3J3YXJkLWRlY2xhcmF0b3InLikKICAgICAgIChpZiAoYW5kIGMtcmVj b2duaXplLXR5cGVsZXNzLWRlY2xzCi0JICAgICAgIChlcXVhbCBjLXR5cGUtZGVjbC1wcmVmaXgt a2V5ICJhXFxgIikpIDsgUmVnZXhwIHdoaWNoIGRvZXNuJ3QgbWF0Y2gKKwkgICAgICAgKGVxdWFs IGMtdHlwZS1kZWNsLXByZWZpeC1rZXkgcmVnZXhwLXVubWF0Y2hhYmxlKSkKIAkgICh3aGVuIChl cSAoY2hhci1hZnRlcikgP1woKQogCSAgICAocHJvZ24KIAkgICAgICAoc2V0cSBwYXJlbi1kZXB0 aCAoMSsgcGFyZW4tZGVwdGgpKQpAQCAtMTA4ODYsNyArMTA4ODgsNyBAQCBjLWxvb2tpbmctYXQt ZGVjbC1ibG9jawogCSAgICAgIDs7IGxlZ2FsIGJlY2F1c2UgaXQncyBwYXJ0IG9mIGEgImNvbXBv dW5kIGtleXdvcmQiIGxpa2UKIAkgICAgICA7OyAiZW51bSBjbGFzcyIuCU9mIGNvdXJzZSwgaWYg Yy1hZnRlci1icmFjZS1saXN0LWtleQogCSAgICAgIDs7IGlzIG5pbCwgd2UgY2FuIHNraXAgdGhl IHRlc3QuCi0JICAgICAgKG9yIChlcXVhbCBjLWFmdGVyLWJyYWNlLWxpc3Qta2V5ICJhXFxgIikg OyBSZWdleHAgd2hpY2ggZG9lc24ndCBtYXRjaAorCSAgICAgIChvciAoZXF1YWwgYy1hZnRlci1i cmFjZS1saXN0LWtleSByZWdleHAtdW5tYXRjaGFibGUpCiAJCSAgKHNhdmUtbWF0Y2gtZGF0YQog CQkgICAgKHNhdmUtZXhjdXJzaW9uCiAJCSAgICAgIChub3QKZGlmZiAtLWdpdCBhL2xpc3AvcHJv Z21vZGVzL2NjLWZvbnRzLmVsIGIvbGlzcC9wcm9nbW9kZXMvY2MtZm9udHMuZWwKaW5kZXggNWYw OWJlNjBhNi4uYjNhOWRkNDgwYiAxMDA2NDQKLS0tIGEvbGlzcC9wcm9nbW9kZXMvY2MtZm9udHMu ZWwKKysrIGIvbGlzcC9wcm9nbW9kZXMvY2MtZm9udHMuZWwKQEAgLTI1ODAsMTQgKzI1ODAsMTQg QEAgcGlrZS1mb250LWxvY2sta2V5d29yZHMKIAwKIDs7OyBEb2MgY29tbWVudHMuCiAKLShkZWZ2 YXIgYy1kb2MtbGluZS1qb2luLXJlICJhXFxgIikKKyhkZWZ2YXIgYy1kb2MtbGluZS1qb2luLXJl IHJlZ2V4cC11bm1hdGNoYWJsZSkKIDs7IE1hdGNoZXMgYSBqb2luIG9mIHR3byBsaW5lcyBpbiBh IGRvYyBjb21tZW50LgogOzsgVGhpcyBzaG91bGQgbm90IGJlIGNoYW5nZWQgZGlyZWN0bHksIGJ1 dCBpbnN0ZWFkIHNldCBieQogOzsgYGMtc2V0dXAtZG9jLWNvbW1lbnQtc3R5bGUnLiAgVGhpcyB2 YXJpYWJsZSBpcyB1c2VkIGluIGBjLWZpbmQtZGVjbC1zcG90cycKIDs7IGluIChlLmcuKSBhdXRv ZG9jIHN0eWxlIGNvbW1lbnRzIHRvIGJyaWRnZSB0aGUgZ2FwIGJldHdlZW4gYSAiQFxuIiBhdCBh bgogOzsgRU9MIGFuZCB0aGUgdG9rZW4gZm9sbG93aW5nICIvLyEiIG9uIHRoZSBuZXh0IGxpbmUu CiAKLShkZWZ2YXIgYy1kb2MtYnJpZ2h0LWNvbW1lbnQtc3RhcnQtcmUgImFcXGAiKQorKGRlZnZh ciBjLWRvYy1icmlnaHQtY29tbWVudC1zdGFydC1yZSByZWdleHAtdW5tYXRjaGFibGUpCiA7OyBN YXRjaGVzIHRoZSBzdGFydCBvZiBhICJicmlnaHQiIGNvbW1lbnQsIG9uZSB3aG9zZSBjb250ZW50 cyBtYXkgYmUKIDs7IGZvbnRpZmllZCBieSwgZS5nLiwgYGMtZm9udC1sb2NrLWRlY2xhcmF0aW9u cycuCiAKZGlmZiAtLWdpdCBhL2xpc3AvcHJvZ21vZGVzL2NjLWxhbmdzLmVsIGIvbGlzcC9wcm9n bW9kZXMvY2MtbGFuZ3MuZWwKaW5kZXggMzBkYTEwYTZjMC4uOWQyZjY4OWU1OCAxMDA2NDQKLS0t IGEvbGlzcC9wcm9nbW9kZXMvY2MtbGFuZ3MuZWwKKysrIGIvbGlzcC9wcm9nbW9kZXMvY2MtbGFu Z3MuZWwKQEAgLTk0NSw3ICs5NDUsNyBAQCBjLXBvcHVsYXRlLXN5bnRheC10YWJsZQogCSAoYy1t YWtlLWtleXdvcmRzLXJlICdhcHBlbmRhYmxlCiAJICAgKGMtbGFuZy1jb25zdCBjLWNwcC1pbmNs dWRlLWRpcmVjdGl2ZXMpKQogCSAiWyBcdF0qIikKLSAgICAgICJhXFxgIikpCQkJCTsgRG9lc24n dCBtYXRjaCBhbnl0aGluZworICAgICAgcmVnZXhwLXVubWF0Y2hhYmxlKSkKIChjLWxhbmctZGVm dmFyIGMtY3BwLWluY2x1ZGUta2V5IChjLWxhbmctY29uc3QgYy1jcHAtaW5jbHVkZS1rZXkpKQog CiAoYy1sYW5nLWRlZmNvbnN0IGMtb3B0LWNwcC1tYWNyby1kZWZpbmUKQEAgLTEzMzEsNyArMTMz MSw3IEBAICdjLW9wdC1vcC1pZGVudGl0aWVyLXByZWZpeAogCSAgIChjLS1zZXQtZGlmZmVyZW5j ZSAoYy1sYW5nLWNvbnN0IGMtYXNzaWdubWVudC1vcGVyYXRvcnMpCiAJCQkgICAgICAnKCI9IikK IAkJCSAgICAgIDp0ZXN0ICdzdHJpbmctZXF1YWwpKSkKLSAgICAgICJhXFxgIikpCQkJCTsgRG9l c24ndCBtYXRjaCBhbnl0aGluZy4KKyAgICAgIHJlZ2V4cC11bm1hdGNoYWJsZSkpCiAoYy1sYW5n LWRlZnZhciBjLWFzc2lnbm1lbnQtb3AtcmVnZXhwCiAgIChjLWxhbmctY29uc3QgYy1hc3NpZ25t ZW50LW9wLXJlZ2V4cCkpCiAKQEAgLTE1NTQsNyArMTU1NCw3IEBAICdjLW9wdC1vcC1pZGVudGl0 aWVyLXByZWZpeAogICA7OyBsYW5ndWFnZSkKICAgdCAoaWYgKGMtbGFuZy1jb25zdCBjLWJsb2Nr LWNvbW1lbnQtZW5kZXIpCiAJKHJlZ2V4cC1xdW90ZSAoYy1sYW5nLWNvbnN0IGMtYmxvY2stY29t bWVudC1lbmRlcikpCi0gICAgICAiYVxcYCIpKQkJCQk7IERvZXNuJ3QgbWF0Y2ggYW55dGhpbmcu CisgICAgICByZWdleHAtdW5tYXRjaGFibGUpKQogKGMtbGFuZy1kZWZ2YXIgYy1ibG9jay1jb21t ZW50LWVuZGVyLXJlZ2V4cAogCSAgICAgICAoYy1sYW5nLWNvbnN0IGMtYmxvY2stY29tbWVudC1l bmRlci1yZWdleHApKQogCkBAIC0xNTY1LDcgKzE1NjUsNyBAQCAnYy1vcHQtb3AtaWRlbnRpdGll ci1wcmVmaXgKICAgOzsgYGZvbnQtbG9jay1jb21tZW50LWRlbGltaXRlci1mYWNlJy4KICAgdCAo aWYgKGMtbGFuZy1jb25zdCBjLWJsb2NrLWNvbW1lbnQtZW5kZXIpCiAJKGNvbmNhdCAiWyBcdF0q IiAoYy1sYW5nLWNvbnN0IGMtYmxvY2stY29tbWVudC1lbmRlci1yZWdleHApKQotICAgICAgImFc XGAiKSkJCQkJOyBEb2Vzbid0IG1hdGNoIGFueXRoaW5nLgorICAgICAgcmVnZXhwLXVubWF0Y2hh YmxlKSkKIChjLWxhbmctc2V0dmFyIGZvbnQtbG9jay1jb21tZW50LWVuZC1za2lwCiAJICAgICAg IChjLWxhbmctY29uc3QgYy1mb250LWxvY2stY29tbWVudC1lbmQtc2tpcCkpCiAKQEAgLTE1ODQs NyArMTU4NCw3IEBAICdjLW9wdC1vcC1pZGVudGl0aWVyLXByZWZpeAogICA7OyBsYW5ndWFnZSkK ICAgdCAoaWYgKGMtbGFuZy1jb25zdCBjLWJsb2NrLWNvbW1lbnQtc3RhcnRlcikKIAkocmVnZXhw LXF1b3RlIChjLWxhbmctY29uc3QgYy1ibG9jay1jb21tZW50LXN0YXJ0ZXIpKQotICAgICAgImFc XGAiKSkJCQkJOyBEb2Vzbid0IG1hdGNoIGFueXRoaW5nLgorICAgICAgcmVnZXhwLXVubWF0Y2hh YmxlKSkKIChjLWxhbmctZGVmdmFyIGMtYmxvY2stY29tbWVudC1zdGFydC1yZWdleHAKICAgKGMt bGFuZy1jb25zdCBjLWJsb2NrLWNvbW1lbnQtc3RhcnQtcmVnZXhwKSkKIApAQCAtMTU5Myw3ICsx NTkzLDcgQEAgJ2Mtb3B0LW9wLWlkZW50aXRpZXItcHJlZml4CiAgIDs7IGxhbmd1YWdlOyBpdCBk b2VzIGluIGFsbCA3IENDIE1vZGUgbGFuZ3VhZ2VzKS4KICAgdCAoaWYgKGMtbGFuZy1jb25zdCBj LWxpbmUtY29tbWVudC1zdGFydGVyKQogCShyZWdleHAtcXVvdGUgKGMtbGFuZy1jb25zdCBjLWxp bmUtY29tbWVudC1zdGFydGVyKSkKLSAgICAgICJhXFxgIikpCQkJCTsgRG9lc24ndCBtYXRjaCBh bnl0aGluZy4KKyAgICAgIHJlZ2V4cC11bm1hdGNoYWJsZSkpCiAoYy1sYW5nLWRlZnZhciBjLWxp bmUtY29tbWVudC1zdGFydC1yZWdleHAKIAkgICAgICAgKGMtbGFuZy1jb25zdCBjLWxpbmUtY29t bWVudC1zdGFydC1yZWdleHApKQogCkBAIC0xNjI4LDcgKzE2MjgsNyBAQCAnYy1vcHQtb3AtaWRl bnRpdGllci1wcmVmaXgKIAogKGMtbGFuZy1kZWZjb25zdCBjLWRvYy1jb21tZW50LXN0YXJ0LXJl Z2V4cAogICAiUmVnZXhwIHRvIG1hdGNoIHRoZSBzdGFydCBvZiBkb2N1bWVudGF0aW9uIGNvbW1l bnRzLiIKLSAgdCAgICAiYVxcYCIJOyBEb2Vzbid0IG1hdGNoIGFueXRoaW5nLgorICB0ICAgIHJl Z2V4cC11bm1hdGNoYWJsZQogICA7OyBGcm9tIGZvbnQtbG9jay5lbDogYGRveHlnZW4nIHVzZXMg LyohIHdoaWxlIG90aGVycyB1c2UgLyoqLgogICAoYyBjKysgb2JqYykgIi9cXCpbKiFdIgogICBq YXZhICIvXFwqXFwqIgpAQCAtMzExMiw3ICszMTEyLDcgQEAgJ2Mtb3B0LW9wLWlkZW50aXRpZXIt cHJlZml4CiAgICJSZWdleHAgbWF0Y2hpbmcgYSBrZXl3b3JkIHRoYXQgaXMgZm9sbG93ZWQgYnkg YSBjb2xvbiwgd2hlcmUKICAgdGhlIHdob2xlIGNvbnN0cnVjdCBjYW4gcHJlY2VkZSBhIGRlY2xh cmF0aW9uLgogICBFLmcuIFwicHVibGljOlwiIGluIEMrKy4iCi0gIHQgImFcXGAiCQkJCTsgRG9l c24ndCBtYXRjaCBhbnl0aGluZy4KKyAgdCByZWdleHAtdW5tYXRjaGFibGUKICAgYysrIChjLW1h a2Uta2V5d29yZHMtcmUgdCAoYy1sYW5nLWNvbnN0IGMtcHJvdGVjdGlvbi1rd2RzKSkpCiAoYy1s YW5nLWRlZnZhciBjLWRlY2wtc3RhcnQtY29sb24ta3dkLXJlCiAgIChjLWxhbmctY29uc3QgYy1k ZWNsLXN0YXJ0LWNvbG9uLWt3ZC1yZSkpCkBAIC0zMzA5LDcgKzMzMDksNyBAQCAnYy1vcHQtb3At aWRlbnRpdGllci1wcmVmaXgKICAgdCAoaWYgKGMtbGFuZy1jb25zdCBjLXR5cGUtbW9kaWZpZXIt a3dkcykKIAkoY29uY2F0IChyZWdleHAtb3B0IChjLWxhbmctY29uc3QgYy10eXBlLW1vZGlmaWVy LWt3ZHMpIHQpICJcXD4iKQogICAgICAgOzsgRGVmYXVsdCB0byBhIHJlZ2V4cCB0aGF0IG5ldmVy IG1hdGNoZXMuCi0gICAgICAiYVxcYCIpCisgICAgICByZWdleHAtdW5tYXRjaGFibGUpCiAgIDs7 IENoZWNrIHRoYXQgdGhlcmUncyBubyAiPSIgYWZ0ZXJ3YXJkcyB0byBhdm9pZCBtYXRjaGluZyB0 b2tlbnMKICAgOzsgbGlrZSAiKj0iLgogICAoYyBvYmpjKSAoY29uY2F0ICJcXCgiCkBAIC0zMzQ3 LDcgKzMzNDcsNyBAQCAnYy1vcHQtb3AtaWRlbnRpdGllci1wcmVmaXgKIGFzIHRoZSBlbmQgb2Yg dGhlIG9wZXJhdG9yLiAgSWRlbnRpZmllciBzeW50YXggaXMgaW4gZWZmZWN0IHdoZW4KIHRoaXMg aXMgbWF0Y2hlZCBcKHNlZSBgYy1pZGVudGlmaWVyLXN5bnRheC10YWJsZScpLiIKICAgdCA7OyBE ZWZhdWx0IHRvIGEgcmVnZXhwIHRoYXQgbmV2ZXIgbWF0Y2hlcy4KLSAgICAiYVxcYCIKKyAgICBy ZWdleHAtdW5tYXRjaGFibGUKICAgOzsgQ2hlY2sgdGhhdCB0aGVyZSdzIG5vICI9IiBhZnRlcndh cmRzIHRvIGF2b2lkIG1hdGNoaW5nIHRva2VucwogICA7OyBsaWtlICIqPSIuCiAgIChjIG9iamMp IChjb25jYXQgIlxcKFxcKlxcKSIKQEAgLTM1MDYsNyArMzUwNiw3IEBAICdjLW9wdC1vcC1pZGVu dGl0aWVyLXByZWZpeAogKGMtbGFuZy1kZWZjb25zdCBjLXByZS1pZC1icmFjZWxpc3Qta2V5CiAg ICJBIHJlZ2V4cCBtYXRjaGluZyB0b2tlbnMgd2hpY2gsIHByZWNlZGluZyBhbiBpZGVudGlmaWVy LCBzaWduaWZ5IGEgYnJhY2VsaXN0LgogIgotICB0ICJhXFxgIgkJCQk7IERvZXNuJ3QgbWF0Y2gg YW55dGhpbmcuCisgIHQgcmVnZXhwLXVubWF0Y2hhYmxlCiAgIGMrKyAibmV3XFwoW15bOmFsbnVt Ol1fJF1cXHwkXFwpXFx8JiY/XFwoXFxTLlxcfCRcXCkiKQogKGMtbGFuZy1kZWZ2YXIgYy1wcmUt aWQtYnJhY2VsaXN0LWtleSAoYy1sYW5nLWNvbnN0IGMtcHJlLWlkLWJyYWNlbGlzdC1rZXkpKQog CkBAIC0zNTYyLDcgKzM1NjIsNyBAQCAnYy1vcHQtb3AtaWRlbnRpdGllci1wcmVmaXgKIAkgOzsg YmVmb3JlIHRoZSAneycgb2YgdGhlIGVudW0gbGlzdCwgdG8gYXZvaWQgc2VhcmNoaW5nIHRvbyBm YXIuCiAJICJbXl1be307LyM9XSoiCiAJICJ7IikKLSAgICAgICJhXFxgIikpCQkJCTsgRG9lc24n dCBtYXRjaCBhbnl0aGluZy4KKyAgICAgIHJlZ2V4cC11bm1hdGNoYWJsZSkpCiAoYy1sYW5nLWRl ZnZhciBjLWVudW0tY2xhdXNlLWludHJvZHVjdGlvbi1yZQogCSAgICAgICAoYy1sYW5nLWNvbnN0 IGMtZW51bS1jbGF1c2UtaW50cm9kdWN0aW9uLXJlKSkKIApAQCAtMzcwMyw3ICszNzAzLDcgQEAg J2Mtb3B0LW9wLWlkZW50aXRpZXItcHJlZml4CiAgICJSZWdleHAgbWF0Y2hpbmcgdGhpbmdzIHRo YXQgY2FuJ3Qgb2NjdXIgdHdvIHN5bWJvbHMgYmVmb3JlIGEgY29sb24gaW4KIGEgbGFiZWwgY29u c3RydWN0LiAgVGhpcyBjYXRjaGVzIEMrKydzIGluaGVyaXRhbmNlIGNvbnN0cnVjdCBcImNsYXNz IGZvbwogOiBiYXJcIi4gIE9ubHkgdXNlZCBpZiBgYy1yZWNvZ25pemUtY29sb24tbGFiZWxzJyBp cyBzZXQuIgotICB0ICJhXFxgIgkJCQk7IERvZXNuJ3QgbWF0Y2ggYW55dGhpbmcuCisgIHQgcmVn ZXhwLXVubWF0Y2hhYmxlCiAgIGMrKyAoYy1tYWtlLWtleXdvcmRzLXJlIHQgJygiY2xhc3MiKSkp CiAoYy1sYW5nLWRlZnZhciBjLW5vbmxhYmVsLXRva2VuLTIta2V5IChjLWxhbmctY29uc3QgYy1u b25sYWJlbC10b2tlbi0yLWtleSkpCiAKZGlmZiAtLWdpdCBhL2xpc3AvcHJvZ21vZGVzL2NjLW1v ZGUuZWwgYi9saXNwL3Byb2dtb2Rlcy9jYy1tb2RlLmVsCmluZGV4IGJkNjJmYzc1NGEuLmU0ZmY5 ZjAxOWQgMTAwNjQ0Ci0tLSBhL2xpc3AvcHJvZ21vZGVzL2NjLW1vZGUuZWwKKysrIGIvbGlzcC9w cm9nbW9kZXMvY2MtbW9kZS5lbApAQCAtMTgyNSw3ICsxODI1LDcgQEAgYy1kb2MtZmwtZGVjbC1z dGFydAogICA7OyBieSBgYy1kb2MtbGluZS1qb2luLXJlJyksIHJldHVybiB0aGUgcG9zaXRpb24g b2YgdGhlIGZpcnN0IGxpbmUgb2YgdGhlCiAgIDs7IHNlcXVlbmNlLiAgT3RoZXJ3aXNlLCByZXR1 cm4gbmlsLiAgUG9pbnQgaGFzIG5vIHNpZ25pZmljYW5jZSBhdCBlbnRyeSB0bwogICA7OyBhbmQg ZXhpdCBmcm9tIHRoaXMgZnVuY3Rpb24uCi0gICh3aGVuIChub3QgKGVxdWFsIGMtZG9jLWxpbmUt am9pbi1yZSAiYVxcYCIpKQorICAod2hlbiAobm90IChlcXVhbCBjLWRvYy1saW5lLWpvaW4tcmUg cmVnZXhwLXVubWF0Y2hhYmxlKSkKICAgICAoZ290by1jaGFyIHBvcykKICAgICAoYmFjay10by1p bmRlbnRhdGlvbikKICAgICAoYW5kIChvciAobG9va2luZy1hdCBjLWNvbW1lbnQtc3RhcnQtcmVn ZXhwKQpAQCAtMTg0Miw3ICsxODQyLDcgQEAgYy1kb2MtZmwtZGVjbC1lbmQKICAgOzsgbWFya2Vy IChhcyBkZWZpbmVkIGJ5IGBjLWRvYy1saW5lLWpvaW4tcmUpLCByZXR1cm4gdGhlIHBvc2l0aW9u IG9mCiAgIDs7IHRoZSBCT0wgYXQgdGhlIGVuZCBvZiB0aGUgc2VxdWVuY2UuICBPdGhlcndpc2Us IHJldHVybiBuaWwuICBQb2ludCBoYXMgbm8KICAgOzsgc2lnbmlmaWNhbmNlIGF0IGVudHJ5IHRv IGFuZCBleGl0IGZyb20gdGhpcyBmdW5jdGlvbi4KLSAgKHdoZW4gKG5vdCAoZXF1YWwgYy1kb2Mt bGluZS1qb2luLXJlICJhXFxgIikpCisgICh3aGVuIChub3QgKGVxdWFsIGMtZG9jLWxpbmUtam9p bi1yZSByZWdleHAtdW5tYXRjaGFibGUpKQogICAgIChnb3RvLWNoYXIgcG9zKQogICAgIChiYWNr LXRvLWluZGVudGF0aW9uKQogICAgIChsZXQgKChoZXJlIChwb2ludCkpKQpkaWZmIC0tZ2l0IGEv bGlzcC9wcm9nbW9kZXMvY2MtdmFycy5lbCBiL2xpc3AvcHJvZ21vZGVzL2NjLXZhcnMuZWwKaW5k ZXggNmU4YWNkNGMwZC4uYjgxOGJjZWQ3MyAxMDA2NDQKLS0tIGEvbGlzcC9wcm9nbW9kZXMvY2Mt dmFycy5lbAorKysgYi9saXNwL3Byb2dtb2Rlcy9jYy12YXJzLmVsCkBAIC0xNjQ4LDkgKzE2NDgs OSBAQCBjLWFzeW1tZXRyeS1mb250aWZpY2F0aW9uLWZsYWcKICAgOmdyb3VwICdjKQogCiA7OyBJ bml0aWFsaXplIHRoZSBuZXh0IHR3byB0byBhIHJlZ2V4cCB3aGljaCBuZXZlciBtYXRjaGVzLgot KGRlZnZhciBjLW5vaXNlLW1hY3JvLXdpdGgtcGFyZW5zLW5hbWUtcmUgImFcXGAiKQorKGRlZnZh ciBjLW5vaXNlLW1hY3JvLXdpdGgtcGFyZW5zLW5hbWUtcmUgcmVnZXhwLXVubWF0Y2hhYmxlKQog KG1ha2UtdmFyaWFibGUtYnVmZmVyLWxvY2FsICdjLW5vaXNlLW1hY3JvLXdpdGgtcGFyZW5zLW5h bWUtcmUpCi0oZGVmdmFyIGMtbm9pc2UtbWFjcm8tbmFtZS1yZSAiYVxcYCIpCisoZGVmdmFyIGMt bm9pc2UtbWFjcm8tbmFtZS1yZSByZWdleHAtdW5tYXRjaGFibGUpCiAobWFrZS12YXJpYWJsZS1i dWZmZXItbG9jYWwgJ2Mtbm9pc2UtbWFjcm8tbmFtZS1yZSkKIAogKGRlZmN1c3RvbSBjLW5vaXNl LW1hY3JvLW5hbWVzIG5pbApAQCAtMTY4Miw3ICsxNjgyLDcgQEAgYy1tYWtlLW5vaXNlLW1hY3Jv LXJlZ2V4cHMKICAgOzsgQ29udmVydCBgYy1ub2lzZS1tYWNyby1uYW1lcycgYW5kIGBjLW5vaXNl LW1hY3JvLXdpdGgtcGFyZW5zLW5hbWVzJyBpbnRvCiAgIDs7IGBjLW5vaXNlLW1hY3JvLW5hbWUt cmUnIGFuZCBgYy1ub2lzZS1tYWNyby13aXRoLXBhcmVucy1uYW1lLXJlJy4KICAgKHNldHEgYy1u b2lzZS1tYWNyby13aXRoLXBhcmVucy1uYW1lLXJlCi0JKGNvbmQgKChudWxsIGMtbm9pc2UtbWFj cm8td2l0aC1wYXJlbnMtbmFtZXMpICJhXFxgIikgOyBOZXZlciBtYXRjaGVzLgorCShjb25kICgo bnVsbCBjLW5vaXNlLW1hY3JvLXdpdGgtcGFyZW5zLW5hbWVzKSByZWdleHAtdW5tYXRjaGFibGUp CiAJICAgICAgKChjb25zcCBjLW5vaXNlLW1hY3JvLXdpdGgtcGFyZW5zLW5hbWVzKQogCSAgICAg ICAoY29uY2F0IChyZWdleHAtb3B0IGMtbm9pc2UtbWFjcm8td2l0aC1wYXJlbnMtbmFtZXMgdCkK IAkJICAgICAgICJcXChbXls6YWxudW06XV8kXVxcfCRcXCkiKSkKQEAgLTE2OTEsNyArMTY5MSw3 IEBAIGMtbWFrZS1ub2lzZS1tYWNyby1yZWdleHBzCiAJICAgICAgKHQgKGVycm9yICJjLW1ha2Ut bm9pc2UtbWFjcm8tcmVnZXhwczogXAogYy1ub2lzZS1tYWNyby13aXRoLXBhcmVucy1uYW1lcyBp cyBpbnZhbGlkOiAlcyIgYy1ub2lzZS1tYWNyby13aXRoLXBhcmVucy1uYW1lcykpKSkKICAgKHNl dHEgYy1ub2lzZS1tYWNyby1uYW1lLXJlCi0JKGNvbmQgKChudWxsIGMtbm9pc2UtbWFjcm8tbmFt ZXMpICJhXFxgIikgOyBOZXZlciBtYXRjaGVzIGFueXRoaW5nLgorCShjb25kICgobnVsbCBjLW5v aXNlLW1hY3JvLW5hbWVzKSByZWdleHAtdW5tYXRjaGFibGUpCiAJICAgICAgKChjb25zcCBjLW5v aXNlLW1hY3JvLW5hbWVzKQogCSAgICAgICAoY29uY2F0IChyZWdleHAtb3B0IGMtbm9pc2UtbWFj cm8tbmFtZXMgdCkKIAkJICAgICAgICJcXChbXls6YWxudW06XV8kXVxcfCRcXCkiKSkKZGlmZiAt LWdpdCBhL2xpc3AvcHJvZ21vZGVzL2dyZXAuZWwgYi9saXNwL3Byb2dtb2Rlcy9ncmVwLmVsCmlu ZGV4IDg1ZjkwNzhkNDYuLjc5MTc4YzQzNDYgMTAwNjQ0Ci0tLSBhL2xpc3AvcHJvZ21vZGVzL2dy ZXAuZWwKKysrIGIvbGlzcC9wcm9nbW9kZXMvZ3JlcC5lbApAQCAtODM3LDcgKzgzNyw4IEBAIGdy ZXAtbW9kZQogICAgICAgIGdyZXAtbW9kZS1saW5lLW1hdGNoZXMpCiAgIDs7IGNvbXBpbGF0aW9u LWRpcmVjdG9yeS1tYXRjaGVyIGNhbid0IGJlIG5pbCwgc28gd2Ugc2V0IGl0IHRvIGEgcmVnZXhw IHRoYXQKICAgOzsgY2FuIG5ldmVyIG1hdGNoLgotICAoc2V0IChtYWtlLWxvY2FsLXZhcmlhYmxl ICdjb21waWxhdGlvbi1kaXJlY3RvcnktbWF0Y2hlcikgJygiXFxgYVxcYCIpKQorICAoc2V0ICht YWtlLWxvY2FsLXZhcmlhYmxlICdjb21waWxhdGlvbi1kaXJlY3RvcnktbWF0Y2hlcikKKyAgICAg ICAobGlzdCByZWdleHAtdW5tYXRjaGFibGUpKQogICAoc2V0IChtYWtlLWxvY2FsLXZhcmlhYmxl ICdjb21waWxhdGlvbi1wcm9jZXNzLXNldHVwLWZ1bmN0aW9uKQogICAgICAgICdncmVwLXByb2Nl c3Mtc2V0dXApCiAgIChzZXQgKG1ha2UtbG9jYWwtdmFyaWFibGUgJ2NvbXBpbGF0aW9uLWRpc2Fi bGUtaW5wdXQpIHQpCmRpZmYgLS1naXQgYS9saXNwL3Byb2dtb2Rlcy9vY3RhdmUuZWwgYi9saXNw L3Byb2dtb2Rlcy9vY3RhdmUuZWwKaW5kZXggNTJlNWZkNDc3Zi4uOGE3ZTI0ZTVhZCAxMDA2NDQK LS0tIGEvbGlzcC9wcm9nbW9kZXMvb2N0YXZlLmVsCisrKyBiL2xpc3AvcHJvZ21vZGVzL29jdGF2 ZS5lbApAQCAtMTY5MSw3ICsxNjkxLDcgQEAgb2N0YXZlLWhlbHAtbW9kZQogICAoZXZhbC1hbmQt Y29tcGlsZSAocmVxdWlyZSAnaGVscC1tb2RlKSkKICAgOzsgRG9uJ3QgaGlnaGxpZ2h0IGBFWEFN UExFJyBhcyBlbGlzcCBzeW1ib2xzIGJ5IHVzaW5nIGEgcmVnZXhwIHRoYXQKICAgOzsgY2FuIG5l dmVyIG1hdGNoLgotICAoc2V0cS1sb2NhbCBoZWxwLXhyZWYtc3ltYm9sLXJlZ2V4cCAieFxcYCIp KQorICAoc2V0cS1sb2NhbCBoZWxwLXhyZWYtc3ltYm9sLXJlZ2V4cCByZWdleHAtdW5tYXRjaGFi bGUpKQogCiAoZGVmdW4gb2N0YXZlLWhlbHAgKGZuKQogICAiRGlzcGxheSB0aGUgZG9jdW1lbnRh dGlvbiBvZiBGTi4iCmRpZmYgLS1naXQgYS9saXNwL3N1YnIuZWwgYi9saXNwL3N1YnIuZWwKaW5k ZXggYmUyMWRjNjdhMC4uMDVmYjlmZWE2OCAxMDA2NDQKLS0tIGEvbGlzcC9zdWJyLmVsCisrKyBi L2xpc3Avc3Vici5lbApAQCAtNTU0NCw0ICs1NTQ0LDggQEAgZmxhdHRlbi10cmVlCiA7OyBmb3Ig ZGlzY292ZXJhYmlsaXR5OgogKGRlZmFsaWFzICdmbGF0dGVuLWxpc3QgJ2ZsYXR0ZW4tdHJlZSkK IAorOzsgVGhlIGluaXRpYWwgYW5jaG9yaW5nIGlzIGZvciBiZXR0ZXIgcGVyZm9ybWFuY2UgaW4g c2VhcmNoaW5nIG1hdGNoZXMuCisoZGVmY29uc3QgcmVnZXhwLXVubWF0Y2hhYmxlICJcXGBhXFxg IgorICAiU3RhbmRhcmQgcmVnZXhwIGd1YXJhbnRlZWQgbm90IHRvIG1hdGNoIGFueSBzdHJpbmcg YXQgYWxsLiIpCisKIDs7OyBzdWJyLmVsIGVuZHMgaGVyZQpkaWZmIC0tZ2l0IGEvbGlzcC90ZXh0 bW9kZXMvaXNwZWxsLmVsIGIvbGlzcC90ZXh0bW9kZXMvaXNwZWxsLmVsCmluZGV4IDY1NTNhMjc5 OWIuLjBjNWU2YTE4M2IgMTAwNjQ0Ci0tLSBhL2xpc3AvdGV4dG1vZGVzL2lzcGVsbC5lbAorKysg Yi9saXNwL3RleHRtb2Rlcy9pc3BlbGwuZWwKQEAgLTQwMTYsNyArNDAxNiw3IEBAIGlzcGVsbC1t ZXNzYWdlCiAKIChkZWZ1biBpc3BlbGwtbm9uLWVtcHR5LXN0cmluZyAoc3RyaW5nKQogICAoaWYg KG9yIChub3Qgc3RyaW5nKSAoc3RyaW5nLWVxdWFsIHN0cmluZyAiIikpCi0gICAgICAiXFwnXFxg IiA7IEFuIHVubWF0Y2hhYmxlIHN0cmluZyBpZiBzdHJpbmcgaXMgbnVsbC4KKyAgICAgIHJlZ2V4 cC11bm1hdGNoYWJsZQogICAgIChyZWdleHAtcXVvdGUgc3RyaW5nKSkpCiAKIApkaWZmIC0tZ2l0 IGEvbGlzcC92Yy92Yy1ienIuZWwgYi9saXNwL3ZjL3ZjLWJ6ci5lbAppbmRleCBhYjVhNDQ5Y2Qz Li5lZTE2NDZjYWU1IDEwMDY0NAotLS0gYS9saXNwL3ZjL3ZjLWJ6ci5lbAorKysgYi9saXNwL3Zj L3ZjLWJ6ci5lbApAQCAtNzAyLDcgKzcwMiw3IEBAIHZjLWJ6ci1sb2ctdmlldy1tb2RlCiAgIChy ZW1vdmUtaG9vayAnbG9nLXZpZXctbW9kZS1ob29rICd2Yy1ienItbG9nLXZpZXctbW9kZSkgO0Rl YWN0aXZhdGUgdGhlIGhhY2suCiAgIChyZXF1aXJlICdhZGQtbG9nKQogICAoc2V0IChtYWtlLWxv Y2FsLXZhcmlhYmxlICdsb2ctdmlldy1wZXItZmlsZS1sb2dzKSBuaWwpCi0gIChzZXQgKG1ha2Ut bG9jYWwtdmFyaWFibGUgJ2xvZy12aWV3LWZpbGUtcmUpICJcXGBhXFxgIikKKyAgKHNldCAobWFr ZS1sb2NhbC12YXJpYWJsZSAnbG9nLXZpZXctZmlsZS1yZSkgcmVnZXhwLXVubWF0Y2hhYmxlKQog ICAoc2V0IChtYWtlLWxvY2FsLXZhcmlhYmxlICdsb2ctdmlldy1tZXNzYWdlLXJlKQogICAgICAg IChpZiAoZXEgdmMtbG9nLXZpZXctdHlwZSAnc2hvcnQpCiAJICAgIl4gKlxcKFswLTkuXStcXCk6 IFxcKC4qP1xcKVsgXHRdK1xcKFswLTldXFx7NFxcfS1bMC05XVxcezJcXH0tWzAtOV1cXHsyXFx9 XFwpXFwoIFxcW21lcmdlXFxdXFwpPyIKQEAgLTEzMTksNyArMTMxOSw4IEBAIHZjLWJ6ci1yZXZp c2lvbi1jb21wbGV0aW9uLXRhYmxlCiAgICAgICgoc3RyaW5nLW1hdGNoICJcXGBhbm5vdGF0ZToi IHN0cmluZykKICAgICAgIChjb21wbGV0aW9uLXRhYmxlLXdpdGgtY29udGV4dAogICAgICAgIChz dWJzdHJpbmcgc3RyaW5nIDAgKG1hdGNoLWVuZCAwKSkKLSAgICAgICAoYXBwbHktcGFydGlhbGx5 ICMnY29tcGxldGlvbi10YWJsZS13aXRoLXRlcm1pbmF0b3IgJygiOiIgLiAiXFxgYVxcYCIpCisg ICAgICAgKGFwcGx5LXBhcnRpYWxseSAjJ2NvbXBsZXRpb24tdGFibGUtd2l0aC10ZXJtaW5hdG9y CisgICAgICAgICAgICAgICAgICAgICAgICAoY29ucyAiOiIgcmVnZXhwLXVubWF0Y2hhYmxlKQog ICAgICAgICAgICAgICAgICAgICAgICAgIydjb21wbGV0aW9uLWZpbGUtbmFtZS10YWJsZSkKICAg ICAgICAoc3Vic3RyaW5nIHN0cmluZyAobWF0Y2gtZW5kIDApKSBwcmVkIGFjdGlvbikpCiAKZGlm ZiAtLWdpdCBhL2xpc3AvdmMvdmMtZ2l0LmVsIGIvbGlzcC92Yy92Yy1naXQuZWwKaW5kZXggMTky ZTZjZjY4Zi4uNjFjMTMwMjZjYyAxMDA2NDQKLS0tIGEvbGlzcC92Yy92Yy1naXQuZWwKKysrIGIv bGlzcC92Yy92Yy1naXQuZWwKQEAgLTEwODcsNyArMTA4Nyw3IEBAIGxvZy12aWV3LWV4cGFuZGVk LWxvZy1lbnRyeS1mdW5jdGlvbgogKGRlZmluZS1kZXJpdmVkLW1vZGUgdmMtZ2l0LWxvZy12aWV3 LW1vZGUgbG9nLXZpZXctbW9kZSAiR2l0LUxvZy1WaWV3IgogICAocmVxdWlyZSAnYWRkLWxvZykg OzsgV2UgbmVlZCB0aGUgZmFjZXMgYWRkLWxvZy4KICAgOzsgRG9uJ3QgaGF2ZSBmaWxlIG1hcmtl cnMsIHNvIHVzZSBpbXBvc3NpYmxlIHJlZ2V4cC4KLSAgKHNldCAobWFrZS1sb2NhbC12YXJpYWJs ZSAnbG9nLXZpZXctZmlsZS1yZSkgIlxcYGFcXGAiKQorICAoc2V0IChtYWtlLWxvY2FsLXZhcmlh YmxlICdsb2ctdmlldy1maWxlLXJlKSByZWdleHAtdW5tYXRjaGFibGUpCiAgIChzZXQgKG1ha2Ut bG9jYWwtdmFyaWFibGUgJ2xvZy12aWV3LXBlci1maWxlLWxvZ3MpIG5pbCkKICAgKHNldCAobWFr ZS1sb2NhbC12YXJpYWJsZSAnbG9nLXZpZXctbWVzc2FnZS1yZSkKICAgICAgICAoaWYgKG5vdCAo ZXEgdmMtbG9nLXZpZXctdHlwZSAnbG9uZykpCmRpZmYgLS1naXQgYS9saXNwL3ZjL3ZjLWhnLmVs IGIvbGlzcC92Yy92Yy1oZy5lbAppbmRleCBkM2YxMzJkYWU3Li44NzZkODI0Y2VhIDEwMDY0NAot LS0gYS9saXNwL3ZjL3ZjLWhnLmVsCisrKyBiL2xpc3AvdmMvdmMtaGcuZWwKQEAgLTQ0NCw3ICs0 NDQsNyBAQCBsb2ctdmlldy1leHBhbmRlZC1sb2ctZW50cnktZnVuY3Rpb24KIAogKGRlZmluZS1k ZXJpdmVkLW1vZGUgdmMtaGctbG9nLXZpZXctbW9kZSBsb2ctdmlldy1tb2RlICJIZy1Mb2ctVmll dyIKICAgKHJlcXVpcmUgJ2FkZC1sb2cpIDs7IHdlIG5lZWQgdGhlIGFkZC1sb2cgZmFjZXMKLSAg KHNldCAobWFrZS1sb2NhbC12YXJpYWJsZSAnbG9nLXZpZXctZmlsZS1yZSkgIlxcYGFcXGAiKQor ICAoc2V0IChtYWtlLWxvY2FsLXZhcmlhYmxlICdsb2ctdmlldy1maWxlLXJlKSByZWdleHAtdW5t YXRjaGFibGUpCiAgIChzZXQgKG1ha2UtbG9jYWwtdmFyaWFibGUgJ2xvZy12aWV3LXBlci1maWxl LWxvZ3MpIG5pbCkKICAgKHNldCAobWFrZS1sb2NhbC12YXJpYWJsZSAnbG9nLXZpZXctbWVzc2Fn ZS1yZSkKICAgICAgICAoaWYgKGVxIHZjLWxvZy12aWV3LXR5cGUgJ3Nob3J0KQpkaWZmIC0tZ2l0 IGEvbGlzcC92Yy92Yy1tdG4uZWwgYi9saXNwL3ZjL3ZjLW10bi5lbAppbmRleCBmMGIxMjQ4OWMx Li45MWNjMjgwMjFjIDEwMDY0NAotLS0gYS9saXNwL3ZjL3ZjLW10bi5lbAorKysgYi9saXNwL3Zj L3ZjLW10bi5lbApAQCAtMjQwLDcgKzI0MCw3IEBAIGxvZy12aWV3LXBlci1maWxlLWxvZ3MKIAog KGRlZmluZS1kZXJpdmVkLW1vZGUgdmMtbXRuLWxvZy12aWV3LW1vZGUgbG9nLXZpZXctbW9kZSAi TXRuLUxvZy1WaWV3IgogICA7OyBEb24ndCBtYXRjaCBhbnl0aGluZy4KLSAgKHNldCAobWFrZS1s b2NhbC12YXJpYWJsZSAnbG9nLXZpZXctZmlsZS1yZSkgIlxcYGFcXGAiKQorICAoc2V0IChtYWtl LWxvY2FsLXZhcmlhYmxlICdsb2ctdmlldy1maWxlLXJlKSByZWdleHAtdW5tYXRjaGFibGUpCiAg IChzZXQgKG1ha2UtbG9jYWwtdmFyaWFibGUgJ2xvZy12aWV3LXBlci1maWxlLWxvZ3MpIG5pbCkK ICAgOzsgVE9ETzogVXNlIGEgbW9yZSBwcmVjaXNlIHJlZ2V4cCB0aGFuICJbIHwvXSsiIHRvIGF2 b2lkIGZhbHNlIHBvc2l0aXZlcwogICA7OyBpbiB0aGUgQ2hhbmdlTG9nIHRleHQuCi0tIAoyLjIw LjEKCg== --=-qjOcxk1Kou41Es2+B50Y--