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 8519BC4332F for ; Thu, 9 Nov 2023 03:26: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=rsulwT0kcWT3Lgy3e1nZGSmiaOcuwn8rlGLUsTk4+eU=; b=ilXHTZah7haXDS mvZmzIJ/FoGAQtpP+C4TPlsPLnlphVfWSEuBB23hWdm9ng3IVQQciGPG49ZlVa5484fBRkQjiJzmq e+T3Wf6qfgYEaUffiBrVn7dsO1GoTHS6KoCyK48xP3rYoTxSEKCVBCOmzbKknIoyUJ6VPSd35tudz eBbd5XP6Kr6Kcsjzk/PfGUVFALWfacBwm9pmazkzZih5aDamA92LfKBpRfO9z5Kapip4nsJA3ZCg4 d+E8Hi2aSLwPYiAd4Qy0OwpI/5S58K7RRhGMjglgO0CE2SBtOMdFYJlTY5zD9HvCa5Ok6hM5MuOCx 0bNYbHujlqwMIHPh5qDQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1r0vgZ-005Aq5-0M; Thu, 09 Nov 2023 03:26:27 +0000 Received: from sin.source.kernel.org ([2604:1380:40e1:4800::1]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1r0vgU-005Aoh-38 for linux-phy@lists.infradead.org; Thu, 09 Nov 2023 03:26:25 +0000 Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by sin.source.kernel.org (Postfix) with ESMTP id 03D7ACE1189; Thu, 9 Nov 2023 03:26:21 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 09F16C433C8; Thu, 9 Nov 2023 03:26:13 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1699500380; bh=PU6sK4Ov586+n9ZFXKoNa98Ilva3IBaB9Q4vCXGsCdg=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=C7t0dFiPe9OU6D+eLUWdMkEEDClcBKvNwa/9NPqxGcltEFgKfLpxbTAfCPM6fvYf7 4JV/aPkmt0/DYRJyzInSNy33+k7cY1BgRVBFR1kODW15MvHzt1yyRVZdNF89NTkKVu /5W6NuFGv2F9aythl0Tl1+OGTYD5VVqszqPpmmc/MmhFzzR7dfewpuRFiiQA08XTbq T/fof2FJHpD6O0q41a9oly1XOObk0sqBcG/8i3W5ULZCfHV6JLyd8Ov1yInMlvULFI 4PYv2M7cI0mBL2HO7k6Bt+AeO2634shmQL3gJxjNx0dPs3ktNvnj+to4wnuBo2lIqT TRVemY6kLZ2SA== Date: Thu, 9 Nov 2023 08:56:04 +0530 From: Manivannan Sadhasivam To: Can Guo Cc: 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: <20231109032604.GB3752@thinkpad> References: <1699332374-9324-1-git-send-email-cang@qti.qualcomm.com> <1699332374-9324-7-git-send-email-cang@qti.qualcomm.com> <20231108054942.GF3296@thinkpad> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20231108_192623_356728_5EEDF2BE X-CRM114-Status: GOOD ( 38.42 ) 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 T24gV2VkLCBOb3YgMDgsIDIwMjMgYXQgMDU6MTk6NDNQTSArMDgwMCwgQ2FuIEd1byB3cm90ZToK PiBIaSBNYW5pLAo+IAo+IE9uIDExLzgvMjAyMyAxOjQ5IFBNLCBNYW5pdmFubmFuIFNhZGhhc2l2 YW0gd3JvdGU6Cj4gPiBPbiBUdWUsIE5vdiAwNywgMjAyMyBhdCAwMzoxODowOVBNICswMjAwLCBE bWl0cnkgQmFyeXNoa292IHdyb3RlOgo+ID4gPiBPbiBUdWUsIDcgTm92IDIwMjMgYXQgMDY6NDcs IENhbiBHdW8gPGNhbmdAcXRpLnF1YWxjb21tLmNvbT4gd3JvdGU6Cj4gPiA+ID4gCj4gPiA+ID4g RnJvbTogQ2FuIEd1byA8cXVpY19jYW5nQHF1aWNpbmMuY29tPgo+ID4gPiA+IAo+ID4gPiA+IE9u IFNNODU1MCwgdHdvIHNldHMgb2YgVUZTIFBIWSBzZXR0aW5ncyBhcmUgcHJvdmlkZWQsIG9uZSBz ZXQgaXMgdG8gc3VwcG9ydAo+ID4gPiA+IEhTLUc1LCBhbm90aGVyIHNldCBpcyB0byBzdXBwb3J0 IEhTLUc0IGFuZCBsb3dlciBnZWFycy4gVGhlIHR3byBzZXRzIG9mIFBIWQo+ID4gPiA+IHNldHRp bmdzIGFyZSBwcm9ncmFtbWluZyBkaWZmZXJlbnQgdmFsdWVzIHRvIGRpZmZlcmVudCByZWdpc3Rl cnMsIG1peGluZwo+ID4gPiA+IHRoZSB0d28gc2V0cyBhbmQvb3Igb3ZlcndyaXRpbmcgb25lIHNl dCB3aXRoIGFub3RoZXIgc2V0IGlzIGRlZmluaXRlbHkgbm90Cj4gPiA+ID4gYmxlc3NlZCBieSBV RlMgUEhZIGRlc2lnbmVycy4gSW4gb3JkZXIgdG8gYWRkIEhTLUc1IHN1cHBvcnQgZm9yIFNNODU1 MCwgd2UKPiA+ID4gPiBuZWVkIHRvIHNwbGl0IHRoZSB0d28gc2V0cyBpbnRvIHRoZWlyIGRlZGlj YXRlZCB0YWJsZXMsIGFuZCBsZWF2ZSBvbmx5IHRoZQo+ID4gPiA+IGNvbW1vbiBzZXR0aW5ncyBp biB0aGUgLnRsYnMuIFRvIGhhdmUgdGhlIFBIWSBwcm9ncmFtbWVkIHdpdGggdGhlIGNvcnJlY3QK PiA+ID4gPiBzZXQgb2YgUEhZIHNldHRpbmdzLCB0aGUgc3VibW9kZSBwYXNzZWQgdG8gUEhZIGRy aXZlciBtdXN0IGJlIGVpdGhlciBIUy1HNAo+ID4gPiA+IG9yIEhTLUc1Lgo+ID4gPiA+IAo+ID4g Cj4gPiBZb3Ugc2hvdWxkIGFsc28gbWVudGlvbiB0aGF0IHRoaXMgaXNzdWUgaXMgYWxzbyBwcmVz ZW50IGluIEc0IHN1cHBvcnRlZCB0YXJnZXRzLgo+ID4gQW5kIGEgbm90ZSB0aGF0IGl0IHdpbGwg Z2V0IGZpeGVkIGxhdGVyLgo+IAo+IFdpbGwgdGhpcyBpbmZvIHVwc2V0IG1vcmUgcGVvcGxlPyBI b3cgYWJvdXQgSSBtZW50aW9uIHRoaXMgaW4gdGhlIGNvdmVyCj4gbGV0dGVyPwo+IAoKSXQgaXMg d29ya2luZyBmaW5lIGZvciBub3cgYW5kIHdlIGp1c3Qgd2FudCB0byBtYWtlIHN1cmUgdGhlIHNl cXVlbmNlIGlzIGFsaWduZWQKd2l0aCBIUEcuIFNvIEkgZG9uJ3QgdGhpbmsgaXQgY2FuIHVwc2V0 IGFueW9uZS4gQnV0IHllYWgsIHlvdSBjYW4ganVzdCBtZW50aW9uCml0IGluIHRoZSBjb3ZlciBs ZXR0ZXIuCgotIE1hbmkKCj4gPiAKPiA+ID4gPiBTaWduZWQtb2ZmLWJ5OiBDYW4gR3VvIDxxdWlj X2NhbmdAcXVpY2luYy5jb20+Cj4gPiA+ID4gLS0tCj4gPiA+ID4gICBkcml2ZXJzL3BoeS9xdWFs Y29tbS9waHktcWNvbS1xbXAtcGNzLXVmcy12Ni5oICAgICB8ICAgMiArCj4gPiA+ID4gICBkcml2 ZXJzL3BoeS9xdWFsY29tbS9waHktcWNvbS1xbXAtcXNlcmRlcy1jb20tdjYuaCB8ICAgMiArCj4g PiA+ID4gICAuLi4vcXVhbGNvbW0vcGh5LXFjb20tcW1wLXFzZXJkZXMtdHhyeC11ZnMtdjYuaCAg ICB8ICAxMiArKysKPiA+ID4gPiAgIGRyaXZlcnMvcGh5L3F1YWxjb21tL3BoeS1xY29tLXFtcC11 ZnMuYyAgICAgICAgICAgIHwgMTEyICsrKysrKysrKysrKysrKysrKy0tLQo+ID4gPiA+ICAgNCBm aWxlcyBjaGFuZ2VkLCAxMTUgaW5zZXJ0aW9ucygrKSwgMTMgZGVsZXRpb25zKC0pCj4gPiA+ID4g Cj4gPiA+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvcGh5L3F1YWxjb21tL3BoeS1xY29tLXFtcC1w Y3MtdWZzLXY2LmggYi9kcml2ZXJzL3BoeS9xdWFsY29tbS9waHktcWNvbS1xbXAtcGNzLXVmcy12 Ni5oCj4gPiA+ID4gaW5kZXggYzIzZDVlNC4uZTU2M2FmNSAxMDA2NDQKPiA+ID4gPiAtLS0gYS9k cml2ZXJzL3BoeS9xdWFsY29tbS9waHktcWNvbS1xbXAtcGNzLXVmcy12Ni5oCj4gPiA+ID4gKysr IGIvZHJpdmVycy9waHkvcXVhbGNvbW0vcGh5LXFjb20tcW1wLXBjcy11ZnMtdjYuaAo+ID4gPiA+ IEBAIC0xOCw2ICsxOCw3IEBACj4gPiA+ID4gICAjZGVmaW5lIFFQSFlfVjZfUENTX1VGU19CSVNU X0ZJWEVEX1BBVF9DVFJMICAgICAgICAgICAgMHgwNjAKPiA+ID4gPiAgICNkZWZpbmUgUVBIWV9W Nl9QQ1NfVUZTX1RYX0hTR0VBUl9DQVBBQklMSVRZICAgICAgICAgICAweDA3NAo+ID4gPiA+ICAg I2RlZmluZSBRUEhZX1Y2X1BDU19VRlNfUlhfSFNHRUFSX0NBUEFCSUxJVFkgICAgICAgICAgIDB4 MGJjCj4gPiA+ID4gKyNkZWZpbmUgUVBIWV9WNl9QQ1NfVUZTX1JYX0hTX0c1X1NZTkNfTEVOR1RI X0NBUEFCSUxJVFkgICAgICAgIDB4MTJjCj4gPiA+ID4gICAjZGVmaW5lIFFQSFlfVjZfUENTX1VG U19ERUJVR19CVVNfQ0xLU0VMICAgICAgICAgICAgICAgMHgxNTgKPiA+ID4gPiAgICNkZWZpbmUg UVBIWV9WNl9QQ1NfVUZTX0xJTkVDRkdfRElTQUJMRSAgICAgICAgICAgICAgICAgICAgICAgIDB4 MTdjCj4gPiA+ID4gICAjZGVmaW5lIFFQSFlfVjZfUENTX1VGU19SWF9NSU5fSElCRVJOOF9USU1F ICAgICAgICAgICAgMHgxODQKPiA+ID4gPiBAQCAtMjcsNSArMjgsNiBAQAo+ID4gPiA+ICAgI2Rl ZmluZSBRUEhZX1Y2X1BDU19VRlNfUkVBRFlfU1RBVFVTICAgICAgICAgICAgICAgICAgIDB4MWE4 Cj4gPiA+ID4gICAjZGVmaW5lIFFQSFlfVjZfUENTX1VGU19UWF9NSURfVEVSTV9DVFJMMSAgICAg ICAgICAgICAgMHgxZjQKPiA+ID4gPiAgICNkZWZpbmUgUVBIWV9WNl9QQ1NfVUZTX01VTFRJX0xB TkVfQ1RSTDEgICAgICAgICAgICAgICAweDFmYwo+ID4gPiA+ICsjZGVmaW5lIFFQSFlfVjZfUENT X1VGU19SWF9IU0c1X1NZTkNfV0FJVF9USU1FICAgICAgICAgMHgyMjAKPiA+ID4gPiAKPiA+ID4g PiAgICNlbmRpZgo+ID4gPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL3BoeS9xdWFsY29tbS9waHkt cWNvbS1xbXAtcXNlcmRlcy1jb20tdjYuaCBiL2RyaXZlcnMvcGh5L3F1YWxjb21tL3BoeS1xY29t LXFtcC1xc2VyZGVzLWNvbS12Ni5oCj4gPiA+ID4gaW5kZXggZjQyMGY4Zi4uZWYzOTJjZSAxMDA2 NDQKPiA+ID4gPiAtLS0gYS9kcml2ZXJzL3BoeS9xdWFsY29tbS9waHktcWNvbS1xbXAtcXNlcmRl cy1jb20tdjYuaAo+ID4gPiA+ICsrKyBiL2RyaXZlcnMvcGh5L3F1YWxjb21tL3BoeS1xY29tLXFt cC1xc2VyZGVzLWNvbS12Ni5oCj4gPiA+ID4gQEAgLTU2LDYgKzU2LDggQEAKPiA+ID4gPiAgICNk ZWZpbmUgUVNFUkRFU19WNl9DT01fU1lTX0NMS19DVFJMICAgICAgICAgICAgICAgICAgICAgICAg ICAgIDB4ZTQKPiA+ID4gPiAgICNkZWZpbmUgUVNFUkRFU19WNl9DT01fU1lTQ0xLX0JVRl9FTkFC TEUgICAgICAgICAgICAgICAgICAgICAgIDB4ZTgKPiA+ID4gPiAgICNkZWZpbmUgUVNFUkRFU19W Nl9DT01fUExMX0lWQ08gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHhm NAo+ID4gPiA+ICsjZGVmaW5lIFFTRVJERVNfVjZfQ09NX0NNTl9JRVRSSU0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAweGZjCj4gPiA+ID4gKyNkZWZpbmUgUVNFUkRFU19WNl9DT01fQ01O X0lQVFJJTSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MTAwCj4gPiA+ID4gICAjZGVm aW5lIFFTRVJERVNfVjZfQ09NX1NZU0NMS19FTl9TRUwgICAgICAgICAgICAgICAgICAgICAgICAg ICAweDExMAo+ID4gPiA+ICAgI2RlZmluZSBRU0VSREVTX1Y2X0NPTV9SRVNFVFNNX0NOVFJMICAg ICAgICAgICAgICAgICAgICAgICAgICAgMHgxMTgKPiA+ID4gPiAgICNkZWZpbmUgUVNFUkRFU19W Nl9DT01fTE9DS19DTVBfRU4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MTIwCj4gPiA+ ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvcGh5L3F1YWxjb21tL3BoeS1xY29tLXFtcC1xc2VyZGVz LXR4cngtdWZzLXY2LmggYi9kcml2ZXJzL3BoeS9xdWFsY29tbS9waHktcWNvbS1xbXAtcXNlcmRl cy10eHJ4LXVmcy12Ni5oCj4gPiA+ID4gaW5kZXggMTViY2I0Yi4uNDhmMzFjOCAxMDA2NDQKPiA+ ID4gPiAtLS0gYS9kcml2ZXJzL3BoeS9xdWFsY29tbS9waHktcWNvbS1xbXAtcXNlcmRlcy10eHJ4 LXVmcy12Ni5oCj4gPiA+ID4gKysrIGIvZHJpdmVycy9waHkvcXVhbGNvbW0vcGh5LXFjb20tcW1w LXFzZXJkZXMtdHhyeC11ZnMtdjYuaAo+ID4gPiA+IEBAIC0xMCwxMCArMTAsMjAgQEAKPiA+ID4g PiAgICNkZWZpbmUgUVNFUkRFU19VRlNfVjZfVFhfUkVTX0NPREVfTEFORV9SWCAgICAgICAgICAg ICAgICAgICAgIDB4MmMKPiA+ID4gPiAgICNkZWZpbmUgUVNFUkRFU19VRlNfVjZfVFhfUkVTX0NP REVfTEFORV9PRkZTRVRfVFggICAgICAgICAgICAgIDB4MzAKPiA+ID4gPiAgICNkZWZpbmUgUVNF UkRFU19VRlNfVjZfVFhfUkVTX0NPREVfTEFORV9PRkZTRVRfUlggICAgICAgICAgICAgIDB4MzQK PiA+ID4gPiArI2RlZmluZSBRU0VSREVTX1VGU19WNl9UWF9MQU5FX01PREVfMSAgICAgICAgICAg ICAgICAgICAgICAgICAgMHg3Ywo+ID4gPiA+ICsjZGVmaW5lIFFTRVJERVNfVUZTX1Y2X1RYX0ZS X0RDQ19DVFJMICAgICAgICAgICAgICAgICAgICAgICAgICAweDEwOAo+ID4gPiA+IAo+ID4gPiA+ ICAgI2RlZmluZSBRU0VSREVTX1VGU19WNl9SWF9VQ0RSX0ZBU1RMT0NLX0ZPX0dBSU5fUkFURTIg ICAgICAgICAgMHgwOAo+ID4gPiA+ICAgI2RlZmluZSBRU0VSREVTX1VGU19WNl9SWF9VQ0RSX0ZB U1RMT0NLX0ZPX0dBSU5fUkFURTQgICAgICAgICAgMHgxMAo+ID4gPiA+ICsjZGVmaW5lIFFTRVJE RVNfVUZTX1Y2X1JYX1VDRFJfRkFTVExPQ0tfU09fR0FJTl9SQVRFNCAgICAgICAgICAweDI0Cj4g PiA+ID4gKyNkZWZpbmUgUVNFUkRFU19VRlNfVjZfUlhfVUNEUl9GQVNUTE9DS19DT1VOVF9ISUdI X1JBVEU0ICAgICAgIDB4NTQKPiA+ID4gPiArI2RlZmluZSBRU0VSREVTX1VGU19WNl9SWF9VQ0RS X0ZPX0dBSU5fUkFURTIgICAgICAgICAgICAgICAgICAgMHhkNAo+ID4gPiA+ICsjZGVmaW5lIFFT RVJERVNfVUZTX1Y2X1JYX1VDRFJfRk9fR0FJTl9SQVRFNCAgICAgICAgICAgICAgICAgICAweGRj Cj4gPiA+ID4gKyNkZWZpbmUgUVNFUkRFU19VRlNfVjZfUlhfVUNEUl9TT19HQUlOX1JBVEU0ICAg ICAgICAgICAgICAgICAgIDB4ZjAKPiA+ID4gPiArI2RlZmluZSBRU0VSREVTX1VGU19WNl9SWF9V Q0RSX1BJX0NPTlRST0xTICAgICAgICAgICAgICAgICAgICAgMHhmNAo+ID4gPiA+ICAgI2RlZmlu ZSBRU0VSREVTX1VGU19WNl9SWF9WR0FfQ0FMX01BTl9WQUwgICAgICAgICAgICAgICAgICAgICAg MHgxNzgKPiA+ID4gPiArI2RlZmluZSBRU0VSREVTX1VGU19WNl9SWF9FUV9PRkZTRVRfQURBUFRP Ul9DTlRSTDEgICAgICAgICAgICAgMHgxYmMKPiA+ID4gPiArI2RlZmluZSBRU0VSREVTX1VGU19W Nl9SWF9PRkZTRVRfQURBUFRPUl9DTlRSTDMgICAgICAgICAgICAgICAgICAgICAgICAweDFjNAo+ ID4gPiA+ICAgI2RlZmluZSBRU0VSREVTX1VGU19WNl9SWF9NT0RFX1JBVEVfMF8xX0IwICAgICAg ICAgICAgICAgICAgICAgMHgyMDgKPiA+ID4gPiAgICNkZWZpbmUgUVNFUkRFU19VRlNfVjZfUlhf TU9ERV9SQVRFXzBfMV9CMSAgICAgICAgICAgICAgICAgICAgIDB4MjBjCj4gPiA+ID4gICAjZGVm aW5lIFFTRVJERVNfVUZTX1Y2X1JYX01PREVfUkFURV8wXzFfQjMgICAgICAgICAgICAgICAgICAg ICAweDIxNAo+ID4gPiA+IEBAIC0yNSw2ICszNSw4IEBACj4gPiA+ID4gICAjZGVmaW5lIFFTRVJE RVNfVUZTX1Y2X1JYX01PREVfUkFURTNfQjUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IDB4MjY0Cj4gPiA+ID4gICAjZGVmaW5lIFFTRVJERVNfVUZTX1Y2X1JYX01PREVfUkFURTNfQjgg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MjcwCj4gPiA+ID4gICAjZGVmaW5lIFFT RVJERVNfVUZTX1Y2X1JYX01PREVfUkFURTRfQjMgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIDB4MjgwCj4gPiA+ID4gKyNkZWZpbmUgUVNFUkRFU19VRlNfVjZfUlhfTU9ERV9SQVRFNF9C NCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgyODQKPiA+ID4gPiAgICNkZWZpbmUg UVNFUkRFU19VRlNfVjZfUlhfTU9ERV9SQVRFNF9CNiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgMHgyOGMKPiA+ID4gPiArI2RlZmluZSBRU0VSREVTX1VGU19WNl9SWF9ETEwwX0ZUVU5F X0NUUkwgICAgICAgICAgICAgICAgICAgICAgMHgyZjgKPiA+ID4gPiAKPiA+ID4gPiAgICNlbmRp Zgo+ID4gPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL3BoeS9xdWFsY29tbS9waHktcWNvbS1xbXAt dWZzLmMgYi9kcml2ZXJzL3BoeS9xdWFsY29tbS9waHktcWNvbS1xbXAtdWZzLmMKPiA+ID4gPiBp bmRleCAzOTI3ZWJhLi5lMGEwMTQ5NyAxMDA2NDQKPiA+ID4gPiAtLS0gYS9kcml2ZXJzL3BoeS9x dWFsY29tbS9waHktcWNvbS1xbXAtdWZzLmMKPiA+ID4gPiArKysgYi9kcml2ZXJzL3BoeS9xdWFs Y29tbS9waHktcWNvbS1xbXAtdWZzLmMKPiA+ID4gPiBAQCAtNjQ5LDMyICs2NDksNTEgQEAgc3Rh dGljIGNvbnN0IHN0cnVjdCBxbXBfcGh5X2luaXRfdGJsIHNtODU1MF91ZnNwaHlfc2VyZGVzW10g PSB7Cj4gPiA+ID4gICAgICAgICAgUU1QX1BIWV9JTklUX0NGRyhRU0VSREVTX1Y2X0NPTV9IU0NM S19TRUxfMSwgMHgxMSksCj4gPiA+ID4gICAgICAgICAgUU1QX1BIWV9JTklUX0NGRyhRU0VSREVT X1Y2X0NPTV9IU0NMS19IU19TV0lUQ0hfU0VMXzEsIDB4MDApLAo+ID4gPiA+ICAgICAgICAgIFFN UF9QSFlfSU5JVF9DRkcoUVNFUkRFU19WNl9DT01fTE9DS19DTVBfRU4sIDB4MDEpLAo+ID4gPiA+ IC0gICAgICAgUU1QX1BIWV9JTklUX0NGRyhRU0VSREVTX1Y2X0NPTV9WQ09fVFVORV9NQVAsIDB4 MDQpLAo+ID4gPiA+IC0gICAgICAgUU1QX1BIWV9JTklUX0NGRyhRU0VSREVTX1Y2X0NPTV9QTExf SVZDTywgMHgwZiksCj4gPiA+ID4gKwo+ID4gPiA+ICAgICAgICAgIFFNUF9QSFlfSU5JVF9DRkco UVNFUkRFU19WNl9DT01fVkNPX1RVTkVfSU5JVFZBTDIsIDB4MDApLAo+ID4gPiA+ICAgICAgICAg IFFNUF9QSFlfSU5JVF9DRkcoUVNFUkRFU19WNl9DT01fREVDX1NUQVJUX01PREUwLCAweDQxKSwK PiA+ID4gPiAtICAgICAgIFFNUF9QSFlfSU5JVF9DRkcoUVNFUkRFU19WNl9DT01fQ1BfQ1RSTF9N T0RFMCwgMHgwYSksCj4gPiA+ID4gICAgICAgICAgUU1QX1BIWV9JTklUX0NGRyhRU0VSREVTX1Y2 X0NPTV9QTExfUkNUUkxfTU9ERTAsIDB4MTgpLAo+ID4gPiA+ICAgICAgICAgIFFNUF9QSFlfSU5J VF9DRkcoUVNFUkRFU19WNl9DT01fUExMX0NDVFJMX01PREUwLCAweDE0KSwKPiA+ID4gPiAgICAg ICAgICBRTVBfUEhZX0lOSVRfQ0ZHKFFTRVJERVNfVjZfQ09NX0xPQ0tfQ01QMV9NT0RFMCwgMHg3 ZiksCj4gPiA+ID4gICAgICAgICAgUU1QX1BIWV9JTklUX0NGRyhRU0VSREVTX1Y2X0NPTV9MT0NL X0NNUDJfTU9ERTAsIDB4MDYpLAo+ID4gPiA+IC0gICAgICAgUU1QX1BIWV9JTklUX0NGRyhRU0VS REVTX1Y2X0NPTV9ERUNfU1RBUlRfTU9ERTAsIDB4NGMpLAo+ID4gPiA+ICt9Owo+ID4gPiA+ICsK PiA+ID4gPiArc3RhdGljIGNvbnN0IHN0cnVjdCBxbXBfcGh5X2luaXRfdGJsIHNtODU1MF91ZnNw aHlfaHNfYl9zZXJkZXNbXSA9IHsKPiA+ID4gPiArICAgICAgIFFNUF9QSFlfSU5JVF9DRkcoUVNF UkRFU19WNl9DT01fVkNPX1RVTkVfTUFQLCAweDQ0KSwKPiA+ID4gPiArfTsKPiA+ID4gPiArCj4g PiA+ID4gK3N0YXRpYyBjb25zdCBzdHJ1Y3QgcW1wX3BoeV9pbml0X3RibCBzbTg1NTBfdWZzcGh5 X2c0X3NlcmRlc1tdID0gewo+ID4gPiA+ICsgICAgICAgUU1QX1BIWV9JTklUX0NGRyhRU0VSREVT X1Y2X0NPTV9WQ09fVFVORV9NQVAsIDB4MDQpLAo+ID4gPiA+ICsgICAgICAgUU1QX1BIWV9JTklU X0NGRyhRU0VSREVTX1Y2X0NPTV9QTExfSVZDTywgMHgwZiksCj4gPiA+ID4gICAgICAgICAgUU1Q X1BIWV9JTklUX0NGRyhRU0VSREVTX1Y2X0NPTV9DUF9DVFJMX01PREUwLCAweDBhKSwKPiA+ID4g PiAtICAgICAgIFFNUF9QSFlfSU5JVF9DRkcoUVNFUkRFU19WNl9DT01fUExMX1JDVFJMX01PREUw LCAweDE4KSwKPiA+ID4gPiAtICAgICAgIFFNUF9QSFlfSU5JVF9DRkcoUVNFUkRFU19WNl9DT01f UExMX0NDVFJMX01PREUwLCAweDE0KSwKPiA+ID4gPiAtICAgICAgIFFNUF9QSFlfSU5JVF9DRkco UVNFUkRFU19WNl9DT01fTE9DS19DTVAxX01PREUwLCAweDk5KSwKPiA+ID4gPiAtICAgICAgIFFN UF9QSFlfSU5JVF9DRkcoUVNFUkRFU19WNl9DT01fTE9DS19DTVAyX01PREUwLCAweDA3KSwKPiA+ ID4gCj4gPiA+IEFzaWRlIGZyb20gbW92aW5nIHRoZXNlIHJlZ2lzdGVycyB0byB0aGUgSFNfRzQg dGFibGUsIHlvdSBhcmUgYWxzbwo+ID4gPiBjaGFuZ2luZyB0aGVzZSByZWdpc3RlcnMuIEl0IG1h a2VzIG1lIHRoaW5rIHRoYXQgdGhlcmUgd2FzIGFuIGVycm9yIGluCj4gPiA+IHRoZSBvcmlnaW5h bCBwcm9ncmFtbWluZyBzZXF1ZW5jZS4KPiA+ID4gSWYgdGhhdCBpcyBjb3JyZWN0LCBjb3VsZCB5 b3UgcGxlYXNlIHNwbGl0IHRoZSBwYXRjaCBpbnRvIHR3byBwaWVjZXM6Cj4gPiA+IC0gRml4IHBy b2dyYW1taW5nIHNlcXVlbmNlIChhZGQgcHJvcGVyIEZpeGVzIHRhZ3MpCj4gPiA+IC0gU3BsaXQg RzQgYW5kIEc1IHRhYmxlcy4KPiA+IAo+ID4gQWNrCj4gPiAKPiA+ID4gCj4gPiA+ID4gKwo+ID4g PiA+ICsgICAgICAgUU1QX1BIWV9JTklUX0NGRyhRU0VSREVTX1Y2X0NPTV9ERUNfU1RBUlRfTU9E RTEsIDB4NGMpLAo+ID4gPiA+ICsgICAgICAgUU1QX1BIWV9JTklUX0NGRyhRU0VSREVTX1Y2X0NP TV9DUF9DVFJMX01PREUxLCAweDBhKSwKPiA+ID4gPiArICAgICAgIFFNUF9QSFlfSU5JVF9DRkco UVNFUkRFU19WNl9DT01fUExMX1JDVFJMX01PREUxLCAweDE4KSwKPiA+ID4gPiArICAgICAgIFFN UF9QSFlfSU5JVF9DRkcoUVNFUkRFU19WNl9DT01fUExMX0NDVFJMX01PREUxLCAweDE0KSwKPiA+ ID4gPiArICAgICAgIFFNUF9QSFlfSU5JVF9DRkcoUVNFUkRFU19WNl9DT01fTE9DS19DTVAxX01P REUxLCAweDk5KSwKPiA+ID4gPiArICAgICAgIFFNUF9QSFlfSU5JVF9DRkcoUVNFUkRFU19WNl9D T01fTE9DS19DTVAyX01PREUxLCAweDA3KSwKPiA+ID4gCj4gPiA+IEkgc2VlIGFsbCB0aGUgTU9E RTEgcmVnaXN0ZXJzIGJlaW5nIG9ubHkgcHJlc2VudCBpbiBHNCBhbmQgRzUgdGFibGVzLgo+ID4g PiBTaG91bGQgdGhleSBiZSBwcm9ncmFtbWVkIGZvciB0aGUgbW9kZXMgbG93ZXIgdGhhbiBHND8K PiA+ID4gCj4gPiAKPiA+IFdlIHVzZSBHNCB0YWJsZSBmb3IgYWxsIHRoZSBtb2RlcyA8PSBHNC4K PiA+IAo+ID4gPiA+ICt9Owo+ID4gPiA+ICsKPiA+ID4gPiArc3RhdGljIGNvbnN0IHN0cnVjdCBx bXBfcGh5X2luaXRfdGJsIHNtODU1MF91ZnNwaHlfZzVfc2VyZGVzW10gPSB7Cj4gPiA+ID4gKyAg ICAgICBRTVBfUEhZX0lOSVRfQ0ZHKFFTRVJERVNfVjZfQ09NX1BMTF9JVkNPLCAweDFmKSwKPiA+ ID4gPiArCj4gPiA+ID4gKyAgICAgICBRTVBfUEhZX0lOSVRfQ0ZHKFFTRVJERVNfVjZfQ09NX0NN Tl9JRVRSSU0sIDB4MWIpLAo+ID4gPiA+ICsgICAgICAgUU1QX1BIWV9JTklUX0NGRyhRU0VSREVT X1Y2X0NPTV9DTU5fSVBUUklNLCAweDFjKSwKPiA+ID4gPiArICAgICAgIFFNUF9QSFlfSU5JVF9D RkcoUVNFUkRFU19WNl9DT01fQ1BfQ1RSTF9NT0RFMCwgMHgwNiksCj4gPiA+ID4gICB9Owo+ID4g PiA+IAo+ID4gPiA+ICAgc3RhdGljIGNvbnN0IHN0cnVjdCBxbXBfcGh5X2luaXRfdGJsIHNtODU1 MF91ZnNwaHlfdHhbXSA9IHsKPiA+ID4gPiAtICAgICAgIFFNUF9QSFlfSU5JVF9DRkcoUVNFUkRF U19WNl9UWF9MQU5FX01PREVfMSwgMHgwNSksCj4gPiA+ID4gKyAgICAgICBRTVBfUEhZX0lOSVRf Q0ZHKFFTRVJERVNfVUZTX1Y2X1RYX0xBTkVfTU9ERV8xLCAweDA1KSwKPiA+ID4gPiAgICAgICAg ICBRTVBfUEhZX0lOSVRfQ0ZHKFFTRVJERVNfVUZTX1Y2X1RYX1JFU19DT0RFX0xBTkVfT0ZGU0VU X1RYLCAweDA3KSwKPiA+ID4gPiAgIH07Cj4gPiA+ID4gCj4gPiA+ID4gK3N0YXRpYyBjb25zdCBz dHJ1Y3QgcW1wX3BoeV9pbml0X3RibCBzbTg1NTBfdWZzcGh5X2c0X3R4W10gPSB7Cj4gPiA+ID4g KyAgICAgICBRTVBfUEhZX0lOSVRfQ0ZHKFFTRVJERVNfVUZTX1Y2X1RYX0ZSX0RDQ19DVFJMLCAw eDRjKSwKPiA+ID4gPiArfTsKPiA+ID4gPiArCj4gPiA+ID4gICBzdGF0aWMgY29uc3Qgc3RydWN0 IHFtcF9waHlfaW5pdF90Ymwgc204NTUwX3Vmc3BoeV9yeFtdID0gewo+ID4gPiA+IC0gICAgICAg UU1QX1BIWV9JTklUX0NGRyhRU0VSREVTX1VGU19WNl9SWF9VQ0RSX0ZBU1RMT0NLX0ZPX0dBSU5f UkFURTIsIDB4MGMpLAo+ID4gPiA+IC0gICAgICAgUU1QX1BIWV9JTklUX0NGRyhRU0VSREVTX1VG U19WNl9SWF9VQ0RSX0ZBU1RMT0NLX0ZPX0dBSU5fUkFURTQsIDB4MGYpLAo+ID4gPiA+IC0gICAg ICAgUU1QX1BIWV9JTklUX0NGRyhRU0VSREVTX1VGU19WNl9SWF9WR0FfQ0FMX01BTl9WQUwsIDB4 MGUpLAo+ID4gPiA+ICsgICAgICAgUU1QX1BIWV9JTklUX0NGRyhRU0VSREVTX1VGU19WNl9SWF9V Q0RSX0ZPX0dBSU5fUkFURTIsIDB4MGMpLAo+ID4gPiA+IAo+ID4gPiA+ICAgICAgICAgIFFNUF9Q SFlfSU5JVF9DRkcoUVNFUkRFU19VRlNfVjZfUlhfTU9ERV9SQVRFXzBfMV9CMCwgMHhjMiksCj4g PiA+ID4gICAgICAgICAgUU1QX1BIWV9JTklUX0NGRyhRU0VSREVTX1VGU19WNl9SWF9NT0RFX1JB VEVfMF8xX0IxLCAweGMyKSwKPiA+ID4gPiBAQCAtNjkwLDE0ICs3MDksNDYgQEAgc3RhdGljIGNv bnN0IHN0cnVjdCBxbXBfcGh5X2luaXRfdGJsIHNtODU1MF91ZnNwaHlfcnhbXSA9IHsKPiA+ID4g PiAgICAgICAgICBRTVBfUEhZX0lOSVRfQ0ZHKFFTRVJERVNfVUZTX1Y2X1JYX01PREVfUkFURTNf QjgsIDB4MDIpLAo+ID4gPiA+ICAgfTsKPiA+ID4gPiAKPiA+ID4gPiArc3RhdGljIGNvbnN0IHN0 cnVjdCBxbXBfcGh5X2luaXRfdGJsIHNtODU1MF91ZnNwaHlfZzRfcnhbXSA9IHsKPiA+ID4gPiAr ICAgICAgIFFNUF9QSFlfSU5JVF9DRkcoUVNFUkRFU19VRlNfVjZfUlhfVkdBX0NBTF9NQU5fVkFM LCAweDBlKSwKPiA+ID4gPiArfTsKPiA+ID4gPiArCj4gPiA+ID4gK3N0YXRpYyBjb25zdCBzdHJ1 Y3QgcW1wX3BoeV9pbml0X3RibCBzbTg1NTBfdWZzcGh5X2c1X3J4W10gPSB7Cj4gPiA+ID4gKyAg ICAgICBRTVBfUEhZX0lOSVRfQ0ZHKFFTRVJERVNfVUZTX1Y2X1JYX1VDRFJfRk9fR0FJTl9SQVRF NCwgMHgwYyksCj4gPiA+ID4gKyAgICAgICBRTVBfUEhZX0lOSVRfQ0ZHKFFTRVJERVNfVUZTX1Y2 X1JYX1VDRFJfU09fR0FJTl9SQVRFNCwgMHgwNCksCj4gPiA+ID4gKyAgICAgICBRTVBfUEhZX0lO SVRfQ0ZHKFFTRVJERVNfVUZTX1Y2X1JYX0VRX09GRlNFVF9BREFQVE9SX0NOVFJMMSwgMHgxNCks Cj4gPiA+ID4gKyAgICAgICBRTVBfUEhZX0lOSVRfQ0ZHKFFTRVJERVNfVUZTX1Y2X1JYX1VDRFJf UElfQ09OVFJPTFMsIDB4MDcpLAo+ID4gPiA+ICsgICAgICAgUU1QX1BIWV9JTklUX0NGRyhRU0VS REVTX1VGU19WNl9SWF9PRkZTRVRfQURBUFRPUl9DTlRSTDMsIDB4MGUpLAo+ID4gPiA+ICsgICAg ICAgUU1QX1BIWV9JTklUX0NGRyhRU0VSREVTX1VGU19WNl9SWF9VQ0RSX0ZBU1RMT0NLX0NPVU5U X0hJR0hfUkFURTQsIDB4MDIpLAo+ID4gPiA+ICsgICAgICAgUU1QX1BIWV9JTklUX0NGRyhRU0VS REVTX1VGU19WNl9SWF9VQ0RSX0ZBU1RMT0NLX0ZPX0dBSU5fUkFURTQsIDB4MWMpLAo+ID4gPiA+ ICsgICAgICAgUU1QX1BIWV9JTklUX0NGRyhRU0VSREVTX1VGU19WNl9SWF9VQ0RSX0ZBU1RMT0NL X1NPX0dBSU5fUkFURTQsIDB4MDYpLAo+ID4gPiA+ICsgICAgICAgUU1QX1BIWV9JTklUX0NGRyhR U0VSREVTX1VGU19WNl9SWF9WR0FfQ0FMX01BTl9WQUwsIDB4MDgpLAo+ID4gPiA+ICsKPiA+ID4g PiArICAgICAgIFFNUF9QSFlfSU5JVF9DRkcoUVNFUkRFU19VRlNfVjZfUlhfTU9ERV9SQVRFNF9C MywgMHhiOSksCj4gPiA+ID4gKyAgICAgICBRTVBfUEhZX0lOSVRfQ0ZHKFFTRVJERVNfVUZTX1Y2 X1JYX01PREVfUkFURTRfQjQsIDB4NGYpLAo+ID4gPiA+ICsgICAgICAgUU1QX1BIWV9JTklUX0NG RyhRU0VSREVTX1VGU19WNl9SWF9NT0RFX1JBVEU0X0I2LCAweGZmKSwKPiA+ID4gPiArICAgICAg IFFNUF9QSFlfSU5JVF9DRkcoUVNFUkRFU19VRlNfVjZfUlhfRExMMF9GVFVORV9DVFJMLCAweDMw KSwKPiA+ID4gPiArfTsKPiA+ID4gPiArCj4gPiA+ID4gICBzdGF0aWMgY29uc3Qgc3RydWN0IHFt cF9waHlfaW5pdF90Ymwgc204NTUwX3Vmc3BoeV9wY3NbXSA9IHsKPiA+ID4gPiAgICAgICAgICBR TVBfUEhZX0lOSVRfQ0ZHKFFQSFlfVjZfUENTX1VGU19SWF9TSUdERVRfQ1RSTDIsIDB4NjkpLAo+ ID4gPiA+ICAgICAgICAgIFFNUF9QSFlfSU5JVF9DRkcoUVBIWV9WNl9QQ1NfVUZTX1RYX0xBUkdF X0FNUF9EUlZfTFZMLCAweDBmKSwKPiA+ID4gPiAgICAgICAgICBRTVBfUEhZX0lOSVRfQ0ZHKFFQ SFlfVjZfUENTX1VGU19UWF9NSURfVEVSTV9DVFJMMSwgMHg0MyksCj4gPiA+ID4gLSAgICAgICBR TVBfUEhZX0lOSVRfQ0ZHKFFQSFlfVjZfUENTX1VGU19QTExfQ05UTCwgMHgyYiksCj4gPiA+ID4g ICAgICAgICAgUU1QX1BIWV9JTklUX0NGRyhRUEhZX1Y2X1BDU19VRlNfTVVMVElfTEFORV9DVFJM MSwgMHgwMiksCj4gPiA+ID4gICB9Owo+ID4gPiA+IAo+ID4gPiA+ICtzdGF0aWMgY29uc3Qgc3Ry dWN0IHFtcF9waHlfaW5pdF90Ymwgc204NTUwX3Vmc3BoeV9nNF9wY3NbXSA9IHsKPiA+ID4gPiAr ICAgICAgIFFNUF9QSFlfSU5JVF9DRkcoUVBIWV9WNl9QQ1NfVUZTX1BMTF9DTlRMLCAweDJiKSwK PiA+ID4gPiArICAgICAgIFFNUF9QSFlfSU5JVF9DRkcoUVBIWV9WNl9QQ1NfVUZTX1RYX0hTR0VB Ul9DQVBBQklMSVRZLCAweDA0KSwKPiA+ID4gPiArICAgICAgIFFNUF9QSFlfSU5JVF9DRkcoUVBI WV9WNl9QQ1NfVUZTX1JYX0hTR0VBUl9DQVBBQklMSVRZLCAweDA0KSwKPiA+ID4gPiArfTsKPiA+ ID4gPiArCj4gPiA+ID4gK3N0YXRpYyBjb25zdCBzdHJ1Y3QgcW1wX3BoeV9pbml0X3RibCBzbTg1 NTBfdWZzcGh5X2c1X3Bjc1tdID0gewo+ID4gPiA+ICsgICAgICAgUU1QX1BIWV9JTklUX0NGRyhR UEhZX1Y2X1BDU19VRlNfUExMX0NOVEwsIDB4MzMpLAo+ID4gPiA+ICsgICAgICAgUU1QX1BIWV9J TklUX0NGRyhRUEhZX1Y2X1BDU19VRlNfUlhfSFNfRzVfU1lOQ19MRU5HVEhfQ0FQQUJJTElUWSwg MHg0ZiksCj4gPiA+ID4gKyAgICAgICBRTVBfUEhZX0lOSVRfQ0ZHKFFQSFlfVjZfUENTX1VGU19S WF9IU0c1X1NZTkNfV0FJVF9USU1FLCAweDllKSwKPiA+ID4gPiArfTsKPiA+ID4gPiArCj4gPiA+ ID4gICBzdHJ1Y3QgcW1wX3Vmc19vZmZzZXRzIHsKPiA+ID4gPiAgICAgICAgICB1MTYgc2VyZGVz Owo+ID4gPiA+ICAgICAgICAgIHUxNiBwY3M7Cj4gPiA+ID4gQEAgLTczMSw2ICs3ODIsOCBAQCBz dHJ1Y3QgcW1wX3BoeV9jZmcgewo+ID4gPiA+ICAgICAgICAgIGNvbnN0IHN0cnVjdCBxbXBfcGh5 X2NmZ190YmxzIHRibHNfaHNfYjsKPiA+ID4gPiAgICAgICAgICAvKiBBZGRpdGlvbmFsIHNlcXVl bmNlIGZvciBIUyBHNCAqLwo+ID4gPiA+ICAgICAgICAgIGNvbnN0IHN0cnVjdCBxbXBfcGh5X2Nm Z190YmxzIHRibHNfaHNfZzQ7Cj4gPiA+ID4gKyAgICAgICAvKiBBZGRpdGlvbmFsIHNlcXVlbmNl IGZvciBIUyBHNCAqLwo+ID4gCj4gPiBIUyBHNQo+IAo+IFN1cmUKPiAKPiA+IAo+ID4gPiA+ICsg ICAgICAgY29uc3Qgc3RydWN0IHFtcF9waHlfY2ZnX3RibHMgdGJsc19oc19nNTsKPiA+ID4gPiAK PiA+ID4gPiAgICAgICAgICAvKiBjbG9jayBpZHMgdG8gYmUgcmVxdWVzdGVkICovCj4gPiA+ID4g ICAgICAgICAgY29uc3QgY2hhciAqIGNvbnN0ICpjbGtfbGlzdDsKPiA+ID4gPiBAQCAtMTE1Nyw2 ICsxMjEwLDI4IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgcW1wX3BoeV9jZmcgc204NTUwX3Vmc3Bo eV9jZmcgPSB7Cj4gPiA+ID4gICAgICAgICAgICAgICAgICAucGNzICAgICAgICAgICAgPSBzbTg1 NTBfdWZzcGh5X3BjcywKPiA+ID4gPiAgICAgICAgICAgICAgICAgIC5wY3NfbnVtICAgICAgICA9 IEFSUkFZX1NJWkUoc204NTUwX3Vmc3BoeV9wY3MpLAo+ID4gPiA+ICAgICAgICAgIH0sCj4gPiA+ ID4gKyAgICAgICAudGJsc19oc19iID0gewo+ID4gPiA+ICsgICAgICAgICAgICAgICAuc2VyZGVz ICAgICAgICAgPSBzbTg1NTBfdWZzcGh5X2hzX2Jfc2VyZGVzLAo+ID4gPiA+ICsgICAgICAgICAg ICAgICAuc2VyZGVzX251bSAgICAgPSBBUlJBWV9TSVpFKHNtODU1MF91ZnNwaHlfaHNfYl9zZXJk ZXMpLAo+ID4gPiA+ICsgICAgICAgfSwKPiA+ID4gPiArICAgICAgIC50YmxzX2hzX2c0ID0gewo+ ID4gPiA+ICsgICAgICAgICAgICAgICAuc2VyZGVzICAgICAgICAgPSBzbTg1NTBfdWZzcGh5X2c0 X3NlcmRlcywKPiA+ID4gPiArICAgICAgICAgICAgICAgLnNlcmRlc19udW0gICAgID0gQVJSQVlf U0laRShzbTg1NTBfdWZzcGh5X2c0X3NlcmRlcyksCj4gPiA+ID4gKyAgICAgICAgICAgICAgIC50 eCAgICAgICAgICAgICA9IHNtODU1MF91ZnNwaHlfZzRfdHgsCj4gPiA+ID4gKyAgICAgICAgICAg ICAgIC50eF9udW0gICAgICAgICA9IEFSUkFZX1NJWkUoc204NTUwX3Vmc3BoeV9nNF90eCksCj4g PiA+ID4gKyAgICAgICAgICAgICAgIC5yeCAgICAgICAgICAgICA9IHNtODU1MF91ZnNwaHlfZzRf cngsCj4gPiA+ID4gKyAgICAgICAgICAgICAgIC5yeF9udW0gICAgICAgICA9IEFSUkFZX1NJWkUo c204NTUwX3Vmc3BoeV9nNF9yeCksCj4gPiA+ID4gKyAgICAgICAgICAgICAgIC5wY3MgICAgICAg ICAgICA9IHNtODU1MF91ZnNwaHlfZzRfcGNzLAo+ID4gPiA+ICsgICAgICAgICAgICAgICAucGNz X251bSAgICAgICAgPSBBUlJBWV9TSVpFKHNtODU1MF91ZnNwaHlfZzRfcGNzKSwKPiA+ID4gPiAr ICAgICAgIH0sCj4gPiA+ID4gKyAgICAgICAudGJsc19oc19nNSA9IHsKPiA+ID4gPiArICAgICAg ICAgICAgICAgLnNlcmRlcyAgICAgICAgID0gc204NTUwX3Vmc3BoeV9nNV9zZXJkZXMsCj4gPiA+ ID4gKyAgICAgICAgICAgICAgIC5zZXJkZXNfbnVtICAgICA9IEFSUkFZX1NJWkUoc204NTUwX3Vm c3BoeV9nNV9zZXJkZXMpLAo+ID4gPiA+ICsgICAgICAgICAgICAgICAucnggICAgICAgICAgICAg PSBzbTg1NTBfdWZzcGh5X2c1X3J4LAo+ID4gPiA+ICsgICAgICAgICAgICAgICAucnhfbnVtICAg ICAgICAgPSBBUlJBWV9TSVpFKHNtODU1MF91ZnNwaHlfZzVfcngpLAo+ID4gPiA+ICsgICAgICAg ICAgICAgICAucGNzICAgICAgICAgICAgPSBzbTg1NTBfdWZzcGh5X2c1X3BjcywKPiA+ID4gPiAr ICAgICAgICAgICAgICAgLnBjc19udW0gICAgICAgID0gQVJSQVlfU0laRShzbTg1NTBfdWZzcGh5 X2c1X3BjcyksCj4gPiA+ID4gKyAgICAgICB9LAo+ID4gPiA+ICAgICAgICAgIC5jbGtfbGlzdCAg ICAgICAgICAgICAgID0gc2RtODQ1X3Vmc19waHlfY2xrX2wsCj4gPiA+ID4gICAgICAgICAgLm51 bV9jbGtzICAgICAgICAgICAgICAgPSBBUlJBWV9TSVpFKHNkbTg0NV91ZnNfcGh5X2Nsa19sKSwK PiA+ID4gPiAgICAgICAgICAudnJlZ19saXN0ICAgICAgICAgICAgICA9IHFtcF9waHlfdnJlZ19s LAo+ID4gPiA+IEBAIC0xMjIyLDE0ICsxMjk3LDI1IEBAIHN0YXRpYyB2b2lkIHFtcF91ZnNfcGNz X2luaXQoc3RydWN0IHFtcF91ZnMgKnFtcCwgY29uc3Qgc3RydWN0IHFtcF9waHlfY2ZnX3RibHMK PiA+ID4gPiAgIHN0YXRpYyB2b2lkIHFtcF91ZnNfaW5pdF9yZWdpc3RlcnMoc3RydWN0IHFtcF91 ZnMgKnFtcCwgY29uc3Qgc3RydWN0IHFtcF9waHlfY2ZnICpjZmcpCj4gPiA+ID4gICB7Cj4gPiA+ ID4gICAgICAgICAgcW1wX3Vmc19zZXJkZXNfaW5pdChxbXAsICZjZmctPnRibHMpOwo+ID4gPiA+ ICsgICAgICAgaWYgKHFtcC0+c3VibW9kZSA9PSBVRlNfSFNfRzQpCj4gPiA+ID4gKyAgICAgICAg ICAgICAgIHFtcF91ZnNfc2VyZGVzX2luaXQocW1wLCAmY2ZnLT50YmxzX2hzX2c0KTsKPiA+ID4g PiArICAgICAgIGVsc2UgaWYgKHFtcC0+c3VibW9kZSA9PSBVRlNfSFNfRzUpCj4gPiA+ID4gKyAg ICAgICAgICAgICAgIHFtcF91ZnNfc2VyZGVzX2luaXQocW1wLCAmY2ZnLT50YmxzX2hzX2c1KTsK PiA+ID4gPiArCj4gPiAKPiA+IFNob3VsZCB3ZSBwcm9ncmFtIHN1Ym1vZGUgc2VxdWVuY2UgYWZ0 ZXIgSFNfQj8KPiA+IAo+ID4gLSBNYW5pCj4gPiAKPiBBcyB0aGUgVUZTIFBIWSBIVyBwcm9ncmFt bWluZyBkb2MgbWVudGlvbnMsIG9yZGVyIG9mIHRoZXNlIHdyaXRlcyBpcyBub3QKPiBpbXBvcnRh bnQsIHNvIGxvbmcgYXMgdGhleSBhcmUgcHJvZ3JhbW1lZCBjb3JyZWN0bHkgYmVmb3JlIHJlbGVh c2UgUy9XCj4gcmVzZXQsIHRoZW4gaXQgaXMgZmluZS4KPiAKPiBUaGFua3MsCj4gQ2FuIEd1by4K PiAKPiAKCi0tIArgrq7grqPgrr/grrXgrqPgr43grqPgrqngr40g4K6a4K6k4K6+4K6a4K6/4K61 4K6u4K+NCgotLSAKbGludXgtcGh5IG1haWxpbmcgbGlzdApsaW51eC1waHlAbGlzdHMuaW5mcmFk ZWFkLm9yZwpodHRwczovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51 eC1waHkK