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#68074: eshell sudo/doas does not work for aliases Date: Wed, 24 Jan 2024 18:43:43 -0800 Message-ID: References: <31356544.8861481.1703711546895.ref@mail.yahoo.com> <31356544.8861481.1703711546895@mail.yahoo.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------CkleoG090UgZ52ZK4H96y0fn" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="9529"; mail-complaints-to="usenet@ciao.gmane.io" Cc: 68074@debbugs.gnu.org To: Stefan Kangas , Alfonso Sanchez-Beato Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Thu Jan 25 03:44:28 2024 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 1rSpj9-0002Im-HL for geb-bug-gnu-emacs@m.gmane-mx.org; Thu, 25 Jan 2024 03:44:27 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rSpii-0006VJ-Jq; Wed, 24 Jan 2024 21:44:00 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rSpif-0006TZ-HY for bug-gnu-emacs@gnu.org; Wed, 24 Jan 2024 21:43:57 -0500 Original-Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1rSpif-00086T-3q for bug-gnu-emacs@gnu.org; Wed, 24 Jan 2024 21:43:57 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1rSpik-0007Gl-96 for bug-gnu-emacs@gnu.org; Wed, 24 Jan 2024 21:44:02 -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, 25 Jan 2024 02:44:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 68074 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch Original-Received: via spool by 68074-submit@debbugs.gnu.org id=B68074.170615063827924 (code B ref 68074); Thu, 25 Jan 2024 02:44:02 +0000 Original-Received: (at 68074) by debbugs.gnu.org; 25 Jan 2024 02:43:58 +0000 Original-Received: from localhost ([127.0.0.1]:46956 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rSpif-0007GJ-Ny for submit@debbugs.gnu.org; Wed, 24 Jan 2024 21:43:58 -0500 Original-Received: from mail-pg1-x52f.google.com ([2607:f8b0:4864:20::52f]:60897) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rSpie-0007G3-0D for 68074@debbugs.gnu.org; Wed, 24 Jan 2024 21:43:56 -0500 Original-Received: by mail-pg1-x52f.google.com with SMTP id 41be03b00d2f7-5cfd95130c6so1748706a12.1 for <68074@debbugs.gnu.org>; Wed, 24 Jan 2024 18:43:50 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706150624; x=1706755424; darn=debbugs.gnu.org; h=in-reply-to:content-language:references:cc:to:from:subject :mime-version:date:message-id:from:to:cc:subject:date:message-id :reply-to; bh=+sXzN0GduIUAfiAnsTXkDGKAQOe3BmnAqyREJVhb/z4=; b=WdLf9znuQu8XFJxkNCCoFHTJ5z1hWhn05dhBKEgAffW1dsKUbFSG12b36mZrZLOajK QwFt/+I/KilrmsXOrH1IBqn52KQvp8Z1ULHsopwW3pXV/808McqXoiVBE/pI3gkHycDu s95iaUGOn5UmXBK8y1HG8utB+LoYbBQ8ikcAQOwCcZ8jFjoCweGP/Wjbp903N1n1Muz8 QNUAAyWnyBArIzVeg0NdB9gb46mQ3ddwyGVOuiwGNQD3QWJui8BSHNLsF1k8IzKy66dY g0YMaPzPE67zVPViaFrGxH/o310fZ7lFzbjL4lJJmdi30oLjL4DHHa21JGhFYqQZsqyH Nr8A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706150624; x=1706755424; h=in-reply-to:content-language:references:cc:to:from:subject :mime-version:date:message-id:x-gm-message-state:from:to:cc:subject :date:message-id:reply-to; bh=+sXzN0GduIUAfiAnsTXkDGKAQOe3BmnAqyREJVhb/z4=; b=lbY6HGnUgecRNa4mAYgCUXPNCnmMdwMtsEgaRBDSsdVja7I8O39+20XPCaqA8b95/R dRdt+p4eTBjfGS+DZohuicLxsq4OSDo5cdJddJJtnxr/ht6eK7CBHvJelId9p+Q/6vUA TR9Yx43Y5Spdv2E99S78L3QeP/X/lmSzy2CZXSLgGy0KKJeuySiU6zVrkyEyYdp/FzQr R3XVSEIzNaN8Bxt7DpRDj9d3SsVGZFZx45SEu0HbKN/LRhIDGXUp2tVXJkn0zRE6x8Q3 +pShd20uJ9hWoC3g4TUjSsFOVg3dfGyqh83Iwmz2jt1bpyh/0d1PzUvrmgli2MBW49uo nR3A== X-Gm-Message-State: AOJu0YyiWupEgLgJS+v1OvhwC6qZ3PbtwiCVRZxM9v7UO5z6lei8FVii TY4ahgxMF3v9EdbwGvEnH//fKHpqjnnshfK8lX4x8Au8XcVISym+ X-Google-Smtp-Source: AGHT+IEko0nyDVDygYjCdL6XhK7M2NA2Ur332kaBpNZMX/7C5vqlEauBGOpNFDwwPJXniwt/M009NQ== X-Received: by 2002:a17:90b:a52:b0:290:c17:57b1 with SMTP id gw18-20020a17090b0a5200b002900c1757b1mr200468pjb.76.1706150624254; Wed, 24 Jan 2024 18:43:44 -0800 (PST) Original-Received: from [192.168.1.2] (076-168-148-233.res.spectrum.com. [76.168.148.233]) by smtp.googlemail.com with ESMTPSA id sx8-20020a17090b2cc800b0028ac1112124sm366972pjb.30.2024.01.24.18.43.43 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 24 Jan 2024 18:43:43 -0800 (PST) Content-Language: en-US In-Reply-To: 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-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:278828 Archived-At: This is a multi-part message in MIME format. --------------CkleoG090UgZ52ZK4H96y0fn Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 1/11/2024 1:15 PM, Jim Porter wrote: > I've been meaning to look at this in detail, but haven't had time. My > gut feeling though is that we shouldn't have a special case in this code > for when the alias starts with "cd". I'll have to do some testing with > aliases and sudo in order to have a more-helpful answer though. > > At a guess, I think a better place to add code for this is likely in > em-tramp.el. After letting this percolate in my brain for a few weeks, the answer revealed itself to me: the functions in "em-tramp.el" shouldn't throw 'eshell-external', they should throw 'eshell-replace-command'. That allows for a two-step command replacement in this case. First, 'eshell/sudo' (or 'eshell/doas') will do its replacement. Then, Eshell will evaluate that and call the inner command, which will do another replacement to expand the alias. Alfonso, does the attached patch work for you? If so, I'll merge it to master. --------------CkleoG090UgZ52ZK4H96y0fn Content-Type: text/plain; charset=UTF-8; name="0001-Fix-command-replacement-with-the-Eshell-builtin-vers.patch" Content-Disposition: attachment; filename*0="0001-Fix-command-replacement-with-the-Eshell-builtin-vers.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSA0NTBlMDU3YTNiMjMwNWQxYTcwOWZkNDhjYTRkZWZjYTBiYjg1YmJjIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKaW0gUG9ydGVyIDxqcG9ydGVyYnVnc0BnbWFpbC5j b20+CkRhdGU6IFdlZCwgMjQgSmFuIDIwMjQgMTg6MzI6MDAgLTA4MDAKU3ViamVjdDogW1BB VENIXSBGaXggY29tbWFuZCByZXBsYWNlbWVudCB3aXRoIHRoZSBFc2hlbGwgYnVpbHRpbiB2 ZXJzaW9ucyBvZgogInN1ZG8iIGFuZCAiZG9hcyIKClRoaXMgaXMgcGFydGljdWxhcmx5IGlt cG9ydGFudCB3aGVuIHRoZSBpbm5lciBjb21tYW5kIHRvIGV4ZWN1dGUgaXMgYW4KYWxpYXMu ICBBbGlhc2VzIHRocm93ICdlc2hlbGwtcmVwbGFjZS1jb21tYW5kJyB0b28sIHNvIHdlIHdh bnQgdG8gZG8KdGhpcyBpbiB0d28gcGhhc2VzOiBmaXJzdCwgcmVwbGFjZSB0aGUgInN1ZG8i LyJkb2FzIiB3aXRoIGEKbGV0LWJpbmRpbmcgb2YgJ2RlZmF1bHQtZGlyZWN0b3J5JywgYW5k IHRoZW4gbGF0ZXIsIGxldCB0aGUgYWxpYXMgY29kZQpkbyBpdHMgb3duIHJlcGxhY2VtZW50 IChidWcjNjgwNzQpLgoKKiBsaXNwL2VzaGVsbC9lbS10cmFtcC5lbCAoZXNoZWxsL3N1ZG8s IGVzaGVsbC9kb2FzKTogVXNlCidlc2hlbGwtcmVwbGFjZS1jb21tYW5kJyB0byB3cmFwIHRo ZSBpbm5lciBjb21tYW5kLgoqIHRlc3QvbGlzcC9lc2hlbGwvZW0tdHJhbXAtdGVzdHMuZWwg KG1vY2stZXNoZWxsLW5hbWVkLWNvbW1hbmQpOgpSZW1vdmUuCihlbS10cmFtcC10ZXN0L3N1 ZG8tYmFzaWMsIGVtLXRyYW1wLXRlc3Qvc3Vkby11c2VyKQooZW0tdHJhbXAtdGVzdC9kb2Fz LWJhc2ljLCBlbS10cmFtcC10ZXN0L2RvYXMtdXNlcik6IENhdGNoCidlc2hlbGwtcmVwbGFj ZS1jb21tYW5kJy4KLS0tCiBsaXNwL2VzaGVsbC9lbS10cmFtcC5lbCAgICAgICAgICAgIHwg MjIgKysrKy0tLS0KIHRlc3QvbGlzcC9lc2hlbGwvZW0tdHJhbXAtdGVzdHMuZWwgfCA4OSAr KysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0KIDIgZmlsZXMgY2hhbmdlZCwgNTAgaW5z ZXJ0aW9ucygrKSwgNjEgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvbGlzcC9lc2hlbGwv ZW0tdHJhbXAuZWwgYi9saXNwL2VzaGVsbC9lbS10cmFtcC5lbAppbmRleCA5MGY5YzZjZjc4 ZC4uYTU4ZmE2ZjA3ZDkgMTAwNjQ0Ci0tLSBhL2xpc3AvZXNoZWxsL2VtLXRyYW1wLmVsCisr KyBiL2xpc3AvZXNoZWxsL2VtLXRyYW1wLmVsCkBAIC0xMjEsMTIgKzEyMSwxMSBAQCBlc2hl bGwvc3VkbwogICAgICA6dXNhZ2UgIlsoLXUgfCAtLXVzZXIpIFVTRVJdICgtcyB8IC0tc2hl bGwpIHwgQ09NTUFORAogRXhlY3V0ZSBhIENPTU1BTkQgYXMgdGhlIHN1cGVydXNlciBvciBh bm90aGVyIFVTRVIuIikKICAgIChsZXQgKChkaXIgKGVzaGVsbC0tbWV0aG9kLXdyYXAtZGly ZWN0b3J5IGRlZmF1bHQtZGlyZWN0b3J5ICJzdWRvIiB1c2VyKSkpCi0gICAgIChpZiBzaGVs bAotICAgICAgICAgKHRocm93ICdlc2hlbGwtcmVwbGFjZS1jb21tYW5kCi0gICAgICAgICAg ICAgICAgKGVzaGVsbC1wYXJzZS1jb21tYW5kICJjZCIgKGxpc3QgZGlyKSkpCi0gICAgICAg KHRocm93ICdlc2hlbGwtZXh0ZXJuYWwKLSAgICAgICAgICAgICAgKGxldCAoKGRlZmF1bHQt ZGlyZWN0b3J5IGRpcikpCi0gICAgICAgICAgICAgICAgKGVzaGVsbC1uYW1lZC1jb21tYW5k IChjYXIgYXJncykgKGNkciBhcmdzKSkpKSkpKSkKKyAgICAgKHRocm93ICdlc2hlbGwtcmVw bGFjZS1jb21tYW5kCisgICAgICAgICAgICAoaWYgc2hlbGwKKyAgICAgICAgICAgICAgICAo ZXNoZWxsLXBhcnNlLWNvbW1hbmQgImNkIiAobGlzdCBkaXIpKQorICAgICAgICAgICAgICBg KGxldCAoKGRlZmF1bHQtZGlyZWN0b3J5ICxkaXIpKQorICAgICAgICAgICAgICAgICAoZXNo ZWxsLW5hbWVkLWNvbW1hbmQgLChjYXIgYXJncykgLChjZHIgYXJncykpKSkpKSkpCiAKIChw dXQgJ2VzaGVsbC9zdWRvICdlc2hlbGwtbm8tbnVtZXJpYy1jb252ZXJzaW9ucyB0KQogCkBA IC0xNDQsMTIgKzE0MywxMSBAQCBlc2hlbGwvZG9hcwogICAgICA6dXNhZ2UgIlsoLXUgfCAt LXVzZXIpIFVTRVJdICgtcyB8IC0tc2hlbGwpIHwgQ09NTUFORAogRXhlY3V0ZSBhIENPTU1B TkQgYXMgdGhlIHN1cGVydXNlciBvciBhbm90aGVyIFVTRVIuIikKICAgIChsZXQgKChkaXIg KGVzaGVsbC0tbWV0aG9kLXdyYXAtZGlyZWN0b3J5IGRlZmF1bHQtZGlyZWN0b3J5ICJkb2Fz IiB1c2VyKSkpCi0gICAgIChpZiBzaGVsbAotICAgICAgICAgKHRocm93ICdlc2hlbGwtcmVw bGFjZS1jb21tYW5kCi0gICAgICAgICAgICAgICAgKGVzaGVsbC1wYXJzZS1jb21tYW5kICJj ZCIgKGxpc3QgZGlyKSkpCi0gICAgICAgKHRocm93ICdlc2hlbGwtZXh0ZXJuYWwKLSAgICAg ICAgICAgICAgKGxldCAoKGRlZmF1bHQtZGlyZWN0b3J5IGRpcikpCi0gICAgICAgICAgICAg ICAgKGVzaGVsbC1uYW1lZC1jb21tYW5kIChjYXIgYXJncykgKGNkciBhcmdzKSkpKSkpKSkK KyAgICAgKHRocm93ICdlc2hlbGwtcmVwbGFjZS1jb21tYW5kCisgICAgICAgICAgICAoaWYg c2hlbGwKKyAgICAgICAgICAgICAgICAoZXNoZWxsLXBhcnNlLWNvbW1hbmQgImNkIiAobGlz dCBkaXIpKQorICAgICAgICAgICAgICBgKGxldCAoKGRlZmF1bHQtZGlyZWN0b3J5ICxkaXIp KQorICAgICAgICAgICAgICAgICAoZXNoZWxsLW5hbWVkLWNvbW1hbmQgLChjYXIgYXJncykg LChjZHIgYXJncykpKSkpKSkpCiAKIChwdXQgJ2VzaGVsbC9kb2FzICdlc2hlbGwtbm8tbnVt ZXJpYy1jb252ZXJzaW9ucyB0KQogCmRpZmYgLS1naXQgYS90ZXN0L2xpc3AvZXNoZWxsL2Vt LXRyYW1wLXRlc3RzLmVsIGIvdGVzdC9saXNwL2VzaGVsbC9lbS10cmFtcC10ZXN0cy5lbApp bmRleCBkMzNmNmEyYjQ2YS4uZGVhZTY1Nzk0MDEgMTAwNjQ0Ci0tLSBhL3Rlc3QvbGlzcC9l c2hlbGwvZW0tdHJhbXAtdGVzdHMuZWwKKysrIGIvdGVzdC9saXNwL2VzaGVsbC9lbS10cmFt cC10ZXN0cy5lbApAQCAtNTksMzUgKzU5LDMxIEBAIGVtLXRyYW1wLXRlc3Qvc3UtbG9naW4K ICAgICAgICAgImNkIgogICAgICAgICAobGlzdCAsKGZvcm1hdCAiL3N1OnJvb3RAJXM6fi8i IHRyYW1wLWRlZmF1bHQtaG9zdCkpKSkpKQogCi0oZGVmdW4gbW9jay1lc2hlbGwtbmFtZWQt Y29tbWFuZCAoJnJlc3QgYXJncykKLSAgIkR1bW15IGZ1bmN0aW9uIHRvIHRlc3QgRXNoZWxs IGBzdWRvJyBjb21tYW5kIHJld3JpdGluZy4iCi0gIChsaXN0IGRlZmF1bHQtZGlyZWN0b3J5 IGFyZ3MpKQotCiAoZXJ0LWRlZnRlc3QgZW0tdHJhbXAtdGVzdC9zdWRvLWJhc2ljICgpCiAg ICJUZXN0IEVzaGVsbCBgc3VkbycgY29tbWFuZCB3aXRoIGRlZmF1bHQgdXNlci4iCi0gIChj bC1sZXRmICgoKHN5bWJvbC1mdW5jdGlvbiAnZXNoZWxsLW5hbWVkLWNvbW1hbmQpCi0gICAg ICAgICAgICAgIydtb2NrLWVzaGVsbC1uYW1lZC1jb21tYW5kKSkKLSAgICAoc2hvdWxkIChl cXVhbAotICAgICAgICAgICAgIChjYXRjaCAnZXNoZWxsLWV4dGVybmFsIChlc2hlbGwvc3Vk byAiZWNobyIgImhpIikpCi0gICAgICAgICAgICAgYCgsKGZvcm1hdCAiL3N1ZG86cm9vdEAl czolcyIgdHJhbXAtZGVmYXVsdC1ob3N0IGRlZmF1bHQtZGlyZWN0b3J5KQotICAgICAgICAg ICAgICAgKCJlY2hvIiAoImhpIikpKSkpCi0gICAgKHNob3VsZCAoZXF1YWwKLSAgICAgICAg ICAgICAoY2F0Y2ggJ2VzaGVsbC1leHRlcm5hbCAoZXNoZWxsL3N1ZG8gImVjaG8iICItdSIg ImhpIikpCi0gICAgICAgICAgICAgYCgsKGZvcm1hdCAiL3N1ZG86cm9vdEAlczolcyIgdHJh bXAtZGVmYXVsdC1ob3N0IGRlZmF1bHQtZGlyZWN0b3J5KQotICAgICAgICAgICAgICAgKCJl Y2hvIiAoIi11IiAiaGkiKSkpKSkpKQorICAobGV0ICgoc3Vkby1kaXJlY3RvcnkgKGZvcm1h dCAiL3N1ZG86cm9vdEAlczolcyIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg dHJhbXAtZGVmYXVsdC1ob3N0IGRlZmF1bHQtZGlyZWN0b3J5KSkpCisgICAgKHNob3VsZCAo ZXF1YWwgKGNhdGNoICdlc2hlbGwtcmVwbGFjZS1jb21tYW5kCisgICAgICAgICAgICAgICAg ICAgICAoZXNoZWxsL3N1ZG8gImVjaG8iICJoaSIpKQorICAgICAgICAgICAgICAgICAgIGAo bGV0ICgoZGVmYXVsdC1kaXJlY3RvcnkgLHN1ZG8tZGlyZWN0b3J5KSkKKyAgICAgICAgICAg ICAgICAgICAgICAoZXNoZWxsLW5hbWVkLWNvbW1hbmQgImVjaG8iICgiaGkiKSkpKSkKKyAg ICAoc2hvdWxkIChlcXVhbCAoY2F0Y2ggJ2VzaGVsbC1yZXBsYWNlLWNvbW1hbmQKKyAgICAg ICAgICAgICAgICAgICAgIChlc2hlbGwvc3VkbyAiZWNobyIgIi11IiAiaGkiKSkKKyAgICAg ICAgICAgICAgICAgICBgKGxldCAoKGRlZmF1bHQtZGlyZWN0b3J5ICxzdWRvLWRpcmVjdG9y eSkpCisgICAgICAgICAgICAgICAgICAgICAgKGVzaGVsbC1uYW1lZC1jb21tYW5kICJlY2hv IiAoIi11IiAiaGkiKSkpKSkpKQogCiAoZXJ0LWRlZnRlc3QgZW0tdHJhbXAtdGVzdC9zdWRv LXVzZXIgKCkKICAgIlRlc3QgRXNoZWxsIGBzdWRvJyBjb21tYW5kIHdpdGggc3BlY2lmaWVk IHVzZXIuIgotICAoY2wtbGV0ZiAoKChzeW1ib2wtZnVuY3Rpb24gJ2VzaGVsbC1uYW1lZC1j b21tYW5kKQotICAgICAgICAgICAgICMnbW9jay1lc2hlbGwtbmFtZWQtY29tbWFuZCkpCi0g ICAgKHNob3VsZCAoZXF1YWwKLSAgICAgICAgICAgICAoY2F0Y2ggJ2VzaGVsbC1leHRlcm5h bCAoZXNoZWxsL3N1ZG8gIi11IiAiVVNFUiIgImVjaG8iICJoaSIpKQotICAgICAgICAgICAg IGAoLChmb3JtYXQgIi9zdWRvOlVTRVJAJXM6JXMiIHRyYW1wLWRlZmF1bHQtaG9zdCBkZWZh dWx0LWRpcmVjdG9yeSkKLSAgICAgICAgICAgICAgICgiZWNobyIgKCJoaSIpKSkpKQotICAg IChzaG91bGQgKGVxdWFsCi0gICAgICAgICAgICAgKGNhdGNoICdlc2hlbGwtZXh0ZXJuYWwg KGVzaGVsbC9zdWRvICItdSIgIlVTRVIiICJlY2hvIiAiLXUiICJoaSIpKQotICAgICAgICAg ICAgIGAoLChmb3JtYXQgIi9zdWRvOlVTRVJAJXM6JXMiIHRyYW1wLWRlZmF1bHQtaG9zdCBk ZWZhdWx0LWRpcmVjdG9yeSkKLSAgICAgICAgICAgICAgICgiZWNobyIgKCItdSIgImhpIikp KSkpKSkKKyAgKGxldCAoKHN1ZG8tZGlyZWN0b3J5IChmb3JtYXQgIi9zdWRvOlVTRVJAJXM6 JXMiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW1wLWRlZmF1bHQtaG9z dCBkZWZhdWx0LWRpcmVjdG9yeSkpKQorICAgIChzaG91bGQgKGVxdWFsIChjYXRjaCAnZXNo ZWxsLXJlcGxhY2UtY29tbWFuZAorICAgICAgICAgICAgICAgICAgICAgKGVzaGVsbC9zdWRv ICItdSIgIlVTRVIiICJlY2hvIiAiaGkiKSkKKyAgICAgICAgICAgICAgICAgICBgKGxldCAo KGRlZmF1bHQtZGlyZWN0b3J5ICxzdWRvLWRpcmVjdG9yeSkpCisgICAgICAgICAgICAgICAg ICAgICAgKGVzaGVsbC1uYW1lZC1jb21tYW5kICJlY2hvIiAoImhpIikpKSkpCisgICAgKHNo b3VsZCAoZXF1YWwgKGNhdGNoICdlc2hlbGwtcmVwbGFjZS1jb21tYW5kCisgICAgICAgICAg ICAgICAgICAgICAoZXNoZWxsL3N1ZG8gIi11IiAiVVNFUiIgImVjaG8iICItdSIgImhpIikp CisgICAgICAgICAgICAgICAgICAgYChsZXQgKChkZWZhdWx0LWRpcmVjdG9yeSAsc3Vkby1k aXJlY3RvcnkpKQorICAgICAgICAgICAgICAgICAgICAgIChlc2hlbGwtbmFtZWQtY29tbWFu ZCAiZWNobyIgKCItdSIgImhpIikpKSkpKSkKIAogKGVydC1kZWZ0ZXN0IGVtLXRyYW1wLXRl c3Qvc3Vkby1zaGVsbCAoKQogICAiVGVzdCBFc2hlbGwgYHN1ZG8nIGNvbW1hbmQgd2l0aCAt cy8tLXNoZWxsIG9wdGlvbi4iCkBAIC0xMDksMzQgKzEwNSwyOSBAQCBlbS10cmFtcC10ZXN0 L3N1ZG8tdXNlci1zaGVsbAogCiAoZXJ0LWRlZnRlc3QgZW0tdHJhbXAtdGVzdC9kb2FzLWJh c2ljICgpCiAgICJUZXN0IEVzaGVsbCBgZG9hcycgY29tbWFuZCB3aXRoIGRlZmF1bHQgdXNl ci4iCi0gIChjbC1sZXRmICgoKHN5bWJvbC1mdW5jdGlvbiAnZXNoZWxsLW5hbWVkLWNvbW1h bmQpCi0gICAgICAgICAgICAgIydtb2NrLWVzaGVsbC1uYW1lZC1jb21tYW5kKSkKLSAgICAo c2hvdWxkIChlcXVhbAotICAgICAgICAgICAgIChjYXRjaCAnZXNoZWxsLWV4dGVybmFsIChl c2hlbGwvZG9hcyAiZWNobyIgImhpIikpCi0gICAgICAgICAgICAgYCgsKGZvcm1hdCAiL2Rv YXM6cm9vdEAlczolcyIKLSAgICAgICAgICAgICAgICAgICAgICAgIHRyYW1wLWRlZmF1bHQt aG9zdCBkZWZhdWx0LWRpcmVjdG9yeSkKLSAgICAgICAgICAgICAgICgiZWNobyIgKCJoaSIp KSkpKQotICAgIChzaG91bGQgKGVxdWFsCi0gICAgICAgICAgICAgKGNhdGNoICdlc2hlbGwt ZXh0ZXJuYWwgKGVzaGVsbC9kb2FzICJlY2hvIiAiLXUiICJoaSIpKQotICAgICAgICAgICAg IGAoLChmb3JtYXQgIi9kb2FzOnJvb3RAJXM6JXMiCi0gICAgICAgICAgICAgICAgICAgICAg ICB0cmFtcC1kZWZhdWx0LWhvc3QgZGVmYXVsdC1kaXJlY3RvcnkpCi0gICAgICAgICAgICAg ICAoImVjaG8iICgiLXUiICJoaSIpKSkpKSkpCisgIChsZXQgKChkb2FzLWRpcmVjdG9yeSAo Zm9ybWF0ICIvZG9hczpyb290QCVzOiVzIgorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB0cmFtcC1kZWZhdWx0LWhvc3QgZGVmYXVsdC1kaXJlY3RvcnkpKSkKKyAgICAoc2hv dWxkIChlcXVhbCAoY2F0Y2ggJ2VzaGVsbC1yZXBsYWNlLWNvbW1hbmQKKyAgICAgICAgICAg ICAgICAgICAgIChlc2hlbGwvZG9hcyAiZWNobyIgImhpIikpCisgICAgICAgICAgICAgICAg ICAgYChsZXQgKChkZWZhdWx0LWRpcmVjdG9yeSAsZG9hcy1kaXJlY3RvcnkpKQorICAgICAg ICAgICAgICAgICAgICAgIChlc2hlbGwtbmFtZWQtY29tbWFuZCAiZWNobyIgKCJoaSIpKSkp KQorICAgIChzaG91bGQgKGVxdWFsIChjYXRjaCAnZXNoZWxsLXJlcGxhY2UtY29tbWFuZAor ICAgICAgICAgICAgICAgICAgICAgKGVzaGVsbC9kb2FzICJlY2hvIiAiLXUiICJoaSIpKQor ICAgICAgICAgICAgICAgICAgIGAobGV0ICgoZGVmYXVsdC1kaXJlY3RvcnkgLGRvYXMtZGly ZWN0b3J5KSkKKyAgICAgICAgICAgICAgICAgICAgICAoZXNoZWxsLW5hbWVkLWNvbW1hbmQg ImVjaG8iICgiLXUiICJoaSIpKSkpKSkpCiAKIChlcnQtZGVmdGVzdCBlbS10cmFtcC10ZXN0 L2RvYXMtdXNlciAoKQogICAiVGVzdCBFc2hlbGwgYGRvYXMnIGNvbW1hbmQgd2l0aCBzcGVj aWZpZWQgdXNlci4iCi0gIChjbC1sZXRmICgoKHN5bWJvbC1mdW5jdGlvbiAnZXNoZWxsLW5h bWVkLWNvbW1hbmQpCi0gICAgICAgICAgICAgIydtb2NrLWVzaGVsbC1uYW1lZC1jb21tYW5k KSkKLSAgICAoc2hvdWxkIChlcXVhbAotICAgICAgICAgICAgIChjYXRjaCAnZXNoZWxsLWV4 dGVybmFsIChlc2hlbGwvZG9hcyAiLXUiICJVU0VSIiAiZWNobyIgImhpIikpCi0gICAgICAg ICAgICAgYCgsKGZvcm1hdCAiL2RvYXM6VVNFUkAlczolcyIKLSAgICAgICAgICAgICAgICAg ICAgICAgIHRyYW1wLWRlZmF1bHQtaG9zdCBkZWZhdWx0LWRpcmVjdG9yeSkKLSAgICAgICAg ICAgICAgICgiZWNobyIgKCJoaSIpKSkpKQotICAgIChzaG91bGQgKGVxdWFsCi0gICAgICAg ICAgICAgKGNhdGNoICdlc2hlbGwtZXh0ZXJuYWwKLSAgICAgICAgICAgICAgIChlc2hlbGwv ZG9hcyAiLXUiICJVU0VSIiAiZWNobyIgIi11IiAiaGkiKSkKLSAgICAgICAgICAgICBgKCwo Zm9ybWF0ICIvZG9hczpVU0VSQCVzOiVzIgotICAgICAgICAgICAgICAgICAgICAgICAgdHJh bXAtZGVmYXVsdC1ob3N0IGRlZmF1bHQtZGlyZWN0b3J5KQotICAgICAgICAgICAgICAgKCJl Y2hvIiAoIi11IiAiaGkiKSkpKSkpKQorICAobGV0ICgoZG9hcy1kaXJlY3RvcnkgKGZvcm1h dCAiL2RvYXM6VVNFUkAlczolcyIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg dHJhbXAtZGVmYXVsdC1ob3N0IGRlZmF1bHQtZGlyZWN0b3J5KSkpCisgICAgKHNob3VsZCAo ZXF1YWwgKGNhdGNoICdlc2hlbGwtcmVwbGFjZS1jb21tYW5kCisgICAgICAgICAgICAgICAg ICAgICAoZXNoZWxsL2RvYXMgIi11IiAiVVNFUiIgImVjaG8iICJoaSIpKQorICAgICAgICAg ICAgICAgICAgIGAobGV0ICgoZGVmYXVsdC1kaXJlY3RvcnkgLGRvYXMtZGlyZWN0b3J5KSkK KyAgICAgICAgICAgICAgICAgICAgICAoZXNoZWxsLW5hbWVkLWNvbW1hbmQgImVjaG8iICgi aGkiKSkpKSkKKyAgICAoc2hvdWxkIChlcXVhbCAoY2F0Y2ggJ2VzaGVsbC1yZXBsYWNlLWNv bW1hbmQKKyAgICAgICAgICAgICAgICAgICAgIChlc2hlbGwvZG9hcyAiLXUiICJVU0VSIiAi ZWNobyIgIi11IiAiaGkiKSkKKyAgICAgICAgICAgICAgICAgICBgKGxldCAoKGRlZmF1bHQt ZGlyZWN0b3J5ICxkb2FzLWRpcmVjdG9yeSkpCisgICAgICAgICAgICAgICAgICAgICAgKGVz aGVsbC1uYW1lZC1jb21tYW5kICJlY2hvIiAoIi11IiAiaGkiKSkpKSkpKQogCiAoZXJ0LWRl ZnRlc3QgZW0tdHJhbXAtdGVzdC9kb2FzLXNoZWxsICgpCiAgICJUZXN0IEVzaGVsbCBgZG9h cycgY29tbWFuZCB3aXRoIC1zLy0tc2hlbGwgb3B0aW9uLiIKLS0gCjIuMjUuMQoK --------------CkleoG090UgZ52ZK4H96y0fn--