From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 0D0FCA0524; Mon, 27 Jul 2020 09:33:10 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 76E2F1BFE2; Mon, 27 Jul 2020 09:33:08 +0200 (CEST) Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by dpdk.org (Postfix) with ESMTP id 9174F1BE90 for ; Mon, 27 Jul 2020 09:33:06 +0200 (CEST) IronPort-SDR: 4QJ92QPecR1lixIwSIKJnNM3QxCacM3a8f1zpYyaD1PbaqUR8LYizUdV+kx8LijYFQ7AOwCFS7 cpxA/irAiB7A== X-IronPort-AV: E=McAfee;i="6000,8403,9694"; a="139002971" X-IronPort-AV: E=Sophos;i="5.75,401,1589266800"; d="scan'208";a="139002971" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga001.jf.intel.com ([10.7.209.18]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 27 Jul 2020 00:33:04 -0700 IronPort-SDR: 82M88gu1M+RUjz5K86z6jzBkUbCQtpLqH8UC/FeT+p/npWarGyCe3XMjhC60neJh6zSEMSxA6D 382rDnB1EGbQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.75,401,1589266800"; d="scan'208";a="364038909" Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by orsmga001.jf.intel.com with ESMTP; 27 Jul 2020 00:33:00 -0700 Received: from fmsmsx601.amr.corp.intel.com (10.18.126.81) 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.1713.5; Mon, 27 Jul 2020 00:32:59 -0700 Received: from FMSEDG001.ED.cps.intel.com (10.1.192.133) by fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256) id 15.1.1713.5 via Frontend Transport; Mon, 27 Jul 2020 00:32:59 -0700 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (104.47.70.109) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (TLS) id 14.3.439.0; Mon, 27 Jul 2020 00:32:57 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=de5fwWgA9FmxV31TNwrW/BE606+mRq7dWW4oj0pS6cFckxl6XrWp/VNZeGCBJCZ7zizO4KvWLHyC8opkyplfWdeY70eB/3VNuG6kUJqT3G7jEsYC0ffCYqskn0/IAL2wbU1LKO5JKja+PzhVh0GkGvheUbEUqCE5AW02aRCjxqaVhX9gUaFNfqbZKjEYQIrewJEjKIzTN1nXKwu2tdw4KyB8PuJduWFvxutxRqwdXgui8t/VYlhuOHl7uUND6EcJCGgkUMRf1BeHSkCRmxOKRUr+DAGvTMBO9NAwjFU+lB8lx6xKr93Ea9/KzzFZiohXFLtVvH+M9v47VQdJzOPzHA== 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=xc3iM9kkIDal7CXat/7yVKScy3D5deOSwF7sBveWjaY=; b=OOyiohO2uDUd++P0lLHnE3yKS6zZkcfprpfcAGv2DC+hDWlU2do8kNF8QfRjQWUPgmdwaBrlHziQdwhxkBflS64Fdyj0BbTAmTwYAg8q1K+DvcrpYtHVfditsynlx6waSIx/zOX/MgwrDC19e/VFdtjpbYD5r/a8QdzyZ+b0r5jMCO9X+bvIFsvI487e94seH04stNflu8KDrVGOG4z52qwSUD591jagaxN0sXS7UMNje5lP9l+sC0TYLAjUA9ouiRseSMce6/1lw6klgZUWtJOEk9o3PfrNslTgKWHpi43z6vgVl4gZdT0bBHpdwMj6jYle1gfbE6IVZW1ZzODhKQ== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=xc3iM9kkIDal7CXat/7yVKScy3D5deOSwF7sBveWjaY=; b=JUflguWFfeG8pvdT7MFrFpjMRjB5ZNyB/6o3c5V0KOuc+HDI5D390jIyXmO9JDNgF02aYUTXY21Cf//wW5dYSM1kKcIgMGkMVKAjkL2+NTuJ4ANmt4Faq1g6NuCKrZo3LXbkVHzc24Fx0K0MtU9iL9BRwZeilJ123FQQNsuAjFs= Received: from BYAPR11MB2901.namprd11.prod.outlook.com (2603:10b6:a03:91::23) by BY5PR11MB4151.namprd11.prod.outlook.com (2603:10b6:a03:18f::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3216.26; Mon, 27 Jul 2020 07:32:54 +0000 Received: from BYAPR11MB2901.namprd11.prod.outlook.com ([fe80::6552:92f9:74a5:412]) by BYAPR11MB2901.namprd11.prod.outlook.com ([fe80::6552:92f9:74a5:412%4]) with mapi id 15.20.3216.033; Mon, 27 Jul 2020 07:32:54 +0000 From: "Xu, Rosen" To: Manish Chopra , =?utf-8?B?R2HDq3RhbiBSaXZldA==?= CC: "jerinjacobk@gmail.com" , Jerin Jacob Kollanukkaran , "Yigit, Ferruh" , "dev@dpdk.org" , Igor Russkikh , Rasesh Mody , GR-Everest-DPDK-Dev , "Zhang, Tianfei" , "heinrich.kuhn@netronome.com" , "Yang, Qiming" , "Zhang, Qi Z" Thread-Topic: [EXT] Re: [PATCH v3 1/6] drivers: add generic API to find PCI extended cap Thread-Index: AQHWYabBZwlB7ztAVkiWwhEz3rTX0qkYj9AAgAG4LACAADJBAIAAavQAgAAnjEA= Date: Mon, 27 Jul 2020 07:32:53 +0000 Message-ID: References: <20200724103846.12640-1-manishc@marvell.com> <20200724103846.12640-2-manishc@marvell.com> <20200725173224.okzt3owicgdjun5s@u256.net> <20200726224742.zyf7mn52zh3nvxpk@u256.net> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-version: 11.2.0.6 dlp-reaction: no-action x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiNDdhM2U3NDQtZDgxNi00YzA4LTk0ZjktZjk4MWQyYTVhOWM0IiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoiYytRMEtaQko5MVR3RUFnSiszQTRGWHNXQ212STBhbW9OZjc0YjJpdElJK2dIZEU2eWNZQlcwSEQ3bW9NSjdcL0sifQ== x-ctpclassification: CTP_NT authentication-results: marvell.com; dkim=none (message not signed) header.d=none;marvell.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [192.198.147.218] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: ef7777f1-ddf7-4e78-6c82-08d831ff4676 x-ms-traffictypediagnostic: BY5PR11MB4151: x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:10000; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: CeijHfUjSBT+UAoRmk4QcVm/UeCB7KED0dYvB5dhVOdD1iP9EEju6Unx6uNPYmfoRJVuk2QSihg/hxD5zrC4fFiCnwCCDPx+x+jYI9y3BAlPZMSpxDMye/2JIRWFUzcb/T1kqO6Tpf3buc33Qp83Db7XEPsdfn9qrgmvIihEkrlSy8JLSpB48lRMSF+X5xoLX2zLbeOrt9fRHKdpswhSZc/FijgbARZMNP8nbgOaThlSGkGKjHbXiIT4VROLz+q+E+s1iS7/NgABS9ZOBYc3aYyJgWPoau0PiixjIncgpQF7+RQoW5wIy/U1EVPP6u5FiO1u3u4xLzGhp0ymGkM6QZhFLeQ1ocTayoczSffSXTc4sQk7QvUob58SrfdBpmc01pY1R/Q1aK09JDbV8PbRYg== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BYAPR11MB2901.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFTY:; SFS:(4636009)(39860400002)(376002)(366004)(136003)(346002)(396003)(33656002)(83380400001)(110136005)(66574015)(316002)(2906002)(54906003)(76116006)(4326008)(66946007)(53546011)(107886003)(66556008)(66476007)(8676002)(5660300002)(7696005)(64756008)(186003)(9686003)(66446008)(26005)(71200400001)(55016002)(52536014)(86362001)(478600001)(8936002)(6506007)(37363001)(41533002); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata: 7t3wJLKEf+TFdjrc/Ei8R8tcCY3eOLEoGd8yxOADL0uAX2nhPwaQo+WZ6E7BmUcnjJIRFqtutIqSnfiV4lwnggpckwsD4R9wE4F+Jj2aoqhhaDWlH3XzFV9Rc87EeT4xFtWXPWASQts3gRD0TXb5bcfTGS6xcoEHGlXxgEab3hECb+3wl6dA/L4H0wF27CzLNr8YXiLqjzLdKZa+cfGptlfPGVLBGrA3BoBK3Z01tyq8y1Iynai/cMLcK8/1d9MJ7Tssv1cOy9aYhvgn4a04WqqezUPjQLuZjT14cEy20cEr8RLMflx7R7drl2u01V/BuQr/6puIK/ZxXYFwFr3qe1+KRfobX83l+WE53iQASXnoHHX+k0Dh0vCDzY/+7saczdF5TBd8vVeZtCjrmDcvI9UFcqNOTbUfFGOHSz0G66rdiAAgSyR70/mrX5kxYsXp/NZnA+2/H9cy+p9maaeLNs72vc4IDuPi1gRLP7eJwILMivN9Z+FICX5FmdTMVQec Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BYAPR11MB2901.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: ef7777f1-ddf7-4e78-6c82-08d831ff4676 X-MS-Exchange-CrossTenant-originalarrivaltime: 27 Jul 2020 07:32:53.9563 (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: 4sd6h71AKLNjrqWUwy1Rj4dj6OCdYaEQ9Sxqum3ilrpWypKkfQzzQ60tK0mTT/3UX2zE9LwR1ezLERxE30lesg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR11MB4151 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [EXT] Re: [PATCH v3 1/6] drivers: add generic API to find PCI extended cap X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" SGksDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogTWFuaXNoIENob3By YSA8bWFuaXNoY0BtYXJ2ZWxsLmNvbT4NCj4gU2VudDogTW9uZGF5LCBKdWx5IDI3LCAyMDIwIDEz OjExDQo+IFRvOiBHYcOrdGFuIFJpdmV0IDxncml2ZUB1MjU2Lm5ldD4NCj4gQ2M6IGplcmluamFj b2JrQGdtYWlsLmNvbTsgSmVyaW4gSmFjb2IgS29sbGFudWtrYXJhbiA8amVyaW5qQG1hcnZlbGwu Y29tPjsNCj4gWWlnaXQsIEZlcnJ1aCA8ZmVycnVoLnlpZ2l0QGludGVsLmNvbT47IGRldkBkcGRr Lm9yZzsgSWdvciBSdXNza2lraA0KPiA8aXJ1c3NraWtoQG1hcnZlbGwuY29tPjsgUmFzZXNoIE1v ZHkgPHJtb2R5QG1hcnZlbGwuY29tPjsgR1ItDQo+IEV2ZXJlc3QtRFBESy1EZXYgPEdSLUV2ZXJl c3QtRFBESy1EZXZAbWFydmVsbC5jb20+OyBYdSwgUm9zZW4NCj4gPHJvc2VuLnh1QGludGVsLmNv bT47IFpoYW5nLCBUaWFuZmVpIDx0aWFuZmVpLnpoYW5nQGludGVsLmNvbT47DQo+IGhlaW5yaWNo Lmt1aG5AbmV0cm9ub21lLmNvbTsgWWFuZywgUWltaW5nIDxxaW1pbmcueWFuZ0BpbnRlbC5jb20+ Ow0KPiBaaGFuZywgUWkgWiA8cWkuei56aGFuZ0BpbnRlbC5jb20+DQo+IFN1YmplY3Q6IFJFOiBb RVhUXSBSZTogW1BBVENIIHYzIDEvNl0gZHJpdmVyczogYWRkIGdlbmVyaWMgQVBJIHRvIGZpbmQg UENJDQo+IGV4dGVuZGVkIGNhcA0KPiANCj4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0K PiA+IEZyb206IEdhw6t0YW4gUml2ZXQgPGdyaXZlQHUyNTYubmV0Pg0KPiA+IFNlbnQ6IE1vbmRh eSwgSnVseSAyNywgMjAyMCA0OjE4IEFNDQo+ID4gVG86IE1hbmlzaCBDaG9wcmEgPG1hbmlzaGNA bWFydmVsbC5jb20+DQo+ID4gQ2M6IGplcmluamFjb2JrQGdtYWlsLmNvbTsgSmVyaW4gSmFjb2Ig S29sbGFudWtrYXJhbg0KPiA+IDxqZXJpbmpAbWFydmVsbC5jb20+OyBmZXJydWgueWlnaXRAaW50 ZWwuY29tOyBkZXZAZHBkay5vcmc7IElnb3INCj4gPiBSdXNza2lraCA8aXJ1c3NraWtoQG1hcnZl bGwuY29tPjsgUmFzZXNoIE1vZHkgPHJtb2R5QG1hcnZlbGwuY29tPjsNCj4gPiBHUi1FdmVyZXN0 LSBEUERLLURldiA8R1ItRXZlcmVzdC1EUERLLURldkBtYXJ2ZWxsLmNvbT47DQo+ID4gcm9zZW4u eHVAaW50ZWwuY29tOyB0aWFuZmVpLnpoYW5nQGludGVsLmNvbTsNCj4gPiBoZWlucmljaC5rdWhu QG5ldHJvbm9tZS5jb207IHFpbWluZy55YW5nQGludGVsLmNvbTsNCj4gPiBxaS56LnpoYW5nQGlu dGVsLmNvbQ0KPiA+IFN1YmplY3Q6IFJlOiBbRVhUXSBSZTogW1BBVENIIHYzIDEvNl0gZHJpdmVy czogYWRkIGdlbmVyaWMgQVBJIHRvIGZpbmQNCj4gPiBQQ0kgZXh0ZW5kZWQgY2FwDQo+ID4NCj4g PiBPbiAyNi8wNy8yMCAxOTo0NyArMDAwMCwgTWFuaXNoIENob3ByYSB3cm90ZToNCj4gPg0KPiA+ IFsuLi5dDQo+ID4NCj4gPiA+ID4gPiBkaWZmIC0tZ2l0IGEvbGliL2xpYnJ0ZV9wY2kvcnRlX3Bj aS5oIGIvbGliL2xpYnJ0ZV9wY2kvcnRlX3BjaS5oDQo+ID4gPiA+ID4gaW5kZXggYTAzMjM1ZGEx Li5mZWM1MWUxNWEgMTAwNjQ0DQo+ID4gPiA+ID4gLS0tIGEvbGliL2xpYnJ0ZV9wY2kvcnRlX3Bj aS5oDQo+ID4gPiA+ID4gKysrIGIvbGliL2xpYnJ0ZV9wY2kvcnRlX3BjaS5oDQo+ID4gPiA+ID4g QEAgLTIyLDYgKzIyLDIyIEBAIGV4dGVybiAiQyIgew0KPiA+ID4gPiA+ICAjaW5jbHVkZSA8aW50 dHlwZXMuaD4NCj4gPiA+ID4gPiAgI2luY2x1ZGUgPHN5cy90eXBlcy5oPg0KPiA+ID4gPiA+DQo+ ID4gPiA+ID4gKw0KPiA+ID4gPiA+ICsvKg0KPiA+ID4gPiA+ICsgKiBDb252ZW50aW9uYWwgUENJ IGFuZCBQQ0ktWCBNb2RlIDEgZGV2aWNlcyBoYXZlIDI1NiBieXRlcyBvZg0KPiA+ID4gPiA+ICsg KiBjb25maWd1cmF0aW9uIHNwYWNlLiAgUENJLVggTW9kZSAyIGFuZCBQQ0llIGRldmljZXMgaGF2 ZQ0KPiA+ID4gPiA+ICs0MDk2IGJ5dGVzIG9mDQo+ID4gPiA+ID4gKyAqIGNvbmZpZ3VyYXRpb24g c3BhY2UuDQo+ID4gPiA+ID4gKyAqLw0KPiA+ID4gPiA+ICsjZGVmaW5lIFJURV9QQ0lfQ0ZHX1NQ QUNFX1NJWkUJCTI1Ng0KPiA+ID4gPiA+ICsjZGVmaW5lIFJURV9QQ0lfQ0ZHX1NQQUNFX0VYUF9T SVpFCTQwOTYNCj4gPiA+ID4gPiArDQo+ID4gPiA+ID4gKy8qIEV4dGVuZGVkIENhcGFiaWxpdGll cyAoUENJLVggMi4wIGFuZCBFeHByZXNzKSAqLw0KPiA+ID4gPiA+ICsjZGVmaW5lIFJURV9QQ0lf RVhUX0NBUF9JRChoZWFkZXIpCShoZWFkZXIgJiAweDAwMDBmZmZmKQ0KPiA+ID4gPiA+ICsjZGVm aW5lIFJURV9QQ0lfRVhUX0NBUF9ORVhUKGhlYWRlcikJKChoZWFkZXIgPj4gMjApICYNCj4gPiAw eGZmYykNCj4gPiA+ID4gPiArDQo+ID4gPiA+ID4gKyNkZWZpbmUgUlRFX1BDSV9FWFRfQ0FQX0lE X0VSUgkweDAxCS8qIEFkdmFuY2VkIEVycm9yDQo+ID4gUmVwb3J0aW5nDQo+ID4gPiA+ICovDQo+ ID4gPiA+ID4gKyNkZWZpbmUgUlRFX1BDSV9FWFRfQ0FQX0lEX0RTTgkweDAzCS8qIERldmljZSBT ZXJpYWwNCj4gPiBOdW1iZXIgKi8NCj4gPiA+ID4gPiArDQo+ID4gPiA+DQo+ID4gPiA+IEkgdW5k ZXJzdGFuZCB0aGF0IGl0IGlzIG1vcmUgbmF0dXJhbCB0byBoYXZlIHRob3NlIGRlZmluZXMgaW4g dGhlDQo+ID4gPiA+IFBDSSBsaWIsIGJ1dCBJIHRoaW5rIHRoZXJlIGlzIG5vIHBvaW50IGluIGFk ZGluZyB0aGVtIGluIGENCj4gPiA+ID4gc2VwYXJhdGUgbGliLCB3aGlsZSB0aGUgZnVuY3Rpb24g dXNpbmcgdGhvc2UgaXMgaW4gdGhlIFBDSSBidXMuDQo+ID4gPiA+DQo+ID4gPiA+IEkgdGhpbmsg dGhlIGRlZmluZXMgc2hvdWxkIGJlIHB1dCByaWdodCBiZWZvcmUgdGhlDQo+ID4gPiA+IHJ0ZV9w Y2lfZmluZF9uZXh0X2V4dF9jYXBhYmlsaXR5KCkgcHJvdG90eXBlIGluDQo+ID4gPiA+IGRyaXZl cnMvYnVzL3BjaS9ydGVfYnVzX3BjaS5oLg0KPiA+ID4NCj4gPiA+IEhlbGxvIEdhZXRhbiwNCj4g PiA+DQo+ID4gPiBJIHRoaW5rIHRoZXNlIGNvbWVzIGluIHRoZSBjYXRlZ29yeSBvZiBhbGwgUlRF X1BDSV8qIGdlbmVyaWMgZGVmaW5lcw0KPiA+ID4gKG5vdCBqdXN0IHVzZSBpbiBkcml2ZXJzL2J1 cy9wY2kvKSwgU2luY2UgY2FsbGVyIG9mIHRoZSBBUEkgYWxzbw0KPiA+ID4gbmVlZCB0byB1c2Ug aXQsIEZvciBleGFtcGxlLCBjb3VwbGUgb2YgUlRFX1BDSV8qIHdlcmUgYWRkZWQgaW4gcGF0Y2gN Cj4gPiA+ICMyIHVzZWQgYnkgcWVkZSBkcml2ZXJzIHNwZWNpZmljYWxseS4gcnRlX3BjaS5oIHNv dW5kcyBtb3JlIGdlbmVyaWMNCj4gPiA+IHRoYW4NCj4gPiBydGVfYnVzX3BjaS5oIGhlbmNlIEkg dGhvdWdodCBpdCBpcyB0aGUgc3VpdGFibGUgcGxhY2UgdG8gY29uc29saWRhdGUNCj4gPiB0aGVt IGluIHRoZXJlLg0KPiA+ID4NCj4gPiA+IFRoYW5rcyAhIQ0KPiA+DQo+ID4gUmVhZGluZyB0aGUg YWRkaXRpb25hbCBzeW1ib2xzLCBwYXJ0aWN1bGFybHkgYWJvdXQgU1JJT1YgY2FwYSwgSSB0aGlu aw0KPiA+IHlvdSBhcmUgcmlnaHQsIGl0J3MgcHJvYmFibHkgYmV0dGVyIHRvIGhhdmUgaXQgYWxs IHdpdGhpbiBydGVfcGNpLmguDQo+ID4NCj4gPiBUbyBoZWxwIGRldmVsb3BlcnMsIGl0IHdvdWxk IGJlIGJldHRlciB0byBwb2ludCBpbiB0aGUgZG9jIHRoYXQgdGhlDQo+ID4gY2FwYWJpbGl0eSBJ RHMgdXNlYWJsZSBhcyBwYXJhbWV0ZXIgYGNhcGAgY2FuIGJlIGFueSBmcm9tDQo+ID4gUlRFX1BD SV9FWFRfQ0FQX0lEXyosIGRlZmluZWQgd2l0aGluIGxpYnJ0ZV9wY2kuIFRoZSBkZXYgY2FuIHRo ZW4gZ3JlcCBpdC4NCj4gDQo+IFN1cmUsIEkgd2lsbCBhZGQgdGhlIHBvaW50ZXIgdG8gbGlicnRl X3BjaSBpbiB0aGUgY29tbWVudCBzZWN0aW9uIGZvcg0KPiBydGVfcGNpX2ZpbmRfbmV4dF9leHRf Y2FwYWJpbGl0eSgpDQo+IA0KPiA+DQo+ID4gT25lIGFkZGl0aW9uYWwgdGhpbmc6DQo+ID4NCj4g PiA+ID4gPiArI2RlZmluZSBSVEVfUENJX0NGR19TUEFDRV9TSVpFCQkyNTYNCj4gPiA+ID4gPiAr I2RlZmluZSBSVEVfUENJX0NGR19TUEFDRV9FWFBfU0laRQk0MDk2DQo+ID4gPiA+ID4gKw0KPiA+ ID4gPiA+ICsvKiBFeHRlbmRlZCBDYXBhYmlsaXRpZXMgKFBDSS1YIDIuMCBhbmQgRXhwcmVzcykg Ki8NCj4gPiA+ID4gPiArI2RlZmluZSBSVEVfUENJX0VYVF9DQVBfSUQoaGVhZGVyKQkoaGVhZGVy ICYgMHgwMDAwZmZmZikNCj4gPiA+ID4gPiArI2RlZmluZSBSVEVfUENJX0VYVF9DQVBfTkVYVCho ZWFkZXIpCSgoaGVhZGVyID4+IDIwKSAmDQo+ID4gMHhmZmMpDQo+ID4NCj4gPiBJIHRoaW5rIHRo b3NlIG1hY3JvcyBhcmUgbm90IHVzZWZ1bCBhcyBwYXJ0IG9mIHRoZSBwdWJsaWMgQVBJLCB0aGV5 DQo+ID4gYXJlIG9ubHkgdXNlZCB0byBpbXBsZW1lbnQgcnRlX3BjaV9maW5kX25leHRfZXh0X2Nh cGFiaWxpdHkoKS4gQ2FuIHlvdQ0KPiA+IGNvbmZpcm0/IElmIHRoaXMgaXMgY29ycmVjdCwgSSB0 aGluayB0aGV5IHNob3VsZCBiZSBtb3ZlZCB0byB0aGUNCj4gPiBjb21waWxhdGlvbiB1bml0IGlt cGxlbWVudGluZyBydGVfcGNpX2ZpbmRfbmV4dF9leHRfY2FwYWJpbGl0eSgpLg0KPiA+DQo+IA0K PiBIaSBHYWV0YW4sDQo+IA0KPiBZZXMgTW9zdGx5LCBidXQgdGhlcmUgaXMgYSBzaW1pbGFyIHBp ZWNlIG9mIGNvZGUgbGVmdCBpbiBkcml2ZXJzL3Jhdy9pZnBnYQ0KPiBbaWZwZ2FfcGNpX2ZpbmRf ZXh0X2NhcGFiaWxpdHkoKV0gb25seSB3aGljaCB1dGlsaXplcyB0aGVzZSBzeW1ib2xzIGFzIHdl bGwsDQo+IHdoaWNoIEkgZGlkIG5vdCB3YW50IHRvIGJlIHJlbW92ZWQvY2xlYW5lZCB1cCBtdXN0 IGFzIGEgcGFydCBvZiB0aGlzIHNlcmllcw0KPiBiZWNhdXNlIHRoYXQgaW1wbGVtZW50YXRpb24g aXMgYmFzZWQgb24gcHJlYWQoKSBpbnN0ZWFkIG9mDQo+IHJ0ZV9wY2lfcmVhZF9jb25maWcoKS4g SSB3YXMgbm90IHN1cmUgaWYgdGhhdCBkcml2ZXIgY2FuIGFsc28gZGlyZWN0bHkgdXNlDQo+IHJ0 ZV9wY2lfZmluZF9uZXh0X2V4dF9jYXBhYmlsaXR5KCkgdG9vLCBJIGRvIG5vdCBoYXZlIHRob3Nl IGZwZ2EgYmFzZWQNCj4gZGV2aWNlcyB0byB0ZXN0IGlmIGF0IGFsbCBJIHdlcmUgdG8gZG8gdGhh dCBjbGVhbnVwL3JlbW92YWwgbm93IGluIHRoYXQgZHJpdmVyLA0KPiBzbyBJIGRpZG4ndCBhdHRl bXB0IHRvIG1ha2Ugc3VjaCBmdW5jdGlvbmFsIGNoYW5nZXMgaW4gdGhhdCBkcml2ZXIgbm93LiBb TWF5DQo+IGJlIHRoaXMgY2FuIGJlIGNsZWFuZWQgdXAgdG9vIGxhdGVyIG9uIHdpdGggcHJvcGVy IHRlc3Rpbmcgb3IgbWF5IGJlIGEgbmV3DQo+IEFQSSBiYXNlZCBvbiBwcmVhZCgpIGNhbiBiZSBh ZGRlZCBmdXJ0aGVyIGlmIHRob3NlIGRyaXZlcnMgY2FuJ3QgdXNlDQo+IHJ0ZV9wY2lfZmluZF9u ZXh0X2V4dF9jYXBhYmlsaXR5KCkgZGlyZWN0bHldLg0KDQpGb3IgZHJpdmVycy9yYXcvaWZwZ2Eg aXMgdXNpbmcgdGhlc2UgbWFjcm9zLCBJIHByZWZlciB0byBrZWVwIGl0Lg0KDQo+IFRoYW5rcy4N Cg==