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 09084C636D4 for ; Wed, 15 Feb 2023 18:10:27 +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=IyyDMZLO7KU8LejNykJqwBNphCZPGKX83icjiMmWsDI=; b=Z4dS7UKHvCioSc WtSglsvQzHG5TBAD0xWhwjfnLYUA1Zd7cI+wb8Jl+i7PcDY74HnDqBs2KQFVWA++l/qcn+nI0H7Mr 8J1htwO9rphpl+hMyH+3MTIc2z5hKqs35LevHjhtVdX6bWH+AeOdn8n8e0X+/PZ9M7t1336a779uv 8JUTPHtwtToWfYxXNxooLjDsXIkBmNOlq4rL+8bwfzO0mbyST2NekLZ1JkzV/3jYxrEdkWuC8esbM XSCBezu6uAO9YCh38z3HUvwR7MK56fhzQMfCq91ycrVLVNGTnZ256lWNcjWUfvYkTTwauxdWdxrbG alZ25NnFrQZda8w+k9tg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1pSMDe-006nsR-Cv; Wed, 15 Feb 2023 18:09:26 +0000 Received: from mail-pj1-x102c.google.com ([2607:f8b0:4864:20::102c]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1pSMDa-006nrz-V3 for linux-arm-kernel@lists.infradead.org; Wed, 15 Feb 2023 18:09:24 +0000 Received: by mail-pj1-x102c.google.com with SMTP id oa11-20020a17090b1bcb00b002341a2656e5so2650226pjb.1 for ; Wed, 15 Feb 2023 10:09:22 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=FkNyi7VRTQ0Z8CUhgejVvvpeDEJD1m33wT82rvAeMGg=; b=bHh1knHWq1/slihyOz1C4UkGKUfHBVZmY2Gq7bH8w+qBoMSiQvgDhxHSCXX4bIJoNT J3+bUZJ8dBpA74lvr8rdhLuBoLs2TCuLMnHHmQLmIXsFGyMq27xSDB2mJ/XcpsodPoQ/ /TAf2NgLHuKBoJ0n8MWX5aO5lwYKdDVAr4DYPHtLJ3C6MccnK/k2tLHnC405XRtBT6vx sseyhJses8zpisW/GbYh5gIK95XbEF2usrWM1fhRbQjGTc7TU/y3Lxj6tq3fhlObHHQR puoFD0S3ou/DG4T9j8XzOrKUDVOX0bnfquxjnkK0bFwAzlex4HaZ4+BBg3qT2tz1MT2a 91TQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=FkNyi7VRTQ0Z8CUhgejVvvpeDEJD1m33wT82rvAeMGg=; b=kuOkKi7lXuV7LE2bSZ1SFvy4n9CRC3GHhxft/v8NuRpWE2oNL/tzKpvU4ysVZ1mByr AmbqNxoQ6dclZnRBpZ92xLnBiVnA++xSg+/PA7Vcbh4ePpbi+xkJgctGI5j3cfpoNVTc aRor0aQcqdiV26c+bI072Guv91AReldwezdISrd2rUCAAQh1RZsbyHWYsQo6xtg9onRd vgKAVLJPD+bpB7PAomhBKMQ+AwqFowsYLr4Iad7CCKfzlfPb3EEwAmD8rtBgVUUiiigo qqOUVmlNFAuFob+xe+mDb2QFNy1pNQKUOrH3eSGSkgMFtFmWpQUUvk7z1ItOqyzJbArR Fz3Q== X-Gm-Message-State: AO0yUKWEk0WBpzaX5kLSVoxgMcbqjJSJ0cFwd6LO9TOafRxS+eYhN2GZ AKsH/z+GVlPNQP7MzggkdgU= X-Google-Smtp-Source: AK7set/t9ZD7xNInjFvKkvot6qgjlcKUxuNnLymMV7HTLa+cTaFilFhJ67u36fgQ7IfxKi4CWWwQsQ== X-Received: by 2002:a17:90b:3806:b0:22c:7639:a910 with SMTP id mq6-20020a17090b380600b0022c7639a910mr3844614pjb.25.1676484561328; Wed, 15 Feb 2023 10:09:21 -0800 (PST) Received: from [10.67.48.245] ([192.19.223.252]) by smtp.googlemail.com with ESMTPSA id ga6-20020a17090b038600b00232cd9ff0ffsm1778006pjb.15.2023.02.15.10.09.19 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 15 Feb 2023 10:09:20 -0800 (PST) Message-ID: <1911746a-5d97-27ef-e714-1ca21e6ab987@gmail.com> Date: Wed, 15 Feb 2023 10:09:18 -0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.7.1 Subject: Re: [PATCH 3/3] irqchip/gic-v3: Save and restore distributor and re-distributor Content-Language: en-US To: Sudeep Holla , Marc Zyngier , Florian Fainelli Cc: linux-arm-kernel@lists.infradead.org, Thomas Gleixner , Oliver Upton , "open list:IRQCHIP DRIVERS" , Broadcom internal kernel review list References: <20230214233426.2994501-1-f.fainelli@gmail.com> <20230214233426.2994501-4-f.fainelli@gmail.com> <87o7pvz78z.wl-maz@kernel.org> <20230215121050.d57tnfh7wzpyqzti@bogus> <86ttznxa9n.wl-maz@kernel.org> <20230215151048.xxmpvfre2xdngowr@bogus> From: Florian Fainelli In-Reply-To: <20230215151048.xxmpvfre2xdngowr@bogus> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230215_100923_044737_45FC4177 X-CRM114-Status: GOOD ( 49.62 ) 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-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org T24gMi8xNS8yMyAwNzoxMCwgU3VkZWVwIEhvbGxhIHdyb3RlOgo+IE9uIFdlZCwgRmViIDE1LCAy MDIzIGF0IDAyOjQwOjA0UE0gKzAwMDAsIE1hcmMgWnluZ2llciB3cm90ZToKPj4gT24gV2VkLCAx NSBGZWIgMjAyMyAxMjoxMDo1MCArMDAwMCwKPj4gU3VkZWVwIEhvbGxhIDxzdWRlZXAuaG9sbGFA YXJtLmNvbT4gd3JvdGU6Cj4+Pgo+Pj4gT24gV2VkLCBGZWIgMTUsIDIwMjMgYXQgMDg6MDI6MjBB TSArMDAwMCwgTWFyYyBaeW5naWVyIHdyb3RlOgo+Pj4+IE9uIFR1ZSwgMTQgRmViIDIwMjMgMjM6 MzQ6MjYgKzAwMDAsCj4+Pj4gRmxvcmlhbiBGYWluZWxsaSA8Zi5mYWluZWxsaUBnbWFpbC5jb20+ IHdyb3RlOgo+Pj4+Pgo+Pj4+PiBPbiBwbGF0Zm9ybXMgaW1wbGVtZW50aW5nIFN1c3BlbmQgdG8g UkFNIHdoZXJlIHRoZSBHSUMgbG9zZXMgcG93ZXIsIHdlCj4+Pj4+IGFyZSBub3QgcHJvcGVybHkg c2F2aW5nIGFuZCByZXN0b3JpbmcgdGhlIEdJQyBkaXN0cmlidXRvciBhbmQKPj4+Pj4gcmUtZGlz dHJpYnV0b3IgcmVnaXN0ZXJzIHRodXMgbGVhZGluZyB0byB0aGUgc3lzdGVtIHJlc3VtaW5nIHdp dGhvdXQgYW55Cj4+Pj4+IGZ1bmN0aW9uYWwgaW50ZXJydXB0cy4KPj4+Pgo+Pj4+IFRoZSByZWFs IHF1ZXN0aW9uIGlzICp3aHkqIHdlIG5lZWQgYW55IG9mIHRoaXMuIE9uIGFueSBkZWNlbnQgc3lz dGVtLAo+Pj4+IHRoaXMgaXMgdGhlIGZpcm13YXJlJ3Mgam9iLiAgSXQgd2FzICpuZXZlciogdGhl IE9TIEdJQyBkcml2ZXIncyBqb2IKPj4+PiB0aGUgZmlyc3QgcGxhY2UuCj4+Pj4KPj4+Cj4+PiBD b21wbGV0ZWx5IGFncmVlZCBvbiB0aGUgcG9pbnRzIHlvdSBoYXZlIG1hZGUgaGVyZSwgbm8gZGlz YWdyZWVtZW50Lgo+Pj4gSG93ZXZlciBJIHdvdWxkIGxpa2UgdG8gaXRlcmF0ZSBzb21lIG9mIHRo ZSBhcmd1bWVudHMvY29uY2VybnMgdGhlCj4+PiBmaXJtd2FyZSB0ZWFtcyBJIGhhdmUgaW50ZXJh Y3RlZCBpbiB0aGUgcGFzdCBoYXZlIG1hZGUgYXJvdW5kIHRoaXMuCj4+PiBBbmQgdGhpcyBpcyB3 aGlsZSBhZ28oY291cGxlIG9mIHllYXJzKSBhbmQgdGhleSBtYXkgaGF2ZSBkaWZmZXJlbnQKPj4+ IHZpZXdzLiBJIGFtIHJlcGVhdGluZyB0aGVtIGFzIEkgdGhpbmsgaXQgbWF5IGJlIHN0aWxsIHZh bGlkIG9uIHNvbWUKPj4+IHN5c3RlbXMgc28gdGhhdCB3ZSBjYW4gbWFrZSBzb21lIHN1Z2dlc3Rp b25zIGlmIHdlIGhhdmUgaGVyZS4KPj4+Cj4+Pj4gSW1wb3J0YW50bHksIHRoZSBPUyBjYW5ub3Qg c2F2ZSB0aGUgZnVsbCBzdGF0ZTogYSBsYXJnZSBwYXJ0IG9mIGl0IGlzCj4+Pj4gb25seSBhY2Nl c3NpYmxlIHZpYSBzZWN1cmUsIGFuZCBMaW51eCBkb2Vzbid0IHJ1biBpbiBzZWN1cmUgbW9kZS4g SG93Cj4+Pj4gZG8geW91IHJlc3RvcmUgdGhlIGdyb3VwIGNvbmZpZ3VyYXRpb24sIGZvciBleGFt cGxlPyBPaCB3YWl0LCB5b3UKPj4+PiBkb24ndCBldmVuIHNhdmUgaXQuCj4+Pj4KPj4+Cj4+PiBB Z3JlZWQsIHdlIGNhbid0IG1hbmFnZSBzZWN1cmUgc2lkZSBjb25maWd1cmF0aW9ucy4gQnV0IG9u ZSBvZiB0aGUgY29uY2Vybgo+Pj4gd2FzIGFib3V0IHRoZSBsYXJnZSBtZW1vcnkgZm9vdHByaW50 IHRvIHNhdmUgdGhlIGxhcmdlciBub24tc2VjdXJlIEdJQwo+Pj4gY29udGV4dCBpbiB0aGUgc21h bGxlciBzZWN1cmUgbWVtb3J5Lgo+Pj4KPj4+IE9uZSBvZiB0aGUgc3VnZ2VzdGlvbiBhdCB0aGUg dGltZSB3YXMgdG8gY2FydmUgb3V0IGEgY2h1bmsgb2Ygbm9uLXNlY3VyZQo+Pj4gbWVtb3J5IGFu ZCBsZXQgdGhlIHNlY3VyZSBzaWRlIHVzZSB0aGUgc2FtZSBmb3IgY29udGV4dCBzYXZlIGFuZCBy ZXN0b3JlLgo+Pj4gTm90IHN1cmUgaWYgdGhpcyB3YXMgdHJpZWQgb3V0IGVzcGVjaWFsbHkgZm9y IHRoZSBHSUMuIEkgbWF5IG5lZWQgdG8KPj4+IGNoYXNlIHRoYXQgd2l0aCB0aGUgY29uY2VybmVk IHRlYW1zLgo+Pgo+PiBUaGUgbWFpbiBpc3N1ZSBpcyB0aGF0IHlvdSBzdGlsbCBuZWVkIHNlY3Vy ZSBtZW1vcnkgdG8gc2F2ZSB0aGUgc2VjdXJlCj4+IHN0YXRlLCBhcyBsZWF2aW5nIGl0IGluIE5T IG1lbW9yeSB3b3VsZCBiZSBhbiBpbnRlcmVzdGluZyBhdHRhY2sKPj4gdmVjdG9yISBPdGhlciB0 aGFuIHRoYXQsIEkgc2VlIG5vIGlzc3VlIHdpdGggRlcgY2FydmluZyBvdXQgdGhlIG1lbW9yeQo+ PiBpdCBuZWVkcyB0byBzYXZlL3Jlc3RvcmUgdGhlIE5TIHN0YXRlIG9mIHRoZSBHSUMuCj4+Cj4g Cj4gWWVzIEkgbWVhbnQgTlMgbWVtb3J5IGZvciBvbmx5IE5TIHN0YXRlIG9mIEdJQy4KClRoZSBz ZWN1cmUgc3RhdGUgb2YgdGhlIEdJQyBpcyBiZWluZyByZS1pbml0aWFsaXplZCBjb21pbmcgb3V0 IG9mIApzdXNwZW5kIHRvIERSQU0gc2luY2UgdGhlIGNoaXAgbG9zdCBpdHMgc3RhdGUsIGluIGZh Y3Qgd2UgY29uZmlndXJlIGl0IAp0aGUgc2FtZSBhcyB3ZSBkaWQgZHVyaW5nIGNvbGQgYm9vdCBh bmQgdGhlbiB0aGUgZmlybXdhcmUgZ29lcyBvbiAKcmUtaW5pdGlhbGl6aW5nIHRoZSB2YXJpb3Vz IHNlY3VyZSBpbnRlcnJ1cHRzIGl0IHVzZXMuCgpUaGUgbm9uLXNlY3VyZSBzdGF0ZSB3YXMgbm90 IGRlYWx0IHdpdGggYnkgdGhlIGZpcm13YXJlLCB3aGljaCBwcm9tcHRlZCAKbWUgdG8gbWltaWNr aW5nIHdoYXQgdGhlIEdJQ3YyIGRyaXZlciBkb2VzIHNpbmNlIHRoZXJlIGlzIGFuIGV4cGVjdGF0 aW9uIApmcm9tIExpbnV4IHRoYXQgaW50ZXJydXB0cyB3aWxsIGJlIHNhdmVkL3Jlc3RvcmVkLgoK PiAKPj4gTm90ZSB0aGF0IHRoaXMgaXNuJ3Qgb25seSB0aGUgKHJlLSlkaXN0cmlidXRvcihzKSBQ UEkvU1BJIHJlZ2lzdGVycy4KPj4gVGhlIExQSSBzZXR1cCBtdXN0IGFsc28gYmUgc2F2ZWQsIGFu ZCB0aGF0IGluY2x1ZGVzIGFsbCB0aGUgSVRTCj4+IHJlZ2lzdGVycy4gSSdtIHN1cnByaXNlZCB0 aGUgRlcgZm9sa3MgYXJlLCBhbGwgb2YgYSBzdWRkZW4sCj4+IGRpc2NvdmVyaW5nIHRoaXMgcmVx dWlyZW1lbnRzLiBJdCBpc24ndCBsaWtlIHRoZSBHSUMgYXJjaGl0ZWN0dXJlIGlzIGEKPj4gbm92 ZWx0eSwgYW5kIHRoZXkgaGF2ZSBoYWQgYW1wbGUgdGltZSB0byByZXZpZXcgdGhlIHNwZWMuLi4K Pj4KPiAKPiBJIHVuZGVyc3RhbmQgeW91ciBjb25jZXJuIGFib3V0IGxhdGUgcmVhbGlzYXRpb24g 8J+YhC4KPiAKPiBBbm90aGVyIGlzc3VlIGluIGdlbmVyYWwgSSBzZWUgd2l0aCByZWZlcmVuY2Ug ZmlybXdhcmUgc3RhY2sobGlrZQo+IFRydXN0ZWQgRmlybXdhcmUgaW4gdGhpcyBjYXNlKSBpcyB0 aGF0IHRoZSByZXF1aXJlbWVudHMgYXJlIGRyaXZlbiBmcm9tCj4gdGhlIHJlZmVyZW5jZSBwbGF0 Zm9ybXMgd2hpY2ggbWF5IG5vdCBoYXZlIHRoaXMgR0lDIHNhdmUvcmVzdG9yZQo+IHJlcXVpcmVt ZW50IGFzIHRoZXkgYXJlIGluIGFsd2F5cyBvbiBkb21haW4gYW5kIGl0IGlzIHRoZW4gbWFkZSBw bGF0Zm9ybQo+IHNwZWNpZmljIHByb2JsZW0gaW4gdGhhdCBwcm9qZWN0IHdoaWNoIG1heSBub3Qg YmUgaWRlYWwgYW5kIG1heSByZXN1bHQKPiBpbiBzb21ld2hhdCBtaXNsZWFkaW5nIGluZGlyZWN0 bHkgb3RoZXIgZmlybXdhcmUgZGV2ZWxvcGVycyB1c2luZyBpdC4KCkkgc3VwcG9zZSBpdCBpcyBz byBvYnZpb3VzIHRoYXQgc2F2aW5nL3Jlc3RvcmluZyBtdXN0IGhhcHBlbiBieSB0cnVzdGVkIApm aXJtd2FyZSB0aGF0IHRoZXJlIGlzIG5vIHBvaW50IGluIHB1dHRpbmcgdGhhdCBpbiBCSUcgQ0FQ SVRBTCBXT1JEUyBmb3IgCnBlb3BsZSB0byBrbm93IGFib3V0IGl0LgoKPiAKPiBBbHNvIHJlbWVt YmVyIHNvbWUgZmlybXdhcmUgZm9sa3MgYXNraW5nIGFib3V0IExQSSBjb250ZXh0LCBJIGFtIG5v dCBzdXJlCj4gaWYgdGhlcmUgd2FzIGFueSB3b3JrIGRvbmUgaW4gdGhhdCBhcmVhLgo+IAo+Pj4K Pj4+IFRoYW5rcyBGbG9yaWFuIGZvciBzdGFydGluZyB0aGlzIHRocmVhZCBhbmQgc29ycnkgdGhh dCBJIGNvdWxkbid0IHJlY29sbGVjdAo+Pj4gbG90cyBvZiB0aGUgaW5mb3JtYXRpb24gd2hlbiB3 ZSBjaGF0dGVkIGluIHRoZSBwcml2YXRlIGFib3V0IHRoaXMuIE1hcmMKPj4+IHJlc3BvbnNlIHRy aWdnZXJlZCBhbGwgdGhlIG1lbW9yeSBiYWNrLgo+Pj4KPj4+PiBTbyB1bmxlc3MgeW91IGhhdmUg YSBzaW5nbGUgc2VjdXJpdHkgc3RhdGUgc3lzdGVtLCB0aGlzIGNhbm5vdAo+Pj4+IHdvcmsuIEFu ZCBhcGFydCBmcm9tIFZNcyAod2hpY2ggYnkgdGhlIHdheSBkbyBub3QgbmVlZCBhbnkgb2YgdGhp cyksCj4+Pj4gdGhlcmUgaXMgbm8gR0lDdjMtYmFzZWQgc3lzdGVtIHdpdGhvdXQgRUwzLiBJZiB5 b3Uga25vdyBvZiBvbmUsIHBsZWFzZQo+Pj4+IGxldCBtZSBrbm93LiBBbmQgaWYgaXQgZXhpc3Rl ZCwgdGhlbiBhbGwgdGhlIHNhdmUvcmVzdG9yZSBzaG91bGQKPj4+PiBoYXBwZW4gb25seSB3aGVu IEdJQ0RfQ1RMUi5EUz09MS4KPj4+Pgo+Pj4KPj4+IFllcywgbm93IEkgcmVtZW1iZXIgdGhlIGRp c2N1c3Npb24gd2UgaGFkIHByb2JhYmx5IGFsbW9zdCA5LTEwIHllYXJzCj4+PiBiYWNrIHdoZW4g SSBmaXJzdCBhZGRlZCB0aGUgQ1BVIFBNIG5vdGlmaWVycyBmb3IgR0lDdjMuIEkgYW0gc3VyZSB3 ZQo+Pj4gd291bGQgaGF2ZSBkaXNjdXNzZWQgdGhpcyBhdC1sZWFzdCBjb3VwbGUgb2YgdGltZXMg YWZ0ZXIgdGhhdC4gWWV0IEkKPj4+IGp1c3QgZ290IGNhcnJpZWQgYXdheSBieSB0aGUgZmFjdCB0 aGF0IEdJQ3YyIGRvZXMgdGhlIHNhdmUvcmVzdG9yZSBhbmQKPj4+IHRoaXMgc2hvdWxkIGFsc28g YmUgcG9zc2libGUuIFNvcnJ5IGZvciB0aGF0Lgo+Pgo+PiBHSUN2MiBpcyBqdXN0IGFzIGZzY2sn ZC4gSXQgaXMganVzdCB0aGF0IHdlIHByZXRlbmQgaXQgd29ya3MgZm9yIHRoZQo+PiBzYWtlIG9m IDMyYml0IHRoYXQgbWF5IHJ1biBpbiBzZWN1cmUgbW9kZS4gT24gYSA2NGJpdCBtYWNoaW5lLCBv ciBpbiBhCj4+IE5TIHNldHVwLCBpdCBpcyBkb29tZWQgZm9yIHRoZSBzYW1lIHJlYXNvbnMuIFRo ZXJlIHJlYWxseSBpc24ndCBhbnkKPj4gc3Vic3RpdHV0ZSBmb3Igc2VjdXJlIGZpcm13YXJlIGhl cmUuCj4gCj4gRmFpciBlbm91Z2ggYW5kIHRoYW5rcyBmb3IgcmVmcmVzaGluZyBteSBtZW1vcnkg b24gdGhpcy4KPiAKPiBIaSBGbG9yaWFuLAo+IAo+IEkgZGlkIGxpdHRsZSBiaXQgZGlnZ2luZyBp biB0aGUgVEYtQSBhbmQgZm91bmQgdGhpcy4KPiBwbGF0X2FybV9naWNfe3NhdmUscmVzdW1lfSgp aW4gcGxhdC9hcm0vY29tbW9uL2FybV9naWN2My5jIHdoaWNoIEkgYXNzdW1lCj4gbWFrZXMgaXQg cGxhdGZvcm0gc3BlY2lmaWMgY29kZSBhbmQgaGVuY2Ugbm90IHVzZWQgb24gYW55IG90aGVyIHBs YXRmb3JtLgo+IEkgYWxzbyBtaXNzZWQgdG8gc2VlIHRoaXMgZWFybGllciBhcyBJIGV4cGxpY2l0 bHkgaWdub3JlZCB0aGUgcGxhdC8gZGlyZWN0b3J5Cj4gYXNzdW1pbmcgaXQgaXMgYWxsIHBsYXRm b3JtIHNwZWNpZmljIGNvZGUgbm90IHNoYXJlZCBhY3Jvc3MuCj4gCj4gTm90IHN1cmUgaWYgdGhl IGZpcm13YXJlIG9uIHlvdXIgcGxhdGZvcm0gaXMgbm90IHVzaW5nIHRoYXQgb3IgaXMgaXQKPiBk aWZmZXJlbnQgZmlybXdhcmUgYWx0b2dldGhlciBvciBtYXkgYmUgVEYtQSBmb3JrZWQgYmVmb3Jl IHRoaXMgY2hhbmdlLgo+IElmIGl0IGlzIG1pc3NpbmcgYW55dGhpbmcsIGl0IHdvdWxkIGJlIGdv b2QgdG8gZ2V0IHRoYXQgZml4ZWQgYW5kIGxvb2sKPiBhdCB3YXlzIHRvIGdlbmVyYWxpc2UgaXQu CgpBcyB5b3UgbWF5IG9yIG1heSBub3QgcmVtZW1iZXIgd2UgaGF2ZSBvdXIgb3duIEFSTSBUcnVz dGVkIEZpcm13YXJlIGZvciAKYmV0dGVyIG9mIGZvciB3b3JzZSwgSSB3aWxsIHB1dCB0aGUgY29k ZSB0byBzYXZlIGFuZCByZXN0b3JlIHRoZSAKcmVnaXN0ZXJzIHRoZXJlLiBUaGFua3MhCi0tIApG bG9yaWFuCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K bGludXgtYXJtLWtlcm5lbCBtYWlsaW5nIGxpc3QKbGludXgtYXJtLWtlcm5lbEBsaXN0cy5pbmZy YWRlYWQub3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGlu dXgtYXJtLWtlcm5lbAo=