From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2F7E1C001DC for ; Mon, 31 Jul 2023 03:02:12 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 2341A280013; Sun, 30 Jul 2023 23:02:11 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 1BD21280012; Sun, 30 Jul 2023 23:02:11 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id F2A6D280013; Sun, 30 Jul 2023 23:02:10 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id D937E280012 for ; Sun, 30 Jul 2023 23:02:10 -0400 (EDT) Received: from smtpin20.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 9801340AF2 for ; Mon, 31 Jul 2023 03:02:10 +0000 (UTC) X-FDA: 81070408020.20.9D353AC Received: from mgamail.intel.com (unknown [134.134.136.31]) by imf16.hostedemail.com (Postfix) with ESMTP id 090E0180019 for ; Mon, 31 Jul 2023 03:02:05 +0000 (UTC) Authentication-Results: imf16.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=VN0b+Gkx; dmarc=pass (policy=none) header.from=intel.com; arc=pass ("microsoft.com:s=arcselector9901:i=1"); spf=pass (imf16.hostedemail.com: domain of yujie.liu@intel.com designates 134.134.136.31 as permitted sender) smtp.mailfrom=yujie.liu@intel.com ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1690772527; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=g0G7FPLpp4spdxJAXNQOV7ejLFLY9uPoR9pV9LCGz08=; b=BWYaAcSWWHnNktW/+zLSqCoWLWgE/NjFGmBVOwamrgXz4DIxKwus8JmeGDXdfp+6wrcAgX 7tGR7wrUcHmp7GZSMVOQhbUOvg79BOb6S1smnCTc0HHjBv8AzsgxSgEzoHLjmV1WDDa/I7 ynB76puKZkv+CYLbznJrX+QndYdMk2A= ARC-Authentication-Results: i=2; imf16.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=VN0b+Gkx; dmarc=pass (policy=none) header.from=intel.com; arc=pass ("microsoft.com:s=arcselector9901:i=1"); spf=pass (imf16.hostedemail.com: domain of yujie.liu@intel.com designates 134.134.136.31 as permitted sender) smtp.mailfrom=yujie.liu@intel.com ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1690772527; a=rsa-sha256; cv=pass; b=W6r7uf2n5I0YS9HQpMrn4567/IQo2uk5V7vRlgOEjdmoi6o0zfgQvevmqUIFRN97UpNuMx 9rcCkdx+wYIlEouvNKo0liOJZuGyal5Pof878/keFkZ/51cdm/KHYu+elGPM2P7PDyQEBt rI1eYA+LRhMHZVwC9mULil9+XcBqbh8= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1690772526; x=1722308526; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-id:content-transfer-encoding: mime-version; bh=g0G7FPLpp4spdxJAXNQOV7ejLFLY9uPoR9pV9LCGz08=; b=VN0b+Gkx6d06ILrW7mZ857a6uAFxR5Fyp49CxNit7aAsQ2FIee5CqK2D jPdb5vckeoWYS+ieWQgl2m9i9cI4AvHZfKd2ycpjCRht33MOwUUrPOaQw VWt9OiGmJP52OMOxThyZ8viDV4cd78FP7RTeCkUi8ETBc8CfNqWPFAB0Z UuqQzmAaVsdikkkCw4Ri1jdzhTziKHu8Q0h0pLWsY4akyMj6IGT5sesjY 2bFIVRDAtPE9d67D5fpfsJEcYqcA1mKPzBPIn0ySOZQ7Emm9zubkOmNxG cxZYYe+9WU2A3Hns3ArFYR0zuOuqLpQHh7SNHgBxeCdONx0j5HUUjY5am A==; X-IronPort-AV: E=McAfee;i="6600,9927,10787"; a="432715980" X-IronPort-AV: E=Sophos;i="6.01,243,1684825200"; d="scan'208";a="432715980" Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 30 Jul 2023 20:02:03 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10787"; a="842062407" X-IronPort-AV: E=Sophos;i="6.01,243,1684825200"; d="scan'208";a="842062407" Received: from orsmsx603.amr.corp.intel.com ([10.22.229.16]) by fmsmga002.fm.intel.com with ESMTP; 30 Jul 2023 20:02:02 -0700 Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) by ORSMSX603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Sun, 30 Jul 2023 20:02:02 -0700 Received: from orsmsx612.amr.corp.intel.com (10.22.229.25) by ORSMSX610.amr.corp.intel.com (10.22.229.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Sun, 30 Jul 2023 20:02:02 -0700 Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) by orsmsx612.amr.corp.intel.com (10.22.229.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27 via Frontend Transport; Sun, 30 Jul 2023 20:02:02 -0700 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (104.47.66.42) by edgegateway.intel.com (134.134.137.103) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.27; Sun, 30 Jul 2023 20:02:02 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=glJaq31Mg2LLpsUNg6m3MvE+4sG/lExSaa5H7727eLNJYnrOhdLLVtWiVqJQHzI8PGOh9ydI1cCGQ340t5f5MNlXsnze99Z0vfvFudjgv7sIX0HCkSE+Lxty7E4KS+o5lKpsnbxHJvFJ20qEQV3KJVyQ/3SEzBPPNQF6B44G88Xc4jHf4nmMsXASBwkZXbahdCG9TT2iB4CpEfc+b9a+TAhWKy9geFGJCdv5VTdgXVIOpKMMzaDTazkn1ciNEJw+aOLvhGmVl8bIupoZUJE3HX13fLz2nz7dWuJcGadpSGqjvoyMW5obCqB3hMivN0aqlryL2/jl+YJ0fvbAvyP5YQ== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=g0G7FPLpp4spdxJAXNQOV7ejLFLY9uPoR9pV9LCGz08=; b=iBvvEqBcWPYZACcRi8RaIHGPeBgXUxrrQuGnSUalI8/Dex/QwgexsjaLRkOoO+GTbHE+IhTghofAkpuLa3MbaB0aSyPyRpnyQbT1rzEvG0Si4oomsB6co3eFa27SZ24v7ugka725UXKBVWb8H155EbYzwoHE43WesXwo4w6slPNOhfQR44Aif7pDSypMgiNgdkcnaeIo+jmiCctDO+qvsA4ZKvMKxJv+24MJDay3KIGSvDfjuYUDzHOh+l6VErNAqejKjsSY28JSzWgGfqLiokoLiCHF5wOkSXaLxBboxa82qT9PO3XHSFl9vo+ksDMYJPxOMt7/rQg9ioEu2UL1aw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from CY5PR11MB6392.namprd11.prod.outlook.com (2603:10b6:930:37::15) by PH7PR11MB7514.namprd11.prod.outlook.com (2603:10b6:510:276::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6631.42; Mon, 31 Jul 2023 03:02:00 +0000 Received: from CY5PR11MB6392.namprd11.prod.outlook.com ([fe80::c407:a2ef:2fde:f6d1]) by CY5PR11MB6392.namprd11.prod.outlook.com ([fe80::c407:a2ef:2fde:f6d1%4]) with mapi id 15.20.6631.039; Mon, 31 Jul 2023 03:01:59 +0000 From: "Liu, Yujie" To: "biju.das.jz@bp.renesas.com" CC: "linux-mm@kvack.org" , "lee@kernel.org" , "geert+renesas@glider.be" , lkp , "oe-kbuild-all@lists.linux.dev" Subject: Re: [linux-next:master 1582/5027] drivers/counter/rz-mtu3-cnt.c:602: undefined reference to `rz_mtu3_shared_reg_update_bit' Thread-Topic: [linux-next:master 1582/5027] drivers/counter/rz-mtu3-cnt.c:602: undefined reference to `rz_mtu3_shared_reg_update_bit' Thread-Index: AQHZwPOtK+LMJt0EU0y2DQizjVtD5q/OvwCAgAR0ugA= Date: Mon, 31 Jul 2023 03:01:59 +0000 Message-ID: <04e115278d1c5ccfcb964d1b11f31108a36a4abe.camel@intel.com> References: <202307280957.1acIz9dc-lkp@intel.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Evolution 3.44.4-0ubuntu1 x-ms-publictraffictype: Email x-ms-traffictypediagnostic: CY5PR11MB6392:EE_|PH7PR11MB7514:EE_ x-ms-office365-filtering-correlation-id: d6da5218-dbdb-4eff-105b-08db917281ed x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: mYESDOw25hGi6Wxsp4sQRuhoTwVZrpW7/3y4WTCoChOOppBoEFZy45F9rkdEU7R9QXESyMPxtzvZqqlbPVxWVEcIHB1YThFq64zkWTcLqORQ08Yh8la0xyuegBShT+dnC8KWlMO8x2oltlPGMWrw4oT4xcOh1gZkIsDod3NRSQYAddVMA57KM+FlaQIUhp2qqQofAvDMcmkHC+4BX2yR9aQuuey3NGW2+4951ZqsFXFamrRe7eCnqUeDru32znVTGUcOdwvIxP5Gb3HVje/mwPDebeRVZ8Gql52VKCddBZEE/L/CVmKVZD+rP1ow5s/oL1XYQ2sJGfh6XyMA1WhYuniHSvaFNhmSKsIh9E3vRfnEtuzEfccO0eP/APDe3H9qrjGnUzMdNu1yJuKf3B+DA+OFGdfcFF6Fos6RYMPnbO2cuM5gy99oTWngRN3vXKNF2dX1d4Ezba3YImB9eXZxFXWgzbvZcAvAzO/7CsknPyz9+MOcGYdpVh1MaiWBF5Q/0Ut9HvaQgJod71GghK9mHpqXDQM7AF8WzapVlQ7c8qF9p/1jSkQ7xS87d1GnpaT0PsaHSm/uzd1/6hWjksRmgmr9XemjatTO+sBzzphLlh6W+KswJdb/2eak8xSTyFrD x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CY5PR11MB6392.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(346002)(366004)(396003)(136003)(39860400002)(451199021)(38100700002)(82960400001)(122000001)(86362001)(38070700005)(36756003)(6512007)(966005)(71200400001)(478600001)(6486002)(2616005)(186003)(26005)(6506007)(8936002)(8676002)(5660300002)(76116006)(66946007)(66556008)(66476007)(91956017)(54906003)(2906002)(64756008)(41300700001)(66446008)(6916009)(4326008)(30864003)(316002)(83380400001)(81973001)(559001)(579004);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?enJCNlBFTlJEdWg0UnN6RlB4MDRmT2VRSGJkV2hBd1NvcHRQRGRTbngrRVVN?= =?utf-8?B?b0E4YU1OMUZuN05XNDZEOGY3TXBKQUhoRTNSUXpqdHVWOXMvQmplQVpMUG40?= =?utf-8?B?QUtpSjRnK09sMldNOFRyWVFZWEFOS01nc0ZyRk85WUpleFZPYUlEN05NNlY2?= =?utf-8?B?LzFrZWVPdjVNRnBucDhwQXR4ck96UHNDYUNXOXBOZGg1RFBhRHI5K1hxQTcr?= =?utf-8?B?MEJlTXN0WjVrOUxDYk1LbVM4YlkvSUVUcDZHMEEyQmU2WC9yS0FrY1hQVGcx?= =?utf-8?B?M0pCenl4djl1UEc0elJEQk55a3Z0MEJ4OXd4anRDWW4wRDB1ZHlOa1VGbzNK?= =?utf-8?B?QTZQQjFJNGIvL1lwTHZ3dVBCRGVNM0N2S3NFWGtxK1lOWnBOR2IveXNRS013?= =?utf-8?B?R0tSdGZRd1pqZTkzam5pelg4RjBkZ0doQ3g0Mmx4Z240cmJPellzL1lvTmdZ?= =?utf-8?B?bDhjM1RFdTJWMUZyZkNpTTBEMGthYVUwalBnMXpKZnFTaFdveWN6bnhUakZ1?= =?utf-8?B?Q2pBZHBkL2xBdDIvWUxTMU1RNDg5ZXNKaHhTbkx0MFRrZXZKenI5aEx3QlVn?= =?utf-8?B?ekFDdStlSHpWTVplb2ltVWtGREJXdDhEcTFzeGYwVG1waEc5eGNvaG9DbEcv?= =?utf-8?B?K2s5M3hxNWxncGIvdzlBcC9CdlZ0eTYyclZOYXFFKzlhamtmeTRyUitlbVRl?= =?utf-8?B?Z3pTWFFNekZtVThIanhMdmMwNHd1YmppK1dYc3p5RHVRU1FYMmtPSU5yelNM?= =?utf-8?B?WHlibDFwY3lJVVl1dUZ3WHlSSnVDSTR5d3BmTm5paSs5dXZkWmdJcWZtSDly?= =?utf-8?B?UXVXUlZjSzM1N3cyQ2xFQ3o1T3lOSXB4NFdOTHp1eVVrcVRQV1FYNm9wNnJE?= =?utf-8?B?K2hVbzRRYWtzdmFsS0FVR0dRaElNSXdyN015U3FvaHcwL3I3TDhPcC9pOWZs?= =?utf-8?B?M2k5ZUtvME1EcjhlbWZZQnJvVE5CVnVHSm1ZbUlPM2I0QmJPVDZOczc2azlm?= =?utf-8?B?UlRURE1wdHprT1QrdXlGc2JKZ2ZCdTBzZ25SaGJUc2JkM0xZa3BIdnhVNktz?= =?utf-8?B?MkdMU0lCS2RGTWRDMlR1NWNVcGVadXN2M2Y2Q3pZRlZVSGR3QXpNbHZJazdO?= =?utf-8?B?OU4reTFyd1o3TDdEK1cyN01pK0pUOXZNY1VXRWhrY3N2a2wrVE1mRDA3RXUx?= =?utf-8?B?U3NHRTZVaUxXenJoUlVkdGpMNXRKRTZOMmdmVXg0eThlL2VyM08wUThBUUhK?= =?utf-8?B?MUREZHdHaE1wd0FMQnAvZHpLUENPWEZiTXMvMHpIRUdNK0t1c1RCV08rY3Ny?= =?utf-8?B?VlhkQkdDUVc3Ym50RmlDb1FENVBqZEI2ZnlnSm9hTzZjUTZaT1FUdjAvdkh0?= =?utf-8?B?MDcxTlNvaFhQQVUzdDBoUUtCaFFDQkhSQklKTzRaSUR5WGRhOE9GTXM3dFRE?= =?utf-8?B?SFd0TE5ML2VzQVJUSTd4SGxLdTI2dGNGMmlHcUtGNFRKU1U2TVNJYjVVazBo?= =?utf-8?B?NlpwYnFSMmtlbmhFMEduSmhMQXJNaVVFVUloeUh1TjEvY0RKa2Y1QnMyVHpi?= =?utf-8?B?OWRwRHQyd0RzcWFJa0s5c0Q4YlpEZEVwc2ZxaVd5VEVLdVRjUXB5UGZpMkRa?= =?utf-8?B?endhbU8zdTI3UWVvTkVpMTEwaHpCTFpKWVNpODFFWi9DRGtjODF3UFJpVkxG?= =?utf-8?B?SzZiYjkzTUJ2VDRpTUZ1NzJ1MFRpa3pmNTVidFJUcGlvdEwrc3ZEZmVxZEpv?= =?utf-8?B?eFZVb3BERVJIcnlKRU4zUGtzaENCVUUxaDdtNzhCcjgwNFNkNC9yRmMzZ0Uz?= =?utf-8?B?L3V1MDRNMHhqRGZQMXljMzRrc0ZmYklGMzZ1eFJVUkx5MmZnOUt2VjA4WEZP?= =?utf-8?B?cjBlUmpEV1NwVDVSQmJwMkVPNlhqakVUcThMVkREa0g2WVNQVXcrMGpYMEVa?= =?utf-8?B?Y0RKTm1rVldRRy9OMHR2QTBLVEY0a1Q1dDF5cm13Z3NpL3ZNTHRYVFc4TDVw?= =?utf-8?B?NDRkKzlrM0F2NjljL3N2UDcyQ2cwb09FYXFnQVdKMzYrZE9mdVJ1QllIWHZZ?= =?utf-8?B?b2ZHYm9Nd21XM1BFTVlLM1JuYm14U2poakJHTUJ1RmpJQ3pPT2doZjBrZWov?= =?utf-8?Q?8Y+cQhrzUEUN8WV/cEY9se+ri?= Content-Type: text/plain; charset="utf-8" Content-ID: <0D63894423383F4EA316642E84F5C6FC@namprd11.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CY5PR11MB6392.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: d6da5218-dbdb-4eff-105b-08db917281ed X-MS-Exchange-CrossTenant-originalarrivaltime: 31 Jul 2023 03:01:59.4940 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: q5A4aTB+QdU9LWDSzhZlOp6QgnlzwdsGYPGdgl03hpOpF2C3tYRJrjZVbmzT+5LFkhmELCNp+7PWD5VdgB+uEA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR11MB7514 X-OriginatorOrg: intel.com X-Rspam-User: X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: 090E0180019 X-Stat-Signature: z8wocu8dnedgrjbrp4mcqp5tfmk3qeip X-HE-Tag: 1690772525-155852 X-HE-Meta: U2FsdGVkX1/Jnr8DRusIxISrSzsZl3Yiv8JmuunidmpZ46YddOjqPiFt2DrGSo0mqJO1jSEhJKwP0LeLn84ItgGCpx+FYMGIQL8vV3yt6dZ5mNjSWOry51GmT1G9UbzPzik2X37b35FAsiyANUSBZfw26x0xNVQv8J6elhsm7VFoSS8jhcdISVClhDUlMEGnVMu3i2O8Oug9GtQXH6ddlMNSvWLe0g46+kCirVACxMf+U+a2wi2yHglkissfmQcH/gjl00ak6vkd2JGF+hftM11Kyhng8YMvDjrjeKczHKqGQBeiYz8w+W+xUOv4N35gHWQH22ObJTF0Vt0TeDMc1SEf3A2Vj4lugsF1PWbxrJJlhoDB/Bo94d7rkBkjalUZ/sw9sndlScdjsfqDd7cCcd3XGWTv1kSK6lKfQrQ3D7M8x63i+gBrWnPQxk4iRQ69igXiwT4i/cjneOxwQbLiEb9O28bFkyO0UuKgPlThufdCTJJf9XDzPpdGp8sbT2fi/DwAqox5DS7vi4af/Yb+0fQlFc9NNwmHqnwwnO2BzeTvWRLtWDtqHq1UYHvCTOkyqcALlZ8EkBsKgU0QeyAKDcDouvBcD1nH0+pieU5KLRF86WXPRfQ+vL7wnGafJj2DWVu0gQOI52Lg22IVDIYoj3ADxbV84N6PXQZXTV15a6EclR4NokFzxeC7p6UhxLtJ8ppxaKVvSDN9Uqw/ittyL49NektdilXORt83iqVyiZEBv5KmtF1TS7XMWiQYgTY253tdbbVIaFoA2T1h0QGb6v0mBrAjVa0pXE5Tm3s4JOuan/LyFZIW/EUiVEgVQAdRei+JbZWI0XcHyS6OMNfUvO7+/nwFA/8FB77QhOi60kCuBlf4AGwuX5S9gvJcshpRAaXXUH8sEDWJ5OWjTBAjQyE6Fn0LYPpz2X+IveyJDDaXWWCBOitiw6dquW27w/MRN/dCRQ8Ps23nK0HkuTe F0I+8hno n+iss3nd9lVQFX4pGlgm0C3gNFzqRkCrC7xfiM3cThpWyuBuFR+B2kMWgNsRDUt3j0w83yB+D77PjUPpojKF0sivD79JisFGYqZV4KuN30NA/3oOhBy2rUt5VXXbQqaGHqAOV44tvn1hy8Ys7zquLK5fx0dFQSUUFSvPVCmnMH7znXc9iQYGreTzIn2Jszi+abdLBUMVIcihu2Fqq7w616yogCrCSIAZgzpm9pBwIbBH6sbePHT2PduJz+8UnRHN35YQQGymzCZfh8AYpKu5+32nZR55W6kK0c5G9OHri9rglfJzkFuctfEwpopUYUMSeH0zi9BdD8jD+3egw6hKmQYnG7PUUcIRiG5PM3sYpb3zW/TE1In6uIDqDFYZgPOQFO2LsqJVcekBCQ/q0GZbGC+box0Nw41NJ6O8bLpTTMDquHo+Nyzh6JeKgeHSP2zdOjK0sP/gum0RMXWIdPt6TaByCc/aF9L6pRPJpkxtkmXZJv6VDymwe6quogX7ZKl27D2wxLT7neWNRhKQD5dJsz4XYuiP+RAwZT8EfI4FRhgpxN6Ttq2l25nRgXtgR5d26OmzndT+AdIOqCeOcN2M/bMMi0KnO98muWZTyfB/1RSTsMCaa9svwsPr8APPeqQtKK6qnsPyYl7NoMOm5abv/QK2jISZobFsQAUP+ X-Bogosity: Ham, tests=bogofilter, spamicity=0.052180, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: SGkgQmlqdSwNCg0KT24gRnJpLCAyMDIzLTA3LTI4IGF0IDA2OjU1ICswMDAwLCBCaWp1IERhcyB3 cm90ZToNCj4gSGkga2VybmVsIHRlc3Qgcm9ib3QsDQo+IA0KPiBUaGlzIHNob3VsZCBiZSBmaXhl ZCBieSBbMV0NCj4gDQo+IFsxXQ0KPiBodHRwczovL2xvcmUua2VybmVsLm9yZy9hbGwvMjAyMzA3 MTkwOTA0MzAuMTkyNTE4Mi0xLWFybmRAa2VybmVsLm9yZy8NCj4gDQo+IENhbiB5b3UgcGxlYXNl IHRyeSBhZnRlciBhcHBseWluZyB0aGlzIHBhdGNoPw0KDQpBZnRlciBhcHBseWluZyB0aGUgcGF0 Y2ggWzFdLCBSWl9NVFUzX0NOVCBpcyBjb25zaXN0ZW50IHdpdGggaXRzIGNvcmUNCmRyaXZlciBj b25maWcgUlpfTVRVMyByZWdhcmRsZXNzIG9mIENPTVBJTEVfVEVTVCwgYW5kIHRoZSBsaW5rIGZh aWx1cmUNCmlzIGdvbmUgaW4gb3VyIGJ1aWxkIHRlc3QuDQoNClRlc3RlZC1ieTogWXVqaWUgTGl1 IDx5dWppZS5saXVAaW50ZWwuY29tPg0KDQpUaGFua3MsDQpZdWppZQ0KDQo+IENoZWVycywNCj4g QmlqdQ0KPiANCj4gPiBTdWJqZWN0OiBbbGludXgtbmV4dDptYXN0ZXIgMTU4Mi81MDI3XSBkcml2 ZXJzL2NvdW50ZXIvcnotbXR1My0NCj4gPiBjbnQuYzo2MDI6IHVuZGVmaW5lZCByZWZlcmVuY2Ug dG8gYHJ6X210dTNfc2hhcmVkX3JlZ191cGRhdGVfYml0Jw0KPiA+IA0KPiA+IElmIHlvdSBmaXgg dGhlIGlzc3VlIGluIGEgc2VwYXJhdGUgcGF0Y2gvY29tbWl0IChpLmUuIG5vdCBqdXN0IGENCj4g PiBuZXcNCj4gPiB2ZXJzaW9uIG9mIHRoZSBzYW1lIHBhdGNoL2NvbW1pdCksIGtpbmRseSBhZGQg Zm9sbG93aW5nIHRhZ3MNCj4gPiA+IFJlcG9ydGVkLWJ5OiBrZXJuZWwgdGVzdCByb2JvdCA8bGtw QGludGVsLmNvbT4NCj4gPiA+IENsb3NlczoNCj4gPiANCj4gPiBBbGwgZXJyb3JzIChuZXcgb25l cyBwcmVmaXhlZCBieSA+Pik6DQo+ID4gDQo+ID4gwqDCoCBocHBhLWxpbnV4LWxkOiBkcml2ZXJz L2NvdW50ZXIvcnotbXR1My1jbnQubzogaW4gZnVuY3Rpb24NCj4gPiBgcnpfbXR1M19leHRfaW5w dXRfcGhhc2VfY2xvY2tfc2VsZWN0X3NldCc6DQo+ID4gPiA+IGRyaXZlcnMvY291bnRlci9yei1t dHUzLWNudC5jOjYwMjogdW5kZWZpbmVkIHJlZmVyZW5jZSB0bw0KPiA+IGByel9tdHUzX3NoYXJl ZF9yZWdfdXBkYXRlX2JpdCcNCj4gPiDCoMKgIGhwcGEtbGludXgtbGQ6IGRyaXZlcnMvY291bnRl ci9yei1tdHUzLWNudC5vOiBpbiBmdW5jdGlvbg0KPiA+IGByel9tdHUzX2Nhc2NhZGVfY291bnRz X2VuYWJsZV9zZXQnOg0KPiA+IMKgwqAgZHJpdmVycy9jb3VudGVyL3J6LW10dTMtY250LmM6NTYz OiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvDQo+ID4gYHJ6X210dTNfc2hhcmVkX3JlZ191cGRhdGVf Yml0Jw0KPiA+IMKgwqAgaHBwYS1saW51eC1sZDogZHJpdmVycy9jb3VudGVyL3J6LW10dTMtY250 Lm86IGluIGZ1bmN0aW9uDQo+ID4gYHJ6X210dTNfZXh0X2lucHV0X3BoYXNlX2Nsb2NrX3NlbGVj dF9nZXQnOg0KPiA+ID4gPiBkcml2ZXJzL2NvdW50ZXIvcnotbXR1My1jbnQuYzo1ODM6IHVuZGVm aW5lZCByZWZlcmVuY2UgdG8NCj4gPiBgcnpfbXR1M19zaGFyZWRfcmVnX3JlYWQnDQo+ID4gwqDC oCBocHBhLWxpbnV4LWxkOiBkcml2ZXJzL2NvdW50ZXIvcnotbXR1My1jbnQubzogaW4gZnVuY3Rp b24NCj4gPiBgcnpfbXR1M19jYXNjYWRlX2NvdW50c19lbmFibGVfZ2V0JzoNCj4gPiDCoMKgIGRy aXZlcnMvY291bnRlci9yei1tdHUzLWNudC5jOjU0NDogdW5kZWZpbmVkIHJlZmVyZW5jZSB0bw0K PiA+IGByel9tdHUzX3NoYXJlZF9yZWdfcmVhZCcNCj4gPiDCoMKgIGhwcGEtbGludXgtbGQ6IGRy aXZlcnMvY291bnRlci9yei1tdHUzLWNudC5vOiBpbiBmdW5jdGlvbg0KPiA+IGByel9tdHUzX2xv Y2tfaWZfY291bnRlcl9pc192YWxpZCc6DQo+ID4gwqDCoCBkcml2ZXJzL2NvdW50ZXIvcnotbXR1 My1jbnQuYzoxMTE6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8NCj4gPiBgcnpfbXR1M19zaGFyZWRf cmVnX3JlYWQnDQo+ID4gwqDCoCBocHBhLWxpbnV4LWxkOiBkcml2ZXJzL2NvdW50ZXIvcnotbXR1 My1jbnQubzogaW4gZnVuY3Rpb24NCj4gPiBgcnpfbXR1M19jb3VudF9kaXJlY3Rpb25fcmVhZCc6 DQo+ID4gPiA+IGRyaXZlcnMvY291bnRlci9yei1tdHUzLWNudC5jOjMwNDogdW5kZWZpbmVkIHJl ZmVyZW5jZSB0bw0KPiA+IGByel9tdHUzXzhiaXRfY2hfcmVhZCcNCj4gPiDCoMKgIGhwcGEtbGlu dXgtbGQ6IGRyaXZlcnMvY291bnRlci9yei1tdHUzLWNudC5vOiBpbiBmdW5jdGlvbg0KPiA+IGBy el9tdHUzX2NvdW50X2Z1bmN0aW9uX3dyaXRlJzoNCj4gPiA+ID4gZHJpdmVycy9jb3VudGVyL3J6 LW10dTMtY250LmM6MjgzOiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvDQo+ID4gYHJ6X210dTNfOGJp dF9jaF93cml0ZScNCj4gPiDCoMKgIGhwcGEtbGludXgtbGQ6IGRyaXZlcnMvY291bnRlci9yei1t dHUzLWNudC5vOiBpbiBmdW5jdGlvbg0KPiA+IGByel9tdHUzX2NvdW50X2Z1bmN0aW9uX3JlYWQn Og0KPiA+IMKgwqAgZHJpdmVycy9jb3VudGVyL3J6LW10dTMtY250LmM6MjA4OiB1bmRlZmluZWQg cmVmZXJlbmNlIHRvDQo+ID4gYHJ6X210dTNfOGJpdF9jaF9yZWFkJw0KPiA+IMKgwqAgaHBwYS1s aW51eC1sZDogZHJpdmVycy9jb3VudGVyL3J6LW10dTMtY250Lm86IGluIGZ1bmN0aW9uDQo+ID4g YHJ6X210dTNfY291bnRfd3JpdGUnOg0KPiA+ID4gPiBkcml2ZXJzL2NvdW50ZXIvcnotbXR1My1j bnQuYzoxOTQ6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8NCj4gPiBgcnpfbXR1M18xNmJpdF9jaF93 cml0ZScNCj4gPiA+ID4gaHBwYS1saW51eC1sZDogZHJpdmVycy9jb3VudGVyL3J6LW10dTMtY250 LmM6MTkyOiB1bmRlZmluZWQNCj4gPiA+ID4gcmVmZXJlbmNlDQo+ID4gdG8gYHJ6X210dTNfMzJi aXRfY2hfd3JpdGUnDQo+ID4gwqDCoCBocHBhLWxpbnV4LWxkOiBkcml2ZXJzL2NvdW50ZXIvcnot bXR1My1jbnQubzogaW4gZnVuY3Rpb24NCj4gPiBgcnpfbXR1M19jb3VudF9yZWFkJzoNCj4gPiA+ ID4gZHJpdmVycy9jb3VudGVyL3J6LW10dTMtY250LmM6MTcyOiB1bmRlZmluZWQgcmVmZXJlbmNl IHRvDQo+ID4gYHJ6X210dTNfMTZiaXRfY2hfcmVhZCcNCj4gPiA+ID4gaHBwYS1saW51eC1sZDog ZHJpdmVycy9jb3VudGVyL3J6LW10dTMtY250LmM6MTcwOiB1bmRlZmluZWQNCj4gPiA+ID4gcmVm ZXJlbmNlDQo+ID4gdG8gYHJ6X210dTNfMzJiaXRfY2hfcmVhZCcNCj4gPiDCoMKgIGhwcGEtbGlu dXgtbGQ6IGRyaXZlcnMvY291bnRlci9yei1tdHUzLWNudC5vOiBpbiBmdW5jdGlvbg0KPiA+IGBy el9tdHUzX2NvdW50X2VuYWJsZV9yZWFkJzoNCj4gPiA+ID4gZHJpdmVycy9jb3VudGVyL3J6LW10 dTMtY250LmM6NDg4OiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvDQo+ID4gYHJ6X210dTNfaXNfZW5h YmxlZCcNCj4gPiA+ID4gaHBwYS1saW51eC1sZDogZHJpdmVycy9jb3VudGVyL3J6LW10dTMtY250 LmM6NDg2OiB1bmRlZmluZWQNCj4gPiA+ID4gcmVmZXJlbmNlDQo+ID4gdG8gYHJ6X210dTNfaXNf ZW5hYmxlZCcNCj4gPiA+ID4gaHBwYS1saW51eC1sZDogZHJpdmVycy9jb3VudGVyL3J6LW10dTMt Y250LmM6NDg2OiB1bmRlZmluZWQNCj4gPiA+ID4gcmVmZXJlbmNlDQo+ID4gdG8gYHJ6X210dTNf aXNfZW5hYmxlZCcNCj4gPiDCoMKgIGhwcGEtbGludXgtbGQ6IGRyaXZlcnMvY291bnRlci9yei1t dHUzLWNudC5vOiBpbiBmdW5jdGlvbg0KPiA+IGByel9tdHUzX2NvdW50X2NlaWxpbmdfd3JpdGUn Og0KPiA+IMKgwqAgZHJpdmVycy9jb3VudGVyL3J6LW10dTMtY250LmM6Mzg0OiB1bmRlZmluZWQg cmVmZXJlbmNlIHRvDQo+ID4gYHJ6X210dTNfMTZiaXRfY2hfd3JpdGUnDQo+ID4gPiA+IGhwcGEt bGludXgtbGQ6IGRyaXZlcnMvY291bnRlci9yei1tdHUzLWNudC5jOjM4NjogdW5kZWZpbmVkDQo+ ID4gPiA+IHJlZmVyZW5jZQ0KPiA+IHRvIGByel9tdHUzXzhiaXRfY2hfd3JpdGUnDQo+ID4gwqDC oCBocHBhLWxpbnV4LWxkOiBkcml2ZXJzL2NvdW50ZXIvcnotbXR1My1jbnQuYzozODI6IHVuZGVm aW5lZA0KPiA+IHJlZmVyZW5jZQ0KPiA+IHRvIGByel9tdHUzXzMyYml0X2NoX3dyaXRlJw0KPiA+ IMKgwqAgaHBwYS1saW51eC1sZDogZHJpdmVycy9jb3VudGVyL3J6LW10dTMtY250Lm86IGluIGZ1 bmN0aW9uDQo+ID4gYHJ6X210dTNfYWN0aW9uX3JlYWQnOg0KPiA+IMKgwqAgZHJpdmVycy9jb3Vu dGVyL3J6LW10dTMtY250LmM6MjA4OiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvDQo+ID4gYHJ6X210 dTNfOGJpdF9jaF9yZWFkJw0KPiA+ID4gPiBocHBhLWxpbnV4LWxkOiBkcml2ZXJzL2NvdW50ZXIv cnotbXR1My1jbnQuYzo2NTM6IHVuZGVmaW5lZA0KPiA+ID4gPiByZWZlcmVuY2UNCj4gPiB0byBg cnpfbXR1M19zaGFyZWRfcmVnX3JlYWQnDQo+ID4gwqDCoCBocHBhLWxpbnV4LWxkOiBkcml2ZXJz L2NvdW50ZXIvcnotbXR1My1jbnQubzogaW4gZnVuY3Rpb24NCj4gPiBgcnpfbXR1M19pbml0aWFs aXplX2NvdW50ZXInOg0KPiA+IMKgwqAgZHJpdmVycy9jb3VudGVyL3J6LW10dTMtY250LmM6NDEz OiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvDQo+ID4gYHJ6X210dTNfOGJpdF9jaF93cml0ZScNCj4g PiDCoMKgIGhwcGEtbGludXgtbGQ6IGRyaXZlcnMvY291bnRlci9yei1tdHUzLWNudC5jOjQxNTog dW5kZWZpbmVkDQo+ID4gcmVmZXJlbmNlDQo+ID4gdG8gYHJ6X210dTNfOGJpdF9jaF93cml0ZScN Cj4gPiDCoMKgIGhwcGEtbGludXgtbGQ6IGRyaXZlcnMvY291bnRlci9yei1tdHUzLWNudC5jOjQx NjogdW5kZWZpbmVkDQo+ID4gcmVmZXJlbmNlDQo+ID4gdG8gYHJ6X210dTNfOGJpdF9jaF93cml0 ZScNCj4gPiA+ID4gaHBwYS1saW51eC1sZDogZHJpdmVycy9jb3VudGVyL3J6LW10dTMtY250LmM6 NDE3OiB1bmRlZmluZWQNCj4gPiA+ID4gcmVmZXJlbmNlDQo+ID4gdG8gYHJ6X210dTNfZW5hYmxl Jw0KPiA+IMKgwqAgaHBwYS1saW51eC1sZDogZHJpdmVycy9jb3VudGVyL3J6LW10dTMtY250LmM6 Mzk5OiB1bmRlZmluZWQNCj4gPiByZWZlcmVuY2UNCj4gPiB0byBgcnpfbXR1M184Yml0X2NoX3dy aXRlJw0KPiA+IMKgwqAgaHBwYS1saW51eC1sZDogZHJpdmVycy9jb3VudGVyL3J6LW10dTMtY250 LmM6NDAxOiB1bmRlZmluZWQNCj4gPiByZWZlcmVuY2UNCj4gPiB0byBgcnpfbXR1M184Yml0X2No X3dyaXRlJw0KPiA+IMKgwqAgaHBwYS1saW51eC1sZDogZHJpdmVycy9jb3VudGVyL3J6LW10dTMt Y250LmM6NDAyOiB1bmRlZmluZWQNCj4gPiByZWZlcmVuY2UNCj4gPiB0byBgcnpfbXR1M184Yml0 X2NoX3dyaXRlJw0KPiA+IMKgwqAgaHBwYS1saW51eC1sZDogZHJpdmVycy9jb3VudGVyL3J6LW10 dTMtY250LmM6NDA0OiB1bmRlZmluZWQNCj4gPiByZWZlcmVuY2UNCj4gPiB0byBgcnpfbXR1M19l bmFibGUnDQo+ID4gwqDCoCBocHBhLWxpbnV4LWxkOiBkcml2ZXJzL2NvdW50ZXIvcnotbXR1My1j bnQuYzo0MDU6IHVuZGVmaW5lZA0KPiA+IHJlZmVyZW5jZQ0KPiA+IHRvIGByel9tdHUzX2VuYWJs ZScNCj4gPiDCoMKgIGhwcGEtbGludXgtbGQ6IGRyaXZlcnMvY291bnRlci9yei1tdHUzLWNudC5v OiBpbiBmdW5jdGlvbg0KPiA+IGByel9tdHUzX2NvdW50X2VuYWJsZV93cml0ZSc6DQo+ID4gPiA+ IGRyaXZlcnMvY291bnRlci9yei1tdHUzLWNudC5jOjQ2ODogdW5kZWZpbmVkIHJlZmVyZW5jZSB0 bw0KPiA+IGByel9tdHUzX2Rpc2FibGUnDQo+ID4gPiA+IGhwcGEtbGludXgtbGQ6IGRyaXZlcnMv Y291bnRlci9yei1tdHUzLWNudC5jOjQ2NDogdW5kZWZpbmVkDQo+ID4gPiA+IHJlZmVyZW5jZQ0K PiA+IHRvIGByel9tdHUzX2Rpc2FibGUnDQo+ID4gwqDCoCBocHBhLWxpbnV4LWxkOiBkcml2ZXJz L2NvdW50ZXIvcnotbXR1My1jbnQuYzo0NjU6IHVuZGVmaW5lZA0KPiA+IHJlZmVyZW5jZQ0KPiA+ IHRvIGByel9tdHUzX2Rpc2FibGUnDQo+ID4gDQo+ID4gDQo+ID4gdmltICs2MDIgZHJpdmVycy9j b3VudGVyL3J6LW10dTMtY250LmMNCj4gPiANCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMg MjAyMy0wMy0zMMKgIDQwNw0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMw wqAgNDA4wqAgc3RhdGljIHZvaWQNCj4gPiByel9tdHUzXzE2Yml0X2NudF9zZXR0aW5nKHN0cnVj dCBjb3VudGVyX2RldmljZSAqY291bnRlciwgaW50IGlkKQ0KPiA+IDBiZTg5MDczNTlkZjRjNiBC aWp1IERhcyAyMDIzLTAzLTMwwqAgNDA5wqAgew0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERh cyAyMDIzLTAzLTMwwqAgNDEwwqDCoMKgwqDCoMKgwqDCoHN0cnVjdA0KPiA+IHJ6X210dTNfY2hh bm5lbA0KPiA+ICpjb25zdCBjaCA9IHJ6X210dTNfZ2V0X2NoKGNvdW50ZXIsIGlkKTsNCj4gPiAw YmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDQxMQ0KPiA+IDBiZTg5MDczNTlk ZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNDEywqDCoMKgwqDCoMKgwqDCoC8qIFBoYXNlIGNv dW50aW5nDQo+ID4gbW9kZSAxDQo+ID4gaXMgdXNlZCBhcyBkZWZhdWx0IGluIGluaXRpYWxpemF0 aW9uLiAqLw0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqANCj4gPiA0 MTPCoMKgwqDCoMKgwqDCoMKgcnpfbXR1M184Yml0X2NoX3dyaXRlKGNoLA0KPiA+IFJaX01UVTNf VE1EUjEsIFJaX01UVTNfVE1EUjFfUEhfQ05UX01PREVfMSk7DQo+ID4gMGJlODkwNzM1OWRmNGM2 IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA0MTQNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMg MjAyMy0wMy0zMMKgDQo+ID4gNDE1wqDCoMKgwqDCoMKgwqDCoHJ6X210dTNfOGJpdF9jaF93cml0 ZShjaCwNCj4gPiBSWl9NVFUzX1RDUiwgUlpfTVRVM19UQ1JfQ0NMUl9UR1JBKTsNCj4gPiAwYmU4 OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgDQo+ID4gNDE2wqDCoMKgwqDCoMKgwqDC oHJ6X210dTNfOGJpdF9jaF93cml0ZShjaCwNCj4gPiBSWl9NVFUzX1RJT1IsIFJaX01UVTNfVElP Ul9OT19PVVRQVVQpOw0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwIEA0 MTfCoMKgwqDCoMKgwqDCoMKgcnpfbXR1M19lbmFibGUoY2gpOw0KPiA+IDBiZTg5MDczNTlkZjRj NiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNDE4wqAgfQ0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1 IERhcyAyMDIzLTAzLTMwwqAgNDE5DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMt MDMtMzDCoCA0MjDCoCBzdGF0aWMgaW50DQo+ID4gcnpfbXR1M19pbml0aWFsaXplX2NvdW50ZXIo c3RydWN0IGNvdW50ZXJfZGV2aWNlICpjb3VudGVyLCBpbnQgaWQpDQo+ID4gMGJlODkwNzM1OWRm NGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA0MjHCoCB7DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJp anUgRGFzIDIwMjMtMDMtMzDCoCA0MjLCoMKgwqDCoMKgwqDCoMKgc3RydWN0DQo+ID4gcnpfbXR1 M19jaGFubmVsDQo+ID4gKmNvbnN0IGNoID0gcnpfbXR1M19nZXRfY2goY291bnRlciwgaWQpOw0K PiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNDIzwqDCoMKgwqDCoMKg wqDCoHN0cnVjdA0KPiA+IHJ6X210dTNfY2hhbm5lbA0KPiA+ICpjb25zdCBjaDEgPSByel9tdHUz X2dldF9jaChjb3VudGVyLCAwKTsNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0w My0zMMKgIDQyNMKgwqDCoMKgwqDCoMKgwqBzdHJ1Y3QNCj4gPiByel9tdHUzX2NoYW5uZWwNCj4g PiAqY29uc3QgY2gyID0gcnpfbXR1M19nZXRfY2goY291bnRlciwgMSk7DQo+ID4gMGJlODkwNzM1 OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA0MjUNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlq dSBEYXMgMjAyMy0wMy0zMMKgIDQyNsKgwqDCoMKgwqDCoMKgwqBzd2l0Y2ggKGlkKSB7DQo+ID4g MGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA0MjfCoMKgwqDCoMKgwqDCoMKg Y2FzZQ0KPiA+IFJaX01UVTNfMTZfQklUX01UVTFfQ0g6DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJp anUgRGFzIDIwMjMtMDMtMzDCoCA0MjjCoMKgwqDCoMKgwqDCoMKgY2FzZQ0KPiA+IFJaX01UVTNf MTZfQklUX01UVTJfQ0g6DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDC oCA0MjnCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoGlmDQo+ID4gKCFyel9tdHUzX3Jl cXVlc3RfY2hhbm5lbChjaCkpDQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMt MzDCoA0KPiA+IDQzMMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoHJldHVybiAtDQo+ID4gRUJVU1k7DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIw MjMtMDMtMzDCoCA0MzENCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKg IDQzMg0KPiA+IMKgwqDCoMKgwqDCoMKgwqByel9tdHUzXzE2Yml0X2NudF9zZXR0aW5nKGNvdW50 ZXIsIGlkKTsNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDQzM8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgcmV0dXJuIDA7DQo+ID4gMGJlODkwNzM1OWRm NGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA0MzTCoMKgwqDCoMKgwqDCoMKgY2FzZQ0KPiA+IFJa X01UVTNfMzJfQklUX0NIOg0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMw wqAgNDM1wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAvKg0KPiA+IDBiZTg5MDczNTlk ZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNDM2wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgKiAzMi1iaXQNCj4gPiBwaGFzZQ0KPiA+IGNvdW50aW5nIG5lZWQgTVRVMSBhbmQgTVRV MiB0byBjcmVhdGUgMzItYml0DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMt MzDCoCA0MzfCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAqIGNhc2NhZGUNCj4gPiBj b3VudGVyLg0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNDM4wqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKi8NCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlq dSBEYXMgMjAyMy0wMy0zMMKgIDQzOcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgaWYN Cj4gPiAoIXJ6X210dTNfcmVxdWVzdF9jaGFubmVsKGNoMSkpDQo+ID4gMGJlODkwNzM1OWRmNGM2 IEJpanUgRGFzIDIwMjMtMDMtMzDCoA0KPiA+IDQ0MMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoHJldHVybiAtDQo+ID4gRUJVU1k7DQo+ID4gMGJlODkwNzM1 OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA0NDENCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlq dSBEYXMgMjAyMy0wMy0zMMKgIDQ0MsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgaWYN Cj4gPiAoIXJ6X210dTNfcmVxdWVzdF9jaGFubmVsKGNoMikpIHsNCj4gPiAwYmU4OTA3MzU5ZGY0 YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDQ0Mw0KPiA+IMKgwqDCoMKgwqDCoMKgwqByel9tdHUz X3JlbGVhc2VfY2hhbm5lbChjaDEpOw0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIz LTAzLTMwwqANCj4gPiA0NDTCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqByZXR1cm4gLQ0KPiA+IEVCVVNZOw0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERh cyAyMDIzLTAzLTMwwqAgNDQ1wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqB9DQo+ID4g MGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA0NDYNCj4gPiAwYmU4OTA3MzU5 ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDQ0Nw0KPiA+IMKgwqDCoMKgwqDCoMKgwqByel9t dHUzXzMyYml0X2NudF9zZXR0aW5nKGNvdW50ZXIpOw0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1 IERhcyAyMDIzLTAzLTMwwqAgNDQ4wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqByZXR1 cm4gMDsNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDQ0OcKgwqDC oMKgwqDCoMKgwqBkZWZhdWx0Og0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAz LTMwwqAgNDUwwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAvKiBzaG91bGQNCj4gPiBu ZXZlcg0KPiA+IHJlYWNoIHRoaXMgcGF0aCAqLw0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERh cyAyMDIzLTAzLTMwwqAgNDUxwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqByZXR1cm4g LQ0KPiA+IEVJTlZBTDsNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKg IDQ1MsKgwqDCoMKgwqDCoMKgwqB9DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMt MDMtMzDCoCA0NTPCoCB9DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDC oCA0NTQNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDQ1NcKgIHN0 YXRpYyB2b2lkDQo+ID4gcnpfbXR1M190ZXJtaW5hdGVfY291bnRlcihzdHJ1Y3QgY291bnRlcl9k ZXZpY2UgKmNvdW50ZXIsIGludCBpZCkNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAy My0wMy0zMMKgIDQ1NsKgIHsNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0z MMKgIDQ1N8KgwqDCoMKgwqDCoMKgwqBzdHJ1Y3QNCj4gPiByel9tdHUzX2NoYW5uZWwNCj4gPiAq Y29uc3QgY2ggPSByel9tdHUzX2dldF9jaChjb3VudGVyLCBpZCk7DQo+ID4gMGJlODkwNzM1OWRm NGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA0NTjCoMKgwqDCoMKgwqDCoMKgc3RydWN0DQo+ID4g cnpfbXR1M19jaGFubmVsDQo+ID4gKmNvbnN0IGNoMSA9IHJ6X210dTNfZ2V0X2NoKGNvdW50ZXIs IDApOw0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNDU5wqDCoMKg wqDCoMKgwqDCoHN0cnVjdA0KPiA+IHJ6X210dTNfY2hhbm5lbA0KPiA+ICpjb25zdCBjaDIgPSBy el9tdHUzX2dldF9jaChjb3VudGVyLCAxKTsNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMg MjAyMy0wMy0zMMKgIDQ2MA0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMw wqAgNDYxwqDCoMKgwqDCoMKgwqDCoGlmIChpZCA9PQ0KPiA+IFJaX01UVTNfMzJfQklUX0NIKSB7 DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA0NjINCj4gPiDCoMKg wqDCoMKgwqDCoMKgcnpfbXR1M19yZWxlYXNlX2NoYW5uZWwoY2gyKTsNCj4gPiAwYmU4OTA3MzU5 ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDQ2Mw0KPiA+IMKgwqDCoMKgwqDCoMKgwqByel9t dHUzX3JlbGVhc2VfY2hhbm5lbChjaDEpOw0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAy MDIzLTAzLTMwIEA0NjQNCj4gPiDCoMKgwqDCoMKgwqDCoMKgcnpfbXR1M19kaXNhYmxlKGNoMik7 DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA0NjUNCj4gPiDCoMKg wqDCoMKgwqDCoMKgcnpfbXR1M19kaXNhYmxlKGNoMSk7DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJp anUgRGFzIDIwMjMtMDMtMzDCoCA0NjbCoMKgwqDCoMKgwqDCoMKgfSBlbHNlIHsNCj4gPiAwYmU4 OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDQ2Nw0KPiA+IMKgwqDCoMKgwqDCoMKg wqByel9tdHUzX3JlbGVhc2VfY2hhbm5lbChjaCk7DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUg RGFzIDIwMjMtMDMtMzAgQDQ2OA0KPiA+IMKgwqDCoMKgwqDCoMKgwqByel9tdHUzX2Rpc2FibGUo Y2gpOw0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNDY5wqDCoMKg wqDCoMKgwqDCoH0NCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDQ3 MMKgIH0NCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDQ3MQ0KPiA+ IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNDcywqAgc3RhdGljIGludA0K PiA+IHJ6X210dTNfY291bnRfZW5hYmxlX3JlYWQoc3RydWN0IGNvdW50ZXJfZGV2aWNlICpjb3Vu dGVyLA0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNDczDQo+ID4g c3RydWN0IGNvdW50ZXJfY291bnQgKmNvdW50LCB1OCAqZW5hYmxlKQ0KPiA+IDBiZTg5MDczNTlk ZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNDc0wqAgew0KPiA+IDBiZTg5MDczNTlkZjRjNiBC aWp1IERhcyAyMDIzLTAzLTMwwqAgNDc1wqDCoMKgwqDCoMKgwqDCoHN0cnVjdA0KPiA+IHJ6X210 dTNfY2hhbm5lbA0KPiA+ICpjb25zdCBjaCA9IHJ6X210dTNfZ2V0X2NoKGNvdW50ZXIsIGNvdW50 LT5pZCk7DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA0NzbCoMKg wqDCoMKgwqDCoMKgc3RydWN0DQo+ID4gcnpfbXR1M19jaGFubmVsDQo+ID4gKmNvbnN0IGNoMSA9 IHJ6X210dTNfZ2V0X2NoKGNvdW50ZXIsIDApOw0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERh cyAyMDIzLTAzLTMwwqAgNDc3wqDCoMKgwqDCoMKgwqDCoHN0cnVjdA0KPiA+IHJ6X210dTNfY2hh bm5lbA0KPiA+ICpjb25zdCBjaDIgPSByel9tdHUzX2dldF9jaChjb3VudGVyLCAxKTsNCj4gPiAw YmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDQ3OMKgwqDCoMKgwqDCoMKgwqBz dHJ1Y3QgcnpfbXR1M19jbnQNCj4gPiAqY29uc3QNCj4gPiBwcml2ID0gY291bnRlcl9wcml2KGNv dW50ZXIpOw0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNDc5wqDC oMKgwqDCoMKgwqDCoGludCByZXQ7DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMt MDMtMzDCoCA0ODANCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDQ4 McKgwqDCoMKgwqDCoMKgwqByZXQgPQ0KPiA+IHJ6X210dTNfbG9ja19pZl9jb3VudF9pc19lbmFi bGVkKGNoLCBwcml2LCBjb3VudC0+aWQpOw0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAy MDIzLTAzLTMwwqAgNDgywqDCoMKgwqDCoMKgwqDCoGlmIChyZXQpDQo+ID4gMGJlODkwNzM1OWRm NGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA0ODPCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoHJldHVybiByZXQ7DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDC oCA0ODQNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDQ4NcKgwqDC oMKgwqDCoMKgwqBpZiAoY291bnQtPmlkID09DQo+ID4gUlpfTVRVM18zMl9CSVRfQ0gpDQo+ID4g MGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzAgQDQ4NsKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgKmVuYWJsZSA9DQo+ID4gcnpfbXR1M19pc19lbmFibGVkKGNoMSkgJiYg cnpfbXR1M19pc19lbmFibGVkKGNoMik7DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIw MjMtMDMtMzDCoCA0ODfCoMKgwqDCoMKgwqDCoMKgZWxzZQ0KPiA+IDBiZTg5MDczNTlkZjRjNiBC aWp1IERhcyAyMDIzLTAzLTMwIEA0ODjCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCpl bmFibGUgPQ0KPiA+IHJ6X210dTNfaXNfZW5hYmxlZChjaCk7DQo+ID4gMGJlODkwNzM1OWRmNGM2 IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA0ODkNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMg MjAyMy0wMy0zMMKgIDQ5MMKgwqDCoMKgwqDCoMKgwqBtdXRleF91bmxvY2soJnByaXYtDQo+ID4g PiBsb2NrKTsNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDQ5MQ0K PiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNDkywqDCoMKgwqDCoMKg wqDCoHJldHVybiAwOw0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAg NDkzwqAgfQ0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNDk0DQo+ ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA0OTXCoCBzdGF0aWMgaW50 DQo+ID4gcnpfbXR1M19jb3VudF9lbmFibGVfd3JpdGUoc3RydWN0IGNvdW50ZXJfZGV2aWNlICpj b3VudGVyLA0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNDk2DQo+ ID4gc3RydWN0IGNvdW50ZXJfY291bnQgKmNvdW50LCB1OCBlbmFibGUpDQo+ID4gMGJlODkwNzM1 OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA0OTfCoCB7DQo+ID4gMGJlODkwNzM1OWRmNGM2 IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA0OTjCoMKgwqDCoMKgwqDCoMKgc3RydWN0DQo+ID4gcnpf bXR1M19jaGFubmVsDQo+ID4gKmNvbnN0IGNoID0gcnpfbXR1M19nZXRfY2goY291bnRlciwgY291 bnQtPmlkKTsNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDQ5OcKg wqDCoMKgwqDCoMKgwqBzdHJ1Y3QgcnpfbXR1M19jbnQNCj4gPiAqY29uc3QNCj4gPiBwcml2ID0g Y291bnRlcl9wcml2KGNvdW50ZXIpOw0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIz LTAzLTMwwqAgNTAwwqDCoMKgwqDCoMKgwqDCoGludCByZXQgPSAwOw0KPiA+IDBiZTg5MDczNTlk ZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNTAxDQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUg RGFzIDIwMjMtMDMtMzDCoCA1MDLCoMKgwqDCoMKgwqDCoMKgaWYgKGVuYWJsZSkgew0KPiA+IDBi ZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNTAzDQo+ID4gwqDCoMKgwqDCoMKg wqDCoHBtX3J1bnRpbWVfZ2V0X3N5bmMoY2gtPmRldik7DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJp anUgRGFzIDIwMjMtMDMtMzDCoA0KPiA+IDUwNMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgbXV0ZXhfbG9jaygmcHJpdi0NCj4gPiA+IGxvY2spOw0KPiA+IDBiZTg5MDczNTlkZjRjNiBC aWp1IERhcyAyMDIzLTAzLTMwwqAgNTA1wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBy ZXQgPQ0KPiA+IHJ6X210dTNfaW5pdGlhbGl6ZV9jb3VudGVyKGNvdW50ZXIsIGNvdW50LT5pZCk7 DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA1MDbCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoGlmIChyZXQgPT0NCj4gPiAwKQ0KPiA+IDBiZTg5MDczNTlk ZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqANCj4gPiA1MDfCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBwcml2LQ0KPiA+ID4gY291bnRfaXNfZW5hYmxlZFtj b3VudC0+aWRdID0gdHJ1ZTsNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0z MMKgDQo+ID4gNTA4wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBtdXRleF91bmxvY2so JnByaXYtDQo+ID4gPiBsb2NrKTsNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0w My0zMMKgIDUwOcKgwqDCoMKgwqDCoMKgwqB9IGVsc2Ugew0KPiA+IDBiZTg5MDczNTlkZjRjNiBC aWp1IERhcyAyMDIzLTAzLTMwwqANCj4gPiA1MTDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoG11dGV4X2xvY2soJnByaXYtDQo+ID4gPiBsb2NrKTsNCj4gPiAwYmU4OTA3MzU5ZGY0YzYg QmlqdSBEYXMgMjAyMy0wMy0zMMKgIDUxMQ0KPiA+IMKgwqDCoMKgwqDCoMKgwqByel9tdHUzX3Rl cm1pbmF0ZV9jb3VudGVyKGNvdW50ZXIsIGNvdW50LT5pZCk7DQo+ID4gMGJlODkwNzM1OWRmNGM2 IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA1MTLCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oHByaXYtDQo+ID4gPiBjb3VudF9pc19lbmFibGVkW2NvdW50LT5pZF0gPSBmYWxzZTsNCj4gPiAw YmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgDQo+ID4gNTEzwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqBtdXRleF91bmxvY2soJnByaXYtDQo+ID4gPiBsb2NrKTsNCj4g PiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgDQo+ID4gNTE0wqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBwbV9ydW50aW1lX3B1dChjaC0NCj4gPiA+IGRldik7DQo+ ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA1MTXCoMKgwqDCoMKgwqDC oMKgfQ0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNTE2DQo+ID4g MGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA1MTfCoMKgwqDCoMKgwqDCoMKg cmV0dXJuIHJldDsNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDUx OMKgIH0NCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDUxOQ0KPiA+ IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNTIwwqAgc3RhdGljIGludA0K PiA+IHJ6X210dTNfbG9ja19pZl9jaDBfaXNfZW5hYmxlZChzdHJ1Y3QgcnpfbXR1M19jbnQgKmNv bnN0IHByaXYpDQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA1MjHC oCB7DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA1MjLCoMKgwqDC oMKgwqDCoMKgbXV0ZXhfbG9jaygmcHJpdi0NCj4gPiA+bG9jayk7DQo+ID4gMGJlODkwNzM1OWRm NGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA1MjPCoMKgwqDCoMKgwqDCoMKgaWYgKHByaXYtPmNo LQ0KPiA+ID5pc19idXN5DQo+ID4gJiYgIShwcml2LT5jb3VudF9pc19lbmFibGVkW1JaX01UVTNf MTZfQklUX01UVTFfQ0hdIHx8DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMt MzDCoCA1MjQNCj4gPiBwcml2LT5jb3VudF9pc19lbmFibGVkW1JaX01UVTNfMzJfQklUX0NIXSkp IHsNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgDQo+ID4gNTI1wqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBtdXRleF91bmxvY2soJnByaXYtDQo+ID4gPiBs b2NrKTsNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDUyNsKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgcmV0dXJuIC0NCj4gPiBFSU5WQUw7DQo+ID4gMGJl ODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA1MjfCoMKgwqDCoMKgwqDCoMKgfQ0K PiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNTI4DQo+ID4gMGJlODkw NzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA1MjnCoMKgwqDCoMKgwqDCoMKgcmV0dXJu IDA7DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA1MzDCoCB9DQo+ ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA1MzENCj4gPiAwYmU4OTA3 MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDUzMsKgIHN0YXRpYyBpbnQNCj4gPiByel9t dHUzX2Nhc2NhZGVfY291bnRzX2VuYWJsZV9nZXQoc3RydWN0IGNvdW50ZXJfZGV2aWNlICpjb3Vu dGVyLA0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNTMzDQo+ID4g dTggKmNhc2NhZGVfZW5hYmxlKQ0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAz LTMwwqAgNTM0wqAgew0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAg NTM1wqDCoMKgwqDCoMKgwqDCoHN0cnVjdCByel9tdHUzX2NudA0KPiA+ICpjb25zdA0KPiA+IHBy aXYgPSBjb3VudGVyX3ByaXYoY291bnRlcik7DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFz IDIwMjMtMDMtMzDCoCA1MzbCoMKgwqDCoMKgwqDCoMKgdW5zaWduZWQgbG9uZyB0bWRyOw0KPiA+ IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNTM3wqDCoMKgwqDCoMKgwqDC oGludCByZXQ7DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA1MzgN Cj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDUzOcKgwqDCoMKgwqDC oMKgwqByZXQgPQ0KPiA+IHJ6X210dTNfbG9ja19pZl9jaDBfaXNfZW5hYmxlZChwcml2KTsNCj4g PiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDU0MMKgwqDCoMKgwqDCoMKg wqBpZiAocmV0KQ0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNTQx wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqByZXR1cm4gcmV0Ow0KPiA+IDBiZTg5MDcz NTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNTQyDQo+ID4gMGJlODkwNzM1OWRmNGM2IEJp anUgRGFzIDIwMjMtMDMtMzDCoA0KPiA+IDU0M8KgwqDCoMKgwqDCoMKgwqBwbV9ydW50aW1lX2dl dF9zeW5jKHByaXYtDQo+ID4gPiBjaC0+ZGV2KTsNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBE YXMgMjAyMy0wMy0zMMKgIDU0NMKgwqDCoMKgwqDCoMKgwqB0bWRyID0NCj4gPiByel9tdHUzX3No YXJlZF9yZWdfcmVhZChwcml2LT5jaCwgUlpfTVRVM19UTURSMyk7DQo+ID4gMGJlODkwNzM1OWRm NGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoA0KPiA+IDU0NcKgwqDCoMKgwqDCoMKgwqBwbV9ydW50 aW1lX3B1dChwcml2LT5jaC0NCj4gPiA+IGRldik7DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUg RGFzIDIwMjMtMDMtMzDCoCA1NDbCoMKgwqDCoMKgwqDCoMKgKmNhc2NhZGVfZW5hYmxlID0NCj4g PiB0ZXN0X2JpdChSWl9NVFUzX1RNRFIzX0xXQSwgJnRtZHIpOw0KPiA+IDBiZTg5MDczNTlkZjRj NiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNTQ3wqDCoMKgwqDCoMKgwqDCoG11dGV4X3VubG9jaygm cHJpdi0NCj4gPiA+IGxvY2spOw0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAz LTMwwqAgNTQ4DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA1NDnC oMKgwqDCoMKgwqDCoMKgcmV0dXJuIDA7DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIw MjMtMDMtMzDCoCA1NTDCoCB9DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMt MzDCoCA1NTENCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDU1MsKg IHN0YXRpYyBpbnQNCj4gPiByel9tdHUzX2Nhc2NhZGVfY291bnRzX2VuYWJsZV9zZXQoc3RydWN0 IGNvdW50ZXJfZGV2aWNlICpjb3VudGVyLA0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAy MDIzLTAzLTMwwqAgNTUzDQo+ID4gdTggY2FzY2FkZV9lbmFibGUpDQo+ID4gMGJlODkwNzM1OWRm NGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA1NTTCoCB7DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJp anUgRGFzIDIwMjMtMDMtMzDCoCA1NTXCoMKgwqDCoMKgwqDCoMKgc3RydWN0IHJ6X210dTNfY250 DQo+ID4gKmNvbnN0DQo+ID4gcHJpdiA9IGNvdW50ZXJfcHJpdihjb3VudGVyKTsNCj4gPiAwYmU4 OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDU1NsKgwqDCoMKgwqDCoMKgwqBpbnQg cmV0Ow0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNTU3DQo+ID4g MGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA1NTjCoMKgwqDCoMKgwqDCoMKg cmV0ID0NCj4gPiByel9tdHUzX2xvY2tfaWZfY2gwX2lzX2VuYWJsZWQocHJpdik7DQo+ID4gMGJl ODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA1NTnCoMKgwqDCoMKgwqDCoMKgaWYg KHJldCkNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDU2MMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgcmV0dXJuIHJldDsNCj4gPiAwYmU4OTA3MzU5ZGY0 YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDU2MQ0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERh cyAyMDIzLTAzLTMwwqANCj4gPiA1NjLCoMKgwqDCoMKgwqDCoMKgcG1fcnVudGltZV9nZXRfc3lu Yyhwcml2LQ0KPiA+ID4gY2gtPmRldik7DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIw MjMtMDMtMzDCoCA1NjMNCj4gPiDCoMKgwqDCoMKgwqDCoMKgcnpfbXR1M19zaGFyZWRfcmVnX3Vw ZGF0ZV9iaXQocHJpdi0+Y2gsIFJaX01UVTNfVE1EUjMsDQo+ID4gMGJlODkwNzM1OWRmNGM2IEJp anUgRGFzIDIwMjMtMDMtMzDCoCA1NjQNCj4gPiBSWl9NVFUzX1RNRFIzX0xXQSwgY2FzY2FkZV9l bmFibGUpOw0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqANCj4gPiA1 NjXCoMKgwqDCoMKgwqDCoMKgcG1fcnVudGltZV9wdXQocHJpdi0+Y2gtDQo+ID4gPiBkZXYpOw0K PiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNTY2wqDCoMKgwqDCoMKg wqDCoG11dGV4X3VubG9jaygmcHJpdi0NCj4gPiA+IGxvY2spOw0KPiA+IDBiZTg5MDczNTlkZjRj NiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNTY3DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFz IDIwMjMtMDMtMzDCoCA1NjjCoMKgwqDCoMKgwqDCoMKgcmV0dXJuIDA7DQo+ID4gMGJlODkwNzM1 OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA1NjnCoCB9DQo+ID4gMGJlODkwNzM1OWRmNGM2 IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA1NzANCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMg MjAyMy0wMy0zMMKgIDU3McKgIHN0YXRpYyBpbnQNCj4gPiByel9tdHUzX2V4dF9pbnB1dF9waGFz ZV9jbG9ja19zZWxlY3RfZ2V0KHN0cnVjdCBjb3VudGVyX2RldmljZQ0KPiA+ICpjb3VudGVyLA0K PiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNTcyDQo+ID4gwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCB1MzIgKmV4dF9pbnB1dF9waGFzZV9jbG9ja19zZWxlY3QpDQo+ID4g MGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA1NzPCoCB7DQo+ID4gMGJlODkw NzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA1NzTCoMKgwqDCoMKgwqDCoMKgc3RydWN0 IHJ6X210dTNfY250DQo+ID4gKmNvbnN0DQo+ID4gcHJpdiA9IGNvdW50ZXJfcHJpdihjb3VudGVy KTsNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDU3NcKgwqDCoMKg wqDCoMKgwqB1bnNpZ25lZCBsb25nIHRtZHI7DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFz IDIwMjMtMDMtMzDCoCA1NzbCoMKgwqDCoMKgwqDCoMKgaW50IHJldDsNCj4gPiAwYmU4OTA3MzU5 ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDU3Nw0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1 IERhcyAyMDIzLTAzLTMwwqAgNTc4wqDCoMKgwqDCoMKgwqDCoHJldCA9DQo+ID4gcnpfbXR1M19s b2NrX2lmX2NoMF9pc19lbmFibGVkKHByaXYpOw0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERh cyAyMDIzLTAzLTMwwqAgNTc5wqDCoMKgwqDCoMKgwqDCoGlmIChyZXQpDQo+ID4gMGJlODkwNzM1 OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA1ODDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoHJldHVybiByZXQ7DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMt MzDCoCA1ODENCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgDQo+ID4g NTgywqDCoMKgwqDCoMKgwqDCoHBtX3J1bnRpbWVfZ2V0X3N5bmMocHJpdi0NCj4gPiA+IGNoLT5k ZXYpOw0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwIEA1ODPCoMKgwqDC oMKgwqDCoMKgdG1kciA9DQo+ID4gcnpfbXR1M19zaGFyZWRfcmVnX3JlYWQocHJpdi0+Y2gsIFJa X01UVTNfVE1EUjMpOw0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAN Cj4gPiA1ODTCoMKgwqDCoMKgwqDCoMKgcG1fcnVudGltZV9wdXQocHJpdi0+Y2gtDQo+ID4gPiBk ZXYpOw0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNTg1DQo+ID4g wqDCoMKgwqDCoMKgwqDCoCpleHRfaW5wdXRfcGhhc2VfY2xvY2tfc2VsZWN0ID0NCj4gPiB0ZXN0 X2JpdChSWl9NVFUzX1RNRFIzX1BIQ0tTRUwsDQo+ID4gJnRtZHIpOw0KPiA+IDBiZTg5MDczNTlk ZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNTg2wqDCoMKgwqDCoMKgwqDCoG11dGV4X3VubG9j aygmcHJpdi0NCj4gPiA+IGxvY2spOw0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIz LTAzLTMwwqAgNTg3DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA1 ODjCoMKgwqDCoMKgwqDCoMKgcmV0dXJuIDA7DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFz IDIwMjMtMDMtMzDCoCA1ODnCoCB9DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMt MDMtMzDCoCA1OTANCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDU5 McKgIHN0YXRpYyBpbnQNCj4gPiByel9tdHUzX2V4dF9pbnB1dF9waGFzZV9jbG9ja19zZWxlY3Rf c2V0KHN0cnVjdCBjb3VudGVyX2RldmljZQ0KPiA+ICpjb3VudGVyLA0KPiA+IDBiZTg5MDczNTlk ZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNTkyDQo+ID4gwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCB1MzIgZXh0X2lucHV0X3BoYXNlX2Nsb2NrX3NlbGVjdCkNCj4gPiAwYmU4OTA3MzU5ZGY0YzYg QmlqdSBEYXMgMjAyMy0wMy0zMMKgIDU5M8KgIHsNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBE YXMgMjAyMy0wMy0zMMKgIDU5NMKgwqDCoMKgwqDCoMKgwqBzdHJ1Y3QgcnpfbXR1M19jbnQNCj4g PiAqY29uc3QNCj4gPiBwcml2ID0gY291bnRlcl9wcml2KGNvdW50ZXIpOw0KPiA+IDBiZTg5MDcz NTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNTk1wqDCoMKgwqDCoMKgwqDCoGludCByZXQ7 DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA1OTYNCj4gPiAwYmU4 OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDU5N8KgwqDCoMKgwqDCoMKgwqByZXQg PQ0KPiA+IHJ6X210dTNfbG9ja19pZl9jaDBfaXNfZW5hYmxlZChwcml2KTsNCj4gPiAwYmU4OTA3 MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDU5OMKgwqDCoMKgwqDCoMKgwqBpZiAocmV0 KQ0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNTk5wqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqByZXR1cm4gcmV0Ow0KPiA+IDBiZTg5MDczNTlkZjRjNiBC aWp1IERhcyAyMDIzLTAzLTMwwqAgNjAwDQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIw MjMtMDMtMzDCoA0KPiA+IDYwMcKgwqDCoMKgwqDCoMKgwqBwbV9ydW50aW1lX2dldF9zeW5jKHBy aXYtDQo+ID4gPiBjaC0+ZGV2KTsNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0w My0zMCBANjAyDQo+ID4gwqDCoMKgwqDCoMKgwqDCoHJ6X210dTNfc2hhcmVkX3JlZ191cGRhdGVf Yml0KHByaXYtPmNoLCBSWl9NVFUzX1RNRFIzLA0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERh cyAyMDIzLTAzLTMwwqAgNjAzDQo+ID4gUlpfTVRVM19UTURSM19QSENLU0VMLA0KPiA+IDBiZTg5 MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNjA0DQo+ID4gZXh0X2lucHV0X3BoYXNl X2Nsb2NrX3NlbGVjdCk7DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDC oA0KPiA+IDYwNcKgwqDCoMKgwqDCoMKgwqBwbV9ydW50aW1lX3B1dChwcml2LT5jaC0NCj4gPiA+ IGRldik7DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA2MDbCoMKg wqDCoMKgwqDCoMKgbXV0ZXhfdW5sb2NrKCZwcml2LQ0KPiA+ID4gbG9jayk7DQo+ID4gMGJlODkw NzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA2MDcNCj4gPiAwYmU4OTA3MzU5ZGY0YzYg QmlqdSBEYXMgMjAyMy0wMy0zMMKgIDYwOMKgwqDCoMKgwqDCoMKgwqByZXR1cm4gMDsNCj4gPiAw YmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDYwOcKgIH0NCj4gPiAwYmU4OTA3 MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDYxMA0KPiA+IDBiZTg5MDczNTlkZjRjNiBC aWp1IERhcyAyMDIzLTAzLTMwwqAgNjExwqAgc3RhdGljIHN0cnVjdA0KPiA+IGNvdW50ZXJfY29t cA0KPiA+IHJ6X210dTNfY291bnRfZXh0W10gPSB7DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUg RGFzIDIwMjMtMDMtMzDCoCA2MTINCj4gPiDCoMKgwqDCoMKgwqDCoMKgQ09VTlRFUl9DT01QX0RJ UkVDVElPTihyel9tdHUzX2NvdW50X2RpcmVjdGlvbl9yZWFkKSwNCj4gPiAwYmU4OTA3MzU5ZGY0 YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDYxMw0KPiA+IMKgwqDCoMKgwqDCoMKgwqBDT1VOVEVS X0NPTVBfRU5BQkxFKHJ6X210dTNfY291bnRfZW5hYmxlX3JlYWQsDQo+ID4gMGJlODkwNzM1OWRm NGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA2MTQNCj4gPiByel9tdHUzX2NvdW50X2VuYWJsZV93 cml0ZSksDQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA2MTUNCj4g PiDCoMKgwqDCoMKgwqDCoMKgQ09VTlRFUl9DT01QX0NFSUxJTkcocnpfbXR1M19jb3VudF9jZWls aW5nX3JlYWQsDQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA2MTYN Cj4gPiByel9tdHUzX2NvdW50X2NlaWxpbmdfd3JpdGUpLA0KPiA+IDBiZTg5MDczNTlkZjRjNiBC aWp1IERhcyAyMDIzLTAzLTMwwqAgNjE3wqAgfTsNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBE YXMgMjAyMy0wMy0zMMKgIDYxOA0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAz LTMwwqAgNjE5wqAgc3RhdGljIGNvbnN0IGVudW0NCj4gPiBjb3VudGVyX3N5bmFwc2VfYWN0aW9u IHJ6X210dTNfc3luYXBzZV9hY3Rpb25zW10gPSB7DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUg RGFzIDIwMjMtMDMtMzDCoCA2MjANCj4gPiDCoMKgwqDCoMKgwqDCoMKgQ09VTlRFUl9TWU5BUFNF X0FDVElPTl9CT1RIX0VER0VTLA0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAz LTMwwqAgNjIxDQo+ID4gwqDCoMKgwqDCoMKgwqDCoENPVU5URVJfU1lOQVBTRV9BQ1RJT05fUklT SU5HX0VER0UsDQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA2MjIN Cj4gPiDCoMKgwqDCoMKgwqDCoMKgQ09VTlRFUl9TWU5BUFNFX0FDVElPTl9OT05FLA0KPiA+IDBi ZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNjIzwqAgfTsNCj4gPiAwYmU4OTA3 MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDYyNA0KPiA+IDBiZTg5MDczNTlkZjRjNiBC aWp1IERhcyAyMDIzLTAzLTMwwqAgNjI1wqAgc3RhdGljIGludA0KPiA+IHJ6X210dTNfYWN0aW9u X3JlYWQoc3RydWN0IGNvdW50ZXJfZGV2aWNlICpjb3VudGVyLA0KPiA+IDBiZTg5MDczNTlkZjRj NiBCaWp1IERhcyAyMDIzLTAzLTMwwqANCj4gPiA2MjbCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgc3RydWN0DQo+ID4gY291bnRlcl9j b3VudCAqY291bnQsDQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoA0K PiA+IDYyN8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCBzdHJ1Y3QNCj4gPiBjb3VudGVyX3N5bmFwc2UgKnN5bmFwc2UsDQo+ID4gMGJl ODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoA0KPiA+IDYyOMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBlbnVtDQo+ID4g Y291bnRlcl9zeW5hcHNlX2FjdGlvbiAqYWN0aW9uKQ0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1 IERhcyAyMDIzLTAzLTMwwqAgNjI5wqAgew0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAy MDIzLTAzLTMwwqAgNjMwwqDCoMKgwqDCoMKgwqDCoGNvbnN0IGJvb2wNCj4gPiBpc19zaWduYWxf YWIgPQ0KPiA+IChzeW5hcHNlLT5zaWduYWwtPmlkID09IFNJR05BTF9BX0lEKSB8fA0KPiA+IDBi ZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNjMxDQo+ID4gKHN5bmFwc2UtPnNp Z25hbC0+aWQgPT0gU0lHTkFMX0JfSUQpOw0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAy MDIzLTAzLTMwwqAgNjMywqDCoMKgwqDCoMKgwqDCoHN0cnVjdA0KPiA+IHJ6X210dTNfY2hhbm5l bA0KPiA+ICpjb25zdCBjaCA9IHJ6X210dTNfZ2V0X2NoKGNvdW50ZXIsIGNvdW50LT5pZCk7DQo+ ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA2MzPCoMKgwqDCoMKgwqDC oMKgc3RydWN0IHJ6X210dTNfY250DQo+ID4gKmNvbnN0DQo+ID4gcHJpdiA9IGNvdW50ZXJfcHJp dihjb3VudGVyKTsNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDYz NMKgwqDCoMKgwqDCoMKgwqBlbnVtDQo+ID4gY291bnRlcl9mdW5jdGlvbg0KPiA+IGZ1bmN0aW9u Ow0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNjM1wqDCoMKgwqDC oMKgwqDCoGJvb2wgbXRjbGtjX210Y2xrZDsNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMg MjAyMy0wMy0zMMKgIDYzNsKgwqDCoMKgwqDCoMKgwqB1bnNpZ25lZCBsb25nIHRtZHI7DQo+ID4g MGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA2MzfCoMKgwqDCoMKgwqDCoMKg aW50IHJldDsNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDYzOA0K PiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNjM5wqDCoMKgwqDCoMKg wqDCoHJldCA9DQo+ID4gcnpfbXR1M19sb2NrX2lmX2NvdW50X2lzX2VuYWJsZWQoY2gsIHByaXYs IGNvdW50LT5pZCk7DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA2 NDDCoMKgwqDCoMKgwqDCoMKgaWYgKHJldCkNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMg MjAyMy0wMy0zMMKgIDY0McKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgcmV0dXJuIHJl dDsNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDY0Mg0KPiA+IDBi ZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNjQzwqDCoMKgwqDCoMKgwqDCoHJl dCA9DQo+ID4gcnpfbXR1M19jb3VudF9mdW5jdGlvbl9yZWFkX2hlbHBlcihjaCwgcHJpdiwgJmZ1 bmN0aW9uKTsNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDY0NMKg wqDCoMKgwqDCoMKgwqBpZiAocmV0KSB7DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIw MjMtMDMtMzDCoA0KPiA+IDY0NcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgbXV0ZXhf dW5sb2NrKCZwcml2LQ0KPiA+ID4gbG9jayk7DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFz IDIwMjMtMDMtMzDCoCA2NDbCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoHJldHVybiBy ZXQ7DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA2NDfCoMKgwqDC oMKgwqDCoMKgfQ0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNjQ4 DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA2NDnCoMKgwqDCoMKg wqDCoMKgLyogRGVmYXVsdCBhY3Rpb24NCj4gPiBtb2RlICovDQo+ID4gMGJlODkwNzM1OWRmNGM2 IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA2NTDCoMKgwqDCoMKgwqDCoMKgKmFjdGlvbiA9DQo+ID4g Q09VTlRFUl9TWU5BUFNFX0FDVElPTl9OT05FOw0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERh cyAyMDIzLTAzLTMwwqAgNjUxDQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMt MzDCoCA2NTLCoMKgwqDCoMKgwqDCoMKgaWYgKGNvdW50LT5pZCAhPQ0KPiA+IFJaX01UVTNfMTZf QklUX01UVTFfQ0gpIHsNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMCBA NjUzwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqB0bWRyID0NCj4gPiByel9tdHUzX3No YXJlZF9yZWdfcmVhZChwcml2LT5jaCwgUlpfTVRVM19UTURSMyk7DQo+ID4gMGJlODkwNzM1OWRm NGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoA0KPiA+IDY1NMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgbXRjbGtjX210Y2xrZCA9DQo+ID4gdGVzdF9iaXQoUlpfTVRVM19UTURSM19QSENL U0VMLCAmdG1kcik7DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA2 NTXCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoGlmDQo+ID4gKChtdGNsa2NfbXRjbGtk DQo+ID4gJiYgaXNfc2lnbmFsX2FiKSB8fA0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAy MDIzLTAzLTMwwqAgNjU2wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqANCj4g PiAoIW10Y2xrY19tdGNsa2QNCj4gPiAmJiAhaXNfc2lnbmFsX2FiKSkgew0KPiA+IDBiZTg5MDcz NTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNjU3DQo+ID4gwqDCoMKgwqDCoMKgwqDCoG11 dGV4X3VubG9jaygmcHJpdi0+bG9jayk7DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIw MjMtMDMtMzDCoA0KPiA+IDY1OMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoHJldHVybiAwOw0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAz LTMwwqAgNjU5wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqB9DQo+ID4gMGJlODkwNzM1 OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA2NjDCoMKgwqDCoMKgwqDCoMKgfQ0KPiA+IDBi ZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNjYxDQo+ID4gMGJlODkwNzM1OWRm NGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA2NjLCoMKgwqDCoMKgwqDCoMKgc3dpdGNoIChmdW5j dGlvbikgew0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAzLTMwwqAgNjYzwqDC oMKgwqDCoMKgwqDCoGNhc2UNCj4gPiBDT1VOVEVSX0ZVTkNUSU9OX1BVTFNFX0RJUkVDVElPTjoN Cj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDY2NMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgLyoNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAy My0wMy0zMMKgIDY2NcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICogUmlzaW5nDQo+ ID4gZWRnZXMgb24NCj4gPiBzaWduYWwgQSAoc2lnbmFsIEMpIHVwZGF0ZXMgdGhlIHJlc3BlY3Rp dmUNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDY2NsKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICogY291bnQuDQo+ID4gVGhlIGlucHV0DQo+ID4gbGV2 ZWwgb2Ygc2lnbmFsIEIgKHNpZ25hbCBEKSBkZXRlcm1pbmVzDQo+ID4gMGJlODkwNzM1OWRmNGM2 IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA2NjfCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCAqDQo+ID4gZGlyZWN0aW9uLg0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAz LTMwwqAgNjY4wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKi8NCj4gPiAwYmU4OTA3 MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDY2OcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgaWYNCj4gPiAoc3luYXBzZS0NCj4gPiA+IHNpZ25hbC0+aWQgPT0gU0lHTkFMX0Ff SUQgfHwNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDY3MMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgDQo+ID4gc3luYXBzZS0NCj4gPiA+IHNp Z25hbC0+aWQgPT0gU0lHTkFMX0NfSUQpDQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIw MjMtMDMtMzDCoA0KPiA+IDY3McKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCphY3Rpb24gPQ0KPiA+IENPVU5URVJfU1lOQVBTRV9BQ1RJT05fUklTSU5HX0VE R0U7DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA2NzLCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoGJyZWFrOw0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1 IERhcyAyMDIzLTAzLTMwwqAgNjczwqDCoMKgwqDCoMKgwqDCoGNhc2UNCj4gPiBDT1VOVEVSX0ZV TkNUSU9OX1FVQURSQVRVUkVfWDJfQjoNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAy My0wMy0zMMKgIDY3NMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgLyoNCj4gPiAwYmU4 OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDY3NcKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgICogQW55DQo+ID4gc3RhdGUNCj4gPiB0cmFuc2l0aW9uIG9uIHF1YWRyYXR1 cmUgcGFpciBzaWduYWwgQiAoc2lnbmFsIEQpDQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFz IDIwMjMtMDMtMzDCoCA2NzbCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAqIHVwZGF0 ZXMNCj4gPiB0aGUNCj4gPiByZXNwZWN0aXZlIGNvdW50Lg0KPiA+IDBiZTg5MDczNTlkZjRjNiBC aWp1IERhcyAyMDIzLTAzLTMwwqAgNjc3wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg Ki8NCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDY3OMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgaWYNCj4gPiAoc3luYXBzZS0NCj4gPiA+IHNpZ25hbC0+ aWQgPT0gU0lHTkFMX0JfSUQgfHwNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0w My0zMMKgIDY3OcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgDQo+ID4gc3lu YXBzZS0NCj4gPiA+IHNpZ25hbC0+aWQgPT0gU0lHTkFMX0RfSUQpDQo+ID4gMGJlODkwNzM1OWRm NGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoA0KPiA+IDY4MMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCphY3Rpb24gPQ0KPiA+IENPVU5URVJfU1lOQVBTRV9B Q1RJT05fQk9USF9FREdFUzsNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0z MMKgIDY4McKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgYnJlYWs7DQo+ID4gMGJlODkw NzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA2ODLCoMKgwqDCoMKgwqDCoMKgY2FzZQ0K PiA+IENPVU5URVJfRlVOQ1RJT05fUVVBRFJBVFVSRV9YNDoNCj4gPiAwYmU4OTA3MzU5ZGY0YzYg QmlqdSBEYXMgMjAyMy0wMy0zMMKgIDY4M8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg LyogY291bnRzDQo+ID4gdXAvZG93bg0KPiA+IG9uIGJvdGggZWRnZXMgb2YgQSAoQynCoCBhbmQg QiAoRCkgc2lnbmFsICovDQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDC oCA2ODTCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCphY3Rpb24gPQ0KPiA+IENPVU5U RVJfU1lOQVBTRV9BQ1RJT05fQk9USF9FREdFUzsNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBE YXMgMjAyMy0wMy0zMMKgIDY4NcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgYnJlYWs7 DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA2ODbCoMKgwqDCoMKg wqDCoMKgZGVmYXVsdDoNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKg IDY4N8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgLyogc2hvdWxkDQo+ID4gbmV2ZXIN Cj4gPiByZWFjaCB0aGlzIHBhdGggKi8NCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAy My0wMy0zMMKgDQo+ID4gNjg4wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBtdXRleF91 bmxvY2soJnByaXYtDQo+ID4gPiBsb2NrKTsNCj4gPiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMg MjAyMy0wMy0zMMKgIDY4OcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgcmV0dXJuIC0N Cj4gPiBFSU5WQUw7DQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA2 OTDCoMKgwqDCoMKgwqDCoMKgfQ0KPiA+IDBiZTg5MDczNTlkZjRjNiBCaWp1IERhcyAyMDIzLTAz LTMwwqAgNjkxDQo+ID4gMGJlODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA2OTLC oMKgwqDCoMKgwqDCoMKgbXV0ZXhfdW5sb2NrKCZwcml2LQ0KPiA+ID4gbG9jayk7DQo+ID4gMGJl ODkwNzM1OWRmNGM2IEJpanUgRGFzIDIwMjMtMDMtMzDCoCA2OTMNCj4gPiAwYmU4OTA3MzU5ZGY0 YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDY5NMKgwqDCoMKgwqDCoMKgwqByZXR1cm4gMDsNCj4g PiAwYmU4OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDY5NcKgIH0NCj4gPiAwYmU4 OTA3MzU5ZGY0YzYgQmlqdSBEYXMgMjAyMy0wMy0zMMKgIDY5Ng0KPiA+IA0KPiA+IDo6Ojo6OiBU aGUgY29kZSBhdCBsaW5lIDYwMiB3YXMgZmlyc3QgaW50cm9kdWNlZCBieSBjb21taXQNCj4gPiA6 Ojo6OjogMGJlODkwNzM1OWRmNGM2MjMxOWY1Y2IyYzY5ODFmZjBkOWViZjM1YSBjb3VudGVyOiBB ZGQNCj4gPiBSZW5lc2FzDQo+ID4gUlovRzJMIE1UVTNhIGNvdW50ZXIgZHJpdmVyDQo+ID4gDQo+ ID4gOjo6Ojo6IFRPOiBCaWp1IERhcyA8YmlqdS5kYXMuanpAYnAucmVuZXNhcy5jb20+DQo+ID4g Ojo6Ojo6IENDOiBMZWUgSm9uZXMgPGxlZUBrZXJuZWwub3JnPg0KPiANCj4gDQoNCg==