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: Smarter M-x that filters on major-mode Date: Thu, 11 Feb 2021 06:11:23 +0000 Message-ID: References: <8ed9b43502ae1480e06b@heytings.org> <83r1lohqoc.fsf@gnu.org> <87wnvfenry.fsf@gnus.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="8046"; mail-complaints-to="usenet@ciao.gmane.io" Cc: "bugs@gnu.support" , "gregory@heytings.org" , "emacs-devel@gnu.org" , "Alfred M. Szmidt" , Matt Armstrong , Lars Ingebrigtsen , Eli Zaretskii To: Stefan Monnier , Stefan Kangas Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Thu Feb 11 07:14:16 2021 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 1lA5F1-0001wg-83 for ged-emacs-devel@m.gmane-mx.org; Thu, 11 Feb 2021 07:14:15 +0100 Original-Received: from localhost ([::1]:35276 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lA5F0-00026R-7F for ged-emacs-devel@m.gmane-mx.org; Thu, 11 Feb 2021 01:14:14 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:41872) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lA5CS-0001Xf-AM for emacs-devel@gnu.org; Thu, 11 Feb 2021 01:11:36 -0500 Original-Received: from userp2120.oracle.com ([156.151.31.85]:46480) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lA5CK-0005C3-Md; Thu, 11 Feb 2021 01:11:35 -0500 Original-Received: from pps.filterd (userp2120.oracle.com [127.0.0.1]) by userp2120.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 11B6Aeml101440; Thu, 11 Feb 2021 06:11:26 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-2020-01-29; bh=/maP7L8EGlaKW/IuTrS9sRYz+6iVuzR5QrqBF2fqYhk=; b=ijQDuCefZGnfhE//woBStgnhHJH9rW0UE5cPurpFHZ3ryv9fxUF5loAJaAqiCE9jzurP VWj9VxDq51yjQ8fbmgXR01LaFTsAYE9rMNT0KrXMY/ZOKiH2c/VWqZxo7eATx5p3hQzN lU9+nobN9RItv3AO5V/7r55Bj099vDmLgY9mnHyCjqePS24izhtq/UDh8OALL0NDoBVz o2KqKg8BD0IDpAFlw4SJMeZE4YYCzVad9NoSU1lUNtsyZfeHJ625Bl5Sm2rXYzXvBD6m cApMb/ZsP3jdRhrgduejbhHwevtfO3IwblZOz0CB316w22paYWL/CV6d/WBHwbQciXsS UQ== Original-Received: from userp3030.oracle.com (userp3030.oracle.com [156.151.31.80]) by userp2120.oracle.com with ESMTP id 36hkrn64d8-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 11 Feb 2021 06:11:26 +0000 Original-Received: from pps.filterd (userp3030.oracle.com [127.0.0.1]) by userp3030.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 11B6B6jx128341; Thu, 11 Feb 2021 06:11:25 GMT Original-Received: from nam11-bn8-obe.outbound.protection.outlook.com (mail-bn8nam11lp2168.outbound.protection.outlook.com [104.47.58.168]) by userp3030.oracle.com with ESMTP id 36j51yhses-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 11 Feb 2021 06:11:25 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=RfXC5VJVu9SYaHUjt4pGR/57Ng6al0t+vVk5q9BuYT8ebdXuVLQu78fgK5r8IYK3DFWYrKqRlBj1/Z2UNkzNrgZYgb+Dw5ae//twzVtzoZtOFjcb2iPlEaToNGJbynL5cA0tBF/ZYFPl6bQ58Kobh4rkpbixqd4DMRM/ydY26My9VS13382nNf4NKm/HoavZG1D6VHvMFwcNMDib3Xo2Iwf8fyfnKeq0uMu2MRZgHJjTJpY7fsGeuU3IY8eU4URL6ekAKJvV2v4xINiRY9C0z1gcdvfjjOWH/HOQ+wlCwPHFP8bRkzgBb4YWf99gTQwL/5UvSUdlJlZY94hK/3h41g== 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-SenderADCheck; bh=/maP7L8EGlaKW/IuTrS9sRYz+6iVuzR5QrqBF2fqYhk=; b=b8HH30QHFdwcDXuB3frwVeWMDP10T5tlz6VnDeQlNu4KfbdDKUKMiTt7u0eYRXp9VHLz0dFAFSzjUKfWrTtPtBGs0aT3epOT+qXL4xe8XOf2TRH4bCrYB6tDIc7rIGnnDsEuvP4Y5c6N2lj7nxz+nYdXkoIYvuh1JPgcFXex+zzuzBIG/G165fEjHVmN9Oayf+CXuvSAQsixaiEEpQrwHZ1qRrGCagDDmTIOn5CCjebmgxdz3od98jqrIOBnRNkf3YV0KgslWuTkn101QLJwYKFvYyCD8QfBzvTkpmoHtd8hscQ0B4IkbzkJLDAYW5KY1AEGv1Vrh01yU4ngq9ossw== 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=/maP7L8EGlaKW/IuTrS9sRYz+6iVuzR5QrqBF2fqYhk=; b=u03epTo8RkkdwBNmn7aS3X5K8FRBT67QlHVRvErWDLcUjS0fyKZJzSQVyCm5emiDu0wL0wEAzDxkTj7+6m2Swi7lz5NTluAhDDHm7fHQf0zRoSLQxxk8Aj/16rNRQhVgzLAVZgvXBJmaO6HS06t08hl7EQ2kANkBz4lGG8BHpm4= Original-Received: from SA2PR10MB4474.namprd10.prod.outlook.com (2603:10b6:806:11b::15) by SA2PR10MB4746.namprd10.prod.outlook.com (2603:10b6:806:11c::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3846.27; Thu, 11 Feb 2021 06:11:23 +0000 Original-Received: from SA2PR10MB4474.namprd10.prod.outlook.com ([fe80::b8d2:db6d:3e4b:d315]) by SA2PR10MB4474.namprd10.prod.outlook.com ([fe80::b8d2:db6d:3e4b:d315%5]) with mapi id 15.20.3846.027; Thu, 11 Feb 2021 06:11:23 +0000 Thread-Topic: [External] : Re: Smarter M-x that filters on major-mode Thread-Index: AQHXACg3KCyD7S4V3UqEysn+GuCUK6pSY+/w In-Reply-To: Accept-Language: en-US Content-Language: en-US authentication-results: iro.umontreal.ca; dkim=none (message not signed) header.d=none;iro.umontreal.ca; dmarc=none action=none header.from=oracle.com; x-originating-ip: [73.170.83.28] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: a9a3a4f7-5a05-47c2-8075-08d8ce53db71 x-ms-traffictypediagnostic: SA2PR10MB4746: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:8273; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: kIlh1sXNRc/T6+itWApkgJiHjNE9hCwZmpjNsqAQNdBm+hKqQqGFpcuz2rulwMJegbM9bHXCpgmFoRbJJVtOvPAA+uJVdRUxIxK5Qik5CWs4eeq/NxYF1Cu17j2FNG2h7b1SWRaZc8IWd/+GPsGEyZ9Eb0CSwRymFPEnK22HDM7Q/OMFD2zwWN276j1sDGKF7+yfeuXmfbfW8OtbEFvXD3hQs/+rDlOAqx+xod2odU498CqxtViipyBLKKUCTHdZvXGNLhfspwYsu8n4ealjR00nj6W1ytsFBE/70D+oVYY0PIuAz25Q/WauwpnjS92Q+jbRJNk7EY2z1rHWMLzbvyVOiyf9mR2QW/FZNHwoZAXdoXI5fNZP45uJR1c5Wo/43CkXmsrFWOEKDLOk3LHnBnYnYWzM3JcMrQRyRFJ59gv/rEbFsbnlXIhoHMmdPQ1rSrY5pC1R2TqY4UKbRRq0F39MH42ho1PNvMT0jv9vOTCftD//mEBM0mvEs3NNVTtgPebgWLaI1jpbYWdwS4rHLoifOZrqMoqhEDrzJ589SwtmTYr870qfpMDWezFJkTKSb+VEZAob00AopMymnSC+iNRQADj8BjFDjnXjcrB5ubI= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SA2PR10MB4474.namprd10.prod.outlook.com; PTR:; CAT:NONE; SFS:(396003)(366004)(376002)(39860400002)(346002)(136003)(83380400001)(66556008)(52536014)(55016002)(54906003)(110136005)(71200400001)(5660300002)(316002)(296002)(33656002)(9686003)(478600001)(966005)(44832011)(26005)(4326008)(6506007)(8676002)(7696005)(64756008)(66476007)(86362001)(76116006)(2906002)(186003)(66446008)(8936002)(66946007); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: =?utf-8?B?TGUvSnRBOUlzVDNaRkdHdExlcHVMU1hyUXNPLzIvc0JsY29BaUI3VVJuc1cv?= =?utf-8?B?R2xZMmpFTzJHRWtjWm5sc0ZDd1N3ZjBIc0tMMllFL0d6SzZXM3pCOE9leVcr?= =?utf-8?B?amNQNU1VRHN4RHBaUmc2WTVsMS9waU1uZ3B6cVgvNGc2TXpoT0tEdlpiSHlQ?= =?utf-8?B?clhVUTRhYUpGbnVYcjl1OHJUMEZaTEY0anNmRitnNi9WLzQwYnVYTnREb1pC?= =?utf-8?B?U0xNWmN1YUFrby92K2JDQzRKUzFBcG1rcXYvaEJWTFpIWjBjR0FVMUZqVS9L?= =?utf-8?B?ajFnNGZ5WTl6bXBJVTFHOWxaUHdkWktEUzZuZjM2ZlBUQTludkRCOE0yU254?= =?utf-8?B?aDF3amU2djJYNm9wcWw2cWlOY0ovYm16Y2FONkF2L2tXd0NYK1RMQy9Sek0x?= =?utf-8?B?R2JIVGZKSjA3YjQ0bjBtZy95UWlsU2hodGFId1MrVndsMU9UbGJmSTFRV1dq?= =?utf-8?B?N1NQRHBKWkcvcHRCWTVjdXlXUUhnZXdNenlyZ1NmTWVzcDQzZjB4a3JTSXY3?= =?utf-8?B?SHlWeWFlRWc1VmtMSnVjQjc5eS9INTU3dWlGODRLd09PSkdOZzdYSjY2WUc1?= =?utf-8?B?WllOa0tYSFUxai9aMFpSY29ZNll6VzlRYnkweUF4dlRFdDNOT3lkL2k1NFlq?= =?utf-8?B?UlVubWdnV2tmQ093OFk3NXdrOFIvVzZySjBObkE2 x-ms-exchange-transport-forked: True X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SA2PR10MB4474.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: a9a3a4f7-5a05-47c2-8075-08d8ce53db71 X-MS-Exchange-CrossTenant-originalarrivaltime: 11 Feb 2021 06:11:23.1544 (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: OeQ6CNZTJCI3ikrYaKFaXRkdWIVjENCfZtX1NB0EktAG6QEX9zQupW3wsvcHR80dbi4L4cwATAhnq/10QfOM2A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA2PR10MB4746 X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=9891 signatures=668683 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 spamscore=0 phishscore=0 mlxscore=0 malwarescore=0 mlxlogscore=999 bulkscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2009150000 definitions=main-2102110054 X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=9891 signatures=668683 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 phishscore=0 malwarescore=0 priorityscore=1501 bulkscore=0 spamscore=0 impostorscore=0 mlxscore=0 suspectscore=0 mlxlogscore=999 adultscore=0 clxscore=1011 lowpriorityscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2009150000 definitions=main-2102110053 Received-SPF: pass client-ip=156.151.31.85; envelope-from=drew.adams@oracle.com; helo=userp2120.oracle.com X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 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_MED=-2.3, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_PASS=-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.23 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" Xref: news.gmane.io gmane.emacs.devel:264355 Archived-At: PiA+IEl0IHdvdWxkIGluZGVlZCBiZSB2ZXJ5IHVzZWZ1bCB0byBwcm92aWRlIGENCj4gPiBtZWNo YW5pc20gdG8gZXhjbHVkZSBjb21tYW5kcyBmcm9tIE0teCB0aGF0DQo+ID4gYXJlIHVzZWxlc3Mg b3V0c2lkZSBvZiB0aGVpciBtYWpvciBtb2RlLg0KDQpDb21tYW5kcyB0aGF0IGFyZSB1c2VsZXNz IG91dHNpZGUgb2YgYSBwYXJ0aWN1bGFyDQptb2RlL3BhY2thZ2UvZXRjLiB0eXBpY2FsbHkgaGF2 ZSBzb21lIHBhcnQNCm9mIHRoZWlyIG5hbWUgdGhhdCBpbmRpY2F0ZXMgdGhhdCBtb2RlL3BrZy9l dGMuDQoNCkEgc2ltcGxlIHdheSBvZiBmaWx0ZXJpbmcgb3V0IHN1Y2ggbmFtZXMgaXMgbW9yZQ0K dXNlZnVsIHRoYW4gdHJ5aW5nIHRvIG90aGVyd2lzZSBndWVzcyBhc3NvY2lhdGlvbg0Kb2YgYSBt b2RlL3BrZy9ldGMuIHdpdGggY29tbWFuZCBuYW1lcy4gIFlvdSBjYW4NCm9mdGVuIHJlY29nbml6 ZSBzdWNoIGNvbnRleHRzIGJ5IHRoZSBjb21tYW5kIG5hbWVzLg0KDQpJY2ljbGVzIGxldHMgeW91 ICgxKSBtYXRjaCBvbmx5IG5hbWVzIHlvdSB3YW50DQp0byBleGNsdWRlLCB0aGVuICgyKSB1c2Ug YEMtficgdG8gcmVtb3ZlIHRoZW0gYXMNCmNhbmRpZGF0ZXMuICAoUmVwZWF0LCBtYXRjaGluZyBk aWZmZXJlbnQgbmFtZQ0KcGFydHMsIHRvIG5hcnJvdyBmdXJ0aGVyLikNCg0KPiBTaW1pbGFybHks IHlvdSBtYXkgbWFyayBzb21lIGNvbW1hbmRzIHNvIHRoZXkncmUNCj4ganVzdCBuZXZlciBhdmFp bGFibGUgdG8gYE0teGAuICBUaGlzIGNvdWxkIGFwcGx5DQo+IHRvIHNvbWUgbWFqb3IgYW5kIG1p bm9yIG1vZGVzIHdoaWNoIGFyZSBvbmx5DQo+IG1lYW50IHRvIGJlIHVzZWQgImludGVybmFsbHki LCBvciB0byBjb21tYW5kcw0KPiB3aGljaCBvbmx5IHdvcmsgd2hlbiBwcm92aWRlZCB3aXRoIGEg bW91c2UgZXZlbnQsIG9yIC4uLg0KPiANCj4gVGhhdCBzaG91bGQgYmUgYSB2ZXJ5IGVhc3kgY2hh bmdlIHRvDQo+IGBleGVjdXRlLWV4dGVuZGVkLWNvbW1hbmRgLg0KDQpObywgdGhhdCBzaG91bGRu J3QgaGFwcGVuIGJ5IGRlZmF1bHQsIGF0IGxlYXN0Lg0KTm90IGhlbHBmdWwgYW5kIG5vdCBuZWVk ZWQuDQoNClRoZXJlJ3MgYSBuYW1pbmcgY29udmVudGlvbiBmb3IgImludGVybmFsIiAtDQpzaW1w bGUgdG8gYXZvaWQuDQoNCkFsc28sIGV2ZW4gaWYgdGhlIG1haW4gcHVycG9zZSBvZiBgTS14JyBp cyB0bw0KaW52b2tlIGEgY29tbWFuZCwgaXQgcHJvdmlkZXMgc2V0cyBvZiBjb21tYW5kDQpuYW1l cyB0aGF0IG1hdGNoIHlvdXIgaW5wdXQgYXQgYW55IHRpbWUsIGFuZA0Kc29tZSBjb21wbGV0aW9u ICJzeXN0ZW1zIiBsZXQgeW91IGRvIG1vcmUgd2l0aA0KYSBzZXQgb2YgbWF0Y2hlcyB0aGFuIGp1 c3QgcmVkdWNlIGl0IHRvIG9uZQ0KY29tbWFuZCBhbmQgaW52b2tlIHRoYXQuDQoNCkUuZy4sIHlv dSBjYW4gZ2V0IHRoZSBkb2MgZm9yIHBhcnRpY3VsYXIgbWF0Y2hpbmcNCmNhbmRpZGF0ZXMsIG9u IHRoZSBmbHkuICBJZiBgTS14JyBhdXRvbWF0aWNhbGx5DQpleGNsdWRlcyBzb21lIGNhdGVnb3Jp ZXMgb2YgY29tbWFuZCB0aGVuIHRob3NlDQpjb21tYW5kcyBhcmUgZXhjbHVkZWQgYWxzbyBmb3Ig c3VjaCBhbmNpbGxhcnkNCnB1cnBvc2VzLg0KDQo+ID4gSSd2ZSBoYWQgYSByZWxhdGVkIGlkZWEg dG8gbWFrZSBgTS1YJyAoYS5rLmEuDQo+ID4gYE0tUy14JykgcnVuIGEgdmVyc2lvbiBvZiBgTS14 JyB0aGF0ICppbmNsdWRlcyoNCj4gPiBvbmx5IGNvbW1hbmRzIHRoYXQgYXJlIHNwZWNpZmljYWxs eSByZWxldmFudCB0bw0KPiA+IHRoZSBjdXJyZW50IG1ham9yIG1vZGUuDQoNClNlZSBhYm92ZSwg YWJvdXQgbmFtZXMgYmVpbmcgdGhlIHdheSB0byB0ZWxsDQp3aGV0aGVyIGEgY29tbWFuZCBpcyBy ZWxldmFudCB0byBhIGdpdmVuIG1vZGUuDQoNCk90aGVyd2lzZSwgeW91IG5lZWQgc29tZSBmaWx0 ZXIgZnVuY3Rpb24gdGhhdA0Ka25vd3MvanVkZ2VzIHN1Y2ggcmVsZXZhbmNlIC0gYW5kIHRoYXQg bWlnaHQNCml0c2VsZiBiZSBzcGVjaWZpYyB0byB0aGUgcGFydGljdWxhciBtb2RlLg0KDQo+ID4g VGhpcyB3b3VsZCBiZSB1c2VkIHdoZW4gSSBzcGVjaWZpY2FsbHkgd2FudA0KPiA+IHRvIGRvIHNv bWV0aGluZyBpbiBteSBtYWpvciBtb2RlLCBhcyBvcHBvc2VkDQo+ID4gdG8gbG9va2luZyBhdCB0 aGUgZ2F6aWxsaW9uIGRpZmZlcmVudCBlbnRyeQ0KPiA+IHBvaW50cyBmb3IgdGhpbmdzIGxpa2Ug Y2FsZW5kYXIsIGdudXMsIG9yIHRldHJpcy4NCg0KWUFHTkkuICBDb21tYW5kIG5hbWVzIHNob3Vs ZCB0aGVtc2VsdmVzIGluZGljYXRlDQp0aGlzIGtpbmQgb2YgdGhpbmcuICBXaGF0IHlvdSBuZWVk IGlzIGEgZ29vZCB3YXkNCnRvIGZpbHRlciBjb21tYW5kIG5hbWVzLg0KDQo+IFllcywgdGhlcmUn cyBjbGVhcmx5IGEgbG90IG9mIHJvb20gZm9yIGltcHJvdmVtZW50Lg0KPiBJIG1vdmVkIHRoYXQg ZnVuY3Rpb24gdG8gRUxpc3AgdG8gbWFrZSBpdCBlYXNpZXINCj4gdG8gaGFjayBvbiBpdCwgYW5k IEknbSBzdGlsbCBob3BlZnVsIHRoYXQgU29tZW9uZeKEog0KPiB3aWxsIG1ha2UgdXNlIG9mIGl0 Lg0KDQpJIGRvbid0IGFncmVlIHRoYXQgYE0teCcgc2hvdWxkIHRyeSB0byBiZSAic21hcnQiDQpp biB0aGVzZSB3YXlzIC0gbm90IHdpdGhvdXQgc29tZSB1c2VyIGNvbnRyb2wgKG9uDQp0aGUgZmx5 LCBub3QganVzdCB2aWEgdXNlciBvcHRpb24pLg0KDQpKdXN0IHdoaWNoIGNvbW1hbmRzIGEgcGFy dGljdWxhciB1c2VyLCBhdCBhDQpwYXJ0aWN1bGFyIHRpbWUsIGZvciB3aGF0ZXZlciByZWFzb24s IHdhbnRzIHRvIGJlDQphYmxlIHRvIGludm9rZSB3aXRoIGBNLXgnIGlzIG5vdCBzb21ldGhpbmcg dGhhdCdzDQphY2N1cmF0ZWx5IHByZWRlZmluZWQuDQoNCkluc3RlYWQsIGl0J3Mgc21hcnRlciB0 byBsZWF2ZSBpdCB1cCB0byB0aGUgdXNlciwNCmJ1dCBwcm92aWRlIHdheXMgdG8gZmlsdGVyIG9u IHRoZSBmbHkuIEUuZy4sIHNob3cNCm1lIG9ubHkgY29tbWFuZHMgb2YgYSBwYXJ0aWN1bGFyIGtp bmQgKGUuZy4gZm9yDQp0aGUgY3VycmVudCBtb2RlIG9yIHdoYXRldmVyKS4NCl9fXw0KDQpBcyBv bmUgcG9pbnQgb2YgcmVmZXJlbmNlLCBpbiBJY2ljbGVzLCBkdXJpbmcNCmBNLXgnIGNvbXBsZXRp b24sIHlvdSBjYW4gdXNlIGBNLWkgJCcgdG8gdG9nZ2xlDQp3aGV0aGVyIGNhbmRpZGF0ZXMgc2hv dWxkIGJlIGxpbWl0ZWQgdG8gY29tbWFuZHMNCnRoYXQgYXJlIGN1cnJlbnRseSBib3VuZCB0byBr ZXlzLg0KDQpUaGF0J3MgdGhlIG9ubHkgb24tdGhlLWZseSBmaWx0ZXJpbmcgSSd2ZSBvZmZlcmVk DQpmb3IgYE0teCcsIGJ1dCBvdGhlciBmaWx0ZXJpbmcgY291bGQgYmUgcHJvdmlkZWQuDQooRS5n LiwgZXhjbHVkZSBtb3VzZS1pbnZva2VkIGNvbW1hbmRzLCBhcyB5b3UNCm1lbnRpb25lZC4pICBX aGF0J3MgaW1wb3J0YW50IGlzIG5vdCB0byBkbyBhbnkNCnN1Y2ggZmlsdGVyaW5nIGluIGFueSBo YXJkY29kZWQga2luZCBvZiB3YXkuICBMZXQNCnVzZXJzIGRvIGl0IHdoZW4gdGhleSB3YW50Lg0K DQpgTS14JyBpcyBhIGNvbW1hbmQgdGhhdCBwcm92aWRlcyBjb21tYW5kLW5hbWUNCmNvbXBsZXRp b24uICBZZXMsIGNvbW1hbmRzIGNhbiBiZSBhc3NvY2lhdGVkIHdpdGgNCmJ1ZmZlciBtb2Rlcywg cGFja2FnZXMsIGtleXMsIGV0Yy4gIEFuZCBzdWNoDQphc3NvY2lhdGlvbnMgY291bGQgYmUgdXNl ZCBmb3IgY29tbWFuZC1uYW1lDQpmaWx0ZXJpbmcuDQoNCkJ1dCB0aGUgYXNzb2NpYXRpb25zIG5l ZWQgdG8gYmUgZGVmaW5lZCAoa25vd24pDQpzb21laG93IChleHBsaWNpdGx5IG9yIGltcGxpY2l0 bHkpLCBpbiBvcmRlciB0bw0KYmUgZXhwbG9pdGVkLg0KDQpBZ2FpbiwgdGhlIGNvbW1hbmQgbmFt ZXMgdGhlbXNlbHZlcyBhbHJlYWR5DQpwcm92aWRlIHN1Y2ggYXNzb2NpYXRpb25zIHRvIHNvbWUg ZXh0ZW50LiAgU3VwcGxlDQppbnRlcmFjdGl2ZSBuYXJyb3dpbmcgYWNjb3JkaW5nIGp1c3QgdG8g bmFtZQ0KbWF0Y2hpbmcgZ29lcyBhIGxvbmcgd2F5IHRvd2FyZCByZWFsaXppbmcgd2hhdA0KeW91 J3ZlIHN1Z2dlc3RlZC4NCg0KX19fDQoNCkJ1dCBieSB3YXkgb2YgZXhhbXBsZSB3cnQgcHJvdmlk aW5nIG90aGVyLA0Kbm9uLW5hbWUsIGZpbHRlcmluZyBvbiB0aGUgZmx5Og0KDQpGb3IgY29tbWFu ZHMgdGhhdCBwcm9tcHQgZm9yIGEgX2J1ZmZlcl8gbmFtZSwNCkljaWNsZXMgbGV0cyB5b3UgdXNl IGEgcHJlZml4IGFyZyB0byBsaW1pdA0KdGhlIGJ1ZmZlci1uYW1lIGNhbmRpZGF0ZXMgdG8gY29t cGxldGUgYWdhaW5zdCwNCmluIHZhcmlvdXMgd2F5czoNCg0KKiBQbGFpbiDigJhDLXXigJk6IG9u bHkgYnVmZmVycyB3aG9zZSBtb2RlIGlzIGRlcml2ZWQNCiAgZnJvbSB0aGUgY3VycmVudCBidWZm ZXIncyBtb2RlIGFyZSBjYW5kaWRhdGVzDQoNCiog4oCYQy11IEMtdeKAmSAoZG91YmxlKTogb25s eSBkaXNwbGF5ZWQgYnVmZmVycw0KDQoqIOKAmEMtdSBDLXUgQy114oCZICh0cmlwbGUpOiBvbmx5 IGJ1ZmZlcnMgbm90IGRpc3BsYXllZA0KDQoqIOKAmC3igJkgKHBsYWluIOKAmC3igJkpOiBvbmx5 IG1vZGlmaWVkICh1bnNhdmVkKSBidWZmZXJzDQoNCiogPSAwOiBidWZmZXJzIHdpdGggdGhlIHNh bWUgbW9kZSBhcyBjdXJyZW50IGJ1ZmZlcg0KDQoqID4gMDogYnVmZmVycyB2aXNpdGluZyBmaWxl cw0KDQoqIDwgMCAoYW5kIG5vdCBwbGFpbiDigJgt4oCZKTogYnVmZmVycyBhc3NvY2lhdGVkIHdp dGgNCiAgICAgIHRoZSBzZWxlY3RlZCBmcmFtZQ0KDQooVGhvc2UgYXJlIHRoZSBkZWZhdWx0IGJl aGF2aW9ycywgYnV0IHlvdSBjYW4NCmNoYW5nZSB0aGVtIHdpdGggYSB1c2VyIG9wdGlvbi4pDQpf X18NCg0KQmVzaWRlcyB0aG9zZSBidWZmZXItY29tbWFuZCBwcmVmaXgtYXJnIGJlaGF2aW9ycywN CndoaWNoIHlvdSBuZWVkIHRvIGRlY2lkZSBvbiBiZWZvcmUgeW91IGludm9rZSB0aGUNCmNvbW1h bmQsIHlvdSBjYW4gYWxzbyBmaWx0ZXIgYnVmZmVyIGNhbmRpZGF0ZXMgb24NCnRoZSBmbHkgZHVy aW5nIGNvbXBsZXRpb246DQoNCiog4oCYQy14IEbigJk6IHRvZ2dsZSB3aGV0aGVyIHRvIGluY2x1 ZGUgY2FjaGVkIGZpbGVzDQogIGFzIGNhbmRpZGF0ZXMNCg0KKiDigJhDLXggUuKAmTogdG9nZ2xl IHdoZXRoZXIgdG8gaW5jbHVkZSByZWNlbnRseQ0KICBhY2Nlc3NlZCBmaWxlcyBhcyBjYW5kaWRh dGVzDQoNCiog4oCYQy14IG3igJk6IG9ubHkgYm9va21hcmtlZCBidWZmZXJzDQoNCiog4oCYQy14 IEMtbSAt4oCZOiByZW1vdmUgYnVmZmVycyB3aG9zZSBtYWpvciBtb2RlIGlzDQogIGRlcml2ZWQg ZnJvbSBhIGdpdmVuIG1vZGUgKGZvciB3aGljaCB5b3UncmUNCiAgcHJvbXB0ZWQpLiAgUmVwZWF0 IHRvIHJlbW92ZSBtb3JlIG1vZGVzLg0KDQoqIOKAmEMteCBDLW0gK+KAmTogKG9wcG9zaXRlIG9m IOKAmEMteCBDLW0gLeKAmS4pIGtlZXANCiAgb25seSBjYW5kaWRhdGVzIHdpdGggYSBkZXJpdmVk IG1ham9yIG1vZGUNCg0KKiDigJhDLXggTSAt4oCZOiBzYW1lIGFzIOKAmEMteCBDLW0gLeKAmSwg YnV0IGV4Y2x1ZGUNCiAgYW5jZXN0b3IgbW9kZXMNCg0KKiDigJhDLXggTSAr4oCZOiBzYW1lIGFz IGBDLXggQy1tICvigJksIGJ1dCBleGNsdWRlDQogIGFuY2VzdG9yIG1vZGVzDQoNCiog4oCYQy14 ICogLeKAmTogcmVtb3ZlIG1vZGlmaWVkIGJ1ZmZlcnMNCg0KKiDigJhDLXggKiAr4oCZOiBrZWVw IG9ubHkgbW9kaWZpZWQgYnVmZmVycw0KDQoqIOKAmEMteCBpIC3igJk6IHJlbW92ZSBpbmRpcmVj dCBidWZmZXJzDQoNCiog4oCYQy14IGkgK+KAmToga2VlcCBvbmx5IGluZGlyZWN0IGJ1ZmZlcnMN Cg0KKiDigJhDLXggdiAt4oCZOiByZW1vdmUgdmlzaWJsZSAoZGlzcGxheWVkKSBidWZmZXJzDQoN Ciog4oCYQy14IHYgK+KAmToga2VlcCBvbmx5IHZpc2libGUgKGRpc3BsYXllZCkgYnVmZmVycw0K X19fDQoNClNpbWlsYXIgZnVuY3Rpb25hbGl0eSBpcyBhdmFpbGFibGUgZm9yIGNvbW1hbmRzDQp0 aGF0IHVzZSBmaWxlLW5hbWUgY29tcGxldGlvbi4NCg0KaHR0cHM6Ly93d3cuZW1hY3N3aWtpLm9y Zy9lbWFjcy9JY2ljbGVzXy1fQnVmZmVyLU5hbWVfSW5wdXQNCg==