From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Jim Porter Newsgroups: gmane.emacs.bugs Subject: bug#52999: 29.0.50; [PATCH v2] `eshell-eval-using-options' should follow POSIX/GNU argument conventions Date: Mon, 3 Jan 2022 21:33:28 -0800 Message-ID: <8c7a7765-2d40-e685-1d93-c60496a4f626@gmail.com> References: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------A66C2B1A69C4FDCFBE1AF9D4" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="24104"; mail-complaints-to="usenet@ciao.gmane.io" To: 52999@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Tue Jan 04 06:34:16 2022 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1n4cSd-000667-NR for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 04 Jan 2022 06:34:15 +0100 Original-Received: from localhost ([::1]:48210 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1n4cSb-0003pC-Hn for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 04 Jan 2022 00:34:13 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:51526) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1n4cSQ-0003oZ-Cs for bug-gnu-emacs@gnu.org; Tue, 04 Jan 2022 00:34:03 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]:53428) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1n4cSQ-0006qG-3L for bug-gnu-emacs@gnu.org; Tue, 04 Jan 2022 00:34:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1n4cSP-0007B7-TT for bug-gnu-emacs@gnu.org; Tue, 04 Jan 2022 00:34:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Jim Porter Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 04 Jan 2022 05:34:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 52999 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch Original-Received: via spool by 52999-submit@debbugs.gnu.org id=B52999.164127442027561 (code B ref 52999); Tue, 04 Jan 2022 05:34:01 +0000 Original-Received: (at 52999) by debbugs.gnu.org; 4 Jan 2022 05:33:40 +0000 Original-Received: from localhost ([127.0.0.1]:36741 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1n4cS3-0007AS-8U for submit@debbugs.gnu.org; Tue, 04 Jan 2022 00:33:39 -0500 Original-Received: from mail-pf1-f176.google.com ([209.85.210.176]:46960) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1n4cRz-0007AB-HS for 52999@debbugs.gnu.org; Tue, 04 Jan 2022 00:33:37 -0500 Original-Received: by mail-pf1-f176.google.com with SMTP id t123so31183126pfc.13 for <52999@debbugs.gnu.org>; Mon, 03 Jan 2022 21:33:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=subject:from:to:references:message-id:date:mime-version:in-reply-to :content-language; bh=H5cVQc0eOrKlLISdIZdZAwOT79m5ViW0l4W7T6ERITs=; b=faTbMtQ2g5z124G+O2EHgosXNhhloKcX7nQLEwnb1UT70E1L2UC6BKpXexeHREDIL9 +rxWd4LBtxNj11nDLHbW+sRYRuNNyA4U7Jqn8b7fiZRGJlZzv52mg7d2ep59t2RgG/Gd f2wsi5WF6VdEh/A4w0/IpL/OJFq38O0Cunm6b50osbdD7rk7j2je3WLh5pTltCZQbcKZ HdfADcK3yl1dUZplqzznf3TkP9Go861q51uFyYNrGlZJzD+WfLoVIMmwKH/lPII7C9/T xmZ8WfgdkLxjPL/ESByX1Qc3XokpIc+M3nZvqBSzsh+3fFYejXtuvU5UDyayJSDG28Ii 8/aA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:subject:from:to:references:message-id:date :mime-version:in-reply-to:content-language; bh=H5cVQc0eOrKlLISdIZdZAwOT79m5ViW0l4W7T6ERITs=; b=JPFgJZbk2MTOeoTTmee4IWDzcEno1byK/ZqYitx/pCAiIXDAFEVwe/i//jUN6CZ9+D lqfaxmU4V76j2/8U0hCHbkxFSdnxXbMEXGI5X9hDhmXIXxC2UW/5RnkmyHrUTwPCSOQg A0IrwCIoblKj2wqURKoInG0+lDq5r1wwFbYINOJrcxqRMYi09mVqkmJ1pym3ubNd3WY/ MWOWB/MaWp/C8VEnndTgfYH+TnyBne2PRlK7iC//gV1YCFVy9aLH+sS5ojELc9szh9QO cp0Rp+zIDlb5nvehEqKT2Fk332GmWuMYtu2oN1KhDBRp8ulttO7/2fmjTGL51CFSlqPc /svA== X-Gm-Message-State: AOAM531/bjMDvRwoE8bmYN28UxWVQJjkf8COHopTQnDdezzNdNZ6aDfs 9VE2uQ0EyP4OiSbLVt5qx4zUjhuYtJ8= X-Google-Smtp-Source: ABdhPJyygehzndt4Q1GUyeA62uyIU7RJ9Z4M0opcOvEbs8Z2V1lGgUpBmgtFm80L/bV6U9BWzlJZIQ== X-Received: by 2002:a05:6a00:8d3:b0:4bc:3fe0:98d2 with SMTP id s19-20020a056a0008d300b004bc3fe098d2mr24561114pfu.3.1641274409563; Mon, 03 Jan 2022 21:33:29 -0800 (PST) Original-Received: from [192.168.1.2] (cpe-76-168-148-233.socal.res.rr.com. [76.168.148.233]) by smtp.googlemail.com with ESMTPSA id na9sm35628781pjb.0.2022.01.03.21.33.28 for <52999@debbugs.gnu.org> (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 03 Jan 2022 21:33:28 -0800 (PST) In-Reply-To: Content-Language: en-US X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.io gmane.emacs.bugs:223624 Archived-At: This is a multi-part message in MIME format. --------------A66C2B1A69C4FDCFBE1AF9D4 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit On 1/3/2022 5:36 PM, Jim Porter wrote: > I've attached a patch with tests to fix this and use the POSIX/GNU > argument conventions, supporting both the above cases. One small addition here. I just noticed that `eshell-eval-using-options' already supports "--" to terminate all the options, so I added a test case for that too. --------------A66C2B1A69C4FDCFBE1AF9D4 Content-Type: text/plain; charset=UTF-8; name="0001-Follow-POSIX-GNU-argument-conventions-for-eshell-eva.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename*0="0001-Follow-POSIX-GNU-argument-conventions-for-eshell-eva.pa"; filename*1="tch" RnJvbSBkZTIwYzUyZjc2NjkzNjc0NzljM2M0NzYyY2I4MzI2ZjlhMjA1OGIzIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKaW0gUG9ydGVyIDxqcG9ydGVyYnVnc0BnbWFpbC5j b20+CkRhdGU6IE1vbiwgMyBKYW4gMjAyMiAyMTozMDo1OSAtMDgwMApTdWJqZWN0OiBbUEFU Q0hdIEZvbGxvdyBQT1NJWC9HTlUgYXJndW1lbnQgY29udmVudGlvbnMgZm9yCiAnZXNoZWxs LWV2YWwtdXNpbmctb3B0aW9ucycKCiogbGlzcC9lc2hlbGwvZXNoLW9wdC5lbCAoZXNoZWxs LS1zcGxpdC1zd2l0Y2gpOiBOZXcgZnVuY3Rpb24uCihlc2hlbGwtc2V0LW9wdGlvbik6IEFs bG93IHNldHRpbmcgYSBzdXBwbGllZCB2YWx1ZSBpbnN0ZWFkIG9mIGFsd2F5cwpjb25zdW1p bmcgZnJvbSAnZXNoZWxsLS1hcmdzJy4KKGVzaGVsbC0tcHJvY2Vzcy1vcHRpb24pOiBTdXBw b3J0IGNvbnN1bWluZyBvcHRpb24gdmFsdWVzIHNwZWNpZmllZCBhcwphIHNpbmdsZSB0b2tl bi4KKGVzaGVsbC0tcHJvY2Vzcy1hcmdzKTogRm9yIHNob3J0IG9wdGlvbnMsIHBhc3MgZnVs bCBzd2l0Y2ggdG9rZW4gdG8KJ2VzaGVsbC0tcHJvY2Vzcy1vcHRpb24nLgoKKiB0ZXN0L2xp c3AvZXNoZWxsL2VzaC1vcHQtdGVzdHMuZWwgKGVzaC1vcHQtcHJvY2Vzcy1hcmdzLXRlc3Qp OiBGaXgKdGVzdC4KKHRlc3QtZXNoZWxsLWV2YWwtdXNpbmctb3B0aW9ucyk6IEFkZCB0ZXN0 cyBmb3IgdmFyaW91cyB0eXBlcyBvZgpvcHRpb25zLgoKKiBldGMvTkVXUzogQW5ub3VuY2Ug dGhlIGNoYW5nZS4KLS0tCiBldGMvTkVXUyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg IDMgKwogbGlzcC9lc2hlbGwvZXNoLW9wdC5lbCAgICAgICAgICAgIHwgIDkwICsrKysrKysr KysrKy0tLS0tLQogdGVzdC9saXNwL2VzaGVsbC9lc2gtb3B0LXRlc3RzLmVsIHwgMTQ5ICsr KysrKysrKysrKysrKysrKysrKystLS0tLS0tLQogMyBmaWxlcyBjaGFuZ2VkLCAxNzQgaW5z ZXJ0aW9ucygrKSwgNjggZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZXRjL05FV1MgYi9l dGMvTkVXUwppbmRleCBjYTZhNzE2Y2NkLi5iNTk1ZDk5NjMzIDEwMDY0NAotLS0gYS9ldGMv TkVXUworKysgYi9ldGMvTkVXUwpAQCAtMTA2MCw2ICsxMDYwLDkgQEAgZGltZW5zaW9ucy4K IFNwZWNpZnlpbmcgYSBjb25zIGFzIHRoZSBmcm9tIGFyZ3VtZW50IGFsbG93cyB0byBzdGFy dCBtZWFzdXJpbmcgdGV4dAogZnJvbSBhIHNwZWNpZmllZCBhbW91bnQgb2YgcGl4ZWxzIGFi b3ZlIG9yIGJlbG93IGEgcG9zaXRpb24uCiAKKy0tLQorKiogJ2VzaGVsbC1ldmFsLXVzaW5n LW9wdGlvbnMnIG5vdyBmb2xsb3dzIFBPU0lYL0dOVSBhcmd1bWVudCBzeW50YXggY29udmVu dGlvbnMuCisKICoqIFhERyBzdXBwb3J0CiAKICoqKiBOZXcgZnVuY3Rpb24gJ3hkZy1zdGF0 ZS1ob21lJyByZXR1cm5zICdYREdfU1RBVEVfSE9NRScgZW52aXJvbm1lbnQgdmFyaWFibGUu CmRpZmYgLS1naXQgYS9saXNwL2VzaGVsbC9lc2gtb3B0LmVsIGIvbGlzcC9lc2hlbGwvZXNo LW9wdC5lbAppbmRleCA3ZDMxODQ1NTI4Li5mY2MzNTc4MGU5IDEwMDY0NAotLS0gYS9saXNw L2VzaGVsbC9lc2gtb3B0LmVsCisrKyBiL2xpc3AvZXNoZWxsL2VzaC1vcHQuZWwKQEAgLTE4 Nyw0OSArMTg3LDgyIEBAIGVzaGVsbC1zaG93LXVzYWdlCiB3aWxsIGJlIGNhbGxlZCBpbnN0 ZWFkLiIgZXh0Y21kKSkpKSkKICAgICAodGhyb3cgJ2VzaGVsbC11c2FnZSB1c2FnZSkpKQog Ci0oZGVmdW4gZXNoZWxsLS1zZXQtb3B0aW9uIChuYW1lIGFpIG9wdCBvcHRpb25zIG9wdC12 YWxzKQorKGRlZnVuIGVzaGVsbC0tc3BsaXQtc3dpdGNoIChzd2l0Y2gga2luZCkKKyAgIlNw bGl0IFNXSVRDSCBpbnRvIGl0cyBvcHRpb24gbmFtZSBhbmQgcG90ZW50aWFsIHZhbHVlLCBp ZiBhbnkuCitLSU5EIHNob3VsZCBiZSB0aGUgaW50ZWdlciAwIGlmIFNXSVRDSCBpcyBhIHNo b3J0IG9wdGlvbiwgb3IgMSBpZiBpdCdzCithIGxvbmcgb3B0aW9uLiIKKyAgKGlmIChlcSBr aW5kIDApCisgICAgICA7OyBTaG9ydCBvcHRpb24KKyAgICAgIChjb25zIChhcmVmIHN3aXRj aCAwKQorICAgICAgICAgICAgKGFuZCAoPiAobGVuZ3RoIHN3aXRjaCkgMSkgKHN1YnN0cmlu ZyBzd2l0Y2ggMSkpKQorICAgIDs7IExvbmcgb3B0aW9uCisgICAgKHNhdmUtbWF0Y2gtZGF0 YQorICAgICAgKHN0cmluZy1tYXRjaCAiXFwoW149XSpcXClcXCg/Oj1cXCguKlxcKVxcKT8i IHN3aXRjaCkKKyAgICAgIChjb25zIChtYXRjaC1zdHJpbmcgMSBzd2l0Y2gpIChtYXRjaC1z dHJpbmcgMiBzd2l0Y2gpKSkpKQorCisoZGVmdW4gZXNoZWxsLS1zZXQtb3B0aW9uIChuYW1l IGFpIG9wdCB2YWx1ZSBvcHRpb25zIG9wdC12YWxzKQogICAiVXNpbmcgTkFNRSdzIHJlbWFp bmluZyBhcmdzIChpbmRleCBBSSksIHNldCB0aGUgT1BUIHdpdGhpbiBPUFRJT05TLgotSWYg dGhlIG9wdGlvbiBjb25zdW1lcyBhbiBhcmd1bWVudCBmb3IgaXRzIHZhbHVlLCB0aGUgYXJn dW1lbnQgbGlzdAotd2lsbCBiZSBtb2RpZmllZC4iCitWQUxVRSBpcyB0aGUgcG90ZW50aWFs IHZhbHVlIG9mIHRoZSBPUFQsIGNvbWluZyBmcm9tIGFyZ3MgbGlrZQorXCItZlZBTFVFXCIg b3IgXCItLWZvbz1WQUxVRVwiLCBvciBuaWwgaWYgbm8gdmFsdWUgd2FzIHN1cHBsaWVkLiAg SWYKK09QVCBkb2Vzbid0IGNvbnN1bWUgYSB2YWx1ZSwgcmV0dXJuIFZBTFVFIHVuY2hhbmdl ZCBzbyB0aGF0IGl0IGNhbiBiZQorcHJvY2Vzc2VkIGxhdGVyOyBvdGhlcndzaWUsIHJldHVy biBuaWwuCisKK0lmIHRoZSBPUFQgY29uc3VtZXMgYW4gYXJndW1lbnQgZm9yIGl0cyB2YWx1 ZSBhbmQgVkFMVUUgaXMgbmlsLCB0aGUKK2FyZ3VtZW50IGxpc3Qgd2lsbCBiZSBtb2RpZmll ZC4iCiAgIChpZiAobm90IChudGggMyBvcHQpKQogICAgICAgKGVzaGVsbC1zaG93LXVzYWdl IG5hbWUgb3B0aW9ucykKLSAgICAoc2V0Y2RyIChhc3NxIChudGggMyBvcHQpIG9wdC12YWxz KQotICAgICAgICAgICAgKGlmIChlcSAobnRoIDIgb3B0KSB0KQotICAgICAgICAgICAgICAg IChpZiAoPiBhaSAobGVuZ3RoIGVzaGVsbC0tYXJncykpCi0gICAgICAgICAgICAgICAgICAg IChlcnJvciAiJXM6IG1pc3Npbmcgb3B0aW9uIGFyZ3VtZW50IiBuYW1lKQotICAgICAgICAg ICAgICAgICAgKHBvcCAobnRoY2RyIGFpIGVzaGVsbC0tYXJncykpKQotICAgICAgICAgICAg ICAob3IgKG50aCAyIG9wdCkgdCkpKSkpCisgICAgKGlmIChlcSAobnRoIDIgb3B0KSB0KQor ICAgICAgICAocHJvZ24KKyAgICAgICAgICAoc2V0Y2RyIChhc3NxIChudGggMyBvcHQpIG9w dC12YWxzKQorICAgICAgICAgICAgICAgICAgKG9yIHZhbHVlCisgICAgICAgICAgICAgICAg ICAgICAgKGlmICg+IGFpIChsZW5ndGggZXNoZWxsLS1hcmdzKSkKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgKGVycm9yICIlczogbWlzc2luZyBvcHRpb24gYXJndW1lbnQiIG5hbWUp CisgICAgICAgICAgICAgICAgICAgICAgICAocG9wIChudGhjZHIgYWkgZXNoZWxsLS1hcmdz KSkpKSkKKyAgICAgICAgICBuaWwpCisgICAgICAoc2V0Y2RyIChhc3NxIChudGggMyBvcHQp IG9wdC12YWxzKQorICAgICAgICAgICAgICAob3IgKG50aCAyIG9wdCkgdCkpCisgICAgICB2 YWx1ZSkpKQogCiAoZGVmdW4gZXNoZWxsLS1wcm9jZXNzLW9wdGlvbiAobmFtZSBzd2l0Y2gg a2luZCBhaSBvcHRpb25zIG9wdC12YWxzKQogICAiRm9yIE5BTUUsIHByb2Nlc3MgU1dJVENI IChvZiB0eXBlIEtJTkQpLCBmcm9tIGFyZ3MgYXQgaW5kZXggQUkuCiBUaGUgU1dJVENIIHdp bGwgYmUgbG9va2VkIHVwIGluIHRoZSBzZXQgb2YgT1BUSU9OUy4KIAotU1dJVENIIHNob3Vs ZCBiZSBlaXRoZXIgYSBzdHJpbmcgb3IgY2hhcmFjdGVyLiAgS0lORCBzaG91bGQgYmUgdGhl Ci1pbnRlZ2VyIDAgaWYgaXQncyBhIGNoYXJhY3Rlciwgb3IgMSBpZiBpdCdzIGEgc3RyaW5n LgotCi1UaGUgU1dJVENIIGlzIHRoZW4gYmUgbWF0Y2hlZCBhZ2FpbnN0IE9QVElPTlMuICBJ ZiBubyBtYXRjaGluZyBoYW5kbGVyCi1pcyBmb3VuZCwgYW5kIGFuIDpleHRlcm5hbCBjb21t YW5kIGlzIGRlZmluZWQgKGFuZCBhdmFpbGFibGUpLCBpdCB3aWxsCi1iZSBjYWxsZWQ7IG90 aGVyd2lzZSwgYW4gZXJyb3Igd2lsbCBiZSB0cmlnZ2VyZWQgdG8gc2F5IHRoYXQgdGhlCi1z d2l0Y2ggaXMgdW5yZWNvZ25pemVkLiIKLSAgKGxldCogKChvcHRzIG9wdGlvbnMpCi0JIGZv dW5kKQorU1dJVENIIHNob3VsZCBiZSBhIHN0cmluZyBzdGFydGluZyB3aXRoIHRoZSBvcHRp b24gdG8gcHJvY2VzcywKK3Bvc3NpYmx5IGZvbGxvd2VkIGJ5IGl0cyB2YWx1ZSwgZS5nLiBc InVcIiBvciBcInVVU0VSXCIuICBLSU5EIHNob3VsZAorYmUgdGhlIGludGVnZXIgMCBpZiBp dCdzIGEgc2hvcnQgb3B0aW9uLCBvciAxIGlmIGl0J3MgYSBsb25nIG9wdGlvbi4KKworVGhl IFNXSVRDSCBpcyB0aGVuIGJlIG1hdGNoZWQgYWdhaW5zdCBPUFRJT05TLiAgSWYgS0lORCBp cyAwIGFuZCB0aGUKK1NXSVRDSCBtYXRjaGVzIGFuIG9wdGlvbiB0aGF0IGRvZXNuJ3QgdGFr ZSBhIHZhbHVlLCByZXR1cm4gdGhlCityZW1haW5pbmcgY2hhcmFjdGVycyBpbiBTV0lUQ0gg dG8gYmUgcHJvY2Vzc2VkIGxhdGVyIGFzIGZ1cnRoZXIgc2hvcnQKK29wdGlvbnMuCisKK0lm IG5vIG1hdGNoaW5nIGhhbmRsZXIgaXMgZm91bmQsIGFuZCBhbiA6ZXh0ZXJuYWwgY29tbWFu ZCBpcyBkZWZpbmVkCisoYW5kIGF2YWlsYWJsZSksIGl0IHdpbGwgYmUgY2FsbGVkOyBvdGhl cndpc2UsIGFuIGVycm9yIHdpbGwgYmUKK3RyaWdnZXJlZCB0byBzYXkgdGhhdCB0aGUgc3dp dGNoIGlzIHVucmVjb2duaXplZC4iCisgIChsZXQgKChzd2l0Y2ggKGVzaGVsbC0tc3BsaXQt c3dpdGNoIHN3aXRjaCBraW5kKSkKKyAgICAgICAgKG9wdHMgb3B0aW9ucykKKwlmb3VuZCBy ZW1haW5pbmcpCiAgICAgKHdoaWxlIG9wdHMKICAgICAgIChpZiAoYW5kIChsaXN0cCAoY2Fy IG9wdHMpKQotICAgICAgICAgICAgICAgKG50aCBraW5kIChjYXIgb3B0cykpCi0gICAgICAg ICAgICAgICAoZXF1YWwgc3dpdGNoIChudGgga2luZCAoY2FyIG9wdHMpKSkpCisgICAgICAg ICAgICAgICAoZXF1YWwgKGNhciBzd2l0Y2gpIChudGgga2luZCAoY2FyIG9wdHMpKSkpCiAJ ICAocHJvZ24KLQkgICAgKGVzaGVsbC0tc2V0LW9wdGlvbiBuYW1lIGFpIChjYXIgb3B0cykg b3B0aW9ucyBvcHQtdmFscykKKwkgICAgKHNldHEgcmVtYWluaW5nIChlc2hlbGwtLXNldC1v cHRpb24gbmFtZSBhaSAoY2FyIG9wdHMpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAoY2RyIHN3aXRjaCkgb3B0aW9ucyBvcHQtdmFscykpCisg ICAgICAgICAgICAod2hlbiAoYW5kIHJlbWFpbmluZyAoZXEga2luZCAxKSkKKyAgICAgICAg ICAgICAgKGVycm9yICIlczogb3B0aW9uIC0tJXMgZG9lc24ndCBhbGxvdyBhbiBhcmd1bWVu dCIKKyAgICAgICAgICAgICAgICAgICAgIG5hbWUgKGNhciBzd2l0Y2gpKSkKIAkgICAgKHNl dHEgZm91bmQgdCBvcHRzIG5pbCkpCiAJKHNldHEgb3B0cyAoY2RyIG9wdHMpKSkpCi0gICAg KHVubGVzcyBmb3VuZAorICAgIChpZiBmb3VuZAorICAgICAgICByZW1haW5pbmcKICAgICAg IChsZXQgKChleHRjbWQgKG1lbXEgJzpleHRlcm5hbCBvcHRpb25zKSkpCiAJKHdoZW4gZXh0 Y21kCiAJICAoc2V0cSBleHRjbWQgKGVzaGVsbC1zZWFyY2gtcGF0aCAoY2FkciBleHRjbWQp KSkKIAkgIChpZiBleHRjbWQKIAkgICAgICAodGhyb3cgJ2VzaGVsbC1leHQtY29tbWFuZCBl eHRjbWQpCi0gICAgICAgICAgICAoZXJyb3IgKGlmIChjaGFyYWN0ZXJwIHN3aXRjaCkgIiVz OiB1bnJlY29nbml6ZWQgb3B0aW9uIC0lYyIKKyAgICAgICAgICAgIChlcnJvciAoaWYgKGNo YXJhY3RlcnAgKGNhciBzd2l0Y2gpKSAiJXM6IHVucmVjb2duaXplZCBvcHRpb24gLSVjIgog ICAgICAgICAgICAgICAgICAgICAgIiVzOiB1bnJlY29nbml6ZWQgb3B0aW9uIC0tJXMiKQot ICAgICAgICAgICAgICAgICAgIG5hbWUgc3dpdGNoKSkpKSkpKQorICAgICAgICAgICAgICAg ICAgIG5hbWUgKGNhciBzd2l0Y2gpKSkpKSkpKQogCiAoZGVmdW4gZXNoZWxsLS1wcm9jZXNz LWFyZ3MgKG5hbWUgYXJncyBvcHRpb25zKQogICAiUHJvY2VzcyB0aGUgZ2l2ZW4gQVJHUyB1 c2luZyBPUFRJT05TLiIKQEAgLTI2MiwxMiArMjk1LDkgQEAgZXNoZWxsLS1wcm9jZXNzLWFy Z3MKIAkgICAgICAoaWYgKD4gKGxlbmd0aCBzd2l0Y2gpIDApCiAJCSAgKGVzaGVsbC0tcHJv Y2Vzcy1vcHRpb24gbmFtZSBzd2l0Y2ggMSBhaSBvcHRpb25zIG9wdC12YWxzKQogCQkoc2V0 cSBhaSAobGVuZ3RoIGVzaGVsbC0tYXJncykpKQotCSAgICAobGV0ICgobGVuIChsZW5ndGgg c3dpdGNoKSkKLQkJICAoaW5kZXggMCkpCi0JICAgICAgKHdoaWxlICg8IGluZGV4IGxlbikK LQkJKGVzaGVsbC0tcHJvY2Vzcy1vcHRpb24gbmFtZSAoYXJlZiBzd2l0Y2ggaW5kZXgpCi0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCBhaSBvcHRpb25zIG9w dC12YWxzKQotCQkoc2V0cSBpbmRleCAoMSsgaW5kZXgpKSkpKSkpKQorCSAgICAgICh3aGls ZSAoPiAobGVuZ3RoIHN3aXRjaCkgMCkKKwkJKHNldHEgc3dpdGNoIChlc2hlbGwtLXByb2Nl c3Mtb3B0aW9uIG5hbWUgc3dpdGNoIDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgYWkgb3B0aW9ucyBvcHQtdmFscykpKSkpKSkKICAg ICAobmNvbmMgKG1hcGNhciAjJ2NkciBvcHQtdmFscykgZXNoZWxsLS1hcmdzKSkpCiAKIChw cm92aWRlICdlc2gtb3B0KQpkaWZmIC0tZ2l0IGEvdGVzdC9saXNwL2VzaGVsbC9lc2gtb3B0 LXRlc3RzLmVsIGIvdGVzdC9saXNwL2VzaGVsbC9lc2gtb3B0LXRlc3RzLmVsCmluZGV4IGUy YTBlYTU5ZDEuLjIzNWUwM2JjZWQgMTAwNjQ0Ci0tLSBhL3Rlc3QvbGlzcC9lc2hlbGwvZXNo LW9wdC10ZXN0cy5lbAorKysgYi90ZXN0L2xpc3AvZXNoZWxsL2VzaC1vcHQtdGVzdHMuZWwK QEAgLTU3LDcgKzU3LDcgQEAgZXNoLW9wdC1wcm9jZXNzLWFyZ3MtdGVzdAogICAgICAgICAg ICAnKCg/dSAidXNlciIgdCB1c2VyICJleGVjdXRlIGEgY29tbWFuZCBhcyBhbm90aGVyIFVT RVIiKQogICAgICAgICAgICAgIDpwYXJzZS1sZWFkaW5nLW9wdGlvbnMtb25seSkpKSkKICAg KHNob3VsZAotICAgKGVxdWFsICcoIndvcmxkIiAiZW1lcmdlIikKKyAgIChlcXVhbCAnKCJE TiIgImVtZXJnZSIgIndvcmxkIikKICAgICAgICAgICAoZXNoZWxsLS1wcm9jZXNzLWFyZ3MK ICAgICAgICAgICAgInN1ZG8iCiAgICAgICAgICAgICcoIi11IiAicm9vdCIgImVtZXJnZSIg Ii11RE4iICJ3b3JsZCIpCkBAIC02NSw1OSArNjUsMTMyIEBAIGVzaC1vcHQtcHJvY2Vzcy1h cmdzLXRlc3QKIAogKGVydC1kZWZ0ZXN0IHRlc3QtZXNoZWxsLWV2YWwtdXNpbmctb3B0aW9u cyAoKQogICAiVGVzdHMgZm9yIGBlc2hlbGwtZXZhbC11c2luZy1vcHRpb25zJy4iCisgIDs7 IFRlc3Qgc2hvcnQgb3B0aW9ucy4KICAgKGVzaGVsbC1ldmFsLXVzaW5nLW9wdGlvbnMKLSAg ICJzdWRvIiAnKCItdSIgInJvb3QiICJ3aG9hbWkiKQotICAgJygoP3UgInVzZXIiIHQgdXNl ciAiZXhlY3V0ZSBhIGNvbW1hbmQgYXMgYW5vdGhlciBVU0VSIikKLSAgICAgOnBhcnNlLWxl YWRpbmctb3B0aW9ucy1vbmx5KQotICAgKHNob3VsZCAoZXF1YWwgdXNlciAicm9vdCIpKSkK KyAgICJscyIgJygiLWEiICIvZGV2L251bGwiKQorICAgJygoP2EgImFsbCIgbmlsIHNob3ct YWxsCisgICAgICAgICAiZG8gbm90IGlnbm9yZSBlbnRyaWVzIHN0YXJ0aW5nIHdpdGggLiIp KQorICAgKHNob3VsZCAoZXEgc2hvdy1hbGwgdCkpCisgICAoc2hvdWxkIChlcXVhbCBhcmdz ICcoIi9kZXYvbnVsbCIpKSkpCiAgIChlc2hlbGwtZXZhbC11c2luZy1vcHRpb25zCi0gICAi c3VkbyIgJygiLS11c2VyIiAicm9vdCIgIndob2FtaSIpCi0gICAnKCg/dSAidXNlciIgdCB1 c2VyICJleGVjdXRlIGEgY29tbWFuZCBhcyBhbm90aGVyIFVTRVIiKQotICAgICA6cGFyc2Ut bGVhZGluZy1vcHRpb25zLW9ubHkpCi0gICAoc2hvdWxkIChlcXVhbCB1c2VyICJyb290Iikp KQorICAgImxzIiAnKCIvZGV2L251bGwiKQorICAgJygoP2EgImFsbCIgbmlsIHNob3ctYWxs CisgICAgICAgICAiZG8gbm90IGlnbm9yZSBlbnRyaWVzIHN0YXJ0aW5nIHdpdGggLiIpKQor ICAgKHNob3VsZCAoZXEgc2hvdy1hbGwgbmlsKSkKKyAgIChzaG91bGQgKGVxdWFsIGFyZ3Mg JygiL2Rldi9udWxsIikpKSkKIAorICA7OyBUZXN0IGxvbmcgb3B0aW9ucy4KICAgKGVzaGVs bC1ldmFsLXVzaW5nLW9wdGlvbnMKLSAgICJzdWRvIiAnKCJlbWVyZ2UiICItdUROIiAid29y bGQiKQotICAgJygoP3UgInVzZXIiIHQgdXNlciAiZXhlY3V0ZSBhIGNvbW1hbmQgYXMgYW5v dGhlciBVU0VSIikpCi0gICAoc2hvdWxkIChlcXVhbCB1c2VyICJ3b3JsZCIpKSkKKyAgICJs cyIgJygiLS1hbGwiICIvZGV2L251bGwiKQorICAgJygoP2EgImFsbCIgbmlsIHNob3ctYWxs CisgICAgICAgICAiZG8gbm90IGlnbm9yZSBlbnRyaWVzIHN0YXJ0aW5nIHdpdGggLiIpKQor ICAgKHNob3VsZCAoZXEgc2hvdy1hbGwgdCkpCisgICAoc2hvdWxkIChlcXVhbCBhcmdzICco Ii9kZXYvbnVsbCIpKSkpCisKKyAgOzsgVGVzdCBvcHRpb25zIHdpdGggY29uc3RhbnQgdmFs dWVzLgogICAoZXNoZWxsLWV2YWwtdXNpbmctb3B0aW9ucwotICAgInN1ZG8iICcoImVtZXJn ZSIgIi11RE4iICJ3b3JsZCIpCi0gICAnKCg/dSAidXNlciIgdCB1c2VyICJleGVjdXRlIGEg Y29tbWFuZCBhcyBhbm90aGVyIFVTRVIiKQotICAgICA6cGFyc2UtbGVhZGluZy1vcHRpb25z LW9ubHkpCi0gICAoc2hvdWxkIChlcSB1c2VyIG5pbCkpKQorICAgImxzIiAnKCIvZGV2L251 bGwiICItaCIpCisgICAnKCg/aCAiaHVtYW4tcmVhZGFibGUiIDEwMjQgaHVtYW4tcmVhZGFi bGUKKyAgICAgICAgICJwcmludCBzaXplcyBpbiBodW1hbiByZWFkYWJsZSBmb3JtYXQiKSkK KyAgIChzaG91bGQgKGVxbCBodW1hbi1yZWFkYWJsZSAxMDI0KSkKKyAgIChzaG91bGQgKGVx dWFsIGFyZ3MgJygiL2Rldi9udWxsIikpKSkKKyAgKGVzaGVsbC1ldmFsLXVzaW5nLW9wdGlv bnMKKyAgICJscyIgJygiL2Rldi9udWxsIiAiLS1odW1hbi1yZWFkYWJsZSIpCisgICAnKCg/ aCAiaHVtYW4tcmVhZGFibGUiIDEwMjQgaHVtYW4tcmVhZGFibGUKKyAgICAgICAgICJwcmlu dCBzaXplcyBpbiBodW1hbiByZWFkYWJsZSBmb3JtYXQiKSkKKyAgIChzaG91bGQgKGVxbCBo dW1hbi1yZWFkYWJsZSAxMDI0KSkKKyAgIChzaG91bGQgKGVxdWFsIGFyZ3MgJygiL2Rldi9u dWxsIikpKSkKKyAgKGVzaGVsbC1ldmFsLXVzaW5nLW9wdGlvbnMKKyAgICJscyIgJygiL2Rl di9udWxsIikKKyAgICcoKD9oICJodW1hbi1yZWFkYWJsZSIgMTAyNCBodW1hbi1yZWFkYWJs ZQorICAgICAgICAgInByaW50IHNpemVzIGluIGh1bWFuIHJlYWRhYmxlIGZvcm1hdCIpKQor ICAgKHNob3VsZCAoZXEgaHVtYW4tcmVhZGFibGUgbmlsKSkKKyAgIChzaG91bGQgKGVxdWFs IGFyZ3MgJygiL2Rldi9udWxsIikpKSkKIAorICA7OyBUZXN0IG9wdGlvbnMgd2l0aCB1c2Vy LXNwZWNpZmllZCB2YWx1ZXMuCiAgIChlc2hlbGwtZXZhbC11c2luZy1vcHRpb25zCiAgICAi bHMiICcoIi1JIiAiKi50eHQiICIvZGV2L251bGwiKQogICAgJygoP0kgImlnbm9yZSIgdCBp Z25vcmUtcGF0dGVybgotCSAiZG8gbm90IGxpc3QgaW1wbGllZCBlbnRyaWVzIG1hdGNoaW5n IHBhdHRlcm4iKSkKLSAgIChzaG91bGQgKGVxdWFsIGlnbm9yZS1wYXR0ZXJuICIqLnR4dCIp KSkKKyAgICAgICAgICJkbyBub3QgbGlzdCBpbXBsaWVkIGVudHJpZXMgbWF0Y2hpbmcgcGF0 dGVybiIpKQorICAgKHNob3VsZCAoZXF1YWwgaWdub3JlLXBhdHRlcm4gIioudHh0IikpCisg ICAoc2hvdWxkIChlcXVhbCBhcmdzICcoIi9kZXYvbnVsbCIpKSkpCisgIChlc2hlbGwtZXZh bC11c2luZy1vcHRpb25zCisgICAibHMiICcoIi1JKi50eHQiICIvZGV2L251bGwiKQorICAg JygoP0kgImlnbm9yZSIgdCBpZ25vcmUtcGF0dGVybgorICAgICAgICAgImRvIG5vdCBsaXN0 IGltcGxpZWQgZW50cmllcyBtYXRjaGluZyBwYXR0ZXJuIikpCisgICAoc2hvdWxkIChlcXVh bCBpZ25vcmUtcGF0dGVybiAiKi50eHQiKSkKKyAgIChzaG91bGQgKGVxdWFsIGFyZ3MgJygi L2Rldi9udWxsIikpKSkKKyAgKGVzaGVsbC1ldmFsLXVzaW5nLW9wdGlvbnMKKyAgICJscyIg JygiLS1pZ25vcmUiICIqLnR4dCIgIi9kZXYvbnVsbCIpCisgICAnKCg/SSAiaWdub3JlIiB0 IGlnbm9yZS1wYXR0ZXJuCisgICAgICAgICAiZG8gbm90IGxpc3QgaW1wbGllZCBlbnRyaWVz IG1hdGNoaW5nIHBhdHRlcm4iKSkKKyAgIChzaG91bGQgKGVxdWFsIGlnbm9yZS1wYXR0ZXJu ICIqLnR4dCIpKQorICAgKHNob3VsZCAoZXF1YWwgYXJncyAnKCIvZGV2L251bGwiKSkpKQor ICAoZXNoZWxsLWV2YWwtdXNpbmctb3B0aW9ucworICAgImxzIiAnKCItLWlnbm9yZT0qLnR4 dCIgIi9kZXYvbnVsbCIpCisgICAnKCg/SSAiaWdub3JlIiB0IGlnbm9yZS1wYXR0ZXJuCisg ICAgICAgICAiZG8gbm90IGxpc3QgaW1wbGllZCBlbnRyaWVzIG1hdGNoaW5nIHBhdHRlcm4i KSkKKyAgIChzaG91bGQgKGVxdWFsIGlnbm9yZS1wYXR0ZXJuICIqLnR4dCIpKQorICAgKHNo b3VsZCAoZXF1YWwgYXJncyAnKCIvZGV2L251bGwiKSkpKQogCisgIDs7IFRlc3QgbXVsdGlw bGUgc2hvcnQgb3B0aW9ucyBpbiBhIHNpbmdsZSB0b2tlbi4KICAgKGVzaGVsbC1ldmFsLXVz aW5nLW9wdGlvbnMKLSAgICJscyIgJygiLWwiICIvZGV2L251bGwiKQotICAgJygoP2wgbmls IGxvbmctbGlzdGluZyBsaXN0aW5nLXN0eWxlCi0JICJ1c2UgYSBsb25nIGxpc3RpbmcgZm9y bWF0IikpCi0gICAoc2hvdWxkIChlcWwgbGlzdGluZy1zdHlsZSAnbG9uZy1saXN0aW5nKSkp CisgICAibHMiICcoIi1hbCIgIi9kZXYvbnVsbCIpCisgICAnKCg/YSAiYWxsIiBuaWwgc2hv dy1hbGwKKyAgICAgICAgICJkbyBub3QgaWdub3JlIGVudHJpZXMgc3RhcnRpbmcgd2l0aCAu IikKKyAgICAgKD9sIG5pbCBsb25nLWxpc3RpbmcgbGlzdGluZy1zdHlsZQorICAgICAgICAg InVzZSBhIGxvbmcgbGlzdGluZyBmb3JtYXQiKSkKKyAgIChzaG91bGQgKGVxIHQgc2hvdy1h bGwpKQorICAgKHNob3VsZCAoZXFsIGxpc3Rpbmctc3R5bGUgJ2xvbmctbGlzdGluZykpCisg ICAoc2hvdWxkIChlcXVhbCBhcmdzICcoIi9kZXYvbnVsbCIpKSkpCiAgIChlc2hlbGwtZXZh bC11c2luZy1vcHRpb25zCi0gICAibHMiICcoIi9kZXYvbnVsbCIpCi0gICAnKCg/bCBuaWwg bG9uZy1saXN0aW5nIGxpc3Rpbmctc3R5bGUKLQkgInVzZSBhIGxvbmcgbGlzdGluZyBmb3Jt YXQiKSkKLSAgIChzaG91bGQgKGVxIGxpc3Rpbmctc3R5bGUgbmlsKSkpCisgICAibHMiICco Ii1hSSoudHh0IiAiL2Rldi9udWxsIikKKyAgICcoKD9hICJhbGwiIG5pbCBzaG93LWFsbAor ICAgICAgICAgImRvIG5vdCBpZ25vcmUgZW50cmllcyBzdGFydGluZyB3aXRoIC4iKQorICAg ICAoP0kgImlnbm9yZSIgdCBpZ25vcmUtcGF0dGVybgorICAgICAgICAgImRvIG5vdCBsaXN0 IGltcGxpZWQgZW50cmllcyBtYXRjaGluZyBwYXR0ZXJuIikpCisgICAoc2hvdWxkIChlcSB0 IHNob3ctYWxsKSkKKyAgIChzaG91bGQgKGVxdWFsIGlnbm9yZS1wYXR0ZXJuICIqLnR4dCIp KQorICAgKHNob3VsZCAoZXF1YWwgYXJncyAnKCIvZGV2L251bGwiKSkpKQogCisgIDs7IFRl c3QgdGhhdCAiLS0iIHRlcm1pbmF0ZXMgb3B0aW9ucy4KICAgKGVzaGVsbC1ldmFsLXVzaW5n LW9wdGlvbnMKLSAgICJscyIgJygiL2Rldi9udWxsIiAiLWgiKQotICAgJygoP2ggImh1bWFu LXJlYWRhYmxlIiAxMDI0IGh1bWFuLXJlYWRhYmxlCi0JICJwcmludCBzaXplcyBpbiBodW1h biByZWFkYWJsZSBmb3JtYXQiKSkKLSAgIChzaG91bGQgKGVxbCBodW1hbi1yZWFkYWJsZSAx MDI0KSkpCisgICAibHMiICcoIi0tIiAiLWEiKQorICAgJygoP2EgImFsbCIgbmlsIHNob3ct YWxsCisgICAgICAgICAiZG8gbm90IGlnbm9yZSBlbnRyaWVzIHN0YXJ0aW5nIHdpdGggLiIp KQorICAgKHNob3VsZCAoZXEgc2hvdy1hbGwgbmlsKSkKKyAgIChzaG91bGQgKGVxdWFsIGFy Z3MgJygiLWEiKSkpKQogICAoZXNoZWxsLWV2YWwtdXNpbmctb3B0aW9ucwotICAgImxzIiAn KCIvZGV2L251bGwiICItLWh1bWFuLXJlYWRhYmxlIikKLSAgICcoKD9oICJodW1hbi1yZWFk YWJsZSIgMTAyNCBodW1hbi1yZWFkYWJsZQotCSAicHJpbnQgc2l6ZXMgaW4gaHVtYW4gcmVh ZGFibGUgZm9ybWF0IikpCi0gICAoc2hvdWxkIChlcWwgaHVtYW4tcmVhZGFibGUgMTAyNCkp KQorICAgImxzIiAnKCItLSIgIi0tYWxsIikKKyAgICcoKD9hICJhbGwiIG5pbCBzaG93LWFs bAorICAgICAgICAgImRvIG5vdCBpZ25vcmUgZW50cmllcyBzdGFydGluZyB3aXRoIC4iKSkK KyAgIChzaG91bGQgKGVxIHNob3ctYWxsIG5pbCkpCisgICAoc2hvdWxkIChlcXVhbCBhcmdz ICcoIi0tYWxsIikpKSkKKworICA7OyBUZXN0IDpwYXJzZS1sZWFkaW5nLW9wdGlvbnMtb25s eS4KICAgKGVzaGVsbC1ldmFsLXVzaW5nLW9wdGlvbnMKLSAgICJscyIgJygiL2Rldi9udWxs IikKLSAgICcoKD9oICJodW1hbi1yZWFkYWJsZSIgMTAyNCBodW1hbi1yZWFkYWJsZQotCSAi cHJpbnQgc2l6ZXMgaW4gaHVtYW4gcmVhZGFibGUgZm9ybWF0IikpCi0gICAoc2hvdWxkIChl cSBodW1hbi1yZWFkYWJsZSBuaWwpKSkpCisgICAic3VkbyIgJygiLXUiICJyb290IiAid2hv YW1pIikKKyAgICcoKD91ICJ1c2VyIiB0IHVzZXIgImV4ZWN1dGUgYSBjb21tYW5kIGFzIGFu b3RoZXIgVVNFUiIpCisgICAgIDpwYXJzZS1sZWFkaW5nLW9wdGlvbnMtb25seSkKKyAgIChz aG91bGQgKGVxdWFsIHVzZXIgInJvb3QiKSkKKyAgIChzaG91bGQgKGVxdWFsIGFyZ3MgJygi d2hvYW1pIikpKSkKKyAgKGVzaGVsbC1ldmFsLXVzaW5nLW9wdGlvbnMKKyAgICJzdWRvIiAn KCItLXVzZXIiICJyb290IiAid2hvYW1pIikKKyAgICcoKD91ICJ1c2VyIiB0IHVzZXIgImV4 ZWN1dGUgYSBjb21tYW5kIGFzIGFub3RoZXIgVVNFUiIpCisgICAgIDpwYXJzZS1sZWFkaW5n LW9wdGlvbnMtb25seSkKKyAgIChzaG91bGQgKGVxdWFsIHVzZXIgInJvb3QiKSkKKyAgIChz aG91bGQgKGVxdWFsIGFyZ3MgJygid2hvYW1pIikpKSkKKyAgKGVzaGVsbC1ldmFsLXVzaW5n LW9wdGlvbnMKKyAgICJzdWRvIiAnKCJlbWVyZ2UiICItdUROIiAid29ybGQiKQorICAgJygo P3UgInVzZXIiIHQgdXNlciAiZXhlY3V0ZSBhIGNvbW1hbmQgYXMgYW5vdGhlciBVU0VSIikp CisgICAoc2hvdWxkIChlcXVhbCB1c2VyICJETiIpKQorICAgKHNob3VsZCAoZXF1YWwgYXJn cyAnKCJlbWVyZ2UiICJ3b3JsZCIpKSkpCisgIChlc2hlbGwtZXZhbC11c2luZy1vcHRpb25z CisgICAic3VkbyIgJygiZW1lcmdlIiAiLXVETiIgIndvcmxkIikKKyAgICcoKD91ICJ1c2Vy IiB0IHVzZXIgImV4ZWN1dGUgYSBjb21tYW5kIGFzIGFub3RoZXIgVVNFUiIpCisgICAgIDpw YXJzZS1sZWFkaW5nLW9wdGlvbnMtb25seSkKKyAgIChzaG91bGQgKGVxIHVzZXIgbmlsKSkK KyAgIChzaG91bGQgKGVxdWFsIGFyZ3MgJygiZW1lcmdlIiAiLXVETiIgIndvcmxkIikpKSkp CiAKIChwcm92aWRlICdlc2gtb3B0LXRlc3RzKQogCi0tIAoyLjI1LjEKCg== --------------A66C2B1A69C4FDCFBE1AF9D4--