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 gabe.freedesktop.org (Postfix) with ESMTPS id 4E1EE10E0DC for ; Tue, 15 Nov 2022 10:15:22 +0000 (UTC) From: "Hogander, Jouni" To: "igt-dev@lists.freedesktop.org" , "Gupta, Nidhi1" Date: Tue, 15 Nov 2022 10:14:28 +0000 Message-ID: References: <1668492962-3418-1-git-send-email-nidhi1.gupta@intel.com> <1668492962-3418-3-git-send-email-nidhi1.gupta@intel.com> In-Reply-To: <1668492962-3418-3-git-send-email-nidhi1.gupta@intel.com> Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 Subject: Re: [igt-dev] [PATCH 2/3] tests/i915/i915_pm_backlight: Add a common structure for all subtests List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" List-ID: T25lIGlubGluZSBjb21tZW50IGJlbG93LgoKT24gVHVlLCAyMDIyLTExLTE1IGF0IDExOjQ2ICsw NTMwLCBOaWRoaSBHdXB0YSB3cm90ZToKPiBDcmVhdGUgYSBjb21tb24gc3RydWN0dXJlIGZvciBh bGwgdGhlIHN1YnRlc3RzIHdoaWNoCj4gaW5jbHVkZXMgdGhlIHRlc3QgbmFtZSwgdGVzdCBkZXNj cmlwdGlvbiBhbmQgZmxhZwo+IGluZGljYXRpbmcgd2hldGhlciB0aGUgdGVzdCBpcyBzdXNwZW5k IHRlc3Qgb3IgZHBtcyB0ZXN0Lgo+IEFuZCB0aGVuIGNyZWF0ZSB0aGUgYXJyYXkgb2YgdGhlIGFi b3ZlIHN0cnVjdHVyZSBhbmQKPiBpdGVyYXRlIG92ZXIgaXQuCj4gCj4gU2lnbmVkLW9mZi1ieTog TmlkaGkgR3VwdGEgPG5pZGhpMS5ndXB0YUBpbnRlbC5jb20+Cj4gLS0tCj4gwqB0ZXN0cy9pOTE1 L2k5MTVfcG1fYmFja2xpZ2h0LmMgfCA5NCArKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0t LQo+IC0tLS0tLS0tLS0KPiDCoDEgZmlsZSBjaGFuZ2VkLCA0MSBpbnNlcnRpb25zKCspLCA1MyBk ZWxldGlvbnMoLSkKPiAKPiBkaWZmIC0tZ2l0IGEvdGVzdHMvaTkxNS9pOTE1X3BtX2JhY2tsaWdo dC5jCj4gYi90ZXN0cy9pOTE1L2k5MTVfcG1fYmFja2xpZ2h0LmMKPiBpbmRleCBjZjU4ZjhiLi40 MWVjMjE1IDEwMDY0NAo+IC0tLSBhL3Rlc3RzL2k5MTUvaTkxNV9wbV9iYWNrbGlnaHQuYwo+ICsr KyBiL3Rlc3RzL2k5MTUvaTkxNV9wbV9iYWNrbGlnaHQuYwo+IEBAIC00Myw2ICs0MywxMiBAQCBz dHJ1Y3QgY29udGV4dCB7Cj4gwqDCoMKgwqDCoMKgwqDCoGNoYXIgcGF0aFtQQVRIX01BWF07Cj4g wqB9Owo+IMKgCj4gK2VudW0gewo+ICvCoMKgwqDCoMKgwqDCoFRFU1RfTk9ORSA9IDAsCj4gK8Kg wqDCoMKgwqDCoMKgVEVTVF9EUE1TLAo+ICvCoMKgwqDCoMKgwqDCoFRFU1RfU1VTUEVORCwKPiAr fTsKPiArCj4gwqAjZGVmaW5lIFRPTEVSQU5DRSA1IC8qIHBlcmNlbnQgKi8KPiDCoCNkZWZpbmUg QkFDS0xJR0hUX1BBVEggIi9zeXMvY2xhc3MvYmFja2xpZ2h0Igo+IMKgCj4gQEAgLTE2MCw3ICsx NjYsNyBAQCBzdGF0aWMgdm9pZCB0ZXN0X2ZhZGUoc3RydWN0IGNvbnRleHQgKmNvbnRleHQpCj4g wqB9Cj4gwqAKPiDCoHN0YXRpYyB2b2lkCj4gLXRlc3RfZmFkZV93aXRoX2RwbXMoc3RydWN0IGNv bnRleHQgKmNvbnRleHQsIGlndF9vdXRwdXRfdCAqb3V0cHV0KQo+ICtjaGVja19kcG1zKGlndF9v dXRwdXRfdCAqb3V0cHV0KQo+IMKgewo+IMKgwqDCoMKgwqDCoMKgwqBpZ3RfcmVxdWlyZShpZ3Rf c2V0dXBfcnVudGltZV9wbShvdXRwdXQtPmRpc3BsYXktPmRybV9mZCkpOwo+IMKgCj4gQEAgLTE3 MywxNiArMTc5LDEyIEBAIHRlc3RfZmFkZV93aXRoX2RwbXMoc3RydWN0IGNvbnRleHQgKmNvbnRl eHQsCj4gaWd0X291dHB1dF90ICpvdXRwdXQpCj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgb3V0cHV0LT5jb25maWcu Y29ubmVjdG9yLAo+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIERSTV9NT0RFX0RQTVNfT04pOwo+IMKgwqDCoMKgwqDC oMKgwqBpZ3RfYXNzZXJ0KGlndF93YWl0X2Zvcl9wbV9zdGF0dXMoSUdUX1JVTlRJTUVfUE1fU1RB VFVTX0FDVElWCj4gRSkpOwo+IC0KPiAtwqDCoMKgwqDCoMKgwqB0ZXN0X2ZhZGUoY29udGV4dCk7 Cj4gwqB9Cj4gwqAKPiDCoHN0YXRpYyB2b2lkCj4gLXRlc3RfZmFkZV93aXRoX3N1c3BlbmQoc3Ry dWN0IGNvbnRleHQgKmNvbnRleHQsIGlndF9vdXRwdXRfdAo+ICpvdXRwdXQpCj4gK2NoZWNrX3N1 c3BlbmQoaWd0X291dHB1dF90ICpvdXRwdXQpCj4gwqB7Cj4gwqDCoMKgwqDCoMKgwqDCoGlndF9z eXN0ZW1fc3VzcGVuZF9hdXRvcmVzdW1lKFNVU1BFTkRfU1RBVEVfTUVNLAo+IFNVU1BFTkRfVEVT VF9OT05FKTsKPiAtCj4gLcKgwqDCoMKgwqDCoMKgdGVzdF9mYWRlKGNvbnRleHQpOwo+IMKgfQo+ IMKgCj4gwqBzdGF0aWMgdm9pZCB0ZXN0X2NsZWFudXAoaWd0X2Rpc3BsYXlfdCAqZGlzcGxheSwg aWd0X291dHB1dF90Cj4gKm91dHB1dCkKPiBAQCAtMjI0LDEzICsyMjYsMjUgQEAgc3RhdGljIHZv aWQgdGVzdF9zZXR1cChpZ3RfZGlzcGxheV90IGRpc3BsYXksCj4gaWd0X291dHB1dF90ICpvdXRw dXQpCj4gwqAKPiDCoGlndF9tYWluCj4gwqB7Cj4gLcKgwqDCoMKgwqDCoMKgaW50IG9sZCwgZmQ7 Cj4gK8KgwqDCoMKgwqDCoMKgaW50IG9sZFtOVU1fRURQX09VVFBVVFNdLCBmZDsKPiDCoMKgwqDC oMKgwqDCoMKgaW50IGkgPSAwOwo+IMKgwqDCoMKgwqDCoMKgwqBpZ3RfZGlzcGxheV90IGRpc3Bs YXk7Cj4gwqDCoMKgwqDCoMKgwqDCoGlndF9vdXRwdXRfdCAqb3V0cHV0Owo+IMKgwqDCoMKgwqDC oMKgwqBjaGFyIGZpbGVfcGF0aF9uW1BBVEhfTUFYXSA9ICIiOwo+IMKgwqDCoMKgwqDCoMKgwqBi b29sIGR1YWxfZWRwID0gZmFsc2U7Cj4gwqDCoMKgwqDCoMKgwqDCoHN0cnVjdCBjb250ZXh0IGNv bnRleHRzW05VTV9FRFBfT1VUUFVUU107Cj4gK8KgwqDCoMKgwqDCoMKgc3RydWN0IHsKPiArwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgY29uc3QgY2hhciAqbmFtZTsKPiArwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgY29uc3QgY2hhciAqZGVzYzsKPiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgdm9pZCAoKnRlc3RfdCkgKHN0cnVjdCBjb250ZXh0ICopOwo+ICvCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBpbnQgZmxhZ3M7Cj4gK8KgwqDCoMKgwqDCoMKgfSB0 ZXN0c1tdID0gewo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqB7ICJiYXNpYy1icmln aHRuZXNzIiwgInRlc3QgdGhlIGJhc2ljIGJyaWdodG5lc3MuIiwKPiB0ZXN0X2JyaWdodG5lc3Ms IFRFU1RfTk9ORSB9LAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqB7ICJiYWQtYnJp Z2h0bmVzcyIsICJ0ZXN0IHRoZSBiYWQgYnJpZ2h0bmVzcy4iLAo+IHRlc3RfYmFkX2JyaWdodG5l c3MsIFRFU1RfTk9ORSB9LAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqB7ICJmYWRl IiwgInRlc3QgYmFzaWMgZmFkZS4iLCB0ZXN0X2ZhZGUsIFRFU1RfTk9ORSB9LAo+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqB7ICJmYWRlLXdpdGgtZHBtcyIsICJ0ZXN0IHRoZSBmYWRl IHdpdGggRFBNUy4iLAo+IHRlc3RfZmFkZSwgVEVTVF9EUE1TIH0sCj4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoHsgImZhZGUtd2l0aC1zdXNwZW5kIiwgInRlc3QgdGhlIGZhZGUgd2l0 aCBzdXNwZW5kLiIsCj4gdGVzdF9mYWRlLCBURVNUX1NVU1BFTkQgfSwKPiArwqDCoMKgwqDCoMKg wqB9Owo+IMKgCj4gwqDCoMKgwqDCoMKgwqDCoGlndF9maXh0dXJlIHsKPiDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoGJvb2wgZm91bmQgPSBmYWxzZTsKPiBAQCAtMjg3LDU5ICszMDEs MzMgQEAgaWd0X21haW4KPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoGlndF9yZXF1 aXJlX2YoZm91bmQsICJObyB2YWxpZCBvdXRwdXQgZm91bmQuXG4iKTsKPiDCoMKgwqDCoMKgwqDC oMKgfQo+IMKgCj4gLcKgwqDCoMKgwqDCoMKgaWd0X3N1YnRlc3QoImJhc2ljLWJyaWdodG5lc3Mi KSB7Cj4gLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoGZvciAoaSA9IDA7IGkgPCAoZHVh bF9lZHAgPyAyIDogMSk7IGkrKykgewo+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgdGVzdF9zZXR1cChkaXNwbGF5LCAmY29udGV4dHMtPm91dHB1dFtpXSk7 Cj4gLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBpZ3RfYXNz ZXJ0KGJhY2tsaWdodF9yZWFkKCZjb250ZXh0c1tpXS5tYXgsCj4gLcKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAibWF4X2JyaWdodG5lc3MiLAo+ICZjb250ZXh0c1tpXSkgPiAt MSk7Cj4gLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqB0ZXN0 X2JyaWdodG5lc3MoJmNvbnRleHRzW2ldKTsKPiAtwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoHRlc3RfY2xlYW51cCgmZGlzcGxheSwgb3V0cHV0KTsKPiAtwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgfQo+IC3CoMKgwqDCoMKgwqDCoH0KPiArwqDCoMKg wqDCoMKgwqBmb3IgKGkgPSAwOyBpIDwgQVJSQVlfU0laRSh0ZXN0cyk7IGkrKykgewo+ICvCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBpZ3RfZGVzY3JpYmUodGVzdHNbaV0uZGVzYyk7Cj4g K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoGlndF9zdWJ0ZXN0KHRlc3RzW2ldLm5hbWUp IHsKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoGZvciAo aW50IGogPSAwOyBqIDwgKGR1YWxfZWRwID8gMiA6IDEpOyBqKyspCj4gewo+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoHRlc3Rf c2V0dXAoZGlzcGxheSwgJmNvbnRleHRzLQo+ID5vdXRwdXRbal0pOwo+ICsKPiArwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBpZiAo YmFja2xpZ2h0X3JlYWQoJm9sZFtqXSwKPiAiYnJpZ2h0bmVzcyIsICZjb250ZXh0c1tqXSkpCj4g K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoGNvbnRpbnVlOwo+ICsKPiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBpZiAodGVzdHNbaV0u ZmxhZ3MgPT0gVEVTVF9EUE1TKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBjaGVja19kcG1zKGNv bnRleHRzW2pdLm91dHB1dAo+ICk7Cj4gKwo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoGlmICh0ZXN0c1tpXS5mbGFncyA9PSBU RVNUX1NVU1BFTkQpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoGNoZWNrX3N1c3BlbmQoY29udGV4 dHNbal0ub3V0Cj4gcHV0KTsKPiArCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgaWd0X2Fzc2VydChiYWNrbGlnaHRfcmVhZCgm Y29udGV4dHNbago+IF0ubWF4LCAibWF4X2JyaWdodG5lc3MiLCAmY29udGV4dHNbal0pID4gLTEp Owo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoHRlc3RzW2ldLnRlc3RfdCgmY29udGV4dHNbal0pOwo+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgfQo+IMKgCj4gLcKgwqDCoMKgwqDCoMKg aWd0X3N1YnRlc3QoImJhZC1icmlnaHRuZXNzIikgewo+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqBmb3IgKGkgPSAwOyBpIDwgKGR1YWxfZWRwID8gMiA6IDEpOyBpKyspIHsKPiAtwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoHRlc3Rfc2V0dXAoZGlz cGxheSwgJmNvbnRleHRzLT5vdXRwdXRbaV0pOwo+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgaWd0X2Fzc2VydChiYWNrbGlnaHRfcmVhZCgmY29udGV4dHNb aV0ubWF4LAo+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIm1heF9icmln aHRuZXNzIiwKPiAmY29udGV4dHNbaV0pID4gLTEpOwo+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgdGVzdF9iYWRfYnJpZ2h0bmVzcygmY29udGV4dHNbaV0p Owo+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgdGVzdF9j bGVhbnVwKCZkaXNwbGF5LCBvdXRwdXQpOwo+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqB9Cj4gLcKgwqDCoMKgwqDCoMKgfQo+IC3CoMKgwqDCoMKgwqDCoGlndF9zdWJ0ZXN0KCJmYWRl Iikgewo+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBmb3IgKGkgPSAwOyBpIDwgKGR1 YWxfZWRwID8gMiA6IDEpOyBpKyspIHsKPiAtwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoHRlc3Rfc2V0dXAoZGlzcGxheSwgJmNvbnRleHRzLT5vdXRwdXRbaV0p Owo+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgaWd0X2Fz c2VydChiYWNrbGlnaHRfcmVhZCgmY29udGV4dHNbaV0ubWF4LAo+IC3CoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIm1heF9icmlnaHRuZXNzIiwKPiAmY29udGV4dHNbaV0pID4g LTEpOwo+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgdGVz dF9mYWRlKCZjb250ZXh0c1tpXSk7Cj4gLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqB0ZXN0X2NsZWFudXAoJmRpc3BsYXksIG91dHB1dCk7Cj4gLcKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoH0KPiAtwqDCoMKgwqDCoMKgwqB9Cj4gLcKgwqDCoMKgwqDC oMKgaWd0X3N1YnRlc3QoImZhZGVfd2l0aF9kcG1zIikgewo+IC3CoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqBmb3IgKGkgPSAwOyBpIDwgKGR1YWxfZWRwID8gMiA6IDEpOyBpKyspIHsKPiAt wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoHRlc3Rfc2V0dXAo ZGlzcGxheSwgJmNvbnRleHRzLT5vdXRwdXRbaV0pOwo+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgaWd0X2Fzc2VydChiYWNrbGlnaHRfcmVhZCgmY29udGV4 dHNbaV0ubWF4LAo+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIm1heF9i cmlnaHRuZXNzIiwKPiAmY29udGV4dHNbaV0pID4gLTEpOwo+IC3CoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgdGVzdF9mYWRlX3dpdGhfZHBtcygmY29udGV4dHNb aV0sIG91dHB1dCk7Cj4gLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqB0ZXN0X2NsZWFudXAoJmRpc3BsYXksIG91dHB1dCk7Cj4gLcKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoH0KPiAtwqDCoMKgwqDCoMKgwqB9Cj4gLcKgwqDCoMKgwqDCoMKgaWd0X3N1 YnRlc3QoImZhZGVfd2l0aF9zdXNwZW5kIikgewo+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqBmb3IgKGkgPSAwOyBpIDwgKGR1YWxfZWRwID8gMiA6IDEpOyBpKyspIHsKPiAtwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoHRlc3Rfc2V0dXAoZGlzcGxh eSwgJmNvbnRleHRzLT5vdXRwdXRbaV0pOwo+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgaWd0X2Fzc2VydChiYWNrbGlnaHRfcmVhZCgmY29udGV4dHNbaV0u bWF4LAo+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIm1heF9icmlnaHRu ZXNzIiwKPiAmY29udGV4dHNbaV0pID4gLTEpOwo+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgdGVzdF9mYWRlX3dpdGhfc3VzcGVuZCgmY29udGV4dHNbaV0s IG91dHB1dCk7Cj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgdGVzdF9jbGVhbnVwKCZkaXNwbGF5LCBvdXRwdXQpOwo+IMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgfQo+IMKgwqDCoMKgwqDCoMKgwqB9Cj4gwqAKPiAtCj4gLQo+IMKgwqDCoMKg wqDCoMKgwqBpZ3RfZml4dHVyZSB7Cj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAv KiBSZXN0b3JlIG9sZCBicmlnaHRuZXNzICovCj4gLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoGZvciAoaSA9IDA7IGkgPCAoZHVhbF9lZHAgPyAyIDogMSk7IGkrKykKPiAtwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoGJhY2tsaWdodF93cml0ZShvbGQs ICJicmlnaHRuZXNzIiwKPiAmY29udGV4dHNbaV0pOwo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqBmb3IgKGludCBqID0gMDsgaiA8IChkdWFsX2VkcCA/IDIgOiAxKTsgaisrKQo+ICvC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgYmFja2xpZ2h0X3dy aXRlKG9sZFtqXSwgImJyaWdodG5lc3MiLAo+ICZjb250ZXh0c1tqXSk7CgpJIHRoaXMgY2hhbmdl IGJlbG9uZ3MgdG8gcHJldmlvdXMgcGF0Y2guCgo+IMKgCj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqBpZ3RfZGlzcGxheV9maW5pKCZkaXNwbGF5KTsKPiDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoGlndF9wbV9yZXN0b3JlX3NhdGFfbGlua19wb3dlcl9tYW5hZ2VtZW50 KCk7Cgo=