From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by sourceware.org (Postfix) with ESMTPS id 1E8603948471 for ; Tue, 10 May 2022 13:43:05 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 1E8603948471 X-IronPort-AV: E=McAfee;i="6400,9594,10342"; a="249276327" X-IronPort-AV: E=Sophos;i="5.91,214,1647327600"; d="scan'208";a="249276327" Received: from fmsmga007.fm.intel.com ([10.253.24.52]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 10 May 2022 06:43:04 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.91,214,1647327600"; d="scan'208";a="570680371" Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by fmsmga007.fm.intel.com with ESMTP; 10 May 2022 06:43:04 -0700 Received: from fmsmsx609.amr.corp.intel.com (10.18.126.89) by fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.27; Tue, 10 May 2022 06:43:04 -0700 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx609.amr.corp.intel.com (10.18.126.89) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.27 via Frontend Transport; Tue, 10 May 2022 06:43:04 -0700 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (104.47.66.42) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2308.27; Tue, 10 May 2022 06:43:04 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XSvNPKjNQQWjmcoYmkCHNyQPAWBs3bNsh7kCY9JMYmyBCx+R+kESjLRJuRdGBymw2QFAVqjnXZ2aIhAfFN+4zeiGRaZWESfTSkKckOCVD0jmh5TWwAITdfuqpMipNutB5YYrWA2QXm21Ufj3DfwOsBVWbz1WiikvZdRgyjbxhSfNdC7FnvUErtSi7BZFxTZJt6wcGQDA4xeU69WoVhhcHk0rGskTuxKrsL2uLsVgxHiSJSWTAW3yiElDmXC/XiQHlWW6CaDnGuAg/st6fiToP7r24FMjIcREB7XZmQ3bHd1slrgmWi3VK5Uy+4ykXwXYeNRh9XEWz5RB/2LPbZ2auw== 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=/XP+OZAaS0G5M/JMRY6XIfc01XnDvEBqFXjB0GatCNQ=; b=j3hR2ibN0JFiuEZI8EqLkXCXp0PvxgeMwGAmObiDAhdkTUBu8tO2Ul4KDOSWaX6Jg3Hfrm7re+1FcMRgW+uAmXbMvihyTEANAs/ealSVPYMFeWk4a2irC5kq6OrmxLxF7oOC73xmRxlUul2QCxE++o2DXW7zd+yaUUJW4sFtcWSTIqmmLCcaQYRDoyB+M3rSW3HZBAuopLVxnrJMxSNbRm860i+egjBohnxrcj64dykyN2g9s9qFveZoE0+v6CPROPmXwdiwAdh/OpQOmPuafx4w4da70Wj4phn32goxaXxSLt3/YX8Y6ZVfqKyCcuOBcgt2KGWCUk75N6ffJ5/4cw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from MN2PR11MB4566.namprd11.prod.outlook.com (2603:10b6:208:24e::16) by BN7PR11MB2657.namprd11.prod.outlook.com (2603:10b6:406:b1::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5227.21; Tue, 10 May 2022 13:43:03 +0000 Received: from MN2PR11MB4566.namprd11.prod.outlook.com ([fe80::e53d:4523:d1a4:bdcc]) by MN2PR11MB4566.namprd11.prod.outlook.com ([fe80::e53d:4523:d1a4:bdcc%7]) with mapi id 15.20.5227.023; Tue, 10 May 2022 13:43:03 +0000 From: "Willgerodt, Felix" To: Eli Zaretskii CC: "Metzger, Markus T" , "gdb-patches@sourceware.org" Subject: RE: [PATCH v4 10/10] btrace: Extend ptwrite event decoding. Thread-Topic: [PATCH v4 10/10] btrace: Extend ptwrite event decoding. Thread-Index: AQHYYT5IALs6pF7ns0uVwUxABM59v60RwIT+gAX7B7A= Date: Tue, 10 May 2022 13:43:02 +0000 Message-ID: References: <20220506114010.134106-1-felix.willgerodt@intel.com> <20220506114010.134106-10-felix.willgerodt@intel.com> <837d6y27g6.fsf@gnu.org> In-Reply-To: <837d6y27g6.fsf@gnu.org> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-version: 11.6.401.20 dlp-reaction: no-action x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: dfb1ea52-238b-49db-20bb-08da328b0141 x-ms-traffictypediagnostic: BN7PR11MB2657:EE_ x-microsoft-antispam-prvs: x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: wchgU3Wncsk+R9eLPNd9JzJVvyA5To1BgdKIMEAfBKRh2uhL8YF8K8zrYoOina5XbgxPUNMhoz2Ym0FAgx84HyBzYNMyTG2ifcCKpSVf4sTy5FSs0GWHf03kjxYlMRzChqIo0BRCYYrDNmzk+looQ0gUhdvYRN/YbXciLZoYTMsQyq/4hz0QcoBEN1NV08aoRHcxyw1uwiNj4WbrZggsKVNjPbByNDeYW6mLwq/ufdycs+HBvGynn/nWSPst47akgW9EA1iKCDaeYxNi6WqXSeN0EJv32DRqJq6FasNqtbByaA5S/FzLolyFgvkakytQmN6AjdEEfhAZefW+nuaPnoE1bMpWpPPi0jsfA69OhqBxDnpKuJFjOga6Ic8FeV3GKKBdSeL7+lBuIWDr9eyer6vrMh/0JsbQCmYuaBhfCX+/jL7JNfMzcF5CsUaNJ1+N+3I63iny/zvds5cHnUE8WtQg7jXwFIGKX/skWEXEk70zM9+KtDfnXriSN9QSKWtFGQCr+FdzddWGgAg4dlB5w0Z/Fu4GL9znEwkB22YIXNPLkwaNsf9PGSI7BXeUcKwmGIRJx76Z6tI0qdBgVopcw5Q8mChx+WBOgI4ZXPbDCGHV41W1Xp7e8nbWl2DnZ4M+HqKn8W22FgUI2yMgcd67Iz2cguh/+aJC7nXZ68zsiN0450hi7PhLs28iXobUJOmsCIkWikHcLdxpFE+iaLBN7g== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MN2PR11MB4566.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230001)(366004)(53546011)(4326008)(9686003)(122000001)(186003)(6506007)(26005)(38100700002)(54906003)(316002)(86362001)(5660300002)(38070700005)(52536014)(71200400001)(8936002)(55016003)(2906002)(33656002)(76116006)(66556008)(66476007)(66946007)(66446008)(64756008)(6916009)(83380400001)(82960400001)(7696005)(508600001)(8676002); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?d0tQeEtFTHlVVklKeXdyMUVZTkcrYm5HOGpGNEtBbGY1dWliL2YzbVZDZ1Nw?= =?utf-8?B?SVVIOC84OGYwN1pGaUFMMmxyL2RLdjBIRUdUYktuRjRNNFNQVnFob0lpbm13?= =?utf-8?B?K0lLUU9Ka2pQWG80ZUllN2Zha09tcEt3aHVGdkVZK2Z1Y2FHNHZmb2czbjd6?= =?utf-8?B?VWQva2hYVDR4Z0hmWUlWQm8xeE1UUGdKR2lYNUpoRjNrN0FJNnE5QnpNY3dG?= =?utf-8?B?aGVHanM4UUpRNnh0MDN5K25SaEZRbTNIVitmTEt4WU1QMjh5Y3dMOWJGWUFz?= =?utf-8?B?aFJtVkl2Zm1KYmUxTUlNSXdSOFliMXhac0tCKzFHSEh1VVR4eitzQ1oxRUkx?= =?utf-8?B?ZEVLSkJjR1I0bCt0ZzUvL0QrdHhlZmhmWVNjbVBEUGZoVmQwb0p1VnhnUjYy?= =?utf-8?B?R2tNV0pxRUZOSmh6cWpXSHAzOWc1Y04rNkN4OXdQRlpZNmhPK3RUb3lmMHMy?= =?utf-8?B?bFlTV1I5M0lZOFcvRWpjVVVsYWY0Y28xS252WFpDNE9OYmpWWjhxcXBGWlRO?= =?utf-8?B?TE9lcHlNYUR1T08yUE1GZzU5b0JocDR1MlFLMXplVE9rbjhaanQ2dkIrQk9J?= =?utf-8?B?Nk1aOXRpcDgwMTN6R0N5Z2xmdkU0cFllN3ZnQThGVUY5Wk1JOHlScXUxb3Ns?= =?utf-8?B?THRieUE5bm5lREdkK25wVDhwT0xPVjhrTC9HMWtDZFpubWs4YnJ0RHlyOWNH?= =?utf-8?B?OVA4d2daK1U0NjJVak9RRWoxNzBUcEZQQ2FIeENjVVZFTVNEbUJ5bHZmQm44?= =?utf-8?B?RDNBTGtTeldwdytjUGhYN1hPREQxbWV1QjJ0dExBVmlGVUZzT21aaldmU0h1?= =?utf-8?B?TG1aYnhGdkZOSTlsb0FHdkF4em5GTERRei9xbVhEWEpKQ3UrSlpPRFlXMm5R?= =?utf-8?B?cWJVZjBSeHRNbFpjZnZKcXhvV3hpaVdseGo0dGFvMW1rdWNUMWdYVTBSaHo2?= =?utf-8?B?bm5RVDdGTXBQR1NnTEdWQUtDQmdIZHlZQmRKM0xHQlg2MkcvYytBTllWcjhh?= =?utf-8?B?Zi9sbVNhOXFzellrMmtqMVNKSktjOTRMaTVQejI1N1RJWWZnSVQxMVBENE42?= =?utf-8?B?RGxqNVBPcHBOZVFaeXphUUU2Wi96aWNyR0U4b3dhWHdnaUxoMC9Kc2kvREtp?= =?utf-8?B?RTZlRU5rNWRwZm81ZkdWRE5FS2NQYnVxWGlYKzRGZXhrbGNGb2xNLzM0ZHRP?= =?utf-8?B?SGhZYVMrWDNvT250bzI1U2d5cmdvSW1xT2owajB5Z2F4VzFvWXRGbi9VZWto?= =?utf-8?B?MGdwT3NxQ0dQVDBCeUlTczRaTVMwWjdXanI3TSt6d0hGWDZyTjFxVU53MitL?= =?utf-8?B?K2VxRUs1MXlVaGxIUWVmTTlKYStURlcvZXFLajc3MWtzODlQdU1saWxOZ2F2?= =?utf-8?B?U2JMSFZqRGZwZ1hkenEwUUl2T3R3TjFFVEpwTWN4NXIrR0UyelRuWlRrdDYx?= =?utf-8?B?ZWQwQ290YkRwTCt6UGtQMXNyVXA3ajZhN2ZhY0VNN3oxTlowVjRZZzRGVVVQ?= =?utf-8?B?UmoyQmRYMEZKQVpCZnVISk5HNUFzTERxQnYrK05xUUNhekV3N2xhMm5meDhU?= =?utf-8?B?UG4yVWN2a05LWUZtRjlrdmNmM0oxRlZ0aGJNKzljYktYY0I4THpkTlUxdk53?= =?utf-8?B?dHhNWlY5Ni9qQlcxQm5MQlorR29VWDRkcFZheEJuOHVIenV2NVZMZlM4THBs?= =?utf-8?B?c2RLVjdESjFNbWlNcU9EZ2ovL0RWbUpJRi9STUFiS0ZZejF4cVR3ZGhDZTlJ?= =?utf-8?B?Rm5tOFF4T1owYmJYS3VBSUF3VmRPY1dqTlJpWlF3c0pNZFlieVU1WmsrVWY3?= =?utf-8?B?WTNjLzg5bXZFbi9rRTFnQkhrTUZUZ1dONDNsRkVockpIME1qMjc4cXlZQlBx?= =?utf-8?B?OVdGb0lyalNsMlJNTDNXUmJMc0dxS1NlWGFvL1l3ZExYVXNGL00xa1IxME9O?= =?utf-8?B?NktIb2NWUm1MYW05SFBOZnp5aHVSZzBGdzhadzV2TVBhcW0vVmNUUGF0UXFC?= =?utf-8?B?aU5PeE1iaTZlNjFlc0oxU0xCTnBmZnZuSmlmWU4wdlE0RG9KQkM5eFN4TGdU?= =?utf-8?B?cEdlMWFmS1ZNU2VYTy9kUHJkcTJVMGFqdERzbkZTWm5zSDcyTFBuTlNxRVhX?= =?utf-8?B?cisycFRiU0FKek1xVkhUeGl6U3R5SG5kZW5SQUVZOUd6VXczTFVVUEZZZ3Zh?= =?utf-8?B?eThSSXRYWVYzaENFWEplU1UzOXhqNkNzbTk1QjNlNzNSTHlzY2dsVkp3Rnla?= =?utf-8?B?bSszbmtEaTlnY1pBVkNDTnYrbU5ybktwWkVqZTFOR1lPV1AxMDNSSzVuZW1P?= =?utf-8?B?OWZPUVljNmZVSHJHTGZDeERwUjR5b3RtMG1Qd1IxZ3NTNFZwTmIrcDNlbzJr?= =?utf-8?Q?51O3wH6HIHaGI2S0=3D?= Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MN2PR11MB4566.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: dfb1ea52-238b-49db-20bb-08da328b0141 X-MS-Exchange-CrossTenant-originalarrivaltime: 10 May 2022 13:43:02.8609 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 6IV4aflSriv33jHYMY1iygLdv4xMvYnWp4sM0Zzadw7yJY6fehlidPD1Vxj+fS0M1pno+QDUWOnv0lwO0pjUUzj/E212IT8edmHhkARPnRA= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN7PR11MB2657 X-OriginatorOrg: intel.com Content-Transfer-Encoding: base64 X-Spam-Status: No, score=-11.4 required=5.0 tests=BAYES_00, DKIMWL_WL_HIGH, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, SPF_HELO_PASS, SPF_NONE, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 10 May 2022 13:43:08 -0000 PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBFbGkgWmFyZXRza2lpIDxlbGl6 QGdudS5vcmc+DQo+IFNlbnQ6IEZyZWl0YWcsIDYuIE1haSAyMDIyIDE0OjA0DQo+IFRvOiBXaWxs Z2Vyb2R0LCBGZWxpeCA8ZmVsaXgud2lsbGdlcm9kdEBpbnRlbC5jb20+DQo+IENjOiBNZXR6Z2Vy LCBNYXJrdXMgVCA8bWFya3VzLnQubWV0emdlckBpbnRlbC5jb20+OyBnZGItDQo+IHBhdGNoZXNA c291cmNld2FyZS5vcmcNCj4gU3ViamVjdDogUmU6IFtQQVRDSCB2NCAxMC8xMF0gYnRyYWNlOiBF eHRlbmQgcHR3cml0ZSBldmVudCBkZWNvZGluZy4NCj4gDQo+ID4gRGF0ZTogRnJpLCAgNiBNYXkg MjAyMiAxMzo0MDoxMCArMDIwMA0KPiA+IEZyb206IEZlbGl4IFdpbGxnZXJvZHQgdmlhIEdkYi1w YXRjaGVzIDxnZGItcGF0Y2hlc0Bzb3VyY2V3YXJlLm9yZz4NCj4gPg0KPiA+IGRpZmYgLS1naXQg YS9nZGIvTkVXUyBiL2dkYi9ORVdTDQo+ID4gaW5kZXggYTcyZmVlODE1NTAuLmNmODA3ZDYyMDll IDEwMDY0NA0KPiA+IC0tLSBhL2dkYi9ORVdTDQo+ID4gKysrIGIvZ2RiL05FV1MNCj4gPiBAQCAt MzMxLDYgKzMzMSwxMiBAQCBHTlUvTGludXgvT3BlblJJU0MJCW9yMWsqLSotDQo+IGxpbnV4Kg0K PiA+DQo+ID4gICoqKiBDaGFuZ2VzIGluIEdEQiAxMQ0KPiA+DQo+ID4gKyogR0RCIG5vdyBzdXBw b3J0cyBwcmludGluZyBvZiBwdHdyaXRlIHBheWxvYWRzIGZyb20gdGhlIEludGVsIFByb2Nlc3Nv cg0KPiA+ICsgIFRyYWNlIGR1cmluZyAncmVjb3JkIGluc3RydWN0aW9uLWhpc3RvcnknLCAncmVj b3JkIGZ1bmN0aW9uLWNhbGwtaGlzdG9yeScsDQo+ID4gKyAgYWxsIHN0ZXBwaW5nIGNvbW1hbmRz IGFuZCBpbiAgUHl0aG9uLiAgUHJpbnRpbmcgaXMgY3VzdG9taXphYmxlIHZpYSBhDQo+ID4gKyAg cHR3cml0ZSBsaXN0ZW5lciBmdW5jdGlvbiBpbiAgUHl0aG9uLiAgQnkgZGVmYXVsdCwgdGhlIHJh dyBwdHdyaXRlDQo+ID4gKyAgcGF5bG9hZCBpcyBwcmludGVkIGZvciBlYWNoIHB0d3JpdGUgdGhh dCBpcyBlbmNvdW50ZXJlZC4NCj4gPiArDQo+IA0KPiBUaGlzIHBhcnQgaXMgT0suDQo+IA0KPiA+ ICtAZXhkZW50IEB2YWx1ZXtHREJOfSBvdXRwdXQgYWZ0ZXIgcmVjb3JkaW5nIHRoZSBzYW1wbGUg cHJvZ3JhbSBpbiBwdA0KPiBmb3JtYXQ6DQo+ID4gK0BzbWFsbGV4YW1wbGUNCj4gPiArQGdyb3Vw DQo+ID4gKyhnZGIpIHJlY29yZCBpbnN0cnVjdGlvbi1oaXN0b3J5IDEyLDE0DQo+ID4gKzEyICAg ICAgICAgMHgwMDAwMDAwMDAwNDAwNzRjIDxwdHdyaXRlNjQrMTY+OglwdHdyaXRlICVyYngNCj4g PiArMTMgICAgICAgICBbNDJdDQo+ID4gKzE0ICAgICAgICAgMHgwMDAwMDAwMDAwNDAwNzUxIDxw dHdyaXRlNjQrMjE+Ogltb3YgICAgLQ0KPiAweDgoJXJicCksJXJieA0KPiANCj4gVGhlIGxhc3Qg bGluZSBpcyB0b28gbG9uZywgYW5kIHdpbGwgY2F1c2Ugb3ZlcmZ1bGwgaGJveCBlcnJvcnMgd2hl bg0KPiBwcm9kdWNpbmcgdGhlIHByaW50ZWQgbWFudWFsLiAgUGxlYXNlIG1ha2UgaXQgc2hvcnRl ciwgb3IgYnJlYWsgaW50byAyDQo+IGxpbmVzLg0KPg0KDQpJIG1hZGUgaXQgc2hvcnRlci4gSXMg dGhlcmUgYW55IGVhc3kgd2F5IHRvIGZpZ3VyZSB0aGlzIG91dD8gSSBkb24ndCBrbm93IHdoYXQN CklzIHNob3J0IGVub3VnaCBhbmQgSSBjb3VsZG4ndCBzZWUgYW55ICAiT3ZlcmZ1bGwgXGhib3gi IG1lc3NhZ2UgZm9yDQpweXRob24udGV4aSBpbiBnZGIubG9nIG9yIGluIHRoZSBvdXRwdXQgZm9y ICJtYWtlIHBkZiIuDQoNCg0KPiA+ICtAZmluZGV4IGdkYi5wdHdyaXRlLnJlZ2lzdGVyX2xpc3Rl bmVyDQo+ID4gK0BkZWZ1biByZWdpc3Rlcl9saXN0ZW5lciAoQHZhcntsaXN0ZW5lcn0pDQo+IA0K PiBAZGVmdW4gYXV0b21hdGljYWxseSBpbnNlcnRzIHRoZSBmdW5jdGlvbiBpbnRvIHRoZSBpbmRl eCwgc28gbm8gbmVlZA0KPiBmb3IgYSBzZXBhcmF0ZSBAZmluZGV4IChoZXJlIGFuZCBlbHNld2hl cmUgaW4gdGhlIHBhdGNoKS4NCj4gDQo+ID4gK1VzZWQgdG8gcmVnaXN0ZXIgdGhlIHB0d3JpdGUg bGlzdGVuZXIuICBUaGUgbGlzdGVuZXIgY2FuIGJlIGFueSBjYWxsYWJsZQ0KPiA+ICtvYmplY3Qg dGhhdCBhY2NlcHRzIHR3byBhcmd1bWVudHMuDQo+IA0KPiBJIHRoaW5rIHdlIHNob3VsZCBkZXNj cmliZSB0aG9zZSAyIGFyZ3VtZW50cywgYXQgbGVhc3Qgc2hvcnRseS4NCg0KV2lsbCBiZSBkb25l IGluIHRoZSBuZXh0IHJldmlzaW9uLg0KDQoNCj4gPiArQGRlZnVuIGRlZmF1bHRfbGlzdGVuZXIg KEB2YXJ7cGF5bG9hZH0sIEB2YXJ7aXB9KQ0KPiA+ICtUaGUgbGlzdGVuZXIgZnVuY3Rpb24gYWN0 aXZlIGJ5IGRlZmF1bHQuDQo+IA0KPiBXaGljaCBkb2VzIHdoYXQ/ICBJZiB3ZSBkb24ndCBzYXkg YW55dGhpbmcgYWJvdXQgdGhlIGRlZmF1bHQgYmVoYXZpb3IsDQo+IGhvdyBjYW4gYSB1c2VyIGRl Y2lkZSB3aGV0aGVyIHRvIHByb3ZpZGUgaGlzL2hlciBzcGVjaWFsaXplZCBsaXN0ZW5lcj8NCj4N Cg0KR29vZCBwb2ludC4gSSB3aWxsIGRlc2NyaWJlIGl0IGluIG15IG5leHQgcmV2aXNpb24uDQog DQoNCj4gPiArQHNtYWxsZXhhbXBsZQ0KPiA+ICtAZ3JvdXANCj4gPiArKGdkYikgcHl0aG9uLWlu dGVyYWN0aXZlDQo+ID4gKz4+PiBjbGFzcyBteV9saXN0ZW5lcihvYmplY3QpOg0KPiA+ICsuLi4g ICAgZGVmIF9faW5pdF9fKHNlbGYpOg0KPiA+ICsuLi4gICAgICAgIHNlbGYudmFyID0gMA0KPiA+ ICsuLi4gICAgZGVmIF9fY2FsbF9fKHNlbGYsIHBheWxvYWQsIGlwKToNCj4gPiArLi4uICAgICAg ICBpZiBnZGIuc2VsZWN0ZWRfdGhyZWFkKCkuZ2xvYmFsX251bSA9PSAxOg0KPiA+ICsuLi4gICAg ICAgICAgICBzZWxmLnZhciArPSAxDQo+ID4gKy4uLiAgICAgICAgICAgIHJldHVybiAiY291bnRl cjogQHtAfSwgaXA6IEB7OiN4QH0iLmZvcm1hdChzZWxmLnZhciwgaXApDQo+IA0KPiBUaGlzIGxh c3QgbGluZSBpcyB0b28gbG9uZy4NCj4NCg0KV2lsbCBiZSBzaG9ydGVuZWQgYXMgd2VsbC4NCg0K DQo+IChBbmQgSSB3b25kZXIgd2hldGhlciB0aGlzIGV4YW1wbGUgcmVhbGx5IGFkZHMgc29tZXRo aW5nIG9mIHZhbHVlIHRvDQo+IHdoYXQgeW91IGFscmVhZHkgZGVzY3JpYmVkIGFib3ZlLikNCg0K SXQgaXMgc3VwcG9zZWQgdG8gc2hvdyBob3cgdG8gdXNlIGl0IG9uIGEgcGVyLXRocmVhZCBiYXNp cy4gSSBwZXJzb25hbGx5DQp0aGluayB0aGUgdGV4dCBpcyBnaXZpbmcgZW5vdWdoIGhpbnRzIHdp dGhvdXQgdGhlIGV4YW1wbGUgYW5kIHdvdWxkIGJlDQpmaW5lIHRvIHJlbW92ZSBpdC4gWWV0IGl0 IHdhcyBjcmVhdGVkIGFmdGVyIGEgY29tbWVudCBmcm9tIE1hcmt1cywgYnV0DQpJIGFtIG5vdCBz dXJlIGlmIHRoaXMgaW4gaXRzIGN1cnJlbnQgc3RhdGUgc3RpbGwgbWF0Y2hlcyBoaXMgb3JpZ2lu YWwgcHJvcG9zYWwuDQoNCg0KPiA+ICtAZ3JvdXANCj4gPiArKGdkYikgaW5mbyB0aHJlYWRzDQo+ ID4gKyogMSAgICBUaHJlYWQgMHg3ZmZmZjdmZDg3NDAgKExXUCAyNTc5NikgInB0d3JpdGVfdGhy ZWFkcyIgdGFzayAoYXJnPTB4MCkNCj4gPiArICAgIGF0IGJpbi9wdHdyaXRlL3B0d3JpdGVfdGhy ZWFkcy5jOjQ1DQo+ID4gKyAgMiAgICBUaHJlYWQgMHg3ZmZmZjZlYjg3MDAgKExXUCAyNTc5Nykg InB0d3JpdGVfdGhyZWFkcyIgdGFzayAoYXJnPTB4MCkNCj4gPiArICAgIGF0IGJpbi9wdHdyaXRl L3B0d3JpdGVfdGhyZWFkcy5jOjQ1DQo+IA0KPiBUaGVzZSBsaW5lcyBhcmUgYWxzbyB0b28gbG9u Zy4NCj4NCg0KV2lsbCBiZSBzaG9ydGVuZWQgYXMgd2VsbC4NCg0KPiA+ICtUaGlzIEB2YWx1ZXtH REJOfSBmZWF0dXJlIGlzIGRlcGVuZGVudCBvbiBoYXJkd2FyZSBhbmQgb3BlcmF0aW5nDQo+IHN5 c3RlbQ0KPiA+ICtzdXBwb3J0IGFuZCByZXF1aXJlcyB0aGUgSW50ZWwgUHJvY2Vzc29yIFRyYWNl IGRlY29kZXIgbGlicmFyeSBpbiB2ZXJzaW9uDQo+ID4gKzIuMC4wIG9yIG5ld2VyLg0KPiANCj4g WW91IHNheSAiaGFyZHdhcmUgYW5kIG9wZXJhdGluZyBzeXN0ZW0gc3VwcG9ydCIsIGJ1dCBzYXkg bm90aGluZyBhYm91dA0KPiB0aGUgT1NlcyBvbiB3aGljaCB0aGlzIGNhbiBiZSBzdXBwb3J0ZWQu DQo+DQoNCkFueSBPUyBjYW4gY2hvb3NlIHRvIHN1cHBvcnQgaXQgYXQgc29tZSBwb2ludC4gUmln aHQgbm93IGl0IGlzIExpbnV4IG9ubHkgYWZhaWsuDQpCdXQgZG8gd2Ugd2FudCB0byBzYXkgdGhh dD8gSXQgbWlnaHQgYmUgb3V0LWRhdGVkIGF0IHNvbWUgcG9pbnQuDQoNClRoYW5rcywNCkZlbGl4 DQpJbnRlbCBEZXV0c2NobGFuZCBHbWJIClJlZ2lzdGVyZWQgQWRkcmVzczogQW0gQ2FtcGVvbiAx MCwgODU1NzkgTmV1YmliZXJnLCBHZXJtYW55ClRlbDogKzQ5IDg5IDk5IDg4NTMtMCwgd3d3Lmlu dGVsLmRlIDxodHRwOi8vd3d3LmludGVsLmRlPgpNYW5hZ2luZyBEaXJlY3RvcnM6IENocmlzdGlu IEVpc2Vuc2NobWlkLCBTaGFyb24gSGVjaywgVGlmZmFueSBEb29uIFNpbHZhICAKQ2hhaXJwZXJz b24gb2YgdGhlIFN1cGVydmlzb3J5IEJvYXJkOiBOaWNvbGUgTGF1ClJlZ2lzdGVyZWQgT2ZmaWNl OiBNdW5pY2gKQ29tbWVyY2lhbCBSZWdpc3RlcjogQW10c2dlcmljaHQgTXVlbmNoZW4gSFJCIDE4 NjkyOAo=