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 EE5AAC05027 for ; Mon, 23 Jan 2023 10:34:42 +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=smfGhK2VWLNS0t2XKFy14Ij9sJeOrea18XxlaV6op9c=; b=RZsRjddioLmXWT d+eMmeQ1tMCoLsPUOzA69HsdS+Z7peq0lPh8HG9TdQRnxZPs5053CgPfQbmGWv4GSZlEAgvWrcGz4 rUwFAEdUbdOqfQiEQJ9Dqc9gONRzP5f3+P5qQAEJdAzS0kyPIZWfMxMFRVe+yRxwB0m5oiizCEF7l 48BpEh7Q0J5y3byXrvaVWgQbOZKeSIVLqwX/vVVFkTv/MG+9GKIsaCCI2QfNLWeiPc609dTIt9zvx mRW9GSnQg34iUWvPUeYAV9F2wsxiVsb3HMnZ7OdIxtp4bPd+MpzJF5C2aDMpKXaS1fyLG9uPRSn5D BBVUQ7vhJ/TU2BBs53cw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1pJu97-00Gr3Z-KQ; Mon, 23 Jan 2023 10:33:49 +0000 Received: from relay2-d.mail.gandi.net ([2001:4b98:dc4:8::222]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1pJu92-00Gr0m-IS for linux-mtd@lists.infradead.org; Mon, 23 Jan 2023 10:33:47 +0000 Received: (Authenticated sender: miquel.raynal@bootlin.com) by mail.gandi.net (Postfix) with ESMTPSA id EE30A4000B; Mon, 23 Jan 2023 10:33:38 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bootlin.com; s=gm1; t=1674470019; 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=OZlXR4KCVU4TJVdiwRtCFTAirM/5L5ePdC11ta8clhI=; b=PVc3n8NpWpaSDE0mep1sw8LnqBpsDApk+6LmP9kRtsgoVNFgc5RENhmgnxgfYNbjv+/wlJ JJO5P8lpYdEgq8qtY14/+sevrAWnnYO3f+J+07+Gkk3skIOredGzUkKSk4teN5BeY8dFZd 6gWevxo7a4PXqnJVxdqcrtWDt9zT4cf+QSQfIyujt5xkzN+no/TZPaCdJ21LWkhiD7OfRX K+ThpG9qa4e8/JsFM+zswOrJ+ZDNhjRXR7ndFrt+e9r14pzQi8rMjpLkBHOJHdNyY/QQOX dAKynz63szwP5is4+Lu2rlusot0Of4MW6YeB+OneldMFYe7VXkUC1zEM7eIKOw== Date: Mon, 23 Jan 2023 11:33:37 +0100 From: Miquel Raynal To: Mario Kicherer Cc: linux-mtd@lists.infradead.org, richard@nod.at, vigneshr@ti.com, Dhruva Gole Subject: Re: [PATCH v2] mtd: spinand: Add support for AllianceMemory AS5F34G04SND Message-ID: <20230123113337.78f5e3db@xps-13> In-Reply-To: <20230117165441.1368447-1-dev@kicherer.org> References: <20230117165441.1368447-1-dev@kicherer.org> Organization: Bootlin X-Mailer: Claws Mail 4.0.0 (GTK+ 3.24.33; 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-20230123_023345_002097_6AAE1597 X-CRM114-Status: GOOD ( 26.58 ) 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 SGkgTWFyaW8sCgpkZXZAa2ljaGVyZXIub3JnIHdyb3RlIG9uIFR1ZSwgMTcgSmFuIDIwMjMgMTc6 NTQ6NDEgKzAxMDA6Cgo+IEFkZCBzdXBwb3J0IGZvciBBbGxpYW5jZU1lbW9yeSBBUzVGMzRHMDRT TkQgU1BJIE5BTkQgZmxhc2gKCQkJCQkJCSAgICAuCgpUaGFua3MgZm9yIHlvdSBwYXRjaCEKCj4g Cj4gRGF0YXNoZWV0Ogo+IC0gaHR0cHM6Ly93d3cuYWxsaWFuY2VtZW1vcnkuY29tL3dwLWNvbnRl bnQvdXBsb2Fkcy9wZGYvZmxhc2gvQWxsaWFuY2VNZW1vcnlfU1BJX05BTkRfRmxhc2hfSnVseTIw MjBfUmV2MS4wLnBkZgo+IAo+IFNpZ25lZC1vZmYtYnk6IE1hcmlvIEtpY2hlcmVyIDxkZXZAa2lj aGVyZXIub3JnPgo+IFJldmlld2VkLWJ5OiBEaHJ1dmEgR29sZSA8ZC1nb2xlQHRpLmNvbT4KPiAt LS0KPiBDaGFuZ2VzIHNpbmNlIHYxOgo+ICAtIGFkZGVkIG1pc3NpbmcgZW1haWwgcmVjaXBpZW50 cywgc29ycnkgZm9yIHRoZSBub2lzZSEKPiAKPiAgZHJpdmVycy9tdGQvbmFuZC9zcGkvTWFrZWZp bGUgICAgICAgICB8ICAgMiArLQo+ICBkcml2ZXJzL210ZC9uYW5kL3NwaS9hbGxpYW5jZW1lbW9y eS5jIHwgMTE5ICsrKysrKysrKysrKysrKysrKysrKysrKysrCj4gIGRyaXZlcnMvbXRkL25hbmQv c3BpL2NvcmUuYyAgICAgICAgICAgfCAgIDEgKwo+ICBpbmNsdWRlL2xpbnV4L210ZC9zcGluYW5k LmggICAgICAgICAgIHwgICAxICsKPiAgNCBmaWxlcyBjaGFuZ2VkLCAxMjIgaW5zZXJ0aW9ucygr KSwgMSBkZWxldGlvbigtKQo+ICBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9tdGQvbmFuZC9z cGkvYWxsaWFuY2VtZW1vcnkuYwo+IAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL210ZC9uYW5kL3Nw aS9NYWtlZmlsZSBiL2RyaXZlcnMvbXRkL25hbmQvc3BpL01ha2VmaWxlCj4gaW5kZXggYjUyMGZl NjM0MDQxLi40ZWM5NzNiOGI2YmYgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9tdGQvbmFuZC9zcGkv TWFrZWZpbGUKPiArKysgYi9kcml2ZXJzL210ZC9uYW5kL3NwaS9NYWtlZmlsZQo+IEBAIC0xLDMg KzEsMyBAQAo+ICAjIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBHUEwtMi4wCj4gLXNwaW5hbmQt b2JqcyA6PSBjb3JlLm8gYXRvLm8gZ2lnYWRldmljZS5vIG1hY3Jvbml4Lm8gbWljcm9uLm8gcGFy YWdvbi5vIHRvc2hpYmEubyB3aW5ib25kLm8geHR4Lm8KPiArc3BpbmFuZC1vYmpzIDo9IGNvcmUu byBhbGxpYW5jZW1lbW9yeS5vIGF0by5vIGdpZ2FkZXZpY2UubyBtYWNyb25peC5vIG1pY3Jvbi5v IHBhcmFnb24ubyB0b3NoaWJhLm8gd2luYm9uZC5vIHh0eC5vCj4gIG9iai0kKENPTkZJR19NVERf U1BJX05BTkQpICs9IHNwaW5hbmQubwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL210ZC9uYW5kL3Nw aS9hbGxpYW5jZW1lbW9yeS5jIGIvZHJpdmVycy9tdGQvbmFuZC9zcGkvYWxsaWFuY2VtZW1vcnku Ywo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXggMDAwMDAwMDAwMDAwLi43ZjRiOTBiZWZk MjcKPiAtLS0gL2Rldi9udWxsCj4gKysrIGIvZHJpdmVycy9tdGQvbmFuZC9zcGkvYWxsaWFuY2Vt ZW1vcnkuYwo+IEBAIC0wLDAgKzEsMTE5IEBACj4gKy8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVy OiBHUEwtMi4wCj4gKy8qCj4gKyAqIEF1dGhvcjogTWFyaW8gS2ljaGVyZXIgPGRldkBraWNoZXJl ci5vcmc+Cj4gKyAqLwo+ICsKPiArI2luY2x1ZGUgPGxpbnV4L2RldmljZS5oPgo+ICsjaW5jbHVk ZSA8bGludXgva2VybmVsLmg+Cj4gKyNpbmNsdWRlIDxsaW51eC9tdGQvc3BpbmFuZC5oPgo+ICsK PiArI2RlZmluZSBTUElOQU5EX01GUl9BTExJQU5DRU1FTU9SWQkweDUyCj4gKwo+ICsjZGVmaW5l IEFNX1NUQVRVU19FQ0NfQklUTUFTSwkJKDMgPDwgNCkKPiArCj4gKyNkZWZpbmUgQU1fU1RBVFVT X0VDQ19OT05FX0RFVEVDVEVECSgwIDw8IDQpCj4gKyNkZWZpbmUgQU1fU1RBVFVTX0VDQ18xX0NP UlJFQ1RFRAkoMSA8PCA0KQo+ICsjZGVmaW5lIEFNX1NUQVRVU19FQ0NfMV9ERVRFQ1RFRAkoMiA8 PCA0KQo+ICsjZGVmaW5lIEFNX1NUQVRVU19FQ0NfTUFYX0NPUlJFQ1RFRAkoMyA8PCA0KQo+ICsK PiArc3RhdGljIFNQSU5BTkRfT1BfVkFSSUFOVFMocmVhZF9jYWNoZV92YXJpYW50cywKPiArCQlT UElOQU5EX1BBR0VfUkVBRF9GUk9NX0NBQ0hFX1FVQURJT19PUCgwLCAxLCBOVUxMLCAwKSwKPiAr CQlTUElOQU5EX1BBR0VfUkVBRF9GUk9NX0NBQ0hFX1g0X09QKDAsIDEsIE5VTEwsIDApLAo+ICsJ CVNQSU5BTkRfUEFHRV9SRUFEX0ZST01fQ0FDSEVfRFVBTElPX09QKDAsIDEsIE5VTEwsIDApLAo+ ICsJCVNQSU5BTkRfUEFHRV9SRUFEX0ZST01fQ0FDSEVfWDJfT1AoMCwgMSwgTlVMTCwgMCksCj4g KwkJU1BJTkFORF9QQUdFX1JFQURfRlJPTV9DQUNIRV9PUCh0cnVlLCAwLCAxLCBOVUxMLCAwKSwK PiArCQlTUElOQU5EX1BBR0VfUkVBRF9GUk9NX0NBQ0hFX09QKGZhbHNlLCAwLCAxLCBOVUxMLCAw KSk7Cj4gKwo+ICtzdGF0aWMgU1BJTkFORF9PUF9WQVJJQU5UUyh3cml0ZV9jYWNoZV92YXJpYW50 cywKPiArCQkJICAgU1BJTkFORF9QUk9HX0xPQURfWDQodHJ1ZSwgMCwgTlVMTCwgMCksCj4gKwkJ CSAgIFNQSU5BTkRfUFJPR19MT0FEKHRydWUsIDAsIE5VTEwsIDApKTsKPiArCj4gK3N0YXRpYyBT UElOQU5EX09QX1ZBUklBTlRTKHVwZGF0ZV9jYWNoZV92YXJpYW50cywKPiArCQkJICAgU1BJTkFO RF9QUk9HX0xPQURfWDQoZmFsc2UsIDAsIE5VTEwsIDApLAo+ICsJCQkgICBTUElOQU5EX1BST0df TE9BRChmYWxzZSwgMCwgTlVMTCwgMCkpOwo+ICsKPiArc3RhdGljIGludCBhczVmMzRnMDRzbmRf b29ibGF5b3V0X2VjYyhzdHJ1Y3QgbXRkX2luZm8gKm10ZCwgaW50IHNlY3Rpb24sCj4gKwkJCQkg ICAgICBzdHJ1Y3QgbXRkX29vYl9yZWdpb24gKnJlZ2lvbikKPiArewo+ICsJaWYgKHNlY3Rpb24g PiAzKQo+ICsJCXJldHVybiAtRVJBTkdFOwo+ICsKPiArCXJlZ2lvbi0+b2Zmc2V0ID0gMHg0ODsK PiArCXJlZ2lvbi0+bGVuZ3RoID0gMHgzODsKCldoeSB3b3VsZCB5b3UgaGF2ZSB0aHJlZSBzZWN0 aW9ucyBpZiB5b3UgaGF2ZSBzdGF0aWMgb2Zmc2V0cyBhbmQKbGVuZ3RoPyBUaGF0IGRvZXMgbm90 IGxvb2sgY29ycmVjdC4KCj4gKwo+ICsJcmV0dXJuIDA7Cj4gK30KPiArCj4gK3N0YXRpYyBpbnQg YXM1ZjM0ZzA0c25kX29vYmxheW91dF9mcmVlKHN0cnVjdCBtdGRfaW5mbyAqbXRkLCBpbnQgc2Vj dGlvbiwKPiArCQkJCSAgICAgICBzdHJ1Y3QgbXRkX29vYl9yZWdpb24gKnJlZ2lvbikKPiArewo+ ICsJaWYgKHNlY3Rpb24pCj4gKwkJcmV0dXJuIC1FUkFOR0U7Cj4gKwo+ICsJLyoKPiArCSAqIEl0 IGlzIHVuY2xlYXIgaG93IG1hbnkgYnl0ZXMgYXJlIHVzZWQgZm9yIHRoZSBiYWQgYmxvY2sgbWFy a2VyLiBXZQo+ICsJICogcmVzZXJ2ZSBvbmUgYnl0ZSBoZXJlLgoKU28gZmFyIHdlIHJlc2VydmVk IHR3byBieXRlcyBpbiBMaW51eCB0byBtaW1pYyB0aGUgcmF3IE5BTkQgQkJNLgoKPiArCSAqLwo+ ICsKPiArCXJlZ2lvbi0+b2Zmc2V0ID0gMTsKPiArCXJlZ2lvbi0+bGVuZ3RoID0gMHg0OCAtIDE7 Cj4gKwo+ICsJcmV0dXJuIDA7Cj4gK30KPiArCj4gK3N0YXRpYyBjb25zdCBzdHJ1Y3QgbXRkX29v YmxheW91dF9vcHMgYXM1ZjM0ZzA0c25kX29vYmxheW91dCA9IHsKPiArCS5lY2MgPSBhczVmMzRn MDRzbmRfb29ibGF5b3V0X2VjYywKPiArCS5mcmVlID0gYXM1ZjM0ZzA0c25kX29vYmxheW91dF9m cmVlLAo+ICt9Owo+ICsKPiArc3RhdGljIGludCBhbV9lY2NfZ2V0X3N0YXR1cyhzdHJ1Y3Qgc3Bp bmFuZF9kZXZpY2UgKnNwaW5hbmQsIHU4IHN0YXR1cykKPiArewo+ICsJc3dpdGNoIChzdGF0dXMg JiBBTV9TVEFUVVNfRUNDX0JJVE1BU0spIHsKPiArCWNhc2UgQU1fU1RBVFVTX0VDQ19OT05FX0RF VEVDVEVEOgo+ICsJCXJldHVybiAwOwo+ICsKPiArCWNhc2UgQU1fU1RBVFVTX0VDQ18xX0NPUlJF Q1RFRDoKPiArCQlyZXR1cm4gMTsKPiArCj4gKwljYXNlIEFNX1NUQVRVU19FQ0NfTUFYX0NPUlJF Q1RFRDoKPiArCQlyZXR1cm4gODsKPiArCj4gKwljYXNlIEFNX1NUQVRVU19FQ0NfMV9ERVRFQ1RF RDoKCldoYXQgZG9lcyB0aGlzIG1lYW4gIjEgZGV0ZWN0ZWQiPwoKPiArCQlyZXR1cm4gLUVCQURN U0c7Cj4gKwo+ICsJZGVmYXVsdDoKPiArCQlicmVhazsKPiArCX0KPiArCj4gKwlyZXR1cm4gLUVJ TlZBTDsKPiArfQo+ICsKPiArc3RhdGljIGNvbnN0IHN0cnVjdCBzcGluYW5kX2luZm8gYWxsaWFu Y2VtZW1vcnlfc3BpbmFuZF90YWJsZVtdID0gewo+ICsJU1BJTkFORF9JTkZPKCJBUzVGMzRHMDRT TkQiLAo+ICsJCSAgICAgU1BJTkFORF9JRChTUElOQU5EX1JFQURJRF9NRVRIT0RfT1BDT0RFX0RV TU1ZLCAweDJmKSwKPiArCQkgICAgIE5BTkRfTUVNT1JHKDEsIDIwNDgsIDEyOCwgNjQsIDQwOTYs IDgwLCAxLCAxLCAxKSwKPiArCQkgICAgIE5BTkRfRUNDUkVRKDQsIDUxMiksCj4gKwkJICAgICBT UElOQU5EX0lORk9fT1BfVkFSSUFOVFMoJnJlYWRfY2FjaGVfdmFyaWFudHMsCj4gKwkJCQkJICAg ICAgJndyaXRlX2NhY2hlX3ZhcmlhbnRzLAo+ICsJCQkJCSAgICAgICZ1cGRhdGVfY2FjaGVfdmFy aWFudHMpLAo+ICsJCSAgICAgU1BJTkFORF9IQVNfUUVfQklULAo+ICsJCSAgICAgU1BJTkFORF9F Q0NJTkZPKCZhczVmMzRnMDRzbmRfb29ibGF5b3V0LAo+ICsJCQkJICAgICBhbV9lY2NfZ2V0X3N0 YXR1cykpLAo+ICt9Owo+ICsKPiArc3RhdGljIGludCBhbGxpYW5jZW1lbW9yeV9zcGluYW5kX2lu aXQoc3RydWN0IHNwaW5hbmRfZGV2aWNlICpzcGluYW5kKQo+ICt7Cj4gKwlyZXR1cm4gMDsKPiAr fQo+ICsKPiArc3RhdGljIGNvbnN0IHN0cnVjdCBzcGluYW5kX21hbnVmYWN0dXJlcl9vcHMgYWxs aWFuY2VtZW1vcnlfc3BpbmFuZF9tYW51Zl9vcHMgPSB7Cj4gKwkuaW5pdCA9IGFsbGlhbmNlbWVt b3J5X3NwaW5hbmRfaW5pdCwKCkkgZG9uJ3QgdGhpbmsgLmluaXQgaXMgbWFuZGF0b3J5LCBzbyBp ZiB5b3UgZG8gbm90aGluZyBpbiBpdCwgeW91CmNhbiBqdXN0IGRyb3AgaXQuCgo+ICt9Owo+ICsK PiArY29uc3Qgc3RydWN0IHNwaW5hbmRfbWFudWZhY3R1cmVyIGFsbGlhbmNlbWVtb3J5X3NwaW5h bmRfbWFudWZhY3R1cmVyID0gewo+ICsJLmlkID0gU1BJTkFORF9NRlJfQUxMSUFOQ0VNRU1PUlks Cj4gKwkubmFtZSA9ICJBbGxpYW5jZU1lbW9yeSIsCj4gKwkuY2hpcHMgPSBhbGxpYW5jZW1lbW9y eV9zcGluYW5kX3RhYmxlLAo+ICsJLm5jaGlwcyA9IEFSUkFZX1NJWkUoYWxsaWFuY2VtZW1vcnlf c3BpbmFuZF90YWJsZSksCj4gKwkub3BzID0gJmFsbGlhbmNlbWVtb3J5X3NwaW5hbmRfbWFudWZf b3BzLAo+ICt9Owo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL210ZC9uYW5kL3NwaS9jb3JlLmMgYi9k cml2ZXJzL210ZC9uYW5kL3NwaS9jb3JlLmMKPiBpbmRleCBkYWNkOWMwZThiMjAuLjYzODM5MWY3 N2Q4YyAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL210ZC9uYW5kL3NwaS9jb3JlLmMKPiArKysgYi9k cml2ZXJzL210ZC9uYW5kL3NwaS9jb3JlLmMKPiBAQCAtOTM3LDYgKzkzNyw3IEBAIHN0YXRpYyBj b25zdCBzdHJ1Y3QgbmFuZF9vcHMgc3BpbmFuZF9vcHMgPSB7Cj4gIH07Cj4gIAo+ICBzdGF0aWMg Y29uc3Qgc3RydWN0IHNwaW5hbmRfbWFudWZhY3R1cmVyICpzcGluYW5kX21hbnVmYWN0dXJlcnNb XSA9IHsKPiArCSZhbGxpYW5jZW1lbW9yeV9zcGluYW5kX21hbnVmYWN0dXJlciwKPiAgCSZhdG9f c3BpbmFuZF9tYW51ZmFjdHVyZXIsCj4gIAkmZ2lnYWRldmljZV9zcGluYW5kX21hbnVmYWN0dXJl ciwKPiAgCSZtYWNyb25peF9zcGluYW5kX21hbnVmYWN0dXJlciwKPiBkaWZmIC0tZ2l0IGEvaW5j bHVkZS9saW51eC9tdGQvc3BpbmFuZC5oIGIvaW5jbHVkZS9saW51eC9tdGQvc3BpbmFuZC5oCj4g aW5kZXggNmQzMzkyYTdlZGM2Li4wMWJlOWYwZjAwOGEgMTAwNjQ0Cj4gLS0tIGEvaW5jbHVkZS9s aW51eC9tdGQvc3BpbmFuZC5oCj4gKysrIGIvaW5jbHVkZS9saW51eC9tdGQvc3BpbmFuZC5oCj4g QEAgLTI2MCw2ICsyNjAsNyBAQCBzdHJ1Y3Qgc3BpbmFuZF9tYW51ZmFjdHVyZXIgewo+ICB9Owo+ ICAKPiAgLyogU1BJIE5BTkQgbWFudWZhY3R1cmVycyAqLwo+ICtleHRlcm4gY29uc3Qgc3RydWN0 IHNwaW5hbmRfbWFudWZhY3R1cmVyIGFsbGlhbmNlbWVtb3J5X3NwaW5hbmRfbWFudWZhY3R1cmVy Owo+ICBleHRlcm4gY29uc3Qgc3RydWN0IHNwaW5hbmRfbWFudWZhY3R1cmVyIGF0b19zcGluYW5k X21hbnVmYWN0dXJlcjsKPiAgZXh0ZXJuIGNvbnN0IHN0cnVjdCBzcGluYW5kX21hbnVmYWN0dXJl ciBnaWdhZGV2aWNlX3NwaW5hbmRfbWFudWZhY3R1cmVyOwo+ICBleHRlcm4gY29uc3Qgc3RydWN0 IHNwaW5hbmRfbWFudWZhY3R1cmVyIG1hY3Jvbml4X3NwaW5hbmRfbWFudWZhY3R1cmVyOwoKClRo YW5rcywKTWlxdcOobAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCkxpbnV4IE1URCBkaXNjdXNzaW9uIG1haWxpbmcgbGlzdApodHRwOi8vbGlz dHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LW10ZC8K