From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jani Nikula Subject: Re: [PATCH v2 2/2] drm/i915: Add N & CTS values for 10/12 bit deep color Date: Tue, 11 Jun 2019 12:47:40 +0300 Message-ID: <87muioxxkz.fsf@intel.com> References: <20190402121440.20116-1-aditya.swarup@intel.com> <20190402121440.20116-2-aditya.swarup@intel.com> <87r28zaiid.fsf@intel.com> <20190517105937.GA12092@aswarup-desk> <875zq99uvv.fsf@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by gabe.freedesktop.org (Postfix) with ESMTPS id 66F158918E for ; Tue, 11 Jun 2019 09:44:41 +0000 (UTC) In-Reply-To: <875zq99uvv.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: Aditya Swarup Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gRnJpLCAxNyBNYXkgMjAxOSwgSmFuaSBOaWt1bGEgPGphbmkubmlrdWxhQGludGVsLmNvbT4g d3JvdGU6Cj4gT24gRnJpLCAxNyBNYXkgMjAxOSwgQWRpdHlhIFN3YXJ1cCA8YWRpdHlhLnN3YXJ1 cEBpbnRlbC5jb20+IHdyb3RlOgo+PiBPbiBXZWQsIE1heSAxNSwgMjAxOSBhdCAwNTo0MDoxMFBN ICswMzAwLCBKYW5pIE5pa3VsYSB3cm90ZToKPj4+IE9uIFR1ZSwgMDIgQXByIDIwMTksIEFkaXR5 YSBTd2FydXAgPGFkaXR5YS5zd2FydXBAaW50ZWwuY29tPiB3cm90ZToKPj4+ID4gQWRkaW5nIE4g JiBDVFMgdmFsdWVzIGZvciAxMC8xMiBiaXQgZGVlcCBjb2xvciBmcm9tIEFwcGVuZGl4IEMKPj4+ ID4gdGFibGUgaW4gSERNSSAyLjAgc3BlYy4gVGhlIGNvcnJlY3QgdmFsdWVzIGZvciBOIGlzIG5v dCBjaG9zZW4KPj4+ID4gYXV0b21hdGljYWxseSBieSBoYXJkd2FyZSBmb3IgZGVlcCBjb2xvciBt b2Rlcy4KPj4+ID4KPj4+ID4gdjI6IFJlbW92ZSByZWR1bmRhbnQgY29kZSBhbmQgbWFrZSBpdCBn ZW5lcmljLihKYW5pKQo+Pj4gPgo+Pj4gPiBTaWduZWQtb2ZmLWJ5OiBBZGl0eWEgU3dhcnVwIDxh ZGl0eWEuc3dhcnVwQGludGVsLmNvbT4KPj4+ID4gQ2M6IENsaW50IFRheWxvciA8Q2xpbnRvbi5B LlRheWxvckBpbnRlbC5jb20+Cj4+PiA+IENjOiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5cmph bGFAbGludXguaW50ZWwuY29tPgo+Pj4gPiBDYzogSmFuaSBOaWt1bGEgPGphbmkubmlrdWxhQGlu dGVsLmNvbT4KPj4+ID4gQ2M6IE1hbmFzaSBOYXZhcmUgPG1hbmFzaS5kLm5hdmFyZUBpbnRlbC5j b20+Cj4+PiA+IC0tLQo+Pj4gPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYXVkaW8uYyB8 IDgyICsrKysrKysrKysrKysrKysrKysrKysrKystLS0tLQo+Pj4gPiAgMSBmaWxlIGNoYW5nZWQs IDY5IGluc2VydGlvbnMoKyksIDEzIGRlbGV0aW9ucygtKQo+Pj4gPgo+Pj4gPiBkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYXVkaW8uYyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2F1ZGlvLmMKPj4+ID4gaW5kZXggNTAyYjU3Y2U3MmFiLi5hZDUzYjA0ZmE1YTIg MTAwNjQ0Cj4+PiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2F1ZGlvLmMKPj4+ ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYXVkaW8uYwo+Pj4gPiBAQCAtNzAs NiArNzAsMTMgQEAgc3RydWN0IGRwX2F1ZF9uX20gewo+Pj4gPiAgCXUxNiBuOwo+Pj4gPiAgfTsK Pj4+ID4gIAo+Pj4gPiArc3RydWN0IGhkbWlfYXVkX25jdHNfdGFibGUgewo+Pj4gCj4+PiBUaGUg c3RydWN0IGl0c2VsZiBpcyBub3QgYSB0YWJsZS4gSnVzdCBtYWtlIGl0IHN0cnVjdCBoZG1pX25j dHMgb3IKPj4+IHNvbWV0aGluZy4KPj4gV2lsbCBkbyBpdCBpbiB0aGUgbmV4dCBzcGluLgoKQWRp dHlhLCBwbGVhc2UgcHJvdmlkZSB0aGUgdXBkYXRlZCB2ZXJzaW9uLgoKQlIsCkphbmkuCgo+Pj4g Cj4+PiA+ICsJaW50IHNhbXBsZV9yYXRlOwo+Pj4gPiArCWludCBjbG9jazsKPj4+ID4gKwlpbnQg bjsKPj4+ID4gKwlpbnQgY3RzOwo+Pj4gPiArfTsKPj4+ID4gKwo+Pj4gPiAgLyogVmFsdWVzIGFj Y29yZGluZyB0byBEUCAxLjQgVGFibGUgMi0xMDQgKi8KPj4+ID4gIHN0YXRpYyBjb25zdCBzdHJ1 Y3QgZHBfYXVkX25fbSBkcF9hdWRfbl9tW10gPSB7Cj4+PiA+ICAJeyAzMjAwMCwgTENfMTYyTSwg MTAyNCwgMTAxMjUgfSwKPj4+ID4gQEAgLTE0NiwxMiArMTUzLDcgQEAgc3RhdGljIGNvbnN0IHN0 cnVjdCB7Cj4+PiA+ICAjZGVmaW5lIFRNRFNfNTk0TSA1OTQwMDAKPj4+ID4gICNkZWZpbmUgVE1E U181OTNNIDU5MzQwNwo+Pj4gPiAgCj4+PiA+IC1zdGF0aWMgY29uc3Qgc3RydWN0IHsKPj4+ID4g LQlpbnQgc2FtcGxlX3JhdGU7Cj4+PiA+IC0JaW50IGNsb2NrOwo+Pj4gPiAtCWludCBuOwo+Pj4g PiAtCWludCBjdHM7Cj4+PiA+IC19IGhkbWlfYXVkX25jdHNbXSA9IHsKPj4+ID4gK3N0YXRpYyBj b25zdCBzdHJ1Y3QgaGRtaV9hdWRfbmN0c190YWJsZSBoZG1pX2F1ZF9uY3RzXzI0YnBwW10gPSB7 Cj4+PiA+ICAJeyAzMjAwMCwgVE1EU18yOTZNLCA1ODI0LCA0MjE4NzUgfSwKPj4+ID4gIAl7IDMy MDAwLCBUTURTXzI5N00sIDMwNzIsIDIyMjc1MCB9LAo+Pj4gPiAgCXsgMzIwMDAsIFRNRFNfNTkz TSwgNTgyNCwgODQzNzUwIH0sCj4+PiA+IEBAIC0xODIsNiArMTg0LDQ5IEBAIHN0YXRpYyBjb25z dCBzdHJ1Y3Qgewo+Pj4gPiAgCXsgMTkyMDAwLCBUTURTXzU5NE0sIDI0NTc2LCA1OTQwMDAgfSwK Pj4+ID4gIH07Cj4+PiA+ICAKPj4+ID4gKy8qIEFwcGVuZGl4IEMgLSBOICYgQ1RTIHZhbHVlcyBm b3IgZGVlcCBjb2xvciBmcm9tIEhETUkgMi4wIHNwZWMqLwo+Pj4gPiArLyogSERNSSBOL0NUUyB0 YWJsZSBmb3IgMTAgYml0IGRlZXAgY29sb3IoMzAgYnBwKSovCj4+PiA+ICsjZGVmaW5lIFRNRFNf MzcxTSAzNzEyNTAKPj4+ID4gKyNkZWZpbmUgVE1EU18zNzBNIDM3MDg3OAo+Pj4gPiArCj4+PiA+ ICtzdGF0aWMgY29uc3Qgc3RydWN0IGhkbWlfYXVkX25jdHNfdGFibGUgaGRtaV9hdWRfbmN0c18z MGJwcFtdID0gewo+Pj4gPiArCXsgMzIwMDAsIFRNRFNfMzcwTSwgNTgyNCwgNTI3MzQ0IH0sCj4+ PiAKPj4+IE4gc2hvdWxkIGJlIDExNjQ4Pwo+PiBUaGUgdmFsdWUgaW4gdGhlIHN0cnVjdCBpcyBj b3JyZWN0LiBJdCBpcyA1ODI0IC0gQXBwZW5kaXggQyBUYWJsZSBDLTEgUGcKPj4gMjM0LCBmb3Ig MzcxLjI1LzEuMDAxIGFuZCBmID0gMzJrSHogPT4gTiA9IDU4MjQKPgo+IEh1aCwgbG9va3MgbGlr ZSBJIGhhdmUgYW4gb3V0ZGF0ZWQgdmVyc2lvbiBvZiB0aGUgc3BlYyB0aGVuLiBGb3IgbWUgdGhl Cj4gdGFibGUgaXMgb24gcGFnZSAyMzIuCj4KPiBOZWVkIHRvIGZpbmQgdGhlIHVwLXRvLWRhdGUg c3BlYywgYnV0IGxvb2tpbmcgYXQgZHJhZnQgMi4xIHRoZSB2YWx1ZXMKPiB5b3UgaGF2ZSBtYXRj aC4KPgo+Pj4gCj4+PiA+ICsJeyAzMjAwMCwgVE1EU18zNzFNLCA2MTQ0LCA1NTY4NzUgfSwKPj4+ ID4gKwl7IDQ0MTAwLCBUTURTXzM3ME0sIDg5MTgsIDU4NTkzOCB9LAo+Pj4gCj4+PiBOIDE3ODM2 Cj4+IFZhbHVlIGluIHRoZSB0YWJsZSBpcyBjb3JyZWN0Lgo+Pj4gCj4+PiA+ICsJeyA0NDEwMCwg VE1EU18zNzFNLCA0NzA0LCAzMDkzNzUgfSwKPj4+ID4gKwl7IDg4MjAwLCBUTURTXzM3ME0sIDE3 ODM2LCA1ODU5MzggfSwKPj4+IAo+Pj4gTiAzNTY3Mgo+PiBWYWx1ZSBpbiB0aGUgdGFibGUgaXMg Y29ycmVjdC4KPj4+IAo+Pj4gPiArCXsgODgyMDAsIFRNRFNfMzcxTSwgOTQwOCwgMzA5Mzc1IH0s Cj4+PiA+ICsJeyAxNzY0MDAsIFRNRFNfMzcwTSwgMzU2NzIsIDU4NTkzOCB9LAo+Pj4gCj4+PiBO IDcxMzQ0Cj4+IFZhbHVlIGluIHRoZSB0YWJsZSBpcyBjb3JyZWN0Lgo+Pj4gCj4+PiA+ICsJeyAx NzY0MDAsIFRNRFNfMzcxTSwgMTg4MTYsIDMwOTM3NSB9LAo+Pj4gPiArCXsgNDgwMDAsIFRNRFNf MzcwTSwgMTE2NDgsIDcwMzEyNSB9LAo+Pj4gPiArCXsgNDgwMDAsIFRNRFNfMzcxTSwgNTEyMCwg MzA5Mzc1IH0sCj4+PiA+ICsJeyA5NjAwMCwgVE1EU18zNzBNLCAyMzI5NiwgNzAzMTI1IH0sCj4+ PiA+ICsJeyA5NjAwMCwgVE1EU18zNzFNLCAxMDI0MCwgMzA5Mzc1IH0sCj4+PiA+ICsJeyAxOTIw MDAsIFRNRFNfMzcwTSwgNDY1OTIsIDcwMzEyNSB9LAo+Pj4gPiArCXsgMTkyMDAwLCBUTURTXzM3 MU0sIDIwNDgwLCAzMDkzNzUgfSwKPj4+ID4gK307Cj4+PiA+ICsKPj4+ID4gKy8qIEhETUkgTi9D VFMgdGFibGUgZm9yIDEyIGJpdCBkZWVwIGNvbG9yKDM2IGJwcCkqLwo+Pj4gPiArI2RlZmluZSBU TURTXzQ0NV81TSA0NDU1MDAKPj4+ID4gKyNkZWZpbmUgVE1EU180NDVNIDQ0NTA1NAo+Pj4gPiAr Cj4+PiA+ICtzdGF0aWMgY29uc3Qgc3RydWN0IGhkbWlfYXVkX25jdHNfdGFibGUgaGRtaV9hdWRf bmN0c18zNmJwcFtdID0gewo+Pj4gPiArCXsgMzIwMDAsIFRNRFNfNDQ1TSwgNTgyNCwgNjMyODEz IH0sCj4+PiA+ICsJeyAzMjAwMCwgVE1EU180NDVfNU0sIDQwOTYsIDQ0NTUwMCB9LAo+Pj4gPiAr CXsgNDQxMDAsIFRNRFNfNDQ1TSwgODkxOCwgNzAzMTI1IH0sCj4+PiA+ICsJeyA0NDEwMCwgVE1E U180NDVfNU0sIDQ3MDQsIDM3MTI1MCB9LAo+Pj4gPiArCXsgODgyMDAsIFRNRFNfNDQ1TSwgMTc4 MzYsIDcwMzEyNSB9LAo+Pj4gPiArCXsgODgyMDAsIFRNRFNfNDQ1XzVNLCA5NDA4LCAzNzEyNTAg fSwKPj4+ID4gKwl7IDE3NjQwMCwgVE1EU180NDVNLCAzNTY3MiwgNzAzMTI1IH0sCj4+PiA+ICsJ eyAxNzY0MDAsIFRNRFNfNDQ1XzVNLCAxODgxNiwgMzcxMjUwIH0sCj4+PiA+ICsJeyA0ODAwMCwg VE1EU180NDVNLCA1ODI0LCA0MjE4NzUgfSwKPj4+ID4gKwl7IDQ4MDAwLCBUTURTXzQ0NV81TSwg NTEyMCwgMzcxMjUwIH0sCj4+PiA+ICsJeyA5NjAwMCwgVE1EU180NDVNLCAxMTY0OCwgNDIxODc1 IH0sCj4+PiA+ICsJeyA5NjAwMCwgVE1EU180NDVfNU0sIDEwMjQwLCAzNzEyNTAgfSwKPj4+ID4g Kwl7IDE5MjAwMCwgVE1EU180NDVNLCAyMzI5NiwgNDIxODc1IH0sCj4+PiA+ICsJeyAxOTIwMDAs IFRNRFNfNDQ1XzVNLCAyMDQ4MCwgMzcxMjUwIH0sCj4+PiA+ICt9Owo+Pj4gPiArCj4+PiA+ICAv KiBnZXQgQVVEX0NPTkZJR19QSVhFTF9DTE9DS19IRE1JXyogdmFsdWUgZm9yIG1vZGUgKi8KPj4+ ID4gIHN0YXRpYyB1MzIgYXVkaW9fY29uZmlnX2hkbWlfcGl4ZWxfY2xvY2soY29uc3Qgc3RydWN0 IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCj4+PiA+ICB7Cj4+PiA+IEBAIC0yMTAsMTYg KzI1NSwyNyBAQCBzdGF0aWMgdTMyIGF1ZGlvX2NvbmZpZ19oZG1pX3BpeGVsX2Nsb2NrKGNvbnN0 IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YQo+Pj4gPiAgc3RhdGljIGludCBhdWRp b19jb25maWdfaGRtaV9nZXRfbihjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19z dGF0ZSwKPj4+ID4gIAkJCQkgICBpbnQgcmF0ZSkKPj4+ID4gIHsKPj4+ID4gLQljb25zdCBzdHJ1 Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqYWRqdXN0ZWRfbW9kZSA9Cj4+PiA+IC0JCSZjcnRjX3N0YXRl LT5iYXNlLmFkanVzdGVkX21vZGU7Cj4+PiA+IC0JaW50IGk7Cj4+PiA+ICsJY29uc3Qgc3RydWN0 IGhkbWlfYXVkX25jdHNfdGFibGUgKmhkbWlfbmN0c190YWJsZTsKPj4+ID4gKwlpbnQgaSwgc2l6 ZSA9IDA7Cj4+PiAKPj4+IFVubmVjZXNzYXJ5IGluaXRpYWxpemF0aW9uLgo+Pj4gCj4+PiA+ICsK Pj4+ID4gKwlpZiAoY3J0Y19zdGF0ZS0+cGlwZV9icHAgPT0gMzYpIHsKPj4+ID4gKwkJaGRtaV9u Y3RzX3RhYmxlID0gaGRtaV9hdWRfbmN0c18zNmJwcDsKPj4+ID4gKwkJc2l6ZSA9IEFSUkFZX1NJ WkUoaGRtaV9hdWRfbmN0c18zNmJwcCk7Cj4+PiA+ICsJfSBlbHNlIGlmIChjcnRjX3N0YXRlLT5w aXBlX2JwcCA9PSAzMCkgewo+Pj4gPiArCQloZG1pX25jdHNfdGFibGUgPSBoZG1pX2F1ZF9uY3Rz XzMwYnBwOwo+Pj4gPiArCQlzaXplID0gQVJSQVlfU0laRShoZG1pX2F1ZF9uY3RzXzMwYnBwKTsK Pj4+ID4gKwl9IGVsc2Ugewo+Pj4gPiArCQloZG1pX25jdHNfdGFibGUgPSBoZG1pX2F1ZF9uY3Rz XzI0YnBwOwo+Pj4gPiArCQlzaXplID0gQVJSQVlfU0laRShoZG1pX2F1ZF9uY3RzXzI0YnBwKTsK Pj4+ID4gKwl9Cj4+PiA+ICAKPj4+ID4gLQlmb3IgKGkgPSAwOyBpIDwgQVJSQVlfU0laRShoZG1p X2F1ZF9uY3RzKTsgaSsrKSB7Cj4+PiA+IC0JCWlmIChyYXRlID09IGhkbWlfYXVkX25jdHNbaV0u c2FtcGxlX3JhdGUgJiYKPj4+ID4gLQkJICAgIGFkanVzdGVkX21vZGUtPmNydGNfY2xvY2sgPT0g aGRtaV9hdWRfbmN0c1tpXS5jbG9jaykgewo+Pj4gPiAtCQkJcmV0dXJuIGhkbWlfYXVkX25jdHNb aV0ubjsKPj4+ID4gKwlmb3IgKGkgPSAwOyAgaSA8IHNpemU7IGkrKykgewo+Pj4gICAgICAgICAg ICAgICAgICAgICBeCj4+PiBTdXBlcmZsdW91cyBzcGFjZS4KPj4gV2lsbCBjb3JyZWN0IGl0IGlu IG5leHQgc3Bpbi4KPj4+IAo+Pj4gCj4+PiA+ICsJCWlmIChyYXRlID09IGhkbWlfbmN0c190YWJs ZVtpXS5zYW1wbGVfcmF0ZSAmJgo+Pj4gPiArCQkgICAgY3J0Y19zdGF0ZS0+cG9ydF9jbG9jayA9 PSBoZG1pX25jdHNfdGFibGVbaV0uY2xvY2spIHsKPj4+IAo+Pj4gQ2hhbmdpbmcgZnJvbSBhZGp1 c3RlZF9tb2RlLT5jcnRjX2Nsb2NrIHRvIGNydGNfc3RhdGUtPnBvcnRfY2xvY2sgaXMgYQo+Pj4g c2VwYXJhdGUgY2hhbmdlIHRoYXQgbmVlZHMgdG8gYmUgYSBzZXBhcmF0ZSBwYXRjaC4KPj4gSSBk b24ndCB0aGluayBpdCBzaG91bGQgYmUgYSBzZXBhcmF0ZSBjaGFuZ2UuIFdvcmtpbmcgd2l0aCBk ZWVwIGNvbG9yCj4+IG1vZGUgcmVxdWlyZXMgY3J0Y19zdGF0ZS0+cG9ydF9jbG9jayBhcyBpdCBp cyBzY2FsZWQgYWNjb3JkaW5nIHRvIHRoZQo+PiBkZWVwIGNvbG9yIG1vZGUgc2V0LiBVc2luZyBh ZGp1c3RlZF9tb2RlLT5jcnRjX2Nsb2NrIGlzIGluY29ycmVjdCBhcyBpdAo+PiBkb2Vzbid0IGFj Y291bnQgZm9yIGRlZXAgY29sb3IgbW9kZTsgd2Ugd2lsbCBoYXZlIHRvIG11bHRpcGx5IHdpdGgK Pj4gc2NhbGluZyBmYWN0b3IgZm9yIHRoZSBzZXQgZGVlcCBjb2xvciBtb2RlIHdoaWNoIGlzIHN1 cGVyZmx1b3VzLgo+Cj4gTWFrZSB0aGUgY3J0Y19jbG9jayAtPiBwb3J0X2Nsb2NrIGNoYW5nZSAq YmVmb3JlKiB0aGUgZGVlcCBjb2xvcgo+IGNoYW5nZXMsIHRoYXQncyB0aGUgd2hvbGUgcG9pbnQu IEVuc3VyZSB0aGF0IHRoaXMgY2hhbmdlIGRvZXMgbm90IGltcGFjdAo+IG5vbi1kZWVwIGNvbG9y LCBhbmQgaWYgaXQgZG9lcywgdGhlIGJpc2VjdCB3aWxsIHBvaW50IGF0IHRoZSBtaW5pbWFsCj4g Y2hhbmdlLiBUaGVuIGFkZCB0aGUgZGVlcCBjb2xvciBOICYgQ1RTIHdoZW4gdGhlIGNvZGUgYWxy ZWFkeSB1c2VzCj4gcG9ydF9jbG9jay4KPgo+IEJSLAo+IEphbmkuCj4KPj4KPj4gSSBjYW4gYWRk IGEgY29tbWVudCBpbiB0aGUgY29tbWl0IG1lc3NhZ2UgYW5kIGNvbW1lbnQgYmVmb3JlIHRoZSBp Zgo+PiBibG9jayB0byBleHBsYWluIHRoZSBjaGFuZ2UuIExldCBtZSBrbm93IGlmIGl0IHdvcmtz Pwo+Pj4gCj4+PiAKPj4+IEJSLAo+Pj4gSmFuaS4KPj4+IAo+Pj4gPiArCQkJcmV0dXJuIGhkbWlf bmN0c190YWJsZVtpXS5uOwo+Pj4gPiAgCQl9Cj4+PiA+ICAJfQo+Pj4gPiArCj4+PiA+ICAJcmV0 dXJuIDA7Cj4+PiA+ICB9Cj4+PiAKPj4+IC0tIAo+Pj4gSmFuaSBOaWt1bGEsIEludGVsIE9wZW4g U291cmNlIEdyYXBoaWNzIENlbnRlcgo+Pgo+PiBSZWdhcmRzLAo+PiBBZGl0eWEgU3dhcnVwCgot LSAKSmFuaSBOaWt1bGEsIEludGVsIE9wZW4gU291cmNlIEdyYXBoaWNzIENlbnRlcgpfX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGlu ZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVl ZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZng=