From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Shingo Tanaka Newsgroups: gmane.emacs.bugs Subject: bug#48149: 27.2; Wrong underline width when the line char has a width of 2 Date: Sun, 02 May 2021 10:12:43 +0900 Message-ID: <87fsz62b1w.wl-shingo.fg8@gmail.com> Mime-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Content-Type: multipart/mixed; boundary="Multipart_Sun_May__2_10:12:43_2021-1" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="15582"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Wanderlust/2.15.9 (Almost Unreal) SEMI-EPG/1.14.7 (Harue) FLIM-LB/1.14.9 (=?UTF-8?Q?Goj=C5=8D?=) APEL-LB/10.8 EasyPG/1.0.0 Emacs/27.2 (aarch64-unknown-linux-gnu) MULE/6.0 (HANACHIRUSATO) To: 48149@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sun May 02 03:13:10 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 1ld0fW-0003x5-Lp for geb-bug-gnu-emacs@m.gmane-mx.org; Sun, 02 May 2021 03:13:10 +0200 Original-Received: from localhost ([::1]:54770 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ld0fV-00074W-EQ for geb-bug-gnu-emacs@m.gmane-mx.org; Sat, 01 May 2021 21:13:09 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:39464) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ld0fP-00074N-0q for bug-gnu-emacs@gnu.org; Sat, 01 May 2021 21:13:03 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:56180) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1ld0fO-0007CG-Ot for bug-gnu-emacs@gnu.org; Sat, 01 May 2021 21:13:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1ld0fO-0007xt-JO for bug-gnu-emacs@gnu.org; Sat, 01 May 2021 21:13:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Shingo Tanaka Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 02 May 2021 01:13:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 48149 X-GNU-PR-Package: emacs X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.161991797230608 (code B ref -1); Sun, 02 May 2021 01:13:02 +0000 Original-Received: (at submit) by debbugs.gnu.org; 2 May 2021 01:12:52 +0000 Original-Received: from localhost ([127.0.0.1]:39492 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ld0fD-0007xc-NE for submit@debbugs.gnu.org; Sat, 01 May 2021 21:12:51 -0400 Original-Received: from lists.gnu.org ([209.51.188.17]:56382) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ld0fB-0007xW-QH for submit@debbugs.gnu.org; Sat, 01 May 2021 21:12:50 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:39462) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ld0fB-000745-LM for bug-gnu-emacs@gnu.org; Sat, 01 May 2021 21:12:49 -0400 Original-Received: from mail-pj1-x102a.google.com ([2607:f8b0:4864:20::102a]:44991) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1ld0fA-00073H-0M for bug-gnu-emacs@gnu.org; Sat, 01 May 2021 21:12:49 -0400 Original-Received: by mail-pj1-x102a.google.com with SMTP id m6-20020a17090a8586b02901507e1acf0fso1334271pjn.3 for ; Sat, 01 May 2021 18:12:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=date:message-id:from:to:subject:user-agent:mime-version; bh=dTJ7NKgFq5zWxVtXRdTJ1EMz2t0/9GG1McRxJFzWA8U=; b=SztKbeJT6Lvcd7rUCnXxRe1brhIf4z0wxYnVUJueew8dvfeFbbOjGnyMC3C6uQlFfy FQ3WaIabPzvsYDKzGo2v/pvMnvH9yxZA7EJTDAwOMiHA62TgHVOZagmrVA0yn5B/1FDg HtQWlkRvXnyNly35RQRT6qonVH1ELkQxJke0fDuhi/PqqQF6FTkS+4UpUXGJmHvstN75 LY6ONjtNkP8qkTO0fCq/AuZ87sPCaNrU8bHYJ3191l8vWHACYPPlEueo2obwN5O/gcIg yV7JZnuocnLdD/HJYOAF3Ko7z68DkecfdgwR91uhM0nzkMTEv/medJBTs23PH4bcbfET Bz3Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:message-id:from:to:subject:user-agent :mime-version; bh=dTJ7NKgFq5zWxVtXRdTJ1EMz2t0/9GG1McRxJFzWA8U=; b=RB1Ni5VoD50pVAkx/RX1aZ1RI8R6k2KOcXHCVaCtun8Yh4Zpk8TswVS6O12KkmqwRg L0QQp5KdUeCAyLuTmMlzXF57Ss/D3q9SGXn2GyWEQgmVeHHt+tP9C+pz3eSMURsVUNPs vUKp/5ToBWYcTDQpWpNr1fuhlU9hyWCrmlFcqOTiAJ6/YAU3q2g+NxOIvKRiz2ROm5/B edl3GxT8hkdBRzxHnJcSLRR+AkPc9Ez27I6mX4abvp4WnkOnz2fVQ0Tg5MV4U58rKlPE 9QYl+6Zvk2PC3EBImYLR4luv5Jf4wdB1ZR28YLfE58od6OWzPEhVLpPX/Ae0Mt3bxY85 4Kfw== X-Gm-Message-State: AOAM533yWF9yaMryLgTLESiobcJ01sl+GIfaHPbYibpNc/3X1qE2R/Ip u3irZ0YFdvFAbs4b5DkzCnbTke5NSKzFGQ== X-Google-Smtp-Source: ABdhPJyYjPVCv1M2LJUDpa6XoGEGFRLpdXmLAg1RNADwSQeJtMEuKLcHqTxsVRIoENhJwWMcyQ4e1A== X-Received: by 2002:a17:902:d70f:b029:ec:b679:f122 with SMTP id w15-20020a170902d70fb02900ecb679f122mr13348984ply.38.1619917965959; Sat, 01 May 2021 18:12:45 -0700 (PDT) Original-Received: from shingo-desktop.gmail.com ([240d:1a:6f4:6b00:5514:ce7d:f5f9:375b]) by smtp.gmail.com with ESMTPSA id m9sm6159316pgt.65.2021.05.01.18.12.44 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 01 May 2021 18:12:45 -0700 (PDT) Received-SPF: pass client-ip=2607:f8b0:4864:20::102a; envelope-from=shingo.fg8@gmail.com; helo=mail-pj1-x102a.google.com X-Spam_score_int: -17 X-Spam_score: -1.8 X-Spam_bar: - X-Spam_report: (-1.8 / 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_ENVFROM_END_DIGIT=0.25, 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: 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:205373 Archived-At: --Multipart_Sun_May__2_10:12:43_2021-1 Content-Type: text/plain; charset=ISO-2022-JP Hi, When exporting org-mode document to plain text (either ascii/unicode/utf-8) with `org-export-dispatch', Emacs inserts lines under headlines, inline tasks, table rows and titles of the document, TOC, list of listings, list of tables and footnotes. The problem is it inserts too long (double width) line when the line character has a width of 2. Those lines are made of 3 types of characters below (in ox-ascii.el): 1) org-ascii-underline 2) (if (eq (plist-get info :ascii-charset) 'utf-8) ?─ ?_) 3) (if utf8p ?━ ?_) In case of 1), it correctly takes account of the case in which the character has a width of 2 in `org-ascii--build-title', by dividing the line width by `(char-width under-char)' (line 700-701), maybe because the character is user configurable and its width in unknown. However, in case of 2) and 3), maybe because the characters is embedded in the code, it looks like only considering the character always has a width of 1. But the reality is character ?─ or ?━ can have a width of 2 in the screen displayed with some fonts (ex. "Noto Sans Mono CJK JP"), and in that case the line width gets doubled of the expected width. Attached one is a potential patch. The basic concepts are: a) Do the same in case of 2) and 3) as in case of 1) (dividing the line width by `(char-width under-char)', assuming `char-width-table' is correctly set) b) Prefer the longer line width if the width is odd, even in case of 1) (adding `(1- (char-width under-char))' to dividend, just because it should be more beautiful ;-) ) Regards, --- Shingo Tanaka --Multipart_Sun_May__2_10:12:43_2021-1 Content-Type: application/octet-stream; type=patch Content-Disposition: attachment; filename="ox-ascii.el.patch" Content-Transfer-Encoding: base64 LS0tIG94LWFzY2lpLmVsLm9yZwkyMDIxLTAzLTI2IDA5OjI4OjQ0LjAwMDAwMDAwMCArMDkwMAor Kysgb3gtYXNjaWkuZWwJMjAyMS0wNS0wMiAwOTowMjo0MS4xNjg1NjUzNjIgKzA5MDAKQEAgLTY5 Nyw3ICs2OTcsOCBAQAogCQkJICAgICAgKHBsaXN0LWdldCBpbmZvIDphc2NpaS11bmRlcmxpbmUp KSkpKSkKIAkgKGFuZCB1bmRlci1jaGFyCiAJICAgICAgKGNvbmNhdCAiXG4iCi0JCSAgICAgICht YWtlLXN0cmluZyAoLyAoc3RyaW5nLXdpZHRoIGZpcnN0LXBhcnQpCisJCSAgICAgIChtYWtlLXN0 cmluZyAoLyAoKyAoc3RyaW5nLXdpZHRoIGZpcnN0LXBhcnQpCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICgxLSAoY2hhci13aWR0aCB1bmRlci1jaGFyKSkpCiAJCQkJ ICAgICAgKGNoYXItd2lkdGggdW5kZXItY2hhcikpCiAJCQkJICAgdW5kZXItY2hhcikpKSkpKSkp CiAKQEAgLTc0OCwxMSArNzQ5LDEzIEBACiBjb250ZW50cyBhY2NvcmRpbmcgdG8gdGhlIHNwZWNp ZmllZCBzY29wZS4iCiAgIChjb25jYXQKICAgICh1bmxlc3Mgc2NvcGUKLSAgICAgKGxldCAoKHRp dGxlIChvcmctYXNjaWktLXRyYW5zbGF0ZSAiVGFibGUgb2YgQ29udGVudHMiIGluZm8pKSkKKyAg ICAgKGxldCAoKHRpdGxlIChvcmctYXNjaWktLXRyYW5zbGF0ZSAiVGFibGUgb2YgQ29udGVudHMi IGluZm8pKQorICAgICAgICAgICAodW5kZXItY2hhciAoaWYgKGVxIChwbGlzdC1nZXQgaW5mbyA6 YXNjaWktY2hhcnNldCkgJ3V0Zi04KSA/4pSAID9fKSkpCiAgICAgICAgKGNvbmNhdCB0aXRsZSAi XG4iCiAJICAgICAgIChtYWtlLXN0cmluZwotCQkoc3RyaW5nLXdpZHRoIHRpdGxlKQotCQkoaWYg KGVxIChwbGlzdC1nZXQgaW5mbyA6YXNjaWktY2hhcnNldCkgJ3V0Zi04KSA/4pSAID9fKSkKKwkJ KC8gKCsgKHN0cmluZy13aWR0aCB0aXRsZSkgKDEtIChjaGFyLXdpZHRoIHVuZGVyLWNoYXIpKSkK KyAgICAgICAgICAgICAgICAgICAoY2hhci13aWR0aCB1bmRlci1jaGFyKSkKKwkJdW5kZXItY2hh cikKIAkgICAgICAgIlxuXG4iKSkpCiAgICAobGV0ICgodGV4dC13aWR0aAogCSAgKGlmIGtleXdv cmQgKG9yZy1hc2NpaS0tY3VycmVudC10ZXh0LXdpZHRoIGtleXdvcmQgaW5mbykKQEAgLTc3Niwx MSArNzc5LDEzIEBACiAKIEtFWVdPUkQgaXMgdGhlIGtleXdvcmQgdGhhdCBpbml0aWF0ZWQgdGhl IGxpc3Qgb2YgbGlzdGluZ3MKIGdlbmVyYXRpb24uICBJTkZPIGlzIGEgcGxpc3QgdXNlZCBhcyBh IGNvbW11bmljYXRpb24gY2hhbm5lbC4iCi0gIChsZXQgKCh0aXRsZSAob3JnLWFzY2lpLS10cmFu c2xhdGUgIkxpc3Qgb2YgTGlzdGluZ3MiIGluZm8pKSkKKyAgKGxldCAoKHRpdGxlIChvcmctYXNj aWktLXRyYW5zbGF0ZSAiTGlzdCBvZiBMaXN0aW5ncyIgaW5mbykpCisgICAgICAgICh1bmRlci1j aGFyIChpZiAoZXEgKHBsaXN0LWdldCBpbmZvIDphc2NpaS1jaGFyc2V0KSAndXRmLTgpID/ilIAg P18pKSkKICAgICAoY29uY2F0CiAgICAgIHRpdGxlICJcbiIKLSAgICAgKG1ha2Utc3RyaW5nIChz dHJpbmctd2lkdGggdGl0bGUpCi0JCSAgKGlmIChlcSAocGxpc3QtZ2V0IGluZm8gOmFzY2lpLWNo YXJzZXQpICd1dGYtOCkgP+KUgCA/XykpCisgICAgIChtYWtlLXN0cmluZyAoLyAoKyAoc3RyaW5n LXdpZHRoIHRpdGxlKSAoMS0gKGNoYXItd2lkdGggdW5kZXItY2hhcikpKQorICAgICAgICAgICAg ICAgICAgICAgKGNoYXItd2lkdGggdW5kZXItY2hhcikpCisJCSAgdW5kZXItY2hhcikKICAgICAg IlxuXG4iCiAgICAgIChsZXQgKCh0ZXh0LXdpZHRoCiAJICAgIChpZiBrZXl3b3JkIChvcmctYXNj aWktLWN1cnJlbnQtdGV4dC13aWR0aCBrZXl3b3JkIGluZm8pCkBAIC04MTYsMTEgKzgyMSwxMyBA QAogCiBLRVlXT1JEIGlzIHRoZSBrZXl3b3JkIHRoYXQgaW5pdGlhdGVkIHRoZSBsaXN0IG9mIHRh YmxlcwogZ2VuZXJhdGlvbi4gIElORk8gaXMgYSBwbGlzdCB1c2VkIGFzIGEgY29tbXVuaWNhdGlv biBjaGFubmVsLiIKLSAgKGxldCAoKHRpdGxlIChvcmctYXNjaWktLXRyYW5zbGF0ZSAiTGlzdCBv ZiBUYWJsZXMiIGluZm8pKSkKKyAgKGxldCAoKHRpdGxlIChvcmctYXNjaWktLXRyYW5zbGF0ZSAi TGlzdCBvZiBUYWJsZXMiIGluZm8pKQorICAgICAgICAodW5kZXItY2hhciAoaWYgKGVxIChwbGlz dC1nZXQgaW5mbyA6YXNjaWktY2hhcnNldCkgJ3V0Zi04KSA/4pSAID9fKSkpCiAgICAgKGNvbmNh dAogICAgICB0aXRsZSAiXG4iCi0gICAgIChtYWtlLXN0cmluZyAoc3RyaW5nLXdpZHRoIHRpdGxl KQotCQkgIChpZiAoZXEgKHBsaXN0LWdldCBpbmZvIDphc2NpaS1jaGFyc2V0KSAndXRmLTgpID/i lIAgP18pKQorICAgICAobWFrZS1zdHJpbmcgKC8gKCsgKHN0cmluZy13aWR0aCB0aXRsZSkgKDEt IChjaGFyLXdpZHRoIHVuZGVyLWNoYXIpKSkKKyAgICAgICAgICAgICAgICAgICAgIChjaGFyLXdp ZHRoIHVuZGVyLWNoYXIpKQorCQkgIHVuZGVyLWNoYXIpCiAgICAgICJcblxuIgogICAgICAobGV0 ICgodGV4dC13aWR0aAogCSAgICAoaWYga2V5d29yZCAob3JnLWFzY2lpLS1jdXJyZW50LXRleHQt d2lkdGgga2V5d29yZCBpbmZvKQpAQCAtMTAzMCw2ICsxMDM3LDcgQEAKICAgICAgIDs7IEFVVEhP UiBhbmQgaXRzIEVNQUlMIGFyZSBib3RoIG92ZXJsaW5lZCBhbmQgYW4gdW5kZXJsaW5lZCwKICAg ICAgIDs7IGNlbnRlcmVkLiAgRGF0ZSBpcyBqdXN0IGJlbG93LCBhbHNvIGNlbnRlcmVkLgogICAg ICAgKGxldCogKCh1dGY4cCAoZXEgKHBsaXN0LWdldCBpbmZvIDphc2NpaS1jaGFyc2V0KSAndXRm LTgpKQorICAgICAgICAgICAgIChsaW5lLWNoYXIgKGlmIHV0ZjhwID/ilIEgP18pKQogCSAgICAg OzsgRm9ybWF0IFRJVExFLiAgSXQgbWF5IGJlIGZpbGxlZCBpZiBpdCBpcyB0b28gd2lkZSwKIAkg ICAgIDs7IHRoYXQgaXMgd2lkZXIgdGhhbiB0aGUgdHdvIHRoaXJkcyBvZiB0aGUgdG90YWwgd2lk dGguCiAJICAgICAodGl0bGUtbGVuIChtaW4gKGFwcGx5ICMnbWF4CkBAIC0xMDQyLDExICsxMDUw LDE0IEBACiAJCQkJICAgKG9yZy1hc2NpaS0tZmlsbC1zdHJpbmcgc3VidGl0bGUgdGl0bGUtbGVu IGluZm8pKSkKIAkgICAgIChsaW5lCiAJICAgICAgKG1ha2Utc3RyaW5nCi0JICAgICAgIChtaW4g KCsgKG1heCB0aXRsZS1sZW4KLQkJCSAgICAoc3RyaW5nLXdpZHRoIChvciBhdXRob3IgIiIpKQot CQkJICAgIChzdHJpbmctd2lkdGggKG9yIGVtYWlsICIiKSkpCi0JCSAgICAgICAyKQotCQkgICAg dGV4dC13aWR0aCkgKGlmIHV0ZjhwID/ilIEgP18pKSkpCisJICAgICAgICgvICgrIChtaW4gKCsg KG1heCB0aXRsZS1sZW4KKwkJCSAgICAgICAoc3RyaW5nLXdpZHRoIChvciBhdXRob3IgIiIpKQor CQkJICAgICAgIChzdHJpbmctd2lkdGggKG9yIGVtYWlsICIiKSkpCisJCSAgICAgICAgICAyKQor CQkgICAgICAgICAgdGV4dC13aWR0aCkKKyAgICAgICAgICAgICAgICAgICAgICgxLSAoY2hhci13 aWR0aCBsaW5lLWNoYXIpKSkKKyAgICAgICAgICAgICAgICAgIChjaGFyLXdpZHRoIGxpbmUtY2hh cikpCisgICAgICAgICAgICAgICBsaW5lLWNoYXIpKSkKIAkob3JnLWFzY2lpLS1qdXN0aWZ5LWxp bmVzCiAJIChjb25jYXQgbGluZSAiXG4iCiAJCSAodW5sZXNzIHV0ZjhwICJcbiIpCkBAIC0xMDc5 LDEyICsxMDkwLDE1IEBACiAJICh3aGVuIGRlZmluaXRpb25zCiAJICAgKGNvbmNhdAogCSAgICAi XG5cblxuIgotCSAgICAobGV0ICgodGl0bGUgKG9yZy1hc2NpaS0tdHJhbnNsYXRlICJGb290bm90 ZXMiIGluZm8pKSkKKwkgICAgKGxldCAoKHRpdGxlIChvcmctYXNjaWktLXRyYW5zbGF0ZSAiRm9v dG5vdGVzIiBpbmZvKSkKKyAgICAgICAgICAgICAgICAgICh1bmRlci1jaGFyIChpZiAoZXEgKHBs aXN0LWdldCBpbmZvIDphc2NpaS1jaGFyc2V0KSAndXRmLTgpCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgP+KUgCA/XykpKQogCSAgICAgIChjb25jYXQKIAkgICAgICAgdGl0bGUg IlxuIgogCSAgICAgICAobWFrZS1zdHJpbmcKLQkJKHN0cmluZy13aWR0aCB0aXRsZSkKLQkJKGlm IChlcSAocGxpc3QtZ2V0IGluZm8gOmFzY2lpLWNoYXJzZXQpICd1dGYtOCkgP+KUgCA/XykpKSkK KwkJKC8gKCsgKHN0cmluZy13aWR0aCB0aXRsZSkgKDEtIChjaGFyLXdpZHRoIHVuZGVyLWNoYXIp KSkKKyAgICAgICAgICAgICAgICAgICAoY2hhci13aWR0aCB1bmRlci1jaGFyKSkKKwkJdW5kZXIt Y2hhcikpKQogCSAgICAiXG5cbiIKIAkgICAgKGxldCAoKHRleHQtd2lkdGggKC0gKHBsaXN0LWdl dCBpbmZvIDphc2NpaS10ZXh0LXdpZHRoKQogCQkJCSBnbG9iYWwtbWFyZ2luKSkpCkBAIC0xMzgx LDExICsxMzk1LDE0IEBACiBTZWUgYG9yZy1hc2NpaS1mb3JtYXQtaW5saW5ldGFzay1mdW5jdGlv bicgZm9yIGEgZGVzY3JpcHRpb24KIG9mIHRoZSBwYXJhbWV0ZXJzLiIKICAgKGxldCogKCh1dGY4 cCAoZXEgKHBsaXN0LWdldCBpbmZvIDphc2NpaS1jaGFyc2V0KSAndXRmLTgpKQotCSAod2lkdGgg KG9yIHdpZHRoIChwbGlzdC1nZXQgaW5mbyA6YXNjaWktaW5saW5ldGFzay13aWR0aCkpKSkKKwkg KHdpZHRoIChvciB3aWR0aCAocGxpc3QtZ2V0IGluZm8gOmFzY2lpLWlubGluZXRhc2std2lkdGgp KSkKKyAgICAgICAgICh1bmRlci1jaGFyIChpZiB1dGY4cCA/4pSBID9fKSkpCiAgICAgKG9yZy1h c2NpaS0taW5kZW50LXN0cmluZwogICAgICAoY29uY2F0CiAgICAgICA7OyBUb3AgbGluZSwgd2l0 aCBhbiBhZGRpdGlvbmFsIGJsYW5rIGxpbmUgaWYgbm90IGluIFVURi04LgotICAgICAgKG1ha2Ut c3RyaW5nIHdpZHRoIChpZiB1dGY4cCA/4pSBID9fKSkgIlxuIgorICAgICAgKG1ha2Utc3RyaW5n ICgvICgrIHdpZHRoICgxLSAoY2hhci13aWR0aCB1bmRlci1jaGFyKSkpCisgICAgICAgICAgICAg ICAgICAgICAgKGNoYXItd2lkdGggdW5kZXItY2hhcikpCisgICAgICAgICAgICAgICAgICAgdW5k ZXItY2hhcikgIlxuIgogICAgICAgKHVubGVzcyB1dGY4cCAoY29uY2F0IChtYWtlLXN0cmluZyB3 aWR0aCA/ICkgIlxuIikpCiAgICAgICA7OyBBZGQgdGl0bGUuICBGaWxsIGl0IGlmIHdpZGVyIHRo YW4gaW5saW5ldGFzay4KICAgICAgIChsZXQgKCh0aXRsZSAob3JnLWFzY2lpLS1idWlsZC10aXRs ZSBpbmxpbmV0YXNrIGluZm8gd2lkdGgpKSkKQEAgLTEzOTUsOSArMTQxMiwxNCBAQAogICAgICAg OzsgSWYgQ09OVEVOVFMgaXMgbm90IGVtcHR5LCBpbnNlcnQgaXQgYWxvbmcgd2l0aAogICAgICAg OzsgYSBzZXBhcmF0b3IuCiAgICAgICAod2hlbiAob3JnLXN0cmluZy1udy1wIGNvbnRlbnRzKQot ICAgICAgICAoY29uY2F0IChtYWtlLXN0cmluZyB3aWR0aCAoaWYgdXRmOHAgP+KUgCA/LSkpICJc biIgY29udGVudHMpKQorICAgICAgICAoY29uY2F0IChtYWtlLXN0cmluZyAoLyAoKyB3aWR0aCAo MS0gKGNoYXItd2lkdGggdW5kZXItY2hhcikpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAoY2hhci13aWR0aCB1bmRlci1jaGFyKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgdW5kZXItY2hhcikKKyAgICAgICAgICAgICAgICAiXG4iIGNvbnRlbnRzKSkKICAgICAgIDs7 IEJvdHRvbSBsaW5lLgotICAgICAgKG1ha2Utc3RyaW5nIHdpZHRoIChpZiB1dGY4cCA/4pSBID9f KSkpCisgICAgICAobWFrZS1zdHJpbmcgKC8gKCsgd2lkdGggKDEtIChjaGFyLXdpZHRoIHVuZGVy LWNoYXIpKSkKKyAgICAgICAgICAgICAgICAgICAgICAoY2hhci13aWR0aCB1bmRlci1jaGFyKSkK KyAgICAgICAgICAgICAgICAgICB1bmRlci1jaGFyKSkKICAgICAgOzsgRmx1c2ggdGhlIGlubGlu ZXRhc2sgdG8gdGhlIHJpZ2h0LgogICAgICAoLSAocGxpc3QtZ2V0IGluZm8gOmFzY2lpLXRleHQt d2lkdGgpIChwbGlzdC1nZXQgaW5mbyA6YXNjaWktZ2xvYmFsLW1hcmdpbikKIAkoaWYgKG5vdCAo b3JnLWV4cG9ydC1nZXQtcGFyZW50LWhlYWRsaW5lIGlubGluZXRhc2spKSAwCkBAIC0xOTQ4LDcg KzE5NzAsOCBAQAogCQkob3JnLWVsZW1lbnQtbWFwIHRhYmxlLXJvdyAndGFibGUtY2VsbAogCQkg IChsYW1iZGEgKGNlbGwpCiAJCSAgICAobGV0ICgod2lkdGggKG9yZy1hc2NpaS0tdGFibGUtY2Vs bC13aWR0aCBjZWxsIGluZm8pKQotCQkJICAoYm9yZGVycyAob3JnLWV4cG9ydC10YWJsZS1jZWxs LWJvcmRlcnMgY2VsbCBpbmZvKSkpCisJCQkgIChib3JkZXJzIChvcmctZXhwb3J0LXRhYmxlLWNl bGwtYm9yZGVycyBjZWxsIGluZm8pKQorICAgICAgICAgICAgICAgICAgICAgICAgICAoaG9yaXot Y2hhciAoc3RyaW5nLXRvLWNoYXIgaG9yaXopKSkKIAkJICAgICAgKGNvbmNhdAogCQkgICAgICAg OzsgSW4gb3JkZXIgdG8ga25vdyBpZiBDRUxMIHN0YXJ0cyB0aGUgcm93LCBkbwogCQkgICAgICAg Ozsgbm90IGNvbXBhcmUgaXQgd2l0aCB0aGUgZmlyc3QgY2VsbCBpbiB0aGUKQEAgLTE5NjAsNyAr MTk4Myw5IEBACiAJCQkJCSdpZGVudGl0eSBpbmZvIHQpCiAJCQkJICAgICAgY2VsbCkpCiAJCQkg bGNvcm5lcikKLQkJICAgICAgIChtYWtlLXN0cmluZyAoKyAyIHdpZHRoKSAoc3RyaW5nLXRvLWNo YXIgaG9yaXopKQorCQkgICAgICAgKG1ha2Utc3RyaW5nICgvICgrIDIgd2lkdGggKDEtIChjaGFy LXdpZHRoIGhvcml6LWNoYXIpKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIChjaGFyLXdpZHRoIGhvcml6LWNoYXIpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgaG9yaXotY2hhcikKIAkJICAgICAgIChjb25kCiAJCQkoKG5vdCAobWVtcSAncmln aHQgYm9yZGVycykpIG5pbCkKIAkJCSgoZXEgKGNhciAobGFzdCAob3JnLWVsZW1lbnQtY29udGVu dHMgdGFibGUtcm93KSkpIGNlbGwpCg== --Multipart_Sun_May__2_10:12:43_2021-1--