From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from dpdk.org (dpdk.org [92.243.14.124])
	by inbox.dpdk.org (Postfix) with ESMTP id C0FDDA2EEB
	for <public@inbox.dpdk.org>; Tue, 10 Sep 2019 17:37:11 +0200 (CEST)
Received: from [92.243.14.124] (localhost [127.0.0.1])
	by dpdk.org (Postfix) with ESMTP id 952CA1EF79;
	Tue, 10 Sep 2019 17:37:11 +0200 (CEST)
Received: from mga04.intel.com (mga04.intel.com [192.55.52.120])
 by dpdk.org (Postfix) with ESMTP id 5A3051EF73
 for <dev@dpdk.org>; Tue, 10 Sep 2019 17:37:09 +0200 (CEST)
X-Amp-Result: SKIPPED(no attachment in message)
X-Amp-File-Uploaded: False
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by fmsmga104.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384;
 10 Sep 2019 08:37:08 -0700
X-ExtLoop1: 1
X-IronPort-AV: E=Sophos;i="5.64,489,1559545200"; d="scan'208";a="268445974"
Received: from fmsmsx103.amr.corp.intel.com ([10.18.124.201])
 by orsmga001.jf.intel.com with ESMTP; 10 Sep 2019 08:37:08 -0700
Received: from fmsmsx112.amr.corp.intel.com (10.18.116.6) by
 FMSMSX103.amr.corp.intel.com (10.18.124.201) with Microsoft SMTP Server (TLS)
 id 14.3.439.0; Tue, 10 Sep 2019 08:37:07 -0700
Received: from shsmsx154.ccr.corp.intel.com (10.239.6.54) by
 FMSMSX112.amr.corp.intel.com (10.18.116.6) with Microsoft SMTP Server (TLS)
 id 14.3.439.0; Tue, 10 Sep 2019 08:37:07 -0700
Received: from shsmsx102.ccr.corp.intel.com ([169.254.2.113]) by
 SHSMSX154.ccr.corp.intel.com ([169.254.7.195]) with mapi id 14.03.0439.000;
 Tue, 10 Sep 2019 23:37:05 +0800
From: "Wang, Haiyue" <haiyue.wang@intel.com>
To: "Yigit, Ferruh" <ferruh.yigit@intel.com>, "Richardson, Bruce"
 <bruce.richardson@intel.com>
CC: Ray Kinsella <mdr@ashroe.eu>, "dev@dpdk.org" <dev@dpdk.org>, "Sun,
 Chenmin" <chenmin.sun@intel.com>
Thread-Topic: [dpdk-dev] [RFC v2 1/3] ethdev: add the API for getting trace
 information
Thread-Index: AQHVUYTDT/0YGy+MOU67JpkccwCfnab35B0AgACeXoCAJdFBAIABT/vQgAM1LQCAABWGAIAAAtKAgAAHf4CAAYRhMIAALGcAgACJtkD//35RAIAAhlng
Date: Tue, 10 Sep 2019 15:37:04 +0000
Message-ID: <E3B9F2FDCB65864C82CD632F23D8AB8773D68AE5@shsmsx102.ccr.corp.intel.com>
References: <1565665572-65495-1-git-send-email-haiyue.wang@intel.com>
 <1565665572-65495-2-git-send-email-haiyue.wang@intel.com>
 <20190812202436.662e6ca8@hermes.lan>
 <eb450632-013a-99c1-9946-1b06e8d8b006@ashroe.eu>
 <d73ca40b-fd07-9ac5-bba9-10809bfb6d8c@intel.com>
 <E3B9F2FDCB65864C82CD632F23D8AB8773D67333@shsmsx102.ccr.corp.intel.com>
 <75f88e4b-97ca-7e1f-1385-8e69f659be7f@intel.com>
 <20190909124038.GA1889@bricha3-MOBL.ger.corp.intel.com>
 <f21239e2-0004-75cb-6b39-4b76ac0688c2@intel.com>
 <b069c04c-7dda-8186-c51e-0018f59ddfc6@intel.com>
 <E3B9F2FDCB65864C82CD632F23D8AB8773D67E34@shsmsx102.ccr.corp.intel.com>
 <a24758d7-1aeb-fd1f-6f65-823cbeea06df@intel.com>
 <E3B9F2FDCB65864C82CD632F23D8AB8773D68A89@shsmsx102.ccr.corp.intel.com>
 <fd3540a4-5f7c-f2c0-21fc-89f1f99d1d8f@intel.com>
In-Reply-To: <fd3540a4-5f7c-f2c0-21fc-89f1f99d1d8f@intel.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiNGM5OWU2ZmEtNjlkNS00MjczLTgxZjgtZDViMzM3ZWZiNTZjIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoiWDR5Mk51YU1Uc1NjVmxYNmdRYTNLM3BwZHlGM3NBNTNlNTdITFNLVUhqWDRkdmczWEJLY1JlMDVNR3RaQnV2SyJ9
x-ctpclassification: CTP_NT
dlp-product: dlpe-windows
dlp-version: 11.2.0.6
dlp-reaction: no-action
x-originating-ip: [10.239.127.40]
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
Subject: Re: [dpdk-dev] [RFC v2 1/3] ethdev: add the API for getting trace
 information
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
Errors-To: dev-bounces@dpdk.org
Sender: "dev" <dev-bounces@dpdk.org>

PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBZaWdpdCwgRmVycnVoDQo+IFNl
bnQ6IFR1ZXNkYXksIFNlcHRlbWJlciAxMCwgMjAxOSAyMzozNQ0KPiBUbzogV2FuZywgSGFpeXVl
IDxoYWl5dWUud2FuZ0BpbnRlbC5jb20+OyBSaWNoYXJkc29uLCBCcnVjZSA8YnJ1Y2UucmljaGFy
ZHNvbkBpbnRlbC5jb20+DQo+IENjOiBSYXkgS2luc2VsbGEgPG1kckBhc2hyb2UuZXU+OyBkZXZA
ZHBkay5vcmc7IFN1biwgQ2hlbm1pbiA8Y2hlbm1pbi5zdW5AaW50ZWwuY29tPg0KPiBTdWJqZWN0
OiBSZTogW2RwZGstZGV2XSBbUkZDIHYyIDEvM10gZXRoZGV2OiBhZGQgdGhlIEFQSSBmb3IgZ2V0
dGluZyB0cmFjZSBpbmZvcm1hdGlvbg0KPiANCj4gT24gOS8xMC8yMDE5IDQ6MjEgUE0sIFdhbmcs
IEhhaXl1ZSB3cm90ZToNCj4gPj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPj4gRnJv
bTogWWlnaXQsIEZlcnJ1aA0KPiA+PiBTZW50OiBUdWVzZGF5LCBTZXB0ZW1iZXIgMTAsIDIwMTkg
MjM6MDcNCj4gPj4gVG86IFdhbmcsIEhhaXl1ZSA8aGFpeXVlLndhbmdAaW50ZWwuY29tPjsgUmlj
aGFyZHNvbiwgQnJ1Y2UgPGJydWNlLnJpY2hhcmRzb25AaW50ZWwuY29tPg0KPiA+PiBDYzogUmF5
IEtpbnNlbGxhIDxtZHJAYXNocm9lLmV1PjsgZGV2QGRwZGsub3JnOyBTdW4sIENoZW5taW4gPGNo
ZW5taW4uc3VuQGludGVsLmNvbT4NCj4gPj4gU3ViamVjdDogUmU6IFtkcGRrLWRldl0gW1JGQyB2
MiAxLzNdIGV0aGRldjogYWRkIHRoZSBBUEkgZm9yIGdldHRpbmcgdHJhY2UgaW5mb3JtYXRpb24N
Cj4gPj4NCj4gPj4gT24gOS8xMC8yMDE5IDU6MzYgQU0sIFdhbmcsIEhhaXl1ZSB3cm90ZToNCj4g
Pj4+IFRoYW5rcyBGZXJydWgsIEJydWNlLg0KPiA+Pj4NCj4gPj4+PiAtLS0tLU9yaWdpbmFsIE1l
c3NhZ2UtLS0tLQ0KPiA+Pj4+IEZyb206IFlpZ2l0LCBGZXJydWgNCj4gPj4+PiBTZW50OiBNb25k
YXksIFNlcHRlbWJlciA5LCAyMDE5IDIxOjE4DQo+ID4+Pj4gVG86IFJpY2hhcmRzb24sIEJydWNl
IDxicnVjZS5yaWNoYXJkc29uQGludGVsLmNvbT4NCj4gPj4+PiBDYzogV2FuZywgSGFpeXVlIDxo
YWl5dWUud2FuZ0BpbnRlbC5jb20+OyBSYXkgS2luc2VsbGEgPG1kckBhc2hyb2UuZXU+OyBkZXZA
ZHBkay5vcmc7IFN1biwNCj4gQ2hlbm1pbg0KPiA+Pj4+IDxjaGVubWluLnN1bkBpbnRlbC5jb20+
DQo+ID4+Pj4gU3ViamVjdDogUmU6IFtkcGRrLWRldl0gW1JGQyB2MiAxLzNdIGV0aGRldjogYWRk
IHRoZSBBUEkgZm9yIGdldHRpbmcgdHJhY2UgaW5mb3JtYXRpb24NCj4gPj4+Pg0KPiA+Pj4+IE9u
IDkvOS8yMDE5IDE6NTAgUE0sIEZlcnJ1aCBZaWdpdCB3cm90ZToNCj4gPj4+Pj4gT24gOS85LzIw
MTkgMTo0MCBQTSwgQnJ1Y2UgUmljaGFyZHNvbiB3cm90ZToNCj4gPj4+Pj4+IE9uIE1vbiwgU2Vw
IDA5LCAyMDE5IGF0IDEyOjIzOjM2UE0gKzAxMDAsIEZlcnJ1aCBZaWdpdCB3cm90ZToNCj4gPj4+
Pj4+PiBPbiA5LzcvMjAxOSAzOjQyIEFNLCBXYW5nLCBIYWl5dWUgd3JvdGU6DQo+ID4+Pj4+Pj4+
PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+Pj4+Pj4+Pj4gRnJvbTogWWlnaXQsIEZl
cnJ1aA0KPiA+Pj4+Pj4+Pj4gU2VudDogRnJpZGF5LCBTZXB0ZW1iZXIgNiwgMjAxOSAyMjoyMg0K
PiA+Pj4+Pj4+Pj4gVG86IFJheSBLaW5zZWxsYSA8bWRyQGFzaHJvZS5ldT47IFdhbmcsIEhhaXl1
ZSA8aGFpeXVlLndhbmdAaW50ZWwuY29tPg0KPiA+Pj4+Pj4+Pj4gQ2M6IGRldkBkcGRrLm9yZw0K
PiA+Pj4+Pj4+Pj4gU3ViamVjdDogUmU6IFtkcGRrLWRldl0gW1JGQyB2MiAxLzNdIGV0aGRldjog
YWRkIHRoZSBBUEkgZm9yIGdldHRpbmcgdHJhY2UgaW5mb3JtYXRpb24NCj4gPj4+Pj4+Pj4+DQo+
ID4+Pj4+Pj4+PiBPbiA4LzEzLzIwMTkgMTo1MSBQTSwgUmF5IEtpbnNlbGxhIHdyb3RlOg0KPiA+
Pj4+Pj4+Pj4+DQo+ID4+Pj4+Pj4+Pj4NCj4gPj4+Pj4+Pj4+PiBPbiAxMy8wOC8yMDE5IDA0OjI0
LCBTdGVwaGVuIEhlbW1pbmdlciB3cm90ZToNCj4gPj4+Pj4+Pj4+Pj4gT24gVHVlLCAxMyBBdWcg
MjAxOSAxMTowNjoxMCArMDgwMA0KPiA+Pj4+Pj4+Pj4+PiBIYWl5dWUgV2FuZyA8aGFpeXVlLndh
bmdAaW50ZWwuY29tPiB3cm90ZToNCj4gPj4+Pj4+Pj4+Pj4NCj4gPj4+Pj4+Pj4+Pj4+IEVuaGFu
Y2UgdGhlIFBNRCB0byBzdXBwb3J0IHJldHJpZXZpbmcgdHJhY2UgaW5mb3JtYXRpb24gbGlrZQ0K
PiA+Pj4+Pj4+Pj4+Pj4gUngvVHggYnVyc3Qgc2VsZWN0aW9uIGV0Yy4NCj4gPj4+Pj4+Pj4+Pj4+
DQo+ID4+Pj4+Pj4+Pj4+PiBTaWduZWQtb2ZmLWJ5OiBIYWl5dWUgV2FuZyA8aGFpeXVlLndhbmdA
aW50ZWwuY29tPg0KPiA+Pj4+Pj4+Pj4+Pj4gLS0tDQo+ID4+Pj4+Pj4+Pj4+PiAgbGliL2xpYnJ0
ZV9ldGhkZXYvcnRlX2V0aGRldi5jICAgICAgfCAxOCArKysrKysrKysrKysrKysrKysNCj4gPj4+
Pj4+Pj4+Pj4+ICBsaWIvbGlicnRlX2V0aGRldi9ydGVfZXRoZGV2LmggICAgICB8ICA5ICsrKysr
KysrKw0KPiA+Pj4+Pj4+Pj4+Pj4gIGxpYi9saWJydGVfZXRoZGV2L3J0ZV9ldGhkZXZfY29yZS5o
IHwgIDQgKysrKw0KPiA+Pj4+Pj4+Pj4+Pj4gIDMgZmlsZXMgY2hhbmdlZCwgMzEgaW5zZXJ0aW9u
cygrKQ0KPiA+Pj4+Pj4+Pj4+Pj4NCj4gPj4+Pj4+Pj4+Pj4+IGRpZmYgLS1naXQgYS9saWIvbGli
cnRlX2V0aGRldi9ydGVfZXRoZGV2LmMgYi9saWIvbGlicnRlX2V0aGRldi9ydGVfZXRoZGV2LmMN
Cj4gPj4+Pj4+Pj4+Pj4+IGluZGV4IDE3ZDE4M2UuLjYwOThmYWQgMTAwNjQ0DQo+ID4+Pj4+Pj4+
Pj4+PiAtLS0gYS9saWIvbGlicnRlX2V0aGRldi9ydGVfZXRoZGV2LmMNCj4gPj4+Pj4+Pj4+Pj4+
ICsrKyBiL2xpYi9saWJydGVfZXRoZGV2L3J0ZV9ldGhkZXYuYw0KPiA+Pj4+Pj4+Pj4+Pj4gQEAg
LTQwODMsNiArNDA4MywyNCBAQCBydGVfZXRoX3R4X3F1ZXVlX2luZm9fZ2V0KHVpbnQxNl90IHBv
cnRfaWQsIHVpbnQxNl90IHF1ZXVlX2lkLA0KPiA+Pj4+Pj4+Pj4+Pj4gIH0NCj4gPj4+Pj4+Pj4+
Pj4+DQo+ID4+Pj4+Pj4+Pj4+PiAgaW50DQo+ID4+Pj4+Pj4+Pj4+PiArcnRlX2V0aF90cmFjZV9p
bmZvX2dldCh1aW50MTZfdCBwb3J0X2lkLCB1aW50MTZfdCBxdWV1ZV9pZCwNCj4gPj4+Pj4+Pj4+
Pj4+ICsJCSAgICAgICBlbnVtIHJ0ZV9ldGhfdHJhY2UgdHlwZSwgY2hhciAqYnVmLCBpbnQgc3op
DQo+ID4+Pj4+Pj4+Pg0KPiA+Pj4+Pj4+Pj4gQmV0dGVyIHRvIHVzZSBzdHJ1Y3QgYXMgYXJndW1l
bnQgaW5zdGVhZCBvZiBpbmRpdmlkdWFsIHZhcmlhYmxlcyBiZWNhdXNlIGl0IGlzDQo+ID4+Pj4+
Pj4+PiBlYXNpZXIgdG8gZXh0ZW5kIHRoZSBzdHJ1Y3QgbGF0ZXIgaWYgbmVlZGVkLg0KPiA+Pj4+
Pj4+Pj4NCj4gPj4+Pj4+Pj4+Pj4+ICt7DQo+ID4+Pj4+Pj4+Pj4+PiArCXN0cnVjdCBydGVfZXRo
X2RldiAqZGV2Ow0KPiA+Pj4+Pj4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+Pj4+Pj4gKwlSVEVfRVRIX1ZB
TElEX1BPUlRJRF9PUl9FUlJfUkVUKHBvcnRfaWQsIC1FTk9ERVYpOw0KPiA+Pj4+Pj4+Pj4+Pj4g
Kw0KPiA+Pj4+Pj4+Pj4+Pj4gKwlpZiAoYnVmID09IE5VTEwpDQo+ID4+Pj4+Pj4+Pj4+PiArCQly
ZXR1cm4gLUVJTlZBTDsNCj4gPj4+Pj4+Pj4+Pj4+ICsNCj4gPj4+Pj4+Pj4+Pj4+ICsJZGV2ID0g
JnJ0ZV9ldGhfZGV2aWNlc1twb3J0X2lkXTsNCj4gPj4+Pj4+Pj4+Pj4+ICsNCj4gPj4+Pj4+Pj4+
Pj4+ICsJUlRFX0ZVTkNfUFRSX09SX0VSUl9SRVQoKmRldi0+ZGV2X29wcy0+dHJhY2VfaW5mb19n
ZXQsIC1FTk9UU1VQKTsNCj4gPj4+Pj4+Pj4+Pj4+ICsNCj4gPj4+Pj4+Pj4+Pj4+ICsJcmV0dXJu
IGRldi0+ZGV2X29wcy0+dHJhY2VfaW5mb19nZXQoZGV2LCBxdWV1ZV9pZCwgdHlwZSwgYnVmLCBz
eik7DQo+ID4+Pj4+Pj4+Pj4+DQo+ID4+Pj4+Pj4+Pj4+IFdoYXQgaWYgcXVldWVpZCBpcyBvdXQg
b2YgYm91bmRzPw0KPiA+Pj4+Pj4+Pj4+Pg0KPiA+Pj4+Pj4+Pj4+PiBUaGUgYmlnZ2VyIHByb2Js
ZW0gaXMgdGhhdCB0aGlzIGluZm9ybWF0aW9uIGlzIGxpa2UgYSBsb2cgbWVzc2FnZQ0KPiA+Pj4+
Pj4+Pj4+PiBhbmQgdW5zdHJ1Y3R1cmVkLCB3aGljaCBtYWtlcyBpdCBkZXZpY2Ugc3BlY2lmaWMg
YW5kIHVzZWxlc3MgZm9yIGF1dG9tYXRpb24uDQo+ID4+Pj4+Pj4+Pj4NCj4gPj4+Pj4+Pj4+PiBJ
TUhPIC0gdGhpcyBpcyBtdWNoIGJldHRlciBpbXBsZW1lbnRlZCBhcyBhIGNhcGFiaWxpdHkgYml0
ZmllbGQsIHRoYXQNCj4gPj4+Pj4+Pj4+PiBjYW4gYmUgcXVlcmllZC4NCj4gPj4+Pj4+Pj4+DQo+
ID4+Pj4+Pj4+PiArMSB0byByZXR1cm4gdGhlIGRhdGFwYXRoIGNhcGFiaWxpdHkgYXMgYml0Zmll
bGQuDQo+ID4+Pj4+Pj4+Pg0KPiA+Pj4+Pj4+Pj4gQWxzbyArMSB0byBoYXZlIGEgbmV3IEFQSSwN
Cj4gPj4+Pj4+Pj4+IC0gSSBhbSBub3Qgc3VyZSBhYm91dCB0aGUgQVBJIG5hbWUsICdydGVfZXRo
X3RyYWNlX2luZm9fZ2V0KCknLCBjYW4gd2UgZmluZA0KPiA+Pj4+Pj4+Pj4gc29tZXRoaW5nIGJl
dHRlciBpbnN0ZWFkIG9mICd0cmFjZScgdGhlcmUuDQo+ID4+Pj4+Pj4+PiAtIEkgdGhpbmsgd2Ug
c2hvdWxkIGxpbWl0IHRoaXMgQVBJIG9ubHkgdG8gZ2V0IGN1cnJlbnQgZGF0YXBhdGggY29uZmln
dXJhdGlvbiwNCj4gPj4+Pj4+Pj4+IGZvciBjbGFyaXR5IG9mIHRoZSBBUEkgZG9uJ3QgcmV0dXJu
IGNhcGFiaWxpdHkgb3Igbm90IGRhdGFwYXRoIHJlbGF0ZWQgY29uZmlnLg0KPiA+Pj4+Pj4+Pj4N
Cj4gPj4+Pj4+Pj4+IEFsc28gdGhpcyBpbmZvcm1hdGlvbiBub3QgYWx3YXlzIHN1cHBvcnRlZCBp
biBxdWV1ZSBsZXZlbCwgd2hhdCBkbyB5b3UgdGhpbmsNCj4gPj4+Pj4+Pj4+IGhhdmluZyBhYmls
aXR5IHRvIGdldCB0aGlzIGluZm9ybWF0aW9uIGluIHBvcnQgbGV2ZWwsDQo+ID4+Pj4+Pj4+PiBs
aWtlIHRoaXMgQVBJIGNhbiByZXR1cm4gYSBzdHJ1Y3QsIHdoaWNoIG1heSBoYXZlIGEgZmllbGQg
dGhhdCBzYXlzIGlmIHRoZQ0KPiA+Pj4+Pj4+Pj4gb3V0cHV0IGlzIGZvciBxdWV1ZSBvciBwb3J0
LCBvciB0aGlzIGNhbiBiZSBhbm90aGVyIGJpdGZpZWxkLCB3aGF0IGRvIHlvdSB0aGluaz8NCj4g
Pj4+Pj4+Pj4+DQo+ID4+Pj4+Pj4+DQo+ID4+Pj4+Pj4+ICNkZWZpbmUgUlhfU0NBTEFSCSgxVUxM
IDwgMCkNCj4gPj4+Pj4+Pj4gI2RlZmluZSBSWF9WRUNUT1JfQVZYMiAgLi4uDQo+ID4+Pj4+Pj4N
Cj4gPj4+Pj4+PiBXaGF0IGFib3V0IGhhdmluZyBSWF9WRUNUT1IgdmFsdWUsIGxhdGVyIGFub3Ro
ZXIgYml0IGdyb3VwIGZvciB0aGUgZGV0YWlscyBvZg0KPiA+Pj4+Pj4+IHRoZSB2ZWN0b3JpemF0
aW9uOg0KPiA+Pj4+Pj4+IFNTRQ0KPiA+Pj4+Pj4+IEFWWDINCj4gPj4+Pj4+PiBBVlg1MTINCj4g
Pj4+Pj4+PiBORU9ODQo+ID4+Pj4+Pj4gQUxUSVZFQw0KPiA+Pj4+Pj4+DQo+ID4+Pj4+Pj4gU2lu
Y2UgYWJvdmUgb3B0aW9ucyBjYW4gZXhpc3QgdG9nZXRoZXIsIHdoYXQgYWJvdXQgdXNpbmcgdmFs
dWVzIGZvciB0aGVtIGluc3RlYWQNCj4gPj4+Pj4+PiBvZiBiaXRmaWVsZHM/IFJlc2VydmluZyA0
IGJpdHMsIDJeNCA9IDE2LCBjYW4gYmUgZW5vdWdoIEkgdGhpbmsgZm9yIGxvbmcgdGVybS4NCj4g
Pj4+Pj4+Pg0KPiA+Pj4+Pj4gUmF0aGVyIHRoYW4gaGF2aW5nIG5hbWVkIHZlY3RvciB0eXBlcywg
d2UganVzdCBuZWVkIHRvIHdvcnJ5IGFib3V0IHRoZSBvbmVzDQo+ID4+Pj4+PiBmb3IgdGhlIGN1
cnJlbnQgYXJjaGl0ZWN0dXJlLiBUaGVyZWZvcmUgSSdkIHN1Z2dlc3QganVzdCB1c2luZyB2ZWN0
b3INCj4gPj4+Pj4+IHdpZHRocywgb25lIGJpdCBlYWNoIGZvciAxNkIsIDMyQiBhbmQgNjRCIHZl
Y3RvciBzdXBwb3J0LiBGb3Igc3VwcG9ydGluZw0KPiA+Pj4+Pj4gbXVsdGlwbGUgdmFsdWVzLCAx
NiBjb21iaW5hdGlvbnMgaXMgbm90IGVub3VnaCBmb3IgYWxsIHRoZSBwb3NzaWJpbGl0aWVzLg0K
PiA+Pj4+Pj4NCj4gPj4+Pj4NCj4gPj4+Pj4gdmVjdG9yIHdpZHRoIGNhbiBiZSBhbiBvcHRpb24g
dG9vLCBubyBvYmplY3Rpb24gdGhlcmUuIEJ1dCB0aGlzIGlzIG9ubHkgZm9yDQo+ID4+Pj4+IGN1
cnJlbnQgY29uZmlndXJhdGlvbiwgc28gaXQgY2FuIGJlIGEgY29tYmluYXRpb24sIHdlIGhhdmUg
bm93IDUgdHlwZXMgYW5kDQo+ID4+Pj4+IGFsbG9jYXRpbmcgc3BhY2UgZm9yIDE2Lg0KPiA+Pj4+
Pg0KPiA+Pj4+DQo+ID4+Pj4gY29ycmVjdGlvbjogaXQgY2FuICpub3QqIGJlIGEgY29tYmluYXRp
b24NCj4gPj4+DQo+ID4+PiBJIHRoaW5rIHdlIGNhbiBtZXJnZSB0aGUgUlhfVkVDVE9SIGFuZCBU
WF9WRUNUT1IgdG9nZXRoZXIsIHVzZSA2IGJpdHMgZm9yIHZlY3Rvcg0KPiA+Pj4gbW9kZSBkZXRh
aWwuIEFuZCBmb3IgdmVjdG9yIHdpZHRoLCB0aGUgU1NFLCBORU9OIG5hbWUgc2hvdWxkIGluZGlj
YXRlcyBpdCA/DQo+ID4+Pg0KPiA+Pj4gSSByZW5hbWVkIHRoZSBkZWZpbml0aW9ucyB0byB0cnkg
dG8gbWFrZSB0aGluZ3MgY2xlYXIuDQo+ID4+Pg0KPiA+Pj4gZW51bSBydGVfZXRoX2J1cnN0X21v
ZGVfb3B0aW9uIHsNCj4gPj4+IAlCVVJTVF9TQ0FMQVIgPSAoMSA8PCAwKSwNCj4gPj4+IAlCVVJT
VF9WRUNUT1IgPSAoMSA8PCAxKSwNCj4gPj4+DQo+ID4+PiAJQlVSU1RfVkVDVE9SX01PREVfTUFT
SyA9ICgweDNGIDw8IDIpLA0KPiA+Pj4gCUJVUlNUX0FMVElWRUMgICAgICAgICAgPSAoMSA8PCAy
KSwNCj4gPj4+IAlCVVJTVF9ORU9OICAgICAgICAgICAgID0gKDIgPDwgMiksDQo+ID4+PiAJQlVS
U1RfU1NFICAgICAgICAgICAgICA9ICgzIDw8IDIpLA0KPiA+Pj4gCUJVUlNUX0FWWDIgICAgICAg
ICAgICAgPSAoNCA8PCAyKSwNCj4gPj4+IAlCVVJTVF9BVlg1MTIgICAgICAgICAgID0gKDUgPDwg
MiksDQo+ID4+Pg0KPiA+Pj4gCUJVUlNUX1NDQVRURVJFRCA9ICgxIDw8IDgpLA0KPiA+Pj4gCUJV
UlNUX0JVTEtfQUxMT0MgPSAoMSA8PCA5KSwNCj4gPj4+IAlCVVJTVF9OT1JNQUwgPSAoMSA8PCAx
MCksDQo+ID4+PiAJQlVSU1RfU0lNUExFID0gKDEgPDwgMTEpLA0KPiA+Pj4gfTsNCj4gPj4+DQo+
ID4+PiAvKioNCj4gPj4+ICAqIEV0aGVybmV0IGRldmljZSBSWC9UWCBxdWV1ZSBwYWNrZXQgYnVy
c3QgbW9kZSBpbmZvcm1hdGlvbiBzdHJ1Y3R1cmUuDQo+ID4+PiAgKiBVc2VkIHRvIHJldHJpZXZl
IGluZm9ybWF0aW9uIGFib3V0IHBhY2tldCBidXJzdCBtb2RlIHNldHRpbmcuDQo+ID4+PiAgKi8N
Cj4gPj4+IHN0cnVjdCBydGVfZXRoX2J1cnN0X21vZGUgew0KPiA+Pj4gCXVpbnQzMl90IHBlcl9x
dWV1ZV9zdXBwb3J0OjE7IC8qKjwgU3VwcG9ydCB0byBzZXQgcGVyIHF1ZXVlIGJ1cnN0ICovDQo+
ID4+Pg0KPiA+Pj4gCXVpbnQ2NF90IG9wdGlvbnM7DQo+ID4+DQo+ID4+IFdlIGFyZSB1c2luZyBm
aXJzdCAzMmJpdHMganVzdCB0byBkZXRlY3QgdGhlIHF1ZXVlIGxldmVsIHN1cHBvcnQsIHdoYXQg
ZG8geW91DQo+ID4+IHRoaW5rIGNvbnZlcnRpbmcgdGhpcyBpbnRvIGEgZmllbGQgaW4gJ3J0ZV9l
dGhfYnVyc3RfbW9kZV9vcHRpb24nIGFuZCB1c2UNCj4gPj4gJ29wdGlvbnMnIGZpZWxkcywgc28g
d2Ugd2lsbCBmaXQgaW50byA2NCBiaXQuDQo+ID4NCj4gPiBZZXMsIGl0J3MgY2xlYXIuDQo+ID4g
VGhlbiBkbyB3ZSBzdGlsbCB1c2UgJ3N0cnVjdCBydGVfZXRoX2J1cnN0X21vZGUnIHRvIGhvbGQg
b25lIG1lbWJlciAidWludDY0X3Qgb3B0aW9ucyIgPw0KPiA+DQo+ID4gc3RydWN0IHJ0ZV9ldGhf
YnVyc3RfbW9kZSB7DQo+ID4gCXVpbnQ2NF90IG9wdGlvbnM7DQo+ID4gfTsNCj4gPg0KPiANCj4g
SSBzdWdnZXN0IGtlZXBpbmcgdGhlIHN0cnVjdCwgZm9yIHRoZSBwb3NzaWJpbGl0eSBvZiBmdXR1
cmUgY2hhbmdlcy4NCg0KT0suDQo=