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 DB639C47258 for ; Mon, 29 Jan 2024 00:09:35 +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-Type: Content-Transfer-Encoding:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:Message-ID:References:In-Reply-To:Subject:Cc:To:From :Date:MIME-Version:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=ZoShOPyA4tjBDsPfzBAa7rdCIUHGio3C4h44NVQms2Q=; b=LzZCuFTHHzndjkYjAsKJzwhVXq 7hY0VZSUDryPY8Fi60ODEfVBIqrJUnNCWIuyMftQG+pe3kv+ibivr+OkcWzzCuVu3z5FKD6NjGPn3 yGs2ISs6bO0reSKiE/GVslXiqyPWBspH1aIzVKSq5topgz3BAp3P4ZZD/d3oBSQ/x+qKncbrUYFQP sWGPzW0iARPuQjKTC908xMP5tsqKabuOpBlQQZ/SXjdRyvN6Lxw1aSsTDJntmSBqIuEAk7bRRQg7j 7r3sN3/T0aJI3CzUokRVwRncVxuWBmIs4666SGK4dVcU6boSwfuEHF7RgLmwNPGSRBMnX7683gkNB T4PrenPw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1rUFDL-0000000Anbg-28yn; Mon, 29 Jan 2024 00:09:27 +0000 Received: from mail.manjaro.org ([2a01:4f8:c0c:51f3::1]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1rUFDG-0000000Anb5-3PoB; Mon, 29 Jan 2024 00:09:24 +0000 MIME-Version: 1.0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=manjaro.org; s=2021; t=1706486956; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=Tk03a+FET1k1rmW3l/AR6fyVcT+TC3Z8jhBTopbl0TM=; b=F53HV9dhyPpLRJoADL1M+ou/YvdWoiRYoBqArrJM+6rEfNgOjkEGVS+tt2GeQlK7O6V9cY ZiNahPTAa8L5uYw8YT/G4QqaXcU7knUNUDzLpE57A/LG+UINo7G+3poDoZ+TACLaecSm/w o5DGdX+f1p+ULMas1lNL42oLCRoHvUqIBLu4oiyBmNCrFseUZwy6j/dqaSibRBTokDRlVm e18j222OcQarBD7MuSLr2gb905FKlvNnIyo+2Ny9nH/g/01sZ0J9Fy3n22ke9djEMkZU7Y Os4MARNtmPZ1GfMJ4ym2d4lF5vT3e3mhiKlEfwhEToJknA8q1ibhkuYs76sJ1w== Date: Mon, 29 Jan 2024 01:09:14 +0100 From: Dragan Simic To: Alexey Charkov Cc: Daniel Lezcano , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Heiko Stuebner , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org, Viresh Kumar Subject: Re: [PATCH 4/4] arm64: dts: rockchip: Add OPP data for CPU cores on RK3588 In-Reply-To: References: <20240125-rk-dts-additions-v1-0-5879275db36f@gmail.com> <20240125-rk-dts-additions-v1-4-5879275db36f@gmail.com> <731aac66-f698-4a1e-b9ee-46a7f24ecae5@linaro.org> <1f0608831cfb95c80edf16cd751eee76@manjaro.org> <528a37d84cdd871e717b4ebf648bb8a7@manjaro.org> <9b72b688-be63-464e-a5dc-cf6051ccee12@linaro.org> <5ef9bab979260884866efe30d19ba8f1@manjaro.org> <9fda41efe365241ce06bd58974c8e055@manjaro.org> Message-ID: X-Sender: dsimic@manjaro.org Authentication-Results: ORIGINATING; auth=pass smtp.auth=dsimic@manjaro.org smtp.mailfrom=dsimic@manjaro.org X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240128_160923_485368_67F99121 X-CRM114-Status: GOOD ( 57.18 ) X-BeenThere: linux-rockchip@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Upstream kernel work for Rockchip platforms List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Sender: "Linux-rockchip" Errors-To: linux-rockchip-bounces+linux-rockchip=archiver.kernel.org@lists.infradead.org T24gMjAyNC0wMS0yOCAyMDoxNCwgQWxleGV5IENoYXJrb3Ygd3JvdGU6Cj4gT24gU3VuLCBKYW4g MjgsIDIwMjQgYXQgNzozNeKAr0FNIERyYWdhbiBTaW1pYyA8ZHNpbWljQG1hbmphcm8ub3JnPiAK PiB3cm90ZToKPj4gT24gMjAyNC0wMS0yNyAyMDo0MSwgQWxleGV5IENoYXJrb3Ygd3JvdGU6Cj4+ ID4gT24gU2F0LCBKYW4gMjcsIDIwMjQgYXQgMTI6MzPigK9BTSBEcmFnYW4gU2ltaWMgPGRzaW1p Y0BtYW5qYXJvLm9yZz4gd3JvdGU6Cj4+ID4+IE9uIDIwMjQtMDEtMjYgMTQ6NDQsIEFsZXhleSBD aGFya292IHdyb3RlOgo+PiA+PiA+IE9uIEZyaSwgSmFuIDI2LCAyMDI0IGF0IDQ6NTbigK9QTSBE YW5pZWwgTGV6Y2FubyA8ZGFuaWVsLmxlemNhbm9AbGluYXJvLm9yZz4gd3JvdGU6Cj4+ID4+ID4+ IE9uIDI2LzAxLzIwMjQgMDg6NDksIERyYWdhbiBTaW1pYyB3cm90ZToKPj4gPj4gPj4gPiBPbiAy MDI0LTAxLTI2IDA4OjMwLCBBbGV4ZXkgQ2hhcmtvdiB3cm90ZToKPj4gPj4gPj4gPj4gT24gRnJp LCBKYW4gMjYsIDIwMjQgYXQgMTE6MDXigK9BTSBEcmFnYW4gU2ltaWMgPGRzaW1pY0BtYW5qYXJv Lm9yZz4gd3JvdGU6Cj4+ID4+ID4+ID4+PiBPbiAyMDI0LTAxLTI2IDA3OjQ0LCBBbGV4ZXkgQ2hh cmtvdiB3cm90ZToKPj4gPj4gPj4gPj4+ID4gT24gRnJpLCBKYW4gMjYsIDIwMjQgYXQgMTA6MzLi gK9BTSBEcmFnYW4gU2ltaWMgPGRzaW1pY0BtYW5qYXJvLm9yZz4gd3JvdGU6Cj4+ID4+ID4+ID4+ PiA+PiBPbiAyMDI0LTAxLTI1IDEwOjMwLCBEYW5pZWwgTGV6Y2FubyB3cm90ZToKPj4gPj4gPj4g Pj4gVGhyb3R0bGluZyB3b3VsZCBhbHNvIGxvd2VyIHRoZSB2b2x0YWdlIGF0IHNvbWUgcG9pbnQs IHdoaWNoIGNvb2xzIGl0Cj4+ID4+ID4+ID4+IGRvd24gbXVjaCBmYXN0ZXIhCj4+ID4+ID4+ID4K Pj4gPj4gPj4gPiBPZiBjb3Vyc2UsIGJ1dCB0aGUga2V5IGlzIG5vdCB0byBjb29sIChhbmQgc2xv dyBkb3duKSB0aGUgQ1BVIGNvcmVzIHRvbwo+PiA+PiA+PiA+IG11Y2gsIGJ1dCBqdXN0IGVub3Vn aCB0byBzdGF5IHdpdGhpbiB0aGUgYXZhaWxhYmxlIHRoZXJtYWwgZW52ZWxvcGUsCj4+ID4+ID4+ ID4gd2hpY2ggaXMgd2hlcmUgdGhlIHNhbWUtdm9sdGFnZSwgbG93ZXItZnJlcXVlbmN5IE9QUHMg c2hvdWxkIHNoaW5lLgo+PiA+PiA+Pgo+PiA+PiA+PiBUaGF0IGltcGxpZXMgdGhlIHJlc3VsdGlu ZyBwb3dlciBpcyBzdXN0YWluYWJsZSB3aGljaCBJIGRvdWJ0IGl0IGlzCj4+ID4+ID4+IHRoZQo+ PiA+PiA+PiBjYXNlLgo+PiA+PiA+Pgo+PiA+PiA+PiBUaGUgdm9sdGFnZSBzY2FsaW5nIG1ha2Vz IHRoZSBjb29saW5nIGVmZmVjdCBlZmZpY2llbnQgbm90IHRoZQo+PiA+PiA+PiBmcmVxdWVuY3ku Cj4+ID4+ID4+Cj4+ID4+ID4+IEZvciBleGFtcGxlOgo+PiA+PiA+PiAgICAgICAgIG9wcDUgPSBv cHAoMkdIeiwgMVYpID0+IDIgQm9nb1dhdHQKPj4gPj4gPj4gICAgICAgICBvcHA0ID0gb3BwKDEu OUdIeiwgMVYpID0+IDEuOSBCb2dvV2F0dAo+PiA+PiA+PiAgICAgICAgIG9wcDMgPSBvcHAoMS44 R0h6LCAwLjlWKSA9PiAxLjQ1OCBCb2dvV2F0dAo+PiA+PiA+PiAgICAgICAgIFsgb3RoZXIgc3Rh dGVzIGJ1dCB3ZSBmb2N1cyBvbiB0aGVzZSAzIF0KPj4gPj4gPj4KPj4gPj4gPj4gb3BwNS0+b3Bw NCA9PiAtNSUgY29tcHV0ZSBjYXBhY2l0eSwgLTUlIHBvd2VyLCByYXRpbz0xCj4+ID4+ID4+IG9w cDQtPm9wcDMgPT4gLTUlIGNvbXB1dGUgY2FwYWNpdHksIC0yMy4xJSBwb3dlciwgcmF0aW89MjEs Ngo+PiA+PiA+Pgo+PiA+PiA+PiBvcHA1LT5vcHAzID0+IC0xMCUgY29tcHV0ZSBjYXBhY2l0eSwg LTI3LjElIHBvd2VyLCByYXRpbz0zNi45Cj4+ID4+ID4+Cj4+ID4+ID4+IEluIGJ1cnN0IG9wZXJh dGlvbiAobm8gdGhlcm1hbCB0aHJvdHRsaW5nKSwgb3BwNCBpcyBwb2ludGxlc3Mgd2UgYWdyZWUK Pj4gPj4gPj4gb24gdGhhdC4KPj4gPj4gPj4KPj4gPj4gPj4gSU1PIHRoZSBmb2xsb3dpbmcgd2ls bCBoYXBwZW46IGluIGJ1cnN0IG9wZXJhdGlvbiB3aXRoIHRoZXJtYWwKPj4gPj4gPj4gdGhyb3R0 bGluZyB3ZSBoaXQgdGhlIHRyaXAgcG9pbnQgYW5kIHRoZW4gdGhlIHN0ZXAgd2lzZSBnb3Zlcm5v cgo+PiA+PiA+PiByZWR1Y2VzCj4+ID4+ID4+IG9wcDUgLT4gb3BwNC4gV2UgaGF2ZSBzbGlnaHQg cG93ZXIgcmVkdWN0aW9uIGJ1dCB0aGUgdGVtcGVyYXR1cmUgZG9lcwo+PiA+PiA+PiBub3QgZGVj cmVhc2UsIHNvIGF0IHRoZSBuZXh0IGl0ZXJhdGlvbiwgaXQgaXMgdGhyb3R0bGUgYXQgb3BwMy4g QW5kIGF0Cj4+ID4+ID4+IHRoZSBlbmQgd2UgaGF2ZSBvcHA0IDwtPiBvcHAzIGJhY2sgYW5kIGZv cnRoIGluc3RlYWQgb2Ygb3BwNSA8LT4gb3BwMy4KPj4gPj4gPj4KPj4gPj4gPj4gSXQgaXMgcHJv YmFibGUgd2UgZW5kIHVwIHdpdGggYW4gZXF1aXZhbGVudCBmcmVxdWVuY3kgYXZlcmFnZSAob3IK Pj4gPj4gPj4gY29tcHV0ZSBjYXBhY2l0eSBhdmcpLgo+PiA+PiA+Pgo+PiA+PiA+PiBvcHA0IDwt PiBvcHAzIChsb25nZXIgZHVyYXRpb24gaW4gc3RhdGVzLCBsZXNzIHRyYW5zaXRpb25zKQo+PiA+ PiA+PiBvcHA1IDwtPiBvcHAzIChzaG9ydGVyIGR1cmF0aW9uIGluIHN0YXRlcywgbW9yZSB0cmFu c2l0aW9ucykKPj4gPj4gPj4KPj4gPj4gPj4gU29tZSBwbGF0Zm9ybXMgaGFkIHRoZWlyIGhpZ2hl ciBPUFBzIHdpdGggdGhlIHNhbWUgdm9sdGFnZSBhbmQgdGhleQo+PiA+PiA+PiBmYWlsZWQgdG8g Y29vbCBkb3duIHRoZSBDUFUgaW4gdGhlIGxvbmcgcnVuLgo+PiA+PiA+Pgo+PiA+PiA+PiBBbnl3 YXksIHRoZXJlIGlzIG9ubHkgb25lIHdheSB0byBjaGVjayBpdCBvdXQgOikKPj4gPj4gPj4KPj4g Pj4gPj4gQWxleGV5LCBpcyBpdCBwb3NzaWJsZSB0byBjb21wYXJlIHRoZSBjb21wdXRlIGR1cmF0 aW9uIGZvciAnZGhyeXN0b25lJwo+PiA+PiA+PiB3aXRoIHRoZXNlIHZvbHRhZ2UgT1BQIGFuZCB3 aXRob3V0ID8gKHdpdGggYSBwZXJpb2Qgb2YgY29vbCBkb3duCj4+ID4+ID4+IGJldHdlZW4KPj4g Pj4gPj4gdGhlIHRlc3QgaW4gb3JkZXIgdG8gc3RhcnQgYXQgdGhlIHNhbWUgdGhlcm1hbCBjb25k aXRpb24pID8KPj4gPj4gPgo+PiA+PiA+IFN1cmUsIGxldCBtZSB0cnkgdGhhdCAtIHdvdWxkIGJl IGludGVyZXN0aW5nIHRvIHNlZSB0aGUgcmVzdWx0cy4gSW4gbXkKPj4gPj4gPiBwcmV2aW91cyB0 aW5rZXJpbmcgdGhlcmUgd2VyZSBjYXNlcyB3aGVuIHRoZSBzeXN0ZW0gc3RheWVkIGF0IDIuMzVH SHoKPj4gPj4gPiBmb3IgYWxsIGJpZyBjb3JlcyBmb3Igbm9uLXRyaXZpYWwgdGltZSAodXNpbmcg dGhlIHN0ZXAtd2lzZSB0aGVybWFsCj4+ID4+ID4gZ292ZXJub3IpLCBhbmQgdGhhdCdzIGFuIGV4 YW1wbGUgb2YgInNhbWUgdm9sdGFnZSwgbG93ZXIgZnJlcXVlbmN5Ii4KPj4gPj4gPiBPdGhlciB0 aW1lcyB0aG91Z2ggaXQgdGhyb3R0bGVkIG9uZSBjbHVzdGVyIGRvd24gdG8gMS44R0h6IGFuZCBr ZXB0Cj4+ID4+ID4gdGhlIG90aGVyIGF0IDIuNEdIeiwgYW5kIHdhcyBhbHNvIHN0YXRpb25hcnkg YXQgdGhvc2UgcGFyYW1ldGVycyBmb3IKPj4gPj4gPiBleHRlbmRlZCB0aW1lLiBUaGlzIHByb2Jh Ymx5IGluZGljYXRlcyB0aGF0IGJvdGggb2YgdGhvc2Ugc3RhdGVzIHVzZQo+PiA+PiA+IHN1c3Rh aW5hYmxlIHBvd2VyIGluIG15IGNvb2xpbmcgc2V0dXAuCj4+ID4+Cj4+ID4+IElNSE8sIHRoZXJl IGFyZSBzaW1wbHkgdG9vIG1hbnkgZmFjdG9ycyBhdCBwbGF5LCBpbmNsdWRpbmcgZGlmZmVyZW50 Cj4+ID4+IHBvc3NpYmxlIGNvb2xpbmcgc2V0dXBzLCBzbyBwcm92aWRpbmcgYWRkaXRpb25hbCBD UFUgdGhyb3R0bGluZwo+PiA+PiBncmFudWxhcml0eSBjYW4gb25seSBiZSBoZWxwZnVsLiAgT2Yg Y291cnNlLCB0ZXN0aW5nIGFuZCByZWNvcmRpbmcKPj4gPj4gZGF0YSBpcyB0aGUgd2F5IHRvIG1v dmUgZm9yd2FyZCwgYnV0IEkgdGhpbmsgd2Ugc2hvdWxkIHVzZSBhIGZldwo+PiA+PiBkaWZmZXJl bnQgdGVzdHMuCj4+ID4KPj4gPiBTb29vbywgYmVuY2htYXJraW5nIHRoZXNlIHR1cm5lZCBvdXQg YSBiaXQgdHJpY2tpZXIgdGhhbiBJIGhhZCBob3BlZAo+PiA+IGZvci4gQXBwYXJlbnRseSwgZGhy eXN0b25lIHVzZXMgYW4gdW5zaWduZWQgaW50IHJhdGhlciB0aGFuIGFuCj4+ID4gdW5zaWduZWQg bG9uZyBmb3IgdGhlIGxvb3BzIGNvdW50IChvciBzb21ldGhpbmcgb2YgdGhhdCBzb3J0KSwgd2hp Y2gKPj4gPiBtZWFucyB0aGF0IEkgY2FuJ3QgZ2V0IGl0IHRvIHJ1biBlbm91Z2ggbG9vcHMgdG8g aGVhdCB1cCBteSBjaGlwIGZyb20KPj4gPiBhIHN0YWJsZSBpZGxlIHN0YXRlIHRvIHRoZSB0aHJv dHRsaW5nIHN0YXRlIChkdWUgdG8gY291bnRlcgo+PiA+IHdyYXBhcm91bmQpLiBTbyBJIGVuZGVk IHVwIHdpdGggYSBjb3VwbGUgb2YgY3J1dGNoZXMsIG5hbWVseToKPj4gCj4+IEh1aCwgaXQgc2Vl bXMgdGhhdCByZWNlbnQgU0JDcyBtYXkgaGF2ZSBiZWNvbWUgYSBiaXQgdG9vIGZhc3QgZm9yIGl0 LAo+PiB3aGljaCBpcyBncmVhdC4gOikgIFRoYW5rIHlvdSBmb3IgdGhlIGJlbmNobWFya2luZy4K Pj4gCj4+ID4gIC0gcnVuIGRocnlzdG9uZSBjb250aW51b3VzbHkgb24gNiBvdXQgb2YgOCBjb3Jl cyB0byBtYWtlIHRoZSBjaGlwCj4+ID4gd2FybSBlbm91Z2ggKGB0YXNrc2V0IC1jIDAtNSAuL2Ro cnlzdG9uZSAtdCA2IC1yIDYwMDBgIC0gbm90ZSB0aGF0IG9uCj4+ID4gbXkgbWFjaGluZSBjb3Jl cyA2LTcgYXJlIHVzdWFsbHkgdGhlIGZpcnN0IG9uZXMgdG8gZ2V0IHRocm90dGxlZCwgZHVlCj4+ ID4gdG8gd2hhdGV2ZXIgdGhlcm1hbCBwZWN1bGlhcml0aWVzKQo+PiA+ICAtIHdhaXQgZm9yIHRo ZSB0ZW1wZXJhdHVyZSB0byBzdGFiaWxpemUgKHdoaWNoIGhhcHBlbnMgYXQgNzkuNUMpCj4+ID4g IC0gdGhlbiBydW4gdGltZWQgZGhyeXN0b25lIG9uIHRoZSByZW1haW5pbmcgMiBvdXQgb2YgNiBj b3JlcyAoYmlnCj4+ID4gb25lcykgdG8gc2VlIGhvdyB0aHJvdHRsaW5nIHdpdGggZGlmZmVyZW50 IE9QUCB0YWJsZXMgYWZmZWN0cyBvdmVyYWxsCj4+ID4gcGVyZm9ybWFuY2UuCj4+IAo+PiBKdXN0 IGNoZWNraW5nLCBydW5uaW5nIHRoZSB0ZXN0IG9uIGp1c3QgdHdvIENQVSBjb3JlcyB3YXMgZW5v dWdoIHRvCj4+IGtlZXAgdGhlIHBhY2thZ2UgdGVtcGVyYXR1cmUgYXQgYXJvdW5kIDgwIG9DPwo+ IAo+IE5vLCBub3QgZXZlbiByZW1vdGVseS4KPiAKPiBJIGtlcHQgdGhlIGNvbnRpbnVvdXMgNiBk aHJ5c3RvbmUgdGhyZWFkcyBydW5uaW5nIG9uIGFsbCB0aGUgb3RoZXIKPiBjb3JlcyAoYHRhc2tz ZXQgLWMgMC01IC4vZGhyeXN0b25lIC10IDYgLXIgNjAwMGApIHRvIGxldCBpdCByZWFjaCB0aGUK PiB0aHJvdHRsaW5nIHRlbXBlcmF0dXJlLiBUaGlzIGFkZHMgZnVydGhlciBpbXByZWNpc2lvbiB0 byB0aGUgYmVuY2htYXJrCj4gb2YgY291cnNlLCBiZWNhdXNlIHRoZSBnb3Zlcm5vciBtaWdodCBj aG9vc2UgdG8gdGhyb3R0bGUgc29tZSBvZiB0aGUKPiBjb3JlcyB0aGF0IGRvIG5vdCBwYXJ0aWNp cGF0ZSBpbiB0aGUgdGltZWQgYmVuY2htYXJraW5nIHJ1biwgYW5kIHRodXMKPiBsZW5kIHNvbWUg dGhlcm1hbCBoZWFkcm9vbSB0byB0aGUgbGF0dGVyLiBUaGF0IGRpZG4ndCBzZWVtIHRvIGhhcHBl bgo+IGZyb20gbXkgbmFrZWQtZXllIG9ic2VydmF0aW9uIHZpYSBgd2F0Y2ggImNwdXBvd2VyIC1j IDAsNCw2Cj4gZnJlcXVlbmN5LWluZm8gfCBncmVwIGN1cnJlbnQiYCwgYWx0aG91Z2ggSSBhZG1p dCB0aGF0IEkgZGlkbid0IHJlY29yZAo+IG1vcmUgZ3JhbnVsYXIgbG9ncyBvZiBmcmVxdWVuY3kg c3RhdGVzLCBhbmQgc29tZSBxdWljayB0cmFuc2l0aW9ucyB0bwo+IGxvd2VyIGZyZXF1ZW5jaWVz IGNvdWxkIGFsc28gaGF2ZSBoYXBwZW5lZCBvbiB0aGUgb3RoZXIgY29yZXMuIERvbid0Cj4gdGhp bmsgaXQncyBhIG1ham9yIGluZmx1ZW5jZSB0aG91Z2gsIGJlY2F1c2UgYSBxdWljayB0cmFuc2l0 aW9uIGJhY2sKPiBhbmQgZm9ydGggc2hvdWxkbid0IGhhdmUgY29udHJpYnV0ZWQgbXVjaCB0byB0 aGUgdGhlcm1hbCBvdXRwdXQuCgpUaGFuayB5b3UgZm9yIHRoZSBjbGFyaWZpY2F0aW9uIQoKWW91 J3JlIHJpZ2h0LCB0aGF0IG1pZ2h0IGhhdmUgaW50cm9kdWNlZCBzb21lIGluYWNjdXJhY3kgaW50 byB0aGUgdGVzdApyZXN1bHRzLCBhbmQgaXQgYWxzbyBtYWRlIHRoZSB0ZXN0cyBraW5kIG9mIGhh cmRseSByZXBlYXRhYmxlLiAgT24gdGhlCm90aGVyIGhhbmQsIHRoYXQgd2F5IHRoZSBzeW50aGV0 aWMgQ1BVIHRlc3QgZmVlbHMgYSBiaXQgbW9yZSBsaWtlIHNvbWUKcmVhbC13b3JsZCBDUFUgbG9h ZCwgaW4gd2hpY2ggbXVsdGlwbGUgcmVzb3VyY2UtaHVuZ3J5IHRhc2tzIHVzdWFsbHkKY29tcGV0 ZSBmb3IgdGhlIENQVSBjb3JlcyBhbmQgdGhlIHRoZXJtYWwgYnVkZ2V0LgoKVGhvdWdoLCBhcyB3 ZSBrbm93IHJlcGVhdGFiaWxpdHkgaXMgdGhlIGtleSBmb3IgYSBzY2llbnRpZmljIGFwcHJvYWNo LApidXQgaXQgYWxzbyB1c3VhbGx5IGNvbnRyYWRpY3RzIHdpdGggc2ltdWxhdGluZyByZWFsLXdv cmxkIGxvYWRzIHRoYXQKYXJlIG9mIHJhdGhlciByYW5kb20gbmF0dXJlLiAgV2VsbCwgdGVzdGlu ZyBpcyBoYXJkLiA6KQoKSSdsbCB0aGluayBhIGJpdCBtb3JlIGFib3V0IGFsbCB0aGlzLCBhbmQg SSdsbCBjb21lIGJhY2sgd2l0aCBhbiB1cGRhdGUuCk1heWJlIEknbGwgYWxzbyBiZSBhYmxlIHRv IGpvaW4gdGhlIHRlc3RpbmcuCgo+PiA+IEluIHRoZSBlbmQsIGhlcmUncyB3aGF0IEkgZ290IHdp dGggdGhlICdvcmlnaW5hbCcgT1BQIHRhYmxlIChpbmNsdWRpbmcKPj4gPiAic2FtZSB2b2x0YWdl IC0gZGlmZmVyZW50IGZyZXF1ZW5jaWVzIiBzdGF0ZXMpOgo+PiA+IGFsY2hhcmtAcm9jay01YiB+ ICQgdGFza3NldCAtYyA2LTcgLi9kaHJ5c3RvbmUgLXQgMiAtbCA0MDAwMDAwMDAwCj4+ID4gZHVy YXRpb246IDAgc2Vjb25kcwo+PiA+IG51bWJlciBvZiB0aHJlYWRzOiAyCj4+ID4gbnVtYmVyIG9m IGxvb3BzOiA0MDAwMDAwMDAwMDAwMDAwCj4+ID4gZGVsYXkgYmV0d2VlbiBzdGFydGluZyB0aHJl YWRzOiAwIHNlY29uZHMKPj4gPgo+PiA+IERocnlzdG9uZSgxLjEpIHRpbWUgZm9yIDEyMzM5Nzcz NDQgcGFzc2VzID0gMjkuNwo+PiA+IFRoaXMgbWFjaGluZSBiZW5jaG1hcmtzIGF0IDQxNDgxNTM5 IGRocnlzdG9uZXMvc2Vjb25kCj4+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgMjM2MDkg RE1JUFMKPj4gPiBEaHJ5c3RvbmUoMS4xKSB0aW1lIGZvciAxMjMzOTc3MzQ0IHBhc3NlcyA9IDI5 LjgKPj4gPiBUaGlzIG1hY2hpbmUgYmVuY2htYXJrcyBhdCA0MTQ3NjYxOCBkaHJ5c3RvbmVzL3Nl Y29uZAo+PiA+ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIzNjA2IERNSVBTCj4+ID4KPj4g PiBUb3RhbCBkaHJ5c3RvbmUgcnVuIHRpbWU6IDMwLjg2NDQ5MiBzZWNvbmRzLgo+PiA+Cj4+ID4g QW5kIGhlcmUncyB3aGF0IEkgZ290IHdpdGggdGhlICdyZWR1Y2VkJyBPUFAgdGFibGUgKGtlZXBp bmcgb25seSB0aGUKPj4gPiBoaWdoZXN0IGZyZXF1ZW5jeSBzdGF0ZSBmb3IgZWFjaCB2b2x0YWdl KToKPj4gPiBhbGNoYXJrQHJvY2stNWIgfiAkIHRhc2tzZXQgLWMgNi03IC4vZGhyeXN0b25lIC10 IDIgLWwgNDAwMDAwMDAwMAo+PiA+IGR1cmF0aW9uOiAwIHNlY29uZHMKPj4gPiBudW1iZXIgb2Yg dGhyZWFkczogMgo+PiA+IG51bWJlciBvZiBsb29wczogNDAwMDAwMDAwMDAwMDAwMAo+PiA+IGRl bGF5IGJldHdlZW4gc3RhcnRpbmcgdGhyZWFkczogMCBzZWNvbmRzCj4+ID4KPj4gPiBEaHJ5c3Rv bmUoMS4xKSB0aW1lIGZvciAxMjMzOTc3MzQ0IHBhc3NlcyA9IDMwLjkKPj4gPiBUaGlzIG1hY2hp bmUgYmVuY2htYXJrcyBhdCAzOTk2ODU0OSBkaHJ5c3RvbmVzL3NlY29uZAo+PiA+ICAgICAgICAg ICAgICAgICAgICAgICAgICAgMjI3NDggRE1JUFMKPj4gPiBEaHJ5c3RvbmUoMS4xKSB0aW1lIGZv ciAxMjMzOTc3MzQ0IHBhc3NlcyA9IDMxLjAKPj4gPiBUaGlzIG1hY2hpbmUgYmVuY2htYXJrcyBh dCAzOTgxNzQzMSBkaHJ5c3RvbmVzL3NlY29uZAo+PiA+ICAgICAgICAgICAgICAgICAgICAgICAg ICAgMjI2NjIgRE1JUFMKPj4gPgo+PiA+IFRvdGFsIGRocnlzdG9uZSBydW4gdGltZTogMzEuOTk1 MTM2IHNlY29uZHMuCj4+ID4KPj4gPiBCb3R0b21saW5lOiByZW1vdmluZyB0aGUgbG93ZXItZnJl cXVlbmN5IE9QUHMgbGVkIHRvIGEgMy44JSBkcm9wIGluCj4+ID4gcGVyZm9ybWFuY2UgaW4gdGhp cyBzZXR1cC4gVGhpcyBpcyBwcm9iYWJseSBmYXIgZnJvbSBhIHJlbGlhYmxlCj4+ID4gZXN0aW1h dGUsIGJ1dCBJIGd1ZXNzIGl0IGluZGVlZCBpbmRpY2F0ZXMgdGhhdCBoYXZpbmcgbG93ZXItZnJl cXVlbmN5Cj4+ID4gc3RhdGVzIG1pZ2h0IGJlIGJlbmVmaWNpYWwgaW4gc29tZSBsb2FkIHNjZW5h cmlvcy4KPj4gCj4+IE1lYXN1cmluZyBhIGRpZmZlcmVuY2Ugb2YgYWJvdXQgNCUgbWF5IGJlIGF0 dHJpYnV0ZWQgdG8gc29tZSB1bmtub3duCj4+IGluYWNjdXJhY3kgb3IgdGVzdCBkZXZpYXRpb24s IGJ1dCBhZ2FpbiwgYSBwZXJmb3JtYW5jZSBpbXByb3ZlbWVudCBvZgo+PiBhYm91dCA0JSB0aGF0 IGNvbWVzIGZyZWUgb2YgY2hhcmdlIGlzIG5vdGhpbmcgdG8gYmUgc25lZXplZCBhdCwgSU1ITy4K PiAKPiBUcnVlIDopCj4gCj4+ID4gTm90ZSB0aG91Z2ggdGhhdCBzZXZlcmFsIHNlY29uZHMgYWZ0 ZXIgaGl0dGluZyB0aGUgdGhyb3R0bGluZwo+PiA+IHRocmVzaG9sZCBjb3JlcyA2LTcgd2VyZSBv c2NpbGxhdGluZyBiZXR3ZWVuIDEuNjA4R0h6IGFuZCAxLjhHSHogaW4KPj4gPiBib3RoIHJ1bnMs IHdoaWNoIGltcGxpZXMgdGhhdCB0aGUgd2hvbGUgZGlmZmVyZW5jZSBpbiBwZXJmb3JtYW5jZSB3 YXMKPj4gPiBkdWUgdG8gZGlmZmVyZW50IHNwZWVkIG9mIGluaXRpYWwgdGhyb3R0bGluZyAoaS5l LiBpdCBtaWdodCBiZSBhCj4+ID4gcGVjdWxpYXJpdHkgb2YgdGhlIHN0ZXAtd2lzZSB0aGVybWFs IGdvdmVybm9yIG9wZXJhdGlvbiB3aGVuIGl0IGhhcyB0bwo+PiA+IGdvIHRocm91Z2ggbW9yZSBj b29saW5nIHN0YXRlcyB0byByZWFjaCB0aGUgInN0ZWFkeS1zdGF0ZSIgb25lKS4gR2l2ZW4KPj4g PiB0aGF0IGJvdGggMS42MDhHSHogYW5kIDEuOEdIeiBoYXZlIG5vIGxvd2VyLWZyZXF1ZW5jeSBz YW1lLXZvbHRhZ2UKPj4gPiBzaWJsaW5ncyBpbiBlaXRoZXIgb2YgdGhlIE9QUCB0YWJsZXMsIGl0 IGltcGxpZXMgdGhhdCB1bmRlciBwcm9sb25nZWQKPj4gPiBjb25zdGFudCBsb2FkIHRoZXJlIHNo b3VsZCBiZSBubyBwZXJmb3JtYW5jZSBkaWZmZXJlbmNlIGF0IGFsbC4KPj4gCj4+IC4uLiBhbGwg dGhhdCB3aXRoIG9uZSBwb3NzaWJsZSBjb29saW5nIHNldHVwLCBhbmQgd2l0aCBvbmUgc3ludGhl dGljCj4+IHRlc3QuICBXZSBzaW1wbHkgY2FuJ3Qga25vdyBpbiBhZHZhbmNlIGhvdyB3b3VsZCBh IGRpZmZlcmVudCBjb29saW5nCj4+IHNldHVwIG9uIHRoZSBzYW1lIG9yIG9uIGEgZGlmZmVyZW50 IGJvYXJkIGJlaGF2ZSwgaWYgeW91IGFncmVlLgo+IAo+IE9mIGNvdXJzZS4gTXkgb25seSBjb25j ZXJuIGlzIHdoZXRoZXIgd2UgbWlnaHQgYmUgc29tZXdoYXQgZGVjZWl2aW5nCj4gb3Vyc2VsdmVz IGJ5IHRoYXQgYmVuY2htYXJrZWQgcGVyZm9ybWFuY2UgYm9vc3Q6IGFmdGVyIGFsbCwgaXQncyBh bHNvCj4gZW50aXJlbHkgcG9zc2libGUgdGhhdCBieSBnb2luZyB0aHJvdWdoIG11bHRpcGxlIGlu dGVybWVkaWF0ZQo+IGZyZXF1ZW5jeSBzdGF0ZXMsIHRoZSBzdGVwLXdpc2UgZ292ZXJub3Igc2lt cGx5IGRpZG4ndCBjb29sIHRoZSBjb3JlCj4ganVzdCBlbm91Z2ggb3ZlciBzb21lIGZyYWN0aW9u IG9mIHRoZSBiZW5jaG1hcmtpbmcgcnVuLCB3aGljaCB3ZSB3b3VsZAo+IGhhdmUgb2JzZXJ2ZWQg aW4gYSBkZXRhaWxlZCB0ZW1wZXJhdHVyZSBsb2cgYXMgYSBoaWdoZXIgcGVhawo+IHRlbXBlcmF0 dXJlIGFuZCBsb25nZXIgcmVzaWRlbmNlIGFib3ZlIHRoZSB0aHJvdHRsaW5nIHRocmVzaG9sZAo+ IHRlbXBlcmF0dXJlIChhbmQgdGhhdCB3b3VsZCBiZSB0aGUgY2FzZSBpZiBpbnRlcm1lZGlhdGUg ZnJlcXVlbmN5Cj4gc3RhdGVzIHdlcmUgInVuc3VzdGFpbmFibGUiIGFzIERhbmllbCBwb2ludGVk IG91dCwgd2hpY2ggdGhleSBwcm9iYWJseQo+IHdlcmUgZ2l2ZW4gdGhhdCB0aGUgdGhyb3R0bGlu ZyBkaWRuJ3Qgc3RvcCBhdCBhbnkgb2YgdGhlbSkuCgpXZWxsLCB0aGUgb2JzZXJ2ZWQgQ1BVIGZy ZXF1ZW5jeSBzY2FsaW5nIGRpZG4ndCBzdG9wIGF0IGFueSBwYXJ0aWN1bGFyCk9QUCBmb3IgYW4g ZXh0ZW5kZWQgcGVyaW9kIG9mIHRpbWUsIGlmIEknbSBub3QgbWlzdGFrZW4/ICBUaGF0J3MgZXZl bgptb3JlIG5vdCB0byBiZSBleHBlY3RlZCB1bmRlciBhbnkga2luZCBvZiB1bnByZWRpY3RhYmxl IHJlYWwtd29ybGQgQ1BVCmxvYWQsIGlmIHlvdSBhZ3JlZS4KCj4gQXR0cmlidXRpbmcgYSBwZXJm b3JtYW5jZSBpbmNyZWFzZSBpbiB0aGlzIGNhc2UgdG8gYSBiZW5lZml0IGZyb20KPiBhZGRpdGlv bmFsIGludGVybWVkaWF0ZSBPUFBzIGlzIG5vdCBmdWxseSBmYWlyLCBiZWNhdXNlIHRoZW4gd2Ug Y2FuCj4gYWxzbyBzaW1wbHkgbW92ZSB0aGUgdGhyb3R0bGluZyB0aHJlc2hvbGQgaGlnaGVyLiBB bmQgaXQgd291bGQgYmUKPiBzdXBlciB0cmlja3kgdG8gc2VwYXJhdGUgdGhlIGVmZmVjdHMgZnJv bSBncmVhdGVyIHN5c3RlbSB0aHJvdWdocHV0IGF0Cj4gaW50ZXJtZWRpYXRlIGZyZXF1ZW5jeSBz dGF0ZXMgdnMuIGdyZWF0ZXIgZWZmZWN0aXZlIHRoZXJtYWwgYnVkZ2V0IHdlCj4gYWxsb3cgdGhl IGdvdmVybm9yIHRvIHVzZSBiZWZvcmUgaXQgZXZlbiBjb25zaWRlcnMgdGhyb3R0bGluZy4KCkkn ZCBhZ3JlZSB0aGF0IGRyYXdpbmcgc3VjaCBjb25jbHVzaW9ucyAob3IgdGhlIGNvbmNsdXNpb25z IGZyb20gdGhlCm9wcG9zaXRlIGVuZCBvZiB0aGUgc3BlY3RydW0pIHdvdWxkbid0IGJlIGV4YWN0 bHkgZmFpciBhdCB0aGlzIHBvaW50LgpUaG91Z2gsIElNSE8gaXQncyBpbXBvcnRhbnQgdGhhdCB0 aGUgdGVzdCByZXN1bHRzIG9ic2VydmVkIHNvIGZhcgp3ZXJlbid0IHdvcnNlIHdpdGggdGhlIGFk ZGl0aW9uYWwgc2FtZS12b2x0YWdlLCBsb3dlci1mcmVxdWVuY3kgT1BQcy4KCkluIG90aGVyIHdv cmRzLCBhbGwgSSBldmVyIHNhaWQsIGJhc2ljYWxseSwgaXMgdGhhdCBoYXZpbmcgbW9yZSBncmFu dWxhcgpPUFBzIHNob3VsZCBiZSBoZWxwZnVsIGF0IGJlc3QsIGFuZCBub3QgaGFybWZ1bCBhdCB3 b3JzdC4gIEhvdyBoZWxwZnVsCmlzIHZlcnkgaGFyZCB0byBwcmVkaWN0LCBiZWNhdXNlIGl0IGRl cGVuZHMgb24gYWxsIGtpbmRzIG9mIHRoaW5ncy4KCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCkxpbnV4LXJvY2tjaGlwIG1haWxpbmcgbGlzdApMaW51eC1y b2NrY2hpcEBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21h aWxtYW4vbGlzdGluZm8vbGludXgtcm9ja2NoaXAK