From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH] drm/i915: Check live status before reading edid Date: Wed, 23 Sep 2015 10:18:56 +0200 Message-ID: <20150923081855.GL3383@phenom.ffwll.local> References: <20150914093618.GY3383@phenom.ffwll.local> <1442290460-22109-1-git-send-email-sonika.jindal@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wi0-f181.google.com (mail-wi0-f181.google.com [209.85.212.181]) by gabe.freedesktop.org (Postfix) with ESMTPS id AE5066ECA9 for ; Wed, 23 Sep 2015 01:16:04 -0700 (PDT) Received: by wiclk2 with SMTP id lk2so227271008wic.0 for ; Wed, 23 Sep 2015 01:16:03 -0700 (PDT) Content-Disposition: inline In-Reply-To: <1442290460-22109-1-git-send-email-sonika.jindal@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Sonika Jindal Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gVHVlLCBTZXAgMTUsIDIwMTUgYXQgMDk6NDQ6MjBBTSArMDUzMCwgU29uaWthIEppbmRhbCB3 cm90ZToKPiBUaGUgQnNwZWMgaXMgdmVyeSBjbGVhciB0aGF0IExpdmUgc3RhdHVzIG11c3QgYmUg Y2hlY2tlZCBhYm91dCBiZWZvcmUKPiB0cnlpbmcgdG8gcmVhZCBFRElEIG92ZXIgRERDIGNoYW5u ZWwuIFRoaXMgcGF0Y2ggbWFrZXMgc3VyZSB0aGF0IEhETUkKPiBFRElEIGlzIHJlYWQgb25seSB3 aGVuIGxpdmUgc3RhdHVzIGlzIHVwLgo+IAo+IFRoZSBsaXZlIHN0YXR1cyBkb2Vzbid0IHNlZW0g dG8gcGVyZm9ybSB2ZXJ5IGNvbnNpc3RlbnQgYWNyb3NzIHZhcmlvdXMKPiBwbGF0Zm9ybXMgd2hl biB0ZXN0ZWQgd2l0aCBkaWZmZXJlbnQgbW9uaXRvcnMuIFRoZSByZWFzb24gYmVoaW5kIHRoYXQg aXMKPiBzb21lIG1vbml0b3JzIGFyZSBsYXRlIHRvIHByb3ZpZGUgcmlnaHQgdm9sdGFnZSB0byBz ZXQgbGl2ZV9zdGF0dXMgdXAuCj4gU28sIGFmdGVyIGdldHRpbmcgdGhlIGludGVycnVwdCwgZm9y IGEgc21hbGwgZHVyYXRpb24sIGxpdmUgc3RhdHVzIHJlZwo+IGZsdWN0dWF0ZXMsIGFuZCB0aGVu IHNldHRsZXMgZG93biBzaG93aW5nIHRoZSBjb3JyZWN0IHN0YXVzLgo+IAo+IFRoaXMgaXMgZXhw bGFpbmVkIGhlcmUgaW4sIGluIGEgcm91Z2ggd2F5Ogo+IEhQRCBsaW5lICBfX19fX19fX19fX19f X19fCj4gCQkJIHxcIFQxID0gTW9uaXRvciBIb3RwbHVnIGNhdXNpbmcgSVJRCj4gCQkJIHwgXF9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4gCQkJIHwgfAo+ICAgICAgICAg ICAgICAgICAgICAgICAgICB8IHwKPiAJCQkgfCB8ICAgVDIgPSBMaXZlIHN0YXR1cyBpcyBzdGFi bGUKPiAJCQkgfCB8ICBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4gCQkJ IHwgfCAvfAo+IExpdmUgc3RhdHVzIF9fX19fX19fX19fX198X3wvIHwKPiAJCQkgfCB8ICB8Cj4g CQkJIHwgfCAgfAo+IAkJCSB8IHwgIHwKPiAJCQlUMCBUMSAgVDIKPiAKPiAoQmV0d2VlbiBUMSBh bmQgVDIgTGl2ZSBzdGF0dXMgZmx1Y3R1YXRlcyBvciBjYW4gYmUgZXZlbiBsb3csIGRlcGVuZGlu ZyBvbgo+ICB0aGUgbW9uaXRvcikKPiAKPiBBZnRlciBzZXZlcmFsIGV4cGVyaW1lbnRzLCB3ZSBo YXZlIGNvbmNsdWRlZCB0aGF0IGEgbWF4IGRlbGF5Cj4gb2YgMzBtcyBpcyBlbm91Z2ggdG8gYWxs b3cgdGhlIGxpdmUgc3RhdHVzIHRvIHNldHRsZSBkb3duIHdpdGgKPiBtb3N0IG9mIHRoZSBtb25p dG9ycy4gVGhpcyB0b3RhbCBkZWxheSBvZiAzMG1zIGhhcyBiZWVuIHNwbGl0IGludG8KPiBhIHJl c29sdXRpb24gb2YgMyByZXRyaWVzIG9mIDEwbXMgZWFjaCwgZm9yIHRoZSBiZXR0ZXIgY2FzZXMu Cj4gCj4gVGhpcyBkZWxheSBpcyBrZXB0IGF0IDMwbXMsIGtlZXBpbmcgaW4gY29uc2lkZXJhdGlv biB0aGF0LCBIRENQIGNvbXBsaWFuY2UKPiBleHBlY3QgdGhlIEhQRCBoYW5kbGVyIHRvIHJlc3Bv bmQgYSBwbHVnIG91dCBpbiAxMDBtcywgYnkgZGlzYWJsaW5nIHBvcnQuCj4gCj4gdjI6IEFkZGlu ZyBjaGVja3MgZm9yIFZMVi9DSFYgYXMgd2VsbC4gUmV1c2luZyBvbGQgaWJ4IGFuZCBnNHggZnVu Y3Rpb25zCj4gdG8gY2hlY2sgZGlnaXRhbCBwb3J0IHN0YXR1cy4gQWRkaW5nIGEgc2VwYXJhdGUg ZnVuY3Rpb24gdG8gZ2V0IGJ4dCBsaXZlCj4gc3RhdHVzIChEYW5pZWwpCj4gdjM6IFVzaW5nIGlu dGVsX2VuY29kZXItPmhwZF9waW4gdG8gY2hlY2sgdGhlIGxpdmUgc3RhdHVzIChTaXZhKQo+IE1v dmluZyB0aGUgbGl2ZSBzdGF0dXMgcmVhZCB0byBpbnRlbF9oZG1pX3Byb2JlIGFuZCBwYXNzaW5n IHBhcmFtZXRlcgo+IHRvIHJlYWQvbm90IHRvIHJlYWQgdGhlIGVkaWQuIChtZSkKPiB2NDoKPiAq IEFkZGVkIGxpdmUgc3RhdHVzIGNoZWNrIGZvciBhbGwgcGxhdGZvcm1zIHVzaW5nCj4gaW50ZWxf ZGlnaXRhbF9wb3J0X2Nvbm5lY3RlZC4KPiAqIFJlYmFzZWQgb24gdG9wIG9mIEphbmkncyBEUCBj bGVhbnVwIHNlcmllcwo+ICogU29tZSBtb25pdG9ycyB0YWtlIHRpbWUgaW4gc2V0dGluZyB0aGUg bGl2ZSBzdGF0dXMuIFNvIHJldHJ5IGZvciBmZXcKPiB0aW1lcyBpZiB0aGlzIGlzIGEgY29ubmVj dCBIUEQKPiB2NTogUmVtb3ZlZCBleHRyYSAiZHJtL2k5MTUiIGZyb20gY29tbWl0IG1lc3NhZ2Uu IEFkZGluZyBTaGFzaGFuaydzIHNvYgo+ICAgICB3aGljaCB3YXMgbWlzc2VkLgo+IHY2OiBEcm9w IHRoZSAoIWRldGVjdF9lZGlkICYmICFsaXZlX3N0YXR1cyBjaGVjaykgY2hlY2sgYmVjYXVzZSBm b3IgRERJCj4gcG9ydHMgd2hpY2ggYXJlIGVudW1lcmF0ZWQgYXMgaGRtaSBhcyB3ZWxsIGFzIERQ LCB3ZSBkb24ndCBoYXZlIGEKPiBtZWNoYW5pc20gdG8gZGlmZmVyZW50aWF0ZSBiZXR3ZWVuIERQ IGFuZCBoZG1pIGluc2lkZSB0aGUgZW5jb2RlcidzCj4gaG90X3BsdWcuIFRoaXMgbGVhZHMgdG8g Y2FsbCB0byB0aGUgaGRtaSdzIGhvdF9wbHVnIGhvb2sgZm9yIERQIGFzIHdlbGwKPiBhcyBoZG1p IHdoaWNoIGxlYWRzIHRvIGlzc3VlcyBkdXJpbmcgdW5wbHVnIGJlY2F1c2Ugb2YgdGhlIGFib3Zl IGNoZWNrLgo+IHY3OiBNYWtlIGludGVsX2RpZ2l0YWxfcG9ydF9jb25uZWN0ZWQgZ2xvYmFsIGlu IHRoaXMgcGF0Y2gsIHNvbWUKPiByZWZvcm1hdHRpbmcgb2Ygd2hpbGUgbG9vcCwgYWRkaW5nIGEg cHJpbnQgd2hlbiBsaXZlIHN0YXR1cyBpcyBub3QKPiB1cC4gKFJvZHJpZ28pCj4gdjg6IFJlYmFz ZSBpdCBvbiBuaWdodGx5IHdoaWNoIGludm9sdmVkIHNraXBwaW5nIHRoZSBob3RfcGx1ZyBob29r IGZvciBub3cKPiBhbmQgbGV0dGluZyB0aGUgbGl2ZV9zdGF0dXMgY2hlY2sgaGFwcGVuIGluIGRl dGVjdCB1bnRpbCB0aGUgaHBkIGhhbmRsaW5nCj4gcGFydCBpcyBmaW5hbGl6ZWQgKERhbmllbCkK PiAKPiBTaWduZWQtb2ZmLWJ5OiBTaGFzaGFuayBTaGFybWEgPHNoYXNoYW5rLnNoYXJtYUBpbnRl bC5jb20+Cj4gU2lnbmVkLW9mZi1ieTogU29uaWthIEppbmRhbCA8c29uaWthLmppbmRhbEBpbnRl bC5jb20+Cj4gUmV2aWV3ZWQtYnk6IFJvZHJpZ28gVml2aSA8cm9kcmlnby52aXZpQGludGVsLmNv bT4KClF1ZXVlZCBmb3IgLW5leHQsIHRoYW5rcyBmb3IgdGhlIHBhdGNoLgotRGFuaWVsCgo+IC0t LQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jICAgfCAgICAyICstCj4gIGRyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oICB8ICAgIDIgKysKPiAgZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfaGRtaS5jIHwgICAyOCArKysrKysrKysrKysrKysrKysrKystLS0tLS0tCj4g IDMgZmlsZXMgY2hhbmdlZCwgMjQgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKPiAKPiBk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHAuYyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2RwLmMKPiBpbmRleCBhNjg3MjUwLi5hNmUyMmRkIDEwMDY0NAo+IC0t LSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMKPiArKysgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9kcC5jCj4gQEAgLTQ2NzAsNyArNDY3MCw3IEBAIHN0YXRpYyBib29sIGJ4 dF9kaWdpdGFsX3BvcnRfY29ubmVjdGVkKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJp diwKPiAgICoKPiAgICogUmV0dXJuICV0cnVlIGlmIEBwb3J0IGlzIGNvbm5lY3RlZCwgJWZhbHNl IG90aGVyd2lzZS4KPiAgICovCj4gLXN0YXRpYyBib29sIGludGVsX2RpZ2l0YWxfcG9ydF9jb25u ZWN0ZWQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAo+ICtib29sIGludGVsX2Rp Z2l0YWxfcG9ydF9jb25uZWN0ZWQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAo+ ICAJCQkJCSBzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0ICpwb3J0KQo+ICB7Cj4gIAlpZiAoSEFT X1BDSF9JQlgoZGV2X3ByaXYpKQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCj4gaW5kZXggMDhi YTM2Mi4uMWUwMTM1MCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9k cnYuaAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCj4gQEAgLTEyMTAs NiArMTIxMCw4IEBAIHZvaWQgaW50ZWxfZWRwX2RycnNfZGlzYWJsZShzdHJ1Y3QgaW50ZWxfZHAg KmludGVsX2RwKTsKPiAgdm9pZCBpbnRlbF9lZHBfZHJyc19pbnZhbGlkYXRlKHN0cnVjdCBkcm1f ZGV2aWNlICpkZXYsCj4gIAkJdW5zaWduZWQgZnJvbnRidWZmZXJfYml0cyk7Cj4gIHZvaWQgaW50 ZWxfZWRwX2RycnNfZmx1c2goc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdW5zaWduZWQgZnJvbnRi dWZmZXJfYml0cyk7Cj4gK2Jvb2wgaW50ZWxfZGlnaXRhbF9wb3J0X2Nvbm5lY3RlZChzdHJ1Y3Qg ZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCj4gKwkJCQkJIHN0cnVjdCBpbnRlbF9kaWdpdGFs X3BvcnQgKnBvcnQpOwo+ICB2b2lkIGhzd19kcF9zZXRfZGRpX3BsbF9zZWwoc3RydWN0IGludGVs X2NydGNfc3RhdGUgKnBpcGVfY29uZmlnKTsKPiAgCj4gIC8qIGludGVsX2RwX21zdC5jICovCj4g ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkbWkuYyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2hkbWkuYwo+IGluZGV4IGU5NzhjNTkuLmJiMzNjNjYgMTAwNjQ0 Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfaGRtaS5jCj4gKysrIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfaGRtaS5jCj4gQEAgLTEzMjksMjIgKzEzMjksMjMgQEAgaW50 ZWxfaGRtaV91bnNldF9lZGlkKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpCj4gIH0K PiAgCj4gIHN0YXRpYyBib29sCj4gLWludGVsX2hkbWlfc2V0X2VkaWQoc3RydWN0IGRybV9jb25u ZWN0b3IgKmNvbm5lY3RvcikKPiAraW50ZWxfaGRtaV9zZXRfZWRpZChzdHJ1Y3QgZHJtX2Nvbm5l Y3RvciAqY29ubmVjdG9yLCBib29sIGZvcmNlKQo+ICB7Cj4gIAlzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGNvbm5lY3Rvci0+ZGV2KTsKPiAgCXN0cnVjdCBpbnRl bF9oZG1pICppbnRlbF9oZG1pID0gaW50ZWxfYXR0YWNoZWRfaGRtaShjb25uZWN0b3IpOwo+ICAJ c3RydWN0IGludGVsX2VuY29kZXIgKmludGVsX2VuY29kZXIgPQo+ICAJCSZoZG1pX3RvX2RpZ19w b3J0KGludGVsX2hkbWkpLT5iYXNlOwo+ICAJZW51bSBpbnRlbF9kaXNwbGF5X3Bvd2VyX2RvbWFp biBwb3dlcl9kb21haW47Cj4gLQlzdHJ1Y3QgZWRpZCAqZWRpZDsKPiArCXN0cnVjdCBlZGlkICpl ZGlkID0gTlVMTDsKPiAgCWJvb2wgY29ubmVjdGVkID0gZmFsc2U7Cj4gIAo+ICAJcG93ZXJfZG9t YWluID0gaW50ZWxfZGlzcGxheV9wb3J0X3Bvd2VyX2RvbWFpbihpbnRlbF9lbmNvZGVyKTsKPiAg CWludGVsX2Rpc3BsYXlfcG93ZXJfZ2V0KGRldl9wcml2LCBwb3dlcl9kb21haW4pOwo+ICAKPiAt CWVkaWQgPSBkcm1fZ2V0X2VkaWQoY29ubmVjdG9yLAo+IC0JCQkgICAgaW50ZWxfZ21idXNfZ2V0 X2FkYXB0ZXIoZGV2X3ByaXYsCj4gLQkJCQkJCSAgICBpbnRlbF9oZG1pLT5kZGNfYnVzKSk7Cj4g KwlpZiAoZm9yY2UpCj4gKwkJZWRpZCA9IGRybV9nZXRfZWRpZChjb25uZWN0b3IsCj4gKwkJCQkg ICAgaW50ZWxfZ21idXNfZ2V0X2FkYXB0ZXIoZGV2X3ByaXYsCj4gKwkJCQkgICAgaW50ZWxfaGRt aS0+ZGRjX2J1cykpOwo+ICAKPiAgCWludGVsX2Rpc3BsYXlfcG93ZXJfcHV0KGRldl9wcml2LCBw b3dlcl9kb21haW4pOwo+ICAKPiBAQCAtMTM3MiwxMyArMTM3MywyNiBAQCBzdGF0aWMgZW51bSBk cm1fY29ubmVjdG9yX3N0YXR1cwo+ICBpbnRlbF9oZG1pX2RldGVjdChzdHJ1Y3QgZHJtX2Nvbm5l Y3RvciAqY29ubmVjdG9yLCBib29sIGZvcmNlKQo+ICB7Cj4gIAllbnVtIGRybV9jb25uZWN0b3Jf c3RhdHVzIHN0YXR1czsKPiArCXN0cnVjdCBpbnRlbF9oZG1pICppbnRlbF9oZG1pID0gaW50ZWxf YXR0YWNoZWRfaGRtaShjb25uZWN0b3IpOwo+ICsJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRl dl9wcml2ID0gdG9faTkxNShjb25uZWN0b3ItPmRldik7Cj4gKwlib29sIGxpdmVfc3RhdHVzID0g ZmFsc2U7Cj4gKwl1bnNpZ25lZCBpbnQgcmV0cnkgPSAzOwo+ICAKPiAgCURSTV9ERUJVR19LTVMo IltDT05ORUNUT1I6JWQ6JXNdXG4iLAo+ICAJCSAgICAgIGNvbm5lY3Rvci0+YmFzZS5pZCwgY29u bmVjdG9yLT5uYW1lKTsKPiAgCj4gKwl3aGlsZSAoIWxpdmVfc3RhdHVzICYmIC0tcmV0cnkpIHsK PiArCQlsaXZlX3N0YXR1cyA9IGludGVsX2RpZ2l0YWxfcG9ydF9jb25uZWN0ZWQoZGV2X3ByaXYs Cj4gKwkJCQloZG1pX3RvX2RpZ19wb3J0KGludGVsX2hkbWkpKTsKPiArCQltZGVsYXkoMTApOwo+ ICsJfQo+ICsKPiArCWlmICghbGl2ZV9zdGF0dXMpCj4gKwkJRFJNX0RFQlVHX0tNUygiTGl2ZSBz dGF0dXMgbm90IHVwISIpOwo+ICsKPiAgCWludGVsX2hkbWlfdW5zZXRfZWRpZChjb25uZWN0b3Ip Owo+ICAKPiAtCWlmIChpbnRlbF9oZG1pX3NldF9lZGlkKGNvbm5lY3RvcikpIHsKPiArCWlmIChp bnRlbF9oZG1pX3NldF9lZGlkKGNvbm5lY3RvciwgbGl2ZV9zdGF0dXMpKSB7Cj4gIAkJc3RydWN0 IGludGVsX2hkbWkgKmludGVsX2hkbWkgPSBpbnRlbF9hdHRhY2hlZF9oZG1pKGNvbm5lY3Rvcik7 Cj4gIAo+ICAJCWhkbWlfdG9fZGlnX3BvcnQoaW50ZWxfaGRtaSktPmJhc2UudHlwZSA9IElOVEVM X09VVFBVVF9IRE1JOwo+IEBAIC0xNDAyLDcgKzE0MTYsNyBAQCBpbnRlbF9oZG1pX2ZvcmNlKHN0 cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpCj4gIAlpZiAoY29ubmVjdG9yLT5zdGF0dXMg IT0gY29ubmVjdG9yX3N0YXR1c19jb25uZWN0ZWQpCj4gIAkJcmV0dXJuOwo+ICAKPiAtCWludGVs X2hkbWlfc2V0X2VkaWQoY29ubmVjdG9yKTsKPiArCWludGVsX2hkbWlfc2V0X2VkaWQoY29ubmVj dG9yLCB0cnVlKTsKPiAgCWhkbWlfdG9fZGlnX3BvcnQoaW50ZWxfaGRtaSktPmJhc2UudHlwZSA9 IElOVEVMX09VVFBVVF9IRE1JOwo+ICB9Cj4gIAo+IC0tIAo+IDEuNy4xMC40Cj4gCj4gX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KPiBJbnRlbC1nZnggbWFp bGluZyBsaXN0Cj4gSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+IGh0dHA6Ly9saXN0 cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngKCi0tIApEYW5pZWwg VmV0dGVyClNvZnR3YXJlIEVuZ2luZWVyLCBJbnRlbCBDb3Jwb3JhdGlvbgpodHRwOi8vYmxvZy5m ZndsbC5jaApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJ bnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0 cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=