From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Drew Adams Newsgroups: gmane.emacs.help Subject: RE: [External] : Re: operations on path lists Date: Wed, 8 Feb 2023 02:48:12 +0000 Message-ID: References: <87y1pdkg6p.fsf@dataswamp.org> <87k00xje04.fsf@dataswamp.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="3935"; mail-complaints-to="usenet@ciao.gmane.io" To: Jean Louis , "help-gnu-emacs@gnu.org" Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Wed Feb 08 03:48:59 2023 Return-path: Envelope-to: geh-help-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 1pPaW2-0000ny-IL for geh-help-gnu-emacs@m.gmane-mx.org; Wed, 08 Feb 2023 03:48:59 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pPaVR-0005bx-PZ; Tue, 07 Feb 2023 21:48:21 -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 1pPaVP-0005bo-Pq for help-gnu-emacs@gnu.org; Tue, 07 Feb 2023 21:48:19 -0500 Original-Received: from mx0b-00069f02.pphosted.com ([205.220.177.32]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pPaVN-0000v3-H3 for help-gnu-emacs@gnu.org; Tue, 07 Feb 2023 21:48:19 -0500 Original-Received: from pps.filterd (m0333520.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 3180hbDV010771; Wed, 8 Feb 2023 02:48:15 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : subject : date : message-id : references : in-reply-to : content-type : content-transfer-encoding : mime-version; s=corp-2022-7-12; bh=OdgzakoKPgMeMlsOflvryE9nKrXASchB0JfkO2f6SDs=; b=UzILPC3I1I+otOjGIlF6+WLt3kyt8jisY5iG5u7d9EHeVhRz8u3Z99Ye5xveKW9djkBZ 0us0e+AdzatmQfH+ByAZkxUcuGKthZ12UOsx4DTytRvMyAYLCV000RhOy7PNIHzWMnT8 bOJiGftNCdc+QvUqT/5WTeJSNe3s7rJwEgU39hS+rKQ4eieDJyY2FqTF5gf4BbVczJkK 9AcD0dpmSfPJwyIGuu5YAUsnMw3Uq3ek5u2QEifXNTcom/CLoZ9Pzw0G2c3MAApSM+kn 45bmMdLhRn+t/7Fc4jZ5dd1VttivIP38vkXLfKzEEAJ1/deEB5utExYxHcWW2ckV0f1r cQ== Original-Received: from iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta01.appoci.oracle.com [130.35.100.223]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3nhfdcf6r3-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 08 Feb 2023 02:48:15 +0000 Original-Received: from pps.filterd (iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.5/8.17.1.5) with ESMTP id 3181r37n032673; Wed, 8 Feb 2023 02:48:14 GMT Original-Received: from nam12-dm6-obe.outbound.protection.outlook.com (mail-dm6nam12lp2175.outbound.protection.outlook.com [104.47.59.175]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3nhdtcvcjp-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 08 Feb 2023 02:48:14 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jROJxLfSfjBLcbBomcJZFPENKlWmLmoIcCurNYkvksY4KuGwlZVfefn7ICpZSEBZdFhg3zedFZzsLxobci/tkxGsNBO7VIV/7nqX890YafYTvENy8hGFk7chhUUOLWAwJMYWXDxvTbVI2tQwzUvl75m4JCs/D0LAbL35NvYMNGuhqNDA0cYtH505oQy7qVvKnEI9/uQGFX2IMupz5A0WtqqWUuKZ8KjWjFk/fu2xP3MxFAKb4MTHnhnmOCot24M0m57gK5jTWkDfj+4bVREw/XKAsBLTg8RIjzoIR6eA7vvRJENzVrpy27nLAiegclBEMqYTlrpFoZQ0XK4GXAAFhQ== 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=OdgzakoKPgMeMlsOflvryE9nKrXASchB0JfkO2f6SDs=; b=JKNO2NFbtmfVIui7Bl0osXJsm6GUFU6N3G0X9OLp8yecGkIufJtQcTQEiddLxwbLc9xGiWakBz5jk9r+l7TzT0+YD2CyIDmcR4jpraq4d+xS7kzDwyeRNXmL0TqnPpmIOBbUYxlCpCde5SvS8UGR9Z0hAOxTJ36ba+E/uxFEWwMzXgMmiIB5rEv7NvqljZUnW3DBzRe073L4ZKHAMYk/DhJNNcjl4LJKQEAy3lhOFu38jF1eIBF+PQ9SPlNoj1ckoz8dQ2lHGJPQMYZN/Wy4jPZGPzvHlBJEuXH1XTpudA30R8pxLbmX6UQic/v+a7W/+bNEvp3piBNaUpYQEYtgpw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=OdgzakoKPgMeMlsOflvryE9nKrXASchB0JfkO2f6SDs=; b=NIqtk5Q2mBlkwpj4kkWaOWX5UJ5skvSGYZu+maOrDsbH6XX4Ax1YnRrNkNnmhp4tB7JacX7LK9n4huuq30gEpaI1jJCd4MCStBHElPoxzijyd8x29VGYLQBnROM9SJe+m2oZjK9RKuNdezdzZDc7EfHqC2MFvt+khhpb3+u2AME= Original-Received: from SJ0PR10MB5488.namprd10.prod.outlook.com (2603:10b6:a03:37e::19) by SN4PR10MB5800.namprd10.prod.outlook.com (2603:10b6:806:20f::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6086.17; Wed, 8 Feb 2023 02:48:12 +0000 Original-Received: from SJ0PR10MB5488.namprd10.prod.outlook.com ([fe80::d353:3fb:94e4:18b9]) by SJ0PR10MB5488.namprd10.prod.outlook.com ([fe80::d353:3fb:94e4:18b9%8]) with mapi id 15.20.6086.017; Wed, 8 Feb 2023 02:48:12 +0000 Thread-Topic: [External] : Re: operations on path lists Thread-Index: AQHZO0UaKHBlc9VCpEix8boFoa7P/a7EU8MQ In-Reply-To: Accept-Language: en-US Content-Language: en-US x-ms-publictraffictype: Email x-ms-traffictypediagnostic: SJ0PR10MB5488:EE_|SN4PR10MB5800:EE_ x-ms-office365-filtering-correlation-id: f05d444a-6fb7-4e84-b577-08db097eeb5a x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 1tUvAFiCHd+IaxYB/3+HAJPkfoObDi/7p0Q6Fyz3U8fLhrGSk94g8OKwp88Zm68Bo1aBxO310R8lYurUlXiDekBHqeSzkZCpEwSdziP+RqigmM4Zbr6sorrOVjCPx4sw63f5+wT845wEaUyUyMilqVDsKRkKJ2Rzhp7rthmi8zFbVVewS+/EBusghIVWUgOxh03+nyf9aU7PFp3qQRaL8RmhaHA8+6MVS8xo4jCRQM6sU50wu3KiZj2A86VBu6RxST5BxPUULaLGM6mKtLYlRx1Naeq6fiLTdoB+x4FqEXIKqz3Cl56kgG9G92+JBJY9M30zUePKIwGe82cAILNeuTLg9v3cAskqq91YbiCaM2qO+hUHzxVmKlkECuPuY6JWb932BylQmn03Hvt8CDz7Sf0VXhvOuIbo+dZYOpDxJO/7U5Ls+nv6s0pNRb4sV6bv5E9UY0wAVbLYpQSyQLD9Qh1eVy0QuDV53dZlCsYvBfauG0XhlEA8gQZT9A26XWTrm9Mgf07jxcSgOzg9UyTKEKU/dLJ+hK/9QMGc8W95q2loob5HlhIGDux/69gLvL3cCGxBjaWCKooxvbJeuiLvBYfW/u62qlC/JeiEQaPUqOJo5tPrwptWYOhRu/d29DVCnmo/b/uDJmfL8sjNIgbwfeV+Hvu8YmC9SOpdqBlQGRuMss4QoDlJ4CWb8fp4x/dWirJQ6N/loSnGmKfh/+ixWA== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SJ0PR10MB5488.namprd10.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230025)(366004)(346002)(136003)(396003)(39860400002)(376002)(451199018)(2906002)(44832011)(8936002)(52536014)(41300700001)(5660300002)(8676002)(64756008)(66446008)(66476007)(66556008)(66946007)(76116006)(55016003)(33656002)(110136005)(478600001)(86362001)(38070700005)(316002)(71200400001)(7696005)(6506007)(122000001)(38100700002)(26005)(186003)(9686003)(83380400001); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?TDBvWHJPc04yVXp5V2pzaGhyOUl5SW9yWllpdmRpMThtWUR4L2tpbU1PcTNP?= =?utf-8?B?VngwRCtXUDRKWTJPOTBMcDdVZ3V1WDdacmdMa3FSTDVGS0cvdEdvYjdGdjdy?= =?utf-8?B?MWl2SFZLY0JhMCtrTi8yLzUvOTlNT1pTcGRjczdLdHVtSjZwdHJvbC9GVXBk?= =?utf-8?B?UEFRbnN5OGNpaVg2alpDNHF6U0dtZ2dkUk0zSFdMbkZCRHROVENRMjdpa1pU?= =?utf-8?B?SnlJakkrMURGdXdnZEJxVXNKd25kL3lEZGJGbDF4OVhLbU9iMUxUQjU1Q0t6?= =?utf-8?B?akR3ajJWakFoNkt3WCtTa2RYVUhFeEMzbVZjNno4cGJMZk9OamJ5T2Y2cHRH?= =?utf-8?B?b1hxdkdmU3lsZlMrYzdZK0ZZNXJsWVFqeGh0Mk02dE41U3dTcE1WTWJ0VXZS?= =?utf-8?B?WE5XWGtHa0ZuQzlmZG93a3R5Uk1GYnlYQzROcXNtVFgwY2pxd2k1RC95MkNt?= =?utf-8?B?ZW9KVXU5eUc5a2VmWHBGRjBFY3NHQnEzYnA0MlR4YjJQY0M4MU5RSllaWXIz?= =?utf-8?B?WmZVcEVBcHpXUkVJZVhCRUJZUlQrV1lzbjRBN1RBdFY2aTMyTER2Wlcxdk1K?= =?utf-8?B?NTRab3dnNUZ4dGFzYy9aWExiWUlULzNHR3lqWlRrOHlBMEp4aUtrK09MVlRS?= =?utf-8?B?dTNzeXRnNS9UbWRHZ3l2VWdoVnB0V1FwVXNGWG X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: o3N7sMpO6mGCa9APBO1REdrDdXR9dpQCDKmR4guFoACvdbmB1f6/X2Pp086GLC0m5VjJANldoLu5FcD73m55FCwko8lPFug5JEFy+1Z3QZIUTCRE3QSqcxYz77y0AHhVu+4b9U8KWdT38JroaUW6j5X3tWnqt5dw9dgPjKEskEmbJisVMfdfP3UpyihnGJOlHBspkLm/DQq35Gmq73BJRtZsLH/FpLeXfVJw5GSeaqXKwdc6S6h3vKEGZxC7C7KWpidhDktJ8p9hFyTXrLmzwUZqaIn2KZtt0jc8+euKjqj1hE3T1wWUy7Rwc2jlcRgkl+feYhkHsIbVfME9MquNua+jAPBjO3xrEhXMzEBXO22dGTAWgv1kuRFMVlQeU+5gnLbw9TcWrX3o1fNyhk5UMCElhAfy0f2rSpUYg6U1kYnH8fA9CXQQxNs+V8EpeocvDeaJkjkgdGtaWtYoRam4gPYecxM/ZaGwh45d9HlEc0r5ZnRSZ3IEOqdJFujbA63yA/wyN+IxfJu1jbA0BUKziDhgNQxOVxvTSzRud6YEghYaDbx2/2jBn2oJ+CDAGtNtvW20l92M3ueNfkU68oRMUkIPMO6jKtzpkzQKs5/csgMVjE88p2FRggAD5mHK+c8St/ou8yL346OTz8kYyDw86/sId4uR/pFdl7Od7shfhvu3UzLqdQpiMu9NZlWVrb4KgfcGRX0a1WYGSIH9MbrDfo5EuNtnQ/VYy/S5FZ4YRkw/s/ EdH+agno8BJattgxnhynteYO8FW/CsNQrj5ZabXQ== X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SJ0PR10MB5488.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: f05d444a-6fb7-4e84-b577-08db097eeb5a X-MS-Exchange-CrossTenant-originalarrivaltime: 08 Feb 2023 02:48:12.2020 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: oO43SNoSXKQYhcnAaDYFosKEa5TaOMIibX8fmt4CDlv5K5UIrLng9oKNPz+7vGXXGpFtm/t2laXnXKFK8SFd/A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN4PR10MB5800 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.219,Aquarius:18.0.930,Hydra:6.0.562,FMLib:17.11.122.1 definitions=2023-02-07_15,2023-02-06_03,2022-06-22_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 bulkscore=0 suspectscore=0 adultscore=0 malwarescore=0 mlxscore=0 phishscore=0 spamscore=0 mlxlogscore=662 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2212070000 definitions=main-2302080024 X-Proofpoint-GUID: V9B1DgEmlJL_pCfEyEZtqYJN5xLygz3k X-Proofpoint-ORIG-GUID: V9B1DgEmlJL_pCfEyEZtqYJN5xLygz3k Received-SPF: pass client-ip=205.220.177.32; envelope-from=drew.adams@oracle.com; helo=mx0b-00069f02.pphosted.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.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, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.help:142651 Archived-At: PiBMZXQgdXMgbG9vayBhdCBgd2hlbicgbGl0dGxlOg0KPiANCj4gLSB5b3UgcGxhY2UgYHdoZW4n IHdoZW4geW91IG5lZWQgYG5pbCcgYXMgbGFzdCByZXNvcnQNCg0KSSBkb24ndC4gIEkgZG8ganVz dCB0aGUgb3Bwb3NpdGUuICBJIHVzZSBgd2hlbicNCmFuZCBgdW5sZXNzJyBvbmx5IHdoZW4gdGhl IGNvZGUgZG9lc24ndCB1c2UvZGVwZW5kDQpvbiB0aGUgcmV0dXJuIHZhbHVlLiAgKEknbSBndWVz c2luZyB0aGF0J3Mgd2hhdA0KeW91IG1lYW50IGJ5IG5lZWRpbmcgbmlsIGFzIGEgbGFzdCByZXNv cnQsIHRob3VnaA0KdGhleSBhbHdheXMgcmV0dXJuIG5pbC4pDQoNCkJlZm9yZSBFbGlzcCBib3Jy b3dlZCBgd2hlbicgYW5kIGB1bmxlc3MnIGZyb20NCm90aGVyIExpc3BzIChlLmcuIENvbW1vbiBM aXNwKSwgdGhlIGlkaW9tLA0KZXNwZWNpYWxseSBmb3IgYSBzaW5nbGUgY29uZGl0aW9uLCB3YXMg dG8gdXNlIGBvcicNCmluIChvciBjb25kaXRpb24gZG8tc29tZXRoaW5nKSBpbnN0ZWFkIG9mIGB1 bmxlc3MnLA0KYW5kIGxpa2V3aXNlIGZvciBgYW5kJyBhbmQgYHdoZW4nLiAgVGhhdCB0aGF0LA0K dXN1YWxseSBhdCB0b3AgbGV2ZWwgaW4gYSBmdW5jdGlvbiBib2R5LiAgSSBzdGlsbA0KaGF2ZSBz b21lIG9mIHRob3NlIGBvcicgc2V4cHMsIGFzIGRvZXMgc3RhbmRhcmQNCkVtYWNzIGNvZGUuDQoN Cj4gLSB3aGF0IGlmIHlvdSBjaGFuZ2UgeW91ciBtaW5kIGluIGZ1dHVyZSBhbmQgd2lzaCB0byBt b2RpZnkgZnVuY3Rpb24NCj4gICB0byByZXR1cm4gIiIgYXMgbGFzdCByZXNvcnQ/DQoNCkkgZG9u J3QgdXNlIGB3aGVuJyBmb3IgaXRzIHJldHVybiB2YWx1ZSAod2hpY2gsDQphZ2FpbiwgaXMgYWx3 YXlzIG5pbCkuICBJIG1pZ2h0IHVzZSBgaWYnIG9yIGBhbmQnDQoob3IgYGNhc2UnIG9yIGBjb25k Jy4uLikuDQoNCj4gICB5b3UgaGF2ZSB0byByZXN0cnVjdHVyZSBpdC4NCg0KWWVzLCBJIG1lbnRp b25lZCB0aGlzIGluIG15IHJlcGx5IHRvIEVCIHllc3RlcmRheS4NClRoYXQncyB0aGUgYWR2YW50 YWdlIG9mIGRvaW5nIHdoYXQgeW91IHByZWZlciB0bw0KZG8sIGUuZy4sIHVzZSBgY29uZCcuICBB dCB0aGUgY29zdCBvZiBsb3NpbmcgYW55DQppbmRpY2F0aW9uIG9mIHRoZSBtZWFuaW5nL2ludGVu dGlvbiBvZiBhbnkgZ2l2ZW4NCmBjb25kJyBjbGF1c2UgYW5kIHRoZSByZXR1cm4gdmFsdWUuDQoN CmBjb25kJyBpcyBhIHZlcnkgdmVyc2F0aWxlIGNvbnRyb2wgc3RydWN0dXJlIHRoYXQsDQpjb25z ZXF1ZW50bHksIGdpdmVzIHlvdSBsaXR0bGUgbWVhbnMgdG8gZXhwcmVzcw0KaW50ZW50aW9uLCBv dGhlciB0aGFuIHdpdGggY29tbWVudHMuICBPbmUgYGNvbmQnDQpjbGF1c2UgbG9va3MgbGlrZSBh bnkgb3RoZXIgLSBjb3VsZCBkbyBvciBtZWFuLA0KYW5kIHJldHVybiwgYW55dGhpbmcgYXQgYWxs Lg0KDQo+IC0gd2l0aG91dCBwYXJlbnRoZXNpcyBoaWdobGlnaHRpbmcgc29tZXRpbWVzIGl0IGJl Y29tZXMgdmVyeSBkaWZmaWN1bHQNCj4gICB0byB1bmRlcnN0YW5kIHdoYXQgZGlkIGBpZicgYXV0 aG9yIGludGVuZGVkIHRvIHNheT8NCg0KSSBkb24ndCBncm9rIHRoYXQuICBCdXQgdGhlbiwgSSBk b24ndCB1c2UgYGlmJw0KdW5sZXNzIHRoZXJlIGFyZSBib3RoIGEgdGhlbiBhbmQgYW4gZWxzZSBw YXJ0Lg0KSSB0YWtlIHRoZSB0aW1lIHRvIHJld3JpdGUsIHllcywgYXMgbmVlZGVkLA0KdG8gY29t bXVuaWNhdGUgdG8gbXlzZWxmIChhcyByZWFkZXIpIGp1c3Qgd2hhdA0KdGhlIGNvZGUgbWVhbnMg dG8gZG8uDQoNCj4gLSBtdWx0aXBsZSBgaWYnIHN0YXRlbWVudHMgb25lIG9mdGVyIG90aGVyIGRv IG5vdCBsb29rIG5pY2UgYW5kDQo+ICAgcmVhZGFibGUsDQoNClRoYXQncyBub3QgdmVyeSBjb21t b24gSU1PLiAgTWF5YmUgYSBjb3VwbGUNCmxldmVscyBzb21ldGltZXMuDQoNCj4gU29tZSBwZW9w bGUgd3JpdGUgbG9uZyBmdW5jdGlvbnMsIGlmLCB0aGVuLCB3aGVuLCBpdCBpcyBub3QgbmljZWx5 DQo+IGluZGVudGVkLCByZXN0cnVjdHVyaW5nIGlzIGRpZmZpY3VsdCwgd2hhdCBkaWQgYXV0aG9y IHdhbnQgdG8gc2F5Pw0KPiBIYXJkIHRvIHRoaW5rIG9mIGl0Lg0KDQpQcm9iYWJseSBkZXBlbmRz IG9uIHdoYXQgeW91J3JlIHVzZWQgdG8uICBCdXQNCmlmIGVhY2ggb2YgYGlmJywgYHdoZW4nLCBg dW5sZXNzJywgYGFuZCcsIGFuZA0KYG9yJyBpcyB1c2VkIGluIGEgd2F5IHRoYXQgc2F5cyB3aGF0 J3MgaW50ZW5kZWQNCnRoZW4gaXQncyBwcmV0dHkgZWFzeSB0byB1bmRlcnN0YW5kLiAgVGhlcmUn cw0Kbm8gZ3Vlc3NpbmcgYWJvdXQgd2hldGhlciB0aGUgcmV0dXJuIHZhbHVlIG9mDQphIGdpdmVu IGBpZicgaXMgdXNlZCBldGMuICAoRm9yIG1lLCBpdCBhbHdheXMNCmlzLCBvciBJIHdvdWxkbid0 IHVzZSBgaWYnLikNCg==