From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 1E1BBA0613 for ; Mon, 23 Sep 2019 16:18:34 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id E5BCB1BEF3; Mon, 23 Sep 2019 16:18:33 +0200 (CEST) Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by dpdk.org (Postfix) with ESMTP id CBB541BEF1; Mon, 23 Sep 2019 16:18:31 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by orsmga105.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 23 Sep 2019 07:18:30 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.64,540,1559545200"; d="scan'208";a="389493031" Received: from irsmsx103.ger.corp.intel.com ([163.33.3.157]) by fmsmga006.fm.intel.com with ESMTP; 23 Sep 2019 07:18:29 -0700 Received: from irsmsx108.ger.corp.intel.com ([169.254.11.26]) by IRSMSX103.ger.corp.intel.com ([169.254.3.36]) with mapi id 14.03.0439.000; Mon, 23 Sep 2019 15:18:28 +0100 From: "Iremonger, Bernard" To: "Yigit, Ferruh" , "Wang, ShougangX" , "dev@dpdk.org" CC: "Lu, Wenzhuo" , "Yang, Qiming" , "stable@dpdk.org" Thread-Topic: [dpdk-dev] [dpdk-stable] [PATCH] app/testpmd: fix Segment fault when start fwd Thread-Index: AQHVbTl883KFwcI0rUCh+Fpa5IZVyac5EhMAgABFL3A= Date: Mon, 23 Sep 2019 14:18:28 +0000 Message-ID: <8CEF83825BEC744B83065625E567D7C260DFAACF@IRSMSX108.ger.corp.intel.com> References: <20190906012838.64088-1-shougangx.wang@intel.com> <00A8E5A1740DFA49A87AFFAC34B8EDEA3857EB@SHSMSX101.ccr.corp.intel.com> <00A8E5A1740DFA49A87AFFAC34B8EDEA385D4D@SHSMSX101.ccr.corp.intel.com> In-Reply-To: Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiY2IwZmNlYzktMzRiMi00MzdlLTkwZmEtNGIxMDZiYzljMWVjIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoieE9CYm4zZjY0YlNNWThWd3B2WW1YTG16VWdFeFpHYjFTbjdQRVlNY1hoaEY0ZitaN0dnWTdObGNDUmk3dmllTSJ9 x-ctpclassification: CTP_NT dlp-product: dlpe-windows dlp-version: 11.2.0.6 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-dev] [dpdk-stable] [PATCH] app/testpmd: fix Segment fault when start fwd 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: , Errors-To: dev-bounces@dpdk.org Sender: "dev" SGkgU2hvdWdhbmdYLCBGZXJydWgsDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4g RnJvbTogZGV2IFttYWlsdG86ZGV2LWJvdW5jZXNAZHBkay5vcmddIE9uIEJlaGFsZiBPZiBGZXJy dWggWWlnaXQNCj4gU2VudDogTW9uZGF5LCBTZXB0ZW1iZXIgMjMsIDIwMTkgMTI6MDQgUE0NCj4g VG86IFdhbmcsIFNob3VnYW5nWCA8c2hvdWdhbmd4LndhbmdAaW50ZWwuY29tPjsgZGV2QGRwZGsu b3JnDQo+IENjOiBMdSwgV2Vuemh1byA8d2Vuemh1by5sdUBpbnRlbC5jb20+OyBZYW5nLCBRaW1p bmcNCj4gPHFpbWluZy55YW5nQGludGVsLmNvbT47IHN0YWJsZUBkcGRrLm9yZw0KPiBTdWJqZWN0 OiBSZTogW2RwZGstZGV2XSBbZHBkay1zdGFibGVdIFtQQVRDSF0gYXBwL3Rlc3RwbWQ6IGZpeCBT ZWdtZW50DQo+IGZhdWx0IHdoZW4gc3RhcnQgZndkDQo+IA0KPiBPbiA5LzE3LzIwMTkgMTA6MjIg QU0sIFdhbmcsIFNob3VnYW5nWCB3cm90ZToNCj4gPj4gTGV0J3MgYXNzdW1lIHBvcnQgYWxyZWFk eSBzdG9wcGVkIGJlZm9yZSBjYWxsaW5nIHRoZSByZXNldCwgcmVzZXQNCj4gPj4gd2lsbCBjYXVz ZSBwb3J0IHRvIGJlIHN0YXJ0ZWQuDQo+ID4NCj4gPiBJbmRlZWQsIGF1dG9tYXRpY2FsbHkgc3Rh cnQgbG9va3Mgc3RyYW5nZSBpbiB0aGlzIGNhc2UuIFVzZXINCj4gPiBleHBsaWNpdGx5IGRvIHRo ZSAicG9ydCBzdGFydCIgY29tbWFuZCBzaG91bGQgYmUgYmV0dGVyLg0KPiA+DQo+ID4+IEkgYW0g Zm9yIHVzZXIgZXhwbGljaXRseSBkbyB0aGUgc3RvcCwgcmVzZXQgYW5kIHN0YXJ0IGNvbW1hbmRz LA0KPiA+PiBpbnN0ZWFkIG9mIHJlc2V0IGF1dG9tYXRpY2FsbHkgc3RvcCBhbmQgc3RhcnQgbGF0 ZXIuDQo+ID4NCj4gPiBUaGVyZSBhcmUgdHdvIHJlYXNvbnMgdGhhdCBpdCBpcyBuZWNlc3Nhcnkg dG8gc3RvcCBhdXRvbWF0aWNhbGx5IGluICJwb3J0DQo+IHJlc2V0IiBjb21tYW5kOg0KPiA+IDEp IEV2ZW4gd2l0aG91dCB0aGlzIHBhdGNoLCB1c2VyIGRvZXMgbm90IG5lZWQgdG8gbWFudWFsbHkg ZXhlY3V0ZQ0KPiA+ICJwb3J0IHN0b3AiIGNvbW1hbmQgYmVmb3JlICJwb3J0IHJlc2V0IiB0b28s ICBiZWNhdXNlIHBvcnQgd2lsbCBiZQ0KPiBzdG9wcGVkIGluIHJ0ZV9ldGhfZGV2X3Jlc2V0KCkg ZnVuY3Rpb24uDQo+ID4gQnV0IHRoaXMgZnVuY3Rpb24gZG9lcyBub3QgdXBkYXRlIHRoZSBwb3J0 IHN0YXR1cyBmbGFnIG9mIHRlc3RwbWQuIEl0DQo+ID4gbWFrZXMgdGhlIHBvcnQgc3RhdGUgcmVj b3JkZWQgYnkgdGVzdHBtZCBpbmNvbnNpc3RlbnQgd2l0aCB0aGUgYWN0dWFsDQo+ID4gcG9ydCBz dGF0ZS4gU28gSSBhZGQgc3RvcCBwcm9jZXNzaW5nIGluDQo+ID4gcmVzZXRfcG9ydCgpIGZ1bmN0 aW9uIHRvIHN0b3AgcG9ydCBhcyBzYW1lIGFzIHJ1bm5pbmcgInBvcnQgc3RvcCINCj4gY29tbWFu ZC4NCj4gDQo+IEkgc2VlICdydGVfZXRoX2Rldl9yZXNldCgpJyBBUEkgY2FsbHMgdGhlICdydGVf ZXRoX2Rldl9zdG9wKCknIGJ1dCBpdCBpc24ndA0KPiBlbm91Z2ggYXMgeW91IHNhaWQgYW5kIGEg dGVzdHBtZCBzdG9wIGlzIHJlcXVpcmVkLCBpbnN0ZWFkIG9mIGRvaW5nIGluIHRoZQ0KPiBmdW5j dGlvbiBpdCBpcyBlYXN5IHRvIGRldGVjdCBwb3J0IGlzIG5vdCBzdG9wcGVkIGFuZCByZXR1cm4g YW4gZXJyb3IgaW4gdGhlDQo+ICdyZXNldCcsIGl0IGlzIHVwIHRvIHVzZXIgdG8gc3RvcCBhbmQg ZG8gdGhlIHJlc2V0Lg0KPiANCj4gPg0KPiA+IDIpIElmIGxldCB1c2VyIHRvIHN0b3AgcG9ydCBt YW51YWxseSB3aGVuIGhlIHdhbnRzIHRvIHJlc2V0IHBvcnQsIGl0IGlzIG5vdA0KPiBlYXN5IHRv IHVzZSB0aGFuIGJlZm9yZS4NCj4gDQo+IEkgc3RpbGwgcHJlZmVyICdFeHBsaWNpdCBpcyBiZXR0 ZXIgdGhhbiBpbXBsaWNpdC4nIFsxXSwgeWVzIGl0IGlzIHR3byBjb21tYW5kcyBub3cgdG8NCj4g cmVzZXQgdGhlIHBvcnQgaWYgaXQgaXMgYWxyZWFkeSBzdGFydGVkIGJ1dCBJIGRvbid0IHNlZSB0 aGlzIGlzIGEgcHJvYmxlbS4NCj4gDQo+IEFueXdheSB0aGlzIGlzIG5vdCBhIGJpZyBkZWFsLCBp ZiB0ZXN0cG1kIG1haW50YWluZXJzIGFyZSBPSyBmb3IgaXQgd2UgY2FuDQo+IGNvbnRpbnVlIHdp dGggdGhpcy4uLg0KDQpJIGFtIGluY2xpbmVkIHRvIGFncmVlIHdpdGggRmVycnVoLCB0aGF0IGl0 IHdvdWxkIGJlIGJldHRlciB0byByZXR1cm4gYW4gZXJyb3IgaWYgdGhlIHBvcnQgaXMgbm90IHN0 b3BwZWQgd2hlbiAicG9ydCByZXNldCIgaXMgY2FsbGVkIHJhdGhlciB0aGF0IHNpbGVudGx5IHN0 b3BwaW5nIHRoZSBwb3J0Lg0KDQoNCj4gWzFdIHNlZTogVGhlIFplbiBvZiBQeXRob24gOikNCj4g DQo+ID4NCj4gPiBUaGFua3MuDQo+ID4gU2hvdWdhbmcNCj4gPg0KPiA+DQo+ID4+IC0tLS0tT3Jp Z2luYWwgTWVzc2FnZS0tLS0tDQo+ID4+IEZyb206IFlpZ2l0LCBGZXJydWgNCj4gPj4gU2VudDog TW9uZGF5LCBTZXB0ZW1iZXIgMTYsIDIwMTkgMTE6MjggUE0NCj4gPj4gVG86IFdhbmcsIFNob3Vn YW5nWCA8c2hvdWdhbmd4LndhbmdAaW50ZWwuY29tPjsgZGV2QGRwZGsub3JnDQo+ID4+IENjOiBM dSwgV2Vuemh1byA8d2Vuemh1by5sdUBpbnRlbC5jb20+OyBZYW5nLCBRaW1pbmcNCj4gPj4gPHFp bWluZy55YW5nQGludGVsLmNvbT47IHN0YWJsZUBkcGRrLm9yZw0KPiA+PiBTdWJqZWN0OiBSZTog W2RwZGstc3RhYmxlXSBbUEFUQ0hdIGFwcC90ZXN0cG1kOiBmaXggU2VnbWVudCBmYXVsdA0KPiA+ PiB3aGVuIHN0YXJ0IGZ3ZA0KPiA+Pg0KPiA+PiBPbiA5LzE2LzIwMTkgNzozNyBBTSwgV2FuZywg U2hvdWdhbmdYIHdyb3RlOg0KPiA+Pj4gSGkgRmVycnVoDQo+ID4+Pg0KPiA+Pj4gVGhhbmtzIGZv ciB5b3VyIHJlcGx5Lg0KPiA+Pj4NCj4gPj4+PiBOb3Qgc3VyZSBpZiAncmVzZXQnIGNvbW1hbmQg c2hvdWxkIGRvIG1vcmUgdGhhbiBpdCBzYXlzLCBpZiB0aGVyZQ0KPiA+Pj4+IGlzIGEgcmVxdWly ZW1lbnQgdGhhdCBwb3J0IHNob3VsZCBiZSBzdG9wcGVkLCB3aHkgbm90IGFkZCB0aGlzDQo+ID4+ Pj4gY29uZGl0aW9uIHdpdGggYW4gZXJyb3IgbWVzc2FnZSBzbyB0aGF0IHVzZXIgY2FuIHN0b3Ag dGhlIHBvcnQgaW4NCj4gYWR2YW5jZSBpZiBzaGUgd2FudHMuDQo+ID4+Pg0KPiA+Pj4gRmlyc3Rs eSwgcG9ydCBtdXN0IGJlIHN0b3BwZWQgYmVmb3JlIHJlc2V0LiBVc3VhbGx5LCBwb3J0IGlzIHN0 b3BwZWQNCj4gPj4+IGJ5IHJ0ZV9ldGhfZGV2X3Jlc2V0KCksIHNvIHRlc3RwbWQgZG9lcyBub3Qg cHJvbXB0IHVzZXIgdG8gc3RvcCBwb3J0Lg0KPiA+Pj4gQWx0aG91Z2ggaXQgY2FuIHN0b3AgcG9y dCwgYnV0IHRlc3RwbWQgZG9lcyBub3QgY2hhbmdlIGl0cyBvd24gcG9ydA0KPiA+Pj4gc3RhdHVz DQo+ID4+IGZsYWcgdG8gIlJURV9QT1JUX1NUT1BQRUQiIGFuZCBpdCB3aWxsIGNhdXNlICJwb3J0 IHN0YXJ0IiB0byBmYWlsLg0KPiA+Pj4gU28gSSBhZGQgdGhpcyBwYXRjaCB0byBzdG9wIHBvcnQg YXMgc2FtZSBhcyBydW5uaW5nICJwb3J0IHN0b3AiIGNvbW1hbmQuDQo+ID4+DQo+ID4+IExldCdz IGFzc3VtZSBwb3J0IGFscmVhZHkgc3RvcHBlZCBiZWZvcmUgY2FsbGluZyB0aGUgcmVzZXQsIHJl c2V0DQo+ID4+IHdpbGwgY2F1c2UgcG9ydCB0byBiZSBzdGFydGVkLg0KPiA+PiBJIGFtIGZvciB1 c2VyIGV4cGxpY2l0bHkgZG8gdGhlIHN0b3AsIHJlc2V0IGFuZCBzdGFydCBjb21tYW5kcywNCj4g Pj4gaW5zdGVhZCBvZiByZXNldCBhdXRvbWF0aWNhbGx5IHN0b3AgYW5kIHN0YXJ0IGxhdGVyLg0K PiA+Pg0KPiA+Pj4NCj4gPj4+PiAtICdyZXNldF9wb3J0KCknIGZ1bmN0aW9uIGhhcyBhIGxvb3Ag aW5zaWRlLCAnUlRFX0VUSF9GT1JFQUNIX0RFVigpJw0KPiA+Pj4+IGJ1dCBpdCB3b3JrcyBvbiBz aW5nbGUgcG9ydCwgdGhlIGxvb3AgbG9va2VkIHVubmVjZXNzYXJ5IHRvIG1lLCBjYW4NCj4gPj4+ PiB5b3UgcGxlYXNlIGNoZWNrIGFuZCByZW1vdmUgdGhlIGxvb3AgaWYgcmVxdWlyZWQ/DQo+ID4+ Pg0KPiA+Pj4gInBvcnQgcmVzZXQiIHN1cHBvcnRzIHJlc2V0IGFsbCBwb3J0cyAodGVzdHBtZCA+ IHBvcnQgcmVzZXQgYWxsKSwgc28NCj4gPj4+IHRoaXMgbG9vcCBpcw0KPiA+PiBuZWNlc3Nhcnku DQo+ID4+DQo+ID4+IEdvdCBpdC4NCj4gPj4NCj4gPj4+DQo+ID4+Pj4gLSBJIGFtIG5vdCBhYmxl IHRvIHNlZSAncmVzZXQnIGhhcyBiZWVuIGRvY3VtZW50ZWQgaW4NCj4gPj4+PiAnZG9jL2d1aWRl cy90ZXN0cG1kX2FwcF91Zy90ZXN0cG1kX2Z1bmNzLnJzdCcsIGl0IG1heSBiZSBtaXNzaW5nLA0K PiA+Pj4+IGNhbiB5b3UgcGxlYXNlIGNoZWNrIGFuZCBhZGQgaXQgaWYgcmVxdWlyZWQ/DQo+ID4+ Pg0KPiA+Pj4gT0suIEkgd2lsbCBhZGQgaXQgaW4gdGhlIG5leHQgcGF0Y2guDQo+ID4+Pg0KPiA+ Pj4gVGhhbmtzLg0KPiA+Pj4gU2hvdWdhbmcNCj4gPj4+DQo+ID4+Pg0KPiA+Pj4+IC0tLS0tT3Jp Z2luYWwgTWVzc2FnZS0tLS0tDQo+ID4+Pj4gRnJvbTogWWlnaXQsIEZlcnJ1aA0KPiA+Pj4+IFNl bnQ6IFNhdHVyZGF5LCBTZXB0ZW1iZXIgMTQsIDIwMTkgMTozNSBBTQ0KPiA+Pj4+IFRvOiBXYW5n LCBTaG91Z2FuZ1ggPHNob3VnYW5neC53YW5nQGludGVsLmNvbT47IGRldkBkcGRrLm9yZw0KPiA+ Pj4+IENjOiBMdSwgV2Vuemh1byA8d2Vuemh1by5sdUBpbnRlbC5jb20+OyBZYW5nLCBRaW1pbmcN Cj4gPj4+PiA8cWltaW5nLnlhbmdAaW50ZWwuY29tPjsgc3RhYmxlQGRwZGsub3JnDQo+ID4+Pj4g U3ViamVjdDogUmU6IFtkcGRrLXN0YWJsZV0gW1BBVENIXSBhcHAvdGVzdHBtZDogZml4IFNlZ21l bnQgZmF1bHQNCj4gPj4+PiB3aGVuIHN0YXJ0IGZ3ZA0KPiA+Pj4+DQo+ID4+Pj4gT24gOS82LzIw MTkgMjoyOCBBTSwgV2FuZyBTaG91Z2FuZ1ggd3JvdGU6DQo+ID4+Pj4+IFRoaXMgcGF0Y2ggZml4 ZWQgdGhlIHJlc2V0IGZ1bmN0aW9uIHRvIGF2b2lkIGNyYXNoIHdoZW4gdXNlciBkb24ndA0KPiA+ Pj4+PiBjYWxsIHBvcnQgcmVzZXQgLCBwb3J0IHN0b3AgYW5kIHBvcnQgc3RhcnQgZnVuY3Rpb25z IGFzIHNlcXVlbmNlLg0KPiA+Pj4+Pg0KPiA+Pj4+PiBGaXhlczogOTdmMWUxOTY3OSAoImFwcC90 ZXN0cG1kOiBhZGQgcG9ydCByZXNldCBjb21tYW5kIikNCj4gPj4+Pj4gQ2M6IHN0YWJsZUBkcGRr Lm9yZw0KPiA+Pj4+Pg0KPiA+Pj4+PiBTaWduZWQtb2ZmLWJ5OiBXYW5nIFNob3VnYW5nWCA8c2hv dWdhbmd4LndhbmdAaW50ZWwuY29tPg0KPiA+Pj4+PiAtLS0NCj4gPj4+Pj4gIGFwcC90ZXN0LXBt ZC90ZXN0cG1kLmMgfCA2ICsrKysrKw0KPiA+Pj4+PiAgMSBmaWxlIGNoYW5nZWQsIDYgaW5zZXJ0 aW9ucygrKQ0KPiA+Pj4+Pg0KPiA+Pj4+PiBkaWZmIC0tZ2l0IGEvYXBwL3Rlc3QtcG1kL3Rlc3Rw bWQuYyBiL2FwcC90ZXN0LXBtZC90ZXN0cG1kLmMgaW5kZXgNCj4gPj4+Pj4gZThlMmEzOWI2Li4y NzNhN2FhMDIgMTAwNjQ0DQo+ID4+Pj4+IC0tLSBhL2FwcC90ZXN0LXBtZC90ZXN0cG1kLmMNCj4g Pj4+Pj4gKysrIGIvYXBwL3Rlc3QtcG1kL3Rlc3RwbWQuYw0KPiA+Pj4+PiBAQCAtMjM0NCw2ICsy MzQ0LDkgQEAgcmVzZXRfcG9ydChwb3J0aWRfdCBwaWQpDQo+ID4+Pj4+ICAJaWYgKHBvcnRfaWRf aXNfaW52YWxpZChwaWQsIEVOQUJMRURfV0FSTikpDQo+ID4+Pj4+ICAJCXJldHVybjsNCj4gPj4+ Pj4NCj4gPj4+Pj4gKwlwcmludGYoIlN0b3BwaW5nIHBvcnRzLi4uXG4iKTsNCj4gPj4+Pj4gKwlz dG9wX3BvcnQocGlkKTsNCj4gPj4+Pj4gKw0KPiA+Pj4+PiAgCXByaW50ZigiUmVzZXR0aW5nIHBv cnRzLi4uXG4iKTsNCj4gPj4+Pj4NCj4gPj4+Pj4gIAlSVEVfRVRIX0ZPUkVBQ0hfREVWKHBpKSB7 DQo+ID4+Pj4+IEBAIC0yMzcyLDYgKzIzNzUsOSBAQCByZXNldF9wb3J0KHBvcnRpZF90IHBpZCkN Cj4gPj4+Pj4gIAkJfQ0KPiA+Pj4+PiAgCX0NCj4gPj4+Pj4NCj4gPj4+Pj4gKwlwcmludGYoIlN0 YXJ0aW5nIHBvcnRzLi4uXG4iKTsNCj4gPj4+Pj4gKwlzdGFydF9wb3J0KHBpZCk7DQo+ID4+Pj4+ ICsNCj4gPj4+Pj4gIAlwcmludGYoIkRvbmVcbiIpOw0KPiA+Pj4+PiAgfQ0KPiA+Pj4+DQo+ID4+ Pj4gSGkgU2hvdWdhbmcsDQo+ID4+Pj4NCj4gPj4+PiBOb3Qgc3VyZSBpZiAncmVzZXQnIGNvbW1h bmQgc2hvdWxkIGRvIG1vcmUgdGhhbiBpdCBzYXlzLCBpZiB0aGVyZQ0KPiA+Pj4+IGlzIGEgcmVx dWlyZW1lbnQgdGhhdCBwb3J0IHNob3VsZCBiZSBzdG9wcGVkLCB3aHkgbm90IGFkZCB0aGlzDQo+ ID4+Pj4gY29uZGl0aW9uIHdpdGggYW4gZXJyb3IgbWVzc2FnZSBzbyB0aGF0IHVzZXIgY2FuIHN0 b3AgdGhlIHBvcnQgaW4NCj4gYWR2YW5jZSBpZiBzaGUgd2FudHMuDQo+ID4+Pj4NCj4gPj4+Pg0K PiA+Pj4+IEJ0dywgYSBmZXcgdGhpbmdzIHJlbGF0ZWQsDQo+ID4+Pj4gLSAncmVzZXRfcG9ydCgp JyBmdW5jdGlvbiBoYXMgYSBsb29wIGluc2lkZSwgJ1JURV9FVEhfRk9SRUFDSF9ERVYoKScNCj4g Pj4+PiBidXQgaXQgd29ya3Mgb24gc2luZ2xlIHBvcnQsIHRoZSBsb29wIGxvb2tlZCB1bm5lY2Vz c2FyeSB0byBtZSwgY2FuDQo+ID4+Pj4geW91IHBsZWFzZSBjaGVjayBhbmQgcmVtb3ZlIHRoZSBs b29wIGlmIHJlcXVpcmVkPw0KPiA+Pj4+DQo+ID4+Pj4gLSBJIGFtIG5vdCBhYmxlIHRvIHNlZSAn cmVzZXQnIGhhcyBiZWVuIGRvY3VtZW50ZWQgaW4NCj4gPj4+PiAnZG9jL2d1aWRlcy90ZXN0cG1k X2FwcF91Zy90ZXN0cG1kX2Z1bmNzLnJzdCcsIGl0IG1heSBiZSBtaXNzaW5nLA0KPiA+Pj4+IGNh biB5b3UgcGxlYXNlIGNoZWNrIGFuZCBhZGQgaXQgaWYgcmVxdWlyZWQ/DQo+ID4+Pj4NCj4gPj4+ PiBUaGFua3MsDQo+ID4+Pj4gZmVycnVoDQoNClJlZ2FyZHMsDQoNCkJlcm5hcmQuDQoNCg0K