From mboxrd@z Thu Jan 1 00:00:00 1970 From: Manasi Navare Subject: Re: [PATCH v2 06/10] drm/i915: Pass encoder type to cnl_ddi_vswing_sequence() explicitly Date: Thu, 19 Oct 2017 16:58:24 -0700 Message-ID: <20171019235824.GG10621@intel.com> References: <20171016145705.11780-1-ville.syrjala@linux.intel.com> <20171016145705.11780-7-ville.syrjala@linux.intel.com> <20171018211146.GB10621@intel.com> <20171019103806.GR10981@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 ED0406EBB1 for ; Thu, 19 Oct 2017 23:53:47 +0000 (UTC) Content-Disposition: inline In-Reply-To: <20171019103806.GR10981@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gVGh1LCBPY3QgMTksIDIwMTcgYXQgMDE6Mzg6MDZQTSArMDMwMCwgVmlsbGUgU3lyasOkbMOk IHdyb3RlOgo+IE9uIFdlZCwgT2N0IDE4LCAyMDE3IGF0IDAyOjExOjQ2UE0gLTA3MDAsIE1hbmFz aSBOYXZhcmUgd3JvdGU6Cj4gPiBPbiBNb24sIE9jdCAxNiwgMjAxNyBhdCAwNTo1NzowMVBNICsw MzAwLCBWaWxsZSBTeXJqYWxhIHdyb3RlOgo+ID4gPiBGcm9tOiBWaWxsZSBTeXJqw6Rsw6QgPHZp bGxlLnN5cmphbGFAbGludXguaW50ZWwuY29tPgo+ID4gPiAKPiA+ID4gZW5jb2Rlci0+dHlwZSBp cyB1bnJlbGlhYmxlIGZvciBEUC9IRE1JLCBzbyBwYXNzIGl0IGluIGV4cGxpY2l0eSBpbnRvCj4g PiA+IGNubF9kZGlfdnN3aW5nX3NlcXVlbmNlKCkuIFRoaXMgbWF0Y2hlcyB3aGF0IHdlIGRvIGZv ciBCWFQuCj4gPiA+Cj4gPiAKPiA+IEkgc3RpbGwgZG9udCBnZXQgd2h5IHdlIGNhbnQgdXNlIGVu Y29kZXItPnR5cGUgcmVsaWFibHk/Cj4gPiBTaW5jZSBpZiBJIHRyYWNlIGJhY2sgb24gdGhlIGNh bGxlciBvZiBpbnRlbF9kZGlfcHJlX2VuYWJsZV9oZG1pIG9yCj4gPiBpbnRlbF9kZGlfcHJlX2Vu YWJsZV9kcCwgdGhlIGNhbGVyIGludGVsX2RkaV9wcmVfZW5hYmxlKCkgY2FsbHMKPiA+IGVpdGhl ciBvZiB0aGVzZSBiYXNlZCBvbiBlbmNvZGVyLT50eXBlIGl0c2VsZi4KPiA+IFNvIHdoeSBkbyB3 ZSBleHBsaWNpdGx5IG5lZWQgdG8gcGFzcyBlbmNvZGVyLT50eXBlIGluc3RlYWQKPiA+IG9mIGRl cml2aW5nIGl0IGZyb20gZW5jb2RlciBpbnNpZGUgdGhlIHZzd2luZ19zZXF1ZW5jXyBmdW5jdGlv bnM/Cj4gPiAKPiA+IE1heSBiZSBJIGFtIG1pc3Npbmcgc29tZXRoaW5nPwo+IAo+IEN1cnJlbnRs eSBEREkgZW5jb2Rlci0+dHlwZSBjaGFuZ2VzIGF0IHVucHJlZGljYXRibGUgdGltZXMgd2hlbmV2 ZXIKPiB3ZSBkZXRlY3QgYSBEUCBvciBIRE1JIHNpbmssIG9yIGZvcmNlIHRoZSBkcml2ZXIgdG8g dGhpbmsgb25lIG9yIHRoZQo+IG90aGVyIGlzIGNvbm5lY3RlZC4gVGh1cyBpdCBjYW4gZmxpcCBm bG9wIHByZXR0eSBtdWNoIHJhbmRvbWx5IGF0IGFueQo+IHRpbWUgbGVhZGluZyB0byBoaWxhcml0 eSBpZiB3ZSB0cnkgdG8gZHJpdmUgdGhlIHBvcnQgaW4gb25lIG1vZGUgYnV0Cj4gc29tZW9uZSBw bHVncyBpbiBhbm90aGVyIHR5cGUgb2Ygc2luay4KPiAKPiBJJ20gdHJ5aW5nIHRvIGVsaW1pbmF0 ZSB0aGF0IGZsaXAtZmxvcHBpbmcgYnkgbWFraW5nIHN1cmUgdGhlIAo+IGVuY29kZXItPnR5cGUg anVzdCBzYXlzICJEREkiLCBhbmQgaW5zdGVhZCB3ZSBmaWd1cmUgb3V0IHRoZSByZWFsIHR5cGUK PiBmcm9tIGNydGMgc3RhdGUgb3V0cHV0X3R5cGVzLiBTbyBvbmNlIEknbSBkb25lIChvbmUgbW9y ZSBwYXRjaCBzZXQKPiBhZnRlciB0aGlzIG9uZSBhdCBsZWFzdCksIHdlIHdpbGwgbm90IHVzZSBl bmNvZGVyLT50eXBlIGFueW1vcmUsIGV4Y2VwdAo+IGluIGEgdmVyeSBsaW1pdGVkIGZhc2hpb24g d2hpY2ggZG9lc24ndCBsZWFkIHRvIG1pc3Byb2dyYW1taW5nIG9mIHRoZQo+IGhhcmR3YXJlLgo+ CgpUaGFua3MgYSBsb3QgZm9yIHRoZSBleHBsYW5hdGlvbi4KVGhhdCBtYWtlcyBpdCBsb3VkIGFu ZCBjbGVhciBub3cuIFNvIHJpZ2h0IG5vdyBpbnRlbF9kZGlfcHJlX2VuYWJsZSgpCnN0aWxsIHVz ZXMgZW5jb2Rlci0+dHlwZSB0byBkZXRlcm1pbmUgd2hldGhlciB0byBjYWxsIGludG8KcHJlX2Vu YWJsZV9kcCgpIG9yIHByZV9lbmFibGVfaGRtaSgpLiAKU2hvdWxkbnQgd2UgY2hhbmdlIHRoYXQg dG8gdXNlIGNydGMgc3RhdGUgb3V0cHV0IHR5cGUgaW5zdGVhZCBhcyB3ZWxsPwpPciBkbyB5b3Ug cGxhbiB0byBkbyBpbiB0aGUgbmV4dCBwYXRjaCBzZXQ/CgpNYW5hc2kKCj4gPiAKPiA+IE1hbmFz aQo+ID4gIAo+ID4gPiB2MjogUGFzcyBpbnRlbF9lbmNvZGVyIGRvd24gdG8gY25sX2RkaV92c3dp bmdfcHJvZ3JhbSgpLCBhbmQKPiA+ID4gICAgIGNsZWFuIHVwIHRoZSBhcmd1bWVudCB0eXBlcyB3 aGlsZSBhdCBpdAo+ID4gPiAKPiA+ID4gU2lnbmVkLW9mZi1ieTogVmlsbGUgU3lyasOkbMOkIDx2 aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KPiA+ID4gLS0tCj4gPiA+ICBkcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9kZGkuYyB8IDUzICsrKysrKysrKysrKysrKysrKystLS0tLS0tLS0t LS0tLS0tLS0tLS0KPiA+ID4gIDEgZmlsZSBjaGFuZ2VkLCAyNSBpbnNlcnRpb25zKCspLCAyOCBk ZWxldGlvbnMoLSkKPiA+ID4gCj4gPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9kZGkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RkaS5jCj4gPiA+IGlu ZGV4IDJkODg2MTQ4YTY1My4uY2FiNzIxNzcyOTljIDEwMDY0NAo+ID4gPiAtLS0gYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9kZGkuYwo+ID4gPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9kZGkuYwo+ID4gPiBAQCAtMTkyMCwyMCArMTkyMCwyMSBAQCB1OCBpbnRlbF9kZGlf ZHBfdm9sdGFnZV9tYXgoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIpCj4gPiA+ICAJCURQ X1RSQUlOX1ZPTFRBR0VfU1dJTkdfTUFTSzsKPiA+ID4gIH0KPiA+ID4gIAo+ID4gPiAtc3RhdGlj IHZvaWQgY25sX2RkaV92c3dpbmdfcHJvZ3JhbShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2 X3ByaXYsCj4gPiA+IC0JCQkJICAgIHUzMiBsZXZlbCwgZW51bSBwb3J0IHBvcnQsIGludCB0eXBl KQo+ID4gPiArc3RhdGljIHZvaWQgY25sX2RkaV92c3dpbmdfcHJvZ3JhbShzdHJ1Y3QgaW50ZWxf ZW5jb2RlciAqZW5jb2RlciwKPiA+ID4gKwkJCQkgICBpbnQgbGV2ZWwsIGVudW0gaW50ZWxfb3V0 cHV0X3R5cGUgdHlwZSkKPiA+ID4gIHsKPiA+ID4gLQljb25zdCBzdHJ1Y3QgY25sX2RkaV9idWZf dHJhbnMgKmRkaV90cmFuc2xhdGlvbnMgPSBOVUxMOwo+ID4gPiAtCXUzMiBuX2VudHJpZXMsIHZh bDsKPiA+ID4gLQlpbnQgbG47Cj4gPiA+ICsJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2ID0gdG9faTkxNShlbmNvZGVyLT5iYXNlLmRldik7Cj4gPiA+ICsJZW51bSBwb3J0IHBvcnQg PSBpbnRlbF9kZGlfZ2V0X2VuY29kZXJfcG9ydChlbmNvZGVyKTsKPiA+ID4gKwljb25zdCBzdHJ1 Y3QgY25sX2RkaV9idWZfdHJhbnMgKmRkaV90cmFuc2xhdGlvbnM7Cj4gPiA+ICsJaW50IG5fZW50 cmllcywgbG47Cj4gPiA+ICsJdTMyIHZhbDsKPiA+ID4gIAo+ID4gPiAtCWlmICh0eXBlID09IElO VEVMX09VVFBVVF9IRE1JKSB7Cj4gPiA+ICsJaWYgKHR5cGUgPT0gSU5URUxfT1VUUFVUX0hETUkp Cj4gPiA+ICAJCWRkaV90cmFuc2xhdGlvbnMgPSBjbmxfZ2V0X2J1Zl90cmFuc19oZG1pKGRldl9w cml2LCAmbl9lbnRyaWVzKTsKPiA+ID4gLQl9IGVsc2UgaWYgKHR5cGUgPT0gSU5URUxfT1VUUFVU X0RQKSB7Cj4gPiA+IC0JCWRkaV90cmFuc2xhdGlvbnMgPSBjbmxfZ2V0X2J1Zl90cmFuc19kcChk ZXZfcHJpdiwgJm5fZW50cmllcyk7Cj4gPiA+IC0JfSBlbHNlIGlmICh0eXBlID09IElOVEVMX09V VFBVVF9FRFApIHsKPiA+ID4gKwllbHNlIGlmICh0eXBlID09IElOVEVMX09VVFBVVF9FRFApCj4g PiA+ICAJCWRkaV90cmFuc2xhdGlvbnMgPSBjbmxfZ2V0X2J1Zl90cmFuc19lZHAoZGV2X3ByaXYs ICZuX2VudHJpZXMpOwo+ID4gPiAtCX0KPiA+ID4gKwllbHNlCj4gPiA+ICsJCWRkaV90cmFuc2xh dGlvbnMgPSBjbmxfZ2V0X2J1Zl90cmFuc19kcChkZXZfcHJpdiwgJm5fZW50cmllcyk7Cj4gPiA+ ICAKPiA+ID4gIAlpZiAoV0FSTl9PTihkZGlfdHJhbnNsYXRpb25zID09IE5VTEwpKQo+ID4gPiAg CQlyZXR1cm47Cj4gPiA+IEBAIC0xOTg2LDI2ICsxOTg3LDIyIEBAIHN0YXRpYyB2b2lkIGNubF9k ZGlfdnN3aW5nX3Byb2dyYW0oc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAo+ID4g PiAgCUk5MTVfV1JJVEUoQ05MX1BPUlRfVFhfRFc3X0dSUChwb3J0KSwgdmFsKTsKPiA+ID4gIH0K PiA+ID4gIAo+ID4gPiAtc3RhdGljIHZvaWQgY25sX2RkaV92c3dpbmdfc2VxdWVuY2Uoc3RydWN0 IGludGVsX2VuY29kZXIgKmVuY29kZXIsIHUzMiBsZXZlbCkKPiA+ID4gK3N0YXRpYyB2b2lkIGNu bF9kZGlfdnN3aW5nX3NlcXVlbmNlKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAo+ID4g PiArCQkJCSAgICBpbnQgbGV2ZWwsIGVudW0gaW50ZWxfb3V0cHV0X3R5cGUgdHlwZSkKPiA+ID4g IHsKPiA+ID4gIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGVu Y29kZXItPmJhc2UuZGV2KTsKPiA+ID4gLQlzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwID0gZW5j X3RvX2ludGVsX2RwKCZlbmNvZGVyLT5iYXNlKTsKPiA+ID4gIAllbnVtIHBvcnQgcG9ydCA9IGlu dGVsX2RkaV9nZXRfZW5jb2Rlcl9wb3J0KGVuY29kZXIpOwo+ID4gPiAtCWludCB0eXBlID0gZW5j b2Rlci0+dHlwZTsKPiA+ID4gLQlpbnQgd2lkdGggPSAwOwo+ID4gPiAtCWludCByYXRlID0gMDsK PiA+ID4gKwlpbnQgd2lkdGgsIHJhdGUsIGxuOwo+ID4gPiAgCXUzMiB2YWw7Cj4gPiA+IC0JaW50 IGxuID0gMDsKPiA+ID4gIAo+ID4gPiAtCWlmICgoaW50ZWxfZHApICYmICh0eXBlID09IElOVEVM X09VVFBVVF9FRFAgfHwgdHlwZSA9PSBJTlRFTF9PVVRQVVRfRFApKSB7Cj4gPiA+ICsJaWYgKHR5 cGUgPT0gSU5URUxfT1VUUFVUX0hETUkpIHsKPiA+ID4gKwkJd2lkdGggPSA0Owo+ID4gPiArCQly YXRlID0gMDsgLyogUmF0ZSBpcyBhbHdheXMgPCB0aGFuIDZHSHogZm9yIEhETUkgKi8KPiA+ID4g Kwl9IGVsc2Ugewo+ID4gPiArCQlzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwID0gZW5jX3RvX2lu dGVsX2RwKCZlbmNvZGVyLT5iYXNlKTsKPiA+ID4gKwo+ID4gPiAgCQl3aWR0aCA9IGludGVsX2Rw LT5sYW5lX2NvdW50Owo+ID4gPiAgCQlyYXRlID0gaW50ZWxfZHAtPmxpbmtfcmF0ZTsKPiA+ID4g LQl9IGVsc2UgaWYgKHR5cGUgPT0gSU5URUxfT1VUUFVUX0hETUkpIHsKPiA+ID4gLQkJd2lkdGgg PSA0Owo+ID4gPiAtCQkvKiBSYXRlIGlzIGFsd2F5cyA8IHRoYW4gNkdIeiBmb3IgSERNSSAqLwo+ ID4gPiAtCX0gZWxzZSB7Cj4gPiA+IC0JCU1JU1NJTkdfQ0FTRSh0eXBlKTsKPiA+ID4gLQkJcmV0 dXJuOwo+ID4gPiAgCX0KPiA+ID4gIAo+ID4gPiAgCS8qCj4gPiA+IEBAIC0yMDE0LDcgKzIwMTEs NyBAQCBzdGF0aWMgdm9pZCBjbmxfZGRpX3Zzd2luZ19zZXF1ZW5jZShzdHJ1Y3QgaW50ZWxfZW5j b2RlciAqZW5jb2RlciwgdTMyIGxldmVsKQo+ID4gPiAgCSAqIGVsc2UgY2xlYXIgdG8gMGIuCj4g PiA+ICAJICovCj4gPiA+ICAJdmFsID0gSTkxNV9SRUFEKENOTF9QT1JUX1BDU19EVzFfTE4wKHBv cnQpKTsKPiA+ID4gLQlpZiAodHlwZSA9PSBJTlRFTF9PVVRQVVRfRURQIHx8IHR5cGUgPT0gSU5U RUxfT1VUUFVUX0RQKQo+ID4gPiArCWlmICh0eXBlICE9IElOVEVMX09VVFBVVF9IRE1JKQo+ID4g PiAgCQl2YWwgfD0gQ09NTU9OX0tFRVBFUl9FTjsKPiA+ID4gIAllbHNlCj4gPiA+ICAJCXZhbCAm PSB+Q09NTU9OX0tFRVBFUl9FTjsKPiA+ID4gQEAgLTIwNDksNyArMjA0Niw3IEBAIHN0YXRpYyB2 b2lkIGNubF9kZGlfdnN3aW5nX3NlcXVlbmNlKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVy LCB1MzIgbGV2ZWwpCj4gPiA+ICAJSTkxNV9XUklURShDTkxfUE9SVF9UWF9EVzVfR1JQKHBvcnQp LCB2YWwpOwo+ID4gPiAgCj4gPiA+ICAJLyogNS4gUHJvZ3JhbSBzd2luZyBhbmQgZGUtZW1waGFz aXMgKi8KPiA+ID4gLQljbmxfZGRpX3Zzd2luZ19wcm9ncmFtKGRldl9wcml2LCBsZXZlbCwgcG9y dCwgdHlwZSk7Cj4gPiA+ICsJY25sX2RkaV92c3dpbmdfcHJvZ3JhbShlbmNvZGVyLCBsZXZlbCwg dHlwZSk7Cj4gPiA+ICAKPiA+ID4gIAkvKiA2LiBTZXQgdHJhaW5pbmcgZW5hYmxlIHRvIHRyaWdn ZXIgdXBkYXRlICovCj4gPiA+ICAJdmFsID0gSTkxNV9SRUFEKENOTF9QT1JUX1RYX0RXNV9MTjAo cG9ydCkpOwo+ID4gPiBAQCAtMjA4OSw3ICsyMDg2LDcgQEAgdTMyIGJ4dF9zaWduYWxfbGV2ZWxz KHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHApCj4gPiA+ICAJdTMyIGxldmVsID0gaW50ZWxfZGRp X2RwX2xldmVsKGludGVsX2RwKTsKPiA+ID4gIAo+ID4gPiAgCWlmIChJU19DQU5OT05MQUtFKGRl dl9wcml2KSkKPiA+ID4gLQkJY25sX2RkaV92c3dpbmdfc2VxdWVuY2UoZW5jb2RlciwgbGV2ZWwp Owo+ID4gPiArCQljbmxfZGRpX3Zzd2luZ19zZXF1ZW5jZShlbmNvZGVyLCBsZXZlbCwgZW5jb2Rl ci0+dHlwZSk7Cj4gPiA+ICAJZWxzZQo+ID4gPiAgCQlieHRfZGRpX3Zzd2luZ19zZXF1ZW5jZShl bmNvZGVyLCBsZXZlbCwgZW5jb2Rlci0+dHlwZSk7Cj4gPiA+ICAKPiA+ID4gQEAgLTIxODgsNyAr MjE4NSw3IEBAIHN0YXRpYyB2b2lkIGludGVsX2RkaV9wcmVfZW5hYmxlX2RwKHN0cnVjdCBpbnRl bF9lbmNvZGVyICplbmNvZGVyLAo+ID4gPiAgCWludGVsX2Rpc3BsYXlfcG93ZXJfZ2V0KGRldl9w cml2LCBkaWdfcG9ydC0+ZGRpX2lvX3Bvd2VyX2RvbWFpbik7Cj4gPiA+ICAKPiA+ID4gIAlpZiAo SVNfQ0FOTk9OTEFLRShkZXZfcHJpdikpCj4gPiA+IC0JCWNubF9kZGlfdnN3aW5nX3NlcXVlbmNl KGVuY29kZXIsIGxldmVsKTsKPiA+ID4gKwkJY25sX2RkaV92c3dpbmdfc2VxdWVuY2UoZW5jb2Rl ciwgbGV2ZWwsIGVuY29kZXItPnR5cGUpOwo+ID4gPiAgCWVsc2UgaWYgKElTX0dFTjlfTFAoZGV2 X3ByaXYpKQo+ID4gPiAgCQlieHRfZGRpX3Zzd2luZ19zZXF1ZW5jZShlbmNvZGVyLCBsZXZlbCwg ZW5jb2Rlci0+dHlwZSk7Cj4gPiA+ICAJZWxzZQo+ID4gPiBAQCAtMjIxOSw3ICsyMjE2LDcgQEAg c3RhdGljIHZvaWQgaW50ZWxfZGRpX3ByZV9lbmFibGVfaGRtaShzdHJ1Y3QgaW50ZWxfZW5jb2Rl ciAqZW5jb2RlciwKPiA+ID4gIAlpbnRlbF9kaXNwbGF5X3Bvd2VyX2dldChkZXZfcHJpdiwgZGln X3BvcnQtPmRkaV9pb19wb3dlcl9kb21haW4pOwo+ID4gPiAgCj4gPiA+ICAJaWYgKElTX0NBTk5P TkxBS0UoZGV2X3ByaXYpKQo+ID4gPiAtCQljbmxfZGRpX3Zzd2luZ19zZXF1ZW5jZShlbmNvZGVy LCBsZXZlbCk7Cj4gPiA+ICsJCWNubF9kZGlfdnN3aW5nX3NlcXVlbmNlKGVuY29kZXIsIGxldmVs LCBJTlRFTF9PVVRQVVRfSERNSSk7Cj4gPiA+ICAJZWxzZSBpZiAoSVNfR0VOOV9MUChkZXZfcHJp dikpCj4gPiA+ICAJCWJ4dF9kZGlfdnN3aW5nX3NlcXVlbmNlKGVuY29kZXIsIGxldmVsLCBJTlRF TF9PVVRQVVRfSERNSSk7Cj4gPiA+ICAJZWxzZQo+ID4gPiAtLSAKPiA+ID4gMi4xMy42Cj4gPiA+ IAo+ID4gPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo+ ID4gPiBJbnRlbC1nZnggbWFpbGluZyBsaXN0Cj4gPiA+IEludGVsLWdmeEBsaXN0cy5mcmVlZGVz a3RvcC5vcmcKPiA+ID4gaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0 aW5mby9pbnRlbC1nZngKPiAKPiAtLSAKPiBWaWxsZSBTeXJqw6Rsw6QKPiBJbnRlbCBPVEMKX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1h aWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMu ZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==