From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <borisp@mellanox.com>
Received: from EUR02-HE1-obe.outbound.protection.outlook.com
 (mail-eopbgr10046.outbound.protection.outlook.com [40.107.1.46])
 by dpdk.org (Postfix) with ESMTP id 01650DE0
 for <dev@dpdk.org>; Thu, 11 May 2017 07:27:18 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Mellanox.com;
 s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=yXlv04laN55BfJFY7NaIlF+fYU779IzQ/LRpW56k+yk=;
 b=usKoUVjyM2hZq9dNIWHslC+xUldFCxDbrJHC8mH6laAYbFZj9ERfL5RH5S1wAomKUqL8jfBg0vaXd4WZNKJR8yHHCiafnRT/ieCN8ZhM55cj9vq6e16r+esvurTAQKu1yWqJgAmI/TXXOIaC2JPWnMSNGrmDfXRBLT1x8AlinF0=
Received: from DB6PR05MB3176.eurprd05.prod.outlook.com (10.170.221.26) by
 DB6PR05MB3173.eurprd05.prod.outlook.com (10.170.221.23) with Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id
 15.1.1084.16; Thu, 11 May 2017 05:27:16 +0000
Received: from DB6PR05MB3176.eurprd05.prod.outlook.com ([10.170.221.26]) by
 DB6PR05MB3176.eurprd05.prod.outlook.com ([10.170.221.26]) with mapi id
 15.01.1084.017; Thu, 11 May 2017 05:27:16 +0000
From: Boris Pismenny <borisp@mellanox.com>
To: Declan Doherty <declan.doherty@intel.com>, "radu.nicolau@intel.com"
 <radu.nicolau@intel.com>, "dev@dpdk.org" <dev@dpdk.org>
Thread-Topic: [dpdk-dev] [RFC][PATCH 0/5] cryptodev: Adding support for inline
 crypto processing of IPsec flows
Thread-Index: AQHSyaecv1W6U9UbnUqgBKQ7LmK8+aHt0IiAgAAVwTA=
Date: Thu, 11 May 2017 05:27:15 +0000
Message-ID: <DB6PR05MB31764EDB898852BB65935209B0ED0@DB6PR05MB3176.eurprd05.prod.outlook.com>
References: <1494341879-18718-1-git-send-email-radu.nicolau@intel.com>
 <f8c13c0c-abf4-36d4-2848-c8d64e684151@mellanox.com>
 <871defdd-9388-4251-92ea-c74a4d8c4938@intel.com>
In-Reply-To: <871defdd-9388-4251-92ea-c74a4d8c4938@intel.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
authentication-results: intel.com; dkim=none (message not signed)
 header.d=none;intel.com; dmarc=none action=none header.from=mellanox.com;
x-originating-ip: [193.47.165.251]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; DB6PR05MB3173;
 7:S7SqPbQlppvfsHz8pdmcSnrQnNRZuYrVQD9biv5ATPCs/acDfcQBkzlwbNgIxRWTlnJscVq3tFL0w6c2PV/x2DZ+L0euu0hrE8Ov0JQrItikzYzIY/bGfvBdOo8eIGAvqPmczF+h+kbAqekjcvm8DdCPcmaE1QoyVrWN2xqGwXawzaH/jC2pnnUhPI7ZwKxODH6CwWNOdY+lx6QN7cIoEdGYnOEPOVG5WSVGBWDUBk9hvonguUp6Gt+Od2+trEbmX2g7TNBWAeRSPBPrlScKdzsCk98LINd9GhcgE4CS0vmYTPcDmpwPdmvQxORExTjBZJusi6zA/mVlqMl8P0rb8Q==
x-ms-office365-filtering-correlation-id: 80a249be-9091-404a-ab68-08d4982e62e2
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(22001)(2017030254075)(48565401081)(201703131423075)(201703031133081);
 SRVR:DB6PR05MB3173; 
