From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rodrigo Vivi Subject: Re: [PATCH 3/8] drm/i915/icl: store the port type for TC ports Date: Mon, 16 Jul 2018 16:17:08 -0700 Message-ID: <20180716231708.GD2324@intel.com> References: <20180711215909.23945-1-paulo.r.zanoni@intel.com> <20180711215909.23945-4-paulo.r.zanoni@intel.com> <20180713061423.GA2459@intel.com> <1531778641.2503.21.camel@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by gabe.freedesktop.org (Postfix) with ESMTPS id 826416E50F for ; Mon, 16 Jul 2018 23:17:36 +0000 (UTC) Content-Disposition: inline In-Reply-To: <1531778641.2503.21.camel@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Paulo Zanoni Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gTW9uLCBKdWwgMTYsIDIwMTggYXQgMDM6MDQ6MDFQTSAtMDcwMCwgUGF1bG8gWmFub25pIHdy b3RlOgo+IEVtIFF1aSwgMjAxOC0wNy0xMiDDoHMgMjM6MTQgLTA3MDAsIFJvZHJpZ28gVml2aSBl c2NyZXZldToKPiA+IE9uIFdlZCwgSnVsIDExLCAyMDE4IGF0IDAyOjU5OjA0UE0gLTA3MDAsIFBh dWxvIFphbm9uaSB3cm90ZToKPiA+ID4gVGhlIHR5cGUgaXMgZGV0ZWN0ZWQgYmFzZWQgb24gdGhl IGludGVycnVwdCBJU1IgYml0LiBPbmNlIGRldGVjdGVkLAo+ID4gPiBpdCdzIG5vdCBzdXBwb3Nl ZCB0byBiZSBjaGFuZ2VkLCBzbyB3ZSBoYXZlIHNvbWUgc2FuaXR5IGNoZWNrcyBmb3IKPiA+ID4g dGhhdC4KPiA+ID4gCj4gPiA+IENjOiBBbmltZXNoIE1hbm5hIDxhbmltZXNoLm1hbm5hQGludGVs LmNvbT4KPiA+ID4gU2lnbmVkLW9mZi1ieTogUGF1bG8gWmFub25pIDxwYXVsby5yLnphbm9uaUBp bnRlbC5jb20+Cj4gPiA+IFNpZ25lZC1vZmYtYnk6IFJvZHJpZ28gVml2aSA8cm9kcmlnby52aXZp QGludGVsLmNvbT4KPiA+ID4gLS0tCj4gPiA+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9k aXNwbGF5LmggfCAgNyArKysrKysrCj4gPiA+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9k cC5jICAgICAgfCAzNgo+ID4gPiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0K PiA+ID4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oICAgICB8ICAxICsKPiA+ID4g IDMgZmlsZXMgY2hhbmdlZCwgNDMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQo+ID4gPiAK PiA+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuaAo+ ID4gPiBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuaAo+ID4gPiBpbmRleCBj YTVhMTBmMzQwMGQuLjE4ZWQ5ODM1MzM1YyAxMDA2NDQKPiA+ID4gLS0tIGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5oCj4gPiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2Rpc3BsYXkuaAo+ID4gPiBAQCAtMTM3LDYgKzEzNywxMyBAQCBlbnVtIHRjX3BvcnQg ewo+ID4gPiAgCUk5MTVfTUFYX1RDX1BPUlRTCj4gPiA+ICB9Owo+ID4gPiAgCj4gPiA+ICtlbnVt IHRjX3BvcnRfdHlwZSB7Cj4gPiA+ICsJVENfUE9SVF9VTktOT1dOID0gMCwKPiA+ID4gKwlUQ19Q T1JUX1RZUEVDLAo+ID4gPiArCVRDX1BPUlRfVEJULAo+ID4gPiArCVRDX1BPUlRfTEVHQUNZLAo+ ID4gPiArfTsKPiA+ID4gKwo+ID4gPiAgZW51bSBkcGlvX2NoYW5uZWwgewo+ID4gPiAgCURQSU9f Q0gwLAo+ID4gPiAgCURQSU9fQ0gxCj4gPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9kcC5jCj4gPiA+IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHAuYwo+ ID4gPiBpbmRleCBmMjE5N2RlYTAyZDAuLjQ4NmI4NzljZGVmNyAxMDA2NDQKPiA+ID4gLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHAuYwo+ID4gPiArKysgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9kcC5jCj4gPiA+IEBAIC00NzUyLDYgKzQ3NTIsMzggQEAgc3RhdGljIGJv b2wgaWNsX2NvbWJvX3BvcnRfY29ubmVjdGVkKHN0cnVjdAo+ID4gPiBkcm1faTkxNV9wcml2YXRl ICpkZXZfcHJpdiwKPiA+ID4gIAlyZXR1cm4gSTkxNV9SRUFEKFNERUlTUikgJiBTREVfRERJX0hP VFBMVUdfSUNQKHBvcnQpOwo+ID4gPiAgfQo+ID4gPiAgCj4gPiA+ICtzdGF0aWMgdm9pZCBpY2xf dXBkYXRlX3RjX3BvcnRfdHlwZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZQo+ID4gPiAqZGV2X3By aXYsCj4gPiA+ICsJCQkJICAgIHN0cnVjdCBpbnRlbF9kaWdpdGFsX3BvcnQKPiA+ID4gKmludGVs X2RpZ19wb3J0LAo+ID4gPiArCQkJCSAgICBib29sIGlzX2xlZ2FjeSwgYm9vbCBpc190eXBlYywK PiA+ID4gYm9vbCBpc190YnQpCj4gPiA+ICt7Cj4gPiA+ICsJZW51bSBwb3J0IHBvcnQgPSBpbnRl bF9kaWdfcG9ydC0+YmFzZS5wb3J0Owo+ID4gPiArCWVudW0gdGNfcG9ydF90eXBlIG9sZF90eXBl ID0gaW50ZWxfZGlnX3BvcnQtPnRjX3R5cGU7Cj4gPiA+ICsJY29uc3QgY2hhciAqdHlwZV9zdHI7 Cj4gPiA+ICsKPiA+ID4gKwlXQVJOX09OKGlzX2xlZ2FjeSArIGlzX3R5cGVjICsgaXNfdGJ0ICE9 IDEpOwo+ID4gPiArCj4gPiA+ICsJaWYgKGlzX2xlZ2FjeSkgewo+ID4gPiArCQlpbnRlbF9kaWdf cG9ydC0+dGNfdHlwZSA9IFRDX1BPUlRfTEVHQUNZOwo+ID4gPiArCQl0eXBlX3N0ciA9ICJsZWdh Y3kiOwo+ID4gPiArCX0gZWxzZSBpZiAoaXNfdHlwZWMpIHsKPiA+ID4gKwkJaW50ZWxfZGlnX3Bv cnQtPnRjX3R5cGUgPSBUQ19QT1JUX1RZUEVDOwo+ID4gPiArCQl0eXBlX3N0ciA9ICJ0eXBlYyI7 Cj4gPiA+ICsJfSBlbHNlIGlmIChpc190YnQpIHsKPiA+ID4gKwkJaW50ZWxfZGlnX3BvcnQtPnRj X3R5cGUgPSBUQ19QT1JUX1RCVDsKPiA+ID4gKwkJdHlwZV9zdHIgPSAidGJ0IjsKPiA+ID4gKwl9 IGVsc2Ugewo+ID4gPiArCQlyZXR1cm47Cj4gPiA+ICsJfQo+ID4gPiArCj4gPiA+ICsJLyogVHlw ZXMgYXJlIG5vdCBzdXBwb3NlZCB0byBiZSBjaGFuZ2VkIGF0IHJ1bnRpbWUuICovCj4gPiA+ICsJ V0FSTl9PTihvbGRfdHlwZSAhPSBUQ19QT1JUX1VOS05PV04gJiYKPiA+ID4gKwkJb2xkX3R5cGUg IT0gaW50ZWxfZGlnX3BvcnQtPnRjX3R5cGUpOwo+ID4gPiArCj4gPiA+ICsJaWYgKG9sZF90eXBl ICE9IGludGVsX2RpZ19wb3J0LT50Y190eXBlKQo+ID4gPiArCQlEUk1fREVCVUdfS01TKCJQb3J0 ICVjIGhhcyBUQyB0eXBlICVzXG4iLAo+ID4gPiBwb3J0X25hbWUocG9ydCksCj4gPiA+ICsJCQkg ICAgICB0eXBlX3N0cik7Cj4gPiA+ICt9Cj4gPiA+ICsKPiA+ID4gIHN0YXRpYyBib29sIGljbF90 Y19wb3J0X2Nvbm5lY3RlZChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZQo+ID4gPiAqZGV2X3ByaXYs Cj4gPiA+ICAJCQkJICBzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0Cj4gPiA+ICppbnRlbF9kaWdf cG9ydCkKPiA+ID4gIHsKPiA+ID4gQEAgLTQ3NzIsMTAgKzQ4MDQsMTIgQEAgc3RhdGljIGJvb2wg aWNsX3RjX3BvcnRfY29ubmVjdGVkKHN0cnVjdAo+ID4gPiBkcm1faTkxNV9wcml2YXRlICpkZXZf cHJpdiwKPiA+ID4gIAlpZiAoY3B1X2lzciAmIHRidF9iaXQpCj4gPiA+ICAJCWlzX3RidCA9IHRy dWU7Cj4gPiA+ICAKPiA+ID4gLQlXQVJOX09OKGlzX2xlZ2FjeSArIGlzX3R5cGVjICsgaXNfdGJ0 ID4gMSk7Cj4gPiAKPiA+IG9oLCBJIGtub3cgc2VlIHRoYXQgSSBnb3QgaXQgd3Jvbmcgb24gbXkg cHJldmlvdXMgc3VnZ2VzdGlvbiwgYnV0Cj4gPiBzaW5jZQo+ID4gd2UgYXJlIHJlbW92aW5nIG1h eWJlIGl0IGlzIGJldHRlciB0byBub3QgYWRkIGF0IGFsbCBhdCBmaXJzdCBwbGFjZT8hCj4gCj4g V2UgYXJlIG1vdmluZyBpdC4gSXQgd2FzIGluIHRoZSBjb3JyZWN0IHBsYWNlIGluIHRoZSBsYXN0 IHBhdGNoLCBpdCBpcwo+IGluIHRoZSBjb3JyZWN0IHBsYWNlIG5vdy4KPiAKPiA+IAo+ID4gPiAg CWlmICghaXNfbGVnYWN5ICYmICFpc190eXBlYyAmJiAhaXNfdGJ0KQo+ID4gPiAgCQlyZXR1cm4g ZmFsc2U7Cj4gPiA+ICAKPiA+ID4gKwlpY2xfdXBkYXRlX3RjX3BvcnRfdHlwZShkZXZfcHJpdiwg aW50ZWxfZGlnX3BvcnQsCj4gPiA+IGlzX2xlZ2FjeSwgaXNfdHlwZWMsCj4gPiA+ICsJCQkJaXNf dGJ0KTsKPiA+IAo+ID4gZm9yIGEgd2hpbGUgSSB0aG91Z3RoIHRoaXMgd2FzIHRoZSBzdGFydCBv ZiB0aGUgY2hhaW4gdGhhdCBJIGRpZG4ndAo+ID4gbGlrZSwKPiA+IGJ1dCBJIHdhcyB3cm9uZywg dGhlIHR5cGUgSSBiZWxpZXZlIGl0IGNhbi9uZWVkIHRvIGJlIGhlcmUgaW5kZWVkLgo+ID4gCj4g PiBidXQgZm9yIGV2ZXJ5dGhpbmcgZWxzZSBJIGJlbGlldmUgdGhhdCB5b3UgbmVlZCB0byBoYW5k bGUgb24KPiA+IGxvbmdfcHVsc2UuCj4gCj4gSSByZWFsbHkgbmVlZCBiZXR0ZXIgZXhwbGFuYXRp b25zIGluc3RlYWQgb2YgIkkgZG9uJ3QgbGlrZSIgYW5kICJJIGZlZWwKPiB0aGlzIGlzIHdyb25n Ii4gSSBjYW4ndCBldmVuIHN0YXJ0IHRvIHRoaW5rIG9uIGhvdyB0byBpbXBsZW1lbnQgYW4KPiBh Y2NlcHRhYmxlIHNvbHV0aW9uIGlmIHlvdSBkb24ndCB0cnkgdG8gZWxhYm9yYXRlIGEgZmV3IG1v cmUgcHJvYmxlbXMKPiBvbiB3aGF0IGV4YWN0bHkgaXMgd3Jvbmcgd2l0aCB0aGUgc2VyaWVzLCBp biB0ZWNobmljYWwgZXhwbGFuYXRpb25zCj4gd2l0aCByZWFzb25zIGluc3RlYWQgb2YgZmVlbGlu Z3MuCj4gCj4gVGhlIHdheSBJIGltYWdpbmUgYSBzb2x1dGlvbiB3aXRoIGNvZGUgbW92ZWQgb3V0 IGlzIHRoYXQgZXZlcnkgY2FsbCB0bwo+IGludGVsX2RpZ2l0YWxfcG9ydF9jb25uZWN0ZWQoKSB3 aWxsIG5lZWQgdG8gaGF2ZSBhIGZvbGxvd2luZyBjYWxsIHRvCj4gdGhlIGZ1bmN0aW9uIHlvdSdy ZSB0ZWxsaW5nIG1lIHRvIGV4dHJhY3QsIHdoaWNoIGRvZXNuJ3QgbWFrZSBzZW5zZSB0bwo+IG1l LiBPciBtYXliZSB3ZSBjb3VsZCB3cmFwIHRoZSBhbGwgdGhlIGNhbGwgcGFpcnMgdW5kZXIKPiBp bnRlbF9kaWdpdGFsX3BvcnRfcmVhbGx5X2Nvbm5lY3RlZCgpIDopLgo+IAo+ID4gCj4gPiBpZiBp dCBpcyBjb25uZWN0ZWQgYW5kIHRjX3R5cGUgIT0ga25vd24gdGhhbiB5b3UgZG8gYWxsIHRoZSBy ZXN0Cj4gPiBvZiB0aGUgb3BwZXJhdGlvbiBpbnN0ZWFkIG9mIG1ha2luZyBhIGh1Z2UgY2hhaW4g ZnJvbSB0aGlzIHBvaW50Lgo+IAo+IFdoYXQgZXhhY3RseSBpcyAiaHVnZSIgYWJvdXQgaXQ/Cgpv ay4uLiBodWdlIHdhcyBqdXN0IG15IHdyb25nIGltcHJlc3Npb24uLi4gaXQgaXMgbm90IGh1Z2Ug aW5kZWVkIGFuZApub3Qgc3VjaCBhIGNoYWluIGJlY2F1c2Ugc3RhdHVzIGZ1bmN0aW9uIGlzIG5v dCBjYWxsZWQgaW5zaWRlIHRoZSB0Y19wb3J0X3R5cGUuLi4KCj4gCj4gPiAKPiA+IChmb3IgdGhl IGxzcGNvbiB3YSBwYXRoIEkgZG9uJ3QgYmVsaWV2ZSB3ZSBuZWVkIHRoYXQgYXQgYWxsLCBidXQg aWYKPiA+IHdlCj4gPiBuZWVkIHdlIHNob3VsZCBhbHNvIGhhbmRsZSB0aGVyZSkKPiAKPiBQbGVh c2UgZXhwbGFpbiB3aXRoIHRlY2huaWNhbCB0ZXJtcyB0aGUgImJlbGlldmUiIHBhcnQuCgpCdXQg aXQgaXMgbm90IGp1c3QgYSBtYXR0ZXIgb2YgYmVsaWVmIGFuZCBJIHRob3VnaHQgSSBoYWQgYWxy ZWFkeSBleHBsYWluZWQKbXkgY29uY2VybnMgb24gdGhhdCB2ZXJ5IGZpcnN0IGVtYWlsIHdoZXJl IHlvdSBhc2tlZCBmb3Igb3B0aW9ucywgYW55d2F5czoKCkFjY29yZGluZyB0byBvdXIgY3VycmVu dCBkb2N1bWVudGF0aW9uCgoiCiogaW50ZWxfZGlnaXRhbF9wb3J0X2Nvbm5lY3RlZCAtIGlzIHRo ZSBzcGVjaWZpZWQgcG9ydCBjb25uZWN0ZWQ/CiogUmV0dXJuICV0cnVlIGlmIHBvcnQgaXMgY29u bmVjdGVkLCAlZmFsc2Ugb3RoZXJ3aXNlLgoiCgp3aGlsZSBiZWhhdmlvciBvZiBpbnRlbF9kaWdp dGFsX3BvcnRfY29ubmVjdGVkIGZvciBUQyBvbiBJQ0wKYWZ0ZXIgdGhlc2UgcGF0Y2hlcyBpcyBz b21ldGhpbmcgbGlrZSB0aGlzOgoKSWYgcG9ydCBpcyBjb25uZWN0ZWQsIHNldCB0aGUgVEMgdHlw ZSwgc2V0IHRoZSBzYWZlIGJpdCBzdGF0dXMgYW5kCnJldHVybiB0cnVlIGlmIGFsbCBvZiB0aGVz ZSBzdWNjZWVkZWQsIGZhbHNlIG90aGVyd2lzZS4KCihub3cgSSdtIGF2b2lkaW5nIHRoZSB3b3Jk ICJiZWxpZXZlIikgaW4gbXkgaG9uZXN0IHZpZXcgdGhlIGFyY2hpdGVjdHVyZQpoZXJlIGNvdWxk IGJlIGJldHRlciBpbiBhIHdheSB0aGF0IHdlIGtlZXAgaW50ZWxfZGlnaXRhbF9wb3J0X2Nvbm5l Y3Qgd2l0aAppdHMgb25seSBtZWFuaW5nIGFuZCBtb3ZlIHRoZSBzYWZlIGJpdCBzZXR1cCBhbnl3 aGVyZSBlbHNlLgoKQWZ0ZXIgYWxsIHNwZWMgYWxzbyBpbmRpY2F0ZXMgdGhhdCB3ZSBuZWVkIHRv IHNldCBpdCBpZiB1c2luZyB0aGUKbWFpbiBsaW5rIG9yIGF1eC4gaW1obyB0aGUgaG90cGx1ZyBw YXJ0IGlzIG5vdCB0aGUgYmVzdCBwYXRoIHRvCmRldGVybWluZSB0aGF0Li4uIG1heWJlIHNvbWV3 aGVyZSBhcm91bmQgdGhlIG1vZGVzZXQgb3IgcG93ZXItd2VsbApvciBpbiB0aGUgd29yc3QgY2Fz ZSwgcmlnaHQgYWZ0ZXIgaW50ZWxfZGlnaXRhbF9wb3J0X2Nvbm5lY3RlZCBjYWxsLApidXQgb3V0 c2lkZSBvZiBpbnRlbF9kaWdpdGFsX3BvcnRfY29ubmVjdCBpdHNlbGYuLi4KCj4gCj4gCj4gPiAK PiA+IEZvciB0aGlzIHBhdGNoOgo+ID4gCj4gPiBSZXZpZXdlZC1ieTogUm9kcmlnbyBWaXZpIDxy b2RyaWdvLnZpdmlAaW50ZWwuY29tPgo+ID4gCj4gPiA+ICsKPiA+ID4gIAlyZXR1cm4gdHJ1ZTsK PiA+ID4gIH0KPiA+ID4gIAo+ID4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZHJ2LmgKPiA+ID4gYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAo+ID4g PiBpbmRleCA2MWU3MTVkZGQwZDUuLjhiM2MzZGM3NjgxMCAxMDA2NDQKPiA+ID4gLS0tIGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPiA+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfZHJ2LmgKPiA+ID4gQEAgLTExNjIsNiArMTE2Miw3IEBAIHN0cnVjdCBpbnRl bF9kaWdpdGFsX3BvcnQgewo+ID4gPiAgCWJvb2wgcmVsZWFzZV9jbDJfb3ZlcnJpZGU7Cj4gPiA+ ICAJdWludDhfdCBtYXhfbGFuZXM7Cj4gPiA+ICAJZW51bSBpbnRlbF9kaXNwbGF5X3Bvd2VyX2Rv bWFpbiBkZGlfaW9fcG93ZXJfZG9tYWluOwo+ID4gPiArCWVudW0gdGNfcG9ydF90eXBlIHRjX3R5 cGU7Cj4gPiA+ICAKPiA+ID4gIAl2b2lkICgqd3JpdGVfaW5mb2ZyYW1lKShzdHJ1Y3QgZHJtX2Vu Y29kZXIgKmVuY29kZXIsCj4gPiA+ICAJCQkJY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUK PiA+ID4gKmNydGNfc3RhdGUsCj4gPiA+IC0tIAo+ID4gPiAyLjE0LjQKPiA+ID4gCj4gPiA+IF9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4gPiA+IEludGVs LWdmeCBtYWlsaW5nIGxpc3QKPiA+ID4gSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+ ID4gPiBodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVs LWdmeAo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4g SW50ZWwtZ2Z4IG1haWxpbmcgbGlzdAo+IEludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcK PiBodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdm eApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1n ZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9s aXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK