Received: by 2002:a05:6a10:6744:0:0:0:0 with SMTP id w4csp1034090pxu; Fri, 16 Oct 2020 02:00:51 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxyaBja92Fm/GdAJ8W2ltbSq3XawGeFHfFPZ+qvKis7FAW+kd3obRfleiyoisIInFDS3C7b X-Received: by 2002:a17:906:5806:: with SMTP id m6mr2602715ejq.20.1602838851308; Fri, 16 Oct 2020 02:00:51 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1602838851; cv=pass; d=google.com; s=arc-20160816; b=Cp0Wi1J8tcAOhuDSm+pT/dH5YBz88RG9OdQrvWIbnJmIEUfRANr3V0bbHvODVgbLHx CoQNMhFWr/ZGyso7YgEBM1ihPzDMEiAqSFwnvDaF0PafXpN6EghC9eWZG0lXNVSgRD11 weuGW2Lqd970/uCf9o2bweJ7pN7ieO3sxT0qAE36S6Gt5H6p8RPrk6wV1R4MzGqwQGDC XAlnBrRyhfSZufD/VD8he5upad+v8gM/PuzImI4JijZp1BYltyH5l8zh7VXQZnM6mcuU hwA68SNlcpHlfXsNznFTSp7NQy+9XsdZbF5GDj2+S9Pjk2S88g6QpQG8S4iwMZiVc55H Enmw== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:content-transfer-encoding :content-language:accept-language:in-reply-to:references:message-id :date:thread-index:thread-topic:subject:cc:to:from:dkim-signature; bh=5t7W2cYJLKOPvtGkMYzMwaVE7YHM16Ytc1fQMGSLO4o=; b=QHRoBHqQz5MKyKD+J6+wX8Fi9vPbByQ7/3uVwms5Xzd6lP1Xc5pIdGFNRF2qxPpeZg HeEnQKW6sOlECD+1GOd89Px3GN4AH+jxViba4oJRmyit3/lyrZ6UDULeEUnevQ7rIoZT C/dZs8eQwSzwIwA/+W8sv95f3TWpXGPKFJd7N7X9CDYA19mRRI2GbaC9UismwgM0R5F2 b464XIWEsVQRqzbY/fWATj1ffx1oPL0dR6tbRZLkIWz2QSBBgmpYommtW8RRcMAFtI34 FLF4UYKki8w6X0Kczyyy8LSgTHkLXVfW236UjlquW6JHOaZK/QWE9IqCAcgbUxBxTuQu F+hg== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@nxp.com header.s=selector2 header.b=aaDm7bAw; arc=pass (i=1 spf=pass spfdomain=nxp.com dkim=pass dkdomain=nxp.com dmarc=pass fromdomain=nxp.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=nxp.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id w26si1212479ejb.417.2020.10.16.02.00.28; Fri, 16 Oct 2020 02:00:51 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@nxp.com header.s=selector2 header.b=aaDm7bAw; arc=pass (i=1 spf=pass spfdomain=nxp.com dkim=pass dkdomain=nxp.com dmarc=pass fromdomain=nxp.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=nxp.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2404178AbgJPGwC (ORCPT + 99 others); Fri, 16 Oct 2020 02:52:02 -0400 Received: from mail-eopbgr70059.outbound.protection.outlook.com ([40.107.7.59]:50272 "EHLO EUR04-HE1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S2394461AbgJPGwB (ORCPT ); Fri, 16 Oct 2020 02:52:01 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kb03YAy/jnY7pVw2ZPSOkKKcD9WzQi21U0c4uyhOtpYqymZLZYuydangHOQ4eTKn3niXx4igUkYDC+retyFv7R0mx8biJEGiqlvZ2kIxAzgOfwzVcjTYuGh3t2vx3uIFued4xdbr0ja+qxSnuzjnKykUcQyFtbTdcXcXq/bw2jWzE8NzxMqdyuMAlf3AS6E15cr1EdFZ40fvu+xfORYwjr4fGg1mvZldxy73+kPf0SfN83e6o8XkaVPTDy9sMiuFMGSR3pKGcZpVvF6VqxrBq027EXLke0qrznsPde9EDQWQ1rERoYOklr+AcCZW0IsT4XYaouwPPLqEO0Cb88+Xvw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=5t7W2cYJLKOPvtGkMYzMwaVE7YHM16Ytc1fQMGSLO4o=; b=FUVB6dIh36rtJoj67TbzWfWwEQxoo90aiCQahaF6DThFEbDNHhed2IaFkOc5x9ocp6/WQN7BWl3eeRULVzC167O9d7RR+0NIXeXWd1QOrKCQu+5miHBhw4qIBseCvtHynZ2atC6No2vgnxiNnX2++K4XifvAayvQGHLhv80Ew1kcGy2x7VlB23poFrp3xBUdWeujdC33yN4xUJRxQG98OxUdEvmZUQCpFrEvveC35GhLVskWbPns4wLUqQ4b6QzMvJYQoAjw4DGcxa2mEzy3kBHmnnwoePYkB82KHmaiugZeMojkmJ10rGGMDN9IotLckcKHib3gkfEuVuwX/RXsLQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=5t7W2cYJLKOPvtGkMYzMwaVE7YHM16Ytc1fQMGSLO4o=; b=aaDm7bAwX9WqKJLWw6xbPl0CkAcG4UoeQnyESX2Ew2pr8oXayse5lOWKSBfNm8X4dJ70UbM0MYgIwTcR7HQAKE9kbfGsEWNr3daYG9Cu+yQWfZ9dq5sVXQs/shIX/wOKy254rZsBL4K0MTmsbsjL82XvXj77ifByYnEvG1pd9z0= Received: from DB8PR04MB6795.eurprd04.prod.outlook.com (2603:10a6:10:fa::15) by DB6PR0402MB2725.eurprd04.prod.outlook.com (2603:10a6:4:95::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3455.21; Fri, 16 Oct 2020 06:51:54 +0000 Received: from DB8PR04MB6795.eurprd04.prod.outlook.com ([fe80::3c3a:58b9:a1cc:cbcc]) by DB8PR04MB6795.eurprd04.prod.outlook.com ([fe80::3c3a:58b9:a1cc:cbcc%9]) with mapi id 15.20.3477.021; Fri, 16 Oct 2020 06:51:54 +0000 From: Joakim Zhang To: Marc Kleine-Budde , "robh+dt@kernel.org" , "shawnguo@kernel.org" , "s.hauer@pengutronix.de" CC: "kernel@pengutronix.de" , dl-linux-imx , Ying Liu , Peng Fan , "linux-can@vger.kernel.org" , Pankaj Bansal , "netdev@vger.kernel.org" , "devicetree@vger.kernel.org" , "linux-kernel@vger.kernel.org" Subject: RE: [PATCH 5/6] can: flexcan: add CAN wakeup function for i.MX8QM Thread-Topic: [PATCH 5/6] can: flexcan: add CAN wakeup function for i.MX8QM Thread-Index: AQHWo39An99v7VNKtkiYHjTJFb8gxqmZwW4AgAAFs9A= Date: Fri, 16 Oct 2020 06:51:53 +0000 Message-ID: References: <20201016134320.20321-1-qiangqing.zhang@nxp.com> <20201016134320.20321-6-qiangqing.zhang@nxp.com> <0e3f5abc-6baf-53e2-959b-793dfd41c17b@pengutronix.de> In-Reply-To: <0e3f5abc-6baf-53e2-959b-793dfd41c17b@pengutronix.de> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: pengutronix.de; dkim=none (message not signed) header.d=none;pengutronix.de; dmarc=none action=none header.from=nxp.com; x-originating-ip: [119.31.174.71] x-ms-publictraffictype: Email x-ms-office365-filtering-ht: Tenant x-ms-office365-filtering-correlation-id: ada49155-343e-4b9e-890a-08d8719ff79e x-ms-traffictypediagnostic: DB6PR0402MB2725: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:121; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: U4kkSp5W0xk1cklPj2FIVMFaknjfkX0ZCpkRC7OcUDNpzEt/x2dMZQHwt0DnIfy91QTyCiVatn7q9uvawd3TLGViGc2OyuDwgGaO0TwmSsxL+vbK6+RF/hPOe6HvYSaJR650b6gcqlmxm/9cHVMzBUJTaToohMJpg3MNjr9ZW05Id137+TzMrGNNRgo6unmwow7Bn08q1lyxgg//0XNMw5v3s0r8aXleqI4lrQ21vLjoenvGkCi6dea8n5LVKfq00yKjednfzi/aM7uTzFxhwoHbZk78K8hBYRfFhtTJaNRpEqll+5JyTwPQ1mQt8IxKWYYNvpWKLhTCEpqOUzeYl5wtDbw0mQ2Braljphj0v4SU74pjkhdVFTk6nAwVWojmrCEk3kywd5JHr+q3PhV0Vw== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DB8PR04MB6795.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(366004)(346002)(39860400002)(376002)(396003)(186003)(26005)(55016002)(86362001)(8676002)(83380400001)(966005)(66446008)(71200400001)(33656002)(7696005)(478600001)(64756008)(30864003)(76116006)(8936002)(54906003)(6506007)(53546011)(9686003)(52536014)(316002)(66476007)(2906002)(4326008)(5660300002)(66946007)(110136005)(66556008);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata: djv7WmYFuByJNWp/bfmgGe6wOU8BFp8Jy5X4fgFd97yudt3yQBGj+/RbegpMwNjUmbGgO6sHq9LAFfov1NB2kDOjcRZuTrAzc/Ooi2vWP9zybE0yP+AjJeMCm+58QrkOF87F404X8qCZ8ZWk52tddJo9pSP5p9unQdPPEDeVymIWa1w6iYiyhK5o7HkDvY3UuciD1ETpT6SwRvNry+OY76ABVjuPWRg5wJRNQqC0PROVwhq29m6rhSg/gEgq6Wk+R8POP5TJuNlArIZ66lJOiDvP2MeIBmVboyWV2Sur1xVAz6JIr2c9HeyGoHSwx/MzWFkLUCs+ingPRGoNrjFRKFTbFY5cZcCszE16lMQ3HUfv4coDTLh2r4sOJFuSymk1CRanvGK28UxO/dFabH0ssq8uDBW2CuQijLik6XGOa7buHW6qFiE1Egbf0MTxwDheuyi8FJyKXooxR7LmaIxOv3SshOTYFDjjnZIQNduTkDFdVtzVBMVyw8rW5ynm9FMPzHuFoVLqftVbrkdpwX7Zn5h50R+GtrRdhiybm59DbZ34QjPtJaLX0yI430J/OvMD14K+OXtt8s+31SivSfOrjLxAtGrKdIA4v7IQFXh64K5YU8opOMLCaUPmMqYynJIcr62CgdtBciCdoWGsAb1nxg== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DB8PR04MB6795.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: ada49155-343e-4b9e-890a-08d8719ff79e X-MS-Exchange-CrossTenant-originalarrivaltime: 16 Oct 2020 06:51:53.9552 (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-CrossTenant-userprincipalname: GSh+S8d3+jKSyfbVFw+y5XszDfeRvayxZUp0keIE7B0hq097VIuaj+K9m2paW9mqrsUnf52G9hoUrSZ+MR2g6g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0402MB2725 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org SGkgTWFyYywNCg0KPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBNYXJjIEts ZWluZS1CdWRkZSA8bWtsQHBlbmd1dHJvbml4LmRlPg0KPiBTZW50OiAyMDIw5bm0MTDmnIgxNuaX pSAxNDoxOQ0KPiBUbzogSm9ha2ltIFpoYW5nIDxxaWFuZ3FpbmcuemhhbmdAbnhwLmNvbT47IHJv YmgrZHRAa2VybmVsLm9yZzsNCj4gc2hhd25ndW9Aa2VybmVsLm9yZzsgcy5oYXVlckBwZW5ndXRy b25peC5kZQ0KPiBDYzoga2VybmVsQHBlbmd1dHJvbml4LmRlOyBkbC1saW51eC1pbXggPGxpbnV4 LWlteEBueHAuY29tPjsgWWluZyBMaXUNCj4gPHZpY3Rvci5saXVAbnhwLmNvbT47IFBlbmcgRmFu IDxwZW5nLmZhbkBueHAuY29tPjsNCj4gbGludXgtY2FuQHZnZXIua2VybmVsLm9yZzsgUGFua2Fq IEJhbnNhbCA8cGFua2FqLmJhbnNhbEBueHAuY29tPjsNCj4gbmV0ZGV2QHZnZXIua2VybmVsLm9y ZzsgZGV2aWNldHJlZUB2Z2VyLmtlcm5lbC5vcmc7DQo+IGxpbnV4LWtlcm5lbEB2Z2VyLmtlcm5l bC5vcmcNCj4gU3ViamVjdDogUmU6IFtQQVRDSCA1LzZdIGNhbjogZmxleGNhbjogYWRkIENBTiB3 YWtldXAgZnVuY3Rpb24gZm9yIGkuTVg4UU0NCj4gDQo+IE9uIDEwLzE2LzIwIDM6NDMgUE0sIEpv YWtpbSBaaGFuZyB3cm90ZToNCj4gPiBUaGUgU3lzdGVtIENvbnRyb2xsZXIgRmlybXdhcmUgKFND RlcpIGlzIGEgbG93LWxldmVsIHN5c3RlbSBmdW5jdGlvbg0KPiA+IHdoaWNoIHJ1bnMgb24gYSBk ZWRpY2F0ZWQgQ29ydGV4LU0gY29yZSB0byBwcm92aWRlIHBvd2VyLCBjbG9jaywgYW5kDQo+ID4g cmVzb3VyY2UgbWFuYWdlbWVudC4gSXQgZXhpc3RzIG9uIHNvbWUgaS5NWDggcHJvY2Vzc29ycy4g ZS5nLiBpLk1YOFFNDQo+ID4gKFFNLCBRUCksIGFuZCBpLk1YOFFYIChRWFAsIERYKS4gU0NVIGRy aXZlciBtYW5hZ2VzIHRoZSBJUEMgaW50ZXJmYWNlDQo+ID4gYmV0d2VlbiBob3N0IENQVSBhbmQg dGhlIFNDVSBmaXJtd2FyZSBydW5uaW5nIG9uIE00Lg0KPiA+DQo+ID4gRm9yIGkuTVg4UU0sIHN0 b3AgbW9kZSByZXF1ZXN0IGlzIGNvbnRyb2xsZWQgYnkgU3lzdGVtIENvbnRyb2xsZXINCj4gPiBV bml0KFNDVSkgZmlybXdhcmUsIHRoaXMgcGF0Y2ggaW50cm9kdWNlcw0KPiA+IEZMRVhDQU5fUVVJ UktfU0VUVVBfU1RPUF9NT0RFX1NDRlcgcXVpcmsgZm9yIHRoaXMgZnVuY3Rpb24uDQo+ID4NCj4g PiBTaWduZWQtb2ZmLWJ5OiBKb2FraW0gWmhhbmcgPHFpYW5ncWluZy56aGFuZ0BueHAuY29tPg0K PiA+IC0tLQ0KPiA+ICBkcml2ZXJzL25ldC9jYW4vZmxleGNhbi5jIHwgMTI1DQo+ID4gKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0NCj4gPiAgMSBmaWxlIGNoYW5nZWQsIDEw NyBpbnNlcnRpb25zKCspLCAxOCBkZWxldGlvbnMoLSkNCj4gPg0KPiA+IGRpZmYgLS1naXQgYS9k cml2ZXJzL25ldC9jYW4vZmxleGNhbi5jIGIvZHJpdmVycy9uZXQvY2FuL2ZsZXhjYW4uYw0KPiA+ IGluZGV4IGU3MDhlN2JmMjhkYi4uYTU1ZWE4ZjI3ZjdjIDEwMDY0NA0KPiA+IC0tLSBhL2RyaXZl cnMvbmV0L2Nhbi9mbGV4Y2FuLmMNCj4gPiArKysgYi9kcml2ZXJzL25ldC9jYW4vZmxleGNhbi5j DQo+ID4gQEAgLTksNiArOSw3IEBADQo+ID4gIC8vDQo+ID4gIC8vIEJhc2VkIG9uIGNvZGUgb3Jp Z2luYWxseSBieSBBbmRyZXkgVm9sa292IDxhdm9sa292QHZhcm1hLWVsLmNvbT4NCj4gPg0KPiA+ ICsjaW5jbHVkZSA8ZHQtYmluZGluZ3MvZmlybXdhcmUvaW14L3JzcmMuaD4NCj4gPiAgI2luY2x1 ZGUgPGxpbnV4L2JpdGZpZWxkLmg+DQo+ID4gICNpbmNsdWRlIDxsaW51eC9jYW4uaD4NCj4gPiAg I2luY2x1ZGUgPGxpbnV4L2Nhbi9kZXYuaD4NCj4gPiBAQCAtMTcsNiArMTgsNyBAQA0KPiA+ICAj aW5jbHVkZSA8bGludXgvY2FuL3J4LW9mZmxvYWQuaD4NCj4gPiAgI2luY2x1ZGUgPGxpbnV4L2Ns ay5oPg0KPiA+ICAjaW5jbHVkZSA8bGludXgvZGVsYXkuaD4NCj4gPiArI2luY2x1ZGUgPGxpbnV4 L2Zpcm13YXJlL2lteC9zY2kuaD4NCj4gPiAgI2luY2x1ZGUgPGxpbnV4L2ludGVycnVwdC5oPg0K PiA+ICAjaW5jbHVkZSA8bGludXgvaW8uaD4NCj4gPiAgI2luY2x1ZGUgPGxpbnV4L21mZC9zeXNj b24uaD4NCj4gPiBAQCAtMjQyLDYgKzI0NCw4IEBADQo+ID4gICNkZWZpbmUgRkxFWENBTl9RVUlS S19TVVBQT1JUX0ZEIEJJVCg5KQ0KPiA+ICAvKiBzdXBwb3J0IG1lbW9yeSBkZXRlY3Rpb24gYW5k IGNvcnJlY3Rpb24gKi8gICNkZWZpbmUNCj4gPiBGTEVYQ0FOX1FVSVJLX1NVUFBPUlRfRUNDIEJJ VCgxMCkNCj4gPiArLyogU2V0dXAgc3RvcCBtb2RlIHdpdGggU0NVIGZpcm13YXJlIHRvIHN1cHBv cnQgd2FrZXVwICovICNkZWZpbmUNCj4gPiArRkxFWENBTl9RVUlSS19TRVRVUF9TVE9QX01PREVf U0NGVyBCSVQoMTEpDQo+ID4NCj4gPiAgLyogU3RydWN0dXJlIG9mIHRoZSBtZXNzYWdlIGJ1ZmZl ciAqLyAgc3RydWN0IGZsZXhjYW5fbWIgeyBAQCAtMzQ3LDYNCj4gPiArMzUxLDcgQEAgc3RydWN0 IGZsZXhjYW5fcHJpdiB7DQo+ID4gIAl1OCBtYl9jb3VudDsNCj4gPiAgCXU4IG1iX3NpemU7DQo+ ID4gIAl1OCBjbGtfc3JjOwkvKiBjbG9jayBzb3VyY2Ugb2YgQ0FOIFByb3RvY29sIEVuZ2luZSAq Lw0KPiA+ICsJdTggY2FuX2lkeDsNCj4gPg0KPiA+ICAJdTY0IHJ4X21hc2s7DQo+ID4gIAl1NjQg dHhfbWFzazsNCj4gPiBAQCAtMzU4LDYgKzM2Myw5IEBAIHN0cnVjdCBmbGV4Y2FuX3ByaXYgew0K PiA+ICAJc3RydWN0IHJlZ3VsYXRvciAqcmVnX3hjZWl2ZXI7DQo+ID4gIAlzdHJ1Y3QgZmxleGNh bl9zdG9wX21vZGUgc3RtOw0KPiA+DQo+ID4gKwkvKiBJUEMgaGFuZGxlIHdoZW4gc2V0dXAgc3Rv cCBtb2RlIGJ5IFN5c3RlbSBDb250cm9sbGVyIGZpcm13YXJlKHNjZncpDQo+ICovDQo+ID4gKwlz dHJ1Y3QgaW14X3NjX2lwYyAqc2NfaXBjX2hhbmRsZTsNCj4gPiArDQo+ID4gIAkvKiBSZWFkIGFu ZCBXcml0ZSBBUElzICovDQo+ID4gIAl1MzIgKCpyZWFkKSh2b2lkIF9faW9tZW0gKmFkZHIpOw0K PiA+ICAJdm9pZCAoKndyaXRlKSh1MzIgdmFsLCB2b2lkIF9faW9tZW0gKmFkZHIpOyBAQCAtMzg3 LDcgKzM5NSw3IEBADQo+ID4gc3RhdGljIGNvbnN0IHN0cnVjdCBmbGV4Y2FuX2RldnR5cGVfZGF0 YSBmc2xfaW14NnFfZGV2dHlwZV9kYXRhID0gew0KPiA+IHN0YXRpYyBjb25zdCBzdHJ1Y3QgZmxl eGNhbl9kZXZ0eXBlX2RhdGEgZnNsX2lteDhxbV9kZXZ0eXBlX2RhdGEgPSB7DQo+ID4gIAkucXVp cmtzID0gRkxFWENBTl9RVUlSS19ESVNBQkxFX1JYRkcgfA0KPiBGTEVYQ0FOX1FVSVJLX0VOQUJM RV9FQUNFTl9SUlMgfA0KPiA+ICAJCUZMRVhDQU5fUVVJUktfVVNFX09GRl9USU1FU1RBTVAgfA0K PiBGTEVYQ0FOX1FVSVJLX0JST0tFTl9QRVJSX1NUQVRFIHwNCj4gPiAtCQlGTEVYQ0FOX1FVSVJL X1NVUFBPUlRfRkQsDQo+ID4gKwkJRkxFWENBTl9RVUlSS19TVVBQT1JUX0ZEIHwNCj4gRkxFWENB Tl9RVUlSS19TRVRVUF9TVE9QX01PREVfU0NGVywNCj4gPiAgfTsNCj4gPg0KPiA+ICBzdGF0aWMg c3RydWN0IGZsZXhjYW5fZGV2dHlwZV9kYXRhIGZzbF9pbXg4bXBfZGV2dHlwZV9kYXRhID0geyBA QA0KPiA+IC01NDYsMTggKzU1NCw0NiBAQCBzdGF0aWMgdm9pZCBmbGV4Y2FuX2VuYWJsZV93YWtl dXBfaXJxKHN0cnVjdA0KPiBmbGV4Y2FuX3ByaXYgKnByaXYsIGJvb2wgZW5hYmxlKQ0KPiA+ICAJ cHJpdi0+d3JpdGUocmVnX21jciwgJnJlZ3MtPm1jcik7DQo+ID4gIH0NCj4gPg0KPiA+ICtzdGF0 aWMgaW50IGZsZXhjYW5fc3RvcF9tb2RlX2VuYWJsZV9zY2Z3KHN0cnVjdCBmbGV4Y2FuX3ByaXYg KnByaXYsDQo+ID4gK2Jvb2wgZW5hYmxlZCkgew0KPiA+ICsJdTggaWR4ID0gcHJpdi0+Y2FuX2lk eDsNCj4gPiArCXUzMiByc3JjX2lkLCB2YWw7DQo+ID4gKw0KPiA+ICsJaWYgKGlkeCA9PSAwKQ0K PiA+ICsJCXJzcmNfaWQgPSBJTVhfU0NfUl9DQU5fMDsNCj4gPiArCWVsc2UgaWYgKGlkeCA9PSAx KQ0KPiA+ICsJCXJzcmNfaWQgPSBJTVhfU0NfUl9DQU5fMTsNCj4gPiArCWVsc2UNCj4gPiArCQly c3JjX2lkID0gSU1YX1NDX1JfQ0FOXzI7DQo+IA0KPiBDYW4geW91IGludHJvZHVjZSBzb21ldGhp bmcgbGlrZSBhbmQgbWFrZSB1c2Ugb2YgaXQ6DQo+IA0KPiAjZGVmaW5lIElNWF9TQ19SX0NBTih4 KQkJCSgxMDUgKyAoeCkpDQpPSy4NCg0KDQo+ID4gKw0KPiA+ICsJaWYgKGVuYWJsZWQpDQo+ID4g KwkJdmFsID0gMTsNCj4gPiArCWVsc2UNCj4gPiArCQl2YWwgPSAwOw0KPiA+ICsNCj4gPiArCS8q IHN0b3AgbW9kZSByZXF1ZXN0IHZpYSBzY3UgZmlybXdhcmUgKi8NCj4gPiArCXJldHVybiBpbXhf c2NfbWlzY19zZXRfY29udHJvbChwcml2LT5zY19pcGNfaGFuZGxlLCByc3JjX2lkLA0KPiA+ICtJ TVhfU0NfQ19JUEdfU1RPUCwgdmFsKTsgfQ0KPiA+ICsNCj4gPiAgc3RhdGljIGlubGluZSBpbnQg ZmxleGNhbl9lbnRlcl9zdG9wX21vZGUoc3RydWN0IGZsZXhjYW5fcHJpdiAqcHJpdikNCj4gPiB7 DQo+ID4gIAlzdHJ1Y3QgZmxleGNhbl9yZWdzIF9faW9tZW0gKnJlZ3MgPSBwcml2LT5yZWdzOw0K PiA+ICAJdTMyIHJlZ19tY3I7DQo+ID4gKwlpbnQgcmV0Ow0KPiA+DQo+ID4gIAlyZWdfbWNyID0g cHJpdi0+cmVhZCgmcmVncy0+bWNyKTsNCj4gPiAgCXJlZ19tY3IgfD0gRkxFWENBTl9NQ1JfU0xG X1dBSzsNCj4gPiAgCXByaXYtPndyaXRlKHJlZ19tY3IsICZyZWdzLT5tY3IpOw0KPiA+DQo+ID4g IAkvKiBlbmFibGUgc3RvcCByZXF1ZXN0ICovDQo+ID4gLQlyZWdtYXBfdXBkYXRlX2JpdHMocHJp di0+c3RtLmdwciwgcHJpdi0+c3RtLnJlcV9ncHIsDQo+ID4gLQkJCSAgIDEgPDwgcHJpdi0+c3Rt LnJlcV9iaXQsIDEgPDwgcHJpdi0+c3RtLnJlcV9iaXQpOw0KPiA+ICsJaWYgKHByaXYtPmRldnR5 cGVfZGF0YS0+cXVpcmtzICYNCj4gRkxFWENBTl9RVUlSS19TRVRVUF9TVE9QX01PREVfU0NGVykg ew0KPiA+ICsJCXJldCA9IGZsZXhjYW5fc3RvcF9tb2RlX2VuYWJsZV9zY2Z3KHByaXYsIHRydWUp Ow0KPiA+ICsJCWlmIChyZXQgPCAwKQ0KPiA+ICsJCQlyZXR1cm4gcmV0Ow0KPiA+ICsJfSBlbHNl IHsNCj4gPiArCQlyZWdtYXBfdXBkYXRlX2JpdHMocHJpdi0+c3RtLmdwciwgcHJpdi0+c3RtLnJl cV9ncHIsDQo+ID4gKwkJCQkgICAxIDw8IHByaXYtPnN0bS5yZXFfYml0LCAxIDw8IHByaXYtPnN0 bS5yZXFfYml0KTsNCj4gPiArCX0NCj4gPg0KPiA+ICAJcmV0dXJuIGZsZXhjYW5fbG93X3Bvd2Vy X2VudGVyX2Fjayhwcml2KTsNCj4gPiAgfQ0KPiA+IEBAIC01NjYsMTAgKzYwMiwxNyBAQCBzdGF0 aWMgaW5saW5lIGludCBmbGV4Y2FuX2V4aXRfc3RvcF9tb2RlKHN0cnVjdA0KPiA+IGZsZXhjYW5f cHJpdiAqcHJpdikgIHsNCj4gPiAgCXN0cnVjdCBmbGV4Y2FuX3JlZ3MgX19pb21lbSAqcmVncyA9 IHByaXYtPnJlZ3M7DQo+ID4gIAl1MzIgcmVnX21jcjsNCj4gPiArCWludCByZXQ7DQo+ID4NCj4g PiAgCS8qIHJlbW92ZSBzdG9wIHJlcXVlc3QgKi8NCj4gPiAtCXJlZ21hcF91cGRhdGVfYml0cyhw cml2LT5zdG0uZ3ByLCBwcml2LT5zdG0ucmVxX2dwciwNCj4gPiAtCQkJICAgMSA8PCBwcml2LT5z dG0ucmVxX2JpdCwgMCk7DQo+ID4gKwlpZiAocHJpdi0+ZGV2dHlwZV9kYXRhLT5xdWlya3MgJg0K PiBGTEVYQ0FOX1FVSVJLX1NFVFVQX1NUT1BfTU9ERV9TQ0ZXKSB7DQo+ID4gKwkJcmV0ID0gZmxl eGNhbl9zdG9wX21vZGVfZW5hYmxlX3NjZncocHJpdiwgZmFsc2UpOw0KPiA+ICsJCWlmIChyZXQg PCAwKQ0KPiA+ICsJCQlyZXR1cm4gcmV0Ow0KPiA+ICsJfSBlbHNlIHsNCj4gPiArCQlyZWdtYXBf dXBkYXRlX2JpdHMocHJpdi0+c3RtLmdwciwgcHJpdi0+c3RtLnJlcV9ncHIsDQo+ID4gKwkJCQkg ICAxIDw8IHByaXYtPnN0bS5yZXFfYml0LCAwKTsNCj4gPiArCX0NCj4gPg0KPiA+ICAJcmVnX21j ciA9IHByaXYtPnJlYWQoJnJlZ3MtPm1jcik7DQo+ID4gIAlyZWdfbWNyICY9IH5GTEVYQ0FOX01D Ul9TTEZfV0FLOw0KPiA+IEBAIC0xODM4LDcgKzE4ODEsNyBAQCBzdGF0aWMgdm9pZCB1bnJlZ2lz dGVyX2ZsZXhjYW5kZXYoc3RydWN0DQo+IG5ldF9kZXZpY2UgKmRldikNCj4gPiAgCXVucmVnaXN0 ZXJfY2FuZGV2KGRldik7DQo+ID4gIH0NCj4gPg0KPiA+IC1zdGF0aWMgaW50IGZsZXhjYW5fc2V0 dXBfc3RvcF9tb2RlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYpDQo+ID4gK3N0YXRpYyBp bnQgZmxleGNhbl9zZXR1cF9zdG9wX21vZGVfZ3ByKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBk ZXYpDQo+ID4gIHsNCj4gPiAgCXN0cnVjdCBuZXRfZGV2aWNlICpkZXYgPSBwbGF0Zm9ybV9nZXRf ZHJ2ZGF0YShwZGV2KTsNCj4gPiAgCXN0cnVjdCBkZXZpY2Vfbm9kZSAqbnAgPSBwZGV2LT5kZXYu b2Zfbm9kZTsgQEAgLTE4ODMsMTEgKzE5MjYsNiBAQA0KPiA+IHN0YXRpYyBpbnQgZmxleGNhbl9z ZXR1cF9zdG9wX21vZGUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikNCj4gPiAgCQkiZ3By ICVzIHJlcV9ncHI9MHgwMiV4IHJlcV9iaXQ9JXVcbiIsDQo+ID4gIAkJZ3ByX25wLT5mdWxsX25h bWUsIHByaXYtPnN0bS5yZXFfZ3ByLCBwcml2LT5zdG0ucmVxX2JpdCk7DQo+ID4NCj4gPiAtCWRl dmljZV9zZXRfd2FrZXVwX2NhcGFibGUoJnBkZXYtPmRldiwgdHJ1ZSk7DQo+ID4gLQ0KPiA+IC0J aWYgKG9mX3Byb3BlcnR5X3JlYWRfYm9vbChucCwgIndha2V1cC1zb3VyY2UiKSkNCj4gPiAtCQlk ZXZpY2Vfc2V0X3dha2V1cF9lbmFibGUoJnBkZXYtPmRldiwgdHJ1ZSk7DQo+ID4gLQ0KPiA+ICAJ cmV0dXJuIDA7DQo+ID4NCj4gPiAgb3V0X3B1dF9ub2RlOg0KPiA+IEBAIC0xODk1LDYgKzE5MzMs NTYgQEAgc3RhdGljIGludCBmbGV4Y2FuX3NldHVwX3N0b3BfbW9kZShzdHJ1Y3QNCj4gcGxhdGZv cm1fZGV2aWNlICpwZGV2KQ0KPiA+ICAJcmV0dXJuIHJldDsNCj4gPiAgfQ0KPiA+DQo+ID4gK3N0 YXRpYyBpbnQgZmxleGNhbl9zZXR1cF9zdG9wX21vZGVfc2NmdyhzdHJ1Y3QgcGxhdGZvcm1fZGV2 aWNlICpwZGV2KQ0KPiA+ICt7DQo+ID4gKwlzdHJ1Y3QgbmV0X2RldmljZSAqZGV2ID0gcGxhdGZv cm1fZ2V0X2RydmRhdGEocGRldik7DQo+ID4gKwlzdHJ1Y3QgZmxleGNhbl9wcml2ICpwcml2Ow0K PiA+ICsJaW50IHJldDsNCj4gPiArDQo+ID4gKwlwcml2ID0gbmV0ZGV2X3ByaXYoZGV2KTsNCj4g PiArDQo+ID4gKwkvKiB0aGlzIGZ1bmN0aW9uIGNvdWxkIGJlIGRlZmVyIHByb2JlLCByZXR1cm4g LUVQUk9CRV9ERUZFUiAqLw0KPiA+ICsJcmV0ID0gaW14X3NjdV9nZXRfaGFuZGxlKCZwcml2LT5z Y19pcGNfaGFuZGxlKTsNCj4gPiArCWlmIChyZXQgPCAwKQ0KPiA+ICsJCWRldl9kYmcoJnBkZXYt PmRldiwgImdldCBpcGMgaGFuZGxlIHVzZWQgYnkgU0NVIGZhaWxlZFxuIik7DQo+ID4gKw0KPiA+ ICsJcmV0dXJuIHJldDsNCj4gPiArfQ0KPiA+ICsNCj4gPiArLyogZmxleGNhbl9zZXR1cF9zdG9w X21vZGUgLSBTZXR1cCBzdG9wIG1vZGUNCj4gPiArICoNCj4gPiArICogUmV0dXJuOiAwIHNldHVw IHN0b3AgbW9kZSBzdWNjZXNzZnVsbHkgb3IgZG9lc24ndCBzdXBwb3J0IHRoaXMgZmVhdHVyZQ0K PiA+ICsgKiAgICAgICAgIC1FUFJPQkVfREVGRVIgZGVmZXIgcHJvYmUNCj4gPiArICogICAgICAg ICA8IDAgZmFpbCB0byBzZXR1cCBzdG9wIG1vZGUNCj4gPiArICovDQo+ID4gK3N0YXRpYyBpbnQg ZmxleGNhbl9zZXR1cF9zdG9wX21vZGUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikgew0K PiA+ICsJc3RydWN0IG5ldF9kZXZpY2UgKmRldiA9IHBsYXRmb3JtX2dldF9kcnZkYXRhKHBkZXYp Ow0KPiA+ICsJc3RydWN0IGZsZXhjYW5fcHJpdiAqcHJpdjsNCj4gPiArCWludCByZXQ7DQo+ID4g Kw0KPiA+ICsJcHJpdiA9IG5ldGRldl9wcml2KGRldik7DQo+ID4gKw0KPiA+ICsJaWYgKHByaXYt PmRldnR5cGVfZGF0YS0+cXVpcmtzICYNCj4gRkxFWENBTl9RVUlSS19TRVRVUF9TVE9QX01PREVf U0NGVykNCj4gPiArCQlyZXQgPSBmbGV4Y2FuX3NldHVwX3N0b3BfbW9kZV9zY2Z3KHBkZXYpOw0K PiA+ICsJZWxzZSBpZiAocHJpdi0+ZGV2dHlwZV9kYXRhLT5xdWlya3MgJg0KPiBGTEVYQ0FOX1FV SVJLX1NFVFVQX1NUT1BfTU9ERV9HUFIpDQo+ID4gKwkJcmV0ID0gZmxleGNhbl9zZXR1cF9zdG9w X21vZGVfZ3ByKHBkZXYpOw0KPiA+ICsJZWxzZQ0KPiA+ICsJCS8qIHJldHVybiAwIGRpcmVjdGx5 IGlmIHN0b3AgbW9kZSBpcyB1bnN1cHBvcnQgKi8NCj4gPiArCQlyZXR1cm4gMDsNCj4gPiArDQo+ ID4gKwlpZiAocmV0KSB7DQo+ID4gKwkJZGV2X3dhcm4oJnBkZXYtPmRldiwgImZhaWxlZCB0byBz ZXR1cCBzdG9wIG1vZGVcbiIpOw0KPiANCj4gcmV0dXJuIGhlcmUuLi4NCk15IHRob3VnaHQgd2Fz IHRoYXQsIENBTiBzdGlsbCB3b3JrIGV2ZW4gZmFpbGVkIHRvIHNldHVwIHN0b3AgbW9kZS4gSWYg eW91IHRoaW5rIGl0IGlzIGJldHRlciwgSSB3aWxsIGNoYW5nZSB0aGUgd2F5IG9mIHNldHVwIHN0 b3AgbW9kZSwgbGV0IHByb2JlIGZhaWxlZCBpZiBjYW4ndCBzZXR1cCBpdCBzdWNjZXNzZnVsbHku DQoNCj4gPiArCX0gZWxzZSB7DQo+IA0KPiAuLi5hbmQgcmVtb3ZlIHRoZSBlbHNlDQpPSy4NCg0K DQo+ID4gKwkJZGV2aWNlX3NldF93YWtldXBfY2FwYWJsZSgmcGRldi0+ZGV2LCB0cnVlKTsNCj4g PiArDQo+ID4gKwkJaWYgKG9mX3Byb3BlcnR5X3JlYWRfYm9vbChwZGV2LT5kZXYub2Zfbm9kZSwg Indha2V1cC1zb3VyY2UiKSkNCj4gPiArCQkJZGV2aWNlX3NldF93YWtldXBfZW5hYmxlKCZwZGV2 LT5kZXYsIHRydWUpOw0KPiA+ICsJfQ0KPiA+ICsNCj4gPiArCXJldHVybiByZXQ7DQo+ID4gK30N Cj4gPiArDQo+ID4gIHN0YXRpYyBjb25zdCBzdHJ1Y3Qgb2ZfZGV2aWNlX2lkIGZsZXhjYW5fb2Zf bWF0Y2hbXSA9IHsNCj4gPiAgCXsgLmNvbXBhdGlibGUgPSAiZnNsLGlteDhxbS1mbGV4Y2FuIiwg LmRhdGEgPQ0KPiAmZnNsX2lteDhxbV9kZXZ0eXBlX2RhdGEsIH0sDQo+ID4gIAl7IC5jb21wYXRp YmxlID0gImZzbCxpbXg4bXAtZmxleGNhbiIsIC5kYXRhID0NCj4gPiAmZnNsX2lteDhtcF9kZXZ0 eXBlX2RhdGEsIH0sIEBAIC0xOTI3LDcgKzIwMTUsNyBAQCBzdGF0aWMgaW50DQo+IGZsZXhjYW5f cHJvYmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikNCj4gPiAgCXN0cnVjdCBjbGsgKmNs a19pcGcgPSBOVUxMLCAqY2xrX3BlciA9IE5VTEw7DQo+ID4gIAlzdHJ1Y3QgZmxleGNhbl9yZWdz IF9faW9tZW0gKnJlZ3M7DQo+ID4gIAlpbnQgZXJyLCBpcnE7DQo+ID4gLQl1OCBjbGtfc3JjID0g MTsNCj4gPiArCXU4IGNsa19zcmMgPSAxLCBjYW5faWR4ID0gMDsNCj4gPiAgCXUzMiBjbG9ja19m cmVxID0gMDsNCj4gPg0KPiA+ICAJcmVnX3hjZWl2ZXIgPSBkZXZtX3JlZ3VsYXRvcl9nZXRfb3B0 aW9uYWwoJnBkZXYtPmRldiwgInhjZWl2ZXIiKTsgQEANCj4gPiAtMTk0Myw2ICsyMDMxLDggQEAg c3RhdGljIGludCBmbGV4Y2FuX3Byb2JlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYpDQo+ ID4gIAkJCQkgICAgICJjbG9jay1mcmVxdWVuY3kiLCAmY2xvY2tfZnJlcSk7DQo+ID4gIAkJb2Zf cHJvcGVydHlfcmVhZF91OChwZGV2LT5kZXYub2Zfbm9kZSwNCj4gPiAgCQkJCSAgICAiZnNsLGNs ay1zb3VyY2UiLCAmY2xrX3NyYyk7DQo+ID4gKwkJb2ZfcHJvcGVydHlfcmVhZF91OChwZGV2LT5k ZXYub2Zfbm9kZSwNCj4gPiArCQkJCSAgICAiZnNsLGNhbi1pbmRleCIsICZjYW5faWR4KTsNCj4g DQo+IFdoYXQgaGFwcGVucyBpZiB0aGUgRFQgZG9lc24ndCBjb250YWluIHRoZSBjYW4taW5kZXg/ IE1vdmUgdGhpcyBpbnRvIHRoZQ0KPiBmbGV4Y2FuX3NldHVwX3N0b3BfbW9kZV9zY2Z3KCkgYW5k IGFkZCBlcnJvciBoYW5kbGluZy4NCg0KTWFrZSBzZW5zZS4NCg0KPiA+ICAJfQ0KPiA+DQo+ID4g IAlpZiAoIWNsb2NrX2ZyZXEpIHsNCj4gPiBAQCAtMjAxOSw2ICsyMTA5LDcgQEAgc3RhdGljIGlu dCBmbGV4Y2FuX3Byb2JlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UNCj4gKnBkZXYpDQo+ID4gIAlw cml2LT5jbGtfc3JjID0gY2xrX3NyYzsNCj4gPiAgCXByaXYtPmRldnR5cGVfZGF0YSA9IGRldnR5 cGVfZGF0YTsNCj4gPiAgCXByaXYtPnJlZ194Y2VpdmVyID0gcmVnX3hjZWl2ZXI7DQo+ID4gKwlw cml2LT5jYW5faWR4ID0gY2FuX2lkeDsNCj4gDQo+IEFzc2lnbiBwcml2LT5jYW5faWR4IGluIGZs ZXhjYW5fc2V0dXBfc3RvcF9tb2RlX3NjZncoKSwgdG9vLg0KT0suDQoNCkJlc3QgUmVnYXJkcywN CkpvYWtpbSBaaGFuZw0KPiA+DQo+ID4gIAlpZiAocHJpdi0+ZGV2dHlwZV9kYXRhLT5xdWlya3Mg JiBGTEVYQ0FOX1FVSVJLX1NVUFBPUlRfRkQpIHsNCj4gPiAgCQlwcml2LT5jYW4uY3RybG1vZGVf c3VwcG9ydGVkIHw9IENBTl9DVFJMTU9ERV9GRCB8IEBADQo+IC0yMDMwLDYNCj4gPiArMjEyMSwx MCBAQCBzdGF0aWMgaW50IGZsZXhjYW5fcHJvYmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRl dikNCj4gPiAgCQlwcml2LT5jYW4uYml0dGltaW5nX2NvbnN0ID0gJmZsZXhjYW5fYml0dGltaW5n X2NvbnN0Ow0KPiA+ICAJfQ0KPiA+DQo+ID4gKwllcnIgPSBmbGV4Y2FuX3NldHVwX3N0b3BfbW9k ZShwZGV2KTsNCj4gPiArCWlmIChlcnIgPT0gLUVQUk9CRV9ERUZFUikNCj4gPiArCQlyZXR1cm4g LUVQUk9CRV9ERUZFUjsNCj4gPiArDQo+ID4gIAlwbV9ydW50aW1lX2dldF9ub3Jlc3VtZSgmcGRl di0+ZGV2KTsNCj4gPiAgCXBtX3J1bnRpbWVfc2V0X2FjdGl2ZSgmcGRldi0+ZGV2KTsNCj4gPiAg CXBtX3J1bnRpbWVfZW5hYmxlKCZwZGV2LT5kZXYpOw0KPiA+IEBAIC0yMDQzLDEyICsyMTM4LDYg QEAgc3RhdGljIGludCBmbGV4Y2FuX3Byb2JlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UNCj4gKnBk ZXYpDQo+ID4gIAlvZl9jYW5fdHJhbnNjZWl2ZXIoZGV2KTsNCj4gPiAgCWRldm1fY2FuX2xlZF9p bml0KGRldik7DQo+ID4NCj4gPiAtCWlmIChwcml2LT5kZXZ0eXBlX2RhdGEtPnF1aXJrcyAmDQo+ IEZMRVhDQU5fUVVJUktfU0VUVVBfU1RPUF9NT0RFX0dQUikgew0KPiA+IC0JCWVyciA9IGZsZXhj YW5fc2V0dXBfc3RvcF9tb2RlKHBkZXYpOw0KPiA+IC0JCWlmIChlcnIpDQo+ID4gLQkJCWRldl9k YmcoJnBkZXYtPmRldiwgImZhaWxlZCB0byBzZXR1cCBzdG9wLW1vZGVcbiIpOw0KPiA+IC0JfQ0K PiA+IC0NCj4gPiAgCXJldHVybiAwOw0KPiA+DQo+ID4gICBmYWlsZWRfcmVnaXN0ZXI6DQo+ID4N Cj4gDQo+IE1hcmMNCj4gDQo+IC0tDQo+IFBlbmd1dHJvbml4IGUuSy4gICAgICAgICAgICAgICAg IHwgTWFyYyBLbGVpbmUtQnVkZGUgICAgICAgICAgIHwNCj4gRW1iZWRkZWQgTGludXggICAgICAg ICAgICAgICAgICAgfCBodHRwczovL3d3dy5wZW5ndXRyb25peC5kZSAgfA0KPiBWZXJ0cmV0dW5n IFdlc3QvRG9ydG11bmQgICAgICAgICB8IFBob25lOiArNDktMjMxLTI4MjYtOTI0ICAgICB8DQo+ IEFtdHNnZXJpY2h0IEhpbGRlc2hlaW0sIEhSQSAyNjg2IHwgRmF4OiAgICs0OS01MTIxLTIwNjkx Ny01NTU1IHwNCg0K