x-microsoft-antispam-prvs: <DB6PR05MB3173B4CA26FA7CA6B4130373B0ED0@DB6PR05MB3173.eurprd05.prod.outlook.com>
x-exchange-antispam-report-test: UriScan:(192374486261705)(17755550239193);
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0;
 RULEID:(6040450)(601004)(2401047)(8121501046)(5005006)(93006095)(93001095)(3002001)(10201501046)(6055026)(6041248)(20161123562025)(20161123555025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123558100)(20161123564025)(20161123560025)(6072148);
 SRVR:DB6PR05MB3173; BCL:0; PCL:0; RULEID:; SRVR:DB6PR05MB3173; 
x-forefront-prvs: 0304E36CA3
x-forefront-antispam-report: SFV:NSPM;
 SFS:(10009020)(6009001)(39410400002)(39840400002)(39860400002)(39450400003)(39400400002)(39850400002)(51444003)(5660300001)(33656002)(74316002)(6436002)(38730400002)(189998001)(305945005)(99286003)(9686003)(50986999)(7696004)(6506006)(7736002)(3280700002)(25786009)(3846002)(478600001)(77096006)(6116002)(2906002)(3660700001)(102836003)(66066001)(229853002)(2201001)(2501003)(86362001)(6246003)(2900100001)(53936002)(55016002)(2950100002)(54356999)(8936002)(122556002)(76176999)(81166006)(8676002);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB6PR05MB3173;
 H:DB6PR05MB3176.eurprd05.prod.outlook.com; FPR:; SPF:None; MLV:sfv; LANG:en; 
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-OriginatorOrg: Mellanox.com
X-MS-Exchange-CrossTenant-originalarrivaltime: 11 May 2017 05:27:15.9100 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: a652971c-7d2e-4d9b-a6a4-d149256f461b
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR05MB3173
Subject: Re: [dpdk-dev] [RFC][PATCH 0/5] cryptodev: Adding support for
 inline crypto processing of IPsec flows
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <http://dpdk.org/ml/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://dpdk.org/ml/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <http://dpdk.org/ml/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
X-List-Received-Date: Thu, 11 May 2017 05:27:19 -0000

