From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by spool.mail.gandi.net (Postfix) with ESMTPS id 145DCD801B0 for ; Fri, 2 Feb 2024 04:30:21 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=M8Ps1EC/L1c02Sql/X8ASD9t7l/X55xwoh+yAShcu7g=; c=relaxed/simple; d=groups.io; h=ARC-Seal:ARC-Message-Signature:ARC-Authentication-Results:From:To:CC:Subject:Thread-Topic:Thread-Index:Date:Message-ID:References:In-Reply-To:Accept-Language:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Language:Content-Type; s=20140610; t=1706848220; v=1; b=jV09l/hw+HfTIz/x9QxscEKaQspo5W/bKg+0cOe/EWfjmyG6EEGbXCavySBweNx8XLNqRJBN xjZRzFxeFDOhqB3gY3YCjcH8ck1Yu7SL4yPe+Kg1hEvhLehJx82siuyGIXlxZ7DpSbJSMdrjifx 1/vrsrHR2ab6Q+othQtf7828= X-Received: by 127.0.0.2 with SMTP id YieCYY7687511xEESPDXU0bR; Thu, 01 Feb 2024 20:30:20 -0800 X-Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.12]) by mx.groups.io with SMTP id smtpd.web11.16048.1706848219130927298 for ; Thu, 01 Feb 2024 20:30:19 -0800 X-IronPort-AV: E=McAfee;i="6600,9927,10971"; a="11449167" X-IronPort-AV: E=Sophos;i="6.05,237,1701158400"; d="scan'208,217";a="11449167" X-Received: from fmviesa004.fm.intel.com ([10.60.135.144]) by orvoesa104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Feb 2024 20:30:17 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.05,237,1701158400"; d="scan'208,217";a="4599868" X-Received: from orsmsx602.amr.corp.intel.com ([10.22.229.15]) by fmviesa004.fm.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 01 Feb 2024 20:30:17 -0800 X-Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) by ORSMSX602.amr.corp.intel.com (10.22.229.15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35; Thu, 1 Feb 2024 20:30:16 -0800 X-Received: from orsmsx602.amr.corp.intel.com (10.22.229.15) 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.35; Thu, 1 Feb 2024 20:30:14 -0800 X-Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) by orsmsx602.amr.corp.intel.com (10.22.229.15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35 via Frontend Transport; Thu, 1 Feb 2024 20:30:14 -0800 X-Received: from NAM04-DM6-obe.outbound.protection.outlook.com (104.47.73.40) 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.35; Thu, 1 Feb 2024 20:30:14 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=X4SEm7vWY8/zVA+/rmOXXecwSqoHNono1PJHlsujP8EMs1FUyffTjRbKmR3Br4rI4DKREuemzBsSG3uTRadNDYH4wHgk+g1ZSTCOK5+goOY/gJwoP8KFHf9Wol6FCQuO8EMOJWRA/y/LMYUx09XF902dRYkQCJZLQNcrNfO+uo2hGWy5JYTYB6ISK4FqniXjHNireQn0+qx5LxKb3nUpS24UjIeKmcsg74BgFuKIbrUkhigAFwUDvtGfZT/nAapvEbvalBVSPtAUyBkUQVtMh9vNoeaO2yLw+knxWEwBpb4OpVQB00/Ok5s0nc43bv3lqZ6NaIzZE/jqdsxZ8CeBOg== 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=yN7KM/+xH6KgIZPOEE7wKW1Knt3dAlomC4NN2vEdvZE=; b=n5LisCvbMCZvJaZhlexrfvK8fJyfQsmsFG8G7RfWnDVk/6pEOEUFuR8DYoH736fs+mDJ8QpsxA7T+MnI9nE23Z+VvMYcTQeQn+Hf7z9JKsXfRdrs3nSadTUy72xbImWSsVUNHo5Dx+TVYNTz8wgJltjbTTC/yM6KIUX1Iy1T2su0eXTiEQGjAc8MI/Ev7BHEvbuZUMSkQcjD1+36wCAWuuauLv+NMVfLRJ5VVeA4PhNrwKOZ6a36pRv5JFLE4iTnDcVUyGpUEi/6qLZ17zdQwA2zoQSDtGCk5o4ZjHZ35pFlbUra9aYRgsvRXZ7EsvLzziVdMJ6GtHR+WT2W7Ha1+g== 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 X-Received: from MN6PR11MB8244.namprd11.prod.outlook.com (2603:10b6:208:470::14) by PH0PR11MB4821.namprd11.prod.outlook.com (2603:10b6:510:34::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7249.28; Fri, 2 Feb 2024 04:30:10 +0000 X-Received: from MN6PR11MB8244.namprd11.prod.outlook.com ([fe80::fdd3:11d7:1c15:6c2d]) by MN6PR11MB8244.namprd11.prod.outlook.com ([fe80::fdd3:11d7:1c15:6c2d%7]) with mapi id 15.20.7228.029; Fri, 2 Feb 2024 04:30:10 +0000 From: "Ni, Ray" To: Chao Li , "devel@edk2.groups.io" , "lersek@redhat.com" CC: "Dong, Eric" , "Kumar, Rahul R" , Gerd Hoffmann , Baoqi Zhang , Dongyan Qian , Xianglai Li , Bibo Mao Subject: Re: [edk2-devel] [PATCH v8 14/37] UefiCpuPkg: Add CpuMmuLib to UefiCpuPkg Thread-Topic: [edk2-devel] [PATCH v8 14/37] UefiCpuPkg: Add CpuMmuLib to UefiCpuPkg Thread-Index: AQHaUCEQC3t+YY16Yk+bU2o1nLy6V7DztLiAgAFzsYCAAUgV4IAABTiAgAAK4JA= Date: Fri, 2 Feb 2024 04:30:10 +0000 Message-ID: References: <20240126062715.3099433-1-lichao@loongson.cn> <20240126062919.3101691-1-lichao@loongson.cn> <856ebd67-d345-6e41-2e34-74b9bdd7ed7e@redhat.com> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: MN6PR11MB8244:EE_|PH0PR11MB4821:EE_ x-ms-office365-filtering-correlation-id: 393db8fe-10fe-4de5-b79c-08dc23a7a45d x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam-message-info: L7ZB4m0Aq+sQ/VnRkfi/GAul75BcpWQZY7rt1jRLGd4znzGR5V/37IjbHpmqfmXEAnLRrWvtLghBje0dxvRBfBCazSfPP8DP4qwXjibzhjLoU9rlXyXuZHsfqyaZ8vU+7JHtBYfEmFNspEZ07r6CnwyjFGGay4SHGa2rFQGNvx+76omqrAN0OHkiOMI5a1nC3HQ0s5T5bnJBPeqiDfor+d/g8C+j43FVkpVRlxRH6pGp1RQAHisd6YP+wrMH4IuARqv0Jt/UHPzvV9e5QMMhSIlw8xPIXazeptcncnVbmg9emyYaogugtQNtEx4tdnWU5x0pJJPEAgm84qiq7tWtsw8zG823u64pEkJHdx/h1JKodKKGT6b5SQhuFX6YWpl+ZpnsXKsarPjIcUxcJcJt7v2cipB0eOjiCLMYyoUE63yPXjLaTTHwvXTs1veErtDhQZwmuhG4BXpwdZ8rWY29eK041KRkw0RzdaWfgKIY7eaiLplum2xudeJCVP8FC8GZWlmA0c857nLwMrRjpLfhmbSw06d+iJlp0cdq/OJ28f1vBKkfaTfO0DdaJdLVwlnEeLEqAgQlgV1d4q84WfXl5BV4qVOTgR5a9fcbhhge/TY= x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?QTlCR3VTVndtQ1FiWHNaSFZtd3JmSEhDNTU4cFRvckNoTndWQ2NIQXZQemow?= =?utf-8?B?cXo2K3VSOGdTcTNIcE9KUFhiQ0R4aVpQd1RzbTRtL1h2OU9UQmhUT2FHV3ZI?= =?utf-8?B?NXFVVnFLMzhlSFhFZ09ITWZ1TDE2NitnVm5wVG1KY21PRmlpWXdIbFI3d0Y5?= =?utf-8?B?R3kvdW1IbWJwK2NQdVpyM0R6WHdnQWJxa0lQcmFPelF6V3lRS1NDMEgzYURZ?= =?utf-8?B?bVdjd2lDTFBmbU4vNWpEVERPbno3TVg5aHBENllPRTRJVG1JNC9qZDZXVmtU?= =?utf-8?B?bHVydUVCK05TQ2FpNnNVZEcvQzMwb3V4b1dnTlVYYTNNQmgzTzZpVlVBMEcy?= =?utf-8?B?VThYdk5kWDNqQTVBY1pyMHlwM2FFMXlJYUozRHJRanh5OG1VZ1pFeW5TN1FN?= =?utf-8?B?OE5VcDRmYzdQd0xtRFpwRWtYZVlQTk1SbHcwcDduTU9FSHp0b3d2M1FFSllR?= =?utf-8?B?S1hQU1FxTjA4bHhBRkF1Q3JOMm9XSFVmbE1DSU1qNVp4V1VoRlRNTkcrYzRM?= =?utf-8?B?K2dLSVRDazBNWEgzZTQ5SzAvMlAyK2FPcUVrNUZxaVBRNktTdGtQenMwcjFq?= =?utf-8?B?c3ZQWXNoL0Z2cTBvKzBWWFAxM2RwODBoQUxlbWlucEMxVHJ6SzhJV3NybXh0?= =?utf-8?B?VTEzK0gvSFRWMHFzTkRFb2NhTjZUOTliaHdlak9mWG5MY1Zjbk0rYnk4VVg5?= =?utf-8?B?SUQ4NnlLbVp2UndnRlV3L0hRMERlYkg0bjRibW5WUGpKR0hjVkZ3dEtLQzhM?= =?utf-8?B?YkZud2EvRlJiMksxZWNQS3ZGVjVnSVh0RTVyQWJtNHBPYzdGS2h5K0tqS05u?= =?utf-8?B?QThHNHdEZ05GbGQ4RTg0Z2VsQnpwVFNUbW13MEJ4ZjN0bFMrUGp2RlhsOTNL?= =?utf-8?B?RC9rUk5USVdKYzNQV0I5Ny80VmFaUkVKZkJEMWM2eFdoUjgwRDZyZ3Rua3E3?= =?utf-8?B?bm81Q2gxLzU5aHU2N3FIdThpdlIvSkxBdkNxTDJrVjBnNHpsMWdFczVUT2pa?= =?utf-8?B?RGpQY1RTTHBvbWtBQkxHTDAwZjlHdjdQdnlFSnhPYlU5VUVaZ2xxR1gvU0xX?= =?utf-8?B?TkVFUUtQVFBORDRJci9DSUkxQkN0VWdNMTAxZzZvMHI4TDk0OFZMOXZDU0Jk?= =?utf-8?B?VWsrOWlxNW5nRWcvdFNJSkU0ZVYyeFR1dmIycTEwZ0t5OXlienlhdndDQ014?= =?utf-8?B?QmJPdDhCbnhVc29wWndadDA5MUR2bDdZdTExZUtNc0VaMmpCVkQ3R01sTTY0?= =?utf-8?B?YmRIVnp3dVA5bkFFdVlwTkloL2pnRzkxSU9sdFhEZ3JCYmk0NXZoZzNnV1Uy?= =?utf-8?B?dU5GN1IxcXNRbTJoRi8wakt1bGFCRWh0TG9INnNRZC8ycW16Zmt1SFhJNnR2?= =?utf-8?B?SnVvb1Z4ZmI2d1RxYnRqMlN3dytJa3d5Ym9JSnZHbnVtc3ZLOHFIOXVZZkg5?= =?utf-8?B?MDZZTlZtSUUzZHlnWGVVdFRCVm1yckZ6eUFaMVM3QTRVU1p6TGZLUkIzVmJS?= =?utf-8?B?OU5jSWJiRTBRMEJwanJCSXlBZTJBTndpQ3MxMjJ1OHB6a2FEVVR3cERac3Ew?= =?utf-8?B?Y0llNmVCNGxWNUFVVVRObHBsOTNVV2hpalgwQkwrbFVHRWhoNHFHZkF2NE1q?= =?utf-8?B?MXBYMGFhUUxPSyt1VU9XaGRuYkhJaEVoUjlxR2ZtV1JNWmVpN0RXeHdGa1Nm?= =?utf-8?B?QncweS83ejJvd2ZpYWJROEo1QWlaM2M5ZkxOYlpkQXNxUW5lUnk4MkxRSUpY?= =?utf-8?B?bktuT1FEYlpLR3JJejdGZ29XZkFzZmFSNitSbnQvaWFSakgwWjlqN3B5SXBF?= =?utf-8?B?K3NoMjVXdUZqcDJVRVFqOW55UWV4bVI5NnpGbWNnVmFYTzF1NXFxQ25sVnpi?= =?utf-8?B?VDNDTndQeG9Gci9yeGk3MnRhSmhJNXdSbkh0SUkxejJ6dEpqaklib0s2Y2JN?= =?utf-8?B?ZmZUWnArcDY5amxVMUxLWTM5TndUQktkb2NielUxaDNoR0xFNUlCVHo5R1hX?= =?utf-8?B?ZWpWRjJzQXIzZVRnQnUrUm9NVGRCZG5tbW1IQXdPamdZdGd5NFdjb3JVblZk?= =?utf-8?B?SjdNL0UwSkpWVE1YTDh3MytXb2JpczFKV29UUkZSZkdsZDZRSTkvTGljWHgv?= =?utf-8?Q?cQ04=3D?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MN6PR11MB8244.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 393db8fe-10fe-4de5-b79c-08dc23a7a45d X-MS-Exchange-CrossTenant-originalarrivaltime: 02 Feb 2024 04:30:10.3252 (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: gpVYC/zaBILi0zqPeN3qs8l0U/ZISDXpttfa5a4Z5mf3UetNeUMmUjUZRk/vWo6c4ge+jMLL6oCJRQsktw2+AA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR11MB4821 X-OriginatorOrg: intel.com Precedence: Bulk List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,ray.ni@intel.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: McCySA8l3BZJC35tz13usgpgx7686176AA= Content-Language: en-US Content-Type: multipart/alternative; boundary="_000_MN6PR11MB8244CEDAD39314EC53EEE99D8C422MN6PR11MB8244namp_" X-GND-Status: LEGIT Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20140610 header.b="jV09l/hw"; spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce@groups.io; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=intel.com (policy=none); arc=reject ("signature check failed: fail, {[1] = sig:microsoft.com:reject}") --_000_MN6PR11MB8244CEDAD39314EC53EEE99D8C422MN6PR11MB8244namp_ Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 U3VyZS4NCkEgbG9jYWwgZnVuY3Rpb24gZXh0ZXJuZWQgYnkgYW5vdGhlciBQRUlNIGFuZCBjYWxs ZWQgZnJvbSB0aGF0IFBFSU0gaXMgbm90IGEgZ29vZCBwcmFjdGljZS4NCg0KVGhhbmtzLA0KUmF5 DQpGcm9tOiBDaGFvIExpIDxsaWNoYW9AbG9vbmdzb24uY24+DQpTZW50OiBGcmlkYXksIEZlYnJ1 YXJ5IDIsIDIwMjQgMTE6NTEgQU0NClRvOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbzsgTmksIFJheSA8 cmF5Lm5pQGludGVsLmNvbT47IGxlcnNla0ByZWRoYXQuY29tDQpDYzogRG9uZywgRXJpYyA8ZXJp Yy5kb25nQGludGVsLmNvbT47IEt1bWFyLCBSYWh1bCBSIDxyYWh1bC5yLmt1bWFyQGludGVsLmNv bT47IEdlcmQgSG9mZm1hbm4gPGtyYXhlbEByZWRoYXQuY29tPjsgQmFvcWkgWmhhbmcgPHpoYW5n YmFvcWlAbG9vbmdzb24uY24+OyBEb25neWFuIFFpYW4gPHFpYW5kb25neWFuQGxvb25nc29uLmNu PjsgWGlhbmdsYWkgTGkgPGxpeGlhbmdsYWlAbG9vbmdzb24uY24+OyBCaWJvIE1hbyA8bWFvYmli b0Bsb29uZ3Nvbi5jbj4NClN1YmplY3Q6IFJlOiBbZWRrMi1kZXZlbF0gW1BBVENIIHY4IDE0LzM3 XSBVZWZpQ3B1UGtnOiBBZGQgQ3B1TW11TGliIHRvIFVlZmlDcHVQa2cNCg0KDQpIaSBSYXksDQoN ClRoYW5rcywNCkNoYW8NCk9uIDIwMjQvMi8yIDExOjMzLCBOaSwgUmF5IHdyb3RlOg0KQ2hhbywN CkNvbmZpZ3VyZU1lbW9yeU1hbmFnZW1lbnRVbml0KCkgaXMgbm90IGEgbGlicmFyeSBBUEkgYW55 bW9yZS4NCldobyB3aWxsIGNhbGwgaXQ/IEkgZG9u4oCZdCBzZWUgYW55IHJlZmVyZW5jZSB0byB0 aGlzIGZ1bmN0aW9uIGluc2lkZSB0aGUgbGliIHNvdXJjZS4NCg0KSXQgYmVjb21lIGEgcHJpdmF0 ZSBBUEksIGNhbGxlZCBhdCB0aGUgTG9vbmdBcmNoIHZpcnR1YWwvcGh5c2ljYWwgbWFjaGluZSBQ RUlNLCBhbmQgd2hlbiBjYWxsZWQgaXQsIHRoZSBDIGZpbGUgc2hvdWxkIGV4dGVybiB0aGlzIHN5 bWJvbC4NCg0KUGxlYXNlIHJlZmVyIGluY29taW5nIGFuZCBvdXRnb2luZyBtYWlscywgdGhpcyBs aWJyYXJ5IHByb2JhYmx5IG5lZWQgdG8gYmUgcmVmYWN0b3JlZCwgc290aGUgQVBJcyBtYXkgY2hh bmdlLCBzbyBQTFMgZm9jdXMgb24gdGhpcyBtb2R1bGUgaW4gZnV0dXJlIGFuZCBoZWxwIG1lIG1v cmUsIHBsZWFzZS4uLg0KDQpUaGFua3MsDQpSYXkNCkZyb206IENoYW8gTGkgPGxpY2hhb0Bsb29u Z3Nvbi5jbj48bWFpbHRvOmxpY2hhb0Bsb29uZ3Nvbi5jbj4NClNlbnQ6IFRodXJzZGF5LCBGZWJy dWFyeSAxLCAyMDI0IDM6NTggUE0NClRvOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbzxtYWlsdG86ZGV2 ZWxAZWRrMi5ncm91cHMuaW8+OyBsZXJzZWtAcmVkaGF0LmNvbTxtYWlsdG86bGVyc2VrQHJlZGhh dC5jb20+DQpDYzogRG9uZywgRXJpYyA8ZXJpYy5kb25nQGludGVsLmNvbT48bWFpbHRvOmVyaWMu ZG9uZ0BpbnRlbC5jb20+OyBOaSwgUmF5IDxyYXkubmlAaW50ZWwuY29tPjxtYWlsdG86cmF5Lm5p QGludGVsLmNvbT47IEt1bWFyLCBSYWh1bCBSIDxyYWh1bC5yLmt1bWFyQGludGVsLmNvbT48bWFp bHRvOnJhaHVsLnIua3VtYXJAaW50ZWwuY29tPjsgR2VyZCBIb2ZmbWFubiA8a3JheGVsQHJlZGhh dC5jb20+PG1haWx0bzprcmF4ZWxAcmVkaGF0LmNvbT47IEJhb3FpIFpoYW5nIDx6aGFuZ2Jhb3Fp QGxvb25nc29uLmNuPjxtYWlsdG86emhhbmdiYW9xaUBsb29uZ3Nvbi5jbj47IERvbmd5YW4gUWlh biA8cWlhbmRvbmd5YW5AbG9vbmdzb24uY24+PG1haWx0bzpxaWFuZG9uZ3lhbkBsb29uZ3Nvbi5j bj47IFhpYW5nbGFpIExpIDxsaXhpYW5nbGFpQGxvb25nc29uLmNuPjxtYWlsdG86bGl4aWFuZ2xh aUBsb29uZ3Nvbi5jbj47IEJpYm8gTWFvIDxtYW9iaWJvQGxvb25nc29uLmNuPjxtYWlsdG86bWFv Ymlib0Bsb29uZ3Nvbi5jbj4NClN1YmplY3Q6IFJlOiBbZWRrMi1kZXZlbF0gW1BBVENIIHY4IDE0 LzM3XSBVZWZpQ3B1UGtnOiBBZGQgQ3B1TW11TGliIHRvIFVlZmlDcHVQa2cNCg0KDQpIaSBMYXpz bG8sDQoNClRoYW5rcywNCkNoYW8NCk9uIDIwMjQvMS8zMSAxNzo0NywgTGFzemxvIEVyc2VrIHdy b3RlOg0KDQpPbiAxLzI2LzI0IDA3OjI5LCBDaGFvIExpIHdyb3RlOg0KDQpBZGQgYSBuZXcgbGli cmFyeSBuYW1lZCBDcHVNbXVMaWIgYW5kIGFkZCBhIExvb25nQXJjaDY0IGluc3RhbmNlIHdpdGgg aW4NCg0KdGhlIGxpYnJhcnkuDQoNCkl0IHByb3ZpZGVzIHR3by1zdGFnZSBNTVUgbGlicmFyeWlu c3RhbmNlcywgUEVJIGFuZCBEWEUuDQoNCg0KDQpCWjogaHR0cHM6Ly9idWd6aWxsYS50aWFub2Nv cmUub3JnL3Nob3dfYnVnLmNnaT9pZD00NTg0DQoNCg0KDQpDYzogRXJpYyBEb25nIDxlcmljLmRv bmdAaW50ZWwuY29tPjxtYWlsdG86ZXJpYy5kb25nQGludGVsLmNvbT4NCg0KQ2M6IFJheSBOaSA8 cmF5Lm5pQGludGVsLmNvbT48bWFpbHRvOnJheS5uaUBpbnRlbC5jb20+DQoNCkNjOiBMYXN6bG8g RXJzZWsgPGxlcnNla0ByZWRoYXQuY29tPjxtYWlsdG86bGVyc2VrQHJlZGhhdC5jb20+DQoNCkNj OiBSYWh1bCBLdW1hciA8cmFodWwxLmt1bWFyQGludGVsLmNvbT48bWFpbHRvOnJhaHVsMS5rdW1h ckBpbnRlbC5jb20+DQoNCkNjOiBHZXJkIEhvZmZtYW5uIDxrcmF4ZWxAcmVkaGF0LmNvbT48bWFp bHRvOmtyYXhlbEByZWRoYXQuY29tPg0KDQpTaWduZWQtb2ZmLWJ5OiBDaGFvIExpIDxsaWNoYW9A bG9vbmdzb24uY24+PG1haWx0bzpsaWNoYW9AbG9vbmdzb24uY24+DQoNCkNvLWF1dGhvcmVkLWJ5 OiBCYW9xaSBaaGFuZyA8emhhbmdiYW9xaUBsb29uZ3Nvbi5jbj48bWFpbHRvOnpoYW5nYmFvcWlA bG9vbmdzb24uY24+DQoNCkNvLWF1dGhvcmVkLWJ5OiBEb25neWFuIFFpYW4gPHFpYW5kb25neWFu QGxvb25nc29uLmNuPjxtYWlsdG86cWlhbmRvbmd5YW5AbG9vbmdzb24uY24+DQoNCkNvLWF1dGhv cmVkLWJ5OiBYaWFuZ2xhaSBMaSA8bGl4aWFuZ2xhaUBsb29uZ3Nvbi5jbj48bWFpbHRvOmxpeGlh bmdsYWlAbG9vbmdzb24uY24+DQoNCkNvLWF1dGhvcmVkLWJ5OiBCaWJvIE1hbyA8bWFvYmlib0Bs b29uZ3Nvbi5jbj48bWFpbHRvOm1hb2JpYm9AbG9vbmdzb24uY24+DQoNCi0tLQ0KDQogVWVmaUNw dVBrZy9MaWJyYXJ5L0NwdU1tdUxpYi9EeGVDcHVNbXVMaWIuaW5mIHwgIDM2ICsNCg0KIFVlZmlD cHVQa2cvTGlicmFyeS9DcHVNbXVMaWIvRHhlQ3B1TW11TGliLnVuaSB8ICAxNCArDQoNCiAuLi4v Q3B1TW11TGliL0xvb25nQXJjaDY0L0NvbW1vbk1tdUxpYi5jICAgICAgfCA5ODggKysrKysrKysr KysrKysrKysrDQoNCiAuLi4vQ3B1TW11TGliL0xvb25nQXJjaDY0L0NvbW1vbk1tdUxpYi5oICAg ICAgfCAgNDMgKw0KDQogLi4uL0xpYnJhcnkvQ3B1TW11TGliL0xvb25nQXJjaDY0L1BhZ2UuaCAg ICAgIHwgMjc5ICsrKysrDQoNCiAuLi4vQ3B1TW11TGliL0xvb25nQXJjaDY0L1BlaUNwdU1tdUxp Yi5jICAgICAgfCAxNzggKysrKw0KDQogLi4uL0xpYnJhcnkvQ3B1TW11TGliL0xvb25nQXJjaDY0 L1RsYi5oICAgICAgIHwgIDQ4ICsNCg0KIC4uLi9DcHVNbXVMaWIvTG9vbmdBcmNoNjQvVGxiT3Bl cmF0aW9uLlMgICAgICB8ICA0NCArDQoNCiBVZWZpQ3B1UGtnL0xpYnJhcnkvQ3B1TW11TGliL1Bl aUNwdU1tdUxpYi5pbmYgfCAgNDQgKw0KDQogVWVmaUNwdVBrZy9MaWJyYXJ5L0NwdU1tdUxpYi9Q ZWlDcHVNbXVMaWIudW5pIHwgIDE0ICsNCg0KIFVlZmlDcHVQa2cvVWVmaUNwdVBrZy5kc2MgICAg ICAgICAgICAgICAgICAgICB8ICAgNCArDQoNCiAxMSBmaWxlcyBjaGFuZ2VkLCAxNjkyIGluc2Vy dGlvbnMoKykNCg0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBVZWZpQ3B1UGtnL0xpYnJhcnkvQ3B1TW11 TGliL0R4ZUNwdU1tdUxpYi5pbmYNCg0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBVZWZpQ3B1UGtnL0xp YnJhcnkvQ3B1TW11TGliL0R4ZUNwdU1tdUxpYi51bmkNCg0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBV ZWZpQ3B1UGtnL0xpYnJhcnkvQ3B1TW11TGliL0xvb25nQXJjaDY0L0NvbW1vbk1tdUxpYi5jDQoN CiBjcmVhdGUgbW9kZSAxMDA2NDQgVWVmaUNwdVBrZy9MaWJyYXJ5L0NwdU1tdUxpYi9Mb29uZ0Fy Y2g2NC9Db21tb25NbXVMaWIuaA0KDQogY3JlYXRlIG1vZGUgMTAwNjQ0IFVlZmlDcHVQa2cvTGli cmFyeS9DcHVNbXVMaWIvTG9vbmdBcmNoNjQvUGFnZS5oDQoNCiBjcmVhdGUgbW9kZSAxMDA2NDQg VWVmaUNwdVBrZy9MaWJyYXJ5L0NwdU1tdUxpYi9Mb29uZ0FyY2g2NC9QZWlDcHVNbXVMaWIuYw0K DQogY3JlYXRlIG1vZGUgMTAwNjQ0IFVlZmlDcHVQa2cvTGlicmFyeS9DcHVNbXVMaWIvTG9vbmdB cmNoNjQvVGxiLmgNCg0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBVZWZpQ3B1UGtnL0xpYnJhcnkvQ3B1 TW11TGliL0xvb25nQXJjaDY0L1RsYk9wZXJhdGlvbi5TDQoNCiBjcmVhdGUgbW9kZSAxMDA2NDQg VWVmaUNwdVBrZy9MaWJyYXJ5L0NwdU1tdUxpYi9QZWlDcHVNbXVMaWIuaW5mDQoNCiBjcmVhdGUg bW9kZSAxMDA2NDQgVWVmaUNwdVBrZy9MaWJyYXJ5L0NwdU1tdUxpYi9QZWlDcHVNbXVMaWIudW5p DQoNCg0KDQpkaWZmIC0tZ2l0IGEvVWVmaUNwdVBrZy9MaWJyYXJ5L0NwdU1tdUxpYi9EeGVDcHVN bXVMaWIuaW5mIGIvVWVmaUNwdVBrZy9MaWJyYXJ5L0NwdU1tdUxpYi9EeGVDcHVNbXVMaWIuaW5m DQoNCm5ldyBmaWxlIG1vZGUgMTAwNjQ0DQoNCmluZGV4IDAwMDAwMDAwMDAuLmJmY2UzY2U5NmQN Cg0KLS0tIC9kZXYvbnVsbA0KDQorKysgYi9VZWZpQ3B1UGtnL0xpYnJhcnkvQ3B1TW11TGliL0R4 ZUNwdU1tdUxpYi5pbmYNCg0KQEAgLTAsMCArMSwzNiBAQA0KDQorIyMgQGZpbGUNCg0KKyMgIENQ VSBNZW1vcnkgTWFwIFVuaXQgRFhFIHBoYXNlIGRyaXZlci4NCg0KKyMNCg0KKyMgIENvcHlyaWdo dCAoYykgMjAyNCBMb29uZ3NvbiBUZWNobm9sb2d5IENvcnBvcmF0aW9uIExpbWl0ZWQuIEFsbCBy aWdodHMgcmVzZXJ2ZWQuPEJSPg0KDQorIw0KDQorIyAgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6 IEJTRC0yLUNsYXVzZS1QYXRlbnQNCg0KKyMNCg0KKyMjDQoNCisNCg0KK1tEZWZpbmVzXQ0KDQor ICBJTkZfVkVSU0lPTiAgICAgICAgICAgICAgICAgICAgPSAxLjI5DQoNCisgIEJBU0VfTkFNRSAg ICAgICAgICAgICAgICAgICAgICA9IER4ZUNwdU1tdUxpYg0KDQorICBNT0RVTEVfVU5JX0ZJTEUg ICAgICAgICAgICAgICAgPSBEeGVDcHVNbXVMaWIudW5pDQoNCisgIEZJTEVfR1VJRCAgICAgICAg ICAgICAgICAgICAgICA9IERBOEYwMjMyLUZCMTQtNDJGMC05MjJDLTYzMTA0RDJDNzBCRQ0KDQoN Cg0KKDEpIFRoaXMgRklMRV9HVUlEIHdhcyBjcmVhdGVkIGZyb20gdGhlIEZJTEVfR1VJRCBvZg0K DQoiQXJtUGtnL0xpYnJhcnkvQXJtTW11TGliL0FybU1tdUJhc2VMaWIuaW5mIiBieSBhZGRpbmcg MS4gVGhhdCdzIG5vdCBhbg0KDQphY2NlcHRhYmxlIG1ldGhvZCBmb3IgR1VJRCBnZW5lcmF0aW9u Lg0KDQoNCg0KQSBtZXRob2QgaXMgb25seSBhY2NlcHRhYmxlIGZvciBHVUlEIGdlbmVyYXRpb24g aWYgbXVsdGlwbGUgKD0gYW4NCg0KdW5saW1pdGVkIG51bWJlciBvZikgcGFydGllcyBjYW4gZXhl Y3V0ZSB0aGUgbWV0aG9kIGF0IGFueSB0aW1lLCBhbmQgdGhlDQoNCm91dHB1dCByZW1haW5zIGNv bmZsaWN0LWZyZWUuDQoNCg0KDQpUYWtpbmcgYW4gZXhpc3RlbnQgKGtub3duKSBGSUxFX0dVSUQg YW5kIGluY3JlbWVudGluZyBpdCBieSAxIGlzIG5vdA0KDQpzdWNoIGEgbWV0aG9kLg0KDQoNCg0K UGxlYXNlIHJlZ2VuZXJhdGUgdGhlIEdVSUQgd2l0aCAidXVpZGdlbiIuDQoNCg0KDQpQbGVhc2Ug YWxzbyByZXZpZXcgdGhlIHJlc3Qgb2YgeW91ciBuZXcgR1VJRHMgb3ZlciB0aGlzIHNlcmllcyAo bm90IG9ubHkNCg0KRklMRV9HVUlEcyBpbiBJTkYgZmlsZXMsIGJ1dCBhbnkgb3RoZXIgR1VJRHMs IHRvbykuDQpPSywgSSB3aWxsIHJlZ2VuZXJhdGUgdGhlIEdVSUQgaW4gbmV4dCBjb21taXQuDQoN Cg0KDQoNCg0KDQoNCg0KDQorICBNT0RVTEVfVFlQRSAgICAgICAgICAgICAgICAgICAgPSBEWEVf RFJJVkVSDQoNCisgIFZFUlNJT05fU1RSSU5HICAgICAgICAgICAgICAgICA9IDEuMA0KDQorICBM SUJSQVJZX0NMQVNTICAgICAgICAgICAgICAgICAgPSBDcHVNbXVMaWIgfCBEWEVfRFJJVkVSDQoN CisgIENPTlNUUlVDVE9SICAgICAgICAgICAgICAgICAgICA9IE1tdUluaXRpYWxpemUNCg0KKw0K DQorIw0KDQorIyAgVkFMSURfQVJDSElURUNUVVJFUyAgICAgICAgICAgPSBMT09OR0FSQ0g2NA0K DQorIw0KDQorDQoNCitbU291cmNlcy5Mb29uZ0FyY2g2NF0NCg0KKyAgTG9vbmdBcmNoNjQvVGxi T3BlcmF0aW9uLlMgICB8IEdDQw0KDQorICBMb29uZ0FyY2g2NC9Db21tb25NbXVMaWIuYw0KDQor ICBMb29uZ0FyY2g2NC9QYWdlLmgNCg0KKyAgTG9vbmdBcmNoNjQvVGxiLmgNCg0KKw0KDQorW1Bh Y2thZ2VzXQ0KDQorICBNZGVQa2cvTWRlUGtnLmRlYw0KDQorICBVZWZpQ3B1UGtnL1VlZmlDcHVQ a2cuZGVjDQoNCisNCg0KK1tMaWJyYXJ5Q2xhc3Nlc10NCg0KKyAgRGVidWdMaWINCg0KKyAgTWVt b3J5QWxsb2NhdGlvbkxpYg0KDQpkaWZmIC0tZ2l0IGEvVWVmaUNwdVBrZy9MaWJyYXJ5L0NwdU1t dUxpYi9EeGVDcHVNbXVMaWIudW5pIGIvVWVmaUNwdVBrZy9MaWJyYXJ5L0NwdU1tdUxpYi9EeGVD cHVNbXVMaWIudW5pDQoNCm5ldyBmaWxlIG1vZGUgMTAwNjQ0DQoNCmluZGV4IDAwMDAwMDAwMDAu LjczNDIyNDk1MTYNCg0KLS0tIC9kZXYvbnVsbA0KDQorKysgYi9VZWZpQ3B1UGtnL0xpYnJhcnkv Q3B1TW11TGliL0R4ZUNwdU1tdUxpYi51bmkNCg0KQEAgLTAsMCArMSwxNCBAQA0KDQorLy8gLyoq IEBmaWxlDQoNCisvLyBDUFUgTWVtb3J5IE1hbmFnZXIgVW5pdCBsaWJyYXJ5IGluc3RhbmNlIGZv ciBEWEUgbW9kdWxlcy4NCg0KKy8vDQoNCisvLyBDUFUgTWVtb3J5IE1hbmFnZXIgVW5pdCBsaWJy YXJ5IGluc3RhbmNlIGZvciBEWEUgbW9kdWxlcy4NCg0KKy8vDQoNCisvLyBDb3B5cmlnaHQgKGMp IDIwMjQsIExvb25nc29uIFRlY2hub2xvZ3kgQ29ycG9yYXRpb24gTGltaXRlZC4gQWxsIHJpZ2h0 cyByZXNlcnZlZC48QlI+DQoNCisvLw0KDQorLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJT RC0yLUNsYXVzZS1QYXRlbnQNCg0KKy8vDQoNCisvLyAqKi8NCg0KKw0KDQorI3N0cmluZyBTVFJf TU9EVUxFX0FCU1RSQUNUICAgICAgICAgICAgICNsYW5ndWFnZSBlbi1VUyAiQ1BVIE1lbW9yeSBN YW5hZ2VyIFVuaXQgbGlicmFyeSBpbnN0YW5jZSBmb3IgRFhFIG1vZHVsZXMuIg0KDQorDQoNCisj c3RyaW5nIFNUUl9NT0RVTEVfREVTQ1JJUFRJT04gICAgICAgICAgI2xhbmd1YWdlIGVuLVVTICJD UFUgTWVtb3J5IE1hbmFnZXIgVW5pdCBsaWJyYXJ5IGluc3RhbmNlIGZvciBEWEUgbW9kdWxlcy4i DQoNCmRpZmYgLS1naXQgYS9VZWZpQ3B1UGtnL0xpYnJhcnkvQ3B1TW11TGliL0xvb25nQXJjaDY0 L0NvbW1vbk1tdUxpYi5jIGIvVWVmaUNwdVBrZy9MaWJyYXJ5L0NwdU1tdUxpYi9Mb29uZ0FyY2g2 NC9Db21tb25NbXVMaWIuYw0KDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KDQppbmRleCAwMDAwMDAw MDAwLi4yZTg1MmMzMzcxDQoNCi0tLSAvZGV2L251bGwNCg0KKysrIGIvVWVmaUNwdVBrZy9MaWJy YXJ5L0NwdU1tdUxpYi9Mb29uZ0FyY2g2NC9Db21tb25NbXVMaWIuYw0KDQpAQCAtMCwwICsxLDk4 OCBAQA0KDQorLyoqIEBmaWxlDQoNCisNCg0KKyAgQ1BVIE1lbW9yeSBNYXAgVW5pdCBIYW5kbGVy IExpYnJhcnkgY29tbW9uIGZ1bmN0aW9ucy4NCg0KKw0KDQorICBDb3B5cmlnaHQgKGMpIDIwMjQg TG9vbmdzb24gVGVjaG5vbG9neSBDb3Jwb3JhdGlvbiBMaW1pdGVkLiBBbGwgcmlnaHRzIHJlc2Vy dmVkLjxCUj4NCg0KKw0KDQorICBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNl LVBhdGVudA0KDQorDQoNCisgIEBwYXIgR2xvc3Nhcnk6DQoNCisgICAgLSBQZ2Qgb3IgUGdkIG9y IFBHRCAgICAtIFBhZ2UgR2xvYmFsIERpcmVjdG9yeQ0KDQorICAgIC0gUHVkIG9yIFB1ZCBvciBQ VUQgICAgLSBQYWdlIFVwcGVyIERpcmVjdG9yeQ0KDQorICAgIC0gUG1kIG9yIFBtZCBvciBQTUQg ICAgLSBQYWdlIE1pZGRsZSBEaXJlY3RvcnkNCg0KKyAgICAtIFB0ZSBvciBwdGUgb3IgUFRFICAg IC0gUGFnZSBUYWJsZSBFbnRyeQ0KDQorICAgIC0gVmFsIG9yIFZBTCBvciB2YWwgICAgLSBWYWx1 ZQ0KDQorICAgIC0gRGlyICAgIC0gRGlyZWN0b3J5DQoNCisqKi8NCg0KKyNpbmNsdWRlIDxVZWZp Lmg+DQoNCisjaW5jbHVkZSA8TGlicmFyeS9CYXNlTGliLmg+DQoNCisjaW5jbHVkZSA8TGlicmFy eS9CYXNlTWVtb3J5TGliLmg+DQoNCisjaW5jbHVkZSA8TGlicmFyeS9DcHVNbXVMaWIuaD4NCg0K KyNpbmNsdWRlIDxMaWJyYXJ5L0RlYnVnTGliLmg+DQoNCisjaW5jbHVkZSA8TGlicmFyeS9NZW1v cnlBbGxvY2F0aW9uTGliLmg+DQoNCisjaW5jbHVkZSA8UmVnaXN0ZXIvTG9vbmdBcmNoNjQvQ3Ny Lmg+DQoNCisjaW5jbHVkZSAiVGxiLmgiDQoNCisjaW5jbHVkZSAiUGFnZS5oIg0KDQorDQoNCisj ZGVmaW5lIFNXQVBfUEFHRV9ESVIgICAgICAgICAgICAgIENzclJlYWQoTE9PTkdBUkNIX0NTUl9Q R0RMKQ0KDQoNCg0KKDIpIE1pc3Npbmcgc3BhY2UgYWZ0ZXIgIkNzclJlYWQiLg0KT0suDQoNCg0K DQoNCg0KDQoNCisjZGVmaW5lIEVGSV9NRU1PUllfQ0FDSEVUWVBFX01BU0sgIChFRklfTUVNT1JZ X1VDICB8IFwNCg0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVGSV9NRU1P UllfV0MgIHwgXA0KDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUZJX01F TU9SWV9XVCAgfCBcDQoNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFRklf TUVNT1JZX1dCICB8IFwNCg0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVG SV9NRU1PUllfVUNFICAgXA0KDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg KQ0KDQoNCg0KKDMpIFRoaXMgc2VlbXMgdG8gY29tZSBmcm9tICJBcm1Qa2cvSW5jbHVkZS9MaWJy YXJ5L0FybUxpYi5oIjsgaXQncyBub3QNCg0KZ3JlYXQgcmVnYXJkbGVzczogd2Ugc2hvdWxkbid0 IHVzZSB0aGUgRUZJXyBwcmVmaXggZm9yIHN5bWJvbHMgdGhhdCBhcmUNCg0Kbm90IHN0YW5kYXJk LiAoUHV0IGRpZmZlcmVudGx5LCBFRklfIGlzIGEgcmVzZXJ2ZWQgbmFtZXNwYWNlIHByZWZpeCBm b3INCg0KdGhlIFVFRkkgYW5kIFBJIHNwZWNzLikNCk9LLCBJIHdpbGwgcmVuYW1lIHdpdGggb3V0 IEVGSV9wZXJmaXggbmV4dCB0aW1lLg0KDQoNCg0KDQoNCg0KDQorDQoNCitCT09MRUFOICBtTW11 SW5pdGVkID0gRkFMU0U7DQoNCg0KDQooNCkgVGhpcyBzaG91bGQgYmUgU1RBVElDLCBJIGJlbGll dmUuDQoNCg0KDQooNSkgU28gdGhpcyBpcyB0aGUgcG9pbnQgd2hlcmUgSSByZWFsaXplIHRoYXQg dGhlIGxpYnJhcnkgZGVzaWduIG1ha2VzDQoNCm5vIHNlbnNlIHRvIG1lLg0KDQoNCg0KTm9ybWFs bHkgeW91IGNyZWF0ZSBTRUMvUEVJIHZzLiBEWEUgcGhhc2UgaW5zdGFuY2VzIG9mIGEgbGlicmFy eQ0KDQpiZWNhdXNlLCB1c2luZyB3cml0YWJsZSBnbG9iYWwgdmFyaWFibGVzLCB5b3UgY2FuIGdh aW4gcGVyZm9ybWFuY2UgKHlvdQ0KDQpjYW4gcmVtZW1iZXIgdGhlIGluaXRpYWxpemF0aW9uKSBp biBEWEUsIGJ1dCBpbiBTRUMvUEVJLCB5b3UgZG9uJ3QgaGF2ZQ0KDQp3cml0ZWFibGUgZ2xvYmFs IHZhcmlhYmxlcy4NCg0KDQoNClRoaXMgcGF0dGVybiBkb2VzIG5vdCBzZWVtIHRvIGFwcGx5IGhl cmUsIG9yIGF0IGxlYXN0IGl0IGRvZXNuJ3Qgc2VlbSB0bw0KDQp3b3JrLiBIZXJlJ3Mgd2h5Og0K DQoNCg0KLSB0aGUgdmFyaWFibGUgbU1tdUluaXRlZCBhbmQgdGhlIGZ1bmN0aW9uIE1tdUluaXRp YWxpemUgKHdoaWNoIGNvbnRhaW5zDQoNCmFuIGFzc2lnbm1lbnQgdG8gdGhlIHZhcmlhYmxlKSBh cmUgaW4gIkNvbW1vbk1tdUxpYi5jIiwgd2hpY2ggZ2V0cyBidWlsdA0KDQppbnRvIGJvdGggbGli cmFyeSBpbnN0YW5jZXMuIFRoaXMgbWFrZXMgbm8gc2Vuc2U7IHRoYXQgYXNzaWdubWVudCBjYW5u b3QNCg0Kd29yayBpbiBTRUMvUEVJIChJIHByZXN1bWUgeW91J3JlIG5vdCBnb2luZyB0byBoYXZl IHdyaXRlYWJsZSBnbG9iYWxzIC0tDQoNCmV4ZWN1dGluZyBmcm9tIGZsYXNoKS4NCg0KDQoNCi0g SSB0aGluayB5b3UgbWF5IGJlIHRyeWluZyB0byBtYWtlIHVwIGZvciB0aGF0IHByb2JsZW0gYnkg Y2hlY2tpbmcNCg0KU1dBUF9QQUdFX0RJUiAodGhlIExPT05HQVJDSF9DU1JfUEdETCByZWdpc3Rl cikgaW4gTW11SW5pdGlhbGl6ZSgpIGFuZA0KDQpNbXVJc0luaXQoKS4gVGhhdCBkb2Vzbid0IHNl ZW0gcmlnaHQuDQoNClllcywgeW91IGFyZSByaWdodCwgdGhlIFBFSSBzdGFnZSBtYXkgYmUgZXhl Y3V0ZWQgZnJvbSBmbGFzaCwgaW4gdGhpcyBjYXNlLCB3ZSBoYXZlIG5vIHdheSB0byB3cml0ZSBn bG9iYWwgdmFyaWFibGVzLCBzbyB3ZSBjYW4gb25seSBjaGVjayB3aGV0aGVyIENTUl9QR0RMIGlz IE5VTEwgaW4gdGhlIERYRSBzdGFnZSB0byBnZXQgd2hldGhlciB0aGUgTU1VIGhhcyBiZWVuIGlu aXRpYWxpemVkLg0KDQoNCg0KDQoNCi0gVGhlIFBFSSBpbnN0YW5jZSBvZiB0aGUgbGlicmFyeSBj b250YWlucyBhbiBFRklBUEkgZnVuY3Rpb24gY2FsbGVkDQoNCkNvbmZpZ3VyZU1lbW9yeU1hbmFn ZW1lbnRVbml0KCkuIFRoaXMgZnVuY3Rpb24gaXMgbmV2ZXIgY2FsbGVkIGluIHRoaXMNCg0KcGF0 Y2gsIHdoaWNoIG1ha2VzIG1lIHRoaW5rIGl0J3Mgc3VwcG9zZWQgdG8gYmUgY2FsbGVkIGZyb20g ZHJpdmVyIG9yDQoNCmFwcGxpY2F0aW9uIGNvZGUgKGkuZS4sIG5vdCBmcm9tIHdpdGhpbiB0aGUg bGlicmFyeSBpdHNlbGYsIGJ1dCBmcm9tDQoNCmNsaWVudCBjb2RlKS4gSG93ZXZlciwgQ29uZmln dXJlTWVtb3J5TWFuYWdlbWVudFVuaXQoKSBpcyBhbHNvIG5vdA0KDQpkZWNsYXJlZCBpbiB0aGUg cHJldmlvdXMgcGF0Y2ggKGluDQoNCiJVZWZpQ3B1UGtnL0luY2x1ZGUvTGlicmFyeS9DcHVNbXVM aWIuaCIpOyB0aGVyZWZvcmUgY2xpZW50IGNvZGUgY2Fubm90DQoNCnJlYWNoIGl0IGF0IGFsbCAt LSBzbyB0aGF0IGZ1bmN0aW9uIGRvZXNuJ3QgZXZlbiBiZWxvbmcgaW4gdGhpcyBsaWJyYXJ5Lg0K DQpUaGlzIEFQSSB3YXMgZGlzY3Vzc2VkIHdpdGggUmF5IGluIHRoZSBWMyBwYXRjaCAxMy4gQWN0 dWFsbHksIHRoZSBDcHVNbXVMaWIuaCBpbmNsdWRlIG1vcmUgQVBJcyBiZWZvcmUsIFJheSBiZWxp ZXZlZCB0aGF0IG90aGVyIEFQSXMgc2hvdWxkIG5vdCBiZSBvcGVuIHRvIHVzZXJzIG9yIHNvbWUg QVBJcyBjYW4gYmUgZG9uZSBieSB0aGUgYmFzZSBBUElzLCBhbmQgaW4gbXkgb3BpbmlvbiwgdGhl IENvbmZpZ3VyZU1lbW9yeU1hbmFnZW1lbnRVbml0KCkgaXMgYSBwcml2YXRlIEFQSSwgc28gaW4g VjQsIGl0IGhhcyBiZWVuIHJlbW92ZWQgZnJvbSBDcHVNbXVMaWIuaC4NCg0KU28gd2hhdCBkbyB5 b3UgdGhpbms/IHRoZSBDb25maWd1cmVNZW1vcnlNYW5hZ2VtZW50VW5pdCBzaG91bGQgYmUgYWRk ZWQgYmFjaz8NCg0KDQoNCg0KDQotIE1tdUluaXRpYWxpemUoKSBkb2Vzbid0IGFjdHVhbGx5IGRv IGFueXRoaW5nLCBpdCBqdXN0IGNoZWNrcyAodmlhIHRoZQ0KDQpDU1IpIHdoZXRoZXIgc29tZSBv dGhlciBjb21wb25lbnQgaGFzIGFscmVhZHkgaW5pdGlhbGl6ZWQgdGhlIE1NVQ0KDQoobGlrZWx5 IHdpdGggQ29uZmlndXJlTWVtb3J5TWFuYWdlbWVudFVuaXQoKSkuIEFuZCB0aGUgc29sZSBwdXJw b3NlIG9mDQoNCk1tdUlzSW5pdCgpIGFwcGVhcnMgdG8gYmUgdG8gcmV0dXJuIGZyb20gdGhlIHB1 YmxpYyBsaWJyYXJ5IEFQSXMNCg0KU2V0TWVtb3J5UmVnaW9uQXR0cmlidXRlcygpIGFuZCBHZXRN ZW1vcnlSZWdpb25BdHRyaWJ1dGVzKCkgZWFybHksIGlmDQoNCnRoYXQgIm90aGVyIiAodW5rbm93 bikgY29tcG9uZW50IGhhcyBub3QgY2FsbGVkDQoNCkNvbmZpZ3VyZU1lbW9yeU1hbmFnZW1lbnRV bml0KCkgeWV0Lg0KDQoNCg0KU28sIEkgZG9uJ3QgdW5kZXJzdGFuZCB3aGF0IHlvdSBhcmUgdHJ5 aW5nIHRvIGRvLiBJIGNvdWxkIGV4cGxhaW4gaG93IHRvDQoNCmtlZXAgdGhlIGluaXRpYWxpemF0 aW9uIGxvZ2ljICpkaWZmZXJlbmNlcyogbWluaW1hbCBiZXR3ZWVuIHRoZSBTRUMvUEVJDQoNCmFu ZCB0aGUgRFhFIGxpYnJhcnkgaW5zdGFuY2VzLCBidXQgSSBkb24ndCB1bmRlcnN0YW5kIGhvdyAv IHdoZW4gdGhlIE1NVQ0KDQppbml0aWFsaXphdGlvbiBpcyBzdXBwb3NlZCB0byBvY2N1ciBpbiB0 aGUgZmlyc3QgcGxhY2UuDQoNCkxldCdzIG1lIHRlbGwgeW91IHRoaXMgbGlicmFyeSBob3cgdG8g d29yazoNCg0KSW4gUEVJIHN0YWdlLCBpbiBhZGRpdGlvbiB0byBlbnN1cmluZyB0aGF0IHRoZSBN TVUgaXMgbm90IHVzZWQsIHRoZSB1c2VyIG11c3QgY2FsbCB0aGUgQ29uZmlndXJlTWVtb3J5TWFu YWdlbWVudFVuaXQgdG9pbml0aWFsaXphdGlvbiB0aGUgTU1VLCBzdWNoIGFzIGZpbGxpbmcgdGhl IHN0YXRpYyBwYWdlIHRhYmxlcywgc2V0IHRoZSBUTEIgcmVmaWxsIGV4Y2VwdGlvbiBlbnRyeSBw b2ludCwgc2V0IHRoZSBwYWdlIHNpemUgZXRjLiB0aGUgQ29uZmlndXJlTWVtb3J5TWFuYWdlbWVu dFVuaXQgaXMgYSBwcml2YXRlIEFQSSBidXQgcmVsYXRlZCB0byBBUkNILg0KDQpEdXJpbmcgRFhF IHN0YWdlLCB0aGlzIGxpYnJhcnkgd2lsbCBwcm92aWRlIHNlcnZpY2VzIGZvciBDcHVEeGUgYW5k IG90aGVyIGRyaXZlcnMsIGJ1dCBhbG1vc3QgY2hhbmdlcyB0byBtZW1vcnkgcGFnZSBhdHRyaWJ1 dGVzIHVzZSB0aGUgcHJvdG9jb2xzIHByb3ZpZGVkIGJ5IENwdUR4ZS4gVGhhdCBpcyB3aHkgdGhl IENwdU1tdUxpYi5oIG9ubHkgY29udGFpbnMgdHdvIEFQSXMsIGl0IG9ubHkgY2FuIGdldC9zZXQg dGhlIGF0dHJpYnV0ZS4NCg0KSW4gc2hvcnQsIHRoZSBQRUkgc3RhZ2UgbmVlZHMgdG8gaW5pdGlh bGl6ZSBhbmQgc2V0IHVwIFRMQiByZWZpbGwgZW50cnkgcG9pbnQgYW5kIG1ldGhvZChkeW5hbWlj YWxseSBwb3B1bGF0ZSB0aGUgVExCLCBrZWVwIHRoZSBQQSA9PSBWQSksIGFuZCBEWEUgc3RhZ2Ug aXMgcHJvdmlkZXMgc2VydmljZXMgZm9yIGNoYW5naW5nIHRoZSBtZW1vcnkgYXR0cmlidXRlcy4N Cg0KDQoNCg0KDQooNikgVGhlIHBhdGNoIGlzIHRvbyBsYXJnZSBpbiBnZW5lcmFsLiBZb3Ugc2hv dWxkIGNvbnN0cnVjdCB0aGVzZQ0KDQpsaWJyYXJ5IGluc3RhbmNlcyBvdmVyIG11bHRpcGxlIHBh dGNoZXMuIFRoZSBmaXJzdCBwYXRjaCBjb3VsZCBhZGQgc29tZQ0KDQpkZWNsYXJhdGlvbnMgLyBt YWNybyBkZWZpbml0aW9ucywgc3VjaCBhcyAiUGFnZS5oIiBhbmQgIlRsYi5oIi4gQW5vdGhlcg0K DQpwYXRjaCBjb3VsZCBhZGQgdGhlIGFzc2VtYmx5IGxhbmd1YWdlIGhlbHBlciBmdW5jdGlvbnMu IEFub3RoZXIgcGF0Y2gNCg0KY291bGQgYWRkIHRoZSBQRUkgcGhhc2UgbGlicmFyeSBpbnN0YW5j ZSAoaW5jbHVkaW5nIHRoZSBjb21tb24gY29kZSkuIEENCg0KZmluYWwgcGF0Y2ggY291bGQgYWRk IHRoZSBEWEUtcGhhc2UgYml0cy4NCg0KDQoNClRoZSBpZGVhIGlzIHRvIHByb2NlZWQgaW4gbGF5 ZXJzLCBsb2dpY2FsbHkgYnVpbGRpbmcgb25lIG9uIHRvcCBvZiB0aGUNCg0Kb3RoZXIuIEl0J3Mg ZmluZSBpZiB0aGUgbGlicmFyeSBkb2Vzbid0IGJ1aWxkIGluaXRpYWxseTsgdGhlcmUgaXMgbm8N Cg0KYXR0ZW1wdCB0byBidWlsZCBpdCBhbnl3YXkgdW50aWwgeW91IGFjdHVhbGx5IHJlZmVyZW5j ZSB0aGUgSU5GIGZpbGVzIGluDQoNCnNvbWUgRFNDIGZpbGVzLiBTbyBwbGVhc2Ugc3BsaXQgdGhp cyBhdCBsZWFzdCBpbiA0IHBhdGNoZXMuDQpPSywgSSB3aWxsIHRyeSBpdC4NCg0KDQoNCg0KDQoN Cg0KKDcpIFRoZSBjb21taXQgbWVzc2FnZSBzaG91bGQgZXhwbGFpbiB0aGUgZXhwZWN0ZWQgdXNh Z2UgbW9kZWwgaW4gZGV0YWlsLg0KT0suDQoNCg0KDQoNCg0KDQoNCkJlc3QgcmVnYXJkcywNCg0K TGFzemxvDQoNCg0KDQoNCg0KKw0KDQorLyoqDQoNCisgIENoZWNrIHRvIHNlZSBpZiBtbXUgc3Vj Y2Vzc2Z1bGx5IGluaXRpYWxpemVzLg0KDQorDQoNCisgIEBwYXJhbSAgVk9JRC4NCg0KKw0KDQor ICBAcmV0dmFsICBUUlVFICBJbml0aWFsaXphdGlvbiBoYXMgYmVlbiBjb21wbGV0ZWQuDQoNCisg ICAgICAgICAgIEZBTFNFIEluaXRpYWxpemF0aW9uIGRpZCBub3QgY29tcGxldGUuDQoNCisqKi8N Cg0KK1NUQVRJQw0KDQorQk9PTEVBTg0KDQorTW11SXNJbml0ICgNCg0KKyAgVk9JRA0KDQorICAp DQoNCit7DQoNCisgIGlmIChtTW11SW5pdGVkIHx8IChTV0FQX1BBR0VfRElSICE9IDApKSB7DQoN CisgICAgcmV0dXJuIFRSVUU7DQoNCisgIH0NCg0KKw0KDQorICByZXR1cm4gRkFMU0U7DQoNCit9 DQoNCisNCg0KKy8qKg0KDQorICBJdGVyYXRlcyB0aHJvdWdoIHRoZSBwYWdlIGRpcmVjdG9yeSB0 byBpbml0aWFsaXplIGl0Lg0KDQorDQoNCisgIEBwYXJhbSAgRHN0ICBBIHBvaW50ZXIgdG8gdGhl IGRpcmVjdG9yeSBvZiB0aGUgcGFnZSB0byBpbml0aWFsaXplLg0KDQorICBAcGFyYW0gIE51bSAg VGhlIG51bWJlciBvZiBwYWdlIGRpcmVjdG9yaWVzIHRvIGluaXRpYWxpemUuDQoNCisgIEBwYXJh bSAgU3JjICBBIHBvaW50ZXIgdG8gdGhlIGRhdGEgdXNlZCB0byBpbml0aWFsaXplIHRoZSBwYWdl IGRpcmVjdG9yeS4NCg0KKw0KDQorICBAcmV0dXJuIFZPSUQuDQoNCisqKi8NCg0KK1NUQVRJQw0K DQorVk9JRA0KDQorUGFnZURpckluaXQgKA0KDQorICBJTiBWT0lEICAgKkRzdCwNCg0KKyAgSU4g VUlOVE4gIE51bSwNCg0KKyAgSU4gVk9JRCAgICpTcmMNCg0KKyAgKQ0KDQorew0KDQorICBVSU5U TiAgKlB0cjsNCg0KKyAgVUlOVE4gICpFbmQ7DQoNCisgIFVJTlROICBFbnRyeTsNCg0KKw0KDQor ICBFbnRyeSA9IChVSU5UTilTcmM7DQoNCisgIFB0ciAgID0gKFVJTlROICopRHN0Ow0KDQorICBF bmQgICA9IFB0ciArIE51bTsNCg0KKw0KDQorICBmb3IgKCA7IFB0ciA8IEVuZDsgUHRyKyspIHsN Cg0KKyAgICAqUHRyID0gRW50cnk7DQoNCisgIH0NCg0KKw0KDQorICByZXR1cm47DQoNCit9DQoN CisNCg0KKy8qKg0KDQorICBHZXRzIHRoZSB2aXJ0dWFsIGFkZHJlc3MgY29ycmVzcG9uZGluZyB0 byB0aGUgcGFnZSBnbG9iYWwgZGlyZWN0b3J5IHRhYmxlIGVudHJ5Lg0KDQorDQoNCisgIEBwYXJh bSAgQWRkcmVzcyAgdGhlIHZpcnR1YWwgYWRkcmVzcyBmb3IgdGhlIHRhYmxlIGVudHJ5Lg0KDQor DQoNCisgIEByZXR2YWwgUEdEIEEgcG9pbnRlciB0byBnZXQgdGhlIHRhYmxlIGl0ZW0uDQoNCisq Ki8NCg0KK1NUQVRJQw0KDQorUEdEICoNCg0KK1BnZE9mZnNldCAoDQoNCisgIElOIFVJTlROICBB ZGRyZXNzDQoNCisgICkNCg0KK3sNCg0KKyAgcmV0dXJuIChQR0QgKikoU1dBUF9QQUdFX0RJUikg KyBQR0RfSU5ERVggKEFkZHJlc3MpOw0KDQorfQ0KDQorDQoNCisvKioNCg0KKyAgR2V0cyB0aGUg dmlydHVhbCBhZGRyZXNzIGNvcnJlc3BvbmRpbmcgdG8gdGhlIHBhZ2UgdXBwZXIgZGlyZWN0b3J5 IHRhYmxlIGVudHJ5Lg0KDQorDQoNCisgIEBwYXJhbSAgUGdkICBBIHBvaW50ZXIgdG8gYSBwYWdl IGdsb2JhbCBkaXJlY3RvcnkgdGFibGUgZW50cnkuDQoNCisgIEBwYXJhbSAgQWRkcmVzcyAgdGhl IHZpcnR1YWwgYWRkcmVzcyBmb3IgdGhlIHRhYmxlIGVudHJ5Lg0KDQorDQoNCisgIEByZXR2YWwg UFVEIEEgcG9pbnRlciB0byBnZXQgdGhlIHRhYmxlIGl0ZW0uDQoNCisqKi8NCg0KK1NUQVRJQw0K DQorUFVEICoNCg0KK1B1ZE9mZnNldCAoDQoNCisgIElOIFBHRCAgICAqUGdkLA0KDQorICBJTiBV SU5UTiAgQWRkcmVzcw0KDQorICApDQoNCit7DQoNCisgIFVJTlROICBQZ2RWYWw7DQoNCisNCg0K KyAgUGdkVmFsID0gKFVJTlROKVBHRF9WQUwgKCpQZ2QpOw0KDQorDQoNCisgIHJldHVybiAoUFVE ICopUGdkVmFsICsgUFVEX0lOREVYIChBZGRyZXNzKTsNCg0KK30NCg0KKw0KDQorLyoqDQoNCisg IEdldHMgdGhlIHZpcnR1YWwgYWRkcmVzcyBjb3JyZXNwb25kaW5nIHRvIHRoZSBwYWdlIG1pZGRs ZSBkaXJlY3RvcnkgdGFibGUgZW50cnkuDQoNCisNCg0KKyAgQHBhcmFtICBQdWQgIEEgcG9pbnRl ciB0byBhIHBhZ2UgdXBwZXIgZGlyZWN0b3J5IHRhYmxlIGVudHJ5Lg0KDQorICBAcGFyYW0gIEFk ZHJlc3MgIHRoZSB2aXJ0dWFsIGFkZHJlc3MgZm9yIHRoZSB0YWJsZSBlbnRyeS4NCg0KKw0KDQor ICBAcmV0dmFsIFBNRCBBIHBvaW50ZXIgdG8gZ2V0IHRoZSB0YWJsZSBpdGVtLg0KDQorKiovDQoN CitTVEFUSUMNCg0KK1BNRCAqDQoNCitQbWRPZmZzZXQgKA0KDQorICBJTiBQVUQgICAgKlB1ZCwN Cg0KKyAgSU4gVUlOVE4gIEFkZHJlc3MNCg0KKyAgKQ0KDQorew0KDQorICBVSU5UTiAgUHVkVmFs Ow0KDQorDQoNCisgIFB1ZFZhbCA9IFBVRF9WQUwgKCpQdWQpOw0KDQorDQoNCisgIHJldHVybiAo UE1EICopUHVkVmFsICsgUE1EX0lOREVYIChBZGRyZXNzKTsNCg0KK30NCg0KKw0KDQorLyoqDQoN CisgIEdldHMgdGhlIHZpcnR1YWwgYWRkcmVzcyBjb3JyZXNwb25kaW5nIHRvIHRoZSBwYWdlIHRh YmxlIGVudHJ5Lg0KDQorDQoNCisgIEBwYXJhbSAgUG1kICBBIHBvaW50ZXIgdG8gYSBwYWdlIG1p ZGRsZSBkaXJlY3RvcnkgdGFibGUgZW50cnkuDQoNCisgIEBwYXJhbSAgQWRkcmVzcyAgdGhlIHZp cnR1YWwgYWRkcmVzcyBmb3IgdGhlIHRhYmxlIGVudHJ5Lg0KDQorDQoNCisgIEByZXR2YWwgUFRF IEEgcG9pbnRlciB0byBnZXQgdGhlIHRhYmxlIGl0ZW0uDQoNCisqKi8NCg0KK1NUQVRJQw0KDQor UFRFICoNCg0KK1B0ZU9mZnNldCAoDQoNCisgIElOIFBNRCAgICAqUG1kLA0KDQorICBJTiBVSU5U TiAgQWRkcmVzcw0KDQorICApDQoNCit7DQoNCisgIFVJTlROICBQbWRWYWw7DQoNCisNCg0KKyAg UG1kVmFsID0gKFVJTlROKVBNRF9WQUwgKCpQbWQpOw0KDQorDQoNCisgIHJldHVybiAoUFRFICop UG1kVmFsICsgUFRFX0lOREVYIChBZGRyZXNzKTsNCg0KK30NCg0KKw0KDQorLyoqDQoNCisgIFNl dHMgdGhlIHZhbHVlIG9mIHRoZSBwYWdlIHRhYmxlIGVudHJ5Lg0KDQorDQoNCisgIEBwYXJhbSAg UHRlICBBIHBvaW50ZXIgdG8gYSBwYWdlIHRhYmxlIGVudHJ5Lg0KDQorICBAcGFyYW0gIFB0ZVZh bCAgVGhlIHZhbHVlIG9mIHRoZSBwYWdlIHRhYmxlIGVudHJ5IHRvIHNldC4NCg0KKw0KDQorKiov DQoNCitTVEFUSUMNCg0KK1ZPSUQNCg0KK1NldFB0ZSAoDQoNCisgIElOIFBURSAgKlB0ZSwNCg0K KyAgSU4gUFRFICBQdGVWYWwNCg0KKyAgKQ0KDQorew0KDQorICAqUHRlID0gUHRlVmFsOw0KDQor fQ0KDQorDQoNCisvKioNCg0KKyAgU2V0cyB0aGUgdmFsdWUgb2YgdGhlIHBhZ2UgZ2xvYmFsIGRp cmVjdG9yeS4NCg0KKw0KDQorICBAcGFyYW0gIFBnZCAgQSBwb2ludGVyIHRvIGEgcGFnZSBnbG9i YWwgZGlyZWN0b3J5Lg0KDQorICBAcGFyYW0gIFB1ZCAgVGhlIHZhbHVlIG9mIHRoZSBwYWdlIGds b2JhbCBkaXJlY3RvcnkgdG8gc2V0Lg0KDQorDQoNCisqKi8NCg0KK1NUQVRJQw0KDQorVk9JRA0K DQorU2V0UGdkICgNCg0KKyAgSU4gUEdEICAqUGdkLA0KDQorICBJTiBQVUQgICpQdWQNCg0KKyAg KQ0KDQorew0KDQorICAqUGdkID0gKFBHRCkgew0KDQorICAgICgoVUlOVE4pUHVkKQ0KDQorICB9 Ow0KDQorfQ0KDQorDQoNCisvKioNCg0KKyAgU2V0cyB0aGUgdmFsdWUgb2YgdGhlIHBhZ2UgdXBw ZXIgZGlyZWN0b3J5Lg0KDQorDQoNCisgIEBwYXJhbSAgUHVkICBBIHBvaW50ZXIgdG8gYSBwYWdl IHVwcGVyIGRpcmVjdG9yeS4NCg0KKyAgQHBhcmFtICBQbWQgIFRoZSB2YWx1ZSBvZiB0aGUgcGFn ZSB1cHBlciBkaXJlY3RvcnkgdG8gc2V0Lg0KDQorDQoNCisqKi8NCg0KK1NUQVRJQw0KDQorVk9J RA0KDQorU2V0UHVkICgNCg0KKyAgSU4gUFVEICAqUHVkLA0KDQorICBJTiBQTUQgICpQbWQNCg0K KyAgKQ0KDQorew0KDQorICAqUHVkID0gKFBVRCkgew0KDQorICAgICgoVUlOVE4pUG1kKQ0KDQor ICB9Ow0KDQorfQ0KDQorDQoNCisvKioNCg0KKyAgU2V0cyB0aGUgdmFsdWUgb2YgdGhlIHBhZ2Ug bWlkZGxlIGRpcmVjdG9yeS4NCg0KKw0KDQorICBAcGFyYW0gIFBtZCAgQSBwb2ludGVyIHRvIGEg cGFnZSBtaWRkbGUgZGlyZWN0b3J5Lg0KDQorICBAcGFyYW0gIFB0ZSAgVGhlIHZhbHVlIG9mIHRo ZSBwYWdlIG1pZGRsZSBkaXJlY3RvcnkgdG8gc2V0Lg0KDQorDQoNCisqKi8NCg0KK1NUQVRJQw0K DQorVk9JRA0KDQorU2V0UG1kICgNCg0KKyAgSU4gUE1EICAqUG1kLA0KDQorICBJTiBQVEUgICpQ dGUNCg0KKyAgKQ0KDQorew0KDQorICAqUG1kID0gKFBNRCkgew0KDQorICAgICgoVUlOVE4pUHRl KQ0KDQorICB9Ow0KDQorfQ0KDQorDQoNCisvKioNCg0KKyAgRnJlZSB1cCBtZW1vcnkgc3BhY2Ug b2NjdXBpZWQgYnkgcGFnZSB0YWJsZXMuDQoNCisNCg0KKyAgQHBhcmFtICBQdGUgIEEgcG9pbnRl ciB0byB0aGUgcGFnZSB0YWJsZS4NCg0KKw0KDQorKiovDQoNCitWT0lEDQoNCitQdGVGcmVlICgN Cg0KKyAgSU4gUFRFICAqUHRlDQoNCisgICkNCg0KK3sNCg0KKyAgRnJlZVBhZ2VzICgoVk9JRCAq KVB0ZSwgMSk7DQoNCit9DQoNCisNCg0KKy8qKg0KDQorICBGcmVlIHVwIG1lbW9yeSBzcGFjZSBv Y2N1cGllZCBieSBwYWdlIG1pZGRsZSBkaXJlY3RvcnkuDQoNCisNCg0KKyAgQHBhcmFtICBQbWQg IEEgcG9pbnRlciB0byB0aGUgcGFnZSBtaWRkbGUgZGlyZWN0b3J5Lg0KDQorDQoNCisqKi8NCg0K K1ZPSUQNCg0KK1BtZEZyZWUgKA0KDQorICBJTiBQTUQgICpQbWQNCg0KKyAgKQ0KDQorew0KDQor ICBGcmVlUGFnZXMgKChWT0lEICopUG1kLCAxKTsNCg0KK30NCg0KKw0KDQorLyoqDQoNCisgIEZy ZWUgdXAgbWVtb3J5IHNwYWNlIG9jY3VwaWVkIGJ5IHBhZ2UgdXBwZXIgZGlyZWN0b3J5Lg0KDQor DQoNCisgIEBwYXJhbSAgUHVkICBBIHBvaW50ZXIgdG8gdGhlIHBhZ2UgdXBwZXIgZGlyZWN0b3J5 Lg0KDQorDQoNCisqKi8NCg0KK1ZPSUQNCg0KK1B1ZEZyZWUgKA0KDQorICBJTiBQVUQgICpQdWQN Cg0KKyAgKQ0KDQorew0KDQorICBGcmVlUGFnZXMgKChWT0lEICopUHVkLCAxKTsNCg0KK30NCg0K Kw0KDQorLyoqDQoNCisgIFJlcXVlc3RzIHRoZSBtZW1vcnkgc3BhY2UgcmVxdWlyZWQgZm9yIHRo ZSBwYWdlIHVwcGVyIGRpcmVjdG9yeSwNCg0KKyAgaW5pdGlhbGl6ZXMgaXQsIGFuZCBwbGFjZXMg aXQgaW4gdGhlIHNwZWNpZmllZCBwYWdlIGdsb2JhbCBkaXJlY3RvcnkNCg0KKw0KDQorICBAcGFy YW0gIFBnZCAgQSBwb2ludGVyIHRvIHRoZSBwYWdlIGdsb2JhbCBkaXJlY3RvcnkuDQoNCisNCg0K KyAgQHJldHZhbCAgRUZJX1NVQ0NFU1MgIE1lbW9yeSByZXF1ZXN0IHN1Y2Nlc3NmdWwuDQoNCisg IEByZXR2YWwgIEVGSV9PVVRfT0ZfUkVTT1VSQ0VTICBSZXNvdXJjZSBleGhhdXN0aW9uIGNhbm5v dCBiZSByZXF1ZXN0ZWQgdG8gbWVtb3J5Lg0KDQorKiovDQoNCitTVEFUSUMNCg0KK0VGSV9TVEFU VVMNCg0KK1B1ZEFsbG9jICgNCg0KKyAgSU4gUEdEICAqUGdkDQoNCisgICkNCg0KK3sNCg0KKyAg UFVEICAqUHVkOw0KDQorDQoNCisgIFB1ZCA9IChQVUQgKilBbGxvY2F0ZVBhZ2VzICgxKTsNCg0K KyAgaWYgKFB1ZCA9PSBOVUxMKSB7DQoNCisgICAgcmV0dXJuIEVGSV9PVVRfT0ZfUkVTT1VSQ0VT Ow0KDQorICB9DQoNCisNCg0KKyAgUGFnZURpckluaXQgKChWT0lEICopUHVkLCBFTlRSWVNfUEVS X1BVRCwgKFZPSUQgKilJTlZBTElEX1BBR0UpOw0KDQorDQoNCisgIFNldFBnZCAoUGdkLCBQdWQp Ow0KDQorDQoNCisgIHJldHVybiBFRklfU1VDQ0VTUzsNCg0KK30NCg0KKw0KDQorLyoqDQoNCisg IFJlcXVlc3RzIHRoZSBtZW1vcnkgc3BhY2UgcmVxdWlyZWQgZm9yIHRoZSBwYWdlIG1pZGRsZSBk aXJlY3RvcnksDQoNCisgIGluaXRpYWxpemVzIGl0LCBhbmQgcGxhY2VzIGl0IGluIHRoZSBzcGVj aWZpZWQgcGFnZSB1cHBlciBkaXJlY3RvcnkNCg0KKw0KDQorICBAcGFyYW0gIFB1ZCAgQSBwb2lu dGVyIHRvIHRoZSBwYWdlIHVwcGVyIGRpcmVjdG9yeS4NCg0KKw0KDQorICBAcmV0dmFsICBFRklf U1VDQ0VTUyAgTWVtb3J5IHJlcXVlc3Qgc3VjY2Vzc2Z1bC4NCg0KKyAgQHJldHZhbCAgRUZJX09V VF9PRl9SRVNPVVJDRVMgIFJlc291cmNlIGV4aGF1c3Rpb24gY2Fubm90IGJlIHJlcXVlc3RlZCB0 byBtZW1vcnkuDQoNCisqKi8NCg0KK1NUQVRJQw0KDQorRUZJX1NUQVRVUw0KDQorUG1kQWxsb2Mg KA0KDQorICBJTiBQVUQgICpQdWQNCg0KKyAgKQ0KDQorew0KDQorICBQTUQgICpQbWQ7DQoNCisN Cg0KKyAgUG1kID0gKFBNRCAqKUFsbG9jYXRlUGFnZXMgKDEpOw0KDQorICBpZiAoIVBtZCkgew0K DQorICAgIHJldHVybiBFRklfT1VUX09GX1JFU09VUkNFUzsNCg0KKyAgfQ0KDQorDQoNCisgIFBh Z2VEaXJJbml0ICgoVk9JRCAqKVBtZCwgRU5UUllTX1BFUl9QTUQsIChWT0lEICopSU5WQUxJRF9Q QUdFKTsNCg0KKw0KDQorICBTZXRQdWQgKFB1ZCwgUG1kKTsNCg0KKw0KDQorICByZXR1cm4gRUZJ X1NVQ0NFU1M7DQoNCit9DQoNCisNCg0KKy8qKg0KDQorICBSZXF1ZXN0cyB0aGUgbWVtb3J5IHNw YWNlIHJlcXVpcmVkIGZvciB0aGUgcGFnZSB0YWJsZSwNCg0KKyAgaW5pdGlhbGl6ZXMgaXQsIGFu ZCBwbGFjZXMgaXQgaW4gdGhlIHNwZWNpZmllZCBwYWdlIG1pZGRsZSBkaXJlY3RvcnkNCg0KKw0K DQorICBAcGFyYW0gIFBtZCAgQSBwb2ludGVyIHRvIHRoZSBwYWdlIG1pZGRsZSBkaXJlY3Rvcnku DQoNCisNCg0KKyAgQHJldHZhbCAgRUZJX1NVQ0NFU1MgIE1lbW9yeSByZXF1ZXN0IHN1Y2Nlc3Nm dWwuDQoNCisgIEByZXR2YWwgIEVGSV9PVVRfT0ZfUkVTT1VSQ0VTICBSZXNvdXJjZSBleGhhdXN0 aW9uIGNhbm5vdCBiZSByZXF1ZXN0ZWQgdG8gbWVtb3J5Lg0KDQorKiovDQoNCitTVEFUSUMNCg0K K0VGSV9TVEFUVVMNCg0KK1B0ZUFsbG9jICgNCg0KKyAgSU4gUE1EICAqUG1kDQoNCisgICkNCg0K K3sNCg0KKyAgUFRFICAqUHRlOw0KDQorDQoNCisgIFB0ZSA9IChQVEUgKilBbGxvY2F0ZVBhZ2Vz ICgxKTsNCg0KKyAgaWYgKCFQdGUpIHsNCg0KKyAgICByZXR1cm4gRUZJX09VVF9PRl9SRVNPVVJD RVM7DQoNCisgIH0NCg0KKw0KDQorICBQdGUgPSBaZXJvTWVtIChQdGUsIEVGSV9QQUdFX1NJWkUp Ow0KDQorDQoNCisgIFNldFBtZCAoUG1kLCBQdGUpOw0KDQorDQoNCisgIHJldHVybiBFRklfU1VD Q0VTUzsNCg0KK30NCg0KKw0KDQorLyoqDQoNCisgIFJlcXVlc3RzIHRoZSBtZW1vcnkgc3BhY2Ug cmVxdWlyZWQgZm9yIHRoZSBwYWdlIHVwcGVyIGRpcmVjdG9yeSwNCg0KKyAgaW5pdGlhbGl6ZXMg aXQsIGFuZCBwbGFjZXMgaXQgaW4gdGhlIHNwZWNpZmllZCBwYWdlIGdsb2JhbCBkaXJlY3Rvcnks DQoNCisgIGFuZCBnZXQgdGhlIHBhZ2UgdXBwZXIgZGlyZWN0b3J5IGVudHJ5IGNvcnJlc3BvbmRp bmcgdG8gdGhlIHZpcnR1YWwgYWRkcmVzcy4NCg0KKw0KDQorICBAcGFyYW0gIFBnZCAgICAgIEEg cG9pbnRlciB0byB0aGUgcGFnZSBnbG9iYWwgZGlyZWN0b3J5Lg0KDQorICBAcGFyYW0gIEFkZHJl c3MgIFRoZSBjb3JyZXNwb25kaW5nIHZpcnR1YWwgYWRkcmVzcyBvZiB0aGUgcGFnZSB0YWJsZSBl bnRyeS4NCg0KKw0KDQorICBAcmV0dmFsICAgICAgICAgIEEgcG9pbnRlciB0byB0aGUgcGFnZSB1 cHBlciBkaXJlY3RvcnkgZW50cnkuIFJldHVybiBOVUxMLCBpZg0KDQorICAgICAgICAgICAgICAg ICAgIGFsbG9jYXRlIHRoZSBtZW1vcnkgYnVmZmVyIGlzIGZhaWwuDQoNCisqKi8NCg0KK1NUQVRJ Qw0KDQorUFVEICoNCg0KK1B1ZEFsbG9jR2V0ICgNCg0KKyAgSU4gUEdEICAgICpQZ2QsDQoNCisg IElOIFVJTlROICBBZGRyZXNzDQoNCisgICkNCg0KK3sNCg0KKyAgRUZJX1NUQVRVUyAgU3RhdHVz Ow0KDQorDQoNCisgIGlmIChQR0RfSVNfRU1QVFkgKCpQZ2QpKSB7DQoNCisgICAgU3RhdHVzID0g UHVkQWxsb2MgKFBnZCk7DQoNCisgICAgQVNTRVJUX0VGSV9FUlJPUiAoU3RhdHVzKTsNCg0KKyAg ICBpZiAoRUZJX0VSUk9SIChTdGF0dXMpKSB7DQoNCisgICAgICByZXR1cm4gTlVMTDsNCg0KKyAg ICB9DQoNCisgIH0NCg0KKw0KDQorICByZXR1cm4gUHVkT2Zmc2V0IChQZ2QsIEFkZHJlc3MpOw0K DQorfQ0KDQorDQoNCisvKioNCg0KKyAgUmVxdWVzdHMgdGhlIG1lbW9yeSBzcGFjZSByZXF1aXJl ZCBmb3IgdGhlIHBhZ2UgbWlkZGxlIGRpcmVjdG9yeSwNCg0KKyAgaW5pdGlhbGl6ZXMgaXQsIGFu ZCBwbGFjZXMgaXQgaW4gdGhlIHNwZWNpZmllZCBwYWdlIHVwcGVyIGRpcmVjdG9yeSwNCg0KKyAg YW5kIGdldCB0aGUgcGFnZSBtaWRkbGUgZGlyZWN0b3J5IGVudHJ5IGNvcnJlc3BvbmRpbmcgdG8g dGhlIHZpcnR1YWwgYWRkcmVzcy4NCg0KKw0KDQorICBAcGFyYW0gIFB1ZCAgICAgIEEgcG9pbnRl ciB0byB0aGUgcGFnZSB1cHBlciBkaXJlY3RvcnkuDQoNCisgIEBwYXJhbSAgQWRkcmVzcyAgVGhl IGNvcnJlc3BvbmRpbmcgdmlydHVhbCBhZGRyZXNzIG9mIHRoZSBwYWdlIHRhYmxlIGVudHJ5Lg0K DQorDQoNCisgIEByZXR2YWwgICAgICAgICAgQSBwb2ludGVyIHRvIHRoZSBwYWdlIG1pZGRsZSBk aXJlY3RvcnkgZW50cnkuIFJldHVybiBOVUxMLCBpZg0KDQorICAgICAgICAgICAgICAgICAgIGFs bG9jYXRlIHRoZSBtZW1vcnkgYnVmZmVyIGlzIGZhaWwuDQoNCisqKi8NCg0KK1NUQVRJQw0KDQor UE1EICoNCg0KK1BtZEFsbG9jR2V0ICgNCg0KKyAgSU4gUFVEICAgICpQdWQsDQoNCisgIElOIFVJ TlROICBBZGRyZXNzDQoNCisgICkNCg0KK3sNCg0KKyAgRUZJX1NUQVRVUyAgU3RhdHVzOw0KDQor DQoNCisgIGlmIChQVURfSVNfRU1QVFkgKCpQdWQpKSB7DQoNCisgICAgU3RhdHVzID0gUG1kQWxs b2MgKFB1ZCk7DQoNCisgICAgQVNTRVJUX0VGSV9FUlJPUiAoU3RhdHVzKTsNCg0KKyAgICBpZiAo RUZJX0VSUk9SIChTdGF0dXMpKSB7DQoNCisgICAgICByZXR1cm4gTlVMTDsNCg0KKyAgICB9DQoN CisgIH0NCg0KKw0KDQorICByZXR1cm4gUG1kT2Zmc2V0IChQdWQsIEFkZHJlc3MpOw0KDQorfQ0K DQorDQoNCisvKioNCg0KKyAgUmVxdWVzdHMgdGhlIG1lbW9yeSBzcGFjZSByZXF1aXJlZCBmb3Ig dGhlIHBhZ2UgdGFibGUsDQoNCisgIGluaXRpYWxpemVzIGl0LCBhbmQgcGxhY2VzIGl0IGluIHRo ZSBzcGVjaWZpZWQgcGFnZSBtaWRkbGUgZGlyZWN0b3J5LA0KDQorICBhbmQgZ2V0IHRoZSBwYWdl IHRhYmxlIGVudHJ5IGNvcnJlc3BvbmRpbmcgdG8gdGhlIHZpcnR1YWwgYWRkcmVzcy4NCg0KKw0K DQorICBAcGFyYW0gIFBtZCAgICAgIEEgcG9pbnRlciB0byB0aGUgcGFnZSB1cHBlciBkaXJlY3Rv cnkuDQoNCisgIEBwYXJhbSAgQWRkcmVzcyAgVGhlIGNvcnJlc3BvbmRpbmcgdmlydHVhbCBhZGRy ZXNzIG9mIHRoZSBwYWdlIHRhYmxlIGVudHJ5Lg0KDQorDQoNCisgIEByZXR2YWwgICAgICAgICAg QSBwb2ludGVyIHRvIHRoZSBwYWdlIHRhYmxlIGVudHJ5LiBSZXR1cm4gTlVMTCwgaWYgYWxsb2Nh dGUNCg0KKyAgICAgICAgICAgICAgICAgICB0aGUgbWVtb3J5IGJ1ZmZlciBpcyBmYWlsLg0KDQor KiovDQoNCitTVEFUSUMNCg0KK1BURSAqDQoNCitQdGVBbGxvY0dldCAoDQoNCisgIElOIFBNRCAg ICAqUG1kLA0KDQorICBJTiBVSU5UTiAgQWRkcmVzcw0KDQorICApDQoNCit7DQoNCisgIEVGSV9T VEFUVVMgIFN0YXR1czsNCg0KKw0KDQorICBpZiAoUE1EX0lTX0VNUFRZICgqUG1kKSkgew0KDQor ICAgIFN0YXR1cyA9IFB0ZUFsbG9jIChQbWQpOw0KDQorICAgIEFTU0VSVF9FRklfRVJST1IgKFN0 YXR1cyk7DQoNCisgICAgaWYgKEVGSV9FUlJPUiAoU3RhdHVzKSkgew0KDQorICAgICAgcmV0dXJu IE5VTEw7DQoNCisgICAgfQ0KDQorICB9DQoNCisNCg0KKyAgcmV0dXJuIFB0ZU9mZnNldCAoUG1k LCBBZGRyZXNzKTsNCg0KK30NCg0KKw0KDQorLyoqDQoNCisgIEdldHMgdGhlIHBoeXNpY2FsIGFk ZHJlc3Mgb2YgdGhlIHBhZ2UgdGFibGUgZW50cnkgY29ycmVzcG9uZGluZyB0byB0aGUgc3BlY2lm aWVkIHZpcnR1YWwgYWRkcmVzcy4NCg0KKw0KDQorICBAcGFyYW0gIEFkZHJlc3MgIFRoZSBjb3Jy ZXNwb25kaW5nIHZpcnR1YWwgYWRkcmVzcyBvZiB0aGUgcGFnZSB0YWJsZSBlbnRyeS4NCg0KKw0K DQorICBAcmV0dmFsICBBIHBvaW50ZXIgdG8gdGhlIHBhZ2UgdGFibGUgZW50cnkuDQoNCisgIEBy ZXR2YWwgIE5VTEwNCg0KKyoqLw0KDQorU1RBVElDDQoNCitQVEUgKg0KDQorR2V0UHRlQWRkcmVz cyAoDQoNCisgIElOIFVJTlROICBBZGRyZXNzDQoNCisgICkNCg0KK3sNCg0KKyAgUEdEICAqUGdk Ow0KDQorICBQVUQgICpQdWQ7DQoNCisgIFBNRCAgKlBtZDsNCg0KKw0KDQorICBQZ2QgPSBQZ2RP ZmZzZXQgKEFkZHJlc3MpOw0KDQorDQoNCisgIGlmIChQR0RfSVNfRU1QVFkgKCpQZ2QpKSB7DQoN CisgICAgcmV0dXJuIE5VTEw7DQoNCisgIH0NCg0KKw0KDQorICBQdWQgPSBQdWRPZmZzZXQgKFBn ZCwgQWRkcmVzcyk7DQoNCisNCg0KKyAgaWYgKFBVRF9JU19FTVBUWSAoKlB1ZCkpIHsNCg0KKyAg ICByZXR1cm4gTlVMTDsNCg0KKyAgfQ0KDQorDQoNCisgIFBtZCA9IFBtZE9mZnNldCAoUHVkLCBB ZGRyZXNzKTsNCg0KKyAgaWYgKFBNRF9JU19FTVBUWSAoKlBtZCkpIHsNCg0KKyAgICByZXR1cm4g TlVMTDsNCg0KKyAgfQ0KDQorDQoNCisgIGlmIChJU19IVUdFX1BBR0UgKFBtZC0+UG1kVmFsKSkg ew0KDQorICAgIHJldHVybiAoKFBURSAqKVBtZCk7DQoNCisgIH0NCg0KKw0KDQorICByZXR1cm4g UHRlT2Zmc2V0IChQbWQsIEFkZHJlc3MpOw0KDQorfQ0KDQorDQoNCisvKioNCg0KKyAgR2V0cyB0 aGUgQXR0cmlidXRlcyBvZiBIdWdlIFBhZ2UuDQoNCisNCg0KKyAgQHBhcmFtICBQbWQgIEEgcG9p bnRlciB0byB0aGUgcGFnZSBtaWRkbGUgZGlyZWN0b3J5Lg0KDQorDQoNCisgIEByZXR2YWwgICAg IFZhbHVlIG9mIEF0dHJpYnV0ZXMuDQoNCisqKi8NCg0KK1NUQVRJQw0KDQorVUlOVE4NCg0KK0dl dEh1Z2VQYWdlQXR0cmlidXRlcyAoDQoNCisgIElOICBQTUQgICpQbWQNCg0KKyAgKQ0KDQorew0K DQorICBVSU5UTiAgQXR0cmlidXRlczsNCg0KKyAgVUlOVE4gIEdsb2JhbEZsYWc7DQoNCisgIFVJ TlROICBIdWdlVmFsOw0KDQorDQoNCisgIEh1Z2VWYWwgICAgID0gUE1EX1ZBTCAoKlBtZCk7DQoN CisgIEF0dHJpYnV0ZXMgID0gSHVnZVZhbCAmICh+SFVHRVBfUEFHRV9NQVNLKTsNCg0KKyAgR2xv YmFsRmxhZyAgPSAoKEF0dHJpYnV0ZXMgJiAoMSA8PCBQQUdFX0hHTE9CQUxfU0hJRlQpKSA+PiBQ QUdFX0hHTE9CQUxfU0hJRlQpIDw8IFBBR0VfR0xPQkFMX1NISUZUOw0KDQorICBBdHRyaWJ1dGVz ICY9IH4oMSA8PCBQQUdFX0hHTE9CQUxfU0hJRlQpOw0KDQorICBBdHRyaWJ1dGVzIHw9IEdsb2Jh bEZsYWc7DQoNCisgIHJldHVybiBBdHRyaWJ1dGVzOw0KDQorfQ0KDQorDQoNCisvKioNCg0KKyAg RXN0YWJsaXNoZXMgYSBwYWdlIHRhYmxlIGVudHJ5IGJhc2VkIG9uIHRoZSBzcGVjaWZpZWQgbWVt b3J5IHJlZ2lvbi4NCg0KKw0KDQorICBAcGFyYW0gIFBtZCAgQSBwb2ludGVyIHRvIHRoZSBwYWdl IG1pZGRsZSBkaXJlY3RvcnkuDQoNCisgIEBwYXJhbSAgQWRkcmVzcyAgVGhlIG1lbW9yeSBzcGFj ZSBzdGFydCBhZGRyZXNzLg0KDQorICBAcGFyYW0gIEVuZCAgVGhlIGVuZCBhZGRyZXNzIG9mIHRo ZSBtZW1vcnkgc3BhY2UuDQoNCisgIEBwYXJhbSAgQXR0cmlidXRlcyAgTWVtb3J5IHNwYWNlIEF0 dHJpYnV0ZXMuDQoNCisNCg0KKyAgQHJldHZhbCAgICAgRUZJX1NVQ0NFU1MgICBUaGUgcGFnZSB0 YWJsZSBlbnRyeSB3YXMgY3JlYXRlZCBzdWNjZXNzZnVsbHkuDQoNCisgIEByZXR2YWwgICAgIEVG SV9PVVRfT0ZfUkVTT1VSQ0VTICBQYWdlIHRhYmxlIGVudHJ5IGVzdGFibGlzaG1lbnQgZmFpbGVk IGR1ZSB0byByZXNvdXJjZSBleGhhdXN0aW9uLg0KDQorKiovDQoNCitTVEFUSUMNCg0KK0VGSV9T VEFUVVMNCg0KK01lbW9yeU1hcFB0ZVJhbmdlICgNCg0KKyAgSU4gUE1EICAgICpQbWQsDQoNCisg IElOIFVJTlROICBBZGRyZXNzLA0KDQorICBJTiBVSU5UTiAgRW5kLA0KDQorICBJTiBVSU5UTiAg QXR0cmlidXRlcw0KDQorICApDQoNCit7DQoNCisgIFBURSAgICAgICpQdGU7DQoNCisgIFBURSAg ICAgIFB0ZVZhbDsNCg0KKyAgQk9PTEVBTiAgVXBEYXRlOw0KDQorDQoNCisgIFB0ZSA9IFB0ZUFs bG9jR2V0IChQbWQsIEFkZHJlc3MpOw0KDQorICBpZiAoIVB0ZSkgew0KDQorICAgIHJldHVybiBF RklfT1VUX09GX1JFU09VUkNFUzsNCg0KKyAgfQ0KDQorDQoNCisgIERFQlVHICgoDQoNCisgICAg REVCVUdfSU5GTywNCg0KKyAgICAiJWEgJWQgQWRkcmVzcyAlcCBFbmQgJXAgIEF0dHJpYnV0ZXMg JWxseFxuIiwNCg0KKyAgICBfX2Z1bmNfXywNCg0KKyAgICBfX0xJTkVfXywNCg0KKyAgICBBZGRy ZXNzLA0KDQorICAgIEVuZCwNCg0KKyAgICBBdHRyaWJ1dGVzDQoNCisgICAgKSk7DQoNCisNCg0K KyAgZG8gew0KDQorICAgIFVwRGF0ZSA9IEZBTFNFOw0KDQorICAgIFB0ZVZhbCA9IE1BS0VfUFRF IChBZGRyZXNzLCBBdHRyaWJ1dGVzKTsNCg0KKw0KDQorICAgIGlmICgoIVBURV9JU19FTVBUWSAo KlB0ZSkpICYmDQoNCisgICAgICAgIChQVEVfVkFMICgqUHRlKSAhPSBQVEVfVkFMIChQdGVWYWwp KSkNCg0KKyAgICB7DQoNCisgICAgICBVcERhdGUgPSBUUlVFOw0KDQorICAgIH0NCg0KKw0KDQor ICAgIFNldFB0ZSAoUHRlLCBQdGVWYWwpOw0KDQorICAgIGlmIChVcERhdGUpIHsNCg0KKyAgICAg IEludmFsaWRUbGIgKEFkZHJlc3MpOw0KDQorICAgIH0NCg0KKyAgfSB3aGlsZSAoUHRlKyssIEFk ZHJlc3MgKz0gRUZJX1BBR0VfU0laRSwgQWRkcmVzcyAhPSBFbmQpOw0KDQorDQoNCisgIHJldHVy biBFRklfU1VDQ0VTUzsNCg0KK30NCg0KKw0KDQorLyoqDQoNCisgIENvbnZlcnQgSHVnZSBQYWdl IHRvIFBhZ2UuDQoNCisNCg0KKyAgQHBhcmFtICBQbWQgIEEgcG9pbnRlciB0byB0aGUgcGFnZSBt aWRkbGUgZGlyZWN0b3J5Lg0KDQorICBAcGFyYW0gIEFkZHJlc3MgIFRoZSBtZW1vcnkgc3BhY2Ug c3RhcnQgYWRkcmVzcy4NCg0KKyAgQHBhcmFtICBFbmQgIFRoZSBlbmQgYWRkcmVzcyBvZiB0aGUg bWVtb3J5IHNwYWNlLg0KDQorICBAcGFyYW0gIEF0dHJpYnV0ZXMgIE1lbW9yeSBzcGFjZSBBdHRy aWJ1dGVzLg0KDQorDQoNCisgIEByZXR2YWwgIEVGSV9TVUNDRVNTICAgVGhlIHBhZ2UgdGFibGUg ZW50cnkgd2FzIGNyZWF0ZWQgc3VjY2Vzc2Z1bGx5Lg0KDQorICBAcmV0dmFsICBFRklfT1VUX09G X1JFU09VUkNFUyAgUGFnZSB0YWJsZSBlbnRyeSBlc3RhYmxpc2htZW50IGZhaWxlZCBkdWUgdG8g cmVzb3VyY2UgZXhoYXVzdGlvbi4NCg0KKyoqLw0KDQorU1RBVElDDQoNCitFRklfU1RBVFVTDQoN CitDb252ZXJ0SHVnZVBhZ2VUb1BhZ2UgKA0KDQorICBJTiAgUE1EICAgKlBtZCwNCg0KKyAgSU4g VUlOVE4gIEFkZHJlc3MsDQoNCisgIElOIFVJTlROICBFbmQsDQoNCisgIElOIFVJTlROICBBdHRy aWJ1dGVzDQoNCisgICkNCg0KK3sNCg0KKyAgVUlOVE4gICAgICAgT2xkQXR0cmlidXRlczsNCg0K KyAgVUlOVE4gICAgICAgSHVnZVBhZ2VFbmQ7DQoNCisgIFVJTlROICAgICAgIEh1Z2VQYWdlU3Rh cnQ7DQoNCisgIEVGSV9TVEFUVVMgIFN0YXR1czsNCg0KKw0KDQorICBTdGF0dXMgPSBFRklfU1VD Q0VTUzsNCg0KKw0KDQorICBpZiAoKFBNRF9JU19FTVBUWSAoKlBtZCkpIHx8DQoNCisgICAgICAo IUlTX0hVR0VfUEFHRSAoUG1kLT5QbWRWYWwpKSkNCg0KKyAgew0KDQorICAgIFN0YXR1cyB8PSBN ZW1vcnlNYXBQdGVSYW5nZSAoUG1kLCBBZGRyZXNzLCBFbmQsIEF0dHJpYnV0ZXMpOw0KDQorICB9 IGVsc2Ugew0KDQorICAgIE9sZEF0dHJpYnV0ZXMgPSBHZXRIdWdlUGFnZUF0dHJpYnV0ZXMgKFBt ZCk7DQoNCisgICAgaWYgKEF0dHJpYnV0ZXMgPT0gT2xkQXR0cmlidXRlcykgew0KDQorICAgICAg cmV0dXJuIFN0YXR1czsNCg0KKyAgICB9DQoNCisNCg0KKyAgICBTZXRQbWQgKFBtZCwgKFBURSAq KShJTlZBTElEX1BBR0UpKTsNCg0KKyAgICBIdWdlUGFnZVN0YXJ0ID0gQWRkcmVzcyAmIFBNRF9N QVNLOw0KDQorICAgIEh1Z2VQYWdlRW5kICAgPSBIdWdlUGFnZVN0YXJ0ICsgSFVHRV9QQUdFX1NJ WkU7DQoNCisgICAgQVNTRVJUIChIdWdlUGFnZUVuZCA+PSBFbmQpOw0KDQorDQoNCisgICAgaWYg KEFkZHJlc3MgPiBIdWdlUGFnZVN0YXJ0KSB7DQoNCisgICAgICBTdGF0dXMgfD0gTWVtb3J5TWFw UHRlUmFuZ2UgKFBtZCwgSHVnZVBhZ2VTdGFydCwgQWRkcmVzcywgT2xkQXR0cmlidXRlcyk7DQoN CisgICAgfQ0KDQorDQoNCisgICAgU3RhdHVzIHw9IE1lbW9yeU1hcFB0ZVJhbmdlIChQbWQsIEFk ZHJlc3MsIEVuZCwgQXR0cmlidXRlcyk7DQoNCisNCg0KKyAgICBpZiAoRW5kIDwgSHVnZVBhZ2VF bmQpIHsNCg0KKyAgICAgIFN0YXR1cyB8PSBNZW1vcnlNYXBQdGVSYW5nZSAoUG1kLCBFbmQsIEh1 Z2VQYWdlRW5kLCBPbGRBdHRyaWJ1dGVzKTsNCg0KKyAgICB9DQoNCisgIH0NCg0KKw0KDQorICBy ZXR1cm4gU3RhdHVzOw0KDQorfQ0KDQorDQoNCisvKioNCg0KKyAgRXN0YWJsaXNoZXMgYSBwYWdl IG1pZGRsZSBkaXJlY3RvcnkgYmFzZWQgb24gdGhlIHNwZWNpZmllZCBtZW1vcnkgcmVnaW9uLg0K DQorDQoNCisgIEBwYXJhbSAgUHVkICBBIHBvaW50ZXIgdG8gdGhlIHBhZ2UgdXBwZXIgZGlyZWN0 b3J5Lg0KDQorICBAcGFyYW0gIEFkZHJlc3MgIFRoZSBtZW1vcnkgc3BhY2Ugc3RhcnQgYWRkcmVz cy4NCg0KKyAgQHBhcmFtICBFbmQgIFRoZSBlbmQgYWRkcmVzcyBvZiB0aGUgbWVtb3J5IHNwYWNl Lg0KDQorICBAcGFyYW0gIEF0dHJpYnV0ZXMgIE1lbW9yeSBzcGFjZSBBdHRyaWJ1dGVzLg0KDQor DQoNCisgIEByZXR2YWwgICAgIEVGSV9TVUNDRVNTICAgVGhlIHBhZ2UgbWlkZGxlIGRpcmVjdG9y eSB3YXMgY3JlYXRlZCBzdWNjZXNzZnVsbHkuDQoNCisgIEByZXR2YWwgICAgIEVGSV9PVVRfT0Zf UkVTT1VSQ0VTICBQYWdlIG1pZGRsZSBkaXJlY3RvcnkgZXN0YWJsaXNobWVudCBmYWlsZWQgZHVl IHRvIHJlc291cmNlIGV4aGF1c3Rpb24uDQoNCisqKi8NCg0KK1NUQVRJQw0KDQorRUZJX1NUQVRV Uw0KDQorTWVtb3J5TWFwUG1kUmFuZ2UgKA0KDQorICBJTiBQVUQgICAgKlB1ZCwNCg0KKyAgSU4g VUlOVE4gIEFkZHJlc3MsDQoNCisgIElOIFVJTlROICBFbmQsDQoNCisgIElOIFVJTlROICBBdHRy aWJ1dGVzDQoNCisgICkNCg0KK3sNCg0KKyAgUE1EICAgICAgKlBtZDsNCg0KKyAgVUlOVE4gICAg TmV4dDsNCg0KKyAgUFRFICAgICAgUHRlVmFsOw0KDQorICBCT09MRUFOICBVcERhdGU7DQoNCisN Cg0KKyAgUG1kID0gUG1kQWxsb2NHZXQgKFB1ZCwgQWRkcmVzcyk7DQoNCisgIGlmIChQbWQgPT0g TlVMTCkgew0KDQorICAgIHJldHVybiBFRklfT1VUX09GX1JFU09VUkNFUzsNCg0KKyAgfQ0KDQor DQoNCisgIGRvIHsNCg0KKyAgICBOZXh0ID0gUE1EX0FERFJFU1NfRU5EIChBZGRyZXNzLCBFbmQp Ow0KDQorICAgIGlmICgoKEFkZHJlc3MgJiAoflBNRF9NQVNLKSkgPT0gMCkgJiYNCg0KKyAgICAg ICAgKChOZXh0ICYgICh+UE1EX01BU0spKSA9PSAwKSAmJg0KDQorICAgICAgICAoUE1EX0lTX0VN UFRZICgqUG1kKSB8fCBJU19IVUdFX1BBR0UgKFBtZC0+UG1kVmFsKSkpDQoNCisgICAgew0KDQor ICAgICAgVXBEYXRlID0gRkFMU0U7DQoNCisgICAgICBQdGVWYWwgPSBNQUtFX0hVR0VfUFRFIChB ZGRyZXNzLCBBdHRyaWJ1dGVzKTsNCg0KKw0KDQorICAgICAgaWYgKCghUE1EX0lTX0VNUFRZICgq UG1kKSkgJiYNCg0KKyAgICAgICAgICAoUE1EX1ZBTCAoKlBtZCkgIT0gUFRFX1ZBTCAoUHRlVmFs KSkpDQoNCisgICAgICB7DQoNCisgICAgICAgIFVwRGF0ZSA9IFRSVUU7DQoNCisgICAgICB9DQoN CisNCg0KKyAgICAgIFNldFBtZCAoUG1kLCAoUFRFICopUHRlVmFsLlB0ZVZhbCk7DQoNCisgICAg ICBpZiAoVXBEYXRlKSB7DQoNCisgICAgICAgIEludmFsaWRUbGIgKEFkZHJlc3MpOw0KDQorICAg ICAgfQ0KDQorICAgIH0gZWxzZSB7DQoNCisgICAgICBDb252ZXJ0SHVnZVBhZ2VUb1BhZ2UgKFBt ZCwgQWRkcmVzcywgTmV4dCwgQXR0cmlidXRlcyk7DQoNCisgICAgfQ0KDQorICB9IHdoaWxlIChQ bWQrKywgQWRkcmVzcyA9IE5leHQsIEFkZHJlc3MgIT0gRW5kKTsNCg0KKw0KDQorICByZXR1cm4g RUZJX1NVQ0NFU1M7DQoNCit9DQoNCisNCg0KKy8qKg0KDQorICBFc3RhYmxpc2hlcyBhIHBhZ2Ug dXBwZXIgZGlyZWN0b3J5IGJhc2VkIG9uIHRoZSBzcGVjaWZpZWQgbWVtb3J5IHJlZ2lvbi4NCg0K Kw0KDQorICBAcGFyYW0gIFBnZCAgQSBwb2ludGVyIHRvIHRoZSBwYWdlIGdsb2JhbCBkaXJlY3Rv cnkuDQoNCisgIEBwYXJhbSAgQWRkcmVzcyAgVGhlIG1lbW9yeSBzcGFjZSBzdGFydCBhZGRyZXNz Lg0KDQorICBAcGFyYW0gIEVuZCAgVGhlIGVuZCBhZGRyZXNzIG9mIHRoZSBtZW1vcnkgc3BhY2Uu DQoNCisgIEBwYXJhbSAgQXR0cmlidXRlcyAgTWVtb3J5IHNwYWNlIEF0dHJpYnV0ZXMuDQoNCisN Cg0KKyAgQHJldHZhbCAgICAgRUZJX1NVQ0NFU1MgICBUaGUgcGFnZSB1cHBlciBkaXJlY3Rvcnkg d2FzIGNyZWF0ZWQgc3VjY2Vzc2Z1bGx5Lg0KDQorICBAcmV0dmFsICAgICBFRklfT1VUX09GX1JF U09VUkNFUyAgUGFnZSB1cHBlciBkaXJlY3RvcnkgZXN0YWJsaXNobWVudCBmYWlsZWQgZHVlIHRv IHJlc291cmNlIGV4aGF1c3Rpb24uDQoNCisqKi8NCg0KK1NUQVRJQw0KDQorRUZJX1NUQVRVUw0K DQorTWVtb3J5TWFwUHVkUmFuZ2UgKA0KDQorICBJTiBQR0QgICAgKlBnZCwNCg0KKyAgSU4gVUlO VE4gIEFkZHJlc3MsDQoNCisgIElOIFVJTlROICBFbmQsDQoNCisgIElOIFVJTlROICBBdHRyaWJ1 dGVzDQoNCisgICkNCg0KK3sNCg0KKyAgUFVEICAgICpQdWQ7DQoNCisgIFVJTlROICBOZXh0Ow0K DQorDQoNCisgIFB1ZCA9IFB1ZEFsbG9jR2V0IChQZ2QsIEFkZHJlc3MpOw0KDQorICBpZiAoUHVk ID09IE5VTEwpIHsNCg0KKyAgICByZXR1cm4gRUZJX09VVF9PRl9SRVNPVVJDRVM7DQoNCisgIH0N Cg0KKw0KDQorICBkbyB7DQoNCisgICAgTmV4dCA9IFBVRF9BRERSRVNTX0VORCAoQWRkcmVzcywg RW5kKTsNCg0KKyAgICBpZiAoRUZJX0VSUk9SIChNZW1vcnlNYXBQbWRSYW5nZSAoUHVkLCBBZGRy ZXNzLCBOZXh0LCBBdHRyaWJ1dGVzKSkpIHsNCg0KKyAgICAgIHJldHVybiBFRklfT1VUX09GX1JF U09VUkNFUzsNCg0KKyAgICB9DQoNCisgIH0gd2hpbGUgKFB1ZCsrLCBBZGRyZXNzID0gTmV4dCwg QWRkcmVzcyAhPSBFbmQpOw0KDQorDQoNCisgIHJldHVybiBFRklfU1VDQ0VTUzsNCg0KK30NCg0K Kw0KDQorLyoqDQoNCisgIEVzdGFibGlzaGVzIGEgcGFnZSBnbG9iYWwgZGlyZWN0b3J5IGJhc2Vk IG9uIHRoZSBzcGVjaWZpZWQgbWVtb3J5IHJlZ2lvbi4NCg0KKw0KDQorICBAcGFyYW0gIFN0YXJ0 ICBUaGUgbWVtb3J5IHNwYWNlIHN0YXJ0IGFkZHJlc3MuDQoNCisgIEBwYXJhbSAgRW5kICBUaGUg ZW5kIGFkZHJlc3Mgb2YgdGhlIG1lbW9yeSBzcGFjZS4NCg0KKyAgQHBhcmFtICBBdHRyaWJ1dGVz ICBNZW1vcnkgc3BhY2UgQXR0cmlidXRlcy4NCg0KKw0KDQorICBAcmV0dmFsICAgICBFRklfU1VD Q0VTUyAgIFRoZSBwYWdlIGdsb2JhbCBkaXJlY3Rvcnkgd2FzIGNyZWF0ZWQgc3VjY2Vzc2Z1bGx5 Lg0KDQorICBAcmV0dmFsICAgICBFRklfT1VUX09GX1JFU09VUkNFUyAgUGFnZSBnbG9iYWwgZGly ZWN0b3J5IGVzdGFibGlzaG1lbnQgZmFpbGVkIGR1ZSB0byByZXNvdXJjZSBleGhhdXN0aW9uLg0K DQorKiovDQoNCitTVEFUSUMNCg0KK0VGSV9TVEFUVVMNCg0KK01lbW9yeU1hcFBhZ2VSYW5nZSAo DQoNCisgIElOIFVJTlROICBTdGFydCwNCg0KKyAgSU4gVUlOVE4gIEVuZCwNCg0KKyAgSU4gVUlO VE4gIEF0dHJpYnV0ZXMNCg0KKyAgKQ0KDQorew0KDQorICBQR0QgICAgICAgICAqUGdkOw0KDQor ICBVSU5UTiAgICAgICBOZXh0Ow0KDQorICBVSU5UTiAgICAgICBBZGRyZXNzOw0KDQorICBFRklf U1RBVFVTICBFcnI7DQoNCisNCg0KKyAgQWRkcmVzcyA9IFN0YXJ0Ow0KDQorDQoNCisgIC8qIEdl dCBQR0QoUFRFIFBNRCBQVUQgUEdEKSBpbiBQYWdlVGFibGVzICovDQoNCisgIFBnZCA9IFBnZE9m ZnNldCAoQWRkcmVzcyk7DQoNCisgIGRvIHsNCg0KKyAgICBOZXh0ID0gUEdEX0FERFJFU1NfRU5E IChBZGRyZXNzLCBFbmQpOw0KDQorICAgIC8qIEdldCBOZXh0IEFsaWduIFBhZ2UgdG8gTWFwICov DQoNCisgICAgRXJyID0gTWVtb3J5TWFwUHVkUmFuZ2UgKFBnZCwgQWRkcmVzcywgTmV4dCwgQXR0 cmlidXRlcyk7DQoNCisgICAgaWYgKEVycikgew0KDQorICAgICAgcmV0dXJuIEVycjsNCg0KKyAg ICB9DQoNCisgIH0gd2hpbGUgKFBnZCsrLCBBZGRyZXNzID0gTmV4dCwgQWRkcmVzcyAhPSBFbmQp Ow0KDQorDQoNCisgIHJldHVybiBFRklfU1VDQ0VTUzsNCg0KK30NCg0KKw0KDQorLyoqDQoNCisg IFBhZ2UgdGFibGVzIGFyZSBlc3RhYmxpc2hlZCBmcm9tIG1lbW9yeS1tYXBwZWQgdGFibGVzLg0K DQorDQoNCisgIEBwYXJhbSAgTWVtb3J5UmVnaW9uICAgQSBwb2ludGVyIHRvIGEgbWVtb3J5LW1h cHBlZCB0YWJsZSBlbnRyeS4NCg0KKw0KDQorICBAcmV0dmFsICAgICBFRklfU1VDQ0VTUyAgIFRo ZSBwYWdlIHRhYmxlIHdhcyBjcmVhdGVkIHN1Y2Nlc3NmdWxseS4NCg0KKyAgQHJldHZhbCAgICAg RUZJX09VVF9PRl9SRVNPVVJDRVMgIFBhZ2UgdGFibGUgIGVzdGFibGlzaG1lbnQgZmFpbGVkIGR1 ZSB0byByZXNvdXJjZSBleGhhdXN0aW9uLg0KDQorKiovDQoNCitFRklfU1RBVFVTDQoNCitGaWxs VHJhbnNsYXRpb25UYWJsZSAoDQoNCisgIElOICBNRU1PUllfUkVHSU9OX0RFU0NSSVBUT1IgICpN ZW1vcnlSZWdpb24NCg0KKyAgKQ0KDQorew0KDQorICByZXR1cm4gTWVtb3J5TWFwUGFnZVJhbmdl ICgNCg0KKyAgICAgICAgICAgTWVtb3J5UmVnaW9uLT5WaXJ0dWFsQmFzZSwNCg0KKyAgICAgICAg ICAgKE1lbW9yeVJlZ2lvbi0+TGVuZ3RoICsgTWVtb3J5UmVnaW9uLT5WaXJ0dWFsQmFzZSksDQoN CisgICAgICAgICAgIE1lbW9yeVJlZ2lvbi0+QXR0cmlidXRlcw0KDQorICAgICAgICAgICApOw0K DQorfQ0KDQorDQoNCisvKioNCg0KKyAgQ29udmVydCBFRkkgQXR0cmlidXRlcyB0byBMb29uZ2Fy Y2ggQXR0cmlidXRlcy4NCg0KKw0KDQorICBAcGFyYW1baW5dICBFZmlBdHRyaWJ1dGVzICAgICBF ZmkgQXR0cmlidXRlcy4NCg0KKw0KDQorICBAcmV0dmFsICBDb3JyZXNwb25kaW5nIGFyY2hpdGVj dHVyZSBhdHRyaWJ1dGVzLg0KDQorKiovDQoNCitVSU5UTg0KDQorRUZJQVBJDQoNCitFZmlBdHRy aWJ1dGVDb252ZXJzZSAoDQoNCisgIElOIFVJTlROICBFZmlBdHRyaWJ1dGVzDQoNCisgICkNCg0K K3sNCg0KKyAgVUlOVE4gIExvb25nQXJjaEF0dHJpYnV0ZXM7DQoNCisNCg0KKyAgTG9vbmdBcmNo QXR0cmlidXRlcyA9IFBBR0VfVkFMSUQgfCBQQUdFX0RJUlRZIHwgUExWX0tFUk5FTCB8IFBBR0Vf R0xPQkFMOw0KDQorDQoNCisgIHN3aXRjaCAoRWZpQXR0cmlidXRlcyAmIEVGSV9NRU1PUllfQ0FD SEVUWVBFX01BU0spIHsNCg0KKyAgICBjYXNlIEVGSV9NRU1PUllfVUM6DQoNCisgICAgICBMb29u Z0FyY2hBdHRyaWJ1dGVzIHw9IENBQ0hFX1NVQzsNCg0KKyAgICAgIGJyZWFrOw0KDQorICAgIGNh c2UgRUZJX01FTU9SWV9XQzoNCg0KKyAgICAgIExvb25nQXJjaEF0dHJpYnV0ZXMgfD0gQ0FDSEVf V1VDOw0KDQorICAgICAgYnJlYWs7DQoNCisgICAgY2FzZSBFRklfTUVNT1JZX1dUOg0KDQorICAg IGNhc2UgRUZJX01FTU9SWV9XQjoNCg0KKyAgICAgIExvb25nQXJjaEF0dHJpYnV0ZXMgfD0gQ0FD SEVfQ0M7DQoNCisgICAgICBicmVhazsNCg0KKyAgICBkZWZhdWx0Og0KDQorICAgICAgTG9vbmdB cmNoQXR0cmlidXRlcyB8PSBDQUNIRV9DQzsNCg0KKyAgICAgIGJyZWFrOw0KDQorICB9DQoNCisN Cg0KKyAgLy8gV3JpdGUgcHJvdGVjdGlvbiBhdHRyaWJ1dGVzDQoNCisgIGlmICgoKEVmaUF0dHJp YnV0ZXMgJiBFRklfTUVNT1JZX1JPKSAhPSAwKSB8fA0KDQorICAgICAgKChFZmlBdHRyaWJ1dGVz ICYgRUZJX01FTU9SWV9XUCkgIT0gMCkpDQoNCisgIHsNCg0KKyAgICBMb29uZ0FyY2hBdHRyaWJ1 dGVzICY9IH5QQUdFX0RJUlRZOw0KDQorICB9DQoNCisNCg0KKyAgaWYgKChFZmlBdHRyaWJ1dGVz ICYgRUZJX01FTU9SWV9SUCkgIT0gMCkgew0KDQorICAgIExvb25nQXJjaEF0dHJpYnV0ZXMgfD0g UEFHRV9OT19SRUFEOw0KDQorICB9DQoNCisNCg0KKyAgLy8gZVhlY3V0ZSBwcm90ZWN0aW9uIGF0 dHJpYnV0ZQ0KDQorICBpZiAoKEVmaUF0dHJpYnV0ZXMgJiBFRklfTUVNT1JZX1hQKSAhPSAwKSB7 DQoNCisgICAgTG9vbmdBcmNoQXR0cmlidXRlcyB8PSBQQUdFX05PX0VYRUM7DQoNCisgIH0NCg0K Kw0KDQorICByZXR1cm4gTG9vbmdBcmNoQXR0cmlidXRlczsNCg0KK30NCg0KKw0KDQorLyoqDQoN CisgIEZpbmRzIHRoZSBmaXJzdCBvZiB0aGUgbGVuZ3RoIGFuZCBtZW1vcnkgcHJvcGVydGllcyBv ZiB0aGUgbWVtb3J5IHJlZ2lvbiBjb3JyZXNwb25kaW5nDQoNCisgIHRvIHRoZSBzcGVjaWZpZWQg YmFzZSBhZGRyZXNzLg0KDQorDQoNCisgIEBwYXJhbVtpbl0gICAgICAgQmFzZUFkZHJlc3MgICAg ICAgVG8gZmluZCB0aGUgYmFzZSBhZGRyZXNzIG9mIHRoZSBtZW1vcnkgcmVnaW9uLg0KDQorICBA cGFyYW1baW4sIG91dF0gIFJlZ2lvbkxlbmd0aCAgICAgIFBvaW50ZXIgaG9sZGluZzoNCg0KKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLSBBdCBlbnRyeSwgdGhlIGxlbmd0 aCBvZiB0aGUgbWVtb3J5IHJlZ2lvbg0KDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGV4cGVjdGVkIHRvIGJlIGZvdW5kLg0KDQorICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAtIEF0IGV4aXQsIHRoZSBsZW5ndGggb2YgdGhlIG1lbW9yeSByZWdp b24gZm91bmQuDQoNCisgIEBwYXJhbVtvdXRdICAgICAgUmVnaW9uQXR0cmlidXRlcyAgUHJvcGVy dGllcyBvZiB0aGUgbWVtb3J5IHJlZ2lvbiBmb3VuZC4NCg0KKw0KDQorICBAcmV0dmFsICBFRklf U1VDQ0VTUyAgICAgICAgICAgVGhlIGNvcnJlc3BvbmRpbmcgbWVtb3J5IGFyZWEgd2FzIHN1Y2Nl c3NmdWxseSBmb3VuZA0KDQorICAgICAgICAgICBFRklfTk9UX0ZPVU5EICAgICAgICAgTm8gbWVt b3J5IGFyZWEgZm91bmQNCg0KKyAgICAgICAgICAgRUZJX09VVF9PRl9SRVNPVVJDRVMgIEJhc2Ug YWRkcmVzcyBvciBleHBlY3RlZCBtZW1vcnkgcmVnaW9uIGV4Y2VlZHMgdGhlIG1heGltdW0NCg0K KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZHJlc3MuDQoNCisqKi8NCg0KK0VG SV9TVEFUVVMNCg0KK0VGSUFQSQ0KDQorR2V0TWVtb3J5UmVnaW9uQXR0cmlidXRlcyAoDQoNCisg IElOICAgICBVSU5UTiAgQmFzZUFkZHJlc3MsDQoNCisgIElOIE9VVCBVSU5UTiAgKlJlZ2lvbkxl bmd0aCwNCg0KKyAgT1VUICAgIFVJTlROICAqUmVnaW9uQXR0cmlidXRlcw0KDQorICApDQoNCit7 DQoNCisgIFBURSAgICAqUHRlOw0KDQorICBVSU5UTiAgQXR0cmlidXRlczsNCg0KKyAgVUlOVE4g IEF0dHJpYnV0ZXNUbXA7DQoNCisgIFVJTlROICBNYXhBZGRyZXNzOw0KDQorICBVSU5UTiAgRW5k QWRkcmVzczsNCg0KKyAgVUlOVE4gIEFkZFNpemU7DQoNCisNCg0KKyAgaWYgKCFNbXVJc0luaXQg KCkpIHsNCg0KKyAgICByZXR1cm4gRUZJX1VOU1VQUE9SVEVEOw0KDQorICB9DQoNCisNCg0KKyAg RW5kQWRkcmVzcyA9IEJhc2VBZGRyZXNzICsgKlJlZ2lvbkxlbmd0aDsNCg0KKyAgTWF4QWRkcmVz cyA9IExTaGlmdFU2NCAoMVVMTCwgTUFYX1ZBX0JJVFMpIC0gMTsNCg0KKw0KDQorICAvLyBDbGVh biB0aGUgdmFsdWUgdG8gcHJlcGFyZSBvdXRwdXQgdG8gZmluZCByZWdpb24gc2l6ZS4NCg0KKyAg KlJlZ2lvbkxlbmd0aCA9IDB4MDsNCg0KKw0KDQorICBpZiAoKEJhc2VBZGRyZXNzID49IE1heEFk ZHJlc3MpIHx8IChFbmRBZGRyZXNzID49IE1heEFkZHJlc3MpKSB7DQoNCisgICAgcmV0dXJuIEVG SV9PVVRfT0ZfUkVTT1VSQ0VTOw0KDQorICB9DQoNCisNCg0KKyAgUHRlID0gR2V0UHRlQWRkcmVz cyAoQmFzZUFkZHJlc3MpOw0KDQorDQoNCisgIGlmIChQdGUgPT0gTlVMTCkgew0KDQorICAgIHJl dHVybiBFRklfTk9UX0ZPVU5EOw0KDQorICB9DQoNCisNCg0KKyAgQXR0cmlidXRlcyA9IEdFVF9Q QUdFX0FUVFJJQlVURVMgKCpQdGUpOw0KDQorICBpZiAoSVNfSFVHRV9QQUdFIChQdGUtPlB0ZVZh bCkpIHsNCg0KKyAgICAqUmVnaW9uQXR0cmlidXRlcyA9IEF0dHJpYnV0ZXMgJiAofihQQUdFX0hV R0UpKTsNCg0KKyAgfSBlbHNlIHsNCg0KKyAgICAqUmVnaW9uQXR0cmlidXRlcyA9IEF0dHJpYnV0 ZXM7DQoNCisgIH0NCg0KKw0KDQorICBkbyB7DQoNCisgICAgUHRlID0gR2V0UHRlQWRkcmVzcyAo QmFzZUFkZHJlc3MpOw0KDQorICAgIGlmIChQdGUgPT0gTlVMTCkgew0KDQorICAgICAgcmV0dXJu IEVGSV9TVUNDRVNTOw0KDQorICAgIH0NCg0KKw0KDQorICAgIEF0dHJpYnV0ZXNUbXAgPSBHRVRf UEFHRV9BVFRSSUJVVEVTICgqUHRlKTsNCg0KKyAgICBpZiAoQXR0cmlidXRlc1RtcCA9PSBBdHRy aWJ1dGVzKSB7DQoNCisgICAgICBpZiAoSVNfSFVHRV9QQUdFIChQdGUtPlB0ZVZhbCkpIHsNCg0K KyAgICAgICAgQWRkU2l6ZSA9IEhVR0VfUEFHRV9TSVpFOw0KDQorICAgICAgfSBlbHNlIHsNCg0K KyAgICAgICAgQWRkU2l6ZSA9IEVGSV9QQUdFX1NJWkU7DQoNCisgICAgICB9DQoNCisNCg0KKyAg ICAgICpSZWdpb25MZW5ndGggKz0gQWRkU2l6ZTsNCg0KKyAgICAgIEJhc2VBZGRyZXNzICAgKz0g QWRkU2l6ZTsNCg0KKyAgICB9IGVsc2Ugew0KDQorICAgICAgcmV0dXJuIEVGSV9TVUNDRVNTOw0K DQorICAgIH0NCg0KKyAgfSB3aGlsZSAoQmFzZUFkZHJlc3MgPD0gRW5kQWRkcmVzcyk7DQoNCisN Cg0KKyAgcmV0dXJuIEVGSV9TVUNDRVNTOw0KDQorfQ0KDQorDQoNCisvKioNCg0KKyAgU2V0cyB0 aGUgQXR0cmlidXRlcyAgb2YgdGhlIHNwZWNpZmllZCBtZW1vcnkgcmVnaW9uDQoNCisNCg0KKyAg QHBhcmFtW2luXSAgQmFzZUFkZHJlc3MgICAgVGhlIGJhc2UgYWRkcmVzcyBvZiB0aGUgbWVtb3J5 IHJlZ2lvbiB0byBzZXQgdGhlIEF0dHJpYnV0ZXMuDQoNCisgIEBwYXJhbVtpbl0gIExlbmd0aCAg ICAgICAgIFRoZSBsZW5ndGggb2YgdGhlIG1lbW9yeSByZWdpb24gdG8gc2V0IHRoZSBBdHRyaWJ1 dGVzLg0KDQorICBAcGFyYW1baW5dICBBdHRyaWJ1dGVzICAgICBUaGUgQXR0cmlidXRlcyB0byBi ZSBzZXQuDQoNCisgIEBwYXJhbVtpbl0gIEF0dHJpYnV0ZU1hc2sgIE1hc2sgb2YgbWVtb3J5IGF0 dHJpYnV0ZXMgdG8gdGFrZSBpbnRvIGFjY291bnQuDQoNCisNCg0KKyAgQHJldHZhbCAgRUZJX1NV Q0NFU1MgICAgVGhlIEF0dHJpYnV0ZXMgd2FzIHNldCBzdWNjZXNzZnVsbHkNCg0KKyoqLw0KDQor RUZJX1NUQVRVUw0KDQorRUZJQVBJDQoNCitTZXRNZW1vcnlSZWdpb25BdHRyaWJ1dGVzICgNCg0K KyAgSU4gRUZJX1BIWVNJQ0FMX0FERFJFU1MgIEJhc2VBZGRyZXNzLA0KDQorICBJTiBVSU5UTiAg ICAgICAgICAgICAgICAgTGVuZ3RoLA0KDQorICBJTiBVSU5UTiAgICAgICAgICAgICAgICAgQXR0 cmlidXRlcywNCg0KKyAgSU4gVUlOVDY0ICAgICAgICAgICAgICAgIEF0dHJpYnV0ZU1hc2sNCg0K KyAgKQ0KDQorew0KDQorICBFRklfU1RBVFVTICBTdGF0dXM7DQoNCisNCg0KKyAgaWYgKCFNbXVJ c0luaXQgKCkpIHsNCg0KKyAgICByZXR1cm4gRUZJX1VOU1VQUE9SVEVEOw0KDQorICB9DQoNCisN Cg0KKyAgQXR0cmlidXRlcyA9IEVmaUF0dHJpYnV0ZUNvbnZlcnNlIChBdHRyaWJ1dGVzKTsNCg0K KyAgU3RhdHVzICAgICA9IE1lbW9yeU1hcFBhZ2VSYW5nZSAoQmFzZUFkZHJlc3MsIEJhc2VBZGRy ZXNzICsgTGVuZ3RoLCBBdHRyaWJ1dGVzKTsNCg0KKyAgQVNTRVJUX0VGSV9FUlJPUiAoU3RhdHVz KTsNCg0KKw0KDQorICByZXR1cm4gU3RhdHVzOw0KDQorfQ0KDQorDQoNCisvKioNCg0KKyAgQ2hl Y2sgdG8gc2VlIGlmIG1tdSBzdWNjZXNzZnVsbHkgaW5pdGlhbGl6ZXMgYW5kIHNhdmVzIHRoZSBy ZXN1bHQuDQoNCisNCg0KKyAgQHBhcmFtW2luXSAgSW1hZ2VIYW5kbGUgIFRoZSBmaXJtd2FyZSBh bGxvY2F0ZWQgaGFuZGxlIGZvciB0aGUgRUZJIGltYWdlLg0KDQorICBAcGFyYW1baW5dICBTeXN0 ZW1UYWJsZSAgQSBwb2ludGVyIHRvIHRoZSBFRkkgU3lzdGVtIFRhYmxlLg0KDQorDQoNCisgIEBy ZXR2YWwgIFJFVFVSTl9TVUNDRVNTICAgIEluaXRpYWxpemF0aW9uIHN1Y2NlZWRlZC4NCg0KKyoq Lw0KDQorUkVUVVJOX1NUQVRVUw0KDQorTW11SW5pdGlhbGl6ZSAoDQoNCisgIElOIEVGSV9IQU5E TEUgICAgICAgIEltYWdlSGFuZGxlLA0KDQorICBJTiBFRklfU1lTVEVNX1RBQkxFICAqU3lzdGVt VGFibGUNCg0KKyAgKQ0KDQorew0KDQorICBpZiAoU1dBUF9QQUdFX0RJUiAhPSAwKSB7DQoNCisg ICAgbU1tdUluaXRlZCA9IFRSVUU7DQoNCisgIH0NCg0KKw0KDQorICByZXR1cm4gUkVUVVJOX1NV Q0NFU1M7DQoNCit9DQoNCmRpZmYgLS1naXQgYS9VZWZpQ3B1UGtnL0xpYnJhcnkvQ3B1TW11TGli L0xvb25nQXJjaDY0L0NvbW1vbk1tdUxpYi5oIGIvVWVmaUNwdVBrZy9MaWJyYXJ5L0NwdU1tdUxp Yi9Mb29uZ0FyY2g2NC9Db21tb25NbXVMaWIuaA0KDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KDQpp bmRleCAwMDAwMDAwMDAwLi5kOGM5MjJjOGZhDQoNCi0tLSAvZGV2L251bGwNCg0KKysrIGIvVWVm aUNwdVBrZy9MaWJyYXJ5L0NwdU1tdUxpYi9Mb29uZ0FyY2g2NC9Db21tb25NbXVMaWIuaA0KDQpA QCAtMCwwICsxLDQzIEBADQoNCisvKiogQGZpbGUNCg0KKw0KDQorICBDb3B5cmlnaHQgKGMpIDIw MjQgTG9vbmdzb24gVGVjaG5vbG9neSBDb3Jwb3JhdGlvbiBMaW1pdGVkLiBBbGwgcmlnaHRzIHJl c2VydmVkLjxCUj4NCg0KKw0KDQorICBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xh dXNlLVBhdGVudA0KDQorDQoNCisgIEBwYXIgR2xvc3Nhcnk6DQoNCisgICAgLSBEaXIgICAgLSBE aXJlY3RvcnkNCg0KKyoqLw0KDQorDQoNCisjaWZuZGVmICBNTVVfTElCX0NPUkVfSF8NCg0KKyNk ZWZpbmUgIE1NVV9MSUJfQ09SRV9IXw0KDQorDQoNCisvKioNCg0KKyAgSXRlcmF0ZXMgdGhyb3Vn aCB0aGUgcGFnZSBkaXJlY3RvcnkgdG8gaW5pdGlhbGl6ZSBpdC4NCg0KKw0KDQorICBAcGFyYW0g IERzdCAgQSBwb2ludGVyIHRvIHRoZSBkaXJlY3Rvcnkgb2YgdGhlIHBhZ2UgdG8gaW5pdGlhbGl6 ZS4NCg0KKyAgQHBhcmFtICBOdW0gIFRoZSBudW1iZXIgb2YgcGFnZSBkaXJlY3RvcmllcyB0byBp bml0aWFsaXplLg0KDQorICBAcGFyYW0gIFNyYyAgQSBwb2ludGVyIHRvIHRoZSBkYXRhIHVzZWQg dG8gaW5pdGlhbGl6ZSB0aGUgcGFnZSBkaXJlY3RvcnkuDQoNCisNCg0KKyAgQHJldHZhbCBWT0lE Lg0KDQorKiovDQoNCitWT0lEDQoNCitQYWdlRGlySW5pdCAoDQoNCisgIElOIFZPSUQgICAqZGVz dCwNCg0KKyAgSU4gVUlOVE4gIENvdW50LA0KDQorICBJTiBWT0lEICAgKnNyYw0KDQorICApOw0K DQorDQoNCisvKioNCg0KKyAgUGFnZSB0YWJsZXMgYXJlIGVzdGFibGlzaGVkIGZyb20gbWVtb3J5 LW1hcHBlZCB0YWJsZXMuDQoNCisNCg0KKyAgQHBhcmFtICBNZW1vcnlSZWdpb24gICBBIHBvaW50 ZXIgdG8gYSBtZW1vcnktbWFwcGVkIHRhYmxlIGVudHJ5Lg0KDQorDQoNCisgIEByZXR2YWwgICAg IEVGSV9TVUNDRVNTICAgVGhlIHBhZ2UgdGFibGUgd2FzIGNyZWF0ZWQgc3VjY2Vzc2Z1bGx5Lg0K DQorICBAcmV0dmFsICAgICBFRklfT1VUX09GX1JFU09VUkNFUyAgUGFnZSB0YWJsZSAgZXN0YWJs aXNobWVudCBmYWlsZWQgZHVlIHRvIHJlc291cmNlIGV4aGF1c3Rpb24uDQoNCisqKi8NCg0KK0VG SV9TVEFUVVMNCg0KK0ZpbGxUcmFuc2xhdGlvblRhYmxlICgNCg0KKyAgSU4gIE1FTU9SWV9SRUdJ T05fREVTQ1JJUFRPUiAgKk1lbW9yeVJlZ2lvbg0KDQorICApOw0KDQorDQoNCisjZW5kaWYgLy8g TU1VX0xJQl9DT1JFX0hfDQoNCmRpZmYgLS1naXQgYS9VZWZpQ3B1UGtnL0xpYnJhcnkvQ3B1TW11 TGliL0xvb25nQXJjaDY0L1BhZ2UuaCBiL1VlZmlDcHVQa2cvTGlicmFyeS9DcHVNbXVMaWIvTG9v bmdBcmNoNjQvUGFnZS5oDQoNCm5ldyBmaWxlIG1vZGUgMTAwNjQ0DQoNCmluZGV4IDAwMDAwMDAw MDAuLmJhYzRmNTIzMjcNCg0KLS0tIC9kZXYvbnVsbA0KDQorKysgYi9VZWZpQ3B1UGtnL0xpYnJh cnkvQ3B1TW11TGliL0xvb25nQXJjaDY0L1BhZ2UuaA0KDQpAQCAtMCwwICsxLDI3OSBAQA0KDQor LyoqIEBmaWxlDQoNCisNCg0KKyAgQ29weXJpZ2h0IChjKSAyMDI0IExvb25nc29uIFRlY2hub2xv Z3kgQ29ycG9yYXRpb24gTGltaXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC48QlI+DQoNCisNCg0K KyAgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZS1QYXRlbnQNCg0KKw0KDQor ICBAcGFyIEdsb3NzYXJ5Og0KDQorICAgIC0gUGdkIG9yIFBnZCBvciBQR0QgICAgLSBQYWdlIEds b2JhbCBEaXJlY3RvcnkNCg0KKyAgICAtIFB1ZCBvciBQdWQgb3IgUFVEICAgIC0gUGFnZSBVcHBl ciBEaXJlY3RvcnkNCg0KKyAgICAtIFBtZCBvciBQbWQgb3IgUE1EICAgIC0gUGFnZSBNaWRkbGUg RGlyZWN0b3J5DQoNCisgICAgLSBQdGUgb3IgcHRlIG9yIFBURSAgICAtIFBhZ2UgVGFibGUgRW50 cnkNCg0KKyAgICAtIFZhbCBvciBWQUwgb3IgdmFsICAgIC0gVmFsdWUNCg0KKyAgICAtIERpciAg ICAtIERpcmVjdG9yeQ0KDQorKiovDQoNCisNCg0KKyNpZm5kZWYgUEFHRV9IXw0KDQorI2RlZmlu ZSBQQUdFX0hfDQoNCisNCg0KKyNpbmNsdWRlIDxMaWJyYXJ5L0NwdU1tdUxpYi5oPg0KDQorDQoN CisjZGVmaW5lIE1BWF9WQV9CSVRTICA0Nw0KDQorI2RlZmluZSBQR0RfV0lERSAgICAgKDgpDQoN CisjZGVmaW5lIFBVRF9XSURFICAgICAoOSkNCg0KKyNkZWZpbmUgUE1EX1dJREUgICAgICg5KQ0K DQorI2RlZmluZSBQVEVfV0lERSAgICAgKDkpDQoNCisNCg0KKyNkZWZpbmUgRU5UUllTX1BFUl9Q R0QgICgxIDw8IFBHRF9XSURFKQ0KDQorI2RlZmluZSBFTlRSWVNfUEVSX1BVRCAgKDEgPDwgUFVE X1dJREUpDQoNCisjZGVmaW5lIEVOVFJZU19QRVJfUE1EICAoMSA8PCBQTURfV0lERSkNCg0KKyNk ZWZpbmUgRU5UUllTX1BFUl9QVEUgICgxIDw8IFBURV9XSURFKQ0KDQorDQoNCisjZGVmaW5lIFBH RF9TSElGVCAgKFBVRF9TSElGVCArIFBVRF9XSURFKQ0KDQorI2RlZmluZSBQVURfU0hJRlQgIChQ TURfU0hJRlQgKyBQTURfV0lERSkNCg0KKyNkZWZpbmUgUE1EX1NISUZUICAoRUZJX1BBR0VfU0hJ RlQgKyBQVEVfV0lERSkNCg0KKyNkZWZpbmUgUFRFX1NISUZUICAoRUZJX1BBR0VfU0hJRlQpDQoN CisNCg0KKyNkZWZpbmUgUEdEX1NJWkUgICgxVUwgPDwgUEdEX1NISUZUKQ0KDQorI2RlZmluZSBQ VURfU0laRSAgKDFVTCA8PCBQVURfU0hJRlQpDQoNCisjZGVmaW5lIFBNRF9TSVpFICAoMVVMIDw8 IFBNRF9TSElGVCkNCg0KKw0KDQorI2RlZmluZSBQR0RfTUFTSyAgICh+KFBHRF9TSVpFLTEpKQ0K DQorI2RlZmluZSBQVURfTUFTSyAgICh+KFBVRF9TSVpFLTEpKQ0KDQorI2RlZmluZSBQTURfTUFT SyAgICh+KFBNRF9TSVpFLTEpKQ0KDQorI2RlZmluZSBQQUdFX01BU0sgICh+KEVGSV9QQUdFX1NJ WkUgLSAxKSkNCg0KKyNkZWZpbmUgUEZOX01BU0sgICAofigoKFVJTlROKSgxKSA8PCAoRUZJX1BB R0VfU0hJRlQpKSAtIDEpICYgXA0KDQorICAgICAgICAgICAgICAgICAgICgoKFVJTlROKSgxKSA8 PCAoUEFHRV9QRk5fRU5EX1NISUZUKSkgLSAxKSkNCg0KKw0KDQorI2RlZmluZSBIVUdFUF9QQUdF X01BU0sgICh+KCgoVUlOVE4pKDEpIDw8IChQTURfU0hJRlQpKSAtIDEpICYgXA0KDQorICAgICAg ICAgICAgICAgICAgICAgICAgICAoKChVSU5UTikoMSkgPDwgKFBBR0VfUEZOX0VORF9TSElGVCkp IC0gMSkpDQoNCisNCg0KKyNkZWZpbmUgSU5WQUxJRF9QQUdFICAwDQoNCisNCg0KK3R5cGVkZWYg c3RydWN0IHsNCg0KKyAgVUlOVE4gICAgUGdkVmFsOw0KDQorfSBQR0Q7DQoNCit0eXBlZGVmIHN0 cnVjdCB7DQoNCisgIFVJTlROICAgIFB1ZFZhbDsNCg0KK30gUFVEOw0KDQordHlwZWRlZiBzdHJ1 Y3Qgew0KDQorICBVSU5UTiAgICBQbWRWYWw7DQoNCit9IFBNRDsNCg0KK3R5cGVkZWYgc3RydWN0 IHsNCg0KKyAgVUlOVE4gICAgUHRlVmFsOw0KDQorfSBQVEU7DQoNCisNCg0KKy8qKg0KDQorICBH ZXRzIHRoZSB2YWx1ZSBvZiB0aGUgcGFnZSBnbG9iYWwgZGlyZWN0b3J5IHRhYmxlIGVudHJ5Lg0K DQorDQoNCisgIEBwYXJhbSAgeCAgICBQYWdlIGdsb2JhbCBkaXJlY3Rvcnkgc3RydWN0IHZhcmlh Ymxlcy4NCg0KKw0KDQorICBAcmV0dmFsICAgdGhlIHZhbHVlIG9mIHRoZSBwYWdlIGdsb2JhbCBk aXJlY3RvcnkgdGFibGUgZW50cnkuDQoNCisgKiovDQoNCisjZGVmaW5lIFBHRF9WQUwoeCkgICgo eCkuUGdkVmFsKQ0KDQorDQoNCisvKioNCg0KKyAgR2V0cyB0aGUgdmFsdWUgb2YgdGhlIHBhZ2Ug dXBwZXIgZGlyZWN0b3J5IHRhYmxlIGVudHJ5Lg0KDQorDQoNCisgIEBwYXJhbSAgeCAgICBQYWdl IHVwcGVyIGRpcmVjdG9yeSBzdHJ1Y3QgdmFyaWFibGVzLg0KDQorDQoNCisgIEByZXR2YWwgIHRo ZSB2YWx1ZSBvZiB0aGUgcGFnZSB1cHBlciBkaXJlY3RvcnkgdGFibGUgZW50cnkuDQoNCisgKiov DQoNCisjZGVmaW5lIFBVRF9WQUwoeCkgICgoeCkuUHVkVmFsKQ0KDQorDQoNCisvKioNCg0KKyAg R2V0cyB0aGUgdmFsdWUgb2YgdGhlIHBhZ2UgbWlkZGxlIGRpcmVjdG9yeSB0YWJsZSBlbnRyeS4N Cg0KKw0KDQorICBAcGFyYW0gIHggICAgUGFnZSBtaWRkbGUgZGlyZWN0b3J5IHN0cnVjdCB2YXJp YWJsZXMuDQoNCisNCg0KKyAgQHJldHZhbCAgdGhlIHZhbHVlIG9mIHRoZSBwYWdlIG1pZGRsZSBk aXJlY3RvcnkgdGFibGUgZW50cnkuDQoNCisgKiovDQoNCisjZGVmaW5lIFBNRF9WQUwoeCkgICgo eCkuUG1kVmFsKQ0KDQorDQoNCisvKioNCg0KKyAgR2V0cyB0aGUgdmFsdWUgb2YgdGhlIHBhZ2Ug dGFibGUgZW50cnkuDQoNCisNCg0KKyAgQHBhcmFtICB4ICAgIFBhZ2UgdGFibGUgZW50cnkgc3Ry dWN0IHZhcmlhYmxlcy4NCg0KKw0KDQorICBAcmV0dmFsICB0aGUgdmFsdWUgb2YgdGhlIHBhZ2Ug dGFibGUgZW50cnkuDQoNCisgKiovDQoNCisjZGVmaW5lIFBURV9WQUwoeCkgICgoeCkuUHRlVmFs KQ0KDQorDQoNCisjZGVmaW5lIFBHRF9UQUJMRV9TSVpFICAoRU5UUllTX1BFUl9QR0QgKiBzaXpl b2YoUEdEKSkNCg0KKyNkZWZpbmUgUFVEX1RBQkxFX1NJWkUgIChFTlRSWVNfUEVSX1BVRCAqIHNp emVvZihQVUQpKQ0KDQorI2RlZmluZSBQTURfVEFCTEVfU0laRSAgKEVOVFJZU19QRVJfUE1EICog c2l6ZW9mKFBNRCkpDQoNCisjZGVmaW5lIFBURV9UQUJMRV9TSVpFICAoRU5UUllTX1BFUl9QVEUg KiBzaXplb2YoUFRFKSkNCg0KKw0KDQorLyoqDQoNCisgIEdldHMgdGhlIHBoeXNpY2FsIGFkZHJl c3Mgb2YgdGhlIHJlY29yZCBpbiB0aGUgcGFnZSB0YWJsZSBlbnRyeS4NCg0KKw0KDQorICBAcGFy YW0gIHggICAgUGFnZSB0YWJsZSBlbnRyeSBzdHJ1Y3QgdmFyaWFibGVzLg0KDQorDQoNCisgIEBy ZXR2YWwgIHRoZSB2YWx1ZSBvZiB0aGUgcGh5c2ljYWwgYWRkcmVzcy4NCg0KKyAqKi8NCg0KKyNk ZWZpbmUgR0VUX1BBR0VfQVRUUklCVVRFUyh4KSAgKFVJTlROKSB7KFBURV9WQUwoeCkgJiB+UEZO X01BU0spfQ0KDQorDQoNCisvKioNCg0KKyAgR2V0cyB0aGUgdmlydHVhbCBhZGRyZXNzIG9mIHRo ZSBuZXh0IGJsb2NrIG9mIHRoZSBzcGVjaWZpZWQgdmlydHVhbCBhZGRyZXNzDQoNCisgIHRoYXQg aXMgYWxpZ25lZCB3aXRoIHRoZSBzaXplIG9mIHRoZSBnbG9iYWwgcGFnZSBkaXJlY3RvcnkgbWFw cGluZy4NCg0KKw0KDQorICBAcGFyYW0gIEFkZHJlc3MgIFNwZWNpZmllcyB0aGUgdmlydHVhbCBh ZGRyZXNzLg0KDQorICBAcGFyYW0gIEVuZCAgICBUaGUgZW5kIGFkZHJlc3Mgb2YgdGhlIG1lbW9y eSByZWdpb24uDQoNCisNCg0KKyAgQHJldHZhbCAgIHRoZSBzcGVjaWZpZWQgdmlydHVhbCBhZGRy ZXNzICBvZiB0aGUgbmV4dCBibG9jay4NCg0KKyAqKi8NCg0KKyNkZWZpbmUgUEdEX0FERFJFU1Nf RU5EKEFkZHJlc3MsIEVuZCkgICAgICAgICAgICAgICAgICBcDQoNCisoeyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXA0KDQorICBVSU5UTiBCb3Vu ZGFyeSA9ICgoQWRkcmVzcykgKyBQR0RfU0laRSkgJiBQR0RfTUFTSzsgIFwNCg0KKyAgKEJvdW5k YXJ5IC0gMSA8IChFbmQpIC0gMSk/IEJvdW5kYXJ5OiAoRW5kKTsgICAgICAgICBcDQoNCit9KQ0K DQorDQoNCisvKioNCg0KKyAgR2V0cyB0aGUgdmlydHVhbCBhZGRyZXNzIG9mIHRoZSBuZXh0IGJs b2NrIG9mIHRoZSBzcGVjaWZpZWQgdmlydHVhbCBhZGRyZXNzDQoNCisgIHRoYXQgaXMgYWxpZ25l ZCB3aXRoIHRoZSBzaXplIG9mIHRoZSBwYWdlIHVwcGVyIGRpcmVjdG9yeSBtYXBwaW5nLg0KDQor DQoNCisgIEBwYXJhbSAgQWRkcmVzcyAgU3BlY2lmaWVzIHRoZSB2aXJ0dWFsIGFkZHJlc3MuDQoN CisgIEBwYXJhbSAgRW5kICAgIFRoZSBlbmQgYWRkcmVzcyBvZiB0aGUgbWVtb3J5IHJlZ2lvbi4N Cg0KKw0KDQorICBAcmV0dmFsICAgdGhlIHNwZWNpZmllZCB2aXJ0dWFsIGFkZHJlc3MgIG9mIHRo ZSBuZXh0IGJsb2NrLg0KDQorICoqLw0KDQorI2RlZmluZSBQVURfQUREUkVTU19FTkQoQWRkcmVz cywgRW5kKSAgICAgICAgICAgICAgICAgIFwNCg0KKyh7ICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQoNCisgIFVJTlROIEJvdW5kYXJ5ID0gKChB ZGRyZXNzKSArIFBVRF9TSVpFKSAmIFBVRF9NQVNLOyAgXA0KDQorICAoQm91bmRhcnkgLSAxIDwg KEVuZCkgLSAxKT8gQm91bmRhcnk6IChFbmQpOyAgICAgICAgIFwNCg0KK30pDQoNCisNCg0KKy8q Kg0KDQorICBHZXRzIHRoZSB2aXJ0dWFsIGFkZHJlc3Mgb2YgdGhlIG5leHQgYmxvY2sgb2YgdGhl IHNwZWNpZmllZCB2aXJ0dWFsIGFkZHJlc3MNCg0KKyAgdGhhdCBpcyBhbGlnbmVkIHdpdGggdGhl IHNpemUgb2YgdGhlIHBhZ2UgbWlkZGxlIGRpcmVjdG9yeSBtYXBwaW5nLg0KDQorDQoNCisgIEBw YXJhbSAgQWRkcmVzcyAgU3BlY2lmaWVzIHRoZSB2aXJ0dWFsIGFkZHJlc3MuDQoNCisgIEBwYXJh bSAgRW5kICAgIFRoZSBlbmQgYWRkcmVzcyBvZiB0aGUgbWVtb3J5IHJlZ2lvbi4NCg0KKw0KDQor ICBAcmV0dmFsICAgdGhlIHNwZWNpZmllZCB2aXJ0dWFsIGFkZHJlc3MgIG9mIHRoZSBuZXh0IGJs b2NrLg0KDQorICoqLw0KDQorI2RlZmluZSBQTURfQUREUkVTU19FTkQoQWRkcmVzcywgRW5kKSAg ICAgICAgICAgICAgICAgIFwNCg0KKyh7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBcDQoNCisgIFVJTlROIEJvdW5kYXJ5ID0gKChBZGRyZXNzKSAr IFBNRF9TSVpFKSAmIFBNRF9NQVNLOyAgXA0KDQorICAoQm91bmRhcnkgLSAxIDwgKEVuZCkgLSAx KT8gQm91bmRhcnk6IChFbmQpOyAgICAgICAgIFwNCg0KK30pDQoNCisNCg0KKy8qKg0KDQorICBH ZXQgU3BlY2lmaWVzIHRoZSB2aXJ0dWFsIGFkZHJlc3MgY29ycmVzcG9uZGluZyB0byB0aGUgaW5k ZXggb2YgdGhlIHBhZ2UgZ2xvYmFsIGRpcmVjdG9yeSB0YWJsZSBlbnRyeS4NCg0KKw0KDQorICBA cGFyYW0gIEFkZHJlc3MgIFNwZWNpZmllcyB0aGUgdmlydHVhbCBhZGRyZXNzLg0KDQorDQoNCisg IEByZXR2YWwgICB0aGUgaW5kZXggb2YgdGhlIHBhZ2UgZ2xvYmFsIGRpcmVjdG9yeSB0YWJsZSBl bnRyeS4NCg0KKyAqKi8NCg0KKyNkZWZpbmUgUEdEX0lOREVYKEFkZHJlc3MpICAoKChBZGRyZXNz KSA+PiBQR0RfU0hJRlQpICYgKEVOVFJZU19QRVJfUEdELTEpKQ0KDQorDQoNCisvKioNCg0KKyAg R2V0IFNwZWNpZmllcyB0aGUgdmlydHVhbCBhZGRyZXNzIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGlu ZGV4IG9mIHRoZSBwYWdlIHVwcGVyIGRpcmVjdG9yeSB0YWJsZSBlbnRyeS4NCg0KKw0KDQorICBA cGFyYW0gIEFkZHJlc3MgIFNwZWNpZmllcyB0aGUgdmlydHVhbCBhZGRyZXNzLg0KDQorICBAcGFy YW0gIEVuZCAgICBUaGUgZW5kIGFkZHJlc3Mgb2YgdGhlIG1lbW9yeSByZWdpb24uDQoNCisNCg0K KyAgQHJldHZhbCAgIHRoZSBpbmRleCBvZiB0aGUgcGFnZSB1cHBlciBkaXJlY3RvcnkgdGFibGUg ZW50cnkuDQoNCisgKiovDQoNCisjZGVmaW5lIFBVRF9JTkRFWChBZGRyZXNzKSAgKCgoQWRkcmVz cykgPj4gUFVEX1NISUZUKSAmIChFTlRSWVNfUEVSX1BVRCAtIDEpKQ0KDQorDQoNCisvKioNCg0K KyAgR2V0IFNwZWNpZmllcyB0aGUgdmlydHVhbCBhZGRyZXNzIGNvcnJlc3BvbmRpbmcgdG8gdGhl IGluZGV4IG9mIHRoZSBwYWdlIG1pZGRsZSBkaXJlY3RvcnkgdGFibGUgZW50cnkuDQoNCisNCg0K KyAgQHBhcmFtICBBZGRyZXNzICBTcGVjaWZpZXMgdGhlIHZpcnR1YWwgYWRkcmVzcy4NCg0KKw0K DQorICBAcmV0dmFsICAgdGhlIGluZGV4IG9mIHRoZSBwYWdlIG1pZGRsZSBkaXJlY3RvcnkgdGFi bGUgZW50cnkuDQoNCisgKiovDQoNCisjZGVmaW5lIFBNRF9JTkRFWChBZGRyZXNzKSAgKCgoQWRk cmVzcykgPj4gUE1EX1NISUZUKSAmIChFTlRSWVNfUEVSX1BNRCAtIDEpKQ0KDQorDQoNCisvKioN Cg0KKyAgR2V0IFNwZWNpZmllcyB0aGUgdmlydHVhbCBhZGRyZXNzIGNvcnJlc3BvbmRpbmcgdG8g dGhlIGluZGV4IG9mIHRoZSBwYWdlIHRhYmxlIGVudHJ5Lg0KDQorDQoNCisgIEBwYXJhbSAgQWRk cmVzcyAgU3BlY2lmaWVzIHRoZSB2aXJ0dWFsIGFkZHJlc3MuDQoNCisNCg0KKyAgQHJldHZhbCAg IHRoZSBpbmRleCBvZiB0aGUgcGFnZSB0YWJsZSBlbnRyeS4NCg0KKyAqKi8NCg0KKyNkZWZpbmUg UFRFX0lOREVYKEFkZHJlc3MpICAoKChBZGRyZXNzKSA+PiBFRklfUEFHRV9TSElGVCkgJiAoRU5U UllTX1BFUl9QVEUgLSAxKSkNCg0KKw0KDQorLyoqDQoNCisgIENhbGN1bGF0ZXMgdGhlIHZhbHVl IG9mIHRoZSBwYWdlIHRhYmxlIGVudHJ5IGJhc2VkIG9uIHRoZSBzcGVjaWZpZWQgdmlydHVhbCBh ZGRyZXNzIGFuZCBwcm9wZXJ0aWVzLg0KDQorDQoNCisgIEBwYXJhbSAgQWRkcmVzcyAgU3BlY2lm aWVzIHRoZSB2aXJ0dWFsIGFkZHJlc3MuDQoNCisgIEBwYXJhbSAgQXR0cmlidXRlcyAgU3BlY2lm aWVzIHRoZSBBdHRyaWJ1dGVzLg0KDQorDQoNCisgIEByZXR2YWwgICAgdGhlIHZhbHVlIG9mIHRo ZSBwYWdlIHRhYmxlIGVudHJ5Lg0KDQorICoqLw0KDQorI2RlZmluZSBNQUtFX1BURShBZGRyZXNz LCBBdHRyaWJ1dGVzKSAgKFBURSl7KCgoKEFkZHJlc3MpID4+IEVGSV9QQUdFX1NISUZUKSA8PCAx MikgfCAoQXR0cmlidXRlcykpfQ0KDQorDQoNCisvKioNCg0KKyAgR2V0IEdsb2JhbCBiaXQgZnJv bSBBdHRyaWJ1dGVzDQoNCisNCg0KKyAgQHBhcmFtICBBdHRyaWJ1dGVzICBTcGVjaWZpZXMgdGhl IEF0dHJpYnV0ZXMuDQoNCisgKiAqLw0KDQorI2RlZmluZSBHRVRfR0xPQkFMQklUKEF0dHJpYnV0 ZXMpICAoKEF0dHJpYnV0ZXMgJiBQQUdFX0dMT0JBTCkgPj4gUEFHRV9HTE9CQUxfU0hJRlQpDQoN CisNCg0KKy8qKg0KDQorICBDYWxjdWxhdGVzIHRoZSB2YWx1ZSBvZiB0aGUgSHVnZSBwYWdlIHRh YmxlIGVudHJ5IGJhc2VkIG9uIHRoZSBzcGVjaWZpZWQgdmlydHVhbCBhZGRyZXNzIGFuZCBwcm9w ZXJ0aWVzLg0KDQorDQoNCisgIEBwYXJhbSAgQWRkcmVzcyAgU3BlY2lmaWVzIHRoZSB2aXJ0dWFs IGFkZHJlc3MuDQoNCisgIEBwYXJhbSAgQXR0cmlidXRlcyAgU3BlY2lmaWVzIHRoZSBBdHRyaWJ1 dGVzLg0KDQorDQoNCisgIEByZXR2YWwgICAgdGhlIHZhbHVlIG9mIHRoZSBIVUdFIHBhZ2UgdGFi bGUgZW50cnkuDQoNCisgKiovDQoNCisjZGVmaW5lIE1BS0VfSFVHRV9QVEUoQWRkcmVzcywgQXR0 cmlidXRlcykgIChQVEUpeygoKCgoQWRkcmVzcykgPj4gUE1EX1NISUZUKSA8PCBQTURfU0hJRlQp IHwgXA0KDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChB dHRyaWJ1dGVzKSB8IChHRVRfR0xPQkFMQklUKEF0dHJpYnV0ZXMpIDw8IFBBR0VfSEdMT0JBTF9T SElGVCkgfCBcDQoNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBQQUdFX0hVR0UpKSl9DQoNCisNCg0KKy8qKg0KDQorICBDaGVjayB3aGV0aGVyIHRoZSBsYXJn ZSBwYWdlIHRhYmxlIGVudHJ5IGlzLg0KDQorDQoNCisgIEBwYXJhbSAgVmFsIFRoZSB2YWx1ZSBv ZiB0aGUgcGFnZSB0YWJsZSBlbnRyeS4NCg0KKw0KDQorICBAcmV0dmFsICAgIDEgICBJcyBodWdl IHBhZ2UgdGFibGUgZW50cnkuDQoNCisgIEByZXR2YWwgICAgMCAgIElzbid0IGh1Z2UgcGFnZSB0 YWJsZSBlbnRyeS4NCg0KKyoqLw0KDQorI2RlZmluZSBJU19IVUdFX1BBR0UoVmFsKSAgKCgoKFZh bCkgJiBQQUdFX0hVR0UpID09IFBBR0VfSFVHRSkgJiYgXA0KDQorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICgoKFZhbCkgJiBQQUdFX0hHTE9CQUwpID09IFBBR0VfSEdMT0JBTCkpDQoNCisN Cg0KKyNkZWZpbmUgSFVHRV9QQUdFX1NJWkUgIChQTURfU0laRSkNCg0KKw0KDQorLyoqDQoNCisg IENoZWNrIHRoYXQgdGhlIGdsb2JhbCBwYWdlIGRpcmVjdG9yeSB0YWJsZSBlbnRyeSBpcyBlbXB0 eS4NCg0KKw0KDQorICBAcGFyYW0gIHBnZCAgIHRoZSBnbG9iYWwgcGFnZSBkaXJlY3Rvcnkgc3Ry dWN0IHZhcmlhYmxlcy4NCg0KKw0KDQorICBAcmV0dmFsICAgIDEgICBUaGUgcGFnZSB0YWJsZSBp cyBpbnZhbGlkLg0KDQorICBAcmV0dmFsICAgIDAgICBUaGUgcGFnZSB0YWJsZSBpcyB2YWxpZC4N Cg0KKyoqLw0KDQorI2RlZmluZSBQR0RfSVNfRU1QVFkoVmFsKSAgKFBHRF9WQUwoVmFsKSA9PSBJ TlZBTElEX1BBR0UpDQoNCisNCg0KKy8qKg0KDQorICBDaGVjayB0aGF0IHRoZSBwYWdlIHVwcGVy IGRpcmVjdG9yeSB0YWJsZSBlbnRyeSBpcyBlbXB0eS4NCg0KKw0KDQorICBAcGFyYW0gIHB1ZCAg IFBhZ2UgdXBwZXIgZGlyZWN0b3J5IHN0cnVjdCB2YXJpYWJsZXMuDQoNCisNCg0KKyAgQHJldHZh bCAgICAxICAgVGhlIHBhZ2UgdGFibGUgaXMgaW52YWxpZC4NCg0KKyAgQHJldHZhbCAgICAwICAg VGhlIHBhZ2UgdGFibGUgaXMgdmFsaWQuDQoNCisqKi8NCg0KKyNkZWZpbmUgUFVEX0lTX0VNUFRZ KFZhbCkgIChQVURfVkFMKFZhbCkgPT0gSU5WQUxJRF9QQUdFKQ0KDQorDQoNCisvKioNCg0KKyAg Q2hlY2sgdGhhdCB0aGUgcGFnZSBtaWRkbGUgZGlyZWN0b3J5IHRhYmxlIGVudHJ5IGlzIGVtcHR5 Lg0KDQorDQoNCisgIEBwYXJhbSAgcG1kICAgUGFnZSBtaWRkbGUgZGlyZWN0b3J5IHN0cnVjdCB2 YXJpYWJsZXMuDQoNCisNCg0KKyAgQHJldHZhbCAgICAxICAgVGhlIHBhZ2UgdGFibGUgaXMgaW52 YWxpZC4NCg0KKyAgQHJldHZhbCAgICAwICAgVGhlIHBhZ2UgdGFibGUgaXMgdmFsaWQuDQoNCisq Ki8NCg0KKyNkZWZpbmUgUE1EX0lTX0VNUFRZKFZhbCkgIChQTURfVkFMKFZhbCkgPT0gSU5WQUxJ RF9QQUdFKQ0KDQorDQoNCisvKioNCg0KKyAgQ2hlY2sgdGhhdCB0aGUgcGFnZSB0aGUgcGFnZSB0 YWJsZSBlbnRyeSBpcyBlbXB0eS4NCg0KKw0KDQorICBAcGFyYW0gIHB0ZSAgIFBhZ2UgdGFibGUg ZW50cnkgc3RydWN0IHZhcmlhYmxlcy4NCg0KKw0KDQorICBAcmV0dmFsICAgIDEgICBUaGUgcGFn ZSB0YWJsZSBpcyBpbnZhbGlkLg0KDQorICBAcmV0dmFsICAgIDAgICBUaGUgcGFnZSB0YWJsZSBp cyB2YWxpZC4NCg0KKyoqLw0KDQorI2RlZmluZSBQVEVfSVNfRU1QVFkoVmFsKSAgKCEoUFRFX1ZB TChWYWwpICYgKH5QQUdFX1ZBTElEKSkpDQoNCisjZW5kaWYgLy8gUEFHRV9IXw0KDQpkaWZmIC0t Z2l0IGEvVWVmaUNwdVBrZy9MaWJyYXJ5L0NwdU1tdUxpYi9Mb29uZ0FyY2g2NC9QZWlDcHVNbXVM aWIuYyBiL1VlZmlDcHVQa2cvTGlicmFyeS9DcHVNbXVMaWIvTG9vbmdBcmNoNjQvUGVpQ3B1TW11 TGliLmMNCg0KbmV3IGZpbGUgbW9kZSAxMDA2NDQNCg0KaW5kZXggMDAwMDAwMDAwMC4uYzIxNGU4 ZDg0Nw0KDQotLS0gL2Rldi9udWxsDQoNCisrKyBiL1VlZmlDcHVQa2cvTGlicmFyeS9DcHVNbXVM aWIvTG9vbmdBcmNoNjQvUGVpQ3B1TW11TGliLmMNCg0KQEAgLTAsMCArMSwxNzggQEANCg0KKy8q KiBAZmlsZQ0KDQorICBDUFUgTWVtb3J5IE1hcCBVbml0IFBFSSBwaGFzZSBkcml2ZXIuDQoNCisN Cg0KKyAgQ29weXJpZ2h0IChjKSAyMDI0IExvb25nc29uIFRlY2hub2xvZ3kgQ29ycG9yYXRpb24g TGltaXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC48QlI+DQoNCisNCg0KKyAgU1BEWC1MaWNlbnNl LUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZS1QYXRlbnQNCg0KKw0KDQorICBAcGFyIEdsb3NzYXJ5 Og0KDQorICAgIC0gVGxiICAgICAgLSBUcmFuc2xhdGlvbiBMb29rYXNpZGUgQnVmZmVyDQoNCisq Ki8NCg0KKw0KDQorI2luY2x1ZGUgPFVlZmkuaD4NCg0KKyNpbmNsdWRlIDxMaWJyYXJ5L0Jhc2VM aWIuaD4NCg0KKyNpbmNsdWRlIDxMaWJyYXJ5L0Jhc2VNZW1vcnlMaWIuaD4NCg0KKyNpbmNsdWRl IDxMaWJyYXJ5L0NhY2hlTWFpbnRlbmFuY2VMaWIuaD4NCg0KKyNpbmNsdWRlIDxMaWJyYXJ5L0Nw dU1tdUxpYi5oPg0KDQorI2luY2x1ZGUgPExpYnJhcnkvRGVidWdMaWIuaD4NCg0KKyNpbmNsdWRl IDxMaWJyYXJ5L01lbW9yeUFsbG9jYXRpb25MaWIuaD4NCg0KKyNpbmNsdWRlIDxMaWJyYXJ5L1Bj ZExpYi5oPg0KDQorI2luY2x1ZGUgPFJlZ2lzdGVyL0xvb25nQXJjaDY0L0Nzci5oPg0KDQorDQoN CisjaW5jbHVkZSAiUGFnZS5oIg0KDQorI2luY2x1ZGUgIlRsYi5oIg0KDQorI2luY2x1ZGUgIkNv bW1vbk1tdUxpYi5oIg0KDQorDQoNCisvLw0KDQorLy8gRm9yIGNvZGluZyBjb252ZW5pZW5jZSwg ZGVmaW5lIHRoZSBtYXhpbXVtIHZhbGlkDQoNCisvLyBMb29uZ0FyY2ggZXhjZXB0aW9uLg0KDQor Ly8gU2luY2UgVUVGSSBWMi4xMSwgaXQgd2lsbCBiZSBwcmVzZW50IGluIERlYnVnU3VwcG9ydC5o Lg0KDQorLy8NCg0KKyNkZWZpbmUgTUFYX0xPT05HQVJDSF9FWENFUFRJT04gIDY0DQoNCisNCg0K Ky8qKg0KDQorICBDcmVhdGUgYSBwYWdlIHRhYmxlIGFuZCBpbml0aWFsaXplIHRoZSBtZW1vcnkg bWFuYWdlbWVudCB1bml0KE1NVSkuDQoNCisNCg0KKyAgQHBhcmFtW2luXSAgIE1lbW9yeVRhYmxl ICAgICAgICAgICBBIHBvaW50ZXIgdG8gYSBtZW1vcnkgcmFnaW9uIHRhYmxlLg0KDQorICBAcGFy YW1bb3V0XSAgVHJhbnNsYXRpb25UYWJsZUJhc2UgIEEgcG9pbnRlciB0byBhIHRyYW5zbGF0aW9u IHRhYmxlIGJhc2UgYWRkcmVzcy4NCg0KKyAgQHBhcmFtW291dF0gIFRyYW5zbGF0aW9uVGFibGVT aXplICBBIHBvaW50ZXIgdG8gYSB0cmFuc2xhdGlvbiB0YWJsZSBiYXNlIHNpemUuDQoNCisNCg0K KyAgQHJldHZhbCAgRUZJX1NVQ0NFU1MgICAgICAgICAgICAgICAgQ29uZmlndXJlIE1NVSBzdWNj ZXNzZnVsbHkuDQoNCisgICAgICAgICAgIEVGSV9JTlZBTElEX1BBUkFNRVRFUiAgICAgIE1lbW9y eVRhYmxlIGlzIE5VTEwuDQoNCisgICAgICAgICAgIEVGSV9VTlNVUFBPUlRFRCAgICAgICAgICAg IE91dCBvZiBtZW1vcnkgc3BhY2Ugb3Igc2l6ZSBub3QgYWxpZ25lZC4NCg0KKyoqLw0KDQorRUZJ X1NUQVRVUw0KDQorRUZJQVBJDQoNCitDb25maWd1cmVNZW1vcnlNYW5hZ2VtZW50VW5pdCAoDQoN CisgIElOICBNRU1PUllfUkVHSU9OX0RFU0NSSVBUT1IgICpNZW1vcnlUYWJsZSwNCg0KKyAgT1VU IFZPSUQgICAgICAgICAgICAgICAgICAgICAgKipUcmFuc2xhdGlvblRhYmxlQmFzZSBPUFRJT05B TCwNCg0KKyAgT1VUIFVJTlROICAgICAgICAgICAgICAgICAgICAgKlRyYW5zbGF0aW9uVGFibGVT aXplICBPUFRJT05BTA0KDQorICApDQoNCit7DQoNCisgIFBHRCAgICAgICAgICAgICpTd2FwcGVy UGFnZURpcjsNCg0KKyAgVUlOVE4gICAgICAgICAgUGdkU2hpZnQ7DQoNCisgIFVJTlROICAgICAg ICAgIFBnZFdpZGU7DQoNCisgIFVJTlROICAgICAgICAgIFB1ZFNoaWZ0Ow0KDQorICBVSU5UTiAg ICAgICAgICBQdWRXaWRlOw0KDQorICBVSU5UTiAgICAgICAgICBQbWRTaGlmdDsNCg0KKyAgVUlO VE4gICAgICAgICAgUG1kV2lkZTsNCg0KKyAgVUlOVE4gICAgICAgICAgUHRlU2hpZnQ7DQoNCisg IFVJTlROICAgICAgICAgIFB0ZVdpZGU7DQoNCisgIFVJTlROICAgICAgICAgIExlbmd0aDsNCg0K KyAgVUlOVE4gICAgICAgICAgVGxiUmVFbnRyeTsNCg0KKyAgVUlOVE4gICAgICAgICAgVGxiUmVF bnRyeU9mZnNldDsNCg0KKyAgVUlOVE4gICAgICAgICAgUmVtYWluaW5nOw0KDQorICBSRVRVUk5f U1RBVFVTICBTdGF0dXM7DQoNCisNCg0KKyAgU3dhcHBlclBhZ2VEaXIgPSBOVUxMOw0KDQorICBQ Z2RTaGlmdCAgICAgICA9IFBHRF9TSElGVDsNCg0KKyAgUGdkV2lkZSAgICAgICAgPSBQR0RfV0lE RTsNCg0KKyAgUHVkU2hpZnQgICAgICAgPSBQVURfU0hJRlQ7DQoNCisgIFB1ZFdpZGUgICAgICAg ID0gUFVEX1dJREU7DQoNCisgIFBtZFNoaWZ0ICAgICAgID0gUE1EX1NISUZUOw0KDQorICBQbWRX aWRlICAgICAgICA9IFBNRF9XSURFOw0KDQorICBQdGVTaGlmdCAgICAgICA9IFBURV9TSElGVDsN Cg0KKyAgUHRlV2lkZSAgICAgICAgPSBQVEVfV0lERTsNCg0KKw0KDQorICBpZiAoTWVtb3J5VGFi bGUgPT0gTlVMTCkgew0KDQorICAgIEFTU0VSVCAoTWVtb3J5VGFibGUgIT0gTlVMTCk7DQoNCisg ICAgcmV0dXJuIEVGSV9JTlZBTElEX1BBUkFNRVRFUjsNCg0KKyAgfQ0KDQorDQoNCisgIFN3YXBw ZXJQYWdlRGlyID0gQWxsb2NhdGVQYWdlcyAoRUZJX1NJWkVfVE9fUEFHRVMgKFBHRF9UQUJMRV9T SVpFKSk7DQoNCisgIFplcm9NZW0gKFN3YXBwZXJQYWdlRGlyLCBQR0RfVEFCTEVfU0laRSk7DQoN CisNCg0KKyAgaWYgKFN3YXBwZXJQYWdlRGlyID09IE5VTEwpIHsNCg0KKyAgICBnb3RvIEZyZWVU cmFuc2xhdGlvblRhYmxlOw0KDQorICB9DQoNCisNCg0KKyAgQ3NyV3JpdGUgKExPT05HQVJDSF9D U1JfUEdETCwgKFVJTlROKVN3YXBwZXJQYWdlRGlyKTsNCg0KKw0KDQorICB3aGlsZSAoTWVtb3J5 VGFibGUtPkxlbmd0aCAhPSAwKSB7DQoNCisgICAgREVCVUcgKCgNCg0KKyAgICAgIERFQlVHX0lO Rk8sDQoNCisgICAgICAiJWEgJWQgVmlydHVhbEJhc2UgJXAgVmlydHVhbEVuZCAlcCBBdHRyaWJ1 dGVzICVwIC5cbiIsDQoNCisgICAgICBfX2Z1bmNfXywNCg0KKyAgICAgIF9fTElORV9fLA0KDQor ICAgICAgTWVtb3J5VGFibGUtPlZpcnR1YWxCYXNlLA0KDQorICAgICAgKE1lbW9yeVRhYmxlLT5M ZW5ndGggKyBNZW1vcnlUYWJsZS0+VmlydHVhbEJhc2UpLA0KDQorICAgICAgTWVtb3J5VGFibGUt PkF0dHJpYnV0ZXMNCg0KKyAgICAgICkpOw0KDQorDQoNCisgICAgU3RhdHVzID0gRmlsbFRyYW5z bGF0aW9uVGFibGUgKE1lbW9yeVRhYmxlKTsNCg0KKyAgICBpZiAoRUZJX0VSUk9SIChTdGF0dXMp KSB7DQoNCisgICAgICBnb3RvIEZyZWVUcmFuc2xhdGlvblRhYmxlOw0KDQorICAgIH0NCg0KKw0K DQorICAgIE1lbW9yeVRhYmxlKys7DQoNCisgIH0NCg0KKw0KDQorICAvLw0KDQorICAvLyBUTEIg UmUtZW50cnkgYWRkcmVzcyBhdCB0aGUgZW5kIG9mIGV4Y2VwdGlvbiB2ZWN0b3IsIGEgdmVjdG9y IGlzIHVwIHRvIDUxMiBieXRlcywNCg0KKyAgLy8gc28gdGhlIHN0YXJ0aW5nIGFkZHJlc3MgaXM6 IHRvdGFsIGV4Y2VwdGlvbiB2ZWN0b3Igc2l6ZSArIHRvdGFsIGludGVycnVwdCB2ZWN0b3Igc2l6 ZSArIGJhc2UuDQoNCisgIC8vIFRoZSB0b3RhbCBzaXplIG9mIFRMQiBoYW5kbGVyIGFuZCBleGNl cHRpb24gdmVjdG9yIHNpemUgYW5kIGludGVycnVwdCB2ZWN0b3Igc2l6ZSBzaG91bGQgbm90DQoN CisgIC8vIGJlIGxhZ2VyIHRoYW4gNjRLQi4NCg0KKyAgLy8NCg0KKyAgTGVuZ3RoICAgICAgICAg ICA9IChVSU5UTilIYW5kbGVUbGJSZWZpbGxFbmQgLSAoVUlOVE4pSGFuZGxlVGxiUmVmaWxsU3Rh cnQ7DQoNCisgIFRsYlJlRW50cnlPZmZzZXQgPSAoTUFYX0xPT05HQVJDSF9FWENFUFRJT04gKyBN QVhfTE9PTkdBUkNIX0lOVEVSUlVQVCkgKiA1MTI7DQoNCisgIFJlbWFpbmluZyAgICAgICAgPSBU bGJSZUVudHJ5T2Zmc2V0ICUgU0laRV80S0I7DQoNCisgIGlmIChSZW1haW5pbmcgIT0gMHgwKSB7 DQoNCisgICAgVGxiUmVFbnRyeU9mZnNldCArPSAoU0laRV80S0IgLSBSZW1haW5pbmcpOw0KDQor ICB9DQoNCisNCg0KKyAgVGxiUmVFbnRyeSA9IFBjZEdldDY0IChQY2RDcHVFeGNlcHRpb25WZWN0 b3JCYXNlQWRkcmVzcykgKyBUbGJSZUVudHJ5T2Zmc2V0Ow0KDQorICBpZiAoKFRsYlJlRW50cnlP ZmZzZXQgKyBMZW5ndGgpID4gU0laRV82NEtCKSB7DQoNCisgICAgZ290byBGcmVlVHJhbnNsYXRp b25UYWJsZTsNCg0KKyAgfQ0KDQorDQoNCisgIC8vDQoNCisgIC8vIEVuc3VyZSB0aGF0IFRMQiBy ZWZpbGwgZXhjZXB0aW9uIGJhc2UgYWRkcmVzcyBhbGlnbm1lbnQgaXMgZXF1YWxzIHRvIDRLQiBh bmQgaXMgdmFsaWQuDQoNCisgIC8vDQoNCisgIGlmIChUbGJSZUVudHJ5ICYgKFNJWkVfNEtCIC0g MSkpIHsNCg0KKyAgICBnb3RvIEZyZWVUcmFuc2xhdGlvblRhYmxlOw0KDQorICB9DQoNCisNCg0K KyAgQ29weU1lbSAoKFZPSUQgKilUbGJSZUVudHJ5LCBIYW5kbGVUbGJSZWZpbGxTdGFydCwgTGVu Z3RoKTsNCg0KKyAgSW52YWxpZGF0ZUluc3RydWN0aW9uQ2FjaGVSYW5nZSAoKFZPSUQgKikoVUlO VE4pSGFuZGxlVGxiUmVmaWxsU3RhcnQsIExlbmd0aCk7DQoNCisNCg0KKyAgREVCVUcgKCgNCg0K KyAgICBERUJVR19JTkZPLA0KDQorICAgICIlYSAgJWQgUHRlU2hpZnQgJWQgUHRlV2lkZSAlZCBQ bWRTaGlmdCAlZCBQbWRXaWRlICVkIFB1ZFNoaWZ0ICVkIFB1ZFdpZGUgJWQgUGdkU2hpZnQgJWQg UGdkV2lkZSAlZC5cbiIsDQoNCisgICAgX19mdW5jX18sDQoNCisgICAgX19MSU5FX18sDQoNCisg ICAgUHRlU2hpZnQsDQoNCisgICAgUHRlV2lkZSwNCg0KKyAgICBQbWRTaGlmdCwNCg0KKyAgICBQ bWRXaWRlLA0KDQorICAgIFB1ZFNoaWZ0LA0KDQorICAgIFB1ZFdpZGUsDQoNCisgICAgUGdkU2hp ZnQsDQoNCisgICAgUGdkV2lkZQ0KDQorICAgICkpOw0KDQorDQoNCisgIC8vDQoNCisgIC8vIFNl dCB0aGUgYWRkcmVzcyBvZiBUTEIgcmVmaWxsIGV4Y2VwdGlvbiBoYW5kbGVyDQoNCisgIC8vDQoN CisgIFNldFRsYlJlYmFzZUFkZHJlc3MgKChVSU5UTilUbGJSZUVudHJ5KTsNCg0KKw0KDQorICAv Lw0KDQorICAvLyBTZXQgcGFnZSBzaXplDQoNCisgIC8vDQoNCisgIENzclhDaGcgKExPT05HQVJD SF9DU1JfVExCSURYLCAoREVGQVVMVF9QQUdFX1NJWkUgPDwgQ1NSX1RMQklEWF9TSVpFKSwgQ1NS X1RMQklEWF9TSVpFX01BU0spOw0KDQorICBDc3JXcml0ZSAoTE9PTkdBUkNIX0NTUl9TVExCUEdT SVpFLCBERUZBVUxUX1BBR0VfU0laRSk7DQoNCisgIENzclhDaGcgKExPT05HQVJDSF9DU1JfVExC UkVISSwgKERFRkFVTFRfUEFHRV9TSVpFIDw8IENTUl9UTEJSRUhJX1BTX1NISUZUKSwgQ1NSX1RM QlJFSElfUFMpOw0KDQorDQoNCisgIENzcldyaXRlIChMT09OR0FSQ0hfQ1NSX1BXQ1RMMCwgKFB0 ZVNoaWZ0IHwgUHRlV2lkZSA8PCA1IHwgUG1kU2hpZnQgPDwgMTAgfCBQbWRXaWRlIDw8IDE1IHwg UHVkU2hpZnQgPDwgMjAgfCBQdWRXaWRlIDw8IDI1KSk7DQoNCisgIENzcldyaXRlIChMT09OR0FS Q0hfQ1NSX1BXQ1RMMSwgKFBnZFNoaWZ0IHwgUGdkV2lkZSA8PCA2KSk7DQoNCisNCg0KKyAgREVC VUcgKChERUJVR19JTkZPLCAiJWEgJWQgRW5hYmxlIE1tdSBTdGFydCBQYWdlQmFzc0FkZHJlc3Mg JXAuXG4iLCBfX2Z1bmNfXywgX19MSU5FX18sIFN3YXBwZXJQYWdlRGlyKSk7DQoNCisNCg0KKyAg cmV0dXJuIEVGSV9TVUNDRVNTOw0KDQorDQoNCitGcmVlVHJhbnNsYXRpb25UYWJsZToNCg0KKyAg aWYgKFN3YXBwZXJQYWdlRGlyICE9IE5VTEwpIHsNCg0KKyAgICBGcmVlUGFnZXMgKFN3YXBwZXJQ YWdlRGlyLCBFRklfU0laRV9UT19QQUdFUyAoUEdEX1RBQkxFX1NJWkUpKTsNCg0KKyAgfQ0KDQor DQoNCisgIHJldHVybiBFRklfVU5TVVBQT1JURUQ7DQoNCit9DQoNCmRpZmYgLS1naXQgYS9VZWZp Q3B1UGtnL0xpYnJhcnkvQ3B1TW11TGliL0xvb25nQXJjaDY0L1RsYi5oIGIvVWVmaUNwdVBrZy9M aWJyYXJ5L0NwdU1tdUxpYi9Mb29uZ0FyY2g2NC9UbGIuaA0KDQpuZXcgZmlsZSBtb2RlIDEwMDY0 NA0KDQppbmRleCAwMDAwMDAwMDAwLi45YTY4MWNlOGUxDQoNCi0tLSAvZGV2L251bGwNCg0KKysr IGIvVWVmaUNwdVBrZy9MaWJyYXJ5L0NwdU1tdUxpYi9Mb29uZ0FyY2g2NC9UbGIuaA0KDQpAQCAt MCwwICsxLDQ4IEBADQoNCisvKiogQGZpbGUNCg0KKw0KDQorICBDb3B5cmlnaHQgKGMpIDIwMjQg TG9vbmdzb24gVGVjaG5vbG9neSBDb3Jwb3JhdGlvbiBMaW1pdGVkLiBBbGwgcmlnaHRzIHJlc2Vy dmVkLjxCUj4NCg0KKw0KDQorICBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNl LVBhdGVudA0KDQorDQoNCisqKi8NCg0KKw0KDQorI2lmbmRlZiBUTEJfSF8NCg0KKyNkZWZpbmUg VExCX0hfDQoNCisNCg0KKy8qKg0KDQorICBJbnZhbGlkIGNvcnJlc3BvbmRpbmcgVExCIGVudHJp ZXMgYXJlIGJhc2VkIG9uIHRoZSBhZGRyZXNzIGdpdmVuDQoNCisNCg0KKyAgQHBhcmFtIEFkZHJl c3MgVGhlIGFkZHJlc3MgY29ycmVzcG9uZGluZyB0byB0aGUgaW52YWxpZCBwYWdlIHRhYmxlIGVu dHJ5DQoNCisNCg0KKyAgQHJldHZhbCAgbm9uZQ0KDQorKiovDQoNCitWT0lEDQoNCitJbnZhbGlk VGxiICgNCg0KKyAgVUlOVE4gIEFkZHJlc3MNCg0KKyAgKTsNCg0KKw0KDQorLyoqDQoNCisgIFRM QiByZWZpbGwgaGFuZGxlciBzdGFydC4NCg0KKw0KDQorICBAcGFyYW0gIG5vbmUNCg0KKw0KDQor ICBAcmV0dmFsIG5vbmUNCg0KKyoqLw0KDQorVk9JRA0KDQorSGFuZGxlVGxiUmVmaWxsU3RhcnQg KA0KDQorICBWT0lEDQoNCisgICk7DQoNCisNCg0KKy8qKg0KDQorICBUTEIgcmVmaWxsIGhhbmRs ZXIgZW5kLg0KDQorDQoNCisgIEBwYXJhbSAgbm9uZQ0KDQorDQoNCisgIEByZXR2YWwgbm9uZQ0K DQorKiovDQoNCitWT0lEDQoNCitIYW5kbGVUbGJSZWZpbGxFbmQgKA0KDQorICBWT0lEDQoNCisg ICk7DQoNCisNCg0KKyNlbmRpZiAvLyBUTEJfSF8NCg0KZGlmZiAtLWdpdCBhL1VlZmlDcHVQa2cv TGlicmFyeS9DcHVNbXVMaWIvTG9vbmdBcmNoNjQvVGxiT3BlcmF0aW9uLlMgYi9VZWZpQ3B1UGtn L0xpYnJhcnkvQ3B1TW11TGliL0xvb25nQXJjaDY0L1RsYk9wZXJhdGlvbi5TDQoNCm5ldyBmaWxl IG1vZGUgMTAwNjQ0DQoNCmluZGV4IDAwMDAwMDAwMDAuLmM5YThjMTYzMzYNCg0KLS0tIC9kZXYv bnVsbA0KDQorKysgYi9VZWZpQ3B1UGtnL0xpYnJhcnkvQ3B1TW11TGliL0xvb25nQXJjaDY0L1Rs Yk9wZXJhdGlvbi5TDQoNCkBAIC0wLDAgKzEsNDQgQEANCg0KKyMtLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0NCg0KKyMNCg0KKyMgVExCIG9wZXJhdGlvbiBmdW5jdGlvbnMNCg0KKyMNCg0KKyMgQ29weXJp Z2h0IChjKSAyMDI0IExvb25nc29uIFRlY2hub2xvZ3kgQ29ycG9yYXRpb24gTGltaXRlZC4gQWxs IHJpZ2h0cyByZXNlcnZlZC48QlI+DQoNCisjDQoNCisjIFNQRFgtTGljZW5zZS1JZGVudGlmaWVy OiBCU0QtMi1DbGF1c2UtUGF0ZW50DQoNCisjDQoNCisjLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCg0K Kw0KDQorI2luY2x1ZGUgPFJlZ2lzdGVyL0xvb25nQXJjaDY0L0Nzci5oPg0KDQorDQoNCitBU01f R0xPQkFMIEFTTV9QRlgoSGFuZGxlVGxiUmVmaWxsU3RhcnQpDQoNCitBU01fR0xPQkFMIEFTTV9Q RlgoSGFuZGxlVGxiUmVmaWxsRW5kKQ0KDQorQVNNX0dMT0JBTCBBU01fUEZYKEludmFsaWRUbGIp DQoNCisNCg0KKyMNCg0KKyMgIFJlZmlsbCB0aGUgcGFnZSB0YWJsZS4NCg0KKyMgIEBwYXJhbSAg Vk9JRA0KDQorIyAgQHJldHZhbCAgVk9JRA0KDQorIw0KDQorQVNNX1BGWChIYW5kbGVUbGJSZWZp bGxTdGFydCk6DQoNCisgIGNzcndyICAgJHQwLCBMT09OR0FSQ0hfQ1NSX1RMQlJTQVZFDQoNCisg IGNzcnJkICAgJHQwLCBMT09OR0FSQ0hfQ1NSX1BHRA0KDQorICBsZGRpciAgICR0MCwgJHQwLCAz ICAgI1B1dCBwdWQgQmFzZUFkZHJlc3MgaW50byBUMA0KDQorICBsZGRpciAgICR0MCwgJHQwLCAy ICAgI1B1dCBwbWQgQmFzZUFkZHJlc3MgaW50byBUMA0KDQorICBsZGRpciAgICR0MCwgJHQwLCAx ICAgI1B1dCBwdGUgQmFzZUFkZHJlc3MgaW50byBUMA0KDQorICBsZHB0ZSAgICR0MCwgMA0KDQor ICBsZHB0ZSAgICR0MCwgMQ0KDQorICB0bGJmaWxsICAgLy8gcmVmaWxsIGhpLGxvMCxsbzENCg0K KyAgY3NycmQgICAkdDAsIExPT05HQVJDSF9DU1JfVExCUlNBVkUNCg0KKyAgZXJ0bg0KDQorQVNN X1BGWChIYW5kbGVUbGJSZWZpbGxFbmQpOg0KDQorDQoNCisjDQoNCisjIEludmFsaWQgY29ycmVz cG9uZGluZyBUTEIgZW50cmllcyBhcmUgYmFzZWQgb24gdGhlIGFkZHJlc3MgZ2l2ZW4NCg0KKyMg QHBhcmFtIGEwIFRoZSBhZGRyZXNzIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGludmFsaWQgcGFnZSB0 YWJsZSBlbnRyeQ0KDQorIyBAcmV0dmFsICBub25lDQoNCisjDQoNCitBU01fUEZYKEludmFsaWRU bGIpOg0KDQorICAgIGludnRsYiAgSU5WVExCX0FERFJfR1RSVUVfT1JfQVNJRCwgJHplcm8sICRh MA0KDQorICAgIGppcmwgICAgJHplcm8sICRyYSwgMA0KDQorDQoNCisgICAgLmVuZA0KDQpkaWZm IC0tZ2l0IGEvVWVmaUNwdVBrZy9MaWJyYXJ5L0NwdU1tdUxpYi9QZWlDcHVNbXVMaWIuaW5mIGIv VWVmaUNwdVBrZy9MaWJyYXJ5L0NwdU1tdUxpYi9QZWlDcHVNbXVMaWIuaW5mDQoNCm5ldyBmaWxl IG1vZGUgMTAwNjQ0DQoNCmluZGV4IDAwMDAwMDAwMDAuLjQ1YjE1ZGI0YzkNCg0KLS0tIC9kZXYv bnVsbA0KDQorKysgYi9VZWZpQ3B1UGtnL0xpYnJhcnkvQ3B1TW11TGliL1BlaUNwdU1tdUxpYi5p bmYNCg0KQEAgLTAsMCArMSw0NCBAQA0KDQorIyMgQGZpbGUNCg0KKyMgIENQVSBNZW1vcnkgTWFw IFVuaXQgUEVJIHBoYXNlIGRyaXZlci4NCg0KKyMNCg0KKyMgIENvcHlyaWdodCAoYykgMjAyNCBM b29uZ3NvbiBUZWNobm9sb2d5IENvcnBvcmF0aW9uIExpbWl0ZWQuIEFsbCByaWdodHMgcmVzZXJ2 ZWQuPEJSPg0KDQorIw0KDQorIyAgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVz ZS1QYXRlbnQNCg0KKyMNCg0KKyMjDQoNCisNCg0KK1tEZWZpbmVzXQ0KDQorICBJTkZfVkVSU0lP TiAgICAgICAgICAgICAgICAgICAgPSAxLjI5DQoNCisgIEJBU0VfTkFNRSAgICAgICAgICAgICAg ICAgICAgICA9IFBlaUNwdU1tdUxpYg0KDQorICBNT0RVTEVfVU5JX0ZJTEUgICAgICAgICAgICAg ICAgPSBQZWlDcHVNbXVMaWIudW5pDQoNCisgIEZJTEVfR1VJRCAgICAgICAgICAgICAgICAgICAg ICA9IEY2N0VCOTgzLUFDMkEtNzU1MC1BQjY5LTNCQzUxQTFDODk1Qg0KDQorICBNT0RVTEVfVFlQ RSAgICAgICAgICAgICAgICAgICAgPSBQRUlNDQoNCisgIFZFUlNJT05fU1RSSU5HICAgICAgICAg ICAgICAgICA9IDEuMA0KDQorICBMSUJSQVJZX0NMQVNTICAgICAgICAgICAgICAgICAgPSBDcHVN bXVMaWIgfCBTRUMgUEVJTQ0KDQorDQoNCisjDQoNCisjICBWQUxJRF9BUkNISVRFQ1RVUkVTICAg ICAgICAgICA9IExPT05HQVJDSDY0DQoNCisjDQoNCisNCg0KK1tTb3VyY2VzLkxvb25nQXJjaDY0 XQ0KDQorICBMb29uZ0FyY2g2NC9UbGJPcGVyYXRpb24uUyAgIHwgR0NDDQoNCisgIExvb25nQXJj aDY0L0NvbW1vbk1tdUxpYi5jDQoNCisgIExvb25nQXJjaDY0L1BlaUNwdU1tdUxpYi5jDQoNCisg IExvb25nQXJjaDY0L0NvbW1vbk1tdUxpYi5oDQoNCisgIExvb25nQXJjaDY0L1RsYi5oDQoNCisg IExvb25nQXJjaDY0L1BhZ2UuaA0KDQorDQoNCitbUGFja2FnZXNdDQoNCisgIE1kZVBrZy9NZGVQ a2cuZGVjDQoNCisgIE1kZU1vZHVsZVBrZy9NZGVNb2R1bGVQa2cuZGVjDQoNCisgIFVlZmlDcHVQ a2cvVWVmaUNwdVBrZy5kZWMNCg0KKw0KDQorW1BDRF0NCg0KKyAgZ0VmaU1kZU1vZHVsZVBrZ1Rv a2VuU3BhY2VHdWlkLlBjZE51bGxQb2ludGVyRGV0ZWN0aW9uUHJvcGVydHlNYXNrDQoNCisgIGdV ZWZpQ3B1UGtnVG9rZW5TcGFjZUd1aWQuUGNkQ3B1RXhjZXB0aW9uVmVjdG9yQmFzZUFkZHJlc3MN Cg0KKw0KDQorW0xpYnJhcnlDbGFzc2VzXQ0KDQorICBDYWNoZU1haW50ZW5hbmNlTGliDQoNCisg IERlYnVnTGliDQoNCisgIE1lbW9yeUFsbG9jYXRpb25MaWINCg0KKyAgUGNkTGliDQoNCmRpZmYg LS1naXQgYS9VZWZpQ3B1UGtnL0xpYnJhcnkvQ3B1TW11TGliL1BlaUNwdU1tdUxpYi51bmkgYi9V ZWZpQ3B1UGtnL0xpYnJhcnkvQ3B1TW11TGliL1BlaUNwdU1tdUxpYi51bmkNCg0KbmV3IGZpbGUg bW9kZSAxMDA2NDQNCg0KaW5kZXggMDAwMDAwMDAwMC4uM2UyMTMzNGYzZQ0KDQotLS0gL2Rldi9u dWxsDQoNCisrKyBiL1VlZmlDcHVQa2cvTGlicmFyeS9DcHVNbXVMaWIvUGVpQ3B1TW11TGliLnVu aQ0KDQpAQCAtMCwwICsxLDE0IEBADQoNCisvLyAvKiogQGZpbGUNCg0KKy8vIENQVSBNZW1vcnkg TWFuYWdlciBVbml0IGxpYnJhcnkgaW5zdGFuY2UgZm9yIFBFSSBtb2R1bGVzLg0KDQorLy8NCg0K Ky8vIENQVSBNZW1vcnkgTWFuYWdlciBVbml0IGxpYnJhcnkgaW5zdGFuY2UgZm9yIFBFSSBtb2R1 bGVzLg0KDQorLy8NCg0KKy8vIENvcHlyaWdodCAoYykgMjAyNCwgTG9vbmdzb24gVGVjaG5vbG9n eSBDb3Jwb3JhdGlvbiBMaW1pdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLjxCUj4NCg0KKy8vDQoN CisvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNlLVBhdGVudA0KDQorLy8N Cg0KKy8vICoqLw0KDQorDQoNCisjc3RyaW5nIFNUUl9NT0RVTEVfQUJTVFJBQ1QgICAgICAgICAg ICAgI2xhbmd1YWdlIGVuLVVTICJDUFUgTWVtb3J5IE1hbmFnZXIgVW5pdCBsaWJyYXJ5IGluc3Rh bmNlIGZvciBQRUkgbW9kdWxlcy4iDQoNCisNCg0KKyNzdHJpbmcgU1RSX01PRFVMRV9ERVNDUklQ VElPTiAgICAgICAgICAjbGFuZ3VhZ2UgZW4tVVMgIkNQVSBNZW1vcnkgTWFuYWdlciBVbml0IGxp YnJhcnkgaW5zdGFuY2UgZm9yIFBFSSBtb2R1bGVzLiINCg0KZGlmZiAtLWdpdCBhL1VlZmlDcHVQ a2cvVWVmaUNwdVBrZy5kc2MgYi9VZWZpQ3B1UGtnL1VlZmlDcHVQa2cuZHNjDQoNCmluZGV4IDI4 ZWVkODViY2UuLjE3OGRjM2MwZjkgMTAwNjQ0DQoNCi0tLSBhL1VlZmlDcHVQa2cvVWVmaUNwdVBr Zy5kc2MNCg0KKysrIGIvVWVmaUNwdVBrZy9VZWZpQ3B1UGtnLmRzYw0KDQpAQCAtMjA3LDUgKzIw Nyw5IEBADQoNCiAgIFVlZmlDcHVQa2cvQ3B1VGltZXJEeGVSaXNjVjY0L0NwdVRpbWVyRHhlUmlz Y1Y2NC5pbmYNCg0KICAgVWVmaUNwdVBrZy9DcHVEeGVSaXNjVjY0L0NwdUR4ZVJpc2NWNjQuaW5m DQoNCg0KDQorW0NvbXBvbmVudHMuTE9PTkdBUkNINjRdDQoNCisgIFVlZmlDcHVQa2cvTGlicmFy eS9DcHVNbXVMaWIvRHhlQ3B1TW11TGliLmluZg0KDQorICBVZWZpQ3B1UGtnL0xpYnJhcnkvQ3B1 TW11TGliL1BlaUNwdU1tdUxpYi5pbmYNCg0KKw0KDQogW0J1aWxkT3B0aW9uc10NCg0KICAgKl8q XypfQ0NfRkxBR1MgPSAtRCBESVNBQkxFX05FV19ERVBSRUNBVEVEX0lOVEVSRkFDRVMNCg0KDQoN Cg0KDQoNCg0KDQoNCg0KCi09LT0tPS09LT0tPS09LT0tPS09LT0tCkdyb3Vwcy5pbyBMaW5rczog WW91IHJlY2VpdmUgYWxsIG1lc3NhZ2VzIHNlbnQgdG8gdGhpcyBncm91cC4KVmlldy9SZXBseSBP bmxpbmUgKCMxMTUwMTUpOiBodHRwczovL2VkazIuZ3JvdXBzLmlvL2cvZGV2ZWwvbWVzc2FnZS8x MTUwMTUKTXV0ZSBUaGlzIFRvcGljOiBodHRwczovL2dyb3Vwcy5pby9tdC8xMDM5NzE2NTMvNzY4 NjE3NgpHcm91cCBPd25lcjogZGV2ZWwrb3duZXJAZWRrMi5ncm91cHMuaW8KVW5zdWJzY3JpYmU6 IGh0dHBzOi8vZWRrMi5ncm91cHMuaW8vZy9kZXZlbC91bnN1YiBbcmViZWNjYUBvcGVuZncuaW9d Ci09LT0tPS09LT0tPS09LT0tPS09LT0tCgoNCg== --_000_MN6PR11MB8244CEDAD39314EC53EEE99D8C422MN6PR11MB8244namp_ Content-Type: text/html; charset="utf-8" Content-Transfer-Encoding: base64 PGh0bWwgeG1sbnM6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiIHhtbG5zOm89InVy bjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZSIgeG1sbnM6dz0idXJuOnNjaGVt YXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6d29yZCIgeG1sbnM6bT0iaHR0cDovL3NjaGVtYXMubWlj cm9zb2Z0LmNvbS9vZmZpY2UvMjAwNC8xMi9vbW1sIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv VFIvUkVDLWh0bWw0MCI+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIg Y29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjxtZXRhIG5hbWU9IkdlbmVyYXRv ciIgY29udGVudD0iTWljcm9zb2Z0IFdvcmQgMTUgKGZpbHRlcmVkIG1lZGl1bSkiPg0KPCEtLVtp ZiAhbXNvXT48c3R5bGU+dlw6KiB7YmVoYXZpb3I6dXJsKCNkZWZhdWx0I1ZNTCk7fQ0Kb1w6KiB7 YmVoYXZpb3I6dXJsKCNkZWZhdWx0I1ZNTCk7fQ0Kd1w6KiB7YmVoYXZpb3I6dXJsKCNkZWZhdWx0 I1ZNTCk7fQ0KLnNoYXBlIHtiZWhhdmlvcjp1cmwoI2RlZmF1bHQjVk1MKTt9DQo8L3N0eWxlPjwh W2VuZGlmXS0tPjxzdHlsZT48IS0tDQovKiBGb250IERlZmluaXRpb25zICovDQpAZm9udC1mYWNl DQoJe2ZvbnQtZmFtaWx5OiJDYW1icmlhIE1hdGgiOw0KCXBhbm9zZS0xOjIgNCA1IDMgNSA0IDYg MyAyIDQ7fQ0KQGZvbnQtZmFjZQ0KCXtmb250LWZhbWlseTpEZW5nWGlhbjsNCglwYW5vc2UtMToy IDEgNiAwIDMgMSAxIDEgMSAxO30NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6Q2FsaWJyaTsN CglwYW5vc2UtMToyIDE1IDUgMiAyIDIgNCAzIDIgNDt9DQpAZm9udC1mYWNlDQoJe2ZvbnQtZmFt aWx5OkFwdG9zO30NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6IlxARGVuZ1hpYW4iOw0KCXBh bm9zZS0xOjIgMSA2IDAgMyAxIDEgMSAxIDE7fQ0KQGZvbnQtZmFjZQ0KCXtmb250LWZhbWlseTpD b25zb2xhczsNCglwYW5vc2UtMToyIDExIDYgOSAyIDIgNCAzIDIgNDt9DQovKiBTdHlsZSBEZWZp bml0aW9ucyAqLw0KcC5Nc29Ob3JtYWwsIGxpLk1zb05vcm1hbCwgZGl2Lk1zb05vcm1hbA0KCXtt YXJnaW46MGluOw0KCWZvbnQtc2l6ZToxMS4wcHQ7DQoJZm9udC1mYW1pbHk6IkNhbGlicmkiLHNh bnMtc2VyaWY7fQ0KYTpsaW5rLCBzcGFuLk1zb0h5cGVybGluaw0KCXttc28tc3R5bGUtcHJpb3Jp dHk6OTk7DQoJY29sb3I6Ymx1ZTsNCgl0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO30NCmE6dmlz aXRlZCwgc3Bhbi5Nc29IeXBlcmxpbmtGb2xsb3dlZA0KCXttc28tc3R5bGUtcHJpb3JpdHk6OTk7 DQoJY29sb3I6cHVycGxlOw0KCXRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7fQ0KcHJlDQoJe21z by1zdHlsZS1wcmlvcml0eTo5OTsNCgltc28tc3R5bGUtbGluazoiSFRNTCBQcmVmb3JtYXR0ZWQg Q2hhciI7DQoJbWFyZ2luOjBpbjsNCglmb250LXNpemU6MTAuMHB0Ow0KCWZvbnQtZmFtaWx5OiJD b3VyaWVyIE5ldyI7fQ0KcC5tc29ub3JtYWwwLCBsaS5tc29ub3JtYWwwLCBkaXYubXNvbm9ybWFs MA0KCXttc28tc3R5bGUtbmFtZTptc29ub3JtYWw7DQoJbXNvLW1hcmdpbi10b3AtYWx0OmF1dG87 DQoJbWFyZ2luLXJpZ2h0OjBpbjsNCgltc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0bzsNCgltYXJn aW4tbGVmdDowaW47DQoJZm9udC1zaXplOjExLjBwdDsNCglmb250LWZhbWlseToiQ2FsaWJyaSIs c2Fucy1zZXJpZjt9DQpzcGFuLkhUTUxQcmVmb3JtYXR0ZWRDaGFyDQoJe21zby1zdHlsZS1uYW1l OiJIVE1MIFByZWZvcm1hdHRlZCBDaGFyIjsNCgltc28tc3R5bGUtcHJpb3JpdHk6OTk7DQoJbXNv LXN0eWxlLWxpbms6IkhUTUwgUHJlZm9ybWF0dGVkIjsNCglmb250LWZhbWlseTpDb25zb2xhczt9 DQpzcGFuLkVtYWlsU3R5bGUyMQ0KCXttc28tc3R5bGUtdHlwZTpwZXJzb25hbDsNCglmb250LWZh bWlseToiQ2FsaWJyaSIsc2Fucy1zZXJpZjsNCgljb2xvcjp3aW5kb3d0ZXh0O30NCnNwYW4uRW1h aWxTdHlsZTIyDQoJe21zby1zdHlsZS10eXBlOnBlcnNvbmFsLXJlcGx5Ow0KCWZvbnQtZmFtaWx5 OiJDYWxpYnJpIixzYW5zLXNlcmlmOw0KCWNvbG9yOndpbmRvd3RleHQ7fQ0KLk1zb0NocERlZmF1 bHQNCgl7bXNvLXN0eWxlLXR5cGU6ZXhwb3J0LW9ubHk7DQoJZm9udC1zaXplOjEwLjBwdDsNCglt c28tbGlnYXR1cmVzOm5vbmU7fQ0KQHBhZ2UgV29yZFNlY3Rpb24xDQoJe3NpemU6OC41aW4gMTEu MGluOw0KCW1hcmdpbjoxLjBpbiAxLjBpbiAxLjBpbiAxLjBpbjt9DQpkaXYuV29yZFNlY3Rpb24x DQoJe3BhZ2U6V29yZFNlY3Rpb24xO30NCi0tPjwvc3R5bGU+PCEtLVtpZiBndGUgbXNvIDldPjx4 bWw+DQo8bzpzaGFwZWRlZmF1bHRzIHY6ZXh0PSJlZGl0IiBzcGlkbWF4PSIxMDI2IiAvPg0KPC94 bWw+PCFbZW5kaWZdLS0+PCEtLVtpZiBndGUgbXNvIDldPjx4bWw+DQo8bzpzaGFwZWxheW91dCB2 OmV4dD0iZWRpdCI+DQo8bzppZG1hcCB2OmV4dD0iZWRpdCIgZGF0YT0iMSIgLz4NCjwvbzpzaGFw ZWxheW91dD48L3htbD48IVtlbmRpZl0tLT4NCjwvaGVhZD4NCjxib2R5IGxhbmc9IkVOLVVTIiBs aW5rPSJibHVlIiB2bGluaz0icHVycGxlIiBzdHlsZT0id29yZC13cmFwOmJyZWFrLXdvcmQiPg0K PGRpdiBjbGFzcz0iV29yZFNlY3Rpb24xIj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPlN1cmUuPG86 cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5BIGxvY2FsIGZ1bmN0aW9uIGV4dGVy bmVkIGJ5IGFub3RoZXIgUEVJTSBhbmQgY2FsbGVkIGZyb20gdGhhdCBQRUlNIGlzIG5vdCBhIGdv b2QgcHJhY3RpY2UuPG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48bzpwPiZu YnNwOzwvbzpwPjwvcD4NCjxkaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4g c3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0FwdG9zJnF1b3Q7LHNhbnMtc2VyaWY7Y29sb3I6Ymxh Y2siPlRoYW5rcyw8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjwvZGl2Pg0KPHAgY2xh c3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0FwdG9zJnF1b3Q7 LHNhbnMtc2VyaWY7Y29sb3I6YmxhY2siPlJheTwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxkaXYg c3R5bGU9ImJvcmRlcjpub25lO2JvcmRlci1yaWdodDpzb2xpZCBibHVlIDEuNXB0O3BhZGRpbmc6 MGluIDBpbiAwaW4gNC4wcHQiPg0KPGRpdj4NCjxkaXYgc3R5bGU9ImJvcmRlcjpub25lO2JvcmRl ci10b3A6c29saWQgI0UxRTFFMSAxLjBwdDtwYWRkaW5nOjMuMHB0IDBpbiAwaW4gMGluIj4NCjxw IGNsYXNzPSJNc29Ob3JtYWwiPjxiPkZyb206PC9iPiBDaGFvIExpICZsdDtsaWNoYW9AbG9vbmdz b24uY24mZ3Q7IDxicj4NCjxiPlNlbnQ6PC9iPiBGcmlkYXksIEZlYnJ1YXJ5IDIsIDIwMjQgMTE6 NTEgQU08YnI+DQo8Yj5Ubzo8L2I+IGRldmVsQGVkazIuZ3JvdXBzLmlvOyBOaSwgUmF5ICZsdDty YXkubmlAaW50ZWwuY29tJmd0OzsgbGVyc2VrQHJlZGhhdC5jb208YnI+DQo8Yj5DYzo8L2I+IERv bmcsIEVyaWMgJmx0O2VyaWMuZG9uZ0BpbnRlbC5jb20mZ3Q7OyBLdW1hciwgUmFodWwgUiAmbHQ7 cmFodWwuci5rdW1hckBpbnRlbC5jb20mZ3Q7OyBHZXJkIEhvZmZtYW5uICZsdDtrcmF4ZWxAcmVk aGF0LmNvbSZndDs7IEJhb3FpIFpoYW5nICZsdDt6aGFuZ2Jhb3FpQGxvb25nc29uLmNuJmd0Ozsg RG9uZ3lhbiBRaWFuICZsdDtxaWFuZG9uZ3lhbkBsb29uZ3Nvbi5jbiZndDs7IFhpYW5nbGFpIExp ICZsdDtsaXhpYW5nbGFpQGxvb25nc29uLmNuJmd0OzsgQmlibyBNYW8gJmx0O21hb2JpYm9AbG9v bmdzb24uY24mZ3Q7PGJyPg0KPGI+U3ViamVjdDo8L2I+IFJlOiBbZWRrMi1kZXZlbF0gW1BBVENI IHY4IDE0LzM3XSBVZWZpQ3B1UGtnOiBBZGQgQ3B1TW11TGliIHRvIFVlZmlDcHVQa2c8bzpwPjwv bzpwPjwvcD4NCjwvZGl2Pg0KPC9kaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48bzpwPiZuYnNw OzwvbzpwPjwvcD4NCjxwPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAuMHB0Ij5IaSBSYXksPC9z cGFuPjxvOnA+PC9vOnA+PC9wPg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5i c3A7PC9vOnA+PC9wPg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJm b250LXNpemU6OC41cHQiPlRoYW5rcyw8YnI+DQpDaGFvPG86cD48L286cD48L3NwYW4+PC9wPg0K PC9kaXY+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5PbiAyMDI0LzIvMiAx MTozMywgTmksIFJheSB3cm90ZTo8bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPGJsb2NrcXVvdGUg c3R5bGU9Im1hcmdpbi10b3A6NS4wcHQ7bWFyZ2luLWJvdHRvbTo1LjBwdCI+DQo8cCBjbGFzcz0i TXNvTm9ybWFsIj5DaGFvLDxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+Q29u ZmlndXJlTWVtb3J5TWFuYWdlbWVudFVuaXQoKSBpcyBub3QgYSBsaWJyYXJ5IEFQSSBhbnltb3Jl LjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+V2hvIHdpbGwgY2FsbCBpdD8g SSBkb27igJl0IHNlZSBhbnkgcmVmZXJlbmNlIHRvIHRoaXMgZnVuY3Rpb24gaW5zaWRlIHRoZSBs aWIgc291cmNlLjxvOnA+PC9vOnA+PC9wPg0KPC9ibG9ja3F1b3RlPg0KPHA+SXQgYmVjb21lIGEg cHJpdmF0ZSBBUEksIGNhbGxlZCBhdCB0aGUgTG9vbmdBcmNoIHZpcnR1YWwvcGh5c2ljYWwgbWFj aGluZSBQRUlNLCBhbmQgd2hlbiBjYWxsZWQgaXQsIHRoZSBDIGZpbGUgc2hvdWxkIGV4dGVybiB0 aGlzIHN5bWJvbC48bzpwPjwvbzpwPjwvcD4NCjxwPlBsZWFzZSByZWZlciBpbmNvbWluZyBhbmQg b3V0Z29pbmcgbWFpbHMsIHRoaXMgbGlicmFyeSBwcm9iYWJseSBuZWVkIHRvIGJlIHJlZmFjdG9y ZWQsIHNvdGhlIEFQSXMgbWF5IGNoYW5nZSwgc28gUExTIGZvY3VzIG9uIHRoaXMgbW9kdWxlIGlu IGZ1dHVyZSBhbmQgaGVscCBtZSBtb3JlLCBwbGVhc2UuLi48bzpwPjwvbzpwPjwvcD4NCjxibG9j a3F1b3RlIHN0eWxlPSJtYXJnaW4tdG9wOjUuMHB0O21hcmdpbi1ib3R0b206NS4wcHQiPg0KPHAg Y2xhc3M9Ik1zb05vcm1hbCI+Jm5ic3A7PG86cD48L286cD48L3A+DQo8ZGl2Pg0KPGRpdj4NCjxw IGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtBcHRvcyZx dW90OyxzYW5zLXNlcmlmO2NvbG9yOmJsYWNrIj5UaGFua3MsPC9zcGFuPjxvOnA+PC9vOnA+PC9w Pg0KPC9kaXY+DQo8L2Rpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250 LWZhbWlseTomcXVvdDtBcHRvcyZxdW90OyxzYW5zLXNlcmlmO2NvbG9yOmJsYWNrIj5SYXk8L3Nw YW4+PG86cD48L286cD48L3A+DQo8ZGl2IHN0eWxlPSJib3JkZXI6bm9uZTtib3JkZXItbGVmdDpz b2xpZCBibHVlIDEuNXB0O3BhZGRpbmc6MGluIDBpbiAwaW4gMGluIj4NCjxkaXY+DQo8ZGl2IHN0 eWxlPSJib3JkZXI6bm9uZTtib3JkZXItdG9wOnNvbGlkICNFMUUxRTEgMS4wcHQ7cGFkZGluZzoz LjBwdCAwaW4gMGluIDBpbiI+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48Yj5Gcm9tOjwvYj4gQ2hh byBMaSA8YSBocmVmPSJtYWlsdG86bGljaGFvQGxvb25nc29uLmNuIj4mbHQ7bGljaGFvQGxvb25n c29uLmNuJmd0OzwvYT4NCjxicj4NCjxiPlNlbnQ6PC9iPiBUaHVyc2RheSwgRmVicnVhcnkgMSwg MjAyNCAzOjU4IFBNPGJyPg0KPGI+VG86PC9iPiA8YSBocmVmPSJtYWlsdG86ZGV2ZWxAZWRrMi5n cm91cHMuaW8iPmRldmVsQGVkazIuZ3JvdXBzLmlvPC9hPjsgPGEgaHJlZj0ibWFpbHRvOmxlcnNl a0ByZWRoYXQuY29tIj4NCmxlcnNla0ByZWRoYXQuY29tPC9hPjxicj4NCjxiPkNjOjwvYj4gRG9u ZywgRXJpYyA8YSBocmVmPSJtYWlsdG86ZXJpYy5kb25nQGludGVsLmNvbSI+Jmx0O2VyaWMuZG9u Z0BpbnRlbC5jb20mZ3Q7PC9hPjsgTmksIFJheQ0KPGEgaHJlZj0ibWFpbHRvOnJheS5uaUBpbnRl bC5jb20iPiZsdDtyYXkubmlAaW50ZWwuY29tJmd0OzwvYT47IEt1bWFyLCBSYWh1bCBSIDxhIGhy ZWY9Im1haWx0bzpyYWh1bC5yLmt1bWFyQGludGVsLmNvbSI+DQombHQ7cmFodWwuci5rdW1hckBp bnRlbC5jb20mZ3Q7PC9hPjsgR2VyZCBIb2ZmbWFubiA8YSBocmVmPSJtYWlsdG86a3JheGVsQHJl ZGhhdC5jb20iPiZsdDtrcmF4ZWxAcmVkaGF0LmNvbSZndDs8L2E+OyBCYW9xaSBaaGFuZw0KPGEg aHJlZj0ibWFpbHRvOnpoYW5nYmFvcWlAbG9vbmdzb24uY24iPiZsdDt6aGFuZ2Jhb3FpQGxvb25n c29uLmNuJmd0OzwvYT47IERvbmd5YW4gUWlhbg0KPGEgaHJlZj0ibWFpbHRvOnFpYW5kb25neWFu QGxvb25nc29uLmNuIj4mbHQ7cWlhbmRvbmd5YW5AbG9vbmdzb24uY24mZ3Q7PC9hPjsgWGlhbmds YWkgTGkNCjxhIGhyZWY9Im1haWx0bzpsaXhpYW5nbGFpQGxvb25nc29uLmNuIj4mbHQ7bGl4aWFu Z2xhaUBsb29uZ3Nvbi5jbiZndDs8L2E+OyBCaWJvIE1hbyA8YSBocmVmPSJtYWlsdG86bWFvYmli b0Bsb29uZ3Nvbi5jbiI+DQombHQ7bWFvYmlib0Bsb29uZ3Nvbi5jbiZndDs8L2E+PGJyPg0KPGI+ U3ViamVjdDo8L2I+IFJlOiBbZWRrMi1kZXZlbF0gW1BBVENIIHY4IDE0LzM3XSBVZWZpQ3B1UGtn OiBBZGQgQ3B1TW11TGliIHRvIFVlZmlDcHVQa2c8bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPC9k aXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj4mbmJzcDs8bzpwPjwvbzpwPjwvcD4NCjxwPjxzcGFu IHN0eWxlPSJmb250LXNpemU6MTAuMHB0Ij5IaSBMYXpzbG8sPC9zcGFuPjxvOnA+PC9vOnA+PC9w Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPiZuYnNwOzxvOnA+PC9vOnA+PC9wPg0KPGRp dj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6OC41cHQiPlRo YW5rcyw8YnI+DQpDaGFvPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8L2Rpdj4NCjxk aXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5PbiAyMDI0LzEvMzEgMTc6NDcsIExhc3psbyBFcnNl ayB3cm90ZTo8bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPGJsb2NrcXVvdGUgc3R5bGU9Im1hcmdp bi10b3A6NS4wcHQ7bWFyZ2luLWJvdHRvbTo1LjBwdCI+DQo8cHJlPk9uIDEvMjYvMjQgMDc6Mjks IENoYW8gTGkgd3JvdGU6PG86cD48L286cD48L3ByZT4NCjxibG9ja3F1b3RlIHN0eWxlPSJtYXJn aW4tdG9wOjUuMHB0O21hcmdpbi1ib3R0b206NS4wcHQiPg0KPHByZT5BZGQgYSBuZXcgbGlicmFy eSBuYW1lZCBDcHVNbXVMaWIgYW5kIGFkZCBhIExvb25nQXJjaDY0IGluc3RhbmNlIHdpdGggaW48 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT50aGUgbGlicmFyeS48bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT5JdCBwcm92aWRlcyB0d28tc3RhZ2UgTU1VIGxpYnJhcnlpbnN0YW5jZXMsIFBFSSBhbmQgRFhF LjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPkJa OiA8YSBocmVmPSJodHRwczovL2J1Z3ppbGxhLnRpYW5vY29yZS5vcmcvc2hvd19idWcuY2dpP2lk PTQ1ODQiPmh0dHBzOi8vYnVnemlsbGEudGlhbm9jb3JlLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDU4 NDwvYT48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4mbmJzcDs8bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT5DYzogRXJpYyBEb25nIDxhIGhyZWY9Im1haWx0bzplcmljLmRvbmdAaW50ZWwuY29tIj4mbHQ7 ZXJpYy5kb25nQGludGVsLmNvbSZndDs8L2E+PG86cD48L286cD48L3ByZT4NCjxwcmU+Q2M6IFJh eSBOaSA8YSBocmVmPSJtYWlsdG86cmF5Lm5pQGludGVsLmNvbSI+Jmx0O3JheS5uaUBpbnRlbC5j b20mZ3Q7PC9hPjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPkNjOiBMYXN6bG8gRXJzZWsgPGEgaHJl Zj0ibWFpbHRvOmxlcnNla0ByZWRoYXQuY29tIj4mbHQ7bGVyc2VrQHJlZGhhdC5jb20mZ3Q7PC9h PjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPkNjOiBSYWh1bCBLdW1hciA8YSBocmVmPSJtYWlsdG86 cmFodWwxLmt1bWFyQGludGVsLmNvbSI+Jmx0O3JhaHVsMS5rdW1hckBpbnRlbC5jb20mZ3Q7PC9h PjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPkNjOiBHZXJkIEhvZmZtYW5uIDxhIGhyZWY9Im1haWx0 bzprcmF4ZWxAcmVkaGF0LmNvbSI+Jmx0O2tyYXhlbEByZWRoYXQuY29tJmd0OzwvYT48bzpwPjwv bzpwPjwvcHJlPg0KPHByZT5TaWduZWQtb2ZmLWJ5OiBDaGFvIExpIDxhIGhyZWY9Im1haWx0bzps aWNoYW9AbG9vbmdzb24uY24iPiZsdDtsaWNoYW9AbG9vbmdzb24uY24mZ3Q7PC9hPjxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPkNvLWF1dGhvcmVkLWJ5OiBCYW9xaSBaaGFuZyA8YSBocmVmPSJtYWls dG86emhhbmdiYW9xaUBsb29uZ3Nvbi5jbiI+Jmx0O3poYW5nYmFvcWlAbG9vbmdzb24uY24mZ3Q7 PC9hPjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPkNvLWF1dGhvcmVkLWJ5OiBEb25neWFuIFFpYW4g PGEgaHJlZj0ibWFpbHRvOnFpYW5kb25neWFuQGxvb25nc29uLmNuIj4mbHQ7cWlhbmRvbmd5YW5A bG9vbmdzb24uY24mZ3Q7PC9hPjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPkNvLWF1dGhvcmVkLWJ5 OiBYaWFuZ2xhaSBMaSA8YSBocmVmPSJtYWlsdG86bGl4aWFuZ2xhaUBsb29uZ3Nvbi5jbiI+Jmx0 O2xpeGlhbmdsYWlAbG9vbmdzb24uY24mZ3Q7PC9hPjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPkNv LWF1dGhvcmVkLWJ5OiBCaWJvIE1hbyA8YSBocmVmPSJtYWlsdG86bWFvYmlib0Bsb29uZ3Nvbi5j biI+Jmx0O21hb2JpYm9AbG9vbmdzb24uY24mZ3Q7PC9hPjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJl Pi0tLTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiBVZWZpQ3B1UGtnL0xpYnJhcnkvQ3B1TW11TGli L0R4ZUNwdU1tdUxpYi5pbmYgfCZuYnNwOyAzNiArPG86cD48L286cD48L3ByZT4NCjxwcmU+IFVl ZmlDcHVQa2cvTGlicmFyeS9DcHVNbXVMaWIvRHhlQ3B1TW11TGliLnVuaSB8Jm5ic3A7IDE0ICs8 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4gLi4uL0NwdU1tdUxpYi9Mb29uZ0FyY2g2NC9Db21tb25N bXVMaWIuYyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB8IDk4OCArKysrKysrKysrKysr KysrKys8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4gLi4uL0NwdU1tdUxpYi9Mb29uZ0FyY2g2NC9D b21tb25NbXVMaWIuaCZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB8Jm5ic3A7IDQzICs8 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4gLi4uL0xpYnJhcnkvQ3B1TW11TGliL0xvb25nQXJjaDY0 L1BhZ2UuaCZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB8IDI3OSArKysrKzxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPiAuLi4vQ3B1TW11TGliL0xvb25nQXJjaDY0L1BlaUNwdU1tdUxpYi5j Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHwgMTc4ICsrKys8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4gLi4uL0xpYnJhcnkvQ3B1TW11TGliL0xvb25nQXJjaDY0L1RsYi5oJm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHwmbmJzcDsgNDggKzxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPiAuLi4vQ3B1TW11TGliL0xvb25nQXJjaDY0L1RsYk9wZXJhdGlvbi5TJm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHwmbmJzcDsgNDQgKzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJl PiBVZWZpQ3B1UGtnL0xpYnJhcnkvQ3B1TW11TGliL1BlaUNwdU1tdUxpYi5pbmYgfCZuYnNwOyA0 NCArPG86cD48L286cD48L3ByZT4NCjxwcmU+IFVlZmlDcHVQa2cvTGlicmFyeS9DcHVNbXVMaWIv UGVpQ3B1TW11TGliLnVuaSB8Jm5ic3A7IDE0ICs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4gVWVm aUNwdVBrZy9VZWZpQ3B1UGtnLmRzYyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB8Jm5ic3A7Jm5ic3A7IDQgKzxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPiAxMSBmaWxlcyBjaGFuZ2VkLCAxNjkyIGluc2VydGlvbnMoKyk8bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4gY3JlYXRlIG1vZGUgMTAwNjQ0IFVlZmlDcHVQa2cvTGlicmFyeS9D cHVNbXVMaWIvRHhlQ3B1TW11TGliLmluZjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiBjcmVhdGUg bW9kZSAxMDA2NDQgVWVmaUNwdVBrZy9MaWJyYXJ5L0NwdU1tdUxpYi9EeGVDcHVNbXVMaWIudW5p PG86cD48L286cD48L3ByZT4NCjxwcmU+IGNyZWF0ZSBtb2RlIDEwMDY0NCBVZWZpQ3B1UGtnL0xp YnJhcnkvQ3B1TW11TGliL0xvb25nQXJjaDY0L0NvbW1vbk1tdUxpYi5jPG86cD48L286cD48L3By ZT4NCjxwcmU+IGNyZWF0ZSBtb2RlIDEwMDY0NCBVZWZpQ3B1UGtnL0xpYnJhcnkvQ3B1TW11TGli L0xvb25nQXJjaDY0L0NvbW1vbk1tdUxpYi5oPG86cD48L286cD48L3ByZT4NCjxwcmU+IGNyZWF0 ZSBtb2RlIDEwMDY0NCBVZWZpQ3B1UGtnL0xpYnJhcnkvQ3B1TW11TGliL0xvb25nQXJjaDY0L1Bh Z2UuaDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiBjcmVhdGUgbW9kZSAxMDA2NDQgVWVmaUNwdVBr Zy9MaWJyYXJ5L0NwdU1tdUxpYi9Mb29uZ0FyY2g2NC9QZWlDcHVNbXVMaWIuYzxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPiBjcmVhdGUgbW9kZSAxMDA2NDQgVWVmaUNwdVBrZy9MaWJyYXJ5L0NwdU1t dUxpYi9Mb29uZ0FyY2g2NC9UbGIuaDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiBjcmVhdGUgbW9k ZSAxMDA2NDQgVWVmaUNwdVBrZy9MaWJyYXJ5L0NwdU1tdUxpYi9Mb29uZ0FyY2g2NC9UbGJPcGVy YXRpb24uUzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiBjcmVhdGUgbW9kZSAxMDA2NDQgVWVmaUNw dVBrZy9MaWJyYXJ5L0NwdU1tdUxpYi9QZWlDcHVNbXVMaWIuaW5mPG86cD48L286cD48L3ByZT4N CjxwcmU+IGNyZWF0ZSBtb2RlIDEwMDY0NCBVZWZpQ3B1UGtnL0xpYnJhcnkvQ3B1TW11TGliL1Bl aUNwdU1tdUxpYi51bmk8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4mbmJzcDs8bzpwPjwvbzpwPjwv cHJlPg0KPHByZT5kaWZmIC0tZ2l0IGEvVWVmaUNwdVBrZy9MaWJyYXJ5L0NwdU1tdUxpYi9EeGVD cHVNbXVMaWIuaW5mIGIvVWVmaUNwdVBrZy9MaWJyYXJ5L0NwdU1tdUxpYi9EeGVDcHVNbXVMaWIu aW5mPG86cD48L286cD48L3ByZT4NCjxwcmU+bmV3IGZpbGUgbW9kZSAxMDA2NDQ8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT5pbmRleCAwMDAwMDAwMDAwLi5iZmNlM2NlOTZkPG86cD48L286cD48L3By ZT4NCjxwcmU+LS0tIC9kZXYvbnVsbDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisrKyBiL1VlZmlD cHVQa2cvTGlicmFyeS9DcHVNbXVMaWIvRHhlQ3B1TW11TGliLmluZjxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPkBAIC0wLDAgKzEsMzYgQEA8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rIyMgQGZpbGU8 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rIyZuYnNwOyBDUFUgTWVtb3J5IE1hcCBVbml0IERYRSBw aGFzZSBkcml2ZXIuPG86cD48L286cD48L3ByZT4NCjxwcmU+KyM8bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rIyZuYnNwOyBDb3B5cmlnaHQgKGMpIDIwMjQgTG9vbmdzb24gVGVjaG5vbG9neSBDb3Jw b3JhdGlvbiBMaW1pdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLiZsdDtCUiZndDs8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4rIzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisjJm5ic3A7IFNQRFgtTGlj ZW5zZS1JZGVudGlmaWVyOiBCU0QtMi1DbGF1c2UtUGF0ZW50PG86cD48L286cD48L3ByZT4NCjxw cmU+KyM8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rIyM8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4r PG86cD48L286cD48L3ByZT4NCjxwcmU+K1tEZWZpbmVzXTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJl PismbmJzcDsgSU5GX1ZFUlNJT04mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsgPSAxLjI5PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNw OyBCQVNFX05BTUUmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgPSBEeGVDcHVNbXVMaWI8bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rJm5ic3A7IE1PRFVMRV9VTklfRklMRSZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyA9IER4ZUNwdU1tdUxpYi51bmk8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEZJ TEVfR1VJRCZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyA9IERBOEYwMjMyLUZCMTQtNDJGMC05MjJDLTYzMTA0RDJDNzBC RTxvOnA+PC9vOnA+PC9wcmU+DQo8L2Jsb2NrcXVvdGU+DQo8cHJlPiZuYnNwOzxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPigxKSBUaGlzIEZJTEVfR1VJRCB3YXMgY3JlYXRlZCBmcm9tIHRoZSBGSUxF X0dVSUQgb2Y8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4mcXVvdDtBcm1Qa2cvTGlicmFyeS9Bcm1N bXVMaWIvQXJtTW11QmFzZUxpYi5pbmYmcXVvdDsgYnkgYWRkaW5nIDEuIFRoYXQncyBub3QgYW48 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT5hY2NlcHRhYmxlIG1ldGhvZCBmb3IgR1VJRCBnZW5lcmF0 aW9uLjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJl PkEgbWV0aG9kIGlzIG9ubHkgYWNjZXB0YWJsZSBmb3IgR1VJRCBnZW5lcmF0aW9uIGlmIG11bHRp cGxlICg9IGFuPG86cD48L286cD48L3ByZT4NCjxwcmU+dW5saW1pdGVkIG51bWJlciBvZikgcGFy dGllcyBjYW4gZXhlY3V0ZSB0aGUgbWV0aG9kIGF0IGFueSB0aW1lLCBhbmQgdGhlPG86cD48L286 cD48L3ByZT4NCjxwcmU+b3V0cHV0IHJlbWFpbnMgY29uZmxpY3QtZnJlZS48bzpwPjwvbzpwPjwv cHJlPg0KPHByZT4mbmJzcDs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT5UYWtpbmcgYW4gZXhpc3Rl bnQgKGtub3duKSBGSUxFX0dVSUQgYW5kIGluY3JlbWVudGluZyBpdCBieSAxIGlzIG5vdDxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPnN1Y2ggYSBtZXRob2QuPG86cD48L286cD48L3ByZT4NCjxwcmU+ Jm5ic3A7PG86cD48L286cD48L3ByZT4NCjxwcmU+UGxlYXNlIHJlZ2VuZXJhdGUgdGhlIEdVSUQg d2l0aCAmcXVvdDt1dWlkZ2VuJnF1b3Q7LjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOzxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPlBsZWFzZSBhbHNvIHJldmlldyB0aGUgcmVzdCBvZiB5b3Vy IG5ldyBHVUlEcyBvdmVyIHRoaXMgc2VyaWVzIChub3Qgb25seTxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPkZJTEVfR1VJRHMgaW4gSU5GIGZpbGVzLCBidXQgYW55IG90aGVyIEdVSURzLCB0b28pLjxv OnA+PC9vOnA+PC9wcmU+DQo8L2Jsb2NrcXVvdGU+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5PSywg SSB3aWxsIHJlZ2VuZXJhdGUgdGhlIEdVSUQgaW4gbmV4dCBjb21taXQuIDxicj4NCjxicj4NCjxi cj4NCjxvOnA+PC9vOnA+PC9wPg0KPGJsb2NrcXVvdGUgc3R5bGU9Im1hcmdpbi10b3A6NS4wcHQ7 bWFyZ2luLWJvdHRvbTo1LjBwdCI+DQo8cHJlPiZuYnNwOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJl PiZuYnNwOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOzxvOnA+PC9vOnA+PC9wcmU+DQo8 YmxvY2txdW90ZSBzdHlsZT0ibWFyZ2luLXRvcDo1LjBwdDttYXJnaW4tYm90dG9tOjUuMHB0Ij4N CjxwcmU+KyZuYnNwOyBNT0RVTEVfVFlQRSZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyA9IERYRV9EUklWRVI8bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rJm5ic3A7IFZFUlNJT05fU1RSSU5HJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7ID0gMS4wPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBMSUJSQVJZX0NM QVNTJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ID0gQ3B1TW11 TGliIHwgRFhFX0RSSVZFUjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQ09OU1RSVUNU T1ImbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsgPSBNbXVJbml0aWFsaXplPG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPisjPG86cD48L286cD48L3ByZT4NCjxwcmU+KyMmbmJzcDsgVkFMSURfQVJDSElU RUNUVVJFUyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyA9IExPT05HQVJDSDY0PG86cD48L286cD48L3ByZT4NCjxwcmU+KyM8bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+K1tTb3VyY2VzLkxvb25n QXJjaDY0XTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgTG9vbmdBcmNoNjQvVGxiT3Bl cmF0aW9uLlMmbmJzcDsmbmJzcDsgfCBHQ0M8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7 IExvb25nQXJjaDY0L0NvbW1vbk1tdUxpYi5jPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNw OyBMb29uZ0FyY2g2NC9QYWdlLmg8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IExvb25n QXJjaDY0L1RsYi5oPG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPitbUGFja2FnZXNdPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBNZGVQa2cvTWRl UGtnLmRlYzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgVWVmaUNwdVBrZy9VZWZpQ3B1 UGtnLmRlYzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4r W0xpYnJhcnlDbGFzc2VzXTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgRGVidWdMaWI8 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IE1lbW9yeUFsbG9jYXRpb25MaWI8bzpwPjwv bzpwPjwvcHJlPg0KPHByZT5kaWZmIC0tZ2l0IGEvVWVmaUNwdVBrZy9MaWJyYXJ5L0NwdU1tdUxp Yi9EeGVDcHVNbXVMaWIudW5pIGIvVWVmaUNwdVBrZy9MaWJyYXJ5L0NwdU1tdUxpYi9EeGVDcHVN bXVMaWIudW5pPG86cD48L286cD48L3ByZT4NCjxwcmU+bmV3IGZpbGUgbW9kZSAxMDA2NDQ8bzpw PjwvbzpwPjwvcHJlPg0KPHByZT5pbmRleCAwMDAwMDAwMDAwLi43MzQyMjQ5NTE2PG86cD48L286 cD48L3ByZT4NCjxwcmU+LS0tIC9kZXYvbnVsbDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisrKyBi L1VlZmlDcHVQa2cvTGlicmFyeS9DcHVNbXVMaWIvRHhlQ3B1TW11TGliLnVuaTxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPkBAIC0wLDAgKzEsMTQgQEA8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rLy8g LyoqIEBmaWxlPG86cD48L286cD48L3ByZT4NCjxwcmU+Ky8vIENQVSBNZW1vcnkgTWFuYWdlciBV bml0IGxpYnJhcnkgaW5zdGFuY2UgZm9yIERYRSBtb2R1bGVzLjxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPisvLzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisvLyBDUFUgTWVtb3J5IE1hbmFnZXIgVW5p dCBsaWJyYXJ5IGluc3RhbmNlIGZvciBEWEUgbW9kdWxlcy48bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rLy88bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rLy8gQ29weXJpZ2h0IChjKSAyMDI0LCBMb29u Z3NvbiBUZWNobm9sb2d5IENvcnBvcmF0aW9uIExpbWl0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQu Jmx0O0JSJmd0OzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisvLzxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPisvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNlLVBhdGVudDxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPisvLzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisvLyAqKi88bzpw PjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyNzdHJpbmcgU1RS X01PRFVMRV9BQlNUUkFDVCZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAjbGFuZ3VhZ2UgZW4tVVMgJnF1b3Q7Q1BV IE1lbW9yeSBNYW5hZ2VyIFVuaXQgbGlicmFyeSBpbnN0YW5jZSBmb3IgRFhFIG1vZHVsZXMuJnF1 b3Q7PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisjc3Ry aW5nIFNUUl9NT0RVTEVfREVTQ1JJUFRJT04mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgI2xhbmd1YWdlIGVuLVVTICZxdW90O0NQVSBNZW1vcnkg TWFuYWdlciBVbml0IGxpYnJhcnkgaW5zdGFuY2UgZm9yIERYRSBtb2R1bGVzLiZxdW90OzxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPmRpZmYgLS1naXQgYS9VZWZpQ3B1UGtnL0xpYnJhcnkvQ3B1TW11 TGliL0xvb25nQXJjaDY0L0NvbW1vbk1tdUxpYi5jIGIvVWVmaUNwdVBrZy9MaWJyYXJ5L0NwdU1t dUxpYi9Mb29uZ0FyY2g2NC9Db21tb25NbXVMaWIuYzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPm5l dyBmaWxlIG1vZGUgMTAwNjQ0PG86cD48L286cD48L3ByZT4NCjxwcmU+aW5kZXggMDAwMDAwMDAw MC4uMmU4NTJjMzM3MTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPi0tLSAvZGV2L251bGw8bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4rKysgYi9VZWZpQ3B1UGtnL0xpYnJhcnkvQ3B1TW11TGliL0xvb25n QXJjaDY0L0NvbW1vbk1tdUxpYi5jPG86cD48L286cD48L3ByZT4NCjxwcmU+QEAgLTAsMCArMSw5 ODggQEA8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rLyoqIEBmaWxlPG86cD48L286cD48L3ByZT4N CjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQ1BVIE1lbW9yeSBNYXAgVW5p dCBIYW5kbGVyIExpYnJhcnkgY29tbW9uIGZ1bmN0aW9ucy48bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBDb3B5cmlnaHQgKGMpIDIwMjQgTG9v bmdzb24gVGVjaG5vbG9neSBDb3Jwb3JhdGlvbiBMaW1pdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVk LiZsdDtCUiZndDs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxw cmU+KyZuYnNwOyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNlLVBhdGVudDxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEBw YXIgR2xvc3Nhcnk6PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyAt IFBnZCBvciBQZ2Qgb3IgUEdEJm5ic3A7Jm5ic3A7Jm5ic3A7IC0gUGFnZSBHbG9iYWwgRGlyZWN0 b3J5PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyAtIFB1ZCBvciBQ dWQgb3IgUFVEJm5ic3A7Jm5ic3A7Jm5ic3A7IC0gUGFnZSBVcHBlciBEaXJlY3Rvcnk8bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IC0gUG1kIG9yIFBtZCBvciBQTUQm bmJzcDsmbmJzcDsmbmJzcDsgLSBQYWdlIE1pZGRsZSBEaXJlY3Rvcnk8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IC0gUHRlIG9yIHB0ZSBvciBQVEUmbmJzcDsmbmJz cDsmbmJzcDsgLSBQYWdlIFRhYmxlIEVudHJ5PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNw OyZuYnNwOyZuYnNwOyAtIFZhbCBvciBWQUwgb3IgdmFsJm5ic3A7Jm5ic3A7Jm5ic3A7IC0gVmFs dWU8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IC0gRGlyJm5ic3A7 Jm5ic3A7Jm5ic3A7IC0gRGlyZWN0b3J5PG86cD48L286cD48L3ByZT4NCjxwcmU+KyoqLzxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPisjaW5jbHVkZSAmbHQ7VWVmaS5oJmd0OzxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPisjaW5jbHVkZSAmbHQ7TGlicmFyeS9CYXNlTGliLmgmZ3Q7PG86cD48L286cD48 L3ByZT4NCjxwcmU+KyNpbmNsdWRlICZsdDtMaWJyYXJ5L0Jhc2VNZW1vcnlMaWIuaCZndDs8bzpw PjwvbzpwPjwvcHJlPg0KPHByZT4rI2luY2x1ZGUgJmx0O0xpYnJhcnkvQ3B1TW11TGliLmgmZ3Q7 PG86cD48L286cD48L3ByZT4NCjxwcmU+KyNpbmNsdWRlICZsdDtMaWJyYXJ5L0RlYnVnTGliLmgm Z3Q7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyNpbmNsdWRlICZsdDtMaWJyYXJ5L01lbW9yeUFs bG9jYXRpb25MaWIuaCZndDs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rI2luY2x1ZGUgJmx0O1Jl Z2lzdGVyL0xvb25nQXJjaDY0L0Nzci5oJmd0OzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisjaW5j bHVkZSAmcXVvdDtUbGIuaCZxdW90OzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisjaW5jbHVkZSAm cXVvdDtQYWdlLmgmcXVvdDs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3By ZT4NCjxwcmU+KyNkZWZpbmUgU1dBUF9QQUdFX0RJUiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBDc3JS ZWFkKExPT05HQVJDSF9DU1JfUEdETCk8bzpwPjwvbzpwPjwvcHJlPg0KPC9ibG9ja3F1b3RlPg0K PHByZT4mbmJzcDs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4oMikgTWlzc2luZyBzcGFjZSBhZnRl ciAmcXVvdDtDc3JSZWFkJnF1b3Q7LjxvOnA+PC9vOnA+PC9wcmU+DQo8L2Jsb2NrcXVvdGU+DQo8 cCBjbGFzcz0iTXNvTm9ybWFsIj5PSy48YnI+DQo8YnI+DQo8YnI+DQo8bzpwPjwvbzpwPjwvcD4N CjxibG9ja3F1b3RlIHN0eWxlPSJtYXJnaW4tdG9wOjUuMHB0O21hcmdpbi1ib3R0b206NS4wcHQi Pg0KPHByZT4mbmJzcDs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4mbmJzcDs8bzpwPjwvbzpwPjwv cHJlPg0KPGJsb2NrcXVvdGUgc3R5bGU9Im1hcmdpbi10b3A6NS4wcHQ7bWFyZ2luLWJvdHRvbTo1 LjBwdCI+DQo8cHJlPisjZGVmaW5lIEVGSV9NRU1PUllfQ0FDSEVUWVBFX01BU0smbmJzcDsgKEVG SV9NRU1PUllfVUMmbmJzcDsgfCBcPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBFRklfTUVNT1JZX1dDJm5ic3A7IHwgXDxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsgRUZJX01FTU9SWV9XVCZuYnNwOyB8IFw8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IEVGSV9NRU1PUllfV0ImbmJzcDsgfCBc PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDtFRklfTUVNT1JZX1VDRSZuYnNwOyZuYnNwOyBcPG86cD48L286cD48L3ByZT4NCjxw cmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyApPG86cD48L286cD48 L3ByZT4NCjwvYmxvY2txdW90ZT4NCjxwcmU+Jm5ic3A7PG86cD48L286cD48L3ByZT4NCjxwcmU+ KDMpIFRoaXMgc2VlbXMgdG8gY29tZSBmcm9tICZxdW90O0FybVBrZy9JbmNsdWRlL0xpYnJhcnkv QXJtTGliLmgmcXVvdDs7IGl0J3Mgbm90PG86cD48L286cD48L3ByZT4NCjxwcmU+Z3JlYXQgcmVn YXJkbGVzczogd2Ugc2hvdWxkbid0IHVzZSB0aGUgRUZJXyBwcmVmaXggZm9yIHN5bWJvbHMgdGhh dCBhcmU8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT5ub3Qgc3RhbmRhcmQuIChQdXQgZGlmZmVyZW50 bHksIEVGSV8gaXMgYSByZXNlcnZlZCBuYW1lc3BhY2UgcHJlZml4IGZvcjxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPnRoZSBVRUZJIGFuZCBQSSBzcGVjcy4pPG86cD48L286cD48L3ByZT4NCjwvYmxv Y2txdW90ZT4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPk9LLCBJIHdpbGwgcmVuYW1lIHdpdGggb3V0 IEVGSV9wZXJmaXggbmV4dCB0aW1lLjxicj4NCjxicj4NCjxicj4NCjxvOnA+PC9vOnA+PC9wPg0K PGJsb2NrcXVvdGUgc3R5bGU9Im1hcmdpbi10b3A6NS4wcHQ7bWFyZ2luLWJvdHRvbTo1LjBwdCI+ DQo8cHJlPiZuYnNwOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOzxvOnA+PC9vOnA+PC9w cmU+DQo8YmxvY2txdW90ZSBzdHlsZT0ibWFyZ2luLXRvcDo1LjBwdDttYXJnaW4tYm90dG9tOjUu MHB0Ij4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPitCT09MRUFOJm5ic3A7IG1NbXVJ bml0ZWQgPSBGQUxTRTs8bzpwPjwvbzpwPjwvcHJlPg0KPC9ibG9ja3F1b3RlPg0KPHByZT4mbmJz cDs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4oNCkgVGhpcyBzaG91bGQgYmUgU1RBVElDLCBJIGJl bGlldmUuPG86cD48L286cD48L3ByZT4NCjxwcmU+Jm5ic3A7PG86cD48L286cD48L3ByZT4NCjxw cmU+KDUpIFNvIHRoaXMgaXMgdGhlIHBvaW50IHdoZXJlIEkgcmVhbGl6ZSB0aGF0IHRoZSBsaWJy YXJ5IGRlc2lnbiBtYWtlczxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPm5vIHNlbnNlIHRvIG1lLjxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPk5vcm1h bGx5IHlvdSBjcmVhdGUgU0VDL1BFSSB2cy4gRFhFIHBoYXNlIGluc3RhbmNlcyBvZiBhIGxpYnJh cnk8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT5iZWNhdXNlLCB1c2luZyB3cml0YWJsZSBnbG9iYWwg dmFyaWFibGVzLCB5b3UgY2FuIGdhaW4gcGVyZm9ybWFuY2UgKHlvdTxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPmNhbiByZW1lbWJlciB0aGUgaW5pdGlhbGl6YXRpb24pIGluIERYRSwgYnV0IGluIFNF Qy9QRUksIHlvdSBkb24ndCBoYXZlPG86cD48L286cD48L3ByZT4NCjxwcmU+d3JpdGVhYmxlIGds b2JhbCB2YXJpYWJsZXMuPG86cD48L286cD48L3ByZT4NCjxwcmU+Jm5ic3A7PG86cD48L286cD48 L3ByZT4NCjxwcmU+VGhpcyBwYXR0ZXJuIGRvZXMgbm90IHNlZW0gdG8gYXBwbHkgaGVyZSwgb3Ig YXQgbGVhc3QgaXQgZG9lc24ndCBzZWVtIHRvPG86cD48L286cD48L3ByZT4NCjxwcmU+d29yay4g SGVyZSdzIHdoeTo8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4mbmJzcDs8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4tIHRoZSB2YXJpYWJsZSBtTW11SW5pdGVkIGFuZCB0aGUgZnVuY3Rpb24gTW11SW5p dGlhbGl6ZSAod2hpY2ggY29udGFpbnM8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT5hbiBhc3NpZ25t ZW50IHRvIHRoZSB2YXJpYWJsZSkgYXJlIGluICZxdW90O0NvbW1vbk1tdUxpYi5jJnF1b3Q7LCB3 aGljaCBnZXRzIGJ1aWx0PG86cD48L286cD48L3ByZT4NCjxwcmU+aW50byBib3RoIGxpYnJhcnkg aW5zdGFuY2VzLiBUaGlzIG1ha2VzIG5vIHNlbnNlOyB0aGF0IGFzc2lnbm1lbnQgY2Fubm90PG86 cD48L286cD48L3ByZT4NCjxwcmU+d29yayBpbiBTRUMvUEVJIChJIHByZXN1bWUgeW91J3JlIG5v dCBnb2luZyB0byBoYXZlIHdyaXRlYWJsZSBnbG9iYWxzIC0tPG86cD48L286cD48L3ByZT4NCjxw cmU+ZXhlY3V0aW5nIGZyb20gZmxhc2gpLjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOzxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPi0gSSB0aGluayB5b3UgbWF5IGJlIHRyeWluZyB0byBtYWtl IHVwIGZvciB0aGF0IHByb2JsZW0gYnkgY2hlY2tpbmc8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT5T V0FQX1BBR0VfRElSICh0aGUgTE9PTkdBUkNIX0NTUl9QR0RMIHJlZ2lzdGVyKSBpbiBNbXVJbml0 aWFsaXplKCkgYW5kPG86cD48L286cD48L3ByZT4NCjxwcmU+TW11SXNJbml0KCkuIFRoYXQgZG9l c24ndCBzZWVtIHJpZ2h0LjxvOnA+PC9vOnA+PC9wcmU+DQo8L2Jsb2NrcXVvdGU+DQo8cD5ZZXMs IHlvdSBhcmUgcmlnaHQsIHRoZSBQRUkgc3RhZ2UgbWF5IGJlIGV4ZWN1dGVkIGZyb20gZmxhc2gs IGluIHRoaXMgY2FzZSwgd2UgaGF2ZSBubyB3YXkgdG8gd3JpdGUgZ2xvYmFsIHZhcmlhYmxlcywg c28gd2UgY2FuIG9ubHkgY2hlY2sgd2hldGhlciBDU1JfUEdETCBpcyBOVUxMIGluIHRoZSBEWEUg c3RhZ2UgdG8gZ2V0IHdoZXRoZXIgdGhlIE1NVSBoYXMgYmVlbiBpbml0aWFsaXplZC48bzpwPjwv bzpwPjwvcD4NCjxibG9ja3F1b3RlIHN0eWxlPSJtYXJnaW4tdG9wOjUuMHB0O21hcmdpbi1ib3R0 b206NS4wcHQiPg0KPHByZT4mbmJzcDs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4mbmJzcDs8bzpw PjwvbzpwPjwvcHJlPg0KPHByZT4tIFRoZSBQRUkgaW5zdGFuY2Ugb2YgdGhlIGxpYnJhcnkgY29u dGFpbnMgYW4gRUZJQVBJIGZ1bmN0aW9uIGNhbGxlZDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPkNv bmZpZ3VyZU1lbW9yeU1hbmFnZW1lbnRVbml0KCkuIFRoaXMgZnVuY3Rpb24gaXMgbmV2ZXIgY2Fs bGVkIGluIHRoaXM8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT5wYXRjaCwgd2hpY2ggbWFrZXMgbWUg dGhpbmsgaXQncyBzdXBwb3NlZCB0byBiZSBjYWxsZWQgZnJvbSBkcml2ZXIgb3I8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT5hcHBsaWNhdGlvbiBjb2RlIChpLmUuLCBub3QgZnJvbSB3aXRoaW4gdGhl IGxpYnJhcnkgaXRzZWxmLCBidXQgZnJvbTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPmNsaWVudCBj b2RlKS4gSG93ZXZlciwgQ29uZmlndXJlTWVtb3J5TWFuYWdlbWVudFVuaXQoKSBpcyBhbHNvIG5v dDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPmRlY2xhcmVkIGluIHRoZSBwcmV2aW91cyBwYXRjaCAo aW48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4mcXVvdDtVZWZpQ3B1UGtnL0luY2x1ZGUvTGlicmFy eS9DcHVNbXVMaWIuaCZxdW90Oyk7IHRoZXJlZm9yZSBjbGllbnQgY29kZSBjYW5ub3Q8bzpwPjwv bzpwPjwvcHJlPg0KPHByZT5yZWFjaCBpdCBhdCBhbGwgLS0gc28gdGhhdCBmdW5jdGlvbiBkb2Vz bid0IGV2ZW4gYmVsb25nIGluIHRoaXMgbGlicmFyeS48bzpwPjwvbzpwPjwvcHJlPg0KPC9ibG9j a3F1b3RlPg0KPHA+VGhpcyBBUEkgd2FzIGRpc2N1c3NlZCB3aXRoIFJheSBpbiB0aGUgVjMgcGF0 Y2ggMTMuIEFjdHVhbGx5LCB0aGUgQ3B1TW11TGliLmggaW5jbHVkZSBtb3JlIEFQSXMgYmVmb3Jl LCBSYXkgYmVsaWV2ZWQgdGhhdCBvdGhlciBBUElzIHNob3VsZCBub3QgYmUgb3BlbiB0byB1c2Vy cyBvciBzb21lIEFQSXMgY2FuIGJlIGRvbmUgYnkgdGhlIGJhc2UgQVBJcywgYW5kIGluIG15IG9w aW5pb24sIHRoZSBDb25maWd1cmVNZW1vcnlNYW5hZ2VtZW50VW5pdCgpDQogaXMgYSBwcml2YXRl IEFQSSwgc28gaW4gVjQsIGl0IGhhcyBiZWVuIHJlbW92ZWQgZnJvbSBDcHVNbXVMaWIuaC48bzpw PjwvbzpwPjwvcD4NCjxwPlNvIHdoYXQgZG8geW91IHRoaW5rPyB0aGUgQ29uZmlndXJlTWVtb3J5 TWFuYWdlbWVudFVuaXQgc2hvdWxkIGJlIGFkZGVkIGJhY2s/PG86cD48L286cD48L3A+DQo8Ymxv Y2txdW90ZSBzdHlsZT0ibWFyZ2luLXRvcDo1LjBwdDttYXJnaW4tYm90dG9tOjUuMHB0Ij4NCjxw cmU+Jm5ic3A7PG86cD48L286cD48L3ByZT4NCjxwcmU+Jm5ic3A7PG86cD48L286cD48L3ByZT4N CjxwcmU+LSBNbXVJbml0aWFsaXplKCkgZG9lc24ndCBhY3R1YWxseSBkbyBhbnl0aGluZywgaXQg anVzdCBjaGVja3MgKHZpYSB0aGU8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT5DU1IpIHdoZXRoZXIg c29tZSBvdGhlciBjb21wb25lbnQgaGFzIGFscmVhZHkgaW5pdGlhbGl6ZWQgdGhlIE1NVTxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPihsaWtlbHkgd2l0aCBDb25maWd1cmVNZW1vcnlNYW5hZ2VtZW50 VW5pdCgpKS4gQW5kIHRoZSBzb2xlIHB1cnBvc2Ugb2Y8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT5N bXVJc0luaXQoKSBhcHBlYXJzIHRvIGJlIHRvIHJldHVybiBmcm9tIHRoZSBwdWJsaWMgbGlicmFy eSBBUElzPG86cD48L286cD48L3ByZT4NCjxwcmU+U2V0TWVtb3J5UmVnaW9uQXR0cmlidXRlcygp IGFuZCBHZXRNZW1vcnlSZWdpb25BdHRyaWJ1dGVzKCkgZWFybHksIGlmPG86cD48L286cD48L3By ZT4NCjxwcmU+dGhhdCAmcXVvdDtvdGhlciZxdW90OyAodW5rbm93bikgY29tcG9uZW50IGhhcyBu b3QgY2FsbGVkPG86cD48L286cD48L3ByZT4NCjxwcmU+Q29uZmlndXJlTWVtb3J5TWFuYWdlbWVu dFVuaXQoKSB5ZXQuPG86cD48L286cD48L3ByZT4NCjxwcmU+Jm5ic3A7PG86cD48L286cD48L3By ZT4NCjxwcmU+U28sIEkgZG9uJ3QgdW5kZXJzdGFuZCB3aGF0IHlvdSBhcmUgdHJ5aW5nIHRvIGRv LiBJIGNvdWxkIGV4cGxhaW4gaG93IHRvPG86cD48L286cD48L3ByZT4NCjxwcmU+a2VlcCB0aGUg aW5pdGlhbGl6YXRpb24gbG9naWMgKmRpZmZlcmVuY2VzKiBtaW5pbWFsIGJldHdlZW4gdGhlIFNF Qy9QRUk8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT5hbmQgdGhlIERYRSBsaWJyYXJ5IGluc3RhbmNl cywgYnV0IEkgZG9uJ3QgdW5kZXJzdGFuZCBob3cgLyB3aGVuIHRoZSBNTVU8bzpwPjwvbzpwPjwv cHJlPg0KPHByZT5pbml0aWFsaXphdGlvbiBpcyBzdXBwb3NlZCB0byBvY2N1ciBpbiB0aGUgZmly c3QgcGxhY2UuPG86cD48L286cD48L3ByZT4NCjwvYmxvY2txdW90ZT4NCjxwPkxldCdzIG1lIHRl bGwgeW91IHRoaXMgbGlicmFyeSBob3cgdG8gd29yazo8bzpwPjwvbzpwPjwvcD4NCjxwPkluIFBF SSBzdGFnZSwgaW4gYWRkaXRpb24gdG8gZW5zdXJpbmcgdGhhdCB0aGUgTU1VIGlzIG5vdCB1c2Vk LCB0aGUgdXNlciBtdXN0IGNhbGwgdGhlIENvbmZpZ3VyZU1lbW9yeU1hbmFnZW1lbnRVbml0IHRv aW5pdGlhbGl6YXRpb24gdGhlIE1NVSwgc3VjaCBhcyBmaWxsaW5nIHRoZSBzdGF0aWMgcGFnZSB0 YWJsZXMsIHNldCB0aGUgVExCIHJlZmlsbCBleGNlcHRpb24gZW50cnkgcG9pbnQsIHNldCB0aGUg cGFnZSBzaXplIGV0Yy4gdGhlIENvbmZpZ3VyZU1lbW9yeU1hbmFnZW1lbnRVbml0DQogaXMgYSBw cml2YXRlIEFQSSBidXQgcmVsYXRlZCB0byBBUkNILjxvOnA+PC9vOnA+PC9wPg0KPHA+RHVyaW5n IERYRSBzdGFnZSwgdGhpcyBsaWJyYXJ5IHdpbGwgcHJvdmlkZSBzZXJ2aWNlcyBmb3IgQ3B1RHhl IGFuZCBvdGhlciBkcml2ZXJzLCBidXQgYWxtb3N0IGNoYW5nZXMgdG8gbWVtb3J5IHBhZ2UgYXR0 cmlidXRlcyB1c2UgdGhlIHByb3RvY29scyBwcm92aWRlZCBieSBDcHVEeGUuIFRoYXQgaXMgd2h5 IHRoZSBDcHVNbXVMaWIuaCBvbmx5IGNvbnRhaW5zIHR3byBBUElzLCBpdCBvbmx5IGNhbiBnZXQv c2V0IHRoZSBhdHRyaWJ1dGUuPG86cD48L286cD48L3A+DQo8cD5JbiBzaG9ydCwgdGhlIFBFSSBz dGFnZSBuZWVkcyB0byBpbml0aWFsaXplIGFuZCBzZXQgdXAgVExCIHJlZmlsbCBlbnRyeSBwb2lu dCBhbmQgbWV0aG9kKGR5bmFtaWNhbGx5IHBvcHVsYXRlIHRoZSBUTEIsIGtlZXAgdGhlIFBBID09 IFZBKSwgYW5kIERYRSBzdGFnZSBpcyBwcm92aWRlcyBzZXJ2aWNlcyBmb3IgY2hhbmdpbmcgdGhl IG1lbW9yeSBhdHRyaWJ1dGVzLjxvOnA+PC9vOnA+PC9wPg0KPGJsb2NrcXVvdGUgc3R5bGU9Im1h cmdpbi10b3A6NS4wcHQ7bWFyZ2luLWJvdHRvbTo1LjBwdCI+DQo8cHJlPiZuYnNwOzxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPiZuYnNwOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPig2KSBUaGUgcGF0 Y2ggaXMgdG9vIGxhcmdlIGluIGdlbmVyYWwuIFlvdSBzaG91bGQgY29uc3RydWN0IHRoZXNlPG86 cD48L286cD48L3ByZT4NCjxwcmU+bGlicmFyeSBpbnN0YW5jZXMgb3ZlciBtdWx0aXBsZSBwYXRj aGVzLiBUaGUgZmlyc3QgcGF0Y2ggY291bGQgYWRkIHNvbWU8bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT5kZWNsYXJhdGlvbnMgLyBtYWNybyBkZWZpbml0aW9ucywgc3VjaCBhcyAmcXVvdDtQYWdlLmgm cXVvdDsgYW5kICZxdW90O1RsYi5oJnF1b3Q7LiBBbm90aGVyPG86cD48L286cD48L3ByZT4NCjxw cmU+cGF0Y2ggY291bGQgYWRkIHRoZSBhc3NlbWJseSBsYW5ndWFnZSBoZWxwZXIgZnVuY3Rpb25z LiBBbm90aGVyIHBhdGNoPG86cD48L286cD48L3ByZT4NCjxwcmU+Y291bGQgYWRkIHRoZSBQRUkg cGhhc2UgbGlicmFyeSBpbnN0YW5jZSAoaW5jbHVkaW5nIHRoZSBjb21tb24gY29kZSkuIEE8bzpw PjwvbzpwPjwvcHJlPg0KPHByZT5maW5hbCBwYXRjaCBjb3VsZCBhZGQgdGhlIERYRS1waGFzZSBi aXRzLjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJl PlRoZSBpZGVhIGlzIHRvIHByb2NlZWQgaW4gbGF5ZXJzLCBsb2dpY2FsbHkgYnVpbGRpbmcgb25l IG9uIHRvcCBvZiB0aGU8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT5vdGhlci4gSXQncyBmaW5lIGlm IHRoZSBsaWJyYXJ5IGRvZXNuJ3QgYnVpbGQgaW5pdGlhbGx5OyB0aGVyZSBpcyBubzxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPmF0dGVtcHQgdG8gYnVpbGQgaXQgYW55d2F5IHVudGlsIHlvdSBhY3R1 YWxseSByZWZlcmVuY2UgdGhlIElORiBmaWxlcyBpbjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPnNv bWUgRFNDIGZpbGVzLiBTbyBwbGVhc2Ugc3BsaXQgdGhpcyBhdCBsZWFzdCBpbiA0IHBhdGNoZXMu PG86cD48L286cD48L3ByZT4NCjwvYmxvY2txdW90ZT4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPk9L LCBJIHdpbGwgdHJ5IGl0Ljxicj4NCjxicj4NCjxicj4NCjxvOnA+PC9vOnA+PC9wPg0KPGJsb2Nr cXVvdGUgc3R5bGU9Im1hcmdpbi10b3A6NS4wcHQ7bWFyZ2luLWJvdHRvbTo1LjBwdCI+DQo8cHJl PiZuYnNwOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOzxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPig3KSBUaGUgY29tbWl0IG1lc3NhZ2Ugc2hvdWxkIGV4cGxhaW4gdGhlIGV4cGVjdGVkIHVz YWdlIG1vZGVsIGluIGRldGFpbC48bzpwPjwvbzpwPjwvcHJlPg0KPC9ibG9ja3F1b3RlPg0KPHAg Y2xhc3M9Ik1zb05vcm1hbCI+T0suPGJyPg0KPGJyPg0KPGJyPg0KPG86cD48L286cD48L3A+DQo8 YmxvY2txdW90ZSBzdHlsZT0ibWFyZ2luLXRvcDo1LjBwdDttYXJnaW4tYm90dG9tOjUuMHB0Ij4N CjxwcmU+Jm5ic3A7PG86cD48L286cD48L3ByZT4NCjxwcmU+Jm5ic3A7PG86cD48L286cD48L3By ZT4NCjxwcmU+QmVzdCByZWdhcmRzLDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPkxhc3psbzxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOzxv OnA+PC9vOnA+PC9wcmU+DQo8YmxvY2txdW90ZSBzdHlsZT0ibWFyZ2luLXRvcDo1LjBwdDttYXJn aW4tYm90dG9tOjUuMHB0Ij4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisvKio8bzpw PjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IENoZWNrIHRvIHNlZSBpZiBtbXUgc3VjY2Vzc2Z1 bGx5IGluaXRpYWxpemVzLjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rJm5ic3A7IEBwYXJhbSZuYnNwOyBWT0lELjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJl Pis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEByZXR2YWwmbmJzcDsgVFJVRSZuYnNw OyBJbml0aWFsaXphdGlvbiBoYXMgYmVlbiBjb21wbGV0ZWQuPG86cD48L286cD48L3ByZT4NCjxw cmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyBGQUxTRSBJbml0aWFsaXphdGlvbiBkaWQgbm90IGNvbXBsZXRlLjxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPisqKi88bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rU1RBVElDPG86cD48L286 cD48L3ByZT4NCjxwcmU+K0JPT0xFQU48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rTW11SXNJbml0 ICg8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IFZPSUQ8bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rJm5ic3A7ICk8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rezxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPismbmJzcDsgaWYgKG1NbXVJbml0ZWQgfHwgKFNXQVBfUEFHRV9ESVIgIT0gMCkpIHs8 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IHJldHVybiBUUlVFOzxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgfTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IHJldHVybiBGQUxTRTs8bzpwPjwvbzpwPjwv cHJlPg0KPHByZT4rfTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rLyoqPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBJdGVyYXRlcyB0aHJvdWdo IHRoZSBwYWdlIGRpcmVjdG9yeSB0byBpbml0aWFsaXplIGl0LjxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEBwYXJhbSZuYnNwOyBEc3QmbmJz cDsgQSBwb2ludGVyIHRvIHRoZSBkaXJlY3Rvcnkgb2YgdGhlIHBhZ2UgdG8gaW5pdGlhbGl6ZS48 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEBwYXJhbSZuYnNwOyBOdW0mbmJzcDsgVGhl IG51bWJlciBvZiBwYWdlIGRpcmVjdG9yaWVzIHRvIGluaXRpYWxpemUuPG86cD48L286cD48L3By ZT4NCjxwcmU+KyZuYnNwOyBAcGFyYW0mbmJzcDsgU3JjJm5ic3A7IEEgcG9pbnRlciB0byB0aGUg ZGF0YSB1c2VkIHRvIGluaXRpYWxpemUgdGhlIHBhZ2UgZGlyZWN0b3J5LjxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEByZXR1cm4gVk9JRC48 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rKiovPG86cD48L286cD48L3ByZT4NCjxwcmU+K1NUQVRJ QzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPitWT0lEPG86cD48L286cD48L3ByZT4NCjxwcmU+K1Bh Z2VEaXJJbml0ICg8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IElOIFZPSUQmbmJzcDsm bmJzcDsgKkRzdCw8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IElOIFVJTlROJm5ic3A7 IE51bSw8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IElOIFZPSUQmbmJzcDsmbmJzcDsg KlNyYzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgKTxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPit7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBVSU5UTiZuYnNwOyAqUHRyOzxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgVUlOVE4mbmJzcDsgKkVuZDs8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4rJm5ic3A7IFVJTlROJm5ic3A7IEVudHJ5OzxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEVudHJ5ID0gKFVJTlROKVNy Yzs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IFB0ciZuYnNwOyZuYnNwOyA9IChVSU5U TiAqKURzdDs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEVuZCZuYnNwOyZuYnNwOyA9 IFB0ciArIE51bTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxw cmU+KyZuYnNwOyBmb3IgKCA7IFB0ciAmbHQ7IEVuZDsgUHRyKyspIHs8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7ICpQdHIgPSBFbnRyeTs8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rJm5ic3A7IH08bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3By ZT4NCjxwcmU+KyZuYnNwOyByZXR1cm47PG86cD48L286cD48L3ByZT4NCjxwcmU+K308bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+Ky8qKjxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPismbmJzcDsgR2V0cyB0aGUgdmlydHVhbCBhZGRyZXNzIGNvcnJlc3BvbmRp bmcgdG8gdGhlIHBhZ2UgZ2xvYmFsIGRpcmVjdG9yeSB0YWJsZSBlbnRyeS48bzpwPjwvbzpwPjwv cHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcGFyYW0mbmJzcDsg QWRkcmVzcyZuYnNwOyB0aGUgdmlydHVhbCBhZGRyZXNzIGZvciB0aGUgdGFibGUgZW50cnkuPG86 cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQHJl dHZhbCBQR0QgQSBwb2ludGVyIHRvIGdldCB0aGUgdGFibGUgaXRlbS48bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rKiovPG86cD48L286cD48L3ByZT4NCjxwcmU+K1NUQVRJQzxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPitQR0QgKjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPitQZ2RPZmZzZXQgKDxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgSU4gVUlOVE4mbmJzcDsgQWRkcmVzczxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPismbmJzcDsgKTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPit7PG86cD48 L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyByZXR1cm4gKFBHRCAqKShTV0FQX1BBR0VfRElSKSAr IFBHRF9JTkRFWCAoQWRkcmVzcyk7PG86cD48L286cD48L3ByZT4NCjxwcmU+K308bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+Ky8qKjxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPismbmJzcDsgR2V0cyB0aGUgdmlydHVhbCBhZGRyZXNzIGNvcnJlc3BvbmRpbmcg dG8gdGhlIHBhZ2UgdXBwZXIgZGlyZWN0b3J5IHRhYmxlIGVudHJ5LjxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEBwYXJhbSZuYnNwOyBQZ2Qm bmJzcDsgQSBwb2ludGVyIHRvIGEgcGFnZSBnbG9iYWwgZGlyZWN0b3J5IHRhYmxlIGVudHJ5Ljxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQHBhcmFtJm5ic3A7IEFkZHJlc3MmbmJzcDsg dGhlIHZpcnR1YWwgYWRkcmVzcyBmb3IgdGhlIHRhYmxlIGVudHJ5LjxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEByZXR2YWwgUFVEIEEgcG9p bnRlciB0byBnZXQgdGhlIHRhYmxlIGl0ZW0uPG86cD48L286cD48L3ByZT4NCjxwcmU+KyoqLzxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPitTVEFUSUM8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rUFVE ICo8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rUHVkT2Zmc2V0ICg8bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rJm5ic3A7IElOIFBHRCZuYnNwOyZuYnNwOyZuYnNwOyAqUGdkLDxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPismbmJzcDsgSU4gVUlOVE4mbmJzcDsgQWRkcmVzczxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPismbmJzcDsgKTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPit7PG86cD48L286cD48L3By ZT4NCjxwcmU+KyZuYnNwOyBVSU5UTiZuYnNwOyBQZ2RWYWw7PG86cD48L286cD48L3ByZT4NCjxw cmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgUGdkVmFsID0gKFVJTlROKVBHRF9W QUwgKCpQZ2QpOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rJm5ic3A7IHJldHVybiAoUFVEICopUGdkVmFsICsgUFVEX0lOREVYIChBZGRyZXNzKTs8bzpw PjwvbzpwPjwvcHJlPg0KPHByZT4rfTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4rLyoqPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBHZXRzIHRo ZSB2aXJ0dWFsIGFkZHJlc3MgY29ycmVzcG9uZGluZyB0byB0aGUgcGFnZSBtaWRkbGUgZGlyZWN0 b3J5IHRhYmxlIGVudHJ5LjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rJm5ic3A7IEBwYXJhbSZuYnNwOyBQdWQmbmJzcDsgQSBwb2ludGVyIHRvIGEgcGFn ZSB1cHBlciBkaXJlY3RvcnkgdGFibGUgZW50cnkuPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZu YnNwOyBAcGFyYW0mbmJzcDsgQWRkcmVzcyZuYnNwOyB0aGUgdmlydHVhbCBhZGRyZXNzIGZvciB0 aGUgdGFibGUgZW50cnkuPG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPismbmJzcDsgQHJldHZhbCBQTUQgQSBwb2ludGVyIHRvIGdldCB0aGUgdGFibGUgaXRl bS48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rKiovPG86cD48L286cD48L3ByZT4NCjxwcmU+K1NU QVRJQzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPitQTUQgKjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJl PitQbWRPZmZzZXQgKDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgSU4gUFVEJm5ic3A7 Jm5ic3A7Jm5ic3A7ICpQdWQsPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBJTiBVSU5U TiZuYnNwOyBBZGRyZXNzPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyApPG86cD48L286 cD48L3ByZT4NCjxwcmU+K3s8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IFVJTlROJm5i c3A7IFB1ZFZhbDs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxw cmU+KyZuYnNwOyBQdWRWYWwgPSBQVURfVkFMICgqUHVkKTs8bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyByZXR1cm4gKFBNRCAqKVB1ZFZhbCAr IFBNRF9JTkRFWCAoQWRkcmVzcyk7PG86cD48L286cD48L3ByZT4NCjxwcmU+K308bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+Ky8qKjxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPismbmJzcDsgR2V0cyB0aGUgdmlydHVhbCBhZGRyZXNzIGNvcnJlc3BvbmRpbmcg dG8gdGhlIHBhZ2UgdGFibGUgZW50cnkuPG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQHBhcmFtJm5ic3A7IFBtZCZuYnNwOyBBIHBvaW50ZXIg dG8gYSBwYWdlIG1pZGRsZSBkaXJlY3RvcnkgdGFibGUgZW50cnkuPG86cD48L286cD48L3ByZT4N CjxwcmU+KyZuYnNwOyBAcGFyYW0mbmJzcDsgQWRkcmVzcyZuYnNwOyB0aGUgdmlydHVhbCBhZGRy ZXNzIGZvciB0aGUgdGFibGUgZW50cnkuPG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQHJldHZhbCBQVEUgQSBwb2ludGVyIHRvIGdldCB0aGUg dGFibGUgaXRlbS48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rKiovPG86cD48L286cD48L3ByZT4N CjxwcmU+K1NUQVRJQzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPitQVEUgKjxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPitQdGVPZmZzZXQgKDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgSU4g UE1EJm5ic3A7Jm5ic3A7Jm5ic3A7ICpQbWQsPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNw OyBJTiBVSU5UTiZuYnNwOyBBZGRyZXNzPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyAp PG86cD48L286cD48L3ByZT4NCjxwcmU+K3s8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7 IFVJTlROJm5ic3A7IFBtZFZhbDs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48 L3ByZT4NCjxwcmU+KyZuYnNwOyBQbWRWYWwgPSAoVUlOVE4pUE1EX1ZBTCAoKlBtZCk7PG86cD48 L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgcmV0dXJu IChQVEUgKilQbWRWYWwgKyBQVEVfSU5ERVggKEFkZHJlc3MpOzxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPit9PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisv Kio8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IFNldHMgdGhlIHZhbHVlIG9mIHRoZSBw YWdlIHRhYmxlIGVudHJ5LjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rJm5ic3A7IEBwYXJhbSZuYnNwOyBQdGUmbmJzcDsgQSBwb2ludGVyIHRvIGEgcGFn ZSB0YWJsZSBlbnRyeS48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEBwYXJhbSZuYnNw OyBQdGVWYWwmbmJzcDsgVGhlIHZhbHVlIG9mIHRoZSBwYWdlIHRhYmxlIGVudHJ5IHRvIHNldC48 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyoqLzxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPitTVEFUSUM8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rVk9JRDxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPitTZXRQdGUgKDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPism bmJzcDsgSU4gUFRFJm5ic3A7ICpQdGUsPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBJ TiBQVEUmbmJzcDsgUHRlVmFsPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyApPG86cD48 L286cD48L3ByZT4NCjxwcmU+K3s8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7ICpQdGUg PSBQdGVWYWw7PG86cD48L286cD48L3ByZT4NCjxwcmU+K308bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+Ky8qKjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPism bmJzcDsgU2V0cyB0aGUgdmFsdWUgb2YgdGhlIHBhZ2UgZ2xvYmFsIGRpcmVjdG9yeS48bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcGFyYW0m bmJzcDsgUGdkJm5ic3A7IEEgcG9pbnRlciB0byBhIHBhZ2UgZ2xvYmFsIGRpcmVjdG9yeS48bzpw PjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEBwYXJhbSZuYnNwOyBQdWQmbmJzcDsgVGhlIHZh bHVlIG9mIHRoZSBwYWdlIGdsb2JhbCBkaXJlY3RvcnkgdG8gc2V0LjxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rKiovPG86cD48L286cD48L3ByZT4NCjxw cmU+K1NUQVRJQzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPitWT0lEPG86cD48L286cD48L3ByZT4N CjxwcmU+K1NldFBnZCAoPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBJTiBQR0QmbmJz cDsgKlBnZCw8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IElOIFBVRCZuYnNwOyAqUHVk PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyApPG86cD48L286cD48L3ByZT4NCjxwcmU+ K3s8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7ICpQZ2QgPSAoUEdEKSB7PG86cD48L286 cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyAoKFVJTlROKVB1ZCk8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4rJm5ic3A7IH07PG86cD48L286cD48L3ByZT4NCjxwcmU+K308bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+Ky8qKjxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPismbmJzcDsgU2V0cyB0aGUgdmFsdWUgb2YgdGhlIHBhZ2UgdXBwZXIgZGly ZWN0b3J5LjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4r Jm5ic3A7IEBwYXJhbSZuYnNwOyBQdWQmbmJzcDsgQSBwb2ludGVyIHRvIGEgcGFnZSB1cHBlciBk aXJlY3RvcnkuPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcGFyYW0mbmJzcDsgUG1k Jm5ic3A7IFRoZSB2YWx1ZSBvZiB0aGUgcGFnZSB1cHBlciBkaXJlY3RvcnkgdG8gc2V0LjxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rKiovPG86cD48L286 cD48L3ByZT4NCjxwcmU+K1NUQVRJQzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPitWT0lEPG86cD48 L286cD48L3ByZT4NCjxwcmU+K1NldFB1ZCAoPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNw OyBJTiBQVUQmbmJzcDsgKlB1ZCw8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IElOIFBN RCZuYnNwOyAqUG1kPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyApPG86cD48L286cD48 L3ByZT4NCjxwcmU+K3s8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7ICpQdWQgPSAoUFVE KSB7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyAoKFVJTlROKVBt ZCk8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IH07PG86cD48L286cD48L3ByZT4NCjxw cmU+K308bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+Ky8q KjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgU2V0cyB0aGUgdmFsdWUgb2YgdGhlIHBh Z2UgbWlkZGxlIGRpcmVjdG9yeS48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48 L3ByZT4NCjxwcmU+KyZuYnNwOyBAcGFyYW0mbmJzcDsgUG1kJm5ic3A7IEEgcG9pbnRlciB0byBh IHBhZ2UgbWlkZGxlIGRpcmVjdG9yeS48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEBw YXJhbSZuYnNwOyBQdGUmbmJzcDsgVGhlIHZhbHVlIG9mIHRoZSBwYWdlIG1pZGRsZSBkaXJlY3Rv cnkgdG8gc2V0LjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rKiovPG86cD48L286cD48L3ByZT4NCjxwcmU+K1NUQVRJQzxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPitWT0lEPG86cD48L286cD48L3ByZT4NCjxwcmU+K1NldFBtZCAoPG86cD48L286cD48L3By ZT4NCjxwcmU+KyZuYnNwOyBJTiBQTUQmbmJzcDsgKlBtZCw8bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rJm5ic3A7IElOIFBURSZuYnNwOyAqUHRlPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNw OyApPG86cD48L286cD48L3ByZT4NCjxwcmU+K3s8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5i c3A7ICpQbWQgPSAoUE1EKSB7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZu YnNwOyAoKFVJTlROKVB0ZSk8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IH07PG86cD48 L286cD48L3ByZT4NCjxwcmU+K308bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48 L3ByZT4NCjxwcmU+Ky8qKjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgRnJlZSB1cCBt ZW1vcnkgc3BhY2Ugb2NjdXBpZWQgYnkgcGFnZSB0YWJsZXMuPG86cD48L286cD48L3ByZT4NCjxw cmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQHBhcmFtJm5ic3A7IFB0ZSZuYnNw OyBBIHBvaW50ZXIgdG8gdGhlIHBhZ2UgdGFibGUuPG86cD48L286cD48L3ByZT4NCjxwcmU+Kzxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPisqKi88bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rVk9JRDxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPitQdGVGcmVlICg8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4r Jm5ic3A7IElOIFBURSZuYnNwOyAqUHRlPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyAp PG86cD48L286cD48L3ByZT4NCjxwcmU+K3s8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7 IEZyZWVQYWdlcyAoKFZPSUQgKilQdGUsIDEpOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPit9PG86 cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisvKio8bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEZyZWUgdXAgbWVtb3J5IHNwYWNlIG9jY3VwaWVkIGJ5 IHBhZ2UgbWlkZGxlIGRpcmVjdG9yeS48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286 cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcGFyYW0mbmJzcDsgUG1kJm5ic3A7IEEgcG9pbnRlciB0 byB0aGUgcGFnZSBtaWRkbGUgZGlyZWN0b3J5LjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpw PjwvbzpwPjwvcHJlPg0KPHByZT4rKiovPG86cD48L286cD48L3ByZT4NCjxwcmU+K1ZPSUQ8bzpw PjwvbzpwPjwvcHJlPg0KPHByZT4rUG1kRnJlZSAoPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZu YnNwOyBJTiBQTUQmbmJzcDsgKlBtZDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgKTxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPit7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBG cmVlUGFnZXMgKChWT0lEICopUG1kLCAxKTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rfTxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rLyoqPG86cD48L286 cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBGcmVlIHVwIG1lbW9yeSBzcGFjZSBvY2N1cGllZCBieSBw YWdlIHVwcGVyIGRpcmVjdG9yeS48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48 L3ByZT4NCjxwcmU+KyZuYnNwOyBAcGFyYW0mbmJzcDsgUHVkJm5ic3A7IEEgcG9pbnRlciB0byB0 aGUgcGFnZSB1cHBlciBkaXJlY3RvcnkuPG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPisqKi88bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rVk9JRDxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPitQdWRGcmVlICg8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7 IElOIFBVRCZuYnNwOyAqUHVkPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyApPG86cD48 L286cD48L3ByZT4NCjxwcmU+K3s8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEZyZWVQ YWdlcyAoKFZPSUQgKilQdWQsIDEpOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPit9PG86cD48L286 cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisvKio8bzpwPjwvbzpwPjwv cHJlPg0KPHByZT4rJm5ic3A7IFJlcXVlc3RzIHRoZSBtZW1vcnkgc3BhY2UgcmVxdWlyZWQgZm9y IHRoZSBwYWdlIHVwcGVyIGRpcmVjdG9yeSw8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7 IGluaXRpYWxpemVzIGl0LCBhbmQgcGxhY2VzIGl0IGluIHRoZSBzcGVjaWZpZWQgcGFnZSBnbG9i YWwgZGlyZWN0b3J5PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPismbmJzcDsgQHBhcmFtJm5ic3A7IFBnZCZuYnNwOyBBIHBvaW50ZXIgdG8gdGhlIHBhZ2Ug Z2xvYmFsIGRpcmVjdG9yeS48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3By ZT4NCjxwcmU+KyZuYnNwOyBAcmV0dmFsJm5ic3A7IEVGSV9TVUNDRVNTJm5ic3A7IE1lbW9yeSBy ZXF1ZXN0IHN1Y2Nlc3NmdWwuPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcmV0dmFs Jm5ic3A7IEVGSV9PVVRfT0ZfUkVTT1VSQ0VTJm5ic3A7IFJlc291cmNlIGV4aGF1c3Rpb24gY2Fu bm90IGJlIHJlcXVlc3RlZCB0byBtZW1vcnkuPG86cD48L286cD48L3ByZT4NCjxwcmU+KyoqLzxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPitTVEFUSUM8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rRUZJ X1NUQVRVUzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPitQdWRBbGxvYyAoPG86cD48L286cD48L3By ZT4NCjxwcmU+KyZuYnNwOyBJTiBQR0QmbmJzcDsgKlBnZDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJl PismbmJzcDsgKTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPit7PG86cD48L286cD48L3ByZT4NCjxw cmU+KyZuYnNwOyBQVUQmbmJzcDsgKlB1ZDs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48 L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBQdWQgPSAoUFVEICopQWxsb2NhdGVQYWdlcyAoMSk7 PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBpZiAoUHVkID09IE5VTEwpIHs8bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IHJldHVybiBFRklfT1VUX09GX1JF U09VUkNFUzs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IH08bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBQYWdlRGlySW5pdCAoKFZP SUQgKilQdWQsIEVOVFJZU19QRVJfUFVELCAoVk9JRCAqKUlOVkFMSURfUEFHRSk7PG86cD48L286 cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgU2V0UGdkIChQ Z2QsIFB1ZCk7PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJl PismbmJzcDsgcmV0dXJuIEVGSV9TVUNDRVNTOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPit9PG86 cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisvKio8bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IFJlcXVlc3RzIHRoZSBtZW1vcnkgc3BhY2UgcmVxdWly ZWQgZm9yIHRoZSBwYWdlIG1pZGRsZSBkaXJlY3RvcnksPG86cD48L286cD48L3ByZT4NCjxwcmU+ KyZuYnNwOyBpbml0aWFsaXplcyBpdCwgYW5kIHBsYWNlcyBpdCBpbiB0aGUgc3BlY2lmaWVkIHBh Z2UgdXBwZXIgZGlyZWN0b3J5PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPismbmJzcDsgQHBhcmFtJm5ic3A7IFB1ZCZuYnNwOyBBIHBvaW50ZXIgdG8gdGhl IHBhZ2UgdXBwZXIgZGlyZWN0b3J5LjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4rJm5ic3A7IEByZXR2YWwmbmJzcDsgRUZJX1NVQ0NFU1MmbmJzcDsgTWVt b3J5IHJlcXVlc3Qgc3VjY2Vzc2Z1bC48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEBy ZXR2YWwmbmJzcDsgRUZJX09VVF9PRl9SRVNPVVJDRVMmbmJzcDsgUmVzb3VyY2UgZXhoYXVzdGlv biBjYW5ub3QgYmUgcmVxdWVzdGVkIHRvIG1lbW9yeS48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4r KiovPG86cD48L286cD48L3ByZT4NCjxwcmU+K1NUQVRJQzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJl PitFRklfU1RBVFVTPG86cD48L286cD48L3ByZT4NCjxwcmU+K1BtZEFsbG9jICg8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4rJm5ic3A7IElOIFBVRCZuYnNwOyAqUHVkPG86cD48L286cD48L3ByZT4N CjxwcmU+KyZuYnNwOyApPG86cD48L286cD48L3ByZT4NCjxwcmU+K3s8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rJm5ic3A7IFBNRCZuYnNwOyAqUG1kOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IFBtZCA9IChQTUQgKilBbGxvY2F0ZVBhZ2Vz ICgxKTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IGlmICghUG1kKSB7PG86cD48L286 cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyByZXR1cm4gRUZJX09VVF9PRl9SRVNP VVJDRVM7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyB9PG86cD48L286cD48L3ByZT4N CjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgUGFnZURpckluaXQgKChWT0lE ICopUG1kLCBFTlRSWVNfUEVSX1BNRCwgKFZPSUQgKilJTlZBTElEX1BBR0UpOzxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IFNldFB1ZCAoUHVk LCBQbWQpOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4r Jm5ic3A7IHJldHVybiBFRklfU1VDQ0VTUzs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rfTxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rLyoqPG86cD48L286 cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBSZXF1ZXN0cyB0aGUgbWVtb3J5IHNwYWNlIHJlcXVpcmVk IGZvciB0aGUgcGFnZSB0YWJsZSw8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IGluaXRp YWxpemVzIGl0LCBhbmQgcGxhY2VzIGl0IGluIHRoZSBzcGVjaWZpZWQgcGFnZSBtaWRkbGUgZGly ZWN0b3J5PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPism bmJzcDsgQHBhcmFtJm5ic3A7IFBtZCZuYnNwOyBBIHBvaW50ZXIgdG8gdGhlIHBhZ2UgbWlkZGxl IGRpcmVjdG9yeS48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxw cmU+KyZuYnNwOyBAcmV0dmFsJm5ic3A7IEVGSV9TVUNDRVNTJm5ic3A7IE1lbW9yeSByZXF1ZXN0 IHN1Y2Nlc3NmdWwuPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcmV0dmFsJm5ic3A7 IEVGSV9PVVRfT0ZfUkVTT1VSQ0VTJm5ic3A7IFJlc291cmNlIGV4aGF1c3Rpb24gY2Fubm90IGJl IHJlcXVlc3RlZCB0byBtZW1vcnkuPG86cD48L286cD48L3ByZT4NCjxwcmU+KyoqLzxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPitTVEFUSUM8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rRUZJX1NUQVRV UzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPitQdGVBbGxvYyAoPG86cD48L286cD48L3ByZT4NCjxw cmU+KyZuYnNwOyBJTiBQTUQmbmJzcDsgKlBtZDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJz cDsgKTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPit7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZu YnNwOyBQVEUmbmJzcDsgKlB0ZTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48 L3ByZT4NCjxwcmU+KyZuYnNwOyBQdGUgPSAoUFRFICopQWxsb2NhdGVQYWdlcyAoMSk7PG86cD48 L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBpZiAoIVB0ZSkgezxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgcmV0dXJuIEVGSV9PVVRfT0ZfUkVTT1VSQ0VTOzxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgfTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpw PjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IFB0ZSA9IFplcm9NZW0gKFB0ZSwgRUZJX1BBR0Vf U0laRSk7PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPism bmJzcDsgU2V0UG1kIChQbWQsIFB0ZSk7PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPismbmJzcDsgcmV0dXJuIEVGSV9TVUNDRVNTOzxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPit9PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPisvKio8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IFJlcXVlc3RzIHRoZSBtZW1v cnkgc3BhY2UgcmVxdWlyZWQgZm9yIHRoZSBwYWdlIHVwcGVyIGRpcmVjdG9yeSw8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4rJm5ic3A7IGluaXRpYWxpemVzIGl0LCBhbmQgcGxhY2VzIGl0IGluIHRo ZSBzcGVjaWZpZWQgcGFnZSBnbG9iYWwgZGlyZWN0b3J5LDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJl PismbmJzcDsgYW5kIGdldCB0aGUgcGFnZSB1cHBlciBkaXJlY3RvcnkgZW50cnkgY29ycmVzcG9u ZGluZyB0byB0aGUgdmlydHVhbCBhZGRyZXNzLjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpw PjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEBwYXJhbSZuYnNwOyBQZ2QmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsgQSBwb2ludGVyIHRvIHRoZSBwYWdlIGdsb2JhbCBkaXJlY3Rvcnku PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcGFyYW0mbmJzcDsgQWRkcmVzcyZuYnNw OyBUaGUgY29ycmVzcG9uZGluZyB2aXJ0dWFsIGFkZHJlc3Mgb2YgdGhlIHBhZ2UgdGFibGUgZW50 cnkuPG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJz cDsgQHJldHZhbCZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyBBIHBvaW50ZXIgdG8gdGhlIHBhZ2UgdXBwZXIgZGlyZWN0b3J5IGVudHJ5LiBSZXR1 cm4gTlVMTCwgaWY8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGFsbG9jYXRlIHRoZSBtZW1vcnkgYnVmZmVy IGlzIGZhaWwuPG86cD48L286cD48L3ByZT4NCjxwcmU+KyoqLzxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPitTVEFUSUM8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rUFVEICo8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rUHVkQWxsb2NHZXQgKDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgSU4g UEdEJm5ic3A7Jm5ic3A7Jm5ic3A7ICpQZ2QsPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNw OyBJTiBVSU5UTiZuYnNwOyBBZGRyZXNzPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyAp PG86cD48L286cD48L3ByZT4NCjxwcmU+K3s8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7 IEVGSV9TVEFUVVMmbmJzcDsgU3RhdHVzOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IGlmIChQR0RfSVNfRU1QVFkgKCpQZ2QpKSB7PG86cD48 L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyBTdGF0dXMgPSBQdWRBbGxvYyAo UGdkKTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IEFTU0VSVF9F RklfRVJST1IgKFN0YXR1cyk7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZu YnNwOyBpZiAoRUZJX0VSUk9SIChTdGF0dXMpKSB7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyByZXR1cm4gTlVMTDs8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IH08bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5i c3A7IH08bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZu YnNwOyByZXR1cm4gUHVkT2Zmc2V0IChQZ2QsIEFkZHJlc3MpOzxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPit9PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisv Kio8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IFJlcXVlc3RzIHRoZSBtZW1vcnkgc3Bh Y2UgcmVxdWlyZWQgZm9yIHRoZSBwYWdlIG1pZGRsZSBkaXJlY3RvcnksPG86cD48L286cD48L3By ZT4NCjxwcmU+KyZuYnNwOyBpbml0aWFsaXplcyBpdCwgYW5kIHBsYWNlcyBpdCBpbiB0aGUgc3Bl Y2lmaWVkIHBhZ2UgdXBwZXIgZGlyZWN0b3J5LDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJz cDsgYW5kIGdldCB0aGUgcGFnZSBtaWRkbGUgZGlyZWN0b3J5IGVudHJ5IGNvcnJlc3BvbmRpbmcg dG8gdGhlIHZpcnR1YWwgYWRkcmVzcy48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286 cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcGFyYW0mbmJzcDsgUHVkJm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7IEEgcG9pbnRlciB0byB0aGUgcGFnZSB1cHBlciBkaXJlY3RvcnkuPG86cD48 L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcGFyYW0mbmJzcDsgQWRkcmVzcyZuYnNwOyBUaGUg Y29ycmVzcG9uZGluZyB2aXJ0dWFsIGFkZHJlc3Mgb2YgdGhlIHBhZ2UgdGFibGUgZW50cnkuPG86 cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQHJl dHZhbCZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyBBIHBvaW50ZXIgdG8gdGhlIHBhZ2UgbWlkZGxlIGRpcmVjdG9yeSBlbnRyeS4gUmV0dXJuIE5V TEwsIGlmPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBhbGxvY2F0ZSB0aGUgbWVtb3J5IGJ1ZmZlciBpcyBm YWlsLjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisqKi88bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4r U1RBVElDPG86cD48L286cD48L3ByZT4NCjxwcmU+K1BNRCAqPG86cD48L286cD48L3ByZT4NCjxw cmU+K1BtZEFsbG9jR2V0ICg8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IElOIFBVRCZu YnNwOyZuYnNwOyZuYnNwOyAqUHVkLDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgSU4g VUlOVE4mbmJzcDsgQWRkcmVzczxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgKTxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPit7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBFRklf U1RBVFVTJm5ic3A7IFN0YXR1czs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48 L3ByZT4NCjxwcmU+KyZuYnNwOyBpZiAoUFVEX0lTX0VNUFRZICgqUHVkKSkgezxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgU3RhdHVzID0gUG1kQWxsb2MgKFB1ZCk7 PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyBBU1NFUlRfRUZJX0VS Uk9SIChTdGF0dXMpOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsg aWYgKEVGSV9FUlJPUiAoU3RhdHVzKSkgezxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgcmV0dXJuIE5VTEw7PG86cD48L286cD48L3ByZT4NCjxw cmU+KyZuYnNwOyZuYnNwOyZuYnNwOyB9PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyB9 PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsg cmV0dXJuIFBtZE9mZnNldCAoUHVkLCBBZGRyZXNzKTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4r fTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rLyoqPG86 cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBSZXF1ZXN0cyB0aGUgbWVtb3J5IHNwYWNlIHJl cXVpcmVkIGZvciB0aGUgcGFnZSB0YWJsZSw8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7 IGluaXRpYWxpemVzIGl0LCBhbmQgcGxhY2VzIGl0IGluIHRoZSBzcGVjaWZpZWQgcGFnZSBtaWRk bGUgZGlyZWN0b3J5LDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgYW5kIGdldCB0aGUg cGFnZSB0YWJsZSBlbnRyeSBjb3JyZXNwb25kaW5nIHRvIHRoZSB2aXJ0dWFsIGFkZHJlc3MuPG86 cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQHBh cmFtJm5ic3A7IFBtZCZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBBIHBvaW50ZXIgdG8g dGhlIHBhZ2UgdXBwZXIgZGlyZWN0b3J5LjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsg QHBhcmFtJm5ic3A7IEFkZHJlc3MmbmJzcDsgVGhlIGNvcnJlc3BvbmRpbmcgdmlydHVhbCBhZGRy ZXNzIG9mIHRoZSBwYWdlIHRhYmxlIGVudHJ5LjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpw PjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEByZXR2YWwmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgQSBwb2ludGVyIHRvIHRoZSBwYWdlIHRh YmxlIGVudHJ5LiBSZXR1cm4gTlVMTCwgaWYgYWxsb2NhdGU8bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHRo ZSBtZW1vcnkgYnVmZmVyIGlzIGZhaWwuPG86cD48L286cD48L3ByZT4NCjxwcmU+KyoqLzxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPitTVEFUSUM8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rUFRFICo8 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rUHRlQWxsb2NHZXQgKDxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPismbmJzcDsgSU4gUE1EJm5ic3A7Jm5ic3A7Jm5ic3A7ICpQbWQsPG86cD48L286cD48L3By ZT4NCjxwcmU+KyZuYnNwOyBJTiBVSU5UTiZuYnNwOyBBZGRyZXNzPG86cD48L286cD48L3ByZT4N CjxwcmU+KyZuYnNwOyApPG86cD48L286cD48L3ByZT4NCjxwcmU+K3s8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rJm5ic3A7IEVGSV9TVEFUVVMmbmJzcDsgU3RhdHVzOzxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IGlmIChQTURfSVNfRU1QVFkg KCpQbWQpKSB7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyBTdGF0 dXMgPSBQdGVBbGxvYyAoUG1kKTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7 Jm5ic3A7IEFTU0VSVF9FRklfRVJST1IgKFN0YXR1cyk7PG86cD48L286cD48L3ByZT4NCjxwcmU+ KyZuYnNwOyZuYnNwOyZuYnNwOyBpZiAoRUZJX0VSUk9SIChTdGF0dXMpKSB7PG86cD48L286cD48 L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyByZXR1cm4gTlVMTDs8 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IH08bzpwPjwvbzpwPjwv cHJlPg0KPHByZT4rJm5ic3A7IH08bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48 L3ByZT4NCjxwcmU+KyZuYnNwOyByZXR1cm4gUHRlT2Zmc2V0IChQbWQsIEFkZHJlc3MpOzxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPit9PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPisvKio8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEdldHMgdGhl IHBoeXNpY2FsIGFkZHJlc3Mgb2YgdGhlIHBhZ2UgdGFibGUgZW50cnkgY29ycmVzcG9uZGluZyB0 byB0aGUgc3BlY2lmaWVkIHZpcnR1YWwgYWRkcmVzcy48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4r PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcGFyYW0mbmJzcDsgQWRkcmVzcyZuYnNw OyBUaGUgY29ycmVzcG9uZGluZyB2aXJ0dWFsIGFkZHJlc3Mgb2YgdGhlIHBhZ2UgdGFibGUgZW50 cnkuPG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJz cDsgQHJldHZhbCZuYnNwOyBBIHBvaW50ZXIgdG8gdGhlIHBhZ2UgdGFibGUgZW50cnkuPG86cD48 L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcmV0dmFsJm5ic3A7IE5VTEw8bzpwPjwvbzpwPjwv cHJlPg0KPHByZT4rKiovPG86cD48L286cD48L3ByZT4NCjxwcmU+K1NUQVRJQzxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPitQVEUgKjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPitHZXRQdGVBZGRyZXNz ICg8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IElOIFVJTlROJm5ic3A7IEFkZHJlc3M8 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7ICk8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4r ezxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgUEdEJm5ic3A7ICpQZ2Q7PG86cD48L286 cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBQVUQmbmJzcDsgKlB1ZDs8bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rJm5ic3A7IFBNRCZuYnNwOyAqUG1kOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpw PjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IFBnZCA9IFBnZE9mZnNldCAoQWRkcmVzcyk7PG86 cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgaWYg KFBHRF9JU19FTVBUWSAoKlBnZCkpIHs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5i c3A7Jm5ic3A7IHJldHVybiBOVUxMOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgfTxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IFB1 ZCA9IFB1ZE9mZnNldCAoUGdkLCBBZGRyZXNzKTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86 cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBpZiAoUFVEX0lTX0VNUFRZICgqUHVkKSkgezxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgcmV0dXJuIE5VTEw7PG86 cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyB9PG86cD48L286cD48L3ByZT4NCjxwcmU+Kzxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgUG1kID0gUG1kT2Zmc2V0IChQdWQsIEFkZHJl c3MpOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgaWYgKFBNRF9JU19FTVBUWSAoKlBt ZCkpIHs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IHJldHVybiBO VUxMOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgfTxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IGlmIChJU19IVUdFX1BBR0UgKFBt ZC0mZ3Q7UG1kVmFsKSkgezxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJz cDsgcmV0dXJuICgoUFRFICopUG1kKTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IH08 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBy ZXR1cm4gUHRlT2Zmc2V0IChQbWQsIEFkZHJlc3MpOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPit9 PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisvKio8bzpw PjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEdldHMgdGhlIEF0dHJpYnV0ZXMgb2YgSHVnZSBQ YWdlLjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5i c3A7IEBwYXJhbSZuYnNwOyBQbWQmbmJzcDsgQSBwb2ludGVyIHRvIHRoZSBwYWdlIG1pZGRsZSBk aXJlY3RvcnkuPG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJl PismbmJzcDsgQHJldHZhbCZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBWYWx1ZSBvZiBBdHRyaWJ1 dGVzLjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisqKi88bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4r U1RBVElDPG86cD48L286cD48L3ByZT4NCjxwcmU+K1VJTlROPG86cD48L286cD48L3ByZT4NCjxw cmU+K0dldEh1Z2VQYWdlQXR0cmlidXRlcyAoPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNw OyBJTiZuYnNwOyBQTUQmbmJzcDsgKlBtZDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsg KTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPit7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNw OyBVSU5UTiZuYnNwOyBBdHRyaWJ1dGVzOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsg VUlOVE4mbmJzcDsgR2xvYmFsRmxhZzs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IFVJ TlROJm5ic3A7IEh1Z2VWYWw7PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPismbmJzcDsgSHVnZVZhbCZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyA9IFBNRF9W QUwgKCpQbWQpOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQXR0cmlidXRlcyZuYnNw OyA9IEh1Z2VWYWwgJmFtcDsgKH5IVUdFUF9QQUdFX01BU0spOzxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPismbmJzcDsgR2xvYmFsRmxhZyZuYnNwOyA9ICgoQXR0cmlidXRlcyAmYW1wOyAoMSAmbHQ7 Jmx0OyBQQUdFX0hHTE9CQUxfU0hJRlQpKSAmZ3Q7Jmd0OyBQQUdFX0hHTE9CQUxfU0hJRlQpICZs dDsmbHQ7IFBBR0VfR0xPQkFMX1NISUZUOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsg QXR0cmlidXRlcyAmYW1wOz0gfigxICZsdDsmbHQ7IFBBR0VfSEdMT0JBTF9TSElGVCk7PG86cD48 L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBBdHRyaWJ1dGVzIHw9IEdsb2JhbEZsYWc7PG86cD48 L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyByZXR1cm4gQXR0cmlidXRlczs8bzpwPjwvbzpwPjwv cHJlPg0KPHByZT4rfTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rLyoqPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBFc3RhYmxpc2hlcyBhIHBh Z2UgdGFibGUgZW50cnkgYmFzZWQgb24gdGhlIHNwZWNpZmllZCBtZW1vcnkgcmVnaW9uLjxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEBwYXJh bSZuYnNwOyBQbWQmbmJzcDsgQSBwb2ludGVyIHRvIHRoZSBwYWdlIG1pZGRsZSBkaXJlY3Rvcnku PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcGFyYW0mbmJzcDsgQWRkcmVzcyZuYnNw OyBUaGUgbWVtb3J5IHNwYWNlIHN0YXJ0IGFkZHJlc3MuPG86cD48L286cD48L3ByZT4NCjxwcmU+ KyZuYnNwOyBAcGFyYW0mbmJzcDsgRW5kJm5ic3A7IFRoZSBlbmQgYWRkcmVzcyBvZiB0aGUgbWVt b3J5IHNwYWNlLjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQHBhcmFtJm5ic3A7IEF0 dHJpYnV0ZXMmbmJzcDsgTWVtb3J5IHNwYWNlIEF0dHJpYnV0ZXMuPG86cD48L286cD48L3ByZT4N CjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQHJldHZhbCZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyBFRklfU1VDQ0VTUyZuYnNwOyZuYnNwOyBUaGUgcGFnZSB0YWJsZSBlbnRy eSB3YXMgY3JlYXRlZCBzdWNjZXNzZnVsbHkuPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNw OyBAcmV0dmFsJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IEVGSV9PVVRfT0ZfUkVTT1VSQ0VTJm5i c3A7IFBhZ2UgdGFibGUgZW50cnkgZXN0YWJsaXNobWVudCBmYWlsZWQgZHVlIHRvIHJlc291cmNl IGV4aGF1c3Rpb24uPG86cD48L286cD48L3ByZT4NCjxwcmU+KyoqLzxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPitTVEFUSUM8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rRUZJX1NUQVRVUzxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPitNZW1vcnlNYXBQdGVSYW5nZSAoPG86cD48L286cD48L3ByZT4NCjxw cmU+KyZuYnNwOyBJTiBQTUQmbmJzcDsmbmJzcDsmbmJzcDsgKlBtZCw8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rJm5ic3A7IElOIFVJTlROJm5ic3A7IEFkZHJlc3MsPG86cD48L286cD48L3ByZT4N CjxwcmU+KyZuYnNwOyBJTiBVSU5UTiZuYnNwOyBFbmQsPG86cD48L286cD48L3ByZT4NCjxwcmU+ KyZuYnNwOyBJTiBVSU5UTiZuYnNwOyBBdHRyaWJ1dGVzPG86cD48L286cD48L3ByZT4NCjxwcmU+ KyZuYnNwOyApPG86cD48L286cD48L3ByZT4NCjxwcmU+K3s8bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rJm5ic3A7IFBURSZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAqUHRlOzxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPismbmJzcDsgUFRFJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 IFB0ZVZhbDs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEJPT0xFQU4mbmJzcDsgVXBE YXRlOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5i c3A7IFB0ZSA9IFB0ZUFsbG9jR2V0IChQbWQsIEFkZHJlc3MpOzxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPismbmJzcDsgaWYgKCFQdGUpIHs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5i c3A7Jm5ic3A7IHJldHVybiBFRklfT1VUX09GX1JFU09VUkNFUzs8bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rJm5ic3A7IH08bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4N CjxwcmU+KyZuYnNwOyBERUJVRyAoKDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJz cDsmbmJzcDsgREVCVUdfSU5GTyw8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7 Jm5ic3A7ICZxdW90OyVhICVkIEFkZHJlc3MgJXAgRW5kICVwJm5ic3A7IEF0dHJpYnV0ZXMgJWxs eFxuJnF1b3Q7LDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgX19m dW5jX18sPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyBfX0xJTkVf Xyw8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IEFkZHJlc3MsPG86 cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyBFbmQsPG86cD48L286cD48 L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyBBdHRyaWJ1dGVzPG86cD48L286cD48L3By ZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyApKTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4r PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBkbyB7PG86cD48L286cD48L3ByZT4NCjxw cmU+KyZuYnNwOyZuYnNwOyZuYnNwOyBVcERhdGUgPSBGQUxTRTs8bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IFB0ZVZhbCA9IE1BS0VfUFRFIChBZGRyZXNzLCBBdHRy aWJ1dGVzKTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+ KyZuYnNwOyZuYnNwOyZuYnNwOyBpZiAoKCFQVEVfSVNfRU1QVFkgKCpQdGUpKSAmYW1wOyZhbXA7 PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyAoUFRFX1ZBTCAoKlB0ZSkgIT0gUFRFX1ZBTCAoUHRlVmFsKSkpPG86cD48L286 cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyB7PG86cD48L286cD48L3ByZT4NCjxw cmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBVcERhdGUgPSBUUlVFOzxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgfTxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IFNldFB0ZSAo UHRlLCBQdGVWYWwpOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsg aWYgKFVwRGF0ZSkgezxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsgSW52YWxpZFRsYiAoQWRkcmVzcyk7PG86cD48L286cD48L3ByZT4NCjxwcmU+ KyZuYnNwOyZuYnNwOyZuYnNwOyB9PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyB9IHdo aWxlIChQdGUrKywgQWRkcmVzcyArPSBFRklfUEFHRV9TSVpFLCBBZGRyZXNzICE9IEVuZCk7PG86 cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgcmV0 dXJuIEVGSV9TVUNDRVNTOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPit9PG86cD48L286cD48L3By ZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisvKio8bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rJm5ic3A7IENvbnZlcnQgSHVnZSBQYWdlIHRvIFBhZ2UuPG86cD48L286cD48L3ByZT4N CjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQHBhcmFtJm5ic3A7IFBtZCZu YnNwOyBBIHBvaW50ZXIgdG8gdGhlIHBhZ2UgbWlkZGxlIGRpcmVjdG9yeS48bzpwPjwvbzpwPjwv cHJlPg0KPHByZT4rJm5ic3A7IEBwYXJhbSZuYnNwOyBBZGRyZXNzJm5ic3A7IFRoZSBtZW1vcnkg c3BhY2Ugc3RhcnQgYWRkcmVzcy48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEBwYXJh bSZuYnNwOyBFbmQmbmJzcDsgVGhlIGVuZCBhZGRyZXNzIG9mIHRoZSBtZW1vcnkgc3BhY2UuPG86 cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcGFyYW0mbmJzcDsgQXR0cmlidXRlcyZuYnNw OyBNZW1vcnkgc3BhY2UgQXR0cmlidXRlcy48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48 L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcmV0dmFsJm5ic3A7IEVGSV9TVUNDRVNTJm5ic3A7 Jm5ic3A7IFRoZSBwYWdlIHRhYmxlIGVudHJ5IHdhcyBjcmVhdGVkIHN1Y2Nlc3NmdWxseS48bzpw PjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEByZXR2YWwmbmJzcDsgRUZJX09VVF9PRl9SRVNP VVJDRVMmbmJzcDsgUGFnZSB0YWJsZSBlbnRyeSBlc3RhYmxpc2htZW50IGZhaWxlZCBkdWUgdG8g cmVzb3VyY2UgZXhoYXVzdGlvbi48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rKiovPG86cD48L286 cD48L3ByZT4NCjxwcmU+K1NUQVRJQzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPitFRklfU1RBVFVT PG86cD48L286cD48L3ByZT4NCjxwcmU+K0NvbnZlcnRIdWdlUGFnZVRvUGFnZSAoPG86cD48L286 cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBJTiZuYnNwOyBQTUQmbmJzcDsmbmJzcDsgKlBtZCw8bzpw PjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IElOIFVJTlROJm5ic3A7IEFkZHJlc3MsPG86cD48 L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBJTiBVSU5UTiZuYnNwOyBFbmQsPG86cD48L286cD48 L3ByZT4NCjxwcmU+KyZuYnNwOyBJTiBVSU5UTiZuYnNwOyBBdHRyaWJ1dGVzPG86cD48L286cD48 L3ByZT4NCjxwcmU+KyZuYnNwOyApPG86cD48L286cD48L3ByZT4NCjxwcmU+K3s8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4rJm5ic3A7IFVJTlROJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7IE9sZEF0dHJpYnV0ZXM7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBVSU5U TiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBIdWdlUGFnZUVuZDs8bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IFVJTlROJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7IEh1Z2VQYWdlU3RhcnQ7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBF RklfU1RBVFVTJm5ic3A7IFN0YXR1czs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286 cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBTdGF0dXMgPSBFRklfU1VDQ0VTUzs8bzpwPjwvbzpwPjwv cHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBpZiAoKFBNRF9JU19F TVBUWSAoKlBtZCkpIHx8PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyAoIUlTX0hVR0VfUEFHRSAoUG1kLSZndDtQbWRWYWwpKSk8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4rJm5ic3A7IHs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5i c3A7Jm5ic3A7IFN0YXR1cyB8PSBNZW1vcnlNYXBQdGVSYW5nZSAoUG1kLCBBZGRyZXNzLCBFbmQs IEF0dHJpYnV0ZXMpOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgfSBlbHNlIHs8bzpw PjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IE9sZEF0dHJpYnV0ZXMgPSBH ZXRIdWdlUGFnZUF0dHJpYnV0ZXMgKFBtZCk7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNw OyZuYnNwOyZuYnNwOyBpZiAoQXR0cmlidXRlcyA9PSBPbGRBdHRyaWJ1dGVzKSB7PG86cD48L286 cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyByZXR1cm4gU3Rh dHVzOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgfTxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5i c3A7IFNldFBtZCAoUG1kLCAoUFRFICopKElOVkFMSURfUEFHRSkpOzxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgSHVnZVBhZ2VTdGFydCA9IEFkZHJlc3MgJmFtcDsg UE1EX01BU0s7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyBIdWdl UGFnZUVuZCZuYnNwOyZuYnNwOyA9IEh1Z2VQYWdlU3RhcnQgKyBIVUdFX1BBR0VfU0laRTs8bzpw PjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IEFTU0VSVCAoSHVnZVBhZ2VF bmQgJmd0Oz0gRW5kKTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4N CjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyBpZiAoQWRkcmVzcyAmZ3Q7IEh1Z2VQYWdlU3RhcnQp IHs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 IFN0YXR1cyB8PSBNZW1vcnlNYXBQdGVSYW5nZSAoUG1kLCBIdWdlUGFnZVN0YXJ0LCBBZGRyZXNz LCBPbGRBdHRyaWJ1dGVzKTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5i c3A7IH08bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZu YnNwOyZuYnNwOyZuYnNwOyBTdGF0dXMgfD0gTWVtb3J5TWFwUHRlUmFuZ2UgKFBtZCwgQWRkcmVz cywgRW5kLCBBdHRyaWJ1dGVzKTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48 L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyBpZiAoRW5kICZsdDsgSHVnZVBhZ2VFbmQp IHs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 IFN0YXR1cyB8PSBNZW1vcnlNYXBQdGVSYW5nZSAoUG1kLCBFbmQsIEh1Z2VQYWdlRW5kLCBPbGRB dHRyaWJ1dGVzKTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IH08 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IH08bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4r PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyByZXR1cm4gU3RhdHVzOzxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPit9PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPisvKio8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEVzdGFibGlzaGVzIGEg cGFnZSBtaWRkbGUgZGlyZWN0b3J5IGJhc2VkIG9uIHRoZSBzcGVjaWZpZWQgbWVtb3J5IHJlZ2lv bi48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNw OyBAcGFyYW0mbmJzcDsgUHVkJm5ic3A7IEEgcG9pbnRlciB0byB0aGUgcGFnZSB1cHBlciBkaXJl Y3RvcnkuPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcGFyYW0mbmJzcDsgQWRkcmVz cyZuYnNwOyBUaGUgbWVtb3J5IHNwYWNlIHN0YXJ0IGFkZHJlc3MuPG86cD48L286cD48L3ByZT4N CjxwcmU+KyZuYnNwOyBAcGFyYW0mbmJzcDsgRW5kJm5ic3A7IFRoZSBlbmQgYWRkcmVzcyBvZiB0 aGUgbWVtb3J5IHNwYWNlLjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQHBhcmFtJm5i c3A7IEF0dHJpYnV0ZXMmbmJzcDsgTWVtb3J5IHNwYWNlIEF0dHJpYnV0ZXMuPG86cD48L286cD48 L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQHJldHZhbCZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyBFRklfU1VDQ0VTUyZuYnNwOyZuYnNwOyBUaGUgcGFnZSBtaWRk bGUgZGlyZWN0b3J5IHdhcyBjcmVhdGVkIHN1Y2Nlc3NmdWxseS48bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rJm5ic3A7IEByZXR2YWwmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgRUZJX09VVF9PRl9S RVNPVVJDRVMmbmJzcDsgUGFnZSBtaWRkbGUgZGlyZWN0b3J5IGVzdGFibGlzaG1lbnQgZmFpbGVk IGR1ZSB0byByZXNvdXJjZSBleGhhdXN0aW9uLjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisqKi88 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rU1RBVElDPG86cD48L286cD48L3ByZT4NCjxwcmU+K0VG SV9TVEFUVVM8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rTWVtb3J5TWFwUG1kUmFuZ2UgKDxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgSU4gUFVEJm5ic3A7Jm5ic3A7Jm5ic3A7ICpQdWQs PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBJTiBVSU5UTiZuYnNwOyBBZGRyZXNzLDxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgSU4gVUlOVE4mbmJzcDsgRW5kLDxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPismbmJzcDsgSU4gVUlOVE4mbmJzcDsgQXR0cmlidXRlczxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPismbmJzcDsgKTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPit7PG86cD48 L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBQTUQmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsgKlBtZDs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IFVJTlROJm5ic3A7Jm5ic3A7 Jm5ic3A7IE5leHQ7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBQVEUmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsgUHRlVmFsOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJz cDsgQk9PTEVBTiZuYnNwOyBVcERhdGU7PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPismbmJzcDsgUG1kID0gUG1kQWxsb2NHZXQgKFB1ZCwgQWRkcmVzcyk7 PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBpZiAoUG1kID09IE5VTEwpIHs8bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IHJldHVybiBFRklfT1VUX09GX1JF U09VUkNFUzs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IH08bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBkbyB7PG86cD48L286cD48 L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyBOZXh0ID0gUE1EX0FERFJFU1NfRU5EIChB ZGRyZXNzLCBFbmQpOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsg aWYgKCgoQWRkcmVzcyAmYW1wOyAoflBNRF9NQVNLKSkgPT0gMCkgJmFtcDsmYW1wOzxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsgKChOZXh0ICZhbXA7Jm5ic3A7ICh+UE1EX01BU0spKSA9PSAwKSAmYW1wOyZhbXA7PG86cD48 L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyAoUE1EX0lTX0VNUFRZICgqUG1kKSB8fCBJU19IVUdFX1BBR0UgKFBtZC0mZ3Q7UG1kVmFs KSkpPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyB7PG86cD48L286 cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBVcERhdGUgPSBG QUxTRTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7IFB0ZVZhbCA9IE1BS0VfSFVHRV9QVEUgKEFkZHJlc3MsIEF0dHJpYnV0ZXMpOzxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7IGlmICgoIVBNRF9JU19FTVBUWSAoKlBtZCkpICZhbXA7JmFtcDs8bzpw PjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7IChQTURfVkFMICgqUG1kKSAhPSBQVEVfVkFMIChQdGVWYWwpKSk8 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHs8 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7IFVwRGF0ZSA9IFRSVUU7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB9PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgU2V0UG1kIChQ bWQsIChQVEUgKilQdGVWYWwuUHRlVmFsKTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGlmIChVcERhdGUpIHs8bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IEludmFsaWRU bGIgKEFkZHJlc3MpOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsgfTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsg fSBlbHNlIHs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7IENvbnZlcnRIdWdlUGFnZVRvUGFnZSAoUG1kLCBBZGRyZXNzLCBOZXh0LCBBdHRyaWJ1 dGVzKTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IH08bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IH0gd2hpbGUgKFBtZCsrLCBBZGRyZXNzID0gTmV4dCwg QWRkcmVzcyAhPSBFbmQpOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rJm5ic3A7IHJldHVybiBFRklfU1VDQ0VTUzs8bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rfTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rLyoq PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBFc3RhYmxpc2hlcyBhIHBhZ2UgdXBwZXIg ZGlyZWN0b3J5IGJhc2VkIG9uIHRoZSBzcGVjaWZpZWQgbWVtb3J5IHJlZ2lvbi48bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcGFyYW0mbmJz cDsgUGdkJm5ic3A7IEEgcG9pbnRlciB0byB0aGUgcGFnZSBnbG9iYWwgZGlyZWN0b3J5LjxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQHBhcmFtJm5ic3A7IEFkZHJlc3MmbmJzcDsgVGhl IG1lbW9yeSBzcGFjZSBzdGFydCBhZGRyZXNzLjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJz cDsgQHBhcmFtJm5ic3A7IEVuZCZuYnNwOyBUaGUgZW5kIGFkZHJlc3Mgb2YgdGhlIG1lbW9yeSBz cGFjZS48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEBwYXJhbSZuYnNwOyBBdHRyaWJ1 dGVzJm5ic3A7IE1lbW9yeSBzcGFjZSBBdHRyaWJ1dGVzLjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJl Pis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEByZXR2YWwmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsgRUZJX1NVQ0NFU1MmbmJzcDsmbmJzcDsgVGhlIHBhZ2UgdXBwZXIgZGlyZWN0b3J5 IHdhcyBjcmVhdGVkIHN1Y2Nlc3NmdWxseS48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7 IEByZXR2YWwmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgRUZJX09VVF9PRl9SRVNPVVJDRVMmbmJz cDsgUGFnZSB1cHBlciBkaXJlY3RvcnkgZXN0YWJsaXNobWVudCBmYWlsZWQgZHVlIHRvIHJlc291 cmNlIGV4aGF1c3Rpb24uPG86cD48L286cD48L3ByZT4NCjxwcmU+KyoqLzxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPitTVEFUSUM8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rRUZJX1NUQVRVUzxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPitNZW1vcnlNYXBQdWRSYW5nZSAoPG86cD48L286cD48L3ByZT4N CjxwcmU+KyZuYnNwOyBJTiBQR0QmbmJzcDsmbmJzcDsmbmJzcDsgKlBnZCw8bzpwPjwvbzpwPjwv cHJlPg0KPHByZT4rJm5ic3A7IElOIFVJTlROJm5ic3A7IEFkZHJlc3MsPG86cD48L286cD48L3By ZT4NCjxwcmU+KyZuYnNwOyBJTiBVSU5UTiZuYnNwOyBFbmQsPG86cD48L286cD48L3ByZT4NCjxw cmU+KyZuYnNwOyBJTiBVSU5UTiZuYnNwOyBBdHRyaWJ1dGVzPG86cD48L286cD48L3ByZT4NCjxw cmU+KyZuYnNwOyApPG86cD48L286cD48L3ByZT4NCjxwcmU+K3s8bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rJm5ic3A7IFBVRCZuYnNwOyZuYnNwOyZuYnNwOyAqUHVkOzxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPismbmJzcDsgVUlOVE4mbmJzcDsgTmV4dDs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4r PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBQdWQgPSBQdWRBbGxvY0dldCAoUGdkLCBB ZGRyZXNzKTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IGlmIChQdWQgPT0gTlVMTCkg ezxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgcmV0dXJuIEVGSV9P VVRfT0ZfUkVTT1VSQ0VTOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgfTxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IGRvIHs8bzpw PjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IE5leHQgPSBQVURfQUREUkVT U19FTkQgKEFkZHJlc3MsIEVuZCk7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNw OyZuYnNwOyBpZiAoRUZJX0VSUk9SIChNZW1vcnlNYXBQbWRSYW5nZSAoUHVkLCBBZGRyZXNzLCBO ZXh0LCBBdHRyaWJ1dGVzKSkpIHs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7IHJldHVybiBFRklfT1VUX09GX1JFU09VUkNFUzs8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IH08bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rJm5ic3A7IH0gd2hpbGUgKFB1ZCsrLCBBZGRyZXNzID0gTmV4dCwgQWRkcmVzcyAhPSBFbmQp OzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7 IHJldHVybiBFRklfU1VDQ0VTUzs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rfTxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rLyoqPG86cD48L286cD48L3By ZT4NCjxwcmU+KyZuYnNwOyBFc3RhYmxpc2hlcyBhIHBhZ2UgZ2xvYmFsIGRpcmVjdG9yeSBiYXNl ZCBvbiB0aGUgc3BlY2lmaWVkIG1lbW9yeSByZWdpb24uPG86cD48L286cD48L3ByZT4NCjxwcmU+ KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQHBhcmFtJm5ic3A7IFN0YXJ0Jm5ic3A7 IFRoZSBtZW1vcnkgc3BhY2Ugc3RhcnQgYWRkcmVzcy48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4r Jm5ic3A7IEBwYXJhbSZuYnNwOyBFbmQmbmJzcDsgVGhlIGVuZCBhZGRyZXNzIG9mIHRoZSBtZW1v cnkgc3BhY2UuPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcGFyYW0mbmJzcDsgQXR0 cmlidXRlcyZuYnNwOyBNZW1vcnkgc3BhY2UgQXR0cmlidXRlcy48bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcmV0dmFsJm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7IEVGSV9TVUNDRVNTJm5ic3A7Jm5ic3A7IFRoZSBwYWdlIGdsb2JhbCBkaXJl Y3Rvcnkgd2FzIGNyZWF0ZWQgc3VjY2Vzc2Z1bGx5LjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPism bmJzcDsgQHJldHZhbCZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBFRklfT1VUX09GX1JFU09VUkNF UyZuYnNwOyBQYWdlIGdsb2JhbCBkaXJlY3RvcnkgZXN0YWJsaXNobWVudCBmYWlsZWQgZHVlIHRv IHJlc291cmNlIGV4aGF1c3Rpb24uPG86cD48L286cD48L3ByZT4NCjxwcmU+KyoqLzxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPitTVEFUSUM8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rRUZJX1NUQVRV UzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPitNZW1vcnlNYXBQYWdlUmFuZ2UgKDxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPismbmJzcDsgSU4gVUlOVE4mbmJzcDsgU3RhcnQsPG86cD48L286cD48L3By ZT4NCjxwcmU+KyZuYnNwOyBJTiBVSU5UTiZuYnNwOyBFbmQsPG86cD48L286cD48L3ByZT4NCjxw cmU+KyZuYnNwOyBJTiBVSU5UTiZuYnNwOyBBdHRyaWJ1dGVzPG86cD48L286cD48L3ByZT4NCjxw cmU+KyZuYnNwOyApPG86cD48L286cD48L3ByZT4NCjxwcmU+K3s8bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rJm5ic3A7IFBHRCZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyAqUGdkOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgVUlOVE4mbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgTmV4dDs8bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rJm5ic3A7IFVJTlROJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IEFkZHJl c3M7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBFRklfU1RBVFVTJm5ic3A7IEVycjs8 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBB ZGRyZXNzID0gU3RhcnQ7PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPismbmJzcDsgLyogR2V0IFBHRChQVEUgUE1EIFBVRCBQR0QpIGluIFBhZ2VUYWJsZXMg Ki88bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IFBnZCA9IFBnZE9mZnNldCAoQWRkcmVz cyk7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBkbyB7PG86cD48L286cD48L3ByZT4N CjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyBOZXh0ID0gUEdEX0FERFJFU1NfRU5EIChBZGRyZXNz LCBFbmQpOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgLyogR2V0 IE5leHQgQWxpZ24gUGFnZSB0byBNYXAgKi88bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7 Jm5ic3A7Jm5ic3A7IEVyciA9IE1lbW9yeU1hcFB1ZFJhbmdlIChQZ2QsIEFkZHJlc3MsIE5leHQs IEF0dHJpYnV0ZXMpOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsg aWYgKEVycikgezxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsgcmV0dXJuIEVycjs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7 Jm5ic3A7IH08bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IH0gd2hpbGUgKFBnZCsrLCBB ZGRyZXNzID0gTmV4dCwgQWRkcmVzcyAhPSBFbmQpOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IHJldHVybiBFRklfU1VDQ0VTUzs8bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4rfTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwv cHJlPg0KPHByZT4rLyoqPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBQYWdlIHRhYmxl cyBhcmUgZXN0YWJsaXNoZWQgZnJvbSBtZW1vcnktbWFwcGVkIHRhYmxlcy48bzpwPjwvbzpwPjwv cHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcGFyYW0mbmJzcDsg TWVtb3J5UmVnaW9uJm5ic3A7Jm5ic3A7IEEgcG9pbnRlciB0byBhIG1lbW9yeS1tYXBwZWQgdGFi bGUgZW50cnkuPG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJl PismbmJzcDsgQHJldHZhbCZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBFRklfU1VDQ0VTUyZuYnNw OyZuYnNwOyBUaGUgcGFnZSB0YWJsZSB3YXMgY3JlYXRlZCBzdWNjZXNzZnVsbHkuPG86cD48L286 cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcmV0dmFsJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IEVG SV9PVVRfT0ZfUkVTT1VSQ0VTJm5ic3A7IFBhZ2UgdGFibGUmbmJzcDsgZXN0YWJsaXNobWVudCBm YWlsZWQgZHVlIHRvIHJlc291cmNlIGV4aGF1c3Rpb24uPG86cD48L286cD48L3ByZT4NCjxwcmU+ KyoqLzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPitFRklfU1RBVFVTPG86cD48L286cD48L3ByZT4N CjxwcmU+K0ZpbGxUcmFuc2xhdGlvblRhYmxlICg8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5i c3A7IElOJm5ic3A7IE1FTU9SWV9SRUdJT05fREVTQ1JJUFRPUiZuYnNwOyAqTWVtb3J5UmVnaW9u PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyApPG86cD48L286cD48L3ByZT4NCjxwcmU+ K3s8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IHJldHVybiBNZW1vcnlNYXBQYWdlUmFu Z2UgKDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgTWVtb3J5UmVnaW9uLSZndDtWaXJ0dWFs QmFzZSw8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IChNZW1vcnlSZWdpb24tJmd0O0xlbmd0 aCArIE1lbW9yeVJlZ2lvbi0mZ3Q7VmlydHVhbEJhc2UpLDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJl PismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsgTWVtb3J5UmVnaW9uLSZndDtBdHRyaWJ1dGVzPG86cD48L286cD48L3ByZT4NCjxwcmU+ KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyApOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPit9PG86cD48L286cD48L3ByZT4NCjxwcmU+ KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisvKio8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5i c3A7IENvbnZlcnQgRUZJIEF0dHJpYnV0ZXMgdG8gTG9vbmdhcmNoIEF0dHJpYnV0ZXMuPG86cD48 L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQHBhcmFt W2luXSZuYnNwOyBFZmlBdHRyaWJ1dGVzJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IEVmaSBBdHRy aWJ1dGVzLjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4r Jm5ic3A7IEByZXR2YWwmbmJzcDsgQ29ycmVzcG9uZGluZyBhcmNoaXRlY3R1cmUgYXR0cmlidXRl cy48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rKiovPG86cD48L286cD48L3ByZT4NCjxwcmU+K1VJ TlROPG86cD48L286cD48L3ByZT4NCjxwcmU+K0VGSUFQSTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJl PitFZmlBdHRyaWJ1dGVDb252ZXJzZSAoPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBJ TiBVSU5UTiZuYnNwOyBFZmlBdHRyaWJ1dGVzPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNw OyApPG86cD48L286cD48L3ByZT4NCjxwcmU+K3s8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5i c3A7IFVJTlROJm5ic3A7IExvb25nQXJjaEF0dHJpYnV0ZXM7PG86cD48L286cD48L3ByZT4NCjxw cmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgTG9vbmdBcmNoQXR0cmlidXRlcyA9 IFBBR0VfVkFMSUQgfCBQQUdFX0RJUlRZIHwgUExWX0tFUk5FTCB8IFBBR0VfR0xPQkFMOzxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IHN3aXRj aCAoRWZpQXR0cmlidXRlcyAmYW1wOyBFRklfTUVNT1JZX0NBQ0hFVFlQRV9NQVNLKSB7PG86cD48 L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyBjYXNlIEVGSV9NRU1PUllfVUM6 PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBM b29uZ0FyY2hBdHRyaWJ1dGVzIHw9IENBQ0hFX1NVQzs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4r Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGJyZWFrOzxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgY2FzZSBFRklfTUVNT1JZX1dDOjxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgTG9vbmdBcmNoQXR0cmli dXRlcyB8PSBDQUNIRV9XVUM7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyBicmVhazs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5i c3A7Jm5ic3A7IGNhc2UgRUZJX01FTU9SWV9XVDo8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5i c3A7Jm5ic3A7Jm5ic3A7IGNhc2UgRUZJX01FTU9SWV9XQjo8bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IExvb25nQXJjaEF0dHJpYnV0ZXMgfD0g Q0FDSEVfQ0M7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyBicmVhazs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7 IGRlZmF1bHQ6PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyBMb29uZ0FyY2hBdHRyaWJ1dGVzIHw9IENBQ0hFX0NDOzxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgYnJlYWs7PG86cD48L286cD48 L3ByZT4NCjxwcmU+KyZuYnNwOyB9PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPismbmJzcDsgLy8gV3JpdGUgcHJvdGVjdGlvbiBhdHRyaWJ1dGVzPG86cD48 L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBpZiAoKChFZmlBdHRyaWJ1dGVzICZhbXA7IEVGSV9N RU1PUllfUk8pICE9IDApIHx8PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyAoKEVmaUF0dHJpYnV0ZXMgJmFtcDsgRUZJX01FTU9SWV9XUCkgIT0g MCkpPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyB7PG86cD48L286cD48L3ByZT4NCjxw cmU+KyZuYnNwOyZuYnNwOyZuYnNwOyBMb29uZ0FyY2hBdHRyaWJ1dGVzICZhbXA7PSB+UEFHRV9E SVJUWTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IH08bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBpZiAoKEVmaUF0dHJpYnV0ZXMg JmFtcDsgRUZJX01FTU9SWV9SUCkgIT0gMCkgezxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJz cDsmbmJzcDsmbmJzcDsgTG9vbmdBcmNoQXR0cmlidXRlcyB8PSBQQUdFX05PX1JFQUQ7PG86cD48 L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyB9PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgLy8gZVhlY3V0ZSBwcm90ZWN0aW9uIGF0dHJpYnV0 ZTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgaWYgKChFZmlBdHRyaWJ1dGVzICZhbXA7 IEVGSV9NRU1PUllfWFApICE9IDApIHs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5i c3A7Jm5ic3A7IExvb25nQXJjaEF0dHJpYnV0ZXMgfD0gUEFHRV9OT19FWEVDOzxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPismbmJzcDsgfTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4rJm5ic3A7IHJldHVybiBMb29uZ0FyY2hBdHRyaWJ1dGVzOzxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPit9PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPisvKio8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEZpbmRzIHRoZSBm aXJzdCBvZiB0aGUgbGVuZ3RoIGFuZCBtZW1vcnkgcHJvcGVydGllcyBvZiB0aGUgbWVtb3J5IHJl Z2lvbiBjb3JyZXNwb25kaW5nPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyB0byB0aGUg c3BlY2lmaWVkIGJhc2UgYWRkcmVzcy48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286 cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcGFyYW1baW5dJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7IEJhc2VBZGRyZXNzJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7IFRvIGZpbmQgdGhlIGJhc2UgYWRkcmVzcyBvZiB0aGUgbWVtb3J5IHJlZ2lvbi48bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEBwYXJhbVtpbiwgb3V0XSZuYnNwOyBSZWdpb25MZW5n dGgmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgUG9pbnRlciBob2xkaW5nOjxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsgLSBBdCBlbnRyeSwgdGhlIGxlbmd0aCBvZiB0aGUgbWVtb3J5IHJlZ2lvbjxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgZXhwZWN0ZWQgdG8gYmUgZm91bmQuPG86cD48 L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyAtIEF0IGV4aXQsIHRoZSBsZW5ndGggb2YgdGhlIG1lbW9yeSByZWdpb24g Zm91bmQuPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcGFyYW1bb3V0XSZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBSZWdpb25BdHRyaWJ1dGVzJm5ic3A7IFByb3BlcnRpZXMg b2YgdGhlIG1lbW9yeSByZWdpb24gZm91bmQuPG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQHJldHZhbCZuYnNwOyBFRklfU1VDQ0VTUyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBU aGUgY29ycmVzcG9uZGluZyBtZW1vcnkgYXJlYSB3YXMgc3VjY2Vzc2Z1bGx5IGZvdW5kPG86cD48 L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBFRklfTk9UX0ZPVU5EJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IE5vIG1lbW9yeSBhcmVhIGZvdW5kPG86cD48L286 cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyBFRklfT1VUX09GX1JFU09VUkNFUyZuYnNwOyBCYXNlIGFkZHJl c3Mgb3IgZXhwZWN0ZWQgbWVtb3J5IHJlZ2lvbiBleGNlZWRzIHRoZSBtYXhpbXVtPG86cD48L286 cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBhZGRyZXNzLjxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPisqKi88bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rRUZJX1NUQVRVUzxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPitFRklBUEk8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rR2V0TWVt b3J5UmVnaW9uQXR0cmlidXRlcyAoPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBJTiZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBVSU5UTiZuYnNwOyBCYXNlQWRkcmVzcyw8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4rJm5ic3A7IElOIE9VVCBVSU5UTiZuYnNwOyAqUmVnaW9uTGVuZ3RoLDxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgT1VUJm5ic3A7Jm5ic3A7Jm5ic3A7IFVJTlRO Jm5ic3A7ICpSZWdpb25BdHRyaWJ1dGVzPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyAp PG86cD48L286cD48L3ByZT4NCjxwcmU+K3s8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7 IFBURSZuYnNwOyZuYnNwOyZuYnNwOyAqUHRlOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJz cDsgVUlOVE4mbmJzcDsgQXR0cmlidXRlczs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7 IFVJTlROJm5ic3A7IEF0dHJpYnV0ZXNUbXA7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNw OyBVSU5UTiZuYnNwOyBNYXhBZGRyZXNzOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsg VUlOVE4mbmJzcDsgRW5kQWRkcmVzczs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IFVJ TlROJm5ic3A7IEFkZFNpemU7PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPismbmJzcDsgaWYgKCFNbXVJc0luaXQgKCkpIHs8bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IHJldHVybiBFRklfVU5TVVBQT1JURUQ7PG86cD48L286 cD48L3ByZT4NCjxwcmU+KyZuYnNwOyB9PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPismbmJzcDsgRW5kQWRkcmVzcyA9IEJhc2VBZGRyZXNzICsgKlJlZ2lv bkxlbmd0aDs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IE1heEFkZHJlc3MgPSBMU2hp ZnRVNjQgKDFVTEwsIE1BWF9WQV9CSVRTKSAtIDE7PG86cD48L286cD48L3ByZT4NCjxwcmU+Kzxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgLy8gQ2xlYW4gdGhlIHZhbHVlIHRvIHByZXBh cmUgb3V0cHV0IHRvIGZpbmQgcmVnaW9uIHNpemUuPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZu YnNwOyAqUmVnaW9uTGVuZ3RoID0gMHgwOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IGlmICgoQmFzZUFkZHJlc3MgJmd0Oz0gTWF4QWRkcmVz cykgfHwgKEVuZEFkZHJlc3MgJmd0Oz0gTWF4QWRkcmVzcykpIHs8bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IHJldHVybiBFRklfT1VUX09GX1JFU09VUkNFUzs8bzpw PjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IH08bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86 cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBQdGUgPSBHZXRQdGVBZGRyZXNzIChCYXNlQWRk cmVzcyk7PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPism bmJzcDsgaWYgKFB0ZSA9PSBOVUxMKSB7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZu YnNwOyZuYnNwOyByZXR1cm4gRUZJX05PVF9GT1VORDs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4r Jm5ic3A7IH08bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+ KyZuYnNwOyBBdHRyaWJ1dGVzID0gR0VUX1BBR0VfQVRUUklCVVRFUyAoKlB0ZSk7PG86cD48L286 cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBpZiAoSVNfSFVHRV9QQUdFIChQdGUtJmd0O1B0ZVZhbCkp IHs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7ICpSZWdpb25BdHRy aWJ1dGVzID0gQXR0cmlidXRlcyAmYW1wOyAofihQQUdFX0hVR0UpKTs8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rJm5ic3A7IH0gZWxzZSB7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZu YnNwOyZuYnNwOyAqUmVnaW9uQXR0cmlidXRlcyA9IEF0dHJpYnV0ZXM7PG86cD48L286cD48L3By ZT4NCjxwcmU+KyZuYnNwOyB9PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPismbmJzcDsgZG8gezxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJz cDsmbmJzcDsgUHRlID0gR2V0UHRlQWRkcmVzcyAoQmFzZUFkZHJlc3MpOzxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgaWYgKFB0ZSA9PSBOVUxMKSB7PG86cD48L286 cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyByZXR1cm4gRUZJ X1NVQ0NFU1M7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyB9PG86 cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJz cDsmbmJzcDsgQXR0cmlidXRlc1RtcCA9IEdFVF9QQUdFX0FUVFJJQlVURVMgKCpQdGUpOzxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgaWYgKEF0dHJpYnV0ZXNUbXAg PT0gQXR0cmlidXRlcykgezxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsgaWYgKElTX0hVR0VfUEFHRSAoUHRlLSZndDtQdGVWYWwpKSB7PG86cD48 L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyBBZGRTaXplID0gSFVHRV9QQUdFX1NJWkU7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB9IGVsc2UgezxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgQWRkU2l6ZSA9 IEVGSV9QQUdFX1NJWkU7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyB9PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgKlJlZ2lvbkxlbmd0aCArPSBB ZGRTaXplOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsgQmFzZUFkZHJlc3MmbmJzcDsmbmJzcDsgKz0gQWRkU2l6ZTs8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IH0gZWxzZSB7PG86cD48L286cD48L3ByZT4NCjxw cmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyByZXR1cm4gRUZJX1NVQ0NFU1M7PG86 cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyB9PG86cD48L286cD48L3By ZT4NCjxwcmU+KyZuYnNwOyB9IHdoaWxlIChCYXNlQWRkcmVzcyAmbHQ7PSBFbmRBZGRyZXNzKTs8 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBy ZXR1cm4gRUZJX1NVQ0NFU1M7PG86cD48L286cD48L3ByZT4NCjxwcmU+K308bzpwPjwvbzpwPjwv cHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+Ky8qKjxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPismbmJzcDsgU2V0cyB0aGUgQXR0cmlidXRlcyZuYnNwOyBvZiB0aGUgc3BlY2lmaWVk IG1lbW9yeSByZWdpb248bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4N CjxwcmU+KyZuYnNwOyBAcGFyYW1baW5dJm5ic3A7IEJhc2VBZGRyZXNzJm5ic3A7Jm5ic3A7Jm5i c3A7IFRoZSBiYXNlIGFkZHJlc3Mgb2YgdGhlIG1lbW9yeSByZWdpb24gdG8gc2V0IHRoZSBBdHRy aWJ1dGVzLjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQHBhcmFtW2luXSZuYnNwOyBM ZW5ndGgmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgVGhl IGxlbmd0aCBvZiB0aGUgbWVtb3J5IHJlZ2lvbiB0byBzZXQgdGhlIEF0dHJpYnV0ZXMuPG86cD48 L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcGFyYW1baW5dJm5ic3A7IEF0dHJpYnV0ZXMmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsgVGhlIEF0dHJpYnV0ZXMgdG8gYmUgc2V0LjxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPismbmJzcDsgQHBhcmFtW2luXSZuYnNwOyBBdHRyaWJ1dGVNYXNrJm5ic3A7 IE1hc2sgb2YgbWVtb3J5IGF0dHJpYnV0ZXMgdG8gdGFrZSBpbnRvIGFjY291bnQuPG86cD48L286 cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQHJldHZhbCZu YnNwOyBFRklfU1VDQ0VTUyZuYnNwOyZuYnNwOyZuYnNwOyBUaGUgQXR0cmlidXRlcyB3YXMgc2V0 IHN1Y2Nlc3NmdWxseTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisqKi88bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rRUZJX1NUQVRVUzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPitFRklBUEk8bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4rU2V0TWVtb3J5UmVnaW9uQXR0cmlidXRlcyAoPG86cD48L286cD48 L3ByZT4NCjxwcmU+KyZuYnNwOyBJTiBFRklfUEhZU0lDQUxfQUREUkVTUyZuYnNwOyBCYXNlQWRk cmVzcyw8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IElOIFVJTlROJm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IExlbmd0aCw8bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rJm5ic3A7IElOIFVJTlROJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 IEF0dHJpYnV0ZXMsPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBJTiBVSU5UNjQmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgQXR0cmlidXRlTWFzazxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPismbmJzcDsgKTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPit7PG86cD48L286cD48 L3ByZT4NCjxwcmU+KyZuYnNwOyBFRklfU1RBVFVTJm5ic3A7IFN0YXR1czs8bzpwPjwvbzpwPjwv cHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBpZiAoIU1tdUlzSW5p dCAoKSkgezxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgcmV0dXJu IEVGSV9VTlNVUFBPUlRFRDs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IH08bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBBdHRyaWJ1 dGVzID0gRWZpQXR0cmlidXRlQ29udmVyc2UgKEF0dHJpYnV0ZXMpOzxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPismbmJzcDsgU3RhdHVzJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ID0gTWVtb3J5TWFw UGFnZVJhbmdlIChCYXNlQWRkcmVzcywgQmFzZUFkZHJlc3MgKyBMZW5ndGgsIEF0dHJpYnV0ZXMp OzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQVNTRVJUX0VGSV9FUlJPUiAoU3RhdHVz KTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNw OyByZXR1cm4gU3RhdHVzOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPit9PG86cD48L286cD48L3By ZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisvKio8bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rJm5ic3A7IENoZWNrIHRvIHNlZSBpZiBtbXUgc3VjY2Vzc2Z1bGx5IGluaXRpYWxpemVz IGFuZCBzYXZlcyB0aGUgcmVzdWx0LjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4rJm5ic3A7IEBwYXJhbVtpbl0mbmJzcDsgSW1hZ2VIYW5kbGUmbmJzcDsg VGhlIGZpcm13YXJlIGFsbG9jYXRlZCBoYW5kbGUgZm9yIHRoZSBFRkkgaW1hZ2UuPG86cD48L286 cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcGFyYW1baW5dJm5ic3A7IFN5c3RlbVRhYmxlJm5ic3A7 IEEgcG9pbnRlciB0byB0aGUgRUZJIFN5c3RlbSBUYWJsZS48bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcmV0dmFsJm5ic3A7IFJFVFVSTl9T VUNDRVNTJm5ic3A7Jm5ic3A7Jm5ic3A7IEluaXRpYWxpemF0aW9uIHN1Y2NlZWRlZC48bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4rKiovPG86cD48L286cD48L3ByZT4NCjxwcmU+K1JFVFVSTl9TVEFU VVM8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rTW11SW5pdGlhbGl6ZSAoPG86cD48L286cD48L3By ZT4NCjxwcmU+KyZuYnNwOyBJTiBFRklfSEFORExFJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7IEltYWdlSGFuZGxlLDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJz cDsgSU4gRUZJX1NZU1RFTV9UQUJMRSZuYnNwOyAqU3lzdGVtVGFibGU8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rJm5ic3A7ICk8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rezxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPismbmJzcDsgaWYgKFNXQVBfUEFHRV9ESVIgIT0gMCkgezxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgbU1tdUluaXRlZCA9IFRSVUU7PG86cD48L286 cD48L3ByZT4NCjxwcmU+KyZuYnNwOyB9PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPismbmJzcDsgcmV0dXJuIFJFVFVSTl9TVUNDRVNTOzxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPit9PG86cD48L286cD48L3ByZT4NCjxwcmU+ZGlmZiAtLWdpdCBhL1VlZmlD cHVQa2cvTGlicmFyeS9DcHVNbXVMaWIvTG9vbmdBcmNoNjQvQ29tbW9uTW11TGliLmggYi9VZWZp Q3B1UGtnL0xpYnJhcnkvQ3B1TW11TGliL0xvb25nQXJjaDY0L0NvbW1vbk1tdUxpYi5oPG86cD48 L286cD48L3ByZT4NCjxwcmU+bmV3IGZpbGUgbW9kZSAxMDA2NDQ8bzpwPjwvbzpwPjwvcHJlPg0K PHByZT5pbmRleCAwMDAwMDAwMDAwLi5kOGM5MjJjOGZhPG86cD48L286cD48L3ByZT4NCjxwcmU+ LS0tIC9kZXYvbnVsbDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisrKyBiL1VlZmlDcHVQa2cvTGli cmFyeS9DcHVNbXVMaWIvTG9vbmdBcmNoNjQvQ29tbW9uTW11TGliLmg8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT5AQCAtMCwwICsxLDQzIEBAPG86cD48L286cD48L3ByZT4NCjxwcmU+Ky8qKiBAZmls ZTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7 IENvcHlyaWdodCAoYykgMjAyNCBMb29uZ3NvbiBUZWNobm9sb2d5IENvcnBvcmF0aW9uIExpbWl0 ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuJmx0O0JSJmd0OzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJl Pis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IFNQRFgtTGljZW5zZS1JZGVudGlmaWVy OiBCU0QtMi1DbGF1c2UtUGF0ZW50PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPismbmJzcDsgQHBhciBHbG9zc2FyeTo8bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IC0gRGlyJm5ic3A7Jm5ic3A7Jm5ic3A7IC0gRGlyZWN0b3J5 PG86cD48L286cD48L3ByZT4NCjxwcmU+KyoqLzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpw PjwvbzpwPjwvcHJlPg0KPHByZT4rI2lmbmRlZiZuYnNwOyBNTVVfTElCX0NPUkVfSF88bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4rI2RlZmluZSZuYnNwOyBNTVVfTElCX0NPUkVfSF88bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+Ky8qKjxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPismbmJzcDsgSXRlcmF0ZXMgdGhyb3VnaCB0aGUgcGFnZSBkaXJlY3RvcnkgdG8g aW5pdGlhbGl6ZSBpdC48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4N CjxwcmU+KyZuYnNwOyBAcGFyYW0mbmJzcDsgRHN0Jm5ic3A7IEEgcG9pbnRlciB0byB0aGUgZGly ZWN0b3J5IG9mIHRoZSBwYWdlIHRvIGluaXRpYWxpemUuPG86cD48L286cD48L3ByZT4NCjxwcmU+ KyZuYnNwOyBAcGFyYW0mbmJzcDsgTnVtJm5ic3A7IFRoZSBudW1iZXIgb2YgcGFnZSBkaXJlY3Rv cmllcyB0byBpbml0aWFsaXplLjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQHBhcmFt Jm5ic3A7IFNyYyZuYnNwOyBBIHBvaW50ZXIgdG8gdGhlIGRhdGEgdXNlZCB0byBpbml0aWFsaXpl IHRoZSBwYWdlIGRpcmVjdG9yeS48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48 L3ByZT4NCjxwcmU+KyZuYnNwOyBAcmV0dmFsIFZPSUQuPG86cD48L286cD48L3ByZT4NCjxwcmU+ KyoqLzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPitWT0lEPG86cD48L286cD48L3ByZT4NCjxwcmU+ K1BhZ2VEaXJJbml0ICg8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IElOIFZPSUQmbmJz cDsmbmJzcDsgKmRlc3QsPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBJTiBVSU5UTiZu YnNwOyBDb3VudCw8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IElOIFZPSUQmbmJzcDsm bmJzcDsgKnNyYzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgKTs8bzpwPjwvbzpwPjwv cHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+Ky8qKjxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPismbmJzcDsgUGFnZSB0YWJsZXMgYXJlIGVzdGFibGlzaGVkIGZyb20gbWVtb3J5LW1h cHBlZCB0YWJsZXMuPG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPismbmJzcDsgQHBhcmFtJm5ic3A7IE1lbW9yeVJlZ2lvbiZuYnNwOyZuYnNwOyBBIHBvaW50 ZXIgdG8gYSBtZW1vcnktbWFwcGVkIHRhYmxlIGVudHJ5LjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJl Pis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEByZXR2YWwmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsgRUZJX1NVQ0NFU1MmbmJzcDsmbmJzcDsgVGhlIHBhZ2UgdGFibGUgd2FzIGNyZWF0 ZWQgc3VjY2Vzc2Z1bGx5LjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQHJldHZhbCZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBFRklfT1VUX09GX1JFU09VUkNFUyZuYnNwOyBQYWdlIHRh YmxlJm5ic3A7IGVzdGFibGlzaG1lbnQgZmFpbGVkIGR1ZSB0byByZXNvdXJjZSBleGhhdXN0aW9u LjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisqKi88bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rRUZJ X1NUQVRVUzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPitGaWxsVHJhbnNsYXRpb25UYWJsZSAoPG86 cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBJTiZuYnNwOyBNRU1PUllfUkVHSU9OX0RFU0NS SVBUT1ImbmJzcDsgKk1lbW9yeVJlZ2lvbjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsg KTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyNlbmRp ZiAvLyBNTVVfTElCX0NPUkVfSF88bzpwPjwvbzpwPjwvcHJlPg0KPHByZT5kaWZmIC0tZ2l0IGEv VWVmaUNwdVBrZy9MaWJyYXJ5L0NwdU1tdUxpYi9Mb29uZ0FyY2g2NC9QYWdlLmggYi9VZWZpQ3B1 UGtnL0xpYnJhcnkvQ3B1TW11TGliL0xvb25nQXJjaDY0L1BhZ2UuaDxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPm5ldyBmaWxlIG1vZGUgMTAwNjQ0PG86cD48L286cD48L3ByZT4NCjxwcmU+aW5kZXgg MDAwMDAwMDAwMC4uYmFjNGY1MjMyNzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPi0tLSAvZGV2L251 bGw8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rKysgYi9VZWZpQ3B1UGtnL0xpYnJhcnkvQ3B1TW11 TGliL0xvb25nQXJjaDY0L1BhZ2UuaDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPkBAIC0wLDAgKzEs Mjc5IEBAPG86cD48L286cD48L3ByZT4NCjxwcmU+Ky8qKiBAZmlsZTxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IENvcHlyaWdodCAoYykgMjAy NCBMb29uZ3NvbiBUZWNobm9sb2d5IENvcnBvcmF0aW9uIExpbWl0ZWQuIEFsbCByaWdodHMgcmVz ZXJ2ZWQuJmx0O0JSJmd0OzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rJm5ic3A7IFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMi1DbGF1c2UtUGF0 ZW50PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJz cDsgQHBhciBHbG9zc2FyeTo8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5i c3A7IC0gUGdkIG9yIFBnZCBvciBQR0QmbmJzcDsmbmJzcDsmbmJzcDsgLSBQYWdlIEdsb2JhbCBE aXJlY3Rvcnk8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IC0gUHVk IG9yIFB1ZCBvciBQVUQmbmJzcDsmbmJzcDsmbmJzcDsgLSBQYWdlIFVwcGVyIERpcmVjdG9yeTxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgLSBQbWQgb3IgUG1kIG9y IFBNRCZuYnNwOyZuYnNwOyZuYnNwOyAtIFBhZ2UgTWlkZGxlIERpcmVjdG9yeTxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgLSBQdGUgb3IgcHRlIG9yIFBURSZuYnNw OyZuYnNwOyZuYnNwOyAtIFBhZ2UgVGFibGUgRW50cnk8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4r Jm5ic3A7Jm5ic3A7Jm5ic3A7IC0gVmFsIG9yIFZBTCBvciB2YWwmbmJzcDsmbmJzcDsmbmJzcDsg LSBWYWx1ZTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgLSBEaXIm bmJzcDsmbmJzcDsmbmJzcDsgLSBEaXJlY3Rvcnk8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rKiov PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisjaWZuZGVm IFBBR0VfSF88bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rI2RlZmluZSBQQUdFX0hfPG86cD48L286 cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisjaW5jbHVkZSAmbHQ7TGli cmFyeS9DcHVNbXVMaWIuaCZndDs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48 L3ByZT4NCjxwcmU+KyNkZWZpbmUgTUFYX1ZBX0JJVFMmbmJzcDsgNDc8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rI2RlZmluZSBQR0RfV0lERSZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAoOCk8bzpw PjwvbzpwPjwvcHJlPg0KPHByZT4rI2RlZmluZSBQVURfV0lERSZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyAoOSk8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rI2RlZmluZSBQTURfV0lERSZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyAoOSk8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rI2RlZmluZSBQVEVf V0lERSZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAoOSk8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4r PG86cD48L286cD48L3ByZT4NCjxwcmU+KyNkZWZpbmUgRU5UUllTX1BFUl9QR0QmbmJzcDsgKDEg Jmx0OyZsdDsgUEdEX1dJREUpPG86cD48L286cD48L3ByZT4NCjxwcmU+KyNkZWZpbmUgRU5UUllT X1BFUl9QVUQmbmJzcDsgKDEgJmx0OyZsdDsgUFVEX1dJREUpPG86cD48L286cD48L3ByZT4NCjxw cmU+KyNkZWZpbmUgRU5UUllTX1BFUl9QTUQmbmJzcDsgKDEgJmx0OyZsdDsgUE1EX1dJREUpPG86 cD48L286cD48L3ByZT4NCjxwcmU+KyNkZWZpbmUgRU5UUllTX1BFUl9QVEUmbmJzcDsgKDEgJmx0 OyZsdDsgUFRFX1dJREUpPG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPisjZGVmaW5lIFBHRF9TSElGVCZuYnNwOyAoUFVEX1NISUZUICsgUFVEX1dJREUpPG86 cD48L286cD48L3ByZT4NCjxwcmU+KyNkZWZpbmUgUFVEX1NISUZUJm5ic3A7IChQTURfU0hJRlQg KyBQTURfV0lERSk8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rI2RlZmluZSBQTURfU0hJRlQmbmJz cDsgKEVGSV9QQUdFX1NISUZUICsgUFRFX1dJREUpPG86cD48L286cD48L3ByZT4NCjxwcmU+KyNk ZWZpbmUgUFRFX1NISUZUJm5ic3A7IChFRklfUEFHRV9TSElGVCk8bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyNkZWZpbmUgUEdEX1NJWkUmbmJzcDsgKDFV TCAmbHQ7Jmx0OyBQR0RfU0hJRlQpPG86cD48L286cD48L3ByZT4NCjxwcmU+KyNkZWZpbmUgUFVE X1NJWkUmbmJzcDsgKDFVTCAmbHQ7Jmx0OyBQVURfU0hJRlQpPG86cD48L286cD48L3ByZT4NCjxw cmU+KyNkZWZpbmUgUE1EX1NJWkUmbmJzcDsgKDFVTCAmbHQ7Jmx0OyBQTURfU0hJRlQpPG86cD48 L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisjZGVmaW5lIFBHRF9N QVNLJm5ic3A7Jm5ic3A7ICh+KFBHRF9TSVpFLTEpKTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisj ZGVmaW5lIFBVRF9NQVNLJm5ic3A7Jm5ic3A7ICh+KFBVRF9TSVpFLTEpKTxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPisjZGVmaW5lIFBNRF9NQVNLJm5ic3A7Jm5ic3A7ICh+KFBNRF9TSVpFLTEpKTxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPisjZGVmaW5lIFBBR0VfTUFTSyZuYnNwOyAofihFRklfUEFH RV9TSVpFIC0gMSkpPG86cD48L286cD48L3ByZT4NCjxwcmU+KyNkZWZpbmUgUEZOX01BU0smbmJz cDsmbmJzcDsgKH4oKChVSU5UTikoMSkgJmx0OyZsdDsgKEVGSV9QQUdFX1NISUZUKSkgLSAxKSAm YW1wOyBcPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAoKChVSU5UTikoMSkgJmx0OyZsdDsgKFBBR0VfUEZO X0VORF9TSElGVCkpIC0gMSkpPG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPisjZGVmaW5lIEhVR0VQX1BBR0VfTUFTSyZuYnNwOyAofigoKFVJTlROKSgxKSAm bHQ7Jmx0OyAoUE1EX1NISUZUKSkgLSAxKSAmYW1wOyBcPG86cD48L286cD48L3ByZT4NCjxwcmU+ KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAoKChVSU5UTikoMSkgJmx0OyZs dDsgKFBBR0VfUEZOX0VORF9TSElGVCkpIC0gMSkpPG86cD48L286cD48L3ByZT4NCjxwcmU+Kzxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPisjZGVmaW5lIElOVkFMSURfUEFHRSZuYnNwOyAwPG86cD48 L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPit0eXBlZGVmIHN0cnVj dCB7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBVSU5UTiZuYnNwOyZuYnNwOyZuYnNw OyBQZ2RWYWw7PG86cD48L286cD48L3ByZT4NCjxwcmU+K30gUEdEOzxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPit0eXBlZGVmIHN0cnVjdCB7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBV SU5UTiZuYnNwOyZuYnNwOyZuYnNwOyBQdWRWYWw7PG86cD48L286cD48L3ByZT4NCjxwcmU+K30g UFVEOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPit0eXBlZGVmIHN0cnVjdCB7PG86cD48L286cD48 L3ByZT4NCjxwcmU+KyZuYnNwOyBVSU5UTiZuYnNwOyZuYnNwOyZuYnNwOyBQbWRWYWw7PG86cD48 L286cD48L3ByZT4NCjxwcmU+K30gUE1EOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPit0eXBlZGVm IHN0cnVjdCB7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBVSU5UTiZuYnNwOyZuYnNw OyZuYnNwOyBQdGVWYWw7PG86cD48L286cD48L3ByZT4NCjxwcmU+K30gUFRFOzxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rLyoqPG86cD48L286cD48L3By ZT4NCjxwcmU+KyZuYnNwOyBHZXRzIHRoZSB2YWx1ZSBvZiB0aGUgcGFnZSBnbG9iYWwgZGlyZWN0 b3J5IHRhYmxlIGVudHJ5LjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rJm5ic3A7IEBwYXJhbSZuYnNwOyB4Jm5ic3A7Jm5ic3A7Jm5ic3A7IFBhZ2UgZ2xv YmFsIGRpcmVjdG9yeSBzdHJ1Y3QgdmFyaWFibGVzLjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEByZXR2YWwmbmJzcDsmbmJzcDsgdGhlIHZh bHVlIG9mIHRoZSBwYWdlIGdsb2JhbCBkaXJlY3RvcnkgdGFibGUgZW50cnkuPG86cD48L286cD48 L3ByZT4NCjxwcmU+KyAqKi88bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rI2RlZmluZSBQR0RfVkFM KHgpJm5ic3A7ICgoeCkuUGdkVmFsKTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4rLyoqPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBHZXRzIHRo ZSB2YWx1ZSBvZiB0aGUgcGFnZSB1cHBlciBkaXJlY3RvcnkgdGFibGUgZW50cnkuPG86cD48L286 cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQHBhcmFtJm5i c3A7IHgmbmJzcDsmbmJzcDsmbmJzcDsgUGFnZSB1cHBlciBkaXJlY3Rvcnkgc3RydWN0IHZhcmlh Ymxlcy48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZu YnNwOyBAcmV0dmFsJm5ic3A7IHRoZSB2YWx1ZSBvZiB0aGUgcGFnZSB1cHBlciBkaXJlY3Rvcnkg dGFibGUgZW50cnkuPG86cD48L286cD48L3ByZT4NCjxwcmU+KyAqKi88bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rI2RlZmluZSBQVURfVkFMKHgpJm5ic3A7ICgoeCkuUHVkVmFsKTxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rLyoqPG86cD48L286cD48L3By ZT4NCjxwcmU+KyZuYnNwOyBHZXRzIHRoZSB2YWx1ZSBvZiB0aGUgcGFnZSBtaWRkbGUgZGlyZWN0 b3J5IHRhYmxlIGVudHJ5LjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rJm5ic3A7IEBwYXJhbSZuYnNwOyB4Jm5ic3A7Jm5ic3A7Jm5ic3A7IFBhZ2UgbWlk ZGxlIGRpcmVjdG9yeSBzdHJ1Y3QgdmFyaWFibGVzLjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEByZXR2YWwmbmJzcDsgdGhlIHZhbHVlIG9m IHRoZSBwYWdlIG1pZGRsZSBkaXJlY3RvcnkgdGFibGUgZW50cnkuPG86cD48L286cD48L3ByZT4N CjxwcmU+KyAqKi88bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rI2RlZmluZSBQTURfVkFMKHgpJm5i c3A7ICgoeCkuUG1kVmFsKTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rLyoqPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBHZXRzIHRoZSB2YWx1 ZSBvZiB0aGUgcGFnZSB0YWJsZSBlbnRyeS48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48 L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcGFyYW0mbmJzcDsgeCZuYnNwOyZuYnNwOyZuYnNw OyBQYWdlIHRhYmxlIGVudHJ5IHN0cnVjdCB2YXJpYWJsZXMuPG86cD48L286cD48L3ByZT4NCjxw cmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQHJldHZhbCZuYnNwOyB0aGUgdmFs dWUgb2YgdGhlIHBhZ2UgdGFibGUgZW50cnkuPG86cD48L286cD48L3ByZT4NCjxwcmU+KyAqKi88 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rI2RlZmluZSBQVEVfVkFMKHgpJm5ic3A7ICgoeCkuUHRl VmFsKTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rI2Rl ZmluZSBQR0RfVEFCTEVfU0laRSZuYnNwOyAoRU5UUllTX1BFUl9QR0QgKiBzaXplb2YoUEdEKSk8 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rI2RlZmluZSBQVURfVEFCTEVfU0laRSZuYnNwOyAoRU5U UllTX1BFUl9QVUQgKiBzaXplb2YoUFVEKSk8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rI2RlZmlu ZSBQTURfVEFCTEVfU0laRSZuYnNwOyAoRU5UUllTX1BFUl9QTUQgKiBzaXplb2YoUE1EKSk8bzpw PjwvbzpwPjwvcHJlPg0KPHByZT4rI2RlZmluZSBQVEVfVEFCTEVfU0laRSZuYnNwOyAoRU5UUllT X1BFUl9QVEUgKiBzaXplb2YoUFRFKSk8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286 cD48L3ByZT4NCjxwcmU+Ky8qKjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgR2V0cyB0 aGUgcGh5c2ljYWwgYWRkcmVzcyBvZiB0aGUgcmVjb3JkIGluIHRoZSBwYWdlIHRhYmxlIGVudHJ5 LjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7 IEBwYXJhbSZuYnNwOyB4Jm5ic3A7Jm5ic3A7Jm5ic3A7IFBhZ2UgdGFibGUgZW50cnkgc3RydWN0 IHZhcmlhYmxlcy48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxw cmU+KyZuYnNwOyBAcmV0dmFsJm5ic3A7IHRoZSB2YWx1ZSBvZiB0aGUgcGh5c2ljYWwgYWRkcmVz cy48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rICoqLzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisj ZGVmaW5lIEdFVF9QQUdFX0FUVFJJQlVURVMoeCkmbmJzcDsgKFVJTlROKSB7KFBURV9WQUwoeCkg JmFtcDsgflBGTl9NQVNLKX08bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3By ZT4NCjxwcmU+Ky8qKjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgR2V0cyB0aGUgdmly dHVhbCBhZGRyZXNzIG9mIHRoZSBuZXh0IGJsb2NrIG9mIHRoZSBzcGVjaWZpZWQgdmlydHVhbCBh ZGRyZXNzPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyB0aGF0IGlzIGFsaWduZWQgd2l0 aCB0aGUgc2l6ZSBvZiB0aGUgZ2xvYmFsIHBhZ2UgZGlyZWN0b3J5IG1hcHBpbmcuPG86cD48L286 cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQHBhcmFtJm5i c3A7IEFkZHJlc3MmbmJzcDsgU3BlY2lmaWVzIHRoZSB2aXJ0dWFsIGFkZHJlc3MuPG86cD48L286 cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcGFyYW0mbmJzcDsgRW5kJm5ic3A7Jm5ic3A7Jm5ic3A7 IFRoZSBlbmQgYWRkcmVzcyBvZiB0aGUgbWVtb3J5IHJlZ2lvbi48bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcmV0dmFsJm5ic3A7Jm5ic3A7 IHRoZSBzcGVjaWZpZWQgdmlydHVhbCBhZGRyZXNzJm5ic3A7IG9mIHRoZSBuZXh0IGJsb2NrLjxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPisgKiovPG86cD48L286cD48L3ByZT4NCjxwcmU+KyNkZWZp bmUgUEdEX0FERFJFU1NfRU5EKEFkZHJlc3MsIEVuZCkmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsgXDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisoeyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyBcPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBVSU5U TiBCb3VuZGFyeSA9ICgoQWRkcmVzcykgKyBQR0RfU0laRSkgJmFtcDsgUEdEX01BU0s7Jm5ic3A7 IFw8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IChCb3VuZGFyeSAtIDEgJmx0OyAoRW5k KSAtIDEpPyBCb3VuZGFyeTogKEVuZCk7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7IFw8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rfSk8bzpwPjwvbzpwPjwv cHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+Ky8qKjxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPismbmJzcDsgR2V0cyB0aGUgdmlydHVhbCBhZGRyZXNzIG9mIHRoZSBuZXh0IGJsb2Nr IG9mIHRoZSBzcGVjaWZpZWQgdmlydHVhbCBhZGRyZXNzPG86cD48L286cD48L3ByZT4NCjxwcmU+ KyZuYnNwOyB0aGF0IGlzIGFsaWduZWQgd2l0aCB0aGUgc2l6ZSBvZiB0aGUgcGFnZSB1cHBlciBk aXJlY3RvcnkgbWFwcGluZy48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3By ZT4NCjxwcmU+KyZuYnNwOyBAcGFyYW0mbmJzcDsgQWRkcmVzcyZuYnNwOyBTcGVjaWZpZXMgdGhl IHZpcnR1YWwgYWRkcmVzcy48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEBwYXJhbSZu YnNwOyBFbmQmbmJzcDsmbmJzcDsmbmJzcDsgVGhlIGVuZCBhZGRyZXNzIG9mIHRoZSBtZW1vcnkg cmVnaW9uLjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4r Jm5ic3A7IEByZXR2YWwmbmJzcDsmbmJzcDsgdGhlIHNwZWNpZmllZCB2aXJ0dWFsIGFkZHJlc3Mm bmJzcDsgb2YgdGhlIG5leHQgYmxvY2suPG86cD48L286cD48L3ByZT4NCjxwcmU+KyAqKi88bzpw PjwvbzpwPjwvcHJlPg0KPHByZT4rI2RlZmluZSBQVURfQUREUkVTU19FTkQoQWRkcmVzcywgRW5k KSZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBcPG86cD48L286 cD48L3ByZT4NCjxwcmU+Kyh7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IFw8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4rJm5ic3A7IFVJTlROIEJvdW5kYXJ5ID0gKChBZGRyZXNzKSArIFBVRF9T SVpFKSAmYW1wOyBQVURfTUFTSzsmbmJzcDsgXDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJz cDsgKEJvdW5kYXJ5IC0gMSAmbHQ7IChFbmQpIC0gMSk/IEJvdW5kYXJ5OiAoRW5kKTsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgXDxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPit9KTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rLyoqPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBHZXRzIHRoZSB2aXJ0dWFs IGFkZHJlc3Mgb2YgdGhlIG5leHQgYmxvY2sgb2YgdGhlIHNwZWNpZmllZCB2aXJ0dWFsIGFkZHJl c3M8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IHRoYXQgaXMgYWxpZ25lZCB3aXRoIHRo ZSBzaXplIG9mIHRoZSBwYWdlIG1pZGRsZSBkaXJlY3RvcnkgbWFwcGluZy48bzpwPjwvbzpwPjwv cHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcGFyYW0mbmJzcDsg QWRkcmVzcyZuYnNwOyBTcGVjaWZpZXMgdGhlIHZpcnR1YWwgYWRkcmVzcy48bzpwPjwvbzpwPjwv cHJlPg0KPHByZT4rJm5ic3A7IEBwYXJhbSZuYnNwOyBFbmQmbmJzcDsmbmJzcDsmbmJzcDsgVGhl IGVuZCBhZGRyZXNzIG9mIHRoZSBtZW1vcnkgcmVnaW9uLjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJl Pis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEByZXR2YWwmbmJzcDsmbmJzcDsgdGhl IHNwZWNpZmllZCB2aXJ0dWFsIGFkZHJlc3MmbmJzcDsgb2YgdGhlIG5leHQgYmxvY2suPG86cD48 L286cD48L3ByZT4NCjxwcmU+KyAqKi88bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rI2RlZmluZSBQ TURfQUREUkVTU19FTkQoQWRkcmVzcywgRW5kKSZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyBcPG86cD48L286cD48L3ByZT4NCjxwcmU+Kyh7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7IFw8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IFVJTlROIEJv dW5kYXJ5ID0gKChBZGRyZXNzKSArIFBNRF9TSVpFKSAmYW1wOyBQTURfTUFTSzsmbmJzcDsgXDxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgKEJvdW5kYXJ5IC0gMSAmbHQ7IChFbmQpIC0g MSk/IEJvdW5kYXJ5OiAoRW5kKTsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsgXDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPit9KTxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rLyoqPG86cD48L286cD48L3ByZT4NCjxw cmU+KyZuYnNwOyBHZXQgU3BlY2lmaWVzIHRoZSB2aXJ0dWFsIGFkZHJlc3MgY29ycmVzcG9uZGlu ZyB0byB0aGUgaW5kZXggb2YgdGhlIHBhZ2UgZ2xvYmFsIGRpcmVjdG9yeSB0YWJsZSBlbnRyeS48 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBA cGFyYW0mbmJzcDsgQWRkcmVzcyZuYnNwOyBTcGVjaWZpZXMgdGhlIHZpcnR1YWwgYWRkcmVzcy48 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBA cmV0dmFsJm5ic3A7Jm5ic3A7IHRoZSBpbmRleCBvZiB0aGUgcGFnZSBnbG9iYWwgZGlyZWN0b3J5 IHRhYmxlIGVudHJ5LjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisgKiovPG86cD48L286cD48L3By ZT4NCjxwcmU+KyNkZWZpbmUgUEdEX0lOREVYKEFkZHJlc3MpJm5ic3A7ICgoKEFkZHJlc3MpICZn dDsmZ3Q7IFBHRF9TSElGVCkgJmFtcDsgKEVOVFJZU19QRVJfUEdELTEpKTxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rLyoqPG86cD48L286cD48L3ByZT4N CjxwcmU+KyZuYnNwOyBHZXQgU3BlY2lmaWVzIHRoZSB2aXJ0dWFsIGFkZHJlc3MgY29ycmVzcG9u ZGluZyB0byB0aGUgaW5kZXggb2YgdGhlIHBhZ2UgdXBwZXIgZGlyZWN0b3J5IHRhYmxlIGVudHJ5 LjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7 IEBwYXJhbSZuYnNwOyBBZGRyZXNzJm5ic3A7IFNwZWNpZmllcyB0aGUgdmlydHVhbCBhZGRyZXNz LjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQHBhcmFtJm5ic3A7IEVuZCZuYnNwOyZu YnNwOyZuYnNwOyBUaGUgZW5kIGFkZHJlc3Mgb2YgdGhlIG1lbW9yeSByZWdpb24uPG86cD48L286 cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQHJldHZhbCZu YnNwOyZuYnNwOyB0aGUgaW5kZXggb2YgdGhlIHBhZ2UgdXBwZXIgZGlyZWN0b3J5IHRhYmxlIGVu dHJ5LjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisgKiovPG86cD48L286cD48L3ByZT4NCjxwcmU+ KyNkZWZpbmUgUFVEX0lOREVYKEFkZHJlc3MpJm5ic3A7ICgoKEFkZHJlc3MpICZndDsmZ3Q7IFBV RF9TSElGVCkgJmFtcDsgKEVOVFJZU19QRVJfUFVEIC0gMSkpPG86cD48L286cD48L3ByZT4NCjxw cmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisvKio8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4r Jm5ic3A7IEdldCBTcGVjaWZpZXMgdGhlIHZpcnR1YWwgYWRkcmVzcyBjb3JyZXNwb25kaW5nIHRv IHRoZSBpbmRleCBvZiB0aGUgcGFnZSBtaWRkbGUgZGlyZWN0b3J5IHRhYmxlIGVudHJ5LjxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEBwYXJh bSZuYnNwOyBBZGRyZXNzJm5ic3A7IFNwZWNpZmllcyB0aGUgdmlydHVhbCBhZGRyZXNzLjxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEByZXR2 YWwmbmJzcDsmbmJzcDsgdGhlIGluZGV4IG9mIHRoZSBwYWdlIG1pZGRsZSBkaXJlY3RvcnkgdGFi bGUgZW50cnkuPG86cD48L286cD48L3ByZT4NCjxwcmU+KyAqKi88bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rI2RlZmluZSBQTURfSU5ERVgoQWRkcmVzcykmbmJzcDsgKCgoQWRkcmVzcykgJmd0OyZn dDsgUE1EX1NISUZUKSAmYW1wOyAoRU5UUllTX1BFUl9QTUQgLSAxKSk8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+Ky8qKjxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPismbmJzcDsgR2V0IFNwZWNpZmllcyB0aGUgdmlydHVhbCBhZGRyZXNzIGNvcnJlc3BvbmRp bmcgdG8gdGhlIGluZGV4IG9mIHRoZSBwYWdlIHRhYmxlIGVudHJ5LjxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEBwYXJhbSZuYnNwOyBBZGRy ZXNzJm5ic3A7IFNwZWNpZmllcyB0aGUgdmlydHVhbCBhZGRyZXNzLjxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEByZXR2YWwmbmJzcDsmbmJz cDsgdGhlIGluZGV4IG9mIHRoZSBwYWdlIHRhYmxlIGVudHJ5LjxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPisgKiovPG86cD48L286cD48L3ByZT4NCjxwcmU+KyNkZWZpbmUgUFRFX0lOREVYKEFkZHJl c3MpJm5ic3A7ICgoKEFkZHJlc3MpICZndDsmZ3Q7IEVGSV9QQUdFX1NISUZUKSAmYW1wOyAoRU5U UllTX1BFUl9QVEUgLSAxKSk8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3By ZT4NCjxwcmU+Ky8qKjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQ2FsY3VsYXRlcyB0 aGUgdmFsdWUgb2YgdGhlIHBhZ2UgdGFibGUgZW50cnkgYmFzZWQgb24gdGhlIHNwZWNpZmllZCB2 aXJ0dWFsIGFkZHJlc3MgYW5kIHByb3BlcnRpZXMuPG86cD48L286cD48L3ByZT4NCjxwcmU+Kzxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQHBhcmFtJm5ic3A7IEFkZHJlc3MmbmJzcDsg U3BlY2lmaWVzIHRoZSB2aXJ0dWFsIGFkZHJlc3MuPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZu YnNwOyBAcGFyYW0mbmJzcDsgQXR0cmlidXRlcyZuYnNwOyBTcGVjaWZpZXMgdGhlIEF0dHJpYnV0 ZXMuPG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJz cDsgQHJldHZhbCZuYnNwOyZuYnNwOyZuYnNwOyB0aGUgdmFsdWUgb2YgdGhlIHBhZ2UgdGFibGUg ZW50cnkuPG86cD48L286cD48L3ByZT4NCjxwcmU+KyAqKi88bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rI2RlZmluZSBNQUtFX1BURShBZGRyZXNzLCBBdHRyaWJ1dGVzKSZuYnNwOyAoUFRFKXsoKCgo QWRkcmVzcykgJmd0OyZndDsgRUZJX1BBR0VfU0hJRlQpICZsdDsmbHQ7IDEyKSB8IChBdHRyaWJ1 dGVzKSl9PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisv Kio8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEdldCBHbG9iYWwgYml0IGZyb20gQXR0 cmlidXRlczxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4r Jm5ic3A7IEBwYXJhbSZuYnNwOyBBdHRyaWJ1dGVzJm5ic3A7IFNwZWNpZmllcyB0aGUgQXR0cmli dXRlcy48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rICogKi88bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rI2RlZmluZSBHRVRfR0xPQkFMQklUKEF0dHJpYnV0ZXMpJm5ic3A7ICgoQXR0cmlidXRlcyAm YW1wOyBQQUdFX0dMT0JBTCkgJmd0OyZndDsgUEFHRV9HTE9CQUxfU0hJRlQpPG86cD48L286cD48 L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisvKio8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rJm5ic3A7IENhbGN1bGF0ZXMgdGhlIHZhbHVlIG9mIHRoZSBIdWdlIHBhZ2UgdGFi bGUgZW50cnkgYmFzZWQgb24gdGhlIHNwZWNpZmllZCB2aXJ0dWFsIGFkZHJlc3MgYW5kIHByb3Bl cnRpZXMuPG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPism bmJzcDsgQHBhcmFtJm5ic3A7IEFkZHJlc3MmbmJzcDsgU3BlY2lmaWVzIHRoZSB2aXJ0dWFsIGFk ZHJlc3MuPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcGFyYW0mbmJzcDsgQXR0cmli dXRlcyZuYnNwOyBTcGVjaWZpZXMgdGhlIEF0dHJpYnV0ZXMuPG86cD48L286cD48L3ByZT4NCjxw cmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQHJldHZhbCZuYnNwOyZuYnNwOyZu YnNwOyB0aGUgdmFsdWUgb2YgdGhlIEhVR0UgcGFnZSB0YWJsZSBlbnRyeS48bzpwPjwvbzpwPjwv cHJlPg0KPHByZT4rICoqLzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisjZGVmaW5lIE1BS0VfSFVH RV9QVEUoQWRkcmVzcywgQXR0cmlidXRlcykmbmJzcDsgKFBURSl7KCgoKChBZGRyZXNzKSAmZ3Q7 Jmd0OyBQTURfU0hJRlQpICZsdDsmbHQ7IFBNRF9TSElGVCkgfCBcPG86cD48L286cD48L3ByZT4N CjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAoKEF0dHJpYnV0ZXMp IHwgKEdFVF9HTE9CQUxCSVQoQXR0cmlidXRlcykgJmx0OyZsdDsgUEFHRV9IR0xPQkFMX1NISUZU KSB8IFw8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7IFBBR0VfSFVHRSkpKX08bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286 cD48L3ByZT4NCjxwcmU+Ky8qKjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQ2hlY2sg d2hldGhlciB0aGUgbGFyZ2UgcGFnZSB0YWJsZSBlbnRyeSBpcy48bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcGFyYW0mbmJzcDsgVmFsIFRo ZSB2YWx1ZSBvZiB0aGUgcGFnZSB0YWJsZSBlbnRyeS48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4r PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcmV0dmFsJm5ic3A7Jm5ic3A7Jm5ic3A7 IDEmbmJzcDsmbmJzcDsgSXMgaHVnZSBwYWdlIHRhYmxlIGVudHJ5LjxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPismbmJzcDsgQHJldHZhbCZuYnNwOyZuYnNwOyZuYnNwOyAwJm5ic3A7Jm5ic3A7IElz bid0IGh1Z2UgcGFnZSB0YWJsZSBlbnRyeS48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rKiovPG86 cD48L286cD48L3ByZT4NCjxwcmU+KyNkZWZpbmUgSVNfSFVHRV9QQUdFKFZhbCkmbmJzcDsgKCgo KFZhbCkgJmFtcDsgUEFHRV9IVUdFKSA9PSBQQUdFX0hVR0UpICZhbXA7JmFtcDsgXDxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7KCgoVmFsKSAmYW1wOyBQQUdFX0hHTE9CQUwpID09IFBBR0VfSEdMT0JBTCkpPG86 cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisjZGVmaW5lIEhV R0VfUEFHRV9TSVpFJm5ic3A7IChQTURfU0laRSk8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86 cD48L286cD48L3ByZT4NCjxwcmU+Ky8qKjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsg Q2hlY2sgdGhhdCB0aGUgZ2xvYmFsIHBhZ2UgZGlyZWN0b3J5IHRhYmxlIGVudHJ5IGlzIGVtcHR5 LjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7 IEBwYXJhbSZuYnNwOyBwZ2QmbmJzcDsmbmJzcDsgdGhlIGdsb2JhbCBwYWdlIGRpcmVjdG9yeSBz dHJ1Y3QgdmFyaWFibGVzLjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rJm5ic3A7IEByZXR2YWwmbmJzcDsmbmJzcDsmbmJzcDsgMSZuYnNwOyZuYnNwOyBU aGUgcGFnZSB0YWJsZSBpcyBpbnZhbGlkLjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsg QHJldHZhbCZuYnNwOyZuYnNwOyZuYnNwOyAwJm5ic3A7Jm5ic3A7IFRoZSBwYWdlIHRhYmxlIGlz IHZhbGlkLjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisqKi88bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rI2RlZmluZSBQR0RfSVNfRU1QVFkoVmFsKSZuYnNwOyAoUEdEX1ZBTChWYWwpID09IElOVkFM SURfUEFHRSk8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+ Ky8qKjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQ2hlY2sgdGhhdCB0aGUgcGFnZSB1 cHBlciBkaXJlY3RvcnkgdGFibGUgZW50cnkgaXMgZW1wdHkuPG86cD48L286cD48L3ByZT4NCjxw cmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQHBhcmFtJm5ic3A7IHB1ZCZuYnNw OyZuYnNwOyBQYWdlIHVwcGVyIGRpcmVjdG9yeSBzdHJ1Y3QgdmFyaWFibGVzLjxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEByZXR2YWwmbmJz cDsmbmJzcDsmbmJzcDsgMSZuYnNwOyZuYnNwOyBUaGUgcGFnZSB0YWJsZSBpcyBpbnZhbGlkLjxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQHJldHZhbCZuYnNwOyZuYnNwOyZuYnNwOyAw Jm5ic3A7Jm5ic3A7IFRoZSBwYWdlIHRhYmxlIGlzIHZhbGlkLjxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPisqKi88bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rI2RlZmluZSBQVURfSVNfRU1QVFkoVmFs KSZuYnNwOyAoUFVEX1ZBTChWYWwpID09IElOVkFMSURfUEFHRSk8bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+Ky8qKjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJl PismbmJzcDsgQ2hlY2sgdGhhdCB0aGUgcGFnZSBtaWRkbGUgZGlyZWN0b3J5IHRhYmxlIGVudHJ5 IGlzIGVtcHR5LjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rJm5ic3A7IEBwYXJhbSZuYnNwOyBwbWQmbmJzcDsmbmJzcDsgUGFnZSBtaWRkbGUgZGlyZWN0 b3J5IHN0cnVjdCB2YXJpYWJsZXMuPG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPismbmJzcDsgQHJldHZhbCZuYnNwOyZuYnNwOyZuYnNwOyAxJm5ic3A7Jm5i c3A7IFRoZSBwYWdlIHRhYmxlIGlzIGludmFsaWQuPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZu YnNwOyBAcmV0dmFsJm5ic3A7Jm5ic3A7Jm5ic3A7IDAmbmJzcDsmbmJzcDsgVGhlIHBhZ2UgdGFi bGUgaXMgdmFsaWQuPG86cD48L286cD48L3ByZT4NCjxwcmU+KyoqLzxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPisjZGVmaW5lIFBNRF9JU19FTVBUWShWYWwpJm5ic3A7IChQTURfVkFMKFZhbCkgPT0g SU5WQUxJRF9QQUdFKTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rLyoqPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBDaGVjayB0aGF0IHRoZSBw YWdlIHRoZSBwYWdlIHRhYmxlIGVudHJ5IGlzIGVtcHR5LjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJl Pis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEBwYXJhbSZuYnNwOyBwdGUmbmJzcDsm bmJzcDsgUGFnZSB0YWJsZSBlbnRyeSBzdHJ1Y3QgdmFyaWFibGVzLjxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEByZXR2YWwmbmJzcDsmbmJz cDsmbmJzcDsgMSZuYnNwOyZuYnNwOyBUaGUgcGFnZSB0YWJsZSBpcyBpbnZhbGlkLjxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQHJldHZhbCZuYnNwOyZuYnNwOyZuYnNwOyAwJm5ic3A7 Jm5ic3A7IFRoZSBwYWdlIHRhYmxlIGlzIHZhbGlkLjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisq Ki88bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rI2RlZmluZSBQVEVfSVNfRU1QVFkoVmFsKSZuYnNw OyAoIShQVEVfVkFMKFZhbCkgJmFtcDsgKH5QQUdFX1ZBTElEKSkpPG86cD48L286cD48L3ByZT4N CjxwcmU+KyNlbmRpZiAvLyBQQUdFX0hfPG86cD48L286cD48L3ByZT4NCjxwcmU+ZGlmZiAtLWdp dCBhL1VlZmlDcHVQa2cvTGlicmFyeS9DcHVNbXVMaWIvTG9vbmdBcmNoNjQvUGVpQ3B1TW11TGli LmMgYi9VZWZpQ3B1UGtnL0xpYnJhcnkvQ3B1TW11TGliL0xvb25nQXJjaDY0L1BlaUNwdU1tdUxp Yi5jPG86cD48L286cD48L3ByZT4NCjxwcmU+bmV3IGZpbGUgbW9kZSAxMDA2NDQ8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT5pbmRleCAwMDAwMDAwMDAwLi5jMjE0ZThkODQ3PG86cD48L286cD48L3By ZT4NCjxwcmU+LS0tIC9kZXYvbnVsbDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisrKyBiL1VlZmlD cHVQa2cvTGlicmFyeS9DcHVNbXVMaWIvTG9vbmdBcmNoNjQvUGVpQ3B1TW11TGliLmM8bzpwPjwv bzpwPjwvcHJlPg0KPHByZT5AQCAtMCwwICsxLDE3OCBAQDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJl PisvKiogQGZpbGU8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IENQVSBNZW1vcnkgTWFw IFVuaXQgUEVJIHBoYXNlIGRyaXZlci48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286 cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBDb3B5cmlnaHQgKGMpIDIwMjQgTG9vbmdzb24gVGVjaG5v bG9neSBDb3Jwb3JhdGlvbiBMaW1pdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLiZsdDtCUiZndDs8 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBT UERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNlLVBhdGVudDxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEBwYXIgR2xvc3Nhcnk6 PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyAtIFRsYiZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAtIFRyYW5zbGF0aW9uIExvb2thc2lkZSBCdWZmZXI8bzpw PjwvbzpwPjwvcHJlPg0KPHByZT4rKiovPG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPisjaW5jbHVkZSAmbHQ7VWVmaS5oJmd0OzxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPisjaW5jbHVkZSAmbHQ7TGlicmFyeS9CYXNlTGliLmgmZ3Q7PG86cD48L286cD48L3By ZT4NCjxwcmU+KyNpbmNsdWRlICZsdDtMaWJyYXJ5L0Jhc2VNZW1vcnlMaWIuaCZndDs8bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4rI2luY2x1ZGUgJmx0O0xpYnJhcnkvQ2FjaGVNYWludGVuYW5jZUxp Yi5oJmd0OzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisjaW5jbHVkZSAmbHQ7TGlicmFyeS9DcHVN bXVMaWIuaCZndDs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rI2luY2x1ZGUgJmx0O0xpYnJhcnkv RGVidWdMaWIuaCZndDs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rI2luY2x1ZGUgJmx0O0xpYnJh cnkvTWVtb3J5QWxsb2NhdGlvbkxpYi5oJmd0OzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisjaW5j bHVkZSAmbHQ7TGlicmFyeS9QY2RMaWIuaCZndDs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rI2lu Y2x1ZGUgJmx0O1JlZ2lzdGVyL0xvb25nQXJjaDY0L0Nzci5oJmd0OzxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rI2luY2x1ZGUgJnF1b3Q7UGFnZS5oJnF1 b3Q7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyNpbmNsdWRlICZxdW90O1RsYi5oJnF1b3Q7PG86 cD48L286cD48L3ByZT4NCjxwcmU+KyNpbmNsdWRlICZxdW90O0NvbW1vbk1tdUxpYi5oJnF1b3Q7 PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisvLzxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPisvLyBGb3IgY29kaW5nIGNvbnZlbmllbmNlLCBkZWZpbmUgdGhl IG1heGltdW0gdmFsaWQ8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rLy8gTG9vbmdBcmNoIGV4Y2Vw dGlvbi48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rLy8gU2luY2UgVUVGSSBWMi4xMSwgaXQgd2ls bCBiZSBwcmVzZW50IGluIERlYnVnU3VwcG9ydC5oLjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisv LzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisjZGVmaW5lIE1BWF9MT09OR0FSQ0hfRVhDRVBUSU9O Jm5ic3A7IDY0PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJl PisvKio8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IENyZWF0ZSBhIHBhZ2UgdGFibGUg YW5kIGluaXRpYWxpemUgdGhlIG1lbW9yeSBtYW5hZ2VtZW50IHVuaXQoTU1VKS48bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcGFyYW1baW5d Jm5ic3A7Jm5ic3A7IE1lbW9yeVRhYmxlJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IEEgcG9pbnRlciB0byBhIG1lbW9yeSByYWdpb24g dGFibGUuPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcGFyYW1bb3V0XSZuYnNwOyBU cmFuc2xhdGlvblRhYmxlQmFzZSZuYnNwOyBBIHBvaW50ZXIgdG8gYSB0cmFuc2xhdGlvbiB0YWJs ZSBiYXNlIGFkZHJlc3MuPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcGFyYW1bb3V0 XSZuYnNwOyBUcmFuc2xhdGlvblRhYmxlU2l6ZSZuYnNwOyBBIHBvaW50ZXIgdG8gYSB0cmFuc2xh dGlvbiB0YWJsZSBiYXNlIHNpemUuPG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPismbmJzcDsgQHJldHZhbCZuYnNwOyBFRklfU1VDQ0VTUyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBDb25maWd1cmUgTU1VIHN1Y2Nlc3NmdWxseS48bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IEVGSV9JTlZBTElEX1BBUkFNRVRFUiZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyBNZW1vcnlUYWJsZSBpcyBOVUxMLjxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsgRUZJX1VOU1VQUE9SVEVEJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IE91dCBvZiBtZW1vcnkgc3BhY2Ugb3Ig c2l6ZSBub3QgYWxpZ25lZC48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rKiovPG86cD48L286cD48 L3ByZT4NCjxwcmU+K0VGSV9TVEFUVVM8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rRUZJQVBJPG86 cD48L286cD48L3ByZT4NCjxwcmU+K0NvbmZpZ3VyZU1lbW9yeU1hbmFnZW1lbnRVbml0ICg8bzpw PjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IElOJm5ic3A7IE1FTU9SWV9SRUdJT05fREVTQ1JJ UFRPUiZuYnNwOyAqTWVtb3J5VGFibGUsPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBP VVQgVk9JRCZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyAqKlRyYW5zbGF0aW9uVGFibGVCYXNlIE9QVElPTkFMLDxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgT1VUIFVJTlROJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICpUcmFuc2xhdGlvblRh YmxlU2l6ZSZuYnNwOyBPUFRJT05BTDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgKTxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPit7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBQ R0QmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsgKlN3YXBwZXJQYWdlRGlyOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJz cDsgVUlOVE4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsgUGdkU2hpZnQ7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBVSU5UTiZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBQZ2RXaWRl OzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgVUlOVE4mbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgUHVkU2hpZnQ7PG86cD48L286cD48 L3ByZT4NCjxwcmU+KyZuYnNwOyBVSU5UTiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBQdWRXaWRlOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPism bmJzcDsgVUlOVE4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsgUG1kU2hpZnQ7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBVSU5UTiZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBQbWRX aWRlOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgVUlOVE4mbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgUHRlU2hpZnQ7PG86cD48L286 cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBVSU5UTiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBQdGVXaWRlOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJl PismbmJzcDsgVUlOVE4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsgTGVuZ3RoOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgVUlOVE4m bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgVGxi UmVFbnRyeTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IFVJTlROJm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IFRsYlJlRW50cnlPZmZz ZXQ7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBVSU5UTiZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBSZW1haW5pbmc7PG86cD48L286 cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBSRVRVUk5fU1RBVFVTJm5ic3A7IFN0YXR1czs8bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBTd2FwcGVy UGFnZURpciA9IE5VTEw7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBQZ2RTaGlmdCZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyA9IFBHRF9TSElGVDs8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4rJm5ic3A7IFBnZFdpZGUmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsgPSBQR0RfV0lERTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7 IFB1ZFNoaWZ0Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ID0gUFVEX1NISUZU OzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgUHVkV2lkZSZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyA9IFBVRF9XSURFOzxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPismbmJzcDsgUG1kU2hpZnQmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsg PSBQTURfU0hJRlQ7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBQbWRXaWRlJm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ID0gUE1EX1dJREU7PG86cD48L286 cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBQdGVTaGlmdCZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyA9IFBURV9TSElGVDs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IFB0 ZVdpZGUmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgPSBQVEVfV0lE RTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNw OyBpZiAoTWVtb3J5VGFibGUgPT0gTlVMTCkgezxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJz cDsmbmJzcDsmbmJzcDsgQVNTRVJUIChNZW1vcnlUYWJsZSAhPSBOVUxMKTs8bzpwPjwvbzpwPjwv cHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IHJldHVybiBFRklfSU5WQUxJRF9QQVJBTUVU RVI7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyB9PG86cD48L286cD48L3ByZT4NCjxw cmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgU3dhcHBlclBhZ2VEaXIgPSBBbGxv Y2F0ZVBhZ2VzIChFRklfU0laRV9UT19QQUdFUyAoUEdEX1RBQkxFX1NJWkUpKTs8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4rJm5ic3A7IFplcm9NZW0gKFN3YXBwZXJQYWdlRGlyLCBQR0RfVEFCTEVf U0laRSk7PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPism bmJzcDsgaWYgKFN3YXBwZXJQYWdlRGlyID09IE5VTEwpIHs8bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IGdvdG8gRnJlZVRyYW5zbGF0aW9uVGFibGU7PG86cD48L286 cD48L3ByZT4NCjxwcmU+KyZuYnNwOyB9PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQ3NyV3JpdGUgKExPT05HQVJDSF9DU1JfUEdETCwgKFVJ TlROKVN3YXBwZXJQYWdlRGlyKTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48 L3ByZT4NCjxwcmU+KyZuYnNwOyB3aGlsZSAoTWVtb3J5VGFibGUtJmd0O0xlbmd0aCAhPSAwKSB7 PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyBERUJVRyAoKDxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgREVCVUdf SU5GTyw8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7ICZxdW90OyVhICVkIFZpcnR1YWxCYXNlICVwIFZpcnR1YWxFbmQgJXAgQXR0cmlidXRlcyAl cCAuXG4mcXVvdDssPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyBfX2Z1bmNfXyw8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7IF9fTElORV9fLDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgTWVtb3J5VGFibGUtJmd0O1ZpcnR1YWxCYXNlLDxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgKE1l bW9yeVRhYmxlLSZndDtMZW5ndGggKyBNZW1vcnlUYWJsZS0mZ3Q7VmlydHVhbEJhc2UpLDxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgTWVtb3J5 VGFibGUtJmd0O0F0dHJpYnV0ZXM8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7ICkpOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IFN0YXR1cyA9IEZpbGxUcmFuc2xhdGlv blRhYmxlIChNZW1vcnlUYWJsZSk7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNw OyZuYnNwOyBpZiAoRUZJX0VSUk9SIChTdGF0dXMpKSB7PG86cD48L286cD48L3ByZT4NCjxwcmU+ KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBnb3RvIEZyZWVUcmFuc2xhdGlvblRhYmxl OzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgfTxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7 IE1lbW9yeVRhYmxlKys7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyB9PG86cD48L286 cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgLy88bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IC8vIFRMQiBSZS1lbnRyeSBhZGRyZXNzIGF0IHRoZSBl bmQgb2YgZXhjZXB0aW9uIHZlY3RvciwgYSB2ZWN0b3IgaXMgdXAgdG8gNTEyIGJ5dGVzLDxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgLy8gc28gdGhlIHN0YXJ0aW5nIGFkZHJlc3MgaXM6 IHRvdGFsIGV4Y2VwdGlvbiB2ZWN0b3Igc2l6ZSArIHRvdGFsIGludGVycnVwdCB2ZWN0b3Igc2l6 ZSArIGJhc2UuPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyAvLyBUaGUgdG90YWwgc2l6 ZSBvZiBUTEIgaGFuZGxlciBhbmQgZXhjZXB0aW9uIHZlY3RvciBzaXplIGFuZCBpbnRlcnJ1cHQg dmVjdG9yIHNpemUgc2hvdWxkIG5vdDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgLy8g YmUgbGFnZXIgdGhhbiA2NEtCLjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgLy88bzpw PjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IExlbmd0aCZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyA9IChVSU5UTilIYW5kbGVUbGJS ZWZpbGxFbmQgLSAoVUlOVE4pSGFuZGxlVGxiUmVmaWxsU3RhcnQ7PG86cD48L286cD48L3ByZT4N CjxwcmU+KyZuYnNwOyBUbGJSZUVudHJ5T2Zmc2V0ID0gKE1BWF9MT09OR0FSQ0hfRVhDRVBUSU9O ICsgTUFYX0xPT05HQVJDSF9JTlRFUlJVUFQpICogNTEyOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJl PismbmJzcDsgUmVtYWluaW5nJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7ID0gVGxiUmVFbnRyeU9mZnNldCAlIFNJWkVfNEtCOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJl PismbmJzcDsgaWYgKFJlbWFpbmluZyAhPSAweDApIHs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4r Jm5ic3A7Jm5ic3A7Jm5ic3A7IFRsYlJlRW50cnlPZmZzZXQgKz0gKFNJWkVfNEtCIC0gUmVtYWlu aW5nKTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IH08bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBUbGJSZUVudHJ5ID0gUGNkR2V0 NjQgKFBjZENwdUV4Y2VwdGlvblZlY3RvckJhc2VBZGRyZXNzKSArIFRsYlJlRW50cnlPZmZzZXQ7 PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBpZiAoKFRsYlJlRW50cnlPZmZzZXQgKyBM ZW5ndGgpICZndDsgU0laRV82NEtCKSB7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZu YnNwOyZuYnNwOyBnb3RvIEZyZWVUcmFuc2xhdGlvblRhYmxlOzxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPismbmJzcDsgfTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rJm5ic3A7IC8vPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyAvLyBFbnN1cmUg dGhhdCBUTEIgcmVmaWxsIGV4Y2VwdGlvbiBiYXNlIGFkZHJlc3MgYWxpZ25tZW50IGlzIGVxdWFs cyB0byA0S0IgYW5kIGlzIHZhbGlkLjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgLy88 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IGlmIChUbGJSZUVudHJ5ICZhbXA7IChTSVpF XzRLQiAtIDEpKSB7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyBn b3RvIEZyZWVUcmFuc2xhdGlvblRhYmxlOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsg fTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7 IENvcHlNZW0gKChWT0lEICopVGxiUmVFbnRyeSwgSGFuZGxlVGxiUmVmaWxsU3RhcnQsIExlbmd0 aCk7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBJbnZhbGlkYXRlSW5zdHJ1Y3Rpb25D YWNoZVJhbmdlICgoVk9JRCAqKShVSU5UTilIYW5kbGVUbGJSZWZpbGxTdGFydCwgTGVuZ3RoKTs8 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBE RUJVRyAoKDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgREVCVUdf SU5GTyw8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7ICZxdW90OyVh Jm5ic3A7ICVkIFB0ZVNoaWZ0ICVkIFB0ZVdpZGUgJWQgUG1kU2hpZnQgJWQgUG1kV2lkZSAlZCBQ dWRTaGlmdCAlZCBQdWRXaWRlICVkIFBnZFNoaWZ0ICVkIFBnZFdpZGUgJWQuXG4mcXVvdDssPG86 cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyBfX2Z1bmNfXyw8bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IF9fTElORV9fLDxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgUHRlU2hpZnQsPG86cD48L286cD48L3By ZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyBQdGVXaWRlLDxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgUG1kU2hpZnQsPG86cD48L286cD48L3ByZT4NCjxwcmU+ KyZuYnNwOyZuYnNwOyZuYnNwOyBQbWRXaWRlLDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJz cDsmbmJzcDsmbmJzcDsgUHVkU2hpZnQsPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZu YnNwOyZuYnNwOyBQdWRXaWRlLDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsm bmJzcDsgUGdkU2hpZnQsPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNw OyBQZ2RXaWRlPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyApKTs8 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyAv LzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgLy8gU2V0IHRoZSBhZGRyZXNzIG9mIFRM QiByZWZpbGwgZXhjZXB0aW9uIGhhbmRsZXI8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7 IC8vPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBTZXRUbGJSZWJhc2VBZGRyZXNzICgo VUlOVE4pVGxiUmVFbnRyeSk7PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPismbmJzcDsgLy88bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IC8vIFNl dCBwYWdlIHNpemU8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IC8vPG86cD48L286cD48 L3ByZT4NCjxwcmU+KyZuYnNwOyBDc3JYQ2hnIChMT09OR0FSQ0hfQ1NSX1RMQklEWCwgKERFRkFV TFRfUEFHRV9TSVpFICZsdDsmbHQ7IENTUl9UTEJJRFhfU0laRSksIENTUl9UTEJJRFhfU0laRV9N QVNLKTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IENzcldyaXRlIChMT09OR0FSQ0hf Q1NSX1NUTEJQR1NJWkUsIERFRkFVTFRfUEFHRV9TSVpFKTs8bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rJm5ic3A7IENzclhDaGcgKExPT05HQVJDSF9DU1JfVExCUkVISSwgKERFRkFVTFRfUEFHRV9T SVpFICZsdDsmbHQ7IENTUl9UTEJSRUhJX1BTX1NISUZUKSwgQ1NSX1RMQlJFSElfUFMpOzxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IENzcldy aXRlIChMT09OR0FSQ0hfQ1NSX1BXQ1RMMCwgKFB0ZVNoaWZ0IHwgUHRlV2lkZSAmbHQ7Jmx0OyA1 IHwgUG1kU2hpZnQgJmx0OyZsdDsgMTAgfCBQbWRXaWRlICZsdDsmbHQ7IDE1IHwgUHVkU2hpZnQg Jmx0OyZsdDsgMjAgfCBQdWRXaWRlICZsdDsmbHQ7IDI1KSk7PG86cD48L286cD48L3ByZT4NCjxw cmU+KyZuYnNwOyBDc3JXcml0ZSAoTE9PTkdBUkNIX0NTUl9QV0NUTDEsIChQZ2RTaGlmdCB8IFBn ZFdpZGUgJmx0OyZsdDsgNikpOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwv cHJlPg0KPHByZT4rJm5ic3A7IERFQlVHICgoREVCVUdfSU5GTywgJnF1b3Q7JWEgJWQgRW5hYmxl IE1tdSBTdGFydCBQYWdlQmFzc0FkZHJlc3MgJXAuXG4mcXVvdDssIF9fZnVuY19fLCBfX0xJTkVf XywgU3dhcHBlclBhZ2VEaXIpKTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48 L3ByZT4NCjxwcmU+KyZuYnNwOyByZXR1cm4gRUZJX1NVQ0NFU1M7PG86cD48L286cD48L3ByZT4N CjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPitGcmVlVHJhbnNsYXRpb25UYWJsZTo8bzpw PjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IGlmIChTd2FwcGVyUGFnZURpciAhPSBOVUxMKSB7 PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyBGcmVlUGFnZXMgKFN3 YXBwZXJQYWdlRGlyLCBFRklfU0laRV9UT19QQUdFUyAoUEdEX1RBQkxFX1NJWkUpKTs8bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IH08bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48 L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyByZXR1cm4gRUZJX1VOU1VQUE9SVEVEOzxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPit9PG86cD48L286cD48L3ByZT4NCjxwcmU+ZGlmZiAtLWdpdCBhL1Vl ZmlDcHVQa2cvTGlicmFyeS9DcHVNbXVMaWIvTG9vbmdBcmNoNjQvVGxiLmggYi9VZWZpQ3B1UGtn L0xpYnJhcnkvQ3B1TW11TGliL0xvb25nQXJjaDY0L1RsYi5oPG86cD48L286cD48L3ByZT4NCjxw cmU+bmV3IGZpbGUgbW9kZSAxMDA2NDQ8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT5pbmRleCAwMDAw MDAwMDAwLi45YTY4MWNlOGUxPG86cD48L286cD48L3ByZT4NCjxwcmU+LS0tIC9kZXYvbnVsbDxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPisrKyBiL1VlZmlDcHVQa2cvTGlicmFyeS9DcHVNbXVMaWIv TG9vbmdBcmNoNjQvVGxiLmg8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT5AQCAtMCwwICsxLDQ4IEBA PG86cD48L286cD48L3ByZT4NCjxwcmU+Ky8qKiBAZmlsZTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJl Pis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IENvcHlyaWdodCAoYykgMjAyNCBMb29u Z3NvbiBUZWNobm9sb2d5IENvcnBvcmF0aW9uIExpbWl0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQu Jmx0O0JSJmd0OzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rJm5ic3A7IFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMi1DbGF1c2UtUGF0ZW50PG86 cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisqKi88bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyNpZm5kZWYgVExCX0hf PG86cD48L286cD48L3ByZT4NCjxwcmU+KyNkZWZpbmUgVExCX0hfPG86cD48L286cD48L3ByZT4N CjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisvKio8bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rJm5ic3A7IEludmFsaWQgY29ycmVzcG9uZGluZyBUTEIgZW50cmllcyBhcmUgYmFzZWQgb24g dGhlIGFkZHJlc3MgZ2l2ZW48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3By ZT4NCjxwcmU+KyZuYnNwOyBAcGFyYW0gQWRkcmVzcyBUaGUgYWRkcmVzcyBjb3JyZXNwb25kaW5n IHRvIHRoZSBpbnZhbGlkIHBhZ2UgdGFibGUgZW50cnk8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4r PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcmV0dmFsJm5ic3A7IG5vbmU8bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4rKiovPG86cD48L286cD48L3ByZT4NCjxwcmU+K1ZPSUQ8bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4rSW52YWxpZFRsYiAoPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZu YnNwOyBVSU5UTiZuYnNwOyBBZGRyZXNzPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyAp OzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rLyoqPG86 cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBUTEIgcmVmaWxsIGhhbmRsZXIgc3RhcnQuPG86 cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgQHBh cmFtJm5ic3A7IG5vbmU8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4N CjxwcmU+KyZuYnNwOyBAcmV0dmFsIG5vbmU8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rKiovPG86 cD48L286cD48L3ByZT4NCjxwcmU+K1ZPSUQ8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rSGFuZGxl VGxiUmVmaWxsU3RhcnQgKDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgVk9JRDxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgKTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86 cD48L286cD48L3ByZT4NCjxwcmU+Ky8qKjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsg VExCIHJlZmlsbCBoYW5kbGVyIGVuZC48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286 cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBAcGFyYW0mbmJzcDsgbm9uZTxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IEByZXR2YWwgbm9uZTxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPisqKi88bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rVk9JRDxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPitIYW5kbGVUbGJSZWZpbGxFbmQgKDxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPismbmJzcDsgVk9JRDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgKTs8bzpw PjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyNlbmRpZiAvLyBU TEJfSF88bzpwPjwvbzpwPjwvcHJlPg0KPHByZT5kaWZmIC0tZ2l0IGEvVWVmaUNwdVBrZy9MaWJy YXJ5L0NwdU1tdUxpYi9Mb29uZ0FyY2g2NC9UbGJPcGVyYXRpb24uUyBiL1VlZmlDcHVQa2cvTGli cmFyeS9DcHVNbXVMaWIvTG9vbmdBcmNoNjQvVGxiT3BlcmF0aW9uLlM8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT5uZXcgZmlsZSBtb2RlIDEwMDY0NDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPmluZGV4 IDAwMDAwMDAwMDAuLmM5YThjMTYzMzY8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4tLS0gL2Rldi9u dWxsPG86cD48L286cD48L3ByZT4NCjxwcmU+KysrIGIvVWVmaUNwdVBrZy9MaWJyYXJ5L0NwdU1t dUxpYi9Mb29uZ0FyY2g2NC9UbGJPcGVyYXRpb24uUzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPkBA IC0wLDAgKzEsNDQgQEA8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rIy0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisjPG86cD48L286cD48L3ByZT4NCjxwcmU+KyMg VExCIG9wZXJhdGlvbiBmdW5jdGlvbnM8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rIzxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPisjIENvcHlyaWdodCAoYykgMjAyNCBMb29uZ3NvbiBUZWNobm9sb2d5 IENvcnBvcmF0aW9uIExpbWl0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuJmx0O0JSJmd0OzxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPisjPG86cD48L286cD48L3ByZT4NCjxwcmU+KyMgU1BEWC1MaWNl bnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZS1QYXRlbnQ8bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rIzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisjLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS08bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyNpbmNsdWRlICZsdDtS ZWdpc3Rlci9Mb29uZ0FyY2g2NC9Dc3IuaCZndDs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86 cD48L286cD48L3ByZT4NCjxwcmU+K0FTTV9HTE9CQUwgQVNNX1BGWChIYW5kbGVUbGJSZWZpbGxT dGFydCk8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rQVNNX0dMT0JBTCBBU01fUEZYKEhhbmRsZVRs YlJlZmlsbEVuZCk8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rQVNNX0dMT0JBTCBBU01fUEZYKElu dmFsaWRUbGIpPG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJl PisjPG86cD48L286cD48L3ByZT4NCjxwcmU+KyMmbmJzcDsgUmVmaWxsIHRoZSBwYWdlIHRhYmxl LjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisjJm5ic3A7IEBwYXJhbSZuYnNwOyBWT0lEPG86cD48 L286cD48L3ByZT4NCjxwcmU+KyMmbmJzcDsgQHJldHZhbCZuYnNwOyBWT0lEPG86cD48L286cD48 L3ByZT4NCjxwcmU+KyM8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rQVNNX1BGWChIYW5kbGVUbGJS ZWZpbGxTdGFydCk6PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBjc3J3ciZuYnNwOyZu YnNwOyAkdDAsIExPT05HQVJDSF9DU1JfVExCUlNBVkU8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4r Jm5ic3A7IGNzcnJkJm5ic3A7Jm5ic3A7ICR0MCwgTE9PTkdBUkNIX0NTUl9QR0Q8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4rJm5ic3A7IGxkZGlyJm5ic3A7Jm5ic3A7ICR0MCwgJHQwLCAzJm5ic3A7 Jm5ic3A7ICNQdXQgcHVkIEJhc2VBZGRyZXNzIGludG8gVDA8bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rJm5ic3A7IGxkZGlyJm5ic3A7Jm5ic3A7ICR0MCwgJHQwLCAyJm5ic3A7Jm5ic3A7ICNQdXQg cG1kIEJhc2VBZGRyZXNzIGludG8gVDA8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IGxk ZGlyJm5ic3A7Jm5ic3A7ICR0MCwgJHQwLCAxJm5ic3A7Jm5ic3A7ICNQdXQgcHRlIEJhc2VBZGRy ZXNzIGludG8gVDA8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IGxkcHRlJm5ic3A7Jm5i c3A7ICR0MCwgMDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgbGRwdGUmbmJzcDsmbmJz cDsgJHQwLCAxPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyB0bGJmaWxsJm5ic3A7Jm5i c3A7IC8vIHJlZmlsbCBoaSxsbzAsbG8xPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBj c3JyZCZuYnNwOyZuYnNwOyAkdDAsIExPT05HQVJDSF9DU1JfVExCUlNBVkU8bzpwPjwvbzpwPjwv cHJlPg0KPHByZT4rJm5ic3A7IGVydG48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rQVNNX1BGWChI YW5kbGVUbGJSZWZpbGxFbmQpOjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwv cHJlPg0KPHByZT4rIzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisjIEludmFsaWQgY29ycmVzcG9u ZGluZyBUTEIgZW50cmllcyBhcmUgYmFzZWQgb24gdGhlIGFkZHJlc3MgZ2l2ZW48bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4rIyBAcGFyYW0gYTAgVGhlIGFkZHJlc3MgY29ycmVzcG9uZGluZyB0byB0 aGUgaW52YWxpZCBwYWdlIHRhYmxlIGVudHJ5PG86cD48L286cD48L3ByZT4NCjxwcmU+KyMgQHJl dHZhbCZuYnNwOyBub25lPG86cD48L286cD48L3ByZT4NCjxwcmU+KyM8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rQVNNX1BGWChJbnZhbGlkVGxiKTo8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5i c3A7Jm5ic3A7Jm5ic3A7IGludnRsYiZuYnNwOyBJTlZUTEJfQUREUl9HVFJVRV9PUl9BU0lELCAk emVybywgJGEwPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyBqaXJs Jm5ic3A7Jm5ic3A7Jm5ic3A7ICR6ZXJvLCAkcmEsIDA8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4r PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyAuZW5kPG86cD48L286 cD48L3ByZT4NCjxwcmU+ZGlmZiAtLWdpdCBhL1VlZmlDcHVQa2cvTGlicmFyeS9DcHVNbXVMaWIv UGVpQ3B1TW11TGliLmluZiBiL1VlZmlDcHVQa2cvTGlicmFyeS9DcHVNbXVMaWIvUGVpQ3B1TW11 TGliLmluZjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPm5ldyBmaWxlIG1vZGUgMTAwNjQ0PG86cD48 L286cD48L3ByZT4NCjxwcmU+aW5kZXggMDAwMDAwMDAwMC4uNDViMTVkYjRjOTxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPi0tLSAvZGV2L251bGw8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rKysgYi9V ZWZpQ3B1UGtnL0xpYnJhcnkvQ3B1TW11TGliL1BlaUNwdU1tdUxpYi5pbmY8bzpwPjwvbzpwPjwv cHJlPg0KPHByZT5AQCAtMCwwICsxLDQ0IEBAPG86cD48L286cD48L3ByZT4NCjxwcmU+KyMjIEBm aWxlPG86cD48L286cD48L3ByZT4NCjxwcmU+KyMmbmJzcDsgQ1BVIE1lbW9yeSBNYXAgVW5pdCBQ RUkgcGhhc2UgZHJpdmVyLjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisjPG86cD48L286cD48L3By ZT4NCjxwcmU+KyMmbmJzcDsgQ29weXJpZ2h0IChjKSAyMDI0IExvb25nc29uIFRlY2hub2xvZ3kg Q29ycG9yYXRpb24gTGltaXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4mbHQ7QlImZ3Q7PG86cD48 L286cD48L3ByZT4NCjxwcmU+KyM8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rIyZuYnNwOyBTUERY LUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNlLVBhdGVudDxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPisjPG86cD48L286cD48L3ByZT4NCjxwcmU+KyMjPG86cD48L286cD48L3ByZT4NCjxw cmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPitbRGVmaW5lc108bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rJm5ic3A7IElORl9WRVJTSU9OJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ID0gMS4yOTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPism bmJzcDsgQkFTRV9OQU1FJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ID0gUGVpQ3B1TW11TGliPG86cD48L286cD48L3By ZT4NCjxwcmU+KyZuYnNwOyBNT0RVTEVfVU5JX0ZJTEUmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsgPSBQZWlDcHVNbXVMaWIudW5pPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNw OyBGSUxFX0dVSUQmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgPSBGNjdFQjk4My1BQzJBLTc1NTAtQUI2OS0zQkM1MUEx Qzg5NUI8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IE1PRFVMRV9UWVBFJm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ID0gUEVJTTxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgVkVSU0lPTl9TVFJJTkcmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgPSAxLjA8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4r Jm5ic3A7IExJQlJBUllfQ0xBU1MmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsgPSBDcHVNbXVMaWIgfCBTRUMgUEVJTTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rIzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisjJm5ic3A7 IFZBTElEX0FSQ0hJVEVDVFVSRVMmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgPSBMT09OR0FSQ0g2NDxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPisjPG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPitb U291cmNlcy5Mb29uZ0FyY2g2NF08bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IExvb25n QXJjaDY0L1RsYk9wZXJhdGlvbi5TJm5ic3A7Jm5ic3A7IHwgR0NDPG86cD48L286cD48L3ByZT4N CjxwcmU+KyZuYnNwOyBMb29uZ0FyY2g2NC9Db21tb25NbXVMaWIuYzxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPismbmJzcDsgTG9vbmdBcmNoNjQvUGVpQ3B1TW11TGliLmM8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rJm5ic3A7IExvb25nQXJjaDY0L0NvbW1vbk1tdUxpYi5oPG86cD48L286cD48L3By ZT4NCjxwcmU+KyZuYnNwOyBMb29uZ0FyY2g2NC9UbGIuaDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJl PismbmJzcDsgTG9vbmdBcmNoNjQvUGFnZS5oPG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPitbUGFja2FnZXNdPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZu YnNwOyBNZGVQa2cvTWRlUGtnLmRlYzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgTWRl TW9kdWxlUGtnL01kZU1vZHVsZVBrZy5kZWM8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7 IFVlZmlDcHVQa2cvVWVmaUNwdVBrZy5kZWM8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48 L286cD48L3ByZT4NCjxwcmU+K1tQQ0RdPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBn RWZpTWRlTW9kdWxlUGtnVG9rZW5TcGFjZUd1aWQuUGNkTnVsbFBvaW50ZXJEZXRlY3Rpb25Qcm9w ZXJ0eU1hc2s8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IGdVZWZpQ3B1UGtnVG9rZW5T cGFjZUd1aWQuUGNkQ3B1RXhjZXB0aW9uVmVjdG9yQmFzZUFkZHJlc3M8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+K1tMaWJyYXJ5Q2xhc3Nlc108bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IENhY2hlTWFpbnRlbmFuY2VMaWI8bzpwPjwvbzpwPjwv cHJlPg0KPHByZT4rJm5ic3A7IERlYnVnTGliPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNw OyBNZW1vcnlBbGxvY2F0aW9uTGliPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBQY2RM aWI8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT5kaWZmIC0tZ2l0IGEvVWVmaUNwdVBrZy9MaWJyYXJ5 L0NwdU1tdUxpYi9QZWlDcHVNbXVMaWIudW5pIGIvVWVmaUNwdVBrZy9MaWJyYXJ5L0NwdU1tdUxp Yi9QZWlDcHVNbXVMaWIudW5pPG86cD48L286cD48L3ByZT4NCjxwcmU+bmV3IGZpbGUgbW9kZSAx MDA2NDQ8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT5pbmRleCAwMDAwMDAwMDAwLi4zZTIxMzM0ZjNl PG86cD48L286cD48L3ByZT4NCjxwcmU+LS0tIC9kZXYvbnVsbDxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPisrKyBiL1VlZmlDcHVQa2cvTGlicmFyeS9DcHVNbXVMaWIvUGVpQ3B1TW11TGliLnVuaTxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPkBAIC0wLDAgKzEsMTQgQEA8bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rLy8gLyoqIEBmaWxlPG86cD48L286cD48L3ByZT4NCjxwcmU+Ky8vIENQVSBNZW1vcnkg TWFuYWdlciBVbml0IGxpYnJhcnkgaW5zdGFuY2UgZm9yIFBFSSBtb2R1bGVzLjxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPisvLzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisvLyBDUFUgTWVtb3J5IE1h bmFnZXIgVW5pdCBsaWJyYXJ5IGluc3RhbmNlIGZvciBQRUkgbW9kdWxlcy48bzpwPjwvbzpwPjwv cHJlPg0KPHByZT4rLy88bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rLy8gQ29weXJpZ2h0IChjKSAy MDI0LCBMb29uZ3NvbiBUZWNobm9sb2d5IENvcnBvcmF0aW9uIExpbWl0ZWQuIEFsbCByaWdodHMg cmVzZXJ2ZWQuJmx0O0JSJmd0OzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisvLzxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPisvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNlLVBh dGVudDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisvLzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisv LyAqKi88bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyNz dHJpbmcgU1RSX01PRFVMRV9BQlNUUkFDVCZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAjbGFuZ3VhZ2UgZW4tVVMg JnF1b3Q7Q1BVIE1lbW9yeSBNYW5hZ2VyIFVuaXQgbGlicmFyeSBpbnN0YW5jZSBmb3IgUEVJIG1v ZHVsZXMuJnF1b3Q7PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPisjc3RyaW5nIFNUUl9NT0RVTEVfREVTQ1JJUFRJT04mbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgI2xhbmd1YWdlIGVuLVVTICZxdW90O0NQ VSBNZW1vcnkgTWFuYWdlciBVbml0IGxpYnJhcnkgaW5zdGFuY2UgZm9yIFBFSSBtb2R1bGVzLiZx dW90OzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPmRpZmYgLS1naXQgYS9VZWZpQ3B1UGtnL1VlZmlD cHVQa2cuZHNjIGIvVWVmaUNwdVBrZy9VZWZpQ3B1UGtnLmRzYzxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPmluZGV4IDI4ZWVkODViY2UuLjE3OGRjM2MwZjkgMTAwNjQ0PG86cD48L286cD48L3ByZT4N CjxwcmU+LS0tIGEvVWVmaUNwdVBrZy9VZWZpQ3B1UGtnLmRzYzxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPisrKyBiL1VlZmlDcHVQa2cvVWVmaUNwdVBrZy5kc2M8bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT5AQCAtMjA3LDUgKzIwNyw5IEBAPG86cD48L286cD48L3ByZT4NCjxwcmU+Jm5ic3A7Jm5ic3A7 IFVlZmlDcHVQa2cvQ3B1VGltZXJEeGVSaXNjVjY0L0NwdVRpbWVyRHhlUmlzY1Y2NC5pbmY8bzpw PjwvbzpwPjwvcHJlPg0KPHByZT4mbmJzcDsmbmJzcDsgVWVmaUNwdVBrZy9DcHVEeGVSaXNjVjY0 L0NwdUR4ZVJpc2NWNjQuaW5mPG86cD48L286cD48L3ByZT4NCjxwcmU+IDxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPitbQ29tcG9uZW50cy5MT09OR0FSQ0g2NF08bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rJm5ic3A7IFVlZmlDcHVQa2cvTGlicmFyeS9DcHVNbXVMaWIvRHhlQ3B1TW11TGliLmluZjxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgVWVmaUNwdVBrZy9MaWJyYXJ5L0NwdU1tdUxp Yi9QZWlDcHVNbXVMaWIuaW5mPG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPiBbQnVpbGRPcHRpb25zXTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOyZu YnNwOyAqXypfKl9DQ19GTEFHUyA9IC1EIERJU0FCTEVfTkVXX0RFUFJFQ0FURURfSU5URVJGQUNF UzxvOnA+PC9vOnA+PC9wcmU+DQo8L2Jsb2NrcXVvdGU+DQo8cHJlPiZuYnNwOzxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPiZuYnNwOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOzxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPiZuYnNwOzxvOnA+PC9vOnA+PC9wcmU+DQo8L2Jsb2NrcXVvdGU+DQo8 L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48L286cD48L3NwYW4+PC9wPg0KPC9k aXY+DQo8L2Jsb2NrcXVvdGU+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9ib2R5Pg0KPC9odG1sPg0KDQoK PGRpdiB3aWR0aD0iMSIgc3R5bGU9ImNvbG9yOndoaXRlO2NsZWFyOmJvdGgiPl8uXyxfLl8sXzwv ZGl2Pgo8aHI+CgoKR3JvdXBzLmlvIExpbmtzOjxwPgoKCiAgCiAgICBZb3UgcmVjZWl2ZSBhbGwg bWVzc2FnZXMgc2VudCB0byB0aGlzIGdyb3VwLgogIAogIAoKCjxwPgo8YSB0YXJnZXQ9Il9ibGFu ayIgaHJlZj0iaHR0cHM6Ly9lZGsyLmdyb3Vwcy5pby9nL2RldmVsL21lc3NhZ2UvMTE1MDE1Ij5W aWV3L1JlcGx5IE9ubGluZSAoIzExNTAxNSk8L2E+IHwKCgogIAoKfAoKICA8YSB0YXJnZXQ9Il9i bGFuayIgaHJlZj0iaHR0cHM6Ly9ncm91cHMuaW8vbXQvMTAzOTcxNjUzLzc2ODYxNzYiPk11dGUg VGhpcyBUb3BpYzwvYT4KCgp8IDxhIGhyZWY9Imh0dHBzOi8vZWRrMi5ncm91cHMuaW8vZy9kZXZl bC9wb3N0Ij5OZXcgVG9waWM8L2E+Cgo8YnI+CgoKCgo8YSBocmVmPSJodHRwczovL2VkazIuZ3Jv dXBzLmlvL2cvZGV2ZWwvZWRpdHN1Yi83Njg2MTc2Ij5Zb3VyIFN1YnNjcmlwdGlvbjwvYT4gfAo8 YSBocmVmPSJtYWlsdG86ZGV2ZWwrb3duZXJAZWRrMi5ncm91cHMuaW8iPkNvbnRhY3QgR3JvdXAg T3duZXI8L2E+IHwKCjxhIGhyZWY9Imh0dHBzOi8vZWRrMi5ncm91cHMuaW8vZy9kZXZlbC91bnN1 YiI+VW5zdWJzY3JpYmU8L2E+CgogW3JlYmVjY2FAb3BlbmZ3LmlvXTxicj4KPGRpdiB3aWR0aD0i MSIgc3R5bGU9ImNvbG9yOndoaXRlO2NsZWFyOmJvdGgiPl8uXyxfLl8sXzwvZGl2PgoNCg== --_000_MN6PR11MB8244CEDAD39314EC53EEE99D8C422MN6PR11MB8244namp_--