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#54227: 29.0.50; [PATCH] Inconsistencies with Eshell variable interpolation Date: Wed, 2 Mar 2022 22:35:22 -0800 Message-ID: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------84BAF41E9AB7415EAB9F2A21" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="25902"; mail-complaints-to="usenet@ciao.gmane.io" To: 54227@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Thu Mar 03 07:36:17 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 1nPf4R-0006W0-Sh for geb-bug-gnu-emacs@m.gmane-mx.org; Thu, 03 Mar 2022 07:36:16 +0100 Original-Received: from localhost ([::1]:55986 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nPf4Q-0002Gf-Fk for geb-bug-gnu-emacs@m.gmane-mx.org; Thu, 03 Mar 2022 01:36:14 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:50892) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nPf4E-0002GO-Dh for bug-gnu-emacs@gnu.org; Thu, 03 Mar 2022 01:36:02 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]:47328) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nPf4E-0003Po-35 for bug-gnu-emacs@gnu.org; Thu, 03 Mar 2022 01:36:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1nPf4D-0005cJ-Ri for bug-gnu-emacs@gnu.org; Thu, 03 Mar 2022 01:36: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: Thu, 03 Mar 2022 06:36:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 54227 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.164628933521556 (code B ref -1); Thu, 03 Mar 2022 06:36:01 +0000 Original-Received: (at submit) by debbugs.gnu.org; 3 Mar 2022 06:35:35 +0000 Original-Received: from localhost ([127.0.0.1]:41225 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nPf3l-0005bZ-RU for submit@debbugs.gnu.org; Thu, 03 Mar 2022 01:35:35 -0500 Original-Received: from lists.gnu.org ([209.51.188.17]:46448) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nPf3h-0005bN-GS for submit@debbugs.gnu.org; Thu, 03 Mar 2022 01:35:31 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:50850) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nPf3h-0002CW-4M for bug-gnu-emacs@gnu.org; Thu, 03 Mar 2022 01:35:29 -0500 Original-Received: from [2607:f8b0:4864:20::436] (port=47077 helo=mail-pf1-x436.google.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nPf3d-0003NF-6t for bug-gnu-emacs@gnu.org; Thu, 03 Mar 2022 01:35:28 -0500 Original-Received: by mail-pf1-x436.google.com with SMTP id s11so3917997pfu.13 for ; Wed, 02 Mar 2022 22:35:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:subject:to:message-id:date:mime-version:content-language; bh=nuiInJyGkhK+e9rEJjZwxmT4CUE6eAbT+HqDDStfLq8=; b=Id2wGiRkKxojeJOrkVHG7Tun6wHQDGQxzl5/ssr8fR4iias25pTAFlvm1Rviuj/CP5 V0hW1UWhpnUIKcvlIRkkg6qrkhuplpEWytLil3drM32wqFZgtfj87gwV96VSQWQ+R5tp ZE4RinY5BeVGZSV982yfqwRLmiJ5X7GB8Bal+h1lseVl/e105As4zx2lDA3iaKryQsIF 2jZBmzNE78giWT8OikhRSvaUf3hQFc/VhM8qxX9V26JXqFgVwi0s/L/STfeixOx+Atc2 bC/BZDH9gYl/j+OIRtdNbUGhFi1q0uxu4eceNSl8R151yWbYnUElTYiWup7uDFoNVu8Q bOmw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:subject:to:message-id:date:mime-version :content-language; bh=nuiInJyGkhK+e9rEJjZwxmT4CUE6eAbT+HqDDStfLq8=; b=CKFHL2gcOw/q0r7t/iaSQ3oVP/7e7KoP+oSrqLigRS1WE//7BatsDrsly77eUaKSqE dDf1XmNd4cGCrW46bF+R2SKESR9hTNkHKnSGYAW1vOV4sLYaWQq2KJSPbPNpeI6meFPm 485cPRTJPb2kynKB63VPU1e2BPtOV0K/rxMiL30BN1LWds1jRM7tpgHn/bFw1OKVCfAR wUo+RSHoee4Uyr6Lpn4BoxcYMlqtclBETUcsh+UkTlBTAFV2zKNmviOyKXayJhhdUxuQ X78hW60tXxVfcVkkIShdGfj9lo2vgo2LaUxU5hiohFpVk7B8St3G8TIXkMj8Kc3Vs6dZ q+dQ== X-Gm-Message-State: AOAM532CyQdQw8nYmq7cpBvjyHFo0aIWQn349573363RWwHvb8cxU7gB 9oyx21LgDMUDUxA1ww/jVPxnxVEGl8s= X-Google-Smtp-Source: ABdhPJzXnAko766+RLrG9llX0v6CYYmjf0TcruofhcqTIJrkaZbhGOSwVKxjHQXMRqneuJWlqKy5vg== X-Received: by 2002:a63:a519:0:b0:373:38c9:cea6 with SMTP id n25-20020a63a519000000b0037338c9cea6mr28739653pgf.472.1646289323391; Wed, 02 Mar 2022 22:35:23 -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 x6-20020a17090aa38600b001bce781ce03sm1018122pjp.18.2022.03.02.22.35.22 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 02 Mar 2022 22:35:22 -0800 (PST) X-Mozilla-News-Host: news://news.gmane.org:119 Content-Language: en-US X-Host-Lookup-Failed: Reverse DNS lookup failed for 2607:f8b0:4864:20::436 (failed) Received-SPF: pass client-ip=2607:f8b0:4864:20::436; envelope-from=jporterbugs@gmail.com; helo=mail-pf1-x436.google.com X-Spam_score_int: -6 X-Spam_score: -0.7 X-Spam_bar: / X-Spam_report: (-0.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, PDS_HP_HELO_NORDNS=0.659, RCVD_IN_DNSWL_NONE=-0.0001, RDNS_NONE=0.793, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=no autolearn_force=no X-Spam_action: no action 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:227918 Archived-At: This is a multi-part message in MIME format. --------------84BAF41E9AB7415EAB9F2A21 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit There are a few related issues with how Eshell parses variable interpolations, especially when mixing with double-quotes. Starting from "emacs -Q --eval '(eshell)': 1. Quoted subcommands ~ $ echo ${echo hi} hi ;; good, this is what we want ~ $ echo "${echo hi}" echo hi: command not found In this case, Eshell gets confused by the double quotes and looks for the command named `echo hi', not the command named `echo' with the argument `hi'. 2. Complex list indexing ~ $ echo $PATH[: 0] /usr/local/bin ;; good (the first element of your $PATH) ~ $ echo $PATH[":" 0] Wrong type argument: number-or-marker-p, (eshell-escape-arg ":") Here, Eshell neglects to evaluate the subscript arguments, so only literal, unquoted values work. Note that the ":" in this case means "split the string $PATH with colon as a delimiter". The same happens with Elisp subexpressions: ~ $ echo $exec-path[0] /usr/local/bin ;; good, again ~ $ echo $exec-path[$(+ 1 -1)] Wrong type argument: number-or-marker-p, (eshell-escape-arg (let ((indices 'nil)) (eshell-command-to-value (eshell-lisp-command '(+ 1 -1))))) 3. Bare-string indexing ~ $ setq foo "fooXbarXbaz" fooXbarXbaz ~ $ echo $foo[X 0] (nil #("fooXbarXbaz" 0 11 (escaped t))) This is similar to the above case, but here Eshell thinks that "X" is a literal index to use. First, it splits `foo' into a list using space as a delimiter. Then gets confused when it uses a string as an index into a list, so it returns nil. The second element of the result is the 0th element of `foo'-as-a-list, aka the whole string since there are no spaces. (Just ignore for now the fact that the string "fooXbarXbaz" mysteriously gained an `escaped' property. That's a separate bug.) This last one is less of a bug and more of a missing feature: if a bare (non-numeric) string is used as an index for a string variable, we know it *must* be a delimiter argument. Since we're indexing into a list, a string index doesn't really make sense. -------------------- Attached is a patch series to fix these cases, as well as a lot more tests for Eshell variable interpolation, since this can get tricky. I've also updated the documentation to clarify how indexing works. I didn't initially realize that you could do quite so many complex things with it, so I figured it'd be good to explain in more detail so it's easier to discover. --------------84BAF41E9AB7415EAB9F2A21 Content-Type: text/plain; charset=UTF-8; name="0001-Move-Eshell-variable-interpolation-tests-to-their-ow.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename*0="0001-Move-Eshell-variable-interpolation-tests-to-their-ow.pa"; filename*1="tch" RnJvbSBiZWVhOThjZWM2ZTU2ZmNmZjdhYmM2M2VkYTAwZmVjYjQ0OGEzYThjIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKaW0gUG9ydGVyIDxqcG9ydGVyYnVnc0BnbWFpbC5j b20+CkRhdGU6IFN1biwgMjcgRmViIDIwMjIgMTg6MzQ6MjIgLTA4MDAKU3ViamVjdDogW1BB VENIIDEvNV0gTW92ZSBFc2hlbGwgdmFyaWFibGUgaW50ZXJwb2xhdGlvbiB0ZXN0cyB0byB0 aGVpciBvd24KIGZpbGUKCiogdGVzdC9saXNwL2VzaGVsbC9lc2hlbGwtdGVzdHMuZWwgKGVz aGVsbC10ZXN0L2ludGVycC1jbWQpCihlc2hlbGwtdGVzdC9pbnRlcnAtbGlzcCwgZXNoZWxs LXRlc3QvaW50ZXJwLXRlbXAtY21kKQooZXNoZWxsLXRlc3QvaW50ZXJwLWNvbmNhdCwgZXNo ZWxsLXRlc3QvaW50ZXJwLWNvbmNhdC1saXNwKQooZXNoZWxsLXRlc3QvaW50ZXJwLWNvbmNh dDIsIGVzaGVsbC10ZXN0L2ludGVycC1jb25jYXQtbGlzcDIpCihlc2hlbGwtdGVzdC9pbnRl cnAtY21kLWV4dGVybmFsKQooZXNoZWxsLXRlc3QvaW50ZXJwLWNtZC1leHRlcm5hbC1jb25j YXQsIGVzaGVsbC10ZXN0L3dpbmRvdy1oZWlnaHQpCihlc2hlbGwtdGVzdC93aW5kb3ctd2lk dGgsIGVzaGVsbC10ZXN0L2xhc3QtcmVzdWx0LXZhcikKKGVzaGVsbC10ZXN0L2xhc3QtcmVz dWx0LXZhcjIsIGVzaGVsbC10ZXN0L2xhc3QtYXJnLXZhcik6Ck1vdmUgZnJvbSBoZXJlLi4u CgoqIHRlc3QvbGlzcC9lc2hlbGwvZXNoLXZhci10ZXN0LmVsIChlc2gtdmFyLXRlc3QvaW50 ZXJwLWxpc3ApCihlc2gtdmFyLXRlc3QvaW50ZXJwLWNtZCwgZXNoLXZhci10ZXN0L2ludGVy cC1jbWQtZXh0ZXJuYWwpCihlc2gtdmFyLXRlc3QvaW50ZXJwLXRlbXAtY21kLCBlc2gtdmFy LXRlc3QvaW50ZXJwLWNvbmNhdC1saXNwKQooZXNoLXZhci10ZXN0L2ludGVycC1jb25jYXQt bGlzcDIsIGVzaC12YXItdGVzdC9pbnRlcnAtY29uY2F0LWNtZCkKKGVzaC12YXItdGVzdC9p bnRlcnAtY29uY2F0LWNtZDIpCihlc2gtdmFyLXRlc3QvaW50ZXJwLWNvbmNhdC1jbWQtZXh0 ZXJuYWwsIGVzaC12YXItdGVzdC93aW5kb3ctaGVpZ2h0KQooZXNoLXZhci10ZXN0L3dpbmRv dy13aWR0aCwgZXNoLXZhci10ZXN0L2xhc3QtcmVzdWx0LXZhcikKKGVzaC12YXItdGVzdC9s YXN0LXJlc3VsdC12YXIyLCBlc2gtdmFyLXRlc3QvbGFzdC1hcmctdmFyKToKLi4uIHRvIGhl cmUuCi0tLQogdGVzdC9saXNwL2VzaGVsbC9lc2gtdmFyLXRlc3RzLmVsIHwgMTExICsrKysr KysrKysrKysrKysrKysrKysrKysrKysrKwogdGVzdC9saXNwL2VzaGVsbC9lc2hlbGwtdGVz dHMuZWwgIHwgIDY4IC0tLS0tLS0tLS0tLS0tLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCAxMTEg aW5zZXJ0aW9ucygrKSwgNjggZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgdGVz dC9saXNwL2VzaGVsbC9lc2gtdmFyLXRlc3RzLmVsCgpkaWZmIC0tZ2l0IGEvdGVzdC9saXNw L2VzaGVsbC9lc2gtdmFyLXRlc3RzLmVsIGIvdGVzdC9saXNwL2VzaGVsbC9lc2gtdmFyLXRl c3RzLmVsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAuLjhkODAzZTVj YTQKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0L2xpc3AvZXNoZWxsL2VzaC12YXItdGVzdHMu ZWwKQEAgLTAsMCArMSwxMTEgQEAKKzs7OyBlc2gtdmFyLXRlc3RzLmVsIC0tLSBlc2gtdmFy IHRlc3Qgc3VpdGUgIC0qLSBsZXhpY2FsLWJpbmRpbmc6dCAtKi0KKworOzsgQ29weXJpZ2h0 IChDKSAyMDIyIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorCis7OyBUaGlzIGZp bGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCisKKzs7IEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3 YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5Cis7OyBpdCB1bmRl ciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxp c2hlZCBieQorOzsgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNp b24gMyBvZiB0aGUgTGljZW5zZSwgb3IKKzs7IChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVy IHZlcnNpb24uCisKKzs7IEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0 aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorOzsgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3 aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKzs7IE1FUkNIQU5UQUJJTElU WSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKzs7IEdO VSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisKKzs7IFlvdSBz aG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBM aWNlbnNlCis7OyBhbG9uZyB3aXRoIEdOVSBFbWFjcy4gIElmIG5vdCwgc2VlIDxodHRwczov L3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisKKzs7OyBDb21tZW50YXJ5OgorCis7OyBUZXN0 cyBmb3IgRXNoZWxsJ3MgdmFyaWFibGUgaGFuZGxpbmcuCisKKzs7OyBDb2RlOgorCisocmVx dWlyZSAnZXJ0KQorKHJlcXVpcmUgJ2VzaC1tb2RlKQorKHJlcXVpcmUgJ2VzaGVsbCkKKwor KHJlcXVpcmUgJ2VzaGVsbC10ZXN0cy1oZWxwZXJzCisgICAgICAgICAoZXhwYW5kLWZpbGUt bmFtZSAiZXNoZWxsLXRlc3RzLWhlbHBlcnMiCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAoZmlsZS1uYW1lLWRpcmVjdG9yeSAob3IgbG9hZC1maWxlLW5hbWUKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0LWRpcmVj dG9yeSkpKSkKKworOzs7IFRlc3RzOgorCisMCis7OyBWYXJpYWJsZSBpbnRlcnBvbGF0aW9u CisKKyhlcnQtZGVmdGVzdCBlc2gtdmFyLXRlc3QvaW50ZXJwLWxpc3AgKCkKKyAgIkludGVy cG9sYXRlIExpc3AgZm9ybSBldmFsdWF0aW9uIgorICAoc2hvdWxkIChlcXVhbCAoZXNoZWxs LXRlc3QtY29tbWFuZC1yZXN1bHQgIisgJCgrIDEgMikgMyIpIDYpKSkKKworKGVydC1kZWZ0 ZXN0IGVzaC12YXItdGVzdC9pbnRlcnAtY21kICgpCisgICJJbnRlcnBvbGF0ZSBjb21tYW5k IHJlc3VsdCIKKyAgKHNob3VsZCAoZXF1YWwgKGVzaGVsbC10ZXN0LWNvbW1hbmQtcmVzdWx0 ICIrICR7KyAxIDJ9IDMiKSA2KSkpCisKKyhlcnQtZGVmdGVzdCBlc2gtdmFyLXRlc3QvaW50 ZXJwLWNtZC1leHRlcm5hbCAoKQorICAiSW50ZXJwb2xhdGUgY29tbWFuZCByZXN1bHQgZnJv bSBleHRlcm5hbCBjb21tYW5kIgorICAoc2tpcC11bmxlc3MgKGV4ZWN1dGFibGUtZmluZCAi ZWNobyIpKQorICAod2l0aC10ZW1wLWVzaGVsbAorICAgKGVzaGVsbC1jb21tYW5kLXJlc3Vs dC1wICJlY2hvICR7KmVjaG8gaGl9IgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICJo aVxuIikpKQorCisoZXJ0LWRlZnRlc3QgZXNoLXZhci10ZXN0L2ludGVycC10ZW1wLWNtZCAo KQorICAiSW50ZXJwb2xhdGUgY29tbWFuZCByZXN1bHQgcmVkaXJlY3RlZCB0byB0ZW1wIGZp bGUiCisgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtdGVzdC1jb21tYW5kLXJlc3VsdCAiY2F0 ICQ8ZWNobyBoaT4iKSAiaGkiKSkpCisKKyhlcnQtZGVmdGVzdCBlc2gtdmFyLXRlc3QvaW50 ZXJwLWNvbmNhdC1saXNwICgpCisgICJJbnRlcnBvbGF0ZSBhbmQgY29uY2F0IExpc3AgZm9y bSIKKyAgKHNob3VsZCAoZXF1YWwgKGVzaGVsbC10ZXN0LWNvbW1hbmQtcmVzdWx0ICIrICQo KyAxIDIpMyAzIikgMzYpKSkKKworKGVydC1kZWZ0ZXN0IGVzaC12YXItdGVzdC9pbnRlcnAt Y29uY2F0LWxpc3AyICgpCisgICJJbnRlcnBvbGF0ZSBhbmQgY29uY2F0IHR3byBMaXNwIGZv cm1zIgorICAoc2hvdWxkIChlcXVhbCAoZXNoZWxsLXRlc3QtY29tbWFuZC1yZXN1bHQgIisg JCgrIDEgMikkKCsgMSAyKSAzIikgMzYpKSkKKworKGVydC1kZWZ0ZXN0IGVzaC12YXItdGVz dC9pbnRlcnAtY29uY2F0LWNtZCAoKQorICAiSW50ZXJwb2xhdGUgYW5kIGNvbmNhdCBjb21t YW5kIgorICAoc2hvdWxkIChlcXVhbCAoZXNoZWxsLXRlc3QtY29tbWFuZC1yZXN1bHQgIisg JHsrIDEgMn0zIDMiKSAzNikpKQorCisoZXJ0LWRlZnRlc3QgZXNoLXZhci10ZXN0L2ludGVy cC1jb25jYXQtY21kMiAoKQorICAiSW50ZXJwb2xhdGUgYW5kIGNvbmNhdCB0d28gY29tbWFu ZHMiCisgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtdGVzdC1jb21tYW5kLXJlc3VsdCAiKyAk eysgMSAyfSR7KyAxIDJ9IDMiKSAzNikpKQorCisoZXJ0LWRlZnRlc3QgZXNoLXZhci10ZXN0 L2ludGVycC1jb25jYXQtY21kLWV4dGVybmFsICgpCisgICJJbnRlcnBvbGF0ZSBjb21tYW5k IHJlc3VsdCBmcm9tIGV4dGVybmFsIGNvbW1hbmQgd2l0aCBjb25jYXRlbmF0aW9uIgorICAo c2tpcC11bmxlc3MgKGV4ZWN1dGFibGUtZmluZCAiZWNobyIpKQorICAod2l0aC10ZW1wLWVz aGVsbAorICAgKGVzaGVsbC1jb21tYW5kLXJlc3VsdC1wICJlY2hvICR7ZWNobyBoaX0tJHsq ZWNobyB0aGVyZX0iCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgImhpLXRoZXJlXG4i KSkpCisKKwwKKzs7IEJ1aWx0LWluIHZhcmlhYmxlcworCisoZXJ0LWRlZnRlc3QgZXNoLXZh ci10ZXN0L3dpbmRvdy1oZWlnaHQgKCkKKyAgIiRMSU5FUyBzaG91bGQgZXF1YWwgKHdpbmRv dy1oZWlnaHQpIgorICAoc2hvdWxkIChlc2hlbGwtdGVzdC1jb21tYW5kLXJlc3VsdCAiPSAk TElORVMgKHdpbmRvdy1oZWlnaHQpIikpKQorCisoZXJ0LWRlZnRlc3QgZXNoLXZhci10ZXN0 L3dpbmRvdy13aWR0aCAoKQorICAiJENPTFVNTlMgc2hvdWxkIGVxdWFsICh3aW5kb3ctd2lk dGgpIgorICAoc2hvdWxkIChlc2hlbGwtdGVzdC1jb21tYW5kLXJlc3VsdCAiPSAkQ09MVU1O UyAod2luZG93LXdpZHRoKSIpKSkKKworKGVydC1kZWZ0ZXN0IGVzaC12YXItdGVzdC9sYXN0 LXJlc3VsdC12YXIgKCkKKyAgIlRlc3QgdXNpbmcgdGhlIFwibGFzdCByZXN1bHRcIiAoJCQp IHZhcmlhYmxlIgorICAod2l0aC10ZW1wLWVzaGVsbAorICAgKGVzaGVsbC1jb21tYW5kLXJl c3VsdC1wICIrIDEgMjsgKyAkJCAyIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICIz XG41XG4iKSkpCisKKyhlcnQtZGVmdGVzdCBlc2gtdmFyLXRlc3QvbGFzdC1yZXN1bHQtdmFy MiAoKQorICAiVGVzdCB1c2luZyB0aGUgXCJsYXN0IHJlc3VsdFwiICgkJCkgdmFyaWFibGUg dHdpY2UiCisgICh3aXRoLXRlbXAtZXNoZWxsCisgICAoZXNoZWxsLWNvbW1hbmQtcmVzdWx0 LXAgIisgMSAyOyArICQkICQkIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiM1xu NlxuIikpKQorCisoZXJ0LWRlZnRlc3QgZXNoLXZhci10ZXN0L2xhc3QtYXJnLXZhciAoKQor ICAiVGVzdCB1c2luZyB0aGUgXCJsYXN0IGFyZ1wiICgkXykgdmFyaWFibGUiCisgICh3aXRo LXRlbXAtZXNoZWxsCisgICAoZXNoZWxsLWNvbW1hbmQtcmVzdWx0LXAgIisgMSAyOyArICRf IDQiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIzXG42XG4iKSkpCisKKzs7IGVz aC12YXItdGVzdHMuZWwgZW5kcyBoZXJlCmRpZmYgLS1naXQgYS90ZXN0L2xpc3AvZXNoZWxs L2VzaGVsbC10ZXN0cy5lbCBiL3Rlc3QvbGlzcC9lc2hlbGwvZXNoZWxsLXRlc3RzLmVsCmlu ZGV4IGVmZjRlZGQ2MmMuLmUzMWRiMDdjNjEgMTAwNjQ0Ci0tLSBhL3Rlc3QvbGlzcC9lc2hl bGwvZXNoZWxsLXRlc3RzLmVsCisrKyBiL3Rlc3QvbGlzcC9lc2hlbGwvZXNoZWxsLXRlc3Rz LmVsCkBAIC04NSw0OCArODUsNiBAQCBlc2hlbGwtdGVzdC9zdWJjb21tYW5kLWxpc3AKIGUu Zy4gXCJ7KCsgMSAyKX0gM1wiID0+IDMiCiAgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtdGVz dC1jb21tYW5kLXJlc3VsdCAieygrIDEgMil9IDMiKSAzKSkpCiAKLShlcnQtZGVmdGVzdCBl c2hlbGwtdGVzdC9pbnRlcnAtY21kICgpCi0gICJJbnRlcnBvbGF0ZSBjb21tYW5kIHJlc3Vs dCIKLSAgKHNob3VsZCAoZXF1YWwgKGVzaGVsbC10ZXN0LWNvbW1hbmQtcmVzdWx0ICIrICR7 KyAxIDJ9IDMiKSA2KSkpCi0KLShlcnQtZGVmdGVzdCBlc2hlbGwtdGVzdC9pbnRlcnAtbGlz cCAoKQotICAiSW50ZXJwb2xhdGUgTGlzcCBmb3JtIGV2YWx1YXRpb24iCi0gIChzaG91bGQg KGVxdWFsIChlc2hlbGwtdGVzdC1jb21tYW5kLXJlc3VsdCAiKyAkKCsgMSAyKSAzIikgNikp KQotCi0oZXJ0LWRlZnRlc3QgZXNoZWxsLXRlc3QvaW50ZXJwLXRlbXAtY21kICgpCi0gICJJ bnRlcnBvbGF0ZSBjb21tYW5kIHJlc3VsdCByZWRpcmVjdGVkIHRvIHRlbXAgZmlsZSIKLSAg KHNob3VsZCAoZXF1YWwgKGVzaGVsbC10ZXN0LWNvbW1hbmQtcmVzdWx0ICJjYXQgJDxlY2hv IGhpPiIpICJoaSIpKSkKLQotKGVydC1kZWZ0ZXN0IGVzaGVsbC10ZXN0L2ludGVycC1jb25j YXQgKCkKLSAgIkludGVycG9sYXRlIGFuZCBjb25jYXQgY29tbWFuZCIKLSAgKHNob3VsZCAo ZXF1YWwgKGVzaGVsbC10ZXN0LWNvbW1hbmQtcmVzdWx0ICIrICR7KyAxIDJ9MyAzIikgMzYp KSkKLQotKGVydC1kZWZ0ZXN0IGVzaGVsbC10ZXN0L2ludGVycC1jb25jYXQtbGlzcCAoKQot ICAiSW50ZXJwb2xhdGUgYW5kIGNvbmNhdCBMaXNwIGZvcm0iCi0gIChzaG91bGQgKGVxdWFs IChlc2hlbGwtdGVzdC1jb21tYW5kLXJlc3VsdCAiKyAkKCsgMSAyKTMgMyIpIDM2KSkpCi0K LShlcnQtZGVmdGVzdCBlc2hlbGwtdGVzdC9pbnRlcnAtY29uY2F0MiAoKQotICAiSW50ZXJw b2xhdGUgYW5kIGNvbmNhdCB0d28gY29tbWFuZHMiCi0gIChzaG91bGQgKGVxdWFsIChlc2hl bGwtdGVzdC1jb21tYW5kLXJlc3VsdCAiKyAkeysgMSAyfSR7KyAxIDJ9IDMiKSAzNikpKQot Ci0oZXJ0LWRlZnRlc3QgZXNoZWxsLXRlc3QvaW50ZXJwLWNvbmNhdC1saXNwMiAoKQotICAi SW50ZXJwb2xhdGUgYW5kIGNvbmNhdCB0d28gTGlzcCBmb3JtcyIKLSAgKHNob3VsZCAoZXF1 YWwgKGVzaGVsbC10ZXN0LWNvbW1hbmQtcmVzdWx0ICIrICQoKyAxIDIpJCgrIDEgMikgMyIp IDM2KSkpCi0KLShlcnQtZGVmdGVzdCBlc2hlbGwtdGVzdC9pbnRlcnAtY21kLWV4dGVybmFs ICgpCi0gICJJbnRlcnBvbGF0ZSBjb21tYW5kIHJlc3VsdCBmcm9tIGV4dGVybmFsIGNvbW1h bmQiCi0gIChza2lwLXVubGVzcyAoZXhlY3V0YWJsZS1maW5kICJlY2hvIikpCi0gICh3aXRo LXRlbXAtZXNoZWxsCi0gICAoZXNoZWxsLWNvbW1hbmQtcmVzdWx0LXAgImVjaG8gJHsqZWNo byBoaX0iCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgImhpXG4iKSkpCi0KLShlcnQt ZGVmdGVzdCBlc2hlbGwtdGVzdC9pbnRlcnAtY21kLWV4dGVybmFsLWNvbmNhdCAoKQotICAi SW50ZXJwb2xhdGUgY29tbWFuZCByZXN1bHQgZnJvbSBleHRlcm5hbCBjb21tYW5kIHdpdGgg Y29uY2F0ZW5hdGlvbiIKLSAgKHNraXAtdW5sZXNzIChleGVjdXRhYmxlLWZpbmQgImVjaG8i KSkKLSAgKHdpdGgtdGVtcC1lc2hlbGwKLSAgIChlc2hlbGwtY29tbWFuZC1yZXN1bHQtcCAi ZWNobyAke2VjaG8gaGl9LSR7KmVjaG8gdGhlcmV9IgotICAgICAgICAgICAgICAgICAgICAg ICAgICAgICJoaS10aGVyZVxuIikpKQotCiAoZXJ0LWRlZnRlc3QgZXNoZWxsLXRlc3QvcGlw ZS1oZWFkcHJvYyAoKQogICAiQ2hlY2sgdGhhdCBwaXBpbmcgYSBub24tcHJvY2VzcyB0byBh IHByb2Nlc3MgY29tbWFuZCB3YWl0cyBmb3IgdGhlIHByb2Nlc3MiCiAgIChza2lwLXVubGVz cyAoZXhlY3V0YWJsZS1maW5kICJjYXQiKSkKQEAgLTE1MiwzMiArMTEwLDYgQEAgZXNoZWxs LXRlc3QvcGlwZS1oZWFkcHJvYy1zdGRpbgogICAgKGVzaGVsbC13YWl0LWZvci1zdWJwcm9j ZXNzKQogICAgKGVzaGVsbC1tYXRjaC1yZXN1bHQgIk9MTEVIXG4iKSkpCiAKLShlcnQtZGVm dGVzdCBlc2hlbGwtdGVzdC93aW5kb3ctaGVpZ2h0ICgpCi0gICIkTElORVMgc2hvdWxkIGVx dWFsICh3aW5kb3ctaGVpZ2h0KSIKLSAgKHNob3VsZCAoZXNoZWxsLXRlc3QtY29tbWFuZC1y ZXN1bHQgIj0gJExJTkVTICh3aW5kb3ctaGVpZ2h0KSIpKSkKLQotKGVydC1kZWZ0ZXN0IGVz aGVsbC10ZXN0L3dpbmRvdy13aWR0aCAoKQotICAiJENPTFVNTlMgc2hvdWxkIGVxdWFsICh3 aW5kb3ctd2lkdGgpIgotICAoc2hvdWxkIChlc2hlbGwtdGVzdC1jb21tYW5kLXJlc3VsdCAi PSAkQ09MVU1OUyAod2luZG93LXdpZHRoKSIpKSkKLQotKGVydC1kZWZ0ZXN0IGVzaGVsbC10 ZXN0L2xhc3QtcmVzdWx0LXZhciAoKQotICAiVGVzdCB1c2luZyB0aGUgXCJsYXN0IHJlc3Vs dFwiICgkJCkgdmFyaWFibGUiCi0gICh3aXRoLXRlbXAtZXNoZWxsCi0gICAoZXNoZWxsLWNv bW1hbmQtcmVzdWx0LXAgIisgMSAyOyArICQkIDIiCi0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgIjNcbjVcbiIpKSkKLQotKGVydC1kZWZ0ZXN0IGVzaGVsbC10ZXN0L2xhc3QtcmVz dWx0LXZhcjIgKCkKLSAgIlRlc3QgdXNpbmcgdGhlIFwibGFzdCByZXN1bHRcIiAoJCQpIHZh cmlhYmxlIHR3aWNlIgotICAod2l0aC10ZW1wLWVzaGVsbAotICAgKGVzaGVsbC1jb21tYW5k LXJlc3VsdC1wICIrIDEgMjsgKyAkJCAkJCIKLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIjNcbjZcbiIpKSkKLQotKGVydC1kZWZ0ZXN0IGVzaGVsbC10ZXN0L2xhc3QtYXJnLXZh ciAoKQotICAiVGVzdCB1c2luZyB0aGUgXCJsYXN0IGFyZ1wiICgkXykgdmFyaWFibGUiCi0g ICh3aXRoLXRlbXAtZXNoZWxsCi0gICAoZXNoZWxsLWNvbW1hbmQtcmVzdWx0LXAgIisgMSAy OyArICRfIDQiCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICIzXG42XG4iKSkpCi0K IChlcnQtZGVmdGVzdCBlc2hlbGwtdGVzdC9pbnNpZGUtZW1hY3MtdmFyICgpCiAgICJUZXN0 IHByZXNlbmNlIG9mIFwiSU5TSURFX0VNQUNTXCIgaW4gc3VicHJvY2Vzc2VzIgogICAod2l0 aC10ZW1wLWVzaGVsbAotLSAKMi4yNS4xCgo= --------------84BAF41E9AB7415EAB9F2A21 Content-Type: text/plain; charset=UTF-8; name="0002-Add-a-new-macro-to-simplify-parsing-temporary-Eshell.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename*0="0002-Add-a-new-macro-to-simplify-parsing-temporary-Eshell.pa"; filename*1="tch" RnJvbSA3YTY0MDU2ZTQ0YTZmNzg5ZmIyZjU4Y2NhMmM2ODc2Y2ZkY2MxMDdkIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKaW0gUG9ydGVyIDxqcG9ydGVyYnVnc0BnbWFpbC5j b20+CkRhdGU6IFNhdCwgMjYgRmViIDIwMjIgMjA6NTU6MjIgLTA4MDAKU3ViamVjdDogW1BB VENIIDIvNV0gQWRkIGEgbmV3IG1hY3JvIHRvIHNpbXBsaWZ5IHBhcnNpbmcgdGVtcG9yYXJ5 IEVzaGVsbAogY29tbWFuZCBzdHJpbmdzCgpUaGlzIGFic3RyYWN0cyBvdXQgdGhlIHNvbWV3 aGF0LXVudXN1YWwgImluc2VydCZkZWxldGUiIGxvZ2ljIGluCidlc2hlbGwtcGFyc2UtY29t bWFuZCcgc28gdGhhdCBpdCBjYW4gYmUgdXNlZCBlbHNld2hlcmUsIGFuZCBhbHNvCmVuc3Vy ZXMgdGhhdCB0aGUgZGVsZXRpb24gb2NjdXJzIGV2ZW4gaWYgYW4gYW4gZXJyb3Igb2NjdXJz LgoKKiBsaXNwL2VzaGVsbC9lc2gtY21kLmVsIChlc2hlbGwtd2l0aC10ZW1wLWNvbW1hbmQp OiBOZXcgbWFjcm8uCihlc2hlbGwtcGFyc2UtY29tbWFuZCk6IFVzZSBpdC4KLS0tCiBsaXNw L2VzaGVsbC9lc2gtY21kLmVsIHwgNDIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgMzMgaW5zZXJ0aW9ucygrKSwgOSBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9saXNwL2VzaGVsbC9lc2gtY21kLmVsIGIvbGlzcC9l c2hlbGwvZXNoLWNtZC5lbAppbmRleCBkY2ViMDYxYzhmLi4wNGI1NGQ5ZDc5IDEwMDY0NAot LS0gYS9saXNwL2VzaGVsbC9lc2gtY21kLmVsCisrKyBiL2xpc3AvZXNoZWxsL2VzaC1jbWQu ZWwKQEAgLTM1MCw2ICszNTAsMzYgQEAgZXNoZWxsLWNvbXBsZXRlLWxpc3Atc3ltYm9scwog CiAoZGVmdmFyIGVzaGVsbC0tc2VwLXRlcm1zKQogCisoZGVmbWFjcm8gZXNoZWxsLXdpdGgt dGVtcC1jb21tYW5kIChjb21tYW5kICZyZXN0IGJvZHkpCisgICJOYXJyb3cgdGhlIGJ1ZmZl ciB0byBDT01NQU5EIGFuZCBleGVjdXRlIHRoZSBmb3JtcyBpbiBCT0RZLgorQ09NTUFORCBj YW4gZWl0aGVyIGJlIGEgc3RyaW5nLCBvciBhIGNvbnMgY2VsbCBkZW1hcmNhdGluZyBhCiti dWZmZXIgcmVnaW9uLiAgSWYgQ09NTUFORCBpcyBhIHN0cmluZywgdGVtcG9yYXJpbHkgaW5z ZXJ0IGl0CitpbnRvIHRoZSBidWZmZXIgYmVmb3JlIG5hcnJvd2luZy4gIFBvaW50IHdpbGwg YmUgc2V0IHRvIHRoZQorYmVnaW5uaW5nIG9mIHRoZSBuYXJyb3dlZCByZWdpb24uCisKK1Ro ZSB2YWx1ZSByZXR1cm5lZCBpcyB0aGUgbGFzdCBmb3JtIGluIEJPRFkuIgorICAoZGVjbGFy ZSAoaW5kZW50IDEpKQorICBgKGxldCAoKGNtZCAsY29tbWFuZCkpCisgICAgIChpZiAoc3Ry aW5ncCBjbWQpCisgICAgICAgICA7OyBTaW5jZSBwYXJzaW5nIHJlbGllcyBwYXJ0bHkgb24g YnVmZmVyLWxvY2FsIHN0YXRlCisgICAgICAgICA7OyAoZS5nLiB0aGF0IG9mIGBlc2hlbGwt cGFyc2UtYXJndW1lbnQtaG9vaycpLCB3ZSBuZWVkIHRvCisgICAgICAgICA7OyBwZXJmb3Jt IHRoZSBwYXJzaW5nIGluIHRoZSBFc2hlbGwgYnVmZmVyLgorICAgICAgICAgKGxldCAoKGJl Z2luIChwb2ludCkpIGVuZAorCSAgICAgICAoaW5oaWJpdC1wb2ludC1tb3Rpb24taG9va3Mg dCkpCisgICAgICAgICAgICh3aXRoLXNpbGVudC1tb2RpZmljYXRpb25zCisgICAgICAgICAg ICAgKGluc2VydCBjbWQpCisgICAgICAgICAgICAgKHNldHEgZW5kIChwb2ludCkpCisgICAg ICAgICAgICAgKHVud2luZC1wcm90ZWN0CisgICAgICAgICAgICAgICAgIChzYXZlLXJlc3Ry aWN0aW9uCisgICAgICAgICAgICAgICAgICAgKG5hcnJvdy10by1yZWdpb24gYmVnaW4gZW5k KQorICAgICAgICAgICAgICAgICAgIChnb3RvLWNoYXIgYmVnaW4pCisgICAgICAgICAgICAg ICAgICAgLEBib2R5KQorICAgICAgICAgICAgICAgKGRlbGV0ZS1yZWdpb24gYmVnaW4gZW5k KSkpKQorICAgICAgIChzYXZlLXJlc3RyaWN0aW9uCisgICAgICAgICAobmFycm93LXRvLXJl Z2lvbiAoY2FyIGNtZCkgKGNkciBjbWQpKQorICAgICAgICAgKGdvdG8tY2hhciAoY2FyIGNt ZCkpCisgICAgICAgICAsQGJvZHkpKSkpCisKIChkZWZ1biBlc2hlbGwtcGFyc2UtY29tbWFu ZCAoY29tbWFuZCAmb3B0aW9uYWwgYXJncyB0b3BsZXZlbCkKICAgIlBhcnNlIHRoZSBDT01N QU5ELCBhZGRpbmcgQVJHUyBpZiBnaXZlbi4KIENPTU1BTkQgY2FuIGVpdGhlciBiZSBhIHN0 cmluZywgb3IgYSBjb25zIGNlbGwgZGVtYXJjYXRpbmcgYSBidWZmZXIKQEAgLTM2MSwxNSAr MzkxLDkgQEAgZXNoZWxsLXBhcnNlLWNvbW1hbmQKIAkgIChhcHBlbmQKIAkgICAoaWYgKGNv bnNwIGNvbW1hbmQpCiAJICAgICAgIChlc2hlbGwtcGFyc2UtYXJndW1lbnRzIChjYXIgY29t bWFuZCkgKGNkciBjb21tYW5kKSkKLQkgICAgIChsZXQgKChoZXJlIChwb2ludCkpCi0JCSAg IChpbmhpYml0LXBvaW50LW1vdGlvbi1ob29rcyB0KSkKLSAgICAgICAgICAgICAgICh3aXRo LXNpbGVudC1tb2RpZmljYXRpb25zCi0gICAgICAgICAgICAgICAgIDs7IEZJWE1FOiBXaHkg bm90IHVzZSBhIHRlbXBvcmFyeSBidWZmZXIgYW5kIGF2b2lkIHRoaXMKLSAgICAgICAgICAg ICAgICAgOzsgImluc2VydCZkZWxldGUiIGJ1c2luZXNzPyAgLS1TdGVmCi0gICAgICAgICAg ICAgICAgIChpbnNlcnQgY29tbWFuZCkKLSAgICAgICAgICAgICAgICAgKHByb2cxCi0gICAg ICAgICAgICAgICAgICAgICAoZXNoZWxsLXBhcnNlLWFyZ3VtZW50cyBoZXJlIChwb2ludCkp Ci0gICAgICAgICAgICAgICAgICAgKGRlbGV0ZS1yZWdpb24gaGVyZSAocG9pbnQpKSkpKSkK KyAgICAgICAgICAgICAoZXNoZWxsLXdpdGgtdGVtcC1jb21tYW5kIGNvbW1hbmQKKyAgICAg ICAgICAgICAgIChnb3RvLWNoYXIgKHBvaW50LW1heCkpCisgICAgICAgICAgICAgICAoZXNo ZWxsLXBhcnNlLWFyZ3VtZW50cyAocG9pbnQtbWluKSAocG9pbnQtbWF4KSkpKQogCSAgIGFy Z3MpKQogCSAoY29tbWFuZHMKIAkgIChtYXBjYXIKLS0gCjIuMjUuMQoK --------------84BAF41E9AB7415EAB9F2A21 Content-Type: text/plain; charset=UTF-8; name="0003-Fix-Eshell-dollar-interpolation-inside-of-double-quo.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename*0="0003-Fix-Eshell-dollar-interpolation-inside-of-double-quo.pa"; filename*1="tch" RnJvbSA2NDQ4NGFkNzUxYmZlYmM2MzhhZmFmODdiMmNjOGJlNjNjNTUwYmE4IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKaW0gUG9ydGVyIDxqcG9ydGVyYnVnc0BnbWFpbC5j b20+CkRhdGU6IFN1biwgMjcgRmViIDIwMjIgMjE6MDQ6MzAgLTA4MDAKU3ViamVjdDogW1BB VENIIDMvNV0gRml4IEVzaGVsbCBkb2xsYXIgaW50ZXJwb2xhdGlvbiBpbnNpZGUgb2YgZG91 YmxlLXF1b3RlcwoKRm9yIGV4YW1wbGUsCgogIGVjaG8gIiR7ZWNobyBoaX0iCgpwcmV2aW91 c2x5IHRyaWVkIHRvIHJ1biB0aGUgcHJvZ3JhbSBuYW1lZCAnZWNobyBoaScsIGluc3RlYWQg b2YgJ2VjaG8nCndpdGggdGhlIGFyZ3VtZW50ICdoaScuCgoqIGxpc3AvZXNoZWxsL2VzaC1h cmcuZWwgKGVzaGVsbC1wYXJzZS1pbm5lci1kb3VibGUtcXVvdGUpOgpOZXcgZnVuY3Rpb24u CgoqIGxpc3AvZXNoZWxsL2VzaC12YXIuZWwgKGVzaGVsbC1wYXJzZS12YXJpYWJsZS1yZWYp OiBTdXBwb3J0IHBhcnNpbmcKd2hlbiB3cmFwcGVkIGluIGRvdWJsZS1xdWlvdGVzLgoKKiB0 ZXN0L2xpc3AvZXNoZWxsL2VzaC12YXItdGVzdHMuZWwgKGVzaC12YXItdGVzdC9pbnRlcnAt dmFyKQooZXNoLXZhci10ZXN0L2ludGVycC1xdW90ZWQtdmFyKQooZXNoLXZhci10ZXN0L2lu dGVycC1xdW90ZWQtdmFyLWNvbmNhdCkKKGVzaC12YXItdGVzdC9xdW90ZWQtaW50ZXJwLXZh cikKKGVzaC12YXItdGVzdC9xdW90ZWQtaW50ZXJwLXF1b3RlZC12YXIpCihlc2gtdmFyLXRl c3QvcXVvdGVkLWludGVycC1saXNwLCBlc2gtdmFyLXRlc3QvcXVvdGVkLWludGVycC1jbWQp Cihlc2gtdmFyLXRlc3QvcXVvdGVkLWludGVycC10ZW1wLWNtZCk6IE5ldyB0ZXN0cy4KLS0t CiBsaXNwL2VzaGVsbC9lc2gtYXJnLmVsICAgICAgICAgICAgfCAyNCArKysrKysrKysrKysr KysKIGxpc3AvZXNoZWxsL2VzaC12YXIuZWwgICAgICAgICAgICB8IDI3ICsrKysrKysrKysr LS0tLS0tCiB0ZXN0L2xpc3AvZXNoZWxsL2VzaC12YXItdGVzdHMuZWwgfCA0OSArKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrCiAzIGZpbGVzIGNoYW5nZWQsIDkxIGluc2VydGlv bnMoKyksIDkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvbGlzcC9lc2hlbGwvZXNoLWFy Zy5lbCBiL2xpc3AvZXNoZWxsL2VzaC1hcmcuZWwKaW5kZXggMWEyZjJhNTdlOC4uZTE5NDgx YzRiYSAxMDA2NDQKLS0tIGEvbGlzcC9lc2hlbGwvZXNoLWFyZy5lbAorKysgYi9saXNwL2Vz aGVsbC9lc2gtYXJnLmVsCkBAIC0zNTQsNiArMzU0LDMwIEBAIGVzaGVsbC1wYXJzZS1kb3Vi bGUtcXVvdGUKIAkJICAobGlzdCAnZXNoZWxsLWVzY2FwZS1hcmcgYXJnKSkpKQogCSAgKGdv dG8tY2hhciAoMSsgZW5kKSkpKSkpKQogCisoZGVmdW4gZXNoZWxsLXBhcnNlLWlubmVyLWRv dWJsZS1xdW90ZSAoYm91bmQpCisgICJQYXJzZSB0aGUgaW5uZXIgcGFydCBvZiBhIGRvdWJs ZSBxdW90ZWQgc3RyaW5nLgorVGhlIHN0cmluZyB0byBwYXJzZSBzdGFydHMgYXQgcG9pbnQg YW5kIGVuZHMgYXQgQk9VTkQuCisKK0lmIEVzaGVsbCBpcyBjdXJyZW50bHkgcGFyc2luZyBh IHF1b3RlZCBzdHJpbmcgYW5kIHRoZXJlIGFyZSBhbnkKK2JhY2tzbGFzaC1lc2NhcGVkIGNo YXJhY3RlcnMsIHRoaXMgd2lsbCByZXR1cm4gdGhlIHVuZXNjYXBlZAorc3RyaW5nLCB1cGRh dGluZyBwb2ludCB0byBCT1VORC4gIE90aGVyd2lzZSwgdGhpcyByZXR1cm5zIG5pbCBhbmQK K2xlYXZlcyBwb2ludCB3aGVyZSBpdCB3YXMuIgorICAod2hlbiBlc2hlbGwtY3VycmVudC1x dW90ZWQKKyAgICAobGV0IChzdHJpbmdzCisgICAgICAgICAgKHN0YXJ0IChwb2ludCkpCisg ICAgICAgICAgKHNwZWNpYWwtY2hhcgorICAgICAgICAgICAocngtdG8tc3RyaW5nCisgICAg ICAgICAgICBgKHNlcSAiXFwiIChncm91cCAoYW55ICxAZXNoZWxsLXNwZWNpYWwtY2hhcnMt aW5zaWRlLXF1b3RpbmcpKSkpKSkKKyAgICAgICh3aGlsZSAocmUtc2VhcmNoLWZvcndhcmQg c3BlY2lhbC1jaGFyIGJvdW5kIHQpCisgICAgICAgIChwdXNoIChjb25jYXQgKGJ1ZmZlci1z dWJzdHJpbmcgc3RhcnQgKG1hdGNoLWJlZ2lubmluZyAwKSkKKyAgICAgICAgICAgICAgICAg ICAgICAobWF0Y2gtc3RyaW5nIDEpKQorICAgICAgICAgICAgICBzdHJpbmdzKQorICAgICAg ICAoc2V0cSBzdGFydCAobWF0Y2gtZW5kIDApKSkKKyAgICAgICh3aGVuIHN0cmluZ3MKKyAg ICAgICAgKHB1c2ggKGJ1ZmZlci1zdWJzdHJpbmcgc3RhcnQgYm91bmQpIHN0cmluZ3MpCisg ICAgICAgIChnb3RvLWNoYXIgYm91bmQpCisgICAgICAgIChhcHBseSAjJ2NvbmNhdCAobnJl dmVyc2Ugc3RyaW5ncykpKSkpKQorCiAoZGVmdW4gZXNoZWxsLXBhcnNlLXNwZWNpYWwtcmVm ZXJlbmNlICgpCiAgICJQYXJzZSBhIHNwZWNpYWwgc3ludGF4IHJlZmVyZW5jZSwgb2YgdGhl IGZvcm0gYCM8YXJncz4nLgogCmRpZmYgLS1naXQgYS9saXNwL2VzaGVsbC9lc2gtdmFyLmVs IGIvbGlzcC9lc2hlbGwvZXNoLXZhci5lbAppbmRleCBlZTNmZmJjNjQ3Li4yNGZkYmRlM2Nm IDEwMDY0NAotLS0gYS9saXNwL2VzaGVsbC9lc2gtdmFyLmVsCisrKyBiL2xpc3AvZXNoZWxs L2VzaC12YXIuZWwKQEAgLTQ0MCwxOCArNDQwLDE2IEBAIGVzaGVsbC1wYXJzZS12YXJpYWJs ZS1yZWYKICAgICAobGV0ICgoZW5kIChlc2hlbGwtZmluZC1kZWxpbWl0ZXIgP1x7ID9cfSkp KQogICAgICAgKGlmIChub3QgZW5kKQogICAgICAgICAgICh0aHJvdyAnZXNoZWxsLWluY29t cGxldGUgP1x7KQorICAgICAgICAoZm9yd2FyZC1jaGFyKQogICAgICAgICAocHJvZzEKICAg ICAgICAgICAgIGAoZXNoZWxsLWNvbnZlcnQKICAgICAgICAgICAgICAgKGVzaGVsbC1jb21t YW5kLXRvLXZhbHVlCiAgICAgICAgICAgICAgICAoZXNoZWxsLWFzLXN1YmNvbW1hbmQKLSAg ICAgICAgICAgICAgICAsKGVzaGVsbC1wYXJzZS1jb21tYW5kIChjb25zICgxKyAocG9pbnQp KSBlbmQpKSkpKQorICAgICAgICAgICAgICAgICwobGV0ICgoc3ViY21kIChvciAoZXNoZWxs LXBhcnNlLWlubmVyLWRvdWJsZS1xdW90ZSBlbmQpCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIChjb25zIChwb2ludCkgZW5kKSkpCisgICAgICAgICAgICAgICAgICAg ICAgIChlc2hlbGwtY3VycmVudC1xdW90ZWQgbmlsKSkKKyAgICAgICAgICAgICAgICAgICAo ZXNoZWxsLXBhcnNlLWNvbW1hbmQgc3ViY21kKSkpKSkKICAgICAgICAgICAoZ290by1jaGFy ICgxKyBlbmQpKSkpKSkKLSAgICgobWVtcSAoY2hhci1hZnRlcikgJyg/XCcgP1wiKSkKLSAg ICAobGV0ICgobmFtZSAoaWYgKGVxIChjaGFyLWFmdGVyKSA/XCcpCi0gICAgICAgICAgICAg ICAgICAgIChlc2hlbGwtcGFyc2UtbGl0ZXJhbC1xdW90ZSkKLSAgICAgICAgICAgICAgICAg IChlc2hlbGwtcGFyc2UtZG91YmxlLXF1b3RlKSkpKQotICAgICAgKGlmIG5hbWUKLQkgIGAo ZXNoZWxsLWdldC12YXJpYWJsZSAsKGV2YWwgbmFtZSkgaW5kaWNlcykpKSkKICAgICgoZXEg KGNoYXItYWZ0ZXIpID9cPCkKICAgICAobGV0ICgoZW5kIChlc2hlbGwtZmluZC1kZWxpbWl0 ZXIgP1w8ID9cPikpKQogICAgICAgKGlmIChub3QgZW5kKQpAQCAtNDYzLDcgKzQ2MSw5IEBA IGVzaGVsbC1wYXJzZS12YXJpYWJsZS1yZWYKICAgICAgICAgICAgICAgYChsZXQgKChlc2hl bGwtY3VycmVudC1oYW5kbGVzCiAgICAgICAgICAgICAgICAgICAgICAgKGVzaGVsbC1jcmVh dGUtaGFuZGxlcyAsdGVtcCAnb3ZlcndyaXRlKSkpCiAgICAgICAgICAgICAgICAgIChwcm9n bgotICAgICAgICAgICAgICAgICAgIChlc2hlbGwtYXMtc3ViY29tbWFuZCAsKGVzaGVsbC1w YXJzZS1jb21tYW5kIGNtZCkpCisgICAgICAgICAgICAgICAgICAgKGVzaGVsbC1hcy1zdWJj b21tYW5kCisgICAgICAgICAgICAgICAgICAgICwobGV0ICgoZXNoZWxsLWN1cnJlbnQtcXVv dGVkIG5pbCkpCisgICAgICAgICAgICAgICAgICAgICAgIChlc2hlbGwtcGFyc2UtY29tbWFu ZCBjbWQpKSkKICAgICAgICAgICAgICAgICAgICAoaWdub3JlCiAgICAgICAgICAgICAgICAg ICAgIChuY29uYyBlc2hlbGwtdGhpcy1jb21tYW5kLWhvb2sKICAgICAgICAgICAgICAgICAg ICAgICAgICAgIDs7IFF1b3RlIHRoaXMgbGFtYmRhOyBpdCB3aWxsIGJlIGV2YWx1YXRlZApA QCAtNDc4LDkgKzQ3OCwxOCBAQCBlc2hlbGwtcGFyc2UtdmFyaWFibGUtcmVmCiAgICAgKGNv bmRpdGlvbi1jYXNlIG5pbAogICAgICAgICBgKGVzaGVsbC1jb21tYW5kLXRvLXZhbHVlCiAg ICAgICAgICAgKGVzaGVsbC1saXNwLWNvbW1hbmQKLSAgICAgICAgICAgJywocmVhZCAoY3Vy cmVudC1idWZmZXIpKSkpCisgICAgICAgICAgICcsKHJlYWQgKG9yIChlc2hlbGwtcGFyc2Ut aW5uZXItZG91YmxlLXF1b3RlIChwb2ludC1tYXgpKQorICAgICAgICAgICAgICAgICAgICAg ICAoY3VycmVudC1idWZmZXIpKSkpKQogICAgICAgKGVuZC1vZi1maWxlCiAgICAgICAgKHRo cm93ICdlc2hlbGwtaW5jb21wbGV0ZSA/XCgpKSkpCisgICAoKGxvb2tpbmctYXQgKHJ4IChv ciAiJyIgIlwiIiAiXFxcIiIpKSkKKyAgICAoZXNoZWxsLXdpdGgtdGVtcC1jb21tYW5kIChv ciAoZXNoZWxsLXBhcnNlLWlubmVyLWRvdWJsZS1xdW90ZSAocG9pbnQtbWF4KSkKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY29ucyAocG9pbnQpIChwb2ludC1tYXgp KSkKKyAgICAgIChsZXQgKChuYW1lIChpZiAoZXEgKGNoYXItYWZ0ZXIpID9cJykKKyAgICAg ICAgICAgICAgICAgICAgICAoZXNoZWxsLXBhcnNlLWxpdGVyYWwtcXVvdGUpCisgICAgICAg ICAgICAgICAgICAgIChlc2hlbGwtcGFyc2UtZG91YmxlLXF1b3RlKSkpKQorICAgICAgICAo d2hlbiBuYW1lCisJICBgKGVzaGVsbC1nZXQtdmFyaWFibGUgLChldmFsIG5hbWUpIGluZGlj ZXMpKSkpKQogICAgKChhc3NvYyAoY2hhci10by1zdHJpbmcgKGNoYXItYWZ0ZXIpKQogICAg ICAgICAgICBlc2hlbGwtdmFyaWFibGUtYWxpYXNlcy1saXN0KQogICAgIChmb3J3YXJkLWNo YXIpCmRpZmYgLS1naXQgYS90ZXN0L2xpc3AvZXNoZWxsL2VzaC12YXItdGVzdHMuZWwgYi90 ZXN0L2xpc3AvZXNoZWxsL2VzaC12YXItdGVzdHMuZWwKaW5kZXggOGQ4MDNlNWNhNC4uN2Vj NmE5NzUxOSAxMDA2NDQKLS0tIGEvdGVzdC9saXNwL2VzaGVsbC9lc2gtdmFyLXRlc3RzLmVs CisrKyBiL3Rlc3QvbGlzcC9lc2hlbGwvZXNoLXZhci10ZXN0cy5lbApAQCAtMzcsNiArMzcs MjUgQEAKIAwKIDs7IFZhcmlhYmxlIGludGVycG9sYXRpb24KIAorKGVydC1kZWZ0ZXN0IGVz aC12YXItdGVzdC9pbnRlcnAtdmFyICgpCisgICJJbnRlcnBvbGF0ZSB2YXJpYWJsZSIKKyAg KHNob3VsZCAoZXF1YWwgKGVzaGVsbC10ZXN0LWNvbW1hbmQtcmVzdWx0ICJlY2hvICR1c2Vy LWxvZ2luLW5hbWUiKQorICAgICAgICAgICAgICAgICB1c2VyLWxvZ2luLW5hbWUpKSkKKwor KGVydC1kZWZ0ZXN0IGVzaC12YXItdGVzdC9pbnRlcnAtcXVvdGVkLXZhciAoKQorICAiSW50 ZXJwb2xhdGUgcXVvdGVkIHZhcmlhYmxlIgorICAoc2hvdWxkIChlcXVhbCAoZXNoZWxsLXRl c3QtY29tbWFuZC1yZXN1bHQgImVjaG8gJCd1c2VyLWxvZ2luLW5hbWUnIikKKyAgICAgICAg ICAgICAgICAgdXNlci1sb2dpbi1uYW1lKSkKKyAgKHNob3VsZCAoZXF1YWwgKGVzaGVsbC10 ZXN0LWNvbW1hbmQtcmVzdWx0ICJlY2hvICRcInVzZXItbG9naW4tbmFtZVwiIikKKyAgICAg ICAgICAgICAgICAgdXNlci1sb2dpbi1uYW1lKSkpCisKKyhlcnQtZGVmdGVzdCBlc2gtdmFy LXRlc3QvaW50ZXJwLXF1b3RlZC12YXItY29uY2F0ICgpCisgICJJbnRlcnBvbGF0ZSBhbmQg Y29uY2F0IHF1b3RlZCB2YXJpYWJsZSIKKyAgKHNob3VsZCAoZXF1YWwgKGVzaGVsbC10ZXN0 LWNvbW1hbmQtcmVzdWx0ICJlY2hvICQndXNlci1sb2dpbi1uYW1lJy1mb28iKQorICAgICAg ICAgICAgICAgICAoY29uY2F0IHVzZXItbG9naW4tbmFtZSAiLWZvbyIpKSkKKyAgKHNob3Vs ZCAoZXF1YWwgKGVzaGVsbC10ZXN0LWNvbW1hbmQtcmVzdWx0ICJlY2hvICRcInVzZXItbG9n aW4tbmFtZVwiLWZvbyIpCisgICAgICAgICAgICAgICAgIChjb25jYXQgdXNlci1sb2dpbi1u YW1lICItZm9vIikpKSkKKwogKGVydC1kZWZ0ZXN0IGVzaC12YXItdGVzdC9pbnRlcnAtbGlz cCAoKQogICAiSW50ZXJwb2xhdGUgTGlzcCBmb3JtIGV2YWx1YXRpb24iCiAgIChzaG91bGQg KGVxdWFsIChlc2hlbGwtdGVzdC1jb21tYW5kLXJlc3VsdCAiKyAkKCsgMSAyKSAzIikgNikp KQpAQCAtNzksNiArOTgsMzYgQEAgZXNoLXZhci10ZXN0L2ludGVycC1jb25jYXQtY21kLWV4 dGVybmFsCiAgICAoZXNoZWxsLWNvbW1hbmQtcmVzdWx0LXAgImVjaG8gJHtlY2hvIGhpfS0k eyplY2hvIHRoZXJlfSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaGktdGhlcmVc biIpKSkKIAorKGVydC1kZWZ0ZXN0IGVzaC12YXItdGVzdC9xdW90ZWQtaW50ZXJwLXZhciAo KQorICAiSW50ZXJwb2xhdGUgdmFyaWFibGUgaW5zaWRlIGRvdWJsZS1xdW90ZXMiCisgIChz aG91bGQgKGVxdWFsIChlc2hlbGwtdGVzdC1jb21tYW5kLXJlc3VsdCAiZWNobyBcIiR1c2Vy LWxvZ2luLW5hbWVcIiIpCisgICAgICAgICAgICAgICAgIHVzZXItbG9naW4tbmFtZSkpKQor CisoZXJ0LWRlZnRlc3QgZXNoLXZhci10ZXN0L3F1b3RlZC1pbnRlcnAtcXVvdGVkLXZhciAo KQorICAiSW50ZXJwb2xhdGUgcXVvdGVkIHZhcmlhYmxlIGluc2lkZSBkb3VibGUtcXVvdGVz IgorICAoc2hvdWxkIChlcXVhbCAoZXNoZWxsLXRlc3QtY29tbWFuZC1yZXN1bHQKKyAgICAg ICAgICAgICAgICAgICJlY2hvIFwiaGksICQndXNlci1sb2dpbi1uYW1lJ1wiIikKKyAgICAg ICAgICAgICAgICAgKGNvbmNhdCAiaGksICIgdXNlci1sb2dpbi1uYW1lKSkpCisgIChzaG91 bGQgKGVxdWFsIChlc2hlbGwtdGVzdC1jb21tYW5kLXJlc3VsdAorICAgICAgICAgICAgICAg ICAgImVjaG8gXCJoaSwgJFxcXCJ1c2VyLWxvZ2luLW5hbWVcXFwiXCIiKQorICAgICAgICAg ICAgICAgICAoY29uY2F0ICJoaSwgIiB1c2VyLWxvZ2luLW5hbWUpKSkpCisKKyhlcnQtZGVm dGVzdCBlc2gtdmFyLXRlc3QvcXVvdGVkLWludGVycC1saXNwICgpCisgICJJbnRlcnBvbGF0 ZSBMaXNwIGZvcm0gZXZhbHVhdGlvbiBpbnNpZGUgZG91YmxlLXF1b3RlcyIKKyAgKHNob3Vs ZCAoZXF1YWwgKGVzaGVsbC10ZXN0LWNvbW1hbmQtcmVzdWx0CisgICAgICAgICAgICAgICAg ICAiZWNobyBcImhpICQoY29uY2F0IFxcXCJ0aGVcXFwiIFxcXCJyZVxcXCIpXCIiKQorICAg ICAgICAgICAgICAgICAiaGkgdGhlcmUiKSkpCisKKyhlcnQtZGVmdGVzdCBlc2gtdmFyLXRl c3QvcXVvdGVkLWludGVycC1jbWQgKCkKKyAgIkludGVycG9sYXRlIGNvbW1hbmQgcmVzdWx0 IGluc2lkZSBkb3VibGUtcXVvdGVzIgorICAoc2hvdWxkIChlcXVhbCAoZXNoZWxsLXRlc3Qt Y29tbWFuZC1yZXN1bHQKKyAgICAgICAgICAgICAgICAgICJlY2hvIFwiaGkgJHtlY2hvIFxc XCJ0aGVyZVxcXCJ9XCIiKQorICAgICAgICAgICAgICAgICAiaGkgdGhlcmUiKSkpCisKKyhl cnQtZGVmdGVzdCBlc2gtdmFyLXRlc3QvcXVvdGVkLWludGVycC10ZW1wLWNtZCAoKQorICAi SW50ZXJwb2xhdGUgY29tbWFuZCByZXN1bHQgcmVkaXJlY3RlZCB0byB0ZW1wIGZpbGUgaW5z aWRlIGRvdWJsZS1xdW90ZXMiCisgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtdGVzdC1jb21t YW5kLXJlc3VsdCAiY2F0IFwiJDxlY2hvIGhpPlwiIikgImhpIikpKQorCiAMCiA7OyBCdWls dC1pbiB2YXJpYWJsZXMKIAotLSAKMi4yNS4xCgo= --------------84BAF41E9AB7415EAB9F2A21 Content-Type: text/plain; charset=UTF-8; name="0004-Fix-parsing-of-indices-in-Eshell-expansions.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="0004-Fix-parsing-of-indices-in-Eshell-expansions.patch" RnJvbSAzZDkzZWJhM2ViZTgzOTZjMGQzNDljYWQxNWY0MGUyYzM4N2Y0ZTkxIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKaW0gUG9ydGVyIDxqcG9ydGVyYnVnc0BnbWFpbC5j b20+CkRhdGU6IFR1ZSwgMSBNYXIgMjAyMiAxODozNjowOCAtMDgwMApTdWJqZWN0OiBbUEFU Q0ggNC81XSBGaXggcGFyc2luZyBvZiBpbmRpY2VzIGluIEVzaGVsbCBleHBhbnNpb25zCgpQ cmV2aW91c2x5LCBtb3JlLWNvbXBsZXggaW5kZXggZXhwYW5zaW9ucywgbGlrZSAnJHZhclsi OiIgMF0nIG9yCickdmFyWyQoZXhwcikgMF0nIGZhaWxlZCB0byBwYXJzZSBjb3JyZWN0bHku CgoqIGxpc3AvZXNoZWxsL2VzaC12YXIuZWwgKENvbW1lbnRhcnkpOiBDbGFyaWZ5IGluZGV4 aW5nIGFuZCBsZW5ndGgKZXhwYW5zaW9ucy4KKGVzaGVsbC1wYXJzZS1pbmRpY2VzKTogRXhw YW5kIGRvY3N0cmluZyBhbmQgc3VwcG9ydCBwYXJzaW5nIGluc2lkZQpkb3VibGUtcXVvdGVz LgooZXNoZWxsLWV2YWwtaW5kaWNlcyk6IE5ldyBmdW5jdGlvbi4KKGVzaGVsbC1wYXJzZS12 YXJpYWJsZSk6IFVzZSBpdC4KCiogdGVzdC9saXNwL2VzaGVsbC9lc2gtdmFyLXRlc3RzLmVs IChlc2hlbGwtdGVzdC12YWx1ZSk6IE5ldyBkZWZ2YXIuCihlc2gtdmFyLXRlc3QvaW50ZXJw LXZhci1pbmRpY2VzLAooZXNoLXZhci10ZXN0L2ludGVycC12YXItc3BsaXQtaW5kaWNlcykK KGVzaC12YXItdGVzdC9pbnRlcnAtdmFyLXN0cmluZy1zcGxpdC1pbmRpY2VzKQooZXNoLXZh ci10ZXN0L2ludGVycC12YXItcmVnZXhwLXNwbGl0LWluZGljZXMpCihlc2gtdmFyLXRlc3Qv aW50ZXJwLXZhci1hc3NvYywgZXNoLXZhci10ZXN0L2ludGVycC12YXItbGVuZ3RoLWxpc3Qp Cihlc2gtdmFyLXRlc3QvaW50ZXJwLXZhci1sZW5ndGgtc3RyaW5nKQooZXNoLXZhci10ZXN0 L2ludGVycC12YXItbGVuZ3RoLWFsaXN0KQooZXNoLXZhci10ZXN0L3F1b3RlZC1pbnRlcnAt dmFyLWluZGljZXMpCihlc2gtdmFyLXRlc3QvcXVvdGVkLWludGVycC12YXItc3BsaXQtaW5k aWNlcykKKGVzaC12YXItdGVzdC9xdW90ZWQtaW50ZXJwLXZhci1zdHJpbmctc3BsaXQtaW5k aWNlcykKKGVzaC12YXItdGVzdC9xdW90ZWQtaW50ZXJwLXZhci1yZWdleHAtc3BsaXQtaW5k aWNlcykKKGVzaC12YXItdGVzdC9xdW90ZWQtaW50ZXJwLXZhci1hc3NvYykKKGVzaC12YXIt dGVzdC9xdW90ZWQtaW50ZXJwLXZhci1sZW5ndGgtbGlzdCkKKGVzaC12YXItdGVzdC9xdW90 ZWQtaW50ZXJwLXZhci1sZW5ndGgtc3RyaW5nKQooZXNoLXZhci10ZXN0L3F1b3RlZC1pbnRl cnAtdmFyLWxlbmd0aC1hbGlzdCk6IE5ldyB0ZXN0cy4KCiogZG9jL21pc2MvZXNoZWxsLnRl eGkgKERvbGxhcnMgRXhwYW5zaW9uKTogRXhwYW5kIGFuZCByZXdvcmQKZG9jdW1lbnRhdGlv biBmb3IgaW5kZXhpbmcgYW5kIGxlbmd0aCBleHBhbnNpb25zLgotLS0KIGRvYy9taXNjL2Vz aGVsbC50ZXhpICAgICAgICAgICAgICB8ICA2MiArKysrKystLS0tLS0KIGxpc3AvZXNoZWxs L2VzaC12YXIuZWwgICAgICAgICAgICB8ICA1OSArKysrKystLS0tLS0KIHRlc3QvbGlzcC9l c2hlbGwvZXNoLXZhci10ZXN0cy5lbCB8IDE1MiArKysrKysrKysrKysrKysrKysrKysrKysr KysrKysKIDMgZmlsZXMgY2hhbmdlZCwgMjEyIGluc2VydGlvbnMoKyksIDYxIGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL2RvYy9taXNjL2VzaGVsbC50ZXhpIGIvZG9jL21pc2MvZXNo ZWxsLnRleGkKaW5kZXggYmJmOGNhNmI4Yi4uMzMwMWE4NTRlYiAxMDA2NDQKLS0tIGEvZG9j L21pc2MvZXNoZWxsLnRleGkKKysrIGIvZG9jL21pc2MvZXNoZWxsLnRleGkKQEAgLTEwMjIs MTEgKzEwMjIsNiBAQCBEb2xsYXJzIEV4cGFuc2lvbgogZGlzYW1iaWd1YXRlIHRoZSB2YXJp YWJsZSBuYW1lIHdoZW4gY29uY2F0ZW5hdGluZyBpdCB3aXRoIGFub3RoZXIKIHZhbHVlLCBz dWNoIGFzIEBzYW1weyQiQHZhcnt2YXJ9Ii1zdWZmaXh9LgogCi1AaXRlbSAkI0B2YXJ7dmFy fQotRXhwYW5kcyB0byB0aGUgbGVuZ3RoIG9mIHRoZSB2YWx1ZSBib3VuZCB0byBAdmFye3Zh cn0uICBSYWlzZXMgYW4gZXJyb3IKLWlmIHRoZSB2YWx1ZSBpcyBub3QgYSBzZXF1ZW5jZQot KEBweHJlZntTZXF1ZW5jZXMgQXJyYXlzIFZlY3RvcnMsIFNlcXVlbmNlcywgLCBlbGlzcCwg VGhlIEVtYWNzIExpc3AgUmVmZXJlbmNlIE1hbnVhbH0pLgotCiBAaXRlbSAkKEB2YXJ7bGlz cH0pCiBFeHBhbmRzIHRvIHRoZSByZXN1bHQgb2YgZXZhbHVhdGluZyB0aGUgUy1leHByZXNz aW9uIEBjb2RleyhAdmFye2xpc3B9KX0uICBPbgogaXRzIG93biwgdGhpcyBpcyBpZGVudGlj YWwgdG8ganVzdCBAY29kZXsoQHZhcntsaXNwfSl9LCBidXQgd2l0aCB0aGUgQGNvZGV7JH0s CkBAIC0xMDQxLDM0ICsxMDM2LDM1IEBAIERvbGxhcnMgRXhwYW5zaW9uCiBAY29tbWFuZHtA dmFye2NvbW1hbmR9fSwgYnV0IHdyaXRlcyB0aGUgb3V0cHV0IHRvIGEgdGVtcG9yYXJ5IGZp bGUgYW5kCiByZXR1cm5zIHRoZSBmaWxlIG5hbWUuCiAKLUBpdGVtICRAdmFye3Zhcn1baV0K LUV4cGFuZHMgdG8gdGhlIEBjb2Rle2l9dGggZWxlbWVudCBvZiB0aGUgdmFsdWUgYm91bmQg dG8gQHZhcnt2YXJ9LiAgSWYKLXRoZSB2YWx1ZSBpcyBhIHN0cmluZywgaXQgd2lsbCBiZSBz cGxpdCBhdCB3aGl0ZXNwYWNlIHRvIG1ha2UgaXQgYSBsaXN0LgotQWdhaW4sIHJhaXNlcyBh biBlcnJvciBpZiB0aGUgdmFsdWUgaXMgbm90IGEgc2VxdWVuY2UuCi0KLUBpdGVtICRAdmFy e3Zhcn1bOiBpXQotQXMgYWJvdmUsIGJ1dCBub3cgc3BsaXR0aW5nIG9jY3VycyBhdCB0aGUg Y29sb24gY2hhcmFjdGVyLgotCi1AaXRlbSAkQHZhcnt2YXJ9WzogaSBqXQotQXMgYWJvdmUs IGJ1dCBpbnN0ZWFkIG9mIHJldHVybmluZyBqdXN0IGEgc3RyaW5nLCBpdCBub3cgcmV0dXJu cyBhIGxpc3QKLW9mIHR3byBzdHJpbmdzLiAgSWYgdGhlIHJlc3VsdCBpcyBiZWluZyBpbnRl cnBvbGF0ZWQgaW50byBhIGxhcmdlcgotc3RyaW5nLCB0aGlzIGxpc3Qgd2lsbCBiZSBmbGF0 dGVuZWQgaW50byBvbmUgYmlnIHN0cmluZywgd2l0aCBlYWNoCi1lbGVtZW50IHNlcGFyYXRl ZCBieSBhIHNwYWNlLgotCi1AaXRlbSAkQHZhcnt2YXJ9WyJcXFxcIiBpXQotU2VwYXJhdGUg b24gYmFja3NsYXNoIGNoYXJhY3RlcnMuICBBY3R1YWxseSwgdGhlIGZpcnN0IGFyZ3VtZW50 IC0tIGlmIGl0Ci1kb2Vzbid0IGhhdmUgdGhlIGZvcm0gb2YgYSBudW1iZXIsIG9yIGEgcGxh aW4gdmFyaWFibGUgbmFtZSAtLSBjYW4gYmUKLWFueSByZWd1bGFyIGV4cHJlc3Npb24uICBT byB0byBzcGxpdCBvbiBudW1iZXJzLCB1c2UKLUBzYW1weyRAdmFye3Zhcn1bIlswLTldKyIg MTAgMjBdfS4KLQotQGl0ZW0gJEB2YXJ7dmFyfVtoZWxsb10KLUNhbGxzIEBjb2Rle2Fzc29j fSBvbiBAdmFye3Zhcn0gd2l0aCBAY29kZXsiaGVsbG8ifSwgZXhwZWN0aW5nIGl0IHRvIGJl Ci1hbiBhbGlzdCAoQHB4cmVme0Fzc29jaWF0aW9uIExpc3QgVHlwZSwgQXNzb2NpYXRpb24g TGlzdHMsICwgZWxpc3AsCi1UaGUgRW1hY3MgTGlzcCBSZWZlcmVuY2UgTWFudWFsfSkuCi0K LUBpdGVtICQjQHZhcnt2YXJ9W2hlbGxvXQotUmV0dXJucyB0aGUgbGVuZ3RoIG9mIHRoZSBA Y29kZXtjZHJ9IG9mIHRoZSBlbGVtZW50IG9mIEB2YXJ7dmFyfSB3aG9zZQotY2FyIGlzIGVx dWFsIHRvIEBjb2RleyJoZWxsbyJ9LgorQGl0ZW0gJEB2YXJ7ZXhwcn1bQHZhcntpLi4ufV0K K0V4cGFuZHMgdG8gdGhlIEB2YXJ7aX10aCBlbGVtZW50IG9mIHRoZSByZXN1bHQgb2YgQHZh cntleHByfSwgYW4KK2V4cHJlc3Npb24gaW4gb25lIG9mIHRoZSBhYm92ZSBmb3JtcyBsaXN0 ZWQgaGVyZS4gIElmIG11bHRpcGxlIGluZGljZXMKK2FyZSBzdXBwbGllZCwgdGhpcyB3aWxs IHJldHVybiBhIGxpc3QgY29udGFpbmluZyB0aGUgZWxlbWVudHMgZm9yIGVhY2gKK2luZGV4 LiAgSWYgQHZhcntleHByfSdzIHZhbHVlIGlzIGEgc3RyaW5nLCBpdCB3aWxsIGZpcnN0IGJl IHNwbGl0IGF0Cit3aGl0ZXNwYWNlIHRvIG1ha2UgaXQgYSBsaXN0LiAgSWYgQHZhcntleHBy fSdzIHZhbHVlIGlzIGFuIGFsaXN0CisoQHB4cmVme0Fzc29jaWF0aW9uIExpc3QgVHlwZSwg QXNzb2NpYXRpb24gTGlzdHMsICwgZWxpc3AsIFRoZSBFbWFjcworTGlzcCBSZWZlcmVuY2Ug TWFudWFsfSksIHRoaXMgd2lsbCBjYWxsIEBjb2Rle2Fzc29jfSBvbiB0aGUgcmVzdWx0IG9m CitAdmFye2V4cHJ9LCByZXR1cm5pbmcgdGhlIEBjb2Rle2Nkcn0gb2YgdGhlIGVsZW1lbnQg b2YgdGhlIHJlc3VsdAord2hvc2UgY2FyIGlzIGVxdWFsIHRvIEBjb2RleyJpIn0uICBSYWlz ZXMgYW4gZXJyb3IgaWYgdGhlIHZhbHVlIGlzIG5vdAorYSBzZXF1ZW5jZSAoQHB4cmVme1Nl cXVlbmNlcyBBcnJheXMgVmVjdG9ycywgU2VxdWVuY2VzLCAsIGVsaXNwLCBUaGUKK0VtYWNz IExpc3AgUmVmZXJlbmNlIE1hbnVhbH0pLgorCitNdWx0aXBsZSBzZXRzIG9mIGluZGljZXMg Y2FuIGFsc28gYmUgc3BlY2lmaWVkLiBGb3IgZXhhbXBsZSwgaWYKK0B2YXJ7dmFyfSBpcyBh IGxpc3Qgb2YgbGlzdHMsIEBzYW1weyRAdmFye3Zhcn1bMF1bMF19IGlzIGVxdWl2YWxlbnQg dG8KK0BzYW1weyhjYWFyIEB2YXJ7dmFyfSl9LgorCitAaXRlbSAkQHZhcntleHByfVtAdmFy e3JlZ2V4cH0gQHZhcntpLi4ufV0KK0FzIGFib3ZlICh3aGVuIEB2YXJ7ZXhwcn0gZXhwYW5k cyB0byBhIHN0cmluZyksIGJ1dCB1c2UgQHZhcntyZWdleHB9Cit0byBzcGxpdCB0aGUgc3Ry aW5nLiAgQHZhcntyZWdleHB9IGNhbiBiZSBhbnkgZm9ybSBvdGhlciB0aGFuIGEgbnVtYmVy CitvciBhIHBsYWluIHZhcmlhYmxlIG5hbWUuICBGb3IgZXhhbXBsZSwgQHNhbXB7JEB2YXJ7 dmFyfVs6IDBdfSB3aWxsCityZXR1cm4gdGhlIGZpcnN0IGVsZW1lbnQgb2YgYSBjb2xvbi1k ZWxpbWl0ZWQgc3RyaW5nLgorCitAaXRlbSAkI0B2YXJ7ZXhwcn0KK0V4cGFuZHMgdG8gdGhl IGxlbmd0aCBvZiB0aGUgcmVzdWx0IG9mIEB2YXJ7ZXhwcn0sIGFuIGV4cHJlc3Npb24gaW4K K29uZSBvZiB0aGUgYWJvdmUgZm9ybXMuICBGb3IgZXhhbXBsZSwgQHNhbXB7JCNAdmFye3Zh cn19IHJldHVybnMgdGhlCitsZW5ndGggb2YgdGhlIHZhcmlhYmxlIEB2YXJ7dmFyfSBhbmQg QHNhbXB7JCNAdmFye3Zhcn1bMF19IHJldHVybnMgdGhlCitsZW5ndGggb2YgdGhlIGZpcnN0 IGVsZW1lbnQgb2YgQHZhcnt2YXJ9LiAgQWdhaW4sIHJhaXNlcyBhbiBlcnJvciBpZgordGhl IHJlc3VsdCBvZiBAdmFye2V4cHJ9IGlzIG5vdCBhIHNlcXVlbmNlLgogCiBAZW5kIHRhYmxl CiAKZGlmZiAtLWdpdCBhL2xpc3AvZXNoZWxsL2VzaC12YXIuZWwgYi9saXNwL2VzaGVsbC9l c2gtdmFyLmVsCmluZGV4IDI0ZmRiZGUzY2YuLjZmMDhhM2ZiYzQgMTAwNjQ0Ci0tLSBhL2xp c3AvZXNoZWxsL2VzaC12YXIuZWwKKysrIGIvbGlzcC9lc2hlbGwvZXNoLXZhci5lbApAQCAt MzksMTEgKzM5LDYgQEAKIDs7CiA7OyBPbmx5ICJNWVZBUiIgaXMgcGFydCBvZiB0aGUgdmFy aWFibGUgbmFtZSBpbiB0aGlzIGNhc2UuCiA7OwotOzsgICAkI1ZBUklBQkxFCi07OwotOzsg UmV0dXJucyB0aGUgbGVuZ3RoIG9mIHRoZSB2YWx1ZSBvZiBWQVJJQUJMRS4gIFRoaXMgY291 bGQgYWxzbyBiZQotOzsgZG9uZSB1c2luZyB0aGUgYGxlbmd0aCcgTGlzcCBmdW5jdGlvbi4K LTs7CiA7OyAgICQobGlzcCkKIDs7CiA7OyBSZXR1cm5zIHJlc3VsdCBvZiBMaXNwIGV2YWx1 YXRpb24uICBOb3RlOiBVc2VkIGFsb25lIGxpa2UgdGhpcywgaXQKQEAgLTYxLDM4ICs1Niwz NiBAQAogOzsgRXZhbHVhdGVzIGFuIGVzaGVsbCBzdWJjb21tYW5kLCByZWRpcmVjdGluZyB0 aGUgb3V0cHV0IHRvIGEKIDs7IHRlbXBvcmFyeSBmaWxlLCBhbmQgcmV0dXJuaW5nIHRoZSBm aWxlIG5hbWUuCiA7OwotOzsgICAkQU5ZVkFSWzEwXQorOzsgICAkRVhQUlsxMF0KIDs7Ci07 OyBSZXR1cm4gdGhlIDEwdGggZWxlbWVudCBvZiBBTllWQVIuICBJZiBBTllWQVIncyB2YWx1 ZSBpcyBhIHN0cmluZywKLTs7IGl0IHdpbGwgYmUgc3BsaXQgaW4gb3JkZXIgdG8gbWFrZSBp dCBhIGxpc3QuICBUaGUgc3BsaXR0aW5nIHdpbGwKLTs7IG9jY3VyIGF0IHdoaXRlc3BhY2Uu Cis7OyBSZXR1cm4gdGhlIDEwdGggZWxlbWVudCBvZiAkRVhQUiwgd2hpY2ggY2FuIGJlIGFu eSBkb2xsYXIKKzs7IGV4cHJlc3Npb24uICBJZiAkRVhQUidzIHZhbHVlIGlzIGEgc3RyaW5n LCBpdCB3aWxsIGJlIHNwbGl0IGluCis7OyBvcmRlciB0byBtYWtlIGl0IGEgbGlzdC4gIFRo ZSBzcGxpdHRpbmcgd2lsbCBvY2N1ciBhdCB3aGl0ZXNwYWNlLgogOzsKLTs7ICAgJEFOWVZB Uls6IDEwXQorOzsgICAkRVhQUlsxMCAyMF0KIDs7Ci07OyBBcyBhYm92ZSwgZXhjZXB0IHRo YXQgc3BsaXR0aW5nIG9jY3VycyBhdCB0aGUgY29sb24gbm93LgorOzsgQXMgYWJvdmUsIGJ1 dCBpbnN0ZWFkIG9mIHJldHVybmluZyBhIHNpbmdsZSBlbGVtZW50LCBpdCBub3cgcmV0dXJu cyBhCis7OyBsaXN0IG9mIHR3byBlbGVtZW50cy4KIDs7Ci07OyAgICRBTllWQVJbOiAxMCAy MF0KKzs7ICAgJEVYUFJbOiAxMF0KIDs7Ci07OyBBcyBhYm92ZSwgYnV0IGluc3RlYWQgb2Yg cmV0dXJuaW5nIGp1c3QgYSBzdHJpbmcsIGl0IG5vdyByZXR1cm5zIGEKLTs7IGxpc3Qgb2Yg dHdvIHN0cmluZ3MuICBJZiB0aGUgcmVzdWx0IGlzIGJlaW5nIGludGVycG9sYXRlZCBpbnRv IGEKLTs7IGxhcmdlciBzdHJpbmcsIHRoaXMgbGlzdCB3aWxsIGJlIGZsYXR0ZW5lZCBpbnRv IG9uZSBiaWcgc3RyaW5nLAotOzsgd2l0aCBlYWNoIGVsZW1lbnQgc2VwYXJhdGVkIGJ5IGEg c3BhY2UuCis7OyBMaWtlICRFWFBSWzEwXSwgZXhjZXB0IHRoYXQgc3BsaXR0aW5nIG9jY3Vy cyBhdCB0aGUgY29sb24gbm93LgogOzsKLTs7ICAgJEFOWVZBUlsiXFxcXCIgMTBdCis7OyAg ICRFWFBSWyJcXFxcIiAxMF0KIDs7CiA7OyBTZXBhcmF0ZSBvbiBiYWNrc2xhc2ggY2hhcmFj dGVycy4gIEFjdHVhbGx5LCB0aGUgZmlyc3QgYXJndW1lbnQgLS0KIDs7IGlmIGl0IGRvZXNu J3QgaGF2ZSB0aGUgZm9ybSBvZiBhIG51bWJlciwgb3IgYSBwbGFpbiB2YXJpYWJsZSBuYW1l CiA7OyAtLSBjYW4gYmUgYW55IHJlZ3VsYXIgZXhwcmVzc2lvbi4gIFNvIHRvIHNwbGl0IG9u IG51bWJlcnMsIHVzZQotOzsgJyRBTllWQVJbIlswLTldKyIgMTAgMjBdJy4KKzs7ICckRVhQ UlsiWzAtOV0rIiAxMCAyMF0nLgogOzsKLTs7ICAgJEFOWVZBUltoZWxsb10KKzs7ICAgJEVY UFJbaGVsbG9dCiA7OwotOzsgQ2FsbHMgYGFzc29jJyBvbiBBTllWQVIgd2l0aCAnaGVsbG8n LCBleHBlY3RpbmcgaXQgdG8gYmUgYW4gYWxpc3QuCis7OyBDYWxscyBgYXNzb2MnIG9uICRF WFBSIHdpdGggJ2hlbGxvJywgZXhwZWN0aW5nIGl0IHRvIGJlIGFuIGFsaXN0LgogOzsKLTs7 ICAgJCNBTllWQVJbaGVsbG9dCis7OyAgICQjRVhQUgogOzsKLTs7IFJldHVybnMgdGhlIGxl bmd0aCBvZiB0aGUgY2RyIG9mIHRoZSBlbGVtZW50IG9mIEFOWVZBUiB3aG8gY2FyIGlzCi07 OyBlcXVhbCB0byAiaGVsbG8iLgorOzsgUmV0dXJucyB0aGUgbGVuZ3RoIG9mIHRoZSB2YWx1 ZSBvZiAkRVhQUi4gIFRoaXMgY291bGQgYWxzbyBiZQorOzsgZG9uZSB1c2luZyB0aGUgYGxl bmd0aCcgTGlzcCBmdW5jdGlvbi4KIDs7CiA7OyBUaGVyZSBhcmUgYWxzbyBhIGZldyBzcGVj aWFsIHZhcmlhYmxlcyBkZWZpbmVkIGJ5IEVzaGVsbC4gICckJCcgaXMKIDs7IHRoZSB2YWx1 ZSBvZiB0aGUgbGFzdCBjb21tYW5kICh0IG9yIG5pbCwgaW4gdGhlIGNhc2Ugb2YgYW4gZXh0 ZXJuYWwKQEAgLTQxNiw3ICs0MDksNyBAQCBlc2hlbGwtcGFyc2UtdmFyaWFibGUKIAkJICAg ICAgIChlc2hlbGwtcGFyc2UtaW5kaWNlcykpCiAgICAgICAgICAgOzsgVGhpcyBpcyBhbiBl eHByZXNzaW9uIHRoYXQgd2lsbCBiZSBldmFsdWF0ZWQgYnkgYGVzaGVsbC1kby1ldmFsJywK ICAgICAgICAgICA7OyB3aGljaCBvbmx5IHN1cHBvcnQgbGV0LWJpbmRpbmcgb2YgZHluYW1p Y2FsbHktc2NvcGVkIHZhcnMKLQkgIHZhbHVlIGAobGV0ICgoaW5kaWNlcyAnLGluZGljZXMp KSAsdmFsdWUpKQorCSAgdmFsdWUgYChsZXQgKChpbmRpY2VzIChlc2hlbGwtZXZhbC1pbmRp Y2VzICcsaW5kaWNlcykpKSAsdmFsdWUpKQogICAgIChpZiBnZXQtbGVuCiAJYChsZW5ndGgg LHZhbHVlKQogICAgICAgdmFsdWUpKSkKQEAgLTUwNCwxOSArNDk3LDI5IEBAIGVzaGVsbC1w YXJzZS12YXJpYWJsZS1yZWYKIChkZWZ2YXIgZXNoZWxsLWdsb2ItZnVuY3Rpb24pCiAKIChk ZWZ1biBlc2hlbGwtcGFyc2UtaW5kaWNlcyAoKQotICAiUGFyc2UgYW5kIHJldHVybiBhIGxp c3Qgb2YgbGlzdCBvZiBpbmRpY2VzLiIKKyAgIlBhcnNlIGFuZCByZXR1cm4gYSBsaXN0IG9m IGluZGV4LWxpc3RzLgorCitGb3IgZXhhbXBsZSwgXCJbMCAxXVsyXVwiIGJlY29tZXM6Cisg ICgoXCIwXCIgXCIxXCIpIChcIjJcIikuIgogICAobGV0IChpbmRpY2VzKQogICAgICh3aGls ZSAoZXEgKGNoYXItYWZ0ZXIpID9cWykKICAgICAgIChsZXQgKChlbmQgKGVzaGVsbC1maW5k LWRlbGltaXRlciA/XFsgP1xdKSkpCiAJKGlmIChub3QgZW5kKQogCSAgICAodGhyb3cgJ2Vz aGVsbC1pbmNvbXBsZXRlID9cWykKIAkgIChmb3J3YXJkLWNoYXIpCi0JICAobGV0IChlc2hl bGwtZ2xvYi1mdW5jdGlvbikKLQkgICAgKHNldHEgaW5kaWNlcyAoY29ucyAoZXNoZWxsLXBh cnNlLWFyZ3VtZW50cyAocG9pbnQpIGVuZCkKLQkJCQlpbmRpY2VzKSkpCisgICAgICAgICAg KGVzaGVsbC13aXRoLXRlbXAtY29tbWFuZCAob3IgKGVzaGVsbC1wYXJzZS1pbm5lci1kb3Vi bGUtcXVvdGUgZW5kKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IChjb25zIChwb2ludCkgZW5kKSkKKwkgICAgKGxldCAoZXNoZWxsLWdsb2ItZnVuY3Rpb24g KGVzaGVsbC1jdXJyZW50LXF1b3RlZCBuaWwpKQorCSAgICAgIChzZXRxIGluZGljZXMgKGNv bnMgKGVzaGVsbC1wYXJzZS1hcmd1bWVudHMKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgKHBvaW50LW1pbikgKHBvaW50LW1heCkpCisJCQkJICBpbmRpY2VzKSkpKQog CSAgKGdvdG8tY2hhciAoMSsgZW5kKSkpKSkKICAgICAobnJldmVyc2UgaW5kaWNlcykpKQog CisoZGVmdW4gZXNoZWxsLWV2YWwtaW5kaWNlcyAoaW5kaWNlcykKKyAgIkV2YWx1YXRlIElO RElDRVMsIGEgbGlzdCBvZiBpbmRleC1saXN0cyBnZW5lcmF0ZWQgYnkgYGVzaGVsbC1wYXJz ZS1pbmRpY2VzJy4iCisgIChtYXBjYXIgKGxhbWJkYSAoaSkgKG1hcGNhciAjJ2V2YWwgaSkp IGluZGljZXMpKQorCiAoZGVmdW4gZXNoZWxsLWdldC12YXJpYWJsZSAobmFtZSAmb3B0aW9u YWwgaW5kaWNlcykKICAgIkdldCB0aGUgdmFsdWUgZm9yIHRoZSB2YXJpYWJsZSBOQU1FLiIK ICAgKGxldCogKChhbGlhcyAoYXNzb2MgbmFtZSBlc2hlbGwtdmFyaWFibGUtYWxpYXNlcy1s aXN0KSkKZGlmZiAtLWdpdCBhL3Rlc3QvbGlzcC9lc2hlbGwvZXNoLXZhci10ZXN0cy5lbCBi L3Rlc3QvbGlzcC9lc2hlbGwvZXNoLXZhci10ZXN0cy5lbAppbmRleCA3ZWM2YTk3NTE5Li5l Njc5MTc0OTM5IDEwMDY0NAotLS0gYS90ZXN0L2xpc3AvZXNoZWxsL2VzaC12YXItdGVzdHMu ZWwKKysrIGIvdGVzdC9saXNwL2VzaGVsbC9lc2gtdmFyLXRlc3RzLmVsCkBAIC0zMiw2ICsz Miw4IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZmlsZS1uYW1lLWRpcmVjdG9y eSAob3IgbG9hZC1maWxlLW5hbWUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBkZWZhdWx0LWRpcmVjdG9yeSkpKSkKIAorKGRlZnZhciBl c2hlbGwtdGVzdC12YWx1ZSBuaWwpCisKIDs7OyBUZXN0czoKIAogDApAQCAtNTYsNiArNTgs NzYgQEAgZXNoLXZhci10ZXN0L2ludGVycC1xdW90ZWQtdmFyLWNvbmNhdAogICAoc2hvdWxk IChlcXVhbCAoZXNoZWxsLXRlc3QtY29tbWFuZC1yZXN1bHQgImVjaG8gJFwidXNlci1sb2dp bi1uYW1lXCItZm9vIikKICAgICAgICAgICAgICAgICAgKGNvbmNhdCB1c2VyLWxvZ2luLW5h bWUgIi1mb28iKSkpKQogCisoZXJ0LWRlZnRlc3QgZXNoLXZhci10ZXN0L2ludGVycC12YXIt aW5kaWNlcyAoKQorICAiSW50ZXJwb2xhdGUgbGlzdCB2YXJpYWJsZSB3aXRoIGluZGljZXMi CisgIChsZXQgKChlc2hlbGwtdGVzdC12YWx1ZSAnKCJ6ZXJvIiAib25lIiAidHdvIiAidGhy ZWUiICJmb3VyIikpKQorICAgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtdGVzdC1jb21tYW5k LXJlc3VsdCAiZWNobyAkZXNoZWxsLXRlc3QtdmFsdWVbMF0iKQorICAgICAgICAgICAgICAg ICAgICJ6ZXJvIikpCisgICAgKHNob3VsZCAoZXF1YWwgKGVzaGVsbC10ZXN0LWNvbW1hbmQt cmVzdWx0ICJlY2hvICRlc2hlbGwtdGVzdC12YWx1ZVswIDJdIikKKyAgICAgICAgICAgICAg ICAgICAnKCJ6ZXJvIiAidHdvIikpKQorICAgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtdGVz dC1jb21tYW5kLXJlc3VsdCAiZWNobyAkZXNoZWxsLXRlc3QtdmFsdWVbMCAyIDRdIikKKyAg ICAgICAgICAgICAgICAgICAnKCJ6ZXJvIiAidHdvIiAiZm91ciIpKSkpKQorCisoZXJ0LWRl ZnRlc3QgZXNoLXZhci10ZXN0L2ludGVycC12YXItc3BsaXQtaW5kaWNlcyAoKQorICAiSW50 ZXJwb2xhdGUgc3RyaW5nIHZhcmlhYmxlIHdpdGggaW5kaWNlcyIKKyAgKGxldCAoKGVzaGVs bC10ZXN0LXZhbHVlICJ6ZXJvIG9uZSB0d28gdGhyZWUgZm91ciIpKQorICAgIChzaG91bGQg KGVxdWFsIChlc2hlbGwtdGVzdC1jb21tYW5kLXJlc3VsdCAiZWNobyAkZXNoZWxsLXRlc3Qt dmFsdWVbMF0iKQorICAgICAgICAgICAgICAgICAgICJ6ZXJvIikpCisgICAgKHNob3VsZCAo ZXF1YWwgKGVzaGVsbC10ZXN0LWNvbW1hbmQtcmVzdWx0ICJlY2hvICRlc2hlbGwtdGVzdC12 YWx1ZVswIDJdIikKKyAgICAgICAgICAgICAgICAgICAnKCJ6ZXJvIiAidHdvIikpKQorICAg IChzaG91bGQgKGVxdWFsIChlc2hlbGwtdGVzdC1jb21tYW5kLXJlc3VsdCAiZWNobyAkZXNo ZWxsLXRlc3QtdmFsdWVbMCAyIDRdIikKKyAgICAgICAgICAgICAgICAgICAnKCJ6ZXJvIiAi dHdvIiAiZm91ciIpKSkpKQorCisoZXJ0LWRlZnRlc3QgZXNoLXZhci10ZXN0L2ludGVycC12 YXItc3RyaW5nLXNwbGl0LWluZGljZXMgKCkKKyAgIkludGVycG9sYXRlIHN0cmluZyB2YXJp YWJsZSB3aXRoIHN0cmluZyBzcGxpdHRlciBhbmQgaW5kaWNlcyIKKyAgKGxldCAoKGVzaGVs bC10ZXN0LXZhbHVlICJ6ZXJvOm9uZTp0d286dGhyZWU6Zm91ciIpKQorICAgIChzaG91bGQg KGVxdWFsIChlc2hlbGwtdGVzdC1jb21tYW5kLXJlc3VsdCAiZWNobyAkZXNoZWxsLXRlc3Qt dmFsdWVbOiAwXSIpCisgICAgICAgICAgICAgICAgICAgInplcm8iKSkKKyAgICAoc2hvdWxk IChlcXVhbCAoZXNoZWxsLXRlc3QtY29tbWFuZC1yZXN1bHQgImVjaG8gJGVzaGVsbC10ZXN0 LXZhbHVlWzogMCAyXSIpCisgICAgICAgICAgICAgICAgICAgJygiemVybyIgInR3byIpKSkp KQorCisoZXJ0LWRlZnRlc3QgZXNoLXZhci10ZXN0L2ludGVycC12YXItcmVnZXhwLXNwbGl0 LWluZGljZXMgKCkKKyAgIkludGVycG9sYXRlIHN0cmluZyB2YXJpYWJsZSB3aXRoIHJlZ2V4 cCBzcGxpdHRlciBhbmQgaW5kaWNlcyIKKyAgKGxldCAoKGVzaGVsbC10ZXN0LXZhbHVlICJ6 ZXJvOm9uZSF0d286dGhyZWUhZm91ciIpKQorICAgIChzaG91bGQgKGVxdWFsIChlc2hlbGwt dGVzdC1jb21tYW5kLXJlc3VsdAorICAgICAgICAgICAgICAgICAgICAiZWNobyAkZXNoZWxs LXRlc3QtdmFsdWVbJ1s6IV0nIDBdIikKKyAgICAgICAgICAgICAgICAgICAiemVybyIpKQor ICAgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtdGVzdC1jb21tYW5kLXJlc3VsdAorICAgICAg ICAgICAgICAgICAgICAiZWNobyAkZXNoZWxsLXRlc3QtdmFsdWVbJ1s6IV0nIDAgMl0iKQor ICAgICAgICAgICAgICAgICAgICcoInplcm8iICJ0d28iKSkpCisgICAgKHNob3VsZCAoZXF1 YWwgKGVzaGVsbC10ZXN0LWNvbW1hbmQtcmVzdWx0CisgICAgICAgICAgICAgICAgICAgICJl Y2hvICRlc2hlbGwtdGVzdC12YWx1ZVtcIls6IV1cIiAwXSIpCisgICAgICAgICAgICAgICAg ICAgInplcm8iKSkKKyAgICAoc2hvdWxkIChlcXVhbCAoZXNoZWxsLXRlc3QtY29tbWFuZC1y ZXN1bHQKKyAgICAgICAgICAgICAgICAgICAgImVjaG8gJGVzaGVsbC10ZXN0LXZhbHVlW1wi WzohXVwiIDAgMl0iKQorICAgICAgICAgICAgICAgICAgICcoInplcm8iICJ0d28iKSkpKSkK KworKGVydC1kZWZ0ZXN0IGVzaC12YXItdGVzdC9pbnRlcnAtdmFyLWFzc29jICgpCisgICJJ bnRlcnBvbGF0ZSBhbGlzdCB2YXJpYWJsZSB3aXRoIGluZGV4IgorICAobGV0ICgoZXNoZWxs LXRlc3QtdmFsdWUgJygoImZvbyIgLiAxKSkpKQorICAgIChzaG91bGQgKGVxIChlc2hlbGwt dGVzdC1jb21tYW5kLXJlc3VsdCAiZWNobyAkZXNoZWxsLXRlc3QtdmFsdWVbZm9vXSIpCisg ICAgICAgICAgICAgICAgMSkpKSkKKworKGVydC1kZWZ0ZXN0IGVzaC12YXItdGVzdC9pbnRl cnAtdmFyLWxlbmd0aC1saXN0ICgpCisgICJJbnRlcnBvbGF0ZSBsZW5ndGggb2YgbGlzdCB2 YXJpYWJsZSIKKyAgKGxldCAoKGVzaGVsbC10ZXN0LXZhbHVlICcoKDEgMikgKDMpICg1ICg2 IDcgOCA5KSkpKSkKKyAgICAoc2hvdWxkIChlcSAoZXNoZWxsLXRlc3QtY29tbWFuZC1yZXN1 bHQgImVjaG8gJCNlc2hlbGwtdGVzdC12YWx1ZSIpIDMpKQorICAgIChzaG91bGQgKGVxIChl c2hlbGwtdGVzdC1jb21tYW5kLXJlc3VsdCAiZWNobyAkI2VzaGVsbC10ZXN0LXZhbHVlWzFd IikgMSkpCisgICAgKHNob3VsZCAoZXEgKGVzaGVsbC10ZXN0LWNvbW1hbmQtcmVzdWx0ICJl Y2hvICQjZXNoZWxsLXRlc3QtdmFsdWVbMl1bMV0iKQorICAgICAgICAgICAgICAgIDQpKSkp CisKKyhlcnQtZGVmdGVzdCBlc2gtdmFyLXRlc3QvaW50ZXJwLXZhci1sZW5ndGgtc3RyaW5n ICgpCisgICJJbnRlcnBvbGF0ZSBsZW5ndGggb2Ygc3RyaW5nIHZhcmlhYmxlIgorICAobGV0 ICgoZXNoZWxsLXRlc3QtdmFsdWUgImZvb2JhciIpKQorICAgIChzaG91bGQgKGVxIChlc2hl bGwtdGVzdC1jb21tYW5kLXJlc3VsdCAiZWNobyAkI2VzaGVsbC10ZXN0LXZhbHVlIikgNikp KSkKKworKGVydC1kZWZ0ZXN0IGVzaC12YXItdGVzdC9pbnRlcnAtdmFyLWxlbmd0aC1hbGlz dCAoKQorICAiSW50ZXJwb2xhdGUgbGVuZ3RoIG9mIGFsaXN0IHZhcmlhYmxlIgorICAobGV0 ICgoZXNoZWxsLXRlc3QtdmFsdWUgJygoImZvbyIgLiAoMSAyIDMpKSkpKQorICAgIChzaG91 bGQgKGVxIChlc2hlbGwtdGVzdC1jb21tYW5kLXJlc3VsdCAiZWNobyAkI2VzaGVsbC10ZXN0 LXZhbHVlIikgMSkpCisgICAgKHNob3VsZCAoZXEgKGVzaGVsbC10ZXN0LWNvbW1hbmQtcmVz dWx0ICJlY2hvICQjZXNoZWxsLXRlc3QtdmFsdWVbZm9vXSIpCisgICAgICAgICAgICAgICAg MykpKSkKKwogKGVydC1kZWZ0ZXN0IGVzaC12YXItdGVzdC9pbnRlcnAtbGlzcCAoKQogICAi SW50ZXJwb2xhdGUgTGlzcCBmb3JtIGV2YWx1YXRpb24iCiAgIChzaG91bGQgKGVxdWFsIChl c2hlbGwtdGVzdC1jb21tYW5kLXJlc3VsdCAiKyAkKCsgMSAyKSAzIikgNikpKQpAQCAtMTEy LDYgKzE4NCw4NiBAQCBlc2gtdmFyLXRlc3QvcXVvdGVkLWludGVycC1xdW90ZWQtdmFyCiAg ICAgICAgICAgICAgICAgICAiZWNobyBcImhpLCAkXFxcInVzZXItbG9naW4tbmFtZVxcXCJc IiIpCiAgICAgICAgICAgICAgICAgIChjb25jYXQgImhpLCAiIHVzZXItbG9naW4tbmFtZSkp KSkKIAorKGVydC1kZWZ0ZXN0IGVzaC12YXItdGVzdC9xdW90ZWQtaW50ZXJwLXZhci1pbmRp Y2VzICgpCisgICJJbnRlcnBvbGF0ZSBzdHJpbmcgdmFyaWFibGUgd2l0aCBpbmRpY2VzIGlu c2lkZSBkb3VibGUtcXVvdGVzIgorICAobGV0ICgoZXNoZWxsLXRlc3QtdmFsdWUgJygiemVy byIgIm9uZSIgInR3byIgInRocmVlIiAiZm91ciIpKSkKKyAgICAoc2hvdWxkIChlcXVhbCAo ZXNoZWxsLXRlc3QtY29tbWFuZC1yZXN1bHQKKyAgICAgICAgICAgICAgICAgICAgImVjaG8g XCIkZXNoZWxsLXRlc3QtdmFsdWVbMF1cIiIpCisgICAgICAgICAgICAgICAgICAgInplcm8i KSkKKyAgICAoc2hvdWxkIChlcXVhbCAoZXNoZWxsLXRlc3QtY29tbWFuZC1yZXN1bHQKKyAg ICAgICAgICAgICAgICAgICAgImVjaG8gXCIkZXNoZWxsLXRlc3QtdmFsdWVbMCAyXVwiIikK KyAgICAgICAgICAgICAgICAgICAnKCJ6ZXJvIiAidHdvIikpKQorICAgIChzaG91bGQgKGVx dWFsIChlc2hlbGwtdGVzdC1jb21tYW5kLXJlc3VsdAorICAgICAgICAgICAgICAgICAgICAi ZWNobyBcIiRlc2hlbGwtdGVzdC12YWx1ZVswIDIgNF1cIiIpCisgICAgICAgICAgICAgICAg ICAgJygiemVybyIgInR3byIgImZvdXIiKSkpKSkKKworKGVydC1kZWZ0ZXN0IGVzaC12YXIt dGVzdC9xdW90ZWQtaW50ZXJwLXZhci1zcGxpdC1pbmRpY2VzICgpCisgICJJbnRlcnBvbGF0 ZSBzdHJpbmcgdmFyaWFibGUgd2l0aCBpbmRpY2VzIGluc2lkZSBkb3VibGUtcXVvdGVzIgor ICAobGV0ICgoZXNoZWxsLXRlc3QtdmFsdWUgInplcm8gb25lIHR3byB0aHJlZSBmb3VyIikp CisgICAgKHNob3VsZCAoZXF1YWwgKGVzaGVsbC10ZXN0LWNvbW1hbmQtcmVzdWx0CisgICAg ICAgICAgICAgICAgICAgICJlY2hvIFwiJGVzaGVsbC10ZXN0LXZhbHVlWzBdXCIiKQorICAg ICAgICAgICAgICAgICAgICJ6ZXJvIikpCisgICAgKHNob3VsZCAoZXF1YWwgKGVzaGVsbC10 ZXN0LWNvbW1hbmQtcmVzdWx0CisgICAgICAgICAgICAgICAgICAgICJlY2hvIFwiJGVzaGVs bC10ZXN0LXZhbHVlWzAgMl1cIiIpCisgICAgICAgICAgICAgICAgICAgJygiemVybyIgInR3 byIpKSkpKQorCisoZXJ0LWRlZnRlc3QgZXNoLXZhci10ZXN0L3F1b3RlZC1pbnRlcnAtdmFy LXN0cmluZy1zcGxpdC1pbmRpY2VzICgpCisgICJJbnRlcnBvbGF0ZSBzdHJpbmcgdmFyaWFi bGUgd2l0aCBzdHJpbmcgc3BsaXR0ZXIgYW5kIGluZGljZXMKK2luc2lkZSBkb3VibGUtcXVv dGVzIgorICAobGV0ICgoZXNoZWxsLXRlc3QtdmFsdWUgInplcm86b25lOnR3bzp0aHJlZTpm b3VyIikpCisgICAgKHNob3VsZCAoZXF1YWwgKGVzaGVsbC10ZXN0LWNvbW1hbmQtcmVzdWx0 CisgICAgICAgICAgICAgICAgICAgICJlY2hvIFwiJGVzaGVsbC10ZXN0LXZhbHVlWzogMF1c IiIpCisgICAgICAgICAgICAgICAgICAgInplcm8iKSkKKyAgICAoc2hvdWxkIChlcXVhbCAo ZXNoZWxsLXRlc3QtY29tbWFuZC1yZXN1bHQKKyAgICAgICAgICAgICAgICAgICAgImVjaG8g XCIkZXNoZWxsLXRlc3QtdmFsdWVbOiAwIDJdXCIiKQorICAgICAgICAgICAgICAgICAgICco Inplcm8iICJ0d28iKSkpKSkKKworKGVydC1kZWZ0ZXN0IGVzaC12YXItdGVzdC9xdW90ZWQt aW50ZXJwLXZhci1yZWdleHAtc3BsaXQtaW5kaWNlcyAoKQorICAiSW50ZXJwb2xhdGUgc3Ry aW5nIHZhcmlhYmxlIHdpdGggcmVnZXhwIHNwbGl0dGVyIGFuZCBpbmRpY2VzIgorICAobGV0 ICgoZXNoZWxsLXRlc3QtdmFsdWUgInplcm86b25lIXR3bzp0aHJlZSFmb3VyIikpCisgICAg KHNob3VsZCAoZXF1YWwgKGVzaGVsbC10ZXN0LWNvbW1hbmQtcmVzdWx0CisgICAgICAgICAg ICAgICAgICAgICJlY2hvIFwiJGVzaGVsbC10ZXN0LXZhbHVlWydbOiFdJyAwXVwiIikKKyAg ICAgICAgICAgICAgICAgICAiemVybyIpKQorICAgIChzaG91bGQgKGVxdWFsIChlc2hlbGwt dGVzdC1jb21tYW5kLXJlc3VsdAorICAgICAgICAgICAgICAgICAgICAiZWNobyBcIiRlc2hl bGwtdGVzdC12YWx1ZVsnWzohXScgMCAyXVwiIikKKyAgICAgICAgICAgICAgICAgICAnKCJ6 ZXJvIiAidHdvIikpKQorICAgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtdGVzdC1jb21tYW5k LXJlc3VsdAorICAgICAgICAgICAgICAgICAgICAiZWNobyBcIiRlc2hlbGwtdGVzdC12YWx1 ZVtcXFwiWzohXVxcXCIgMF1cIiIpCisgICAgICAgICAgICAgICAgICAgInplcm8iKSkKKyAg ICAoc2hvdWxkIChlcXVhbCAoZXNoZWxsLXRlc3QtY29tbWFuZC1yZXN1bHQKKyAgICAgICAg ICAgICAgICAgICAgImVjaG8gXCIkZXNoZWxsLXRlc3QtdmFsdWVbXFxcIls6IV1cXFwiIDAg Ml1cIiIpCisgICAgICAgICAgICAgICAgICAgJygiemVybyIgInR3byIpKSkpKQorCisoZXJ0 LWRlZnRlc3QgZXNoLXZhci10ZXN0L3F1b3RlZC1pbnRlcnAtdmFyLWFzc29jICgpCisgICJJ bnRlcnBvbGF0ZSBhbGlzdCB2YXJpYWJsZSB3aXRoIGluZGV4IGluc2lkZSBkb3VibGUtcXVv dGVzIgorICAobGV0ICgoZXNoZWxsLXRlc3QtdmFsdWUgJygoImZvbyIgLiAxKSkpKQorICAg IChzaG91bGQgKGVxdWFsIChlc2hlbGwtdGVzdC1jb21tYW5kLXJlc3VsdAorICAgICAgICAg ICAgICAgICAgICAiZWNobyBcIiRlc2hlbGwtdGVzdC12YWx1ZVtmb29dXCIiKQorICAgICAg ICAgICAgICAgICAgIDEpKSkpCisKKyhlcnQtZGVmdGVzdCBlc2gtdmFyLXRlc3QvcXVvdGVk LWludGVycC12YXItbGVuZ3RoLWxpc3QgKCkKKyAgIkludGVycG9sYXRlIGxlbmd0aCBvZiBs aXN0IHZhcmlhYmxlIGluc2lkZSBkb3VibGUtcXVvdGVzIgorICAobGV0ICgoZXNoZWxsLXRl c3QtdmFsdWUgJygoMSAyKSAoMykgKDUgKDYgNyA4IDkpKSkpKQorICAgIChzaG91bGQgKGVx IChlc2hlbGwtdGVzdC1jb21tYW5kLXJlc3VsdCAiZWNobyBcIiQjZXNoZWxsLXRlc3QtdmFs dWVcIiIpIDMpKQorICAgIChzaG91bGQgKGVxIChlc2hlbGwtdGVzdC1jb21tYW5kLXJlc3Vs dCAiZWNobyBcIiQjZXNoZWxsLXRlc3QtdmFsdWVbMV1cIiIpCisgICAgICAgICAgICAgICAg MSkpCisgICAgKHNob3VsZCAoZXEgKGVzaGVsbC10ZXN0LWNvbW1hbmQtcmVzdWx0CisgICAg ICAgICAgICAgICAgICJlY2hvIFwiJCNlc2hlbGwtdGVzdC12YWx1ZVsyXVsxXVwiIikKKyAg ICAgICAgICAgICAgICA0KSkpKQorCisoZXJ0LWRlZnRlc3QgZXNoLXZhci10ZXN0L3F1b3Rl ZC1pbnRlcnAtdmFyLWxlbmd0aC1zdHJpbmcgKCkKKyAgIkludGVycG9sYXRlIGxlbmd0aCBv ZiBzdHJpbmcgdmFyaWFibGUgaW5zaWRlIGRvdWJsZS1xdW90ZXMiCisgIChsZXQgKChlc2hl bGwtdGVzdC12YWx1ZSAiZm9vYmFyIikpCisgICAgKHNob3VsZCAoZXEgKGVzaGVsbC10ZXN0 LWNvbW1hbmQtcmVzdWx0ICJlY2hvIFwiJCNlc2hlbGwtdGVzdC12YWx1ZVwiIikKKyAgICAg ICAgICAgICAgICA2KSkpKQorCisoZXJ0LWRlZnRlc3QgZXNoLXZhci10ZXN0L3F1b3RlZC1p bnRlcnAtdmFyLWxlbmd0aC1hbGlzdCAoKQorICAiSW50ZXJwb2xhdGUgbGVuZ3RoIG9mIGFs aXN0IHZhcmlhYmxlIGluc2lkZSBkb3VibGUtcXVvdGVzIgorICAobGV0ICgoZXNoZWxsLXRl c3QtdmFsdWUgJygoImZvbyIgLiAoMSAyIDMpKSkpKQorICAgIChzaG91bGQgKGVxIChlc2hl bGwtdGVzdC1jb21tYW5kLXJlc3VsdCAiZWNobyBcIiQjZXNoZWxsLXRlc3QtdmFsdWVcIiIp IDEpKQorICAgIChzaG91bGQgKGVxIChlc2hlbGwtdGVzdC1jb21tYW5kLXJlc3VsdCAiZWNo byBcIiQjZXNoZWxsLXRlc3QtdmFsdWVbZm9vXVwiIikKKyAgICAgICAgICAgICAgICAzKSkp KQorCiAoZXJ0LWRlZnRlc3QgZXNoLXZhci10ZXN0L3F1b3RlZC1pbnRlcnAtbGlzcCAoKQog ICAiSW50ZXJwb2xhdGUgTGlzcCBmb3JtIGV2YWx1YXRpb24gaW5zaWRlIGRvdWJsZS1xdW90 ZXMiCiAgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtdGVzdC1jb21tYW5kLXJlc3VsdAotLSAK Mi4yNS4xCgo= --------------84BAF41E9AB7415EAB9F2A21 Content-Type: text/plain; charset=UTF-8; name="0005-Allow-splitting-strings-in-Eshell-expansions-with-pl.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename*0="0005-Allow-splitting-strings-in-Eshell-expansions-with-pl.pa"; filename*1="tch" RnJvbSAyZDczY2E2N2I4NDRkZjZlMWVkMDMxOWY1ZDQ1NDY0NmQ2ODVjYWFhIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKaW0gUG9ydGVyIDxqcG9ydGVyYnVnc0BnbWFpbC5j b20+CkRhdGU6IFR1ZSwgMSBNYXIgMjAyMiAxODo1Mzo0MiAtMDgwMApTdWJqZWN0OiBbUEFU Q0ggNS81XSBBbGxvdyBzcGxpdHRpbmcgc3RyaW5ncyBpbiBFc2hlbGwgZXhwYW5zaW9ucyB3 aXRoICJwbGFpbiIKIHN0cmluZ3MKClNpbmNlICckdmFyW2hlbGxvIDBdJyBkb2Vzbid0IG1h a2Ugc2Vuc2Ugd2hlbiAndmFyJyBpcyBhIHN0cmluZywgdGhlCnByZXZpb3VzIHJlc3RyaWN0 aW9uIHdhcyB1bm5lY2Vzc2FyeS4KCiogbGlzcC9lc2hlbGwvZXNoLXZhci5lbCAoQ29tbWVu dGFyeSk6IFVwZGF0ZSBkb2N1bWVudGF0aW9uLgooZXNoZWxsLWFwcGx5LWluZGljZXMpOiBB bGxvdyAicGxhaW4iIHN0cmluZ3MgdG8gc3BsaXQgc3RyaW5ncy4KCiogdGVzdC9saXNwL2Vz aGVsbC9lc2gtdmFyLXRlc3QuZWwKKGVzaC12YXItdGVzdC9pbnRlcnAtdmFyLXN0cmluZy1z cGxpdC1pbmRpY2VzKQooZXNoLXZhci10ZXN0L3F1b3RlZC1pbnRlcnAtdmFyLXN0cmluZy1z cGxpdC1pbmRpY2VzKTogVXBkYXRlIHRlc3RzLgoKKiBkb2MvbWlzYy9lc2hlbGwudGV4aSAo RG9sbGFycyBleHBhbnNpb24pOiBVcGRhdGUgZG9jdW1lbnRhdGlvbi4KLS0tCiBkb2MvbWlz Yy9lc2hlbGwudGV4aSAgICAgICAgICAgICAgfCAgNiArKystLS0KIGxpc3AvZXNoZWxsL2Vz aC12YXIuZWwgICAgICAgICAgICB8IDE3ICsrKysrKystLS0tLS0tLS0tCiB0ZXN0L2xpc3Av ZXNoZWxsL2VzaC12YXItdGVzdHMuZWwgfCAxMiArKysrKysrKysrKysKIDMgZmlsZXMgY2hh bmdlZCwgMjIgaW5zZXJ0aW9ucygrKSwgMTMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv ZG9jL21pc2MvZXNoZWxsLnRleGkgYi9kb2MvbWlzYy9lc2hlbGwudGV4aQppbmRleCAzMzAx YTg1NGViLi41NTgxZTVjZDllIDEwMDY0NAotLS0gYS9kb2MvbWlzYy9lc2hlbGwudGV4aQor KysgYi9kb2MvbWlzYy9lc2hlbGwudGV4aQpAQCAtMTA1NSw5ICsxMDU1LDkgQEAgRG9sbGFy cyBFeHBhbnNpb24KIAogQGl0ZW0gJEB2YXJ7ZXhwcn1bQHZhcntyZWdleHB9IEB2YXJ7aS4u Ln1dCiBBcyBhYm92ZSAod2hlbiBAdmFye2V4cHJ9IGV4cGFuZHMgdG8gYSBzdHJpbmcpLCBi dXQgdXNlIEB2YXJ7cmVnZXhwfQotdG8gc3BsaXQgdGhlIHN0cmluZy4gIEB2YXJ7cmVnZXhw fSBjYW4gYmUgYW55IGZvcm0gb3RoZXIgdGhhbiBhIG51bWJlcgotb3IgYSBwbGFpbiB2YXJp YWJsZSBuYW1lLiAgRm9yIGV4YW1wbGUsIEBzYW1weyRAdmFye3Zhcn1bOiAwXX0gd2lsbAot cmV0dXJuIHRoZSBmaXJzdCBlbGVtZW50IG9mIGEgY29sb24tZGVsaW1pdGVkIHN0cmluZy4K K3RvIHNwbGl0IHRoZSBzdHJpbmcuICBAdmFye3JlZ2V4cH0gY2FuIGJlIGFueSBmb3JtIG90 aGVyIHRoYW4gYQorbnVtYmVyLiAgRm9yIGV4YW1wbGUsIEBzYW1weyRAdmFye3Zhcn1bOiAw XX0gd2lsbCByZXR1cm4gdGhlIGZpcnN0CitlbGVtZW50IG9mIGEgY29sb24tZGVsaW1pdGVk IHN0cmluZy4KIAogQGl0ZW0gJCNAdmFye2V4cHJ9CiBFeHBhbmRzIHRvIHRoZSBsZW5ndGgg b2YgdGhlIHJlc3VsdCBvZiBAdmFye2V4cHJ9LCBhbiBleHByZXNzaW9uIGluCmRpZmYgLS1n aXQgYS9saXNwL2VzaGVsbC9lc2gtdmFyLmVsIGIvbGlzcC9lc2hlbGwvZXNoLXZhci5lbApp bmRleCA2ZjA4YTNmYmM0Li5hZjg5ZTM1ZjU1IDEwMDY0NAotLS0gYS9saXNwL2VzaGVsbC9l c2gtdmFyLmVsCisrKyBiL2xpc3AvZXNoZWxsL2VzaC12YXIuZWwKQEAgLTc0LDkgKzc0LDgg QEAKIDs7ICAgJEVYUFJbIlxcXFwiIDEwXQogOzsKIDs7IFNlcGFyYXRlIG9uIGJhY2tzbGFz aCBjaGFyYWN0ZXJzLiAgQWN0dWFsbHksIHRoZSBmaXJzdCBhcmd1bWVudCAtLQotOzsgaWYg aXQgZG9lc24ndCBoYXZlIHRoZSBmb3JtIG9mIGEgbnVtYmVyLCBvciBhIHBsYWluIHZhcmlh YmxlIG5hbWUKLTs7IC0tIGNhbiBiZSBhbnkgcmVndWxhciBleHByZXNzaW9uLiAgU28gdG8g c3BsaXQgb24gbnVtYmVycywgdXNlCi07OyAnJEVYUFJbIlswLTldKyIgMTAgMjBdJy4KKzs7 IGlmIGl0IGRvZXNuJ3QgaGF2ZSB0aGUgZm9ybSBvZiBhIG51bWJlciAtLSBjYW4gYmUgYW55 IHJlZ3VsYXIKKzs7IGV4cHJlc3Npb24uICBTbyB0byBzcGxpdCBvbiBudW1iZXJzLCB1c2Ug JyRFWFBSWyJbMC05XSsiIDEwIDIwXScuCiA7OwogOzsgICAkRVhQUltoZWxsb10KIDs7CkBA IC01NjYsMTMgKzU2NSwxMSBAQCBlc2hlbGwtYXBwbHktaW5kaWNlcwogICAod2hpbGUgaW5k aWNlcwogICAgIChsZXQgKChyZWZzIChjYXIgaW5kaWNlcykpKQogICAgICAgKHdoZW4gKHN0 cmluZ3AgdmFsdWUpCi0JKGxldCAoc2VwYXJhdG9yKQotCSAgKGlmIChub3QgKG9yIChub3Qg KHN0cmluZ3AgKGNhYXIgaW5kaWNlcykpKQotCQkgICAgICAgKHN0cmluZy1tYXRjaAotCQkJ KGNvbmNhdCAiXiIgZXNoZWxsLXZhcmlhYmxlLW5hbWUtcmVnZXhwICIkIikKLQkJCShjYWFy IGluZGljZXMpKSkpCi0JICAgICAgKHNldHEgc2VwYXJhdG9yIChjYWFyIGluZGljZXMpCi0J CSAgICByZWZzIChjZHIgcmVmcykpKQorCShsZXQgKHNlcGFyYXRvciAoaW5kZXggKGNhYXIg aW5kaWNlcykpKQorICAgICAgICAgICh3aGVuIChhbmQgKHN0cmluZ3AgaW5kZXgpCisgICAg ICAgICAgICAgICAgICAgICAobm90IChnZXQtdGV4dC1wcm9wZXJ0eSAwICdudW1iZXIgaW5k ZXgpKSkKKyAgICAgICAgICAgIChzZXRxIHNlcGFyYXRvciBpbmRleAorICAgICAgICAgICAg ICAgICAgcmVmcyAoY2RyIHJlZnMpKSkKIAkgIChzZXRxIHZhbHVlCiAJCShtYXBjYXIgIydl c2hlbGwtY29udmVydAogCQkJKHNwbGl0LXN0cmluZyB2YWx1ZSBzZXBhcmF0b3IpKSkpKQpk aWZmIC0tZ2l0IGEvdGVzdC9saXNwL2VzaGVsbC9lc2gtdmFyLXRlc3RzLmVsIGIvdGVzdC9s aXNwL2VzaGVsbC9lc2gtdmFyLXRlc3RzLmVsCmluZGV4IGU2NzkxNzQ5MzkuLmQwOWRkNjE0 ZGUgMTAwNjQ0Ci0tLSBhL3Rlc3QvbGlzcC9lc2hlbGwvZXNoLXZhci10ZXN0cy5lbAorKysg Yi90ZXN0L2xpc3AvZXNoZWxsL2VzaC12YXItdGVzdHMuZWwKQEAgLTg0LDYgKzg0LDExIEBA IGVzaC12YXItdGVzdC9pbnRlcnAtdmFyLXN0cmluZy1zcGxpdC1pbmRpY2VzCiAgICAgKHNo b3VsZCAoZXF1YWwgKGVzaGVsbC10ZXN0LWNvbW1hbmQtcmVzdWx0ICJlY2hvICRlc2hlbGwt dGVzdC12YWx1ZVs6IDBdIikKICAgICAgICAgICAgICAgICAgICAiemVybyIpKQogICAgIChz aG91bGQgKGVxdWFsIChlc2hlbGwtdGVzdC1jb21tYW5kLXJlc3VsdCAiZWNobyAkZXNoZWxs LXRlc3QtdmFsdWVbOiAwIDJdIikKKyAgICAgICAgICAgICAgICAgICAnKCJ6ZXJvIiAidHdv IikpKSkKKyAgKGxldCAoKGVzaGVsbC10ZXN0LXZhbHVlICJ6ZXJvWG9uZVh0d29YdGhyZWVY Zm91ciIpKQorICAgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtdGVzdC1jb21tYW5kLXJlc3Vs dCAiZWNobyAkZXNoZWxsLXRlc3QtdmFsdWVbWCAwXSIpCisgICAgICAgICAgICAgICAgICAg Inplcm8iKSkKKyAgICAoc2hvdWxkIChlcXVhbCAoZXNoZWxsLXRlc3QtY29tbWFuZC1yZXN1 bHQgImVjaG8gJGVzaGVsbC10ZXN0LXZhbHVlW1ggMCAyXSIpCiAgICAgICAgICAgICAgICAg ICAgJygiemVybyIgInR3byIpKSkpKQogCiAoZXJ0LWRlZnRlc3QgZXNoLXZhci10ZXN0L2lu dGVycC12YXItcmVnZXhwLXNwbGl0LWluZGljZXMgKCkKQEAgLTIxNiw2ICsyMjEsMTMgQEAg ZXNoLXZhci10ZXN0L3F1b3RlZC1pbnRlcnAtdmFyLXN0cmluZy1zcGxpdC1pbmRpY2VzCiAg ICAgICAgICAgICAgICAgICAgInplcm8iKSkKICAgICAoc2hvdWxkIChlcXVhbCAoZXNoZWxs LXRlc3QtY29tbWFuZC1yZXN1bHQKICAgICAgICAgICAgICAgICAgICAgImVjaG8gXCIkZXNo ZWxsLXRlc3QtdmFsdWVbOiAwIDJdXCIiKQorICAgICAgICAgICAgICAgICAgICcoInplcm8i ICJ0d28iKSkpKQorICAobGV0ICgoZXNoZWxsLXRlc3QtdmFsdWUgInplcm9Yb25lWHR3b1h0 aHJlZVhmb3VyIikpCisgICAgKHNob3VsZCAoZXF1YWwgKGVzaGVsbC10ZXN0LWNvbW1hbmQt cmVzdWx0CisgICAgICAgICAgICAgICAgICAgICJlY2hvIFwiJGVzaGVsbC10ZXN0LXZhbHVl W1ggMF1cIiIpCisgICAgICAgICAgICAgICAgICAgInplcm8iKSkKKyAgICAoc2hvdWxkIChl cXVhbCAoZXNoZWxsLXRlc3QtY29tbWFuZC1yZXN1bHQKKyAgICAgICAgICAgICAgICAgICAg ImVjaG8gXCIkZXNoZWxsLXRlc3QtdmFsdWVbWCAwIDJdXCIiKQogICAgICAgICAgICAgICAg ICAgICcoInplcm8iICJ0d28iKSkpKSkKIAogKGVydC1kZWZ0ZXN0IGVzaC12YXItdGVzdC9x dW90ZWQtaW50ZXJwLXZhci1yZWdleHAtc3BsaXQtaW5kaWNlcyAoKQotLSAKMi4yNS4xCgo= --------------84BAF41E9AB7415EAB9F2A21--