From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by dpdk.org (Postfix) with ESMTP id 650875A65 for ; Mon, 15 Jun 2015 23:46:54 +0200 (CEST) Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmsmga101.fm.intel.com with ESMTP; 15 Jun 2015 14:46:53 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.13,621,1427785200"; d="scan'208";a="743959656" Received: from irsmsx103.ger.corp.intel.com ([163.33.3.157]) by fmsmga002.fm.intel.com with ESMTP; 15 Jun 2015 14:46:52 -0700 Received: from irsmsx108.ger.corp.intel.com ([169.254.11.59]) by IRSMSX103.ger.corp.intel.com ([169.254.3.215]) with mapi id 14.03.0224.002; Mon, 15 Jun 2015 22:46:52 +0100 From: "Dumitrescu, Cristian" To: Thomas Monjalon Thread-Topic: [dpdk-dev] [PATCH] doc: guidelines for library statistics Thread-Index: AQHQpD7oX2CqAdvLxE+2Ef+GFDf5zJ2uEfGQ Date: Mon, 15 Jun 2015 21:46:51 +0000 Message-ID: <3EB4FA525960D640B5BDFFD6A3D89126323766AC@IRSMSX108.ger.corp.intel.com> References: <1433775024-29866-1-git-send-email-cristian.dumitrescu@intel.com> <1611677.koeNccEWQN@xps13> In-Reply-To: <1611677.koeNccEWQN@xps13> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [163.33.239.180] Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 Cc: "dev@dpdk.org" Subject: Re: [dpdk-dev] [PATCH] doc: guidelines for library statistics X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Jun 2015 21:46:55 -0000 DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogVGhvbWFzIE1vbmphbG9u IFttYWlsdG86dGhvbWFzLm1vbmphbG9uQDZ3aW5kLmNvbV0NCj4gU2VudDogVGh1cnNkYXksIEp1 bmUgMTEsIDIwMTUgMTowNSBQTQ0KPiBUbzogRHVtaXRyZXNjdSwgQ3Jpc3RpYW4NCj4gQ2M6IGRl dkBkcGRrLm9yZw0KPiBTdWJqZWN0OiBSZTogW2RwZGstZGV2XSBbUEFUQ0hdIGRvYzogZ3VpZGVs aW5lcyBmb3IgbGlicmFyeSBzdGF0aXN0aWNzDQo+IA0KPiBIaSBDcmlzdGlhbiwNCj4gDQo+IFRo YW5rcyBmb3IgdHJ5aW5nIHRvIG1ha2UgYSBwb2xpY3kgY2xlYXJlci4NCj4gV2UgbmVlZCB0byBt YWtlIGEgZGVjaXNpb24gaW4gdGhlIGNvbWluZyB3ZWVrLg0KPiBCZWxvdyBhcmUgY29tbWVudHMg b24gdGhlIHN0eWxlIGFuZCBjb250ZW50Lg0KPiANCj4gMjAxNS0wNi0wOCAxNTo1MCwgQ3Jpc3Rp YW4gRHVtaXRyZXNjdToNCj4gPiAgZG9jL2d1aWRlcy9ndWlkZWxpbmVzL3N0YXRpc3RpY3MucnN0 IHwgNDINCj4gKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrDQo+IA0KPiBNYXli ZSB3ZSBzaG91bGQgaGF2ZSBhIG1vcmUgZ2VuZXJhbCBmaWxlIGxpa2UgZGVzaWduLnJzdC4NCg0K SSBhbSBub3Qgc3VyZSBJIGNvcnJlY3RseSB1bmRlcnN0b29kIHlvdXIgc3VnZ2VzdGlvbi4gRG8g eW91IHdhbnQgdGhlIHNlY3Rpb24gb24gc3RhdGlzdGljcyB0byBiZSBjYWxsZWQgZGVzaWduLnJz dD8gRG8geW91IHdhbnQgaXQgdG8gYmUgcGFydCBvZiBkb2MvZ3VpZGVzL2d1aWRlbGluZXMgb3Ig Y3JlYXRlIGEgYnJhbmQgbmV3IGRvY3VtZW50Pw0KVG8gbWUsIHRoZSBpbml0aWFsIGlkZWEgb2Yg ZG9jL2d1aWRlbGluZXMvc3RhdGlzdGljcy5yc3QgbWFrZXMgbW9yZSBzZW5zZSwgYnV0IEkgYW0g ZmluZSBlaXRoZXIgd2F5Lg0KDQo+IEluIG9yZGVyIHRvIGhhdmUgYSBsb3Qgb2YgcmVhZGVycyBv ZiBzdWNoIGd1aWRlbGluZXMsIHRoZXkgbXVzdCBiZSBjb25jaXNlLg0KDQpJIHJlb3JkZXJlZCB0 aGUgc2VjdGlvbnMgdG8gcHJvdmlkZSB0aGUgZ3VpZGVsaW5lcyBmaXJzdCBhbmQgdGhlIG1vdGl2 YXRpb24gYWZ0ZXJ3YXJkcy4gSSB0aGluayBpdCBpcyBnb29kIHRvIGtlZXAgdGhlIG1vdGl2YXRp b24gdG9nZXRoZXIgd2l0aCB0aGUgZ3VpZGVsaW5lcy4gRG8geW91IHN1Z2dlc3QgdG8gcmVtb3Zl IHRoZSBtb3RpdmF0aW9uIGZyb20gdGhpcyBkb2N1bWVudD8NCg0KPiANCj4gUGxlYXNlIHdyYXAg bGluZXMgdG8gYmUgbm90IHRvbyBsb25nIGFuZC9vciBzcGxpdCBsaW5lcyBhZnRlciB0aGUgZW5k IG9mIGENCj4gc2VudGVuY2UuDQoNCkRvbmUgaW4gbmV4dCB2ZXJzaW9uLg0KDQo+IA0KPiA+ICtM aWJyYXJ5IFN0YXRpc3RpY3MNCj4gPiArPT09PT09PT09PT09PT09PT09DQo+ID4gKw0KPiA+ICtE ZXNjcmlwdGlvbg0KPiA+ICstLS0tLS0tLS0tLQ0KPiA+ICsNCj4gPiArVGhpcyBkb2N1bWVudCBk ZXNjcmliZXMgdGhlIGd1aWRlbGluZXMgZm9yIERQREsgbGlicmFyeS1sZXZlbCBzdGF0aXN0aWNz DQo+IGNvdW50ZXIgc3VwcG9ydC4gVGhpcyBpbmNsdWRlcyBndWlkZWxpbmVzIGZvciB0dXJuaW5n IGxpYnJhcnkgc3RhdGlzdGljcyBvbiBhbmQNCj4gb2ZmLCByZXF1aXJlbWVudHMgZm9yIHByZXZl bnRpbmcgQUJJIGNoYW5nZXMgd2hlbiBsaWJyYXJ5IHN0YXRpc3RpY3MgYXJlDQo+IHR1cm5lZCBv biBhbmQgb2ZmLCBldGMuDQo+IA0KPiBTaG91bGQgd2UgY29uc2lkZXIgdGhhdCBkcml2ZXIgc3Rh dHMgYW5kIGxpYiBzdGF0cyBhcmUgZGlmZmVyZW50IGluIERQREs/IFdoeT8NCg0KSSBkaWQgdXBk YXRlIHRoZSBkb2N1bWVudCB0byBtYWtlIGl0IGNsZWFyIHRoZXNlIGd1aWRlbGluZXMgYXJlIGFw cGxpY2FibGUgZm9yIHRoZSBjYXNlIHdoZW4gdGhlIHN0YXRzIGNvdW50ZXJzIGFyZSBtYWludGFp bmVkIGJ5IHRoZSBsaWJyYXJ5IGl0c2VsZi4NCkkgdGhpbmsgdGhlIHByaW1hcnkgZGlmZmVyZW5j ZSBpcyB3aGV0aGVyIHRoZSBzdGF0cyBjb3VudGVycyBhcmUgaW1wbGVtZW50ZWQgYnkgdGhlIEhX IChlLmcuIE5JQykgb3IgaW4gU1cgYnkgdGhlIENQVS4NCiogSW4gdGhlIGZpcnN0IGNhc2UsIHRo ZSBDUFUgZG9lcyBub3Qgc3BlbmQgY3ljbGVzIG1haW50YWluaW5nIHRoZSBjb3VudGVycy4gU3lz dGVtIHJlc291cmNlcyBtaWdodCBiZSBjb25zdW1lZCBieSB0aGUgTklDIGZvciBtYWludGFpbmlu ZyB0aGUgY291bnRlcnMgKGUuZy4gbWVtb3J5IGJhbmR3aWR0aCksIHNvIHNvbWV0aW1lcyB0aGUg TklDcyBwcm92aWRlIG1lY2hhbmlzbXMgdG8gZW5hYmxlL2Rpc2FibGUgc3RhdHMsIHdoaWNoIGlz IGRvbmUgYXMgcGFydCBvZiBpbml0IGNvZGUgcmF0aGVyIHRoYW4gYnVpZCB0aW1lLg0KKiBJbiB0 aGUgc2Vjb25kIGNhc2UsIHRoZSBDUFUgbWFpbnRhaW5zIHRoZSBjb3VudGVycywgd2hpY2ggY29t ZXMgYXQgdGhlIHVzdWFsIGNvc3Qgb2YgY3ljbGVzIGFuZCBzeXN0ZW0gcmVzb3VyY2VzLiBUaGVz ZSBndWlkZWxpbmVzIGZvY3VzIG9uIHRoaXMgY2FzZS4NCg0KPiANCj4gPiArTW90aXZhdGlvbiB0 byBhbGxvdyB0aGUgYXBwbGljYXRpb24gdG8gdHVybiBsaWJyYXJ5IHN0YXRpc3RpY3Mgb24gYW5k IG9mZg0KPiA+ICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+ID4gKw0KPiA+ICtJdCBpcyBoaWdobHkgcmVj b21tZW5kZWQgdGhhdCBlYWNoIGxpYnJhcnkgcHJvdmlkZXMgc3RhdGlzdGljcyBjb3VudGVycyB0 bw0KPiBhbGxvdyB0aGUgYXBwbGljYXRpb24gdG8gbW9uaXRvciB0aGUgbGlicmFyeS1sZXZlbCBy dW4tdGltZSBldmVudHMuIFR5cGljYWwNCj4gY291bnRlcnMgYXJlOiBudW1iZXIgb2YgcGFja2V0 cyByZWNlaXZlZC9kcm9wcGVkL3RyYW5zbWl0dGVkLCBudW1iZXIgb2YNCj4gYnVmZmVycyBhbGxv Y2F0ZWQvZnJlZWQsIG51bWJlciBvZiBvY2N1cnJlbmNlcyBmb3Igc3BlY2lmaWMgZXZlbnRzLCBl dGMuDQo+ID4gKw0KPiA+ICtTaW5jZSB0aGUgcmVzb3VyY2VzIGNvbnN1bWVkIGZvciBsaWJyYXJ5 LWxldmVsIHN0YXRpc3RpY3MgY291bnRlciBjb2xsZWN0aW9uDQo+IGhhdmUgdG8gYmUgc3BlbnQg b3V0IG9mIHRoZSBhcHBsaWNhdGlvbiBidWRnZXQgYW5kIHRoZSBjb3VudGVycyBjb2xsZWN0ZWQg YnkNCj4gc29tZSBsaWJyYXJpZXMgbWlnaHQgbm90IGJlIHJlbGV2YW50IGZvciB0aGUgY3VycmVu dCBhcHBsaWNhdGlvbiwgaW4gb3JkZXIgdG8NCj4gYXZvaWQgYW55IHVud2FudGVkIHdhc3RlIG9m IHJlc291cmNlcyBhbmQvb3IgcGVyZm9ybWFuY2UgZm9yIHRoZQ0KPiBhcHBsaWNhdGlvbiwgdGhl IGFwcGxpY2F0aW9uIGlzIHRvIGRlY2lkZSBhdCBidWlsZCB0aW1lIHdoZXRoZXIgdGhlIGNvbGxl Y3Rpb24NCj4gb2YgbGlicmFyeS1sZXZlbCBzdGF0aXN0aWNzIGNvdW50ZXJzIHNob3VsZCBiZSB0 dXJuZWQgb24gb3Igb2ZmIGZvciBlYWNoIGxpYnJhcnkNCj4gaW5kaXZpZHVhbGx5Lg0KPiANCj4g SXQgd291bGQgYmUgZ29vZCB0byBoYXZlIGFja25vd2xlZGdlbWVudHMgb3Igb3RoZXIgb3Bpbmlv bnMgb24gdGhpcy4NCj4gU29tZSBvZiB0aGVtIHdlcmUgZXhwcmVzc2VkIGluIG90aGVyIHRocmVh ZHMuIFBsZWFzZSBjb21tZW50IGhlcmUuDQo+IA0KPiA+ICtMaWJyYXJ5LWxldmVsIHN0YXRpc3Rp Y3MgY291bnRlcnMgY2FuIGJlIHJlbGV2YW50IG9yIG5vdCBmb3Igc3BlY2lmaWMNCj4gYXBwbGlj YXRpb25zOg0KPiA+ICsqIEZvciBhcHBsaWNhdGlvbiBBLCBjb3VudGVycyBtYWludGFpbmVkIGJ5 IGxpYnJhcnkgWCBhcmUgYWx3YXlzIHJlbGV2YW50DQo+IGFuZCB0aGUgYXBwbGljYXRpb24gbmVl ZHMgdG8gdXNlIHRoZW0gdG8gaW1wbGVtZW50IGNlcnRhaW4gZmVhdHVyZXMsIGFzDQo+IHRyYWZm aWMgYWNjb3VudGluZywgbG9nZ2luZywgYXBwbGljYXRpb24tbGV2ZWwgc3RhdGlzdGljcywgZXRj LiBJbiB0aGlzIGNhc2UsIHRoZQ0KPiBhcHBsaWNhdGlvbiByZXF1aXJlcyB0aGF0IGNvbGxlY3Rp b24gb2Ygc3RhdGlzdGljcyBjb3VudGVycyBmb3IgbGlicmFyeSBYIGlzIGFsd2F5cw0KPiB0dXJu ZWQgb247DQo+ID4gKyogRm9yIGFwcGxpY2F0aW9uIEIsIGNvdW50ZXJzIG1haW50YWluZWQgYnkg bGlicmFyeSBYIGFyZSBvbmx5IHVzZWZ1bCBkdXJpbmcNCj4gdGhlIGFwcGxpY2F0aW9uIGRlYnVn IHN0YWdlIGFuZCBub3QgcmVsZXZhbnQgb25jZSBkZWJ1ZyBwaGFzZSBpcyBvdmVyLiBJbg0KPiB0 aGlzIGNhc2UsIHRoZSBhcHBsaWNhdGlvbiBtYXkgZGVjaWRlIHRvIHR1cm4gb24gdGhlIGNvbGxl Y3Rpb24gb2YgbGlicmFyeSBYDQo+IHN0YXRpc3RpY3MgY291bnRlcnMgZHVyaW5nIHRoZSBkZWJ1 ZyBwaGFzZSBhbmQgbGF0ZXIgb24gdHVybiB0aGVtIG9mZjsNCj4gDQo+IFVzZXJzIG9mIGJpbmFy eSBwYWNrYWdlIGhhdmUgbm90IHRoaXMgY2hvaWNlLg0KDQpUaGVyZSBpcyBhIHNlY3Rpb24gaW4g dGhlIGRvY3VtZW50IGFib3V0IGFsbG93aW5nIHN0YXRzIHRvIGJlIHR1cm5lZCBvbi9vZmYgd2l0 aG91dCBBQkkgaW1wYWN0Lg0KDQo+IA0KPiA+ICsqIEZvciBhcHBsaWNhdGlvbiBDLCBjb3VudGVy cyBtYWludGFpbmVkIGJ5IGxpYnJhcnkgWCBhcmUgbm90IHJlbGV2YW50IGF0IGFsbC4NCj4gSXQg bWlnaHQgbWUgdGhhdCB0aGUgYXBwbGljYXRpb24gbWFpbnRhaW5zIGl0cyBvd24gc2V0IG9mIHN0 YXRpc3RpY3MgY291bnRlcnMNCj4gdGhhdCBtb25pdG9yIGEgZGlmZmVyZW50IHNldCBvZiBydW4t dGltZSBldmVudHMgdGhhbiBsaWJyYXJ5IFggKGUuZy4gbnVtYmVyIG9mDQo+IGNvbm5lY3Rpb24g cmVxdWVzdHMsIG51bWJlciBvZiBhY3RpdmUgdXNlcnMsIGV0YykuIEl0IG1pZ2h0IGFsc28gYmUg dGhhdA0KPiBhcHBsaWNhdGlvbiB1c2VzIG11bHRpcGxlIGxpYnJhcmllcyAobGlicmFyeSBYLCBs aWJyYXJ5IFksIGV0YykgYW5kIGl0IGlzIGludGVyZXN0ZWQNCj4gaW4gdGhlIHN0YXRpc3RpY3Mg Y291bnRlcnMgb2YgbGlicmFyeSBZLCBidXQgbm90IGluIHRob3NlIG9mIGxpYnJhcnkgWC4gSW4g dGhpcyBjYXNlLA0KPiB0aGUgYXBwbGljYXRpb24gbWF5IGRlY2lkZSB0byB0dXJuIHRoZSBjb2xs ZWN0aW9uIG9mIHN0YXRpc3RpY3MgY291bnRlcnMgb2ZmIGZvcg0KPiBsaWJyYXJ5IFggYW5kIG9u IGZvciBsaWJyYXJ5IFkuDQo+ID4gKw0KPiA+ICtUaGUgc3RhdGlzdGljcyBjb2xsZWN0aW9uIGNv bnN1bWVzIGEgY2VydGFpbiBhbW91bnQgb2YgQ1BVIHJlc291cmNlcw0KPiAoY3ljbGVzLCBjYWNo ZSBiYW5kd2lkdGgsIG1lbW9yeSBiYW5kd2lkdGgsIGV0YykgdGhhdCBkZXBlbmRzIG9uOg0KPiA+ ICsqIE51bWJlciBvZiBsaWJyYXJpZXMgdXNlZCBieSB0aGUgY3VycmVudCBhcHBsaWNhdGlvbiB0 aGF0IGhhdmUgc3RhdGlzdGljcw0KPiBjb3VudGVycyBjb2xsZWN0aW9uIHR1cm5lZCBvbjsNCj4g PiArKiBOdW1iZXIgb2Ygc3RhdGlzdGljcyBjb3VudGVycyBtYWludGFpbmVkIGJ5IGVhY2ggbGli cmFyeSBwZXIgb2JqZWN0IHR5cGUNCj4gaW5zdGFuY2UgKGUuZy4gcGVyIHBvcnQsIHRhYmxlLCBw aXBlbGluZSwgdGhyZWFkLCBldGMpOw0KPiA+ICsqIE51bWJlciBvZiBpbnN0YW5jZXMgY3JlYXRl ZCBmb3IgZWFjaCBvYmplY3QgdHlwZSBzdXBwb3J0ZWQgYnkgZWFjaA0KPiBsaWJyYXJ5Ow0KPiA+ ICsqIENvbXBsZXhpdHkgb2YgdGhlIHN0YXRpc3RpY3MgbG9naWMgY29sbGVjdGlvbiBmb3IgZWFj aCBjb3VudGVyOiB3aGVuIG9ubHkNCj4gc29tZSBvY2N1cnJlbmNlcyBvZiBhIHNwZWNpZmljIGV2 ZW50IGFyZSB2YWxpZCwgc2V2ZXJhbCBjb25kaXRpb25hbCBicmFuY2hlcw0KPiBtaWdodCBpbnZv bHZlZCBpbiB0aGUgZGVjaXNpb24gb2Ygd2hldGhlciB0aGUgY3VycmVudCBvY2N1cnJlbmNlIG9m IHRoZQ0KPiBldmVudCBzaG91bGQgYmUgY291bnRlZCBvciBub3QgKGUuZy4gb24gdGhlIGV2ZW50 IG9mIHBhY2tldCByZWNlcHRpb24sIG9ubHkNCj4gVENQIHBhY2tldHMgd2l0aCBkZXN0aW5hdGlv biBwb3J0IHdpdGhpbiBhIGNlcnRhaW4gcmFuZ2Ugc2hvdWxkIGJlIHJlY29yZGVkKSwNCj4gZXRj Lg0KPiA+ICsNCj4gPiArTWVjaGFuaXNtIHRvIGFsbG93IHRoZSBhcHBsaWNhdGlvbiB0byB0dXJu IGxpYnJhcnkgc3RhdGlzdGljcyBvbiBhbmQgb2ZmDQo+ID4gKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiA+ ICsNCj4gPiArRWFjaCBsaWJyYXJ5IHRoYXQgcHJvdmlkZXMgc3RhdGlzdGljcyBjb3VudGVycyBz aG91bGQgcHJvdmlkZSBhIHNpbmdsZSBidWlsZA0KPiB0aW1lIGZsYWcgdGhhdCBkZWNpZGVzIHdo ZXRoZXIgdGhlIHN0YXRpc3RpY3MgY291bnRlciBjb2xsZWN0aW9uIGlzIGVuYWJsZWQgb3INCj4g bm90IGZvciB0aGlzIGxpYnJhcnkuIFRoaXMgZmxhZyBzaG91bGQgYmUgZXhwb3NlZCBhcyBhIHZh cmlhYmxlIHdpdGhpbiB0aGUgRFBESw0KPiBjb25maWd1cmF0aW9uIGZpbGUuIFdoZW4gdGhpcyBm bGFnIGlzIHNldCwgYWxsIHRoZSBjb3VudGVycyBzdXBwb3J0ZWQgYnkgY3VycmVudA0KPiBsaWJy YXJ5IGFyZSBjb2xsZWN0ZWQ7IHdoZW4gdGhpcyBmbGFnIGlzIGNsZWFyZWQsIG5vbmUgb2YgdGhl IGNvdW50ZXJzDQo+IHN1cHBvcnRlZCBieSB0aGUgY3VycmVudCBsaWJyYXJ5IGFyZSBjb2xsZWN0 ZWQ6DQo+ID4gKw0KPiA+ICsJI0RQREsgZmlsZSDigJwuL2NvbmZpZy9jb21tb25fbGludXhhcHDi gJ0sDQo+IOKAnC4vY29uZmlnL2NvbW1vbl9ic2RhcHDigJ0sIGV0Yw0KPiA+ICsJQ09ORklHX1JU RV9MSUJSVEVfPExJQlJBUllfTkFNRT5fQ09MTEVDVF9TVEFUUz15L24NCj4gDQo+IFdoeSBub3Qg c2ltcGx5IENPTkZJR19SVEVfTElCUlRFXzxMSUJSQVJZX05BTUU+X1NUQVRTICh3aXRob3V0DQo+ IENPTExFQ1QpPw0KPiANCg0KVGhlIHJlYXNvbiBJIHByb3Bvc2UgdGhlIG5hbWUgU1RBVFNfQ09M TEVDVCByYXRoZXIgdGhhbiBqdXN0IFNUQVRTIGlzIHRvIGdpdmUgYSBzdHJvbmcgaGludCB0aGF0 IGNvdW50ZXJzIGFyZSBhbHdheXMgYWxsb2NhdGVkIGFuZCB0aGUgc3RhdHMgQVBJIGlzIGFsd2F5 cyBhdmFpbGFibGUsIHdoaWxlIGp1c3QgdGhlIGNvbGxlY3Rpb24vdXBkYXRlIG9mIHRoZSBjb3Vu dGVycyBpcyBjb25maWd1cmFibGUuIFRoZSBzaW1wbGUgU1RBVFMgbWVudGlvbiBtaWdodCBkcml2 ZSBzb21lIGxpYnJhcnkgZGV2ZWxvcGVycyB0byBtYWtlIHRoZSBzdGF0cyBBUEkgY29tcGlsZWQg aW4gYW5kIG91dCwgd2hpY2ggaXMgc29tZXRoaW5nIHdlIHdhbnQgdG8gcHJldmVudCBpbiBvcmRl ciB0byBhdm9pZCBBQkkgY2hhbmdlcy4gSSBkb24ndCBoYXZlIGEgc3Ryb25nIHByZWZlcmVuY2Ug dGhvdWdoLCBpZiB5b3Ugc3RpbGwgdGhpbmsgU1RBVFMgaXMgYmV0dGVyIHRoYW4gU1RBVFNfQ09M TEVDVCwgbGV0IG1lIGtub3cuDQoNCj4gPiArVGhlIGRlZmF1bHQgdmFsdWUgZm9yIHRoaXMgRFBE SyBjb25maWd1cmF0aW9uIGZpbGUgdmFyaWFibGUgKGVpdGhlciDigJx5ZXPigJ0gb3INCj4g4oCc bm/igJ0pIGlzIGxlZnQgYXQgdGhlIGRlY2lzaW9uIG9mIGVhY2ggbGlicmFyeS4NCj4gPiArDQo+ ID4gK1ByZXZlbnRpb24gb2YgQUJJIGNoYW5nZXMgZHVlIHRvIGxpYnJhcnkgc3RhdGlzdGljcyBz dXBwb3J0DQo+ID4gKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tDQo+ID4gKw0KPiA+ICtUaGUgbGF5b3V0IG9mIGRhdGEgc3RydWN0dXJl cyBhbmQgcHJvdG90eXBlIG9mIGZ1bmN0aW9ucyB0aGF0IGFyZSBwYXJ0IG9mDQo+IHRoZSBsaWJy YXJ5IEFQSSBzaG91bGQgbm90IGJlIGFmZmVjdGVkIGJ5IHdoZXRoZXIgdGhlIGNvbGxlY3Rpb24g b2Ygc3RhdGlzdGljcw0KPiBjb3VudGVycyBpcyB0dXJuZWQgb24gb3Igb2ZmIGZvciB0aGUgY3Vy cmVudCBsaWJyYXJ5LiBJbiBwcmFjdGljYWwgdGVybXMsIHRoaXMNCj4gbWVhbnMgdGhhdCBzcGFj ZSBpcyBhbHdheXMgYWxsb2NhdGVkIGluIHRoZSBBUEkgZGF0YSBzdHJ1Y3R1cmVzIGZvciBzdGF0 aXN0aWNzDQo+IGNvdW50ZXJzIGFuZCB0aGUgc3RhdGlzdGljcyByZWxhdGVkIEFQSSBmdW5jdGlv bnMgYXJlIGFsd2F5cyBidWlsdCBpbnRvIHRoZQ0KPiBjb2RlLCByZWdhcmRsZXNzIG9mIHdoZXRo ZXIgdGhlIHN0YXRpc3RpY3MgY291bnRlciBjb2xsZWN0aW9uIGlzIHR1cm5lZCBvbiBvcg0KPiBv ZmYgZm9yIHRoZSBjdXJyZW50IGxpYnJhcnkuDQo+ID4gKw0KPiA+ICtXaGVuIHRoZSBjb2xsZWN0 aW9uIG9mIHN0YXRpc3RpY3MgY291bnRlcnMgZm9yIHRoZSBjdXJyZW50IGxpYnJhcnkgaXMgdHVy bmVkDQo+IG9mZiwgdGhlIGNvdW50ZXJzIHJldHJpZXZlZCB0aHJvdWdoIHRoZSBzdGF0aXN0aWNz IHJlbGF0ZWQgQVBJIGZ1bmN0aW9ucyBzaG91bGQNCj4gaGF2ZSB0aGUgZGVmYXVsdCB2YWx1ZSBv ZiB6ZXJvLg0KDQo=