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 84DFFC77B7A for ; Wed, 24 May 2023 09:28:24 +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=5zD4/dApRYlLrgZtUV/MjpgAA1otIJYFZIoBG/WddZU=; b=IdAb2rjkIq43Kh +oaKXRfmov9kStbHJ1lHFp29c3OxRHxkbVL9iskA6PvuFkxyh4rd23eGvoDfpvcW72v9eVmNErZy/ tJFfuw3/LEF5OQTl1CRg1yPG3mMwRyuxN+nmQwgiGxwcGu/T0s5ukf9Rd5Map5xN115S8xtawiNST 2y/E/MEILvrf41Kval8Aa1Um3jrZNsautQdIvPsps+5X6jrfZlTveouPHHRpHmbJ4Vzw4xt40ri8g UxYQRsLRbdn1uQIpMW6oHiqEGIMnhkkXjTvBo2V3JwCmuZgRjq0cKDfgMb+zMvZ0sVjRtuDMfjsYk DkY/vDfQ5d/csE/srjHA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1q1kml-00CxZN-1T; Wed, 24 May 2023 09:27:59 +0000 Received: from mx.sberdevices.ru ([45.89.227.171]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1q1kmh-00CxY3-0r; Wed, 24 May 2023 09:27:57 +0000 Received: from s-lin-edge02.sberdevices.ru (localhost [127.0.0.1]) by mx.sberdevices.ru (Postfix) with ESMTP id 771EA5FD41; Wed, 24 May 2023 12:27:51 +0300 (MSK) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sberdevices.ru; s=mail; t=1684920471; bh=EfIel68BfcMlk4RH9fou0d53InM6tvfEdFTRJf8LhVY=; h=Date:From:To:Subject:Message-ID:MIME-Version:Content-Type; b=h/nzMME2gPZvUYWTE1gtwmIunx70knYY/bSk5aLhD3yJ3AfRlG/ele4u4CoqPz7Bi 4LcjfAqg7bzivB5VpKllWnA17Ny8H4GU0Z1cXCAmE6uESh0DRwFP3QHNJdO45w/57J 7DXBPb+/XE3cYHC1kyVZSGBap7+g2QLs2KoOzBIrAKLLU2TOQ2CIu/hPsLHwq+Ojig e7IUZOFqH12o/mY1oxyczkJEG1CBc5D+w9U60i+R2u6JQC+UpvRjBknB2lkG4ZL+Y4 GaWoxb0SFk2nR9pi8i+vQE4SPJji4BVDFbuhNkQ0YtG8yOyP7grGuBuFqsM7l1H21I 9jQSDWmM4L6uQ== Received: from S-MS-EXCH01.sberdevices.ru (S-MS-EXCH01.sberdevices.ru [172.16.1.4]) by mx.sberdevices.ru (Postfix) with ESMTP; Wed, 24 May 2023 12:27:50 +0300 (MSK) Date: Wed, 24 May 2023 12:27:50 +0300 From: Dmitry Rokosov To: Heiner Kallweit CC: Martin Blumenstingl , , , , , , , , , , , , , , , Subject: Re: [PATCH v14 6/6] clk: meson: a1: add Amlogic A1 Peripherals clock controller driver Message-ID: <20230524092750.ldm362chnpkwkcj4@CAB-WSD-L081021> References: <20230512140630.qd33rwzaalmadpmk@CAB-WSD-L081021> <20230517103456.p3sjxzbepvg7cr2r@CAB-WSD-L081021> <573d96df-7b08-4fa2-668b-58ff674a314e@gmail.com> <20230522134425.pc5fhojf53v6q2jz@CAB-WSD-L081021> <20230523102318.kf3o5rtmqdy2patg@CAB-WSD-L081021> <2c1f7878-e58c-258f-283d-38d08ebaa07a@gmail.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <2c1f7878-e58c-258f-283d-38d08ebaa07a@gmail.com> User-Agent: NeoMutt/20220415 X-Originating-IP: [172.16.1.6] X-ClientProxiedBy: S-MS-EXCH02.sberdevices.ru (172.16.1.5) To S-MS-EXCH01.sberdevices.ru (172.16.1.4) X-KSMG-Rule-ID: 4 X-KSMG-Message-Action: clean X-KSMG-AntiSpam-Status: not scanned, disabled by settings X-KSMG-AntiSpam-Interceptor-Info: not scanned X-KSMG-AntiPhishing: not scanned, disabled by settings X-KSMG-AntiVirus: Kaspersky Secure Mail Gateway, version 1.1.2.30, bases: 2023/05/24 06:36:00 #21405912 X-KSMG-AntiVirus-Status: Clean, skipped X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230524_022755_652685_0D13A773 X-CRM114-Status: GOOD ( 52.93 ) 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 T24gVHVlLCBNYXkgMjMsIDIwMjMgYXQgMDk6MTM6NDZQTSArMDIwMCwgSGVpbmVyIEthbGx3ZWl0 IHdyb3RlOgo+IE9uIDIzLjA1LjIwMjMgMTI6MjMsIERtaXRyeSBSb2tvc292IHdyb3RlOgo+ID4g SGVpbmVyLAo+ID4gCj4gPiBPbiBNb24sIE1heSAyMiwgMjAyMyBhdCAxMDozNTo1OVBNICswMjAw LCBIZWluZXIgS2FsbHdlaXQgd3JvdGU6Cj4gPj4gT24gMjIuMDUuMjAyMyAxNTo0NCwgRG1pdHJ5 IFJva29zb3Ygd3JvdGU6Cj4gPj4+IEhlaW5lciwKPiA+Pj4KPiA+Pj4gT24gRnJpLCBNYXkgMTks IDIwMjMgYXQgMDY6MTA6NTBQTSArMDIwMCwgSGVpbmVyIEthbGx3ZWl0IHdyb3RlOgo+ID4+Pj4g T24gMTguMDUuMjAyMyAyMjowNCwgTWFydGluIEJsdW1lbnN0aW5nbCB3cm90ZToKPiA+Pj4+PiBI aSBEbWl0cnksCj4gPj4+Pj4KPiA+Pj4+PiBPbiBXZWQsIE1heSAxNywgMjAyMyBhdCAxMjozNOKA r1BNIERtaXRyeSBSb2tvc292Cj4gPj4+Pj4gPGRkcm9rb3NvdkBzYmVyZGV2aWNlcy5ydT4gd3Jv dGU6Cj4gPj4+Pj4gWy4uLl0KPiA+Pj4+Pj4+PiBBZGRpdGlvbmFsbHksIHRoZSBDQ0YgZGV0ZXJt aW5lcyB0aGUgYmVzdCBhbmNlc3RvciBiYXNlZCBvbiBob3cgY2xvc2UKPiA+Pj4+Pj4+PiBpdHMg cmF0ZSBpcyB0byB0aGUgZ2l2ZW4gb25lLCBiYXNlZCBvbiBhcml0aG1ldGljIGNhbGN1bGF0aW9u cy4gSG93ZXZlciwKPiA+Pj4+Pj4+PiB3ZSBoYXZlIGluZGVwZW5kZW50IGtub3dsZWRnZSB0aGF0 IGEgY2VydGFpbiBjbG9jayB3b3VsZCBiZSBiZXR0ZXIsIHdpdGgKPiA+Pj4+Pj4+PiBsZXNzIGpp dHRlciBhbmQgZmV3ZXIgaW50ZXJtZWRpYXJpZXMsIHdoaWNoIHdpbGwgbGlrZWx5IGltcHJvdmUg ZW5lcmd5Cj4gPj4+Pj4+Pj4gZWZmaWNpZW5jeS4gU2FkbHksIHRoZSBDQ0YgY2Fubm90IHRha2Ug dGhpcyBpbnRvIGFjY291bnQuCj4gPj4+Pj4+PiBJIGFncmVlIHRoYXQgdGhlIGltcGxlbWVudGF0 aW9uIGluIENDRiBpcyBmYWlybHkgc2ltcGxlLiBUaGVyZSdzIHdheXMKPiA+Pj4+Pj4+IHRvIHRy aWNrIGl0IHRob3VnaDogSUlSQyBpZiB0aGVyZSBhcmUgbXVsdGlwbGUgZXF1YWxseSBzdWl0YWJs ZSBjbG9ja3MKPiA+Pj4+Pj4+IGl0IHBpY2tzIHRoZSBmaXJzdCBvbmUuIEZvciBtZSBhbGwgb2Yg dGhpcyBoYXMgd29ya2VkIHNvIGZhciB3aGljaCBpcwo+ID4+Pj4+Pj4gd2hhdCBtYWtlcyBtZSBj dXJpb3VzIGluIHRoaXMgY2FzZSAobm90IHNheWluZyB0aGF0IGFueXRoaW5nIGlzIHdyb25nCj4g Pj4+Pj4+PiB3aXRoIHlvdXIgYXBwcm9hY2gpLgo+ID4+Pj4+Pj4KPiA+Pj4+Pj4+IERvIHlvdSBo YXZlIGEgKHJlYWwgd29ybGQpIGV4YW1wbGUgd2hlcmUgdGhlIFJUQyBjbG9jayBzaG91bGQgYmUK PiA+Pj4+Pj4+IHByZWZlcnJlZCBvdmVyIGFub3RoZXIgY2xvY2s/Cj4gPj4+Pj4+Pgo+ID4+Pj4+ Pgo+ID4+Pj4+PiBZZXMsIGEgcmVhbC1saWZlIGV4YW1wbGUgaXMgdGhlIG5lZWQgZm9yIGEgMzJL aHogY2xvY2sgZm9yIGFuIGV4dGVybmFsCj4gPj4+Pj4+IHdpZmkgY2hpcC4gVGhlcmUgaXMgb25l IG9wdGlvbiB0byBwcm92aWRlIHRoaXMgY2xvY2sgd2l0aCBoaWdoCj4gPj4+Pj4+IHByZWNpc2lv biwgd2hpY2ggaXMgUlRDICsgR0VOQ0xLLgo+ID4+Pj4+Pgo+ID4+Pj4+Pj4gSSdtIHRoaW5raW5n IGFib3V0IHRoZSBmb2xsb3dpbmcgc2NlbmFyaW8uCj4gPj4+Pj4+PiBQV00gcGFyZW50czoKPiA+ Pj4+Pj4+IC0gWFRBTDogMjRNSHoKPiA+Pj4+Pj4+IC0gc3lzOiBub3Qgc3VyZSAtIGxldCdzIHNh eSAxNjYuNjdNSHoKPiA+Pj4+Pj4+IC0gUlRDOiAzMmtIego+ID4+Pj4+Pj4KPiA+Pj4+Pj4+IFRo ZW4gYWZ0ZXIgdGhhdCB0aGVyZSdzIGEgZGl2aWRlciBhbmQgYSBnYXRlLgo+ID4+Pj4+Pj4KPiA+ Pj4+Pj4+IExldCdzIHNheSB0aGUgUFdNIGNvbnRyb2xsZXIgbmVlZHMgYSAxTUh6IGNsb2NrOiBp dCBjYW4gdGFrZSB0aGF0IGZyb20KPiA+Pj4+Pj4+IFhUQUwgb3Igc3lzLiBTaW5jZSBYVEFMIGlz IGV2ZW5seSBkaXZpc2libGUgdG8gMU1IeiBDQ0Ygd2lsbCBwaWNrIHRoYXQKPiA+Pj4+Pj4+IGFu ZCB1c2UgdGhlIGRpdmlkZXIuCj4gPj4+Pj4+PiBCdXQgbGV0J3Mgc2F5IHRoZSBQV00gY29udHJv bGxlciBuZWVkcyBhIDMya0h6IGNsb2NrOiBDQ0Ygd291bGQKPiA+Pj4+Pj4+IGF1dG9tYXRpY2Fs bHkgcGljayB0aGUgUlRDIGNsb2NrLgo+ID4+Pj4+Pj4gU28gaXMgeW91ciBpbXBsZW1lbnRhdGlv biB0aGVyZSB0byBjb3ZlciBsZXQncyBzYXkgMWtIeiB3aGVyZQo+ID4+Pj4+Pj4gbWF0aGVtYXRp Y2FsbHkgMjRNSHogY2FuIGJlIGRpdmlkZWQgZXZlbmx5IHRvIDFrSHogKGFuZCB0aHVzIHNob3Vs ZAo+ID4+Pj4+Pj4gbm90IHJlc3VsdCBpbiBhbnkgaml0dGVyKSBidXQgUlRDIGdpdmVzIGJldHRl ciBwcmVjaXNpb24gaW4gdGhlIHJlYWwKPiA+Pj4+Pj4+IHdvcmxkIChldmVuIHRob3VnaCBpdCdz IG9mZiBieSAyNEh6KT8KPiA+Pj4+Pj4+Cj4gPj4+Pj4+Cj4gPj4+Pj4+IEkgZG9uJ3QgdGhpbmsg c28uIFRoZSBoaWdoZXN0IHByZWNpc2lvbiB0aGF0IFJUQyBjYW4gcHJvdmlkZSBpcyBmcm9tIGEK PiA+Pj4+Pj4gMzJLSHogcmF0ZSBvbmx5LiBIb3dldmVyLCBJIGJlbGlldmUgdGhhdCBhIDFrSHog ZnJlcXVlbmN5IGNhbiBhbHNvIGJlCj4gPj4+Pj4+IGFjaGlldmVkIGJ5IHVzaW5nIHh0YWwgMjRN SHogd2l0aCBhIGRpdmlkZXIsIHdoaWNoIGNhbiBwcm92aWRlIGhpZ2gKPiA+Pj4+Pj4gcHJlY2lz aW9uIGFzIHdlbGwuCj4gPj4+Pj4gVGhhbmsgeW91IGFnYWluIGZvciB0aGUgZ3JlYXQgZGlzY3Vz c2lvbiBvbiBJUkMgdG9kYXkuCj4gPj4+Pj4gSGVyZSdzIG15IHNob3J0IHN1bW1hcnkgc28gSSBk b24ndCBmb3JnZXQgYmVmb3JlIHlvdSdsbCBmb2xsb3cgdXAgb24gdGhpcy4KPiA+Pj4+Pgo+ID4+ Pj4+IEluIGdlbmVyYWwgdGhlcmUncyB0d28ga25vd24gY2FzZXMgd2hlcmUgdGhlIFJUQyBjbG9j ayBuZWVkcyB0byBiZSB1c2VkOgo+ID4+Pj4+IGEpIFdoZW4gdXNpbmcgdGhlIEdFTkNMSyBvdXRw dXQgb2YgdGhlIFNvQyB0byBvdXRwdXQgdGhlIDMya0h6IFJUQwo+ID4+Pj4+IGNsb2NrIGFuZCBj b25uZWN0IHRoYXQgdG8gYW4gU0RJTyBXaUZpIGNoaXAgY2xvY2sgaW5wdXQgKHRoaXMgc2VlbXMK PiA+Pj4+PiB1c2VmdWwgaW4gbXkgdW5kZXJzdGFuZGluZyBiZWNhdXNlIHRoZSBSVEMgY2xvY2sg cHJvdmlkZXMgaGlnaAo+ID4+Pj4+IHByZWNpc2lvbikKPiA+Pj4+PiBiKSBXaGVuIHVzaW5nIHRo ZSBQV00gY29udHJvbGxlciB0byBvdXRwdXQgYSAzMmtIeiBjbG9jayBzaWduYWwuIEluCj4gPj4+ Pj4gdGhpcyBjYXNlIG15IHVuZGVyc3RhbmRpbmcgaXMgdGhhdCB1c2luZyB0aGUgUlRDIGNsb2Nr IGFzIGlucHV0IHRvIHRoZQo+ID4+Pj4+IFBXTSBjb250cm9sbGVyIHJlc3VsdHMgaW4gdGhlIGJl c3QgcG9zc2libGUgc2lnbmFsCj4gPj4+Pj4KPiA+Pj4+PiBUaGUgc2Vjb25kIGNhc2Ugd29uJ3Qg YmUgc3VwcG9ydGVkIHdpdGggSGVpbmVyJ3MgcGF0Y2hlcyBbMF0gdGhhdCB1c2UKPiA+Pj4+PiBD Q0YgKGNvbW1vbiBjbG9jayBmcmFtZXdvcmspIGluIHRoZSBQV00gY29udHJvbGxlciBkcml2ZXIu Cj4gPj4+Pj4gSW4gdGhpcyBzZXJpZXMgdGhlIHBhcmVudCBjbG9jayBpcyBjYWxjdWxhdGVkIHVz aW5nOgo+ID4+Pj4+ICAgZnJlcSA9IGRpdjY0X3U2NChOU0VDX1BFUl9TRUMgKiAodTY0KTB4ZmZm ZiwgcGVyaW9kKTsKPiA+Pj4+Pgo+ID4+Pj4+IEEgMzJrSHogY2xvY2sgbWVhbnMgYSBQV00gcGVy aW9kIG9mIDMwNTE4bnMuIFNvIHdpdGggdGhlIGFib3ZlCj4gPj4+Pgo+ID4+Pj4gVG8gYmUgcHJl Y2lzZTogMzA1MTcsNTc4MTI1bnMKPiA+Pj4+IFdoYXQgbWVhbnMgdGhhdCB0aGUgUFdNIGZyYW1l d29yayBjYW4ndCBzYXkgIkkgd2FudCAzMjc2OEh6IiwKPiA+Pj4+IGJ1dCBqdXN0ICJJIHdhbnQg c29tZXRoaW5nIGJlaW5nIHZlcnkgY2xvc2UgdG8gMzI3NjhIeiIuCj4gPj4+PiBTbyB3aGF0IHlv dSBuZWVkIGlzIHNvbWUgc2ltcGxlIGhldXJpc3RpYyB0byBpbnRlcnByZXQgdGhlCj4gPj4+PiBQ V00gcmVxdWVzdCAtPiAiUFdNIHJlcXVlc3RzIDMwNTE4bnMsIGJ1dCBzdXBwb3NlZGx5IGl0IHdh bnRzCj4gPj4+PiAzMjc2OEh6Igo+ID4+Pj4KPiA+Pj4+IE5TRUNfUEVSX1NFQyAvIDMwNTE4ID0g MzI3NjcgKHJvdW5kZWQgZG93biBmcm9tIDMyNzY3LDU0NykKPiA+Pj4+IGNsa19yb3VuZF9yYXRl KGNoYW5uZWwtPmNsaywgMzI3NjcpIHdvdWxkIHJldHVybiAwIChJICp0aGluayopLAo+ID4+Pj4g YmVjYXVzZSBpdCB0cmllcyB0byBmaW5kIHRoZSBuZXh0IGxvd2VyIGNsb2NrLgo+ID4+Pj4KPiA+ Pj4+IFRoZSBTb0MgZmFtaWxpZXMgSSdtIGZhbWlsaWFyIHdpdGggaGF2ZSBmY2xraW4yIGFzIFBX TSBwYXJlbnQuCj4gPj4+PiBUaGF0J3MgMSBHSHogaW4gbXkgY2FzZSwgd2hhdCByZXN1bHRzIGlu IGEgZnJlcXVlbmN5IG9mIDMyLjc2Nyw1NDdIego+ID4+Pj4gZm9yIHBlcmlvZCA9IDMwNTE4bi4K PiA+Pj4+IFdoYXQgeW91J3JlIHNheWluZyBpcyB0aGF0IG5ld2VyIGdlbmVyYXRpb25zIGRvbid0 IGhhdmUgUFdNIHBhcmVudHMKPiA+Pj4+PiAyNE1IeiBhbnkgbG9uZ2VyPwo+ID4+Pgo+ID4+PiBO bywgb2YgY291cnNlIG5vdC4gRm9yIGV4YW1wbGUsIGEgZml4ZWQgUExMICh3aXRoIGFsbCBmY2xr X2RpdlgKPiA+Pj4gc2V0dGluZ3MpIGhhcyByYXRlcyBoaWdoZXIgdGhhbiAyNE1Iei4gSG93ZXZl ciwgd2UgbmVlZCB0byBjb25zaWRlciB0aGUKPiA+Pj4gJ2hlYXZ5JyBiYWNrZ3JvdW5kIG9mIHN1 Y2ggUFdNLgo+ID4+Pgo+ID4+PiBIb3dldmVyLCB3ZSBoYXZlIGEgImxpZ2h0d2VpZ2h0IiBjbGtp biAoc3BlY2lhbCBydGMzMmspIHdpdGggYSByYXRlIG9mCj4gPj4+IDMya0h6IHRoYXQgd2UgY291 bGQgcG90ZW50aWFsbHkgdXNlIGFzIGFuIGlucHV0IHRvIHByb2R1Y2UgYSAzMmtIego+ID4+PiBv dXRwdXQgb24gdGhlIFBXTSBsaW5lcy4gSSBkb24ndCBzZWUgYW55IHJlYXNvbiB3aHkgd2Ugc2hv dWxkIG5vdAo+ID4+PiBzdXBwb3J0IHN1Y2ggc3BlY2lhbCBjYXNlcy4KPiA+Pj4KPiA+Pgo+ID4+ IFR3byBtb3JlIHRoaW5ncyB0byBjb25zaWRlcjoKPiA+PiAxLiBXaGVuIHdhbnRpbmcgYSAzMmtI eiAod2VsbCwgMzI3NjhIeikgb3V0cHV0IHdpdGggYSA1MCUgZHV0eSBjeWNsZSwKPiA+PiAgICB0 aGVuIHdlIG5lZWQgaGk9MCBhbmQgbG89MCB3aXRoIGEgNjRrSHogaW5wdXQgY2xvY2suCj4gPj4g ICAgU2VlIHBvaW50IDIgZm9yIGFuIGV4cGxhbmF0aW9uIG9mIHdoeSAwIGFuZCBub3QgMS4KPiA+ PiAgICBNZWFucyB3ZSBjb3VsZG4ndCB1c2UgdGhlIFJUQyBpbnB1dCBjbG9jay4gRGlkIHlvdSBj b25zaWRlciB0aGlzPwo+ID4+ICAgIE9yIGRvIEkgbWlzcyBzb21ldGhpbmc/Cj4gPiAKPiA+IE5v cGUsIHRoYXQncyBteSBmYXVsdC4gVXNpbmcgYSAzMmtIeiBiYXNlIGNsb2NrIGZvciByYXRlcyBv ZiAxNmtIeiBvcgo+ID4gbG93ZXIgdGhhdCBjYW4gYmUgZGl2aWRlZCBldmVubHkgaXMgYSBnb29k IGNob2ljZS4gSG93ZXZlciwgYXMgeW91Cj4gPiBtZW50aW9uZWQgaW4gcG9pbnQgMiwgdGhlIHBy b2JsZW0gd2l0aCBhdXRvaW5jcmVtZW50cyBzaG91bGQgYmUgZml4ZWQKPiA+IGZpcnN0Lgo+ID4g Cj4gPj4gMi4gU2VlbXMgdGhlIFBXTSBibG9jayBpbnRlcm5hbGx5IGluY3JlbWVudHMgaGkgYW5k IGxvLCBleGNlcHQgdGhlCj4gPj4gICAgY29uc3RhbnRfZW4gYml0IGlzIHNldCBvbiBuZXdlciBQ V00gYmxvY2sgdmVyc2lvbnMuCj4gPj4gICAgRm9yIGJpZ2dlciBjbnQgdmFsdWVzIHRoZSBpbXBh Y3QgaXMgbmVnbGlnaWJsZSwgYnV0IGZvciB2ZXJ5IHNtYWxsCj4gPj4gICAgdmFsdWVzIGl0J3Mg c29tZXRoaW5nIHdlIGhhdmUgdG8gY29uc2lkZXIuCj4gPj4gICAgVGhpcyB3YXMgb25lIGFkZGl0 aW9uYWwgbW90aXZhdGlvbiBmb3IgbWUgdG8gY2hvb3NlIGFuIGlucHV0Cj4gPj4gICAgZnJlcXVl bmN5IHRoYXQgY3JlYXRlcyBiaWcgY250IHZhbHVlcy4KPiA+IAo+ID4gR2VvcmdlIGhhcyBhIHBh dGNoc2V0IGZvciB0aGlzIGFuZCBoZSB3aWxsIHNlbmQgaXQgdmVyeSBzb29uIGFzIGhlCj4gPiBt ZW50aW9uZWQgaW4gYW5vdGhlciBlbWFpbC4gTGV0J3MgYXNzdW1lIHRoZSBjb2RlIGlzIGFscmVh ZHkgZml4ZWQgYW5kCj4gPiBubyBsb25nZXIgaGFzIGFueSBpc3N1ZXMuIEluIG15IG9waW5pb24s IGlmIHdlIHdhbnQgdG8gZ2VuZXJhdGUgcmF0ZXMgb2YKPiA+IDE2a0h6LCA4a0h6LCA0a0h6LCBl dGMuLCB0aGUgYmVzdCBwYXJlbnQgY2xvY2sgdG8gdXNlIGlzIGEgMzJrSHogUlRDLgo+ID4gSGln aC1yYXRlIGNsb2NrcyBtYXkgbm90IGRpdmlkZSBldmVubHkgYW5kIG1heSBub3QgZ2VuZXJhdGUg YW4gYWNjdXJhdGUKPiA+IG91dHB1dCByYXRlLiBXaGF0IGRvIHlvdSB0aGluayBhYm91dCBpdD8K PiA+IAo+IFdpdGggdGhlIGxvZ2ljIGluIHRoZSBDQ0YgY29udmVyc2lvbiBwYXRjaCBzZXQgZm9y IHRoZXNlIHJhdGVzIHRoZSAyNE1Iego+IHh0YWwgbXV4IGlucHV0IHdvdWxkIGJlIHVzZWQsIGNy ZWF0aW5nIGV4YWN0bHkgdGhlIHJlcXVlc3RlZCByYXRlcy4KPiBTbyBJIHNlZSBubyBkaWZmZXJl bmNlIGhlcmUuIFdoYXQgSSBkb24ndCBrbm93IGlzIHdoZXRoZXIgcG93ZXIKPiBjb25zdW1wdGlv biBtYXkgYmUgaGlnaGVyIHdpdGggYSBoaWdoZXIgaW5wdXQgcmF0ZSwgb3Igd2hldGhlciBxdWFs aXR5Cj4gb2YgdGhlIG11eCBwYXJlbnQgY2xvY2tzIGRpZmZlcnMuCj4gCgpXZSBjb25kdWN0ZWQg c29tZSBleHBlcmltZW50cyBvbiBvdXIgZW5kIGFuZCB0cmllZCB1c2luZyBkaWZmZXJlbnQKY2xv Y2tzIGFzIGlucHV0cyBmb3IgUFdNIHRvIGdlbmVyYXRlIHNtYWxsIHJhdGVzIGxpa2UgMTZrSHou IFRoZSBjbG9jawp3aXRoIHRoZSBsZWFzdCBhbW91bnQgb2Ygaml0dGVyIGZvciB0aGUgcmVzdWx0 aW5nIG91dHB1dCB3YXMgdGhlIFJUQwpwYXJlbnQgYXQgMzJrSHosIHdoaWxlIHVzaW5nIHRoZSA2 NE1IeiAoc3lzdGVtIGNsb2NrKSBvciB0aGUgMjRNSHogKHh0YWwKY2xvY2spIHJlc3VsdGVkIGlu IG1vcmUgaml0dGVyIHZhbHVlcyBidXQgd2FzIHN0aWxsIGFjY2VwdGFibGUuCgpBcyBmb3IgcG93 ZXIgY29uc3VtcHRpb24sIEknbSBub3Qga25vd2xlZGdlYWJsZSBhYm91dCBpdDsgaXQncyBzb21l dGhpbmcKb25seSBBbWxvbGdpYyBoYXMgYWxsIHRoZSBzZWNyZXRzIHRvLiBIb3dldmVyLCBJIHBy ZXN1bWUgdGhlcmUgd2FzIGEKc3Ryb25nIHJlYXNvbiB0byBjcmVhdGUgYSBzZXBhcmF0ZSBSVEMg Y2xvY2sgd2l0aCBnb29kIDMya0h6IHF1YWxpdHkuCgo+ID4+Cj4gPj4+Pgo+ID4+Pj4KPiA+Pj4+ PiBjYWxjdWxhdGlvbiB0aGUgUFdNIGRyaXZlciBpcyBhc2tpbmcgZm9yIGEgY2xvY2sgcmF0ZSBv ZiA+PTJHSHouCj4gPj4+Pj4gV2UgY29uY2x1ZGVkIHRoYXQgbGV0dGluZyB0aGUgY29tbW9uIGNs b2NrIGZyYW1ld29yayBjaG9vc2UgdGhlIGJlc3QKPiA+Pj4+PiBwb3NzaWJsZSBwYXJlbnQgKG1l YW5pbmc6IHJlbW92aW5nIENMS19TRVRfUkFURV9OT19SRVBBUkVOVCBoZXJlKSBjYW4KPiA+Pj4+ PiBiZSBhIHdheSBmb3J3YXJkLgo+ID4+Pj4+IEJ1dCB0aGlzIG1lYW5zIHRoYXQgdGhlIFBXTSBj b250cm9sbGVyIGRyaXZlciBtdXN0IHRyeSB0byBmaW5kIHRoZQo+ID4+Pj4+IGJlc3QgcG9zc2li bGUgcGFyZW50IHNvbWVob3cuIFRoZSBlYXNpZXN0IHdheSB3ZSBjYW1lIHVwIHdpdGgKPiA+Pj4+ PiAocHNldWRvLWNvZGUpOgo+ID4+Pj4+ICAgZnJlcSA9IE5TRUNfUEVSX1NFQyAvIHBlcmlvZDsK PiA+Pj4+PiAgIGZpbl9mcmVxID0gY2xrX3JvdW5kX3JhdGUoY2hhbm5lbC0+Y2xrLCBmcmVxKTsK PiA+Pj4+PiAgIGlmIChmaW5fZnJlcSAhPSBmcmVxKSB7Cj4gPj4+Pj4gICAgIGZyZXEgPSBkaXY2 NF91NjQoTlNFQ19QRVJfU0VDICogKHU2NCkweGZmZmYsIHBlcmlvZCk7Cj4gPj4+Pj4gICAgIGZp bl9mcmVxID0gY2xrX3JvdW5kX3JhdGUoY2hhbm5lbC0+Y2xrLCBmcmVxKTsKPiA+Pj4+PiAgIH0K PiA+Pj4+Pgo+ID4+Pj4+IFRoZSBpZGVhIGlzOiBmb3IgYSByZXF1ZXN0ZWQgMzJrSHogc2lnbmFs IHRoZSBQV00gcGVyaW9kIGlzIDMwNTE4bnMuCj4gPj4+Pj4gVGhlIHVwZGF0ZWQgbG9naWMgd291 bGQgZmluZCB0aGF0IHRoZXJlJ3MgYSBtYXRjaGluZyBjbG9jayBpbnB1dCBhbmQKPiA+Pj4+PiB1 c2UgdGhhdCBkaXJlY3RseS4gSWYgbm90OiB1c2UgdGhlIG9yaWdpbmFsIGxvZ2ljIGFzIHN1Z2dl c3RlZCBieQo+ID4+Pj4+IEhlaW5lci4KPiA+Pj4+Pgo+ID4+Pj4+Cj4gPj4+Pj4gQmVzdCByZWdh cmRzLAo+ID4+Pj4+IE1hcnRpbgo+ID4+Pj4+Cj4gPj4+Pj4KPiA+Pj4+PiBbMF0gaHR0cHM6Ly9s b3JlLmtlcm5lbC5vcmcvbGludXgtYW1sb2dpYy85ZmFjYTJlNi1iN2ExLTQ3NDgtN2ViMC00OGY4 MDY0ZTMyM2VAZ21haWwuY29tLwo+ID4+Pj4KPiA+Pj4KPiA+Pgo+ID4gCj4gCgotLSAKVGhhbmsg eW91LApEbWl0cnkKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCmxpbnV4LWFybS1rZXJuZWwgbWFpbGluZyBsaXN0CmxpbnV4LWFybS1rZXJuZWxAbGlzdHMu aW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2xpbnV4LWFybS1rZXJuZWwK