From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Sony.onmicrosoft.com; s=selector1-Sony-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=UZQBinfhFTGfNyuJy6x5LnenlRzEYvMIJsPTwsMLJG4=; b=NkvQNWklkjT2P/NZf93nrT+vS51xa1u20bEFGTcuhFaj3mkMd8PEV7/yqzPtJ07dMAdA3DaRrcfhyb8ELHNnCQehR3jSOCqvxENOdV9Hjt1Sx2BgvLYVTtoEkl4adxT6PoXsw+k7kr772ySKMtD5DCFBqTHj1Dw0nMVXKv7JVFY= From: Date: Tue, 27 Feb 2018 19:47:27 +0000 Message-ID: References: <48ee9177-bd98-d609-5328-b21a6f110e1e@toshiba-tsdv.com> In-Reply-To: <48ee9177-bd98-d609-5328-b21a6f110e1e@toshiba-tsdv.com> Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 Subject: Re: [Fuego] [PATCH 2/2] ftc: gen_report: Add new functions for getting data to, generate the report List-Id: Mailing list for the Fuego test framework List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: tuyen.hoangvan@toshiba-tsdv.com, fuego@lists.linuxfoundation.org Y29tbWVudHMgaW5saW5lIGJlbG93Lg0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ IEZyb206IEhvYW5nIFZhbiBUdXllbg0KPiANCj4gSGVsbG8gVGltLA0KPiANCj4gSSBhbSB3b3Jr aW5nIG9uIGdlbi1yZXBvcnQgZmVhdHVyZSAoc3VwcG9ydCBzZXZlcmFsIG90aGVyIGZvcm1hdCBs aWtlDQo+IGh0bWwsIHBkZiwgLi4uKS4NCj4gDQo+IFRoZSBhdHRhY2hlZCBwYXRjaCBkZWZpbmVz IHR3byBuZXcgZnVuY3Rpb25zIHVzZWQgZm9yIGdlbmVyYXRpbmcgZGF0YQ0KPiBmb3IgdGhlIHJl cG9ydC4NCj4gDQo+IENvdWxkIHlvdSBwbGVhc2UgY2hlY2sgaXQ/DQo+IA0KPiA9PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQo+ID09PT09 PT09PT09PT09PT09DQo+IA0KPiBGb3IgcmV1c2FiaWxpdHksIHRoZSB0d28gZnVuY3Rpb25zIGhh dmUgYmVlbiBkZWZpbmVkIHdpdGggcHVycG9zZSBsaWtlDQo+IGJlbG93Og0KPiAgICBnZW5faGVh ZGVyX2Zvcl9yZXBvcnQ6IEdldCB2YWx1ZSBmb3IgZmllbGRzIGluIHRoZSBoZWFkZXJfZmllbGRz DQo+ICh0ZXN0LCBib2FyZCwNCj4gICAgcmVwb3J0X2RhdGUsIC4uLikuDQo+ICAgIGdlbl9kYXRh X2Zvcl9yZXBvcnQ6IEdldCB2YWx1ZSBmb3IgZmllbGRzIGluIHRoZSBmaWVsZHMgdmFyaWFibGUN Cj4gKHRlc3RfbmFtZSwNCj4gICAgc3BlYywgdGltZXN0YW1wLCAuLi4pLg0KPiANCj4gVGhpcyBj b21taXQgYWxzbyBtb2RpZmllcyBnZW5fdGV4dF9yZXBvcnQgZnVuY3Rpb24gdG8gY29tcGF0aWJs ZSB3aXRoDQo+IGRlZmluaW5nIHRoZSB0d28gbmV3IGZ1bnRpb25zLg0KPiBBbHNvLCBjb3JyZWN0 IHNvbWUgZ3JhbW1hciBtaXN0YWtlcy4NCj4gDQo+IFNpZ25lZC1vZmYtYnk6IEhvYW5nIFZhbiBU dXllbiA8dHV5ZW4uaG9hbmd2YW5AdG9zaGliYS10c2R2LmNvbT4NCj4gLS0tDQo+ICAgZW5naW5l L3NjcmlwdHMvZnRjIHwgNzgNCj4gKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0t LS0tLS0tLS0tLS0tLS0tLS0tDQo+ICAgMSBmaWxlIGNoYW5nZWQsIDQ3IGluc2VydGlvbnMoKyks IDMxIGRlbGV0aW9ucygtKQ0KPiANCj4gZGlmZiAtLWdpdCBhL2VuZ2luZS9zY3JpcHRzL2Z0YyBi L2VuZ2luZS9zY3JpcHRzL2Z0Yw0KPiBpbmRleCA0NGU0ZGE3Li5hMmY1YTc4IDEwMDc1NQ0KPiAt LS0gYS9lbmdpbmUvc2NyaXB0cy9mdGMNCj4gKysrIGIvZW5naW5lL3NjcmlwdHMvZnRjDQo+IEBA IC03MSw3ICs3MSw3IEBAIGRlZiBwdmFyKG5hbWUpOg0KPiANCj4gICBxdWlldCA9IDANCj4gICB2 ZXJib3NlID0gMA0KPiAtdXNlX3N0YXR1c291cHV0ID0gMQ0KPiArdXNlX3N0YXR1c291dHB1dCA9 IDENCg0KSG1tbS4gIFRoaXMgdmFyaWFibGUgYXNzaWdubWVudCB3YXMgbmV2ZXIgdXNlZCBieSBm dGMgZHVlDQp0byB0aGlzIG1pcy1zcGVsbGluZy4gIE5vdGUgdGhhdCB0aGUgZ2xvYmFsIHZhcmlh YmxlIGlzIGFsd2F5cw0Kc2V0IHRvIDAgaW4gbWFpbigpIGFueXdheS4gIFRoYXQgYWxzbyBtYWtl cyB0aGlzIGRlZmluaXRpb24NCnN1cGVyZmx1b3VzLiAgSSdtIGp1c3QgZ29pbmcgdG8gcmVtb3Zl IHRoaXMgYm9ndXMgYXNzaWdubWVudA0KY29tcGxldGVseS4NCg0KSSBjb3VsZCBnaXZlIGEgbG9u ZyBzdG9yeSBhYm91dCB3aHkgdGhpcyB2YXJpYWJsZSB3YXMgZXZlbg0KaW50cm9kdWNlZCwgYnV0 IHRoZSBsb2dpYyBvZiBpdHMgY3VycmVudCB1c2FnZSBpbiAnZnRjJyBpcyBhIG1lc3MuDQpUaGFu a3MgZm9yIGJyaW5naW5nIHRoaXMgdG8gbXkgYXR0ZW50aW9uLg0KDQo+ICAgc2VydmVyID0gamVu a2lucy5KZW5raW5zKCdodHRwOi8vbG9jYWxob3N0OjgwODAvZnVlZ28nKQ0KPiANCj4gICAjIGtl ZXAgY29uZmlndXJhdGlvbiBmaWxlIGluIC9mdWVnby1yby9jb25mIGFyZWENCj4gQEAgLTE3NDUs NyArMTc0NSw3IEBAIGNsYXNzIHdoZXJlX2NsYXNzOg0KPiAgICAgICAgICAgZm91bmQgPSBGYWxz ZQ0KPiAgICAgICAgICAgdHJ5Og0KPiAgICAgICAgICAgICAgIHJ1bl92YWx1ZSA9IHJ1bi5fX2Rp Y3RfX1tzZWxmLmZpZWxkX25hbWVdDQo+IC0gICAgICAgICAgICBmb3VuZCA9IHRydWUNCj4gKyAg ICAgICAgICAgIGZvdW5kID0gVHJ1ZQ0KDQpXb3cuICBUaGlzIGlzIGEgcGVybmljaW91cyBidWcg dGhhdCByZXN1bHRlZCBpbiB0aGlzIHRyeSBzdGF0ZW1lbnQNCkFMV0FZUyByYWlzaW5nIGFuIGV4 Y2VwdGlvbiwgcmVzdWx0aW5nIGluIGZvdW5kIGFsd2F5cyBiZWluZw0KRmFsc2UsIGFuZCB0aGUg Y29kZSBBTFdBWVMsIHRoZXJlZm9yZSwgcmVhZGluZyB0aGUgcnVuLmpzb24NCmZpbGUsIGV2ZW4g d2hlbiB0aGUgZmllbGQgY291bGQgaGF2ZSBiZWVuIHJlYWQgZnJvbSB0aGUgcnVuDQpvYmplY3Qu ICAgVGhlIGxvZ2ljIHdvdWxkIGFsbCBzdGlsbCBoYXZlIHdvcmtlZCwgYnV0IHRoaXMgd291bGQN CmhhdmUgcmVzdWx0ZWQgaW4gYmlnIHNsb3dkb3ducyBwcm9jZXNzaW5nIGRhdGEuDQoNCkdyZWF0 IGZpbmQhICBUaGFua3MuDQoNCkl0IHdvdWxkIGhhdmUgYmVlbiBiZXR0ZXIgaWYgdGhlIGFib3Zl IDIgYnVnZml4ZXMgd2VyZSBwcm92aWRlZCBpbiBzZXBhcmF0ZQ0KY29tbWl0cy4gIEknbSBub3Qg cmVhbCBzdHJpY3QgYWJvdXQgdGhpcywgYmVjYXVzZSBzbyBmYXIgd2UgaGF2ZW4ndCBkb25lIGEg bG90DQpvZiBnaXQgYmlzZWN0aW5nIG9mIEZ1ZWdvIGJ1Z3MuICBCdXQgaW4gdGhlIGZ1dHVyZSwg cGxlYXNlIGlzb2xhdGUgdW5yZWxhdGVkDQpjaGFuZ2VzIGludG8gc2VwYXJhdGUgY29tbWl0cyAo L3BhdGNoZXMpLiAgVGhhbmtzLg0KDQo+ICAgICAgICAgICBleGNlcHQ6DQo+ICAgICAgICAgICAg ICAgcGFzcw0KPiANCj4gQEAgLTE4NDksMTMgKzE4NDksOCBAQCBkZWYgZG9fbGlzdF9ydW5zKGNv bmYsIG9wdGlvbnMpOg0KPiANCj4gICAgICAgc3lzLmV4aXQoMCkNCj4gDQo+IC1kZWYgZ2VuX3Rl eHRfcmVwb3J0KHJ1bl9saXN0LCBydW5fbWFwLCBoZWFkZXJfZmllbGRzLCBmaWVsZHMpOg0KPiAt ICAgICMgZ2VuZXJhdGUgaGVhZGVyDQo+IC0gICAgZGRhc2hfbGluZT0iPSIqNzAgKyAiXG4iDQo+ IC0gICAgcmVwb3J0ID0gZGRhc2hfbGluZQ0KPiAtICAgIHRpdGxlID0gIkZ1ZWdvIFRlc3QgUmVw b3J0Ig0KPiAtICAgIHJlcG9ydCArPSAiICAgICAgICAgICAqKioqICVzICoqKipcbiIgJSB0aXRs ZQ0KPiAtICAgIHJlcG9ydF9kYXRlID0gdGltZS5zdHJmdGltZSgiJVktJW0tJWRfJUg6JU06JVMi KQ0KPiArZGVmIGdlbl9oZWFkZXJfZm9yX3JlcG9ydChydW5fbGlzdCwgcnVuX21hcCwgaGVhZGVy X2ZpZWxkcywgZmllbGRzKToNCj4gKyAgICBoZWFkZXJfcmVwb3J0ID0gIiINCj4gDQo+ICAgICAg IGZvciBmaWVsZCBpbiBoZWFkZXJfZmllbGRzOg0KPiAgICAgICAgICAgaWYgZmllbGQ9PSJyZXBv cnRfZGF0ZSI6DQo+IEBAIC0xODc1LDIyICsxODcwLDE0IEBAIGRlZiBnZW5fdGV4dF9yZXBvcnQo cnVuX2xpc3QsIHJ1bl9tYXAsDQo+IGhlYWRlcl9maWVsZHMsIGZpZWxkcyk6DQo+ICAgICAgICAg ICAgICAgZWxzZToNCj4gICAgICAgICAgICAgICAgICAgZm9yIHZhbHVlIGluIHZhbHVlX2xpc3Rb MTpdOg0KPiAgICAgICAgICAgICAgICAgICAgICAgdmFsX3N0ciArPSAiLCAiK3ZhbHVlDQo+ICsg ICAgICAgIGhlYWRlcl9yZXBvcnQgKz0gIiAgJS0yMHM6ICVzXG4iICUgKGZpZWxkLCB2YWxfc3Ry KQ0KDQpUaGlzIGRvZXNuJ3QgcXVpdGUgZ28gZmFyIGVub3VnaCBpc29sYXRpbmcgdGhlIGZpZWxk IHZhbHVlIGdhdGhlcmluZw0KZnJvbSB0aGUgZm9ybWF0dGluZy4gIFRoaXMgc3RyaW5nIGZvcm1h dHRpbmcgc2hvdWxkIGJlDQpsZWZ0IGFzIGFuIGV4ZXJjaXNlIGZvciBnZW5fdGV4dF9yZXBvcnQu ICBJJ2xsIGZpeCB0aGF0IGluIGEgc3Vic2VxdWVudA0KY29tbWl0Lg0KDQo+IA0KPiAtICAgICAg ICBsaW5lID0gIiAgJS0yMHM6ICVzXG4iICUgKGZpZWxkLCB2YWxfc3RyKQ0KPiAtICAgICAgICBy ZXBvcnQgKz0gbGluZQ0KPiAtICAgIHJlcG9ydCArPSBkZGFzaF9saW5lDQo+ICsgICAgcmV0dXJu IGhlYWRlcl9yZXBvcnQNCmdlbl9oZWFkZXJfZm9yX3JlcG9ydCBzaG91bGQgcmV0dXJuIGEgbGlz dCBvZiB0dXBsZXMgKGZpZWxkX25hbWUsIHZhbHVlX3N0cikgZm9yIHRoZSBoZWFkZXIuDQpUaGlz IG5lZWRzIHRvIGJlIHJlZmFjdG9yZWQgYSBiaXQsIGluY2x1ZGluZyBhIG5hbWUgY2hhbmdlLCBJ TUhPLg0KSSdsbCBkbyB0aGF0Lg0KDQo+IA0KPiArZGVmIGdlbl9kYXRhX2Zvcl9yZXBvcnQocnVu X2xpc3QsIHJ1bl9tYXAsIGhlYWRlcl9maWVsZHMsIGZpZWxkcyk6DQo+ICsgICAgZGF0YV90b19y ZXBvcnQgPSBbXQ0KPiAgICAgICAjIGdlbmVyYXRlIGxpc3QNCj4gDQo+IC0gICAgIyBzdGFydCB3 aXRoIGEgaGVhZGVyIGxpbmUNCj4gLSAgICBkYXNoX2xpbmUgPSAiLSIqKDIxKmxlbihmaWVsZHMp KzIpICsgIlxuIg0KPiAtICAgIHJlcG9ydCArPSBkYXNoX2xpbmUNCj4gLSAgICBsaW5lID0gIiAg Ig0KPiAtICAgIGZvciBmaWVsZCBpbiBmaWVsZHM6DQo+IC0gICAgICAgIGxpbmUgKz0gIiUtMjBz ICIgJSBmaWVsZA0KPiAtICAgIHJlcG9ydCArPSBsaW5lICsgIlxuIg0KPiAtICAgIHJlcG9ydCAr PSBkYXNoX2xpbmUNCj4gLQ0KPiAgICAgICAjIG5vdyBsb29wIG92ZXIgdGhlIHJ1bnMsIHByaW50 aW5nIHRoZSByZXF1ZXN0ZWQgcmVwb3J0IGZpZWxkcw0KPiAgICAgICAjIGlmIHRndWlkIGlzIGEg ZmllbGQsIHdlJ2xsIHByaW50IGEgbGluZSBmb3IgZWFjaCB0Z3VpZA0KPiAgICAgICAjIG90aGVy d2lzZSwgaXQncyBhIGxpbmUgcGVyIHRlc3QNCj4gQEAgLTE5MjEsMTAgKzE5MDgsNiBAQCBkZWYg Z2VuX3RleHRfcmVwb3J0KHJ1bl9saXN0LCBydW5fbWFwLA0KPiBoZWFkZXJfZmllbGRzLCBmaWVs ZHMpOg0KPiAgICAgICAgICAgICAgICAgICBjb250aW51ZQ0KPiANCj4gICAgICAgICAgICMgZm9y bWF0IGVhY2ggY29sdW1uIHBlciByb3cgKGllIHBlciBsaW5lKQ0KPiAtICAgICAgICBsaW5lID0g IiAgIg0KPiAtICAgICAgICBzdGFydF9zZXAgPSAiICINCj4gLSAgICAgICAgbWlkX3NlcCA9ICIg Ig0KPiAtICAgICAgICBlbmRfc2VwID0gIiINCj4gICAgICAgICAgIHBvcyA9IDANCj4gICAgICAg ICAgIGZvciBmaWVsZCBpbiBmaWVsZHM6DQo+ICAgICAgICAgICAgICAgaWYgZmllbGQ9PSJ0Z3Vp ZCI6DQo+IEBAIC0xOTM3LDE1ICsxOTIwLDQ4IEBAIGRlZiBnZW5fdGV4dF9yZXBvcnQocnVuX2xp c3QsIHJ1bl9tYXAsDQo+IGhlYWRlcl9maWVsZHMsIGZpZWxkcyk6DQo+ICAgICAgICAgICAgICAg ICAgICAgICB0Z3VpZF9uYW1lID0gIiINCj4gICAgICAgICAgICAgICAgICAgdmFsdWUgPSBydW4u Z2V0X2ZpZWxkKGZpZWxkLCB0Z3VpZF9uYW1lKQ0KPiAgICAgICAgICAgICAgIGlmIHBvcz09MDoN Cj4gLSAgICAgICAgICAgICAgICBsaW5lICs9ICIlLTIwcyVzIiAlICh2YWx1ZSwgc3RhcnRfc2Vw KQ0KPiArICAgICAgICAgICAgICAgIGRhdGFfdG9fcmVwb3J0LmFwcGVuZCgodmFsdWUsZmllbGQp KQ0KPiAgICAgICAgICAgICAgIGVsc2U6DQo+IC0gICAgICAgICAgICAgICAgbGluZSArPSAiJS0y MHMiICUgKHZhbHVlKQ0KPiAgICAgICAgICAgICAgICAgICBpZiBwb3M8bGVuKGZpZWxkcyk6DQo+ IC0gICAgICAgICAgICAgICAgICAgIGxpbmUgKz0gbWlkX3NlcA0KPiAtICAgICAgICAgICAgICAg IGVsc2U6DQo+IC0gICAgICAgICAgICAgICAgICAgIGxpbmUgKz0gZW5kX3NlcA0KPiArICAgICAg ICAgICAgICAgICAgICBkYXRhX3RvX3JlcG9ydC5hcHBlbmQoKHZhbHVlLGZpZWxkKSkNCj4gICAg ICAgICAgICAgICBwb3MgKz0gMQ0KPiAtICAgICAgICByZXBvcnQgKz0gbGluZSArICJcbiINCj4g KyAgICByZXR1cm4gZGF0YV90b19yZXBvcnQNCj4gKw0KPiArZGVmIGdlbl90ZXh0X3JlcG9ydChy dW5fbGlzdCwgcnVuX21hcCwgaGVhZGVyX2ZpZWxkcywgZmllbGRzKToNCj4gKyAgICAjZ2V0IGRh dGEgZm9yIHJlcG9ydA0KPiArICAgIGhlYWRlcl9yZXBvcnQgPSBnZW5faGVhZGVyX2Zvcl9yZXBv cnQocnVuX2xpc3QsIHJ1bl9tYXAsDQo+IGhlYWRlcl9maWVsZHMsIGZpZWxkcykNCj4gKyAgICBk YXRhX3RvX3JlcG9ydCA9IGdlbl9kYXRhX2Zvcl9yZXBvcnQocnVuX2xpc3QsIHJ1bl9tYXAsDQo+ IGhlYWRlcl9maWVsZHMsIGZpZWxkcykNCj4gKw0KPiArICAgICMgZ2VuZXJhdGUgaGVhZGVyDQo+ ICsgICAgZGRhc2hfbGluZT0iPSIqNzAgKyAiXG4iDQo+ICsgICAgcmVwb3J0ID0gZGRhc2hfbGlu ZQ0KPiArICAgIHRpdGxlID0gIkZ1ZWdvIFRlc3QgUmVwb3J0Ig0KPiArICAgIHJlcG9ydCArPSAi ICAgICAgICAgICAqKioqICVzICoqKipcbiIgJSB0aXRsZQ0KPiArICAgIHJlcG9ydF9kYXRlID0g dGltZS5zdHJmdGltZSgiJVktJW0tJWRfJUg6JU06JVMiKQ0KPiArDQo+ICsgICAgcmVwb3J0ICs9 IGhlYWRlcl9yZXBvcnQNCj4gKyAgICByZXBvcnQgKz0gZGRhc2hfbGluZQ0KPiArDQo+ICsgICAg IyBnZW5lcmF0ZSBsaXN0DQo+ICsNCj4gKyAgICAjIHN0YXJ0IHdpdGggYSBoZWFkZXIgbGluZQ0K PiArICAgIGRhc2hfbGluZSA9ICItIiooMjEqbGVuKGZpZWxkcykrMikgKyAiXG4iDQo+ICsgICAg cmVwb3J0ICs9IGRhc2hfbGluZQ0KPiArICAgIHJlcG9ydCArPSAiICAiDQo+ICsgICAgZm9yIGZp ZWxkIGluIGZpZWxkczoNCj4gKyAgICAgICAgcmVwb3J0ICs9ICIlLTIwcyAiICUgZmllbGQNCj4g KyAgICByZXBvcnQgKz0gIlxuIiArIGRhc2hfbGluZQ0KPiArDQo+ICsgICAgIyBub3cgbG9vcCBv dmVyIHRoZSBydW5zLCBwcmludGluZyB0aGUgcmVxdWVzdGVkIHJlcG9ydCBmaWVsZHMNCj4gKyAg ICAjIGZvcm1hdCBlYWNoIGNvbHVtbiBwZXIgcm93IChpZSBwZXIgbGluZSkNCj4gKyAgICBmb3Ig aSBpbiByYW5nZSgwLGxlbihkYXRhX3RvX3JlcG9ydCkpOg0KPiArICAgICAgICBpZiAoZGF0YV90 b19yZXBvcnRbaV1bMV0gPT0gInRlc3RfbmFtZSIpOg0KPiArICAgICAgICAgICAgcmVwb3J0ICs9 ICIgICUtMjBzIiAlIChkYXRhX3RvX3JlcG9ydFtpXVswXSkNCj4gKyAgICAgICAgZWxzZToNCj4g KyAgICAgICAgICAgIGlmIChkYXRhX3RvX3JlcG9ydFtpXVsxXSA9PSAicmVzdWx0Iik6DQo+ICsg ICAgICAgICAgICAgICAgcmVwb3J0ICs9ICIgJS0yMHNcbiIgJSAoZGF0YV90b19yZXBvcnRbaV1b MF0pDQo+ICsgICAgICAgICAgICBlbHNlOg0KPiArICAgICAgICAgICAgICAgIHJlcG9ydCArPSAi ICUtMjBzIiAlIChkYXRhX3RvX3JlcG9ydFtpXVswXSkNCj4gDQo+ICAgICAgIHJlcG9ydCArPSBk YXNoX2xpbmUNCj4gDQo+IC0tDQo+IDIuMS40DQoNCk9LIC0gSSBkb24ndCB0aGluayB0aGlzIGlz IHRoZSBmaW5hbCBsYXlvdXQgb2YgY29kZSB0byBpbXBsZW1lbnQgdGhpcw0KZmVhdHVyZSwgYnV0 IGl0J3MgYSBzdGFydC4NCg0KSSd2ZSBhcHBsaWVkIHRoaXMgcGF0Y2gsIGFuZCB3aWxsIGFwcGx5 IGEgZmV3IGZpeHVwcyBvbiB0b3Agb2YgaXQgdG8gYWRkcmVzcw0KdGhlIGlzc3VlcyBJIHJhaXNl ZC4NCg0KVGhhbmtzLA0KIC0tIFRpbQ0KDQo=