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 ADAD1C48BC3 for ; Tue, 20 Feb 2024 15:14:43 +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=5sh7hC0vIqaC8dbwxLIZlH239tvS7XTZoQFyWaWEWm4=; b=eCdEAjD1MOT5Lo sW4/FCheI3kKLLnRmXjDTL5ZAFpneBd141wEtzuPIsZO1ahXNLH9P6XiW7qaxDz1xjgNv2kbnr0Gd hc0OjpIqVPstxDhZGot6QkBHbwac6ZM9xw+ppgbKmOZaAlodHT5ezSe5FDqdDDi8lv3RB4mDa1/AZ 2lAzHuOF119oWrKabNwnxpvIHkdZZRtnLaF9NnHeiXQLXjHCy0vg0/DevMR9pWaYbEucCDkwgJAn9 KQm6W50MYIG1insAybGk7hstdKrs0PvmiuGfSvitSpDdRX0dWiu798G2q/Z7YU+UWiMAWJjoJbp+C Bwu+KtafsXGwX/iYHYlw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1rcRpD-0000000FDiy-0Klm; Tue, 20 Feb 2024 15:14:27 +0000 Received: from pandora.armlinux.org.uk ([2001:4d48:ad52:32c8:5054:ff:fe00:142]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1rcRp5-0000000FDgi-30bm; Tue, 20 Feb 2024 15:14:25 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=armlinux.org.uk; s=pandora-2019; h=Sender:In-Reply-To: Content-Transfer-Encoding:Content-Type: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-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=qgc8OUZCtZPjwVAIjMqiHy7ikwaI1Mbu1Mp1IdFRzDs=; b=Xy5iv0WrTLeAO0Yk5KZRnMdKyj P5Il3QQ+baeCRbUTHw+M2pQGpzCvY2kVMWyp3dXDSELRc5Ju3nfd11YBuUEHjVI4tFW2/xraLQejU 8tft/vHldbP7aGpknVnTEenRzyIrR0qgmIZkTDpzWNYBWSARs/hgaqJkstanzehwL6LPfJLIeqFLo gUb/82YcOQPZlEGA8PE5OTomL+YF+FqTubxG54uf45edRw2uSwN7RfBx+Du1NGHDAZjqfMWrmpglo yS8bLYhbsuhKYbVHwDGhCbqZMUPo3WgWbTMTAIMeCbEX6XIBN4y0pMZBZKVgW6FRGfRXxX28yVi92 FpAy11Fw==; Received: from shell.armlinux.org.uk ([fd8f:7570:feb6:1:5054:ff:fe00:4ec]:45522) by pandora.armlinux.org.uk with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1rcRoq-00033P-2v; Tue, 20 Feb 2024 15:14:05 +0000 Received: from linux by shell.armlinux.org.uk with local (Exim 4.94.2) (envelope-from ) id 1rcRok-0000xX-ST; Tue, 20 Feb 2024 15:13:58 +0000 Date: Tue, 20 Feb 2024 15:13:58 +0000 From: "Russell King (Oracle)" To: "Rafael J. Wysocki" Cc: linux-pm@vger.kernel.org, loongarch@lists.linux.dev, linux-acpi@vger.kernel.org, linux-arch@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-riscv@lists.infradead.org, kvmarm@lists.linux.dev, x86@kernel.org, acpica-devel@lists.linuxfoundation.org, linux-csky@vger.kernel.org, linux-doc@vger.kernel.org, linux-ia64@vger.kernel.org, linux-parisc@vger.kernel.org, Salil Mehta , Jean-Philippe Brucker , jianyong.wu@arm.com, justin.he@arm.com, James Morse , Jonathan Cameron Subject: Re: [PATCH RFC v4 02/15] ACPI: processor: Register all CPUs from acpi_processor_get_info() Message-ID: References: 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-20240220_071419_932651_A326AD3D X-CRM114-Status: GOOD ( 52.76 ) 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 T24gVHVlLCBGZWIgMjAsIDIwMjQgYXQgMTE6Mjc6MTVBTSArMDAwMCwgUnVzc2VsbCBLaW5nIChP cmFjbGUpIHdyb3RlOgo+IE9uIFRodSwgRmViIDE1LCAyMDI0IGF0IDA4OjIyOjI5UE0gKzAxMDAs IFJhZmFlbCBKLiBXeXNvY2tpIHdyb3RlOgo+ID4gT24gV2VkLCBKYW4gMzEsIDIwMjQgYXQgNTo1 MOKAr1BNIFJ1c3NlbGwgS2luZyA8cm1rK2tlcm5lbEBhcm1saW51eC5vcmcudWs+IHdyb3RlOgo+ ID4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9hY3BpL2FjcGlfcHJvY2Vzc29yLmMgYi9kcml2ZXJz L2FjcGkvYWNwaV9wcm9jZXNzb3IuYwo+ID4gPiBpbmRleCBjZjdjMWNjYTY5ZGQuLmE2OGM0NzVj ZGVhNSAxMDA2NDQKPiA+ID4gLS0tIGEvZHJpdmVycy9hY3BpL2FjcGlfcHJvY2Vzc29yLmMKPiA+ ID4gKysrIGIvZHJpdmVycy9hY3BpL2FjcGlfcHJvY2Vzc29yLmMKPiA+ID4gQEAgLTMxNCw2ICsz MTQsMTggQEAgc3RhdGljIGludCBhY3BpX3Byb2Nlc3Nvcl9nZXRfaW5mbyhzdHJ1Y3QgYWNwaV9k ZXZpY2UgKmRldmljZSkKPiA+ID4gICAgICAgICAgICAgICAgICAgICAgICAgY3B1ZnJlcV9hZGRf ZGV2aWNlKCJhY3BpLWNwdWZyZXEiKTsKPiA+ID4gICAgICAgICB9Cj4gPiA+Cj4gPiA+ICsgICAg ICAgLyoKPiA+ID4gKyAgICAgICAgKiBSZWdpc3RlciBDUFVzIHRoYXQgYXJlIHByZXNlbnQuIGdl dF9jcHVfZGV2aWNlKCkgaXMgdXNlZCB0byBza2lwCj4gPiA+ICsgICAgICAgICogZHVwbGljYXRl IENQVSBkZXNjcmlwdGlvbnMgZnJvbSBmaXJtd2FyZS4KPiA+ID4gKyAgICAgICAgKi8KPiA+ID4g KyAgICAgICBpZiAoIWludmFsaWRfbG9naWNhbF9jcHVpZChwci0+aWQpICYmIGNwdV9wcmVzZW50 KHByLT5pZCkgJiYKPiA+ID4gKyAgICAgICAgICAgIWdldF9jcHVfZGV2aWNlKHByLT5pZCkpIHsK PiA+ID4gKyAgICAgICAgICAgICAgIGludCByZXQgPSBhcmNoX3JlZ2lzdGVyX2NwdShwci0+aWQp Owo+ID4gPiArCj4gPiA+ICsgICAgICAgICAgICAgICBpZiAocmV0KQo+ID4gPiArICAgICAgICAg ICAgICAgICAgICAgICByZXR1cm4gcmV0Owo+ID4gPiArICAgICAgIH0KPiA+ID4gKwo+ID4gPiAg ICAgICAgIC8qCj4gPiA+ICAgICAgICAgICogIEV4dHJhIFByb2Nlc3NvciBvYmplY3RzIG1heSBi ZSBlbnVtZXJhdGVkIG9uIE1QIHN5c3RlbXMgd2l0aAo+ID4gPiAgICAgICAgICAqICBsZXNzIHRo YW4gdGhlIG1heCAjIG9mIENQVXMuIFRoZXkgc2hvdWxkIGJlIGlnbm9yZWQgX2lmZgo+ID4gCj4g PiBUaGlzIGlzIGludGVyZXN0aW5nLCBiZWNhdXNlIHJpZ2h0IGJlbG93IHRoZXJlIGlzIHRoZSBm b2xsb3dpbmcgY29kZToKPiA+IAo+ID4gICAgIGlmIChpbnZhbGlkX2xvZ2ljYWxfY3B1aWQocHIt PmlkKSB8fCAhY3B1X3ByZXNlbnQocHItPmlkKSkgewo+ID4gICAgICAgICBpbnQgcmV0ID0gYWNw aV9wcm9jZXNzb3JfaG90YWRkX2luaXQocHIpOwo+ID4gCj4gPiAgICAgICAgIGlmIChyZXQpCj4g PiAgICAgICAgICAgICByZXR1cm4gcmV0Owo+ID4gICAgIH0KPiA+IAo+ID4gYW5kIGFjcGlfcHJv Y2Vzc29yX2hvdGFkZF9pbml0KCkgZXNzZW50aWFsbHkgY2FsbHMgYXJjaF9yZWdpc3Rlcl9jcHUo KQo+ID4gd2l0aCBzb21lIGV4dHJhIHRoaW5ncyBhcm91bmQgaXQgKG1vcmUgYWJvdXQgdGhhdCBi ZWxvdykuCj4gPiAKPiA+IEkgZG8gcmVhbGl6ZSB0aGF0IGFjcGlfcHJvY2Vzc29yX2hvdGFkZF9p bml0KCkgaXMgZGVmaW5lZCB1bmRlcgo+ID4gQ09ORklHX0FDUElfSE9UUExVR19DUFUsIHNvIGZv ciB0aGUgc2FrZSBvZiB0aGUgYXJndW1lbnQgbGV0J3MKPiA+IGNvbnNpZGVyIGFuIGFyY2hpdGVj dHVyZSB3aGVyZSBDT05GSUdfQUNQSV9IT1RQTFVHX0NQVSBpcyBzZXQuCj4gPiAKPiA+IFNvIHdo eSBhcmUgdGhlIHR3byBjb25kaXRpb25hbHMgdGhhdCBhbG1vc3QgY29udHJhZGljdCBlYWNoIG90 aGVyIGJvdGgKPiA+IG5lZWRlZD8gIEl0IGxvb2tzIGxpa2UgdGhlIG5ldyBjb2RlIGNvdWxkIGJl IGNvbWJpbmVkIHdpdGgKPiA+IGFjcGlfcHJvY2Vzc29yX2hvdGFkZF9pbml0KCkgdG8gZG8gdGhl IHJpZ2h0IHRoaW5nIGluIGFsbCBjYXNlcy4KPiA+IAo+ID4gTm93LCBhY3BpX3Byb2Nlc3Nvcl9o b3RhZGRfaW5pdCgpIGRvZXMgc29tZSBleHRyYSB0aGluZ3MgdGhhdCBsb29rCj4gPiBsaWtlIHRo ZXkgc2hvdWxkIGJlIGRvbmUgYnkgdGhlIG5ldyBjb2RlIHRvby4KPiA+IAo+ID4gMS4gSXQgY2hl Y2tzIGludmFsaWRfcGh5c19jcHVpZCgpIHdoaWNoIGFwcGVhcnMgdG8gYmUgYSBnb29kIGlkZWEg dG8gbWUuCj4gPiAKPiA+IDIuIEl0IHVzZXMgbG9ja2luZyBhcm91bmQgYXJjaF9yZWdpc3Rlcl9j cHUoKSB3aGljaCBkb2Vzbid0IHNlZW0KPiA+IHVucmVhc29uYWJsZSBlaXRoZXIuCj4gPiAKPiA+ IDMuIEl0IGNhbGxzIGFjcGlfbWFwX2NwdSgpIGFuZCBJJ20gbm90IHN1cmUgd2h5IHRoaXMgaXMg bm90IGRvbmUgYnkKPiA+IHRoZSBuZXcgY29kZS4KPiA+IAo+ID4gVGhlIG9ubHkgdGhpbmcgdGhh dCBjYW4gYmUgZHJvcHBlZCBmcm9tIGl0IGlzIHRoZSBfU1RBIGNoZWNrIEFGQUlDUywKPiA+IGJl Y2F1c2UgYWNwaV9wcm9jZXNzb3JfYWRkKCkgd29uJ3QgZXZlbiBiZSBjYWxsZWQgaWYgdGhlIENQ VSBpcyBub3QKPiA+IHByZXNlbnQgKGFuZCBub3QgZW5hYmxlZCBhZnRlciB0aGUgZmlyc3QgcGF0 Y2gpLgo+ID4gCj4gPiBTbyB3aHkgZG9lcyB0aGUgY29kZSBub3QgZG8gMSAtIDMgYWJvdmU/Cj4g Cj4gSG9uZXN0bHksIEknbSBvdXQgb2YgbXkgZGVwdGggd2l0aCB0aGlzIGFuZCBjYW4ndCBhbnN3 ZXIgeW91cgo+IHF1ZXN0aW9ucyAtIGFuZCBJIHJlYWxseSBkb24ndCB3YW50IHRvIHRyeSBmaWRk bGluZyB3aXRoIHRoaXMgY29kZQo+IGJlY2F1c2UgaXQncyBqdXN0IHRvbyBpY2t5IChldmVuIGlu IGl0cyBjdXJyZW50IGZvcm0gaW4gbWFpbmxpbmUpCj4gdG8gYmUgdW5kZXJzdGFuZGFibGUgdG8g YW55b25lIHdobyBoYXNuJ3QgZ2FpbmVkIGEgZGV0YWlsZWQga25vd2xlZGdlCj4gb2YgdGhpcyBj b2RlLgo+IAo+IEl0J3MgZ29pbmcgdG8gcmVxdWlyZSBhIGxvdCBvZiBhbmFseXNpcyAtIGhvdyBh Y3BpX21hcF9jcHVpZCgpIGJlaGF2ZXMKPiBpbiBhbGwgY2lyY3Vtc3RhbmNlcywgd2hhdCB0aGlz IG1lYW5zIGZvciBpbnZhbGlkX2xvZ2ljYWxfY3B1aWQoKSBhbmQKPiBpbnZhbGlkX3BoeXNfY3B1 aWQoKSwgd2hhdCBwYXRocyB3aWxsIGJlIHRha2VuIGluIGVhY2ggY2FzZS4gVGhpcyBjb2RlCj4g aXMgYWxyZWFkeSBqdXN0IHRvbyBoYWlyeSBmb3Igc29tZW9uZSB3aG8gaXNuJ3QgYW4gZXhwZXJp ZW5jZWQgQUNQSQo+IGhhY2tlciB0byBiZSBhYmxlIHRvIGZvbGxvdyBhbmQgSSBkb24ndCBzZWUg YW4gb2J2aW91cyB3YXkgdG8gbWFrZSBpdAo+IG1vcmUgcmVhZGFibGUuCj4gCj4gSmFtZXMnIGFk ZGl0aW9ucyBtYWtlIGl0IGV2ZW4gbW9yZSBjb21wbGV4IGFuZCBsZXNzIHJlYWRhYmxlLgoKQXMg YW4gaWxsdXN0cmF0aW9uIG9mIHRoZSBwcm9ibGVtcyBJJ20gaGF2aW5nIGhlcmUsIEkgd2FzIGp1 c3Qgd3JpdGluZwphIHJlcGx5IHRvIHRoaXMgd2l0aCBhIHN1Z2dlc3Rpb24gb2YgdHJhbnNmb3Jt aW5nIHRoaXMgY29kZSB1bHRpbWF0ZWx5CnRvOgoKCWlmICghZ2V0X2NwdV9kZXZpY2UocHItPmlk KSkgewoJCWludCByZXQ7CgoJCWlmICghaW52YWxpZF9sb2dpY2FsX2NwdWlkKHByLT5pZCkgJiYg Y3B1X3ByZXNlbnQocHItPmlkKSkKCQkJcmV0ID0gYWNwaV9wcm9jZXNzb3JfbWFrZV9lbmFibGVk KHByKTsKCQllbHNlCgkJCXJldCA9IGFjcGlfcHJvY2Vzc29yX21ha2VfcHJlc2VudChwcik7CgoJ CWlmIChyZXQpCgkJCXJldHVybiByZXQ7Cgl9CgooYWNwaV9wcm9jZXNzb3JfbWFrZV9wcmVzZW50 KCkgd291bGQgYmUgYWNwaV9wcm9jZXNzb3JfaG90YWRkX2luaXQoKQphbmQgYWNwaV9wcm9jZXNz b3JfbWFrZV9lbmFibGVkKCkgd291bGQgYmUgYXJjaF9yZWdpc3Rlcl9jcHUoKSBhdCB0aGlzCnBv aW50LikKClRoZW4gSSByZWFsaXNlZCB0aGF0J3MgYSBiYWQgaWRlYSAtIGJlY2F1c2Ugd2UgcmVh bGx5IG5lZWQgdG8gY2hlY2sKdGhhdCBwci0+aWQgaXMgdmFsaWQgYmVmb3JlIGNhbGxpbmcgZ2V0 X2NwdV9kZXZpY2UoKSBvbiBpdCwgc28gdGhpcwp3b24ndCB3b3JrLiBUaGF0IGxlYXZlcyB1cyB3 aXRoOgoKCWludCByZXQ7CgoJaWYgKGludmFsaWRfbG9naWNhbF9jcHVpZChwci0+aWQpIHx8ICFj cHVfcHJlc2VudChwci0+aWQpKSB7CgkJLyogeDg2IGV0LmFsLiBwYXRoICovCgkJcmV0ID0gYWNw aV9wcm9jZXNzb3JfbWFrZV9wcmVzZW50KHByKTsKCX0gZWxzZSBpZiAoIWdldF9jcHVfZGV2aWNl KHByLT5pZCkpIHsKCQkvKiBBcm02NCBwYXRoICovCgkJcmV0ID0gYWNwaV9wcm9jZXNzb3JfbWFr ZV9lbmFibGVkKHByKTsKCX0gZWxzZSB7CgkJcmV0ID0gMDsKCX0KCglpZiAocmV0KQoJCXJldHVy biByZXQ7CgpOb3csIHRoZSBuZXh0IHRyYW5zZm9ybWF0aW9uIHdvdWxkIGJlIHRvIG1vdmUgIWdl dF9jcHVfZGV2aWNlKHByLT5pZCkKaW50byBhY3BpX3Byb2Nlc3Nvcl9tYWtlX2VuYWJsZWQoKSB3 aGljaCB3b3VsZCBlbGltaW5hdGUgb25lIG9mIHRob3NlCmlmKCkgbGVncy4KCk5vdywgaWYgd2Ug d2FudCB0byBzb21laG93IG1ha2UgdGhlIGNhbGwgdG8gYXJjaF9yZWdzdGVyX2NwdSgpIGNvbW1v bgppbiB0aGVzZSB0d28gcGF0aHMsIHRoZSBuZXh0IHF1ZXN0aW9uIGlzIHdoYXQgYXJlIHRoZSBf cHJlY2lzZV8Kc2VtYW50aWNzIG9mIGFjcGlfbWFwX2NwdSgpLCBwYXJ0aWN1bGFybHkgd2l0aCBy ZXNwZWN0IHRvIGl0Cm1vZGlmeWluZyBwci0+aWQuIElzIGl0IGd1YXJhbnRlZWQgdG8gYWx3YXlz IGdpdmUgdGhlIHNhbWUgcmVzdWx0CmZvciB0aGUgc2FtZSBwcm9jZXNzb3IgZGVzY3JpYmVkIGlu IEFDUEk/IFdoYXQgYWNwaV9tYXBfY3B1KCkgYW55d2F5LApJIGNhbiBmaW5kIG5vIGRvY3VtZW50 YXRpb24gZm9yIGl0LgoKVGhlbiB0aGVyZSdzIHRoZSBxdWVzdGlvbiB3aGV0aGVyIGNhbGxpbmcg YWNwaV91bm1hcF9jcHUoKSBzaG91bGQgYmUKZG9uZSBvbiB0aGUgZmFpbHVyZSBwYXRoIGlmIGFy Y2hfcmVnaXN0ZXJfY3B1KCkgZmFpbHMsIHdoaWNoIGlzIGRvbmUKZm9yIHRoZSB4ODYgcGF0aCBi dXQgbm90IHRoZSBBcm02NCBwYXRoLiBTaG91bGQgaXQgYmUgZG9uZSBmb3IgdGhlCkFybTY0IHBh dGg/IEkndmUgbm8gaWRlYSwgYnV0IGFzIEFybTY0IGRvZXNuJ3QgaW1wbGVtZW50IGVpdGhlciBv Zgp0aGVzZSB0d28gZnVuY3Rpb25zLCBJIGd1ZXNzIHRoZXkgY291bGQgYmUgc3R1YmJlZCBvdXQg YW5kIHRodXMgYmUKbm8tb3BzIC0gYnV0IHRoZW4gd2Ugb3BlbiBhIGhvbGUgd2hlcmUgaWYgcHIt PmlkIGlzIGludmFsaWQsIHdlCmVuZCB1cCBwYXNzaW5nIHRoYXQgaW52YWxpZCB2YWx1ZSB0byBh cmNoX3JlZ2lzdGVyX2NwdSgpIHdoaWNoIEknbQpxdWl0ZSBzdXJlIHdpbGwgZXhwbG9kZSB3aXRo IGEgbmVnYXRpdmUgQ1BVIG51bWJlci4KClNvLCB0byBteSBtaW5kLCB3aGF0IHlvdSdyZSBlZmZl Y3RpdmVseSBhc2tpbmcgZm9yIGlzIGEgdG90YWwgcmV3cml0ZQpvZiBhbGwgdGhlIGNvZGUgaW4g YW5kIGNhbGxlZCBieSBhY3BpX3Byb2Nlc3Nvcl9nZXRfaW5mbygpLi4uIGFuZCB0aGF0CmlzIG5v dCBzb21ldGhpbmcgSSBhbSB3aWxsaW5nIHRvIGRvIChiZWNhdXNlIGl0J3MgdG9vIGZhciBvdXRz aWRlIG9mCm15IGtub3dsZWRnZSBhcmVhLikKCkFzIEkgc2FpZCBpbiBteSByZXBseSB0byBwYXRj aCAxLCBJIHRoaW5rIHlvdXIgY29tbWVudHMgb24gcGF0Y2ggMgptYWtlIEFybTY0IHZjcHUgaG90 cGx1ZyB1bmFjaGlldmFibGUgaW4gYSByZWFzb25hYmxlIHRpbWUgZnJhbWUsIGFuZApjZXJ0YWlu bHkgb3V0c2lkZSB0aGUgYm91bmRzIG9mIHdoYXQgSSBjYW4gZG8gdG8gcHJvZ3Jlc3MgdGhpcy4K ClNvLCBhdCB0aGlzIHBvaW50IEknbSBnb2luZyB0byBzdGFuZCBkb3duIGZyb20gZnVydGhlciBw YXJ0aWNpcGF0aW9uCndpdGggdGhpcyBwYXRjaCBzZXQgYXMgSSBiZWxpZXZlIEkndmUgcmVhY2hl ZCB0aGUgbGltaXQgb2Ygd2hhdCBJIGNhbgpkbyB0byBwcm9ncmVzcyBpdC4KCi0tIApSTUsncyBQ YXRjaCBzeXN0ZW06IGh0dHBzOi8vd3d3LmFybWxpbnV4Lm9yZy51ay9kZXZlbG9wZXIvcGF0Y2hl cy8KRlRUUCBpcyBoZXJlISA4ME1icHMgZG93biAxME1icHMgdXAuIERlY2VudCBjb25uZWN0aXZp dHkgYXQgbGFzdCEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCmxpbnV4LWFybS1rZXJuZWwgbWFpbGluZyBsaXN0CmxpbnV4LWFybS1rZXJuZWxAbGlzdHMu aW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2xpbnV4LWFybS1rZXJuZWwK