From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by dpdk.org (Postfix) with ESMTP id 837148E7C for ; Fri, 4 Dec 2015 13:29:26 +0100 (CET) Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga103.fm.intel.com with ESMTP; 04 Dec 2015 04:29:25 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.20,380,1444719600"; d="scan'208";a="834235800" Received: from irsmsx104.ger.corp.intel.com ([163.33.3.159]) by orsmga001.jf.intel.com with ESMTP; 04 Dec 2015 04:29:24 -0800 Received: from irsmsx109.ger.corp.intel.com ([169.254.13.96]) by IRSMSX104.ger.corp.intel.com ([169.254.5.138]) with mapi id 14.03.0248.002; Fri, 4 Dec 2015 12:27:33 +0000 From: "Pattan, Reshma" To: Ilir Iljazi , "users@dpdk.org" Thread-Topic: [dpdk-users] DPDK KNI Issue Thread-Index: AQHRLhVDG5PwIfsRd0G530zupxVMVZ66vnYg Date: Fri, 4 Dec 2015 12:27:32 +0000 Message-ID: <3AEA2BF9852C6F48A459DA490692831FF89E31@IRSMSX109.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-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] DPDK KNI Issue 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, 04 Dec 2015 12:29:27 -0000 SGksDQoNCkkgaGFkIHRyaWVkIEtOSSBwaW5nIHRlc3Rpbmcgb24gZmVkb3JhICwgIERQREsyLjIg YW5kIHVzaW5nIG9uZSBsb29wYmFjayBjb25uZWN0aW9uLCBpdCB3b3JrcyBmaW5lIGFuZCBJIHRy aWVkIHdpdGhvdXQgc3RlcHMgOSBhbmQgMTAuDQpJIGFtIG5vdCBzdXJlIHdoeSBzdGVwcyA5ICYg MTAgYXJlIG5lZWRlZCBpbiB5b3VyIGNhc2UsIGJ1dCB5b3UgY2FuIHRyeSB3aXRob3V0IHRob3Nl IDIgc3RlcHMgYW5kIHNlZSB0aGUgcmVzdWx0cy4gDQpBbHNvLCBhZnRlciB5b3Ugc3RhcnQgdGhl IHBpbmcsIG1ha2Ugc3VyZSB0aGVyZSBpcyBubyBjb3JlIGR1bXAgaW4gZG1lc2cgZm9yIEtOSSBt b2R1bGUuDQpJZiB1ciBydW5uaW5nIHRjcGR1bXAgd2l0aCBpY21wIGZpbHRlciB0cnkgcnVubmlu ZyB3aXRob3V0IGZpbHRlciBhbmQgZmlyc3Qgc2VlIGlmIEFSUCBwYWNrZXRzIGFyZSByZWFjaGlu ZyB0byBLTkkgb3Igbm90Lg0KQWxzbyBjYW4geW91IGNoZWNrIGlmIHBhY2tldCBkcm9wIHN0YXRz IG9mIGtuaSBpZmFjZSBpbmNyZWFzaW5nPw0KDQpUaGFua3MsDQpSZXNobWENCg0KPiAtLS0tLU9y aWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiB1c2VycyBbbWFpbHRvOnVzZXJzLWJvdW5jZXNA ZHBkay5vcmddIE9uIEJlaGFsZiBPZiBJbGlyIElsamF6aQ0KPiBTZW50OiBUaHVyc2RheSwgRGVj ZW1iZXIgMywgMjAxNSA5OjU1IFBNDQo+IFRvOiB1c2Vyc0BkcGRrLm9yZw0KPiBTdWJqZWN0OiBb ZHBkay11c2Vyc10gRFBESyBLTkkgSXNzdWUNCj4gDQo+IEhpLA0KPiBJIGhhdmUgYmVlbiBoYXZp bmcgYW4gaXNzdWUgd2l0aCBkcGRrIGtuaSB3aGVyZWJ5IEkgY2FudCBzZW5kIGFuZCByZWNlaXZl DQo+IHBhY2tldHMgZnJvbSB0aGUga25pIGludGVyZmFjZS4gSSBzcGVudCBhYm91dCBhIHdlZWsg dHJ5aW5nIHRvIGZpZ3VyZSBpdCBvdXQgdGhlDQo+IGlzc3VlIG15c2VsZiB0byBubyBhdmFpbC4g QWx0aG91Z2ggSSBkaWQgZmluZCBhcnRpY2xlcyB3aXRoIGEgc2ltaWxhciBzaWduYXR1cmUgdG8N Cj4gbWluZSBub25lIG9mIHRoZSBwcm9wb3NlZCBzb2x1dGlvbnMgaGVscGVkIHNvbHZlIHRoZSBw cm9ibGVtLg0KPiANCj4gRW52aXJvbm1lbnQ6DQo+IFVidW50dSBTZXJ2ZXIgMTQuMDQNCj4gRFBE SyBQYWNrYWdlIDIuMS4wIChMYXRlc3QpDQo+IE5ldHdvcmsgQ2FyZDogKDEwR2JlIGl4Z2JlIGRy aXZlcikNCj4gDQo+IDA2OjAwLjAgRXRoZXJuZXQgY29udHJvbGxlcjogSW50ZWwgQ29ycG9yYXRp b24gODI1OTlFUyAxMC1HaWdhYml0IFNGSS9TRlArDQo+IE5ldHdvcmsgQ29ubmVjdGlvbg0KPiAw NjowMC4xIEV0aGVybmV0IGNvbnRyb2xsZXI6IEludGVsIENvcnBvcmF0aW9uIDgyNTk5RVMgMTAt R2lnYWJpdCBTRkkvU0ZQKw0KPiBOZXR3b3JrIENvbm5lY3Rpb24NCj4gDQo+IDA2LjAwLjAgKHBv cnQgMCBjb25uZWN0ZWQgdG8gc3dpdGNoKQ0KPiAwNjowMC4xIChwb3J0IDEgbm90IGNvbm5lY3Rl ZCB0byBzd2l0Y2gpDQo+IA0KPiBDb25maWd1cmF0aW9uOg0KPiAxLikgRFBESyBidWlsdCB3aXRo b3V0IGlzc3VlDQo+IDIuKSBNb2R1bGVzIExvYWRlZDoNCj4gDQo+IGluc21vZCAkUlRFX1RBUkdF VC9rbW9kL2lnYl91aW8ua28NCj4gaW5zbW9kICRSVEVfVEFSR0VUL2ttb2QvcnRlX2tuaS5rbyBr dGhyZWFkX21vZGU9bXVsdGlwbGUNCj4gDQo+IA0KPiAzLikgUmVzZXJ2ZWQgSHVnZSBQYWdlczoN Cj4gDQo+IGVjaG8gNDA5NiA+DQo+IC9zeXMvZGV2aWNlcy9zeXN0ZW0vbm9kZS9ub2RlMC9odWdl cGFnZXMvaHVnZXBhZ2VzLTIwNDhrQi9ucl9odWdlcGFnZXMNCj4gZWNobyA0MDk2ID4NCj4gL3N5 cy9kZXZpY2VzL3N5c3RlbS9ub2RlL25vZGUxL2h1Z2VwYWdlcy9odWdlcGFnZXMtMjA0OGtCL25y X2h1Z2VwYWdlcw0KPiANCj4gDQo+IDQuKSBNb3VudGVkIGh1Z2UgcGFnZSBwYXJ0aXRpb24NCj4g DQo+IGVjaG8gIj4+PiBNb3VudGluZyBodWdlIHBhZ2UgcGFydGl0aW9uIg0KPiBta2RpciAtcCAv bW50L2h1Z2UNCj4gbW91bnQgLXQgaHVnZXRsYmZzIG5vZGV2IC9tbnQvaHVnZQ0KPiANCj4gDQo+ IDUuKSBJbnRlcmZhY2VzIDA2OjAwLjAvMSBib3VuZCB0byBpZ2IgdWlvIG1vZHVsZSAob3B0aW9u IDE5IG9uIHNldHVwKQ0KPiANCj4gTmV0d29yayBkZXZpY2VzIHVzaW5nIERQREstY29tcGF0aWJs ZSBkcml2ZXINCj4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0N Cj4gMDAwMDowNjowMC4wICc4MjU5OUVTIDEwLUdpZ2FiaXQgU0ZJL1NGUCsgTmV0d29yayBDb25u ZWN0aW9uJyBkcnY9aWdiX3Vpbw0KPiB1bnVzZWQ9DQo+IDAwMDA6MDY6MDAuMSAnODI1OTlFUyAx MC1HaWdhYml0IFNGSS9TRlArIE5ldHdvcmsgQ29ubmVjdGlvbicgZHJ2PWlnYl91aW8NCj4gdW51 c2VkPQ0KPiANCj4gDQo+IDYuKSBTdGFydGVkIGtuaSB0ZXN0IGFwcGxpY2F0aW9uOg0KPiANCj4g Q29tbWFuZDogLi9leGFtcGxlcy9rbmkvYnVpbGQvYXBwL2tuaSAtbiA0IC1jIDB4ZmYgLS0gLXAg MHgxIC1QIC0tDQo+IGNvbmZpZz0iKDAsNSw3KSIgJg0KPiANCj4gT3V0cHV0Og0KPiANCj4gRUFM OiBQQ0kgZGV2aWNlIDAwMDA6MDY6MDAuMCBvbiBOVU1BIHNvY2tldCAtMQ0KPiBFQUw6ICAgcHJv YmUgZHJpdmVyOiA4MDg2OjEwZmIgcnRlX2l4Z2JlX3BtZA0KPiBFQUw6ICAgUENJIG1lbW9yeSBt YXBwZWQgYXQgMHg3ZmNkYTVjMDAwMDANCj4gRUFMOiAgIFBDSSBtZW1vcnkgbWFwcGVkIGF0IDB4 N2ZjZGE1YzgwMDAwDQo+IFBNRDogZXRoX2l4Z2JlX2Rldl9pbml0KCk6IE1BQzogMiwgUEhZOiAx OCwgU0ZQKzogNQ0KPiBQTUQ6IGV0aF9peGdiZV9kZXZfaW5pdCgpOiBwb3J0IDAgdmVuZG9ySUQ9 MHg4MDg2IGRldmljZUlEPTB4MTBmYg0KPiBFQUw6IFBDSSBkZXZpY2UgMDAwMDowNjowMC4xIG9u IE5VTUEgc29ja2V0IC0xDQo+IEVBTDogICBwcm9iZSBkcml2ZXI6IDgwODY6MTBmYiBydGVfaXhn YmVfcG1kDQo+IEVBTDogICBQQ0kgbWVtb3J5IG1hcHBlZCBhdCAweDdmY2RhNWM4NDAwMA0KPiBF QUw6ICAgUENJIG1lbW9yeSBtYXBwZWQgYXQgMHg3ZmNkYTVkMDQwMDANCj4gUE1EOiBldGhfaXhn YmVfZGV2X2luaXQoKTogTUFDOiAyLCBQSFk6IDE4LCBTRlArOiA2DQo+IFBNRDogZXRoX2l4Z2Jl X2Rldl9pbml0KCk6IHBvcnQgMSB2ZW5kb3JJRD0weDgwODYgZGV2aWNlSUQ9MHgxMGZiDQo+IEFQ UDogUG9ydCBJRDogMA0KPiBBUFA6IFJ4IGxjb3JlIElEOiA1LCBUeCBsY29yZSBJRDogNw0KPiBB UFA6IEluaXRpYWxpc2luZyBwb3J0IDAgLi4uDQo+IFBNRDogaXhnYmVfZGV2X3J4X3F1ZXVlX3Nl dHVwKCk6IHN3X3Jpbmc9MHg3ZmNkNWMxYWRjYzANCj4gc3dfc2NfcmluZz0weDdmY2Q1YzFhZDc4 MCBod19yaW5nPTB4N2ZjZDVjMWFlMjAwIGRtYV9hZGRyPTB4ZTViMWFlMjAwDQo+IFBNRDogaXhn YmVfZGV2X3R4X3F1ZXVlX3NldHVwKCk6IHN3X3Jpbmc9MHg3ZmNkNWMxOWI1YzANCj4gaHdfcmlu Zz0weDdmY2Q1YzE5ZDYwMCBkbWFfYWRkcj0weGU1YjE5ZDYwMA0KPiBQTUQ6IGl4Z2JlX3NldF90 eF9mdW5jdGlvbigpOiBVc2luZyBzaW1wbGUgdHggY29kZSBwYXRoDQo+IFBNRDogaXhnYmVfc2V0 X3R4X2Z1bmN0aW9uKCk6IFZlY3RvciB0eCBlbmFibGVkLg0KPiBQTUQ6IGl4Z2JlX3NldF9yeF9m dW5jdGlvbigpOiBWZWN0b3IgcnggZW5hYmxlZCwgcGxlYXNlIG1ha2Ugc3VyZSBSWCBidXJzdCBz aXplDQo+IG5vIGxlc3MgdGhhbiAzMi4NCj4gS05JOiBwY2k6IDA2OjAwOjAwICA4MDg2OjEwZmIN Cj4gDQo+IA0KPiBDaGVja2luZyBsaW5rIHN0YXR1cw0KPiBkb25lDQo+IFBvcnQgMCBMaW5rIFVw IC0gc3BlZWQgMTAwMDAgTWJwcyAtIGZ1bGwtZHVwbGV4DQo+IEFQUDogTGNvcmUgMSBoYXMgbm90 aGluZyB0byBkbw0KPiBBUFA6IExjb3JlIDIgaGFzIG5vdGhpbmcgdG8gZG8NCj4gQVBQOiBMY29y ZSAzIGhhcyBub3RoaW5nIHRvIGRvDQo+IEFQUDogTGNvcmUgNCBoYXMgbm90aGluZyB0byBkbw0K PiBBUFA6IExjb3JlIDUgaXMgcmVhZGluZyBmcm9tIHBvcnQgMA0KPiBBUFA6IExjb3JlIDYgaGFz IG5vdGhpbmcgdG8gZG8NCj4gQVBQOiBMY29yZSA3IGlzIHdyaXRpbmcgdG8gcG9ydCAwDQo+IEFQ UDogTGNvcmUgMCBoYXMgbm90aGluZyB0byBkbw0KPiANCj4gDQo+IDcuKSBLTkkgaW50ZXJmYWNl IGNvbmZpZ3VyZWQgYW5kIGJyb3VnaHQgdXA6DQo+IA0KPiByb290QGwzc3lzMi1hY2MyLTMzMjk6 fi9kcGRrLTIuMS4wIyBpZmNvbmZpZyB2RXRoMCAxOTIuMTY4LjEzLjk1IG5ldG1hc2sNCj4gMjU1 LjI1NS4yNDguMCB1cA0KPiBBUFA6IENvbmZpZ3VyZSBuZXR3b3JrIGludGVyZmFjZSBvZiAwIHVw DQo+IFBNRDogaXhnYmVfc2V0X3J4X2Z1bmN0aW9uKCk6IFZlY3RvciByeCBlbmFibGVkLCBwbGVh c2UgbWFrZSBzdXJlIFJYIGJ1cnN0IHNpemUNCj4gbm8gbGVzcyB0aGFuIDMyLg0KPiANCj4gcm9v dEBsM3N5czItYWNjMi0zMzI5On4vZHBkay0yLjEuMCMgaWZjb25maWcgdkV0aDANCj4gDQo+IHZF dGgwICAgICBMaW5rIGVuY2FwOkV0aGVybmV0ICBIV2FkZHIgOTA6ZTI6YmE6NTU6ZmQ6YzQNCj4g ICAgICAgICAgIGluZXQgYWRkcjoxOTIuMTY4LjEzLjk1ICBCY2FzdDoxOTIuMTY4LjE1LjI1NSAg TWFzazoyNTUuMjU1LjI0OC4wDQo+ICAgICAgICAgICBpbmV0NiBhZGRyOiBmZTgwOjo5MmUyOmJh ZmY6ZmU1NTpmZGM0LzY0IFNjb3BlOkxpbmsNCj4gICAgICAgICAgIFVQIEJST0FEQ0FTVCBSVU5O SU5HIE1VTFRJQ0FTVCAgTVRVOjE1MDAgIE1ldHJpYzoxDQo+ICAgICAgICAgICBSWCBwYWNrZXRz OjAgZXJyb3JzOjAgZHJvcHBlZDowIG92ZXJydW5zOjAgZnJhbWU6MA0KPiAgICAgICAgICAgVFgg cGFja2V0czowIGVycm9yczowIGRyb3BwZWQ6OCBvdmVycnVuczowIGNhcnJpZXI6MA0KPiAgICAg ICAgICAgY29sbGlzaW9uczowIHR4cXVldWVsZW46MTAwMA0KPiAgICAgICAgICAgUlggYnl0ZXM6 MCAoMC4wIEIpICBUWCBieXRlczowICgwLjAgQikNCj4gDQo+IE5vdGUgYWxzbyB0aGF0IGRtZXNn IGlzIGNsZWFuIG5vdCBwb2ludGluZyB0byBhbnkgaXNzdWVzOg0KPiBbIDE3NzAuMTEzOTUyXSBL Tkk6IC9kZXYva25pIG9wZW5lZA0KPiBbIDE3NzAuNTYxOTU3XSBLTkk6IENyZWF0aW5nIGtuaS4u Lg0KPiBbIDE3NzAuNTYxOTczXSBLTkk6IHR4X3BoeXM6ICAgICAgMHgwMDAwMDAwZTViMWNhOWMw LCB0eF9xIGFkZHI6DQo+IDB4ZmZmZjg4MGU1YjFjYTljMA0KPiBbIDE3NzAuNTYxOTc0XSBLTkk6 IHJ4X3BoeXM6ICAgICAgMHgwMDAwMDAwZTViMWM4OTQwLCByeF9xIGFkZHI6DQo+IDB4ZmZmZjg4 MGU1YjFjODk0MA0KPiBbIDE3NzAuNTYxOTc1XSBLTkk6IGFsbG9jX3BoeXM6ICAgMHgwMDAwMDAw ZTViMWM2OGMwLCBhbGxvY19xIGFkZHI6DQo+IDB4ZmZmZjg4MGU1YjFjNjhjMA0KPiBbIDE3NzAu NTYxOTc2XSBLTkk6IGZyZWVfcGh5czogICAgMHgwMDAwMDAwZTViMWM0ODQwLCBmcmVlX3EgYWRk cjoNCj4gMHhmZmZmODgwZTViMWM0ODQwDQo+IFsgMTc3MC41NjE5NzddIEtOSTogcmVxX3BoeXM6 ICAgICAweDAwMDAwMDBlNWIxYzI3YzAsIHJlcV9xIGFkZHI6DQo+IDB4ZmZmZjg4MGU1YjFjMjdj MA0KPiBbIDE3NzAuNTYxOTc4XSBLTkk6IHJlc3BfcGh5czogICAgMHgwMDAwMDAwZTViMWMwNzQw LCByZXNwX3EgYWRkcjoNCj4gMHhmZmZmODgwZTViMWMwNzQwDQo+IFsgMTc3MC41NjE5NzldIEtO STogbWJ1Zl9waHlzOiAgICAweDAwMDAwMDAwNjcyN2RlYzAsIG1idWZfa3ZhOg0KPiAweGZmZmY4 ODAwNjcyN2RlYzANCj4gWyAxNzcwLjU2MTk4MF0gS05JOiBtYnVmX3ZhOiAgICAgIDB4MDAwMDdm Y2Q4NjI3ZGVjMA0KPiBbIDE3NzAuNTYxOTgxXSBLTkk6IG1idWZfc2l6ZTogICAgMjA0OA0KPiBb IDE3NzAuNTYxOTg3XSBLTkk6IHBjaV9idXM6IDA2OjAwOjAwDQo+IFsgMTc3MC41OTk2ODldIGln Yl91aW8gMDAwMDowNjowMC4wOiAoUENJIEV4cHJlc3M6NS4wR1QvczpXaWR0aCB4OCkgWw0KPiAx NzcwLjU5OTY5MV0gOTA6ZTI6YmE6NTU6ZmQ6YzQgWyAxNzcwLjU5OTc3N10gaWdiX3VpbyAwMDAw OjA2OjAwLjAgKHVubmFtZWQNCj4gbmV0X2RldmljZSkgKHVuaW5pdGlhbGl6ZWQpOg0KPiBNQUM6 IDIsIFBIWTogMCwgUEJBIE5vOiBFNjg3OTMtMDA2DQo+IFsgMTc3MC41OTk3NzldIGlnYl91aW8g MDAwMDowNjowMC4wICh1bm5hbWVkIG5ldF9kZXZpY2UpICh1bmluaXRpYWxpemVkKToNCj4gRW5h YmxlZCBGZWF0dXJlczogUnhROiAxIFR4UTogMQ0KPiBbIDE3NzAuNTk5NzkwXSBpZ2JfdWlvIDAw MDA6MDY6MDAuMCAodW5uYW1lZCBuZXRfZGV2aWNlKSAodW5pbml0aWFsaXplZCk6DQo+IEludGVs KFIpIDEwIEdpZ2FiaXQgTmV0d29yayBDb25uZWN0aW9uDQo+IA0KPiANCj4gOC4pIGV0aHRvb2wg dkV0aDAgbGluayBpcyBkZXRlY3RlZDoNCj4gDQo+IHJvb3RAbDNzeXMyLWFjYzItMzMyOTp+L2Rw ZGstMi4xLjAjIGV0aHRvb2wgdkV0aDAgU2V0dGluZ3MgZm9yIHZFdGgwOg0KPiBTdXBwb3J0ZWQg cG9ydHM6IFsgRklCUkUgXQ0KPiBTdXBwb3J0ZWQgbGluayBtb2RlczogICAxMDAwMGJhc2VUL0Z1 bGwNCj4gU3VwcG9ydGVkIHBhdXNlIGZyYW1lIHVzZTogTm8NCj4gU3VwcG9ydHMgYXV0by1uZWdv dGlhdGlvbjogTm8NCj4gQWR2ZXJ0aXNlZCBsaW5rIG1vZGVzOiAgMTAwMDBiYXNlVC9GdWxsDQo+ IEFkdmVydGlzZWQgcGF1c2UgZnJhbWUgdXNlOiBObw0KPiBBZHZlcnRpc2VkIGF1dG8tbmVnb3Rp YXRpb246IE5vDQo+IFNwZWVkOiAxMDAwME1iL3MNCj4gRHVwbGV4OiBGdWxsDQo+IFBvcnQ6IE90 aGVyDQo+IFBIWUFEOiAwDQo+IFRyYW5zY2VpdmVyOiBleHRlcm5hbA0KPiBBdXRvLW5lZ290aWF0 aW9uOiBvZmYNCj4gU3VwcG9ydHMgV2FrZS1vbjogZA0KPiBXYWtlLW9uOiBkDQo+IEN1cnJlbnQg bWVzc2FnZSBsZXZlbDogMHgwMDAwMDAwNyAoNykNCj4gICAgICAgZHJ2IHByb2JlIGxpbmsNCj4g TGluayBkZXRlY3RlZDogeWVzDQo+IA0KPiANCj4gOS4pIGtlcm5lbCBzdGFydGVkIHdpdGg6IGlv bW11PXB0IGludGVsX2lvbW11PW9uDQo+IA0KPiBHUlVCX0NNRExJTkVfTElOVVg9ImlvbW11PXB0 IGludGVsX2lvbW11PW9uIGNvbnNvbGU9dHR5MQ0KPiBjb25zb2xlPXR0eVMxLDExNTIwMG44Ig0K PiANCj4gDQo+IDEwLikgRGlzYWJsZWQgdmlydHVhbGl6YXRpb24gaW4gQklPUyBwZXIgZm9ydW0g cmVjb21tZW5kYXRpb24NCj4gDQo+IA0KPiBTaXR1YXRpb246DQo+IERlc3BpdGUgZG9pbmcgZXZl cnl0aGluZyBzZWVtaW5nbHkgY29ycmVjdCBJIGNhbnQgc3NoIG9yIHBpbmcgdG8gYW5kIGZyb20g dGhpcw0KPiBpbnRlcmZhY2UuIEkgdHJpZWQgc3RhcnRpbmcgdGNwZHVtcCBvbiB0aGUgaW50ZXJm YWNlIGJ1dCBkaWRuJ3Qgbm90aWNlIGFueSB0cmFmZmljLg0KPiBJJ20gbm90IHN1cmUgd2hhdCBJ J20gZG9pbmcgd3JvbmcgaGVyZSwgaWYgSSBjb3VsZCBnZXQgc29tZSBzdXBwb3J0IEknZA0KPiBh cHByZWNpYXRlIGl0LiBJIGNhbiBwcm92aWRlIGFkZGl0aW9uYWwgZGV0YWlscyBmcm9tIHRoZSBz eXN0ZW0gaWYgbmVlZGVkLg0KPiANCj4gVGhhbmtzIQ0K