From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: Re: [PATCH] drm/i915: Implement read-only support in whitelist selftest Date: Thu, 20 Jun 2019 16:43:12 +0100 Message-ID: References: <6d8350d9-7078-96d5-eba8-e8a894500492@linux.intel.com> <20190618195421.31027-1-John.C.Harrison@Intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTPS id 7772A6E5C8 for ; Thu, 20 Jun 2019 15:43:14 +0000 (UTC) In-Reply-To: <20190618195421.31027-1-John.C.Harrison@Intel.com> Content-Language: en-US List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: John.C.Harrison@Intel.com, Intel-GFX@Lists.FreeDesktop.Org List-Id: intel-gfx@lists.freedesktop.org CkhpLAoKWW91IHdpbGwgbmVlZCB0byBzZW5kIHRoaXMgbm90IGFzIHJlcGx5IHRvIHRoaXMgdGhy ZWFkIHNvIGl0IGlzIHBpY2tlZCAKdXAgYnkgQ0kgYW5kIHRoZW4gY2FuIGJlIG1lcmdlZC4KCkJ1 dCBwbGVhc2UgYWxzbyBhZGQgYSBwYXRjaCB3aGljaCBhZGRzIHRoYXQgR0VNX0JVR19PTiByZWct PmZsYWdzIGNoZWNrIAp3ZSB0YWxrZWQgYWJvdXQuCgpSZWdhcmRzLAoKVHZydGtvCgpPbiAxOC8w Ni8yMDE5IDIwOjU0LCBKb2huLkMuSGFycmlzb25ASW50ZWwuY29tIHdyb3RlOgo+IEZyb206IEpv aG4gSGFycmlzb24gPEpvaG4uQy5IYXJyaXNvbkBJbnRlbC5jb20+Cj4gCj4gTmV3ZXIgaGFyZHdh cmUgc3VwcG9ydHMgZXh0cmEgZmVhdHVyZSBpbiB0aGUgd2hpdGVsaXN0IHJlZ2lzdGVycy4gVGhp cwo+IHBhdGNoIHVwZGF0ZXMgdGhlIHNlbGZ0ZXN0IHRvIHRlc3QgdGhhdCBlbnRyaWVzIG1hcmtl ZCBhcyByZWFkIG9ubHkKPiBhcmUgYWN0dWFsbHkgcmVhZCBvbmx5Lgo+IAo+IEFsc28gdXBkYXRl ZCB0aGUgcmVhZC93cml0ZSBhY2Nlc3MgZGVmaW5pdGlvbnMgdG8gbWFrZSBpdCBjbGVhcmVyIHRo YXQKPiB0aGV5IGFyZSBhbiBlbnVtIGZpZWxkIG5vdCBhIHNldCBvZiBzaW5nbGUgYml0IGZsYWdz Lgo+IAo+IFNpZ25lZC1vZmYtYnk6IEpvaG4gSGFycmlzb24gPEpvaG4uQy5IYXJyaXNvbkBJbnRl bC5jb20+Cj4gQ0M6IFR2cnRrbyBVcnN1bGluIDx0dnJ0a28udXJzdWxpbkBpbnRlbC5jb20+Cj4g LS0tCj4gICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF93b3JrYXJvdW5kcy5jICAgfCAg OCArLS0KPiAgIC4uLi9ncHUvZHJtL2k5MTUvZ3Qvc2VsZnRlc3Rfd29ya2Fyb3VuZHMuYyAgICB8 IDUzICsrKysrKysrKysrKystLS0tLS0KPiAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVn LmggICAgICAgICAgICAgICB8ICA5ICsrLS0KPiAgIDMgZmlsZXMgY2hhbmdlZCwgNDggaW5zZXJ0 aW9ucygrKSwgMjIgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2d0L2ludGVsX3dvcmthcm91bmRzLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9p bnRlbF93b3JrYXJvdW5kcy5jCj4gaW5kZXggOTNjYWE3YjZkN2E5Li40NDI5ZWUwOGIyMGUgMTAw NjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfd29ya2Fyb3VuZHMuYwo+ ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX3dvcmthcm91bmRzLmMKPiBAQCAt MTAyOCw3ICsxMDI4LDcgQEAgd2hpdGVsaXN0X3JlZ19leHQoc3RydWN0IGk5MTVfd2FfbGlzdCAq d2FsLCBpOTE1X3JlZ190IHJlZywgdTMyIGZsYWdzKQo+ICAgc3RhdGljIHZvaWQKPiAgIHdoaXRl bGlzdF9yZWcoc3RydWN0IGk5MTVfd2FfbGlzdCAqd2FsLCBpOTE1X3JlZ190IHJlZykKPiAgIHsK PiAtCXdoaXRlbGlzdF9yZWdfZXh0KHdhbCwgcmVnLCBSSU5HX0ZPUkNFX1RPX05PTlBSSVZfUlcp Owo+ICsJd2hpdGVsaXN0X3JlZ19leHQod2FsLCByZWcsIFJJTkdfRk9SQ0VfVE9fTk9OUFJJVl9B Q0NFU1NfUlcpOwo+ICAgfQo+ICAgCj4gICBzdGF0aWMgdm9pZCBnZW45X3doaXRlbGlzdF9idWls ZChzdHJ1Y3QgaTkxNV93YV9saXN0ICp3KQo+IEBAIC0xMTM0LDEzICsxMTM0LDEzIEBAIHByaW50 ayhLRVJOX0lORk8gIiUtMzJzOiU0ZD4gQm9vISBbZW5naW5lID0gJXMsIGluc3RhbmNlID0gJWQs IGJhc2UgPSAweCVYLCByZWcKPiAgIAo+ICAgCQkvKiBodWNTdGF0dXNSZWdPZmZzZXQgKi8KPiAg IAkJd2hpdGVsaXN0X3JlZ19leHQodywgX01NSU8oMHgyMDAwICsgZW5naW5lLT5tbWlvX2Jhc2Up LAo+IC0JCQkJICBSSU5HX0ZPUkNFX1RPX05PTlBSSVZfUkQpOwo+ICsJCQkJICBSSU5HX0ZPUkNF X1RPX05PTlBSSVZfQUNDRVNTX1JEKTsKPiAgIAkJLyogaHVjVUtlcm5lbEhkckluZm9SZWdPZmZz ZXQgKi8KPiAgIAkJd2hpdGVsaXN0X3JlZ19leHQodywgX01NSU8oMHgyMDE0ICsgZW5naW5lLT5t bWlvX2Jhc2UpLAo+IC0JCQkJICBSSU5HX0ZPUkNFX1RPX05PTlBSSVZfUkQpOwo+ICsJCQkJICBS SU5HX0ZPUkNFX1RPX05PTlBSSVZfQUNDRVNTX1JEKTsKPiAgIAkJLyogaHVjU3RhdHVzMlJlZ09m ZnNldCAqLwo+ICAgCQl3aGl0ZWxpc3RfcmVnX2V4dCh3LCBfTU1JTygweDIzQjAgKyBlbmdpbmUt Pm1taW9fYmFzZSksCj4gLQkJCQkgIFJJTkdfRk9SQ0VfVE9fTk9OUFJJVl9SRCk7Cj4gKwkJCQkg IFJJTkdfRk9SQ0VfVE9fTk9OUFJJVl9BQ0NFU1NfUkQpOwo+ICAgCQlicmVhazsKPiAgIAo+ICAg CWRlZmF1bHQ6Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L3NlbGZ0ZXN0 X3dvcmthcm91bmRzLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9zZWxmdGVzdF93b3JrYXJv dW5kcy5jCj4gaW5kZXggZWI2ZDNhYTJjOGNjLi5hMGE4OGVjNjY4NjEgMTAwNjQ0Cj4gLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3Qvc2VsZnRlc3Rfd29ya2Fyb3VuZHMuYwo+ICsrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2d0L3NlbGZ0ZXN0X3dvcmthcm91bmRzLmMKPiBAQCAtMzk5LDYg KzM5OSwxMCBAQCBzdGF0aWMgYm9vbCB3b19yZWdpc3RlcihzdHJ1Y3QgaW50ZWxfZW5naW5lX2Nz ICplbmdpbmUsIHUzMiByZWcpCj4gICAJZW51bSBpbnRlbF9wbGF0Zm9ybSBwbGF0Zm9ybSA9IElO VEVMX0lORk8oZW5naW5lLT5pOTE1KS0+cGxhdGZvcm07Cj4gICAJaW50IGk7Cj4gICAKPiArCWlm ICgocmVnICYgUklOR19GT1JDRV9UT19OT05QUklWX0FDQ0VTU19NQVNLKSA9PQo+ICsJICAgICBS SU5HX0ZPUkNFX1RPX05PTlBSSVZfQUNDRVNTX1dSKQo+ICsJCXJldHVybiB0cnVlOwo+ICsKPiAg IAlmb3IgKGkgPSAwOyBpIDwgQVJSQVlfU0laRSh3b19yZWdpc3RlcnMpOyBpKyspIHsKPiAgIAkJ aWYgKHdvX3JlZ2lzdGVyc1tpXS5wbGF0Zm9ybSA9PSBwbGF0Zm9ybSAmJgo+ICAgCQkgICAgd29f cmVnaXN0ZXJzW2ldLnJlZyA9PSByZWcpCj4gQEAgLTQxMCw3ICs0MTQsOCBAQCBzdGF0aWMgYm9v bCB3b19yZWdpc3RlcihzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUsIHUzMiByZWcpCj4g ICAKPiAgIHN0YXRpYyBib29sIHJvX3JlZ2lzdGVyKHUzMiByZWcpCj4gICB7Cj4gLQlpZiAocmVn ICYgUklOR19GT1JDRV9UT19OT05QUklWX1JEKQo+ICsJaWYgKChyZWcgJiBSSU5HX0ZPUkNFX1RP X05PTlBSSVZfQUNDRVNTX01BU0spID09Cj4gKwkgICAgIFJJTkdfRk9SQ0VfVE9fTk9OUFJJVl9B Q0NFU1NfUkQpCj4gICAJCXJldHVybiB0cnVlOwo+ICAgCj4gICAJcmV0dXJuIGZhbHNlOwo+IEBA IC00ODIsMTIgKzQ4NywxMiBAQCBzdGF0aWMgaW50IGNoZWNrX2RpcnR5X3doaXRlbGlzdChzdHJ1 Y3QgaTkxNV9nZW1fY29udGV4dCAqY3R4LAo+ICAgCQl1MzIgc3JtLCBscm0sIHJzdmQ7Cj4gICAJ CXUzMiBleHBlY3Q7Cj4gICAJCWludCBpZHg7Cj4gKwkJYm9vbCByb19yZWc7Cj4gICAKPiAgIAkJ aWYgKHdvX3JlZ2lzdGVyKGVuZ2luZSwgcmVnKSkKPiAgIAkJCWNvbnRpbnVlOwo+ICAgCj4gLQkJ aWYgKHJvX3JlZ2lzdGVyKHJlZykpCj4gLQkJCWNvbnRpbnVlOwo+ICsJCXJvX3JlZyA9IHJvX3Jl Z2lzdGVyKHJlZyk7Cj4gICAKPiAgIAkJc3JtID0gTUlfU1RPUkVfUkVHSVNURVJfTUVNOwo+ICAg CQlscm0gPSBNSV9MT0FEX1JFR0lTVEVSX01FTTsKPiBAQCAtNTg4LDI0ICs1OTMsMzYgQEAgc3Rh dGljIGludCBjaGVja19kaXJ0eV93aGl0ZWxpc3Qoc3RydWN0IGk5MTVfZ2VtX2NvbnRleHQgKmN0 eCwKPiAgIAkJfQo+ICAgCj4gICAJCUdFTV9CVUdfT04odmFsdWVzW0FSUkFZX1NJWkUodmFsdWVz KSAtIDFdICE9IDB4ZmZmZmZmZmYpOwo+IC0JCXJzdmQgPSByZXN1bHRzW0FSUkFZX1NJWkUodmFs dWVzKV07IC8qIGRldGVjdCB3cml0ZSBtYXNraW5nICovCj4gLQkJaWYgKCFyc3ZkKSB7Cj4gLQkJ CXByX2VycigiJXM6IFVuYWJsZSB0byB3cml0ZSB0byB3aGl0ZWxpc3RlZCByZWdpc3RlciAleFxu IiwKPiAtCQkJICAgICAgIGVuZ2luZS0+bmFtZSwgcmVnKTsKPiAtCQkJZXJyID0gLUVJTlZBTDsK PiAtCQkJZ290byBvdXRfdW5waW47Cj4gKwkJaWYgKHJvX3JlZykgewo+ICsJCQlyc3ZkID0gMHhG RkZGRkZGRjsKPiArCQl9IGVsc2Ugewo+ICsJCQlyc3ZkID0gcmVzdWx0c1tBUlJBWV9TSVpFKHZh bHVlcyldOyAvKiBkZXRlY3Qgd3JpdGUgbWFza2luZyAqLwo+ICsJCQlpZiAoIXJzdmQpIHsKPiAr CQkJCXByX2VycigiJXM6IFVuYWJsZSB0byB3cml0ZSB0byB3aGl0ZWxpc3RlZCByZWdpc3RlciAl eFxuIiwKPiArCQkJCSAgICAgICBlbmdpbmUtPm5hbWUsIHJlZyk7Cj4gKwkJCQllcnIgPSAtRUlO VkFMOwo+ICsJCQkJZ290byBvdXRfdW5waW47Cj4gKwkJCX0KPiAgIAkJfQo+ICAgCj4gICAJCWV4 cGVjdCA9IHJlc3VsdHNbMF07Cj4gICAJCWlkeCA9IDE7Cj4gICAJCWZvciAodiA9IDA7IHYgPCBB UlJBWV9TSVpFKHZhbHVlcyk7IHYrKykgewo+IC0JCQlleHBlY3QgPSByZWdfd3JpdGUoZXhwZWN0 LCB2YWx1ZXNbdl0sIHJzdmQpOwo+ICsJCQlpZiAocm9fcmVnKQo+ICsJCQkJZXhwZWN0ID0gcmVz dWx0c1swXTsKPiArCQkJZWxzZQo+ICsJCQkJZXhwZWN0ID0gcmVnX3dyaXRlKGV4cGVjdCwgdmFs dWVzW3ZdLCByc3ZkKTsKPiArCj4gICAJCQlpZiAocmVzdWx0c1tpZHhdICE9IGV4cGVjdCkKPiAg IAkJCQllcnIrKzsKPiAgIAkJCWlkeCsrOwo+ICAgCQl9Cj4gICAJCWZvciAodiA9IDA7IHYgPCBB UlJBWV9TSVpFKHZhbHVlcyk7IHYrKykgewo+IC0JCQlleHBlY3QgPSByZWdfd3JpdGUoZXhwZWN0 LCB+dmFsdWVzW3ZdLCByc3ZkKTsKPiArCQkJaWYgKHJvX3JlZykKPiArCQkJCWV4cGVjdCA9IHJl c3VsdHNbMF07Cj4gKwkJCWVsc2UKPiArCQkJCWV4cGVjdCA9IHJlZ193cml0ZShleHBlY3QsIH52 YWx1ZXNbdl0sIHJzdmQpOwo+ICsKPiAgIAkJCWlmIChyZXN1bHRzW2lkeF0gIT0gZXhwZWN0KQo+ ICAgCQkJCWVycisrOwo+ICAgCQkJaWR4Kys7Cj4gQEAgLTYyMiw3ICs2MzksMTAgQEAgc3RhdGlj IGludCBjaGVja19kaXJ0eV93aGl0ZWxpc3Qoc3RydWN0IGk5MTVfZ2VtX2NvbnRleHQgKmN0eCwK PiAgIAkJCWZvciAodiA9IDA7IHYgPCBBUlJBWV9TSVpFKHZhbHVlcyk7IHYrKykgewo+ICAgCQkJ CXUzMiB3ID0gdmFsdWVzW3ZdOwo+ICAgCj4gLQkJCQlleHBlY3QgPSByZWdfd3JpdGUoZXhwZWN0 LCB3LCByc3ZkKTsKPiArCQkJCWlmIChyb19yZWcpCj4gKwkJCQkJZXhwZWN0ID0gcmVzdWx0c1sw XTsKPiArCQkJCWVsc2UKPiArCQkJCQlleHBlY3QgPSByZWdfd3JpdGUoZXhwZWN0LCB3LCByc3Zk KTsKPiAgIAkJCQlwcl9pbmZvKCJXcm90ZSAlMDh4LCByZWFkICUwOHgsIGV4cGVjdCAlMDh4XG4i LAo+ICAgCQkJCQl3LCByZXN1bHRzW2lkeF0sIGV4cGVjdCk7Cj4gICAJCQkJaWR4Kys7Cj4gQEAg LTYzMCw3ICs2NTAsMTAgQEAgc3RhdGljIGludCBjaGVja19kaXJ0eV93aGl0ZWxpc3Qoc3RydWN0 IGk5MTVfZ2VtX2NvbnRleHQgKmN0eCwKPiAgIAkJCWZvciAodiA9IDA7IHYgPCBBUlJBWV9TSVpF KHZhbHVlcyk7IHYrKykgewo+ICAgCQkJCXUzMiB3ID0gfnZhbHVlc1t2XTsKPiAgIAo+IC0JCQkJ ZXhwZWN0ID0gcmVnX3dyaXRlKGV4cGVjdCwgdywgcnN2ZCk7Cj4gKwkJCQlpZiAocm9fcmVnKQo+ ICsJCQkJCWV4cGVjdCA9IHJlc3VsdHNbMF07Cj4gKwkJCQllbHNlCj4gKwkJCQkJZXhwZWN0ID0g cmVnX3dyaXRlKGV4cGVjdCwgdywgcnN2ZCk7Cj4gICAJCQkJcHJfaW5mbygiV3JvdGUgJTA4eCwg cmVhZCAlMDh4LCBleHBlY3QgJTA4eFxuIiwKPiAgIAkJCQkJdywgcmVzdWx0c1tpZHhdLCBleHBl Y3QpOwo+ICAgCQkJCWlkeCsrOwo+IEBAIC03NjIsOCArNzg1LDggQEAgc3RhdGljIGludCByZWFk X3doaXRlbGlzdGVkX3JlZ2lzdGVycyhzdHJ1Y3QgaTkxNV9nZW1fY29udGV4dCAqY3R4LAo+ICAg CQl1NjQgb2Zmc2V0ID0gcmVzdWx0cy0+bm9kZS5zdGFydCArIHNpemVvZih1MzIpICogaTsKPiAg IAkJdTMyIHJlZyA9IGk5MTVfbW1pb19yZWdfb2Zmc2V0KGVuZ2luZS0+d2hpdGVsaXN0Lmxpc3Rb aV0ucmVnKTsKPiAgIAo+IC0JCS8qIENsZWFyIFJEIG9ubHkgYW5kIFdSIG9ubHkgZmxhZ3MgKi8K PiAtCQlyZWcgJj0gfihSSU5HX0ZPUkNFX1RPX05PTlBSSVZfUkQgfCBSSU5HX0ZPUkNFX1RPX05P TlBSSVZfV1IpOwo+ICsJCS8qIENsZWFyIGFjY2VzcyBwZXJtaXNzaW9uIGZpZWxkICovCj4gKwkJ cmVnICY9IH5SSU5HX0ZPUkNFX1RPX05PTlBSSVZfQUNDRVNTX01BU0s7Cj4gICAKPiAgIAkJKmNz KysgPSBzcm07Cj4gICAJCSpjcysrID0gcmVnOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X3JlZy5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaAo+IGlu ZGV4IGNjMjk1YTRmNmU5Mi4uYmEyMmUzYjhmNzdlIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfcmVnLmgKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3Jl Zy5oCj4gQEAgLTI1MTMsMTMgKzI1MTMsMTYgQEAgZW51bSBpOTE1X3Bvd2VyX3dlbGxfaWQgewo+ ICAgI2RlZmluZSAgIFJJTkdfV0FJVF9TRU1BUEhPUkUJKDEgPDwgMTApIC8qIGdlbjYrICovCj4g ICAKPiAgICNkZWZpbmUgUklOR19GT1JDRV9UT19OT05QUklWKGJhc2UsIGkpIF9NTUlPKCgoYmFz ZSkgKyAweDREMCkgKyAoaSkgKiA0KQo+IC0jZGVmaW5lICAgUklOR19GT1JDRV9UT19OT05QUklW X1JXCQkoMCA8PCAyOCkgICAgLyogQ0ZMKyAmIEdlbjExKyAqLwo+IC0jZGVmaW5lICAgUklOR19G T1JDRV9UT19OT05QUklWX1JECQkoMSA8PCAyOCkKPiAtI2RlZmluZSAgIFJJTkdfRk9SQ0VfVE9f Tk9OUFJJVl9XUgkJKDIgPDwgMjgpCj4gKyNkZWZpbmUgICBSSU5HX0ZPUkNFX1RPX05PTlBSSVZf QUNDRVNTX1JXCSgwIDw8IDI4KSAgICAvKiBDRkwrICYgR2VuMTErICovCj4gKyNkZWZpbmUgICBS SU5HX0ZPUkNFX1RPX05PTlBSSVZfQUNDRVNTX1JECSgxIDw8IDI4KQo+ICsjZGVmaW5lICAgUklO R19GT1JDRV9UT19OT05QUklWX0FDQ0VTU19XUgkoMiA8PCAyOCkKPiArI2RlZmluZSAgIFJJTkdf Rk9SQ0VfVE9fTk9OUFJJVl9BQ0NFU1NfSU5WQUxJRAkoMyA8PCAyOCkKPiArI2RlZmluZSAgIFJJ TkdfRk9SQ0VfVE9fTk9OUFJJVl9BQ0NFU1NfTUFTSwkoMyA8PCAyOCkKPiAgICNkZWZpbmUgICBS SU5HX0ZPUkNFX1RPX05PTlBSSVZfUkFOR0VfMQkJKDAgPDwgMCkgICAgIC8qIENGTCsgJiBHZW4x MSsgKi8KPiAgICNkZWZpbmUgICBSSU5HX0ZPUkNFX1RPX05PTlBSSVZfUkFOR0VfNAkJKDEgPDwg MCkKPiAgICNkZWZpbmUgICBSSU5HX0ZPUkNFX1RPX05PTlBSSVZfUkFOR0VfMTYJKDIgPDwgMCkK PiAgICNkZWZpbmUgICBSSU5HX0ZPUkNFX1RPX05PTlBSSVZfUkFOR0VfNjQJKDMgPDwgMCkKPiAr I2RlZmluZSAgIFJJTkdfRk9SQ0VfVE9fTk9OUFJJVl9SQU5HRV9NQVNLCSgzIDw8IDApCj4gICAj ZGVmaW5lICAgUklOR19NQVhfTk9OUFJJVl9TTE9UUyAgMTIKPiAgIAo+ICAgI2RlZmluZSBHRU43 X1RMQl9SRF9BRERSCV9NTUlPKDB4NDcwMCkKPiAKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlz dHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4v bGlzdGluZm8vaW50ZWwtZ2Z4