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: Debouncing slow mode line constructs (was: Emacs design and architecture. How about copy-on-write?) Date: Fri, 22 Sep 2023 15:05:42 +0000 Message-ID: References: <838r92cgxp.fsf@gnu.org> <837comcam8.fsf@gnu.org> <6946e6f0-c6ef-186c-35d4-c09935c05a07@gutov.dev> <83y1h1axtq.fsf@gnu.org> <87sf79rq5o.fsf@yahoo.com> <83fs38c2yv.fsf@gnu.org> <83o7hw9ee1.fsf@gnu.org> <87il84q845.fsf@yahoo.com> <83il849bx6.fsf@gnu.org> <87a5tfri8c.fsf@yahoo.com> <878r8z27cs.fsf@localhost> <44e98df7-f683-ac07-e644-40757f1d26f9@gutov.dev> <87msxfzts6.fsf@localhost> <7b0c07f5-88c8-4f2c-6ac6-a6112c884f32@gutov.dev> <87il83zsg1.fsf@localhost> <87fs37zrjx.fsf@localhost> <83ttrn8woc.fsf@gnu.org> <87h6nmy098.fsf@localhost> 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="30239"; mail-complaints-to="usenet@ciao.gmane.io" Cc: "dmitry@gutov.dev" , "luangruo@yahoo.com" , "acm@muc.de" , "incal@dataswamp.org" , "emacs-devel@gnu.org" To: Ihor Radchenko , Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Fri Sep 22 17:07:03 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 1qjhkF-0007dA-5L for ged-emacs-devel@m.gmane-mx.org; Fri, 22 Sep 2023 17:07:03 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qjhjH-0002bb-Tz; Fri, 22 Sep 2023 11:06:04 -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 1qjhjF-0002bJ-GZ for emacs-devel@gnu.org; Fri, 22 Sep 2023 11:06:01 -0400 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 1qjhjD-0003Yg-6M; Fri, 22 Sep 2023 11:06:01 -0400 Original-Received: from pps.filterd (m0246629.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 38MEFPcW008616; Fri, 22 Sep 2023 15:05:47 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=YzxnCyFeljw+5uUCnLTKyUP1fkGsqPfhCG6KI8uktro=; b=3/a41Tw7rrQ1hk1EFBvqbk0w/fevsKJTO1U9BhHepeGtxcA3PI00Pi7q1UI8o8iJxcxh RaSVrX/6yqPMvbdU4Ll+icGlqZmNsDm6YnsicyQfvEHnMl0+iOzrs6pY6fgt/5hjaVf5 agXh+mIxiNKgNMDgMjAxH3/mrbPjxy9JypKXUFcUzjyzln9XT+vfVxC3M1KPmnz1nsHT jaW4tX9sdeF529NdpQczuMqIZ2ukH1U/5o8+5K3hy3+Gf3Vp6ej6pPmpBUWy99HNCA7n lCqYQ9MCPHm808L7dL2+wIFZLXCvobRvvUjelV9p0BxMuSK+leEsMIvDEB6HuoKVsYT4 kQ== 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 3t8tt1j1cn-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 22 Sep 2023 15:05:46 +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 38MDRY1A006540; Fri, 22 Sep 2023 15:05:45 GMT Original-Received: from nam12-mw2-obe.outbound.protection.outlook.com (mail-mw2nam12lp2049.outbound.protection.outlook.com [104.47.66.49]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3t8tt86k79-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 22 Sep 2023 15:05:45 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JWO1fOm0hmtCgTzCjmJl7ss90UxTRONO32Qw3L7dIT1x9/jWPgCw2g/zp0peYEjGPW+D5aktSfybbWH3cNsSwBF1O9cxtLEApwXhMy7lTwnCxHmWSiuVrxmSRz8YeVK/v/G4EhplHNt17l8Zd2ZBU+I+jVoq2gm+yr9vcu697O7uRzeuWAMhTGg/LeLF7ZNGkZOexgXlghtBOE3Z2oAzPPaJ2j19PvHq8mgu8zgXQIvLBkPmjOtv0+w85Ks8oNNaoBKzfoxIyOy5/oitWmYzFUVkRqAo2cbnROEaIDvxnH9FxsHXub4ukd1ELk/P/NVg8FSOWaZ/EtIIDwlIsoMFCw== 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=YzxnCyFeljw+5uUCnLTKyUP1fkGsqPfhCG6KI8uktro=; b=DhFKk9vsPQgh5d2Ph11VQ4zPnjdeBON7c8Yx9UvW9QfVTzuHUYcchCPDTmUwu8VKz1UHs1yRSQzf+giWcBo0v5jVdSZ+Tf4t4KdcIC90uk6FJ0buVVhBSgKwPOoNA6tF72yDku4jyyo0PuUw5psin+0nB0ihg3Vef5TzC3StNipUK9PJGc0Uy48owfSvLm+lzV9UbbvuqoqFcqorVMvDPQfqhNZ2QrjWPPXdP+TAXX+20+RBZ56bXdNVon2ZfbFSoG+uE+wL3+ZVwEyVRBCJrhOwzhMCLWk2dSAmbaq8qk1Ap/pfYkQN+JqGm9lcUDfPqTMg5BdSfD6FooQc1BCpIw== 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=YzxnCyFeljw+5uUCnLTKyUP1fkGsqPfhCG6KI8uktro=; b=SzXF1Fj4RCASD5nkaU+/qosTAcVQ2YrljT9i/dqIGUGtVXTvuSgp355wiWHjcjsavu/4YJ2w/drQQBIT95FlRDPdBWDeXWGUUHierLh6YJCG0x4DOQ7zbaDsDNjFBCvd+dLAgQr8kfEJi00lXwop9ZlCLUE2H1x3czAxliZFaxQ= Original-Received: from SJ0PR10MB5488.namprd10.prod.outlook.com (2603:10b6:a03:37e::19) by PH7PR10MB5880.namprd10.prod.outlook.com (2603:10b6:510:127::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.20; Fri, 22 Sep 2023 15:05:42 +0000 Original-Received: from SJ0PR10MB5488.namprd10.prod.outlook.com ([fe80::7c3b:c5a0:5222:69a4]) by SJ0PR10MB5488.namprd10.prod.outlook.com ([fe80::7c3b:c5a0:5222:69a4%7]) with mapi id 15.20.6792.026; Fri, 22 Sep 2023 15:05:42 +0000 Thread-Topic: [External] : Re: Debouncing slow mode line constructs (was: Emacs design and architecture. How about copy-on-write?) Thread-Index: AQHZ7T7JkhUHxM+2/Ey1RxJwzBLBl7Am69Dw In-Reply-To: <87h6nmy098.fsf@localhost> Accept-Language: en-US Content-Language: en-US x-ms-publictraffictype: Email x-ms-traffictypediagnostic: SJ0PR10MB5488:EE_|PH7PR10MB5880:EE_ x-ms-office365-filtering-correlation-id: e7c95f06-c168-4434-e348-08dbbb7d63bb x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: gOLwQikru/VMwspLUyoomhujS90OtuTsZZ1wAprRLxqokIxT5TuEJPbxgj/QlHWbvq4sgf+OdP///R2IhXnzrSwmMSzFr9Djs//2bWfS48bMSbrzkYidB8UVR4EATh3UBN07lxXaksT7KvPQl8VQVXgP0GZ9GdMEiExAK5PhWUaEn0Poh17IZgk5lYL1asWQ+3ou/UY5ACSIkkKkKNMz/z6k8/3xqFrQZnfa9SHVc+SjC3D/HpUsfYy6WSkbtPR9a9X+gVjhxFJjn1ugINZ6Ja2FRwdCJ8chwKS1pxGNaxYbqFtkoJDkYoMBArjz88oxfZ/OhYt4pm1YH70AVtL1XWEAqVb8uOaOYPeVmcym6ulJDZ7lJeYvnxZd1KffA2GZQdtO7tSXmScQUDGkzIk1H2foyknCBC7H8oZERtDbODkrniO+Y5yw2kw5xqqObPiv08B12/0KthMAcl7gNyQgwrpnODiU63al48op/oLAc1ftDOoyjGwjxNnE5D9zkbPXfdCRkK3eXPxZcDyCi+tneOh9SGMbadO1uryldlbZQg4yvSyZMnmT1NcUnDBNY5tF40hPJaUYubyGcFK1YxYiGrgUjkHfOpGfwfOUvBE6tCSSab8kotLKBTFg+GyThDOH 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)(346002)(366004)(136003)(396003)(39860400002)(376002)(451199024)(186009)(1800799009)(110136005)(5660300002)(52536014)(44832011)(2906002)(66476007)(4326008)(38070700005)(66946007)(38100700002)(8936002)(8676002)(66556008)(76116006)(66446008)(316002)(64756008)(33656002)(54906003)(55016003)(86362001)(41300700001)(26005)(83380400001)(6506007)(71200400001)(7696005)(9686003)(478600001)(122000001); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?TUZHeEZTMm9sZTFpRzY5bVRkN2EvNEJDR2p1QU5ocVN4b0VaY1JqOU1jV0wy?= =?utf-8?B?RE9hRFNUMmhzeDdNYjFDNTlteTE0RjdsYnZhZ3pUWjBHQVptcGVQaTZLMXNW?= =?utf-8?B?R2I0WTVVTzF3SU5UYVVOZjRsVzRkWUtTZDVCL1E3eG0rc3VSWU1EODFtSmp4?= =?utf-8?B?UUdISlJSNndvVWF4ZmxMcGRLV3lCWCtSdDVxM1l2TTFndEN3dHBRSXloNGZI?= =?utf-8?B?OFViY2krcmM5ZlFxV0tGeVV4TFVVeit2Tk55bWJLNTF2UFBveTZDYWdodUVk?= =?utf-8?B?SUMwZTBCYXBJeFVGMEZ5MTVHVGFtS3JoUjRvNTVHOUxaS3E5TUxZaHJmWmo1?= =?utf-8?B?UGtUM2FvS3pMTlhnSklGeEVNMTd3VTdHNE1ybzBuNWZLMTdidTR4NjRZTDFN?= =?utf-8?B?WmdKeGh1RFVEek5NWVVtTS9DRkpScWphL1N5RFB0TGxlTXJVUHVLR0c0MWJU?= =?utf-8?B?OGNoYTNKY0hTMHJiOEQ2ZUUzcjZSOUFLakJPNVVOVUtmRDN2cDg4QXB2VXRC?= =?utf-8?B?eC9JTE1wejJOWS9kK0Eyb29SVjYxNHU5cVozNnd4WEtsc1o4MVM2TzdsVE40?= =?utf-8?B?YU14OW1yNE5RZWpDNHk3TFMzSG5jWjg4VkhmT0Vnb2NaTmoxUHNiWkRIdmRI?= =?utf-8?B?UlUycWhTU2JSSjhFbWFvMUMydjJqNkppOVhyL3 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: xVHHzLpSJWyb/xvtrc9EvB/HGuthUE6R+CYusNhc3Vi8E9VeWynQmmEzEXRSxIvwoIsr3w4kMymj1SoUt6e/mIFp/G4L7xK4uHqv8tWX6FZGRMS10TWBYGam8C7sgN8llzg7dmMnU1UZMKRaGBVnEgqA0lsDol7KZVJL8aMtZ0CSOjnbc5LwLJMQjq9eiaRKOtwm3rbffNR5hQFnV4l3Hb1R5DnDKNM/oThoZkCrBqXm7rB20pZW6PtkkCQ8xKAJ8EZIV49pKrh4wmiJZefjmiQV0VK9Lnw+DNatFz9EGafdlw32anfhowy7iXvVm1vb3BvtV7fbODL1BLLk6Hh6NVh2Xgv+0wnirJGF15jDktAXbBZVD4D5ZnnDQjD2M6OAW1XDPmv6yiumysaSYN+ZoDpiCCKRtganvSyEbEhynC5IFpmindi8lBt7nroMbYEk/tAylimGBofTh5I1+L90cDe1rkq5GnWsT8j3nKXRIS6bUoyxOF84enxIQdZQIFOGw2XFnT5/D4eMdsJj+/Aynp2HkvmIm1owwJyQ6bIfjaFCKbNnn7SrdzsRGzxyn+9fj9l1dxNFV0qEUNZbU9wxJeXEli5qIcPnOfO7vjoQmQ97sWWnpHtih+f3aMqVfPkVawKo0wsBoGB1o/is+2QFHmVB8ZW5aov4B6CD5dgGLLzDxas3+dcCH1qWoyG1XBx+VlF5WIueciG/BnZEwkairGgMnEAKsoD3JQT+7UtRy50klK 0snOJ0qB7Km58SizM3scz3T4NkueeUY72aaPCyprDEADNO4Khw3CusYgohFAn17dRztKZFieclQSDGJSz8oO286GP4+fCOpso4 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: e7c95f06-c168-4434-e348-08dbbb7d63bb X-MS-Exchange-CrossTenant-originalarrivaltime: 22 Sep 2023 15:05:42.1459 (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: iDg71hncReI+rtXMNImu+iZo/l9n/40bNF1ZsCX8BNm9IpWERuSSvDWyKkDsdJR/i3SzbC98+N5qFX8p6y9uSg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR10MB5880 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.267,Aquarius:18.0.980,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2023-09-22_13,2023-09-21_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 phishscore=0 mlxlogscore=999 adultscore=0 bulkscore=0 spamscore=0 suspectscore=0 mlxscore=0 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2309180000 definitions=main-2309220130 X-Proofpoint-GUID: bMHSYnXlnQxSi5pTupFwnVdXfssqJMFA X-Proofpoint-ORIG-GUID: bMHSYnXlnQxSi5pTupFwnVdXfssqJMFA 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 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:310973 Archived-At: KENhdmVhdDogTm90IHJlYWxseSBmb2xsb3dpbmcgdGhpcyB0aHJlYWQuKQ0KDQo+IFdoYXQgSSBo YXZlIGluIG1pbmQgaXMgdGhlIGZvbGxvd2luZzoNCj4gDQo+IDEuIEV2ZXJ5IHRpbWUgRW1hY3Mg cHJvY2Vzc2VzIDpldmFsIGNvbnN0cnVjdCBpdCAoYSkgbWVhc3VyZXMgdGhlIHRpbWUNCj4gICAg dGFrZW47IChiKSBjYWNoZXMgcmV0dXJuIHZhbHVlLg0KPiAgICBUaGUgdG90YWwgbW9kZSBsaW5l IHJlbmRlciB0aW1lIGlzIGFsc28gcmVjb3JkZWQuDQo+IA0KPiAyLiBJZiB0aGUgdG90YWwgcmVu ZGVyIHRpbWUgZXhjZWVkcyBjb25maWd1cmFibGUgdGhyZXNob2xkLCBwcm9jZXNzaW5nDQo+ICAg IHRoZSBtb3N0IHRpbWUtY29uc3VtaW5nIDpldmFsIGNvbnN0cnVjdHMgd2lsbCBiZSBzdXNwZW5k ZWQgdW50aWwNCj4gICAgImRlYm91bmNlIiB0aW1lIHNpbmNlIHRoZSBsYXN0IGZ1bGwgcHJvY2Vz c2luZy4uLi4NCj4gDQo+IDMuIEFmdGVyICJkZWJvdW5jZSIgdGltZSBzaW5jZSB0aGUgbGFzdCAi c3VzcGVuZCIsIGFsbCB0aGUgOmV2YWwgYXJlDQo+ICAgIHByb2Nlc3NlZCBpbiBmdWxsIGFnYWlu LCBnZW5lcmF0aW5nIHVwLXRvLWRhdGUgbW9kZS1saW5lLg0KDQpBc3N1bWluZyB0aGF0J3MgZmVh c2libGUsIGFuZCBtaWdodCBiZSBkb25lDQooZS5nLiBFbGkncyBtYWlsIHN1Z2dlc3RzIGl0J3Mg bm90IHNvIGVhc3kpOg0KDQpJbnN0ZWFkIG9mIGp1c3QgZG9pbmcgdGhhdCBhdXRvbWF0aWNhbGx5 LA0Kb3IganVzdCBsZXR0aW5nIHVzZXJzIHR1cm4gaXQgb24vb2ZmLCB3aHkNCm5vdCBnaXZlIHVz ZXJzIG1vcmUgb2YgYSBoZWFkcy11cCBhbmQgbW9yZQ0KY29udHJvbCBvdmVyIGhvdyB0byBoYW5k bGUgdGhlIHByb2JsZW0/DQoNCldoZW4geW91J3ZlIGRldGVjdGVkIHRoYXQgc29tZSBtb2RlLWxp bmUNCnByb2Nlc3NpbmcgKGUuZy4gd2l0aCA6ZXZhbCwgYnV0IG1heWJlIGV2ZW4NCm90aGVyd2lz ZSkgdGFrZXMgInRvbyBsb25nIiAoYmFzZWQgb24gYQ0KdXNlci1jb25maWd1cmFibGUgdGhyZXNo b2xkKSwgdGFrZSB3aGF0ZXZlcg0KYWN0aW9uIHRoZSB1c2VyIGhhcyBwcmV2aW91c2x5IGNob3Nl biwgZS5nLjoNCg0KMS4gV2hhdCB5b3UgZGVzY3JpYmU6IGF1dG9tYXRpYyBkZWJvdW5jaW5nLg0K Mi4gSGlnaGxpZ2h0IHRoZSBtb2RlLWxpbmUgaW4gc29tZSBvYnZpb3VzDQogICB3YXksIGFzIGxv bmcgYXMgdGhlIHByb2JsZW0gZXhpc3RzLg0KMy4gIzEgJiAjMjogaGlnaGxpZ2h0IGFuZCBkZWJv dW5jZS4NCjQuIFByb21wdCB1c2VyIGZvciB3aGF0IHRvIGRvLg0KNS4gSW52b2tlIHNvbWUgdXNl ci1kZWZpbmVkIG9yIDNyZC1wYXJ0eQ0KICAgbGlicmFyeS1kZWZpbmVkIGZ1bmN0aW9uLiAgKE9u ZSBleGFtcGxlDQogICBjb3VsZCBiZSB0byByZXBvcnQgdGhlIHByb2JsZW0gdG8gdGhlDQogICBs aWJyYXJ5IG1haW50YWluZXIuKQ0KNi4gLi4uDQoNClVzZXIgY2hvaWNlIGNvdWxkIGJlIGJ5IGNv bmZpZyAob3B0aW9uKS4NCk9yIGl0IGNvdWxkIGJlIGJ5IHVzZXIgY29kZSBvciAzcmQtcGFydHkN CmxpYnJhcnkgY29kZSAoZS5nLiBtb2RlLWxpbmUgbGlicmFyaWVzDQpjb3VsZCBwcm92aWRlIGFs dGVybmF0aXZlIGJlaGF2aW9yKS4NCg0KVGhhdCdzIG9mZiB0aGUgdG9wIG9mIG15IGhlYWQsIG9i dmlvdXNseS4NClRoZSBpZGVhIGlzIHRvLCBpbiBzb21lIHdheToNCg0KICogTGV0IHVzZXJzIGtu b3cgd2hhdCdzIGhhcHBlbmluZy4NCiAqIEdpdmUgdXNlcnMgc29tZSBjb250cm9sIG92ZXIgd2hh dCB0byBkby4NCg==