From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Gregory Heytings Newsgroups: gmane.emacs.devel Subject: Re: master 6a2ee981c3: Add new functions for splitting the root window Date: Tue, 13 Sep 2022 09:33:16 +0000 Message-ID: References: <166240424802.11417.12502552895310232639@vcs2.savannah.gnu.org> <20220905185728.838CEC0088A@vcs2.savannah.gnu.org> <86h71kseiw.fsf@mail.linkov.net> <87illzmjew.fsf@gnus.org> <868rmvxdvj.fsf@mail.linkov.net> <87bkrq5bmb.fsf@gnus.org> <87pmg69ifi.fsf@gmail.com> <87h71i3vr3.fsf@gnus.org> <864jxfghcf.fsf@mail.linkov.net> <87sfkygokp.fsf@gnus.org> <87r10hg5u7.fsf@melete.silentflame.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="qnIk23lkDC" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="10558"; mail-complaints-to="usenet@ciao.gmane.io" Cc: Sean Whitton , Lars Ingebrigtsen , Juri Linkov , Robert Pluim , emacs-devel@gnu.org, Hugo Heagren To: Stefan Monnier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Tue Sep 13 11:38:17 2022 Return-path: Envelope-to: ged-emacs-devel@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 1oY2My-0002a5-K5 for ged-emacs-devel@m.gmane-mx.org; Tue, 13 Sep 2022 11:38:16 +0200 Original-Received: from localhost ([::1]:59106 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oY2Mx-00068H-Bp for ged-emacs-devel@m.gmane-mx.org; Tue, 13 Sep 2022 05:38:15 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:55944) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oY2IH-0003Y9-8l for emacs-devel@gnu.org; Tue, 13 Sep 2022 05:33:29 -0400 Original-Received: from heytings.org ([95.142.160.155]:37160) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oY2IF-0005Fg-65 for emacs-devel@gnu.org; Tue, 13 Sep 2022 05:33:24 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=heytings.org; s=20220101; t=1663061597; bh=W0e9xCu+q/YfumHjAw07p6S0ulBuhYe7c9wn0JyJ30U=; h=Date:From:To:cc:Subject:In-Reply-To:Message-ID:References:From; b=lcYf0k4LU7LE6GCghHXvBEWCg4sfqEw7WNO5KJYa1MnjWod7pbwTp3wIpBISAlVPb oNdiPORhD3u3frg7WXDvXXIBqovWOkTvXwaRzNCEFhxpiyFXXrTPtTK/RSZGqp4yM9 yTv6cwA2AQ/fOpEIoI82oyAfLU+rsQboQu0MsHP0+GvMxM2OWDjSnw9bq1buZ24tW8 +LFQ9qCQVr8Wt6qr1bS+vK8cSOo0aevIbWkSMt6kjM4TQcLP++69eZE72XA6JIVcb4 fEOHYyV+f6P67lrVM6olWER9zEcBLlTuD8gL+Wt063wdjie+xzZgqLXxRADSt0wkdB 8E6ASmx1wKVmA== In-Reply-To: Content-ID: Received-SPF: pass client-ip=95.142.160.155; envelope-from=gregory@heytings.org; helo=heytings.org 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, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:295235 Archived-At: --qnIk23lkDC Content-Type: text/plain; charset=us-ascii; format=flowed Content-ID: > > While I understand the desire to follow the `C-x 2` and `C-x 3` > tradition, these numbers don't actually carry much useful intuition. How > 'bout `C-x w -` and `C-x w |` instead? > > Of course, it'd also be nice to bring together/closer the root and > non-root variants of those operations, but I have no good suggestion > here, other than to suggest to use a new command which doesn't accept a > numeric argument at all and only uses `C-u` to choose between a root > split and non-root split. That's because I personally never use that > numeric argument, and prefer to resize the windows afterwards rather > than try to guess sizes beforehand. > Fully agreed. I we're going to put window commands on C-x w, I thought I might share the part of my configuration that deals with windows (see attached), which I adapted to that new prefix. C-x w | split-window-right C-u C-x w | split-root-window-right C-x w - split-window-below C-u C-x w - split-root-window-below C-x w d delete-window C-x w o delete-other-windows (mnemonic "only") C-x w h window-height-adjust with + - = (repeatable) C-x w w window-width-adjust with + - = (repeatable) C-x w f tear-off-window C-x w m maximize-window-toggle C-u C-x w m minimize-window C-x w s window-toggle-side-windows C-x w ! window-toggle-dedicated C-x w b balance-windows C-u C-x w b balance-windows-area C-x w c window-configuration left (winner-undo) right (winner-redo) (repeatable) s (save in register) r (restore from register) C-x w n/p select-next-window select-previous-window (repeatable) C-x w up/down/left/right select-window-{up,down,left,right} (repeatable) C-x w M-up/M-down/M-left/M-right swap-windows-{up,down,left,right} (repeatable) --qnIk23lkDC Content-Type: text/plain; charset=us-ascii; name=window-commands.el Content-Transfer-Encoding: base64 Content-ID: Content-Disposition: attachment; filename=window-commands.el KGRlZnVuIHNwbGl0LXdpbmRvdy1vci1yb290LXdpbmRvdy1yaWdodCAoJm9w dGlvbmFsIGFyZykNCiAgKGludGVyYWN0aXZlICJQIikNCiAgKGlmIGFyZyAo c3BsaXQtcm9vdC13aW5kb3ctcmlnaHQpIChzcGxpdC13aW5kb3ctcmlnaHQp KSkNCihkZWZ1biBzcGxpdC13aW5kb3ctb3Itcm9vdC13aW5kb3ctYmVsb3cg KCZvcHRpb25hbCBhcmcpDQogIChpbnRlcmFjdGl2ZSAiUCIpDQogIChpZiBh cmcgKHNwbGl0LXJvb3Qtd2luZG93LWJlbG93KSAoc3BsaXQtd2luZG93LWJl bG93KSkpDQooZ2xvYmFsLXNldC1rZXkgKGtiZCAiQy14IHcgfCIpICdzcGxp dC13aW5kb3ctb3Itcm9vdC13aW5kb3ctcmlnaHQpDQooZ2xvYmFsLXNldC1r ZXkgKGtiZCAiQy14IHcgLSIpICdzcGxpdC13aW5kb3ctb3Itcm9vdC13aW5k b3ctYmVsb3cpDQooZ2xvYmFsLXNldC1rZXkgKGtiZCAiQy14IHcgZCIpICdk ZWxldGUtd2luZG93KQ0KKGdsb2JhbC1zZXQta2V5IChrYmQgIkMteCB3IG8i KSAnZGVsZXRlLW90aGVyLXdpbmRvd3MpDQooZGVmdW4gZml0LXdpbmRvdy10 by1idWZmZXItaG9yaXpvbnRhbGx5ICgpDQogIChpbnRlcmFjdGl2ZSkNCiAg KGxldCAoKGZpdC13aW5kb3ctdG8tYnVmZmVyLWhvcml6b250YWxseSAnb25s eSkpDQogICAgKGZpdC13aW5kb3ctdG8tYnVmZmVyKQ0KICAgIChlbmxhcmdl LXdpbmRvdy1ob3Jpem9udGFsbHkgMikpKQ0KKGRlZnVuIHdpbmRvdy13aWR0 aC1hZGp1c3QgKCkNCiAgKGludGVyYWN0aXZlKQ0KICAobGV0ICgobWFwICht YWtlLXNwYXJzZS1rZXltYXApKSkNCiAgICAoZGVmaW5lLWtleSBtYXAgIisi ICdlbmxhcmdlLXdpbmRvdy1ob3Jpem9udGFsbHkpDQogICAgKGRlZmluZS1r ZXkgbWFwICItIiAnc2hyaW5rLXdpbmRvdy1ob3Jpem9udGFsbHkpDQogICAg KGRlZmluZS1rZXkgbWFwICI9IiAnZml0LXdpbmRvdy10by1idWZmZXItaG9y aXpvbnRhbGx5KQ0KICAgIChzZXQtdHJhbnNpZW50LW1hcCBtYXAgdCkpKQ0K KGRlZnVuIHdpbmRvdy1oZWlnaHQtYWRqdXN0ICgpDQogIChpbnRlcmFjdGl2 ZSkNCiAgKGxldCAoKG1hcCAobWFrZS1zcGFyc2Uta2V5bWFwKSkpDQogICAg KGRlZmluZS1rZXkgbWFwICIrIiAnZW5sYXJnZS13aW5kb3cpDQogICAgKGRl ZmluZS1rZXkgbWFwICItIiAnc2hyaW5rLXdpbmRvdykNCiAgICAoZGVmaW5l LWtleSBtYXAgIj0iICdmaXQtd2luZG93LXRvLWJ1ZmZlcikNCiAgICAoc2V0 LXRyYW5zaWVudC1tYXAgbWFwIHQpKSkNCihnbG9iYWwtc2V0LWtleSAoa2Jk ICJDLXggdyB3IikgJ3dpbmRvdy13aWR0aC1hZGp1c3QpDQooZ2xvYmFsLXNl dC1rZXkgKGtiZCAiQy14IHcgaCIpICd3aW5kb3ctaGVpZ2h0LWFkanVzdCkN CihnbG9iYWwtc2V0LWtleSAoa2JkICJDLXggdyBmIikgJ3RlYXItb2ZmLXdp bmRvdykNCihkZWZ1biBtYXhpbWl6ZS13aW5kb3ctdG9nZ2xlICgpDQogIChs ZXQqICgod2MgKGZyYW1lLXBhcmFtZXRlciBuaWwgJ3dpbmRvdy1tYXhpbWl6 ZWQpKSkNCiAgICAoaWYgd2MNCgkocHJvZ24NCgkgIChzZXQtd2luZG93LWNv bmZpZ3VyYXRpb24gd2MpDQoJICAoc2V0LWZyYW1lLXBhcmFtZXRlciBuaWwg J3dpbmRvdy1tYXhpbWl6ZWQgbmlsKSkNCiAgICAgIChzZXQtZnJhbWUtcGFy YW1ldGVyIG5pbCAnd2luZG93LW1heGltaXplZA0KCQkJICAgKGN1cnJlbnQt d2luZG93LWNvbmZpZ3VyYXRpb24pKQ0KICAgICAgKGRlbGV0ZS1vdGhlci13 aW5kb3dzKSkpKQ0KKGRlZnVuIG1heGltaXplLW9yLW1pbmltaXplLXdpbmRv dyAoJm9wdGlvbmFsIGFyZykNCiAgKGludGVyYWN0aXZlICJQIikNCiAgKGlm IGFyZw0KICAgICAgKG1pbmltaXplLXdpbmRvdykNCiAgICAobWF4aW1pemUt d2luZG93LXRvZ2dsZSkpKQ0KKGdsb2JhbC1zZXQta2V5IChrYmQgIkMteCB3 IG0iKSAnbWF4aW1pemUtb3ItbWluaW1pemUtd2luZG93KQ0KKGdsb2JhbC1z ZXQta2V5IChrYmQgIkMteCB3IHMiKSAnd2luZG93LXRvZ2dsZS1zaWRlLXdp bmRvd3MpDQooZGVmdW4gd2luZG93cy1iYWxhbmNlICgmb3B0aW9uYWwgYXJn KQ0KICAoaW50ZXJhY3RpdmUgIlAiKQ0KICAoaWYgYXJnDQogICAgICAoYmFs YW5jZS13aW5kb3dzLWFyZWEpDQogICAgKGJhbGFuY2Utd2luZG93cykpKQ0K KGdsb2JhbC1zZXQta2V5IChrYmQgIkMteCB3IGIiKSAnd2luZG93cy1iYWxh bmNlKQ0KKGRlZnVuIHdpbmRvdy10b2dnbGUtZGVkaWNhdGVkICgpDQogIChp bnRlcmFjdGl2ZSkNCiAgKHNldC13aW5kb3ctZGVkaWNhdGVkLXAgbmlsIChu b3QgKHdpbmRvdy1kZWRpY2F0ZWQtcCkpKQ0KICAobWVzc2FnZSAiV2luZG93 IGlzICVzZGVkaWNhdGVkIiAoaWYgKHdpbmRvdy1kZWRpY2F0ZWQtcCkgIiIg Im5vdCAiKSkpDQooZ2xvYmFsLXNldC1rZXkgKGtiZCAiQy14IHcgISIpICd3 aW5kb3ctdG9nZ2xlLWRlZGljYXRlZCkNCihkZWZ1biB3aW5kb3ctY29uZmln dXJhdGlvbi1mcm9tLXJlZ2lzdGVyIChyZWdpc3RlcikNCiAgKGludGVyYWN0 aXZlDQogICAobGlzdCAocmVnaXN0ZXItcmVhZC13aXRoLXByZXZpZXcgIldp bmRvdyBjb25maWd1cmF0aW9uIGZyb20gcmVnaXN0ZXI6ICIpKSkNCiAgKGxl dCAoKGNvbnRlbnRzIChnZXQtcmVnaXN0ZXIgcmVnaXN0ZXIpKSkNCiAgICAo aWYgKGFuZCAoY29uc3AgY29udGVudHMpDQoJICAgICAod2luZG93LWNvbmZp Z3VyYXRpb24tcCAoY2FyIGNvbnRlbnRzKSkNCgkgICAgIChtYXJrZXJwIChj YWRyIGNvbnRlbnRzKSkpDQogICAgICAoanVtcC10by1yZWdpc3RlciByZWdp c3RlcikNCiAgICAodXNlci1lcnJvciAiUmVnaXN0ZXIgYCVjJyBkb2Vzbid0 IGNvbnRhaW4gYSB3aW5kb3cgY29uZmlndXJhdGlvbiINCgkJcmVnaXN0ZXIp KSkpDQooZGVmdW4gd2luZG93LWNvbmZpZ3VyYXRpb24gKCkNCiAgKGludGVy YWN0aXZlKQ0KICAoaWYgKGFuZCAoYm91bmRwIHdpbm5lci1tb2RlKSB3aW5u ZXItbW9kZSkNCiAgICAgIChsZXQgKChtYXAgKG1ha2Utc3BhcnNlLWtleW1h cCkpKQ0KCShkZWZpbmUta2V5IG1hcCBbbGVmdF0gJ3dpbm5lci11bmRvKQ0K CShkZWZpbmUta2V5IG1hcCBbcmlnaHRdICd3aW5uZXItcmVkbykNCgkoZGVm aW5lLWtleSBtYXAgInMiICd3aW5kb3ctY29uZmlndXJhdGlvbi10by1yZWdp c3RlcikNCgkoZGVmaW5lLWtleSBtYXAgInIiICd3aW5kb3ctY29uZmlndXJh dGlvbi1mcm9tLXJlZ2lzdGVyKQ0KCShzZXQtdHJhbnNpZW50LW1hcCBtYXAg dCkpDQogICAgKHVzZXItZXJyb3IgIldpbm5lciBtb2RlIGlzIG5vdCBlbmFi bGVkIikpKQ0KKGdsb2JhbC1zZXQta2V5IChrYmQgIkMteCB3IGMiKSAnd2lu ZG93LWNvbmZpZ3VyYXRpb24pDQooZGVmdW4gc2VsZWN0LW5leHQtd2luZG93 LWRvICgpDQogIChpbnRlcmFjdGl2ZSkNCiAgKHNlbGVjdC13aW5kb3cgKG5l eHQtd2luZG93KSkpDQooZGVmdW4gc2VsZWN0LXByZXZpb3VzLXdpbmRvdy1k byAoKQ0KICAoaW50ZXJhY3RpdmUpDQogIChzZWxlY3Qtd2luZG93IChwcmV2 aW91cy13aW5kb3cpKSkNCihkZWZ1biBzZWxlY3Qtd2luZG93LWVudGVyICgp DQogIChsZXQgKChtYXAgKG1ha2Utc3BhcnNlLWtleW1hcCkpKQ0KICAgIChk ZWZpbmUta2V5IG1hcCAibiIgJ3NlbGVjdC1uZXh0LXdpbmRvdy1kbykNCiAg ICAoZGVmaW5lLWtleSBtYXAgInAiICdzZWxlY3QtcHJldmlvdXMtd2luZG93 LWRvKQ0KICAgIChzZXQtdHJhbnNpZW50LW1hcCBtYXAgdCkpKQ0KKGRlZnVu IHNlbGVjdC1uZXh0LXdpbmRvdyAoKQ0KICAoaW50ZXJhY3RpdmUpDQogIChz ZWxlY3QtbmV4dC13aW5kb3ctZG8pDQogIChzZWxlY3Qtd2luZG93LWVudGVy KSkNCihkZWZ1biBzZWxlY3QtcHJldmlvdXMtd2luZG93ICgpDQogIChpbnRl cmFjdGl2ZSkNCiAgKHNlbGVjdC1wcmV2aW91cy13aW5kb3ctZG8pDQogIChz ZWxlY3Qtd2luZG93LWVudGVyKSkNCihnbG9iYWwtc2V0LWtleSAoa2JkICJD LXggdyBuIikgJ3NlbGVjdC1uZXh0LXdpbmRvdykNCihnbG9iYWwtc2V0LWtl eSAoa2JkICJDLXggdyBwIikgJ3NlbGVjdC1wcmV2aW91cy13aW5kb3cpDQoo ZGVmdW4gd2luZG1vdmUtZW50ZXIgKGZ1bikNCiAgKGlmIHdpbmRtb3ZlLW1v ZGUNCiAgICAgIChsZXQgKChtYXAgKG1ha2Utc3BhcnNlLWtleW1hcCkpKQ0K CShkZWZpbmUta2V5IG1hcCBbdXBdICd3aW5kbW92ZS11cCkNCgkoZGVmaW5l LWtleSBtYXAgW2Rvd25dICd3aW5kbW92ZS1kb3duKQ0KCShkZWZpbmUta2V5 IG1hcCBbbGVmdF0gJ3dpbmRtb3ZlLWxlZnQpDQoJKGRlZmluZS1rZXkgbWFw IFtyaWdodF0gJ3dpbmRtb3ZlLXJpZ2h0KQ0KCShkZWZpbmUta2V5IG1hcCBb TS11cF0gJ3dpbmRtb3ZlLXN3YXAtc3RhdGVzLXVwKQ0KCShkZWZpbmUta2V5 IG1hcCBbTS1kb3duXSAnd2luZG1vdmUtc3dhcC1zdGF0ZXMtZG93bikNCgko ZGVmaW5lLWtleSBtYXAgW00tbGVmdF0gJ3dpbmRtb3ZlLXN3YXAtc3RhdGVz LWxlZnQpDQoJKGRlZmluZS1rZXkgbWFwIFtNLXJpZ2h0XSAnd2luZG1vdmUt c3dhcC1zdGF0ZXMtcmlnaHQpDQoJKGNhbGwtaW50ZXJhY3RpdmVseSBmdW4p DQoJKHNldC10cmFuc2llbnQtbWFwIG1hcCB0KSkNCiAgICAodXNlci1lcnJv ciAiV2luZG1vdmUgbW9kZSBpcyBub3QgZW5hYmxlZCIpKSkNCihkZWZ1biBz ZWxlY3Qtd2luZG93LXVwICgmb3B0aW9uYWwgYXJnKQ0KICAoaW50ZXJhY3Rp dmUgIlAiKQ0KICAod2luZG1vdmUtZW50ZXIgJ3dpbmRtb3ZlLXVwKSkNCihk ZWZ1biBzZWxlY3Qtd2luZG93LWRvd24gKCZvcHRpb25hbCBhcmcpDQogIChp bnRlcmFjdGl2ZSAiUCIpDQogICh3aW5kbW92ZS1lbnRlciAnd2luZG1vdmUt ZG93bikpDQooZGVmdW4gc2VsZWN0LXdpbmRvdy1sZWZ0ICgmb3B0aW9uYWwg YXJnKQ0KICAoaW50ZXJhY3RpdmUgIlAiKQ0KICAod2luZG1vdmUtZW50ZXIg J3dpbmRtb3ZlLWxlZnQpKQ0KKGRlZnVuIHNlbGVjdC13aW5kb3ctcmlnaHQg KCZvcHRpb25hbCBhcmcpDQogIChpbnRlcmFjdGl2ZSAiUCIpDQogICh3aW5k bW92ZS1lbnRlciAnd2luZG1vdmUtcmlnaHQpKQ0KKGRlZnVuIHN3YXAtd2lu ZG93cy11cCAoJm9wdGlvbmFsIGFyZykNCiAgKGludGVyYWN0aXZlKQ0KICAo d2luZG1vdmUtZW50ZXIgJ3dpbmRtb3ZlLXN3YXAtc3RhdGVzLXVwKSkNCihk ZWZ1biBzd2FwLXdpbmRvd3MtZG93biAoJm9wdGlvbmFsIGFyZykNCiAgKGlu dGVyYWN0aXZlKQ0KICAod2luZG1vdmUtZW50ZXIgJ3dpbmRtb3ZlLXN3YXAt c3RhdGVzLWRvd24pKQ0KKGRlZnVuIHN3YXAtd2luZG93cy1sZWZ0ICgmb3B0 aW9uYWwgYXJnKQ0KICAoaW50ZXJhY3RpdmUpDQogICh3aW5kbW92ZS1lbnRl ciAnd2luZG1vdmUtc3dhcC1zdGF0ZXMtbGVmdCkpDQooZGVmdW4gc3dhcC13 aW5kb3dzLXJpZ2h0ICgmb3B0aW9uYWwgYXJnKQ0KICAoaW50ZXJhY3RpdmUp DQogICh3aW5kbW92ZS1lbnRlciAnd2luZG1vdmUtc3dhcC1zdGF0ZXMtcmln aHQpKQ0KKGdsb2JhbC1zZXQta2V5IChrYmQgIkMteCB3IDx1cD4iKSAnc2Vs ZWN0LXdpbmRvdy11cCkNCihnbG9iYWwtc2V0LWtleSAoa2JkICJDLXggdyA8 ZG93bj4iKSAnc2VsZWN0LXdpbmRvdy1kb3duKQ0KKGdsb2JhbC1zZXQta2V5 IChrYmQgIkMteCB3IDxsZWZ0PiIpICdzZWxlY3Qtd2luZG93LWxlZnQpDQoo Z2xvYmFsLXNldC1rZXkgKGtiZCAiQy14IHcgPHJpZ2h0PiIpICdzZWxlY3Qt d2luZG93LXJpZ2h0KQ0KKGdsb2JhbC1zZXQta2V5IChrYmQgIkMteCB3IE0t PHVwPiIpICdzd2FwLXdpbmRvd3MtdXApDQooZ2xvYmFsLXNldC1rZXkgKGti ZCAiQy14IHcgTS08ZG93bj4iKSAnc3dhcC13aW5kb3dzLWRvd24pDQooZ2xv YmFsLXNldC1rZXkgKGtiZCAiQy14IHcgTS08bGVmdD4iKSAnc3dhcC13aW5k b3dzLWxlZnQpDQooZ2xvYmFsLXNldC1rZXkgKGtiZCAiQy14IHcgTS08cmln aHQ+IikgJ3N3YXAtd2luZG93cy1yaWdodCkNCg== --qnIk23lkDC--