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 X-Spam-Level: X-Spam-Status: No, score=-9.8 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, MIME_BASE64_TEXT,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,UNPARSEABLE_RELAY, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 1ACB1C33CA1 for ; Mon, 20 Jan 2020 07:48:06 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id C4409207E0 for ; Mon, 20 Jan 2020 07:48:05 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=mediatek.com header.i=@mediatek.com header.b="tE40jjqG" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726130AbgATHsD (ORCPT ); Mon, 20 Jan 2020 02:48:03 -0500 Received: from mailgw01.mediatek.com ([210.61.82.183]:7459 "EHLO mailgw01.mediatek.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1726282AbgATHsC (ORCPT ); Mon, 20 Jan 2020 02:48:02 -0500 X-UUID: 94e5d39a757948219ea4be5b6fe09e36-20200120 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=Content-Transfer-Encoding:Content-Type:MIME-Version:References:In-Reply-To:Message-ID:Date:Subject:CC:To:From; bh=5Kt0Je0e/D4lYnr/bO7sWhAnQ+KG1B0T+tlbB0v96JQ=; b=tE40jjqGv90wX+X+xSpEKiS5a8GKYbR9GduVdVdSveb90xyrKX9BOF4+2hq0y+NIgPN6w0k6bVTryOSzCXQlH1XE1rZke1akgPjnrDxyyLIPCJSgs8ShGx0qhNeCqABgXyzsTvUg3PEcRudDT7g4zrLuJ7WAUHbyuROci5sxVwg=; X-UUID: 94e5d39a757948219ea4be5b6fe09e36-20200120 Received: from mtkcas06.mediatek.inc [(172.21.101.30)] by mailgw01.mediatek.com (envelope-from ) (Cellopoint E-mail Firewall v4.1.10 Build 0809 with TLS) with ESMTP id 1282701287; Mon, 20 Jan 2020 15:47:46 +0800 Received: from mtkcas09.mediatek.inc (172.21.101.178) by mtkmbs07n2.mediatek.inc (172.21.101.141) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Mon, 20 Jan 2020 15:47:13 +0800 Received: from mtkswgap22.mediatek.inc (172.21.77.33) by mtkcas09.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1395.4 via Frontend Transport; Mon, 20 Jan 2020 15:48:39 +0800 From: Wen Su To: Lee Jones , Rob Herring , Mark Brown , Matthias Brugger CC: , , , Liam Girdwood , Mark Rutland , , , Subject: [RESEND 3/4] regulator: mt6359: Add support for MT6359 regulator Date: Mon, 20 Jan 2020 15:47:29 +0800 Message-ID: <1579506450-21830-4-git-send-email-Wen.Su@mediatek.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1579506450-21830-1-git-send-email-Wen.Su@mediatek.com> References: <1579506450-21830-1-git-send-email-Wen.Su@mediatek.com> MIME-Version: 1.0 Content-Type: text/plain X-MTK: N Content-Transfer-Encoding: base64 Sender: devicetree-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org RnJvbTogV2VuIFN1IDx3ZW4uc3VAbWVkaWF0ZWsuY29tPg0KDQpUaGUgTVQ2MzU5IGlzIGEgcmVn dWxhdG9yIGZvdW5kIG9uIGJvYXJkcyBiYXNlZCBvbiBNZWRpYVRlayBNVDY3NzkgYW5kDQpwcm9i YWJseSBvdGhlciBTb0NzLiBJdCBpcyBhIHNvIGNhbGxlZCBwbWljIGFuZCBjb25uZWN0cyBhcyBh IHNsYXZlIHRvDQpTb0MgdXNpbmcgU1BJLCB3cmFwcGVkIGluc2lkZSB0aGUgcG1pYy13cmFwcGVy Lg0KDQpTaWduZWQtb2ZmLWJ5OiBXZW4gU3UgPHdlbi5zdUBtZWRpYXRlay5jb20+DQotLS0NCiBk cml2ZXJzL3JlZ3VsYXRvci9LY29uZmlnICAgICAgICAgICAgICAgICAgfCAgIDkgKw0KIGRyaXZl cnMvcmVndWxhdG9yL01ha2VmaWxlICAgICAgICAgICAgICAgICB8ICAgMSArDQogZHJpdmVycy9y ZWd1bGF0b3IvbXQ2MzU5LXJlZ3VsYXRvci5jICAgICAgIHwgODU5ICsrKysrKysrKysrKysrKysr KysrKysrKysrKysrDQogaW5jbHVkZS9saW51eC9yZWd1bGF0b3IvbXQ2MzU5LXJlZ3VsYXRvci5o IHwgIDU4ICsrDQogNCBmaWxlcyBjaGFuZ2VkLCA5MjcgaW5zZXJ0aW9ucygrKQ0KIGNyZWF0ZSBt b2RlIDEwMDY0NCBkcml2ZXJzL3JlZ3VsYXRvci9tdDYzNTktcmVndWxhdG9yLmMNCiBjcmVhdGUg bW9kZSAxMDA2NDQgaW5jbHVkZS9saW51eC9yZWd1bGF0b3IvbXQ2MzU5LXJlZ3VsYXRvci5oDQoN CmRpZmYgLS1naXQgYS9kcml2ZXJzL3JlZ3VsYXRvci9LY29uZmlnIGIvZHJpdmVycy9yZWd1bGF0 b3IvS2NvbmZpZw0KaW5kZXggNzRlYjVhZi4uMGU3NGM2NiAxMDA2NDQNCi0tLSBhL2RyaXZlcnMv cmVndWxhdG9yL0tjb25maWcNCisrKyBiL2RyaXZlcnMvcmVndWxhdG9yL0tjb25maWcNCkBAIC02 MjgsNiArNjI4LDE1IEBAIGNvbmZpZyBSRUdVTEFUT1JfTVQ2MzU4DQogCSAgVGhpcyBkcml2ZXIg c3VwcG9ydHMgdGhlIGNvbnRyb2wgb2YgZGlmZmVyZW50IHBvd2VyIHJhaWxzIG9mIGRldmljZQ0K IAkgIHRocm91Z2ggcmVndWxhdG9yIGludGVyZmFjZS4NCiANCitjb25maWcgUkVHVUxBVE9SX01U NjM1OQ0KKwl0cmlzdGF0ZSAiTWVkaWFUZWsgTVQ2MzU5IFBNSUMiDQorCWRlcGVuZHMgb24gTUZE X01UNjM5Nw0KKwloZWxwDQorCSAgU2F5IHkgaGVyZSB0byBzZWxlY3QgdGhpcyBvcHRpb24gdG8g ZW5hYmxlIHRoZSBwb3dlciByZWd1bGF0b3Igb2YNCisJICBNZWRpYVRlayBNVDYzNTkgUE1JQy4N CisJICBUaGlzIGRyaXZlciBzdXBwb3J0cyB0aGUgY29udHJvbCBvZiBkaWZmZXJlbnQgcG93ZXIg cmFpbHMgb2YgZGV2aWNlDQorCSAgdGhyb3VnaCByZWd1bGF0b3IgaW50ZXJmYWNlLg0KKw0KIGNv bmZpZyBSRUdVTEFUT1JfTVQ2MzgwDQogCXRyaXN0YXRlICJNZWRpYVRlayBNVDYzODAgUE1JQyIN CiAJZGVwZW5kcyBvbiBNVEtfUE1JQ19XUkFQDQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9yZWd1bGF0 b3IvTWFrZWZpbGUgYi9kcml2ZXJzL3JlZ3VsYXRvci9NYWtlZmlsZQ0KaW5kZXggMjIxMGJhNS4u MTAzZDM1ZiAxMDA2NDQNCi0tLSBhL2RyaXZlcnMvcmVndWxhdG9yL01ha2VmaWxlDQorKysgYi9k cml2ZXJzL3JlZ3VsYXRvci9NYWtlZmlsZQ0KQEAgLTgwLDYgKzgwLDcgQEAgb2JqLSQoQ09ORklH X1JFR1VMQVRPUl9NQ1AxNjUwMikgKz0gbWNwMTY1MDIubw0KIG9iai0kKENPTkZJR19SRUdVTEFU T1JfTVQ2MzExKSArPSBtdDYzMTEtcmVndWxhdG9yLm8NCiBvYmotJChDT05GSUdfUkVHVUxBVE9S X01UNjMyMykJKz0gbXQ2MzIzLXJlZ3VsYXRvci5vDQogb2JqLSQoQ09ORklHX1JFR1VMQVRPUl9N VDYzNTgpCSs9IG10NjM1OC1yZWd1bGF0b3Iubw0KK29iai0kKENPTkZJR19SRUdVTEFUT1JfTVQ2 MzU5KQkrPSBtdDYzNTktcmVndWxhdG9yLm8NCiBvYmotJChDT05GSUdfUkVHVUxBVE9SX01UNjM4 MCkJKz0gbXQ2MzgwLXJlZ3VsYXRvci5vDQogb2JqLSQoQ09ORklHX1JFR1VMQVRPUl9NVDYzOTcp CSs9IG10NjM5Ny1yZWd1bGF0b3Iubw0KIG9iai0kKENPTkZJR19SRUdVTEFUT1JfUUNPTV9SUE0p ICs9IHFjb21fcnBtLXJlZ3VsYXRvci5vDQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9yZWd1bGF0b3Iv bXQ2MzU5LXJlZ3VsYXRvci5jIGIvZHJpdmVycy9yZWd1bGF0b3IvbXQ2MzU5LXJlZ3VsYXRvci5j DQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMC4uMTdiNjZjNA0KLS0tIC9kZXYv bnVsbA0KKysrIGIvZHJpdmVycy9yZWd1bGF0b3IvbXQ2MzU5LXJlZ3VsYXRvci5jDQpAQCAtMCww ICsxLDg1OSBAQA0KKy8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBHUEwtMi4wDQorLy8NCisv LyBDb3B5cmlnaHQgKGMpIDIwMTkgTWVkaWFUZWsgSW5jLg0KKw0KKyNpbmNsdWRlIDxsaW51eC9w bGF0Zm9ybV9kZXZpY2UuaD4NCisjaW5jbHVkZSA8bGludXgvbWZkL210NjM1OS9yZWdpc3RlcnMu aD4NCisjaW5jbHVkZSA8bGludXgvbWZkL210NjM5Ny9jb3JlLmg+DQorI2luY2x1ZGUgPGxpbnV4 L21vZHVsZS5oPg0KKyNpbmNsdWRlIDxsaW51eC9vZl9kZXZpY2UuaD4NCisjaW5jbHVkZSA8bGlu dXgvcmVnbWFwLmg+DQorI2luY2x1ZGUgPGxpbnV4L3JlZ3VsYXRvci9kcml2ZXIuaD4NCisjaW5j bHVkZSA8bGludXgvcmVndWxhdG9yL21hY2hpbmUuaD4NCisjaW5jbHVkZSA8bGludXgvcmVndWxh dG9yL210NjM1OS1yZWd1bGF0b3IuaD4NCisjaW5jbHVkZSA8bGludXgvcmVndWxhdG9yL29mX3Jl Z3VsYXRvci5oPg0KKw0KKyNkZWZpbmUgTVQ2MzU5X0JVQ0tfTU9ERV9BVVRPCQkwDQorI2RlZmlu ZSBNVDYzNTlfQlVDS19NT0RFX0ZPUkNFX1BXTQkxDQorI2RlZmluZSBNVDYzNTlfQlVDS19NT0RF X05PUk1BTAkJMA0KKyNkZWZpbmUgTVQ2MzU5X0JVQ0tfTU9ERV9MUAkJMg0KKw0KKy8qDQorICog TVQ2MzU5IHJlZ3VsYXRvcnMnIGluZm9ybWF0aW9uDQorICoNCisgKiBAZGVzYzogc3RhbmRhcmQg ZmllbGRzIG9mIHJlZ3VsYXRvciBkZXNjcmlwdGlvbi4NCisgKiBAc3RhdHVzX3JlZzogZm9yIHF1 ZXJ5IHN0YXR1cyBvZiByZWd1bGF0b3JzLg0KKyAqIEBxaTogTWFzayBmb3IgcXVlcnkgZW5hYmxl IHNpZ25hbCBzdGF0dXMgb2YgcmVndWxhdG9ycy4NCisgKiBAbW9kZXNldF9yZWc6IGZvciBvcGVy YXRpbmcgQVVUTy9QV00gbW9kZSByZWdpc3Rlci4NCisgKiBAbW9kZXNldF9tYXNrOiBNQVNLIGZv ciBvcGVyYXRpbmcgbW9kZXNldCByZWdpc3Rlci4NCisgKiBAbW9kZXNldF9zaGlmdDogU0hJRlQg Zm9yIG9wZXJhdGluZyBtb2Rlc2V0IHJlZ2lzdGVyLg0KKyAqLw0KK3N0cnVjdCBtdDYzNTlfcmVn dWxhdG9yX2luZm8gew0KKwlzdHJ1Y3QgcmVndWxhdG9yX2Rlc2MgZGVzYzsNCisJdTMyIHN0YXR1 c19yZWc7DQorCXUzMiBxaTsNCisJY29uc3QgdTMyICppbmRleF90YWJsZTsNCisJdW5zaWduZWQg aW50IG5fdGFibGU7DQorCXUzMiB2c2VsX3NoaWZ0Ow0KKwl1MzIgZGFfdnNlbF9yZWc7DQorCXUz MiBkYV92c2VsX21hc2s7DQorCXUzMiBkYV92c2VsX3NoaWZ0Ow0KKwl1MzIgbW9kZXNldF9yZWc7 DQorCXUzMiBtb2Rlc2V0X21hc2s7DQorCXUzMiBtb2Rlc2V0X3NoaWZ0Ow0KKwl1MzIgbHBfbW9k ZV9yZWc7DQorCXUzMiBscF9tb2RlX21hc2s7DQorCXUzMiBscF9tb2RlX3NoaWZ0Ow0KK307DQor DQorI2RlZmluZSBNVDYzNTlfQlVDSyhtYXRjaCwgX25hbWUsIG1pbiwgbWF4LCBzdGVwLCBtaW5f c2VsLAlcDQorCXZvbHRfcmFuZ2VzLCBfZW5hYmxlX3JlZywgX3N0YXR1c19yZWcsCQkJXA0KKwlf ZGFfdnNlbF9yZWcsIF9kYV92c2VsX21hc2ssIF9kYV92c2VsX3NoaWZ0LAkJXA0KKwlfdnNlbF9y ZWcsIF92c2VsX21hc2ssCQkJCQlcDQorCV9scF9tb2RlX3JlZywgX2xwX21vZGVfc2hpZnQsCQkJ CVwNCisJX21vZGVzZXRfcmVnLCBfbW9kZXNldF9zaGlmdCkJCQkJXA0KK1tNVDYzNTlfSURfIyNf bmFtZV0gPSB7CQkJCQkJXA0KKwkuZGVzYyA9IHsJCQkJCQlcDQorCQkubmFtZSA9ICNfbmFtZSwJ CQkJCVwNCisJCS5vZl9tYXRjaCA9IG9mX21hdGNoX3B0cihtYXRjaCksCQlcDQorCQkub3BzID0g Jm10NjM1OV92b2x0X3JhbmdlX29wcywJCQlcDQorCQkudHlwZSA9IFJFR1VMQVRPUl9WT0xUQUdF LAkJCVwNCisJCS5pZCA9IE1UNjM1OV9JRF8jI19uYW1lLAkJCVwNCisJCS5vd25lciA9IFRISVNf TU9EVUxFLAkJCQlcDQorCQkudVZfc3RlcCA9IChzdGVwKSwJCQkJXA0KKwkJLmxpbmVhcl9taW5f c2VsID0gKG1pbl9zZWwpLAkJCVwNCisJCS5uX3ZvbHRhZ2VzID0gKChtYXgpIC0gKG1pbikpIC8g KHN0ZXApICsgMSwJXA0KKwkJLm1pbl91ViA9IChtaW4pLAkJCQlcDQorCQkubGluZWFyX3Jhbmdl cyA9IHZvbHRfcmFuZ2VzLAkJCVwNCisJCS5uX2xpbmVhcl9yYW5nZXMgPSBBUlJBWV9TSVpFKHZv bHRfcmFuZ2VzKSwJXA0KKwkJLnZzZWxfcmVnID0gX3ZzZWxfcmVnLAkJCQlcDQorCQkudnNlbF9t YXNrID0gX3ZzZWxfbWFzaywJCQlcDQorCQkuZW5hYmxlX3JlZyA9IF9lbmFibGVfcmVnLAkJCVwN CisJCS5lbmFibGVfbWFzayA9IEJJVCgwKSwJCQkJXA0KKwkJLm9mX21hcF9tb2RlID0gbXQ2MzU5 X21hcF9tb2RlLAkJCVwNCisJfSwJCQkJCQkJXA0KKwkuZGFfdnNlbF9yZWcgPSBfZGFfdnNlbF9y ZWcsCQkJCVwNCisJLmRhX3ZzZWxfbWFzayA9IF9kYV92c2VsX21hc2ssCQkJCVwNCisJLmRhX3Zz ZWxfc2hpZnQgPSBfZGFfdnNlbF9zaGlmdCwJCQlcDQorCS5zdGF0dXNfcmVnID0gX3N0YXR1c19y ZWcsCQkJCVwNCisJLnFpID0gQklUKDApLAkJCQkJCVwNCisJLmxwX21vZGVfcmVnID0gX2xwX21v ZGVfcmVnLAkJCQlcDQorCS5scF9tb2RlX21hc2sgPSBCSVQoX2xwX21vZGVfc2hpZnQpLAkJCVwN CisJLmxwX21vZGVfc2hpZnQgPSBfbHBfbW9kZV9zaGlmdCwJCQlcDQorCS5tb2Rlc2V0X3JlZyA9 IF9tb2Rlc2V0X3JlZywJCQkJXA0KKwkubW9kZXNldF9tYXNrID0gQklUKF9tb2Rlc2V0X3NoaWZ0 KSwJCQlcDQorCS5tb2Rlc2V0X3NoaWZ0ID0gX21vZGVzZXRfc2hpZnQJCQkJXA0KK30NCisNCisj ZGVmaW5lIE1UNjM1OV9MRE9fTElORUFSKG1hdGNoLCBfbmFtZSwgbWluLCBtYXgsIHN0ZXAsIG1p bl9zZWwsXA0KKwl2b2x0X3JhbmdlcywgX2VuYWJsZV9yZWcsIF9zdGF0dXNfcmVnLAkJCVwNCisJ X2RhX3ZzZWxfcmVnLCBfZGFfdnNlbF9tYXNrLCBfZGFfdnNlbF9zaGlmdCwJCVwNCisJX3ZzZWxf cmVnLCBfdnNlbF9tYXNrKQkJCQkJXA0KK1tNVDYzNTlfSURfIyNfbmFtZV0gPSB7CQkJCQkJXA0K KwkuZGVzYyA9IHsJCQkJCQlcDQorCQkubmFtZSA9ICNfbmFtZSwJCQkJCVwNCisJCS5vZl9tYXRj aCA9IG9mX21hdGNoX3B0cihtYXRjaCksCQlcDQorCQkub3BzID0gJm10NjM1OV92b2x0X3Jhbmdl X29wcywJCQlcDQorCQkudHlwZSA9IFJFR1VMQVRPUl9WT0xUQUdFLAkJCVwNCisJCS5pZCA9IE1U NjM1OV9JRF8jI19uYW1lLAkJCVwNCisJCS5vd25lciA9IFRISVNfTU9EVUxFLAkJCQlcDQorCQku dVZfc3RlcCA9IChzdGVwKSwJCQkJXA0KKwkJLmxpbmVhcl9taW5fc2VsID0gKG1pbl9zZWwpLAkJ CVwNCisJCS5uX3ZvbHRhZ2VzID0gKChtYXgpIC0gKG1pbikpIC8gKHN0ZXApICsgMSwJXA0KKwkJ Lm1pbl91ViA9IChtaW4pLAkJCQlcDQorCQkubGluZWFyX3JhbmdlcyA9IHZvbHRfcmFuZ2VzLAkJ CVwNCisJCS5uX2xpbmVhcl9yYW5nZXMgPSBBUlJBWV9TSVpFKHZvbHRfcmFuZ2VzKSwJXA0KKwkJ LnZzZWxfcmVnID0gX3ZzZWxfcmVnLAkJCQlcDQorCQkudnNlbF9tYXNrID0gX3ZzZWxfbWFzaywJ CQlcDQorCQkuZW5hYmxlX3JlZyA9IF9lbmFibGVfcmVnLAkJCVwNCisJCS5lbmFibGVfbWFzayA9 IEJJVCgwKSwJCQkJXA0KKwl9LAkJCQkJCQlcDQorCS5kYV92c2VsX3JlZyA9IF9kYV92c2VsX3Jl ZywJCQkJXA0KKwkuZGFfdnNlbF9tYXNrID0gX2RhX3ZzZWxfbWFzaywJCQkJXA0KKwkuZGFfdnNl bF9zaGlmdCA9IF9kYV92c2VsX3NoaWZ0LAkJCVwNCisJLnN0YXR1c19yZWcgPSBfc3RhdHVzX3Jl ZywJCQkJXA0KKwkucWkgPSBCSVQoMCksCQkJCQkJXA0KK30NCisNCisjZGVmaW5lIE1UNjM1OV9M RE8obWF0Y2gsIF9uYW1lLCBfdm9sdF90YWJsZSwgX2luZGV4X3RhYmxlLAlcDQorCV9lbmFibGVf cmVnLCBfZW5hYmxlX21hc2ssIF9zdGF0dXNfcmVnLAkJCVwNCisJX3ZzZWxfcmVnLCBfdnNlbF9t YXNrLCBfdnNlbF9zaGlmdCkJCQlcDQorW01UNjM1OV9JRF8jI19uYW1lXSA9IHsJCQkJCQlcDQor CS5kZXNjID0gewkJCQkJCVwNCisJCS5uYW1lID0gI19uYW1lLAkJCQkJXA0KKwkJLm9mX21hdGNo ID0gb2ZfbWF0Y2hfcHRyKG1hdGNoKSwJCVwNCisJCS5vcHMgPSAmbXQ2MzU5X3ZvbHRfdGFibGVf b3BzLAkJCVwNCisJCS50eXBlID0gUkVHVUxBVE9SX1ZPTFRBR0UsCQkJXA0KKwkJLmlkID0gTVQ2 MzU5X0lEXyMjX25hbWUsCQkJXA0KKwkJLm93bmVyID0gVEhJU19NT0RVTEUsCQkJCVwNCisJCS5u X3ZvbHRhZ2VzID0gQVJSQVlfU0laRShfdm9sdF90YWJsZSksCQlcDQorCQkudm9sdF90YWJsZSA9 IF92b2x0X3RhYmxlLAkJCVwNCisJCS52c2VsX3JlZyA9IF92c2VsX3JlZywJCQkJXA0KKwkJLnZz ZWxfbWFzayA9IF92c2VsX21hc2ssCQkJXA0KKwkJLmVuYWJsZV9yZWcgPSBfZW5hYmxlX3JlZywJ CQlcDQorCQkuZW5hYmxlX21hc2sgPSBCSVQoX2VuYWJsZV9tYXNrKSwJCVwNCisJfSwJCQkJCQkJ XA0KKwkuc3RhdHVzX3JlZyA9IF9zdGF0dXNfcmVnLAkJCQlcDQorCS5xaSA9IEJJVCgwKSwJCQkJ CQlcDQorCS5pbmRleF90YWJsZSA9IF9pbmRleF90YWJsZSwJCQkJXA0KKwkubl90YWJsZSA9IEFS UkFZX1NJWkUoX2luZGV4X3RhYmxlKSwJCQlcDQorCS52c2VsX3NoaWZ0ID0gX3ZzZWxfc2hpZnQs CQkJCVwNCit9DQorDQorI2RlZmluZSBNVDYzNTlfUkVHX0ZJWEVEKG1hdGNoLCBfbmFtZSwgX2Vu YWJsZV9yZWcsCVwNCisJX3N0YXR1c19yZWcsIF9maXhlZF92b2x0KQkJCVwNCitbTVQ2MzU5X0lE XyMjX25hbWVdID0gewkJCQkJXA0KKwkuZGVzYyA9IHsJCQkJCVwNCisJCS5uYW1lID0gI19uYW1l LAkJCQlcDQorCQkub2ZfbWF0Y2ggPSBvZl9tYXRjaF9wdHIobWF0Y2gpLAlcDQorCQkub3BzID0g Jm10NjM1OV92b2x0X2ZpeGVkX29wcywJCVwNCisJCS50eXBlID0gUkVHVUxBVE9SX1ZPTFRBR0Us CQlcDQorCQkuaWQgPSBNVDYzNTlfSURfIyNfbmFtZSwJCVwNCisJCS5vd25lciA9IFRISVNfTU9E VUxFLAkJCVwNCisJCS5uX3ZvbHRhZ2VzID0gMSwJCQlcDQorCQkuZW5hYmxlX3JlZyA9IF9lbmFi bGVfcmVnLAkJXA0KKwkJLmVuYWJsZV9tYXNrID0gQklUKDApLAkJCVwNCisJCS5maXhlZF91ViA9 IChfZml4ZWRfdm9sdCksCQlcDQorCX0sCQkJCQkJXA0KKwkuc3RhdHVzX3JlZyA9IF9zdGF0dXNf cmVnLAkJCVwNCisJLnFpID0gQklUKDApLAkJCQkJXA0KK30NCisNCitzdGF0aWMgY29uc3Qgc3Ry dWN0IHJlZ3VsYXRvcl9saW5lYXJfcmFuZ2UgbXRfdm9sdF9yYW5nZTFbXSA9IHsNCisJUkVHVUxB VE9SX0xJTkVBUl9SQU5HRSg4MDAwMDAsIDAsIDB4NzAsIDEyNTAwKSwNCit9Ow0KKw0KK3N0YXRp YyBjb25zdCBzdHJ1Y3QgcmVndWxhdG9yX2xpbmVhcl9yYW5nZSBtdF92b2x0X3JhbmdlMltdID0g ew0KKwlSRUdVTEFUT1JfTElORUFSX1JBTkdFKDQwMDAwMCwgMCwgMHg3ZiwgNjI1MCksDQorfTsN CisNCitzdGF0aWMgY29uc3Qgc3RydWN0IHJlZ3VsYXRvcl9saW5lYXJfcmFuZ2UgbXRfdm9sdF9y YW5nZTNbXSA9IHsNCisJUkVHVUxBVE9SX0xJTkVBUl9SQU5HRSg0MDAwMDAsIDAsIDB4NzAsIDYy NTApLA0KK307DQorDQorc3RhdGljIGNvbnN0IHN0cnVjdCByZWd1bGF0b3JfbGluZWFyX3Jhbmdl IG10X3ZvbHRfcmFuZ2U0W10gPSB7DQorCVJFR1VMQVRPUl9MSU5FQVJfUkFOR0UoODAwMDAwLCAw LCAweDQwLCAxMjUwMCksDQorfTsNCisNCitzdGF0aWMgY29uc3Qgc3RydWN0IHJlZ3VsYXRvcl9s aW5lYXJfcmFuZ2UgbXRfdm9sdF9yYW5nZTVbXSA9IHsNCisJUkVHVUxBVE9SX0xJTkVBUl9SQU5H RSg1MDAwMDAsIDAsIDB4M0YsIDUwMDAwKSwNCit9Ow0KKw0KK3N0YXRpYyBjb25zdCBzdHJ1Y3Qg cmVndWxhdG9yX2xpbmVhcl9yYW5nZSBtdF92b2x0X3JhbmdlNltdID0gew0KKwlSRUdVTEFUT1Jf TElORUFSX1JBTkdFKDUwMDAwMCwgMCwgMHg2ZiwgNjI1MCksDQorfTsNCisNCitzdGF0aWMgY29u c3Qgc3RydWN0IHJlZ3VsYXRvcl9saW5lYXJfcmFuZ2UgbXRfdm9sdF9yYW5nZTdbXSA9IHsNCisJ UkVHVUxBVE9SX0xJTkVBUl9SQU5HRSg1MDAwMDAsIDAsIDB4NjAsIDYyNTApLA0KK307DQorDQor c3RhdGljIGNvbnN0IHUzMiB2c2ltMV92b2x0YWdlc1tdID0gew0KKwkxNzAwMDAwLCAxODAwMDAw LCAyNzAwMDAwLCAzMDAwMDAwLCAzMTAwMDAwLA0KK307DQorDQorc3RhdGljIGNvbnN0IHUzMiB2 aWJyX3ZvbHRhZ2VzW10gPSB7DQorCTEyMDAwMDAsIDEzMDAwMDAsIDE1MDAwMDAsIDE4MDAwMDAs IDIwMDAwMDAsDQorCTI3MDAwMDAsIDI4MDAwMDAsIDMwMDAwMDAsIDMzMDAwMDAsDQorfTsNCisN CitzdGF0aWMgY29uc3QgdTMyIHZyZjEyX3ZvbHRhZ2VzW10gPSB7DQorCTExMDAwMDAsIDEyMDAw MDAsIDEzMDAwMDAsDQorfTsNCisNCitzdGF0aWMgY29uc3QgdTMyIHZvbHQxOF92b2x0YWdlc1td ID0gew0KKwkxNzAwMDAwLCAxODAwMDAwLCAxOTAwMDAwLA0KK307DQorDQorc3RhdGljIGNvbnN0 IHUzMiB2Y24xM192b2x0YWdlc1tdID0gew0KKwk5MDAwMDAsIDEwMDAwMDAsIDEyMDAwMDAsIDEz MDAwMDAsDQorfTsNCisNCitzdGF0aWMgY29uc3QgdTMyIHZjbjMzX3ZvbHRhZ2VzW10gPSB7DQor CTI4MDAwMDAsIDMzMDAwMDAsIDM0MDAwMDAsIDM1MDAwMDAsDQorfTsNCisNCitzdGF0aWMgY29u c3QgdTMyIHZlZnVzZV92b2x0YWdlc1tdID0gew0KKwkxNzAwMDAwLCAxODAwMDAwLCAxOTAwMDAw LCAyMDAwMDAwLA0KK307DQorDQorc3RhdGljIGNvbnN0IHUzMiB2eG8yMl92b2x0YWdlc1tdID0g ew0KKwkxODAwMDAwLCAyMjAwMDAwLA0KK307DQorDQorc3RhdGljIGNvbnN0IHUzMiB2cmZja192 b2x0YWdlc1tdID0gew0KKwkxNTAwMDAwLCAxNjAwMDAwLCAxNzAwMDAwLA0KK307DQorDQorc3Rh dGljIGNvbnN0IHUzMiB2aW8yOF92b2x0YWdlc1tdID0gew0KKwkyODAwMDAwLCAyOTAwMDAwLCAz MDAwMDAwLCAzMTAwMDAwLCAzMzAwMDAwLA0KK307DQorDQorc3RhdGljIGNvbnN0IHUzMiB2ZW1j X3ZvbHRhZ2VzW10gPSB7DQorCTI5MDAwMDAsIDMwMDAwMDAsIDMzMDAwMDAsDQorfTsNCisNCitz dGF0aWMgY29uc3QgdTMyIHZhMTJfdm9sdGFnZXNbXSA9IHsNCisJMTIwMDAwMCwgMTMwMDAwMCwN Cit9Ow0KKw0KK3N0YXRpYyBjb25zdCB1MzIgdmEwOV92b2x0YWdlc1tdID0gew0KKwk4MDAwMDAs IDkwMDAwMCwgMTIwMDAwMCwNCit9Ow0KKw0KK3N0YXRpYyBjb25zdCB1MzIgdnJmMThfdm9sdGFn ZXNbXSA9IHsNCisJMTcwMDAwMCwgMTgwMDAwMCwgMTgxMDAwMCwNCit9Ow0KKw0KK3N0YXRpYyBj b25zdCB1MzIgdmJiY2tfdm9sdGFnZXNbXSA9IHsNCisJMTEwMDAwMCwgMTE1MDAwMCwgMTIwMDAw MCwNCit9Ow0KKw0KK3N0YXRpYyBjb25zdCB1MzIgdnNpbTJfdm9sdGFnZXNbXSA9IHsNCisJMTcw MDAwMCwgMTgwMDAwMCwgMjcwMDAwMCwgMzAwMDAwMCwgMzEwMDAwMCwNCit9Ow0KKw0KK3N0YXRp YyBjb25zdCB1MzIgdnNpbTFfaWR4W10gPSB7DQorCTMsIDQsIDgsIDExLCAxMiwNCit9Ow0KKw0K K3N0YXRpYyBjb25zdCB1MzIgdmlicl9pZHhbXSA9IHsNCisJMCwgMSwgMiwgNCwgNSwgOCwgOSwg MTEsIDEzLA0KK307DQorDQorc3RhdGljIGNvbnN0IHUzMiB2cmYxMl9pZHhbXSA9IHsNCisJMiwg MywgNCwNCit9Ow0KKw0KK3N0YXRpYyBjb25zdCB1MzIgdm9sdDE4X2lkeFtdID0gew0KKwkxMSwg MTIsIDEzLA0KK307DQorDQorc3RhdGljIGNvbnN0IHUzMiB2Y24xM19pZHhbXSA9IHsNCisJMCwg MSwgMywgNCwNCit9Ow0KKw0KK3N0YXRpYyBjb25zdCB1MzIgdmNuMzNfaWR4W10gPSB7DQorCTks IDEzLCAxNCwgMTUsDQorfTsNCisNCitzdGF0aWMgY29uc3QgdTMyIHZlZnVzZV9pZHhbXSA9IHsN CisJMTEsIDEyLCAxMywgMTQsDQorfTsNCisNCitzdGF0aWMgY29uc3QgdTMyIHZ4bzIyX2lkeFtd ID0gew0KKwkwLCA0LA0KK307DQorDQorc3RhdGljIGNvbnN0IHUzMiB2cmZja19pZHhbXSA9IHsN CisJMiwgNywgMTIsDQorfTsNCisNCitzdGF0aWMgY29uc3QgdTMyIHZpbzI4X2lkeFtdID0gew0K Kwk5LCAxMCwgMTEsIDEyLCAxMywNCit9Ow0KKw0KK3N0YXRpYyBjb25zdCB1MzIgdmVtY19pZHhb XSA9IHsNCisJMTAsIDExLCAxMywNCit9Ow0KKw0KK3N0YXRpYyBjb25zdCB1MzIgdmExMl9pZHhb XSA9IHsNCisJNiwgNywNCit9Ow0KKw0KK3N0YXRpYyBjb25zdCB1MzIgdmEwOV9pZHhbXSA9IHsN CisJMiwgMywgNiwNCit9Ow0KKw0KK3N0YXRpYyBjb25zdCB1MzIgdnJmMThfaWR4W10gPSB7DQor CTUsIDYsIDcsDQorfTsNCisNCitzdGF0aWMgY29uc3QgdTMyIHZiYmNrX2lkeFtdID0gew0KKwk0 LCA4LCAxMiwNCit9Ow0KKw0KK3N0YXRpYyBjb25zdCB1MzIgdnNpbTJfaWR4W10gPSB7DQorCTMs IDQsIDgsIDExLCAxMiwNCit9Ow0KKw0KK3N0YXRpYyBpbmxpbmUgdW5zaWduZWQgaW50IG10NjM1 OV9tYXBfbW9kZSh1bnNpZ25lZCBpbnQgbW9kZSkNCit7DQorCXN3aXRjaCAobW9kZSkgew0KKwlj YXNlIE1UNjM1OV9CVUNLX01PREVfTk9STUFMOg0KKwkJcmV0dXJuIFJFR1VMQVRPUl9NT0RFX05P Uk1BTDsNCisJY2FzZSBNVDYzNTlfQlVDS19NT0RFX0ZPUkNFX1BXTToNCisJCXJldHVybiBSRUdV TEFUT1JfTU9ERV9GQVNUOw0KKwljYXNlIE1UNjM1OV9CVUNLX01PREVfTFA6DQorCQlyZXR1cm4g UkVHVUxBVE9SX01PREVfSURMRTsNCisJZGVmYXVsdDoNCisJCXJldHVybiBSRUdVTEFUT1JfTU9E RV9JTlZBTElEOw0KKwl9DQorfQ0KKw0KK3N0YXRpYyBpbnQgbXQ2MzU5X3NldF92b2x0YWdlX3Nl bChzdHJ1Y3QgcmVndWxhdG9yX2RldiAqcmRldiwNCisJCQkJICB1bnNpZ25lZCBpbnQgc2VsZWN0 b3IpDQorew0KKwlpbnQgaWR4LCByZXQ7DQorCWNvbnN0IHUzMiAqcHZvbDsNCisJc3RydWN0IG10 NjM1OV9yZWd1bGF0b3JfaW5mbyAqaW5mbyA9IHJkZXZfZ2V0X2RydmRhdGEocmRldik7DQorDQor CXB2b2wgPSBpbmZvLT5pbmRleF90YWJsZTsNCisNCisJaWR4ID0gcHZvbFtzZWxlY3Rvcl07DQor CXJldCA9IHJlZ21hcF91cGRhdGVfYml0cyhyZGV2LT5yZWdtYXAsIGluZm8tPmRlc2MudnNlbF9y ZWcsDQorCQkJCSBpbmZvLT5kZXNjLnZzZWxfbWFzaywNCisJCQkJIGlkeCA8PCBpbmZvLT52c2Vs X3NoaWZ0KTsNCisNCisJcmV0dXJuIHJldDsNCit9DQorDQorc3RhdGljIGludCBtdDYzNTlfZ2V0 X3ZvbHRhZ2Vfc2VsKHN0cnVjdCByZWd1bGF0b3JfZGV2ICpyZGV2KQ0KK3sNCisJaW50IGlkeCwg cmV0Ow0KKwl1MzIgc2VsZWN0b3I7DQorCXN0cnVjdCBtdDYzNTlfcmVndWxhdG9yX2luZm8gKmlu Zm8gPSByZGV2X2dldF9kcnZkYXRhKHJkZXYpOw0KKwljb25zdCB1MzIgKnB2b2w7DQorDQorCXJl dCA9IHJlZ21hcF9yZWFkKHJkZXYtPnJlZ21hcCwgaW5mby0+ZGVzYy52c2VsX3JlZywgJnNlbGVj dG9yKTsNCisJaWYgKHJldCAhPSAwKSB7DQorCQlkZXZfZXJyKCZyZGV2LT5kZXYsDQorCQkJIkZh aWxlZCB0byBnZXQgbXQ2MzU5ICVzIHZzZWwgcmVnOiAlZFxuIiwNCisJCQlpbmZvLT5kZXNjLm5h bWUsIHJldCk7DQorCQlyZXR1cm4gcmV0Ow0KKwl9DQorDQorCXNlbGVjdG9yID0gKHNlbGVjdG9y ICYgaW5mby0+ZGVzYy52c2VsX21hc2spID4+IGluZm8tPnZzZWxfc2hpZnQ7DQorCXB2b2wgPSBp bmZvLT5pbmRleF90YWJsZTsNCisJZm9yIChpZHggPSAwOyBpZHggPCBpbmZvLT5kZXNjLm5fdm9s dGFnZXM7IGlkeCsrKSB7DQorCQlpZiAocHZvbFtpZHhdID09IHNlbGVjdG9yKQ0KKwkJCXJldHVy biBpZHg7DQorCX0NCisNCisJcmV0dXJuIC1FSU5WQUw7DQorfQ0KKw0KK3N0YXRpYyBpbnQgbXQ2 MzU5X2dldF9saW5lYXJfdm9sdGFnZV9zZWwoc3RydWN0IHJlZ3VsYXRvcl9kZXYgKnJkZXYpDQor ew0KKwlzdHJ1Y3QgbXQ2MzU5X3JlZ3VsYXRvcl9pbmZvICppbmZvID0gcmRldl9nZXRfZHJ2ZGF0 YShyZGV2KTsNCisJaW50IHJldCwgcmVndmFsOw0KKw0KKwlyZXQgPSByZWdtYXBfcmVhZChyZGV2 LT5yZWdtYXAsIGluZm8tPmRhX3ZzZWxfcmVnLCAmcmVndmFsKTsNCisJaWYgKHJldCAhPSAwKSB7 DQorCQlkZXZfZXJyKCZyZGV2LT5kZXYsDQorCQkJIkZhaWxlZCB0byBnZXQgbXQ2MzU5IEJ1Y2sg JXMgdnNlbCByZWc6ICVkXG4iLA0KKwkJCWluZm8tPmRlc2MubmFtZSwgcmV0KTsNCisJCXJldHVy biByZXQ7DQorCX0NCisNCisJcmV0ID0gKHJlZ3ZhbCA+PiBpbmZvLT5kYV92c2VsX3NoaWZ0KSAm IGluZm8tPmRhX3ZzZWxfbWFzazsNCisNCisJcmV0dXJuIHJldDsNCit9DQorDQorc3RhdGljIGlu dCBtdDYzNTlfZ2V0X3N0YXR1cyhzdHJ1Y3QgcmVndWxhdG9yX2RldiAqcmRldikNCit7DQorCWlu dCByZXQ7DQorCXUzMiByZWd2YWw7DQorCXN0cnVjdCBtdDYzNTlfcmVndWxhdG9yX2luZm8gKmlu Zm8gPSByZGV2X2dldF9kcnZkYXRhKHJkZXYpOw0KKw0KKwlyZXQgPSByZWdtYXBfcmVhZChyZGV2 LT5yZWdtYXAsIGluZm8tPnN0YXR1c19yZWcsICZyZWd2YWwpOw0KKwlpZiAocmV0ICE9IDApIHsN CisJCWRldl9lcnIoJnJkZXYtPmRldiwgIkZhaWxlZCB0byBnZXQgZW5hYmxlIHJlZzogJWRcbiIs IHJldCk7DQorCQlyZXR1cm4gcmV0Ow0KKwl9DQorDQorCXJldHVybiAocmVndmFsICYgaW5mby0+ cWkpID8gUkVHVUxBVE9SX1NUQVRVU19PTiA6IFJFR1VMQVRPUl9TVEFUVVNfT0ZGOw0KK30NCisN CitzdGF0aWMgdW5zaWduZWQgaW50IG10NjM1OV9yZWd1bGF0b3JfZ2V0X21vZGUoc3RydWN0IHJl Z3VsYXRvcl9kZXYgKnJkZXYpDQorew0KKwlzdHJ1Y3QgbXQ2MzU5X3JlZ3VsYXRvcl9pbmZvICpp bmZvID0gcmRldl9nZXRfZHJ2ZGF0YShyZGV2KTsNCisJaW50IHJldCwgcmVndmFsOw0KKw0KKwly ZXQgPSByZWdtYXBfcmVhZChyZGV2LT5yZWdtYXAsIGluZm8tPm1vZGVzZXRfcmVnLCAmcmVndmFs KTsNCisJaWYgKHJldCAhPSAwKSB7DQorCQlkZXZfZXJyKCZyZGV2LT5kZXYsDQorCQkJIkZhaWxl ZCB0byBnZXQgbXQ2MzU5IGJ1Y2sgbW9kZTogJWRcbiIsIHJldCk7DQorCQlyZXR1cm4gcmV0Ow0K Kwl9DQorDQorCWlmICgocmVndmFsICYgaW5mby0+bW9kZXNldF9tYXNrKSA+PiBpbmZvLT5tb2Rl c2V0X3NoaWZ0ID09DQorCQlNVDYzNTlfQlVDS19NT0RFX0ZPUkNFX1BXTSkNCisJCXJldHVybiBS RUdVTEFUT1JfTU9ERV9GQVNUOw0KKw0KKwlyZXQgPSByZWdtYXBfcmVhZChyZGV2LT5yZWdtYXAs IGluZm8tPmxwX21vZGVfcmVnLCAmcmVndmFsKTsNCisJaWYgKHJldCAhPSAwKSB7DQorCQlkZXZf ZXJyKCZyZGV2LT5kZXYsDQorCQkJIkZhaWxlZCB0byBnZXQgbXQ2MzU5IGJ1Y2sgbHAgbW9kZTog JWRcbiIsIHJldCk7DQorCQlyZXR1cm4gcmV0Ow0KKwl9DQorDQorCWlmIChyZWd2YWwgJiBpbmZv LT5scF9tb2RlX21hc2spDQorCQlyZXR1cm4gUkVHVUxBVE9SX01PREVfSURMRTsNCisJZWxzZQ0K KwkJcmV0dXJuIFJFR1VMQVRPUl9NT0RFX05PUk1BTDsNCit9DQorDQorc3RhdGljIGludCBtdDYz NTlfcmVndWxhdG9yX3NldF9tb2RlKHN0cnVjdCByZWd1bGF0b3JfZGV2ICpyZGV2LA0KKwkJCQkg ICAgIHVuc2lnbmVkIGludCBtb2RlKQ0KK3sNCisJc3RydWN0IG10NjM1OV9yZWd1bGF0b3JfaW5m byAqaW5mbyA9IHJkZXZfZ2V0X2RydmRhdGEocmRldik7DQorCWludCByZXQgPSAwLCB2YWw7DQor CWludCBjdXJyX21vZGU7DQorDQorCWN1cnJfbW9kZSA9IG10NjM1OV9yZWd1bGF0b3JfZ2V0X21v ZGUocmRldik7DQorCXN3aXRjaCAobW9kZSkgew0KKwljYXNlIFJFR1VMQVRPUl9NT0RFX0ZBU1Q6 DQorCQlpZiAoY3Vycl9tb2RlID09IFJFR1VMQVRPUl9NT0RFX0lETEUpIHsNCisJCQlXQVJOX09O KDEpOw0KKwkJCWRldl9ub3RpY2UoJnJkZXYtPmRldiwNCisJCQkJICAgIkJVQ0sgJXMgaXMgTFAg bW9kZSwgY2FuJ3QgRlBXTVxuIiwNCisJCQkJICAgcmRldi0+ZGVzYy0+bmFtZSk7DQorCQkJcmV0 dXJuIC1FSU87DQorCQl9DQorCQl2YWwgPSBNVDYzNTlfQlVDS19NT0RFX0ZPUkNFX1BXTTsNCisJ CXZhbCA8PD0gaW5mby0+bW9kZXNldF9zaGlmdDsNCisJCXJldCA9IHJlZ21hcF91cGRhdGVfYml0 cyhyZGV2LT5yZWdtYXAsDQorCQkJCQkgaW5mby0+bW9kZXNldF9yZWcsDQorCQkJCQkgaW5mby0+ bW9kZXNldF9tYXNrLA0KKwkJCQkJIHZhbCk7DQorCQlicmVhazsNCisJY2FzZSBSRUdVTEFUT1Jf TU9ERV9OT1JNQUw6DQorCQlpZiAoY3Vycl9tb2RlID09IFJFR1VMQVRPUl9NT0RFX0ZBU1QpIHsN CisJCQl2YWwgPSBNVDYzNTlfQlVDS19NT0RFX0FVVE87DQorCQkJdmFsIDw8PSBpbmZvLT5tb2Rl c2V0X3NoaWZ0Ow0KKwkJCXJldCA9IHJlZ21hcF91cGRhdGVfYml0cyhyZGV2LT5yZWdtYXAsDQor CQkJCQkJIGluZm8tPm1vZGVzZXRfcmVnLA0KKwkJCQkJCSBpbmZvLT5tb2Rlc2V0X21hc2ssDQor CQkJCQkJIHZhbCk7DQorCQl9IGVsc2UgaWYgKGN1cnJfbW9kZSA9PSBSRUdVTEFUT1JfTU9ERV9J RExFKSB7DQorCQkJdmFsID0gTVQ2MzU5X0JVQ0tfTU9ERV9OT1JNQUw7DQorCQkJdmFsIDw8PSBp bmZvLT5scF9tb2RlX3NoaWZ0Ow0KKwkJCXJldCA9IHJlZ21hcF91cGRhdGVfYml0cyhyZGV2LT5y ZWdtYXAsDQorCQkJCQkJIGluZm8tPmxwX21vZGVfcmVnLA0KKwkJCQkJCSBpbmZvLT5scF9tb2Rl X21hc2ssDQorCQkJCQkJIHZhbCk7DQorCQkJdWRlbGF5KDEwMCk7DQorCQl9DQorCQlicmVhazsN CisJY2FzZSBSRUdVTEFUT1JfTU9ERV9JRExFOg0KKwkJaWYgKGN1cnJfbW9kZSA9PSBSRUdVTEFU T1JfTU9ERV9GQVNUKSB7DQorCQkJV0FSTl9PTigxKTsNCisJCQlkZXZfbm90aWNlKCZyZGV2LT5k ZXYsDQorCQkJCSAgICJCVUNLICVzIGlzIEZQV00gbW9kZSwgY2FuJ3QgZW50ZXIgTFBcbiIsDQor CQkJCSAgIHJkZXYtPmRlc2MtPm5hbWUpOw0KKwkJCXJldHVybiAtRUlPOw0KKwkJfQ0KKwkJdmFs ID0gTVQ2MzU5X0JVQ0tfTU9ERV9MUCA+PiAxOw0KKwkJdmFsIDw8PSBpbmZvLT5scF9tb2RlX3No aWZ0Ow0KKwkJcmV0ID0gcmVnbWFwX3VwZGF0ZV9iaXRzKHJkZXYtPnJlZ21hcCwNCisJCQkJCSBp bmZvLT5scF9tb2RlX3JlZywNCisJCQkJCSBpbmZvLT5scF9tb2RlX21hc2ssDQorCQkJCQkgdmFs KTsNCisJCWJyZWFrOw0KKwlkZWZhdWx0Og0KKwkJcmV0dXJuIC1FSU5WQUw7DQorCX0NCisNCisJ aWYgKHJldCAhPSAwKSB7DQorCQlkZXZfZXJyKCZyZGV2LT5kZXYsDQorCQkJIkZhaWxlZCB0byBz ZXQgbXQ2MzU5IGJ1Y2sgbW9kZTogJWRcbiIsIHJldCk7DQorCX0NCisNCisJcmV0dXJuIHJldDsN Cit9DQorDQorc3RhdGljIGNvbnN0IHN0cnVjdCByZWd1bGF0b3Jfb3BzIG10NjM1OV92b2x0X3Jh bmdlX29wcyA9IHsNCisJLmxpc3Rfdm9sdGFnZSA9IHJlZ3VsYXRvcl9saXN0X3ZvbHRhZ2VfbGlu ZWFyX3JhbmdlLA0KKwkubWFwX3ZvbHRhZ2UgPSByZWd1bGF0b3JfbWFwX3ZvbHRhZ2VfbGluZWFy X3JhbmdlLA0KKwkuc2V0X3ZvbHRhZ2Vfc2VsID0gcmVndWxhdG9yX3NldF92b2x0YWdlX3NlbF9y ZWdtYXAsDQorCS5nZXRfdm9sdGFnZV9zZWwgPSBtdDYzNTlfZ2V0X2xpbmVhcl92b2x0YWdlX3Nl bCwNCisJLnNldF92b2x0YWdlX3RpbWVfc2VsID0gcmVndWxhdG9yX3NldF92b2x0YWdlX3RpbWVf c2VsLA0KKwkuZW5hYmxlID0gcmVndWxhdG9yX2VuYWJsZV9yZWdtYXAsDQorCS5kaXNhYmxlID0g cmVndWxhdG9yX2Rpc2FibGVfcmVnbWFwLA0KKwkuaXNfZW5hYmxlZCA9IHJlZ3VsYXRvcl9pc19l bmFibGVkX3JlZ21hcCwNCisJLmdldF9zdGF0dXMgPSBtdDYzNTlfZ2V0X3N0YXR1cywNCisJLnNl dF9tb2RlID0gbXQ2MzU5X3JlZ3VsYXRvcl9zZXRfbW9kZSwNCisJLmdldF9tb2RlID0gbXQ2MzU5 X3JlZ3VsYXRvcl9nZXRfbW9kZSwNCit9Ow0KKw0KK3N0YXRpYyBjb25zdCBzdHJ1Y3QgcmVndWxh dG9yX29wcyBtdDYzNTlfdm9sdF90YWJsZV9vcHMgPSB7DQorCS5saXN0X3ZvbHRhZ2UgPSByZWd1 bGF0b3JfbGlzdF92b2x0YWdlX3RhYmxlLA0KKwkubWFwX3ZvbHRhZ2UgPSByZWd1bGF0b3JfbWFw X3ZvbHRhZ2VfaXRlcmF0ZSwNCisJLnNldF92b2x0YWdlX3NlbCA9IG10NjM1OV9zZXRfdm9sdGFn ZV9zZWwsDQorCS5nZXRfdm9sdGFnZV9zZWwgPSBtdDYzNTlfZ2V0X3ZvbHRhZ2Vfc2VsLA0KKwku c2V0X3ZvbHRhZ2VfdGltZV9zZWwgPSByZWd1bGF0b3Jfc2V0X3ZvbHRhZ2VfdGltZV9zZWwsDQor CS5lbmFibGUgPSByZWd1bGF0b3JfZW5hYmxlX3JlZ21hcCwNCisJLmRpc2FibGUgPSByZWd1bGF0 b3JfZGlzYWJsZV9yZWdtYXAsDQorCS5pc19lbmFibGVkID0gcmVndWxhdG9yX2lzX2VuYWJsZWRf cmVnbWFwLA0KKwkuZ2V0X3N0YXR1cyA9IG10NjM1OV9nZXRfc3RhdHVzLA0KK307DQorDQorc3Rh dGljIGNvbnN0IHN0cnVjdCByZWd1bGF0b3Jfb3BzIG10NjM1OV92b2x0X2ZpeGVkX29wcyA9IHsN CisJLmVuYWJsZSA9IHJlZ3VsYXRvcl9lbmFibGVfcmVnbWFwLA0KKwkuZGlzYWJsZSA9IHJlZ3Vs YXRvcl9kaXNhYmxlX3JlZ21hcCwNCisJLmlzX2VuYWJsZWQgPSByZWd1bGF0b3JfaXNfZW5hYmxl ZF9yZWdtYXAsDQorCS5nZXRfc3RhdHVzID0gbXQ2MzU5X2dldF9zdGF0dXMsDQorfTsNCisNCisv KiBUaGUgYXJyYXkgaXMgaW5kZXhlZCBieSBpZChNVDYzNTlfSURfWFhYKSAqLw0KK3N0YXRpYyBz dHJ1Y3QgbXQ2MzU5X3JlZ3VsYXRvcl9pbmZvIG10NjM1OV9yZWd1bGF0b3JzW10gPSB7DQorCU1U NjM1OV9CVUNLKCJidWNrX3ZzMSIsIFZTMSwgODAwMDAwLCAyMjAwMDAwLCAxMjUwMCwgMCwNCisJ CSAgICBtdF92b2x0X3JhbmdlMSwgTVQ2MzU5X1JHX0JVQ0tfVlMxX0VOX0FERFIsDQorCQkgICAg TVQ2MzU5X0RBX1ZTMV9FTl9BRERSLCBNVDYzNTlfREFfVlMxX1ZPU0VMX0FERFIsDQorCQkgICAg TVQ2MzU5X0RBX1ZTMV9WT1NFTF9NQVNLLCBNVDYzNTlfREFfVlMxX1ZPU0VMX1NISUZULA0KKwkJ ICAgIE1UNjM1OV9SR19CVUNLX1ZTMV9WT1NFTF9BRERSLA0KKwkJICAgIE1UNjM1OV9SR19CVUNL X1ZTMV9WT1NFTF9NQVNLIDw8DQorCQkgICAgTVQ2MzU5X1JHX0JVQ0tfVlMxX1ZPU0VMX1NISUZU LA0KKwkJICAgIE1UNjM1OV9SR19CVUNLX1ZTMV9MUF9BRERSLCBNVDYzNTlfUkdfQlVDS19WUzFf TFBfU0hJRlQsDQorCQkgICAgTVQ2MzU5X1JHX1ZTMV9GUFdNX0FERFIsIE1UNjM1OV9SR19WUzFf RlBXTV9TSElGVCksDQorCU1UNjM1OV9CVUNLKCJidWNrX3ZncHUxMSIsIFZHUFUxMSwgNDAwMDAw LCAxMTkzNzUwLCA2MjUwLCAwLA0KKwkJICAgIG10X3ZvbHRfcmFuZ2UyLCBNVDYzNTlfUkdfQlVD S19WR1BVMTFfRU5fQUREUiwNCisJCSAgICBNVDYzNTlfREFfVkdQVTExX0VOX0FERFIsIE1UNjM1 OV9EQV9WR1BVMTFfVk9TRUxfQUREUiwNCisJCSAgICBNVDYzNTlfREFfVkdQVTExX1ZPU0VMX01B U0ssIE1UNjM1OV9EQV9WR1BVMTFfVk9TRUxfU0hJRlQsDQorCQkgICAgTVQ2MzU5X1JHX0JVQ0tf VkdQVTExX1ZPU0VMX0FERFIsDQorCQkgICAgTVQ2MzU5X1JHX0JVQ0tfVkdQVTExX1ZPU0VMX01B U0sgPDwNCisJCSAgICBNVDYzNTlfUkdfQlVDS19WR1BVMTFfVk9TRUxfU0hJRlQsDQorCQkgICAg TVQ2MzU5X1JHX0JVQ0tfVkdQVTExX0xQX0FERFIsDQorCQkgICAgTVQ2MzU5X1JHX0JVQ0tfVkdQ VTExX0xQX1NISUZULA0KKwkJICAgIE1UNjM1OV9SR19WR1BVMTFfRkNDTV9BRERSLCBNVDYzNTlf UkdfVkdQVTExX0ZDQ01fU0hJRlQpLA0KKwlNVDYzNTlfQlVDSygiYnVja192bW9kZW0iLCBWTU9E RU0sIDQwMDAwMCwgMTEwMDAwMCwgNjI1MCwgMCwNCisJCSAgICBtdF92b2x0X3JhbmdlMywgTVQ2 MzU5X1JHX0JVQ0tfVk1PREVNX0VOX0FERFIsDQorCQkgICAgTVQ2MzU5X0RBX1ZNT0RFTV9FTl9B RERSLCBNVDYzNTlfREFfVk1PREVNX1ZPU0VMX0FERFIsDQorCQkgICAgTVQ2MzU5X0RBX1ZNT0RF TV9WT1NFTF9NQVNLLCBNVDYzNTlfREFfVk1PREVNX1ZPU0VMX1NISUZULA0KKwkJICAgIE1UNjM1 OV9SR19CVUNLX1ZNT0RFTV9WT1NFTF9BRERSLA0KKwkJICAgIE1UNjM1OV9SR19CVUNLX1ZNT0RF TV9WT1NFTF9NQVNLIDw8DQorCQkgICAgTVQ2MzU5X1JHX0JVQ0tfVk1PREVNX1ZPU0VMX1NISUZU LA0KKwkJICAgIE1UNjM1OV9SR19CVUNLX1ZNT0RFTV9MUF9BRERSLA0KKwkJICAgIE1UNjM1OV9S R19CVUNLX1ZNT0RFTV9MUF9TSElGVCwNCisJCSAgICBNVDYzNTlfUkdfVk1PREVNX0ZDQ01fQURE UiwgTVQ2MzU5X1JHX1ZNT0RFTV9GQ0NNX1NISUZUKSwNCisJTVQ2MzU5X0JVQ0soImJ1Y2tfdnB1 IiwgVlBVLCA0MDAwMDAsIDExOTM3NTAsIDYyNTAsIDAsDQorCQkgICAgbXRfdm9sdF9yYW5nZTIs IE1UNjM1OV9SR19CVUNLX1ZQVV9FTl9BRERSLA0KKwkJICAgIE1UNjM1OV9EQV9WUFVfRU5fQURE UiwgTVQ2MzU5X0RBX1ZQVV9WT1NFTF9BRERSLA0KKwkJICAgIE1UNjM1OV9EQV9WUFVfVk9TRUxf TUFTSywgTVQ2MzU5X0RBX1ZQVV9WT1NFTF9TSElGVCwNCisJCSAgICBNVDYzNTlfUkdfQlVDS19W UFVfVk9TRUxfQUREUiwNCisJCSAgICBNVDYzNTlfUkdfQlVDS19WUFVfVk9TRUxfTUFTSyA8PA0K KwkJICAgIE1UNjM1OV9SR19CVUNLX1ZQVV9WT1NFTF9TSElGVCwNCisJCSAgICBNVDYzNTlfUkdf QlVDS19WUFVfTFBfQUREUiwgTVQ2MzU5X1JHX0JVQ0tfVlBVX0xQX1NISUZULA0KKwkJICAgIE1U NjM1OV9SR19WUFVfRkNDTV9BRERSLCBNVDYzNTlfUkdfVlBVX0ZDQ01fU0hJRlQpLA0KKwlNVDYz NTlfQlVDSygiYnVja192Y29yZSIsIFZDT1JFLCA0MDAwMDAsIDExOTM3NTAsIDYyNTAsIDAsDQor CQkgICAgbXRfdm9sdF9yYW5nZTIsIE1UNjM1OV9SR19CVUNLX1ZDT1JFX0VOX0FERFIsDQorCQkg ICAgTVQ2MzU5X0RBX1ZDT1JFX0VOX0FERFIsIE1UNjM1OV9EQV9WQ09SRV9WT1NFTF9BRERSLA0K KwkJICAgIE1UNjM1OV9EQV9WQ09SRV9WT1NFTF9NQVNLLCBNVDYzNTlfREFfVkNPUkVfVk9TRUxf U0hJRlQsDQorCQkgICAgTVQ2MzU5X1JHX0JVQ0tfVkNPUkVfVk9TRUxfQUREUiwNCisJCSAgICBN VDYzNTlfUkdfQlVDS19WQ09SRV9WT1NFTF9NQVNLIDw8DQorCQkgICAgTVQ2MzU5X1JHX0JVQ0tf VkNPUkVfVk9TRUxfU0hJRlQsDQorCQkgICAgTVQ2MzU5X1JHX0JVQ0tfVkNPUkVfTFBfQUREUiwg TVQ2MzU5X1JHX0JVQ0tfVkNPUkVfTFBfU0hJRlQsDQorCQkgICAgTVQ2MzU5X1JHX1ZDT1JFX0ZD Q01fQUREUiwgTVQ2MzU5X1JHX1ZDT1JFX0ZDQ01fU0hJRlQpLA0KKwlNVDYzNTlfQlVDSygiYnVj a192czIiLCBWUzIsIDgwMDAwMCwgMTYwMDAwMCwgMTI1MDAsIDAsDQorCQkgICAgbXRfdm9sdF9y YW5nZTQsIE1UNjM1OV9SR19CVUNLX1ZTMl9FTl9BRERSLA0KKwkJICAgIE1UNjM1OV9EQV9WUzJf RU5fQUREUiwgTVQ2MzU5X0RBX1ZTMl9WT1NFTF9BRERSLA0KKwkJICAgIE1UNjM1OV9EQV9WUzJf Vk9TRUxfTUFTSywgTVQ2MzU5X0RBX1ZTMl9WT1NFTF9TSElGVCwNCisJCSAgICBNVDYzNTlfUkdf QlVDS19WUzJfVk9TRUxfQUREUiwNCisJCSAgICBNVDYzNTlfUkdfQlVDS19WUzJfVk9TRUxfTUFT SyA8PA0KKwkJICAgIE1UNjM1OV9SR19CVUNLX1ZTMl9WT1NFTF9TSElGVCwNCisJCSAgICBNVDYz NTlfUkdfQlVDS19WUzJfTFBfQUREUiwgTVQ2MzU5X1JHX0JVQ0tfVlMyX0xQX1NISUZULA0KKwkJ ICAgIE1UNjM1OV9SR19WUzJfRlBXTV9BRERSLCBNVDYzNTlfUkdfVlMyX0ZQV01fU0hJRlQpLA0K KwlNVDYzNTlfQlVDSygiYnVja192cGEiLCBWUEEsIDUwMDAwMCwgMzY1MDAwMCwgNTAwMDAsIDAs DQorCQkgICAgbXRfdm9sdF9yYW5nZTUsIE1UNjM1OV9SR19CVUNLX1ZQQV9FTl9BRERSLA0KKwkJ ICAgIE1UNjM1OV9EQV9WUEFfRU5fQUREUiwgTVQ2MzU5X0RBX1ZQQV9WT1NFTF9BRERSLA0KKwkJ ICAgIE1UNjM1OV9EQV9WUEFfVk9TRUxfTUFTSywgTVQ2MzU5X0RBX1ZQQV9WT1NFTF9TSElGVCwN CisJCSAgICBNVDYzNTlfUkdfQlVDS19WUEFfVk9TRUxfQUREUiwNCisJCSAgICBNVDYzNTlfUkdf QlVDS19WUEFfVk9TRUxfTUFTSyA8PA0KKwkJICAgIE1UNjM1OV9SR19CVUNLX1ZQQV9WT1NFTF9T SElGVCwNCisJCSAgICBNVDYzNTlfUkdfQlVDS19WUEFfTFBfQUREUiwgTVQ2MzU5X1JHX0JVQ0tf VlBBX0xQX1NISUZULA0KKwkJICAgIE1UNjM1OV9SR19WUEFfTU9ERVNFVF9BRERSLCBNVDYzNTlf UkdfVlBBX01PREVTRVRfU0hJRlQpLA0KKwlNVDYzNTlfQlVDSygiYnVja192cHJvYzIiLCBWUFJP QzIsIDQwMDAwMCwgMTE5Mzc1MCwgNjI1MCwgMCwNCisJCSAgICBtdF92b2x0X3JhbmdlMiwgTVQ2 MzU5X1JHX0JVQ0tfVlBST0MyX0VOX0FERFIsDQorCQkgICAgTVQ2MzU5X0RBX1ZQUk9DMl9FTl9B RERSLCBNVDYzNTlfREFfVlBST0MyX1ZPU0VMX0FERFIsDQorCQkgICAgTVQ2MzU5X0RBX1ZQUk9D Ml9WT1NFTF9NQVNLLCBNVDYzNTlfREFfVlBST0MyX1ZPU0VMX1NISUZULA0KKwkJICAgIE1UNjM1 OV9SR19CVUNLX1ZQUk9DMl9WT1NFTF9BRERSLA0KKwkJICAgIE1UNjM1OV9SR19CVUNLX1ZQUk9D Ml9WT1NFTF9NQVNLIDw8DQorCQkgICAgTVQ2MzU5X1JHX0JVQ0tfVlBST0MyX1ZPU0VMX1NISUZU LA0KKwkJICAgIE1UNjM1OV9SR19CVUNLX1ZQUk9DMl9MUF9BRERSLA0KKwkJICAgIE1UNjM1OV9S R19CVUNLX1ZQUk9DMl9MUF9TSElGVCwNCisJCSAgICBNVDYzNTlfUkdfVlBST0MyX0ZDQ01fQURE UiwgTVQ2MzU5X1JHX1ZQUk9DMl9GQ0NNX1NISUZUKSwNCisJTVQ2MzU5X0JVQ0soImJ1Y2tfdnBy b2MxIiwgVlBST0MxLCA0MDAwMDAsIDExOTM3NTAsIDYyNTAsIDAsDQorCQkgICAgbXRfdm9sdF9y YW5nZTIsIE1UNjM1OV9SR19CVUNLX1ZQUk9DMV9FTl9BRERSLA0KKwkJICAgIE1UNjM1OV9EQV9W UFJPQzFfRU5fQUREUiwgTVQ2MzU5X0RBX1ZQUk9DMV9WT1NFTF9BRERSLA0KKwkJICAgIE1UNjM1 OV9EQV9WUFJPQzFfVk9TRUxfTUFTSywgTVQ2MzU5X0RBX1ZQUk9DMV9WT1NFTF9TSElGVCwNCisJ CSAgICBNVDYzNTlfUkdfQlVDS19WUFJPQzFfVk9TRUxfQUREUiwNCisJCSAgICBNVDYzNTlfUkdf QlVDS19WUFJPQzFfVk9TRUxfTUFTSyA8PA0KKwkJICAgIE1UNjM1OV9SR19CVUNLX1ZQUk9DMV9W T1NFTF9TSElGVCwNCisJCSAgICBNVDYzNTlfUkdfQlVDS19WUFJPQzFfTFBfQUREUiwNCisJCSAg ICBNVDYzNTlfUkdfQlVDS19WUFJPQzFfTFBfU0hJRlQsDQorCQkgICAgTVQ2MzU5X1JHX1ZQUk9D MV9GQ0NNX0FERFIsIE1UNjM1OV9SR19WUFJPQzFfRkNDTV9TSElGVCksDQorCU1UNjM1OV9CVUNL KCJidWNrX3Zjb3JlX3NzaHViIiwgVkNPUkVfU1NIVUIsIDQwMDAwMCwgMTE5Mzc1MCwgNjI1MCwg MCwNCisJCSAgICBtdF92b2x0X3JhbmdlMiwgTVQ2MzU5X1JHX0JVQ0tfVkNPUkVfU1NIVUJfRU5f QUREUiwNCisJCSAgICBNVDYzNTlfREFfVkNPUkVfRU5fQUREUiwNCisJCSAgICBNVDYzNTlfUkdf QlVDS19WQ09SRV9TU0hVQl9WT1NFTF9BRERSLA0KKwkJICAgIE1UNjM1OV9SR19CVUNLX1ZDT1JF X1NTSFVCX1ZPU0VMX01BU0ssDQorCQkgICAgTVQ2MzU5X1JHX0JVQ0tfVkNPUkVfU1NIVUJfVk9T RUxfU0hJRlQsDQorCQkgICAgTVQ2MzU5X1JHX0JVQ0tfVkNPUkVfU1NIVUJfVk9TRUxfQUREUiwN CisJCSAgICBNVDYzNTlfUkdfQlVDS19WQ09SRV9TU0hVQl9WT1NFTF9NQVNLIDw8DQorCQkgICAg TVQ2MzU5X1JHX0JVQ0tfVkNPUkVfU1NIVUJfVk9TRUxfU0hJRlQsDQorCQkgICAgTVQ2MzU5X1JH X0JVQ0tfVkNPUkVfTFBfQUREUiwgTVQ2MzU5X1JHX0JVQ0tfVkNPUkVfTFBfU0hJRlQsDQorCQkg ICAgTVQ2MzU5X1JHX1ZDT1JFX0ZDQ01fQUREUiwgTVQ2MzU5X1JHX1ZDT1JFX0ZDQ01fU0hJRlQp LA0KKwlNVDYzNTlfUkVHX0ZJWEVEKCJsZG9fdmF1ZDE4IiwgVkFVRDE4LCBNVDYzNTlfUkdfTERP X1ZBVUQxOF9FTl9BRERSLA0KKwkJCSBNVDYzNTlfREFfVkFVRDE4X0JfRU5fQUREUiwgMTgwMDAw MCksDQorCU1UNjM1OV9MRE8oImxkb192c2ltMSIsIFZTSU0xLCB2c2ltMV92b2x0YWdlcywgdnNp bTFfaWR4LA0KKwkJICAgTVQ2MzU5X1JHX0xET19WU0lNMV9FTl9BRERSLCBNVDYzNTlfUkdfTERP X1ZTSU0xX0VOX1NISUZULA0KKwkJICAgTVQ2MzU5X0RBX1ZTSU0xX0JfRU5fQUREUiwgTVQ2MzU5 X1JHX1ZTSU0xX1ZPU0VMX0FERFIsDQorCQkgICBNVDYzNTlfUkdfVlNJTTFfVk9TRUxfTUFTSyA8 PCBNVDYzNTlfUkdfVlNJTTFfVk9TRUxfU0hJRlQsDQorCQkgICBNVDYzNTlfUkdfVlNJTTFfVk9T RUxfU0hJRlQpLA0KKwlNVDYzNTlfTERPKCJsZG9fdmliciIsIFZJQlIsIHZpYnJfdm9sdGFnZXMs IHZpYnJfaWR4LA0KKwkJICAgTVQ2MzU5X1JHX0xET19WSUJSX0VOX0FERFIsIE1UNjM1OV9SR19M RE9fVklCUl9FTl9TSElGVCwNCisJCSAgIE1UNjM1OV9EQV9WSUJSX0JfRU5fQUREUiwgTVQ2MzU5 X1JHX1ZJQlJfVk9TRUxfQUREUiwNCisJCSAgIE1UNjM1OV9SR19WSUJSX1ZPU0VMX01BU0sgPDwg TVQ2MzU5X1JHX1ZJQlJfVk9TRUxfU0hJRlQsDQorCQkgICBNVDYzNTlfUkdfVklCUl9WT1NFTF9T SElGVCksDQorCU1UNjM1OV9MRE8oImxkb192cmYxMiIsIFZSRjEyLCB2cmYxMl92b2x0YWdlcywg dnJmMTJfaWR4LA0KKwkJICAgTVQ2MzU5X1JHX0xET19WUkYxMl9FTl9BRERSLCBNVDYzNTlfUkdf TERPX1ZSRjEyX0VOX1NISUZULA0KKwkJICAgTVQ2MzU5X0RBX1ZSRjEyX0JfRU5fQUREUiwgTVQ2 MzU5X1JHX1ZSRjEyX1ZPU0VMX0FERFIsDQorCQkgICBNVDYzNTlfUkdfVlJGMTJfVk9TRUxfTUFT SyA8PCBNVDYzNTlfUkdfVlJGMTJfVk9TRUxfU0hJRlQsDQorCQkgICBNVDYzNTlfUkdfVlJGMTJf Vk9TRUxfU0hJRlQpLA0KKwlNVDYzNTlfUkVHX0ZJWEVEKCJsZG9fdnVzYiIsIFZVU0IsIE1UNjM1 OV9SR19MRE9fVlVTQl9FTl8wX0FERFIsDQorCQkJIE1UNjM1OV9EQV9WVVNCX0JfRU5fQUREUiwg MzAwMDAwMCksDQorCU1UNjM1OV9MRE9fTElORUFSKCJsZG9fdnNyYW1fcHJvYzIiLCBWU1JBTV9Q Uk9DMiwgNTAwMDAwLCAxMTkzNzUwLCA2MjUwLA0KKwkJCSAgMCwgbXRfdm9sdF9yYW5nZTYsIE1U NjM1OV9SR19MRE9fVlNSQU1fUFJPQzJfRU5fQUREUiwNCisJCQkgIE1UNjM1OV9EQV9WU1JBTV9Q Uk9DMl9CX0VOX0FERFIsDQorCQkJICBNVDYzNTlfREFfVlNSQU1fUFJPQzJfVk9TRUxfQUREUiwN CisJCQkgIE1UNjM1OV9EQV9WU1JBTV9QUk9DMl9WT1NFTF9NQVNLLA0KKwkJCSAgTVQ2MzU5X0RB X1ZTUkFNX1BST0MyX1ZPU0VMX1NISUZULA0KKwkJCSAgTVQ2MzU5X1JHX0xET19WU1JBTV9QUk9D Ml9WT1NFTF9BRERSLA0KKwkJCSAgTVQ2MzU5X1JHX0xET19WU1JBTV9QUk9DMl9WT1NFTF9NQVNL IDw8DQorCQkJICBNVDYzNTlfUkdfTERPX1ZTUkFNX1BST0MyX1ZPU0VMX1NISUZUKSwNCisJTVQ2 MzU5X0xETygibGRvX3ZpbzE4IiwgVklPMTgsIHZvbHQxOF92b2x0YWdlcywgdm9sdDE4X2lkeCwN CisJCSAgIE1UNjM1OV9SR19MRE9fVklPMThfRU5fQUREUiwgTVQ2MzU5X1JHX0xET19WSU8xOF9F Tl9TSElGVCwNCisJCSAgIE1UNjM1OV9EQV9WSU8xOF9CX0VOX0FERFIsIE1UNjM1OV9SR19WSU8x OF9WT1NFTF9BRERSLA0KKwkJICAgTVQ2MzU5X1JHX1ZJTzE4X1ZPU0VMX01BU0sgPDwgTVQ2MzU5 X1JHX1ZJTzE4X1ZPU0VMX1NISUZULA0KKwkJICAgTVQ2MzU5X1JHX1ZJTzE4X1ZPU0VMX1NISUZU KSwNCisJTVQ2MzU5X0xETygibGRvX3ZjYW1pbyIsIFZDQU1JTywgdm9sdDE4X3ZvbHRhZ2VzLCB2 b2x0MThfaWR4LA0KKwkJICAgTVQ2MzU5X1JHX0xET19WQ0FNSU9fRU5fQUREUiwgTVQ2MzU5X1JH X0xET19WQ0FNSU9fRU5fU0hJRlQsDQorCQkgICBNVDYzNTlfREFfVkNBTUlPX0JfRU5fQUREUiwg TVQ2MzU5X1JHX1ZDQU1JT19WT1NFTF9BRERSLA0KKwkJICAgTVQ2MzU5X1JHX1ZDQU1JT19WT1NF TF9NQVNLIDw8IE1UNjM1OV9SR19WQ0FNSU9fVk9TRUxfU0hJRlQsDQorCQkgICBNVDYzNTlfUkdf VkNBTUlPX1ZPU0VMX1NISUZUKSwNCisJTVQ2MzU5X1JFR19GSVhFRCgibGRvX3ZjbjE4IiwgVkNO MTgsIE1UNjM1OV9SR19MRE9fVkNOMThfRU5fQUREUiwNCisJCQkgTVQ2MzU5X0RBX1ZDTjE4X0Jf RU5fQUREUiwgMTgwMDAwMCksDQorCU1UNjM1OV9SRUdfRklYRUQoImxkb192ZmUyOCIsIFZGRTI4 LCBNVDYzNTlfUkdfTERPX1ZGRTI4X0VOX0FERFIsDQorCQkJIE1UNjM1OV9EQV9WRkUyOF9CX0VO X0FERFIsIDI4MDAwMDApLA0KKwlNVDYzNTlfTERPKCJsZG9fdmNuMTMiLCBWQ04xMywgdmNuMTNf dm9sdGFnZXMsIHZjbjEzX2lkeCwNCisJCSAgIE1UNjM1OV9SR19MRE9fVkNOMTNfRU5fQUREUiwg TVQ2MzU5X1JHX0xET19WQ04xM19FTl9TSElGVCwNCisJCSAgIE1UNjM1OV9EQV9WQ04xM19CX0VO X0FERFIsIE1UNjM1OV9SR19WQ04xM19WT1NFTF9BRERSLA0KKwkJICAgTVQ2MzU5X1JHX1ZDTjEz X1ZPU0VMX01BU0sgPDwgTVQ2MzU5X1JHX1ZDTjEzX1ZPU0VMX1NISUZULA0KKwkJICAgTVQ2MzU5 X1JHX1ZDTjEzX1ZPU0VMX1NISUZUKSwNCisJTVQ2MzU5X0xETygibGRvX3ZjbjMzXzFfYnQiLCBW Q04zM18xX0JULCB2Y24zM192b2x0YWdlcywgdmNuMzNfaWR4LA0KKwkJICAgTVQ2MzU5X1JHX0xE T19WQ04zM18xX0VOXzBfQUREUiwNCisJCSAgIE1UNjM1OV9SR19MRE9fVkNOMzNfMV9FTl8wX1NI SUZULA0KKwkJICAgTVQ2MzU5X0RBX1ZDTjMzXzFfQl9FTl9BRERSLCBNVDYzNTlfUkdfVkNOMzNf MV9WT1NFTF9BRERSLA0KKwkJICAgTVQ2MzU5X1JHX1ZDTjMzXzFfVk9TRUxfTUFTSyA8PA0KKwkJ ICAgTVQ2MzU5X1JHX1ZDTjMzXzFfVk9TRUxfU0hJRlQsDQorCQkgICBNVDYzNTlfUkdfVkNOMzNf MV9WT1NFTF9TSElGVCksDQorCU1UNjM1OV9MRE8oImxkb192Y24zM18xX3dpZmkiLCBWQ04zM18x X1dJRkksIHZjbjMzX3ZvbHRhZ2VzLCB2Y24zM19pZHgsDQorCQkgICBNVDYzNTlfUkdfTERPX1ZD TjMzXzFfRU5fMV9BRERSLA0KKwkJICAgTVQ2MzU5X1JHX0xET19WQ04zM18xX0VOXzFfU0hJRlQs DQorCQkgICBNVDYzNTlfREFfVkNOMzNfMV9CX0VOX0FERFIsIE1UNjM1OV9SR19WQ04zM18xX1ZP U0VMX0FERFIsDQorCQkgICBNVDYzNTlfUkdfVkNOMzNfMV9WT1NFTF9NQVNLIDw8DQorCQkgICBN VDYzNTlfUkdfVkNOMzNfMV9WT1NFTF9TSElGVCwNCisJCSAgIE1UNjM1OV9SR19WQ04zM18xX1ZP U0VMX1NISUZUKSwNCisJTVQ2MzU5X1JFR19GSVhFRCgibGRvX3ZhdXgxOCIsIFZBVVgxOCwgTVQ2 MzU5X1JHX0xET19WQVVYMThfRU5fQUREUiwNCisJCQkgTVQ2MzU5X0RBX1ZBVVgxOF9CX0VOX0FE RFIsIDE4MDAwMDApLA0KKwlNVDYzNTlfTERPX0xJTkVBUigibGRvX3ZzcmFtX290aGVycyIsIFZT UkFNX09USEVSUywgNTAwMDAwLCAxMTkzNzUwLA0KKwkJCSAgNjI1MCwgMCwgbXRfdm9sdF9yYW5n ZTYsDQorCQkJICBNVDYzNTlfUkdfTERPX1ZTUkFNX09USEVSU19FTl9BRERSLA0KKwkJCSAgTVQ2 MzU5X0RBX1ZTUkFNX09USEVSU19CX0VOX0FERFIsDQorCQkJICBNVDYzNTlfREFfVlNSQU1fT1RI RVJTX1ZPU0VMX0FERFIsDQorCQkJICBNVDYzNTlfREFfVlNSQU1fT1RIRVJTX1ZPU0VMX01BU0ss DQorCQkJICBNVDYzNTlfREFfVlNSQU1fT1RIRVJTX1ZPU0VMX1NISUZULA0KKwkJCSAgTVQ2MzU5 X1JHX0xET19WU1JBTV9PVEhFUlNfVk9TRUxfQUREUiwNCisJCQkgIE1UNjM1OV9SR19MRE9fVlNS QU1fT1RIRVJTX1ZPU0VMX01BU0sgPDwNCisJCQkgIE1UNjM1OV9SR19MRE9fVlNSQU1fT1RIRVJT X1ZPU0VMX1NISUZUKSwNCisJTVQ2MzU5X0xETygibGRvX3ZlZnVzZSIsIFZFRlVTRSwgdmVmdXNl X3ZvbHRhZ2VzLCB2ZWZ1c2VfaWR4LA0KKwkJICAgTVQ2MzU5X1JHX0xET19WRUZVU0VfRU5fQURE UiwgTVQ2MzU5X1JHX0xET19WRUZVU0VfRU5fU0hJRlQsDQorCQkgICBNVDYzNTlfREFfVkVGVVNF X0JfRU5fQUREUiwgTVQ2MzU5X1JHX1ZFRlVTRV9WT1NFTF9BRERSLA0KKwkJICAgTVQ2MzU5X1JH X1ZFRlVTRV9WT1NFTF9NQVNLIDw8IE1UNjM1OV9SR19WRUZVU0VfVk9TRUxfU0hJRlQsDQorCQkg ICBNVDYzNTlfUkdfVkVGVVNFX1ZPU0VMX1NISUZUKSwNCisJTVQ2MzU5X0xETygibGRvX3Z4bzIy IiwgVlhPMjIsIHZ4bzIyX3ZvbHRhZ2VzLCB2eG8yMl9pZHgsDQorCQkgICBNVDYzNTlfUkdfTERP X1ZYTzIyX0VOX0FERFIsIE1UNjM1OV9SR19MRE9fVlhPMjJfRU5fU0hJRlQsDQorCQkgICBNVDYz NTlfREFfVlhPMjJfQl9FTl9BRERSLCBNVDYzNTlfUkdfVlhPMjJfVk9TRUxfQUREUiwNCisJCSAg IE1UNjM1OV9SR19WWE8yMl9WT1NFTF9NQVNLIDw8IE1UNjM1OV9SR19WWE8yMl9WT1NFTF9TSElG VCwNCisJCSAgIE1UNjM1OV9SR19WWE8yMl9WT1NFTF9TSElGVCksDQorCU1UNjM1OV9MRE8oImxk b192cmZjayIsIFZSRkNLLCB2cmZja192b2x0YWdlcywgdnJmY2tfaWR4LA0KKwkJICAgTVQ2MzU5 X1JHX0xET19WUkZDS19FTl9BRERSLCBNVDYzNTlfUkdfTERPX1ZSRkNLX0VOX1NISUZULA0KKwkJ ICAgTVQ2MzU5X0RBX1ZSRkNLX0JfRU5fQUREUiwgTVQ2MzU5X1JHX1ZSRkNLX1ZPU0VMX0FERFIs DQorCQkgICBNVDYzNTlfUkdfVlJGQ0tfVk9TRUxfTUFTSyA8PCBNVDYzNTlfUkdfVlJGQ0tfVk9T RUxfU0hJRlQsDQorCQkgICBNVDYzNTlfUkdfVlJGQ0tfVk9TRUxfU0hJRlQpLA0KKwlNVDYzNTlf UkVHX0ZJWEVEKCJsZG9fdmJpZjI4IiwgVkJJRjI4LCBNVDYzNTlfUkdfTERPX1ZCSUYyOF9FTl9B RERSLA0KKwkJCSBNVDYzNTlfREFfVkJJRjI4X0JfRU5fQUREUiwgMjgwMDAwMCksDQorCU1UNjM1 OV9MRE8oImxkb192aW8yOCIsIFZJTzI4LCB2aW8yOF92b2x0YWdlcywgdmlvMjhfaWR4LA0KKwkJ ICAgTVQ2MzU5X1JHX0xET19WSU8yOF9FTl9BRERSLCBNVDYzNTlfUkdfTERPX1ZJTzI4X0VOX1NI SUZULA0KKwkJICAgTVQ2MzU5X0RBX1ZJTzI4X0JfRU5fQUREUiwgTVQ2MzU5X1JHX1ZJTzI4X1ZP U0VMX0FERFIsDQorCQkgICBNVDYzNTlfUkdfVklPMjhfVk9TRUxfTUFTSyA8PCBNVDYzNTlfUkdf VklPMjhfVk9TRUxfU0hJRlQsDQorCQkgICBNVDYzNTlfUkdfVklPMjhfVk9TRUxfU0hJRlQpLA0K KwlNVDYzNTlfTERPKCJsZG9fdmVtYyIsIFZFTUMsIHZlbWNfdm9sdGFnZXMsIHZlbWNfaWR4LA0K KwkJICAgTVQ2MzU5X1JHX0xET19WRU1DX0VOX0FERFIsIE1UNjM1OV9SR19MRE9fVkVNQ19FTl9T SElGVCwNCisJCSAgIE1UNjM1OV9EQV9WRU1DX0JfRU5fQUREUiwgTVQ2MzU5X1JHX1ZFTUNfVk9T RUxfQUREUiwNCisJCSAgIE1UNjM1OV9SR19WRU1DX1ZPU0VMX01BU0sgPDwgTVQ2MzU5X1JHX1ZF TUNfVk9TRUxfU0hJRlQsDQorCQkgICBNVDYzNTlfUkdfVkVNQ19WT1NFTF9TSElGVCksDQorCU1U NjM1OV9MRE8oImxkb192Y24zM18yX2J0IiwgVkNOMzNfMl9CVCwgdmNuMzNfdm9sdGFnZXMsIHZj bjMzX2lkeCwNCisJCSAgIE1UNjM1OV9SR19MRE9fVkNOMzNfMl9FTl8wX0FERFIsDQorCQkgICBN VDYzNTlfUkdfTERPX1ZDTjMzXzJfRU5fMF9TSElGVCwNCisJCSAgIE1UNjM1OV9EQV9WQ04zM18y X0JfRU5fQUREUiwgTVQ2MzU5X1JHX1ZDTjMzXzJfVk9TRUxfQUREUiwNCisJCSAgIE1UNjM1OV9S R19WQ04zM18yX1ZPU0VMX01BU0sgPDwNCisJCSAgIE1UNjM1OV9SR19WQ04zM18yX1ZPU0VMX1NI SUZULA0KKwkJICAgTVQ2MzU5X1JHX1ZDTjMzXzJfVk9TRUxfU0hJRlQpLA0KKwlNVDYzNTlfTERP KCJsZG9fdmNuMzNfMl93aWZpIiwgVkNOMzNfMl9XSUZJLCB2Y24zM192b2x0YWdlcywgdmNuMzNf aWR4LA0KKwkJICAgTVQ2MzU5X1JHX0xET19WQ04zM18yX0VOXzFfQUREUiwNCisJCSAgIE1UNjM1 OV9SR19MRE9fVkNOMzNfMl9FTl8xX1NISUZULA0KKwkJICAgTVQ2MzU5X0RBX1ZDTjMzXzJfQl9F Tl9BRERSLCBNVDYzNTlfUkdfVkNOMzNfMl9WT1NFTF9BRERSLA0KKwkJICAgTVQ2MzU5X1JHX1ZD TjMzXzJfVk9TRUxfTUFTSyA8PA0KKwkJICAgTVQ2MzU5X1JHX1ZDTjMzXzJfVk9TRUxfU0hJRlQs DQorCQkgICBNVDYzNTlfUkdfVkNOMzNfMl9WT1NFTF9TSElGVCksDQorCU1UNjM1OV9MRE8oImxk b192YTEyIiwgVkExMiwgdmExMl92b2x0YWdlcywgdmExMl9pZHgsDQorCQkgICBNVDYzNTlfUkdf TERPX1ZBMTJfRU5fQUREUiwgTVQ2MzU5X1JHX0xET19WQTEyX0VOX1NISUZULA0KKwkJICAgTVQ2 MzU5X0RBX1ZBMTJfQl9FTl9BRERSLCBNVDYzNTlfUkdfVkExMl9WT1NFTF9BRERSLA0KKwkJICAg TVQ2MzU5X1JHX1ZBMTJfVk9TRUxfTUFTSyA8PCBNVDYzNTlfUkdfVkExMl9WT1NFTF9TSElGVCwN CisJCSAgIE1UNjM1OV9SR19WQTEyX1ZPU0VMX1NISUZUKSwNCisJTVQ2MzU5X0xETygibGRvX3Zh MDkiLCBWQTA5LCB2YTA5X3ZvbHRhZ2VzLCB2YTA5X2lkeCwNCisJCSAgIE1UNjM1OV9SR19MRE9f VkEwOV9FTl9BRERSLCBNVDYzNTlfUkdfTERPX1ZBMDlfRU5fU0hJRlQsDQorCQkgICBNVDYzNTlf REFfVkEwOV9CX0VOX0FERFIsIE1UNjM1OV9SR19WQTA5X1ZPU0VMX0FERFIsDQorCQkgICBNVDYz NTlfUkdfVkEwOV9WT1NFTF9NQVNLIDw8IE1UNjM1OV9SR19WQTA5X1ZPU0VMX1NISUZULA0KKwkJ ICAgTVQ2MzU5X1JHX1ZBMDlfVk9TRUxfU0hJRlQpLA0KKwlNVDYzNTlfTERPKCJsZG9fdnJmMTgi LCBWUkYxOCwgdnJmMThfdm9sdGFnZXMsIHZyZjE4X2lkeCwNCisJCSAgIE1UNjM1OV9SR19MRE9f VlJGMThfRU5fQUREUiwgTVQ2MzU5X1JHX0xET19WUkYxOF9FTl9TSElGVCwNCisJCSAgIE1UNjM1 OV9EQV9WUkYxOF9CX0VOX0FERFIsIE1UNjM1OV9SR19WUkYxOF9WT1NFTF9BRERSLA0KKwkJICAg TVQ2MzU5X1JHX1ZSRjE4X1ZPU0VMX01BU0sgPDwgTVQ2MzU5X1JHX1ZSRjE4X1ZPU0VMX1NISUZU LA0KKwkJICAgTVQ2MzU5X1JHX1ZSRjE4X1ZPU0VMX1NISUZUKSwNCisJTVQ2MzU5X0xET19MSU5F QVIoImxkb192c3JhbV9tZCIsIFZTUkFNX01ELCA1MDAwMDAsIDExMDAwMDAsIDYyNTAsDQorCQkJ ICAwLCBtdF92b2x0X3JhbmdlNywgTVQ2MzU5X1JHX0xET19WU1JBTV9NRF9FTl9BRERSLA0KKwkJ CSAgTVQ2MzU5X0RBX1ZTUkFNX01EX0JfRU5fQUREUiwNCisJCQkgIE1UNjM1OV9EQV9WU1JBTV9N RF9WT1NFTF9BRERSLA0KKwkJCSAgTVQ2MzU5X0RBX1ZTUkFNX01EX1ZPU0VMX01BU0ssDQorCQkJ ICBNVDYzNTlfREFfVlNSQU1fTURfVk9TRUxfU0hJRlQsDQorCQkJICBNVDYzNTlfUkdfTERPX1ZT UkFNX01EX1ZPU0VMX0FERFIsDQorCQkJICBNVDYzNTlfUkdfTERPX1ZTUkFNX01EX1ZPU0VMX01B U0sgPDwNCisJCQkgIE1UNjM1OV9SR19MRE9fVlNSQU1fTURfVk9TRUxfU0hJRlQpLA0KKwlNVDYz NTlfTERPKCJsZG9fdnVmcyIsIFZVRlMsIHZvbHQxOF92b2x0YWdlcywgdm9sdDE4X2lkeCwNCisJ CSAgIE1UNjM1OV9SR19MRE9fVlVGU19FTl9BRERSLCBNVDYzNTlfUkdfTERPX1ZVRlNfRU5fU0hJ RlQsDQorCQkgICBNVDYzNTlfREFfVlVGU19CX0VOX0FERFIsIE1UNjM1OV9SR19WVUZTX1ZPU0VM X0FERFIsDQorCQkgICBNVDYzNTlfUkdfVlVGU19WT1NFTF9NQVNLIDw8IE1UNjM1OV9SR19WVUZT X1ZPU0VMX1NISUZULA0KKwkJICAgTVQ2MzU5X1JHX1ZVRlNfVk9TRUxfU0hJRlQpLA0KKwlNVDYz NTlfTERPKCJsZG9fdm0xOCIsIFZNMTgsIHZvbHQxOF92b2x0YWdlcywgdm9sdDE4X2lkeCwNCisJ CSAgIE1UNjM1OV9SR19MRE9fVk0xOF9FTl9BRERSLCBNVDYzNTlfUkdfTERPX1ZNMThfRU5fU0hJ RlQsDQorCQkgICBNVDYzNTlfREFfVk0xOF9CX0VOX0FERFIsIE1UNjM1OV9SR19WTTE4X1ZPU0VM X0FERFIsDQorCQkgICBNVDYzNTlfUkdfVk0xOF9WT1NFTF9NQVNLIDw8IE1UNjM1OV9SR19WTTE4 X1ZPU0VMX1NISUZULA0KKwkJICAgTVQ2MzU5X1JHX1ZNMThfVk9TRUxfU0hJRlQpLA0KKwlNVDYz NTlfTERPKCJsZG9fdmJiY2siLCBWQkJDSywgdmJiY2tfdm9sdGFnZXMsIHZiYmNrX2lkeCwNCisJ CSAgIE1UNjM1OV9SR19MRE9fVkJCQ0tfRU5fQUREUiwgTVQ2MzU5X1JHX0xET19WQkJDS19FTl9T SElGVCwNCisJCSAgIE1UNjM1OV9EQV9WQkJDS19CX0VOX0FERFIsIE1UNjM1OV9SR19WQkJDS19W T1NFTF9BRERSLA0KKwkJICAgTVQ2MzU5X1JHX1ZCQkNLX1ZPU0VMX01BU0sgPDwgTVQ2MzU5X1JH X1ZCQkNLX1ZPU0VMX1NISUZULA0KKwkJICAgTVQ2MzU5X1JHX1ZCQkNLX1ZPU0VMX1NISUZUKSwN CisJTVQ2MzU5X0xET19MSU5FQVIoImxkb192c3JhbV9wcm9jMSIsIFZTUkFNX1BST0MxLCA1MDAw MDAsIDExOTM3NTAsIDYyNTAsDQorCQkJICAwLCBtdF92b2x0X3JhbmdlNiwgTVQ2MzU5X1JHX0xE T19WU1JBTV9QUk9DMV9FTl9BRERSLA0KKwkJCSAgTVQ2MzU5X0RBX1ZTUkFNX1BST0MxX0JfRU5f QUREUiwNCisJCQkgIE1UNjM1OV9EQV9WU1JBTV9QUk9DMV9WT1NFTF9BRERSLA0KKwkJCSAgTVQ2 MzU5X0RBX1ZTUkFNX1BST0MxX1ZPU0VMX01BU0ssDQorCQkJICBNVDYzNTlfREFfVlNSQU1fUFJP QzFfVk9TRUxfU0hJRlQsDQorCQkJICBNVDYzNTlfUkdfTERPX1ZTUkFNX1BST0MxX1ZPU0VMX0FE RFIsDQorCQkJICBNVDYzNTlfUkdfTERPX1ZTUkFNX1BST0MxX1ZPU0VMX01BU0sgPDwNCisJCQkg IE1UNjM1OV9SR19MRE9fVlNSQU1fUFJPQzFfVk9TRUxfU0hJRlQpLA0KKwlNVDYzNTlfTERPKCJs ZG9fdnNpbTIiLCBWU0lNMiwgdnNpbTJfdm9sdGFnZXMsIHZzaW0yX2lkeCwNCisJCSAgIE1UNjM1 OV9SR19MRE9fVlNJTTJfRU5fQUREUiwgTVQ2MzU5X1JHX0xET19WU0lNMl9FTl9TSElGVCwNCisJ CSAgIE1UNjM1OV9EQV9WU0lNMl9CX0VOX0FERFIsIE1UNjM1OV9SR19WU0lNMl9WT1NFTF9BRERS LA0KKwkJICAgTVQ2MzU5X1JHX1ZTSU0yX1ZPU0VMX01BU0sgPDwgTVQ2MzU5X1JHX1ZTSU0yX1ZP U0VMX1NISUZULA0KKwkJICAgTVQ2MzU5X1JHX1ZTSU0yX1ZPU0VMX1NISUZUKSwNCisJTVQ2MzU5 X0xET19MSU5FQVIoImxkb192c3JhbV9vdGhlcnNfc3NodWIiLCBWU1JBTV9PVEhFUlNfU1NIVUIs DQorCQkJICA1MDAwMDAsIDExOTM3NTAsIDYyNTAsIDAsIG10X3ZvbHRfcmFuZ2U2LA0KKwkJCSAg TVQ2MzU5X1JHX0xET19WU1JBTV9PVEhFUlNfU1NIVUJfRU5fQUREUiwNCisJCQkgIE1UNjM1OV9E QV9WU1JBTV9PVEhFUlNfQl9FTl9BRERSLA0KKwkJCSAgTVQ2MzU5X1JHX0xET19WU1JBTV9PVEhF UlNfU1NIVUJfVk9TRUxfQUREUiwNCisJCQkgIE1UNjM1OV9SR19MRE9fVlNSQU1fT1RIRVJTX1NT SFVCX1ZPU0VMX01BU0ssDQorCQkJICBNVDYzNTlfUkdfTERPX1ZTUkFNX09USEVSU19TU0hVQl9W T1NFTF9TSElGVCwNCisJCQkgIE1UNjM1OV9SR19MRE9fVlNSQU1fT1RIRVJTX1NTSFVCX1ZPU0VM X0FERFIsDQorCQkJICBNVDYzNTlfUkdfTERPX1ZTUkFNX09USEVSU19TU0hVQl9WT1NFTF9NQVNL IDw8DQorCQkJICBNVDYzNTlfUkdfTERPX1ZTUkFNX09USEVSU19TU0hVQl9WT1NFTF9TSElGVCks DQorfTsNCisNCitzdGF0aWMgaW50IG10NjM1OV9yZWd1bGF0b3JfcHJvYmUoc3RydWN0IHBsYXRm b3JtX2RldmljZSAqcGRldikNCit7DQorCXN0cnVjdCBtdDYzOTdfY2hpcCAqbXQ2Mzk3ID0gZGV2 X2dldF9kcnZkYXRhKHBkZXYtPmRldi5wYXJlbnQpOw0KKwlzdHJ1Y3QgcmVndWxhdG9yX2NvbmZp ZyBjb25maWcgPSB7fTsNCisJc3RydWN0IHJlZ3VsYXRvcl9kZXYgKnJkZXY7DQorCWludCBpOw0K Kw0KKwlmb3IgKGkgPSAwOyBpIDwgTVQ2MzU5X01BWF9SRUdVTEFUT1I7IGkrKykgew0KKwkJY29u ZmlnLmRldiA9ICZwZGV2LT5kZXY7DQorCQljb25maWcuZHJpdmVyX2RhdGEgPSAmbXQ2MzU5X3Jl Z3VsYXRvcnNbaV07DQorCQljb25maWcucmVnbWFwID0gbXQ2Mzk3LT5yZWdtYXA7DQorDQorCQly ZGV2ID0gZGV2bV9yZWd1bGF0b3JfcmVnaXN0ZXIoJnBkZXYtPmRldiwNCisJCQkJCSAgICAgICAm bXQ2MzU5X3JlZ3VsYXRvcnNbaV0uZGVzYywNCisJCQkJCSAgICAgICAmY29uZmlnKTsNCisJCWlm IChJU19FUlIocmRldikpIHsNCisJCQlkZXZfZXJyKCZwZGV2LT5kZXYsICJmYWlsZWQgdG8gcmVn aXN0ZXIgJXNcbiIsDQorCQkJCW10NjM1OV9yZWd1bGF0b3JzW2ldLmRlc2MubmFtZSk7DQorCQkJ cmV0dXJuIFBUUl9FUlIocmRldik7DQorCQl9DQorCX0NCisNCisJcmV0dXJuIDA7DQorfQ0KKw0K K3N0YXRpYyBjb25zdCBzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlX2lkIG10NjM1OV9wbGF0Zm9ybV9p ZHNbXSA9IHsNCisJeyJtdDYzNTktcmVndWxhdG9yIiwgMH0sDQorCXsgLyogc2VudGluZWwgKi8g fSwNCit9Ow0KK01PRFVMRV9ERVZJQ0VfVEFCTEUocGxhdGZvcm0sIG10NjM1OV9wbGF0Zm9ybV9p ZHMpOw0KKw0KK3N0YXRpYyBzdHJ1Y3QgcGxhdGZvcm1fZHJpdmVyIG10NjM1OV9yZWd1bGF0b3Jf ZHJpdmVyID0gew0KKwkuZHJpdmVyID0gew0KKwkJLm5hbWUgPSAibXQ2MzU5LXJlZ3VsYXRvciIs DQorCX0sDQorCS5wcm9iZSA9IG10NjM1OV9yZWd1bGF0b3JfcHJvYmUsDQorCS5pZF90YWJsZSA9 IG10NjM1OV9wbGF0Zm9ybV9pZHMsDQorfTsNCisNCittb2R1bGVfcGxhdGZvcm1fZHJpdmVyKG10 NjM1OV9yZWd1bGF0b3JfZHJpdmVyKTsNCisNCitNT0RVTEVfQVVUSE9SKCJXZW4gU3UgPHdlbi5z dUBtZWRpYXRlay5jb20+Iik7DQorTU9EVUxFX0RFU0NSSVBUSU9OKCJSZWd1bGF0b3IgRHJpdmVy IGZvciBNZWRpYVRlayBNVDYzNTkgUE1JQyIpOw0KK01PRFVMRV9MSUNFTlNFKCJHUEwiKTsNCmRp ZmYgLS1naXQgYS9pbmNsdWRlL2xpbnV4L3JlZ3VsYXRvci9tdDYzNTktcmVndWxhdG9yLmggYi9p bmNsdWRlL2xpbnV4L3JlZ3VsYXRvci9tdDYzNTktcmVndWxhdG9yLmgNCm5ldyBmaWxlIG1vZGUg MTAwNjQ0DQppbmRleCAwMDAwMDAwLi42YjE3MTczDQotLS0gL2Rldi9udWxsDQorKysgYi9pbmNs dWRlL2xpbnV4L3JlZ3VsYXRvci9tdDYzNTktcmVndWxhdG9yLmgNCkBAIC0wLDAgKzEsNTggQEAN CisvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogR1BMLTIuMCAqLw0KKy8qDQorICogQ29weXJp Z2h0IChjKSAyMDE5IE1lZGlhVGVrIEluYy4NCisgKi8NCisNCisjaWZuZGVmIF9fTElOVVhfUkVH VUxBVE9SX01UNjM1OV9IDQorI2RlZmluZSBfX0xJTlVYX1JFR1VMQVRPUl9NVDYzNTlfSA0KKw0K K2VudW0gew0KKwlNVDYzNTlfSURfVlMxID0gMCwNCisJTVQ2MzU5X0lEX1ZHUFUxMSwNCisJTVQ2 MzU5X0lEX1ZNT0RFTSwNCisJTVQ2MzU5X0lEX1ZQVSwNCisJTVQ2MzU5X0lEX1ZDT1JFLA0KKwlN VDYzNTlfSURfVlMyLA0KKwlNVDYzNTlfSURfVlBBLA0KKwlNVDYzNTlfSURfVlBST0MyLA0KKwlN VDYzNTlfSURfVlBST0MxLA0KKwlNVDYzNTlfSURfVkNPUkVfU1NIVUIsDQorCU1UNjM1OV9JRF9W QVVEMTggPSAxMCwNCisJTVQ2MzU5X0lEX1ZTSU0xLA0KKwlNVDYzNTlfSURfVklCUiwNCisJTVQ2 MzU5X0lEX1ZSRjEyLA0KKwlNVDYzNTlfSURfVlVTQiwNCisJTVQ2MzU5X0lEX1ZTUkFNX1BST0My LA0KKwlNVDYzNTlfSURfVklPMTgsDQorCU1UNjM1OV9JRF9WQ0FNSU8sDQorCU1UNjM1OV9JRF9W Q04xOCwNCisJTVQ2MzU5X0lEX1ZGRTI4LA0KKwlNVDYzNTlfSURfVkNOMTMsDQorCU1UNjM1OV9J RF9WQ04zM18xX0JULA0KKwlNVDYzNTlfSURfVkNOMzNfMV9XSUZJLA0KKwlNVDYzNTlfSURfVkFV WDE4LA0KKwlNVDYzNTlfSURfVlNSQU1fT1RIRVJTLA0KKwlNVDYzNTlfSURfVkVGVVNFLA0KKwlN VDYzNTlfSURfVlhPMjIsDQorCU1UNjM1OV9JRF9WUkZDSywNCisJTVQ2MzU5X0lEX1ZCSUYyOCwN CisJTVQ2MzU5X0lEX1ZJTzI4LA0KKwlNVDYzNTlfSURfVkVNQywNCisJTVQ2MzU5X0lEX1ZDTjMz XzJfQlQsDQorCU1UNjM1OV9JRF9WQ04zM18yX1dJRkksDQorCU1UNjM1OV9JRF9WQTEyLA0KKwlN VDYzNTlfSURfVkEwOSwNCisJTVQ2MzU5X0lEX1ZSRjE4LA0KKwlNVDYzNTlfSURfVlNSQU1fTUQs DQorCU1UNjM1OV9JRF9WVUZTLA0KKwlNVDYzNTlfSURfVk0xOCwNCisJTVQ2MzU5X0lEX1ZCQkNL LA0KKwlNVDYzNTlfSURfVlNSQU1fUFJPQzEsDQorCU1UNjM1OV9JRF9WU0lNMiwNCisJTVQ2MzU5 X0lEX1ZTUkFNX09USEVSU19TU0hVQiwNCisJTVQ2MzU5X0lEX1JHX01BWCwNCit9Ow0KKw0KKyNk ZWZpbmUgTVQ2MzU5X01BWF9SRUdVTEFUT1IJTVQ2MzU5X0lEX1JHX01BWA0KKw0KKyNlbmRpZiAv KiBfX0xJTlVYX1JFR1VMQVRPUl9NVDYzNTlfSCAqLw0KLS0gDQoxLjkuMQ0K