From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jani Nikula Subject: Re: [PATCH 08/12] drm/i915/bxt: DSI disable and post-disable Date: Mon, 25 May 2015 19:44:47 +0300 Message-ID: <878uccip34.fsf@intel.com> References: <1432310765-2218-1-git-send-email-uma.shankar@intel.com> <1432310765-2218-9-git-send-email-uma.shankar@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTP id E2FF46E2F3 for ; Mon, 25 May 2015 09:46:30 -0700 (PDT) In-Reply-To: <1432310765-2218-9-git-send-email-uma.shankar@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Uma Shankar , intel-gfx@lists.freedesktop.org Cc: shobhit.kumar@intel.com List-Id: intel-gfx@lists.freedesktop.org T24gRnJpLCAyMiBNYXkgMjAxNSwgVW1hIFNoYW5rYXIgPHVtYS5zaGFua2FyQGludGVsLmNvbT4g d3JvdGU6Cj4gRnJvbTogU2hhc2hhbmsgU2hhcm1hIDxzaGFzaGFuay5zaGFybWFAaW50ZWwuY29t Pgo+Cj4gVGhpcyBwYXRjaCBjb250YWlucyBjaGFuZ2VzIHRvIHN1cHBvcnQgRFNJIGRpc2JsZSBz ZXF1ZW5jZSBpbiBCWFQuCj4gVGhlIGNoYW5nZXMgYXJlOgo+IDEuIEJYVCBzcGVjaWZpYyBjaGFu Z2VzIGluIGNsZWFyX2RldmljZV9yZWFkeSBmdW5jdGlvbi4KPiAyLiBCWFQgc3BlY2lmaWMgY2hh bmdlcyBpbiBEU0kgZGlzYWJsZSBhbmQgcG9zdC1kaXNhYmxlIGZ1bmN0aW9ucy4KPiAzLiBBZGQg YSBuZXcgZnVuY3Rpb24gdG8gcmVzZXQgQlhUIERwaHkgY2xvY2sgYW5kIGRpdmlkZXJzCj4gICAg KGJ4dF9kc2lfcmVzZXRfY2xvY2tzKS4KPiA0LiBNb3ZlZCBzb21lIHBhcnQgb2YgdGhlIHZsdiBj bG9jayByZXNldCBjb2RlLCBpbiBhIG5ldyBmdW5jdGlvbgo+ICAgICh2bHZfZHNpX3Jlc2V0X2Ns b2NrcykgbWFpbnRhaW5pbmcgdGhlIGV4YWN0IHNhbWUgc2VxdWVuY2UuCj4gNS4gV3JhcHBlciBm dW5jdGlvbiB0byBjYWxsIGNvcnJlc3BvbmRpbmcgcmVzZXQgY2xvY2sgZnVuY3Rpb24uCj4KPiBT aWduZWQtb2ZmLWJ5OiBVbWEgU2hhbmthciA8dW1hLnNoYW5rYXJAaW50ZWwuY29tPgo+IFNpZ25l ZC1vZmYtYnk6IFNoYXNoYW5rIFNoYXJtYSA8c2hhc2hhbmsuc2hhcm1hQGludGVsLmNvbT4KPiAt LS0KPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHNpLmMgICAgIHwgICAzOSArKysrKysr KysrKysrKysrKysrKy0tLS0tLS0tLS0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9k c2kuaCAgICAgfCAgICAyICsrCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RzaV9wbGwu YyB8ICAgNDEgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+ICAzIGZpbGVzIGNo YW5nZWQsIDY4IGluc2VydGlvbnMoKyksIDE0IGRlbGV0aW9ucygtKQo+Cj4gZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RzaS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZHNpLmMKPiBpbmRleCA3MjlmYWY2Li5lNGI5NmJjIDEwMDY0NAo+IC0tLSBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2RzaS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZHNpLmMKPiBAQCAtNDI3LDEyICs0MjcsMTYgQEAgc3RhdGljIHZvaWQgaW50ZWxfZHNp X3BvcnRfZGlzYWJsZShzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlcikKPiAgCXN0cnVjdCBp bnRlbF9kc2kgKmludGVsX2RzaSA9IGVuY190b19pbnRlbF9kc2koJmVuY29kZXItPmJhc2UpOwo+ ICAJZW51bSBwb3J0IHBvcnQ7Cj4gIAl1MzIgdGVtcDsKPiArCXUzMiBwb3J0X2N0cmw7Cj4gIAo+ ICAJZm9yX2VhY2hfZHNpX3BvcnQocG9ydCwgaW50ZWxfZHNpLT5wb3J0cykgewo+ICAJCS8qIGRl LWFzc2VydCBpcF90Z19lbmFibGUgc2lnbmFsICovCj4gLQkJdGVtcCA9IEk5MTVfUkVBRChNSVBJ X1BPUlRfQ1RSTChwb3J0KSk7Cj4gLQkJSTkxNV9XUklURShNSVBJX1BPUlRfQ1RSTChwb3J0KSwg dGVtcCAmIH5EUElfRU5BQkxFKTsKPiAtCQlQT1NUSU5HX1JFQUQoTUlQSV9QT1JUX0NUUkwocG9y dCkpOwo+ICsJCXBvcnRfY3RybCA9IElTX0JST1hUT04oZGV2KSA/Cj4gKwkJCQlCWFRfTUlQSV9Q T1JUX0NUUkwocG9ydCkgOgo+ICsJCQkJCU1JUElfUE9SVF9DVFJMKHBvcnQpOwo+ICsJCXRlbXAg PSBJOTE1X1JFQUQocG9ydF9jdHJsKTsKPiArCQlJOTE1X1dSSVRFKHBvcnRfY3RybCwgdGVtcCAm IH5EUElfRU5BQkxFKTsKPiArCQlQT1NUSU5HX1JFQUQocG9ydF9jdHJsKTsKPiAgCX0KPiAgfQo+ ICAKPiBAQCAtNTcwLDEyICs1NzQsNyBAQCBzdGF0aWMgdm9pZCBpbnRlbF9kc2lfZGlzYWJsZShz dHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlcikKPiAgCQkvKiBQYW5lbCBjb21tYW5kcyBjYW4g YmUgc2VudCB3aGVuIGNsb2NrIGlzIGluIExQMTEgKi8KPiAgCQlJOTE1X1dSSVRFKE1JUElfREVW SUNFX1JFQURZKHBvcnQpLCAweDApOwo+ICAKPiAtCQl0ZW1wID0gSTkxNV9SRUFEKE1JUElfQ1RS TChwb3J0KSk7Cj4gLQkJdGVtcCAmPSB+RVNDQVBFX0NMT0NLX0RJVklERVJfTUFTSzsKPiAtCQlJ OTE1X1dSSVRFKE1JUElfQ1RSTChwb3J0KSwgdGVtcCB8Cj4gLQkJCSAgIGludGVsX2RzaS0+ZXNj YXBlX2Nsa19kaXYgPDwKPiAtCQkJICAgRVNDQVBFX0NMT0NLX0RJVklERVJfU0hJRlQpOwo+IC0K PiArCQlpbnRlbF9kc2lfcmVzZXRfY2xvY2tzKGVuY29kZXIsIHBvcnQpOwo+ICAJCUk5MTVfV1JJ VEUoTUlQSV9FT1RfRElTQUJMRShwb3J0KSwgQ0xPQ0tTVE9QKTsKPiAgCj4gIAkJdGVtcCA9IEk5 MTVfUkVBRChNSVBJX0RTSV9GVU5DX1BSRyhwb3J0KSk7Cj4gQEAgLTU5NCwxMiArNTkzLDE1IEBA IHN0YXRpYyB2b2lkIGludGVsX2RzaV9kaXNhYmxlKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNv ZGVyKQo+ICAKPiAgc3RhdGljIHZvaWQgaW50ZWxfZHNpX2NsZWFyX2RldmljZV9yZWFkeShzdHJ1 Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlcikKPiAgewo+ICsJc3RydWN0IGRybV9kZXZpY2UgKmRl diA9IGVuY29kZXItPmJhc2UuZGV2OwoKWW91IGRvbid0IG5lZWQgZGV2LiBJU19CUk9YVE9OIGFu ZCBJU19WQUxMRVlWSUVXIGVhdCBib3RoIGRldiBhbmQKZGV2X3ByaXYuCgo+ICAJc3RydWN0IGRy bV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gZW5jb2Rlci0+YmFzZS5kZXYtPmRldl9wcml2YXRl Owo+ICAJc3RydWN0IGludGVsX2RzaSAqaW50ZWxfZHNpID0gZW5jX3RvX2ludGVsX2RzaSgmZW5j b2Rlci0+YmFzZSk7Cj4gIAllbnVtIHBvcnQgcG9ydDsKPiAgCXUzMiB2YWw7Cj4gKwl1MzIgcG9y dF9jdHJsOwo+ICAKPiAgCURSTV9ERUJVR19LTVMoIlxuIik7Cj4gKwoKVW5yZWxhdGVkIHdoaXRl c3BhY2UgY2hhbmdlLgoKPiAgCWZvcl9lYWNoX2RzaV9wb3J0KHBvcnQsIGludGVsX2RzaS0+cG9y dHMpIHsKPiAgCj4gIAkJSTkxNV9XUklURShNSVBJX0RFVklDRV9SRUFEWShwb3J0KSwgREVWSUNF X1JFQURZIHwKPiBAQCAtNjE0LDE4ICs2MTYsMjcgQEAgc3RhdGljIHZvaWQgaW50ZWxfZHNpX2Ns ZWFyX2RldmljZV9yZWFkeShzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlcikKPiAgCQkJCQkJ CVVMUFNfU1RBVEVfRU5URVIpOwo+ICAJCXVzbGVlcF9yYW5nZSgyMDAwLCAyNTAwKTsKPiAgCj4g KwkJaWYgKElTX0JST1hUT04oZGV2KSkKPiArCQkJcG9ydF9jdHJsID0gQlhUX01JUElfUE9SVF9D VFJMKHBvcnQpOwo+ICsJCWVsc2UgaWYgKElTX1ZBTExFWVZJRVcoZGV2KSkKPiArCQkJcG9ydF9j dHJsID0gTUlQSV9QT1JUX0NUUkwoUE9SVF9BKTsKPiArCQllbHNlIHsKPiArCQkJRFJNX0VSUk9S KCJJbnZhbGlkIERTSSBkZXZpY2UgdG8gY2xlYXIgZGV2aWNlIHJlYWR5XG4iKTsKPiArCQkJcmV0 dXJuOwoKUGxlYXNlIGRyb3AgYWxsIHN1Y2ggZWxzZSBicmFuY2hlcy4KCj4gKwkJfQo+ICsKPiAg CQkvKiBXYWl0IHRpbGwgQ2xvY2sgbGFuZXMgYXJlIGluIExQLTAwIHN0YXRlIGZvciBNSVBJIFBv cnQgQQo+ICAJCSAqIG9ubHkuIE1JUEkgUG9ydCBDIGhhcyBubyBzaW1pbGFyIGJpdCBmb3IgY2hl Y2tpbmcKPiAgCQkgKi8KPiAtCQlpZiAod2FpdF9mb3IoKChJOTE1X1JFQUQoTUlQSV9QT1JUX0NU UkwoUE9SVF9BKSkgJiBBRkVfTEFUQ0hPVVQpCj4gKwkJaWYgKHdhaXRfZm9yKCgoSTkxNV9SRUFE KHBvcnRfY3RybCkgJiBBRkVfTEFUQ0hPVVQpCj4gIAkJCQkJCQk9PSAweDAwMDAwKSwgMzApKQo+ ICAJCQlEUk1fRVJST1IoIkRTSSBMUCBub3QgZ29pbmcgTG93XG4iKTsKPiAgCj4gIAkJLyogRGlz YWJsZSBNSVBJIFBIWSB0cmFuc3BhcmVudCBsYXRjaAo+ICAJCSAqIENvbW1vbiBiaXQgZm9yIGJv dGggTUlQSSBQb3J0IEEgJiBNSVBJIFBvcnQgQwo+ICAJCSAqLwo+IC0JCXZhbCA9IEk5MTVfUkVB RChNSVBJX1BPUlRfQ1RSTChQT1JUX0EpKTsKPiAtCQlJOTE1X1dSSVRFKE1JUElfUE9SVF9DVFJM KFBPUlRfQSksIHZhbCAmIH5MUF9PVVRQVVRfSE9MRCk7Cj4gKwkJdmFsID0gSTkxNV9SRUFEKHBv cnRfY3RybCk7Cj4gKwkJSTkxNV9XUklURShwb3J0X2N0cmwsIHZhbCAmIH5MUF9PVVRQVVRfSE9M RCk7Cj4gIAkJdXNsZWVwX3JhbmdlKDEwMDAsIDE1MDApOwo+ICAKPiAgCQlJOTE1X1dSSVRFKE1J UElfREVWSUNFX1JFQURZKHBvcnQpLCAweDAwKTsKPiBAQCAtNjM3LDE0ICs2NDgsMTQgQEAgc3Rh dGljIHZvaWQgaW50ZWxfZHNpX2NsZWFyX2RldmljZV9yZWFkeShzdHJ1Y3QgaW50ZWxfZW5jb2Rl ciAqZW5jb2RlcikKPiAgCj4gIHN0YXRpYyB2b2lkIGludGVsX2RzaV9wb3N0X2Rpc2FibGUoc3Ry dWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIpCj4gIHsKPiAtCXN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICpkZXZfcHJpdiA9IGVuY29kZXItPmJhc2UuZGV2LT5kZXZfcHJpdmF0ZTsKPiArCXN0cnVj dCBkcm1fZGV2aWNlICpkZXYgPSBlbmNvZGVyLT5iYXNlLmRldjsKPiArCXN0cnVjdCBkcm1faTkx NV9wcml2YXRlICpkZXZfcHJpdiA9IGRldi0+ZGV2X3ByaXZhdGU7CgpVbm5lY2Vzc2FyeSBjaGFu Z2UuCgo+ICAJc3RydWN0IGludGVsX2RzaSAqaW50ZWxfZHNpID0gZW5jX3RvX2ludGVsX2RzaSgm ZW5jb2Rlci0+YmFzZSk7Cj4gIAl1MzIgdmFsOwo+ICAKPiAgCURSTV9ERUJVR19LTVMoIlxuIik7 Cj4gIAo+ICAJaW50ZWxfZHNpX2Rpc2FibGUoZW5jb2Rlcik7Cj4gLQoKVW5yZWxhdGVkIHdoaXRl c3BhY2UgY2hhbmdlLgoKPiAgCWludGVsX2RzaV9jbGVhcl9kZXZpY2VfcmVhZHkoZW5jb2Rlcik7 Cj4gIAo+ICAJdmFsID0gSTkxNV9SRUFEKERTUENMS19HQVRFX0QpOwo+IGRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kc2kuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2RzaS5oCj4gaW5kZXggYWY1YTA5Zi4uOGJjOGQ5NCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9kc2kuaAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2RzaS5oCj4gQEAgLTEyNSw2ICsxMjUsOCBAQCBleHRlcm4gdm9pZCBpbnRlbF9lbmFibGVf ZHNpX3BsbChzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2Rlcik7Cj4gIGV4dGVybiB2b2lkIGlu dGVsX2Rpc2FibGVfZHNpX3BsbChzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2Rlcik7Cj4gIGV4 dGVybiB1MzIgdmx2X2dldF9kc2lfcGNsayhzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2Rlciwg aW50IHBpcGVfYnBwKTsKPiAgZXh0ZXJuIHZvaWQgYnh0X2RzaV9wcm9ncmFtX2Nsb2NrcyhzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2LCBpbnQgcGlwZSk7Cj4gK2V4dGVybiB2b2lkIGludGVsX2RzaV9y ZXNldF9jbG9ja3Moc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIsCj4gKwkJCQkJCWVudW0g cG9ydCBwb3J0KTsKPiAgCj4gIHN0cnVjdCBkcm1fcGFuZWwgKnZidF9wYW5lbF9pbml0KHN0cnVj dCBpbnRlbF9kc2kgKmludGVsX2RzaSwgdTE2IHBhbmVsX2lkKTsKPiAgCj4gZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RzaV9wbGwuYyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2RzaV9wbGwuYwo+IGluZGV4IDlhOGEzNWQuLjQ5MzMwYjAgMTAwNjQ0Cj4gLS0t IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHNpX3BsbC5jCj4gKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZHNpX3BsbC5jCj4gQEAgLTM2OSw2ICszNjksMTkgQEAgdTMyIHZs dl9nZXRfZHNpX3BjbGsoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIsIGludCBwaXBlX2Jw cCkKPiAgCXJldHVybiBwY2xrOwo+ICB9Cj4gIAo+ICt2b2lkIHZsdl9kc2lfcmVzZXRfY2xvY2tz KHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLCBlbnVtIHBvcnQgcG9ydCkKPiArewo+ICsJ dTMyIHRlbXA7Cj4gKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBlbmNvZGVy LT5iYXNlLmRldi0+ZGV2X3ByaXZhdGU7Cj4gKwlzdHJ1Y3QgaW50ZWxfZHNpICppbnRlbF9kc2kg PSBlbmNfdG9faW50ZWxfZHNpKCZlbmNvZGVyLT5iYXNlKTsKPiArCj4gKwl0ZW1wID0gSTkxNV9S RUFEKE1JUElfQ1RSTChwb3J0KSk7Cj4gKwl0ZW1wICY9IH5FU0NBUEVfQ0xPQ0tfRElWSURFUl9N QVNLOwo+ICsJSTkxNV9XUklURShNSVBJX0NUUkwocG9ydCksIHRlbXAgfAo+ICsJCQlpbnRlbF9k c2ktPmVzY2FwZV9jbGtfZGl2IDw8Cj4gKwkJCUVTQ0FQRV9DTE9DS19ESVZJREVSX1NISUZUKTsK PiArfQo+ICsKPiAgLyogUHJvZ3JhbSBCWFQgTWlwaSBjbG9ja3MgYW5kIGRpdmlkZXJzICovCj4g IHZvaWQgYnh0X2RzaV9wcm9ncmFtX2Nsb2NrcyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBpbnQg cGlwZSkKPiAgewo+IEBAIC01MTUsMyArNTI4LDMxIEBAIHZvaWQgaW50ZWxfZGlzYWJsZV9kc2lf cGxsKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyKQo+ICAJZWxzZQo+ICAJCURSTV9FUlJP UigiSW52YWxpZCBEU0kgZGV2aWNlIHRvIHByZV9wbGxfZW5hYmxlXG4iKTsKPiAgfQo+ICsKPiAr dm9pZCBieHRfZHNpX3Jlc2V0X2Nsb2NrcyhzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2Rlciwg ZW51bSBwb3J0IHBvcnQpCj4gK3sKPiArCXUzMiB0bXA7Cj4gKwlzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2ID0gZW5jb2Rlci0+YmFzZS5kZXY7Cj4gKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2 X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOwo+ICsKPiArCS8qIENsZWFyIG9sZCBjb25maWd1cmF0 aW9ucyAqLwo+ICsJdG1wID0gSTkxNV9SRUFEKEJYVF9NSVBJX0NMT0NLX0NUTCk7Cj4gKwl0bXAg Jj0gfihCWFRfTUlQSV9UWF9FU0NMS19GSVhESVZfTUFTSyhwb3J0KSk7Cj4gKwl0bXAgJj0gfihC WFRfTUlQSV9SWF9FU0NMS19GSVhESVZfTUFTSyhwb3J0KSk7Cj4gKwl0bXAgJj0gfihCWFRfTUlQ SV9FU0NMS19WQVJfRElWX01BU0socG9ydCkpOwo+ICsJdG1wICY9IH4oQlhUX01JUElfRFBIWV9E SVZJREVSX01BU0socG9ydCkpOwo+ICsJSTkxNV9XUklURShCWFRfTUlQSV9DTE9DS19DVEwsIHRt cCk7Cj4gKwlJOTE1X1dSSVRFKE1JUElfRU9UX0RJU0FCTEUocG9ydCksIENMT0NLU1RPUCk7Cj4g K30KPiArCj4gK3ZvaWQgaW50ZWxfZHNpX3Jlc2V0X2Nsb2NrcyhzdHJ1Y3QgaW50ZWxfZW5jb2Rl ciAqZW5jb2RlciwgZW51bSBwb3J0IHBvcnQpCj4gK3sKPiArCXN0cnVjdCBkcm1fZGV2aWNlICpk ZXYgPSBlbmNvZGVyLT5iYXNlLmRldjsKPiArCj4gKwlpZiAoSVNfQlJPWFRPTihkZXYpKQo+ICsJ CWJ4dF9kc2lfcmVzZXRfY2xvY2tzKGVuY29kZXIsIHBvcnQpOwo+ICsJZWxzZSBpZiAoSVNfVkFM TEVZVklFVyhkZXYpKQo+ICsJCXZsdl9kc2lfcmVzZXRfY2xvY2tzKGVuY29kZXIsIHBvcnQpOwo+ ICsJZWxzZQo+ICsJCURSTV9FUlJPUigiSW52YWxpZCBEU0kgZGV2aWNlIHRvIHJlc2V0IGNsb2Nr c1xuIik7CgpQbGVhc2UgZHJvcCBhbGwgc3VjaCBlbHNlIGJyYW5jaGVzLgoKPiArfQo+IC0tIAo+ IDEuNy45LjUKPgo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCj4gSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdAo+IEludGVsLWdmeEBsaXN0cy5mcmVlZGVza3Rv cC5vcmcKPiBodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50 ZWwtZ2Z4CgotLSAKSmFuaSBOaWt1bGEsIEludGVsIE9wZW4gU291cmNlIFRlY2hub2xvZ3kgQ2Vu dGVyCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVs LWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8v bGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==