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#52293: [External] : bug#52293: 29.0.50; [PATCH v3] Prevent further cases of duplicated separators in context menus Date: Sun, 12 Dec 2021 15:14:43 -0800 Message-ID: References: <86tufn5jn9.fsf@mail.linkov.net> <86pmqa14fc.fsf@mail.linkov.net> <15eebcb1-b67a-8363-bc23-cf113913856f@gmail.com> <86h7bkhlo7.fsf@mail.linkov.net> <37047ada-fa33-88dd-5237-769611fec61b@gmail.com> <83wnkfw8ud.fsf@gnu.org> <86ilvysyq3.fsf@mail.linkov.net> <834k7ix4ij.fsf@gnu.org> <86pmq6taeb.fsf@mail.linkov.net> <83czm6unfs.fsf@gnu.org> <414be477-34d4-c777-f623-3e0e59c0dd08@gmail.com> <83o85mpaqb.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------17A3EE286DE4FE8211D34A68" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="2858"; mail-complaints-to="usenet@ciao.gmane.io" Cc: "52293@debbugs.gnu.org" <52293@debbugs.gnu.org>, "juri@linkov.net" To: Drew Adams , Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Mon Dec 13 00:15:14 2021 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 1mwY3l-0000XX-HJ for geb-bug-gnu-emacs@m.gmane-mx.org; Mon, 13 Dec 2021 00:15:13 +0100 Original-Received: from localhost ([::1]:43056 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mwY3j-0006t8-GG for geb-bug-gnu-emacs@m.gmane-mx.org; Sun, 12 Dec 2021 18:15:11 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:44702) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mwY3a-0006sk-Fr for bug-gnu-emacs@gnu.org; Sun, 12 Dec 2021 18:15:02 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]:41873) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1mwY3a-0006rf-6M for bug-gnu-emacs@gnu.org; Sun, 12 Dec 2021 18:15:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1mwY3a-0006hU-2T for bug-gnu-emacs@gnu.org; Sun, 12 Dec 2021 18:15: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: Sun, 12 Dec 2021 23:15:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 52293 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch Original-Received: via spool by 52293-submit@debbugs.gnu.org id=B52293.163935089425726 (code B ref 52293); Sun, 12 Dec 2021 23:15:02 +0000 Original-Received: (at 52293) by debbugs.gnu.org; 12 Dec 2021 23:14:54 +0000 Original-Received: from localhost ([127.0.0.1]:53419 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mwY3R-0006gs-Hl for submit@debbugs.gnu.org; Sun, 12 Dec 2021 18:14:54 -0500 Original-Received: from mail-pj1-f46.google.com ([209.85.216.46]:51028) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mwY3P-0006gc-03 for 52293@debbugs.gnu.org; Sun, 12 Dec 2021 18:14:51 -0500 Original-Received: by mail-pj1-f46.google.com with SMTP id x7so10656866pjn.0 for <52293@debbugs.gnu.org>; Sun, 12 Dec 2021 15:14:50 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=subject:from:to:cc:references:message-id:date:mime-version :in-reply-to:content-language; bh=qGZWLE+xNcDY8aC4Wcn8R7xa0Qpf2lwjNfJ/YN4r2lY=; b=F0JBxhV861GBXSH6ktf004fX+4n+xkdgh8Y/gz1AxewkBvZYKn+k0QsNTXfDf539r7 C3+EmMAQDwfoEb6KOTjBgC7ZxCU5lS4B8LQgnyOKAgFygKeF40D9JqRKi1ibXddN+pwQ KJnl2EEk//ja40rrMxAjZycIrnWRpSFijXnzCpJASh04ZchPnNo9Ao1vad5i+JiTy9hM ZTsBDdBYGzZqQXIXAI4rGhWQgrgqyS8BJ3VgM3MCUWGS7Omj7NPJGCEUThg/HNoVZip+ NMjxbbvUcWSgXUbvkCcWTQRvWUjLr30eAsTDy9WAaTnwGL1CIfFnsfj39NZfbFpIgUKu UTwA== 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:cc:references:message-id:date :mime-version:in-reply-to:content-language; bh=qGZWLE+xNcDY8aC4Wcn8R7xa0Qpf2lwjNfJ/YN4r2lY=; b=egQAr+SHOnXnyu7defhWdcXGl2Cw39ne508CmpHGNP54he47hTOXNc8hW7iLK1szt5 yCQ6YNJtp68KResFjC6ichp5qBzKiIA5XQBH43VrPm4Dx/0RXzy+UfRxXM1FioZk4M9I kRwEnFxrtP8sPTCnRvo7gcHhmuP2jYHGo+wILXTmn2Quwk73rNoJqiw/kLVvSbpVnfRU 7TSd6zKcCWLkuZ/bXGTpOwNX43WN6SaAuDwc4/2uLyXlx7TgEjIyNhiZrvo0DAuNlyFA sV9jPjgDMj4j656eKr690oQd3asXmbaNY9czYGDs5P8UeofREh+Gzs5Kkc/F3pdAU6yl 6lOQ== X-Gm-Message-State: AOAM533rM7Hgh/RzXIP7btUQpczPZtVUjh2+XDc6ZpfSBVxguwlbid4H Yq8Nl1LM/PKl3CHiSmtvXRI= X-Google-Smtp-Source: ABdhPJwV3dFoPuQ/9G9bF+td+tpx6uOkPoAUpb7WB2L4bmr4z4I7bxJteAe1j46JWZ5Xl/Gxcs/k+A== X-Received: by 2002:a17:902:ce8c:b0:141:d218:954 with SMTP id f12-20020a170902ce8c00b00141d2180954mr90911362plg.1.1639350885271; Sun, 12 Dec 2021 15:14:45 -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 g5sm4895187pjt.15.2021.12.12.15.14.43 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 12 Dec 2021 15:14:44 -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:222277 Archived-At: This is a multi-part message in MIME format. --------------17A3EE286DE4FE8211D34A68 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit On 12/12/2021 2:12 PM, Jim Porter wrote: > It may be possible for context menu functions to be more careful about > the insertion of separators so that duplicates never crop up in the > first place. However, that would take a bit of experimentation, and I'm > not sure of all the pros and cons of a solution like that. Maybe Juri > has some thoughts on this though. Here's a *very* experimental patch that handles separators in a totally different way. Instead of removing duplicates, this *inserts* separators between different sections of the context menu. This works by giving menu items a `:section' property, and if that changes (and both the old and new section names are non-nil), the code inserts a separator between the two items. This patch only really works for elisp-mode using the default context menu functions, since I didn't want to spend too much time updating everything for a small experiment. It shouldn't be terribly hard to update all the other context menu functions if we decide to go with something like this though. This strategy seems less brittle from my experiments so far, since we no longer have to be so careful about getting the order of the keys exactly right in order to be able to detect the duplicated separators. It also makes it easier to insert duplicated separators if that's really what you want. --------------17A3EE286DE4FE8211D34A68 Content-Type: text/plain; charset=UTF-8; name="context-menu-sections.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="context-menu-sections.patch" ZGlmZiAtLWdpdCBhL2xpc3AvbW91c2UuZWwgYi9saXNwL21vdXNlLmVsCmluZGV4IDExZmRk M2Y2MzkuLmQzNDk5MTEwNGUgMTAwNjQ0Ci0tLSBhL2xpc3AvbW91c2UuZWwKKysrIGIvbGlz cC9tb3VzZS5lbApAQCAtMzI3LDMyICszMjcsMjkgQEAgY29udGV4dC1tZW51LW1hcAogICAg ICAgICAgICAgICAgICAgICAgICAgICAoc2V0cSBtZW51IChmdW5jYWxsIGZ1biBtZW51IGNs aWNrKSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgbmlsKSkpCiAKLSAgICA7OyBSZW1v dmUgZHVwbGljYXRlIHNlcGFyYXRvcnMgYXMgd2VsbCBhcyBvbmVzIGF0IHRoZSBiZWdpbm5p bmcgb3IKLSAgICA7OyBlbmQgb2YgdGhlIG1lbnUuCi0gICAgKGxldCAoKGwgbWVudSkgc2F3 LWZpcnN0LWl0ZW0pCisgICAgOzsgSW5zZXJ0IHNlcGFyYXRvcnMgYmV0d2VlbiBkaWZmZXJl bnQgc2VjdGlvbnMgb2YgdGhlIGNvbnRleHQgbWVudS4KKyAgICAobGV0ICgobCBtZW51KSBz ZWN0aW9uKQogICAgICAgKHdoaWxlIChhbmQgKGNvbnNwIGwpCiAgICAgICAgICAgICAgICAg ICAoY29uc3AgKGNkciBsKSkpCi0gICAgICAgIDs7IElmIHRoZSBuZXh0IGl0ZW0gaXMgYSBz ZXBhcmF0b3IsIHJlbW92ZSBpdCBpZiAxKSB3ZSBoYXZlbid0Ci0gICAgICAgIDs7IHNlZW4g YW55IG90aGVyIGl0ZW1zIHlldCwgb3IgMikgaXQncyBmb2xsb3dlZCBieSBlaXRoZXIKLSAg ICAgICAgOzsgYW5vdGhlciBzZXBhcmF0b3Igb3IgdGhlIGVuZCBvZiB0aGUgbGlzdC4KLSAg ICAgICAgKGlmIChhbmQgKGVxdWFsIChjZHItc2FmZSAoY2FkciBsKSkgbWVudS1iYXItc2Vw YXJhdG9yKQotICAgICAgICAgICAgICAgICAob3IgKG5vdCBzYXctZmlyc3QtaXRlbSkKLSAg ICAgICAgICAgICAgICAgICAgIChudWxsIChjYWRkciBsKSkKLSAgICAgICAgICAgICAgICAg ICAgIChlcXVhbCAoY2RyLXNhZmUgKGNhZGRyIGwpKSBtZW51LWJhci1zZXBhcmF0b3IpKSkK LSAgICAgICAgICAgIChzZXRjZHIgbCAoY2RkciBsKSkKLSAgICAgICAgICA7OyBUaGUgImZp cnN0IGl0ZW0iIGlzIGFueSBjb25zIGNlbGw7IHRoaXMgZXhjbHVkZXMgdGhlCi0gICAgICAg ICAgOzsgYGtleW1hcCcgc3ltYm9sIGFuZCB0aGUgbWVudSBuYW1lLgotICAgICAgICAgICh3 aGVuIChjb25zcCAoY2FkciBsKSkgKHNldHEgc2F3LWZpcnN0LWl0ZW0gdCkpCi0gICAgICAg ICAgKHNldHEgbCAoY2RyIGwpKSkpKQorICAgICAgICAod2hlbiAoY29uc3AgKGNhZHIgbCkp CisgICAgICAgICAgKHdoZW4tbGV0ICgobmV4dC1zZWN0aW9uIChwbGlzdC1nZXQgKG50aGNk ciA0IChjYWRyIGwpKSA6c2VjdGlvbikpKQorICAgICAgICAgICAgKHdoZW4gKGFuZCBzZWN0 aW9uIChub3QgKGVxIHNlY3Rpb24gbmV4dC1zZWN0aW9uKSkpCisgICAgICAgICAgICAgIDs7 IFRoZSBzZWN0aW9uIG5hbWUgaGFzIGNoYW5nZWQuIEluc2VydCBhIG5ldyBzZXBhcmF0b3Iu CisgICAgICAgICAgICAgIChzZXRjZHIgbCAoY29ucyBgKCwobWFrZS1zeW1ib2wKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY29uY2F0ICJzZXBhcmF0b3ItIiBuZXh0 LXNlY3Rpb24pKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiLS0iKQorICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNkciBsKSkpKQorICAgICAgICAgICAgKHNl dHEgc2VjdGlvbiBuZXh0LXNlY3Rpb24pKSkKKyAgICAgICAgKHNldHEgbCAoY2RyIGwpKSkp CiAKICAgICAod2hlbiAoZnVuY3Rpb25wIGNvbnRleHQtbWVudS1maWx0ZXItZnVuY3Rpb24p CiAgICAgICAoc2V0cSBtZW51IChmdW5jYWxsIGNvbnRleHQtbWVudS1maWx0ZXItZnVuY3Rp b24gbWVudSBjbGljaykpKQogICAgIG1lbnUpKQogCiAoZGVmdW4gY29udGV4dC1tZW51LW1p ZGRsZS1zZXBhcmF0b3IgKG1lbnUgX2NsaWNrKQotICAiQWRkIHNlcGFyYXRvciB0byB0aGUg bWlkZGxlIG9mIHRoZSBjb250ZXh0IG1lbnUuCisgICJBZGQgaW52aXNpYmxlIHNlcGFyYXRv ciB0byB0aGUgbWlkZGxlIG9mIHRoZSBjb250ZXh0IG1lbnUuCiBTb21lIGNvbnRleHQgZnVu Y3Rpb25zIGFkZCBtZW51IGl0ZW1zIGJlbG93IHRoZSBzZXBhcmF0b3IuIgotICAoZGVmaW5l LWtleS1hZnRlciBtZW51IFttaWRkbGUtc2VwYXJhdG9yXSBtZW51LWJhci1zZXBhcmF0b3Ip CisgIChkZWZpbmUta2V5LWFmdGVyIG1lbnUgW21pZGRsZS1zZXBhcmF0b3JdICcobWVudS1p dGVtICItLSIgbmlsIDp2aXNpYmxlIG5pbCkpCiAgIG1lbnUpCiAKIChkZWZ1biBjb250ZXh0 LW1lbnUtdG9vbGJhciAobWVudSBfY2xpY2spCkBAIC0zODAsMTMgKzM3NywxMiBAQCBjb250 ZXh0LW1lbnUtZ2xvYmFsCiAoZGVmdW4gY29udGV4dC1tZW51LWxvY2FsIChtZW51IF9jbGlj aykKICAgIlBvcHVsYXRlIE1FTlUgd2l0aCBzdWJtZW51cyBwcm92aWRlZCBieSBtYWpvciBt b2RlLiIKICAgKHJ1bi1ob29rcyAnYWN0aXZhdGUtbWVudWJhci1ob29rICdtZW51LWJhci11 cGRhdGUtaG9vaykKLSAgKGRlZmluZS1rZXktYWZ0ZXIgbWVudSBbc2VwYXJhdG9yLWxvY2Fs XSBtZW51LWJhci1zZXBhcmF0b3IpCiAgIChsZXQgKChrZXltYXAgKGxvY2FsLWtleS1iaW5k aW5nIFttZW51LWJhcl0pKSkKICAgICAod2hlbiBrZXltYXAKICAgICAgIChtYXAta2V5bWFw IChsYW1iZGEgKGtleSBiaW5kaW5nKQogICAgICAgICAgICAgICAgICAgICAod2hlbiAoY29u c3AgYmluZGluZykKICAgICAgICAgICAgICAgICAgICAgICAoZGVmaW5lLWtleS1hZnRlciBt ZW51ICh2ZWN0b3Iga2V5KQotICAgICAgICAgICAgICAgICAgICAgICAgKGNvcHktc2VxdWVu Y2UgYmluZGluZykpKSkKKyAgICAgICAgICAgICAgICAgICAgICAgIChhcHBlbmQgYmluZGlu ZyAnKDpzZWN0aW9uICJsb2NhbCIpKSkpKQogICAgICAgICAgICAgICAgICAgKG1lbnUtYmFy LWtleW1hcCBrZXltYXApKSkpCiAgIG1lbnUpCiAKQEAgLTQyMiw3ICs0MTgsNiBAQCBjb250 ZXh0LW1lbnUtdmMKIAogKGRlZnVuIGNvbnRleHQtbWVudS11bmRvIChtZW51IF9jbGljaykK ICAgIlBvcHVsYXRlIE1FTlUgd2l0aCB1bmRvIGNvbW1hbmRzLiIKLSAgKGRlZmluZS1rZXkt YWZ0ZXIgbWVudSBbc2VwYXJhdG9yLXVuZG9dIG1lbnUtYmFyLXNlcGFyYXRvcikKICAgKHdo ZW4gKGFuZCAobm90IGJ1ZmZlci1yZWFkLW9ubHkpCiAgICAgICAgICAgICAgKG5vdCAoZXEg dCBidWZmZXItdW5kby1saXN0KSkKICAgICAgICAgICAgICAoaWYgKGVxIGxhc3QtY29tbWFu ZCAndW5kbykKQEAgLTQzMCwyMiArNDI1LDI1IEBAIGNvbnRleHQtbWVudS11bmRvCiAgICAg ICAgICAgICAgICAoY29uc3AgYnVmZmVyLXVuZG8tbGlzdCkpKQogICAgIChkZWZpbmUta2V5 LWFmdGVyIG1lbnUgW3VuZG9dCiAgICAgICBgKG1lbnUtaXRlbSAsKGlmIChyZWdpb24tYWN0 aXZlLXApICJVbmRvIGluIFJlZ2lvbiIgIlVuZG8iKSB1bmRvCi0gICAgICAgICAgICAgICAg ICA6aGVscCAiVW5kbyBsYXN0IGVkaXRzIikpKQorICAgICAgICAgICAgICAgICAgOmhlbHAg IlVuZG8gbGFzdCBlZGl0cyIKKyAgICAgICAgICAgICAgICAgIDpzZWN0aW9uICJ1bmRvIikp KQogICAod2hlbiAoYW5kIChub3QgYnVmZmVyLXJlYWQtb25seSkKICAgICAgICAgICAgICAo dW5kby0tbGFzdC1jaGFuZ2Utd2FzLXVuZG8tcCBidWZmZXItdW5kby1saXN0KSkKICAgICAo ZGVmaW5lLWtleS1hZnRlciBtZW51IFt1bmRvLXJlZG9dCiAgICAgICBgKG1lbnUtaXRlbSAo aWYgdW5kby1pbi1yZWdpb24gIlJlZG8gaW4gUmVnaW9uIiAiUmVkbyIpIHVuZG8tcmVkbwot ICAgICAgICAgICAgICAgICAgOmhlbHAgIlJlZG8gbGFzdCB1bmRvbmUgZWRpdHMiKSkpCisg ICAgICAgICAgICAgICAgICA6aGVscCAiUmVkbyBsYXN0IHVuZG9uZSBlZGl0cyIKKyAgICAg ICAgICAgICAgICAgIDpzZWN0aW9uICJ1bmRvIikpKQogICBtZW51KQogCiAoZGVmdW4gY29u dGV4dC1tZW51LXJlZ2lvbiAobWVudSBjbGljaykKICAgIlBvcHVsYXRlIE1FTlUgd2l0aCBy ZWdpb24gY29tbWFuZHMuIgotICAoZGVmaW5lLWtleS1hZnRlciBtZW51IFtzZXBhcmF0b3It cmVnaW9uXSBtZW51LWJhci1zZXBhcmF0b3IpCisgIDs7KGRlZmluZS1rZXktYWZ0ZXIgbWVu dSBbc2VwYXJhdG9yLXJlZ2lvbl0gbWVudS1iYXItc2VwYXJhdG9yKQogICAod2hlbiAoYW5k IG1hcmstYWN0aXZlIChub3QgYnVmZmVyLXJlYWQtb25seSkpCiAgICAgKGRlZmluZS1rZXkt YWZ0ZXIgbWVudSBbY3V0XQogICAgICAgJyhtZW51LWl0ZW0gIkN1dCIga2lsbC1yZWdpb24K ICAgICAgICAgICAgICAgICAgIDpoZWxwCi0gICAgICAgICAgICAgICAgICAiQ3V0IChraWxs KSB0ZXh0IGluIHJlZ2lvbiBiZXR3ZWVuIG1hcmsgYW5kIGN1cnJlbnQgcG9zaXRpb24iKSkp CisgICAgICAgICAgICAgICAgICAiQ3V0IChraWxsKSB0ZXh0IGluIHJlZ2lvbiBiZXR3ZWVu IG1hcmsgYW5kIGN1cnJlbnQgcG9zaXRpb24iCisgICAgICAgICAgICAgICAgICA6c2VjdGlv biAicmVnaW9uIikpKQogICAod2hlbiBtYXJrLWFjdGl2ZQogICAgIChkZWZpbmUta2V5LWFm dGVyIG1lbnUgW2NvcHldCiAgICAgICA7OyBucy13aW4uZWwgc2FpZDogU3Vic3RpdHV0ZSBh IENvcHkgZnVuY3Rpb24gdGhhdCB3b3JrcyBiZXR0ZXIKQEAgLTQ1Niw3ICs0NTQsOCBAQCBj b250ZXh0LW1lbnUtcmVnaW9uCiAgICAgICAgICAgICAgICAgICA6aGVscCAiQ29weSB0ZXh0 IGluIHJlZ2lvbiBiZXR3ZWVuIG1hcmsgYW5kIGN1cnJlbnQgcG9zaXRpb24iCiAgICAgICAg ICAgICAgICAgICA6a2V5cyAsKGlmIChmZWF0dXJlcCAnbnMpCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICJcXFtucy1jb3B5LWluY2x1ZGluZy1zZWNvbmRhcnldIgotICAgICAg ICAgICAgICAgICAgICAgICAgICAgIlxcW2tpbGwtcmluZy1zYXZlXSIpKSkpCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAiXFxba2lsbC1yaW5nLXNhdmVdIikKKyAgICAgICAgICAg ICAgICAgIDpzZWN0aW9uICJyZWdpb24iKSkpCiAgICh3aGVuIChhbmQgKG9yIChndWktYmFj a2VuZC1zZWxlY3Rpb24tZXhpc3RzLXAgJ0NMSVBCT0FSRCkKICAgICAgICAgICAgICAgICAg KGlmIChmZWF0dXJlcCAnbnMpIDsgbGlrZSBwYXN0ZS1mcm9tLW1lbnUKICAgICAgICAgICAg ICAgICAgICAgIChjZHIgeWFuay1tZW51KQpAQCAtNDY0LDcgKzQ2Myw4IEBAIGNvbnRleHQt bWVudS1yZWdpb24KICAgICAgICAgICAgICAobm90IGJ1ZmZlci1yZWFkLW9ubHkpKQogICAg IChkZWZpbmUta2V5LWFmdGVyIG1lbnUgW3Bhc3RlXQogICAgICAgYChtZW51LWl0ZW0gIlBh c3RlIiBtb3VzZS15YW5rLWF0LWNsaWNrCi0gICAgICAgICAgICAgICAgICA6aGVscCAiUGFz dGUgKHlhbmspIHRleHQgbW9zdCByZWNlbnRseSBjdXQvY29waWVkIikpKQorICAgICAgICAg ICAgICAgICAgOmhlbHAgIlBhc3RlICh5YW5rKSB0ZXh0IG1vc3QgcmVjZW50bHkgY3V0L2Nv cGllZCIKKyAgICAgICAgICAgICAgICAgIDpzZWN0aW9uICJyZWdpb24iKSkpCiAgICh3aGVu IChhbmQgKGNkciB5YW5rLW1lbnUpIChub3QgYnVmZmVyLXJlYWQtb25seSkpCiAgICAgKGxl dCAoKHN1Ym1lbnUgKG1ha2Utc3BhcnNlLWtleW1hcCAocHJvcGVydGl6ZSAiUGFzdGUgZnJv bSBLaWxsIE1lbnUiKSkpCiAgICAgICAgICAgKGkgMCkpCkBAIC00NzcsMTIgKzQ3NywxNCBA QCBjb250ZXh0LW1lbnUtcmVnaW9uCiAgICAgICAoZGVmaW5lLWtleS1hZnRlciBtZW51IChp ZiAoZmVhdHVyZXAgJ25zKSBbc2VsZWN0LXBhc3RlXSBbcGFzdGUtZnJvbS1tZW51XSkKICAg ICAgICAgYChtZW51LWl0ZW0gLChpZiAoZmVhdHVyZXAgJ25zKSAiU2VsZWN0IGFuZCBQYXN0 ZSIgIlBhc3RlIGZyb20gS2lsbCBNZW51IikKICAgICAgICAgICAgICAgICAgICAgLHN1Ym1l bnUKLSAgICAgICAgICAgICAgICAgICAgOmhlbHAgIkNob29zZSBhIHN0cmluZyBmcm9tIHRo ZSBraWxsIHJpbmcgYW5kIHBhc3RlIGl0IikpKSkKKyAgICAgICAgICAgICAgICAgICAgOmhl bHAgIkNob29zZSBhIHN0cmluZyBmcm9tIHRoZSBraWxsIHJpbmcgYW5kIHBhc3RlIGl0Igor ICAgICAgICAgICAgICAgICAgICA6c2VjdGlvbiAicmVnaW9uIikpKSkKICAgKHdoZW4gKGFu ZCBtYXJrLWFjdGl2ZSAobm90IGJ1ZmZlci1yZWFkLW9ubHkpKQogICAgIChkZWZpbmUta2V5 LWFmdGVyIG1lbnUgW2NsZWFyXQogICAgICAgJyhtZW51LWl0ZW0gIkNsZWFyIiBkZWxldGUt YWN0aXZlLXJlZ2lvbgogICAgICAgICAgICAgICAgICAgOmhlbHAKLSAgICAgICAgICAgICAg ICAgICJEZWxldGUgdGV4dCBpbiByZWdpb24gYmV0d2VlbiBtYXJrIGFuZCBjdXJyZW50IHBv c2l0aW9uIikpKQorICAgICAgICAgICAgICAgICAgIkRlbGV0ZSB0ZXh0IGluIHJlZ2lvbiBi ZXR3ZWVuIG1hcmsgYW5kIGN1cnJlbnQgcG9zaXRpb24iCisgICAgICAgICAgICAgICAgICA6 c2VjdGlvbiAicmVnaW9uIikpKQogCiAgIChsZXQgKChzdWJtZW51IChtYWtlLXNwYXJzZS1r ZXltYXAgKHByb3BlcnRpemUgIlNlbGVjdCIpKSkpCiAgICAgKGRlZmluZS1rZXktYWZ0ZXIg c3VibWVudSBbbWFyay13aG9sZS1idWZmZXJdCkBAIC01MDksNyArNTExLDcgQEAgY29udGV4 dC1tZW51LXJlZ2lvbgogICAgICAgICAgICAgICAgICAgICA6aGVscCAiRGVhY3RpdmF0ZSB0 aGUgcmVnaW9uIikpKQogCiAgICAgKGRlZmluZS1rZXktYWZ0ZXIgbWVudSBbc2VsZWN0LXJl Z2lvbl0KLSAgICAgIGAobWVudS1pdGVtICJTZWxlY3QiICxzdWJtZW51KSkpCisgICAgICBg KG1lbnUtaXRlbSAiU2VsZWN0IiAsc3VibWVudSA6c2VjdGlvbiAicmVnaW9uIikpKQogICBt ZW51KQogCiAoZGVmdW4gY29udGV4dC1tZW51LWZmYXAgKG1lbnUgY2xpY2spCmRpZmYgLS1n aXQgYS9saXNwL3Byb2dtb2Rlcy9lbGlzcC1tb2RlLmVsIGIvbGlzcC9wcm9nbW9kZXMvZWxp c3AtbW9kZS5lbAppbmRleCA3ZGE5M2EzNTFhLi43OTk2MGYzODM5IDEwMDY0NAotLS0gYS9s aXNwL3Byb2dtb2Rlcy9lbGlzcC1tb2RlLmVsCisrKyBiL2xpc3AvcHJvZ21vZGVzL2VsaXNw LW1vZGUuZWwKQEAgLTE1Niw5ICsxNTYsNiBAQCBlbWFjcy1saXNwLW1vZGUtbWVudQogKGRl ZnVuIGVsaXNwLWNvbnRleHQtbWVudSAobWVudSBjbGljaykKICAgIlBvcHVsYXRlIE1FTlUg d2l0aCBzeW1ib2wgaGVscCBjb21tYW5kcyBhdCBDTElDSy4iCiAgICh3aGVuICh0aGluZy1h dC1tb3VzZSBjbGljayAnc3ltYm9sKQotICAgIChkZWZpbmUta2V5LWFmdGVyIG1lbnUgW2Vs aXNwLXNlcGFyYXRvcl0gbWVudS1iYXItc2VwYXJhdG9yCi0gICAgICAnbWlkZGxlLXNlcGFy YXRvcikKLQogICAgIChsZXQqICgoc3RyaW5nICh0aGluZy1hdC1tb3VzZSBjbGljayAnc3lt Ym9sIHQpKQogICAgICAgICAgICAoc3ltYm9sICh3aGVuIChzdHJpbmdwIHN0cmluZykgKGlu dGVybiBzdHJpbmcpKSkKICAgICAgICAgICAgKHRpdGxlIChjb25kCkBAIC0xNzgsMTQgKzE3 NSwxNiBAQCBlbGlzcC1jb250ZXh0LW1lbnUKICAgICAgICAgICBgKG1lbnUtaXRlbSAiTG9v ayB1cCBpbiBNYW51YWwiCiAgICAgICAgICAgICAgICAgICAgICAgKGxhbWJkYSAoX2NsaWNr KSAoaW50ZXJhY3RpdmUgImUiKQogICAgICAgICAgICAgICAgICAgICAgICAgKGluZm8tbG9v a3VwLXN5bWJvbCAnLHN5bWJvbCkpCi0gICAgICAgICAgICAgICAgICAgICAgOmhlbHAgLChm b3JtYXQgIkZpbmQgYCVzJyBpbiByZWxldmFudCBtYW51YWwiIHN5bWJvbCkpCi0gICAgICAg ICAgJ2VsaXNwLXNlcGFyYXRvcikKKyAgICAgICAgICAgICAgICAgICAgICA6aGVscCAsKGZv cm1hdCAiRmluZCBgJXMnIGluIHJlbGV2YW50IG1hbnVhbCIgc3ltYm9sKQorICAgICAgICAg ICAgICAgICAgICAgIDpzZWN0aW9uICJlbGlzcCIpCisgICAgICAgICAgJ21pZGRsZS1zZXBh cmF0b3IpCiAgICAgICAgIChkZWZpbmUta2V5LWFmdGVyIG1lbnUgW2Rlc2NyaWJlLXN5bWJv bF0KICAgICAgICAgICBgKG1lbnUtaXRlbSAoZm9ybWF0ICJEZXNjcmliZSAlcyIgLHRpdGxl KQogICAgICAgICAgICAgICAgICAgICAgIChsYW1iZGEgKF9jbGljaykgKGludGVyYWN0aXZl ICJlIikKICAgICAgICAgICAgICAgICAgICAgICAgIChkZXNjcmliZS1zeW1ib2wgJyxzeW1i b2wpKQotICAgICAgICAgICAgICAgICAgICAgIDpoZWxwICwoZm9ybWF0ICJEaXNwbGF5IHRo ZSBkb2N1bWVudGF0aW9uIG9mIGAlcyciIHN5bWJvbCkpCi0gICAgICAgICAgJ2VsaXNwLXNl cGFyYXRvcikpKSkKKyAgICAgICAgICAgICAgICAgICAgICA6aGVscCAsKGZvcm1hdCAiRGlz cGxheSB0aGUgZG9jdW1lbnRhdGlvbiBvZiBgJXMnIiBzeW1ib2wpCisgICAgICAgICAgICAg ICAgICAgICAgOnNlY3Rpb24gImVsaXNwIikKKyAgICAgICAgICAnbWlkZGxlLXNlcGFyYXRv cikpKSkKICAgbWVudSkKIAogKGRlZnVuIGVtYWNzLWxpc3AtYnl0ZS1jb21waWxlICgpCmRp ZmYgLS1naXQgYS9saXNwL3Byb2dtb2Rlcy9wcm9nLW1vZGUuZWwgYi9saXNwL3Byb2dtb2Rl cy9wcm9nLW1vZGUuZWwKaW5kZXggNDk2YjA4MTAxOC4uYWEyNTA4MGFiNSAxMDA2NDQKLS0t IGEvbGlzcC9wcm9nbW9kZXMvcHJvZy1tb2RlLmVsCisrKyBiL2xpc3AvcHJvZ21vZGVzL3By b2ctbW9kZS5lbApAQCAtNDYsMjAgKzQ2LDE5IEBAIHByb2ctbW9kZS1ob29rCiAoZGVmdW4g cHJvZy1jb250ZXh0LW1lbnUgKG1lbnUgY2xpY2spCiAgICJQb3B1bGF0ZSBNRU5VIHdpdGgg eHJlZiBjb21tYW5kcyBhdCBDTElDSy4iCiAgIChyZXF1aXJlICd4cmVmKQotICAoZGVmaW5l LWtleS1hZnRlciBtZW51IFtwcm9nLXNlcGFyYXRvcl0gbWVudS1iYXItc2VwYXJhdG9yCi0g ICAgJ21pZGRsZS1zZXBhcmF0b3IpCi0KICAgKHVubGVzcyAoeHJlZi1mb3J3YXJkLWhpc3Rv cnktZW1wdHktcCkKICAgICAoZGVmaW5lLWtleS1hZnRlciBtZW51IFt4cmVmLWZvcndhcmRd CiAgICAgICAnKG1lbnUtaXRlbSAiR28gRm9yd2FyZCIgeHJlZi1nby1mb3J3YXJkCi0gICAg ICAgICAgICAgICAgICA6aGVscCAiRm9yd2FyZCB0byB0aGUgcG9zaXRpb24gZ29uZSBCYWNr IGZyb20iKQotICAgICAgJ3Byb2ctc2VwYXJhdG9yKSkKKyAgICAgICAgICAgICAgICAgIDpo ZWxwICJGb3J3YXJkIHRvIHRoZSBwb3NpdGlvbiBnb25lIEJhY2sgZnJvbSIKKyAgICAgICAg ICAgICAgICAgIDpzZWN0aW9uICJwcm9nIikKKyAgICAgICdtaWRkbGUtc2VwYXJhdG9yKSkK IAogICAodW5sZXNzICh4cmVmLW1hcmtlci1zdGFjay1lbXB0eS1wKQogICAgIChkZWZpbmUt a2V5LWFmdGVyIG1lbnUgW3hyZWYtcG9wXQogICAgICAgJyhtZW51LWl0ZW0gIkdvIEJhY2si IHhyZWYtZ28tYmFjawotICAgICAgICAgICAgICAgICAgOmhlbHAgIkJhY2sgdG8gdGhlIHBv c2l0aW9uIG9mIHRoZSBsYXN0IHNlYXJjaCIpCi0gICAgICAncHJvZy1zZXBhcmF0b3IpKQor ICAgICAgICAgICAgICAgICAgOmhlbHAgIkJhY2sgdG8gdGhlIHBvc2l0aW9uIG9mIHRoZSBs YXN0IHNlYXJjaCIKKyAgICAgICAgICAgICAgICAgIDpzZWN0aW9uICJwcm9nIikKKyAgICAg ICdtaWRkbGUtc2VwYXJhdG9yKSkKIAogICAobGV0ICgoaWRlbnRpZmllciAoc2F2ZS1leGN1 cnNpb24KICAgICAgICAgICAgICAgICAgICAgICAobW91c2Utc2V0LXBvaW50IGNsaWNrKQpA QCAtNjgsMTIgKzY3LDE0IEBAIHByb2ctY29udGV4dC1tZW51CiAgICAgKHdoZW4gaWRlbnRp ZmllcgogICAgICAgKGRlZmluZS1rZXktYWZ0ZXIgbWVudSBbeHJlZi1maW5kLXJlZl0KICAg ICAgICAgYChtZW51LWl0ZW0gIkZpbmQgUmVmZXJlbmNlcyIgeHJlZi1maW5kLXJlZmVyZW5j ZXMtYXQtbW91c2UKLSAgICAgICAgICAgICAgICAgICAgOmhlbHAgLChmb3JtYXQgIkZpbmQg cmVmZXJlbmNlcyB0byBgJXMnIiBpZGVudGlmaWVyKSkKLSAgICAgICAgJ3Byb2ctc2VwYXJh dG9yKQorICAgICAgICAgICAgICAgICAgICA6aGVscCAsKGZvcm1hdCAiRmluZCByZWZlcmVu Y2VzIHRvIGAlcyciIGlkZW50aWZpZXIpCisgICAgICAgICAgICAgICAgICAgIDpzZWN0aW9u ICJwcm9nIikKKyAgICAgICAgJ21pZGRsZS1zZXBhcmF0b3IpCiAgICAgICAoZGVmaW5lLWtl eS1hZnRlciBtZW51IFt4cmVmLWZpbmQtZGVmXQogICAgICAgICBgKG1lbnUtaXRlbSAiRmlu ZCBEZWZpbml0aW9uIiB4cmVmLWZpbmQtZGVmaW5pdGlvbnMtYXQtbW91c2UKLSAgICAgICAg ICAgICAgICAgICAgOmhlbHAgLChmb3JtYXQgIkZpbmQgZGVmaW5pdGlvbiBvZiBgJXMnIiBp ZGVudGlmaWVyKSkKLSAgICAgICAgJ3Byb2ctc2VwYXJhdG9yKSkpCisgICAgICAgICAgICAg ICAgICAgIDpoZWxwICwoZm9ybWF0ICJGaW5kIGRlZmluaXRpb24gb2YgYCVzJyIgaWRlbnRp ZmllcikKKyAgICAgICAgICAgICAgICAgICAgOnNlY3Rpb24gInByb2ciKQorICAgICAgICAn bWlkZGxlLXNlcGFyYXRvcikpKQogCiAgICh3aGVuICh0aGluZy1hdC1tb3VzZSBjbGljayAn c3ltYm9sKQogICAgIChkZWZpbmUta2V5LWFmdGVyIG1lbnUgW3NlbGVjdC1yZWdpb24gbWFy ay1zeW1ib2xdCg== --------------17A3EE286DE4FE8211D34A68--