From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH v2 04/43] drm/i915: Parametrize fence registers Date: Mon, 28 Sep 2015 10:31:27 +0200 Message-ID: <20150928083127.GU3383@phenom.ffwll.local> References: <1442595836-23981-5-git-send-email-ville.syrjala@linux.intel.com> <1442847914-26760-1-git-send-email-ville.syrjala@linux.intel.com> <87h9min1uq.fsf@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wi0-f174.google.com (mail-wi0-f174.google.com [209.85.212.174]) by gabe.freedesktop.org (Postfix) with ESMTPS id 8DD376E084 for ; Mon, 28 Sep 2015 01:28:33 -0700 (PDT) Received: by wicge5 with SMTP id ge5so93740172wic.0 for ; Mon, 28 Sep 2015 01:28:32 -0700 (PDT) Content-Disposition: inline In-Reply-To: <87h9min1uq.fsf@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Jani Nikula Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gRnJpLCBTZXAgMjUsIDIwMTUgYXQgMDM6MDI6MzdQTSArMDMwMCwgSmFuaSBOaWt1bGEgd3Jv dGU6Cj4gT24gTW9uLCAyMSBTZXAgMjAxNSwgdmlsbGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20g d3JvdGU6Cj4gPiBGcm9tOiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5cmphbGFAbGludXguaW50 ZWwuY29tPgo+ID4KPiA+IHYyOiBIaWRlIHRoZSA5NDUgdnMuIHJlc3Qgb2YgZ2VuMi8zIGRpZmZl cmVuY2UgaW4gdGhlIG1hY3JvCj4gPgo+ID4gU2lnbmVkLW9mZi1ieTogVmlsbGUgU3lyasOkbMOk IDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KPiA+IC0tLQo+ID4gIGRyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZ2VtX2ZlbmNlLmMgfCA0MSArKysrKysrKysrKysrKystLS0tLS0tLS0t LS0tLS0tLS0tLQo+ID4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ3B1X2Vycm9yLmMgfCAy MSArKysrKysrLS0tLS0tLS0tLS0KPiA+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5o ICAgICAgIHwgMTggKysrKysrKysrKy0tLS0tCj4gPiAgMyBmaWxlcyBjaGFuZ2VkLCAzOSBpbnNl cnRpb25zKCspLCA0MSBkZWxldGlvbnMoLSkKPiA+Cj4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9nZW1fZmVuY2UuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf Z2VtX2ZlbmNlLmMKPiA+IGluZGV4IDYwNzdkZmYuLjFjYmZkNWIgMTAwNjQ0Cj4gPiAtLS0gYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9mZW5jZS5jCj4gPiArKysgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2dlbV9mZW5jZS5jCj4gPiBAQCAtNTksMTkgKzU5LDE5IEBAIHN0YXRp YyB2b2lkIGk5NjVfd3JpdGVfZmVuY2VfcmVnKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIGludCBy ZWcsCj4gPiAgCQkJCSBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqKQo+ID4gIHsKPiA+ ICAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gZGV2LT5kZXZfcHJpdmF0ZTsK PiA+IC0JaW50IGZlbmNlX3JlZzsKPiA+ICsJaW50IGZlbmNlX3JlZ19sbywgZmVuY2VfcmVnX2hp Owo+ID4gIAlpbnQgZmVuY2VfcGl0Y2hfc2hpZnQ7Cj4gPiAgCj4gPiAgCWlmIChJTlRFTF9JTkZP KGRldiktPmdlbiA+PSA2KSB7Cj4gPiAtCQlmZW5jZV9yZWcgPSBGRU5DRV9SRUdfU0FORFlCUklE R0VfMDsKPiA+IC0JCWZlbmNlX3BpdGNoX3NoaWZ0ID0gU0FORFlCUklER0VfRkVOQ0VfUElUQ0hf U0hJRlQ7Cj4gPiArCQlmZW5jZV9yZWdfbG8gPSBGRU5DRV9SRUdfR0VONl9MTyhyZWcpOwo+ID4g KwkJZmVuY2VfcmVnX2hpID0gRkVOQ0VfUkVHX0dFTjZfSEkocmVnKTsKPiA+ICsJCWZlbmNlX3Bp dGNoX3NoaWZ0ID0gR0VONl9GRU5DRV9QSVRDSF9TSElGVDsKPiA+ICAJfSBlbHNlIHsKPiA+IC0J CWZlbmNlX3JlZyA9IEZFTkNFX1JFR185NjVfMDsKPiA+ICsJCWZlbmNlX3JlZ19sbyA9IEZFTkNF X1JFR185NjVfTE8ocmVnKTsKPiA+ICsJCWZlbmNlX3JlZ19oaSA9IEZFTkNFX1JFR185NjVfSEko cmVnKTsKPiA+ICAJCWZlbmNlX3BpdGNoX3NoaWZ0ID0gSTk2NV9GRU5DRV9QSVRDSF9TSElGVDsK PiA+ICAJfQo+ID4gIAo+ID4gLQlmZW5jZV9yZWcgKz0gcmVnICogODsKPiA+IC0KPiA+ICAJLyog VG8gdy9hIGluY29oZXJlbmN5IHdpdGggbm9uLWF0b21pYyA2NC1iaXQgcmVnaXN0ZXIgdXBkYXRl cywKPiA+ICAJICogd2Ugc3BsaXQgdGhlIDY0LWJpdCB1cGRhdGUgaW50byB0d28gMzItYml0IHdy aXRlcy4gSW4gb3JkZXIKPiA+ICAJICogZm9yIGEgcGFydGlhbCBmZW5jZSBub3QgdG8gYmUgZXZh bHVhdGVkIGJldHdlZW4gd3JpdGVzLCB3ZQo+ID4gQEAgLTgxLDggKzgxLDggQEAgc3RhdGljIHZv aWQgaTk2NV93cml0ZV9mZW5jZV9yZWcoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgaW50IHJlZywK PiA+ICAJICogRm9yIGV4dHJhIGxldmVscyBvZiBwYXJhbm9pYSwgd2UgbWFrZSBzdXJlIGVhY2gg c3RlcCBsYW5kcwo+ID4gIAkgKiBiZWZvcmUgYXBwbHlpbmcgdGhlIG5leHQgc3RlcC4KPiA+ICAJ ICovCj4gPiAtCUk5MTVfV1JJVEUoZmVuY2VfcmVnLCAwKTsKPiA+IC0JUE9TVElOR19SRUFEKGZl bmNlX3JlZyk7Cj4gPiArCUk5MTVfV1JJVEUoZmVuY2VfcmVnX2xvLCAwKTsKPiA+ICsJUE9TVElO R19SRUFEKGZlbmNlX3JlZ19sbyk7Cj4gPiAgCj4gPiAgCWlmIChvYmopIHsKPiA+ICAJCXUzMiBz aXplID0gaTkxNV9nZW1fb2JqX2dndHRfc2l6ZShvYmopOwo+ID4gQEAgLTEwMywxNCArMTAzLDE0 IEBAIHN0YXRpYyB2b2lkIGk5NjVfd3JpdGVfZmVuY2VfcmVnKHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYsIGludCByZWcsCj4gPiAgCQkJdmFsIHw9IDEgPDwgSTk2NV9GRU5DRV9USUxJTkdfWV9TSElG VDsKPiA+ICAJCXZhbCB8PSBJOTY1X0ZFTkNFX1JFR19WQUxJRDsKPiA+ICAKPiA+IC0JCUk5MTVf V1JJVEUoZmVuY2VfcmVnICsgNCwgdmFsID4+IDMyKTsKPiA+IC0JCVBPU1RJTkdfUkVBRChmZW5j ZV9yZWcgKyA0KTsKPiA+ICsJCUk5MTVfV1JJVEUoZmVuY2VfcmVnX2hpLCB2YWwgPj4gMzIpOwo+ ID4gKwkJUE9TVElOR19SRUFEKGZlbmNlX3JlZ19oaSk7Cj4gPiAgCj4gPiAtCQlJOTE1X1dSSVRF KGZlbmNlX3JlZyArIDAsIHZhbCk7Cj4gPiAtCQlQT1NUSU5HX1JFQUQoZmVuY2VfcmVnKTsKPiA+ ICsJCUk5MTVfV1JJVEUoZmVuY2VfcmVnX2xvLCB2YWwpOwo+ID4gKwkJUE9TVElOR19SRUFEKGZl bmNlX3JlZ19sbyk7Cj4gPiAgCX0gZWxzZSB7Cj4gPiAtCQlJOTE1X1dSSVRFKGZlbmNlX3JlZyAr IDQsIDApOwo+ID4gLQkJUE9TVElOR19SRUFEKGZlbmNlX3JlZyArIDQpOwo+ID4gKwkJSTkxNV9X UklURShmZW5jZV9yZWdfaGksIDApOwo+ID4gKwkJUE9TVElOR19SRUFEKGZlbmNlX3JlZ19oaSk7 Cj4gPiAgCX0KPiA+ICB9Cj4gPiAgCj4gPiBAQCAtMTQ5LDEzICsxNDksOCBAQCBzdGF0aWMgdm9p ZCBpOTE1X3dyaXRlX2ZlbmNlX3JlZyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBpbnQgcmVnLAo+ ID4gIAl9IGVsc2UKPiA+ICAJCXZhbCA9IDA7Cj4gPiAgCj4gPiAtCWlmIChyZWcgPCA4KQo+ID4g LQkJcmVnID0gRkVOQ0VfUkVHXzgzMF8wICsgcmVnICogNDsKPiA+IC0JZWxzZQo+ID4gLQkJcmVn ID0gRkVOQ0VfUkVHXzk0NV84ICsgKHJlZyAtIDgpICogNDsKPiA+IC0KPiA+IC0JSTkxNV9XUklU RShyZWcsIHZhbCk7Cj4gPiAtCVBPU1RJTkdfUkVBRChyZWcpOwo+ID4gKwlJOTE1X1dSSVRFKEZF TkNFX1JFRyhyZWcpLCB2YWwpOwo+ID4gKwlQT1NUSU5HX1JFQUQoRkVOQ0VfUkVHKHJlZykpOwo+ ID4gIH0KPiA+ICAKPiA+ICBzdGF0aWMgdm9pZCBpODMwX3dyaXRlX2ZlbmNlX3JlZyhzdHJ1Y3Qg ZHJtX2RldmljZSAqZGV2LCBpbnQgcmVnLAo+ID4gQEAgLTE4Niw4ICsxODEsOCBAQCBzdGF0aWMg dm9pZCBpODMwX3dyaXRlX2ZlbmNlX3JlZyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBpbnQgcmVn LAo+ID4gIAl9IGVsc2UKPiA+ICAJCXZhbCA9IDA7Cj4gPiAgCj4gPiAtCUk5MTVfV1JJVEUoRkVO Q0VfUkVHXzgzMF8wICsgcmVnICogNCwgdmFsKTsKPiA+IC0JUE9TVElOR19SRUFEKEZFTkNFX1JF R184MzBfMCArIHJlZyAqIDQpOwo+ID4gKwlJOTE1X1dSSVRFKEZFTkNFX1JFRyhyZWcpLCB2YWwp Owo+ID4gKwlQT1NUSU5HX1JFQUQoRkVOQ0VfUkVHKHJlZykpOwo+ID4gIH0KPiA+ICAKPiA+ICBp bmxpbmUgc3RhdGljIGJvb2wgaTkxNV9nZW1fb2JqZWN0X25lZWRzX21iKHN0cnVjdCBkcm1faTkx NV9nZW1fb2JqZWN0ICpvYmopCj4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9ncHVfZXJyb3IuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ3B1X2Vycm9yLmMK PiA+IGluZGV4IDMzNzlmOWMuLjNiNTc0YzIgMTAwNjQ0Cj4gPiAtLS0gYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2dwdV9lcnJvci5jCj4gPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2dwdV9lcnJvci5jCj4gPiBAQCAtNzg2LDIwICs3ODYsMTUgQEAgc3RhdGljIHZvaWQgaTkx NV9nZW1fcmVjb3JkX2ZlbmNlcyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+ID4gIAlpbnQgaTsK PiA+ICAKPiA+ICAJaWYgKElTX0dFTjMoZGV2KSB8fCBJU19HRU4yKGRldikpIHsKPiA+IC0JCWZv ciAoaSA9IDA7IGkgPCA4OyBpKyspCj4gPiAtCQkJZXJyb3ItPmZlbmNlW2ldID0gSTkxNV9SRUFE KEZFTkNFX1JFR184MzBfMCArIChpICogNCkpOwo+ID4gLQkJaWYgKElTX0k5NDVHKGRldikgfHwg SVNfSTk0NUdNKGRldikgfHwgSVNfRzMzKGRldikpCj4gPiAtCQkJZm9yIChpID0gMDsgaSA8IDg7 IGkrKykKPiA+IC0JCQkJZXJyb3ItPmZlbmNlW2krOF0gPSBJOTE1X1JFQUQoRkVOQ0VfUkVHXzk0 NV84ICsKPiA+IC0JCQkJCQkJICAgICAgKGkgKiA0KSk7Cj4gPiAtCX0gZWxzZSBpZiAoSVNfR0VO NShkZXYpIHx8IElTX0dFTjQoZGV2KSkKPiA+IC0JCWZvciAoaSA9IDA7IGkgPCAxNjsgaSsrKQo+ ID4gLQkJCWVycm9yLT5mZW5jZVtpXSA9IEk5MTVfUkVBRDY0KEZFTkNFX1JFR185NjVfMCArCj4g PiAtCQkJCQkJICAgICAgKGkgKiA4KSk7Cj4gPiAtCWVsc2UgaWYgKElOVEVMX0lORk8oZGV2KS0+ Z2VuID49IDYpCj4gPiAgCQlmb3IgKGkgPSAwOyBpIDwgZGV2X3ByaXYtPm51bV9mZW5jZV9yZWdz OyBpKyspCj4gPiAtCQkJZXJyb3ItPmZlbmNlW2ldID0gSTkxNV9SRUFENjQoRkVOQ0VfUkVHX1NB TkRZQlJJREdFXzAgKwo+ID4gLQkJCQkJCSAgICAgIChpICogOCkpOwo+ID4gKwkJCWVycm9yLT5m ZW5jZVtpXSA9IEk5MTVfUkVBRChGRU5DRV9SRUcoaSkpOwo+ID4gKwl9IGVsc2UgaWYgKElTX0dF TjUoZGV2KSB8fCBJU19HRU40KGRldikpIHsKPiA+ICsJCWZvciAoaSA9IDA7IGkgPCBkZXZfcHJp di0+bnVtX2ZlbmNlX3JlZ3M7IGkrKykKPiA+ICsJCQllcnJvci0+ZmVuY2VbaV0gPSBJOTE1X1JF QUQ2NChGRU5DRV9SRUdfOTY1X0xPKGkpKTsKPiA+ICsJfSBlbHNlIGlmIChJTlRFTF9JTkZPKGRl diktPmdlbiA+PSA2KSB7Cj4gPiArCQlmb3IgKGkgPSAwOyBpIDwgZGV2X3ByaXYtPm51bV9mZW5j ZV9yZWdzOyBpKyspCj4gPiArCQkJZXJyb3ItPmZlbmNlW2ldID0gSTkxNV9SRUFENjQoRkVOQ0Vf UkVHX0dFTjZfTE8oaSkpOwo+ID4gKwl9Cj4gPiAgfQo+ID4gIAo+ID4gIAo+ID4gZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X3JlZy5oCj4gPiBpbmRleCA0NGNlZGJmLi44MTMzYzdlIDEwMDY0NAo+ID4gLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaAo+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9yZWcuaAo+ID4gQEAgLTE0MzYsOSArMTQzNiwxNSBAQCBlbnVtIHNrbF9kaXNw X3Bvd2VyX3dlbGxzIHsKPiA+ICAKPiA+ICAvKgo+ID4gICAqIEZlbmNlIHJlZ2lzdGVycwo+ID4g KyAqIFswLTddICBAIDB4MjAwMCBnZW4yLGdlbjMKPiA+ICsgKiBbOC0xNV0gQCAweDMwMDAgOTQ1 LGczMyxwbnYKPiA+ICsgKgo+ID4gKyAqIFswLTE1XSBAIDB4MzAwMCBnZW40LGdlbjUKPiA+ICsg Kgo+ID4gKyAqIFswLTE1XSBAIDB4MTAwMDAwIGdlbjYsdmx2LGNodgo+ID4gKyAqIFswLTMxXSBA IDB4MTAwMDAwIGdlbjcrCj4gPiAgICovCj4gPiAtI2RlZmluZSBGRU5DRV9SRUdfODMwXzAJCQkw eDIwMDAKPiA+IC0jZGVmaW5lIEZFTkNFX1JFR185NDVfOAkJCTB4MzAwMAo+ID4gKyNkZWZpbmUg RkVOQ0VfUkVHKGkpCQkJKDB4MjAwMCArICgoKGkpICYgOCkgPDwgOSkgKyAoKGkpICYgNykgKiA0 KQo+IAo+IEknZCBoYXZlIGFwcHJlY2lhdGVkIHRoZSBtb3JlIG9idmlvdXMgKGkgPCA4ID8gMHgy MDAwICsgaSAqIDQgOiAweDMwMDAgKwo+IChpIC0gOCkgKiA0KSBidXQgbWVoLgo+IAo+IFJldmll d2VkLWJ5OiBKYW5pIE5pa3VsYSA8amFuaS5uaWt1bGFAaW50ZWwuY29tPgoKUXVldWVkIGZvciAt bmV4dCwgdGhhbmtzIGZvciB0aGUgcGF0Y2guCi1EYW5pZWwKCj4gCj4gCj4gCj4gCj4gPiAgI2Rl ZmluZSAgIEk4MzBfRkVOQ0VfU1RBUlRfTUFTSwkJMHgwN2Y4MDAwMAo+ID4gICNkZWZpbmUgICBJ ODMwX0ZFTkNFX1RJTElOR19ZX1NISUZUCTEyCj4gPiAgI2RlZmluZSAgIEk4MzBfRkVOQ0VfU0la RV9CSVRTKHNpemUpCSgoZmZzKChzaXplKSA+PiAxOSkgLSAxKSA8PCA4KQo+ID4gQEAgLTE0NTEs MTQgKzE0NTcsMTYgQEAgZW51bSBza2xfZGlzcF9wb3dlcl93ZWxscyB7Cj4gPiAgI2RlZmluZSAg IEk5MTVfRkVOQ0VfU1RBUlRfTUFTSwkJMHgwZmYwMDAwMAo+ID4gICNkZWZpbmUgICBJOTE1X0ZF TkNFX1NJWkVfQklUUyhzaXplKQkoKGZmcygoc2l6ZSkgPj4gMjApIC0gMSkgPDwgOCkKPiA+ICAK PiA+IC0jZGVmaW5lIEZFTkNFX1JFR185NjVfMAkJCTB4MDMwMDAKPiA+ICsjZGVmaW5lIEZFTkNF X1JFR185NjVfTE8oaSkJCSgweDAzMDAwICsgKGkpICogOCkKPiA+ICsjZGVmaW5lIEZFTkNFX1JF R185NjVfSEkoaSkJCSgweDAzMDAwICsgKGkpICogOCArIDQpCj4gPiAgI2RlZmluZSAgIEk5NjVf RkVOQ0VfUElUQ0hfU0hJRlQJMgo+ID4gICNkZWZpbmUgICBJOTY1X0ZFTkNFX1RJTElOR19ZX1NI SUZUCTEKPiA+ICAjZGVmaW5lICAgSTk2NV9GRU5DRV9SRUdfVkFMSUQJCSgxPDwwKQo+ID4gICNk ZWZpbmUgICBJOTY1X0ZFTkNFX01BWF9QSVRDSF9WQUwJMHgwNDAwCj4gPiAgCj4gPiAtI2RlZmlu ZSBGRU5DRV9SRUdfU0FORFlCUklER0VfMAkJMHgxMDAwMDAKPiA+IC0jZGVmaW5lICAgU0FORFlC UklER0VfRkVOQ0VfUElUQ0hfU0hJRlQJMzIKPiA+ICsjZGVmaW5lIEZFTkNFX1JFR19HRU42X0xP KGkpCSgweDEwMDAwMCArIChpKSAqIDgpCj4gPiArI2RlZmluZSBGRU5DRV9SRUdfR0VONl9ISShp KQkoMHgxMDAwMDAgKyAoaSkgKiA4ICsgNCkKPiA+ICsjZGVmaW5lICAgR0VONl9GRU5DRV9QSVRD SF9TSElGVAkzMgo+ID4gICNkZWZpbmUgICBHRU43X0ZFTkNFX01BWF9QSVRDSF9WQUwJMHgwODAw Cj4gPiAgCj4gPiAgCj4gPiAtLSAKPiA+IDIuNC42Cj4gPgo+ID4gX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KPiA+IEludGVsLWdmeCBtYWlsaW5nIGxpc3QK PiA+IEludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKPiA+IGh0dHA6Ly9saXN0cy5mcmVl ZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngKPiAKPiAtLSAKPiBKYW5pIE5p a3VsYSwgSW50ZWwgT3BlbiBTb3VyY2UgVGVjaG5vbG9neSBDZW50ZXIKPiBfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo+IEludGVsLWdmeCBtYWlsaW5nIGxp c3QKPiBJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCj4gaHR0cDovL2xpc3RzLmZyZWVk ZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAoKLS0gCkRhbmllbCBWZXR0ZXIK U29mdHdhcmUgRW5naW5lZXIsIEludGVsIENvcnBvcmF0aW9uCmh0dHA6Ly9ibG9nLmZmd2xsLmNo Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdm eCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==