PiA+PiA1LiBUaGUgYWRkaXRpb24gb2YgaW5saW5lIGNyeXB0byBtZXRhZGF0YSBpbnRvIHRoZSBy
dGVfbWJ1ZiBzdHJ1Y3R1cmUgdG8NCj4gYWxsb3cgdGhlIHJlcXVpcmVkIGVncmVzcyBtZXRhZGF0
YSB0byBiZSBnaXZlbiB0byB0aGUgTklDIFBNRCB0byBidWlsZCB0aGUNCj4gbmVjZXNzYXJ5IHRy
YW5zbWl0IGRlc2NyaXB0b3JzIGluIHR4X2J1cnN0IHByb2Nlc3Npbmcgd2hlbiB0aGUNCj4gUEtU
X1RYX0lQU0VDX0lOTElORV9DUllQVE8gaXMgc2V0LiBXZSBhcmUgbG9va2luZyBmb3IgZmVlZGJh
Y2sgb24gYQ0KPiBiZXR0ZXIgYXBwcm9hY2ggdG8gaGFuZGxpbmcgdGhlIHBhc3Npbmcgb2YgdGhp
cyBtZXRhZGF0YSB0byB0aGUgTklDIGFzIGl0IGlzDQo+IHVuZGVyc3Rvb2QgdGhhdCBkaWZmZXJl
bnQgaGFyZHdhcmUgYWNjZWxlcmF0b3JzIHdoaWNoIHN1cHBvcnQgdGhpcyBvZmZsb2FkDQo+IG1h
eSBoYXZlIGRpZmZlcmVudCByZXF1aXJlbWVudHMgZm9yIG1ldGFkYXRhIGRlcGVuZGluZyBvbg0K
PiBpbXBsZW1lbnRhdGlvbiBhbmQgb3RoZXIgY2FwYWJpbGl0aWVzIGluIHRoZSBkZXZpY2UuIE9u
ZSBwb3NzaWJpbGl0eSB3ZSBoYXZlDQo+IGNvbnNpZGVyIGlzIHRoYXQgdGhlIGxhc3QgMTYgYnl0
ZXMgb2YgbWJ1ZiBpcyByZXNlcnZlZCBmb3IgZGV2aWNlIHNwZWNpZmljDQo+IG1ldGFkYXRhLCB3
aGljaCBsYXlvdXQgaXMgZmxleGlibGUgZGVwZW5kaW5nIG9uIHRoZSBoYXJkd2FyZSBiZWluZyB1
c2VkLg0KPiA+Pg0KPiA+PiBzdHJ1Y3QgcnRlX21idWYgew0KPiA+PiAuLi4NCj4gPj4gCS8qKiBJ
bmxpbmUgSVBTZWMgbWV0YWRhdGEqLw0KPiA+PiAJc3RydWN0IHsNCj4gPj4gCSAgICAgICAgdWlu
dDE2X3Qgc2FfaWR4OyAgICAgICAgLyoqPCBTQSBpbmRleCAqLw0KPiA+PiAJICAgICAgICB1aW50
OF90ICBwYWRfbGVuOyAgICAgICAvKio8IFBhZGRpbmcgbGVuZ3RoICovDQo+ID4+IAkgICAgICAg
IHVpbnQ4X3QgIGVuYzsNCj4gPj4gCX0gaW5saW5lX2lwc2VjOw0KPiA+PiB9IF9fcnRlX2NhY2hl
X2FsaWduZWQ7DQo+ID4NCj4gPiBBc3N1bWluZyB0aGF0IHlvdSBzZWUgdGhlIHBhY2tldCB3aXRo
IFBLVF9UWF9JUFNFQ19JTkxJTkVfQ1JZUFRPLA0KPiBjb3VsZCB5b3UgaW5mZXIgdGhlc2UgcGFy
YW1ldGVycyBmcm9tIHRoZSBwYWNrZXQgaXRzZWxmPw0KPiA+DQo+IA0KPiBJbiBvdXIgY2FzZSB0
aGlzIGlzbid0IHJlYWxseSBwb3NzaWJsZSBhcyBlYWNoIHBhY2tldCBpbiBhIGJ1cnN0IGNvdWxk
IGJlIGJlDQo+IGFzc29jaWF0ZWQgd2l0aCBhIGRpZmZlcmVudCBzZWN1cml0eSBhc3NvY2lhdGlv
bi9jcnlwdG8gc2Vzc2lvbiBhbmQgd2lsbCBhbHNvDQo+IGhhdmUgZGlmZmVyZW50IGxlbmd0aHMv
cGFkZGluZyBldGMuIFdlIGNvdWxkIHVzZSBzb21lIHNvcnQgb2YgY29va2llIHRvDQo+IHN0b3Jl
IHRoaXMsIGJ1dCBJIHRoaW5rIGl0IHdvdWxkIGhhdmUgYSBiaWcgcGVyZm9ybWFuY2UgaW1wYWN0
LiBJIGRvIHRoaW5rIHRoYXQNCj4gdGhpcyBzdHJ1Y3R1cmUgaW4gdGhlIG1idWYgc2hvdWxkIG5v
dCBiZSBkZXZpY2Ugc3BlY2lmaWMgYXMgaXQgaXMgbm93IGZvciB0aGUNCj4gcmVxdWlyZWQgbWV0
YWRhdGEsIGJ1dCBJIHdvdWxkIGxpa2UgdG8gZ3VhcmFudGVlIHRoYXQgdGhlIG1ldGFkYXRhIGlz
IGluIHRoZQ0KPiBtYnVmLg0KPiANCj4gDQo+ID4NCj4gPiBUaGlzIGlzIGEgbmljZSBhcHByb2Fj
aC4NCj4gPg0KPiA+IFdlIGFyZSBhbHNvIHdvcmtpbmcgb24gYWRkaW5nIHN1cHBvcnQgZm9yIElQ
c2VjIGlubGluZSBjcnlwdG8gaW4gRFBESy4NCj4gPiBJIGhvcGUgd2UgY291bGQgc3VibWl0IGEg
UkZDIHdpdGggd29ya2luZyBjb2RlIHNvb24uDQo+IElpcyB5b3VyIGRldmljZSBjYXBhYmxlIG9m
IGZ1bGwgSVBzZWMgcHJvdG9jb2wgcHJvY2Vzc2luZywgRVNQIGhlYWRlciBpbnNlcnRpb24sDQo+
IGVuY2FwL2RlY2FwIGV0Yz8gSW4gb3VyIGNhc2UgdGhlIGlubGluZSBmdW5jdGlvbmFsaXR5IGlz
IGxpbWl0ZWQgdG8gdGhlIGNyeXB0bw0KPiBwcm9jZXNzaW5nLCBzbyB3ZSBhcmUgd29ya2luZyBv
biB0aGUgYXNzdW1wdGlvbiB0aGF0IHRoZSB1c2VyIHdpbGwgYmUNCj4gaW50ZWdyYXRpbmcgd2l0
aCBhbiBleGlzdGluZyBJUHNlYyBzdGFjay4gT24gaW5ncmVzcyB0aGUgbG9va3VwIGlzIGJhc2Vk
IG9uIHRoZQ0KPiBEZXN0aW5hdGlvbiBJUCBhbmQgU1BJLCBvbiBlZ3Jlc3MgdGhlIG1ldGFkYXRh
IGlzDQoNCkN1cnJlbnRseSBvdXIgZGV2aWNlIGlzIG5vdCBjYXBhYmxlIG9mIGZ1bGwgSVBzZWMg
cHJvdG9jb2wgcHJvY2Vzc2luZy4NCkJ1dCwgZnV0dXJlIGRldmljZXMgd2lsbCBub3QgaGF2ZSB0
aGlzIGxpbWl0YXRpb24gYW5kIGl0IHNob3VsZG4ndCBiZSANCmFzc3VtZWQgaW4gdGhlIEFQSS4g
V2UgYWxzbywgbmVlZCB0byBpbnRlZ3JhdGUgd2l0aCBhbiBleGlzdGluZw0KSVBzZWMgc3RhY2su
IEhvd2V2ZXIsIHdlIHBlcmZvcm0gYSBsb29rdXAgb24gYm90aCBlZ3Jlc3MgYW5kDQpJbmdyZXNz
IGZvciBzb3VyY2UgSVAsIGRlc3RpbmF0aW9uIElQIGFuZCBTUEkuDQoNCj4gDQo+ID4NCj4gPiBX
ZSBjb25zaWRlcmVkIDMgYXBwcm9hY2hlcyBmb3IgSVBzZWMgaW5saW5lIHN1cHBvcnQ6DQo+ID4g
MS4gSVBzZWMgaW5saW5lIGFzIGEgY3J5cHRvZGV2IChsaWtlIHRoaXMgUkZDKSAyLiBJUHNlYyBp
bmxpbmUgYXMgYQ0KPiA+IHJ0ZV9mbG93IGFjdGlvbi4gKHNlZSBkZXRhaWxzIGJlbG93KSAzLiBN
aXggYmV0d2VlbiBhcHByb2FjaCAyIGFuZA0KPiA+IGFwcHJvYWNoIDMuDQo+ID4NCj4gPiBJbiBh
cHByb2FjaCAyLCB0aGVyZSBpcyBubyBuZWVkIGZvciBhbiBhZGRpdGlvbmFsIGNyeXB0byBQTUQu
DQo+ID4gSW5saW5lIElQc2VjIGlzIGV4cG9zZWQgYXMgYW5vdGhlciBmZWF0dXJlIG9mIGEgTklD
IFBNRC4NCj4gPg0KPiANCj4gPiBGb3IgdGhlIGNvbnRyb2wtcGF0aCwgd2UgaW50cm9kdWNlIGEg
bmV3IHJ0ZV9mbG93X2FjdGlvbl90eXBlIGZvcg0KPiA+IGNyeXB0byBhbmQgYSBmbGFnIHRvIG1h
cmsgZmxvd3MgYXMgZWdyZXNzIGZsb3dzLg0KPiA+IFRoZW4sIGl0IGlzIHBvc3NpYmxlIHRvIHBy
b2dyYW0gdGhlIFNBIGJ5IGNhbGxpbmcgcnRlX2Zsb3dfY3JlYXRlIHdpdGgNCj4gPiBhbiBhcHBy
b3ByaWF0ZSBwYXR0ZXJuIG9mIElQIGFuZCBFU1AgaGVhZGVyIGZpZWxkcywgYW5kIGFuIGFjdGlv
biB0aGF0DQo+ID4gY29udGFpbnMgcnRlX2NyeXB0b19pcHNlY194Zm9ybSBhcyB0aGUgY29uZmln
dXJhdGlvbi4NCj4gPg0KPiA+IFRoZSBtYWluIGJlbmVmaXQgb2YgdXNpbmcgdGhlIHJ0ZV9mbG93
IEFQSSBpcyB0aGF0IHdlIGNhbiByZXVzZSwgdGhlDQo+ID4gZXhpc3RpbmcgQVBJIHdpdGggcGF0
dGVybnMgYW5kIGFjdGlvbnMuIEZvciBleGFtcGxlLCBpdCB3b3VsZCBiZQ0KPiA+IHBvc3NpYmxl
IHRvIGFkZCBzdXBwb3J0IGZvciBVRFAgZW5jYXBzdWxhdGlvbiBvZiBJUHNlYyB3aXRob3V0DQo+
ID4gY2hhbmdpbmcgdGhlIEFQSS4gU3VwcG9ydCBmb3IgVkxBTi9WWExBTi9HUkUvZXRjIGNvdWxk
IGJlIGFkZGVkDQo+ID4gc2ltaWxhcmx5IHRvIFVEUCBlbmNhcHN1bGF0aW9uLg0KPiANCj4gVGhp
cyBtYWtlIHNlbnNlIHdoZW4gaHcgaXMgY2FwYWJsZSBvZiBmdWxsIG9mZmxvYWQuIFNvIHRoZSBy
dGVfZmxvdyBhY3Rpb25zDQo+IG1pZ2h0IGJlIFZ4TEFOIGFuZCBFU1AgVHVubmVsIGZvciBhIGZs
b3cuIFRoZSBvdGhlciBhcHByb2FjaCBpcyB0aGF0IHRvDQo+IHNlcGFyYXRlIHJ1bGVzIGFyZSBj
cmVhdGVkIG9uZSBmb3IgSVBzZWMsIHRoZW4gYSBzZWNvbmQgZm9yIHRoZSBWeExBTiB0dW5uZWwN
Cj4gd2hpY2ggdHJpZ2dlciBvbiB0aGUgSVBzZWMgZmxvdywgYnV0IHRoaXMgcHJvYmFibHkgaW1w
bGllcyB0aGF0IGVpdGhlciB0aGUgUE1EDQo+IGZsYXR0ZW5zIHRoZXNlIGZsb3cgYWN0aW9ucyBp
bnRvIGEgc2luZ2xlIGFjdGlvbiBvciB0aGUgaHcgc3VwcG9ydHMgcmUNCj4gY2lyY3VsYXRpb24u
IE9uZSBjb25jZXJuIEkgd291bGQgaGF2ZSBpcyBwb3B1bGF0aW9uIG9mIHRoZSBuYW1lc3BhY2Ug
b2YNCj4gcnRlX2Zsb3cgd2l0aCBJUHNlYy9jcnlwdG8gc2Vzc2lvbiBtYXRlcmlhbCwgYnV0IEkg
Z3Vlc3MgaXQgc2hvdWxkIGJlIHBvc3NpYmxlDQo+IHRvIGNvbWUgdXAgd2l0aCBhIGNsZWFuIHdh
eSBvZiBzdXBwb3J0aW5nIHRoaXMuDQoNCkZ1bGwgb2ZmbG9hZCBpcyBub3QgbmVjZXNzYXJ5IGlm
IHRoZSBkZXZpY2UgaGFzIGEgY2FwYWJsZSBwYXJzZXIuDQpFbmNhcHN1bGF0aW9ucyBjb3VsZCBi
ZSBhZGRlZCBieSB0aGUgRFBESyBhcHBsaWNhdGlvbiwgYW5kDQpmb3IgaW5saW5lIG9mZmxvYWQg
dGhlIGRldmljZSBtdXN0IGJlIGF3YXJlIG9mIHRoZW0uIFVubGlrZSBvdGhlcg0KY3J5cHRvIFBN
RHMgdGhhdCBhY3R1YWxseSBwZXJmb3JtIGVuY3J5cHRpb24sIGlubGluZSBjcnlwdG8gUE1Ecw0K
bmVlZCB0byBzZXR1cCB0aGUgZW50aXJlIHBhY2tldCBmb3JtYXQgdXAgdG8gRVNQIGluIG9yZGVy
IHRvIHByb2Nlc3MNCnRoZSByZXF1ZXN0LiBPbmUgY29uY2VybiBJIGhhdmUgaW4gdGhpcyBtYXR0
ZXIsIGlzIHRoYXQgdGhlIHNlbWFudGljcyBvZg0Kb3RoZXIgY3J5cHRvIFBNRHMgYXJlIGRpZmZl
cmVudCBmcm9tIGlubGluZSAtIHRoZXkgYWN0dWFsbHkgcGVyZm9ybSBjcnlwdG8uDQpJbmxpbmUg
d291bGQgYnJlYWsgaWYgdGhlIHBhY2tldCBmb3JtYXQgaXMgbm90IGNvcnJlY3QuDQoNCkFkZGlu
ZyBhIFZYTEFOIGZsb3cgYW5kIGFuIEVTUCB0dW5uZWwgc2VwYXJhdGVseSBpcyBzaW1pbGFyIHRv
IHRoZQ0KdGhpcmQgYXBwcm9hY2gsIGJlY2F1c2UgdGhlIFBNRCByZXF1aXJlcyBzb21lIGluZGlj
YXRpb24gdGhhdCBpdCBzaG91bGQNCmZsYXR0ZW4gdGhlc2UgcnVsZXMgYW5kIHRoaXMgaW5kaWNh
dGlvbiB3aWxsIGJlIGluIHRoZSBmb3JtIG9mIGEgY3J5cHRvIHNlc3Npb24uDQpNYXliZSB0aGlz
IGFwcHJvYWNoIHdpbGwgYmUgdGhlIGJlc3QuIA0KDQpJbiB0aGUgM3JkIGFwcHJvYWNoIHRoZXJl
IGlzIGEgY3J5cHRvIFBNRCB0aGF0IGFsbG93cyBmb3IgemVybyBjaGFuZ2VzDQppbiB0aGUgZGF0
YXBhdGggYW5kIGl0IGlzIHBvc3NpYmxlIHRvIHNldCBkZXZpY2Ugc3BlY2lmaWMgbWV0YWRhdGEg
aW4gaXRzDQplbnF1ZXVlX2J1cnN0LiBXaGlsZSwgdGhlIGNvbnRyb2wgcGF0aCBpcyBzcGxpdCBi
ZXR3ZWVuIHJ0ZV9jcnlwdG8gYW5kDQpydGVfZmxvdy4gRmlyc3QgYSBjcnlwdG8gc2Vzc2lvbiBp
cyBzZXR1cCwgdGhlbiB0aGUgY3J5cHRvIHNlc3Npb24gaXMNCnByb3ZpZGVkIHRvIHJ0ZV9mbG93
X2NyZWF0ZSBhcyBhbiBhY3Rpb24uIFRoZSBjcnlwdG8gc2Vzc2lvbiB3aWxsIG5vdA0KaW5jbHVk
ZSBhbnkgbmV0d29ya2luZyByZWxhdGVkIGNvZGUsIGp1c3QgdGhlIGtleXMgYW5kIHRoZSBzYWx0
Lg0KDQpXaGF0IGlzIHlvdXIgY29uY2VybiBhYm91dCB0aGUgcG9wdWxhdGlvbiBvZiBydGVfZmxv
dyB3aXRoIElQc2VjL2NyeXB0bw0KbWF0ZXJpYWw/IEkgdGhpbmsgdGhhdCBhdCBsZWFzdCBzb21l
IGNyeXB0byBpbiBydGVfZmxvdyBpcyBuZWNlc3NhcnkgdG8NCnN1cHBvcnQgYWR2YW5jZWQgdXNl
LWNhc2VzIHdpdGhvdXQgcmUtaW1wbGVtZW50aW5nIHJ0ZV9mbG93IGluc2lkZQ0KcnRlX2NyeXB0
by4NCg0KPiANCj4gDQo+ID4gRm9yIHRoZSBkYXRhLXBhdGgsIGFsbCBpcyBoYW5kbGVkIGluIHRo
ZSBOSUMgUE1ELCBkdXJpbmcgcngvdHhfYnVyc3QuDQo+ID4gV2hpbGUsIHRoZSBhcHBsaWNhdGlv
biBtYXJrcyB0aGUgcGFja2V0cyBmb3IgZW5jcnlwdGlvbiBpbiB0aGUNCj4gPiB0cmFuc21pdCBw
YXRoLiBBbmQgaXQgcmVjZWl2ZXMgcGFja2V0cyBtYXJrZWQgYXMgZGVjcnlwdGVkL2F1dGgtZmFp
bA0KPiA+IG9uIHRoZSByZWNlaXZlIHNpZGUuDQo+IA0KPiB3aGVuIHlvdSBzYXkgdGhlIGFwcGxp
Y2F0aW9uIG1hcmtzIHRoZSBwYWNrZXQsIHRoaXMgaXMgZXNzZW50aWFsbHkgdGhlIElQc2VjDQo+
IHN0YWNrPyBUaGUgbWFpbiBiZW5lZml0IGluIHRoZSBhcHByb2FjaCBvZiB0aGlzIFJGQyBpcyB0
aGF0IGl0IGlzIHBvc3NpYmxlIHRvDQo+IGludGVncmF0ZSB0aGUgaW5saW5lIGNyeXB0byBwcm9j
ZXNzaW5nIHRyYW5zcGFyZW50bHkgaW4gdGhlIGRhdGEgcGF0aC4gVGhlDQo+IGNyeXB0byBQTUQg
Y2FuIGhhbmRsZSBzZXR0aW5nIGFuZCBpbnRlcnByZXRpbmcgdGhlIG1ldGFkYXRhIHJlcXVpcmVk
IGFuZA0KPiB0aGUgSVBzZWMgc3RhY2sgaXMganVzdCB1c2luZyB0aGUgY3J5cHRvIFBNRCBhcyBp
dCB3b3VsZCBhbnkgb3RoZXIgY3J5cHRvDQo+IFBNRC4NCj4gDQoNClJpZ2h0LiBJJ20gY29uY2Vy
bmVkIGFib3V0IHRoZSBvdmVyaGVhZCBvZiBnb2luZyB0aHJvdWdoIGEgY3J5cHRvIFBNRCwNCmFu
ZCBJIHVuZGVyc3RhbmQgdGhhdCBpdCBtaWdodCBiZSBuZWNlc3NhcnkgZm9yIHlvdXIgZGV2aWNl
Lg0KQ2hhbmdlcyBpbiB0aGUgZGF0YSBwYXRoIHdvdWxkIGJlIG1pbm9yIGluIGFueSB3YXkgd2Ug
aW1wbGVtZW50IGlubGluZS4NCklmIHRoZSBtZXRhZGF0YSBpcyBub3QgZGV2aWNlIHNwZWNpZmlj
LCB0aGVuIHNob3VsZG4ndCB0aGUgYXBwbGljYXRpb24gc2V0IGl0DQpkaXJlY3RseSBiYXNlZCBv
biB0aGUgU0EgaXRzZWxmPw0KDQoNCg0K