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,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 DD36AC4332B for ; Thu, 19 Mar 2020 20:25:12 +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 B3CAB20777 for ; Thu, 19 Mar 2020 20:25:12 +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="I8j1jJ9v" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org B3CAB20777 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 D155F6EA72; Thu, 19 Mar 2020 20:25:09 +0000 (UTC) Received: from mail-lj1-x242.google.com (mail-lj1-x242.google.com [IPv6:2a00:1450:4864:20::242]) by gabe.freedesktop.org (Postfix) with ESMTPS id 5C35F6EA6C for ; Thu, 19 Mar 2020 20:25:00 +0000 (UTC) Received: by mail-lj1-x242.google.com with SMTP id r24so4059998ljd.4 for ; Thu, 19 Mar 2020 13:25:00 -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=ff256WFGsLcYeRXMWIrAnVFMRNom47w7nmfZzt774yg=; b=I8j1jJ9v3nwW+uI4XdpB3cM3svl1DklGZdKVSIiyGZVau9A7J0KnzQ2kxHXr1GZMjI ptD5ZBUgBlquYkI/hB5/0ryM7k/zCM5vuE/69+RTCh0HvhBMkGdJfiZBcRijpfy9GjoF 1MuoRpMmLoKlh6Exly4PDvL2+E8Hws9gjM665x1awexFeTzt73yTNj2jvzlvT7csCkNR nNYXu7fy2tqcwn0wDVoVAW9CY6K8AKXW8ejGfJTM9hZG0XxO+v03eK2+PVDsXaDTEBTA vrkPyvULRFu3Tcqt3NeTaA4olksx20Kd2BERGnZKeMGmJbPyZsHz3PYkur2t3xa51yV+ 0/pg== 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=ff256WFGsLcYeRXMWIrAnVFMRNom47w7nmfZzt774yg=; b=udlkUPlJcDJfCEK/lYZq4glxMruIDogOkqt1wzTnIgoSu9GXKTNr7SG3tlJ93+rOUK 2OsNseUucmhhGzC5sQgjv5140c5kRVb/NBGKlFkGsYxsrzAuD5bWCsFQ/zHQzsJJr+9G OiL5YsosSraVqd5/0CkRWf0QQRhEbRemlaWBidB9WDTIzSQPxzQ9ZNij5Ux3VckfS0Ij i8wDdTXxoNVeMDsihnuML3YOxEokmVCCJFoMBW43KGbur3VoIBfD3ZviidDxp4vUDR8P wdUZ9taXxWQBS8j5xcFU1bYkUc82oJpUKgMWPlegTY+mADviVGd1OdPr8jBsb/a21hkb +Y6A== X-Gm-Message-State: ANhLgQ2APQvSjbcIcm9wpeEAD3Br4LPAYbkVSCtdc3An4oGBBzyEvGk1 KKVfFQoiVjKfm0g7xpVDYUml/99PlLg= X-Google-Smtp-Source: ADFU+vsF1/BKUpOd/fg+1O19uua4tQ62JdZ/81I/AXxOzOlvg5CI+7FIqTPT/Hv2KYNpaxMgzpAPig== X-Received: by 2002:a05:651c:1bb:: with SMTP id c27mr3093129ljn.5.1584649498390; Thu, 19 Mar 2020 13:24:58 -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 v3sm2074372lfp.8.2020.03.19.13.24.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Mar 2020 13:24:57 -0700 (PDT) From: rscheidegger.oss@gmail.com X-Google-Original-From: sroland@vmware.com To: dri-devel@lists.freedesktop.org Subject: [PATCH 08/17] drm/vmwgfx: Support SM5 shader type in command buffer Date: Thu, 19 Mar 2020 21:24:05 +0100 Message-Id: <20200319202414.9296-9-sroland@vmware.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20200319202414.9296-1-sroland@vmware.com> References: <20200319202414.9296-1-sroland@vmware.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+ClNpZ25l ZC1vZmYtYnk6IFJvbGFuZCBTY2hlaWRlZ2dlciAoVk13YXJlKSA8cnNjaGVpZGVnZ2VyLm9zc0Bn bWFpbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfYmluZGluZy5jIHwg MTEgKysrKysrKysrKy0KIGRyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X2V4ZWNidWYuYyB8 IDE0ICsrKysrKysrKysrLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDIxIGluc2VydGlvbnMoKyksIDQg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhf YmluZGluZy5jIGIvZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfYmluZGluZy5jCmluZGV4 IDY2ZTE0ZTM4ZDVlOC4uNWE3ZThkYjNlODI2IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0v dm13Z2Z4L3Ztd2dmeF9iaW5kaW5nLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdn ZnhfYmluZGluZy5jCkBAIC05OCw3ICs5OCw3IEBAIHN0cnVjdCB2bXdfY3R4X2JpbmRpbmdfc3Rh dGUgewogCXN0cnVjdCB2bXdfY3R4X2JpbmRpbmZvX3NvIHNvX3RhcmdldHNbU1ZHQTNEX0RYX01B WF9TT1RBUkdFVFNdOwogCXN0cnVjdCB2bXdfY3R4X2JpbmRpbmZvX3ZiIHZlcnRleF9idWZmZXJz W1NWR0EzRF9EWF9NQVhfVkVSVEVYQlVGRkVSU107CiAJc3RydWN0IHZtd19jdHhfYmluZGluZm9f aWIgaW5kZXhfYnVmZmVyOwotCXN0cnVjdCB2bXdfZHhfc2hhZGVyX2JpbmRpbmdzIHBlcl9zaGFk ZXJbU1ZHQTNEX05VTV9TSEFERVJUWVBFX0RYMTBdOworCXN0cnVjdCB2bXdfZHhfc2hhZGVyX2Jp bmRpbmdzIHBlcl9zaGFkZXJbU1ZHQTNEX05VTV9TSEFERVJUWVBFXTsKIAogCXVuc2lnbmVkIGxv bmcgZGlydHk7CiAJREVDTEFSRV9CSVRNQVAoZGlydHlfdmIsIFNWR0EzRF9EWF9NQVhfVkVSVEVY QlVGRkVSUyk7CkBAIC0xNTEsNiArMTUxLDkgQEAgc3RhdGljIGNvbnN0IHNpemVfdCB2bXdfYmlu ZGluZ19zaGFkZXJfb2Zmc2V0c1tdID0gewogCW9mZnNldG9mKHN0cnVjdCB2bXdfY3R4X2JpbmRp bmdfc3RhdGUsIHBlcl9zaGFkZXJbMF0uc2hhZGVyKSwKIAlvZmZzZXRvZihzdHJ1Y3Qgdm13X2N0 eF9iaW5kaW5nX3N0YXRlLCBwZXJfc2hhZGVyWzFdLnNoYWRlciksCiAJb2Zmc2V0b2Yoc3RydWN0 IHZtd19jdHhfYmluZGluZ19zdGF0ZSwgcGVyX3NoYWRlclsyXS5zaGFkZXIpLAorCW9mZnNldG9m KHN0cnVjdCB2bXdfY3R4X2JpbmRpbmdfc3RhdGUsIHBlcl9zaGFkZXJbM10uc2hhZGVyKSwKKwlv ZmZzZXRvZihzdHJ1Y3Qgdm13X2N0eF9iaW5kaW5nX3N0YXRlLCBwZXJfc2hhZGVyWzRdLnNoYWRl ciksCisJb2Zmc2V0b2Yoc3RydWN0IHZtd19jdHhfYmluZGluZ19zdGF0ZSwgcGVyX3NoYWRlcls1 XS5zaGFkZXIpLAogfTsKIHN0YXRpYyBjb25zdCBzaXplX3Qgdm13X2JpbmRpbmdfcnRfb2Zmc2V0 c1tdID0gewogCW9mZnNldG9mKHN0cnVjdCB2bXdfY3R4X2JpbmRpbmdfc3RhdGUsIHJlbmRlcl90 YXJnZXRzKSwKQEAgLTE2Miw2ICsxNjUsOSBAQCBzdGF0aWMgY29uc3Qgc2l6ZV90IHZtd19iaW5k aW5nX2NiX29mZnNldHNbXSA9IHsKIAlvZmZzZXRvZihzdHJ1Y3Qgdm13X2N0eF9iaW5kaW5nX3N0 YXRlLCBwZXJfc2hhZGVyWzBdLmNvbnN0X2J1ZmZlcnMpLAogCW9mZnNldG9mKHN0cnVjdCB2bXdf Y3R4X2JpbmRpbmdfc3RhdGUsIHBlcl9zaGFkZXJbMV0uY29uc3RfYnVmZmVycyksCiAJb2Zmc2V0 b2Yoc3RydWN0IHZtd19jdHhfYmluZGluZ19zdGF0ZSwgcGVyX3NoYWRlclsyXS5jb25zdF9idWZm ZXJzKSwKKwlvZmZzZXRvZihzdHJ1Y3Qgdm13X2N0eF9iaW5kaW5nX3N0YXRlLCBwZXJfc2hhZGVy WzNdLmNvbnN0X2J1ZmZlcnMpLAorCW9mZnNldG9mKHN0cnVjdCB2bXdfY3R4X2JpbmRpbmdfc3Rh dGUsIHBlcl9zaGFkZXJbNF0uY29uc3RfYnVmZmVycyksCisJb2Zmc2V0b2Yoc3RydWN0IHZtd19j dHhfYmluZGluZ19zdGF0ZSwgcGVyX3NoYWRlcls1XS5jb25zdF9idWZmZXJzKSwKIH07CiBzdGF0 aWMgY29uc3Qgc2l6ZV90IHZtd19iaW5kaW5nX2R4X2RzX29mZnNldHNbXSA9IHsKIAlvZmZzZXRv ZihzdHJ1Y3Qgdm13X2N0eF9iaW5kaW5nX3N0YXRlLCBkc192aWV3KSwKQEAgLTE3MCw2ICsxNzYs OSBAQCBzdGF0aWMgY29uc3Qgc2l6ZV90IHZtd19iaW5kaW5nX3NyX29mZnNldHNbXSA9IHsKIAlv ZmZzZXRvZihzdHJ1Y3Qgdm13X2N0eF9iaW5kaW5nX3N0YXRlLCBwZXJfc2hhZGVyWzBdLnNoYWRl cl9yZXMpLAogCW9mZnNldG9mKHN0cnVjdCB2bXdfY3R4X2JpbmRpbmdfc3RhdGUsIHBlcl9zaGFk ZXJbMV0uc2hhZGVyX3JlcyksCiAJb2Zmc2V0b2Yoc3RydWN0IHZtd19jdHhfYmluZGluZ19zdGF0 ZSwgcGVyX3NoYWRlclsyXS5zaGFkZXJfcmVzKSwKKwlvZmZzZXRvZihzdHJ1Y3Qgdm13X2N0eF9i aW5kaW5nX3N0YXRlLCBwZXJfc2hhZGVyWzNdLnNoYWRlcl9yZXMpLAorCW9mZnNldG9mKHN0cnVj dCB2bXdfY3R4X2JpbmRpbmdfc3RhdGUsIHBlcl9zaGFkZXJbNF0uc2hhZGVyX3JlcyksCisJb2Zm c2V0b2Yoc3RydWN0IHZtd19jdHhfYmluZGluZ19zdGF0ZSwgcGVyX3NoYWRlcls1XS5zaGFkZXJf cmVzKSwKIH07CiBzdGF0aWMgY29uc3Qgc2l6ZV90IHZtd19iaW5kaW5nX3NvX29mZnNldHNbXSA9 IHsKIAlvZmZzZXRvZihzdHJ1Y3Qgdm13X2N0eF9iaW5kaW5nX3N0YXRlLCBzb190YXJnZXRzKSwK ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X2V4ZWNidWYuYyBiL2Ry aXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X2V4ZWNidWYuYwppbmRleCA3M2YxOWYwZmVjODgu LjRhYmVkMTM1YzAxMyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhf ZXhlY2J1Zi5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X2V4ZWNidWYuYwpA QCAtMjExOCw2ICsyMTE4LDkgQEAgdm13X2NtZF9keF9zZXRfc2luZ2xlX2NvbnN0YW50X2J1ZmZl cihzdHJ1Y3Qgdm13X3ByaXZhdGUgKmRldl9wcml2LAogCQkJCSAgICAgIFNWR0EzZENtZEhlYWRl ciAqaGVhZGVyKQogewogCVZNV19ERUNMQVJFX0NNRF9WQVIoKmNtZCwgU1ZHQTNkQ21kRFhTZXRT aW5nbGVDb25zdGFudEJ1ZmZlcik7CisJU1ZHQTNkU2hhZGVyVHlwZSBtYXhfc2hhZGVyX251bSA9 IGhhc19zbTVfY29udGV4dChkZXZfcHJpdikgPworCQlTVkdBM0RfTlVNX1NIQURFUlRZUEUgOiBT VkdBM0RfTlVNX1NIQURFUlRZUEVfRFgxMDsKKwogCXN0cnVjdCB2bXdfcmVzb3VyY2UgKnJlcyA9 IE5VTEw7CiAJc3RydWN0IHZtd19jdHhfdmFsaWRhdGlvbl9pbmZvICpjdHhfbm9kZSA9IFZNV19H RVRfQ1RYX05PREUoc3dfY29udGV4dCk7CiAJc3RydWN0IHZtd19jdHhfYmluZGluZm9fY2IgYmlu ZGluZzsKQEAgLTIxNDEsNyArMjE0NCw3IEBAIHZtd19jbWRfZHhfc2V0X3NpbmdsZV9jb25zdGFu dF9idWZmZXIoc3RydWN0IHZtd19wcml2YXRlICpkZXZfcHJpdiwKIAliaW5kaW5nLnNpemUgPSBj bWQtPmJvZHkuc2l6ZUluQnl0ZXM7CiAJYmluZGluZy5zbG90ID0gY21kLT5ib2R5LnNsb3Q7CiAK LQlpZiAoYmluZGluZy5zaGFkZXJfc2xvdCA+PSBTVkdBM0RfTlVNX1NIQURFUlRZUEVfRFgxMCB8 fAorCWlmIChiaW5kaW5nLnNoYWRlcl9zbG90ID49IG1heF9zaGFkZXJfbnVtIHx8CiAJICAgIGJp bmRpbmcuc2xvdCA+PSBTVkdBM0RfRFhfTUFYX0NPTlNUQlVGRkVSUykgewogCQlWTVdfREVCVUdf VVNFUigiSWxsZWdhbCBjb25zdCBidWZmZXIgc2hhZGVyICV1IHNsb3QgJXUuXG4iLAogCQkJICAg ICAgICh1bnNpZ25lZCBpbnQpIGNtZC0+Ym9keS50eXBlLApAQCAtMjE2OSwxMiArMjE3MiwxNSBA QCBzdGF0aWMgaW50IHZtd19jbWRfZHhfc2V0X3NoYWRlcl9yZXMoc3RydWN0IHZtd19wcml2YXRl ICpkZXZfcHJpdiwKIHsKIAlWTVdfREVDTEFSRV9DTURfVkFSKCpjbWQsIFNWR0EzZENtZERYU2V0 U2hhZGVyUmVzb3VyY2VzKSA9CiAJCWNvbnRhaW5lcl9vZihoZWFkZXIsIHR5cGVvZigqY21kKSwg aGVhZGVyKTsKKwlTVkdBM2RTaGFkZXJUeXBlIG1heF9hbGxvd2VkID0gaGFzX3NtNV9jb250ZXh0 KGRldl9wcml2KSA/CisJCVNWR0EzRF9TSEFERVJUWVBFX01BWCA6IFNWR0EzRF9TSEFERVJUWVBF X0RYMTBfTUFYOworCiAJdTMyIG51bV9zcl92aWV3ID0gKGNtZC0+aGVhZGVyLnNpemUgLSBzaXpl b2YoY21kLT5ib2R5KSkgLwogCQlzaXplb2YoU1ZHQTNkU2hhZGVyUmVzb3VyY2VWaWV3SWQpOwog CiAJaWYgKCh1NjQpIGNtZC0+Ym9keS5zdGFydFZpZXcgKyAodTY0KSBudW1fc3JfdmlldyA+CiAJ ICAgICh1NjQpIFNWR0EzRF9EWF9NQVhfU1JWSUVXUyB8fAotCSAgICBjbWQtPmJvZHkudHlwZSA+ PSBTVkdBM0RfU0hBREVSVFlQRV9EWDEwX01BWCkgeworCSAgICBjbWQtPmJvZHkudHlwZSA+PSBt YXhfYWxsb3dlZCkgewogCQlWTVdfREVCVUdfVVNFUigiSW52YWxpZCBzaGFkZXIgYmluZGluZy5c biIpOwogCQlyZXR1cm4gLUVJTlZBTDsKIAl9CkBAIC0yMTk4LDYgKzIyMDQsOCBAQCBzdGF0aWMg aW50IHZtd19jbWRfZHhfc2V0X3NoYWRlcihzdHJ1Y3Qgdm13X3ByaXZhdGUgKmRldl9wcml2LAog CQkJCSBTVkdBM2RDbWRIZWFkZXIgKmhlYWRlcikKIHsKIAlWTVdfREVDTEFSRV9DTURfVkFSKCpj bWQsIFNWR0EzZENtZERYU2V0U2hhZGVyKTsKKwlTVkdBM2RTaGFkZXJUeXBlIG1heF9hbGxvd2Vk ID0gaGFzX3NtNV9jb250ZXh0KGRldl9wcml2KSA/CisJCVNWR0EzRF9TSEFERVJUWVBFX01BWCA6 IFNWR0EzRF9TSEFERVJUWVBFX0RYMTBfTUFYOwogCXN0cnVjdCB2bXdfcmVzb3VyY2UgKnJlcyA9 IE5VTEw7CiAJc3RydWN0IHZtd19jdHhfdmFsaWRhdGlvbl9pbmZvICpjdHhfbm9kZSA9IFZNV19H RVRfQ1RYX05PREUoc3dfY29udGV4dCk7CiAJc3RydWN0IHZtd19jdHhfYmluZGluZm9fc2hhZGVy IGJpbmRpbmc7CkBAIC0yMjA4LDcgKzIyMTYsNyBAQCBzdGF0aWMgaW50IHZtd19jbWRfZHhfc2V0 X3NoYWRlcihzdHJ1Y3Qgdm13X3ByaXZhdGUgKmRldl9wcml2LAogCiAJY21kID0gY29udGFpbmVy X29mKGhlYWRlciwgdHlwZW9mKCpjbWQpLCBoZWFkZXIpOwogCi0JaWYgKGNtZC0+Ym9keS50eXBl ID49IFNWR0EzRF9TSEFERVJUWVBFX0RYMTBfTUFYIHx8CisJaWYgKGNtZC0+Ym9keS50eXBlID49 IG1heF9hbGxvd2VkIHx8CiAJICAgIGNtZC0+Ym9keS50eXBlIDwgU1ZHQTNEX1NIQURFUlRZUEVf TUlOKSB7CiAJCVZNV19ERUJVR19VU0VSKCJJbGxlZ2FsIHNoYWRlciB0eXBlICV1LlxuIiwKIAkJ CSAgICAgICAodW5zaWduZWQgaW50KSBjbWQtPmJvZHkudHlwZSk7Ci0tIAoyLjE3LjEKCl9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWls aW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZy ZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=