From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?= Subject: [PATCH 5/5] drm/tinydrm/mipi-dbi: Clean up after tinydrm_panel conversion Date: Sat, 11 Mar 2017 22:35:36 +0100 Message-ID: <20170311213536.2226-6-noralf@tronnes.org> References: <20170311213536.2226-1-noralf@tronnes.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from smtp.domeneshop.no (smtp.domeneshop.no [IPv6:2a01:5b40:0:3005::1]) by gabe.freedesktop.org (Postfix) with ESMTPS id 6B2356E18B for ; Sat, 11 Mar 2017 21:35:52 +0000 (UTC) In-Reply-To: <20170311213536.2226-1-noralf@tronnes.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org Cc: treding@nvidia.com List-Id: dri-devel@lists.freedesktop.org RmluaXNoIGNvbnZlcnNpb24gdG8gdGlueWRybV9wYW5lbCBieSByZW1vdmluZyB1bm5lZWRlZCBm dW5jdGlvbnMgYW5kCnByb3BlcnRpZXMuCgpTaWduZWQtb2ZmLWJ5OiBOb3JhbGYgVHLDuG5uZXMg PG5vcmFsZkB0cm9ubmVzLm9yZz4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vdGlueWRybS9taXBpLWRi aS5jIHwgMTU0IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIGluY2x1ZGUv ZHJtL3Rpbnlkcm0vbWlwaS1kYmkuaCAgICAgfCAgMjUgLS0tLS0tCiAyIGZpbGVzIGNoYW5nZWQs IDE3OSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vdGlueWRybS9t aXBpLWRiaS5jIGIvZHJpdmVycy9ncHUvZHJtL3Rpbnlkcm0vbWlwaS1kYmkuYwppbmRleCAyZjEy YTlhLi4wYzI5Yjc0IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vdGlueWRybS9taXBpLWRi aS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS90aW55ZHJtL21pcGktZGJpLmMKQEAgLTE1NSwxMzYg KzE1NSw2IEBAIGludCBtaXBpX2RiaV9jb21tYW5kX2J1ZihzdHJ1Y3QgbWlwaV9kYmkgKm1pcGks IHU4IGNtZCwgdTggKmRhdGEsIHNpemVfdCBsZW4pCiB9CiBFWFBPUlRfU1lNQk9MKG1pcGlfZGJp X2NvbW1hbmRfYnVmKTsKIAotc3RhdGljIGludCBtaXBpX2RiaV9idWZfY29weSh2b2lkICpkc3Qs IHN0cnVjdCBkcm1fZnJhbWVidWZmZXIgKmZiLAotCQkJCXN0cnVjdCBkcm1fY2xpcF9yZWN0ICpj bGlwLCBib29sIHN3YXApCi17Ci0Jc3RydWN0IGRybV9nZW1fY21hX29iamVjdCAqY21hX29iaiA9 IGRybV9mYl9jbWFfZ2V0X2dlbV9vYmooZmIsIDApOwotCXN0cnVjdCBkbWFfYnVmX2F0dGFjaG1l bnQgKmltcG9ydF9hdHRhY2ggPSBjbWFfb2JqLT5iYXNlLmltcG9ydF9hdHRhY2g7Ci0Jc3RydWN0 IGRybV9mb3JtYXRfbmFtZV9idWYgZm9ybWF0X25hbWU7Ci0Jdm9pZCAqc3JjID0gY21hX29iai0+ dmFkZHI7Ci0JaW50IHJldCA9IDA7Ci0KLQlpZiAoaW1wb3J0X2F0dGFjaCkgewotCQlyZXQgPSBk bWFfYnVmX2JlZ2luX2NwdV9hY2Nlc3MoaW1wb3J0X2F0dGFjaC0+ZG1hYnVmLAotCQkJCQkgICAg ICAgRE1BX0ZST01fREVWSUNFKTsKLQkJaWYgKHJldCkKLQkJCXJldHVybiByZXQ7Ci0JfQotCi0J c3dpdGNoIChmYi0+Zm9ybWF0LT5mb3JtYXQpIHsKLQljYXNlIERSTV9GT1JNQVRfUkdCNTY1Ogot CQlpZiAoc3dhcCkKLQkJCXRpbnlkcm1fc3dhYjE2KGRzdCwgc3JjLCBmYiwgY2xpcCk7Ci0JCWVs c2UKLQkJCXRpbnlkcm1fbWVtY3B5KGRzdCwgc3JjLCBmYiwgY2xpcCk7Ci0JCWJyZWFrOwotCWNh c2UgRFJNX0ZPUk1BVF9YUkdCODg4ODoKLQkJdGlueWRybV94cmdiODg4OF90b19yZ2I1NjUoZHN0 LCBzcmMsIGZiLCBjbGlwLCBzd2FwKTsKLQkJYnJlYWs7Ci0JZGVmYXVsdDoKLQkJZGV2X2Vycl9v bmNlKGZiLT5kZXYtPmRldiwgIkZvcm1hdCBpcyBub3Qgc3VwcG9ydGVkOiAlc1xuIiwKLQkJCSAg ICAgZHJtX2dldF9mb3JtYXRfbmFtZShmYi0+Zm9ybWF0LT5mb3JtYXQsCi0JCQkJCQkgJmZvcm1h dF9uYW1lKSk7Ci0JCXJldHVybiAtRUlOVkFMOwotCX0KLQotCWlmIChpbXBvcnRfYXR0YWNoKQot CQlyZXQgPSBkbWFfYnVmX2VuZF9jcHVfYWNjZXNzKGltcG9ydF9hdHRhY2gtPmRtYWJ1ZiwKLQkJ CQkJICAgICBETUFfRlJPTV9ERVZJQ0UpOwotCXJldHVybiByZXQ7Ci19Ci0KLXN0YXRpYyBpbnQg bWlwaV9kYmlfZmJfZGlydHkoc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqZmIsCi0JCQkgICAgIHN0 cnVjdCBkcm1fZmlsZSAqZmlsZV9wcml2LAotCQkJICAgICB1bnNpZ25lZCBpbnQgZmxhZ3MsIHVu c2lnbmVkIGludCBjb2xvciwKLQkJCSAgICAgc3RydWN0IGRybV9jbGlwX3JlY3QgKmNsaXBzLAot CQkJICAgICB1bnNpZ25lZCBpbnQgbnVtX2NsaXBzKQotewotCXN0cnVjdCBkcm1fZ2VtX2NtYV9v YmplY3QgKmNtYV9vYmogPSBkcm1fZmJfY21hX2dldF9nZW1fb2JqKGZiLCAwKTsKLQlzdHJ1Y3Qg dGlueWRybV9kZXZpY2UgKnRkZXYgPSBmYi0+ZGV2LT5kZXZfcHJpdmF0ZTsKLQlzdHJ1Y3QgbWlw aV9kYmkgKm1pcGkgPSBtaXBpX2RiaV9mcm9tX3Rpbnlkcm0odGRldik7Ci0JYm9vbCBzd2FwID0g bWlwaS0+c3dhcF9ieXRlczsKLQlzdHJ1Y3QgZHJtX2NsaXBfcmVjdCBjbGlwOwotCWludCByZXQg PSAwOwotCWJvb2wgZnVsbDsKLQl2b2lkICp0cjsKLQotCW11dGV4X2xvY2soJnRkZXYtPmRpcnR5 X2xvY2spOwotCi0JaWYgKCFtaXBpLT5lbmFibGVkKQotCQlnb3RvIG91dF91bmxvY2s7Ci0KLQkv KiBmYmRldiBjYW4gZmx1c2ggZXZlbiB3aGVuIHdlJ3JlIG5vdCBpbnRlcmVzdGVkICovCi0JaWYg KHRkZXYtPnBpcGUucGxhbmUuZmIgIT0gZmIpCi0JCWdvdG8gb3V0X3VubG9jazsKLQotCWZ1bGwg PSB0aW55ZHJtX21lcmdlX2NsaXBzKCZjbGlwLCBjbGlwcywgbnVtX2NsaXBzLCBmbGFncywKLQkJ CQkgICBmYi0+d2lkdGgsIGZiLT5oZWlnaHQpOwotCi0JRFJNX0RFQlVHKCJGbHVzaGluZyBbRkI6 JWRdIHgxPSV1LCB4Mj0ldSwgeTE9JXUsIHkyPSV1XG4iLCBmYi0+YmFzZS5pZCwKLQkJICBjbGlw LngxLCBjbGlwLngyLCBjbGlwLnkxLCBjbGlwLnkyKTsKLQotCWlmICghbWlwaS0+ZGMgfHwgIWZ1 bGwgfHwgc3dhcCB8fAotCSAgICBmYi0+Zm9ybWF0LT5mb3JtYXQgPT0gRFJNX0ZPUk1BVF9YUkdC ODg4OCkgewotCQl0ciA9IG1pcGktPnR4X2J1ZjsKLQkJcmV0ID0gbWlwaV9kYmlfYnVmX2NvcHko bWlwaS0+dHhfYnVmLCBmYiwgJmNsaXAsIHN3YXApOwotCQlpZiAocmV0KQotCQkJZ290byBvdXRf dW5sb2NrOwotCX0gZWxzZSB7Ci0JCXRyID0gY21hX29iai0+dmFkZHI7Ci0JfQotCi0JbWlwaV9k YmlfY29tbWFuZChtaXBpLCBNSVBJX0RDU19TRVRfQ09MVU1OX0FERFJFU1MsCi0JCQkgKGNsaXAu eDEgPj4gOCkgJiAweEZGLCBjbGlwLngxICYgMHhGRiwKLQkJCSAoY2xpcC54MiA+PiA4KSAmIDB4 RkYsIChjbGlwLngyIC0gMSkgJiAweEZGKTsKLQltaXBpX2RiaV9jb21tYW5kKG1pcGksIE1JUElf RENTX1NFVF9QQUdFX0FERFJFU1MsCi0JCQkgKGNsaXAueTEgPj4gOCkgJiAweEZGLCBjbGlwLnkx ICYgMHhGRiwKLQkJCSAoY2xpcC55MiA+PiA4KSAmIDB4RkYsIChjbGlwLnkyIC0gMSkgJiAweEZG KTsKLQotCXJldCA9IG1pcGlfZGJpX2NvbW1hbmRfYnVmKG1pcGksIE1JUElfRENTX1dSSVRFX01F TU9SWV9TVEFSVCwgdHIsCi0JCQkJKGNsaXAueDIgLSBjbGlwLngxKSAqIChjbGlwLnkyIC0gY2xp cC55MSkgKiAyKTsKLQotb3V0X3VubG9jazoKLQltdXRleF91bmxvY2soJnRkZXYtPmRpcnR5X2xv Y2spOwotCi0JaWYgKHJldCkKLQkJZGV2X2Vycl9vbmNlKGZiLT5kZXYtPmRldiwgIkZhaWxlZCB0 byB1cGRhdGUgZGlzcGxheSAlZFxuIiwKLQkJCSAgICAgcmV0KTsKLQotCXJldHVybiByZXQ7Ci19 Ci0KLXN0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyX2Z1bmNzIG1pcGlfZGJpX2Zi X2Z1bmNzID0gewotCS5kZXN0cm95CT0gZHJtX2ZiX2NtYV9kZXN0cm95LAotCS5jcmVhdGVfaGFu ZGxlCT0gZHJtX2ZiX2NtYV9jcmVhdGVfaGFuZGxlLAotCS5kaXJ0eQkJPSBtaXBpX2RiaV9mYl9k aXJ0eSwKLX07Ci0KLS8qKgotICogbWlwaV9kYmlfcGlwZV9lbmFibGUgLSBNSVBJIERCSSBwaXBl IGVuYWJsZSBoZWxwZXIKLSAqIEBwaXBlOiBEaXNwbGF5IHBpcGUKLSAqIEBjcnRjX3N0YXRlOiBD UlRDIHN0YXRlCi0gKgotICogVGhpcyBmdW5jdGlvbiBlbmFibGVzIGJhY2tsaWdodC4gRHJpdmVy cyBjYW4gdXNlIHRoaXMgYXMgdGhlaXIKLSAqICZkcm1fc2ltcGxlX2Rpc3BsYXlfcGlwZV9mdW5j cy0+ZW5hYmxlIGNhbGxiYWNrLgotICovCi12b2lkIG1pcGlfZGJpX3BpcGVfZW5hYmxlKHN0cnVj dCBkcm1fc2ltcGxlX2Rpc3BsYXlfcGlwZSAqcGlwZSwKLQkJCSAgc3RydWN0IGRybV9jcnRjX3N0 YXRlICpjcnRjX3N0YXRlKQotewotCXN0cnVjdCB0aW55ZHJtX2RldmljZSAqdGRldiA9IHBpcGVf dG9fdGlueWRybShwaXBlKTsKLQlzdHJ1Y3QgbWlwaV9kYmkgKm1pcGkgPSBtaXBpX2RiaV9mcm9t X3Rpbnlkcm0odGRldik7Ci0Jc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqZmIgPSBwaXBlLT5wbGFu ZS5mYjsKLQotCURSTV9ERUJVR19LTVMoIlxuIik7Ci0KLQltaXBpLT5lbmFibGVkID0gdHJ1ZTsK LQlpZiAoZmIpCi0JCWZiLT5mdW5jcy0+ZGlydHkoZmIsIE5VTEwsIDAsIDAsIE5VTEwsIDApOwot Ci0JdGlueWRybV9lbmFibGVfYmFja2xpZ2h0KG1pcGktPmJhY2tsaWdodCk7Ci19Ci1FWFBPUlRf U1lNQk9MKG1pcGlfZGJpX3BpcGVfZW5hYmxlKTsKLQogLyoqCiAgKiBtaXBpX2RiaV9wYW5lbF9m bHVzaCAtIE1JUEkgREJJIHBhbmVsIGZsdXNoIGhlbHBlcgogICogQHBhbmVsOiB0aW55ZHJtIHBh bmVsCkBAIC0zNjQsMzAgKzIzNCw2IEBAIGludCBtaXBpX2RiaV9wYW5lbF9kaXNhYmxlKHN0cnVj dCB0aW55ZHJtX3BhbmVsICpwYW5lbCkKIH0KIEVYUE9SVF9TWU1CT0wobWlwaV9kYmlfcGFuZWxf ZGlzYWJsZSk7CiAKLS8qKgotICogbWlwaV9kYmlfcGlwZV9kaXNhYmxlIC0gTUlQSSBEQkkgcGlw ZSBkaXNhYmxlIGhlbHBlcgotICogQHBpcGU6IERpc3BsYXkgcGlwZQotICoKLSAqIFRoaXMgZnVu Y3Rpb24gZGlzYWJsZXMgYmFja2xpZ2h0IGlmIHByZXNlbnQgb3IgaWYgbm90IHRoZQotICogZGlz cGxheSBtZW1vcnkgaXMgYmxhbmtlZC4gRHJpdmVycyBjYW4gdXNlIHRoaXMgYXMgdGhlaXIKLSAq ICZkcm1fc2ltcGxlX2Rpc3BsYXlfcGlwZV9mdW5jcy0+ZGlzYWJsZSBjYWxsYmFjay4KLSAqLwot dm9pZCBtaXBpX2RiaV9waXBlX2Rpc2FibGUoc3RydWN0IGRybV9zaW1wbGVfZGlzcGxheV9waXBl ICpwaXBlKQotewotCXN0cnVjdCB0aW55ZHJtX2RldmljZSAqdGRldiA9IHBpcGVfdG9fdGlueWRy bShwaXBlKTsKLQlzdHJ1Y3QgbWlwaV9kYmkgKm1pcGkgPSBtaXBpX2RiaV9mcm9tX3Rpbnlkcm0o dGRldik7Ci0KLQlEUk1fREVCVUdfS01TKCJcbiIpOwotCi0JbWlwaS0+ZW5hYmxlZCA9IGZhbHNl OwotCi0JaWYgKG1pcGktPmJhY2tsaWdodCkKLQkJdGlueWRybV9kaXNhYmxlX2JhY2tsaWdodCht aXBpLT5iYWNrbGlnaHQpOwotCWVsc2UKLQkJbWlwaV9kYmlfYmxhbmsobWlwaSk7Ci19Ci1FWFBP UlRfU1lNQk9MKG1pcGlfZGJpX3BpcGVfZGlzYWJsZSk7Ci0KIHN0YXRpYyBjb25zdCB1aW50MzJf dCBtaXBpX2RiaV9mb3JtYXRzW10gPSB7CiAJRFJNX0ZPUk1BVF9SR0I1NjUsCiAJRFJNX0ZPUk1B VF9YUkdCODg4OCwKZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL3Rpbnlkcm0vbWlwaS1kYmkuaCBi L2luY2x1ZGUvZHJtL3Rpbnlkcm0vbWlwaS1kYmkuaAppbmRleCAxOTlmMTA5Li43MWIwNGVmIDEw MDY0NAotLS0gYS9pbmNsdWRlL2RybS90aW55ZHJtL21pcGktZGJpLmgKKysrIGIvaW5jbHVkZS9k cm0vdGlueWRybS9taXBpLWRiaS5oCkBAIC0yMCw1MCArMjAsMjggQEAgc3RydWN0IHJlZ3VsYXRv cjsKIAogLyoqCiAgKiBzdHJ1Y3QgbWlwaV9kYmkgLSBNSVBJIERCSSBjb250cm9sbGVyCi0gKiBA dGlueWRybTogdGlueWRybSBiYXNlCiAgKiBAcGFuZWw6IHRpbnlkcm0gcGFuZWwKICAqIEBzcGk6 IFNQSSBkZXZpY2UKLSAqIEBlbmFibGVkOiBQaXBlbGluZSBpcyBlbmFibGVkCiAgKiBAY21kbG9j azogQ29tbWFuZCBsb2NrCiAgKiBAY29tbWFuZDogQnVzIHNwZWNpZmljIGNhbGxiYWNrIGV4ZWN1 dGluZyBjb21tYW5kcy4KICAqIEByZWFkX2NvbW1hbmRzOiBBcnJheSBvZiByZWFkIGNvbW1hbmRz IHRlcm1pbmF0ZWQgYnkgYSB6ZXJvIGVudHJ5LgogICogICAgICAgICAgICAgICAgIFJlYWRpbmcg aXMgZGlzYWJsZWQgaWYgdGhpcyBpcyBOVUxMLgogICogQGRjOiBPcHRpb25hbCBEL0MgZ3Bpby4K LSAqIEB0eF9idWY6IEJ1ZmZlciB1c2VkIGZvciB0cmFuc2ZlciAoY29weSBjbGlwIHJlY3QgYXJl YSkKICAqIEB0eF9idWY5OiBCdWZmZXIgdXNlZCBmb3IgT3B0aW9uIDEgOS1iaXQgY29udmVyc2lv bgogICogQHR4X2J1ZjlfbGVuOiBTaXplIG9mIHR4X2J1ZjkuCi0gKiBAc3dhcF9ieXRlczogU3dh cCBieXRlcyBpbiBidWZmZXIgYmVmb3JlIHRyYW5zZmVyCi0gKiBAcmVzZXQ6IE9wdGlvbmFsIHJl c2V0IGdwaW8KLSAqIEByb3RhdGlvbjogaW5pdGlhbCByb3RhdGlvbiBpbiBkZWdyZWVzIENvdW50 ZXIgQ2xvY2sgV2lzZQotICogQGJhY2tsaWdodDogYmFja2xpZ2h0IGRldmljZSAob3B0aW9uYWwp Ci0gKiBAcmVndWxhdG9yOiBwb3dlciByZWd1bGF0b3IgKG9wdGlvbmFsKQogICovCiBzdHJ1Y3Qg bWlwaV9kYmkgewotCXN0cnVjdCB0aW55ZHJtX2RldmljZSB0aW55ZHJtOwogCXN0cnVjdCB0aW55 ZHJtX3BhbmVsIHBhbmVsOwogCXN0cnVjdCBzcGlfZGV2aWNlICpzcGk7Ci0JYm9vbCBlbmFibGVk OwogCXN0cnVjdCBtdXRleCBjbWRsb2NrOwogCWludCAoKmNvbW1hbmQpKHN0cnVjdCBtaXBpX2Ri aSAqbWlwaSwgdTggY21kLCB1OCAqcGFyYW0sIHNpemVfdCBudW0pOwogCWNvbnN0IHU4ICpyZWFk X2NvbW1hbmRzOwogCXN0cnVjdCBncGlvX2Rlc2MgKmRjOwotCXUxNiAqdHhfYnVmOwogCXZvaWQg KnR4X2J1Zjk7CiAJc2l6ZV90IHR4X2J1ZjlfbGVuOwotCWJvb2wgc3dhcF9ieXRlczsKLQlzdHJ1 Y3QgZ3Bpb19kZXNjICpyZXNldDsKLQl1bnNpZ25lZCBpbnQgcm90YXRpb247Ci0Jc3RydWN0IGJh Y2tsaWdodF9kZXZpY2UgKmJhY2tsaWdodDsKLQlzdHJ1Y3QgcmVndWxhdG9yICpyZWd1bGF0b3I7 CiB9OwogCiBzdGF0aWMgaW5saW5lIHN0cnVjdCBtaXBpX2RiaSAqCi1taXBpX2RiaV9mcm9tX3Rp bnlkcm0oc3RydWN0IHRpbnlkcm1fZGV2aWNlICp0ZGV2KQotewotCXJldHVybiBjb250YWluZXJf b2YodGRldiwgc3RydWN0IG1pcGlfZGJpLCB0aW55ZHJtKTsKLX0KLQotc3RhdGljIGlubGluZSBz dHJ1Y3QgbWlwaV9kYmkgKgogbWlwaV9kYmlfZnJvbV9wYW5lbChzdHJ1Y3QgdGlueWRybV9wYW5l bCAqcGFuZWwpCiB7CiAJcmV0dXJuIGNvbnRhaW5lcl9vZihwYW5lbCwgc3RydWN0IG1pcGlfZGJp LCBwYW5lbCk7CkBAIC04Myw5ICs2MSw2IEBAIGludCBtaXBpX2RiaV9wYW5lbF9mbHVzaChzdHJ1 Y3QgdGlueWRybV9wYW5lbCAqcGFuZWwsCiAJCQkgc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqZmIs CiAJCQkgc3RydWN0IGRybV9jbGlwX3JlY3QgKnJlY3QpOwogaW50IG1pcGlfZGJpX3BhbmVsX2Rp c2FibGUoc3RydWN0IHRpbnlkcm1fcGFuZWwgKnBhbmVsKTsKLXZvaWQgbWlwaV9kYmlfcGlwZV9l bmFibGUoc3RydWN0IGRybV9zaW1wbGVfZGlzcGxheV9waXBlICpwaXBlLAotCQkJICBzdHJ1Y3Qg ZHJtX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpOwotdm9pZCBtaXBpX2RiaV9waXBlX2Rpc2FibGUo c3RydWN0IGRybV9zaW1wbGVfZGlzcGxheV9waXBlICpwaXBlKTsKIHZvaWQgbWlwaV9kYmlfaHdf cmVzZXQoc3RydWN0IG1pcGlfZGJpICptaXBpKTsKIGJvb2wgbWlwaV9kYmlfZGlzcGxheV9pc19v bihzdHJ1Y3QgbWlwaV9kYmkgKm1pcGkpOwogCi0tIAoyLjEwLjIKCl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJp LWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=