From mboxrd@z Thu Jan 1 00:00:00 1970 From: Manasi Navare Subject: Re: [PATCH v2 1/4] drm/i915/icl: Assign Master slave crtc links for Transcoder Port Sync Date: Wed, 22 May 2019 14:40:49 -0700 Message-ID: <20190522214048.GC2502@intel.com> References: <20190423154901.15222-1-manasi.d.navare@intel.com> <20190423154901.15222-2-manasi.d.navare@intel.com> <83F5C7385F545743AD4FB2A62F75B07348062085@ORSMSX108.amr.corp.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTPS id A1CCD89C56 for ; Wed, 22 May 2019 21:38:59 +0000 (UTC) Content-Disposition: inline In-Reply-To: <83F5C7385F545743AD4FB2A62F75B07348062085@ORSMSX108.amr.corp.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: "Srivatsa, Anusha" Cc: Daniel Vetter , "intel-gfx@lists.freedesktop.org" List-Id: intel-gfx@lists.freedesktop.org T24gRnJpLCBNYXkgMDMsIDIwMTkgYXQgMDU6MDk6MjBQTSAtMDcwMCwgU3JpdmF0c2EsIEFudXNo YSB3cm90ZToKPiAKPiAKPiA+LS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0KPiA+RnJvbTogSW50 ZWwtZ2Z4IFttYWlsdG86aW50ZWwtZ2Z4LWJvdW5jZXNAbGlzdHMuZnJlZWRlc2t0b3Aub3JnXSBP biBCZWhhbGYgT2YKPiA+TWFuYXNpIE5hdmFyZQo+ID5TZW50OiBUdWVzZGF5LCBBcHJpbCAyMywg MjAxOSA4OjQ5IEFNCj4gPlRvOiBpbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCj4gPkNj OiBEYW5pZWwgVmV0dGVyIDxkYW5pZWwudmV0dGVyQGZmd2xsLmNoPgo+ID5TdWJqZWN0OiBbSW50 ZWwtZ2Z4XSBbUEFUQ0ggdjIgMS80XSBkcm0vaTkxNS9pY2w6IEFzc2lnbiBNYXN0ZXIgc2xhdmUg Y3J0YyBsaW5rcyBmb3IKPiA+VHJhbnNjb2RlciBQb3J0IFN5bmMKPiA+Cj4gPkluIGNhc2Ugb2Yg dGlsZWQgZGlzcGxheXMgd2hlbiB0aGUgdHdvIHRpbGVzIGFyZSBzZW50IGFjcm9zcyB0d28gQ1JU Q3Mgb3ZlciB0d28KPiA+c2VwYXJhdGUgRFAgU1NUIGNvbm5lY3RvcnMsIHdlIG5lZWQgYSBtZWNo YW5pc20gdG8gc3luY2hyb25pemUgdGhlIHR3byBDUlRDcwo+ID5hbmQgdGhlaXIgY29ycmVzcG9u ZGluZyB0cmFuc2NvZGVycy4KPiA+U28gdXNlIHRoZSBtYXN0ZXItc2xhdmUgbW9kZSB3aGVyZSB0 aGVyZSBpcyBvbmUgbWFzdGVyIGNvcnJlc3BvbmRpbmcgdG8gbGFzdAo+ID5ob3Jpem9udGFsIGFu ZCB2ZXJ0aWNhbCB0aWxlIHRoYXQgbmVlZHMgdG8gYmUgZ2VubG9ja2VkIHdpdGggYWxsIG90aGVy IHNsYXZlIHRpbGVzLgo+ID5UaGlzIHBhdGNoIGlkZW50aWZpZXMgc2F2ZXMgdGhlIG1hc3RlciBD UlRDIHBvaW50ZXIgaW4gYWxsIHRoZSBzbGF2ZSBDUlRDIHN0YXRlcy4KPiA+VGhpcyBwb2ludGVy IGlzIG5lZWRlZCB0byBzZWxlY3QgdGhlIG1hc3RlciBDUlRDL3RyYW5zY29kZXIgd2hpbGUgY29u ZmlndXJpbmcKPiA+dHJhbnNjb2RlciBwb3J0IHN5bmMgZm9yIHRoZSBjb3JyZXNwb25kaW5nIHNs YXZlcy4KPiA+Cj4gPnYyOgo+ID4qIE1vdmUgdGhpcyB0byBpbnRlbF9tb2RlX3NldF9waXBlX2Nv bmZpZyhKYW5pIE4sIFZpbGxlKQo+ID4qIFVzZSBzbGF2ZV9iaXRtYXNrIHRvIHNhdmUgYXNzb2Np YXRlZCBzbGF2ZXMgaW4gbWFzdGVyIGNydGMgc3RhdGUgKFZpbGxlKQo+ID4KPiA+Q2M6IERhbmll bCBWZXR0ZXIgPGRhbmllbC52ZXR0ZXJAZmZ3bGwuY2g+Cj4gPkNjOiBWaWxsZSBTeXJqw6Rsw6Qg PHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwuY29tPgo+ID5DYzogTWFhcnRlbiBMYW5raG9yc3Qg PG1hYXJ0ZW4ubGFua2hvcnN0QGxpbnV4LmludGVsLmNvbT4KPiA+Q2M6IE1hdHQgUm9wZXIgPG1h dHRoZXcuZC5yb3BlckBpbnRlbC5jb20+Cj4gPlNpZ25lZC1vZmYtYnk6IE1hbmFzaSBOYXZhcmUg PG1hbmFzaS5kLm5hdmFyZUBpbnRlbC5jb20+Cj4gPi0tLQo+ID4gZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZGlzcGxheS5jIHwgODkgKysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+ID4g ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggICAgIHwgIDYgKysKPiA+IDIgZmlsZXMg Y2hhbmdlZCwgOTUgaW5zZXJ0aW9ucygrKQo+ID4KPiA+ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwo+ID5iL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X2Rpc3BsYXkuYwo+ID5pbmRleCBiMjc2MzQ1Nzc5ZTYuLjkyZGVhMjIzMTQ5OSAxMDA2NDQKPiA+ LS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCj4gPisrKyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwo+ID5AQCAtMTEzMTYsNiArMTEzMTYsODYg QEAgc3RhdGljIGludCBpY2xfY2hlY2tfbnYxMl9wbGFuZXMoc3RydWN0Cj4gPmludGVsX2NydGNf c3RhdGUgKmNydGNfc3RhdGUpCj4gPiAJcmV0dXJuIDA7Cj4gPiB9Cj4gPgo+ID4rc3RhdGljIGlu dCBpY2xfYWRkX2dlbmxvY2tfY3J0Y3Moc3RydWN0IGRybV9jcnRjICpjcnRjLAo+ID4rCQkJCSBz dHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSwKPiA+KwkJCQkgc3RydWN0IGRybV9h dG9taWNfc3RhdGUgKnN0YXRlKQo+ID4rewo+ID4rCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpk ZXZfcHJpdiA9IHRvX2k5MTUoY3J0Y19zdGF0ZS0+YmFzZS5jcnRjLT5kZXYpOwo+ID4rCXN0cnVj dCBkcm1fY29ubmVjdG9yICptYXN0ZXJfY29ubmVjdG9yLCAqY29ubmVjdG9yOwo+ID4rCXN0cnVj dCBkcm1fY29ubmVjdG9yX3N0YXRlICpjb25uZWN0b3Jfc3RhdGU7Cj4gPisJc3RydWN0IGRybV9j b25uZWN0b3JfbGlzdF9pdGVyIGNvbm5faXRlcjsKPiA+KwlzdHJ1Y3QgZHJtX2NydGMgKm1hc3Rl cl9jcnRjID0gTlVMTDsKPiA+KwlzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKm1hc3Rlcl9jcnRjX3N0 YXRlOwo+ID4rCWludCBpLCB0aWxlX2dyb3VwX2lkOwo+ID4rCj4gPisJaWYgKElOVEVMX0dFTihk ZXZfcHJpdikgPCAxMSkKPiA+KwkJcmV0dXJuIDA7Cj4gPisKPiA+KwkvKgo+ID4rCSAqIEluIGNh c2Ugb2YgdGlsZWQgZGlzcGxheXMgdGhlcmUgY291bGQgYmUgb25lIG9yIG1vcmUgc2xhdmVzIGJ1 dCB0aGVyZSBpcwo+ID4rCSAqIG9ubHkgb25lIG1hc3Rlci4gTGV0cyBtYWtlIHRoZSBDUlRDIHVz ZWQgYnkgdGhlIGNvbm5lY3Rvcgo+ID5jb3JyZXNwb25kaW5nCj4gPisJICogdG8gdGhlIGxhc3Qg aG9yaXpvbmFsIGFuZCBsYXN0IHZlcnRpY2FsIHRpbGUgYSBtYXN0ZXIvZ2VubG9jayBDUlRDLgo+ ID4rCSAqIEFsbCB0aGUgb3RoZXIgQ1JUQ3MgY29ycmVzcG9uZGluZyB0byBvdGhlciB0aWxlcyBv ZiB0aGUgc2FtZSBUaWxlIGdyb3VwCj4gPisJICogYXJlIHRoZSBzbGF2ZSBDUlRDcyBhbmQgaG9s ZCBhIHBvaW50ZXIgdG8gdGhlaXIgZ2VubG9jayBDUlRDLgo+ID4rCSAqLwo+ID4rCWZvcl9lYWNo X25ld19jb25uZWN0b3JfaW5fc3RhdGUoc3RhdGUsIGNvbm5lY3RvciwgY29ubmVjdG9yX3N0YXRl LCBpKQo+ID57Cj4gPisJCWlmIChjb25uZWN0b3Jfc3RhdGUtPmNydGMgIT0gY3J0YykKPiA+KwkJ CWNvbnRpbnVlOwo+ID4rCQlpZiAoIWNvbm5lY3Rvci0+aGFzX3RpbGUpCj4gPisJCQljb250aW51 ZTsKPiA+KwkJaWYgKGNvbm5lY3Rvci0+dGlsZV9oX2xvYyA9PSBjb25uZWN0b3ItPm51bV9oX3Rp bGUgLSAxICYmCj4gPisJCSAgICBjb25uZWN0b3ItPnRpbGVfdl9sb2MgPT0gY29ubmVjdG9yLT5u dW1fdl90aWxlIC0gMSkKPiA+KwkJCWNvbnRpbnVlOwo+ID4rCQljcnRjX3N0YXRlLT5tYXN0ZXJf Y3J0YyA9IE5VTEw7Cj4gPisJCXRpbGVfZ3JvdXBfaWQgPSBjb25uZWN0b3ItPnRpbGVfZ3JvdXAt PmlkOwo+ID4rCQlkcm1fY29ubmVjdG9yX2xpc3RfaXRlcl9iZWdpbigmZGV2X3ByaXYtPmRybSwg JmNvbm5faXRlcik7Cj4gPisJCWRybV9mb3JfZWFjaF9jb25uZWN0b3JfaXRlcihtYXN0ZXJfY29u bmVjdG9yLCAmY29ubl9pdGVyKSB7Cj4gPisJCQlzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9zdGF0ZSAq bWFzdGVyX2Nvbm5fc3RhdGUgPQo+ID5OVUxMOwo+ID4rCj4gPisJCQlpZiAoIW1hc3Rlcl9jb25u ZWN0b3ItPmhhc190aWxlKQo+ID4rCQkJCWNvbnRpbnVlOwo+ID4rCQkJaWYgKG1hc3Rlcl9jb25u ZWN0b3ItPnRpbGVfaF9sb2MgIT0gbWFzdGVyX2Nvbm5lY3Rvci0KPiA+Pm51bV9oX3RpbGUgLSAx IHx8Cj4gPisJCQkgICAgbWFzdGVyX2Nvbm5lY3Rvci0+dGlsZV92X2xvYyAhPSBtYXN0ZXJfY29u bmVjdG9yLQo+ID4+bnVtX3ZfdGlsZSAtIDEpCj4gCj4gV2lsbCB0aGlzIGV2ZXIgYmUgdHJ1ZT8g V2l0aCB0aGUgY2hlY2tzIGFib3ZlIChmb3Igc2xhdmVzKSB3ZSBoYXZlIGl0ZXJhdGVkIG92ZXIg YWxsIHNsYXZlcyBhbmQgcG90ZW50aWFsbHkgbGVmdCB3aXRoIG9ubHkgbWFzdGVyL2xhc3QgdGls ZSByaWdodD8KPiAKPiBBbnVzaGEgCgpBY3R1YWxseSBpdHMgdGhlIG90aGVyIHdheSBhcm91bmQu IFNvIGxpa2UgdGhlIGNvbW1lbnQgc2F5cyB0aGUgbGFzdCB0aWxlIGlzIHRoZSBtYXN0ZXIgYW5k IGFsbCBvdGhlcnMgYXJlIHNsYXZlcywKc28gaGVyZSBpbiBmb3JfZWFjaF9jb25uZWN0b3IoKSwg d2Ugc2tpcCB0aGUgbWFzdGVyIGFuZCBjYWxsIGRybV9mb3JfZWFjaF9jb25uZWN0b3JfaXRlcigp IGZvciBlYWNoIHNsYXZlIHRvIGZpbmQgaXRzCmNvcnJlc3BvbmRpbmcgbWFzdGVyLiBTbyBpZiBp dHMgbm90IHRoZSBsYXN0IHRpbGUgdGhlbiB3ZSBjb250aW51ZSB1bnRpbCB3ZSBmaW5kIHRoZSBs YXN0IHRpbGUgd2hpY2ggYmVjb21lcyB0aGUgbWFzdGVyLgpNYWtlcyBzZW5zZT8KCk1hbmFzaQoK PiAKPiA+KwkJCQljb250aW51ZTsKPiA+KwkJCWlmIChtYXN0ZXJfY29ubmVjdG9yLT50aWxlX2dy b3VwLT5pZCAhPSB0aWxlX2dyb3VwX2lkKQo+ID4rCQkJCWNvbnRpbnVlOwo+ID4rCj4gPisJCQlt YXN0ZXJfY29ubl9zdGF0ZSA9Cj4gPmRybV9hdG9taWNfZ2V0X2Nvbm5lY3Rvcl9zdGF0ZShzdGF0 ZSwKPiA+Kwo+ID5tYXN0ZXJfY29ubmVjdG9yKTsKPiA+KwkJCWlmIChJU19FUlIobWFzdGVyX2Nv bm5fc3RhdGUpKSB7Cj4gPisJCQkJZHJtX2Nvbm5lY3Rvcl9saXN0X2l0ZXJfZW5kKCZjb25uX2l0 ZXIpOwo+ID4rCQkJCXJldHVybiBQVFJfRVJSKG1hc3Rlcl9jb25uX3N0YXRlKTsKPiA+KwkJCX0K PiA+KwkJCWlmIChtYXN0ZXJfY29ubl9zdGF0ZS0+Y3J0Yykgewo+ID4rCQkJCW1hc3Rlcl9jcnRj ID0gbWFzdGVyX2Nvbm5fc3RhdGUtPmNydGM7Cj4gPisJCQkJYnJlYWs7Cj4gPisJCQl9Cj4gPisJ CX0KPiA+KwkJZHJtX2Nvbm5lY3Rvcl9saXN0X2l0ZXJfZW5kKCZjb25uX2l0ZXIpOwo+ID4rCj4g PisJCWlmICghbWFzdGVyX2NydGMpIHsKPiA+KwkJCURSTV9ERUJVR19LTVMoIkNvdWxkIG5vdCBh ZGQgTWFzdGVyIENSVEMgZm9yCj4gPlNsYXZlIENSVEMgJWRcbiIsCj4gPisJCQkJICAgICAgY29u bmVjdG9yX3N0YXRlLT5jcnRjLT5iYXNlLmlkKTsKPiA+KwkJCXJldHVybiAtRUlOVkFMOwo+ID4r CQl9Cj4gPisKPiA+KwkJbWFzdGVyX2NydGNfc3RhdGUgPSBkcm1fYXRvbWljX2dldF9jcnRjX3N0 YXRlKHN0YXRlLAo+ID4rCQkJCQkJCSAgICAgIG1hc3Rlcl9jcnRjKTsKPiA+KwkJaWYgKElTX0VS UihtYXN0ZXJfY3J0Y19zdGF0ZSkpCj4gPisJCQlyZXR1cm4gUFRSX0VSUihtYXN0ZXJfY3J0Y19z dGF0ZSk7Cj4gPisKPiA+KwkJY3J0Y19zdGF0ZS0+bWFzdGVyX2NydGMgPSB0b19pbnRlbF9jcnRj KG1hc3Rlcl9jcnRjKTsKPiA+KwkJdG9faW50ZWxfY3J0Y19zdGF0ZShtYXN0ZXJfY3J0Y19zdGF0 ZSktPnRyYW5zX3BvcnRfc3luY19zbGF2ZXMKPiA+fD0KPiA+KwkJCUJJVCh0b19pbnRlbF9jcnRj KGNydGMpLT5waXBlKTsKPiA+KwkJRFJNX0RFQlVHX0tNUygiTWFzdGVyIENSVEMgPSAlZCBhZGRl ZCBmb3IgU2xhdmUgQ1JUQyA9Cj4gPiVkXG4sIHNsYXZlIGJpdG1hc3QgPSAlZCIsCj4gPisJCQkg ICAgICBtYXN0ZXJfY3J0Yy0+YmFzZS5pZCwKPiA+KwkJCSAgICAgIGNydGNfc3RhdGUtPmJhc2Uu Y3J0Yy0+YmFzZS5pZCwKPiA+KwkJCSAgICAgIHRvX2ludGVsX2NydGNfc3RhdGUobWFzdGVyX2Ny dGNfc3RhdGUpLQo+ID4+dHJhbnNfcG9ydF9zeW5jX3NsYXZlcyk7Cj4gPisJfQo+ID4rCj4gPisJ cmV0dXJuIDA7Cj4gPit9Cj4gPisKPiA+IHN0YXRpYyBpbnQgaW50ZWxfY3J0Y19hdG9taWNfY2hl Y2soc3RydWN0IGRybV9jcnRjICpjcnRjLAo+ID4gCQkJCSAgIHN0cnVjdCBkcm1fY3J0Y19zdGF0 ZSAqY3J0Y19zdGF0ZSkgIHsgQEAgLQo+ID4xMTc5NSw2ICsxMTg3NSw5IEBAIGNsZWFyX2ludGVs X2NydGNfc3RhdGUoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCj4gPiAJaWYg KElTX0c0WChkZXZfcHJpdikgfHwKPiA+IAkgICAgSVNfVkFMTEVZVklFVyhkZXZfcHJpdikgfHwg SVNfQ0hFUlJZVklFVyhkZXZfcHJpdikpCj4gPiAJCXNhdmVkX3N0YXRlLT53bSA9IGNydGNfc3Rh dGUtPndtOwo+ID4rCWlmIChJTlRFTF9HRU4oZGV2X3ByaXYpID49IDExKQo+ID4rCQlzYXZlZF9z dGF0ZS0+dHJhbnNfcG9ydF9zeW5jX3NsYXZlcyA9Cj4gPisJCQljcnRjX3N0YXRlLT50cmFuc19w b3J0X3N5bmNfc2xhdmVzOwo+ID4KPiA+IAkvKiBLZWVwIGJhc2UgZHJtX2NydGNfc3RhdGUgaW50 YWN0LCBvbmx5IGNsZWFyIG91ciBleHRlbmRlZCBzdHJ1Y3QgKi8KPiA+IAlCVUlMRF9CVUdfT04o b2Zmc2V0b2Yoc3RydWN0IGludGVsX2NydGNfc3RhdGUsIGJhc2UpKTsgQEAgLTExODg4LDYKPiA+ KzExOTcxLDEyIEBAIGludGVsX21vZGVzZXRfcGlwZV9jb25maWcoc3RydWN0IGRybV9jcnRjICpj cnRjLAo+ID4gCWRybV9tb2RlX3NldF9jcnRjaW5mbygmcGlwZV9jb25maWctPmJhc2UuYWRqdXN0 ZWRfbW9kZSwKPiA+IAkJCSAgICAgIENSVENfU1RFUkVPX0RPVUJMRSk7Cj4gPgo+ID4rCXJldCA9 IGljbF9hZGRfZ2VubG9ja19jcnRjcyhjcnRjLCBwaXBlX2NvbmZpZywgc3RhdGUpOwo+ID4rCWlm IChyZXQpIHsKPiA+KwkJRFJNX0RFQlVHX0tNUygiXG44SyBEZWJ1ZzogQ2Fubm90IGFzc2lnbiBn ZW5sb2NrIGNydGNzIik7Cj4gPisJCXJldHVybiByZXQ7Cj4gPisJfQo+ID4rCj4gPiAJLyogUGFz cyBvdXIgbW9kZSB0byB0aGUgY29ubmVjdG9ycyBhbmQgdGhlIENSVEMgdG8gZ2l2ZSB0aGVtIGEg Y2hhbmNlCj4gPnRvCj4gPiAJICogYWRqdXN0IGl0IGFjY29yZGluZyB0byBsaW1pdGF0aW9ucyBv ciBjb25uZWN0b3IgcHJvcGVydGllcywgYW5kIGFsc28KPiA+IAkgKiBhIGNoYW5jZSB0byByZWpl Y3QgdGhlIG1vZGUgZW50aXJlbHkuCj4gPmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCj4gPmluZGV4 IGEzOGI5Y2ZmNWNkMC4uOGFlOWNiNjYyZTI4IDEwMDY0NAo+ID4tLS0gYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9kcnYuaAo+ID4rKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9k cnYuaAo+ID5AQCAtMTA4Miw2ICsxMDgyLDEyIEBAIHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlIHsK PiA+Cj4gPiAJLyogRm9yd2FyZCBFcnJvciBjb3JyZWN0aW9uIFN0YXRlICovCj4gPiAJYm9vbCBm ZWNfZW5hYmxlOwo+ID4rCj4gPisJLyogUG9pbnRlciB0byBtYXN0ZXIgY3J0YyBpbiBjYXNlIG9m IHRpbGVkIGRpc3BsYXlzICovCj4gPisJc3RydWN0IGludGVsX2NydGMgKm1hc3Rlcl9jcnRjOwo+ ID4rCj4gPisJLyogQml0bWFzayB0byBpbmRpY2F0ZSBzbGF2ZXMgYXR0YWNoZWQgKi8KPiA+Kwl1 OCB0cmFuc19wb3J0X3N5bmNfc2xhdmVzOwo+ID4gfTsKPiA+Cj4gPiBzdHJ1Y3QgaW50ZWxfY3J0 YyB7Cj4gPi0tCj4gPjIuMTkuMQo+ID4KPiA+X19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX18KPiA+SW50ZWwtZ2Z4IG1haWxpbmcgbGlzdAo+ID5JbnRlbC1nZnhA bGlzdHMuZnJlZWRlc2t0b3Aub3JnCj4gPmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21h aWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZy ZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3Rp bmZvL2ludGVsLWdmeA==