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=-8.7 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,MENTIONS_GIT_HOSTING, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED 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 79980C433F5 for ; Tue, 21 Sep 2021 22:18:23 +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 3A7D96112F for ; Tue, 21 Sep 2021 22:18:23 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 3A7D96112F Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=intel.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id B45E16E860; Tue, 21 Sep 2021 22:18:22 +0000 (UTC) Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by gabe.freedesktop.org (Postfix) with ESMTPS id 8B8476E860 for ; Tue, 21 Sep 2021 22:18:21 +0000 (UTC) X-IronPort-AV: E=McAfee;i="6200,9189,10114"; a="202969731" X-IronPort-AV: E=Sophos;i="5.85,311,1624345200"; d="scan'208";a="202969731" Received: from fmsmga007.fm.intel.com ([10.253.24.52]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 21 Sep 2021 15:18:21 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.85,311,1624345200"; d="scan'208";a="474255804" Received: from orsmsx606.amr.corp.intel.com ([10.22.229.19]) by fmsmga007.fm.intel.com with ESMTP; 21 Sep 2021 15:18:21 -0700 Received: from orsmsx611.amr.corp.intel.com (10.22.229.24) by ORSMSX606.amr.corp.intel.com (10.22.229.19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12; Tue, 21 Sep 2021 15:18:20 -0700 Received: from pgsmsx602.gar.corp.intel.com (10.108.199.137) by ORSMSX611.amr.corp.intel.com (10.22.229.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12; Tue, 21 Sep 2021 15:18:18 -0700 Received: from pgsmsx602.gar.corp.intel.com ([10.108.199.137]) by pgsmsx602.gar.corp.intel.com ([10.108.199.137]) with mapi id 15.01.2242.012; Wed, 22 Sep 2021 06:18:17 +0800 From: "Vudum, Lakshminarayana" To: "Roper, Matthew D" , "intel-gfx@lists.freedesktop.org" CC: "Kijanczuk, Damian" Thread-Topic: =?utf-8?B?4pyXIEZpLkNJLkJBVDogZmFpbHVyZSBmb3IgaTkxNTogU2ltcGxpZnkgbW1p?= =?utf-8?Q?o_handling_&_add_new_DG2_shadow_table_(rev2)?= Thread-Index: AQHXpog3AnE64ohg/k69vIMbhissvauvHWIA Date: Tue, 21 Sep 2021 22:18:17 +0000 Message-ID: References: <20210910201030.3436066-1-matthew.d.roper@intel.com> <163130738086.14827.5965786618186738777@emeril.freedesktop.org> <20210910210958.GB3389343@mdroper-desk1.amr.corp.intel.com> In-Reply-To: <20210910210958.GB3389343@mdroper-desk1.amr.corp.intel.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.6.200.16 x-originating-ip: [10.22.254.132] Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 Subject: Re: [Intel-gfx] =?utf-8?b?4pyXIEZpLkNJLkJBVDogZmFpbHVyZSBmb3IgaTkx?= =?utf-8?q?5=3A_Simplify_mmio_handling_=26_add_new_DG2_shadow_table_=28rev?= =?utf-8?q?2=29?= X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" Q3JlYXRlZCBodHRwczovL2dpdGxhYi5mcmVlZGVza3RvcC5vcmcvZHJtL2ludGVsLy0vaXNzdWVz LzQxODYgYW5kIHJlLXJlcG9ydGVkIHRoZSBzZXJpZXMuDQoNCkxha3NobWkuDQoNCi0tLS0tT3Jp Z2luYWwgTWVzc2FnZS0tLS0tDQpGcm9tOiBSb3BlciwgTWF0dGhldyBEIDxtYXR0aGV3LmQucm9w ZXJAaW50ZWwuY29tPiANClNlbnQ6IEZyaWRheSwgU2VwdGVtYmVyIDEwLCAyMDIxIDI6MTAgUE0N ClRvOiBpbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnDQpDYzogVnVkdW0sIExha3NobWlu YXJheWFuYSA8bGFrc2htaW5hcmF5YW5hLnZ1ZHVtQGludGVsLmNvbT47IEtpamFuY3p1aywgRGFt aWFuIDxkYW1pYW4ua2lqYW5jenVrQGludGVsLmNvbT4NClN1YmplY3Q6IFJlOiDinJcgRmkuQ0ku QkFUOiBmYWlsdXJlIGZvciBpOTE1OiBTaW1wbGlmeSBtbWlvIGhhbmRsaW5nICYgYWRkIG5ldyBE RzIgc2hhZG93IHRhYmxlIChyZXYyKQ0KDQpPbiBGcmksIFNlcCAxMCwgMjAyMSBhdCAwODo1Njoy MFBNICswMDAwLCBQYXRjaHdvcmsgd3JvdGU6DQo+ID09IFNlcmllcyBEZXRhaWxzID09DQo+IA0K PiBTZXJpZXM6IGk5MTU6IFNpbXBsaWZ5IG1taW8gaGFuZGxpbmcgJiBhZGQgbmV3IERHMiBzaGFk b3cgdGFibGUgKHJldjIpDQo+IFVSTCAgIDogaHR0cHM6Ly9wYXRjaHdvcmsuZnJlZWRlc2t0b3Au b3JnL3Nlcmllcy85NDUzNC8NCj4gU3RhdGUgOiBmYWlsdXJlDQo+IA0KPiA9PSBTdW1tYXJ5ID09 DQo+IA0KPiBDSSBCdWcgTG9nIC0gY2hhbmdlcyBmcm9tIENJX0RSTV8xMDU3MCAtPiBQYXRjaHdv cmtfMjEwMTcgDQo+ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT0NCj4gDQo+IFN1bW1hcnkNCj4gLS0tLS0tLQ0KPiANCj4gICAqKkZBSUxVUkUqKg0K PiANCj4gICBTZXJpb3VzIHVua25vd24gY2hhbmdlcyBjb21pbmcgd2l0aCBQYXRjaHdvcmtfMjEw MTcgYWJzb2x1dGVseSBuZWVkIHRvIGJlDQo+ICAgdmVyaWZpZWQgbWFudWFsbHkuDQo+ICAgDQo+ ICAgSWYgeW91IHRoaW5rIHRoZSByZXBvcnRlZCBjaGFuZ2VzIGhhdmUgbm90aGluZyB0byBkbyB3 aXRoIHRoZSBjaGFuZ2VzDQo+ICAgaW50cm9kdWNlZCBpbiBQYXRjaHdvcmtfMjEwMTcsIHBsZWFz ZSBub3RpZnkgeW91ciBidWcgdGVhbSB0byBhbGxvdyB0aGVtDQo+ICAgdG8gZG9jdW1lbnQgdGhp cyBuZXcgZmFpbHVyZSBtb2RlLCB3aGljaCB3aWxsIHJlZHVjZSBmYWxzZSBwb3NpdGl2ZXMgaW4g Q0kuDQo+IA0KPiAgIEV4dGVybmFsIFVSTDogDQo+IGh0dHBzOi8vaW50ZWwtZ2Z4LWNpLjAxLm9y Zy90cmVlL2RybS10aXAvUGF0Y2h3b3JrXzIxMDE3L2luZGV4Lmh0bWwNCj4gDQo+IFBvc3NpYmxl IG5ldyBpc3N1ZXMNCj4gLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiANCj4gICBIZXJlIGFyZSB0aGUg dW5rbm93biBjaGFuZ2VzIHRoYXQgbWF5IGhhdmUgYmVlbiBpbnRyb2R1Y2VkIGluIFBhdGNod29y a18yMTAxNzoNCj4gDQo+ICMjIyBJR1QgY2hhbmdlcyAjIyMNCj4gDQo+ICMjIyMgUG9zc2libGUg cmVncmVzc2lvbnMgIyMjIw0KPiANCj4gICAqIGlndEBrbXNfYnVzeUBiYXNpYzoNCj4gICAgIC0g ZmktcmtsLWd1YzogICAgICAgICBOT1RSVU4gLT4gW1NLSVBdWzFdDQo+ICAgIFsxXTogDQo+IGh0 dHBzOi8vaW50ZWwtZ2Z4LWNpLjAxLm9yZy90cmVlL2RybS10aXAvUGF0Y2h3b3JrXzIxMDE3L2Zp LXJrbC1ndWMvaWcNCj4gdEBrbXNfYnVzeUBiYXNpYy5odG1sDQoNCktNUyB0ZXN0IHNraXAgZHVl IHRvIG5vIHN1aXRhYmxlIGRpc3BsYXk7IG5vdCByZWxhdGVkIHRvIHRoZSB1bmNvcmUgbW1pbyBj aGFuZ2VzIGluIHRoaXMgc2VyaWVzLg0KDQoNCk1hdHQNCg0KPiANCj4gICANCj4gS25vd24gaXNz dWVzDQo+IC0tLS0tLS0tLS0tLQ0KPiANCj4gICBIZXJlIGFyZSB0aGUgY2hhbmdlcyBmb3VuZCBp biBQYXRjaHdvcmtfMjEwMTcgdGhhdCBjb21lIGZyb20ga25vd24gaXNzdWVzOg0KPiANCj4gIyMj IElHVCBjaGFuZ2VzICMjIw0KPiANCj4gIyMjIyBJc3N1ZXMgaGl0ICMjIyMNCj4gDQo+ICAgKiBp Z3RAZ2VtX2V4ZWNfc3VzcGVuZEBiYXNpYy1zMzoNCj4gICAgIC0gZmktdGdsLTExMTVnNDogICAg ICBbUEFTU11bMl0gLT4gW0ZBSUxdWzNdIChbaTkxNSMxODg4XSkNCj4gICAgWzJdOiBodHRwczov L2ludGVsLWdmeC1jaS4wMS5vcmcvdHJlZS9kcm0tdGlwL0NJX0RSTV8xMDU3MC9maS10Z2wtMTEx NWc0L2lndEBnZW1fZXhlY19zdXNwZW5kQGJhc2ljLXMzLmh0bWwNCj4gICAgWzNdOiANCj4gaHR0 cHM6Ly9pbnRlbC1nZngtY2kuMDEub3JnL3RyZWUvZHJtLXRpcC9QYXRjaHdvcmtfMjEwMTcvZmkt dGdsLTExMTVnNA0KPiAvaWd0QGdlbV9leGVjX3N1c3BlbmRAYmFzaWMtczMuaHRtbA0KPiANCj4g ICAqIGlndEBydW5uZXJAYWJvcnRlZDoNCj4gICAgIC0gZmkta2JsLTc1MDB1OiAgICAgICBOT1RS VU4gLT4gW0ZBSUxdWzRdIChbaTkxNSMxODE0XSAvIFtpOTE1IzMzNjNdKQ0KPiAgICBbNF06IA0K PiBodHRwczovL2ludGVsLWdmeC1jaS4wMS5vcmcvdHJlZS9kcm0tdGlwL1BhdGNod29ya18yMTAx Ny9maS1rYmwtNzUwMHUvDQo+IGlndEBydW5uZXJAYWJvcnRlZC5odG1sDQo+IA0KPiAgIA0KPiAj IyMjIFBvc3NpYmxlIGZpeGVzICMjIyMNCj4gDQo+ICAgKiBpZ3RAaTkxNV9wbV9ycG1AbW9kdWxl LXJlbG9hZDoNCj4gICAgIC0ge2ZpLWhzdy1ndDF9OiAgICAgICBbSU5DT01QTEVURV1bNV0gKFtp OTE1IzE1MV0pIC0+IFtQQVNTXVs2XQ0KPiAgICBbNV06IGh0dHBzOi8vaW50ZWwtZ2Z4LWNpLjAx Lm9yZy90cmVlL2RybS10aXAvQ0lfRFJNXzEwNTcwL2ZpLWhzdy1ndDEvaWd0QGk5MTVfcG1fcnBt QG1vZHVsZS1yZWxvYWQuaHRtbA0KPiAgICBbNl06IA0KPiBodHRwczovL2ludGVsLWdmeC1jaS4w MS5vcmcvdHJlZS9kcm0tdGlwL1BhdGNod29ya18yMTAxNy9maS1oc3ctZ3QxL2lnDQo+IHRAaTkx NV9wbV9ycG1AbW9kdWxlLXJlbG9hZC5odG1sDQo+IA0KPiAgICogaWd0QGttc19mbGlwQGJhc2lj LWZsaXAtdnMtbW9kZXNldEBjLWRwMToNCj4gICAgIC0gZmktY2ZsLTgxMDl1OiAgICAgICBbRkFJ TF1bN10gLT4gW1BBU1NdWzhdICsxIHNpbWlsYXIgaXNzdWUNCj4gICAgWzddOiBodHRwczovL2lu dGVsLWdmeC1jaS4wMS5vcmcvdHJlZS9kcm0tdGlwL0NJX0RSTV8xMDU3MC9maS1jZmwtODEwOXUv aWd0QGttc19mbGlwQGJhc2ljLWZsaXAtdnMtbW9kZXNldEBjLWRwMS5odG1sDQo+ICAgIFs4XTog DQo+IGh0dHBzOi8vaW50ZWwtZ2Z4LWNpLjAxLm9yZy90cmVlL2RybS10aXAvUGF0Y2h3b3JrXzIx MDE3L2ZpLWNmbC04MTA5dS8NCj4gaWd0QGttc19mbGlwQGJhc2ljLWZsaXAtdnMtbW9kZXNldEBj LWRwMS5odG1sDQo+IA0KPiAgICogaWd0QGttc19mbGlwQGJhc2ljLWZsaXAtdnMtd2ZfdmJsYW5r QGEtdmdhMToNCj4gICAgIC0gZmktYndyLTIxNjA6ICAgICAgICBbRkFJTF1bOV0gKFtpOTE1IzIx MjJdKSAtPiBbUEFTU11bMTBdDQo+ICAgIFs5XTogaHR0cHM6Ly9pbnRlbC1nZngtY2kuMDEub3Jn L3RyZWUvZHJtLXRpcC9DSV9EUk1fMTA1NzAvZmktYndyLTIxNjAvaWd0QGttc19mbGlwQGJhc2lj LWZsaXAtdnMtd2ZfdmJsYW5rQGEtdmdhMS5odG1sDQo+ICAgIFsxMF06IA0KPiBodHRwczovL2lu dGVsLWdmeC1jaS4wMS5vcmcvdHJlZS9kcm0tdGlwL1BhdGNod29ya18yMTAxNy9maS1id3ItMjE2 MC9pDQo+IGd0QGttc19mbGlwQGJhc2ljLWZsaXAtdnMtd2ZfdmJsYW5rQGEtdmdhMS5odG1sDQo+ IA0KPiAgICogaWd0QGttc19waXBlX2NyY19iYXNpY0Bjb21wYXJlLWNyYy1zYW5pdHljaGVjay1w aXBlLWI6DQo+ICAgICAtIGZpLWNmbC04MTA5dTogICAgICAgW0RNRVNHLVdBUk5dWzExXSAoW2k5 MTUjMjk1XSkgLT4gW1BBU1NdWzEyXSArMTggc2ltaWxhciBpc3N1ZXMNCj4gICAgWzExXTogaHR0 cHM6Ly9pbnRlbC1nZngtY2kuMDEub3JnL3RyZWUvZHJtLXRpcC9DSV9EUk1fMTA1NzAvZmktY2Zs LTgxMDl1L2lndEBrbXNfcGlwZV9jcmNfYmFzaWNAY29tcGFyZS1jcmMtc2FuaXR5Y2hlY2stcGlw ZS1iLmh0bWwNCj4gICAgWzEyXTogDQo+IGh0dHBzOi8vaW50ZWwtZ2Z4LWNpLjAxLm9yZy90cmVl L2RybS10aXAvUGF0Y2h3b3JrXzIxMDE3L2ZpLWNmbC04MTA5dS8NCj4gaWd0QGttc19waXBlX2Ny Y19iYXNpY0Bjb21wYXJlLWNyYy1zYW5pdHljaGVjay1waXBlLWIuaHRtbA0KPiANCj4gICANCj4g ICB7bmFtZX06IFRoaXMgZWxlbWVudCBpcyBzdXBwcmVzc2VkLiBUaGlzIG1lYW5zIGl0IGlzIGln bm9yZWQgd2hlbiBjb21wdXRpbmcNCj4gICAgICAgICAgIHRoZSBzdGF0dXMgb2YgdGhlIGRpZmZl cmVuY2UgKFNVQ0NFU1MsIFdBUk5JTkcsIG9yIEZBSUxVUkUpLg0KPiANCj4gICBbZmRvIzEwOTI3 MV06IGh0dHBzOi8vYnVncy5mcmVlZGVza3RvcC5vcmcvc2hvd19idWcuY2dpP2lkPTEwOTI3MQ0K PiAgIFtmZG8jMTA5MzE1XTogaHR0cHM6Ly9idWdzLmZyZWVkZXNrdG9wLm9yZy9zaG93X2J1Zy5j Z2k/aWQ9MTA5MzE1DQo+ICAgW2k5MTUjMTUxXTogaHR0cHM6Ly9naXRsYWIuZnJlZWRlc2t0b3Au b3JnL2RybS9pbnRlbC9pc3N1ZXMvMTUxDQo+ICAgW2k5MTUjMTgxNF06IGh0dHBzOi8vZ2l0bGFi LmZyZWVkZXNrdG9wLm9yZy9kcm0vaW50ZWwvaXNzdWVzLzE4MTQNCj4gICBbaTkxNSMxODg4XTog aHR0cHM6Ly9naXRsYWIuZnJlZWRlc2t0b3Aub3JnL2RybS9pbnRlbC9pc3N1ZXMvMTg4OA0KPiAg IFtpOTE1IzIxMjJdOiBodHRwczovL2dpdGxhYi5mcmVlZGVza3RvcC5vcmcvZHJtL2ludGVsL2lz c3Vlcy8yMTIyDQo+ICAgW2k5MTUjMjk1XTogaHR0cHM6Ly9naXRsYWIuZnJlZWRlc2t0b3Aub3Jn L2RybS9pbnRlbC9pc3N1ZXMvMjk1DQo+ICAgW2k5MTUjMzM2M106IGh0dHBzOi8vZ2l0bGFiLmZy ZWVkZXNrdG9wLm9yZy9kcm0vaW50ZWwvaXNzdWVzLzMzNjMNCj4gDQo+IA0KPiBQYXJ0aWNpcGF0 aW5nIGhvc3RzICg0NCAtPiAzOSkNCj4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+ IA0KPiAgIEFkZGl0aW9uYWwgKDEpOiBmaS1rYmwtNzUwMHUgDQo+ICAgTWlzc2luZyAgICAoNik6 IGJhdC1kZzEtNiBiYXQtZGcxLTUgZmktYnN3LWN5YW4gYmF0LWFkbHAtNCBiYXQtanNsLTIgZmkt YmR3LXNhbXVzIA0KPiANCj4gDQo+IEJ1aWxkIGNoYW5nZXMNCj4gLS0tLS0tLS0tLS0tLQ0KPiAN Cj4gICAqIExpbnV4OiBDSV9EUk1fMTA1NzAgLT4gUGF0Y2h3b3JrXzIxMDE3DQo+IA0KPiAgIENJ LTIwMTkwNTI5OiAyMDE5MDUyOQ0KPiAgIENJX0RSTV8xMDU3MDogOGJhMzZjZTI0Mzc0MjZiOTFk ZTZmMDNkMzBlNzU2MjkxMDhlYTIyYiBAIGdpdDovL2Fub25naXQuZnJlZWRlc2t0b3Aub3JnL2dm eC1jaS9saW51eA0KPiAgIElHVF82MjAzOiA2NDQ1MmE0NmI1N2NhNGVmMzVlYjY1YTU0N2RmOGVk MWIxMzFlOGYwIEAgaHR0cHM6Ly9naXRsYWIuZnJlZWRlc2t0b3Aub3JnL2RybS9pZ3QtZ3B1LXRv b2xzLmdpdA0KPiAgIFBhdGNod29ya18yMTAxNzogZjRiMWJkZmJmYjIyZmVjZGMzYmZiNDBkMmZi OTQ0YTI2ZWRkOGJmMyBAIA0KPiBnaXQ6Ly9hbm9uZ2l0LmZyZWVkZXNrdG9wLm9yZy9nZngtY2kv bGludXgNCj4gDQo+IA0KPiA9PSBMaW51eCBjb21taXRzID09DQo+IA0KPiBmNGIxYmRmYmZiMjIg ZHJtL2k5MTUvZGcyOiBBZGQgREcyLXNwZWNpZmljIHNoYWRvdyByZWdpc3RlciB0YWJsZQ0KPiA5 ZWI2M2JhZDNiNTIgZHJtL2k5MTUvdW5jb3JlOiBEcm9wIGdlbjExIG1taW8gcmVhZCBoYW5kbGVy cyANCj4gNjNhYTlkZGIyYjRmIGRybS9pOTE1L3VuY29yZTogRHJvcCBnZW4xMS9nZW4xMiBtbWlv IHdyaXRlIGhhbmRsZXJzDQo+IGZmNzIzYjcwODZiMSBkcm0vaTkxNS91bmNvcmU6IFJlcGxhY2Ug Z2VuOCB3cml0ZSBmdW5jdGlvbnMgd2l0aCANCj4gZ2VuZXJhbCBmd3RhYmxlDQo+IGI4ZDMwYWU0 ZWIwNCBkcm0vaTkxNS91bmNvcmU6IEFzc29jaWF0ZSBzaGFkb3cgdGFibGUgd2l0aCB1bmNvcmUN Cj4gNzI4NTk2YzdhOGUwIGRybS9pOTE1L3VuY29yZTogQ29udmVydCBnZW42L2dlbjcgcmVhZCBv cGVyYXRpb25zIHRvIA0KPiBmd3RhYmxlDQo+IA0KPiA9PSBMb2dzID09DQo+IA0KPiBGb3IgbW9y ZSBkZXRhaWxzIHNlZTogDQo+IGh0dHBzOi8vaW50ZWwtZ2Z4LWNpLjAxLm9yZy90cmVlL2RybS10 aXAvUGF0Y2h3b3JrXzIxMDE3L2luZGV4Lmh0bWwNCg0KLS0NCk1hdHQgUm9wZXINCkdyYXBoaWNz IFNvZnR3YXJlIEVuZ2luZWVyDQpWVFQtT1NHQyBQbGF0Zm9ybSBFbmFibGVtZW50DQpJbnRlbCBD b3Jwb3JhdGlvbg0KKDkxNikgMzU2LTI3OTUNCg==