From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM03-BY2-obe.outbound.protection.outlook.com (mail-eopbgr780053.outbound.protection.outlook.com [40.107.78.53]) by gabe.freedesktop.org (Postfix) with ESMTPS id C956289ACC for ; Mon, 9 Sep 2019 20:41:01 +0000 (UTC) From: Harry Wentland Date: Mon, 9 Sep 2019 20:40:56 +0000 Message-ID: <6b3c6929-54ae-3d8e-e8f4-e582dc174be9@amd.com> References: <20190909182844.3026-1-stylon.wang@amd.com> In-Reply-To: <20190909182844.3026-1-stylon.wang@amd.com> Content-Language: en-US Content-ID: <0D98479063FCB749BCF39910677EAA6F@namprd12.prod.outlook.com> MIME-Version: 1.0 Subject: Re: [igt-dev] [PATCH i-g-t] tools/amd_hdmi_compliance_yuv420: Test 4K video modes with YUV encoding List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" To: "Wang, Chao-kai (Stylon)" , "igt-dev@lists.freedesktop.org" List-ID: T24gMjAxOS0wOS0wOSAyOjI5IHAubS4sIFdhbmcsIENoYW8ta2FpIChTdHlsb24pIHdyb3RlOg0K PiBGcm9tOiBTdHlsb24gV2FuZyA8c3R5bG9uLndhbmdAYW1kLmNvbT4NCj4gDQo+IEhETUkgMi4w IGNvbXBsaWFuY2UgdGVzdHMgbmVlZHMgNEsgbW9kZXMgd2l0aCBZVVYgZW5jb2RpbmcuDQo+IFRo aXMgdGVzdCBzZWxlY3RzIDRLIG1vZGVzIGJhc2VkIG9uIHNwZWNpZmllZCBWSUMuDQo+IA0KPiBD aGFuZ2UtSWQ6IEkzMmY0NzkzMjQwNzY0NTgyZmRiZDQ3ZmZkZDRhOTY2MWU2NmE1MTA1DQoNCkRy b3AgdGhlIENoYW5nZS1JZCBmb3IgdXBzdHJlYW0uDQoNCj4gU2lnbmVkLW9mZi1ieTogU3R5bG9u IFdhbmcgPHN0eWxvbi53YW5nQGFtZC5jb20+DQo+IC0tLQ0KPiAgIHRvb2xzL01ha2VmaWxlLmFt ICAgICAgICAgICAgICAgICAgfCAgIDMgKw0KPiAgIHRvb2xzL01ha2VmaWxlLnNvdXJjZXMgICAg ICAgICAgICAgfCAgIDQgKw0KPiAgIHRvb2xzL2FtZF9oZG1pX2NvbXBsaWFuY2VfeXV2NDIwLmMg fCAxOTMgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysNCj4gICB0b29scy9tZXNvbi5idWls ZCAgICAgICAgICAgICAgICAgIHwgICA1ICsNCj4gICA0IGZpbGVzIGNoYW5nZWQsIDIwNSBpbnNl cnRpb25zKCspDQo+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IHRvb2xzL2FtZF9oZG1pX2NvbXBsaWFu Y2VfeXV2NDIwLmMNCj4gDQo+IGRpZmYgLS1naXQgYS90b29scy9NYWtlZmlsZS5hbSBiL3Rvb2xz L01ha2VmaWxlLmFtDQo+IGluZGV4IDRmNTQ3MjBmLi4xYTIzZTA3OCAxMDA2NDQNCj4gLS0tIGEv dG9vbHMvTWFrZWZpbGUuYW0NCj4gKysrIGIvdG9vbHMvTWFrZWZpbGUuYW0NCj4gQEAgLTExLDYg KzExLDkgQEAgYmluX1BST0dSQU1TICs9IGludGVsX2RwX2NvbXBsaWFuY2UNCj4gICBpbnRlbF9k cF9jb21wbGlhbmNlX0NGTEFHUyA9ICQoQU1fQ0ZMQUdTKSAkKEdMSUJfQ0ZMQUdTKQ0KPiAgIGlu dGVsX2RwX2NvbXBsaWFuY2VfTERBREQgPSAkKHRvcF9idWlsZGRpcikvbGliL2xpYmludGVsX3Rv b2xzLmxhDQo+ICAgDQo+ICtiaW5fUFJPR1JBTVMgKz0gYW1kX2hkbWlfY29tcGxpYW5jZV95dXY0 MjANCj4gK2FtZF9oZG1pX2NvbXBsaWFuY2VfeXV2NDIwX0NGTEFHUyA9ICQoQU1fQ0ZMQUdTKSAk KEdMSUJfQ0ZMQUdTKQ0KPiArDQo+ICAgU1VCRElSUyA9IG51bGxfc3RhdGVfZ2VuIHJlZ2lzdGVy cw0KPiAgIA0KPiAgIEFNX0NQUEZMQUdTID0gLUkkKHRvcF9zcmNkaXIpIC1JJCh0b3Bfc3JjZGly KS9pbmNsdWRlL2RybS11YXBpIC1JJCh0b3Bfc3JjZGlyKS9saWIgXA0KPiBkaWZmIC0tZ2l0IGEv dG9vbHMvTWFrZWZpbGUuc291cmNlcyBiL3Rvb2xzL01ha2VmaWxlLnNvdXJjZXMNCj4gaW5kZXgg NTA3MDZmNDEuLjgxOTZjYjU5IDEwMDY0NA0KPiAtLS0gYS90b29scy9NYWtlZmlsZS5zb3VyY2Vz DQo+ICsrKyBiL3Rvb2xzL01ha2VmaWxlLnNvdXJjZXMNCj4gQEAgLTY2LDMgKzY2LDcgQEAgaW50 ZWxfZHBfY29tcGxpYW5jZV9TT1VSQ0VTID0gXA0KPiAgICAgICAgICAgaW50ZWxfZHBfY29tcGxp YW5jZV9ob3RwbHVnLmMgXA0KPiAgICAgICAgICAgJChOVUxMKQ0KPiAgIA0KPiArYW1kX2hkbWlf Y29tcGxpYW5jZV95dXY0MjBfU09VUkNFUyA9IFwNCj4gKyAgICAgICAgYW1kX2hkbWlfY29tcGxp YW5jZV95dXY0MjAuYyBcDQo+ICsJCSQoTlVMTCkNCj4gKw0KPiBkaWZmIC0tZ2l0IGEvdG9vbHMv YW1kX2hkbWlfY29tcGxpYW5jZV95dXY0MjAuYyBiL3Rvb2xzL2FtZF9oZG1pX2NvbXBsaWFuY2Vf eXV2NDIwLmMNCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gaW5kZXggMDAwMDAwMDAuLjVmNWVh ZTJjDQo+IC0tLSAvZGV2L251bGwNCj4gKysrIGIvdG9vbHMvYW1kX2hkbWlfY29tcGxpYW5jZV95 dXY0MjAuYw0KPiBAQCAtMCwwICsxLDE5MyBAQA0KPiArLyoNCj4gKyAqIENvcHlyaWdodCAyMDE5 IEFkdmFuY2VkIE1pY3JvIERldmljZXMsIEluYy4NCj4gKyAqDQo+ICsgKiBQZXJtaXNzaW9uIGlz IGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcg YQ0KPiArICogY29weSBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRp b24gZmlsZXMgKHRoZSAiU29mdHdhcmUiKSwNCj4gKyAqIHRvIGRlYWwgaW4gdGhlIFNvZnR3YXJl IHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24NCj4gKyAq IHRoZSByaWdodHMgdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmli dXRlLCBzdWJsaWNlbnNlLA0KPiArICogYW5kL29yIHNlbGwgY29waWVzIG9mIHRoZSBTb2Z0d2Fy ZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlDQo+ICsgKiBTb2Z0d2FyZSBpcyBm dXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOg0K PiArICoNCj4gKyAqIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Np b24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluDQo+ICsgKiBhbGwgY29waWVzIG9yIHN1YnN0 YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4NCj4gKyAqDQo+ICsgKiBUSEUgU09GVFdB UkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQ UkVTUyBPUg0KPiArICogSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUg V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksDQo+ICsgKiBGSVRORVNTIEZPUiBBIFBBUlRJ Q1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiAgSU4gTk8gRVZFTlQgU0hBTEwNCj4g KyAqIFRIRSBDT1BZUklHSFQgSE9MREVSKFMpIE9SIEFVVEhPUihTKSBCRSBMSUFCTEUgRk9SIEFO WSBDTEFJTSwgREFNQUdFUyBPUg0KPiArICogT1RIRVIgTElBQklMSVRZLCBXSEVUSEVSIElOIEFO IEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsDQo+ICsgKiBBUklTSU5HIEZS T00sIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0Ug T1INCj4gKyAqIE9USEVSIERFQUxJTkdTIElOIFRIRSBTT0ZUV0FSRS4NCj4gKyAqLw0KPiArDQo+ ICsjaW5jbHVkZSAiaWd0LmgiDQo+ICsNCj4gKy8qIENvbW1vbiB0ZXN0IGRhdGEgKi8NCj4gK3R5 cGVkZWYgc3RydWN0IGRhdGEgew0KPiArCXN0cnVjdCBpZ3RfZmIgcGF0dGVybl9mYl9pbmZvOw0K PiArCWludCBmZDsNCj4gKwlpZ3RfZGlzcGxheV90IGRpc3BsYXk7DQo+ICsJaWd0X3BsYW5lX3Qg KnByaW1hcnk7DQo+ICsJaWd0X291dHB1dF90ICpvdXRwdXQ7DQo+ICsJaWd0X3BpcGVfdCAqcGlw ZTsNCj4gKwllbnVtIHBpcGUgcGlwZV9pZDsNCj4gKwlib29sIHVzZV92aXJ0dWFsX2Nvbm5lY3Rv cjsNCj4gK30gZGF0YV90Ow0KPiArDQo+ICsvLyBWaWRlbyBtb2RlcyBpbmRleGVkIGJ5IFZJQw0K PiArc3RhdGljIGRybU1vZGVNb2RlSW5mbyB0ZXN0X21vZGVzW10gPSB7DQo+ICsJWzFdID0geyAy NTE3NSwNCj4gKwkJCTY0MCwgNjU2LCA3NTIsIDgwMCwgMCwNCj4gKwkJCTQ4MCwgNDg5LCA0OTIs IDUyNSwgMCwNCj4gKwkJCTYwLCAweGEsIDB4NDAsDQo+ICsJCQkiNjQweDQ4MCIsCS8qIFZJQyAx ICovDQoNCkxvb2tzIGxpa2UgeW91J3JlIHVzaW5nIDQgc3BhY2VzID0gMSB0YWIuIFBsZWFzZSBj aGFuZ2UgeW91ciBlZGl0b3IgdG8gOCANCnNwYWNlcyA9IDEgdGFiLg0KDQpPdGhlcndpc2UgaXQg bG9va3MgZ29vZC4gV2l0aCB0aG9zZSB0aGluZ3MgZml4ZWQgdGhpcyBwYXRjaCBpcw0KDQpSZXZp ZXdlZC1ieTogSGFycnkgV2VudGxhbmQgPGhhcnJ5LndlbnRsYW5kQGFtZC5jb20+DQoNCkhhcnJ5 DQoNCj4gKwl9LA0KPiArCVs5Nl0gPSB7IDU5NDAwMCwNCj4gKwkJCSAzODQwLCA0ODk2LCA0OTg0 LCA1MjgwLCAwLA0KPiArCQkJIDIxNjAsIDIxNjgsIDIxNzgsIDIyNTAsIDAsDQo+ICsJCQk1MCwg MHg1fERSTV9NT0RFX0ZMQUdfUElDX0FSXzE2XzksIDB4NDAsDQo+ICsJCQkiMzg0MHgyMTYwIiwJ LyogVklDIDk2ICovDQo+ICsJfSwNCj4gKwlbOTddID0geyA1OTQwMDAsDQo+ICsJCQkzODQwLCA0 MDE2LCA0MTA0LCA0NDAwLCAwLA0KPiArCQkJMjE2MCwgMjE2OCwgMjE3OCwgMjI1MCwgMCwNCj4g KwkJCTYwLCAweDV8RFJNX01PREVfRkxBR19QSUNfQVJfMTZfOSwgMHg0MCwNCj4gKwkJCSIzODQw eDIxNjAiLAkvKiBWSUMgOTcgKi8NCj4gKwl9LA0KPiArCVsxMDFdID0geyA1OTQwMDAsDQo+ICsJ CQkgIDQwOTYsIDUwNjQsIDUxNTIsIDUyODAsIDAsDQo+ICsJCQkgIDIxNjAsIDIxNjgsIDIxNzgs IDIyNTAsIDAsDQo+ICsJCQkgIDUwLCAweDV8RFJNX01PREVfRkxBR19QSUNfQVJfMjU2XzEzNSwg MHg0MCwNCj4gKwkJCSAgIjQwOTZ4MjE2MCIsCS8qIFZJQyAxMDEgKi8NCj4gKwl9LA0KPiArCVsx MDJdID0geyA1OTQwMDAsDQo+ICsJCQkgIDQwOTYsIDQxODQsIDQyNzIsIDQ0MDAsIDAsDQo+ICsJ CQkgIDIxNjAsIDIxNjgsIDIxNzgsIDIyNTAsIDAsDQo+ICsJCQkgIDYwLCAweDV8RFJNX01PREVf RkxBR19QSUNfQVJfMjU2XzEzNSwgMHg0MCwNCj4gKwkJCSAgIjQwOTZ4MjE2MCIsCS8qIFZJQyAx MDIgKi8NCj4gKwl9LA0KPiArCVsxMDZdID0geyA1OTQwMDAsDQo+ICsJCQkgMzg0MCwgNDg5Niwg NDk4NCwgNTI4MCwgMCwNCj4gKwkJCSAyMTYwLCAyMTY4LCAyMTc4LCAyMjUwLCAwLA0KPiArCQkJ NTAsIDB4NXxEUk1fTU9ERV9GTEFHX1BJQ19BUl82NF8yNywgMHg0MCwNCj4gKwkJCSIzODQweDIx NjAiLAkvKiBWSUMgMTA2ICovDQo+ICsJfSwNCj4gKwlbMTA3XSA9IHsgNTk0MDAwLA0KPiArCQkJ Mzg0MCwgNDAxNiwgNDEwNCwgNDQwMCwgMCwNCj4gKwkJCTIxNjAsIDIxNjgsIDIxNzgsIDIyNTAs IDAsDQo+ICsJCQk2MCwgMHg1fERSTV9NT0RFX0ZMQUdfUElDX0FSXzY0XzI3LCAweDQwLA0KPiAr CQkJIjM4NDB4MjE2MCIsCS8qIFZJQyAxMDcgKi8NCj4gKwl9LA0KPiArfTsNCj4gKw0KPiArLyog Q29tbW9uIHRlc3Qgc2V0dXAuICovDQo+ICtzdGF0aWMgdm9pZCB0ZXN0X2luaXQoZGF0YV90ICpk YXRhKQ0KPiArew0KPiArCWlndF9kaXNwbGF5X3QgKmRpc3BsYXkgPSAmZGF0YS0+ZGlzcGxheTsN Cj4gKw0KPiArCWRhdGEtPnBpcGVfaWQgPSBQSVBFX0E7DQo+ICsJZGF0YS0+cGlwZSA9ICZkYXRh LT5kaXNwbGF5LnBpcGVzW2RhdGEtPnBpcGVfaWRdOw0KPiArDQo+ICsJaWd0X2Rpc3BsYXlfcmVz ZXQoZGlzcGxheSk7DQo+ICsNCj4gKwkvKiBmaW5kIGEgY29ubmVjdGVkIEhETUkgb3V0cHV0ICov DQo+ICsJZGF0YS0+b3V0cHV0ID0gTlVMTDsNCj4gKwlmb3IgKGludCBpPTA7IGkgPCBkYXRhLT5k aXNwbGF5Lm5fb3V0cHV0czsgKytpKSB7DQo+ICsJCWRybU1vZGVDb25uZWN0b3IgKmNvbm5lY3Rv ciA9IGRhdGEtPmRpc3BsYXkub3V0cHV0c1tpXS5jb25maWcuY29ubmVjdG9yOw0KPiArCQlpZiAo Y29ubmVjdG9yLT5jb25uZWN0aW9uID09IERSTV9NT0RFX0NPTk5FQ1RFRCAmJg0KPiArCQkJCShj b25uZWN0b3ItPmNvbm5lY3Rvcl90eXBlID09IERSTV9NT0RFX0NPTk5FQ1RPUl9IRE1JQSB8fA0K PiArCQkJCSAoZGF0YS0+dXNlX3ZpcnR1YWxfY29ubmVjdG9yICYmDQo+ICsJCQkJICBjb25uZWN0 b3ItPmNvbm5lY3Rvcl90eXBlID09IERSTV9NT0RFX0NPTk5FQ1RPUl9WSVJUVUFMKSkpIHsNCj4g KwkJCWRhdGEtPm91dHB1dCA9ICZkYXRhLT5kaXNwbGF5Lm91dHB1dHNbaV07DQo+ICsJCX0NCj4g Kwl9DQo+ICsNCj4gKwlpZ3RfcmVxdWlyZShkYXRhLT5vdXRwdXQpOw0KPiArDQo+ICsJZGF0YS0+ cHJpbWFyeSA9DQo+ICsJCWlndF9waXBlX2dldF9wbGFuZV90eXBlKGRhdGEtPnBpcGUsIERSTV9Q TEFORV9UWVBFX1BSSU1BUlkpOw0KPiArDQo+ICsJaWd0X291dHB1dF9zZXRfcGlwZShkYXRhLT5v dXRwdXQsIGRhdGEtPnBpcGVfaWQpOw0KPiArDQo+ICt9DQo+ICsNCj4gKy8qIENvbW1vbiB0ZXN0 IGNsZWFudXAuICovDQo+ICtzdGF0aWMgdm9pZCB0ZXN0X2ZpbmkoZGF0YV90ICpkYXRhKQ0KPiAr ew0KPiArCWlndF9kaXNwbGF5X3Jlc2V0KCZkYXRhLT5kaXNwbGF5KTsNCj4gK30NCj4gKw0KPiAr c3RhdGljIHZvaWQgdGVzdF92aWNfbW9kZShkYXRhX3QgKmRhdGEsIGludCB2aWMpDQo+ICt7DQo+ ICsJaWd0X2Rpc3BsYXlfdCAqZGlzcGxheSA9ICZkYXRhLT5kaXNwbGF5Ow0KPiArCWRybU1vZGVN b2RlSW5mbyAqbW9kZTsNCj4gKwlpZ3RfZmJfdCBhZmI7DQo+ICsNCj4gKwl0ZXN0X2luaXQoZGF0 YSk7DQo+ICsNCj4gKwltb2RlID0gJnRlc3RfbW9kZXNbdmljXTsNCj4gKw0KPiArCWlndF9vdXRw dXRfb3ZlcnJpZGVfbW9kZShkYXRhLT5vdXRwdXQsIG1vZGUpOw0KPiArDQo+ICsJaWd0X2NyZWF0 ZV9wYXR0ZXJuX2ZiKGRhdGEtPmZkLCBtb2RlLT5oZGlzcGxheSwgbW9kZS0+dmRpc3BsYXksIERS TV9GT1JNQVRfWFJHQjg4ODgsIDAsICZhZmIpOw0KPiArDQo+ICsJaWd0X3BsYW5lX3NldF9mYihk YXRhLT5wcmltYXJ5LCAmYWZiKTsNCj4gKw0KPiArCWlndF9kaXNwbGF5X2NvbW1pdF9hdG9taWMo ZGlzcGxheSwgRFJNX01PREVfQVRPTUlDX0FMTE9XX01PREVTRVQsIE5VTEwpOw0KPiArDQo+ICsJ ZnByaW50ZihzdGRlcnIsICJQcmVzcyBbRW50ZXJdIHRvIGZpbmlzaFxuIik7DQo+ICsJZ2V0Y2hh cigpOw0KPiArDQo+ICsJdGVzdF9maW5pKGRhdGEpOw0KPiArfQ0KPiArDQo+ICtjb25zdCBjaGFy ICpvcHRzdHIgPSAiaHZ0OiI7DQo+ICtzdGF0aWMgdm9pZCB1c2FnZShjb25zdCBjaGFyICpuYW1l KQ0KPiArew0KPiArCWZwcmludGYoc3RkZXJyLCAiVXNhZ2U6ICVzIFstaHRdXG4iLCBuYW1lKTsN Cj4gKwlmcHJpbnRmKHN0ZGVyciwgIi1oOglzaG93IGhlbHBcbiIpOw0KPiArCWZwcmludGYoc3Rk ZXJyLCAiLXQgdmljOiBzZWxlY3QgdmlkZW8gbW9kZSBiYXNlZCBvbiBWSUNcbiIpOw0KPiArCWZw cmludGYoc3RkZXJyLCAiLXY6CXRlc3Qgb24gJ1ZpcnR1YWwnIGNvbm5lY3RvciBhcyB3ZWxsLCBm b3IgZGVidWdnaW5nLlxuIik7DQo+ICt9DQo+ICsNCj4gK2ludCBtYWluKGludCBhcmdjLCBjaGFy ICoqYXJndikNCj4gK3sNCj4gKwlkYXRhX3QgZGF0YTsNCj4gKwlpbnQgYzsNCj4gKwlpbnQgdmlj ID0gMTsgLyogZGVmYXVsdCB0byBWSUMgMSAoNjQweDQ4MCkgKi8NCj4gKw0KPiArCW1lbXNldCgm ZGF0YSwgMCwgc2l6ZW9mKGRhdGEpKTsNCj4gKw0KPiArCXdoaWxlKChjID0gZ2V0b3B0KGFyZ2Ms IGFyZ3YsIG9wdHN0cikpICE9IC0xKSB7DQo+ICsJCXN3aXRjaChjKSB7DQo+ICsJCWNhc2UgJ3Qn Og0KPiArCQkJdmljID0gYXRvaShvcHRhcmcpOw0KPiArCQkJYnJlYWs7DQo+ICsJCWNhc2UgJ3Yn Og0KPiArCQkJZGF0YS51c2VfdmlydHVhbF9jb25uZWN0b3IgPSB0cnVlOw0KPiArCQkJYnJlYWs7 DQo+ICsJCWRlZmF1bHQ6DQo+ICsJCWNhc2UgJ2gnOg0KPiArCQkJdXNhZ2UoYXJndlswXSk7DQo+ ICsJCQlleGl0KDEpOw0KPiArCQl9DQo+ICsJfQ0KPiArDQo+ICsJaWYgKHZpYyA8IDEgfHwNCj4g KwkJdmljID4gQVJSQVlfU0laRSh0ZXN0X21vZGVzKSB8fA0KPiArCQkhdGVzdF9tb2Rlc1t2aWNd Lm5hbWVbMF0pIHsNCj4gKwkJZnByaW50ZihzdGRlcnIsICJWSUMgJWQgaXMgbm90IHN1cHBvcnRl ZFxuIiwgdmljKTsNCj4gKwkJZXhpdCgxKTsNCj4gKwl9DQo+ICsNCj4gKwlkYXRhLmZkID0gZHJt X29wZW5fZHJpdmVyX21hc3RlcihEUklWRVJfQU5ZKTsNCj4gKwlrbXN0ZXN0X3NldF92dF9ncmFw aGljc19tb2RlKCk7DQo+ICsNCj4gKwlpZ3RfZGlzcGxheV9yZXF1aXJlKCZkYXRhLmRpc3BsYXks IGRhdGEuZmQpOw0KPiArCWlndF9yZXF1aXJlKGRhdGEuZGlzcGxheS5pc19hdG9taWMpOw0KPiAr CWlndF9kaXNwbGF5X3JlcXVpcmVfb3V0cHV0KCZkYXRhLmRpc3BsYXkpOw0KPiArDQo+ICsJdGVz dF92aWNfbW9kZSgmZGF0YSwgdmljKTsNCj4gKw0KPiArCWlndF9kaXNwbGF5X2ZpbmkoJmRhdGEu ZGlzcGxheSk7DQo+ICt9DQo+IGRpZmYgLS1naXQgYS90b29scy9tZXNvbi5idWlsZCBiL3Rvb2xz L21lc29uLmJ1aWxkDQo+IGluZGV4IDZlNzJiMjYzLi5mYTM2NmFiMiAxMDA2NDQNCj4gLS0tIGEv dG9vbHMvbWVzb24uYnVpbGQNCj4gKysrIGIvdG9vbHMvbWVzb24uYnVpbGQNCj4gQEAgLTEwMCw2 ICsxMDAsMTEgQEAgZXhlY3V0YWJsZSgnaW50ZWxfZ3B1X3RvcCcsICdpbnRlbF9ncHVfdG9wLmMn LA0KPiAgIAkgICBpbnN0YWxsX3JwYXRoIDogYmluZGlyX3JwYXRoZGlyLA0KPiAgIAkgICBkZXBl bmRlbmNpZXMgOiBsaWJfaWd0X3BlcmYpDQo+ICAgDQo+ICtleGVjdXRhYmxlKCdhbWRfaGRtaV9j b21wbGlhbmNlX3l1djQyMCcsICdhbWRfaGRtaV9jb21wbGlhbmNlX3l1djQyMC5jJywNCj4gKwkg ICBkZXBlbmRlbmNpZXMgOiBbdG9vbF9kZXBzXSwNCj4gKwkgICBpbnN0YWxsX3JwYXRoIDogYmlu ZGlyX3JwYXRoZGlyLA0KPiArCSAgIGluc3RhbGwgOiB0cnVlKQ0KPiArDQo+ICAgY29uZl9kYXRh ID0gY29uZmlndXJhdGlvbl9kYXRhKCkNCj4gICBjb25mX2RhdGEuc2V0KCdwcmVmaXgnLCBwcmVm aXgpDQo+ICAgY29uZl9kYXRhLnNldCgnZXhlY19wcmVmaXgnLCAnJHtwcmVmaXh9JykNCj4gDQpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwppZ3QtZGV2IG1h aWxpbmcgbGlzdAppZ3QtZGV2QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZy ZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2lndC1kZXY=