From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rodrigo Vivi Subject: Re: [RFC 1/4] drm/i915: Add Display Gen info. Date: Tue, 30 Oct 2018 10:47:58 -0700 Message-ID: <20181030174758.GD2164@intel.com> References: <20181030003413.8144-1-rodrigo.vivi@intel.com> <87va5joj6p.fsf@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTPS id CFA0E8912C for ; Tue, 30 Oct 2018 17:47:59 +0000 (UTC) Content-Disposition: inline In-Reply-To: <87va5joj6p.fsf@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Jani Nikula , Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Cc: intel-gfx@lists.freedesktop.org, Lucas De Marchi List-Id: intel-gfx@lists.freedesktop.org K2NjIFZpbGxlCgpPbiBUdWUsIE9jdCAzMCwgMjAxOCBhdCAxMTo1MjozMEFNICswMjAwLCBKYW5p IE5pa3VsYSB3cm90ZToKPiBPbiBNb24sIDI5IE9jdCAyMDE4LCBSb2RyaWdvIFZpdmkgPHJvZHJp Z28udml2aUBpbnRlbC5jb20+IHdyb3RlOgo+ID4gSW50cm9kdWNlIERpc3BsYXkgR2VuLiBUaGUg Z29hbCBpcyB0byB1c2UgdGhpcyB0byBtaW5pbWl6ZQo+ID4gdGhlIGFtb3VudCBvZiBwbGF0Zm9y bSBjb2RlbmFtZSBjaGVja3Mgd2UgaGF2ZSBub3dkYXlzIG9uCj4gPiBkaXNwbGF5IGNvZGUuCj4g Pgo+ID4gVGhlIGludHJvZHVjdGlvbiBvZiBhIG5ldyBwbGF0Zm9ybSBzaG91bGQgYmUganVzdAo+ ID4gZ2VuID49IGN1cnJlbnQuCj4gCj4gU28gdGhlIHBhdGNoZXMgMS0zIGxvb2sgbmljZSBmb3Ig R0xLLiBUaGUgdGhpbmcgdGhhdCBidWdzIG1lIGhlcmUgaXMKPiB0aGF0IHRoaXMgZG9lc24ndCBo ZWxwIFZMVi9DSFYKCkNvdWxkbid0IHdlIGRlZmluZQoKY2hlcnJ5dmlldyBwbGF0Zm9ybSB3aXRo CgpESVNQTEFZX0dFTig3KSAvKiA3LjUgKi8KCmFuZCBhbHNvIGEKCiNkZWZpbmUgSVNfRElTUExB WV9HRU43X0xQKGRldl9wcml2KSBJU19ESVNQTEFZX0dFTjcoZGV2X3ByaXYpICYmIElTX0xQKGRl dl9wcml2KQoKdGhpcyB3b3VsZCBjb3ZlciBtb3N0IG9mIElTX0NIRVJSWVZJRVcgfHwgSVNfVkFM TEVZVklFVyBjb2RlLgoKPiBHTUNIIGRpc3BsYXkgYXQgYWxsLgoKRm9yIEdNQ0ggSSBiZWxpZXZl IHdpdGggdGhpcyBnZW4gZGlzcGxheSByYW5nZSBpbiBwbGFjZQp3ZSBjb3VsZCB1c2UgSVNfRElT UExBWShkZXZfcHJpdiwgMiwgNCkgZm9yIG1vc3QgY2FzZXMuCgpGb3IgdGhlIGludGVyc2VjdGlv biB3aXRoIFZMVi9DSFYgSSB3b3VsZCBkZWZpbmUgYQppbmZvLmhhc19jeHNyX3dtCgpUaGlzIHdv dWxkIGJlIGEgcmVhbCBmZWF0dXJlIGJhc2VkIHRpbmcgaW5zdGVhZCBvZiAiZ21jaF9kaXNwbGF5 IgoKPiBXZSdsbCBzdGlsbCBjb250aW51ZQo+IHRvIGhhdmUgdGhlIG1vcmUgZmVhdHVyZSBvcmll bnRlZCBIQVNfR01DSF9ESVNQTEFZLAoKbWF5YmUgdmVyeSBsaXR0bGUgY2FzZXMgd291bGQgYmU6 CklTX0RJU1BMQVkoZGV2X3ByaXYsIDIsIDQpIHx8IElTX0RJU1BMQVlfR0VON19MUChkZXZfcHJp dikKCnNvIHdlIGNvdWxkIGtpbGwgR01DSCBlbnRpcmVseS4KCj4gSEFTX0RESSwgYW5kCj4gSEFT X1BDSF9TUExJVC4KCkhBU19QQ0hfU1BMSVQgbWFrZXMgc2Vuc2UgaW4gbXkgb3BpbmlvbiBiZWNh dXNlIG9mIHRoZSBzb3V0aCBkaXNwbGF5CnN0dWZmIHRoYXQgaXMgb24gUENILiBUaGF0IG9uZSBJ IHdvdWxkIGtlZXAuCgo+IEhhc3dlbGwgZGlzcGxheSBpcyBzdGlsbCBiZXR0ZXIgcmVwcmVzZW50 ZWQgYnkgSEFTX0RESQo+IHRoYW4gZ2VuIGJlY2F1c2UgaXQncyA3LjUuCgpNYXliZSB0aGlzIGlz IGFsc28gYSBwbGFjZSB0byBkZWZpbmUgSGFzd2VsbCB3aXRoOgoKRElTUExBWV9HRU4oNykgLyog Ny41ICovCgpBbmQga2lsbCBhbGwgSEFTX0RESSBpbiBmYXZvciBvZiBEaXNwbGF5IHJhbmdlcyBh cyB3ZWxsLgoKPgo+IFBhdGNoIDQgbWVhbnMgY29udGludWVkIHBlZGFudGljIHJldmlldyBhYm91 dCBub3QgbWl4aW5nIHVwIElTX0dFTiBhbmQKPiBJU19ESVNQTEFZX0dFTi4gSWYgd2UgYXJlbid0 IHN0cmljdCBhYm91dCB0aGUgc2VwYXJhdGlvbiwgdGhlbiB3aGF0J3MKPiB0aGUgcG9pbnQ/IEl0 J3Mgbm90IGltbWVkaWF0ZWx5IG9idmlvdXMgdGhhdCBpdCdzIHdvcnRoIHRoZSBoYXNzbGUuIE9u bHkKPiB0aW1lIHdpbGwgdGVsbC4KCkkgYWdyZWUgaXQgaXMgbm90IGNsZWFyIHlldCBpdCdzIHdv cnRoIHRoZSBoYXNzbGUuCgpJIGJlbGlldmUgdGhhdCB0aGUgY29udmVyc2lvbiBjYW4gYmUgc2xv d2x5IHdpdGggb25seSBwbGFjZXMgdGhhdAp3ZSBhcmUgY2hhbmdpbmcgdG8gaGF2ZSBJU19ESVNQ TEFZX0dFTihkZXZfcHJpdikgPj0gNyB3ZSBjaGFuZ2UKdGhlIGVudGlyZSBibG9jayB0byB1c2Ug RElTUExBWV9HRU4gaW5zdGVhZCBvZiBJU19HRU4gb3IgcGxhdGZvcm0KY29kZW5hbWVzLgoKPiAK PiBJJ2xsIHdhbnQgdG8gaGVhciBtb3JlIG9waW5pb25zIGJlZm9yZSBtZXJnaW5nLgoKWWVhcCwg dGhhdCdzIHRoZSBpZGVhIGhlcmUgOykKCk15IHVsdGltYXRlIGdvYWwgaXMgdG8gc3RvcCB0aGUg Y3VycmVudCBtaXhlZCBjYXNlcyB3aGVyZSB3ZSBoYXZlCgppZiBJTlRFTF9HRU4gPiAxMQplbHNl IFBMQVRGT1JNX0NPREVOQU1FCgphbmQgYWxzbyBleHBhbmQgdGhlIHBsYWNlcyB3aGVyZSB3ZSBo YXZlIElTX0lDRUxBS0UKdG8gYmUgSU5URUxfR0VOID4gMTEKClNvIGFkZGluZyB0aGUgbmV4dCBn ZW4gZ2V0cyBlYXNpZXIgYW5kIHdpdGhvdXQgYnVyZWF1Y3JhY3kKanVzdCBnZW4rKy4uLgoKVGhh bmtzIGEgbG90IGZvciB0aGUgY29tbWVudHMsClJvZHJpZ28uCgo+IAo+IE9uZSBub3RlIGlubGlu ZSBiZWxvdy4KPiAKPiAKPiBCUiwKPiBKYW5pLgo+IAo+IAo+ID4KPiA+IEp1c3QgYSBnZW4rKyB3 aXRob3V0IGV4cG9zaW5nIGFueSBuZXcgZmVhdHVyZSBvciBpcC4KPiA+IHNvIHRoaXMgd291bGQg bWluaW1pemUgdGhlIGFtb3VudCBvZiBwYXRjaGVzIG5lZWRlZAo+ID4gZm9yIGEgYnJpbmctdXAg c3BlY2lhbGx5IGhvbGRpbmcgdGhlbSBvbiBpbnRlcm5hbCBicmFuY2hlcy4KPiA+Cj4gPiBDYzog SmFuaSBOaWt1bGEgPGphbmkubmlrdWxhQGludGVsLmNvbT4KPiA+IENjOiBMdWNhcyBEZSBNYXJj aGkgPGx1Y2FzLmRlbWFyY2hpQGludGVsLmNvbT4KPiA+IFNpZ25lZC1vZmYtYnk6IFJvZHJpZ28g Vml2aSA8cm9kcmlnby52aXZpQGludGVsLmNvbT4KPiA+IC0tLQo+ID4gIGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZHJ2LmggICAgICAgICAgfCAyOCArKysrKysrKysrKysrKysrKysrKysrLS0K PiA+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3BjaS5jICAgICAgICAgIHwgIDUgKysrKy0K PiA+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZXZpY2VfaW5mby5oIHwgIDIgKysKPiA+ ICAzIGZpbGVzIGNoYW5nZWQsIDMyIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCj4gPgo+ ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCj4gPiBpbmRleCBjOWU1YmFiNjg2MWIuLjMyNDIyMjk2 ODhlMyAxMDA2NDQKPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKPiA+ ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKPiA+IEBAIC0yMzQ5LDggKzIz NDksOSBAQCBpbnRlbF9pbmZvKGNvbnN0IHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJp dikKPiA+ICAjZGVmaW5lIElOVEVMX0lORk8oZGV2X3ByaXYpCWludGVsX2luZm8oKGRldl9wcml2 KSkKPiA+ICAjZGVmaW5lIERSSVZFUl9DQVBTKGRldl9wcml2KQkoJihkZXZfcHJpdiktPmNhcHMp Cj4gPiAgCj4gPiAtI2RlZmluZSBJTlRFTF9HRU4oZGV2X3ByaXYpCSgoZGV2X3ByaXYpLT5pbmZv LmdlbikKPiA+IC0jZGVmaW5lIElOVEVMX0RFVklEKGRldl9wcml2KQkoKGRldl9wcml2KS0+aW5m by5kZXZpY2VfaWQpCj4gPiArI2RlZmluZSBJTlRFTF9HRU4oZGV2X3ByaXYpCQkoKGRldl9wcml2 KS0+aW5mby5nZW4pCj4gPiArI2RlZmluZSBJTlRFTF9ESVNQTEFZX0dFTihkZXZfcHJpdikJKChk ZXZfcHJpdiktPmluZm8uZGlzcGxheV9nZW4pCj4gPiArI2RlZmluZSBJTlRFTF9ERVZJRChkZXZf cHJpdikJCSgoZGV2X3ByaXYpLT5pbmZvLmRldmljZV9pZCkKPiA+ICAKPiA+ICAjZGVmaW5lIFJF VklEX0ZPUkVWRVIJCTB4ZmYKPiA+ICAjZGVmaW5lIElOVEVMX1JFVklEKGRldl9wcml2KQkoKGRl dl9wcml2KS0+ZHJtLnBkZXYtPnJldmlzaW9uKQo+ID4gQEAgLTIzNjMsNiArMjM2NCw4IEBAIGlu dGVsX2luZm8oY29uc3Qgc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQo+ID4gIC8q IFJldHVybnMgdHJ1ZSBpZiBHZW4gaXMgaW4gaW5jbHVzaXZlIHJhbmdlIFtTdGFydCwgRW5kXSAq Lwo+ID4gICNkZWZpbmUgSVNfR0VOKGRldl9wcml2LCBzLCBlKSBcCj4gPiAgCSghISgoZGV2X3By aXYpLT5pbmZvLmdlbl9tYXNrICYgSU5URUxfR0VOX01BU0soKHMpLCAoZSkpKSkKPiA+ICsjZGVm aW5lIElTX0RJU1BMQVlfR0VOKGRldl9wcml2LCBzLCBlKSBcCj4gPiArCSghISgoZGV2X3ByaXYp LT5pbmZvLmRpc3BsYXlfZ2VuX21hc2sgJiBJTlRFTF9HRU5fTUFTSygocyksIChlKSkpKQo+ID4g IAo+ID4gIC8qCj4gPiAgICogUmV0dXJuIHRydWUgaWYgcmV2aXNpb24gaXMgaW4gcmFuZ2UgW3Np bmNlLHVudGlsXSBpbmNsdXNpdmUuCj4gPiBAQCAtMjUzMiw2ICsyNTM1LDI3IEBAIGludGVsX2lu Zm8oY29uc3Qgc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQo+ID4gICNkZWZpbmUg SVNfR0VOMTAoZGV2X3ByaXYpCSghISgoZGV2X3ByaXYpLT5pbmZvLmdlbl9tYXNrICYgQklUKDkp KSkKPiA+ICAjZGVmaW5lIElTX0dFTjExKGRldl9wcml2KQkoISEoKGRldl9wcml2KS0+aW5mby5n ZW5fbWFzayAmIEJJVCgxMCkpKQo+ID4gIAo+ID4gKyNkZWZpbmUgSVNfRElTUExBWV9HRU4yKGRl dl9wcml2KQkoISEoKGRldl9wcml2KS0+aW5mby5kaXNwbGF5X2dlbl9tYXNrIFwKPiA+ICsJCQkJ CSAgICAmIEJJVCgyKSkpCj4gPiArI2RlZmluZSBJU19ESVNQTEFZX0dFTjMoZGV2X3ByaXYpCSgh ISgoZGV2X3ByaXYpLT5pbmZvLmRpc3BsYXlfZ2VuX21hc2sgXAo+ID4gKwkJCQkJICAgICYgQklU KDMpKSkKPiA+ICsjZGVmaW5lIElTX0RJU1BMQVlfR0VONChkZXZfcHJpdikJKCEhKChkZXZfcHJp diktPmluZm8uZGlzcGxheV9nZW5fbWFzayBcCj4gPiArCQkJCQkgICAgJiBCSVQoNCkpKQo+ID4g KyNkZWZpbmUgSVNfRElTUExBWV9HRU41KGRldl9wcml2KQkoISEoKGRldl9wcml2KS0+aW5mby5k aXNwbGF5X2dlbl9tYXNrIFwKPiA+ICsJCQkJCSAgICAmIEJJVCg1KSkpCj4gPiArI2RlZmluZSBJ U19ESVNQTEFZX0dFTjYoZGV2X3ByaXYpCSghISgoZGV2X3ByaXYpLT5pbmZvLmRpc3BsYXlfZ2Vu X21hc2sgXAo+ID4gKwkJCQkJICAgICYgQklUKDYpKSkKPiA+ICsjZGVmaW5lIElTX0RJU1BMQVlf R0VONyhkZXZfcHJpdikJKCEhKChkZXZfcHJpdiktPmluZm8uZGlzcGxheV9nZW5fbWFzayBcCj4g PiArCQkJCQkgICAgJiBCSVQoNykpKQo+ID4gKyNkZWZpbmUgSVNfRElTUExBWV9HRU44KGRldl9w cml2KQkoISEoKGRldl9wcml2KS0+aW5mby5kaXNwbGF5X2dlbl9tYXNrIFwKPiA+ICsJCQkJCSAg ICAmIEJJVCg4KSkpCj4gPiArI2RlZmluZSBJU19ESVNQTEFZX0dFTjkoZGV2X3ByaXYpCSghISgo ZGV2X3ByaXYpLT5pbmZvLmRpc3BsYXlfZ2VuX21hc2sgXAo+ID4gKwkJCQkJICAgICYgQklUKDkp KSkKPiA+ICsjZGVmaW5lIElTX0RJU1BMQVlfR0VOMTAoZGV2X3ByaXYpCSghISgoZGV2X3ByaXYp LT5pbmZvLmRpc3BsYXlfZ2VuX21hc2sgXAo+ID4gKwkJCQkJICAgICYgQklUKDEwKSkpCj4gPiAr I2RlZmluZSBJU19ESVNQTEFZX0dFTjExKGRldl9wcml2KQkoISEoKGRldl9wcml2KS0+aW5mby5k aXNwbGF5X2dlbl9tYXNrIFwKPiA+ICsJCQkJCSAgICAmIEJJVCgxMSkpKQo+IAo+IEkga25vdyB0 aGlzIGlzIHRoZSBzYW1lIHBhdHRlcm4gYXMgaW4gSVNfR0VOPE4+IGFib3ZlLCBidXQgc2hvdWxk bid0IHRoZQo+IGNvbXBpbGVyIGVuZCB1cCB3aXRoIHRoZSBzYW1lIHJlc3VsdCBpZiB0aGVzZSB3 ZXJlIHNpbXBseToKPiAKPiAjZGVmaW5lIElTX0RJU1BMQVlfR0VOMihkZXZfcHJpdikgSVNfRElT UExBWV9HRU4oZGV2X3ByaXYsIDIsIDIpCj4gCj4gCj4gPiArCj4gPiAgI2RlZmluZSBJU19MUChk ZXZfcHJpdikJKElOVEVMX0lORk8oZGV2X3ByaXYpLT5pc19scCkKPiA+ICAjZGVmaW5lIElTX0dF TjlfTFAoZGV2X3ByaXYpCShJU19HRU45KGRldl9wcml2KSAmJiBJU19MUChkZXZfcHJpdikpCj4g PiAgI2RlZmluZSBJU19HRU45X0JDKGRldl9wcml2KQkoSVNfR0VOOShkZXZfcHJpdikgJiYgIUlT X0xQKGRldl9wcml2KSkKPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X3BjaS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9wY2kuYwo+ID4gaW5kZXggNDRlNzQ1 OTIxYWMxLi5mYjhjYWY4NDZjMDIgMTAwNjQ0Cj4gPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X3BjaS5jCj4gPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3BjaS5jCj4g PiBAQCAtMzAsNyArMzAsMTAgQEAKPiA+ICAjaW5jbHVkZSAiaTkxNV9zZWxmdGVzdC5oIgo+ID4g IAo+ID4gICNkZWZpbmUgUExBVEZPUk0oeCkgLnBsYXRmb3JtID0gKHgpLCAucGxhdGZvcm1fbWFz ayA9IEJJVCh4KQo+ID4gLSNkZWZpbmUgR0VOKHgpIC5nZW4gPSAoeCksIC5nZW5fbWFzayA9IEJJ VCgoeCkgLSAxKQo+ID4gKyNkZWZpbmUgR0VOKHgpIC5nZW4gPSAoeCksIC5nZW5fbWFzayA9IEJJ VCgoeCkgLSAxKSwgXAo+ID4gKwkJLmRpc3BsYXlfZ2VuID0gKHgpLCAuZGlzcGxheV9nZW5fbWFz ayA9IEJJVCgoeCkpCj4gPiArLyogVW5sZXNzIGV4cGxpY2l0bHkgc3RhdGVkIG90aGVyd2lzZSBE aXNwbGF5IGdlbiBpbmhlcml0cyBwbGF0Zm9ybSBnZW4gKi8KPiA+ICsjZGVmaW5lIERJU1BMQVlf R0VOKHgpIC5kaXNwbGF5X2dlbiA9ICh4KSwgLmRpc3BsYXlfZ2VuX21hc2sgPSBCSVQoKHgpKQo+ ID4gIAo+ID4gICNkZWZpbmUgR0VOX0RFRkFVTFRfUElQRU9GRlNFVFMgXAo+ID4gIAkucGlwZV9v ZmZzZXRzID0geyBQSVBFX0FfT0ZGU0VULCBQSVBFX0JfT0ZGU0VULCBcCj4gPiBkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGV2aWNlX2luZm8uaCBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2RldmljZV9pbmZvLmgKPiA+IGluZGV4IGI0YzJjNGVhZTc4Yi4uOWYz MWYyOTE4NmE4IDEwMDY0NAo+ID4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGV2 aWNlX2luZm8uaAo+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGV2aWNlX2lu Zm8uaAo+ID4gQEAgLTE1MSw4ICsxNTEsMTAgQEAgdHlwZWRlZiB1OCBpbnRlbF9yaW5nX21hc2tf dDsKPiA+ICBzdHJ1Y3QgaW50ZWxfZGV2aWNlX2luZm8gewo+ID4gIAl1MTYgZGV2aWNlX2lkOwo+ ID4gIAl1MTYgZ2VuX21hc2s7Cj4gPiArCXUxNiBkaXNwbGF5X2dlbl9tYXNrOwo+ID4gIAo+ID4g IAl1OCBnZW47Cj4gPiArCXU4IGRpc3BsYXlfZ2VuOwo+ID4gIAl1OCBndDsgLyogR1QgbnVtYmVy LCAwIGlmIHVuZGVmaW5lZCAqLwo+ID4gIAl1OCBudW1fcmluZ3M7Cj4gPiAgCWludGVsX3Jpbmdf bWFza190IHJpbmdfbWFzazsgLyogUmluZ3Mgc3VwcG9ydGVkIGJ5IHRoZSBIVyAqLwo+IAo+IC0t IAo+IEphbmkgTmlrdWxhLCBJbnRlbCBPcGVuIFNvdXJjZSBHcmFwaGljcyBDZW50ZXIKX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxp bmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJl ZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==