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.1 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_PASS,URIBL_BLOCKED,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 09CE8C43219 for ; Thu, 2 May 2019 08:07:43 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 70211208C4 for ; Thu, 2 May 2019 08:07:42 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=nxp.com header.i=@nxp.com header.b="YA9y3DmF" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726661AbfEBIHk (ORCPT ); Thu, 2 May 2019 04:07:40 -0400 Received: from mail-eopbgr30084.outbound.protection.outlook.com ([40.107.3.84]:37540 "EHLO EUR03-AM5-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1726620AbfEBIHj (ORCPT ); Thu, 2 May 2019 04:07:39 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=a4l2SXuN4e/G5UI1TlC0VeGkItNcvRGCq6csjb6oCG8=; b=YA9y3DmFLG+uKfmY7t2hjAUgaqqXiIjEuyd7Drwdbsp4Ow83tD9aZuC/i+twVwV5Mh452DzFTlcv32bxmySER6v6qsvCYCkisNVel66lS5Nc9cypjlvzwJd6BoZMCmhNX0MO9yvWceg5qT1WRReE9Xaj3Lq2ITb/jjsXbz9Ptzw= Received: from AM0PR04MB5779.eurprd04.prod.outlook.com (20.178.202.151) by AM0PR04MB6161.eurprd04.prod.outlook.com (20.179.36.79) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1835.13; Thu, 2 May 2019 08:06:56 +0000 Received: from AM0PR04MB5779.eurprd04.prod.outlook.com ([fe80::c19b:5964:bfcb:96a8]) by AM0PR04MB5779.eurprd04.prod.outlook.com ([fe80::c19b:5964:bfcb:96a8%7]) with mapi id 15.20.1856.008; Thu, 2 May 2019 08:06:56 +0000 From: Abel Vesa To: Mike Turquette , Stephen Boyd , Shawn Guo , Fabio Estevam , Sascha Hauer CC: dl-linux-imx , Daniel Baluta , "linux-clk@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , Linux Kernel Mailing List , Abel Vesa Subject: [PATCH v2 18/18] clk: imx6sll: Switch to clk_hw based API Thread-Topic: [PATCH v2 18/18] clk: imx6sll: Switch to clk_hw based API Thread-Index: AQHVAL4CDn+K4n6z1ky+VPMQqanGeQ== Date: Thu, 2 May 2019 08:06:56 +0000 Message-ID: <1556784376-7191-19-git-send-email-abel.vesa@nxp.com> References: <1556784376-7191-1-git-send-email-abel.vesa@nxp.com> In-Reply-To: <1556784376-7191-1-git-send-email-abel.vesa@nxp.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: VI1PR0501CA0041.eurprd05.prod.outlook.com (2603:10a6:800:60::27) To AM0PR04MB5779.eurprd04.prod.outlook.com (2603:10a6:208:131::23) x-originating-ip: [89.37.124.34] authentication-results: spf=none (sender IP is ) smtp.mailfrom=abel.vesa@nxp.com; x-ms-exchange-messagesentrepresentingtype: 1 x-mailer: git-send-email 2.7.4 x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 5d5ac920-67f0-4512-5409-08d6ced524c3 x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0;PCL:0;RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600141)(711020)(4605104)(4618075)(2017052603328)(7193020);SRVR:AM0PR04MB6161; x-ms-traffictypediagnostic: AM0PR04MB6161: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:4714; x-forefront-prvs: 0025434D2D x-forefront-antispam-report: SFV:NSPM;SFS:(10009020)(1496009)(346002)(396003)(366004)(376002)(136003)(39860400002)(199004)(189003)(30864003)(64756008)(66476007)(66446008)(66556008)(66946007)(73956011)(110136005)(54906003)(5660300002)(6512007)(68736007)(53936002)(53946003)(316002)(386003)(6506007)(26005)(2906002)(186003)(478600001)(102836004)(6436002)(76176011)(52116002)(99286004)(66066001)(6116002)(3846002)(14454004)(25786009)(4326008)(36756003)(256004)(14444005)(86362001)(81156014)(486006)(8676002)(44832011)(81166006)(8936002)(7736002)(446003)(11346002)(2616005)(50226002)(476003)(305945005)(6486002)(71190400001)(71200400001)(32563001)(559001)(569006);DIR:OUT;SFP:1101;SCL:1;SRVR:AM0PR04MB6161;H:AM0PR04MB5779.eurprd04.prod.outlook.com;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;A:1;MX:1; received-spf: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: uSXCY7wnd0k3h2jGXi3B08pAobFb0CaR+Hf/poKrJi2IFvZGmKzBlFF4371/3+EA6Nn0UZX7s3bqsodslPQ3fE2wTJouTVKWL7cw81LTaQ7ATCckCC/s9+bJsjwNgIXb6ytbxd9tg35i7ESZK0V7UfDKWOcSHMCRW6xavA4DxXVW6s/N/WxbmznXQreSBYADd/3xdMQDqPogPtES+DAcD21aotwcwredhFgC+xm+/KDOGmu1120SOvY2H69+RcL6d/IdlBEUFtopQyylCaT49yRM9VF1dR+6p7ZXr2GvY7U6n6ZaxK332Ab1uaqILOcl35/xoqrz9weBNaQXcgAZpJrBQkw4tdEJCkCcx61gYG01/9Evh1BXpKzA9R7c73/dtOcM375ty+nTowRvy8DH9c+Rn58I40ISZjqLZCf1p5w= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5d5ac920-67f0-4512-5409-08d6ced524c3 X-MS-Exchange-CrossTenant-originalarrivaltime: 02 May 2019 08:06:56.2039 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB6161 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org U3dpdGNoIHRoZSBlbnRpcmUgY2xrLWlteDZzbGwgZHJpdmVyIHRvIGNsa19odyBiYXNlZCBBUEku DQpUaGlzIGFsbG93cyB1cyB0byBtb3ZlIGNsb3NlciB0byBhIGNsZWFyIHNwbGl0IGJldHdlZW4N CmNvbnN1bWVyIGFuZCBwcm92aWRlciBjbGsgQVBJcy4NCg0KU2lnbmVkLW9mZi1ieTogQWJlbCBW ZXNhIDxhYmVsLnZlc2FAbnhwLmNvbT4NCi0tLQ0KIGRyaXZlcnMvY2xrL2lteC9jbGstaW14NnNs bC5jIHwgNDMwICsrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIDEg ZmlsZSBjaGFuZ2VkLCAyMjIgaW5zZXJ0aW9ucygrKSwgMjA4IGRlbGV0aW9ucygtKQ0KDQpkaWZm IC0tZ2l0IGEvZHJpdmVycy9jbGsvaW14L2Nsay1pbXg2c2xsLmMgYi9kcml2ZXJzL2Nsay9pbXgv Y2xrLWlteDZzbGwuYw0KaW5kZXggN2VlYTQ0OC4uZTljYjkxYiAxMDA2NDQNCi0tLSBhL2RyaXZl cnMvY2xrL2lteC9jbGstaW14NnNsbC5jDQorKysgYi9kcml2ZXJzL2Nsay9pbXgvY2xrLWlteDZz bGwuYw0KQEAgLTUzLDggKzUzLDggQEAgc3RhdGljIGNvbnN0IGNoYXIgKmxjZGlmX3NlbHNbXSA9 IHsgImxjZGlmX3BvZGYiLCAiaXBwX2RpMCIsICJpcHBfZGkxIiwgImxkYl9kaTANCiBzdGF0aWMg Y29uc3QgY2hhciAqZXBkY19wcmVfc2Vsc1tdID0geyAicGxsMl9idXMiLCAicGxsM191c2Jfb3Rn IiwgInBsbDVfdmlkZW9fZGl2IiwgInBsbDJfcGZkMF8zNTJtIiwgInBsbDJfcGZkMl8zOTZtIiwg InBsbDNfcGZkMl81MDhtIiwgfTsNCiBzdGF0aWMgY29uc3QgY2hhciAqZXBkY19zZWxzW10gPSB7 ICJlcGRjX3BvZGYiLCAiaXBwX2RpMCIsICJpcHBfZGkxIiwgImxkYl9kaTAiLCAibGRiX2RpMSIs IH07DQogDQotc3RhdGljIHN0cnVjdCBjbGsgKmNsa3NbSU1YNlNMTF9DTEtfRU5EXTsNCi1zdGF0 aWMgc3RydWN0IGNsa19vbmVjZWxsX2RhdGEgY2xrX2RhdGE7DQorc3RhdGljIHN0cnVjdCBjbGtf aHcgKipod3M7DQorc3RhdGljIHN0cnVjdCBjbGtfaHdfb25lY2VsbF9kYXRhICpjbGtfaHdfZGF0 YTsNCiANCiBzdGF0aWMgY29uc3Qgc3RydWN0IGNsa19kaXZfdGFibGUgcG9zdF9kaXZfdGFibGVb XSA9IHsNCiAJeyAudmFsID0gMiwgLmRpdiA9IDEsIH0sDQpAQCAtNzYsMzMgKzc2LDQzIEBAIHN0 YXRpYyB1MzIgc2hhcmVfY291bnRfc3NpMTsNCiBzdGF0aWMgdTMyIHNoYXJlX2NvdW50X3NzaTI7 DQogc3RhdGljIHUzMiBzaGFyZV9jb3VudF9zc2kzOw0KIA0KLXN0YXRpYyBzdHJ1Y3QgY2xrICoq IGNvbnN0IHVhcnRfY2xrc1tdIF9faW5pdGNvbnN0ID0gew0KLQkmY2xrc1tJTVg2U0xMX0NMS19V QVJUMV9JUEddLA0KLQkmY2xrc1tJTVg2U0xMX0NMS19VQVJUMV9TRVJJQUxdLA0KLQkmY2xrc1tJ TVg2U0xMX0NMS19VQVJUMl9JUEddLA0KLQkmY2xrc1tJTVg2U0xMX0NMS19VQVJUMl9TRVJJQUxd LA0KLQkmY2xrc1tJTVg2U0xMX0NMS19VQVJUM19JUEddLA0KLQkmY2xrc1tJTVg2U0xMX0NMS19V QVJUM19TRVJJQUxdLA0KLQkmY2xrc1tJTVg2U0xMX0NMS19VQVJUNF9JUEddLA0KLQkmY2xrc1tJ TVg2U0xMX0NMS19VQVJUNF9TRVJJQUxdLA0KLQkmY2xrc1tJTVg2U0xMX0NMS19VQVJUNV9JUEdd LA0KLQkmY2xrc1tJTVg2U0xMX0NMS19VQVJUNV9TRVJJQUxdLA0KLQlOVUxMDQorc3RhdGljIGNv bnN0IGludCB1YXJ0X2Nsa19pZHNbXSBfX2luaXRjb25zdCA9IHsNCisJSU1YNlNMTF9DTEtfVUFS VDFfSVBHLA0KKwlJTVg2U0xMX0NMS19VQVJUMV9TRVJJQUwsDQorCUlNWDZTTExfQ0xLX1VBUlQy X0lQRywNCisJSU1YNlNMTF9DTEtfVUFSVDJfU0VSSUFMLA0KKwlJTVg2U0xMX0NMS19VQVJUM19J UEcsDQorCUlNWDZTTExfQ0xLX1VBUlQzX1NFUklBTCwNCisJSU1YNlNMTF9DTEtfVUFSVDRfSVBH LA0KKwlJTVg2U0xMX0NMS19VQVJUNF9TRVJJQUwsDQorCUlNWDZTTExfQ0xLX1VBUlQ1X0lQRywN CisJSU1YNlNMTF9DTEtfVUFSVDVfU0VSSUFMLA0KIH07DQogDQorc3RhdGljIHN0cnVjdCBjbGsg Kip1YXJ0X2Nsa3NbQVJSQVlfU0laRSh1YXJ0X2Nsa19pZHMpICsgMV0gX19pbml0ZGF0YTsNCisN CiBzdGF0aWMgdm9pZCBfX2luaXQgaW14NnNsbF9jbG9ja3NfaW5pdChzdHJ1Y3QgZGV2aWNlX25v ZGUgKmNjbV9ub2RlKQ0KIHsNCiAJc3RydWN0IGRldmljZV9ub2RlICpucDsNCiAJdm9pZCBfX2lv bWVtICpiYXNlOw0KKwlpbnQgaTsNCisNCisJY2xrX2h3X2RhdGEgPSBremFsbG9jKHN0cnVjdF9z aXplKGNsa19od19kYXRhLCBod3MsDQorCQkJCQkgIElNWDZTTExfQ0xLX0VORCksIEdGUF9LRVJO RUwpOw0KKwlpZiAoV0FSTl9PTighY2xrX2h3X2RhdGEpKQ0KKwkJcmV0dXJuOw0KKw0KKwljbGtf aHdfZGF0YS0+bnVtID0gSU1YNlNMTF9DTEtfRU5EOw0KKwlod3MgPSBjbGtfaHdfZGF0YS0+aHdz Ow0KIA0KLQljbGtzW0lNWDZTTExfQ0xLX0RVTU1ZXSA9IGlteF9jbGtfZml4ZWQoImR1bW15Iiwg MCk7DQorCWh3c1tJTVg2U0xMX0NMS19EVU1NWV0gPSBpbXhfY2xrX2h3X2ZpeGVkKCJkdW1teSIs IDApOw0KIA0KLQljbGtzW0lNWDZTTExfQ0xLX0NLSUxdID0gb2ZfY2xrX2dldF9ieV9uYW1lKGNj bV9ub2RlLCAiY2tpbCIpOw0KLQljbGtzW0lNWDZTTExfQ0xLX09TQ10gPSBvZl9jbGtfZ2V0X2J5 X25hbWUoY2NtX25vZGUsICJvc2MiKTsNCisJaHdzW0lNWDZTTExfQ0xLX0NLSUxdID0gX19jbGtf Z2V0X2h3KG9mX2Nsa19nZXRfYnlfbmFtZShjY21fbm9kZSwgImNraWwiKSk7DQorCWh3c1tJTVg2 U0xMX0NMS19PU0NdID0gX19jbGtfZ2V0X2h3KG9mX2Nsa19nZXRfYnlfbmFtZShjY21fbm9kZSwg Im9zYyIpKTsNCiANCiAJLyogaXBwX2RpIGNsb2NrIGlzIGV4dGVybmFsIGlucHV0ICovDQotCWNs a3NbSU1YNlNMTF9DTEtfSVBQX0RJMF0gPSBvZl9jbGtfZ2V0X2J5X25hbWUoY2NtX25vZGUsICJp cHBfZGkwIik7DQotCWNsa3NbSU1YNlNMTF9DTEtfSVBQX0RJMV0gPSBvZl9jbGtfZ2V0X2J5X25h bWUoY2NtX25vZGUsICJpcHBfZGkxIik7DQorCWh3c1tJTVg2U0xMX0NMS19JUFBfREkwXSA9IF9f Y2xrX2dldF9odyhvZl9jbGtfZ2V0X2J5X25hbWUoY2NtX25vZGUsICJpcHBfZGkwIikpOw0KKwlo d3NbSU1YNlNMTF9DTEtfSVBQX0RJMV0gPSBfX2Nsa19nZXRfaHcob2ZfY2xrX2dldF9ieV9uYW1l KGNjbV9ub2RlLCAiaXBwX2RpMSIpKTsNCiANCiAJbnAgPSBvZl9maW5kX2NvbXBhdGlibGVfbm9k ZShOVUxMLCBOVUxMLCAiZnNsLGlteDZzbGwtYW5hdG9wIik7DQogCWJhc2UgPSBvZl9pb21hcChu cCwgMCk7DQpAQCAtMTE4LDM3ICsxMjgsMzcgQEAgc3RhdGljIHZvaWQgX19pbml0IGlteDZzbGxf Y2xvY2tzX2luaXQoc3RydWN0IGRldmljZV9ub2RlICpjY21fbm9kZSkNCiAJd3JpdGVsX3JlbGF4 ZWQoQ0NNX0FOQUxPR19QTExfQllQQVNTLCBiYXNlICsgeFBMTF9DTFIoMHhhMCkpOw0KIAl3cml0 ZWxfcmVsYXhlZChDQ01fQU5BTE9HX1BMTF9CWVBBU1MsIGJhc2UgKyB4UExMX0NMUigweGUwKSk7 DQogDQotCWNsa3NbSU1YNlNMTF9QTEwxX0JZUEFTU19TUkNdID0gaW14X2Nsa19tdXgoInBsbDFf YnlwYXNzX3NyYyIsIGJhc2UgKyAweDAwLCAxNCwgMSwgcGxsX2J5cGFzc19zcmNfc2VscywgQVJS QVlfU0laRShwbGxfYnlwYXNzX3NyY19zZWxzKSk7DQotCWNsa3NbSU1YNlNMTF9QTEwyX0JZUEFT U19TUkNdID0gaW14X2Nsa19tdXgoInBsbDJfYnlwYXNzX3NyYyIsIGJhc2UgKyAweDMwLCAxNCwg MSwgcGxsX2J5cGFzc19zcmNfc2VscywgQVJSQVlfU0laRShwbGxfYnlwYXNzX3NyY19zZWxzKSk7 DQotCWNsa3NbSU1YNlNMTF9QTEwzX0JZUEFTU19TUkNdID0gaW14X2Nsa19tdXgoInBsbDNfYnlw YXNzX3NyYyIsIGJhc2UgKyAweDEwLCAxNCwgMSwgcGxsX2J5cGFzc19zcmNfc2VscywgQVJSQVlf U0laRShwbGxfYnlwYXNzX3NyY19zZWxzKSk7DQotCWNsa3NbSU1YNlNMTF9QTEw0X0JZUEFTU19T UkNdID0gaW14X2Nsa19tdXgoInBsbDRfYnlwYXNzX3NyYyIsIGJhc2UgKyAweDcwLCAxNCwgMSwg cGxsX2J5cGFzc19zcmNfc2VscywgQVJSQVlfU0laRShwbGxfYnlwYXNzX3NyY19zZWxzKSk7DQot CWNsa3NbSU1YNlNMTF9QTEw1X0JZUEFTU19TUkNdID0gaW14X2Nsa19tdXgoInBsbDVfYnlwYXNz X3NyYyIsIGJhc2UgKyAweGEwLCAxNCwgMSwgcGxsX2J5cGFzc19zcmNfc2VscywgQVJSQVlfU0la RShwbGxfYnlwYXNzX3NyY19zZWxzKSk7DQotCWNsa3NbSU1YNlNMTF9QTEw2X0JZUEFTU19TUkNd ID0gaW14X2Nsa19tdXgoInBsbDZfYnlwYXNzX3NyYyIsIGJhc2UgKyAweGUwLCAxNCwgMSwgcGxs X2J5cGFzc19zcmNfc2VscywgQVJSQVlfU0laRShwbGxfYnlwYXNzX3NyY19zZWxzKSk7DQotCWNs a3NbSU1YNlNMTF9QTEw3X0JZUEFTU19TUkNdID0gaW14X2Nsa19tdXgoInBsbDdfYnlwYXNzX3Ny YyIsIGJhc2UgKyAweDIwLCAxNCwgMSwgcGxsX2J5cGFzc19zcmNfc2VscywgQVJSQVlfU0laRShw bGxfYnlwYXNzX3NyY19zZWxzKSk7DQotDQotCWNsa3NbSU1YNlNMTF9DTEtfUExMMV0gPSBpbXhf Y2xrX3BsbHYzKElNWF9QTExWM19TWVMsCSAicGxsMSIsICJwbGwxX2J5cGFzc19zcmMiLCBiYXNl ICsgMHgwMCwgMHg3Zik7DQotCWNsa3NbSU1YNlNMTF9DTEtfUExMMl0gPSBpbXhfY2xrX3BsbHYz KElNWF9QTExWM19HRU5FUklDLCAicGxsMiIsICJwbGwyX2J5cGFzc19zcmMiLCBiYXNlICsgMHgz MCwgMHgxKTsNCi0JY2xrc1tJTVg2U0xMX0NMS19QTEwzXSA9IGlteF9jbGtfcGxsdjMoSU1YX1BM TFYzX1VTQiwJICJwbGwzIiwgInBsbDNfYnlwYXNzX3NyYyIsIGJhc2UgKyAweDEwLCAweDMpOw0K LQljbGtzW0lNWDZTTExfQ0xLX1BMTDRdID0gaW14X2Nsa19wbGx2MyhJTVhfUExMVjNfQVYsCSAi cGxsNCIsICJwbGw0X2J5cGFzc19zcmMiLCBiYXNlICsgMHg3MCwgMHg3Zik7DQotCWNsa3NbSU1Y NlNMTF9DTEtfUExMNV0gPSBpbXhfY2xrX3BsbHYzKElNWF9QTExWM19BViwJICJwbGw1IiwgInBs bDVfYnlwYXNzX3NyYyIsIGJhc2UgKyAweGEwLCAweDdmKTsNCi0JY2xrc1tJTVg2U0xMX0NMS19Q TEw2XSA9IGlteF9jbGtfcGxsdjMoSU1YX1BMTFYzX0VORVQsCSAicGxsNiIsICJwbGw2X2J5cGFz c19zcmMiLCBiYXNlICsgMHhlMCwgMHgzKTsNCi0JY2xrc1tJTVg2U0xMX0NMS19QTEw3XSA9IGlt eF9jbGtfcGxsdjMoSU1YX1BMTFYzX1VTQiwJICJwbGw3IiwgInBsbDdfYnlwYXNzX3NyYyIsIGJh c2UgKyAweDIwLCAweDMpOw0KLQ0KLQljbGtzW0lNWDZTTExfUExMMV9CWVBBU1NdID0gaW14X2Ns a19tdXhfZmxhZ3MoInBsbDFfYnlwYXNzIiwgYmFzZSArIDB4MDAsIDE2LCAxLCBwbGwxX2J5cGFz c19zZWxzLCBBUlJBWV9TSVpFKHBsbDFfYnlwYXNzX3NlbHMpLCBDTEtfU0VUX1JBVEVfUEFSRU5U KTsNCi0JY2xrc1tJTVg2U0xMX1BMTDJfQllQQVNTXSA9IGlteF9jbGtfbXV4X2ZsYWdzKCJwbGwy X2J5cGFzcyIsIGJhc2UgKyAweDMwLCAxNiwgMSwgcGxsMl9ieXBhc3Nfc2VscywgQVJSQVlfU0la RShwbGwyX2J5cGFzc19zZWxzKSwgQ0xLX1NFVF9SQVRFX1BBUkVOVCk7DQotCWNsa3NbSU1YNlNM TF9QTEwzX0JZUEFTU10gPSBpbXhfY2xrX211eF9mbGFncygicGxsM19ieXBhc3MiLCBiYXNlICsg MHgxMCwgMTYsIDEsIHBsbDNfYnlwYXNzX3NlbHMsIEFSUkFZX1NJWkUocGxsM19ieXBhc3Nfc2Vs cyksIENMS19TRVRfUkFURV9QQVJFTlQpOw0KLQljbGtzW0lNWDZTTExfUExMNF9CWVBBU1NdID0g aW14X2Nsa19tdXhfZmxhZ3MoInBsbDRfYnlwYXNzIiwgYmFzZSArIDB4NzAsIDE2LCAxLCBwbGw0 X2J5cGFzc19zZWxzLCBBUlJBWV9TSVpFKHBsbDRfYnlwYXNzX3NlbHMpLCBDTEtfU0VUX1JBVEVf UEFSRU5UKTsNCi0JY2xrc1tJTVg2U0xMX1BMTDVfQllQQVNTXSA9IGlteF9jbGtfbXV4X2ZsYWdz KCJwbGw1X2J5cGFzcyIsIGJhc2UgKyAweGEwLCAxNiwgMSwgcGxsNV9ieXBhc3Nfc2VscywgQVJS QVlfU0laRShwbGw1X2J5cGFzc19zZWxzKSwgQ0xLX1NFVF9SQVRFX1BBUkVOVCk7DQotCWNsa3Nb SU1YNlNMTF9QTEw2X0JZUEFTU10gPSBpbXhfY2xrX211eF9mbGFncygicGxsNl9ieXBhc3MiLCBi YXNlICsgMHhlMCwgMTYsIDEsIHBsbDZfYnlwYXNzX3NlbHMsIEFSUkFZX1NJWkUocGxsNl9ieXBh c3Nfc2VscyksIENMS19TRVRfUkFURV9QQVJFTlQpOw0KLQljbGtzW0lNWDZTTExfUExMN19CWVBB U1NdID0gaW14X2Nsa19tdXhfZmxhZ3MoInBsbDdfYnlwYXNzIiwgYmFzZSArIDB4MjAsIDE2LCAx LCBwbGw3X2J5cGFzc19zZWxzLCBBUlJBWV9TSVpFKHBsbDdfYnlwYXNzX3NlbHMpLCBDTEtfU0VU X1JBVEVfUEFSRU5UKTsNCi0NCi0JY2xrc1tJTVg2U0xMX0NMS19QTEwxX1NZU10JPSBpbXhfY2xr X2ZpeGVkX2ZhY3RvcigicGxsMV9zeXMiLCAicGxsMV9ieXBhc3MiLCAxLCAxKTsNCi0JY2xrc1tJ TVg2U0xMX0NMS19QTEwyX0JVU10JPSBpbXhfY2xrX2dhdGUoInBsbDJfYnVzIiwJICAgInBsbDJf YnlwYXNzIiwgYmFzZSArIDB4MzAsIDEzKTsNCi0JY2xrc1tJTVg2U0xMX0NMS19QTEwzX1VTQl9P VEddCT0gaW14X2Nsa19nYXRlKCJwbGwzX3VzYl9vdGciLAkgICAicGxsM19ieXBhc3MiLCBiYXNl ICsgMHgxMCwgMTMpOw0KLQljbGtzW0lNWDZTTExfQ0xLX1BMTDRfQVVESU9dCT0gaW14X2Nsa19n YXRlKCJwbGw0X2F1ZGlvIiwJICAgInBsbDRfYnlwYXNzIiwgYmFzZSArIDB4NzAsIDEzKTsNCi0J Y2xrc1tJTVg2U0xMX0NMS19QTEw1X1ZJREVPXQk9IGlteF9jbGtfZ2F0ZSgicGxsNV92aWRlbyIs CSAgICJwbGw1X2J5cGFzcyIsIGJhc2UgKyAweGEwLCAxMyk7DQotCWNsa3NbSU1YNlNMTF9DTEtf UExMNl9FTkVUXQk9IGlteF9jbGtfZ2F0ZSgicGxsNl9lbmV0IiwJICAgInBsbDZfYnlwYXNzIiwg YmFzZSArIDB4ZTAsIDEzKTsNCi0JY2xrc1tJTVg2U0xMX0NMS19QTEw3X1VTQl9IT1NUXQk9IGlt eF9jbGtfZ2F0ZSgicGxsN191c2JfaG9zdCIsCSAgICJwbGw3X2J5cGFzcyIsIGJhc2UgKyAweDIw LCAxMyk7DQorCWh3c1tJTVg2U0xMX1BMTDFfQllQQVNTX1NSQ10gPSBpbXhfY2xrX2h3X211eCgi cGxsMV9ieXBhc3Nfc3JjIiwgYmFzZSArIDB4MDAsIDE0LCAxLCBwbGxfYnlwYXNzX3NyY19zZWxz LCBBUlJBWV9TSVpFKHBsbF9ieXBhc3Nfc3JjX3NlbHMpKTsNCisJaHdzW0lNWDZTTExfUExMMl9C WVBBU1NfU1JDXSA9IGlteF9jbGtfaHdfbXV4KCJwbGwyX2J5cGFzc19zcmMiLCBiYXNlICsgMHgz MCwgMTQsIDEsIHBsbF9ieXBhc3Nfc3JjX3NlbHMsIEFSUkFZX1NJWkUocGxsX2J5cGFzc19zcmNf c2VscykpOw0KKwlod3NbSU1YNlNMTF9QTEwzX0JZUEFTU19TUkNdID0gaW14X2Nsa19od19tdXgo InBsbDNfYnlwYXNzX3NyYyIsIGJhc2UgKyAweDEwLCAxNCwgMSwgcGxsX2J5cGFzc19zcmNfc2Vs cywgQVJSQVlfU0laRShwbGxfYnlwYXNzX3NyY19zZWxzKSk7DQorCWh3c1tJTVg2U0xMX1BMTDRf QllQQVNTX1NSQ10gPSBpbXhfY2xrX2h3X211eCgicGxsNF9ieXBhc3Nfc3JjIiwgYmFzZSArIDB4 NzAsIDE0LCAxLCBwbGxfYnlwYXNzX3NyY19zZWxzLCBBUlJBWV9TSVpFKHBsbF9ieXBhc3Nfc3Jj X3NlbHMpKTsNCisJaHdzW0lNWDZTTExfUExMNV9CWVBBU1NfU1JDXSA9IGlteF9jbGtfaHdfbXV4 KCJwbGw1X2J5cGFzc19zcmMiLCBiYXNlICsgMHhhMCwgMTQsIDEsIHBsbF9ieXBhc3Nfc3JjX3Nl bHMsIEFSUkFZX1NJWkUocGxsX2J5cGFzc19zcmNfc2VscykpOw0KKwlod3NbSU1YNlNMTF9QTEw2 X0JZUEFTU19TUkNdID0gaW14X2Nsa19od19tdXgoInBsbDZfYnlwYXNzX3NyYyIsIGJhc2UgKyAw eGUwLCAxNCwgMSwgcGxsX2J5cGFzc19zcmNfc2VscywgQVJSQVlfU0laRShwbGxfYnlwYXNzX3Ny Y19zZWxzKSk7DQorCWh3c1tJTVg2U0xMX1BMTDdfQllQQVNTX1NSQ10gPSBpbXhfY2xrX2h3X211 eCgicGxsN19ieXBhc3Nfc3JjIiwgYmFzZSArIDB4MjAsIDE0LCAxLCBwbGxfYnlwYXNzX3NyY19z ZWxzLCBBUlJBWV9TSVpFKHBsbF9ieXBhc3Nfc3JjX3NlbHMpKTsNCisNCisJaHdzW0lNWDZTTExf Q0xLX1BMTDFdID0gaW14X2Nsa19od19wbGx2MyhJTVhfUExMVjNfU1lTLAkgInBsbDEiLCAicGxs MV9ieXBhc3Nfc3JjIiwgYmFzZSArIDB4MDAsIDB4N2YpOw0KKwlod3NbSU1YNlNMTF9DTEtfUExM Ml0gPSBpbXhfY2xrX2h3X3BsbHYzKElNWF9QTExWM19HRU5FUklDLCAicGxsMiIsICJwbGwyX2J5 cGFzc19zcmMiLCBiYXNlICsgMHgzMCwgMHgxKTsNCisJaHdzW0lNWDZTTExfQ0xLX1BMTDNdID0g aW14X2Nsa19od19wbGx2MyhJTVhfUExMVjNfVVNCLAkgInBsbDMiLCAicGxsM19ieXBhc3Nfc3Jj IiwgYmFzZSArIDB4MTAsIDB4Myk7DQorCWh3c1tJTVg2U0xMX0NMS19QTEw0XSA9IGlteF9jbGtf aHdfcGxsdjMoSU1YX1BMTFYzX0FWLAkgInBsbDQiLCAicGxsNF9ieXBhc3Nfc3JjIiwgYmFzZSAr IDB4NzAsIDB4N2YpOw0KKwlod3NbSU1YNlNMTF9DTEtfUExMNV0gPSBpbXhfY2xrX2h3X3BsbHYz KElNWF9QTExWM19BViwJICJwbGw1IiwgInBsbDVfYnlwYXNzX3NyYyIsIGJhc2UgKyAweGEwLCAw eDdmKTsNCisJaHdzW0lNWDZTTExfQ0xLX1BMTDZdID0gaW14X2Nsa19od19wbGx2MyhJTVhfUExM VjNfRU5FVCwJICJwbGw2IiwgInBsbDZfYnlwYXNzX3NyYyIsIGJhc2UgKyAweGUwLCAweDMpOw0K Kwlod3NbSU1YNlNMTF9DTEtfUExMN10gPSBpbXhfY2xrX2h3X3BsbHYzKElNWF9QTExWM19VU0Is CSAicGxsNyIsICJwbGw3X2J5cGFzc19zcmMiLCBiYXNlICsgMHgyMCwgMHgzKTsNCisNCisJaHdz W0lNWDZTTExfUExMMV9CWVBBU1NdID0gaW14X2Nsa19od19tdXhfZmxhZ3MoInBsbDFfYnlwYXNz IiwgYmFzZSArIDB4MDAsIDE2LCAxLCBwbGwxX2J5cGFzc19zZWxzLCBBUlJBWV9TSVpFKHBsbDFf YnlwYXNzX3NlbHMpLCBDTEtfU0VUX1JBVEVfUEFSRU5UKTsNCisJaHdzW0lNWDZTTExfUExMMl9C WVBBU1NdID0gaW14X2Nsa19od19tdXhfZmxhZ3MoInBsbDJfYnlwYXNzIiwgYmFzZSArIDB4MzAs IDE2LCAxLCBwbGwyX2J5cGFzc19zZWxzLCBBUlJBWV9TSVpFKHBsbDJfYnlwYXNzX3NlbHMpLCBD TEtfU0VUX1JBVEVfUEFSRU5UKTsNCisJaHdzW0lNWDZTTExfUExMM19CWVBBU1NdID0gaW14X2Ns a19od19tdXhfZmxhZ3MoInBsbDNfYnlwYXNzIiwgYmFzZSArIDB4MTAsIDE2LCAxLCBwbGwzX2J5 cGFzc19zZWxzLCBBUlJBWV9TSVpFKHBsbDNfYnlwYXNzX3NlbHMpLCBDTEtfU0VUX1JBVEVfUEFS RU5UKTsNCisJaHdzW0lNWDZTTExfUExMNF9CWVBBU1NdID0gaW14X2Nsa19od19tdXhfZmxhZ3Mo InBsbDRfYnlwYXNzIiwgYmFzZSArIDB4NzAsIDE2LCAxLCBwbGw0X2J5cGFzc19zZWxzLCBBUlJB WV9TSVpFKHBsbDRfYnlwYXNzX3NlbHMpLCBDTEtfU0VUX1JBVEVfUEFSRU5UKTsNCisJaHdzW0lN WDZTTExfUExMNV9CWVBBU1NdID0gaW14X2Nsa19od19tdXhfZmxhZ3MoInBsbDVfYnlwYXNzIiwg YmFzZSArIDB4YTAsIDE2LCAxLCBwbGw1X2J5cGFzc19zZWxzLCBBUlJBWV9TSVpFKHBsbDVfYnlw YXNzX3NlbHMpLCBDTEtfU0VUX1JBVEVfUEFSRU5UKTsNCisJaHdzW0lNWDZTTExfUExMNl9CWVBB U1NdID0gaW14X2Nsa19od19tdXhfZmxhZ3MoInBsbDZfYnlwYXNzIiwgYmFzZSArIDB4ZTAsIDE2 LCAxLCBwbGw2X2J5cGFzc19zZWxzLCBBUlJBWV9TSVpFKHBsbDZfYnlwYXNzX3NlbHMpLCBDTEtf U0VUX1JBVEVfUEFSRU5UKTsNCisJaHdzW0lNWDZTTExfUExMN19CWVBBU1NdID0gaW14X2Nsa19o d19tdXhfZmxhZ3MoInBsbDdfYnlwYXNzIiwgYmFzZSArIDB4MjAsIDE2LCAxLCBwbGw3X2J5cGFz c19zZWxzLCBBUlJBWV9TSVpFKHBsbDdfYnlwYXNzX3NlbHMpLCBDTEtfU0VUX1JBVEVfUEFSRU5U KTsNCisNCisJaHdzW0lNWDZTTExfQ0xLX1BMTDFfU1lTXQk9IGlteF9jbGtfaHdfZml4ZWRfZmFj dG9yKCJwbGwxX3N5cyIsICJwbGwxX2J5cGFzcyIsIDEsIDEpOw0KKwlod3NbSU1YNlNMTF9DTEtf UExMMl9CVVNdCT0gaW14X2Nsa19od19nYXRlKCJwbGwyX2J1cyIsCSAgICJwbGwyX2J5cGFzcyIs IGJhc2UgKyAweDMwLCAxMyk7DQorCWh3c1tJTVg2U0xMX0NMS19QTEwzX1VTQl9PVEddCT0gaW14 X2Nsa19od19nYXRlKCJwbGwzX3VzYl9vdGciLAkgICAicGxsM19ieXBhc3MiLCBiYXNlICsgMHgx MCwgMTMpOw0KKwlod3NbSU1YNlNMTF9DTEtfUExMNF9BVURJT10JPSBpbXhfY2xrX2h3X2dhdGUo InBsbDRfYXVkaW8iLAkgICAicGxsNF9ieXBhc3MiLCBiYXNlICsgMHg3MCwgMTMpOw0KKwlod3Nb SU1YNlNMTF9DTEtfUExMNV9WSURFT10JPSBpbXhfY2xrX2h3X2dhdGUoInBsbDVfdmlkZW8iLAkg ICAicGxsNV9ieXBhc3MiLCBiYXNlICsgMHhhMCwgMTMpOw0KKwlod3NbSU1YNlNMTF9DTEtfUExM Nl9FTkVUXQk9IGlteF9jbGtfaHdfZ2F0ZSgicGxsNl9lbmV0IiwJICAgInBsbDZfYnlwYXNzIiwg YmFzZSArIDB4ZTAsIDEzKTsNCisJaHdzW0lNWDZTTExfQ0xLX1BMTDdfVVNCX0hPU1RdCT0gaW14 X2Nsa19od19nYXRlKCJwbGw3X3VzYl9ob3N0IiwJICAgInBsbDdfYnlwYXNzIiwgYmFzZSArIDB4 MjAsIDEzKTsNCiANCiAJLyoNCiAJICogQml0IDIwIGlzIHRoZSByZXNlcnZlZCBhbmQgcmVhZC1v bmx5IGJpdCwgd2UgZG8gdGhpcyBvbmx5IGZvcjoNCkBAIC0xNTYsMjA5ICsxNjYsMjEzIEBAIHN0 YXRpYyB2b2lkIF9faW5pdCBpbXg2c2xsX2Nsb2Nrc19pbml0KHN0cnVjdCBkZXZpY2Vfbm9kZSAq Y2NtX25vZGUpDQogCSAqIC0gS2VlcCByZWZjb3VudCB3aGVuIGRvIHVzYnBoeSBjbGtfZW5hYmxl L2Rpc2FibGUsIGluIHRoYXQgY2FzZSwNCiAJICogdGhlIGNsayBmcmFtZXdvcmsgbWFueSBuZWVk IHRvIGVuYWJsZS9kaXNhYmxlIHVzYnBoeSdzIHBhcmVudA0KIAkgKi8NCi0JY2xrc1tJTVg2U0xM X0NMS19VU0JQSFkxXSA9IGlteF9jbGtfZ2F0ZSgidXNicGh5MSIsICJwbGwzX3VzYl9vdGciLCAg YmFzZSArIDB4MTAsIDIwKTsNCi0JY2xrc1tJTVg2U0xMX0NMS19VU0JQSFkyXSA9IGlteF9jbGtf Z2F0ZSgidXNicGh5MiIsICJwbGw3X3VzYl9ob3N0IiwgYmFzZSArIDB4MjAsIDIwKTsNCisJaHdz W0lNWDZTTExfQ0xLX1VTQlBIWTFdID0gaW14X2Nsa19od19nYXRlKCJ1c2JwaHkxIiwgInBsbDNf dXNiX290ZyIsICBiYXNlICsgMHgxMCwgMjApOw0KKwlod3NbSU1YNlNMTF9DTEtfVVNCUEhZMl0g PSBpbXhfY2xrX2h3X2dhdGUoInVzYnBoeTIiLCAicGxsN191c2JfaG9zdCIsIGJhc2UgKyAweDIw LCAyMCk7DQogDQogCS8qDQogCSAqIHVzYnBoeSpfZ2F0ZSBuZWVkcyB0byBiZSBvbiBhZnRlciBz eXN0ZW0gYm9vdHMgdXAsIGFuZCBzb2Z0d2FyZQ0KIAkgKiBuZXZlciBuZWVkcyB0byBjb250cm9s IGl0IGFueW1vcmUuDQogCSAqLw0KIAlpZiAoSVNfRU5BQkxFRChDT05GSUdfVVNCX01YU19QSFkp KSB7DQotCQljbGtzW0lNWDZTTExfQ0xLX1VTQlBIWTFfR0FURV0gPSBpbXhfY2xrX2dhdGVfZmxh Z3MoInVzYnBoeTFfZ2F0ZSIsICJkdW1teSIsIGJhc2UgKyAweDEwLCA2LCBDTEtfSVNfQ1JJVElD QUwpOw0KLQkJY2xrc1tJTVg2U0xMX0NMS19VU0JQSFkyX0dBVEVdID0gaW14X2Nsa19nYXRlX2Zs YWdzKCJ1c2JwaHkyX2dhdGUiLCAiZHVtbXkiLCBiYXNlICsgMHgyMCwgNiwgQ0xLX0lTX0NSSVRJ Q0FMKTsNCisJCWh3c1tJTVg2U0xMX0NMS19VU0JQSFkxX0dBVEVdID0gaW14X2Nsa19od19nYXRl X2ZsYWdzKCJ1c2JwaHkxX2dhdGUiLCAiZHVtbXkiLCBiYXNlICsgMHgxMCwgNiwgQ0xLX0lTX0NS SVRJQ0FMKTsNCisJCWh3c1tJTVg2U0xMX0NMS19VU0JQSFkyX0dBVEVdID0gaW14X2Nsa19od19n YXRlX2ZsYWdzKCJ1c2JwaHkyX2dhdGUiLCAiZHVtbXkiLCBiYXNlICsgMHgyMCwgNiwgQ0xLX0lT X0NSSVRJQ0FMKTsNCiAJfQ0KIA0KIAkvKgkJCQkJbmFtZQkJICAgcGFyZW50X25hbWUJICAgcmVn CQlpZHggKi8NCi0JY2xrc1tJTVg2U0xMX0NMS19QTEwyX1BGRDBdID0gaW14X2Nsa19wZmQoInBs bDJfcGZkMF8zNTJtIiwgInBsbDJfYnVzIiwgYmFzZSArIDB4MTAwLCAwKTsNCi0JY2xrc1tJTVg2 U0xMX0NMS19QTEwyX1BGRDFdID0gaW14X2Nsa19wZmQoInBsbDJfcGZkMV81OTRtIiwgInBsbDJf YnVzIiwgYmFzZSArIDB4MTAwLCAxKTsNCi0JY2xrc1tJTVg2U0xMX0NMS19QTEwyX1BGRDJdID0g aW14X2Nsa19wZmQoInBsbDJfcGZkMl8zOTZtIiwgInBsbDJfYnVzIiwgYmFzZSArIDB4MTAwLCAy KTsNCi0JY2xrc1tJTVg2U0xMX0NMS19QTEwyX1BGRDNdID0gaW14X2Nsa19wZmQoInBsbDJfcGZk M181OTRtIiwgInBsbDJfYnVzIiwJYmFzZSArIDB4MTAwLCAzKTsNCi0JY2xrc1tJTVg2U0xMX0NM S19QTEwzX1BGRDBdID0gaW14X2Nsa19wZmQoInBsbDNfcGZkMF83MjBtIiwgInBsbDNfdXNiX290 ZyIsIGJhc2UgKyAweGYwLCAwKTsNCi0JY2xrc1tJTVg2U0xMX0NMS19QTEwzX1BGRDFdID0gaW14 X2Nsa19wZmQoInBsbDNfcGZkMV81NDBtIiwgInBsbDNfdXNiX290ZyIsIGJhc2UgKyAweGYwLCAx KTsNCi0JY2xrc1tJTVg2U0xMX0NMS19QTEwzX1BGRDJdID0gaW14X2Nsa19wZmQoInBsbDNfcGZk Ml81MDhtIiwgInBsbDNfdXNiX290ZyIsIGJhc2UgKyAweGYwLCAyKTsNCi0JY2xrc1tJTVg2U0xM X0NMS19QTEwzX1BGRDNdID0gaW14X2Nsa19wZmQoInBsbDNfcGZkM180NTRtIiwgInBsbDNfdXNi X290ZyIsIGJhc2UgKyAweGYwLCAzKTsNCi0NCi0JY2xrc1tJTVg2U0xMX0NMS19QTEw0X1BPU1Rf RElWXSAgPSBjbGtfcmVnaXN0ZXJfZGl2aWRlcl90YWJsZShOVUxMLCAicGxsNF9wb3N0X2RpdiIs ICJwbGw0X2F1ZGlvIiwNCisJaHdzW0lNWDZTTExfQ0xLX1BMTDJfUEZEMF0gPSBpbXhfY2xrX2h3 X3BmZCgicGxsMl9wZmQwXzM1Mm0iLCAicGxsMl9idXMiLCBiYXNlICsgMHgxMDAsIDApOw0KKwlo d3NbSU1YNlNMTF9DTEtfUExMMl9QRkQxXSA9IGlteF9jbGtfaHdfcGZkKCJwbGwyX3BmZDFfNTk0 bSIsICJwbGwyX2J1cyIsIGJhc2UgKyAweDEwMCwgMSk7DQorCWh3c1tJTVg2U0xMX0NMS19QTEwy X1BGRDJdID0gaW14X2Nsa19od19wZmQoInBsbDJfcGZkMl8zOTZtIiwgInBsbDJfYnVzIiwgYmFz ZSArIDB4MTAwLCAyKTsNCisJaHdzW0lNWDZTTExfQ0xLX1BMTDJfUEZEM10gPSBpbXhfY2xrX2h3 X3BmZCgicGxsMl9wZmQzXzU5NG0iLCAicGxsMl9idXMiLAliYXNlICsgMHgxMDAsIDMpOw0KKwlo d3NbSU1YNlNMTF9DTEtfUExMM19QRkQwXSA9IGlteF9jbGtfaHdfcGZkKCJwbGwzX3BmZDBfNzIw bSIsICJwbGwzX3VzYl9vdGciLCBiYXNlICsgMHhmMCwgMCk7DQorCWh3c1tJTVg2U0xMX0NMS19Q TEwzX1BGRDFdID0gaW14X2Nsa19od19wZmQoInBsbDNfcGZkMV81NDBtIiwgInBsbDNfdXNiX290 ZyIsIGJhc2UgKyAweGYwLCAxKTsNCisJaHdzW0lNWDZTTExfQ0xLX1BMTDNfUEZEMl0gPSBpbXhf Y2xrX2h3X3BmZCgicGxsM19wZmQyXzUwOG0iLCAicGxsM191c2Jfb3RnIiwgYmFzZSArIDB4ZjAs IDIpOw0KKwlod3NbSU1YNlNMTF9DTEtfUExMM19QRkQzXSA9IGlteF9jbGtfaHdfcGZkKCJwbGwz X3BmZDNfNDU0bSIsICJwbGwzX3VzYl9vdGciLCBiYXNlICsgMHhmMCwgMyk7DQorDQorCWh3c1tJ TVg2U0xMX0NMS19QTEw0X1BPU1RfRElWXSAgPSBjbGtfaHdfcmVnaXN0ZXJfZGl2aWRlcl90YWJs ZShOVUxMLCAicGxsNF9wb3N0X2RpdiIsICJwbGw0X2F1ZGlvIiwNCiAJCSBDTEtfU0VUX1JBVEVf UEFSRU5UIHwgQ0xLX1NFVF9SQVRFX0dBVEUsIGJhc2UgKyAweDcwLCAxOSwgMiwgMCwgcG9zdF9k aXZfdGFibGUsICZpbXhfY2NtX2xvY2spOw0KLQljbGtzW0lNWDZTTExfQ0xLX1BMTDRfQVVESU9f RElWXSA9IGNsa19yZWdpc3Rlcl9kaXZpZGVyKE5VTEwsICJwbGw0X2F1ZGlvX2RpdiIsICJwbGw0 X3Bvc3RfZGl2IiwNCisJaHdzW0lNWDZTTExfQ0xLX1BMTDRfQVVESU9fRElWXSA9IGNsa19od19y ZWdpc3Rlcl9kaXZpZGVyKE5VTEwsICJwbGw0X2F1ZGlvX2RpdiIsICJwbGw0X3Bvc3RfZGl2IiwN CiAJCSBDTEtfU0VUX1JBVEVfUEFSRU5UIHwgQ0xLX1NFVF9SQVRFX0dBVEUsIGJhc2UgKyAweDE3 MCwgMTUsIDEsIDAsICZpbXhfY2NtX2xvY2spOw0KLQljbGtzW0lNWDZTTExfQ0xLX1BMTDVfUE9T VF9ESVZdICA9IGNsa19yZWdpc3Rlcl9kaXZpZGVyX3RhYmxlKE5VTEwsICJwbGw1X3Bvc3RfZGl2 IiwgInBsbDVfdmlkZW8iLA0KKwlod3NbSU1YNlNMTF9DTEtfUExMNV9QT1NUX0RJVl0gID0gY2xr X2h3X3JlZ2lzdGVyX2RpdmlkZXJfdGFibGUoTlVMTCwgInBsbDVfcG9zdF9kaXYiLCAicGxsNV92 aWRlbyIsDQogCQkgQ0xLX1NFVF9SQVRFX1BBUkVOVCB8IENMS19TRVRfUkFURV9HQVRFLCBiYXNl ICsgMHhhMCwgMTksIDIsIDAsIHBvc3RfZGl2X3RhYmxlLCAmaW14X2NjbV9sb2NrKTsNCi0JY2xr c1tJTVg2U0xMX0NMS19QTEw1X1ZJREVPX0RJVl0gPSBjbGtfcmVnaXN0ZXJfZGl2aWRlcl90YWJs ZShOVUxMLCAicGxsNV92aWRlb19kaXYiLCAicGxsNV9wb3N0X2RpdiIsDQorCWh3c1tJTVg2U0xM X0NMS19QTEw1X1ZJREVPX0RJVl0gPSBjbGtfaHdfcmVnaXN0ZXJfZGl2aWRlcl90YWJsZShOVUxM LCAicGxsNV92aWRlb19kaXYiLCAicGxsNV9wb3N0X2RpdiIsDQogCQkgQ0xLX1NFVF9SQVRFX1BB UkVOVCB8IENMS19TRVRfUkFURV9HQVRFLCBiYXNlICsgMHgxNzAsIDMwLCAyLCAwLCB2aWRlb19k aXZfdGFibGUsICZpbXhfY2NtX2xvY2spOw0KIA0KIAkvKgkJCQkJCSAgIG5hbWUJCXBhcmVudF9u YW1lCSBtdWx0ICBkaXYgKi8NCi0JY2xrc1tJTVg2U0xMX0NMS19QTEwyXzE5OE1dID0gaW14X2Ns a19maXhlZF9mYWN0b3IoInBsbDJfMTk4bSIsICJwbGwyX3BmZDJfMzk2bSIsIDEsIDIpOw0KLQlj bGtzW0lNWDZTTExfQ0xLX1BMTDNfMTIwTV0gPSBpbXhfY2xrX2ZpeGVkX2ZhY3RvcigicGxsM18x MjBtIiwgInBsbDNfdXNiX290ZyIsICAgMSwgNCk7DQotCWNsa3NbSU1YNlNMTF9DTEtfUExMM184 ME1dICA9IGlteF9jbGtfZml4ZWRfZmFjdG9yKCJwbGwzXzgwbSIsICAicGxsM191c2Jfb3RnIiwg ICAxLCA2KTsNCi0JY2xrc1tJTVg2U0xMX0NMS19QTEwzXzYwTV0gID0gaW14X2Nsa19maXhlZF9m YWN0b3IoInBsbDNfNjBtIiwgICJwbGwzX3VzYl9vdGciLCAgIDEsIDgpOw0KKwlod3NbSU1YNlNM TF9DTEtfUExMMl8xOThNXSA9IGlteF9jbGtfaHdfZml4ZWRfZmFjdG9yKCJwbGwyXzE5OG0iLCAi cGxsMl9wZmQyXzM5Nm0iLCAxLCAyKTsNCisJaHdzW0lNWDZTTExfQ0xLX1BMTDNfMTIwTV0gPSBp bXhfY2xrX2h3X2ZpeGVkX2ZhY3RvcigicGxsM18xMjBtIiwgInBsbDNfdXNiX290ZyIsICAgMSwg NCk7DQorCWh3c1tJTVg2U0xMX0NMS19QTEwzXzgwTV0gID0gaW14X2Nsa19od19maXhlZF9mYWN0 b3IoInBsbDNfODBtIiwgICJwbGwzX3VzYl9vdGciLCAgIDEsIDYpOw0KKwlod3NbSU1YNlNMTF9D TEtfUExMM182ME1dICA9IGlteF9jbGtfaHdfZml4ZWRfZmFjdG9yKCJwbGwzXzYwbSIsICAicGxs M191c2Jfb3RnIiwgICAxLCA4KTsNCiANCiAJbnAgPSBjY21fbm9kZTsNCiAJYmFzZSA9IG9mX2lv bWFwKG5wLCAwKTsNCiAJV0FSTl9PTighYmFzZSk7DQogDQotCWNsa3NbSU1YNlNMTF9DTEtfU1RF UF0gCSAJICA9IGlteF9jbGtfbXV4KCJzdGVwIiwgYmFzZSArIDB4MGMsIDgsIDEsIHN0ZXBfc2Vs cywgQVJSQVlfU0laRShzdGVwX3NlbHMpKTsNCi0JY2xrc1tJTVg2U0xMX0NMS19QTEwxX1NXXSAJ ICA9IGlteF9jbGtfbXV4X2ZsYWdzKCJwbGwxX3N3IiwgICBiYXNlICsgMHgwYywgMiwgIDEsIHBs bDFfc3dfc2VscywgQVJSQVlfU0laRShwbGwxX3N3X3NlbHMpLCAwKTsNCi0JY2xrc1tJTVg2U0xM X0NMS19BWElfQUxUX1NFTF0JICA9IGlteF9jbGtfbXV4KCJheGlfYWx0X3NlbCIsCSAgIGJhc2Ug KyAweDE0LCA3LCAgMSwgYXhpX2FsdF9zZWxzLCBBUlJBWV9TSVpFKGF4aV9hbHRfc2VscykpOw0K LQljbGtzW0lNWDZTTExfQ0xLX0FYSV9TRUxdIAkgID0gaW14X2Nsa19tdXhfZmxhZ3MoImF4aV9z ZWwiLCAgIGJhc2UgKyAweDE0LCA2LCAgMSwgYXhpX3NlbHMsIEFSUkFZX1NJWkUoYXhpX3NlbHMp LCAwKTsNCi0JY2xrc1tJTVg2U0xMX0NMS19QRVJJUEhfUFJFXQkgID0gaW14X2Nsa19tdXgoInBl cmlwaF9wcmUiLCAgICAgIGJhc2UgKyAweDE4LCAxOCwgMiwgcGVyaXBoX3ByZV9zZWxzLCBBUlJB WV9TSVpFKHBlcmlwaF9wcmVfc2VscykpOw0KLQljbGtzW0lNWDZTTExfQ0xLX1BFUklQSDJfUFJF XQkgID0gaW14X2Nsa19tdXgoInBlcmlwaDJfcHJlIiwgICAgIGJhc2UgKyAweDE4LCAyMSwgMiwg cGVyaXBoMl9wcmVfc2VscywgQVJSQVlfU0laRShwZXJpcGgyX3ByZV9zZWxzKSk7DQotCWNsa3Nb SU1YNlNMTF9DTEtfUEVSSVBIX0NMSzJfU0VMXSAgPSBpbXhfY2xrX211eCgicGVyaXBoX2NsazJf c2VsIiwgIGJhc2UgKyAweDE4LCAxMiwgMiwgcGVyaXBoX2NsazJfc2VscywgQVJSQVlfU0laRShw ZXJpcGhfY2xrMl9zZWxzKSk7DQotCWNsa3NbSU1YNlNMTF9DTEtfUEVSSVBIMl9DTEsyX1NFTF0g PSBpbXhfY2xrX211eCgicGVyaXBoMl9jbGsyX3NlbCIsIGJhc2UgKyAweDE4LCAyMCwgMSwgcGVy aXBoMl9jbGsyX3NlbHMsIEFSUkFZX1NJWkUocGVyaXBoMl9jbGsyX3NlbHMpKTsNCi0JY2xrc1tJ TVg2U0xMX0NMS19VU0RIQzFfU0VMXQkgID0gaW14X2Nsa19tdXgoInVzZGhjMV9zZWwiLCAgIGJh c2UgKyAweDFjLCAxNiwgMSwgdXNkaGNfc2VscywgQVJSQVlfU0laRSh1c2RoY19zZWxzKSk7DQot CWNsa3NbSU1YNlNMTF9DTEtfVVNESEMyX1NFTF0JICA9IGlteF9jbGtfbXV4KCJ1c2RoYzJfc2Vs IiwgICBiYXNlICsgMHgxYywgMTcsIDEsIHVzZGhjX3NlbHMsIEFSUkFZX1NJWkUodXNkaGNfc2Vs cykpOw0KLQljbGtzW0lNWDZTTExfQ0xLX1VTREhDM19TRUxdCSAgPSBpbXhfY2xrX211eCgidXNk aGMzX3NlbCIsICAgYmFzZSArIDB4MWMsIDE4LCAxLCB1c2RoY19zZWxzLCBBUlJBWV9TSVpFKHVz ZGhjX3NlbHMpKTsNCi0JY2xrc1tJTVg2U0xMX0NMS19TU0kxX1NFTF0JICA9IGlteF9jbGtfbXV4 KCJzc2kxX3NlbCIsICAgICBiYXNlICsgMHgxYywgMTAsIDIsIHNzaV9zZWxzLCBBUlJBWV9TSVpF KHNzaV9zZWxzKSk7DQotCWNsa3NbSU1YNlNMTF9DTEtfU1NJMl9TRUxdCSAgPSBpbXhfY2xrX211 eCgic3NpMl9zZWwiLCAgICAgYmFzZSArIDB4MWMsIDEyLCAyLCBzc2lfc2VscywgQVJSQVlfU0la RShzc2lfc2VscykpOw0KLQljbGtzW0lNWDZTTExfQ0xLX1NTSTNfU0VMXQkgID0gaW14X2Nsa19t dXgoInNzaTNfc2VsIiwgICAgIGJhc2UgKyAweDFjLCAxNCwgMiwgc3NpX3NlbHMsIEFSUkFZX1NJ WkUoc3NpX3NlbHMpKTsNCi0JY2xrc1tJTVg2U0xMX0NMS19QRVJDTEtfU0VMXSAJICA9IGlteF9j bGtfbXV4KCJwZXJjbGtfc2VsIiwJYmFzZSArIDB4MWMsIDYsICAxLCBwZXJjbGtfc2VscywgQVJS QVlfU0laRShwZXJjbGtfc2VscykpOw0KLQljbGtzW0lNWDZTTExfQ0xLX1VBUlRfU0VMXQkgID0g aW14X2Nsa19tdXgoInVhcnRfc2VsIiwJYmFzZSArIDB4MjQsIDYsICAxLCB1YXJ0X3NlbHMsIEFS UkFZX1NJWkUodWFydF9zZWxzKSk7DQotCWNsa3NbSU1YNlNMTF9DTEtfU1BESUZfU0VMXQkgID0g aW14X2Nsa19tdXgoInNwZGlmX3NlbCIsCWJhc2UgKyAweDMwLCAyMCwgMiwgc3BkaWZfc2Vscywg QVJSQVlfU0laRShzcGRpZl9zZWxzKSk7DQotCWNsa3NbSU1YNlNMTF9DTEtfRVhURVJOX0FVRElP X1NFTF0gPSBpbXhfY2xrX211eCgiZXh0ZXJuX2F1ZGlvX3NlbCIsIGJhc2UgKyAweDMwLCA3LCAg Miwgc3BkaWZfc2VscywgQVJSQVlfU0laRShzcGRpZl9zZWxzKSk7DQotCWNsa3NbSU1YNlNMTF9D TEtfRVBEQ19QUkVfU0VMXQkgID0gaW14X2Nsa19tdXgoImVwZGNfcHJlX3NlbCIsCWJhc2UgKyAw eDM0LCAxNSwgMywgZXBkY19wcmVfc2VscywgQVJSQVlfU0laRShlcGRjX3ByZV9zZWxzKSk7DQot CWNsa3NbSU1YNlNMTF9DTEtfRVBEQ19TRUxdCSAgPSBpbXhfY2xrX211eCgiZXBkY19zZWwiLAli YXNlICsgMHgzNCwgOSwgMywgZXBkY19zZWxzLCBBUlJBWV9TSVpFKGVwZGNfc2VscykpOw0KLQlj bGtzW0lNWDZTTExfQ0xLX0VDU1BJX1NFTF0JICA9IGlteF9jbGtfbXV4KCJlY3NwaV9zZWwiLAli YXNlICsgMHgzOCwgMTgsIDEsIGVjc3BpX3NlbHMsIEFSUkFZX1NJWkUoZWNzcGlfc2VscykpOw0K LQljbGtzW0lNWDZTTExfQ0xLX0xDRElGX1BSRV9TRUxdCSAgPSBpbXhfY2xrX211eCgibGNkaWZf cHJlX3NlbCIsIGJhc2UgKyAweDM4LCAxNSwgMywgbGNkaWZfcHJlX3NlbHMsIEFSUkFZX1NJWkUo bGNkaWZfcHJlX3NlbHMpKTsNCi0JY2xrc1tJTVg2U0xMX0NMS19MQ0RJRl9TRUxdCSAgPSBpbXhf Y2xrX211eCgibGNkaWZfc2VsIiwgCSBiYXNlICsgMHgzOCwgOSwgMywgbGNkaWZfc2VscywgQVJS QVlfU0laRShsY2RpZl9zZWxzKSk7DQotDQotCWNsa3NbSU1YNlNMTF9DTEtfUEVSSVBIXSAgPSBp bXhfY2xrX2J1c3lfbXV4KCJwZXJpcGgiLCAgYmFzZSArIDB4MTQsIDI1LCAxLCBiYXNlICsgMHg0 OCwgNSwgcGVyaXBoX3NlbHMsIEFSUkFZX1NJWkUocGVyaXBoX3NlbHMpKTsNCi0JY2xrc1tJTVg2 U0xMX0NMS19QRVJJUEgyXSA9IGlteF9jbGtfYnVzeV9tdXgoInBlcmlwaDIiLCBiYXNlICsgMHgx NCwgMjYsIDEsIGJhc2UgKyAweDQ4LCAzLCBwZXJpcGgyX3NlbHMsIEFSUkFZX1NJWkUocGVyaXBo Ml9zZWxzKSk7DQotDQotCWNsa3NbSU1YNlNMTF9DTEtfUEVSSVBIX0NMSzJdCT0gaW14X2Nsa19k aXZpZGVyKCJwZXJpcGhfY2xrMiIsICAgInBlcmlwaF9jbGsyX3NlbCIsICAJYmFzZSArIDB4MTQs IDI3LCAzKTsNCi0JY2xrc1tJTVg2U0xMX0NMS19QRVJJUEgyX0NMSzJdCT0gaW14X2Nsa19kaXZp ZGVyKCJwZXJpcGgyX2NsazIiLCAgInBlcmlwaDJfY2xrMl9zZWwiLCAJYmFzZSArIDB4MTQsIDAs ICAzKTsNCi0JY2xrc1tJTVg2U0xMX0NMS19JUEddCQk9IGlteF9jbGtfZGl2aWRlcigiaXBnIiwJ ICAgImFoYiIsCQliYXNlICsgMHgxNCwgOCwJIDIpOw0KLQljbGtzW0lNWDZTTExfQ0xLX0xDRElG X1BPREZdCT0gaW14X2Nsa19kaXZpZGVyKCJsY2RpZl9wb2RmIiwJICAgImxjZGlmX3ByZWQiLAli YXNlICsgMHgxOCwgMjMsIDMpOw0KLQljbGtzW0lNWDZTTExfQ0xLX1BFUkNMS10JPSBpbXhfY2xr X2RpdmlkZXIoInBlcmNsayIsCSAgICJwZXJjbGtfc2VsIiwJYmFzZSArIDB4MWMsIDAsICA2KTsN Ci0JY2xrc1tJTVg2U0xMX0NMS19VU0RIQzNfUE9ERl0gICA9IGlteF9jbGtfZGl2aWRlcigidXNk aGMzX3BvZGYiLCAgICJ1c2RoYzNfc2VsIiwJYmFzZSArIDB4MjQsIDE5LCAzKTsNCi0JY2xrc1tJ TVg2U0xMX0NMS19VU0RIQzJfUE9ERl0JPSBpbXhfY2xrX2RpdmlkZXIoInVzZGhjMl9wb2RmIiwg ICAidXNkaGMyX3NlbCIsCWJhc2UgKyAweDI0LCAxNiwgMyk7DQotCWNsa3NbSU1YNlNMTF9DTEtf VVNESEMxX1BPREZdCT0gaW14X2Nsa19kaXZpZGVyKCJ1c2RoYzFfcG9kZiIsICAgInVzZGhjMV9z ZWwiLAliYXNlICsgMHgyNCwgMTEsIDMpOw0KLQljbGtzW0lNWDZTTExfQ0xLX1VBUlRfUE9ERl0J PSBpbXhfY2xrX2RpdmlkZXIoInVhcnRfcG9kZiIsCSAgICJ1YXJ0X3NlbCIsCQliYXNlICsgMHgy NCwgMCwgIDYpOw0KLQljbGtzW0lNWDZTTExfQ0xLX1NTSTNfUFJFRF0JPSBpbXhfY2xrX2Rpdmlk ZXIoInNzaTNfcHJlZCIsCSAgICJzc2kzX3NlbCIsCQliYXNlICsgMHgyOCwgMjIsIDMpOw0KLQlj bGtzW0lNWDZTTExfQ0xLX1NTSTNfUE9ERl0JPSBpbXhfY2xrX2RpdmlkZXIoInNzaTNfcG9kZiIs CSAgICJzc2kzX3ByZWQiLAkJYmFzZSArIDB4MjgsIDE2LCA2KTsNCi0JY2xrc1tJTVg2U0xMX0NM S19TU0kxX1BSRURdCT0gaW14X2Nsa19kaXZpZGVyKCJzc2kxX3ByZWQiLAkgICAic3NpMV9zZWwi LAkJYmFzZSArIDB4MjgsIDYsCSAzKTsNCi0JY2xrc1tJTVg2U0xMX0NMS19TU0kxX1BPREZdCT0g aW14X2Nsa19kaXZpZGVyKCJzc2kxX3BvZGYiLAkgICAic3NpMV9wcmVkIiwJCWJhc2UgKyAweDI4 LCAwLAkgNik7DQotCWNsa3NbSU1YNlNMTF9DTEtfU1NJMl9QUkVEXQk9IGlteF9jbGtfZGl2aWRl cigic3NpMl9wcmVkIiwJICAgInNzaTJfc2VsIiwJCWJhc2UgKyAweDJjLCA2LAkgMyk7DQotCWNs a3NbSU1YNlNMTF9DTEtfU1NJMl9QT0RGXQk9IGlteF9jbGtfZGl2aWRlcigic3NpMl9wb2RmIiwJ ICAgInNzaTJfcHJlZCIsCQliYXNlICsgMHgyYywgMCwgIDYpOw0KLQljbGtzW0lNWDZTTExfQ0xL X1NQRElGX1BSRURdCT0gaW14X2Nsa19kaXZpZGVyKCJzcGRpZl9wcmVkIiwJICAgInNwZGlmX3Nl bCIsCQliYXNlICsgMHgzMCwgMjUsIDMpOw0KLQljbGtzW0lNWDZTTExfQ0xLX1NQRElGX1BPREZd CT0gaW14X2Nsa19kaXZpZGVyKCJzcGRpZl9wb2RmIiwJICAgInNwZGlmX3ByZWQiLAliYXNlICsg MHgzMCwgMjIsIDMpOw0KLQljbGtzW0lNWDZTTExfQ0xLX0VYVEVSTl9BVURJT19QUkVEXSA9IGlt eF9jbGtfZGl2aWRlcigiZXh0ZXJuX2F1ZGlvX3ByZWQiLCAiZXh0ZXJuX2F1ZGlvX3NlbCIsICBi YXNlICsgMHgzMCwgMTIsIDMpOw0KLQljbGtzW0lNWDZTTExfQ0xLX0VYVEVSTl9BVURJT19QT0RG XSA9IGlteF9jbGtfZGl2aWRlcigiZXh0ZXJuX2F1ZGlvX3BvZGYiLCAiZXh0ZXJuX2F1ZGlvX3By ZWQiLCBiYXNlICsgMHgzMCwgOSwgIDMpOw0KLQljbGtzW0lNWDZTTExfQ0xLX0VQRENfUE9ERl0g ID0gaW14X2Nsa19kaXZpZGVyKCJlcGRjX3BvZGYiLCAgImVwZGNfcHJlX3NlbCIsICBiYXNlICsg MHgzNCwgMTIsIDMpOw0KLQljbGtzW0lNWDZTTExfQ0xLX0VDU1BJX1BPREZdID0gaW14X2Nsa19k aXZpZGVyKCJlY3NwaV9wb2RmIiwgImVjc3BpX3NlbCIsICAgICBiYXNlICsgMHgzOCwgMTksIDYp Ow0KLQljbGtzW0lNWDZTTExfQ0xLX0xDRElGX1BSRURdID0gaW14X2Nsa19kaXZpZGVyKCJsY2Rp Zl9wcmVkIiwgImxjZGlmX3ByZV9zZWwiLCBiYXNlICsgMHgzOCwgMTIsIDMpOw0KLQ0KLQljbGtz W0lNWDZTTExfQ0xLX0FSTV0JCT0gaW14X2Nsa19idXN5X2RpdmlkZXIoImFybSIsIAkgICAgInBs bDFfc3ciLAliYXNlICsJMHgxMCwgMCwgIDMsICBiYXNlICsgMHg0OCwgMTYpOw0KLQljbGtzW0lN WDZTTExfQ0xLX01NRENfUE9ERl0JPSBpbXhfY2xrX2J1c3lfZGl2aWRlcigibW1kY19wb2RmIiwg InBlcmlwaDIiLAliYXNlICsgIDB4MTQsIDMsICAzLCAgYmFzZSArIDB4NDgsIDIpOw0KLQljbGtz W0lNWDZTTExfQ0xLX0FYSV9QT0RGXQk9IGlteF9jbGtfYnVzeV9kaXZpZGVyKCJheGkiLCAgICAg ICAiYXhpX3NlbCIsCWJhc2UgKyAgMHgxNCwgMTYsIDMsICBiYXNlICsgMHg0OCwgMCk7DQotCWNs a3NbSU1YNlNMTF9DTEtfQUhCXQkJPSBpbXhfY2xrX2J1c3lfZGl2aWRlcigiYWhiIiwJICAgICJw ZXJpcGgiLAliYXNlICsgIDB4MTQsIDEwLCAzLCAgYmFzZSArIDB4NDgsIDEpOw0KLQ0KLQljbGtz W0lNWDZTTExfQ0xLX0xEQl9ESTBfRElWXzNfNV0gPSBpbXhfY2xrX2ZpeGVkX2ZhY3RvcigibGRi X2RpMF9kaXZfM181IiwgImxkYl9kaTBfc2VsIiwgMiwgNyk7DQotCWNsa3NbSU1YNlNMTF9DTEtf TERCX0RJMF9ESVZfN10JICA9IGlteF9jbGtfZml4ZWRfZmFjdG9yKCJsZGJfZGkwX2Rpdl83Iiwg ICAibGRiX2RpMF9zZWwiLCAxLCA3KTsNCi0JY2xrc1tJTVg2U0xMX0NMS19MREJfREkxX0RJVl8z XzVdID0gaW14X2Nsa19maXhlZF9mYWN0b3IoImxkYl9kaTFfZGl2XzNfNSIsICJsZGJfZGkxX3Nl bCIsIDIsIDcpOw0KLQljbGtzW0lNWDZTTExfQ0xLX0xEQl9ESTFfRElWXzddCSAgPSBpbXhfY2xr X2ZpeGVkX2ZhY3RvcigibGRiX2RpMV9kaXZfNyIsICAgImxkYl9kaTFfc2VsIiwgMSwgNyk7DQot DQotCWNsa3NbSU1YNlNMTF9DTEtfTERCX0RJMF9TRUxdCT0gaW14X2Nsa19tdXgoImxkYl9kaTBf c2VsIiwgYmFzZSArIDB4MmMsIDksIDMsIGxkYl9kaTBfc2VscywgQVJSQVlfU0laRShsZGJfZGkw X3NlbHMpKTsNCi0JY2xrc1tJTVg2U0xMX0NMS19MREJfREkxX1NFTF0gICA9IGlteF9jbGtfbXV4 KCJsZGJfZGkxX3NlbCIsIGJhc2UgKyAweDFjLCA3LCAzLCBsZGJfZGkxX3NlbHMsIEFSUkFZX1NJ WkUobGRiX2RpMV9zZWxzKSk7DQotCWNsa3NbSU1YNlNMTF9DTEtfTERCX0RJMF9ESVZfU0VMXSA9 IGlteF9jbGtfbXV4KCJsZGJfZGkwX2Rpdl9zZWwiLCBiYXNlICsgMHgyMCwgMTAsIDEsIGxkYl9k aTBfZGl2X3NlbHMsIEFSUkFZX1NJWkUobGRiX2RpMF9kaXZfc2VscykpOw0KLQljbGtzW0lNWDZT TExfQ0xLX0xEQl9ESTFfRElWX1NFTF0gPSBpbXhfY2xrX211eCgibGRiX2RpMV9kaXZfc2VsIiwg YmFzZSArIDB4MjAsIDEwLCAxLCBsZGJfZGkxX2Rpdl9zZWxzLCBBUlJBWV9TSVpFKGxkYl9kaTFf ZGl2X3NlbHMpKTsNCisJaHdzW0lNWDZTTExfQ0xLX1NURVBdCQkgID0gaW14X2Nsa19od19tdXgo InN0ZXAiLCBiYXNlICsgMHgwYywgOCwgMSwgc3RlcF9zZWxzLCBBUlJBWV9TSVpFKHN0ZXBfc2Vs cykpOw0KKwlod3NbSU1YNlNMTF9DTEtfUExMMV9TV10JICA9IGlteF9jbGtfaHdfbXV4X2ZsYWdz KCJwbGwxX3N3IiwgICBiYXNlICsgMHgwYywgMiwgIDEsIHBsbDFfc3dfc2VscywgQVJSQVlfU0la RShwbGwxX3N3X3NlbHMpLCAwKTsNCisJaHdzW0lNWDZTTExfQ0xLX0FYSV9BTFRfU0VMXQkgID0g aW14X2Nsa19od19tdXgoImF4aV9hbHRfc2VsIiwJICAgYmFzZSArIDB4MTQsIDcsICAxLCBheGlf YWx0X3NlbHMsIEFSUkFZX1NJWkUoYXhpX2FsdF9zZWxzKSk7DQorCWh3c1tJTVg2U0xMX0NMS19B WElfU0VMXQkgID0gaW14X2Nsa19od19tdXhfZmxhZ3MoImF4aV9zZWwiLCAgIGJhc2UgKyAweDE0 LCA2LCAgMSwgYXhpX3NlbHMsIEFSUkFZX1NJWkUoYXhpX3NlbHMpLCAwKTsNCisJaHdzW0lNWDZT TExfQ0xLX1BFUklQSF9QUkVdCSAgPSBpbXhfY2xrX2h3X211eCgicGVyaXBoX3ByZSIsICAgICAg YmFzZSArIDB4MTgsIDE4LCAyLCBwZXJpcGhfcHJlX3NlbHMsIEFSUkFZX1NJWkUocGVyaXBoX3By ZV9zZWxzKSk7DQorCWh3c1tJTVg2U0xMX0NMS19QRVJJUEgyX1BSRV0JICA9IGlteF9jbGtfaHdf bXV4KCJwZXJpcGgyX3ByZSIsICAgICBiYXNlICsgMHgxOCwgMjEsIDIsIHBlcmlwaDJfcHJlX3Nl bHMsIEFSUkFZX1NJWkUocGVyaXBoMl9wcmVfc2VscykpOw0KKwlod3NbSU1YNlNMTF9DTEtfUEVS SVBIX0NMSzJfU0VMXSAgPSBpbXhfY2xrX2h3X211eCgicGVyaXBoX2NsazJfc2VsIiwgIGJhc2Ug KyAweDE4LCAxMiwgMiwgcGVyaXBoX2NsazJfc2VscywgQVJSQVlfU0laRShwZXJpcGhfY2xrMl9z ZWxzKSk7DQorCWh3c1tJTVg2U0xMX0NMS19QRVJJUEgyX0NMSzJfU0VMXSA9IGlteF9jbGtfaHdf bXV4KCJwZXJpcGgyX2NsazJfc2VsIiwgYmFzZSArIDB4MTgsIDIwLCAxLCBwZXJpcGgyX2NsazJf c2VscywgQVJSQVlfU0laRShwZXJpcGgyX2NsazJfc2VscykpOw0KKwlod3NbSU1YNlNMTF9DTEtf VVNESEMxX1NFTF0JICA9IGlteF9jbGtfaHdfbXV4KCJ1c2RoYzFfc2VsIiwgICBiYXNlICsgMHgx YywgMTYsIDEsIHVzZGhjX3NlbHMsIEFSUkFZX1NJWkUodXNkaGNfc2VscykpOw0KKwlod3NbSU1Y NlNMTF9DTEtfVVNESEMyX1NFTF0JICA9IGlteF9jbGtfaHdfbXV4KCJ1c2RoYzJfc2VsIiwgICBi YXNlICsgMHgxYywgMTcsIDEsIHVzZGhjX3NlbHMsIEFSUkFZX1NJWkUodXNkaGNfc2VscykpOw0K Kwlod3NbSU1YNlNMTF9DTEtfVVNESEMzX1NFTF0JICA9IGlteF9jbGtfaHdfbXV4KCJ1c2RoYzNf c2VsIiwgICBiYXNlICsgMHgxYywgMTgsIDEsIHVzZGhjX3NlbHMsIEFSUkFZX1NJWkUodXNkaGNf c2VscykpOw0KKwlod3NbSU1YNlNMTF9DTEtfU1NJMV9TRUxdCSAgPSBpbXhfY2xrX2h3X211eCgi c3NpMV9zZWwiLCAgICAgYmFzZSArIDB4MWMsIDEwLCAyLCBzc2lfc2VscywgQVJSQVlfU0laRShz c2lfc2VscykpOw0KKwlod3NbSU1YNlNMTF9DTEtfU1NJMl9TRUxdCSAgPSBpbXhfY2xrX2h3X211 eCgic3NpMl9zZWwiLCAgICAgYmFzZSArIDB4MWMsIDEyLCAyLCBzc2lfc2VscywgQVJSQVlfU0la RShzc2lfc2VscykpOw0KKwlod3NbSU1YNlNMTF9DTEtfU1NJM19TRUxdCSAgPSBpbXhfY2xrX2h3 X211eCgic3NpM19zZWwiLCAgICAgYmFzZSArIDB4MWMsIDE0LCAyLCBzc2lfc2VscywgQVJSQVlf U0laRShzc2lfc2VscykpOw0KKwlod3NbSU1YNlNMTF9DTEtfUEVSQ0xLX1NFTF0JICA9IGlteF9j bGtfaHdfbXV4KCJwZXJjbGtfc2VsIiwgICBiYXNlICsgMHgxYywgNiwgIDEsIHBlcmNsa19zZWxz LCBBUlJBWV9TSVpFKHBlcmNsa19zZWxzKSk7DQorCWh3c1tJTVg2U0xMX0NMS19VQVJUX1NFTF0J ICA9IGlteF9jbGtfaHdfbXV4KCJ1YXJ0X3NlbCIsCWJhc2UgKyAweDI0LCA2LCAgMSwgdWFydF9z ZWxzLCBBUlJBWV9TSVpFKHVhcnRfc2VscykpOw0KKwlod3NbSU1YNlNMTF9DTEtfU1BESUZfU0VM XQkgID0gaW14X2Nsa19od19tdXgoInNwZGlmX3NlbCIsCWJhc2UgKyAweDMwLCAyMCwgMiwgc3Bk aWZfc2VscywgQVJSQVlfU0laRShzcGRpZl9zZWxzKSk7DQorCWh3c1tJTVg2U0xMX0NMS19FWFRF Uk5fQVVESU9fU0VMXSA9IGlteF9jbGtfaHdfbXV4KCJleHRlcm5fYXVkaW9fc2VsIiwgYmFzZSAr IDB4MzAsIDcsICAyLCBzcGRpZl9zZWxzLCBBUlJBWV9TSVpFKHNwZGlmX3NlbHMpKTsNCisJaHdz W0lNWDZTTExfQ0xLX0VQRENfUFJFX1NFTF0JICA9IGlteF9jbGtfaHdfbXV4KCJlcGRjX3ByZV9z ZWwiLAliYXNlICsgMHgzNCwgMTUsIDMsIGVwZGNfcHJlX3NlbHMsIEFSUkFZX1NJWkUoZXBkY19w cmVfc2VscykpOw0KKwlod3NbSU1YNlNMTF9DTEtfRVBEQ19TRUxdCSAgPSBpbXhfY2xrX2h3X211 eCgiZXBkY19zZWwiLAliYXNlICsgMHgzNCwgOSwgMywgZXBkY19zZWxzLCBBUlJBWV9TSVpFKGVw ZGNfc2VscykpOw0KKwlod3NbSU1YNlNMTF9DTEtfRUNTUElfU0VMXQkgID0gaW14X2Nsa19od19t dXgoImVjc3BpX3NlbCIsCWJhc2UgKyAweDM4LCAxOCwgMSwgZWNzcGlfc2VscywgQVJSQVlfU0la RShlY3NwaV9zZWxzKSk7DQorCWh3c1tJTVg2U0xMX0NMS19MQ0RJRl9QUkVfU0VMXQkgID0gaW14 X2Nsa19od19tdXgoImxjZGlmX3ByZV9zZWwiLCBiYXNlICsgMHgzOCwgMTUsIDMsIGxjZGlmX3By ZV9zZWxzLCBBUlJBWV9TSVpFKGxjZGlmX3ByZV9zZWxzKSk7DQorCWh3c1tJTVg2U0xMX0NMS19M Q0RJRl9TRUxdCSAgPSBpbXhfY2xrX2h3X211eCgibGNkaWZfc2VsIiwJICAgIGJhc2UgKyAweDM4 LCA5LCAzLCBsY2RpZl9zZWxzLCBBUlJBWV9TSVpFKGxjZGlmX3NlbHMpKTsNCisNCisJaHdzW0lN WDZTTExfQ0xLX1BFUklQSF0gID0gaW14X2Nsa19od19idXN5X211eCgicGVyaXBoIiwgIGJhc2Ug KyAweDE0LCAyNSwgMSwgYmFzZSArIDB4NDgsIDUsIHBlcmlwaF9zZWxzLCBBUlJBWV9TSVpFKHBl cmlwaF9zZWxzKSk7DQorCWh3c1tJTVg2U0xMX0NMS19QRVJJUEgyXSA9IGlteF9jbGtfaHdfYnVz eV9tdXgoInBlcmlwaDIiLCBiYXNlICsgMHgxNCwgMjYsIDEsIGJhc2UgKyAweDQ4LCAzLCBwZXJp cGgyX3NlbHMsIEFSUkFZX1NJWkUocGVyaXBoMl9zZWxzKSk7DQorDQorCWh3c1tJTVg2U0xMX0NM S19QRVJJUEhfQ0xLMl0JPSBpbXhfY2xrX2h3X2RpdmlkZXIoInBlcmlwaF9jbGsyIiwgICAicGVy aXBoX2NsazJfc2VsIiwJYmFzZSArIDB4MTQsIDI3LCAzKTsNCisJaHdzW0lNWDZTTExfQ0xLX1BF UklQSDJfQ0xLMl0JPSBpbXhfY2xrX2h3X2RpdmlkZXIoInBlcmlwaDJfY2xrMiIsICAicGVyaXBo Ml9jbGsyX3NlbCIsCWJhc2UgKyAweDE0LCAwLCAgMyk7DQorCWh3c1tJTVg2U0xMX0NMS19JUEdd CQk9IGlteF9jbGtfaHdfZGl2aWRlcigiaXBnIiwJICAgImFoYiIsCWJhc2UgKyAweDE0LCA4LCAy KTsNCisJaHdzW0lNWDZTTExfQ0xLX0xDRElGX1BPREZdCT0gaW14X2Nsa19od19kaXZpZGVyKCJs Y2RpZl9wb2RmIiwJICAgImxjZGlmX3ByZWQiLAliYXNlICsgMHgxOCwgMjMsIDMpOw0KKwlod3Nb SU1YNlNMTF9DTEtfUEVSQ0xLXQk9IGlteF9jbGtfaHdfZGl2aWRlcigicGVyY2xrIiwJICAgInBl cmNsa19zZWwiLAliYXNlICsgMHgxYywgMCwgIDYpOw0KKwlod3NbSU1YNlNMTF9DTEtfVVNESEMz X1BPREZdICAgPSBpbXhfY2xrX2h3X2RpdmlkZXIoInVzZGhjM19wb2RmIiwgICAidXNkaGMzX3Nl bCIsCWJhc2UgKyAweDI0LCAxOSwgMyk7DQorCWh3c1tJTVg2U0xMX0NMS19VU0RIQzJfUE9ERl0J PSBpbXhfY2xrX2h3X2RpdmlkZXIoInVzZGhjMl9wb2RmIiwgICAidXNkaGMyX3NlbCIsCWJhc2Ug KyAweDI0LCAxNiwgMyk7DQorCWh3c1tJTVg2U0xMX0NMS19VU0RIQzFfUE9ERl0JPSBpbXhfY2xr X2h3X2RpdmlkZXIoInVzZGhjMV9wb2RmIiwgICAidXNkaGMxX3NlbCIsCWJhc2UgKyAweDI0LCAx MSwgMyk7DQorCWh3c1tJTVg2U0xMX0NMS19VQVJUX1BPREZdCT0gaW14X2Nsa19od19kaXZpZGVy KCJ1YXJ0X3BvZGYiLAkgICAidWFydF9zZWwiLAkJYmFzZSArIDB4MjQsIDAsICA2KTsNCisJaHdz W0lNWDZTTExfQ0xLX1NTSTNfUFJFRF0JPSBpbXhfY2xrX2h3X2RpdmlkZXIoInNzaTNfcHJlZCIs CSAgICJzc2kzX3NlbCIsCQliYXNlICsgMHgyOCwgMjIsIDMpOw0KKwlod3NbSU1YNlNMTF9DTEtf U1NJM19QT0RGXQk9IGlteF9jbGtfaHdfZGl2aWRlcigic3NpM19wb2RmIiwJICAgInNzaTNfcHJl ZCIsCQliYXNlICsgMHgyOCwgMTYsIDYpOw0KKwlod3NbSU1YNlNMTF9DTEtfU1NJMV9QUkVEXQk9 IGlteF9jbGtfaHdfZGl2aWRlcigic3NpMV9wcmVkIiwJICAgInNzaTFfc2VsIiwJCWJhc2UgKyAw eDI4LCA2LAkgMyk7DQorCWh3c1tJTVg2U0xMX0NMS19TU0kxX1BPREZdCT0gaW14X2Nsa19od19k aXZpZGVyKCJzc2kxX3BvZGYiLAkgICAic3NpMV9wcmVkIiwJCWJhc2UgKyAweDI4LCAwLAkgNik7 DQorCWh3c1tJTVg2U0xMX0NMS19TU0kyX1BSRURdCT0gaW14X2Nsa19od19kaXZpZGVyKCJzc2ky X3ByZWQiLAkgICAic3NpMl9zZWwiLAkJYmFzZSArIDB4MmMsIDYsCSAzKTsNCisJaHdzW0lNWDZT TExfQ0xLX1NTSTJfUE9ERl0JPSBpbXhfY2xrX2h3X2RpdmlkZXIoInNzaTJfcG9kZiIsCSAgICJz c2kyX3ByZWQiLAkJYmFzZSArIDB4MmMsIDAsICA2KTsNCisJaHdzW0lNWDZTTExfQ0xLX1NQRElG X1BSRURdCT0gaW14X2Nsa19od19kaXZpZGVyKCJzcGRpZl9wcmVkIiwJICAgInNwZGlmX3NlbCIs CQliYXNlICsgMHgzMCwgMjUsIDMpOw0KKwlod3NbSU1YNlNMTF9DTEtfU1BESUZfUE9ERl0JPSBp bXhfY2xrX2h3X2RpdmlkZXIoInNwZGlmX3BvZGYiLAkgICAic3BkaWZfcHJlZCIsCWJhc2UgKyAw eDMwLCAyMiwgMyk7DQorCWh3c1tJTVg2U0xMX0NMS19FWFRFUk5fQVVESU9fUFJFRF0gPSBpbXhf Y2xrX2h3X2RpdmlkZXIoImV4dGVybl9hdWRpb19wcmVkIiwgImV4dGVybl9hdWRpb19zZWwiLCAg YmFzZSArIDB4MzAsIDEyLCAzKTsNCisJaHdzW0lNWDZTTExfQ0xLX0VYVEVSTl9BVURJT19QT0RG XSA9IGlteF9jbGtfaHdfZGl2aWRlcigiZXh0ZXJuX2F1ZGlvX3BvZGYiLCAiZXh0ZXJuX2F1ZGlv X3ByZWQiLCBiYXNlICsgMHgzMCwgOSwgIDMpOw0KKwlod3NbSU1YNlNMTF9DTEtfRVBEQ19QT0RG XSAgPSBpbXhfY2xrX2h3X2RpdmlkZXIoImVwZGNfcG9kZiIsICAiZXBkY19wcmVfc2VsIiwgIGJh c2UgKyAweDM0LCAxMiwgMyk7DQorCWh3c1tJTVg2U0xMX0NMS19FQ1NQSV9QT0RGXSA9IGlteF9j bGtfaHdfZGl2aWRlcigiZWNzcGlfcG9kZiIsICJlY3NwaV9zZWwiLCAgICAgYmFzZSArIDB4Mzgs IDE5LCA2KTsNCisJaHdzW0lNWDZTTExfQ0xLX0xDRElGX1BSRURdID0gaW14X2Nsa19od19kaXZp ZGVyKCJsY2RpZl9wcmVkIiwgImxjZGlmX3ByZV9zZWwiLCBiYXNlICsgMHgzOCwgMTIsIDMpOw0K Kw0KKwlod3NbSU1YNlNMTF9DTEtfQVJNXQkJPSBpbXhfY2xrX2h3X2J1c3lfZGl2aWRlcigiYXJt IiwJInBsbDFfc3ciLAliYXNlICsJMHgxMCwgMCwgIDMsICBiYXNlICsgMHg0OCwgMTYpOw0KKwlo d3NbSU1YNlNMTF9DTEtfTU1EQ19QT0RGXQk9IGlteF9jbGtfaHdfYnVzeV9kaXZpZGVyKCJtbWRj X3BvZGYiLAkicGVyaXBoMiIsCWJhc2UgKyAgMHgxNCwgMywgIDMsICBiYXNlICsgMHg0OCwgMik7 DQorCWh3c1tJTVg2U0xMX0NMS19BWElfUE9ERl0JPSBpbXhfY2xrX2h3X2J1c3lfZGl2aWRlcigi YXhpIiwJImF4aV9zZWwiLAliYXNlICsgIDB4MTQsIDE2LCAzLCAgYmFzZSArIDB4NDgsIDApOw0K Kwlod3NbSU1YNlNMTF9DTEtfQUhCXQkJPSBpbXhfY2xrX2h3X2J1c3lfZGl2aWRlcigiYWhiIiwJ InBlcmlwaCIsCWJhc2UgKyAgMHgxNCwgMTAsIDMsICBiYXNlICsgMHg0OCwgMSk7DQorDQorCWh3 c1tJTVg2U0xMX0NMS19MREJfREkwX0RJVl8zXzVdID0gaW14X2Nsa19od19maXhlZF9mYWN0b3Io ImxkYl9kaTBfZGl2XzNfNSIsICJsZGJfZGkwX3NlbCIsIDIsIDcpOw0KKwlod3NbSU1YNlNMTF9D TEtfTERCX0RJMF9ESVZfN10JICA9IGlteF9jbGtfaHdfZml4ZWRfZmFjdG9yKCJsZGJfZGkwX2Rp dl83IiwgICAibGRiX2RpMF9zZWwiLCAxLCA3KTsNCisJaHdzW0lNWDZTTExfQ0xLX0xEQl9ESTFf RElWXzNfNV0gPSBpbXhfY2xrX2h3X2ZpeGVkX2ZhY3RvcigibGRiX2RpMV9kaXZfM181IiwgImxk Yl9kaTFfc2VsIiwgMiwgNyk7DQorCWh3c1tJTVg2U0xMX0NMS19MREJfREkxX0RJVl83XQkgID0g aW14X2Nsa19od19maXhlZF9mYWN0b3IoImxkYl9kaTFfZGl2XzciLCAgICJsZGJfZGkxX3NlbCIs IDEsIDcpOw0KKw0KKwlod3NbSU1YNlNMTF9DTEtfTERCX0RJMF9TRUxdCT0gaW14X2Nsa19od19t dXgoImxkYl9kaTBfc2VsIiwgYmFzZSArIDB4MmMsIDksIDMsIGxkYl9kaTBfc2VscywgQVJSQVlf U0laRShsZGJfZGkwX3NlbHMpKTsNCisJaHdzW0lNWDZTTExfQ0xLX0xEQl9ESTFfU0VMXSAgID0g aW14X2Nsa19od19tdXgoImxkYl9kaTFfc2VsIiwgYmFzZSArIDB4MWMsIDcsIDMsIGxkYl9kaTFf c2VscywgQVJSQVlfU0laRShsZGJfZGkxX3NlbHMpKTsNCisJaHdzW0lNWDZTTExfQ0xLX0xEQl9E STBfRElWX1NFTF0gPSBpbXhfY2xrX2h3X211eCgibGRiX2RpMF9kaXZfc2VsIiwgYmFzZSArIDB4 MjAsIDEwLCAxLCBsZGJfZGkwX2Rpdl9zZWxzLCBBUlJBWV9TSVpFKGxkYl9kaTBfZGl2X3NlbHMp KTsNCisJaHdzW0lNWDZTTExfQ0xLX0xEQl9ESTFfRElWX1NFTF0gPSBpbXhfY2xrX2h3X211eCgi bGRiX2RpMV9kaXZfc2VsIiwgYmFzZSArIDB4MjAsIDEwLCAxLCBsZGJfZGkxX2Rpdl9zZWxzLCBB UlJBWV9TSVpFKGxkYl9kaTFfZGl2X3NlbHMpKTsNCiANCiAJLyogQ0NHUjAgKi8NCi0JY2xrc1tJ TVg2U0xMX0NMS19BSVBTVFoxXQk9IGlteF9jbGtfZ2F0ZTJfZmxhZ3MoImFpcHNfdHoxIiwgImFo YiIsIGJhc2UgKyAweDY4LCAwLCBDTEtfSVNfQ1JJVElDQUwpOw0KLQljbGtzW0lNWDZTTExfQ0xL X0FJUFNUWjJdCT0gaW14X2Nsa19nYXRlMl9mbGFncygiYWlwc190ejIiLCAiYWhiIiwgYmFzZSAr IDB4NjgsIDIsIENMS19JU19DUklUSUNBTCk7DQotCWNsa3NbSU1YNlNMTF9DTEtfRENQXQkJPSBp bXhfY2xrX2dhdGUyKCJkY3AiLCAiYWhiIiwgYmFzZSArIDB4NjgsIDEwKTsNCi0JY2xrc1tJTVg2 U0xMX0NMS19VQVJUMl9JUEddCT0gaW14X2Nsa19nYXRlMigidWFydDJfaXBnIiwgImlwZyIsIGJh c2UgKyAweDY4LCAyOCk7DQotCWNsa3NbSU1YNlNMTF9DTEtfVUFSVDJfU0VSSUFMXQk9IGlteF9j bGtfZ2F0ZTIoInVhcnQyX3NlcmlhbCIsCSJ1YXJ0X3BvZGYiLCBiYXNlICsgMHg2OCwgMjgpOw0K LQljbGtzW0lNWDZTTExfQ0xLX0dQSU8yXQkJPSBpbXhfY2xrX2dhdGUyKCJncGlvMiIsICJpcGci LCBiYXNlICsgMHg2OCwgMzApOw0KKwlod3NbSU1YNlNMTF9DTEtfQUlQU1RaMV0JPSBpbXhfY2xr X2h3X2dhdGUyX2ZsYWdzKCJhaXBzX3R6MSIsICJhaGIiLCBiYXNlICsgMHg2OCwgMCwgQ0xLX0lT X0NSSVRJQ0FMKTsNCisJaHdzW0lNWDZTTExfQ0xLX0FJUFNUWjJdCT0gaW14X2Nsa19od19nYXRl Ml9mbGFncygiYWlwc190ejIiLCAiYWhiIiwgYmFzZSArIDB4NjgsIDIsIENMS19JU19DUklUSUNB TCk7DQorCWh3c1tJTVg2U0xMX0NMS19EQ1BdCQk9IGlteF9jbGtfaHdfZ2F0ZTIoImRjcCIsICJh aGIiLCBiYXNlICsgMHg2OCwgMTApOw0KKwlod3NbSU1YNlNMTF9DTEtfVUFSVDJfSVBHXQk9IGlt eF9jbGtfaHdfZ2F0ZTIoInVhcnQyX2lwZyIsICJpcGciLCBiYXNlICsgMHg2OCwgMjgpOw0KKwlo d3NbSU1YNlNMTF9DTEtfVUFSVDJfU0VSSUFMXQk9IGlteF9jbGtfaHdfZ2F0ZTIoInVhcnQyX3Nl cmlhbCIsCSJ1YXJ0X3BvZGYiLCBiYXNlICsgMHg2OCwgMjgpOw0KKwlod3NbSU1YNlNMTF9DTEtf R1BJTzJdCQk9IGlteF9jbGtfaHdfZ2F0ZTIoImdwaW8yIiwgImlwZyIsIGJhc2UgKyAweDY4LCAz MCk7DQogDQogCS8qIENDR1IxICovDQotCWNsa3NbSU1YNlNMTF9DTEtfRUNTUEkxXQk9IGlteF9j bGtfZ2F0ZTIoImVjc3BpMSIsCSJlY3NwaV9wb2RmIiwgYmFzZSArIDB4NmMsIDApOw0KLQljbGtz W0lNWDZTTExfQ0xLX0VDU1BJMl0JPSBpbXhfY2xrX2dhdGUyKCJlY3NwaTIiLAkiZWNzcGlfcG9k ZiIsIGJhc2UgKyAweDZjLCAyKTsNCi0JY2xrc1tJTVg2U0xMX0NMS19FQ1NQSTNdCT0gaW14X2Ns a19nYXRlMigiZWNzcGkzIiwJImVjc3BpX3BvZGYiLCBiYXNlICsgMHg2YywgNCk7DQotCWNsa3Nb SU1YNlNMTF9DTEtfRUNTUEk0XQk9IGlteF9jbGtfZ2F0ZTIoImVjc3BpNCIsCSJlY3NwaV9wb2Rm IiwgYmFzZSArIDB4NmMsIDYpOw0KLQljbGtzW0lNWDZTTExfQ0xLX1VBUlQzX0lQR10JPSBpbXhf Y2xrX2dhdGUyKCJ1YXJ0M19pcGciLAkiaXBnIiwgYmFzZSArIDB4NmMsIDEwKTsNCi0JY2xrc1tJ TVg2U0xMX0NMS19VQVJUM19TRVJJQUxdCT0gaW14X2Nsa19nYXRlMigidWFydDNfc2VyaWFsIiwJ InVhcnRfcG9kZiIsIGJhc2UgKyAweDZjLCAxMCk7DQotCWNsa3NbSU1YNlNMTF9DTEtfRVBJVDFd CQk9IGlteF9jbGtfZ2F0ZTIoImVwaXQxIiwJInBlcmNsayIsIGJhc2UgKyAweDZjLCAxMik7DQot CWNsa3NbSU1YNlNMTF9DTEtfRVBJVDJdCQk9IGlteF9jbGtfZ2F0ZTIoImVwaXQyIiwJInBlcmNs ayIsIGJhc2UgKyAweDZjLCAxNCk7DQotCWNsa3NbSU1YNlNMTF9DTEtfR1BUX0JVU10JPSBpbXhf Y2xrX2dhdGUyKCJncHQxX2J1cyIsCSJwZXJjbGsiLCBiYXNlICsgMHg2YywgMjApOw0KLQljbGtz W0lNWDZTTExfQ0xLX0dQVF9TRVJJQUxdCT0gaW14X2Nsa19nYXRlMigiZ3B0MV9zZXJpYWwiLAki cGVyY2xrIiwgYmFzZSArIDB4NmMsIDIyKTsNCi0JY2xrc1tJTVg2U0xMX0NMS19VQVJUNF9JUEdd CT0gaW14X2Nsa19nYXRlMigidWFydDRfaXBnIiwJImlwZyIsIGJhc2UgKyAweDZjLCAyNCk7DQot CWNsa3NbSU1YNlNMTF9DTEtfVUFSVDRfU0VSSUFMXQk9IGlteF9jbGtfZ2F0ZTIoInVhcnQ0X3Nl cmlhbCIsCSJ1YXJ0X3BvZGYiLCBiYXNlICsgMHg2YywgMjQpOw0KLQljbGtzW0lNWDZTTExfQ0xL X0dQSU8xXQkJPSBpbXhfY2xrX2dhdGUyKCJncGlvMSIsCSJpcGciLCBiYXNlICsgMHg2YywgMjYp Ow0KLQljbGtzW0lNWDZTTExfQ0xLX0dQSU81XQkJPSBpbXhfY2xrX2dhdGUyKCJncGlvNSIsCSJp cGciLCBiYXNlICsgMHg2YywgMzApOw0KKwlod3NbSU1YNlNMTF9DTEtfRUNTUEkxXQk9IGlteF9j bGtfaHdfZ2F0ZTIoImVjc3BpMSIsCSJlY3NwaV9wb2RmIiwgYmFzZSArIDB4NmMsIDApOw0KKwlo d3NbSU1YNlNMTF9DTEtfRUNTUEkyXQk9IGlteF9jbGtfaHdfZ2F0ZTIoImVjc3BpMiIsCSJlY3Nw aV9wb2RmIiwgYmFzZSArIDB4NmMsIDIpOw0KKwlod3NbSU1YNlNMTF9DTEtfRUNTUEkzXQk9IGlt eF9jbGtfaHdfZ2F0ZTIoImVjc3BpMyIsCSJlY3NwaV9wb2RmIiwgYmFzZSArIDB4NmMsIDQpOw0K Kwlod3NbSU1YNlNMTF9DTEtfRUNTUEk0XQk9IGlteF9jbGtfaHdfZ2F0ZTIoImVjc3BpNCIsCSJl Y3NwaV9wb2RmIiwgYmFzZSArIDB4NmMsIDYpOw0KKwlod3NbSU1YNlNMTF9DTEtfVUFSVDNfSVBH XQk9IGlteF9jbGtfaHdfZ2F0ZTIoInVhcnQzX2lwZyIsCSJpcGciLCBiYXNlICsgMHg2YywgMTAp Ow0KKwlod3NbSU1YNlNMTF9DTEtfVUFSVDNfU0VSSUFMXQk9IGlteF9jbGtfaHdfZ2F0ZTIoInVh cnQzX3NlcmlhbCIsCSJ1YXJ0X3BvZGYiLCBiYXNlICsgMHg2YywgMTApOw0KKwlod3NbSU1YNlNM TF9DTEtfRVBJVDFdCQk9IGlteF9jbGtfaHdfZ2F0ZTIoImVwaXQxIiwJInBlcmNsayIsIGJhc2Ug KyAweDZjLCAxMik7DQorCWh3c1tJTVg2U0xMX0NMS19FUElUMl0JCT0gaW14X2Nsa19od19nYXRl MigiZXBpdDIiLAkicGVyY2xrIiwgYmFzZSArIDB4NmMsIDE0KTsNCisJaHdzW0lNWDZTTExfQ0xL X0dQVF9CVVNdCT0gaW14X2Nsa19od19nYXRlMigiZ3B0MV9idXMiLAkicGVyY2xrIiwgYmFzZSAr IDB4NmMsIDIwKTsNCisJaHdzW0lNWDZTTExfQ0xLX0dQVF9TRVJJQUxdCT0gaW14X2Nsa19od19n YXRlMigiZ3B0MV9zZXJpYWwiLAkicGVyY2xrIiwgYmFzZSArIDB4NmMsIDIyKTsNCisJaHdzW0lN WDZTTExfQ0xLX1VBUlQ0X0lQR10JPSBpbXhfY2xrX2h3X2dhdGUyKCJ1YXJ0NF9pcGciLAkiaXBn IiwgYmFzZSArIDB4NmMsIDI0KTsNCisJaHdzW0lNWDZTTExfQ0xLX1VBUlQ0X1NFUklBTF0JPSBp bXhfY2xrX2h3X2dhdGUyKCJ1YXJ0NF9zZXJpYWwiLAkidWFydF9wb2RmIiwgYmFzZSArIDB4NmMs IDI0KTsNCisJaHdzW0lNWDZTTExfQ0xLX0dQSU8xXQkJPSBpbXhfY2xrX2h3X2dhdGUyKCJncGlv MSIsCSJpcGciLCBiYXNlICsgMHg2YywgMjYpOw0KKwlod3NbSU1YNlNMTF9DTEtfR1BJTzVdCQk9 IGlteF9jbGtfaHdfZ2F0ZTIoImdwaW81IiwJImlwZyIsIGJhc2UgKyAweDZjLCAzMCk7DQogDQog CS8qIENDR1IyICovDQotCWNsa3NbSU1YNlNMTF9DTEtfR1BJTzZdCQk9IGlteF9jbGtfZ2F0ZTIo ImdwaW82IiwJImlwZyIsICAgIGJhc2UgKyAweDcwLCAwKTsNCi0JY2xrc1tJTVg2U0xMX0NMS19D U0ldCQk9IGlteF9jbGtfZ2F0ZTIoImNzaSIsCQkiYXhpIiwgICAgYmFzZSArIDB4NzAsCTIpOw0K LQljbGtzW0lNWDZTTExfQ0xLX0kyQzFdCQk9IGlteF9jbGtfZ2F0ZTIoImkyYzEiLAkJInBlcmNs ayIsIGJhc2UgKyAweDcwLAk2KTsNCi0JY2xrc1tJTVg2U0xMX0NMS19JMkMyXQkJPSBpbXhfY2xr X2dhdGUyKCJpMmMyIiwJCSJwZXJjbGsiLCBiYXNlICsgMHg3MCwJOCk7DQotCWNsa3NbSU1YNlNM TF9DTEtfSTJDM10JCT0gaW14X2Nsa19nYXRlMigiaTJjMyIsCQkicGVyY2xrIiwgYmFzZSArIDB4 NzAsCTEwKTsNCi0JY2xrc1tJTVg2U0xMX0NMS19PQ09UUF0JCT0gaW14X2Nsa19nYXRlMigib2Nv dHAiLAkiaXBnIiwgICAgYmFzZSArIDB4NzAsCTEyKTsNCi0JY2xrc1tJTVg2U0xMX0NMS19HUElP M10JCT0gaW14X2Nsa19nYXRlMigiZ3BpbzMiLAkiaXBnIiwgICAgYmFzZSArIDB4NzAsCTI2KTsN Ci0JY2xrc1tJTVg2U0xMX0NMS19MQ0RJRl9BUEJdCT0gaW14X2Nsa19nYXRlMigibGNkaWZfYXBi IiwJImF4aSIsICAgIGJhc2UgKyAweDcwLAkyOCk7DQotCWNsa3NbSU1YNlNMTF9DTEtfUFhQXQkJ PSBpbXhfY2xrX2dhdGUyKCJweHAiLAkJImF4aSIsICAgIGJhc2UgKyAweDcwLAkzMCk7DQorCWh3 c1tJTVg2U0xMX0NMS19HUElPNl0JCT0gaW14X2Nsa19od19nYXRlMigiZ3BpbzYiLAkiaXBnIiwg ICAgYmFzZSArIDB4NzAsIDApOw0KKwlod3NbSU1YNlNMTF9DTEtfQ1NJXQkJPSBpbXhfY2xrX2h3 X2dhdGUyKCJjc2kiLAkJImF4aSIsICAgIGJhc2UgKyAweDcwLAkyKTsNCisJaHdzW0lNWDZTTExf Q0xLX0kyQzFdCQk9IGlteF9jbGtfaHdfZ2F0ZTIoImkyYzEiLAkJInBlcmNsayIsIGJhc2UgKyAw eDcwLAk2KTsNCisJaHdzW0lNWDZTTExfQ0xLX0kyQzJdCQk9IGlteF9jbGtfaHdfZ2F0ZTIoImky YzIiLAkJInBlcmNsayIsIGJhc2UgKyAweDcwLAk4KTsNCisJaHdzW0lNWDZTTExfQ0xLX0kyQzNd CQk9IGlteF9jbGtfaHdfZ2F0ZTIoImkyYzMiLAkJInBlcmNsayIsIGJhc2UgKyAweDcwLAkxMCk7 DQorCWh3c1tJTVg2U0xMX0NMS19PQ09UUF0JCT0gaW14X2Nsa19od19nYXRlMigib2NvdHAiLAki aXBnIiwgICAgYmFzZSArIDB4NzAsCTEyKTsNCisJaHdzW0lNWDZTTExfQ0xLX0dQSU8zXQkJPSBp bXhfY2xrX2h3X2dhdGUyKCJncGlvMyIsCSJpcGciLCAgICBiYXNlICsgMHg3MCwJMjYpOw0KKwlo d3NbSU1YNlNMTF9DTEtfTENESUZfQVBCXQk9IGlteF9jbGtfaHdfZ2F0ZTIoImxjZGlmX2FwYiIs CSJheGkiLCAgICBiYXNlICsgMHg3MCwJMjgpOw0KKwlod3NbSU1YNlNMTF9DTEtfUFhQXQkJPSBp bXhfY2xrX2h3X2dhdGUyKCJweHAiLAkJImF4aSIsICAgIGJhc2UgKyAweDcwLAkzMCk7DQogDQog CS8qIENDR1IzICovDQotCWNsa3NbSU1YNlNMTF9DTEtfVUFSVDVfSVBHXQk9IGlteF9jbGtfZ2F0 ZTIoInVhcnQ1X2lwZyIsCSJpcGciLAkJYmFzZSArIDB4NzQsIDIpOw0KLQljbGtzW0lNWDZTTExf Q0xLX1VBUlQ1X1NFUklBTF0JPSBpbXhfY2xrX2dhdGUyKCJ1YXJ0NV9zZXJpYWwiLAkidWFydF9w b2RmIiwJYmFzZSArIDB4NzQsIDIpOw0KLQljbGtzW0lNWDZTTExfQ0xLX0VQRENfQVhJXQk9IGlt eF9jbGtfZ2F0ZTIoImVwZGNfYWNsayIsCSJheGkiLAkJYmFzZSArIDB4NzQsIDQpOw0KLQljbGtz W0lNWDZTTExfQ0xLX0VQRENfUElYXQk9IGlteF9jbGtfZ2F0ZTIoImVwZGNfcGl4IiwJImVwZGNf cG9kZiIsCWJhc2UgKyAweDc0LCA0KTsNCi0JY2xrc1tJTVg2U0xMX0NMS19MQ0RJRl9QSVhdCT0g aW14X2Nsa19nYXRlMigibGNkaWZfcGl4IiwJImxjZGlmX3BvZGYiLAliYXNlICsgMHg3NCwgMTAp Ow0KLQljbGtzW0lNWDZTTExfQ0xLX0dQSU80XQkJPSBpbXhfY2xrX2dhdGUyKCJncGlvNCIsCSJp cGciLAkJYmFzZSArIDB4NzQsIDEyKTsNCi0JY2xrc1tJTVg2U0xMX0NMS19XRE9HMV0JCT0gaW14 X2Nsa19nYXRlMigid2RvZzEiLAkiaXBnIiwJCWJhc2UgKyAweDc0LCAxNik7DQotCWNsa3NbSU1Y NlNMTF9DTEtfTU1EQ19QMF9GQVNUXQk9IGlteF9jbGtfZ2F0ZV9mbGFncygibW1kY19wMF9mYXN0 IiwgIm1tZGNfcG9kZiIsICBiYXNlICsgMHg3NCwJMjAsIENMS19JU19DUklUSUNBTCk7DQotCWNs a3NbSU1YNlNMTF9DTEtfTU1EQ19QMF9JUEddCT0gaW14X2Nsa19nYXRlMl9mbGFncygibW1kY19w MF9pcGciLCAiaXBnIiwJICAgYmFzZSArIDB4NzQsCTI0LCBDTEtfSVNfQ1JJVElDQUwpOw0KLQlj bGtzW0lNWDZTTExfQ0xLX01NRENfUDFfSVBHXQk9IGlteF9jbGtfZ2F0ZTIoIm1tZGNfcDFfaXBn IiwgImlwZyIsCSAgIGJhc2UgKyAweDc0LAkyNik7DQotCWNsa3NbSU1YNlNMTF9DTEtfT0NSQU1d CQk9IGlteF9jbGtfZ2F0ZV9mbGFncygib2NyYW0iLCJhaGIiLAkJICAgYmFzZSArIDB4NzQsCTI4 LCBDTEtfSVNfQ1JJVElDQUwpOw0KKwlod3NbSU1YNlNMTF9DTEtfVUFSVDVfSVBHXQk9IGlteF9j bGtfaHdfZ2F0ZTIoInVhcnQ1X2lwZyIsCSJpcGciLAkJYmFzZSArIDB4NzQsIDIpOw0KKwlod3Nb SU1YNlNMTF9DTEtfVUFSVDVfU0VSSUFMXQk9IGlteF9jbGtfaHdfZ2F0ZTIoInVhcnQ1X3Nlcmlh bCIsCSJ1YXJ0X3BvZGYiLAliYXNlICsgMHg3NCwgMik7DQorCWh3c1tJTVg2U0xMX0NMS19FUERD X0FYSV0JPSBpbXhfY2xrX2h3X2dhdGUyKCJlcGRjX2FjbGsiLAkiYXhpIiwJCWJhc2UgKyAweDc0 LCA0KTsNCisJaHdzW0lNWDZTTExfQ0xLX0VQRENfUElYXQk9IGlteF9jbGtfaHdfZ2F0ZTIoImVw ZGNfcGl4IiwJImVwZGNfcG9kZiIsCWJhc2UgKyAweDc0LCA0KTsNCisJaHdzW0lNWDZTTExfQ0xL X0xDRElGX1BJWF0JPSBpbXhfY2xrX2h3X2dhdGUyKCJsY2RpZl9waXgiLAkibGNkaWZfcG9kZiIs CWJhc2UgKyAweDc0LCAxMCk7DQorCWh3c1tJTVg2U0xMX0NMS19HUElPNF0JCT0gaW14X2Nsa19o d19nYXRlMigiZ3BpbzQiLAkiaXBnIiwJCWJhc2UgKyAweDc0LCAxMik7DQorCWh3c1tJTVg2U0xM X0NMS19XRE9HMV0JCT0gaW14X2Nsa19od19nYXRlMigid2RvZzEiLAkiaXBnIiwJCWJhc2UgKyAw eDc0LCAxNik7DQorCWh3c1tJTVg2U0xMX0NMS19NTURDX1AwX0ZBU1RdCT0gaW14X2Nsa19od19n YXRlX2ZsYWdzKCJtbWRjX3AwX2Zhc3QiLCAibW1kY19wb2RmIiwgIGJhc2UgKyAweDc0LAkyMCwg Q0xLX0lTX0NSSVRJQ0FMKTsNCisJaHdzW0lNWDZTTExfQ0xLX01NRENfUDBfSVBHXQk9IGlteF9j bGtfaHdfZ2F0ZTJfZmxhZ3MoIm1tZGNfcDBfaXBnIiwgImlwZyIsCSAgIGJhc2UgKyAweDc0LAky NCwgQ0xLX0lTX0NSSVRJQ0FMKTsNCisJaHdzW0lNWDZTTExfQ0xLX01NRENfUDFfSVBHXQk9IGlt eF9jbGtfaHdfZ2F0ZTIoIm1tZGNfcDFfaXBnIiwgImlwZyIsCSAgIGJhc2UgKyAweDc0LAkyNik7 DQorCWh3c1tJTVg2U0xMX0NMS19PQ1JBTV0JCT0gaW14X2Nsa19od19nYXRlX2ZsYWdzKCJvY3Jh bSIsICJhaGIiLAkJICAgYmFzZSArIDB4NzQsCTI4LCBDTEtfSVNfQ1JJVElDQUwpOw0KIA0KIAkv KiBDQ0dSNCAqLw0KLQljbGtzW0lNWDZTTExfQ0xLX1BXTTFdCQk9IGlteF9jbGtfZ2F0ZTIoInB3 bTEiLCAicGVyY2xrIiwgYmFzZSArIDB4NzgsIDE2KTsNCi0JY2xrc1tJTVg2U0xMX0NMS19QV00y XQkJPSBpbXhfY2xrX2dhdGUyKCJwd20yIiwgInBlcmNsayIsIGJhc2UgKyAweDc4LCAxOCk7DQot CWNsa3NbSU1YNlNMTF9DTEtfUFdNM10JCT0gaW14X2Nsa19nYXRlMigicHdtMyIsICJwZXJjbGsi LCBiYXNlICsgMHg3OCwgMjApOw0KLQljbGtzW0lNWDZTTExfQ0xLX1BXTTRdCQk9IGlteF9jbGtf Z2F0ZTIoInB3bTQiLCAicGVyY2xrIiwgYmFzZSArIDB4NzgsIDIyKTsNCisJaHdzW0lNWDZTTExf Q0xLX1BXTTFdCQk9IGlteF9jbGtfaHdfZ2F0ZTIoInB3bTEiLCAicGVyY2xrIiwgYmFzZSArIDB4 NzgsIDE2KTsNCisJaHdzW0lNWDZTTExfQ0xLX1BXTTJdCQk9IGlteF9jbGtfaHdfZ2F0ZTIoInB3 bTIiLCAicGVyY2xrIiwgYmFzZSArIDB4NzgsIDE4KTsNCisJaHdzW0lNWDZTTExfQ0xLX1BXTTNd CQk9IGlteF9jbGtfaHdfZ2F0ZTIoInB3bTMiLCAicGVyY2xrIiwgYmFzZSArIDB4NzgsIDIwKTsN CisJaHdzW0lNWDZTTExfQ0xLX1BXTTRdCQk9IGlteF9jbGtfaHdfZ2F0ZTIoInB3bTQiLCAicGVy Y2xrIiwgYmFzZSArIDB4NzgsIDIyKTsNCiANCiAJLyogQ0NHUjUgKi8NCi0JY2xrc1tJTVg2U0xM X0NMS19ST01dCQk9IGlteF9jbGtfZ2F0ZTJfZmxhZ3MoInJvbSIsICJhaGIiLCBiYXNlICsgMHg3 YywgMCwgQ0xLX0lTX0NSSVRJQ0FMKTsNCi0JY2xrc1tJTVg2U0xMX0NMS19TRE1BXQkJPSBpbXhf Y2xrX2dhdGUyKCJzZG1hIiwJICJhaGIiLAliYXNlICsgMHg3YywgNik7DQotCWNsa3NbSU1YNlNM TF9DTEtfV0RPRzJdCQk9IGlteF9jbGtfZ2F0ZTIoIndkb2cyIiwgImlwZyIsCWJhc2UgKyAweDdj LCAxMCk7DQotCWNsa3NbSU1YNlNMTF9DTEtfU1BCQV0JCT0gaW14X2Nsa19nYXRlMigic3BiYSIs CSAiaXBnIiwJYmFzZSArIDB4N2MsIDEyKTsNCi0JY2xrc1tJTVg2U0xMX0NMS19FWFRFUk5fQVVE SU9dCT0gaW14X2Nsa19nYXRlMl9zaGFyZWQoImV4dGVybl9hdWRpbyIsICAiZXh0ZXJuX2F1ZGlv X3BvZGYiLCBiYXNlICsgMHg3YywgMTQsICZzaGFyZV9jb3VudF9hdWRpbyk7DQotCWNsa3NbSU1Y NlNMTF9DTEtfU1BESUZdCQk9IGlteF9jbGtfZ2F0ZTJfc2hhcmVkKCJzcGRpZiIsCQkic3BkaWZf cG9kZiIsCWJhc2UgKyAweDdjLCAxNCwgJnNoYXJlX2NvdW50X2F1ZGlvKTsNCi0JY2xrc1tJTVg2 U0xMX0NMS19TUERJRl9HQ0xLXQk9IGlteF9jbGtfZ2F0ZTJfc2hhcmVkKCJzcGRpZl9nY2xrIiwJ ImlwZyIsCQliYXNlICsgMHg3YywgMTQsICZzaGFyZV9jb3VudF9hdWRpbyk7DQotCWNsa3NbSU1Y NlNMTF9DTEtfU1NJMV0JCT0gaW14X2Nsa19nYXRlMl9zaGFyZWQoInNzaTEiLAkJInNzaTFfcG9k ZiIsCWJhc2UgKyAweDdjLCAxOCwgJnNoYXJlX2NvdW50X3NzaTEpOw0KLQljbGtzW0lNWDZTTExf Q0xLX1NTSTFfSVBHXQk9IGlteF9jbGtfZ2F0ZTJfc2hhcmVkKCJzc2kxX2lwZyIsCSJpcGciLAkJ YmFzZSArIDB4N2MsIDE4LCAmc2hhcmVfY291bnRfc3NpMSk7DQotCWNsa3NbSU1YNlNMTF9DTEtf U1NJMl0JCT0gaW14X2Nsa19nYXRlMl9zaGFyZWQoInNzaTIiLAkJInNzaTJfcG9kZiIsCWJhc2Ug KyAweDdjLCAyMCwgJnNoYXJlX2NvdW50X3NzaTIpOw0KLQljbGtzW0lNWDZTTExfQ0xLX1NTSTJf SVBHXQk9IGlteF9jbGtfZ2F0ZTJfc2hhcmVkKCJzc2kyX2lwZyIsCSJpcGciLAkJYmFzZSArIDB4 N2MsIDIwLCAmc2hhcmVfY291bnRfc3NpMik7DQotCWNsa3NbSU1YNlNMTF9DTEtfU1NJM10JCT0g aW14X2Nsa19nYXRlMl9zaGFyZWQoInNzaTMiLAkJInNzaTNfcG9kZiIsCWJhc2UgKyAweDdjLCAy MiwgJnNoYXJlX2NvdW50X3NzaTMpOw0KLQljbGtzW0lNWDZTTExfQ0xLX1NTSTNfSVBHXQk9IGlt eF9jbGtfZ2F0ZTJfc2hhcmVkKCJzc2kzX2lwZyIsCSJpcGciLAkJYmFzZSArIDB4N2MsIDIyLCAm c2hhcmVfY291bnRfc3NpMyk7DQotCWNsa3NbSU1YNlNMTF9DTEtfVUFSVDFfSVBHXQk9IGlteF9j bGtfZ2F0ZTIoInVhcnQxX2lwZyIsCSJpcGciLAkJYmFzZSArIDB4N2MsIDI0KTsNCi0JY2xrc1tJ TVg2U0xMX0NMS19VQVJUMV9TRVJJQUxdCT0gaW14X2Nsa19nYXRlMigidWFydDFfc2VyaWFsIiwJ InVhcnRfcG9kZiIsCWJhc2UgKyAweDdjLCAyNCk7DQorCWh3c1tJTVg2U0xMX0NMS19ST01dCQk9 IGlteF9jbGtfaHdfZ2F0ZTJfZmxhZ3MoInJvbSIsICJhaGIiLCBiYXNlICsgMHg3YywgMCwgQ0xL X0lTX0NSSVRJQ0FMKTsNCisJaHdzW0lNWDZTTExfQ0xLX1NETUFdCQk9IGlteF9jbGtfaHdfZ2F0 ZTIoInNkbWEiLAkgImFoYiIsCWJhc2UgKyAweDdjLCA2KTsNCisJaHdzW0lNWDZTTExfQ0xLX1dE T0cyXQkJPSBpbXhfY2xrX2h3X2dhdGUyKCJ3ZG9nMiIsICJpcGciLAliYXNlICsgMHg3YywgMTAp Ow0KKwlod3NbSU1YNlNMTF9DTEtfU1BCQV0JCT0gaW14X2Nsa19od19nYXRlMigic3BiYSIsCSAi aXBnIiwJYmFzZSArIDB4N2MsIDEyKTsNCisJaHdzW0lNWDZTTExfQ0xLX0VYVEVSTl9BVURJT10J PSBpbXhfY2xrX2h3X2dhdGUyX3NoYXJlZCgiZXh0ZXJuX2F1ZGlvIiwgICJleHRlcm5fYXVkaW9f cG9kZiIsIGJhc2UgKyAweDdjLCAxNCwgJnNoYXJlX2NvdW50X2F1ZGlvKTsNCisJaHdzW0lNWDZT TExfQ0xLX1NQRElGXQkJPSBpbXhfY2xrX2h3X2dhdGUyX3NoYXJlZCgic3BkaWYiLAkJInNwZGlm X3BvZGYiLAliYXNlICsgMHg3YywgMTQsICZzaGFyZV9jb3VudF9hdWRpbyk7DQorCWh3c1tJTVg2 U0xMX0NMS19TUERJRl9HQ0xLXQk9IGlteF9jbGtfaHdfZ2F0ZTJfc2hhcmVkKCJzcGRpZl9nY2xr IiwJImlwZyIsCQliYXNlICsgMHg3YywgMTQsICZzaGFyZV9jb3VudF9hdWRpbyk7DQorCWh3c1tJ TVg2U0xMX0NMS19TU0kxXQkJPSBpbXhfY2xrX2h3X2dhdGUyX3NoYXJlZCgic3NpMSIsCQkic3Np MV9wb2RmIiwJYmFzZSArIDB4N2MsIDE4LCAmc2hhcmVfY291bnRfc3NpMSk7DQorCWh3c1tJTVg2 U0xMX0NMS19TU0kxX0lQR10JPSBpbXhfY2xrX2h3X2dhdGUyX3NoYXJlZCgic3NpMV9pcGciLAki aXBnIiwJCWJhc2UgKyAweDdjLCAxOCwgJnNoYXJlX2NvdW50X3NzaTEpOw0KKwlod3NbSU1YNlNM TF9DTEtfU1NJMl0JCT0gaW14X2Nsa19od19nYXRlMl9zaGFyZWQoInNzaTIiLAkJInNzaTJfcG9k ZiIsCWJhc2UgKyAweDdjLCAyMCwgJnNoYXJlX2NvdW50X3NzaTIpOw0KKwlod3NbSU1YNlNMTF9D TEtfU1NJMl9JUEddCT0gaW14X2Nsa19od19nYXRlMl9zaGFyZWQoInNzaTJfaXBnIiwJImlwZyIs CQliYXNlICsgMHg3YywgMjAsICZzaGFyZV9jb3VudF9zc2kyKTsNCisJaHdzW0lNWDZTTExfQ0xL X1NTSTNdCQk9IGlteF9jbGtfaHdfZ2F0ZTJfc2hhcmVkKCJzc2kzIiwJCSJzc2kzX3BvZGYiLAli YXNlICsgMHg3YywgMjIsICZzaGFyZV9jb3VudF9zc2kzKTsNCisJaHdzW0lNWDZTTExfQ0xLX1NT STNfSVBHXQk9IGlteF9jbGtfaHdfZ2F0ZTJfc2hhcmVkKCJzc2kzX2lwZyIsCSJpcGciLAkJYmFz ZSArIDB4N2MsIDIyLCAmc2hhcmVfY291bnRfc3NpMyk7DQorCWh3c1tJTVg2U0xMX0NMS19VQVJU MV9JUEddCT0gaW14X2Nsa19od19nYXRlMigidWFydDFfaXBnIiwJImlwZyIsCQliYXNlICsgMHg3 YywgMjQpOw0KKwlod3NbSU1YNlNMTF9DTEtfVUFSVDFfU0VSSUFMXQk9IGlteF9jbGtfaHdfZ2F0 ZTIoInVhcnQxX3NlcmlhbCIsCSJ1YXJ0X3BvZGYiLAliYXNlICsgMHg3YywgMjQpOw0KIA0KIAkv KiBDQ0dSNiAqLw0KLQljbGtzW0lNWDZTTExfQ0xLX1VTQk9IM10JPSBpbXhfY2xrX2dhdGUyKCJ1 c2JvaDMiLCAiaXBnIiwJICBiYXNlICsgMHg4MCwJMCk7DQotCWNsa3NbSU1YNlNMTF9DTEtfVVNE SEMxXQk9IGlteF9jbGtfZ2F0ZTIoInVzZGhjMSIsICJ1c2RoYzFfcG9kZiIsICBiYXNlICsgMHg4 MCwJMik7DQotCWNsa3NbSU1YNlNMTF9DTEtfVVNESEMyXQk9IGlteF9jbGtfZ2F0ZTIoInVzZGhj MiIsICJ1c2RoYzJfcG9kZiIsICBiYXNlICsgMHg4MCwJNCk7DQotCWNsa3NbSU1YNlNMTF9DTEtf VVNESEMzXQk9IGlteF9jbGtfZ2F0ZTIoInVzZGhjMyIsICJ1c2RoYzNfcG9kZiIsICBiYXNlICsg MHg4MCwJNik7DQorCWh3c1tJTVg2U0xMX0NMS19VU0JPSDNdCT0gaW14X2Nsa19od19nYXRlMigi dXNib2gzIiwgImlwZyIsCSAgYmFzZSArIDB4ODAsCTApOw0KKwlod3NbSU1YNlNMTF9DTEtfVVNE SEMxXQk9IGlteF9jbGtfaHdfZ2F0ZTIoInVzZGhjMSIsICJ1c2RoYzFfcG9kZiIsICBiYXNlICsg MHg4MCwJMik7DQorCWh3c1tJTVg2U0xMX0NMS19VU0RIQzJdCT0gaW14X2Nsa19od19nYXRlMigi dXNkaGMyIiwgInVzZGhjMl9wb2RmIiwgIGJhc2UgKyAweDgwLAk0KTsNCisJaHdzW0lNWDZTTExf Q0xLX1VTREhDM10JPSBpbXhfY2xrX2h3X2dhdGUyKCJ1c2RoYzMiLCAidXNkaGMzX3BvZGYiLCAg YmFzZSArIDB4ODAsCTYpOw0KIA0KIAkvKiBtYXNrIGhhbmRzaGFrZSBvZiBtbWRjICovDQogCXdy aXRlbF9yZWxheGVkKEJNX0NDTV9DQ0RSX01NRENfQ0gwX01BU0ssIGJhc2UgKyAweDQpOw0KIA0K LQlpbXhfY2hlY2tfY2xvY2tzKGNsa3MsIEFSUkFZX1NJWkUoY2xrcykpOw0KKwlpbXhfY2hlY2tf Y2xrX2h3cyhod3MsIElNWDZTTExfQ0xLX0VORCk7DQogDQotCWNsa19kYXRhLmNsa3MgPSBjbGtz Ow0KLQljbGtfZGF0YS5jbGtfbnVtID0gQVJSQVlfU0laRShjbGtzKTsNCi0Jb2ZfY2xrX2FkZF9w cm92aWRlcihucCwgb2ZfY2xrX3NyY19vbmVjZWxsX2dldCwgJmNsa19kYXRhKTsNCisJb2ZfY2xr X2FkZF9od19wcm92aWRlcihucCwgb2ZfY2xrX2h3X29uZWNlbGxfZ2V0LCBjbGtfaHdfZGF0YSk7 DQorDQorCWZvciAoaSA9IDA7IGkgPCBBUlJBWV9TSVpFKHVhcnRfY2xrX2lkcyk7IGkrKykgew0K KwkJaW50IGluZGV4ID0gdWFydF9jbGtfaWRzW2ldOw0KKw0KKwkJdWFydF9jbGtzW2ldID0gJmh3 c1tpbmRleF0tPmNsazsNCisJfQ0KIA0KIAlpbXhfcmVnaXN0ZXJfdWFydF9jbG9ja3ModWFydF9j bGtzKTsNCiANCiAJLyogTG93ZXIgdGhlIEFIQiBjbG9jayByYXRlIGJlZm9yZSBjaGFuZ2luZyB0 aGUgY2xvY2sgc291cmNlLiAqLw0KLQljbGtfc2V0X3JhdGUoY2xrc1tJTVg2U0xMX0NMS19BSEJd LCA5OTAwMDAwMCk7DQorCWNsa19zZXRfcmF0ZShod3NbSU1YNlNMTF9DTEtfQUhCXS0+Y2xrLCA5 OTAwMDAwMCk7DQogDQogCS8qIENoYW5nZSBwZXJpcGhfcHJlIGNsb2NrIHRvIHBsbDJfYnVzIHRv IGFkanVzdCBBWEkgcmF0ZSB0byAyNjRNSHogKi8NCi0JY2xrX3NldF9wYXJlbnQoY2xrc1tJTVg2 U0xMX0NMS19QRVJJUEhfQ0xLMl9TRUxdLCBjbGtzW0lNWDZTTExfQ0xLX1BMTDNfVVNCX09UR10p Ow0KLQljbGtfc2V0X3BhcmVudChjbGtzW0lNWDZTTExfQ0xLX1BFUklQSF0sIGNsa3NbSU1YNlNM TF9DTEtfUEVSSVBIX0NMSzJdKTsNCi0JY2xrX3NldF9wYXJlbnQoY2xrc1tJTVg2U0xMX0NMS19Q RVJJUEhfUFJFXSwgY2xrc1tJTVg2U0xMX0NMS19QTEwyX0JVU10pOw0KLQljbGtfc2V0X3BhcmVu dChjbGtzW0lNWDZTTExfQ0xLX1BFUklQSF0sIGNsa3NbSU1YNlNMTF9DTEtfUEVSSVBIX1BSRV0p Ow0KKwljbGtfc2V0X3BhcmVudChod3NbSU1YNlNMTF9DTEtfUEVSSVBIX0NMSzJfU0VMXS0+Y2xr LCBod3NbSU1YNlNMTF9DTEtfUExMM19VU0JfT1RHXS0+Y2xrKTsNCisJY2xrX3NldF9wYXJlbnQo aHdzW0lNWDZTTExfQ0xLX1BFUklQSF0tPmNsaywgaHdzW0lNWDZTTExfQ0xLX1BFUklQSF9DTEsy XS0+Y2xrKTsNCisJY2xrX3NldF9wYXJlbnQoaHdzW0lNWDZTTExfQ0xLX1BFUklQSF9QUkVdLT5j bGssIGh3c1tJTVg2U0xMX0NMS19QTEwyX0JVU10tPmNsayk7DQorCWNsa19zZXRfcGFyZW50KGh3 c1tJTVg2U0xMX0NMS19QRVJJUEhdLT5jbGssIGh3c1tJTVg2U0xMX0NMS19QRVJJUEhfUFJFXS0+ Y2xrKTsNCiANCi0JY2xrX3NldF9yYXRlKGNsa3NbSU1YNlNMTF9DTEtfQUhCXSwgMTMyMDAwMDAw KTsNCisJY2xrX3NldF9yYXRlKGh3c1tJTVg2U0xMX0NMS19BSEJdLT5jbGssIDEzMjAwMDAwMCk7 DQogfQ0KIENMS19PRl9ERUNMQVJFX0RSSVZFUihpbXg2c2xsLCAiZnNsLGlteDZzbGwtY2NtIiwg aW14NnNsbF9jbG9ja3NfaW5pdCk7DQotLSANCjIuNy40DQoNCg==