From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Gustaf Waldemarson Newsgroups: gmane.emacs.bugs Subject: bug#59730: gdb-mi.el: Local variables reordering Date: Sun, 4 Dec 2022 15:26:22 +0100 Message-ID: References: <83y1rrgmc3.fsf@gnu.org> <83fsdwcl8u.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="00000000000099b18f05ef015bdc" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="10850"; mail-complaints-to="usenet@ciao.gmane.io" Cc: 59730@debbugs.gnu.org To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sun Dec 04 15:27:06 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 1p1pxS-0002fV-Hi for geb-bug-gnu-emacs@m.gmane-mx.org; Sun, 04 Dec 2022 15:27:06 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1p1pxP-0000n3-67; Sun, 04 Dec 2022 09:27:03 -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 1p1pxO-0000m7-Hp for bug-gnu-emacs@gnu.org; Sun, 04 Dec 2022 09:27:02 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1p1pxO-0001R5-A7 for bug-gnu-emacs@gnu.org; Sun, 04 Dec 2022 09:27:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1p1pxN-0000Jk-Qb for bug-gnu-emacs@gnu.org; Sun, 04 Dec 2022 09:27:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Gustaf Waldemarson Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 04 Dec 2022 14:27:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 59730 X-GNU-PR-Package: emacs Original-Received: via spool by 59730-submit@debbugs.gnu.org id=B59730.16701640031214 (code B ref 59730); Sun, 04 Dec 2022 14:27:01 +0000 Original-Received: (at 59730) by debbugs.gnu.org; 4 Dec 2022 14:26:43 +0000 Original-Received: from localhost ([127.0.0.1]:57993 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1p1px4-0000JW-Cv for submit@debbugs.gnu.org; Sun, 04 Dec 2022 09:26:43 -0500 Original-Received: from mail-ed1-f51.google.com ([209.85.208.51]:46010) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1p1px2-0000JN-KG for 59730@debbugs.gnu.org; Sun, 04 Dec 2022 09:26:41 -0500 Original-Received: by mail-ed1-f51.google.com with SMTP id s5so12454911edc.12 for <59730@debbugs.gnu.org>; Sun, 04 Dec 2022 06:26:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=SXKZyF2vYPn6gaX2CESDindyw7D0zHZrv8zUp+OpABE=; b=kjgnc4ohE1Mdp5u/bhdLGpptl+C5PXIw/MRrIw/TgMfuE04Q/JJolQrcjGY/q5UdzL TPP+G12WWWisMa6BAuizVF90yuIM/H3yM8xAuKzkZ2AayYgkIS9Zu2kMCsqf8IPVAviI J+O+BkSwEmRi/6yahngh0PkosfK/utWJvgb/pbBnlAiw2mrMK6ao15Myp+LPR5iOarVJ V3O+kHq5FnCEjc9Lb3Kam0bo8xw6JbWkJ5NMfzOzwiiNYu6EIWzTrOrgP8zkAgDsXJpk 9Mt3R6J4/Vk3yXdHqVfh28p/14HCzcVGjKojN1KlHXKjqR1uIyepKvwOde71o4V/ZRKU wJ0w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=SXKZyF2vYPn6gaX2CESDindyw7D0zHZrv8zUp+OpABE=; b=ZxAJzCOYlup5afM87ctC/V1fxPUTOi+nIPbhtniyVcBBj5cxJx7XW/BG1lI3l7w610 CbX2hvkGBAJRwIpfgfUf89wzETZx9TUNYnFsmyjpdK7wvozHEXFy4s7mUnlDQgxCGhPT /XKBmIh/l/DP3MHiRy145PSREp4wqHymR8nTD9XwOYYoFWrIPzvtAvbRpC4GldY8qnjW 2kxwmSbwTTgv+3tSE+AlzGlnODNqLgTlddDIdSOJH75zSXQXHZNqbvPXwC0dEApz+UfG +fhgFIfBUylbGc3taHzg3WCCr33qMM1RlKMVYrI/COc3L4Vv+8VNPqVtI8KbS8KQnSw1 biVg== X-Gm-Message-State: ANoB5plj+TlEdN+cKVqvzxVn9l1Oo4psjU5wI25QNqswIclS8XTvrk/v NxyZZnK1tqvgQ9tsHrUGPybBiZnHH+7fiCyCfnLDTcd0pKs= X-Google-Smtp-Source: AA0mqf48ziIAJZi6qgWzo3/1jnBE/c3GboxTws7aS1LGDNAlI1EeG73GqU5BwVt8PHpjmcOsIaX2PFG+zEyAo41THq8= X-Received: by 2002:a05:6402:550b:b0:45f:9526:e35a with SMTP id fi11-20020a056402550b00b0045f9526e35amr71371611edb.256.1670163994342; Sun, 04 Dec 2022 06:26:34 -0800 (PST) In-Reply-To: <83fsdwcl8u.fsf@gnu.org> 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:249946 Archived-At: --00000000000099b18f05ef015bdc Content-Type: multipart/alternative; boundary="00000000000099b18c05ef015bda" --00000000000099b18c05ef015bda Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable > I'm uncomfortable with backward-incompatible change in behavior for which > there's no way of getting the old behavior. So please add another defcustom > that could be used to get the original order of type/name/value. > There also should be a NEWS entry about these new options, and the text > there should explain how to get back old behavior before these changes. Hmm, this turned out to be a bit harder change, and I did not particularly like the thought of having 3 defcustoms control this behavior. So I spent a bit of time to refactor things a bit. So, this new version only uses a single defcustom, `gdb-locals-table-row-config', which is an alist the user can change to specify the truncation and order of the local variable properties (i.e., name, type, value). I have set this to '((name . 20)(type . 20)(value . 100)), so to get the old behavior one would change this to '(type . 0)(name . 0)(value . 0). Additionally, I found a minor bug in `gdb-locals-value-filter' which did not work properly when the value was nil. There I also noticed that that the `gdb-locals-value-limit' has become redundant with this change. Unfortunately, I wasn't able to figure out how to mark that defcustom as deprecated, is there some kind of macro that should be done for that, or should I just remove it? I also added content to the `etc/NEWS`, as requested but I haven't actually done that before, so I may very well have messed up the formatting, so feel free to double check things there Best regards, Gustaf Den l=C3=B6r 3 dec. 2022 kl 20:59 skrev Eli Zaretskii : > > From: Gustaf Waldemarson > > Date: Thu, 1 Dec 2022 22:53:26 +0100 > > Cc: 59730@debbugs.gnu.org > > > > The updated patch is attached to this mail. > > Thanks. I have a couple of minor comments: > > > +(defcustom gdb-locals-max-type-length 20 > > + "Maximum number of character to display in the local variables type > column." > > + :type 'integer > > + :group 'gud > > + :version "30.0") > > This should be "30.1". We don't release NN.o versions of Emacs. > > > +(defcustom gdb-locals-max-name-length 20 > > + "Maximum number of character to display in the local variables name > column." > > + :type 'integer > > + :group 'gud > > + :version "30.0") > > Likewise. > > Also, please add more detailed description of what these options control. > The first line of the doc string is fine, but please add more text > explaining that this setting is for displaying the variables in the > "Locals" > buffer. > > > - (propertize type 'font-lock-face font-lock-type-face) > > - (propertize name 'font-lock-face font-lock-variable-name-fac= e) > > + (propertize (string-truncate-left name > gdb-locals-max-name-length) > > + 'font-lock-face font-lock-variable-name-face > > + 'help-echo name) > > + (propertize (string-truncate-left type > gdb-locals-max-type-length) > > + 'font-lock-face font-lock-type-face > > + 'help-echo type) > > I'm uncomfortable with backward-incompatible change in behavior for which > there's no way of getting the old behavior. So please add another > defcustom > that could be used to get the original order of type/name/value. > > There also should be a NEWS entry about these new options, and the text > there should explain how to get back old behavior before these changes. > --00000000000099b18c05ef015bda Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable

