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 45F23C54FB3 for ; Thu, 29 May 2025 18:47:20 +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:In-Reply-To:From:References:Cc:To:Subject: MIME-Version:Date:Message-ID:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=hUb9/5cRpgqM91fDzOuJY3qaNA/mzFt3uKydfkTZgXc=; b=hBgdEmKR8vgr/w OIY5ENLxJhGdPfO1o5TdA5Uuelqir2bAuLEVgiDT9awlB0y4wZWn34uPIyc54fhZIDvXh2UCO2YDm 2MuDLvRywmtugSFdp4S565icSfAlWpc43gLBOFeVJaioUVjYJnVLf1nCmrWumibDmgnGL4xukAvSE 5tHUUWWs03b4Q+eqXfWa0BIIb+0VxbJOLM5sCNaeGArt/tr4xJYHNe141Ege/WM+uXBVNhaDKBrfe XZ5WQ0WHJKCxIra9Bog0FpJWE+9ZQK5Xq6Rlxgh4JnevQ4GNPhjve+GD1VilBe6D8JlUV1FcYSC3S LDkp64/FcJ/uyJke7aQg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98.2 #2 (Red Hat Linux)) id 1uKiHW-0000000GO25-1uwd; Thu, 29 May 2025 18:47:10 +0000 Received: from out-170.mta0.migadu.com ([2001:41d0:1004:224b::aa]) by bombadil.infradead.org with esmtps (Exim 4.98.2 #2 (Red Hat Linux)) id 1uKiFN-0000000GNsF-3mer for linux-riscv@lists.infradead.org; Thu, 29 May 2025 18:45:00 +0000 Message-ID: <2bac252c-883c-4f8a-9ae1-283660991520@linux.dev> DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1748544285; 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=D/pRYWDTxiG5vCNFI6iYMlgTAzPGEOIy86Z1rIh0MtM=; b=t6mBC+6Vi9P2ogn7IGSjVpOGG1D0PLvPIsnclmwguKD8GZzY2EEBw/0/oi4M/Egs3o+WNK HH1NOZh09QJrVEtpDa095Akv9MrBQAzRDOB0r2l/HaMNV1G8fR9FrQ3JwJG9336cGDa+IH hJYSzpx0d4G0hPc4CWp7pb1SJGYRCiM= Date: Thu, 29 May 2025 11:44:38 -0700 MIME-Version: 1.0 Subject: Re: [PATCH v3 9/9] RISC-V: KVM: Upgrade the supported SBI version to 3.0 To: =?UTF-8?B?UmFkaW0gS3LEjW3DocWZ?= , Andrew Jones Cc: Anup Patel , Will Deacon , Mark Rutland , Paul Walmsley , Palmer Dabbelt , Mayuresh Chitale , linux-riscv@lists.infradead.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, kvm@vger.kernel.org, kvm-riscv@lists.infradead.org, linux-riscv References: <20250522-pmu_event_info-v3-0-f7bba7fd9cfe@rivosinc.com> <20250522-pmu_event_info-v3-9-f7bba7fd9cfe@rivosinc.com> <61627296-6f94-45ea-9410-ed0ea2251870@linux.dev> <20250526-224478e15ee50987124a47ac@orel> <20250528-ff9f6120de39c3e4eefc5365@orel> <1169138f-8445-4522-94dd-ad008524c600@linux.dev> Content-Language: en-US X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. From: Atish Patra In-Reply-To: X-Migadu-Flow: FLOW_OUT X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250529_114458_075938_A826CADD X-CRM114-Status: GOOD ( 41.59 ) X-BeenThere: linux-riscv@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: 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-riscv" Errors-To: linux-riscv-bounces+linux-riscv=archiver.kernel.org@lists.infradead.org Ck9uIDUvMjkvMjUgMzoyNCBBTSwgUmFkaW0gS3LEjW3DocWZIHdyb3RlOgo+IEkgb3JpZ2luYWxs eSBnYXZlIHVwIG9uIHRoZSBpZGVhLCBidXQgSSBmZWVsIGtpbmRhIGJhZCBmb3IgRHJldyBub3cs IHNvCj4gdHJ5aW5nIGFnYWluOgoKSSBhbSBzb3JyeSBpZiBzb21lIG9mIG15IHJlcGxpZXMgY2Ft ZSBhY3Jvc3MgaW4gdGhlIHdyb25nIHdheS4gVGhhdCB3YXMgCm5ldmVyCnRoZSBpbnRlbnRpb24u CgoKPiAyMDI1LTA1LTI4VDEyOjIxOjU5LTA3OjAwLCBBdGlzaCBQYXRyYSA8YXRpc2gucGF0cmFA bGludXguZGV2PjoKPj4gT24gNS8yOC8yNSA4OjA5IEFNLCBBbmRyZXcgSm9uZXMgd3JvdGU6Cj4+ PiBPbiBXZWQsIE1heSAyOCwgMjAyNSBhdCAwNzoxNjoxMUFNIC0wNzAwLCBBdGlzaCBQYXRyYSB3 cm90ZToKPj4+PiBPbiA1LzI2LzI1IDQ6MTMgQU0sIEFuZHJldyBKb25lcyB3cm90ZToKPj4+Pj4g T24gTW9uLCBNYXkgMjYsIDIwMjUgYXQgMTE6MDA6MzBBTSArMDIwMCwgUmFkaW0gS3LEjW3DocWZ IHdyb3RlOgo+Pj4+Pj4gMjAyNS0wNS0yM1QxMDoxNjoxMS0wNzowMCwgQXRpc2ggUGF0cmEgPGF0 aXNoLnBhdHJhQGxpbnV4LmRldj46Cj4+Pj4+Pj4gT24gNS8yMy8yNSA2OjMxIEFNLCBSYWRpbSBL csSNbcOhxZkgd3JvdGU6Cj4+Pj4+Pj4+IDIwMjUtMDUtMjJUMTI6MDM6NDMtMDc6MDAsIEF0aXNo IFBhdHJhIDxhdGlzaHBAcml2b3NpbmMuY29tPjoKPj4+Pj4+Pj4+IFVwZ3JhZGUgdGhlIFNCSSB2 ZXJzaW9uIHRvIHYzLjAgc28gdGhhdCBjb3JyZXNwb25kaW5nIGZlYXR1cmVzCj4+Pj4+Pj4+PiBj YW4gYmUgZW5hYmxlZCBpbiB0aGUgZ3Vlc3QuCj4+Pj4+Pj4+Pgo+Pj4+Pj4+Pj4gU2lnbmVkLW9m Zi1ieTogQXRpc2ggUGF0cmEgPGF0aXNocEByaXZvc2luYy5jb20+Cj4+Pj4+Pj4+PiAtLS0KPj4+ Pj4+Pj4+IGRpZmYgLS1naXQgYS9hcmNoL3Jpc2N2L2luY2x1ZGUvYXNtL2t2bV92Y3B1X3NiaS5o IGIvYXJjaC9yaXNjdi9pbmNsdWRlL2FzbS9rdm1fdmNwdV9zYmkuaAo+Pj4+Pj4+Pj4gLSNkZWZp bmUgS1ZNX1NCSV9WRVJTSU9OX01BSk9SIDIKPj4+Pj4+Pj4+ICsjZGVmaW5lIEtWTV9TQklfVkVS U0lPTl9NQUpPUiAzCj4+Pj4+Pj4+IEkgdGhpbmsgaXQncyB0aW1lIHRvIGFkZCB2ZXJzaW9uaW5n IHRvIEtWTSBTQkkgaW1wbGVtZW50YXRpb24uCj4+Pj4+Pj4+IFVzZXJzcGFjZSBzaG91bGQgYmUg YWJsZSB0byBzZWxlY3QgdGhlIGRlc2lyZWQgU0JJIHZlcnNpb24gYW5kIEtWTSB3b3VsZAo+Pj4+ Pj4+PiB0ZWxsIHRoZSBndWVzdCB0aGF0IG5ld2VyIGZlYXR1cmVzIGFyZSBub3Qgc3VwcG9ydGVk Lgo+Pj4+PiBXZSBuZWVkIG5ldyBjb2RlIGZvciB0aGlzLCBidXQgaXQncyBhIGdvb2QgaWRlYS4K Pj4+Pj4KPj4+Pj4+PiBXZSBjYW4gYWNoaWV2ZSB0aGF0IHRocm91Z2ggb25lcmVnIGludGVyZmFj ZSBieSBkaXNhYmxpbmcgaW5kaXZpZHVhbCBTQkkKPj4+Pj4+PiBleHRlbnNpb25zLgo+Pj4+Pj4+ IFdlIGNhbiBleHRlbmQgdGhlIGV4aXN0aW5nIG9uZXJlZyBpbnRlcmZhY2UgdG8gZGlzYWJsZSBh IHNwZWNpZmljIFNCSQo+Pj4+Pj4+IHZlcnNpb24gZGlyZWN0bHkKPj4+Pj4+PiBpbnN0ZWFkIG9m IGluZGl2aWR1YWwgb25lcyB0byBzYXZlIHRob3NlIElPQ1RMIGFzIHdlbGwuCj4+Pj4+PiBZZXMs IEkgYW0gYWxsIGluIGZhdm9yIG9mIGxldHRpbmcgdXNlcnNwYWNlIHByb3ZpZGUgYWxsIHZhbHVl cyBpbiB0aGUKPj4+Pj4+IEJBU0UgZXh0ZW5zaW9uLgo+Pj4+IFdlIGFscmVhZHkgc3VwcG9ydCB2 ZW5kb3JpZC9hcmNoaWQvaW1waWQgdGhyb3VnaCBvbmUgcmVnLiBJIHRoaW5rIHdlIGp1c3QKPj4+ PiBuZWVkIHRvIGFkZCB0aGUgU0JJIHZlcnNpb24gc3VwcG9ydCB0byB0aGF0IHNvIHRoYXQgdXNl ciBzcGFjZSBjYW4gc2V0IGl0Lgo+Pj4+Cj4+Pj4+IFRoaXMgaXMgY292ZXJlZCBieSB5b3VyIHJl Y2VudCBwYXRjaCB0aGF0IHByb3ZpZGVzIHVzZXJzcGFjZV9zYmkuCj4+Pj4gV2h5IGRvIHdlIG5l ZWQgdG8gaW52ZW50IG5ldyBJT0NUTCBmb3IgdGhpcyA/IE9uY2UgdGhlIHVzZXIgc3BhY2Ugc2V0 cyB0aGUKPj4+PiBTQkkgdmVyc2lvbiwgS1ZNIGNhbiBlbmZvcmNlIGl0Lgo+Pj4gSWYgYW4gU0JJ IHNwZWMgdmVyc2lvbiBwcm92aWRlcyBhbiBleHRlbnNpb24gdGhhdCBjYW4gYmUgZW11bGF0ZWQg YnkKPj4+IHVzZXJzcGFjZSwgdGhlbiB1c2Vyc3BhY2UgY291bGQgY2hvb3NlIHRvIGFkdmVydGlz ZSB0aGF0IHNwZWMgdmVyc2lvbiwKPj4+IGltcGxlbWVudCBhIEJBU0UgcHJvYmUgZnVuY3Rpb24g dGhhdCBhZHZlcnRpc2VzIHRoZSBleHRlbnNpb24sIGFuZAo+Pj4gaW1wbGVtZW50IHRoZSBleHRl bnNpb24sIGV2ZW4gaWYgdGhlIEtWTSB2ZXJzaW9uIHJ1bm5pbmcgaXMgb2xkZXIKPj4+IGFuZCB1 bmF3YXJlIG9mIGl0LiBCdXQsIGluIG9yZGVyIHRvIGRvIHRoYXQsIHdlIG5lZWQgS1ZNIHRvIGV4 aXQgdG8KPj4+IHVzZXJzcGFjZSBmb3IgYWxsIHVua25vd24gU0JJIGNhbGxzIGFuZCB0byBhbGxv dyBCQVNFIHRvIGJlIG92ZXJyaWRkZW4KPj4gWW91IG1lYW4gb25seSB0aGUgdmVyc2lvbiBmaWVs ZCBpbiBCQVNFIC0gQ29ycmVjdCA/Cj4gTm8sICJCQVNFIHByb2JlIGZ1bmN0aW9uIiBpcyB0aGUg c2JpX3Byb2JlX2V4dGVuc2lvbigpIGVjYWxsLgo+Cj4+PiBieSB1c2Vyc3BhY2UuIFRoZSBuZXcg S1ZNIENBUCBpb2N0bCBhbGxvd3Mgb3B0aW5nIGludG8gdGhhdCBuZXcgYmVoYXZpb3IuCj4+IEJ1 dCB3aHkgd2UgbmVlZCBhIG5ldyBJT0NUTCBmb3IgdGhhdCA/IFdlIGNhbiBhY2hpZXZlIHRoYXQg d2l0aCBleGlzdGluZwo+PiBvbmUgcmVnIGludGVyZmFjZSB3aXRoIGltcHJvdmVtZW50cy4KPiBJ dCdzIGFuIGV4aXN0aW5nIElPQ1RMIHdpdGggYSBuZXcgZGF0YSBwYXlsb2FkLCBidXQgSSBjYW4g ZWFzaWx5IHVzZQo+IE9ORV9SRUcgaWYgeW91IHdhbnQgdG8gZG8gZXZlcnl0aGluZyB0aHJvdWdo IHRoYXQuCj4KPiBLVk0gZG9lc24ndCByZWFsbHkgbmVlZCBhbnkgb3RoZXIgSU9DVEwgdGhhbiBP TkVfUkVHcywgaXQncyBqdXN0Cj4gc29tZXRpbWVzIG1vcmUgcmVhc29uYWJsZSB0byB1c2UgYSBk aWZmZXJlbnQgSU9DVEwsIGxpa2UgRU5BQkxFX0NBUC4KPgo+Pj4gVGhlIG9sZCBLVk0gd2l0aCBu ZXcgVk1NIGNvbmZpZ3VyYXRpb24gaXNuJ3QgdG90YWxseSBmYXItZmV0Y2hlZC4gV2hpbGUKPj4+ IGhvc3Qga2VybmVscyB0ZW5kIHRvIGdldCB1cGRhdGVkIHJlZ3VsYXJseSB0byBpbmNsdWRlIHNl Y3VyaXR5IGZpeGVzLAo+Pj4gZW50ZXJwcmlzZSBrZXJuZWxzIHRlbmQgdG8gc3RvcCBhZGRpbmcg ZmVhdHVyZXMgYXQgc29tZSBwb2ludCBpbiBvcmRlcgo+Pj4gdG8gbWF4aW1pemUgc3RhYmlsaXR5 LiBXaGlsZSBlbnRlcnByaXNlIFZNTXMgd291bGQgYWxzbyBldmVudHVhbGx5IHN0b3AKPj4+IGFk ZGluZyBmZWF0dXJlcywgZW50ZXJwcmlzZSBjb25zdW1lcnMgYXJlIGFsd2F5cyBmcmVlIHRvIHVz ZSB0aGVpciBvd24KPj4+IFZNTXMgKGF0IHRoZWlyIG93biByaXNrKS4gU28sIHRoZXJlJ3MgYSBy ZWFsIGNoYW5jZSB3ZSBjb3VsZCBoYXZlCj4+IEkgdGhpbmsgd2UgYXJlIHllYXJzIGF3YXkgZnJv bSB0aGF0IGhhcHBlbmluZyAoaWYgaXQgaGFwcGVucykuIE15Cj4+IHN1Z2dlc3Rpb24gd2FzIG5v dCB0bwo+PiB0cnkgdG8gYnVpbGQgYSB3b3JsZCB3aGVyZSBubyBib2R5IGxpdmVzIDspLiBXaGVu IHdlIGdldCB0byB0aGF0Cj4+IHNjZW5hcmlvLCB0aGUgZGVmYXVsdCBLVk0KPj4gc2hpcHBlZCB3 aWxsIGhhdmUgbWFueSBleHRlbnNpb24gaW1wbGVtZW50ZWQuIFNvIHRoZXJlIHdvbid0IGJlIG11 Y2gKPj4gYWR2YW50YWdlIHRvCj4+IHJlaW1wbGVtZW50IHRoZW0gaW4gdGhlIHVzZXIgc3BhY2Uu IFdlIGNhbiBhbHNvIHRha2UgYW4gaW5mb3JtZWQKPj4gZGVjaXNpb24gYXQgdGhhdCB0aW1lCj4+ IGlmIHRoZSBjdXJyZW50IHNlbGVjdGl2ZSBmb3J3YXJkaW5nIGFwcHJvYWNoIGlzIGJldHRlcgo+ IFBsZWFzZSBkb24ndCByZXBlYXQgdGhlIGRlc2lnbiBvZiBTVVNQL1NSU1QvREJDTi4KPiBTZWVp bmcgdGhlbSBpcyBvbmUgb2YgdGhlIHJlYXNvbnMgd2h5IEkgcHJvcG9zZWQgdGhlIG5ldyBpbnRl cmZhY2UuCj4KPiAiQmxpbmRseSIgZm9yd2FyZGluZyBEQkNOIHRvIHVzZXJzcGFjZSBpcyBldmVu IGEgbWlub3Igb3B0aW1pemF0aW9uLiA6KQo+Cj4+ICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3Igd2UgbmVlZCB0bwo+PiBibGluZGx5IGZv cndhcmQgYW55Cj4+IHVua25vd24gU0JJIGNhbGxzIHRvIHRoZSB1c2VyIHNwYWNlLgo+IFllcywg S1ZNIGhhcyB0byBkbyB3aGF0IHVzZXJwYWNlIGNvbmZpZ3VyZXMgaXQgdG8gZG8uCj4KPiBJIGRv bid0IHRoaW5rIHRoYXQgaW1wbGVtZW50aW5nIHVuc3VwcG9ydGVkIFNCSSBleHRlbnNpb25zIGlu IEtWTSBpcwo+IGltcG9ydGFudCAtLSB0aGV5IHNob3VsZCBub3QgYmUgYSBob3QgcGF0aC4KPgo+ Pj4gZGVwbG95bWVudHMgd2l0aCBvbGRlciwgc3RhYmxlIEtWTSB3aGVyZSB1c2VycyB3YW50IHRv IGVuYWJsZSBsYXRlciBTQkkKPj4+IGV4dGVuc2lvbnMsIGFuZCwgaW4gc29tZSBjYXNlcywgdGhh dCBzaG91bGQgYmUgcG9zc2libGUgYnkganVzdCB1cGRhdGluZwo+Pj4gdGhlIFZNTSAtLSBidXQg b25seSBpZiBLVk0gaXMgb25seSBhY3RpbmcgYXMgYW4gU0JJIGltcGxlbWVudGF0aW9uCj4+PiBh Y2NlbGVyYXRvciBhbmQgbm90IGFzIGEgdXNlcnNwYWNlIFNCSSBpbXBsZW1lbnRhdGlvbiBnYXRl a2VlcGVyLgo+PiBCdXQgc29tZSBvZiB0aGUgU0JJIGV4dGVuc2lvbnMgYXJlIHNvIGZ1bmRhbWVu dGFsIHRoYXQgaXQgbXVzdCBiZQo+PiBpbXBsZW1lbnRlZCBpbiBLVk0KPj4gZm9yIHZhcmlvdXMg cmVhc29ucyBwb2ludGVkIGJ5IEFudXAgb24gb3RoZXIgdGhyZWFkLgo+IE5vLCBTQkkgZG9lcyBu b3QgaGF2ZSB0byBiZSBpbXBsZW1lbnRlZCBpbiBLVk0gYXQgYWxsLgo+Cj4gV2UgZG8gaGF2ZSBh IGRlZXAgZGlzYWdyZWVtZW50IG9uIHdoYXQgaXMgdmlydHVhbGl6YXRpb24gYW5kIHRoZSByb2xl IG9mCj4gS1ZNIGluIGl0LiAgSSB0aGluayB0aGF0IHVzZXJzcGFjZSB3YW50cyBhIGdlbmVyaWMg SVNBIGFjY2VsZXJhdG9yLgoKSSB0aGluayB0aGUgZGlzYWdyZWVtZW50IGlzIHRoZSByb2xlIG9m IFNCSSBpbiBLVk0gdmlydHVhbGl6YXRpb24gcmF0aGVyIAp0aGFuCmEgZ2VuZXJpYyB2aXJ0dWFs aXphdGlvbiBhbmQgdGhlIHJvbGUgb2YgS1ZNIGluIGl0LiBJIGNvbXBsZXRlbHkgYWdyZWUgCnRo YXQgS1ZNIHNob3VsZCBhY3QgYXMgYW4gYWNjZWxlcmF0b3IgYW5kIGRlZmVyIHRoZSBjb250cm9s IHRvIHRoZSB1c2VyIApzcGFjZSBpbiBtb3N0IG9mIHRoZSBjYXNlcwpzdWNoIGUuZyBJL08gb3Bl cmF0aW9ucyBvciBzeXN0ZW0gcmVsYXRlZCBmdW5jdGlvbmFsaXRpZXMuIEhvd2V2ZXIsIFNCSSAK c3BlY2lmaWNhdGlvbiBzb2x2ZXMKbXVjaCB3aWRlciBwcm9ibGVtcyB0aGFuIHRob3NlLiBCcm9h ZGx5IHdlIGNhbiBjYXRlZ29yaXplIFNCSSAKZnVuY3Rpb25hbGl0aWVzIGludG8gdGhlIGZvbGxv d2luZwphcmVhcwoKMS4gQnJpZGdpbmcgSVNBIEdBUAoyLiBIaWdoZXIgUHJpdmlsZWdlIEFzc2lz dGFuY2UKMy4gVmlydHVhbGl6YXRpb24KNC4gUGxhdGZvcm0gYWJzdHJhY3Rpb24KNS4gQ29uZmlk ZW50aWFsIGNvbXB1dGluZwoKRm9yICMxLCAjMyBhbmQgIzUsIEkgYmVsaWV2ZSB1c2VyIHNwYWNl IHNob3VsZG4ndCBiZSBpbnZvbHZlZCBpbiAKaW1wbGVtZW50YXRpb24Kc29tZSBvZiB0aGVtIGFy ZSBpbiBob3QgcGF0aCBhcyB3ZWxsLiBGb3IgIzQgYW5kICMyLCB0aGVyZSBhcmUgc29tZSAKb3Bw b3J0dW5pdGllcyB3aGljaApjYW4gYmUgaW1wbGVtZW50ZWQgaW4gdXNlciBzcGFjZSBkZXBlbmRp bmcgb24gdGhlIGV4YWN0IG5lZWQuIEkgYW0gc3RpbGwgCm5vdCBjbGVhciB3aGF0IGlzIHRoZSBl eGFjdAptb3RpdmF0aW9uIC9yaWdodCBub3cvIHRvIHB1cnN1ZSBzdWNoIGEgcGF0aC4gTWF5IGJl IEkgbWlzc2VkIHNvbWV0aGluZy4KQXMgcGVyIG15IHVuZGVyc3RhbmRpbmcgZnJvbSBvdXIgZGlz Y3Vzc2lvbiB0aHJlYWRzLCB0aGVyZSBhcmUgdHdvIHVzZSAKY2FzZXMgcG9zc2libGUKCjEuIHVz ZXJzcGFjZSB3YW50cyB0byB1cGRhdGUgbW9yZSBzdGF0ZXMgaW4gSFNNLiBXaGF0IGFyZSB0aGUg c3RhdGVzIAp1c2VyIHNwYWNlIHNob3VsZCBjYXJlIGFib3V0IHNjb3VudGVyZW4gKGZpeGVkIGFs cmVhZHkgaW4gdXNwdHJlYW0pID8KMi4gVk1NIHZzIEtWTSB2ZXJzaW9uIGRpZmZlcmVuY2UgLSB0 aGlzIG1heSBiZSB0cnVlIGluIHRoZSBmdXR1cmUgCmRlcGVuZGluZyBvbiB0aGUgc3BlZWQgb2Yg UklTQy1WIHZpcnR1YWxpemF0aW9uIGFkb3B0aW9uIGluIHRoZSBpbmR1c3RyeS4KQnV0IHdlIGFy ZSBkZWZpbml0ZWx5IG5vdCB0aGVyZSB5ZXQuIFBsZWFzZSBsZXQgbWUga25vdyBpZiBJIAptaXN1 bmRlcnN0b29kIGFueSB1c2UgY2FzZXMuCgo+IEV2ZW4gaWYgdXNlcnNwYWNlIHdhbnRzIFNCSSBm b3IgdGhlIE0tbW9kZSBpbnRlcmZhY2UsIHNlY3VyaXR5IG1pbmRlZApUaGlzIGlzIHByb2JhYmx5 IGEgM3JkIG9uZSA/IFdoeSB3ZSB3YW50IE0tbW9kZSBpbnRlcmZhY2UgaW4gdGhlIHVzZXIgCnNw YWNlID8KPiB1c2Vyc3BhY2UgYWltcyBmb3IgYXMgbGl0dGxlIGtlcm5lbCBjb2RlIGFzIHBvc3Np YmxlLgoKV2UgdHJ1c3QgVk1NIGNvZGUgbW9yZSB0aGFuIEtWTSBjb2RlID8KCj4gVXNlcnNwYWNl IG1pZ2h0IHdhbnQgdG8gYWNjZWxlcmF0ZSBzb21lIFNCSSBleHRlbnNpb24gaW4gS1ZNLCBidXQg aXQKPiBzaG91bGQgbm90IGJlIEtWTSB3aG8gZGVjaWRlcyB3aGF0IHVzZXJzcGFjZSB3YW50cy4K Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmxpbnV4LXJp c2N2IG1haWxpbmcgbGlzdApsaW51eC1yaXNjdkBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9s aXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGludXgtcmlzY3YK