From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maarten Lankhorst Subject: Re: [PATCH 11/11] drm/i915/skl+: consider max supported plane pixel rate while scaling Date: Thu, 11 May 2017 11:48:35 +0200 Message-ID: <2c8b92b9-13f8-f6f4-b23e-8429c75ad143@linux.intel.com> References: <20170508114902.18965-1-mahesh1.kumar@intel.com> <20170508114902.18965-12-mahesh1.kumar@intel.com> <2ec5f246-f688-0a2c-e15c-9c880b4e92ec@linux.intel.com> <4282cfec-e921-3cac-e7fd-e092e81ccd4d@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" 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 A7D266E49B for ; Thu, 11 May 2017 09:48:38 +0000 (UTC) In-Reply-To: <4282cfec-e921-3cac-e7fd-e092e81ccd4d@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Mahesh Kumar , intel-gfx@lists.freedesktop.org Cc: paulo.r.zanoni@intel.com, maarten.lankhorst@intel.com List-Id: intel-gfx@lists.freedesktop.org T3AgMTEtMDUtMTcgb20gMTA6MzYgc2NocmVlZiBNYWhlc2ggS3VtYXI6Cj4gSGksCj4KPiBUaGFu a3MgZm9yIHJldmlldy4KPgo+IE9uIFdlZG5lc2RheSAxMCBNYXkgMjAxNyAwNjo1MiBQTSwgTWFh cnRlbiBMYW5raG9yc3Qgd3JvdGU6Cj4+IE9wIDA4LTA1LTE3IG9tIDEzOjQ5IHNjaHJlZWYgTWFo ZXNoIEt1bWFyOgo+Pj4gQSBkaXNwbGF5IHJlc29sdXRpb24gaXMgb25seSBzdXBwb3J0ZWQgaWYg aXQgbWVldHMgYWxsIHRoZSByZXN0cmljdGlvbnMKPj4+IGJlbG93IGZvciBNYXhpbXVtIFBpcGUg UGl4ZWwgUmF0ZS4KPj4+Cj4+PiBUaGUgZGlzcGxheSByZXNvbHV0aW9uIG11c3QgZml0IHdpdGhp biB0aGUgbWF4aW11bSBwaXhlbCByYXRlIG91dHB1dAo+Pj4gZnJvbSB0aGUgcGlwZS4gTWFrZSBz dXJlIHRoYXQgdGhlIGRpc3BsYXkgcGlwZSBpcyBhYmxlIHRvIGZlZWQgcGl4ZWxzIGF0Cj4+PiBh IHJhdGUgcmVxdWlyZWQgdG8gc3VwcG9ydCB0aGUgZGVzaXJlZCByZXNvbHV0aW9uLgo+Pj4gRm9y IGVhY2ggZW5hYmxlZCBwbGFuZSBvbiB0aGUgcGlwZSB7Cj4+PiAgICAgIElmIHBsYW5lIHNjYWxp bmcgZW5hYmxlZCB7Cj4+PiAgICAgSG9yaXpvbnRhbCBkb3duIHNjYWxlIGFtb3VudCA9IE1heGlt dW1bMSwgcGxhbmUgaG9yaXpvbnRhbCBzaXplIC8KPj4+ICAgICAgICAgICAgIHNjYWxlciBob3Jp em9udGFsIHdpbmRvdyBzaXplXQo+Pj4gICAgIFZlcnRpY2FsIGRvd24gc2NhbGUgYW1vdW50ID0g TWF4aW11bVsxLCBwbGFuZSB2ZXJ0aWNhbCBzaXplIC8KPj4+ICAgICAgICAgICAgIHNjYWxlciB2 ZXJ0aWNhbCB3aW5kb3cgc2l6ZV0KPj4+ICAgICBQbGFuZSBkb3duIHNjYWxlIGFtb3VudCA9IEhv cml6b250YWwgZG93biBzY2FsZSBhbW91bnQgKgo+Pj4gICAgICAgICAgICAgVmVydGljYWwgZG93 biBzY2FsZSBhbW91bnQKPj4+ICAgICBQbGFuZSBSYXRpbyA9IDEgLyBQbGFuZSBkb3duIHNjYWxl IGFtb3VudAo+Pj4gICAgICB9Cj4+PiAgICAgIEVsc2Ugewo+Pj4gICAgIFBsYW5lIFJhdGlvID0g MQo+Pj4gICAgICB9Cj4+PiAgICAgIElmIHBsYW5lIHNvdXJjZSBwaXhlbCBmb3JtYXQgaXMgNjQg Yml0cyBwZXIgcGl4ZWwgewo+Pj4gICAgIFBsYW5lIFJhdGlvID0gUGxhbmUgUmF0aW8gKiA4LzkK Pj4+ICAgICAgfQo+Pj4gfQo+Pj4KPj4+IFBpcGUgUmF0aW8gPSBNaW5pbXVtIFBsYW5lIFJhdGlv IG9mIGFsbCBlbmFibGVkIHBsYW5lcyBvbiB0aGUgcGlwZQo+Pj4KPj4+IElmIHBpcGUgc2NhbGlu ZyBpcyBlbmFibGVkIHsKPj4+ICAgICAgSG9yaXpvbnRhbCBkb3duIHNjYWxlIGFtb3VudCA9IE1h eGltdW1bMSwgcGlwZSBob3Jpem9udGFsIHNvdXJjZSBzaXplIC8KPj4+ICAgICAgICAgc2NhbGVy IGhvcml6b250YWwgd2luZG93IHNpemVdCj4+PiAgICAgIFZlcnRpY2FsIGRvd24gc2NhbGUgYW1v dW50ID0gTWF4aW11bVsxLCBwaXBlIHZlcnRpY2FsIHNvdXJjZSBzaXplIC8KPj4+ICAgICAgICAg c2NhbGVyIHZlcnRpY2FsIHdpbmRvdyBzaXplXQo+Pj4gICAgICBOb3RlOiBUaGUgcHJvZ3Jlc3Np dmUgZmV0Y2ggLSBpbnRlcmxhY2UgZGlzcGxheSBtb2RlIGlzIGVxdWl2YWxlbnQgdG8gYQo+Pj4g ICAgICAgICAyLjAgdmVydGljYWwgZG93biBzY2FsZQo+Pj4gICAgICBQaXBlIGRvd24gc2NhbGUg YW1vdW50ID0gSG9yaXpvbnRhbCBkb3duIHNjYWxlIGFtb3VudCAqCj4+PiAgICAgICAgIFZlcnRp Y2FsIGRvd24gc2NhbGUgYW1vdW50Cj4+PiAgICAgIFBpcGUgUmF0aW8gPSBQaXBlIFJhdGlvIC8g UGlwZSBkb3duIHNjYWxlIGFtb3VudAo+Pj4gfQo+Pj4KPj4+IFBpcGUgbWF4aW11bSBwaXhlbCBy YXRlID0gQ0RDTEsgZnJlcXVlbmN5ICogUGlwZSBSYXRpbwo+Pj4KPj4+IFNpZ25lZC1vZmYtYnk6 IE1haGVzaCBLdW1hciA8bWFoZXNoMS5rdW1hckBpbnRlbC5jb20+Cj4+PiAtLS0KPj4+ICAgZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jIHwgIDMgKysKPj4+ICAgZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggICAgIHwgIDIgKwo+Pj4gICBkcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9wbS5jICAgICAgfCA4NyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysKPj4+ICAgMyBmaWxlcyBjaGFuZ2VkLCA5MiBpbnNlcnRpb25zKCspCj4+Pgo+Pj4gZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwo+Pj4gaW5kZXggODViOWUyZjUyMWEwLi5kNjQz NjdlODEwZjggMTAwNjQ0Cj4+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNw bGF5LmMKPj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwo+Pj4g QEAgLTEwOTkyLDYgKzEwOTkyLDkgQEAgc3RhdGljIGludCBpbnRlbF9jcnRjX2F0b21pY19jaGVj ayhzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCj4+PiAgICAgICAgICAgICAgIHJldCA9IHNrbF91cGRh dGVfc2NhbGVyX2NydGMocGlwZV9jb25maWcpOwo+Pj4gICAgICAgICAgICAgaWYgKCFyZXQpCj4+ PiArICAgICAgICAgICAgcmV0ID0gc2tsX2NoZWNrX3BpcGVfbWF4X3BpeGVsX3JhdGUoaW50ZWxf Y3J0YywKPj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBpcGVfY29uZmlnKTsK Pj4+ICsgICAgICAgIGlmICghcmV0KQo+Pj4gICAgICAgICAgICAgICByZXQgPSBpbnRlbF9hdG9t aWNfc2V0dXBfc2NhbGVycyhkZXZfcHJpdiwgaW50ZWxfY3J0YywKPj4+ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBwaXBlX2NvbmZpZyk7Cj4+PiAgICAgICB9Cj4+PiBkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9kcnYuaAo+Pj4gaW5kZXggNTRmM2ZmODQwODEyLi44MzIzZmMyZWM0ZjIgMTAwNjQ0 Cj4+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAo+Pj4gKysrIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPj4+IEBAIC0xODU5LDYgKzE4NTksOCBAQCBi b29sIHNrbF9kZGJfYWxsb2NhdGlvbl9vdmVybGFwcyhjb25zdCBzdHJ1Y3Qgc2tsX2RkYl9lbnRy eSAqKmVudHJpZXMsCj4+PiAgICAgICAgICAgICAgICAgICAgaW50IGlnbm9yZSk7Cj4+PiAgIGJv b2wgaWxrX2Rpc2FibGVfbHBfd20oc3RydWN0IGRybV9kZXZpY2UgKmRldik7Cj4+PiAgIGludCBz YW5pdGl6ZV9yYzZfb3B0aW9uKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwgaW50 IGVuYWJsZV9yYzYpOwo+Pj4gK2ludCBza2xfY2hlY2tfcGlwZV9tYXhfcGl4ZWxfcmF0ZShzdHJ1 Y3QgaW50ZWxfY3J0YyAqaW50ZWxfY3J0YywKPj4+ICsgICAgICAgICAgICAgICAgICBzdHJ1Y3Qg aW50ZWxfY3J0Y19zdGF0ZSAqY3N0YXRlKTsKPj4+ICAgc3RhdGljIGlubGluZSBpbnQgaW50ZWxf ZW5hYmxlX3JjNih2b2lkKQo+Pj4gICB7Cj4+PiAgICAgICByZXR1cm4gaTkxNS5lbmFibGVfcmM2 Owo+Pj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BtLmMgYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wbS5jCj4+PiBpbmRleCA5MjYwMGNmNDJlMTIuLjY5YjE2 OTJmZmQwNyAxMDA2NDQKPj4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BtLmMK Pj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BtLmMKPj4+IEBAIC0zMzk3LDYg KzMzOTcsOTMgQEAgc2tsX3BsYW5lX2Rvd25zY2FsZV9hbW91bnQoY29uc3Qgc3RydWN0IGludGVs X2NydGNfc3RhdGUgKmNzdGF0ZSwKPj4+ICAgICAgIHJldHVybiBtdWxfZml4ZWRfMTZfMTYoZG93 bnNjYWxlX3csIGRvd25zY2FsZV9oKTsKPj4+ICAgfQo+Pj4gICArc3RhdGljIHVpbnRfZml4ZWRf MTZfMTZfdAo+Pj4gK3NrbF9waXBlX2Rvd25zY2FsZV9hbW91bnQoY29uc3Qgc3RydWN0IGludGVs X2NydGNfc3RhdGUgKmNvbmZpZykKPj4+ICt7Cj4+PiArICAgIHVpbnRfZml4ZWRfMTZfMTZfdCBw aXBlX2Rvd25zY2FsZSA9IHUzMl90b19maXhlZF8xNl8xNigxKTsKPj4+ICsKPj4+ICsgICAgaWYg KCFjb25maWctPmJhc2UuYWN0aXZlKQo+Pj4gKyAgICAgICAgcmV0dXJuIHBpcGVfZG93bnNjYWxl Owo+Pj4gKwo+Pj4gKyAgICBpZiAoY29uZmlnLT5wY2hfcGZpdC5lbmFibGVkKSB7Cj4+PiArICAg ICAgICB1aW50MzJfdCBzcmNfdywgc3JjX2gsIGRzdF93LCBkc3RfaDsKPj4+ICsgICAgICAgIHVp bnQzMl90IHBmaXRfc2l6ZSA9IGNvbmZpZy0+cGNoX3BmaXQuc2l6ZTsKPj4+ICsgICAgICAgIHVp bnRfZml4ZWRfMTZfMTZfdCBmcF93X3JhdGlvLCBmcF9oX3JhdGlvOwo+Pj4gKyAgICAgICAgdWlu dF9maXhlZF8xNl8xNl90IGRvd25zY2FsZV9oLCBkb3duc2NhbGVfdzsKPj4+ICsKPj4+ICsgICAg ICAgIHNyY193ID0gY29uZmlnLT5waXBlX3NyY193Owo+Pj4gKyAgICAgICAgc3JjX2ggPSBjb25m aWctPnBpcGVfc3JjX2g7Cj4+PiArICAgICAgICBkc3RfdyA9IHBmaXRfc2l6ZSA+PiAxNjsKPj4+ ICsgICAgICAgIGRzdF9oID0gcGZpdF9zaXplICYgMHhmZmZmOwo+Pj4gKwo+Pj4gKyAgICAgICAg aWYgKCFkc3RfdyB8fCAhZHN0X2gpCj4+PiArICAgICAgICAgICAgcmV0dXJuIHBpcGVfZG93bnNj YWxlOwo+Pj4gKwo+Pj4gKyAgICAgICAgZnBfd19yYXRpbyA9IGZpeGVkXzE2XzE2X2RpdihzcmNf dywgZHN0X3cpOwo+Pj4gKyAgICAgICAgZnBfaF9yYXRpbyA9IGZpeGVkXzE2XzE2X2RpdihzcmNf aCwgZHN0X2gpOwo+Pj4gKyAgICAgICAgZG93bnNjYWxlX3cgPSBtYXhfZml4ZWRfMTZfMTYoZnBf d19yYXRpbywgdTMyX3RvX2ZpeGVkXzE2XzE2KDEpKTsKPj4+ICsgICAgICAgIGRvd25zY2FsZV9o ID0gbWF4X2ZpeGVkXzE2XzE2KGZwX2hfcmF0aW8sIHUzMl90b19maXhlZF8xNl8xNigxKSk7Cj4+ PiArCj4+PiArICAgICAgICBwaXBlX2Rvd25zY2FsZSA9IG11bF9maXhlZF8xNl8xNihkb3duc2Nh bGVfdywgZG93bnNjYWxlX2gpOwo+Pj4gKyAgICB9Cj4+PiArCj4+PiArICAgIHJldHVybiBwaXBl X2Rvd25zY2FsZTsKPj4+ICt9Cj4+PiArCj4+PiAraW50IHNrbF9jaGVja19waXBlX21heF9waXhl bF9yYXRlKHN0cnVjdCBpbnRlbF9jcnRjICppbnRlbF9jcnRjLAo+Pj4gKyAgICAgICAgICAgICAg ICAgIHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjc3RhdGUpCj4+PiArewo+Pj4gKyAgICBzdHJ1 Y3QgZHJtX2NydGNfc3RhdGUgKmNydGNfc3RhdGUgPSAmY3N0YXRlLT5iYXNlOwo+Pj4gKyAgICBz dHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUgPSBjcnRjX3N0YXRlLT5zdGF0ZTsKPj4+ICsg ICAgc3RydWN0IGRybV9wbGFuZSAqcGxhbmU7Cj4+PiArICAgIGNvbnN0IHN0cnVjdCBkcm1fcGxh bmVfc3RhdGUgKnBzdGF0ZTsKPj4+ICsgICAgc3RydWN0IGludGVsX3BsYW5lX3N0YXRlICppbnRl bF9wc3RhdGU7Cj4+PiArICAgIGludCBjcnRjX2Nsb2NrLCBjZGNsazsKPj4+ICsgICAgdWludDMy X3QgcGlwZV9tYXhfcGl4ZWxfcmF0ZTsKPj4+ICsgICAgdWludF9maXhlZF8xNl8xNl90IHBpcGVf ZG93bnNjYWxlOwo+Pj4gKyAgICB1aW50X2ZpeGVkXzE2XzE2X3QgbWF4X2Rvd25zY2FsZSA9IHUz Ml90b19maXhlZF8xNl8xNigxKTsKPj4+ICsKPj4+ICsgICAgaWYgKGNzdGF0ZS0+YmFzZS5hY3Rp dmUpCj4+PiArICAgICAgICByZXR1cm4gMDsKPj4gXlRoaXMgY2hlY2sgbG9va3MgYnVnZ3ksIGFy ZSB0aGVyZSBhbnkgdGVzdHM/Cj4+Cj4+IEluIGdlbmVyYWwgd2UgdHJ5IHRvIGRvIHRoZSBzYW1l IGZvciAhYWN0aXZlIGFzIHdlIGRvIHdpdGggYWN0aXZlLCBzbyBwbGVhc2UgdG8gcmVtb3ZlIGFu eSAhYWN0aXZlIGNoZWNrcyBhbHRvZ2V0aGVyLi4KPiBUaGFua3MgZm9yIGNhdGNoaW5nIHRoaXMs IHllcyBpdCdzIGEgYnVnLCBkdXJpbmcgbXkgdGVzdGluZyB0aGlzIGNoZWNrIHdhcyBub3QgdGhl cmUgYnV0IEkgYWRkZWQgdGhpcyBhcyBhbiBleHRyYSBwcmVjYXV0aW9uICYgc2NyZXdlZC11cCA6 UAo+Pj4gKyAgICBkcm1fYXRvbWljX2NydGNfc3RhdGVfZm9yX2VhY2hfcGxhbmVfc3RhdGUocGxh bmUsIHBzdGF0ZSwgY3J0Y19zdGF0ZSkgewo+Pj4gKyAgICAgICAgdWludF9maXhlZF8xNl8xNl90 IHBsYW5lX2Rvd25zY2FsZTsKPj4+ICsgICAgICAgIHVpbnRfZml4ZWRfMTZfMTZfdCBmcF85X2Rp dl84ID0gZml4ZWRfMTZfMTZfZGl2KDksIDgpOwo+Pj4gKyAgICAgICAgaW50IGJwcDsKPj4+ICsK Pj4+ICsgICAgICAgIGlmICghcHN0YXRlLT52aXNpYmxlKQo+Pj4gKyAgICAgICAgICAgIGNvbnRp bnVlOwo+PiBCZXN0IHVzZSBpbnRlbF93bV9wbGFuZV92aXNpYmxlIGhlcmUuCj4gd2lsbCBkbywK Pgo+IC1NYWhlc2gKPj4+ICsKPj4+ICsgICAgICAgIGlmIChXQVJOX09OKCFwc3RhdGUtPmZiKSkK Pj4+ICsgICAgICAgICAgICBjb250aW51ZTsKPj4+ICsKPj4+ICsgICAgICAgIGludGVsX3BzdGF0 ZSA9IHRvX2ludGVsX3BsYW5lX3N0YXRlKHBzdGF0ZSk7Cj4+PiArICAgICAgICBwbGFuZV9kb3du c2NhbGUgPSBza2xfcGxhbmVfZG93bnNjYWxlX2Ftb3VudChjc3RhdGUsCj4+PiArICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgaW50ZWxfcHN0YXRlKTsKPj4+ICsgICAgICAgIGJwcCA9 IHBzdGF0ZS0+ZmItPmZvcm1hdC0+Y3BwWzBdICogODsKPj4+ICsgICAgICAgIGlmIChicHAgPT0g NjQpCj4+PiArICAgICAgICAgICAgcGxhbmVfZG93bnNjYWxlID0gbXVsX2ZpeGVkXzE2XzE2KHBs YW5lX2Rvd25zY2FsZSwKPj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmcF85X2Rp dl84KTsKPj4+ICsKPj4+ICsgICAgICAgIG1heF9kb3duc2NhbGUgPSBtYXhfZml4ZWRfMTZfMTYo cGxhbmVfZG93bnNjYWxlLCBtYXhfZG93bnNjYWxlKTsKPj4+ICsgICAgfQo+Pj4gKyAgICBwaXBl X2Rvd25zY2FsZSA9IHNrbF9waXBlX2Rvd25zY2FsZV9hbW91bnQoY3N0YXRlKTsKPj4+ICsKPj4+ ICsgICAgcGlwZV9kb3duc2NhbGUgPSBtdWxfZml4ZWRfMTZfMTYocGlwZV9kb3duc2NhbGUsIG1h eF9kb3duc2NhbGUpOwo+Pj4gKwo+Pj4gKyAgICBjcnRjX2Nsb2NrID0gY3J0Y19zdGF0ZS0+YWRq dXN0ZWRfbW9kZS5jcnRjX2Nsb2NrOwo+Pj4gKyAgICBjZGNsayA9IHRvX2ludGVsX2F0b21pY19z dGF0ZShzdGF0ZSktPmNkY2xrLmxvZ2ljYWwuY2RjbGs7Cj4+PiArICAgIHBpcGVfbWF4X3BpeGVs X3JhdGUgPSBmaXhlZF8xNl8xNl9kaXZfcm91bmRfdXBfdTY0KGNkY2xrLAo+Pj4gKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBwaXBlX2Rvd25zY2FsZSk7Cj4+PiArCj4+PiArICAgIGlm IChwaXBlX21heF9waXhlbF9yYXRlIDwgY3J0Y19jbG9jaykgewo+Pj4gKyAgICAgICAgRFJNX0VS Uk9SKCJNYXggc3VwcG9ydGVkIHBpeGVsIGNsb2NrIHdpdGggc2NhbGluZyBleGNlZWRzXG4iKTsK Pj4+ICsgICAgICAgIHJldHVybiAtRVJBTkdFOyAKT29wcywgcGxlYXNlIGFsc28gb25seSByZXR1 cm4gLUVJTlZBTCwgZGVmaW5pdGVseSBub3QgRVJBTkdFLgoKfk1hYXJ0ZW4KX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlz dApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0 b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==