From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mika Kuoppala Subject: Re: [PATCH 64/71] drm/i915/chv: Don't use PCS group access reads Date: Fri, 25 Apr 2014 18:15:39 +0300 Message-ID: <87wqedjv8k.fsf@gaia.fi.intel.com> References: <1397039349-10639-1-git-send-email-ville.syrjala@linux.intel.com> <1397039349-10639-65-git-send-email-ville.syrjala@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga03.intel.com (mga03.intel.com [143.182.124.21]) by gabe.freedesktop.org (Postfix) with ESMTP id 72D6C6E0D9 for ; Fri, 25 Apr 2014 08:16:21 -0700 (PDT) In-Reply-To: <1397039349-10639-65-git-send-email-ville.syrjala@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: ville.syrjala@linux.intel.com, intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org dmlsbGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20gd3JpdGVzOgoKPiBGcm9tOiBWaWxsZSBTeXJq w6Rsw6QgPHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwuY29tPgoKTWlub3IgZm9ybWF0dGluZyBp c3N1ZSBpbiB0aGlzIG9uZSwgbmV3bGluZSBiZWZvcmUgJzsnCkFuZCBuZXh0IG9uZSBpbiBzZXJp ZXMgZml4ZXMgaXQuCgpQYXRjaGVzIDYwIC0gNjQKUmV2aWV3ZWQtYnk6IE1pa2EgS3VvcHBhbGEg PG1pa2Eua3VvcHBhbGFAaW50ZWwuY29tPgoKPiBBbGwgUENTIGdyb3VwcyBhY2Nlc3MgcmVhZHMg cmV0dXJuIDB4ZmZmZmZmZmYsIHNvIHdlIGNhbid0IHVzZSBncm91cAo+IGFjY2VzcyBmb3IgUk1X IGN5Y2xlcy4gSW5zdGVhZCB0YXJnZXQgZWFjaCBzcGxpbmUgc2VwYXJhdGVseS4KPgo+IFNpZ25l ZC1vZmYtYnk6IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20+ Cj4gLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmggICB8IDE0ICsrKysrKysr KysrKysrCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMgICB8IDMyICsrKysrKysr KysrKysrKysrKysrKysrKy0tLS0tLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hk bWkuYyB8IDM0ICsrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0KPiAgMyBmaWxlcyBj aGFuZ2VkLCA2MyBpbnNlcnRpb25zKCspLCAxNyBkZWxldGlvbnMoLSkKPgo+IGRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9yZWcuaAo+IGluZGV4IDQ2MTdmYjMuLmZmZWQwM2UgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfcmVnLmgKPiBAQCAtNjU0LDYgKzY1NCwxMyBAQCBlbnVtIHB1bml0X3Bvd2VyX3dlbGwgewo+ ICAjZGVmaW5lICAgRFBJT19QQ1NfVFhfTEFORTFfUkVTRVQJKDE8PDcpCj4gICNkZWZpbmUgVkxW X1BDU19EVzAoY2gpIF9QT1JUKGNoLCBfVkxWX1BDU19EVzBfQ0gwLCBfVkxWX1BDU19EVzBfQ0gx KQo+ICAKPiArI2RlZmluZSBfVkxWX1BDUzAxX0RXMF9DSDAJCTB4MjAwCj4gKyNkZWZpbmUgX1ZM Vl9QQ1MyM19EVzBfQ0gwCQkweDQwMAo+ICsjZGVmaW5lIF9WTFZfUENTMDFfRFcwX0NIMQkJMHgy NjAwCj4gKyNkZWZpbmUgX1ZMVl9QQ1MyM19EVzBfQ0gxCQkweDI4MDAKPiArI2RlZmluZSBWTFZf UENTMDFfRFcwKGNoKSBfUE9SVChjaCwgX1ZMVl9QQ1MwMV9EVzBfQ0gwLCBfVkxWX1BDUzAxX0RX MF9DSDEpCj4gKyNkZWZpbmUgVkxWX1BDUzIzX0RXMChjaCkgX1BPUlQoY2gsIF9WTFZfUENTMjNf RFcwX0NIMCwgX1ZMVl9QQ1MyM19EVzBfQ0gxKQo+ICsKPiAgI2RlZmluZSBfVkxWX1BDU19EVzFf Q0gwCQkweDgyMDQKPiAgI2RlZmluZSBfVkxWX1BDU19EVzFfQ0gxCQkweDg0MDQKPiAgI2RlZmlu ZSAgIENIVl9QQ1NfUkVRX1NPRlRSRVNFVF9FTgkoMTw8MjMpCj4gQEAgLTY2Myw2ICs2NzAsMTMg QEAgZW51bSBwdW5pdF9wb3dlcl93ZWxsIHsKPiAgI2RlZmluZSAgIERQSU9fUENTX0NMS19TT0ZU X1JFU0VUCSgxPDw1KQo+ICAjZGVmaW5lIFZMVl9QQ1NfRFcxKGNoKSBfUE9SVChjaCwgX1ZMVl9Q Q1NfRFcxX0NIMCwgX1ZMVl9QQ1NfRFcxX0NIMSkKPiAgCj4gKyNkZWZpbmUgX1ZMVl9QQ1MwMV9E VzFfQ0gwCQkweDIwNAo+ICsjZGVmaW5lIF9WTFZfUENTMjNfRFcxX0NIMAkJMHg0MDQKPiArI2Rl ZmluZSBfVkxWX1BDUzAxX0RXMV9DSDEJCTB4MjYwNAo+ICsjZGVmaW5lIF9WTFZfUENTMjNfRFcx X0NIMQkJMHgyODA0Cj4gKyNkZWZpbmUgVkxWX1BDUzAxX0RXMShjaCkgX1BPUlQoY2gsIF9WTFZf UENTMDFfRFcxX0NIMCwgX1ZMVl9QQ1MwMV9EVzFfQ0gxKQo+ICsjZGVmaW5lIFZMVl9QQ1MyM19E VzEoY2gpIF9QT1JUKGNoLCBfVkxWX1BDUzIzX0RXMV9DSDAsIF9WTFZfUENTMjNfRFcxX0NIMSkK PiArCj4gICNkZWZpbmUgX1ZMVl9QQ1NfRFc4X0NIMAkJMHg4MjIwCj4gICNkZWZpbmUgX1ZMVl9Q Q1NfRFc4X0NIMQkJMHg4NDIwCj4gICNkZWZpbmUgVkxWX1BDU19EVzgoY2gpIF9QT1JUKGNoLCBf VkxWX1BDU19EVzhfQ0gwLCBfVkxWX1BDU19EVzhfQ0gxKQo+IGRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHAu Ywo+IGluZGV4IDA3OWUwZTMuLmNjN2JjY2QzIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2RwLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5j Cj4gQEAgLTE4NDUsMTMgKzE4NDUsMjEgQEAgc3RhdGljIHZvaWQgY2h2X3Bvc3RfZGlzYWJsZV9k cChzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlcikKPiAgCW11dGV4X2xvY2soJmRldl9wcml2 LT5kcGlvX2xvY2spOwo+ICAKPiAgCS8qIFByb3BhZ2F0ZSBzb2Z0IHJlc2V0IHRvIGRhdGEgbGFu ZSByZXNldCAqLwo+IC0JdmFsID0gdmx2X2RwaW9fcmVhZChkZXZfcHJpdiwgcGlwZSwgVkxWX1BD U19EVzEoY2gpKTsKPiArCXZhbCA9IHZsdl9kcGlvX3JlYWQoZGV2X3ByaXYsIHBpcGUsIFZMVl9Q Q1MwMV9EVzEoY2gpKTsKPiAgCXZhbCB8PSBDSFZfUENTX1JFUV9TT0ZUUkVTRVRfRU47Cj4gLQl2 bHZfZHBpb193cml0ZShkZXZfcHJpdiwgcGlwZSwgVkxWX1BDU19EVzEoY2gpLCB2YWwpOwo+ICsJ dmx2X2RwaW9fd3JpdGUoZGV2X3ByaXYsIHBpcGUsIFZMVl9QQ1MwMV9EVzEoY2gpLCB2YWwpOwo+ ICAKPiAtCXZhbCA9IHZsdl9kcGlvX3JlYWQoZGV2X3ByaXYsIHBpcGUsIFZMVl9QQ1NfRFcwKGNo KSk7Cj4gKwl2YWwgPSB2bHZfZHBpb19yZWFkKGRldl9wcml2LCBwaXBlLCBWTFZfUENTMjNfRFcx KGNoKSk7Cj4gKwl2YWwgfD0gQ0hWX1BDU19SRVFfU09GVFJFU0VUX0VOOwo+ICsJdmx2X2RwaW9f d3JpdGUoZGV2X3ByaXYsIHBpcGUsIFZMVl9QQ1MyM19EVzEoY2gpLCB2YWwpOwo+ICsKPiArCXZh bCA9IHZsdl9kcGlvX3JlYWQoZGV2X3ByaXYsIHBpcGUsIFZMVl9QQ1MwMV9EVzAoY2gpKTsKPiAr CXZhbCAmPSB+KERQSU9fUENTX1RYX0xBTkUyX1JFU0VUIHwgRFBJT19QQ1NfVFhfTEFORTFfUkVT RVQpOwo+ICsJdmx2X2RwaW9fd3JpdGUoZGV2X3ByaXYsIHBpcGUsIFZMVl9QQ1MwMV9EVzAoY2gp LCB2YWwpOwo+ICsKPiArCXZhbCA9IHZsdl9kcGlvX3JlYWQoZGV2X3ByaXYsIHBpcGUsIFZMVl9Q Q1MyM19EVzAoY2gpKTsKPiAgCXZhbCAmPSB+KERQSU9fUENTX1RYX0xBTkUyX1JFU0VUIHwgRFBJ T19QQ1NfVFhfTEFORTFfUkVTRVQpOwo+IC0Jdmx2X2RwaW9fd3JpdGUoZGV2X3ByaXYsIHBpcGUs IFZMVl9QQ1NfRFcwKGNoKSwgdmFsKTsKPiArCXZsdl9kcGlvX3dyaXRlKGRldl9wcml2LCBwaXBl LCBWTFZfUENTMjNfRFcwKGNoKSwgdmFsKTsKPiAgCj4gIAltdXRleF91bmxvY2soJmRldl9wcml2 LT5kcGlvX2xvY2spOwo+ICB9Cj4gQEAgLTE5ODMsMTMgKzE5OTEsMjEgQEAgc3RhdGljIHZvaWQg Y2h2X3ByZV9lbmFibGVfZHAoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIpCj4gIAltdXRl eF9sb2NrKCZkZXZfcHJpdi0+ZHBpb19sb2NrKTsKPiAgCj4gIAkvKiBEZWFzc2VydCBzb2Z0IGRh dGEgbGFuZSByZXNldCovCj4gLQl2YWwgPSB2bHZfZHBpb19yZWFkKGRldl9wcml2LCBwaXBlLCBW TFZfUENTX0RXMShjaCkpOwo+ICsJdmFsID0gdmx2X2RwaW9fcmVhZChkZXZfcHJpdiwgcGlwZSwg VkxWX1BDUzAxX0RXMShjaCkpOwo+ICAJdmFsIHw9IENIVl9QQ1NfUkVRX1NPRlRSRVNFVF9FTjsK PiAtCXZsdl9kcGlvX3dyaXRlKGRldl9wcml2LCBwaXBlLCBWTFZfUENTX0RXMShjaCksIHZhbCk7 Cj4gKwl2bHZfZHBpb193cml0ZShkZXZfcHJpdiwgcGlwZSwgVkxWX1BDUzAxX0RXMShjaCksIHZh bCk7Cj4gKwo+ICsJdmFsID0gdmx2X2RwaW9fcmVhZChkZXZfcHJpdiwgcGlwZSwgVkxWX1BDUzIz X0RXMShjaCkpOwo+ICsJdmFsIHw9IENIVl9QQ1NfUkVRX1NPRlRSRVNFVF9FTjsKPiArCXZsdl9k cGlvX3dyaXRlKGRldl9wcml2LCBwaXBlLCBWTFZfUENTMjNfRFcxKGNoKSwgdmFsKTsKPiArCj4g Kwl2YWwgPSB2bHZfZHBpb19yZWFkKGRldl9wcml2LCBwaXBlLCBWTFZfUENTMDFfRFcwKGNoKSk7 Cj4gKwl2YWwgfD0gKERQSU9fUENTX1RYX0xBTkUyX1JFU0VUIHwgRFBJT19QQ1NfVFhfTEFORTFf UkVTRVQpOwo+ICsJdmx2X2RwaW9fd3JpdGUoZGV2X3ByaXYsIHBpcGUsIFZMVl9QQ1MwMV9EVzAo Y2gpLCB2YWwpOwo+ICAKPiAtCXZhbCA9IHZsdl9kcGlvX3JlYWQoZGV2X3ByaXYsIHBpcGUsIFZM Vl9QQ1NfRFcwKGNoKSk7Cj4gKwl2YWwgPSB2bHZfZHBpb19yZWFkKGRldl9wcml2LCBwaXBlLCBW TFZfUENTMjNfRFcwKGNoKSk7Cj4gIAl2YWwgfD0gKERQSU9fUENTX1RYX0xBTkUyX1JFU0VUIHwg RFBJT19QQ1NfVFhfTEFORTFfUkVTRVQpOwo+IC0Jdmx2X2RwaW9fd3JpdGUoZGV2X3ByaXYsIHBp cGUsIFZMVl9QQ1NfRFcwKGNoKSwgdmFsKTsKPiArCXZsdl9kcGlvX3dyaXRlKGRldl9wcml2LCBw aXBlLCBWTFZfUENTMjNfRFcwKGNoKSwgdmFsKTsKPiAgCj4gIAkvKiBQcm9ncmFtIFR4IGxhbmUg bGF0ZW5jeSBvcHRpbWFsIHNldHRpbmcqLwo+ICAJZm9yIChpID0gMDsgaSA8IDQ7IGkrKykgewo+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZG1pLmMgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9oZG1pLmMKPiBpbmRleCA2YTIxNTJiLi5jMzg5NmIwIDEwMDY0 NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkbWkuYwo+ICsrKyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkbWkuYwo+IEBAIC0xMjE2LDEzICsxMjE2LDIxIEBAIHN0 YXRpYyB2b2lkIGNodl9oZG1pX3Bvc3RfZGlzYWJsZShzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5j b2RlcikKPiAgCW11dGV4X2xvY2soJmRldl9wcml2LT5kcGlvX2xvY2spOwo+ICAKPiAgCS8qIFBy b3BhZ2F0ZSBzb2Z0IHJlc2V0IHRvIGRhdGEgbGFuZSByZXNldCAqLwo+IC0JdmFsID0gdmx2X2Rw aW9fcmVhZChkZXZfcHJpdiwgcGlwZSwgVkxWX1BDU19EVzEoY2gpKTsKPiArCXZhbCA9IHZsdl9k cGlvX3JlYWQoZGV2X3ByaXYsIHBpcGUsIFZMVl9QQ1MwMV9EVzEoY2gpKTsKPiAgCXZhbCB8PSBD SFZfUENTX1JFUV9TT0ZUUkVTRVRfRU47Cj4gLQl2bHZfZHBpb193cml0ZShkZXZfcHJpdiwgcGlw ZSwgVkxWX1BDU19EVzEoY2gpLCB2YWwpCj4gLTsKPiAtCXZhbCA9IHZsdl9kcGlvX3JlYWQoZGV2 X3ByaXYsIHBpcGUsIFZMVl9QQ1NfRFcwKGNoKSk7Cj4gKwl2bHZfZHBpb193cml0ZShkZXZfcHJp diwgcGlwZSwgVkxWX1BDUzAxX0RXMShjaCksIHZhbCk7Cj4gKwo+ICsJdmFsID0gdmx2X2RwaW9f cmVhZChkZXZfcHJpdiwgcGlwZSwgVkxWX1BDUzIzX0RXMShjaCkpOwo+ICsJdmFsIHw9IENIVl9Q Q1NfUkVRX1NPRlRSRVNFVF9FTjsKPiArCXZsdl9kcGlvX3dyaXRlKGRldl9wcml2LCBwaXBlLCBW TFZfUENTMjNfRFcxKGNoKSwgdmFsKTsKPiArCj4gKwl2YWwgPSB2bHZfZHBpb19yZWFkKGRldl9w cml2LCBwaXBlLCBWTFZfUENTMDFfRFcwKGNoKSk7Cj4gKwl2YWwgJj0gfihEUElPX1BDU19UWF9M QU5FMl9SRVNFVCB8IERQSU9fUENTX1RYX0xBTkUxX1JFU0VUKTsKPiArCXZsdl9kcGlvX3dyaXRl KGRldl9wcml2LCBwaXBlLCBWTFZfUENTMDFfRFcwKGNoKSwgdmFsKTsKPiArCj4gKwl2YWwgPSB2 bHZfZHBpb19yZWFkKGRldl9wcml2LCBwaXBlLCBWTFZfUENTMjNfRFcwKGNoKSk7Cj4gIAl2YWwg Jj0gfihEUElPX1BDU19UWF9MQU5FMl9SRVNFVCB8IERQSU9fUENTX1RYX0xBTkUxX1JFU0VUKTsK PiAtCXZsdl9kcGlvX3dyaXRlKGRldl9wcml2LCBwaXBlLCBWTFZfUENTX0RXMChjaCksIHZhbCk7 Cj4gKwl2bHZfZHBpb193cml0ZShkZXZfcHJpdiwgcGlwZSwgVkxWX1BDUzIzX0RXMChjaCksIHZh bCk7Cj4gIAo+ICAJbXV0ZXhfdW5sb2NrKCZkZXZfcHJpdi0+ZHBpb19sb2NrKTsKPiAgfQo+IEBA IC0xMjQyLDEzICsxMjUwLDIxIEBAIHN0YXRpYyB2b2lkIGNodl9oZG1pX3ByZV9lbmFibGUoc3Ry dWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIpCj4gIAltdXRleF9sb2NrKCZkZXZfcHJpdi0+ZHBp b19sb2NrKTsKPiAgCj4gIAkvKiBEZWFzc2VydCBzb2Z0IGRhdGEgbGFuZSByZXNldCovCj4gLQl2 YWwgPSB2bHZfZHBpb19yZWFkKGRldl9wcml2LCBwaXBlLCBWTFZfUENTX0RXMShjaCkpOwo+ICsJ dmFsID0gdmx2X2RwaW9fcmVhZChkZXZfcHJpdiwgcGlwZSwgVkxWX1BDUzAxX0RXMShjaCkpOwo+ ICAJdmFsIHw9IENIVl9QQ1NfUkVRX1NPRlRSRVNFVF9FTjsKPiAtCXZsdl9kcGlvX3dyaXRlKGRl dl9wcml2LCBwaXBlLCBWTFZfUENTX0RXMShjaCksIHZhbCk7Cj4gKwl2bHZfZHBpb193cml0ZShk ZXZfcHJpdiwgcGlwZSwgVkxWX1BDUzAxX0RXMShjaCksIHZhbCk7Cj4gKwo+ICsJdmFsID0gdmx2 X2RwaW9fcmVhZChkZXZfcHJpdiwgcGlwZSwgVkxWX1BDUzIzX0RXMShjaCkpOwo+ICsJdmFsIHw9 IENIVl9QQ1NfUkVRX1NPRlRSRVNFVF9FTjsKPiArCXZsdl9kcGlvX3dyaXRlKGRldl9wcml2LCBw aXBlLCBWTFZfUENTMjNfRFcxKGNoKSwgdmFsKTsKPiArCj4gKwl2YWwgPSB2bHZfZHBpb19yZWFk KGRldl9wcml2LCBwaXBlLCBWTFZfUENTMDFfRFcwKGNoKSk7Cj4gKwl2YWwgfD0gKERQSU9fUENT X1RYX0xBTkUyX1JFU0VUIHwgRFBJT19QQ1NfVFhfTEFORTFfUkVTRVQpOwo+ICsJdmx2X2RwaW9f d3JpdGUoZGV2X3ByaXYsIHBpcGUsIFZMVl9QQ1MwMV9EVzAoY2gpLCB2YWwpOwo+ICAKPiAtCXZh bCA9IHZsdl9kcGlvX3JlYWQoZGV2X3ByaXYsIHBpcGUsIFZMVl9QQ1NfRFcwKGNoKSk7Cj4gKwl2 YWwgPSB2bHZfZHBpb19yZWFkKGRldl9wcml2LCBwaXBlLCBWTFZfUENTMjNfRFcwKGNoKSk7Cj4g IAl2YWwgfD0gKERQSU9fUENTX1RYX0xBTkUyX1JFU0VUIHwgRFBJT19QQ1NfVFhfTEFORTFfUkVT RVQpOwo+IC0Jdmx2X2RwaW9fd3JpdGUoZGV2X3ByaXYsIHBpcGUsIFZMVl9QQ1NfRFcwKGNoKSwg dmFsKTsKPiArCXZsdl9kcGlvX3dyaXRlKGRldl9wcml2LCBwaXBlLCBWTFZfUENTMjNfRFcwKGNo KSwgdmFsKTsKPiAgCj4gIAkvKiBQcm9ncmFtIFR4IGxhdGVuY3kgb3B0aW1hbCBzZXR0aW5nICov Cj4gIAlmb3IgKGkgPSAwOyBpIDwgNDsgaSsrKSB7Cj4gLS0gCj4gMS44LjMuMgo+Cj4gX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KPiBJbnRlbC1nZnggbWFp bGluZyBsaXN0Cj4gSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+IGh0dHA6Ly9saXN0 cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngKX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlz dApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3Rv cC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK