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 7B4F4C4332F for ; Tue, 14 Nov 2023 06:12: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-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=CiQ5hV8skRl4VvDD3gGFhzAsYVLiPnHcLVv9RPql97s=; b=RkZtSdDaPyby51 JQ1mUGmGjk4Nfwh+HRaL8KsE63FQJpQ4XksZ/0Om0W0VN3E1qyCaDjW2gitZXidQgsUHbVo764Yhj 0zHYjRnFyhJUIAWEvE88O9RIVhXT7CozIxdBIOumE92I48HheEzNJyAvE1gvitbyW8orgH2KScKjn k574mUFIHJN+//tFCUmBii2AbKWezy4EX+P/zFKu5dE1i1t1Y9D+D6SeDAA8mRnfAh4m7WgjsvtKW wjd2e/jtIiRuoZvvSRdivmvz0wzqKwatIe4nvuNLZno+MGetJ0xtToO+GLyj3bx1kzq6aC6g/Wcsy ReMwc52a8D7QmRRtTsuQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1r2mew-00FFy8-2T; Tue, 14 Nov 2023 06:12:26 +0000 Received: from dfw.source.kernel.org ([139.178.84.217]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1r2mer-00FFxX-1y for linux-phy@lists.infradead.org; Tue, 14 Nov 2023 06:12:25 +0000 Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by dfw.source.kernel.org (Postfix) with ESMTP id 5126761089; Tue, 14 Nov 2023 06:12:19 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id C871CC433C8; Tue, 14 Nov 2023 06:12:12 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1699942338; bh=7o+qcNSLliDf6miAkXOnZwRXZlD/pnx0atypyNiV59A=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=VjG/gWWFPCFOzH1TkCrMHV0SWQrMmkpk8tG/xlzP0pGG5OFF5fTUVtFI9/lBeURdE OprnIDGFs8TnJYEiqJCJO/Cluc3tOyMS3dCZQfGOJkXPBykdeDqqHcsSfPnISWnxQv 3vF2TGGT/ca4C6sEutVgii4c48Z6tu9GVULtJLzRBraIfhxe1kniB2CX852bD0cO/+ gu8cvX04bAA22vKV5c8q4ZlrmNG+srLecY0SsgGJJXmDPPZ3LWsz37nWepxSt1u8/c +zQwjesSM6YW0PJVpxuXSxWe/g3Wh7k6Ada/gkdiOOIaX00gs9ymDq3s+7phw2atP+ 5Vkc8yEzIgz8A== Date: Tue, 14 Nov 2023 11:42:02 +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: <20231114061202.GA28789@thinkpad> References: <20231109032418.GA3752@thinkpad> <20231109104250.GF3752@thinkpad> <20231109160430.GG3752@thinkpad> <20231110131803.GA5025@thinkpad> <1ac5ae60-7e76-43f2-8b3d-c286eade0251@quicinc.com> <20231111041215.GA4823@thinkpad> <7b98d2e0-b989-4937-a674-6866c6aa05d4@quicinc.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <7b98d2e0-b989-4937-a674-6866c6aa05d4@quicinc.com> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20231113_221221_762943_CF4D77CE X-CRM114-Status: GOOD ( 36.33 ) 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 T24gU3VuLCBOb3YgMTIsIDIwMjMgYXQgMDE6MTM6MzBQTSArMDgwMCwgQ2FuIEd1byB3cm90ZToK PiBIaSBNYW5pLAo+IAo+IE9uIDExLzExLzIwMjMgMTI6MTIgUE0sIE1hbml2YW5uYW4gU2FkaGFz aXZhbSB3cm90ZToKPiA+IE9uIEZyaSwgTm92IDEwLCAyMDIzIGF0IDEwOjQwOjUzUE0gKzA4MDAs IENhbiBHdW8gd3JvdGU6Cj4gPiA+IAo+ID4gPiAKPiA+ID4gT24gMTEvMTAvMjAyMyA5OjE4IFBN LCBNYW5pdmFubmFuIFNhZGhhc2l2YW0gd3JvdGU6Cj4gPiA+ID4gT24gRnJpLCBOb3YgMTAsIDIw MjMgYXQgMTI6MTE6NDZBTSArMDIwMCwgRG1pdHJ5IEJhcnlzaGtvdiB3cm90ZToKPiA+ID4gPiA+ IE9uIFRodSwgOSBOb3YgMjAyMyBhdCAxODowNCwgTWFuaXZhbm5hbiBTYWRoYXNpdmFtIDxtYW5p QGtlcm5lbC5vcmc+IHdyb3RlOgo+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gT24gVGh1LCBOb3Yg MDksIDIwMjMgYXQgMDE6MDA6NTFQTSArMDIwMCwgRG1pdHJ5IEJhcnlzaGtvdiB3cm90ZToKPiA+ ID4gPiA+ID4gPiBPbiBUaHUsIDkgTm92IDIwMjMgYXQgMTI6NDMsIE1hbml2YW5uYW4gU2FkaGFz aXZhbSA8bWFuaUBrZXJuZWwub3JnPiB3cm90ZToKPiA+ID4gPiA+ID4gPiA+IAo+ID4gPiA+ID4g PiA+ID4gT24gVGh1LCBOb3YgMDksIDIwMjMgYXQgMTE6NDA6NTFBTSArMDIwMCwgRG1pdHJ5IEJh cnlzaGtvdiB3cm90ZToKPiA+ID4gPiA+ID4gPiA+ID4gT24gVGh1LCA5IE5vdiAyMDIzIGF0IDA1 OjI0LCBNYW5pdmFubmFuIFNhZGhhc2l2YW0gPG1hbmlAa2VybmVsLm9yZz4gd3JvdGU6Cj4gPiA+ ID4gPiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+ID4gPiA+ID4gT24gV2VkLCBOb3YgMDgsIDIwMjMg YXQgMDg6NTY6MTZBTSArMDIwMCwgRG1pdHJ5IEJhcnlzaGtvdiB3cm90ZToKPiA+ID4gPiA+ID4g PiA+ID4gPiA+IE9uIFdlZCwgOCBOb3YgMjAyMyBhdCAwNzo0OSwgTWFuaXZhbm5hbiBTYWRoYXNp dmFtIDxtYW5pQGtlcm5lbC5vcmc+IHdyb3RlOgo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAKPiA+ ID4gPiA+ID4gPiA+ID4gPiA+ID4gT24gVHVlLCBOb3YgMDcsIDIwMjMgYXQgMDM6MTg6MDlQTSAr MDIwMCwgRG1pdHJ5IEJhcnlzaGtvdiB3cm90ZToKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiBP biBUdWUsIDcgTm92IDIwMjMgYXQgMDY6NDcsIENhbiBHdW8gPGNhbmdAcXRpLnF1YWxjb21tLmNv bT4gd3JvdGU6Cj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiA+ID4g PiA+ID4gPiA+IEZyb206IENhbiBHdW8gPHF1aWNfY2FuZ0BxdWljaW5jLmNvbT4KPiA+ID4gPiA+ ID4gPiA+ID4gPiA+ID4gPiA+IAo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gT24gU004NTUw LCB0d28gc2V0cyBvZiBVRlMgUEhZIHNldHRpbmdzIGFyZSBwcm92aWRlZCwgb25lIHNldCBpcyB0 byBzdXBwb3J0Cj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiBIUy1HNSwgYW5vdGhlciBzZXQg aXMgdG8gc3VwcG9ydCBIUy1HNCBhbmQgbG93ZXIgZ2VhcnMuIFRoZSB0d28gc2V0cyBvZiBQSFkK PiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+IHNldHRpbmdzIGFyZSBwcm9ncmFtbWluZyBkaWZm ZXJlbnQgdmFsdWVzIHRvIGRpZmZlcmVudCByZWdpc3RlcnMsIG1peGluZwo+ID4gPiA+ID4gPiA+ ID4gPiA+ID4gPiA+ID4gdGhlIHR3byBzZXRzIGFuZC9vciBvdmVyd3JpdGluZyBvbmUgc2V0IHdp dGggYW5vdGhlciBzZXQgaXMgZGVmaW5pdGVseSBub3QKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4g PiA+IGJsZXNzZWQgYnkgVUZTIFBIWSBkZXNpZ25lcnMuIEluIG9yZGVyIHRvIGFkZCBIUy1HNSBz dXBwb3J0IGZvciBTTTg1NTAsIHdlCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiBuZWVkIHRv IHNwbGl0IHRoZSB0d28gc2V0cyBpbnRvIHRoZWlyIGRlZGljYXRlZCB0YWJsZXMsIGFuZCBsZWF2 ZSBvbmx5IHRoZQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gY29tbW9uIHNldHRpbmdzIGlu IHRoZSAudGxicy4gVG8gaGF2ZSB0aGUgUEhZIHByb2dyYW1tZWQgd2l0aCB0aGUgY29ycmVjdAo+ ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gc2V0IG9mIFBIWSBzZXR0aW5ncywgdGhlIHN1Ym1v ZGUgcGFzc2VkIHRvIFBIWSBkcml2ZXIgbXVzdCBiZSBlaXRoZXIgSFMtRzQKPiA+ID4gPiA+ID4g PiA+ID4gPiA+ID4gPiA+IG9yIEhTLUc1Lgo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gCj4g PiA+ID4gPiA+ID4gPiA+ID4gPiA+IAo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiBZb3Ugc2hvdWxk IGFsc28gbWVudGlvbiB0aGF0IHRoaXMgaXNzdWUgaXMgYWxzbyBwcmVzZW50IGluIEc0IHN1cHBv cnRlZCB0YXJnZXRzLgo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiBBbmQgYSBub3RlIHRoYXQgaXQg d2lsbCBnZXQgZml4ZWQgbGF0ZXIuCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+IAo+ID4gPiA+ID4g PiA+ID4gPiA+ID4gPiA+ID4gU2lnbmVkLW9mZi1ieTogQ2FuIEd1byA8cXVpY19jYW5nQHF1aWNp bmMuY29tPgo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gLS0tCj4gPiA+ID4gPiA+ID4gPiA+ ID4gPiA+ID4gPiAgICBkcml2ZXJzL3BoeS9xdWFsY29tbS9waHktcWNvbS1xbXAtcGNzLXVmcy12 Ni5oICAgICB8ICAgMiArCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAgICBkcml2ZXJzL3Bo eS9xdWFsY29tbS9waHktcWNvbS1xbXAtcXNlcmRlcy1jb20tdjYuaCB8ICAgMiArCj4gPiA+ID4g PiA+ID4gPiA+ID4gPiA+ID4gPiAgICAuLi4vcXVhbGNvbW0vcGh5LXFjb20tcW1wLXFzZXJkZXMt dHhyeC11ZnMtdjYuaCAgICB8ICAxMiArKysKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICAg IGRyaXZlcnMvcGh5L3F1YWxjb21tL3BoeS1xY29tLXFtcC11ZnMuYyAgICAgICAgICAgIHwgMTEy ICsrKysrKysrKysrKysrKysrKy0tLQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gICAgNCBm aWxlcyBjaGFuZ2VkLCAxMTUgaW5zZXJ0aW9ucygrKSwgMTMgZGVsZXRpb25zKC0pCj4gPiA+ID4g PiA+ID4gPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+IGRpZmYgLS1n aXQgYS9kcml2ZXJzL3BoeS9xdWFsY29tbS9waHktcWNvbS1xbXAtcGNzLXVmcy12Ni5oIGIvZHJp dmVycy9waHkvcXVhbGNvbW0vcGh5LXFjb20tcW1wLXBjcy11ZnMtdjYuaAo+ID4gPiA+ID4gPiA+ ID4gPiA+ID4gPiA+ID4gaW5kZXggYzIzZDVlNC4uZTU2M2FmNSAxMDA2NDQKPiA+ID4gPiA+ID4g PiA+ID4gPiA+ID4gPiA+IC0tLSBhL2RyaXZlcnMvcGh5L3F1YWxjb21tL3BoeS1xY29tLXFtcC1w Y3MtdWZzLXY2LmgKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICsrKyBiL2RyaXZlcnMvcGh5 L3F1YWxjb21tL3BoeS1xY29tLXFtcC1wY3MtdWZzLXY2LmgKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ ID4gPiA+IEBAIC0xOCw2ICsxOCw3IEBACj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAgICAj ZGVmaW5lIFFQSFlfVjZfUENTX1VGU19CSVNUX0ZJWEVEX1BBVF9DVFJMICAgICAgICAgICAgMHgw NjAKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICAgICNkZWZpbmUgUVBIWV9WNl9QQ1NfVUZT X1RYX0hTR0VBUl9DQVBBQklMSVRZICAgICAgICAgICAweDA3NAo+ID4gPiA+ID4gPiA+ID4gPiA+ ID4gPiA+ID4gICAgI2RlZmluZSBRUEhZX1Y2X1BDU19VRlNfUlhfSFNHRUFSX0NBUEFCSUxJVFkg ICAgICAgICAgIDB4MGJjCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiArI2RlZmluZSBRUEhZ X1Y2X1BDU19VRlNfUlhfSFNfRzVfU1lOQ19MRU5HVEhfQ0FQQUJJTElUWSAgICAgICAgMHgxMmMK PiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICAgICNkZWZpbmUgUVBIWV9WNl9QQ1NfVUZTX0RF QlVHX0JVU19DTEtTRUwgICAgICAgICAgICAgICAweDE1OAo+ID4gPiA+ID4gPiA+ID4gPiA+ID4g PiA+ID4gICAgI2RlZmluZSBRUEhZX1Y2X1BDU19VRlNfTElORUNGR19ESVNBQkxFICAgICAgICAg ICAgICAgICAgICAgICAgMHgxN2MKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICAgICNkZWZp bmUgUVBIWV9WNl9QQ1NfVUZTX1JYX01JTl9ISUJFUk44X1RJTUUgICAgICAgICAgICAweDE4NAo+ ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gQEAgLTI3LDUgKzI4LDYgQEAKPiA+ID4gPiA+ID4g PiA+ID4gPiA+ID4gPiA+ICAgICNkZWZpbmUgUVBIWV9WNl9QQ1NfVUZTX1JFQURZX1NUQVRVUyAg ICAgICAgICAgICAgICAgICAweDFhOAo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gICAgI2Rl ZmluZSBRUEhZX1Y2X1BDU19VRlNfVFhfTUlEX1RFUk1fQ1RSTDEgICAgICAgICAgICAgIDB4MWY0 Cj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAgICAjZGVmaW5lIFFQSFlfVjZfUENTX1VGU19N VUxUSV9MQU5FX0NUUkwxICAgICAgICAgICAgICAgMHgxZmMKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ ID4gPiA+ICsjZGVmaW5lIFFQSFlfVjZfUENTX1VGU19SWF9IU0c1X1NZTkNfV0FJVF9USU1FICAg ICAgICAgMHgyMjAKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+IAo+ID4gPiA+ID4gPiA+ID4g PiA+ID4gPiA+ID4gICAgI2VuZGlmCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiBkaWZmIC0t Z2l0IGEvZHJpdmVycy9waHkvcXVhbGNvbW0vcGh5LXFjb20tcW1wLXFzZXJkZXMtY29tLXY2Lmgg Yi9kcml2ZXJzL3BoeS9xdWFsY29tbS9waHktcWNvbS1xbXAtcXNlcmRlcy1jb20tdjYuaAo+ID4g PiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gaW5kZXggZjQyMGY4Zi4uZWYzOTJjZSAxMDA2NDQKPiA+ ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+IC0tLSBhL2RyaXZlcnMvcGh5L3F1YWxjb21tL3BoeS1x Y29tLXFtcC1xc2VyZGVzLWNvbS12Ni5oCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiArKysg Yi9kcml2ZXJzL3BoeS9xdWFsY29tbS9waHktcWNvbS1xbXAtcXNlcmRlcy1jb20tdjYuaAo+ID4g PiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gQEAgLTU2LDYgKzU2LDggQEAKPiA+ID4gPiA+ID4gPiA+ ID4gPiA+ID4gPiA+ICAgICNkZWZpbmUgUVNFUkRFU19WNl9DT01fU1lTX0NMS19DVFJMICAgICAg ICAgICAgICAgICAgICAgICAgICAgIDB4ZTQKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICAg ICNkZWZpbmUgUVNFUkRFU19WNl9DT01fU1lTQ0xLX0JVRl9FTkFCTEUgICAgICAgICAgICAgICAg ICAgICAgIDB4ZTgKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICAgICNkZWZpbmUgUVNFUkRF U19WNl9DT01fUExMX0lWQ08gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg MHhmNAo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gKyNkZWZpbmUgUVNFUkRFU19WNl9DT01f Q01OX0lFVFJJTSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4ZmMKPiA+ID4gPiA+ID4g PiA+ID4gPiA+ID4gPiA+ICsjZGVmaW5lIFFTRVJERVNfVjZfQ09NX0NNTl9JUFRSSU0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAweDEwMAo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4g ICAgI2RlZmluZSBRU0VSREVTX1Y2X0NPTV9TWVNDTEtfRU5fU0VMICAgICAgICAgICAgICAgICAg ICAgICAgICAgMHgxMTAKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICAgICNkZWZpbmUgUVNF UkRFU19WNl9DT01fUkVTRVRTTV9DTlRSTCAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MTE4 Cj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAgICAjZGVmaW5lIFFTRVJERVNfVjZfQ09NX0xP Q0tfQ01QX0VOICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDEyMAo+ID4gPiA+ID4gPiA+ ID4gPiA+ID4gPiA+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvcGh5L3F1YWxjb21tL3BoeS1xY29t LXFtcC1xc2VyZGVzLXR4cngtdWZzLXY2LmggYi9kcml2ZXJzL3BoeS9xdWFsY29tbS9waHktcWNv bS1xbXAtcXNlcmRlcy10eHJ4LXVmcy12Ni5oCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiBp bmRleCAxNWJjYjRiLi40OGYzMWM4IDEwMDY0NAo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4g LS0tIGEvZHJpdmVycy9waHkvcXVhbGNvbW0vcGh5LXFjb20tcW1wLXFzZXJkZXMtdHhyeC11ZnMt djYuaAo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gKysrIGIvZHJpdmVycy9waHkvcXVhbGNv bW0vcGh5LXFjb20tcW1wLXFzZXJkZXMtdHhyeC11ZnMtdjYuaAo+ID4gPiA+ID4gPiA+ID4gPiA+ ID4gPiA+ID4gQEAgLTEwLDEwICsxMCwyMCBAQAo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4g ICAgI2RlZmluZSBRU0VSREVTX1VGU19WNl9UWF9SRVNfQ09ERV9MQU5FX1JYICAgICAgICAgICAg ICAgICAgICAgMHgyYwo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gICAgI2RlZmluZSBRU0VS REVTX1VGU19WNl9UWF9SRVNfQ09ERV9MQU5FX09GRlNFVF9UWCAgICAgICAgICAgICAgMHgzMAo+ ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gICAgI2RlZmluZSBRU0VSREVTX1VGU19WNl9UWF9S RVNfQ09ERV9MQU5FX09GRlNFVF9SWCAgICAgICAgICAgICAgMHgzNAo+ID4gPiA+ID4gPiA+ID4g PiA+ID4gPiA+ID4gKyNkZWZpbmUgUVNFUkRFU19VRlNfVjZfVFhfTEFORV9NT0RFXzEgICAgICAg ICAgICAgICAgICAgICAgICAgIDB4N2MKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICsjZGVm aW5lIFFTRVJERVNfVUZTX1Y2X1RYX0ZSX0RDQ19DVFJMICAgICAgICAgICAgICAgICAgICAgICAg ICAweDEwOAo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+ID4gPiA+ID4g PiA+ID4gPiAgICAjZGVmaW5lIFFTRVJERVNfVUZTX1Y2X1JYX1VDRFJfRkFTVExPQ0tfRk9fR0FJ Tl9SQVRFMiAgICAgICAgICAweDA4Cj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAgICAjZGVm aW5lIFFTRVJERVNfVUZTX1Y2X1JYX1VDRFJfRkFTVExPQ0tfRk9fR0FJTl9SQVRFNCAgICAgICAg ICAweDEwCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiArI2RlZmluZSBRU0VSREVTX1VGU19W Nl9SWF9VQ0RSX0ZBU1RMT0NLX1NPX0dBSU5fUkFURTQgICAgICAgICAgMHgyNAo+ID4gPiA+ID4g PiA+ID4gPiA+ID4gPiA+ID4gKyNkZWZpbmUgUVNFUkRFU19VRlNfVjZfUlhfVUNEUl9GQVNUTE9D S19DT1VOVF9ISUdIX1JBVEU0ICAgICAgIDB4NTQKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ ICsjZGVmaW5lIFFTRVJERVNfVUZTX1Y2X1JYX1VDRFJfRk9fR0FJTl9SQVRFMiAgICAgICAgICAg ICAgICAgICAweGQ0Cj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiArI2RlZmluZSBRU0VSREVT X1VGU19WNl9SWF9VQ0RSX0ZPX0dBSU5fUkFURTQgICAgICAgICAgICAgICAgICAgMHhkYwo+ID4g PiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gKyNkZWZpbmUgUVNFUkRFU19VRlNfVjZfUlhfVUNEUl9T T19HQUlOX1JBVEU0ICAgICAgICAgICAgICAgICAgIDB4ZjAKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ ID4gPiA+ICsjZGVmaW5lIFFTRVJERVNfVUZTX1Y2X1JYX1VDRFJfUElfQ09OVFJPTFMgICAgICAg ICAgICAgICAgICAgICAweGY0Cj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAgICAjZGVmaW5l IFFTRVJERVNfVUZTX1Y2X1JYX1ZHQV9DQUxfTUFOX1ZBTCAgICAgICAgICAgICAgICAgICAgICAw eDE3OAo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gKyNkZWZpbmUgUVNFUkRFU19VRlNfVjZf UlhfRVFfT0ZGU0VUX0FEQVBUT1JfQ05UUkwxICAgICAgICAgICAgIDB4MWJjCj4gPiA+ID4gPiA+ ID4gPiA+ID4gPiA+ID4gPiArI2RlZmluZSBRU0VSREVTX1VGU19WNl9SWF9PRkZTRVRfQURBUFRP Ul9DTlRSTDMgICAgICAgICAgICAgICAgICAgICAgICAweDFjNAo+ID4gPiA+ID4gPiA+ID4gPiA+ ID4gPiA+ID4gICAgI2RlZmluZSBRU0VSREVTX1VGU19WNl9SWF9NT0RFX1JBVEVfMF8xX0IwICAg ICAgICAgICAgICAgICAgICAgMHgyMDgKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICAgICNk ZWZpbmUgUVNFUkRFU19VRlNfVjZfUlhfTU9ERV9SQVRFXzBfMV9CMSAgICAgICAgICAgICAgICAg ICAgIDB4MjBjCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAgICAjZGVmaW5lIFFTRVJERVNf VUZTX1Y2X1JYX01PREVfUkFURV8wXzFfQjMgICAgICAgICAgICAgICAgICAgICAweDIxNAo+ID4g PiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gQEAgLTI1LDYgKzM1LDggQEAKPiA+ID4gPiA+ID4gPiA+ ID4gPiA+ID4gPiA+ICAgICNkZWZpbmUgUVNFUkRFU19VRlNfVjZfUlhfTU9ERV9SQVRFM19CNSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgyNjQKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ ID4gPiA+ICAgICNkZWZpbmUgUVNFUkRFU19VRlNfVjZfUlhfTU9ERV9SQVRFM19COCAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgMHgyNzAKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ ICAgICNkZWZpbmUgUVNFUkRFU19VRlNfVjZfUlhfTU9ERV9SQVRFNF9CMyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgMHgyODAKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICsjZGVm aW5lIFFTRVJERVNfVUZTX1Y2X1JYX01PREVfUkFURTRfQjQgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIDB4Mjg0Cj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAgICAjZGVmaW5lIFFT RVJERVNfVUZTX1Y2X1JYX01PREVfUkFURTRfQjYgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIDB4MjhjCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiArI2RlZmluZSBRU0VSREVTX1VG U19WNl9SWF9ETEwwX0ZUVU5FX0NUUkwgICAgICAgICAgICAgICAgICAgICAgMHgyZjgKPiA+ID4g PiA+ID4gPiA+ID4gPiA+ID4gPiA+IAo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gICAgI2Vu ZGlmCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9waHkv cXVhbGNvbW0vcGh5LXFjb20tcW1wLXVmcy5jIGIvZHJpdmVycy9waHkvcXVhbGNvbW0vcGh5LXFj b20tcW1wLXVmcy5jCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiBpbmRleCAzOTI3ZWJhLi5l MGEwMTQ5NyAxMDA2NDQKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+IC0tLSBhL2RyaXZlcnMv cGh5L3F1YWxjb21tL3BoeS1xY29tLXFtcC11ZnMuYwo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ ID4gKysrIGIvZHJpdmVycy9waHkvcXVhbGNvbW0vcGh5LXFjb20tcW1wLXVmcy5jCj4gPiA+ID4g PiA+ID4gPiA+ID4gPiA+ID4gPiBAQCAtNjQ5LDMyICs2NDksNTEgQEAgc3RhdGljIGNvbnN0IHN0 cnVjdCBxbXBfcGh5X2luaXRfdGJsIHNtODU1MF91ZnNwaHlfc2VyZGVzW10gPSB7Cj4gPiA+ID4g PiA+ID4gPiA+ID4gPiA+ID4gPiAgICAgICAgICAgUU1QX1BIWV9JTklUX0NGRyhRU0VSREVTX1Y2 X0NPTV9IU0NMS19TRUxfMSwgMHgxMSksCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAgICAg ICAgICAgUU1QX1BIWV9JTklUX0NGRyhRU0VSREVTX1Y2X0NPTV9IU0NMS19IU19TV0lUQ0hfU0VM XzEsIDB4MDApLAo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gICAgICAgICAgIFFNUF9QSFlf SU5JVF9DRkcoUVNFUkRFU19WNl9DT01fTE9DS19DTVBfRU4sIDB4MDEpLAo+ID4gPiA+ID4gPiA+ ID4gPiA+ID4gPiA+ID4gLSAgICAgICBRTVBfUEhZX0lOSVRfQ0ZHKFFTRVJERVNfVjZfQ09NX1ZD T19UVU5FX01BUCwgMHgwNCksCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAtICAgICAgIFFN UF9QSFlfSU5JVF9DRkcoUVNFUkRFU19WNl9DT01fUExMX0lWQ08sIDB4MGYpLAo+ID4gPiA+ID4g PiA+ID4gPiA+ID4gPiA+ID4gKwo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gICAgICAgICAg IFFNUF9QSFlfSU5JVF9DRkcoUVNFUkRFU19WNl9DT01fVkNPX1RVTkVfSU5JVFZBTDIsIDB4MDAp LAo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gICAgICAgICAgIFFNUF9QSFlfSU5JVF9DRkco UVNFUkRFU19WNl9DT01fREVDX1NUQVJUX01PREUwLCAweDQxKSwKPiA+ID4gPiA+ID4gPiA+ID4g PiA+ID4gPiA+IC0gICAgICAgUU1QX1BIWV9JTklUX0NGRyhRU0VSREVTX1Y2X0NPTV9DUF9DVFJM X01PREUwLCAweDBhKSwKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICAgICAgICAgICBRTVBf UEhZX0lOSVRfQ0ZHKFFTRVJERVNfVjZfQ09NX1BMTF9SQ1RSTF9NT0RFMCwgMHgxOCksCj4gPiA+ ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAgICAgICAgICAgUU1QX1BIWV9JTklUX0NGRyhRU0VSREVT X1Y2X0NPTV9QTExfQ0NUUkxfTU9ERTAsIDB4MTQpLAo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ ID4gICAgICAgICAgIFFNUF9QSFlfSU5JVF9DRkcoUVNFUkRFU19WNl9DT01fTE9DS19DTVAxX01P REUwLCAweDdmKSwKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICAgICAgICAgICBRTVBfUEhZ X0lOSVRfQ0ZHKFFTRVJERVNfVjZfQ09NX0xPQ0tfQ01QMl9NT0RFMCwgMHgwNiksCj4gPiA+ID4g PiA+ID4gPiA+ID4gPiA+ID4gPiAtICAgICAgIFFNUF9QSFlfSU5JVF9DRkcoUVNFUkRFU19WNl9D T01fREVDX1NUQVJUX01PREUwLCAweDRjKSwKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICt9 Owo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gKwo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ ID4gK3N0YXRpYyBjb25zdCBzdHJ1Y3QgcW1wX3BoeV9pbml0X3RibCBzbTg1NTBfdWZzcGh5X2hz X2Jfc2VyZGVzW10gPSB7Cj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiArICAgICAgIFFNUF9Q SFlfSU5JVF9DRkcoUVNFUkRFU19WNl9DT01fVkNPX1RVTkVfTUFQLCAweDQ0KSwKPiA+ID4gPiA+ ID4gPiA+ID4gPiA+ID4gPiA+ICt9Owo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gKwo+ID4g PiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gK3N0YXRpYyBjb25zdCBzdHJ1Y3QgcW1wX3BoeV9pbml0 X3RibCBzbTg1NTBfdWZzcGh5X2c0X3NlcmRlc1tdID0gewo+ID4gPiA+ID4gPiA+ID4gPiA+ID4g PiA+ID4gKyAgICAgICBRTVBfUEhZX0lOSVRfQ0ZHKFFTRVJERVNfVjZfQ09NX1ZDT19UVU5FX01B UCwgMHgwNCksCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiArICAgICAgIFFNUF9QSFlfSU5J VF9DRkcoUVNFUkRFU19WNl9DT01fUExMX0lWQ08sIDB4MGYpLAo+ID4gPiA+ID4gPiA+ID4gPiA+ ID4gPiA+ID4gICAgICAgICAgIFFNUF9QSFlfSU5JVF9DRkcoUVNFUkRFU19WNl9DT01fQ1BfQ1RS TF9NT0RFMCwgMHgwYSksCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAtICAgICAgIFFNUF9Q SFlfSU5JVF9DRkcoUVNFUkRFU19WNl9DT01fUExMX1JDVFJMX01PREUwLCAweDE4KSwKPiA+ID4g PiA+ID4gPiA+ID4gPiA+ID4gPiA+IC0gICAgICAgUU1QX1BIWV9JTklUX0NGRyhRU0VSREVTX1Y2 X0NPTV9QTExfQ0NUUkxfTU9ERTAsIDB4MTQpLAo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4g LSAgICAgICBRTVBfUEhZX0lOSVRfQ0ZHKFFTRVJERVNfVjZfQ09NX0xPQ0tfQ01QMV9NT0RFMCwg MHg5OSksCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAtICAgICAgIFFNUF9QSFlfSU5JVF9D RkcoUVNFUkRFU19WNl9DT01fTE9DS19DTVAyX01PREUwLCAweDA3KSwKPiA+ID4gPiA+ID4gPiA+ ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiBBc2lkZSBmcm9tIG1vdmluZyB0 aGVzZSByZWdpc3RlcnMgdG8gdGhlIEhTX0c0IHRhYmxlLCB5b3UgYXJlIGFsc28KPiA+ID4gPiA+ ID4gPiA+ID4gPiA+ID4gPiBjaGFuZ2luZyB0aGVzZSByZWdpc3RlcnMuIEl0IG1ha2VzIG1lIHRo aW5rIHRoYXQgdGhlcmUgd2FzIGFuIGVycm9yIGluCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4g dGhlIG9yaWdpbmFsIHByb2dyYW1taW5nIHNlcXVlbmNlLgo+ID4gPiA+ID4gPiA+ID4gPiA+ID4g PiA+IElmIHRoYXQgaXMgY29ycmVjdCwgY291bGQgeW91IHBsZWFzZSBzcGxpdCB0aGUgcGF0Y2gg aW50byB0d28gcGllY2VzOgo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+IC0gRml4IHByb2dyYW1t aW5nIHNlcXVlbmNlIChhZGQgcHJvcGVyIEZpeGVzIHRhZ3MpCj4gPiA+ID4gPiA+ID4gPiA+ID4g PiA+ID4gLSBTcGxpdCBHNCBhbmQgRzUgdGFibGVzLgo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAK PiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gQWNrCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+IAo+ID4g PiA+ID4gPiA+ID4gPiA+ID4gPiA+IAo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gKwo+ID4g PiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gKyAgICAgICBRTVBfUEhZX0lOSVRfQ0ZHKFFTRVJERVNf VjZfQ09NX0RFQ19TVEFSVF9NT0RFMSwgMHg0YyksCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4g PiArICAgICAgIFFNUF9QSFlfSU5JVF9DRkcoUVNFUkRFU19WNl9DT01fQ1BfQ1RSTF9NT0RFMSwg MHgwYSksCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiArICAgICAgIFFNUF9QSFlfSU5JVF9D RkcoUVNFUkRFU19WNl9DT01fUExMX1JDVFJMX01PREUxLCAweDE4KSwKPiA+ID4gPiA+ID4gPiA+ ID4gPiA+ID4gPiA+ICsgICAgICAgUU1QX1BIWV9JTklUX0NGRyhRU0VSREVTX1Y2X0NPTV9QTExf Q0NUUkxfTU9ERTEsIDB4MTQpLAo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gKyAgICAgICBR TVBfUEhZX0lOSVRfQ0ZHKFFTRVJERVNfVjZfQ09NX0xPQ0tfQ01QMV9NT0RFMSwgMHg5OSksCj4g PiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiArICAgICAgIFFNUF9QSFlfSU5JVF9DRkcoUVNFUkRF U19WNl9DT01fTE9DS19DTVAyX01PREUxLCAweDA3KSwKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4g PiAKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiBJIHNlZSBhbGwgdGhlIE1PREUxIHJlZ2lzdGVy cyBiZWluZyBvbmx5IHByZXNlbnQgaW4gRzQgYW5kIEc1IHRhYmxlcy4KPiA+ID4gPiA+ID4gPiA+ ID4gPiA+ID4gPiBTaG91bGQgdGhleSBiZSBwcm9ncmFtbWVkIGZvciB0aGUgbW9kZXMgbG93ZXIg dGhhbiBHND8KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiA+ID4gPiA+ ID4gCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+IFdlIHVzZSBHNCB0YWJsZSBmb3IgYWxsIHRoZSBt b2RlcyA8PSBHNC4KPiA+ID4gPiA+ID4gPiA+ID4gPiA+IAo+ID4gPiA+ID4gPiA+ID4gPiA+ID4g Q291bGQgeW91IHBsZWFzZSBwb2ludCBtZSBob3cgaXQncyBoYW5kbGVkPwo+ID4gPiA+ID4gPiA+ ID4gPiA+ID4gSW4gdGhlIHBhdGNoIEkgc2VlIGp1c3Q6Cj4gPiA+ID4gPiA+ID4gPiA+ID4gPiAK PiA+ID4gPiA+ID4gPiA+ID4gPiA+ICAgICAgICAgIGlmIChxbXAtPnN1Ym1vZGUgPT0gVUZTX0hT X0c0KQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gICAgICAgICAgICAgICAgICBxbXBfdWZzX3NlcmRl c19pbml0KHFtcCwgJmNmZy0+dGJsc19oc19nNCk7Cj4gPiA+ID4gPiA+ID4gPiA+ID4gPiAgICAg ICAgICBlbHNlIGlmIChxbXAtPnN1Ym1vZGUgPT0gVUZTX0hTX0c1KQo+ID4gPiA+ID4gPiA+ID4g PiA+ID4gICAgICAgICAgICAgICAgICBxbXBfdWZzX3NlcmRlc19pbml0KHFtcCwgJmNmZy0+dGJs c19oc19nNSk7Cj4gPiA+ID4gPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiA+ID4gPiA+IFdo aWNoIGxvb2tzIGxpa2UgdHdvIHNwZWNpYWwgY2FzZXMgKEhTX0c0IGFuZCBIU19HNSkgYW5kIG5v dGhpbmcgZm9yCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiBhbnl0aGluZyBlbHNlLgo+ID4gPiA+ID4g PiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+ID4gPiA+ID4gWWVz LCBhbmQgdGhlIFVGUyBkcml2ZXIgcGFzc2VzIG9ubHkgRzQvRzUuIEZvciBhbGwgdGhlIGdlYXJz IDw9RzQsIEc0IGluaXQKPiA+ID4gPiA+ID4gPiA+ID4gPiBzZXF1ZW5jZSB3aWxsIGJlIHVzZWQg YW5kIGZvciBHNSwgRzUgc2VxdWVuY2Ugd2lsbCBiZSB1c2VkLgo+ID4gPiA+ID4gPiA+ID4gPiA+ IAo+ID4gPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiA+ID4gVGhhdCdzIHdoYXQgSSBjb3Vs ZCBub3QgZmluZCBpbiB0aGUgVUZTIGRyaXZlci4gSSBzZWUgYSBjYWxsIHRvCj4gPiA+ID4gPiA+ ID4gPiA+IGBwaHlfc2V0X21vZGVfZXh0KHBoeSwgUEhZX01PREVfVUZTX0hTX0IsIGhvc3QtPnBo eV9nZWFyKTtgIGFuZAo+ID4gPiA+ID4gPiA+ID4gPiBob3N0LT5waHlfZ2VhciBpcyBpbml0aWFs aXNlZCB0byBVRlNfSFNfRzIuCj4gPiA+ID4gPiA+ID4gPiA+IAo+ID4gPiA+ID4gPiA+ID4gCj4g PiA+ID4gPiA+ID4gPiBZb3UgbmVlZCB0byBjaGVjayB0aGUgVUZTIGRyaXZlciBjaGFuZ2VzIGlu IHRoaXMgc2VyaWVzIHRvIGdldCB0aGUgY29tcGxldGUKPiA+ID4gPiA+ID4gPiA+IHBpY3R1cmUg YXMgdGhlIGxvZ2ljIGlzIGdldHRpbmcgY2hhbmdlZC4KPiA+ID4gPiA+ID4gPiA+IAo+ID4gPiA+ ID4gPiA+ID4gSXQgaXMgY29tbW9uIHRvIGdldCBjb25mdXNlZCBiZWNhdXNlIG9mIHRoZSB3YXkg dGhlIFVGUyBkcml2ZXIgKHFjb20gbW9zdGx5KQo+ID4gPiA+ID4gPiA+ID4gaGFuZGxlcyB0aGUg UEhZIGluaXQgc2VxdWVuY2UgcHJvZ3JhbW1pbmcuIFdlIHVzZWQgdG8gaGF2ZSBvbmx5IG9uZSBp bml0Cj4gPiA+ID4gPiA+ID4gPiBzZXF1ZW5jZSBmb3Igb2xkZXIgdGFyZ2V0cyBhbmQgbGlmZSB3 YXMgZWFzeS4gQnV0IHdoZW4gSSB3YW50ZWQgdG8gYWRkIEc0Cj4gPiA+ID4gPiA+ID4gPiBzdXBw b3J0IGZvciBTTTgyNTAsIEkgbGVhcm5lZCB0aGF0IHRoZXJlIGFyZSAyIHNlcGFyYXRlIGluaXQg c2VxdWVuY2VzLiBPbmUgZm9yCj4gPiA+ID4gPiA+ID4gPiBub24tRzQgYW5kIG90aGVyIGZvciBH NC4gU28gSSB1c2VkIHRoZSBwaHlfc3ViX21vZGUgcHJvcGVydHkgdG8gcGFzcyB0aGUKPiA+ID4g PiA+ID4gPiA+IHJlbGV2YW50IG1vZGUgZnJvbSB0aGUgVUZTIGRyaXZlciB0byB0aGUgUEhZIGRy aXZlciBhbmQgcHJvZ3JhbW1lZCB0aGUgc2VxdWVuY2UKPiA+ID4gPiA+ID4gPiA+IGFjY29yZGlu Z2x5LiBUaGlzIGdvdCBleHRlbmRlZCB0byBub24tRzUgYW5kIEc1IG5vdy4KPiA+ID4gPiA+ID4g PiA+IAo+ID4gPiA+ID4gPiA+ID4gTm93LCB0aGUgVUZTIGRyaXZlciB3aWxsIHN0YXJ0IHByb2Jp bmcgZnJvbSBhIGxvdyBnZWFyIGZvciBvbGRlciB0YXJnZXRzIChHMikKPiA+ID4gPiA+ID4gPiA+ IGFuZCBHNC9HNSBmb3IgbmV3ZXIgb25lcyB0aGVuIHNjYWxlIHVwIGJhc2VkIG9uIHRoZSBkZXZp Y2UgYW5kIGhvc3QgY2FwYWJpbGl0eS4KPiA+ID4gPiA+ID4gPiA+IEZvciBvbGRlciB0YXJnZXRz LCB0aGUgY29tbW9uIHRhYmxlICh0YmxzKSB3aWxsIGJlIHVzZWQgaWYgdGhlIHN1Ym1vZGUgZG9l c24ndAo+ID4gPiA+ID4gPiA+ID4gbWF0Y2ggRzQvRzUuIEJ1dCBmb3IgbmV3ZXIgdGFyZ2V0cywg dGhlIFVGUyBkcml2ZXIgd2lsbCBfb25seV8gcGFzcyBHNCBvciBHNSBhcwo+ID4gPiA+ID4gPiA+ ID4gdGhlIHBoeV9nZWFyLCBzbyB0aG9zZSBzcGVjaWZpYyBzZXF1ZW5jZSB3aWxsIG9ubHkgYmUg dXNlZC4KPiA+ID4gPiA+ID4gPiA+IAo+ID4gPiA+ID4gPiA+ID4gSG9wZSBJJ20gY2xlYXIuCj4g PiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+ID4gWWVzLCBpdCBpcyBub3cgY2xlYXIsIHRoYW5rIHlv dSEKPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiBXb3VsZCBpdCBiZSBwb3NzaWJsZSAvIGZl YXNpYmxlIC8gbG9naWNhbCB0byBtYWludGFpbiB0aGlzIGlkZWEgZXZlbgo+ID4gPiA+ID4gPiA+ IGZvciBuZXdlciBwbGF0Zm9ybXMgKGxlYXZpbmcgdGhlIEhTX0EgIC8gSFNfQiBhc2lkZSk/Cj4g PiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+ID4gdGJscyAtIHdvcmtzIGZvciBIU19HMgo+ID4gPiA+ ID4gPiA+IHRibHMgKyB0YmxzX2c0IC0gd29ya3MgZm9yIEhTX0c0Cj4gPiA+ID4gPiA+ID4gdGJs cyArIHRibHNfZzUgLSB3b3JrcyBmb3IgSFNfRzUKPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4g Cj4gPiA+ID4gPiA+IE5vLiBUaGUgUEhZIHRlYW0gb25seSBnaXZlcyAyIGluaXQgc2VxdWVuY2Vz IGZvciBhbnkgU29DIG5vdy4KPiA+ID4gPiA+IAo+ID4gPiA+ID4gQWNrLiBUaGVuIHRoZSBjb2Rl IHNob3VsZCBiZWNvbWUKPiA+ID4gPiA+IGlmIChIU19HNSkKPiA+ID4gPiA+ICAgICAgcHJvZ3Jh bSh0YmxzX2hzX2c1KQo+ID4gPiA+ID4gZWxzZQo+ID4gPiA+ID4gICAgICBwcm9ncmFtKHRibHNf aHNfZzQpOwo+ID4gPiA+ID4gCj4gPiA+ID4gCj4gPiA+ID4gVGhpcyBzaG91bGQgd29yay4gRXZl biBpZiB3ZSBoYXZlIHRvIGFjY29tb2RhdGUgRzYgaW4gdGhlIGZ1dHVyZSwgd2UgY2FuIHVzZQo+ ID4gPiA+ICJlbHNlIGlmIiBmb3IgdGhhdCBhbmQga2VlcCBHNCBhcyB0aGUgImVsc2UiIGNvbmRp dGlvbi4gVGhpcyBsb2dpYyBjYW4gYWxzbyBiZQo+ID4gPiA+IG9wdGltaXplZCBpbiB0aGUgZnV0 dXJlLgo+ID4gPiAKPiA+ID4gVGhhdCB3b3VsZCBtYWtlIGR1YWwgaW5pdCBtZWFuaW5nbGVzcyBm b3Igb2xkIHRhcmdldHMuIFNheSBvbiBTTTg0NTAsIHRoZQo+ID4gPiBpbml0aWFsIFBIWSBnZWFy IGlzIEcyLCB3aXRoIHRoZSAiZWxzZSIgY29uZGl0aW9uLCBkdXJpbmcgdGhlIGZpcnN0IGluaXQs IEc0Cj4gPiA+IHRhYmxlIHdvdWxkIGJlIHByb2dyYW1tZWQsIHRoZW4gZ2VhciBuZWdvdGlhdGlv biBoYXBwZW5zIGJ0dyBob3N0IGFuZCBkZXZpY2UKPiA+ID4gYW5kIHRoZSBuZWdvdGlhdGVkIGdl YXIgaXMgRzMgKGFzc3VtZSBhIFVGUzIueCBpcyBjb25uZWN0ZWQpLiBEdXJpbmcgdGhlIDJuZAo+ ID4gPiBpbml0LCB0aGUgImVsc2UiIGNvbmRpdGlvbiB3b3VsZCBfX2FnYWluX18gcHJvZ3JhbSB0 aGUgRzQgdGFibGUgLSBpdCBpcyBub3QKPiA+ID4gcHJvZ3JhbW1pbmcgdGhlIG5vbi1HNCB0YWJs ZSBmb3IgcG93ZXIgc2F2aW5nLiBUaGUgZHVhbCBpbml0IGlzIHN1cHBvc2VkIHRvCj4gPiA+IGZp bmQgdGhlIG9wdGltYWwgUEhZIHNldHRpbmdzLCBidXQgdGhlICJlbHNlIiBjb25kaXRpb24gaXMg cHJvZ3JhbW1pbmcgRzQKPiA+ID4gdGFibGUgdW5jb25kaXRpbmFsbHkuCj4gPiA+IAo+ID4gPiBX aXRoIHRoZSBvcmlnaW5hbCBjb2RlIGNoYW5nZSBpbiB0aGlzIHBhdGNoLCB0aGUgZHVhbCBpbml0 IHdvcmtzIGFzIGl0IGlzCj4gPiA+IGZvciBvbGQgdGFyZ2V0cy4gc2F5IFNNODQ1MCwgdGhlIGlu aXRpYWwgUEhZIGdlYXIgaXMgRzIsIGR1cmluZyB0aGUgMm5kCj4gPiA+IGluaXQsIGl0IGlzIHBy b2dyYW1taW5nIHRoZSBub24tRzQgdGFibGUgKGFzc3VtZSBhIFVGUzIueCBpcyBjb25uZWN0ZWQp LCBidXQKPiA+ID4gbm90IHRoZSBHNCB0YWJsZS4KPiA+ID4gCj4gPiAKPiA+IFlvdSBhcmUgcmln aHQuIEkgY29tcGxldGVseSBvdmVybG9va2VkIHRoZSBjb21wYXRpYmlsaXR5IGZvciBvbGQgdGFy Z2V0cy4gQnV0Cj4gPiBzdGlsbCB3ZSBjYW4gbW92ZSB0aGUgY29tbW9uIHRhYmxlIHRvIHRoZSAi ZWxzZSIgY29uZGl0aW9uLiBUaGlzIG1ha2VzIGl0IGNsZWFyCj4gPiB0aGF0IG9uZSBvZiB0aGUg MyB3aWxsIGJlIHByb2dyYW1tZWQgYXQgYSB0aW1lLiBCdXQgd2l0aCB0aGUgY3VycmVudCBsb2dp YywgSQo+ID4gZ2V0IHRoZSBpbXByZXNzaW9uIHRoYXQgY29tbW9uIHRhYmxlIGlzIG92ZXJyaWRk ZW4gYnkgRzQvRzUgdGFibGVzLgo+ID4gCj4gPiBTbyB0aGlzIGlzIHdoYXQgSSdtIHN1Z2dlc3Rp bmc6Cj4gPiAKPiA+IGlmIChIU19HNSkKPiA+IAlwcm9ncmFtKHRibHNfaHNfZzUpCj4gPiBlbHNl IGlmIChIU19HNCkKPiA+IAlwcm9ncmFtKHRibHNfaHNfZzQpOwo+ID4gZWxzZQo+ID4gCXByb2dy YW0odGJsc19oc19jb21tb24pOwo+ID4gCj4gCj4gQ29tbW9uIHRhYmxlIGlzIG5lZWRlZCByZWdh cmRsZXNzbHksIHdlIGNhbm5vdCBwdXQgaXQgaW4gImVsc2UiLCBvdGhlcndpc2UKPiBpdCB3b3Vs ZCBicmVhayBhbGwgdGFyZ2V0cyAtCj4gCj4gT24gb2xkIHRhcmdldHMgKG5vIEc1IHN1cHBvcnRl ZCk6Cj4gQ29tbW9uIHRhYmxlIAkJLSBzdXBwb3J0cyBub24tRzQgKEczIGFuZCBsb3dlcikKPiBD b21tb24gdGFibGUgKyBHNCB0YWJsZSAtIHN1cHBvcnRzIEc0Cj4gCj4gT24gbmV3IHRhcmdldHMg KEc1IHN1cHBvcnRlZCk6Cj4gQ29tbW9uIHRhYmxlIAkJLSBzdXBwb3J0cyBub3RoaW5nLCBhcyBp dCBpcyBqdXN0IGNvbW1vbiBwYXJ0cyBvZiBHNCB0YWJsZQo+IGFuZCBHNSB0YWJsZS4KPiBDb21t b24gdGFibGUgKyBHNCB0YWJsZSAtIHN1cHBvcnQgbm9uLUc1IChHNCBhbmQgbG93ZXIpCj4gQ29t bW9uIHRhYmxlICsgRzUgdGFibGUgLSBzdXBwb3J0IEc1Cj4gCgpEb2ghIEkgbWlzc2VkIHRoZSBm YWN0IHRoYXQgY29tbW9uIHRhYmxlIGlzIG5vdCBhIHN0YW5kYWxvbmUgdGFibGUuIFNvcnJ5IGZv cgp0aGUgY29uZnVzaW9uLiBMZXQncyBrZWVwIGl0IGFzIHlvdSBwcm9wb3NlZCBmb3Igbm93LiBJ IHN0aWxsIGRvbid0IGxpa2UgdGhlIGlmCmNvbmRpdGlvbnMgYXMgaXQgd291bGQganVzdCBrZWVw IGdyb3dpbmcgd2l0aCBmdXR1cmUgZ2VhcnMsIGJ1dCB3ZSBjYW4gZ2V0IHRvIGl0CmxhdGVyLgoK LSBNYW5pCgo+IFRoYW5rcywKPiBDYW4gR3VvLgo+IAo+ID4gLSBNYW5pCj4gPiAKPiA+ID4gVGhh bmtzLAo+ID4gPiBDYW4gR3VvLgo+ID4gPiA+IAo+ID4gPiA+IC0gTWFuaQo+ID4gPiA+IAo+ID4g PiA+ID4gPiAKPiA+ID4gPiA+ID4gLSBNYW5pCj4gPiA+ID4gPiA+IAo+ID4gPiA+ID4gPiA+IEkg bWVhbiBoZXJlIHRoYXQgdGhlIFBIWSBkcml2ZXIgc2hvdWxkIG5vdCBkZXBlbmQgb24gdGhlIGtu b3dsZWRnZQo+ID4gPiA+ID4gPiA+IHRoYXQgdGhlIFVGUyBkcml2ZXIgd2lsbCBub3QgYmUgc2V0 dGluZyBIU19HMiBmb3Igc29tZSBwYXJ0aWN1bGFyCj4gPiA+ID4gPiA+ID4gcGxhdGZvcm0gYW5k IGlkZWFsbHkgaXQgc2hvdWxkIGNvbnRpbnVlIHdvcmtpbmcgaWYgYXQgc29tZSBwb2ludCB3ZQo+ ID4gPiA+ID4gPiA+IGNoYW5nZSB0aGUgVUZTIGRyaXZlciB0byBzZXQgSFNfRzIuCj4gPiA+ID4g PiA+ID4gCj4gPiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiA+IC0g TWFuaQo+ID4gPiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+ID4gPiA+IE1heWJlIHdlIHNob3VsZCBj aGFuZ2UgdGhlIGNvbmRpdGlvbiBoZXJlIChpbiB0aGUgUEhZIGRyaXZlcikgdG86Cj4gPiA+ID4g PiA+ID4gPiA+IAo+ID4gPiA+ID4gPiA+ID4gPiBpZiAocW1wLT5zdWJtb2RlIDw9IFVGU19IU19H NCkKPiA+ID4gPiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+ID4gPiA+ID8KPiA+ID4gPiA+ID4gPiA+ ID4gLS0KPiA+ID4gPiA+ID4gPiA+ID4gV2l0aCBiZXN0IHdpc2hlcwo+ID4gPiA+ID4gPiA+ID4g PiBEbWl0cnkKPiA+ID4gPiA+ID4gPiA+IAo+ID4gPiA+ID4gPiA+ID4gLS0KPiA+ID4gPiA+ID4g PiA+IOCuruCuo+Cuv+CuteCuo+CvjeCuo+CuqeCvjSDgrprgrqTgrr7grprgrr/grrXgrq7gr40K PiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4g PiAtLQo+ID4gPiA+ID4gPiA+IFdpdGggYmVzdCB3aXNoZXMKPiA+ID4gPiA+ID4gPiBEbWl0cnkK PiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+IC0tCj4gPiA+ID4gPiA+IOCuruCuo+Cuv+CuteCuo+Cv jeCuo+CuqeCvjSDgrprgrqTgrr7grprgrr/grrXgrq7gr40KPiA+ID4gPiA+IAo+ID4gPiA+ID4g Cj4gPiA+ID4gPiAKPiA+ID4gPiA+IC0tIAo+ID4gPiA+ID4gV2l0aCBiZXN0IHdpc2hlcwo+ID4g PiA+ID4gRG1pdHJ5Cj4gPiA+ID4gCj4gPiAKCi0tIArgrq7grqPgrr/grrXgrqPgr43grqPgrqng r40g4K6a4K6k4K6+4K6a4K6/4K614K6u4K+NCgotLSAKbGludXgtcGh5IG1haWxpbmcgbGlzdAps aW51eC1waHlAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwczovL2xpc3RzLmluZnJhZGVhZC5vcmcv bWFpbG1hbi9saXN0aW5mby9saW51eC1waHkK