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 AAE82C4332F for ; Sat, 11 Nov 2023 04:12:38 +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=IxD5AAd/gpKQq+n+p5nSXMNqsbXW7hB1XB5qfPiDDwg=; b=QX6fXAVStYICvY B+oC/Tqe6WZ4zU08lhsxNURQFKY9xqc/sKxkZtQKkhteSXufbJNUGG3CspalL76lBKOPyALyaxbVl /hfkOkIgI29FsgH5NxUfbn4x1O5nKn2UNIxNYuqNYAQWwiz1CSPy4CAbfqQNL75fY5gz09ojRmJpm Xh6PulRa8gL5cBS9o2pVmwQN4unPWbTDBApn64tLISvVVtHnRrqgnXlbcPYroYslChlisM+a2Q9+p Z79iB9b82hqExNWN9ft3KrAfN44zoRRTBCMwdYIpn2Ya4YZ3m+2uHcaY4xDWhhQZFUfSiOumUyOG8 G0Ok9GEMVUPQ+SYld4TQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1r1fMM-009zKf-0u; Sat, 11 Nov 2023 04:12:38 +0000 Received: from ams.source.kernel.org ([2604:1380:4601:e00::1]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1r1fMH-009zJh-0c for linux-phy@lists.infradead.org; Sat, 11 Nov 2023 04:12:35 +0000 Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by ams.source.kernel.org (Postfix) with ESMTP id 3AF83B81F5D; Sat, 11 Nov 2023 04:12:26 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 692E4C433C7; Sat, 11 Nov 2023 04:12:19 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1699675944; bh=zlVIXusYR5JdUHxMJMxftsT7sO1DFB+E1/HW4Mh2VWM=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=dHoKp4c/LKd6Oe4wiG+RqKMWf02cMbbbly0aJ4BZ5u8QD00M8WD16CFXtWjLADtec IUCr7WQskZHkf8nruGtAEYzlKgWFs50mvLQK9DTIiX4M3wF17I6dbzsaVbdjPRnGVd okTax5TdIqn2uMdaORHRv2036KJs1p0zYY5r7j59q9vlOY+1QOdSoZYo9xOHPDcAzj 5TuoFWsfG2NAT0y1HT1YYw/zGhj5pVPIRHCouYxtTDqe21ECsg3mAOK212QYIYS/w/ ng6WNlB90n5p6oKy5i/0ryvE5GestCHA0yoEWZzFTkUhJ/bH11F3uxfbytNIcCDBRu xzo/tyYlfhG5Q== Date: Sat, 11 Nov 2023 09:42:15 +0530 From: Manivannan Sadhasivam To: Can Guo Cc: Manivannan Sadhasivam , Dmitry Baryshkov , Can Guo , bvanassche@acm.org, stanley.chu@mediatek.com, adrian.hunter@intel.com, beanhuo@micron.com, avri.altman@wdc.com, junwoo80.lee@samsung.com, martin.petersen@oracle.com, linux-scsi@vger.kernel.org, Andy Gross , Bjorn Andersson , Konrad Dybcio , Vinod Koul , Kishon Vijay Abraham I , "open list:ARM/QUALCOMM SUPPORT" , "open list:GENERIC PHY FRAMEWORK" , open list Subject: Re: [PATCH v2 6/7] phy: qualcomm: phy-qcom-qmp-ufs: Add High Speed Gear 5 support for SM8550 Message-ID: <20231111041215.GA4823@thinkpad> References: <20231108054942.GF3296@thinkpad> <20231109032418.GA3752@thinkpad> <20231109104250.GF3752@thinkpad> <20231109160430.GG3752@thinkpad> <20231110131803.GA5025@thinkpad> <1ac5ae60-7e76-43f2-8b3d-c286eade0251@quicinc.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <1ac5ae60-7e76-43f2-8b3d-c286eade0251@quicinc.com> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20231110_201233_529118_276A3A26 X-CRM114-Status: GOOD ( 41.77 ) X-BeenThere: linux-phy@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Linux Phy Mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-phy" Errors-To: linux-phy-bounces+linux-phy=archiver.kernel.org@lists.infradead.org T24gRnJpLCBOb3YgMTAsIDIwMjMgYXQgMTA6NDA6NTNQTSArMDgwMCwgQ2FuIEd1byB3cm90ZToK PiAKPiAKPiBPbiAxMS8xMC8yMDIzIDk6MTggUE0sIE1hbml2YW5uYW4gU2FkaGFzaXZhbSB3cm90 ZToKPiA+IE9uIEZyaSwgTm92IDEwLCAyMDIzIGF0IDEyOjExOjQ2QU0gKzAyMDAsIERtaXRyeSBC YXJ5c2hrb3Ygd3JvdGU6Cj4gPiA+IE9uIFRodSwgOSBOb3YgMjAyMyBhdCAxODowNCwgTWFuaXZh bm5hbiBTYWRoYXNpdmFtIDxtYW5pQGtlcm5lbC5vcmc+IHdyb3RlOgo+ID4gPiA+IAo+ID4gPiA+ IE9uIFRodSwgTm92IDA5LCAyMDIzIGF0IDAxOjAwOjUxUE0gKzAyMDAsIERtaXRyeSBCYXJ5c2hr b3Ygd3JvdGU6Cj4gPiA+ID4gPiBPbiBUaHUsIDkgTm92IDIwMjMgYXQgMTI6NDMsIE1hbml2YW5u YW4gU2FkaGFzaXZhbSA8bWFuaUBrZXJuZWwub3JnPiB3cm90ZToKPiA+ID4gPiA+ID4gCj4gPiA+ ID4gPiA+IE9uIFRodSwgTm92IDA5LCAyMDIzIGF0IDExOjQwOjUxQU0gKzAyMDAsIERtaXRyeSBC YXJ5c2hrb3Ygd3JvdGU6Cj4gPiA+ID4gPiA+ID4gT24gVGh1LCA5IE5vdiAyMDIzIGF0IDA1OjI0 LCBNYW5pdmFubmFuIFNhZGhhc2l2YW0gPG1hbmlAa2VybmVsLm9yZz4gd3JvdGU6Cj4gPiA+ID4g PiA+ID4gPiAKPiA+ID4gPiA+ID4gPiA+IE9uIFdlZCwgTm92IDA4LCAyMDIzIGF0IDA4OjU2OjE2 QU0gKzAyMDAsIERtaXRyeSBCYXJ5c2hrb3Ygd3JvdGU6Cj4gPiA+ID4gPiA+ID4gPiA+IE9uIFdl ZCwgOCBOb3YgMjAyMyBhdCAwNzo0OSwgTWFuaXZhbm5hbiBTYWRoYXNpdmFtIDxtYW5pQGtlcm5l bC5vcmc+IHdyb3RlOgo+ID4gPiA+ID4gPiA+ID4gPiA+IAo+ID4gPiA+ID4gPiA+ID4gPiA+IE9u IFR1ZSwgTm92IDA3LCAyMDIzIGF0IDAzOjE4OjA5UE0gKzAyMDAsIERtaXRyeSBCYXJ5c2hrb3Yg d3JvdGU6Cj4gPiA+ID4gPiA+ID4gPiA+ID4gPiBPbiBUdWUsIDcgTm92IDIwMjMgYXQgMDY6NDcs IENhbiBHdW8gPGNhbmdAcXRpLnF1YWxjb21tLmNvbT4gd3JvdGU6Cj4gPiA+ID4gPiA+ID4gPiA+ ID4gPiA+IAo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiBGcm9tOiBDYW4gR3VvIDxxdWljX2NhbmdA cXVpY2luYy5jb20+Cj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+IAo+ID4gPiA+ID4gPiA+ID4gPiA+ ID4gPiBPbiBTTTg1NTAsIHR3byBzZXRzIG9mIFVGUyBQSFkgc2V0dGluZ3MgYXJlIHByb3ZpZGVk LCBvbmUgc2V0IGlzIHRvIHN1cHBvcnQKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gSFMtRzUsIGFu b3RoZXIgc2V0IGlzIHRvIHN1cHBvcnQgSFMtRzQgYW5kIGxvd2VyIGdlYXJzLiBUaGUgdHdvIHNl dHMgb2YgUEhZCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+IHNldHRpbmdzIGFyZSBwcm9ncmFtbWlu ZyBkaWZmZXJlbnQgdmFsdWVzIHRvIGRpZmZlcmVudCByZWdpc3RlcnMsIG1peGluZwo+ID4gPiA+ ID4gPiA+ID4gPiA+ID4gPiB0aGUgdHdvIHNldHMgYW5kL29yIG92ZXJ3cml0aW5nIG9uZSBzZXQg d2l0aCBhbm90aGVyIHNldCBpcyBkZWZpbml0ZWx5IG5vdAo+ID4gPiA+ID4gPiA+ID4gPiA+ID4g PiBibGVzc2VkIGJ5IFVGUyBQSFkgZGVzaWduZXJzLiBJbiBvcmRlciB0byBhZGQgSFMtRzUgc3Vw cG9ydCBmb3IgU004NTUwLCB3ZQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiBuZWVkIHRvIHNwbGl0 IHRoZSB0d28gc2V0cyBpbnRvIHRoZWlyIGRlZGljYXRlZCB0YWJsZXMsIGFuZCBsZWF2ZSBvbmx5 IHRoZQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiBjb21tb24gc2V0dGluZ3MgaW4gdGhlIC50bGJz LiBUbyBoYXZlIHRoZSBQSFkgcHJvZ3JhbW1lZCB3aXRoIHRoZSBjb3JyZWN0Cj4gPiA+ID4gPiA+ ID4gPiA+ID4gPiA+IHNldCBvZiBQSFkgc2V0dGluZ3MsIHRoZSBzdWJtb2RlIHBhc3NlZCB0byBQ SFkgZHJpdmVyIG11c3QgYmUgZWl0aGVyIEhTLUc0Cj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+IG9y IEhTLUc1Lgo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiA+ID4gPiAKPiA+ ID4gPiA+ID4gPiA+ID4gPiBZb3Ugc2hvdWxkIGFsc28gbWVudGlvbiB0aGF0IHRoaXMgaXNzdWUg aXMgYWxzbyBwcmVzZW50IGluIEc0IHN1cHBvcnRlZCB0YXJnZXRzLgo+ID4gPiA+ID4gPiA+ID4g PiA+IEFuZCBhIG5vdGUgdGhhdCBpdCB3aWxsIGdldCBmaXhlZCBsYXRlci4KPiA+ID4gPiA+ID4g PiA+ID4gPiAKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gU2lnbmVkLW9mZi1ieTogQ2FuIEd1byA8 cXVpY19jYW5nQHF1aWNpbmMuY29tPgo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAtLS0KPiA+ID4g PiA+ID4gPiA+ID4gPiA+ID4gICBkcml2ZXJzL3BoeS9xdWFsY29tbS9waHktcWNvbS1xbXAtcGNz LXVmcy12Ni5oICAgICB8ICAgMiArCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICAgZHJpdmVycy9w aHkvcXVhbGNvbW0vcGh5LXFjb20tcW1wLXFzZXJkZXMtY29tLXY2LmggfCAgIDIgKwo+ID4gPiA+ ID4gPiA+ID4gPiA+ID4gPiAgIC4uLi9xdWFsY29tbS9waHktcWNvbS1xbXAtcXNlcmRlcy10eHJ4 LXVmcy12Ni5oICAgIHwgIDEyICsrKwo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAgIGRyaXZlcnMv cGh5L3F1YWxjb21tL3BoeS1xY29tLXFtcC11ZnMuYyAgICAgICAgICAgIHwgMTEyICsrKysrKysr KysrKysrKysrKy0tLQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAgIDQgZmlsZXMgY2hhbmdlZCwg MTE1IGluc2VydGlvbnMoKyksIDEzIGRlbGV0aW9ucygtKQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4g PiAKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvcGh5L3F1YWxj b21tL3BoeS1xY29tLXFtcC1wY3MtdWZzLXY2LmggYi9kcml2ZXJzL3BoeS9xdWFsY29tbS9waHkt cWNvbS1xbXAtcGNzLXVmcy12Ni5oCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+IGluZGV4IGMyM2Q1 ZTQuLmU1NjNhZjUgMTAwNjQ0Cj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+IC0tLSBhL2RyaXZlcnMv cGh5L3F1YWxjb21tL3BoeS1xY29tLXFtcC1wY3MtdWZzLXY2LmgKPiA+ID4gPiA+ID4gPiA+ID4g PiA+ID4gKysrIGIvZHJpdmVycy9waHkvcXVhbGNvbW0vcGh5LXFjb20tcW1wLXBjcy11ZnMtdjYu aAo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiBAQCAtMTgsNiArMTgsNyBAQAo+ID4gPiA+ID4gPiA+ ID4gPiA+ID4gPiAgICNkZWZpbmUgUVBIWV9WNl9QQ1NfVUZTX0JJU1RfRklYRURfUEFUX0NUUkwg ICAgICAgICAgICAweDA2MAo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAgICNkZWZpbmUgUVBIWV9W Nl9QQ1NfVUZTX1RYX0hTR0VBUl9DQVBBQklMSVRZICAgICAgICAgICAweDA3NAo+ID4gPiA+ID4g PiA+ID4gPiA+ID4gPiAgICNkZWZpbmUgUVBIWV9WNl9QQ1NfVUZTX1JYX0hTR0VBUl9DQVBBQklM SVRZICAgICAgICAgICAweDBiYwo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiArI2RlZmluZSBRUEhZ X1Y2X1BDU19VRlNfUlhfSFNfRzVfU1lOQ19MRU5HVEhfQ0FQQUJJTElUWSAgICAgICAgMHgxMmMK PiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gICAjZGVmaW5lIFFQSFlfVjZfUENTX1VGU19ERUJVR19C VVNfQ0xLU0VMICAgICAgICAgICAgICAgMHgxNTgKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gICAj ZGVmaW5lIFFQSFlfVjZfUENTX1VGU19MSU5FQ0ZHX0RJU0FCTEUgICAgICAgICAgICAgICAgICAg ICAgICAweDE3Ywo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAgICNkZWZpbmUgUVBIWV9WNl9QQ1Nf VUZTX1JYX01JTl9ISUJFUk44X1RJTUUgICAgICAgICAgICAweDE4NAo+ID4gPiA+ID4gPiA+ID4g PiA+ID4gPiBAQCAtMjcsNSArMjgsNiBAQAo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAgICNkZWZp bmUgUVBIWV9WNl9QQ1NfVUZTX1JFQURZX1NUQVRVUyAgICAgICAgICAgICAgICAgICAweDFhOAo+ ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAgICNkZWZpbmUgUVBIWV9WNl9QQ1NfVUZTX1RYX01JRF9U RVJNX0NUUkwxICAgICAgICAgICAgICAweDFmNAo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAgICNk ZWZpbmUgUVBIWV9WNl9QQ1NfVUZTX01VTFRJX0xBTkVfQ1RSTDEgICAgICAgICAgICAgICAweDFm Ywo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiArI2RlZmluZSBRUEhZX1Y2X1BDU19VRlNfUlhfSFNH NV9TWU5DX1dBSVRfVElNRSAgICAgICAgIDB4MjIwCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+IAo+ ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAgICNlbmRpZgo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiBk aWZmIC0tZ2l0IGEvZHJpdmVycy9waHkvcXVhbGNvbW0vcGh5LXFjb20tcW1wLXFzZXJkZXMtY29t LXY2LmggYi9kcml2ZXJzL3BoeS9xdWFsY29tbS9waHktcWNvbS1xbXAtcXNlcmRlcy1jb20tdjYu aAo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiBpbmRleCBmNDIwZjhmLi5lZjM5MmNlIDEwMDY0NAo+ ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAtLS0gYS9kcml2ZXJzL3BoeS9xdWFsY29tbS9waHktcWNv bS1xbXAtcXNlcmRlcy1jb20tdjYuaAo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiArKysgYi9kcml2 ZXJzL3BoeS9xdWFsY29tbS9waHktcWNvbS1xbXAtcXNlcmRlcy1jb20tdjYuaAo+ID4gPiA+ID4g PiA+ID4gPiA+ID4gPiBAQCAtNTYsNiArNTYsOCBAQAo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAg ICNkZWZpbmUgUVNFUkRFU19WNl9DT01fU1lTX0NMS19DVFJMICAgICAgICAgICAgICAgICAgICAg ICAgICAgIDB4ZTQKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gICAjZGVmaW5lIFFTRVJERVNfVjZf Q09NX1NZU0NMS19CVUZfRU5BQkxFICAgICAgICAgICAgICAgICAgICAgICAweGU4Cj4gPiA+ID4g PiA+ID4gPiA+ID4gPiA+ICAgI2RlZmluZSBRU0VSREVTX1Y2X0NPTV9QTExfSVZDTyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweGY0Cj4gPiA+ID4gPiA+ID4gPiA+ID4g PiA+ICsjZGVmaW5lIFFTRVJERVNfVjZfQ09NX0NNTl9JRVRSSU0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAweGZjCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICsjZGVmaW5lIFFTRVJERVNf VjZfQ09NX0NNTl9JUFRSSU0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDEwMAo+ID4g PiA+ID4gPiA+ID4gPiA+ID4gPiAgICNkZWZpbmUgUVNFUkRFU19WNl9DT01fU1lTQ0xLX0VOX1NF TCAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MTEwCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ ICAgI2RlZmluZSBRU0VSREVTX1Y2X0NPTV9SRVNFVFNNX0NOVFJMICAgICAgICAgICAgICAgICAg ICAgICAgICAgMHgxMTgKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gICAjZGVmaW5lIFFTRVJERVNf VjZfQ09NX0xPQ0tfQ01QX0VOICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDEyMAo+ID4g PiA+ID4gPiA+ID4gPiA+ID4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9waHkvcXVhbGNvbW0vcGh5 LXFjb20tcW1wLXFzZXJkZXMtdHhyeC11ZnMtdjYuaCBiL2RyaXZlcnMvcGh5L3F1YWxjb21tL3Bo eS1xY29tLXFtcC1xc2VyZGVzLXR4cngtdWZzLXY2LmgKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4g aW5kZXggMTViY2I0Yi4uNDhmMzFjOCAxMDA2NDQKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gLS0t IGEvZHJpdmVycy9waHkvcXVhbGNvbW0vcGh5LXFjb20tcW1wLXFzZXJkZXMtdHhyeC11ZnMtdjYu aAo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiArKysgYi9kcml2ZXJzL3BoeS9xdWFsY29tbS9waHkt cWNvbS1xbXAtcXNlcmRlcy10eHJ4LXVmcy12Ni5oCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+IEBA IC0xMCwxMCArMTAsMjAgQEAKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gICAjZGVmaW5lIFFTRVJE RVNfVUZTX1Y2X1RYX1JFU19DT0RFX0xBTkVfUlggICAgICAgICAgICAgICAgICAgICAweDJjCj4g PiA+ID4gPiA+ID4gPiA+ID4gPiA+ICAgI2RlZmluZSBRU0VSREVTX1VGU19WNl9UWF9SRVNfQ09E RV9MQU5FX09GRlNFVF9UWCAgICAgICAgICAgICAgMHgzMAo+ID4gPiA+ID4gPiA+ID4gPiA+ID4g PiAgICNkZWZpbmUgUVNFUkRFU19VRlNfVjZfVFhfUkVTX0NPREVfTEFORV9PRkZTRVRfUlggICAg ICAgICAgICAgIDB4MzQKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gKyNkZWZpbmUgUVNFUkRFU19V RlNfVjZfVFhfTEFORV9NT0RFXzEgICAgICAgICAgICAgICAgICAgICAgICAgIDB4N2MKPiA+ID4g PiA+ID4gPiA+ID4gPiA+ID4gKyNkZWZpbmUgUVNFUkRFU19VRlNfVjZfVFhfRlJfRENDX0NUUkwg ICAgICAgICAgICAgICAgICAgICAgICAgIDB4MTA4Cj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+IAo+ ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAgICNkZWZpbmUgUVNFUkRFU19VRlNfVjZfUlhfVUNEUl9G QVNUTE9DS19GT19HQUlOX1JBVEUyICAgICAgICAgIDB4MDgKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ ID4gICAjZGVmaW5lIFFTRVJERVNfVUZTX1Y2X1JYX1VDRFJfRkFTVExPQ0tfRk9fR0FJTl9SQVRF NCAgICAgICAgICAweDEwCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICsjZGVmaW5lIFFTRVJERVNf VUZTX1Y2X1JYX1VDRFJfRkFTVExPQ0tfU09fR0FJTl9SQVRFNCAgICAgICAgICAweDI0Cj4gPiA+ ID4gPiA+ID4gPiA+ID4gPiA+ICsjZGVmaW5lIFFTRVJERVNfVUZTX1Y2X1JYX1VDRFJfRkFTVExP Q0tfQ09VTlRfSElHSF9SQVRFNCAgICAgICAweDU0Cj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICsj ZGVmaW5lIFFTRVJERVNfVUZTX1Y2X1JYX1VDRFJfRk9fR0FJTl9SQVRFMiAgICAgICAgICAgICAg ICAgICAweGQ0Cj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICsjZGVmaW5lIFFTRVJERVNfVUZTX1Y2 X1JYX1VDRFJfRk9fR0FJTl9SQVRFNCAgICAgICAgICAgICAgICAgICAweGRjCj4gPiA+ID4gPiA+ ID4gPiA+ID4gPiA+ICsjZGVmaW5lIFFTRVJERVNfVUZTX1Y2X1JYX1VDRFJfU09fR0FJTl9SQVRF NCAgICAgICAgICAgICAgICAgICAweGYwCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICsjZGVmaW5l IFFTRVJERVNfVUZTX1Y2X1JYX1VDRFJfUElfQ09OVFJPTFMgICAgICAgICAgICAgICAgICAgICAw eGY0Cj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICAgI2RlZmluZSBRU0VSREVTX1VGU19WNl9SWF9W R0FfQ0FMX01BTl9WQUwgICAgICAgICAgICAgICAgICAgICAgMHgxNzgKPiA+ID4gPiA+ID4gPiA+ ID4gPiA+ID4gKyNkZWZpbmUgUVNFUkRFU19VRlNfVjZfUlhfRVFfT0ZGU0VUX0FEQVBUT1JfQ05U UkwxICAgICAgICAgICAgIDB4MWJjCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICsjZGVmaW5lIFFT RVJERVNfVUZTX1Y2X1JYX09GRlNFVF9BREFQVE9SX0NOVFJMMyAgICAgICAgICAgICAgICAgICAg ICAgIDB4MWM0Cj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICAgI2RlZmluZSBRU0VSREVTX1VGU19W Nl9SWF9NT0RFX1JBVEVfMF8xX0IwICAgICAgICAgICAgICAgICAgICAgMHgyMDgKPiA+ID4gPiA+ ID4gPiA+ID4gPiA+ID4gICAjZGVmaW5lIFFTRVJERVNfVUZTX1Y2X1JYX01PREVfUkFURV8wXzFf QjEgICAgICAgICAgICAgICAgICAgICAweDIwYwo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAgICNk ZWZpbmUgUVNFUkRFU19VRlNfVjZfUlhfTU9ERV9SQVRFXzBfMV9CMyAgICAgICAgICAgICAgICAg ICAgIDB4MjE0Cj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+IEBAIC0yNSw2ICszNSw4IEBACj4gPiA+ ID4gPiA+ID4gPiA+ID4gPiA+ICAgI2RlZmluZSBRU0VSREVTX1VGU19WNl9SWF9NT0RFX1JBVEUz X0I1ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDI2NAo+ID4gPiA+ID4gPiA+ID4g PiA+ID4gPiAgICNkZWZpbmUgUVNFUkRFU19VRlNfVjZfUlhfTU9ERV9SQVRFM19COCAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgMHgyNzAKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gICAj ZGVmaW5lIFFTRVJERVNfVUZTX1Y2X1JYX01PREVfUkFURTRfQjMgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIDB4MjgwCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICsjZGVmaW5lIFFTRVJE RVNfVUZTX1Y2X1JYX01PREVfUkFURTRfQjQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IDB4Mjg0Cj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICAgI2RlZmluZSBRU0VSREVTX1VGU19WNl9S WF9NT0RFX1JBVEU0X0I2ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDI4Ywo+ID4g PiA+ID4gPiA+ID4gPiA+ID4gPiArI2RlZmluZSBRU0VSREVTX1VGU19WNl9SWF9ETEwwX0ZUVU5F X0NUUkwgICAgICAgICAgICAgICAgICAgICAgMHgyZjgKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4g Cj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICAgI2VuZGlmCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL3BoeS9xdWFsY29tbS9waHktcWNvbS1xbXAtdWZzLmMgYi9k cml2ZXJzL3BoeS9xdWFsY29tbS9waHktcWNvbS1xbXAtdWZzLmMKPiA+ID4gPiA+ID4gPiA+ID4g PiA+ID4gaW5kZXggMzkyN2ViYS4uZTBhMDE0OTcgMTAwNjQ0Cj4gPiA+ID4gPiA+ID4gPiA+ID4g PiA+IC0tLSBhL2RyaXZlcnMvcGh5L3F1YWxjb21tL3BoeS1xY29tLXFtcC11ZnMuYwo+ID4gPiA+ ID4gPiA+ID4gPiA+ID4gPiArKysgYi9kcml2ZXJzL3BoeS9xdWFsY29tbS9waHktcWNvbS1xbXAt dWZzLmMKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gQEAgLTY0OSwzMiArNjQ5LDUxIEBAIHN0YXRp YyBjb25zdCBzdHJ1Y3QgcW1wX3BoeV9pbml0X3RibCBzbTg1NTBfdWZzcGh5X3NlcmRlc1tdID0g ewo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAgICAgICAgICBRTVBfUEhZX0lOSVRfQ0ZHKFFTRVJE RVNfVjZfQ09NX0hTQ0xLX1NFTF8xLCAweDExKSwKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gICAg ICAgICAgUU1QX1BIWV9JTklUX0NGRyhRU0VSREVTX1Y2X0NPTV9IU0NMS19IU19TV0lUQ0hfU0VM XzEsIDB4MDApLAo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAgICAgICAgICBRTVBfUEhZX0lOSVRf Q0ZHKFFTRVJERVNfVjZfQ09NX0xPQ0tfQ01QX0VOLCAweDAxKSwKPiA+ID4gPiA+ID4gPiA+ID4g PiA+ID4gLSAgICAgICBRTVBfUEhZX0lOSVRfQ0ZHKFFTRVJERVNfVjZfQ09NX1ZDT19UVU5FX01B UCwgMHgwNCksCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+IC0gICAgICAgUU1QX1BIWV9JTklUX0NG RyhRU0VSREVTX1Y2X0NPTV9QTExfSVZDTywgMHgwZiksCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ ICsKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gICAgICAgICAgUU1QX1BIWV9JTklUX0NGRyhRU0VS REVTX1Y2X0NPTV9WQ09fVFVORV9JTklUVkFMMiwgMHgwMCksCj4gPiA+ID4gPiA+ID4gPiA+ID4g PiA+ICAgICAgICAgIFFNUF9QSFlfSU5JVF9DRkcoUVNFUkRFU19WNl9DT01fREVDX1NUQVJUX01P REUwLCAweDQxKSwKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gLSAgICAgICBRTVBfUEhZX0lOSVRf Q0ZHKFFTRVJERVNfVjZfQ09NX0NQX0NUUkxfTU9ERTAsIDB4MGEpLAo+ID4gPiA+ID4gPiA+ID4g PiA+ID4gPiAgICAgICAgICBRTVBfUEhZX0lOSVRfQ0ZHKFFTRVJERVNfVjZfQ09NX1BMTF9SQ1RS TF9NT0RFMCwgMHgxOCksCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICAgICAgICAgIFFNUF9QSFlf SU5JVF9DRkcoUVNFUkRFU19WNl9DT01fUExMX0NDVFJMX01PREUwLCAweDE0KSwKPiA+ID4gPiA+ ID4gPiA+ID4gPiA+ID4gICAgICAgICAgUU1QX1BIWV9JTklUX0NGRyhRU0VSREVTX1Y2X0NPTV9M T0NLX0NNUDFfTU9ERTAsIDB4N2YpLAo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAgICAgICAgICBR TVBfUEhZX0lOSVRfQ0ZHKFFTRVJERVNfVjZfQ09NX0xPQ0tfQ01QMl9NT0RFMCwgMHgwNiksCj4g PiA+ID4gPiA+ID4gPiA+ID4gPiA+IC0gICAgICAgUU1QX1BIWV9JTklUX0NGRyhRU0VSREVTX1Y2 X0NPTV9ERUNfU1RBUlRfTU9ERTAsIDB4NGMpLAo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiArfTsK PiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gKwo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiArc3RhdGlj IGNvbnN0IHN0cnVjdCBxbXBfcGh5X2luaXRfdGJsIHNtODU1MF91ZnNwaHlfaHNfYl9zZXJkZXNb XSA9IHsKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gKyAgICAgICBRTVBfUEhZX0lOSVRfQ0ZHKFFT RVJERVNfVjZfQ09NX1ZDT19UVU5FX01BUCwgMHg0NCksCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ ICt9Owo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiArCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICtz dGF0aWMgY29uc3Qgc3RydWN0IHFtcF9waHlfaW5pdF90Ymwgc204NTUwX3Vmc3BoeV9nNF9zZXJk ZXNbXSA9IHsKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gKyAgICAgICBRTVBfUEhZX0lOSVRfQ0ZH KFFTRVJERVNfVjZfQ09NX1ZDT19UVU5FX01BUCwgMHgwNCksCj4gPiA+ID4gPiA+ID4gPiA+ID4g PiA+ICsgICAgICAgUU1QX1BIWV9JTklUX0NGRyhRU0VSREVTX1Y2X0NPTV9QTExfSVZDTywgMHgw ZiksCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICAgICAgICAgIFFNUF9QSFlfSU5JVF9DRkcoUVNF UkRFU19WNl9DT01fQ1BfQ1RSTF9NT0RFMCwgMHgwYSksCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ IC0gICAgICAgUU1QX1BIWV9JTklUX0NGRyhRU0VSREVTX1Y2X0NPTV9QTExfUkNUUkxfTU9ERTAs IDB4MTgpLAo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAtICAgICAgIFFNUF9QSFlfSU5JVF9DRkco UVNFUkRFU19WNl9DT01fUExMX0NDVFJMX01PREUwLCAweDE0KSwKPiA+ID4gPiA+ID4gPiA+ID4g PiA+ID4gLSAgICAgICBRTVBfUEhZX0lOSVRfQ0ZHKFFTRVJERVNfVjZfQ09NX0xPQ0tfQ01QMV9N T0RFMCwgMHg5OSksCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+IC0gICAgICAgUU1QX1BIWV9JTklU X0NGRyhRU0VSREVTX1Y2X0NPTV9MT0NLX0NNUDJfTU9ERTAsIDB4MDcpLAo+ID4gPiA+ID4gPiA+ ID4gPiA+ID4gCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiBBc2lkZSBmcm9tIG1vdmluZyB0aGVzZSBy ZWdpc3RlcnMgdG8gdGhlIEhTX0c0IHRhYmxlLCB5b3UgYXJlIGFsc28KPiA+ID4gPiA+ID4gPiA+ ID4gPiA+IGNoYW5naW5nIHRoZXNlIHJlZ2lzdGVycy4gSXQgbWFrZXMgbWUgdGhpbmsgdGhhdCB0 aGVyZSB3YXMgYW4gZXJyb3IgaW4KPiA+ID4gPiA+ID4gPiA+ID4gPiA+IHRoZSBvcmlnaW5hbCBw cm9ncmFtbWluZyBzZXF1ZW5jZS4KPiA+ID4gPiA+ID4gPiA+ID4gPiA+IElmIHRoYXQgaXMgY29y cmVjdCwgY291bGQgeW91IHBsZWFzZSBzcGxpdCB0aGUgcGF0Y2ggaW50byB0d28gcGllY2VzOgo+ ID4gPiA+ID4gPiA+ID4gPiA+ID4gLSBGaXggcHJvZ3JhbW1pbmcgc2VxdWVuY2UgKGFkZCBwcm9w ZXIgRml4ZXMgdGFncykKPiA+ID4gPiA+ID4gPiA+ID4gPiA+IC0gU3BsaXQgRzQgYW5kIEc1IHRh Ymxlcy4KPiA+ID4gPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiA+ID4gPiBBY2sKPiA+ID4g PiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiA+ID4gPiA+IAo+ID4gPiA+ID4gPiA+ID4gPiA+ ID4gPiArCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICsgICAgICAgUU1QX1BIWV9JTklUX0NGRyhR U0VSREVTX1Y2X0NPTV9ERUNfU1RBUlRfTU9ERTEsIDB4NGMpLAo+ID4gPiA+ID4gPiA+ID4gPiA+ ID4gPiArICAgICAgIFFNUF9QSFlfSU5JVF9DRkcoUVNFUkRFU19WNl9DT01fQ1BfQ1RSTF9NT0RF MSwgMHgwYSksCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICsgICAgICAgUU1QX1BIWV9JTklUX0NG RyhRU0VSREVTX1Y2X0NPTV9QTExfUkNUUkxfTU9ERTEsIDB4MTgpLAo+ID4gPiA+ID4gPiA+ID4g PiA+ID4gPiArICAgICAgIFFNUF9QSFlfSU5JVF9DRkcoUVNFUkRFU19WNl9DT01fUExMX0NDVFJM X01PREUxLCAweDE0KSwKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gKyAgICAgICBRTVBfUEhZX0lO SVRfQ0ZHKFFTRVJERVNfVjZfQ09NX0xPQ0tfQ01QMV9NT0RFMSwgMHg5OSksCj4gPiA+ID4gPiA+ ID4gPiA+ID4gPiA+ICsgICAgICAgUU1QX1BIWV9JTklUX0NGRyhRU0VSREVTX1Y2X0NPTV9MT0NL X0NNUDJfTU9ERTEsIDB4MDcpLAo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+ID4g PiA+ID4gPiBJIHNlZSBhbGwgdGhlIE1PREUxIHJlZ2lzdGVycyBiZWluZyBvbmx5IHByZXNlbnQg aW4gRzQgYW5kIEc1IHRhYmxlcy4KPiA+ID4gPiA+ID4gPiA+ID4gPiA+IFNob3VsZCB0aGV5IGJl IHByb2dyYW1tZWQgZm9yIHRoZSBtb2RlcyBsb3dlciB0aGFuIEc0Pwo+ID4gPiA+ID4gPiA+ID4g PiA+ID4gCj4gPiA+ID4gPiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+ID4gPiA+ID4gV2UgdXNlIEc0 IHRhYmxlIGZvciBhbGwgdGhlIG1vZGVzIDw9IEc0Lgo+ID4gPiA+ID4gPiA+ID4gPiAKPiA+ID4g PiA+ID4gPiA+ID4gQ291bGQgeW91IHBsZWFzZSBwb2ludCBtZSBob3cgaXQncyBoYW5kbGVkPwo+ ID4gPiA+ID4gPiA+ID4gPiBJbiB0aGUgcGF0Y2ggSSBzZWUganVzdDoKPiA+ID4gPiA+ID4gPiA+ ID4gCj4gPiA+ID4gPiA+ID4gPiA+ICAgICAgICAgaWYgKHFtcC0+c3VibW9kZSA9PSBVRlNfSFNf RzQpCj4gPiA+ID4gPiA+ID4gPiA+ICAgICAgICAgICAgICAgICBxbXBfdWZzX3NlcmRlc19pbml0 KHFtcCwgJmNmZy0+dGJsc19oc19nNCk7Cj4gPiA+ID4gPiA+ID4gPiA+ICAgICAgICAgZWxzZSBp ZiAocW1wLT5zdWJtb2RlID09IFVGU19IU19HNSkKPiA+ID4gPiA+ID4gPiA+ID4gICAgICAgICAg ICAgICAgIHFtcF91ZnNfc2VyZGVzX2luaXQocW1wLCAmY2ZnLT50YmxzX2hzX2c1KTsKPiA+ID4g PiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+ID4gPiA+IFdoaWNoIGxvb2tzIGxpa2UgdHdvIHNwZWNp YWwgY2FzZXMgKEhTX0c0IGFuZCBIU19HNSkgYW5kIG5vdGhpbmcgZm9yCj4gPiA+ID4gPiA+ID4g PiA+IGFueXRoaW5nIGVsc2UuCj4gPiA+ID4gPiA+ID4gPiA+IAo+ID4gPiA+ID4gPiA+ID4gCj4g PiA+ID4gPiA+ID4gPiBZZXMsIGFuZCB0aGUgVUZTIGRyaXZlciBwYXNzZXMgb25seSBHNC9HNS4g Rm9yIGFsbCB0aGUgZ2VhcnMgPD1HNCwgRzQgaW5pdAo+ID4gPiA+ID4gPiA+ID4gc2VxdWVuY2Ug d2lsbCBiZSB1c2VkIGFuZCBmb3IgRzUsIEc1IHNlcXVlbmNlIHdpbGwgYmUgdXNlZC4KPiA+ID4g PiA+ID4gPiA+IAo+ID4gPiA+ID4gPiA+IAo+ID4gPiA+ID4gPiA+IFRoYXQncyB3aGF0IEkgY291 bGQgbm90IGZpbmQgaW4gdGhlIFVGUyBkcml2ZXIuIEkgc2VlIGEgY2FsbCB0bwo+ID4gPiA+ID4g PiA+IGBwaHlfc2V0X21vZGVfZXh0KHBoeSwgUEhZX01PREVfVUZTX0hTX0IsIGhvc3QtPnBoeV9n ZWFyKTtgIGFuZAo+ID4gPiA+ID4gPiA+IGhvc3QtPnBoeV9nZWFyIGlzIGluaXRpYWxpc2VkIHRv IFVGU19IU19HMi4KPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+IFlvdSBu ZWVkIHRvIGNoZWNrIHRoZSBVRlMgZHJpdmVyIGNoYW5nZXMgaW4gdGhpcyBzZXJpZXMgdG8gZ2V0 IHRoZSBjb21wbGV0ZQo+ID4gPiA+ID4gPiBwaWN0dXJlIGFzIHRoZSBsb2dpYyBpcyBnZXR0aW5n IGNoYW5nZWQuCj4gPiA+ID4gPiA+IAo+ID4gPiA+ID4gPiBJdCBpcyBjb21tb24gdG8gZ2V0IGNv bmZ1c2VkIGJlY2F1c2Ugb2YgdGhlIHdheSB0aGUgVUZTIGRyaXZlciAocWNvbSBtb3N0bHkpCj4g PiA+ID4gPiA+IGhhbmRsZXMgdGhlIFBIWSBpbml0IHNlcXVlbmNlIHByb2dyYW1taW5nLiBXZSB1 c2VkIHRvIGhhdmUgb25seSBvbmUgaW5pdAo+ID4gPiA+ID4gPiBzZXF1ZW5jZSBmb3Igb2xkZXIg dGFyZ2V0cyBhbmQgbGlmZSB3YXMgZWFzeS4gQnV0IHdoZW4gSSB3YW50ZWQgdG8gYWRkIEc0Cj4g PiA+ID4gPiA+IHN1cHBvcnQgZm9yIFNNODI1MCwgSSBsZWFybmVkIHRoYXQgdGhlcmUgYXJlIDIg c2VwYXJhdGUgaW5pdCBzZXF1ZW5jZXMuIE9uZSBmb3IKPiA+ID4gPiA+ID4gbm9uLUc0IGFuZCBv dGhlciBmb3IgRzQuIFNvIEkgdXNlZCB0aGUgcGh5X3N1Yl9tb2RlIHByb3BlcnR5IHRvIHBhc3Mg dGhlCj4gPiA+ID4gPiA+IHJlbGV2YW50IG1vZGUgZnJvbSB0aGUgVUZTIGRyaXZlciB0byB0aGUg UEhZIGRyaXZlciBhbmQgcHJvZ3JhbW1lZCB0aGUgc2VxdWVuY2UKPiA+ID4gPiA+ID4gYWNjb3Jk aW5nbHkuIFRoaXMgZ290IGV4dGVuZGVkIHRvIG5vbi1HNSBhbmQgRzUgbm93Lgo+ID4gPiA+ID4g PiAKPiA+ID4gPiA+ID4gTm93LCB0aGUgVUZTIGRyaXZlciB3aWxsIHN0YXJ0IHByb2JpbmcgZnJv bSBhIGxvdyBnZWFyIGZvciBvbGRlciB0YXJnZXRzIChHMikKPiA+ID4gPiA+ID4gYW5kIEc0L0c1 IGZvciBuZXdlciBvbmVzIHRoZW4gc2NhbGUgdXAgYmFzZWQgb24gdGhlIGRldmljZSBhbmQgaG9z dCBjYXBhYmlsaXR5Lgo+ID4gPiA+ID4gPiBGb3Igb2xkZXIgdGFyZ2V0cywgdGhlIGNvbW1vbiB0 YWJsZSAodGJscykgd2lsbCBiZSB1c2VkIGlmIHRoZSBzdWJtb2RlIGRvZXNuJ3QKPiA+ID4gPiA+ ID4gbWF0Y2ggRzQvRzUuIEJ1dCBmb3IgbmV3ZXIgdGFyZ2V0cywgdGhlIFVGUyBkcml2ZXIgd2ls bCBfb25seV8gcGFzcyBHNCBvciBHNSBhcwo+ID4gPiA+ID4gPiB0aGUgcGh5X2dlYXIsIHNvIHRo b3NlIHNwZWNpZmljIHNlcXVlbmNlIHdpbGwgb25seSBiZSB1c2VkLgo+ID4gPiA+ID4gPiAKPiA+ ID4gPiA+ID4gSG9wZSBJJ20gY2xlYXIuCj4gPiA+ID4gPiAKPiA+ID4gPiA+IFllcywgaXQgaXMg bm93IGNsZWFyLCB0aGFuayB5b3UhCj4gPiA+ID4gPiAKPiA+ID4gPiA+IFdvdWxkIGl0IGJlIHBv c3NpYmxlIC8gZmVhc2libGUgLyBsb2dpY2FsIHRvIG1haW50YWluIHRoaXMgaWRlYSBldmVuCj4g PiA+ID4gPiBmb3IgbmV3ZXIgcGxhdGZvcm1zIChsZWF2aW5nIHRoZSBIU19BICAvIEhTX0IgYXNp ZGUpPwo+ID4gPiA+ID4gCj4gPiA+ID4gPiB0YmxzIC0gd29ya3MgZm9yIEhTX0cyCj4gPiA+ID4g PiB0YmxzICsgdGJsc19nNCAtIHdvcmtzIGZvciBIU19HNAo+ID4gPiA+ID4gdGJscyArIHRibHNf ZzUgLSB3b3JrcyBmb3IgSFNfRzUKPiA+ID4gPiA+IAo+ID4gPiA+IAo+ID4gPiA+IE5vLiBUaGUg UEhZIHRlYW0gb25seSBnaXZlcyAyIGluaXQgc2VxdWVuY2VzIGZvciBhbnkgU29DIG5vdy4KPiA+ ID4gCj4gPiA+IEFjay4gVGhlbiB0aGUgY29kZSBzaG91bGQgYmVjb21lCj4gPiA+IGlmIChIU19H NSkKPiA+ID4gICAgIHByb2dyYW0odGJsc19oc19nNSkKPiA+ID4gZWxzZQo+ID4gPiAgICAgcHJv Z3JhbSh0YmxzX2hzX2c0KTsKPiA+ID4gCj4gPiAKPiA+IFRoaXMgc2hvdWxkIHdvcmsuIEV2ZW4g aWYgd2UgaGF2ZSB0byBhY2NvbW9kYXRlIEc2IGluIHRoZSBmdXR1cmUsIHdlIGNhbiB1c2UKPiA+ ICJlbHNlIGlmIiBmb3IgdGhhdCBhbmQga2VlcCBHNCBhcyB0aGUgImVsc2UiIGNvbmRpdGlvbi4g VGhpcyBsb2dpYyBjYW4gYWxzbyBiZQo+ID4gb3B0aW1pemVkIGluIHRoZSBmdXR1cmUuCj4gCj4g VGhhdCB3b3VsZCBtYWtlIGR1YWwgaW5pdCBtZWFuaW5nbGVzcyBmb3Igb2xkIHRhcmdldHMuIFNh eSBvbiBTTTg0NTAsIHRoZQo+IGluaXRpYWwgUEhZIGdlYXIgaXMgRzIsIHdpdGggdGhlICJlbHNl IiBjb25kaXRpb24sIGR1cmluZyB0aGUgZmlyc3QgaW5pdCwgRzQKPiB0YWJsZSB3b3VsZCBiZSBw cm9ncmFtbWVkLCB0aGVuIGdlYXIgbmVnb3RpYXRpb24gaGFwcGVucyBidHcgaG9zdCBhbmQgZGV2 aWNlCj4gYW5kIHRoZSBuZWdvdGlhdGVkIGdlYXIgaXMgRzMgKGFzc3VtZSBhIFVGUzIueCBpcyBj b25uZWN0ZWQpLiBEdXJpbmcgdGhlIDJuZAo+IGluaXQsIHRoZSAiZWxzZSIgY29uZGl0aW9uIHdv dWxkIF9fYWdhaW5fXyBwcm9ncmFtIHRoZSBHNCB0YWJsZSAtIGl0IGlzIG5vdAo+IHByb2dyYW1t aW5nIHRoZSBub24tRzQgdGFibGUgZm9yIHBvd2VyIHNhdmluZy4gVGhlIGR1YWwgaW5pdCBpcyBz dXBwb3NlZCB0bwo+IGZpbmQgdGhlIG9wdGltYWwgUEhZIHNldHRpbmdzLCBidXQgdGhlICJlbHNl IiBjb25kaXRpb24gaXMgcHJvZ3JhbW1pbmcgRzQKPiB0YWJsZSB1bmNvbmRpdGluYWxseS4KPiAK PiBXaXRoIHRoZSBvcmlnaW5hbCBjb2RlIGNoYW5nZSBpbiB0aGlzIHBhdGNoLCB0aGUgZHVhbCBp bml0IHdvcmtzIGFzIGl0IGlzCj4gZm9yIG9sZCB0YXJnZXRzLiBzYXkgU004NDUwLCB0aGUgaW5p dGlhbCBQSFkgZ2VhciBpcyBHMiwgZHVyaW5nIHRoZSAybmQKPiBpbml0LCBpdCBpcyBwcm9ncmFt bWluZyB0aGUgbm9uLUc0IHRhYmxlIChhc3N1bWUgYSBVRlMyLnggaXMgY29ubmVjdGVkKSwgYnV0 Cj4gbm90IHRoZSBHNCB0YWJsZS4KPiAKCllvdSBhcmUgcmlnaHQuIEkgY29tcGxldGVseSBvdmVy bG9va2VkIHRoZSBjb21wYXRpYmlsaXR5IGZvciBvbGQgdGFyZ2V0cy4gQnV0CnN0aWxsIHdlIGNh biBtb3ZlIHRoZSBjb21tb24gdGFibGUgdG8gdGhlICJlbHNlIiBjb25kaXRpb24uIFRoaXMgbWFr ZXMgaXQgY2xlYXIKdGhhdCBvbmUgb2YgdGhlIDMgd2lsbCBiZSBwcm9ncmFtbWVkIGF0IGEgdGlt ZS4gQnV0IHdpdGggdGhlIGN1cnJlbnQgbG9naWMsIEkKZ2V0IHRoZSBpbXByZXNzaW9uIHRoYXQg Y29tbW9uIHRhYmxlIGlzIG92ZXJyaWRkZW4gYnkgRzQvRzUgdGFibGVzLgoKU28gdGhpcyBpcyB3 aGF0IEknbSBzdWdnZXN0aW5nOgoKaWYgKEhTX0c1KQoJcHJvZ3JhbSh0YmxzX2hzX2c1KQplbHNl IGlmIChIU19HNCkKCXByb2dyYW0odGJsc19oc19nNCk7CmVsc2UKCXByb2dyYW0odGJsc19oc19j b21tb24pOwoKLSBNYW5pCgo+IFRoYW5rcywKPiBDYW4gR3VvLgo+ID4gCj4gPiAtIE1hbmkKPiA+ IAo+ID4gPiA+IAo+ID4gPiA+IC0gTWFuaQo+ID4gPiA+IAo+ID4gPiA+ID4gSSBtZWFuIGhlcmUg dGhhdCB0aGUgUEhZIGRyaXZlciBzaG91bGQgbm90IGRlcGVuZCBvbiB0aGUga25vd2xlZGdlCj4g PiA+ID4gPiB0aGF0IHRoZSBVRlMgZHJpdmVyIHdpbGwgbm90IGJlIHNldHRpbmcgSFNfRzIgZm9y IHNvbWUgcGFydGljdWxhcgo+ID4gPiA+ID4gcGxhdGZvcm0gYW5kIGlkZWFsbHkgaXQgc2hvdWxk IGNvbnRpbnVlIHdvcmtpbmcgaWYgYXQgc29tZSBwb2ludCB3ZQo+ID4gPiA+ID4gY2hhbmdlIHRo ZSBVRlMgZHJpdmVyIHRvIHNldCBIU19HMi4KPiA+ID4gPiA+IAo+ID4gPiA+ID4gCj4gPiA+ID4g PiA+IAo+ID4gPiA+ID4gPiAtIE1hbmkKPiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+ID4gTWF5YmUg d2Ugc2hvdWxkIGNoYW5nZSB0aGUgY29uZGl0aW9uIGhlcmUgKGluIHRoZSBQSFkgZHJpdmVyKSB0 bzoKPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiBpZiAocW1wLT5zdWJtb2RlIDw9IFVGU19I U19HNCkKPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiA/Cj4gPiA+ID4gPiA+ID4gLS0KPiA+ ID4gPiA+ID4gPiBXaXRoIGJlc3Qgd2lzaGVzCj4gPiA+ID4gPiA+ID4gRG1pdHJ5Cj4gPiA+ID4g PiA+IAo+ID4gPiA+ID4gPiAtLQo+ID4gPiA+ID4gPiDgrq7grqPgrr/grrXgrqPgr43grqPgrqng r40g4K6a4K6k4K6+4K6a4K6/4K614K6u4K+NCj4gPiA+ID4gPiAKPiA+ID4gPiA+IAo+ID4gPiA+ ID4gCj4gPiA+ID4gPiAtLQo+ID4gPiA+ID4gV2l0aCBiZXN0IHdpc2hlcwo+ID4gPiA+ID4gRG1p dHJ5Cj4gPiA+ID4gCj4gPiA+ID4gLS0KPiA+ID4gPiDgrq7grqPgrr/grrXgrqPgr43grqPgrqng r40g4K6a4K6k4K6+4K6a4K6/4K614K6u4K+NCj4gPiA+IAo+ID4gPiAKPiA+ID4gCj4gPiA+IC0t IAo+ID4gPiBXaXRoIGJlc3Qgd2lzaGVzCj4gPiA+IERtaXRyeQo+ID4gCgotLSAK4K6u4K6j4K6/ 4K614K6j4K+N4K6j4K6p4K+NIOCumuCupOCuvuCumuCuv+CuteCuruCvjQoKLS0gCmxpbnV4LXBo eSBtYWlsaW5nIGxpc3QKbGludXgtcGh5QGxpc3RzLmluZnJhZGVhZC5vcmcKaHR0cHM6Ly9saXN0 cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGludXgtcGh5Cg==