From mboxrd@z Thu Jan 1 00:00:00 1970 From: Laurent Pinchart Subject: Re: [PATCH v4 04/11] drm/framebuffer: Add framebuffer debugfs file Date: Thu, 02 Nov 2017 06:43:39 +0200 Message-ID: <9742779.CfMcmu4UYT@avalon> References: <20171030162945.58063-1-noralf@tronnes.org> <20171030162945.58063-5-noralf@tronnes.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from galahad.ideasonboard.com (galahad.ideasonboard.com [IPv6:2001:4b98:dc2:45:216:3eff:febb:480d]) by gabe.freedesktop.org (Postfix) with ESMTPS id 720F06E867 for ; Thu, 2 Nov 2017 04:43:40 +0000 (UTC) In-Reply-To: <20171030162945.58063-5-noralf@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: daniel.vetter@ffwll.ch, tomi.valkeinen@ti.com, hoegsberg@gmail.com, abrodkin@synopsys.com, dri-devel@lists.freedesktop.org, liviu.dudau@arm.com, jsarha@ti.com List-Id: dri-devel@lists.freedesktop.org SGkgTm9yYWxmLAoKVGhhbmsgeW91IGZvciB0aGUgcGF0Y2guCgpPbiBNb25kYXksIDMwIE9jdG9i ZXIgMjAxNyAxODoyOTozOCBFRVQgTm9yYWxmIFRyw7hubmVzIHdyb3RlOgo+IEFkZCBkZWJ1Z2Zz IGZpbGUgdGhhdCBkdW1wcyBpbmZvIGFib3V0IHRoZSBmcmFtZWJ1ZmZlcnMgYW5kIGl0cyBwbGFu ZXMuCj4gQWxzbyBkdW1wIGluZm8gYWJvdXQgYW55IGNvbm5lY3RlZCBnZW0gb2JqZWN0KHMpLgo+ IAo+IFJldmlld2VkLWJ5OiBEYW5pZWwgVmV0dGVyIDxkYW5pZWwudmV0dGVyQGZmd2xsLmNoPgo+ IFNpZ25lZC1vZmYtYnk6IE5vcmFsZiBUcsO4bm5lcyA8bm9yYWxmQHRyb25uZXMub3JnPgo+IC0t LQo+ICBkcml2ZXJzL2dwdS9kcm0vZHJtX2RlYnVnZnMuYyAgICAgfCAgNiArKysrCj4gIGRyaXZl cnMvZ3B1L2RybS9kcm1fZnJhbWVidWZmZXIuYyB8IDU5ICsrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKwo+ICBkcml2ZXJzL2dwdS9kcm0vZHJtX2dlbS5jICAgICAgICAgfCAxNyAr KysrKysrKysrKwo+ICBkcml2ZXJzL2dwdS9kcm0vZHJtX2ludGVybmFsLmggICAgfCAgNyArKysr Kwo+ICBpbmNsdWRlL2RybS9kcm1fZHJ2LmggICAgICAgICAgICAgfCAxMSArKysrKysrKwo+ICA1 IGZpbGVzIGNoYW5nZWQsIDEwMCBpbnNlcnRpb25zKCspCj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9kcm1fZGVidWdmcy5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9kZWJ1Z2ZzLmMK PiBpbmRleCBjMTgwN2Q1NzU0YjIuLjU1MGYyOWRlNmMxZiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJz L2dwdS9kcm0vZHJtX2RlYnVnZnMuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fZGVidWdm cy5jCj4gQEAgLTE1OCw2ICsxNTgsMTIgQEAgaW50IGRybV9kZWJ1Z2ZzX2luaXQoc3RydWN0IGRy bV9taW5vciAqbWlub3IsIGludAo+IG1pbm9yX2lkLCB9Cj4gIAl9Cj4gCj4gKwlyZXQgPSBkcm1f ZnJhbWVidWZmZXJfZGVidWdmc19pbml0KG1pbm9yKTsKPiArCWlmIChyZXQpIHsKPiArCQlEUk1f RVJST1IoIkZhaWxlZCB0byBjcmVhdGUgZnJhbWVidWZmZXIgZGVidWdmcyBmaWxlXG4iKTsKPiAr CQlyZXR1cm4gcmV0Owo+ICsJfQo+ICsKPiAgCWlmIChkZXYtPmRyaXZlci0+ZGVidWdmc19pbml0 KSB7Cj4gIAkJcmV0ID0gZGV2LT5kcml2ZXItPmRlYnVnZnNfaW5pdChtaW5vcik7Cj4gIAkJaWYg KHJldCkgewo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2ZyYW1lYnVmZmVyLmMK PiBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fZnJhbWVidWZmZXIuYyBpbmRleCBhZjI3OTg0NGQ3Y2Uu LjRmNzg3M2ExYjkyMiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2ZyYW1lYnVm ZmVyLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2ZyYW1lYnVmZmVyLmMKPiBAQCAtMjUs NyArMjUsOSBAQAo+ICAjaW5jbHVkZSA8ZHJtL2RybV9hdXRoLmg+Cj4gICNpbmNsdWRlIDxkcm0v ZHJtX2ZyYW1lYnVmZmVyLmg+Cj4gICNpbmNsdWRlIDxkcm0vZHJtX2F0b21pYy5oPgo+ICsjaW5j bHVkZSA8ZHJtL2RybV9wcmludC5oPgo+IAo+ICsjaW5jbHVkZSAiZHJtX2ludGVybmFsLmgiCj4g ICNpbmNsdWRlICJkcm1fY3J0Y19pbnRlcm5hbC5oIgo+IAo+ICAvKioKPiBAQCAtOTU1LDMgKzk1 Nyw2MCBAQCBpbnQgZHJtX2ZyYW1lYnVmZmVyX3BsYW5lX2hlaWdodChpbnQgaGVpZ2h0LAo+ICAJ cmV0dXJuIGZiX3BsYW5lX2hlaWdodChoZWlnaHQsIGZiLT5mb3JtYXQsIHBsYW5lKTsKPiAgfQo+ ICBFWFBPUlRfU1lNQk9MKGRybV9mcmFtZWJ1ZmZlcl9wbGFuZV9oZWlnaHQpOwo+ICsKPiArdm9p ZCBkcm1fZnJhbWVidWZmZXJfcHJpbnRfaW5mbyhzdHJ1Y3QgZHJtX3ByaW50ZXIgKnAsIHVuc2ln bmVkIGludCBpbmRlbnQsCj4gKwkJCQljb25zdCBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYikK PiArewo+ICsJc3RydWN0IGRybV9mb3JtYXRfbmFtZV9idWYgZm9ybWF0X25hbWU7Cj4gKwlpbnQg aTsKCmkgaXMgbmV2ZXIgbmVnYXRpdmUsIHlvdSBjYW4gbWFrZSBpdCBhbiB1bnNpZ25lZCBpbnQu Cgo+ICsJZHJtX3ByaW50Zl9pbmRlbnQocCwgaW5kZW50LCAicmVmY291bnQ9JWRcbiIsCj4gKwkJ CSAgZHJtX2ZyYW1lYnVmZmVyX3JlYWRfcmVmY291bnQoZmIpKTsKCmRybV9mcmFtZWJ1ZmZlcl9y ZWFkX3JlZmNvdW50KCkgcmV0dXJucyBhbiB1bnNpZ25lZCBpbnQsIHRoZSBwcmludGsgZm9ybWF0 IApzaG91bGQgYmUgJXUuCgo+ICsJZHJtX3ByaW50Zl9pbmRlbnQocCwgaW5kZW50LCAiZm9ybWF0 PSVzXG4iLAo+ICsJCQkgIGRybV9nZXRfZm9ybWF0X25hbWUoZmItPmZvcm1hdC0+Zm9ybWF0LCAm Zm9ybWF0X25hbWUpKTsKPiArCWRybV9wcmludGZfaW5kZW50KHAsIGluZGVudCwgIm1vZGlmaWVy PTB4JWxseFxuIiwgZmItPm1vZGlmaWVyKTsKPiArCWRybV9wcmludGZfaW5kZW50KHAsIGluZGVu dCwgInNpemU9JWR4JWRcbiIsIGZiLT53aWR0aCwgZmItPmhlaWdodCk7CgpEaXR0byBoZXJlLCAl dXgldS4KCj4gKwlkcm1fcHJpbnRmX2luZGVudChwLCBpbmRlbnQsICJsYXllcnM6XG4iKTsKPiAr Cj4gKwlmb3IgKGkgPSAwOyBpIDwgZmItPmZvcm1hdC0+bnVtX3BsYW5lczsgaSsrKSB7Cj4gKwkJ ZHJtX3ByaW50Zl9pbmRlbnQocCwgaW5kZW50ICsgMSwgInNpemVbJWRdPSVkeCVkXG4iLCBpLAo+ ICsJCQkJICBkcm1fZnJhbWVidWZmZXJfcGxhbmVfd2lkdGgoZmItPndpZHRoLCBmYiwgaSksCj4g KwkJCQkgIGRybV9mcmFtZWJ1ZmZlcl9wbGFuZV9oZWlnaHQoZmItPmhlaWdodCwgZmIsIGkpKTsK PiArCQlkcm1fcHJpbnRmX2luZGVudChwLCBpbmRlbnQgKyAxLCAicGl0Y2hbJWRdPSV1XG4iLCBp LCBmYi0+cGl0Y2hlc1tpXSk7Cj4gKwkJZHJtX3ByaW50Zl9pbmRlbnQocCwgaW5kZW50ICsgMSwg Im9mZnNldFslZF09JXVcbiIsIGksIGZiLT5vZmZzZXRzW2ldKTsKPiArCQlkcm1fcHJpbnRmX2lu ZGVudChwLCBpbmRlbnQgKyAxLCAib2JqWyVkXTolc1xuIiwgaSwKPiArCQkJCSAgZmItPm9ialtp XSA/ICIiIDogIihudWxsKSIpOwoKQW5kIGluIHZhcmlvdXMgcGxhY2VzIGhlcmUgdG9vLgoKPiAr CQlpZiAoZmItPm9ialtpXSkKPiArCQkJZHJtX2dlbV9wcmludF9pbmZvKHAsIGluZGVudCArIDIs IGZiLT5vYmpbaV0pOwo+ICsJfQo+ICt9Cj4gKwo+ICsjaWZkZWYgQ09ORklHX0RFQlVHX0ZTCj4g K3N0YXRpYyBpbnQgZHJtX2ZyYW1lYnVmZmVyX2luZm8oc3RydWN0IHNlcV9maWxlICptLCB2b2lk ICpkYXRhKQo+ICt7Cj4gKwlzdHJ1Y3QgZHJtX2luZm9fbm9kZSAqbm9kZSA9IG0tPnByaXZhdGU7 Cj4gKwlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gbm9kZS0+bWlub3ItPmRldjsKPiArCXN0cnVj dCBkcm1fcHJpbnRlciBwID0gZHJtX3NlcV9maWxlX3ByaW50ZXIobSk7Cj4gKwlzdHJ1Y3QgZHJt X2ZyYW1lYnVmZmVyICpmYjsKPiArCj4gKwltdXRleF9sb2NrKCZkZXYtPm1vZGVfY29uZmlnLmZi X2xvY2spOwo+ICsJZHJtX2Zvcl9lYWNoX2ZiKGZiLCBkZXYpIHsKPiArCQlkcm1fcHJpbnRmKCZw LCAiZnJhbWVidWZmZXJbJWRdOlxuIiwgZmItPmJhc2UuaWQpOwoKZmItPmJhc2UuaWQgaXMgYW4g dW5zaWduZWQgaW50LCB0aGUgcHJpbnRrIGZvcm1hdCBzaG91bGQgYmUgJXUuCgo+ICsJCWRybV9m cmFtZWJ1ZmZlcl9wcmludF9pbmZvKCZwLCAxLCBmYik7Cj4gKwl9Cj4gKwltdXRleF91bmxvY2so JmRldi0+bW9kZV9jb25maWcuZmJfbG9jayk7Cj4gKwo+ICsJcmV0dXJuIDA7Cj4gK30KPiArCj4g K3N0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX2luZm9fbGlzdCBkcm1fZnJhbWVidWZmZXJfZGVidWdm c19saXN0W10gPSB7Cj4gKwl7ICJmcmFtZWJ1ZmZlciIsIGRybV9mcmFtZWJ1ZmZlcl9pbmZvLCAw IH0sCj4gK307Cj4gKwo+ICtpbnQgZHJtX2ZyYW1lYnVmZmVyX2RlYnVnZnNfaW5pdChzdHJ1Y3Qg ZHJtX21pbm9yICptaW5vcikKPiArewo+ICsJcmV0dXJuIGRybV9kZWJ1Z2ZzX2NyZWF0ZV9maWxl cyhkcm1fZnJhbWVidWZmZXJfZGVidWdmc19saXN0LAo+ICsJCQkJQVJSQVlfU0laRShkcm1fZnJh bWVidWZmZXJfZGVidWdmc19saXN0KSwKPiArCQkJCW1pbm9yLT5kZWJ1Z2ZzX3Jvb3QsIG1pbm9y KTsKPiArfQo+ICsjZW5kaWYKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9nZW0u YyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fZ2VtLmMKPiBpbmRleCA0Yzg0YjIzZDM3Y2MuLjE1MmJk NjIxMGRkZSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2dlbS5jCj4gKysrIGIv ZHJpdmVycy9ncHUvZHJtL2RybV9nZW0uYwo+IEBAIC00MCw2ICs0MCw3IEBACj4gICNpbmNsdWRl IDxkcm0vZHJtUC5oPgo+ICAjaW5jbHVkZSA8ZHJtL2RybV92bWFfbWFuYWdlci5oPgo+ICAjaW5j bHVkZSA8ZHJtL2RybV9nZW0uaD4KPiArI2luY2x1ZGUgPGRybS9kcm1fcHJpbnQuaD4KPiAgI2lu Y2x1ZGUgImRybV9pbnRlcm5hbC5oIgo+IAo+ICAvKiogQGZpbGUgZHJtX2dlbS5jCj4gQEAgLTEw NDAsMyArMTA0MSwxOSBAQCBpbnQgZHJtX2dlbV9tbWFwKHN0cnVjdCBmaWxlICpmaWxwLCBzdHJ1 Y3QKPiB2bV9hcmVhX3N0cnVjdCAqdm1hKSByZXR1cm4gcmV0Owo+ICB9Cj4gIEVYUE9SVF9TWU1C T0woZHJtX2dlbV9tbWFwKTsKPiArCj4gK3ZvaWQgZHJtX2dlbV9wcmludF9pbmZvKHN0cnVjdCBk cm1fcHJpbnRlciAqcCwgdW5zaWduZWQgaW50IGluZGVudCwKPiArCQkJY29uc3Qgc3RydWN0IGRy bV9nZW1fb2JqZWN0ICpvYmopCj4gK3sKPiArCWRybV9wcmludGZfaW5kZW50KHAsIGluZGVudCwg Im5hbWU9JWRcbiIsIG9iai0+bmFtZSk7Cj4gKwlkcm1fcHJpbnRmX2luZGVudChwLCBpbmRlbnQs ICJyZWZjb3VudD0lZFxuIiwKPiArCQkJICBrcmVmX3JlYWQoJm9iai0+cmVmY291bnQpKTsKCmty ZWZfcmVhZCgpIHJldHVybnMgYW4gdW5zaWduZWQgaW50LCB0aGUgcHJpbnRrIGZvcm1hdCBzaG91 bGQgYmUgJXUuCgo+ICsJZHJtX3ByaW50Zl9pbmRlbnQocCwgaW5kZW50LCAic3RhcnQ9JTA4bHhc biIsCj4gKwkJCSAgZHJtX3ZtYV9ub2RlX3N0YXJ0KCZvYmotPnZtYV9ub2RlKSk7Cj4gKwlkcm1f cHJpbnRmX2luZGVudChwLCBpbmRlbnQsICJzaXplPSV6dVxuIiwgb2JqLT5zaXplKTsKPiArCWRy bV9wcmludGZfaW5kZW50KHAsIGluZGVudCwgImltcG9ydGVkPSVzXG4iLAo+ICsJCQkgIG9iai0+ aW1wb3J0X2F0dGFjaCA/ICJ5ZXMiIDogIm5vIik7Cj4gKwo+ICsJaWYgKG9iai0+ZGV2LT5kcml2 ZXItPmdlbV9wcmludF9pbmZvKQo+ICsJCW9iai0+ZGV2LT5kcml2ZXItPmdlbV9wcmludF9pbmZv KHAsIGluZGVudCwgb2JqKTsKPiArfQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJt X2ludGVybmFsLmggYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2ludGVybmFsLmgKPiBpbmRleCBmYmMz ZjMwOGZhMTkuLjQzMGNlM2ZlNGYzYiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJt X2ludGVybmFsLmgKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2ludGVybmFsLmgKPiBAQCAt MTA2LDYgKzEwNiw4IEBAIGludCBkcm1fZ2VtX29wZW5faW9jdGwoc3RydWN0IGRybV9kZXZpY2Ug KmRldiwgdm9pZAo+ICpkYXRhLCBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGVfcHJpdik7Cj4gIHZvaWQg ZHJtX2dlbV9vcGVuKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHN0cnVjdCBkcm1fZmlsZSAqZmls ZV9wcml2YXRlKTsKPiAgdm9pZCBkcm1fZ2VtX3JlbGVhc2Uoc3RydWN0IGRybV9kZXZpY2UgKmRl diwgc3RydWN0IGRybV9maWxlCj4gKmZpbGVfcHJpdmF0ZSk7Cj4gK3ZvaWQgZHJtX2dlbV9wcmlu dF9pbmZvKHN0cnVjdCBkcm1fcHJpbnRlciAqcCwgdW5zaWduZWQgaW50IGluZGVudCwKPiArCQkJ Y29uc3Qgc3RydWN0IGRybV9nZW1fb2JqZWN0ICpvYmopOwo+IAo+ICAvKiBkcm1fZGVidWdmcy5j IGRybV9kZWJ1Z2ZzX2NyYy5jICovCj4gICNpZiBkZWZpbmVkKENPTkZJR19ERUJVR19GUykKPiBA QCAtMTczLDMgKzE3NSw4IEBAIGludCBkcm1fc3luY29ial9yZXNldF9pb2N0bChzdHJ1Y3QgZHJt X2RldmljZSAqZGV2LCB2b2lkCj4gKmRhdGEsIHN0cnVjdCBkcm1fZmlsZSAqZmlsZV9wcml2YXRl KTsKPiAgaW50IGRybV9zeW5jb2JqX3NpZ25hbF9pb2N0bChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2 LCB2b2lkICpkYXRhLAo+ICAJCQkgICAgIHN0cnVjdCBkcm1fZmlsZSAqZmlsZV9wcml2YXRlKTsK PiArCj4gKy8qIGRybV9mcmFtZWJ1ZmZlci5jICovCj4gK3ZvaWQgZHJtX2ZyYW1lYnVmZmVyX3By aW50X2luZm8oc3RydWN0IGRybV9wcmludGVyICpwLCB1bnNpZ25lZCBpbnQgaW5kZW50LAo+ICsJ CQkJY29uc3Qgc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqZmIpOwo+ICtpbnQgZHJtX2ZyYW1lYnVm ZmVyX2RlYnVnZnNfaW5pdChzdHJ1Y3QgZHJtX21pbm9yICptaW5vcik7Cj4gZGlmZiAtLWdpdCBh L2luY2x1ZGUvZHJtL2RybV9kcnYuaCBiL2luY2x1ZGUvZHJtL2RybV9kcnYuaAo+IGluZGV4IDBl OTBlZjI0MjE0Yi4uNDM0ZGU5OTljM2JhIDEwMDY0NAo+IC0tLSBhL2luY2x1ZGUvZHJtL2RybV9k cnYuaAo+ICsrKyBiL2luY2x1ZGUvZHJtL2RybV9kcnYuaAo+IEBAIC0zOSw2ICszOSw3IEBAIHN0 cnVjdCBkcm1fbWlub3I7Cj4gIHN0cnVjdCBkbWFfYnVmX2F0dGFjaG1lbnQ7Cj4gIHN0cnVjdCBk cm1fZGlzcGxheV9tb2RlOwo+ICBzdHJ1Y3QgZHJtX21vZGVfY3JlYXRlX2R1bWI7Cj4gK3N0cnVj dCBkcm1fcHJpbnRlcjsKPiAKPiAgLyogZHJpdmVyIGNhcGFiaWxpdGllcyBhbmQgcmVxdWlyZW1l bnRzIG1hc2sgKi8KPiAgI2RlZmluZSBEUklWRVJfVVNFX0FHUAkJCTB4MQo+IEBAIC00MjgsNiAr NDI5LDE2IEBAIHN0cnVjdCBkcm1fZHJpdmVyIHsKPiAgCSAqLwo+ICAJdm9pZCAoKmdlbV9jbG9z ZV9vYmplY3QpIChzdHJ1Y3QgZHJtX2dlbV9vYmplY3QgKiwgc3RydWN0IGRybV9maWxlICopOwo+ IAo+ICsJLyoqCj4gKwkgKiBAZ2VtX3ByaW50X2luZm86Cj4gKwkgKgo+ICsJICogSWYgZHJpdmVy IHN1YmNsYXNzZXMgc3RydWN0ICZkcm1fZ2VtX29iamVjdCwgaXQgY2FuIGltcGxlbWVudCB0aGlz Cj4gKwkgKiBvcHRpb25hbCBob29rIGZvciBwcmludGluZyBhZGRpdGlvbmFsIGRyaXZlciBzcGVj aWZpYyBpbmZvLgo+ICsJICogU2VlIGRybV9nZW1fcHJpbnRfaW5mbygpLgoKU2hvdWxkIHlvdSBh bHNvIGRvY3VtZW50IHRoZSBtZWFuaW5nIG9mIHRoZSBpbmRlbnQgYXJndW1lbnQgPwoKPiArCSAq Lwo+ICsJdm9pZCAoKmdlbV9wcmludF9pbmZvKShzdHJ1Y3QgZHJtX3ByaW50ZXIgKnAsIHVuc2ln bmVkIGludCBpbmRlbnQsCj4gKwkJCSAgICAgICBjb25zdCBzdHJ1Y3QgZHJtX2dlbV9vYmplY3Qg Km9iaik7Cj4gKwo+ICAJLyoqCj4gIAkgKiBAZ2VtX2NyZWF0ZV9vYmplY3Q6IGNvbnN0cnVjdG9y IGZvciBnZW0gb2JqZWN0cwo+ICAJICoKCldpdGggYWxsIHRoaXMgZml4ZWQsCgpSZXZpZXdlZC1i eTogTGF1cmVudCBQaW5jaGFydCA8bGF1cmVudC5waW5jaGFydEBpZGVhc29uYm9hcmQuY29tPgoK LS0gClJlZ2FyZHMsCgpMYXVyZW50IFBpbmNoYXJ0CgpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBs aXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1h bi9saXN0aW5mby9kcmktZGV2ZWwK