From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH 2/4] drm: Make drm_encoder_helper_funcs optional Date: Tue, 10 May 2016 08:53:59 +0200 Message-ID: <20160510065359.GF27098@phenom.ffwll.local> References: <1462454674-2246-1-git-send-email-noralf@tronnes.org> <1462454674-2246-3-git-send-email-noralf@tronnes.org> <20160505162359.GL1286@phenom.ffwll.local> <9791de12-06cf-1192-9ac4-5892644a60c6@tronnes.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wm0-x233.google.com (mail-wm0-x233.google.com [IPv6:2a00:1450:400c:c09::233]) by gabe.freedesktop.org (Postfix) with ESMTPS id 140B46E424 for ; Tue, 10 May 2016 06:54:01 +0000 (UTC) Received: by mail-wm0-x233.google.com with SMTP id v200so25304343wmv.1 for ; Mon, 09 May 2016 23:54:01 -0700 (PDT) Content-Disposition: inline In-Reply-To: <9791de12-06cf-1192-9ac4-5892644a60c6@tronnes.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Noralf =?iso-8859-1?Q?Tr=F8nnes?= Cc: treding@nvidia.com, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org List-Id: dri-devel@lists.freedesktop.org T24gTW9uLCBNYXkgMDksIDIwMTYgYXQgMDk6MTk6MjJQTSArMDIwMCwgTm9yYWxmIFRyw7hubmVz IHdyb3RlOgo+IAo+IERlbiAwNS4wNS4yMDE2IDE4OjIzLCBza3JldiBEYW5pZWwgVmV0dGVyOgo+ ID5PbiBUaHUsIE1heSAwNSwgMjAxNiBhdCAwMzoyNDozMlBNICswMjAwLCBOb3JhbGYgVHLDuG5u ZXMgd3JvdGU6Cj4gPj5NYWtlIGRybV9lbmNvZGVyX2hlbHBlcl9mdW5jcyBhbmQgaXQncyBmdW5j dGlvbnMgb3B0aW9uYWwgdG8gYXZvaWQKPiA+PmhhdmluZyBkdW1teSBmdW5jdGlvbnMuCj4gPj4K PiA+PlNpZ25lZC1vZmYtYnk6IE5vcmFsZiBUcsO4bm5lcyA8bm9yYWxmQHRyb25uZXMub3JnPgo+ ID5QbGVhc2UgYWxzbyB1cGRhdGUgdGhlIGtlcm5lbGRvYyBhbmQgbWVudGlvbiB0aGVyZSB0aGF0 IHRoZSBlbmFibGUvZGlzYWJsZQo+ID5ob29rcyBhcmUgb3B0aW9uYWwuIFlvdSBjYW4gYnVpbGQg dGhlIGhtdGwgZG9jcyB1c2luZwo+IAo+IEFGQUlDVCB0aGUga2VybmVsZG9jIGFscmVhZHkgc2F5 cyB0aGF0IHRoZXkgYXJlIG9wdGlvbmFsIGZvciBhdG9taWMgaGVscGVyczoKPiAKPiBzdHJ1Y3Qg ZHJtX2VuY29kZXJfaGVscGVyX2Z1bmNzIHsKPiBbLi4uXQo+ICAgICAgICAgLyoqCj4gICAgICAg ICAgKiBAZGlzYWJsZToKPiBbLi4uXQo+ICAgICAgICAgICogVGhpcyBob29rIGlzIHVzZWQgYm90 aCBieSBsZWdhY3kgQ1JUQyBoZWxwZXJzIGFuZCBhdG9taWMgaGVscGVycy4KPiAgICAgICAgICAq IEF0b21pYyBkcml2ZXJzIGRvbid0IG5lZWQgdG8gaW1wbGVtZW50IGl0IGlmIHRoZXJlJ3Mgbm8g bmVlZCB0bwo+ICAgICAgICAgICogZGlzYWJsZSBhbnl0aGluZyBhdCB0aGUgZW5jb2RlciBsZXZl bC4gVG8gZW5zdXJlIHRoYXQgcnVudGltZSBQTQo+IFsuLi5dCj4gICAgICAgICAvKioKPiAgICAg ICAgICAqIEBlbmFibGU6Cj4gWy4uLl0KPiAgICAgICAgICAqIFRoaXMgaG9vayBpcyB1c2VkIG9u bHkgYnkgYXRvbWljIGhlbHBlcnMsIGZvciBzeW1tZXRyeSB3aXRoCj4gQGRpc2FibGUuCj4gICAg ICAgICAgKiBBdG9taWMgZHJpdmVycyBkb24ndCBuZWVkIHRvIGltcGxlbWVudCBpdCBpZiB0aGVy ZSdzIG5vIG5lZWQgdG8KPiAgICAgICAgICAqIGVuYWJsZSBhbnl0aGluZyBhdCB0aGUgZW5jb2Rl ciBsZXZlbC4gVG8gZW5zdXJlIHRoYXQgcnVudGltZSBQTQo+IGhhbmRsaW5nCgpJbmRlZWQsIGRv Y3Mgbm90IG1hdGNoaW5nIHRoZSBjb2RlLiBCdXQgd2l0aCB5b3VyIHBhdGNoIGhlcmUgd2lsbCBz b29uIDstKQpJJ2xsIGFwcGx5IHRoaXMgb25lIHRvIGRybS1taXNjLgotRGFuaWVsCgo+IAo+IE5v cmFsZi4KPiAKPiA+JCBtYWtlIGh0bWxkb2NzCj4gPgo+ID50byBjaGVjayB0aGUgcmVzdWx0LiBU aGUgdnRhYmxlcyBhcmUgZG9jdW1lbnRlZCBpbgo+ID5pbmNsdWRlL2RybS9kcm1faGVscGVyX3Z0 YWJsZXMuaAo+ID4KPiA+Pi0tLQo+ID4+ICBkcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pY19oZWxw ZXIuYyB8IDExICsrKysrKysrLS0KPiA+PiAgZHJpdmVycy9ncHUvZHJtL2RybV9jcnRjX2hlbHBl ci5jICAgfCA0MSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tCj4gPkhtLCB0 YmggSSB3b3VsZG4ndCBib3RoZXIgYXQgYWxsIHdpdGggY3J0YyBoZWxwZXJzIGFuZCBqdXN0IGRy b3AgdGhhdAo+ID5wYXJ0LiBPbGQgZHJpdmVycyBzaG91bGQgY29udmVydGVkIHRvIGF0b21pYywg bmV3IGRyaXZlcnMgc2hvdWxkIGp1c3QgdXNlCj4gPmF0b21pYy4gTm8gbmVlZCB0byB0b3VjaCB0 aGF0IGNvZGUgYXQgYWxsLgo+ID4tRGFuaWVsCj4gPgo+ID4+ICAyIGZpbGVzIGNoYW5nZWQsIDQy IGluc2VydGlvbnMoKyksIDEwIGRlbGV0aW9ucygtKQo+ID4+Cj4gPj5kaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2RybV9hdG9taWNfaGVscGVyLmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0 b21pY19oZWxwZXIuYwo+ID4+aW5kZXggOTJlMTFhMi4uMDNlYTA0OSAxMDA2NDQKPiA+Pi0tLSBh L2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX2hlbHBlci5jCj4gPj4rKysgYi9kcml2ZXJzL2dw dS9kcm0vZHJtX2F0b21pY19oZWxwZXIuYwo+ID4+QEAgLTY5Niw2ICs2OTYsOCBAQCBkaXNhYmxl X291dHB1dHMoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3RydWN0IGRybV9hdG9taWNfc3RhdGUg Km9sZF9zdGF0ZSkKPiA+PiAgCQkJY29udGludWU7Cj4gPj4gIAkJZnVuY3MgPSBlbmNvZGVyLT5o ZWxwZXJfcHJpdmF0ZTsKPiA+PisJCWlmICghZnVuY3MpCj4gPj4rCQkJY29udGludWU7Cj4gPj4g IAkJRFJNX0RFQlVHX0FUT01JQygiZGlzYWJsaW5nIFtFTkNPREVSOiVkOiVzXVxuIiwKPiA+PiAg CQkJCSBlbmNvZGVyLT5iYXNlLmlkLCBlbmNvZGVyLT5uYW1lKTsKPiA+PkBAIC03MTEsNyArNzEz LDcgQEAgZGlzYWJsZV9vdXRwdXRzKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHN0cnVjdCBkcm1f YXRvbWljX3N0YXRlICpvbGRfc3RhdGUpCj4gPj4gIAkJCWZ1bmNzLT5wcmVwYXJlKGVuY29kZXIp Owo+ID4+ICAJCWVsc2UgaWYgKGZ1bmNzLT5kaXNhYmxlKQo+ID4+ICAJCQlmdW5jcy0+ZGlzYWJs ZShlbmNvZGVyKTsKPiA+Pi0JCWVsc2UKPiA+PisJCWVsc2UgaWYgKGZ1bmNzLT5kcG1zKQo+ID4+ ICAJCQlmdW5jcy0+ZHBtcyhlbmNvZGVyLCBEUk1fTU9ERV9EUE1TX09GRik7Cj4gPj4gIAkJZHJt X2JyaWRnZV9wb3N0X2Rpc2FibGUoZW5jb2Rlci0+YnJpZGdlKTsKPiA+PkBAIC04NTksNiArODYx LDkgQEAgY3J0Y19zZXRfbW9kZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgZHJtX2F0 b21pY19zdGF0ZSAqb2xkX3N0YXRlKQo+ID4+ICAJCWVuY29kZXIgPSBjb25uZWN0b3ItPnN0YXRl LT5iZXN0X2VuY29kZXI7Cj4gPj4gIAkJZnVuY3MgPSBlbmNvZGVyLT5oZWxwZXJfcHJpdmF0ZTsK PiA+PisJCWlmICghZnVuY3MpCj4gPj4rCQkJY29udGludWU7Cj4gPj4rCj4gPj4gIAkJbmV3X2Ny dGNfc3RhdGUgPSBjb25uZWN0b3ItPnN0YXRlLT5jcnRjLT5zdGF0ZTsKPiA+PiAgCQltb2RlID0g Jm5ld19jcnRjX3N0YXRlLT5tb2RlOwo+ID4+ICAJCWFkanVzdGVkX21vZGUgPSAmbmV3X2NydGNf c3RhdGUtPmFkanVzdGVkX21vZGU7Cj4gPj5AQCAtOTY0LDYgKzk2OSw4IEBAIHZvaWQgZHJtX2F0 b21pY19oZWxwZXJfY29tbWl0X21vZGVzZXRfZW5hYmxlcyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2 LAo+ID4+ICAJCWVuY29kZXIgPSBjb25uZWN0b3ItPnN0YXRlLT5iZXN0X2VuY29kZXI7Cj4gPj4g IAkJZnVuY3MgPSBlbmNvZGVyLT5oZWxwZXJfcHJpdmF0ZTsKPiA+PisJCWlmICghZnVuY3MpCj4g Pj4rCQkJY29udGludWU7Cj4gPj4gIAkJRFJNX0RFQlVHX0FUT01JQygiZW5hYmxpbmcgW0VOQ09E RVI6JWQ6JXNdXG4iLAo+ID4+ICAJCQkJIGVuY29kZXItPmJhc2UuaWQsIGVuY29kZXItPm5hbWUp Owo+ID4+QEAgLTk3Niw3ICs5ODMsNyBAQCB2b2lkIGRybV9hdG9taWNfaGVscGVyX2NvbW1pdF9t b2Rlc2V0X2VuYWJsZXMoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKPiA+PiAgCQlpZiAoZnVuY3Mt PmVuYWJsZSkKPiA+PiAgCQkJZnVuY3MtPmVuYWJsZShlbmNvZGVyKTsKPiA+Pi0JCWVsc2UKPiA+ PisJCWVsc2UgaWYgKGZ1bmNzLT5jb21taXQpCj4gPj4gIAkJCWZ1bmNzLT5jb21taXQoZW5jb2Rl cik7Cj4gPj4gIAkJZHJtX2JyaWRnZV9lbmFibGUoZW5jb2Rlci0+YnJpZGdlKTsKPiA+PmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2NydGNfaGVscGVyLmMgYi9kcml2ZXJzL2dwdS9k cm0vZHJtX2NydGNfaGVscGVyLmMKPiA+PmluZGV4IDY2Y2EzMTMuLjZlNmFiMzggMTAwNjQ0Cj4g Pj4tLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2NydGNfaGVscGVyLmMKPiA+PisrKyBiL2RyaXZl cnMvZ3B1L2RybS9kcm1fY3J0Y19oZWxwZXIuYwo+ID4+QEAgLTE3MCwxMSArMTcwLDE0IEBAIGRy bV9lbmNvZGVyX2Rpc2FibGUoc3RydWN0IGRybV9lbmNvZGVyICplbmNvZGVyKQo+ID4+ICB7Cj4g Pj4gIAljb25zdCBzdHJ1Y3QgZHJtX2VuY29kZXJfaGVscGVyX2Z1bmNzICplbmNvZGVyX2Z1bmNz ID0gZW5jb2Rlci0+aGVscGVyX3ByaXZhdGU7Cj4gPj4rCWlmICghZW5jb2Rlcl9mdW5jcykKPiA+ PisJCXJldHVybjsKPiA+PisKPiA+PiAgCWRybV9icmlkZ2VfZGlzYWJsZShlbmNvZGVyLT5icmlk Z2UpOwo+ID4+ICAJaWYgKGVuY29kZXJfZnVuY3MtPmRpc2FibGUpCj4gPj4gIAkJKCplbmNvZGVy X2Z1bmNzLT5kaXNhYmxlKShlbmNvZGVyKTsKPiA+Pi0JZWxzZQo+ID4+KwllbHNlIGlmIChlbmNv ZGVyX2Z1bmNzLT5kcG1zKQo+ID4+ICAJCSgqZW5jb2Rlcl9mdW5jcy0+ZHBtcykoZW5jb2Rlciwg RFJNX01PREVfRFBNU19PRkYpOwo+ID4+ICAJZHJtX2JyaWRnZV9wb3N0X2Rpc2FibGUoZW5jb2Rl ci0+YnJpZGdlKTsKPiA+PkBAIC0yNDgsNiArMjUxLDkgQEAgZHJtX2NydGNfcHJlcGFyZV9lbmNv ZGVycyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ID4+ICAJZHJtX2Zvcl9lYWNoX2VuY29kZXIo ZW5jb2RlciwgZGV2KSB7Cj4gPj4gIAkJZW5jb2Rlcl9mdW5jcyA9IGVuY29kZXItPmhlbHBlcl9w cml2YXRlOwo+ID4+KwkJaWYgKCFlbmNvZGVyX2Z1bmNzKQo+ID4+KwkJCWNvbnRpbnVlOwo+ID4+ Kwo+ID4+ICAJCS8qIERpc2FibGUgdW51c2VkIGVuY29kZXJzICovCj4gPj4gIAkJaWYgKGVuY29k ZXItPmNydGMgPT0gTlVMTCkKPiA+PiAgCQkJZHJtX2VuY29kZXJfZGlzYWJsZShlbmNvZGVyKTsK PiA+PkBAIC0zMjYsNiArMzMyLDEwIEBAIGJvb2wgZHJtX2NydGNfaGVscGVyX3NldF9tb2RlKHN0 cnVjdCBkcm1fY3J0YyAqY3J0YywKPiA+PiAgCQlpZiAoZW5jb2Rlci0+Y3J0YyAhPSBjcnRjKQo+ ID4+ICAJCQljb250aW51ZTsKPiA+PisJCWVuY29kZXJfZnVuY3MgPSBlbmNvZGVyLT5oZWxwZXJf cHJpdmF0ZTsKPiA+PisJCWlmICghZW5jb2Rlcl9mdW5jcykKPiA+PisJCQljb250aW51ZTsKPiA+ PisKPiA+PiAgCQlyZXQgPSBkcm1fYnJpZGdlX21vZGVfZml4dXAoZW5jb2Rlci0+YnJpZGdlLAo+ ID4+ICAJCQltb2RlLCBhZGp1c3RlZF9tb2RlKTsKPiA+PiAgCQlpZiAoIXJldCkgewo+ID4+QEAg LTM2MCwxMSArMzcwLDE1IEBAIGJvb2wgZHJtX2NydGNfaGVscGVyX3NldF9tb2RlKHN0cnVjdCBk cm1fY3J0YyAqY3J0YywKPiA+PiAgCQlpZiAoZW5jb2Rlci0+Y3J0YyAhPSBjcnRjKQo+ID4+ICAJ CQljb250aW51ZTsKPiA+PisJCWVuY29kZXJfZnVuY3MgPSBlbmNvZGVyLT5oZWxwZXJfcHJpdmF0 ZTsKPiA+PisJCWlmICghZW5jb2Rlcl9mdW5jcykKPiA+PisJCQljb250aW51ZTsKPiA+PisKPiA+ PiAgCQlkcm1fYnJpZGdlX2Rpc2FibGUoZW5jb2Rlci0+YnJpZGdlKTsKPiA+Pi0JCWVuY29kZXJf ZnVuY3MgPSBlbmNvZGVyLT5oZWxwZXJfcHJpdmF0ZTsKPiA+PiAgCQkvKiBEaXNhYmxlIHRoZSBl bmNvZGVycyBhcyB0aGUgZmlyc3QgdGhpbmcgd2UgZG8uICovCj4gPj4tCQllbmNvZGVyX2Z1bmNz LT5wcmVwYXJlKGVuY29kZXIpOwo+ID4+KwkJaWYgKGVuY29kZXJfZnVuY3MtPnByZXBhcmUpCj4g Pj4rCQkJZW5jb2Rlcl9mdW5jcy0+cHJlcGFyZShlbmNvZGVyKTsKPiA+PiAgCQlkcm1fYnJpZGdl X3Bvc3RfZGlzYWJsZShlbmNvZGVyLT5icmlkZ2UpOwo+ID4+ICAJfQo+ID4+QEAgLTM4NSwxMSAr Mzk5LDE1IEBAIGJvb2wgZHJtX2NydGNfaGVscGVyX3NldF9tb2RlKHN0cnVjdCBkcm1fY3J0YyAq Y3J0YywKPiA+PiAgCQlpZiAoZW5jb2Rlci0+Y3J0YyAhPSBjcnRjKQo+ID4+ICAJCQljb250aW51 ZTsKPiA+PisJCWVuY29kZXJfZnVuY3MgPSBlbmNvZGVyLT5oZWxwZXJfcHJpdmF0ZTsKPiA+PisJ CWlmICghZW5jb2Rlcl9mdW5jcykKPiA+PisJCQljb250aW51ZTsKPiA+PisKPiA+PiAgCQlEUk1f REVCVUdfS01TKCJbRU5DT0RFUjolZDolc10gc2V0IFtNT0RFOiVkOiVzXVxuIiwKPiA+PiAgCQkJ ZW5jb2Rlci0+YmFzZS5pZCwgZW5jb2Rlci0+bmFtZSwKPiA+PiAgCQkJbW9kZS0+YmFzZS5pZCwg bW9kZS0+bmFtZSk7Cj4gPj4tCQllbmNvZGVyX2Z1bmNzID0gZW5jb2Rlci0+aGVscGVyX3ByaXZh dGU7Cj4gPj4tCQllbmNvZGVyX2Z1bmNzLT5tb2RlX3NldChlbmNvZGVyLCBtb2RlLCBhZGp1c3Rl ZF9tb2RlKTsKPiA+PisJCWlmIChlbmNvZGVyX2Z1bmNzLT5tb2RlX3NldCkKPiA+PisJCQllbmNv ZGVyX2Z1bmNzLT5tb2RlX3NldChlbmNvZGVyLCBtb2RlLCBhZGp1c3RlZF9tb2RlKTsKPiA+PiAg CQlkcm1fYnJpZGdlX21vZGVfc2V0KGVuY29kZXItPmJyaWRnZSwgbW9kZSwgYWRqdXN0ZWRfbW9k ZSk7Cj4gPj4gIAl9Cj4gPj5AQCAtNDAyLDEwICs0MjAsMTQgQEAgYm9vbCBkcm1fY3J0Y19oZWxw ZXJfc2V0X21vZGUoc3RydWN0IGRybV9jcnRjICpjcnRjLAo+ID4+ICAJCWlmIChlbmNvZGVyLT5j cnRjICE9IGNydGMpCj4gPj4gIAkJCWNvbnRpbnVlOwo+ID4+KwkJZW5jb2Rlcl9mdW5jcyA9IGVu Y29kZXItPmhlbHBlcl9wcml2YXRlOwo+ID4+KwkJaWYgKCFlbmNvZGVyX2Z1bmNzKQo+ID4+KwkJ CWNvbnRpbnVlOwo+ID4+Kwo+ID4+ICAJCWRybV9icmlkZ2VfcHJlX2VuYWJsZShlbmNvZGVyLT5i cmlkZ2UpOwo+ID4+LQkJZW5jb2Rlcl9mdW5jcyA9IGVuY29kZXItPmhlbHBlcl9wcml2YXRlOwo+ ID4+LQkJZW5jb2Rlcl9mdW5jcy0+Y29tbWl0KGVuY29kZXIpOwo+ID4+KwkJaWYgKGVuY29kZXJf ZnVuY3MtPmNvbW1pdCkKPiA+PisJCQllbmNvZGVyX2Z1bmNzLT5jb21taXQoZW5jb2Rlcik7Cj4g Pj4gIAkJZHJtX2JyaWRnZV9lbmFibGUoZW5jb2Rlci0+YnJpZGdlKTsKPiA+PiAgCX0KPiA+PkBA IC03NzEsMTIgKzc5MywxNSBAQCBzdGF0aWMgdm9pZCBkcm1faGVscGVyX2VuY29kZXJfZHBtcyhz dHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29kZXIsIGludCBtb2RlKQo+ID4+ICAJc3RydWN0IGRybV9i cmlkZ2UgKmJyaWRnZSA9IGVuY29kZXItPmJyaWRnZTsKPiA+PiAgCWNvbnN0IHN0cnVjdCBkcm1f ZW5jb2Rlcl9oZWxwZXJfZnVuY3MgKmVuY29kZXJfZnVuY3M7Cj4gPj4rCWVuY29kZXJfZnVuY3Mg PSBlbmNvZGVyLT5oZWxwZXJfcHJpdmF0ZTsKPiA+PisJaWYgKCFlbmNvZGVyX2Z1bmNzKQo+ID4+ KwkJcmV0dXJuOwo+ID4+Kwo+ID4+ICAJaWYgKG1vZGUgPT0gRFJNX01PREVfRFBNU19PTikKPiA+ PiAgCQlkcm1fYnJpZGdlX3ByZV9lbmFibGUoYnJpZGdlKTsKPiA+PiAgCWVsc2UKPiA+PiAgCQlk cm1fYnJpZGdlX2Rpc2FibGUoYnJpZGdlKTsKPiA+Pi0JZW5jb2Rlcl9mdW5jcyA9IGVuY29kZXIt PmhlbHBlcl9wcml2YXRlOwo+ID4+ICAJaWYgKGVuY29kZXJfZnVuY3MtPmRwbXMpCj4gPj4gIAkJ ZW5jb2Rlcl9mdW5jcy0+ZHBtcyhlbmNvZGVyLCBtb2RlKTsKPiA+Pi0tIAo+ID4+Mi4yLjIKPiA+ Pgo+IAoKLS0gCkRhbmllbCBWZXR0ZXIKU29mdHdhcmUgRW5naW5lZXIsIEludGVsIENvcnBvcmF0 aW9uCmh0dHA6Ly9ibG9nLmZmd2xsLmNoCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZy ZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3Rp bmZvL2RyaS1kZXZlbAo=