From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: martin rudalics Newsgroups: gmane.emacs.bugs Subject: bug#32825: 27.0.50; Deterministic window management Date: Sun, 04 Nov 2018 10:36:04 +0100 Message-ID: <5BDEBD84.7090402@gmx.at> References: <874leeaiah.fsf@mail.linkov.net> <5BA9E3B1.9010700@gmx.at> <87bm8lzrfb.fsf@web.de> <5BAA76CF.8010808@gmx.at> <878t3nublx.fsf@mail.linkov.net> <87wor7uqgb.fsf@web.de> <87o9bhkeih.fsf@mail.linkov.net> <87h8h9hk4w.fsf@web.de> <87d0rvb7xg.fsf@mail.linkov.net> <87sh0rkucr.fsf@web.de> <87d0rvqf5r.fsf@mail.linkov.net> <87k1m3krvm.fsf@web.de> <87o9bf13b4.fsf@mail.linkov.net> <87d0rvkq01.fsf@web.de> <5BD57C2B.7020109@gmx.at> <87tvl3rvks.fsf@mail.linkov.net> <5BD96392.3040008@gmx.at> <87y3adakkh.fsf@mail.linkov.net> <5BDAC0ED.9030405@gmx.at> <87h8h0juwn.fsf@mail.linkov.net> <5BDC0E38.5020901@gmx.at> <87d0rl7kl1.fsf@mail.linkov.net> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------080909050408020307020107" X-Trace: blaine.gmane.org 1541324752 17613 195.159.176.226 (4 Nov 2018 09:45:52 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Sun, 4 Nov 2018 09:45:52 +0000 (UTC) Cc: Michael Heerdegen , 32825@debbugs.gnu.org To: Juri Linkov Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Sun Nov 04 10:45:48 2018 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gJEyZ-0004VB-DW for geb-bug-gnu-emacs@m.gmane.org; Sun, 04 Nov 2018 10:45:47 +0100 Original-Received: from localhost ([::1]:58203 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gJF0g-0005oQ-0a for geb-bug-gnu-emacs@m.gmane.org; Sun, 04 Nov 2018 04:47:58 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:46036) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gJF0J-0004T7-Uq for bug-gnu-emacs@gnu.org; Sun, 04 Nov 2018 04:47:39 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gJEq7-0006GE-RB for bug-gnu-emacs@gnu.org; Sun, 04 Nov 2018 04:37:07 -0500 Original-Received: from debbugs.gnu.org ([208.118.235.43]:57296) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1gJEq6-0006EZ-NM for bug-gnu-emacs@gnu.org; Sun, 04 Nov 2018 04:37:03 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1gJEq6-0002fd-GY for bug-gnu-emacs@gnu.org; Sun, 04 Nov 2018 04:37:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: martin rudalics Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 04 Nov 2018 09:37:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 32825 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 32825-submit@debbugs.gnu.org id=B32825.154132417610207 (code B ref 32825); Sun, 04 Nov 2018 09:37:02 +0000 Original-Received: (at 32825) by debbugs.gnu.org; 4 Nov 2018 09:36:16 +0000 Original-Received: from localhost ([127.0.0.1]:33320 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gJEpM-0002eZ-9Z for submit@debbugs.gnu.org; Sun, 04 Nov 2018 04:36:16 -0500 Original-Received: from mout.gmx.net ([212.227.17.21]:38025) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gJEpK-0002eI-BU for 32825@debbugs.gnu.org; Sun, 04 Nov 2018 04:36:14 -0500 Original-Received: from [192.168.1.101] ([46.125.249.115]) by mail.gmx.com (mrgmx102 [212.227.17.168]) with ESMTPSA (Nemesis) id 0M96Jd-1gOxrd3Uuz-00CO2s; Sun, 04 Nov 2018 10:36:04 +0100 Original-Received: from [192.168.1.101] ([46.125.249.115]) by mail.gmx.com (mrgmx102 [212.227.17.168]) with ESMTPSA (Nemesis) id 0M96Jd-1gOxrd3Uuz-00CO2s; Sun, 04 Nov 2018 10:36:04 +0100 In-Reply-To: <87d0rl7kl1.fsf@mail.linkov.net> X-Provags-ID: V03:K1:42WZhbyuRO98HlUKxSXsGbSGOsHxIk5FkzYozQdFMN/4evKmVyi 4dRhkEnb1/TPJGIY73B4fS2pc2TEQk/MM2Gl9bANO712+Sg7RWStSBdxW43sy9nhlCzgZBM zKEL9CGzASi3Keya8MZ0iaj23deoZLXMp9TVtjydb3kXkTZwXushTuWOa523Gh7/xhH2oLz NBLEBJbOJVlbQQDdK960w== X-UI-Out-Filterresults: notjunk:1;V01:K0:o7f9BU4LeA8=:iDnf2i3LzM38noxNgydsUw FWGLfUUUB8hisrK4lh7achJzb+qKN1o4enHVA3zqe9w2iNxCrCwzM4jgxhrHrWdvVhxXTkmkp hugDEsVabIMBDw1cVnW2+rvrMF2Jw8crDnVGNJkXtFeLvUFKRaz/o3hhGCFSFOlqh+dOc8E2y qlbSJSFD+A+ZjRsljy2su0NmBGyHlzAZ3ulzpl7gKZa1oEHVj8YS+3DXOwESnKkZLgWZgGAX6 qPOPsNAV5+VX+NUoTF41FYk1ruInncR27O6KL8bPfkJ2oFJbASgUDK3aYn1YcDhMhYr/B4M0f fPtkeDVGxR2AxtjU7VEGNgxoAE9F8h/HD9QuvuouW0a3I0z1hsuvDjmDlqPGIl9QDw1aVXoYt YwqTQ8gED/rSDiam6GORugf//DplNKo7z28XtkG2zypWVwTXjHzili56vsMcMvOR9fy4eZT2O ULJPh9brupjNKmKiGvbz5fflEqtPBF5jx68BksyotHEK9J+A+aBc0RvXkGZrB515yEwgF+2xa ECtIiU7MmfhSvmyIrm1Q7GtI4br8dSmt+E8SXmq4pvw+HRF0QodCbqGyY1YCy0ERUMaI+rNd3 7cMgnFPOXo9P9BTUpitVvSxZj1Vf7HvIe070cE2ChURUbWMuFGXf/x5BI/Dz3GkBpxs6KR9qz eWLC+Y+wz9xO/vHR0KsdNxDi4Ths4gfvdRLA7Xj/WNaUQDZhpeUxF/qmFCK671Uw3jCtPbQNR KWvjxb/QA28xpf7Fg5nTEGL/KiUc6+EaCoQxT7eq3/1kZQTsMkjFqV0WfC8noh6ZlCveaJkh X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.43 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.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:152002 Archived-At: This is a multi-part message in MIME format. --------------080909050408020307020107 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit > So please think of any bad consequences of what we decide in (1) like > not using _any_ window on the selected frame because none of them fits > the 'min-height' constraint. Consider a default two windows frame > where the size of the selected window is preserved. We should be also able to fix Bug#10186 then. BTW, I recently tried to write a function that can be used to return the specifics of the window chosen by 'display-buffer'. Discussions of the use of such a function were frequent in the past (bug numbers 6000, 10127, 10600, 12618, 17809) but we never came to a conclusion of whether such a thing would be really useful or can be practically implemented at all. Have a look at the patch I attach, it's against the release branch. martin --------------080909050408020307020107 Content-Type: application/emacs-lisp; name="display-buffer-pretend.el" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="display-buffer-pretend.el" ZGlmZiAtLWdpdCBhL2xpc3Avd2luZG93LmVsIGIvbGlzcC93aW5kb3cuZWwNCmluZGV4IGY5 NmM4ODcuLjhiNTdkZGMgMTAwNjQ0DQotLS0gYS9saXNwL3dpbmRvdy5lbA0KKysrIGIvbGlz cC93aW5kb3cuZWwNCkBAIC02NjgwLDYgKzY2ODAsOCBAQCB3aW5kb3ctLWV2ZW4td2luZG93 LXNpemVzDQogICAgICAgICAgICAoLyAoLSAod2luZG93LXRvdGFsLWhlaWdodCB3aW5kb3cp ICh3aW5kb3ctdG90YWwtaGVpZ2h0KSkgMikpDQogICAgICAgICAoZXJyb3IgbmlsKSkpKSkp DQoNCisoZGVmdmFyIGRpc3BsYXktYnVmZmVyLS10eXBlKQ0KKw0KIChkZWZ1biB3aW5kb3ct LWRpc3BsYXktYnVmZmVyIChidWZmZXIgd2luZG93IHR5cGUgJm9wdGlvbmFsIGFsaXN0IGRl ZGljYXRlZCkNCiAgICJEaXNwbGF5IEJVRkZFUiBpbiBXSU5ET1cuDQogVFlQRSBtdXN0IGJl IG9uZSBvZiB0aGUgc3ltYm9scyBgcmV1c2UnLCBgd2luZG93JyBvciBgZnJhbWUnIGFuZA0K QEAgLTY2ODcsNiArNjY4OSw3IEBAIHdpbmRvdy0tZGlzcGxheS1idWZmZXINCiB0aGUgYWxp c3QgYXJndW1lbnQgb2YgYGRpc3BsYXktYnVmZmVyJy4gIFNldCBgd2luZG93LWRlZGljYXRl ZC1wJw0KIHRvIERFRElDQVRFRCBpZiBub24tbmlsLiAgUmV0dXJuIFdJTkRPVyBpZiBCVUZG RVIgYW5kIFdJTkRPVyBhcmUNCiBsaXZlLiINCisgIChzZXRxIGRpc3BsYXktYnVmZmVyLS10 eXBlIHR5cGUpDQogICAod2hlbiAoYW5kIChidWZmZXItbGl2ZS1wIGJ1ZmZlcikgKHdpbmRv dy1saXZlLXAgd2luZG93KSkNCiAgICAgKGRpc3BsYXktYnVmZmVyLXJlY29yZC13aW5kb3cg dHlwZSB3aW5kb3cgYnVmZmVyKQ0KICAgICAodW5sZXNzIChlcSBidWZmZXIgKHdpbmRvdy1i dWZmZXIgd2luZG93KSkNCkBAIC02NzA3LDcgKzY3MTAsOCBAQCB3aW5kb3ctLWRpc3BsYXkt YnVmZmVyDQogCQkgKGVxIChudGggMSBxdWl0LXJlc3RvcmUpICdmcmFtZSkpKQ0KIAk7OyBB ZGp1c3Qgc2l6ZSBvZiBmcmFtZSBpZiBhc2tlZCBmb3IuDQogCShjb25kDQotCSAoKG5vdCBz aXplKSkNCisgICAgICAgICA7OyBEb24ndCBhZGp1c3Qgc2l6ZSB3aGVuIHdlIHByZXRlbmQu DQorICAgICAgICAgKChvciAobm90IHNpemUpIChhc3NxICdwcmV0ZW5kIGFsaXN0KSkpDQog CSAoKGNvbnNwIHNpemUpDQogCSAgKGxldCAoKHdpZHRoIChjYXIgc2l6ZSkpDQogCQkoaGVp Z2h0IChjZHIgc2l6ZSkpDQpAQCAtNjc2Nyw2ICs2NzcxLDE1MSBAQCB3aW5kb3ctLWRpc3Bs YXktYnVmZmVyDQogICAgICAgICAgICB3aW5kb3cgKGNhciBwYXJhbWV0ZXIpIChjZHIgcGFy YW1ldGVyKSkpKSkNCiAgICAgd2luZG93KSkNCg0KKw0KKyhkZWZ1biBkaXNwbGF5LWJ1ZmZl ci1wcmV0ZW5kIChidWZmZXItb3ItbmFtZSAmb3B0aW9uYWwgYWN0aW9uIGZyYW1lIGZ1bikN CisgICJSZXR1cm4gbGlzdCBzcGVjaWZ5aW5nIHRoZSBleHBlY3RlZCBiZWhhdmlvciBvZiBg ZGlzcGxheS1idWZmZXInLg0KK1RoZSBmaXJzdCB0aHJlZSBhcmd1bWVudHMgYXJlIGFzIGZv ciAnZGlzcGxheS1idWZmZXInLiAgVGhlDQorZm91cnRoIGFyZ3VtZW50IEZVTiBpZiBub24t bmlsIHNwZWNpZmllcyBhIGZ1bmN0aW9uIHRvIGJlIGNhbGxlZA0KK3dpdGggb25lIGFyZ3Vt ZW50IC0gdGhlIHdpbmRvdyBgZGlzcGxheS1idWZmZXInIHdvdWxkIHVzZSAtIGFuZA0KK2lz IHN1cHBvc2VkIHRvIHJldHJpZXZlIGluZm9ybWF0aW9uIGFib3V0IHRoYXQgd2luZG93Lg0K Kw0KK1RoZSByZXR1cm4gdmFsdWUgaXMgYSBsaXN0IG9mIGZvdXIgdmFsdWVzLiAgVGhlIGZp cnN0IHZhbHVlIGlzDQordGhlIHZhbHVlIHJldHVybmVkIGJ5IEZVTiwgbmlsIGlmIEZVTiBp cyBub3QgYSBmdW5jdGlvbi4gIFRoZQ0KK3NlY29uZCB2YWx1ZSBpcyB0aGUgYnVmZmVyIGRp c3BsYXkgYWN0aW9uIGZ1bmN0aW9uIHdoaWNoIHdvdWxkDQoraGF2ZSBzdWNjZWVkIGluIGRp c3BsYXlpbmcgJ2J1ZmZlci1vci1uYW1lJy4gIFRoZSB0aGlyZCB2YWx1ZSBpcw0KK2VpdGhl ciB0aGUgd2luZG93ICdkaXNwbGF5LWJ1ZmZlcicgd291bGQgaGF2ZSB1c2VkIGZvciBzaG93 aW5nDQorJ2J1ZmZlci1vci1uYW1lJywgdGhlIGZyYW1lICdkaXNwbGF5LWJ1ZmZlcicgd291 bGQgaGF2ZSB1c2VkIGZvcg0KK21ha2luZyBhIG5ldyB3aW5kb3csIG9yIHRoZSBzeW1ib2wg J25ldy1mcmFtZScgaW5kaWNhdGluZyB0aGF0IGENCituZXcgZnJhbWUgd291bGQgaGF2ZSBi ZWVuIG1hZGUgZm9yIHNob3dpbmcgJ2J1ZmZlci1vci1uYW1lJy4gIFRoZQ0KK2ZvdXJ0aCB2 YWx1ZSBpcyB0aGUgYWN0aW9uIGFsaXN0ICdkaXNwbGF5LWJ1ZmZlcicgd291bGQgaGF2ZQ0K K2NvbXBpbGVkIGFuZCBwYXNzZWQgdG8gdGhlIGFjdGlvbiBmdW5jdGlvbnMuDQorDQorVGhp cyBmdW5jdGlvbiBtYXkgdXNlIG9yIGNyZWF0ZSBhbiBleGlzdGluZyB3aW5kb3cgb3IgY3Jl YXRlIGENCituZXcgd2luZG93IG9yIGZyYW1lIGZvciBzaG93aW5nICdidWZmZXItb3ItbmFt ZScgYnV0IGltbWVkaWF0ZWx5DQorcmVzdG9yZXMgdGhlIHByZXZpb3VzIGNvbmZpZ3VyYXRp b24gYWZ0ZXIgY29uc3RydWN0aW5nIHRoZSByZXR1cm4NCit2YWx1ZS4NCisNCitDYXZlYXRz OiBUaGlzIGZ1bmN0aW9uIGlzIG5vdCBjaGVhcCBiZWNhdXNlIGl0IGhhcyB0byBzYXZlIHRo ZQ0KK2NvbmZpZ3VyYXRpb25zIG9mIGFsbCBmcmFtZXMgYW5kIG1heSBoYXZlIHRvIHJlc3Rv cmUgdGhlDQorY29uZmlndXJhdGlvbiBvZiBhdCBsZWFzdCBvbmUgZnJhbWUgb3IgZGVsZXRl IGEgbmV3IGZyYW1lIGl0DQorY3JlYXRlcyBhZnRlcndhcmRzLiAgTW9yZW92ZXIsIHdoaWxl IGEgbmV3IGZyYW1lIGlzIGNyZWF0ZWQNCitpbnZpc2libHksIHRoZXJlIGlzIG5vIGd1YXJh bnRlZSB0aGF0IHRoZSBpbW1lZGlhdGUgZGVsZXRpb24gb2YNCit0aGF0IG5ldyBmcmFtZSBk b2VzIG5vdCBjYXVzZSBhIHNob3J0IGZsaWNrZXIgb2YgcmVkaXNwbGF5IG9mIHRoZQ0KK3Nl bGVjdGVkIGZyYW1lLg0KKw0KK0Fsc28sIHRoaXMgZnVuY3Rpb24gZG9lcyBub3QgcmVzaXpl IGFuIGV4aXN0aW5nIGZyYW1lLiAgU28gYW55DQorc2l6ZSB2YWx1ZXMgcmV0cmlldmVkIGZy b20gYSByZXVzZWQgZnJhbWUgdGhhdCAnZGlzcGxheS1idWZmZXInDQord291bGQgcmVzaXpl IGFyZSBpbnZhbGlkLiINCisgIChsZXQqICgoYnVmZmVyIChpZiAoYnVmZmVycCBidWZmZXIt b3ItbmFtZSkNCisJCSAgICAgYnVmZmVyLW9yLW5hbWUNCisJCSAgIChnZXQtYnVmZmVyIGJ1 ZmZlci1vci1uYW1lKSkpDQorCSA7OyBIYW5kbGUgdGhlIG9sZCBmb3JtIG9mIHRoZSBmaXJz dCBhcmd1bWVudC4NCisJIChpbmhpYml0LXNhbWUtd2luZG93IChhbmQgYWN0aW9uIChub3Qg KGxpc3RwIGFjdGlvbikpKSkNCisgICAgICAgICAoYWN0aW9uICh3aGVuIChsaXN0cCBhY3Rp b24pIGFjdGlvbikpDQorICAgICAgICAgKHVzZXItYWN0aW9uDQorCSAgKGRpc3BsYXktYnVm ZmVyLWFzc3EtcmVnZXhwDQorCSAgIChidWZmZXItbmFtZSBidWZmZXIpIGRpc3BsYXktYnVm ZmVyLWFsaXN0IGFjdGlvbikpDQorICAgICAgICAgKHNwZWNpYWwtYWN0aW9uIChkaXNwbGF5 LWJ1ZmZlci0tc3BlY2lhbC1hY3Rpb24gYnVmZmVyKSkNCisJIDs7IEV4dHJhIGFjdGlvbnMg ZnJvbSB0aGUgYXJndW1lbnRzIHRvIHRoaXMgZnVuY3Rpb246DQorCSAoZXh0cmEtYWN0aW9u DQorCSAgKGNvbnMgbmlsIChhcHBlbmQgKGlmIGluaGliaXQtc2FtZS13aW5kb3cNCisJCQkg ICAgICAgICcoKGluaGliaXQtc2FtZS13aW5kb3cgLiB0KSkpDQorCQkJICAgIChpZiBmcmFt ZQ0KKwkJCSAgICAgICAgYCgocmV1c2FibGUtZnJhbWVzIC4gLGZyYW1lKSkpKSkpDQorCSA7 OyBDb25zdHJ1Y3QgYWN0aW9uIGZ1bmN0aW9uIGxpc3QgYW5kIGFjdGlvbiBhbGlzdC4NCisJ IChhY3Rpb25zIChsaXN0IGRpc3BsYXktYnVmZmVyLW92ZXJyaWRpbmctYWN0aW9uDQorCQkg ICAgICAgIHVzZXItYWN0aW9uIHNwZWNpYWwtYWN0aW9uIGFjdGlvbiBleHRyYS1hY3Rpb24N CisJCSAgICAgICAgZGlzcGxheS1idWZmZXItYmFzZS1hY3Rpb24NCisJCSAgICAgICAgZGlz cGxheS1idWZmZXItZmFsbGJhY2stYWN0aW9uKSkNCisJIChmdW5jdGlvbnMgKGFwcGx5ICdh cHBlbmQNCisJCQkgICAobWFwY2FyIChsYW1iZGEgKHgpDQorCQkJCSAgICAgKHNldHEgeCAo Y2FyIHgpKQ0KKwkJCQkgICAgIChpZiAoZnVuY3Rpb25wIHgpIChsaXN0IHgpIHgpKQ0KKwkJ CQkgICBhY3Rpb25zKSkpDQorCSAoYWxpc3QgKGFwcGx5ICdhcHBlbmQgKG1hcGNhciAnY2Ry IGFjdGlvbnMpKSkNCisgICAgICAgICAob3JpZ2luYWwtYWxpc3QgYWxpc3QpDQorICAgICAg ICAgKHNlbGVjdGVkLXdpbmRvdyAoc2VsZWN0ZWQtd2luZG93KSkNCisgICAgICAgICAocG9p bnQgKHdpbmRvdy1wb2ludCBzZWxlY3RlZC13aW5kb3cpKQ0KKyAgICAgICAgIChmcmFtZXMg KGZyYW1lLWxpc3QpKQ0KKyAgICAgICAgIHdpbmRvd3MNCisgICAgICAgICAoY29uZnMNCisg ICAgICAgICAgKGxldCAobGlzdCkNCisgICAgICAgICAgICAoZG9saXN0IChmcmFtZSBmcmFt ZXMpDQorICAgICAgICAgICAgICAoc2V0cSB3aW5kb3dzIChhcHBlbmQgKHdpbmRvdy1saXN0 IGZyYW1lICdub21pbmkpIHdpbmRvd3MpKQ0KKyAgICAgICAgICAgICAgKHB1c2ggKGNvbnMg ZnJhbWUgKGN1cnJlbnQtd2luZG93LWNvbmZpZ3VyYXRpb24gZnJhbWUpKSBsaXN0KSkNCisg ICAgICAgICAgICBsaXN0KSkNCisgICAgICAgICB3aW5kb3cgdmFsdWUgZnVuY3Rpb24gZGlz cGxheS1idWZmZXItLXR5cGUpDQorDQorICAgIDs7IElmICdkaXNwbGF5LWJ1ZmZlcicgd291 bGQgY3JlYXRlIGEgbmV3IGNoaWxkIGZyYW1lLCBtYWtlIGl0DQorICAgIDs7IGludmlzaWJs ZS4NCisgICAgKGxldCAoKHBhcmFtZXRlcnMgKGNkciAoYXNzcSAnY2hpbGQtZnJhbWUtcGFy YW1ldGVycyBhbGlzdCkpKSkNCisgICAgICAocHVzaCAoY29ucyAnY2hpbGQtZnJhbWUtcGFy YW1ldGVycw0KKyAgICAgICAgICAgICAgICAgIChjb25zICcodmlzaWJpbGl0eSAuIG5pbCkg cGFyYW1ldGVycykpDQorICAgICAgICAgICAgYWxpc3QpKQ0KKw0KKyAgICA7OyBJZiAnZGlz cGxheS1idWZmZXInIHdvdWxkIGNyZWF0ZSBhIG5ldyBmcmFtZSwgbWFrZSBpdA0KKyAgICA7 OyBpbnZpc2libGUuDQorICAgIChsZXQgKChwYXJhbWV0ZXJzIChjZHIgKGFzc3EgJ3BvcC11 cC1mcmFtZS1wYXJhbWV0ZXJzIGFsaXN0KSkpKQ0KKyAgICAgIChwdXNoIChjb25zICdwb3At dXAtZnJhbWUtcGFyYW1ldGVycw0KKyAgICAgICAgICAgICAgICAgIChjb25zICcodmlzaWJp bGl0eSAuIG5pbCkgcGFyYW1ldGVycykpDQorCSAgICBhbGlzdCkpDQorDQorICAgIDs7ICdw cmV0ZW5kJyBtYWtlcyBzdXJlIHRoYXQgJ2Rpc3BsYXktYnVmZmVyJyBkb2Vzbid0IHJlc2l6 ZSBhbg0KKyAgICA7OyBleGlzdGluZyBmcmFtZS4gICdpbmhpYml0LXN3aXRjaC1mcmFtZScg bXVzdCBiZSBvdmVycmlkZGVuIHRvDQorICAgIDs7IGF2b2lkIHRoYXQgYSBuZXcgZnJhbWUg d2UgbWFrZSBpbnZpc2libGUgYWJvdmUgaXMgbWFkZSB2aXNpYmxlLg0KKyAgICAoc2V0cSBh bGlzdCAoYXBwZW5kICcoKHByZXRlbmQgLiB0KSAoaW5oaWJpdC1zd2l0Y2gtZnJhbWUgLiB0 KSkgYWxpc3QpKQ0KKw0KKyAgICAodW5sZXNzIChidWZmZXItbGl2ZS1wIGJ1ZmZlcikNCisg ICAgICAoZXJyb3IgIkludmFsaWQgYnVmZmVyIikpDQorDQorICAgICh3aGlsZSAoYW5kIGZ1 bmN0aW9ucyAobm90IHdpbmRvdykpDQorICAgICAgKHNldHEgZnVuY3Rpb24gKGNhciBmdW5j dGlvbnMpKQ0KKyAgICAgIChzZXRxIHdpbmRvdyAoZnVuY2FsbCBmdW5jdGlvbiBidWZmZXIg YWxpc3QpDQorCSAgICBmdW5jdGlvbnMgKGNkciBmdW5jdGlvbnMpKSkNCisNCisgICAgKHdo ZW4gKHdpbmRvdy1saXZlLXAgd2luZG93KQ0KKyAgICAgIChzZXRxIHZhbHVlIChsaXN0ICh3 aGVuIChmdW5jdGlvbnAgZnVuKSAoZnVuY2FsbCBmdW4gd2luZG93KSkNCisgICAgICAgICAg ICAgICAgICAgICAgICBmdW5jdGlvbg0KKyAgICAgICAgICAgICAgICAgICAgICAgIChjb25k DQorICAgICAgICAgICAgICAgICAgICAgICAgICgoZXEgZGlzcGxheS1idWZmZXItLXR5cGUg J3JldXNlKQ0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgd2luZG93KQ0KKyAgICAgICAg ICAgICAgICAgICAgICAgICAoKGVxIGRpc3BsYXktYnVmZmVyLS10eXBlICd3aW5kb3cpDQor ICAgICAgICAgICAgICAgICAgICAgICAgICAod2luZG93LWZyYW1lIHdpbmRvdykpDQorICAg ICAgICAgICAgICAgICAgICAgICAgICgoZXEgZGlzcGxheS1idWZmZXItLXR5cGUgJ2ZyYW1l KQ0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgJ25ldy1mcmFtZSkpDQorICAgICAgICAg ICAgICAgICAgICAgICAgb3JpZ2luYWwtYWxpc3QpKQ0KKw0KKyAgICAgIDs7IFVuZG8gZGlz cGxheS4NCisgICAgICAobGV0ICgoZnJhbWUgKHdpbmRvdy1mcmFtZSB3aW5kb3cpKSkNCisg ICAgICAgIChjb25kDQorICAgICAgICAgKChlcSBkaXNwbGF5LWJ1ZmZlci0tdHlwZSAncmV1 c2UpDQorICAgICAgICAgIDs7IEFuIGV4aXN0aW5nIHdpbmRvdyB3YXMgcmV1c2VkLg0KKyAg ICAgICAgICAobGV0ICgoY29uZiAoYXNzcSBmcmFtZSBjb25mcykpKQ0KKyAgICAgICAgICAg ICh3aXRoLXNlbGVjdGVkLWZyYW1lIGZyYW1lDQorICAgICAgICAgICAgICAoc2V0LXdpbmRv dy1jb25maWd1cmF0aW9uIChjZHIgY29uZikpKSkpDQorICAgICAgICAgKChlcSBkaXNwbGF5 LWJ1ZmZlci0tdHlwZSAnd2luZG93KQ0KKyAgICAgICAgICA7OyBBIG5ldyB3aW5kb3cgd2Fz IG1hZGUgb24gYW4gZXhpc3RpbmcgZnJhbWUuDQorICAgICAgICAgIChsZXQgKChjb25mIChh c3NxIGZyYW1lIGNvbmZzKSkpDQorICAgICAgICAgICAgKHdpdGgtc2VsZWN0ZWQtZnJhbWUg ZnJhbWUNCisgICAgICAgICAgICAgIChzZXQtd2luZG93LWNvbmZpZ3VyYXRpb24gKGNkciBj b25mKSkpKSkNCisgICAgICAgICAoKGVxIGRpc3BsYXktYnVmZmVyLS10eXBlICdmcmFtZSkN CisgICAgICAgICAgOzsgQSBuZXcgZnJhbWUgd2FzIG1hZGUuDQorICAgICAgICAgIChkZWxl dGUtZnJhbWUgZnJhbWUpKSkpKQ0KKw0KKyAgICAod2hlbiAod2luZG93LWxpdmUtcCBzZWxl Y3RlZC13aW5kb3cpDQorICAgICAgKHNldC13aW5kb3ctcG9pbnQgc2VsZWN0ZWQtd2luZG93 IHBvaW50KSkNCisNCisgICAgdmFsdWUpKQ0KKw0KKyhkZWZ1biBkaXNwbGF5LWJ1ZmZlci1l eHBlY3RlZC1ib2R5LXdpZHRoIChidWZmZXItb3ItbmFtZSAmb3B0aW9uYWwgYWN0aW9uIGZy YW1lKQ0KKyAgIlJldHVybiBib2R5IHdpZHRoIG9mIHdpbmRvdyAnZGlzcGxheS1idWZmZXIn IHdvdWxkIHNob3cgJ2J1ZmZlci1vci1uYW1lJyBpbi4NCitUaGUgYXJndW1lbnRzICdidWZm ZXItb3ItbmFtZScsICdhY3Rpb24nIGFuZCAnZnJhbWUnIGFyZSBhcyBmb3INCisnZGlzcGxh eS1idWZmZXInLiINCisgIChjYXIgKGRpc3BsYXktYnVmZmVyLXByZXRlbmQNCisgICAgICAg IGJ1ZmZlci1vci1uYW1lIGFjdGlvbiBmcmFtZQ0KKyAgICAgICAgKGxhbWJkYSAod2luZG93 KQ0KKyAgICAgICAgICAod2luZG93LWJvZHktd2lkdGggd2luZG93KSkpKSkNCisNCiAoZGVm dW4gd2luZG93LS1tYXliZS1yYWlzZS1mcmFtZSAoZnJhbWUpDQogICAobWFrZS1mcmFtZS12 aXNpYmxlIGZyYW1lKQ0KICAgKHVubGVzcyAob3IgKGZyYW1lLXBhcmFtZXRlciBmcmFtZSAn bm8tZm9jdXMtb24tbWFwKQ0K --------------080909050408020307020107--