From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by mx.groups.io with SMTP id smtpd.web08.718.1622051281616894761 for ; Wed, 26 May 2021 10:48:01 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=xREffsr1; spf=pass (domain: intel.com, ip: 192.55.52.151, mailfrom: michael.d.kinney@intel.com) IronPort-SDR: EXFR8ueGIZ2DEs2ecDPyTGo8LmPgtMd0dHVp1SCrOffq4Xg4fj2OR3kikarBJM5ywKhFfxCLpB Kagd0i4dyFLg== X-IronPort-AV: E=McAfee;i="6200,9189,9996"; a="182857457" X-IronPort-AV: E=Sophos;i="5.82,331,1613462400"; d="scan'208";a="182857457" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 26 May 2021 10:47:59 -0700 IronPort-SDR: OQ3EEkJ7AI9UP+ENLfSAY7gKMTaTJYaOv5qDoB+LpsiulvmETIaUqNP6pWPF+V6GhwmFP+fAv8 Ibnr4vCT2NdA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.82,331,1613462400"; d="scan'208";a="443159735" Received: from orsmsx604.amr.corp.intel.com ([10.22.229.17]) by orsmga008.jf.intel.com with ESMTP; 26 May 2021 10:47:57 -0700 Received: from orsmsx611.amr.corp.intel.com (10.22.229.24) by ORSMSX604.amr.corp.intel.com (10.22.229.17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.4; Wed, 26 May 2021 10:47:57 -0700 Received: from orsmsx605.amr.corp.intel.com (10.22.229.18) by ORSMSX611.amr.corp.intel.com (10.22.229.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.4; Wed, 26 May 2021 10:47:56 -0700 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) by orsmsx605.amr.corp.intel.com (10.22.229.18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.4 via Frontend Transport; Wed, 26 May 2021 10:47:56 -0700 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (104.47.70.109) by edgegateway.intel.com (134.134.137.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2242.4; Wed, 26 May 2021 10:47:56 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Mm/4kMbQL/tAk+SVcne8sp9iMHU5WhKPN+ymJeq7rkZeMJawgg5ZJ+AsM/sOteCQn52FMNaZxe3vj0SVpAY6BVB8A2yESPIc5NO5JIbsEpAEdslrWue0Z1DkU7f/iH0ifhEiu5y5m35asCX3d8zG3HuCxP39d/8MBjsER6HRMpUxmRwnyoPva/BB2DvpkBgqLbESbabYBpao3XZMHMtNHgqmiCabczQANPBiROn+y+p3r+OZEpJCRPjW0PirZ/12u7JCe1DLm0EK7v+f4j2k4G4azQEw4pQP8JCUJjrxATAFRbsO948ipIc9rwcedtXPSsCweDcJmejKwVabNAhjhQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=V1udCUArQVAcfjUDKl2Zy8g+BH2o4eDATL//pSeuGxs=; b=lK2G2YEZDAVy/EvGSCk0U2XAAi3jcxmM+BJCYN9IXhXlaxtyaYwqDkLRltwATvVPtR3QTMzuZzNqD1LGJ+pFXE8MZoJAUtP9n+Yc5OgGUsPAdwRrDxpDxZeufrjU0OYvWbZ8gJUIR6C0tlbznCvAvjD/+zZOlWPPuyq54m7+FhEXTUxCxIl9TfTlPXinmrwSlB0oAa6cnmFwYR6FXnp2q2Uo1m+z+ahlxynqFc+fZYNnsAhmbWS8VOGMtRNmF+SNXvQJhU58XahW6sPkYrQvD47HQPb4EHC735qG/a1Ejm7qZII1b5qHpLrooGxLFl11GMr0+PURrPOjqJ41kk7TUg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=V1udCUArQVAcfjUDKl2Zy8g+BH2o4eDATL//pSeuGxs=; b=xREffsr16MHQaYx8/lWXWINuLH46slYfNRL+HqMcDGJ9cBLLn8rC2e62j8p8xj+960ALhtLF6z4fbCdAlhEACHGmYiKC0MmMRhHHYvOX+9Ttt6MZMnuXrYQl3wNrj6LMDIdfH5MZWX0+NnmwXb9FFTeUJKCq64jWbl/8/mvFfgI= Received: from CO1PR11MB4929.namprd11.prod.outlook.com (2603:10b6:303:6d::19) by MWHPR11MB1870.namprd11.prod.outlook.com (2603:10b6:300:10f::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4173.21; Wed, 26 May 2021 17:47:54 +0000 Received: from CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::59e2:f389:5f8b:2f08]) by CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::59e2:f389:5f8b:2f08%4]) with mapi id 15.20.4173.021; Wed, 26 May 2021 17:47:54 +0000 From: "Michael D Kinney" To: "Ni, Ray" , "devel@edk2.groups.io" , "Liu, Zhiguang" , "Kinney, Michael D" CC: Liming Gao Subject: Re: [edk2-devel] [PATCH 1/2] MdePkg: Standalone PCD driver Thread-Topic: [edk2-devel] [PATCH 1/2] MdePkg: Standalone PCD driver Thread-Index: AQHXUH6/hMeLqSFbRUmSL90HxNAkmqrzFdYwgABVDQCAANjksIAAwc4AgAEHsIA= Date: Wed, 26 May 2021 17:47:54 +0000 Message-ID: References: <20210524092454.1168-1-zhiguang.liu@intel.com> <20210524092454.1168-2-zhiguang.liu@intel.com> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.5.1.3 authentication-results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [24.19.191.44] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: c0a0e77c-3071-4fc0-6895-08d9206e63c6 x-ms-traffictypediagnostic: MWHPR11MB1870: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:8882; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: jBVz1Thlnk8r06Gfx9NTT5toQewVxrBSgOLiELmLtsYjdQKP8oUZvfJ9jujexM3+mwLVjbeJhjfsIME/jzY7jziwsVjX4twcMKqGcAT7Hore2btAlRkC0VnNdNhZbQjWL9w53iBkvGZqG6MFlYvgCAbYJObHzhh2itNX8BpZz1EBLHPL8xl27Jzz6HsJL58fOS6lS9Nm8MK1cwmlPHuYkwg+MOC7eaN5NjwStv69bFklSZBiTjscs9SVQ4Q1YkKe8+7jAZG2P12QaqwSLH3PnYPvVuVrV/gfd1xFdZ4g5P+q/gTT02oRWfIdn8VAD/dOFoakefccdAzA9tmsx9Bmo59/m/ohwvn8HyC+vApiwXk5NHLSpI66YRgaQ1AD+MdKc1IBmsnT0JOlJFD831rHvdPB08qX3H9iVBKflOPTWYeBIIHMLMtdRRLEHKVdPuNePbhWudV9LfAUra/HBOCzkaiA4m53KF173v5Ik/cT2fEierE2oxtvB8xrXY+73lKdi0VQ5K+Pu+FfvOFNzEhpU0PES5u/4O4IlxgIPQrGNQTxbPqivtHB7mu5US8NN3yI9/eXbvI3SoBMqY0s1K5CFVy6EiSRYaDnmVcbXEXGe4CINnLz9bobXX8BLvhxzaRHrqFKkioGJZ9RqF0bRixWM3ZYQsYtAczRiCs9uDljsyQQZxsJrO7RMXy+wQ4yzJ1JxTnPV8RS6Nbgv2fGx9C58CwFC9Ym/HzvcaTIzn6yFzM5kDPVA+tCx5z0+UYTR+zgThIiYXdk3rBZV6ke6n2IiA== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO1PR11MB4929.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(39860400002)(376002)(136003)(346002)(366004)(396003)(186003)(478600001)(966005)(55016002)(83380400001)(66446008)(66556008)(66946007)(66476007)(64756008)(52536014)(76116006)(53546011)(6506007)(38100700002)(122000001)(8676002)(86362001)(33656002)(71200400001)(8936002)(9686003)(2906002)(110136005)(316002)(7696005)(19627235002)(30864003)(26005)(5660300002)(4326008)(559001)(579004)(44824005);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: =?utf-8?B?ZWJzRnNLd2J2STMwNUJPd01hZ0hpQlptN3oyY2pLVFZUTzVHNTZnODB4TEpt?= =?utf-8?B?WUVTVWhtQzJlbVdkaHBDQ3BOS21LYnFVNmpKR0h1dWJVMXVERmQ5WTlxSTVK?= =?utf-8?B?NGluREVjV2RFanJTYkg4ZE43bStkSERCVDVML3RESDJ0cWZleExNVk9haExs?= =?utf-8?B?VitqbjVpb21xYU1McW92YmtmdCtMRUpmQkpuQ3JNWGREL2ZIM1VMNU1yNEkz?= =?utf-8?B?YThSdWxXcGV2bFNGNytFR0JaU2V2SkdBbCtwd3B6WWpDOGhGOVZOMjIzdlpy?= =?utf-8?B?ZXZNMzE2aHY3L2FwN2JGNzdkU3VlckZwa0VQTElubC83L2VrNGQxZmtXZ3J3?= =?utf-8?B?RHl5cDdSTmxzdzZIZjN0M0YxMGszR0Ircy9yTFVucmV4aGpXUG05dGpKTEN2?= =?utf-8?B?aml1bnVCeGVieSs0UzdHU1pCVjMvK1VJYXpUTklTUThhbDg3Lzhpc2FCdUpL?= =?utf-8?B?dVgxVVlFTys0TXF4WlI3YXNHTEdBS3RuMmgwT2FPK1c2SWt0c2FLb0FhRnNw?= =?utf-8?B?V1lsa0lIVzYzT1A5SlozSnZXR3NITUNaSkYxTmYyY3IxSi9qSmR1ZnA4dGhu?= =?utf-8?B?MDJiZmtnUGxtazcxRDY2eUdUUHd0bE81Z1dCMkJVa2wxdXdVRW1lemRtNzFh?= =?utf-8?B?REFyRG90eWVNQ29uMmRIb0VNeWxqUnhLWUd1ekRUT3BONU1WSXdJYUVGVFp4?= =?utf-8?B?MHRsRXEybGdrUWd6ckpEMGdkczN4bU1JQlJyb1IySjlCRGdIZCszSGlTVDZP?= =?utf-8?B?ODg2M3VaaEJ4UmpBUkF6TU1iVElKb1Z5dFZjcjFqazNnZHI3eFZlMjBxVkNQ?= =?utf-8?B?cWNIQVpQMlJZVkJON1JZYnIxYXNBZ2F5WU5lZ2Q3dXNLeTROcjNyWTdScXpZ?= =?utf-8?B?UXQxSW1PNk9BZk93QXVKZFhrV0Rwak93Rm92KzFtcTR0ZG9FZUJycU8wYVg0?= =?utf-8?B?WlVlVmExVDM3b0NXNDdPbU1IZUdjTWhYbG5aY2NYTGtQYk45NUtmZXUrWm9L?= =?utf-8?B?dzluc0I3SFhGN1ovcDV5YmRoQXB2Wkt3Mi9jLzd5Ymp2Y0hPVVIrc0s1UWNH?= =?utf-8?B?TGp1NkQvcmUxa3hCY0pIeTdkN0R4d3FObnZXQ2Y2cUdGQWk5VWVQQnl2YUJJ?= =?utf-8?B?emVrZUtENmFnZUY4L1hFdjdjaGhLa05EV2J2bVRJcnNUUGsvdS9nUXRXL1NF?= =?utf-8?B?dDRmQ2ZETkdyZkJmS3Vnd3JKV3NSVmRHWHF3Q1FMa2d5Zm0wY2tIWG9QWGt5?= =?utf-8?B?Y08rZm1XSXlLTXAvVXI1M0w3bGVEN1JRWGk1YmhqbkxxRUpRQXgrbW4yVlla?= =?utf-8?B?NDBzelFhQlBJMEdRRTdUaGVMQTRwNlJtbVIxallYTEkzanI5WklTTWhnZ29i?= =?utf-8?B?czFqa1dISGJkak5nRmVGVjM5Z0w1MVhsSEQrMTdKOTZJQUw0eVlLT202QUZU?= =?utf-8?B?dUxNaHhnanhlUld5a3ZhOG84N05MWnlncCt1aStwd21rb1VIVUV4UW5ianJi?= =?utf-8?B?NHMzb2hTQzI1azRlUHkvdGlSUlEvRVlEZ3RRdWRPcjhmTHFBS0xyTEFNME1J?= =?utf-8?B?MG8vcmQybEFjdVE1VUZ2YkhVOUpSQlFIWGl3MHVJOEVjenZoT29ZaFEyK3da?= =?utf-8?B?VkpTeExCVkNCdzc0L1NhSjh0OGVvVlplUUdvWnJ5WXZCVjF3RWdhamh5eUZX?= =?utf-8?B?NjVYNkg5Qm9udXJJblNpYkVJVjhkQlVZM09qbFI1WTRRRDVNMWc1ajRrSzBh?= =?utf-8?Q?jTGWnCO4UOA0WETxujSsHRXOGmTy2RamW3i0uWn?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CO1PR11MB4929.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: c0a0e77c-3071-4fc0-6895-08d9206e63c6 X-MS-Exchange-CrossTenant-originalarrivaltime: 26 May 2021 17:47:54.0879 (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: ncwo+qqxjUQsMYHIPcOTq2lZvG+Lgs2+NU1ga/92K185ijnT8ru8lG6odski/Fb6XbFWOdEYeBXc/Okub6i5i3DBGeJyfDngDNBBKZdB99s= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR11MB1870 Return-Path: michael.d.kinney@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 SGkgUmF5LA0KDQpDYW4gd2Ugd29yayB0aHJvdWdoIHRoZXNlIHBoYXNlcyBpbiB0aGUgZWRrMi1z dGFnaW5nIHJlcG8gYW5kIGF2b2lkIG1ha2luZyB0ZW1wIGNoYW5nZXMgdG8gdGhlIGVkazIgcmVw bz8NCg0KVGhhbmtzLA0KDQpNaWtlDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4g RnJvbTogTmksIFJheSA8cmF5Lm5pQGludGVsLmNvbT4NCj4gU2VudDogVHVlc2RheSwgTWF5IDI1 LCAyMDIxIDc6MDMgUE0NCj4gVG86IEtpbm5leSwgTWljaGFlbCBEIDxtaWNoYWVsLmQua2lubmV5 QGludGVsLmNvbT47IGRldmVsQGVkazIuZ3JvdXBzLmlvOyBMaXUsIFpoaWd1YW5nIDx6aGlndWFu Zy5saXVAaW50ZWwuY29tPg0KPiBDYzogTGltaW5nIEdhbyA8Z2FvbGltaW5nQGJ5b3NvZnQuY29t LmNuPg0KPiBTdWJqZWN0OiBSRTogW2VkazItZGV2ZWxdIFtQQVRDSCAxLzJdIE1kZVBrZzogU3Rh bmRhbG9uZSBQQ0QgZHJpdmVyDQo+IA0KPiBNaWtlLA0KPiBJIHRvdGFsbHkgYWdyZWUgd2l0aCB5 b3Ugb24gdGhlIHJlc3RyaWN0aW9uOiBEcml2ZXJzIGluIHVuaXZlcnNhbCBwYXlsb2FkIGRvbid0 IHVzZSBkeW5hbWljKGV4KSBQQ0RzLg0KPiBUaGF0J3MgdGhlIGZpbmFsIHN0YXRlLg0KPiANCj4g SW4gcGhhc2UgIzEsIHdlIG5lZWQgdG8gc2VwYXJhdGUgdGhlIFBDRCBkYXRhYmFzZSBzbyB0aGF0 IGRyaXZlcnMgaW5zaWRlIHVuaXZlcnNhbCBwYXlsb2FkIGRvbid0IGNvbnN1bWUgYW55IGR5bmFt aWMoZXgpDQo+IFBDRHMgb3V0c2lkZS4gRm9yIGV4YW1wbGUsIFBjaUhvc3RCcmlkZ2VEeGUgcHJv ZHVjZXMgdGhlICpQY2RQY2lEaXNhYmxlQnVzRW51bWVyYXRpb24qIGFuZCBQY2lCdXNEeGUgY29u c3VtZXMgaXQuDQo+IEJvdGggZHJpdmVycyBhcmUgaW5zaWRlIHVuaXZlcnNhbCBwYXlsb2FkLiBQ Q0QgdmFsdWUgaXMgcHJvZHVjZWQgYmFzZWQgb24gdGhlIGluZm9ybWF0aW9uIGdvdCBmcm9tIHVu aXZlcnNhbCBwYXlsb2FkDQo+IGludGVyZmFjZXMuDQo+IA0KPiBJbiBwaGFzZSAjMiwgd2Ugd2ls bCB1cGRhdGUgYWxsIGRyaXZlcnMgaW5zaWRlIHVuaXZlcnNhbCBwYXlsb2FkIHRvIGF2b2lkIHJl bHlpbmcgb24gZHluYW1pYyBQQ0RzLiBGb3IgZXhhbXBsZSwgd2Ugd2lsbA0KPiB1cGRhdGUgUGNp QnVzRHhlIHRvIGRpcmVjdGx5IGNvbnN1bWUgdGhlIGh0dHBzOi8vdW5pdmVyc2FscGF5bG9hZC5n aXRodWIuaW8vZG9jdW1lbnRhdGlvbi9wYXlsb2FkLQ0KPiBpbnRlcmZhY2VzL2luZGV4Lmh0bWwj cGNpLXJvb3QtYnJpZGdlcyB0byBkZWNpZGUgd2hldGhlciBidXMgZW51bWVyYXRpb24gc2hvdWxk IGJlIHBlcmZvcm1lZC4NCj4gDQo+IFdlIGFyZSBpbiBwaGFzZSAjMSBub3cuICBJbiB0aGlzIHBo YXNlLCB1c2luZyBvZiBkeW5hbWljIFBDRCBpcyBhbiBpbXBsZW1lbnRhdGlvbiBjaG9pY2Ugb2Yg dGhlIHVuaXZlcnNhbCBwYXlsb2FkLiBBbmQgd2UNCj4gbmVlZCB0byBtYWtlIHN1cmUgdGhhdCBh bnkgbmV3IHVuaXZlcnNhbCBwYXlsb2FkIG1vZHVsZSBkZXZlbG9wZWQgc2hvdWxkIG5vdCByZWx5 IG9uIGR5bmFtaWMgUENELg0KPiANCj4gVG8gbW92ZSB0byBwaGFzZSAjMiwgSSB0aGluayB3ZSBu ZWVkIGFsbCBwbGF0Zm9ybXMgdG8gYWxpZ24gdG8gdW5pdmVyc2FsIHBheWxvYWQuIE90aGVyd2lz ZSwgUGNpQnVzRHhlIGNhbm5vdCBnZXQgdGhlDQo+IFBMRF9QQ0lfUk9PVF9CUklER0UuUmVzb3Vy Y2VBc3NpZ25lZCBmcm9tIEhPQi4NCj4gDQo+IElzIHRoaXMgd2VlaydzIFRpYW5vQ29yZSBvcGVu IGRlc2lnbiBtZWV0aW5nIG9rIGZvciBkaXNjdXNzaW9uPw0KPiANCj4gVGhhbmtzLA0KPiBSYXkN Cj4gDQo+IA0KPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gRnJvbTogS2lubmV5 LCBNaWNoYWVsIEQgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPg0KPiA+IFNlbnQ6IFR1ZXNk YXksIE1heSAyNSwgMjAyMSAxMDozNSBQTQ0KPiA+IFRvOiBOaSwgUmF5IDxyYXkubmlAaW50ZWwu Y29tPjsgZGV2ZWxAZWRrMi5ncm91cHMuaW87IExpdSwgWmhpZ3VhbmcNCj4gPiA8emhpZ3Vhbmcu bGl1QGludGVsLmNvbT47IEtpbm5leSwgTWljaGFlbCBEIDxtaWNoYWVsLmQua2lubmV5QGludGVs LmNvbT4NCj4gPiBDYzogTGltaW5nIEdhbyA8Z2FvbGltaW5nQGJ5b3NvZnQuY29tLmNuPg0KPiA+ IFN1YmplY3Q6IFJFOiBbZWRrMi1kZXZlbF0gW1BBVENIIDEvMl0gTWRlUGtnOiBTdGFuZGFsb25l IFBDRCBkcml2ZXINCj4gPg0KPiA+IEhpIFJheSwNCj4gPg0KPiA+IFRoZSBQQ0QgRGF0YWJhc2Ug aXMgaW50ZW5kZWQgdG8gYmUgb3duZWQgYnkgdGhlIHBsYXRmb3JtIEZXLg0KPiA+DQo+ID4gVGhl IGNvbmNlcHQgb2YgYSB1bml2ZXJzYWwgcGF5bG9hZCB0aGF0IGlzIGxvYWRlZCBhZnRlciB0aGUg cGxhdGZvcm0gRlcgaXMNCj4gPiBzaW1pbGFyIGluDQo+ID4gY29uY2VwdCB0byBsb2FkaW5nIGEg VUVGSSBhcHAvZHJpdmVyL29zbG9hZGVyLiAgVGhvc2UgdHlwZXMgb2YgbG9hZGFibGUgVUVGSQ0K PiA+IGNvbXBvbmVudHMNCj4gPiBhcmUgbm90IGFsbG93ZWQgdG8gdXNlIHRoZSBQQ0Qgc2Vydmlj ZXMNCj4gPg0KPiA+IFRoZSBvbmx5IHRpbWUgdGhlIFBDRCBQUEkvUHJvdG9jb2wgYXJlIGFjY2Vz c2VkIGlzIGlmIHRoZSBQQ0QgdHlwZSBpcyBEeW5hbWljDQo+ID4gb3INCj4gPiBEeW5hbWljRXgu DQo+ID4NCj4gPiBXaHkgZG8gY29tcG9uZW50cyBpbiB0aGUgVW5pdmVyc2FsIFBheWxvYWQgbmVl ZCB0byBhY2Nlc3MgUENEcyBvZiB0eXBlDQo+ID4gRHluYW1pYw0KPiA+IG9yIER5bmFtaWNFeD8g IENhbiB3ZSByZXN0cmljdCBjb21wb25lbnRzIGluIHRoZSBVbml2ZXJzYWwgUGF5bG9hZCB0byBv bmx5DQo+ID4gdXNlDQo+ID4gUENEcyBvZiB0eXBlIEZlYXR1cmVGbGFnL0ZpeGVkQXRCdWlsZC9Q YXRjaGFibGVJbk1vZHVsZT8NCj4gPg0KPiA+IFRoYW5rcywNCj4gPg0KPiA+IE1pa2UNCj4gPg0K PiA+ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPiA+IEZyb206IE5pLCBSYXkgPHJh eS5uaUBpbnRlbC5jb20+DQo+ID4gPiBTZW50OiBNb25kYXksIE1heSAyNCwgMjAyMSA2OjMzIFBN DQo+ID4gPiBUbzogZGV2ZWxAZWRrMi5ncm91cHMuaW87IEtpbm5leSwgTWljaGFlbCBEDQo+ID4g PG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPjsgTGl1LCBaaGlndWFuZyA8emhpZ3VhbmcubGl1 QGludGVsLmNvbT4NCj4gPiA+IENjOiBMaW1pbmcgR2FvIDxnYW9saW1pbmdAYnlvc29mdC5jb20u Y24+DQo+ID4gPiBTdWJqZWN0OiBSRTogW2VkazItZGV2ZWxdIFtQQVRDSCAxLzJdIE1kZVBrZzog U3RhbmRhbG9uZSBQQ0QgZHJpdmVyDQo+ID4gPg0KPiA+ID4gTWlrZSwNCj4gPiA+IEluIHBheWxv YWQgcGhhc2UsIHRoZXJlIGFyZSB0d28ga2luZHMgb2YgcGF5bG9hZHM6DQo+ID4gPiAxLiB0aGUg dW5pdmVyc2FsIHBheWxvYWRzIHRoYXQgY29uZm9ybSB0byB1bml2ZXJzYWwgcGF5bG9hZCBzcGVj LiBUaGVzZQ0KPiA+IHBheWxvYWRzIGNhbm5vdCBkZXBlbmQgb24gYW55IFBDRCBwcm9kdWNlZCBm cm9tDQo+ID4gPiBib290bG9hZGVyIHBoYXNlLg0KPiA+ID4gMi4gdGhlIHBsYXRmb3JtIHBheWxv YWRzLiBUaGVzZSBwYXlsb2FkcyBhcmUgZGV2ZWxvcGVkIGJ5IHRoZSBzYW1lDQo+ID4gdmVuZG9y IGFzIHRoZSBib290bG9hZGVyLiBTbywgdGhleSBjYW4gZGVwZW5kIG9uIHRoZQ0KPiA+ID4gUENE IHByb2R1Y2VkIGJ5IHRoZSBib290bG9hZGVyLiBUaGUgdWx0aW1hdGUgZ29hbCBpcyB0aGVzZSBw bGF0Zm9ybQ0KPiA+IHBheWxvYWRzIGNhbiBiZSBlbGltaW5hdGVkLg0KPiA+ID4NCj4gPiA+IFRo YW5rcywNCj4gPiA+IFJheQ0KPiA+ID4NCj4gPiA+ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0t LS0NCj4gPiA+ID4gRnJvbTogZGV2ZWxAZWRrMi5ncm91cHMuaW8gPGRldmVsQGVkazIuZ3JvdXBz LmlvPiBPbiBCZWhhbGYgT2YNCj4gPiBNaWNoYWVsIEQgS2lubmV5DQo+ID4gPiA+IFNlbnQ6IFR1 ZXNkYXksIE1heSAyNSwgMjAyMSA0OjMwIEFNDQo+ID4gPiA+IFRvOiBkZXZlbEBlZGsyLmdyb3Vw cy5pbzsgTGl1LCBaaGlndWFuZyA8emhpZ3VhbmcubGl1QGludGVsLmNvbT47DQo+ID4gS2lubmV5 LCBNaWNoYWVsIEQgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPg0KPiA+ID4gPiBDYzogTGlt aW5nIEdhbyA8Z2FvbGltaW5nQGJ5b3NvZnQuY29tLmNuPg0KPiA+ID4gPiBTdWJqZWN0OiBSZTog W2VkazItZGV2ZWxdIFtQQVRDSCAxLzJdIE1kZVBrZzogU3RhbmRhbG9uZSBQQ0QgZHJpdmVyDQo+ ID4gPiA+DQo+ID4gPiA+IFdoeSBkbyB3ZSBuZWVkIGEgbmV3IFBDRD8NCj4gPiA+ID4NCj4gPiA+ ID4gQ2FuJ3Qgd2UgbWFrZSB0aGlzIHRoZSBkZWZhdWx0IGJlaGF2aW9yIHRvIG9ubHkgaW5zdGFs bCBvbmUgaW5zdGFuY2U/DQo+ID4gPiA+DQo+ID4gPiA+IFRoYW5rcywNCj4gPiA+ID4NCj4gPiA+ ID4gTWlrZQ0KPiA+ID4gPg0KPiA+ID4gPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ ID4gPiA+ID4gRnJvbTogZGV2ZWxAZWRrMi5ncm91cHMuaW8gPGRldmVsQGVkazIuZ3JvdXBzLmlv PiBPbiBCZWhhbGYgT2YNCj4gPiBaaGlndWFuZyBMaXUNCj4gPiA+ID4gPiBTZW50OiBNb25kYXks IE1heSAyNCwgMjAyMSAyOjI1IEFNDQo+ID4gPiA+ID4gVG86IGRldmVsQGVkazIuZ3JvdXBzLmlv DQo+ID4gPiA+ID4gQ2M6IEtpbm5leSwgTWljaGFlbCBEIDxtaWNoYWVsLmQua2lubmV5QGludGVs LmNvbT47IExpbWluZyBHYW8NCj4gPiA8Z2FvbGltaW5nQGJ5b3NvZnQuY29tLmNuPg0KPiA+ID4g PiA+IFN1YmplY3Q6IFtlZGsyLWRldmVsXSBbUEFUQ0ggMS8yXSBNZGVQa2c6IFN0YW5kYWxvbmUg UENEIGRyaXZlcg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gQWRkIGEgZmVhdHVyZSBQQ0QgdG8gY29u dHJvbCBpZiB0aGUgUENEIGRyaXZlciBpcyBidWlsZCBhcyBzdGFuZGFsb25lDQo+ID4gbW9kZS4N Cj4gPiA+ID4gPiBUaGlzIHdheSwgdHdvIG1vZGUgUENEIGRyaXZlciB3b24ndCBzaGFyZSB0aGUg ZGF0YSBiYXNlLg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gQ2M6IE1pY2hhZWwgRCBLaW5uZXkgPG1p Y2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPg0KPiA+ID4gPiA+IENjOiBMaW1pbmcgR2FvIDxnYW9s aW1pbmdAYnlvc29mdC5jb20uY24+DQo+ID4gPiA+ID4gU2lnbmVkLW9mZi1ieTogWmhpZ3Vhbmcg TGl1IDx6aGlndWFuZy5saXVAaW50ZWwuY29tPg0KPiA+ID4gPiA+IC0tLQ0KPiA+ID4gPiA+ICBN ZGVNb2R1bGVQa2cvVW5pdmVyc2FsL1BDRC9EeGUvUGNkLmMgICAgICAgfCA3NQ0KPiA+ICsrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0t LQ0KPiA+IC0tLQ0KPiA+ID4gPiAtLS0tLS0tDQo+ID4gPiA+ID4gLS0NCj4gPiA+ID4gPiAgTWRl TW9kdWxlUGtnL1VuaXZlcnNhbC9QQ0QvRHhlL1BjZC5pbmYgICAgIHwgMTYgKysrKysrKysrKysr LS0tLQ0KPiA+ID4gPiA+ICBNZGVNb2R1bGVQa2cvVW5pdmVyc2FsL1BDRC9EeGUvU2VydmljZS5j ICAgfCAgNyArKysrKystDQo+ID4gPiA+ID4gIE1kZVBrZy9JbmNsdWRlL1Byb3RvY29sL1BjZC5o ICAgICAgICAgICAgICB8ICA1IC0tLS0tDQo+ID4gPiA+ID4gIE1kZVBrZy9JbmNsdWRlL1Byb3Rv Y29sL1BjZEluZm8uaCAgICAgICAgICB8ICA1IC0tLS0tDQo+ID4gPiA+ID4gIE1kZVBrZy9MaWJy YXJ5L0R4ZVBjZExpYi9EeGVQY2RMaWIuYyAgICAgICB8IDI0DQo+ID4gKysrKysrKysrKysrKysr KysrKystLS0tDQo+ID4gPiA+ID4gIE1kZVBrZy9MaWJyYXJ5L0R4ZVBjZExpYi9EeGVQY2RMaWIu aW5mICAgICB8IDE2ICsrKysrKysrKysrKy0tLS0NCj4gPiA+ID4gPiAgTWRlUGtnL0xpYnJhcnkv RHhlUGNkTGliL1BheWxvYWRQY2RMaWIuaW5mIHwgNzENCj4gPiA+ID4NCj4gPiArKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrDQo+ID4gKysr KysrKysrKysrKw0KPiA+ID4gPiA+ICBNZGVQa2cvTWRlUGtnLmRlYyAgICAgICAgICAgICAgICAg ICAgICAgICAgfCAxMiArKysrKysrKysrKysNCj4gPiA+ID4gPiAgOSBmaWxlcyBjaGFuZ2VkLCAx ODQgaW5zZXJ0aW9ucygrKSwgNDcgZGVsZXRpb25zKC0pDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiBk aWZmIC0tZ2l0IGEvTWRlTW9kdWxlUGtnL1VuaXZlcnNhbC9QQ0QvRHhlL1BjZC5jDQo+ID4gYi9N ZGVNb2R1bGVQa2cvVW5pdmVyc2FsL1BDRC9EeGUvUGNkLmMNCj4gPiA+ID4gPiBpbmRleCBjZGI5 YjRmYWMxLi5kYzljNGJlMDIyIDEwMDY0NA0KPiA+ID4gPiA+IC0tLSBhL01kZU1vZHVsZVBrZy9V bml2ZXJzYWwvUENEL0R4ZS9QY2QuYw0KPiA+ID4gPiA+ICsrKyBiL01kZU1vZHVsZVBrZy9Vbml2 ZXJzYWwvUENEL0R4ZS9QY2QuYw0KPiA+ID4gPiA+IEBAIC0xMjksMzQgKzEyOSw2MSBAQCBQY2RE eGVJbml0ICgNCj4gPiA+ID4gPiAgICAvLw0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gICAgLy8gTWFr ZSBzdXJlIHRoZSBQY2QgUHJvdG9jb2wgaXMgbm90IGFscmVhZHkgaW5zdGFsbGVkIGluIHRoZSBz eXN0ZW0NCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICAgIC8vDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiAr ICBpZiAoRmVhdHVyZVBjZEdldCAoUGNkU3RhbmRhbG9uZVBjZERhdGFiYXNlRW5hYmxlKSkgew0K PiA+ID4gPiA+DQo+ID4gPiA+ID4gKyAgICBBU1NFUlRfUFJPVE9DT0xfQUxSRUFEWV9JTlNUQUxM RUQgKE5VTEwsDQo+ID4gJmdFZGtpaVBheWxvYWRTdGFuZGFsb25lUGNkUHJvdG9jb2xHdWlkKTsN Cj4gPiA+ID4gPg0KPiA+ID4gPiA+ICsgICAgQnVpbGRQY2REeGVEYXRhQmFzZSAoKTsNCj4gPiA+ ID4gPg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiAtICBBU1NFUlRfUFJPVE9DT0xf QUxSRUFEWV9JTlNUQUxMRUQgKE5VTEwsDQo+ID4gJmdQY2RQcm90b2NvbEd1aWQpOw0KPiA+ID4g PiA+DQo+ID4gPiA+ID4gKyAgICAvLw0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKyAgICAvLyBJbnN0 YWxsIFBDRF9QUk9UT0NPTCB0byBoYW5kbGUgZHluYW1pYyB0eXBlIFBDRA0KPiA+ID4gPiA+DQo+ ID4gPiA+ID4gKyAgICAvLyBJbnN0YWxsIEVGSV9QQ0RfUFJPVE9DT0wgdG8gaGFuZGxlIGR5bmFt aWNFeCB0eXBlIFBDRA0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKyAgICAvLw0KPiA+ID4gPiA+DQo+ ID4gPiA+ID4gKyAgICBTdGF0dXMgPSBnQlMtPkluc3RhbGxNdWx0aXBsZVByb3RvY29sSW50ZXJm YWNlcyAoDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArICAgICAgICAgICAgICAgICAgICAmbVBjZEhh bmRsZSwNCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAgICZnRWRraWlQ YXlsb2FkU3RhbmRhbG9uZVBjZFByb3RvY29sR3VpZCwNCj4gPiAmbVBjZEluc3RhbmNlLA0KPiA+ ID4gPiA+DQo+ID4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgJmdFZGtpaUVmaVBheWxvYWRT dGFuZGFsb25lUGNkUHJvdG9jb2xHdWlkLA0KPiA+ICZtRWZpUGNkSW5zdGFuY2UsDQo+ID4gPiA+ ID4NCj4gPiA+ID4gPiArICAgICAgICAgICAgICAgICAgICBOVUxMDQo+ID4gPiA+ID4NCj4gPiA+ ID4gPiArICAgICAgICAgICAgICAgICAgICApOw0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKyAgICBB U1NFUlRfRUZJX0VSUk9SIChTdGF0dXMpOw0KPiA+ID4gPiA+DQo+ID4gPiA+ID4NCj4gPiA+ID4g Pg0KPiA+ID4gPiA+IC0gIEJ1aWxkUGNkRHhlRGF0YUJhc2UgKCk7DQo+ID4gPiA+ID4NCj4gPiA+ ID4gPiArICAgIC8vDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArICAgIC8vIEluc3RhbGwgR0VUX1BD RF9JTkZPX1BST1RPQ09MIHRvIGhhbmRsZSBkeW5hbWljIHR5cGUgUENEDQo+ID4gPiA+ID4NCj4g PiA+ID4gPiArICAgIC8vIEluc3RhbGwgRUZJX0dFVF9QQ0RfSU5GT19QUk9UT0NPTCB0byBoYW5k bGUgZHluYW1pY0V4IHR5cGUNCj4gPiBQQ0QNCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICsgICAgLy8N Cj4gPiA+ID4gPg0KPiA+ID4gPiA+ICsgICAgU3RhdHVzID0gZ0JTLT5JbnN0YWxsTXVsdGlwbGVQ cm90b2NvbEludGVyZmFjZXMgKA0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKyAgICAgICAgICAgICAg ICAgICAgJm1QY2RIYW5kbGUsDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArICAgICAgICAgICAgICAg ICAgICAmZ0Vka2lpUGF5bG9hZEdldFN0YW5kYWxvbmVQY2RJbmZvUHJvdG9jb2xHdWlkLA0KPiA+ ICZtR2V0UGNkSW5mb0luc3RhbmNlLA0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKyAgICAgICAgICAg ICAgICAgICAgJmdFZGtpaUVmaVBheWxvYWRHZXRTdGFuZGFsb25lUGNkSW5mb1Byb3RvY29sR3Vp ZCwNCj4gPiAmbUVmaUdldFBjZEluZm9JbnN0YW5jZSwNCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICsg ICAgICAgICAgICAgICAgICAgIE5VTEwNCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICsgICAgICAgICAg ICAgICAgICAgICk7DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArICAgIEFTU0VSVF9FRklfRVJST1Ig KFN0YXR1cyk7DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArICB9IGVsc2Ugew0KPiA+ID4gPiA+DQo+ ID4gPiA+ID4gKyAgICBBU1NFUlRfUFJPVE9DT0xfQUxSRUFEWV9JTlNUQUxMRUQgKE5VTEwsDQo+ ID4gJmdQY2RQcm90b2NvbEd1aWQpOw0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKyAgICBCdWlsZFBj ZER4ZURhdGFCYXNlICgpOw0KPiA+ID4gPiA+DQo+ID4gPiA+ID4NCj4gPiA+ID4gPg0KPiA+ID4g PiA+IC0gIC8vDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiAtICAvLyBJbnN0YWxsIFBDRF9QUk9UT0NP TCB0byBoYW5kbGUgZHluYW1pYyB0eXBlIFBDRA0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gLSAgLy8g SW5zdGFsbCBFRklfUENEX1BST1RPQ09MIHRvIGhhbmRsZSBkeW5hbWljRXggdHlwZSBQQ0QNCj4g PiA+ID4gPg0KPiA+ID4gPiA+IC0gIC8vDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiAtICBTdGF0dXMg PSBnQlMtPkluc3RhbGxNdWx0aXBsZVByb3RvY29sSW50ZXJmYWNlcyAoDQo+ID4gPiA+ID4NCj4g PiA+ID4gPiAtICAgICAgICAgICAgICAgICAgJm1QY2RIYW5kbGUsDQo+ID4gPiA+ID4NCj4gPiA+ ID4gPiAtICAgICAgICAgICAgICAgICAgJmdQY2RQcm90b2NvbEd1aWQsICAgICAmbVBjZEluc3Rh bmNlLA0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gLSAgICAgICAgICAgICAgICAgICZnRWZpUGNkUHJv dG9jb2xHdWlkLCAgJm1FZmlQY2RJbnN0YW5jZSwNCj4gPiA+ID4gPg0KPiA+ID4gPiA+IC0gICAg ICAgICAgICAgICAgICBOVUxMDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiAtICAgICAgICAgICAgICAg ICAgKTsNCj4gPiA+ID4gPg0KPiA+ID4gPiA+IC0gIEFTU0VSVF9FRklfRVJST1IgKFN0YXR1cyk7 DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArICAgIC8vDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArICAg IC8vIEluc3RhbGwgUENEX1BST1RPQ09MIHRvIGhhbmRsZSBkeW5hbWljIHR5cGUgUENEDQo+ID4g PiA+ID4NCj4gPiA+ID4gPiArICAgIC8vIEluc3RhbGwgRUZJX1BDRF9QUk9UT0NPTCB0byBoYW5k bGUgZHluYW1pY0V4IHR5cGUgUENEDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArICAgIC8vDQo+ID4g PiA+ID4NCj4gPiA+ID4gPiArICAgIFN0YXR1cyA9IGdCUy0+SW5zdGFsbE11bHRpcGxlUHJvdG9j b2xJbnRlcmZhY2VzICgNCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAg ICZtUGNkSGFuZGxlLA0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAg JmdQY2RQcm90b2NvbEd1aWQsICAgICAmbVBjZEluc3RhbmNlLA0KPiA+ID4gPiA+DQo+ID4gPiA+ ID4gKyAgICAgICAgICAgICAgICAgICAgJmdFZmlQY2RQcm90b2NvbEd1aWQsICAmbUVmaVBjZElu c3RhbmNlLA0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgTlVMTA0K PiA+ID4gPiA+DQo+ID4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgKTsNCj4gPiA+ID4gPg0K PiA+ID4gPiA+ICsgICAgQVNTRVJUX0VGSV9FUlJPUiAoU3RhdHVzKTsNCj4gPiA+ID4gPg0KPiA+ ID4gPiA+DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiAtICAvLw0KPiA+ID4gPiA+DQo+ID4gPiA+ID4g LSAgLy8gSW5zdGFsbCBHRVRfUENEX0lORk9fUFJPVE9DT0wgdG8gaGFuZGxlIGR5bmFtaWMgdHlw ZSBQQ0QNCj4gPiA+ID4gPg0KPiA+ID4gPiA+IC0gIC8vIEluc3RhbGwgRUZJX0dFVF9QQ0RfSU5G T19QUk9UT0NPTCB0byBoYW5kbGUgZHluYW1pY0V4IHR5cGUNCj4gPiBQQ0QNCj4gPiA+ID4gPg0K PiA+ID4gPiA+IC0gIC8vDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiAtICBTdGF0dXMgPSBnQlMtPklu c3RhbGxNdWx0aXBsZVByb3RvY29sSW50ZXJmYWNlcyAoDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiAt ICAgICAgICAgICAgICAgICAgJm1QY2RIYW5kbGUsDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiAtICAg ICAgICAgICAgICAgICAgJmdHZXRQY2RJbmZvUHJvdG9jb2xHdWlkLCAgICAgJm1HZXRQY2RJbmZv SW5zdGFuY2UsDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiAtICAgICAgICAgICAgICAgICAgJmdFZmlH ZXRQY2RJbmZvUHJvdG9jb2xHdWlkLCAgJm1FZmlHZXRQY2RJbmZvSW5zdGFuY2UsDQo+ID4gPiA+ ID4NCj4gPiA+ID4gPiAtICAgICAgICAgICAgICAgICAgTlVMTA0KPiA+ID4gPiA+DQo+ID4gPiA+ ID4gLSAgICAgICAgICAgICAgICAgICk7DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiAtICBBU1NFUlRf RUZJX0VSUk9SIChTdGF0dXMpOw0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKyAgICAvLw0KPiA+ID4g PiA+DQo+ID4gPiA+ID4gKyAgICAvLyBJbnN0YWxsIEdFVF9QQ0RfSU5GT19QUk9UT0NPTCB0byBo YW5kbGUgZHluYW1pYyB0eXBlIFBDRA0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKyAgICAvLyBJbnN0 YWxsIEVGSV9HRVRfUENEX0lORk9fUFJPVE9DT0wgdG8gaGFuZGxlIGR5bmFtaWNFeCB0eXBlDQo+ ID4gUENEDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArICAgIC8vDQo+ID4gPiA+ID4NCj4gPiA+ID4g PiArICAgIFN0YXR1cyA9IGdCUy0+SW5zdGFsbE11bHRpcGxlUHJvdG9jb2xJbnRlcmZhY2VzICgN Cj4gPiA+ID4gPg0KPiA+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAgICZtUGNkSGFuZGxlLA0K PiA+ID4gPiA+DQo+ID4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgJmdHZXRQY2RJbmZvUHJv dG9jb2xHdWlkLCAgICAgJm1HZXRQY2RJbmZvSW5zdGFuY2UsDQo+ID4gPiA+ID4NCj4gPiA+ID4g PiArICAgICAgICAgICAgICAgICAgICAmZ0VmaUdldFBjZEluZm9Qcm90b2NvbEd1aWQsICAmbUVm aUdldFBjZEluZm9JbnN0YW5jZSwNCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICsgICAgICAgICAgICAg ICAgICAgIE5VTEwNCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAgICk7 DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArICAgIEFTU0VSVF9FRklfRVJST1IgKFN0YXR1cyk7DQo+ ID4gPiA+ID4NCj4gPiA+ID4gPiArICB9DQo+ID4gPiA+ID4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+ DQo+ID4gPiA+ID4gICAgLy8NCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICAgIC8vIFJlZ2lzdGVyIGNh bGxiYWNrIGZ1bmN0aW9uIHVwb24gVmFyaWFibGVMb2NrUHJvdG9jb2wNCj4gPiA+ID4gPg0KPiA+ ID4gPiA+IGRpZmYgLS1naXQgYS9NZGVNb2R1bGVQa2cvVW5pdmVyc2FsL1BDRC9EeGUvUGNkLmlu Zg0KPiA+IGIvTWRlTW9kdWxlUGtnL1VuaXZlcnNhbC9QQ0QvRHhlL1BjZC5pbmYNCj4gPiA+ID4g PiBpbmRleCBlYjlmNzU3ZjE0Li5mM2U3MDRmMDgzIDEwMDY0NA0KPiA+ID4gPiA+IC0tLSBhL01k ZU1vZHVsZVBrZy9Vbml2ZXJzYWwvUENEL0R4ZS9QY2QuaW5mDQo+ID4gPiA+ID4gKysrIGIvTWRl TW9kdWxlUGtnL1VuaXZlcnNhbC9QQ0QvRHhlL1BjZC5pbmYNCj4gPiA+ID4gPiBAQCAtMzI5LDEw ICszMjksMTUgQEANCj4gPiA+ID4gPiAgICBnRWZpTWRlTW9kdWxlUGtnVG9rZW5TcGFjZUd1aWQg ICAgICAgICAgICAgICAgIyMNCj4gPiBTT01FVElNRVNfQ09OU1VNRVMgICMjIEdVSUQNCj4gPiA+ ID4gPg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiAgW1Byb3RvY29sc10NCj4gPiA+ ID4gPg0KPiA+ID4gPiA+IC0gIGdQY2RQcm90b2NvbEd1aWQgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAjIyBQUk9EVUNFUw0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gLSAgZ0VmaVBjZFByb3Rv Y29sR3VpZCAgICAgICAgICAgICAgICAgICAgICAgICAgICMjIFBST0RVQ0VTDQo+ID4gPiA+ID4N Cj4gPiA+ID4gPiAtICBnR2V0UGNkSW5mb1Byb3RvY29sR3VpZCAgICAgICAgICAgICAgICAgICAg ICAgIyMgU09NRVRJTUVTX1BST0RVQ0VTDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiAtICBnRWZpR2V0 UGNkSW5mb1Byb3RvY29sR3VpZCAgICAgICAgICAgICAgICAgICAgIyMgU09NRVRJTUVTX1BST0RV Q0VTDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArICBnUGNkUHJvdG9jb2xHdWlkICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIyMgUFJPRFVDRVMNCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICsg IGdFZmlQY2RQcm90b2NvbEd1aWQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIyBQUk9E VUNFUw0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKyAgZ0dldFBjZEluZm9Qcm90b2NvbEd1aWQgICAg ICAgICAgICAgICAgICAgICAgICAgICMjIFNPTUVUSU1FU19QUk9EVUNFUw0KPiA+ID4gPiA+DQo+ ID4gPiA+ID4gKyAgZ0VmaUdldFBjZEluZm9Qcm90b2NvbEd1aWQgICAgICAgICAgICAgICAgICAg ICAgICMjIFNPTUVUSU1FU19QUk9EVUNFUw0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKw0KPiA+ID4g PiA+DQo+ID4gPiA+ID4gKyAgZ0Vka2lpUGF5bG9hZFN0YW5kYWxvbmVQY2RQcm90b2NvbEd1aWQg ICAgICAgICAgICMjIFBST0RVQ0VTDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArICBnRWRraWlFZmlQ YXlsb2FkU3RhbmRhbG9uZVBjZFByb3RvY29sR3VpZCAgICAgICAgIyMgUFJPRFVDRVMNCj4gPiA+ ID4gPg0KPiA+ID4gPiA+ICsgIGdFZGtpaVBheWxvYWRHZXRTdGFuZGFsb25lUGNkSW5mb1Byb3Rv Y29sR3VpZCAgICAjIw0KPiA+IFNPTUVUSU1FU19QUk9EVUNFUw0KPiA+ID4gPiA+DQo+ID4gPiA+ ID4gKyAgZ0Vka2lpRWZpUGF5bG9hZEdldFN0YW5kYWxvbmVQY2RJbmZvUHJvdG9jb2xHdWlkICMj DQo+ID4gU09NRVRJTUVTX1BST0RVQ0VTDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiAgICAjIyBOT1RJ RlkNCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICAgICMjIFNPTUVUSU1FU19DT05TVU1FUw0KPiA+ID4g PiA+DQo+ID4gPiA+ID4gICAgZ0Vka2lpVmFyaWFibGVMb2NrUHJvdG9jb2xHdWlkDQo+ID4gPiA+ ID4NCj4gPiA+ID4gPiBAQCAtMzQyLDYgKzM0Nyw5IEBADQo+ID4gPiA+ID4gICAgZ0VmaU1kZU1v ZHVsZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZFZwZEJhc2VBZGRyZXNzNjQgICAgIyMNCj4gPiBTT01F VElNRVNfQ09OU1VNRVMNCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICAgIGdFZmlNZGVNb2R1bGVQa2dU b2tlblNwYWNlR3VpZC5QY2RTZXROdlN0b3JlRGVmYXVsdElkICMjDQo+ID4gU09NRVRJTUVTX0NP TlNVTUVTDQo+ID4gPiA+ID4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gK1tGZWF0 dXJlUGNkXQ0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKyAgZ0VmaU1kZVBrZ1Rva2VuU3BhY2VHdWlk LlBjZFN0YW5kYWxvbmVQY2REYXRhYmFzZUVuYWJsZSAjIw0KPiA+IENPTlNVTUVTDQo+ID4gPiA+ ID4NCj4gPiA+ID4gPiArDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiAgW0RlcGV4XQ0KPiA+ID4gPiA+ DQo+ID4gPiA+ID4gICAgVFJVRQ0KPiA+ID4gPiA+DQo+ID4gPiA+ID4NCj4gPiA+ID4gPg0KPiA+ ID4gPiA+IGRpZmYgLS1naXQgYS9NZGVNb2R1bGVQa2cvVW5pdmVyc2FsL1BDRC9EeGUvU2Vydmlj ZS5jDQo+ID4gYi9NZGVNb2R1bGVQa2cvVW5pdmVyc2FsL1BDRC9EeGUvU2VydmljZS5jDQo+ID4g PiA+ID4gaW5kZXggZWE3ZWRjM2NiYi4uZmUxNmJhNzEzYiAxMDA2NDQNCj4gPiA+ID4gPiAtLS0g YS9NZGVNb2R1bGVQa2cvVW5pdmVyc2FsL1BDRC9EeGUvU2VydmljZS5jDQo+ID4gPiA+ID4gKysr IGIvTWRlTW9kdWxlUGtnL1VuaXZlcnNhbC9QQ0QvRHhlL1NlcnZpY2UuYw0KPiA+ID4gPiA+IEBA IC04NjEsNyArODYxLDEyIEBAIEJ1aWxkUGNkRHhlRGF0YUJhc2UgKA0KPiA+ID4gPiA+ICAgIENv cHlNZW0gKFBjZER4ZURiLCBtUGNkRGF0YWJhc2UuRHhlRGIsIG1QY2REYXRhYmFzZS5EeGVEYi0N Cj4gPiA+TGVuZ3RoKTsNCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICAgIG1QY2REYXRhYmFzZS5EeGVE YiA9IFBjZER4ZURiOw0KPiA+ID4gPiA+DQo+ID4gPiA+ID4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+ IC0gIEd1aWRIb2IgPSBHZXRGaXJzdEd1aWRIb2IgKCZnUGNkRGF0YUJhc2VIb2JHdWlkKTsNCj4g PiA+ID4gPg0KPiA+ID4gPiA+ICsgIGlmIChGZWF0dXJlUGNkR2V0IChQY2RTdGFuZGFsb25lUGNk RGF0YWJhc2VFbmFibGUpKSB7DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArICAgIEd1aWRIb2IgPSBO VUxMOw0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKyAgfSBlbHNlIHsNCj4gPiA+ID4gPg0KPiA+ID4g PiA+ICsgICAgR3VpZEhvYiA9IEdldEZpcnN0R3VpZEhvYiAoJmdQY2REYXRhQmFzZUhvYkd1aWQp Ow0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKyAgfQ0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKw0KPiA+ ID4gPiA+DQo+ID4gPiA+ID4gICAgaWYgKEd1aWRIb2IgIT0gTlVMTCkgew0KPiA+ID4gPiA+DQo+ ID4gPiA+ID4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICAgICAgLy8NCj4gPiA+ID4gPg0KPiA+ID4g PiA+IGRpZmYgLS1naXQgYS9NZGVQa2cvSW5jbHVkZS9Qcm90b2NvbC9QY2QuaA0KPiA+IGIvTWRl UGtnL0luY2x1ZGUvUHJvdG9jb2wvUGNkLmgNCj4gPiA+ID4gPiBpbmRleCA5Y2QxYTk5OGY4Li5j ZmE2YWMyMzYwIDEwMDY0NA0KPiA+ID4gPiA+IC0tLSBhL01kZVBrZy9JbmNsdWRlL1Byb3RvY29s L1BjZC5oDQo+ID4gPiA+ID4gKysrIGIvTWRlUGtnL0luY2x1ZGUvUHJvdG9jb2wvUGNkLmgNCj4g PiA+ID4gPiBAQCAtMTcsMTEgKzE3LDYgQEAgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0y LUNsYXVzZS1QYXRlbnQNCj4gPiA+ID4gPiAgI2lmbmRlZiBfX1BDRF9IX18NCj4gPiA+ID4gPg0K PiA+ID4gPiA+ICAjZGVmaW5lIF9fUENEX0hfXw0KPiA+ID4gPiA+DQo+ID4gPiA+ID4NCj4gPiA+ ID4gPg0KPiA+ID4gPiA+IC1leHRlcm4gRUZJX0dVSUQgZ1BjZFByb3RvY29sR3VpZDsNCj4gPiA+ ID4gPg0KPiA+ID4gPiA+IC0NCj4gPiA+ID4gPg0KPiA+ID4gPiA+IC0jZGVmaW5lIFBDRF9QUk9U T0NPTF9HVUlEIFwNCj4gPiA+ID4gPg0KPiA+ID4gPiA+IC0gIHsgMHgxMWIzNDAwNiwgMHhkODVi LCAweDRkMGEsIHsgMHhhMiwgMHg5MCwgMHhkNSwgMHhhNSwgMHg3MSwgMHgzMSwNCj4gPiAweGUs IDB4ZjcgfSB9DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiAtDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiAg I2RlZmluZSBQQ0RfSU5WQUxJRF9UT0tFTl9OVU1CRVIgKChVSU5UTikgMCkNCj4gPiA+ID4gPg0K PiA+ID4gPiA+DQo+ID4gPiA+ID4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gZGlm ZiAtLWdpdCBhL01kZVBrZy9JbmNsdWRlL1Byb3RvY29sL1BjZEluZm8uaA0KPiA+IGIvTWRlUGtn L0luY2x1ZGUvUHJvdG9jb2wvUGNkSW5mby5oDQo+ID4gPiA+ID4gaW5kZXggYjBlYzdmNjc3MC4u NTY5MTIxNWM0MiAxMDA2NDQNCj4gPiA+ID4gPiAtLS0gYS9NZGVQa2cvSW5jbHVkZS9Qcm90b2Nv bC9QY2RJbmZvLmgNCj4gPiA+ID4gPiArKysgYi9NZGVQa2cvSW5jbHVkZS9Qcm90b2NvbC9QY2RJ bmZvLmgNCj4gPiA+ID4gPiBAQCAtMTksMTEgKzE5LDYgQEANCj4gPiA+ID4gPiAgI2lmbmRlZiBf X1BDRF9JTkZPX0hfXw0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gICNkZWZpbmUgX19QQ0RfSU5GT19I X18NCj4gPiA+ID4gPg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiAtZXh0ZXJuIEVG SV9HVUlEIGdHZXRQY2RJbmZvUHJvdG9jb2xHdWlkOw0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gLQ0K PiA+ID4gPiA+DQo+ID4gPiA+ID4gLSNkZWZpbmUgR0VUX1BDRF9JTkZPX1BST1RPQ09MX0dVSUQg XA0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gLSAgeyAweDViZTQwZjU3LCAweGZhNjgsIDB4NDYxMCwg eyAweGJiLCAweGJmLCAweGU5LCAweGM1LCAweGZjLCAweGRhLA0KPiA+IDB4ZDMsIDB4NjUgfSB9 DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiAtDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiAgLy8vDQo+ID4g PiA+ID4NCj4gPiA+ID4gPiAgLy8vIFRoZSBmb3J3YXJkIGRlY2xhcmF0aW9uIGZvciBHRVRfUENE X0lORk9fUFJPVE9DT0wuDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiAgLy8vDQo+ID4gPiA+ID4NCj4g PiA+ID4gPiBkaWZmIC0tZ2l0IGEvTWRlUGtnL0xpYnJhcnkvRHhlUGNkTGliL0R4ZVBjZExpYi5j DQo+ID4gYi9NZGVQa2cvTGlicmFyeS9EeGVQY2RMaWIvRHhlUGNkTGliLmMNCj4gPiA+ID4gPiBp bmRleCAyYWNjYWVkYTJjLi44YTYxNDg2ODMyIDEwMDY0NA0KPiA+ID4gPiA+IC0tLSBhL01kZVBr Zy9MaWJyYXJ5L0R4ZVBjZExpYi9EeGVQY2RMaWIuYw0KPiA+ID4gPiA+ICsrKyBiL01kZVBrZy9M aWJyYXJ5L0R4ZVBjZExpYi9EeGVQY2RMaWIuYw0KPiA+ID4gPiA+IEBAIC00Myw3ICs0MywxMSBA QCBHZXRQaVBjZFByb3RvY29sICgNCj4gPiA+ID4gPiAgICAgIC8vIFBJIFBjZCBwcm90b2NvbCBk ZWZpbmVkIGluIFBJIDEuMiB2b2wzIHNob3VsZCBiZSBpbnN0YWxsZWQgYmVmb3JlIHRoZQ0KPiA+ IG1vZHVsZQ0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gICAgICAvLyBhY2Nlc3MgRHluYW1pY0V4IHR5 cGUgUENELg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gICAgICAvLw0KPiA+ID4gPiA+DQo+ID4gPiA+ ID4gLSAgICBTdGF0dXMgPSBnQlMtPkxvY2F0ZVByb3RvY29sICgmZ0VmaVBjZFByb3RvY29sR3Vp ZCwgTlVMTCwgKFZPSUQNCj4gPiAqKikgJm1QaVBjZCk7DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiAr ICAgIGlmIChGZWF0dXJlUGNkR2V0IChQY2RTdGFuZGFsb25lUGNkRGF0YWJhc2VFbmFibGUpKSB7 DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArICAgICAgU3RhdHVzID0gZ0JTLT5Mb2NhdGVQcm90b2Nv bA0KPiA+ICgmZ0Vka2lpRWZpUGF5bG9hZFN0YW5kYWxvbmVQY2RQcm90b2NvbEd1aWQsIE5VTEws IChWT0lEICoqKSAmbVBpUGNkKTsNCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICsgICAgfSBlbHNlIHsN Cj4gPiA+ID4gPg0KPiA+ID4gPiA+ICsgICAgICBTdGF0dXMgPSBnQlMtPkxvY2F0ZVByb3RvY29s ICgmZ0VmaVBjZFByb3RvY29sR3VpZCwgTlVMTCwgKFZPSUQNCj4gPiAqKikgJm1QaVBjZCk7DQo+ ID4gPiA+ID4NCj4gPiA+ID4gPiArICAgIH0NCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICAgICAgQVNT RVJUX0VGSV9FUlJPUiAoU3RhdHVzKTsNCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICAgICAgQVNTRVJU IChtUGlQY2QgIT0gTlVMTCk7DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiAgICB9DQo+ID4gPiA+ID4N Cj4gPiA+ID4gPiBAQCAtNjgsNyArNzIsMTEgQEAgR2V0UGNkUHJvdG9jb2wgKA0KPiA+ID4gPiA+ ICAgICAgLy8gUENEIHByb3RvY29sIG5lZWQgdG8gYmUgaW5zdGFsbGVkIGJlZm9yZSB0aGUgbW9k dWxlIGFjY2Vzcw0KPiA+IER5bmFtaWMgdHlwZSBQQ0QuDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiAg ICAgIC8vIEJ1dCBkeW5hbWljIHR5cGUgUENEIGlzIG5vdCByZXF1aXJlZCBpbiBQSSAxLjIgc3Bl Y2lmaWNhdGlvbi4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICAgICAgLy8NCj4gPiA+ID4gPg0KPiA+ ID4gPiA+IC0gICAgU3RhdHVzID0gZ0JTLT5Mb2NhdGVQcm90b2NvbCAoJmdQY2RQcm90b2NvbEd1 aWQsIE5VTEwsIChWT0lEDQo+ID4gKiopJm1QY2QpOw0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKyAg ICBpZiAoRmVhdHVyZVBjZEdldCAoUGNkU3RhbmRhbG9uZVBjZERhdGFiYXNlRW5hYmxlKSkgew0K PiA+ID4gPiA+DQo+ID4gPiA+ID4gKyAgICAgIFN0YXR1cyA9IGdCUy0+TG9jYXRlUHJvdG9jb2wN Cj4gPiAoJmdFZGtpaVBheWxvYWRTdGFuZGFsb25lUGNkUHJvdG9jb2xHdWlkLCBOVUxMLCAoVk9J RCAqKikmbVBjZCk7DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArICAgIH0gZWxzZSB7DQo+ID4gPiA+ ID4NCj4gPiA+ID4gPiArICAgICAgU3RhdHVzID0gZ0JTLT5Mb2NhdGVQcm90b2NvbCAoJmdQY2RQ cm90b2NvbEd1aWQsIE5VTEwsIChWT0lEDQo+ID4gKiopJm1QY2QpOw0KPiA+ID4gPiA+DQo+ID4g PiA+ID4gKyAgICB9DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiAgICAgIEFTU0VSVF9FRklfRVJST1Ig KFN0YXR1cyk7DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiAgICAgIEFTU0VSVCAobVBjZCAhPSBOVUxM KTsNCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICAgIH0NCj4gPiA+ID4gPg0KPiA+ID4gPiA+IEBAIC04 OCw3ICs5NiwxMSBAQCBHZXRQaVBjZEluZm9Qcm90b2NvbFBvaW50ZXIgKA0KPiA+ID4gPiA+ICAg IEVGSV9TVEFUVVMgIFN0YXR1czsNCj4gPiA+ID4gPg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4NCj4g PiA+ID4gPiAgICBpZiAobVBpUGNkSW5mbyA9PSBOVUxMKSB7DQo+ID4gPiA+ID4NCj4gPiA+ID4g PiAtICAgIFN0YXR1cyA9IGdCUy0+TG9jYXRlUHJvdG9jb2wgKCZnRWZpR2V0UGNkSW5mb1Byb3Rv Y29sR3VpZCwgTlVMTCwNCj4gPiAoVk9JRCAqKikmbVBpUGNkSW5mbyk7DQo+ID4gPiA+ID4NCj4g PiA+ID4gPiArICAgIGlmIChGZWF0dXJlUGNkR2V0IChQY2RTdGFuZGFsb25lUGNkRGF0YWJhc2VF bmFibGUpKSB7DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArICAgICAgU3RhdHVzID0gZ0JTLT5Mb2Nh dGVQcm90b2NvbA0KPiA+ICgmZ0Vka2lpRWZpUGF5bG9hZEdldFN0YW5kYWxvbmVQY2RJbmZvUHJv dG9jb2xHdWlkLCBOVUxMLCAoVk9JRA0KPiA+ICoqKSZtUGlQY2RJbmZvKTsNCj4gPiA+ID4gPg0K PiA+ID4gPiA+ICsgICAgfSBlbHNlew0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKyAgICAgIFN0YXR1 cyA9IGdCUy0+TG9jYXRlUHJvdG9jb2wgKCZnRWZpR2V0UGNkSW5mb1Byb3RvY29sR3VpZCwgTlVM TCwNCj4gPiAoVk9JRCAqKikmbVBpUGNkSW5mbyk7DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArICAg IH0NCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICAgICAgQVNTRVJUX0VGSV9FUlJPUiAoU3RhdHVzKTsN Cj4gPiA+ID4gPg0KPiA+ID4gPiA+ICAgICAgQVNTRVJUIChtUGlQY2RJbmZvICE9IE5VTEwpOw0K PiA+ID4gPiA+DQo+ID4gPiA+ID4gICAgfQ0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gQEAgLTEwOCw3 ICsxMjAsMTEgQEAgR2V0UGNkSW5mb1Byb3RvY29sUG9pbnRlciAoDQo+ID4gPiA+ID4gICAgRUZJ X1NUQVRVUyAgU3RhdHVzOw0KPiA+ID4gPiA+DQo+ID4gPiA+ID4NCj4gPiA+ID4gPg0KPiA+ID4g PiA+ICAgIGlmIChtUGNkSW5mbyA9PSBOVUxMKSB7DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiAtICAg IFN0YXR1cyA9IGdCUy0+TG9jYXRlUHJvdG9jb2wgKCZnR2V0UGNkSW5mb1Byb3RvY29sR3VpZCwg TlVMTCwNCj4gPiAoVk9JRCAqKikmbVBjZEluZm8pOw0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKyAg ICBpZiAoRmVhdHVyZVBjZEdldCAoUGNkU3RhbmRhbG9uZVBjZERhdGFiYXNlRW5hYmxlKSkgew0K PiA+ID4gPiA+DQo+ID4gPiA+ID4gKyAgICAgIFN0YXR1cyA9IGdCUy0+TG9jYXRlUHJvdG9jb2wN Cj4gPiAoJmdFZGtpaVBheWxvYWRHZXRTdGFuZGFsb25lUGNkSW5mb1Byb3RvY29sR3VpZCwgTlVM TCwgKFZPSUQNCj4gPiAqKikmbVBjZEluZm8pOw0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKyAgICB9 IGVsc2Ugew0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKyAgICAgIFN0YXR1cyA9IGdCUy0+TG9jYXRl UHJvdG9jb2wgKCZnR2V0UGNkSW5mb1Byb3RvY29sR3VpZCwgTlVMTCwNCj4gPiAoVk9JRCAqKikm bVBjZEluZm8pOw0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKyAgICB9DQo+ID4gPiA+ID4NCj4gPiA+ ID4gPiAgICAgIEFTU0VSVF9FRklfRVJST1IgKFN0YXR1cyk7DQo+ID4gPiA+ID4NCj4gPiA+ID4g PiAgICAgIEFTU0VSVCAobVBjZEluZm8gIT0gTlVMTCk7DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiAg ICB9DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiBkaWZmIC0tZ2l0IGEvTWRlUGtnL0xpYnJhcnkvRHhl UGNkTGliL0R4ZVBjZExpYi5pbmYNCj4gPiBiL01kZVBrZy9MaWJyYXJ5L0R4ZVBjZExpYi9EeGVQ Y2RMaWIuaW5mDQo+ID4gPiA+ID4gaW5kZXggM2Q0ZDIxYjQ0Mi4uNTlkOWZlNGYxMSAxMDA2NDQN Cj4gPiA+ID4gPiAtLS0gYS9NZGVQa2cvTGlicmFyeS9EeGVQY2RMaWIvRHhlUGNkTGliLmluZg0K PiA+ID4gPiA+ICsrKyBiL01kZVBrZy9MaWJyYXJ5L0R4ZVBjZExpYi9EeGVQY2RMaWIuaW5mDQo+ ID4gPiA+ID4gQEAgLTUzLDEwICs1MywxOCBAQA0KPiA+ID4gPiA+DQo+ID4gPiA+ID4NCj4gPiA+ ID4gPg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gIFtQcm90b2NvbHNdDQo+ID4gPiA+ID4NCj4gPiA+ ID4gPiAtICBnUGNkUHJvdG9jb2xHdWlkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyMg U09NRVRJTUVTX0NPTlNVTUVTDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiAtICBnRWZpUGNkUHJvdG9j b2xHdWlkICAgICAgICAgICAgICAgICAgICAgICAgICAgIyMgQ09OU1VNRVMNCj4gPiA+ID4gPg0K PiA+ID4gPiA+IC0gIGdHZXRQY2RJbmZvUHJvdG9jb2xHdWlkICAgICAgICAgICAgICAgICAgICAg ICAjIyBTT01FVElNRVNfQ09OU1VNRVMNCj4gPiA+ID4gPg0KPiA+ID4gPiA+IC0gIGdFZmlHZXRQ Y2RJbmZvUHJvdG9jb2xHdWlkICAgICAgICAgICAgICAgICAgICAjIyBTT01FVElNRVNfQ09OU1VN RVMNCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICsgIGdQY2RQcm90b2NvbEd1aWQgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAjIyBTT01FVElNRVNfQ09OU1VNRVMNCj4gPiA+ID4gPg0KPiA+ ID4gPiA+ICsgIGdFZmlQY2RQcm90b2NvbEd1aWQgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAjIyBTT01FVElNRVNfQ09OU1VNRVMNCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICsgIGdHZXRQY2RJ bmZvUHJvdG9jb2xHdWlkICAgICAgICAgICAgICAgICAgICAgICAgICAjIyBTT01FVElNRVNfQ09O U1VNRVMNCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICsgIGdFZmlHZXRQY2RJbmZvUHJvdG9jb2xHdWlk ICAgICAgICAgICAgICAgICAgICAgICAjIyBTT01FVElNRVNfQ09OU1VNRVMNCj4gPiA+ID4gPg0K PiA+ID4gPiA+ICsNCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICsgIGdFZGtpaVBheWxvYWRTdGFuZGFs b25lUGNkUHJvdG9jb2xHdWlkICAgICAgICAgICAjIw0KPiA+IFNPTUVUSU1FU19DT05TVU1FUw0K PiA+ID4gPiA+DQo+ID4gPiA+ID4gKyAgZ0Vka2lpRWZpUGF5bG9hZFN0YW5kYWxvbmVQY2RQcm90 b2NvbEd1aWQgICAgICAgICMjDQo+ID4gU09NRVRJTUVTX0NPTlNVTUVTDQo+ID4gPiA+ID4NCj4g PiA+ID4gPiArICBnRWRraWlQYXlsb2FkR2V0U3RhbmRhbG9uZVBjZEluZm9Qcm90b2NvbEd1aWQg ICAgIyMNCj4gPiBTT01FVElNRVNfQ09OU1VNRVMNCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICsgIGdF ZGtpaUVmaVBheWxvYWRHZXRTdGFuZGFsb25lUGNkSW5mb1Byb3RvY29sR3VpZCAjIw0KPiA+IFNP TUVUSU1FU19DT05TVU1FUw0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKw0KPiA+ID4gPiA+DQo+ID4g PiA+ID4gK1tGZWF0dXJlUGNkXQ0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKyAgZ0VmaU1kZVBrZ1Rv a2VuU3BhY2VHdWlkLlBjZFN0YW5kYWxvbmVQY2REYXRhYmFzZUVuYWJsZSAjIw0KPiA+IENPTlNV TUVTDQo+ID4gPiA+ID4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gIFtEZXBleC5j b21tb24uRFhFX0RSSVZFUiwNCj4gPiBEZXBleC5jb21tb24uRFhFX1JVTlRJTUVfRFJJVkVSLCBE ZXBleC5jb21tb24uRFhFX1NBTF9EUklWRVIsDQo+ID4gPiA+IERlcGV4LmNvbW1vbi5EWEVfU01N X0RSSVZFUl0NCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICAgIGdFZmlQY2RQcm90b2NvbEd1aWQNCj4g PiA+ID4gPg0KPiA+ID4gPiA+IGRpZmYgLS1naXQgYS9NZGVQa2cvTGlicmFyeS9EeGVQY2RMaWIv UGF5bG9hZFBjZExpYi5pbmYNCj4gPiBiL01kZVBrZy9MaWJyYXJ5L0R4ZVBjZExpYi9QYXlsb2Fk UGNkTGliLmluZg0KPiA+ID4gPiA+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4gPiA+ID4gaW5k ZXggMDAwMDAwMDAwMC4uZTYxMjk2ZTExYQ0KPiA+ID4gPiA+IC0tLSAvZGV2L251bGwNCj4gPiA+ ID4gPiArKysgYi9NZGVQa2cvTGlicmFyeS9EeGVQY2RMaWIvUGF5bG9hZFBjZExpYi5pbmYNCj4g PiA+ID4gPiBAQCAtMCwwICsxLDcxIEBADQo+ID4gPiA+ID4gKyMjIEBmaWxlDQo+ID4gPiA+ID4N Cj4gPiA+ID4gPiArIyBJbnN0YW5jZSBvZiBQQ0QgTGlicmFyeSB1c2luZyBQQ0QgUHJvdG9jb2wu DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArIw0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKyMgVGhlcmUg YXJlIHR3byBQQ0QgcHJvdG9jb2xzIGFzIGZvbGxvd3M6DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiAr IyAgIDEpIFBDRF9QUk9UT0NPTA0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKyMgICAgICBJdCBpcyBF REtJSSBpbXBsZW1lbnRhdGlvbiB3aGljaCBzdXBwb3J0IER5bmFtaWMvRHluYW1pY0V4DQo+ID4g UGNkcy4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICsjICAgMikgRUZJX1BDRF9QUk9UT0NPTA0KPiA+ ID4gPiA+DQo+ID4gPiA+ID4gKyMgICAgICBJdCBpcyBkZWZpbmVkIGJ5IFBJIHNwZWNpZmljYXRp b24gMS4yLCBWb2wgMyB3aGljaCBvbmx5IHN1cHBvcnQNCj4gPiBkeW5hbWljRXgNCj4gPiA+ID4g Pg0KPiA+ID4gPiA+ICsjICAgICAgdHlwZSBQY2QuDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArIw0K PiA+ID4gPiA+DQo+ID4gPiA+ID4gKyMgRm9yIGR5bmFtaWNFeCB0eXBlIFBDRCwgaXQgaXMgY29t cGF0aWJsZSBiZXR3ZWVuIFBDRF9QUk9UT0NPTA0KPiA+IGFuZCBFRklfUENEX1BST1RPQ09MLg0K PiA+ID4gPiA+DQo+ID4gPiA+ID4gKyMNCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICsjIFRoaXMgbGli cmFyeSBpbnN0YW5jZSB1c2VzIHRoZSBQQ0RfUFJPVE9DT0wgdG8gaGFuZGxlIGR5bmFtaWMNCj4g PiBQQ0QgcmVxdWVzdCBhbmQgdXNlDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArIyBFRklfUENEX1BS T1RPQ09MIHRvIGhhbmRsZSBkeW5hbWljRXggdHlwZSBQQ0QuDQo+ID4gPiA+ID4NCj4gPiA+ID4g PiArIw0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKyMgTm90ZTogQSBkcml2ZXIgb2YgdHlwZSBEWEVf UlVOVElNRV9EUklWRVIgYW5kDQo+ID4gRFhFX1NNTV9EUklWRVIgY2FuIG9ubHkgdXNlIHRoaXMg RHhlUGNkTGliDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArIyAgaW4gdGhlaXIgaW5pdGlhbGl6YXRp b24gd2l0aG91dCBhbnkgaXNzdWVzIHRvIGFjY2VzcyBEeW5hbWljIGFuZA0KPiA+IER5bmFtaWNF eCBQQ0QuIFRoZXkgY2FuJ3QNCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICsjICBhY2Nlc3MgRHluYW1p YyBhbmQgRHluYW1pY0V4IFBDRCBpbiB0aGUgaW1wbGVtZW50YXRpb24gb2YNCj4gPiBydW50aW1l IHNlcnZpY2VzIGFuZCBTTUkgaGFuZGxlcnMuDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArIyAgQmVj YXVzZSBFRklfUENEX1BST1RPQ09MIGlzIERYRSBwcm90b2NvbCB0aGF0IGlzIG5vdCBhdmFpbGFi bGUgaW4NCj4gPiBPUyBydW50aW1lIHBoYXNlLg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKyMNCj4g PiA+ID4gPg0KPiA+ID4gPiA+ICsjIENvcHlyaWdodCAoYykgMjAwNyAtIDIwMTgsIEludGVsIENv cnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLjxCUj4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+ ICsjDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArIyAgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJT RC0yLUNsYXVzZS1QYXRlbnQNCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICsjDQo+ID4gPiA+ID4NCj4g PiA+ID4gPiArIw0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKyMjDQo+ID4gPiA+ID4NCj4gPiA+ID4g PiArDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArW0RlZmluZXNdDQo+ID4gPiA+ID4NCj4gPiA+ID4g PiArICBJTkZfVkVSU0lPTiAgICAgICAgICAgICAgICAgICAgPSAweDAwMDEwMDA1DQo+ID4gPiA+ ID4NCj4gPiA+ID4gPiArICBCQVNFX05BTUUgICAgICAgICAgICAgICAgICAgICAgPSBEeGVQY2RM aWINCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICsgIE1PRFVMRV9VTklfRklMRSAgICAgICAgICAgICAg ICA9IER4ZVBjZExpYi51bmkNCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICsgIEZJTEVfR1VJRCAgICAg ICAgICAgICAgICAgICAgICA9IGY5YWYyZjM4LTA5ZTItNGZmMS1iNjYxLTVkMWMxOWQ5Zjc1Yw0K PiA+ID4gPiA+DQo+ID4gPiA+ID4gKyAgTU9EVUxFX1RZUEUgICAgICAgICAgICAgICAgICAgID0g RFhFX0RSSVZFUg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKyAgVkVSU0lPTl9TVFJJTkcgICAgICAg ICAgICAgICAgID0gMS4wDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArICBMSUJSQVJZX0NMQVNTICAg ICAgICAgICAgICAgICAgPSBQY2RMaWJ8RFhFX0NPUkUgRFhFX0RSSVZFUg0KPiA+IERYRV9SVU5U SU1FX0RSSVZFUiBEWEVfU01NX0RSSVZFUiBTTU1fQ09SRQ0KPiA+ID4gPiBVRUZJX0FQUExJQ0FU SU9ODQo+ID4gPiA+ID4gVUVGSV9EUklWRVINCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICsNCj4gPiA+ ID4gPg0KPiA+ID4gPiA+ICsjDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArIyAgVkFMSURfQVJDSElU RUNUVVJFUyAgICAgICAgICAgPSBJQTMyIFg2NCBFQkMNCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICsj DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArW1NvdXJjZXNd DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArICBEeGVQY2RMaWIuYw0KPiA+ID4gPiA+DQo+ID4gPiA+ ID4gKw0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKw0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gK1tQYWNr YWdlc10NCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICsgIE1kZVBrZy9NZGVQa2cuZGVjDQo+ID4gPiA+ ID4NCj4gPiA+ID4gPiArDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArDQo+ID4gPiA+ID4NCj4gPiA+ ID4gPiArW0xpYnJhcnlDbGFzc2VzXQ0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKyAgQmFzZU1lbW9y eUxpYg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKyAgVWVmaUJvb3RTZXJ2aWNlc1RhYmxlTGliDQo+ ID4gPiA+ID4NCj4gPiA+ID4gPiArICBEZWJ1Z0xpYg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKw0K PiA+ID4gPiA+DQo+ID4gPiA+ID4gKw0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gK1tQcm90b2NvbHNd DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArICBnUGNkUHJvdG9jb2xHdWlkICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIyMgU09NRVRJTUVTX0NPTlNVTUVTDQo+ID4gPiA+ID4NCj4gPiA+ ID4gPiArICBnRWZpUGNkUHJvdG9jb2xHdWlkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IyMgU09NRVRJTUVTX0NPTlNVTUVTDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArICBnR2V0UGNkSW5m b1Byb3RvY29sR3VpZCAgICAgICAgICAgICAgICAgICAgICAgICAgIyMgU09NRVRJTUVTX0NPTlNV TUVTDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArICBnRWZpR2V0UGNkSW5mb1Byb3RvY29sR3VpZCAg ICAgICAgICAgICAgICAgICAgICAgIyMgU09NRVRJTUVTX0NPTlNVTUVTDQo+ID4gPiA+ID4NCj4g PiA+ID4gPiArDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArICBnRWRraWlQYXlsb2FkU3RhbmRhbG9u ZVBjZFByb3RvY29sR3VpZCAgICAgICAgICAgIyMNCj4gPiBTT01FVElNRVNfQ09OU1VNRVMNCj4g PiA+ID4gPg0KPiA+ID4gPiA+ICsgIGdFZGtpaUVmaVBheWxvYWRTdGFuZGFsb25lUGNkUHJvdG9j b2xHdWlkICAgICAgICAjIw0KPiA+IFNPTUVUSU1FU19DT05TVU1FUw0KPiA+ID4gPiA+DQo+ID4g PiA+ID4gKyAgZ0Vka2lpUGF5bG9hZEdldFN0YW5kYWxvbmVQY2RJbmZvUHJvdG9jb2xHdWlkICAg ICMjDQo+ID4gU09NRVRJTUVTX0NPTlNVTUVTDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArICBnRWRr aWlFZmlQYXlsb2FkR2V0U3RhbmRhbG9uZVBjZEluZm9Qcm90b2NvbEd1aWQgIyMNCj4gPiBTT01F VElNRVNfQ09OU1VNRVMNCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICsNCj4gPiA+ID4gPg0KPiA+ID4g PiA+ICtbRmVhdHVyZVBjZF0NCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICsgIGdFZmlNZGVQa2dUb2tl blNwYWNlR3VpZC5QY2RTdGFuZGFsb25lUGNkRGF0YWJhc2VFbmFibGUgIyMNCj4gPiBDT05TVU1F Uw0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKw0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gK1tEZXBleC5j b21tb24uRFhFX0RSSVZFUiwNCj4gPiBEZXBleC5jb21tb24uRFhFX1JVTlRJTUVfRFJJVkVSLCBE ZXBleC5jb21tb24uRFhFX1NBTF9EUklWRVIsDQo+ID4gPiA+IERlcGV4LmNvbW1vbi5EWEVfU01N X0RSSVZFUl0NCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICsgIGdFZGtpaUVmaVBheWxvYWRTdGFuZGFs b25lUGNkUHJvdG9jb2xHdWlkDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArDQo+ID4gPiA+ID4NCj4g PiA+ID4gPiBkaWZmIC0tZ2l0IGEvTWRlUGtnL01kZVBrZy5kZWMgYi9NZGVQa2cvTWRlUGtnLmRl Yw0KPiA+ID4gPiA+IGluZGV4IGI0OWY4OGQ4ZTEuLjQ0ZjYwZTIwODYgMTAwNjQ0DQo+ID4gPiA+ ID4gLS0tIGEvTWRlUGtnL01kZVBrZy5kZWMNCj4gPiA+ID4gPiArKysgYi9NZGVQa2cvTWRlUGtn LmRlYw0KPiA+ID4gPiA+IEBAIC0xMDAwLDYgKzEwMDAsMTIgQEANCj4gPiA+ID4gPiAgICAjIyBJ bmNsdWRlL1Byb3RvY29sL1BjZEluZm8uaA0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gICAgZ0dldFBj ZEluZm9Qcm90b2NvbEd1aWQgICAgICAgID0geyAweDViZTQwZjU3LCAweGZhNjgsIDB4NDYxMCwg eyAweGJiLA0KPiA+IDB4YmYsIDB4ZTksIDB4YzUsIDB4ZmMsIDB4ZGEsIDB4ZDMsIDB4NjUgfSB9 DQo+ID4gPiA+ID4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKyAgIyMgUGF5bG9h ZCBTdGFuZGFsb25lIFBjZCBQcm90b2NvbA0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gKyAgZ0Vka2lp UGF5bG9hZFN0YW5kYWxvbmVQY2RQcm90b2NvbEd1aWQgICAgICAgICAgICA9IHsweDhlZjZmZjQ4 LCAweDIyNjAsDQo+ID4gMHg1NDA3LCB7MHgwZCwgMHgxOCwgMHgyZSwgMHgyYywgMHhhYSwNCj4g PiA+IDB4N2QsDQo+ID4gPiA+ID4gMHhjOSwgMHgxZn19DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiAr ICBnRWRraWlFZmlQYXlsb2FkU3RhbmRhbG9uZVBjZFByb3RvY29sR3VpZCAgICAgICAgID0gezB4 N2U1MGM0MjIsDQo+ID4gMHhhZTc2LCAweGJkYzksIHsweDE2LCAweDY2LCAweGNhLCAweDY3LCAw eDk1LA0KPiA+ID4gMHgwNCwNCj4gPiA+ID4gPiAweDRkLCAweGVhfX0NCj4gPiA+ID4gPg0KPiA+ ID4gPiA+ICsgIGdFZGtpaVBheWxvYWRHZXRTdGFuZGFsb25lUGNkSW5mb1Byb3RvY29sR3VpZCAg ICAgPSB7MHhkNzIxNGMwMywNCj4gPiAweDI3ZTAsIDB4NWIzNSwgezB4ZDUsIDB4YjEsIDB4ZWIs IDB4MWEsIDB4NTAsDQo+ID4gPiAweDE0LA0KPiA+ID4gPiA+IDB4NWUsIDB4MTV9fQ0KPiA+ID4g PiA+DQo+ID4gPiA+ID4gKyAgZ0Vka2lpRWZpUGF5bG9hZEdldFN0YW5kYWxvbmVQY2RJbmZvUHJv dG9jb2xHdWlkICA9IHsweDEwMzllY2RmLA0KPiA+IDB4NTkwOCwgMHhmNzZjLCB7MHg1MSwgMHhm OSwgMHhhZSwgMHgwOSwgMHhjNSwNCj4gPiA+IDB4YTksDQo+ID4gPiA+ID4gMHg2OCwgMHg5ZX19 DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiAgICAjDQo+ID4g PiA+ID4NCj4gPiA+ID4gPiAgICAjIFByb3RvY29scyBkZWZpbmVkIGluIFBJMS4wLg0KPiA+ID4g PiA+DQo+ID4gPiA+ID4gICAgIw0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gQEAgLTE5NDUsNiArMTk1 MSwxMiBAQA0KPiA+ID4gPiA+ICAgICMgQFByb21wdCBWYWxpZGF0ZSBPUkRFUkVEX0NPTExFQ1RJ T04gc3RydWN0dXJlDQo+ID4gPiA+ID4NCj4gPiA+ID4gPg0KPiA+IGdFZmlNZGVQa2dUb2tlblNw YWNlR3VpZC5QY2RWYWxpZGF0ZU9yZGVyZWRDb2xsZWN0aW9ufEZBTFNFfEJPT0xFQQ0KPiA+IE58 MHgwMDAwMDAyYQ0KPiA+ID4gPiA+DQo+ID4gPiA+ID4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICsg ICMjIEluZGljYXRlcyBpZiB0aGUgc3RhbmRhbG9uZSBQQ0QgZGF0YWJhc2UgaXMgZW5hYmxlZCBm b3INCj4gPiBQYXlsb2FkLjxCUj48QlI+DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArICAjICAgVFJV RSAgLSBFbmFibGUgdGFuZGFsb25lIFBDRCBkYXRhYmFzZSBpcyBlbmFibGVkIGZvciBQYXlsb2Fk LjxCUj4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICsgICMgICBGQUxTRSAtIERpc2FibGUgdGFuZGFs b25lIFBDRCBkYXRhYmFzZSBpcyBlbmFibGVkIGZvcg0KPiA+IFBheWxvYWQuPEJSPg0KPiA+ID4g PiA+DQo+ID4gPiA+ID4gKyAgIyBAUHJvbXB0IEVuYWJsZSB0YW5kYWxvbmUgUENEIGRhdGFiYXNl IGlzIGVuYWJsZWQgZm9yIFBheWxvYWQuDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArDQo+ID4gZ0Vm aU1kZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZFN0YW5kYWxvbmVQY2REYXRhYmFzZUVuYWJsZXxGQUxT RXxCT08NCj4gPiBMRUFOfDB4MDAwMDAwMmUNCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICsNCj4gPiA+ ID4gPg0KPiA+ID4gPiA+ICBbUGNkc0ZpeGVkQXRCdWlsZF0NCj4gPiA+ID4gPg0KPiA+ID4gPiA+ ICAgICMjIFN0YXR1cyBjb2RlIHZhbHVlIGZvciBpbmRpY2F0aW5nIGEgd2F0Y2hkb2cgdGltZXIg aGFzIGV4cGlyZWQuDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiAgICAjIEVGSV9DT01QVVRJTkdfVU5J VF9IT1NUX1BST0NFU1NPUiB8DQo+ID4gRUZJX0NVX0hQX0VDX1RJTUVSX0VYUElSRUQNCj4gPiA+ ID4gPg0KPiA+ID4gPiA+IC0tDQo+ID4gPiA+ID4gMi4zMC4wLndpbmRvd3MuMg0KPiA+ID4gPiA+ DQo+ID4gPiA+ID4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+IC09LT0tPS09LT0tPQ0KPiA+ID4gPiA+ IEdyb3Vwcy5pbyBMaW5rczogWW91IHJlY2VpdmUgYWxsIG1lc3NhZ2VzIHNlbnQgdG8gdGhpcyBn cm91cC4NCj4gPiA+ID4gPiBWaWV3L1JlcGx5IE9ubGluZSAoIzc1NTAyKToNCj4gPiBodHRwczov L2VkazIuZ3JvdXBzLmlvL2cvZGV2ZWwvbWVzc2FnZS83NTUwMg0KPiA+ID4gPiA+IE11dGUgVGhp cyBUb3BpYzogaHR0cHM6Ly9ncm91cHMuaW8vbXQvODMwNDY5MzUvMTY0MzQ5Ng0KPiA+ID4gPiA+ IEdyb3VwIE93bmVyOiBkZXZlbCtvd25lckBlZGsyLmdyb3Vwcy5pbw0KPiA+ID4gPiA+IFVuc3Vi c2NyaWJlOiBodHRwczovL2VkazIuZ3JvdXBzLmlvL2cvZGV2ZWwvdW5zdWINCj4gPiBbbWljaGFl bC5kLmtpbm5leUBpbnRlbC5jb21dDQo+ID4gPiA+ID4gLT0tPS09LT0tPS09DQo+ID4gPiA+ID4N Cj4gPiA+ID4NCj4gPiA+ID4NCj4gPiA+ID4NCj4gPiA+ID4gDQo+ID4gPiA+DQoNCg==