From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Kamble, Sagar A" Subject: Re: [PATCH 4/5] drm/i915: Use only blitter forcewake Date: Sat, 12 Sep 2015 23:45:08 +0530 Message-ID: <55F46BAC.406@intel.com> References: <1440332571-20761-1-git-send-email-sagar.a.kamble@intel.com> <1440332571-20761-5-git-send-email-sagar.a.kamble@intel.com> <20150911133713.GK26517@intel.com> <55F2DD17.3070800@intel.com> <20150911140259.GL26517@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTP id 5D8596E362 for ; Sat, 12 Sep 2015 11:15:12 -0700 (PDT) In-Reply-To: <20150911140259.GL26517@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: =?UTF-8?B?VmlsbGUgU3lyasOkbMOk?= Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org CgpPbiA5LzExLzIwMTUgNzozMiBQTSwgVmlsbGUgU3lyasOkbMOkIHdyb3RlOgo+IE9uIEZyaSwg U2VwIDExLCAyMDE1IGF0IDA3OjI0OjMxUE0gKzA1MzAsIEthbWJsZSwgU2FnYXIgQSB3cm90ZToK Pj4KPj4gT24gOS8xMS8yMDE1IDc6MDcgUE0sIFZpbGxlIFN5cmrDpGzDpCB3cm90ZToKPj4+IE9u IFN1biwgQXVnIDIzLCAyMDE1IGF0IDA1OjUyOjUwUE0gKzA1MzAsIFNhZ2FyIEFydW4gS2FtYmxl IHdyb3RlOgo+Pj4+IENvYXJzZSBwb3dlciBnYXRpbmcgaXMgZGlzYWJsZWQgcHJpb3IgdG8gQlhU IEIwIGFuZCB0aWxsIFNLTCBFMCwKPj4+PiBoZW5jZSBldmVuIGZvciByZW5kZXIgYW5kIG1lZGlh IHdlbGwgcmVnaXN0ZXJzIGJsaXR0ZXIgZm9yY2V3YWtlIHJlcXVlc3QKPj4+PiBuZWVkIHRvIGJl IHVzZWQuCj4+Pj4KPj4+PiBDaGFuZ2UtSWQ6IEliZmE4YWJmMDJiNGQyN2NhMWZjZDY4ZmM5ZTk4 YzJkYWFkZTdjMjg2Cj4+Pj4gU2lnbmVkLW9mZi1ieTogU2FnYXIgQXJ1biBLYW1ibGUgPHNhZ2Fy LmEua2FtYmxlQGludGVsLmNvbT4KPj4+PiAtLS0KPj4+PiAgICBkcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2RlYnVnZnMuYyB8ICA1ICsrKy0KPj4+PiAgICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2Rydi5oICAgICB8ICAxICsKPj4+PiAgICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF91 bmNvcmUuYyB8IDUzICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0KPj4+PiAg ICAzIGZpbGVzIGNoYW5nZWQsIDQ4IGluc2VydGlvbnMoKyksIDExIGRlbGV0aW9ucygtKQo+Pj4+ Cj4+Pj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZGVidWdmcy5jIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kZWJ1Z2ZzLmMKPj4+PiBpbmRleCA3YTI4ZGU1Li44 ZWVhNDUyIDEwMDY0NAo+Pj4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZGVidWdm cy5jCj4+Pj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kZWJ1Z2ZzLmMKPj4+PiBA QCAtMTUwOSw3ICsxNTA5LDEwIEBAIHN0YXRpYyBpbnQgZ2VuNl9kcnBjX2luZm8oc3RydWN0IHNl cV9maWxlICptKQo+Pj4+ICAgIAlpbnRlbF9ydW50aW1lX3BtX2dldChkZXZfcHJpdik7Cj4+Pj4g ICAgCj4+Pj4gICAgCXNwaW5fbG9ja19pcnEoJmRldl9wcml2LT51bmNvcmUubG9jayk7Cj4+Pj4g LQlmb3JjZXdha2VfY291bnQgPSBkZXZfcHJpdi0+dW5jb3JlLmZ3X2RvbWFpbltGV19ET01BSU5f SURfUkVOREVSXS53YWtlX2NvdW50Owo+Pj4+ICsJaWYgKHVzZV9ibGl0dGVyX2ZvcmNld2FrZShk ZXYpKQo+Pj4+ICsJCWZvcmNld2FrZV9jb3VudCA9IGRldl9wcml2LT51bmNvcmUuZndfZG9tYWlu W0ZXX0RPTUFJTl9JRF9CTElUVEVSXS53YWtlX2NvdW50Owo+Pj4+ICsJZWxzZQo+Pj4+ICsJCWZv cmNld2FrZV9jb3VudCA9IGRldl9wcml2LT51bmNvcmUuZndfZG9tYWluW0ZXX0RPTUFJTl9JRF9S RU5ERVJdLndha2VfY291bnQ7Cj4+Pj4gICAgCXNwaW5fdW5sb2NrX2lycSgmZGV2X3ByaXYtPnVu Y29yZS5sb2NrKTsKPj4+PiAgICAKPj4+PiAgICAJaWYgKGZvcmNld2FrZV9jb3VudCkgewo+Pj4+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9kcnYuaAo+Pj4+IGluZGV4IGUwZjNmMDUuLmMxMjcxNzUgMTAwNjQ0 Cj4+Pj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAo+Pj4+ICsrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKPj4+PiBAQCAtMjY5MSw2ICsyNjkxLDcgQEAg ZXh0ZXJuIHZvaWQgaW50ZWxfdW5jb3JlX2NoZWNrX2Vycm9ycyhzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2KTsKPj4+PiAgICBleHRlcm4gdm9pZCBpbnRlbF91bmNvcmVfZmluaShzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2KTsKPj4+PiAgICBleHRlcm4gdm9pZCBpbnRlbF91bmNvcmVfZm9yY2V3YWtlX3Jl c2V0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIGJvb2wgcmVzdG9yZSk7Cj4+Pj4gICAgY29uc3Qg Y2hhciAqaW50ZWxfdW5jb3JlX2ZvcmNld2FrZV9kb21haW5fdG9fc3RyKGNvbnN0IGVudW0gZm9y Y2V3YWtlX2RvbWFpbl9pZCBpZCk7Cj4+Pj4gK2Jvb2wgdXNlX2JsaXR0ZXJfZm9yY2V3YWtlKHN0 cnVjdCBkcm1fZGV2aWNlICpkZXYpOwo+Pj4+ICAgIHZvaWQgaW50ZWxfdW5jb3JlX2ZvcmNld2Fr ZV9nZXQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAo+Pj4+ICAgIAkJCQllbnVt IGZvcmNld2FrZV9kb21haW5zIGRvbWFpbnMpOwo+Pj4+ICAgIHZvaWQgaW50ZWxfdW5jb3JlX2Zv cmNld2FrZV9wdXQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAo+Pj4+IGRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF91bmNvcmUuYyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX3VuY29yZS5jCj4+Pj4gaW5kZXggMmRmMDNiMS4uYjdiNjYxMiAxMDA2 NDQKPj4+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF91bmNvcmUuYwo+Pj4+ICsr KyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3VuY29yZS5jCj4+Pj4gQEAgLTYzLDYgKzYz LDE5IEBAIGludGVsX3VuY29yZV9mb3JjZXdha2VfZG9tYWluX3RvX3N0cihjb25zdCBlbnVtIGZv cmNld2FrZV9kb21haW5faWQgaWQpCj4+Pj4gICAgCXJldHVybiAidW5rbm93biI7Cj4+Pj4gICAg fQo+Pj4+ICAgIAo+Pj4+ICtib29sIHVzZV9ibGl0dGVyX2ZvcmNld2FrZShzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2KQo+Pj4+ICt7Cj4+Pj4gKwkvKgo+Pj4+ICsJICogRHVlIHRvIFdhUnNEaXNhYmxl Q29hcnNlUG93ZXJHYXRpbmcsIE9ubHkgYmxpdHRlciBmb3JjZXdha2UgbmVlZCB0bwo+Pj4+ICsJ ICogYmUgdXNlZCBvbiBwbGF0Zm9ybXMgcHJldmlvdXMgdG8gQlhUIEIwIGFuZCB1bnRpbCBTS0wg RTAuCj4+Pj4gKwkqLwo+Pj4gWW91IHNheSBvbmx5IGJsaXR0ZXIgZm9yY2V3YWtlIG5lZWQgYmUg dXNlZC4gT0ssIGJ1dCBob3cgZG9lcyB0aGF0IGltcGx5Cj4+PiB0aGF0IHlvdSBuZWVkIHRvIGdy YWIgdGhlIGJsaXR0ZXIgZm9yY2V3YWtlIGZvciByZW5kZXIvbWVkaWEgd2VsbHMgYXMKPj4+IHdl bGw/Cj4+IE9rLiBJIG5lZWQgdG8gcmV3b3JkIHRoZSBjb21taXQgbWVzc2FnZS4gQ2hhbmdlIGlz IHRvIGdyYWIgYmxpdHRlciBmdwo+PiBmb3IgYWxsIHJlZ2lzdGVyIGFjY2Vzc2VzIGluIEdULgo+ IFdoZXJlIGlzIHRoYXQgZG9jdW1lbnRlZCBCVFc/IEkgY291bGRuJ3QgZmluZCBhbnl0aGluZyBz b2xpZC4KVGhpcyBpcyBub3QgZG9jdW1lbnRlZCBhcyBwYXJ0IG9mIFdhUnNEaXNhYmxlQ29hcnNl UG93ZXJHYXRpbmcuCkJ1dCBpZiBDb2Fyc2UgUG93ZXIgR2F0aW5nIGlzIGRpc2FibGVkIGl0IGlz IGFzIGdvb2QgYXMgbGVnYWN5IFJDNiBmbG93IApsaWtlIGluIEhTVy9CRFcuCkFuZCBoZW5jZSB3 ZSBuZWVkIHRvIHRha2UgYmxpdHRlciBmb3JjZXdha2UgZm9yIGFsbCBhY2Nlc3Nlcy4KPj4+PiAr CWlmICgoSVNfQlJPWFRPTihkZXYpICYmIChJTlRFTF9SRVZJRChkZXYpIDwgQlhUX1JFVklEX0Iw KSkgfHwKPj4+PiArCQkoSVNfU0tZTEFLRShkZXYpICYmIChJTlRFTF9SRVZJRChkZXYpIDw9IFNL TF9SRVZJRF9FMCkpKQo+Pj4+ICsJCXJldHVybiB0cnVlOwo+Pj4+ICsJZWxzZQo+Pj4+ICsJCXJl dHVybiBmYWxzZTsKPj4+PiArfQo+Pj4+ICsKPj4+PiAgICBzdGF0aWMgdm9pZAo+Pj4+ICAgIGFz c2VydF9kZXZpY2Vfbm90X3N1c3BlbmRlZChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3By aXYpCj4+Pj4gICAgewo+Pj4+IEBAIC0xMjksNiArMTQyLDkgQEAgZndfZG9tYWluc19nZXQoc3Ry dWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LCBlbnVtIGZvcmNld2FrZV9kb21haW5zIGZ3 X2RvbWEKPj4+PiAgICAJc3RydWN0IGludGVsX3VuY29yZV9mb3JjZXdha2VfZG9tYWluICpkOwo+ Pj4+ICAgIAllbnVtIGZvcmNld2FrZV9kb21haW5faWQgaWQ7Cj4+Pj4gICAgCj4+Pj4gKwlXQVJO X09OKHVzZV9ibGl0dGVyX2ZvcmNld2FrZShkZXZfcHJpdi0+ZGV2KSAmJgo+Pj4+ICsJCQkoZndf ZG9tYWlucyAmIH5GT1JDRVdBS0VfQkxJVFRFUikpOwo+Pj4+ICsKPj4+PiAgICAJZm9yX2VhY2hf ZndfZG9tYWluX21hc2soZCwgZndfZG9tYWlucywgZGV2X3ByaXYsIGlkKSB7Cj4+Pj4gICAgCQlm d19kb21haW5fd2FpdF9hY2tfY2xlYXIoZCk7Cj4+Pj4gICAgCQlmd19kb21haW5fZ2V0KGQpOwo+ Pj4+IEBAIC0xNDIsNiArMTU4LDkgQEAgZndfZG9tYWluc19wdXQoc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmRldl9wcml2LCBlbnVtIGZvcmNld2FrZV9kb21haW5zIGZ3X2RvbWEKPj4+PiAgICAJ c3RydWN0IGludGVsX3VuY29yZV9mb3JjZXdha2VfZG9tYWluICpkOwo+Pj4+ICAgIAllbnVtIGZv cmNld2FrZV9kb21haW5faWQgaWQ7Cj4+Pj4gICAgCj4+Pj4gKwlXQVJOX09OKHVzZV9ibGl0dGVy X2ZvcmNld2FrZShkZXZfcHJpdi0+ZGV2KSAmJgo+Pj4+ICsJCQkoZndfZG9tYWlucyAmIH5GT1JD RVdBS0VfQkxJVFRFUikpOwo+Pj4+ICsKPj4+PiAgICAJZm9yX2VhY2hfZndfZG9tYWluX21hc2so ZCwgZndfZG9tYWlucywgZGV2X3ByaXYsIGlkKSB7Cj4+Pj4gICAgCQlmd19kb21haW5fcHV0KGQp Owo+Pj4+ICAgIAkJZndfZG9tYWluX3Bvc3RpbmdfcmVhZChkKTsKPj4+PiBAQCAtMzEzLDYgKzMz MiwxMSBAQCB2b2lkIGludGVsX3VuY29yZV9mb3JjZXdha2VfcmVzZXQoc3RydWN0IGRybV9kZXZp Y2UgKmRldiwgYm9vbCByZXN0b3JlKQo+Pj4+ICAgIAlpZiAoZncpCj4+Pj4gICAgCQlkZXZfcHJp di0+dW5jb3JlLmZ1bmNzLmZvcmNlX3dha2VfcHV0KGRldl9wcml2LCBmdyk7Cj4+Pj4gICAgCj4+ Pj4gKwlpZiAodXNlX2JsaXR0ZXJfZm9yY2V3YWtlKGRldikgJiYgIXJlc3RvcmUpIHsKPj4+PiAr CQlfX3Jhd19pOTE1X3dyaXRlMzIoZGV2X3ByaXYsIEZPUkNFV0FLRV9SRU5ERVJfR0VOOSwgX01B U0tFRF9CSVRfRElTQUJMRSgweGZmZmYpKTsKPj4+PiArCQlfX3Jhd19pOTE1X3dyaXRlMzIoZGV2 X3ByaXYsIEZPUkNFV0FLRV9NRURJQV9HRU45LCBfTUFTS0VEX0JJVF9ESVNBQkxFKDB4ZmZmZikp Owo+Pj4+ICsJfQo+Pj4+ICsKPj4+PiAgICAJZndfZG9tYWluc19yZXNldChkZXZfcHJpdiwgRk9S Q0VXQUtFX0FMTCk7Cj4+Pj4gICAgCj4+Pj4gICAgCWlmIChyZXN0b3JlKSB7IC8qIElmIHJlc2V0 IHdpdGggYSB1c2VyIGZvcmNld2FrZSwgdHJ5IHRvIHJlc3RvcmUgKi8KPj4+PiBAQCAtNzgwLDgg KzgwNCwxMSBAQCBnZW45X3JlYWQjI3goc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2 LCBvZmZfdCByZWcsIGJvb2wgdHJhY2UpIHsgXAo+Pj4+ICAgIAkJZndfZW5naW5lID0gRk9SQ0VX QUtFX1JFTkRFUiB8IEZPUkNFV0FLRV9NRURJQTsgXAo+Pj4+ICAgIAllbHNlIFwKPj4+PiAgICAJ CWZ3X2VuZ2luZSA9IEZPUkNFV0FLRV9CTElUVEVSOyBcCj4+Pj4gLQlpZiAoZndfZW5naW5lKSBc Cj4+Pj4gKwlpZiAoZndfZW5naW5lKSB7IFwKPj4+PiArCQlpZiAodXNlX2JsaXR0ZXJfZm9yY2V3 YWtlKGRldl9wcml2LT5kZXYpKSBcCj4+Pj4gKwkJCWZ3X2VuZ2luZSA9IEZPUkNFV0FLRV9CTElU VEVSOyBcCj4+Pj4gICAgCQlfX2ZvcmNlX3dha2VfZ2V0KGRldl9wcml2LCBmd19lbmdpbmUpOyBc Cj4+Pj4gKwl9IFwKPj4+PiAgICAJdmFsID0gX19yYXdfaTkxNV9yZWFkIyN4KGRldl9wcml2LCBy ZWcpOyBcCj4+Pj4gICAgCUdFTjZfUkVBRF9GT09URVI7IFwKPj4+PiAgICB9Cj4+Pj4gQEAgLTk5 NCw4ICsxMDIxLDExIEBAIGdlbjlfd3JpdGUjI3goc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRl dl9wcml2LCBvZmZfdCByZWcsIHUjI3ggdmFsLCBcCj4+Pj4gICAgCQlmd19lbmdpbmUgPSBGT1JD RVdBS0VfUkVOREVSIHwgRk9SQ0VXQUtFX01FRElBOyBcCj4+Pj4gICAgCWVsc2UgXAo+Pj4+ICAg IAkJZndfZW5naW5lID0gRk9SQ0VXQUtFX0JMSVRURVI7IFwKPj4+PiAtCWlmIChmd19lbmdpbmUp IFwKPj4+PiArCWlmIChmd19lbmdpbmUpIHsgXAo+Pj4+ICsJCWlmICh1c2VfYmxpdHRlcl9mb3Jj ZXdha2UoZGV2X3ByaXYtPmRldikpIFwKPj4+PiArCQkJZndfZW5naW5lID0gRk9SQ0VXQUtFX0JM SVRURVI7IFwKPj4+PiAgICAJCV9fZm9yY2Vfd2FrZV9nZXQoZGV2X3ByaXYsIGZ3X2VuZ2luZSk7 IFwKPj4+PiArCX0gXAo+Pj4+ICAgIAlfX3Jhd19pOTE1X3dyaXRlIyN4KGRldl9wcml2LCByZWcs IHZhbCk7IFwKPj4+PiAgICAJR0VONl9XUklURV9GT09URVI7IFwKPj4+PiAgICB9Cj4+Pj4gQEAg LTExMDYsMTQgKzExMzYsMTcgQEAgc3RhdGljIHZvaWQgaW50ZWxfdW5jb3JlX2Z3X2RvbWFpbnNf aW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+Pj4+ICAgIAlpZiAoSVNfR0VOOShkZXYpKSB7 Cj4+Pj4gICAgCQlkZXZfcHJpdi0+dW5jb3JlLmZ1bmNzLmZvcmNlX3dha2VfZ2V0ID0gZndfZG9t YWluc19nZXQ7Cj4+Pj4gICAgCQlkZXZfcHJpdi0+dW5jb3JlLmZ1bmNzLmZvcmNlX3dha2VfcHV0 ID0gZndfZG9tYWluc19wdXQ7Cj4+Pj4gLQkJZndfZG9tYWluX2luaXQoZGV2X3ByaXYsIEZXX0RP TUFJTl9JRF9SRU5ERVIsCj4+Pj4gLQkJCSAgICAgICBGT1JDRVdBS0VfUkVOREVSX0dFTjksCj4+ Pj4gLQkJCSAgICAgICBGT1JDRVdBS0VfQUNLX1JFTkRFUl9HRU45KTsKPj4+PiAtCQlmd19kb21h aW5faW5pdChkZXZfcHJpdiwgRldfRE9NQUlOX0lEX0JMSVRURVIsCj4+Pj4gLQkJCSAgICAgICBG T1JDRVdBS0VfQkxJVFRFUl9HRU45LAo+Pj4+IC0JCQkgICAgICAgRk9SQ0VXQUtFX0FDS19CTElU VEVSX0dFTjkpOwo+Pj4+IC0JCWZ3X2RvbWFpbl9pbml0KGRldl9wcml2LCBGV19ET01BSU5fSURf TUVESUEsCj4+Pj4gLQkJCSAgICAgICBGT1JDRVdBS0VfTUVESUFfR0VOOSwgRk9SQ0VXQUtFX0FD S19NRURJQV9HRU45KTsKPj4+PiArCQlpZiAoIXVzZV9ibGl0dGVyX2ZvcmNld2FrZShkZXYpKSB7 Cj4+Pj4gKwkJCWZ3X2RvbWFpbl9pbml0KGRldl9wcml2LCBGV19ET01BSU5fSURfUkVOREVSLAo+ Pj4+ICsJCQkJCUZPUkNFV0FLRV9SRU5ERVJfR0VOOSwKPj4+PiArCQkJCQlGT1JDRVdBS0VfQUNL X1JFTkRFUl9HRU45KTsKPj4+PiArCQkJZndfZG9tYWluX2luaXQoZGV2X3ByaXYsIEZXX0RPTUFJ Tl9JRF9NRURJQSwKPj4+PiArCQkJCQlGT1JDRVdBS0VfTUVESUFfR0VOOSwKPj4+PiArCQkJCQlG T1JDRVdBS0VfQUNLX01FRElBX0dFTjkpOwo+Pj4+ICsJCX0KPj4+PiArICAgICAgICAgICAgICAg IGZ3X2RvbWFpbl9pbml0KGRldl9wcml2LCBGV19ET01BSU5fSURfQkxJVFRFUiwKPj4+PiArICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZPUkNFV0FLRV9CTElUVEVSX0dFTjksCj4+Pj4g KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGT1JDRVdBS0VfQUNLX0JMSVRURVJfR0VO OSk7Cj4+Pj4gICAgCX0gZWxzZSBpZiAoSVNfVkFMTEVZVklFVyhkZXYpKSB7Cj4+Pj4gICAgCQlk ZXZfcHJpdi0+dW5jb3JlLmZ1bmNzLmZvcmNlX3dha2VfZ2V0ID0gZndfZG9tYWluc19nZXQ7Cj4+ Pj4gICAgCQlpZiAoIUlTX0NIRVJSWVZJRVcoZGV2KSkKPj4+PiAtLSAKPj4+PiAxLjkuMQo+Pj4+ Cj4+Pj4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KPj4+ PiBJbnRlbC1nZnggbWFpbGluZyBsaXN0Cj4+Pj4gSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9w Lm9yZwo+Pj4+IGh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9p bnRlbC1nZngKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f CkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpo dHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==