From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mika Kahola Subject: [PATCH] drm/i915: Generalize definition for crtc mask Date: Tue, 5 Dec 2017 12:15:39 +0200 Message-ID: <1512468939-3262-1-git-send-email-mika.kahola@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by gabe.freedesktop.org (Postfix) with ESMTPS id 04A716E4B8 for ; Tue, 5 Dec 2017 10:21:05 +0000 (UTC) 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 List-Id: intel-gfx@lists.freedesktop.org Y3J0Y19tYXNrIGlzIGRlZmluZWQgZXhwbGljaXRseSBkZWZpbmVkIGZvciBhIGNlcnRhaW4gbnVt YmVyIG9mIHBpcGVzIHBlcgpwbGF0Zm9ybS4gTGV0J3MgZ2VuZXJhbGl6ZSB0aGlzIGluIGEgd2F5 IHRoYXQgY3J0Y19tYXNrIGRlcGVuZGVucyBvbmx5IG9uCnRoZSBudW1iZXIgb2YgcGlwZXMgZGVm aW5lZCBpbiBkZXZpY2UgaW5mby4KClNpZ25lZC1vZmYtYnk6IE1pa2EgS2Fob2xhIDxtaWthLmth aG9sYUBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfY3J0LmMgIHwg IDkgKysrKysrLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZGkuYyAgfCAgNSArKysr LQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHAuYyAgIHwgMTIgKysrKysrKystLS0tCiBk cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZG1pLmMgfCAgNCArKystCiBkcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9sdmRzLmMgfCAxMiArKysrKysrLS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX3Nkdm8uYyB8ICA1ICsrKystCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF90 di5jICAgfCAgNiArKysrKy0KIDcgZmlsZXMgY2hhbmdlZCwgMzcgaW5zZXJ0aW9ucygrKSwgMTYg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfY3J0 LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9jcnQuYwppbmRleCA5ZjMxYWVhLi4zNGY2 NWI1IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9jcnQuYworKysgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9jcnQuYwpAQCAtOTAzLDYgKzkwMyw3IEBAIHZvaWQg aW50ZWxfY3J0X2luaXQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogCXN0cnVj dCBpbnRlbF9jb25uZWN0b3IgKmludGVsX2Nvbm5lY3RvcjsKIAlpOTE1X3JlZ190IGFkcGFfcmVn OwogCXUzMiBhZHBhOworCWVudW0gcGlwZSBwaXBlOwogCiAJaWYgKEhBU19QQ0hfU1BMSVQoZGV2 X3ByaXYpKQogCQlhZHBhX3JlZyA9IFBDSF9BRFBBOwpAQCAtOTUwLDEwICs5NTEsMTIgQEAgdm9p ZCBpbnRlbF9jcnRfaW5pdChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiAKIAlj cnQtPmJhc2UudHlwZSA9IElOVEVMX09VVFBVVF9BTkFMT0c7CiAJY3J0LT5iYXNlLmNsb25lYWJs ZSA9ICgxIDw8IElOVEVMX09VVFBVVF9EVk8pIHwgKDEgPDwgSU5URUxfT1VUUFVUX0hETUkpOwot CWlmIChJU19JODMwKGRldl9wcml2KSkKKwlpZiAoSVNfSTgzMChkZXZfcHJpdikpIHsKIAkJY3J0 LT5iYXNlLmNydGNfbWFzayA9ICgxIDw8IDApOwotCWVsc2UKLQkJY3J0LT5iYXNlLmNydGNfbWFz ayA9ICgxIDw8IDApIHwgKDEgPDwgMSkgfCAoMSA8PCAyKTsKKwl9IGVsc2UgeworCQlmb3JfZWFj aF9waXBlKGRldl9wcml2LCBwaXBlKQorCQkJY3J0LT5iYXNlLmNydGNfbWFzayB8PSAoMSA8PCBw aXBlKTsKKwl9CiAKIAlpZiAoSVNfR0VOMihkZXZfcHJpdikpCiAJCWNvbm5lY3Rvci0+aW50ZXJs YWNlX2FsbG93ZWQgPSAwOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf ZGRpLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZGkuYwppbmRleCBlZmYzYjUxLi45 MzIwNTQyIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZGkuYworKysg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZGkuYwpAQCAtMjc2Niw2ICsyNzY2LDcgQEAg dm9pZCBpbnRlbF9kZGlfaW5pdChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIGVu dW0gcG9ydCBwb3J0KQogCXN0cnVjdCBkcm1fZW5jb2RlciAqZW5jb2RlcjsKIAlib29sIGluaXRf aGRtaSwgaW5pdF9kcCwgaW5pdF9sc3Bjb24gPSBmYWxzZTsKIAlpbnQgbWF4X2xhbmVzOworCWVu dW0gcGlwZSBwaXBlOwogCiAJaWYgKEk5MTVfUkVBRChERElfQlVGX0NUTChQT1JUX0EpKSAmIERE SV9BXzRfTEFORVMpIHsKIAkJc3dpdGNoIChwb3J0KSB7CkBAIC0yODg0LDkgKzI4ODUsMTEgQEAg dm9pZCBpbnRlbF9kZGlfaW5pdChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIGVu dW0gcG9ydCBwb3J0KQogCWludGVsX2VuY29kZXItPnR5cGUgPSBJTlRFTF9PVVRQVVRfRERJOwog CWludGVsX2VuY29kZXItPnBvd2VyX2RvbWFpbiA9IGludGVsX3BvcnRfdG9fcG93ZXJfZG9tYWlu KHBvcnQpOwogCWludGVsX2VuY29kZXItPnBvcnQgPSBwb3J0OwotCWludGVsX2VuY29kZXItPmNy dGNfbWFzayA9ICgxIDw8IDApIHwgKDEgPDwgMSkgfCAoMSA8PCAyKTsKIAlpbnRlbF9lbmNvZGVy LT5jbG9uZWFibGUgPSAwOwogCisJZm9yX2VhY2hfcGlwZShkZXZfcHJpdiwgcGlwZSkKKwkJaW50 ZWxfZW5jb2Rlci0+Y3J0Y19tYXNrIHw9ICgxIDw8IHBpcGUpOworCiAJaW50ZWxfaW5mb2ZyYW1l X2luaXQoaW50ZWxfZGlnX3BvcnQpOwogCiAJaWYgKGluaXRfZHApIHsKZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9kcC5jCmluZGV4IDk1NzczNWMuLjM3YmE5MGQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2RwLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHAuYwpA QCAtNjEzOSw2ICs2MTM5LDcgQEAgYm9vbCBpbnRlbF9kcF9pbml0KHN0cnVjdCBkcm1faTkxNV9w cml2YXRlICpkZXZfcHJpdiwKIAlzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqaW50ZWxfZW5jb2RlcjsK IAlzdHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29kZXI7CiAJc3RydWN0IGludGVsX2Nvbm5lY3RvciAq aW50ZWxfY29ubmVjdG9yOworCWVudW0gcGlwZSBwaXBlOwogCiAJaW50ZWxfZGlnX3BvcnQgPSBr emFsbG9jKHNpemVvZigqaW50ZWxfZGlnX3BvcnQpLCBHRlBfS0VSTkVMKTsKIAlpZiAoIWludGVs X2RpZ19wb3J0KQpAQCAtNjE5MCwxMiArNjE5MSwxNSBAQCBib29sIGludGVsX2RwX2luaXQoc3Ry dWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogCWludGVsX2VuY29kZXItPnR5cGUgPSBJ TlRFTF9PVVRQVVRfRFA7CiAJaW50ZWxfZW5jb2Rlci0+cG93ZXJfZG9tYWluID0gaW50ZWxfcG9y dF90b19wb3dlcl9kb21haW4ocG9ydCk7CiAJaWYgKElTX0NIRVJSWVZJRVcoZGV2X3ByaXYpKSB7 Ci0JCWlmIChwb3J0ID09IFBPUlRfRCkKKwkJaWYgKHBvcnQgPT0gUE9SVF9EKSB7CiAJCQlpbnRl bF9lbmNvZGVyLT5jcnRjX21hc2sgPSAxIDw8IDI7Ci0JCWVsc2UKLQkJCWludGVsX2VuY29kZXIt PmNydGNfbWFzayA9ICgxIDw8IDApIHwgKDEgPDwgMSk7CisJCX0gZWxzZSB7CisJCQlmb3JfZWFj aF9waXBlKGRldl9wcml2LCBwaXBlKQorCQkJCWludGVsX2VuY29kZXItPmNydGNfbWFzayB8PSAo MSA8PCBwaXBlKTsKKwkJfQogCX0gZWxzZSB7Ci0JCWludGVsX2VuY29kZXItPmNydGNfbWFzayA9 ICgxIDw8IDApIHwgKDEgPDwgMSkgfCAoMSA8PCAyKTsKKwkJZm9yX2VhY2hfcGlwZShkZXZfcHJp diwgcGlwZSkKKwkJCWludGVsX2VuY29kZXItPmNydGNfbWFzayB8PSAoMSA8PCBwaXBlKTsKIAl9 CiAJaW50ZWxfZW5jb2Rlci0+Y2xvbmVhYmxlID0gMDsKIAlpbnRlbF9lbmNvZGVyLT5wb3J0ID0g cG9ydDsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkbWkuYyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkbWkuYwppbmRleCBhNDBmMzVhLi40MzU4NGQ5IDEw MDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZG1pLmMKKysrIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfaGRtaS5jCkBAIC0yMDcyLDYgKzIwNzIsNyBAQCB2b2lkIGlu dGVsX2hkbWlfaW5pdChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAJc3RydWN0 IGludGVsX2RpZ2l0YWxfcG9ydCAqaW50ZWxfZGlnX3BvcnQ7CiAJc3RydWN0IGludGVsX2VuY29k ZXIgKmludGVsX2VuY29kZXI7CiAJc3RydWN0IGludGVsX2Nvbm5lY3RvciAqaW50ZWxfY29ubmVj dG9yOworCWVudW0gcGlwZSBwaXBlOwogCiAJaW50ZWxfZGlnX3BvcnQgPSBremFsbG9jKHNpemVv ZigqaW50ZWxfZGlnX3BvcnQpLCBHRlBfS0VSTkVMKTsKIAlpZiAoIWludGVsX2RpZ19wb3J0KQpA QCAtMjEyOCw3ICsyMTI5LDggQEAgdm9pZCBpbnRlbF9oZG1pX2luaXQoc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2LAogCQllbHNlCiAJCQlpbnRlbF9lbmNvZGVyLT5jcnRjX21hc2sg PSAoMSA8PCAwKSB8ICgxIDw8IDEpOwogCX0gZWxzZSB7Ci0JCWludGVsX2VuY29kZXItPmNydGNf bWFzayA9ICgxIDw8IDApIHwgKDEgPDwgMSkgfCAoMSA8PCAyKTsKKwkJZm9yX2VhY2hfcGlwZShk ZXZfcHJpdiwgcGlwZSkKKwkJCWludGVsX2VuY29kZXItPmNydGNfbWFzayB8PSAoMSA8PCBwaXBl KTsKIAl9CiAJaW50ZWxfZW5jb2Rlci0+Y2xvbmVhYmxlID0gMSA8PCBJTlRFTF9PVVRQVVRfQU5B TE9HOwogCS8qCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9sdmRzLmMg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9sdmRzLmMKaW5kZXggZWY4MDQ5OS4uMzZlYWI4 NiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHZkcy5jCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2x2ZHMuYwpAQCAtOTQ1LDYgKzk0NSw3IEBAIHZvaWQg aW50ZWxfbHZkc19pbml0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIAl1MzIg bHZkczsKIAl1OCBwaW47CiAJdTMyIGFsbG93ZWRfc2NhbGVyczsKKwllbnVtIHBpcGUgcGlwZTsK IAogCWlmICghaW50ZWxfbHZkc19zdXBwb3J0ZWQoZGV2X3ByaXYpKQogCQlyZXR1cm47CkBAIC0x MDI1LDEzICsxMDI2LDE0IEBAIHZvaWQgaW50ZWxfbHZkc19pbml0KHN0cnVjdCBkcm1faTkxNV9w cml2YXRlICpkZXZfcHJpdikKIAlpbnRlbF9lbmNvZGVyLT5wb3dlcl9kb21haW4gPSBQT1dFUl9E T01BSU5fUE9SVF9PVEhFUjsKIAlpbnRlbF9lbmNvZGVyLT5wb3J0ID0gUE9SVF9OT05FOwogCWlu dGVsX2VuY29kZXItPmNsb25lYWJsZSA9IDA7Ci0JaWYgKEhBU19QQ0hfU1BMSVQoZGV2X3ByaXYp KQotCQlpbnRlbF9lbmNvZGVyLT5jcnRjX21hc2sgPSAoMSA8PCAwKSB8ICgxIDw8IDEpIHwgKDEg PDwgMik7Ci0JZWxzZSBpZiAoSVNfR0VONChkZXZfcHJpdikpCisJaWYgKEhBU19QQ0hfU1BMSVQo ZGV2X3ByaXYpKSB7CisJCWZvcl9lYWNoX3BpcGUoZGV2X3ByaXYsIHBpcGUpCisJCQlpbnRlbF9l bmNvZGVyLT5jcnRjX21hc2sgfD0gKDEgPDwgcGlwZSk7CisJfSBlbHNlIGlmIChJU19HRU40KGRl dl9wcml2KSkgewogCQlpbnRlbF9lbmNvZGVyLT5jcnRjX21hc2sgPSAoMSA8PCAwKSB8ICgxIDw8 IDEpOwotCWVsc2UKKwl9IGVsc2UgewogCQlpbnRlbF9lbmNvZGVyLT5jcnRjX21hc2sgPSAoMSA8 PCAxKTsKLQorCX0KIAlkcm1fY29ubmVjdG9yX2hlbHBlcl9hZGQoY29ubmVjdG9yLCAmaW50ZWxf bHZkc19jb25uZWN0b3JfaGVscGVyX2Z1bmNzKTsKIAljb25uZWN0b3ItPmRpc3BsYXlfaW5mby5z dWJwaXhlbF9vcmRlciA9IFN1YlBpeGVsSG9yaXpvbnRhbFJHQjsKIAljb25uZWN0b3ItPmludGVy bGFjZV9hbGxvd2VkID0gZmFsc2U7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9zZHZvLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9zZHZvLmMKaW5kZXggMmI4 NzY0OC4uYWMyN2ZiOSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc2R2 by5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3Nkdm8uYwpAQCAtMjY5Nyw3ICsy Njk3LDYgQEAgaW50ZWxfc2R2b19vdXRwdXRfc2V0dXAoc3RydWN0IGludGVsX3Nkdm8gKmludGVs X3Nkdm8sIHVpbnQxNl90IGZsYWdzKQogCQkJICAgICAgYnl0ZXNbMF0sIGJ5dGVzWzFdKTsKIAkJ cmV0dXJuIGZhbHNlOwogCX0KLQlpbnRlbF9zZHZvLT5iYXNlLmNydGNfbWFzayA9ICgxIDw8IDAp IHwgKDEgPDwgMSkgfCAoMSA8PCAyKTsKIAogCXJldHVybiB0cnVlOwogfQpAQCAtMzAxOCw2ICsz MDE3LDcgQEAgYm9vbCBpbnRlbF9zZHZvX2luaXQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRl dl9wcml2LAogCXN0cnVjdCBpbnRlbF9lbmNvZGVyICppbnRlbF9lbmNvZGVyOwogCXN0cnVjdCBp bnRlbF9zZHZvICppbnRlbF9zZHZvOwogCWludCBpOworCWVudW0gcGlwZSBwaXBlOwogCiAJYXNz ZXJ0X3Nkdm9fcG9ydF92YWxpZChkZXZfcHJpdiwgcG9ydCk7CiAKQEAgLTMwNjUsNiArMzA2NSw5 IEBAIGJvb2wgaW50ZWxfc2R2b19pbml0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJp diwKIAlpbnRlbF9lbmNvZGVyLT5nZXRfaHdfc3RhdGUgPSBpbnRlbF9zZHZvX2dldF9od19zdGF0 ZTsKIAlpbnRlbF9lbmNvZGVyLT5nZXRfY29uZmlnID0gaW50ZWxfc2R2b19nZXRfY29uZmlnOwog CisJZm9yX2VhY2hfcGlwZShkZXZfcHJpdiwgcGlwZSkKKwkJaW50ZWxfc2R2by0+YmFzZS5jcnRj X21hc2sgPSAoMSA8PCBwaXBlKTsKKwogCS8qIEluIGRlZmF1bHQgY2FzZSBzZHZvIGx2ZHMgaXMg ZmFsc2UgKi8KIAlpZiAoIWludGVsX3Nkdm9fZ2V0X2NhcGFiaWxpdGllcyhpbnRlbF9zZHZvLCAm aW50ZWxfc2R2by0+Y2FwcykpCiAJCWdvdG8gZXJyOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfdHYuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3R2LmMKaW5k ZXggYjNkYWJjMi4uMmViN2Q2NyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfdHYuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF90di5jCkBAIC0xNDY1LDYg KzE0NjUsNyBAQCBpbnRlbF90dl9pbml0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJp dikKIAljb25zdCBjaGFyICp0dl9mb3JtYXRfbmFtZXNbQVJSQVlfU0laRSh0dl9tb2RlcyldOwog CWludCBpLCBpbml0aWFsX21vZGUgPSAwOwogCXN0cnVjdCBkcm1fY29ubmVjdG9yX3N0YXRlICpz dGF0ZTsKKwllbnVtIHBpcGUgcGlwZTsKIAogCWlmICgoSTkxNV9SRUFEKFRWX0NUTCkgJiBUVl9G VVNFX1NUQVRFX01BU0spID09IFRWX0ZVU0VfU1RBVEVfRElTQUJMRUQpCiAJCXJldHVybjsKQEAg LTE1NDIsNyArMTU0MywxMCBAQCBpbnRlbF90dl9pbml0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRl ICpkZXZfcHJpdikKIAlpbnRlbF9lbmNvZGVyLT50eXBlID0gSU5URUxfT1VUUFVUX1RWT1VUOwog CWludGVsX2VuY29kZXItPnBvd2VyX2RvbWFpbiA9IFBPV0VSX0RPTUFJTl9QT1JUX09USEVSOwog CWludGVsX2VuY29kZXItPnBvcnQgPSBQT1JUX05PTkU7Ci0JaW50ZWxfZW5jb2Rlci0+Y3J0Y19t YXNrID0gKDEgPDwgMCkgfCAoMSA8PCAxKTsKKworCWZvcl9lYWNoX3BpcGUoZGV2X3ByaXYsIHBp cGUpCisJCWludGVsX2VuY29kZXItPmNydGNfbWFzayB8PSAoMSA8PCBwaXBlKTsKKwogCWludGVs X2VuY29kZXItPmNsb25lYWJsZSA9IDA7CiAJaW50ZWxfZW5jb2Rlci0+YmFzZS5wb3NzaWJsZV9j cnRjcyA9ICgoMSA8PCAwKSB8ICgxIDw8IDEpKTsKIAlpbnRlbF90di0+dHlwZSA9IERSTV9NT0RF X0NPTk5FQ1RPUl9Vbmtub3duOwotLSAKMi43LjQKCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxp c3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFu L2xpc3RpbmZvL2ludGVsLWdmeAo=