From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 334D7C48BF6 for ; Wed, 21 Feb 2024 07:44:01 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:References: Message-ID:Subject:Cc:To:From:Date:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=G2YbI8DCgPfWOnBOogu+AtxM+6ZCS5TnVXT6PF4MVH0=; b=s+bsle4WXTfgVF RhkkqorYzMlPdqTcnxQF2SLU16OvHlwTHpDDVnsS49GYlYTKG8ShExHt7OsFGaaMHslnTXRu2u/9l GwhG6cUY26CMUzhVWJUvkKbM7Trd7/sCtfge69p92LWQ+/e3XXban+1yVkuA9ZWax11G4H1KYQbdg X5H2alWwOBMwaPSwfHu4fDOn5mZZv8507zFBCX6eQy60Ae76Z0oR0MUq6PCCryg7CVR6ZeS8FMv61 NvSNN6BZG6T/P7A2Xk3y6GH6Vk50aNsSLlUXbI2/UjgYk8EHkJp0cowEQC+h+7j/hLlpc5WZlqdVI ihdqabJOzWwo1puGc4gg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1rchGg-0000000HXbB-1tQQ; Wed, 21 Feb 2024 07:43:50 +0000 Received: from mgamail.intel.com ([192.198.163.11]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1rchGd-0000000HXa6-2biZ; Wed, 21 Feb 2024 07:43:48 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1708501427; x=1740037427; h=date:from:to:cc:subject:message-id:references: mime-version:content-transfer-encoding:in-reply-to; bh=ltTht77zSLOZYTaO34bNZ2vXR72J5XsBwuQr3EcrxMc=; b=Gt5ju+u8liKz5b13vkYTpCclU4U0AVylzOxri0msSwCaNQf9jRpqFYWt zaGD2VvODIXgvC7y783QOi4cCp0zjaHy8ULO/Z5JVhcrgbV3eLU7Nkj5v /chY4cenWtu29ApfrpB+tufuokGNuNjt0b8ptAFLw44Lc2Q8MOLehY318 qmNPiRqH7QnKI9iJuVVX7+7WitinqozVjN77CAHLMJn/SJyVeLm3b05KC RyF/tt9t2TaXTNToDD9lyVTBWhAKXc/wt3BEE94nrBcUzktHryREOg2lj 3lumC3jSzMpW9aw07YG0SiE5NbvWao55/rh3F+ab/cGJV0ZprwPFlbAMs g==; X-IronPort-AV: E=McAfee;i="6600,9927,10990"; a="13267314" X-IronPort-AV: E=Sophos;i="6.06,175,1705392000"; d="scan'208";a="13267314" Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmvoesa105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 20 Feb 2024 23:43:42 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10990"; a="827300778" X-IronPort-AV: E=Sophos;i="6.06,175,1705392000"; d="scan'208";a="827300778" Received: from turnipsi.fi.intel.com (HELO kekkonen.fi.intel.com) ([10.237.72.44]) by orsmga001-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 20 Feb 2024 23:43:34 -0800 Received: from kekkonen.localdomain (localhost [127.0.0.1]) by kekkonen.fi.intel.com (Postfix) with ESMTP id B6E6511F855; Wed, 21 Feb 2024 09:43:31 +0200 (EET) Date: Wed, 21 Feb 2024 07:43:31 +0000 From: "sakari.ailus@linux.intel.com" To: Zhi Mao =?utf-8?B?KOavm+aZuik=?= Cc: "heiko@sntech.de" , "linux-mediatek@lists.infradead.org" , "linux-kernel@vger.kernel.org" , "yunkec@chromium.org" , "robh+dt@kernel.org" , "dan.scally@ideasonboard.com" , Shengnan Wang =?utf-8?B?KOeOi+Wco+eUtyk=?= , "hdegoede@redhat.com" , "linux-media@vger.kernel.org" , "gerald.loacker@wolfvision.net" , "linus.walleij@linaro.org" , "andy.shevchenko@gmail.com" , Yaya Chang =?utf-8?B?KOW8tembhea4hSk=?= , "jacopo.mondi@ideasonboard.com" , "mchehab@kernel.org" , "jernej.skrabec@gmail.com" , Project_Global_Chrome_Upstream_Group , "tomi.valkeinen@ideasonboard.com" , "10572168@qq.com" <10572168@qq.com>, "hverkuil-cisco@xs4all.nl" , "bingbu.cao@intel.com" , "krzysztof.kozlowski+dt@linaro.org" , "conor+dt@kernel.org" , "matthias.bgg@gmail.com" , "laurent.pinchart@ideasonboard.com" , "linux-arm-kernel@lists.infradead.org" , "angelogioacchino.delregno@collabora.com" , "devicetree@vger.kernel.org" , "macromorgan@hotmail.com" Subject: Re: [PATCH v4 2/2] media: i2c: Add GC08A3 image sensor driver Message-ID: References: <20240204061538.2105-1-zhi.mao@mediatek.com> <20240204061538.2105-3-zhi.mao@mediatek.com> <20240206184542.GE2827@pendragon.ideasonboard.com> <598f62bbb55157eec1e23dd1dbc307fea3851b21.camel@mediatek.com> <20240220030104.GF20376@pendragon.ideasonboard.com> <115698c0c549e747026cc8841a3bd571533f8e6f.camel@mediatek.com> <063fa9763efb1570295cfef385829714dd5e42cf.camel@mediatek.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <063fa9763efb1570295cfef385829714dd5e42cf.camel@mediatek.com> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240220_234347_690867_0C35C98E X-CRM114-Status: GOOD ( 52.35 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org SGkgWmhpLAoKT24gV2VkLCBGZWIgMjEsIDIwMjQgYXQgMDI6Mzc6MjdBTSArMDAwMCwgWmhpIE1h byAo5q+b5pm6KSB3cm90ZToKPiBIaSBMYXVyZW50ICYgc2FrYXJpLAo+IAo+IFRoYW5rcyBmb3Ig eW91ciBmZWVkYmFjay4KPiAKPiBPbiBUdWUsIDIwMjQtMDItMjAgYXQgMDc6MjUgKzAwMDAsIHNh a2FyaS5haWx1c0BsaW51eC5pbnRlbC5jb20gd3JvdGU6Cj4gPiAgCSAKPiA+IEV4dGVybmFsIGVt YWlsIDogUGxlYXNlIGRvIG5vdCBjbGljayBsaW5rcyBvciBvcGVuIGF0dGFjaG1lbnRzIHVudGls Cj4gPiB5b3UgaGF2ZSB2ZXJpZmllZCB0aGUgc2VuZGVyIG9yIHRoZSBjb250ZW50Lgo+ID4gIEhp IFpoaSwKPiA+IAo+ID4gT24gVHVlLCBGZWIgMjAsIDIwMjQgYXQgMDU6NDU6NTRBTSArMDAwMCwg WmhpIE1hbyAo5q+b5pm6KSB3cm90ZToKPiA+ID4gSGkgTGF1cmVudCwKPiA+ID4gCj4gPiA+IFRo YW5rcyBmb3IgeW91IHJlcGx5Lgo+ID4gPiBJJ2QgbGlrZSB0byBhc2sgZm9yIGFkdmljZSBhYm91 dCBob3cgdG8gY29udHJsICJyZXNldC1waW4iLCBwbGVhc2UKPiA+ID4gY2hlY2sgdGhlIGJlbG93 IGNvbW1lbnRzLgo+ID4gPiAKPiA+ID4gT24gVHVlLCAyMDI0LTAyLTIwIGF0IDA1OjAxICswMjAw LCBMYXVyZW50IFBpbmNoYXJ0IHdyb3RlOgo+ID4gPiA+ICAgCj4gPiA+ID4gRXh0ZXJuYWwgZW1h aWwgOiBQbGVhc2UgZG8gbm90IGNsaWNrIGxpbmtzIG9yIG9wZW4gYXR0YWNobWVudHMKPiA+IHVu dGlsCj4gPiA+ID4geW91IGhhdmUgdmVyaWZpZWQgdGhlIHNlbmRlciBvciB0aGUgY29udGVudC4K PiA+ID4gPiAgSGkgWmhpLAo+ID4gPiA+IAo+ID4gPiA+IE9uIFR1ZSwgRmViIDIwLCAyMDI0IGF0 IDAyOjEyOjI2QU0gKzAwMDAsIFpoaSBNYW8gKOavm+aZuikgd3JvdGU6Cj4gPiA+ID4gPiBPbiBU dWUsIDIwMjQtMDItMDYgYXQgMjA6NDUgKzAyMDAsIExhdXJlbnQgUGluY2hhcnQgd3JvdGU6Cj4g PiA+ID4gPiA+IE9uIFN1biwgRmViIDA0LCAyMDI0IGF0IDAyOjE1OjM4UE0gKzA4MDAsIFpoaSBN YW8gd3JvdGU6Cj4gPiA+ID4gPiA+ID4gQWRkIGEgVjRMMiBzdWItZGV2aWNlIGRyaXZlciBmb3Ig R2FsYXh5Y29yZSBHQzA4QTMgaW1hZ2UKPiA+ID4gPiBzZW5zb3IuCj4gPiA+ID4gPiA+ID4KPiA+ ID4gPiA+ID4gPiBTaWduZWQtb2ZmLWJ5OiBaaGkgTWFvIDx6aGkubWFvQG1lZGlhdGVrLmNvbT4K PiA+ID4gPiA+ID4gPiAtLS0KPiA+ID4gPiA+ID4gPiAgZHJpdmVycy9tZWRpYS9pMmMvS2NvbmZp ZyAgfCAgIDEwICsKPiA+ID4gPiA+ID4gPiAgZHJpdmVycy9tZWRpYS9pMmMvTWFrZWZpbGUgfCAg ICAxICsKPiA+ID4gPiA+ID4gPiAgZHJpdmVycy9tZWRpYS9pMmMvZ2MwOGEzLmMgfCAxNDQ4Cj4g PiA+ID4gKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCj4gPiA+ID4gPiA+ID4g IDMgZmlsZXMgY2hhbmdlZCwgMTQ1OSBpbnNlcnRpb25zKCspCj4gPiA+ID4gPiA+ID4gIGNyZWF0 ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL21lZGlhL2kyYy9nYzA4YTMuYwo+ID4gPiA+IAo+ID4gPiA+ IFtzbmlwXQo+ID4gPiA+IAo+ID4gPiA+ID4gPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL21lZGlh L2kyYy9nYzA4YTMuYwo+ID4gPiA+IGIvZHJpdmVycy9tZWRpYS9pMmMvZ2MwOGEzLmMKPiA+ID4g PiA+ID4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+ID4gPiA+ID4gPiA+IGluZGV4IDAwMDAwMDAw MDAwMC4uM2ZjN2ZmZmI4MTVjCj4gPiA+ID4gPiA+ID4gLS0tIC9kZXYvbnVsbAo+ID4gPiA+ID4g PiA+ICsrKyBiL2RyaXZlcnMvbWVkaWEvaTJjL2djMDhhMy5jCj4gPiA+ID4gPiA+ID4gQEAgLTAs MCArMSwxNDQ4IEBACj4gPiA+ID4gCj4gPiA+ID4gW3NuaXBdCj4gPiA+ID4gCj4gPiA+ID4gPiA+ ID4gK3N0YXRpYyBpbnQgZ2MwOGEzX3Bvd2VyX29uKHN0cnVjdCBkZXZpY2UgKmRldikKPiA+ID4g PiA+ID4gPiArewo+ID4gPiA+ID4gPiA+ICtzdHJ1Y3QgaTJjX2NsaWVudCAqY2xpZW50ID0gdG9f aTJjX2NsaWVudChkZXYpOwo+ID4gPiA+ID4gPiA+ICtzdHJ1Y3QgdjRsMl9zdWJkZXYgKnNkID0g aTJjX2dldF9jbGllbnRkYXRhKGNsaWVudCk7Cj4gPiA+ID4gPiA+ID4gK3N0cnVjdCBnYzA4YTMg KmdjMDhhMyA9IHRvX2djMDhhMyhzZCk7Cj4gPiA+ID4gPiA+ID4gK2ludCByZXQ7Cj4gPiA+ID4g PiA+ID4gKwo+ID4gPiA+ID4gPiA+ICtyZXQgPQo+ID4gcmVndWxhdG9yX2J1bGtfZW5hYmxlKEFS UkFZX1NJWkUoZ2MwOGEzX3N1cHBseV9uYW1lKSwKPiA+ID4gPiA+ID4gPiArICAgIGdjMDhhMy0+ c3VwcGxpZXMpOwo+ID4gPiA+ID4gPiA+ICtpZiAocmV0IDwgMCkgewo+ID4gPiA+ID4gPiA+ICtk ZXZfZXJyKGdjMDhhMy0+ZGV2LCAiZmFpbGVkIHRvIGVuYWJsZSByZWd1bGF0b3JzOiAlZFxuIiwK PiA+ID4gPiByZXQpOwo+ID4gPiA+ID4gPiA+ICtyZXR1cm4gcmV0Owo+ID4gPiA+ID4gPiA+ICt9 Cj4gPiA+ID4gPiA+ID4gKwo+ID4gPiA+ID4gPiA+ICtyZXQgPSBjbGtfcHJlcGFyZV9lbmFibGUo Z2MwOGEzLT54Y2xrKTsKPiA+ID4gPiA+ID4gPiAraWYgKHJldCA8IDApIHsKPiA+ID4gPiA+ID4g PiArcmVndWxhdG9yX2J1bGtfZGlzYWJsZShBUlJBWV9TSVpFKGdjMDhhM19zdXBwbHlfbmFtZSks Cj4gPiA+ID4gPiA+ID4gKyAgICAgICBnYzA4YTMtPnN1cHBsaWVzKTsKPiA+ID4gPiA+ID4gPiAr ZGV2X2VycihnYzA4YTMtPmRldiwgImNsayBwcmVwYXJlIGVuYWJsZSBmYWlsZWRcbiIpOwo+ID4g PiA+ID4gPiA+ICtyZXR1cm4gcmV0Owo+ID4gPiA+ID4gPiA+ICt9Cj4gPiA+ID4gPiA+ID4gKwo+ ID4gPiA+ID4gPiA+ICt1c2xlZXBfcmFuZ2UoR0MwOEEzX01JTl9TTEVFUF9VUywgR0MwOEEzX01B WF9TTEVFUF9VUyk7Cj4gPiA+ID4gPiA+ID4gKwo+ID4gPiA+ID4gPiA+ICtncGlvZF9zZXRfdmFs dWVfY2Fuc2xlZXAoZ2MwOGEzLT5yZXNldF9ncGlvLCAxKTsKPiA+ID4gPiA+ID4KPiA+ID4gPiA+ ID4gQXJlIHlvdSBhc3NlcnRpbmcgcmVzZXQgd2hlbiBwb3dlcmluZyBvbiA/IFRoYXQgc291bmRz IHdyb25nLAo+ID4geW91Cj4gPiA+ID4gc2hvdWxkCj4gPiA+ID4gPiA+IGRlLWFzc2VydCByZXNl dCBoZXJlIChhbmQgYWNxdWlyZSB0aGUgcmVzZXQgZ3BpbyBpbiBwcm9iZSgpCj4gPiB3aXRoCj4g PiA+ID4gPiA+IEdQSU9EX09VVF9ISUdIKS4gRHJpdmVycyBzaG91bGQgdXNlIGxvZ2ljYWwgbGV2 ZWxzIGZvciBHUElPcywKPiA+ID4gPiBzZXR0aW5nIGEKPiA+ID4gPiA+ID4gR1BJTyBuYW1lZCAi cmVzZXQiIHRvIDEgc2hvdWxkIGFzc2VydCB0aGUgcmVzZXQgc2lnbmFsLCBldmVuCj4gPiBpZgo+ ID4gPiA+IHRoZQo+ID4gPiA+ID4gPiBwaHlzaWNhbCBzaWduYWwgaXMgYWN0aXZlIGxvdy4gWW91 IG1heSBoYXZlIHRoZSB3cm9uZwo+ID4gcG9sYXJpdHkgaW4KPiA+ID4gPiB0aGUKPiA+ID4gPiA+ ID4gZGV2aWNlIHRyZWUuCj4gPiA+ID4gPgo+ID4gPiA+ID4gQWNjb3JkaW5nIHRvIHRoZSBzZW5z b3IgcG93ZXIgc2VxdWVuY2Ugc2VwYywgInJlc2V0IiBwaW4gc2hvdWxkCj4gPiBiZQo+ID4gPiA+ IHB1bGwKPiA+ID4gPiA+IGZyb20gbG93IHRvIGhpZ2ggYWZ0ZXIgImRvdmRkL2R2ZGQvYXZkZCIg cG93ZXIgb24sIHNvIEkgZm9sbG93Cj4gPiB0aGlzCj4gPiA+ID4gPiBwb3dlciBzZXF1ZWNlIHRv IHB1bGwgInJlc2V0IiBwaW4gaGlnaCBpbiBzb2Z0d2FyZSBmbG93Lgo+ID4gPiA+IAo+ID4gPiA+ IEZyb20gYSBoYXJkd2FyZSBwb2ludCBvZiB2aWV3IHRoYXQncyByaWdodCwgYnV0IHRoZSBMaW51 eCBrZXJuZWwKPiA+ID4gPiBoYW5kbGVzCj4gPiA+ID4gbG9naWNhbCBsZXZlbCBvZiBHUElPcy4g SWYgYSBHUElPIGlzIG5hbWVkICJyZXNldCIsIGl0IGlzCj4gPiBleHBlY3RlZAo+ID4gPiA+IHRo YXQKPiA+ID4gPiBjYWxsaW5nCj4gPiA+ID4gCj4gPiA+ID4gZ3Bpb2Rfc2V0X3ZhbHVlX2NhbnNs ZWVwKGdjMDhhMy0+cmVzZXRfZ3BpbywgMSk7Cj4gPiA+ID4gCj4gPiA+ID4gd2lsbCAiYXNzZXJ0 IiB0aGUgcmVzZXQgc2lnbmFsLCBzZXR0aW5nIGl0IHRvIGEgbG9naWNhbCAicmVzZXQgPQo+ID4g PiA+IHRydWUiCj4gPiA+ID4gbGV2ZWwuIFRoaXMgbWFwcyB0byB0aGUgaGFyZHdhcmUgMFYgb3V0 cHV0IGxldmVsLCBhcyB0aGUgc2lnbmFsCj4gPiBpcwo+ID4gPiA+IGFjdGl2ZS1sb3cuIFRvIGFj aGlldmUgdGhpcywgZGVmaW5lIHRoZSByZXNldCBHUElPIGFzIGFjdGl2ZSBsb3cKPiA+IGluCj4g PiA+ID4gRFQsCj4gPiA+ID4gYW5kIHRoZSBHUElPIGZyYW1ld29yayB3aWxsIGludmVydCB0aGUg c2lnbmFsIGZvciB5b3UuIFlvdSBzaG91bGQKPiA+ID4gPiB0aGVuCj4gPiA+ID4gY2FsbAo+ID4g PiA+IAo+ID4gPiA+IGdwaW9kX3NldF92YWx1ZV9jYW5zbGVlcChnYzA4YTMtPnJlc2V0X2dwaW8s IDEpOwo+ID4gPiA+IAo+ID4gPiA+IGluIHRoZSBkcml2ZXIgd2hlbiB5b3Ugd2FudCB0byBhc3Nl cnQgcmVzZXQgKHNldCBpdCB0byAwViksIGFuZAo+ID4gPiA+IAo+ID4gPiA+IGdwaW9kX3NldF92 YWx1ZV9jYW5zbGVlcChnYzA4YTMtPnJlc2V0X2dwaW8sIDApOwo+ID4gPiA+IAo+ID4gPiA+IHdo ZW4geW91IHdhbnQgdG8gZGVhc3NlcnQgaXQgKHNldCBpdCB0byAzLjNWLCBvciB3aGF0ZXZlciB0 aGUgSS9PCj4gPiA+ID4gdm9sdGFnZSBmb3IgdGhlIHNpZ25hbCBpcykuCj4gPiA+ID4gCj4gPiA+ ID4gVGhpcyB3YXkgYWxsIGRyaXZlciB1c2UgbG9naWNhbCBzdGF0ZXMsIGFuZCB0aGUgaW52ZXJz aW9uIGlzCj4gPiBoYW5kbGVkCj4gPiA+ID4gaW4KPiA+ID4gPiBEVC4KPiA+ID4gPiAKPiA+ID4g Cj4gPiA+IFNlbnNvciBwb3dlciBzZXF1ZW5jZSBhcyBiZWxvdzoKPiA+ID4gICAgICAgICAgICAg ICAgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLQo+ID4gPiAgICAgICAgICAgICAgICAgICAgICB8 IHwgfAo+ID4gPiAgICAgICAgICAgICAgICAgICAgICB8IHwgfCAKPiA+ID4gZHZkZC9hdmRkL2Rv dmRkICAtLS0tLS0tLQo+ID4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tLS0t LS0tCj4gPiA+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKPiA+ID4gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgfAo+ID4gPiByZXNldC1waW4gICAgICAgIC0tLS0tLS0tLS0t LS0KPiA+ID4gCj4gPiA+IEluIG9yZGVyIHRvIG1hdGNoIHRoaXMgcG93ZXIgc2VxdWVjZSwgInJl c2V0LXBpbiIgY29udHJsIGZsb3cgaXMKPiA+IGJlbG93Ogo+ID4gPiAxLiBjb25maWcgdGhlICJy ZXNldC1waW4iIGlzICJhY3RpdmUtaGlnaCIgaW4gRFRTOgo+ID4gPiAgICAgcmVzZXQtZ3Bpb3Mg PSA8JnBpbyAxOSBHUElPX0FDVElWRV9ISUdIPjsKPiA+ID4gCj4gPiA+IDIuIGltYWdlIHNlbnNv ciBkcml2ZXIgcHJvYmUgZnVuY3Rpb246Cj4gPiA+IGdjMDhhMy0+cmVzZXRfZ3BpbyA9IGRldm1f Z3Bpb2RfZ2V0KGRldiwgInJlc2V0IiwKPiA+ID4gR1BJT0RfT1VUX0xPVyk7ICAvL2luaXQgInJl c2V0LXBpbiIgaXMgbG93Cj4gPiA+IAo+ID4gPiAzLiBpbWFnZSBzZW5zb3IgZHJpdmVyIHBvd2Vy X29uIGZ1bmN0aW9uOgo+ID4gPiBncGlvZF9zZXRfdmFsdWVfY2Fuc2xlZXAoZ2MwOGEzLT5yZXNl dF9ncGlvLCAxKTsgLy9wdWxsICJyZXNldC1waW4iCj4gPiA+IGhpZ2ggCj4gPiA+IAo+ID4gPiBz bywgdGhlIGV4cGVjdCBzdGF0ZSBvZiAicmVzZXQtcGluIiBpcyBmcm9tIGxvdyB0byBoaWdoLgo+ ID4gPiBJZiBJIGFtIHdyb25nLCBwbGVhc2UgY29ycmVjdCBtZS4KPiA+IAo+ID4gCj4gPiBGcm9t IERvY3VtZW50YXRpb24vZHJpdmVyLWFwaS9ncGlvL2NvbnN1bWVyLnJzdDoKPiA+IAo+ID4gQXMg YSBjb25zdW1lciBzaG91bGQgbm90IGhhdmUgdG8gY2FyZSBhYm91dCB0aGUgcGh5c2ljYWwgbGlu ZQo+ID4gbGV2ZWwsIGFsbCBvZiB0aGUgZ3Bpb2Rfc2V0X3ZhbHVlX3h4eCgpIG9yCj4gPiBncGlv ZF9zZXRfYXJyYXlfdmFsdWVfeHh4KCkgZnVuY3Rpb25zIG9wZXJhdGUgd2l0aCB0aGUgKmxvZ2lj YWwqCj4gPiB2YWx1ZS4gV2l0aCB0aGlzIHRoZXkgdGFrZSB0aGUgYWN0aXZlIGxvdyBwcm9wZXJ0 eSBpbnRvIGFjY291bnQuCj4gPiBUaGlzIG1lYW5zIHRoYXQgdGhleSBjaGVjayB3aGV0aGVyIHRo ZSBHUElPIGlzIGNvbmZpZ3VyZWQgdG8gYmUKPiA+IGFjdGl2ZSBsb3csIGFuZCBpZiBzbywgdGhl eSBtYW5pcHVsYXRlIHRoZSBwYXNzZWQgdmFsdWUgYmVmb3JlIHRoZQo+ID4gcGh5c2ljYWwgbGlu ZSBsZXZlbCBpcyBkcml2ZW4uCj4gPiAKPiA+IEkuZS4gd2hlbiB5b3Ugd2FudCB0byBlbmFibGUg cmVzZXQsIHlvdSBzZXQgdGhlIHZhbHVlIHRvIDEgaW4gdGhlCj4gPiBkcml2ZXIuIEkKPiA+IHRo aW5rIHlvdSdyZSBub3cgc2V0dGluZyB0aGUgdmFsdWUgdG8gMCBpbiB0aGF0IGNhc2UuIFRoZSBv cHBvc2l0ZQo+ID4gZm9yCj4gPiBkaXNhYmxpbmcgaXQgb2YgY291cnNlLgo+ID4gCj4gQWZ0ZXIg Y2hlY2tpbmcgIkRvY3VtZW50YXRpb24vZHJpdmVyLWFwaS9ncGlvL2NvbnN1bWVyLnJzdCI6Cj4g VG8gc3VtbWFyaXplOjoKPiAgIEZ1bmN0aW9uIChleGFtcGxlKSAgICAgICAgICAgICAgICAgbGlu ZSBwcm9wZXJ0eSAgICAgICAgICBwaHlzaWNhbAo+IGxpbmUKPiAuLi4KPiAgIGdwaW9kX3NldF92 YWx1ZShkZXNjLCAxKTsgICAgICAgICAgZGVmYXVsdCAoYWN0aXZlIGhpZ2gpICBoaWdoCj4gICBn cGlvZF9zZXRfdmFsdWUoZGVzYywgMCk7ICAgICAgICAgIGFjdGl2ZSBsb3cgICAgICAgICAgICAg aGlnaAo+IC4uLgo+IAo+IAo+IEZyb20gbXkgdW5kZXJzdGFuZGluZywgaXQgc2VlbXMgdGhhdCAi cmVzZXQtcGluIiBpcyB1c2luZyB0aGUKPiBmb2xsb3dpbmcoYWN0aXZlX2hpZ2gpIGNhc2UgaW4g Y3VycmVudCBjb2RlOiAKPiAiZ3Bpb2Rfc2V0X3ZhbHVlKGRlc2MsIDEpOyAgICAgICAgICBkZWZh dWx0IChhY3RpdmUgaGlnaCkgIGhpZ2giIAo+IAo+IERvIHlvdSBtZWFuLCB3ZSBzaG91bGQgdXNl IHRoZSAiYWN0aXZlX2xvdyIgY2FzZToKPiAiZ3Bpb2Rfc2V0X3ZhbHVlKGRlc2MsIDApOyAgICAg ICAgICBhY3RpdmUgbG93ICAgICAgICAgICAgIGhpZ2giCj4gQ29kZSBzaG91bGQgYmUgY2hhbmdl ZCBhcyBiZWxvdzoKPiAxLiBjb25maWcgdGhlICJyZXNldC1waW4iIGlzICJhY3RpdmUtbG93IiBp biBEVFM6Cj4gICAgLSByZXNldC1ncGlvcyA9IDwmcGlvIDE5IEdQSU9fQUNUSVZFX0xPVz4KPiAy LiBpbWFnZSBzZW5zb3IgZHJpdmVyIHBvd2VyX29uIGZ1bmN0aW9uOgo+ICAgIC0gZ3Bpb2Rfc2V0 X3ZhbHVlX2NhbnNsZWVwKGdjMDhhMy0+cmVzZXRfZ3BpbywgMCk7IC8vcHVsbCBoaWdoIAo+IElz IHRoYXQgc28/CgpDb3JyZWN0LgoKLS0gClJlZ2FyZHMsCgpTYWthcmkgQWlsdXMKCl9fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmxpbnV4LWFybS1rZXJuZWwg bWFpbGluZyBsaXN0CmxpbnV4LWFybS1rZXJuZWxAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8v bGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LWFybS1rZXJuZWwK