From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by dpdk.org (Postfix) with ESMTP id 91AA62BAF for ; Wed, 15 Aug 2018 18:04:28 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga007.fm.intel.com ([10.253.24.52]) by orsmga102.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 15 Aug 2018 09:04:27 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.53,243,1531810800"; d="scan'208";a="62631901" Received: from irsmsx108.ger.corp.intel.com ([163.33.3.3]) by fmsmga007.fm.intel.com with ESMTP; 15 Aug 2018 09:04:26 -0700 Received: from irsmsx156.ger.corp.intel.com (10.108.20.68) by IRSMSX108.ger.corp.intel.com (163.33.3.3) with Microsoft SMTP Server (TLS) id 14.3.319.2; Wed, 15 Aug 2018 17:04:25 +0100 Received: from irsmsx102.ger.corp.intel.com ([169.254.2.180]) by IRSMSX156.ger.corp.intel.com ([169.254.3.37]) with mapi id 14.03.0319.002; Wed, 15 Aug 2018 17:04:25 +0100 From: "Van Haaren, Harry" To: Anthony Hart CC: "users@dpdk.org" Thread-Topic: [dpdk-users] eventdev performance Thread-Index: AQHULO8K+0BNhrx03Uqym0W2vO4qTqSz9KhAgAOTrYCACX4lAA== Date: Wed, 15 Aug 2018 16:04:24 +0000 Message-ID: References: <3338AA01-BB97-494F-B39C-6A510D085C79@domainhart.com> <9E092979-55BD-4AA8-9785-4D660E84105F@domainhart.com> In-Reply-To: <9E092979-55BD-4AA8-9785-4D660E84105F@domainhart.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiNTAzMGU5YTYtNjkyMC00MGUzLTkxMGUtY2U2NzU3ZDZkYThkIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoiTGM4OEZUOWx2WjdHeWtnZVwvczlkbUpJc1FNTlZhNXpUbFhUWUI5RHJMVjNyem9XMU1pVFphQUNcL1hDTnJMM0ZFIn0= x-ctpclassification: CTP_NT dlp-product: dlpe-windows dlp-version: 11.0.400.15 dlp-reaction: no-action x-originating-ip: [163.33.239.182] Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 Subject: Re: [dpdk-users] eventdev performance X-BeenThere: users@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK usage discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 15 Aug 2018 16:04:29 -0000 PiBGcm9tOiBBbnRob255IEhhcnQgW21haWx0bzphaGFydEBkb21haW5oYXJ0LmNvbV0NCj4gU2Vu dDogVGh1cnNkYXksIEF1Z3VzdCA5LCAyMDE4IDQ6NTYgUE0NCj4gVG86IFZhbiBIYWFyZW4sIEhh cnJ5IDxoYXJyeS52YW4uaGFhcmVuQGludGVsLmNvbT4NCj4gQ2M6IHVzZXJzQGRwZGsub3JnDQo+ IFN1YmplY3Q6IFJlOiBbZHBkay11c2Vyc10gZXZlbnRkZXYgcGVyZm9ybWFuY2UNCj4gDQo+IEhp IEhhcnJ5LA0KPiBUaGFua3MgZm9yIHRoZSByZXBseSwgcGxlYXNlIHNlZSByZXNwb25zZXMgaW5s aW5lDQo+IA0KPiA+IE9uIEF1ZyA3LCAyMDE4LCBhdCA0OjM0IEFNLCBWYW4gSGFhcmVuLCBIYXJy eSA8aGFycnkudmFuLmhhYXJlbkBpbnRlbC5jb20+DQo+IHdyb3RlOg0KPiA+DQo+ID4gSGkgVG9u eSwNCj4gPg0KPiA+PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+PiBGcm9tOiB1c2Vy cyBbbWFpbHRvOnVzZXJzLWJvdW5jZXNAZHBkay5vcmddIE9uIEJlaGFsZiBPZiBBbnRob255IEhh cnQNCj4gPj4gU2VudDogU3VuZGF5LCBBdWd1c3QgNSwgMjAxOCA4OjAzIFBNDQo+ID4+IFRvOiB1 c2Vyc0BkcGRrLm9yZw0KPiA+PiBTdWJqZWN0OiBbZHBkay11c2Vyc10gZXZlbnRkZXYgcGVyZm9y bWFuY2UNCj4gPj4NCj4gPj4gSeKAmXZlIGJlZW4gZG9pbmcgc29tZSBwZXJmb3JtYW5jZSBtZWFz dXJlbWVudHMgd2l0aCB0aGUgZXZlbnRkZXZfcGlwZWxpbmUNCj4gPj4gZXhhbXBsZSBhcHBsaWNh dGlvbiAodG8gc2VlIGhvdyB0aGUgZXZlbnRkZXYgbGlicmFyeSBwZXJmb3JtcyAtIGRwZGsNCj4g MTguMDUpDQo+ID4+IGFuZCBJ4oCZbSBsb29raW5nIGZvciBzb21lIGhlbHAgaW4gZGV0ZXJtaW5p bmcgd2hlcmUgdGhlIGJvdHRsZW5lY2tzIGFyZSBpbg0KPiBteQ0KPiA+PiB0ZXN0aW5nLg0KPiA+ DQo+ID4gSWYgeW91IGhhdmUgdGhlICJwZXJmIHRvcCIgdG9vbCBhdmFpbGFibGUsIGl0IGlzIHZl cnkgdXNlZnVsIGluIHByaW50aW5nDQo+IHN0YXRpc3RpY3MNCj4gPiBvZiB3aGVyZSBDUFUgY3lj bGVzIGFyZSBzcGVudCBkdXJpbmcgcnVudGltZS4gSSB1c2UgaXQgcmVndWxhcmx5IHRvDQo+IGlk ZW50aWZ5DQo+ID4gYm90dGxlbmVja3MgaW4gdGhlIGNvZGUgZm9yIHNwZWNpZmljIGxjb3Jlcy4N Cj4gDQo+IFllcyBJIGhhdmUgcGVyZiBpZiB0aGVyZSBpcyBzb21ldGhpbmcgeW914oCZZCBsaWtl IHRvIHNlZSBJIGNhbiBwb3N0IGl0Lg0KDQpJJ2xsIGNoZWNrIHRoZSByZXN0IG9mIHlvdXIgZW1h aWwgZmlyc3QuIEdlbmVyYWxseSBJIHVzZSBwZXJmIHRvIHNlZSBhcmUgdGhlDQpjeWNsZXMgYmVp bmcgc3BlbnQgb24gZWFjaCBjb3JlIHdoZXJlIGlzIGV4cGVjdGVkLiBJbiB0aGlzIGNhc2UsIGl0 IG1pZ2h0DQpiZSB1c2VmdWwgdG8gbG9vayBhdCB0aGUgc2NoZWR1bGVyIGNvcmUgYW5kIHNlZSB3 aGVyZSBpdCBpcyBzcGVuZGluZyBpdHMgdGltZS4NCg0KDQo+ID4+IEkgaGF2ZSAxIFJ4LCAxIFR4 LCAxIFNjaGVkdWxlciBhbmQgTiB3b3JrZXIgY29yZXMgKDEgc3dfZXZlbnQwIGRldmljZSkuDQo+ IEluDQo+ID4+IHRoaXMgY29uZmlndXJhdGlvbiBwZXJmb3JtYW5jZSB0b3BzIG91dCB3aXRoIDMg d29ya2VycyAoNiBjb3JlcyB0b3RhbCkNCj4gYW5kDQo+ID4+IGFkZGluZyBtb3JlIHdvcmtlcnMg YWN0dWFsbHkgY2F1c2VzIGEgcmVkdWN0aW9uIGluIHRocm91Z2hwdXQuICAgSW4gbXkNCj4gc2V0 dXANCj4gPj4gdGhpcyBpcyBhYm91dCAxMk1wcHMuICAgVGhlIHNhbWUgc2V0dXAgcnVubmluZyB0 ZXN0cG1kIHdpbGwgcmVhY2ggPjI1TXBwcw0KPiA+PiB1c2luZyBvbmx5IDEgY29yZS4NCj4gPg0K PiA+IFJhdyBmb3J3YXJkaW5nIG9mIGEgcGFja2V0IGlzIGxlc3Mgd29yayB0aGFuIGZvcndhcmRp bmcgYW5kIGxvYWQtYmFsYW5jaW5nDQo+ID4gYWNyb3NzIG11bHRpcGxlIGNvcmVzLiBNb3JlIHdv cmsgbWVhbnMgbW9yZSBDUFUgY3ljbGVzIHNwZW50IHBlciBwYWNrZXQsDQo+IGhlbmNlIGxlc3Mg bXBwcy4NCj4gDQo+IG9rLg0KPiANCj4gPg0KPiA+DQo+ID4+IFRoaXMgaXMgdGhlIGV2ZW50ZGV2 IGNvbW1hbmQgbGluZS4NCj4gPj4gZXZlbnRkZXZfcGlwZWxpbmUgLWwgMCwxLTYgLXcwMDAwOjAy OjAwLjAgLS12ZGV2IGV2ZW50X3N3MCAtLSAtcjIgLXQ0IC1lOA0KPiAtDQo+ID4+IHc3MCAtczEg LW4wIC1jMTI4IC1XMCAtRA0KPiA+DQo+ID4gVGhlIC1XMCBpbmRpY2F0ZXMgdG8gcGVyZm9ybSB6 ZXJvIGN5Y2xlcyBvZiB3b3JrIG9uIGVhY2ggd29ya2VyIGNvcmUuDQo+ID4gVGhpcyBtYWtlcyBl YWNoIG9mIHRoZSAzIHdvcmtlciBjb3JlcyB2ZXJ5IGZhc3QgaW4gcmV0dXJuaW5nIHdvcmsgdG8g dGhlDQo+ID4gc2NoZWR1bGVyIGNvcmUsIGFuZCBwdXRzIGV4dHJhIHByZXNzdXJlIG9uIHRoZSBz Y2hlZHVsZXIuIE5vdGUgdGhhdCBpbiBhDQo+ID4gcmVhbC13b3JsZCB1c2UtY2FzZSB5b3UgcHJl c3VtYWJseSB3YW50IHRvIGRvIHdvcmsgb24gZWFjaCBvZiB0aGUgd29ya2VyDQo+ID4gY29yZXMs IHNvIHRoZSBjb21tYW5kIGFib3ZlICh3aGlsZSB2YWxpZCBmb3IgdW5kZXJzdGFuZGluZyBob3cg aXQgd29ya3MsDQo+ID4gYW5kIHBlcmZvcm1hbmNlIG9mIGNlcnRhaW4gdGhpbmdzKSBpcyBub3Qg ZXhwZWN0ZWQgdG8gYmUgdXNlZCBpbg0KPiBwcm9kdWN0aW9uLg0KPiA+DQo+ID4gSSdtIG5vdCBz dXJlIGhvdyBmYW1pbGlhciB5b3UgYXJlIHdpdGggQ1BVIGNhY2hlcywgYnV0IGl0IGlzIHdvcnRo DQo+IHVuZGVyc3RhbmRpbmcNCj4gPiB0aGF0IHJlYWRpbmcgdGhpcyAibG9jYWxseSIgZnJvbSBM MSBvciBMMiBjYWNoZSBpcyB2ZXJ5IGZhc3QgY29tcGFyZWQgdG8NCj4gPiBjb21tdW5pY2F0aW5n IHdpdGggYW5vdGhlciBjb3JlLg0KPiA+DQo+ID4gR2l2ZW4gdGhhdCB3aXRoIC1XMCB0aGUgd29y a2VyIGNvcmVzIGFyZSB2ZXJ5IGZhc3QsIHRoZSBzY2hlZHVsZXIgY2FuDQo+IHJhcmVseQ0KPiA+ IHJlYWQgZGF0YSBsb2NhbGx5IC0gaXQgYWx3YXlzIGhhcyB0byBjb21tdW5pY2F0ZSB3aXRoIG90 aGVyIGNvcmVzLg0KPiA+DQo+ID4gVHJ5IGFkZGluZyAtVzEwMDAgb3Igc28sIGFuZCBwZXJoYXBz IDQgd29ya2VyIGNvcmVzLiBUaGUgMTAwMCBjeWNsZXMgb2YNCj4gd29yaw0KPiA+IHBlciBldmVu dCBtaW1pYyBkb2luZyBhY3R1YWwgd29yayBvbiBlYWNoIGV2ZW50Lg0KPiANCj4gQWRkaW5nIHdv cmsgd2l0aCAtVyByZWR1Y2VzIHBlcmZvcm1hbmNlLg0KDQpPSyAtIHRoYXQgbWVhbnMgdGhhdCB0 aGUgd29ya2VyIGNvcmVzIGFyZSBhdCBsZWFzdCBwYXJ0IG9mIHRoZSBib3R0bGVuZWNrLg0KSWYg dGhleSB3ZXJlIHZlcnkgaWRsZSwgYWRkaW5nIHNvbWUgd29yayB0byB0aGVtIHdvdWxkIG5vdCBo YXZlIGNoYW5nZWQNCnRoZSBwZXJmb3JtYW5jZS4NCg0KPiBJIG1vZGlmeSBldmVudGRldl9waXBl bGluZSB0byBwcmludCB0aGUgY29udGVudHMgb2YNCj4gcnRlX2V2ZW50X2V0aF9yeF9hZGFwdGVy X3N0YXRzIGZvciB0aGUgZGV2aWNlLiAgSW4gcGFydGljdWxhciBJIHByaW50IHRoZQ0KPiByeF9l bnFfcmV0cnkgYW5kIHJ4X3BvbGxfY291bnQgdmFsdWVzIGZvciB0aGUgcmVjZWl2ZSB0aHJlYWQu ICAgIE9uY2UgSSBnZXQNCj4gdG8gYSBsb2FkIGxldmVsIHdoZXJlIHBhY2tldHMgYXJlIGRyb3Bw ZWQgSSBzZWUgdGhhdCB0aGUgbnVtYmVyIG9mIHJldGlyZXMNCj4gZXF1YWxzIG9yIGV4Y2VlZHMg dGhlIHBvbGwgY291bnQgKGFzIEkgaW5jcmVhc2UgdGhlIGxvYWQgdGhlIHJldHJpZXMgZXhjZWVk cw0KPiB0aGUgcG9sbCBjb3VudCkuDQo+DQo+IEkgdGhpbmsgdGhpcyBpbmRpY2F0ZXMgdGhhdCB0 aGUgU2NoZWR1bGVyIGlzIG5vdCBrZWVwaW5nIHVwLiAgVGhhdCBjb3VsZCBiZQ0KPiAoSSBhc3N1 bWUpIGJlY2F1c2UgdGhlIHdvcmtlcnMgYXJlIG5vdCBjb25zdW1pbmcgZmFzdCBlbm91Z2guICBI b3dldmVyIGlmIEkNCj4gaW5jcmVhc2UgdGhlIG51bWJlciBvZiB3b3JrZXJzIHRoZW4gdGhlIHJh dGlvIG9mIHJldHJ5IHRvIHBvbGxfY291bnQgKGluIHRoZQ0KPiByeCB0aHJlYWQpIGdvZXMgdXAs IGZvciBleGFtcGxlIGFkZGluZyA0IG1vcmUgd29ya2VycyBhbmQgdGhlIHJldHJpZXM6cG9sbA0K PiByYXRpb24gYmVjb21lcyA1OjENCj4gDQo+IFNlZW1zIGxpa2UgdGhpcyBpcyBpbmRpY2F0aW5n IHRoYXQgdGhlIFNjaGVkdWxlciBpcyB0aGUgYm90dGxlbmVjaz8NCg0KU28gSSBnYXRoZXIgeW91 IGhhdmUgIHByb3RvdHlwZWQgdGhlIHBpcGVsaW5lIHlvdSB3YW50IHRvIHJ1biB3aXRoIHRoZQ0K ZXZlbnRkZXZfcGlwZWxpbmUgc2FtcGxlIGFwcD8gV291bGQgeW91IHNoYXJlIHRoZSBjb21tYW5k IGxpbmUgYmVpbmcNCnVzZWQgd2l0aCB0aGUgZXZlbnRkZXZfcGlwZWxpbmUgc2FtcGxlIGFwcCwg YW5kIEkgY2FuIHRyeSByZXByb2R1Y2UgLyB1bmRlcnN0YW5kLg0KDQpPbmUgb2YgdGhlIGVhc2ll c3QgbWlzdGFrZXMgKHRoYXQgSSBtYWtlIHJlZ3VsYXJseSA6KSBpcyB0aGF0IHRoZSBSWC9UWC9T Y2hlZA0KY29yZSBvdmVybGFwLCB3aGljaCBjYXVzZXMgZXhjZXNzaXZlIHdvcmsgdG8gYmUgcGVy Zm9ybWVkIG9uIG9uZSB0aHJlYWQsDQpyZWR1Y2luZyBvdmVyYWxsIHBlcmZvcm1hbmNlLg0KDQoN Cj4gPj4gVGhpcyBpcyB0aGUgdGVzdGVkIGNvbW1hbmQgbGluZS4NCj4gPj4gdGVzdHBtZCAtdzAw MDA6MDI6MDAuMCAtbCAwLDEgLS0gLWkgLS1uYi1jb3JlIDEgLS1udW1hIC0tcnhxIDEgLS10eHEg MSAtLQ0KPiA+PiBwb3J0LXRvcG9sb2d5PWxvb3ANCj4gPj4NCj4gPj4NCj4gPj4gSeKAmW0gZ3Vl c3NpbmcgdGhhdCBpdHMgZWl0aGVyIHRoZSBSWCBvciBTY2hlZCB0aGF04oCZcyB0aGUgYm90dGxl bmVjayBpbiBteQ0KPiA+PiBldmVudGRldl9waXBlbGluZSBzZXR1cC4NCj4gPg0KPiA+IEdpdmVu IHRoYXQgeW91IHN0YXRlIHRlc3RwbWQgaXMgY2FwYWJsZSBvZiBmb3J3YXJkaW5nIGF0ID4yNSBt cHBzIG9uIHlvdXINCj4gPiBwbGF0Zm9ybSBpdCBpcyBzYWZlIHRvIHJ1bGUgb3V0IFJYLCBzaW5j ZSB0ZXN0cG1kIGlzIHBlcmZvcm1pbmcgdGhlIFJYIGluDQo+ID4gdGhhdCBmb3J3YXJkaW5nIHdv cmtsb2FkLg0KPiA+DQo+ID4gV2hpY2ggbGVhdmVzIHRoZSBzY2hlZHVsZXIgLSBhbmQgaW5kZWVk IHRoZSBzY2hlZHVsZXIgaXMgcHJvYmFibHkgd2hhdCBpcw0KPiA+IHRoZSBsaW1pdGluZyBmYWN0 b3IgaW4gdGhpcyBjYXNlLg0KPiANCj4geWVzIHNlZW1zIHNvLg0KPiANCj4gPg0KPiA+DQo+ID4+ IFNvIEkgZmlyc3QgdHJpZWQgdG8gdXNlIDIgY29yZXMgZm9yIFJYICgtcjYpLCBwZXJmb3JtYW5j ZSB3ZW50IGRvd24uICAgSXQNCj4gPj4gc2VlbXMgdGhhdCBjb25maWd1cmluZyAyIFJYIGNvcmVz IHN0aWxsIG9ubHkgc2V0cyB1cCAxIGgvdyByZWNlaXZlIHJpbmcNCj4gYW5kDQo+ID4+IGFjY2Vz cyB0byB0aGF0IG9uZSByaW5nIGlzIGFsdGVybmF0ZWQgYmV0d2VlbiB0aGUgdHdvIGNvcmVzPyAg ICBTbyB0aGF0DQo+ID4+IGRvZXNu4oCZdCBoZWxwLg0KPiA+DQo+ID4gQ29ycmVjdCAtIGl0IGlz IGludmFsaWQgdG8gdXNlIHR3byBDUFUgY29yZXMgb24gYSBzaW5nbGUgUlggcXVldWUgd2l0aG91 dA0KPiA+IHNvbWUgZm9ybSBvZiBzZXJpYWxpemF0aW9uIChvdGhlcndpc2UgaXQgY2F1c2VzIHJh Y2UtY29uZGl0aW9ucykuIFRoZQ0KPiA+IGV2ZW50ZGV2X3BpcGVsaW5lIHNhbXBsZSBhcHAgaGVs cGZ1bGx5IHByb3ZpZGVzIHRoYXQgLSBidXQgdGhlcmUgaXMgYQ0KPiBwZXJmb3JtYW5jZQ0KPiA+ IGltcGFjdCBvbiBkb2luZyBzby4gVXNpbmcgdHdvIFJYIHRocmVhZHMgb24gYSBzaW5nbGUgUlgg cXVldWUgaXMgZ2VuZXJhbGx5DQo+ID4gbm90IHJlY29tbWVuZGVkLg0KPiA+DQo+ID4NCj4gPj4g TmV4dCwgSSBjb3VsZCB1c2UgMiBzY2hlZHVsZXIgY29yZXMsICBidXQgaG93IGRvZXMgdGhhdCB3 b3JrLCBkbyB0aGV5DQo+IGFnYWluDQo+ID4+IGFsdGVybmF0ZT8gICBJbiBhbnkgY2FzZSB0aHJv dWdocHV0IGlzIHJlZHVjZWQgYnkgNTAlIGluIHRoYXQgdGVzdC4NCj4gPg0KPiA+IFllcywgZm9y IHRoZSBzYW1lIHJlYXNvbi4gVGhlIGV2ZW50X3N3MCBQTUQgZG9lcyBub3QgYWxsb3cgbXVsdGlw bGUNCj4gdGhyZWFkcw0KPiA+IHRvIHJ1biBpdCBhdCB0aGUgc2FtZSB0aW1lLCBhbmQgaGVuY2Ug dGhlIHNlcmlhbGl6YXRpb24gaXMgaW4gcGxhY2UgdG8NCj4gZW5zdXJlDQo+ID4gdGhhdCB0aGUg cmVzdWx0cyBhcmUgdmFsaWQuDQo+ID4NCj4gPg0KPiA+PiB0aGFua3MgZm9yIGFueSBpbnNpZ2h0 cywNCj4gPj4gdG9ueQ0KPiA+DQo+ID4gVHJ5IHRoZSBzdWdnZXN0aW9uIGFib3ZlIG9mIGFkZGlu ZyB3b3JrIHRvIHRoZSB3b3JrZXIgY29yZXMgLSB0aGlzIHNob3VsZA0KPiA+ICJiYWxhbmNlIG91 dCIgdGhlIGN1cnJlbnQgc2NoZWR1bGluZyBib3R0bGVuZWNrLCBhbmQgcGxhY2Ugc29tZSBtb3Jl IG9uDQo+ID4gZWFjaCB3b3JrZXIgY29yZS4gVHJ5IHZhbHVlcyBvZiA1MDAsIDc1MCwgMTAwMCwg MTUwMCBhbmQgMjUwMCBvciBzby4NCj4gPg0KPiA+IEFwYXJ0IGZyb20gdGhhdCwgSSBzaG91bGQg dHJ5IHRvIHVuZGVyc3RhbmQgeW91ciBpbnRlbmRlZCB1c2UgYmV0dGVyLg0KPiA+IElzIHRoaXMg YW4gYWNhZGVtaWMgaW52ZXN0aWdhdGlvbiBpbnRvIHRoZSBwZXJmb3JtYW5jZSwgb3IgZG8geW91 IGhhdmUNCj4gPiBzcGVjaWZpYyBnb2FscyBpbiBtaW5kPyBJcyBkeW5hbWljIGxvYWQtYmFsYW5j aW5nIGFzIHRoZSBldmVudF9zdyBwcm92aWRlcw0KPiA+IHJlcXVpcmVkLCBvciB3b3VsZCBhIHNp bXBsZXIgKGFuZCBoZW5jZSBwb3NzaWJseSBtb3JlIHBlcmZvcm1hbnQpIG1ldGhvZA0KPiBzdWZm aWNlPw0KPiA+DQo+IA0KPiBPdXIgY3VycmVudCBhcHAgdXNlcyB0aGUgc3RhbmRhcmQgdGVzdHBt ZCBzdHlsZSBvZiBlYWNoIGNvcmUgZG9lcyByeC0+d29yay0NCj4gPnR4LCB0aGUgcGFja2V0cyBh cmUgc3ByZWFkIGFjcm9zcyB0aGUgY29yZXMgdXNpbmcgUlNTIGluIHRoZSBldGhlcm5ldA0KPiBk ZXZpY2UuICAgVGhpcyB3b3JrcyBmaW5lIHByb3ZpZGVkIHRoZSB0cmFmZmljIGlzIGRpdmVyc2Uu ICBFbGVwaGFudCBmbG93cw0KPiBhcmUgYSBwcm9ibGVtIHRob3VnaCwgc28gd2XigJlkIGxpa2Ug dGhlIG9wdGlvbiBvZiBkaXN0cmlidXRpbmcgdGhlIHBhY2tldHMgaW4NCj4gdGhlIHdheSB0aGF0 IGV2ZW50ZGV2X3BpcGxpbmUgLXAgZG9lcyAoeWVzIEkgdW5kZXJzdGFuZCBpbXBsaWNhdGlvbnMg d2l0aA0KPiByZW9yZGVyaW5nKS4gICBTbyBldmVudGRldiBsb29rcyBpbnRlcmVzdGluZy4gICBT byBJIHdhcyB0cnlpbmcgdG8gZ2V0IGFuDQo+IGlkZWEgb2Ygd2hhdCB0aGUgcGVyZm9ybWFuY2Ug aW1wbGljYXRpb24gd291bGQgYmUgaW4gdXNpbmcgZXZlbnRkZXYuDQoNClllcywgdmFsaWQgdXNl IGNhc2UsIHlvdSdyZSBvbiB0aGUgcmlnaHQgdHJhY2sgSSBzdXBwb3NlLiBIYXZlIHlvdSB0aG91 Z2h0IGFib3V0DQp3aGF0IENQVSBidWRnZXQgeW91J3JlIHdpbGxpbmcgdG8gc3BlbmQgdG8gZ2V0 IHRoZSBmdW5jdGlvbmFsaXR5IG9mIGR5bmFtaWNhbGx5DQpzcHJlYWRpbmcgKGVsZXBoYW50IG9y IHNtYWxsZXIpIGZsb3dzIGFjcm9zcyBjb3Jlcz8NCg0K