From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lucas Stach Subject: Re: [PATCH v3 4/4] drm/imx: add deferred plane disabling Date: Tue, 07 Mar 2017 19:00:43 +0100 Message-ID: <1488909643.32329.25.camel@pengutronix.de> References: <20170228141837.22949-1-p.zabel@pengutronix.de> <20170228141837.22949-5-p.zabel@pengutronix.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from metis.ext.pengutronix.de (metis.ext.pengutronix.de [IPv6:2001:67c:670:201:290:27ff:fe1d:cc33]) by gabe.freedesktop.org (Postfix) with ESMTPS id 3A5966E7A3 for ; Tue, 7 Mar 2017 18:00:45 +0000 (UTC) In-Reply-To: <20170228141837.22949-5-p.zabel@pengutronix.de> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Philipp Zabel Cc: Daniel Vetter , Russell King , kernel@pengutronix.de, dri-devel@lists.freedesktop.org, Dan MacDonald List-Id: dri-devel@lists.freedesktop.org QW0gRGllbnN0YWcsIGRlbiAyOC4wMi4yMDE3LCAxNToxOCArMDEwMCBzY2hyaWViIFBoaWxpcHAg WmFiZWw6Cj4gVGhlIERQIChkaXNwbGF5IHByb2Nlc3NvcikgY2hhbm5lbCBkaXNhYmxlIGNvZGUg dHJpZWQgdG8gYnVzeSB3YWl0IGZvcgo+IHRoZSBEUCBzeW5jIGZsb3cgZW5kIGludGVycnVwdCBz dGF0dXMgYml0IHdoZW4gZGlzYWJsaW5nIHRoZSBwYXJ0aWFsCj4gcGxhbmUgd2l0aG91dCBhIGZ1 bGwgbW9kZXNldC4gVGhhdCBuZXZlciB3b3JrZWQgcmVsaWFibHksIGFuZCBpdCB3YXMKPiBkaXNh YmxlZCBjb21wbGV0ZWx5IGJ5IHRoZSByZWNlbnQgImdwdTogaXB1LXYzOiByZW1vdmUgSVJRIGRh bmNlIG9uIERDCj4gY2hhbm5lbCBkaXNhYmxlIiBwYXRjaCwgY2F1c2luZyBpcHVfd2FpdF9pbnRl cnJ1cHQgdG8gYWx3YXlzIHRpbWUgb3V0Cj4gYWZ0ZXIgNTAgbXMsIHdoaWNoIGluIHR1cm4gd291 bGQgdHJpZ2dlciBhIHRpbWVvdXQgaW4KPiBkcm1fYXRvbWljX2hlbHBlcl93YWl0X2Zvcl92Ymxh bmtzLgo+IAo+IFRoaXMgcGF0Y2ggY2hhbmdlcyBpcHVfcGxhbmVfYXRvbWljX2Rpc2FibGUgdG8g b25seSBxdWV1ZSBhIERQIGNoYW5uZWwKPiByZWdpc3RlciB1cGRhdGUgYXQgdGhlIG5leHQgZnJh bWUgYm91bmRhcnkgYW5kIHNldCBhIGZsYWcsIHdoaWNoIGNhbiBiZQo+IGRvbmUgd2l0aG91dCBh bnkgd2FpdGluZyB3aGF0c29ldmVyLiBUaGUgaW14X2RybV9hdG9taWNfY29tbWl0X3RhaWwgdGhl bgo+IGNhbGxzIGEgbmV3IGlwdV9wbGFuZV9kaXNhYmxlX2RlZmVycmVkIGZ1bmN0aW9uIHRoYXQg ZG9lcyB0aGUgYWN0dWFsCj4gSURNQUMgdGVhcmRvd24gb2YgdGhlIHBsYW5lcyB0aGF0IGFyZSBm bGFnZ2VkIGZvciBkZWZlcnJlZCBkaXNhYmxpbmcsCj4gYWZ0ZXIgd2FpdGluZyBmb3IgdGhlIHZi bGFuay4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBQaGlsaXBwIFphYmVsIDxwLnphYmVsQHBlbmd1dHJv bml4LmRlPgoKUmV2aWV3ZWQtYnk6IEx1Y2FzIFN0YWNoIDxsLnN0YWNoQHBlbmd1dHJvbml4LmRl PgoKPiAtLS0KPiBDaGFuZ2VzIHNpbmNlIHYyOgo+ICAtIEFkZCBtaXNzaW5nIGV4cG9ydCBmb3Ig aXB1X3BsYW5lX2Rpc2FibGVfZGVmZXJyZWQKPiAgLSBDaGVjayBpZiB0aGVyZSBhcmUgYW55IHBs YW5lcyB0byBiZSBkaXNhYmxlZCBhbmQgb25seSB0aGVuIHdhaXQgZm9yCj4gICAgdmJsYW5rcyBh bmQgY2FsbCB0aGUgZGVmZXJyZWQgZGlzYWJsZSBmdW5jdGlvbgo+IC0tLQo+ICBkcml2ZXJzL2dw dS9kcm0vaW14L2lteC1kcm0tY29yZS5jIHwgMTggKysrKysrKysrKysrKysrKysrCj4gIGRyaXZl cnMvZ3B1L2RybS9pbXgvaXB1djMtY3J0Yy5jICAgfCAyMiArKysrKysrKysrKysrKysrKysrKyst Cj4gIGRyaXZlcnMvZ3B1L2RybS9pbXgvaXB1djMtcGxhbmUuYyAgfCAyNSArKysrKysrKysrKysr KysrKystLS0tLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9pbXgvaXB1djMtcGxhbmUuaCAgfCAgNSAr KysrKwo+ICBkcml2ZXJzL2dwdS9pcHUtdjMvaXB1LWRwLmMgICAgICAgIHwgIDMgLS0tCj4gIDUg ZmlsZXMgY2hhbmdlZCwgNjIgaW5zZXJ0aW9ucygrKSwgMTEgZGVsZXRpb25zKC0pCj4gCj4gZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pbXgvaW14LWRybS1jb3JlLmMgYi9kcml2ZXJzL2dw dS9kcm0vaW14L2lteC1kcm0tY29yZS5jCj4gaW5kZXggMGE1ZTRmYmI5MDZiZi4uOTRmOWMyNWUx YzY3YiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaW14L2lteC1kcm0tY29yZS5jCj4g KysrIGIvZHJpdmVycy9ncHUvZHJtL2lteC9pbXgtZHJtLWNvcmUuYwo+IEBAIC0zMCw2ICszMCw3 IEBACj4gICNpbmNsdWRlIDx2aWRlby9pbXgtaXB1LXYzLmg+Cj4gIAo+ICAjaW5jbHVkZSAiaW14 LWRybS5oIgo+ICsjaW5jbHVkZSAiaXB1djMtcGxhbmUuaCIKPiAgCj4gICNkZWZpbmUgTUFYX0NS VEMJNAo+ICAKPiBAQCAtMTYwLDYgKzE2MSwxMCBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9t b2RlX2NvbmZpZ19mdW5jcyBpbXhfZHJtX21vZGVfY29uZmlnX2Z1bmNzID0gewo+ICBzdGF0aWMg dm9pZCBpbXhfZHJtX2F0b21pY19jb21taXRfdGFpbChzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAq c3RhdGUpCj4gIHsKPiAgCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBzdGF0ZS0+ZGV2Owo+ICsJ c3RydWN0IGRybV9wbGFuZSAqcGxhbmU7Cj4gKwlzdHJ1Y3QgZHJtX3BsYW5lX3N0YXRlICpwbGFu ZV9zdGF0ZTsKPiArCWJvb2wgcGxhbmVfZGlzYWJsaW5nID0gZmFsc2U7Cj4gKwlpbnQgaTsKPiAg Cj4gIAlkcm1fYXRvbWljX2hlbHBlcl9jb21taXRfbW9kZXNldF9kaXNhYmxlcyhkZXYsIHN0YXRl KTsKPiAgCj4gQEAgLTE2OSw2ICsxNzQsMTkgQEAgc3RhdGljIHZvaWQgaW14X2RybV9hdG9taWNf Y29tbWl0X3RhaWwoc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlKQo+ICAKPiAgCWRybV9h dG9taWNfaGVscGVyX2NvbW1pdF9tb2Rlc2V0X2VuYWJsZXMoZGV2LCBzdGF0ZSk7Cj4gIAo+ICsJ Zm9yX2VhY2hfcGxhbmVfaW5fc3RhdGUoc3RhdGUsIHBsYW5lLCBwbGFuZV9zdGF0ZSwgaSkgewo+ ICsJCWlmIChkcm1fYXRvbWljX3BsYW5lX2Rpc2FibGluZyhwbGFuZSwgcGxhbmVfc3RhdGUpKQo+ ICsJCQlwbGFuZV9kaXNhYmxpbmcgPSB0cnVlOwo+ICsJfQo+ICsKPiArCWlmIChwbGFuZV9kaXNh YmxpbmcpIHsKPiArCQlkcm1fYXRvbWljX2hlbHBlcl93YWl0X2Zvcl92YmxhbmtzKGRldiwgc3Rh dGUpOwo+ICsKPiArCQlmb3JfZWFjaF9wbGFuZV9pbl9zdGF0ZShzdGF0ZSwgcGxhbmUsIHBsYW5l X3N0YXRlLCBpKQo+ICsJCQlpcHVfcGxhbmVfZGlzYWJsZV9kZWZlcnJlZChwbGFuZSk7Cj4gKwo+ ICsJfQo+ICsKPiAgCWRybV9hdG9taWNfaGVscGVyX2NvbW1pdF9od19kb25lKHN0YXRlKTsKPiAg fQo+ICAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2lteC9pcHV2My1jcnRjLmMgYi9k cml2ZXJzL2dwdS9kcm0vaW14L2lwdXYzLWNydGMuYwo+IGluZGV4IDZiZTUxNWE5ZmI2OTQuLjBm MTVmMTFmMjZlMGMgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2lteC9pcHV2My1jcnRj LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaW14L2lwdXYzLWNydGMuYwo+IEBAIC02MCw2ICs2 MCwyNiBAQCBzdGF0aWMgdm9pZCBpcHVfY3J0Y19lbmFibGUoc3RydWN0IGRybV9jcnRjICpjcnRj KQo+ICAJaXB1X2RpX2VuYWJsZShpcHVfY3J0Yy0+ZGkpOwo+ICB9Cj4gIAo+ICtzdGF0aWMgdm9p ZCBpcHVfY3J0Y19kaXNhYmxlX3BsYW5lcyhzdHJ1Y3QgaXB1X2NydGMgKmlwdV9jcnRjLAo+ICsJ CQkJICAgIHN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqb2xkX2NydGNfc3RhdGUpCj4gK3sKPiArCWJv b2wgZGlzYWJsZV9wYXJ0aWFsID0gZmFsc2U7Cj4gKwlib29sIGRpc2FibGVfZnVsbCA9IGZhbHNl Owo+ICsJc3RydWN0IGRybV9wbGFuZSAqcGxhbmU7Cj4gKwo+ICsJZHJtX2F0b21pY19jcnRjX3N0 YXRlX2Zvcl9lYWNoX3BsYW5lKHBsYW5lLCBvbGRfY3J0Y19zdGF0ZSkgewo+ICsJCWlmIChwbGFu ZSA9PSAmaXB1X2NydGMtPnBsYW5lWzBdLT5iYXNlKQo+ICsJCQlkaXNhYmxlX2Z1bGwgPSB0cnVl Owo+ICsJCWlmICgmaXB1X2NydGMtPnBsYW5lWzFdICYmIHBsYW5lID09ICZpcHVfY3J0Yy0+cGxh bmVbMV0tPmJhc2UpCj4gKwkJCWRpc2FibGVfcGFydGlhbCA9IHRydWU7Cj4gKwl9Cj4gKwo+ICsJ aWYgKGRpc2FibGVfcGFydGlhbCkKPiArCQlpcHVfcGxhbmVfZGlzYWJsZShpcHVfY3J0Yy0+cGxh bmVbMV0sIHRydWUpOwo+ICsJaWYgKGRpc2FibGVfZnVsbCkKPiArCQlpcHVfcGxhbmVfZGlzYWJs ZShpcHVfY3J0Yy0+cGxhbmVbMF0sIGZhbHNlKTsKPiArfQo+ICsKPiAgc3RhdGljIHZvaWQgaXB1 X2NydGNfYXRvbWljX2Rpc2FibGUoc3RydWN0IGRybV9jcnRjICpjcnRjLAo+ICAJCQkJICAgIHN0 cnVjdCBkcm1fY3J0Y19zdGF0ZSAqb2xkX2NydGNfc3RhdGUpCj4gIHsKPiBAQCAtNzMsNyArOTMs NyBAQCBzdGF0aWMgdm9pZCBpcHVfY3J0Y19hdG9taWNfZGlzYWJsZShzdHJ1Y3QgZHJtX2NydGMg KmNydGMsCj4gIAkgKiBhdHRhY2hlZCBJRE1BQ3Mgd2lsbCBiZSBsZWZ0IGluIHVuZGVmaW5lZCBz dGF0ZSwgcG9zc2libHkgaGFuZ2luZwo+ICAJICogdGhlIElQVSBvciBldmVuIHN5c3RlbS4KPiAg CSAqLwo+IC0JZHJtX2F0b21pY19oZWxwZXJfZGlzYWJsZV9wbGFuZXNfb25fY3J0YyhvbGRfY3J0 Y19zdGF0ZSwgZmFsc2UpOwo+ICsJaXB1X2NydGNfZGlzYWJsZV9wbGFuZXMoaXB1X2NydGMsIG9s ZF9jcnRjX3N0YXRlKTsKPiAgCWlwdV9kY19kaXNhYmxlKGlwdSk7Cj4gIAo+ICAJc3Bpbl9sb2Nr X2lycSgmY3J0Yy0+ZGV2LT5ldmVudF9sb2NrKTsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2lteC9pcHV2My1wbGFuZS5jIGIvZHJpdmVycy9ncHUvZHJtL2lteC9pcHV2My1wbGFuZS5j Cj4gaW5kZXggNTU5OTFkNDZjZWQ1MC4uYTM3NzM1Mjk4NjE1ZSAxMDA2NDQKPiAtLS0gYS9kcml2 ZXJzL2dwdS9kcm0vaW14L2lwdXYzLXBsYW5lLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaW14 L2lwdXYzLXBsYW5lLmMKPiBAQCAtMTcyLDIzICsxNzIsMzAgQEAgc3RhdGljIHZvaWQgaXB1X3Bs YW5lX2VuYWJsZShzdHJ1Y3QgaXB1X3BsYW5lICppcHVfcGxhbmUpCj4gIAkJaXB1X2RwX2VuYWJs ZV9jaGFubmVsKGlwdV9wbGFuZS0+ZHApOwo+ICB9Cj4gIAo+IC1zdGF0aWMgaW50IGlwdV9kaXNh YmxlX3BsYW5lKHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lKQo+ICt2b2lkIGlwdV9wbGFuZV9kaXNh YmxlKHN0cnVjdCBpcHVfcGxhbmUgKmlwdV9wbGFuZSwgYm9vbCBkaXNhYmxlX2RwX2NoYW5uZWwp Cj4gIHsKPiAtCXN0cnVjdCBpcHVfcGxhbmUgKmlwdV9wbGFuZSA9IHRvX2lwdV9wbGFuZShwbGFu ZSk7Cj4gLQo+ICAJRFJNX0RFQlVHX0tNUygiWyVkXSAlc1xuIiwgX19MSU5FX18sIF9fZnVuY19f KTsKPiAgCj4gIAlpcHVfaWRtYWNfd2FpdF9idXN5KGlwdV9wbGFuZS0+aXB1X2NoLCA1MCk7Cj4g IAo+IC0JaWYgKGlwdV9wbGFuZS0+ZHApCj4gLQkJaXB1X2RwX2Rpc2FibGVfY2hhbm5lbChpcHVf cGxhbmUtPmRwLCB0cnVlKTsKPiArCWlmIChpcHVfcGxhbmUtPmRwICYmIGRpc2FibGVfZHBfY2hh bm5lbCkKPiArCQlpcHVfZHBfZGlzYWJsZV9jaGFubmVsKGlwdV9wbGFuZS0+ZHAsIGZhbHNlKTsK PiAgCWlwdV9pZG1hY19kaXNhYmxlX2NoYW5uZWwoaXB1X3BsYW5lLT5pcHVfY2gpOwo+ICAJaXB1 X2RtZmNfZGlzYWJsZV9jaGFubmVsKGlwdV9wbGFuZS0+ZG1mYyk7Cj4gIAlpZiAoaXB1X3BsYW5l LT5kcCkKPiAgCQlpcHVfZHBfZGlzYWJsZShpcHVfcGxhbmUtPmlwdSk7Cj4gK30KPiAgCj4gLQly ZXR1cm4gMDsKPiArdm9pZCBpcHVfcGxhbmVfZGlzYWJsZV9kZWZlcnJlZChzdHJ1Y3QgZHJtX3Bs YW5lICpwbGFuZSkKPiArewo+ICsJc3RydWN0IGlwdV9wbGFuZSAqaXB1X3BsYW5lID0gdG9faXB1 X3BsYW5lKHBsYW5lKTsKPiArCj4gKwlpZiAoaXB1X3BsYW5lLT5kaXNhYmxpbmcpIHsKPiArCQlp cHVfcGxhbmUtPmRpc2FibGluZyA9IGZhbHNlOwo+ICsJCWlwdV9wbGFuZV9kaXNhYmxlKGlwdV9w bGFuZSwgZmFsc2UpOwo+ICsJfQo+ICB9Cj4gK0VYUE9SVF9TWU1CT0xfR1BMKGlwdV9wbGFuZV9k aXNhYmxlX2RlZmVycmVkKTsKPiAgCj4gIHN0YXRpYyB2b2lkIGlwdV9wbGFuZV9kZXN0cm95KHN0 cnVjdCBkcm1fcGxhbmUgKnBsYW5lKQo+ICB7Cj4gQEAgLTM1Niw3ICszNjMsMTEgQEAgc3RhdGlj IGludCBpcHVfcGxhbmVfYXRvbWljX2NoZWNrKHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lLAo+ICBz dGF0aWMgdm9pZCBpcHVfcGxhbmVfYXRvbWljX2Rpc2FibGUoc3RydWN0IGRybV9wbGFuZSAqcGxh bmUsCj4gIAkJCQkgICAgIHN0cnVjdCBkcm1fcGxhbmVfc3RhdGUgKm9sZF9zdGF0ZSkKPiAgewo+ IC0JaXB1X2Rpc2FibGVfcGxhbmUocGxhbmUpOwo+ICsJc3RydWN0IGlwdV9wbGFuZSAqaXB1X3Bs YW5lID0gdG9faXB1X3BsYW5lKHBsYW5lKTsKPiArCj4gKwlpZiAoaXB1X3BsYW5lLT5kcCkKPiAr CQlpcHVfZHBfZGlzYWJsZV9jaGFubmVsKGlwdV9wbGFuZS0+ZHAsIHRydWUpOwo+ICsJaXB1X3Bs YW5lLT5kaXNhYmxpbmcgPSB0cnVlOwo+ICB9Cj4gIAo+ICBzdGF0aWMgdm9pZCBpcHVfcGxhbmVf YXRvbWljX3VwZGF0ZShzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwKPiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2lteC9pcHV2My1wbGFuZS5oIGIvZHJpdmVycy9ncHUvZHJtL2lteC9pcHV2 My1wbGFuZS5oCj4gaW5kZXggMzM4Yjg4YTc0ZWI2ZS4uMGUyYTcyM2ZmOTgxNiAxMDA2NDQKPiAt LS0gYS9kcml2ZXJzL2dwdS9kcm0vaW14L2lwdXYzLXBsYW5lLmgKPiArKysgYi9kcml2ZXJzL2dw dS9kcm0vaW14L2lwdXYzLXBsYW5lLmgKPiBAQCAtMjMsNiArMjMsOCBAQCBzdHJ1Y3QgaXB1X3Bs YW5lIHsKPiAgCj4gIAlpbnQJCQlkbWE7Cj4gIAlpbnQJCQlkcF9mbG93Owo+ICsKPiArCWJvb2wJ CQlkaXNhYmxpbmc7Cj4gIH07Cj4gIAo+ICBzdHJ1Y3QgaXB1X3BsYW5lICppcHVfcGxhbmVfaW5p dChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgaXB1X3NvYyAqaXB1LAo+IEBAIC00Miw0 ICs0NCw3IEBAIHZvaWQgaXB1X3BsYW5lX3B1dF9yZXNvdXJjZXMoc3RydWN0IGlwdV9wbGFuZSAq cGxhbmUpOwo+ICAKPiAgaW50IGlwdV9wbGFuZV9pcnEoc3RydWN0IGlwdV9wbGFuZSAqcGxhbmUp Owo+ICAKPiArdm9pZCBpcHVfcGxhbmVfZGlzYWJsZShzdHJ1Y3QgaXB1X3BsYW5lICppcHVfcGxh bmUsIGJvb2wgZGlzYWJsZV9kcF9jaGFubmVsKTsKPiArdm9pZCBpcHVfcGxhbmVfZGlzYWJsZV9k ZWZlcnJlZChzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSk7Cj4gKwo+ICAjZW5kaWYKPiBkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvaXB1LXYzL2lwdS1kcC5jIGIvZHJpdmVycy9ncHUvaXB1LXYzL2lw dS1kcC5jCj4gaW5kZXggMGUwOWM5ODI0OGEwZC4uOWIyYjNmYTQ3OWM0NiAxMDA2NDQKPiAtLS0g YS9kcml2ZXJzL2dwdS9pcHUtdjMvaXB1LWRwLmMKPiArKysgYi9kcml2ZXJzL2dwdS9pcHUtdjMv aXB1LWRwLmMKPiBAQCAtMjc3LDkgKzI3Nyw2IEBAIHZvaWQgaXB1X2RwX2Rpc2FibGVfY2hhbm5l bChzdHJ1Y3QgaXB1X2RwICpkcCwgYm9vbCBzeW5jKQo+ICAJd3JpdGVsKDAsIGZsb3ctPmJhc2Ug KyBEUF9GR19QT1MpOwo+ICAJaXB1X3NybV9kcF91cGRhdGUocHJpdi0+aXB1LCBzeW5jKTsKPiAg Cj4gLQlpZiAoaXB1X2lkbWFjX2NoYW5uZWxfYnVzeShwcml2LT5pcHUsIElQVVYzX0NIQU5ORUxf TUVNX0JHX1NZTkMpKQo+IC0JCWlwdV93YWl0X2ludGVycnVwdChwcml2LT5pcHUsIElQVV9JUlFf RFBfU0ZfRU5ELCA1MCk7Cj4gLQo+ICAJbXV0ZXhfdW5sb2NrKCZwcml2LT5tdXRleCk7Cj4gIH0K PiAgRVhQT1JUX1NZTUJPTF9HUEwoaXB1X2RwX2Rpc2FibGVfY2hhbm5lbCk7CgoKX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcg bGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRl c2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==