From mboxrd@z Thu Jan 1 00:00:00 1970 From: Liviu Dudau Subject: Re: [PATCH] drm: Convert drm_atomic_helper_suspend/resume() Date: Mon, 13 Aug 2018 18:16:11 +0100 Message-ID: <20180813171611.GE907@e110455-lin.cambridge.arm.com> References: <20180730190137.GA25420@jordon-HP-15-Notebook-PC> <20180731103440.GD17455@e110455-lin.cambridge.arm.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from foss.arm.com (foss.arm.com [217.140.101.70]) by gabe.freedesktop.org (Postfix) with ESMTP id C5CE189B49 for ; Mon, 13 Aug 2018 17:16:13 +0000 (UTC) Content-Disposition: inline In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Souptick Joarder Cc: Ajit Linux , airlied@linux.ie, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-renesas-soc@vger.kernel.org, malidp@foss.arm.com, Laurent Pinchart List-Id: dri-devel@lists.freedesktop.org T24gVGh1LCBBdWcgMDIsIDIwMTggYXQgMDM6MjU6MjRQTSArMDUzMCwgU291cHRpY2sgSm9hcmRl ciB3cm90ZToKPiBPbiBXZWQsIEF1ZyAxLCAyMDE4IGF0IDEyOjExIEFNLCBTb3VwdGljayBKb2Fy ZGVyIDxqcmRyLmxpbnV4QGdtYWlsLmNvbT4gd3JvdGU6Cj4gPiBPbiBUdWUsIEp1bCAzMSwgMjAx OCBhdCA0OjA0IFBNLCBMaXZpdSBEdWRhdSA8bGl2aXUuZHVkYXVAYXJtLmNvbT4gd3JvdGU6Cj4g Pj4gSGkgU291cHRpY2ssCj4gPj4KPiA+PiBPbiBUdWUsIEp1bCAzMSwgMjAxOCBhdCAxMjozMToz N0FNICswNTMwLCBTb3VwdGljayBKb2FyZGVyIHdyb3RlOgo+ID4+PiBjb252ZXJ0IGRybV9hdG9t aWNfaGVscGVyX3N1c3BlbmQvcmVzdW1lKCkgdG8gdXNlCj4gPj4+IGRybV9tb2RlX2NvbmZpZ19o ZWxwZXJfc3VzcGVuZC9yZXN1bWUoKS4KPiA+Pj4KPiA+Pj4gV2l0aCB0aGlzIGNvbnZlcnNpb24s IGRybV9mYmRldl9jbWFfc2V0X3N1c3BlbmRfdW5sb2NrZWQoKQo+ID4+PiB3aWxsIGxlZnQgd2l0 aCBubyBjb25zdW1lci4gU28gdGhpcyBmdW5jdGlvbiBjYW4gYmUgcmVtb3ZlZC4KPiA+Pj4KPiA+ Pj4gU2lnbmVkLW9mZi1ieTogU291cHRpY2sgSm9hcmRlciA8anJkci5saW51eEBnbWFpbC5jb20+ Cj4gPj4+IFNpZ25lZC1vZmYtYnk6IEFqaXQgTmVnaSA8YWppdG4ubGludXhAZ21haWwuY29tPgo+ ID4+PiAtLS0KPiA+Pj4gIGRyaXZlcnMvZ3B1L2RybS9hcm0vaGRsY2RfZHJ2LmMgICAgICAgfCAy NiArKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+ID4+PiAgZHJpdmVycy9ncHUvZHJtL2RybV9m Yl9jbWFfaGVscGVyLmMgICB8IDE4IC0tLS0tLS0tLS0tLS0tLS0tLQo+ID4+PiAgZHJpdmVycy9n cHUvZHJtL3JjYXItZHUvcmNhcl9kdV9kcnYuYyB8IDIxICsrLS0tLS0tLS0tLS0tLS0tLS0tLQo+ ID4+PiAgaW5jbHVkZS9kcm0vZHJtX2ZiX2NtYV9oZWxwZXIuaCAgICAgICB8ICAyIC0tCj4gPj4+ ICA0IGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgNjMgZGVsZXRpb25zKC0pCj4gPj4+ Cj4gPj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYXJtL2hkbGNkX2Rydi5jIGIvZHJp dmVycy9ncHUvZHJtL2FybS9oZGxjZF9kcnYuYwo+ID4+PiBpbmRleCBmZWFhOGJjLi40ZTYxN2Uw IDEwMDY0NAo+ID4+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vYXJtL2hkbGNkX2Rydi5jCj4gPj4+ ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9hcm0vaGRsY2RfZHJ2LmMKPiA+Pj4gQEAgLTQyNywzNyAr NDI3LDE1IEBAIHN0YXRpYyBpbnQgaGRsY2RfcmVtb3ZlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2Ug KnBkZXYpCj4gPj4+ICBzdGF0aWMgaW50IF9fbWF5YmVfdW51c2VkIGhkbGNkX3BtX3N1c3BlbmQo c3RydWN0IGRldmljZSAqZGV2KQo+ID4+PiAgewo+ID4+PiAgICAgICBzdHJ1Y3QgZHJtX2Rldmlj ZSAqZHJtID0gZGV2X2dldF9kcnZkYXRhKGRldik7Cj4gPj4+IC0gICAgIHN0cnVjdCBoZGxjZF9k cm1fcHJpdmF0ZSAqaGRsY2QgPSBkcm0gPyBkcm0tPmRldl9wcml2YXRlIDogTlVMTDsKPiA+Pj4K PiA+Pj4gLSAgICAgaWYgKCFoZGxjZCkKPiA+Pj4gLSAgICAgICAgICAgICByZXR1cm4gMDsKPiA+ Pj4gLQo+ID4+PiAtICAgICBkcm1fa21zX2hlbHBlcl9wb2xsX2Rpc2FibGUoZHJtKTsKPiA+Pj4g LSAgICAgZHJtX2ZiZGV2X2NtYV9zZXRfc3VzcGVuZF91bmxvY2tlZChoZGxjZC0+ZmJkZXYsIDEp Owo+ID4+PiAtCj4gPj4+IC0gICAgIGhkbGNkLT5zdGF0ZSA9IGRybV9hdG9taWNfaGVscGVyX3N1 c3BlbmQoZHJtKTsKPiA+Pj4gLSAgICAgaWYgKElTX0VSUihoZGxjZC0+c3RhdGUpKSB7Cj4gPj4+ IC0gICAgICAgICAgICAgZHJtX2ZiZGV2X2NtYV9zZXRfc3VzcGVuZF91bmxvY2tlZChoZGxjZC0+ ZmJkZXYsIDApOwo+ID4+PiAtICAgICAgICAgICAgIGRybV9rbXNfaGVscGVyX3BvbGxfZW5hYmxl KGRybSk7Cj4gPj4+IC0gICAgICAgICAgICAgcmV0dXJuIFBUUl9FUlIoaGRsY2QtPnN0YXRlKTsK PiA+Pj4gLSAgICAgfQo+ID4+PiAtCj4gPj4+IC0gICAgIHJldHVybiAwOwo+ID4+PiArICAgICBy ZXR1cm4gZHJtX21vZGVfY29uZmlnX2hlbHBlcl9zdXNwZW5kKGRybSk7Cj4gPj4+ICB9Cj4gPj4+ Cj4gPj4+ICBzdGF0aWMgaW50IF9fbWF5YmVfdW51c2VkIGhkbGNkX3BtX3Jlc3VtZShzdHJ1Y3Qg ZGV2aWNlICpkZXYpCj4gPj4+ICB7Cj4gPj4+ICAgICAgIHN0cnVjdCBkcm1fZGV2aWNlICpkcm0g PSBkZXZfZ2V0X2RydmRhdGEoZGV2KTsKPiA+Pj4gLSAgICAgc3RydWN0IGhkbGNkX2RybV9wcml2 YXRlICpoZGxjZCA9IGRybSA/IGRybS0+ZGV2X3ByaXZhdGUgOiBOVUxMOwo+ID4+PiAtCj4gPj4+ IC0gICAgIGlmICghaGRsY2QpCj4gPj4+IC0gICAgICAgICAgICAgcmV0dXJuIDA7Cj4gPj4+Cj4g Pj4+IC0gICAgIGRybV9hdG9taWNfaGVscGVyX3Jlc3VtZShkcm0sIGhkbGNkLT5zdGF0ZSk7Cj4g Pj4+IC0gICAgIGRybV9mYmRldl9jbWFfc2V0X3N1c3BlbmRfdW5sb2NrZWQoaGRsY2QtPmZiZGV2 LCAwKTsKPiA+Pj4gLSAgICAgZHJtX2ttc19oZWxwZXJfcG9sbF9lbmFibGUoZHJtKTsKPiA+Pj4g LQo+ID4+PiAtICAgICByZXR1cm4gMDsKPiA+Pj4gKyAgICAgcmV0dXJuIGRybV9tb2RlX2NvbmZp Z19oZWxwZXJfcmVzdW1lKGRybSk7Cj4gPj4+ICB9Cj4gPj4KPiA+PiBUaGlzIHBhdGNoIGlzIHNp bWlsYXIgdG8gdGhlIG9uZSBOb3JhbGYgVHLDuG5uZXMgc3VibWl0dGVkLCBhbmQgaGlzIGlzCj4g Pj4gYWxzbyBjbGVhbmluZyB1cCB0aGUgc3RhdGUgdmFyaWFibGUgaW4gaGRsY2RfZHJtX3ByaXZh dGUuIFRoZSBwYXRjaCBoYXMKPiA+PiBiZWVuIHF1ZXVlZCBhcyBjb21taXQgZjY5ZDk2ODZlNWQ5 IGluIGdpdDovL2xpbnV4LWFybS5vcmcvbGludXgtbGQuZ2l0Cj4gPj4gZm9yLXVwc3RyZWFtL2hk bGNkIGFuZCBJIHdpbGwgc2VuZCBhIHB1bGwgcmVxdWVzdCB0b2RheSBmb3IgaXQuCj4gPj4KPiA+ PiBCZXN0IHJlZ2FyZHMsCj4gPj4gTGl2aXUKPiA+Cj4gPiB1bmFibGUgdG8gY2xvbmUgdGhpcyBy ZXBvc2l0b3J5Lgo+ID4gY2FuIHlvdSBwbGVhc2UgcG9zdCB0aGUgcGF0Y2h3b3JrIGxpbmsgPwoK U29ycnksIEkgd2FzIG9uIGhvbGlkYXkgdW50aWwgdG9kYXkuCgo+IAo+IExpdml1LCBpcyBjb21t aXQgZjY5ZDk2ODZlNWQ5IGluCj4gZ2l0Oi8vbGludXgtYXJtLm9yZy9saW51eC1sZC5naXRmb3It dXBzdHJlYW0vaGRsY2QKPiBjb250YWlucyBvbmx5IGNoYW5nZXMgaW4gZHJpdmVycy9ncHUvZHJt L2FybS9oZGxjZF9kcnYuYyBkcml2ZXIgPz8KClRoYXQncyByaWdodCwgdGhhdCB0cmVlIG9ubHkg ZGVhbHMgd2l0aCBIRExDRCBjaGFuZ2VzLiBUaGUgcmVzdCBvZiB0aGUKcGF0Y2ggaXMgdXAgdG8g eW91IHRvIHVwc3RyZWFtIGludG8gZHJtLW1pc2MuCgpCZXN0IHJlZ2FyZHMsCkxpdml1CgoKPiAK PiA+Cj4gPj4KPiA+Pj4KPiA+Pj4gIHN0YXRpYyBTSU1QTEVfREVWX1BNX09QUyhoZGxjZF9wbV9v cHMsIGhkbGNkX3BtX3N1c3BlbmQsIGhkbGNkX3BtX3Jlc3VtZSk7Cj4gPj4+IGRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vZHJtX2ZiX2NtYV9oZWxwZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9k cm1fZmJfY21hX2hlbHBlci5jCj4gPj4+IGluZGV4IDE4NmQwMGEuLmY2MDRhODQgMTAwNjQ0Cj4g Pj4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fZmJfY21hX2hlbHBlci5jCj4gPj4+ICsrKyBi L2RyaXZlcnMvZ3B1L2RybS9kcm1fZmJfY21hX2hlbHBlci5jCj4gPj4+IEBAIC01MjksMjEgKzUy OSwzIEBAIHZvaWQgZHJtX2ZiZGV2X2NtYV9zZXRfc3VzcGVuZChzdHJ1Y3QgZHJtX2ZiZGV2X2Nt YSAqZmJkZXZfY21hLCBib29sIHN0YXRlKQo+ID4+PiAgICAgICAgICAgICAgIGRybV9mYl9oZWxw ZXJfc2V0X3N1c3BlbmQoJmZiZGV2X2NtYS0+ZmJfaGVscGVyLCBzdGF0ZSk7Cj4gPj4+ICB9Cj4g Pj4+ICBFWFBPUlRfU1lNQk9MKGRybV9mYmRldl9jbWFfc2V0X3N1c3BlbmQpOwo+ID4+PiAtCj4g Pj4+IC0vKioKPiA+Pj4gLSAqIGRybV9mYmRldl9jbWFfc2V0X3N1c3BlbmRfdW5sb2NrZWQgLSB3 cmFwcGVyIGFyb3VuZAo+ID4+PiAtICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGRybV9mYl9oZWxwZXJfc2V0X3N1c3BlbmRfdW5sb2NrZWQKPiA+Pj4gLSAqIEBmYmRldl9j bWE6IFRoZSBkcm1fZmJkZXZfY21hIHN0cnVjdCwgbWF5IGJlIE5VTEwKPiA+Pj4gLSAqIEBzdGF0 ZTogZGVzaXJlZCBzdGF0ZSwgemVybyB0byByZXN1bWUsIG5vbi16ZXJvIHRvIHN1c3BlbmQKPiA+ Pj4gLSAqCj4gPj4+IC0gKiBDYWxscyBkcm1fZmJfaGVscGVyX3NldF9zdXNwZW5kLCB3aGljaCBp cyBhIHdyYXBwZXIgYXJvdW5kCj4gPj4+IC0gKiBmYl9zZXRfc3VzcGVuZCBpbXBsZW1lbnRlZCBi eSBmYmRldiBjb3JlLgo+ID4+PiAtICovCj4gPj4+IC12b2lkIGRybV9mYmRldl9jbWFfc2V0X3N1 c3BlbmRfdW5sb2NrZWQoc3RydWN0IGRybV9mYmRldl9jbWEgKmZiZGV2X2NtYSwKPiA+Pj4gLSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIHN0YXRlKQo+ID4+PiAtewo+ ID4+PiAtICAgICBpZiAoZmJkZXZfY21hKQo+ID4+PiAtICAgICAgICAgICAgIGRybV9mYl9oZWxw ZXJfc2V0X3N1c3BlbmRfdW5sb2NrZWQoJmZiZGV2X2NtYS0+ZmJfaGVscGVyLAo+ID4+PiAtICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGUpOwo+ID4+ PiAtfQo+ID4+PiAtRVhQT1JUX1NZTUJPTChkcm1fZmJkZXZfY21hX3NldF9zdXNwZW5kX3VubG9j a2VkKTsKPiA+Pj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9yY2FyLWR1L3JjYXJfZHVf ZHJ2LmMgYi9kcml2ZXJzL2dwdS9kcm0vcmNhci1kdS9yY2FyX2R1X2Rydi5jCj4gPj4+IGluZGV4 IDAyYWVlNmMuLjI4ODIyMGYgMTAwNjQ0Cj4gPj4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9yY2Fy LWR1L3JjYXJfZHVfZHJ2LmMKPiA+Pj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL3JjYXItZHUvcmNh cl9kdV9kcnYuYwo+ID4+PiBAQCAtMzU3LDMyICszNTcsMTUgQEAgc3RhdGljIHZvaWQgcmNhcl9k dV9sYXN0Y2xvc2Uoc3RydWN0IGRybV9kZXZpY2UgKmRldikKPiA+Pj4gIHN0YXRpYyBpbnQgcmNh cl9kdV9wbV9zdXNwZW5kKHN0cnVjdCBkZXZpY2UgKmRldikKPiA+Pj4gIHsKPiA+Pj4gICAgICAg c3RydWN0IHJjYXJfZHVfZGV2aWNlICpyY2R1ID0gZGV2X2dldF9kcnZkYXRhKGRldik7Cj4gPj4+ IC0gICAgIHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZTsKPiA+Pj4KPiA+Pj4gLSAgICAg ZHJtX2ttc19oZWxwZXJfcG9sbF9kaXNhYmxlKHJjZHUtPmRkZXYpOwo+ID4+PiAtICAgICBkcm1f ZmJkZXZfY21hX3NldF9zdXNwZW5kX3VubG9ja2VkKHJjZHUtPmZiZGV2LCB0cnVlKTsKPiA+Pj4g LQo+ID4+PiAtICAgICBzdGF0ZSA9IGRybV9hdG9taWNfaGVscGVyX3N1c3BlbmQocmNkdS0+ZGRl dik7Cj4gPj4+IC0gICAgIGlmIChJU19FUlIoc3RhdGUpKSB7Cj4gPj4+IC0gICAgICAgICAgICAg ZHJtX2ZiZGV2X2NtYV9zZXRfc3VzcGVuZF91bmxvY2tlZChyY2R1LT5mYmRldiwgZmFsc2UpOwo+ ID4+PiAtICAgICAgICAgICAgIGRybV9rbXNfaGVscGVyX3BvbGxfZW5hYmxlKHJjZHUtPmRkZXYp Owo+ID4+PiAtICAgICAgICAgICAgIHJldHVybiBQVFJfRVJSKHN0YXRlKTsKPiA+Pj4gLSAgICAg fQo+ID4+PiAtCj4gPj4+IC0gICAgIHJjZHUtPnN1c3BlbmRfc3RhdGUgPSBzdGF0ZTsKPiA+Pj4g LQo+ID4+PiAtICAgICByZXR1cm4gMDsKPiA+Pj4gKyAgICAgcmV0dXJuIGRybV9tb2RlX2NvbmZp Z19oZWxwZXJfc3VzcGVuZChyY2R1LT5kZGV2KTsKPiA+Pj4gIH0KPiA+Pj4KPiA+Pj4gIHN0YXRp YyBpbnQgcmNhcl9kdV9wbV9yZXN1bWUoc3RydWN0IGRldmljZSAqZGV2KQo+ID4+PiAgewo+ID4+ PiAgICAgICBzdHJ1Y3QgcmNhcl9kdV9kZXZpY2UgKnJjZHUgPSBkZXZfZ2V0X2RydmRhdGEoZGV2 KTsKPiA+Pj4KPiA+Pj4gLSAgICAgZHJtX2F0b21pY19oZWxwZXJfcmVzdW1lKHJjZHUtPmRkZXYs IHJjZHUtPnN1c3BlbmRfc3RhdGUpOwo+ID4+PiAtICAgICBkcm1fZmJkZXZfY21hX3NldF9zdXNw ZW5kX3VubG9ja2VkKHJjZHUtPmZiZGV2LCBmYWxzZSk7Cj4gPj4+IC0gICAgIGRybV9rbXNfaGVs cGVyX3BvbGxfZW5hYmxlKHJjZHUtPmRkZXYpOwo+ID4+PiAtCj4gPj4+IC0gICAgIHJldHVybiAw Owo+ID4+PiArICAgICByZXR1cm4gZHJtX21vZGVfY29uZmlnX2hlbHBlcl9yZXN1bWUocmNkdS0+ ZGRldik7Cj4gPj4+ICB9Cj4gPj4+ICAjZW5kaWYKPiA+Pj4KPiA+Pj4gZGlmZiAtLWdpdCBhL2lu Y2x1ZGUvZHJtL2RybV9mYl9jbWFfaGVscGVyLmggYi9pbmNsdWRlL2RybS9kcm1fZmJfY21hX2hl bHBlci5oCj4gPj4+IGluZGV4IGQ1MzJmODhhLi4xNWM0NTY5IDEwMDY0NAo+ID4+PiAtLS0gYS9p bmNsdWRlL2RybS9kcm1fZmJfY21hX2hlbHBlci5oCj4gPj4+ICsrKyBiL2luY2x1ZGUvZHJtL2Ry bV9mYl9jbWFfaGVscGVyLmgKPiA+Pj4gQEAgLTMzLDggKzMzLDYgQEAgc3RydWN0IGRybV9mYmRl dl9jbWEgKmRybV9mYmRldl9jbWFfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+ID4+PiAg dm9pZCBkcm1fZmJkZXZfY21hX3Jlc3RvcmVfbW9kZShzdHJ1Y3QgZHJtX2ZiZGV2X2NtYSAqZmJk ZXZfY21hKTsKPiA+Pj4gIHZvaWQgZHJtX2ZiZGV2X2NtYV9ob3RwbHVnX2V2ZW50KHN0cnVjdCBk cm1fZmJkZXZfY21hICpmYmRldl9jbWEpOwo+ID4+PiAgdm9pZCBkcm1fZmJkZXZfY21hX3NldF9z dXNwZW5kKHN0cnVjdCBkcm1fZmJkZXZfY21hICpmYmRldl9jbWEsIGJvb2wgc3RhdGUpOwo+ID4+ PiAtdm9pZCBkcm1fZmJkZXZfY21hX3NldF9zdXNwZW5kX3VubG9ja2VkKHN0cnVjdCBkcm1fZmJk ZXZfY21hICpmYmRldl9jbWEsCj4gPj4+IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgYm9vbCBzdGF0ZSk7Cj4gPj4+Cj4gPj4+ICBzdHJ1Y3QgZHJtX2dlbV9jbWFfb2JqZWN0 ICpkcm1fZmJfY21hX2dldF9nZW1fb2JqKHN0cnVjdCBkcm1fZnJhbWVidWZmZXIgKmZiLAo+ID4+ PiAgICAgICB1bnNpZ25lZCBpbnQgcGxhbmUpOwo+ID4+PiAtLQo+ID4+PiAxLjkuMQo+ID4+Pgo+ ID4+Cj4gPj4gLS0KPiA+PiA9PT09PT09PT09PT09PT09PT09PQo+ID4+IHwgSSB3b3VsZCBsaWtl IHRvIHwKPiA+PiB8IGZpeCB0aGUgd29ybGQsICB8Cj4gPj4gfCBidXQgdGhleSdyZSBub3QgfAo+ ID4+IHwgZ2l2aW5nIG1lIHRoZSAgIHwKPiA+PiAgXCBzb3VyY2UgY29kZSEgIC8KPiA+PiAgIC0t LS0tLS0tLS0tLS0tLQo+ID4+ICAgICDCr1xfKOODhClfL8KvCgotLSAKPT09PT09PT09PT09PT09 PT09PT0KfCBJIHdvdWxkIGxpa2UgdG8gfAp8IGZpeCB0aGUgd29ybGQsICB8CnwgYnV0IHRoZXkn cmUgbm90IHwKfCBnaXZpbmcgbWUgdGhlICAgfAogXCBzb3VyY2UgY29kZSEgIC8KICAtLS0tLS0t LS0tLS0tLS0KICAgIMKvXF8o44OEKV8vwq8KX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMu ZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlz dGluZm8vZHJpLWRldmVsCg==