From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by sourceware.org (Postfix) with ESMTPS id DDE5A3858D20 for ; Wed, 5 Apr 2023 10:20:43 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org DDE5A3858D20 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=intel.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1680690043; x=1712226043; h=from:to:cc:subject:date:message-id:references: in-reply-to:mime-version:content-transfer-encoding; bh=DDq3X60u9tq3kmF4z5vrD1Ftszra+DEJlZ/oQUfmMio=; b=k686+bsUUxG+7Fl4u0tz8bdAE2db7gyL0x7wi1tk9bjVeXXAWTMU+3+e ye+w7fxz5rFd1H3aD3Vo0UAap8DP5z/VF0bzfmXNYkBavl7IgQI/NZZBy f8RV9kjvmZb5XfqnXtf2T/ErgarlE3ogur4nIr/VlcLpyicoDrAm7SW/g h/Y7oKx0S7+rX850Xoqiw+IFAzZPcH0wf8r9Z0GhxgxIsnai3NXgb+1D0 73ceQ7KDjS2iI7pRCVq2Zt4fYdYZ/oCqL+cY2gcyx+EtDOmmym0U16EHM 78BFCN7kzNv6+Nt8pU28eHHoxrWlg+BE4cVsfEcRfKVxd2F7u5qdsHlRb A==; X-IronPort-AV: E=McAfee;i="6600,9927,10670"; a="331016774" X-IronPort-AV: E=Sophos;i="5.98,319,1673942400"; d="scan'208";a="331016774" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 Apr 2023 03:20:42 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10670"; a="830317035" X-IronPort-AV: E=Sophos;i="5.98,319,1673942400"; d="scan'208";a="830317035" Received: from orsmsx602.amr.corp.intel.com ([10.22.229.15]) by fmsmga001.fm.intel.com with ESMTP; 05 Apr 2023 03:20:39 -0700 Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) by ORSMSX602.amr.corp.intel.com (10.22.229.15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.21; Wed, 5 Apr 2023 03:20:38 -0700 Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) by ORSMSX610.amr.corp.intel.com (10.22.229.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.21; Wed, 5 Apr 2023 03:20:38 -0700 Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) by orsmsx610.amr.corp.intel.com (10.22.229.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.21 via Frontend Transport; Wed, 5 Apr 2023 03:20:38 -0700 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (104.47.56.174) by edgegateway.intel.com (134.134.137.103) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.21; Wed, 5 Apr 2023 03:20:38 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=QWpa+FopKqbzclo4xXINk0f7ZAxtmzxqo5gk+ykCO+XqEyjHHiSY30P7nv+ITJNutUDjbwvtQilHRhVe2qByNMfbaX8AcQQoeKIAmz7O3VXvbxsE6IMjhlJxMugOFtN3dewSHKvL7GFJ3y1N8FPMfe0fDYJ7+pzbDdYYqCNN9OhzGthfNSoEbmYvadx50KdM/5+69/GgKT4c1970EkYzLkM8C84okaNJ0XlQBxIB1eTmMOst+Ax+jp78AynRqBCA5HkZ9F6eQQOMRVO9xl1riuHAyS0b8CR6BsFlvWPsbviiWCKfRHHfor6KSAJ++IMYRngKruj84kEvCF14oE9Gqg== 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=wUHfjVGQ1zao9/hnSU/LQnZqNciwPM2QWcro337hGMs=; b=D7adMrtfnJLSeRl5PuY+2TAoxMlFZiR4s7bfXrljFFNOcRfwe7AuqfAI9wB3wkmNq1Fm7BgmuSdfGX+k7+LGMOWKqOtNOue7D99N3YjamkmVc/KH03fLmjZ6IONptvMVg2wW0ClvSJXYIeiWQOlzcYzYqaxR1bx4BzVyOk1HOxu/9PMfePJhP1Afja+5B5n6WWbs8be/1wvft21LJ7X9S+TgQrxodBhxDQPsKGnxEsvxq+legqwLmpsN9pP+hCaoGeG5X9BBPobPFh9gAEM4PGtPatywP++FCVcFFcyh0pksSpgtShXuzudUvgrcVxka1rkfoGxIsZjDopzLND1uYA== 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 MN0PR11MB6278.namprd11.prod.outlook.com (2603:10b6:208:3c2::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6254.35; Wed, 5 Apr 2023 10:20:36 +0000 Received: from MN2PR11MB4566.namprd11.prod.outlook.com ([fe80::4183:b193:7a77:3af2]) by MN2PR11MB4566.namprd11.prod.outlook.com ([fe80::4183:b193:7a77:3af2%4]) with mapi id 15.20.6254.035; Wed, 5 Apr 2023 10:20:36 +0000 From: "Willgerodt, Felix" To: Simon Marchi , "gdb-patches@sourceware.org" CC: "Metzger, Markus T" Subject: RE: [PATCH v8 09/10] btrace, python: Enable ptwrite filter registration. Thread-Topic: [PATCH v8 09/10] btrace, python: Enable ptwrite filter registration. Thread-Index: AQHZXAx57drYN+SYxkSs1o5oHay8hq8KEQEAgASDlJCAC42hgIABFfcggAAdwYCAAT6kgA== Date: Wed, 5 Apr 2023 10:20:35 +0000 Message-ID: References: <20230321154626.448816-1-felix.willgerodt@intel.com> <20230321154626.448816-10-felix.willgerodt@intel.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: MN2PR11MB4566:EE_|MN0PR11MB6278:EE_ x-ms-office365-filtering-correlation-id: b582d3d2-1611-479f-26e0-08db35bf653f x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: hKH0VUC4ylat/dFstB50S2REoosRAqtLvgmG+CabQQyT0bMf/njX/KyC1Kgpw0s28bKOwpX4FLC6qOMhLH2aIFQhxYrbX6vcWUsuQLk+MsGKdLj1ENMPL/OyCXWvdCWS1TXM53aHlY3eF06lRhovvfcyn4Yh1EOSrx0nD7FfEnuFzltG4otlpXx18w9ep1DNUBw55KrC3Z6gq8JsQKuAT0mtx43kpyRXibg1qPHVSSxbU9y0FguaQmnyzc+EarZWO8QigAz3NulP+h7Gehg0K+MbhP0fSJTogukYE/iILA7Wc+YwXoKt0zfWwlUfpTXgLPmBS92Uh7JcFRpvPv4zTbwTlfgcvcWVAzbpVlKKYrjp/hz33nhttegqGQMqjPxQ/lkx9qyUgs66HYGVw3XzlUoP1I6WQ/yFfuyolLtqZwjehOlWQInq8akEOd9F7PixNWCrUDv0jLiBKOKJRipP1B3lhlaxmAfSpmLsiUB1OZcs3d7vhn/4PYR3tuQf9sJGzThWiBThFjThpAlGe2YB1uhNeva4EA7/6S7zG1L+WHX5VrqhAGnxiFgk+OQ3o2u2M3RnZm0fZjDckfMQ7plUIWdNTaFDYRLO345vsC9LLsRGpd/kboBUzS8TBiSTo3tH 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:(13230028)(366004)(39860400002)(346002)(396003)(376002)(136003)(451199021)(33656002)(83380400001)(64756008)(71200400001)(186003)(7696005)(107886003)(316002)(478600001)(110136005)(26005)(2906002)(53546011)(9686003)(6506007)(5660300002)(122000001)(38100700002)(38070700005)(66556008)(41300700001)(66446008)(76116006)(8676002)(66476007)(86362001)(4326008)(66946007)(8936002)(82960400001)(52536014)(55016003);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?VzJPUkNPeGFHSHFjN3ptNlAxTjh3WWpVd0VUS09FOE9lSllHSlpaTllzUm9h?= =?utf-8?B?aTd5QkZ2a2FZN0phUE5uWTZXa2QrdFVScS84d0ZZM2FJOTNzR1BNZjFnUUdp?= =?utf-8?B?MlpOOVFGa0xNN21GSkU1bVFpenBlUGJlQmVJSXN3eGRlejA5VWZONmdiSDl3?= =?utf-8?B?RjN4V1FPOWVaTlBmT3gyTTVVKzhBeThRUDJEeVhYT0tyYlFhMktRblord0I0?= =?utf-8?B?WTNlWmd6aDkzb1cvTkVxcHZXRkc2SHMrd1lBbFJXbHpXOGxzSU8wWmd0cmpy?= =?utf-8?B?bG9yR2FIQ0twZ2ZCUkdmMXZZaDV0b1VlR0VPTmZIdFNSNFdsQmIvUG4rSXVs?= =?utf-8?B?RlZucnFpRnJKbU9zbG1sUkVCbWNIdjFEam05Q0pzeWlhTHJVaVUydHhGTkxJ?= =?utf-8?B?MEJUZTI3dVo5bmlDMGRidnkyV1h1TU55a0UxZ284c2V0SXh5TXYxSDIzRkIv?= =?utf-8?B?WGpscDZpYXV2SmZrcDdIdm14SGdSY2ZCZURPZVlGbFpPYmtvMTI5eG1ZV3d1?= =?utf-8?B?cWh4MFFxZ0pmb3VqQ3IzQWN3TzhQcXZkSEhnTGpoN250U2lKVTE5NnNBT1VB?= =?utf-8?B?c0szK1kyM2xUT3dUZ1BtMEJxNHBLS28zaXVmOGhOTnpqVjZVcGRwS3lHMVow?= =?utf-8?B?WUdPWllIbGxKYzlyMU9obDRUYlFVc09SVDZxSmsrdmwybjUveXhiSDhSZEhZ?= =?utf-8?B?QjhYNmlxdGZxTEdXVFo0MkdvV2hFdEhoVE1kOHJSTW10TUllQWtkdklDZDBF?= =?utf-8?B?bjd0SXBxUi9GMThpQ1BWaXBoR3RKbmF1cERtSEhhVHV3V0phVldPZzhBVDQ4?= =?utf-8?B?TWFwU1dWRS94UklDdU5ObHdGeXhVMTFqV1NUbVRlNTJOYlhFK3hNdTBuY0dJ?= =?utf-8?B?eUc3UGtmQXZlTGNlelBIdnUzc01xYThMUjdKY1NzczRLWG5IZ3ZERVFJREVx?= =?utf-8?B?OWE4OEY2TDh3TXdkcmNyODR0bmlMSlBFYWtUTWJFalZCaEY1ZGdsYTFCeWQx?= =?utf-8?B?N3VMb0NzTWkwVGI4d3dZcHRBcUFXUlJPR1BLNFlOb3VFd0d1cmt0V1A3Y1dn?= =?utf-8?B?alBSRTVtYTNaZVlteGRlWlQySEgvaGtmd3BJVmZhMG5iNHlYU0EyTGVud0Va?= =?utf-8?B?d2tVT1p3VHBkdmhnZ0ZoV3UzSlM0QjBGODFzRC8yM1A2RDN4M2FYUG5RQ1Ft?= =?utf-8?B?c0hXL1lpVkdsQTAxM0JrekpUZ2JWTC8rYzQ1UUJzYnVjSHowSzRFYy80cWFj?= =?utf-8?B?Y01LaEhwV0NEZjI4elpNNkhheVFBeVJyelJweG9pa1c3NHZXK0lISnFOR04w?= =?utf-8?B?L0dpWXVZeTdtTlppOW5sdHZHR0ZXMHlKYnNWbVFKMFMxREpTbm54TUkwYk5O?= =?utf-8?B?VlZCTDhjbnNPOTF1dzFsMXp6eUJSUUQ0YVR2QnQ5cUVKNDZ3NGJDSEtvditW?= =?utf-8?B?VFRmdEY5MGNIWXJhZ09KN1l0b0xhQ0d6aElBV3J5WmFYS1VjUDk2a2FISVBV?= =?utf-8?B?RVUwUXA0K3BXVC9yK0tyZFk0UUU2R0ZUdUxJTklHYWpTYTArYnFnaitpQlQ2?= =?utf-8?B?Y1FOZ1hkL0ZmL2FXbVBkdW5uS2ZkemduUE9uV2pXbldUV1Rja0FCQlBBQlA2?= =?utf-8?B?T1VIeFlTNy9RcmpaWXFXRW9XRmFSaGZvcVo2OEdEcGRBeWtuczhobzYzNXpQ?= =?utf-8?B?cHl2Q1I1RE1LelZvWXdGakFTUzlqMzJpelJ5bXM0YlJtZHRhWGd4QUtxbHk0?= =?utf-8?B?MTlPYUNoZ1pyZWlsNzY2YnR3Zk5CeStaV0M0WUM4Q3RjRlZSMkVmVDIzOVdO?= =?utf-8?B?dktzVVlCQ0hmRDBmSlZibURyZTFhWldPOVFEelJXMWpUV3huZEhDOEFBRWdh?= =?utf-8?B?MjA4UDQvdzNUdEVJTnRMSTQ1c2piOUlybEFjbkxnMUVGTW85WTQ0YlR3Ty9W?= =?utf-8?B?Q1kxa1BKS0N6SXNzREdyalZDWEpXZ1hsdmVSa1crSDFBeTlzQzRZQW1XZ09S?= =?utf-8?B?UjRMeTdrYTArRU5Fd3RwUEdVUEplWVRVTFFlRkpYMXdtT0h2K1loOFdpT3I3?= =?utf-8?B?bXlpQUdMOWppaW5YNFVIWWZqYlRrWWdZZHpwNHp1dVJ3Ynp6L3pVY3V4NlND?= =?utf-8?B?VFNIZXRzVytiQW5yQmhVQlpiRUZpNVk2Zk5qSFRlZFZ0cy9ubFIreEZ3TlBr?= =?utf-8?B?eXc9PQ==?= 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: b582d3d2-1611-479f-26e0-08db35bf653f X-MS-Exchange-CrossTenant-originalarrivaltime: 05 Apr 2023 10:20:35.6181 (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: bxdfYsncTu3UwQspLtFXCSihxP5SAFSIHDv7LuVbmpbFOJWHyntPkHu4QT7f7f778mQJVQ0sUUocywcqOG4LsnZX+PtTQQSiV6zF0IU2Zv8= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN0PR11MB6278 X-OriginatorOrg: intel.com Content-Transfer-Encoding: base64 X-Spam-Status: No, score=-5.1 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,SPF_NONE,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogU2ltb24gTWFyY2hpIDxz aW1hcmtAc2ltYXJrLmNhPg0KPiBTZW50OiBEaWVuc3RhZywgNC4gQXByaWwgMjAyMyAxNzowNg0K PiBUbzogV2lsbGdlcm9kdCwgRmVsaXggPGZlbGl4LndpbGxnZXJvZHRAaW50ZWwuY29tPjsgZ2Ri LQ0KPiBwYXRjaGVzQHNvdXJjZXdhcmUub3JnDQo+IFN1YmplY3Q6IFJlOiBbUEFUQ0ggdjggMDkv MTBdIGJ0cmFjZSwgcHl0aG9uOiBFbmFibGUgcHR3cml0ZSBmaWx0ZXINCj4gcmVnaXN0cmF0aW9u Lg0KPiANCj4gPiBJIGFncmVlIG9uIHRoZSBkb2MgcGFydC4gSXQgd291bGQgaW5kZWVkIGJlIG5p Y2UgdG8gd3JpdGUgdGhpcyBkb3duLg0KPiA+DQo+ID4gVGhvdWdoLCBJIHRoaW5rIHlvdSBtaXN1 bmRlcnN0b29kIHNvbWUgdGhpbmdzIChvciBtYXliZSBJIGRpZCkuDQo+ID4gR2RiLmN1cnJlbnRf cmVjb3JkaW5nKCkuY2xlYXIoKSwgYXMgYWRkZWQgaW4gcGF0Y2ggNSwgZG9lcyBjbGVhciBvbiBh DQo+ID4gcGVyLXRocmVhZCBiYXNpcy4gTm90IG9uIGEgcGVyIGluZmVyaW9yIGJhc2lzIGFzIHlv dSB3cml0ZS4NCj4gPiBCdXQgbWF5YmUgeW91IG1lYW50IF9jbGVhcl90cmFjZXMoKSBoZXJlPyBU aGlzIGlzIHN1cHBvc2VkIHRvIGJlDQo+ID4gYW4gaW50ZXJuYWwgZnVuY3Rpb24sIGFzIHRoZSBs ZWFkaW5nIHVuZGVyc2NvcmUgc3VnZ2VzdHMuIEl0IGluZGVlZA0KPiA+IGRvZXMgY2xlYXIgYWxs IHJlY29yZGluZ3MgZm9yIGFsbCB0aHJlYWRzLiBBcyB0aGF0IGlzIG5lZWRlZCBmb3IgcHR3cml0 ZSwNCj4gPiB3aGljaCBpcyB0aGUgb25seSBpbnRlbmRlZCB1c2UgY2FzZSBvZiB0aGlzIGludGVy bmFsIGZ1bmN0aW9uLg0KPiA+DQo+ID4gU28gSSBkb24ndCBxdWl0ZSBzZWUgd2hhdCB3b3VsZCBi ZSB1bmV4cGVjdGVkLg0KPiBNeSBtaXN1bmRlcnN0YW5kaW5nIGNvbWVzIGZyb20gd2hlcmUgeW91 IHNhaWQ6DQo+IA0KPiANCj4gPiBOb3Qgc3VyZSBpZiBpdCBpcyB3b3J0aCBleGl0aW5nIGVhcmx5 IHBlciBpbmZlcmlvci4gSSBjb3VsZG4ndCBmaW5kDQo+ID4gYSBzY2VuYXJpbyB3aGVyZSB5b3Ug Y2FuIHNlbGVjdGl2ZWx5IHJlY29yZCAob3Igbm90IHJlY29yZCkNCj4gPiBvbmUgdGhyZWFkIG9m IGEgbXVsdGktdGhyZWFkZWQgaW5mZXJpb3IuDQo+IA0KPiBCeSAiZXhpdGluZyBlYXJseSIsIEkg dGhvdWdodCB5b3UgbWVhbnQgdGhhdCBpdCB3b3VsZCBiZSBlbm91Z2ggdG8gY2xlYXINCj4gdGhl IGRhdGEgZm9yIG9uZSB0aHJlYWQgaW4gZWFjaCBpbmZlcmlvci4NCj4gDQo+ID4+IEkgdW5kZXJz dGFuZCB0aGF0IHlvdSB3YW50IHRvIGhhdmUgb25lIGNvcHkgb2YgdGhlIGZpbHRlciBwZXIgdGhy ZWFkLg0KPiA+Pg0KPiA+PiBCdXQgZG9pbmcgYSBjb3B5IHNlZW1zIGxpa2UgYSBzdHJhbmdlIGlu c3RhbnRpYXRpb24gc3RyYXRlZ3kuICBUaGUNCj4gPj4gImdsb2JhbCIgZmlsdGVyIGlzbid0IGV2 ZXIgdXNlZCwgcmlnaHQ/ICBJdCBvbmx5IHNlcnZlcyB0byBtYWtlIGNvcGllcz8NCj4gPj4gSSB0 aGluayBhIG1vcmUgY29tbW9uIHBhdHRlcm4gd291bGQgYmUgZm9yIHRoZSB1c2VyIHRvIHJlZ2lz dGVyIGENCj4gPj4gZmFjdG9yeSBmdW5jdGlvbiAocmVhbGx5LCBueSBjYWxsYWJsZSB0aGF0IGZp dHMgdGhlIGJpbGwpIHdoaWNoIHdvdWxkIGJlDQo+ID4+IGNhbGxlZCB3aGVuZXZlciB3ZSBuZWVk IHRvIGNyZWF0ZSBhbiBpbnN0YW5jZS4NCj4gPg0KPiA+IE1obSwgSSB0aGluayB0aGF0IHdvdWxk IG1ha2UgdGhpcyBhIGJpdCB0b28gY29tcGxleCBmb3IgdXNlcnMuDQo+ID4gSSBkb24ndCB0aGlu ayB0aGV5IHdhbnQgdG8gY2FyZSBhYm91dCBwcm92aWRpbmcgYSBnZW5lcmF0b3IgYXMgd2VsbA0K PiA+IHRoYXQgcmV0dXJucyBhIGNhbGxhYmxlLiBJIGRvbid0IHNlZSBhbnkgbmV3IGZlYXR1cmUg dGhhdA0KPiA+IGlzIGJlaW5nIHVubG9ja2VkIHdpdGggdGhhdCwganVzdCBtb3JlIHRhc2tzIGZv ciB0aGUgdXNlci4NCj4gDQo+IEkgZG9uJ3QgdGhpbmsgaXQgYWRkcyBzaWduaWZpY2FudCBjb21w bGV4aXR5LCB0aGlzIGlzIHByZXR0eSB0eXBpY2FsDQo+IFB5dGhvbi4gIEl0IGlzIHNpbWlsYXIg dG8gd2hhdCB3ZSBoYXZlIGZvciB0aGUgcHJldHR5IHByaW50ZXJzLiAgWW91DQo+IHJlZ2lzdGVy IGEgZnVuY3Rpb24gdGhhdCBnZXRzIGNhbGxlZCB0byBpbnN0YW50aWF0ZSB0aGUgcmlnaHQgcHJl dHR5DQo+IHByaW50ZXIuDQo+IA0KPiBBdCB0aGUgc2ltcGxlc3QsIGl0IHdvdWxkIGJlOg0KPiAN Cj4gICBjbGFzcyBNeUZpbHRlcjoNCj4gICAgIC4uLg0KPiANCj4gICBkZWYgbWFrZV9vbmVfZmls dGVyKCk6DQo+ICAgICByZXR1cm4gTXlGaWx0ZXIoKQ0KPiANCj4gICByZWdpc3Rlcl9maWx0ZXIo bWFrZV9vbmVfZmlsdGVyKQ0KPiANCj4gb3IgZXZlbjoNCj4gDQo+ICAgY2xhc3MgTXlGaWx0ZXI6 DQo+ICAgICAuLi4NCj4gDQo+ICAgcmVnaXN0ZXJfZmlsdGVyKGxhbWJkYTogTXlGaWx0ZXIoKSkN Cj4gDQo+IEFuIGFkdmFudGFnZSBpcyB0aGF0IGl0IG1ha2VzIGl0IGVhc3kgdG8gcmV0dXJuIGEg ZGlmZmVyZW50IGZpbHRlciBwZXINCj4gdGhyZWFkLCBpZiBuZWVkZWQuICBTaW5jZSBmaWx0ZXJz IGFyZSBvbiBhIHBlci10aHJlYWQgYmFzaXMsIEkgdGhpbmsgaXQNCj4gd291bGQgZXZlbiBtYWtl IHNlbnNlIHRvIHBhc3MgdGhlIHRocmVhZCB0byB0aGUgZmFjdG9yeSBmdW5jdGlvbiwgaW4NCj4g Y2FzZSB0aGUgdXNlciB3YW50cyB0byBzZWxlY3QgYSBmaWx0ZXIgYmFzZWQgb24gdGhhdC4NCj4g DQo+IE5vdCB0aGF0IHRoZSBmYWN0IHRoYXQgZmlsdGVycyBhcmUgY2FsbGFibGUgdGhlbXNlbHZl cyBpcyBqdXN0IGEgZGVzaWduDQo+IGNob2ljZSB5b3UgbWFkZSwgeW91IGNvdWxkIHZlcnkgd2Vs bCBkZWNpZGUgdG8gY2FsbCBzb21ldGhpbmcgZWxzZSB0aGFuDQo+IF9fY2FsbF9fIG9uIHRob3Nl IG9iamVjdHMuICBJZiB5b3Ugd2FudCB0byBtYWtlIHRoaW5ncyBtb3JlIGV4cGxpY2l0LA0KPiB5 b3UgY2FuIG1ha2UgaXQgc28gZmlsdGVycyBoYXZlIHRvIGltcGxlbWVudCBhICJnZXRfYXV4X2Rh dGEiIG1ldGhvZCwNCj4gaW5zdGVhZCBvZiBfX2NhbGxfXy4gIFRoZSBhZHZhbnRhZ2Ugb2YgdXNp bmcgX19jYWxsX18gaXMganVzdCB0aGF0IGl0DQo+IGFsbG93cyBmcmVlbHkgcGFzc2luZyBmdW5j dGlvbnMgYXMgd2VsbCBhcyBvYmplY3RzIGltcGxlbWVudGluZw0KPiBfX2NhbGxfXywgc28gdGhh dCBnaXZlcyB0aGUgdXNlciBhIGJpdCBtb3JlIGZsZXhpYmlsaXR5Lg0KPiANCj4gU2ltb24NCg0K U29ycnksIEkgc3RpbGwgZG9uJ3QgdW5kZXJzdGFuZCB0aGlzIG9yIHNlZSB0aGUgYWR2YW50YWdl IG9mIHRoZQ0KZmFjdG9yeSBwYXR0ZXJuIGhlcmUuDQpBbmQgSSBvbmx5IHdhbnQgdG8gdXNlIGEg cGF0dGVybiBpZiB0aGVyZSBpcyBhIGNsZWFyIGFkdmFudGFnZSB0byBpdC4NCg0KSSBhc3N1bWUg eW91IHdhbnQgdG8gbW92ZSB0aGUgImhvdXNla2VlcGluZyIgdG8gdGhlIHVzZXIgc2lkZSwgcmln aHQ/DQpXaHkgZG8gd2UgbmVlZCBhIGZhY3RvcnkgcGF0dGVybiBmb3IgdGhhdD8NCkNhbid0IHlv dSBhY2hpZXZlIHRoZSBzYW1lIGlmIHdlIGp1c3QgaGF2ZSBvbmUgY2FsbGFibGUgZmlsdGVyIG9i amVjdA0KaW5zdGVhZCBvZiBvbmUgcGVyIHRocmVhZD8gQW5kIGhhdmUgdGhlIHVzZXIgZG8gaXQg aW4gdGhhdCBvYmplY3QsIGlmDQpoZSBuZWVkcyB0bz8gKFBlciB0aHJlYWQgZmlsdGVycyB3b3Vs ZCBzdGlsbCBhbGxvdyB0aGUgc2FtZSwgdGhvdWdoIG5vdA0KYXMgY2xlYW4sIGFzIHRoZXkgd291 bGQgaGF2ZSB0byBjYWxsIHRoZSBzaW5ndWxhciBvYmplY3QuKQ0KUGFzc2luZyB0aGUgdGhyZWFk IGNhbiBhbHNvIGJlIGRvbmUgd2l0aCB0aGUgZmlsdGVyIGZ1bmN0aW9uIGRpcmVjdGx5Lg0KQW5k IGlzIGp1c3QgYSBjb252ZW5pZW5jZSwgYXMgdGhlIEdEQiBBUEkgaXMgYXZhaWxhYmxlIHRvIHRo ZSB1c2VyLg0KKEkgYW0gbm90IHNheWluZywgaXQgaXMgYSBiYWQgY29udmVuaWVuY2UgZmVhdHVy ZS4pDQoNCkFGQUlLLCB5b3UgdXNlIGEgZmFjdG9yeSBwYXR0ZXJuIHdoZW4geW91IHdhbnQgdG8g YWJzdHJhY3Qgd2hhdA0KdHlwZSBvZiBleGFjdCBvYmplY3QgaXMgcmV0dXJuZWQuIEkgZG9uJ3Qg c2VlIHRoYXQgd2UgbmVlZCB0aGF0Lg0KQW5kIHdlIGFscmVhZHkgaGF2ZSBhIGJpdCBvZiBmcmVl ZG9tIGFueXdheSwgd2l0aCBhbGxvd2luZw0KY2FsbGFibGVzLg0KDQpJZiB5b3UgZG9uJ3QgbGlr ZSB0aGUgcGVyIHRocmVhZCBjb3B5LCB3ZSBjb3VsZCBzdGlsbCBqdXN0IG5vdCBkbyB0aGF0Lg0K QW5kIG1vdmUgdGhlIHBlci10aHJlYWQgb3IgcGVyLWluZmVyaW9yIGhvdXNla2VlcGluZyB0byB0 aGUgdXNlci4NCkkgaGFkIHRoaXMgYXQgc29tZSBwb2ludC4gVGhlIGRvY3VtZW50YXRpb24gSSB3 cm90ZSBzdGlsbCBnaXZlcyBhIHNob3J0DQpleGFtcGxlIGZvciBob3cgdG8gZG8gc29tZXRoaW5n IGZvciBvbmUgdGhyZWFkIGJ1dCBub3QgZm9yIGFub3RoZXIuDQoNCkFzIGZhciBhcyBJIHJlbWVt YmVyLCBNYXJrdXMgd2FudGVkIHBlci10aHJlYWQgc3RhdGUgaW4gYW4gZWFzaWVyIHdheQ0KdGhv dWdoLg0KDQpGZWxpeA0KDQpJbnRlbCBEZXV0c2NobGFuZCBHbWJIClJlZ2lzdGVyZWQgQWRkcmVz czogQW0gQ2FtcGVvbiAxMCwgODU1NzkgTmV1YmliZXJnLCBHZXJtYW55ClRlbDogKzQ5IDg5IDk5 IDg4NTMtMCwgd3d3LmludGVsLmRlIDxodHRwOi8vd3d3LmludGVsLmRlPgpNYW5hZ2luZyBEaXJl Y3RvcnM6IENocmlzdGluIEVpc2Vuc2NobWlkLCBTaGFyb24gSGVjaywgVGlmZmFueSBEb29uIFNp bHZhICAKQ2hhaXJwZXJzb24gb2YgdGhlIFN1cGVydmlzb3J5IEJvYXJkOiBOaWNvbGUgTGF1ClJl Z2lzdGVyZWQgT2ZmaWNlOiBNdW5pY2gKQ29tbWVyY2lhbCBSZWdpc3RlcjogQW10c2dlcmljaHQg TXVlbmNoZW4gSFJCIDE4NjkyOAo=