From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ramalingam C Subject: [PATCH 01/10] drm: Add CP content type property Date: Tue, 26 Feb 2019 13:06:00 +0530 Message-ID: <1551166569-19683-2-git-send-email-ramalingam.c@intel.com> References: <1551166569-19683-1-git-send-email-ramalingam.c@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1551166569-19683-1-git-send-email-ramalingam.c@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, daniel.vetter@ffwll.ch, uma.shankar@intel.com List-Id: intel-gfx@lists.freedesktop.org VGhpcyBwYXRjaCBhZGRzIGEgRFJNIEVOVU0gcHJvcGVydHkgdG8gdGhlIHNlbGVjdGVkIGNvbm5l Y3RvcnMuClRoaXMgcHJvcGVydHkgaXMgdXNlZCBmb3IgcGFzcyB0aGUgcHJvdGVjdGVkIGNvbnRl bnQncyB0eXBlCmZyb20gdXNlcnNwYWNlIHRvIGtlcm5lbCBIRENQIGF1dGhlbnRpY2F0aW9uLgoK VHlwZSBvZiB0aGUgc3RyZWFtIGlzIGRlY2lkZWQgYnkgdGhlIHByb3RlY3RlZCBjb250ZW50IHBy b3ZpZGVycyBhcwpUeXBlIDAvMS4KClR5cGUgMCBjb250ZW50IGNhbiBiZSByZW5kZXJlZCBvbiBh bnkgSERDUCBwcm90ZWN0ZWQgZGlzcGxheSB3aXJlcy4KQnV0IFR5cGUgMSBjb250ZW50IGNhbiBi ZSByZW5kZXJlZCBvbmx5IG9uIEhEQ1AyLjIgcHJvdGVjdGVkIHBhdGhzLgoKU28gdXBvbiBhIGNv bnRlbnQgcHJvdGVjdGlvbiByZXF1ZXN0IHdpdGggVHlwZSAxIGFzIENvbnRlbnQgdHlwZSBmcm9t CnVzZXJzcGFjZSwgS2VybmVsIHdpbGwgZGVjbGFyZSBzdWNjZXNzIG9ubHkgaWYgdGhlIEhEQ1Ay LjIKYXV0aGVudGljYXRpb24gaXMgc3VjY2Vzc2Z1bC4KClNpZ25lZC1vZmYtYnk6IFJhbWFsaW5n YW0gQyA8cmFtYWxpbmdhbS5jQGludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vZHJtX2F0 b21pY191YXBpLmMgfCAxMCArKysrKysKIGRyaXZlcnMvZ3B1L2RybS9kcm1fY29ubmVjdG9yLmMg ICB8IDY0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogaW5jbHVkZS9k cm0vZHJtX2Nvbm5lY3Rvci5oICAgICAgIHwgMTUgKysrKysrKysrCiBpbmNsdWRlL3VhcGkvZHJt L2RybV9tb2RlLmggICAgICAgfCAgNCArKysKIDQgZmlsZXMgY2hhbmdlZCwgOTMgaW5zZXJ0aW9u cygrKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX3VhcGkuYyBiL2Ry aXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX3VhcGkuYwppbmRleCA0ZWI4MWYxMGJjNTQuLjUyODk0 ODY1NjVjZSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfdWFwaS5jCisr KyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX3VhcGkuYwpAQCAtNzQ2LDYgKzc0NiwxNCBA QCBzdGF0aWMgaW50IGRybV9hdG9taWNfY29ubmVjdG9yX3NldF9wcm9wZXJ0eShzdHJ1Y3QgZHJt X2Nvbm5lY3RvciAqY29ubmVjdG9yLAogCQkJcmV0dXJuIC1FSU5WQUw7CiAJCX0KIAkJc3RhdGUt PmNvbnRlbnRfcHJvdGVjdGlvbiA9IHZhbDsKKwl9IGVsc2UgaWYgKHByb3BlcnR5ID09IGNvbm5l Y3Rvci0+Y3BfY29udGVudF90eXBlX3Byb3BlcnR5KSB7CisJCWlmIChzdGF0ZS0+Y29udGVudF9w cm90ZWN0aW9uICE9CisJCSAgICBEUk1fTU9ERV9DT05URU5UX1BST1RFQ1RJT05fVU5ERVNJUkVE ICYmCisJCSAgICBzdGF0ZS0+Y3BfY29udGVudF90eXBlICE9IHZhbCkgeworCQkJRFJNX0RFQlVH X0tNUygiRGlzYWJsZSBDUCwgdGhlbiBjaGFuZ2UgVHlwZVxuIik7CisJCQlyZXR1cm4gLUVJTlZB TDsKKwkJfQorCQlzdGF0ZS0+Y3BfY29udGVudF90eXBlID0gdmFsOwogCX0gZWxzZSBpZiAocHJv cGVydHkgPT0gY29ubmVjdG9yLT5jb2xvcnNwYWNlX3Byb3BlcnR5KSB7CiAJCXN0YXRlLT5jb2xv cnNwYWNlID0gdmFsOwogCX0gZWxzZSBpZiAocHJvcGVydHkgPT0gY29uZmlnLT53cml0ZWJhY2tf ZmJfaWRfcHJvcGVydHkpIHsKQEAgLTgyMiw2ICs4MzAsOCBAQCBkcm1fYXRvbWljX2Nvbm5lY3Rv cl9nZXRfcHJvcGVydHkoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwKIAkJKnZhbCA9 IHN0YXRlLT5zY2FsaW5nX21vZGU7CiAJfSBlbHNlIGlmIChwcm9wZXJ0eSA9PSBjb25uZWN0b3It PmNvbnRlbnRfcHJvdGVjdGlvbl9wcm9wZXJ0eSkgewogCQkqdmFsID0gc3RhdGUtPmNvbnRlbnRf cHJvdGVjdGlvbjsKKwl9IGVsc2UgaWYgKHByb3BlcnR5ID09IGNvbm5lY3Rvci0+Y3BfY29udGVu dF90eXBlX3Byb3BlcnR5KSB7CisJCSp2YWwgPSBzdGF0ZS0+Y3BfY29udGVudF90eXBlOwogCX0g ZWxzZSBpZiAocHJvcGVydHkgPT0gY29uZmlnLT53cml0ZWJhY2tfZmJfaWRfcHJvcGVydHkpIHsK IAkJLyogV3JpdGViYWNrIGZyYW1lYnVmZmVyIGlzIG9uZS1zaG90LCB3cml0ZSBhbmQgZm9yZ2V0 ICovCiAJCSp2YWwgPSAwOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9jb25uZWN0 b3IuYyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fY29ubmVjdG9yLmMKaW5kZXggMDdkNjVhMTZjNjIz Li41ZDc3MzhlMWU5NzcgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fY29ubmVjdG9y LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9jb25uZWN0b3IuYwpAQCAtODUzLDYgKzg1Mywx MyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9wcm9wX2VudW1fbGlzdCBoZG1pX2NvbG9yc3Bh Y2VzW10gPSB7CiAJeyBEUk1fTU9ERV9DT0xPUklNRVRSWV9EQ0lfUDNfUkdCX1RIRUFURVIsICJE Q0ktUDNfUkdCX1RoZWF0ZXIiIH0sCiB9OwogCitzdGF0aWMgc3RydWN0IGRybV9wcm9wX2VudW1f bGlzdCBkcm1fY3BfY29udGVudF90eXBlX2VudW1fbGlzdFtdID0geworCXsgRFJNX01PREVfQ1Bf Q09OVEVOVF9UWVBFMCwgIlR5cGUgMCIgfSwKKwl7IERSTV9NT0RFX0NQX0NPTlRFTlRfVFlQRTEs ICJUeXBlIDEiIH0sCit9OworCitEUk1fRU5VTV9OQU1FX0ZOKGRybV9nZXRfY3BfY29udGVudF90 eXBlX25hbWUsIGRybV9jcF9jb250ZW50X3R5cGVfZW51bV9saXN0KQorCiAvKioKICAqIERPQzog c3RhbmRhcmQgY29ubmVjdG9yIHByb3BlcnRpZXMKICAqCkBAIC05NTgsNiArOTY1LDI1IEBAIHN0 YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX3Byb3BfZW51bV9saXN0IGhkbWlfY29sb3JzcGFjZXNbXSA9 IHsKICAqCSAgdGhlIHZhbHVlIHRyYW5zaXRpb25zIGZyb20gRU5BQkxFRCB0byBERVNJUkVELiBU aGlzIHNpZ25pZmllcyB0aGUgbGluawogICoJICBpcyBubyBsb25nZXIgcHJvdGVjdGVkIGFuZCB1 c2Vyc3BhY2Ugc2hvdWxkIHRha2UgYXBwcm9wcmlhdGUgYWN0aW9uCiAgKgkgICh3aGF0ZXZlciB0 aGF0IG1pZ2h0IGJlKS4KKyAqIENQX0NvbnRlbnRfVHlwZToKKyAqCVRoaXMgcHJvcGVydHkgaXMg dXNlZCBieSB0aGUgdXNlcnNwYWNlIHRvIGNvbmZpZ3VyZSB0aGUga2VybmVsIHdpdGgKKyAqCXVw Y29taW5nIHN0cmVhbSdzIGNvbnRlbnQgdHlwZS4gQ29udGVudCBUeXBlIG9mIGEgc3RyZWFtIGlz IGRlY2lkZWQgYnkKKyAqCXRoZSBvd25lciBvZiB0aGUgc3RyZWFtLCBhcyBUeXBlIDAgb3IgVHlw ZSAxLgorICoKKyAqCVRoZSB2YWx1ZSBvZiB0aGUgcHJvcGVydHkgY2FuIGJlIG9uZSB0aGUgYmVs b3c6CisgKgkgIC0gRFJNX01PREVfQ1BfQ09OVEVOVF9UWVBFMCA9IDAKKyAqCQlUeXBlIDAgc3Ry ZWFtcyBjYW4gYmUgdHJhbnNtaXR0ZWQgb24gYSBsaW5rIHdoaWNoIGlzIGVuY3J5cHRlZAorICoJ CXdpdGggSERDUCAxLjQgb3IgSERDUCAyLjIuCisgKgkgIC0gRFJNX01PREVfQ1BfQ09OVEVOVF9U WVBFMSA9IDEKKyAqCQlUeXBlIDEgc3RyZWFtcyBjYW4gYmUgdHJhbnNtaXR0ZWQgb24gYSBsaW5r IHdoaWNoIGlzIGVuY3J5cHRlZAorICoJCW9ubHkgd2l0aCBIRENQMi4yLgorICoKKyAqCVBsZWFz ZSBub3RlIHRoaXMgY29udGVudCB0eXBlIGlzIGludHJvZHVjZWQgYXQgSERDUDIuMiBhbmQgdXNl ZCBpbiBpdHMKKyAqCWF1dGhlbnRpY2F0aW9uIHByb2Nlc3MuCisgKgorICoJR3VpZGVsaW5lIGZv ciBwcm9ncmFtbWluZzoKKyAqCSAgLSBQcm9wZXJ0eSBzdGF0ZSBjYW4gYmUgY2hhbmdlZCBvbmx5 IHdoZW4gIkNvbnRlbnQgUHJvdGVjdGlvbiBzdGF0ZSBpcworICoJCURSTV9NT0RFX0NPTlRFTlRf UFJPVEVDVElPTl9VTkRFU0lSRUQuCiAgKgogICogbWF4IGJwYzoKICAqCVRoaXMgcmFuZ2UgcHJv cGVydHkgaXMgdXNlZCBieSB1c2Vyc3BhY2UgdG8gbGltaXQgdGhlIGJpdCBkZXB0aC4gV2hlbgpA QCAtMTU0OCw2ICsxNTc0LDQ0IEBAIGludCBkcm1fY29ubmVjdG9yX2F0dGFjaF9jb250ZW50X3By b3RlY3Rpb25fcHJvcGVydHkoCiBFWFBPUlRfU1lNQk9MKGRybV9jb25uZWN0b3JfYXR0YWNoX2Nv bnRlbnRfcHJvdGVjdGlvbl9wcm9wZXJ0eSk7CiAKIC8qKgorICogZHJtX2Nvbm5lY3Rvcl9hdHRh Y2hfY3BfY29udGVudF90eXBlX3Byb3BlcnR5IC0gYXR0YWNoIGNwIGNvbnRlbnQgdHlwZQorICog cHJvcGVydHkKKyAqCisgKiBAY29ubmVjdG9yOiBjb25uZWN0b3IgdG8gYXR0YWNoIGNwIGNvbnRl bnQgdHlwZSBwcm9wZXJ0eSBvbi4KKyAqCisgKiBUaGlzIGlzIHVzZWQgdG8gYWRkIHN1cHBvcnQg Zm9yIHNlbmRpbmcgdGhlIHByb3RlY3RlZCBjb250ZW50J3Mgc3RyZWFtIHR5cGUKKyAqIGZyb20g dXNlcnNwYWNlIHRvIGtlcm5lbCBvbiBzZWxlY3RlZCBjb25uZWN0b3JzLiBQcm90ZWN0ZWQgY29u dGVudCBwcm92aWRlcgorICogd2lsbCBkZWNpZGUgdGhlaXIgdHlwZSBvZiB0aGVpciBjb250ZW50 IGFuZCBkZWNsYXJlIHRoZSBzYW1lIHRvIGtlcm5lbC4KKyAqCisgKiBUaGlzIGluZm9ybWF0aW9u IHdpbGwgYmUgdXNlZCBkdXJpbmcgdGhlIEhEQ1AyLjIgYXV0aGVudGljYXRpb24uCisgKgorICog Q29udGVudCB0eXBlIHdpbGwgYmUgc2V0IHRvICZkcm1fY29ubmVjdG9yX3N0YXRlLmNwX2NvbnRl bnRfdHlwZS4KKyAqCisgKiBSZXR1cm5zOgorICogWmVybyBvbiBzdWNjZXNzLCBuZWdhdGl2ZSBl cnJubyBvbiBmYWlsdXJlLgorICovCitpbnQKK2RybV9jb25uZWN0b3JfYXR0YWNoX2NwX2NvbnRl bnRfdHlwZV9wcm9wZXJ0eShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKQoreworCXN0 cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBjb25uZWN0b3ItPmRldjsKKwlzdHJ1Y3QgZHJtX3Byb3Bl cnR5ICpwcm9wOworCisJcHJvcCA9IGRybV9wcm9wZXJ0eV9jcmVhdGVfZW51bShkZXYsIDAsICJD UF9Db250ZW50X1R5cGUiLAorCQkJCQlkcm1fY3BfY29udGVudF90eXBlX2VudW1fbGlzdCwKKwkJ CQkJQVJSQVlfU0laRSgKKwkJCQkJZHJtX2NwX2NvbnRlbnRfdHlwZV9lbnVtX2xpc3QpKTsKKwlp ZiAoIXByb3ApCisJCXJldHVybiAtRU5PTUVNOworCisJZHJtX29iamVjdF9hdHRhY2hfcHJvcGVy dHkoJmNvbm5lY3Rvci0+YmFzZSwgcHJvcCwKKwkJCQkgICBEUk1fTU9ERV9DUF9DT05URU5UX1RZ UEUwKTsKKwljb25uZWN0b3ItPmNwX2NvbnRlbnRfdHlwZV9wcm9wZXJ0eSA9IHByb3A7CisKKwly ZXR1cm4gMDsKK30KK0VYUE9SVF9TWU1CT0woZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfY3BfY29udGVu dF90eXBlX3Byb3BlcnR5KTsKKworLyoqCiAgKiBkcm1fbW9kZV9jcmVhdGVfYXNwZWN0X3JhdGlv X3Byb3BlcnR5IC0gY3JlYXRlIGFzcGVjdCByYXRpbyBwcm9wZXJ0eQogICogQGRldjogRFJNIGRl dmljZQogICoKZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2RybV9jb25uZWN0b3IuaCBiL2luY2x1 ZGUvZHJtL2RybV9jb25uZWN0b3IuaAppbmRleCBjODA2MTk5MmQ2Y2IuLjgyMGZlYjdmMGI0MiAx MDA2NDQKLS0tIGEvaW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rvci5oCisrKyBiL2luY2x1ZGUvZHJt L2RybV9jb25uZWN0b3IuaApAQCAtNTE5LDYgKzUxOSwxMiBAQCBzdHJ1Y3QgZHJtX2Nvbm5lY3Rv cl9zdGF0ZSB7CiAJdW5zaWduZWQgaW50IGNvbnRlbnRfdHlwZTsKIAogCS8qKgorCSAqIEBjcF9j b250ZW50X3R5cGU6IENvbm5lY3RvciBwcm9wZXJ0eSB0byBwYXNzIHRoZSB0eXBlIG9mIHByb3Rl Y3RlZAorCSAqIGNvbnRlbnQuIFRoaXMgaXMgbW9zdCBjb21tb25seSB1c2VkIGZvciBIRENQLgor CSAqLworCXVuc2lnbmVkIGludCBjcF9jb250ZW50X3R5cGU7CisKKwkvKioKIAkgKiBAc2NhbGlu Z19tb2RlOiBDb25uZWN0b3IgcHJvcGVydHkgdG8gY29udHJvbCB0aGUKIAkgKiB1cHNjYWxpbmcs IG1vc3RseSB1c2VkIGZvciBidWlsdC1pbiBwYW5lbHMuCiAJICovCkBAIC0xMDM2LDYgKzEwNDIs MTIgQEAgc3RydWN0IGRybV9jb25uZWN0b3IgewogCXN0cnVjdCBkcm1fcHJvcGVydHkgKmNvbG9y c3BhY2VfcHJvcGVydHk7CiAKIAkvKioKKwkgKiBAY3BfY29udGVudF90eXBlX3Byb3BlcnR5OiBE Uk0gRU5VTSBwcm9wZXJ0eSBmb3IgdHlwZSBvZgorCSAqIFByb3RlY3RlZCBDb250ZW50LgorCSAq LworCXN0cnVjdCBkcm1fcHJvcGVydHkgKmNwX2NvbnRlbnRfdHlwZV9wcm9wZXJ0eTsKKworCS8q KgogCSAqIEBwYXRoX2Jsb2JfcHRyOgogCSAqCiAJICogRFJNIGJsb2IgcHJvcGVydHkgZGF0YSBm b3IgdGhlIERQIE1TVCBwYXRoIHByb3BlcnR5LiBUaGlzIHNob3VsZCBvbmx5CkBAIC0xMjk0LDYg KzEzMDYsNyBAQCBjb25zdCBjaGFyICpkcm1fZ2V0X2R2aV9pX3NlbGVjdF9uYW1lKGludCB2YWwp OwogY29uc3QgY2hhciAqZHJtX2dldF90dl9zdWJjb25uZWN0b3JfbmFtZShpbnQgdmFsKTsKIGNv bnN0IGNoYXIgKmRybV9nZXRfdHZfc2VsZWN0X25hbWUoaW50IHZhbCk7CiBjb25zdCBjaGFyICpk cm1fZ2V0X2NvbnRlbnRfcHJvdGVjdGlvbl9uYW1lKGludCB2YWwpOworY29uc3QgY2hhciAqZHJt X2dldF9jcF9jb250ZW50X3R5cGVfbmFtZShpbnQgdmFsKTsKIAogaW50IGRybV9tb2RlX2NyZWF0 ZV9kdmlfaV9wcm9wZXJ0aWVzKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpOwogaW50IGRybV9tb2Rl X2NyZWF0ZV90dl9tYXJnaW5fcHJvcGVydGllcyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKQEAg LTEzMDksNiArMTMyMiw4IEBAIGludCBkcm1fY29ubmVjdG9yX2F0dGFjaF92cnJfY2FwYWJsZV9w cm9wZXJ0eSgKIAkJc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3Rvcik7CiBpbnQgZHJtX2Nv bm5lY3Rvcl9hdHRhY2hfY29udGVudF9wcm90ZWN0aW9uX3Byb3BlcnR5KAogCQlzdHJ1Y3QgZHJt X2Nvbm5lY3RvciAqY29ubmVjdG9yKTsKK2ludCBkcm1fY29ubmVjdG9yX2F0dGFjaF9jcF9jb250 ZW50X3R5cGVfcHJvcGVydHkoCisJCXN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpOwog aW50IGRybV9tb2RlX2NyZWF0ZV9hc3BlY3RfcmF0aW9fcHJvcGVydHkoc3RydWN0IGRybV9kZXZp Y2UgKmRldik7CiBpbnQgZHJtX21vZGVfY3JlYXRlX2NvbG9yc3BhY2VfcHJvcGVydHkoc3RydWN0 IGRybV9jb25uZWN0b3IgKmNvbm5lY3Rvcik7CiBpbnQgZHJtX21vZGVfY3JlYXRlX2NvbnRlbnRf dHlwZV9wcm9wZXJ0eShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKZGlmZiAtLWdpdCBhL2luY2x1 ZGUvdWFwaS9kcm0vZHJtX21vZGUuaCBiL2luY2x1ZGUvdWFwaS9kcm0vZHJtX21vZGUuaAppbmRl eCBhNDM5YzJlNjc4OTYuLjg1MDRlMzExMGUxOSAxMDA2NDQKLS0tIGEvaW5jbHVkZS91YXBpL2Ry bS9kcm1fbW9kZS5oCisrKyBiL2luY2x1ZGUvdWFwaS9kcm0vZHJtX21vZGUuaApAQCAtMjEwLDYg KzIxMCwxMCBAQCBleHRlcm4gIkMiIHsKICNkZWZpbmUgRFJNX01PREVfQ09OVEVOVF9QUk9URUNU SU9OX0RFU0lSRUQgICAgIDEKICNkZWZpbmUgRFJNX01PREVfQ09OVEVOVF9QUk9URUNUSU9OX0VO QUJMRUQgICAgIDIKIAorLyogQ29udGVudCBUeXBlIGNsYXNzaWZpY2F0aW9uIGZvciBIRENQMi4y IHZzIG90aGVycyAqLworI2RlZmluZSBEUk1fTU9ERV9DUF9DT05URU5UX1RZUEUwCQkwCisjZGVm aW5lIERSTV9NT0RFX0NQX0NPTlRFTlRfVFlQRTEJCTEKKwogc3RydWN0IGRybV9tb2RlX21vZGVp bmZvIHsKIAlfX3UzMiBjbG9jazsKIAlfX3UxNiBoZGlzcGxheTsKLS0gCjIuNy40CgpfX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGlu ZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVl ZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZng=