From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Shynur Xie Newsgroups: gmane.emacs.bugs Subject: bug#65621: [PATCH] `dired-next-line' go to meaningful line Date: Thu, 31 Aug 2023 18:15:09 +0000 Message-ID: References: <834jkghcu1.fsf@gnu.org> <83y1hsfw83.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="_002_PH0PR11MB7470C711EBAB79091E0EC63FD7E5APH0PR11MB7470namp_" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="7680"; mail-complaints-to="usenet@ciao.gmane.io" Cc: "65621@debbugs.gnu.org" <65621@debbugs.gnu.org> To: Eli Zaretskii , Drew Adams , Stefan Kangas Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Thu Aug 31 20:16:07 2023 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 1qbmD9-0001nl-4A for geb-bug-gnu-emacs@m.gmane-mx.org; Thu, 31 Aug 2023 20:16:07 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qbmCy-0005tr-GC; Thu, 31 Aug 2023 14:15:56 -0400 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 1qbmCw-0005tX-22 for bug-gnu-emacs@gnu.org; Thu, 31 Aug 2023 14:15:55 -0400 Original-Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qbmCv-0004Fo-Pg for bug-gnu-emacs@gnu.org; Thu, 31 Aug 2023 14:15:53 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qbmD3-0005E2-OB for bug-gnu-emacs@gnu.org; Thu, 31 Aug 2023 14:16:01 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Shynur Xie Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 31 Aug 2023 18:16:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 65621 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch Original-Received: via spool by 65621-submit@debbugs.gnu.org id=B65621.169350572720038 (code B ref 65621); Thu, 31 Aug 2023 18:16:01 +0000 Original-Received: (at 65621) by debbugs.gnu.org; 31 Aug 2023 18:15:27 +0000 Original-Received: from localhost ([127.0.0.1]:56983 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qbmCU-0005D7-SJ for submit@debbugs.gnu.org; Thu, 31 Aug 2023 14:15:27 -0400 Original-Received: from mail-dm6nam12olkn2053.outbound.protection.outlook.com ([40.92.22.53]:57793 helo=NAM12-DM6-obe.outbound.protection.outlook.com) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qbmCS-0005Cs-Ah for 65621@debbugs.gnu.org; Thu, 31 Aug 2023 14:15:25 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kg0q8AWfwFMrcbzXXbMUbOOCw5jKv5urXfKvgkMdeiaovW/p119i2ZwSTuy2MWDbNlNU1AkrqUZfEHVp7qSrKtVMEZ9sFN26FTC+gvDGiXrvdAniQzHft3P8giVGG8EF2D6HgIHi51HvJf+/EpY+od+JRBA4M8pbK4k4HPeebnJo/GuWXdaiq9Ekm0uJlW02NlfLWHLomPBDIWhlV4Dp/2w0QyHbJjZb2nUPGyyQbh5zwOAZ0Cflrj+We7d4TNWSkT4U0YYRSXylaGE5VAl6P+D+AYv6CX2hQdAbnt998jSELSPvaw1bhazepgW394wiXbBJW8nVtXpuW0grfjfhlg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=oX8hr4jsVeLL33AxvOTY0k08+nVpvu5jSoj0C6+GkAo=; b=JzVa1iHZwlyp1/+XulDcCslnmgw79I5L5yPKMh5S5I32sn6DlUeHIE1Lr9iqrbuJqgYvThE3oN7EICgP2QHAsxJIVhosq2A6sInWEYCdAgwqgcLc1Fut2DzsPw+PvLZQYJMUNrDFEFmS/bwQfFM2YPFWxv4UxYJSUCuEq2Va3I0VwxtUq4WxDXKbqffJhKV3dMYqETJIgddMu13NnCGZwHQhRxsWif9qnpRm9BdBy3JK3smJ4GxNOCVYvqUf6Ib58wA9KVyjav4Kg+0giDLAbNYAtzTBoAKzEDmrkQs2fAt41IMwZhl6TnfU6SeGJoKrwbfDtm/TcQgYw6+aO54bpg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=oX8hr4jsVeLL33AxvOTY0k08+nVpvu5jSoj0C6+GkAo=; b=BQSwCB6IxTwHTCaqcvn9Q+hDuKNC7WGurlypQ9ASDMn0w0X7K2ag1VVmf57x6h6tj1qwwIFSHNcN1PoHer39UrYNZiLyxQ6RAir2jrAjiiborfCSGmPRcH1fewF/HSSj2Kka9xhfwx0iZP8TxewCrGr8Uld4AVAbSImWhT/LDRduFcWGtRDJxylzZveCMm4fvxk/hLc+dH4Mo+ZVI7+x6Uw5Gzg93RqbMTnmuZQppgNXM79pewvL+gDdnUdgI6tOqNWY266+INNK+Brp1+x2DYuDGf3/VMyMp23EZ1CurtU1NEfN39u6pz/5bE+R1Q8j8vu1QaKqlJoNKAl9yOqkVg== Original-Received: from PH0PR11MB7470.namprd11.prod.outlook.com (2603:10b6:510:288::7) by SJ1PR11MB6180.namprd11.prod.outlook.com (2603:10b6:a03:459::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.20; Thu, 31 Aug 2023 18:15:09 +0000 Original-Received: from PH0PR11MB7470.namprd11.prod.outlook.com ([fe80::d0b8:54f7:2a45:2983]) by PH0PR11MB7470.namprd11.prod.outlook.com ([fe80::d0b8:54f7:2a45:2983%5]) with mapi id 15.20.6745.015; Thu, 31 Aug 2023 18:15:09 +0000 Thread-Topic: bug#65621: [PATCH] `dired-next-line' go to meaningful line Thread-Index: AQHZ20HT/8wr5daoKU60WYHNTQV+4bAC13cNgAABd6SAAArZcIAAUhkAgACwII+AAKD/oIAABN5EgAADr2CAACeyeA== In-Reply-To: Accept-Language: en-US, zh-CN Content-Language: en-US X-MS-Has-Attach: yes x-ms-exchange-messagesentrepresentingtype: 1 x-tmn: [v7mxjgMxnWrtRsYyaqGE1SfSpSxj6S2T] x-ms-publictraffictype: Email x-ms-traffictypediagnostic: PH0PR11MB7470:EE_|SJ1PR11MB6180:EE_ x-ms-office365-filtering-correlation-id: 91e79526-61a0-4eaf-9219-08dbaa4e35dd x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: mr5Cx7d/SKntpDjcGVK9nSSFd5H95DTrNj6d7+VEfvIRg+zyR0VVyY3QcKvOudixpu20KsBg7OQwIotY1v18mGQlc8Wlj0AGbnuP/n0p2EZeGAgqVnGm+k1MKAjojbWexY4emDCIbX6XIUb9prxHyhnJH9OmJfLM8kEbMopxnkM7uMCd/o/DhEVNTVGHOrrFTW+7gXHmx7vhWU+iBIWpeX9DWjowC/x8+laNuj2EJSccZvIGLjj1y4tVIpAKUmBueJklUzs6Pe+8KID5zd8ri1+A+jC7Yirx9pLs7HTO3+arDLI5Uu/lUj0pbDSsWGRmdM7wyNXAXeEzYDZBEo55yF8Q4SkDeQY6O9btp5DfgGACk9/ICH1xbXL1pAwOwOc5/V+5xppjZkRWH7/45wYrvNZHdfrHJpQcOKETdPNo4MUGOgC5bes6nckO9BHNZBOY0l7FRbNQzAUaEUuY+78F+u8E5yxaoNTDrsqWn118KOwl/01aON8uwO0ct80r3cU253I4qnZKLrAXWKG96y5hSk1KySU6XJDpM1RWX/3GfkuWYTK2ekK6P/yyTqShZs9r x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: Q5ke2iGhi96S7KDcQBvvhZ/9bXGQv/7pU8UWyuyFkY7Y3f17U3IimhYa9U2OiMBiHVCzusXy/P5I5BK3//g93+lyO36hiheCDviPsPvTbaqcYv2AKJ6XVjl0ObyC1wkc6IHR87bMReVV5lKsmPeg2tu9cqNb0MEU7vH97VI6Xeoe2OsxRZi/Ti80hkiFycIiKWF6WRolpejO1C4BpeOcc3Kk+HrnHnl76x/LPGhbLL7jRAM4JeyFmef5agkZ4kklQbA3Yso9xnkzoEDSst+089sh59teIM1ZeM6fKLw1x6ACwRrBFS2gEiF0RiOH9GWsca/wKPDWvDJD1f8L2T6VGTtPYPJEt4KCeWULe/2Sir6eTVL4y87PI8TnxWM6EumHNBZRSiqP4JJSjideaNIQVpTG+xuusWrBNopt1ofyuczhwaWAr9ifSRIfZzM2kqFjrX06IKJMjPymJP7Te6ZnaCX4H5GfAqa1AtlSOedb1B8ulk21LfqmMWN3N9IerTleI+4yhBblwNCRKjsWOMYHz11+M3P554ruXBsYdXkaGMhp2eFrWFWbMoeeKiWWCF0xM1MKn91ylTKt1AQsWHTXjFMwpm6zgWzJEC7ADIFCe0q5KjCWH9yPMQo6K4GlJBKG2lj4tZNjmVvP3N/P4BKKKVUeU0BuG05yv+tIP9M6BqRdY4hHvIj3r5OqP1OnvNtaLUQaAkAS/uU2ifJe8DhnWLt2TwzWzHnQezq7aLvHBMw8YWyVl3JGvRWASR l/UJuGYxuC5CP0pVLIvMy0xoxs9xyGsVNOzRz4IQ58k+cxjQmj8d5nD8zEGXZFPP+LGqhn2mns7P0t3JqFlJqlaLlfrUnbHmgP X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PH0PR11MB7470.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-CrossTenant-Network-Message-Id: 91e79526-61a0-4eaf-9219-08dbaa4e35dd X-MS-Exchange-CrossTenant-rms-persistedconsumerorg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-CrossTenant-originalarrivaltime: 31 Aug 2023 18:15:09.0553 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ1PR11MB6180 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:268834 Archived-At: --_002_PH0PR11MB7470C711EBAB79091E0EC63FD7E5APH0PR11MB7470namp_ Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable The final patch is attached. (See the end for how to test it.)=0A= =0A= > Eli:=0A= > it will need to be an opt-in feature.=0A= =0A= By default, it's disabled.=0A= =0A= > Dradams:=0A= > Be sure to consider also the behavior when subdir listings are=0A= > inserted in the buffer.=0A= =0A= Considered.=0A= =0A= > Stefan:=0A= > But Drew's point about inserted subdirs would need to be addressed.=0A= =0A= Addressed.=0A= =0A= > Stefan=0A= > I'd probably enable it if we had such an option, FWIW.=0A= =0A= Stefan likes my original patch, so please set=0A= `dired-cursor-goto-meaningful-line' to `bounded' and=0A= `dired-headerline-is-meaningful' to nil.=0A= =0A= > Dradams:=0A= > it should move to the subdir header line, skipping only the blank=0A= > line before it.=0A= > `dired-(next|previous)-line' should move to header lines, as well as=0A= > to file/dir lines.=0A= > If you really DON'T want `n'|`p' to go to header lines then maybe=0A= > set some option.=0A= =0A= Have taken your advice. You like what your Dired+ does, so please set=0A= `dired-cursor-goto-meaningful-line' to `cycle' and=0A= `dired-headerline-is-meaningful' to t.=0A= =0A= ___=0A= =0A= - To Test It:=0A= =0A= There is totally 4 (not 6) kinds of combinations of the 2 new options:=0A= =0A= 1. (setq dired-cursor-goto-meaningful-line 'bounded=0A= dired-headerline-is-meaningful nil)=0A= 2. (setq dired-cursor-goto-meaningful-line 'cycle=0A= dired-headerline-is-meaningful nil)=0A= 3. (setq dired-cursor-goto-meaningful-line 'bounded=0A= dired-headerline-is-meaningful t)=0A= 4. (setq dired-cursor-goto-meaningful-line 'cycle=0A= dired-headerline-is-meaningful t)=0A= =0A= Test them in 3 kinds of dired buffers:=0A= =0A= 1. regular dired buffer=0A= 2. buffer inserted subdirs=0A= 3. the option `dired-listing-switches' is an empty string, the=0A= directory is empty, and there is no subdir inserted. I.e., there=0A= is no filename lines. Only empty lines or header lines.=0A= =0A= Move cursor from anywhere.= --_002_PH0PR11MB7470C711EBAB79091E0EC63FD7E5APH0PR11MB7470namp_ Content-Type: application/octet-stream; name="0001-dired-next-line-go-to-meaningful-line.patch" Content-Description: 0001-dired-next-line-go-to-meaningful-line.patch Content-Disposition: attachment; filename="0001-dired-next-line-go-to-meaningful-line.patch"; size=5554; creation-date="Thu, 31 Aug 2023 18:14:20 GMT"; modification-date="Thu, 31 Aug 2023 18:14:20 GMT" Content-Transfer-Encoding: base64 RnJvbSA4ZGRmYjk5YTkyMTM0MTRlNDM4ZmM0OTQ2Y2UzOTM1YjIxYjZjYTNkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBzaHludXIgPG9uZS5sYXN0Lmtpc3NAb3V0bG9vay5jb20+CkRh dGU6IEZyaSwgMSBTZXAgMjAyMyAwMjoxMjoyNSArMDgwMApTdWJqZWN0OiBbUEFUQ0hdIGBkaXJl ZC1uZXh0LWxpbmUnIGdvIHRvIG1lYW5pbmdmdWwgbGluZQoKLS0tCiBsaXNwL2RpcmVkLmVsIHwg OTUgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tCiAx IGZpbGUgY2hhbmdlZCwgODggaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9saXNwL2RpcmVkLmVsIGIvbGlzcC9kaXJlZC5lbAppbmRleCBlOTZiODVhLi4zZDdkNmE2 IDEwMDY0NAotLS0gYS9saXNwL2RpcmVkLmVsCisrKyBiL2xpc3AvZGlyZWQuZWwKQEAgLTQ5NSw2 ICs0OTUsMzAgQEAgdG8gbmlsOiBhIHBpcGUgdXNpbmcgYHpjYXQnIG9yIGBndW56aXAgLWMnIHdp bGwgYmUgdXNlZC4iCiAgICAgICAgICAgICAgICAgIChzdHJpbmcgOnRhZyAiU3dpdGNoZXMiKSkK ICAgOnZlcnNpb24gIjI5LjEiKQogCisoZGVmY3VzdG9tIGRpcmVkLWN1cnNvci1nb3RvLW1lYW5p bmdmdWwtbGluZSBuaWwKKyAgIk5vbi1uaWwgbWVhbnMgbW92aW5nIGN1cnNvciBvbmx5IHRvIGEg cGF0aG5hbWUgbGluZS4KK1RoaXMgb3B0aW9uIG1ha2VzIGBkaXJlZC1uZXh0LWxpbmUnIGFuZCBg ZGlyZWQtcHJldmlvdXMtbGluZScgbW92ZQorY3Vyc29yIHRvOgorIC0gYSBsaW5lIGNvbnRhaW5p bmcgZmlsZW5hbWUgaWYgc3VjaCBhIGxpbmUgZG9lcyBleGlzdC4KKyAtIG9yLCBhIGhlYWRlciBs aW5lIGlmIGBkaXJlZC1oZWFkZXJsaW5lLWlzLW1lYW5pbmdmdWwnIGlzIG5vbi1uaWwuCisKK1Bv c3NpYmxlIG5vbi1uaWwgdmFsdWVzOgorICogICBgY3ljbGUnOiB0aGUgbmV4dC9wcmV2aW91cyBs aW5lIG9mIHRoZSBsYXN0L2ZpcnN0IGxpbmUgaXMgdGhlCisgICAgICAgICAgICAgIGZpcnN0L2xh c3QgbGluZS4KKyAqIGBib3VuZGVkJzogY3Vyc29yIGNhbm5vdCBtb3ZlIHVwL2Rvd24gaWYgdGhl IGN1cnJlbnQgbGluZSBpcyB0aGUKKyAgICAgICAgICAgICAgZmlyc3QvbGFzdCBsaW5lLgorICog YW55IG90aGVyIHN5bWJvbDogdGhlIGVmZmVjdCBpcyB0aGUgc2FtZSBhcyBgYm91bmRlZCcsIGJ1 dCBpdCBpcworICAgICAgICAgICAgICBub3QgcmVjb21tZW5kZWQgZm9yIHVzZS4iCisgIDp0eXBl ICcoY2hvaWNlIChjb25zdCA6dGFnICJNb3ZlIHRvIGFueSBsaW5lIiBuaWwpCisgICAgICAgICAg ICAgICAgIChjb25zdCA6dGFnICJMb29wIHRocm91Z2ggcGF0aG5hbWUgbGluZXMiIGN5Y2xlKQor ICAgICAgICAgICAgICAgICAoY29uc3QgOnRhZyAiT25seSB0byBwYXRobmFtZSBsaW5lIiBib3Vu ZGVkKSkKKyAgOmdyb3VwICdkaXJlZCkKKworKGRlZmN1c3RvbSBkaXJlZC1oZWFkZXJsaW5lLWlz LW1lYW5pbmdmdWwgdAorICAiTm9uLW5pbCBtZWFucyBuZXZlciBza2lwIGhlYWRlciBsaW5lIHdo ZW4gbW92aW5nIGN1cnNvci4iCisgIDp0eXBlICdib29sZWFuCisgIDpncm91cCAnZGlyZWQpCisK IChkZWZjdXN0b20gZGlyZWQtaGlkZS1kZXRhaWxzLXByZXNlcnZlZC1jb2x1bW5zIG5pbAogICAi TGlzdCBvZiBjb2x1bW5zIHdoaWNoIGFyZSBub3QgaGlkZGVuIGluIGBkaXJlZC1oaWRlLWRldGFp bHMtbW9kZScuIgogICA6dHlwZSAnKHJlcGVhdCBpbnRlZ2VyKQpAQCAtMjY2NiwyMiArMjY5MCw3 OSBAQCBPdGhlcndpc2UsIHRvZ2dsZSBgcmVhZC1vbmx5LW1vZGUnLiIKICAgICAgICh3ZGlyZWQt Y2hhbmdlLXRvLXdkaXJlZC1tb2RlKQogICAgIChyZWFkLW9ubHktbW9kZSAndG9nZ2xlKSkpCiAK LShkZWZ1biBkaXJlZC1uZXh0LWxpbmUgKGFyZykKLSAgIk1vdmUgZG93biBsaW5lcyB0aGVuIHBv c2l0aW9uIGF0IGZpbGVuYW1lLgotT3B0aW9uYWwgcHJlZml4IEFSRyBzYXlzIGhvdyBtYW55IGxp bmVzIHRvIG1vdmU7IGRlZmF1bHQgaXMgb25lIGxpbmUuIgotICAoaW50ZXJhY3RpdmUgIl5wIikK KyhkZWZ1biBkaXJlZC0tdHJpdmlhbC1uZXh0LWxpbmUgKGFyZykKKyAgIk1vdmUgZG93biBBUkcg bGluZXMgdGhlbiBwb3NpdGlvbiBhdCBmaWxlbmFtZS4iCiAgIChsZXQgKChsaW5lLW1vdmUtdmlz dWFsKQotCShnb2FsLWNvbHVtbikpCisgICAgKGdvYWwtY29sdW1uKSkKICAgICAobGluZS1tb3Zl IGFyZyB0KSkKICAgOzsgV2UgbmV2ZXIgd2FudCB0byBtb3ZlIHBvaW50IGludG8gYW4gaW52aXNp YmxlIGxpbmUuCiAgICh3aGlsZSAoYW5kIChpbnZpc2libGUtcCAocG9pbnQpKQotCSAgICAgIChu b3QgKGlmIChhbmQgYXJnICg8IGFyZyAwKSkgKGJvYnApIChlb2JwKSkpKQorICAgICAgICAgIChu b3QgKGlmIChhbmQgYXJnICg8IGFyZyAwKSkgKGJvYnApIChlb2JwKSkpKQogICAgIChmb3J3YXJk LWNoYXIgKGlmIChhbmQgYXJnICg8IGFyZyAwKSkgLTEgMSkpKQogICAoZGlyZWQtbW92ZS10by1m aWxlbmFtZSkpCiAKKyhkZWZ1biBkaXJlZC0tbWVhbmluZ2Z1bC1saW5lLXAgKCkKKyAgIlJldHVy biB0IGlmIHRoZSBjdXJyZW50IGxpbmUgY29udGFpbnMgYSBmaWxlbmFtZSwgb3IgaXMgYSBoZWFk ZXIKK2xpbmUgaWYgYGRpcmVkLWhlYWRlcmxpbmUtaXMtbWVhbmluZ2Z1bCcgaXMgbm9uLW5pbC4i CisgIChzYXZlLWV4Y3Vyc2lvbgorICAgIDs7IE1vdmUgdG8gQk9MIG9yIGZpbGVuYW1lLgorICAg IChkaXJlZC1tb3ZlLXRvLWZpbGVuYW1lKQorICAgIChvciAoZ2V0LWNoYXItcHJvcGVydHkgKHBv aW50KSAnZGlyZWQtZmlsZW5hbWUpCisgICAgICAgICh3aGVuIGRpcmVkLWhlYWRlcmxpbmUtaXMt bWVhbmluZ2Z1bAorICAgICAgICAgIChza2lwLWNoYXJzLWZvcndhcmQgIltbOmJsYW5rOl1dIikK KyAgICAgICAgICAoZXEgKGdldC10ZXh0LXByb3BlcnR5IChwb2ludCkgJ2ZhY2UpICdkaXJlZC1o ZWFkZXIpKSkpKQorCisoZGVmdW4gZGlyZWQtbmV4dC1saW5lIChhcmcpCisgICJNb3ZlIGRvd24g bGluZXMgdGhlbiBwb3NpdGlvbiBhdCBmaWxlbmFtZS4KK09wdGlvbmFsIHByZWZpeCBBUkcgc2F5 cyBob3cgbWFueSBsaW5lcyB0byBtb3ZlOyBkZWZhdWx0IGlzIG9uZSBsaW5lLgorCitDdXJzb3Ig d29uJ3QgZ28gdG8gZW1wdHkgbGluZSB3aGVuIGBkaXJlZC1jdXJzb3ItZ290by1tZWFuaW5nZnVs LWxpbmUnCitpcyBub24tbmlsOyBmdXJ0aGVyLCBpdCBhbHNvIHNraXBzIGRpcmVkIGhlYWRlciBs aW5lcyBpZgorYGRpcmVkLWhlYWRlcmxpbmUtaXMtbWVhbmluZ2Z1bCcgaXMgbmlsLiIKKyAgKGlu dGVyYWN0aXZlICJecCIpCisgIChpZiBkaXJlZC1jdXJzb3ItZ290by1tZWFuaW5nZnVsLWxpbmUK KyAgICAgIChsZXQqICgob2xkLXBvc2l0aW9uIChwcm9nbgorICAgICAgICAgICAgICAgICAgICAg ICAgICAgICA7OyBJdCdzIGFsd2F5cyB0cnVlIHRoYXQgd2Ugc2hvdWxkIG1vdmUKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgOzsgdG8gdGhlIGZpbGVuYW1lIHdoZW4gcG9zc2libGUuCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIChkaXJlZC1tb3ZlLXRvLWZpbGVuYW1lKQorICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAocG9pbnQpKSkKKyAgICAgICAgICAgICA7OyBVcC9E b3duIGluZGljYXRlcyB0aGUgZGlyZWN0aW9uLgorICAgICAgICAgICAgIChtb3ZpbmctZG93biAo aWYgKG5hdG51bXAgYXJnKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMSAgIDsgbWVh bnMgRG93bi4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAtMSkpICA7IG1lYW5zIFVwLgor ICAgICAgICAgICAgIDs7IFRoZSBmb2xsb3dpbmcgd2hpbGUtbG9vcCBydW5zIHRoaXMgbWFueSB0 aW1lcyBhdAorICAgICAgICAgICAgIDs7IG1vc3QsIHVubGVzcyB0aGVyZSBpcyBub3QgZXZlbiBh IG1lYW5pbmdmdWwgbGluZSwKKyAgICAgICAgICAgICA7OyBidXQgdGhpcyBpcyBhbG1vc3QgaW1w b3NzaWJsZS4KKyAgICAgICAgICAgICAodG90YWwtbW92ZXMgKCogMyBhcmcgbW92aW5nLWRvd24p KSkKKyAgICAgICAgOzsgTGluZSBieSBsaW5lIGluIGNhc2Ugd2UgZm9yZ2V0IHRvIHNraXAgbWVh bmluZ2xlc3MgbGluZXMuCisgICAgICAgICh3aGlsZSAoYW5kIChub3QgKHplcm9wIGFyZykpCisg ICAgICAgICAgICAgICAgICAgIDs7IElmIHRoZXJlJ3Mgbm8gbWVhbmluZ2Z1bCBsaW5lcywgc3Rv cCB0aGUKKyAgICAgICAgICAgICAgICAgICAgOzsgZW5kbGVzcyB3aGlsZS1sb29wLgorICAgICAg ICAgICAgICAgICAgICAobmF0bnVtcCB0b3RhbC1tb3ZlcykpCisgICAgICAgICAgKGNsLWRlY2Yg dG90YWwtbW92ZXMpCisgICAgICAgICAgKGRpcmVkLS10cml2aWFsLW5leHQtbGluZSBtb3Zpbmct ZG93bikKKyAgICAgICAgICAod2hlbiAoPSBvbGQtcG9zaXRpb24gKHBvaW50KSkKKyAgICAgICAg ICAgIDs7IE5vdyBjdXJzb3IgaXMgYXQgYmVnaW5uaW5nL2VuZCBvZiBidWZmZXIsCisgICAgICAg ICAgICA7OyBidXQgdGhlIGN1cnNvciBzdGlsbCB3YW50cyB0byBtb3ZlIGZhcnRoZXIuCisgICAg ICAgICAgICAoaWYgKGVxIGRpcmVkLWN1cnNvci1nb3RvLW1lYW5pbmdmdWwtbGluZSAnY3ljbGUp CisgICAgICAgICAgICAgICAgKGdvdG8tY2hhciAoaWYgKD0gMSBtb3ZpbmctZG93bikKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAocG9pbnQtbWluKQorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAocG9pbnQtbWF4KSkpCisgICAgICAgICAgICAgICh1bmxlc3MgKGRpcmVkLS1t ZWFuaW5nZnVsLWxpbmUtcCkKKyAgICAgICAgICAgICAgICAoZGlyZWQtLXRyaXZpYWwtbmV4dC1s aW5lICgtIG1vdmluZy1kb3duKSkKKyAgICAgICAgICAgICAgICAoc2V0cSBhcmcgbW92aW5nLWRv d24pKSkpCisgICAgICAgICAgKHNldHEgb2xkLXBvc2l0aW9uIChwb2ludCkpCisgICAgICAgICAg KHdoZW4gKGRpcmVkLS1tZWFuaW5nZnVsLWxpbmUtcCkKKyAgICAgICAgICAgIChjbC1kZWNmIGFy ZyBtb3ZpbmctZG93bikpKSkKKyAgICAoZGlyZWQtLXRyaXZpYWwtbmV4dC1saW5lIGFyZykpKQor CiAoZGVmdW4gZGlyZWQtcHJldmlvdXMtbGluZSAoYXJnKQogICAiTW92ZSB1cCBsaW5lcyB0aGVu IHBvc2l0aW9uIGF0IGZpbGVuYW1lLgotT3B0aW9uYWwgcHJlZml4IEFSRyBzYXlzIGhvdyBtYW55 IGxpbmVzIHRvIG1vdmU7IGRlZmF1bHQgaXMgb25lIGxpbmUuIgorT3B0aW9uYWwgcHJlZml4IEFS RyBzYXlzIGhvdyBtYW55IGxpbmVzIHRvIG1vdmU7IGRlZmF1bHQgaXMgb25lIGxpbmUuCisKK0N1 cnNvciB3b24ndCBnbyB0byBlbXB0eSBsaW5lIHdoZW4gYGRpcmVkLWN1cnNvci1nb3RvLW1lYW5p bmdmdWwtbGluZScKK2lzIG5vbi1uaWw7IGZ1cnRoZXIsIGl0IGFsc28gc2tpcHMgZGlyZWQgaGVh ZGVyIGxpbmVzIGlmCitgZGlyZWQtaGVhZGVybGluZS1pcy1tZWFuaW5nZnVsJyBpcyBuaWwuIgog ICAoaW50ZXJhY3RpdmUgIl5wIikKICAgKGRpcmVkLW5leHQtbGluZSAoLSAob3IgYXJnIDEpKSkp CiAKLS0gCjIuNDEuMC53aW5kb3dzLjMKCg== --_002_PH0PR11MB7470C711EBAB79091E0EC63FD7E5APH0PR11MB7470namp_--