Received: by 2002:a05:7412:b101:b0:e2:908c:2ebd with SMTP id az1csp3074365rdb; Wed, 15 Nov 2023 22:02:08 -0800 (PST) X-Google-Smtp-Source: AGHT+IHSm3ZuxRkw4CUw6T2iFraDXccWk+dApbpAZ+b+5ZlDRgPQYm4TyzS2bOd5VFBGqj3VyzT5 X-Received: by 2002:a05:6a20:da9d:b0:187:b14f:a2a with SMTP id iy29-20020a056a20da9d00b00187b14f0a2amr1441893pzb.20.1700114527805; Wed, 15 Nov 2023 22:02:07 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1700114527; cv=pass; d=google.com; s=arc-20160816; b=G0OFeACVXDndkpHHplmWIWVUFx4KCgzc0ROIX3XhSsBGR3qA2LDEmw0EIoRGpaXneY ypg+w+/hPnPccLtsRSLxvx9MiSfC+IlcovTYnUae6ajLNP24qPON+YGF9IG0vbpXOICh OIoqFryXZonCTsxZ0yh61PA6oOZZ7AY4WWAkqvPVA8vsr8lMgFSHRmiCDaLDNpepQ3Ir /DYIH5X/JUFALlVVPkpVxH/fq679j0xuLh9St6kW4uy3bh8CuwxAXf3UhKg0reGd6srn 046Nua+ApLRi63a6u9sjg0BslHLU4P8W7rjfexzCsyxefH6UxQTRIh2NCXSpFIDzu/EN u2BQ== 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-id:user-agent:content-language:accept-language:in-reply-to :references:message-id:date:thread-index:thread-topic:subject:cc:to :from:dkim-signature; bh=+hJ7C0DzuUOzGxSktRvplhSH6bG9sCS62OL2bWjFBaQ=; fh=Keev0auf5lYm6Ir7OmqhIuiGmQhSc+XXg7LJl0rt5sg=; b=SGN+wyA9Bv4TDdXLoRB2VyabrA6Si0IadYVfdPGEdnom1YPWu5chtw65uDRlb16+zE FuXgObyd05RDjKf13Yagtnp83+zPaUma4IAQYcCgQjRfzvtmTo3DvZ4q7kLHzDDNVGDx 3x+wrmUqC845oXV/wQAnJdoeP2T6ZFUSnd9gIfw+H0BlXCsM10wT66nTIV1ejqiM9+W3 /KgNwUc6cpS3UriAKtG9zOagzlPl1zcV4E6muDNBAWmFkgS/8p5lZy2IKwYXshJVZg3i Hqj8g8UT/6+kvBl/qg6k+DO1epsyALDMYqlHoivla98zOHmbqKTYTBP1J/ur382Rn6HB cjpg== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=CCSeOw2C; arc=pass (i=1 spf=pass spfdomain=intel.com dkim=pass dkdomain=intel.com dmarc=pass fromdomain=intel.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from snail.vger.email (snail.vger.email. [23.128.96.37]) by mx.google.com with ESMTPS id m18-20020a170902db1200b001cc0e39373bsi11823234plx.32.2023.11.15.22.02.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 15 Nov 2023 22:02:07 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) client-ip=23.128.96.37; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=CCSeOw2C; arc=pass (i=1 spf=pass spfdomain=intel.com dkim=pass dkdomain=intel.com dmarc=pass fromdomain=intel.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by snail.vger.email (Postfix) with ESMTP id 28B5C805F96B; Wed, 15 Nov 2023 22:01:28 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at snail.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232844AbjKPGBP (ORCPT + 99 others); Thu, 16 Nov 2023 01:01:15 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:59502 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229484AbjKPGBO (ORCPT ); Thu, 16 Nov 2023 01:01:14 -0500 Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.31]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 194271A4 for ; Wed, 15 Nov 2023 22:01:09 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1700114469; x=1731650469; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-id:content-transfer-encoding: mime-version; bh=+hJ7C0DzuUOzGxSktRvplhSH6bG9sCS62OL2bWjFBaQ=; b=CCSeOw2Cmpe/DkkC0ewPfLaEdOXyip1II7sgRcNWqDFbdGlUqDbl3cKA ugSxRpTNt6zg2jyjOvlvVg1qqdmYYz6p6iHGshzp9nWp8cM8trNS8cdSQ P7qo1ACthE5cLWNRSZYBCOOp5ngo08W+K8cBJBtwgZlxY0kJ6qkTv1ryr W51j9ZAzPH5ECjgtIjSQZ88txn3kXkhm21vsz6KOv1IV5rus9gQxxhYX+ NYao6Kew7dCHh08/V3y8cNEvGxPsSRDnt0S2CXWlgEs7Fem0SXnb9C9mo iR5AGtSNNJUDDfG9UDqg2dF3mjNifgH4evV62Tw5BF9c5unG5mDsYvIS7 Q==; X-IronPort-AV: E=McAfee;i="6600,9927,10895"; a="455312499" X-IronPort-AV: E=Sophos;i="6.03,307,1694761200"; d="scan'208";a="455312499" Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 15 Nov 2023 22:01:08 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10895"; a="715098375" X-IronPort-AV: E=Sophos;i="6.03,307,1694761200"; d="scan'208";a="715098375" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by orsmga003.jf.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 15 Nov 2023 22:01:08 -0800 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.34; Wed, 15 Nov 2023 22:01:06 -0800 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.34 via Frontend Transport; Wed, 15 Nov 2023 22:01:06 -0800 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (104.47.66.40) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.34; Wed, 15 Nov 2023 22:01:03 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UTaN82fD11+Sv5YM6QcE5ii7w+YJ021XwSDglX25S19DxO06khdkrmZA3TeCpGyvQMmlt1/g3jhM4YsMDZyveBS49gDc5njqWkqrznIXfkRl6w7U2VIX8DvdwcD4D7nF/owAvnQ3kK+Z1lLmedCpQnVBbvCVh15jQopb64X+g2Au/DbikV1cAzpnMJuf9nLFt7hRJp7+V2py49Ug9r1nbSd380pzK/1TuMcbNuZ8ty/nQGp59WpBjsS00DF+4QrnFy+hlHulOfakfw1YTrj0d05Z2NdRcCFhYAoMEShrOwQJafRVv5psolOaMJ/rrIPtwnnabnR4ZoqMQK5fTXK0bg== 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=+hJ7C0DzuUOzGxSktRvplhSH6bG9sCS62OL2bWjFBaQ=; b=SflXAEVOKK833sBwuQ6Fag6uzr0w8lQM/y8+MO5v1orHsLu6NobIAOTSJ6yscp9gLje52Glnodjd40P9n6W46F5mRJ76X6mGIg7DyKslFBz8f9P/7sA+nyRHhq5GSWjAoo5ZOgIAyOG4Wbo17DuIfvtKb9K1pC8aDcBF97WHkwv7SuLMdN9JT5PxzQHrFIppXnOBb30v01tb+AO0FUgbnMt5Zcr0O4XONhtdZUlmrVZoQ60h79skBlNj8H9fZsZ8My27ktRt5+Zs62mvTyFGD1133LjzrkvN61Z9DdTWRG4lx1VMTgqKNIOHziJ/c5E6/ouqtdBQdMyRKNSAuTeZVQ== 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 SN7PR11MB6924.namprd11.prod.outlook.com (2603:10b6:806:2ab::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6977.31; Thu, 16 Nov 2023 06:00:59 +0000 Received: from CY5PR11MB6392.namprd11.prod.outlook.com ([fe80::15d3:7425:a09e:1c86]) by CY5PR11MB6392.namprd11.prod.outlook.com ([fe80::15d3:7425:a09e:1c86%4]) with mapi id 15.20.7002.019; Thu, 16 Nov 2023 06:00:59 +0000 From: "Liu, Yujie" To: "bigeasy@linutronix.de" CC: "mmarek@suse.com" , "linux-kernel@vger.kernel.org" , "oe-kbuild-all@lists.linux.dev" , lkp Subject: Re: drivers/hid/hid-sensor-custom.c:598:64: warning: 'snprintf' output may be truncated before the last format character Thread-Topic: drivers/hid/hid-sensor-custom.c:598:64: warning: 'snprintf' output may be truncated before the last format character Thread-Index: AQHaGEKW+65UAo/esEWlnoPN/D3gKrB8cr0A Date: Thu, 16 Nov 2023 06:00:59 +0000 Message-ID: References: <202311161224.pnGqzMx0-lkp@intel.com> In-Reply-To: <202311161224.pnGqzMx0-lkp@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Evolution 3.44.4-0ubuntu2 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: CY5PR11MB6392:EE_|SN7PR11MB6924:EE_ x-ms-office365-filtering-correlation-id: c9d3a511-35f6-40f5-53b9-08dbe6696820 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: YH6hYmU6TTosfuiH3aytr+zsb8iTGQyc30Q1or2tspvVNUAQudiOm2PRdxNBfxU/ZfKZrpMvkd0Va6uB8tE7gHjI2Osf5p2BkxXWWCevjhjCHCgvLSZaE1VKSwdgAk302GSI0TZKZ0U7R/pZtzrEvyU2b3nwsyYx5FsSyqMejj/JeK5exDP3vgrIfBLwADONAuGH/VN6TxGGWhLG88MCdfn9z8s+/uOQ9RVIFTe5jNtKNLXP8ykVB8MqxaiOLeEEfq2PI3lFuUQBjfK0DHaYjp9uFuHTMemO9bWCgEmIFXr3txTx2fqQNMZYPgTdgEiPU1fFINAtaq1MEvuMi/l3KnHKeSFMqJXhBUBDegxSmwOzGZwMeix4uPqG/xUObP3DRaN2DJhpcU3T7W1EZs+rNE5yFXu1gIA27/F/or8xeUJFYREiRs7KYnxL1ukWzwezNS7D18c/zlBQuVY3JIuWgxwl7ddp++Lvjsk8pg441eOfnWFHjRYJWvV1BrNui/v+jbErazI9H56KHiKCV8GDgVPgrTa0u8ljJPP3diwFTJaz9ymwbchQnbfCi/UBxCzWsr97+2VQfsj9wgQAlh7xuv1nA0H6KpQLEOCii2LJm2HCwYGyoUkqbalzQuOJM7EPLc+JSPxcZDrXBfzKcW/X0o5hh0O57m0DkrcggD9Pw3N4sJ/R3ExM3t1XHRBIIXM/ 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:(13230031)(136003)(39860400002)(376002)(396003)(346002)(366004)(230922051799003)(230273577357003)(230173577357003)(64100799003)(451199024)(186009)(1800799009)(8936002)(107886003)(2616005)(38100700002)(83380400001)(26005)(122000001)(6512007)(82960400001)(6506007)(478600001)(966005)(6486002)(71200400001)(6916009)(91956017)(76116006)(66476007)(64756008)(66556008)(54906003)(66446008)(316002)(66946007)(38070700009)(4001150100001)(41300700001)(4326008)(8676002)(2906002)(36756003)(86362001)(30864003)(5660300002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?YllEb3hleEpmRmNhRGVvZVZROERHNWlWVWFoeUs1akZrRGN6VjU0aTdxbFVU?= =?utf-8?B?dVFNcVdhNDFGSjBUWDM1WVhvWm51c0FBU2FVZmZvUFB0UUFaSks5dGgzSVla?= =?utf-8?B?TnVaY3pUMDJrWFRwQXRJK01qM2tSUzRadEFUZlRvU1lQWXl6NU1UZDB1WE1V?= =?utf-8?B?ZUpLa2dGd3lJT2pSTE0yY21GemppU0RMRDBaZk15ZVI2WG4rRWgyb0JSZEF2?= =?utf-8?B?dkRuSHBvK0Z5TmxMNmVIZmY4NDFSVUFwSktEUld1UGhJeDdLR1JDMUo3QVJn?= =?utf-8?B?MkZkWjhKbUdnM1RuU3JCV2R6NEMyUEgxRWZkMGkyOFR6YVBXelA5bzgrQndz?= =?utf-8?B?akNqbzErYTVsYUwwbFJwRDFvcmwrUFFuLzcwSnhRTE9wS0N4QjhRV2tsNEdh?= =?utf-8?B?S1hxeHNaZUdKMzlsU1grWTZvaFg2TlZUOEZuT3FCNGYwRk1zUkJlRHhLdU0w?= =?utf-8?B?OTVBblQ2bWUvYld1MGxJZ2Fpb3pZZ0NWVnI5T1hBbE9vTW42UEZrZGhCbk4v?= =?utf-8?B?M3ROQ0ZCbzR2cGRvaGZ5YnJyL1J3VHdXYWVTL3g4TXR1MEdQMGpqMTQrb3NC?= =?utf-8?B?NkRJSlRLVThEdlNEN0MvQzNuV3Z2KzVXNEtiMkpzM3dkVEdLOG05UldPMzdO?= =?utf-8?B?WDdwSkJvYlRHSS9HL2FMK0hhWnhyZ3VyTGlXQXZhdVZPVVlRdllpNmZLU294?= =?utf-8?B?ektvTlBkaHJpb3ZpS0x0MWcyYXBQQTAzUjI1V2JpWTBjWHdPL3lxTnQrNlNn?= =?utf-8?B?NStNeERxUDBub1l4by9DTGlIc29mazNxcFhXU1JPYnRxcytsUFJMay9BR0w0?= =?utf-8?B?dHFUS1djQlo1c1pSNlllcGpVbHcxS1l2QUdaN0FtL011WHFDMXM2M3JtdmVx?= =?utf-8?B?M3dHVklsZTlaVmdiT21Cd3FnTk5oRTNTeW1nOXozNkZZcFdQWlZQTVpJRHFh?= =?utf-8?B?bGpJV084dVEzVWNBdmlWMllWWFVJMlgwRjJPMS9CSHU5MC80VVVMUGh2VnNO?= =?utf-8?B?SXhaNXJKakpMTldYNFFlam5QRVdqM2J3ZysxYm9aa2VXMll5K0ZOejloU0M0?= =?utf-8?B?aHgzTUIrZngvZmhjL1hvcVBQMmxleFpSQ2NGOUtHdTNubWdNNVRraWFIQWxZ?= =?utf-8?B?V3NQQm5rUGZEbFBZYTZzK0pjTnowblcxSzZMZHVCaVVkcVpjZjFwQm9KRktF?= =?utf-8?B?ejlRNXBMeWN0WFppTzFadGx6WVgwUTRKMS8zZlJPR2tUOE1xaTkzZ281T3h6?= =?utf-8?B?RnFlTXR2c0FHL05GMVIvK3RORThQUnd2ZGQ4ZXNJeVpWN3l5Mm1CNWJ4RFJs?= =?utf-8?B?eVdKSmFnU3pVOGliYmlVK2pGK1pHZHVxeVdPWSs4bEswNXh6clpwaTJOMVVr?= =?utf-8?B?MWFVVlJ6SzZrMkVZUkpmaktyb0ZiUXZWVXowNS81K3F3ZWtvOW0vYjF4ZXR1?= =?utf-8?B?emRVSEg2ZGdQOURQcEtDZWlrVzF1UjIyaHhncUZlWGRuTDJveDFySzRYNWxS?= =?utf-8?B?MytLaU5sU1lhaTdWTnJXSDlpbHVTMVI3VlQ4eGFPc01tSnVoNlRNQlN6MWFG?= =?utf-8?B?VUlERHpPMk1TZnI4dlRTWDM0Rk1mTCt4b1ZHWjRKWnZyTjVFVXUvR3RhelJJ?= =?utf-8?B?d2JMaE5jb0d4eFVZamxDamJQTHdrUmRrK01oREpHR1NCNmRuUExhVllnWWZu?= =?utf-8?B?dHV4VmR2ckNZWW03WWNkV0lpdkhUelV4MEpvYzd0UnErN2tjWmNjMnFhcjJu?= =?utf-8?B?NkhVL2ZRR1Ewc3djc3VzY3MyWWRYSFRIeVRsOWVtNjBMR3h3eTM0b0VJTUZO?= =?utf-8?B?ZndPVFhEcjNkOW9rWkxwWEFXaGJ5cHV0cFJKdjVTNEFxdUhQSTRzQ0szNmpV?= =?utf-8?B?ZWkvemhPdnB4RFAvVElOYmtlbnY2enZ1NHZoenhXaGFibDYxRUJHZ1lrd25T?= =?utf-8?B?UWVjUzRIWjcvRThFTk5DNks1ZXdIMTNmbUpzWnRFbmJTejg4N0NtQ0pNd1BF?= =?utf-8?B?alo4azJxcThUMTJDdzZBa1VEbkcrZFJobjFkd3NyMUFQclM5L1dwODJsQkIw?= =?utf-8?B?OWpoVyt6ZlNFNVRvYUpBa0dmaHhlYUdkMWRiWmxzZkE4QkM0YjFsMzJtQS9r?= =?utf-8?B?Qm1Vcm9lSEVDMFpQaHR5L2pSS29ZRDZoQi8wUnJ2alFnV1ltUG92U2ZCa3JN?= =?utf-8?B?OGc9PQ==?= Content-Type: text/plain; charset="utf-8" Content-ID: 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: c9d3a511-35f6-40f5-53b9-08dbe6696820 X-MS-Exchange-CrossTenant-originalarrivaltime: 16 Nov 2023 06:00:59.5796 (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: YxXUuCWZpTOQR9Lyf61xpq4xOldqyrgjyz29Jxf2hNGcAlpK9URKoE/wENDQBbxDp0nUv0gWXnqCD8Ae+7XFWA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR11MB6924 X-OriginatorOrg: intel.com X-Spam-Status: No, score=-2.2 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF, RCVD_IN_DNSWL_BLOCKED,SPF_HELO_NONE,SPF_NONE,T_SCC_BODY_TEXT_LINE, URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (snail.vger.email [0.0.0.0]); Wed, 15 Nov 2023 22:01:28 -0800 (PST) T24gVGh1LCAyMDIzLTExLTE2IGF0IDEyOjA3ICswODAwLCBrZXJuZWwgdGVzdCByb2JvdCB3cm90 ZToKPiB0cmVlOsKgwqAgaHR0cHM6Ly9naXQua2VybmVsLm9yZy9wdWIvc2NtL2xpbnV4L2tlcm5l bC9naXQvdG9ydmFsZHMvbGludXguZ2l0wqBtYXN0ZXIKPiBoZWFkOsKgwqAgYzQyZDllZWVmOGU1 YmE5MjkyZWRhMzZmZDhlM2MxMWYzNWVlMDY1Ywo+IGNvbW1pdDogOGFlOTQyMjRjOWQ3MmZjNGQ5 YWFhYzkzYjJkNzgzM2NmNDZkNzE0MSBrYnVpbGQ6IGFkZCAtZm5vLVBJRQo+IGRhdGU6wqDCoCA3 IHllYXJzIGFnbwo+IGNvbmZpZzogeDg2XzY0LXJhbmRjb25maWctbTAwMS0yMDIzMDcxNyAoaHR0 cHM6Ly9kb3dubG9hZC4wMS5vcmcvMGRheS1jaS9hcmNoaXZlLzIwMjMxMTE2LzIwMjMxMTE2MTIy NC5wbkdxek14MC1sa3BAaW50ZWwuY29tL2NvbmZpZykKPiBjb21waWxlcjogZ2NjLTEyIChEZWJp YW4gMTIuMi4wLTE0KSAxMi4yLjAKPiByZXByb2R1Y2UgKHRoaXMgaXMgYSBXPTEgYnVpbGQpOiAo aHR0cHM6Ly9kb3dubG9hZC4wMS5vcmcvMGRheS1jaS9hcmNoaXZlLzIwMjMxMTE2LzIwMjMxMTE2 MTIyNC5wbkdxek14MC1sa3BAaW50ZWwuY29tL3JlcHJvZHVjZSkKPiAKPiBJZiB5b3UgZml4IHRo ZSBpc3N1ZSBpbiBhIHNlcGFyYXRlIHBhdGNoL2NvbW1pdCAoaS5lLiBub3QganVzdCBhIG5ldyB2 ZXJzaW9uIG9mCj4gdGhlIHNhbWUgcGF0Y2gvY29tbWl0KSwga2luZGx5IGFkZCBmb2xsb3dpbmcg dGFncwo+ID4gUmVwb3J0ZWQtYnk6IGtlcm5lbCB0ZXN0IHJvYm90IDxsa3BAaW50ZWwuY29tPgo+ ID4gQ2xvc2VzOiBodHRwczovL2xvcmUua2VybmVsLm9yZy9vZS1rYnVpbGQtYWxsLzIwMjMxMTE2 MTIyNC5wbkdxek14MC1sa3BAaW50ZWwuY29tLwoKUGxlYXNlIGtpbmRseSBpZ25vcmUgdGhpcyBy ZXBvcnQuIFRoZSBjb21taXQgaGVyZSBpcyBub3QgdGhlIGNhdXNlIG9mCnRoZSB3YXJuaW5ncy4g U29ycnkgZm9yIHRoZSBmYWxzZSBwb3NpdGl2ZS4KCj4gQWxsIHdhcm5pbmdzIChuZXcgb25lcyBw cmVmaXhlZCBieSA+Pik6Cj4gCj4gwqDCoCBkcml2ZXJzL2hpZC9oaWQtc2Vuc29yLWN1c3RvbS5j OiBJbiBmdW5jdGlvbiAnc3RvcmVfdmFsdWUnOgo+IMKgwqAgZHJpdmVycy9oaWQvaGlkLXNlbnNv ci1jdXN0b20uYzo0MDk6MjE6IHdhcm5pbmc6IHZhcmlhYmxlICdyZXQnIHNldCBidXQgbm90IHVz ZWQgWy1XdW51c2VkLWJ1dC1zZXQtdmFyaWFibGVdCj4gwqDCoMKgwqAgNDA5IHzCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBpbnQgcmV0Owo+IMKgwqDCoMKgwqDCoMKgwqAgfMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgXn5+Cj4gwqDCoCBkcml2ZXJzL2hp ZC9oaWQtc2Vuc29yLWN1c3RvbS5jOiBJbiBmdW5jdGlvbiAnaGlkX3NlbnNvcl9jdXN0b21fYWRk X2F0dHJpYnV0ZXMnOgo+ID4gPiBkcml2ZXJzL2hpZC9oaWQtc2Vuc29yLWN1c3RvbS5jOjU5ODo2 NDogd2FybmluZzogJ3NucHJpbnRmJyBvdXRwdXQgbWF5IGJlIHRydW5jYXRlZCBiZWZvcmUgdGhl IGxhc3QgZm9ybWF0IGNoYXJhY3RlciBbLVdmb3JtYXQtdHJ1bmNhdGlvbj1dCj4gwqDCoMKgwqAg NTk4IHzCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgSElEX0NVU1RPTV9OQU1FX0xFTkdUSCwgIiVzLSVzIiwKPiDCoMKgwqDC oMKgwqDCoMKgIHzCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgXgo+IMKgwqAgZHJpdmVycy9oaWQvaGlkLXNlbnNvci1j dXN0b20uYzo1OTc6MjU6IG5vdGU6ICdzbnByaW50Zicgb3V0cHV0IDIgb3IgbW9yZSBieXRlcyAo YXNzdW1pbmcgNjUpIGludG8gYSBkZXN0aW5hdGlvbiBvZiBzaXplIDY0Cj4gwqDCoMKgwqAgNTk3 IHzCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgc25wcmlu dGYoKGNoYXIgKikmc2Vuc29yX2luc3QtPmZpZWxkc1tpXS5hdHRyX25hbWVbal0sCj4gwqDCoMKg wqDCoMKgwqDCoCB8wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fgo+IMKgwqDCoMKgIDU5OCB8wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIEhJRF9DVVNUT01fTkFNRV9MRU5HVEgsICIlcy0l cyIsCj4gwqDCoMKgwqDCoMKgwqDCoCB8wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+Cj4gwqDCoMKgwqAgNTk5IHzCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgc2Vuc29yX2luc3QtPmZpZWxkc1tp XS5ncm91cF9uYW1lLAo+IMKgwqDCoMKgwqDCoMKgwqAgfMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+Cj4gwqDCoMKgwqAgNjAwIHzCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgaGlkX2N1c3Rv bV9hdHRyc1tqXS5uYW1lKTsKPiDCoMKgwqDCoMKgwqDCoMKgIHzCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fgo+IMKgwqAgYXJjaC94ODYvaW5jbHVkZS9hc20vYml0b3BzLmg6IEFz c2VtYmxlciBtZXNzYWdlczoKPiDCoMKgIGFyY2gveDg2L2luY2x1ZGUvYXNtL2JpdG9wcy5oOjIx MTogV2FybmluZzogbm8gaW5zdHJ1Y3Rpb24gbW5lbW9uaWMgc3VmZml4IGdpdmVuIGFuZCBubyBy ZWdpc3RlciBvcGVyYW5kczsgdXNpbmcgZGVmYXVsdCBmb3IgYGJ0cycKPiAtLQo+IMKgwqAgSW4g ZmlsZSBpbmNsdWRlZCBmcm9tIGZzL29yYW5nZWZzL3Byb3RvY29sLmg6MzM2LAo+IMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGZyb20gZnMvb3JhbmdlZnMvYWNsLmM6NzoK PiA+ID4gZnMvb3JhbmdlZnMvb3JhbmdlZnMtZGVidWcuaDo4OToxODogd2FybmluZzogJ251bV9r bW9kX2tleXdvcmRfbWFza19tYXAnIGRlZmluZWQgYnV0IG5vdCB1c2VkIFstV3VudXNlZC1jb25z dC12YXJpYWJsZT1dCj4gwqDCoMKgwqDCoCA4OSB8IHN0YXRpYyBjb25zdCBpbnQgbnVtX2ttb2Rf a2V5d29yZF9tYXNrX21hcCA9IChpbnQpCj4gwqDCoMKgwqDCoMKgwqDCoCB8wqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Cj4gLS0KPiDC oMKgIEluIGZpbGUgaW5jbHVkZWQgZnJvbSBmcy9vcmFuZ2Vmcy9wcm90b2NvbC5oOjMzNiwKPiDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBmcm9tIGZzL29yYW5nZWZzL2Rj YWNoZS5jOjExOgo+ID4gPiBmcy9vcmFuZ2Vmcy9vcmFuZ2Vmcy1kZWJ1Zy5oOjg5OjE4OiB3YXJu aW5nOiAnbnVtX2ttb2Rfa2V5d29yZF9tYXNrX21hcCcgZGVmaW5lZCBidXQgbm90IHVzZWQgWy1X dW51c2VkLWNvbnN0LXZhcmlhYmxlPV0KPiDCoMKgwqDCoMKgIDg5IHwgc3RhdGljIGNvbnN0IGlu dCBudW1fa21vZF9rZXl3b3JkX21hc2tfbWFwID0gKGludCkKPiDCoMKgwqDCoMKgwqDCoMKgIHzC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn4KPiDCoMKgIGZzL29yYW5nZWZzL2RjYWNoZS5jOiBJbiBmdW5jdGlvbiAnb3JhbmdlZnNfcmV2 YWxpZGF0ZV9sb29rdXAnOgo+IMKgwqAgZnMvb3JhbmdlZnMvZGNhY2hlLmM6MzM6OTogd2Fybmlu ZzogJ3N0cm5jcHknIHNwZWNpZmllZCBib3VuZCAyNTYgZXF1YWxzIGRlc3RpbmF0aW9uIHNpemUg Wy1Xc3RyaW5nb3AtdHJ1bmNhdGlvbl0KPiDCoMKgwqDCoMKgIDMzIHzCoMKgwqDCoMKgwqDCoMKg IHN0cm5jcHkobmV3X29wLT51cGNhbGwucmVxLmxvb2t1cC5kX25hbWUsCj4gwqDCoMKgwqDCoMKg wqDCoCB8wqDCoMKgwqDCoMKgwqDCoCBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fgo+IMKgwqDCoMKgwqAgMzQgfMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg IGRlbnRyeS0+ZF9uYW1lLm5hbWUsCj4gwqDCoMKgwqDCoMKgwqDCoCB8wqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgfn5+fn5+fn5+fn5+fn5+fn5+fn4KPiDCoMKgwqDCoMKgIDM1IHzC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBPUkFOR0VGU19OQU1FX01BWCk7Cj4gwqDC oMKgwqDCoMKgwqDCoCB8wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfn5+fn5+fn5+ fn5+fn5+fn5+Cj4gLS0KPiDCoMKgIEluIGZpbGUgaW5jbHVkZWQgZnJvbSBmcy9vcmFuZ2Vmcy9w cm90b2NvbC5oOjMzNiwKPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBm cm9tIGZzL29yYW5nZWZzL2lub2RlLmM6MTE6Cj4gPiA+IGZzL29yYW5nZWZzL29yYW5nZWZzLWRl YnVnLmg6ODk6MTg6IHdhcm5pbmc6ICdudW1fa21vZF9rZXl3b3JkX21hc2tfbWFwJyBkZWZpbmVk IGJ1dCBub3QgdXNlZCBbLVd1bnVzZWQtY29uc3QtdmFyaWFibGU9XQo+IMKgwqDCoMKgwqAgODkg fCBzdGF0aWMgY29uc3QgaW50IG51bV9rbW9kX2tleXdvcmRfbWFza19tYXAgPSAoaW50KQo+IMKg wqDCoMKgwqDCoMKgwqAgfMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgXn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fgo+IMKgwqAgYXJjaC94ODYvaW5jbHVkZS9hc20vYml0b3BzLmg6 IEFzc2VtYmxlciBtZXNzYWdlczoKPiDCoMKgIGFyY2gveDg2L2luY2x1ZGUvYXNtL2JpdG9wcy5o Ojk2OiBXYXJuaW5nOiBubyBpbnN0cnVjdGlvbiBtbmVtb25pYyBzdWZmaXggZ2l2ZW4gYW5kIG5v IHJlZ2lzdGVyIG9wZXJhbmRzOyB1c2luZyBkZWZhdWx0IGZvciBgYnRzJwo+IMKgwqAgYXJjaC94 ODYvaW5jbHVkZS9hc20vYml0b3BzLmg6MTM5OiBXYXJuaW5nOiBubyBpbnN0cnVjdGlvbiBtbmVt b25pYyBzdWZmaXggZ2l2ZW4gYW5kIG5vIHJlZ2lzdGVyIG9wZXJhbmRzOyB1c2luZyBkZWZhdWx0 IGZvciBgYnRyJwo+IC0tCj4gwqDCoCBJbiBmaWxlIGluY2x1ZGVkIGZyb20gZnMvb3JhbmdlZnMv cHJvdG9jb2wuaDozMzYsCj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg ZnJvbSBmcy9vcmFuZ2Vmcy9zdXBlci5jOjc6Cj4gPiA+IGZzL29yYW5nZWZzL29yYW5nZWZzLWRl YnVnLmg6ODk6MTg6IHdhcm5pbmc6ICdudW1fa21vZF9rZXl3b3JkX21hc2tfbWFwJyBkZWZpbmVk IGJ1dCBub3QgdXNlZCBbLVd1bnVzZWQtY29uc3QtdmFyaWFibGU9XQo+IMKgwqDCoMKgwqAgODkg fCBzdGF0aWMgY29uc3QgaW50IG51bV9rbW9kX2tleXdvcmRfbWFza19tYXAgPSAoaW50KQo+IMKg wqDCoMKgwqDCoMKgwqAgfMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgXn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fgo+IMKgwqAgZnMvb3JhbmdlZnMvc3VwZXIuYzogSW4gZnVuY3Rp b24gJ29yYW5nZWZzX21vdW50JzoKPiDCoMKgIGZzL29yYW5nZWZzL3N1cGVyLmM6NDUxOjk6IHdh cm5pbmc6ICdzdHJuY3B5JyBzcGVjaWZpZWQgYm91bmQgMjU2IGVxdWFscyBkZXN0aW5hdGlvbiBz aXplIFstV3N0cmluZ29wLXRydW5jYXRpb25dCj4gwqDCoMKgwqAgNDUxIHzCoMKgwqDCoMKgwqDC oMKgIHN0cm5jcHkobmV3X29wLT51cGNhbGwucmVxLmZzX21vdW50Lm9yYW5nZWZzX2NvbmZpZ19z ZXJ2ZXIsCj4gwqDCoMKgwqDCoMKgwqDCoCB8wqDCoMKgwqDCoMKgwqDCoCBefn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgo+IMKgwqDCoMKg IDQ1MiB8wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgZGV2bmFtZSwKPiDCoMKgwqDC oMKgwqDCoMKgIHzCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB+fn5+fn5+fgo+IMKg wqDCoMKgIDQ1MyB8wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgT1JBTkdFRlNfTUFY X1NFUlZFUl9BRERSX0xFTik7Cj4gwqDCoMKgwqDCoMKgwqDCoCB8wqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KPiDCoMKgIGZzL29y YW5nZWZzL3N1cGVyLmM6NDkxOjk6IHdhcm5pbmc6ICdzdHJuY3B5JyBzcGVjaWZpZWQgYm91bmQg MjU2IGVxdWFscyBkZXN0aW5hdGlvbiBzaXplIFstV3N0cmluZ29wLXRydW5jYXRpb25dCj4gwqDC oMKgwqAgNDkxIHzCoMKgwqDCoMKgwqDCoMKgIHN0cm5jcHkoT1JBTkdFRlNfU0Ioc2IpLT5kZXZu YW1lLAo+IMKgwqDCoMKgwqDCoMKgwqAgfMKgwqDCoMKgwqDCoMKgwqAgXn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+Cj4gwqDCoMKgwqAgNDkyIHzCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCBkZXZuYW1lLAo+IMKgwqDCoMKgwqDCoMKgwqAgfMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgIH5+fn5+fn5+Cj4gwqDCoMKgwqAgNDkzIHzCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCBPUkFOR0VGU19NQVhfU0VSVkVSX0FERFJfTEVOKTsKPiDCoMKgwqDC oMKgwqDCoMKgIHzCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fgo+IC0tCj4gwqDCoCBJbiBmaWxlIGluY2x1ZGVkIGZyb20gZnMvb3Jh bmdlZnMvcHJvdG9jb2wuaDozMzYsCj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgZnJvbSBmcy9vcmFuZ2Vmcy9uYW1laS5jOjExOgo+ID4gPiBmcy9vcmFuZ2Vmcy9vcmFu Z2Vmcy1kZWJ1Zy5oOjg5OjE4OiB3YXJuaW5nOiAnbnVtX2ttb2Rfa2V5d29yZF9tYXNrX21hcCcg ZGVmaW5lZCBidXQgbm90IHVzZWQgWy1XdW51c2VkLWNvbnN0LXZhcmlhYmxlPV0KPiDCoMKgwqDC oMKgIDg5IHwgc3RhdGljIGNvbnN0IGludCBudW1fa21vZF9rZXl3b3JkX21hc2tfbWFwID0gKGlu dCkKPiDCoMKgwqDCoMKgwqDCoMKgIHzCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg IF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KPiDCoMKgIGZzL29yYW5nZWZzL25hbWVpLmM6IElu IGZ1bmN0aW9uICdvcmFuZ2Vmc19yZW5hbWUnOgo+IMKgwqAgZnMvb3JhbmdlZnMvbmFtZWkuYzo0 MzQ6OTogd2FybmluZzogJ3N0cm5jcHknIHNwZWNpZmllZCBib3VuZCAyNTYgZXF1YWxzIGRlc3Rp bmF0aW9uIHNpemUgWy1Xc3RyaW5nb3AtdHJ1bmNhdGlvbl0KPiDCoMKgwqDCoCA0MzQgfMKgwqDC oMKgwqDCoMKgwqAgc3RybmNweShuZXdfb3AtPnVwY2FsbC5yZXEucmVuYW1lLmRfb2xkX25hbWUs Cj4gwqDCoMKgwqDCoMKgwqDCoCB8wqDCoMKgwqDCoMKgwqDCoCBefn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KPiDCoMKgwqDCoCA0MzUgfMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIG9sZF9kZW50cnktPmRfbmFtZS5uYW1lLAo+IMKgwqDCoMKgwqDC oMKgwqAgfMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIH5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fgo+IMKgwqDCoMKgIDQzNiB8wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg T1JBTkdFRlNfTkFNRV9NQVgpOwo+IMKgwqDCoMKgwqDCoMKgwqAgfMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgIH5+fn5+fn5+fn5+fn5+fn5+fgo+IMKgwqAgZnMvb3JhbmdlZnMvbmFt ZWkuYzo0Mzc6OTogd2FybmluZzogJ3N0cm5jcHknIHNwZWNpZmllZCBib3VuZCAyNTYgZXF1YWxz IGRlc3RpbmF0aW9uIHNpemUgWy1Xc3RyaW5nb3AtdHJ1bmNhdGlvbl0KPiDCoMKgwqDCoCA0Mzcg fMKgwqDCoMKgwqDCoMKgwqAgc3RybmNweShuZXdfb3AtPnVwY2FsbC5yZXEucmVuYW1lLmRfbmV3 X25hbWUsCj4gwqDCoMKgwqDCoMKgwqDCoCB8wqDCoMKgwqDCoMKgwqDCoCBefn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KPiDCoMKgwqDCoCA0MzggfMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIG5ld19kZW50cnktPmRfbmFtZS5uYW1lLAo+IMKgwqDC oMKgwqDCoMKgwqAgfMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIH5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fgo+IMKgwqDCoMKgIDQzOSB8wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgT1JBTkdFRlNfTkFNRV9NQVgpOwo+IMKgwqDCoMKgwqDCoMKgwqAgfMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIH5+fn5+fn5+fn5+fn5+fn5+fgo+IMKgwqAgZnMvb3Jhbmdl ZnMvbmFtZWkuYzogSW4gZnVuY3Rpb24gJ29yYW5nZWZzX3VubGluayc6Cj4gwqDCoCBmcy9vcmFu Z2Vmcy9uYW1laS5jOjI0MDo5OiB3YXJuaW5nOiAnc3RybmNweScgc3BlY2lmaWVkIGJvdW5kIDI1 NiBlcXVhbHMgZGVzdGluYXRpb24gc2l6ZSBbLVdzdHJpbmdvcC10cnVuY2F0aW9uXQo+IMKgwqDC oMKgIDI0MCB8wqDCoMKgwqDCoMKgwqDCoCBzdHJuY3B5KG5ld19vcC0+dXBjYWxsLnJlcS5yZW1v dmUuZF9uYW1lLCBkZW50cnktPmRfbmFtZS5uYW1lLAo+IMKgwqDCoMKgwqDCoMKgwqAgfMKgwqDC oMKgwqDCoMKgwqAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn4KPiDCoMKgwqDCoCAyNDEgfMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIE9SQU5HRUZTX05BTUVfTUFYKTsKPiDCoMKgwqDCoMKgwqDCoMKgIHzCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB+fn5+fn5+fn5+fn5+fn5+fn4KPiDCoMKgIGZzL29y YW5nZWZzL25hbWVpLmM6IEluIGZ1bmN0aW9uICdvcmFuZ2Vmc19sb29rdXAnOgo+IMKgwqAgZnMv b3JhbmdlZnMvbmFtZWkuYzoxMzc6OTogd2FybmluZzogJ3N0cm5jcHknIHNwZWNpZmllZCBib3Vu ZCAyNTYgZXF1YWxzIGRlc3RpbmF0aW9uIHNpemUgWy1Xc3RyaW5nb3AtdHJ1bmNhdGlvbl0KPiDC oMKgwqDCoCAxMzcgfMKgwqDCoMKgwqDCoMKgwqAgc3RybmNweShuZXdfb3AtPnVwY2FsbC5yZXEu bG9va3VwLmRfbmFtZSwgZGVudHJ5LT5kX25hbWUubmFtZSwKPiDCoMKgwqDCoMKgwqDCoMKgIHzC oMKgwqDCoMKgwqDCoMKgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+Cj4gwqDCoMKgwqAgMTM4IHzCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCBPUkFOR0VGU19OQU1FX01BWCk7Cj4gwqDCoMKgwqDCoMKgwqDCoCB8wqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfn5+fn5+fn5+fn5+fn5+fn5+Cj4gwqDCoCBm cy9vcmFuZ2Vmcy9uYW1laS5jOjEzNzo5OiB3YXJuaW5nOiAnc3RybmNweScgc3BlY2lmaWVkIGJv dW5kIDI1NiBlcXVhbHMgZGVzdGluYXRpb24gc2l6ZSBbLVdzdHJpbmdvcC10cnVuY2F0aW9uXQo+ IMKgwqAgZnMvb3JhbmdlZnMvbmFtZWkuYzogSW4gZnVuY3Rpb24gJ29yYW5nZWZzX21rZGlyJzoK PiDCoMKgIGZzL29yYW5nZWZzL25hbWVpLmM6MzU4Ojk6IHdhcm5pbmc6ICdzdHJuY3B5JyBzcGVj aWZpZWQgYm91bmQgMjU2IGVxdWFscyBkZXN0aW5hdGlvbiBzaXplIFstV3N0cmluZ29wLXRydW5j YXRpb25dCj4gwqDCoMKgwqAgMzU4IHzCoMKgwqDCoMKgwqDCoMKgIHN0cm5jcHkobmV3X29wLT51 cGNhbGwucmVxLm1rZGlyLmRfbmFtZSwKPiDCoMKgwqDCoMKgwqDCoMKgIHzCoMKgwqDCoMKgwqDC oMKgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KPiDCoMKgwqDCoCAz NTkgfMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGRlbnRyeS0+ZF9uYW1lLm5hbWUs IE9SQU5HRUZTX05BTUVfTUFYKTsKPiDCoMKgwqDCoMKgwqDCoMKgIHzCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4K PiDCoMKgIGZzL29yYW5nZWZzL25hbWVpLmM6IEluIGZ1bmN0aW9uICdvcmFuZ2Vmc19jcmVhdGUn Ogo+IMKgwqAgZnMvb3JhbmdlZnMvbmFtZWkuYzo0MDo5OiB3YXJuaW5nOiAnc3RybmNweScgc3Bl Y2lmaWVkIGJvdW5kIDI1NiBlcXVhbHMgZGVzdGluYXRpb24gc2l6ZSBbLVdzdHJpbmdvcC10cnVu Y2F0aW9uXQo+IMKgwqDCoMKgwqAgNDAgfMKgwqDCoMKgwqDCoMKgwqAgc3RybmNweShuZXdfb3At PnVwY2FsbC5yZXEuY3JlYXRlLmRfbmFtZSwKPiDCoMKgwqDCoMKgwqDCoMKgIHzCoMKgwqDCoMKg wqDCoMKgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Cj4gwqDCoMKg wqDCoCA0MSB8wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgZGVudHJ5LT5kX25hbWUu bmFtZSwgT1JBTkdFRlNfTkFNRV9NQVgpOwo+IMKgwqDCoMKgwqDCoMKgwqAgfMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fgo+IMKgwqAgZnMvb3JhbmdlZnMvbmFtZWkuYzogSW4gZnVuY3Rpb24gJ29yYW5nZWZzX3N5 bWxpbmsnOgo+IMKgwqAgZnMvb3JhbmdlZnMvbmFtZWkuYzoyOTE6OTogd2FybmluZzogJ3N0cm5j cHknIHNwZWNpZmllZCBib3VuZCAyNTYgZXF1YWxzIGRlc3RpbmF0aW9uIHNpemUgWy1Xc3RyaW5n b3AtdHJ1bmNhdGlvbl0KPiDCoMKgwqDCoCAyOTEgfMKgwqDCoMKgwqDCoMKgwqAgc3RybmNweShu ZXdfb3AtPnVwY2FsbC5yZXEuc3ltLmVudHJ5X25hbWUsCj4gwqDCoMKgwqDCoMKgwqDCoCB8wqDC oMKgwqDCoMKgwqDCoCBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4K PiDCoMKgwqDCoCAyOTIgfMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGRlbnRyeS0+ ZF9uYW1lLm5hbWUsCj4gwqDCoMKgwqDCoMKgwqDCoCB8wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgfn5+fn5+fn5+fn5+fn5+fn5+fn4KPiDCoMKgwqDCoCAyOTMgfMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIE9SQU5HRUZTX05BTUVfTUFYKTsKPiDCoMKgwqDCoMKgwqDC oMKgIHzCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB+fn5+fn5+fn5+fn5+fn5+fn4K PiDCoMKgIGZzL29yYW5nZWZzL25hbWVpLmM6Mjk0Ojk6IHdhcm5pbmc6ICdzdHJuY3B5JyBzcGVj aWZpZWQgYm91bmQgMjU2IGVxdWFscyBkZXN0aW5hdGlvbiBzaXplIFstV3N0cmluZ29wLXRydW5j YXRpb25dCj4gwqDCoMKgwqAgMjk0IHzCoMKgwqDCoMKgwqDCoMKgIHN0cm5jcHkobmV3X29wLT51 cGNhbGwucmVxLnN5bS50YXJnZXQsIHN5bW5hbWUsIE9SQU5HRUZTX05BTUVfTUFYKTsKPiDCoMKg wqDCoMKgwqDCoMKgIHzCoMKgwqDCoMKgwqDCoMKgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgo+IC0tCj4gwqDCoCBmcy9v cmFuZ2Vmcy9vcmFuZ2Vmcy1idWZtYXAuYzoyMjU6NTogd2FybmluZzogbm8gcHJldmlvdXMgcHJv dG90eXBlIGZvciAnb3JhbmdlZnNfZ2V0X2J1Zm1hcF9pbml0JyBbLVdtaXNzaW5nLXByb3RvdHlw ZXNdCj4gwqDCoMKgwqAgMjI1IHwgaW50IG9yYW5nZWZzX2dldF9idWZtYXBfaW5pdCh2b2lkKQo+ IMKgwqDCoMKgwqDCoMKgwqAgfMKgwqDCoMKgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgo+IMKg wqAgSW4gZmlsZSBpbmNsdWRlZCBmcm9tIGZzL29yYW5nZWZzL3Byb3RvY29sLmg6MzM2LAo+IMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGZyb20gZnMvb3JhbmdlZnMvb3Jh bmdlZnMtYnVmbWFwLmM6NjoKPiA+ID4gZnMvb3JhbmdlZnMvb3JhbmdlZnMtZGVidWcuaDo4OTox ODogd2FybmluZzogJ251bV9rbW9kX2tleXdvcmRfbWFza19tYXAnIGRlZmluZWQgYnV0IG5vdCB1 c2VkIFstV3VudXNlZC1jb25zdC12YXJpYWJsZT1dCj4gwqDCoMKgwqDCoCA4OSB8IHN0YXRpYyBj b25zdCBpbnQgbnVtX2ttb2Rfa2V5d29yZF9tYXNrX21hcCA9IChpbnQpCj4gwqDCoMKgwqDCoMKg wqDCoCB8wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBefn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+Cj4gCj4gCj4gdmltICsvc25wcmludGYgKzU5OCBkcml2ZXJzL2hpZC9oaWQtc2Vu c29yLWN1c3RvbS5jCj4gCj4gNGE3ZGUwNTE5ZGY1ZTggU3Jpbml2YXMgUGFuZHJ1dmFkYSAyMDE1 LTA0LTEwwqAgNTY4wqAgCj4gNGE3ZGUwNTE5ZGY1ZTggU3Jpbml2YXMgUGFuZHJ1dmFkYSAyMDE1 LTA0LTEwwqAgNTY5wqAgc3RhdGljIGludCBoaWRfc2Vuc29yX2N1c3RvbV9hZGRfYXR0cmlidXRl cyhzdHJ1Y3QgaGlkX3NlbnNvcl9jdXN0b20KPiA0YTdkZTA1MTlkZjVlOCBTcmluaXZhcyBQYW5k cnV2YWRhIDIwMTUtMDQtMTDCoCA1NzDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgKnNlbnNvcl9pbnN0KQo+IDRhN2RlMDUx OWRmNWU4IFNyaW5pdmFzIFBhbmRydXZhZGEgMjAxNS0wNC0xMMKgIDU3McKgIHsKPiA0YTdkZTA1 MTlkZjVlOCBTcmluaXZhcyBQYW5kcnV2YWRhIDIwMTUtMDQtMTDCoCA1NzLCoMKgwqDCoMKgwqBz dHJ1Y3QgaGlkX3NlbnNvcl9odWJfZGV2aWNlICpoc2RldiA9IHNlbnNvcl9pbnN0LT5oc2RldjsK PiA0YTdkZTA1MTlkZjVlOCBTcmluaXZhcyBQYW5kcnV2YWRhIDIwMTUtMDQtMTDCoCA1NzPCoMKg wqDCoMKgwqBzdHJ1Y3QgaGlkX2RldmljZSAqaGRldiA9IGhzZGV2LT5oZGV2Owo+IDRhN2RlMDUx OWRmNWU4IFNyaW5pdmFzIFBhbmRydXZhZGEgMjAxNS0wNC0xMMKgIDU3NMKgwqDCoMKgwqDCoGlu dCByZXQgPSAtMTsKPiA0YTdkZTA1MTlkZjVlOCBTcmluaXZhcyBQYW5kcnV2YWRhIDIwMTUtMDQt MTDCoCA1NzXCoMKgwqDCoMKgwqBpbnQgaSwgajsKPiA0YTdkZTA1MTlkZjVlOCBTcmluaXZhcyBQ YW5kcnV2YWRhIDIwMTUtMDQtMTDCoCA1NzbCoCAKPiA0YTdkZTA1MTlkZjVlOCBTcmluaXZhcyBQ YW5kcnV2YWRhIDIwMTUtMDQtMTDCoCA1NzfCoMKgwqDCoMKgwqBmb3IgKGogPSAwOyBqIDwgSElE X1JFUE9SVF9UWVBFUzsgKytqKSB7Cj4gNGE3ZGUwNTE5ZGY1ZTggU3Jpbml2YXMgUGFuZHJ1dmFk YSAyMDE1LTA0LTEwwqAgNTc4wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoGlmIChqID09IEhJ RF9PVVRQVVRfUkVQT1JUKQo+IDRhN2RlMDUxOWRmNWU4IFNyaW5pdmFzIFBhbmRydXZhZGEgMjAx NS0wNC0xMMKgIDU3OcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg Y29udGludWU7Cj4gNGE3ZGUwNTE5ZGY1ZTggU3Jpbml2YXMgUGFuZHJ1dmFkYSAyMDE1LTA0LTEw wqAgNTgwwqAgCj4gNGE3ZGUwNTE5ZGY1ZTggU3Jpbml2YXMgUGFuZHJ1dmFkYSAyMDE1LTA0LTEw wqAgNTgxwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoHJldCA9IGhpZF9zZW5zb3JfY3VzdG9t X2FkZF9maWVsZHMoc2Vuc29yX2luc3QsCj4gNGE3ZGUwNTE5ZGY1ZTggU3Jpbml2YXMgUGFuZHJ1 dmFkYSAyMDE1LTA0LTEwwqAgNTgywqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgICZoZGV2LT5yZXBvcnRfZW51bVtqXSwgaik7Cj4gNGE3ZGUwNTE5ZGY1ZTggU3Jpbml2YXMg UGFuZHJ1dmFkYSAyMDE1LTA0LTEwwqAgNTgzwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoGlm IChyZXQpCj4gNGE3ZGUwNTE5ZGY1ZTggU3Jpbml2YXMgUGFuZHJ1dmFkYSAyMDE1LTA0LTEwwqAg NTg0wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqByZXR1cm4gcmV0 Owo+IDRhN2RlMDUxOWRmNWU4IFNyaW5pdmFzIFBhbmRydXZhZGEgMjAxNS0wNC0xMMKgIDU4NcKg IAo+IDRhN2RlMDUxOWRmNWU4IFNyaW5pdmFzIFBhbmRydXZhZGEgMjAxNS0wNC0xMMKgIDU4NsKg wqDCoMKgwqDCoH0KPiA0YTdkZTA1MTlkZjVlOCBTcmluaXZhcyBQYW5kcnV2YWRhIDIwMTUtMDQt MTDCoCA1ODfCoCAKPiA0YTdkZTA1MTlkZjVlOCBTcmluaXZhcyBQYW5kcnV2YWRhIDIwMTUtMDQt MTDCoCA1ODjCoMKgwqDCoMKgwqAvKiBDcmVhdGUgc3lzZnMgYXR0cmlidXRlcyAqLwo+IDRhN2Rl MDUxOWRmNWU4IFNyaW5pdmFzIFBhbmRydXZhZGEgMjAxNS0wNC0xMMKgIDU4OcKgwqDCoMKgwqDC oGZvciAoaSA9IDA7IGkgPCBzZW5zb3JfaW5zdC0+c2Vuc29yX2ZpZWxkX2NvdW50OyArK2kpIHsK PiA0YTdkZTA1MTlkZjVlOCBTcmluaXZhcyBQYW5kcnV2YWRhIDIwMTUtMDQtMTDCoCA1OTDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgaiA9IDA7Cj4gNGE3ZGUwNTE5ZGY1ZTggU3Jpbml2YXMg UGFuZHJ1dmFkYSAyMDE1LTA0LTEwwqAgNTkxwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoHdo aWxlIChqIDwgSElEX0NVU1RPTV9UT1RBTF9BVFRSUyAmJgo+IDRhN2RlMDUxOWRmNWU4IFNyaW5p dmFzIFBhbmRydXZhZGEgMjAxNS0wNC0xMMKgIDU5MsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgaGlkX2N1c3RvbV9hdHRyc1tqXS5uYW1lKSB7Cj4gNGE3ZGUwNTE5ZGY1 ZTggU3Jpbml2YXMgUGFuZHJ1dmFkYSAyMDE1LTA0LTEwwqAgNTkzwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBzdHJ1Y3QgZGV2aWNlX2F0dHJpYnV0ZSAqZGV2aWNl X2F0dHI7Cj4gNGE3ZGUwNTE5ZGY1ZTggU3Jpbml2YXMgUGFuZHJ1dmFkYSAyMDE1LTA0LTEwwqAg NTk0wqAgCj4gNGE3ZGUwNTE5ZGY1ZTggU3Jpbml2YXMgUGFuZHJ1dmFkYSAyMDE1LTA0LTEwwqAg NTk1wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBkZXZpY2VfYXR0 ciA9ICZzZW5zb3JfaW5zdC0+ZmllbGRzW2ldLnNkX2F0dHJzW2pdOwo+IDRhN2RlMDUxOWRmNWU4 IFNyaW5pdmFzIFBhbmRydXZhZGEgMjAxNS0wNC0xMMKgIDU5NsKgIAo+IDRhN2RlMDUxOWRmNWU4 IFNyaW5pdmFzIFBhbmRydXZhZGEgMjAxNS0wNC0xMMKgIDU5N8KgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgc25wcmludGYoKGNoYXIgKikmc2Vuc29yX2luc3QtPmZp ZWxkc1tpXS5hdHRyX25hbWVbal0sCj4gNGE3ZGUwNTE5ZGY1ZTggU3Jpbml2YXMgUGFuZHJ1dmFk YSAyMDE1LTA0LTEwIEA1OTjCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgSElEX0NVU1RPTV9OQU1FX0xFTkdUSCwgIiVzLSVzIiwKPiA0 YTdkZTA1MTlkZjVlOCBTcmluaXZhcyBQYW5kcnV2YWRhIDIwMTUtMDQtMTDCoCA1OTnCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgc2Vu c29yX2luc3QtPmZpZWxkc1tpXS5ncm91cF9uYW1lLAo+IDRhN2RlMDUxOWRmNWU4IFNyaW5pdmFz IFBhbmRydXZhZGEgMjAxNS0wNC0xMMKgIDYwMMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBoaWRfY3VzdG9tX2F0dHJzW2pdLm5hbWUp Owo+IDRhN2RlMDUxOWRmNWU4IFNyaW5pdmFzIFBhbmRydXZhZGEgMjAxNS0wNC0xMMKgIDYwMcKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgc3lzZnNfYXR0cl9pbml0 KCZkZXZpY2VfYXR0ci0+YXR0cik7Cj4gNGE3ZGUwNTE5ZGY1ZTggU3Jpbml2YXMgUGFuZHJ1dmFk YSAyMDE1LTA0LTEwwqAgNjAywqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqBkZXZpY2VfYXR0ci0+YXR0ci5uYW1lID0KPiA0YTdkZTA1MTlkZjVlOCBTcmluaXZhcyBQ YW5kcnV2YWRhIDIwMTUtMDQtMTDCoCA2MDPCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAoY2hhciAqKSZzZW5zb3JfaW5zdC0+ZmllbGRz W2ldLmF0dHJfbmFtZVtqXTsKPiA0YTdkZTA1MTlkZjVlOCBTcmluaXZhcyBQYW5kcnV2YWRhIDIw MTUtMDQtMTDCoCA2MDTCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oGRldmljZV9hdHRyLT5hdHRyLm1vZGUgPSBoaWRfY3VzdG9tX2F0dHJzW2pdLm1vZGU7Cj4gNGE3 ZGUwNTE5ZGY1ZTggU3Jpbml2YXMgUGFuZHJ1dmFkYSAyMDE1LTA0LTEwwqAgNjA1wqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBkZXZpY2VfYXR0ci0+c2hvdyA9IHNo b3dfdmFsdWU7Cj4gNGE3ZGUwNTE5ZGY1ZTggU3Jpbml2YXMgUGFuZHJ1dmFkYSAyMDE1LTA0LTEw wqAgNjA2wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBpZiAoaGlk X2N1c3RvbV9hdHRyc1tqXS5tb2RlICYgU19JV1VTUikKPiA0YTdkZTA1MTlkZjVlOCBTcmluaXZh cyBQYW5kcnV2YWRhIDIwMTUtMDQtMTDCoCA2MDfCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBkZXZpY2VfYXR0ci0+c3RvcmUgPSBzdG9y ZV92YWx1ZTsKPiA0YTdkZTA1MTlkZjVlOCBTcmluaXZhcyBQYW5kcnV2YWRhIDIwMTUtMDQtMTDC oCA2MDjCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoHNlbnNvcl9p bnN0LT5maWVsZHNbaV0uYXR0cnNbal0gPSAmZGV2aWNlX2F0dHItPmF0dHI7Cj4gNGE3ZGUwNTE5 ZGY1ZTggU3Jpbml2YXMgUGFuZHJ1dmFkYSAyMDE1LTA0LTEwwqAgNjA5wqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqArK2o7Cj4gNGE3ZGUwNTE5ZGY1ZTggU3Jpbml2 YXMgUGFuZHJ1dmFkYSAyMDE1LTA0LTEwwqAgNjEwwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oH0KPiA0YTdkZTA1MTlkZjVlOCBTcmluaXZhcyBQYW5kcnV2YWRhIDIwMTUtMDQtMTDCoCA2MTHC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgc2Vuc29yX2luc3QtPmZpZWxkc1tpXS5hdHRyc1tq XSA9IE5VTEw7Cj4gNGE3ZGUwNTE5ZGY1ZTggU3Jpbml2YXMgUGFuZHJ1dmFkYSAyMDE1LTA0LTEw wqAgNjEywqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoHNlbnNvcl9pbnN0LT5maWVsZHNbaV0u aGlkX2N1c3RvbV9hdHRyaWJ1dGVfZ3JvdXAuYXR0cnMgPQo+IDRhN2RlMDUxOWRmNWU4IFNyaW5p dmFzIFBhbmRydXZhZGEgMjAxNS0wNC0xMMKgIDYxM8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgc2Vuc29yX2luc3QtPmZpZWxkc1tpXS5hdHRyczsKPiA0YTdkZTA1MTlkZjVlOCBT cmluaXZhcyBQYW5kcnV2YWRhIDIwMTUtMDQtMTDCoCA2MTTCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgc2Vuc29yX2luc3QtPmZpZWxkc1tpXS5oaWRfY3VzdG9tX2F0dHJpYnV0ZV9ncm91cC5u YW1lID0KPiA0YTdkZTA1MTlkZjVlOCBTcmluaXZhcyBQYW5kcnV2YWRhIDIwMTUtMDQtMTDCoCA2 MTXCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgc2Vuc29yX2luc3QtPmZpZWxkc1tpXS5ncm91cF9uYW1lOwo+ IDRhN2RlMDUxOWRmNWU4IFNyaW5pdmFzIFBhbmRydXZhZGEgMjAxNS0wNC0xMMKgIDYxNsKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqByZXQgPSBzeXNmc19jcmVhdGVfZ3JvdXAoJnNlbnNvcl9p bnN0LT5wZGV2LT5kZXYua29iaiwKPiA0YTdkZTA1MTlkZjVlOCBTcmluaXZhcyBQYW5kcnV2YWRh IDIwMTUtMDQtMTDCoCA2MTfCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICZzZW5zb3JfaW5zdC0+ZmllbGRz W2ldLgo+IDRhN2RlMDUxOWRmNWU4IFNyaW5pdmFzIFBhbmRydXZhZGEgMjAxNS0wNC0xMMKgIDYx OMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgaGlkX2N1c3RvbV9hdHRyaWJ1dGVfZ3JvdXApOwo+IDRhN2Rl MDUxOWRmNWU4IFNyaW5pdmFzIFBhbmRydXZhZGEgMjAxNS0wNC0xMMKgIDYxOcKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqBpZiAocmV0KQo+IDRhN2RlMDUxOWRmNWU4IFNyaW5pdmFzIFBhbmRy dXZhZGEgMjAxNS0wNC0xMMKgIDYyMMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgYnJlYWs7Cj4gNGE3ZGUwNTE5ZGY1ZTggU3Jpbml2YXMgUGFuZHJ1dmFkYSAyMDE1 LTA0LTEwwqAgNjIxwqAgCj4gNGE3ZGUwNTE5ZGY1ZTggU3Jpbml2YXMgUGFuZHJ1dmFkYSAyMDE1 LTA0LTEwwqAgNjIywqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoC8qIEZvciBwb3dlciBvciBy ZXBvcnQgZmllbGQgc3RvcmUgaW5kZXhlcyAqLwo+IDRhN2RlMDUxOWRmNWU4IFNyaW5pdmFzIFBh bmRydXZhZGEgMjAxNS0wNC0xMMKgIDYyM8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBpZiAo c2Vuc29yX2luc3QtPmZpZWxkc1tpXS5hdHRyaWJ1dGUuYXR0cmliX2lkID09Cj4gNGE3ZGUwNTE5 ZGY1ZTggU3Jpbml2YXMgUGFuZHJ1dmFkYSAyMDE1LTA0LTEwwqAgNjI0wqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoEhJRF9VU0FHRV9TRU5TT1JfUFJPWV9QT1dFUl9TVEFURSkKPiA0YTdkZTA1MTlkZjVlOCBT cmluaXZhcyBQYW5kcnV2YWRhIDIwMTUtMDQtMTDCoCA2MjXCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoHNlbnNvcl9pbnN0LT5wb3dlcl9zdGF0ZSA9ICZzZW5zb3Jf aW5zdC0+ZmllbGRzW2ldOwo+IDRhN2RlMDUxOWRmNWU4IFNyaW5pdmFzIFBhbmRydXZhZGEgMjAx NS0wNC0xMMKgIDYyNsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBlbHNlIGlmIChzZW5zb3Jf aW5zdC0+ZmllbGRzW2ldLmF0dHJpYnV0ZS5hdHRyaWJfaWQgPT0KPiA0YTdkZTA1MTlkZjVlOCBT cmluaXZhcyBQYW5kcnV2YWRhIDIwMTUtMDQtMTDCoCA2MjfCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgSElE X1VTQUdFX1NFTlNPUl9QUk9QX1JFUE9SVF9TVEFURSkKPiA0YTdkZTA1MTlkZjVlOCBTcmluaXZh cyBQYW5kcnV2YWRhIDIwMTUtMDQtMTDCoCA2MjjCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoHNlbnNvcl9pbnN0LT5yZXBvcnRfc3RhdGUgPSAmc2Vuc29yX2luc3Qt PmZpZWxkc1tpXTsKPiA0YTdkZTA1MTlkZjVlOCBTcmluaXZhcyBQYW5kcnV2YWRhIDIwMTUtMDQt MTDCoCA2MjnCoMKgwqDCoMKgwqB9Cj4gNGE3ZGUwNTE5ZGY1ZTggU3Jpbml2YXMgUGFuZHJ1dmFk YSAyMDE1LTA0LTEwwqAgNjMwwqAgCj4gNGE3ZGUwNTE5ZGY1ZTggU3Jpbml2YXMgUGFuZHJ1dmFk YSAyMDE1LTA0LTEwwqAgNjMxwqDCoMKgwqDCoMKgcmV0dXJuIHJldDsKPiA0YTdkZTA1MTlkZjVl OCBTcmluaXZhcyBQYW5kcnV2YWRhIDIwMTUtMDQtMTDCoCA2MzLCoCB9Cj4gNGE3ZGUwNTE5ZGY1 ZTggU3Jpbml2YXMgUGFuZHJ1dmFkYSAyMDE1LTA0LTEwwqAgNjMzwqAgCj4gCj4gOjo6Ojo6IFRo ZSBjb2RlIGF0IGxpbmUgNTk4IHdhcyBmaXJzdCBpbnRyb2R1Y2VkIGJ5IGNvbW1pdAo+IDo6Ojo6 OiA0YTdkZTA1MTlkZjVlOGZiODljZWY2ZWUwNjIzMzBmZmU0YjUwYTRkIEhJRDogc2Vuc29yOiBD dXN0b20gYW5kIEdlbmVyaWMgc2Vuc29yIHN1cHBvcnQKPiAKPiA6Ojo6OjogVE86IFNyaW5pdmFz IFBhbmRydXZhZGEgPHNyaW5pdmFzLnBhbmRydXZhZGFAbGludXguaW50ZWwuY29tPgo+IDo6Ojo6 OiBDQzogSmlyaSBLb3NpbmEgPGprb3NpbmFAc3VzZS5jej4KPiAKCg==