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 06E872B96 for ; Fri, 15 Apr 2016 11:01:06 +0200 (CEST) Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by fmsmga101.fm.intel.com with ESMTP; 15 Apr 2016 02:01:05 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.24,486,1455004800"; d="scan'208";a="686684235" Received: from irsmsx153.ger.corp.intel.com ([163.33.192.75]) by FMSMGA003.fm.intel.com with ESMTP; 15 Apr 2016 02:01:04 -0700 Received: from irsmsx103.ger.corp.intel.com ([169.254.3.12]) by IRSMSX153.ger.corp.intel.com ([169.254.9.178]) with mapi id 14.03.0248.002; Fri, 15 Apr 2016 10:01:03 +0100 From: "Singh, Jasvinder" To: Matheus Salgueiro Castanho , "users@dpdk.org" Thread-Topic: [dpdk-users] Configuring Routing module in ip_pipeline Thread-Index: AQHRlPRPWUujzozphkK/a7BtkZmdVp+Kvd0g Date: Fri, 15 Apr 2016 09:01:03 +0000 Message-ID: <54CBAA185211B4429112C315DA58FF6DE0B360@IRSMSX103.ger.corp.intel.com> References: In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiNDlmMWQ0YmEtMzlkYS00N2QyLTlmZDQtMzY4ZmFjZTg0MjY0IiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX0lDIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE1LjkuNi42IiwiVHJ1c3RlZExhYmVsSGFzaCI6IlVlS1JNbjZsTGFLZE9zaHEwSWlwaVRIU0o2b3VNTlRYcDVORzRpS3J4RHM9In0= x-ctpclassification: CTP_IC 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-users] Configuring Routing module in ip_pipeline X-BeenThere: users@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: usage discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Apr 2016 09:01:07 -0000 SGkgTWF0aGV1cywNCg0KPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiB1c2Vy cyBbbWFpbHRvOnVzZXJzLWJvdW5jZXNAZHBkay5vcmddIE9uIEJlaGFsZiBPZiBNYXRoZXVzDQo+ IFNhbGd1ZWlybyBDYXN0YW5obw0KPiBTZW50OiBUdWVzZGF5LCBBcHJpbCAxMiwgMjAxNiA4OjQ4 IFBNDQo+IFRvOiB1c2Vyc0BkcGRrLm9yZw0KPiBTdWJqZWN0OiBbZHBkay11c2Vyc10gQ29uZmln dXJpbmcgUm91dGluZyBtb2R1bGUgaW4gaXBfcGlwZWxpbmUNCj4gDQo+IERlYXIgRFBESyBjb21t dW5pdHksDQo+IA0KPiBBcyBzYWlkIG9uIG15IHByZXZpb3VzIGVtYWlscyB0byB0aGlzIGxpc3Qs IHdlJ3ZlIGJlZW4gc3R1ZHlpbmcgdGhlDQo+IGlwX3BpcGVsaW5lIGV4YW1wbGUgYXBwbGljYXRp b24gaW4gb3JkZXIgdG8gbGVhcm4gbW9yZSBhYm91dCBob3cgRFBESw0KPiB3b3JrcyBhbmQsIGF0 IHRoZSBzYW1lIHRpbWUsIHRvIGJ1aWxkIGEgbWVhbmluZ2Z1bCBEUERLIGFwcGxpY2F0aW9uIGZv ciBvdXINCj4gcHVycG9zZXMuIEluaXRpYWxseSwgd2Ugd2FudCB0byBjcmVhdGUgYSBzaW1wbGUg ZmlyZXdhbGwgZHBkayBhcHBsaWNhdGlvbiB0aGF0IGlzDQo+IGFibGUgdG8gcmVjZWl2ZSBwYWNr ZXRzIGZyb20gb25lIElQIG5ldHdvcmsgYW5kIHJvdXRlIHRoZSBwYWNrZXRzIHRvIGENCj4gZGlm ZmVyZW50IElQIG5ldHdvcmsgaWYgdGhlcmUgaXMgYW4gZXhwbGljaXQgQUNMIHJ1bGUgYWxsb3dp bmcgaXQNCj4gKGRlZmF1bHQ6IGRyb3ApLg0KPiANCj4gT3VyIHNpbXBsZSB0ZXN0IGNvbnNpZGVy cyB0aGF0IHRoZSBzb3VyY2UgaG9zdCAoMTAuMC4wLjEpLCB3aGljaCBpcyBjb25uZWN0ZWQNCj4g dG8gb25lIGZpcmV3YWxsIGludGVyZmFjZSAoMTAuMC4wLjIpLCBzZW5kcyBhIHBpbmcgdG8gdGhl IGRlc3RpbmF0aW9uIGhvc3QNCj4gKDEwLjEwLjAuMSksIHdoaWNoIGlzIGNvbm5lY3RlZCB0byB0 aGUgb3RoZXIgZmlyZXdhbGwgaW50ZXJmYWNlICgxMC4xMC4wLjIpLg0KPiBSaWdodCBub3csIHdl IHVzZSB0aGUgZmlyZXdhbGwgcGlwZWxpbmUgbW9kdWxlIHRvIGZpbHRlciBwYWNrZXRzIGFjY29y ZGluZyB0bw0KPiB0aGUgcnVsZXMgd2UgYXBwbGllZDoNCj4gDQo+IHAgMSBmaXJld2FsbCBhZGQg aXB2NCAxIDEwLjAuMC4xIDMyIDEwLjEwLjAuMSAzMiAwIDY1NTM1IDAgNjU1MzUgNiAwIDEgcCAx IGZpcmV3YWxsDQo+IGFkZCBpcHY0IDIgMTAuMTAuMC4xIDMyIDEwLjAuMC4xIDMyIDAgNjU1MzUg MCA2NTUzNSA2IDAgMA0KPiANCj4gQXMgb3VyIGRwZGsgYXBwbGljYXRpb24gZG9lcyBub3QgcmVw bHkgdG8gQVJQIHJlcXVlc3RzLCB3ZSBtYW51YWxseSBhZGRlZA0KPiBhbiBBUlAgZW50cnkgaW4g dGhlIHNvdXJjZSBob3N0ICgxMC4wLjAuMSkgaW5kaWNhdGluZyB0aGUgTUFDIGFkZHJlc3Mgb2Yg dGhlDQo+IGZpcmV3YWxsIGludGVyZmFjZSAoMTAuMC4wLjIpLCB3aGljaCBpcyBhbHNvIGl0cyBk ZWZhdWx0IGdhdGV3YXkuIEJ5IGNhcHR1cmluZyB0aGUNCj4gcGFja2V0IGJlZm9yZSBhbmQgYWZ0 ZXIgdGhlIGZpcmV3YWxsLCB3ZSBjaGVja2VkIHRoZSBmaXJld2FsbCBtb2R1bGUNCj4gc3VjY2Vz c2Z1bGx5IGFwcGxpZXMgdGhlIEFDTCBydWxlcywgYnV0IG5vdyB3ZSBuZWVkIHRoZSBkcGRrIGFw cGxpY2F0aW9uIHRvDQo+IHRyYW5zbGF0ZSB0aGUgZGVzdGluYXRpb24gSVAgKDEwLjEwLjAuMSkg aW50byBhIE1BQyBhZGRyZXNzIHVzaW5nIEFSUCwNCj4gYXNzZW1ibGUgdGhlIG5ldyBwYWNrZXQg YW5kIHJvdXRlIGl0IHZpYSBpdHMgb3V0cHV0IGludGVyZmFjZSAoMTAuMTAuMC4yKS4NCj4gDQo+ IEFmdGVyIHJlYWRpbmcgdGhlIGRvY3VtZW50YXRpb24sIHdlIHJlYWxpemVkIGl0IGlzIG5lY2Vz c2FyeSB0byBhZGQgdGhlDQo+IFJvdXRpbmcgbW9kdWxlIHRvIHRoZSBwaXBlbGluZSBpbiBvcmRl ciB0byBwZXJmb3JtIEFSUCBmdW5jdGlvbmFsaXR5IGFuZA0KPiBwYWNrZXQgZW5jYXBzdWxhdGlv bi4gSXMgdGhhdCBjb3JyZWN0PyBJZiB0aGF0IGlzIHRydWUsIHdlIHdvdWxkIHJlYWxseQ0KPiBh cHByZWNpYXRlIHNvbWUgaGVscCB0byBjb25maWd1cmUgb3VyIGlwX3BpcGVsaW5lIGFwcGxpY2F0 aW9uIGFzIHdlIHdlcmUgbm90DQo+IGFibGUgdG8gZmluZCBkb2N1bWVudGF0aW9uIG9uIHRoZSBj b25maWd1cmF0aW9uIHBhcmFtZXRlcnMuDQo+IA0KDQp5ZXMsIGlmIHlvdSB3YW50IGhvc3QgdG8g cm91dGUgdGhlIGluY29taW5nIHBhY2tldHMgdG8gdGhlIGZpcmV3YWxsIGludGVyZmFjZSwgIHJv dXRpbmcgcGlwZWxpbmUgbmVlZHMgdG8gYmUgaW50ZWdyYXRlZCBpbnRvIHlvdXIgYXBwbGljYXRp b24uIEluIHRoZSBzYW1wbGUgcm91dGluZyBwaXBlbGluZSwgIGZhc3QtcGF0aCBBUlAgY2FuIGJl IGRpc2FibGVkIG9yIGVuYWJsZWQgZGVwZW5kaW5nIHVwb24gdGhlIHJlcXVpcmVtZW50LiBXaGVu IEFSUCBpcyBkaXNhYmxlZCwgZW50cmllcyBpbiByb3V0aW5nIHRhYmxlIGVudHJpZXMgY2FuIGJl IHdyaXR0ZW4gdXNpbmcgZm9sbG93aW5nIENMSSBjb21tYW5kLA0KIA0KIHAgPHBpcGVsaW5lIGlk PiByb3V0ZSBhZGQgPHN1Ym5ldCBpcD4gPGRlcHRoPiBwb3J0IDxwb3J0IG5vPiBldGhlciA8IG1h YyBhZGRyZXNzPg0KIA0KSWYgQVJQIGlzIGVuYWJsZWQsIGZvbGxvd2luZyBDTEkgY29tbWFuZCBp cyAgdXNlZCBmb3IgYWRkaW5nIGVudHJpZXMgaW50byByb3V0aW5nIHRhYmxlIGFuZCBhcnAgdGFi bGUgcmVzcGVjdGl2ZWx5Ow0KDQpwIDxwaXBlbGluZSBpZD4gcm91dGUgYWRkIDxzdWJuZXQgaXA+ IDxkZXB0aD4gcG9ydCA8cG9ydCBubz4gZXRoZXIgPG5leHQgaG9wIGlwPiAgKGZvciByb3V0aW5n IHRhYmxlKQ0KDQpwIDxwaXBlbGluZSBpZD4gYXJwIGFkZCA8cG9ydCBubz4gPG5leHQgaG9wIGlw PiA8bWFjIGFkZHJlc3M+ICAgIChmb3IgYXJwIHRhYmxlKQ0KDQoNCj4gSW4gdGhlIGlwX3BpcGVs aW5lL2NvbmZpZyBkaXJlY3RvcnkgYSBmZXcgLnNoIGZpbGVzIHNob3cgaG93IGNvbmZpZ3VyZSBh DQo+IHJvdXRpbmcgcGlwZWxpbmUgYnV0IGFjY29yZGluZyB0byBjb21tZW50cyBpbnNpZGUgdGhl bSwgYWxsIGhhdmUgQVJQDQo+IGRpc2FibGVkLiBUaHJvdWdoIHRoZSAidGFiIGNvbXBsZXRpb24i IGZlYXR1cmUgaW5zaWRlIHRoZSBhcHBsaWNhdGlvbidzIENMSSwNCj4gd2UgZm91bmQgdGhhdCB0 aGVyZSBpcyBhbiBhcnAgYWRkIGNvbW1hbmQ6ICJwIDwjPiBhcnAgYWRkIDxpcD4gPG1hYz4iLg0K PiBCdXQgd2UgZGlkbid0IHVuZGVyc3RhbmQgd2hhdCBpdCByZWFsbHkgZG9lcy4gRmlyc3Qgd2Ug dGhvdWdodCBvZiBpdCBhcyBhDQo+IGNvbW1hbmQgdG8gYWRkIGVudHJpZXMgaW4gdGhlIGFwcGxp Y2F0aW9uJ3MgQVJQIFRhYmxlLCBidXQgaGF2aW5nIHRvIGFkZA0KPiBldmVyeSBlbnRyeSBtYW51 YWxseSBkb2Vzbid0IHNvdW5kIGdvb2QuIEFsc28sIHdlIHdlcmUgbm90IGFibGUgdG8gYWRkDQo+ IG1vcmUgdGhhbiAxIGVudHJ5IGF0IGEgdGltZSAodGhlIGFwcGxpY2F0aW9uIGdpdmVzIENvbW1h bmQgRmFpbGVkIGZyb20gMm5kDQo+IHRpbWUgb24pLg0KPiANCj4gcCAyIGFycCBhZGQgMCAxMC4w LjAuMSA8IGlmYWNlIDEwLjAuMC4xIE1BQyA+IHAgMiBhcnAgYWRkIDEgMTAuMTAuMC4xIDwgaWZh Y2UNCj4gMTAuMTAuMC4xIE1BQyA+DQo+IA0KPiBUaGlzIGlzIG91ciBjb25maWcgZmlsZSBhcyBp cywgd2l0aCBhbiBpbGx1c3RyYXRpb24gb2Ygb3VyIGN1cnJlbnQgc2V0dXAuDQo+IEluIHRoaXMg Y2FzZSwgcG9ydCAwIGlzIHRoZSBpbnB1dCBwb3J0IChJUCAxMC4wLjAuMikgYW5kIHBvcnQgMSBp cyB0aGUgb3V0cHV0IHBvcnQNCj4gKElQIDEwLjEwLjAuMikuDQo+IA0KPiA7LS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiA7ICAgICAgICAgICAgICAgICAgICAgIFBhY2tl dCBSeCAmICAgICAgICAgICAgICAgICAgUm91dGluZw0KPiA6ICAgICAgICAgICAgICAgICAgICAg ICAgICBGaXJld2FsbA0KPiA7ICAgICAgICAgICAgICAgICAgICAgIF9fX19fX19fX18gICAgICAg ICAgICAgICBfX19fX19fX19fDQo+IDsgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAg ICAgICAgICB8ICAgICAgICAgICAgIHwNCj4gICAgfA0KPiA7ICAgICAgICAgICAgICAgICAgICAg fCAgICAgICAgICAgICAgICAgICAgfCBTV1EwIHwgICAgICAgICAgICAgICAgICAgICB8DQo+IDsg UlhRMC4wIC0tLT58ICAgICAgICAgICAgICAgICAgICAgfC0tLS0tLS0tLT58ICAgICAgICAgICAg ICAgICAgICB8LS0tLS0tPg0KPiBUWFEwLjANCj4gOyAgICAgICAgICAgICAgICAgICAgIHwgICAg ICAgKFAxKSAgICAgIHwgU1dRMSAgfCAgICAgICAoUDIpICAgICAgfA0KPiA7IFJYUTEuMCAtLS0+ fCAgICAgICAgICAgICAgICAgICAgIHwtLS0tLS0tLS0+fCAgICAgICAgICAgICAgICAgICAgfC0t LS0tLT4NCj4gVFhRMS4wDQo+IDsgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAg ICAgICB8ICAgICAgICAgICAgIHwNCj4gICAgfA0KPiA7ICAgICAgICAgICAgICAgICAgICAgfCAg ICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICB8DQo+ICAgIHwNCj4gOyAgICAgICAgICAg ICAgICAgICAgIHxfX19fX19fX19ffCAgICAgICAgICAgICB8X19fX19fX19fX3wNCj4gOyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB8DQo+IDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICstLT4gU0lOSzAgKERl Zi4pICAgICAgKy0tPiBTSU5LMQ0KPiANCj4gDQo+IFtQSVBFTElORTBdDQo+IHR5cGUgPSBNQVNU RVINCj4gY29yZSA9IDANCj4gDQo+IFtQSVBFTElORTFdDQo+IHR5cGUgPSBGSVJFV0FMTA0KPiBj b3JlID0gMQ0KPiBwa3RxX2luID0gUlhRMC4wIFJYUTEuMA0KPiBwa3RxX291dCA9IFNXUTAgU1dR MSBTSU5LMA0KPiANCj4gW1BJUEVMSU5FMl0NCj4gdHlwZSA9IFJPVVRJTkcNCj4gY29yZSA9IDIN Cj4gcGt0cV9pbiA9IFNXUTAgU1dRMQ0KPiBwa3RxX291dCA9IFRYUTAuMCBUWFExLjAgU0lOSzEN Cj4gZW5jYXAgPSBldGhlcm5ldDsgZW5jYXAgPSBldGhlcm5ldCAvIGV0aGVybmV0X3FpbnEgLyBl dGhlcm5ldF9tcGxzDQo+IGlwX2hkcl9vZmZzZXQgPSAyNzANCj4gDQo+IDstLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiAtLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gDQo+IFdlIHdlcmUgYWxzbyBu b3QgcGFydGljdWxhcmx5IHN1cmUgYWJvdXQgdGhlICJlbmNhcCIgYW5kICJpcF9oZHJfb2Zmc2V0 Ig0KPiBwYXJhbWV0ZXJzIGZvciB0aGUgUm91dGluZyBwaXBlbGluZSBidXQgd2Ugc2F3IGl0IHNv bWV3aGVyZSBlbHNlIGFuZCB0cmllZA0KPiB0byB0ZXN0IHRoZW0uIEluIG91ciBjYXNlLCB3ZSBh cmUgY29ubmVjdGluZyB0d28gSVAgbmV0d29ya3Mgd2l0aG91dCBhbnkNCj4gZXh0cmEgdHVubmVs aW5nL2VuY2Fwc3VsYXRpb24uDQoNClRoZSAiZW5jYXAiIGFsbG93cyB1c2VycyB0byBzZWxlY3Qg dGhlIHR5cGUgb2YgZW5jYXBzdWxhdGlvbiBhY2NvcmRpbmcgdG8gbmV4dCBob3AgcHJvdG9jb2wg c3VjaCBhcyBxaW5xLCBtcGxzIG9yIGV0aGVybmV0LiAgRGVmYXVsdCB2YWx1ZSBvZiAiZW5jYXAi IGlzICJldGhlcm5ldCIuICAiaXBfaGRyX29mZnNldCIgaXMgdGhlIG9mZnNldCBhdCB3aGljaCBp cCBoZWFkZXIgc3RhcnRzIGluIHRoZSBwYWNrZXQuIEluIGNhc2UsIHlvdSB3YW50IHRvIGVuYWJs ZSBBUlAgdGFibGUsICJhcnBfa2V5X29mZnNldCIgIGFuZCAibl9hcnBfZW50cmllcyIgKG1lbnRp b25lZCBpbiBjb25maWd1cmF0aW9uIGJlbG93ICkgbmVlZHMgdG8gYmUgc3BlY2lmaWVkIGluIHRo ZSBjb25maWd1cmF0aW9uIGZpbGUgYWxvbmcgd2l0aCBlYXJsaWVyIHR3byBmaWVsZHMuICAiYXJw X2tleV9vZmZzZXQiIHJlc2VydmVzIHRoZSBsb2NhdGlvbiB0byBzdG9yZSB0aGUgYXJwIGtleSBj b21wdXRlZCBmcm9tIHBhY2tldCBoZWFkZXIgZmllbGRzIGFuZCB3aWxsIGJlIHVzZWQgZm9yIGFy cCB0YWJsZS4gIFRoZXJlZm9yZSwgaWYgeW91IHdhbnQgdG8gZW5hYmxlIGFycCB0YWJsZSBpbiBy b3V0aW5nIHBpcGVsaW5lLCAgY29uZmlndXJhdGlvbiBzaG91bGQgbG9vayBsaWtlIGFzIGJlbG93 Ow0KDQpbUElQRUxJTkVdDQp0eXBlID0gUk9VVElORw0KY29yZSA9IDENCnBrdHFfaW4gPSBSWFEw LjAgUlhRMS4wIFJYUTIuMCBSWFEzLjANCnBrdHFfb3V0ID0gVFhRMC4wIFRYUTEuMCBUWFEyLjAg VFhRMy4wDQplbmNhcCA9IGV0aGVybmV0DQpuX2FycF9lbnRyaWVzID0gMTAyNA0KaXBfaGRyX29m ZnNldCA9IDI3MDsgbWJ1ZiAoMTI4KSArIGhlYWRyb29tICgxMjgpICsgZXRoZXJuZXQgaGVhZGVy ICgxNCkgPSAyNzANCmFycF9rZXlfb2Zmc2V0ID0gMTkyOyBtYnVmICgxMjgpICsgNjQNCg0KDQo+ IFNvIGZpbmFsbHksIG91ciBxdWVzdGlvbnMgYXJlOg0KPiAtIFdlIHdvdWxkIGxvdmUgaWYgc29t ZW9uZSBjb3VsZCBzaGluZSBzb21lIGxpZ2h0IGludG8gaG93IHdlIGNhbg0KPiBjb25maWd1cmUg b3VyIGFwcGxpY2F0aW9uIHRvIGRpc2NvdmVyIG5leHQgaG9wIE1BQyBhZGRyZXNzIHZpYSBBUlAg cmVxdWVzdHMNCj4gYW5kIHJlYXNzZW1ibGUvcm91dGUgdGhlIHBhY2tldCB0byB0aGUgZGVzdGlu YXRpb24gKGp1c3QgbGlrZSBhIHJvdXRlciBkb2VzKS4NCg0KQ3VycmVudCBpcF9waXBlbGluZSBp bXBsZW1lbnRhdGlvbiBkb2Vzbid0IGluY2x1ZGUgc3VjaCBtZWNoYW5pc20gdG8gaGFuZGxlIEFS UCByZXF1ZXN0cyAoQVJQIGNvbnRyb2wgcGxhbmUgcHJvY2Vzc2luZykuIElmIHlvdSB3b3VsZCBs aWtlIHRvIHByb3Bvc2UgYSBzb2x1dGlvbiwgd2Ugd2lsbCB3ZWxjb21lIHRoYXQgOikNCg0KPiAt IEFmdGVyIHdlIGFjY29tcGxpc2ggdGhpcyB0YXNrIGluIGEgcGh5c2ljYWwgbWFjaGluZSwgaXMg dGhlcmUgYW55DQo+IGNvbmZpZ3VyYXRpb24gbGVmdCBpbiBvdXIgc2V0dXAgaW4gb3JkZXIgdG8g ZW5hYmxlIHRoZSBzYW1lIHNpbXBsZSBmaXJld2FsbA0KPiBhcHBsaWNhdGlvbiBpbiBhIHZpcnR1 YWwgbWFjaGluZT8NCg0KSSBndWVzcywgdGhlcmUgaXMgbm8gc3BlY2lmaWMgY29uZmlndXJhdGlv biByZXF1aXJlbWVudCB0byBlbmFibGUgaXBfcGlwZWxpbmUgYXBwbGljYXRpb24gaW4gVk0uDQoN Cj4gQXMgYW4gZW5kIG5vdGUsIEkgd291bGQgbGlrZSB0byBhc2sgaWYgdGhlIG9ubHkgZG9jdW1l bnRhdGlvbiByZWdhcmRpbmcgdGhlDQo+IGlwX3BpcGVsaW5lIGFwcGxpY2F0aW9uIGlzIHRoZSBv bmUgaW4gdGhlIERQREsgU2FtcGxlIEFwcGxpY2F0aW9ucyBVc2VyDQo+IEd1aWRlLiBBbHRob3Vn aCBpdCBkb2VzIGEgZ29vZCBqb2IgZXhwbGFpbmluZyB0aGUgaW5uZXIgd29ya2luZ3Mgb2YgdGhl DQo+IGlwX3BpcGVsaW5lIGFwcGxpY2F0aW9uIGFuZCBob3cgdGhlIFBhY2tldCBGcmFtZXdvcmsg d2FzIHVzZWQgdG8gYnVpbGQgaXQsDQo+IHdlIGNvdWxkIG5vdCBmaW5kIGRlc2NyaXB0aW9uIG9m IGFjdHVhbCB1c2Ugb2YgdGhlIGFwcGxpY2F0aW9uLCBzdWNoIGFzIGxpc3RzIG9mDQo+IHNwZWNp ZmljIENMSSBjb21tYW5kcyBhbmQgY29uZmlnIHBhcmFtZXRlcnMgZm9yIGVhY2ggcGlwZWxpbmUg dHlwZS4gSQ0KPiB1bmRlcnN0YW5kIHRoYXQgdGhlIHB1cnBvc2Ugb2YgdGhlIGV4YW1wbGUgYXBw bGljYXRpb25zIGlzIHRvIGRlbW9uc3RyYXRlDQo+IHVzYWdlIG9mIERQREsgbGlicmFyeSwgYnV0 LCBmb3Igc3VjaCBhIHJlcHJlc2VudGF0aXZlIGFuZCBzb21ld2hhdA0KPiBwb3dlcmZ1bCBhcHBs aWNhdGlvbiwgaXQgd291bGQgYmUgdmVyeSB1c2VmdWwgdG8gaGF2ZSBhIG1vcmUgZXh0ZW5zaXZl IHVzZQ0KPiBkb2N1bWVudGF0aW9uIChpZiB0aGVyZSBpc24ndCBvbmUgYWxyZWFkeSkgdG8gaGVs cCBwZW9wbGUgdG8gcXVpY2tseSBidWlsZA0KPiBEUERLLWVuYWJsZWQgYXBwcyBmb3IgdGVzdGlu ZyAod2hpY2ggaXMgb3VyIGNhc2UpIGFuZCBldmFsdWF0aW9uLg0KDQp3aWxsIGRvIGFzIHNvb24g YXMgcG9zc2libGUuIFRoYW5rIHlvdSBmb3IgeW91ciBpbnRlcmVzdC4NCg0KSmFzdmluZGVyDQoN Cj4gVGhhbmsgeW91IGFsbCBvbmNlIGFnYWluIGZvciB0YWtpbmcgeW91ciB0aW1lIHRvIHJlYWQg dGhpcyBlbWFpbCBhbmQgaG9wZWZ1bGx5DQo+IGFuc3dlcmluZyBpdCBpZiB5b3UgY2FuLg0KPiAN Cj4gVGhpcyBsaXN0IGhhcyBiZWVuIG9mIGdyZWF0IGhlbHAgaW4gdW5kZXJzdGFuZGluZyBtb3Jl IG9mIERQREsuDQo+IA0KPiBSZWdhcmRzLA0KPiBNYXRoZXVzIFNhbGd1ZWlybyBDYXN0YW5obw0K