> I'm uncomfortable with backward-incompatible change in behavior fo= r which
> there's no way of getting the old behavior.=C2=A0 So please add an= other defcustom
> that could be used to get the original order of type/name/value.

> There also should be a NEWS entry about these new options, and the tex= t
> there should explain how to get back old behavior before these changes= .

Hmm, this turned out to be a bit harder change, = and I did not particularly like
the thought of having 3 defcustom= s control this behavior. So I spent a bit of time
to refactor thi= ngs a bit.

So, this new version only uses a single= defcustom, `gdb-locals-table-row-config',
which is an alist = the user can change to specify the truncation and order of the
local variable properties (i.e., name, type, value).

I have set this to '((name . 20)(type . 20)(value . 100)), so to = get the old behavior
one would change this to '(type . 0)(nam= e . 0)(value . 0).

Additionally, I found a minor b= ug in `gdb-locals-value-filter' which did not work
properly w= hen the value was nil. There I also noticed that that the `gdb-locals-value= -limit'
has become redundant with this change. Unfortunately,= I wasn't able to figure out how
to mark that defcustom as de= precated, is there some kind of macro that should be done
for tha= t, or should I just remove it?

I also added co= ntent to the `etc/NEWS`, as requested but I haven't actually done that<= /div>
before, so I may very well have messed up the formatting, so feel= free to double check
things there

Best = regards,
Gustaf


Den l=C3=B6r 3 dec. 2022 = kl 20:59 skrev Eli Zaretskii <eliz@gnu.o= rg>:
>= From: Gustaf Waldemarson <gustaf.waldemarson@gmail.com>
> Date: Thu, 1 Dec 2022 22:53:26 +0100
> Cc: 59730@d= ebbugs.gnu.org
>
> The updated patch is attached to this mail.

Thanks.=C2=A0 I have a couple of minor comments:

> +(defcustom gdb-locals-max-type-length 20
> +=C2=A0 "Maximum number of character to display in the local vari= ables type column."
> +=C2=A0 :type 'integer
> +=C2=A0 :group 'gud
> +=C2=A0 :version "30.0")

This should be "30.1".=C2=A0 We don't release NN.o versions o= f Emacs.

> +(defcustom gdb-locals-max-name-length 20
> +=C2=A0 "Maximum number of character to display in the local vari= ables name column."
> +=C2=A0 :type 'integer
> +=C2=A0 :group 'gud
> +=C2=A0 :version "30.0")

Likewise.

Also, please add more detailed description of what these options control. The first line of the doc string is fine, but please add more text
explaining that this setting is for displaying the variables in the "L= ocals"
buffer.

> -=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 (propertize type 'font-lock-fa= ce font-lock-type-face)
> -=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 (propertize name 'font-lock-fa= ce font-lock-variable-name-face)
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 (propertize (string-truncate-left = name gdb-locals-max-name-length)
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0 'font-lock-face font-lock-variable-name-face
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0 'help-echo name)
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 (propertize (string-truncate-left = type gdb-locals-max-type-length)
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0 'font-lock-face font-lock-type-face
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0 'help-echo type)

I'm uncomfortable with backward-incompatible change in behavior for whi= ch
there's no way of getting the old behavior.=C2=A0 So please add another= defcustom
that could be used to get the original order of type/name/value.

There also should be a NEWS entry about these new options, and the text
there should explain how to get back old behavior before these changes.
--00000000000099b18c05ef015bda-- --00000000000099b18f05ef015bdc Content-Type: text/x-patch; charset="US-ASCII"; name="0001-gdb-mi.el-Configure-variable-order-and-length.patch" Content-Disposition: attachment; filename="0001-gdb-mi.el-Configure-variable-order-and-length.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lb9ggyts0 RnJvbSBlNjUyNzZmYjkyYTFlN2E4NmQyY2U4OTQ0ODJlYWY1YzUzYjdhMzRlIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBHdXN0YWYgV2FsZGVtYXJzb24gPGd1c3RhZi53YWxkZW1hcnNv bkBnbWFpbC5jb20+CkRhdGU6IFR1ZSwgMjkgTm92IDIwMjIgMjM6NDA6MjMgKzAxMDAKU3ViamVj dDogW1BBVENIXSBnZGItbWkuZWw6IENvbmZpZ3VyZSB2YXJpYWJsZSBvcmRlciBhbmQgbGVuZ3Ro LgoKVGhpcyBjaGFuZ2VzIGFsbG93cyB1c2VycyB0byBjb25maWd1cmUgdGhlIG9yZGVyIG9mIHZh cmlvdXMgcHJvcGVydGllcwphcyB3ZWxsIGFzIHRydW5jYXRpbmcgdGhlaXIgbGVuZ3RoLiBUaGUg ZnVsbCBkZXNjcmlwdGlvbiBvZiBlYWNoCnByb3BlcnR5IGlzIGF2YWlsYWJsZSBhcyBhIGhlbHAt dGV4dCAodG9vbHRpcCkuCi0tLQogZXRjL05FV1MgICAgICAgICAgICAgICAgIHwgMTcgKysrKysr KysrKysrKwogbGlzcC9wcm9nbW9kZXMvZ2RiLW1pLmVsIHwgNTMgKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKystLS0tLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCA2MCBpbnNlcnRpb25zKCsp LCAxMCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9ldGMvTkVXUyBiL2V0Yy9ORVdTCmluZGV4 IDliOGVkZGU1MTU1Li40NzNkNDI3ZTc1NyAxMDA2NDQKLS0tIGEvZXRjL05FV1MKKysrIGIvZXRj L05FV1MKQEAgLTQwLDYgKzQwLDIzIEBAIGNvbm5lY3Rpb24uCiAKIAwKICogQ2hhbmdlcyBpbiBT cGVjaWFsaXplZCBNb2RlcyBhbmQgUGFja2FnZXMgaW4gRW1hY3MgMzAuMQorLS0tCisqKiBWYXJp YWJsZSBvcmRlciBhbmQgdHJ1bmNhdGlvbiBjYW4gbm93IGJlIGNvbmZpZ3VyZWQgaW4gZ2RiLW1h bnktd2luZG93IG1vZGUuCitUaGUgbmV3IHZhcmlhYmxlIGBnZGItbG9jYWxzLXRhYmxlLXJvdy1j b25maWcnIGFsbG93cyB1c2VycyB0bworY29uZmlndXJlIHRoZSBvcmRlciBhbmQgbWF4IGxlbmd0 aCBvZiB2YXJpb3VzIHByb3BlcnRpZXMgaW4gdGhlIGxvY2FsCit2YXJpYWJsZXMgZnJhbWUuCisK K0J5IGRlZmF1bHQsIHRoaXMgdmFyaWFibGUgaXMgc2V0IHRvIHdyaXRlIHRoZSBwcm9wZXJ0aWVz IGluIHRoZSBvcmRlcjoKK25hbWUsIHR5cGUgYW5kIHZhbHVlLiBXaGVyZSBuYW1lIGFuZCB0eXBl IGFyZSB0cnVuY2F0ZWQgdG8gMjAKK2NoYXJhY3RlcnMsIGFuZCB0aGUgdmFsdWUgaXMgdHJ1bmNh dGVkIHRvIDEwMC4KKworSW4gb3JkZXIgdG8gcmVzdG9yZSB0aGUgb2xkIGRpc3BsYXkgYmVoYXZp b3IsIHNldAorYGdkYi1sb2NhbHMtdGFibGUtcm93LWNvbmZpZycgdG8gJygodHlwZSAuIDApKG5h bWUgLiAwKSh2YWx1ZSAuIDApKS4KKworQWRkaXRpb25hbGx5LCB0aGlzIGJlaGF2aW9yIGVuY29t cGFzc2VzIHRoZSBhY3Rpb25zIG9mIHRoZSBvbGQKK2BnZGItbG9jYWxzLXZhbHVlLWxpbWl0JyB2 YXJpYWJsZSwgd2hpY2ggaXMgbm8gbG9uZ2VyIHVzZWQgYW5kIG1hcmtlZAorZGVwcmVjYXRlZC4K KwogCiAMCiAqIE5ldyBNb2RlcyBhbmQgUGFja2FnZXMgaW4gRW1hY3MgMzAuMQpkaWZmIC0tZ2l0 IGEvbGlzcC9wcm9nbW9kZXMvZ2RiLW1pLmVsIGIvbGlzcC9wcm9nbW9kZXMvZ2RiLW1pLmVsCmlu ZGV4IGU4ZDhmOTEwNGU0Li44MDk1MGZlYzc3ZSAxMDA2NDQKLS0tIGEvbGlzcC9wcm9nbW9kZXMv Z2RiLW1pLmVsCisrKyBiL2xpc3AvcHJvZ21vZGVzL2dkYi1taS5lbApAQCAtNDM1NSw2ICs0MzU1 LDI0IEBAIGdkYi1sb2NhbHMtdmFsdWUtbGltaXQKICAgOmdyb3VwICdndWQKICAgOnZlcnNpb24g IjI5LjEiKQogCisoZGVmY3VzdG9tIGdkYi1sb2NhbHMtdGFibGUtcm93LWNvbmZpZyAnKChuYW1l IC4gMjApCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh0eXBlIC4g MjApCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh2YWx1ZSAuIDEw MCkpCisgICJDb25maWd1cmF0aW9uIGZvciB0YWJsZSByb3dzIGluIHRoZSBsb2NhbCB2YXJpYWJs ZSBkaXNwbGF5LgorCitBbiBhbGlzdCB0aGF0IGNvbnRyb2xzIHRoZSBkaXNwbGF5IG9mIHRoZSBu YW1lLCB0eXBlIGFuZCB2YWx1ZSBvZgorbG9jYWwgdmFyaWFibGVzIGluc2lkZSB0aGUgY3VycmVu dGx5IGFjdGl2ZSBzdGFjay1mcmFtZS4gIFRoZSBrZXkKK2NvbnRyb2xzIHdoaWNoIGNvbHVtbiB0 byBjaGFuZ2Ugd2hlcmVhcyB0aGUgdmFsdWUgZGV0ZXJtaW5lcyB0aGUKK21heGltdW0gbnVtYmVy IG9mIGNoYXJhY3RlcnMgdG8gZGlzcGxheSBpbiBlYWNoIGNvbHVtbi4gIEEgdmFsdWUKK29mIDAg bWVhbnMgdGhlcmUgaXMgbm8gbGltaXQuCisKK0FkZGl0aW9uYWxseSwgdGhlIG9yZGVyIHRoZSBl bGVtZW50IGluIHRoZSBhbGlzdCBkZXRlcm1pbmVzIHRoZQorbGVmdC10by1yaWdodCBkaXNwbGF5 IG9yZGVyIG9mIHRoZSBwcm9wZXJ0aWVzLiIKKyAgOnR5cGUgJyhhbGlzdCA6a2V5LXR5cGUgJ3N5 bWJvbCA6dmFsdWUtdHlwZSAnaW50ZWdlcikKKyAgOmdyb3VwICdndWQKKyAgOnZlcnNpb24gIjMw LjEiKQorCisKIChkZWZ2YXIgZ2RiLWxvY2Fscy12YWx1ZXMtdGFibGUgKG1ha2UtaGFzaC10YWJs ZSA6dGVzdCAjJ2VxdWFsKQogICAiTWFwcGluZyBvZiBsb2NhbCB2YXJpYWJsZSBuYW1lcyB0byBh IHN0cmluZyB3aXRoIHRoZWlyIHZhbHVlLiIpCiAKQEAgLTQzODQsMTIgKzQ0MDIsOSBAQCBnZGIt ZWRpdC1sb2NhbHMtbWFwLTEKIAogKGRlZnVuIGdkYi1sb2NhbHMtdmFsdWUtZmlsdGVyICh2YWx1 ZSkKICAgIkZpbHRlciBmdW5jdGlvbiBmb3IgdGhlIGxvY2FsIHZhcmlhYmxlIFZBTFVFLiIKLSAg KGxldCogKChuby1ubCAocmVwbGFjZS1yZWdleHAtaW4tc3RyaW5nICJcbiIgIiAiIHZhbHVlKSkK LSAgICAgICAgIChzdHIgKHJlcGxhY2UtcmVnZXhwLWluLXN0cmluZyAiW1s6c3BhY2U6XV0rIiAi ICIgbm8tbmwpKQotICAgICAgICAgKGxpbWl0IGdkYi1sb2NhbHMtdmFsdWUtbGltaXQpKQotICAg IChpZiAoPj0gKGxlbmd0aCBzdHIpIGxpbWl0KQotICAgICAgICAoY29uY2F0IChzdWJzdHJpbmcg c3RyIDAgbGltaXQpICIuLi4iKQotICAgICAgc3RyKSkpCisgIChsZXQqICgobm8tbmwgKHJlcGxh Y2UtcmVnZXhwLWluLXN0cmluZyAiXG4iICIgIiAob3IgdmFsdWUgIjxVbmtub3duPiIpKSkKKyAg ICAgICAgIChzdHIgKHJlcGxhY2UtcmVnZXhwLWluLXN0cmluZyAiW1s6c3BhY2U6XV0rIiAiICIg bm8tbmwpKSkKKyAgICBzdHIpKQogCiAoZGVmdW4gZ2RiLWVkaXQtbG9jYWxzLXZhbHVlICgmb3B0 aW9uYWwgZXZlbnQpCiAgICJBc3NpZ24gYSB2YWx1ZSB0byBhIHZhcmlhYmxlIGRpc3BsYXllZCBp biB0aGUgbG9jYWxzIGJ1ZmZlci4iCkBAIC00NDAzLDYgKzQ0MTgsMjIgQEAgZ2RiLWVkaXQtbG9j YWxzLXZhbHVlCiAgICAgICAoZ3VkLWJhc2ljLWNhbGwKICAgICAgICAoY29uY2F0ICAiLWdkYi1z ZXQgdmFyaWFibGUgIiB2YXIgIiA9ICIgdmFsdWUpKSkpKQogCisKKyhkZWZ1biBnZGItbG9jYWxz LXRhYmxlLWNvbHVtbnMtbGlzdCAoYWxpc3QpCisgICJGb3JtYXQgYW5kIGFycmFuZ2UgdGhlIGNv bHVtbnMgaW4gbG9jYWxzIGRpc3BsYXkgYmFzZWQgb24gQUxJU1QuIgorICAobGV0IChjb2x1bW5z KQorICAgIChkb2xpc3QgKGNvbmZpZyBnZGItbG9jYWxzLXRhYmxlLXJvdy1jb25maWcgY29sdW1u cykKKyAgICAgIChsZXQqICgoa2V5ICAoY2FyIGNvbmZpZykpCisgICAgICAgICAgICAgKG1heCAg KGNkciBjb25maWcpKQorICAgICAgICAgICAgIChwcm9wIChhbGlzdC1nZXQga2V5IGFsaXN0KSkp CisgICAgICAgICh3aGVuIHByb3AKKyAgICAgICAgICAoaWYgKGFuZCAoPiBtYXggMCkgKGxlbmd0 aD4gcHJvcCBtYXgpKQorICAgICAgICAgICAgICAocHVzaCAocHJvcGVydGl6ZSAoc3RyaW5nLXRy dW5jYXRlLWxlZnQgcHJvcCBtYXgpICdoZWxwLWVjaG8gcHJvcCkKKyAgICAgICAgICAgICAgICAg ICAgY29sdW1ucykKKyAgICAgICAgICAgIChwdXNoIHByb3AgY29sdW1ucykpKSkpCisgICAgKG5y ZXZlcnNlIGNvbHVtbnMpKSkKKworCiA7OyBDb21wbGV4IGRhdGEgdHlwZXMgYXJlIGxvb2tlZCB1 cCBpbiBgZ2RiLWxvY2Fscy12YWx1ZXMtdGFibGUnLgogKGRlZnVuIGdkYi1sb2NhbHMtaGFuZGxl ci1jdXN0b20gKCkKICAgIkhhbmRsZXIgdG8gcmVidWlsZCB0aGUgbG9jYWwgdmFyaWFibGVzIHRh YmxlIGJ1ZmZlci4iCkBAIC00NDMxLDEyICs0NDYyLDE0IEBAIGdkYi1sb2NhbHMtaGFuZGxlci1j dXN0b20KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVscC1l Y2hvICJtb3VzZS0yOiBlZGl0IHZhbHVlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBsb2NhbC1tYXAgLGdkYi1lZGl0LWxvY2Fscy1tYXAtMSkKICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZSkpCisgICAgICAgIChzZXRmIChnZGItdGFibGUt cmlnaHQtYWxpZ24gdGFibGUpIHQpCisgICAgICAgIChzZXRxIG5hbWUgKHByb3BlcnRpemUgbmFt ZSAnZm9udC1sb2NrLWZhY2UgZm9udC1sb2NrLXZhcmlhYmxlLW5hbWUtZmFjZSkpCisgICAgICAg IChzZXRxIHR5cGUgKHByb3BlcnRpemUgdHlwZSAnZm9udC1sb2NrLWZhY2UgZm9udC1sb2NrLXR5 cGUtZmFjZSkpCiAgICAgICAgIChnZGItdGFibGUtYWRkLXJvdwogICAgICAgICAgdGFibGUKLSAg ICAgICAgIChsaXN0Ci0gICAgICAgICAgKHByb3BlcnRpemUgdHlwZSAnZm9udC1sb2NrLWZhY2Ug Zm9udC1sb2NrLXR5cGUtZmFjZSkKLSAgICAgICAgICAocHJvcGVydGl6ZSBuYW1lICdmb250LWxv Y2stZmFjZSBmb250LWxvY2stdmFyaWFibGUtbmFtZS1mYWNlKQotICAgICAgICAgIHZhbHVlKQor ICAgICAgICAgKGdkYi1sb2NhbHMtdGFibGUtY29sdW1ucy1saXN0IGAoKG5hbWUgIC4gLG5hbWUp CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodHlwZSAgLiAsdHlw ZSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh2YWx1ZSAuICx2 YWx1ZSkpKQogICAgICAgICAgYChnZGItbG9jYWwtdmFyaWFibGUgLGxvY2FsKSkpKQogICAgIChp bnNlcnQgKGdkYi10YWJsZS1zdHJpbmcgdGFibGUgIiAiKSkKICAgICAoc2V0cSBtb2RlLW5hbWUK LS0gCjIuMzQuMQoK --00000000000099b18f05ef015bdc--