From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH 10/20] drm/i915: add config function for YCBCR420 outputs Date: Thu, 13 Jul 2017 16:26:36 +0300 Message-ID: <20170713132636.GH12629@intel.com> References: <1499685528-6926-1-git-send-email-shashank.sharma@intel.com> <1499685528-6926-11-git-send-email-shashank.sharma@intel.com> <20170712171739.GM12629@intel.com> <15d41305-b699-bb6b-db1d-7c4678a5c946@intel.com> <20170713125330.GZ12629@intel.com> <234f4979-1723-0cef-0503-b0c9ead0c352@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <234f4979-1723-0cef-0503-b0c9ead0c352@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: "Sharma, Shashank" Cc: intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org T24gVGh1LCBKdWwgMTMsIDIwMTcgYXQgMDY6MzE6MjVQTSArMDUzMCwgU2hhcm1hLCBTaGFzaGFu ayB3cm90ZToKPiBSZWdhcmRzCj4gCj4gU2hhc2hhbmsKPiAKPiAKPiBPbiA3LzEzLzIwMTcgNjoy MyBQTSwgVmlsbGUgU3lyasOkbMOkIHdyb3RlOgo+ID4gT24gVGh1LCBKdWwgMTMsIDIwMTcgYXQg MTA6NTY6MDZBTSArMDUzMCwgU2hhcm1hLCBTaGFzaGFuayB3cm90ZToKPiA+PiBSZWdhcmRzCj4g Pj4KPiA+PiBTaGFzaGFuawo+ID4+Cj4gPj4KPiA+PiBPbiA3LzEyLzIwMTcgMTA6NDcgUE0sIFZp bGxlIFN5cmrDpGzDpCB3cm90ZToKPiA+Pj4gT24gTW9uLCBKdWwgMTAsIDIwMTcgYXQgMDQ6NDg6 MzhQTSArMDUzMCwgU2hhc2hhbmsgU2hhcm1hIHdyb3RlOgo+ID4+Pj4gVGhpcyBwYXRjaCBjaGVj a3MgZW5jb2RlciBsZXZlbCBzdXBwb3J0IGZvciBZQ0JDUjQyMCBvdXRwdXRzLgo+ID4+Pj4gVGhl IGxvZ2ljIGdvZXMgYXMgc2ltcGxlIGFzIHRoaXM6Cj4gPj4+PiBJZiB0aGUgaW5wdXQgbW9kZSBp cyBZQ0JDUjQyMC1vbmx5IG1vZGU6IHByZXBhcmUgSERNSSBmb3IKPiA+Pj4+IFlDQkNSNDIwIG91 dHB1dCwgZWxzZSBjb250aW51ZSB3aXRoIFJHQiBvdXRwdXQgbW9kZS4KPiA+Pj4+Cj4gPj4+PiBJ dCBjaGVja3MgaWYgdGhlIG1vZGUgaXMgWUNCQ1I0MjAgYW5kIHNvdXJjZSBjYW4gc3VwcG9ydCB0 aGlzCj4gPj4+PiBvdXRwdXQgdGhlbiBpdCBtYXJrcyB0aGUgeWNiY3JfNDIwIG91dHB1dCBpbmRp Y2F0b3IgaW50byBjcnRjCj4gPj4+PiBzdGF0ZSwgZm9yIGZ1cnRoZXIgc3RhZ2luZyBpbiBkcml2 ZXIuCj4gPj4+Pgo+ID4+Pj4gVjI6IFNwbGl0IHRoZSBwYXRjaCBpbnRvIHR3bywga2VwdCBoZWxw ZXIgZnVuY3Rpb25zIGluIERSTSBsYXllci4KPiA+Pj4+IFYzOiBDaGFuZ2VkIHRoZSBjb21wdXRl X2NvbmZpZyBmdW5jdGlvbiBiYXNlZCBvbiBuZXcgRFJNIEFQSS4KPiA+Pj4+IFY0OiBSZWJhc2UK PiA+Pj4+IFY1OiBSZWJhc2UKPiA+Pj4+IFY2OiBDaGVjayBhbmQgaGFuZGxlIFlDQkNSNDIwLW9u bHkgbW9kZXMsIGRpc2NhcmQgdGhlIHByb3BlcnR5Cj4gPj4+PiAgICAgICBiYXNlZCBhcHByb2Fj aCAoVmlsbGUpCj4gPj4+Pgo+ID4+Pj4gU2lnbmVkLW9mZi1ieTogU2hhc2hhbmsgU2hhcm1hIDxz aGFzaGFuay5zaGFybWFAaW50ZWwuY29tPgo+ID4+Pj4gLS0tCj4gPj4+PiAgICBkcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgfCAgMSArCj4gPj4+PiAgICBkcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9kcnYuaCAgICAgfCAgMyArKysKPiA+Pj4+ICAgIGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2hkbWkuYyAgICB8IDQyICsrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKy0tLQo+ID4+Pj4gICAgMyBmaWxlcyBjaGFuZ2VkLCA0MyBpbnNlcnRpb25zKCspLCAzIGRl bGV0aW9ucygtKQo+ID4+Pj4KPiA+Pj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9kaXNwbGF5LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMK PiA+Pj4+IGluZGV4IDRlMDNjYTYuLjAxOTAwZTEgMTAwNjQ0Cj4gPj4+PiAtLS0gYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKPiA+Pj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2Rpc3BsYXkuYwo+ID4+Pj4gQEAgLTExOTMwLDYgKzExOTMwLDcgQEAgaW50 ZWxfcGlwZV9jb25maWdfY29tcGFyZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYs Cj4gPj4+PiAgICAJUElQRV9DT05GX0NIRUNLX0koaGRtaV9zY3JhbWJsaW5nKTsKPiA+Pj4+ICAg IAlQSVBFX0NPTkZfQ0hFQ0tfSShoZG1pX2hpZ2hfdG1kc19jbG9ja19yYXRpbyk7Cj4gPj4+PiAg ICAJUElQRV9DT05GX0NIRUNLX0koaGFzX2luZm9mcmFtZSk7Cj4gPj4+PiArCVBJUEVfQ09ORl9D SEVDS19JKHljYmNyNDIwKTsKPiA+Pj4+ICAgIAo+ID4+Pj4gICAgCVBJUEVfQ09ORl9DSEVDS19J KGhhc19hdWRpbyk7Cj4gPj4+PiAgICAKPiA+Pj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCj4g Pj4+PiBpbmRleCBkMTdhMzI0Li41OTIyNDNiIDEwMDY0NAo+ID4+Pj4gLS0tIGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPiA+Pj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2Rydi5oCj4gPj4+PiBAQCAtNzgwLDYgKzc4MCw5IEBAIHN0cnVjdCBpbnRlbF9jcnRj X3N0YXRlIHsKPiA+Pj4+ICAgIAo+ID4+Pj4gICAgCS8qIEhETUkgSGlnaCBUTURTIGNoYXIgcmF0 ZSByYXRpbyAqLwo+ID4+Pj4gICAgCWJvb2wgaGRtaV9oaWdoX3RtZHNfY2xvY2tfcmF0aW87Cj4g Pj4+PiArCj4gPj4+PiArCS8qIEhETUkgb3V0cHV0IHR5cGUgKi8KPiA+Pj4+ICsJYm9vbCB5Y2Jj cjQyMDsKPiA+Pj4+ICAgIH07Cj4gPj4+PiAgICAKPiA+Pj4+ICAgIHN0cnVjdCBpbnRlbF9jcnRj IHsKPiA+Pj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZG1pLmMg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZG1pLmMKPiA+Pj4+IGluZGV4IGNjMGQxMDAu LjI3NmQ5MTYgMTAwNjQ0Cj4gPj4+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9o ZG1pLmMKPiA+Pj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkbWkuYwo+ID4+ Pj4gQEAgLTEzMDUsNyArMTMwNSw4IEBAIGludGVsX2hkbWlfbW9kZV92YWxpZChzdHJ1Y3QgZHJt X2Nvbm5lY3RvciAqY29ubmVjdG9yLAo+ID4+Pj4gICAgCXJldHVybiBzdGF0dXM7Cj4gPj4+PiAg ICB9Cj4gPj4+PiAgICAKPiA+Pj4+IC1zdGF0aWMgYm9vbCBoZG1pXzEyYnBjX3Bvc3NpYmxlKHN0 cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKQo+ID4+Pj4gK3N0YXRpYyBib29sIGhk bWlfMTJicGNfcG9zc2libGUoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUsCj4g Pj4+PiArCQkJCWJvb2wgb3V0cHV0X3ljYmNyNDIwKQo+ID4+PiBZb3UgYWxyZWF5ZCBoYXZlIHRo ZSBjcnRjIHN0YXRlLCBzbyBubyBuZWVkIHRvIHBhc3MgdGhhdCBzdHVmZgo+ID4+PiBzZXBhcmF0 ZWx5Lgo+ID4+IEFoLCB0aGlzIHdhcyBkdW1iLCB0aGFua3MgIQo+ID4+Pj4gICAgewo+ID4+Pj4g ICAgCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9Cj4gPj4+PiAgICAJCXRvX2k5 MTUoY3J0Y19zdGF0ZS0+YmFzZS5jcnRjLT5kZXYpOwo+ID4+Pj4gQEAgLTEzMzAsNiArMTMzMSwx MyBAQCBzdGF0aWMgYm9vbCBoZG1pXzEyYnBjX3Bvc3NpYmxlKHN0cnVjdCBpbnRlbF9jcnRjX3N0 YXRlICpjcnRjX3N0YXRlKQo+ID4+Pj4gICAgCQlpZiAoY29ubmVjdG9yX3N0YXRlLT5jcnRjICE9 IGNydGNfc3RhdGUtPmJhc2UuY3J0YykKPiA+Pj4+ICAgIAkJCWNvbnRpbnVlOwo+ID4+Pj4gICAg Cj4gPj4+PiArCQlpZiAob3V0cHV0X3ljYmNyNDIwKSB7Cj4gPj4+PiArCQkJY29uc3Qgc3RydWN0 IGRybV9oZG1pX2luZm8gKmhkbWkgPSAmaW5mby0+aGRtaTsKPiA+Pj4+ICsKPiA+Pj4+ICsJCQlp ZiAoIShoZG1pLT55NDIwX2RjX21vZGVzICYgRFJNX0VESURfWUNCQ1I0MjBfRENfMzYpKQo+ID4+ Pj4gKwkJCQlyZXR1cm4gZmFsc2U7Cj4gPj4+PiArCQl9Cj4gPj4+PiArCj4gPj4+IGVsc2U/Cj4g Pj4gT29wcywgbmVlZHMgYW4gZWxzZSB7IGJyZWFrO30KPiA+IEkgd2FzIHRoaW5raW5nICdlbHNl IGlmIC4uLicKPiBEbyB3ZSBuZWVkIGVsc2UgaWYgZm9yIDEyIEJQQyBjYXNlLCBJIHdhcyB0aGlu a2luZyBvZjoKPiBpZiAoIWhkbWktPnk0MjBfZGNfbW9kZXMgJiBEUk1fRURJRF9ZQ0JDUjQyMF9E Q18zNikKPiAgICAgICAgIC8qIDEyIEJQQyBZNDIwIG5vdCBwb3NzaWJsZSAqLwo+ICAgICAgICAg cmV0dXJuIGZhbHNlOwo+IGVsc2UKPiAgICAgICAgLyogb3V0cHV0IGlzIGdvaW5nIHRvIGJlIDQy MCwgYW5kIDEyQlBDIGlzIHBvc3NpYmxlLCBzbyBicmVhayB0aGUgCj4gbG9vcCAqLwo+ICAgICAg ICBicmVhazsKPiAKPiBUaGlzIHdpbGwgYWxzbyBhbGxvdyB0aGUgY29kZSB0byBnbyB0aHJvdWdo IHRoZSBXQVIgQWRkZWQgYmVsb3cuCgpXZSBkb24ndCB3YW50IGJyZWFrcyBpbiB0aGUgbG9vcC4g SXQncyBtZWFudCB0byBnbyB0aHJvdWdoIGFsbCB0aGUKY29ubmVjdG9ycyBmb3IgdGhlIGNydGMu IEdyYW50ZWQgb24gbW9kZXJuIHBsYXRmb3JtcyB0aGVyZSBjYW4gb25seSBiZQpvbmUsIGJ1dCBJ TU8gYXNzdW1pbmcgdGhhdCBqdXN0IG1ha2VzIHRoZSB3aG9sZSB0aGluZyBsb29rIGNvbmZ1c2lu Zy4KSXQncyBtdWNoIGNsZWFyZXIgSU1PIGlmIHdlIGRvIAoKaWYgKDQyMCkgewoJY2hlY2sgNDIw IGRjIG1vZGVzOwp9IGVsc2UgewoJY2hlY2sgNDQ0IGRjIG1vZGVzOwp9Cgo+IC0gU2hhc2hhbmsK PiA+Cj4gPj4gLSBTaGFzaGFuawo+ID4+Pj4gICAgCQlpZiAoKGluZm8tPmVkaWRfaGRtaV9kY19t b2RlcyAmIERSTV9FRElEX0hETUlfRENfMzYpID09IDApCj4gPj4+PiAgICAJCQlyZXR1cm4gZmFs c2U7Cj4gPj4+PiAgICAJfQo+ID4+Pj4gQEAgLTEzNDIsNiArMTM1MCwyNSBAQCBzdGF0aWMgYm9v bCBoZG1pXzEyYnBjX3Bvc3NpYmxlKHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRl KQo+ID4+Pj4gICAgCXJldHVybiB0cnVlOwo+ID4+Pj4gICAgfQo+ID4+Pj4gICAgCj4gPj4+PiAr c3RhdGljIGJvb2wKPiA+Pj4+ICtpbnRlbF9oZG1pX3ljYmNyNDIwX2NvbmZpZyhzdHJ1Y3QgZHJt X2Nvbm5lY3RvciAqY29ubmVjdG9yLAo+ID4+Pj4gKwkJCSAgICAgICBzdHJ1Y3QgaW50ZWxfY3J0 Y19zdGF0ZSAqY29uZmlnLAo+ID4+Pj4gKwkJCSAgICAgICBpbnQgKmNsb2NrXzEyYnBjLCBpbnQg KmNsb2NrXzhicGMpCj4gPj4+PiArewo+ID4+Pj4gKwo+ID4+Pj4gKwlpZiAoIWNvbm5lY3Rvci0+ eWNiY3JfNDIwX2FsbG93ZWQpIHsKPiA+Pj4+ICsJCURSTV9FUlJPUigiUGxhdGZvcm0gZG9lc24n dCBzdXBwb3J0IFlDQkNSNDIwIG91dHB1dFxuIik7Cj4gPj4+PiArCQlyZXR1cm4gZmFsc2U7Cj4g Pj4+PiArCX0KPiA+Pj4+ICsKPiA+Pj4+ICsJLyogWUNCQ1I0MjAgVE1EUyByYXRlIHJlcXVpcmVt ZW50IGlzIGhhbGYgdGhlIHBpeGVsIGNsb2NrICovCj4gPj4+PiArCWNvbmZpZy0+cG9ydF9jbG9j ayAvPSAyOwo+ID4+Pj4gKwkqY2xvY2tfMTJicGMgLz0gMjsKPiA+Pj4+ICsJKmNsb2NrXzhicGMg Lz0gMjsKPiA+Pj4+ICsJY29uZmlnLT55Y2JjcjQyMCA9IHRydWU7Cj4gPj4+PiArCXJldHVybiB0 cnVlOwo+ID4+Pj4gK30KPiA+Pj4+ICsKPiA+Pj4+ICAgIGJvb2wgaW50ZWxfaGRtaV9jb21wdXRl X2NvbmZpZyhzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKPiA+Pj4+ICAgIAkJCSAgICAg ICBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqcGlwZV9jb25maWcsCj4gPj4+PiAgICAJCQkgICAg ICAgc3RydWN0IGRybV9jb25uZWN0b3Jfc3RhdGUgKmNvbm5fc3RhdGUpCj4gPj4+PiBAQCAtMTM0 OSw3ICsxMzc2LDggQEAgYm9vbCBpbnRlbF9oZG1pX2NvbXB1dGVfY29uZmlnKHN0cnVjdCBpbnRl bF9lbmNvZGVyICplbmNvZGVyLAo+ID4+Pj4gICAgCXN0cnVjdCBpbnRlbF9oZG1pICppbnRlbF9o ZG1pID0gZW5jX3RvX2ludGVsX2hkbWkoJmVuY29kZXItPmJhc2UpOwo+ID4+Pj4gICAgCXN0cnVj dCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoZW5jb2Rlci0+YmFzZS5kZXYp Owo+ID4+Pj4gICAgCXN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICphZGp1c3RlZF9tb2RlID0gJnBp cGVfY29uZmlnLT5iYXNlLmFkanVzdGVkX21vZGU7Cj4gPj4+PiAtCXN0cnVjdCBkcm1fc2NkYyAq c2NkYyA9ICZjb25uX3N0YXRlLT5jb25uZWN0b3ItPmRpc3BsYXlfaW5mby5oZG1pLnNjZGM7Cj4g Pj4+PiArCXN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IgPSBjb25uX3N0YXRlLT5jb25u ZWN0b3I7Cj4gPj4+PiArCXN0cnVjdCBkcm1fc2NkYyAqc2NkYyA9ICZjb25uZWN0b3ItPmRpc3Bs YXlfaW5mby5oZG1pLnNjZGM7Cj4gPj4+PiAgICAJc3RydWN0IGludGVsX2RpZ2l0YWxfY29ubmVj dG9yX3N0YXRlICppbnRlbF9jb25uX3N0YXRlID0KPiA+Pj4+ICAgIAkJdG9faW50ZWxfZGlnaXRh bF9jb25uZWN0b3Jfc3RhdGUoY29ubl9zdGF0ZSk7Cj4gPj4+PiAgICAJaW50IGNsb2NrXzhicGMg PSBwaXBlX2NvbmZpZy0+YmFzZS5hZGp1c3RlZF9tb2RlLmNydGNfY2xvY2s7Cj4gPj4+PiBAQCAt MTM3OSw2ICsxNDA3LDE0IEBAIGJvb2wgaW50ZWxfaGRtaV9jb21wdXRlX2NvbmZpZyhzdHJ1Y3Qg aW50ZWxfZW5jb2RlciAqZW5jb2RlciwKPiA+Pj4+ICAgIAkJY2xvY2tfMTJicGMgKj0gMjsKPiA+ Pj4+ICAgIAl9Cj4gPj4+PiAgICAKPiA+Pj4+ICsJaWYgKGRybV9tb2RlX2lzXzQyMF9vbmx5KCZj b25uZWN0b3ItPmRpc3BsYXlfaW5mbywgYWRqdXN0ZWRfbW9kZSkpIHsKPiA+Pj4+ICsJCWlmICgh aW50ZWxfaGRtaV95Y2JjcjQyMF9jb25maWcoY29ubmVjdG9yLCBwaXBlX2NvbmZpZywKPiA+Pj4+ ICsJCQkJCQkmY2xvY2tfMTJicGMsICZjbG9ja184YnBjKSkgewo+ID4+Pj4gKwkJCURSTV9FUlJP UigiQ2FuJ3Qgc3VwcG9ydCBZQ0JDUjQyMCBvdXRwdXRcbiIpOwo+ID4+Pj4gKwkJCXJldHVybiBm YWxzZTsKPiA+Pj4+ICsJCX0KPiA+Pj4+ICsJfQo+ID4+Pj4gKwo+ID4+Pj4gICAgCWlmIChIQVNf UENIX1NQTElUKGRldl9wcml2KSAmJiAhSEFTX0RESShkZXZfcHJpdikpCj4gPj4+PiAgICAJCXBp cGVfY29uZmlnLT5oYXNfcGNoX2VuY29kZXIgPSB0cnVlOwo+ID4+Pj4gICAgCj4gPj4+PiBAQCAt MTM5OCw3ICsxNDM0LDcgQEAgYm9vbCBpbnRlbF9oZG1pX2NvbXB1dGVfY29uZmlnKHN0cnVjdCBp bnRlbF9lbmNvZGVyICplbmNvZGVyLAo+ID4+Pj4gICAgCSAqLwo+ID4+Pj4gICAgCWlmIChwaXBl X2NvbmZpZy0+cGlwZV9icHAgPiA4KjMgJiYgcGlwZV9jb25maWctPmhhc19oZG1pX3NpbmsgJiYg IWZvcmNlX2R2aSAmJgo+ID4+Pj4gICAgCSAgICBoZG1pX3BvcnRfY2xvY2tfdmFsaWQoaW50ZWxf aGRtaSwgY2xvY2tfMTJicGMsIHRydWUsIGZvcmNlX2R2aSkgPT0gTU9ERV9PSyAmJgo+ID4+Pj4g LQkgICAgaGRtaV8xMmJwY19wb3NzaWJsZShwaXBlX2NvbmZpZykpIHsKPiA+Pj4+ICsJICAgIGhk bWlfMTJicGNfcG9zc2libGUocGlwZV9jb25maWcsIHBpcGVfY29uZmlnLT55Y2JjcjQyMCkpIHsK PiA+Pj4+ICAgIAkJRFJNX0RFQlVHX0tNUygicGlja2luZyBicGMgdG8gMTIgZm9yIEhETUkgb3V0 cHV0XG4iKTsKPiA+Pj4+ICAgIAkJZGVzaXJlZF9icHAgPSAxMiozOwo+ID4+Pj4gICAgCj4gPj4+ PiAtLSAKPiA+Pj4+IDIuNy40Cj4gPj4+Pgo+ID4+Pj4gX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX18KPiA+Pj4+IGRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKPiA+ Pj4+IGRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKPiA+Pj4+IGh0dHBzOi8vbGlzdHMu ZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCgotLSAKVmlsbGUgU3ly asOkbMOkCkludGVsIE9UQwpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3Rv cC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmkt ZGV2ZWwK