From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH 3/2] drm/i915: Rename hw state checker to hw state verifier. Date: Wed, 30 Mar 2016 13:26:34 +0200 Message-ID: <20160330112634.GF2510@phenom.ffwll.local> References: <1458741487-23801-1-git-send-email-maarten.lankhorst@linux.intel.com> <20160325165930.GL20526@intel.com> <56FB8785.8020506@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wm0-x244.google.com (mail-wm0-x244.google.com [IPv6:2a00:1450:400c:c09::244]) by gabe.freedesktop.org (Postfix) with ESMTPS id 2AF1D6E7A6 for ; Wed, 30 Mar 2016 11:26:32 +0000 (UTC) Received: by mail-wm0-x244.google.com with SMTP id p65so13749303wmp.1 for ; Wed, 30 Mar 2016 04:26:32 -0700 (PDT) Content-Disposition: inline In-Reply-To: <56FB8785.8020506@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Maarten Lankhorst Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gV2VkLCBNYXIgMzAsIDIwMTYgYXQgMTA6MDA6MDVBTSArMDIwMCwgTWFhcnRlbiBMYW5raG9y c3Qgd3JvdGU6Cj4gQ2hlY2sgZnVuY3Rpb25zIGFyZSB1c2VkIGJ5IGF0b21pYyB0byBzZWUgaWYg dGhlIG5ldyBzdGF0ZSB3aWxsCj4gYmUgYWxsb3dlZC4gVGhlcmUncyBhbHNvIGEgaHcgc3RhdGUg Y2hlY2tlciB3aGljaCBjaGVja3MgYWZ0ZXJ3YXJkcwo+IHRoYXQgdGhlIGNvbW1pdHRlZCBzdGF0 ZSBpcyBjb3JyZWN0LiBSZW5hbWUgaXQgdG8gaHcgc3RhdGUgdmVyaWZpZXIKPiB0byByZWR1Y2Ug c29tZSBjb25mdXNpb24uCj4gCj4gU3VnZ2VzdGVkLWJ5OiBNYXR0IFJvcGVyIDxtYXR0aGV3LmQu cm9wZXJAaW50ZWwuY29tPgo+IFNpZ25lZC1vZmYtYnk6IE1hYXJ0ZW4gTGFua2hvcnN0IDxtYWFy dGVuLmxhbmtob3JzdEBsaW51eC5pbnRlbC5jb20+CgpHcmVhdCBpZGVhIQoKQWNrZWQtYnk6IERh bmllbCBWZXR0ZXIgPGRhbmllbC52ZXR0ZXJAZmZ3bGwuY2g+Cj4gLS0tCj4gIGRyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyB8IDYwICsrKysrKysrKysrKysrKysrKy0tLS0tLS0t LS0tLS0tLS0tLQo+ICAxIGZpbGUgY2hhbmdlZCwgMzAgaW5zZXJ0aW9ucygrKSwgMzAgZGVsZXRp b25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3Bs YXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwo+IGluZGV4IDllNjM3 MjA0MjhmYy4uOGI0MjNjZGQ1Mjk1IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2Rpc3BsYXkuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3Bs YXkuYwo+IEBAIC02MjgzLDcgKzYyODMsNyBAQCB2b2lkIGludGVsX2VuY29kZXJfZGVzdHJveShz dHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29kZXIpCj4gIAo+ICAvKiBDcm9zcyBjaGVjayB0aGUgYWN0 dWFsIGh3IHN0YXRlIHdpdGggb3VyIG93biBtb2Rlc2V0IHN0YXRlIHRyYWNraW5nIChhbmQgaXQn cwo+ICAgKiBpbnRlcm5hbCBjb25zaXN0ZW5jeSkuICovCj4gLXN0YXRpYyB2b2lkIGludGVsX2Nv bm5lY3Rvcl9jaGVja19zdGF0ZShzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICpjb25uZWN0b3IpCj4g K3N0YXRpYyB2b2lkIGludGVsX2Nvbm5lY3Rvcl92ZXJpZnlfc3RhdGUoc3RydWN0IGludGVsX2Nv bm5lY3RvciAqY29ubmVjdG9yKQo+ICB7Cj4gIAlzdHJ1Y3QgZHJtX2NydGMgKmNydGMgPSBjb25u ZWN0b3ItPmJhc2Uuc3RhdGUtPmNydGM7Cj4gIAo+IEBAIC0xMjc1Miw4ICsxMjc1Miw4IEBAIHN0 YXRpYyB2b2lkIGludGVsX3BpcGVfY29uZmlnX3Nhbml0eV9jaGVjayhzdHJ1Y3QgZHJtX2k5MTVf cHJpdmF0ZSAqZGV2X3ByaXYsCj4gIAl9Cj4gIH0KPiAgCj4gLXN0YXRpYyB2b2lkIGNoZWNrX3dt X3N0YXRlKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKPiAtCQkJICAgc3RydWN0IGRybV9jcnRjX3N0 YXRlICpuZXdfc3RhdGUpCj4gK3N0YXRpYyB2b2lkIHZlcmlmeV93bV9zdGF0ZShzdHJ1Y3QgZHJt X2NydGMgKmNydGMsCj4gKwkJCSAgICBzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKm5ld19zdGF0ZSkK PiAgewo+ICAJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IGNydGMtPmRldjsKPiAgCXN0cnVjdCBk cm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IGRldi0+ZGV2X3ByaXZhdGU7Cj4gQEAgLTEyNzk4 LDcgKzEyNzk4LDcgQEAgc3RhdGljIHZvaWQgY2hlY2tfd21fc3RhdGUoc3RydWN0IGRybV9jcnRj ICpjcnRjLAo+ICB9Cj4gIAo+ICBzdGF0aWMgdm9pZAo+IC1jaGVja19jb25uZWN0b3Jfc3RhdGUo c3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3RydWN0IGRybV9jcnRjICpjcnRjKQo+ICt2ZXJpZnlf Y29ubmVjdG9yX3N0YXRlKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHN0cnVjdCBkcm1fY3J0YyAq Y3J0YykKPiAgewo+ICAJc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvcjsKPiAgCj4gQEAg LTEyODA5LDcgKzEyODA5LDcgQEAgY2hlY2tfY29ubmVjdG9yX3N0YXRlKHN0cnVjdCBkcm1fZGV2 aWNlICpkZXYsIHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKPiAgCQlpZiAoc3RhdGUtPmNydGMgIT0g Y3J0YykKPiAgCQkJY29udGludWU7Cj4gIAo+IC0JCWludGVsX2Nvbm5lY3Rvcl9jaGVja19zdGF0 ZSh0b19pbnRlbF9jb25uZWN0b3IoY29ubmVjdG9yKSk7Cj4gKwkJaW50ZWxfY29ubmVjdG9yX3Zl cmlmeV9zdGF0ZSh0b19pbnRlbF9jb25uZWN0b3IoY29ubmVjdG9yKSk7Cj4gIAo+ICAJCUk5MTVf U1RBVEVfV0FSTihzdGF0ZS0+YmVzdF9lbmNvZGVyICE9IGVuY29kZXIsCj4gIAkJICAgICAiY29u bmVjdG9yJ3MgYXRvbWljIGVuY29kZXIgZG9lc24ndCBtYXRjaCBsZWdhY3kgZW5jb2RlclxuIik7 Cj4gQEAgLTEyODE3LDcgKzEyODE3LDcgQEAgY2hlY2tfY29ubmVjdG9yX3N0YXRlKHN0cnVjdCBk cm1fZGV2aWNlICpkZXYsIHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKPiAgfQo+ICAKPiAgc3RhdGlj IHZvaWQKPiAtY2hlY2tfZW5jb2Rlcl9zdGF0ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ICt2 ZXJpZnlfZW5jb2Rlcl9zdGF0ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ICB7Cj4gIAlzdHJ1 Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlcjsKPiAgCXN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNv bm5lY3RvcjsKPiBAQCAtMTI4NTcsOSArMTI4NTcsOSBAQCBjaGVja19lbmNvZGVyX3N0YXRlKHN0 cnVjdCBkcm1fZGV2aWNlICpkZXYpCj4gIH0KPiAgCj4gIHN0YXRpYyB2b2lkCj4gLWNoZWNrX2Ny dGNfc3RhdGUoc3RydWN0IGRybV9jcnRjICpjcnRjLAo+IC0JCSBzdHJ1Y3QgZHJtX2NydGNfc3Rh dGUgKm9sZF9jcnRjX3N0YXRlLAo+IC0JCSBzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKm5ld19jcnRj X3N0YXRlKQo+ICt2ZXJpZnlfY3J0Y19zdGF0ZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCj4gKwkJ ICBzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKm9sZF9jcnRjX3N0YXRlLAo+ICsJCSAgc3RydWN0IGRy bV9jcnRjX3N0YXRlICpuZXdfY3J0Y19zdGF0ZSkKPiAgewo+ICAJc3RydWN0IGRybV9kZXZpY2Ug KmRldiA9IGNydGMtPmRldjsKPiAgCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9 IGRldi0+ZGV2X3ByaXZhdGU7Cj4gQEAgLTEyOTI2LDEwICsxMjkyNiwxMCBAQCBjaGVja19jcnRj X3N0YXRlKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKPiAgfQo+ICAKPiAgc3RhdGljIHZvaWQKPiAt Y2hlY2tfc2luZ2xlX2RwbGxfc3RhdGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2 LAo+IC0JCQlzdHJ1Y3QgaW50ZWxfc2hhcmVkX2RwbGwgKnBsbCwKPiAtCQkJc3RydWN0IGRybV9j cnRjICpjcnRjLAo+IC0JCQlzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKm5ld19zdGF0ZSkKPiArdmVy aWZ5X3NpbmdsZV9kcGxsX3N0YXRlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwK PiArCQkJIHN0cnVjdCBpbnRlbF9zaGFyZWRfZHBsbCAqcGxsLAo+ICsJCQkgc3RydWN0IGRybV9j cnRjICpjcnRjLAo+ICsJCQkgc3RydWN0IGRybV9jcnRjX3N0YXRlICpuZXdfc3RhdGUpCj4gIHsK PiAgCXN0cnVjdCBpbnRlbF9kcGxsX2h3X3N0YXRlIGRwbGxfaHdfc3RhdGU7Cj4gIAl1bnNpZ25l ZCBjcnRjX21hc2s7Cj4gQEAgLTEyOTgxLDE2ICsxMjk4MSwxNiBAQCBjaGVja19zaW5nbGVfZHBs bF9zdGF0ZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCj4gIH0KPiAgCj4gIHN0 YXRpYyB2b2lkCj4gLWNoZWNrX3NoYXJlZF9kcGxsX3N0YXRlKHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYsIHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKPiAtCQkJc3RydWN0IGRybV9jcnRjX3N0YXRlICpv bGRfY3J0Y19zdGF0ZSwKPiAtCQkJc3RydWN0IGRybV9jcnRjX3N0YXRlICpuZXdfY3J0Y19zdGF0 ZSkKPiArdmVyaWZ5X3NoYXJlZF9kcGxsX3N0YXRlKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHN0 cnVjdCBkcm1fY3J0YyAqY3J0YywKPiArCQkJIHN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqb2xkX2Ny dGNfc3RhdGUsCj4gKwkJCSBzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKm5ld19jcnRjX3N0YXRlKQo+ ICB7Cj4gIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2 YXRlOwo+ICAJc3RydWN0IGludGVsX2NydGNfc3RhdGUgKm9sZF9zdGF0ZSA9IHRvX2ludGVsX2Ny dGNfc3RhdGUob2xkX2NydGNfc3RhdGUpOwo+ICAJc3RydWN0IGludGVsX2NydGNfc3RhdGUgKm5l d19zdGF0ZSA9IHRvX2ludGVsX2NydGNfc3RhdGUobmV3X2NydGNfc3RhdGUpOwo+ICAKPiAgCWlm IChuZXdfc3RhdGUtPnNoYXJlZF9kcGxsKQo+IC0JCWNoZWNrX3NpbmdsZV9kcGxsX3N0YXRlKGRl dl9wcml2LCBuZXdfc3RhdGUtPnNoYXJlZF9kcGxsLCBjcnRjLCBuZXdfY3J0Y19zdGF0ZSk7Cj4g KwkJdmVyaWZ5X3NpbmdsZV9kcGxsX3N0YXRlKGRldl9wcml2LCBuZXdfc3RhdGUtPnNoYXJlZF9k cGxsLCBjcnRjLCBuZXdfY3J0Y19zdGF0ZSk7Cj4gIAo+ICAJaWYgKG9sZF9zdGF0ZS0+c2hhcmVk X2RwbGwgJiYKPiAgCSAgICBvbGRfc3RhdGUtPnNoYXJlZF9kcGxsICE9IG5ld19zdGF0ZS0+c2hh cmVkX2RwbGwpIHsKPiBAQCAtMTMwMDcsNyArMTMwMDcsNyBAQCBjaGVja19zaGFyZWRfZHBsbF9z dGF0ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCj4gIH0K PiAgCj4gIHN0YXRpYyB2b2lkCj4gLWludGVsX21vZGVzZXRfY2hlY2tfY3J0YyhzdHJ1Y3QgZHJt X2NydGMgKmNydGMsCj4gK2ludGVsX21vZGVzZXRfdmVyaWZ5X2NydGMoc3RydWN0IGRybV9jcnRj ICpjcnRjLAo+ICAJCQkgc3RydWN0IGRybV9jcnRjX3N0YXRlICpvbGRfc3RhdGUsCj4gIAkJCSBz dHJ1Y3QgZHJtX2NydGNfc3RhdGUgKm5ld19zdGF0ZSkKPiAgewo+IEBAIC0xMzAxNSwyOCArMTMw MTUsMjggQEAgaW50ZWxfbW9kZXNldF9jaGVja19jcnRjKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywK PiAgCSAgICAhdG9faW50ZWxfY3J0Y19zdGF0ZShuZXdfc3RhdGUpLT51cGRhdGVfcGlwZSkKPiAg CQlyZXR1cm47Cj4gIAo+IC0JY2hlY2tfd21fc3RhdGUoY3J0YywgbmV3X3N0YXRlKTsKPiAtCWNo ZWNrX2Nvbm5lY3Rvcl9zdGF0ZShjcnRjLT5kZXYsIGNydGMpOwo+IC0JY2hlY2tfY3J0Y19zdGF0 ZShjcnRjLCBvbGRfc3RhdGUsIG5ld19zdGF0ZSk7Cj4gLQljaGVja19zaGFyZWRfZHBsbF9zdGF0 ZShjcnRjLT5kZXYsIGNydGMsIG9sZF9zdGF0ZSwgbmV3X3N0YXRlKTsKPiArCXZlcmlmeV93bV9z dGF0ZShjcnRjLCBuZXdfc3RhdGUpOwo+ICsJdmVyaWZ5X2Nvbm5lY3Rvcl9zdGF0ZShjcnRjLT5k ZXYsIGNydGMpOwo+ICsJdmVyaWZ5X2NydGNfc3RhdGUoY3J0Yywgb2xkX3N0YXRlLCBuZXdfc3Rh dGUpOwo+ICsJdmVyaWZ5X3NoYXJlZF9kcGxsX3N0YXRlKGNydGMtPmRldiwgY3J0Yywgb2xkX3N0 YXRlLCBuZXdfc3RhdGUpOwo+ICB9Cj4gIAo+ICBzdGF0aWMgdm9pZAo+IC1jaGVja19kaXNhYmxl ZF9kcGxsX3N0YXRlKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCj4gK3ZlcmlmeV9kaXNhYmxlZF9k cGxsX3N0YXRlKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCj4gIHsKPiAgCXN0cnVjdCBkcm1faTkx NV9wcml2YXRlICpkZXZfcHJpdiA9IGRldi0+ZGV2X3ByaXZhdGU7Cj4gIAlpbnQgaTsKPiAgCj4g IAlmb3IgKGkgPSAwOyBpIDwgZGV2X3ByaXYtPm51bV9zaGFyZWRfZHBsbDsgaSsrKQo+IC0JCWNo ZWNrX3NpbmdsZV9kcGxsX3N0YXRlKGRldl9wcml2LCAmZGV2X3ByaXYtPnNoYXJlZF9kcGxsc1tp XSwgTlVMTCwgTlVMTCk7Cj4gKwkJdmVyaWZ5X3NpbmdsZV9kcGxsX3N0YXRlKGRldl9wcml2LCAm ZGV2X3ByaXYtPnNoYXJlZF9kcGxsc1tpXSwgTlVMTCwgTlVMTCk7Cj4gIH0KPiAgCj4gIHN0YXRp YyB2b2lkCj4gLWludGVsX21vZGVzZXRfY2hlY2tfZGlzYWJsZWQoc3RydWN0IGRybV9kZXZpY2Ug KmRldikKPiAraW50ZWxfbW9kZXNldF92ZXJpZnlfZGlzYWJsZWQoc3RydWN0IGRybV9kZXZpY2Ug KmRldikKPiAgewo+IC0JY2hlY2tfZW5jb2Rlcl9zdGF0ZShkZXYpOwo+IC0JY2hlY2tfY29ubmVj dG9yX3N0YXRlKGRldiwgTlVMTCk7Cj4gLQljaGVja19kaXNhYmxlZF9kcGxsX3N0YXRlKGRldik7 Cj4gKwl2ZXJpZnlfZW5jb2Rlcl9zdGF0ZShkZXYpOwo+ICsJdmVyaWZ5X2Nvbm5lY3Rvcl9zdGF0 ZShkZXYsIE5VTEwpOwo+ICsJdmVyaWZ5X2Rpc2FibGVkX2RwbGxfc3RhdGUoZGV2KTsKPiAgfQo+ ICAKPiAgc3RhdGljIHZvaWQgdXBkYXRlX3NjYW5saW5lX29mZnNldChzdHJ1Y3QgaW50ZWxfY3J0 YyAqY3J0YykKPiBAQCAtMTM2MDcsNyArMTM2MDcsNyBAQCBzdGF0aWMgaW50IGludGVsX2F0b21p Y19jb21taXQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKPiAgCQkgICAgaW50ZWxfc3RhdGUtPmRl dl9jZGNsayAhPSBkZXZfcHJpdi0+Y2RjbGtfZnJlcSkKPiAgCQkJZGV2X3ByaXYtPmRpc3BsYXku bW9kZXNldF9jb21taXRfY2RjbGsoc3RhdGUpOwo+ICAKPiAtCQlpbnRlbF9tb2Rlc2V0X2NoZWNr X2Rpc2FibGVkKGRldik7Cj4gKwkJaW50ZWxfbW9kZXNldF92ZXJpZnlfZGlzYWJsZWQoZGV2KTsK PiAgCX0KPiAgCj4gIAkvKiBOb3cgZW5hYmxlIHRoZSBjbG9ja3MsIHBsYW5lLCBwaXBlLCBhbmQg Y29ubmVjdG9ycyB0aGF0IHdlIHNldCB1cC4gKi8KPiBAQCAtMTM2NzUsNyArMTM2NzUsNyBAQCBz dGF0aWMgaW50IGludGVsX2F0b21pY19jb21taXQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKPiAg CQlpZiAocHV0X2RvbWFpbnNbaV0pCj4gIAkJCW1vZGVzZXRfcHV0X3Bvd2VyX2RvbWFpbnMoZGV2 X3ByaXYsIHB1dF9kb21haW5zW2ldKTsKPiAgCj4gLQkJaW50ZWxfbW9kZXNldF9jaGVja19jcnRj KGNydGMsIG9sZF9jcnRjX3N0YXRlLCBjcnRjLT5zdGF0ZSk7Cj4gKwkJaW50ZWxfbW9kZXNldF92 ZXJpZnlfY3J0YyhjcnRjLCBvbGRfY3J0Y19zdGF0ZSwgY3J0Yy0+c3RhdGUpOwo+ICAJfQo+ICAK PiAgCWlmIChpbnRlbF9zdGF0ZS0+bW9kZXNldCkKPiAtLSAKPiAyLjEuMAo+IAo+IAo+IF9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4gSW50ZWwtZ2Z4IG1h aWxpbmcgbGlzdAo+IEludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKPiBodHRwczovL2xp c3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAoKLS0gCkRhbmll bCBWZXR0ZXIKU29mdHdhcmUgRW5naW5lZXIsIEludGVsIENvcnBvcmF0aW9uCmh0dHA6Ly9ibG9n LmZmd2xsLmNoCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f CkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpo dHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=