From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Sharma, Shashank" Subject: Re: [PATCH 11/20] drm/i915: prepare scaler for YCBCR420 modeset Date: Thu, 13 Jul 2017 10:51:04 +0530 Message-ID: References: <1499685528-6926-1-git-send-email-shashank.sharma@intel.com> <1499685528-6926-12-git-send-email-shashank.sharma@intel.com> <20170712171727.GL12629@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20170712171727.GL12629@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: =?UTF-8?B?VmlsbGUgU3lyasOkbMOk?= Cc: intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org UmVnYXJkcwoKU2hhc2hhbmsKCgpPbiA3LzEyLzIwMTcgMTA6NDcgUE0sIFZpbGxlIFN5cmrDpGzD pCB3cm90ZToKPiBPbiBNb24sIEp1bCAxMCwgMjAxNyBhdCAwNDo0ODozOVBNICswNTMwLCBTaGFz aGFuayBTaGFybWEgd3JvdGU6Cj4+IFRvIGdldCBhIFlDQkNSNDIwIG91dHB1dCBmcm9tIGludGVs IHBsYXRmb3Jtcywgd2UgbmVlZCBvbmUKPj4gc2NhbGVyIHRvIHNjYWxlIGRvd24gWUNCQ1I0NDQg c2FtcGxlcyB0byBZQ0JDUjQyMCBzYW1wbGVzLgo+Pgo+PiBUaGlzIHBhdGNoOgo+PiAtIERvZXMg c2NhbGVyIGFsbG9jYXRpb24gZm9yIEhETUkgeWNiY3I0MjAgb3V0cHV0cy4KPj4gLSBQcm9ncmFt cyBQSVBFX01JU0MgcmVnaXN0ZXIgZm9yIHljYmNyNDIwIG91dHB1dC4KPj4gLSBBZGRzIGEgbmV3 IHNjYWxlciB1c2VyICJIRE1JIG91dHB1dCIgdG8gcGx1Zy1pbnRvIGV4aXN0aW5nCj4+ICAgIHNj YWxlciBmcmFtZXdvcmsuIFRoaXMgb3V0cHV0IHR5cGUgaXMgaWRlbnRpZmllZCB1c2luZyBiaXQK Pj4gICAgMzAgb2YgdGhlIHNjYWxlciB1c2VycyBiaXRtYXAuCj4+Cj4+IFYyOiByZWJhc2UKPj4g VjM6IHJlYmFzZQo+PiBWNDogcmViYXNlCj4+IFY1OiBhZGRyZXNzZWQgcmV2aWV3IGNvbW1lbnRz IGZyb20gQW5kZXI6Cj4+ICAgICAgLSBObyBuZWVkIHRvIGNoZWNrIGJvdGggc2NhbGVyX3VzZXIg JiYgaGRtaV9vdXRwdXQuCj4+ICAgICAgICBDaGVjayBmb3Igc2NhbGVyX3VzZXIgaXMgZW5vdWdo Lgo+PiBTaWduZWQtb2ZmLWJ5OiBTaGFzaGFuayBTaGFybWEgPHNoYXNoYW5rLnNoYXJtYUBpbnRl bC5jb20+Cj4+IC0tLQo+PiAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2F0b21pYy5jICB8 ICA2ICsrKysrKwo+PiAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyB8IDIz ICsrKysrKysrKysrKysrKysrKysrKysrCj4+ICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf ZHJ2LmggICAgIHwgMTAgKysrKysrKysrLQo+PiAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X2hkbWkuYyAgICB8IDEyICsrKysrKysrKysrKwo+PiAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX3BhbmVsLmMgICB8ICAzICsrLQo+PiAgIDUgZmlsZXMgY2hhbmdlZCwgNTIgaW5zZXJ0aW9u cygrKSwgMiBkZWxldGlvbnMoLSkKPj4KPj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2F0b21pYy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYXRvbWljLmMK Pj4gaW5kZXggMzZkNGU2My4uMDQwZDExMSAxMDA2NDQKPj4gLS0tIGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfYXRvbWljLmMKPj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf YXRvbWljLmMKPj4gQEAgLTI2NCw2ICsyNjQsMTIgQEAgaW50IGludGVsX2F0b21pY19zZXR1cF9z Y2FsZXJzKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKPj4gICAKPj4gICAJCQkv KiBwYW5lbCBmaXR0ZXIgY2FzZTogYXNzaWduIGFzIGEgY3J0YyBzY2FsZXIgKi8KPj4gICAJCQlz Y2FsZXJfaWQgPSAmc2NhbGVyX3N0YXRlLT5zY2FsZXJfaWQ7Cj4+ICsJCX0gZWxzZSBpZiAoaSA9 PSBTS0xfNDIwX09VVFBVVF9JTkRFWCkgewo+IEkgdGhpbmsgQW5kZXIgYWxyZWFkeSBzYWlkIHRo YXQgd2Ugc2hvdWxkIGp1c3QgdGllIHRoaXMgaW50byB0aGUgbm9ybWFsCj4gcGZpdCBwaXBlIHNj YWxlciB1c2VyLiBJIGFncmVlLiBIYXZpbmcgdG8gdXNlcnMgZG9lc24ndCBhY3R1YWxseSBtYWtl Cj4gc2Vuc2UgYmVjYXVzZSB0aGVyZSBjYW4gYmUgb25seSBvbmUgcGlwZSBzY2FsZXIsIGFuZCBp ZiB3ZSB3YW50IHRvIGRvCj4gc2NhbGVkIDQ6MjowIG91dHB1dCB0aGVuIHdlIGFueXdheSBuZWVk IHRvIGhhbmRsZSBib3RoIGNhc2VzCj4gc2ltdWx0YW5lb3NseS4KSSB0aG91Z2h0IG91ciBpZGVh IG9mIGhhdmluZyBhIHNlcGFyYXRlIHNjYWxhciB1c2VyIHdhcyBhIGdvb2Qgb25lLCAKYmVjYXVz ZSwgdGhpcyBnaXZlcyBhZGRpdGlvbmFsIGluZm9ybWF0aW9uCmhvdyBhbmQgd2h5IHRoZSBzY2Fs YXIgaXMgYmVpbmcgdXNlZC4gQWxzbywgd2UgZG9udCBwcm9ncmFtIHRoZSBvdGhlciAKc2NhbGlu ZyBmYWN0b3JzIGluIHRoaXMgY2FzZSwgYnV0IHdlIGdldAp0aGUgc2NhbGluZyBwcm9maWxlIHNl dCB1c2luZyBQSVBFTUlTQy4gU28gSSB3b3VsZCBwcmVmZXIgdG8gaGF2ZSB0aGlzIAphcyBhIHNw ZWNpYWwgY2FzZSBvciBzZXBhcmF0ZSB1c2VyLCBidXQgeW91CmNhbiB0aGluayBhYm91dCB0aGlz LCBhbmQgbGV0IG1lIGtub3cuCgotIFNoYXNoYW5rCj4KPj4gKwkJCW5hbWUgPSAiWUNCQ1I0MjAt T1VUUFVUIjsKPj4gKwkJCWlkeCA9IGludGVsX2NydGMtPmJhc2UuYmFzZS5pZDsKPj4gKwo+PiAr CQkJLyogWUNCQ1I0MjAgY2FzZTogbmVlZHMgYSBwaXBlIHNjYWxlciAqLwo+PiArCQkJc2NhbGVy X2lkID0gJnNjYWxlcl9zdGF0ZS0+c2NhbGVyX2lkOwo+PiAgIAkJfSBlbHNlIHsKPj4gICAJCQlu YW1lID0gIlBMQU5FIjsKPj4gICAKPj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwo+ PiBpbmRleCAwMTkwMGUxLi5jNTYwODFlIDEwMDY0NAo+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9kaXNwbGF5LmMKPj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf ZGlzcGxheS5jCj4+IEBAIC00NjIxLDYgKzQ2MjEsOSBAQCBza2xfdXBkYXRlX3NjYWxlcihzdHJ1 Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSwgYm9vbCBmb3JjZV9kZXRhY2gsCj4+ICAg CSAqLwo+PiAgIAluZWVkX3NjYWxpbmcgPSBzcmNfdyAhPSBkc3RfdyB8fCBzcmNfaCAhPSBkc3Rf aDsKPj4gICAKPj4gKwlpZiAoc2NhbGVyX3VzZXIgPT0gU0tMXzQyMF9PVVRQVVRfSU5ERVgpCj4+ ICsJCW5lZWRfc2NhbGluZyA9IHRydWU7Cj4+ICsKPj4gICAJLyoKPj4gICAJICogaWYgcGxhbmUg aXMgYmVpbmcgZGlzYWJsZWQgb3Igc2NhbGVyIGlzIG5vIG1vcmUgcmVxdWlyZWQgb3IgZm9yY2Ug ZGV0YWNoCj4+ICAgCSAqICAtIGZyZWUgc2NhbGVyIGJpbmRlZCB0byB0aGlzIHBsYW5lL2NydGMK Pj4gQEAgLTQ2NjgsNiArNDY3MSwyNiBAQCBza2xfdXBkYXRlX3NjYWxlcihzdHJ1Y3QgaW50ZWxf Y3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSwgYm9vbCBmb3JjZV9kZXRhY2gsCj4+ICAgfQo+PiAgIAo+ PiAgIC8qKgo+PiArICogc2tsX3VwZGF0ZV9zY2FsZXJfY3J0Y180MjBfb3V0cHV0IC0gU3RhZ2Vz IHVwZGF0ZSB0byBzY2FsZXIgc3RhdGUKPj4gKyAqIGZvciBZQ0JDUjQyMCB3aGljaCBuZWVkcyBh IHNjYWxlciwgZm9yIGRvd25zYW1wbGluZy4KPj4gKyAqCj4+ICsgKiBAc3RhdGU6IGNydGMncyBz Y2FsZXIgc3RhdGUKPj4gKyAqCj4+ICsgKiBSZXR1cm4KPj4gKyAqICAgICAwIC0gc2NhbGVyX3Vz YWdlIHVwZGF0ZWQgc3VjY2Vzc2Z1bGx5Cj4+ICsgKiAgICBlcnJvciAtIHJlcXVlc3RlZCBzY2Fs aW5nIGNhbm5vdCBiZSBzdXBwb3J0ZWQgb3Igb3RoZXIgZXJyb3IgY29uZGl0aW9uCj4+ICsgKi8K Pj4gK2ludCBza2xfdXBkYXRlX3NjYWxlcl9jcnRjXzQyMF9vdXRwdXQoc3RydWN0IGludGVsX2Ny dGNfc3RhdGUgKnN0YXRlKQo+PiArewo+PiArCWNvbnN0IHN0cnVjdCBkcm1fZGlzcGxheV9tb2Rl ICptb2RlID0gJnN0YXRlLT5iYXNlLmFkanVzdGVkX21vZGU7Cj4+ICsKPj4gKwlyZXR1cm4gc2ts X3VwZGF0ZV9zY2FsZXIoc3RhdGUsICFzdGF0ZS0+YmFzZS5hY3RpdmUsCj4+ICsJCVNLTF80MjBf T1VUUFVUX0lOREVYLCAmc3RhdGUtPnNjYWxlcl9zdGF0ZS5zY2FsZXJfaWQsCj4+ICsJCXN0YXRl LT5waXBlX3NyY193LCBzdGF0ZS0+cGlwZV9zcmNfaCwKPj4gKwkJbW9kZS0+Y3J0Y19oZGlzcGxh eSwgbW9kZS0+Y3J0Y192ZGlzcGxheSk7Cj4+ICt9Cj4+ICsKPj4gKy8qKgo+PiAgICAqIHNrbF91 cGRhdGVfc2NhbGVyX2NydGMgLSBTdGFnZXMgdXBkYXRlIHRvIHNjYWxlciBzdGF0ZSBmb3IgYSBn aXZlbiBjcnRjLgo+PiAgICAqCj4+ICAgICogQHN0YXRlOiBjcnRjJ3Mgc2NhbGVyIHN0YXRlCj4+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaCBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCj4+IGluZGV4IDU5MjI0M2IuLjY4YjRmYmEgMTAwNjQ0 Cj4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCj4+ICsrKyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCj4+IEBAIC00NzEsNyArNDcxLDggQEAgc3RydWN0 IGludGVsX2NydGNfc2NhbGVyX3N0YXRlIHsKPj4gICAJICoKPj4gICAJICogICAgIElmIGEgYml0 IGlzIHNldCwgYSB1c2VyIGlzIHVzaW5nIGEgc2NhbGVyLgo+PiAgIAkgKiAgICAgSGVyZSB1c2Vy IGNhbiBiZSBhIHBsYW5lIG9yIGNydGMgYXMgZGVmaW5lZCBiZWxvdzoKPj4gLQkgKiAgICAgICBi aXRzIDAtMzAgLSBwbGFuZSAoYml0IHBvc2l0aW9uIGlzIGluZGV4IGZyb20gZHJtX3BsYW5lX2lu ZGV4KQo+PiArCSAqICAgICAgIGJpdHMgMC0yOSAtIHBsYW5lIChiaXQgcG9zaXRpb24gaXMgaW5k ZXggZnJvbSBkcm1fcGxhbmVfaW5kZXgpCj4+ICsJICogICAgICAgYml0IDMwICAgIC0gaGRtaSBv dXRwdXQKPj4gICAJICogICAgICAgYml0IDMxICAgIC0gY3J0Ywo+PiAgIAkgKgo+PiAgIAkgKiBJ bnN0ZWFkIG9mIGNyZWF0aW5nIGEgbmV3IGluZGV4IHRvIGNvdmVyIHBsYW5lcyBhbmQgY3J0Yywg dXNpbmcKPj4gQEAgLTQ4NCw2ICs0ODUsMTIgQEAgc3RydWN0IGludGVsX2NydGNfc2NhbGVyX3N0 YXRlIHsKPj4gICAJICogYXZpbGFiaWxpdHkuCj4+ICAgCSAqLwo+PiAgICNkZWZpbmUgU0tMX0NS VENfSU5ERVggMzEKPj4gKwo+PiArCS8qCj4+ICsJICogWUNCQ1IgNDIwIG91dHB1dCBjb25zdW1l IGEgc2NhbGVyLiBTbyBhZGRpbmcgYSB1c2VyCj4+ICsJICogZm9yIDQyMCBvdXRwdXQgcmVxdWly ZW1lbnQuCj4+ICsJICovCj4+ICsjZGVmaW5lIFNLTF80MjBfT1VUUFVUX0lOREVYIDMwCj4+ICAg CXVuc2lnbmVkIHNjYWxlcl91c2VyczsKPj4gICAKPj4gICAJLyogc2NhbGVyIHVzZWQgYnkgY3J0 YyBmb3IgcGFuZWwgZml0dGluZyBwdXJwb3NlICovCj4+IEBAIC0xNDgzLDYgKzE0OTAsNyBAQCB2 b2lkIGludGVsX21vZGVfZnJvbV9waXBlX2NvbmZpZyhzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAq bW9kZSwKPj4gICAJCQkJIHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpwaXBlX2NvbmZpZyk7Cj4+ ICAgCj4+ICAgaW50IHNrbF91cGRhdGVfc2NhbGVyX2NydGMoc3RydWN0IGludGVsX2NydGNfc3Rh dGUgKmNydGNfc3RhdGUpOwo+PiAraW50IHNrbF91cGRhdGVfc2NhbGVyX2NydGNfNDIwX291dHB1 dChzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqc3RhdGUpOwo+PiAgIGludCBza2xfbWF4X3NjYWxl KHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjLCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19z dGF0ZSk7Cj4+ICAgCj4+ICAgc3RhdGljIGlubGluZSB1MzIgaW50ZWxfcGxhbmVfZ2d0dF9vZmZz ZXQoY29uc3Qgc3RydWN0IGludGVsX3BsYW5lX3N0YXRlICpzdGF0ZSkKPj4gZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkbWkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2hkbWkuYwo+PiBpbmRleCAyNzZkOTE2Li45ZThkNzg0IDEwMDY0NAo+PiAtLS0gYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZG1pLmMKPj4gKysrIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfaGRtaS5jCj4+IEBAIC0xMzU1LDYgKzEzNTUsNyBAQCBpbnRlbF9oZG1pX3lj YmNyNDIwX2NvbmZpZyhzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAo+PiAgIAkJCSAg ICAgICBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY29uZmlnLAo+PiAgIAkJCSAgICAgICBpbnQg KmNsb2NrXzEyYnBjLCBpbnQgKmNsb2NrXzhicGMpCj4+ICAgewo+PiArCXN0cnVjdCBpbnRlbF9j cnRjICppbnRlbF9jcnRjID0gdG9faW50ZWxfY3J0Yyhjb25maWctPmJhc2UuY3J0Yyk7Cj4+ICAg Cj4+ICAgCWlmICghY29ubmVjdG9yLT55Y2Jjcl80MjBfYWxsb3dlZCkgewo+PiAgIAkJRFJNX0VS Uk9SKCJQbGF0Zm9ybSBkb2Vzbid0IHN1cHBvcnQgWUNCQ1I0MjAgb3V0cHV0XG4iKTsKPj4gQEAg LTEzNjYsNiArMTM2NywxNyBAQCBpbnRlbF9oZG1pX3ljYmNyNDIwX2NvbmZpZyhzdHJ1Y3QgZHJt X2Nvbm5lY3RvciAqY29ubmVjdG9yLAo+PiAgIAkqY2xvY2tfMTJicGMgLz0gMjsKPj4gICAJKmNs b2NrXzhicGMgLz0gMjsKPj4gICAJY29uZmlnLT55Y2JjcjQyMCA9IHRydWU7Cj4+ICsKPj4gKwkv KiBZQ0JDUiA0MjAgb3V0cHV0IGNvbnZlcnNpb24gbmVlZHMgYSBzY2FsZXIgKi8KPj4gKwlpZiAo c2tsX3VwZGF0ZV9zY2FsZXJfY3J0Y180MjBfb3V0cHV0KGNvbmZpZykpIHsKPj4gKwkJRFJNX0VS Uk9SKCJTY2FsZXIgYWxsb2NhdGlvbiBmb3Igb3V0cHV0IGZhaWxlZFxuIik7Cj4+ICsJCXJldHVy biBmYWxzZTsKPj4gKwl9Cj4+ICsKPj4gKwkvKiBCaW5kIHRoaXMgc2NhbGVyIHRvIHBpcGUgKi8K Pj4gKwlpbnRlbF9wY2hfcGFuZWxfZml0dGluZyhpbnRlbF9jcnRjLCBjb25maWcsCj4+ICsJCQkJ RFJNX01PREVfU0NBTEVfRlVMTFNDUkVFTik7Cj4+ICsKPj4gICAJcmV0dXJuIHRydWU7Cj4+ICAg fQo+PiAgIAo+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcGFuZWwu YyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BhbmVsLmMKPj4gaW5kZXggOTZjMmNiZC4u ZmQyZTA4MSAxMDA2NDQKPj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcGFuZWwu Ywo+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wYW5lbC5jCj4+IEBAIC0xMTAs NyArMTEwLDggQEAgaW50ZWxfcGNoX3BhbmVsX2ZpdHRpbmcoc3RydWN0IGludGVsX2NydGMgKmlu dGVsX2NydGMsCj4+ICAgCj4+ICAgCS8qIE5hdGl2ZSBtb2RlcyBkb24ndCBuZWVkIGZpdHRpbmcg Ki8KPj4gICAJaWYgKGFkanVzdGVkX21vZGUtPmNydGNfaGRpc3BsYXkgPT0gcGlwZV9jb25maWct PnBpcGVfc3JjX3cgJiYKPj4gLQkgICAgYWRqdXN0ZWRfbW9kZS0+Y3J0Y192ZGlzcGxheSA9PSBw aXBlX2NvbmZpZy0+cGlwZV9zcmNfaCkKPj4gKwkgICAgYWRqdXN0ZWRfbW9kZS0+Y3J0Y192ZGlz cGxheSA9PSBwaXBlX2NvbmZpZy0+cGlwZV9zcmNfaCAmJgo+PiArCSAgICAhcGlwZV9jb25maWct PnljYmNyNDIwKQo+PiAgIAkJZ290byBkb25lOwo+PiAgIAo+PiAgIAlzd2l0Y2ggKGZpdHRpbmdf bW9kZSkgewo+PiAtLSAKPj4gMi43LjQKPj4KPj4gX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KPj4gSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdAo+PiBJbnRlbC1n ZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCj4+IGh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3Jn L21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0 cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9s aXN0aW5mby9pbnRlbC1nZngK