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 X-Spam-Level: X-Spam-Status: No, score=-6.2 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_PASS,UPPERCASE_50_75,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 63F59C4360F for ; Tue, 2 Apr 2019 14:54:06 +0000 (UTC) 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 mail.kernel.org (Postfix) with ESMTPS id 30B39206DD for ; Tue, 2 Apr 2019 14:54:06 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="MyHcFBih"; dkim=fail reason="signature verification failed" (2048-bit key) header.d=nvidia.com header.i=@nvidia.com header.b="kIkl/ZWh" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 30B39206DD Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=nvidia.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender:Content-Type: Content-Transfer-Encoding:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:Date:Message-ID:From: References:To:Subject:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=jhjS0PNWq123qctMPBlB/9+oA9iSccIuiC5tEKjbYcE=; b=MyHcFBihInV8i3uUqS7ceAYP4 TQ1gRRXKpmBSA909ZYM9ZVGRCHRRQsnbgy2wQ6hWxQIBzaGAL8rO28DT7EeQ6t6nUUf4rjiG9Gcak xcCPvk4GExt+pS7+/6JHQ/Y9if29nSnuW3mMEDx4A99jGPXWG/S35EXSGW1yCWN4KZyy441NPaFT5 YbLWgLREUEx+/PpyxDDs84y1GdzBZib7TQnX/l8LNDGVP15OL/k4T1iNGYXEtOD4NJ8brncfSAEZ0 S+RDLWWGOZmTrETlJiC+MYcGfefSGTGDA+9c98M2WZKQ4i9OTMfIheJMIlSFbdGn7yCojiKEIv1Oj GJ+UwEFcg==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.90_1 #2 (Red Hat Linux)) id 1hBKnS-0004XA-J1; Tue, 02 Apr 2019 14:53:54 +0000 Received: from hqemgate15.nvidia.com ([216.228.121.64]) by bombadil.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1hBKnO-0004Wp-F9 for linux-arm-kernel@lists.infradead.org; Tue, 02 Apr 2019 14:53:52 +0000 Received: from hqpgpgate101.nvidia.com (Not Verified[216.228.121.13]) by hqemgate15.nvidia.com (using TLS: TLSv1.2, DES-CBC3-SHA) id ; Tue, 02 Apr 2019 07:53:40 -0700 Received: from hqmail.nvidia.com ([172.20.161.6]) by hqpgpgate101.nvidia.com (PGP Universal service); Tue, 02 Apr 2019 07:53:50 -0700 X-PGP-Universal: processed; by hqpgpgate101.nvidia.com on Tue, 02 Apr 2019 07:53:50 -0700 Received: from [10.19.108.132] (172.20.13.39) by HQMAIL101.nvidia.com (172.20.187.10) with Microsoft SMTP Server (TLS) id 15.0.1473.3; Tue, 2 Apr 2019 14:53:47 +0000 Subject: Re: [PATCH 4/8] memory: tegra: add EMC scaling support code for Tegra210 To: Dmitry Osipenko , Thierry Reding , Peter De Schrijver , Jonathan Hunter , Rob Herring , Stephen Boyd References: <20190325074523.26456-1-josephl@nvidia.com> <20190325074523.26456-5-josephl@nvidia.com> <589e57b8-e77f-39b9-2043-e36d9325d49f@gmail.com> From: Joseph Lo Message-ID: <3058a302-2517-9756-184b-6253e9e61184@nvidia.com> Date: Tue, 2 Apr 2019 22:53:45 +0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.6.1 MIME-Version: 1.0 In-Reply-To: <589e57b8-e77f-39b9-2043-e36d9325d49f@gmail.com> X-Originating-IP: [172.20.13.39] X-ClientProxiedBy: HQMAIL106.nvidia.com (172.18.146.12) To HQMAIL101.nvidia.com (172.20.187.10) Content-Language: en-US DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nvidia.com; s=n1; t=1554216820; bh=sfZRN4ULA1IO+rnH3R4lDEMMG6EpUx1jJHbpZMdcrkQ=; h=X-PGP-Universal:Subject:To:CC:References:From:Message-ID:Date: User-Agent:MIME-Version:In-Reply-To:X-Originating-IP: X-ClientProxiedBy:Content-Type:Content-Language: Content-Transfer-Encoding; b=kIkl/ZWhshbRKEcxyNc2w4ZveTAGW0xWfQeEQ0g73oTq0m71yrxxedzJteM9TSX/H 8sD1sGtzrI0KdMB4hPMaK/PPXW7JR5+M1rf2RvsUEWtrqLeKQlf45SDDrM+tE/b+ik 4071N9FoYqP5gxtmx1pSx46WHYkgsosVTFxkf8wcCDfOPbQ3hCgcX2m2Iszbf8Vw7R V6TI10XeUWcYkYz4VzCZktCTUurZszJ//NZ/8AUJzwDOuZkn35jFIhEJnzXMwVN0dU ITlquY/vqzxAzt7DJUfst6nRyeStmMAIDW6F4byLZ65dd6jrC/Jl1KAokBgKszV2FG AUaXcZ5nUprDg== X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20190402_075350_533666_6EE9B6D4 X-CRM114-Status: GOOD ( 10.88 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: linux-tegra@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org T24gNC8yLzE5IDc6MzkgUE0sIERtaXRyeSBPc2lwZW5rbyB3cm90ZToKPiAyNS4wMy4yMDE5IDEw OjQ1LCBKb3NlcGggTG8g0L/QuNGI0LXRgjoKPj4gVGhpcyBwYXRjaCBhZGRzIHRoZSByZXF1aXJl ZCBBUElzIGFuZCB2YXJpYWJsZXMgZm9yIHRoZSBFTUMgc2NhbGluZwo+PiBzZXF1ZW5jZSBjb2Rl IG9uIFRlZ3JhMjEwLgo+Pgo+PiBCYXNlZCBvbiB0aGUgd29yayBvZiBQZXRlciBEZSBTY2hyaWp2 ZXIgPHBkZXNjaHJpanZlckBudmlkaWEuY29tPi4KPj4KPj4gU2lnbmVkLW9mZi1ieTogSm9zZXBo IExvIDxqb3NlcGhsQG52aWRpYS5jb20+Cj4+IC0tLQo+PiAgIGRyaXZlcnMvbWVtb3J5L3RlZ3Jh L3RlZ3JhMjEwLWVtYy1yZWcuaCB8IDI2NSArKysrKysrCj4+ICAgZHJpdmVycy9tZW1vcnkvdGVn cmEvdGVncmEyMTAtZW1jLmMgICAgIHwgOTIzICsrKysrKysrKysrKysrKysrKysrKysrKwo+PiAg IDIgZmlsZXMgY2hhbmdlZCwgMTE4OCBpbnNlcnRpb25zKCspCj4+Cj4+IGRpZmYgLS1naXQgYS9k cml2ZXJzL21lbW9yeS90ZWdyYS90ZWdyYTIxMC1lbWMtcmVnLmggYi9kcml2ZXJzL21lbW9yeS90 ZWdyYS90ZWdyYTIxMC1lbWMtcmVnLmgKPj4gaW5kZXggODRmY2M4NWYzYjZkLi4zMWE2OWU3MThk YmMgMTAwNjQ0Cj4+IC0tLSBhL2RyaXZlcnMvbWVtb3J5L3RlZ3JhL3RlZ3JhMjEwLWVtYy1yZWcu aAo+PiArKysgYi9kcml2ZXJzL21lbW9yeS90ZWdyYS90ZWdyYTIxMC1lbWMtcmVnLmgKPj4gQEAg LTEyLDYgKzEyLDEzIEBACj4+ICAgCj4+ICAgI2luY2x1ZGUgIm1jLmgiCj4+ICAgCj4+ICsjZGVm aW5lIERWRlNfRkdDR19ISUdIX1NQRUVEX1RIUkVTSE9MRAkJCQkxMDAwCj4+ICsjZGVmaW5lIElP QlJJQ0tfRENDX1RIUkVTSE9MRAkJCQkJMjQwMAo+PiArI2RlZmluZSBEVkZTX0ZHQ0dfTUlEX1NQ RUVEX1RIUkVTSE9MRAkJCQk2MDAKPj4gKwo+PiArI2RlZmluZSBFTUNfU1RBVFVTX1VQREFURV9U SU1FT1VUCQkJCTEwMDAKPj4gKwo+PiArI2RlZmluZSBNQ19FTUVNX0FEUl9DRkcJCQkJCQkweDU0 Cj4+ICAgI2RlZmluZSBNQ19FTUVNX0FSQl9DRkcJCQkJCQkweDkwCj4+ICAgI2RlZmluZSBNQ19F TUVNX0FSQl9PVVRTVEFORElOR19SRVEJCQkJMHg5NAo+PiAgICNkZWZpbmUgTUNfRU1FTV9BUkJf VElNSU5HX1JDRAkJCQkJMHg5OAo+PiBAQCAtNzUsMTIgKzgyLDMzIEBACj4+ICAgI2RlZmluZSBF TUNfQ0xLX0VNQ18yWF9DTEtfU1JDX1NISUZUCQkJCTI5Cj4+ICAgI2RlZmluZSBFTUNfQ0xLX0VN Q18yWF9DTEtfU1JDX01BU0sJCQkJXAo+PiAgIAkoMHg3IDw8IEVNQ19DTEtfRU1DXzJYX0NMS19T UkNfU0hJRlQpCj4+ICsjZGVmaW5lIEVNQ19DTEtfU09VUkNFX1BMTE1fTEoJCQkJCTB4NAo+PiAr I2RlZmluZSBFTUNfQ0xLX1NPVVJDRV9QTExNQl9MSgkJCQkJMHg1Cj4+ICAgI2RlZmluZQlFTUNf Q0xLX01DX0VNQ19TQU1FX0ZSRVEJCQkJQklUKDE2KQo+PiAgICNkZWZpbmUgRU1DX0NMS19FTUNf MlhfQ0xLX0RJVklTT1JfU0hJRlQJCQkwCj4+ICAgI2RlZmluZSBFTUNfQ0xLX0VNQ18yWF9DTEtf RElWSVNPUl9NQVNLCQkJCVwKPj4gICAJKDB4ZmYgPDwgRU1DX0NMS19FTUNfMlhfQ0xLX0RJVklT T1JfU0hJRlQpCj4+ICAgCj4+ICsjZGVmaW5lIENMS19SU1RfQ09OVFJPTExFUl9DTEtfU09VUkNF X0VNQ19ETEwJCQkweDY2NAo+PiArI2RlZmluZSBETExfQ0xLX0VNQ19ETExfQ0xLX1NSQ19TSElG VAkJCQkyOQo+PiArI2RlZmluZSBETExfQ0xLX0VNQ19ETExfQ0xLX1NSQ19NQVNLCQkJCVwKPj4g KwkoMHg3IDw8IERMTF9DTEtfRU1DX0RMTF9DTEtfU1JDX1NISUZUKQo+PiArI2RlZmluZSBETExf Q0xLX0VNQ19ETExfRERMTF9DTEtfU0VMX1NISUZUCQkJMTAKPj4gKyNkZWZpbmUgRExMX0NMS19F TUNfRExMX0RETExfQ0xLX1NFTF9NQVNLCQkJXAo+PiArCSgweDMgPDwgRExMX0NMS19FTUNfRExM X0RETExfQ0xLX1NFTF9TSElGVCkKPj4gKyNkZWZpbmUgUExMTV9WQ09BCQkJCQkJMAo+PiArI2Rl ZmluZSBQTExNX1ZDT0IJCQkJCQkxCj4+ICsjZGVmaW5lIEVNQ19ETExfU1dJVENIX09VVAkJCQkJ Mgo+PiArI2RlZmluZSBETExfQ0xLX0VNQ19ETExfQ0xLX0RJVklTT1JfU0hJRlQJCQkwCj4+ICsj ZGVmaW5lIERMTF9DTEtfRU1DX0RMTF9DTEtfRElWSVNPUl9NQVNLCQkJXAo+PiArCSgweGZmIDw8 IERMTF9DTEtfRU1DX0RMTF9DTEtfRElWSVNPUl9TSElGVCkKPj4gKwo+PiArI2RlZmluZSBFTUNf SU5UU1RBVFVTCQkJCQkJMHgwCj4+ICsjZGVmaW5lIEVNQ19JTlRTVEFUVVNfQ0xLQ0hBTkdFX0NP TVBMRVRFCQkJQklUKDQpCj4+ICsjZGVmaW5lIEVNQ19EQkcJCQkJCQkJMHg4Cj4+ICsjZGVmaW5l IEVNQ19EQkdfV1JJVEVfTVVYX0FDVElWRQkJCQlCSVQoMSkKPj4gICAjZGVmaW5lIEVNQ19DRkcJ CQkJCQkJMHhjCj4+ICsjZGVmaW5lIEVNQ19USU1JTkdfQ09OVFJPTAkJCQkJMHgyOAo+PiAgICNk ZWZpbmUgRU1DX1JDCQkJCQkJCTB4MmMKPj4gICAjZGVmaW5lIEVNQ19SRkMJCQkJCQkJMHgzMAo+ PiAgICNkZWZpbmUgRU1DX1JBUwkJCQkJCQkweDM0Cj4+IEBAIC0xMjUsMTYgKzE1Myw0MCBAQAo+ PiAgICNkZWZpbmUgRU1DX0ZCSU9fQ0ZHNV9EUkFNX1RZUEVfU0hJRlQJCQkJMAo+PiAgICNkZWZp bmUgRU1DX0ZCSU9fQ0ZHNV9EUkFNX1RZUEVfTUFTSwkJCQlcCj4+ICAgCSgweDMgPDwJRU1DX0ZC SU9fQ0ZHNV9EUkFNX1RZUEVfU0hJRlQpCj4+ICsjZGVmaW5lIEVNQ19GQklPX0NGRzVfQ01EX1RY X0RJUwkJCQlCSVQoOCkKPj4gKwo+PiAgICNkZWZpbmUgRU1DX1BERVgyQ0tFCQkJCQkJMHgxMTgK Pj4gICAjZGVmaW5lIEVNQ19DS0UyUERFTgkJCQkJCTB4MTFjCj4+ICsjZGVmaW5lIEVNQ19NUEMJ CQkJCQkJMHgxMjgKPj4gICAjZGVmaW5lIEVNQ19SMlIJCQkJCQkJMHgxNDQKPj4gICAjZGVmaW5l IEVNQ19FSU5QVVQJCQkJCQkweDE0Ywo+PiAgICNkZWZpbmUgRU1DX0VJTlBVVF9EVVJBVElPTgkJ CQkJMHgxNTAKPj4gICAjZGVmaW5lIEVNQ19QVVRFUk1fRVhUUkEJCQkJCTB4MTU0Cj4+ICAgI2Rl ZmluZSBFTUNfVENLRVNSCQkJCQkJMHgxNTgKPj4gICAjZGVmaW5lIEVNQ19UUEQJCQkJCQkJMHgx NWMKPj4gKyNkZWZpbmUgRU1DX0VNQ19TVEFUVVMJCQkJCQkweDJiNAo+PiArI2RlZmluZSBFTUNf RU1DX1NUQVRVU19USU1JTkdfVVBEQVRFX1NUQUxMRUQJCQlCSVQoMjMpCj4+ICAgI2RlZmluZSBF TUNfQ0ZHX0RJR19ETEwJCQkJCQkweDJiYwo+PiArI2RlZmluZSBFTUNfQ0ZHX0RJR19ETExfQ0ZH X0RMTF9FTgkJCQlCSVQoMCkKPj4gKyNkZWZpbmUgRU1DX0NGR19ESUdfRExMX0NGR19ETExfU1RB TExfQUxMX1VOVElMX0xPQ0sJCUJJVCgxKQo+PiArI2RlZmluZSBFTUNfQ0ZHX0RJR19ETExfQ0ZH X0RMTF9TVEFMTF9BTExfVFJBRkZJQwkJQklUKDMpCj4+ICsjZGVmaW5lIEVNQ19DRkdfRElHX0RM TF9DRkdfRExMX1NUQUxMX1JXX1VOVElMX0xPQ0sJCUJJVCg0KQo+PiArI2RlZmluZSBFTUNfQ0ZH X0RJR19ETExfQ0ZHX0RMTF9NT0RFX1NISUZUCQkJNgo+PiArI2RlZmluZSBFTUNfQ0ZHX0RJR19E TExfQ0ZHX0RMTF9NT0RFX01BU0sJCQlcCj4+ICsJKDB4MyA8PCBFTUNfQ0ZHX0RJR19ETExfQ0ZH X0RMTF9NT0RFX1NISUZUKQo+PiArI2RlZmluZSBFTUNfQ0ZHX0RJR19ETExfQ0ZHX0RMTF9MT0NL X0xJTUlUX1NISUZUCQk4Cj4+ICsjZGVmaW5lIEVNQ19DRkdfRElHX0RMTF9DRkdfRExMX0xPQ0tf TElNSVRfTUFTSwkJCVwKPj4gKwkoMHg3IDw8IEVNQ19DRkdfRElHX0RMTF9DRkdfRExMX0xPQ0tf TElNSVRfU0hJRlQpCj4+ICsKPj4gICAjZGVmaW5lIEVNQ19DRkdfRElHX0RMTF9QRVJJT0QJCQkJ CTB4MmMwCj4+ICsjZGVmaW5lIEVNQ19ESUdfRExMX1NUQVRVUwkJCQkJMHgyYzQKPj4gKyNkZWZp bmUgRU1DX0RJR19ETExfU1RBVFVTX0RMTF9MT0NLCQkJCUJJVCgxNSkKPj4gKyNkZWZpbmUgRU1D X0RJR19ETExfU1RBVFVTX0RMTF9QUklWX1VQREFURUQJCQlCSVQoMTcpCj4+ICsjZGVmaW5lIEVN Q19ESUdfRExMX1NUQVRVU19ETExfT1VUX1NISUZUCQkJMAo+PiArI2RlZmluZSBFTUNfRElHX0RM TF9TVEFUVVNfRExMX09VVF9NQVNLCQkJCVwKPj4gKwkoMHg3ZmYgPDwgRU1DX0RJR19ETExfU1RB VFVTX0RMTF9PVVRfU0hJRlQpCj4+ICsKPj4gKyNkZWZpbmUgRU1DX0NGR19ESUdfRExMXzEJCQkJ CTB4MmM4Cj4+ICAgI2RlZmluZSBFTUNfUkRWX01BU0sJCQkJCQkweDJjYwo+PiAgICNkZWZpbmUg RU1DX1dEVl9NQVNLCQkJCQkJMHgyZDAKPj4gICAjZGVmaW5lIEVNQ19SRFZfRUFSTFlfTUFTSwkJ CQkJMHgyZDQKPj4gQEAgLTE1Myw2ICsyMDUsOCBAQAo+PiAgICNkZWZpbmUgRU1DX1BSRV9SRUZS RVNIX1JFUV9DTlQJCQkJCTB4M2RjCj4+ICAgI2RlZmluZSBFTUNfRFlOX1NFTEZfUkVGX0NPTlRS T0wJCQkJMHgzZTAKPj4gICAjZGVmaW5lIEVNQ19UWFNSRExMCQkJCQkJMHgzZTQKPj4gKyNkZWZp bmUgRU1DX0NDRklGT19BRERSCQkJCQkJMHgzZTgKPj4gKyNkZWZpbmUgRU1DX0NDRklGT19EQVRB CQkJCQkJMHgzZWMKPj4gICAjZGVmaW5lIEVNQ19UUl9RUE9QCQkJCQkJMHgzZjQKPj4gICAjZGVm aW5lIEVNQ19UUl9SRFZfTUFTSwkJCQkJCTB4M2Y4Cj4+ICAgI2RlZmluZSBFTUNfVFJfUVNBRkUJ CQkJCQkweDNmYwo+PiBAQCAtMTg1LDggKzIzOSw2MCBAQAo+PiAgICNkZWZpbmUgRU1DX1BVVEVS TV9XSURUSAkJCQkJMHg1NmMKPj4gICAjZGVmaW5lIEVNQ19SRUZDVFJMMgkJCQkJCTB4NTgwCj4+ ICAgI2RlZmluZSBFTUNfRkJJT19DRkc3CQkJCQkJMHg1ODQKPj4gKyNkZWZpbmUgRU1DX0ZCSU9f Q0ZHN19DSDBfRU5BQkxFCQkJCUJJVCgxKQo+PiArI2RlZmluZSBFTUNfRkJJT19DRkc3X0NIMV9F TkFCTEUJCQkJQklUKDIpCj4+ICAgI2RlZmluZSBFTUNfREFUQV9CUkxTSEZUXzAJCQkJCTB4NTg4 Cj4+ICsjZGVmaW5lIEVNQ19EQVRBX0JSTFNIRlRfMF9SQU5LMF9CWVRFN19EQVRBX0JSTFNIRlRf U0hJRlQJMjEKPj4gKyNkZWZpbmUgRU1DX0RBVEFfQlJMU0hGVF8wX1JBTkswX0JZVEU3X0RBVEFf QlJMU0hGVF9NQVNLCVwKPj4gKwkoMHg3IDw8IEVNQ19EQVRBX0JSTFNIRlRfMF9SQU5LMF9CWVRF N19EQVRBX0JSTFNIRlRfU0hJRlQpCj4+ICsjZGVmaW5lIEVNQ19EQVRBX0JSTFNIRlRfMF9SQU5L MF9CWVRFNl9EQVRBX0JSTFNIRlRfU0hJRlQJMTgKPj4gKyNkZWZpbmUgRU1DX0RBVEFfQlJMU0hG VF8wX1JBTkswX0JZVEU2X0RBVEFfQlJMU0hGVF9NQVNLCVwKPj4gKwkoMHg3IDw8IEVNQ19EQVRB X0JSTFNIRlRfMF9SQU5LMF9CWVRFNl9EQVRBX0JSTFNIRlRfU0hJRlQpCj4+ICsjZGVmaW5lIEVN Q19EQVRBX0JSTFNIRlRfMF9SQU5LMF9CWVRFNV9EQVRBX0JSTFNIRlRfU0hJRlQJMTUKPj4gKyNk ZWZpbmUgRU1DX0RBVEFfQlJMU0hGVF8wX1JBTkswX0JZVEU1X0RBVEFfQlJMU0hGVF9NQVNLCVwK Pj4gKwkoMHg3IDw8IEVNQ19EQVRBX0JSTFNIRlRfMF9SQU5LMF9CWVRFNV9EQVRBX0JSTFNIRlRf U0hJRlQpCj4+ICsjZGVmaW5lIEVNQ19EQVRBX0JSTFNIRlRfMF9SQU5LMF9CWVRFNF9EQVRBX0JS TFNIRlRfU0hJRlQJMTIKPj4gKyNkZWZpbmUgRU1DX0RBVEFfQlJMU0hGVF8wX1JBTkswX0JZVEU0 X0RBVEFfQlJMU0hGVF9NQVNLCVwKPj4gKwkoMHg3IDw8IEVNQ19EQVRBX0JSTFNIRlRfMF9SQU5L MF9CWVRFNF9EQVRBX0JSTFNIRlRfU0hJRlQpCj4+ICsjZGVmaW5lIEVNQ19EQVRBX0JSTFNIRlRf MF9SQU5LMF9CWVRFM19EQVRBX0JSTFNIRlRfU0hJRlQJOQo+PiArI2RlZmluZSBFTUNfREFUQV9C UkxTSEZUXzBfUkFOSzBfQllURTNfREFUQV9CUkxTSEZUX01BU0sJXAo+PiArCSgweDcgPDwgRU1D X0RBVEFfQlJMU0hGVF8wX1JBTkswX0JZVEUzX0RBVEFfQlJMU0hGVF9TSElGVCkKPj4gKyNkZWZp bmUgRU1DX0RBVEFfQlJMU0hGVF8wX1JBTkswX0JZVEUyX0RBVEFfQlJMU0hGVF9TSElGVAk2Cj4+ ICsjZGVmaW5lIEVNQ19EQVRBX0JSTFNIRlRfMF9SQU5LMF9CWVRFMl9EQVRBX0JSTFNIRlRfTUFT SwlcCj4+ICsJKDB4NyA8PCBFTUNfREFUQV9CUkxTSEZUXzBfUkFOSzBfQllURTJfREFUQV9CUkxT SEZUX1NISUZUKQo+PiArI2RlZmluZSBFTUNfREFUQV9CUkxTSEZUXzBfUkFOSzBfQllURTFfREFU QV9CUkxTSEZUX1NISUZUCTMKPj4gKyNkZWZpbmUgRU1DX0RBVEFfQlJMU0hGVF8wX1JBTkswX0JZ VEUxX0RBVEFfQlJMU0hGVF9NQVNLCVwKPj4gKwkoMHg3IDw8IEVNQ19EQVRBX0JSTFNIRlRfMF9S QU5LMF9CWVRFMV9EQVRBX0JSTFNIRlRfU0hJRlQpCj4+ICsjZGVmaW5lIEVNQ19EQVRBX0JSTFNI RlRfMF9SQU5LMF9CWVRFMF9EQVRBX0JSTFNIRlRfU0hJRlQJMAo+PiArI2RlZmluZSBFTUNfREFU QV9CUkxTSEZUXzBfUkFOSzBfQllURTBfREFUQV9CUkxTSEZUX01BU0sJXAo+PiArCSgweDcgPDwg RU1DX0RBVEFfQlJMU0hGVF8wX1JBTkswX0JZVEUwX0RBVEFfQlJMU0hGVF9TSElGVCkKPj4gKwo+ PiAgICNkZWZpbmUgRU1DX0RBVEFfQlJMU0hGVF8xCQkJCQkweDU4Ywo+PiArI2RlZmluZSBFTUNf REFUQV9CUkxTSEZUXzFfUkFOSzFfQllURTdfREFUQV9CUkxTSEZUX1NISUZUCTIxCj4+ICsjZGVm aW5lIEVNQ19EQVRBX0JSTFNIRlRfMV9SQU5LMV9CWVRFN19EQVRBX0JSTFNIRlRfTUFTSwlcCj4+ ICsJKDB4NyA8PCBFTUNfREFUQV9CUkxTSEZUXzFfUkFOSzFfQllURTdfREFUQV9CUkxTSEZUX1NI SUZUKQo+PiArI2RlZmluZSBFTUNfREFUQV9CUkxTSEZUXzFfUkFOSzFfQllURTZfREFUQV9CUkxT SEZUX1NISUZUCTE4Cj4+ICsjZGVmaW5lIEVNQ19EQVRBX0JSTFNIRlRfMV9SQU5LMV9CWVRFNl9E QVRBX0JSTFNIRlRfTUFTSwlcCj4+ICsJKDB4NyA8PCBFTUNfREFUQV9CUkxTSEZUXzFfUkFOSzFf QllURTZfREFUQV9CUkxTSEZUX1NISUZUKQo+PiArI2RlZmluZSBFTUNfREFUQV9CUkxTSEZUXzFf UkFOSzFfQllURTVfREFUQV9CUkxTSEZUX1NISUZUCTE1Cj4+ICsjZGVmaW5lIEVNQ19EQVRBX0JS TFNIRlRfMV9SQU5LMV9CWVRFNV9EQVRBX0JSTFNIRlRfTUFTSwlcCj4+ICsJKDB4NyA8PCBFTUNf REFUQV9CUkxTSEZUXzFfUkFOSzFfQllURTVfREFUQV9CUkxTSEZUX1NISUZUKQo+PiArI2RlZmlu ZSBFTUNfREFUQV9CUkxTSEZUXzFfUkFOSzFfQllURTRfREFUQV9CUkxTSEZUX1NISUZUCTEyCj4+ ICsjZGVmaW5lIEVNQ19EQVRBX0JSTFNIRlRfMV9SQU5LMV9CWVRFNF9EQVRBX0JSTFNIRlRfTUFT SwlcCj4+ICsJKDB4NyA8PCBFTUNfREFUQV9CUkxTSEZUXzFfUkFOSzFfQllURTRfREFUQV9CUkxT SEZUX1NISUZUKQo+PiArI2RlZmluZSBFTUNfREFUQV9CUkxTSEZUXzFfUkFOSzFfQllURTNfREFU QV9CUkxTSEZUX1NISUZUCTkKPj4gKyNkZWZpbmUgRU1DX0RBVEFfQlJMU0hGVF8xX1JBTksxX0JZ VEUzX0RBVEFfQlJMU0hGVF9NQVNLCVwKPj4gKwkoMHg3IDw8IEVNQ19EQVRBX0JSTFNIRlRfMV9S QU5LMV9CWVRFM19EQVRBX0JSTFNIRlRfU0hJRlQpCj4+ICsjZGVmaW5lIEVNQ19EQVRBX0JSTFNI RlRfMV9SQU5LMV9CWVRFMl9EQVRBX0JSTFNIRlRfU0hJRlQJNgo+PiArI2RlZmluZSBFTUNfREFU QV9CUkxTSEZUXzFfUkFOSzFfQllURTJfREFUQV9CUkxTSEZUX01BU0sJXAo+PiArCSgweDcgPDwg RU1DX0RBVEFfQlJMU0hGVF8xX1JBTksxX0JZVEUyX0RBVEFfQlJMU0hGVF9TSElGVCkKPj4gKyNk ZWZpbmUgRU1DX0RBVEFfQlJMU0hGVF8xX1JBTksxX0JZVEUxX0RBVEFfQlJMU0hGVF9TSElGVAkz Cj4+ICsjZGVmaW5lIEVNQ19EQVRBX0JSTFNIRlRfMV9SQU5LMV9CWVRFMV9EQVRBX0JSTFNIRlRf TUFTSwlcCj4+ICsJKDB4NyA8PCBFTUNfREFUQV9CUkxTSEZUXzFfUkFOSzFfQllURTFfREFUQV9C UkxTSEZUX1NISUZUKQo+PiArI2RlZmluZSBFTUNfREFUQV9CUkxTSEZUXzFfUkFOSzFfQllURTBf REFUQV9CUkxTSEZUX1NISUZUCTAKPj4gKyNkZWZpbmUgRU1DX0RBVEFfQlJMU0hGVF8xX1JBTksx X0JZVEUwX0RBVEFfQlJMU0hGVF9NQVNLCVwKPj4gKwkoMHg3IDw8IEVNQ19EQVRBX0JSTFNIRlRf MV9SQU5LMV9CWVRFMF9EQVRBX0JSTFNIRlRfU0hJRlQpCj4+ICsKPj4gICAjZGVmaW5lIEVNQ19S RkNQQgkJCQkJCTB4NTkwCj4+ICAgI2RlZmluZSBFTUNfRFFTX0JSTFNIRlRfMAkJCQkJMHg1OTQK Pj4gICAjZGVmaW5lIEVNQ19EUVNfQlJMU0hGVF8xCQkJCQkweDU5OAo+PiBAQCAtMjAxLDYgKzMw NywxMCBAQAo+PiAgICNkZWZpbmUgRU1DX1FVU0VfQlJMU0hGVF8zCQkJCQkweDVjNAo+PiAgICNk ZWZpbmUgRU1DX0RMTF9DRkdfMAkJCQkJCTB4NWU0Cj4+ICAgI2RlZmluZSBFTUNfRExMX0NGR18x CQkJCQkJMHg1ZTgKPj4gKyNkZWZpbmUgRU1DX0RMTF9DRkdfMV9ERExMQ0FMX0NUUkxfU1RBUlRf VFJJTV9TSElGVAkJMTAKPj4gKyNkZWZpbmUgRU1DX0RMTF9DRkdfMV9ERExMQ0FMX0NUUkxfU1RB UlRfVFJJTV9NQVNLCQlcCj4+ICsJKDB4N2ZmIDw8IEVNQ19ETExfQ0ZHXzFfRERMTENBTF9DVFJM X1NUQVJUX1RSSU1fU0hJRlQpCj4+ICsKPj4gICAjZGVmaW5lIEVNQ19DT05GSUdfU0FNUExFX0RF TEFZCQkJCQkweDVmMAo+PiAgICNkZWZpbmUgRU1DX1BNQUNST19RVVNFX0RETExfUkFOSzBfMAkJ CQkweDYwMAo+PiAgICNkZWZpbmUgRU1DX1BNQUNST19RVVNFX0RETExfUkFOSzBfMQkJCQkweDYw NAo+PiBAQCAtMjE1LDE1ICszMjUsMTAzIEBACj4+ICAgI2RlZmluZSBFTUNfUE1BQ1JPX1FVU0Vf RERMTF9SQU5LMV80CQkJCTB4NjMwCj4+ICAgI2RlZmluZSBFTUNfUE1BQ1JPX1FVU0VfRERMTF9S QU5LMV81CQkJCTB4NjM0Cj4+ICAgI2RlZmluZSBFTUNfUE1BQ1JPX09CX0RETExfTE9OR19EUV9S QU5LMF8wCQkJMHg2NDAKPj4gKyNkZWZpbmUgRU1DX1BNQUNST19PQl9ERExMX0xPTkdfRFFfUkFO SzBfMF9PQl9ERExMX0xPTkdfRFFfUkFOSzBfQllURTFfU0hJRlQgXAo+PiArCTE2Cj4+ICsjZGVm aW5lIEVNQ19QTUFDUk9fT0JfRERMTF9MT05HX0RRX1JBTkswXzBfT0JfRERMTF9MT05HX0RRX1JB TkswX0JZVEUxX01BU0sgIFwKPj4gKwkoMHgzZmYgPDwJCQkJCQkJICAgICBcCj4+ICsJRU1DX1BN QUNST19PQl9ERExMX0xPTkdfRFFfUkFOSzBfMF9PQl9ERExMX0xPTkdfRFFfUkFOSzBfQllURTFf U0hJRlQpCj4+ICsjZGVmaW5lIEVNQ19QTUFDUk9fT0JfRERMTF9MT05HX0RRX1JBTkswXzBfT0Jf RERMTF9MT05HX0RRX1JBTkswX0JZVEUwX1NISUZUIFwKPj4gKwkwCj4+ICsjZGVmaW5lIEVNQ19Q TUFDUk9fT0JfRERMTF9MT05HX0RRX1JBTkswXzBfT0JfRERMTF9MT05HX0RRX1JBTkswX0JZVEUw X01BU0sgXAo+PiArCSgweDNmZiA8PAkJCQkJCQkgICAgXAo+PiArCUVNQ19QTUFDUk9fT0JfRERM TF9MT05HX0RRX1JBTkswXzBfT0JfRERMTF9MT05HX0RRX1JBTkswX0JZVEUwX1NISUZUKQo+PiAr Cj4+ICAgI2RlZmluZSBFTUNfUE1BQ1JPX09CX0RETExfTE9OR19EUV9SQU5LMF8xCQkJMHg2NDQK Pj4gKyNkZWZpbmUgRU1DX1BNQUNST19PQl9ERExMX0xPTkdfRFFfUkFOSzBfMV9PQl9ERExMX0xP TkdfRFFfUkFOSzBfQllURTNfU0hJRlQgXAo+PiArCTE2Cj4+ICsjZGVmaW5lIEVNQ19QTUFDUk9f T0JfRERMTF9MT05HX0RRX1JBTkswXzFfT0JfRERMTF9MT05HX0RRX1JBTkswX0JZVEUzX01BU0sg IFwKPj4gKwkoMHgzZmYgPDwJCQkJCQkJICAgICBcCj4+ICsJRU1DX1BNQUNST19PQl9ERExMX0xP TkdfRFFfUkFOSzBfMV9PQl9ERExMX0xPTkdfRFFfUkFOSzBfQllURTNfU0hJRlQpCj4+ICsjZGVm aW5lIEVNQ19QTUFDUk9fT0JfRERMTF9MT05HX0RRX1JBTkswXzFfT0JfRERMTF9MT05HX0RRX1JB TkswX0JZVEUyX1NISUZUIFwKPj4gKwkwCj4+ICsjZGVmaW5lIEVNQ19QTUFDUk9fT0JfRERMTF9M T05HX0RRX1JBTkswXzFfT0JfRERMTF9MT05HX0RRX1JBTkswX0JZVEUyX01BU0sgIFwKPj4gKwko MHgzZmYgPDwJCQkJCQkJICAgICBcCj4+ICsJRU1DX1BNQUNST19PQl9ERExMX0xPTkdfRFFfUkFO SzBfMV9PQl9ERExMX0xPTkdfRFFfUkFOSzBfQllURTJfU0hJRlQpCj4+ICsKPj4gICAjZGVmaW5l IEVNQ19QTUFDUk9fT0JfRERMTF9MT05HX0RRX1JBTkswXzIJCQkweDY0OAo+PiArI2RlZmluZSBF TUNfUE1BQ1JPX09CX0RETExfTE9OR19EUV9SQU5LMF8yX09CX0RETExfTE9OR19EUV9SQU5LMF9C WVRFNV9TSElGVCAgXAo+PiArCTE2Cj4+ICsjZGVmaW5lIEVNQ19QTUFDUk9fT0JfRERMTF9MT05H X0RRX1JBTkswXzJfT0JfRERMTF9MT05HX0RRX1JBTkswX0JZVEU1X01BU0sgIFwKPj4gKwkoMHgz ZmYgPDwJCQkJCQkJICAgICBcCj4+ICsJRU1DX1BNQUNST19PQl9ERExMX0xPTkdfRFFfUkFOSzBf Ml9PQl9ERExMX0xPTkdfRFFfUkFOSzBfQllURTVfU0hJRlQpCj4+ICsjZGVmaW5lIEVNQ19QTUFD Uk9fT0JfRERMTF9MT05HX0RRX1JBTkswXzJfT0JfRERMTF9MT05HX0RRX1JBTkswX0JZVEU0X1NI SUZUIFwKPj4gKwkwCj4+ICsjZGVmaW5lIEVNQ19QTUFDUk9fT0JfRERMTF9MT05HX0RRX1JBTksw XzJfT0JfRERMTF9MT05HX0RRX1JBTkswX0JZVEU0X01BU0sgIFwKPj4gKwkoMHgzZmYgPDwJCQkJ CQkJICAgICBcCj4+ICsJRU1DX1BNQUNST19PQl9ERExMX0xPTkdfRFFfUkFOSzBfMl9PQl9ERExM X0xPTkdfRFFfUkFOSzBfQllURTRfU0hJRlQpCj4+ICsKPj4gICAjZGVmaW5lIEVNQ19QTUFDUk9f T0JfRERMTF9MT05HX0RRX1JBTkswXzMJCQkweDY0Ywo+PiArI2RlZmluZSBFTUNfUE1BQ1JPX09C X0RETExfTE9OR19EUV9SQU5LMF8zX09CX0RETExfTE9OR19EUV9SQU5LMF9CWVRFN19TSElGVCBc Cj4+ICsJMTYKPj4gKyNkZWZpbmUgRU1DX1BNQUNST19PQl9ERExMX0xPTkdfRFFfUkFOSzBfM19P Ql9ERExMX0xPTkdfRFFfUkFOSzBfQllURTdfTUFTSyAgXAo+PiArCSgweDNmZiA8PAkJCQkJCQkg ICAgIFwKPj4gKwlFTUNfUE1BQ1JPX09CX0RETExfTE9OR19EUV9SQU5LMF8zX09CX0RETExfTE9O R19EUV9SQU5LMF9CWVRFN19TSElGVCkKPj4gKyNkZWZpbmUgRU1DX1BNQUNST19PQl9ERExMX0xP TkdfRFFfUkFOSzBfM19PQl9ERExMX0xPTkdfRFFfUkFOSzBfQllURTZfU0hJRlQgXAo+PiArCTAK Pj4gKyNkZWZpbmUgRU1DX1BNQUNST19PQl9ERExMX0xPTkdfRFFfUkFOSzBfM19PQl9ERExMX0xP TkdfRFFfUkFOSzBfQllURTZfTUFTSyAgXAo+PiArCSgweDNmZiA8PAkJCQkJCQkgICAgIFwKPj4g KwlFTUNfUE1BQ1JPX09CX0RETExfTE9OR19EUV9SQU5LMF8zX09CX0RETExfTE9OR19EUV9SQU5L MF9CWVRFNl9TSElGVCkKPj4gKwo+PiAgICNkZWZpbmUgRU1DX1BNQUNST19PQl9ERExMX0xPTkdf RFFfUkFOSzBfNAkJCTB4NjUwCj4+ICAgI2RlZmluZSBFTUNfUE1BQ1JPX09CX0RETExfTE9OR19E UV9SQU5LMF81CQkJMHg2NTQKPj4gICAjZGVmaW5lIEVNQ19QTUFDUk9fT0JfRERMTF9MT05HX0RR X1JBTksxXzAJCQkweDY2MAo+PiArI2RlZmluZSBFTUNfUE1BQ1JPX09CX0RETExfTE9OR19EUV9S QU5LMV8wX09CX0RETExfTE9OR19EUV9SQU5LMV9CWVRFMV9TSElGVCBcCj4+ICsJMTYKPj4gKyNk ZWZpbmUgRU1DX1BNQUNST19PQl9ERExMX0xPTkdfRFFfUkFOSzFfMF9PQl9ERExMX0xPTkdfRFFf UkFOSzFfQllURTFfTUFTSyAgXAo+PiArCSgweDNmZiA8PAkJCQkJCQkgICAgIFwKPj4gKwlFTUNf UE1BQ1JPX09CX0RETExfTE9OR19EUV9SQU5LMV8wX09CX0RETExfTE9OR19EUV9SQU5LMV9CWVRF MV9TSElGVCkKPj4gKyNkZWZpbmUgRU1DX1BNQUNST19PQl9ERExMX0xPTkdfRFFfUkFOSzFfMF9P Ql9ERExMX0xPTkdfRFFfUkFOSzFfQllURTBfU0hJRlQgXAo+PiArCTAKPj4gKyNkZWZpbmUgRU1D X1BNQUNST19PQl9ERExMX0xPTkdfRFFfUkFOSzFfMF9PQl9ERExMX0xPTkdfRFFfUkFOSzFfQllU RTBfTUFTSyAgXAo+PiArCSgweDNmZiA8PAkJCQkJCQkgICAgIFwKPj4gKwlFTUNfUE1BQ1JPX09C X0RETExfTE9OR19EUV9SQU5LMV8wX09CX0RETExfTE9OR19EUV9SQU5LMV9CWVRFMF9TSElGVCkK Pj4gKwo+PiAgICNkZWZpbmUgRU1DX1BNQUNST19PQl9ERExMX0xPTkdfRFFfUkFOSzFfMQkJCTB4 NjY0Cj4+ICsjZGVmaW5lIEVNQ19QTUFDUk9fT0JfRERMTF9MT05HX0RRX1JBTksxXzFfT0JfRERM TF9MT05HX0RRX1JBTksxX0JZVEUzX1NISUZUIFwKPj4gKwkxNgo+PiArI2RlZmluZSBFTUNfUE1B Q1JPX09CX0RETExfTE9OR19EUV9SQU5LMV8xX09CX0RETExfTE9OR19EUV9SQU5LMV9CWVRFM19N QVNLICBcCj4+ICsJKDB4M2ZmIDw8CQkJCQkJCSAgICAgXAo+PiArCUVNQ19QTUFDUk9fT0JfRERM TF9MT05HX0RRX1JBTksxXzFfT0JfRERMTF9MT05HX0RRX1JBTksxX0JZVEUzX1NISUZUKQo+PiAr I2RlZmluZSBFTUNfUE1BQ1JPX09CX0RETExfTE9OR19EUV9SQU5LMV8xX09CX0RETExfTE9OR19E UV9SQU5LMV9CWVRFMl9TSElGVCBcCj4+ICsJMAo+PiArI2RlZmluZSBFTUNfUE1BQ1JPX09CX0RE TExfTE9OR19EUV9SQU5LMV8xX09CX0RETExfTE9OR19EUV9SQU5LMV9CWVRFMl9NQVNLICBcCj4+ ICsJKDB4M2ZmIDw8CQkJCQkJCSAgICAgXAo+PiArCUVNQ19QTUFDUk9fT0JfRERMTF9MT05HX0RR X1JBTksxXzFfT0JfRERMTF9MT05HX0RRX1JBTksxX0JZVEUyX1NISUZUKQo+PiArCj4+ICAgI2Rl ZmluZSBFTUNfUE1BQ1JPX09CX0RETExfTE9OR19EUV9SQU5LMV8yCQkJMHg2NjgKPj4gKyNkZWZp bmUgRU1DX1BNQUNST19PQl9ERExMX0xPTkdfRFFfUkFOSzFfMl9PQl9ERExMX0xPTkdfRFFfUkFO SzFfQllURTVfU0hJRlQgXAo+PiArCTE2Cj4+ICsjZGVmaW5lIEVNQ19QTUFDUk9fT0JfRERMTF9M T05HX0RRX1JBTksxXzJfT0JfRERMTF9MT05HX0RRX1JBTksxX0JZVEU1X01BU0sgIFwKPj4gKwko MHgzZmYgPDwJCQkJCQkJICAgICBcCj4+ICsJRU1DX1BNQUNST19PQl9ERExMX0xPTkdfRFFfUkFO SzFfMl9PQl9ERExMX0xPTkdfRFFfUkFOSzFfQllURTVfU0hJRlQpCj4+ICsjZGVmaW5lIEVNQ19Q TUFDUk9fT0JfRERMTF9MT05HX0RRX1JBTksxXzJfT0JfRERMTF9MT05HX0RRX1JBTksxX0JZVEU0 X1NISUZUIFwKPj4gKwkwCj4+ICsjZGVmaW5lIEVNQ19QTUFDUk9fT0JfRERMTF9MT05HX0RRX1JB TksxXzJfT0JfRERMTF9MT05HX0RRX1JBTksxX0JZVEU0X01BU0sgIFwKPj4gKwkoMHgzZmYgPDwJ CQkJCQkJICAgICBcCj4+ICsJRU1DX1BNQUNST19PQl9ERExMX0xPTkdfRFFfUkFOSzFfMl9PQl9E RExMX0xPTkdfRFFfUkFOSzFfQllURTRfU0hJRlQpCj4+ICsKPj4gICAjZGVmaW5lIEVNQ19QTUFD Uk9fT0JfRERMTF9MT05HX0RRX1JBTksxXzMJCQkweDY2Ywo+PiArI2RlZmluZSBFTUNfUE1BQ1JP X09CX0RETExfTE9OR19EUV9SQU5LMV8zX09CX0RETExfTE9OR19EUV9SQU5LMV9CWVRFN19TSElG VCBcCj4+ICsJMTYKPj4gKyNkZWZpbmUgRU1DX1BNQUNST19PQl9ERExMX0xPTkdfRFFfUkFOSzFf M19PQl9ERExMX0xPTkdfRFFfUkFOSzFfQllURTdfTUFTSyAgXAo+PiArCSgweDNmZiA8PAkJCQkJ CQkgICAgIFwKPj4gKwlFTUNfUE1BQ1JPX09CX0RETExfTE9OR19EUV9SQU5LMV8zX09CX0RETExf TE9OR19EUV9SQU5LMV9CWVRFN19TSElGVCkKPj4gKyNkZWZpbmUgRU1DX1BNQUNST19PQl9ERExM X0xPTkdfRFFfUkFOSzFfM19PQl9ERExMX0xPTkdfRFFfUkFOSzFfQllURTZfU0hJRlQgXAo+PiAr CTAKPj4gKyNkZWZpbmUgRU1DX1BNQUNST19PQl9ERExMX0xPTkdfRFFfUkFOSzFfM19PQl9ERExM X0xPTkdfRFFfUkFOSzFfQllURTZfTUFTSyAgXAo+PiArCSgweDNmZiA8PAkJCQkJCQkgICAgIFwK Pj4gKwlFTUNfUE1BQ1JPX09CX0RETExfTE9OR19EUV9SQU5LMV8zX09CX0RETExfTE9OR19EUV9S QU5LMV9CWVRFNl9TSElGVCkKPj4gKwo+PiAgICNkZWZpbmUgRU1DX1BNQUNST19PQl9ERExMX0xP TkdfRFFfUkFOSzFfNAkJCTB4NjcwCj4+ICAgI2RlZmluZSBFTUNfUE1BQ1JPX09CX0RETExfTE9O R19EUV9SQU5LMV81CQkJMHg2NzQKPj4gICAjZGVmaW5lIEVNQ19QTUFDUk9fT0JfRERMTF9MT05H X0RRU19SQU5LMF8wCQkJMHg2ODAKPj4gQEAgLTQzMiw3ICs2MzAsMTggQEAKPj4gICAjZGVmaW5l IEVNQ19QTUFDUk9fQ01EX1JYX1RFUk1fTU9ERQkJCQkweGM1OAo+PiAgICNkZWZpbmUgRU1DX1BN QUNST19EQVRBX1JYX1RFUk1fTU9ERQkJCQkweGM1Ywo+PiAgICNkZWZpbmUgRU1DX1BNQUNST19D TURfUEFEX1RYX0NUUkwJCQkJMHhjNjAKPj4gKyNkZWZpbmUgRU1DX1BNQUNST19DTURfUEFEX1RY X0NUUkxfQ01EX0RRX1RYX0VfRENDCQlCSVQoMSkKPj4gKyNkZWZpbmUgRU1DX1BNQUNST19DTURf UEFEX1RYX0NUUkxfQ01EX0RRU1BfVFhfRV9EQ0MJCUJJVCg5KQo+PiArI2RlZmluZSBFTUNfUE1B Q1JPX0NNRF9QQURfVFhfQ1RSTF9DTURfRFFTTl9UWF9FX0RDQwkJQklUKDE2KQo+PiArI2RlZmlu ZSBFTUNfUE1BQ1JPX0NNRF9QQURfVFhfQ1RSTF9DTURfQ01EX1RYX0VfRENDCQlCSVQoMjQpCj4+ ICsjZGVmaW5lIEVNQ19QTUFDUk9fQ01EX1BBRF9UWF9DVFJMX0NNRF9EUV9UWF9EUlZGT1JDRU9O CQlCSVQoMjYpCj4+ICsKPj4gICAjZGVmaW5lIEVNQ19QTUFDUk9fREFUQV9QQURfVFhfQ1RSTAkJ CQkweGM2NAo+PiArI2RlZmluZSBFTUNfUE1BQ1JPX0RBVEFfUEFEX1RYX0NUUkxfREFUQV9EUV9U WF9FX0RDQwkJQklUKDEpCj4+ICsjZGVmaW5lIEVNQ19QTUFDUk9fREFUQV9QQURfVFhfQ1RSTF9E QVRBX0RRU1BfVFhfRV9EQ0MJCUJJVCg5KQo+PiArI2RlZmluZSBFTUNfUE1BQ1JPX0RBVEFfUEFE X1RYX0NUUkxfREFUQV9EUVNOX1RYX0VfRENDCQlCSVQoMTYpCj4+ICsjZGVmaW5lIEVNQ19QTUFD Uk9fREFUQV9QQURfVFhfQ1RSTF9EQVRBX0NNRF9UWF9FX0RDQwkJQklUKDI0KQo+PiArCj4+ICAg I2RlZmluZSBFTUNfUE1BQ1JPX0NPTU1PTl9QQURfVFhfQ1RSTAkJCQkweGM2OAo+PiAgICNkZWZp bmUgRU1DX1BNQUNST19BVVRPQ0FMX0NGR19DT01NT04JCQkJMHhjNzgKPj4gICAjZGVmaW5lIEVN Q19QTUFDUk9fVlRUR0VOX0NUUkxfMgkJCQkweGNmMAo+PiBAQCAtOTU0LDYgKzExNjMsMTYgQEAg ZW51bSB7Cj4+ICAgCURSQU1fVFlQRV9ERFIyID0gMywKPj4gICB9Owo+PiAgIAo+PiArZW51bSB7 Cj4+ICsJU0lOR0xFX0NIQU5ORUwgPSAwLAo+PiArCURVQUxfQ0hBTk5FTAo+PiArfTsKPj4gKwo+ PiArZW51bSB7Cj4+ICsJRExMX09GRiwKPj4gKwlETExfT04KPj4gK307Cj4+ICsKPj4gICBzdHJ1 Y3QgZW1jX3RhYmxlIHsKPj4gICAJdTMyIHJldjsKPj4gICAJY2hhciBkdmZzX3Zlcls2MF07Cj4+ IEBAIC0xMDc1LDkgKzEyOTQsNTUgQEAgc3RydWN0IHN1cHBvcnRlZF9zZXF1ZW5jZSB7Cj4+ICAg CWNoYXIgICpzZXFfcmV2Owo+PiAgIH07Cj4+ICAgCj4+ICtleHRlcm4gdTMyIGJ1cnN0X21jX3Jl Z3Nfb2ZmW107Cj4+ICtleHRlcm4gdTMyIGJ1cnN0X3JlZ3Nfb2ZmW107Cj4+ICtleHRlcm4gdTMy IGJ1cnN0X3JlZ3NfcGVyX2NoX29mZltdOwo+PiArZXh0ZXJuIHUzMiBidXJzdF9yZWdzX3Blcl9j aF90eXBlW107Cj4+ICtleHRlcm4gdW5zaWduZWQgbG9uZyBkcmFtX292ZXJfdGVtcF9zdGF0ZTsK Pj4gK2V4dGVybiB1MzIgbGFfc2NhbGVfcmVnc19vZmZbXTsKPj4gK2V4dGVybiB1MzIgdHJpbV9y ZWdzX29mZltdOwo+PiArZXh0ZXJuIHUzMiB0cmltX3JlZ3NfcGVyX2NoX29mZltdOwo+PiArZXh0 ZXJuIHUzMiB0cmltX3JlZ3NfcGVyX2NoX3R5cGVbXTsKPj4gK2V4dGVybiB1MzIgdnJlZl9yZWdz X3Blcl9jaF9vZmZbXTsKPj4gK2V4dGVybiB1MzIgdnJlZl9yZWdzX3Blcl9jaF90eXBlW107Cj4+ ICsKPj4gK3ZvaWQgY2NmaWZvX3dyaXRlbChzdHJ1Y3QgdGVncmFfZW1jICplbWMsIHUzMiB2YWws IHVuc2lnbmVkIGxvbmcgYWRkciwKPj4gKwkJICAgdTMyIGRlbGF5KTsKPj4gK3UzMiBkaXZfbzMo dTMyIGEsIHUzMiBiKTsKPj4gK3ZvaWQgZW1jX3dyaXRlbChzdHJ1Y3QgdGVncmFfZW1jICplbWMs IHUzMiB2YWwsIHVuc2lnbmVkIGxvbmcgb2Zmc2V0KTsKPj4gK3UzMiAgZW1jX3JlYWRsKHN0cnVj dCB0ZWdyYV9lbWMgKmVtYywgdW5zaWduZWQgbG9uZyBvZmZzZXQpOwo+PiArdm9pZCBlbWNfd3Jp dGVsX3Blcl9jaChzdHJ1Y3QgdGVncmFfZW1jICplbWMsIHUzMiB2YWwsIGludCB0eXBlLAo+PiAr CQkgICAgICAgdW5zaWduZWQgbG9uZyBvZmZzZXQpOwo+PiArdTMyICBlbWMxX3JlYWRsKHN0cnVj dCB0ZWdyYV9lbWMgKmVtYywgdW5zaWduZWQgbG9uZyBvZmZzZXQpOwo+PiArCj4+ICt2b2lkIGRv X2Nsb2NrX2NoYW5nZShzdHJ1Y3QgdGVncmFfZW1jICplbWMsIHUzMiBjbGtzcmMpOwo+PiArdm9p ZCBlbWNfc2V0X3NoYWRvd19ieXBhc3Moc3RydWN0IHRlZ3JhX2VtYyAqZW1jLCBpbnQgc2V0KTsK Pj4gK3ZvaWQgZW1jX3RpbWluZ191cGRhdGUoc3RydWN0IHRlZ3JhX2VtYyAqZW1jLCBpbnQgZHVh bF9jaGFuKTsKPj4gK3UzMiBnZXRfZGxsX3N0YXRlKHN0cnVjdCBlbWNfdGFibGUgKm5leHRfdGlt aW5nKTsKPj4gK3N0cnVjdCBlbWNfdGFibGUgKmdldF90aW1pbmdfZnJvbV9mcmVxKHN0cnVjdCB0 ZWdyYV9lbWMgKmVtYywKPj4gKwkJCQkgICAgICAgdW5zaWduZWQgbG9uZyByYXRlKTsKPj4gK3Zv aWQgc2V0X292ZXJfdGVtcF90aW1pbmcoc3RydWN0IHRlZ3JhX2VtYyAqZW1jLCBzdHJ1Y3QgZW1j X3RhYmxlICp0aW1pbmcsCj4+ICsJCQkgIHVuc2lnbmVkIGxvbmcgc3RhdGUpOwo+PiAgIGludCB0 ZWdyYV9lbWNfZHRfcGFyc2VfcGRhdGEoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldiwKPj4g ICAJCQkgICAgIHN0cnVjdCBlbWNfdGFibGUgKip0YWJsZXMsCj4+ICAgCQkJICAgICBzdHJ1Y3Qg ZW1jX3RhYmxlICoqZGVyYXRlZF90YWJsZXMsCj4+ICAgCQkJICAgICBpbnQgKm51bV9lbnRyaWVz KTsKPj4gK3UzMiB0ZWdyYTIxMF9hY3R1YWxfb3NjX2Nsb2Nrcyh1MzIgaW4pOwo+PiArdTMyIHRl Z3JhMjEwX2FwcGx5X3BlcmlvZGljX2NvbXBlbnNhdGlvbl90cmltbWVyKHN0cnVjdCBlbWNfdGFi bGUgKm5leHRfdGltaW5nLAo+PiArCQkJCQkJIHUzMiBvZmZzZXQpOwo+PiArdm9pZCB0ZWdyYTIx MF9kbGxfZGlzYWJsZShzdHJ1Y3QgdGVncmFfZW1jICplbWMsIGludCBjaGFubmVsX21vZGUpOwo+ PiArdm9pZCB0ZWdyYTIxMF9kbGxfZW5hYmxlKHN0cnVjdCB0ZWdyYV9lbWMgKmVtYywgaW50IGNo YW5uZWxfbW9kZSk7Cj4+ICt1MzIgdGVncmEyMTBfZGxsX3ByZWxvY2soc3RydWN0IHRlZ3JhX2Vt YyAqZW1jLCBpbnQgZHZmc193aXRoX3RyYWluaW5nLAo+PiArCQkJIHUzMiBjbGtzcmMpOwo+PiAr dTMyIHRlZ3JhMjEwX2R2ZnNfcG93ZXJfcmFtcF9kb3duKHN0cnVjdCB0ZWdyYV9lbWMgKmVtYywg dTMyIGNsaywKPj4gKwkJCQkgIGludCBmbGlwX2JhY2t3YXJkKTsKPj4gK3UzMiB0ZWdyYTIxMF9k dmZzX3Bvd2VyX3JhbXBfdXAoc3RydWN0IHRlZ3JhX2VtYyAqZW1jLCB1MzIgY2xrLAo+PiArCQkJ CWludCBmbGlwX2JhY2t3YXJkKTsKPj4gK3ZvaWQgdGVncmEyMTBfdXBkYXRlX2VtY19hbHRfdGlt aW5nKHN0cnVjdCB0ZWdyYV9lbWMgKmVtYywKPj4gKwkJCQkgICAgc3RydWN0IGVtY190YWJsZSAq Y3VycmVudF90aW1pbmcpOwo+PiArdm9pZCB0ZWdyYTIxMF9yZXNldF9kcmFtX2Nsa3RyZWVfdmFs dWVzKHN0cnVjdCBlbWNfdGFibGUgKnRhYmxlKTsKPj4gK3ZvaWQgdGVncmEyMTBfc3RhcnRfcGVy aW9kaWNfY29tcGVuc2F0aW9uKHN0cnVjdCB0ZWdyYV9lbWMgKmVtYyk7Cj4+ICtpbnQgd2FpdF9m b3JfdXBkYXRlKHN0cnVjdCB0ZWdyYV9lbWMgKmVtYywgdTMyIHN0YXR1c19yZWcsIHUzMiBiaXRf bWFzaywKPj4gKwkJICAgIGJvb2wgdXBkYXRlZF9zdGF0ZSwgaW50IGNoYW4pOwo+PiAgIAo+PiAg ICNlbmRpZgo+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9tZW1vcnkvdGVncmEvdGVncmEyMTAtZW1j LmMgYi9kcml2ZXJzL21lbW9yeS90ZWdyYS90ZWdyYTIxMC1lbWMuYwo+PiBpbmRleCAwYzIwYmNk MGU2ZGUuLjI2ZDBkZTBhYjMxOSAxMDA2NDQKPj4gLS0tIGEvZHJpdmVycy9tZW1vcnkvdGVncmEv dGVncmEyMTAtZW1jLmMKPj4gKysrIGIvZHJpdmVycy9tZW1vcnkvdGVncmEvdGVncmEyMTAtZW1j LmMKPj4gQEAgLTIwLDYgKzIwLDM3IEBACj4+ICAgI2RlZmluZSBURUdSQV9FTUNfVEFCTEVfTUFY X1NJWkUJCTE2Cj4+ICAgI2RlZmluZSBURUdSQTIxMF9FTUNfU1VTUEVORF9SQVRFCQkyMDQwMDAw MDAKPj4gICAKPj4gKyNkZWZpbmUgRU1DMF9FTUNfREFUQV9CUkxTSEZUXzBfSU5ERVgJMgo+PiAr I2RlZmluZSBFTUMxX0VNQ19EQVRBX0JSTFNIRlRfMF9JTkRFWAkzCj4+ICsjZGVmaW5lIEVNQzBf RU1DX0RBVEFfQlJMU0hGVF8xX0lOREVYCTQKPj4gKyNkZWZpbmUgRU1DMV9FTUNfREFUQV9CUkxT SEZUXzFfSU5ERVgJNQo+PiArCj4+ICsjZGVmaW5lIFRSSU1fUkVHKGNoYW4sIHJhbmssIHJlZywg Ynl0ZSkJCQkJCVwKPj4gKwkoKChFTUNfUE1BQ1JPX09CX0RETExfTE9OR19EUV9SQU5LICMjIHJh bmsgIyMgXyAjIyByZWcgIyMJXAo+PiArCSAgIF9PQl9ERExMX0xPTkdfRFFfUkFOSyAjIyByYW5r ICMjIF9CWVRFICMjIGJ5dGUgIyMgX01BU0sgJglcCj4+ICsJICAgbmV4dF90aW1pbmctPnRyaW1f cmVnc1tFTUNfUE1BQ1JPX09CX0RETExfTE9OR19EUV9SQU5LICMjCVwKPj4gKwkJCQkgcmFuayAj IyBfICMjIHJlZyAjIyBfSU5ERVhdKSA+PglcCj4+ICsJICBFTUNfUE1BQ1JPX09CX0RETExfTE9O R19EUV9SQU5LICMjIHJhbmsgIyMgXyAjIyByZWcgIyMJXAo+PiArCSAgX09CX0RETExfTE9OR19E UV9SQU5LICMjIHJhbmsgIyMgX0JZVEUgIyMgYnl0ZSAjIyBfU0hJRlQpCVwKPj4gKwkgKwkJCQkJ CQkJXAo+PiArCSAoKChFTUNfREFUQV9CUkxTSEZUXyAjIyByYW5rICMjIF9SQU5LICMjIHJhbmsg IyMgX0JZVEUgIyMJXAo+PiArCSAgICBieXRlICMjIF9EQVRBX0JSTFNIRlRfTUFTSyAmCQkJCVwK Pj4gKwkgICAgbmV4dF90aW1pbmctPnRyaW1fcGVyY2hfcmVnc1tFTUMgIyMgY2hhbiAjIwkJCVwK Pj4gKwkJCSAgICAgIF9FTUNfREFUQV9CUkxTSEZUXyAjIyByYW5rICMjIF9JTkRFWF0pID4+CVwK Pj4gKwkgICBFTUNfREFUQV9CUkxTSEZUXyAjIyByYW5rICMjIF9SQU5LICMjIHJhbmsgIyMgX0JZ VEUgIyMJXAo+PiArCSAgIGJ5dGUgIyMgX0RBVEFfQlJMU0hGVF9TSElGVCkgKiA2NCkpCj4+ICsK Pj4gKyNkZWZpbmUgQ0FMQ19URU1QKHJhbmssIHJlZywgYnl0ZTEsIGJ5dGUyLCBuKQkJCQlcCj4+ ICsJKCgobmV3W25dIDw8IEVNQ19QTUFDUk9fT0JfRERMTF9MT05HX0RRX1JBTksgIyMgcmFuayAj IyBfICMjCVwKPj4gKwkgICByZWcgIyMgX09CX0RETExfTE9OR19EUV9SQU5LICMjIHJhbmsgIyMg X0JZVEUgIyMgYnl0ZTEgIyMgX1NISUZUKSAmIFwKPj4gKwkgIEVNQ19QTUFDUk9fT0JfRERMTF9M T05HX0RRX1JBTksgIyMgcmFuayAjIyBfICMjIHJlZyAjIwlcCj4+ICsJICBfT0JfRERMTF9MT05H X0RRX1JBTksgIyMgcmFuayAjIyBfQllURSAjIyBieXRlMSAjIyBfTUFTSykJXAo+PiArCSB8CQkJ CQkJCQlcCj4+ICsJICgobmV3W24gKyAxXSA8PCBFTUNfUE1BQ1JPX09CX0RETExfTE9OR19EUV9S QU5LICMjIHJhbmsgIyMgXyAjI1wKPj4gKwkgICByZWcgIyMgX09CX0RETExfTE9OR19EUV9SQU5L ICMjIHJhbmsgIyMgX0JZVEUgIyMgYnl0ZTIgIyMgX1NISUZUKSAmIFwKPj4gKwkgIEVNQ19QTUFD Uk9fT0JfRERMTF9MT05HX0RRX1JBTksgIyMgcmFuayAjIyBfICMjIHJlZyAjIwlcCj4+ICsJICBf T0JfRERMTF9MT05HX0RRX1JBTksgIyMgcmFuayAjIyBfQllURSAjIyBieXRlMiAjIyBfTUFTSykp CVwKPj4gKwo+PiAgIGVudW0gVEVHUkFfRU1DX1NPVVJDRSB7Cj4+ICAgCVRFR1JBX0VNQ19TUkNf UExMTSwKPj4gICAJVEVHUkFfRU1DX1NSQ19QTExDLAo+PiBAQCAtMzIsNiArNjMsMTQgQEAgZW51 bSBURUdSQV9FTUNfU09VUkNFIHsKPj4gICAJVEVHUkFfRU1DX1NSQ19DT1VOVCwKPj4gICB9Owo+ PiAgIAo+PiArZW51bSB7Cj4+ICsJVEVHUkFfRFJBTV9PVkVSX1RFTVBfTk9ORSA9IDAsCj4+ICsJ VEVHUkFfRFJBTV9PVkVSX1RFTVBfUkVGUkVTSF9YMiwKPj4gKwlURUdSQV9EUkFNX09WRVJfVEVN UF9SRUZSRVNIX1g0LAo+PiArCVRFR1JBX0RSQU1fT1ZFUl9URU1QX1RIUk9UVExFLCAvKiA0eCBS ZWZyZXNoICsgZGVyYXRpbmcuICovCj4+ICsJVEVHUkFfRFJBTV9PVkVSX1RFTVBfTUFYLAo+PiAr fTsKPj4gKwo+PiAgIHN0cnVjdCBlbWNfc2VsIHsKPj4gICAJc3RydWN0IGNsayAqaW5wdXQ7Cj4+ ICAgCXUzMiB2YWx1ZTsKPj4gQEAgLTc2LDYgKzExNSw3IEBAIHN0YXRpYyBzdHJ1Y3QgdGVncmFf ZW1jICp0ZWdyYV9lbWM7Cj4+ICAgc3RhdGljIERFRklORV9TUElOTE9DSyhlbWNfYWNjZXNzX2xv Y2spOwo+PiAgIHN0YXRpYyBrdGltZV90IGNsa2NoYW5nZV90aW1lOwo+PiAgIHN0YXRpYyBpbnQg Y2xrY2hhbmdlX2RlbGF5ID0gMTAwOwo+PiArdW5zaWduZWQgbG9uZyBkcmFtX292ZXJfdGVtcF9z dGF0ZSA9IFRFR1JBX0RSQU1fT1ZFUl9URU1QX05PTkU7Cj4+ICAgCj4+ICAgc3RhdGljIHZvaWQg ZW1jX3RyYWluKHN0cnVjdCB0aW1lcl9saXN0ICp0bXIpOwo+PiAgIERFRklORV9USU1FUihlbWNf dHJhaW5pbmdfdGltZXIsIGVtY190cmFpbik7Cj4+IEBAIC0xMDIsMTEgKzE0MiwzMyBAQCBzdGF0 aWMgYm9vbCBlbWNfc3VzcGVuZDsKPj4gICBzdGF0aWMgdW5zaWduZWQgbG9uZyBlbWNfcmVzdW1l X3JhdGU7Cj4+ICAgI2VuZGlmCj4+ICAgCj4+ICtpbmxpbmUgdm9pZCBlbWNfd3JpdGVsKHN0cnVj dCB0ZWdyYV9lbWMgKmVtYywgdTMyIHZhbCwgdW5zaWduZWQgbG9uZyBvZmZzZXQpCj4+ICt7Cj4+ ICsJd3JpdGVsKHZhbCwgZW1jLT5lbWNfYmFzZSArIG9mZnNldCk7Cj4+ICt9Cj4+ICsKPj4gICBp bmxpbmUgdTMyIGVtY19yZWFkbChzdHJ1Y3QgdGVncmFfZW1jICplbWMsIHVuc2lnbmVkIGxvbmcg b2Zmc2V0KQo+PiAgIHsKPj4gICAJcmV0dXJuIHJlYWRsKGVtYy0+ZW1jX2Jhc2UgKyBvZmZzZXQp Owo+PiAgIH0KPj4gICAKPj4gK2lubGluZSB1MzIgZW1jMV9yZWFkbChzdHJ1Y3QgdGVncmFfZW1j ICplbWMsIHVuc2lnbmVkIGxvbmcgb2Zmc2V0KQo+PiArewo+PiArCXJldHVybiByZWFkbChlbWMt PmVtYzFfYmFzZSArIG9mZnNldCk7Cj4+ICt9Cj4gCj4gRG8geW91IHJlYWxseSBuZWVkIHRvIGlu c2VydCBhIG1lbW9yeSBiYXJyaWVyIG9uIGVhY2ggcmVhZGwvd3JpdGVsPyBXaHkgbm90IHRvIHVz ZSB0aGUgcmVsYXhlZCB2ZXJzaW9ucz8KPiAKClllcywgc2hvdWxkIGJlIGZpbmUgdG8gdXNlIHRo ZSByZWxheGVkIHZlcnNpb24uIFdpbGwgdHJ5IHRoYXQuCgpUaGFua3MsCkpvc2VwaAoKX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KbGludXgtYXJtLWtlcm5l bCBtYWlsaW5nIGxpc3QKbGludXgtYXJtLWtlcm5lbEBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6 Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGludXgtYXJtLWtlcm5lbAo=