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 X-Spam-Level: X-Spam-Status: No, score=-11.5 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH, MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id E67DCC433E2 for ; Tue, 15 Sep 2020 02:40:42 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 877C820732 for ; Tue, 15 Sep 2020 02:40:42 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="B4Lj67n1"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="gi7UkDFo" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 877C820732 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=ideasonboard.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:References:Message-ID: Subject: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=8nHBTCE5u3wbADp1GkaSJicUzPZaLuMD72cIyUGD8Mg=; b=B4Lj67n1dRPRPgxzV4cQttPuP 70+UTweeEEVdCbxoBOoLeycyImlGgTckSSgVdJf+t5UiOtNDT+9WIwRBSrIQewkc4HR4Ubzljm2F3 ivvfsFwhJp/HsH6oUcDqe5Tq/cHZsfKD52eKHcJeDyPKRwmdxp+kSDBPQvbWAF0UZs5IMXnY5ewg1 Br2/FTYe1R/UNAI8etAjTn3IsZNKr4m/pPwb152edOaXKnrR9hWTEGM8icaCwEtEt3fjRs9fp1mdi bfPSAejc1z/8U/Ql8dZVsjEuzCp1W7LvIL1+/8wc4kPaWTM+PqmxS3eGeqjI/HRnv00+bUBQ1LfQX U8qhAOP9g==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1kI0sA-00015m-6B; Tue, 15 Sep 2020 02:39:10 +0000 Received: from perceval.ideasonboard.com ([213.167.242.64]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1kI0s6-00014i-EA for linux-arm-kernel@lists.infradead.org; Tue, 15 Sep 2020 02:39:07 +0000 Received: from pendragon.ideasonboard.com (62-78-145-57.bb.dnainternet.fi [62.78.145.57]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id A4A49275; Tue, 15 Sep 2020 04:38:57 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1600137538; bh=ceWb6jetlVmK1+PMT2AVlI5YUi1hnO6JDbvNsbyGh1A=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=gi7UkDFo1MmLdvpjAPNCuF8guUHpOsMGcJeUtmsmlHYNPmrlMi547DhAkV7pyXB9n 6t2V4NYVKhn1IbeMI42FK0avPvMj+sjGDtJlvrqOHzxAVFJnj21ImsIYY7AQGFAi8O l9AH6jIGoGXIaQgrnldofe+GRZvzuPKZVv4WTezE= Date: Tue, 15 Sep 2020 05:38:29 +0300 From: Laurent Pinchart To: Hans Verkuil Subject: Re: [PATCH v3 3/3] media: v4l: xilinx: Add Xilinx UHD-SDI Rx Subsystem driver Message-ID: <20200915023829.GE15543@pendragon.ideasonboard.com> References: <20200618053304.14551-1-vishal.sagar@xilinx.com> <20200618053304.14551-4-vishal.sagar@xilinx.com> <50cc4f4b-e788-c5ad-cd6a-b428b96d5377@xs4all.nl> <20200715213315.GF6144@pendragon.ideasonboard.com> <20200819165641.GS6049@pendragon.ideasonboard.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200914_223906_589978_603FDA3C X-CRM114-Status: GOOD ( 47.74 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: "mark.rutland@arm.com" , "devicetree@vger.kernel.org" , Dinesh Kumar , Hyun Kwon , Sandip Kothari , "linux-kernel@vger.kernel.org" , Nicolas Dufresne , "robh+dt@kernel.org" , Michal Simek , "linux-arm-kernel@lists.infradead.org" , "joe@perches.com" , "mchehab@kernel.org" , Vishal Sagar , "linux-media@vger.kernel.org" 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 SGkgSGFucywKCk9uIFRodSwgU2VwIDEwLCAyMDIwIGF0IDEyOjIyOjI4UE0gKzAyMDAsIEhhbnMg VmVya3VpbCB3cm90ZToKPiBPbiAyNi8wOC8yMDIwIDE2OjEwLCBOaWNvbGFzIER1ZnJlc25lIHdy b3RlOgo+ID4gTGUgbWVyY3JlZGkgMTkgYW/Du3QgMjAyMCDDoCAxOTo1NiArMDMwMCwgTGF1cmVu dCBQaW5jaGFydCBhIMOpY3JpdCA6Cj4gPj4gSGkgVmlzaGFsLAo+ID4+Cj4gPj4gKEhhbnMsIHRo ZXJlJ3MgYSBxdWVzdGlvbiBmb3IgeW91IGJlbG93KQo+ID4+Cj4gPj4gT24gV2VkLCBBdWcgMTks IDIwMjAgYXQgMDE6NDc6NDlQTSArMDAwMCwgVmlzaGFsIFNhZ2FyIHdyb3RlOgo+ID4+PiBPbiBU aHVyc2RheSwgSnVseSAxNiwgMjAyMCAzOjAzIEFNIExhdXJlbnQgUGluY2hhcnQgd3JvdGU6Cj4g Pj4+PiBPbiBUaHUsIEp1biAyNSwgMjAyMCBhdCAxMTo0MzowMUFNICswMjAwLCBIYW5zIFZlcmt1 aWwgd3JvdGU6Cj4gPj4+Pj4gT24gMTgvMDYvMjAyMCAwNzozMywgVmlzaGFsIFNhZ2FyIHdyb3Rl Ogo+ID4+Pj4+PiBUaGUgWGlsaW54IFVIRC1TREkgUnggc3Vic3lzdGVtIHNvZnQgSVAgaXMgdXNl ZCB0byBjYXB0dXJlIG5hdGl2ZSBTREkKPiA+Pj4+Pj4gc3RyZWFtcyBmcm9tIFNESSBzb3VyY2Vz IGxpa2UgU0RJIGJyb2FkY2FzdCBlcXVpcG1lbnQgbGlrZSBjYW1lcmFzIGFuZAo+ID4+Pj4+PiBt aXhlcnMuIFRoaXMgYmxvY2sgb3V0cHV0cyBlaXRoZXIgbmF0aXZlIFNESSwgbmF0aXZlIHZpZGVv IG9yCj4gPj4+Pj4+IEFYSTQtU3RyZWFtIGNvbXBsaWFudCBkYXRhIHN0cmVhbSBmb3IgZnVydGhl ciBwcm9jZXNzaW5nLiBQbGVhc2UgcmVmZXIKPiA+Pj4+Pj4gdG8gUEcyOTAgZm9yIGRldGFpbHMu Cj4gPj4+Pj4+Cj4gPj4+Pj4+IFRoZSBkcml2ZXIgaXMgdXNlZCB0byBjb25maWd1cmUgdGhlIElQ IHRvIGFkZCBmcmFtZXIsIHNlYXJjaCBmb3IKPiA+Pj4+Pj4gc3BlY2lmaWMgbW9kZXMsIGdldCB0 aGUgZGV0ZWN0ZWQgbW9kZSwgc3RyZWFtIHBhcmFtZXRlcnMsIGVycm9ycywgZXRjLgo+ID4+Pj4+ PiBJdCBhbHNvIGdlbmVyYXRlcyBldmVudHMgZm9yIHZpZGVvIGxvY2svdW5sb2NrLCBicmlkZ2Ug b3Zlci91bmRlciBmbG93Lgo+ID4+Pj4+Pgo+ID4+Pj4+PiBUaGUgZHJpdmVyIHN1cHBvcnRzIDEw LzEyIGJwYyBZVVYgNDIyIG1lZGlhIGJ1cyBmb3JtYXQgY3VycmVudGx5LiBJdAo+ID4+Pj4+PiBh bHNvIGRlY29kZXMgdGhlIHN0cmVhbSBwYXJhbWV0ZXJzIGJhc2VkIG9uIHRoZSBTVDM1MiBwYWNr ZXQgZW1iZWRkZWQgaW4gdGhlCj4gPj4+Pj4+IHN0cmVhbS4gSW4gY2FzZSB0aGUgU1QzNTIgcGFj a2V0IGlzbid0IHByZXNlbnQgaW4gdGhlIHN0cmVhbSwgdGhlIGNvcmUncwo+ID4+Pj4+PiBkZXRl Y3RlZCBwcm9wZXJ0aWVzIGFyZSB1c2VkIHRvIHNldCBzdHJlYW0gcHJvcGVydGllcy4KPiA+Pj4+ Pj4KPiA+Pj4+Pj4gVGhlIGRyaXZlciBjdXJyZW50bHkgc3VwcG9ydHMgb25seSB0aGUgQVhJNC1T dHJlYW0gSVAgY29uZmlndXJhdGlvbi4KPiA+Pj4+Pj4KPiA+Pj4+Pj4gU2lnbmVkLW9mZi1ieTog VmlzaGFsIFNhZ2FyIDx2aXNoYWwuc2FnYXJAeGlsaW54LmNvbT4KPiA+Pj4+Pj4gLS0tCj4gPj4+ Pj4+IHYzCj4gPj4+Pj4+IC0gZml4ZWQgS0NvbmZpZyB3aXRoIGJldHRlciBkZXNjcmlwdGlvbgo+ ID4+Pj4+PiAtIHJlbW92ZWQgdW5uZWNlc3NhcnkgaGVhZGVyIGZpbGVzCj4gPj4+Pj4+IC0gY29u dmVydGVkIHVwcGVyY2FzZSB0byBsb3dlcmNhc2UgZm9yIGFsbCBoZXggdmFsdWVzCj4gPj4+Pj4+ IC0gbWVyZ2VkIGNvcmUgc3RydWN0IHRvIHN0YXRlIHN0cnVjdAo+ID4+Pj4+PiAtIHJlbW92ZWQg bW9zdCBvbmUgbGluZSBmdW5jdGlvbnMgYW5kIHJlcGxhY2VkIHdpdGggZGlyZWN0IHJlZwo+ID4+ Pj4+PiAgIHJlYWQvd3JpdGUgb3IgbWFjcm9zCj4gPj4+Pj4+IC0gZHQgcHJvcGVydHkgYnBwIHRv IGJwYy4gZGVmYXVsdCAxMC4gbm90IG1hbmRhdG9yeS4KPiA+Pj4+Pj4gLSBmaXhlZCBzdWJzY3Jp YmUgZXZlbnRzLCBsb2dfc3RhdHVzLCBzX3N0cmVhbQo+ID4+Pj4+PiAtIG1lcmdlZCBvdmVyZmxv dy91bmRlcmZsb3cgdG8gb25lIGV2ZW50Cj4gPj4+Pj4+IC0gbW92ZWQgYWxsIGNvbnRyb2xzIHRv IHhpbGlueC1zZGlyeHNzLmgKPiA+Pj4+Pj4gLSBtYXggZXZlbnRzIGZyb20gMTI4IHRvIDgKPiA+ Pj4+Pj4gLSB1c2VkIEZJRUxEX0dFVCgpIGluc3RlYWQgb2YgY3VzdG9tIG1hY3JvCj4gPj4+Pj4+ IC0gdXBkYXRlZCB0aGUgY29udHJvbHMgZG9jdW1lbnRhdGlvbgo+ID4+Pj4+PiAtIGFkZGVkIHNw aW5sb2NrCj4gPj4+Pj4+IC0gcmVtb3ZlZCAzR0IgY29udHJvbCBhbmQgYWRkZWQgbW9kZSB0byBk ZXRlY3QgYml0bWFzawo+ID4+Pj4+PiAtIGZpeGVkIGZvcm1hdCBmb3IgKHdpZHRoLCBoZWlnaHQs IGNvbG9yc3BhY2UsIHhmZXIgZnVuYywgZXRjKQo+ID4+Pj4+PiAtIGFkZGVkIGR2X3RpbWluZ3Nf Y2FwLCBzL2dfZHZfdGltaW5ncwo+ID4+Pj4+PiAtIGZpeGVkIHNldC9nZXRfZm9ybWF0Cj4gPj4+ Pj4+IC0gZml4IHY0bCBjb250cm9sIHJlZ2lzdHJhdGlvbnMKPiA+Pj4+Pj4gLSBmaXggb3JkZXIg b2YgcmVnaXN0cmF0aW9uIC8gZGVyZWdpc3RyYXRpb24gaW4gcHJvYmUoKSByZW1vdmUoKQo+ID4+ Pj4+PiAtIGZpeGVkIG90aGVyIGNvbW1lbnRzIGZyb20gSHl1biwgTGF1cmVudCBhbmQgSGFucwo+ ID4+Pj4+PiAtIHRoaW5ncyB5ZXQgdG8gY2xvc2UKPiA+Pj4+Pj4gICAtIGFkZGluZyBzb3VyY2Ug cG9ydCBmb3IgY29ubmVjdG9yIChMYXVyZW50J3Mgc3VnZ2VzdGlvbikKPiA+Pj4+Pj4gICAtIGFk ZGluZyBuZXcgRklFTEQgdHlwZSBmb3IgVHJhbnNwb3J0IFN0cmVhbSBWNEwyX0ZJRUxEX0FMVEVS TkFURV9QUk9HIChIYW4ncyBzdWdnZXN0aW9uKQo+ID4+Pj4+PiAgIC0gVXBkYXRlIC8gcmVtb3Zl IEVESCBvciBDUkMgcmVsYXRlZCBjb250cm9scwo+ID4+Pj4+Pgo+ID4+Pj4+PiB2Mgo+ID4+Pj4+ PiAtIEFkZGVkIERWIHRpbWluZyBzdXBwb3J0IGJhc2VkIG9uIEhhbnMgVmVya3VpbMWbIGZlZWRi YWNrCj4gPj4+Pj4+IC0gTW9yZSBkb2N1bWVudGF0aW9uIHRvIGN1c3RvbSB2NGwgY29udHJvbHMg YW5kIGV2ZW50cwo+ID4+Pj4+PiAtIEZpeGVkIEh5dW7FmyBjb21tZW50cwo+ID4+Pj4+PiAtIEFk ZGVkIG1hY3JvIGZvciBtYXNraW5nIGFuZCBzaGlmdGluZyBhcyBwZXIgSm9lIFBlcmNoZXMgY29t bWVudHMKPiA+Pj4+Pj4gLSBVcGRhdGVkIHRvIGxhdGVzdCBhcyBwZXIgWGlsaW54IGdpdGh1YiBy ZXBvIGRyaXZlciBsaWtlCj4gPj4+Pj4+ICAgYWRkaW5nIG5ldyBEViB0aW1pbmdzIG5vdCBpbiBt YWlubGluZSB5ZXQgdXB0aWxsIDAzLzIxLzIwCj4gPj4+Pj4+Cj4gPj4+Pj4+ICBkcml2ZXJzL21l ZGlhL3BsYXRmb3JtL3hpbGlueC9LY29uZmlnICAgICAgICAgfCAgIDExICsKPiA+Pj4+Pj4gIGRy aXZlcnMvbWVkaWEvcGxhdGZvcm0veGlsaW54L01ha2VmaWxlICAgICAgICB8ICAgIDEgKwo+ID4+ Pj4+PiAgLi4uL21lZGlhL3BsYXRmb3JtL3hpbGlueC94aWxpbngtc2Rpcnhzcy5jICAgIHwgMjEy MSArKysrKysrKysrKysrKysrKwo+ID4+Pj4+PiAgaW5jbHVkZS91YXBpL2xpbnV4L3Y0bDItY29u dHJvbHMuaCAgICAgICAgICAgIHwgICAgNiArCj4gPj4+Pj4+ICBpbmNsdWRlL3VhcGkvbGludXgv eGlsaW54LXNkaXJ4c3MuaCAgICAgICAgICAgfCAgMjgzICsrKwo+ID4+Pj4+PiAgNSBmaWxlcyBj aGFuZ2VkLCAyNDIyIGluc2VydGlvbnMoKykKPiA+Pj4+Pj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBk cml2ZXJzL21lZGlhL3BsYXRmb3JtL3hpbGlueC94aWxpbngtc2Rpcnhzcy5jCj4gPj4+Pj4+ICBj cmVhdGUgbW9kZSAxMDA2NDQgaW5jbHVkZS91YXBpL2xpbnV4L3hpbGlueC1zZGlyeHNzLmgKPiA+ Pgo+ID4+IFtzbmlwXQo+ID4+Cj4gPj4+Pj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL21lZGlhL3Bs YXRmb3JtL3hpbGlueC94aWxpbngtc2Rpcnhzcy5jIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS94 aWxpbngveGlsaW54LXNkaXJ4c3MuYwo+ID4+Pj4+PiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+ID4+ Pj4+PiBpbmRleCAwMDAwMDAwMDAwMDAuLmUzOWFhYjdjNjU2YQo+ID4+Pj4+PiAtLS0gL2Rldi9u dWxsCj4gPj4+Pj4+ICsrKyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0veGlsaW54L3hpbGlueC1z ZGlyeHNzLmMKPiA+Pj4+Pj4gQEAgLTAsMCArMSwyMTIxIEBACj4gPj4KPiA+PiBbc25pcF0KPiA+ Pgo+ID4+Pj4+PiArCWNhc2UgVjRMMl9DSURfWElMSU5YX1NESVJYX1RTX0lTX0lOVEVSTEFDRUQ6 Cj4gPj4+Pj4+ICsJCWN0cmwtPnZhbCA9IHhzZGlyeHNzLT50c19pc19pbnRlcmxhY2VkOwo+ID4+ Pj4+PiArCQlicmVhazsKPiA+Pj4+Pgo+ID4+Pj4+IEkgYXNzdW1lIHRoaXMgY29udHJvbCB3aWxs IGRpc2FwcGVhciBvbmNlIHlvdSBhZGRlZCBzdXBwb3J0IGZvcgo+ID4+Pj4+IEZJRUxEX0FMVEVS TkFURV9QUk9HPwo+ID4+Pj4KPiA+Pj4+IEknbSBub3Qgc3VyZSBGSUVMRF9BTFRFUk5BVEVfUFJP RyBpcyBhIGdvb2QgaWRlYS4gVGhlIHY0bDJfZmllbGQKPiA+Pj4+IHNwZWNpZmllcyB0b2RheSBo b3cgZnJhbWVzIGFyZSBzcGxpdCBpbnRvIG11bHRpcGxlIGJ1ZmZlcnMuIFRoZXJlJ3MgYW4KPiA+ Pj4+IGltcGxpY2l0IGFzc3VtcHRpb24gdGhhdCBhIGZyYW1lIHNwbGl0IGludG8gdHdvIGJ1ZmZl cnMgaXMgY2FwdHVyZWQgd2l0aAo+ID4+Pj4gaW50ZXJsYWNpbmcuIEluIHRoZSBTREkgY2FzZSwg dGhlIHR3byBjb25jZXB0cyBnZXQgZGVjb3VwbGVkLCBhCj4gPj4+PiBwcm9ncmVzc2l2ZSBmcmFt ZSBjYW4gYmUgdHJhbnNtaXR0ZWQgKGFuZCBjYXB0dXJlZCkgaW4gdHdvIHNlcGFyYXRlCj4gPj4+ PiBwYXJ0cy4gSWYgd2UgYWRkIGEgKl9QUk9HIGZpZWxkLCB3ZSdsbCBuZWVkIHRvIGR1cGxpY2F0 ZSBtb3N0IG9mIHRoZQo+ID4+Pj4gdjRsMl9maWVsZCB2YWx1ZXMgd2l0aCBhIF9QUk9HIHN1ZmZp eCwgYXMgdGhlIHByb2dyZXNzaXZlIGZyYW1lIGNhbiBiZQo+ID4+Pj4gY2FwdHVyZWQgaW4gYWx0 ZXJuYXRlIGJ1ZmZlcnMgb24gYSB2aWRlbyBub2RlLCBidXQgYWxzbyBpbiBzZXBhcmF0ZSBvZGQK PiA+Pj4+IGFuZCBldmVuIGJ1ZmZlcnMgb24gdHdvIHZpZGVvIG5vZGVzLiBUdCB0aGUgaGFyZHdh cmUgbGV2ZWwsIGRhdGEgaXMKPiA+Pj4+IHRyYW5zbWl0dGVkIHdpdGggb2RkIGxpbmVzIG9uIG9u ZSBsaW5rLCBhbmQgZXZlbiBsaW5lcyBvbiBhIHNlY29uZCBsaW5rLgo+ID4+Pj4gVGhlcmUgYXJl IHRoZW4gdHdvIGluc3RhbmNlcyBvZiB0aGlzIElQIGNvcmUsIG9uZSBmb3IgZWFjaCBsaW5rLiBP bmUKPiA+Pj4+IGluc3RhbmNlIHdvdWxkIHJlY2VpdmUgYW5kIHByb2Nlc3MgdGhlIGV2ZW4gbGlu ZXMsIHRoZSBvdGhlciBpbnN0YW5jZQo+ID4+Pj4gdGhlIG9kZCBsaW5lcy4gVGhlIG91dHB1dCBv ZiB0aGUgdHdvIGluc3RhbmNlcyBjYW4gdGhlbiBiZSBjb25uZWN0ZWQgdG8KPiA+Pj4+IHR3byBz ZXBhcmF0ZSBETUEgZW5naW5lcywgb3IgY29tYmluZWQgaW4gdGhlIEZQR0EgZmFicmljLCBkZXBl bmRpbmcgb24KPiA+Pj4+IGhvdyB0aGUgdXNlciBkZXNpZ25zIHRoZSBzeXN0ZW0uCj4gPj4+Cj4g Pj4+IE15IGFwb2xvZ2llcyB0byBnaXZlIGluY29ycmVjdCBpbmZvIHJlZ2FyZGluZyB0aGlzLgo+ ID4+PiBJbiB0aGUgcHJvZ3Jlc3NpdmUgc2VnbWVudGVkIGZyYW1lLCBhIHByb2dyZXNzaXZlIGNh cHR1cmVkIGZyYW1lIGlzIHNlbnQKPiA+Pj4gYWNyb3NzIHRvIHJlY2VpdmVyIG92ZXIgYW4gaW50 ZXJsYWNlZCB0cmFuc3BvcnQuIFRoZSAyIGZpZWxkcyByZWNlaXZlZAo+ID4+PiBhcmUgc2ltaWxh ciB0byBob3cgVjRMMl9GSUVMRF9BTFRFUk5BVEUgaXMgZXhjZXB0IHRoYXQgdGhlIGZpZWxkcyB3 ZXJlbid0Cj4gPj4+IGNhcHR1cmVkIGF0IDIgZGlmZmVyZW50IHRpbWVzLgo+ID4+Cj4gPj4gSSd2 ZSBub3cgcmVhZCBtb3JlIGFib3V0IHByb2dyZXNzaXZlIHNlZ21lbnRlZCBmcmFtZXMsIGFuZCBJ IHdhcyBpbmRlZWQKPiA+PiB3cm9uZyBhYm91dCB0aGUgZmFjdCB0aGF0IHRoZSB0d28gc2VnbWVu dHMgYXJlIHRyYW5zcG9ydGVkIG92ZXIKPiA+PiBkaWZmZXJlbnQgbGlua3MuCj4gPj4KPiA+PiBJ IHN0aWxsIHdvbmRlciwgaG93ZXZlciwgaWYgYSBfUFJPRyBzdWZmaXggaXMgdGhlIGJlc3Qgb3B0 aW9uLiBXb3VsZG4ndAo+ID4+IHdlIG5lZWQgdG8gYWxzbyBhZGQgVjRMMl9GSUVMRF9UT1BfUFJP RywgVjRMMl9GSUVMRF9CT1RUT01fUFJPRywKPiA+PiBWNEwyX0ZJRUxEX1NFUV9UQl9QUk9HIGFu ZCBWNEwyX0ZJRUxEX1NFUV9CVF9QUk9HLCBub3QgbmVjZXNzYXJpbHkgZm9yCj4gPj4gdGhpcyBk cml2ZXIsIGJ1dCBmb3Igb3RoZXIgZGV2aWNlcyB0aGF0IHdvdWxkIHN1cHBvcnQgY2FwdHVyaW5n IHRoZQo+ID4+IG9kZC9ldmVuIHNlZ21lbnRzIG9ubHksIG9yIHN1cHBvcnQgY2FwdHVyaW5nIGJv dGggc2VnbWVudHMgaW4gYSBzaW5nbGUKPiA+PiBidWZmZXIsIG9uZSBhZnRlciB0aGUgb3RoZXIg Pwo+ID4+Cj4gPj4gTWF5YmUgdGhhdCdzIHVuYXZvaWRhYmxlLCBhcyBlbnVtIHY0bDJfZmllbGQg Y29tYmluZXMgYm90aCB0aGUgYnVmZmVyCj4gPj4gbGF5b3V0IGFuZCB0aGUgZmFjdCB0aGF0IHRo ZSBmcmFtZSBpcyBpbnRlcmxhY2VkIG9yIHByb2dyZXNzaXZlLiBJZiB3ZQo+ID4+IGhhZCB0byBy ZWRlc2lnbiBpdCB3ZSBjb3VsZCBkbyBiZXR0ZXIsIGJ1dCBoYXZpbmcgdG8ga2VlcCBiYWNrd2Fy ZAo+ID4+IGNvbXBhdGliaWxpdHksIGR1cGxpY2F0aW5nIG1vc3QgdmFsdWVzIHdpdGggYSBfUFJP RyBzdWZmaXggbWF5IGJlIHRoZQo+ID4+IGJlc3Qgb3B0aW9uLgo+ID4+Cj4gPj4gSGFucywgYW55 IG9waW5pb24gPwo+IAo+IEkgZG9uJ3QgYmVsaWV2ZSB0aGVyZSBpcyBhbnkgbmVlZCB0byBjcmVh dGUgdGhvc2Ugb3RoZXIgVjRMMl9GSUVMRF8gdmFyaWFudHMuCj4gV2l0aCBWNEwyX0ZJRUxEX0FM VEVSTkFURV9QUk9HIGVhY2ggYnVmZmVyIHdpbGwgYmUgc2V0IHRvIFY0TDJfRklFTERfVE9QIChp LmUuCj4gb2RkIGxpbmVzKSBvciBWNEwyX0ZJRUxEX0JPVFRPTSAoaS5lLiBldmVuIGxpbmVzKS4K CldoYXQgaWYgYW4gYXBwbGljYXRpb24gd2FudHMgdG8gY2FwdHVyZSBUT1Agb3IgQk9UVE9NIGZp ZWxkcyBvbmx5IHRob3VnaAo/IFRoZSBETUEgZW5naW5lIHdvdWxkIG5lZWQgdG8gYmUgY29uZmln dXJlZCB3aXRoIGVpdGhlcgpWNEwyX0ZJRUxEX1RPUF9QUk9HIG9yIFY0TDJfRklFTERfQk9UVE9N X1BST0csIHdvdWxkbid0IGl0ID8gT3Igc2hvdWxkCnRoZSBfUFJPRyBpbmZvcm1hdGlvbiBiZSBy ZXBvcnRlZCBieSB0aGlzIHN1YmRldiBvbmx5LCBhbmQgbm90CnByb3BhZ2F0ZWQgdGhyb3VnaCB0 aGUgcGlwZWxpbmUgPwoKPiBUaGVyZSBpcyBub3RoaW5nIGVsc2UgeW91IG5lZWQgaGVyZS4KPiAK PiBBIFY0TDJfRklFTERfU0VRX1RCX1BST0cgbWlnaHQgYmUgbmVlZGVkIGlmIHdlIGdldCBIVyB0 aGF0IGRvZXMgc29tZXRoaW5nCj4gc28gc3RyYW5nZS4KPiAKPiA+IENhbid0IHlvdXIgcmVjZWl2 ZXIgc3RvcmUgdGhlc2UgdHdvIGZyYWdtZW50IGRpcmVjdGx5IGludG8gYQo+ID4gcHJvZ3Jlc3Np dmUgYnVmZmVyIGluc3RlYWQgb2YgbGVha2luZyB0aGlzIEhXIHNwZWNpZmljIHRoaW5nIGludG8g dUFQSQo+ID4gPyBBbGwgeW91J2QgbmVlZCBpcyBzdXBwb3J0IGZvciBzdHJpZGUgKGJ5dGVzcGVy bGluZSkgYXQgdGhlIEhXCj4gPiB3cml0ZWJhY2sgbGV2ZWwsIGFuZCB0aGVuIHlvdSBjYW4gaGlk ZSB0aGlzIGNvbXBsZXhpY3V0eSB0byB1c2Vyc3BhY2UKPiA+IGJ5IGZpbGxpbmcgdGhlIHRvcC9i b3R0b20gbGluZSBvbmx5LiBZb3Ugc2ltcGx5IG11bHRpcGx5IHRoZSBzdHJpZGUgYnkKPiA+IHR3 byBpbiB0aGlzIGNvbnRleHQuCj4gCj4gVmlzaGFsLCB0aGlzIGlzIGEgZ29vZCBxdWVzdGlvbiBm cm9tIE5pY29sYXMuCj4gCj4gQW4gYWx0ZXJuYXRpdmUgc29sdXRpb24gbWlnaHQgYmUgdG8gRE1B IHRoZSBvZGQgYW5kIGV2ZW4gbGluZXMgdG8gdGhlCj4gc2FtZSBidWZmZXIsIGJ1dCBjb25zZWN1 dGl2ZS4gSS5lLiwgaW5zdGVhZCBvZiBoYXZpbmcgdG8gY3JlYXRlIGEKPiBWNEwyX0ZJRUxEX0FM VEVSTkFURV9QUk9HLCB5b3UnZCBjcmVhdGUgYSBWNEwyX0ZJRUxEX1NFUV9UQl9QUk9HLCB3aGlj aAo+IGlzIGlkZW50aWNhbCB0byBWNEwyX0ZJRUxEX1NFUV9UQiwgZXhjZXB0IHRoYXQgaXQgaXMg Zm9yIGEgcHJvZ3Jlc3NpdmUKPiBmcmFtZS4KPiAKPiBJZiB5b3UgY2FuIGF2b2lkIFY0TDJfRklF TERfQUxURVJOQVRFX1BST0cgc29tZWhvdyBhbmQganVzdCByZXR1cm4gYQo+IHNpbmdsZSBidWZm ZXIgcGVyIGZyYW1lLCB0aGVuIHRoYXQgd291bGQgYmUgbXVjaCBiZXR0ZXIuIE9uZSBmaWVsZCBw ZXIKPiBidWZmZXIgaXMgYSBiaWcgcGFpbiBmb3IgdXNlcnNwYWNlLgoKVGhhdCdzIG91dCBvZiBj b250cm9sIG9mIHRoaXMgZHJpdmVyIHRob3VnaCwgaXQgZGVwZW5kcyBvbiB0aGUgcmVzdCBvZgp0 aGUgcGlwZWxpbmUuIFRoZSBTREkgUlggc3ViZGV2IHByb2R1Y2VzIGFsdGVybmF0ZSBmcmFtZXMs IGl0J3MgdXAgdG8KdGhlIHJlc3Qgb2YgdGhlIEZQR0EgdG8gZGVjaWRlIGhvdyB0byBzdG9yZSB0 aGF0IGluIG1lbW9yeS4KCj4gPj4+IFNvIEkgd2lsbCBhZGQgdGhlIFY0TDJfRklFTERfQUxURVJO QVRFX1BST0cgaW4gbmV4dCBwYXRjaCB2ZXJzaW9uLgo+ID4+Cj4gPj4gW3NuaXBdCgotLSAKUmVn YXJkcywKCkxhdXJlbnQgUGluY2hhcnQKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fCmxpbnV4LWFybS1rZXJuZWwgbWFpbGluZyBsaXN0CmxpbnV4LWFybS1r ZXJuZWxAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWls bWFuL2xpc3RpbmZvL2xpbnV4LWFybS1rZXJuZWwK