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 0097DC326 for ; Fri, 5 Feb 2016 17:02:55 +0100 (CET) Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by orsmga102.jf.intel.com with ESMTP; 05 Feb 2016 08:02:42 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.22,401,1449561600"; d="scan'208";a="909291598" Received: from fmsmsx104.amr.corp.intel.com ([10.18.124.202]) by fmsmga002.fm.intel.com with ESMTP; 05 Feb 2016 08:02:40 -0800 Received: from fmsmsx152.amr.corp.intel.com (10.18.125.5) by fmsmsx104.amr.corp.intel.com (10.18.124.202) with Microsoft SMTP Server (TLS) id 14.3.248.2; Fri, 5 Feb 2016 08:02:40 -0800 Received: from shsmsx102.ccr.corp.intel.com (10.239.4.154) by FMSMSX152.amr.corp.intel.com (10.18.125.5) with Microsoft SMTP Server (TLS) id 14.3.248.2; Fri, 5 Feb 2016 08:02:39 -0800 Received: from shsmsx103.ccr.corp.intel.com ([169.254.4.218]) by shsmsx102.ccr.corp.intel.com ([169.254.2.172]) with mapi id 14.03.0248.002; Sat, 6 Feb 2016 00:02:38 +0800 From: "Liu, Yong" To: "Xu, Qian Q" Thread-Topic: [dts] [PATCH 3/3] tests: add vf jumbo frame suite Thread-Index: AQHRYCY3vtnhUORIZUm/l4PLERdBDp8dnMIw Date: Fri, 5 Feb 2016 16:02:36 +0000 Message-ID: <86228AFD5BCD8E4EBFD2B90117B5E81E144DDD1D@SHSMSX103.ccr.corp.intel.com> References: <1454684041-31420-1-git-send-email-yong.liu@intel.com>, <1454684041-31420-3-git-send-email-yong.liu@intel.com> In-Reply-To: Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiODhjODRhOTEtYjZiYi00MmU2LTk4YTQtMzU4YzZlZTE1M2Q0IiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX0lDIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE1LjQuMTAuMTkiLCJUcnVzdGVkTGFiZWxIYXNoIjoiXC9hZ01ZOWs5MXVxbnFrNDZcL2d5ZjNDTGVcL2hJNlREZFdTTTJ2b0VwWGVjST0ifQ== x-ctpclassification: CTP_IC x-originating-ip: [10.239.127.40] Content-Type: text/plain; charset="gb2312" Content-Transfer-Encoding: base64 MIME-Version: 1.0 Cc: "dts@dpdk.org" Subject: Re: [dts] [PATCH 3/3] tests: add vf jumbo frame suite X-BeenThere: dts@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: test suite reviews and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 05 Feb 2016 16:02:57 -0000 VGhhbmtzIGZvciBub3RpY2UgdGhpcywgSSd2ZSB1cGRhdGVkIHBhdGNoIGFuZCBzZW50IG91dCBW Mi4NCg0KPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBYdSwgUWlhbiBRDQo+ IFNlbnQ6IEZyaWRheSwgRmVicnVhcnkgMDUsIDIwMTYgMTE6MDIgUE0NCj4gVG86IExpdSwgWW9u Zw0KPiBDYzogZHRzQGRwZGsub3JnDQo+IFN1YmplY3Q6IFJlOiBbZHRzXSBbUEFUQ0ggMy8zXSB0 ZXN0czogYWRkIHZmIGp1bWJvIGZyYW1lIHN1aXRlDQo+IA0KPiBxdWljayBjb21tZW50czogdGhl IGNsYXNzIG5hbWUgaXMgdmxhbixuZWVkIHVwZGF0ZQ0KPiANCj4gt6LX1M7StcQgaVBob25lDQo+ IA0KPiA+INTaIDIwMTbE6jLUwjXI1aOsz8LO5zEwOjU1o6xZb25nIExpdSA8eW9uZy5saXVAaW50 ZWwuY29tPiDQtLXAo7oNCj4gPg0KPiA+IFRoaXMgc3VpdGUgdmFsaWRhdGVkIFZGIGRldmljZSBq dW1ibyBmcmFtZSBmZWF0dXJlLCBtb3JlIGRldGFpbA0KPiA+IGluZm9ybWF0aW9ucyBjYW4gYmUg Zm91bmQgaW4gdGVzdCBwbGFuLg0KPiA+IEJ5IG5vdyBqdW1ibyBmcmFtZSBzdWl0ZSBzdXBwb3J0 IGl4Z2JldmYgYW5kIGk0MGV2ZiB0aGVzZSB0d28gdmlydHVhbA0KPiA+IGRldmljZXMuDQo+ID4N Cj4gPiBTaWduZWQtb2ZmLWJ5OiBNYXJ2aW4gTGl1IDx5b25nLmxpdUBpbnRlbC5jb20+DQo+ID4N Cj4gPiBkaWZmIC0tZ2l0IGEvdGVzdHMvVGVzdFN1aXRlX3ZmX2p1bWJvZnJhbWUucHkNCj4gYi90 ZXN0cy9UZXN0U3VpdGVfdmZfanVtYm9mcmFtZS5weQ0KPiA+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0 DQo+ID4gaW5kZXggMDAwMDAwMC4uNDI1M2FmZA0KPiA+IC0tLSAvZGV2L251bGwNCj4gPiArKysg Yi90ZXN0cy9UZXN0U3VpdGVfdmZfanVtYm9mcmFtZS5weQ0KPiA+IEBAIC0wLDAgKzEsMzMwIEBA DQo+ID4gKyMgPENPUFlSSUdIVF9UQUc+DQo+ID4gKw0KPiA+ICtpbXBvcnQgcmUNCj4gPiAraW1w b3J0IHRpbWUNCj4gPiArDQo+ID4gK2ltcG9ydCBkdHMNCj4gPiArZnJvbSBxZW11X2t2bSBpbXBv cnQgUUVNVUt2bQ0KPiA+ICtmcm9tIHRlc3RfY2FzZSBpbXBvcnQgVGVzdENhc2UNCj4gPiArZnJv bSBwbWRfb3V0cHV0IGltcG9ydCBQbWRPdXRwdXQNCj4gPiArZnJvbSBzZXR0aW5ncyBpbXBvcnQg SEVBREVSX1NJWkUNCj4gPiArZnJvbSBwYWNrZXQgaW1wb3J0IFBhY2tldA0KPiA+ICtmcm9tIHV0 aWxzIGltcG9ydCBSRUQNCj4gPiArDQo+ID4gK1ZNX0NPUkVTX01BU0sgPSAnYWxsJw0KPiA+ICsN Cj4gPiArRVRIRVJfU1RBTkRBUkRfTVRVID0gMTUxOA0KPiA+ICtFVEhFUl9KVU1CT19GUkFNRV9N VFUgPSA5MDAwDQo+ID4gKw0KPiA+ICsNCj4gPiArY2xhc3MgVGVzdFZmVmxhbihUZXN0Q2FzZSk6 DQo+ID4gKw0KPiA+ICsgICAgZGVmIHNldF91cF9hbGwoc2VsZik6DQo+ID4gKw0KPiA+ICsgICAg ICAgIHNlbGYuZHV0X3BvcnRzID0gc2VsZi5kdXQuZ2V0X3BvcnRzKHNlbGYubmljKQ0KPiA+ICsg ICAgICAgIHNlbGYudmVyaWZ5KGxlbihzZWxmLmR1dF9wb3J0cykgPj0gMSwgIkluc3VmZmljaWVu dCBwb3J0cyIpDQo+ID4gKyAgICAgICAgc2VsZi52bTAgPSBOb25lDQo+ID4gKyAgICAgICAgc2Vs Zi5lbnZfZG9uZSA9IEZhbHNlDQo+ID4gKw0KPiA+ICsgICAgICAgIHNlbGYucG9ydCA9IHNlbGYu ZHV0X3BvcnRzWzBdDQo+ID4gKyAgICAgICAgc2VsZi52bV9wb3J0ID0gMA0KPiA+ICsgICAgICAg IGNvcmVzID0gc2VsZi5kdXQuZ2V0X2NvcmVfbGlzdCgiMVMvMUMvMVQiKQ0KPiA+ICsgICAgICAg IHNlbGYucG9ydF9tYXNrID0gZHRzLmNyZWF0ZV9tYXNrKFtzZWxmLnBvcnRdKQ0KPiA+ICsNCj4g PiArICAgICAgICAjIGVuYWJsZSB0ZXN0ZXIgbXR1DQo+ID4gKyAgICAgICAgdGVzdGVyX3BvcnQg PSBzZWxmLnRlc3Rlci5nZXRfbG9jYWxfcG9ydChzZWxmLnBvcnQpDQo+ID4gKyAgICAgICAgc2Vs Zi5uZXRvYmogPSBzZWxmLnRlc3Rlci5wb3J0c19pbmZvW3Rlc3Rlcl9wb3J0XVsncG9ydCddDQo+ ID4gKyAgICAgICAgc2VsZi5uZXRvYmouZW5hYmxlX2p1bWJvKGZyYW1lc2l6ZT1FVEhFUl9KVU1C T19GUkFNRV9NVFUgKyAxMDApDQo+ID4gKw0KPiA+ICsNCj4gPiArICAgIGRlZiBzZXRfdXAoc2Vs Zik6DQo+ID4gKyAgICAgICAgc2VsZi5zZXR1cF92bV9lbnYoKQ0KPiA+ICsNCj4gPiArICAgIGRl ZiBiaW5kX25pY19kcml2ZXIoc2VsZiwgcG9ydHMsIGRyaXZlcj0iIik6DQo+ID4gKyAgICAgICAg IyBtb2Rwcm9iZSB2ZmlvIGRyaXZlcg0KPiA+ICsgICAgICAgIGlmIGRyaXZlciA9PSAidmZpby1w Y2kiOg0KPiA+ICsgICAgICAgICAgICBmb3IgcG9ydCBpbiBwb3J0czoNCj4gPiArICAgICAgICAg ICAgICAgIG5ldGRldiA9IHNlbGYuZHV0LnBvcnRzX2luZm9bcG9ydF1bJ3BvcnQnXQ0KPiA+ICsg ICAgICAgICAgICAgICAgZHJpdmVyID0gbmV0ZGV2LmdldF9uaWNfZHJpdmVyKCkNCj4gPiArICAg ICAgICAgICAgICAgIGlmIGRyaXZlciAhPSAndmZpby1wY2knOg0KPiA+ICsgICAgICAgICAgICAg ICAgICAgIG5ldGRldi5iaW5kX2RyaXZlcihkcml2ZXI9J3ZmaW8tcGNpJykNCj4gPiArDQo+ID4g KyAgICAgICAgZWxpZiBkcml2ZXIgPT0gImlnYl91aW8iOg0KPiA+ICsgICAgICAgICAgICAjIGln Yl91aW8gc2hvdWxkIGluc21vZCBhcyBkZWZhdWx0LCBubyBuZWVkIHRvIGNoZWNrDQo+ID4gKyAg ICAgICAgICAgIGZvciBwb3J0IGluIHBvcnRzOg0KPiA+ICsgICAgICAgICAgICAgICAgbmV0ZGV2 ID0gc2VsZi5kdXQucG9ydHNfaW5mb1twb3J0XVsncG9ydCddDQo+ID4gKyAgICAgICAgICAgICAg ICBkcml2ZXIgPSBuZXRkZXYuZ2V0X25pY19kcml2ZXIoKQ0KPiA+ICsgICAgICAgICAgICAgICAg aWYgZHJpdmVyICE9ICdpZ2JfdWlvJzoNCj4gPiArICAgICAgICAgICAgICAgICAgICBuZXRkZXYu YmluZF9kcml2ZXIoZHJpdmVyPSdpZ2JfdWlvJykNCj4gPiArICAgICAgICBlbHNlOg0KPiA+ICsg ICAgICAgICAgICBmb3IgcG9ydCBpbiBwb3J0czoNCj4gPiArICAgICAgICAgICAgICAgIG5ldGRl diA9IHNlbGYuZHV0LnBvcnRzX2luZm9bcG9ydF1bJ3BvcnQnXQ0KPiA+ICsgICAgICAgICAgICAg ICAgZHJpdmVyX25vdyA9IG5ldGRldi5nZXRfbmljX2RyaXZlcigpDQo+ID4gKyAgICAgICAgICAg ICAgICBpZiBkcml2ZXIgPT0gIiI6DQo+ID4gKyAgICAgICAgICAgICAgICAgICAgZHJpdmVyID0g bmV0ZGV2LmRlZmF1bHRfZHJpdmVyDQo+ID4gKyAgICAgICAgICAgICAgICBpZiBkcml2ZXIgIT0g ZHJpdmVyX25vdzoNCj4gPiArICAgICAgICAgICAgICAgICAgICBuZXRkZXYuYmluZF9kcml2ZXIo ZHJpdmVyPWRyaXZlcikNCj4gPiArDQo+ID4gKyAgICBkZWYgc2V0dXBfdm1fZW52KHNlbGYsIGRy aXZlcj0nZGVmYXVsdCcpOg0KPiA+ICsgICAgICAgICIiIg0KPiA+ICsgICAgICAgIENyZWF0ZSB0 ZXN0aW5nIGVudmlyb25tZW50IHdpdGggMVZGIGdlbmVyYXRlZCBmcm9tIDFQRg0KPiA+ICsgICAg ICAgICIiIg0KPiA+ICsgICAgICAgIGlmIHNlbGYuZW52X2RvbmU6DQo+ID4gKyAgICAgICAgICAg IHJldHVybg0KPiA+ICsNCj4gPiArICAgICAgICAjIGJpbmQgdG8gZGVmYXVsdCBkcml2ZXINCj4g PiArICAgICAgICBzZWxmLmJpbmRfbmljX2RyaXZlcihzZWxmLmR1dF9wb3J0c1s6MV0sIGRyaXZl cj0iIikNCj4gPiArDQo+ID4gKyAgICAgICAgc2VsZi51c2VkX2R1dF9wb3J0ID0gc2VsZi5kdXRf cG9ydHNbMF0NCj4gPiArICAgICAgICBzZWxmLmhvc3RfaW50ZiA9IHNlbGYuZHV0LnBvcnRzX2lu Zm9bc2VsZi51c2VkX2R1dF9wb3J0XVsnaW50ZiddDQo+ID4gKyAgICAgICAgdGVzdGVyX3BvcnQg PSBzZWxmLnRlc3Rlci5nZXRfbG9jYWxfcG9ydChzZWxmLnVzZWRfZHV0X3BvcnQpDQo+ID4gKyAg ICAgICAgc2VsZi50ZXN0ZXJfaW50ZiA9IHNlbGYudGVzdGVyLmdldF9pbnRlcmZhY2UodGVzdGVy X3BvcnQpDQo+ID4gKw0KPiA+ICsgICAgICAgIHNlbGYuZHV0LmdlbmVyYXRlX3NyaW92X3Zmc19i eV9wb3J0KA0KPiA+ICsgICAgICAgICAgICBzZWxmLnVzZWRfZHV0X3BvcnQsIDEsIGRyaXZlcj1k cml2ZXIpDQo+ID4gKyAgICAgICAgc2VsZi5zcmlvdl92ZnNfcG9ydCA9IHNlbGYuZHV0LnBvcnRz X2luZm9bDQo+ID4gKyAgICAgICAgICAgIHNlbGYudXNlZF9kdXRfcG9ydF1bJ3Zmc19wb3J0J10N Cj4gPiArICAgICAgICBzZWxmLnZmX21hYyA9ICIwMDoxMDowMDowMDowMDowMCINCj4gPiArICAg ICAgICBzZWxmLmR1dC5zZW5kX2V4cGVjdCgiaXAgbGluayBzZXQgJXMgdmYgMCBtYWMgJXMiICUN Cj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoc2VsZi5ob3N0X2ludGYsIHNlbGYu dmZfbWFjKSwgIiMgIikNCj4gPiArDQo+ID4gKyAgICAgICAgdHJ5Og0KPiA+ICsNCj4gPiArICAg ICAgICAgICAgZm9yIHBvcnQgaW4gc2VsZi5zcmlvdl92ZnNfcG9ydDoNCj4gPiArICAgICAgICAg ICAgICAgIHBvcnQuYmluZF9kcml2ZXIoJ3BjaS1zdHViJykNCj4gPiArDQo+ID4gKyAgICAgICAg ICAgIHRpbWUuc2xlZXAoMSkNCj4gPiArICAgICAgICAgICAgdmZfcG9wdCA9IHsnb3B0X2hvc3Qn OiBzZWxmLnNyaW92X3Zmc19wb3J0WzBdLnBjaX0NCj4gPiArDQo+ID4gKyAgICAgICAgICAgICMg c2V0IHVwIFZNIEVOVg0KPiA+ICsgICAgICAgICAgICBzZWxmLnZtID0gUUVNVUt2bShzZWxmLmR1 dCwgJ3ZtMCcsICd2Zl92bGFuJykNCj4gPiArICAgICAgICAgICAgc2VsZi52bS5zZXRfdm1fZGV2 aWNlKGRyaXZlcj0ncGNpLWFzc2lnbicsICoqdmZfcG9wdCkNCj4gPiArICAgICAgICAgICAgc2Vs Zi52bV9kdXQgPSBzZWxmLnZtLnN0YXJ0KCkNCj4gPiArICAgICAgICAgICAgaWYgc2VsZi52bV9k dXQgaXMgTm9uZToNCj4gPiArICAgICAgICAgICAgICAgIHJhaXNlIEV4Y2VwdGlvbigiU2V0IHVw IFZNIEVOViBmYWlsZWQhIikNCj4gPiArDQo+ID4gKyAgICAgICAgICAgIFRFU1RQTURfTUFJTiA9 ICJhcHAvdGVzdC1wbWQvdGVzdHBtZC5jIg0KPiA+ICsgICAgICAgICAgICBpZiBzZWxmLmtkcml2 ZXIgPT0gIml4Z2JlIjoNCj4gPiArICAgICAgICAgICAgICAgIHNlbGYudm1fZHV0LnNlbmRfZXhw ZWN0KCJzZWQgLWkgLWUgJ3MvLmp1bWJvX2ZyYW1lDQo+ID0gLiokLy5qdW1ib19mcmFtZSA9IDEs L2cnICVzIiAlIFRFU1RQTURfTUFJTiwgIiMgIikNCj4gPiArICAgICAgICAgICAgICAgIHNlbGYu dm1fZHV0LmJ1aWxkX2luc3RhbGxfZHBkayhzZWxmLnRhcmdldCkNCj4gPiArDQo+ID4gKyAgICAg ICAgICAgIHNlbGYudm1fdGVzdHBtZCA9IFBtZE91dHB1dChzZWxmLnZtX2R1dCkNCj4gPiArDQo+ ID4gKyAgICAgICAgZXhjZXB0IEV4Y2VwdGlvbiBhcyBlOg0KPiA+ICsgICAgICAgICAgICBzZWxm LmRlc3Ryb3lfdm1fZW52KCkNCj4gPiArICAgICAgICAgICAgcmFpc2UgRXhjZXB0aW9uKGUpDQo+ ID4gKw0KPiA+ICsgICAgICAgIHNlbGYuZW52X2RvbmUgPSBUcnVlDQo+ID4gKw0KPiA+ICsgICAg ZGVmIGRlc3Ryb3lfdm1fZW52KHNlbGYpOg0KPiA+ICsgICAgICAgIGlmIGdldGF0dHIoc2VsZiwg J3ZtJywgTm9uZSk6DQo+ID4gKyAgICAgICAgICAgIHNlbGYudm1fZHV0LmtpbGxfYWxsKCkNCj4g PiArICAgICAgICAgICAgc2VsZi52bV90ZXN0cG1kID0gTm9uZQ0KPiA+ICsgICAgICAgICAgICBz ZWxmLnZtX2R1dF9wb3J0cyA9IE5vbmUNCj4gPiArICAgICAgICAgICAgIyBkZXN0cm95IHZtMA0K PiA+ICsgICAgICAgICAgICBzZWxmLnZtLnN0b3AoKQ0KPiA+ICsgICAgICAgICAgICBzZWxmLnZt ID0gTm9uZQ0KPiA+ICsNCj4gPiArICAgICAgICBpZiBnZXRhdHRyKHNlbGYsICd1c2VkX2R1dF9w b3J0JywgTm9uZSk6DQo+ID4gKyAgICAgICAgICAgIHNlbGYuZHV0LmRlc3Ryb3lfc3Jpb3ZfdmZz X2J5X3BvcnQoc2VsZi51c2VkX2R1dF9wb3J0KQ0KPiA+ICsgICAgICAgICAgICBzZWxmLnVzZWRf ZHV0X3BvcnQgPSBOb25lDQo+ID4gKw0KPiA+ICsgICAgICAgIHNlbGYuYmluZF9uaWNfZHJpdmVy KHNlbGYuZHV0X3BvcnRzWzoxXSwgZHJpdmVyPSJpZ2JfdWlvIikNCj4gPiArDQo+ID4gKyAgICAg ICAgc2VsZi5lbnZfZG9uZSA9IEZhbHNlDQo+ID4gKw0KPiA+ICsNCj4gPiArICAgIGRlZiBqdW1i b2ZyYW1lc19nZXRfc3RhdChzZWxmLCBwb3J0aWQsIHJ4X3R4KToNCj4gPiArICAgICAgICAiIiIN Cj4gPiArICAgICAgICBHZXQgcGFja2V0cyBudW1iZXIgZnJvbSBwb3J0IHN0YXRpc3RpYw0KPiA+ ICsgICAgICAgICIiIg0KPiA+ICsgICAgICAgIHN0YXRzID0gc2VsZi52bV90ZXN0cG1kLmdldF9w bWRfc3RhdHMocG9ydGlkKQ0KPiA+ICsgICAgICAgIGlmIHJ4X3R4ID09ICJyeCI6DQo+ID4gKyAg ICAgICAgICAgIHJldHVybiBbc3RhdHNbJ1JYLXBhY2tldHMnXSwgc3RhdHNbJ1JYLWVycm9ycydd LCBzdGF0c1snUlgtDQo+IGJ5dGVzJ11dDQo+ID4gKyAgICAgICAgZWxpZiByeF90eCA9PSAidHgi Og0KPiA+ICsgICAgICAgICAgICByZXR1cm4gW3N0YXRzWydUWC1wYWNrZXRzJ10sIHN0YXRzWydU WC1lcnJvcnMnXSwgc3RhdHNbJ1RYLQ0KPiBieXRlcyddXQ0KPiA+ICsgICAgICAgIGVsc2U6DQo+ ID4gKyAgICAgICAgICAgIHJldHVybiBOb25lDQo+ID4gKw0KPiA+ICsgICAgZGVmIGp1bWJvZnJh bWVzX3NlbmRfcGFja2V0KHNlbGYsIHBrdHNpemUsIHJlY2VpdmVkPVRydWUpOg0KPiA+ICsgICAg ICAgICIiIg0KPiA+ICsgICAgICAgIFNlbmQgMSBwYWNrZXQgdG8gcG9ydGlkDQo+ID4gKyAgICAg ICAgIiIiDQo+ID4gKyAgICAgICAgdHhfcGt0c19vcmksIF8sIHR4X2J5dGVzX29yaSA9IFtpbnQo XykgZm9yIF8gaW4NCj4gc2VsZi5qdW1ib2ZyYW1lc19nZXRfc3RhdChzZWxmLnZtX3BvcnQsICJ0 eCIpXQ0KPiA+ICsgICAgICAgIHJ4X3BrdHNfb3JpLCByeF9lcnJfb3JpLCByeF9ieXRlc19vcmkg PSBbaW50KF8pIGZvciBfIGluDQo+IHNlbGYuanVtYm9mcmFtZXNfZ2V0X3N0YXQoc2VsZi52bV9w b3J0LCAicngiKV0NCj4gPiArDQo+ID4gKyAgICAgICAgbWFjID0gc2VsZi52bV9kdXQuZ2V0X21h Y19hZGRyZXNzKHNlbGYudm1fcG9ydCkNCj4gPiArDQo+ID4gKyAgICAgICAgcGt0ID0gUGFja2V0 KHBrdF90eXBlPSdVRFAnLCBwa3RfbGVuPXBrdHNpemUpDQo+ID4gKyAgICAgICAgcGt0LmNvbmZp Z19sYXllcignZXRoZXInLCB7J2RzdCc6IG1hY30pDQo+ID4gKyAgICAgICAgcGt0LnNlbmRfcGt0 KHR4X3BvcnQ9c2VsZi50ZXN0ZXJfaW50ZikNCj4gPiArDQo+ID4gKyAgICAgICAgdGltZS5zbGVl cCgxKQ0KPiA+ICsNCj4gPiArICAgICAgICB0eF9wa3RzLCBfLCB0eF9ieXRlcyA9IFtpbnQoXykg Zm9yIF8gaW4NCj4gc2VsZi5qdW1ib2ZyYW1lc19nZXRfc3RhdChzZWxmLnBvcnQsICJ0eCIpXQ0K PiA+ICsgICAgICAgIHJ4X3BrdHMsIHJ4X2VyciwgcnhfYnl0ZXMgPSBbaW50KF8pIGZvciBfIGlu DQo+IHNlbGYuanVtYm9mcmFtZXNfZ2V0X3N0YXQoc2VsZi52bV9wb3J0LCAicngiKV0NCj4gPiAr DQo+ID4gKyAgICAgICAgdHhfcGt0cyAtPSB0eF9wa3RzX29yaQ0KPiA+ICsgICAgICAgIHR4X2J5 dGVzIC09IHR4X2J5dGVzX29yaQ0KPiA+ICsgICAgICAgIHJ4X3BrdHMgLT0gcnhfcGt0c19vcmkN Cj4gPiArICAgICAgICByeF9ieXRlcyAtPSByeF9ieXRlc19vcmkNCj4gPiArICAgICAgICByeF9l cnIgLT0gcnhfZXJyX29yaQ0KPiA+ICsNCj4gPiArICAgICAgICBpZiByZWNlaXZlZDoNCj4gPiAr ICAgICAgICAgICAgc2VsZi52ZXJpZnkoKHJ4X3BrdHMgPT0gMSkgYW5kICh0eF9wa3RzID09IDEp LCAicGFja2V0IHBhc3MNCj4gYXNzZXJ0IGVycm9yIikNCj4gPiArICAgICAgICAgICAgaWYgc2Vs Zi5rZHJpdmVyID09ICJpeGdiZSI6DQo+ID4gKyAgICAgICAgICAgICAgICBzZWxmLnZlcmlmeSgo cnhfYnl0ZXMgKyA0KSA9PSBwa3RzaXplLCAiUmVjZXZpZSBwYWNrZXQNCj4gc2l6ZSBzaG91bGQg YmUgcGFja2V0IHNpemUgLSA0IikNCj4gPiArICAgICAgICAgICAgZWxzZToNCj4gPiArICAgICAg ICAgICAgICAgIHNlbGYudmVyaWZ5KHJ4X2J5dGVzID09IHBrdHNpemUsICJUcmFuc21pdCBwYWNr ZXQgc2l6ZQ0KPiBzaG91bGQgYmUgZXF1YWwgdG8gcGFja2V0IHNpemUiKQ0KPiA+ICsgICAgICAg ICAgICBzZWxmLnZlcmlmeSgodHhfYnl0ZXMgKyA0KSA9PSBwa3RzaXplLCAiVHJhbnNtaXQgcGFj a2V0DQo+IHNpemUgc2hvdWxkIGJlIHBhY2tldCBzaXplIC0gNCIpDQo+ID4gKyAgICAgICAgZWxz ZToNCj4gPiArICAgICAgICAgICAgc2VsZi52ZXJpZnkocnhfZXJyID09IDEgb3IgdHhfcGt0cyA9 PSAwLCAicGFja2V0IGRyb3ANCj4gYXNzZXJ0IGVycm9yIikNCj4gPiArDQo+ID4gKyAgICBkZWYg dGVzdF92Zl9ub3JtYWxfbm9qdW1ibyhzZWxmKToNCj4gPiArICAgICAgICAiIiINCj4gPiArICAg ICAgICBUaGlzIGNhc2UgYWltcyB0byB0ZXN0IHRyYW5zbWl0dGluZyBub3JtYWwgc2l6ZSBwYWNr ZXQgd2l0aG91dA0KPiBqdW1ibyBlbmFibGUNCj4gPiArICAgICAgICAiIiINCj4gPiArICAgICAg ICAjIHNob3VsZCBlbmFibGUganVtYm8gb24gaG9zdA0KPiA+ICsgICAgICAgIGlmIHNlbGYua2Ry aXZlciA9PSAiaXhnYmUiOg0KPiA+ICsgICAgICAgICAgICBzZWxmLmR1dG9iaiA9IHNlbGYuZHV0 LnBvcnRzX2luZm9bc2VsZi5wb3J0XVsncG9ydCddDQo+ID4gKyAgICAgICAgICAgIHNlbGYuZHV0 b2JqLmVuYWJsZV9qdW1ibyhmcmFtZXNpemU9RVRIRVJfU1RBTkRBUkRfTVRVKQ0KPiA+ICsgICAg ICAgICAgICB0aW1lLnNsZWVwKDIpDQo+ID4gKw0KPiA+ICsgICAgICAgIHNlbGYudm1fdGVzdHBt ZC5zdGFydF90ZXN0cG1kKCJEZWZhdWx0IiwgIi0tbWF4LXBrdC1sZW49JWQgLS0NCj4gcG9ydC10 b3BvbG9neT1sb29wIC0tdHhxZmxhZ3M9MHgwIiAlIChFVEhFUl9TVEFOREFSRF9NVFUpKQ0KPiA+ ICsgICAgICAgIGlmIHNlbGYua2RyaXZlciA9PSAiaTQwZSI6DQo+ID4gKyAgICAgICAgICAgICMg Zm9ydmlsbGUgdmYgY3JjIHNldHRpbmcgYWxpYXMgd2l0aCBob3N0DQo+ID4gKyAgICAgICAgICAg IHNlbGYudm1fdGVzdHBtZC5leGVjdXRlX2NtZCgicG9ydCBzdG9wIGFsbCIpDQo+ID4gKyAgICAg ICAgICAgIHNlbGYudm1fdGVzdHBtZC5leGVjdXRlX2NtZCgicG9ydCBjb25maWcgYWxsIGNyYy1z dHJpcCBvbiIpDQo+ID4gKyAgICAgICAgICAgIHNlbGYudm1fdGVzdHBtZC5leGVjdXRlX2NtZCgi cG9ydCBzdGFydCBhbGwiKQ0KPiA+ICsNCj4gPiArICAgICAgICBzZWxmLnZtX3Rlc3RwbWQuZXhl Y3V0ZV9jbWQoInNldCBmd2QgbWFjIikNCj4gPiArICAgICAgICBzZWxmLnZtX3Rlc3RwbWQuZXhl Y3V0ZV9jbWQoInN0YXJ0IikNCj4gPiArDQo+ID4gKyAgICAgICAgc2VsZi5qdW1ib2ZyYW1lc19z ZW5kX3BhY2tldChFVEhFUl9TVEFOREFSRF9NVFUgLSAxKQ0KPiA+ICsgICAgICAgIHNlbGYuanVt Ym9mcmFtZXNfc2VuZF9wYWNrZXQoRVRIRVJfU1RBTkRBUkRfTVRVKQ0KPiA+ICsNCj4gPiArICAg ICAgICBzZWxmLnZtX3Rlc3RwbWQuZXhlY3V0ZV9jbWQoInN0b3AiKQ0KPiA+ICsgICAgICAgIHNl bGYudm1fdGVzdHBtZC5xdWl0KCkNCj4gPiArDQo+ID4gKyAgICBkZWYgdGVzdF92Zl9ub3JtYWxf d2l0aGp1bWJvKHNlbGYpOg0KPiA+ICsgICAgICAgICIiIg0KPiA+ICsgICAgICAgIFdoZW4ganVt Ym8gZnJhbWUgc3VwcG9ydGVkLCB0aGlzIGNhc2UgaXMgdG8gdmVyaWZ5IHRoYXQgdGhlDQo+IG5v cm1hbCBzaXplDQo+ID4gKyAgICAgICAgcGFja2V0IGZvcndyZGluZyBzaG91bGQgYmUgc3VwcG9y dCBjb3JyZWN0Lg0KPiA+ICsgICAgICAgICIiIg0KPiA+ICsgICAgICAgICMgc2hvdWxkIGVuYWJs ZSBqdW1ibyBvbiBob3N0DQo+ID4gKyAgICAgICAgaWYgc2VsZi5rZHJpdmVyID09ICJpeGdiZSI6 DQo+ID4gKyAgICAgICAgICAgIHNlbGYuZHV0b2JqID0gc2VsZi5kdXQucG9ydHNfaW5mb1tzZWxm LnBvcnRdWydwb3J0J10NCj4gPiArICAgICAgICAgICAgc2VsZi5kdXRvYmouZW5hYmxlX2p1bWJv KGZyYW1lc2l6ZT1FVEhFUl9KVU1CT19GUkFNRV9NVFUpDQo+ID4gKyAgICAgICAgICAgIHRpbWUu c2xlZXAoMikNCj4gPiArDQo+ID4gKyAgICAgICAgc2VsZi52bV90ZXN0cG1kLnN0YXJ0X3Rlc3Rw bWQoIkRlZmF1bHQiLCAiLS1tYXgtcGt0LWxlbj0lcyAtLQ0KPiBwb3J0LXRvcG9sb2d5PWxvb3Ag LS10eHFmbGFncz0weDAiICUgKEVUSEVSX0pVTUJPX0ZSQU1FX01UVSkpDQo+ID4gKyAgICAgICAg aWYgc2VsZi5rZHJpdmVyID09ICJpNDBlIjoNCj4gPiArICAgICAgICAgICAgIyBmb3J2aWxsZSB2 ZiBjcmMgc2V0dGluZyBhbGlhcyB3aXRoIGhvc3QNCj4gPiArICAgICAgICAgICAgc2VsZi52bV90 ZXN0cG1kLmV4ZWN1dGVfY21kKCJwb3J0IHN0b3AgYWxsIikNCj4gPiArICAgICAgICAgICAgc2Vs Zi52bV90ZXN0cG1kLmV4ZWN1dGVfY21kKCJwb3J0IGNvbmZpZyBhbGwgY3JjLXN0cmlwIG9uIikN Cj4gPiArICAgICAgICAgICAgc2VsZi52bV90ZXN0cG1kLmV4ZWN1dGVfY21kKCJwb3J0IHN0YXJ0 IGFsbCIpDQo+ID4gKw0KPiA+ICsgICAgICAgIHNlbGYudm1fdGVzdHBtZC5leGVjdXRlX2NtZCgi c2V0IGZ3ZCBtYWMiKQ0KPiA+ICsgICAgICAgIHNlbGYudm1fdGVzdHBtZC5leGVjdXRlX2NtZCgi c3RhcnQiKQ0KPiA+ICsNCj4gPiArICAgICAgICBzZWxmLmp1bWJvZnJhbWVzX3NlbmRfcGFja2V0 KEVUSEVSX1NUQU5EQVJEX01UVSAtIDEpDQo+ID4gKyAgICAgICAgc2VsZi5qdW1ib2ZyYW1lc19z ZW5kX3BhY2tldChFVEhFUl9TVEFOREFSRF9NVFUpDQo+ID4gKw0KPiA+ICsgICAgICAgIHNlbGYu dm1fdGVzdHBtZC5leGVjdXRlX2NtZCgic3RvcCIpDQo+ID4gKyAgICAgICAgc2VsZi52bV90ZXN0 cG1kLnF1aXQoKQ0KPiA+ICsNCj4gPiArICAgIGRlZiB0ZXN0X3ZmX2p1bWJvX25vanVtYm8oc2Vs Zik6DQo+ID4gKyAgICAgICAgIiIiDQo+ID4gKyAgICAgICAgVGhpcyBjYXNlIGFpbXMgdG8gdGVz dCB0cmFuc21pdHRpbmcganVtYm8gZnJhbWUgcGFja2V0IG9uDQo+IHRlc3RwbWQgd2l0aG91dA0K PiA+ICsgICAgICAgIGp1bWJvIGZyYW1lIHN1cHBvcnQuDQo+ID4gKyAgICAgICAgIiIiDQo+ID4g KyAgICAgICAgIyBzaG91bGQgZW5hYmxlIGp1bWJvIG9uIGhvc3QNCj4gPiArICAgICAgICBpZiBz ZWxmLmtkcml2ZXIgPT0gIml4Z2JlIjoNCj4gPiArICAgICAgICAgICAgc2VsZi5kdXRvYmogPSBz ZWxmLmR1dC5wb3J0c19pbmZvW3NlbGYucG9ydF1bJ3BvcnQnXQ0KPiA+ICsgICAgICAgICAgICBz ZWxmLmR1dG9iai5lbmFibGVfanVtYm8oZnJhbWVzaXplPUVUSEVSX1NUQU5EQVJEX01UVSkNCj4g PiArICAgICAgICAgICAgdGltZS5zbGVlcCgyKQ0KPiA+ICsNCj4gPiArICAgICAgICBzZWxmLnZt X3Rlc3RwbWQuc3RhcnRfdGVzdHBtZCgiRGVmYXVsdCIsICItLXBvcnQtdG9wb2xvZ3k9bG9vcA0K PiAtLXR4cWZsYWdzPTB4MCIpDQo+ID4gKyAgICAgICAgaWYgc2VsZi5rZHJpdmVyID09ICJpNDBl IjoNCj4gPiArICAgICAgICAgICAgIyBmb3J2aWxsZSB2ZiBjcmMgc2V0dGluZyBhbGlhcyB3aXRo IGhvc3QNCj4gPiArICAgICAgICAgICAgc2VsZi52bV90ZXN0cG1kLmV4ZWN1dGVfY21kKCJwb3J0 IHN0b3AgYWxsIikNCj4gPiArICAgICAgICAgICAgc2VsZi52bV90ZXN0cG1kLmV4ZWN1dGVfY21k KCJwb3J0IGNvbmZpZyBhbGwgY3JjLXN0cmlwIG9uIikNCj4gPiArICAgICAgICAgICAgc2VsZi52 bV90ZXN0cG1kLmV4ZWN1dGVfY21kKCJwb3J0IHN0YXJ0IGFsbCIpDQo+ID4gKw0KPiA+ICsgICAg ICAgIHNlbGYudm1fdGVzdHBtZC5leGVjdXRlX2NtZCgic2V0IGZ3ZCBtYWMiKQ0KPiA+ICsgICAg ICAgIHNlbGYudm1fdGVzdHBtZC5leGVjdXRlX2NtZCgic3RhcnQiKQ0KPiA+ICsNCj4gPiArICAg ICAgICBzZWxmLmp1bWJvZnJhbWVzX3NlbmRfcGFja2V0KEVUSEVSX1NUQU5EQVJEX01UVSArIDEs IEZhbHNlKQ0KPiA+ICsNCj4gPiArICAgICAgICBzZWxmLnZtX3Rlc3RwbWQuZXhlY3V0ZV9jbWQo InN0b3AiKQ0KPiA+ICsgICAgICAgIHNlbGYudm1fdGVzdHBtZC5xdWl0KCkNCj4gPiArDQo+ID4g KyAgICBkZWYgdGVzdF92Zl9qdW1ib193aXRoanVtYm8oc2VsZik6DQo+ID4gKyAgICAgICAgIiIi DQo+ID4gKyAgICAgICAgV2hlbiBqdW1ibyBmcmFtZSBzdXBwb3J0ZWQsIHRoaXMgY2FzZSBpcyB0 byB2ZXJpZnkgdGhhdCBqdW1ibw0KPiBmcmFtZQ0KPiA+ICsgICAgICAgIHBhY2tldCBjYW4gYmUg Zm9yd2FyZGVkIGNvcnJlY3QuDQo+ID4gKyAgICAgICAgIiIiDQo+ID4gKyAgICAgICAgIyBzaG91 bGQgZW5hYmxlIGp1bWJvIG9uIGhvc3QNCj4gPiArICAgICAgICBpZiBzZWxmLmtkcml2ZXIgPT0g Iml4Z2JlIjoNCj4gPiArICAgICAgICAgICAgc2VsZi5kdXRvYmogPSBzZWxmLmR1dC5wb3J0c19p bmZvW3NlbGYucG9ydF1bJ3BvcnQnXQ0KPiA+ICsgICAgICAgICAgICBzZWxmLmR1dG9iai5lbmFi bGVfanVtYm8oZnJhbWVzaXplPUVUSEVSX0pVTUJPX0ZSQU1FX01UVSkNCj4gPiArICAgICAgICAg ICAgdGltZS5zbGVlcCgyKQ0KPiA+ICsNCj4gPiArICAgICAgICBzZWxmLnZtX3Rlc3RwbWQuc3Rh cnRfdGVzdHBtZCgiRGVmYXVsdCIsICItLW1heC1wa3QtbGVuPSVzIC0tDQo+IHBvcnQtdG9wb2xv Z3k9bG9vcCAtLXR4cWZsYWdzPTB4MCIgJSAoRVRIRVJfSlVNQk9fRlJBTUVfTVRVKSkNCj4gPiAr ICAgICAgICBpZiBzZWxmLmtkcml2ZXIgPT0gImk0MGUiOg0KPiA+ICsgICAgICAgICAgICAjIGZv cnZpbGxlIHZmIGNyYyBzZXR0aW5nIGFsaWFzIHdpdGggaG9zdA0KPiA+ICsgICAgICAgICAgICBz ZWxmLnZtX3Rlc3RwbWQuZXhlY3V0ZV9jbWQoInBvcnQgc3RvcCBhbGwiKQ0KPiA+ICsgICAgICAg ICAgICBzZWxmLnZtX3Rlc3RwbWQuZXhlY3V0ZV9jbWQoInBvcnQgY29uZmlnIGFsbCBjcmMtc3Ry aXAgb24iKQ0KPiA+ICsgICAgICAgICAgICBzZWxmLnZtX3Rlc3RwbWQuZXhlY3V0ZV9jbWQoInBv cnQgc3RhcnQgYWxsIikNCj4gPiArDQo+ID4gKyAgICAgICAgc2VsZi52bV90ZXN0cG1kLmV4ZWN1 dGVfY21kKCJzZXQgZndkIG1hYyIpDQo+ID4gKyAgICAgICAgc2VsZi52bV90ZXN0cG1kLmV4ZWN1 dGVfY21kKCJzdGFydCIpDQo+ID4gKw0KPiA+ICsgICAgICAgIHNlbGYuanVtYm9mcmFtZXNfc2Vu ZF9wYWNrZXQoRVRIRVJfU1RBTkRBUkRfTVRVICsgMSkNCj4gPiArICAgICAgICBzZWxmLmp1bWJv ZnJhbWVzX3NlbmRfcGFja2V0KEVUSEVSX0pVTUJPX0ZSQU1FX01UVSAtIDEpDQo+ID4gKyAgICAg ICAgc2VsZi5qdW1ib2ZyYW1lc19zZW5kX3BhY2tldChFVEhFUl9KVU1CT19GUkFNRV9NVFUpDQo+ ID4gKw0KPiA+ICsgICAgICAgIHNlbGYudm1fdGVzdHBtZC5leGVjdXRlX2NtZCgic3RvcCIpDQo+ ID4gKyAgICAgICAgc2VsZi52bV90ZXN0cG1kLnF1aXQoKQ0KPiA+ICsNCj4gPiArICAgIGRlZiB0 ZXN0X3ZmX2p1bWJvX292ZXJqdW1ibyhzZWxmKToNCj4gPiArICAgICAgICAiIiINCj4gPiArICAg ICAgICBXaGVuIHRoZSBqdWJtbyBmcmFtZSBNVFUgc2V0IGFzIDkwMDAsIHRoaXMgY2FzZSBpcyB0 byB2ZXJpZnkNCj4gdGhhdCB0aGUNCj4gPiArICAgICAgICBwYWNrZXQgd2hpY2ggdGhlIGxlbmd0 aCBiaWdnZXIgdGhhbiBNVFUgY2FuIG5vdCBiZSBmb3J3YXJkZWQuDQo+ID4gKyAgICAgICAgIiIi DQo+ID4gKyAgICAgICAgIyBzaG91bGQgZW5hYmxlIGp1bWJvIG9uIGhvc3QNCj4gPiArICAgICAg ICBpZiBzZWxmLmtkcml2ZXIgPT0gIml4Z2JlIjoNCj4gPiArICAgICAgICAgICAgc2VsZi5kdXRv YmogPSBzZWxmLmR1dC5wb3J0c19pbmZvW3NlbGYucG9ydF1bJ3BvcnQnXQ0KPiA+ICsgICAgICAg ICAgICBzZWxmLmR1dG9iai5lbmFibGVfanVtYm8oZnJhbWVzaXplPUVUSEVSX0pVTUJPX0ZSQU1F X01UVSkNCj4gPiArICAgICAgICAgICAgdGltZS5zbGVlcCgyKQ0KPiA+ICsNCj4gPiArICAgICAg ICBzZWxmLnZtX3Rlc3RwbWQuc3RhcnRfdGVzdHBtZCgiRGVmYXVsdCIsICItLW1heC1wa3QtbGVu PSVzIC0tDQo+IHBvcnQtdG9wb2xvZ3k9bG9vcCAtLXR4cWZsYWdzPTB4MCIgJSAoRVRIRVJfSlVN Qk9fRlJBTUVfTVRVKSkNCj4gPiArICAgICAgICBpZiBzZWxmLmtkcml2ZXIgPT0gImk0MGUiOg0K PiA+ICsgICAgICAgICAgICAjIGZvcnZpbGxlIHZmIGNyYyBzZXR0aW5nIGFsaWFzIHdpdGggaG9z dA0KPiA+ICsgICAgICAgICAgICBzZWxmLnZtX3Rlc3RwbWQuZXhlY3V0ZV9jbWQoInBvcnQgc3Rv cCBhbGwiKQ0KPiA+ICsgICAgICAgICAgICBzZWxmLnZtX3Rlc3RwbWQuZXhlY3V0ZV9jbWQoInBv cnQgY29uZmlnIGFsbCBjcmMtc3RyaXAgb24iKQ0KPiA+ICsgICAgICAgICAgICBzZWxmLnZtX3Rl c3RwbWQuZXhlY3V0ZV9jbWQoInBvcnQgc3RhcnQgYWxsIikNCj4gPiArDQo+ID4gKyAgICAgICAg c2VsZi52bV90ZXN0cG1kLmV4ZWN1dGVfY21kKCJzZXQgZndkIG1hYyIpDQo+ID4gKyAgICAgICAg c2VsZi52bV90ZXN0cG1kLmV4ZWN1dGVfY21kKCJzdGFydCIpDQo+ID4gKw0KPiA+ICsgICAgICAg IHNlbGYuanVtYm9mcmFtZXNfc2VuZF9wYWNrZXQoRVRIRVJfSlVNQk9fRlJBTUVfTVRVICsgMSwg RmFsc2UpDQo+ID4gKw0KPiA+ICsgICAgICAgIHNlbGYudm1fdGVzdHBtZC5leGVjdXRlX2NtZCgi c3RvcCIpDQo+ID4gKyAgICAgICAgc2VsZi52bV90ZXN0cG1kLnF1aXQoKQ0KPiA+ICsNCj4gPiAr ICAgIGRlZiB0ZWFyX2Rvd24oc2VsZik6DQo+ID4gKyAgICAgICAgIiIiDQo+ID4gKyAgICAgICAg UnVuIGFmdGVyIGVhY2ggdGVzdCBjYXNlLg0KPiA+ICsgICAgICAgICIiIg0KPiA+ICsgICAgICAg IHNlbGYudm1fZHV0LmtpbGxfYWxsKCkNCj4gPiArICAgICAgICBwYXNzDQo+ID4gKw0KPiA+ICsg ICAgZGVmIHRlYXJfZG93bl9hbGwoc2VsZik6DQo+ID4gKyAgICAgICAgIiIiDQo+ID4gKyAgICAg ICAgV2hlbiB0aGUgY2FzZSBvZiB0aGlzIHRlc3Qgc3VpdGUgZmluaXNoZWQsIHRoZSBlbnZpcm9t ZW50DQo+IHNob3VsZA0KPiA+ICsgICAgICAgIGNsZWFyIHVwLg0KPiA+ICsgICAgICAgICIiIg0K PiA+ICsgICAgICAgIHNlbGYuZGVzdHJveV92bV9lbnYoKQ0KPiA+ICsgICAgICAgIHNlbGYubmV0 b2JqLmVuYWJsZV9qdW1ibyhmcmFtZXNpemU9RVRIRVJfU1RBTkRBUkRfTVRVKQ0KPiA+ICsNCj4g PiAtLQ0KPiA+IDEuOS4zDQo+ID4NCg==