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.devel Subject: RE: [External] : Re: What's missing in ELisp that makes people want to use cl-lib? Date: Tue, 7 Nov 2023 16:39:16 +0000 Message-ID: References: <46ab3c7d-d820-4bb4-8ec4-97c614d7c8a0@alphapapa.net> 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="40059"; mail-complaints-to="usenet@ciao.gmane.io" Cc: "emacs-devel@gnu.org" To: "rms@gnu.org" Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Tue Nov 07 17:40:57 2023 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 1r0P8K-000A9R-5Y for ged-emacs-devel@m.gmane-mx.org; Tue, 07 Nov 2023 17:40:56 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r0P7B-0000xa-DN; Tue, 07 Nov 2023 11:39:51 -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 1r0P74-0000oQ-K4 for emacs-devel@gnu.org; Tue, 07 Nov 2023 11:39:38 -0500 Original-Received: from mx0a-00069f02.pphosted.com ([205.220.165.32]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r0P71-0001ni-1Y; Tue, 07 Nov 2023 11:39:38 -0500 Original-Received: from pps.filterd (m0246627.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 3A7GXYZH029964; Tue, 7 Nov 2023 16:39:30 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : content-transfer-encoding : mime-version; s=corp-2023-03-30; bh=o2M1u9+BG2t6smB07LOSvH42hV/0SA66Cfe7aO1VdQw=; b=symqCiCakvZytpkYn4THAkLNa/8KIDCi1St9iuq11FuKRu5AU/MKE9/UVnkxb9WRlAcD 926txufoVoTQ4bqaNLBybiDBOmPYdph3W6+4ePLHyTY8tR4btkvrSEqwSCUWQdcifVCn sIxuLUt1w3Wc0euOki3RzqYy4tYIPWS+oor034oCysnrvzDr3CbkiBlh2ykeWe648lqi VZKei/y7XKUXZ5J4pEdfa4pxsnzJAwj3LJfOxC9u3yl1o1RRaT+bcRZ1Vfc9OMXYYp35 6aSk7LZLEyXETlnJXQzSMYi+TCJLebdy92k5nztd//MSKEjYQa9CdeKDZxYjc1KgEl9J ww== Original-Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3u5cj2xjn8-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 07 Nov 2023 16:39:30 +0000 Original-Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 3A7FWQvG020702; Tue, 7 Nov 2023 16:39:18 GMT Original-Received: from nam10-dm6-obe.outbound.protection.outlook.com (mail-dm6nam10lp2100.outbound.protection.outlook.com [104.47.58.100]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3u5cddyan0-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 07 Nov 2023 16:39:18 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UgdplfY7bSixMPS0TtgJGLAH6f1Xi9e97aa5hND8yiz/uq9fI587+9Q9cUFrXID1nIN2PFgXk7guetluclynUda/vj6ZclpHcoJaYdfuar5MgI6XtAZ07wiXnB2y18FXeUBjt3nYe0UtvJoXiBigceq8ODWrEA/iC1t7HRmqmBCLv8ZlFnw7PHX+FG4PoENckLSS/rPeI+T7nPATxKVoyflWY6GOTZCDljgS9ZFIXq2QoyOf8bsY5jI+ZfisIgJ/UjmixRCRhH/8PorsYknE6Bh+P3TDoy6AE/82s3JgveIGmFJLMUjzwN7MAa5b2GuASXXNK63Oy0fVvjuh7PKpKQ== 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=o2M1u9+BG2t6smB07LOSvH42hV/0SA66Cfe7aO1VdQw=; b=MbLclJOnUHSkW+zvjmVzVmLoeVRoZLPCcoV08wvRQlgtpwXrRYBA0nsWHTTaR2HsanwEYxwN+u8icabIE6XqRHCpg24DhdjvjvmGxh2e5RHii6P05BbQyT3HaorIZ99SmRASBTg+N0kMT+OMcdaItXOBVM84mj3AgEiOARsYlMsDXD9IfOrTad4IiU5IUn7pMrXUOwEste2vN1D3JQMoGxpG4Cf3FqYA3mOyv3rDt8mwGMtNBRMJQROI5iELOf9fqzIXcAJXiGYEemuM37hD4vLx/GG+5T1O7Wt/nPOzDdD6bqYbNrfDpUYdxSVtBsbrp1YXhFLf5NJLNoRvgFKrTw== 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=o2M1u9+BG2t6smB07LOSvH42hV/0SA66Cfe7aO1VdQw=; b=tfoQ77hUVjxFBEP+ZVy4ZrUL7Pwbw1QDbipwEm68LJSljhJ1WFYAA+gEmJrrJER6z8TLTMp4apCBZ2Qno6WHCs9yVoV/zri3cTfkVioHQ8jgLL/lvP7gau7SRRYzRCQAkBcGZFAjqvTmcj+SVmgnG3GLnQ/o4btQneBOUt0WNpo= Original-Received: from SJ0PR10MB5488.namprd10.prod.outlook.com (2603:10b6:a03:37e::19) by BN0PR10MB5382.namprd10.prod.outlook.com (2603:10b6:408:117::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.29; Tue, 7 Nov 2023 16:39:16 +0000 Original-Received: from SJ0PR10MB5488.namprd10.prod.outlook.com ([fe80::9e11:9d8c:b7f4:f45b]) by SJ0PR10MB5488.namprd10.prod.outlook.com ([fe80::9e11:9d8c:b7f4:f45b%7]) with mapi id 15.20.6954.028; Tue, 7 Nov 2023 16:39:16 +0000 Thread-Topic: [External] : Re: What's missing in ELisp that makes people want to use cl-lib? Thread-Index: AQHaEZYBJAbfPc6iREGP3YmOW2ksWLBvCulQ In-Reply-To: Accept-Language: en-US Content-Language: en-US x-ms-publictraffictype: Email x-ms-traffictypediagnostic: SJ0PR10MB5488:EE_|BN0PR10MB5382:EE_ x-ms-office365-filtering-correlation-id: 6beaa8d2-f3eb-4fb9-0f2a-08dbdfb0151c x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: LJolfVjyWSmCGY/Xd1bUhGHSjGZmtct5d/BpxSrf9zko441WNSqLZW1w/ao68w9LRBulaNGOrzg10E3UjDzZqBMtqOEyQ9m8ANVkcsdWwdCvHGK8Fg2yMbeB+nooAj4LZoYa31CivTNeLhDiPqNodRshIGzZWJs+9g4LlYvT9UXqE4BlLkqGFeoKJf15SGVs+n65/n93mMYSpsL2OwjKWb1xvV3CYCYapEHdKFAu+1zd3kmplScxGKPR6TgZd4mcspsyN/XgTanE2Hi1TFDGRn30a4Q+VexulFkErg1jYhOVSplNRJXUc264HpIzNtA06lZbK/7Dwtekup/nCkTNsUpMeTa8pjYHBmwMQdzy+Iiu7now4FRkIbBz6+NKX/jUt/yiLr3ND1cy8seQk7cbirwNMzEV3YbHJ8SRlbUM0X5jEpwLvf4rL7U3FKc1EuR38flY+4v9KZoVXqjVzAFkaieTSUPHdhTNjUckN6EqoabKNFNJEs6Lz9vxv2dE5b0k2VvACYcXgACiCDl5iqkLLb7Dgxf1Ul3eNlIHenyCWz1EHstvbCeSGR8CGuyQGJkvAQNiZ/0NMWMdm3wmTSuYOeWec+33Q3EEOE4iYSNX+ov/Ne72HnZbvX6nnc9agNhx 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:(13230031)(136003)(39860400002)(376002)(366004)(396003)(346002)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(38100700002)(478600001)(122000001)(55016003)(9686003)(83380400001)(66899024)(71200400001)(6506007)(7696005)(8676002)(38070700009)(52536014)(41300700001)(86362001)(4326008)(450100002)(44832011)(66946007)(2906002)(8936002)(64756008)(66476007)(66556008)(76116006)(66446008)(316002)(6916009)(5660300002)(33656002)(26005); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?dnVQM1ZXWlZhQUJyV2NzNkVPM05yRVJLeVA4VWlkbUc4dDM2ZXZwUmtrSVQ0?= =?utf-8?B?azZoUzNIN1lDK1JoS2ZHTmkzaEk0SERkRnlzYjNhUWR2ZW1GQ0thVGg5a2Zm?= =?utf-8?B?N2JVUlIzRFJkQ2FqRGwwUkNhdmdtZ3RaZnNTYTdOdmE0UVFGd3RBZk0vSlgw?= =?utf-8?B?OUhaUXR0VGgwUmVJWUdaU1JGVnJ2RC9HQ1JIVS9XQkxCcWhCdk1FVTdYZ0dG?= =?utf-8?B?cWF2YnZGMVRQam1PdlM5dDlHUTBQQVptUWdhZ1FXT3dJUWI2eThaUW9iWWhz?= =?utf-8?B?eGJ2QTZnY0huSGxVZmVrUHVhYzR2ZkwzQnhSakFlNzFDUmh1VE9QbktkRFly?= =?utf-8?B?VUFLck16VDc0TDRjcmpUKzZ4R0IzaWZQYVl2Q3pabDdGUmZxQmJvYnM5ZmFs?= =?utf-8?B?NTRwL2V1dTRPSFk5NUhrYWxTZTNGUW9ZTkYvTlkrMTFTNFJ6ai9GN3lRUFdE?= =?utf-8?B?aHEycWhkdkpWU1ZaNVBLSDFqWTVxT2IrOXZqNDF5eWdGcTBUK1J5cThQelE3?= =?utf-8?B?RWE2b1ljT1AwM09tNCtaVXNzU25qbW1XZ2gwM24xV1pMcldaTVFEaEtoRnk0?= =?utf-8?B?Ym82NEdaMjdQYVVlYjJ5TjdUS09RelNpL3h5bE0vT2ttZ21LRmJKenpGbUV5?= =?utf-8?B?d2Z1Z2Y1WEREcmczQlh6SEZJS3JyeFlnbWJhVm X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: tvruHVSazVOBwnMI4oeIvrgdh1g1E62ozgEZVv+gaf3g0UmoMOGXOVs3R9dEDX7Uv/Mf0u1QFzLk301RveIrfAm9BtzHUW7y39b2nWLkepa59AYRmXxUU8DFpMBy7w6T/7A58FLXTikCdlK3gEyqtV6ID8UJ6Y2QbSu+znC2hMcPMWaUd5mlZp9eHOlwoRdnxGI1p9aqUV/nauklSPioNP86m4YAff62qb396/kg3XGzjjy/q9453TzHwHVHasuoaqtR5mHFwXhodiRmXl2jA8NdXKHrq7o+3DyDKqjeqT/Ck/NYsZFJdQtdcLcH6VWlQt3qyiERYJLP3LvE84HcMevBnXiIoSJBTLVyxVgYgWtd+3ifl5VNOBS2xy9dRstyyeiOqPSGZDe60aJ27IEgDKenDwc/fccImJcDM1II9NW7wKWfveKwlWyBfW2xTXf0phWDqevikQTl8z4Y4ZEK6op3rtm9wQl0x3yuB9nLTHE3g9gBQhD9aGmTa5kJ4vKcaL9lp1oBSGBpcA9wIPgNVM0+VdwNKJoa06ZMuH+vlwjnsaH5lTn4N3RLVQfEymoH3rN5u1H+aNbLXCF7G585DvPzDCf55+r9TisOwxSUGEH3QqK4C7PN01EFLrFY0x1eFo3AHoUrUxB2T45DsxZ5HGkU8CBTDG6eD+XJlBrl2rShS3qIMdWzHykHCW+qVAdRNv5J3hyVt7exOd3wJSFchHHtjiEvTQatDkSzVOQEQ6ryok Qt1/MUjoTObILRLAX2 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: 6beaa8d2-f3eb-4fb9-0f2a-08dbdfb0151c X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Nov 2023 16:39:16.4031 (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: g1EIlAFpo20/JN4o0EzYPGnVbVy/okxD76PMlqyNsR8D4sSPJtF0TBbn11L6u7TOyeS9VNDVdCLhAPGJZdetAQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN0PR10MB5382 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.272,Aquarius:18.0.987,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2023-11-07_07,2023-11-07_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 malwarescore=0 adultscore=0 mlxlogscore=732 phishscore=0 mlxscore=0 bulkscore=0 spamscore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2310240000 definitions=main-2311070137 X-Proofpoint-ORIG-GUID: 0X6X_Qm0p9mKXwpX2fYSMs3jPkR7IOf- X-Proofpoint-GUID: 0X6X_Qm0p9mKXwpX2fYSMs3jPkR7IOf- Received-SPF: pass client-ip=205.220.165.32; envelope-from=drew.adams@oracle.com; helo=mx0a-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_H5=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=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-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.devel:312314 Archived-At: PiAgID4gVGhlcmUncyBhIGRpZmZlcmVuY2UgYmV0d2VlbiAoMSkgYWRkaW5nICZrZXkgdG8NCj4g ICA+IEVsaXNwIGdlbmVyYWxseSBhbmQgKDIpIGxldHRpbmcgbW9yZSBmdW5jdGlvbnMNCj4gICA+ IHRha2UgYWR2YW50YWdlIG9mIDprZXkgYW5kIDp0ZXN0LCBpbiBwYXJ0aWN1bGFyLg0KPiANCj4g VGhhdCBpcyBhIHZhbGlkIGRpc3RpbmN0aW9uLg0KPiANCj4gSSB3b3VsZCBiZSBoYXBweSB0byBz ZWUgYSBrZXl3b3JkIGFyZ3VtZW50IGZhY2lsaXR5IHByb3ZpZGVkIGZvcg0KPiBmdW5jdGlvbiBk ZWZpbml0aW9ucyBpbiBFbWFjcyBMaXNwLiAgVGhlcmUgYXJlIG9jY2FzaW9ucyB3aGVyZSBpdCBp cw0KPiBnb29kIGZvciBhIGZ1bmN0aW9uIHRvIGFjY2VwdCBrZXl3b3JkIGFyZ3VtZW50cyAtLSBl c3BlY2lhbGx5IHRob3NlDQo+IGZ1bmN0aW9ucyB0aGF0IG5lZWQgdG8gYWNjZXB0IGxvdHMgb2Yg YXJndW1lbnRzLg0KPiANCj4gV2hhdCBJIG9iamVjdCB0byBhcmUgdGhlIGtleXdvcmQgYXJndW1l bnRzIHVzZWQgaW4gQ29tbW9uIExpc3AgdG8gY2FsbA0KPiBzaW1wbGUsIGV2ZXJ5ZGF5IGZ1bmN0 aW9ucy4gIEZvciBpbnN0YW5jZSwgdGhlIHNlcXVlbmNlIGZ1bmN0aW9ucy4NCj4gKEZvciB0aGlz IHJlYXNvbiwgSSBwcmVmZXIgdGhlIHNlcS0gZnVuY3Rpb25zIHRvIHRoZSBDb21tb24gTGlzcA0K PiBzZXF1ZW5jZSBmdW5jdGlvbnMuKQ0KPiANCj4gQnV0IHdlIGNhbiBzcGxpdCB0aGF0IGlzc3Vl IGJ5IG1ha2luZyBhbm90aGVyIGRpc3RpbmN0aW9uLCBiZXR3ZWVuDQo+ICgyYSkgc2VxdWVuY2Ug ZnVuY3Rpb25zIHRoYXQgX2FjY2VwdF8gdGhlIENvbW1vbiBMaXNwIHNlcXVlbmNlDQo+IGZ1bmN0 aW9uIGtleXdvcmRzLCBzdWNoIGFzIDprZXkgYW5kIDp0ZXN0LCBhbmQNCj4gKDJiKSBmcmVxdWVu dGx5IG5lZWRpbmcgdG8gcGFzcyB0aG9zZSBhcmd1bWVudHMuDQo+IA0KPiAoMmEpIGRvZXMgbm90 IG1ha2UgbW9zdCBjb2RlIGFueSBtb3JlIGNsdW1zeS4gIEl0IGFmZmVjdHMgb25seSB0aGUNCj4g X2RlZmluaXRpb25zXyBvZiB0aGVzZSBzZXF1ZW5jZSBmdW5jdGlvbnMuICBXaGF0IG1ha2VzIGNv ZGUgdWdseSBpcw0KPiAoMmIpLg0KPiANCj4gTG9naWNhbGx5LCAoMmEpIGRvZXMgbm90IGZvcmNl ICgyYiksIGJ1dCB0aGUgdHdvIGFyZSBkaXJlY3RseSByZWxhdGVkLg0KPiBUaGUgZGVzaWduZXJz IG9mIENvbW1vbiBMaXNwIHNhdyAoMmEpIGFzIHByb3ZpZGluZyBhbiBvcHBvcnR1bml0eSB0bw0K PiAic2ltcGxpZnkiIGJ5IGVsaW1pbmF0aW5nIHRoZSBwcmVkZWZpbmVkIGZ1bmN0aW9ucyB0byBj b21wYXJlIHVzaW5nDQo+IGBlcXVhbCcgYW5kIHRvIGNvbXBhcmUgdXNpbmcgYGVxJy4gIEJ5IGRl ZmF1bHQgdGhleSB1c2UgYGVxbCcsDQo+IHdoaWNoIHNheXMgImEgcG94IG9uIGJvdGggYG1lbXEn IGFuZCBgbWVtYmVyJy4iDQo+IA0KPiBJbiBwcmFjdGljZSwgdGhhdCBtYWtlcyB0aGUgQ29tbW9u IExpc3AgZnVuY3Rpb25zIGluY29udmVuaWVudCB0byB1c2UuDQo+IA0KPiBJIHdvdWxkIG5vdCBi ZSB1bmhhcHB5IGlmIEVtYWNzIExpc3AgZnVuY3Rpb25zIHN0YXJ0ZWQgdG8gc3VwcG9ydCA6a2V5 DQo+IGFuZCA7dGVzdCB3aGVyZSB0aGV5IG1ha2Ugc2Vuc2UsIHByb3ZpZGVkIHRoZXkgZGlkIHRo aXMgaW4gYW4gRW1hY3MNCj4gTGlzcCB3YXk6IGRlZmF1bHQgY29tcGFyaXNvbiBpcyBgZXF1YWwn Lg0KPiANCj4gKFdlIHNob3VsZCB0YWtlIGNhcmUgdG8gaW1wbGVtZW50IGl0IHdpdGhvdXQgYSBz bG93ZG93biBpbiB0aGUgY2FzZQ0KPiB3aGVyZSB0aGUga2V5d29yZCBhcmdzIGFyZSBub3Qgc3Bl Y2lmaWVkLikNCj4gDQo+IFRoaXMgbWVhbnMgdGhhdCBgbWVtYmVyJyB3b3VsZCBhY2NlcHQgO3Rl c3QsIGJ1dCBpdCB3b3VsZCBzdGlsbA0KPiBjb21wYXJlIHVzaW5nIGBlcXVhbCcgYnkgZGVmYXVs dCAoaWYgOnRlc3Qgd2FzIG5pbCBvciBub3Qgc3BlY2lmaWVkKS4NCj4gQW5kIHRoZXJlIHdvdWxk IHN0aWxsIGJlIGBtZW1xJyB0byBjb21wYXJlIHdpdGggYGVxJy4NCj4gDQo+IFdoZW4gSSBzYXkg Im5ldyBmdW5jdGlvbnMiLCB0aGF0IGluY2x1ZGVzIGFueSBDb21tb24gTGlzcCBmdW5jdGlvbnMN Cj4gdGhhdCBhcmUgY3VycmVudGx5IGF2YWlsYWJsZSBpbiBjbC1zZXEuZWwgd2l0aCBhIGNsLSBw cmVmaXggYnV0IE5PVA0KPiB0cmVhdGVkIGFzIHBhcnQgb2YgRW1hY3MgTGlzcC4gIFRvIHRyZWF0 IHRoZW0gYXMgcGFydCBvZiBFbWFjcyBMaXNwLA0KPiB3ZSBzaG91bGQgbWFrZSB0aGVtIGNvbXBh dGlibGUsIHdlIHNob3VsZCAoMSkgbWFrZSB0aGVtIGRlZmF1bHQgdG8NCj4gRW1hY3MgTGlzcCB0 cmFkaXRpb24gYW5kICgyKSBhY2NvbXBhbnkgdGhlbSB3aXRoIGEgY29ycmVzcG9uZGluZyBxDQo+ IGZ1bmN0aW9uLCBpZiBjb21wYXJpbmcgdXNpbmcgYGVxJyBpcyB1c2VmdWwgZm9yIHRoYXQgZnVu Y3Rpb24uDQo+IA0KPiBXZSB3b3VsZCBhbHNvIHJlbmFtZSB0aGUgZnVuY3Rpb24sIGFzIHBhcnQg b2YgdGhlIGJhcmdhaW4sIHRvIGF2b2lkIGFuDQo+IGluY29tcGF0aWJpbGl0eS4NCg0KRldJVywg dG8gbWUsIGFsbCBvZiB3aGF0IHlvdSBzYXkgdGhlcmUgaXMgd2VsY29tZSBuZXdzLg0KDQpXaGVu IGluY29ycG9yYXRpbmcgd2hhdGV2ZXIgeW91IGRlc2NyaWJlIGFzIGluY29ycG9yYXRpbmcNCmZy b20gY2wtKiBpbnRvIEVsaXNwICh1c2luZyBgZXF1YWwnIGFzIGRlZmF1bHQpLCBJIGhvcGUNCnlv dSBtZWFuIGdpdmluZyBpdCBzb21lIG90aGVyIG5hbWUgdGhhbiB0aGUgQ0wgbmFtZSBpdA0KaGFz IChpZ25vcmluZyB0aGUgYGNsLScgcHJlZml4IG9yIG5vdCkuICBJIHRoaW5rIHRoYXQncw0Kd2hh dCB5b3UgaGF2ZSBpbiBtaW5kLCB3aGVuIHlvdSBzYXkgdGhpczoNCg0KICA+IFdlIHdvdWxkIGFs c28gcmVuYW1lIHRoZSBmdW5jdGlvbiwgYXMgcGFydCBvZiB0aGUNCiAgPiBiYXJnYWluLCB0byBh dm9pZCBhbiBpbmNvbXBhdGliaWxpdHkuDQoNCklPVywgdG8gbWUgaXQgd291bGQgYmUgZmluZSB0 byBnZXQgc3VjaCBhIGZ1bmN0aW9uIGZvcg0KRWxpc3AsIGJ1dCBfbm90XyB0byBoYXZlIGl0IGtl ZXAgdGhlIENMIG5hbWUgYnV0IHdpdGgNCmFsdGVyZWQgc2VtYW50aWNzIChlLmcuIGBlcXVhbCcg ZGVmYXVsdCwgbm90IGBlcWwnKS4NCg0KSSd2ZSBsb25nIGFyZ3VlZCB0aGF0IGlmIHdlIGhhdmUg YSBDb21tb24gTGlzcCBlbXVsYXRpb24NCmxpYnJhcnkgdGhlbiBpdCBzaG91bGQgYmUgYSByZWFz b25hYmxlIGVtdWxhdGlvbiwgYW5kDQpub3QgZ3JhdHVpdG91c2x5IGRldmlhdGUgZnJvbSBDTCBi ZWhhdmlvci9zZW1hbnRpY3MuDQoNCkl0IHdvdWxkIG5vdCBiZSBnb29kIHRvIGtlZXAgdGhlIENM IG5hbWUgZm9yIGEgZnVuY3Rpb24NCmJ1dCBjaGFuZ2UgaXRzIGJlaGF2aW9yIGZyb20gZGVmYXVs dGluZyB3aXRoIGBlcWwnIHRvDQpkZWZhdWx0aW5nIHdpdGggYGVxdWFsJy4gIEJldHRlciB0byBn aXZlIGl0IGEgZGlmZmVyZW50DQpuYW1lLiAgQXQgX2xlYXN0XyBkcm9wIHRoZSBgY2wtJyBwcmVm aXgsIGJ1dCBiZXR0ZXIgdG8NCmF2b2lkIGFueSBjb25mdXNpb24gYnkgZ2l2aW5nIGl0IGFuIGFs dG9nZXRoZXIgZGlmZmVyZW50DQpuYW1lLg0K