From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp10.migadu.com ([2001:41d0:403:4789::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms9.migadu.com with LMTPS id 6C5IGce7ImVJFAAAG6o9tA:P1 (envelope-from ) for ; Sun, 08 Oct 2023 16:25:11 +0200 Received: from aspmx1.migadu.com ([2001:41d0:403:4789::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp10.migadu.com with LMTPS id 6C5IGce7ImVJFAAAG6o9tA (envelope-from ) for ; Sun, 08 Oct 2023 16:25:11 +0200 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 268AC64D2F for ; Sun, 8 Oct 2023 16:25:09 +0200 (CEST) Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=E99sMbJt; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (aspmx1.migadu.com: domain of "emacs-orgmode-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="emacs-orgmode-bounces+larch=yhetil.org@gnu.org" ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1696775110; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=VmMPt2xDDZlmrZ7+O/FLTiHdvMPEQigJdmklXmopgAE=; b=sPr3Cj24A221sP9c765HTLCPU7mf3cfxK0o5AswPZhNsCPAH/3EfvWJ9DqrZVT4wSv0/3J /TQTzsF64tnnEnf9sWltbPipweHJE2iyokmaIERggIKnsAPE/y0EZgVsLqY3cKKUid25b/ 1nfGinJbI9qfLdFkJL/fYCRRTPrlbUNzH5ib0yKSM9JYUQNTROWzrE69l7bljB2nxn8Sy2 Z42g+8FTc/8quR1cxxCbtbZuQeVZrvBKIEJJCJxT8e4nlX/4Rfzw2baCTPwo88r02vEL3p eZHi8zRSbO7EjsDRHIMTPdUFoMw0o0umfhrrEfXfl2NJgX/HoqhJ4tW5S6Jz/w== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=E99sMbJt; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (aspmx1.migadu.com: domain of "emacs-orgmode-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="emacs-orgmode-bounces+larch=yhetil.org@gnu.org" ARC-Seal: i=1; s=key1; d=yhetil.org; t=1696775110; a=rsa-sha256; cv=none; b=tHZPmh3pktyse9u1e/8NMrW3+AHuRjbUFjVRrwyXWqxndoY6kEBq2SXcZg7lOTYn35umwu AXUT0rss7ZUQk2YwR1U0tg/oQAkWZR2qCEMU6NTD+g+FAT0grtGn0T9rotj2UJnbWQ2JH0 l4B7VcfxLwf2WUhEkULMCY6OJ4z2TEA/kYSx1L+bYJIzxeBgiGR0Abqewm3bTDma+3yUMf z14jw6e/Gz6tQ1H4pz7o24uwxGnZvmlrB2xBzwaXKCfP4WqfxQgBMdFxmM8tmQOdM6Gqms MnoTtMfe9ZVwJWd07aS/W+ALQK7hbgnd9NhKwLveXzmZtxJQCXEidCnRUpayAg== Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qpUhR-0003BL-UF; Sun, 08 Oct 2023 10:24:05 -0400 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 1qpUhP-0003Aw-TJ for emacs-orgmode@gnu.org; Sun, 08 Oct 2023 10:24:03 -0400 Received: from mail-lf1-x12b.google.com ([2a00:1450:4864:20::12b]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qpUhO-0006Md-1E for emacs-orgmode@gnu.org; Sun, 08 Oct 2023 10:24:03 -0400 Received: by mail-lf1-x12b.google.com with SMTP id 2adb3069b0e04-50585357903so4892907e87.2 for ; Sun, 08 Oct 2023 07:24:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1696775040; x=1697379840; darn=gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=VmMPt2xDDZlmrZ7+O/FLTiHdvMPEQigJdmklXmopgAE=; b=E99sMbJtpjlvdgTUY16imuVJ+dOvKWdBAonWGzN3mwOO78PSW8uw4s2PJUo1sS7tRV OkakV7llwTafFjpdgeLmb9Pi1BIQtWiksn7Npwv7AGWonrUqlIDqpTtuCOoyZVEGxPXV O2HllI0tMZC3J4/tNq/VliXJJF5qTpwR/nkRsMIzPPtKhQLSBqI9tBPoSsLjIMj5KNbS vkcc2Whj/yaBymMmC7a9QzthWXC0XltCMCpwMV+KgDQbIyHiY2fkznNxhU43GlfhMOip gUcdxyPXibHdTAJK2GfSyOJyJZDGroPHO47h3eMDVT6mOJmPDOVVPYv93tDjyvnLretg hMYA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1696775040; x=1697379840; 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=VmMPt2xDDZlmrZ7+O/FLTiHdvMPEQigJdmklXmopgAE=; b=HmgBVpGo4iofWS1emzJ6FVYwGgUBukGtaHftSAotbFx2A4wz2tZqvn9XjWfH+ORlHA aSLmmLewei/m07SnzhWAHzHxFchNq6j7PYdJWtZMeASEoN5T703iZfAjz+/NWSnreVa5 DpkXcood5mMPD0RBbGXfw4IwpwWrBsig7/l46gNRm6/WEc6GDwox9xz3AwWz8zhTIwHH dGaUdnc1rGd2mv9VaNQG48/sgeWS/pwQq/rUmBoGPqgzflR/EQMVDVGC9wPPdkJpip/q RFwncEdk9to/KE56x7Mx3F4AV3Cxd93k9+YLWIlEh9adHP1gn649JrSZwXpIoWTlMFCZ Z/WQ== X-Gm-Message-State: AOJu0YxbNh6fR/k7XH9ftB54H0aD7G5/Eyo3ZfQIvj5wF3TA9KaXi0mf jT37V68HQ781xCVbm7khejwyJNfWFle3ljbVH2mtOdCaw7A= X-Google-Smtp-Source: AGHT+IEU0Ke81usJlPX8JrBXHxw3uC5mc5MLWemP6EFv9tzZhrE0tXfJ2f81VH+AGeaYQkJ1/Jg+RftVB8MAekFzNwk= X-Received: by 2002:a05:6512:2392:b0:503:3707:66ed with SMTP id c18-20020a056512239200b00503370766edmr14485492lfv.34.1696775039389; Sun, 08 Oct 2023 07:23:59 -0700 (PDT) MIME-Version: 1.0 References: <87edi9jsft.fsf@localhost> In-Reply-To: <87edi9jsft.fsf@localhost> From: Tomohisa Kuranari Date: Sun, 8 Oct 2023 23:23:47 +0900 Message-ID: Subject: Re: [PATCH] Fix org-[beginning|end]-of-line with arguments To: Ihor Radchenko Cc: emacs-orgmode@gnu.org Content-Type: multipart/mixed; boundary="0000000000007d5b7106073539e9" Received-SPF: pass client-ip=2a00:1450:4864:20::12b; envelope-from=tomohisa.kuranari@gmail.com; helo=mail-lf1-x12b.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-orgmode@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+larch=yhetil.org@gnu.org Sender: emacs-orgmode-bounces+larch=yhetil.org@gnu.org X-Migadu-Country: US X-Migadu-Flow: FLOW_IN X-Migadu-Queue-Id: 268AC64D2F X-Spam-Score: -7.42 X-Migadu-Spam-Score: -7.42 X-Migadu-Scanner: mx1.migadu.com X-TUID: LRZUpGyY6U4V --0000000000007d5b7106073539e9 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi, Ihor Thank you for your feedback. I found your guidance on writing a clearer message, quoting Elisp symbols, and the insights about indentation rules to be particularly valuable. Not using line-number-at-pos is truly a great suggestion. I've reworked the patch and also revised the commit message. I kindly request another review. If there are any issues, I will make further revisions. Finally, the copyright assignment process was completed on 2023/09/20. Thank you for letting me know. On Thu, Oct 5, 2023 at 7:03=E2=80=AFPM Ihor Radchenko = wrote: > > =E5=80=89=E6=88=90=E6=99=BA=E4=B9=85 writes= : > > > In the current implementation, org-special-ctrl-a/e may not operate as = expected. > > For example, executing (org-beginning-of-line 2) relocates the cursor > > to the start of the line, rather than after the heading symbols even > > if org-special-ctrl-a/e is t. > > (Movements to prior lines, such as (org-beginning-of-line 0), function > > correctly.) > > > This is my first patch submission. If there are any shortcomings or > > additional requirements needed, please do not hesitate to inform me. I > > am open to feedback and willing to make any necessary adjustments. > > Thanks for the patch, and especially for providing tests! > See my comments below. > > > Subject: [PATCH] lisp/org.el: Fix the issue with argumented function ca= lls > > The above message is not very clear. It would be better if you summarize > the commit purpose more precisely. For example, > "org-beginning/end-of-line: Fix when moving to different line" > > > * lisp/org.el (org-beginning-of-line, org-end-of-line): Fix issue with = org-special-ctrl-a/e not working correctly when moving with arguments > > Please, quote Elisp symbols like `org-special-ctrl-a/e'. Also, we > usually limit the line width to default `fill-column'. > > > - (when (or (> origin refpos) (=3D origin bol)) > > + (when (or (> origin refpos) > > + (=3D origin bol) > > + (/=3D (line-number-at-pos origin) (line-number-at-pos= bol))) > > This will work, but I am not a big fan of using `line-number-at-pos' - > it is rather slow. May simply check (< origin bol) > > > - (when (or (> origin after-bullet) (=3D (point) origin)) > > + (when (or (> origin after-bullet) > > + (=3D (point) origin) > > + (/=3D (line-number-at-pos origin) (line-number-at-pos= (point)))) > > Same here - (< origin (point)) > > > - (if (or (< origin tags) (=3D origin (line-end-position))) > > + (if (or (< origin tags) > > + (=3D origin (line-end-position)) > > + (/=3D (line-number-at-pos origin) (line-number-at-= pos (point)))) > > (> origin (line-end-position)) > > Finally, your patch is on the edge of legally allowed contribution we are > allowed to accept without copyright assignment. You may consider signing > the copyright form as described in > https://orgmode.org/worg/org-contribute.html#copyright. Or you can add > "TINYCHANGE" to the commit message (see > https://orgmode.org/worg/org-contribute.html#first-patch) > > -- > Ihor Radchenko // yantar92, > Org mode contributor, > Learn more about Org mode at . > Support Org development at , > or support my work at --=20 Tomohisa Kuranari Email: tomohisa.kuranari@gmail.com --0000000000007d5b7106073539e9 Content-Type: application/octet-stream; name="0001-org-beginning-end-of-line-Fix-when-moving-to-differe.patch" Content-Disposition: attachment; filename="0001-org-beginning-end-of-line-Fix-when-moving-to-differe.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lnhjhwvt0 RnJvbSA3MzljNjYzNmNkOWUwMTVlZDIxNGE2Y2NhZWQyMGNmNzUzMDFhOGQ1IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBUb21vaGlzYSBLdXJhbmFyaSA8dG9tb2hpc2Eua3VyYW5hcmlA Z21haWwuY29tPgpEYXRlOiBGcmksIDIyIFNlcCAyMDIzIDIyOjM4OjI2ICswOTAwClN1YmplY3Q6 IFtQQVRDSF0gb3JnLWJlZ2lubmluZy9lbmQtb2YtbGluZTogRml4IHdoZW4gbW92aW5nIHRvIGRp ZmZlcmVudCBsaW5lCgoqIGxpc3Avb3JnLmVsIChvcmctYmVnaW5uaW5nLW9mLWxpbmUsIG9yZy1l bmQtb2YtbGluZSk6IEZpeCBpc3N1ZSB3aXRoIGBvcmctc3BlY2lhbC1jdHJsLWEvZScgbm90IHdv cmtpbmcgY29ycmVjdGx5IHdoZW4gbW92aW5nIHRvIGRpZmZlcmVudCBsaW5lCiogdGVzdGluZy9s aXNwL3Rlc3Qtb3JnLmVsICh0ZXN0LW9yZy9iZWdpbm5pbmctb2YtbGluZSwgdGVzdC1vcmcvZW5k LW9mLWxpbmUpOiBBZGQgbmV3IHRlc3RzLgotLS0KIGxpc3Avb3JnLmVsICAgICAgICAgICAgICB8 ICA2ICsrLS0KIHRlc3RpbmcvbGlzcC90ZXN0LW9yZy5lbCB8IDYyICsrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysKIDIgZmlsZXMgY2hhbmdlZCwgNjUgaW5zZXJ0aW9ucygr KSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9saXNwL29yZy5lbCBiL2xpc3Avb3JnLmVs CmluZGV4IGQwYjIzNTVlYS4uN2NkMzEzYzMwIDEwMDY0NAotLS0gYS9saXNwL29yZy5lbAorKysg Yi9saXNwL29yZy5lbApAQCAtMjAzMzEsNyArMjAzMzEsNyBAQCBXaXRoIGFyZ3VtZW50IE4gbm90 IG5pbCBvciAxLCBtb3ZlIGZvcndhcmQgTiAtIDEgbGluZXMgZmlyc3QuIgogCShpZiAoZXEgc3Bl Y2lhbCAncmV2ZXJzZWQpCiAJICAgICh3aGVuIChhbmQgKD0gb3JpZ2luIGJvbCkgKGVxIGxhc3Qt Y29tbWFuZCB0aGlzLWNvbW1hbmQpKQogCSAgICAgIChnb3RvLWNoYXIgcmVmcG9zKSkKLQkgICh3 aGVuIChvciAoPiBvcmlnaW4gcmVmcG9zKSAoPSBvcmlnaW4gYm9sKSkKKwkgICh3aGVuIChvciAo PiBvcmlnaW4gcmVmcG9zKSAoPD0gb3JpZ2luIGJvbCkpCiAJICAgIChnb3RvLWNoYXIgcmVmcG9z KSkpKSkKICAgICAgKChhbmQgKGxvb2tpbmctYXQgb3JnLWxpc3QtZnVsbC1pdGVtLXJlKQogCSAg IChvcmctZWxlbWVudC10eXBlLXAKQEAgLTIwMzQ3LDcgKzIwMzQ3LDcgQEAgV2l0aCBhcmd1bWVu dCBOIG5vdCBuaWwgb3IgMSwgbW92ZSBmb3J3YXJkIE4gLSAxIGxpbmVzIGZpcnN0LiIKIAkoaWYg KGVxIHNwZWNpYWwgJ3JldmVyc2VkKQogCSAgICAod2hlbiAoYW5kICg9IChwb2ludCkgb3JpZ2lu KSAoZXEgbGFzdC1jb21tYW5kIHRoaXMtY29tbWFuZCkpCiAJICAgICAgKGdvdG8tY2hhciBhZnRl ci1idWxsZXQpKQotCSAgKHdoZW4gKG9yICg+IG9yaWdpbiBhZnRlci1idWxsZXQpICg9IChwb2lu dCkgb3JpZ2luKSkKKwkgICh3aGVuIChvciAoPiBvcmlnaW4gYWZ0ZXItYnVsbGV0KSAoPj0gKHBv aW50KSBvcmlnaW4pKQogCSAgICAoZ290by1jaGFyIGFmdGVyLWJ1bGxldCkpKSkpCiAgICAgIDs7 IE5vIHNwZWNpYWwgY29udGV4dC4gIFBvaW50IGlzIGFscmVhZHkgYXQgYmVnaW5uaW5nIG9mIGxp bmUuCiAgICAgICh0IG5pbCkpKSkKQEAgLTIwNDAyLDcgKzIwNDAyLDcgQEAgV2l0aCBhcmd1bWVu dCBOIG5vdCBuaWwgb3IgMSwgbW92ZSBmb3J3YXJkIE4gLSAxIGxpbmVzIGZpcnN0LiIKIAkJICAg KGdvdG8tY2hhciB0YWdzKQogCQkgKGVuZC1vZi1saW5lKSkpCiAJICAgICAgKHQKLQkgICAgICAg KGlmIChvciAoPCBvcmlnaW4gdGFncykgKD0gb3JpZ2luIChsaW5lLWVuZC1wb3NpdGlvbikpKQor CSAgICAgICAoaWYgKG9yICg8IG9yaWdpbiB0YWdzKSAoPj0gb3JpZ2luIChsaW5lLWVuZC1wb3Np dGlvbikpKQogCQkgICAoZ290by1jaGFyIHRhZ3MpCiAJCSAoZW5kLW9mLWxpbmUpKSkpKSkKICAg ICAgKChib3VuZC1hbmQtdHJ1ZS1wIHZpc3VhbC1saW5lLW1vZGUpCmRpZmYgLS1naXQgYS90ZXN0 aW5nL2xpc3AvdGVzdC1vcmcuZWwgYi90ZXN0aW5nL2xpc3AvdGVzdC1vcmcuZWwKaW5kZXggODM1 NWUyZDc3Li42M2ZkMTZiNDAgMTAwNjQ0Ci0tLSBhL3Rlc3RpbmcvbGlzcC90ZXN0LW9yZy5lbAor KysgYi90ZXN0aW5nL2xpc3AvdGVzdC1vcmcuZWwKQEAgLTQ0NjAsNiArNDQ2MCwxNiBAQCBhc2QK ICAgICAgKGxldCAoKG9yZy1zcGVjaWFsLWN0cmwtYS9lICcobmlsIC4gbmlsKSkpCiAgICAgICAg KG9yZy1iZWdpbm5pbmctb2YtbGluZSkKICAgICAgICAobG9va2luZy1hdCAiSGVhZGxpbmUiKSkp KQorICAoc2hvdWxkCisgICAob3JnLXRlc3Qtd2l0aC10ZW1wLXRleHQgIiogVE9ETyBbI0FdIEhl YWRsaW5lXG48cG9pbnQ+IgorICAgICAobGV0ICgob3JnLXNwZWNpYWwtY3RybC1hL2UgdCkpCisg ICAgICAgKG9yZy1iZWdpbm5pbmctb2YtbGluZSAwKQorICAgICAgIChsb29raW5nLWF0LXAgIkhl YWRsaW5lIikpKSkKKyAgKHNob3VsZAorICAgKG9yZy10ZXN0LXdpdGgtdGVtcC10ZXh0ICI8cG9p bnQ+XG4qIFRPRE8gWyNBXSBIZWFkbGluZSIKKyAgICAgKGxldCAoKG9yZy1zcGVjaWFsLWN0cmwt YS9lIHQpKQorICAgICAgIChvcmctYmVnaW5uaW5nLW9mLWxpbmUgMikKKyAgICAgICAobG9va2lu Zy1hdC1wICJIZWFkbGluZSIpKSkpCiAgIDs7IEF0IGFuIGhlYWRsaW5lIHdpdGggcmV2ZXJzZWQg bW92ZW1lbnQsIGZpcnN0IG1vdmUgdG8gYmVnaW5uaW5nIG9mCiAgIDs7IGxpbmUsIHRoZW4gdG8g dGhlIGJlZ2lubmluZyBvZiB0aXRsZS4KICAgKHNob3VsZApAQCAtNDQ4MCw2ICs0NDkwLDE4IEBA IGFzZAogCSAgICh0aGlzLWNvbW1hbmQgbGFzdC1jb21tYW5kKSkKICAgICAgICAoYW5kIChwcm9n biAob3JnLWJlZ2lubmluZy1vZi1saW5lKSAoYm9scCkpCiAJICAgIChwcm9nbiAob3JnLWJlZ2lu bmluZy1vZi1saW5lKSAobG9va2luZy1hdC1wICJIZWFkbGluZSIpKSkpKSkKKyAgKHNob3VsZAor ICAgKG9yZy10ZXN0LXdpdGgtdGVtcC10ZXh0ICIqIFRPRE8gSGVhZGxpbmVcbjxwb2ludD4iCisg ICAgIChsZXQgKChvcmctc3BlY2lhbC1jdHJsLWEvZSAncmV2ZXJzZWQpCisJICAgKHRoaXMtY29t bWFuZCBsYXN0LWNvbW1hbmQpKQorICAgICAgIChhbmQgKHByb2duIChvcmctYmVnaW5uaW5nLW9m LWxpbmUgMCkgKGJvbHApKQorCSAgICAocHJvZ24gKG9yZy1iZWdpbm5pbmctb2YtbGluZSkgKGxv b2tpbmctYXQtcCAiSGVhZGxpbmUiKSkpKSkpCisgIChzaG91bGQKKyAgIChvcmctdGVzdC13aXRo LXRlbXAtdGV4dCAiPHBvaW50PlxuKiBUT0RPIEhlYWRsaW5lIgorICAgICAobGV0ICgob3JnLXNw ZWNpYWwtY3RybC1hL2UgJ3JldmVyc2VkKQorCSAgICh0aGlzLWNvbW1hbmQgbGFzdC1jb21tYW5k KSkKKyAgICAgICAoYW5kIChwcm9nbiAob3JnLWJlZ2lubmluZy1vZi1saW5lIDIpIChib2xwKSkK KwkgICAgKHByb2duIChvcmctYmVnaW5uaW5nLW9mLWxpbmUpIChsb29raW5nLWF0LXAgIkhlYWRs aW5lIikpKSkpKQogICA7OyBBdCBhbiBpdGVtIHdpdGggc3BlY2lhbCBtb3ZlbWVudCwgZmlyc3Qg bW92ZSBhZnRlciB0byBiZWdpbm5pbmcKICAgOzsgb2YgdGl0bGUsIHRoZW4gdG8gdGhlIGJlZ2lu bmluZyBvZiBsaW5lLCByaW5zZSwgcmVwZWF0LgogICAoc2hvdWxkCkBAIC00NDg4LDYgKzQ1MTAs MTQgQEAgYXNkCiAgICAgICAgKGFuZCAocHJvZ24gKG9yZy1iZWdpbm5pbmctb2YtbGluZSkgKGxv b2tpbmctYXQtcCAiSXRlbSIpKQogCSAgICAocHJvZ24gKG9yZy1iZWdpbm5pbmctb2YtbGluZSkg KGJvbHApKQogCSAgICAocHJvZ24gKG9yZy1iZWdpbm5pbmctb2YtbGluZSkgKGxvb2tpbmctYXQt cCAiSXRlbSIpKSkpKSkKKyAgKHNob3VsZAorICAgKG9yZy10ZXN0LXdpdGgtdGVtcC10ZXh0ICIt IFsgXSBJdGVtXG48cG9pbnQ+IgorICAgICAobGV0ICgob3JnLXNwZWNpYWwtY3RybC1hL2UgdCkp CisgICAgICAgKG9yZy1iZWdpbm5pbmctb2YtbGluZSAwKSAobG9va2luZy1hdC1wICJJdGVtIikp KSkKKyAgKHNob3VsZAorICAgKG9yZy10ZXN0LXdpdGgtdGVtcC10ZXh0ICI8cG9pbnQ+XG4tIFsg XSBJdGVtIgorICAgICAobGV0ICgob3JnLXNwZWNpYWwtY3RybC1hL2UgdCkpCisgICAgICAgKG9y Zy1iZWdpbm5pbmctb2YtbGluZSAyKSAobG9va2luZy1hdC1wICJJdGVtIikpKSkKICAgOzsgQXQg YW4gaXRlbSB3aXRoIHJldmVyc2VkIG1vdmVtZW50LCBmaXJzdCBtb3ZlIHRvIGJlZ2lubmluZyBv ZgogICA7OyBsaW5lLCB0aGVuIHRvIHRoZSBiZWdpbm5pbmcgb2YgdGl0bGUuCiAgIChzaG91bGQK QEAgLTQ0OTYsNiArNDUyNiwxOCBAQCBhc2QKIAkgICAodGhpcy1jb21tYW5kIGxhc3QtY29tbWFu ZCkpCiAgICAgICAgKGFuZCAocHJvZ24gKG9yZy1iZWdpbm5pbmctb2YtbGluZSkgKGJvbHApKQog CSAgICAocHJvZ24gKG9yZy1iZWdpbm5pbmctb2YtbGluZSkgKGxvb2tpbmctYXQtcCAiSXRlbSIp KSkpKSkKKyAgKHNob3VsZAorICAgKG9yZy10ZXN0LXdpdGgtdGVtcC10ZXh0ICItIFtYXSBJdGVt XG48cG9pbnQ+IgorICAgICAobGV0ICgob3JnLXNwZWNpYWwtY3RybC1hL2UgJ3JldmVyc2VkKQor CSAgICh0aGlzLWNvbW1hbmQgbGFzdC1jb21tYW5kKSkKKyAgICAgICAoYW5kIChwcm9nbiAob3Jn LWJlZ2lubmluZy1vZi1saW5lIDApIChib2xwKSkKKwkgICAgKHByb2duIChvcmctYmVnaW5uaW5n LW9mLWxpbmUpIChsb29raW5nLWF0LXAgIkl0ZW0iKSkpKSkpCisgIChzaG91bGQKKyAgIChvcmct dGVzdC13aXRoLXRlbXAtdGV4dCAiPHBvaW50PlxuLSBbWF0gSXRlbSIKKyAgICAgKGxldCAoKG9y Zy1zcGVjaWFsLWN0cmwtYS9lICdyZXZlcnNlZCkKKwkgICAodGhpcy1jb21tYW5kIGxhc3QtY29t bWFuZCkpCisgICAgICAgKGFuZCAocHJvZ24gKG9yZy1iZWdpbm5pbmctb2YtbGluZSAyKSAoYm9s cCkpCisJICAgIChwcm9nbiAob3JnLWJlZ2lubmluZy1vZi1saW5lKSAobG9va2luZy1hdC1wICJJ dGVtIikpKSkpKQogICA7OyBMZWF2ZSBwb2ludCBiZWZvcmUgaW52aXNpYmxlIGNoYXJhY3RlcnMg YXQgY29sdW1uIDAuCiAgIChzaG91bGQKICAgIChvcmctdGVzdC13aXRoLXRlbXAtdGV4dCAiW1to dHRwczovL29yZ21vZGUub3JnXV08cG9pbnQ+IgpAQCAtNDU5OCw2ICs0NjQwLDE0IEBAIGFzZAog ICAgICAgIChhbmQgKHByb2duIChvcmctZW5kLW9mLWxpbmUpIChsb29raW5nLWF0LXAgIiA6dGFn OiIpKQogCSAgICAocHJvZ24gKG9yZy1lbmQtb2YtbGluZSkgKGVvbHApKQogCSAgICAocHJvZ24g KG9yZy1lbmQtb2YtbGluZSkgKGxvb2tpbmctYXQtcCAiIDp0YWc6IikpKSkpKQorICAoc2hvdWxk CisgICAob3JnLXRlc3Qtd2l0aC10ZW1wLXRleHQgIiogSGVhZGxpbmUxIDp0YWc6XG48cG9pbnQ+ IgorICAgICAobGV0ICgob3JnLXNwZWNpYWwtY3RybC1hL2UgdCkpCisgICAgICAgKG9yZy1lbmQt b2YtbGluZSAwKSAobG9va2luZy1hdC1wICIgOnRhZzoiKSkpKQorICAoc2hvdWxkCisgICAob3Jn LXRlc3Qtd2l0aC10ZW1wLXRleHQgIjxwb2ludD5cbiogSGVhZGxpbmUxIDp0YWc6XG4iCisgICAg IChsZXQgKChvcmctc3BlY2lhbC1jdHJsLWEvZSB0KSkKKyAgICAgICAob3JnLWVuZC1vZi1saW5l IDIpIChsb29raW5nLWF0LXAgIiA6dGFnOiIpKSkpCiAgIChzaG91bGQKICAgIChvcmctdGVzdC13 aXRoLXRlbXAtdGV4dCAiKiBIZWFkbGluZTJhIDp0YWc6XG4qKiBTdWIiCiAgICAgIChvcmctb3Zl cnZpZXcpCkBAIC00NjI1LDYgKzQ2NzUsMTggQEAgYXNkCiAJICAgKHRoaXMtY29tbWFuZCBsYXN0 LWNvbW1hbmQpKQogICAgICAgIChhbmQgKHByb2duIChvcmctZW5kLW9mLWxpbmUpIChlb2xwKSkK IAkgICAgKHByb2duIChvcmctZW5kLW9mLWxpbmUpIChsb29raW5nLWF0LXAgIiA6dGFnOiIpKSkp KSkKKyAgKHNob3VsZAorICAgKG9yZy10ZXN0LXdpdGgtdGVtcC10ZXh0ICIqIEhlYWRsaW5lMyA6 dGFnOlxuPHBvaW50PiIKKyAgICAgKGxldCAoKG9yZy1zcGVjaWFsLWN0cmwtYS9lICdyZXZlcnNl ZCkKKwkgICAodGhpcy1jb21tYW5kIGxhc3QtY29tbWFuZCkpCisgICAgICAgKGFuZCAocHJvZ24g KG9yZy1lbmQtb2YtbGluZSAwKSAoZW9scCkpCisJICAgIChwcm9nbiAob3JnLWVuZC1vZi1saW5l KSAobG9va2luZy1hdC1wICIgOnRhZzoiKSkpKSkpCisgIChzaG91bGQKKyAgIChvcmctdGVzdC13 aXRoLXRlbXAtdGV4dCAiPHBvaW50PlxuKiBIZWFkbGluZTMgOnRhZzpcbiIKKyAgICAgKGxldCAo KG9yZy1zcGVjaWFsLWN0cmwtYS9lICdyZXZlcnNlZCkKKwkgICAodGhpcy1jb21tYW5kIGxhc3Qt Y29tbWFuZCkpCisgICAgICAgKGFuZCAocHJvZ24gKG9yZy1lbmQtb2YtbGluZSAyKSAoZW9scCkp CisJICAgIChwcm9nbiAob3JnLWVuZC1vZi1saW5lKSAobG9va2luZy1hdC1wICIgOnRhZzoiKSkp KSkpCiAgIChzaG91bGQKICAgIChvcmctdGVzdC13aXRoLXRlbXAtdGV4dCAiKiBIZWFkbGluZTJh IDp0YWc6XG4qKiBTdWIiCiAgICAgIChvcmctb3ZlcnZpZXcpCi0tIAoyLjQyLjAKCg== --0000000000007d5b7106073539e9--