From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Dmitry Gutov Newsgroups: gmane.emacs.bugs Subject: bug#54702: 29.0.50; ruby-mode indentation: endless methods Date: Fri, 16 Dec 2022 02:33:17 +0200 Message-ID: <0178ae56-21d9-55e9-68f6-b2e8e2a483ff@yandex.ru> References: <2136fe2e-85dd-8a3f-dc7b-ee7a8389dc76@yandex.ru> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------wMUXI2kQRDUdLy5IALW5xLPt" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="20410"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.4.2 Cc: 54702@debbugs.gnu.org To: Aaron Jensen Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Fri Dec 16 01:34:25 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 1p5ygC-00053a-ID for geb-bug-gnu-emacs@m.gmane-mx.org; Fri, 16 Dec 2022 01:34:24 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1p5yfs-0003Ox-Vs; Thu, 15 Dec 2022 19:34:05 -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 1p5yfr-0003Om-HD for bug-gnu-emacs@gnu.org; Thu, 15 Dec 2022 19:34:03 -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 1p5yfr-0001zA-1S for bug-gnu-emacs@gnu.org; Thu, 15 Dec 2022 19:34:03 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1p5yfq-00069y-FC for bug-gnu-emacs@gnu.org; Thu, 15 Dec 2022 19:34:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Dmitry Gutov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 16 Dec 2022 00:34:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 54702 X-GNU-PR-Package: emacs Original-Received: via spool by 54702-submit@debbugs.gnu.org id=B54702.167115081123663 (code B ref 54702); Fri, 16 Dec 2022 00:34:02 +0000 Original-Received: (at 54702) by debbugs.gnu.org; 16 Dec 2022 00:33:31 +0000 Original-Received: from localhost ([127.0.0.1]:45844 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1p5yfK-00069b-Ac for submit@debbugs.gnu.org; Thu, 15 Dec 2022 19:33:30 -0500 Original-Received: from mail-wr1-f54.google.com ([209.85.221.54]:43779) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1p5yfG-00069L-CK for 54702@debbugs.gnu.org; Thu, 15 Dec 2022 19:33:29 -0500 Original-Received: by mail-wr1-f54.google.com with SMTP id h12so1010708wrv.10 for <54702@debbugs.gnu.org>; Thu, 15 Dec 2022 16:33:26 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=in-reply-to:from:references:cc:to:content-language:subject :user-agent:mime-version:date:message-id:sender:from:to:cc:subject :date:message-id:reply-to; bh=rSjmGGFTAQZgVVgL9X8WY9Z82pPeeTksCRBzmARDL7A=; b=ONNtRvLRc1lt9UATDEzTcralrF3S1QJCPsB+GA66CW6khSwrfHEX5nSkBsm5iayFkp yxVBBn7Uv7PCzApjanRE/e14rP5xMnckiD/bjmA3AniySc/0ZZ6fgcgG1BXHrFGtyQNc uoSzKLarvp6Eow2imsxSTwHyH8RRklTxqrYMRfaCv1QwpOwZTjUacCgCgbQVQcc13QVx Uo6BhgByBdZCyZiqby+TTtuTJ+uZsBi2Fqmzf8d+zb/CbsseOcaLPda5V+6L4J1EEh6z HAeuAlTDK2smmD2yAqo8jfAXHvPhlTD/bNkh/XEl32YGsNGsVhTf2Uvb7L7/b0+6t57Z t+mg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:from:references:cc:to:content-language:subject :user-agent:mime-version:date:message-id:sender:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=rSjmGGFTAQZgVVgL9X8WY9Z82pPeeTksCRBzmARDL7A=; b=U6IcgcIVNfEKuaYiDQwkYarm6DsqW0ANle0Qjo3ssfvz3DWGzGB8kWb+ShlcWz1qkU SCR/dKVZNWsLIjJJAncz3MYDy9p9bft+Tf/H32+DnF9KGJT6xhfvBsyJXEjmtTiFv5fi KeZkNyDKq3aSs2MTdU7KpRfo15ZX5ArzScRsGVqR7XGzAtpb0HoNb8DIBbFOtZvOEBDh d3o46jGegJBLjkj4/xZRz7D8GrmLqf/u1mcKpZY11xkDLJZloxDBm2EaxsYOTMMWGqNC bc8Ia8YyUdtAu4a679uB56v6fThijWi1yAAfzB4u9A+SAUg+4VikuceplX4EE6iiUxGa JH/A== X-Gm-Message-State: ANoB5pkUtA9lnJwkbR734G3EPswtVNJ2uxlnmjxxEPpAYkbVtJPqJ4Ur I1HzacmoALqueZMoXDh+WM8= X-Google-Smtp-Source: AA0mqf5e/VMKkxfRrdzjafLiWxxNWJqckGA/OMtMBORBq6m+Vryevwz0nhOTUq5bIdOOIPxuuDCPeQ== X-Received: by 2002:a5d:4c4b:0:b0:242:2390:15f with SMTP id n11-20020a5d4c4b000000b002422390015fmr20729838wrt.64.1671150800123; Thu, 15 Dec 2022 16:33:20 -0800 (PST) Original-Received: from [192.168.0.2] ([46.251.119.176]) by smtp.googlemail.com with ESMTPSA id z1-20020a5d6541000000b00241f029e672sm704143wrv.107.2022.12.15.16.33.18 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 15 Dec 2022 16:33:19 -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:251163 Archived-At: This is a multi-part message in MIME format. --------------wMUXI2kQRDUdLy5IALW5xLPt Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Aaron, Sorry for the long pause. You said you're using something else, though, so it didn't seem urgent (and I've yet to encounter endless methods at $day_job, FWIW). On 28/04/2022 02:58, Aaron Jensen wrote: > On Tue, Apr 26, 2022 at 10:44 PM Dmitry Gutov wrote: >> Thanks for the report. >> >> I'll work on this further, but here's a quick-and-dirty patch to fix the >> indentation problems. > > Great, thank you. I've since moved back to enh-ruby-mode and I was > able to patch it to support this (though that project appears to be > currently not accepting contributions). Not a problem for me, but could you test the attached patch anyway? It seems to handle a bunch of different/complex cases fine without regressions, but it's always better with a second pair of eyes. > I'd probably use ruby-mode if > it supported indenting long parameter/argument lists the way the > non-smie version does, like this: > > def some_method( > some_param, > some_other_param > ) Now that the SMIE stuff is again in my short-term memory, it shouldn't be too hard. Just please file a separate bug report (slash feature request) with a precise example. Bonus points for linking to a relevant Rubocop rule, so that we can pick a better name for the new user option. I don't see the non-SMIE version indenting it like this -- it looks more like this instead (and only if I set ruby-deep-indent-paren to nil): def test2 ( asd, asd asd ) So let's start with a couple of good examples. > I believe I've seen you imply concerns about enh-ruby-mode -- do you > have any aside from the fact that it's not in core and it requires a > ruby process? It's mostly worked well for me, but I don't know what I > don't know. My main problem with it is the spotty maintenance like in this example: https://github.com/zenspider/enhanced-ruby-mode/issues/96 But it might work fine for many people. Especially those who don't use Robe. Some previous versions of it (probably by the previous maintainer) were really broken, so I just took up ruby-mode instead. I haven't tried using its latest versions much. --------------wMUXI2kQRDUdLy5IALW5xLPt Content-Type: text/x-patch; charset=UTF-8; name="ruby-endless-methods.diff" Content-Disposition: attachment; filename="ruby-endless-methods.diff" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL2xpc3AvcHJvZ21vZGVzL3J1YnktbW9kZS5lbCBiL2xpc3AvcHJvZ21v ZGVzL3J1YnktbW9kZS5lbAppbmRleCA0YWMyODlkNTI5Li40ZDRjYTYzNWE0IDEwMDY0NAot LS0gYS9saXNwL3Byb2dtb2Rlcy9ydWJ5LW1vZGUuZWwKKysrIGIvbGlzcC9wcm9nbW9kZXMv cnVieS1tb2RlLmVsCkBAIC0xMzQsNiArMTM0LDEyIEBAIHJ1Ynktc3ltYm9sLWNoYXJzCiAo ZGVmY29uc3QgcnVieS1zeW1ib2wtcmUgKGNvbmNhdCAiWyIgcnVieS1zeW1ib2wtY2hhcnMg Il0iKQogICAiUmVnZXhwIHRvIG1hdGNoIHN5bWJvbHMuIikKIAorKGRlZmNvbnN0IHJ1Ynkt ZW5kbGVzcy1tZXRob2QtaGVhZC1yZQorICAoZm9ybWF0ICIgKiVzK1s/IV0/ICpcXCgoW14o KV0qKVxcKT8gKj0iIHJ1Ynktc3ltYm9sLXJlKQorICAiUmVnZXhwIHRvIG1hdGNoIHRoZSBi ZWdpbm5pbmcgb2YgYW4gZW5kbGVzcyBtZXRob2QgZGVmaW5pdGlvbi4KKworSXQgc2hvdWxk IG1hdGNoIHRoZSBwYXJ0IGFmdGVyIFwiZGVmXCIgYW5kIHVudGlsIFwiPVwiLiIpCisKIChk ZWZ2YXIgcnVieS11c2Utc21pZSB0KQogKG1ha2Utb2Jzb2xldGUtdmFyaWFibGUgJ3J1Ynkt dXNlLXNtaWUgbmlsICIyOC4xIikKIApAQCAtMzUxLDcgKzM1Nyw4IEBAIHJ1Ynktc21pZS1n cmFtbWFyCiAgICAgICAgKGV4cCAgKGV4cDEpIChleHAgIiwiIGV4cCkgKGV4cCAiPSIgZXhw KQogICAgICAgICAgICAgIChpZCAiIEAgIiBleHApKQogICAgICAgIChleHAxIChleHAyKSAo ZXhwMiAiPyIgZXhwMSAiOiIgZXhwMSkpCi0gICAgICAgKGV4cDIgKGV4cDMpIChleHAzICIu IiBleHAzKSkKKyAgICAgICAoZXhwMiAoZXhwMykgKGV4cDMgIi4iIGV4cDMpCisgICAgICAg ICAgICAgKGV4cDMgImRlZj0iIGV4cDMpKQogICAgICAgIChleHAzICgiZGVmIiBpbnN0cyAi ZW5kIikKICAgICAgICAgICAgICAoImJlZ2luIiBpbnN0cy1yZXNjdWUtaW5zdHMgImVuZCIp CiAgICAgICAgICAgICAgKCJkbyIgaW5zdHMgImVuZCIpCkBAIC01MjgsNiArNTM1LDkgQEAg cnVieS1zbWllLS1mb3J3YXJkLXRva2VuCiAgICAgICAgICAgICAgIChydWJ5LXNtaWUtLWZv cndhcmQtdG9rZW4pKSA7RnVsbHkgcmVkdW5kYW50LgogICAgICAgICAgICAgICh0ICI7Iikp KQogICAgICAgICAgICAoKGVxdWFsIHRvayAiJi4iKSAiLiIpCisgICAgICAgICAgICgoYW5k IChlcXVhbCB0b2sgImRlZiIpCisgICAgICAgICAgICAgICAgIChsb29raW5nLWF0IHJ1Ynkt ZW5kbGVzcy1tZXRob2QtaGVhZC1yZSkpCisgICAgICAgICAgICAiZGVmPSIpCiAgICAgICAg ICAgICh0IHRvaykpKSkpKSkpKQogCiAoZGVmdW4gcnVieS1zbWllLS1iYWNrd2FyZC10b2tl biAoKQpAQCAtNTc1LDYgKzU4NSw5IEBAIHJ1Ynktc21pZS0tYmFja3dhcmQtdG9rZW4KICAg ICAgICAgICAgIChydWJ5LXNtaWUtLWJhY2t3YXJkLXRva2VuKSkgO0Z1bGx5IHJlZHVuZGFu dC4KICAgICAgICAgICAgKHQgIjsiKSkpCiAgICAgICAgICAoKGVxdWFsIHRvayAiJi4iKSAi LiIpCisgICAgICAgICAoKGFuZCAoZXF1YWwgdG9rICJkZWYiKQorICAgICAgICAgICAgICAg KGxvb2tpbmctYXQgKGNvbmNhdCAiZGVmIiBydWJ5LWVuZGxlc3MtbWV0aG9kLWhlYWQtcmUp KSkKKyAgICAgICAgICAiZGVmPSIpCiAgICAgICAgICAodCB0b2spKSkpKSkpCiAKIChkZWZ1 biBydWJ5LXNtaWUtLWluZGVudC10by1zdG10ICgpCkBAIC02NDEsOSArNjU0LDExIEBAIHJ1 Ynktc21pZS1ydWxlcwogICAgICAgICh1bmxlc3MgKG9yIChlb2xwKSAoZm9yd2FyZC1jb21t ZW50IDEpKQogICAgICAgICAgKGNvbnMgJ2NvbHVtbiAoY3VycmVudC1jb2x1bW4pKSkpKQog ICAgICgnKDpiZWZvcmUgLiAiIEAgIikKLSAgICAgKHNhdmUtZXhjdXJzaW9uCi0gICAgICAg KHNraXAtY2hhcnMtZm9yd2FyZCAiIFx0IikKLSAgICAgICAoY29ucyAnY29sdW1uIChjdXJy ZW50LWNvbHVtbikpKSkKKyAgICAgKGlmIChzbWllLXJ1bGUtcGFyZW50LXAgImRlZj0iKQor ICAgICAgICAgKHNtaWUtcnVsZS1wYXJlbnQpCisgICAgICAgKHNhdmUtZXhjdXJzaW9uCisg ICAgICAgICAoc2tpcC1jaGFycy1mb3J3YXJkICIgXHQiKQorICAgICAgICAgKGNvbnMgJ2Nv bHVtbiAoY3VycmVudC1jb2x1bW4pKSkpKQogICAgICgnKDpiZWZvcmUgLiAiZG8iKSAocnVi eS1zbWllLS1pbmRlbnQtdG8tc3RtdCkpCiAgICAgKCcoOmJlZm9yZSAuICIuIikKICAgICAg KGlmIChzbWllLXJ1bGUtc2libGluZy1wKQpAQCAtNjcyLDYgKzY4Nyw5IEBAIHJ1Ynktc21p ZS1ydWxlcwogICAgICAoYW5kIChzbWllLXJ1bGUtcGFyZW50LXAgIjsiIG5pbCkKICAgICAg ICAgICAoc21pZS1pbmRlbnQtLWhhbmdpbmctcCkKICAgICAgICAgICBydWJ5LWluZGVudC1s ZXZlbCkpCisgICAgKGAoOmJlZm9yZSAuICI9IikKKyAgICAgKGFuZCAoc21pZS1ydWxlLXBh cmVudC1wICIgQCAiKQorICAgICAgICAgIChzbWllLXJ1bGUtcGFyZW50IHJ1YnktaW5kZW50 LWxldmVsKSkpCiAgICAgKGAoOmFmdGVyIC4gLChvciAiPyIgIjoiKSkgcnVieS1pbmRlbnQt bGV2ZWwpCiAgICAgKGAoOmJlZm9yZSAuICwoZ3VhcmQgKG1lbXEgKGludGVybi1zb2Z0IHRv a2VuKSBydWJ5LWFsaWduYWJsZS1rZXl3b3JkcykpKQogICAgICAod2hlbiAobm90IChydWJ5 LS1hdC1pbmRlbnRhdGlvbi1wKSkKQEAgLTE2MzEsNyArMTY0OSw3IEBAIHJ1YnktYWRkLWxv Zy1jdXJyZW50LW1ldGhvZAogICAgICAgICAgICAgICAgICAgKHdoaWxlIChhbmQgKHJlLXNl YXJjaC1iYWNrd2FyZCBkZWZpbml0aW9uLXJlIG5pbCB0KQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgKGlmIChpZiAoc3RyaW5nLWVxdWFsICJkZWYiIChtYXRjaC1zdHJpbmcg MSkpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDs7IFdlJ3JlIGlu c2lkZSBhIG1ldGhvZC4KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg KGlmIChydWJ5LWJsb2NrLWNvbnRhaW5zLXBvaW50IHN0YXJ0KQorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAoaWYgKHJ1YnktYmxvY2stY29udGFpbnMtcG9pbnQg KDEtIHN0YXJ0KSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHQKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7OyBUcnkgdG8g bWF0Y2ggYSBtZXRob2Qgb25seSBvbmNlLgogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIChzZXRxIGRlZmluaXRpb24tcmUgbW9kdWxlLXJlKQpkaWZmIC0tZ2l0 IGEvdGVzdC9saXNwL3Byb2dtb2Rlcy9ydWJ5LW1vZGUtcmVzb3VyY2VzL3J1YnkucmIgYi90 ZXN0L2xpc3AvcHJvZ21vZGVzL3J1YnktbW9kZS1yZXNvdXJjZXMvcnVieS5yYgppbmRleCBm Mzk0ODkwNzFlLi5jYmViMzYyZWYwIDEwMDY0NAotLS0gYS90ZXN0L2xpc3AvcHJvZ21vZGVz L3J1YnktbW9kZS1yZXNvdXJjZXMvcnVieS5yYgorKysgYi90ZXN0L2xpc3AvcHJvZ21vZGVz L3J1YnktbW9kZS1yZXNvdXJjZXMvcnVieS5yYgpAQCAtNTAwLDMgKzUwMCwyNiBAQCBkZWYg cmVzb2x2ZSgqKmFyZ3MpCiAKICAgbWVtYmVyLmNhbGwoKiphcmdzKQogZW5kCisKKyMgRW5k bGVzcyBtZXRob2RzLgorY2xhc3MgQmFyCisgIGRlZiBmb28oYWJjKSA9CisgICAgYmFyICsK KyAgICBiYXIKKyAgICAgIC5iYXoKKworICBkZWYgYmFyID0KKyAgICAxMjMgKworICAgIDQK KworICBkZWYgcmVxdWVzdF9wYXJhbXMgPSB7CisgICAgaGVhZGVyczogcmVxdWVzdF9oZWFk ZXJzLAorICAgIGJvZHk6IHJlcXVlc3RfYm9keQorICB9CitlbmQKKworCitjbGFzcyBGb28K KyAgZGVmIGZvbyguLi4pID0gegorICBkZWYgYmFyID0geQorZW5kCmRpZmYgLS1naXQgYS90 ZXN0L2xpc3AvcHJvZ21vZGVzL3J1YnktbW9kZS10ZXN0cy5lbCBiL3Rlc3QvbGlzcC9wcm9n bW9kZXMvcnVieS1tb2RlLXRlc3RzLmVsCmluZGV4IGU5MGE5ZTQwNzUuLjliZTAxZGM3OGYg MTAwNjQ0Ci0tLSBhL3Rlc3QvbGlzcC9wcm9nbW9kZXMvcnVieS1tb2RlLXRlc3RzLmVsCisr KyBiL3Rlc3QvbGlzcC9wcm9nbW9kZXMvcnVieS1tb2RlLXRlc3RzLmVsCkBAIC02MDUsNiAr NjA1LDE4IEBAIHJ1YnktYWRkLWxvZy1jdXJyZW50LW1ldGhvZC1hZnRlci1pbm5lci1jbGFz cy1vdXRzaWRlLW1ldGhvZHMtd2l0aC10ZXh0CiAgICAgKHNlYXJjaC1iYWNrd2FyZCAiRk9P IikKICAgICAoc2hvdWxkIChzdHJpbmc9IChydWJ5LWFkZC1sb2ctY3VycmVudC1tZXRob2Qp ICJNOjpDIikpKSkKIAorKGVydC1kZWZ0ZXN0IHJ1YnktYWRkLWxvZy1jdXJyZW50LW1ldGhv ZC1hZnRlci1lbmRsZXNzLW1ldGhvZCAoKQorICAocnVieS13aXRoLXRlbXAtYnVmZmVyIChy dWJ5LXRlc3Qtc3RyaW5nCisgICAgICAgICAgICAgICAgICAgICAgICAgICJtb2R1bGUgTQor ICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBjbGFzcyBDCisgICAgICAgICAgICAgICAg ICAgICAgICAgIHwgICAgZGVmIGZvbyA9CisgICAgICAgICAgICAgICAgICAgICAgICAgIHwg ICAgICA0XworICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBlbmQKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgfGVuZCIpCisgICAgKHNlYXJjaC1iYWNrd2FyZCAiXyIpCisgICAg KGRlbGV0ZS1jaGFyIDEpCisgICAgKHNob3VsZCAoc3RyaW5nPSAocnVieS1hZGQtbG9nLWN1 cnJlbnQtbWV0aG9kKSAiTTo6QyNmb28iKSkpKQorCiAoZGVmdmFyIHJ1YnktYmxvY2stdGVz dC1leGFtcGxlCiAgIChydWJ5LXRlc3Qtc3RyaW5nCiAgICAiY2xhc3MgQwo= --------------wMUXI2kQRDUdLy5IALW5xLPt--