From mboxrd@z Thu Jan 1 00:00:00 1970 From: Steffen Trumtrar Subject: Re: [PATCH 1/2 v6] of: add helper to parse display timings Date: Fri, 5 Oct 2012 18:16:20 +0200 Message-ID: <20121005161620.GB2053@pengutronix.de> References: <1349373560-11128-1-git-send-email-s.trumtrar@pengutronix.de> <1349373560-11128-2-git-send-email-s.trumtrar@pengutronix.de> <506DD9B4.40409@wwwdotorg.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <506DD9B4.40409-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: devicetree-discuss-bounces+gldd-devicetree-discuss=m.gmane.org-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org Sender: "devicetree-discuss" To: Stephen Warren Cc: linux-fbdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org, dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, Tomi Valkeinen , Laurent Pinchart , linux-media-u79uwXL29TY76Z2rM5mHXA@public.gmane.org List-Id: devicetree@vger.kernel.org T24gVGh1LCBPY3QgMDQsIDIwMTIgYXQgMTI6NDc6MTZQTSAtMDYwMCwgU3RlcGhlbiBXYXJyZW4g d3JvdGU6Cj4gT24gMTAvMDQvMjAxMiAxMTo1OSBBTSwgU3RlZmZlbiBUcnVtdHJhciB3cm90ZToK PiAKPiBBIHBhdGNoIGRlc2NyaXB0aW9uIHdvdWxkIGJlIHVzZWZ1bCBmb3Igc29tZXRoaW5nIGxp a2UgdGhpcy4KPiAKClllcy4gU2hhbWUgb24gbWUuCgo+ID4gZGlmZiAtLWdpdCBhL0RvY3VtZW50 YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy92aWRlby9kaXNwbGF5LXRpbWluZ3MudHh0IGIvRG9j dW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL3ZpZGVvL2Rpc3BsYXktdGltaW5ncy50eHQK PiA+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4gLi4uCj4gPiArVXNhZ2UgaW4gYmFja2VuZAo+ID4g Kz09PT09PT09PT09PT09PT0KPiAKPiBFdmVyeXRoaW5nIGJlZm9yZSB0aGF0IHBvaW50IGluIHRo ZSBmaWxlIGxvb2tzIGZpbmUgdG8gbWUuCj4gCgpcby8KCj4gRXZlcnl0aGluZyBhZnRlciB0aGlz IHBvaW50IGluIHRoZSBmaWxlIHNlZW1zIHRvIGJlIExpbnV4LXNwZWNpZmljCj4gaW1wbGVtZW50 YXRpb24gZGV0YWlscy4gRG9lcyBpdCByZWFsbHkgYmVsb25nIGluIHRoZSBEVCBiaW5kaW5nCj4g ZG9jdW1lbnRhdGlvbiwgcmF0aGVyIHRoYW4gc29tZSBMaW51eC1zcGVjaWZpYyBkb2N1bWVudGF0 aW9uIGZpbGU/Cj4gCgpJIGd1ZXNzIHlvdSBhcmUgcmlnaHQgYWJvdXQgdGhhdC4KCj4gPiArc3Ry dWN0IGRybV9kaXNwbGF5X21vZGUKPiA+ICs9PT09PT09PT09PT09PT09PT09PT09PQo+ID4gKwo+ ID4gKyAgKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLSsKPiA+ICsgIHwgICAgICAgICAgfCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgfCAgICAgICB8ICDi hpEKPiA+ICsgIHwgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHwgICAgICAgICAgfCAgICAgICB8ICB8Cj4gPiArICB8ICAgICAgICAgIHwgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgIHwgICAg ICAgfCAgfAo+ID4gKyAgKy0tLS0tLS0tLS0jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIy0tLS0tLS0tLS0rLS0tLS0tLSsgIHwKPiAKPiBJIHN1c3BlY3QgdGhl IGVudGlyZSBob3Jpem9udGFsIGJveCBhYm92ZSAoYW5kIHRoZSBlbnRpcmUgdmVydGljYWwgYm94 Cj4gYWxsIHRoZSB3YXkgZG93biB0aGUgbGVmdC1oYW5kIHNpZGUpIHNob3VsZCBiZSBvbiB0aGUg Ym90dG9tL3JpZ2h0Cj4gaW5zdGVhZCBvZiB0b3AvbGVmdC4gVGhlIHJlYXNvbiBJIHRoaW5rIHRo aXMgaXMgYmVjYXVzZSBhbGwgb2YKPiB2c3luY19zdGFydCwgdnN5bmNfZW5kLCB2ZGlzcGxheSBo YXZlIHRvIGJlIHJlZmVyZW5jZWQgdG8gc29tZSBrbm93bgo+IHBvaW50LCB3aGljaCBpcyB1c3Vh bGx5IHplcm8gb3IgdGhlIHN0YXJ0IG9mIHRoZSB0aW1pbmcgZGVmaW5pdGlvbiwgL29yLwo+IHRo ZXJlIHdvdWxkIGJlIHNvbWUgdmFsdWUgaW5kaWNhdGluZyB0aGUgc2l6ZSBvZiB0aGUgdG9wIG1h cmdpbmcvcG9yY2gKPiBpbiBvcmRlciB0byBzYXkgd2hlcmUgdGhvc2Ugb3RoZXIgdmFsdWVzIGFy ZSByZWZlcmVuY2VkIHRvLgo+IAo+ID4gKyAgfCAgICAgICAgICAjICAg4oaRICAgICAgICAg4oaR ICAgICAgICAgIOKGkSAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICB8ICAgICAgIHwgIHwK PiA+ICsgIHwgICAgICAgICAgIyAgIHwgICAgICAgICB8ICAgICAgICAgIHwgICAgICAgICAgICAg ICAgICAgICMgICAgICAgICAgfCAgICAgICB8ICB8Cj4gPiArICB8ICAgICAgICAgICMgICB8ICAg ICAgICAgfCAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgIHwgICAgICAg fCAgfAo+ID4gKyAgfCAgICAgICAgICAjICAgfCAgICAgICAgIHwgICAgICAgICAgfCAgICAgICAg ICAgICAgICAgICAgIyAgICAgICAgICB8ICAgICAgIHwgIHwKPiA+ICsgIHwgICAgICAgICAgIyAg IHwgICAgICAgICB8ICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgfCAg ICAgICB8ICB8Cj4gPiArICB8ICAgICAgICAgICMgICB8ICAgICAgICAgfCAgICAgICAgICB8ICAg ICAgIGhkaXNwbGF5ICAgICAjICAgICAgICAgIHwgICAgICAgfCAgfAo+ID4gKyAgfCAgICAgICAg ICAjPC0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0+IyAgICAgICAg ICB8ICAgICAgIHwgIHwKPiA+ICsgIHwgICAgICAgICAgIyAgIHwgICAgICAgICB8ICAgICAgICAg IHwgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgfCAgICAgICB8ICB8Cj4gPiArICB8ICAg ICAgICAgICMgICB8dnN5bmNfc3RhcnQgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAjICAg ICAgICAgIHwgICAgICAgfCAgfAo+ID4gKyAgfCAgICAgICAgICAjICAgfCAgICAgICAgIHwgICAg ICAgICAgfCAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICB8ICAgICAgIHwgIHwKPiA+ICsg IHwgICAgICAgICAgIyAgIHwgICAgICAgICB8dnN5bmNfZW5kIHwgICAgICAgICAgICAgICAgICAg ICMgICAgICAgICAgfCAgICAgICB8ICB8Cj4gPiArICB8ICAgICAgICAgICMgICB8ICAgICAgICAg fCAgICAgICAgICB8dmRpc3BsYXkgICAgICAgICAgICAjICAgICAgICAgIHwgICAgICAgfCAgfAo+ ID4gKyAgfCAgICAgICAgICAjICAgfCAgICAgICAgIHwgICAgICAgICAgfCAgICAgICAgICAgICAg ICAgICAgIyAgICAgICAgICB8ICAgICAgIHwgIHwKPiA+ICsgIHwgICAgICAgICAgIyAgIHwgICAg ICAgICB8ICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgfCAgICAgICB8 ICB8Cj4gPiArICB8ICAgICAgICAgICMgICB8ICAgICAgICAgfCAgICAgICAgICB8ICAgICAgICAg ICAgICAgICAgICAjICAgICAgICAgIHwgICAgICAgfCAgfCB2dG90YWwKPiA+ICsgIHwgICAgICAg ICAgIyAgIHwgICAgICAgICB8ICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICMgICAgICAg ICAgfCAgICAgICB8ICB8Cj4gPiArICB8ICAgICAgICAgICMgICB8ICAgICAgICAgfCAgICAgICAg ICB8ICAgICBoc3luY19zdGFydCAgICAjICAgICAgICAgIHwgICAgICAgfCAgfAo+ID4gKyAgfCAg ICAgICAgICAjPC0tKy0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLT58ICAgICAgIHwgIHwKPiA+ICsgIHwgICAgICAgICAgIyAgIHwgICAgICAgICB8ICAg ICAgICAgIHwgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgfCAgICAgICB8ICB8Cj4gPiAr ICB8ICAgICAgICAgICMgICB8ICAgICAgICAgfCAgICAgICAgICB8ICAgICBoc3luY19lbmQgICAg ICAjICAgICAgICAgIHwgICAgICAgfCAgfAo+ID4gKyAgfCAgICAgICAgICAjPC0tKy0tLS0tLS0t LSstLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tPnwgIHwK PiA+ICsgIHwgICAgICAgICAgIyAgIHwgICAgICAgICB8ICAgICAgICAgIOKGkyAgICAgICAgICAg ICAgICAgICAgIyAgICAgICAgICB8ICAgICAgIHwgIHwKPiA+ICsgICstLS0tLS0tLS0tIyMjI3wj IyMjIyMjIyN8IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMtLS0tLS0tLS0tKy0tLS0t LS0rICB8Cj4gPiArICB8ICAgICAgICAgIHwgICB8ICAgICAgICAgfCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB8ICAgICAgICAgIHwgICAgICAgfCAgfAo+ID4gKyAgfCAgICAgICAgICB8 ICAgfCAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICB8 ICAgICAgIHwgIHwKPiA+ICsgIHwgICAgICAgICAgfCAgIOKGkyAgICAgICAgIHwgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICB8ICAgICAgIHwgIHwKPiA+ICsgICstLS0t LS0tLS0tKy0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LS0tLS0tKy0tLS0tLS0rICB8Cj4gPiArICB8ICAgICAgICAgIHwgICAgICAgICAgICAgfCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgIHwgICAgICAgfCAgfAo+ID4gKyAg fCAgICAgICAgICB8ICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg fCAgICAgICAgICB8ICAgICAgIHwgIHwKPiA+ICsgIHwgICAgICAgICAgfCAgICAgICAgICAgICDi hpMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICB8ICAgICAgIHwgIOKG kwo+ID4gKyAgKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLSsKPiA+ICsgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGh0b3RhbAo+ID4gKyAgIDwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tPgo+IAo+ID4gZGlm ZiAtLWdpdCBhL2RyaXZlcnMvb2Yvb2ZfZGlzcGxheV90aW1pbmdzLmMgYi9kcml2ZXJzL29mL29m X2Rpc3BsYXlfdGltaW5ncy5jCj4gCj4gPiArc3RhdGljIGludCBwYXJzZV9wcm9wZXJ0eShzdHJ1 Y3QgZGV2aWNlX25vZGUgKm5wLCBjaGFyICpuYW1lLAo+ID4gKwkJCQlzdHJ1Y3QgdGltaW5nX2Vu dHJ5ICpyZXN1bHQpCj4gCj4gPiArCWlmIChjZWxscyA9PSAxKQo+ID4gKwkJcmV0ID0gb2ZfcHJv cGVydHlfcmVhZF91MzJfYXJyYXkobnAsIG5hbWUsICZyZXN1bHQtPnR5cCwgY2VsbHMpOwo+IAo+ IFNob3VsZCB0aGF0IGJyYW5jaCBub3QganVzdCBzZXQgcmVzdWx0LT5taW4vbWF4IHRvIHR5cCBh cyB3ZWxsPwo+IFByZXN1bWFibHkgaXQnZCBwcmV2ZW50IGFueSBjb2RlIHRoYXQgaW50ZXJwcmV0 cyBzdHJ1Y3QgdGltaW5nX2VudHJ5Cj4gZnJvbSBoYXZpbmcgdG8gY2hlY2sgaWYgdGhvc2UgdmFs dWVzIHdlcmUgMCBvciBub3Q/Cj4gCgpZZXMsIG9rYXkuCgo+ID4gKwllbHNlIGlmIChjZWxscyA9 PSAzKQo+ID4gKwkJcmV0ID0gb2ZfcHJvcGVydHlfcmVhZF91MzJfYXJyYXkobnAsIG5hbWUsICZy ZXN1bHQtPm1pbiwgY2VsbHMpOwo+IAo+ID4gK3N0cnVjdCBkaXNwbGF5X3RpbWluZ3MgKm9mX2dl dF9kaXNwbGF5X3RpbWluZ19saXN0KHN0cnVjdCBkZXZpY2Vfbm9kZSAqbnApCj4gCj4gPiArCWVu dHJ5ID0gb2ZfcGFyc2VfcGhhbmRsZSh0aW1pbmdzX25wLCAiZGVmYXVsdC10aW1pbmciLCAwKTsK PiA+ICsKPiA+ICsJaWYgKCFlbnRyeSkgewo+ID4gKwkJcHJfaW5mbygiJXM6IG5vIGRlZmF1bHQt dGltaW5nIHNwZWNpZmllZFxuIiwgX19mdW5jX18pOwo+ID4gKwkJZW50cnkgPSBvZl9maW5kX25v ZGVfYnlfbmFtZShucCwgInRpbWluZyIpOwo+IAo+IEkgZG9uJ3QgdGhpbmsgeW91IHdhbnQgdG8g cmVxdWlyZSB0aGUgbm9kZSBoYXZlIGFuIGV4cGxpY2l0IG5hbWU7IEkKPiBkb24ndCByZWNhbGwg dGhlIERUIGJpbmRpbmcgZG9jdW1lbnRhdGlvbiBtYWtpbmcgdGhhdCBhIHJlcXVpcmVtZW50Lgo+ IEluc3RlYWQsIGNhbid0IHlvdSBlaXRoZXIganVzdCBsZWF2ZSB0aGUgZGVmYXVsdCB1bnNldCwg b3IgcGljayB0aGUKPiBmaXJzdCBEVCBjaGlsZCBub2RlLCBpcnJlc3BlY3RpdmUgb2YgbmFtZT8K PiAKQWgsIHllcy4gSSB3aWxsIHNldCB0aGUgZmlyc3QgY2hpbGQgdGhlbi4KCj4gPiArCWlmICgh ZW50cnkpIHsKPiA+ICsJCXByX2luZm8oIiVzOiBubyB0aW1pbmcgc3BlY2lmaWNhdGlvbnMgZ2l2 ZW5cbiIsIF9fZnVuY19fKTsKPiA+ICsJCXJldHVybiBkaXNwOwo+ID4gKwl9Cj4gCj4gVGhlIERU IGJpbmRpbmdzIGRvbid0IHN0YXRlIHRoYXQgaXQncyBtYW5kYXRvcnkgdG8gaGF2ZSBzb21lIHRp bWluZwo+IHNwZWNpZmllZCwgYWx0aG91Z2ggSSBhZ3JlZSB0aGF0IGl0IG1ha2VzIHNlbnNlIGlu IHByYWN0aWNlLgo+IAoKVGhlIGRlZmluaXRpb24gb2YgdGltaW5ncyBpbiBkdCBkb2Vzbid0IG1h a2UgbXVjaCBzZW5zZSwgd2hlbiB0aGVyZQphcmUgbm8gdGltaW5ncyBkZWZpbmVkLCBkb2VzIGl0 ID8gTWF5YmUgSSBzaG91bGQgc3RhdGUgdGhlIG9idmlvdXMKaW4gdGhlIGJpbmRpbmcsIGp1c3Qg aW4gY2FzZS4KCj4gPiArCWZvcl9lYWNoX2NoaWxkX29mX25vZGUodGltaW5nc19ucCwgZW50cnkp IHsKPiA+ICsJCXN0cnVjdCBzaWduYWxfdGltaW5nICpzdDsKPiA+ICsKPiA+ICsJCXN0ID0gb2Zf Z2V0X2Rpc3BsYXlfdGltaW5nKGVudHJ5KTsKPiA+ICsKPiA+ICsJCWlmICghc3QpCj4gPiArCQkJ Y29udGludWU7Cj4gCj4gSSB3b25kZXIgaWYgdGhhdCBzaG91bGRuJ3QgYmUgYW4gZXJyb3I/Cj4g CgpJbiB0aGUgc2Vuc2Ugb2YgYSBwcl9lcnIgbm90IGEgLUVJTlZBTCBJIHByZXN1bWU/ISBJdCBp cyBhIGxpdHRsZSBiaXQgcXVpZXQgaW4KY2FzZSBvZiBhIGZhdWx0eSBzcGVjLCB0aGF0IGlzIHJp Z2h0LgoKPiA+ICsJCWlmIChzdHJjbXAoZGVmYXVsdF90aW1pbmcsIGVudHJ5LT5mdWxsX25hbWUp ID09IDApCj4gPiArCQkJZGlzcC0+ZGVmYXVsdF90aW1pbmcgPSBkaXNwLT5udW1fdGltaW5nczsK PiAKPiBIbW0uIFdoeSBub3QgY29tcGFyZSB0aGUgbm9kZSBwb2ludGVycyByYXRoZXIgdGhhbiB0 aGUgbmFtZT8gQWxzbywgaWYKPiB0aGUgcGFyc2luZyBmYWlsZWQsIHRoZW4gdGhpcyBjYW4gbGVh ZCB0byBkZWZhdWx0X3RpbWluZyBiZWluZwo+IHVuaW5pdGlhbGl6ZWQgYW55d2F5Li4uCj4gCi4u IGFuZCB3ZSBkb24ndCB3YW50IHRoYXQuIFdpbGwgZml4LgoKPiA+ICsJCWRpc3AtPnRpbWluZ3Nb ZGlzcC0+bnVtX3RpbWluZ3NdID0gc3Q7Cj4gPiArCQlkaXNwLT5udW1fdGltaW5ncysrOwo+ID4g Kwl9Cj4gCj4gPiArCWlmIChkaXNwLT5udW1fdGltaW5ncyA+PSAwKQo+ID4gKwkJcHJfaW5mbygi JXM6IGdvdCAlZCB0aW1pbmdzLiBVc2luZyB0aW1pbmcgIyVkIGFzIGRlZmF1bHRcbiIsIF9fZnVu Y19fLAo+ID4gKwkJCWRpc3AtPm51bV90aW1pbmdzICwgZGlzcC0+ZGVmYXVsdF90aW1pbmcgKyAx KTsKPiA+ICsJZWxzZQo+ID4gKwkJcHJfaW5mbygiJXM6IG5vIHRpbWluZ3Mgc3BlY2lmaWVkXG4i LCBfX2Z1bmNfXyk7Cj4gCj4gVGhlIG1lc3NhZ2UgaW4gdGhlIGVsc2UgY2xhdXNlIGlzIG5vdCBu ZWNlc3NhcmlseSB0cnVlOyB0aGVyZSBtYXkgaGF2ZQo+IGJlZW4gc29tZSBzcGVjaWZpZWQsIGJ1 dCB0aGV5IGp1c3QgY291bGRuJ3QgYmUgcGFyc2VkLgo+IApSaWdodC4KCj4gPiAraW50IG9mX2Rp c3BsYXlfdGltaW5nc19leGlzdHMoc3RydWN0IGRldmljZV9ub2RlICpucCkKPiA+ICt7Cj4gPiAr CXN0cnVjdCBkZXZpY2Vfbm9kZSAqdGltaW5nc19ucDsKPiA+ICsJc3RydWN0IGRldmljZV9ub2Rl ICpkZWZhdWx0X25wOwo+ID4gKwo+ID4gKwlpZiAoIW5wKQo+ID4gKwkJcmV0dXJuIC1FSU5WQUw7 Cj4gPiArCj4gPiArCXRpbWluZ3NfbnAgPSBvZl9wYXJzZV9waGFuZGxlKG5wLCAiZGlzcGxheS10 aW1pbmdzIiwgMCk7Cj4gPiArCj4gPiArCWlmICghdGltaW5nc19ucCkKPiA+ICsJCXJldHVybiAt RUlOVkFMOwo+ID4gKwo+ID4gKwlkZWZhdWx0X25wID0gb2ZfcGFyc2VfcGhhbmRsZShucCwgImRl ZmF1bHQtdGltaW5nIiwgMCk7Cj4gPiArCj4gPiArCWlmIChkZWZhdWx0X25wKQo+ID4gKwkJcmV0 dXJuIDA7Cj4gCj4gSWYgdGhpcyBmdW5jdGlvbiBjaGVja3MgdGhhdCBhIGRlZmF1bHQtdGltaW5n IHByb3BlcnR5IGV4aXN0cywgc2hvdWxkbid0Cj4gdGhlIGZ1bmN0aW9uIGJlIG5hbWVkIG9mX2Rp c3BsYXlfZGVmYXVsdF90aW1pbmdfZXhpc3RzKCk/Cj4gCgpNYXliZSBJIHNob3VsZCBzcGxpdCB0 aGlzIGluIHR3byBmdW5jdGlvbnMuCgpUaGFua3MgZm9yIHlvdXIgZmVlZGJhY2suCgpSZWdhcmRz LApTdGVmZmVuCgotLSAKUGVuZ3V0cm9uaXggZS5LLiAgICAgICAgICAgICAgICAgICAgICAgICAg IHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKSW5kdXN0cmlhbCBMaW51eCBTb2x1dGlv bnMgICAgICAgICAgICAgICAgIHwgaHR0cDovL3d3dy5wZW5ndXRyb25peC5kZS8gIHwKUGVpbmVy IFN0ci4gNi04LCAzMTEzNyBIaWxkZXNoZWltLCBHZXJtYW55IHwgUGhvbmU6ICs0OS01MTIxLTIw NjkxNy0wICAgIHwKQW10c2dlcmljaHQgSGlsZGVzaGVpbSwgSFJBIDI2ODYgICAgICAgICAgIHwg RmF4OiAgICs0OS01MTIxLTIwNjkxNy01NTU1IHwKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KZGV2aWNldHJlZS1kaXNjdXNzIG1haWxpbmcgbGlzdApkZXZp Y2V0cmVlLWRpc2N1c3NAbGlzdHMub3psYWJzLm9yZwpodHRwczovL2xpc3RzLm96bGFicy5vcmcv bGlzdGluZm8vZGV2aWNldHJlZS1kaXNjdXNzCg==