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 6DCE9C433EF for ; Tue, 1 Feb 2022 13:53:07 +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:MIME-Version:References:In-Reply-To: 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=eTU+NsFTFocKN1hOd3XSp+BTarkodPClg7cxZrR6Fss=; b=MAhK3x1gwlbNeR OuaBQ8orYkqyPZPrRhBdjquG8JX/LvvKNexxKTusf4FG3vWC0EiaOyMWo9B5lj6KCE9dC8ZxZTnaj gwS8zvVjauDQ2cz2onEZSMs5ICD6kZ90Y1CRSl85aMIfSSMm8gwDcjvU2UuSvKfnheL8QQSwfKPPT X9ydw0p/gQfs7jS8zoWsaLCMEjZrNRqLRvWp3WzDhndYzwF/0ZAZKbKOPa36BkU7fMsUL8v3FvU+K NxDNXywnp0Z1jJ8ox6ZgjHoF7R1dwph7fH5Igd+DZBn3uKAYh9F/d3wxH/Ijw8Ge4YCDplwhDn+4W ZZ5ABmxO3zAov6XhSWIQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1nEta0-00CMsO-Jq; Tue, 01 Feb 2022 13:52:20 +0000 Received: from relay11.mail.gandi.net ([2001:4b98:dc4:8::231]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1nEtZw-00CMrW-U8 for linux-mtd@lists.infradead.org; Tue, 01 Feb 2022 13:52:19 +0000 Received: (Authenticated sender: miquel.raynal@bootlin.com) by mail.gandi.net (Postfix) with ESMTPSA id 64B9B100002; Tue, 1 Feb 2022 13:52:06 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bootlin.com; s=gm1; t=1643723529; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=9wWj1va3LmxR7uptoK225JjVfSAKX5gP2e5O2jvKmFs=; b=FolHXnBTaVk5XuRbTsW0DHX9gYw9CMcJbrjgFF4wiTfKl2KYiL7HuQbhq7Mi+UDXj6jrPl m4SZGAaMeRPJyg51mND/9QvniCge/K1OBcfJPLVBHrbtWqwxXYrBVltNvhbhPyUQumb6Sj fUkh89Orf94sEUL+u8UBtI5MFRzHhtcQc7fS5/GNJqbeGa5+ZrvKzbJgnhx22Hk8agp20O FeTPGPilihUAJRzFPeZbCyu9Kz9BLq7AshbdfvQdgakW6JGpJ00dnlMzdSi2dCsTxn/TrD g4iipY2XrNCbpMEc4VBMcBcT1IGszN4Vn6x0Q9XaC8+FGNrKp/XZC6KPr/vJUg== Date: Tue, 1 Feb 2022 14:52:04 +0100 From: Miquel Raynal To: Konrad Dybcio Cc: Sricharan Ramabadhran , Manivannan Sadhasivam , pragalla@codeaurora.org, ~postmarketos/upstreaming@lists.sr.ht, martin.botka@somainline.org, angelogioacchino.delregno@somainline.org, marijn.suijten@somainline.org, jamipkettunen@somainline.org, Richard Weinberger , Vignesh Raghavendra , linux-mtd@lists.infradead.org, linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org, mdalam@codeaurora.org Subject: Re: [PATCH] mtd: nand: raw: qcom_nandc: Don't clear_bam_transaction on READID Message-ID: <20220201145204.54646475@xps13> In-Reply-To: <12cad24a-fa2f-9a82-cf43-241a0a6fe4f6@somainline.org> References: <20220113184427.2259509-1-konrad.dybcio@somainline.org> <20220114082718.32a2fc83@xps13> <20220126111613.3ab0021e@xps13> <20220126103316.GA212068@thinkpad> <20220126114200.4cc3c21b@xps13> <0a8d6550-aa19-0af1-abae-66bf34c91ea8@somainline.org> <12cad24a-fa2f-9a82-cf43-241a0a6fe4f6@somainline.org> Organization: Bootlin X-Mailer: Claws Mail 3.17.7 (GTK+ 2.24.32; x86_64-pc-linux-gnu) MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220201_055217_327589_208BE3FE X-CRM114-Status: GOOD ( 49.06 ) X-BeenThere: linux-mtd@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Linux MTD discussion 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-mtd" Errors-To: linux-mtd-bounces+linux-mtd=archiver.kernel.org@lists.infradead.org SGkgS29ucmFkLAoKa29ucmFkLmR5YmNpb0Bzb21haW5saW5lLm9yZyB3cm90ZSBvbiBNb24sIDMx IEphbiAyMDIyIDIwOjU0OjEyICswMTAwOgoKPiBPbiAzMS8wMS8yMDIyIDE1OjEzLCBTcmljaGFy YW4gUmFtYWJhZGhyYW4gd3JvdGU6Cj4gPiBIaSBLb25yYWQsCj4gPgo+ID4gT24gMS8zMS8yMDIy IDM6MzkgUE0sIEtvbnJhZCBEeWJjaW8gd3JvdGU6ICAKPiA+Pgo+ID4+IE9uIDI4LzAxLzIwMjIg MTg6NTAsIFNyaWNoYXJhbiBSYW1hYmFkaHJhbiB3cm90ZTogIAo+ID4+PiBIaSBLb25yYWQsCj4g Pj4+Cj4gPj4+IE9uIDEvMjgvMjAyMiA5OjU1IEFNLCBTcmljaGFyYW4gUmFtYWJhZGhyYW4gd3Jv dGU6ICAKPiA+Pj4+IEhpIE1pcXVlbCwKPiA+Pj4+Cj4gPj4+PiBPbiAxLzI2LzIwMjIgNDoxMiBQ TSwgTWlxdWVsIFJheW5hbCB3cm90ZTogIAo+ID4+Pj4+IEhpIE1hbmksCj4gPj4+Pj4KPiA+Pj4+ PiBtYW5pQGtlcm5lbC5vcmcgd3JvdGUgb24gV2VkLCAyNiBKYW4gMjAyMiAxNjowMzoxNiArMDUz MDoKPiA+Pj4+PiAgCj4gPj4+Pj4+IE9uIFdlZCwgSmFuIDI2LCAyMDIyIGF0IDExOjE2OjEzQU0g KzAxMDAsIE1pcXVlbCBSYXluYWwgd3JvdGU6ICAKPiA+Pj4+Pj4+IEhlbGxvLAo+ID4+Pj4+Pj4K PiA+Pj4+Pj4+IG1pcXVlbC5yYXluYWxAYm9vdGxpbi5jb20gd3JvdGUgb24gRnJpLCAxNCBKYW4g MjAyMiAwODoyNzoxOCArMDEwMDogIAo+ID4+Pj4+Pj4+IEhpIEtvbnJhZCwKPiA+Pj4+Pj4+Pgo+ ID4+Pj4+Pj4+IGtvbnJhZC5keWJjaW9Ac29tYWlubGluZS5vcmcgd3JvdGUgb24gVGh1LCAxMyBK YW4gMjAyMiAxOTo0NDoyNiA+Pj4+Pj4+PiArMDEwMDogIAo+ID4+Pj4+Pj4+PiBXaGlsZSBJIGhh dmUgYWJzb2x1dGVseSAwIGlkZWEgd2h5IGFuZCBob3csIHJ1bm5pbmcgPj4+Pj4+Pj4+IGNsZWFy X2JhbV90cmFuc2FjdGlvbgo+ID4+Pj4+Pj4+PiB3aGVuIFJFQURJRCBpcyBpc3N1ZWQgbWFrZXMg dGhlIERNQSB0b3RhbGx5IGNsb2cgdXAgYW5kIHJlZnVzZSA+Pj4+Pj4+Pj4gdG8gZnVuY3Rpb24K PiA+Pj4+Pj4+Pj4gYXQgYWxsIG9uIG1kbTk2MDcuIEluIGZhY3QsIGl0IGlzIHNvIGJhZCB0aGF0 IGFsbCB0aGUgZGF0YSA+Pj4+Pj4+Pj4gZ2V0cyBnYXJibGVkCj4gPj4+Pj4+Pj4+IGFuZCBhZnRl ciBhIHNob3J0IHdoaWxlIGluIHRoZSBuYW5kIHByb2JlIGZsb3csIHRoZSBDUFUgPj4+Pj4+Pj4+ IGRlY2lkZXMgdGhhdAo+ID4+Pj4+Pj4+PiBzZXB1a3UgaXMgdGhlIG9ubHkgb3B0aW9uLgo+ID4+ Pj4+Pj4+Pgo+ID4+Pj4+Pj4+PiBSZW1vdmluZyBfUkVBRElEIGZyb20gdGhlIGlmIGNvbmRpdGlv biBtYWtlcyBpdCB3b3JrIGxpa2UgYSA+Pj4+Pj4+Pj4gY2hhcm0sIEkgY2FuCj4gPj4+Pj4+Pj4+ IHJlYWQgZGF0YSBhbmQgbW91bnQgcGFydGl0aW9ucyB3aXRob3V0IGEgcHJvYmxlbS4KPiA+Pj4+ Pj4+Pj4KPiA+Pj4+Pj4+Pj4gU2lnbmVkLW9mZi1ieTogS29ucmFkIER5YmNpbyA8a29ucmFkLmR5 YmNpb0Bzb21haW5saW5lLm9yZz4KPiA+Pj4+Pj4+Pj4gLS0tCj4gPj4+Pj4+Pj4+IFRoaXMgaXMg dG90YWxseSBqdXN0IGFuIG9ic2VydmF0aW9uIHdoaWNoIHRvb2sgbWUgYW4gaW5odW1hbmUgPj4+ Pj4+Pj4+IGFtb3VudCBvZgo+ID4+Pj4+Pj4+PiBkZWJ1ZyBwcmludHMgdG8gZmluZC4uIHBlcmhh cHMgdGhlcmUncyBhIGJldHRlciByZWFzb24gYmVoaW5kID4+Pj4+Pj4+PiB0aGlzLCBidXQKPiA+ Pj4+Pj4+Pj4gSSBjYW4ndCBzZWVtIHRvIGZpbmQgYW55IGFuc3dlcnMuLiBUaGVyZWZvcmUsIHRo aXMgaXMgYSBCSUcgUkZDISAgCj4gPj4+Pj4+Pj4gSSdtIGFkZGluZyB0d28gcGVvcGxlIGZyb20g Y29kZWF1cm9yYSB3aG8gd29ya2VkIGEgbG90IG9uIHRoaXMgPj4+Pj4+Pj4gZHJpdmVyLgo+ID4+ Pj4+Pj4+IEhvcGVmdWxseSB0aGV5IHdpbGwgaGF2ZSBhbiBpZGVhIDopICAKPiA+Pj4+Pj4+IFNh ZHJlLCBJJ3ZlIHNwZW50IGEgc2lnbmlmaWNhbnQgYW1vdW50IG9mIHRpbWUgcmV2aWV3aW5nIHlv dXIgPj4+Pj4+PiBwYXRjaGVzLAo+ID4+Pj4+Pj4gbm93IGl0J3MgeW91ciB0dXJuIHRvIG5vdCB0 YWtlIGEgbW9udGggdG8gYW5zd2VyIHRvIHlvdXIgcGVlcnMKPiA+Pj4+Pj4+IHByb3Bvc2Fscy4K PiA+Pj4+Pj4+Cj4gPj4+Pj4+PiBQbGVhc2UgaGVscCByZXZpZXdpbmcgdGhpcyBwYXRjaC4gIAo+ ID4+Pj4+PiBTb3JyeS4gSSB3YXMgaG9waW5nIHRoYXQgUWNvbSBmb2xrcyB3b3VsZCBjaGltZSBp biBhcyBJIGRvbid0ID4+Pj4+PiBoYXZlIGFueSBpZGVhCj4gPj4+Pj4+IGFib3V0IHRoZSBtZG05 NjA3IHBsYXRmb3JtLiBJdCBjb3VsZCBiZSB0aGF0IHRoZSBtYWlsIHNlcnZlciA+Pj4+Pj4gbWln cmF0aW9uIGZyb20KPiA+Pj4+Pj4gY29kZWF1cm9yYSB0byBxdWljaW5jIHB1dCBhIGJhcnJpZXIg aGVyZS4KPiA+Pj4+Pj4KPiA+Pj4+Pj4gTGV0IG1lIHBpbmcgdGhlbSBpbnRlcm5hbGx5LiAgCj4g Pj4+Pj4gT2gsIG9rLCBJIGRpZG4ndCBrbm93LiBUaGFua3MhICAKPiA+Pj4+Cj4gPj4+PiDCoMKg IFNvcnJ5IE1pcXVlbCwgc29tZWhvdyB3ZSBkaWQgbm90IGdldCB0aGlzIGVtYWlsIGluIG91ciBp bmJveC4KPiA+Pj4+IMKgwqAgVGhhbmtzIHRvIE1hbmkgZm9yIHBpbmdpbmcgdXMsIHdlIHdpbGwg dGVzdCB0aGlzIHVwIHRvZGF5IGFuZCA+Pj4+IGdldCBiYWNrLgo+ID4+Pj4gIAo+ID4+PiDCoCDC oCDCoCBXaGlsZSB3ZSBjb3VsZCBub3QgcmVwcm9kdWNlIHRoaXMgaXNzdWUgb24gb3VyIGlwcSBi b2FyZHMgKGRvID4+PiBub3QgaGF2ZSBhIG1kbTk2MDcgcmlnaHQgbm93KSBhbmQKPiA+Pj4gwqDC oMKgwqDCoMKgIGlzc3VlIGRvZXMgbm90IGxvb2sgYW55IG9idmlvdXMuCj4gPj4+IMKgIMKgIMKg IGNhbiB5b3UgcGxlYXNlIGdpdmUgdGhlIGRlYnVnIGxvZ3MgdGhhdCB5b3UgZGlkIGZvciB0aGUg YWJvdmUgPj4+IHN0YWdlIGJ5IHN0YWdlID8gIAo+ID4+Cj4gPj4gSSB3b24ndCBoYXZlIGFjY2Vz cyB0byB0aGUgYm9hcmQgZm9yIGFib3V0IHR3byB3ZWVrcywgc29ycnkuCj4gPj4KPiA+PiBXaGVu IEkgZ2V0IHRvIGl0LCBJJ2xsIHN1cmVseSB0cnkgdG8gc2VuZCB5b3UgdGhlIGxvZ3MsIHRob3Vn aCB0aGVyZQo+ID4+Cj4gPj4gd2Fzbid0IG11Y2ggbW9yZSB0aGFuIGp1c3Qgc29tZXRoaW5nIGp1 bXBpbmcgdG8gd2hvLWtub3dzLXdoZXJlCj4gPj4KPiA+PiBhZnRlciBjbGVhcl9iYW1fdHJhbnNh Y3Rpb24gd2FzIGNhbGxlZCwgcmVzdWx0aW5nIGluIHZhbHVlcyA+PiBhc3NvY2lhdGVkIHdpdGgK PiA+Pgo+ID4+IHRoZSBOQU5EIGJlaW5nIGFsbCB6ZXJvZWQgb3V0IGluIHByX2Vyci9fZGVidWcv ZXRjLgo+ID4+Cj4gPj4gIAo+ID4gwqDCoMKgIE9rIHN1cmUuIFNvIHdhcyB0aGUgUkVBRElEIGNv bW1hbmQgaXRzZWxmIGZhaWxpbmcgKG9yKSB0aGUgPiBzdWJzZXF1ZW50IG9uZSA/Cj4gPiDCoMKg IFdlIGNhbiBjaGVjayB3aGljaCBwYXJhbWV0ZXIgcmVzZXQgYnkgdGhlIGNsZWFyX2JhbV90cmFu c2FjdGlvbiBpcyA+IGNhdXNpbmcgdGhlCj4gPiDCoMKgIGZhaWx1cmUuwqAgTWVhbndoaWxlLCBs b29waW5nIGluIFByYWRlZXAgd2hvIGhhcyBhY2Nlc3MgdG8gdGhlID4gYm9hcmQsIHNvIGluIGEg YmV0dGVyCj4gPiDCoMKgIHBvc2l0aW9uIHRvIGRlYnVnLiAgCj4gCj4gSSdtIHNvcnJ5IEkgaGF2 ZSBzbyBmZXcgZGV0YWlscyBvbiBoYW5kLCBhbmQgbm8ga2VybmVsIHRyZWUgKG5vIGFjY2VzcyB0 byB0aGF0IG1hY2hpbmUgZWl0aGVyLCBmb3Igbm93KS4KPiAKPiAKPiBJIHdpbGwgdHJ5IHRvIGRl c2NyaWJlIHRvIHRoZSBiZXN0IG9mIG15IGFiaWxpdGllcyB3aGF0IEkgcmVjYWxsLgo+IAo+IAo+ IE15IG1ldGhvZG9sb2d5IG9mIG1ha2luZyBzdXJlIHRoaW5ncyBkb24ndCBnbyBoYXl3aXJlIHdh cyB0byBwcmludCB0aGUgb29iIHNpemUKPiAKPiBvZiBvdXIgTkFORCBiYXNpY2FsbHkgZXZlcnkg dHdvIGxpbmVzIG9mIGNvZGUgKHllcywgaSB3YXMgdmVyeSBkZXNwZXJhdGUgYXQgb25lIHBvaW50 KSwKPiAKPiBhcyB0aGF0IHdhcyB6ZXJvZWQgb3V0IHdoZW4gKnRoZSBidWcqIGhhcHBlbmVkLAoK VGhpcyBkb2VzIGxvb2sgbGlrZSBhIHBvaW50ZXIgZXJyb3IgYXQgc29tZSBwb2ludCBhbmQgc29t ZSBrZXJuZWwgZGF0YQpoYXMgYmVlbiBjb3JydXB0ZWQgdmVyeSBiYWRseSBieSB0aGUgZHJpdmVy LgoKPiBsZWFkaW5nIHRvIGEga2VybmVsIGJ1Zy9wYW5pYy9zdGFsbAo+IAo+IChjYW4ndCByZWNh bGwgd2hhdCBleGFjdGx5IGl0IHdhcywgYnV0IGl0IHNhaWQgc29tZXRoaW5nIGFsb25nIHRoZSBs aW5lcyBvZiAibm8gc3VwcG9ydCBmb3IKPiAKPiBvb2Igc2l6ZSAwIiBhbmQgdGhlbiBpdCBkaWRu J3QgZmFpbCBncmFjZXVsbHksIGxlYWRpbmcgdG8gc29tZSBiYWQganVtcHMgYW5kIHVsdGltYXRl bHkKPiAKPiBhIGRlYWQgcGxhdGZvcm0uLikKPiAKPiAKPiBhZnRlciBob3VycyBvZiBkaWdnaW5n LCBJIGZvdW5kIG91dCB0aGF0IGV2ZXJ5dGhpbmcgZ29lcyBmaW5lIHVudGlsIGNsZWFyX2JhbV90 cmFuc2FjdGlvbiBpcyBjYWxsZWQsCgpEbyB5b3UgcmVtZW1iZXIgaWYgdGhpcyBmdW5jdGlvbiB3 YXMgY2FsbGVkIGZvciB0aGUgZmlyc3QgdGltZSB3aGVuCnRoaXMgaGFwcGVuZWQ/Cgo+IGFmdGVy IHRoYXQgZ2V0cyBleGVjdXRlZCBldmVyeSBuYW5kIG9wIHN0YXJ0cyByZWFkaW5nIGFsbCB6ZXJv ZXMgKGZvciBleGFtcGxlIGluIEpFREVDIElEIGNoZWNrKQo+IAo+IHNvIEkgYWRkZWQgdGhlIGNo YW5nZXMgZnJvbSB0aGlzIHBhdGNoLCBhbmQgdGhpbmdzIG1hZ2ljYWxseSBzdGFydGVkIHdvcmtp bmcuLi4gTXkgc3VzcGljaW9uIGlzCj4gCj4gdGhhdCB0aGUgdW5kZXJseWluZyBGSUZPIGlzbid0 IGZ1bGx5IGRyYWluZWQgKGlzIGl0IGEgRklGTyBvbiA5NjA3PyBiYWgsIGkgd29yayBvbiB0b28g bWFueSBzb2NzIGF0IG9uY2UpCgpJIGRvbid0IHNlZSBpdCBpbiB0aGUgbGlzdCBvZiBzdXBwb3J0 ZWQgZGV2aWNlcywgd2hhdCdzIHRoZSBleGFjdApjb21wYXRpYmxlIHVzZWQ/Cgo+IAo+IGFuZCB0 aGlzIGZ1bmN0aW9uIG9ubHkgbWFrZXMgTGludXggdGhpbmsgaXQgaXMsIHdpdGhvdXQgYWN0dWFs bHkgZHJhaW5pbmcgaXQsIGFuZCB0aGUgbGVmdG92ZXIKPiAKPiBjb21tYW5kcyBnZXQgZXhlY3V0 ZWQgd2l0aCBzb21lIHBhcnRzIG9mIHRoZW0gZ2V0dGluZyBvdmVyd3JpdHRlbiwgcmVzdWx0aW5n IGluIHRoZQo+IAo+IGZhbW91cyBnYXJiYWdlIGluIC0gZ2FyYmFnZSBvdXQgc2l0dWF0aW9uLCBi dXQgdGhhdCdzIG9ubHkgYSBndWVzc3RpbWF0ZS4uCgpJIHdvdWxkIGJldCBmb3IgYSBub24gYWxs b2NhdGVkIGJhbS1pc2ggcG9pbnRlciB0aGF0IGlzIHJlc2V0IHRvIHplcm8KaW4gdGhlIGNsZWFy X2JhbV90cmFuc2FjdGlvbigpIGhlbHBlci4KCkNhbiB5b3UgZ2V0IHlvdXIgaGFuZHMgb24gdGhl IGJvYXJkIGFnYWluPwpJdCB3b3VsZCBiZSBuaWNlIHRvIGNoZWNrIGlmIHRoZSBhbGxvY2F0aW9u IGFsd2F5cyBvY2N1cnMgYmVmb3JlIHVzZSwKYW5kIGlmIHllcyBvbiBob3cgbXVjaCBieXRlcy4K CklmIHRoZSBwb2ludGVyIGlzIG5vdCBkYW5nbGluZywgdGhlbiBwZXJoYXBzIHNvbWV0aGluZyBl bHNlIHNtYXNoZXMKdGhhdCBwb2ludGVyLgoKPiBEbyBub3RlIHRoaXMgc29tZWhvdyB3b3JrZWQg ZmluZSBvbiA1LjExIGFuZCB0aGVuIGJyb2tlIG9uIDUuMTIvMTMuIEkgd2VudCBhcyBmYXIgYXMg cmVwbGFjaW5nIG1vc3QKPiAKPiBvZiB0aGUga2VybmVsIHdpdGggdGhlIHVwZGF0ZWQvZG93bmdy YWRlZCBwYXJ0cyB2aWEgZ2l0IGNoZWNrb3V0IChpIHRyaWVkIG1hbnkgY29tYmluYXRpb25zKSwK PiAKPiB0byBubyBhdmFpbC4uIEkgZXZlbiB0cmllZCBkaWZmZXJlbnQgY29tcGlsZXJzIGFuZCBv cHRpbWl6YXRpb24gbGV2ZWxzLCB0aGlua2luZyBpdCBjb3VsZCBoYXZlIGJlZW4KPiAKPiBhIGNv ZGVnZW4gaXNzdWUsIGJ1dCBubyBsdWNrIGVpdGhlci4KPiAKPiAKPiBJLi4gZG8gdW5kZXJzdGFu ZCB0aGlzIGVtYWlsIGlzIGEgdG90YWwgbWVzcyB0byByZWFkLCBhcyBtdWNoIGFzIGl0IHdhcyB0 byB3cml0ZSwgYnV0Cj4gCj4gd2l0aG91dCBhY2Nlc3MgdG8gbXkgY29kZSBhbmQgdGhlIG1hY2hp bmUgaXRzZWxmIEkgY2FuJ3QgZ2l2ZSB5b3Ugc29saWQgZGV0YWlscywgYW5kCj4gCj4gdGhlIGZh Y3QgdGhpcyBzaXR1YXRpb24gaXMgZmFyIGZyb20gb3JkaW5hcnkgZG9lc24ndCBoZWxwIGVpdGhl ci4uCj4gCj4gCj4gVGhlIGxhdGVzdCAoYW5jaWVudCwgbm90IHF1aXRlIHByZXR0eSwgYnV0IHBy b2JhYmx5IHdvcmtpbmcgaWYgbXkgbWVtb3J5IGlzIGNvcnJlY3QpIHZlcnNpb24gb2YgbXkgcGF0 Y2hlcwo+IAo+IGZvciB0aGUgbWRtOTYwNyBpcyBhdmFpbGFibGUgYXQgWzFdLCBJIHdpbGwgcHVz aCB0aGUgbmV3IHJldmlzaW9uIGFmdGVyIEkgZ2V0IGFjY2VzcyB0byB0aGUgd29ya3N0YXRpb24u Cj4gCj4gCj4gS29ucmFkCj4gCj4gCj4gWzFdIGh0dHBzOi8vZ2l0aHViLmNvbS9Tb01haW5saW5l L2xpbnV4L2NvbW1pdHMva29ucmFkL3BpbmVtb2RlbQo+IAo+IAo+ID4KPiA+IFJlZ2FyZHMsCj4g PiDCoMKgIFNyaWNoYXJhbgo+ID4KPiA+ICAKCgpUaGFua3MsCk1pcXXDqGwKCl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpMaW51eCBNVEQgZGlz Y3Vzc2lvbiBtYWlsaW5nIGxpc3QKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9s aXN0aW5mby9saW51eC1tdGQvCg==