From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.5 required=3.0 tests=DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 87282C4332B for ; Mon, 23 Mar 2020 23:13:03 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 58D3720409 for ; Mon, 23 Mar 2020 23:13:03 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="oXcgQPF8" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 58D3720409 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 43B246E423; Mon, 23 Mar 2020 23:12:56 +0000 (UTC) Received: from mail-wr1-x443.google.com (mail-wr1-x443.google.com [IPv6:2a00:1450:4864:20::443]) by gabe.freedesktop.org (Postfix) with ESMTPS id 9011E6E413 for ; Mon, 23 Mar 2020 23:12:51 +0000 (UTC) Received: by mail-wr1-x443.google.com with SMTP id t7so14600948wrw.12 for ; Mon, 23 Mar 2020 16:12:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=YWCnIp5FajlobeyyhRgztp+4PCYBxZZzywsNigXQYGg=; b=oXcgQPF8Hl/7ynfYg2pP7jOy77WH7xIBfpOCiQhB+zRh9Cy1n5fAtn+sq7buqnmNVj jHW4WXpMkywp65DL/up8MAKwblS8QRoHns8FvbOUhyQFeg2hxhzQZpFuIV2IWSljHjMb KwcVfawH6S4liPyiCSRgTWCz33IwwA3G40iBWaiXq5wah9VZarup0FqJNR6k4ov/k8sy CRffm5KI4yf4b8YXunyo7rFIhdiAqxcIWJW1+6CdHLMjM9liMUdKEDUeqO/cK+4zRkj/ /bxmo6kxZe50EY5LmeYFjhJaZjGPBVnWiDnk0gwLTQnD1X4XIeCiGo+LGI3oB9v4S6rS UyBA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=YWCnIp5FajlobeyyhRgztp+4PCYBxZZzywsNigXQYGg=; b=DIDlDi4hR5J6oc3FmKgu6Qmyl/2HbvcurV03NAcWVSHJygncZAn2K7QYffXtAU3pFM v+BBP+1naX1AOyWfER/ftNmUmSnl7i/pza3m9VvpNDLRVZNQk5zjKKJU0a3bx516Ym7b a73atpfsUcQY67Lr9LAEpRM0AhFYmKvXht1O0h01KIu5X0cE01dv2PPzXrjX7H4l8GM+ +xSP0XuiGZqh8HMEKsD+rULwFyxdiNDyzubZZLlT5BVzv6a3G5P/ANKxBCgrBp0LdnXe 328Ur5sdJfrE7Ut0WnSznV1htwEWdecbQ+MHKKcOXSZ2B2qYRmmQQiKC74yRtwpoR4Qh AHJw== X-Gm-Message-State: ANhLgQ0LzDCLfHZS1fvGB2H1chGpFcm0oQr40CdaMIb3MmnTHiRw7D97 zqw9JBAOMq7VjKLPxWZvoUJwz/r3 X-Google-Smtp-Source: ADFU+vsIdk1RrLeYtd+NmGcGc5DpKoKv1JYtdQFHI2wCDGI/AxphpedOBMnTabfCWVe94rFEkRGh5w== X-Received: by 2002:adf:ab12:: with SMTP id q18mr33709719wrc.148.1585005169895; Mon, 23 Mar 2020 16:12:49 -0700 (PDT) Received: from sroland-t5810.vmware.com (46-126-183-173.dynamic.hispeed.ch. [46.126.183.173]) by smtp.gmail.com with ESMTPSA id b82sm1495262wmb.46.2020.03.23.16.12.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 23 Mar 2020 16:12:49 -0700 (PDT) From: "Roland Scheidegger (VMware)" To: dri-devel@lists.freedesktop.org, airlied@redhat.com, daniel@ffwll.ch Subject: [PATCH v2 08/17] drm/vmwgfx: Support SM5 shader type in command buffer Date: Tue, 24 Mar 2020 00:12:29 +0100 Message-Id: <20200323231238.14839-9-rscheidegger.oss@gmail.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20200323231238.14839-1-rscheidegger.oss@gmail.com> References: <20200323231238.14839-1-rscheidegger.oss@gmail.com> MIME-Version: 1.0 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: linux-graphics-maintainer@vmware.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" RnJvbTogRGVlcGFrIFJhd2F0IDxkcmF3YXQuZmxvc3NAZ21haWwuY29tPgoKVmlydHVhbCBkZXZp Y2Ugbm93IHN1cHBvcnRzIG5ldyBzaGFkZXIgdHlwZXMsIGFsbG93IHRoZW0gYXMgdmFsaWQgc2hh ZGVyCnR5cGUgaW4gY29tbWFuZCBidWZmZXIuIEFsc28gYWRkIHBlciBzaGFkZXIgYmluZCBpbmZv IGluIGJpbmRpbmcgbWFuYWdlcgpzdGF0ZSBmb3IgbmV3IHNoYWRlciB0eXBlLgoKU2lnbmVkLW9m Zi1ieTogRGVlcGFrIFJhd2F0IDxkcmF3YXQuZmxvc3NAZ21haWwuY29tPgpSZXZpZXdlZC1ieTog VGhvbWFzIEhlbGxzdHLDtm0gKFZNd2FyZSkgPHRob21hc19vc0BzaGlwbWFpbC5vcmc+ClJldmll d2VkLWJ5OiBSb2xhbmQgU2NoZWlkZWdnZXIgPHNyb2xhbmRAdm13YXJlLmNvbT4KU2lnbmVkLW9m Zi1ieTogUm9sYW5kIFNjaGVpZGVnZ2VyIDxzcm9sYW5kQHZtd2FyZS5jb20+Ci0tLQogZHJpdmVy cy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfYmluZGluZy5jIHwgMTEgKysrKysrKysrKy0KIGRyaXZl cnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X2V4ZWNidWYuYyB8IDE0ICsrKysrKysrKysrLS0tCiAy IGZpbGVzIGNoYW5nZWQsIDIxIGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCgpkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfYmluZGluZy5jIGIvZHJpdmVycy9n cHUvZHJtL3Ztd2dmeC92bXdnZnhfYmluZGluZy5jCmluZGV4IDY2ZTE0ZTM4ZDVlOC4uNWE3ZThk YjNlODI2IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9iaW5kaW5n LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfYmluZGluZy5jCkBAIC05OCw3 ICs5OCw3IEBAIHN0cnVjdCB2bXdfY3R4X2JpbmRpbmdfc3RhdGUgewogCXN0cnVjdCB2bXdfY3R4 X2JpbmRpbmZvX3NvIHNvX3RhcmdldHNbU1ZHQTNEX0RYX01BWF9TT1RBUkdFVFNdOwogCXN0cnVj dCB2bXdfY3R4X2JpbmRpbmZvX3ZiIHZlcnRleF9idWZmZXJzW1NWR0EzRF9EWF9NQVhfVkVSVEVY QlVGRkVSU107CiAJc3RydWN0IHZtd19jdHhfYmluZGluZm9faWIgaW5kZXhfYnVmZmVyOwotCXN0 cnVjdCB2bXdfZHhfc2hhZGVyX2JpbmRpbmdzIHBlcl9zaGFkZXJbU1ZHQTNEX05VTV9TSEFERVJU WVBFX0RYMTBdOworCXN0cnVjdCB2bXdfZHhfc2hhZGVyX2JpbmRpbmdzIHBlcl9zaGFkZXJbU1ZH QTNEX05VTV9TSEFERVJUWVBFXTsKIAogCXVuc2lnbmVkIGxvbmcgZGlydHk7CiAJREVDTEFSRV9C SVRNQVAoZGlydHlfdmIsIFNWR0EzRF9EWF9NQVhfVkVSVEVYQlVGRkVSUyk7CkBAIC0xNTEsNiAr MTUxLDkgQEAgc3RhdGljIGNvbnN0IHNpemVfdCB2bXdfYmluZGluZ19zaGFkZXJfb2Zmc2V0c1td ID0gewogCW9mZnNldG9mKHN0cnVjdCB2bXdfY3R4X2JpbmRpbmdfc3RhdGUsIHBlcl9zaGFkZXJb MF0uc2hhZGVyKSwKIAlvZmZzZXRvZihzdHJ1Y3Qgdm13X2N0eF9iaW5kaW5nX3N0YXRlLCBwZXJf c2hhZGVyWzFdLnNoYWRlciksCiAJb2Zmc2V0b2Yoc3RydWN0IHZtd19jdHhfYmluZGluZ19zdGF0 ZSwgcGVyX3NoYWRlclsyXS5zaGFkZXIpLAorCW9mZnNldG9mKHN0cnVjdCB2bXdfY3R4X2JpbmRp bmdfc3RhdGUsIHBlcl9zaGFkZXJbM10uc2hhZGVyKSwKKwlvZmZzZXRvZihzdHJ1Y3Qgdm13X2N0 eF9iaW5kaW5nX3N0YXRlLCBwZXJfc2hhZGVyWzRdLnNoYWRlciksCisJb2Zmc2V0b2Yoc3RydWN0 IHZtd19jdHhfYmluZGluZ19zdGF0ZSwgcGVyX3NoYWRlcls1XS5zaGFkZXIpLAogfTsKIHN0YXRp YyBjb25zdCBzaXplX3Qgdm13X2JpbmRpbmdfcnRfb2Zmc2V0c1tdID0gewogCW9mZnNldG9mKHN0 cnVjdCB2bXdfY3R4X2JpbmRpbmdfc3RhdGUsIHJlbmRlcl90YXJnZXRzKSwKQEAgLTE2Miw2ICsx NjUsOSBAQCBzdGF0aWMgY29uc3Qgc2l6ZV90IHZtd19iaW5kaW5nX2NiX29mZnNldHNbXSA9IHsK IAlvZmZzZXRvZihzdHJ1Y3Qgdm13X2N0eF9iaW5kaW5nX3N0YXRlLCBwZXJfc2hhZGVyWzBdLmNv bnN0X2J1ZmZlcnMpLAogCW9mZnNldG9mKHN0cnVjdCB2bXdfY3R4X2JpbmRpbmdfc3RhdGUsIHBl cl9zaGFkZXJbMV0uY29uc3RfYnVmZmVycyksCiAJb2Zmc2V0b2Yoc3RydWN0IHZtd19jdHhfYmlu ZGluZ19zdGF0ZSwgcGVyX3NoYWRlclsyXS5jb25zdF9idWZmZXJzKSwKKwlvZmZzZXRvZihzdHJ1 Y3Qgdm13X2N0eF9iaW5kaW5nX3N0YXRlLCBwZXJfc2hhZGVyWzNdLmNvbnN0X2J1ZmZlcnMpLAor CW9mZnNldG9mKHN0cnVjdCB2bXdfY3R4X2JpbmRpbmdfc3RhdGUsIHBlcl9zaGFkZXJbNF0uY29u c3RfYnVmZmVycyksCisJb2Zmc2V0b2Yoc3RydWN0IHZtd19jdHhfYmluZGluZ19zdGF0ZSwgcGVy X3NoYWRlcls1XS5jb25zdF9idWZmZXJzKSwKIH07CiBzdGF0aWMgY29uc3Qgc2l6ZV90IHZtd19i aW5kaW5nX2R4X2RzX29mZnNldHNbXSA9IHsKIAlvZmZzZXRvZihzdHJ1Y3Qgdm13X2N0eF9iaW5k aW5nX3N0YXRlLCBkc192aWV3KSwKQEAgLTE3MCw2ICsxNzYsOSBAQCBzdGF0aWMgY29uc3Qgc2l6 ZV90IHZtd19iaW5kaW5nX3NyX29mZnNldHNbXSA9IHsKIAlvZmZzZXRvZihzdHJ1Y3Qgdm13X2N0 eF9iaW5kaW5nX3N0YXRlLCBwZXJfc2hhZGVyWzBdLnNoYWRlcl9yZXMpLAogCW9mZnNldG9mKHN0 cnVjdCB2bXdfY3R4X2JpbmRpbmdfc3RhdGUsIHBlcl9zaGFkZXJbMV0uc2hhZGVyX3JlcyksCiAJ b2Zmc2V0b2Yoc3RydWN0IHZtd19jdHhfYmluZGluZ19zdGF0ZSwgcGVyX3NoYWRlclsyXS5zaGFk ZXJfcmVzKSwKKwlvZmZzZXRvZihzdHJ1Y3Qgdm13X2N0eF9iaW5kaW5nX3N0YXRlLCBwZXJfc2hh ZGVyWzNdLnNoYWRlcl9yZXMpLAorCW9mZnNldG9mKHN0cnVjdCB2bXdfY3R4X2JpbmRpbmdfc3Rh dGUsIHBlcl9zaGFkZXJbNF0uc2hhZGVyX3JlcyksCisJb2Zmc2V0b2Yoc3RydWN0IHZtd19jdHhf YmluZGluZ19zdGF0ZSwgcGVyX3NoYWRlcls1XS5zaGFkZXJfcmVzKSwKIH07CiBzdGF0aWMgY29u c3Qgc2l6ZV90IHZtd19iaW5kaW5nX3NvX29mZnNldHNbXSA9IHsKIAlvZmZzZXRvZihzdHJ1Y3Qg dm13X2N0eF9iaW5kaW5nX3N0YXRlLCBzb190YXJnZXRzKSwKZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS92bXdnZngvdm13Z2Z4X2V4ZWNidWYuYyBiL2RyaXZlcnMvZ3B1L2RybS92bXdnZngv dm13Z2Z4X2V4ZWNidWYuYwppbmRleCA3M2YxOWYwZmVjODguLjRhYmVkMTM1YzAxMyAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfZXhlY2J1Zi5jCisrKyBiL2RyaXZl cnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X2V4ZWNidWYuYwpAQCAtMjExOCw2ICsyMTE4LDkgQEAg dm13X2NtZF9keF9zZXRfc2luZ2xlX2NvbnN0YW50X2J1ZmZlcihzdHJ1Y3Qgdm13X3ByaXZhdGUg KmRldl9wcml2LAogCQkJCSAgICAgIFNWR0EzZENtZEhlYWRlciAqaGVhZGVyKQogewogCVZNV19E RUNMQVJFX0NNRF9WQVIoKmNtZCwgU1ZHQTNkQ21kRFhTZXRTaW5nbGVDb25zdGFudEJ1ZmZlcik7 CisJU1ZHQTNkU2hhZGVyVHlwZSBtYXhfc2hhZGVyX251bSA9IGhhc19zbTVfY29udGV4dChkZXZf cHJpdikgPworCQlTVkdBM0RfTlVNX1NIQURFUlRZUEUgOiBTVkdBM0RfTlVNX1NIQURFUlRZUEVf RFgxMDsKKwogCXN0cnVjdCB2bXdfcmVzb3VyY2UgKnJlcyA9IE5VTEw7CiAJc3RydWN0IHZtd19j dHhfdmFsaWRhdGlvbl9pbmZvICpjdHhfbm9kZSA9IFZNV19HRVRfQ1RYX05PREUoc3dfY29udGV4 dCk7CiAJc3RydWN0IHZtd19jdHhfYmluZGluZm9fY2IgYmluZGluZzsKQEAgLTIxNDEsNyArMjE0 NCw3IEBAIHZtd19jbWRfZHhfc2V0X3NpbmdsZV9jb25zdGFudF9idWZmZXIoc3RydWN0IHZtd19w cml2YXRlICpkZXZfcHJpdiwKIAliaW5kaW5nLnNpemUgPSBjbWQtPmJvZHkuc2l6ZUluQnl0ZXM7 CiAJYmluZGluZy5zbG90ID0gY21kLT5ib2R5LnNsb3Q7CiAKLQlpZiAoYmluZGluZy5zaGFkZXJf c2xvdCA+PSBTVkdBM0RfTlVNX1NIQURFUlRZUEVfRFgxMCB8fAorCWlmIChiaW5kaW5nLnNoYWRl cl9zbG90ID49IG1heF9zaGFkZXJfbnVtIHx8CiAJICAgIGJpbmRpbmcuc2xvdCA+PSBTVkdBM0Rf RFhfTUFYX0NPTlNUQlVGRkVSUykgewogCQlWTVdfREVCVUdfVVNFUigiSWxsZWdhbCBjb25zdCBi dWZmZXIgc2hhZGVyICV1IHNsb3QgJXUuXG4iLAogCQkJICAgICAgICh1bnNpZ25lZCBpbnQpIGNt ZC0+Ym9keS50eXBlLApAQCAtMjE2OSwxMiArMjE3MiwxNSBAQCBzdGF0aWMgaW50IHZtd19jbWRf ZHhfc2V0X3NoYWRlcl9yZXMoc3RydWN0IHZtd19wcml2YXRlICpkZXZfcHJpdiwKIHsKIAlWTVdf REVDTEFSRV9DTURfVkFSKCpjbWQsIFNWR0EzZENtZERYU2V0U2hhZGVyUmVzb3VyY2VzKSA9CiAJ CWNvbnRhaW5lcl9vZihoZWFkZXIsIHR5cGVvZigqY21kKSwgaGVhZGVyKTsKKwlTVkdBM2RTaGFk ZXJUeXBlIG1heF9hbGxvd2VkID0gaGFzX3NtNV9jb250ZXh0KGRldl9wcml2KSA/CisJCVNWR0Ez RF9TSEFERVJUWVBFX01BWCA6IFNWR0EzRF9TSEFERVJUWVBFX0RYMTBfTUFYOworCiAJdTMyIG51 bV9zcl92aWV3ID0gKGNtZC0+aGVhZGVyLnNpemUgLSBzaXplb2YoY21kLT5ib2R5KSkgLwogCQlz aXplb2YoU1ZHQTNkU2hhZGVyUmVzb3VyY2VWaWV3SWQpOwogCiAJaWYgKCh1NjQpIGNtZC0+Ym9k eS5zdGFydFZpZXcgKyAodTY0KSBudW1fc3JfdmlldyA+CiAJICAgICh1NjQpIFNWR0EzRF9EWF9N QVhfU1JWSUVXUyB8fAotCSAgICBjbWQtPmJvZHkudHlwZSA+PSBTVkdBM0RfU0hBREVSVFlQRV9E WDEwX01BWCkgeworCSAgICBjbWQtPmJvZHkudHlwZSA+PSBtYXhfYWxsb3dlZCkgewogCQlWTVdf REVCVUdfVVNFUigiSW52YWxpZCBzaGFkZXIgYmluZGluZy5cbiIpOwogCQlyZXR1cm4gLUVJTlZB TDsKIAl9CkBAIC0yMTk4LDYgKzIyMDQsOCBAQCBzdGF0aWMgaW50IHZtd19jbWRfZHhfc2V0X3No YWRlcihzdHJ1Y3Qgdm13X3ByaXZhdGUgKmRldl9wcml2LAogCQkJCSBTVkdBM2RDbWRIZWFkZXIg KmhlYWRlcikKIHsKIAlWTVdfREVDTEFSRV9DTURfVkFSKCpjbWQsIFNWR0EzZENtZERYU2V0U2hh ZGVyKTsKKwlTVkdBM2RTaGFkZXJUeXBlIG1heF9hbGxvd2VkID0gaGFzX3NtNV9jb250ZXh0KGRl dl9wcml2KSA/CisJCVNWR0EzRF9TSEFERVJUWVBFX01BWCA6IFNWR0EzRF9TSEFERVJUWVBFX0RY MTBfTUFYOwogCXN0cnVjdCB2bXdfcmVzb3VyY2UgKnJlcyA9IE5VTEw7CiAJc3RydWN0IHZtd19j dHhfdmFsaWRhdGlvbl9pbmZvICpjdHhfbm9kZSA9IFZNV19HRVRfQ1RYX05PREUoc3dfY29udGV4 dCk7CiAJc3RydWN0IHZtd19jdHhfYmluZGluZm9fc2hhZGVyIGJpbmRpbmc7CkBAIC0yMjA4LDcg KzIyMTYsNyBAQCBzdGF0aWMgaW50IHZtd19jbWRfZHhfc2V0X3NoYWRlcihzdHJ1Y3Qgdm13X3By aXZhdGUgKmRldl9wcml2LAogCiAJY21kID0gY29udGFpbmVyX29mKGhlYWRlciwgdHlwZW9mKCpj bWQpLCBoZWFkZXIpOwogCi0JaWYgKGNtZC0+Ym9keS50eXBlID49IFNWR0EzRF9TSEFERVJUWVBF X0RYMTBfTUFYIHx8CisJaWYgKGNtZC0+Ym9keS50eXBlID49IG1heF9hbGxvd2VkIHx8CiAJICAg IGNtZC0+Ym9keS50eXBlIDwgU1ZHQTNEX1NIQURFUlRZUEVfTUlOKSB7CiAJCVZNV19ERUJVR19V U0VSKCJJbGxlZ2FsIHNoYWRlciB0eXBlICV1LlxuIiwKIAkJCSAgICAgICAodW5zaWduZWQgaW50 KSBjbWQtPmJvZHkudHlwZSk7Ci0tIAoyLjE3LjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxp c3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFu L2xpc3RpbmZvL2RyaS1kZXZlbAo=