From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail05.groups.io (mail05.groups.io [45.79.224.7]) by spool.mail.gandi.net (Postfix) with ESMTPS id 189ED941053 for ; Wed, 5 Jun 2024 03:47:46 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=YCC5r19w0H/Hbz7kFMbPBVF6Wo2cMnFN2llA1GrIJkI=; c=relaxed/simple; d=groups.io; h=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:Resent-Date:Resent-From:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Language:Content-Type; s=20240206; t=1717559266; v=1; b=z6GXqG7aU26g5FPYMa1lVTy8bfrXsZrxVSyF1tjVDl/cAanHZY5ZiYyWigHW3QaINKlI+IOD BjO52EieJH37F/7NQZgzgSdnpHu/WN5ncIRC2tfPSY3RQaQUI0mf5pAvi6tGsvOc0giDW765KnA 7a2PH5PP4YdXH2j4xVSksGHNpezc2oofYsjo2tABZDXz1v7b4qCbnY4Q3JxbkO5lhuOOb+JFmta /pzPrs/9eZ2vb9yJch6pelZZKToQkVubHLTpDGjP6Zbl1MYo6yrIPoboN/UDx90+z2GH9LqLnqn 3V0zCZFnEXLKxNF/m47XkCke94IVvptG7NNtWwHeyvUhg== X-Received: by 127.0.0.2 with SMTP id 3YT3YY7687511xZFXFjND5t0; Tue, 04 Jun 2024 20:47:45 -0700 X-Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.12]) by mx.groups.io with SMTP id smtpd.web11.6606.1717559264617895283 for ; Tue, 04 Jun 2024 20:47:44 -0700 X-CSE-ConnectionGUID: Yo5/Pv/QTMeJY82PZf2eGA== X-CSE-MsgGUID: ke4IVF+aQAuqVcJbI5lJKA== X-IronPort-AV: E=McAfee;i="6600,9927,11093"; a="17985662" X-IronPort-AV: E=Sophos;i="6.08,215,1712646000"; d="scan'208,217";a="17985662" X-Received: from orviesa009.jf.intel.com ([10.64.159.149]) by fmvoesa106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Jun 2024 20:47:44 -0700 X-CSE-ConnectionGUID: FSNzM7X8TCmty9OKR+kHVw== X-CSE-MsgGUID: ka+vxx8ISei4gfpI4auQrA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.08,215,1712646000"; d="scan'208,217";a="37506796" X-Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by orviesa009.jf.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 04 Jun 2024 20:47:44 -0700 X-Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) by fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Tue, 4 Jun 2024 20:47:43 -0700 X-Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx611.amr.corp.intel.com (10.18.126.91) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39 via Frontend Transport; Tue, 4 Jun 2024 20:47:43 -0700 X-Received: from NAM11-DM6-obe.outbound.protection.outlook.com (104.47.57.169) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.39; Tue, 4 Jun 2024 20:47:42 -0700 X-Received: from PH7PR11MB5888.namprd11.prod.outlook.com (2603:10b6:510:137::11) by IA1PR11MB6444.namprd11.prod.outlook.com (2603:10b6:208:3a7::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7633.21; Wed, 5 Jun 2024 03:47:39 +0000 X-Received: from PH7PR11MB5888.namprd11.prod.outlook.com ([fe80::a5e4:8c76:f742:5124]) by PH7PR11MB5888.namprd11.prod.outlook.com ([fe80::a5e4:8c76:f742:5124%5]) with mapi id 15.20.7633.021; Wed, 5 Jun 2024 03:47:39 +0000 From: "Linus Liu" To: Dhaval Sharma CC: "devel@edk2.groups.io" , "Lin, Benny" , "Guo, Gua" , "Chiu, Chasel" , "Lu, James" Subject: Re: [edk2-devel] [PATCH v4 6/6] UefiPayloadPkg: Update UefiPayload driver for FDT support. Thread-Topic: [PATCH v4 6/6] UefiPayloadPkg: Update UefiPayload driver for FDT support. Thread-Index: AQHatakjmXzGaIg6WEysBr/18poqTLG32wyAgACuo7A= Date: Wed, 5 Jun 2024 03:47:39 +0000 Message-ID: References: <20240603021923.1356-1-linus.liu@intel.com> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: PH7PR11MB5888:EE_|IA1PR11MB6444:EE_ x-ms-office365-filtering-correlation-id: ccdfbf65-e3a1-4a9c-c34f-08dc85123eef x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam-message-info: =?utf-8?B?SUZxRHNQOG5ISTVUZzZRcHdWREY1WWVCeDZBZno1eXNVcDFuQnJCRVBpZEJk?= =?utf-8?B?WTM3eGdOTTJPZ0s4bUtpTUowZG9GcFpOMlRxZ1U2b3ordlRWNnpDZWJ3cjMz?= =?utf-8?B?VmQ0WTQ3YjZSaS9YSHdTOFRnb1R5TENwQWU1NmZpUWNtaHhRUy9mMVJwUHk1?= =?utf-8?B?VFc3eXRMNWdTRlM3ZGMwYTJ1d2RKYWFNMUFEdlZsWWFNSWtIZHNlYVdUK1F5?= =?utf-8?B?N1lBQmJUWTRnaDNLbDRNRGVXNUZoTG1MalZ4NXJwa2s3cXlyWVMyZ01ZdTBr?= =?utf-8?B?RzJOV2dmYVpEZlpWN0o1TmRIbHBkNzlxYzVhcFBuZnBiczNlVnBhbzQ5bmEx?= =?utf-8?B?OUR3M3gvR0FWbUF2aU8vM0pUbktHNGpaQ0ZzZGhJbkYyVUR1VEt4Rmovb2lB?= =?utf-8?B?RC8wZ3BHbWZOZFhTQmxNb1loQm42aUlxMXJyYkVERzFnNnVVMTI5Zy9ibERF?= =?utf-8?B?T1JPSGlscDZ6Vmhlc2JDR2QrWE9iVHg0bVdQeWdsV0JxQ0xjUVNkWTZ1Z1Aw?= =?utf-8?B?UTMwN2UvNWh0YTh5SStFSUtiTTZicG1TZnZrMUZaMlpMN2VYbkVkaGR1aEpO?= =?utf-8?B?aGN2SDdZZndFNnlrRlNSMXJ6V0Jyd09odndGUlQwZFpjb2tpWmR5b3Z0aW1D?= =?utf-8?B?dGFueDAvMEZ2bjVQOEJSVlUvQ1dxbTMvMzhTSW51V2hMZmFPWEs5TDh4Z3FS?= =?utf-8?B?SzBFNk9lMzAwUm5mL3dURWdKOElWc0tUUGFRZTlPSWxabHkrU3BFY2lwK2ZO?= =?utf-8?B?WjQxd0cxTkZXU3V4VWdIZHBRNGtxbzhWcWJCQWhXMHBYd09IZXUveEd5ZzEz?= =?utf-8?B?SXZpMFhWZnBvdnNhaDF3Uk14ZlBhcHlNUFhjN3ZjdVkyNER4OFN4K2pTTmUx?= =?utf-8?B?K3AycFltRDNUNVkxN21DK0dRcTlmR1dKalp0QVFjRkJNM1MyLzBuck9zYldY?= =?utf-8?B?VVJrQ2wrZlFZRzVCZkVEeWV2dWlPLzBuVTEyTHpUU0c2WkJzVFBiVDdHNXI3?= =?utf-8?B?Nm5UZWdNWVB6VWRPWjNzbjJ4UFFndDZDcGFqVDNCWldSWk1zSlRNWHEzc3Jz?= =?utf-8?B?cGVkVCtJbWhsdFMxWndxUFN3NkcwY3p5M2dtck1GWGd0MktXeGwvOVhDTGlz?= =?utf-8?B?M3l5TW90MExUV3dXQzkvUnhka2FDcWlPbDkyclNUVDFZS2ZyTGF3MXg4UjBa?= =?utf-8?B?OGlybWdFVWNKVkxVUWprMFpCdDcyWUREcWtvd2dVeWVtYkI0MHNHT0xEcmxF?= =?utf-8?B?bVdwaDJ2U25ETzVVdUlhbzNnbHVBWElyMGJKaHhQcDIzOTJMODVKdXFmUlpp?= =?utf-8?B?MkEwLzhtalAxdysrZEVCN3dXa0tISXFuR1p5RW9qeitFMnVrU25JWVVPNVdG?= =?utf-8?B?dzVVd0FpUDZMQUwvOEJrdnNWa0JHL0pqN2szckN1MzVma2I2NlRreDVFQVJK?= =?utf-8?B?MldKUU41OHZFc0ozZ1QyTTBYRXF3b0xPQ0xwazVhbmk4c3RoOFBMMUVSck9D?= =?utf-8?B?dy9MTFFGaEttQ0h4WmllQlhYcGljNmorekFUMExjZVUxS3B1YTV3eWk3czNi?= =?utf-8?B?ejJ3N3ZqRHZKbVh2RE1ycUlHQVpXY0QxSDVkV1VjWlpaUzRrQVF2QjIxMEVW?= =?utf-8?B?NWtuVFBIKzA4S0VLZGZsNzUxbGg0WnRsSGZVVndtK1V0ODRsN0JXMlhGejlS?= =?utf-8?B?TTJ0QUpsZGVOajFablpGb1lwcDcxN3BWSEdIdmRpb25acEtXVmFQRnlKcnBz?= =?utf-8?Q?fn+YEi03w5Keuik/CB1cwqNjhm3h4x2clwiQX5r?= x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?dGdPN1FIWTZTSkVIVkRDQlR0aUlpTjIvNzRPdlFvL0RDQWo2M3pESkhTWVZ0?= =?utf-8?B?Vm9kWDhoLzk2N2Yza0c0QUtJZTRlOTRBeWZkam9jMHBsR01hQmVvZlVrTjJ1?= =?utf-8?B?ZEFUaGhmTnlFeHZRY0JiRGpnZHBnUlVjWXFLL1pDZ2dPRmhlejl5VE9kM2tm?= =?utf-8?B?aGVLOWhSRmZmem9iSDZLQi9MdVphbVBob3QzMXNEaGlkbVBSY2tFTWlaZEJt?= =?utf-8?B?QnNkV2FER0Vqd2s1ZXkxWjJyNlNKZmVLQUsrdmZpYVJIczJ2SzJXNG52NDI4?= =?utf-8?B?Z2U5SFJoS0MwZHVHZWtCbWh5bnhCWHQ3ZTdIYzdualhsSHpiNU1WMHRybHFJ?= =?utf-8?B?ZWhCU2ZwanBIc1IrQzkreU9YL0hFdlpiNi9Fc3psNk9ZYnBNQkxuNXBkbGxt?= =?utf-8?B?WnhKYWN5WHBWdmR5djdWTUJIWWtjdG00bHhwUVBPLzllUjBFMnZ4TzFsN2hV?= =?utf-8?B?eHNDS3FaeVN0NWZ2azBtbnNXZ2VWUFN2ZVhPbjZUZzgwc2h3WEE5UmIvOUJh?= =?utf-8?B?VXB0VlZkNk9oY3hsUTU3WmoxQ1FNNnkyNTNvU3A4eCtiRjJ5K2hZMk1zNnlx?= =?utf-8?B?U2VXNGU2YjEyMjdRMmlYWExTNGtLbno4UkNvTzFIcDZ5ZGVyNjhOL05QU2N4?= =?utf-8?B?QnZXVnlYaWNKZS9IWDFtbEVCdDA2Z3ZEcVVDL3I1NUVuWFBWRE8yeEljcnBw?= =?utf-8?B?c0RpUWhwZVpKazRyM2hiSEdKNDdQMXlLYXNCTUpnTGRUcjBLN3MyR25oNXh0?= =?utf-8?B?U0lOaDAzK2ZYWXpPVXF2cGNpVUNLU3B0ZlRxUjRheU54VTVGcVZaaW12NWcz?= =?utf-8?B?RUpnU2NPN2NPejY2VUp2T0t1MXZZOHVrVUFVYytXZUxMcmg1Q3BkWTcrYVJw?= =?utf-8?B?SUVVN0hQejdqNGVBc0Qzd28zbklTR3FRZHBPNXNkNm9iQitsditjeTg2Sm1K?= =?utf-8?B?VzhiTlFJc3lISXNtM2NZUzJ0RWxDODVIcjIvUy9ncFBUemY0MlJRdTdVOHR6?= =?utf-8?B?OGhadHM1YWpFMVQ2aWtEVk0wdzNqQ1c4MTdyUjd0eXEzdmM2SGxKK2R4Rmh1?= =?utf-8?B?dis3RGZZeXVwbzZsNGZucGlDaVRsQVpQWERQT1M4U1B0VFZNd2s3NldPdzMy?= =?utf-8?B?L0VvbFVBU1NPZjdFN1lXdUhrV0ZQeHAyUy9UWGZYV0VwYlFiQlBFdXZmQXp4?= =?utf-8?B?NFMyNUtzeHFvYUVCb25hRjN5RnNKbUdkT1hnYStaSjA3TjhmMzJSdXRTZWR1?= =?utf-8?B?N1UwTGlEQi9EdTIzTjY5eE8yOXBFeTRkYTJEMEVGU1hoYTJ6WmVUc0ZWTmJ1?= =?utf-8?B?NCtCQ2tJRHhQOFdNRFN2OUVsTEo1Z0FjRS80NTBtSmJzbXlvYXhtemxCY3Yy?= =?utf-8?B?WFNQOGx2cW1YZ2N4SzB1a2hkeGZuQ3labDZ3cjRPM2kwRWFGS1gzQmFIejYy?= =?utf-8?B?S0h2MVBoaGFMRytuS3V0NjNIT3J1WFYyaUtBQUlIREoyNzZmUVdWYUZMdkgz?= =?utf-8?B?RTdIcXZrNkNZQjBja2RmWnRzVyt6K2NYcXJuRmx2NFltNmtIejB1a2dsQVA0?= =?utf-8?B?NUUzeU1KcjVDc25mdmxDUVJLbWszU0VRQklGamh2RVZlL1NmMDFqWktoV1d2?= =?utf-8?B?djhjVzNGalI4WnErMUsvRXYyS3NoZ2pSbm5Pa2lqUGZaSDBnZUhwdFIvQXMv?= =?utf-8?B?dTdlY2FUalBGUXhidkJWdzNRMjdRN0RLcXRIWUw5anEzWm8vSjN6b3hCSVZl?= =?utf-8?B?SEJJUTF5cktTblFQMjhMaFIxTGhYV2tyMy9Za1pPS1ZqdHBCRTlvL1JQUGl4?= =?utf-8?B?L1RuNU5BTHl0Q1hUcXJoZmlVSmNKcUJ2ZklSSlhTeFpmaW1HQ2hpazdyWkNz?= =?utf-8?B?azNycDJmZUp2QXUzckpHWngrbUhpN0FkU3YzcXNlcGJVQmVhR3k3eENYcVBU?= =?utf-8?B?Q3kxLytYdmpKaU5BVCtvbXpMZGY5Ty9XMk1jY1hETkswbU80VkY4T1hvZ3Uz?= =?utf-8?B?QUNBMllMaS92TlEvUURzdW8yTU9mcEs4SUdsVlovakFCb3lXNUZ1Qnl2NnNE?= =?utf-8?B?bURoN01QMHBKWU94V3hZem91c0RPVUppNHNRUFRwM1lxRHlIY3h0Vk9vV2Jq?= =?utf-8?Q?4trbub1084MpNQ0DxxEL5m9EU?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PH7PR11MB5888.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: ccdfbf65-e3a1-4a9c-c34f-08dc85123eef X-MS-Exchange-CrossTenant-originalarrivaltime: 05 Jun 2024 03:47:39.1490 (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: 4ArH7TQafcvtatNOm0M0VCImV2mei+p9n/88aRHnCNchGI93ZpQXr+e3ntzhlQg6UXlKB58sKxdga4aNcCqe+g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR11MB6444 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 Resent-Date: Tue, 04 Jun 2024 20:47:44 -0700 Resent-From: linus.liu@intel.com Reply-To: devel@edk2.groups.io,linus.liu@intel.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: I0U7aohCYrEPOcYyX1b75q27x7686176AA= Content-Language: en-US Content-Type: multipart/alternative; boundary="_000_PH7PR11MB5888A233D830EAB6C3996487FCF92PH7PR11MB5888namp_" X-GND-Status: LEGIT Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20240206 header.b=z6GXqG7a; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=intel.com (policy=none); spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 45.79.224.7 as permitted sender) smtp.mailfrom=bounce@groups.io --_000_PH7PR11MB5888A233D830EAB6C3996487FCF92PH7PR11MB5888namp_ Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 SGkgRGhhdmFsDQpZZXMgLCBhbGwgY2hlY2tzIGhhdmUgYmVlbiBwYXNzZWQuDQpQbGVhc2UgcmVm ZXIgdG8gdGhlIFBSLQ0KDQpodHRwczovL2dpdGh1Yi5jb20vdGlhbm9jb3JlL2VkazIvcHVsbC81 NjY5DQoNClRoYW5rcw0KDQoNCkZyb206IERoYXZhbCBTaGFybWEgPGRoYXZhbEByaXZvc2luYy5j b20+DQpTZW50OiBXZWRuZXNkYXksIEp1bmUgNSwgMjAyNCAxOjE4IEFNDQpUbzogTGl1LCBMaW51 cyA8bGludXMubGl1QGludGVsLmNvbT4NCkNjOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbzsgTGluLCBC ZW5ueSA8YmVubnkubGluQGludGVsLmNvbT47IEd1bywgR3VhIDxndWEuZ3VvQGludGVsLmNvbT47 IENoaXUsIENoYXNlbCA8Y2hhc2VsLmNoaXVAaW50ZWwuY29tPjsgTHUsIEphbWVzIDxqYW1lcy5s dUBpbnRlbC5jb20+DQpTdWJqZWN0OiBSZTogW1BBVENIIHY0IDYvNl0gVWVmaVBheWxvYWRQa2c6 IFVwZGF0ZSBVZWZpUGF5bG9hZCBkcml2ZXIgZm9yIEZEVCBzdXBwb3J0Lg0KDQpJIGFsc28gYmVs aWV2ZSB0aGlzIGNvZGUgbmVlZHMgdG8gZ28gdGhyb3VnaCBjcnVzdGlmeSBldGMgdG8gZW5zdXJl IGl0IGZvbGxvd3MgYWxsIGVkazIgc3RhbmRhcmRzPw0KDQpPbiBNb24sIEp1biAzLCAyMDI0IGF0 IDQ6NTfigK9QTSBEaGF2YWwgU2hhcm1hIDxkaGF2YWxAcml2b3NpbmMuY29tPG1haWx0bzpkaGF2 YWxAcml2b3NpbmMuY29tPj4gd3JvdGU6DQpCdWlsZEZpdExvYWRhYmxlc0Z2SG9iOg0KDQogICog ICBGZHQgdmFyaWFibGUgaXMgbm90IGluaXRpYWxpemVkLg0KICAqICAgSXQgT05MWSBnZXRzIGlu aXRpYWxpemVkIGlmIEd1aWRIb2IgaXMgZm91bmQuIFdoYXQgaWYgaXQgaXMgbm90IGZvdW5kPw0K ICAqICAgRmR0Q2hlY2tIZWFkZXIgc3RpbGwgZXZhbHVhdGluZyBpdD8NCg0KT24gTW9uLCBKdW4g MywgMjAyNCBhdCA3OjQ54oCvQU0gTGludXMgTGl1IDxsaW51cy5saXVAaW50ZWwuY29tPG1haWx0 bzpsaW51cy5saXVAaW50ZWwuY29tPj4gd3JvdGU6DQpBZGQgRkRUIGRldGVjdGlvbiBhbmQgY29t c3VtZSBGRFQgd2hlbiBuZWVkZWQuDQpNb3ZlIHNvbWUgeDg2IHNwZWNpZmljIGZ1bmN0aW9uIGlu IHRoZSB4ODYgZm9sZGVyLg0KQ3JlYXRlIEhhbmRPZmZIb2IgdmlhIEZEVCBtZW1vcnkgbm9kZS4N Cg0KQ2M6IEJlbm55IExpbiA8YmVubnkubGluQGludGVsLmNvbTxtYWlsdG86YmVubnkubGluQGlu dGVsLmNvbT4+DQpDYzogR3VhIEd1byA8Z3VhLmd1b0BpbnRlbC5jb208bWFpbHRvOmd1YS5ndW9A aW50ZWwuY29tPj4NCkNjOiBDaGFzZWwgQ2hpdSA8Y2hhc2VsLmNoaXVAaW50ZWwuY29tPG1haWx0 bzpjaGFzZWwuY2hpdUBpbnRlbC5jb20+Pg0KQ2M6IEphbWVzIEx1IDxqYW1lcy5sdUBpbnRlbC5j b208bWFpbHRvOmphbWVzLmx1QGludGVsLmNvbT4+DQpDYzogRGhhdmFsIFNoYXJtYSA8ZGhhdmFs QHJpdm9zaW5jLmNvbTxtYWlsdG86ZGhhdmFsQHJpdm9zaW5jLmNvbT4+DQoNClNpZ25lZC1vZmYt Ynk6IExpbnVzIExpdSA8bGludXMubGl1QGludGVsLmNvbTxtYWlsdG86bGludXMubGl1QGludGVs LmNvbT4+DQotLS0NCiBVZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5L0ZpdFVuaXZlcnNh bFBheWxvYWRFbnRyeS5jICAgICAgICAgICAgICAgfCA0MjggKysrKysrKysrLS0tLS0tLS0tLS0N CiBVZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5L0lhMzIvRHhlTG9hZEZ1bmMuYyAgICAg ICAgICAgICAgICAgICAgICAgfCAgMTIgKw0KIFVlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50 cnkvSWEzMi97RHhlTG9hZEZ1bmMuYyA9PiBEeGVMb2FkRnVuY0ZpdC5jfSB8ICAzMiArLQ0KIFVl ZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkvTWVtb3J5QWxsb2NhdGlvbi5jICAgICAgICAg ICAgICAgICAgICAgICB8ICA1MCArKysNCiBVZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5 L1ByaW50SG9iLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDYgKy0NCiBVZWZp UGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5L1VuaXZlcnNhbFBheWxvYWRFbnRyeS5jICAgICAg ICAgICAgICAgICAgfCAgIDYgLQ0KIFVlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkvWDY0 L0R4ZUxvYWRGdW5jLmMgICAgICAgICAgICAgICAgICAgICAgICB8ICAxMiArDQogVWVmaVBheWxv YWRQa2cvVWVmaVBheWxvYWRFbnRyeS9YNjQve0R4ZUxvYWRGdW5jLmMgPT4gRHhlTG9hZEZ1bmNG aXQuY30gIHwgIDMxICstDQogVWVmaVBheWxvYWRQa2cvVWVmaVBheWxvYWRFbnRyeS9GaXRVbml2 ZXJzYWxQYXlsb2FkRW50cnkuaW5mICAgICAgICAgICAgIHwgIDIwICstDQogVWVmaVBheWxvYWRQ a2cvVWVmaVBheWxvYWRFbnRyeS9VZWZpUGF5bG9hZEVudHJ5LmggICAgICAgICAgICAgICAgICAg ICAgIHwgIDY4ICsrKysNCiBVZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5L1VuaXZlcnNh bFBheWxvYWRFbnRyeS5pbmYgICAgICAgICAgICAgICAgfCAgMTYgKy0NCiBVZWZpUGF5bG9hZFBr Zy9VZWZpUGF5bG9hZFBrZy5kc2MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgfCAgMjkgKy0NCiAxMiBmaWxlcyBjaGFuZ2VkLCA0NDMgaW5zZXJ0aW9ucygrKSwgMjY3IGRl bGV0aW9ucygtKQ0KDQpkaWZmIC0tZ2l0IGEvVWVmaVBheWxvYWRQa2cvVWVmaVBheWxvYWRFbnRy eS9GaXRVbml2ZXJzYWxQYXlsb2FkRW50cnkuYyBiL1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2Fk RW50cnkvRml0VW5pdmVyc2FsUGF5bG9hZEVudHJ5LmMNCmluZGV4IGViMGIzMjUzNjlhMC4uODEz ZDY1Njk1MGQxIDEwMDY0NA0KLS0tIGEvVWVmaVBheWxvYWRQa2cvVWVmaVBheWxvYWRFbnRyeS9G aXRVbml2ZXJzYWxQYXlsb2FkRW50cnkuYw0KKysrIGIvVWVmaVBheWxvYWRQa2cvVWVmaVBheWxv YWRFbnRyeS9GaXRVbml2ZXJzYWxQYXlsb2FkRW50cnkuYw0KQEAgLTYsNiArNiw4IEBADQogI2lu Y2x1ZGUgIlVlZmlQYXlsb2FkRW50cnkuaCINCiAjaW5jbHVkZSA8TGlicmFyeS9GZHRMaWIuaD4N CiAjaW5jbHVkZSA8R3VpZC9Vbml2ZXJzYWxQYXlsb2FkQmFzZS5oPg0KKyNpbmNsdWRlIDxHdWlk L01lbW9yeVR5cGVJbmZvcm1hdGlvbi5oPg0KKyNpbmNsdWRlIDxMaWJyYXJ5L0ZkdFBhcnNlckxp Yi5oPg0KDQogI2RlZmluZSBNRU1PUllfQVRUUklCVVRFX01BU0sgIChFRklfUkVTT1VSQ0VfQVRU UklCVVRFX1BSRVNFTlQgICAgICAgICAgICAgfCAgICAgICAgXA0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIEVGSV9SRVNPVVJDRV9BVFRSSUJVVEVfSU5JVElBTElaRUQg ICAgICAgICB8IFwNCkBAIC0yMyw2ICsyNSwxNSBAQA0KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIEVGSV9SRVNPVVJDRV9BVFRSSUJVVEVfSU5JVElBTElaRUQgfCBcDQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUZJX1JFU09VUkNFX0FUVFJJ QlVURV9URVNURUQgICAgICApDQoNCitFRklfTUVNT1JZX1RZUEVfSU5GT1JNQVRJT04gIG1EZWZh dWx0TWVtb3J5VHlwZUluZm9ybWF0aW9uW10gPSB7DQorICB7IEVmaUFDUElSZWNsYWltTWVtb3J5 LCAgIEZpeGVkUGNkR2V0MzIgKFBjZE1lbW9yeVR5cGVFZmlBQ1BJUmVjbGFpbU1lbW9yeSkgICB9 LA0KKyAgeyBFZmlBQ1BJTWVtb3J5TlZTLCAgICAgICBGaXhlZFBjZEdldDMyIChQY2RNZW1vcnlU eXBlRWZpQUNQSU1lbW9yeU5WUykgICAgICAgfSwNCisgIHsgRWZpUmVzZXJ2ZWRNZW1vcnlUeXBl LCAgRml4ZWRQY2RHZXQzMiAoUGNkTWVtb3J5VHlwZUVmaVJlc2VydmVkTWVtb3J5VHlwZSkgIH0s DQorICB7IEVmaVJ1bnRpbWVTZXJ2aWNlc0RhdGEsIEZpeGVkUGNkR2V0MzIgKFBjZE1lbW9yeVR5 cGVFZmlSdW50aW1lU2VydmljZXNEYXRhKSB9LA0KKyAgeyBFZmlSdW50aW1lU2VydmljZXNDb2Rl LCBGaXhlZFBjZEdldDMyIChQY2RNZW1vcnlUeXBlRWZpUnVudGltZVNlcnZpY2VzQ29kZSkgfSwN CisgIHsgRWZpTWF4TWVtb3J5VHlwZSwgICAgICAgMCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIH0NCit9Ow0KKw0KIGV4dGVybiBWT0lEICAqbUhvYkxp c3Q7DQoNCiBDSEFSOCAgKm1MaW5lQnVmZmVyID0gTlVMTDsNCkBAIC0zNiw2ICs0Nyw3OCBAQCBQ cmludEhvYiAoDQogICBJTiBDT05TVCBWT0lEICAqSG9iU3RhcnQNCiAgICk7DQoNCisvKioNCisg IEFkZCBIT0IgaW50byBIT0IgbGlzdA0KKyAgQHBhcmFtW2luXSAgSG9iICAgIFRoZSBIT0IgdG8g YmUgYWRkZWQgaW50byB0aGUgSE9CIGxpc3QuDQorKiovDQorVk9JRA0KK0FkZE5ld0hvYiAoDQor ICBJTiBFRklfUEVJX0hPQl9QT0lOVEVSUyAgKkhvYg0KKyAgKTsNCisNCisvKioNCisgIEZvdW5k IHRoZSBSZXNvdXJjZSBEZXNjcmlwdG9yIEhPQiB0aGF0IGNvbnRhaW5zIGEgcmFuZ2UgKEJhc2Us IFRvcCkNCisgIEBwYXJhbVtpbl0gSG9iTGlzdCAgICBIb2Igc3RhcnQgYWRkcmVzcw0KKyAgQHBh cmFtW2luXSBCYXNlICAgICAgIE1lbW9yeSBzdGFydCBhZGRyZXNzDQorICBAcGFyYW1baW5dIFRv cCAgICAgICAgTWVtb3J5IGVuZCBhZGRyZXNzLg0KKyAgQHJldHZhbCAgICAgVGhlIHBvaW50ZXIg dG8gdGhlIFJlc291cmNlIERlc2NyaXB0b3IgSE9CLg0KKyoqLw0KK0VGSV9IT0JfUkVTT1VSQ0Vf REVTQ1JJUFRPUiAqDQorRmluZFJlc291cmNlRGVzY3JpcHRvckJ5UmFuZ2UgKA0KKyAgSU4gVk9J RCAgICAgICAgICAgICAgICAgICpIb2JMaXN0LA0KKyAgSU4gRUZJX1BIWVNJQ0FMX0FERFJFU1Mg IEJhc2UsDQorICBJTiBFRklfUEhZU0lDQUxfQUREUkVTUyAgVG9wDQorICApOw0KKw0KKy8qKg0K KyAgRmluZCB0aGUgaGlnaGVzdCBiZWxvdyA0RyBtZW1vcnkgcmVzb3VyY2UgZGVzY3JpcHRvciwg ZXhjZXB0IHRoZSBpbnB1dCBSZXNvdXJjZSBEZXNjcmlwdG9yLg0KKyAgQHBhcmFtW2luXSBIb2JM aXN0ICAgICAgICAgICAgICAgICBIb2Igc3RhcnQgYWRkcmVzcw0KKyAgQHBhcmFtW2luXSBNaW5p bWFsTmVlZGVkU2l6ZSAgICAgICBNaW5pbWFsIG5lZWRlZCBzaXplLg0KKyAgQHBhcmFtW2luXSBF eGNlcHRSZXNvdXJjZUhvYiAgICAgICBJZ25vcmUgdGhpcyBSZXNvdXJjZSBEZXNjcmlwdG9yLg0K KyAgQHJldHZhbCAgICAgVGhlIHBvaW50ZXIgdG8gdGhlIFJlc291cmNlIERlc2NyaXB0b3IgSE9C Lg0KKyoqLw0KK0VGSV9IT0JfUkVTT1VSQ0VfREVTQ1JJUFRPUiAqDQorRmluZEFub3RoZXJIaWdo ZXN0QmVsb3c0R1Jlc291cmNlRGVzY3JpcHRvciAoDQorICBJTiBWT0lEICAgICAgICAgICAgICAg ICAgICAgICAgICpIb2JMaXN0LA0KKyAgSU4gVUlOVE4gICAgICAgICAgICAgICAgICAgICAgICBN aW5pbWFsTmVlZGVkU2l6ZSwNCisgIElOIEVGSV9IT0JfUkVTT1VSQ0VfREVTQ1JJUFRPUiAgKkV4 Y2VwdFJlc291cmNlSG9iDQorICApOw0KKw0KKy8qKg0KKyAgQ2hlY2sgdGhlIEhPQiBhbmQgZGVj aWRlIGlmIGl0IGlzIG5lZWQgaW5zaWRlIFBheWxvYWQNCisgIFBheWxvYWQgbWFpbnRhaW5lciBt YXkgbWFrZSBkZWNpc2lvbiB3aGljaCBIT0IgaXMgbmVlZCBvciBuZWVkbid0DQorICBUaGVuIGFk ZCB0aGUgY2hlY2sgbG9naWMgaW4gdGhlIGZ1bmN0aW9uLg0KKyAgQHBhcmFtW2luXSBIb2IgVGhl IEhPQiB0byBjaGVjaw0KKyAgQHJldHZhbCBUUlVFICBJZiBIT0IgaXMgbmVlZCBpbnNpZGUgUGF5 bG9hZA0KKyAgQHJldHZhbCBGQUxTRSBJZiBIT0IgaXMgbmVlZG4ndCBpbnNpZGUgUGF5bG9hZA0K KyoqLw0KK0JPT0xFQU4NCitGaXRJc0hvYk5lZWQgKA0KKyAgRUZJX1BFSV9IT0JfUE9JTlRFUlMg IEhvYg0KKyAgKTsNCisNCisvKioNCisgIENoZWNrIHRoZSBIT0IgYW5kIGRlY2lkZSBpZiBpdCBp cyBuZWVkIGluc2lkZSBQYXlsb2FkDQorDQorICBQYXlsb2FkIG1haW50YWluZXIgbWF5IG1ha2Ug ZGVjaXNpb24gd2hpY2ggSE9CIGlzIG5lZWQgb3IgbmVlZG4ndA0KKyAgVGhlbiBhZGQgdGhlIGNo ZWNrIGxvZ2ljIGluIHRoZSBmdW5jdGlvbi4NCisNCisgIEBwYXJhbVtpbl0gSG9iIFRoZSBIT0Ig dG8gY2hlY2sNCisNCisgIEByZXR2YWwgVFJVRSAgSWYgSE9CIGlzIG5lZWQgaW5zaWRlIFBheWxv YWQNCisgIEByZXR2YWwgRkFMU0UgSWYgSE9CIGlzIG5lZWRuJ3QgaW5zaWRlIFBheWxvYWQNCisq Ki8NCitCT09MRUFODQorSXNIb2JOZWVkICgNCisgIEVGSV9QRUlfSE9CX1BPSU5URVJTICBIb2IN CisgICk7DQorDQorVk9JRA0KK0VGSUFQSQ0KK1Byb2Nlc3NMaWJyYXJ5Q29uc3RydWN0b3JMaXN0 ICgNCisgIFZPSUQNCisgICk7DQorDQogLyoqDQogICBGaW5kIHRoZSBmaXJzdCBzdWJzdHJpbmcu DQogICBAcGFyYW0gIFN0cmluZyAgICBQb2ludCB0byB0aGUgc3RyaW5nIHdoZXJlIHRvIGZpbmQg dGhlIHN1YnN0cmluZy4NCkBAIC0xOTEsMTg3ICsyNzQsNiBAQCBGaXhVcFBjZERhdGFiYXNlICgN CiAgIHJldHVybiBFRklfU1VDQ0VTUzsNCiB9DQoNCi0vKioNCi0gIEFkZCBIT0IgaW50byBIT0Ig bGlzdA0KLSAgQHBhcmFtW2luXSAgSG9iICAgIFRoZSBIT0IgdG8gYmUgYWRkZWQgaW50byB0aGUg SE9CIGxpc3QuDQotKiovDQotVk9JRA0KLUFkZE5ld0hvYiAoDQotICBJTiBFRklfUEVJX0hPQl9Q T0lOVEVSUyAgKkhvYg0KLSAgKQ0KLXsNCi0gIEVGSV9QRUlfSE9CX1BPSU5URVJTICBOZXdIb2I7 DQotDQotICBpZiAoSG9iLT5SYXcgPT0gTlVMTCkgew0KLSAgICByZXR1cm47DQotICB9DQotDQot ICBOZXdIb2IuSGVhZGVyID0gQ3JlYXRlSG9iIChIb2ItPkhlYWRlci0+SG9iVHlwZSwgSG9iLT5I ZWFkZXItPkhvYkxlbmd0aCk7DQotICBBU1NFUlQgKE5ld0hvYi5IZWFkZXIgIT0gTlVMTCk7DQot ICBpZiAoTmV3SG9iLkhlYWRlciA9PSBOVUxMKSB7DQotICAgIHJldHVybjsNCi0gIH0NCi0NCi0g IENvcHlNZW0gKE5ld0hvYi5IZWFkZXIgKyAxLCBIb2ItPkhlYWRlciArIDEsIEhvYi0+SGVhZGVy LT5Ib2JMZW5ndGggLSBzaXplb2YgKEVGSV9IT0JfR0VORVJJQ19IRUFERVIpKTsNCi19DQotDQot LyoqDQotICBGb3VuZCB0aGUgUmVzb3VyY2UgRGVzY3JpcHRvciBIT0IgdGhhdCBjb250YWlucyBh IHJhbmdlIChCYXNlLCBUb3ApDQotICBAcGFyYW1baW5dIEhvYkxpc3QgICAgSG9iIHN0YXJ0IGFk ZHJlc3MNCi0gIEBwYXJhbVtpbl0gQmFzZSAgICAgICBNZW1vcnkgc3RhcnQgYWRkcmVzcw0KLSAg QHBhcmFtW2luXSBUb3AgICAgICAgIE1lbW9yeSBlbmQgYWRkcmVzcy4NCi0gIEByZXR2YWwgICAg IFRoZSBwb2ludGVyIHRvIHRoZSBSZXNvdXJjZSBEZXNjcmlwdG9yIEhPQi4NCi0qKi8NCi1FRklf SE9CX1JFU09VUkNFX0RFU0NSSVBUT1IgKg0KLUZpbmRSZXNvdXJjZURlc2NyaXB0b3JCeVJhbmdl ICgNCi0gIElOIFZPSUQgICAgICAgICAgICAgICAgICAqSG9iTGlzdCwNCi0gIElOIEVGSV9QSFlT SUNBTF9BRERSRVNTICBCYXNlLA0KLSAgSU4gRUZJX1BIWVNJQ0FMX0FERFJFU1MgIFRvcA0KLSAg KQ0KLXsNCi0gIEVGSV9QRUlfSE9CX1BPSU5URVJTICAgICAgICAgSG9iOw0KLSAgRUZJX0hPQl9S RVNPVVJDRV9ERVNDUklQVE9SICAqUmVzb3VyY2VIb2I7DQotDQotICBmb3IgKEhvYi5SYXcgPSAo VUlOVDggKilIb2JMaXN0OyAhRU5EX09GX0hPQl9MSVNUIChIb2IpOyBIb2IuUmF3ID0gR0VUX05F WFRfSE9CIChIb2IpKSB7DQotICAgIC8vDQotICAgIC8vIFNraXAgYWxsIEhPQnMgZXhjZXB0IFJl c291cmNlIERlc2NyaXB0b3IgSE9Ccw0KLSAgICAvLw0KLSAgICBpZiAoR0VUX0hPQl9UWVBFIChI b2IpICE9IEVGSV9IT0JfVFlQRV9SRVNPVVJDRV9ERVNDUklQVE9SKSB7DQotICAgICAgY29udGlu dWU7DQotICAgIH0NCi0NCi0gICAgLy8NCi0gICAgLy8gU2tpcCBSZXNvdXJjZSBEZXNjcmlwdG9y IEhPQnMgdGhhdCBkbyBub3QgZGVzY3JpYmUgdGVzdGVkIHN5c3RlbSBtZW1vcnkNCi0gICAgLy8N Ci0gICAgUmVzb3VyY2VIb2IgPSBIb2IuUmVzb3VyY2VEZXNjcmlwdG9yOw0KLSAgICBpZiAoUmVz b3VyY2VIb2ItPlJlc291cmNlVHlwZSAhPSBFRklfUkVTT1VSQ0VfU1lTVEVNX01FTU9SWSkgew0K LSAgICAgIGNvbnRpbnVlOw0KLSAgICB9DQotDQotICAgIGlmICgoUmVzb3VyY2VIb2ItPlJlc291 cmNlQXR0cmlidXRlICYgTUVNT1JZX0FUVFJJQlVURV9NQVNLKSAhPSBURVNURURfTUVNT1JZX0FU VFJJQlVURVMpIHsNCi0gICAgICBjb250aW51ZTsNCi0gICAgfQ0KLQ0KLSAgICAvLw0KLSAgICAv LyBTa2lwIFJlc291cmNlIERlc2NyaXB0b3IgSE9CcyB0aGF0IGRvIG5vdCBjb250YWluIHRoZSBQ SElUIHJhbmdlIEVmaUZyZWVNZW1vcnlCb3R0b20uLkVmaUZyZWVNZW1vcnlUb3ANCi0gICAgLy8N Ci0gICAgaWYgKEJhc2UgPCBSZXNvdXJjZUhvYi0+UGh5c2ljYWxTdGFydCkgew0KLSAgICAgIGNv bnRpbnVlOw0KLSAgICB9DQotDQotICAgIGlmIChUb3AgPiAoUmVzb3VyY2VIb2ItPlBoeXNpY2Fs U3RhcnQgKyBSZXNvdXJjZUhvYi0+UmVzb3VyY2VMZW5ndGgpKSB7DQotICAgICAgY29udGludWU7 DQotICAgIH0NCi0NCi0gICAgcmV0dXJuIFJlc291cmNlSG9iOw0KLSAgfQ0KLQ0KLSAgcmV0dXJu IE5VTEw7DQotfQ0KLQ0KLS8qKg0KLSAgRmluZCB0aGUgaGlnaGVzdCBiZWxvdyA0RyBtZW1vcnkg cmVzb3VyY2UgZGVzY3JpcHRvciwgZXhjZXB0IHRoZSBpbnB1dCBSZXNvdXJjZSBEZXNjcmlwdG9y Lg0KLSAgQHBhcmFtW2luXSBIb2JMaXN0ICAgICAgICAgICAgICAgICBIb2Igc3RhcnQgYWRkcmVz cw0KLSAgQHBhcmFtW2luXSBNaW5pbWFsTmVlZGVkU2l6ZSAgICAgICBNaW5pbWFsIG5lZWRlZCBz aXplLg0KLSAgQHBhcmFtW2luXSBFeGNlcHRSZXNvdXJjZUhvYiAgICAgICBJZ25vcmUgdGhpcyBS ZXNvdXJjZSBEZXNjcmlwdG9yLg0KLSAgQHJldHZhbCAgICAgVGhlIHBvaW50ZXIgdG8gdGhlIFJl c291cmNlIERlc2NyaXB0b3IgSE9CLg0KLSoqLw0KLUVGSV9IT0JfUkVTT1VSQ0VfREVTQ1JJUFRP UiAqDQotRmluZEFub3RoZXJIaWdoZXN0QmVsb3c0R1Jlc291cmNlRGVzY3JpcHRvciAoDQotICBJ TiBWT0lEICAgICAgICAgICAgICAgICAgICAgICAgICpIb2JMaXN0LA0KLSAgSU4gVUlOVE4gICAg ICAgICAgICAgICAgICAgICAgICBNaW5pbWFsTmVlZGVkU2l6ZSwNCi0gIElOIEVGSV9IT0JfUkVT T1VSQ0VfREVTQ1JJUFRPUiAgKkV4Y2VwdFJlc291cmNlSG9iDQotICApDQotew0KLSAgRUZJX1BF SV9IT0JfUE9JTlRFUlMgICAgICAgICBIb2I7DQotICBFRklfSE9CX1JFU09VUkNFX0RFU0NSSVBU T1IgICpSZXNvdXJjZUhvYjsNCi0gIEVGSV9IT0JfUkVTT1VSQ0VfREVTQ1JJUFRPUiAgKlJldHVy blJlc291cmNlSG9iOw0KLQ0KLSAgUmV0dXJuUmVzb3VyY2VIb2IgPSBOVUxMOw0KLQ0KLSAgZm9y IChIb2IuUmF3ID0gKFVJTlQ4ICopSG9iTGlzdDsgIUVORF9PRl9IT0JfTElTVCAoSG9iKTsgSG9i LlJhdyA9IEdFVF9ORVhUX0hPQiAoSG9iKSkgew0KLSAgICAvLw0KLSAgICAvLyBTa2lwIGFsbCBI T0JzIGV4Y2VwdCBSZXNvdXJjZSBEZXNjcmlwdG9yIEhPQnMNCi0gICAgLy8NCi0gICAgaWYgKEdF VF9IT0JfVFlQRSAoSG9iKSAhPSBFRklfSE9CX1RZUEVfUkVTT1VSQ0VfREVTQ1JJUFRPUikgew0K LSAgICAgIGNvbnRpbnVlOw0KLSAgICB9DQotDQotICAgIC8vDQotICAgIC8vIFNraXAgUmVzb3Vy Y2UgRGVzY3JpcHRvciBIT0JzIHRoYXQgZG8gbm90IGRlc2NyaWJlIHRlc3RlZCBzeXN0ZW0gbWVt b3J5DQotICAgIC8vDQotICAgIFJlc291cmNlSG9iID0gSG9iLlJlc291cmNlRGVzY3JpcHRvcjsN Ci0gICAgaWYgKFJlc291cmNlSG9iLT5SZXNvdXJjZVR5cGUgIT0gRUZJX1JFU09VUkNFX1NZU1RF TV9NRU1PUlkpIHsNCi0gICAgICBjb250aW51ZTsNCi0gICAgfQ0KLQ0KLSAgICBpZiAoKFJlc291 cmNlSG9iLT5SZXNvdXJjZUF0dHJpYnV0ZSAmIE1FTU9SWV9BVFRSSUJVVEVfTUFTSykgIT0gVEVT VEVEX01FTU9SWV9BVFRSSUJVVEVTKSB7DQotICAgICAgY29udGludWU7DQotICAgIH0NCi0NCi0g ICAgLy8NCi0gICAgLy8gU2tpcCBpZiB0aGUgUmVzb3VyY2UgRGVzY3JpcHRvciBIT0IgZXF1YWxz IHRvIEV4Y2VwdFJlc291cmNlSG9iDQotICAgIC8vDQotICAgIGlmIChSZXNvdXJjZUhvYiA9PSBF eGNlcHRSZXNvdXJjZUhvYikgew0KLSAgICAgIGNvbnRpbnVlOw0KLSAgICB9DQotDQotICAgIC8v DQotICAgIC8vIFNraXAgUmVzb3VyY2UgRGVzY3JpcHRvciBIT0JzIHRoYXQgYXJlIGJleW9uZCA0 Rw0KLSAgICAvLw0KLSAgICBpZiAoKFJlc291cmNlSG9iLT5QaHlzaWNhbFN0YXJ0ICsgUmVzb3Vy Y2VIb2ItPlJlc291cmNlTGVuZ3RoKSA+IEJBU0VfNEdCKSB7DQotICAgICAgY29udGludWU7DQot ICAgIH0NCi0NCi0gICAgLy8NCi0gICAgLy8gU2tpcCBSZXNvdXJjZSBEZXNjcmlwdG9yIEhPQnMg dGhhdCBhcmUgdG9vIHNtYWxsDQotICAgIC8vDQotICAgIGlmIChSZXNvdXJjZUhvYi0+UmVzb3Vy Y2VMZW5ndGggPCBNaW5pbWFsTmVlZGVkU2l6ZSkgew0KLSAgICAgIGNvbnRpbnVlOw0KLSAgICB9 DQotDQotICAgIC8vDQotICAgIC8vIFJldHVybiB0aGUgdG9wZXN0IFJlc291cmNlIERlc2NyaXB0 b3INCi0gICAgLy8NCi0gICAgaWYgKFJldHVyblJlc291cmNlSG9iID09IE5VTEwpIHsNCi0gICAg ICBSZXR1cm5SZXNvdXJjZUhvYiA9IFJlc291cmNlSG9iOw0KLSAgICB9IGVsc2Ugew0KLSAgICAg IGlmIChSZXR1cm5SZXNvdXJjZUhvYi0+UGh5c2ljYWxTdGFydCA8IFJlc291cmNlSG9iLT5QaHlz aWNhbFN0YXJ0KSB7DQotICAgICAgICBSZXR1cm5SZXNvdXJjZUhvYiA9IFJlc291cmNlSG9iOw0K LSAgICAgIH0NCi0gICAgfQ0KLSAgfQ0KLQ0KLSAgcmV0dXJuIFJldHVyblJlc291cmNlSG9iOw0K LX0NCi0NCi0vKioNCi0gIENoZWNrIHRoZSBIT0IgYW5kIGRlY2lkZSBpZiBpdCBpcyBuZWVkIGlu c2lkZSBQYXlsb2FkDQotICBQYXlsb2FkIG1haW50YWluZXIgbWF5IG1ha2UgZGVjaXNpb24gd2hp Y2ggSE9CIGlzIG5lZWQgb3IgbmVlZG4ndA0KLSAgVGhlbiBhZGQgdGhlIGNoZWNrIGxvZ2ljIGlu IHRoZSBmdW5jdGlvbi4NCi0gIEBwYXJhbVtpbl0gSG9iIFRoZSBIT0IgdG8gY2hlY2sNCi0gIEBy ZXR2YWwgVFJVRSAgSWYgSE9CIGlzIG5lZWQgaW5zaWRlIFBheWxvYWQNCi0gIEByZXR2YWwgRkFM U0UgSWYgSE9CIGlzIG5lZWRuJ3QgaW5zaWRlIFBheWxvYWQNCi0qKi8NCi1CT09MRUFODQotSXNI b2JOZWVkICgNCi0gIEVGSV9QRUlfSE9CX1BPSU5URVJTICBIb2INCi0gICkNCi17DQotICBpZiAo SG9iLkhlYWRlci0+SG9iVHlwZSA9PSBFRklfSE9CX1RZUEVfSEFORE9GRikgew0KLSAgICByZXR1 cm4gRkFMU0U7DQotICB9DQotDQotICBpZiAoSG9iLkhlYWRlci0+SG9iVHlwZSA9PSBFRklfSE9C X1RZUEVfTUVNT1JZX0FMTE9DQVRJT04pIHsNCi0gICAgaWYgKENvbXBhcmVHdWlkICgmSG9iLk1l bW9yeUFsbG9jYXRpb25Nb2R1bGUtPk1lbW9yeUFsbG9jYXRpb25IZWFkZXIuTmFtZSwgJmdFZmlI b2JNZW1vcnlBbGxvY01vZHVsZUd1aWQpKSB7DQotICAgICAgcmV0dXJuIEZBTFNFOw0KLSAgICB9 DQotICB9DQotDQotICAvLyBBcnJpdmUgaGVyZSBtZWFuIHRoZSBIT0IgaXMgbmVlZA0KLSAgcmV0 dXJuIFRSVUU7DQotfQ0KLQ0KIC8qKg0KICAgSXQgd2lsbCBidWlsZCBGdiBIT0JzIGJhc2VkIG9u IGluZm9ybWF0aW9uIGZyb20gYm9vdGxvYWRlcnMuDQogICBAcGFyYW1bb3V0XSBEeGVGdiAgICAg ICAgICBUaGUgcG9pbnRlciB0byB0aGUgRFhFIEZWIGluIG1lbW9yeS4NCkBAIC00MDksMjEgKzMx MSwyNSBAQCBCdWlsZEZpdExvYWRhYmxlc0Z2SG9iICgNCg0KICAgU3RhdHVzID0gRmR0Q2hlY2tI ZWFkZXIgKEZkdCk7DQogICBpZiAoRUZJX0VSUk9SIChTdGF0dXMpKSB7DQorICAgIERFQlVHICgo REVCVUdfSU5GTywgIkZkdENoZWNrSGVhZGVyIFVQU1VQUE9SVEVEXG4iKSk7DQogICAgIHJldHVy biBFRklfVU5TVVBQT1JURUQ7DQogICB9DQoNCiAgIENvbmZpZ05vZGUgPSBGZHRTdWJub2RlT2Zm c2V0TmFtZUxlbiAoRmR0LCAwLCAiY29uZmlndXJhdGlvbnMiLCAoSU5UMzIpQXNjaWlTdHJMZW4g KCJjb25maWd1cmF0aW9ucyIpKTsNCiAgIGlmIChDb25maWdOb2RlIDw9IDApIHsNCisgICAgREVC VUcgKChERUJVR19JTkZPLCAiQnVpbGRGaXRMb2FkYWJsZXNGdkhvYiBjb25maWd1cmF0aW9ucyBF RklfTk9UX0ZPVU5EXG4iKSk7DQogICAgIHJldHVybiBFRklfTk9UX0ZPVU5EOw0KICAgfQ0KDQog ICBDb25maWcxTm9kZSA9IEZkdFN1Ym5vZGVPZmZzZXROYW1lTGVuIChGZHQsIENvbmZpZ05vZGUs ICJjb25mLTEiLCAoSU5UMzIpQXNjaWlTdHJMZW4gKCJjb25mLTEiKSk7DQogICBpZiAoQ29uZmln MU5vZGUgPD0gMCkgew0KKyAgICBERUJVRyAoKERFQlVHX0lORk8sICJCdWlsZEZpdExvYWRhYmxl c0Z2SG9iIGNvbmYtMSBFRklfTk9UX0ZPVU5EXG4iKSk7DQogICAgIHJldHVybiBFRklfTk9UX0ZP VU5EOw0KICAgfQ0KDQogICBJbWFnZU5vZGUgPSBGZHRTdWJub2RlT2Zmc2V0TmFtZUxlbiAoRmR0 LCAwLCAiaW1hZ2VzIiwgKElOVDMyKUFzY2lpU3RyTGVuICgiaW1hZ2VzIikpOw0KICAgaWYgKElt YWdlTm9kZSA8PSAwKSB7DQorICAgIERFQlVHICgoREVCVUdfSU5GTywgIkJ1aWxkRml0TG9hZGFi bGVzRnZIb2IgaW1hZ2VzIEVGSV9OT1RfRk9VTkRcbiIpKTsNCiAgICAgcmV0dXJuIEVGSV9OT1Rf Rk9VTkQ7DQogICB9DQoNCkBAIC00NjcsMzEgKzM3MywyNSBAQCBCdWlsZEZpdExvYWRhYmxlc0Z2 SG9iICgNCiB9DQoNCiAvKioNCi0gIEl0IHdpbGwgYnVpbGQgSE9CcyBiYXNlZCBvbiBpbmZvcm1h dGlvbiBmcm9tIGJvb3Rsb2FkZXJzLg0KLSAgQHBhcmFtW2luXSAgQm9vdGxvYWRlclBhcmFtZXRl ciAgIFRoZSBzdGFydGluZyBtZW1vcnkgYWRkcmVzcyBvZiBib290bG9hZGVyIHBhcmFtZXRlciBi bG9jay4NCi0gIEBwYXJhbVtvdXRdIER4ZUZ2ICAgICAgICAgICAgICAgICBUaGUgcG9pbnRlciB0 byB0aGUgRFhFIEZWIGluIG1lbW9yeS4NCi0gIEByZXR2YWwgRUZJX1NVQ0NFU1MgICAgICAgIElm IGl0IGNvbXBsZXRlZCBzdWNjZXNzZnVsbHkuDQotICBAcmV0dmFsIE90aGVycyAgICAgICAgICAg ICBJZiBpdCBmYWlsZWQgdG8gYnVpbGQgcmVxdWlyZWQgSE9Ccy4NCisgKg0KKyAgQ3JlYXRlIG5l dyBIT0IgZm9yIG5ldyBIT0IgbGlzdA0KKw0KKyAgQHBhcmFtW2luXSAgQm9vdGxvYWRlclBhcmFt ZXRlciAgVGhlIEhPQiB0byBiZSBhZGRlZCBpbnRvIHRoZSBIT0IgbGlzdC4NCiAqKi8NCi1FRklf U1RBVFVTDQotQnVpbGRIb2JzICgNCi0gIElOICBVSU5UTiAgICAgICAgICAgICAgICAgICAgICAg Qm9vdGxvYWRlclBhcmFtZXRlciwNCi0gIE9VVCBFRklfRklSTVdBUkVfVk9MVU1FX0hFQURFUiAg KipEeGVGdg0KK1ZPSUQNCitDcmVhdE5ld0hvYkZvckhvYmxpc3QgKA0KKyAgSU4gVUlOVE4gIEJv b3Rsb2FkZXJQYXJhbWV0ZXINCiAgICkNCiB7DQotICBFRklfUEVJX0hPQl9QT0lOVEVSUyAgICAg ICAgICBIb2I7DQotICBVSU5UTiAgICAgICAgICAgICAgICAgICAgICAgICBNaW5pbWFsTmVlZGVk U2l6ZTsNCi0gIEVGSV9QSFlTSUNBTF9BRERSRVNTICAgICAgICAgIEZyZWVNZW1vcnlCb3R0b207 DQotICBFRklfUEhZU0lDQUxfQUREUkVTUyAgICAgICAgICBGcmVlTWVtb3J5VG9wOw0KLSAgRUZJ X1BIWVNJQ0FMX0FERFJFU1MgICAgICAgICAgTWVtb3J5Qm90dG9tOw0KLSAgRUZJX1BIWVNJQ0FM X0FERFJFU1MgICAgICAgICAgTWVtb3J5VG9wOw0KLSAgRUZJX0hPQl9SRVNPVVJDRV9ERVNDUklQ VE9SICAgKlBoaXRSZXNvdXJjZUhvYjsNCi0gIEVGSV9IT0JfUkVTT1VSQ0VfREVTQ1JJUFRPUiAg ICpSZXNvdXJjZUhvYjsNCi0gIFVJTlQ4ICAgICAgICAgICAgICAgICAgICAgICAgICpHdWlkSG9i Ow0KLSAgRUZJX0hPQl9GSVJNV0FSRV9WT0xVTUUgICAgICAgKkZ2SG9iOw0KLSAgVU5JVkVSU0FM X1BBWUxPQURfQUNQSV9UQUJMRSAgKkFjcGlUYWJsZTsNCi0gIEFDUElfQk9BUkRfSU5GTyAgICAg ICAgICAgICAgICpBY3BpQm9hcmRJbmZvOw0KLSAgRUZJX0hPQl9IQU5ET0ZGX0lORk9fVEFCTEUg ICAgKkhvYkluZm87DQorICBFRklfUEVJX0hPQl9QT0lOVEVSUyAgICAgICAgIEhvYjsNCisgIFVJ TlROICAgICAgICAgICAgICAgICAgICAgICAgTWluaW1hbE5lZWRlZFNpemU7DQorICBFRklfUEhZ U0lDQUxfQUREUkVTUyAgICAgICAgIEZyZWVNZW1vcnlCb3R0b207DQorICBFRklfUEhZU0lDQUxf QUREUkVTUyAgICAgICAgIEZyZWVNZW1vcnlUb3A7DQorICBFRklfUEhZU0lDQUxfQUREUkVTUyAg ICAgICAgIE1lbW9yeUJvdHRvbTsNCisgIEVGSV9QSFlTSUNBTF9BRERSRVNTICAgICAgICAgTWVt b3J5VG9wOw0KKyAgRUZJX0hPQl9SRVNPVVJDRV9ERVNDUklQVE9SICAqUGhpdFJlc291cmNlSG9i Ow0KKyAgRUZJX0hPQl9SRVNPVVJDRV9ERVNDUklQVE9SICAqUmVzb3VyY2VIb2I7DQorICBFRklf SE9CX0hBTkRPRkZfSU5GT19UQUJMRSAgICpIb2JJbmZvOw0KDQogICBIb2IuUmF3ICAgICAgICAg ICA9IChVSU5UOCAqKUJvb3Rsb2FkZXJQYXJhbWV0ZXI7DQogICBNaW5pbWFsTmVlZGVkU2l6ZSA9 IEZpeGVkUGNkR2V0MzIgKFBjZFN5c3RlbU1lbW9yeVVlZmlSZWdpb25TaXplKTsNCkBAIC01MTIs NyArNDEyLDcgQEAgQnVpbGRIb2JzICgNCiAgICAgLy8NCiAgICAgUmVzb3VyY2VIb2IgPSBGaW5k QW5vdGhlckhpZ2hlc3RCZWxvdzRHUmVzb3VyY2VEZXNjcmlwdG9yIChIb2IuUmF3LCBNaW5pbWFs TmVlZGVkU2l6ZSwgTlVMTCk7DQogICAgIGlmIChSZXNvdXJjZUhvYiA9PSBOVUxMKSB7DQotICAg ICAgcmV0dXJuIEVGSV9OT1RfRk9VTkQ7DQorICAgICAgcmV0dXJuOw0KICAgICB9DQoNCiAgICAg TWVtb3J5Qm90dG9tICAgICA9IFJlc291cmNlSG9iLT5QaHlzaWNhbFN0YXJ0ICsgUmVzb3VyY2VI b2ItPlJlc291cmNlTGVuZ3RoIC0gTWluaW1hbE5lZWRlZFNpemU7DQpAQCAtNTQyLDcgKzQ0Miw3 IEBAIEJ1aWxkSG9icyAoDQogICAgIC8vDQogICAgIFJlc291cmNlSG9iID0gRmluZEFub3RoZXJI aWdoZXN0QmVsb3c0R1Jlc291cmNlRGVzY3JpcHRvciAoSG9iLlJhdywgTWluaW1hbE5lZWRlZFNp emUsIFBoaXRSZXNvdXJjZUhvYik7DQogICAgIGlmIChSZXNvdXJjZUhvYiA9PSBOVUxMKSB7DQot ICAgICAgcmV0dXJuIEVGSV9OT1RfRk9VTkQ7DQorICAgICAgcmV0dXJuOw0KICAgICB9DQoNCiAg ICAgTWVtb3J5Qm90dG9tICAgICA9IFJlc291cmNlSG9iLT5QaHlzaWNhbFN0YXJ0ICsgUmVzb3Vy Y2VIb2ItPlJlc291cmNlTGVuZ3RoIC0gTWluaW1hbE5lZWRlZFNpemU7DQpAQCAtNTUzLDE0ICs0 NTMsNyBAQCBCdWlsZEhvYnMgKA0KDQogICBIb2JJbmZvICAgICAgICAgICA9IEhvYkNvbnN0cnVj dG9yICgoVk9JRCAqKShVSU5UTilNZW1vcnlCb3R0b20sIChWT0lEICopKFVJTlROKU1lbW9yeVRv cCwgKFZPSUQgKikoVUlOVE4pRnJlZU1lbW9yeUJvdHRvbSwgKFZPSUQgKikoVUlOVE4pRnJlZU1l bW9yeVRvcCk7DQogICBIb2JJbmZvLT5Cb290TW9kZSA9IEhvYi5IYW5kb2ZmSW5mb3JtYXRpb25U YWJsZS0+Qm9vdE1vZGU7DQotICAvLw0KLSAgLy8gRnJvbSBub3cgb24sIG1Ib2JMaXN0IHdpbGwg cG9pbnQgdG8gdGhlIG5ldyBIb2IgcmFuZ2UuDQotICAvLw0KDQotICAvLw0KLSAgLy8gQ3JlYXRl IGFuIGVtcHR5IEZ2SG9iIGZvciB0aGUgRFhFIEZWIHRoYXQgY29udGFpbnMgRFhFIGNvcmUuDQot ICAvLw0KLSAgQnVpbGRGdkhvYiAoKEVGSV9QSFlTSUNBTF9BRERSRVNTKTAsIDApOw0KICAgLy8N CiAgIC8vIFNpbmNlIHBheWxvYWQgY3JlYXRlZCBuZXcgSG9iLCBtb3ZlIGFsbCBob2JzIGV4Y2Vw dCBQSElUIGZyb20gYm9vdCBsb2FkZXIgaG9iIGxpc3QuDQogICAvLw0KQEAgLTU3Myw3ICs0NjYs NTcgQEAgQnVpbGRIb2JzICgNCiAgICAgSG9iLlJhdyA9IEdFVF9ORVhUX0hPQiAoSG9iKTsNCiAg IH0NCg0KLSAgQnVpbGRGaXRMb2FkYWJsZXNGdkhvYiAoRHhlRnYpOw0KKyAgcmV0dXJuOw0KK30N CisNCisvKioNCisgIEl0IHdpbGwgYnVpbGQgSE9CcyBiYXNlZCBvbiBpbmZvcm1hdGlvbiBmcm9t IGJvb3Rsb2FkZXJzLg0KKyAgQHBhcmFtW2luXSAgTmV3RmR0QmFzZSAgICAgVGhlIHBvaW50ZXIg dG8gTmV3IEZkdEJhc2UuDQorICBAcGFyYW1bb3V0XSBEeGVGdiAgICAgICAgICBUaGUgcG9pbnRl ciB0byB0aGUgRFhFIEZWIGluIG1lbW9yeS4NCisgIEByZXR2YWwgRUZJX1NVQ0NFU1MgICAgICAg IElmIGl0IGNvbXBsZXRlZCBzdWNjZXNzZnVsbHkuDQorICBAcmV0dmFsIE90aGVycyAgICAgICAg ICAgICBJZiBpdCBmYWlsZWQgdG8gYnVpbGQgcmVxdWlyZWQgSE9Ccy4NCisqKi8NCitFRklfU1RB VFVTDQorRml0QnVpbGRIb2JzICgNCisgIElOICBVSU5UTiAgICAgICAgICAgICAgICAgICAgICAg TmV3RmR0QmFzZSwNCisgIE9VVCBFRklfRklSTVdBUkVfVk9MVU1FX0hFQURFUiAgKipEeGVGdg0K KyAgKQ0KK3sNCisgIFVJTlQ4ICAgICAgICAgICAgICAgICAgICAgICAgICAqR3VpZEhvYjsNCisg IFVJTlQzMiAgICAgICAgICAgICAgICAgICAgICAgICBGZHRTaXplOw0KKyAgRUZJX0hPQl9GSVJN V0FSRV9WT0xVTUUgICAgICAgICpGdkhvYjsNCisgIFVOSVZFUlNBTF9QQVlMT0FEX0FDUElfVEFC TEUgICAqQWNwaVRhYmxlOw0KKyAgQUNQSV9CT0FSRF9JTkZPICAgICAgICAgICAgICAgICpBY3Bp Qm9hcmRJbmZvOw0KKyAgVU5JVkVSU0FMX1BBWUxPQURfREVWSUNFX1RSRUUgICpGZHQ7DQorDQor ICBpZiAoRml4ZWRQY2RHZXRCb29sIChQY2RIYW5kT2ZmRmR0RW5hYmxlKSkgew0KKyAgICAvLw0K KyAgICAvLyBCYWNrIHVwIEZEVCBpbiBSZXNlcnZlZCBtZW1vcnkgcmVnaW9uDQorICAgIC8vDQor DQorICAgIEd1aWRIb2IgPSBHZXRGaXJzdEd1aWRIb2IgKCZnVW5pdmVyc2FsUGF5bG9hZERldmlj ZVRyZWVHdWlkKTsNCisgICAgaWYgKEd1aWRIb2IgIT0gTlVMTCkgew0KKyAgICAgIEZkdCA9ICAo VU5JVkVSU0FMX1BBWUxPQURfREVWSUNFX1RSRUUgKilHRVRfR1VJRF9IT0JfREFUQSAoR3VpZEhv Yik7DQorICAgICAgaWYgKEZkdCAhPSBOVUxMKSB7DQorICAgICAgICBERUJVRyAoKERFQlVHX0lO Rk8sICJVcGRhdGUgRkRUIGJhc2UgdG8gcmVzZXJ2ZWQgbWVtb3J5XG4iKSk7DQorICAgICAgICBG ZHRTaXplID0gNCAqIEVGSV9QQUdFX1NJWkU7DQorICAgICAgICBDb3B5TWVtICgoVk9JRCAqKU5l d0ZkdEJhc2UsIChWT0lEICopKEZkdC0+RGV2aWNlVHJlZUFkZHJlc3MpLCBGZHRTaXplKTsNCisg ICAgICAgIEZkdC0+RGV2aWNlVHJlZUFkZHJlc3MgPSBOZXdGZHRCYXNlOw0KKyAgICAgIH0NCisg ICAgfQ0KKyAgfQ0KKw0KKyAgLy8NCisgIC8vIFRvIGNyZWF0ZSBNZW1vcnkgVHlwZSBJbmZvcm1h dGlvbiBIT0INCisgIC8vDQorICBHdWlkSG9iID0gR2V0Rmlyc3RHdWlkSG9iICgmZ0VmaU1lbW9y eVR5cGVJbmZvcm1hdGlvbkd1aWQpOw0KKyAgaWYgKEd1aWRIb2IgPT0gTlVMTCkgew0KKyAgICBC dWlsZEd1aWREYXRhSG9iICgNCisgICAgICAmZ0VmaU1lbW9yeVR5cGVJbmZvcm1hdGlvbkd1aWQs DQorICAgICAgbURlZmF1bHRNZW1vcnlUeXBlSW5mb3JtYXRpb24sDQorICAgICAgc2l6ZW9mICht RGVmYXVsdE1lbW9yeVR5cGVJbmZvcm1hdGlvbikNCisgICAgICApOw0KKyAgfQ0KDQogICAvLw0K ICAgLy8gQ3JlYXRlIGd1aWQgaG9iIGZvciBhY3BpIGJvYXJkIGluZm9ybWF0aW9uDQpAQCAtNTg4 LDYgKzUzMSwxMiBAQCBCdWlsZEhvYnMgKA0KICAgICB9DQogICB9DQoNCisgIC8vDQorICAvLyBD cmVhdGUgYW4gZW1wdHkgRnZIb2IgZm9yIHRoZSBEWEUgRlYgdGhhdCBjb250YWlucyBEWEUgY29y ZS4NCisgIC8vDQorICBCdWlsZEZ2SG9iICgoRUZJX1BIWVNJQ0FMX0FERFJFU1MpMCwgMCk7DQor DQorICBCdWlsZEZpdExvYWRhYmxlc0Z2SG9iIChEeGVGdik7DQogICAvLw0KICAgLy8gVXBkYXRl IERYRSBGViBpbmZvcm1hdGlvbiB0byBmaXJzdCBmdiBob2IgaW4gdGhlIGhvYiBsaXN0LCB3aGlj aA0KICAgLy8gaXMgdGhlIGVtcHR5IEZ2SG9iIGNyZWF0ZWQgYmVmb3JlLg0KQEAgLTYwMCwxMiAr NTQ5LDEyIEBAIEJ1aWxkSG9icyAoDQoNCiAvKioNCiAgIEVudHJ5IHBvaW50IHRvIHRoZSBDIGxh bmd1YWdlIHBoYXNlIG9mIFVFRkkgcGF5bG9hZC4NCi0gIEBwYXJhbVtpbl0gICBCb290bG9hZGVy UGFyYW1ldGVyICAgIFRoZSBzdGFydGluZyBhZGRyZXNzIG9mIGJvb3Rsb2FkZXIgcGFyYW1ldGVy IGJsb2NrLg0KKyAgQHBhcmFtW2luXSAgIEJvb3Rsb2FkZXJQYXJhbWV0ZXIgIFRoZSBzdGFydGlu ZyBhZGRyZXNzIG9mIEZEVCAuDQogICBAcmV0dmFsICAgICAgSXQgd2lsbCBub3QgcmV0dXJuIGlm IFNVQ0NFU1MsIGFuZCByZXR1cm4gZXJyb3Igd2hlbiBwYXNzaW5nIGJvb3Rsb2FkZXIgcGFyYW1l dGVyLg0KICoqLw0KIEVGSV9TVEFUVVMNCiBFRklBUEkNCi1fTW9kdWxlRW50cnlQb2ludCAoDQor Rml0VXBsRW50cnlQb2ludCAoDQogICBJTiBVSU5UTiAgQm9vdGxvYWRlclBhcmFtZXRlcg0KICAg KQ0KIHsNCkBAIC02MTMsMTQgKzU2Miw0NiBAQCBfTW9kdWxlRW50cnlQb2ludCAoDQogICBQSFlT SUNBTF9BRERSRVNTICAgICAgICAgICAgRHhlQ29yZUVudHJ5UG9pbnQ7DQogICBFRklfUEVJX0hP Ql9QT0lOVEVSUyAgICAgICAgSG9iOw0KICAgRUZJX0ZJUk1XQVJFX1ZPTFVNRV9IRUFERVIgICpE eGVGdjsNCisgIFBIWVNJQ0FMX0FERFJFU1MgICAgICAgICAgICBIb2JMaXN0UHRyOw0KKyAgVk9J RCAgICAgICAgICAgICAgICAgICAgICAgICpGZHRCYXNlOw0KKyAgVk9JRCAgICAgICAgICAgICAg ICAgICAgICAgICpGZHRCYXNlUmVzdmQ7DQoNCi0gIG1Ib2JMaXN0ID0gKFZPSUQgKilCb290bG9h ZGVyUGFyYW1ldGVyOw0KLSAgRHhlRnYgICAgPSBOVUxMOw0KKyAgaWYgKEZpeGVkUGNkR2V0Qm9v bCAoUGNkSGFuZE9mZkZkdEVuYWJsZSkpIHsNCisgICAgbUhvYkxpc3QgPSAoVk9JRCAqKU5VTEw7 DQorICB9IGVsc2Ugew0KKyAgICBtSG9iTGlzdCA9IChWT0lEICopQm9vdGxvYWRlclBhcmFtZXRl cjsNCisgIH0NCisNCisgIER4ZUZ2ID0gTlVMTDsNCiAgIC8vIENhbGwgY29uc3RydWN0b3IgZm9y IGFsbCBsaWJyYXJpZXMNCiAgIFByb2Nlc3NMaWJyYXJ5Q29uc3RydWN0b3JMaXN0ICgpOw0KDQog ICBERUJVRyAoKERFQlVHX0lORk8sICJFbnRlcmluZyBVbml2ZXJzYWwgUGF5bG9hZC4uLlxuIikp Ow0KICAgREVCVUcgKChERUJVR19JTkZPLCAic2l6ZW9mKFVJTlROKSA9IDB4JXhcbiIsIHNpemVv ZiAoVUlOVE4pKSk7DQorICBERUJVRyAoKERFQlVHX0lORk8sICJCb290bG9hZGVyUGFyYW1ldGVy ID0gMHgleFxuIiwgQm9vdGxvYWRlclBhcmFtZXRlcikpOw0KKw0KKyAgREVCVUcgKChERUJVR19J TkZPLCAiU3RhcnQgaW5pdCBIb2JzLi4uXG4iKSk7DQorICBIb2JMaXN0UHRyID0gVXBsSW5pdEhv YiAoKFZPSUQgKilCb290bG9hZGVyUGFyYW1ldGVyKTsNCisNCisgIC8vDQorICAvLyBGb3VuZCBo b2IgbGlzdCBub2RlDQorICAvLw0KKyAgaWYgKEhvYkxpc3RQdHIgIT0gMCkgew0KKyAgICBGZHRC YXNlID0gKFZPSUQgKilCb290bG9hZGVyUGFyYW1ldGVyOw0KKyAgICBpZiAoRmR0Q2hlY2tIZWFk ZXIgKEZkdEJhc2UpID09IDApIHsNCisgICAgICBDdXN0b21GZHROb2RlUGFyc2VyICgoVk9JRCAq KUZkdEJhc2UsIChWT0lEICopSG9iTGlzdFB0cik7DQorICAgIH0gZWxzZSB7DQorICAgICAgQ3Jl YXROZXdIb2JGb3JIb2JsaXN0IChCb290bG9hZGVyUGFyYW1ldGVyKTsNCisgICAgfQ0KKw0KKyAg ICBGZHRCYXNlUmVzdmQgPSBQYXlsb2FkQWxsb2NhdGVQYWdlcyAoNCwgRWZpUmVzZXJ2ZWRNZW1v cnlUeXBlKTsNCisNCisgICAgLy8gQnVpbGQgSE9CIGJhc2VkIG9uIGluZm9ybWF0aW9uIGZyb20g Qm9vdGxvYWRlcg0KKyAgICBTdGF0dXMgPSBGaXRCdWlsZEhvYnMgKChVSU5UTilGZHRCYXNlUmVz dmQsICZEeGVGdik7DQorICB9DQorDQorICAvLyBDYWxsIGNvbnN0cnVjdG9yIGZvciBhbGwgbGli cmFyaWVzIGFnYWluIHNpbmNlIGhvYnMgd2VyZSBidWlsdA0KKyAgUHJvY2Vzc0xpYnJhcnlDb25z dHJ1Y3Rvckxpc3QgKCk7DQoNCiAgIERFQlVHX0NPREUgKA0KICAgICAvLw0KQEAgLTYyOSwyMyAr NjEwLDEwIEBAIF9Nb2R1bGVFbnRyeVBvaW50ICgNCiAgICAgUHJpbnRIb2IgKG1Ib2JMaXN0KTsN CiAgICAgKTsNCg0KLSAgLy8gSW5pdGlhbGl6ZSBmbG9hdGluZyBwb2ludCBvcGVyYXRpbmcgZW52 aXJvbm1lbnQgdG8gYmUgY29tcGxpYW50IHdpdGggVUVGSSBzcGVjLg0KLSAgSW5pdGlhbGl6ZUZs b2F0aW5nUG9pbnRVbml0cyAoKTsNCi0NCi0gIC8vIEJ1aWxkIEhPQiBiYXNlZCBvbiBpbmZvcm1h dGlvbiBmcm9tIEJvb3Rsb2FkZXINCi0gIFN0YXR1cyA9IEJ1aWxkSG9icyAoQm9vdGxvYWRlclBh cmFtZXRlciwgJkR4ZUZ2KTsNCi0gIEFTU0VSVF9FRklfRVJST1IgKFN0YXR1cyk7DQotDQogICBG aXhVcFBjZERhdGFiYXNlIChEeGVGdik7DQogICBTdGF0dXMgPSBVbml2ZXJzYWxMb2FkRHhlQ29y ZSAoRHhlRnYsICZEeGVDb3JlRW50cnlQb2ludCk7DQogICBBU1NFUlRfRUZJX0VSUk9SIChTdGF0 dXMpOw0KDQotICAvLw0KLSAgLy8gTWFzayBvZmYgYWxsIGxlZ2FjeSA4MjU5IGludGVycnVwdCBz b3VyY2VzDQotICAvLw0KLSAgSW9Xcml0ZTggKExFR0FDWV84MjU5X01BU0tfUkVHSVNURVJfTUFT VEVSLCAweEZGKTsNCi0gIElvV3JpdGU4IChMRUdBQ1lfODI1OV9NQVNLX1JFR0lTVEVSX1NMQVZF LCAweEZGKTsNCi0NCiAgIEhvYi5IYW5kb2ZmSW5mb3JtYXRpb25UYWJsZSA9IChFRklfSE9CX0hB TkRPRkZfSU5GT19UQUJMRSAqKUdldEZpcnN0SG9iIChFRklfSE9CX1RZUEVfSEFORE9GRik7DQog ICBIYW5kT2ZmVG9EeGVDb3JlIChEeGVDb3JlRW50cnlQb2ludCwgSG9iKTsNCg0KZGlmZiAtLWdp dCBhL1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkvSWEzMi9EeGVMb2FkRnVuYy5jIGIv VWVmaVBheWxvYWRQa2cvVWVmaVBheWxvYWRFbnRyeS9JYTMyL0R4ZUxvYWRGdW5jLmMNCmluZGV4 IDYxYTlmMDFlYzllNy4uY2Y5YzAzYTlhOGU5IDEwMDY0NA0KLS0tIGEvVWVmaVBheWxvYWRQa2cv VWVmaVBheWxvYWRFbnRyeS9JYTMyL0R4ZUxvYWRGdW5jLmMNCisrKyBiL1VlZmlQYXlsb2FkUGtn L1VlZmlQYXlsb2FkRW50cnkvSWEzMi9EeGVMb2FkRnVuYy5jDQpAQCAtMTUsMTIgKzE1LDE1IEBA IFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMi1DbGF1c2UtUGF0ZW50DQogI2luY2x1ZGUg PExpYnJhcnkvTWVtb3J5QWxsb2NhdGlvbkxpYi5oPg0KICNpbmNsdWRlIDxMaWJyYXJ5L1BjZExp Yi5oPg0KICNpbmNsdWRlIDxMaWJyYXJ5L0hvYkxpYi5oPg0KKyNpbmNsdWRlIDxMaWJyYXJ5L0Zk dExpYi5oPg0KICNpbmNsdWRlICJWaXJ0dWFsTWVtb3J5LmgiDQogI2luY2x1ZGUgIlVlZmlQYXls b2FkRW50cnkuaCINCg0KICNkZWZpbmUgU1RBQ0tfU0laRSAgICAgICAweDIwMDAwDQogI2RlZmlu ZSBJRFRfRU5UUllfQ09VTlQgIDMyDQoNCitleHRlcm4gVk9JRCAgKm1Ib2JMaXN0Ow0KKw0KIHR5 cGVkZWYgc3RydWN0IF9YNjRfSURUX1RBQkxFIHsNCiAgIC8vDQogICAvLyBSZXNlcnZlZCA0IGJ5 dGVzIHByZWNlZGluZyBQZWlTZXJ2aWNlIGFuZCBJZHRUYWJsZSwNCkBAIC0yNjgsNiArMjcxLDE1 IEBAIEhhbmRPZmZUb0R4ZUNvcmUgKA0KICAgVUlOVDMyICAgICAgICAgICAgICAgICAgIEluZGV4 Ow0KICAgWDY0X0lEVF9UQUJMRSAgICAgICAgICAgICpJZHRUYWJsZUZvclg2NDsNCg0KKyAgLy8g SW5pdGlhbGl6ZSBmbG9hdGluZyBwb2ludCBvcGVyYXRpbmcgZW52aXJvbm1lbnQgdG8gYmUgY29t cGxpYW50IHdpdGggVUVGSSBzcGVjLg0KKyAgSW5pdGlhbGl6ZUZsb2F0aW5nUG9pbnRVbml0cyAo KTsNCisNCisgIC8vDQorICAvLyBNYXNrIG9mZiBhbGwgbGVnYWN5IDgyNTkgaW50ZXJydXB0IHNv dXJjZXMNCisgIC8vDQorICBJb1dyaXRlOCAoTEVHQUNZXzgyNTlfTUFTS19SRUdJU1RFUl9NQVNU RVIsIDB4RkYpOw0KKyAgSW9Xcml0ZTggKExFR0FDWV84MjU5X01BU0tfUkVHSVNURVJfU0xBVkUs IDB4RkYpOw0KKw0KICAgLy8NCiAgIC8vIENsZWFyIHBhZ2UgMCBhbmQgbWFyayBpdCBhcyBhbGxv Y2F0ZWQgaWYgTlVMTCBwb2ludGVyIGRldGVjdGlvbiBpcyBlbmFibGVkLg0KICAgLy8NCmRpZmYg LS1naXQgYS9VZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5L0lhMzIvRHhlTG9hZEZ1bmMu YyBiL1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkvSWEzMi9EeGVMb2FkRnVuY0ZpdC5j DQpzaW1pbGFyaXR5IGluZGV4IDkwJQ0KY29weSBmcm9tIFVlZmlQYXlsb2FkUGtnL1VlZmlQYXls b2FkRW50cnkvSWEzMi9EeGVMb2FkRnVuYy5jDQpjb3B5IHRvIFVlZmlQYXlsb2FkUGtnL1VlZmlQ YXlsb2FkRW50cnkvSWEzMi9EeGVMb2FkRnVuY0ZpdC5jDQppbmRleCA2MWE5ZjAxZWM5ZTcuLjQz OWQ1YmVlMGI4YyAxMDA2NDQNCi0tLSBhL1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkv SWEzMi9EeGVMb2FkRnVuYy5jDQorKysgYi9VZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5 L0lhMzIvRHhlTG9hZEZ1bmNGaXQuYw0KQEAgLTEsMTAgKzEsOCBAQA0KIC8qKiBAZmlsZQ0KICAg SWEzMi1zcGVjaWZpYyBmdW5jdGlvbmFsaXR5IGZvciBEeGVMb2FkLg0KDQotQ29weXJpZ2h0IChj KSAyMDA2IC0gMjAyMCwgSW50ZWwgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuPEJS Pg0KLUNvcHlyaWdodCAoYykgMjAxNywgQU1EIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNl cnZlZC48QlI+DQotDQotU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZS1QYXRl bnQNCisgIENvcHlyaWdodCAoYykgMjAyNCwgSW50ZWwgQ29ycG9yYXRpb24uIEFsbCByaWdodHMg cmVzZXJ2ZWQuPEJSPg0KKyAgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZS1Q YXRlbnQNCg0KICoqLw0KDQpAQCAtMTUsMTIgKzEzLDE1IEBAIFNQRFgtTGljZW5zZS1JZGVudGlm aWVyOiBCU0QtMi1DbGF1c2UtUGF0ZW50DQogI2luY2x1ZGUgPExpYnJhcnkvTWVtb3J5QWxsb2Nh dGlvbkxpYi5oPg0KICNpbmNsdWRlIDxMaWJyYXJ5L1BjZExpYi5oPg0KICNpbmNsdWRlIDxMaWJy YXJ5L0hvYkxpYi5oPg0KKyNpbmNsdWRlIDxMaWJyYXJ5L0ZkdExpYi5oPg0KICNpbmNsdWRlICJW aXJ0dWFsTWVtb3J5LmgiDQogI2luY2x1ZGUgIlVlZmlQYXlsb2FkRW50cnkuaCINCg0KICNkZWZp bmUgU1RBQ0tfU0laRSAgICAgICAweDIwMDAwDQogI2RlZmluZSBJRFRfRU5UUllfQ09VTlQgIDMy DQoNCitleHRlcm4gVk9JRCAgKm1Ib2JMaXN0Ow0KKw0KIHR5cGVkZWYgc3RydWN0IF9YNjRfSURU X1RBQkxFIHsNCiAgIC8vDQogICAvLyBSZXNlcnZlZCA0IGJ5dGVzIHByZWNlZGluZyBQZWlTZXJ2 aWNlIGFuZCBJZHRUYWJsZSwNCkBAIC0yNjgsNiArMjY5LDE1IEBAIEhhbmRPZmZUb0R4ZUNvcmUg KA0KICAgVUlOVDMyICAgICAgICAgICAgICAgICAgIEluZGV4Ow0KICAgWDY0X0lEVF9UQUJMRSAg ICAgICAgICAgICpJZHRUYWJsZUZvclg2NDsNCg0KKyAgLy8gSW5pdGlhbGl6ZSBmbG9hdGluZyBw b2ludCBvcGVyYXRpbmcgZW52aXJvbm1lbnQgdG8gYmUgY29tcGxpYW50IHdpdGggVUVGSSBzcGVj Lg0KKyAgSW5pdGlhbGl6ZUZsb2F0aW5nUG9pbnRVbml0cyAoKTsNCisNCisgIC8vDQorICAvLyBN YXNrIG9mZiBhbGwgbGVnYWN5IDgyNTkgaW50ZXJydXB0IHNvdXJjZXMNCisgIC8vDQorICBJb1dy aXRlOCAoTEVHQUNZXzgyNTlfTUFTS19SRUdJU1RFUl9NQVNURVIsIDB4RkYpOw0KKyAgSW9Xcml0 ZTggKExFR0FDWV84MjU5X01BU0tfUkVHSVNURVJfU0xBVkUsIDB4RkYpOw0KKw0KICAgLy8NCiAg IC8vIENsZWFyIHBhZ2UgMCBhbmQgbWFyayBpdCBhcyBhbGxvY2F0ZWQgaWYgTlVMTCBwb2ludGVy IGRldGVjdGlvbiBpcyBlbmFibGVkLg0KICAgLy8NCkBAIC0zNzksMyArMzg5LDE3IEBAIEhhbmRP ZmZUb0R4ZUNvcmUgKA0KICAgICBDcHVEZWFkTG9vcCAoKTsNCiAgIH0NCiB9DQorDQorLyoqDQor ICBFbnRyeSBwb2ludCB0byB0aGUgQyBsYW5ndWFnZSBwaGFzZSBvZiBVRUZJIHBheWxvYWQuDQor ICBAcGFyYW1baW5dICAgQm9vdGxvYWRlclBhcmFtZXRlciAgICBUaGUgc3RhcnRpbmcgYWRkcmVz cyBvZiBib290bG9hZGVyIHBhcmFtZXRlciBibG9jay4NCisgIEByZXR2YWwgICAgICBJdCB3aWxs IG5vdCByZXR1cm4gaWYgU1VDQ0VTUywgYW5kIHJldHVybiBlcnJvciB3aGVuIHBhc3NpbmcgYm9v dGxvYWRlciBwYXJhbWV0ZXIuDQorKiovDQorRUZJX1NUQVRVUw0KK0VGSUFQSQ0KK19Nb2R1bGVF bnRyeVBvaW50ICgNCisgIElOIFVJTlROICBCb290bG9hZGVyUGFyYW1ldGVyDQorICApDQorew0K KyAgcmV0dXJuIEZpdFVwbEVudHJ5UG9pbnQgKEJvb3Rsb2FkZXJQYXJhbWV0ZXIpOw0KK30NCmRp ZmYgLS1naXQgYS9VZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5L01lbW9yeUFsbG9jYXRp b24uYyBiL1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkvTWVtb3J5QWxsb2NhdGlvbi5j DQppbmRleCA4MzkzNmFlMjZlNjguLjM2ZWRjYTgxZjk5NyAxMDA2NDQNCi0tLSBhL1VlZmlQYXls b2FkUGtnL1VlZmlQYXlsb2FkRW50cnkvTWVtb3J5QWxsb2NhdGlvbi5jDQorKysgYi9VZWZpUGF5 bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5L01lbW9yeUFsbG9jYXRpb24uYw0KQEAgLTEwLDYgKzEw LDU2IEBADQoNCiAjaW5jbHVkZSAiVWVmaVBheWxvYWRFbnRyeS5oIg0KDQorLyoqDQorICBBbGxv Y2F0ZXMgb25lIG9yIG1vcmUgcGFnZXMgb2YgdHlwZSBFZmlCb290U2VydmljZXNEYXRhLg0KKw0K KyAgQWxsb2NhdGVzIHRoZSBudW1iZXIgb2YgcGFnZXMgb2YgTWVtb3J5VHlwZSBhbmQgcmV0dXJu cyBhIHBvaW50ZXIgdG8gdGhlDQorICBhbGxvY2F0ZWQgYnVmZmVyLiAgVGhlIGJ1ZmZlciByZXR1 cm5lZCBpcyBhbGlnbmVkIG9uIGEgNEtCIGJvdW5kYXJ5Lg0KKyAgSWYgUGFnZXMgaXMgMCwgdGhl biBOVUxMIGlzIHJldHVybmVkLg0KKyAgSWYgdGhlcmUgaXMgbm90IGVub3VnaCBtZW1vcnkgYXZh aWxibGUgdG8gc2F0aXNmeSB0aGUgcmVxdWVzdCwgdGhlbiBOVUxMDQorICBpcyByZXR1cm5lZC4N CisNCisgIEBwYXJhbSAgIFBhZ2VzICAgICAgICAgICAgICAgICBUaGUgbnVtYmVyIG9mIDQgS0Ig cGFnZXMgdG8gYWxsb2NhdGUuDQorICBAcGFyYW0gICBNZW1vcnlUeXBlICAgICAgICAgICAgVGhl IE1lbW9yeVR5cGUNCisgIEByZXR1cm4gIEEgcG9pbnRlciB0byB0aGUgYWxsb2NhdGVkIGJ1ZmZl ciBvciBOVUxMIGlmIGFsbG9jYXRpb24gZmFpbHMuDQorKiovDQorVk9JRCAqDQorRUZJQVBJDQor UGF5bG9hZEFsbG9jYXRlUGFnZXMgKA0KKyAgSU4gVUlOVE4gICAgICAgICAgICBQYWdlcywNCisg IElOIEVGSV9NRU1PUllfVFlQRSAgTWVtb3J5VHlwZQ0KKyAgKQ0KK3sNCisgIEVGSV9QRUlfSE9C X1BPSU5URVJTICAgICAgICBIb2I7DQorICBFRklfUEhZU0lDQUxfQUREUkVTUyAgICAgICAgT2Zm c2V0Ow0KKyAgRUZJX0hPQl9IQU5ET0ZGX0lORk9fVEFCTEUgICpIb2JUYWJsZTsNCisNCisgIEhv Yi5SYXcgID0gR2V0SG9iTGlzdCAoKTsNCisgIEhvYlRhYmxlID0gSG9iLkhhbmRvZmZJbmZvcm1h dGlvblRhYmxlOw0KKw0KKyAgaWYgKFBhZ2VzID09IDApIHsNCisgICAgcmV0dXJuIE5VTEw7DQor ICB9DQorDQorICAvLyBNYWtlIHN1cmUgYWxsb2NhdGlvbiBhZGRyZXNzIGlzIHBhZ2UgYWxsaWdu ZWQuDQorICBPZmZzZXQgPSBIb2JUYWJsZS0+RWZpRnJlZU1lbW9yeVRvcCAmIEVGSV9QQUdFX01B U0s7DQorICBpZiAoT2Zmc2V0ICE9IDApIHsNCisgICAgSG9iVGFibGUtPkVmaUZyZWVNZW1vcnlU b3AgLT0gT2Zmc2V0Ow0KKyAgfQ0KKw0KKyAgLy8NCisgIC8vIENoZWNrIGF2YWlsYWJsZSBtZW1v cnkgZm9yIHRoZSBhbGxvY2F0aW9uDQorICAvLw0KKyAgaWYgKEhvYlRhYmxlLT5FZmlGcmVlTWVt b3J5VG9wIC0gKChQYWdlcyAqIEVGSV9QQUdFX1NJWkUpICsgc2l6ZW9mIChFRklfSE9CX01FTU9S WV9BTExPQ0FUSU9OKSkgPCBIb2JUYWJsZS0+RWZpRnJlZU1lbW9yeUJvdHRvbSkgew0KKyAgICBy ZXR1cm4gTlVMTDsNCisgIH0NCisNCisgIEhvYlRhYmxlLT5FZmlGcmVlTWVtb3J5VG9wIC09IFBh Z2VzICogRUZJX1BBR0VfU0laRTsNCisgIEJ1aWxkTWVtb3J5QWxsb2NhdGlvbkhvYiAoSG9iVGFi bGUtPkVmaUZyZWVNZW1vcnlUb3AsIFBhZ2VzICogRUZJX1BBR0VfU0laRSwgTWVtb3J5VHlwZSk7 DQorDQorICByZXR1cm4gKFZPSUQgKikoVUlOVE4pSG9iVGFibGUtPkVmaUZyZWVNZW1vcnlUb3A7 DQorfQ0KKw0KIC8qKg0KICAgQWxsb2NhdGVzIG9uZSBvciBtb3JlIHBhZ2VzIG9mIHR5cGUgRWZp Qm9vdFNlcnZpY2VzRGF0YS4NCg0KZGlmZiAtLWdpdCBhL1VlZmlQYXlsb2FkUGtnL1VlZmlQYXls b2FkRW50cnkvUHJpbnRIb2IuYyBiL1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkvUHJp bnRIb2IuYw0KaW5kZXggYjYzZTkzYzA3ZWMyLi4xNTNkMWIwMGY2MzcgMTAwNjQ0DQotLS0gYS9V ZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5L1ByaW50SG9iLmMNCisrKyBiL1VlZmlQYXls b2FkUGtnL1VlZmlQYXlsb2FkRW50cnkvUHJpbnRIb2IuYw0KQEAgLTE2OSwxMyArMTY5LDEzIEBA IFByaW50TWVtb3J5QWxsb2NhdGlvbkhvYiAoDQogfQ0KDQogLyoqDQotICBQcmludCB0aGUgaW5m b3JtYXRpb24gaW4gUmVzb3VyY2UgRGlzY3JpcHRvciBIb2IuDQorICBQcmludCB0aGUgaW5mb3Jt YXRpb24gaW4gUmVzb3VyY2UgRGVzY3JpcHRvciBIb2IuDQogICBAcGFyYW1baW5dICBIb2JTdGFy dCAgICAgICBBIHBvaW50ZXIgdG8gSE9CIG9mIHR5cGUgRUZJX0hPQl9UWVBFX1JFU09VUkNFX0RF U0NSSVBUT1IuDQogICBAcGFyYW1baW5dICBIb2JMZW5ndGggICAgICBUaGUgTGVuZ3RoIGluIGJ5 dGVzIG9mIEhPQiBvZiB0eXBlIEVGSV9IT0JfVFlQRV9SRVNPVVJDRV9ERVNDUklQVE9SLg0KICAg QHJldHZhbCBFRklfU1VDQ0VTUyAgICAgICAgSWYgaXQgY29tcGxldGVkIHN1Y2Nlc3NmdWxseS4N CiAqKi8NCiBFRklfU1RBVFVTDQotUHJpbnRSZXNvdXJjZURpc2NyaXB0b3JIb2IgKA0KK1ByaW50 UmVzb3VyY2VEZXNjcmlwdG9ySG9iICgNCiAgIElOICBWT0lEICAgICpIb2JTdGFydCwNCiAgIElO ICBVSU5UMTYgIEhvYkxlbmd0aA0KICAgKQ0KQEAgLTYyMCw3ICs2MjAsNyBAQCBQcmludEZ2M0hv YiAoDQogSE9CX1BSSU5UX0hBTkRMRVJfVEFCTEUgIG1Ib2JIYW5kbGVzW10gPSB7DQogICB7IEVG SV9IT0JfVFlQRV9IQU5ET0ZGLCAgICAgICAgICAgICAiRUZJX0hPQl9UWVBFX0hBTkRPRkYiLCAg ICAgICAgICAgICBQcmludEhhbmRPZmZIb2IgICAgICAgICAgICB9LA0KICAgeyBFRklfSE9CX1RZ UEVfTUVNT1JZX0FMTE9DQVRJT04sICAgIkVGSV9IT0JfVFlQRV9NRU1PUllfQUxMT0NBVElPTiIs ICAgUHJpbnRNZW1vcnlBbGxvY2F0aW9uSG9iICAgfSwNCi0gIHsgRUZJX0hPQl9UWVBFX1JFU09V UkNFX0RFU0NSSVBUT1IsICJFRklfSE9CX1RZUEVfUkVTT1VSQ0VfREVTQ1JJUFRPUiIsIFByaW50 UmVzb3VyY2VEaXNjcmlwdG9ySG9iIH0sDQorICB7IEVGSV9IT0JfVFlQRV9SRVNPVVJDRV9ERVND UklQVE9SLCAiRUZJX0hPQl9UWVBFX1JFU09VUkNFX0RFU0NSSVBUT1IiLCBQcmludFJlc291cmNl RGVzY3JpcHRvckhvYiB9LA0KICAgeyBFRklfSE9CX1RZUEVfR1VJRF9FWFRFTlNJT04sICAgICAg IkVGSV9IT0JfVFlQRV9HVUlEX0VYVEVOU0lPTiIsICAgICAgUHJpbnRHdWlkSG9iICAgICAgICAg ICAgICAgfSwNCiAgIHsgRUZJX0hPQl9UWVBFX0ZWLCAgICAgICAgICAgICAgICAgICJFRklfSE9C X1RZUEVfRlYiLCAgICAgICAgICAgICAgICAgIFByaW50RnZIb2IgICAgICAgICAgICAgICAgIH0s DQogICB7IEVGSV9IT0JfVFlQRV9DUFUsICAgICAgICAgICAgICAgICAiRUZJX0hPQl9UWVBFX0NQ VSIsICAgICAgICAgICAgICAgICBQcmludENwdUhvYiAgICAgICAgICAgICAgICB9LA0KZGlmZiAt LWdpdCBhL1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkvVW5pdmVyc2FsUGF5bG9hZEVu dHJ5LmMgYi9VZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5L1VuaXZlcnNhbFBheWxvYWRF bnRyeS5jDQppbmRleCBmMzdjMDBmYWQ3NzQuLjViODY0ZWVlZmUxMCAxMDA2NDQNCi0tLSBhL1Vl ZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkvVW5pdmVyc2FsUGF5bG9hZEVudHJ5LmMNCisr KyBiL1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkvVW5pdmVyc2FsUGF5bG9hZEVudHJ5 LmMNCkBAIC00ODYsMTIgKzQ4Niw2IEBAIF9Nb2R1bGVFbnRyeVBvaW50ICgNCiAgIFN0YXR1cyA9 IFVuaXZlcnNhbExvYWREeGVDb3JlIChEeGVGdiwgJkR4ZUNvcmVFbnRyeVBvaW50KTsNCiAgIEFT U0VSVF9FRklfRVJST1IgKFN0YXR1cyk7DQoNCi0gIC8vDQotICAvLyBNYXNrIG9mZiBhbGwgbGVn YWN5IDgyNTkgaW50ZXJydXB0IHNvdXJjZXMNCi0gIC8vDQotICBJb1dyaXRlOCAoTEVHQUNZXzgy NTlfTUFTS19SRUdJU1RFUl9NQVNURVIsIDB4RkYpOw0KLSAgSW9Xcml0ZTggKExFR0FDWV84MjU5 X01BU0tfUkVHSVNURVJfU0xBVkUsIDB4RkYpOw0KLQ0KICAgSG9iLkhhbmRvZmZJbmZvcm1hdGlv blRhYmxlID0gKEVGSV9IT0JfSEFORE9GRl9JTkZPX1RBQkxFICopR2V0Rmlyc3RIb2IgKEVGSV9I T0JfVFlQRV9IQU5ET0ZGKTsNCiAgIEhhbmRPZmZUb0R4ZUNvcmUgKER4ZUNvcmVFbnRyeVBvaW50 LCBIb2IpOw0KDQpkaWZmIC0tZ2l0IGEvVWVmaVBheWxvYWRQa2cvVWVmaVBheWxvYWRFbnRyeS9Y NjQvRHhlTG9hZEZ1bmMuYyBiL1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkvWDY0L0R4 ZUxvYWRGdW5jLmMNCmluZGV4IDM0NmUzZmViMDQ1OS4uNmMzNjAzZjEyMDk4IDEwMDY0NA0KLS0t IGEvVWVmaVBheWxvYWRQa2cvVWVmaVBheWxvYWRFbnRyeS9YNjQvRHhlTG9hZEZ1bmMuYw0KKysr IGIvVWVmaVBheWxvYWRQa2cvVWVmaVBheWxvYWRFbnRyeS9YNjQvRHhlTG9hZEZ1bmMuYw0KQEAg LTEzLDEwICsxMywxMyBAQCBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNlLVBh dGVudA0KICNpbmNsdWRlIDxMaWJyYXJ5L01lbW9yeUFsbG9jYXRpb25MaWIuaD4NCiAjaW5jbHVk ZSA8TGlicmFyeS9QY2RMaWIuaD4NCiAjaW5jbHVkZSA8TGlicmFyeS9Ib2JMaWIuaD4NCisjaW5j bHVkZSA8TGlicmFyeS9GZHRMaWIuaD4NCiAjaW5jbHVkZSAiWDY0L1ZpcnR1YWxNZW1vcnkuaCIN CiAjaW5jbHVkZSAiVWVmaVBheWxvYWRFbnRyeS5oIg0KICNkZWZpbmUgU1RBQ0tfU0laRSAgMHgy MDAwMA0KDQorZXh0ZXJuIFZPSUQgICptSG9iTGlzdDsNCisNCiAvKioNCiAgICBUcmFuc2ZlcnMg Y29udHJvbCB0byBEeGVDb3JlLg0KDQpAQCAtNDAsNiArNDMsMTUgQEAgSGFuZE9mZlRvRHhlQ29y ZSAoDQogICBWT0lEICAgKkdoY2JCYXNlOw0KICAgVUlOVE4gIEdoY2JTaXplOw0KDQorICAvLyBJ bml0aWFsaXplIGZsb2F0aW5nIHBvaW50IG9wZXJhdGluZyBlbnZpcm9ubWVudCB0byBiZSBjb21w bGlhbnQgd2l0aCBVRUZJIHNwZWMuDQorICBJbml0aWFsaXplRmxvYXRpbmdQb2ludFVuaXRzICgp Ow0KKw0KKyAgLy8NCisgIC8vIE1hc2sgb2ZmIGFsbCBsZWdhY3kgODI1OSBpbnRlcnJ1cHQgc291 cmNlcw0KKyAgLy8NCisgIElvV3JpdGU4IChMRUdBQ1lfODI1OV9NQVNLX1JFR0lTVEVSX01BU1RF UiwgMHhGRik7DQorICBJb1dyaXRlOCAoTEVHQUNZXzgyNTlfTUFTS19SRUdJU1RFUl9TTEFWRSwg MHhGRik7DQorDQogICAvLw0KICAgLy8gQ2xlYXIgcGFnZSAwIGFuZCBtYXJrIGl0IGFzIGFsbG9j YXRlZCBpZiBOVUxMIHBvaW50ZXIgZGV0ZWN0aW9uIGlzIGVuYWJsZWQuDQogICAvLw0KZGlmZiAt LWdpdCBhL1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkvWDY0L0R4ZUxvYWRGdW5jLmMg Yi9VZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5L1g2NC9EeGVMb2FkRnVuY0ZpdC5jDQpz aW1pbGFyaXR5IGluZGV4IDc0JQ0KY29weSBmcm9tIFVlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2Fk RW50cnkvWDY0L0R4ZUxvYWRGdW5jLmMNCmNvcHkgdG8gVWVmaVBheWxvYWRQa2cvVWVmaVBheWxv YWRFbnRyeS9YNjQvRHhlTG9hZEZ1bmNGaXQuYw0KaW5kZXggMzQ2ZTNmZWIwNDU5Li4zNWI1MmE5 MTFkZjMgMTAwNjQ0DQotLS0gYS9VZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5L1g2NC9E eGVMb2FkRnVuYy5jDQorKysgYi9VZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5L1g2NC9E eGVMb2FkRnVuY0ZpdC5jDQpAQCAtMSw4ICsxLDggQEANCiAvKiogQGZpbGUNCiAgIHg2NC1zcGVj aWZjIGZ1bmN0aW9uYWxpdHkgZm9yIER4ZUxvYWQuDQoNCi1Db3B5cmlnaHQgKGMpIDIwMDYgLSAy MDIwLCBJbnRlbCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC48QlI+DQotU1BEWC1M aWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZS1QYXRlbnQNCisgIENvcHlyaWdodCAoYykg MjAyNCwgSW50ZWwgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuPEJSPg0KKyAgU1BE WC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZS1QYXRlbnQNCg0KICoqLw0KDQpAQCAt MTMsMTAgKzEzLDE0IEBAIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMi1DbGF1c2UtUGF0 ZW50DQogI2luY2x1ZGUgPExpYnJhcnkvTWVtb3J5QWxsb2NhdGlvbkxpYi5oPg0KICNpbmNsdWRl IDxMaWJyYXJ5L1BjZExpYi5oPg0KICNpbmNsdWRlIDxMaWJyYXJ5L0hvYkxpYi5oPg0KKyNpbmNs dWRlIDxMaWJyYXJ5L0ZkdExpYi5oPg0KKyNpbmNsdWRlIDxMaWJyYXJ5L1BjZExpYi5oPg0KICNp bmNsdWRlICJYNjQvVmlydHVhbE1lbW9yeS5oIg0KICNpbmNsdWRlICJVZWZpUGF5bG9hZEVudHJ5 LmgiDQogI2RlZmluZSBTVEFDS19TSVpFICAweDIwMDAwDQoNCitleHRlcm4gVk9JRCAgKm1Ib2JM aXN0Ow0KKw0KIC8qKg0KICAgIFRyYW5zZmVycyBjb250cm9sIHRvIER4ZUNvcmUuDQoNCkBAIC00 MCw2ICs0NCwxNSBAQCBIYW5kT2ZmVG9EeGVDb3JlICgNCiAgIFZPSUQgICAqR2hjYkJhc2U7DQog ICBVSU5UTiAgR2hjYlNpemU7DQoNCisgIC8vIEluaXRpYWxpemUgZmxvYXRpbmcgcG9pbnQgb3Bl cmF0aW5nIGVudmlyb25tZW50IHRvIGJlIGNvbXBsaWFudCB3aXRoIFVFRkkgc3BlYy4NCisgIElu aXRpYWxpemVGbG9hdGluZ1BvaW50VW5pdHMgKCk7DQorDQorICAvLw0KKyAgLy8gTWFzayBvZmYg YWxsIGxlZ2FjeSA4MjU5IGludGVycnVwdCBzb3VyY2VzDQorICAvLw0KKyAgSW9Xcml0ZTggKExF R0FDWV84MjU5X01BU0tfUkVHSVNURVJfTUFTVEVSLCAweEZGKTsNCisgIElvV3JpdGU4IChMRUdB Q1lfODI1OV9NQVNLX1JFR0lTVEVSX1NMQVZFLCAweEZGKTsNCisNCiAgIC8vDQogICAvLyBDbGVh ciBwYWdlIDAgYW5kIG1hcmsgaXQgYXMgYWxsb2NhdGVkIGlmIE5VTEwgcG9pbnRlciBkZXRlY3Rp b24gaXMgZW5hYmxlZC4NCiAgIC8vDQpAQCAtMTA2LDMgKzExOSwxNyBAQCBIYW5kT2ZmVG9EeGVD b3JlICgNCiAgICAgVG9wT2ZTdGFjaw0KICAgICApOw0KIH0NCisNCisvKioNCisgIEVudHJ5IHBv aW50IHRvIHRoZSBDIGxhbmd1YWdlIHBoYXNlIG9mIFVFRkkgcGF5bG9hZC4NCisgIEBwYXJhbVtp bl0gICBCb290bG9hZGVyUGFyYW1ldGVyICAgIFRoZSBzdGFydGluZyBhZGRyZXNzIG9mIGJvb3Rs b2FkZXIgcGFyYW1ldGVyIGJsb2NrLg0KKyAgQHJldHZhbCAgICAgIEl0IHdpbGwgbm90IHJldHVy biBpZiBTVUNDRVNTLCBhbmQgcmV0dXJuIGVycm9yIHdoZW4gcGFzc2luZyBib290bG9hZGVyIHBh cmFtZXRlci4NCisqKi8NCitFRklfU1RBVFVTDQorRUZJQVBJDQorX01vZHVsZUVudHJ5UG9pbnQg KA0KKyAgSU4gVUlOVE4gIEJvb3Rsb2FkZXJQYXJhbWV0ZXINCisgICkNCit7DQorICByZXR1cm4g Rml0VXBsRW50cnlQb2ludCAoQm9vdGxvYWRlclBhcmFtZXRlcik7DQorfQ0KZGlmZiAtLWdpdCBh L1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkvRml0VW5pdmVyc2FsUGF5bG9hZEVudHJ5 LmluZiBiL1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkvRml0VW5pdmVyc2FsUGF5bG9h ZEVudHJ5LmluZg0KaW5kZXggYjg3YTA5ODllZWUzLi5jODdlNjc0ZjdjYmQgMTAwNjQ0DQotLS0g YS9VZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5L0ZpdFVuaXZlcnNhbFBheWxvYWRFbnRy eS5pbmYNCisrKyBiL1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkvRml0VW5pdmVyc2Fs UGF5bG9hZEVudHJ5LmluZg0KQEAgLTMwLDEzICszMCwxMyBAQA0KIFtTb3VyY2VzLklhMzJdDQog ICBYNjQvVmlydHVhbE1lbW9yeS5oDQogICBYNjQvVmlydHVhbE1lbW9yeS5jDQotICBJYTMyL0R4 ZUxvYWRGdW5jLmMNCisgIElhMzIvRHhlTG9hZEZ1bmNGaXQuYw0KICAgSWEzMi9JZHRWZWN0b3JB c20ubmFzbQ0KDQogW1NvdXJjZXMuWDY0XQ0KICAgWDY0L1ZpcnR1YWxNZW1vcnkuaA0KICAgWDY0 L1ZpcnR1YWxNZW1vcnkuYw0KLSAgWDY0L0R4ZUxvYWRGdW5jLmMNCisgIFg2NC9EeGVMb2FkRnVu Y0ZpdC5jDQoNCiBbUGFja2FnZXNdDQogICBNZGVQa2cvTWRlUGtnLmRlYw0KQEAgLTU0LDYgKzU0 LDggQEANCiAgIFBlQ29mZkxpYg0KICAgQ3B1TGliDQogICBGZHRMaWINCisgIEN1c3RvbUZkdE5v ZGVQYXJzZXJMaWINCisgIFBjZExpYg0KDQogW0d1aWRzXQ0KICAgZ0VmaU1lbW9yeVR5cGVJbmZv cm1hdGlvbkd1aWQNCkBAIC03MSw2ICs3Myw3IEBADQogICBnVW5pdmVyc2FsUGF5bG9hZEFjcGlU YWJsZUd1aWQNCiAgIGdVbml2ZXJzYWxQYXlsb2FkUGNpUm9vdEJyaWRnZUluZm9HdWlkDQogICBn VW5pdmVyc2FsUGF5bG9hZFNtYmlvczNUYWJsZUd1aWQNCisgIGdVbml2ZXJzYWxQYXlsb2FkRGV2 aWNlVHJlZUd1aWQNCg0KIFtGZWF0dXJlUGNkLklBMzJdDQogICBnRWZpTWRlTW9kdWxlUGtnVG9r ZW5TcGFjZUd1aWQuUGNkRHhlSXBsU3dpdGNoVG9Mb25nTW9kZSAgICAgICMjIENPTlNVTUVTDQpA QCAtNzgsNyArODEsNiBAQA0KIFtGZWF0dXJlUGNkLlg2NF0NCiAgIGdFZmlNZGVNb2R1bGVQa2dU b2tlblNwYWNlR3VpZC5QY2REeGVJcGxCdWlsZFBhZ2VUYWJsZXMgICAgICAgIyMgQ09OU1VNRVMN Cg0KLQ0KIFtQY2QuSUEzMixQY2QuWDY0XQ0KICAgZ1VlZmlQYXlsb2FkUGtnVG9rZW5TcGFjZUd1 aWQuUGNkUGNkRHJpdmVyRmlsZQ0KICAgZ0VmaU1kZU1vZHVsZVBrZ1Rva2VuU3BhY2VHdWlkLlBj ZFVzZTFHUGFnZVRhYmxlICAgICAgICAgICAgICAgICAgICAgICMjIFNPTUVUSU1FU19DT05TVU1F Uw0KQEAgLTg4LDExICs5MCwxOSBAQA0KICAgZ0VmaU1kZU1vZHVsZVBrZ1Rva2VuU3BhY2VHdWlk LlBjZENwdVN0YWNrR3VhcmQgICAgICAgICAgICAgICAgICAgICAgICMjIENPTlNVTUVTDQogICBn RWZpTWRlTW9kdWxlUGtnVG9rZW5TcGFjZUd1aWQuUGNkR2hjYkJhc2UgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIyMgQ09OU1VNRVMNCiAgIGdFZmlNZGVNb2R1bGVQa2dUb2tlblNwYWNlR3Vp ZC5QY2RHaGNiU2l6ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIyBDT05TVU1FUw0KLQ0K ICAgZ1VlZmlQYXlsb2FkUGtnVG9rZW5TcGFjZUd1aWQuUGNkUGF5bG9hZEZkTWVtQmFzZQ0KICAg Z1VlZmlQYXlsb2FkUGtnVG9rZW5TcGFjZUd1aWQuUGNkUGF5bG9hZEZkTWVtU2l6ZQ0KICAgZ1Vl ZmlQYXlsb2FkUGtnVG9rZW5TcGFjZUd1aWQuUGNkU3lzdGVtTWVtb3J5VWVmaVJlZ2lvblNpemUN Ci0NCiAgIGdFZmlNZGVNb2R1bGVQa2dUb2tlblNwYWNlR3VpZC5QY2RTZXROeEZvclN0YWNrICAg ICAgICAgICAgICAgIyMgU09NRVRJTUVTX0NPTlNVTUVTDQogICBnRWZpTWRlTW9kdWxlUGtnVG9r ZW5TcGFjZUd1aWQuUGNkRHhlTnhNZW1vcnlQcm90ZWN0aW9uUG9saWN5ICMjIFNPTUVUSU1FU19D T05TVU1FUw0KICAgZ0VmaU1kZU1vZHVsZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZEltYWdlUHJvdGVj dGlvblBvbGljeSAgICAgICAjIyBTT01FVElNRVNfQ09OU1VNRVMNCisgIGdVZWZpUGF5bG9hZFBr Z1Rva2VuU3BhY2VHdWlkLlBjZEhhbmRPZmZGZHRFbmFibGUNCisgIGdVZWZpUGF5bG9hZFBrZ1Rv a2VuU3BhY2VHdWlkLlBjZE1lbW9yeVR5cGVFZmlBQ1BJTWVtb3J5TlZTDQorICBnVWVmaVBheWxv YWRQa2dUb2tlblNwYWNlR3VpZC5QY2RNZW1vcnlUeXBlRWZpQUNQSVJlY2xhaW1NZW1vcnkNCisg IGdVZWZpUGF5bG9hZFBrZ1Rva2VuU3BhY2VHdWlkLlBjZE1lbW9yeVR5cGVFZmlSZXNlcnZlZE1l bW9yeVR5cGUNCisgIGdVZWZpUGF5bG9hZFBrZ1Rva2VuU3BhY2VHdWlkLlBjZE1lbW9yeVR5cGVF ZmlSdW50aW1lU2VydmljZXNEYXRhDQorICBnVWVmaVBheWxvYWRQa2dUb2tlblNwYWNlR3VpZC5Q Y2RNZW1vcnlUeXBlRWZpUnVudGltZVNlcnZpY2VzQ29kZQ0KKw0KK1tCdWlsZE9wdGlvbnNdDQor ICBNU0ZUOipfKl8qX0NDX0ZMQUdTID0gL3dkNDI0NCAvd2Q0MzA1DQorICBHQ0M6Kl8qXypfQ0Nf RkxBR1MgID0gLVduby1lcnJvcj1wb2ludGVyLXRvLWludC1jYXN0IC1Xbm8tZXJyb3I9aW50LXRv LXBvaW50ZXItY2FzdA0KZGlmZiAtLWdpdCBhL1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50 cnkvVWVmaVBheWxvYWRFbnRyeS5oIGIvVWVmaVBheWxvYWRQa2cvVWVmaVBheWxvYWRFbnRyeS9V ZWZpUGF5bG9hZEVudHJ5LmgNCmluZGV4IDgwY2NjNTA3MmM1NS4uMDlmY2U4ZGJjZjM1IDEwMDY0 NA0KLS0tIGEvVWVmaVBheWxvYWRQa2cvVWVmaVBheWxvYWRFbnRyeS9VZWZpUGF5bG9hZEVudHJ5 LmgNCisrKyBiL1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkvVWVmaVBheWxvYWRFbnRy eS5oDQpAQCAtMzUsNiArMzUsNyBAQA0KICNpbmNsdWRlIDxVbml2ZXJzYWxQYXlsb2FkL1VuaXZl cnNhbFBheWxvYWQuaD4NCiAjaW5jbHVkZSA8VW5pdmVyc2FsUGF5bG9hZC9FeHRyYURhdGEuaD4N CiAjaW5jbHVkZSA8VW5pdmVyc2FsUGF5bG9hZC9TZXJpYWxQb3J0SW5mby5oPg0KKyNpbmNsdWRl IDxVbml2ZXJzYWxQYXlsb2FkL0RldmljZVRyZWUuaD4NCiAjaW5jbHVkZSA8R3VpZC9QY2REYXRh QmFzZVNpZ25hdHVyZUd1aWQuaD4NCg0KICNkZWZpbmUgTEVHQUNZXzgyNTlfTUFTS19SRUdJU1RF Ul9NQVNURVIgIDB4MjENCkBAIC0xMzQsNiArMTM1LDMxIEBAIFVuaXZlcnNhbExvYWREeGVDb3Jl ICgNCiAgIE9VVCBQSFlTSUNBTF9BRERSRVNTICAgICAgICAgICAgKkR4ZUNvcmVFbnRyeVBvaW50 DQogICApOw0KDQorLyoqDQorICBJdCB3aWxsIFBhcnNlIEZEVCAtbm9kZSBiYXNlZCBvbiBpbmZv cm1hdGlvbi4NCisgIEBwYXJhbVtpbl0gIEZkdEJhc2UgICBUaGUgc3RhcnRpbmcgbWVtb3J5IGFk ZHJlc3Mgb2YgRmR0QmFzZQ0KKyAgQHJldHZhbCBIb2JMaXN0ICAgVGhlIGJhc2UgYWRkcmVzcyBv ZiBIb2JsaXN0Lg0KKw0KKyoqLw0KK1VJTlQ2NA0KK0VGSUFQSQ0KK0ZkdE5vZGVQYXJzZXIgKA0K KyAgSU4gVk9JRCAgKkZkdEJhc2UNCisgICk7DQorDQorLyoqDQorICBJdCB3aWxsIFBhcnNlIEZE VCAtY3VzdG9tIG5vZGUgYmFzZWQgb24gaW5mb3JtYXRpb24uDQorICBAcGFyYW1baW5dICBGZHRC YXNlIFRoZSBzdGFydGluZyBtZW1vcnkgYWRkcmVzcyBvZiBGZHRCYXNlDQorICBAcGFyYW1baW5d ICBIb3N0TGlzdCBUaGUgc3RhcnRpbmcgbWVtb3J5IGFkZHJlc3Mgb2YgTmV3IEhvYiBsaXN0Lg0K Kw0KKyoqLw0KK1VJTlRODQorRUZJQVBJDQorQ3VzdG9tRmR0Tm9kZVBhcnNlciAoDQorICBJTiBW T0lEICAqRmR0QmFzZSwNCisgIElOIFZPSUQgICpIb3N0TGlzdA0KKyAgKTsNCisNCiAvKioNCiAg ICBUcmFuc2ZlcnMgY29udHJvbCB0byBEeGVDb3JlLg0KDQpAQCAtMjA2LDQgKzIzMiw0NiBAQCBC dWlsZEhvYkZyb21BY3BpICgNCiAgIElOICAgVUlOVDY0ICBBY3BpVGFibGVCYXNlDQogICApOw0K DQorLyoqDQorICBBbGxvY2F0ZXMgb25lIG9yIG1vcmUgcGFnZXMgLg0KKw0KKyAgQWxsb2NhdGVz IHRoZSBudW1iZXIgb2YgcGFnZXMgb2YgTWVtb3J5VHlwZSBhbmQgcmV0dXJucyBhIHBvaW50ZXIg dG8gdGhlDQorICBhbGxvY2F0ZWQgYnVmZmVyLiAgVGhlIGJ1ZmZlciByZXR1cm5lZCBpcyBhbGln bmVkIG9uIGEgNEtCIGJvdW5kYXJ5Lg0KKyAgSWYgUGFnZXMgaXMgMCwgdGhlbiBOVUxMIGlzIHJl dHVybmVkLg0KKyAgSWYgdGhlcmUgaXMgbm90IGVub3VnaCBtZW1vcnkgYXZhaWxibGUgdG8gc2F0 aXNmeSB0aGUgcmVxdWVzdCwgdGhlbiBOVUxMDQorICBpcyByZXR1cm5lZC4NCisNCisgIEBwYXJh bSAgIFBhZ2VzICAgICAgICAgICAgICAgICBUaGUgbnVtYmVyIG9mIDQgS0IgcGFnZXMgdG8gYWxs b2NhdGUuDQorICBAcGFyYW0gICBNZW1vcnlUeXBlICAgICAgICAgICAgVGhlIE1lbW9yeXR5cGUN CisgIEByZXR1cm4gIEEgcG9pbnRlciB0byB0aGUgYWxsb2NhdGVkIGJ1ZmZlciBvciBOVUxMIGlm IGFsbG9jYXRpb24gZmFpbHMuDQorKiovDQorVk9JRCAqDQorRUZJQVBJDQorUGF5bG9hZEFsbG9j YXRlUGFnZXMgKA0KKyAgSU4gVUlOVE4gICAgICAgICAgICBQYWdlcywNCisgIElOIEVGSV9NRU1P UllfVFlQRSAgTWVtb3J5VHlwZQ0KKyAgKTsNCisNCisvKioNCisgIEVudHJ5IHBvaW50IHRvIHRo ZSBDIGxhbmd1YWdlIHBoYXNlIG9mIFVFRkkgcGF5bG9hZC4NCisgIEBwYXJhbVtpbl0gICBGZHRQ cnQgIFRoZSBzdGFydGluZyBhZGRyZXNzIG9mIEZEVCAuDQorICBAcmV0dmFsICAgICAgSXQgd2ls bCBub3QgcmV0dXJuIGlmIFNVQ0NFU1MsIGFuZCByZXR1cm4gZXJyb3Igd2hlbiBwYXNzaW5nIGJv b3Rsb2FkZXIgcGFyYW1ldGVyLg0KKyoqLw0KK0VGSV9TVEFUVVMNCitFRklBUEkNCitGaXRVcGxF bnRyeVBvaW50ICgNCisgIElOIFVJTlROICBCb290bG9hZGVyUGFyYW1ldGVyDQorICApOw0KKw0K Ky8qKg0KKyAgRW50cnkgcG9pbnQgdG8gdGhlIEMgbGFuZ3VhZ2UgcGhhc2Ugb2YgVUVGSSBwYXls b2FkLg0KKyAgQHBhcmFtW2luXSAgIEJvb3Rsb2FkZXJQYXJhbWV0ZXIgICAgVGhlIHN0YXJ0aW5n IGFkZHJlc3Mgb2YgYm9vdGxvYWRlciBwYXJhbWV0ZXIgYmxvY2suDQorICBAcmV0dmFsICAgICAg SXQgd2lsbCBub3QgcmV0dXJuIGlmIFNVQ0NFU1MsIGFuZCByZXR1cm4gZXJyb3Igd2hlbiBwYXNz aW5nIGJvb3Rsb2FkZXIgcGFyYW1ldGVyLg0KKyoqLw0KK0VGSV9TVEFUVVMNCitFRklBUEkNCitV cGxFbnRyeVBvaW50ICgNCisgIElOIFVJTlROICBCb290bG9hZGVyUGFyYW1ldGVyDQorICApOw0K Kw0KICNlbmRpZg0KZGlmZiAtLWdpdCBhL1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkv VW5pdmVyc2FsUGF5bG9hZEVudHJ5LmluZiBiL1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50 cnkvVW5pdmVyc2FsUGF5bG9hZEVudHJ5LmluZg0KaW5kZXggYTYyZGE1YzcwNTlkLi5iZTkxZjdi ZTI4MTkgMTAwNjQ0DQotLS0gYS9VZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5L1VuaXZl cnNhbFBheWxvYWRFbnRyeS5pbmYNCisrKyBiL1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50 cnkvVW5pdmVyc2FsUGF5bG9hZEVudHJ5LmluZg0KQEAgLTYsNDQgKzYsMzcgQEANCiAjICBTUERY LUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNlLVBhdGVudA0KICMNCiAjIw0KLQ0KIFtE ZWZpbmVzXQ0KICAgSU5GX1ZFUlNJT04gICAgICAgICAgICAgICAgICAgID0gMS4zMA0KICAgQkFT RV9OQU1FICAgICAgICAgICAgICAgICAgICAgID0gVW5pdmVyc2FsUGF5bG9hZEVudHJ5DQogICBG SUxFX0dVSUQgICAgICAgICAgICAgICAgICAgICAgPSBENEYwRjI2OS0xMjA5LTRBNjYtODAzOS1D NEQ1QTcwMEVBNEUNCiAgIE1PRFVMRV9UWVBFICAgICAgICAgICAgICAgICAgICA9IFNFQw0KICAg VkVSU0lPTl9TVFJJTkcgICAgICAgICAgICAgICAgID0gMS4wDQotDQogIw0KICMgVGhlIGZvbGxv d2luZyBpbmZvcm1hdGlvbiBpcyBmb3IgcmVmZXJlbmNlIG9ubHkgYW5kIG5vdCByZXF1aXJlZCBi eSB0aGUgYnVpbGQgdG9vbHMuDQogIw0KICMgIFZBTElEX0FSQ0hJVEVDVFVSRVMgICAgICAgICAg ID0gSUEzMiBYNjQNCiAjDQotDQogW1NvdXJjZXNdDQogICBVbml2ZXJzYWxQYXlsb2FkRW50cnku Yw0KICAgTG9hZER4ZUNvcmUuYw0KICAgTWVtb3J5QWxsb2NhdGlvbi5jDQogICBQcmludEhvYi5j DQogICBBY3BpVGFibGUuYw0KLQ0KIFtTb3VyY2VzLklhMzJdDQogICBYNjQvVmlydHVhbE1lbW9y eS5oDQogICBYNjQvVmlydHVhbE1lbW9yeS5jDQogICBJYTMyL0R4ZUxvYWRGdW5jLmMNCiAgIElh MzIvSWR0VmVjdG9yQXNtLm5hc20NCi0NCiBbU291cmNlcy5YNjRdDQogICBYNjQvVmlydHVhbE1l bW9yeS5oDQogICBYNjQvVmlydHVhbE1lbW9yeS5jDQogICBYNjQvRHhlTG9hZEZ1bmMuYw0KLQ0K IFtQYWNrYWdlc10NCiAgIE1kZVBrZy9NZGVQa2cuZGVjDQogICBNZGVNb2R1bGVQa2cvTWRlTW9k dWxlUGtnLmRlYw0KICAgVWVmaUNwdVBrZy9VZWZpQ3B1UGtnLmRlYw0KICAgVWVmaVBheWxvYWRQ a2cvVWVmaVBheWxvYWRQa2cuZGVjDQotDQogW0xpYnJhcnlDbGFzc2VzXQ0KICAgQmFzZU1lbW9y eUxpYg0KICAgRGVidWdMaWINCkBAIC02OSwxNCArNjIsMTIgQEANCiAgIGdVbml2ZXJzYWxQYXls b2FkQWNwaVRhYmxlR3VpZA0KICAgZ1VuaXZlcnNhbFBheWxvYWRQY2lSb290QnJpZGdlSW5mb0d1 aWQNCiAgIGdVbml2ZXJzYWxQYXlsb2FkU21iaW9zM1RhYmxlR3VpZA0KLQ0KKyAgZ1VuaXZlcnNh bFBheWxvYWRCYXNlR3VpZA0KKyAgZ1VuaXZlcnNhbFBheWxvYWREZXZpY2VUcmVlR3VpZA0KIFtG ZWF0dXJlUGNkLklBMzJdDQogICBnRWZpTWRlTW9kdWxlUGtnVG9rZW5TcGFjZUd1aWQuUGNkRHhl SXBsU3dpdGNoVG9Mb25nTW9kZSAgICAgICMjIENPTlNVTUVTDQotDQogW0ZlYXR1cmVQY2QuWDY0 XQ0KICAgZ0VmaU1kZU1vZHVsZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZER4ZUlwbEJ1aWxkUGFnZVRh YmxlcyAgICAgICAjIyBDT05TVU1FUw0KLQ0KLQ0KIFtQY2QuSUEzMixQY2QuWDY0XQ0KICAgZ1Vl ZmlQYXlsb2FkUGtnVG9rZW5TcGFjZUd1aWQuUGNkUGNkRHJpdmVyRmlsZQ0KICAgZ0VmaU1kZU1v ZHVsZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZFVzZTFHUGFnZVRhYmxlICAgICAgICAgICAgICAgICAg ICAgICMjIFNPTUVUSU1FU19DT05TVU1FUw0KQEAgLTg2LDEyICs3Nyw5IEBADQogICBnRWZpTWRl TW9kdWxlUGtnVG9rZW5TcGFjZUd1aWQuUGNkQ3B1U3RhY2tHdWFyZCAgICAgICAgICAgICAgICAg ICAgICAgIyMgQ09OU1VNRVMNCiAgIGdFZmlNZGVNb2R1bGVQa2dUb2tlblNwYWNlR3VpZC5QY2RH aGNiQmFzZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIyBDT05TVU1FUw0KICAgZ0VmaU1k ZU1vZHVsZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZEdoY2JTaXplICAgICAgICAgICAgICAgICAgICAg ICAgICAgICMjIENPTlNVTUVTDQotDQogICBnVWVmaVBheWxvYWRQa2dUb2tlblNwYWNlR3VpZC5Q Y2RQYXlsb2FkRmRNZW1CYXNlDQogICBnVWVmaVBheWxvYWRQa2dUb2tlblNwYWNlR3VpZC5QY2RQ YXlsb2FkRmRNZW1TaXplDQogICBnVWVmaVBheWxvYWRQa2dUb2tlblNwYWNlR3VpZC5QY2RTeXN0 ZW1NZW1vcnlVZWZpUmVnaW9uU2l6ZQ0KLQ0KICAgZ0VmaU1kZU1vZHVsZVBrZ1Rva2VuU3BhY2VH dWlkLlBjZFNldE54Rm9yU3RhY2sgICAgICAgICAgICAgICAjIyBTT01FVElNRVNfQ09OU1VNRVMN CiAgIGdFZmlNZGVNb2R1bGVQa2dUb2tlblNwYWNlR3VpZC5QY2REeGVOeE1lbW9yeVByb3RlY3Rp b25Qb2xpY3kgIyMgU09NRVRJTUVTX0NPTlNVTUVTDQogICBnRWZpTWRlTW9kdWxlUGtnVG9rZW5T cGFjZUd1aWQuUGNkSW1hZ2VQcm90ZWN0aW9uUG9saWN5ICAgICAgICMjIFNPTUVUSU1FU19DT05T VU1FUw0KLQ0KZGlmZiAtLWdpdCBhL1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkUGtnLmRzYyBi L1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkUGtnLmRzYw0KaW5kZXggMjg2MGE2NTlmNmE3Li43 NzlmNzRkYTcxNzEgMTAwNjQ0DQotLS0gYS9VZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZFBrZy5k c2MNCisrKyBiL1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkUGtnLmRzYw0KQEAgLTU1LDcgKzU1 LDcgQEANCiAgICMgRUxGOiBCdWlsZCBVbml2ZXJzYWxQYXlsb2FkIGZpbGUgYXMgVW5pdmVyc2Fs UGF5bG9hZC5lbGYNCiAgICMgRklUOiBCdWlsZCBVbml2ZXJzYWxQYXlsb2FkIGZpbGUgYXMgVW5p dmVyc2FsUGF5bG9hZC5maXQNCiAgICMNCi0gIERFRklORSBVTklWRVJTQUxfUEFZTE9BRCAgICAg ICAgICAgID0gRkFMU0UNCisgIERFRklORSBVTklWRVJTQUxfUEFZTE9BRCAgICAgICAgICAgID0g VFJVRQ0KICAgREVGSU5FIFVOSVZFUlNBTF9QQVlMT0FEX0ZPUk1BVCAgICAgPSBFTEYNCg0KICAg Iw0KQEAgLTIyNiw2ICsyMjYsNyBAQA0KICAgT3BlbnNzbExpYnxDcnlwdG9Qa2cvTGlicmFyeS9P cGVuc3NsTGliL09wZW5zc2xMaWIuaW5mDQogICBSbmdMaWJ8TWRlUGtnL0xpYnJhcnkvQmFzZVJu Z0xpYi9CYXNlUm5nTGliLmluZg0KICAgSG9iTGlifFVlZmlQYXlsb2FkUGtnL0xpYnJhcnkvRHhl SG9iTGliL0R4ZUhvYkxpYi5pbmYNCisgIEN1c3RvbUZkdE5vZGVQYXJzZXJMaWJ8VWVmaVBheWxv YWRQa2cvTGlicmFyeS9DdXN0b21GZHROb2RlUGFyc2VyTnVsbExpYi9DdXN0b21GZHROb2RlUGFy c2VyTnVsbExpYi5pbmYNCg0KICAgIw0KICAgIyBVRUZJICYgUEkNCkBAIC00NzAsNiArNDcxLDgg QEANCiAgIGdFZmlNZGVNb2R1bGVQa2dUb2tlblNwYWNlR3VpZC5QY2RWcGRCYXNlQWRkcmVzc3ww eDANCiAgIGdFZmlNZGVNb2R1bGVQa2dUb2tlblNwYWNlR3VpZC5QY2RTdGF0dXNDb2RlVXNlTWVt b3J5fEZBTFNFDQogICBnRWZpTWRlTW9kdWxlUGtnVG9rZW5TcGFjZUd1aWQuUGNkVXNlMUdQYWdl VGFibGV8VFJVRQ0KKyAgZ1VlZmlQYXlsb2FkUGtnVG9rZW5TcGFjZUd1aWQuUGNkSGFuZE9mZkZk dEVuYWJsZXxUUlVFDQorDQoNCiAgIGdFZmlNZGVNb2R1bGVQa2dUb2tlblNwYWNlR3VpZC5QY2RC b290TWFuYWdlck1lbnVGaWxlfHsgMHgyMSwgMHhhYSwgMHgyYywgMHg0NiwgMHgxNCwgMHg3Niwg MHgwMywgMHg0NSwgMHg4MywgMHg2ZSwgMHg4YSwgMHhiNiwgMHhmNCwgMHg2NiwgMHgyMywgMHgz MSB9DQogICBnVWVmaVBheWxvYWRQa2dUb2tlblNwYWNlR3VpZC5QY2RQY2REcml2ZXJGaWxlfHsg MHg1NywgMHg3MiwgMHhjZiwgMHg4MCwgMHhhYiwgMHg4NywgMHhmOSwgMHg0NywgMHhhMywgMHhm ZSwgMHhENSwgMHgwQiwgMHg3NiwgMHhkOCwgMHg5NSwgMHg0MSB9DQpAQCAtNTEzLDcgKzUxNiwx NSBAQA0KICFlbmRpZg0KICFlbmRpZg0KDQorDQogW1BjZHNQYXRjaGFibGVJbk1vZHVsZS5YNjRd DQorICAjDQorICAjIFRoZSBmb2xsb3dpbmcgcGFyYW1ldGVycyBhcmUgc2V0IGJ5IExpYnJhcnkv UGxhdGZvcm1Ib29rTGliDQorICAjDQorICBnRWZpTWRlTW9kdWxlUGtnVG9rZW5TcGFjZUd1aWQu UGNkU2VyaWFsVXNlTW1pb3xGQUxTRQ0KKyAgZ0VmaU1kZU1vZHVsZVBrZ1Rva2VuU3BhY2VHdWlk LlBjZFNlcmlhbFJlZ2lzdGVyQmFzZXwweDNGOA0KKyAgZ0VmaU1kZU1vZHVsZVBrZ1Rva2VuU3Bh Y2VHdWlkLlBjZFNlcmlhbEJhdWRSYXRlfCQoQkFVRF9SQVRFKQ0KKyAgZ0VmaU1kZU1vZHVsZVBr Z1Rva2VuU3BhY2VHdWlkLlBjZFNlcmlhbFJlZ2lzdGVyU3RyaWRlfDENCiAhaWYgJChORVRXT1JL X0RSSVZFUl9FTkFCTEUpID09IFRSVUUNCiAgIGdFZmlOZXR3b3JrUGtnVG9rZW5TcGFjZUd1aWQu UGNkQWxsb3dIdHRwQ29ubmVjdGlvbnN8VFJVRQ0KICFlbmRpZg0KQEAgLTYzNSw3ICs2NDYsMTMg QEANCiAgICAgIWlmICQoVU5JVkVSU0FMX1BBWUxPQURfRk9STUFUKSA9PSAiRUxGIg0KICAgICAg IFVlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkvVW5pdmVyc2FsUGF5bG9hZEVudHJ5Lmlu Zg0KICAgICAhZWxzZWlmICQoVU5JVkVSU0FMX1BBWUxPQURfRk9STUFUKSA9PSAiRklUIg0KLSAg ICAgIFVlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkvRml0VW5pdmVyc2FsUGF5bG9hZEVu dHJ5LmluZg0KKyAgICAgIFVlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkvRml0VW5pdmVy c2FsUGF5bG9hZEVudHJ5LmluZiB7DQorICAgICAgICA8TGlicmFyeUNsYXNzZXM+DQorICAgICAg ICAgIEZkdExpYnxNZGVQa2cvTGlicmFyeS9CYXNlRmR0TGliL0Jhc2VGZHRMaWIuaW5mDQorICAg ICAgICAgIEN1c3RvbUZkdE5vZGVQYXJzZXJMaWJ8VWVmaVBheWxvYWRQa2cvTGlicmFyeS9DdXN0 b21GZHROb2RlUGFyc2VyTGliL0N1c3RvbUZkdE5vZGVQYXJzZXJMaWIuaW5mDQorICAgICAgICAg IE5VTEx8VWVmaVBheWxvYWRQa2cvTGlicmFyeS9GZHRQYXJzZXJMaWIvRmR0UGFyc2VMaWIuaW5m DQorICAgICAgICAgIE5VTEx8VWVmaVBheWxvYWRQa2cvTGlicmFyeS9Ib2JQYXJzZUxpYi9Ib2JQ YXJzZUxpYi5pbmYNCisgICAgICB9DQogICAgICFlbHNlDQogICAgICAgVWVmaVBheWxvYWRQa2cv VWVmaVBheWxvYWRFbnRyeS9VZWZpUGF5bG9hZEVudHJ5LmluZg0KICAgICAhZW5kaWYNCkBAIC02 NDgsNyArNjY1LDEzIEBADQogICAgICFpZiAkKFVOSVZFUlNBTF9QQVlMT0FEX0ZPUk1BVCkgPT0g IkVMRiINCiAgICAgICBVZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5L1VuaXZlcnNhbFBh eWxvYWRFbnRyeS5pbmYNCiAgICAgIWVsc2VpZiAkKFVOSVZFUlNBTF9QQVlMT0FEX0ZPUk1BVCkg PT0gIkZJVCINCi0gICAgICBVZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5L0ZpdFVuaXZl cnNhbFBheWxvYWRFbnRyeS5pbmYNCisgICAgICBVZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVu dHJ5L0ZpdFVuaXZlcnNhbFBheWxvYWRFbnRyeS5pbmYgew0KKyAgICAgICAgPExpYnJhcnlDbGFz c2VzPg0KKyAgICAgICAgICBGZHRMaWJ8TWRlUGtnL0xpYnJhcnkvQmFzZUZkdExpYi9CYXNlRmR0 TGliLmluZg0KKyAgICAgICAgICBDdXN0b21GZHROb2RlUGFyc2VyTGlifFVlZmlQYXlsb2FkUGtn L0xpYnJhcnkvQ3VzdG9tRmR0Tm9kZVBhcnNlckxpYi9DdXN0b21GZHROb2RlUGFyc2VyTGliLmlu Zg0KKyAgICAgICAgICBOVUxMfFVlZmlQYXlsb2FkUGtnL0xpYnJhcnkvRmR0UGFyc2VyTGliL0Zk dFBhcnNlTGliLmluZg0KKyAgICAgICAgICBOVUxMfFVlZmlQYXlsb2FkUGtnL0xpYnJhcnkvSG9i UGFyc2VMaWIvSG9iUGFyc2VMaWIuaW5mDQorICAgICAgfQ0KICAgICAhZWxzZQ0KICAgICAgIFVl ZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkvVWVmaVBheWxvYWRFbnRyeS5pbmYNCiAgICAg IWVuZGlmDQotLQ0KMi4zOS4yLndpbmRvd3MuMQ0KDQoNCi0tDQpUaGFua3MhDQo9RA0KDQoNCi0t DQpUaGFua3MhDQo9RA0KDQoKLT0tPS09LT0tPS09LT0tPS09LT0tPS0KR3JvdXBzLmlvIExpbmtz OiBZb3UgcmVjZWl2ZSBhbGwgbWVzc2FnZXMgc2VudCB0byB0aGlzIGdyb3VwLgpWaWV3L1JlcGx5 IE9ubGluZSAoIzExOTQ2NCk6IGh0dHBzOi8vZWRrMi5ncm91cHMuaW8vZy9kZXZlbC9tZXNzYWdl LzExOTQ2NApNdXRlIFRoaXMgVG9waWM6IGh0dHBzOi8vZ3JvdXBzLmlvL210LzEwNjQ1NTE2OC83 Njg2MTc2Ckdyb3VwIE93bmVyOiBkZXZlbCtvd25lckBlZGsyLmdyb3Vwcy5pbwpVbnN1YnNjcmli ZTogaHR0cHM6Ly9lZGsyLmdyb3Vwcy5pby9nL2RldmVsL3Vuc3ViIFtyZWJlY2NhQG9wZW5mdy5p b10KLT0tPS09LT0tPS09LT0tPS09LT0tPS0KCg0K --_000_PH7PR11MB5888A233D830EAB6C3996487FCF92PH7PR11MB5888namp_ Content-Type: text/html; charset="utf-8" Content-Transfer-Encoding: base64 PGh0bWwgeG1sbnM6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiIHhtbG5zOm89InVy bjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZSIgeG1sbnM6dz0idXJuOnNjaGVt YXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6d29yZCIgeG1sbnM6bT0iaHR0cDovL3NjaGVtYXMubWlj cm9zb2Z0LmNvbS9vZmZpY2UvMjAwNC8xMi9vbW1sIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv VFIvUkVDLWh0bWw0MCI+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIg Y29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjxtZXRhIG5hbWU9IkdlbmVyYXRv ciIgY29udGVudD0iTWljcm9zb2Z0IFdvcmQgMTUgKGZpbHRlcmVkIG1lZGl1bSkiPg0KPHN0eWxl PjwhLS0NCi8qIEZvbnQgRGVmaW5pdGlvbnMgKi8NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6 V2luZ2RpbmdzOw0KCXBhbm9zZS0xOjUgMCAwIDAgMCAwIDAgMCAwIDA7fQ0KQGZvbnQtZmFjZQ0K CXtmb250LWZhbWlseTpQTWluZ0xpVTsNCglwYW5vc2UtMToyIDIgNSAwIDAgMCAwIDAgMCAwO30N CkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6IkNhbWJyaWEgTWF0aCI7DQoJcGFub3NlLTE6MiA0 IDUgMyA1IDQgNiAzIDIgNDt9DQpAZm9udC1mYWNlDQoJe2ZvbnQtZmFtaWx5OkNhbGlicmk7DQoJ cGFub3NlLTE6MiAxNSA1IDIgMiAyIDQgMyAyIDQ7fQ0KQGZvbnQtZmFjZQ0KCXtmb250LWZhbWls eTpBcHRvczt9DQpAZm9udC1mYWNlDQoJe2ZvbnQtZmFtaWx5OiJcQFBNaW5nTGlVIjsNCglwYW5v c2UtMToyIDEgNiAxIDAgMSAxIDEgMSAxO30NCi8qIFN0eWxlIERlZmluaXRpb25zICovDQpwLk1z b05vcm1hbCwgbGkuTXNvTm9ybWFsLCBkaXYuTXNvTm9ybWFsDQoJe21hcmdpbjowaW47DQoJZm9u dC1zaXplOjEyLjBwdDsNCglmb250LWZhbWlseToiQXB0b3MiLHNhbnMtc2VyaWY7fQ0KYTpsaW5r LCBzcGFuLk1zb0h5cGVybGluaw0KCXttc28tc3R5bGUtcHJpb3JpdHk6OTk7DQoJY29sb3I6Ymx1 ZTsNCgl0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO30NCnNwYW4uZ21haWxzaWduYXR1cmVwcmVm aXgNCgl7bXNvLXN0eWxlLW5hbWU6Z21haWxfc2lnbmF0dXJlX3ByZWZpeDt9DQpzcGFuLkVtYWls U3R5bGUxOQ0KCXttc28tc3R5bGUtdHlwZTpwZXJzb25hbC1yZXBseTsNCglmb250LWZhbWlseToi QXB0b3MiLHNhbnMtc2VyaWY7DQoJY29sb3I6d2luZG93dGV4dDt9DQouTXNvQ2hwRGVmYXVsdA0K CXttc28tc3R5bGUtdHlwZTpleHBvcnQtb25seTt9DQpAcGFnZSBXb3JkU2VjdGlvbjENCgl7c2l6 ZTo4LjVpbiAxMS4waW47DQoJbWFyZ2luOjEuMGluIDEuMGluIDEuMGluIDEuMGluO30NCmRpdi5X b3JkU2VjdGlvbjENCgl7cGFnZTpXb3JkU2VjdGlvbjE7fQ0KLyogTGlzdCBEZWZpbml0aW9ucyAq Lw0KQGxpc3QgbDANCgl7bXNvLWxpc3QtaWQ6OTYxNzYzMjM0Ow0KCW1zby1saXN0LXRlbXBsYXRl LWlkczoxOTkyMjE5NzMwO30NCkBsaXN0IGwwOmxldmVsMQ0KCXttc28tbGV2ZWwtbnVtYmVyLWZv cm1hdDpidWxsZXQ7DQoJbXNvLWxldmVsLXRleHQ674K3Ow0KCW1zby1sZXZlbC10YWItc3RvcDou NWluOw0KCW1zby1sZXZlbC1udW1iZXItcG9zaXRpb246bGVmdDsNCgl0ZXh0LWluZGVudDotLjI1 aW47DQoJbXNvLWFuc2ktZm9udC1zaXplOjEwLjBwdDsNCglmb250LWZhbWlseTpTeW1ib2w7fQ0K QGxpc3QgbDA6bGV2ZWwyDQoJe21zby1sZXZlbC1udW1iZXItZm9ybWF0OmJ1bGxldDsNCgltc28t bGV2ZWwtdGV4dDpvOw0KCW1zby1sZXZlbC10YWItc3RvcDoxLjBpbjsNCgltc28tbGV2ZWwtbnVt YmVyLXBvc2l0aW9uOmxlZnQ7DQoJdGV4dC1pbmRlbnQ6LS4yNWluOw0KCW1zby1hbnNpLWZvbnQt c2l6ZToxMC4wcHQ7DQoJZm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3IjsNCgltc28tYmlkaS1mb250 LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjt9DQpAbGlzdCBsMDpsZXZlbDMNCgl7bXNvLWxldmVs LW51bWJlci1mb3JtYXQ6YnVsbGV0Ow0KCW1zby1sZXZlbC10ZXh0Ou+CpzsNCgltc28tbGV2ZWwt dGFiLXN0b3A6MS41aW47DQoJbXNvLWxldmVsLW51bWJlci1wb3NpdGlvbjpsZWZ0Ow0KCXRleHQt aW5kZW50Oi0uMjVpbjsNCgltc28tYW5zaS1mb250LXNpemU6MTAuMHB0Ow0KCWZvbnQtZmFtaWx5 OldpbmdkaW5nczt9DQpAbGlzdCBsMDpsZXZlbDQNCgl7bXNvLWxldmVsLW51bWJlci1mb3JtYXQ6 YnVsbGV0Ow0KCW1zby1sZXZlbC10ZXh0Ou+CpzsNCgltc28tbGV2ZWwtdGFiLXN0b3A6Mi4waW47 DQoJbXNvLWxldmVsLW51bWJlci1wb3NpdGlvbjpsZWZ0Ow0KCXRleHQtaW5kZW50Oi0uMjVpbjsN Cgltc28tYW5zaS1mb250LXNpemU6MTAuMHB0Ow0KCWZvbnQtZmFtaWx5OldpbmdkaW5nczt9DQpA bGlzdCBsMDpsZXZlbDUNCgl7bXNvLWxldmVsLW51bWJlci1mb3JtYXQ6YnVsbGV0Ow0KCW1zby1s ZXZlbC10ZXh0Ou+CpzsNCgltc28tbGV2ZWwtdGFiLXN0b3A6Mi41aW47DQoJbXNvLWxldmVsLW51 bWJlci1wb3NpdGlvbjpsZWZ0Ow0KCXRleHQtaW5kZW50Oi0uMjVpbjsNCgltc28tYW5zaS1mb250 LXNpemU6MTAuMHB0Ow0KCWZvbnQtZmFtaWx5OldpbmdkaW5nczt9DQpAbGlzdCBsMDpsZXZlbDYN Cgl7bXNvLWxldmVsLW51bWJlci1mb3JtYXQ6YnVsbGV0Ow0KCW1zby1sZXZlbC10ZXh0Ou+CpzsN Cgltc28tbGV2ZWwtdGFiLXN0b3A6My4waW47DQoJbXNvLWxldmVsLW51bWJlci1wb3NpdGlvbjps ZWZ0Ow0KCXRleHQtaW5kZW50Oi0uMjVpbjsNCgltc28tYW5zaS1mb250LXNpemU6MTAuMHB0Ow0K CWZvbnQtZmFtaWx5OldpbmdkaW5nczt9DQpAbGlzdCBsMDpsZXZlbDcNCgl7bXNvLWxldmVsLW51 bWJlci1mb3JtYXQ6YnVsbGV0Ow0KCW1zby1sZXZlbC10ZXh0Ou+CpzsNCgltc28tbGV2ZWwtdGFi LXN0b3A6My41aW47DQoJbXNvLWxldmVsLW51bWJlci1wb3NpdGlvbjpsZWZ0Ow0KCXRleHQtaW5k ZW50Oi0uMjVpbjsNCgltc28tYW5zaS1mb250LXNpemU6MTAuMHB0Ow0KCWZvbnQtZmFtaWx5Oldp bmdkaW5nczt9DQpAbGlzdCBsMDpsZXZlbDgNCgl7bXNvLWxldmVsLW51bWJlci1mb3JtYXQ6YnVs bGV0Ow0KCW1zby1sZXZlbC10ZXh0Ou+CpzsNCgltc28tbGV2ZWwtdGFiLXN0b3A6NC4waW47DQoJ bXNvLWxldmVsLW51bWJlci1wb3NpdGlvbjpsZWZ0Ow0KCXRleHQtaW5kZW50Oi0uMjVpbjsNCglt c28tYW5zaS1mb250LXNpemU6MTAuMHB0Ow0KCWZvbnQtZmFtaWx5OldpbmdkaW5nczt9DQpAbGlz dCBsMDpsZXZlbDkNCgl7bXNvLWxldmVsLW51bWJlci1mb3JtYXQ6YnVsbGV0Ow0KCW1zby1sZXZl bC10ZXh0Ou+CpzsNCgltc28tbGV2ZWwtdGFiLXN0b3A6NC41aW47DQoJbXNvLWxldmVsLW51bWJl ci1wb3NpdGlvbjpsZWZ0Ow0KCXRleHQtaW5kZW50Oi0uMjVpbjsNCgltc28tYW5zaS1mb250LXNp emU6MTAuMHB0Ow0KCWZvbnQtZmFtaWx5OldpbmdkaW5nczt9DQpvbA0KCXttYXJnaW4tYm90dG9t OjBpbjt9DQp1bA0KCXttYXJnaW4tYm90dG9tOjBpbjt9DQotLT48L3N0eWxlPjwhLS1baWYgZ3Rl IG1zbyA5XT48eG1sPg0KPG86c2hhcGVkZWZhdWx0cyB2OmV4dD0iZWRpdCIgc3BpZG1heD0iMTAy NiIgLz4NCjwveG1sPjwhW2VuZGlmXS0tPjwhLS1baWYgZ3RlIG1zbyA5XT48eG1sPg0KPG86c2hh cGVsYXlvdXQgdjpleHQ9ImVkaXQiPg0KPG86aWRtYXAgdjpleHQ9ImVkaXQiIGRhdGE9IjEiIC8+ DQo8L286c2hhcGVsYXlvdXQ+PC94bWw+PCFbZW5kaWZdLS0+DQo8L2hlYWQ+DQo8Ym9keSBsYW5n PSJFTi1VUyIgbGluaz0iYmx1ZSIgdmxpbms9InB1cnBsZSIgc3R5bGU9IndvcmQtd3JhcDpicmVh ay13b3JkIj4NCjxkaXYgY2xhc3M9IldvcmRTZWN0aW9uMSI+DQo8cCBjbGFzcz0iTXNvTm9ybWFs Ij48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdCI+SGkgRGhhdmFsPG86cD48L286cD48L3Nw YW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4w cHQiPlllcyAsIGFsbCBjaGVja3MgaGF2ZSBiZWVuIHBhc3NlZC48bzpwPjwvbzpwPjwvc3Bhbj48 L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdCI+ UGxlYXNlIHJlZmVyIHRvIHRoZSBQUi0gPG86cD4NCjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFz cz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdCI+PG86cD4mbmJzcDs8 L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQt c2l6ZToxMS4wcHQiPjxhIGhyZWY9Imh0dHBzOi8vZ2l0aHViLmNvbS90aWFub2NvcmUvZWRrMi9w dWxsLzU2NjkiPmh0dHBzOi8vZ2l0aHViLmNvbS90aWFub2NvcmUvZWRrMi9wdWxsLzU2Njk8L2E+ PC9zcGFuPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0Ij48bzpwPjwvbzpwPjwvc3Bhbj48 L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdCI+ PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4g c3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQiPlRoYW5rczxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxw IGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0Ij48bzpwPiZu YnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0i Zm9udC1zaXplOjExLjBwdCI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0KPGRpdiBzdHls ZT0iYm9yZGVyOm5vbmU7Ym9yZGVyLXRvcDpzb2xpZCAjRTFFMUUxIDEuMHB0O3BhZGRpbmc6My4w cHQgMGluIDBpbiAwaW4iPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PGI+PHNwYW4gc3R5bGU9ImZv bnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OyxzYW5zLXNlcmlm Ij5Gcm9tOjwvc3Bhbj48L2I+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1p bHk6JnF1b3Q7Q2FsaWJyaSZxdW90OyxzYW5zLXNlcmlmIj4gRGhhdmFsIFNoYXJtYSAmbHQ7ZGhh dmFsQHJpdm9zaW5jLmNvbSZndDsNCjxicj4NCjxiPlNlbnQ6PC9iPiBXZWRuZXNkYXksIEp1bmUg NSwgMjAyNCAxOjE4IEFNPGJyPg0KPGI+VG86PC9iPiBMaXUsIExpbnVzICZsdDtsaW51cy5saXVA aW50ZWwuY29tJmd0Ozxicj4NCjxiPkNjOjwvYj4gZGV2ZWxAZWRrMi5ncm91cHMuaW87IExpbiwg QmVubnkgJmx0O2Jlbm55LmxpbkBpbnRlbC5jb20mZ3Q7OyBHdW8sIEd1YSAmbHQ7Z3VhLmd1b0Bp bnRlbC5jb20mZ3Q7OyBDaGl1LCBDaGFzZWwgJmx0O2NoYXNlbC5jaGl1QGludGVsLmNvbSZndDs7 IEx1LCBKYW1lcyAmbHQ7amFtZXMubHVAaW50ZWwuY29tJmd0Ozxicj4NCjxiPlN1YmplY3Q6PC9i PiBSZTogW1BBVENIIHY0IDYvNl0gVWVmaVBheWxvYWRQa2c6IFVwZGF0ZSBVZWZpUGF5bG9hZCBk cml2ZXIgZm9yIEZEVCBzdXBwb3J0LjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPHAg Y2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48L3A+DQo8ZGl2Pg0KPHAgY2xhc3M9 Ik1zb05vcm1hbCI+SSBhbHNvIGJlbGlldmUmbmJzcDt0aGlzIGNvZGUgbmVlZHMgdG8gZ28gdGhy b3VnaCBjcnVzdGlmeSBldGMgdG8gZW5zdXJlIGl0IGZvbGxvd3MgYWxsIGVkazIgc3RhbmRhcmRz PzxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48bzpwPiZuYnNw OzwvbzpwPjwvcD4NCjxkaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+T24gTW9uLCBK dW4gMywgMjAyNCBhdCA0OjU3PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0FyaWFsJnF1 b3Q7LHNhbnMtc2VyaWYiPuKArzwvc3Bhbj5QTSBEaGF2YWwgU2hhcm1hICZsdDs8YSBocmVmPSJt YWlsdG86ZGhhdmFsQHJpdm9zaW5jLmNvbSI+ZGhhdmFsQHJpdm9zaW5jLmNvbTwvYT4mZ3Q7IHdy b3RlOjxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8YmxvY2txdW90ZSBzdHlsZT0iYm9yZGVyOm5v bmU7Ym9yZGVyLWxlZnQ6c29saWQgI0NDQ0NDQyAxLjBwdDtwYWRkaW5nOjBpbiAwaW4gMGluIDYu MHB0O21hcmdpbi1sZWZ0OjQuOHB0O21hcmdpbi1yaWdodDowaW4iPg0KPGRpdj4NCjxwIGNsYXNz PSJNc29Ob3JtYWwiPkJ1aWxkRml0TG9hZGFibGVzRnZIb2I6PG86cD48L286cD48L3A+DQo8ZGl2 Pg0KPHVsIHR5cGU9ImRpc2MiPg0KPGxpIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFy Z2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0bzttc28tbGlzdDpsMCBs ZXZlbDEgbGZvMSI+DQpGZHQgdmFyaWFibGUgaXMgbm90IGluaXRpYWxpemVkLjxvOnA+PC9vOnA+ PC9saT48bGkgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRv O21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvO21zby1saXN0OmwwIGxldmVsMSBsZm8xIj4NCkl0 IE9OTFkgZ2V0cyBpbml0aWFsaXplZCZuYnNwO2lmIEd1aWRIb2IgaXMgZm91bmQuIFdoYXQgaWYg aXQgaXMgbm90IGZvdW5kPzxvOnA+PC9vOnA+PC9saT48bGkgY2xhc3M9Ik1zb05vcm1hbCIgc3R5 bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvO21z by1saXN0OmwwIGxldmVsMSBsZm8xIj4NCkZkdENoZWNrSGVhZGVyIHN0aWxsIGV2YWx1YXRpbmcg aXQ/PG86cD48L286cD48L2xpPjwvdWw+DQo8L2Rpdj4NCjwvZGl2Pg0KPHAgY2xhc3M9Ik1zb05v cm1hbCI+PG86cD4mbmJzcDs8L286cD48L3A+DQo8ZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29O b3JtYWwiPk9uIE1vbiwgSnVuIDMsIDIwMjQgYXQgNzo0OTxzcGFuIHN0eWxlPSJmb250LWZhbWls eTomcXVvdDtBcmlhbCZxdW90OyxzYW5zLXNlcmlmIj7igK88L3NwYW4+QU0gTGludXMgTGl1ICZs dDs8YSBocmVmPSJtYWlsdG86bGludXMubGl1QGludGVsLmNvbSIgdGFyZ2V0PSJfYmxhbmsiPmxp bnVzLmxpdUBpbnRlbC5jb208L2E+Jmd0OyB3cm90ZTo8bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0K PGJsb2NrcXVvdGUgc3R5bGU9ImJvcmRlcjpub25lO2JvcmRlci1sZWZ0OnNvbGlkICNDQ0NDQ0Mg MS4wcHQ7cGFkZGluZzowaW4gMGluIDBpbiA2LjBwdDttYXJnaW4tbGVmdDo0LjhwdDttYXJnaW4t cmlnaHQ6MGluIj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tYm90dG9tOjEy LjBwdCI+QWRkIEZEVCBkZXRlY3Rpb24gYW5kIGNvbXN1bWUgRkRUIHdoZW4gbmVlZGVkLjxicj4N Ck1vdmUgc29tZSB4ODYgc3BlY2lmaWMgZnVuY3Rpb24gaW4gdGhlIHg4NiBmb2xkZXIuPGJyPg0K Q3JlYXRlIEhhbmRPZmZIb2IgdmlhIEZEVCBtZW1vcnkgbm9kZS48YnI+DQo8YnI+DQpDYzogQmVu bnkgTGluICZsdDs8YSBocmVmPSJtYWlsdG86YmVubnkubGluQGludGVsLmNvbSIgdGFyZ2V0PSJf YmxhbmsiPmJlbm55LmxpbkBpbnRlbC5jb208L2E+Jmd0Ozxicj4NCkNjOiBHdWEgR3VvICZsdDs8 YSBocmVmPSJtYWlsdG86Z3VhLmd1b0BpbnRlbC5jb20iIHRhcmdldD0iX2JsYW5rIj5ndWEuZ3Vv QGludGVsLmNvbTwvYT4mZ3Q7PGJyPg0KQ2M6IENoYXNlbCBDaGl1ICZsdDs8YSBocmVmPSJtYWls dG86Y2hhc2VsLmNoaXVAaW50ZWwuY29tIiB0YXJnZXQ9Il9ibGFuayI+Y2hhc2VsLmNoaXVAaW50 ZWwuY29tPC9hPiZndDs8YnI+DQpDYzogSmFtZXMgTHUgJmx0OzxhIGhyZWY9Im1haWx0bzpqYW1l cy5sdUBpbnRlbC5jb20iIHRhcmdldD0iX2JsYW5rIj5qYW1lcy5sdUBpbnRlbC5jb208L2E+Jmd0 Ozxicj4NCkNjOiBEaGF2YWwgU2hhcm1hICZsdDs8YSBocmVmPSJtYWlsdG86ZGhhdmFsQHJpdm9z aW5jLmNvbSIgdGFyZ2V0PSJfYmxhbmsiPmRoYXZhbEByaXZvc2luYy5jb208L2E+Jmd0Ozxicj4N Cjxicj4NClNpZ25lZC1vZmYtYnk6IExpbnVzIExpdSAmbHQ7PGEgaHJlZj0ibWFpbHRvOmxpbnVz LmxpdUBpbnRlbC5jb20iIHRhcmdldD0iX2JsYW5rIj5saW51cy5saXVAaW50ZWwuY29tPC9hPiZn dDs8YnI+DQotLS08YnI+DQombmJzcDtVZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5L0Zp dFVuaXZlcnNhbFBheWxvYWRFbnRyeS5jJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwO3wgNDI4ICsrKysrKysrKy0tLS0tLS0tLS0tPGJyPg0KJm5i c3A7VWVmaVBheWxvYWRQa2cvVWVmaVBheWxvYWRFbnRyeS9JYTMyL0R4ZUxvYWRGdW5jLmMmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwO3wmbmJzcDsgMTIgKzxicj4NCiZuYnNwO1VlZmlQYXlsb2Fk UGtnL1VlZmlQYXlsb2FkRW50cnkvSWEzMi97RHhlTG9hZEZ1bmMuYyA9Jmd0OyBEeGVMb2FkRnVu Y0ZpdC5jfSB8Jm5ic3A7IDMyICstPGJyPg0KJm5ic3A7VWVmaVBheWxvYWRQa2cvVWVmaVBheWxv YWRFbnRyeS9NZW1vcnlBbGxvY2F0aW9uLmMmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwO3wmbmJz cDsgNTAgKysrPGJyPg0KJm5ic3A7VWVmaVBheWxvYWRQa2cvVWVmaVBheWxvYWRFbnRyeS9Qcmlu dEhvYi5jJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7fCZuYnNwOyAmbmJzcDs2ICstPGJyPg0KJm5ic3A7VWVmaVBheWxvYWRQa2cvVWVmaVBheWxv YWRFbnRyeS9Vbml2ZXJzYWxQYXlsb2FkRW50cnkuYyZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IHwmbmJzcDsgJm5ic3A7NiAtPGJy Pg0KJm5ic3A7VWVmaVBheWxvYWRQa2cvVWVmaVBheWxvYWRFbnRyeS9YNjQvRHhlTG9hZEZ1bmMu YyZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IHwmbmJzcDsgMTIgKzxicj4NCiZuYnNwO1VlZmlQ YXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkvWDY0L3tEeGVMb2FkRnVuYy5jID0mZ3Q7IER4ZUxv YWRGdW5jRml0LmN9Jm5ic3A7IHwmbmJzcDsgMzEgKy08YnI+DQombmJzcDtVZWZpUGF5bG9hZFBr Zy9VZWZpUGF5bG9hZEVudHJ5L0ZpdFVuaXZlcnNhbFBheWxvYWRFbnRyeS5pbmYmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDt8Jm5ic3A7IDIwICstPGJyPg0K Jm5ic3A7VWVmaVBheWxvYWRQa2cvVWVmaVBheWxvYWRFbnRyeS9VZWZpUGF5bG9hZEVudHJ5Lmgm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwO3wmbmJzcDsgNjggKysrKzxicj4NCiZuYnNwO1VlZmlQ YXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkvVW5pdmVyc2FsUGF5bG9hZEVudHJ5LmluZiZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgfCZuYnNw OyAxNiArLTxicj4NCiZuYnNwO1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkUGtnLmRzYyZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgfCZuYnNwOyAyOSArLTxicj4NCiZuYnNwOzEyIGZpbGVzIGNo YW5nZWQsIDQ0MyBpbnNlcnRpb25zKCspLCAyNjcgZGVsZXRpb25zKC0pPGJyPg0KPGJyPg0KZGlm ZiAtLWdpdCBhL1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkvRml0VW5pdmVyc2FsUGF5 bG9hZEVudHJ5LmMgYi9VZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5L0ZpdFVuaXZlcnNh bFBheWxvYWRFbnRyeS5jPGJyPg0KaW5kZXggZWIwYjMyNTM2OWEwLi44MTNkNjU2OTUwZDEgMTAw NjQ0PGJyPg0KLS0tIGEvVWVmaVBheWxvYWRQa2cvVWVmaVBheWxvYWRFbnRyeS9GaXRVbml2ZXJz YWxQYXlsb2FkRW50cnkuYzxicj4NCisrKyBiL1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50 cnkvRml0VW5pdmVyc2FsUGF5bG9hZEVudHJ5LmM8YnI+DQpAQCAtNiw2ICs2LDggQEA8YnI+DQom bmJzcDsjaW5jbHVkZSAmcXVvdDtVZWZpUGF5bG9hZEVudHJ5LmgmcXVvdDs8YnI+DQombmJzcDsj aW5jbHVkZSAmbHQ7TGlicmFyeS9GZHRMaWIuaCZndDs8YnI+DQombmJzcDsjaW5jbHVkZSAmbHQ7 R3VpZC9Vbml2ZXJzYWxQYXlsb2FkQmFzZS5oJmd0Ozxicj4NCisjaW5jbHVkZSAmbHQ7R3VpZC9N ZW1vcnlUeXBlSW5mb3JtYXRpb24uaCZndDs8YnI+DQorI2luY2x1ZGUgJmx0O0xpYnJhcnkvRmR0 UGFyc2VyTGliLmgmZ3Q7PGJyPg0KPGJyPg0KJm5ic3A7I2RlZmluZSBNRU1PUllfQVRUUklCVVRF X01BU0smbmJzcDsgKEVGSV9SRVNPVVJDRV9BVFRSSUJVVEVfUFJFU0VOVCZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwO3wmbmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgXDxicj4NCiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgRUZJX1JFU09VUkNFX0FUVFJJ QlVURV9JTklUSUFMSVpFRCZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDt8IFw8YnI+ DQpAQCAtMjMsNiArMjUsMTUgQEA8YnI+DQombmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IEVGSV9S RVNPVVJDRV9BVFRSSUJVVEVfSU5JVElBTElaRUQgfCBcPGJyPg0KJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyBFRklfUkVTT1VSQ0VfQVRUUklCVVRFX1RFU1RFRCZuYnNwOyAmbmJzcDsgJm5ic3A7 ICk8YnI+DQo8YnI+DQorRUZJX01FTU9SWV9UWVBFX0lORk9STUFUSU9OJm5ic3A7IG1EZWZhdWx0 TWVtb3J5VHlwZUluZm9ybWF0aW9uW10gPSB7PGJyPg0KKyZuYnNwOyB7IEVmaUFDUElSZWNsYWlt TWVtb3J5LCZuYnNwOyAmbmJzcDtGaXhlZFBjZEdldDMyIChQY2RNZW1vcnlUeXBlRWZpQUNQSVJl Y2xhaW1NZW1vcnkpJm5ic3A7ICZuYnNwO30sPGJyPg0KKyZuYnNwOyB7IEVmaUFDUElNZW1vcnlO VlMsJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7Rml4ZWRQY2RHZXQzMiAoUGNkTWVtb3J5VHlw ZUVmaUFDUElNZW1vcnlOVlMpJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7fSw8YnI+DQorJm5i c3A7IHsgRWZpUmVzZXJ2ZWRNZW1vcnlUeXBlLCZuYnNwOyBGaXhlZFBjZEdldDMyIChQY2RNZW1v cnlUeXBlRWZpUmVzZXJ2ZWRNZW1vcnlUeXBlKSZuYnNwOyB9LDxicj4NCismbmJzcDsgeyBFZmlS dW50aW1lU2VydmljZXNEYXRhLCBGaXhlZFBjZEdldDMyIChQY2RNZW1vcnlUeXBlRWZpUnVudGlt ZVNlcnZpY2VzRGF0YSkgfSw8YnI+DQorJm5ic3A7IHsgRWZpUnVudGltZVNlcnZpY2VzQ29kZSwg Rml4ZWRQY2RHZXQzMiAoUGNkTWVtb3J5VHlwZUVmaVJ1bnRpbWVTZXJ2aWNlc0NvZGUpIH0sPGJy Pg0KKyZuYnNwOyB7IEVmaU1heE1lbW9yeVR5cGUsJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7 MCZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDt9PGJyPg0KK307PGJyPg0KKzxicj4NCiZuYnNwO2V4dGVybiBWT0lEJm5ic3A7 ICptSG9iTGlzdDs8YnI+DQo8YnI+DQombmJzcDtDSEFSOCZuYnNwOyAqbUxpbmVCdWZmZXIgPSBO VUxMOzxicj4NCkBAIC0zNiw2ICs0Nyw3OCBAQCBQcmludEhvYiAoPGJyPg0KJm5ic3A7ICZuYnNw O0lOIENPTlNUIFZPSUQmbmJzcDsgKkhvYlN0YXJ0PGJyPg0KJm5ic3A7ICZuYnNwOyk7PGJyPg0K PGJyPg0KKy8qKjxicj4NCismbmJzcDsgQWRkIEhPQiBpbnRvIEhPQiBsaXN0PGJyPg0KKyZuYnNw OyBAcGFyYW1baW5dJm5ic3A7IEhvYiZuYnNwOyAmbmJzcDsgVGhlIEhPQiB0byBiZSBhZGRlZCBp bnRvIHRoZSBIT0IgbGlzdC48YnI+DQorKiovPGJyPg0KK1ZPSUQ8YnI+DQorQWRkTmV3SG9iICg8 YnI+DQorJm5ic3A7IElOIEVGSV9QRUlfSE9CX1BPSU5URVJTJm5ic3A7ICpIb2I8YnI+DQorJm5i c3A7ICk7PGJyPg0KKzxicj4NCisvKio8YnI+DQorJm5ic3A7IEZvdW5kIHRoZSBSZXNvdXJjZSBE ZXNjcmlwdG9yIEhPQiB0aGF0IGNvbnRhaW5zIGEgcmFuZ2UgKEJhc2UsIFRvcCk8YnI+DQorJm5i c3A7IEBwYXJhbVtpbl0gSG9iTGlzdCZuYnNwOyAmbmJzcDsgSG9iIHN0YXJ0IGFkZHJlc3M8YnI+ DQorJm5ic3A7IEBwYXJhbVtpbl0gQmFzZSZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwO01lbW9y eSBzdGFydCBhZGRyZXNzPGJyPg0KKyZuYnNwOyBAcGFyYW1baW5dIFRvcCZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyBNZW1vcnkgZW5kIGFkZHJlc3MuPGJyPg0KKyZuYnNwOyBAcmV0dmFsJm5i c3A7ICZuYnNwOyAmbmJzcDtUaGUgcG9pbnRlciB0byB0aGUgUmVzb3VyY2UgRGVzY3JpcHRvciBI T0IuPGJyPg0KKyoqLzxicj4NCitFRklfSE9CX1JFU09VUkNFX0RFU0NSSVBUT1IgKjxicj4NCitG aW5kUmVzb3VyY2VEZXNjcmlwdG9yQnlSYW5nZSAoPGJyPg0KKyZuYnNwOyBJTiBWT0lEJm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg KkhvYkxpc3QsPGJyPg0KKyZuYnNwOyBJTiBFRklfUEhZU0lDQUxfQUREUkVTUyZuYnNwOyBCYXNl LDxicj4NCismbmJzcDsgSU4gRUZJX1BIWVNJQ0FMX0FERFJFU1MmbmJzcDsgVG9wPGJyPg0KKyZu YnNwOyApOzxicj4NCis8YnI+DQorLyoqPGJyPg0KKyZuYnNwOyBGaW5kIHRoZSBoaWdoZXN0IGJl bG93IDRHIG1lbW9yeSByZXNvdXJjZSBkZXNjcmlwdG9yLCBleGNlcHQgdGhlIGlucHV0IFJlc291 cmNlIERlc2NyaXB0b3IuPGJyPg0KKyZuYnNwOyBAcGFyYW1baW5dIEhvYkxpc3QmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwO0hvYiBz dGFydCBhZGRyZXNzPGJyPg0KKyZuYnNwOyBAcGFyYW1baW5dIE1pbmltYWxOZWVkZWRTaXplJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7TWluaW1hbCBuZWVkZWQgc2l6ZS48YnI+DQorJm5ic3A7 IEBwYXJhbVtpbl0gRXhjZXB0UmVzb3VyY2VIb2ImbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDtJ Z25vcmUgdGhpcyBSZXNvdXJjZSBEZXNjcmlwdG9yLjxicj4NCismbmJzcDsgQHJldHZhbCZuYnNw OyAmbmJzcDsgJm5ic3A7VGhlIHBvaW50ZXIgdG8gdGhlIFJlc291cmNlIERlc2NyaXB0b3IgSE9C Ljxicj4NCisqKi88YnI+DQorRUZJX0hPQl9SRVNPVVJDRV9ERVNDUklQVE9SICo8YnI+DQorRmlu ZEFub3RoZXJIaWdoZXN0QmVsb3c0R1Jlc291cmNlRGVzY3JpcHRvciAoPGJyPg0KKyZuYnNwOyBJ TiBWT0lEJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7KkhvYkxpc3QsPGJyPg0KKyZu YnNwOyBJTiBVSU5UTiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IE1pbmltYWxOZWVkZWRTaXpl LDxicj4NCismbmJzcDsgSU4gRUZJX0hPQl9SRVNPVVJDRV9ERVNDUklQVE9SJm5ic3A7ICpFeGNl cHRSZXNvdXJjZUhvYjxicj4NCismbmJzcDsgKTs8YnI+DQorPGJyPg0KKy8qKjxicj4NCismbmJz cDsgQ2hlY2sgdGhlIEhPQiBhbmQgZGVjaWRlIGlmIGl0IGlzIG5lZWQgaW5zaWRlIFBheWxvYWQ8 YnI+DQorJm5ic3A7IFBheWxvYWQgbWFpbnRhaW5lciBtYXkgbWFrZSBkZWNpc2lvbiB3aGljaCBI T0IgaXMgbmVlZCBvciBuZWVkbid0PGJyPg0KKyZuYnNwOyBUaGVuIGFkZCB0aGUgY2hlY2sgbG9n aWMgaW4gdGhlIGZ1bmN0aW9uLjxicj4NCismbmJzcDsgQHBhcmFtW2luXSBIb2IgVGhlIEhPQiB0 byBjaGVjazxicj4NCismbmJzcDsgQHJldHZhbCBUUlVFJm5ic3A7IElmIEhPQiBpcyBuZWVkIGlu c2lkZSBQYXlsb2FkPGJyPg0KKyZuYnNwOyBAcmV0dmFsIEZBTFNFIElmIEhPQiBpcyBuZWVkbid0 IGluc2lkZSBQYXlsb2FkPGJyPg0KKyoqLzxicj4NCitCT09MRUFOPGJyPg0KK0ZpdElzSG9iTmVl ZCAoPGJyPg0KKyZuYnNwOyBFRklfUEVJX0hPQl9QT0lOVEVSUyZuYnNwOyBIb2I8YnI+DQorJm5i c3A7ICk7PGJyPg0KKzxicj4NCisvKio8YnI+DQorJm5ic3A7IENoZWNrIHRoZSBIT0IgYW5kIGRl Y2lkZSBpZiBpdCBpcyBuZWVkIGluc2lkZSBQYXlsb2FkPGJyPg0KKzxicj4NCismbmJzcDsgUGF5 bG9hZCBtYWludGFpbmVyIG1heSBtYWtlIGRlY2lzaW9uIHdoaWNoIEhPQiBpcyBuZWVkIG9yIG5l ZWRuJ3Q8YnI+DQorJm5ic3A7IFRoZW4gYWRkIHRoZSBjaGVjayBsb2dpYyBpbiB0aGUgZnVuY3Rp b24uPGJyPg0KKzxicj4NCismbmJzcDsgQHBhcmFtW2luXSBIb2IgVGhlIEhPQiB0byBjaGVjazxi cj4NCis8YnI+DQorJm5ic3A7IEByZXR2YWwgVFJVRSZuYnNwOyBJZiBIT0IgaXMgbmVlZCBpbnNp ZGUgUGF5bG9hZDxicj4NCismbmJzcDsgQHJldHZhbCBGQUxTRSBJZiBIT0IgaXMgbmVlZG4ndCBp bnNpZGUgUGF5bG9hZDxicj4NCisqKi88YnI+DQorQk9PTEVBTjxicj4NCitJc0hvYk5lZWQgKDxi cj4NCismbmJzcDsgRUZJX1BFSV9IT0JfUE9JTlRFUlMmbmJzcDsgSG9iPGJyPg0KKyZuYnNwOyAp Ozxicj4NCis8YnI+DQorVk9JRDxicj4NCitFRklBUEk8YnI+DQorUHJvY2Vzc0xpYnJhcnlDb25z dHJ1Y3Rvckxpc3QgKDxicj4NCismbmJzcDsgVk9JRDxicj4NCismbmJzcDsgKTs8YnI+DQorPGJy Pg0KJm5ic3A7LyoqPGJyPg0KJm5ic3A7ICZuYnNwO0ZpbmQgdGhlIGZpcnN0IHN1YnN0cmluZy48 YnI+DQombmJzcDsgJm5ic3A7QHBhcmFtJm5ic3A7IFN0cmluZyZuYnNwOyAmbmJzcDsgUG9pbnQg dG8gdGhlIHN0cmluZyB3aGVyZSB0byBmaW5kIHRoZSBzdWJzdHJpbmcuPGJyPg0KQEAgLTE5MSwx ODcgKzI3NCw2IEBAIEZpeFVwUGNkRGF0YWJhc2UgKDxicj4NCiZuYnNwOyAmbmJzcDtyZXR1cm4g RUZJX1NVQ0NFU1M7PGJyPg0KJm5ic3A7fTxicj4NCjxicj4NCi0vKio8YnI+DQotJm5ic3A7IEFk ZCBIT0IgaW50byBIT0IgbGlzdDxicj4NCi0mbmJzcDsgQHBhcmFtW2luXSZuYnNwOyBIb2ImbmJz cDsgJm5ic3A7IFRoZSBIT0IgdG8gYmUgYWRkZWQgaW50byB0aGUgSE9CIGxpc3QuPGJyPg0KLSoq Lzxicj4NCi1WT0lEPGJyPg0KLUFkZE5ld0hvYiAoPGJyPg0KLSZuYnNwOyBJTiBFRklfUEVJX0hP Ql9QT0lOVEVSUyZuYnNwOyAqSG9iPGJyPg0KLSZuYnNwOyApPGJyPg0KLXs8YnI+DQotJm5ic3A7 IEVGSV9QRUlfSE9CX1BPSU5URVJTJm5ic3A7IE5ld0hvYjs8YnI+DQotPGJyPg0KLSZuYnNwOyBp ZiAoSG9iLSZndDtSYXcgPT0gTlVMTCkgezxicj4NCi0mbmJzcDsgJm5ic3A7IHJldHVybjs8YnI+ DQotJm5ic3A7IH08YnI+DQotPGJyPg0KLSZuYnNwOyBOZXdIb2IuSGVhZGVyID0gQ3JlYXRlSG9i IChIb2ItJmd0O0hlYWRlci0mZ3Q7SG9iVHlwZSwgSG9iLSZndDtIZWFkZXItJmd0O0hvYkxlbmd0 aCk7PGJyPg0KLSZuYnNwOyBBU1NFUlQgKE5ld0hvYi5IZWFkZXIgIT0gTlVMTCk7PGJyPg0KLSZu YnNwOyBpZiAoTmV3SG9iLkhlYWRlciA9PSBOVUxMKSB7PGJyPg0KLSZuYnNwOyAmbmJzcDsgcmV0 dXJuOzxicj4NCi0mbmJzcDsgfTxicj4NCi08YnI+DQotJm5ic3A7IENvcHlNZW0gKE5ld0hvYi5I ZWFkZXIgKyAxLCBIb2ItJmd0O0hlYWRlciArIDEsIEhvYi0mZ3Q7SGVhZGVyLSZndDtIb2JMZW5n dGggLSBzaXplb2YgKEVGSV9IT0JfR0VORVJJQ19IRUFERVIpKTs8YnI+DQotfTxicj4NCi08YnI+ DQotLyoqPGJyPg0KLSZuYnNwOyBGb3VuZCB0aGUgUmVzb3VyY2UgRGVzY3JpcHRvciBIT0IgdGhh dCBjb250YWlucyBhIHJhbmdlIChCYXNlLCBUb3ApPGJyPg0KLSZuYnNwOyBAcGFyYW1baW5dIEhv Ykxpc3QmbmJzcDsgJm5ic3A7IEhvYiBzdGFydCBhZGRyZXNzPGJyPg0KLSZuYnNwOyBAcGFyYW1b aW5dIEJhc2UmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDtNZW1vcnkgc3RhcnQgYWRkcmVzczxi cj4NCi0mbmJzcDsgQHBhcmFtW2luXSBUb3AmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgTWVt b3J5IGVuZCBhZGRyZXNzLjxicj4NCi0mbmJzcDsgQHJldHZhbCZuYnNwOyAmbmJzcDsgJm5ic3A7 VGhlIHBvaW50ZXIgdG8gdGhlIFJlc291cmNlIERlc2NyaXB0b3IgSE9CLjxicj4NCi0qKi88YnI+ DQotRUZJX0hPQl9SRVNPVVJDRV9ERVNDUklQVE9SICo8YnI+DQotRmluZFJlc291cmNlRGVzY3Jp cHRvckJ5UmFuZ2UgKDxicj4NCi0mbmJzcDsgSU4gVk9JRCZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICpIb2JMaXN0LDxicj4NCi0m bmJzcDsgSU4gRUZJX1BIWVNJQ0FMX0FERFJFU1MmbmJzcDsgQmFzZSw8YnI+DQotJm5ic3A7IElO IEVGSV9QSFlTSUNBTF9BRERSRVNTJm5ic3A7IFRvcDxicj4NCi0mbmJzcDsgKTxicj4NCi17PGJy Pg0KLSZuYnNwOyBFRklfUEVJX0hPQl9QT0lOVEVSUyZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDtIb2I7PGJyPg0KLSZuYnNwOyBFRklfSE9CX1JFU09VUkNFX0RFU0NSSVBUT1ImbmJz cDsgKlJlc291cmNlSG9iOzxicj4NCi08YnI+DQotJm5ic3A7IGZvciAoSG9iLlJhdyA9IChVSU5U OCAqKUhvYkxpc3Q7ICFFTkRfT0ZfSE9CX0xJU1QgKEhvYik7IEhvYi5SYXcgPSBHRVRfTkVYVF9I T0IgKEhvYikpIHs8YnI+DQotJm5ic3A7ICZuYnNwOyAvLzxicj4NCi0mbmJzcDsgJm5ic3A7IC8v IFNraXAgYWxsIEhPQnMgZXhjZXB0IFJlc291cmNlIERlc2NyaXB0b3IgSE9Cczxicj4NCi0mbmJz cDsgJm5ic3A7IC8vPGJyPg0KLSZuYnNwOyAmbmJzcDsgaWYgKEdFVF9IT0JfVFlQRSAoSG9iKSAh PSBFRklfSE9CX1RZUEVfUkVTT1VSQ0VfREVTQ1JJUFRPUikgezxicj4NCi0mbmJzcDsgJm5ic3A7 ICZuYnNwOyBjb250aW51ZTs8YnI+DQotJm5ic3A7ICZuYnNwOyB9PGJyPg0KLTxicj4NCi0mbmJz cDsgJm5ic3A7IC8vPGJyPg0KLSZuYnNwOyAmbmJzcDsgLy8gU2tpcCBSZXNvdXJjZSBEZXNjcmlw dG9yIEhPQnMgdGhhdCBkbyBub3QgZGVzY3JpYmUgdGVzdGVkIHN5c3RlbSBtZW1vcnk8YnI+DQot Jm5ic3A7ICZuYnNwOyAvLzxicj4NCi0mbmJzcDsgJm5ic3A7IFJlc291cmNlSG9iID0gSG9iLlJl c291cmNlRGVzY3JpcHRvcjs8YnI+DQotJm5ic3A7ICZuYnNwOyBpZiAoUmVzb3VyY2VIb2ItJmd0 O1Jlc291cmNlVHlwZSAhPSBFRklfUkVTT1VSQ0VfU1lTVEVNX01FTU9SWSkgezxicj4NCi0mbmJz cDsgJm5ic3A7ICZuYnNwOyBjb250aW51ZTs8YnI+DQotJm5ic3A7ICZuYnNwOyB9PGJyPg0KLTxi cj4NCi0mbmJzcDsgJm5ic3A7IGlmICgoUmVzb3VyY2VIb2ItJmd0O1Jlc291cmNlQXR0cmlidXRl ICZhbXA7IE1FTU9SWV9BVFRSSUJVVEVfTUFTSykgIT0gVEVTVEVEX01FTU9SWV9BVFRSSUJVVEVT KSB7PGJyPg0KLSZuYnNwOyAmbmJzcDsgJm5ic3A7IGNvbnRpbnVlOzxicj4NCi0mbmJzcDsgJm5i c3A7IH08YnI+DQotPGJyPg0KLSZuYnNwOyAmbmJzcDsgLy88YnI+DQotJm5ic3A7ICZuYnNwOyAv LyBTa2lwIFJlc291cmNlIERlc2NyaXB0b3IgSE9CcyB0aGF0IGRvIG5vdCBjb250YWluIHRoZSBQ SElUIHJhbmdlIEVmaUZyZWVNZW1vcnlCb3R0b20uLkVmaUZyZWVNZW1vcnlUb3A8YnI+DQotJm5i c3A7ICZuYnNwOyAvLzxicj4NCi0mbmJzcDsgJm5ic3A7IGlmIChCYXNlICZsdDsgUmVzb3VyY2VI b2ItJmd0O1BoeXNpY2FsU3RhcnQpIHs8YnI+DQotJm5ic3A7ICZuYnNwOyAmbmJzcDsgY29udGlu dWU7PGJyPg0KLSZuYnNwOyAmbmJzcDsgfTxicj4NCi08YnI+DQotJm5ic3A7ICZuYnNwOyBpZiAo VG9wICZndDsgKFJlc291cmNlSG9iLSZndDtQaHlzaWNhbFN0YXJ0ICsgUmVzb3VyY2VIb2ItJmd0 O1Jlc291cmNlTGVuZ3RoKSkgezxicj4NCi0mbmJzcDsgJm5ic3A7ICZuYnNwOyBjb250aW51ZTs8 YnI+DQotJm5ic3A7ICZuYnNwOyB9PGJyPg0KLTxicj4NCi0mbmJzcDsgJm5ic3A7IHJldHVybiBS ZXNvdXJjZUhvYjs8YnI+DQotJm5ic3A7IH08YnI+DQotPGJyPg0KLSZuYnNwOyByZXR1cm4gTlVM TDs8YnI+DQotfTxicj4NCi08YnI+DQotLyoqPGJyPg0KLSZuYnNwOyBGaW5kIHRoZSBoaWdoZXN0 IGJlbG93IDRHIG1lbW9yeSByZXNvdXJjZSBkZXNjcmlwdG9yLCBleGNlcHQgdGhlIGlucHV0IFJl c291cmNlIERlc2NyaXB0b3IuPGJyPg0KLSZuYnNwOyBAcGFyYW1baW5dIEhvYkxpc3QmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwO0hv YiBzdGFydCBhZGRyZXNzPGJyPg0KLSZuYnNwOyBAcGFyYW1baW5dIE1pbmltYWxOZWVkZWRTaXpl Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7TWluaW1hbCBuZWVkZWQgc2l6ZS48YnI+DQotJm5i c3A7IEBwYXJhbVtpbl0gRXhjZXB0UmVzb3VyY2VIb2ImbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDtJZ25vcmUgdGhpcyBSZXNvdXJjZSBEZXNjcmlwdG9yLjxicj4NCi0mbmJzcDsgQHJldHZhbCZu YnNwOyAmbmJzcDsgJm5ic3A7VGhlIHBvaW50ZXIgdG8gdGhlIFJlc291cmNlIERlc2NyaXB0b3Ig SE9CLjxicj4NCi0qKi88YnI+DQotRUZJX0hPQl9SRVNPVVJDRV9ERVNDUklQVE9SICo8YnI+DQot RmluZEFub3RoZXJIaWdoZXN0QmVsb3c0R1Jlc291cmNlRGVzY3JpcHRvciAoPGJyPg0KLSZuYnNw OyBJTiBWT0lEJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7KkhvYkxpc3QsPGJyPg0K LSZuYnNwOyBJTiBVSU5UTiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IE1pbmltYWxOZWVkZWRT aXplLDxicj4NCi0mbmJzcDsgSU4gRUZJX0hPQl9SRVNPVVJDRV9ERVNDUklQVE9SJm5ic3A7ICpF eGNlcHRSZXNvdXJjZUhvYjxicj4NCi0mbmJzcDsgKTxicj4NCi17PGJyPg0KLSZuYnNwOyBFRklf UEVJX0hPQl9QT0lOVEVSUyZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDtIb2I7PGJy Pg0KLSZuYnNwOyBFRklfSE9CX1JFU09VUkNFX0RFU0NSSVBUT1ImbmJzcDsgKlJlc291cmNlSG9i Ozxicj4NCi0mbmJzcDsgRUZJX0hPQl9SRVNPVVJDRV9ERVNDUklQVE9SJm5ic3A7ICpSZXR1cm5S ZXNvdXJjZUhvYjs8YnI+DQotPGJyPg0KLSZuYnNwOyBSZXR1cm5SZXNvdXJjZUhvYiA9IE5VTEw7 PGJyPg0KLTxicj4NCi0mbmJzcDsgZm9yIChIb2IuUmF3ID0gKFVJTlQ4ICopSG9iTGlzdDsgIUVO RF9PRl9IT0JfTElTVCAoSG9iKTsgSG9iLlJhdyA9IEdFVF9ORVhUX0hPQiAoSG9iKSkgezxicj4N Ci0mbmJzcDsgJm5ic3A7IC8vPGJyPg0KLSZuYnNwOyAmbmJzcDsgLy8gU2tpcCBhbGwgSE9CcyBl eGNlcHQgUmVzb3VyY2UgRGVzY3JpcHRvciBIT0JzPGJyPg0KLSZuYnNwOyAmbmJzcDsgLy88YnI+ DQotJm5ic3A7ICZuYnNwOyBpZiAoR0VUX0hPQl9UWVBFIChIb2IpICE9IEVGSV9IT0JfVFlQRV9S RVNPVVJDRV9ERVNDUklQVE9SKSB7PGJyPg0KLSZuYnNwOyAmbmJzcDsgJm5ic3A7IGNvbnRpbnVl Ozxicj4NCi0mbmJzcDsgJm5ic3A7IH08YnI+DQotPGJyPg0KLSZuYnNwOyAmbmJzcDsgLy88YnI+ DQotJm5ic3A7ICZuYnNwOyAvLyBTa2lwIFJlc291cmNlIERlc2NyaXB0b3IgSE9CcyB0aGF0IGRv IG5vdCBkZXNjcmliZSB0ZXN0ZWQgc3lzdGVtIG1lbW9yeTxicj4NCi0mbmJzcDsgJm5ic3A7IC8v PGJyPg0KLSZuYnNwOyAmbmJzcDsgUmVzb3VyY2VIb2IgPSBIb2IuUmVzb3VyY2VEZXNjcmlwdG9y Ozxicj4NCi0mbmJzcDsgJm5ic3A7IGlmIChSZXNvdXJjZUhvYi0mZ3Q7UmVzb3VyY2VUeXBlICE9 IEVGSV9SRVNPVVJDRV9TWVNURU1fTUVNT1JZKSB7PGJyPg0KLSZuYnNwOyAmbmJzcDsgJm5ic3A7 IGNvbnRpbnVlOzxicj4NCi0mbmJzcDsgJm5ic3A7IH08YnI+DQotPGJyPg0KLSZuYnNwOyAmbmJz cDsgaWYgKChSZXNvdXJjZUhvYi0mZ3Q7UmVzb3VyY2VBdHRyaWJ1dGUgJmFtcDsgTUVNT1JZX0FU VFJJQlVURV9NQVNLKSAhPSBURVNURURfTUVNT1JZX0FUVFJJQlVURVMpIHs8YnI+DQotJm5ic3A7 ICZuYnNwOyAmbmJzcDsgY29udGludWU7PGJyPg0KLSZuYnNwOyAmbmJzcDsgfTxicj4NCi08YnI+ DQotJm5ic3A7ICZuYnNwOyAvLzxicj4NCi0mbmJzcDsgJm5ic3A7IC8vIFNraXAgaWYgdGhlIFJl c291cmNlIERlc2NyaXB0b3IgSE9CIGVxdWFscyB0byBFeGNlcHRSZXNvdXJjZUhvYjxicj4NCi0m bmJzcDsgJm5ic3A7IC8vPGJyPg0KLSZuYnNwOyAmbmJzcDsgaWYgKFJlc291cmNlSG9iID09IEV4 Y2VwdFJlc291cmNlSG9iKSB7PGJyPg0KLSZuYnNwOyAmbmJzcDsgJm5ic3A7IGNvbnRpbnVlOzxi cj4NCi0mbmJzcDsgJm5ic3A7IH08YnI+DQotPGJyPg0KLSZuYnNwOyAmbmJzcDsgLy88YnI+DQot Jm5ic3A7ICZuYnNwOyAvLyBTa2lwIFJlc291cmNlIERlc2NyaXB0b3IgSE9CcyB0aGF0IGFyZSBi ZXlvbmQgNEc8YnI+DQotJm5ic3A7ICZuYnNwOyAvLzxicj4NCi0mbmJzcDsgJm5ic3A7IGlmICgo UmVzb3VyY2VIb2ItJmd0O1BoeXNpY2FsU3RhcnQgKyBSZXNvdXJjZUhvYi0mZ3Q7UmVzb3VyY2VM ZW5ndGgpICZndDsgQkFTRV80R0IpIHs8YnI+DQotJm5ic3A7ICZuYnNwOyAmbmJzcDsgY29udGlu dWU7PGJyPg0KLSZuYnNwOyAmbmJzcDsgfTxicj4NCi08YnI+DQotJm5ic3A7ICZuYnNwOyAvLzxi cj4NCi0mbmJzcDsgJm5ic3A7IC8vIFNraXAgUmVzb3VyY2UgRGVzY3JpcHRvciBIT0JzIHRoYXQg YXJlIHRvbyBzbWFsbDxicj4NCi0mbmJzcDsgJm5ic3A7IC8vPGJyPg0KLSZuYnNwOyAmbmJzcDsg aWYgKFJlc291cmNlSG9iLSZndDtSZXNvdXJjZUxlbmd0aCAmbHQ7IE1pbmltYWxOZWVkZWRTaXpl KSB7PGJyPg0KLSZuYnNwOyAmbmJzcDsgJm5ic3A7IGNvbnRpbnVlOzxicj4NCi0mbmJzcDsgJm5i c3A7IH08YnI+DQotPGJyPg0KLSZuYnNwOyAmbmJzcDsgLy88YnI+DQotJm5ic3A7ICZuYnNwOyAv LyBSZXR1cm4gdGhlIHRvcGVzdCBSZXNvdXJjZSBEZXNjcmlwdG9yPGJyPg0KLSZuYnNwOyAmbmJz cDsgLy88YnI+DQotJm5ic3A7ICZuYnNwOyBpZiAoUmV0dXJuUmVzb3VyY2VIb2IgPT0gTlVMTCkg ezxicj4NCi0mbmJzcDsgJm5ic3A7ICZuYnNwOyBSZXR1cm5SZXNvdXJjZUhvYiA9IFJlc291cmNl SG9iOzxicj4NCi0mbmJzcDsgJm5ic3A7IH0gZWxzZSB7PGJyPg0KLSZuYnNwOyAmbmJzcDsgJm5i c3A7IGlmIChSZXR1cm5SZXNvdXJjZUhvYi0mZ3Q7UGh5c2ljYWxTdGFydCAmbHQ7IFJlc291cmNl SG9iLSZndDtQaHlzaWNhbFN0YXJ0KSB7PGJyPg0KLSZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyBSZXR1cm5SZXNvdXJjZUhvYiA9IFJlc291cmNlSG9iOzxicj4NCi0mbmJzcDsgJm5ic3A7ICZu YnNwOyB9PGJyPg0KLSZuYnNwOyAmbmJzcDsgfTxicj4NCi0mbmJzcDsgfTxicj4NCi08YnI+DQot Jm5ic3A7IHJldHVybiBSZXR1cm5SZXNvdXJjZUhvYjs8YnI+DQotfTxicj4NCi08YnI+DQotLyoq PGJyPg0KLSZuYnNwOyBDaGVjayB0aGUgSE9CIGFuZCBkZWNpZGUgaWYgaXQgaXMgbmVlZCBpbnNp ZGUgUGF5bG9hZDxicj4NCi0mbmJzcDsgUGF5bG9hZCBtYWludGFpbmVyIG1heSBtYWtlIGRlY2lz aW9uIHdoaWNoIEhPQiBpcyBuZWVkIG9yIG5lZWRuJ3Q8YnI+DQotJm5ic3A7IFRoZW4gYWRkIHRo ZSBjaGVjayBsb2dpYyBpbiB0aGUgZnVuY3Rpb24uPGJyPg0KLSZuYnNwOyBAcGFyYW1baW5dIEhv YiBUaGUgSE9CIHRvIGNoZWNrPGJyPg0KLSZuYnNwOyBAcmV0dmFsIFRSVUUmbmJzcDsgSWYgSE9C IGlzIG5lZWQgaW5zaWRlIFBheWxvYWQ8YnI+DQotJm5ic3A7IEByZXR2YWwgRkFMU0UgSWYgSE9C IGlzIG5lZWRuJ3QgaW5zaWRlIFBheWxvYWQ8YnI+DQotKiovPGJyPg0KLUJPT0xFQU48YnI+DQot SXNIb2JOZWVkICg8YnI+DQotJm5ic3A7IEVGSV9QRUlfSE9CX1BPSU5URVJTJm5ic3A7IEhvYjxi cj4NCi0mbmJzcDsgKTxicj4NCi17PGJyPg0KLSZuYnNwOyBpZiAoSG9iLkhlYWRlci0mZ3Q7SG9i VHlwZSA9PSBFRklfSE9CX1RZUEVfSEFORE9GRikgezxicj4NCi0mbmJzcDsgJm5ic3A7IHJldHVy biBGQUxTRTs8YnI+DQotJm5ic3A7IH08YnI+DQotPGJyPg0KLSZuYnNwOyBpZiAoSG9iLkhlYWRl ci0mZ3Q7SG9iVHlwZSA9PSBFRklfSE9CX1RZUEVfTUVNT1JZX0FMTE9DQVRJT04pIHs8YnI+DQot Jm5ic3A7ICZuYnNwOyBpZiAoQ29tcGFyZUd1aWQgKCZhbXA7SG9iLk1lbW9yeUFsbG9jYXRpb25N b2R1bGUtJmd0O01lbW9yeUFsbG9jYXRpb25IZWFkZXIuTmFtZSwgJmFtcDtnRWZpSG9iTWVtb3J5 QWxsb2NNb2R1bGVHdWlkKSkgezxicj4NCi0mbmJzcDsgJm5ic3A7ICZuYnNwOyByZXR1cm4gRkFM U0U7PGJyPg0KLSZuYnNwOyAmbmJzcDsgfTxicj4NCi0mbmJzcDsgfTxicj4NCi08YnI+DQotJm5i c3A7IC8vIEFycml2ZSBoZXJlIG1lYW4gdGhlIEhPQiBpcyBuZWVkPGJyPg0KLSZuYnNwOyByZXR1 cm4gVFJVRTs8YnI+DQotfTxicj4NCi08YnI+DQombmJzcDsvKio8YnI+DQombmJzcDsgJm5ic3A7 SXQgd2lsbCBidWlsZCBGdiBIT0JzIGJhc2VkIG9uIGluZm9ybWF0aW9uIGZyb20gYm9vdGxvYWRl cnMuPGJyPg0KJm5ic3A7ICZuYnNwO0BwYXJhbVtvdXRdIER4ZUZ2Jm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyBUaGUgcG9pbnRlciB0byB0aGUgRFhFIEZWIGluIG1lbW9yeS48YnI+ DQpAQCAtNDA5LDIxICszMTEsMjUgQEAgQnVpbGRGaXRMb2FkYWJsZXNGdkhvYiAoPGJyPg0KPGJy Pg0KJm5ic3A7ICZuYnNwO1N0YXR1cyA9IEZkdENoZWNrSGVhZGVyIChGZHQpOzxicj4NCiZuYnNw OyAmbmJzcDtpZiAoRUZJX0VSUk9SIChTdGF0dXMpKSB7PGJyPg0KKyZuYnNwOyAmbmJzcDsgREVC VUcgKChERUJVR19JTkZPLCAmcXVvdDtGZHRDaGVja0hlYWRlciBVUFNVUFBPUlRFRFxuJnF1b3Q7 KSk7PGJyPg0KJm5ic3A7ICZuYnNwOyAmbmJzcDtyZXR1cm4gRUZJX1VOU1VQUE9SVEVEOzxicj4N CiZuYnNwOyAmbmJzcDt9PGJyPg0KPGJyPg0KJm5ic3A7ICZuYnNwO0NvbmZpZ05vZGUgPSBGZHRT dWJub2RlT2Zmc2V0TmFtZUxlbiAoRmR0LCAwLCAmcXVvdDtjb25maWd1cmF0aW9ucyZxdW90Oywg KElOVDMyKUFzY2lpU3RyTGVuICgmcXVvdDtjb25maWd1cmF0aW9ucyZxdW90OykpOzxicj4NCiZu YnNwOyAmbmJzcDtpZiAoQ29uZmlnTm9kZSAmbHQ7PSAwKSB7PGJyPg0KKyZuYnNwOyAmbmJzcDsg REVCVUcgKChERUJVR19JTkZPLCAmcXVvdDtCdWlsZEZpdExvYWRhYmxlc0Z2SG9iIGNvbmZpZ3Vy YXRpb25zIEVGSV9OT1RfRk9VTkRcbiZxdW90OykpOzxicj4NCiZuYnNwOyAmbmJzcDsgJm5ic3A7 cmV0dXJuIEVGSV9OT1RfRk9VTkQ7PGJyPg0KJm5ic3A7ICZuYnNwO308YnI+DQo8YnI+DQombmJz cDsgJm5ic3A7Q29uZmlnMU5vZGUgPSBGZHRTdWJub2RlT2Zmc2V0TmFtZUxlbiAoRmR0LCBDb25m aWdOb2RlLCAmcXVvdDtjb25mLTEmcXVvdDssIChJTlQzMilBc2NpaVN0ckxlbiAoJnF1b3Q7Y29u Zi0xJnF1b3Q7KSk7PGJyPg0KJm5ic3A7ICZuYnNwO2lmIChDb25maWcxTm9kZSAmbHQ7PSAwKSB7 PGJyPg0KKyZuYnNwOyAmbmJzcDsgREVCVUcgKChERUJVR19JTkZPLCAmcXVvdDtCdWlsZEZpdExv YWRhYmxlc0Z2SG9iIGNvbmYtMSBFRklfTk9UX0ZPVU5EXG4mcXVvdDspKTs8YnI+DQombmJzcDsg Jm5ic3A7ICZuYnNwO3JldHVybiBFRklfTk9UX0ZPVU5EOzxicj4NCiZuYnNwOyAmbmJzcDt9PGJy Pg0KPGJyPg0KJm5ic3A7ICZuYnNwO0ltYWdlTm9kZSA9IEZkdFN1Ym5vZGVPZmZzZXROYW1lTGVu IChGZHQsIDAsICZxdW90O2ltYWdlcyZxdW90OywgKElOVDMyKUFzY2lpU3RyTGVuICgmcXVvdDtp bWFnZXMmcXVvdDspKTs8YnI+DQombmJzcDsgJm5ic3A7aWYgKEltYWdlTm9kZSAmbHQ7PSAwKSB7 PGJyPg0KKyZuYnNwOyAmbmJzcDsgREVCVUcgKChERUJVR19JTkZPLCAmcXVvdDtCdWlsZEZpdExv YWRhYmxlc0Z2SG9iIGltYWdlcyBFRklfTk9UX0ZPVU5EXG4mcXVvdDspKTs8YnI+DQombmJzcDsg Jm5ic3A7ICZuYnNwO3JldHVybiBFRklfTk9UX0ZPVU5EOzxicj4NCiZuYnNwOyAmbmJzcDt9PGJy Pg0KPGJyPg0KQEAgLTQ2NywzMSArMzczLDI1IEBAIEJ1aWxkRml0TG9hZGFibGVzRnZIb2IgKDxi cj4NCiZuYnNwO308YnI+DQo8YnI+DQombmJzcDsvKio8YnI+DQotJm5ic3A7IEl0IHdpbGwgYnVp bGQgSE9CcyBiYXNlZCBvbiBpbmZvcm1hdGlvbiBmcm9tIGJvb3Rsb2FkZXJzLjxicj4NCi0mbmJz cDsgQHBhcmFtW2luXSZuYnNwOyBCb290bG9hZGVyUGFyYW1ldGVyJm5ic3A7ICZuYnNwO1RoZSBz dGFydGluZyBtZW1vcnkgYWRkcmVzcyBvZiBib290bG9hZGVyIHBhcmFtZXRlciBibG9jay48YnI+ DQotJm5ic3A7IEBwYXJhbVtvdXRdIER4ZUZ2Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDtUaGUgcG9pbnRlciB0byB0aGUgRFhFIEZW IGluIG1lbW9yeS48YnI+DQotJm5ic3A7IEByZXR2YWwgRUZJX1NVQ0NFU1MmbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgSWYgaXQgY29tcGxldGVkIHN1Y2Nlc3NmdWxseS48YnI+DQotJm5ic3A7 IEByZXR2YWwgT3RoZXJzJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7SWYgaXQgZmFpbGVkIHRvIGJ1aWxkIHJlcXVpcmVkIEhPQnMuPGJyPg0KKyAqPGJyPg0K KyZuYnNwOyBDcmVhdGUgbmV3IEhPQiBmb3IgbmV3IEhPQiBsaXN0PGJyPg0KKzxicj4NCismbmJz cDsgQHBhcmFtW2luXSZuYnNwOyBCb290bG9hZGVyUGFyYW1ldGVyJm5ic3A7IFRoZSBIT0IgdG8g YmUgYWRkZWQgaW50byB0aGUgSE9CIGxpc3QuPGJyPg0KJm5ic3A7KiovPGJyPg0KLUVGSV9TVEFU VVM8YnI+DQotQnVpbGRIb2JzICg8YnI+DQotJm5ic3A7IElOJm5ic3A7IFVJTlROJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDtCb290bG9hZGVyUGFyYW1ldGVyLDxicj4NCi0mbmJzcDsgT1VUIEVG SV9GSVJNV0FSRV9WT0xVTUVfSEVBREVSJm5ic3A7ICoqRHhlRnY8YnI+DQorVk9JRDxicj4NCitD cmVhdE5ld0hvYkZvckhvYmxpc3QgKDxicj4NCismbmJzcDsgSU4gVUlOVE4mbmJzcDsgQm9vdGxv YWRlclBhcmFtZXRlcjxicj4NCiZuYnNwOyAmbmJzcDspPGJyPg0KJm5ic3A7ezxicj4NCi0mbmJz cDsgRUZJX1BFSV9IT0JfUE9JTlRFUlMmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7 IEhvYjs8YnI+DQotJm5ic3A7IFVJTlROJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7 TWluaW1hbE5lZWRlZFNpemU7PGJyPg0KLSZuYnNwOyBFRklfUEhZU0lDQUxfQUREUkVTUyZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgRnJlZU1lbW9yeUJvdHRvbTs8YnI+DQotJm5i c3A7IEVGSV9QSFlTSUNBTF9BRERSRVNTJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyBGcmVlTWVtb3J5VG9wOzxicj4NCi0mbmJzcDsgRUZJX1BIWVNJQ0FMX0FERFJFU1MmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IE1lbW9yeUJvdHRvbTs8YnI+DQotJm5ic3A7IEVG SV9QSFlTSUNBTF9BRERSRVNTJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBNZW1v cnlUb3A7PGJyPg0KLSZuYnNwOyBFRklfSE9CX1JFU09VUkNFX0RFU0NSSVBUT1ImbmJzcDsgJm5i c3A7KlBoaXRSZXNvdXJjZUhvYjs8YnI+DQotJm5ic3A7IEVGSV9IT0JfUkVTT1VSQ0VfREVTQ1JJ UFRPUiZuYnNwOyAmbmJzcDsqUmVzb3VyY2VIb2I7PGJyPg0KLSZuYnNwOyBVSU5UOCZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOypHdWlkSG9iOzxicj4NCi0mbmJzcDsgRUZJX0hPQl9G SVJNV0FSRV9WT0xVTUUmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsqRnZIb2I7PGJyPg0KLSZu YnNwOyBVTklWRVJTQUxfUEFZTE9BRF9BQ1BJX1RBQkxFJm5ic3A7ICpBY3BpVGFibGU7PGJyPg0K LSZuYnNwOyBBQ1BJX0JPQVJEX0lORk8mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7KkFjcGlCb2FyZEluZm87PGJyPg0KLSZuYnNwOyBFRklfSE9C X0hBTkRPRkZfSU5GT19UQUJMRSZuYnNwOyAmbmJzcDsgKkhvYkluZm87PGJyPg0KKyZuYnNwOyBF RklfUEVJX0hPQl9QT0lOVEVSUyZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDtIb2I7 PGJyPg0KKyZuYnNwOyBVSU5UTiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IE1pbmltYWxOZWVk ZWRTaXplOzxicj4NCismbmJzcDsgRUZJX1BIWVNJQ0FMX0FERFJFU1MmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7RnJlZU1lbW9yeUJvdHRvbTs8YnI+DQorJm5ic3A7IEVGSV9QSFlT SUNBTF9BRERSRVNTJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwO0ZyZWVNZW1vcnlU b3A7PGJyPg0KKyZuYnNwOyBFRklfUEhZU0lDQUxfQUREUkVTUyZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDtNZW1vcnlCb3R0b207PGJyPg0KKyZuYnNwOyBFRklfUEhZU0lDQUxfQURE UkVTUyZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDtNZW1vcnlUb3A7PGJyPg0KKyZu YnNwOyBFRklfSE9CX1JFU09VUkNFX0RFU0NSSVBUT1ImbmJzcDsgKlBoaXRSZXNvdXJjZUhvYjs8 YnI+DQorJm5ic3A7IEVGSV9IT0JfUkVTT1VSQ0VfREVTQ1JJUFRPUiZuYnNwOyAqUmVzb3VyY2VI b2I7PGJyPg0KKyZuYnNwOyBFRklfSE9CX0hBTkRPRkZfSU5GT19UQUJMRSZuYnNwOyAmbmJzcDsq SG9iSW5mbzs8YnI+DQo8YnI+DQombmJzcDsgJm5ic3A7SG9iLlJhdyZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7PSAoVUlOVDggKilCb290bG9hZGVyUGFyYW1ldGVyOzxi cj4NCiZuYnNwOyAmbmJzcDtNaW5pbWFsTmVlZGVkU2l6ZSA9IEZpeGVkUGNkR2V0MzIgKFBjZFN5 c3RlbU1lbW9yeVVlZmlSZWdpb25TaXplKTs8YnI+DQpAQCAtNTEyLDcgKzQxMiw3IEBAIEJ1aWxk SG9icyAoPGJyPg0KJm5ic3A7ICZuYnNwOyAmbmJzcDsvLzxicj4NCiZuYnNwOyAmbmJzcDsgJm5i c3A7UmVzb3VyY2VIb2IgPSBGaW5kQW5vdGhlckhpZ2hlc3RCZWxvdzRHUmVzb3VyY2VEZXNjcmlw dG9yIChIb2IuUmF3LCBNaW5pbWFsTmVlZGVkU2l6ZSwgTlVMTCk7PGJyPg0KJm5ic3A7ICZuYnNw OyAmbmJzcDtpZiAoUmVzb3VyY2VIb2IgPT0gTlVMTCkgezxicj4NCi0mbmJzcDsgJm5ic3A7ICZu YnNwOyByZXR1cm4gRUZJX05PVF9GT1VORDs8YnI+DQorJm5ic3A7ICZuYnNwOyAmbmJzcDsgcmV0 dXJuOzxicj4NCiZuYnNwOyAmbmJzcDsgJm5ic3A7fTxicj4NCjxicj4NCiZuYnNwOyAmbmJzcDsg Jm5ic3A7TWVtb3J5Qm90dG9tJm5ic3A7ICZuYnNwOyAmbmJzcDs9IFJlc291cmNlSG9iLSZndDtQ aHlzaWNhbFN0YXJ0ICsgUmVzb3VyY2VIb2ItJmd0O1Jlc291cmNlTGVuZ3RoIC0gTWluaW1hbE5l ZWRlZFNpemU7PGJyPg0KQEAgLTU0Miw3ICs0NDIsNyBAQCBCdWlsZEhvYnMgKDxicj4NCiZuYnNw OyAmbmJzcDsgJm5ic3A7Ly88YnI+DQombmJzcDsgJm5ic3A7ICZuYnNwO1Jlc291cmNlSG9iID0g RmluZEFub3RoZXJIaWdoZXN0QmVsb3c0R1Jlc291cmNlRGVzY3JpcHRvciAoSG9iLlJhdywgTWlu aW1hbE5lZWRlZFNpemUsIFBoaXRSZXNvdXJjZUhvYik7PGJyPg0KJm5ic3A7ICZuYnNwOyAmbmJz cDtpZiAoUmVzb3VyY2VIb2IgPT0gTlVMTCkgezxicj4NCi0mbmJzcDsgJm5ic3A7ICZuYnNwOyBy ZXR1cm4gRUZJX05PVF9GT1VORDs8YnI+DQorJm5ic3A7ICZuYnNwOyAmbmJzcDsgcmV0dXJuOzxi cj4NCiZuYnNwOyAmbmJzcDsgJm5ic3A7fTxicj4NCjxicj4NCiZuYnNwOyAmbmJzcDsgJm5ic3A7 TWVtb3J5Qm90dG9tJm5ic3A7ICZuYnNwOyAmbmJzcDs9IFJlc291cmNlSG9iLSZndDtQaHlzaWNh bFN0YXJ0ICsgUmVzb3VyY2VIb2ItJmd0O1Jlc291cmNlTGVuZ3RoIC0gTWluaW1hbE5lZWRlZFNp emU7PGJyPg0KQEAgLTU1MywxNCArNDUzLDcgQEAgQnVpbGRIb2JzICg8YnI+DQo8YnI+DQombmJz cDsgJm5ic3A7SG9iSW5mbyZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7 PSBIb2JDb25zdHJ1Y3RvciAoKFZPSUQgKikoVUlOVE4pTWVtb3J5Qm90dG9tLCAoVk9JRCAqKShV SU5UTilNZW1vcnlUb3AsIChWT0lEICopKFVJTlROKUZyZWVNZW1vcnlCb3R0b20sIChWT0lEICop KFVJTlROKUZyZWVNZW1vcnlUb3ApOzxicj4NCiZuYnNwOyAmbmJzcDtIb2JJbmZvLSZndDtCb290 TW9kZSA9IEhvYi5IYW5kb2ZmSW5mb3JtYXRpb25UYWJsZS0mZ3Q7Qm9vdE1vZGU7PGJyPg0KLSZu YnNwOyAvLzxicj4NCi0mbmJzcDsgLy8gRnJvbSBub3cgb24sIG1Ib2JMaXN0IHdpbGwgcG9pbnQg dG8gdGhlIG5ldyBIb2IgcmFuZ2UuPGJyPg0KLSZuYnNwOyAvLzxicj4NCjxicj4NCi0mbmJzcDsg Ly88YnI+DQotJm5ic3A7IC8vIENyZWF0ZSBhbiBlbXB0eSBGdkhvYiBmb3IgdGhlIERYRSBGViB0 aGF0IGNvbnRhaW5zIERYRSBjb3JlLjxicj4NCi0mbmJzcDsgLy88YnI+DQotJm5ic3A7IEJ1aWxk RnZIb2IgKChFRklfUEhZU0lDQUxfQUREUkVTUykwLCAwKTs8YnI+DQombmJzcDsgJm5ic3A7Ly88 YnI+DQombmJzcDsgJm5ic3A7Ly8gU2luY2UgcGF5bG9hZCBjcmVhdGVkIG5ldyBIb2IsIG1vdmUg YWxsIGhvYnMgZXhjZXB0IFBISVQgZnJvbSBib290IGxvYWRlciBob2IgbGlzdC48YnI+DQombmJz cDsgJm5ic3A7Ly88YnI+DQpAQCAtNTczLDcgKzQ2Niw1NyBAQCBCdWlsZEhvYnMgKDxicj4NCiZu YnNwOyAmbmJzcDsgJm5ic3A7SG9iLlJhdyA9IEdFVF9ORVhUX0hPQiAoSG9iKTs8YnI+DQombmJz cDsgJm5ic3A7fTxicj4NCjxicj4NCi0mbmJzcDsgQnVpbGRGaXRMb2FkYWJsZXNGdkhvYiAoRHhl RnYpOzxicj4NCismbmJzcDsgcmV0dXJuOzxicj4NCit9PGJyPg0KKzxicj4NCisvKio8YnI+DQor Jm5ic3A7IEl0IHdpbGwgYnVpbGQgSE9CcyBiYXNlZCBvbiBpbmZvcm1hdGlvbiBmcm9tIGJvb3Rs b2FkZXJzLjxicj4NCismbmJzcDsgQHBhcmFtW2luXSZuYnNwOyBOZXdGZHRCYXNlJm5ic3A7ICZu YnNwOyAmbmJzcDtUaGUgcG9pbnRlciB0byBOZXcgRmR0QmFzZS48YnI+DQorJm5ic3A7IEBwYXJh bVtvdXRdIER4ZUZ2Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBUaGUgcG9pbnRl ciB0byB0aGUgRFhFIEZWIGluIG1lbW9yeS48YnI+DQorJm5ic3A7IEByZXR2YWwgRUZJX1NVQ0NF U1MmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgSWYgaXQgY29tcGxldGVkIHN1Y2Nlc3NmdWxs eS48YnI+DQorJm5ic3A7IEByZXR2YWwgT3RoZXJzJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7SWYgaXQgZmFpbGVkIHRvIGJ1aWxkIHJlcXVpcmVkIEhPQnMu PGJyPg0KKyoqLzxicj4NCitFRklfU1RBVFVTPGJyPg0KK0ZpdEJ1aWxkSG9icyAoPGJyPg0KKyZu YnNwOyBJTiZuYnNwOyBVSU5UTiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7TmV3RmR0QmFzZSw8 YnI+DQorJm5ic3A7IE9VVCBFRklfRklSTVdBUkVfVk9MVU1FX0hFQURFUiZuYnNwOyAqKkR4ZUZ2 PGJyPg0KKyZuYnNwOyApPGJyPg0KK3s8YnI+DQorJm5ic3A7IFVJTlQ4Jm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICpHdWlkSG9iOzxicj4NCismbmJzcDsgVUlOVDMyJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7RmR0U2l6ZTs8YnI+DQorJm5ic3A7IEVGSV9IT0JfRklS TVdBUkVfVk9MVU1FJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICpGdkhvYjs8YnI+DQorJm5i c3A7IFVOSVZFUlNBTF9QQVlMT0FEX0FDUElfVEFCTEUmbmJzcDsgJm5ic3A7KkFjcGlUYWJsZTs8 YnI+DQorJm5ic3A7IEFDUElfQk9BUkRfSU5GTyZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgKkFjcGlCb2FyZEluZm87PGJyPg0KKyZuYnNwOyBV TklWRVJTQUxfUEFZTE9BRF9ERVZJQ0VfVFJFRSZuYnNwOyAqRmR0Ozxicj4NCis8YnI+DQorJm5i c3A7IGlmIChGaXhlZFBjZEdldEJvb2wgKFBjZEhhbmRPZmZGZHRFbmFibGUpKSB7PGJyPg0KKyZu YnNwOyAmbmJzcDsgLy88YnI+DQorJm5ic3A7ICZuYnNwOyAvLyBCYWNrIHVwIEZEVCBpbiBSZXNl cnZlZCBtZW1vcnkgcmVnaW9uPGJyPg0KKyZuYnNwOyAmbmJzcDsgLy88YnI+DQorPGJyPg0KKyZu YnNwOyAmbmJzcDsgR3VpZEhvYiA9IEdldEZpcnN0R3VpZEhvYiAoJmFtcDtnVW5pdmVyc2FsUGF5 bG9hZERldmljZVRyZWVHdWlkKTs8YnI+DQorJm5ic3A7ICZuYnNwOyBpZiAoR3VpZEhvYiAhPSBO VUxMKSB7PGJyPg0KKyZuYnNwOyAmbmJzcDsgJm5ic3A7IEZkdCA9Jm5ic3A7IChVTklWRVJTQUxf UEFZTE9BRF9ERVZJQ0VfVFJFRSAqKUdFVF9HVUlEX0hPQl9EQVRBIChHdWlkSG9iKTs8YnI+DQor Jm5ic3A7ICZuYnNwOyAmbmJzcDsgaWYgKEZkdCAhPSBOVUxMKSB7PGJyPg0KKyZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyBERUJVRyAoKERFQlVHX0lORk8sICZxdW90O1VwZGF0ZSBGRFQgYmFz ZSB0byByZXNlcnZlZCBtZW1vcnlcbiZxdW90OykpOzxicj4NCismbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgRmR0U2l6ZSA9IDQgKiBFRklfUEFHRV9TSVpFOzxicj4NCismbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgQ29weU1lbSAoKFZPSUQgKilOZXdGZHRCYXNlLCAoVk9JRCAqKShGZHQt Jmd0O0RldmljZVRyZWVBZGRyZXNzKSwgRmR0U2l6ZSk7PGJyPg0KKyZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyBGZHQtJmd0O0RldmljZVRyZWVBZGRyZXNzID0gTmV3RmR0QmFzZTs8YnI+DQor Jm5ic3A7ICZuYnNwOyAmbmJzcDsgfTxicj4NCismbmJzcDsgJm5ic3A7IH08YnI+DQorJm5ic3A7 IH08YnI+DQorPGJyPg0KKyZuYnNwOyAvLzxicj4NCismbmJzcDsgLy8gVG8gY3JlYXRlIE1lbW9y eSBUeXBlIEluZm9ybWF0aW9uIEhPQjxicj4NCismbmJzcDsgLy88YnI+DQorJm5ic3A7IEd1aWRI b2IgPSBHZXRGaXJzdEd1aWRIb2IgKCZhbXA7Z0VmaU1lbW9yeVR5cGVJbmZvcm1hdGlvbkd1aWQp Ozxicj4NCismbmJzcDsgaWYgKEd1aWRIb2IgPT0gTlVMTCkgezxicj4NCismbmJzcDsgJm5ic3A7 IEJ1aWxkR3VpZERhdGFIb2IgKDxicj4NCismbmJzcDsgJm5ic3A7ICZuYnNwOyAmYW1wO2dFZmlN ZW1vcnlUeXBlSW5mb3JtYXRpb25HdWlkLDxicj4NCismbmJzcDsgJm5ic3A7ICZuYnNwOyBtRGVm YXVsdE1lbW9yeVR5cGVJbmZvcm1hdGlvbiw8YnI+DQorJm5ic3A7ICZuYnNwOyAmbmJzcDsgc2l6 ZW9mIChtRGVmYXVsdE1lbW9yeVR5cGVJbmZvcm1hdGlvbik8YnI+DQorJm5ic3A7ICZuYnNwOyAm bmJzcDsgKTs8YnI+DQorJm5ic3A7IH08YnI+DQo8YnI+DQombmJzcDsgJm5ic3A7Ly88YnI+DQom bmJzcDsgJm5ic3A7Ly8gQ3JlYXRlIGd1aWQgaG9iIGZvciBhY3BpIGJvYXJkIGluZm9ybWF0aW9u PGJyPg0KQEAgLTU4OCw2ICs1MzEsMTIgQEAgQnVpbGRIb2JzICg8YnI+DQombmJzcDsgJm5ic3A7 ICZuYnNwO308YnI+DQombmJzcDsgJm5ic3A7fTxicj4NCjxicj4NCismbmJzcDsgLy88YnI+DQor Jm5ic3A7IC8vIENyZWF0ZSBhbiBlbXB0eSBGdkhvYiBmb3IgdGhlIERYRSBGViB0aGF0IGNvbnRh aW5zIERYRSBjb3JlLjxicj4NCismbmJzcDsgLy88YnI+DQorJm5ic3A7IEJ1aWxkRnZIb2IgKChF RklfUEhZU0lDQUxfQUREUkVTUykwLCAwKTs8YnI+DQorPGJyPg0KKyZuYnNwOyBCdWlsZEZpdExv YWRhYmxlc0Z2SG9iIChEeGVGdik7PGJyPg0KJm5ic3A7ICZuYnNwOy8vPGJyPg0KJm5ic3A7ICZu YnNwOy8vIFVwZGF0ZSBEWEUgRlYgaW5mb3JtYXRpb24gdG8gZmlyc3QgZnYgaG9iIGluIHRoZSBo b2IgbGlzdCwgd2hpY2g8YnI+DQombmJzcDsgJm5ic3A7Ly8gaXMgdGhlIGVtcHR5IEZ2SG9iIGNy ZWF0ZWQgYmVmb3JlLjxicj4NCkBAIC02MDAsMTIgKzU0OSwxMiBAQCBCdWlsZEhvYnMgKDxicj4N Cjxicj4NCiZuYnNwOy8qKjxicj4NCiZuYnNwOyAmbmJzcDtFbnRyeSBwb2ludCB0byB0aGUgQyBs YW5ndWFnZSBwaGFzZSBvZiBVRUZJIHBheWxvYWQuPGJyPg0KLSZuYnNwOyBAcGFyYW1baW5dJm5i c3A7ICZuYnNwO0Jvb3Rsb2FkZXJQYXJhbWV0ZXImbmJzcDsgJm5ic3A7IFRoZSBzdGFydGluZyBh ZGRyZXNzIG9mIGJvb3Rsb2FkZXIgcGFyYW1ldGVyIGJsb2NrLjxicj4NCismbmJzcDsgQHBhcmFt W2luXSZuYnNwOyAmbmJzcDtCb290bG9hZGVyUGFyYW1ldGVyJm5ic3A7IFRoZSBzdGFydGluZyBh ZGRyZXNzIG9mIEZEVCAuPGJyPg0KJm5ic3A7ICZuYnNwO0ByZXR2YWwmbmJzcDsgJm5ic3A7ICZu YnNwOyBJdCB3aWxsIG5vdCByZXR1cm4gaWYgU1VDQ0VTUywgYW5kIHJldHVybiBlcnJvciB3aGVu IHBhc3NpbmcgYm9vdGxvYWRlciBwYXJhbWV0ZXIuPGJyPg0KJm5ic3A7KiovPGJyPg0KJm5ic3A7 RUZJX1NUQVRVUzxicj4NCiZuYnNwO0VGSUFQSTxicj4NCi1fTW9kdWxlRW50cnlQb2ludCAoPGJy Pg0KK0ZpdFVwbEVudHJ5UG9pbnQgKDxicj4NCiZuYnNwOyAmbmJzcDtJTiBVSU5UTiZuYnNwOyBC b290bG9hZGVyUGFyYW1ldGVyPGJyPg0KJm5ic3A7ICZuYnNwOyk8YnI+DQombmJzcDt7PGJyPg0K QEAgLTYxMywxNCArNTYyLDQ2IEBAIF9Nb2R1bGVFbnRyeVBvaW50ICg8YnI+DQombmJzcDsgJm5i c3A7UEhZU0lDQUxfQUREUkVTUyZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7IER4ZUNvcmVFbnRyeVBvaW50Ozxicj4NCiZuYnNwOyAmbmJzcDtFRklfUEVJX0hPQl9QT0lO VEVSUyZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBIb2I7PGJyPg0KJm5ic3A7ICZuYnNwO0VG SV9GSVJNV0FSRV9WT0xVTUVfSEVBREVSJm5ic3A7ICpEeGVGdjs8YnI+DQorJm5ic3A7IFBIWVNJ Q0FMX0FERFJFU1MmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBIb2JM aXN0UHRyOzxicj4NCismbmJzcDsgVk9JRCZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICpGZHRC YXNlOzxicj4NCismbmJzcDsgVk9JRCZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICpGZHRCYXNl UmVzdmQ7PGJyPg0KPGJyPg0KLSZuYnNwOyBtSG9iTGlzdCA9IChWT0lEICopQm9vdGxvYWRlclBh cmFtZXRlcjs8YnI+DQotJm5ic3A7IER4ZUZ2Jm5ic3A7ICZuYnNwOyA9IE5VTEw7PGJyPg0KKyZu YnNwOyBpZiAoRml4ZWRQY2RHZXRCb29sIChQY2RIYW5kT2ZmRmR0RW5hYmxlKSkgezxicj4NCism bmJzcDsgJm5ic3A7IG1Ib2JMaXN0ID0gKFZPSUQgKilOVUxMOzxicj4NCismbmJzcDsgfSBlbHNl IHs8YnI+DQorJm5ic3A7ICZuYnNwOyBtSG9iTGlzdCA9IChWT0lEICopQm9vdGxvYWRlclBhcmFt ZXRlcjs8YnI+DQorJm5ic3A7IH08YnI+DQorPGJyPg0KKyZuYnNwOyBEeGVGdiA9IE5VTEw7PGJy Pg0KJm5ic3A7ICZuYnNwOy8vIENhbGwgY29uc3RydWN0b3IgZm9yIGFsbCBsaWJyYXJpZXM8YnI+ DQombmJzcDsgJm5ic3A7UHJvY2Vzc0xpYnJhcnlDb25zdHJ1Y3Rvckxpc3QgKCk7PGJyPg0KPGJy Pg0KJm5ic3A7ICZuYnNwO0RFQlVHICgoREVCVUdfSU5GTywgJnF1b3Q7RW50ZXJpbmcgVW5pdmVy c2FsIFBheWxvYWQuLi5cbiZxdW90OykpOzxicj4NCiZuYnNwOyAmbmJzcDtERUJVRyAoKERFQlVH X0lORk8sICZxdW90O3NpemVvZihVSU5UTikgPSAweCV4XG4mcXVvdDssIHNpemVvZiAoVUlOVE4p KSk7PGJyPg0KKyZuYnNwOyBERUJVRyAoKERFQlVHX0lORk8sICZxdW90O0Jvb3Rsb2FkZXJQYXJh bWV0ZXIgPSAweCV4XG4mcXVvdDssIEJvb3Rsb2FkZXJQYXJhbWV0ZXIpKTs8YnI+DQorPGJyPg0K KyZuYnNwOyBERUJVRyAoKERFQlVHX0lORk8sICZxdW90O1N0YXJ0IGluaXQgSG9icy4uLlxuJnF1 b3Q7KSk7PGJyPg0KKyZuYnNwOyBIb2JMaXN0UHRyID0gVXBsSW5pdEhvYiAoKFZPSUQgKilCb290 bG9hZGVyUGFyYW1ldGVyKTs8YnI+DQorPGJyPg0KKyZuYnNwOyAvLzxicj4NCismbmJzcDsgLy8g Rm91bmQgaG9iIGxpc3Qgbm9kZTxicj4NCismbmJzcDsgLy88YnI+DQorJm5ic3A7IGlmIChIb2JM aXN0UHRyICE9IDApIHs8YnI+DQorJm5ic3A7ICZuYnNwOyBGZHRCYXNlID0gKFZPSUQgKilCb290 bG9hZGVyUGFyYW1ldGVyOzxicj4NCismbmJzcDsgJm5ic3A7IGlmIChGZHRDaGVja0hlYWRlciAo RmR0QmFzZSkgPT0gMCkgezxicj4NCismbmJzcDsgJm5ic3A7ICZuYnNwOyBDdXN0b21GZHROb2Rl UGFyc2VyICgoVk9JRCAqKUZkdEJhc2UsIChWT0lEICopSG9iTGlzdFB0cik7PGJyPg0KKyZuYnNw OyAmbmJzcDsgfSBlbHNlIHs8YnI+DQorJm5ic3A7ICZuYnNwOyAmbmJzcDsgQ3JlYXROZXdIb2JG b3JIb2JsaXN0IChCb290bG9hZGVyUGFyYW1ldGVyKTs8YnI+DQorJm5ic3A7ICZuYnNwOyB9PGJy Pg0KKzxicj4NCismbmJzcDsgJm5ic3A7IEZkdEJhc2VSZXN2ZCA9IFBheWxvYWRBbGxvY2F0ZVBh Z2VzICg0LCBFZmlSZXNlcnZlZE1lbW9yeVR5cGUpOzxicj4NCis8YnI+DQorJm5ic3A7ICZuYnNw OyAvLyBCdWlsZCBIT0IgYmFzZWQgb24gaW5mb3JtYXRpb24gZnJvbSBCb290bG9hZGVyPGJyPg0K KyZuYnNwOyAmbmJzcDsgU3RhdHVzID0gRml0QnVpbGRIb2JzICgoVUlOVE4pRmR0QmFzZVJlc3Zk LCAmYW1wO0R4ZUZ2KTs8YnI+DQorJm5ic3A7IH08YnI+DQorPGJyPg0KKyZuYnNwOyAvLyBDYWxs IGNvbnN0cnVjdG9yIGZvciBhbGwgbGlicmFyaWVzIGFnYWluIHNpbmNlIGhvYnMgd2VyZSBidWls dDxicj4NCismbmJzcDsgUHJvY2Vzc0xpYnJhcnlDb25zdHJ1Y3Rvckxpc3QgKCk7PGJyPg0KPGJy Pg0KJm5ic3A7ICZuYnNwO0RFQlVHX0NPREUgKDxicj4NCiZuYnNwOyAmbmJzcDsgJm5ic3A7Ly88 YnI+DQpAQCAtNjI5LDIzICs2MTAsMTAgQEAgX01vZHVsZUVudHJ5UG9pbnQgKDxicj4NCiZuYnNw OyAmbmJzcDsgJm5ic3A7UHJpbnRIb2IgKG1Ib2JMaXN0KTs8YnI+DQombmJzcDsgJm5ic3A7ICZu YnNwOyk7PGJyPg0KPGJyPg0KLSZuYnNwOyAvLyBJbml0aWFsaXplIGZsb2F0aW5nIHBvaW50IG9w ZXJhdGluZyBlbnZpcm9ubWVudCB0byBiZSBjb21wbGlhbnQgd2l0aCBVRUZJIHNwZWMuPGJyPg0K LSZuYnNwOyBJbml0aWFsaXplRmxvYXRpbmdQb2ludFVuaXRzICgpOzxicj4NCi08YnI+DQotJm5i c3A7IC8vIEJ1aWxkIEhPQiBiYXNlZCBvbiBpbmZvcm1hdGlvbiBmcm9tIEJvb3Rsb2FkZXI8YnI+ DQotJm5ic3A7IFN0YXR1cyA9IEJ1aWxkSG9icyAoQm9vdGxvYWRlclBhcmFtZXRlciwgJmFtcDtE eGVGdik7PGJyPg0KLSZuYnNwOyBBU1NFUlRfRUZJX0VSUk9SIChTdGF0dXMpOzxicj4NCi08YnI+ DQombmJzcDsgJm5ic3A7Rml4VXBQY2REYXRhYmFzZSAoRHhlRnYpOzxicj4NCiZuYnNwOyAmbmJz cDtTdGF0dXMgPSBVbml2ZXJzYWxMb2FkRHhlQ29yZSAoRHhlRnYsICZhbXA7RHhlQ29yZUVudHJ5 UG9pbnQpOzxicj4NCiZuYnNwOyAmbmJzcDtBU1NFUlRfRUZJX0VSUk9SIChTdGF0dXMpOzxicj4N Cjxicj4NCi0mbmJzcDsgLy88YnI+DQotJm5ic3A7IC8vIE1hc2sgb2ZmIGFsbCBsZWdhY3kgODI1 OSBpbnRlcnJ1cHQgc291cmNlczxicj4NCi0mbmJzcDsgLy88YnI+DQotJm5ic3A7IElvV3JpdGU4 IChMRUdBQ1lfODI1OV9NQVNLX1JFR0lTVEVSX01BU1RFUiwgMHhGRik7PGJyPg0KLSZuYnNwOyBJ b1dyaXRlOCAoTEVHQUNZXzgyNTlfTUFTS19SRUdJU1RFUl9TTEFWRSwgMHhGRik7PGJyPg0KLTxi cj4NCiZuYnNwOyAmbmJzcDtIb2IuSGFuZG9mZkluZm9ybWF0aW9uVGFibGUgPSAoRUZJX0hPQl9I QU5ET0ZGX0lORk9fVEFCTEUgKilHZXRGaXJzdEhvYiAoRUZJX0hPQl9UWVBFX0hBTkRPRkYpOzxi cj4NCiZuYnNwOyAmbmJzcDtIYW5kT2ZmVG9EeGVDb3JlIChEeGVDb3JlRW50cnlQb2ludCwgSG9i KTs8YnI+DQo8YnI+DQpkaWZmIC0tZ2l0IGEvVWVmaVBheWxvYWRQa2cvVWVmaVBheWxvYWRFbnRy eS9JYTMyL0R4ZUxvYWRGdW5jLmMgYi9VZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5L0lh MzIvRHhlTG9hZEZ1bmMuYzxicj4NCmluZGV4IDYxYTlmMDFlYzllNy4uY2Y5YzAzYTlhOGU5IDEw MDY0NDxicj4NCi0tLSBhL1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkvSWEzMi9EeGVM b2FkRnVuYy5jPGJyPg0KKysrIGIvVWVmaVBheWxvYWRQa2cvVWVmaVBheWxvYWRFbnRyeS9JYTMy L0R4ZUxvYWRGdW5jLmM8YnI+DQpAQCAtMTUsMTIgKzE1LDE1IEBAIFNQRFgtTGljZW5zZS1JZGVu dGlmaWVyOiBCU0QtMi1DbGF1c2UtUGF0ZW50PGJyPg0KJm5ic3A7I2luY2x1ZGUgJmx0O0xpYnJh cnkvTWVtb3J5QWxsb2NhdGlvbkxpYi5oJmd0Ozxicj4NCiZuYnNwOyNpbmNsdWRlICZsdDtMaWJy YXJ5L1BjZExpYi5oJmd0Ozxicj4NCiZuYnNwOyNpbmNsdWRlICZsdDtMaWJyYXJ5L0hvYkxpYi5o Jmd0Ozxicj4NCisjaW5jbHVkZSAmbHQ7TGlicmFyeS9GZHRMaWIuaCZndDs8YnI+DQombmJzcDsj aW5jbHVkZSAmcXVvdDtWaXJ0dWFsTWVtb3J5LmgmcXVvdDs8YnI+DQombmJzcDsjaW5jbHVkZSAm cXVvdDtVZWZpUGF5bG9hZEVudHJ5LmgmcXVvdDs8YnI+DQo8YnI+DQombmJzcDsjZGVmaW5lIFNU QUNLX1NJWkUmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsweDIwMDAwPGJyPg0KJm5ic3A7I2Rl ZmluZSBJRFRfRU5UUllfQ09VTlQmbmJzcDsgMzI8YnI+DQo8YnI+DQorZXh0ZXJuIFZPSUQmbmJz cDsgKm1Ib2JMaXN0Ozxicj4NCis8YnI+DQombmJzcDt0eXBlZGVmIHN0cnVjdCBfWDY0X0lEVF9U QUJMRSB7PGJyPg0KJm5ic3A7ICZuYnNwOy8vPGJyPg0KJm5ic3A7ICZuYnNwOy8vIFJlc2VydmVk IDQgYnl0ZXMgcHJlY2VkaW5nIFBlaVNlcnZpY2UgYW5kIElkdFRhYmxlLDxicj4NCkBAIC0yNjgs NiArMjcxLDE1IEBAIEhhbmRPZmZUb0R4ZUNvcmUgKDxicj4NCiZuYnNwOyAmbmJzcDtVSU5UMzIm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDtJbmRleDs8YnI+DQombmJzcDsgJm5ic3A7WDY0X0lEVF9UQUJMRSZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICpJZHRUYWJsZUZvclg2NDs8YnI+DQo8 YnI+DQorJm5ic3A7IC8vIEluaXRpYWxpemUgZmxvYXRpbmcgcG9pbnQgb3BlcmF0aW5nIGVudmly b25tZW50IHRvIGJlIGNvbXBsaWFudCB3aXRoIFVFRkkgc3BlYy48YnI+DQorJm5ic3A7IEluaXRp YWxpemVGbG9hdGluZ1BvaW50VW5pdHMgKCk7PGJyPg0KKzxicj4NCismbmJzcDsgLy88YnI+DQor Jm5ic3A7IC8vIE1hc2sgb2ZmIGFsbCBsZWdhY3kgODI1OSBpbnRlcnJ1cHQgc291cmNlczxicj4N CismbmJzcDsgLy88YnI+DQorJm5ic3A7IElvV3JpdGU4IChMRUdBQ1lfODI1OV9NQVNLX1JFR0lT VEVSX01BU1RFUiwgMHhGRik7PGJyPg0KKyZuYnNwOyBJb1dyaXRlOCAoTEVHQUNZXzgyNTlfTUFT S19SRUdJU1RFUl9TTEFWRSwgMHhGRik7PGJyPg0KKzxicj4NCiZuYnNwOyAmbmJzcDsvLzxicj4N CiZuYnNwOyAmbmJzcDsvLyBDbGVhciBwYWdlIDAgYW5kIG1hcmsgaXQgYXMgYWxsb2NhdGVkIGlm IE5VTEwgcG9pbnRlciBkZXRlY3Rpb24gaXMgZW5hYmxlZC48YnI+DQombmJzcDsgJm5ic3A7Ly88 YnI+DQpkaWZmIC0tZ2l0IGEvVWVmaVBheWxvYWRQa2cvVWVmaVBheWxvYWRFbnRyeS9JYTMyL0R4 ZUxvYWRGdW5jLmMgYi9VZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5L0lhMzIvRHhlTG9h ZEZ1bmNGaXQuYzxicj4NCnNpbWlsYXJpdHkgaW5kZXggOTAlPGJyPg0KY29weSBmcm9tIFVlZmlQ YXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkvSWEzMi9EeGVMb2FkRnVuYy5jPGJyPg0KY29weSB0 byBVZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5L0lhMzIvRHhlTG9hZEZ1bmNGaXQuYzxi cj4NCmluZGV4IDYxYTlmMDFlYzllNy4uNDM5ZDViZWUwYjhjIDEwMDY0NDxicj4NCi0tLSBhL1Vl ZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkvSWEzMi9EeGVMb2FkRnVuYy5jPGJyPg0KKysr IGIvVWVmaVBheWxvYWRQa2cvVWVmaVBheWxvYWRFbnRyeS9JYTMyL0R4ZUxvYWRGdW5jRml0LmM8 YnI+DQpAQCAtMSwxMCArMSw4IEBAPGJyPg0KJm5ic3A7LyoqIEBmaWxlPGJyPg0KJm5ic3A7ICZu YnNwO0lhMzItc3BlY2lmaWMgZnVuY3Rpb25hbGl0eSBmb3IgRHhlTG9hZC48YnI+DQo8YnI+DQot Q29weXJpZ2h0IChjKSAyMDA2IC0gMjAyMCwgSW50ZWwgQ29ycG9yYXRpb24uIEFsbCByaWdodHMg cmVzZXJ2ZWQuJmx0O0JSJmd0Ozxicj4NCi1Db3B5cmlnaHQgKGMpIDIwMTcsIEFNRCBJbmNvcnBv cmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuJmx0O0JSJmd0Ozxicj4NCi08YnI+DQotU1BEWC1M aWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZS1QYXRlbnQ8YnI+DQorJm5ic3A7IENvcHly aWdodCAoYykgMjAyNCwgSW50ZWwgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuJmx0 O0JSJmd0Ozxicj4NCismbmJzcDsgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVz ZS1QYXRlbnQ8YnI+DQo8YnI+DQombmJzcDsqKi88YnI+DQo8YnI+DQpAQCAtMTUsMTIgKzEzLDE1 IEBAIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMi1DbGF1c2UtUGF0ZW50PGJyPg0KJm5i c3A7I2luY2x1ZGUgJmx0O0xpYnJhcnkvTWVtb3J5QWxsb2NhdGlvbkxpYi5oJmd0Ozxicj4NCiZu YnNwOyNpbmNsdWRlICZsdDtMaWJyYXJ5L1BjZExpYi5oJmd0Ozxicj4NCiZuYnNwOyNpbmNsdWRl ICZsdDtMaWJyYXJ5L0hvYkxpYi5oJmd0Ozxicj4NCisjaW5jbHVkZSAmbHQ7TGlicmFyeS9GZHRM aWIuaCZndDs8YnI+DQombmJzcDsjaW5jbHVkZSAmcXVvdDtWaXJ0dWFsTWVtb3J5LmgmcXVvdDs8 YnI+DQombmJzcDsjaW5jbHVkZSAmcXVvdDtVZWZpUGF5bG9hZEVudHJ5LmgmcXVvdDs8YnI+DQo8 YnI+DQombmJzcDsjZGVmaW5lIFNUQUNLX1NJWkUmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsw eDIwMDAwPGJyPg0KJm5ic3A7I2RlZmluZSBJRFRfRU5UUllfQ09VTlQmbmJzcDsgMzI8YnI+DQo8 YnI+DQorZXh0ZXJuIFZPSUQmbmJzcDsgKm1Ib2JMaXN0Ozxicj4NCis8YnI+DQombmJzcDt0eXBl ZGVmIHN0cnVjdCBfWDY0X0lEVF9UQUJMRSB7PGJyPg0KJm5ic3A7ICZuYnNwOy8vPGJyPg0KJm5i c3A7ICZuYnNwOy8vIFJlc2VydmVkIDQgYnl0ZXMgcHJlY2VkaW5nIFBlaVNlcnZpY2UgYW5kIElk dFRhYmxlLDxicj4NCkBAIC0yNjgsNiArMjY5LDE1IEBAIEhhbmRPZmZUb0R4ZUNvcmUgKDxicj4N CiZuYnNwOyAmbmJzcDtVSU5UMzImbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDtJbmRleDs8YnI+DQombmJzcDsgJm5ic3A7 WDY0X0lEVF9UQUJMRSZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICpJ ZHRUYWJsZUZvclg2NDs8YnI+DQo8YnI+DQorJm5ic3A7IC8vIEluaXRpYWxpemUgZmxvYXRpbmcg cG9pbnQgb3BlcmF0aW5nIGVudmlyb25tZW50IHRvIGJlIGNvbXBsaWFudCB3aXRoIFVFRkkgc3Bl Yy48YnI+DQorJm5ic3A7IEluaXRpYWxpemVGbG9hdGluZ1BvaW50VW5pdHMgKCk7PGJyPg0KKzxi cj4NCismbmJzcDsgLy88YnI+DQorJm5ic3A7IC8vIE1hc2sgb2ZmIGFsbCBsZWdhY3kgODI1OSBp bnRlcnJ1cHQgc291cmNlczxicj4NCismbmJzcDsgLy88YnI+DQorJm5ic3A7IElvV3JpdGU4IChM RUdBQ1lfODI1OV9NQVNLX1JFR0lTVEVSX01BU1RFUiwgMHhGRik7PGJyPg0KKyZuYnNwOyBJb1dy aXRlOCAoTEVHQUNZXzgyNTlfTUFTS19SRUdJU1RFUl9TTEFWRSwgMHhGRik7PGJyPg0KKzxicj4N CiZuYnNwOyAmbmJzcDsvLzxicj4NCiZuYnNwOyAmbmJzcDsvLyBDbGVhciBwYWdlIDAgYW5kIG1h cmsgaXQgYXMgYWxsb2NhdGVkIGlmIE5VTEwgcG9pbnRlciBkZXRlY3Rpb24gaXMgZW5hYmxlZC48 YnI+DQombmJzcDsgJm5ic3A7Ly88YnI+DQpAQCAtMzc5LDMgKzM4OSwxNyBAQCBIYW5kT2ZmVG9E eGVDb3JlICg8YnI+DQombmJzcDsgJm5ic3A7ICZuYnNwO0NwdURlYWRMb29wICgpOzxicj4NCiZu YnNwOyAmbmJzcDt9PGJyPg0KJm5ic3A7fTxicj4NCis8YnI+DQorLyoqPGJyPg0KKyZuYnNwOyBF bnRyeSBwb2ludCB0byB0aGUgQyBsYW5ndWFnZSBwaGFzZSBvZiBVRUZJIHBheWxvYWQuPGJyPg0K KyZuYnNwOyBAcGFyYW1baW5dJm5ic3A7ICZuYnNwO0Jvb3Rsb2FkZXJQYXJhbWV0ZXImbmJzcDsg Jm5ic3A7IFRoZSBzdGFydGluZyBhZGRyZXNzIG9mIGJvb3Rsb2FkZXIgcGFyYW1ldGVyIGJsb2Nr Ljxicj4NCismbmJzcDsgQHJldHZhbCZuYnNwOyAmbmJzcDsgJm5ic3A7IEl0IHdpbGwgbm90IHJl dHVybiBpZiBTVUNDRVNTLCBhbmQgcmV0dXJuIGVycm9yIHdoZW4gcGFzc2luZyBib290bG9hZGVy IHBhcmFtZXRlci48YnI+DQorKiovPGJyPg0KK0VGSV9TVEFUVVM8YnI+DQorRUZJQVBJPGJyPg0K K19Nb2R1bGVFbnRyeVBvaW50ICg8YnI+DQorJm5ic3A7IElOIFVJTlROJm5ic3A7IEJvb3Rsb2Fk ZXJQYXJhbWV0ZXI8YnI+DQorJm5ic3A7ICk8YnI+DQorezxicj4NCismbmJzcDsgcmV0dXJuIEZp dFVwbEVudHJ5UG9pbnQgKEJvb3Rsb2FkZXJQYXJhbWV0ZXIpOzxicj4NCit9PGJyPg0KZGlmZiAt LWdpdCBhL1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkvTWVtb3J5QWxsb2NhdGlvbi5j IGIvVWVmaVBheWxvYWRQa2cvVWVmaVBheWxvYWRFbnRyeS9NZW1vcnlBbGxvY2F0aW9uLmM8YnI+ DQppbmRleCA4MzkzNmFlMjZlNjguLjM2ZWRjYTgxZjk5NyAxMDA2NDQ8YnI+DQotLS0gYS9VZWZp UGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5L01lbW9yeUFsbG9jYXRpb24uYzxicj4NCisrKyBi L1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkvTWVtb3J5QWxsb2NhdGlvbi5jPGJyPg0K QEAgLTEwLDYgKzEwLDU2IEBAPGJyPg0KPGJyPg0KJm5ic3A7I2luY2x1ZGUgJnF1b3Q7VWVmaVBh eWxvYWRFbnRyeS5oJnF1b3Q7PGJyPg0KPGJyPg0KKy8qKjxicj4NCismbmJzcDsgQWxsb2NhdGVz IG9uZSBvciBtb3JlIHBhZ2VzIG9mIHR5cGUgRWZpQm9vdFNlcnZpY2VzRGF0YS48YnI+DQorPGJy Pg0KKyZuYnNwOyBBbGxvY2F0ZXMgdGhlIG51bWJlciBvZiBwYWdlcyBvZiBNZW1vcnlUeXBlIGFu ZCByZXR1cm5zIGEgcG9pbnRlciB0byB0aGU8YnI+DQorJm5ic3A7IGFsbG9jYXRlZCBidWZmZXIu Jm5ic3A7IFRoZSBidWZmZXIgcmV0dXJuZWQgaXMgYWxpZ25lZCBvbiBhIDRLQiBib3VuZGFyeS48 YnI+DQorJm5ic3A7IElmIFBhZ2VzIGlzIDAsIHRoZW4gTlVMTCBpcyByZXR1cm5lZC48YnI+DQor Jm5ic3A7IElmIHRoZXJlIGlzIG5vdCBlbm91Z2ggbWVtb3J5IGF2YWlsYmxlIHRvIHNhdGlzZnkg dGhlIHJlcXVlc3QsIHRoZW4gTlVMTDxicj4NCismbmJzcDsgaXMgcmV0dXJuZWQuPGJyPg0KKzxi cj4NCismbmJzcDsgQHBhcmFtJm5ic3A7ICZuYnNwO1BhZ2VzJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDtUaGUgbnVtYmVyIG9mIDQg S0IgcGFnZXMgdG8gYWxsb2NhdGUuPGJyPg0KKyZuYnNwOyBAcGFyYW0mbmJzcDsgJm5ic3A7TWVt b3J5VHlwZSZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IFRoZSBNZW1v cnlUeXBlPGJyPg0KKyZuYnNwOyBAcmV0dXJuJm5ic3A7IEEgcG9pbnRlciB0byB0aGUgYWxsb2Nh dGVkIGJ1ZmZlciBvciBOVUxMIGlmIGFsbG9jYXRpb24gZmFpbHMuPGJyPg0KKyoqLzxicj4NCitW T0lEICo8YnI+DQorRUZJQVBJPGJyPg0KK1BheWxvYWRBbGxvY2F0ZVBhZ2VzICg8YnI+DQorJm5i c3A7IElOIFVJTlROJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgUGFn ZXMsPGJyPg0KKyZuYnNwOyBJTiBFRklfTUVNT1JZX1RZUEUmbmJzcDsgTWVtb3J5VHlwZTxicj4N CismbmJzcDsgKTxicj4NCit7PGJyPg0KKyZuYnNwOyBFRklfUEVJX0hPQl9QT0lOVEVSUyZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBIb2I7PGJyPg0KKyZuYnNwOyBFRklfUEhZU0lDQUxfQURE UkVTUyZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBPZmZzZXQ7PGJyPg0KKyZuYnNwOyBFRklf SE9CX0hBTkRPRkZfSU5GT19UQUJMRSZuYnNwOyAqSG9iVGFibGU7PGJyPg0KKzxicj4NCismbmJz cDsgSG9iLlJhdyZuYnNwOyA9IEdldEhvYkxpc3QgKCk7PGJyPg0KKyZuYnNwOyBIb2JUYWJsZSA9 IEhvYi5IYW5kb2ZmSW5mb3JtYXRpb25UYWJsZTs8YnI+DQorPGJyPg0KKyZuYnNwOyBpZiAoUGFn ZXMgPT0gMCkgezxicj4NCismbmJzcDsgJm5ic3A7IHJldHVybiBOVUxMOzxicj4NCismbmJzcDsg fTxicj4NCis8YnI+DQorJm5ic3A7IC8vIE1ha2Ugc3VyZSBhbGxvY2F0aW9uIGFkZHJlc3MgaXMg cGFnZSBhbGxpZ25lZC48YnI+DQorJm5ic3A7IE9mZnNldCA9IEhvYlRhYmxlLSZndDtFZmlGcmVl TWVtb3J5VG9wICZhbXA7IEVGSV9QQUdFX01BU0s7PGJyPg0KKyZuYnNwOyBpZiAoT2Zmc2V0ICE9 IDApIHs8YnI+DQorJm5ic3A7ICZuYnNwOyBIb2JUYWJsZS0mZ3Q7RWZpRnJlZU1lbW9yeVRvcCAt PSBPZmZzZXQ7PGJyPg0KKyZuYnNwOyB9PGJyPg0KKzxicj4NCismbmJzcDsgLy88YnI+DQorJm5i c3A7IC8vIENoZWNrIGF2YWlsYWJsZSBtZW1vcnkgZm9yIHRoZSBhbGxvY2F0aW9uPGJyPg0KKyZu YnNwOyAvLzxicj4NCismbmJzcDsgaWYgKEhvYlRhYmxlLSZndDtFZmlGcmVlTWVtb3J5VG9wIC0g KChQYWdlcyAqIEVGSV9QQUdFX1NJWkUpICsgc2l6ZW9mIChFRklfSE9CX01FTU9SWV9BTExPQ0FU SU9OKSkgJmx0OyBIb2JUYWJsZS0mZ3Q7RWZpRnJlZU1lbW9yeUJvdHRvbSkgezxicj4NCismbmJz cDsgJm5ic3A7IHJldHVybiBOVUxMOzxicj4NCismbmJzcDsgfTxicj4NCis8YnI+DQorJm5ic3A7 IEhvYlRhYmxlLSZndDtFZmlGcmVlTWVtb3J5VG9wIC09IFBhZ2VzICogRUZJX1BBR0VfU0laRTs8 YnI+DQorJm5ic3A7IEJ1aWxkTWVtb3J5QWxsb2NhdGlvbkhvYiAoSG9iVGFibGUtJmd0O0VmaUZy ZWVNZW1vcnlUb3AsIFBhZ2VzICogRUZJX1BBR0VfU0laRSwgTWVtb3J5VHlwZSk7PGJyPg0KKzxi cj4NCismbmJzcDsgcmV0dXJuIChWT0lEICopKFVJTlROKUhvYlRhYmxlLSZndDtFZmlGcmVlTWVt b3J5VG9wOzxicj4NCit9PGJyPg0KKzxicj4NCiZuYnNwOy8qKjxicj4NCiZuYnNwOyAmbmJzcDtB bGxvY2F0ZXMgb25lIG9yIG1vcmUgcGFnZXMgb2YgdHlwZSBFZmlCb290U2VydmljZXNEYXRhLjxi cj4NCjxicj4NCmRpZmYgLS1naXQgYS9VZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5L1By aW50SG9iLmMgYi9VZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5L1ByaW50SG9iLmM8YnI+ DQppbmRleCBiNjNlOTNjMDdlYzIuLjE1M2QxYjAwZjYzNyAxMDA2NDQ8YnI+DQotLS0gYS9VZWZp UGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5L1ByaW50SG9iLmM8YnI+DQorKysgYi9VZWZpUGF5 bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5L1ByaW50SG9iLmM8YnI+DQpAQCAtMTY5LDEzICsxNjks MTMgQEAgUHJpbnRNZW1vcnlBbGxvY2F0aW9uSG9iICg8YnI+DQombmJzcDt9PGJyPg0KPGJyPg0K Jm5ic3A7LyoqPGJyPg0KLSZuYnNwOyBQcmludCB0aGUgaW5mb3JtYXRpb24gaW4gUmVzb3VyY2Ug RGlzY3JpcHRvciBIb2IuPGJyPg0KKyZuYnNwOyBQcmludCB0aGUgaW5mb3JtYXRpb24gaW4gUmVz b3VyY2UgRGVzY3JpcHRvciBIb2IuPGJyPg0KJm5ic3A7ICZuYnNwO0BwYXJhbVtpbl0mbmJzcDsg SG9iU3RhcnQmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDtBIHBvaW50ZXIgdG8gSE9CIG9mIHR5 cGUgRUZJX0hPQl9UWVBFX1JFU09VUkNFX0RFU0NSSVBUT1IuPGJyPg0KJm5ic3A7ICZuYnNwO0Bw YXJhbVtpbl0mbmJzcDsgSG9iTGVuZ3RoJm5ic3A7ICZuYnNwOyAmbmJzcDsgVGhlIExlbmd0aCBp biBieXRlcyBvZiBIT0Igb2YgdHlwZSBFRklfSE9CX1RZUEVfUkVTT1VSQ0VfREVTQ1JJUFRPUi48 YnI+DQombmJzcDsgJm5ic3A7QHJldHZhbCBFRklfU1VDQ0VTUyZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyBJZiBpdCBjb21wbGV0ZWQgc3VjY2Vzc2Z1bGx5Ljxicj4NCiZuYnNwOyoqLzxicj4N CiZuYnNwO0VGSV9TVEFUVVM8YnI+DQotUHJpbnRSZXNvdXJjZURpc2NyaXB0b3JIb2IgKDxicj4N CitQcmludFJlc291cmNlRGVzY3JpcHRvckhvYiAoPGJyPg0KJm5ic3A7ICZuYnNwO0lOJm5ic3A7 IFZPSUQmbmJzcDsgJm5ic3A7ICpIb2JTdGFydCw8YnI+DQombmJzcDsgJm5ic3A7SU4mbmJzcDsg VUlOVDE2Jm5ic3A7IEhvYkxlbmd0aDxicj4NCiZuYnNwOyAmbmJzcDspPGJyPg0KQEAgLTYyMCw3 ICs2MjAsNyBAQCBQcmludEZ2M0hvYiAoPGJyPg0KJm5ic3A7SE9CX1BSSU5UX0hBTkRMRVJfVEFC TEUmbmJzcDsgbUhvYkhhbmRsZXNbXSA9IHs8YnI+DQombmJzcDsgJm5ic3A7eyBFRklfSE9CX1RZ UEVfSEFORE9GRiwmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsmcXVvdDtFRklfSE9CX1RZUEVfSEFORE9GRiZxdW90OywmbmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDtQcmludEhhbmRPZmZIb2ImbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyB9LDxicj4NCiZuYnNwOyAmbmJzcDt7IEVGSV9IT0Jf VFlQRV9NRU1PUllfQUxMT0NBVElPTiwmbmJzcDsgJm5ic3A7JnF1b3Q7RUZJX0hPQl9UWVBFX01F TU9SWV9BTExPQ0FUSU9OJnF1b3Q7LCZuYnNwOyAmbmJzcDtQcmludE1lbW9yeUFsbG9jYXRpb25I b2ImbmJzcDsgJm5ic3A7fSw8YnI+DQotJm5ic3A7IHsgRUZJX0hPQl9UWVBFX1JFU09VUkNFX0RF U0NSSVBUT1IsICZxdW90O0VGSV9IT0JfVFlQRV9SRVNPVVJDRV9ERVNDUklQVE9SJnF1b3Q7LCBQ cmludFJlc291cmNlRGlzY3JpcHRvckhvYiB9LDxicj4NCismbmJzcDsgeyBFRklfSE9CX1RZUEVf UkVTT1VSQ0VfREVTQ1JJUFRPUiwgJnF1b3Q7RUZJX0hPQl9UWVBFX1JFU09VUkNFX0RFU0NSSVBU T1ImcXVvdDssIFByaW50UmVzb3VyY2VEZXNjcmlwdG9ySG9iIH0sPGJyPg0KJm5ic3A7ICZuYnNw O3sgRUZJX0hPQl9UWVBFX0dVSURfRVhURU5TSU9OLCZuYnNwOyAmbmJzcDsgJm5ic3A7ICZxdW90 O0VGSV9IT0JfVFlQRV9HVUlEX0VYVEVOU0lPTiZxdW90OywmbmJzcDsgJm5ic3A7ICZuYnNwOyBQ cmludEd1aWRIb2ImbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7fSw8YnI+DQombmJzcDsgJm5ic3A7eyBFRklfSE9CX1RZUEVfRlYsJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJnF1 b3Q7RUZJX0hPQl9UWVBFX0ZWJnF1b3Q7LCZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IFByaW50RnZIb2ImbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwO30sPGJyPg0KJm5i c3A7ICZuYnNwO3sgRUZJX0hPQl9UWVBFX0NQVSwmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyZxdW90O0VGSV9IT0JfVFlQRV9DUFUm cXVvdDssJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDtQcmludENwdUhvYiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgfSw8YnI+DQpkaWZmIC0tZ2l0IGEvVWVmaVBheWxvYWRQa2cv VWVmaVBheWxvYWRFbnRyeS9Vbml2ZXJzYWxQYXlsb2FkRW50cnkuYyBiL1VlZmlQYXlsb2FkUGtn L1VlZmlQYXlsb2FkRW50cnkvVW5pdmVyc2FsUGF5bG9hZEVudHJ5LmM8YnI+DQppbmRleCBmMzdj MDBmYWQ3NzQuLjViODY0ZWVlZmUxMCAxMDA2NDQ8YnI+DQotLS0gYS9VZWZpUGF5bG9hZFBrZy9V ZWZpUGF5bG9hZEVudHJ5L1VuaXZlcnNhbFBheWxvYWRFbnRyeS5jPGJyPg0KKysrIGIvVWVmaVBh eWxvYWRQa2cvVWVmaVBheWxvYWRFbnRyeS9Vbml2ZXJzYWxQYXlsb2FkRW50cnkuYzxicj4NCkBA IC00ODYsMTIgKzQ4Niw2IEBAIF9Nb2R1bGVFbnRyeVBvaW50ICg8YnI+DQombmJzcDsgJm5ic3A7 U3RhdHVzID0gVW5pdmVyc2FsTG9hZER4ZUNvcmUgKER4ZUZ2LCAmYW1wO0R4ZUNvcmVFbnRyeVBv aW50KTs8YnI+DQombmJzcDsgJm5ic3A7QVNTRVJUX0VGSV9FUlJPUiAoU3RhdHVzKTs8YnI+DQo8 YnI+DQotJm5ic3A7IC8vPGJyPg0KLSZuYnNwOyAvLyBNYXNrIG9mZiBhbGwgbGVnYWN5IDgyNTkg aW50ZXJydXB0IHNvdXJjZXM8YnI+DQotJm5ic3A7IC8vPGJyPg0KLSZuYnNwOyBJb1dyaXRlOCAo TEVHQUNZXzgyNTlfTUFTS19SRUdJU1RFUl9NQVNURVIsIDB4RkYpOzxicj4NCi0mbmJzcDsgSW9X cml0ZTggKExFR0FDWV84MjU5X01BU0tfUkVHSVNURVJfU0xBVkUsIDB4RkYpOzxicj4NCi08YnI+ DQombmJzcDsgJm5ic3A7SG9iLkhhbmRvZmZJbmZvcm1hdGlvblRhYmxlID0gKEVGSV9IT0JfSEFO RE9GRl9JTkZPX1RBQkxFICopR2V0Rmlyc3RIb2IgKEVGSV9IT0JfVFlQRV9IQU5ET0ZGKTs8YnI+ DQombmJzcDsgJm5ic3A7SGFuZE9mZlRvRHhlQ29yZSAoRHhlQ29yZUVudHJ5UG9pbnQsIEhvYik7 PGJyPg0KPGJyPg0KZGlmZiAtLWdpdCBhL1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkv WDY0L0R4ZUxvYWRGdW5jLmMgYi9VZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5L1g2NC9E eGVMb2FkRnVuYy5jPGJyPg0KaW5kZXggMzQ2ZTNmZWIwNDU5Li42YzM2MDNmMTIwOTggMTAwNjQ0 PGJyPg0KLS0tIGEvVWVmaVBheWxvYWRQa2cvVWVmaVBheWxvYWRFbnRyeS9YNjQvRHhlTG9hZEZ1 bmMuYzxicj4NCisrKyBiL1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkvWDY0L0R4ZUxv YWRGdW5jLmM8YnI+DQpAQCAtMTMsMTAgKzEzLDEzIEBAIFNQRFgtTGljZW5zZS1JZGVudGlmaWVy OiBCU0QtMi1DbGF1c2UtUGF0ZW50PGJyPg0KJm5ic3A7I2luY2x1ZGUgJmx0O0xpYnJhcnkvTWVt b3J5QWxsb2NhdGlvbkxpYi5oJmd0Ozxicj4NCiZuYnNwOyNpbmNsdWRlICZsdDtMaWJyYXJ5L1Bj ZExpYi5oJmd0Ozxicj4NCiZuYnNwOyNpbmNsdWRlICZsdDtMaWJyYXJ5L0hvYkxpYi5oJmd0Ozxi cj4NCisjaW5jbHVkZSAmbHQ7TGlicmFyeS9GZHRMaWIuaCZndDs8YnI+DQombmJzcDsjaW5jbHVk ZSAmcXVvdDtYNjQvVmlydHVhbE1lbW9yeS5oJnF1b3Q7PGJyPg0KJm5ic3A7I2luY2x1ZGUgJnF1 b3Q7VWVmaVBheWxvYWRFbnRyeS5oJnF1b3Q7PGJyPg0KJm5ic3A7I2RlZmluZSBTVEFDS19TSVpF Jm5ic3A7IDB4MjAwMDA8YnI+DQo8YnI+DQorZXh0ZXJuIFZPSUQmbmJzcDsgKm1Ib2JMaXN0Ozxi cj4NCis8YnI+DQombmJzcDsvKio8YnI+DQombmJzcDsgJm5ic3A7IFRyYW5zZmVycyBjb250cm9s IHRvIER4ZUNvcmUuPGJyPg0KPGJyPg0KQEAgLTQwLDYgKzQzLDE1IEBAIEhhbmRPZmZUb0R4ZUNv cmUgKDxicj4NCiZuYnNwOyAmbmJzcDtWT0lEJm5ic3A7ICZuYnNwOypHaGNiQmFzZTs8YnI+DQom bmJzcDsgJm5ic3A7VUlOVE4mbmJzcDsgR2hjYlNpemU7PGJyPg0KPGJyPg0KKyZuYnNwOyAvLyBJ bml0aWFsaXplIGZsb2F0aW5nIHBvaW50IG9wZXJhdGluZyBlbnZpcm9ubWVudCB0byBiZSBjb21w bGlhbnQgd2l0aCBVRUZJIHNwZWMuPGJyPg0KKyZuYnNwOyBJbml0aWFsaXplRmxvYXRpbmdQb2lu dFVuaXRzICgpOzxicj4NCis8YnI+DQorJm5ic3A7IC8vPGJyPg0KKyZuYnNwOyAvLyBNYXNrIG9m ZiBhbGwgbGVnYWN5IDgyNTkgaW50ZXJydXB0IHNvdXJjZXM8YnI+DQorJm5ic3A7IC8vPGJyPg0K KyZuYnNwOyBJb1dyaXRlOCAoTEVHQUNZXzgyNTlfTUFTS19SRUdJU1RFUl9NQVNURVIsIDB4RkYp Ozxicj4NCismbmJzcDsgSW9Xcml0ZTggKExFR0FDWV84MjU5X01BU0tfUkVHSVNURVJfU0xBVkUs IDB4RkYpOzxicj4NCis8YnI+DQombmJzcDsgJm5ic3A7Ly88YnI+DQombmJzcDsgJm5ic3A7Ly8g Q2xlYXIgcGFnZSAwIGFuZCBtYXJrIGl0IGFzIGFsbG9jYXRlZCBpZiBOVUxMIHBvaW50ZXIgZGV0 ZWN0aW9uIGlzIGVuYWJsZWQuPGJyPg0KJm5ic3A7ICZuYnNwOy8vPGJyPg0KZGlmZiAtLWdpdCBh L1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkvWDY0L0R4ZUxvYWRGdW5jLmMgYi9VZWZp UGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5L1g2NC9EeGVMb2FkRnVuY0ZpdC5jPGJyPg0Kc2lt aWxhcml0eSBpbmRleCA3NCU8YnI+DQpjb3B5IGZyb20gVWVmaVBheWxvYWRQa2cvVWVmaVBheWxv YWRFbnRyeS9YNjQvRHhlTG9hZEZ1bmMuYzxicj4NCmNvcHkgdG8gVWVmaVBheWxvYWRQa2cvVWVm aVBheWxvYWRFbnRyeS9YNjQvRHhlTG9hZEZ1bmNGaXQuYzxicj4NCmluZGV4IDM0NmUzZmViMDQ1 OS4uMzViNTJhOTExZGYzIDEwMDY0NDxicj4NCi0tLSBhL1VlZmlQYXlsb2FkUGtnL1VlZmlQYXls b2FkRW50cnkvWDY0L0R4ZUxvYWRGdW5jLmM8YnI+DQorKysgYi9VZWZpUGF5bG9hZFBrZy9VZWZp UGF5bG9hZEVudHJ5L1g2NC9EeGVMb2FkRnVuY0ZpdC5jPGJyPg0KQEAgLTEsOCArMSw4IEBAPGJy Pg0KJm5ic3A7LyoqIEBmaWxlPGJyPg0KJm5ic3A7ICZuYnNwO3g2NC1zcGVjaWZjIGZ1bmN0aW9u YWxpdHkgZm9yIER4ZUxvYWQuPGJyPg0KPGJyPg0KLUNvcHlyaWdodCAoYykgMjAwNiAtIDIwMjAs IEludGVsIENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLiZsdDtCUiZndDs8YnI+DQot U1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZS1QYXRlbnQ8YnI+DQorJm5ic3A7 IENvcHlyaWdodCAoYykgMjAyNCwgSW50ZWwgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2 ZWQuJmx0O0JSJmd0Ozxicj4NCismbmJzcDsgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0y LUNsYXVzZS1QYXRlbnQ8YnI+DQo8YnI+DQombmJzcDsqKi88YnI+DQo8YnI+DQpAQCAtMTMsMTAg KzEzLDE0IEBAIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMi1DbGF1c2UtUGF0ZW50PGJy Pg0KJm5ic3A7I2luY2x1ZGUgJmx0O0xpYnJhcnkvTWVtb3J5QWxsb2NhdGlvbkxpYi5oJmd0Ozxi cj4NCiZuYnNwOyNpbmNsdWRlICZsdDtMaWJyYXJ5L1BjZExpYi5oJmd0Ozxicj4NCiZuYnNwOyNp bmNsdWRlICZsdDtMaWJyYXJ5L0hvYkxpYi5oJmd0Ozxicj4NCisjaW5jbHVkZSAmbHQ7TGlicmFy eS9GZHRMaWIuaCZndDs8YnI+DQorI2luY2x1ZGUgJmx0O0xpYnJhcnkvUGNkTGliLmgmZ3Q7PGJy Pg0KJm5ic3A7I2luY2x1ZGUgJnF1b3Q7WDY0L1ZpcnR1YWxNZW1vcnkuaCZxdW90Ozxicj4NCiZu YnNwOyNpbmNsdWRlICZxdW90O1VlZmlQYXlsb2FkRW50cnkuaCZxdW90Ozxicj4NCiZuYnNwOyNk ZWZpbmUgU1RBQ0tfU0laRSZuYnNwOyAweDIwMDAwPGJyPg0KPGJyPg0KK2V4dGVybiBWT0lEJm5i c3A7ICptSG9iTGlzdDs8YnI+DQorPGJyPg0KJm5ic3A7LyoqPGJyPg0KJm5ic3A7ICZuYnNwOyBU cmFuc2ZlcnMgY29udHJvbCB0byBEeGVDb3JlLjxicj4NCjxicj4NCkBAIC00MCw2ICs0NCwxNSBA QCBIYW5kT2ZmVG9EeGVDb3JlICg8YnI+DQombmJzcDsgJm5ic3A7Vk9JRCZuYnNwOyAmbmJzcDsq R2hjYkJhc2U7PGJyPg0KJm5ic3A7ICZuYnNwO1VJTlROJm5ic3A7IEdoY2JTaXplOzxicj4NCjxi cj4NCismbmJzcDsgLy8gSW5pdGlhbGl6ZSBmbG9hdGluZyBwb2ludCBvcGVyYXRpbmcgZW52aXJv bm1lbnQgdG8gYmUgY29tcGxpYW50IHdpdGggVUVGSSBzcGVjLjxicj4NCismbmJzcDsgSW5pdGlh bGl6ZUZsb2F0aW5nUG9pbnRVbml0cyAoKTs8YnI+DQorPGJyPg0KKyZuYnNwOyAvLzxicj4NCism bmJzcDsgLy8gTWFzayBvZmYgYWxsIGxlZ2FjeSA4MjU5IGludGVycnVwdCBzb3VyY2VzPGJyPg0K KyZuYnNwOyAvLzxicj4NCismbmJzcDsgSW9Xcml0ZTggKExFR0FDWV84MjU5X01BU0tfUkVHSVNU RVJfTUFTVEVSLCAweEZGKTs8YnI+DQorJm5ic3A7IElvV3JpdGU4IChMRUdBQ1lfODI1OV9NQVNL X1JFR0lTVEVSX1NMQVZFLCAweEZGKTs8YnI+DQorPGJyPg0KJm5ic3A7ICZuYnNwOy8vPGJyPg0K Jm5ic3A7ICZuYnNwOy8vIENsZWFyIHBhZ2UgMCBhbmQgbWFyayBpdCBhcyBhbGxvY2F0ZWQgaWYg TlVMTCBwb2ludGVyIGRldGVjdGlvbiBpcyBlbmFibGVkLjxicj4NCiZuYnNwOyAmbmJzcDsvLzxi cj4NCkBAIC0xMDYsMyArMTE5LDE3IEBAIEhhbmRPZmZUb0R4ZUNvcmUgKDxicj4NCiZuYnNwOyAm bmJzcDsgJm5ic3A7VG9wT2ZTdGFjazxicj4NCiZuYnNwOyAmbmJzcDsgJm5ic3A7KTs8YnI+DQom bmJzcDt9PGJyPg0KKzxicj4NCisvKio8YnI+DQorJm5ic3A7IEVudHJ5IHBvaW50IHRvIHRoZSBD IGxhbmd1YWdlIHBoYXNlIG9mIFVFRkkgcGF5bG9hZC48YnI+DQorJm5ic3A7IEBwYXJhbVtpbl0m bmJzcDsgJm5ic3A7Qm9vdGxvYWRlclBhcmFtZXRlciZuYnNwOyAmbmJzcDsgVGhlIHN0YXJ0aW5n IGFkZHJlc3Mgb2YgYm9vdGxvYWRlciBwYXJhbWV0ZXIgYmxvY2suPGJyPg0KKyZuYnNwOyBAcmV0 dmFsJm5ic3A7ICZuYnNwOyAmbmJzcDsgSXQgd2lsbCBub3QgcmV0dXJuIGlmIFNVQ0NFU1MsIGFu ZCByZXR1cm4gZXJyb3Igd2hlbiBwYXNzaW5nIGJvb3Rsb2FkZXIgcGFyYW1ldGVyLjxicj4NCisq Ki88YnI+DQorRUZJX1NUQVRVUzxicj4NCitFRklBUEk8YnI+DQorX01vZHVsZUVudHJ5UG9pbnQg KDxicj4NCismbmJzcDsgSU4gVUlOVE4mbmJzcDsgQm9vdGxvYWRlclBhcmFtZXRlcjxicj4NCism bmJzcDsgKTxicj4NCit7PGJyPg0KKyZuYnNwOyByZXR1cm4gRml0VXBsRW50cnlQb2ludCAoQm9v dGxvYWRlclBhcmFtZXRlcik7PGJyPg0KK308YnI+DQpkaWZmIC0tZ2l0IGEvVWVmaVBheWxvYWRQ a2cvVWVmaVBheWxvYWRFbnRyeS9GaXRVbml2ZXJzYWxQYXlsb2FkRW50cnkuaW5mIGIvVWVmaVBh eWxvYWRQa2cvVWVmaVBheWxvYWRFbnRyeS9GaXRVbml2ZXJzYWxQYXlsb2FkRW50cnkuaW5mPGJy Pg0KaW5kZXggYjg3YTA5ODllZWUzLi5jODdlNjc0ZjdjYmQgMTAwNjQ0PGJyPg0KLS0tIGEvVWVm aVBheWxvYWRQa2cvVWVmaVBheWxvYWRFbnRyeS9GaXRVbml2ZXJzYWxQYXlsb2FkRW50cnkuaW5m PGJyPg0KKysrIGIvVWVmaVBheWxvYWRQa2cvVWVmaVBheWxvYWRFbnRyeS9GaXRVbml2ZXJzYWxQ YXlsb2FkRW50cnkuaW5mPGJyPg0KQEAgLTMwLDEzICszMCwxMyBAQDxicj4NCiZuYnNwO1tTb3Vy Y2VzLklhMzJdPGJyPg0KJm5ic3A7ICZuYnNwO1g2NC9WaXJ0dWFsTWVtb3J5Lmg8YnI+DQombmJz cDsgJm5ic3A7WDY0L1ZpcnR1YWxNZW1vcnkuYzxicj4NCi0mbmJzcDsgSWEzMi9EeGVMb2FkRnVu Yy5jPGJyPg0KKyZuYnNwOyBJYTMyL0R4ZUxvYWRGdW5jRml0LmM8YnI+DQombmJzcDsgJm5ic3A7 SWEzMi9JZHRWZWN0b3JBc20ubmFzbTxicj4NCjxicj4NCiZuYnNwO1tTb3VyY2VzLlg2NF08YnI+ DQombmJzcDsgJm5ic3A7WDY0L1ZpcnR1YWxNZW1vcnkuaDxicj4NCiZuYnNwOyAmbmJzcDtYNjQv VmlydHVhbE1lbW9yeS5jPGJyPg0KLSZuYnNwOyBYNjQvRHhlTG9hZEZ1bmMuYzxicj4NCismbmJz cDsgWDY0L0R4ZUxvYWRGdW5jRml0LmM8YnI+DQo8YnI+DQombmJzcDtbUGFja2FnZXNdPGJyPg0K Jm5ic3A7ICZuYnNwO01kZVBrZy9NZGVQa2cuZGVjPGJyPg0KQEAgLTU0LDYgKzU0LDggQEA8YnI+ DQombmJzcDsgJm5ic3A7UGVDb2ZmTGliPGJyPg0KJm5ic3A7ICZuYnNwO0NwdUxpYjxicj4NCiZu YnNwOyAmbmJzcDtGZHRMaWI8YnI+DQorJm5ic3A7IEN1c3RvbUZkdE5vZGVQYXJzZXJMaWI8YnI+ DQorJm5ic3A7IFBjZExpYjxicj4NCjxicj4NCiZuYnNwO1tHdWlkc108YnI+DQombmJzcDsgJm5i c3A7Z0VmaU1lbW9yeVR5cGVJbmZvcm1hdGlvbkd1aWQ8YnI+DQpAQCAtNzEsNiArNzMsNyBAQDxi cj4NCiZuYnNwOyAmbmJzcDtnVW5pdmVyc2FsUGF5bG9hZEFjcGlUYWJsZUd1aWQ8YnI+DQombmJz cDsgJm5ic3A7Z1VuaXZlcnNhbFBheWxvYWRQY2lSb290QnJpZGdlSW5mb0d1aWQ8YnI+DQombmJz cDsgJm5ic3A7Z1VuaXZlcnNhbFBheWxvYWRTbWJpb3MzVGFibGVHdWlkPGJyPg0KKyZuYnNwOyBn VW5pdmVyc2FsUGF5bG9hZERldmljZVRyZWVHdWlkPGJyPg0KPGJyPg0KJm5ic3A7W0ZlYXR1cmVQ Y2QuSUEzMl08YnI+DQombmJzcDsgJm5ic3A7Z0VmaU1kZU1vZHVsZVBrZ1Rva2VuU3BhY2VHdWlk LlBjZER4ZUlwbFN3aXRjaFRvTG9uZ01vZGUmbmJzcDsgJm5ic3A7ICZuYnNwOyAjIyBDT05TVU1F Uzxicj4NCkBAIC03OCw3ICs4MSw2IEBAPGJyPg0KJm5ic3A7W0ZlYXR1cmVQY2QuWDY0XTxicj4N CiZuYnNwOyAmbmJzcDtnRWZpTWRlTW9kdWxlUGtnVG9rZW5TcGFjZUd1aWQuUGNkRHhlSXBsQnVp bGRQYWdlVGFibGVzJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IyMgQ09OU1VNRVM8YnI+DQo8 YnI+DQotPGJyPg0KJm5ic3A7W1BjZC5JQTMyLFBjZC5YNjRdPGJyPg0KJm5ic3A7ICZuYnNwO2dV ZWZpUGF5bG9hZFBrZ1Rva2VuU3BhY2VHdWlkLlBjZFBjZERyaXZlckZpbGU8YnI+DQombmJzcDsg Jm5ic3A7Z0VmaU1kZU1vZHVsZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZFVzZTFHUGFnZVRhYmxlJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAjIyBTT01FVElNRVNfQ09OU1VNRVM8YnI+DQpAQCAtODgsMTEgKzkw LDE5IEBAPGJyPg0KJm5ic3A7ICZuYnNwO2dFZmlNZGVNb2R1bGVQa2dUb2tlblNwYWNlR3VpZC5Q Y2RDcHVTdGFja0d1YXJkJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsjIyBDT05TVU1FUzxicj4N CiZuYnNwOyAmbmJzcDtnRWZpTWRlTW9kdWxlUGtnVG9rZW5TcGFjZUd1aWQuUGNkR2hjYkJhc2Um bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICMjIENPTlNVTUVTPGJyPg0K Jm5ic3A7ICZuYnNwO2dFZmlNZGVNb2R1bGVQa2dUb2tlblNwYWNlR3VpZC5QY2RHaGNiU2l6ZSZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgIyMgQ09OU1VNRVM8YnI+DQot PGJyPg0KJm5ic3A7ICZuYnNwO2dVZWZpUGF5bG9hZFBrZ1Rva2VuU3BhY2VHdWlkLlBjZFBheWxv YWRGZE1lbUJhc2U8YnI+DQombmJzcDsgJm5ic3A7Z1VlZmlQYXlsb2FkUGtnVG9rZW5TcGFjZUd1 aWQuUGNkUGF5bG9hZEZkTWVtU2l6ZTxicj4NCiZuYnNwOyAmbmJzcDtnVWVmaVBheWxvYWRQa2dU b2tlblNwYWNlR3VpZC5QY2RTeXN0ZW1NZW1vcnlVZWZpUmVnaW9uU2l6ZTxicj4NCi08YnI+DQom bmJzcDsgJm5ic3A7Z0VmaU1kZU1vZHVsZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZFNldE54Rm9yU3Rh Y2smbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7 IyMgU09NRVRJTUVTX0NPTlNVTUVTPGJyPg0KJm5ic3A7ICZuYnNwO2dFZmlNZGVNb2R1bGVQa2dU b2tlblNwYWNlR3VpZC5QY2REeGVOeE1lbW9yeVByb3RlY3Rpb25Qb2xpY3kgIyMgU09NRVRJTUVT X0NPTlNVTUVTPGJyPg0KJm5ic3A7ICZuYnNwO2dFZmlNZGVNb2R1bGVQa2dUb2tlblNwYWNlR3Vp ZC5QY2RJbWFnZVByb3RlY3Rpb25Qb2xpY3kmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsjIyBT T01FVElNRVNfQ09OU1VNRVM8YnI+DQorJm5ic3A7IGdVZWZpUGF5bG9hZFBrZ1Rva2VuU3BhY2VH dWlkLlBjZEhhbmRPZmZGZHRFbmFibGU8YnI+DQorJm5ic3A7IGdVZWZpUGF5bG9hZFBrZ1Rva2Vu U3BhY2VHdWlkLlBjZE1lbW9yeVR5cGVFZmlBQ1BJTWVtb3J5TlZTPGJyPg0KKyZuYnNwOyBnVWVm aVBheWxvYWRQa2dUb2tlblNwYWNlR3VpZC5QY2RNZW1vcnlUeXBlRWZpQUNQSVJlY2xhaW1NZW1v cnk8YnI+DQorJm5ic3A7IGdVZWZpUGF5bG9hZFBrZ1Rva2VuU3BhY2VHdWlkLlBjZE1lbW9yeVR5 cGVFZmlSZXNlcnZlZE1lbW9yeVR5cGU8YnI+DQorJm5ic3A7IGdVZWZpUGF5bG9hZFBrZ1Rva2Vu U3BhY2VHdWlkLlBjZE1lbW9yeVR5cGVFZmlSdW50aW1lU2VydmljZXNEYXRhPGJyPg0KKyZuYnNw OyBnVWVmaVBheWxvYWRQa2dUb2tlblNwYWNlR3VpZC5QY2RNZW1vcnlUeXBlRWZpUnVudGltZVNl cnZpY2VzQ29kZTxicj4NCis8YnI+DQorW0J1aWxkT3B0aW9uc108YnI+DQorJm5ic3A7IE1TRlQ6 Kl8qXypfQ0NfRkxBR1MgPSAvd2Q0MjQ0IC93ZDQzMDU8YnI+DQorJm5ic3A7IEdDQzoqXypfKl9D Q19GTEFHUyZuYnNwOyA9IC1Xbm8tZXJyb3I9cG9pbnRlci10by1pbnQtY2FzdCAtV25vLWVycm9y PWludC10by1wb2ludGVyLWNhc3Q8YnI+DQpkaWZmIC0tZ2l0IGEvVWVmaVBheWxvYWRQa2cvVWVm aVBheWxvYWRFbnRyeS9VZWZpUGF5bG9hZEVudHJ5LmggYi9VZWZpUGF5bG9hZFBrZy9VZWZpUGF5 bG9hZEVudHJ5L1VlZmlQYXlsb2FkRW50cnkuaDxicj4NCmluZGV4IDgwY2NjNTA3MmM1NS4uMDlm Y2U4ZGJjZjM1IDEwMDY0NDxicj4NCi0tLSBhL1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50 cnkvVWVmaVBheWxvYWRFbnRyeS5oPGJyPg0KKysrIGIvVWVmaVBheWxvYWRQa2cvVWVmaVBheWxv YWRFbnRyeS9VZWZpUGF5bG9hZEVudHJ5Lmg8YnI+DQpAQCAtMzUsNiArMzUsNyBAQDxicj4NCiZu YnNwOyNpbmNsdWRlICZsdDtVbml2ZXJzYWxQYXlsb2FkL1VuaXZlcnNhbFBheWxvYWQuaCZndDs8 YnI+DQombmJzcDsjaW5jbHVkZSAmbHQ7VW5pdmVyc2FsUGF5bG9hZC9FeHRyYURhdGEuaCZndDs8 YnI+DQombmJzcDsjaW5jbHVkZSAmbHQ7VW5pdmVyc2FsUGF5bG9hZC9TZXJpYWxQb3J0SW5mby5o Jmd0Ozxicj4NCisjaW5jbHVkZSAmbHQ7VW5pdmVyc2FsUGF5bG9hZC9EZXZpY2VUcmVlLmgmZ3Q7 PGJyPg0KJm5ic3A7I2luY2x1ZGUgJmx0O0d1aWQvUGNkRGF0YUJhc2VTaWduYXR1cmVHdWlkLmgm Z3Q7PGJyPg0KPGJyPg0KJm5ic3A7I2RlZmluZSBMRUdBQ1lfODI1OV9NQVNLX1JFR0lTVEVSX01B U1RFUiZuYnNwOyAweDIxPGJyPg0KQEAgLTEzNCw2ICsxMzUsMzEgQEAgVW5pdmVyc2FsTG9hZER4 ZUNvcmUgKDxicj4NCiZuYnNwOyAmbmJzcDtPVVQgUEhZU0lDQUxfQUREUkVTUyZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICpEeGVDb3JlRW50cnlQb2ludDxicj4NCiZu YnNwOyAmbmJzcDspOzxicj4NCjxicj4NCisvKio8YnI+DQorJm5ic3A7IEl0IHdpbGwgUGFyc2Ug RkRUIC1ub2RlIGJhc2VkIG9uIGluZm9ybWF0aW9uLjxicj4NCismbmJzcDsgQHBhcmFtW2luXSZu YnNwOyBGZHRCYXNlJm5ic3A7ICZuYnNwO1RoZSBzdGFydGluZyBtZW1vcnkgYWRkcmVzcyBvZiBG ZHRCYXNlPGJyPg0KKyZuYnNwOyBAcmV0dmFsIEhvYkxpc3QmbmJzcDsgJm5ic3A7VGhlIGJhc2Ug YWRkcmVzcyBvZiBIb2JsaXN0Ljxicj4NCis8YnI+DQorKiovPGJyPg0KK1VJTlQ2NDxicj4NCitF RklBUEk8YnI+DQorRmR0Tm9kZVBhcnNlciAoPGJyPg0KKyZuYnNwOyBJTiBWT0lEJm5ic3A7ICpG ZHRCYXNlPGJyPg0KKyZuYnNwOyApOzxicj4NCis8YnI+DQorLyoqPGJyPg0KKyZuYnNwOyBJdCB3 aWxsIFBhcnNlIEZEVCAtY3VzdG9tIG5vZGUgYmFzZWQgb24gaW5mb3JtYXRpb24uPGJyPg0KKyZu YnNwOyBAcGFyYW1baW5dJm5ic3A7IEZkdEJhc2UgVGhlIHN0YXJ0aW5nIG1lbW9yeSBhZGRyZXNz IG9mIEZkdEJhc2U8YnI+DQorJm5ic3A7IEBwYXJhbVtpbl0mbmJzcDsgSG9zdExpc3QgVGhlIHN0 YXJ0aW5nIG1lbW9yeSBhZGRyZXNzIG9mIE5ldyBIb2IgbGlzdC48YnI+DQorPGJyPg0KKyoqLzxi cj4NCitVSU5UTjxicj4NCitFRklBUEk8YnI+DQorQ3VzdG9tRmR0Tm9kZVBhcnNlciAoPGJyPg0K KyZuYnNwOyBJTiBWT0lEJm5ic3A7ICpGZHRCYXNlLDxicj4NCismbmJzcDsgSU4gVk9JRCZuYnNw OyAqSG9zdExpc3Q8YnI+DQorJm5ic3A7ICk7PGJyPg0KKzxicj4NCiZuYnNwOy8qKjxicj4NCiZu YnNwOyAmbmJzcDsgVHJhbnNmZXJzIGNvbnRyb2wgdG8gRHhlQ29yZS48YnI+DQo8YnI+DQpAQCAt MjA2LDQgKzIzMiw0NiBAQCBCdWlsZEhvYkZyb21BY3BpICg8YnI+DQombmJzcDsgJm5ic3A7SU4m bmJzcDsgJm5ic3A7VUlOVDY0Jm5ic3A7IEFjcGlUYWJsZUJhc2U8YnI+DQombmJzcDsgJm5ic3A7 KTs8YnI+DQo8YnI+DQorLyoqPGJyPg0KKyZuYnNwOyBBbGxvY2F0ZXMgb25lIG9yIG1vcmUgcGFn ZXMgLjxicj4NCis8YnI+DQorJm5ic3A7IEFsbG9jYXRlcyB0aGUgbnVtYmVyIG9mIHBhZ2VzIG9m IE1lbW9yeVR5cGUgYW5kIHJldHVybnMgYSBwb2ludGVyIHRvIHRoZTxicj4NCismbmJzcDsgYWxs b2NhdGVkIGJ1ZmZlci4mbmJzcDsgVGhlIGJ1ZmZlciByZXR1cm5lZCBpcyBhbGlnbmVkIG9uIGEg NEtCIGJvdW5kYXJ5Ljxicj4NCismbmJzcDsgSWYgUGFnZXMgaXMgMCwgdGhlbiBOVUxMIGlzIHJl dHVybmVkLjxicj4NCismbmJzcDsgSWYgdGhlcmUgaXMgbm90IGVub3VnaCBtZW1vcnkgYXZhaWxi bGUgdG8gc2F0aXNmeSB0aGUgcmVxdWVzdCwgdGhlbiBOVUxMPGJyPg0KKyZuYnNwOyBpcyByZXR1 cm5lZC48YnI+DQorPGJyPg0KKyZuYnNwOyBAcGFyYW0mbmJzcDsgJm5ic3A7UGFnZXMmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwO1Ro ZSBudW1iZXIgb2YgNCBLQiBwYWdlcyB0byBhbGxvY2F0ZS48YnI+DQorJm5ic3A7IEBwYXJhbSZu YnNwOyAmbmJzcDtNZW1vcnlUeXBlJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgVGhlIE1lbW9yeXR5cGU8YnI+DQorJm5ic3A7IEByZXR1cm4mbmJzcDsgQSBwb2ludGVy IHRvIHRoZSBhbGxvY2F0ZWQgYnVmZmVyIG9yIE5VTEwgaWYgYWxsb2NhdGlvbiBmYWlscy48YnI+ DQorKiovPGJyPg0KK1ZPSUQgKjxicj4NCitFRklBUEk8YnI+DQorUGF5bG9hZEFsbG9jYXRlUGFn ZXMgKDxicj4NCismbmJzcDsgSU4gVUlOVE4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyBQYWdlcyw8YnI+DQorJm5ic3A7IElOIEVGSV9NRU1PUllfVFlQRSZuYnNwOyBN ZW1vcnlUeXBlPGJyPg0KKyZuYnNwOyApOzxicj4NCis8YnI+DQorLyoqPGJyPg0KKyZuYnNwOyBF bnRyeSBwb2ludCB0byB0aGUgQyBsYW5ndWFnZSBwaGFzZSBvZiBVRUZJIHBheWxvYWQuPGJyPg0K KyZuYnNwOyBAcGFyYW1baW5dJm5ic3A7ICZuYnNwO0ZkdFBydCZuYnNwOyBUaGUgc3RhcnRpbmcg YWRkcmVzcyBvZiBGRFQgLjxicj4NCismbmJzcDsgQHJldHZhbCZuYnNwOyAmbmJzcDsgJm5ic3A7 IEl0IHdpbGwgbm90IHJldHVybiBpZiBTVUNDRVNTLCBhbmQgcmV0dXJuIGVycm9yIHdoZW4gcGFz c2luZyBib290bG9hZGVyIHBhcmFtZXRlci48YnI+DQorKiovPGJyPg0KK0VGSV9TVEFUVVM8YnI+ DQorRUZJQVBJPGJyPg0KK0ZpdFVwbEVudHJ5UG9pbnQgKDxicj4NCismbmJzcDsgSU4gVUlOVE4m bmJzcDsgQm9vdGxvYWRlclBhcmFtZXRlcjxicj4NCismbmJzcDsgKTs8YnI+DQorPGJyPg0KKy8q Kjxicj4NCismbmJzcDsgRW50cnkgcG9pbnQgdG8gdGhlIEMgbGFuZ3VhZ2UgcGhhc2Ugb2YgVUVG SSBwYXlsb2FkLjxicj4NCismbmJzcDsgQHBhcmFtW2luXSZuYnNwOyAmbmJzcDtCb290bG9hZGVy UGFyYW1ldGVyJm5ic3A7ICZuYnNwOyBUaGUgc3RhcnRpbmcgYWRkcmVzcyBvZiBib290bG9hZGVy IHBhcmFtZXRlciBibG9jay48YnI+DQorJm5ic3A7IEByZXR2YWwmbmJzcDsgJm5ic3A7ICZuYnNw OyBJdCB3aWxsIG5vdCByZXR1cm4gaWYgU1VDQ0VTUywgYW5kIHJldHVybiBlcnJvciB3aGVuIHBh c3NpbmcgYm9vdGxvYWRlciBwYXJhbWV0ZXIuPGJyPg0KKyoqLzxicj4NCitFRklfU1RBVFVTPGJy Pg0KK0VGSUFQSTxicj4NCitVcGxFbnRyeVBvaW50ICg8YnI+DQorJm5ic3A7IElOIFVJTlROJm5i c3A7IEJvb3Rsb2FkZXJQYXJhbWV0ZXI8YnI+DQorJm5ic3A7ICk7PGJyPg0KKzxicj4NCiZuYnNw OyNlbmRpZjxicj4NCmRpZmYgLS1naXQgYS9VZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5 L1VuaXZlcnNhbFBheWxvYWRFbnRyeS5pbmYgYi9VZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVu dHJ5L1VuaXZlcnNhbFBheWxvYWRFbnRyeS5pbmY8YnI+DQppbmRleCBhNjJkYTVjNzA1OWQuLmJl OTFmN2JlMjgxOSAxMDA2NDQ8YnI+DQotLS0gYS9VZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVu dHJ5L1VuaXZlcnNhbFBheWxvYWRFbnRyeS5pbmY8YnI+DQorKysgYi9VZWZpUGF5bG9hZFBrZy9V ZWZpUGF5bG9hZEVudHJ5L1VuaXZlcnNhbFBheWxvYWRFbnRyeS5pbmY8YnI+DQpAQCAtNiw0NCAr NiwzNyBAQDxicj4NCiZuYnNwOyMmbmJzcDsgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0y LUNsYXVzZS1QYXRlbnQ8YnI+DQombmJzcDsjPGJyPg0KJm5ic3A7IyM8YnI+DQotPGJyPg0KJm5i c3A7W0RlZmluZXNdPGJyPg0KJm5ic3A7ICZuYnNwO0lORl9WRVJTSU9OJm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ID0g MS4zMDxicj4NCiZuYnNwOyAmbmJzcDtCQVNFX05BTUUmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ID0gVW5p dmVyc2FsUGF5bG9hZEVudHJ5PGJyPg0KJm5ic3A7ICZuYnNwO0ZJTEVfR1VJRCZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgPSBENEYwRjI2OS0xMjA5LTRBNjYtODAzOS1DNEQ1QTcwMEVBNEU8YnI+DQombmJz cDsgJm5ic3A7TU9EVUxFX1RZUEUmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgPSBTRUM8YnI+DQombmJzcDsgJm5ic3A7 VkVSU0lPTl9TVFJJTkcmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOz0gMS4wPGJyPg0KLTxicj4NCiZuYnNwOyM8YnI+DQombmJzcDsj IFRoZSBmb2xsb3dpbmcgaW5mb3JtYXRpb24gaXMgZm9yIHJlZmVyZW5jZSBvbmx5IGFuZCBub3Qg cmVxdWlyZWQgYnkgdGhlIGJ1aWxkIHRvb2xzLjxicj4NCiZuYnNwOyM8YnI+DQombmJzcDsjJm5i c3A7IFZBTElEX0FSQ0hJVEVDVFVSRVMmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZuYnNwOz0gSUEzMiBYNjQ8YnI+DQombmJzcDsjPGJyPg0KLTxicj4NCiZuYnNwO1tTb3VyY2Vz XTxicj4NCiZuYnNwOyAmbmJzcDtVbml2ZXJzYWxQYXlsb2FkRW50cnkuYzxicj4NCiZuYnNwOyAm bmJzcDtMb2FkRHhlQ29yZS5jPGJyPg0KJm5ic3A7ICZuYnNwO01lbW9yeUFsbG9jYXRpb24uYzxi cj4NCiZuYnNwOyAmbmJzcDtQcmludEhvYi5jPGJyPg0KJm5ic3A7ICZuYnNwO0FjcGlUYWJsZS5j PGJyPg0KLTxicj4NCiZuYnNwO1tTb3VyY2VzLklhMzJdPGJyPg0KJm5ic3A7ICZuYnNwO1g2NC9W aXJ0dWFsTWVtb3J5Lmg8YnI+DQombmJzcDsgJm5ic3A7WDY0L1ZpcnR1YWxNZW1vcnkuYzxicj4N CiZuYnNwOyAmbmJzcDtJYTMyL0R4ZUxvYWRGdW5jLmM8YnI+DQombmJzcDsgJm5ic3A7SWEzMi9J ZHRWZWN0b3JBc20ubmFzbTxicj4NCi08YnI+DQombmJzcDtbU291cmNlcy5YNjRdPGJyPg0KJm5i c3A7ICZuYnNwO1g2NC9WaXJ0dWFsTWVtb3J5Lmg8YnI+DQombmJzcDsgJm5ic3A7WDY0L1ZpcnR1 YWxNZW1vcnkuYzxicj4NCiZuYnNwOyAmbmJzcDtYNjQvRHhlTG9hZEZ1bmMuYzxicj4NCi08YnI+ DQombmJzcDtbUGFja2FnZXNdPGJyPg0KJm5ic3A7ICZuYnNwO01kZVBrZy9NZGVQa2cuZGVjPGJy Pg0KJm5ic3A7ICZuYnNwO01kZU1vZHVsZVBrZy9NZGVNb2R1bGVQa2cuZGVjPGJyPg0KJm5ic3A7 ICZuYnNwO1VlZmlDcHVQa2cvVWVmaUNwdVBrZy5kZWM8YnI+DQombmJzcDsgJm5ic3A7VWVmaVBh eWxvYWRQa2cvVWVmaVBheWxvYWRQa2cuZGVjPGJyPg0KLTxicj4NCiZuYnNwO1tMaWJyYXJ5Q2xh c3Nlc108YnI+DQombmJzcDsgJm5ic3A7QmFzZU1lbW9yeUxpYjxicj4NCiZuYnNwOyAmbmJzcDtE ZWJ1Z0xpYjxicj4NCkBAIC02OSwxNCArNjIsMTIgQEA8YnI+DQombmJzcDsgJm5ic3A7Z1VuaXZl cnNhbFBheWxvYWRBY3BpVGFibGVHdWlkPGJyPg0KJm5ic3A7ICZuYnNwO2dVbml2ZXJzYWxQYXls b2FkUGNpUm9vdEJyaWRnZUluZm9HdWlkPGJyPg0KJm5ic3A7ICZuYnNwO2dVbml2ZXJzYWxQYXls b2FkU21iaW9zM1RhYmxlR3VpZDxicj4NCi08YnI+DQorJm5ic3A7IGdVbml2ZXJzYWxQYXlsb2Fk QmFzZUd1aWQ8YnI+DQorJm5ic3A7IGdVbml2ZXJzYWxQYXlsb2FkRGV2aWNlVHJlZUd1aWQ8YnI+ DQombmJzcDtbRmVhdHVyZVBjZC5JQTMyXTxicj4NCiZuYnNwOyAmbmJzcDtnRWZpTWRlTW9kdWxl UGtnVG9rZW5TcGFjZUd1aWQuUGNkRHhlSXBsU3dpdGNoVG9Mb25nTW9kZSZuYnNwOyAmbmJzcDsg Jm5ic3A7ICMjIENPTlNVTUVTPGJyPg0KLTxicj4NCiZuYnNwO1tGZWF0dXJlUGNkLlg2NF08YnI+ DQombmJzcDsgJm5ic3A7Z0VmaU1kZU1vZHVsZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZER4ZUlwbEJ1 aWxkUGFnZVRhYmxlcyZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyMjIENPTlNVTUVTPGJyPg0K LTxicj4NCi08YnI+DQombmJzcDtbUGNkLklBMzIsUGNkLlg2NF08YnI+DQombmJzcDsgJm5ic3A7 Z1VlZmlQYXlsb2FkUGtnVG9rZW5TcGFjZUd1aWQuUGNkUGNkRHJpdmVyRmlsZTxicj4NCiZuYnNw OyAmbmJzcDtnRWZpTWRlTW9kdWxlUGtnVG9rZW5TcGFjZUd1aWQuUGNkVXNlMUdQYWdlVGFibGUm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICMjIFNPTUVUSU1FU19DT05TVU1FUzxicj4NCkBAIC04NiwxMiAr NzcsOSBAQDxicj4NCiZuYnNwOyAmbmJzcDtnRWZpTWRlTW9kdWxlUGtnVG9rZW5TcGFjZUd1aWQu UGNkQ3B1U3RhY2tHdWFyZCZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IyMgQ09OU1VNRVM8YnI+ DQombmJzcDsgJm5ic3A7Z0VmaU1kZU1vZHVsZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZEdoY2JCYXNl Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAjIyBDT05TVU1FUzxicj4N CiZuYnNwOyAmbmJzcDtnRWZpTWRlTW9kdWxlUGtnVG9rZW5TcGFjZUd1aWQuUGNkR2hjYlNpemUm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICMjIENPTlNVTUVTPGJyPg0K LTxicj4NCiZuYnNwOyAmbmJzcDtnVWVmaVBheWxvYWRQa2dUb2tlblNwYWNlR3VpZC5QY2RQYXls b2FkRmRNZW1CYXNlPGJyPg0KJm5ic3A7ICZuYnNwO2dVZWZpUGF5bG9hZFBrZ1Rva2VuU3BhY2VH dWlkLlBjZFBheWxvYWRGZE1lbVNpemU8YnI+DQombmJzcDsgJm5ic3A7Z1VlZmlQYXlsb2FkUGtn VG9rZW5TcGFjZUd1aWQuUGNkU3lzdGVtTWVtb3J5VWVmaVJlZ2lvblNpemU8YnI+DQotPGJyPg0K Jm5ic3A7ICZuYnNwO2dFZmlNZGVNb2R1bGVQa2dUb2tlblNwYWNlR3VpZC5QY2RTZXROeEZvclN0 YWNrJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyMjIFNPTUVUSU1FU19DT05TVU1FUzxicj4NCiZuYnNwOyAmbmJzcDtnRWZpTWRlTW9kdWxlUGtn VG9rZW5TcGFjZUd1aWQuUGNkRHhlTnhNZW1vcnlQcm90ZWN0aW9uUG9saWN5ICMjIFNPTUVUSU1F U19DT05TVU1FUzxicj4NCiZuYnNwOyAmbmJzcDtnRWZpTWRlTW9kdWxlUGtnVG9rZW5TcGFjZUd1 aWQuUGNkSW1hZ2VQcm90ZWN0aW9uUG9saWN5Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IyMg U09NRVRJTUVTX0NPTlNVTUVTPGJyPg0KLTxicj4NCmRpZmYgLS1naXQgYS9VZWZpUGF5bG9hZFBr Zy9VZWZpUGF5bG9hZFBrZy5kc2MgYi9VZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZFBrZy5kc2M8 YnI+DQppbmRleCAyODYwYTY1OWY2YTcuLjc3OWY3NGRhNzE3MSAxMDA2NDQ8YnI+DQotLS0gYS9V ZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZFBrZy5kc2M8YnI+DQorKysgYi9VZWZpUGF5bG9hZFBr Zy9VZWZpUGF5bG9hZFBrZy5kc2M8YnI+DQpAQCAtNTUsNyArNTUsNyBAQDxicj4NCiZuYnNwOyAm bmJzcDsjIEVMRjogQnVpbGQgVW5pdmVyc2FsUGF5bG9hZCBmaWxlIGFzIFVuaXZlcnNhbFBheWxv YWQuZWxmPGJyPg0KJm5ic3A7ICZuYnNwOyMgRklUOiBCdWlsZCBVbml2ZXJzYWxQYXlsb2FkIGZp bGUgYXMgVW5pdmVyc2FsUGF5bG9hZC5maXQ8YnI+DQombmJzcDsgJm5ic3A7Izxicj4NCi0mbmJz cDsgREVGSU5FIFVOSVZFUlNBTF9QQVlMT0FEJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgPSBGQUxTRTxicj4NCismbmJzcDsgREVGSU5FIFVOSVZFUlNBTF9QQVlMT0FE Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgPSBUUlVFPGJyPg0KJm5i c3A7ICZuYnNwO0RFRklORSBVTklWRVJTQUxfUEFZTE9BRF9GT1JNQVQmbmJzcDsgJm5ic3A7ICZu YnNwOz0gRUxGPGJyPg0KPGJyPg0KJm5ic3A7ICZuYnNwOyM8YnI+DQpAQCAtMjI2LDYgKzIyNiw3 IEBAPGJyPg0KJm5ic3A7ICZuYnNwO09wZW5zc2xMaWJ8Q3J5cHRvUGtnL0xpYnJhcnkvT3BlbnNz bExpYi9PcGVuc3NsTGliLmluZjxicj4NCiZuYnNwOyAmbmJzcDtSbmdMaWJ8TWRlUGtnL0xpYnJh cnkvQmFzZVJuZ0xpYi9CYXNlUm5nTGliLmluZjxicj4NCiZuYnNwOyAmbmJzcDtIb2JMaWJ8VWVm aVBheWxvYWRQa2cvTGlicmFyeS9EeGVIb2JMaWIvRHhlSG9iTGliLmluZjxicj4NCismbmJzcDsg Q3VzdG9tRmR0Tm9kZVBhcnNlckxpYnxVZWZpUGF5bG9hZFBrZy9MaWJyYXJ5L0N1c3RvbUZkdE5v ZGVQYXJzZXJOdWxsTGliL0N1c3RvbUZkdE5vZGVQYXJzZXJOdWxsTGliLmluZjxicj4NCjxicj4N CiZuYnNwOyAmbmJzcDsjPGJyPg0KJm5ic3A7ICZuYnNwOyMgVUVGSSAmYW1wOyBQSTxicj4NCkBA IC00NzAsNiArNDcxLDggQEA8YnI+DQombmJzcDsgJm5ic3A7Z0VmaU1kZU1vZHVsZVBrZ1Rva2Vu U3BhY2VHdWlkLlBjZFZwZEJhc2VBZGRyZXNzfDB4MDxicj4NCiZuYnNwOyAmbmJzcDtnRWZpTWRl TW9kdWxlUGtnVG9rZW5TcGFjZUd1aWQuUGNkU3RhdHVzQ29kZVVzZU1lbW9yeXxGQUxTRTxicj4N CiZuYnNwOyAmbmJzcDtnRWZpTWRlTW9kdWxlUGtnVG9rZW5TcGFjZUd1aWQuUGNkVXNlMUdQYWdl VGFibGV8VFJVRTxicj4NCismbmJzcDsgZ1VlZmlQYXlsb2FkUGtnVG9rZW5TcGFjZUd1aWQuUGNk SGFuZE9mZkZkdEVuYWJsZXxUUlVFPGJyPg0KKzxicj4NCjxicj4NCiZuYnNwOyAmbmJzcDtnRWZp TWRlTW9kdWxlUGtnVG9rZW5TcGFjZUd1aWQuUGNkQm9vdE1hbmFnZXJNZW51RmlsZXx7IDB4MjEs IDB4YWEsIDB4MmMsIDB4NDYsIDB4MTQsIDB4NzYsIDB4MDMsIDB4NDUsIDB4ODMsIDB4NmUsIDB4 OGEsIDB4YjYsIDB4ZjQsIDB4NjYsIDB4MjMsIDB4MzEgfTxicj4NCiZuYnNwOyAmbmJzcDtnVWVm aVBheWxvYWRQa2dUb2tlblNwYWNlR3VpZC5QY2RQY2REcml2ZXJGaWxlfHsgMHg1NywgMHg3Miwg MHhjZiwgMHg4MCwgMHhhYiwgMHg4NywgMHhmOSwgMHg0NywgMHhhMywgMHhmZSwgMHhENSwgMHgw QiwgMHg3NiwgMHhkOCwgMHg5NSwgMHg0MSB9PGJyPg0KQEAgLTUxMyw3ICs1MTYsMTUgQEA8YnI+ DQombmJzcDshZW5kaWY8YnI+DQombmJzcDshZW5kaWY8YnI+DQo8YnI+DQorPGJyPg0KJm5ic3A7 W1BjZHNQYXRjaGFibGVJbk1vZHVsZS5YNjRdPGJyPg0KKyZuYnNwOyAjPGJyPg0KKyZuYnNwOyAj IFRoZSBmb2xsb3dpbmcgcGFyYW1ldGVycyBhcmUgc2V0IGJ5IExpYnJhcnkvUGxhdGZvcm1Ib29r TGliPGJyPg0KKyZuYnNwOyAjPGJyPg0KKyZuYnNwOyBnRWZpTWRlTW9kdWxlUGtnVG9rZW5TcGFj ZUd1aWQuUGNkU2VyaWFsVXNlTW1pb3xGQUxTRTxicj4NCismbmJzcDsgZ0VmaU1kZU1vZHVsZVBr Z1Rva2VuU3BhY2VHdWlkLlBjZFNlcmlhbFJlZ2lzdGVyQmFzZXwweDNGODxicj4NCismbmJzcDsg Z0VmaU1kZU1vZHVsZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZFNlcmlhbEJhdWRSYXRlfCQoQkFVRF9S QVRFKTxicj4NCismbmJzcDsgZ0VmaU1kZU1vZHVsZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZFNlcmlh bFJlZ2lzdGVyU3RyaWRlfDE8YnI+DQombmJzcDshaWYgJChORVRXT1JLX0RSSVZFUl9FTkFCTEUp ID09IFRSVUU8YnI+DQombmJzcDsgJm5ic3A7Z0VmaU5ldHdvcmtQa2dUb2tlblNwYWNlR3VpZC5Q Y2RBbGxvd0h0dHBDb25uZWN0aW9uc3xUUlVFPGJyPg0KJm5ic3A7IWVuZGlmPGJyPg0KQEAgLTYz NSw3ICs2NDYsMTMgQEA8YnI+DQombmJzcDsgJm5ic3A7ICZuYnNwOyFpZiAkKFVOSVZFUlNBTF9Q QVlMT0FEX0ZPUk1BVCkgPT0gJnF1b3Q7RUxGJnF1b3Q7PGJyPg0KJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7VWVmaVBheWxvYWRQa2cvVWVmaVBheWxvYWRFbnRyeS9Vbml2ZXJzYWxQYXlsb2Fk RW50cnkuaW5mPGJyPg0KJm5ic3A7ICZuYnNwOyAmbmJzcDshZWxzZWlmICQoVU5JVkVSU0FMX1BB WUxPQURfRk9STUFUKSA9PSAmcXVvdDtGSVQmcXVvdDs8YnI+DQotJm5ic3A7ICZuYnNwOyAmbmJz cDsgVWVmaVBheWxvYWRQa2cvVWVmaVBheWxvYWRFbnRyeS9GaXRVbml2ZXJzYWxQYXlsb2FkRW50 cnkuaW5mPGJyPg0KKyZuYnNwOyAmbmJzcDsgJm5ic3A7IFVlZmlQYXlsb2FkUGtnL1VlZmlQYXls b2FkRW50cnkvRml0VW5pdmVyc2FsUGF5bG9hZEVudHJ5LmluZiB7PGJyPg0KKyZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbHQ7TGlicmFyeUNsYXNzZXMmZ3Q7PGJyPg0KKyZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgRmR0TGlifE1kZVBrZy9MaWJyYXJ5L0Jhc2VGZHRMaWIv QmFzZUZkdExpYi5pbmY8YnI+DQorJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBD dXN0b21GZHROb2RlUGFyc2VyTGlifFVlZmlQYXlsb2FkUGtnL0xpYnJhcnkvQ3VzdG9tRmR0Tm9k ZVBhcnNlckxpYi9DdXN0b21GZHROb2RlUGFyc2VyTGliLmluZjxicj4NCismbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7IE5VTEx8VWVmaVBheWxvYWRQa2cvTGlicmFyeS9GZHRQYXJz ZXJMaWIvRmR0UGFyc2VMaWIuaW5mPGJyPg0KKyZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgTlVMTHxVZWZpUGF5bG9hZFBrZy9MaWJyYXJ5L0hvYlBhcnNlTGliL0hvYlBhcnNlTGli LmluZjxicj4NCismbmJzcDsgJm5ic3A7ICZuYnNwOyB9PGJyPg0KJm5ic3A7ICZuYnNwOyAmbmJz cDshZWxzZTxicj4NCiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwO1VlZmlQYXlsb2FkUGtnL1Vl ZmlQYXlsb2FkRW50cnkvVWVmaVBheWxvYWRFbnRyeS5pbmY8YnI+DQombmJzcDsgJm5ic3A7ICZu YnNwOyFlbmRpZjxicj4NCkBAIC02NDgsNyArNjY1LDEzIEBAPGJyPg0KJm5ic3A7ICZuYnNwOyAm bmJzcDshaWYgJChVTklWRVJTQUxfUEFZTE9BRF9GT1JNQVQpID09ICZxdW90O0VMRiZxdW90Ozxi cj4NCiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwO1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2Fk RW50cnkvVW5pdmVyc2FsUGF5bG9hZEVudHJ5LmluZjxicj4NCiZuYnNwOyAmbmJzcDsgJm5ic3A7 IWVsc2VpZiAkKFVOSVZFUlNBTF9QQVlMT0FEX0ZPUk1BVCkgPT0gJnF1b3Q7RklUJnF1b3Q7PGJy Pg0KLSZuYnNwOyAmbmJzcDsgJm5ic3A7IFVlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkv Rml0VW5pdmVyc2FsUGF5bG9hZEVudHJ5LmluZjxicj4NCismbmJzcDsgJm5ic3A7ICZuYnNwOyBV ZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5L0ZpdFVuaXZlcnNhbFBheWxvYWRFbnRyeS5p bmYgezxicj4NCismbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJmx0O0xpYnJhcnlDbGFzc2Vz Jmd0Ozxicj4NCismbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IEZkdExpYnxNZGVQ a2cvTGlicmFyeS9CYXNlRmR0TGliL0Jhc2VGZHRMaWIuaW5mPGJyPg0KKyZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgQ3VzdG9tRmR0Tm9kZVBhcnNlckxpYnxVZWZpUGF5bG9hZFBr Zy9MaWJyYXJ5L0N1c3RvbUZkdE5vZGVQYXJzZXJMaWIvQ3VzdG9tRmR0Tm9kZVBhcnNlckxpYi5p bmY8YnI+DQorJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBOVUxMfFVlZmlQYXls b2FkUGtnL0xpYnJhcnkvRmR0UGFyc2VyTGliL0ZkdFBhcnNlTGliLmluZjxicj4NCismbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IE5VTEx8VWVmaVBheWxvYWRQa2cvTGlicmFyeS9I b2JQYXJzZUxpYi9Ib2JQYXJzZUxpYi5pbmY8YnI+DQorJm5ic3A7ICZuYnNwOyAmbmJzcDsgfTxi cj4NCiZuYnNwOyAmbmJzcDsgJm5ic3A7IWVsc2U8YnI+DQombmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDtVZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5L1VlZmlQYXlsb2FkRW50cnkuaW5m PGJyPg0KJm5ic3A7ICZuYnNwOyAmbmJzcDshZW5kaWY8YnI+DQotLSA8YnI+DQoyLjM5LjIud2lu ZG93cy4xPG86cD48L286cD48L3A+DQo8L2Jsb2NrcXVvdGU+DQo8L2Rpdj4NCjxwIGNsYXNzPSJN c29Ob3JtYWwiPjxiciBjbGVhcj0iYWxsIj4NCjxvOnA+PC9vOnA+PC9wPg0KPGRpdj4NCjxwIGNs YXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPg0KPC9kaXY+DQo8cCBjbGFzcz0i TXNvTm9ybWFsIj48c3BhbiBjbGFzcz0iZ21haWxzaWduYXR1cmVwcmVmaXgiPi0tIDwvc3Bhbj48 bzpwPjwvbzpwPjwvcD4NCjxkaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+VGhhbmtz ITxvOnA+PC9vOnA+PC9wPg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPj1EPG86cD48L286 cD48L3A+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9kaXY+DQo8L2Jsb2NrcXVvdGU+DQo8L2Rpdj4NCjxw IGNsYXNzPSJNc29Ob3JtYWwiPjxiciBjbGVhcj0iYWxsIj4NCjxvOnA+PC9vOnA+PC9wPg0KPGRp dj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPg0KPC9kaXY+DQo8 cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBjbGFzcz0iZ21haWxzaWduYXR1cmVwcmVmaXgiPi0t IDwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxkaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1h bCI+VGhhbmtzITxvOnA+PC9vOnA+PC9wPg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPj1E PG86cD48L286cD48L3A+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9kaXY+DQo8L2Rpdj4NCjwvYm9keT4N CjwvaHRtbD4NCg0KCjxkaXYgd2lkdGg9IjEiIHN0eWxlPSJjb2xvcjp3aGl0ZTtjbGVhcjpib3Ro Ij5fLl8sXy5fLF88L2Rpdj4KPGhyPgoKCkdyb3Vwcy5pbyBMaW5rczo8cD4KCgogIAogICAgWW91 IHJlY2VpdmUgYWxsIG1lc3NhZ2VzIHNlbnQgdG8gdGhpcyBncm91cC4KICAKICAKCgo8cD4KPGEg dGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHBzOi8vZWRrMi5ncm91cHMuaW8vZy9kZXZlbC9tZXNz YWdlLzExOTQ2NCI+Vmlldy9SZXBseSBPbmxpbmUgKCMxMTk0NjQpPC9hPiB8CgoKICAKCnwKCiAg PGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHBzOi8vZ3JvdXBzLmlvL210LzEwNjQ1NTE2OC83 Njg2MTc2Ij5NdXRlIFRoaXMgVG9waWM8L2E+CgoKfCA8YSBocmVmPSJodHRwczovL2VkazIuZ3Jv dXBzLmlvL2cvZGV2ZWwvcG9zdCI+TmV3IFRvcGljPC9hPgoKPGJyPgoKCgoKPGEgaHJlZj0iaHR0 cHM6Ly9lZGsyLmdyb3Vwcy5pby9nL2RldmVsL2VkaXRzdWIvNzY4NjE3NiI+WW91ciBTdWJzY3Jp cHRpb248L2E+IHwKPGEgaHJlZj0ibWFpbHRvOmRldmVsK293bmVyQGVkazIuZ3JvdXBzLmlvIj5D b250YWN0IEdyb3VwIE93bmVyPC9hPiB8Cgo8YSBocmVmPSJodHRwczovL2VkazIuZ3JvdXBzLmlv L2cvZGV2ZWwvdW5zdWIiPlVuc3Vic2NyaWJlPC9hPgoKIFtyZWJlY2NhQG9wZW5mdy5pb108YnI+ CjxkaXYgd2lkdGg9IjEiIHN0eWxlPSJjb2xvcjp3aGl0ZTtjbGVhcjpib3RoIj5fLl8sXy5fLF88 L2Rpdj4KDQo= --_000_PH7PR11MB5888A233D830EAB6C3996487FCF92PH7PR11MB5888namp_--