From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by dpdk.org (Postfix) with ESMTP id AFB6A1B6B4 for ; Tue, 30 Jan 2018 18:05:01 +0100 (CET) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by fmsmga104.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 30 Jan 2018 09:05:00 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.46,435,1511856000"; d="scan'208";a="25948238" Received: from irsmsx104.ger.corp.intel.com ([163.33.3.159]) by fmsmga004.fm.intel.com with ESMTP; 30 Jan 2018 09:04:59 -0800 Received: from irsmsx103.ger.corp.intel.com ([169.254.3.197]) by IRSMSX104.ger.corp.intel.com ([169.254.5.101]) with mapi id 14.03.0319.002; Tue, 30 Jan 2018 17:04:58 +0000 From: "Ananyev, Konstantin" To: "Xueming(Steven) Li" , Olivier MATZ CC: "dev@dpdk.org" , "Wu, Jingjing" , Shahaf Shuler , Yongseok Koh , Thomas Monjalon , "Yigit, Ferruh" Thread-Topic: [dpdk-dev] [PATCH v2 1/5] ethdev: introduce Tx generic tunnel offloads Thread-Index: AQHTmROifk2L1w16xUyzxbptmR3iRqOLD3QggACrt4CAAK0/YIAAIwgAgAAAqpCAAAUbgIAAAUuwgAAE94CAAAomcA== Date: Tue, 30 Jan 2018 17:04:58 +0000 Message-ID: <2601191342CEEE43887BDE71AB97725890565D01@IRSMSX103.ger.corp.intel.com> References: <20180109141110.146250-2-xuemingl@mellanox.com> <20180129150859.71573-1-xuemingl@mellanox.com> <2601191342CEEE43887BDE71AB977258905654E2@IRSMSX103.ger.corp.intel.com> <2601191342CEEE43887BDE71AB97725890565B06@IRSMSX103.ger.corp.intel.com> <2601191342CEEE43887BDE71AB97725890565BE5@IRSMSX103.ger.corp.intel.com> <2601191342CEEE43887BDE71AB97725890565C90@IRSMSX103.ger.corp.intel.com> In-Reply-To: Accept-Language: en-IE, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiNDA4OWFiNmEtZGYwYS00MjFhLWJmM2ItNDNhYmIzZjA2ZmNjIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE2LjUuOS4zIiwiVHJ1c3RlZExhYmVsSGFzaCI6ImJ1MTFHbHZZTVdRRDY1VkZwRW9BMzRFZ0VxQWY3RDBPc2NxMU9ScSszdnM9In0= x-ctpclassification: CTP_NT dlp-product: dlpe-windows dlp-version: 11.0.0.116 dlp-reaction: no-action x-originating-ip: [163.33.239.181] Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH v2 1/5] ethdev: introduce Tx generic tunnel offloads 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: , X-List-Received-Date: Tue, 30 Jan 2018 17:05:02 -0000 DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogWHVlbWluZyhTdGV2ZW4p IExpIFttYWlsdG86eHVlbWluZ2xAbWVsbGFub3guY29tXQ0KPiBTZW50OiBUdWVzZGF5LCBKYW51 YXJ5IDMwLCAyMDE4IDQ6MTAgUE0NCj4gVG86IEFuYW55ZXYsIEtvbnN0YW50aW4gPGtvbnN0YW50 aW4uYW5hbnlldkBpbnRlbC5jb20+OyBPbGl2aWVyIE1BVFogPG9saXZpZXIubWF0ekA2d2luZC5j b20+DQo+IENjOiBkZXZAZHBkay5vcmc7IFd1LCBKaW5namluZyA8amluZ2ppbmcud3VAaW50ZWwu Y29tPjsgU2hhaGFmIFNodWxlciA8c2hhaGFmc0BtZWxsYW5veC5jb20+OyBZb25nc2VvayBLb2gN Cj4gPHlza29oQG1lbGxhbm94LmNvbT47IFRob21hcyBNb25qYWxvbiA8dGhvbWFzQG1vbmphbG9u Lm5ldD47IFlpZ2l0LCBGZXJydWggPGZlcnJ1aC55aWdpdEBpbnRlbC5jb20+DQo+IFN1YmplY3Q6 IFJFOiBbZHBkay1kZXZdIFtQQVRDSCB2MiAxLzVdIGV0aGRldjogaW50cm9kdWNlIFR4IGdlbmVy aWMgdHVubmVsIG9mZmxvYWRzDQo+IA0KPiANCj4gDQo+ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdl LS0tLS0NCj4gPiBGcm9tOiBBbmFueWV2LCBLb25zdGFudGluIFttYWlsdG86a29uc3RhbnRpbi5h bmFueWV2QGludGVsLmNvbV0NCj4gPiBTZW50OiBXZWRuZXNkYXksIEphbnVhcnkgMzEsIDIwMTgg MTI6MDMgQU0NCj4gPiBUbzogWHVlbWluZyhTdGV2ZW4pIExpIDx4dWVtaW5nbEBtZWxsYW5veC5j b20+OyBPbGl2aWVyIE1BVFoNCj4gPiA8b2xpdmllci5tYXR6QDZ3aW5kLmNvbT4NCj4gPiBDYzog ZGV2QGRwZGsub3JnOyBXdSwgSmluZ2ppbmcgPGppbmdqaW5nLnd1QGludGVsLmNvbT47IFNoYWhh ZiBTaHVsZXINCj4gPiA8c2hhaGFmc0BtZWxsYW5veC5jb20+OyBZb25nc2VvayBLb2ggPHlza29o QG1lbGxhbm94LmNvbT47IFRob21hcyBNb25qYWxvbg0KPiA+IDx0aG9tYXNAbW9uamFsb24ubmV0 PjsgWWlnaXQsIEZlcnJ1aCA8ZmVycnVoLnlpZ2l0QGludGVsLmNvbT4NCj4gPiBTdWJqZWN0OiBS RTogW2RwZGstZGV2XSBbUEFUQ0ggdjIgMS81XSBldGhkZXY6IGludHJvZHVjZSBUeCBnZW5lcmlj IHR1bm5lbA0KPiA+IG9mZmxvYWRzDQo+ID4NCj4gPg0KPiA+DQo+ID4gPiA+ID4gPg0KPiA+ID4g PiA+ID4gPiA+ID4gVGhpcyBwYXRjaCBpbnRyb2R1Y2UgbmV3IFRYIG9mZmxvYWRzIGZsYWcgZm9y IGRldmljZXMgdGhhdA0KPiA+ID4gPiA+ID4gPiA+ID4gc3VwcG9ydCB0dW5uZWwgYWdub3N0aWMg Y2hlY2tzdW0gYW5kIFRTTyBvZmZsb2Fkcy4NCj4gPiA+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4g PiA+ID4gPiBUaGUgc3VwcG9ydCBmcm9tIHRoZSBkZXZpY2UgaXMgZm9yIGlubmVyIGFuZCBvdXRl cg0KPiA+ID4gPiA+ID4gPiA+ID4gY2hlY2tzdW1zIG9uIElQVjQvVENQL1VEUCBhbmQgVFNPIGZv ciAqYW55IHBhY2tldCB3aXRoIHRoZQ0KPiA+ID4gPiA+ID4gPiA+ID4gZm9sbG93aW5nDQo+ID4g PiA+IGZvcm1hdCo6DQo+ID4gPiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPiA+ID4gPCBzb21l IGhlYWRlcnMgPiAvIFtvcHRpb25hbCBJUHY0L0lQdjZdIC8gW29wdGlvbmFsDQo+ID4gPiA+ID4g PiA+ID4gPiBUQ1AvVURQXSAvIDxzb21lDQo+ID4gPiA+ID4gPiA+ID4gPiBoZWFkZXJzPiAvIFtv cHRpb25hbCBpbm5lciBJUHY0L0lQdjZdIC8gW29wdGlvbmFsIFRDUC9VRFBdDQo+ID4gPiA+ID4g PiA+ID4gPg0KPiA+ID4gPiA+ID4gPiA+ID4gRm9yIGV4YW1wbGUgdGhlIGZvbGxvd2luZyBwYWNr ZXRzIGNhbiB1c2UgdGhpcyBmZWF0dXJlOg0KPiA+ID4gPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ ID4gPiA+IDEuIGV0aCAvIGlwdjQgLyB1ZHAgLyBWWExBTiAvIGlwIC8gdGNwIDIuIGV0aCAvIGlw djQgLyBHUkUNCj4gPiA+ID4gPiA+ID4gPiA+IC8gTVBMUyAvDQo+ID4gPiA+ID4gPiA+ID4gPiBp cHY0IC8gdWRwDQo+ID4gPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ID4gPiBTbyBpbiB0ZXJtcyBv ZiB1c2FnZSAtIHdoYXQgaXMgdGhlIGRpZmZlcmVuY2Ugd2l0aCBjdXJyZW50DQo+ID4gPiA+ID4g PiA+ID4gVFNPDQo+ID4gPiA+IHR5cGVzPw0KPiA+ID4gPiA+ID4gPiA+IEtvbnN0YW50aW4NCj4g PiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPiBUcmFkaXRpb25hbGx5 LCBIVyBvbmx5IHJlY29nbml6ZSAia25vd24iIHR1bm5lbCB0eXBlLCBkbyBUU08NCj4gPiA+ID4g PiA+ID4gY2FsY3VsYXRpb24gYmFzZWQgb24gTDMvTDQgaGVhZGVycyBrbm93biB0byB0dW5uZWwg dHlwZS4gRm9yDQo+ID4gPiA+ID4gPiA+IGV4YW1wbGUsIGl0IG11c3QgYmUNCj4gPiA+ID4gPiA+ ID4gTDIgaGVhZGVyIGFmdGVyIFZYTEFOLCB0aGVuIEwzLiBXaGlsZSB0aGlzIEdlbmVyaWMgb2Zm bG9hZGluZw0KPiA+ID4gPiA+ID4gPiBwcm92aWRlcyBpbm5lci9vdXRlciBMMy9MNCBoZWFkZXIg aW5mbyhsZW4gYW5kIG9mZnNldCkgdG8gSFcsDQo+ID4gPiA+ID4gPiA+IGFuZCB0aHVzIHR1bm5l bCBpbmZvIGJlY29tZSBsZXNzIGltcG9ydGFudC4gUGxlYXNlIG5vdGUgdGhlDQo+ID4gPiA+ID4g PiA+IE1QTFMgb3ZlciBHUkUgdHVubmVsIGluIGxhc3QgZXhhbXBsZSBhYm92ZS4NCj4gPiA+ID4g PiA+DQo+ID4gPiA+ID4gPiBPaywgYnV0IEkgd29uZGVyIHdoZW4gdGhlIHVzZXIgd291bGQgbGlr ZSB0byBkbyBUU08gb24gdHVubmVsDQo+ID4gPiA+ID4gPiBwYWNrZXQsIGZvciB0aGlzIG9mZmxv YWQgLSB3b3VsZCBoZSBuZWVkIHRvIGRvIHNvbWV0aGluZw0KPiA+ID4gPiA+ID4gZGlmZmVyZW50 bHkgZnJvbSB3aGF0IGhlIGhhcyB0byBkbyBub3c6DQo+ID4gPiA+ID4gPiByYWlzZSBQS1RfVFhf VENQX1NFRyBhbmQgcmVsYXRlZCBmbGFncywgcmFpc2UgYXBwcm9wcmlhdGUNCj4gPiA+ID4gPiA+ IFBLVF9UWF9UVU5ORUxfKiBmbGFnLCBmaWxsIGwyX2xlbiwgbDNfbGVuLA0KPiA+ID4gPiBsNF9s ZW4sdHNvX3NlZ3N6LG91dGVyX2wyX2xlbixvdXRlcl9sM19sZW4/DQo+ID4gPiA+ID4gPg0KPiA+ ID4gPiA+DQo+ID4gPiA+ID4gWWVzLCB0aGVzZSBmaWVsZHMgYXJlIHN1ZmZpY2llbnQgZXhjZXB0 IFBLVF9UWF9UVU5ORUxfKiwgbWFqb3INCj4gPiA+ID4gPiB0YXJnZXQgb2YgdGhpcyBuZXcgZmVh dHVyZSBpcyB0byBzdXBwb3J0ICJ1bmtub3duIiB0dW5uZWwNCj4gPiA+ID4gPiBvZmZsb2FkaW5n LCBpdA0KPiA+ID4gPiBzdXBwb3J0cyAia25vd24iDQo+ID4gPiA+ID4gdHVubmVsIHR5cGUgYXMg d2VsbC4NCj4gPiA+ID4NCj4gPiA+ID4gT2ssIGJ1dCB1c2VyIHdvdWxkIHN0aWxsIG5lZWQgdG8g c2V0IHNvbWUgZmxhZyB0byBpbmRpY2F0ZSB0aGF0IHRoaXMNCj4gPiA+ID4gaXMgYSB0dW5uZWwg cGFja2V0LCBhbmQgaGUgd2FudHMgVFNPIG92ZXIgaXQsIHJpZ2h0Pw0KPiA+ID4gPiBGb3IgcHJl LWRlZmluZWQgdHVubmVsIHR5cGVzIGl0IGNhbiBiZSBvbmUgb2YgUEtUX1RYX1RVTk5FTF8qICh3 aGljaA0KPiA+ID4gPiBhY3R1YWxseSBtZWFucyB0aGF0IHVzZXIgc3RpbGwgaGF2ZSB0byBrbm93 IHR1bm5lbCB0eXBlIGFueXdheT8pIEJ1dA0KPiA+ID4gPiBmb3Igc29tZSBub3QgZGVmaW5lZCB0 dW5uZWwgdHlwZSAtIHdoYXQgaXQgd291bGQgYmU/DQo+ID4gPiA+IEtvbnN0YW50aW4NCj4gPiA+ ID4NCj4gPiA+DQo+ID4gPiBBcyB0aGlzIGZlYXR1cmUgdGFyZ2V0IHRvIFRYIHBhdGgsIE91dGVy IGxlbmd0aCBhcyB0dW5uZWwgaW5kaWNhdGlvbiwNCj4gPiA+IGxlYXZlIGl0IGVtcHR5IGlmIHR1 bm5lbCBub3QgZGVmaW5lZC4NCj4gPg0KPiA+IFNvcnJ5LCBJIGRpZG4ndCBnZXQgaXQuDQo+ID4g V2UgbmVlZCB0byBsZXQgUE1EIGtub3cgdGhhdCBpdCBpcyBhIHR1bm5lbCBwYWNrZXQsIHJpZ2h0 Pw0KPiA+IFNvIHdlIGRvIG5lZWQgdG8gcmFpc2UgUEtUX1RYX1RVTk5FTF8qIGZsYWcuDQo+ID4N Cj4gDQo+IEluIG15IGN1cnJlbnQgY29kZSwgbWJ1Zi5vdXRlcl9sMl9sZW4gaXMgdXNlZCB0byB0 ZXN0IHR1bm5lbCBwYWNrZXQuDQo+IEFncmVlIGEgbmV3IHR1bm5lbCBmbGFnIHdvdWxkIGJlIGJl dHRlci4NCj4gDQo+ID4gPg0KPiA+ID4gQnV0IEkgdGhpbmsgaXQgZ29vZCB0byBkZWZpbmUgc29t ZXRoaW5nIGxpa2U6DQo+ID4gPiAgCVBLVF9UWF9UVU5ORUxfR0VORVJJQyA9IFBLVF9UWF9UVU5O RUxfTUFTSw0KPiA+DQo+ID4gWWVzLCB0aGF0J3MgYW4gb3B0aW9uLCBJIHdvdWxkIHByb2JhYmx5 IG5hbWUgaXQgUEtUX1RYX1RVTk5FTF9VTktOT1dOLg0KPiA+DQo+ID4gPiBBbmQgYSBuZXcgZmxh ZyBQS1RfVFhfT1VURVJfVURQLCBob3cgZG8geW91IHRoaW5rPw0KPiA+DQo+ID4gTm90IHN1cmUg d2h5IGRvIHdlIG5lZWQgaXQ/DQo+ID4gSFcgc3RpbGwgbmVlZHMgdG8ga25vdyBvdXRlcl9sNF90 eXBlIHRvIGJlIGFibGUgdG8gd29yayBjb3JyZWN0bHk/DQo+IA0KPiBGb3IgdHVubmVsIHR5cGUg bGlrZSB2eGxhbiwgaWYgb3V0ZXIgVURQIHByZXNlbnQsIGh3IGhhcyB0byB1cGRhdGUgVURQDQo+ IGxlbmd0aCBmaWVsZCBmb3IgZWFjaCBUU08gcGFja2V0IHNlZ21lbnQuDQoNCkkgdW5kZXJzdGFu ZCB0aGF0LCBidXQgSSB0aG91Z2h0IHRoYXQgSFcgaXMgc21hcnQgZW5vdWdoIHRvIHBhcnNlIHRo ZSBoZWFkZXINCmFuZCByZWNvZ25pemUgb3V0ZXIgTDMvTDQgdHlwZSAgLSBhcyBpdCBpcyBhICdn ZW5lcmljJyB0dW5uZWxpbmcgDQooc29ycnkgSSBhbSBub3QgZmFtaWxpYXIgd2l0aCBNTFggSFcg YXQgYWxsKS4NCkZyb20gd2hhdCB5b3Ugc2F5aW5nIC0gdGhhdCBhc3N1bXB0aW9uIHdhcyB3cm9u ZyBhbmQgdXNlciBzdGlsbCAgbmVlZA0KdG8gcHJvdmlkZSBzb21lIHBhY2tldC10eXBlIGluZm8g YXQgIGxlYXN0IGFib3V0IG91dGVyIGhlYWRlcnMsIHJpZ2h0Pw0KU28gd2hhdCBlbHNlIG5lZWQg dG8gYmUgc2V0PyAgDQpQcm9iYWJseSBQS1RfVFhfT1VURVJfSVBWKiwgbWlnaHQgYmUgc29tZXRo aW5nIGVsc2U/DQpLb25zdGFudGluDQoNCj4gS29uc3RhbnRpbg0KPiA+DQo+ID4gPg0KPiA+ID4g PiA+DQo+ID4gPiA+ID4gUEtUX1RYX1RVTk5FTF9WWExBTiBoYXMgdG8gYmUgdXNlZCBhcyBhIGhp bnQgaWYgb3V0ZXIgVURQIGV4cGVjdGVkLg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiBLb25zdGFu dGluDQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPiA+ID4NCj4gPiA+ ID4gPiA+ID4gPiA+IFNpZ25lZC1vZmYtYnk6IFh1ZW1pbmcgTGkgPHh1ZW1pbmdsQG1lbGxhbm94 LmNvbT4NCj4gPiA+ID4gPiA+ID4gPiA+IC0tLQ0KPiA+ID4gPiA+ID4gPiA+ID4gIGxpYi9saWJy dGVfZXRoZXIvcnRlX2V0aGRldi5oIHwgMTAgKysrKysrKysrKw0KPiA+ID4gPiA+ID4gPiA+ID4g IDEgZmlsZSBjaGFuZ2VkLCAxMCBpbnNlcnRpb25zKCspDQo+ID4gPiA+ID4gPiA+ID4gPg0KPiA+ ID4gPiA+ID4gPiA+ID4gZGlmZiAtLWdpdCBhL2xpYi9saWJydGVfZXRoZXIvcnRlX2V0aGRldi5o DQo+ID4gPiA+ID4gPiA+ID4gPiBiL2xpYi9saWJydGVfZXRoZXIvcnRlX2V0aGRldi5oIGluZGV4 IDFhNWI0Y2RjNS4uZDhkMDhjY2IyDQo+ID4gPiA+ID4gPiA+ID4gPiAxMDA2NDQNCj4gPiA+ID4g PiA+ID4gPiA+IC0tLSBhL2xpYi9saWJydGVfZXRoZXIvcnRlX2V0aGRldi5oDQo+ID4gPiA+ID4g PiA+ID4gPiArKysgYi9saWIvbGlicnRlX2V0aGVyL3J0ZV9ldGhkZXYuaA0KPiA+ID4gPiA+ID4g PiA+ID4gQEAgLTk3OSw2ICs5NzksMTYgQEAgc3RydWN0IHJ0ZV9ldGhfY29uZiB7DQo+ID4gPiA+ ID4gPiA+ID4gPiAgICogICB0aGUgc2FtZSBtZW1wb29sIGFuZCBoYXMgcmVmY250ID0gMS4NCj4g PiA+ID4gPiA+ID4gPiA+ICAgKi8NCj4gPiA+ID4gPiA+ID4gPiA+ICAjZGVmaW5lIERFVl9UWF9P RkZMT0FEX1NFQ1VSSVRZICAgICAgICAgMHgwMDAyMDAwMA0KPiA+ID4gPiA+ID4gPiA+ID4gKy8q KjwgRGV2aWNlIHN1cHBvcnRzIGdlbmVyaWMgdHVubmVsIGNoZWNrc3VtIGFuZCBUU08NCj4gPiBv ZmZsb2FkaW5nLg0KPiA+ID4gPiA+ID4gPiA+ID4gKyAqIENoZWNrc3VtIGFuZCBUU08gYXJlIGRv bmUgYmFzZWQgb24gZm9sbG93aW5nIG1idWYgZmllbGRzOg0KPiA+ID4gPiA+ID4gPiA+ID4gKyAq ICAgLSBMZW5ndGggb2YgZWFjaCBoZWFkZXINCj4gPiA+ID4gPiA+ID4gPiA+ICsgKiAgIC0gVHlw ZSBvZiBvdXRlci9pbm5lciBMMyB0eXBlLCBJUHY0IG9yIElQdjYNCj4gPiA+ID4gPiA+ID4gPiA+ ICsgKiAgIC0gVHlwZSBvZiBvdXRlci9pbm5lciBMNCB0eXBlLCBUQ1Agb3IgVURQLg0KPiA+ID4g PiA+ID4gPiA+ID4gKyAqCS0gUEtUX1RYX1RVTk5FTF9WWExBTiBpbXBsaWVzIG91dGVyIFVEUCB0 eXBlLg0KPiA+ID4gPiA+ID4gPiA+ID4gKyAqCS0gUEtUX1RYX1RDUF9TRUcgaW1wbGllcyBpbm5l ciBUQ1AgdHlwZS4NCj4gPiA+ID4gPiA+ID4gPiA+ICsgKiBUdW5uZWwgdHlwZSBpcyBvcHRpb25h bCBleGNlcHQgUEtUX1RYX1RVTk5FTF9WWExBTiB0bw0KPiA+ID4gPiA+ID4gPiA+ID4gK2hpbnQg b3V0ZXINCj4gPiA+ID4gPiA+IFVEUC4NCj4gPiA+ID4gPiA+ID4gPiA+ICsgKi8NCj4gPiA+ID4g PiA+ID4gPiA+ICsjZGVmaW5lIERFVl9UWF9PRkZMT0FEX0dFTkVSSUNfVE5MX0NLU1VNX1RTTwkw eDAwMDQwMDAwDQo+ID4gPiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPiA+ID4gIC8qDQo+ID4g PiA+ID4gPiA+ID4gPiAgICogSWYgbmV3IFR4IG9mZmxvYWQgY2FwYWJpbGl0aWVzIGFyZSBkZWZp bmVkLCB0aGV5IGFsc28NCj4gPiA+ID4gPiA+ID4gPiA+IG11c3QgYmUNCj4gPiA+ID4gPiA+ID4g PiA+IC0tDQo+ID4gPiA+ID4gPiA+ID4gPiAyLjEzLjMNCg0K