From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by mx.groups.io with SMTP id smtpd.web10.9960.1647611178845848404 for ; Fri, 18 Mar 2022 06:46:19 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=V63YRtvA; spf=pass (domain: intel.com, ip: 192.55.52.120, mailfrom: ted.kuo@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1647611178; x=1679147178; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=+ZhNNAcKpl7JWc0JIDW2Eqg92RmIX3feDa3AJOKoNOU=; b=V63YRtvAbzhmAyK5VwYgk3XjPT1ifyKsGHPHOf77pdmv5k60yR02b5+5 m+dO+psz1e37tABw3R9n6gKhqH3Q1Qpfpq7cl9pL7SsBjC95yUk4Y3yUR sy+LfHxVp/1EEP0bgZrgd5kXS25A2SY+0rT6KfCPiQNXfk4Xx8vc13uzW M81H25ONkoWt9kCyvGaVI0Fi8tHizFwjCeJrZ/HWSsAXk7noz0aAOGAMX FL/d6EgxzlavaNv3YzOSRNjB2nB+U3HR4vrUmJ6DZz8Rcro3E56koHnA9 6TDBiID8u/6Gg+eQh7fLgJ6cO/oRA8BjKNt4q29Y1aeOFw6ezU4TlfkBq Q==; X-IronPort-AV: E=McAfee;i="6200,9189,10289"; a="255964256" X-IronPort-AV: E=Sophos;i="5.90,192,1643702400"; d="scan'208";a="255964256" Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Mar 2022 06:46:18 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.90,192,1643702400"; d="scan'208";a="645519077" Received: from orsmsx605.amr.corp.intel.com ([10.22.229.18]) by fmsmga002.fm.intel.com with ESMTP; 18 Mar 2022 06:46:17 -0700 Received: from orsmsx612.amr.corp.intel.com (10.22.229.25) 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.2308.21; Fri, 18 Mar 2022 06:46:17 -0700 Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by orsmsx612.amr.corp.intel.com (10.22.229.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.21 via Frontend Transport; Fri, 18 Mar 2022 06:46:17 -0700 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (104.47.55.170) by edgegateway.intel.com (134.134.137.100) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2308.21; Fri, 18 Mar 2022 06:46:17 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=SumZHmhNBZPQ2yshJQ9GKsc+xeE2C+kV/hnGBO6czUgVUbBNeXEMWrxipSgxImvaNia+YyxaRr8vREsy6wU+nxX5BrWxf1NsL7YmXeFwGSfjIXnrj715WceBlGhu4WSkO8UtmAvuSyi1axTf3+jrywHeBbNsaHv1ut/X8STPfusoelmrRP1HrPoRpZE30iVD83fxCAjfPI1OmSYW7VxjlovaASlpEWPxhx0ebDr/0u2UdyVYcit64p1ZldmzPxEtn9BkR4mFROY2m2epvTr9nOSfRHW9fMIfNI0MfXR0+6GvrQc9iL2OWDFx8gmp/V87KUOLiEQ5JC4laXoJPYmSlw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=+ZhNNAcKpl7JWc0JIDW2Eqg92RmIX3feDa3AJOKoNOU=; b=ETMjd6KKwNFuUhU27UXfiTLHIbMdLgwP6p5+2aeYeaWZGo9SSZUsilMyVsf1nydp3G4ZjaALOrwbOjZYxYhYjzwDX1Xmph+AmCkLFsYiXJLhHbGlqh5lbDIubAyW/p1jmLPYBFRkABSRq66x6SJcEZVj866+giFldR31izGE2m9ZGdodwuCOOGJTrecCWOmO6i/6jX6pUbEar1h1upGwmqLotjBICA3RVNJCfbMPs9p1fhNpcq3SmbTNxM03sDRla4su1hgBXozcDvIdkzA6GFR/PLfj4Z3twJloox8K2vXmZzAD6miUa8Ki27/SPdIyldv/oOf02ZhaXwfUFlA4tQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from MW5PR11MB5932.namprd11.prod.outlook.com (2603:10b6:303:1a2::5) by DM4PR11MB6044.namprd11.prod.outlook.com (2603:10b6:8:63::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5081.14; Fri, 18 Mar 2022 13:46:13 +0000 Received: from MW5PR11MB5932.namprd11.prod.outlook.com ([fe80::99c1:4af2:442d:4ffa]) by MW5PR11MB5932.namprd11.prod.outlook.com ([fe80::99c1:4af2:442d:4ffa%6]) with mapi id 15.20.5081.018; Fri, 18 Mar 2022 13:46:13 +0000 From: "Kuo, Ted" To: =?utf-8?B?TWFydmluIEjDpHVzZXI=?= , "devel@edk2.groups.io" CC: "Bi, Dandan" , "Gao, Liming" , "De, Debkumar" , "Han, Harry" , "West, Catharine" , "Wang, Jian J" , "S, Ashraf Ali" , "Kinney, Michael D" Subject: Re: [edk2-devel][PATCH] MdeModulePkg: Make RSP 16-byte boundary aligned for PEI 64bit Thread-Topic: [edk2-devel][PATCH] MdeModulePkg: Make RSP 16-byte boundary aligned for PEI 64bit Thread-Index: AQHYNEcKlxHMUsGQNkC1F+OqRR5bjazCzPYAgACpL4CAAbtzcA== Date: Fri, 18 Mar 2022 13:46:12 +0000 Message-ID: References: <944dec73-e095-601e-7331-38d2c72f013f@posteo.de> In-Reply-To: <944dec73-e095-601e-7331-38d2c72f013f@posteo.de> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.6.401.20 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 2c401406-fdf0-405c-c775-08da08e5aaaa x-ms-traffictypediagnostic: DM4PR11MB6044:EE_ x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-microsoft-antispam-prvs: x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: QjKTHqV40B5VKnyerXlqRBQwrMOD2rO3i1LKHh6D8cpY0G5fZcBhoGiCd47c1ZyNH7SoYy1aWDX2nIm7yS1lANd5cGMdtqMxRReCoy/YM+m4wU+yjZ84gsVPOhWv3jBnVpFttK95jrcxRUn9q/KIlODknmTKH4LAmVzxK7TdWsQGpBoEbyLwiwpY/GkMx6HNxv9Fg7DNIZmus3EfPzSeL1RQGWD3nqA9mBbmp/3sVJZFS/PWhDczGrq2+pl/hWTSVXr/3kV6PEZHVzXT4InrKn28u15MbsbFjW6DA7LdS0NhZ+OQVcxFnwOQgHD133gVAe+ysB/ene/+E34Wj1nrjxCtGWxWqHwwnUFfbQU91kX3JwqWcVaJWt2sK1ybMRK5TaHOm+0xKNptQ3aIzgiKs+b/tfTr4RacLjyxq+mNWuVT0b+gBR1NQI3nJz1xY6TFh9f3NFI984vclHiX2tHFPV9etWuzuynamaTiYoduwJKn5udUBmJbcjKbsjb8zpIOlh1w/Av0IhLqxWgkZDjV5DCE/cnlFSYjbGFe1Z4IA3FKFAM9eYXMKh+bSXId+IDU4wp6M8EKfOJivKImYoHC4SvcRRrioGz1CdDSdXs3u7omBiWzYf+z89BFMTezY0G9VsgOeTw+2BziWLWDGyLeSL16YPHozLCbBBncYEd2BCKYssaygekGRux3ealKOMN7p+VwysTcXRo62VyoT0oOOtQYxTKz/Hqej0emx2I0uhkcSDlm5gcvN3vzWU+mIMGs2YGtjRoUN9fn3PqIBmDl/WxD67euHX8SvduktE2uCeQ6fLV9AVhQs0hb05IVhtGVlXrIIELBw0M6dKsRg1k4Aw== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW5PR11MB5932.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230001)(366004)(66946007)(66556008)(2906002)(966005)(66446008)(8936002)(7696005)(66476007)(6506007)(64756008)(86362001)(53546011)(9686003)(508600001)(76116006)(82960400001)(122000001)(55016003)(71200400001)(110136005)(33656002)(5660300002)(83380400001)(186003)(26005)(107886003)(38070700005)(19627235002)(66574015)(38100700002)(8676002)(52536014)(4326008)(316002)(54906003);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?WGRjcGt1S2JWMytyMzVRZ3ZEWU1UQWJlTCs3ZVF5SkNEWHJDYkdoVzdMckRE?= =?utf-8?B?b0E2MFlpVTdmUmlUYTMrYUx1NTR4b2RJanNFcUtDV0U5Q0RaYVUwQVVWaVRw?= =?utf-8?B?R01NTHpudnZFei9udm9rc0NWSmp1c0NMZGFNWUlmWE1nME5qbDRQUVJ6Z2g0?= =?utf-8?B?OUFNS3BBUmJjRzMrMmk1Q1BxSWxKOUhkOWt0d2lybm5odGRLa1BqT09ic3VZ?= =?utf-8?B?Ump6UnZ2cVYzYzI2a1BJdm54MGFsV1VPSWhDSld5SlR3RlB0dlRQZGhkSVlL?= =?utf-8?B?VlYrUE9ndDZnZHZCL0w5OHAxVkVDSTZ4enV5U09DbHRnSk0yMmlSaVpqWnQv?= =?utf-8?B?RHJDbDBDYVRwbFRTN1JBaWJuOHJYOXdoRFQvV001WUVrL2xubEI3ZmtIb3JC?= =?utf-8?B?NHlGZFo2TVh2cEdtVTR1K3JDNTZKZ3hQZTlTRkpJT2FtOTNyNmZBbHBaVFhB?= =?utf-8?B?b1pnWExhdHBDaGlXOGh5bVN0dVB0L0p5Z1ZMS04rMTdDeUtobjVYbkxtNGEx?= =?utf-8?B?OVlEVVY4RnUzUXRqaXVEYUFYYVZEZ3BTbitpY0QzNVk2NUROZTh3bE11cTRV?= =?utf-8?B?dXUwTlF5N005Qytyc3RvZXMyazUwSlVTZ2Z5WG14S1B6eGVXU2FpTHlIV05i?= =?utf-8?B?SXVUcE1uMVFlU3RzSVdhZ2d2ci9Fb3NBT2xHemJiUmdjQlZLbVpyTFo4dnJu?= =?utf-8?B?WUwyTCtJbTIvQVZsRkhsVjhMbzFzMW9wbHh5SmxKR0ZHNm5FbDRZd1g1aWVy?= =?utf-8?B?OEtxWUd4T0NuWXNzWTBiN0h5dUJ3TEZTb0VZVUluN0wwaEQyZS9CWlhmVHRx?= =?utf-8?B?Rk4wK3lyd1FrcHY0RFVUN0FNcFZhbzI1TG0yb3cxaVBncWQxQkhaQk9TSXQ3?= =?utf-8?B?UkhwOG9MRXZwV24yU0EyV3c2eWtFTWdkVkpxNGNEanFDT0UwbmFRUFVHSDJr?= =?utf-8?B?ZTBZR21tWmxIWmJZVjEvOVNhRjhsTEYwNk9ORmhKYmtHcHY4RXgvRU1LaS8x?= =?utf-8?B?VHd3Z2RGMVMxZlRzQkVkbG1GT2IrVXI0UzFUbGNjYXV0OW9ZZ0pQTWVVMjRG?= =?utf-8?B?QSs1d1lWMzFrUFdrNFlybnN3R0JsSitNd1NlUlpqbFBRMU9JMTMxV2RWZTQ1?= =?utf-8?B?NXVqcnFxblF3U3BHYnpsTzRpeTZ2bFlTK3VvTHNQS2MxZ0loU2tQQWxuVEdP?= =?utf-8?B?MUtxcU5ncHBzWTVVOXBUWVpMcGJJZFAwczYvd3g2c004TW04dGpSMkhGSnFn?= =?utf-8?B?WHBmR0RaUk1LRnEvVDJzWDhWRFJtME1POGdTS2ZQSUQ1amhlak1MUGpJMCtu?= =?utf-8?B?bzBJUDcwYU45RFJ5NVVUdjBudk9jWS9uRHd3RFpPSUhCQ00zRm51b0JiWmVH?= =?utf-8?B?eUVUWVpQcTVITGFoMStpTUpFZzc4MDdnU1lCMWh6NWE2eGNiZVRLZ0dzSFB3?= =?utf-8?B?b1lXa2UrTFltYVF1cHZYTTVNOUh4dVlGY01NV3lkd2tyTERNUFBycGQ3U1gx?= =?utf-8?B?Qyt3WjhFRjQ0eE43ZGdZSjhLclMzV1lpeFB5QVMwdjFmR0w3MGlvWmZqdXlZ?= =?utf-8?B?dWNtbGwwNUUrZ0dPSWF5SHAyZDNxcXVLQUo5a1poNEJFRVFxTDdtN1V1VjNh?= =?utf-8?B?anhWWnhFTlZ6NWhWR1JOQzMxUHpxY1ZGUW9TVk9JMjhOK05pbG1od0dOS0Fr?= =?utf-8?B?N1o3RW5GajJDZEtGQXkySTJlNEFOc0lpUGZBeEFjSVBJVDM4S1pVQ2lRRFdO?= =?utf-8?B?SC82QUFpUXd2di9jQVdQMlRyMjlPbUFtWkUvTHRyWmZ3WXFHSFpHZ1l5YWZu?= =?utf-8?B?MVVWVjBDMnE0d2ZGZFdXeVF2Yk5OVVJkcjJ2T1dlN1pxdzVVdFp6dTFhY1c2?= =?utf-8?B?RFJEWkZHYjgvTVd4OW5ZWkMwbzFPdzFxbjlMTXN1b0J0THNhb1k2S0M3UHpQ?= =?utf-8?Q?M3DMw13aP9eofQXA9rUbyQ3021kIzXCc?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MW5PR11MB5932.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2c401406-fdf0-405c-c775-08da08e5aaaa X-MS-Exchange-CrossTenant-originalarrivaltime: 18 Mar 2022 13:46:12.8792 (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: lLz2SQZh0fuRYNKYzfP8OP5284Xa09Z5t0pP5QHNdXlFYCD3Zvt9iylaJpoM4EYoRg1Eh4NykCIXShdQmsVczQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR11MB6044 Return-Path: ted.kuo@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 VGhhbmtzIE1hcnZpbiBmb3IgeW91ciBmZWVkYmFjay4gSSB0aGluayB5b3VyIGRpcmVjdGlvbiBp cyByaWdodC4gVGhlIG9yaWdpbmFsIHN0YWNrIGFsaWdubWVudCBpcyBjb3JyZWN0IGJlZm9yZSBz d2l0Y2hpbmcgdG8gbmV3IHN0YWNrIGJ1dCB0aGUgY3VycmVudCBpbXBsZW1lbnRhdGlvbiBpbiBT ZWNDb3JlJ3MgU2VjVGVtcG9yYXJ5UmFtU3VwcG9ydCgpIHdpbGwgYnJlYWsgdGhlIHN0YWNrIGFs aWdubWVudCBhZnRlciBzd2l0Y2hpbmcgdG8gbmV3IHN0YWNrLiBXZSBuZWVkIHRvIGVuc3VyZSB0 aGUgbmV3IHN0YWNrIGFuZCBzdGFjayBvZmZzZXQgaGF2ZSBzYW1lIGFsaWdubWVudCBhcyB3ZWxs IGFzIHRoZSBvbGQgc3RhY2suIEknbGwgcmVzZW5kIGEgbmV3IHBhdGNoIHRvIGtlZXAgdGhlIHN0 YWNrIGFsaWdubWVudCBhbGlnbmVkIGJlZm9yZSBhbmQgYWZ0ZXIgc3dpdGNoaW5nIHN0YWNrLg0K DQpUaGFua3MsDQpUZWQNCg0KLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCkZyb206IE1hcnZp biBIw6R1c2VyIDxtaGFldXNlckBwb3N0ZW8uZGU+IA0KU2VudDogVGh1cnNkYXksIE1hcmNoIDE3 LCAyMDIyIDc6MDkgUE0NClRvOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbzsgS3VvLCBUZWQgPHRlZC5r dW9AaW50ZWwuY29tPg0KQ2M6IEJpLCBEYW5kYW4gPGRhbmRhbi5iaUBpbnRlbC5jb20+OyBHYW8s IExpbWluZyA8Z2FvbGltaW5nQGJ5b3NvZnQuY29tLmNuPjsgRGUsIERlYmt1bWFyIDxkZWJrdW1h ci5kZUBpbnRlbC5jb20+OyBIYW4sIEhhcnJ5IDxoYXJyeS5oYW5AaW50ZWwuY29tPjsgV2VzdCwg Q2F0aGFyaW5lIDxjYXRoYXJpbmUud2VzdEBpbnRlbC5jb20+OyBXYW5nLCBKaWFuIEogPGppYW4u ai53YW5nQGludGVsLmNvbT47IFMsIEFzaHJhZiBBbGkgPGFzaHJhZi5hbGkuc0BpbnRlbC5jb20+ OyBLaW5uZXksIE1pY2hhZWwgRCA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+DQpTdWJqZWN0 OiBSZTogW2VkazItZGV2ZWxdW1BBVENIXSBNZGVNb2R1bGVQa2c6IE1ha2UgUlNQIDE2LWJ5dGUg Ym91bmRhcnkgYWxpZ25lZCBmb3IgUEVJIDY0Yml0DQoNCkdvb2QgZGF5LA0KDQo+IE9uIDE3LiBN YXIgMjAyMiwgYXQgMDI6MDUsIEt1bywgVGVkIDx0ZWQua3VvQGludGVsLmNvbT4gd3JvdGU6DQo+ DQo+IO+7v0hpIExpbWluZyBhbmQgTWlrZSwNCj4NCj4gQ2FuIHlvdSBwbGVhc2UgcmV2aWV3IHRo ZSBjaGFuZ2U/DQo+DQo+IFRoYW5rcywNCj4gVGVkDQo+DQo+IC0tLS0tT3JpZ2luYWwgTWVzc2Fn ZS0tLS0tDQo+IEZyb206IGRldmVsQGVkazIuZ3JvdXBzLmlvIDxkZXZlbEBlZGsyLmdyb3Vwcy5p bz4gT24gQmVoYWxmIE9mIEt1bywgDQo+IFRlZA0KPiBTZW50OiBUaHVyc2RheSwgTWFyY2ggMTAs IDIwMjIgMjoyMSBQTQ0KPiBUbzogZGV2ZWxAZWRrMi5ncm91cHMuaW8NCj4gQ2M6IEJpLCBEYW5k YW4gPGRhbmRhbi5iaUBpbnRlbC5jb20+OyBHYW8sIExpbWluZyANCj4gPGdhb2xpbWluZ0BieW9z b2Z0LmNvbS5jbj47IERlLCBEZWJrdW1hciA8ZGVia3VtYXIuZGVAaW50ZWwuY29tPjsgSGFuLCAN Cj4gSGFycnkgPGhhcnJ5LmhhbkBpbnRlbC5jb20+OyBXZXN0LCBDYXRoYXJpbmUgDQo+IDxjYXRo YXJpbmUud2VzdEBpbnRlbC5jb20+OyBXYW5nLCBKaWFuIEogPGppYW4uai53YW5nQGludGVsLmNv bT47IFMsIA0KPiBBc2hyYWYgQWxpIDxhc2hyYWYuYWxpLnNAaW50ZWwuY29tPg0KPiBTdWJqZWN0 OiBbZWRrMi1kZXZlbF1bUEFUQ0hdIE1kZU1vZHVsZVBrZzogTWFrZSBSU1AgMTYtYnl0ZSBib3Vu ZGFyeSANCj4gYWxpZ25lZCBmb3IgUEVJIDY0Yml0DQo+DQo+IFJFRjpodHRwczovL2J1Z3ppbGxh LnRpYW5vY29yZS5vcmcvc2hvd19idWcuY2dpP2lkPTM4NjUNCj4gVXNlIFN3aXRjaFBlaUNvcmUg aW5zdGVhZCBvZiBjYWxsaW5nIFBlaUNvcmUgZGlyZWN0bHkgd2hlbiBzd2l0Y2hpbmcgDQo+IFBl aUNvcmUgZnJvbSB0ZW1wb3JhcnkgbWVtb3J5IHRvIHBlcm1hbmVudCBtZW1vcnkuIEZvciBQRUkg MzJiaXQsIA0KPiBTd2l0Y2hQZWlDb3JlIGFsd2F5cyBjYWxscyBQZWlDb3JlIHdpdGhvdXQgYW55 IGFkZGl0aW9uYWwgc3RlcC4gRm9yIA0KPiBQRUkgNjRiaXQsIFN3aXRjaFBlaUNvcmUgbWFrZXMg UlNQIDE2LWJ5dGUgYm91bmRhcnkgYWxpZ25lZCBhbmQgdGhlbiANCj4gYWxsb2NhdGUgMzIgYnl0 ZXMgYXMgYSBzaGFkb3cgc3RvcmUgb24gY2FsbCBzdGFjayBiZWZvcmUgY2FsbGluZyBQZWlDb3Jl Lg0KPg0KPiBDYzogRGFuZGFuIEJpIDxkYW5kYW4uYmlAaW50ZWwuY29tPg0KPiBDYzogTGltaW5n IEdhbyA8Z2FvbGltaW5nQGJ5b3NvZnQuY29tLmNuPg0KPiBDYzogRGVia3VtYXIgRGUgPGRlYmt1 bWFyLmRlQGludGVsLmNvbT4NCj4gQ2M6IEhhcnJ5IEhhbiA8aGFycnkuaGFuQGludGVsLmNvbT4N Cj4gQ2M6IENhdGhhcmluZSBXZXN0IDxjYXRoYXJpbmUud2VzdEBpbnRlbC5jb20+DQo+IENjOiBK aWFuIEogV2FuZyA8amlhbi5qLndhbmdAaW50ZWwuY29tPg0KPiBDYzogQXNocmFmIEFsaSBTIDxh c2hyYWYuYWxpLnNAaW50ZWwuY29tPg0KPiBTaWduZWQtb2ZmLWJ5OiBUZWQgS3VvIDx0ZWQua3Vv QGludGVsLmNvbT4NCj4gLS0tDQo+IE1kZU1vZHVsZVBrZy9Db3JlL1BlaS9EaXNwYXRjaGVyL0Rp c3BhdGNoZXIuYyB8IMKgMiArLQ0KPiDCoE1kZU1vZHVsZVBrZy9Db3JlL1BlaS9JYTMyL1N3aXRj aFBlaUNvcmUubmFzbSB8IDMzDQo+ICsrKysrKysrKysrKysrKysrKysrKysrDQo+IE1kZU1vZHVs ZVBrZy9Db3JlL1BlaS9QZWlNYWluLmggwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoHwgMjUg KysrKysrKysrKysrKysrKysrIA0KPiBNZGVNb2R1bGVQa2cvQ29yZS9QZWkvUGVpTWFpbi5pbmYg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgfCDCoDYgKysrKysgDQo+IE1kZU1vZHVsZVBrZy9Db3Jl L1BlaS9YNjQvU3dpdGNoUGVpQ29yZS5uYXNtIMKgfCAzOA0KPiArKysrKysrKysrKysrKysrKysr KysrKysrKysNCj4gNSBmaWxlcyBjaGFuZ2VkLCAxMDMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlv bigtKSDCoGNyZWF0ZSBtb2RlIDEwMDY0NCANCj4gTWRlTW9kdWxlUGtnL0NvcmUvUGVpL0lhMzIv U3dpdGNoUGVpQ29yZS5uYXNtDQo+IGNyZWF0ZSBtb2RlIDEwMDY0NCBNZGVNb2R1bGVQa2cvQ29y ZS9QZWkvWDY0L1N3aXRjaFBlaUNvcmUubmFzbQ0KPg0KPiBkaWZmIC0tZ2l0IGEvTWRlTW9kdWxl UGtnL0NvcmUvUGVpL0Rpc3BhdGNoZXIvRGlzcGF0Y2hlci5jDQo+IGIvTWRlTW9kdWxlUGtnL0Nv cmUvUGVpL0Rpc3BhdGNoZXIvRGlzcGF0Y2hlci5jDQo+IGluZGV4IDM1NTJmZWRhOGYuLjVhZjZl NmU4NmYgMTAwNjQ0DQo+IC0tLSBhL01kZU1vZHVsZVBrZy9Db3JlL1BlaS9EaXNwYXRjaGVyL0Rp c3BhdGNoZXIuYw0KPiArKysgYi9NZGVNb2R1bGVQa2cvQ29yZS9QZWkvRGlzcGF0Y2hlci9EaXNw YXRjaGVyLmMNCj4gQEAgLTg3MSw3ICs4NzEsNyBAQCBQZWlDaGVja0FuZFN3aXRjaFN0YWNrICgN Cj4gwqDCoMKgwqDCoMKgLy8NCj4gwqDCoMKgwqDCoMKgLy8gRW50cnkgUEVJIFBoYXNlIDINCj4g wqDCoMKgwqDCoMKgLy8NCj4gLSDCoMKgwqDCoMKgUGVpQ29yZSAoU2VjQ29yZURhdGEsIE5VTEws IFByaXZhdGUpOw0KPiArIMKgwqDCoMKgwqBTd2l0Y2hQZWlDb3JlIChTZWNDb3JlRGF0YSwgTlVM TCwgUHJpdmF0ZSk7DQo+IMKgwqDCoMKgfSBlbHNlIHsNCj4gwqDCoMKgwqDCoMKgLy8NCj4gwqDC oMKgwqDCoMKgLy8gTWlncmF0ZSBtZW1vcnkgcGFnZXMgYWxsb2NhdGVkIGluIHByZS1tZW1vcnkg cGhhc2UuDQo+IGRpZmYgLS1naXQgYS9NZGVNb2R1bGVQa2cvQ29yZS9QZWkvSWEzMi9Td2l0Y2hQ ZWlDb3JlLm5hc20NCj4gYi9NZGVNb2R1bGVQa2cvQ29yZS9QZWkvSWEzMi9Td2l0Y2hQZWlDb3Jl Lm5hc20NCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gaW5kZXggMDAwMDAwMDAwMC4uMjNjZmI1 MDkwYg0KPiAtLS0gL2Rldi9udWxsDQo+ICsrKyBiL01kZU1vZHVsZVBrZy9Db3JlL1BlaS9JYTMy L1N3aXRjaFBlaUNvcmUubmFzbQ0KPiBAQCAtMCwwICsxLDMzIEBADQo+ICs7LS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0N Cj4gKy0tDQo+ICstLS0tLS0tLQ0KPiArOw0KPiArOyBDb3B5cmlnaHQgKGMpIDIwMjIsIEludGVs IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLjxCUj4gOw0KPiArU1BEWC1MaWNlbnNl LUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZS1QYXRlbnQgOyA7IEFic3RyYWN0Og0KPiArOw0KPiAr OyDCoMKgU3dpdGNoIFBlaUNvcmUgZnJvbSB0ZW1wb3JhcnkgbWVtb3J5IHRvIHBlcm1hbmVudCBt ZW1vcnkuDQo+ICs7DQo+ICs7LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gKy0tDQo+ICstLS0tLS0tLQ0KPiArDQo+ ICsgwqDCoMKgU0VDVElPTiAudGV4dA0KPiArDQo+ICtleHRlcm4gQVNNX1BGWChQZWlDb3JlKQ0K PiArDQo+ICs7LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gKy0tDQo+ICstLS0tLS0tLQ0KPiArOyBWT0lEDQo+ICs7 IEVGSUFQSQ0KPiArOyBTd2l0Y2hQZWlDb3JlICgNCj4gKzsgwqDCoEVGSV9TRUNfUEVJX0hBTkRf T0ZGIMKgwqDCoCpTZWNDb3JlRGF0YVB0ciwgOyDCoMKgDQo+ICtFRklfUEVJX1BQSV9ERVNDUklQ VE9SIMKgKlBwaUxpc3QsIDsgwqDCoFZPSUQgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAqRGF0YSA7IMKgwqANCj4gKyk7DQo+ICs7LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gKy0tDQo+ICst LS0tLS0tLQ0KPiArZ2xvYmFsIEFTTV9QRlgoU3dpdGNoUGVpQ29yZSkNCj4gK0FTTV9QRlgoU3dp dGNoUGVpQ29yZSk6DQo+ICsgwqBwdXNoIMKgwqBEV09SRCBbZXNwICsgMTJdDQo+ICsgwqBwdXNo IMKgwqBEV09SRCBbZXNwICsgMTJdDQo+ICsgwqBwdXNoIMKgwqBEV09SRCBbZXNwICsgMTJdDQo+ ICsgwqBjYWxsIMKgwqBBU01fUEZYKFBlaUNvcmUpDQo+ICsgwqBqbXAgwqDCoMKgJCDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqA7IFNob3VsZCBuZXZlciByZWFjaCBoZXJlDQo+ICsgwqBy ZXQNCj4gKw0KDQpJIHRoaW5rIHRoZXJlIHdlcmUgZWZmb3J0cyBpbiB0aGUgcGFzdCB0byBhdm9p ZCBBU00gd2hlbmV2ZXIgcG9zc2libGUuIA0KQ2Fu4oCZdCB0aGlzIGp1c3QgcmVtYWluIGEgQyBm dW5jdGlvbiAoZm9yIElBMzIgb25seSBvZiBjb3Vyc2UpIGFuZCBpZiBub3QsIHdvdWxkbid0IGEg c2ltcGxlIGptcCBpbnN0cnVjdGlvbiBiZSBzdWZmaWNpZW50Pw0KDQo+IGRpZmYgLS1naXQgYS9N ZGVNb2R1bGVQa2cvQ29yZS9QZWkvUGVpTWFpbi5oIA0KPiBiL01kZU1vZHVsZVBrZy9Db3JlL1Bl aS9QZWlNYWluLmggaW5kZXggNTU2YmVkZGFkNS4uOGU4ZWQzZGFkZiAxMDA2NDQNCj4gLS0tIGEv TWRlTW9kdWxlUGtnL0NvcmUvUGVpL1BlaU1haW4uaA0KPiArKysgYi9NZGVNb2R1bGVQa2cvQ29y ZS9QZWkvUGVpTWFpbi5oDQo+IEBAIC0yMDM4LDQgKzIwMzgsMjkgQEAgUGVpUmVpbml0aWFsaXpl RnYgKA0KPiDCoMKgSU4gwqBQRUlfQ09SRV9JTlNUQU5DRSDCoCpQcml2YXRlRGF0YQ0KPiDCoMKg KTsNCj4NCj4gKy8qKg0KPiArIMKgVGhpcyByb3V0aW5lIGlzIGludm9rZWQgYnkgbWFpbiBlbnRy eSBvZiBQZWlNYWluIG1vZHVsZSBkdXJpbmcgDQo+ICt0cmFuc2l0aW9uDQo+ICsgwqBmcm9tIHRl bXBvcmFyeSBtZW1vcnkgdG8gcGVybWFuZW50IG1lbW9yeS4NCj4gKw0KPiArIMKgQHBhcmFtIFNl Y0NvcmVEYXRhUHRyIMKgUG9pbnRzIHRvIGEgZGF0YSBzdHJ1Y3R1cmUgY29udGFpbmluZw0KPiBp bmZvcm1hdGlvbiBhYm91dCB0aGUgUEVJIGNvcmUncyBvcGVyYXRpbmcNCj4gKyDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBlbnZpcm9ubWVudCwgc3VjaCBh cyB0aGUgc2l6ZSBhbmQgbG9jYXRpb24NCj4gb2YgdGVtcG9yYXJ5IFJBTSwgdGhlIHN0YWNrIGxv Y2F0aW9uIGFuZA0KPiArIMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoHRoZSBCRlYgbG9jYXRpb24uDQo+ICsgwqBAcGFyYW0gUHBpTGlzdCDCoMKgwqDCoMKg wqDCoMKgUG9pbnRzIHRvIGEgbGlzdCBvZiBvbmUgb3IgbW9yZSBQUEkNCj4gZGVzY3JpcHRvcnMg dG8gYmUgaW5zdGFsbGVkIGluaXRpYWxseSBieSB0aGUgUEVJIGNvcmUuDQo+ICsgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgQW4gZW1wdHkgUFBJIGxpc3Qg Y29uc2lzdHMgb2YgYSBzaW5nbGUNCj4gZGVzY3JpcHRvciB3aXRoIHRoZSBlbmQtdGFnDQo+ICsg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgRUZJX1BFSV9Q UElfREVTQ1JJUFRPUl9URVJNSU5BVEVfTElTVC4gQXMNCj4gcGFydCBvZiBpdHMgaW5pdGlhbGl6 YXRpb24NCj4gKyDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqBwaGFzZSwgdGhlIFBFSSBGb3VuZGF0aW9uIHdpbGwgYWRkIHRoZXNlDQo+IFNFQy1ob3N0ZWQg UFBJcyB0byBpdHMgUFBJIGRhdGFiYXNlIHN1Y2gNCj4gKyDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqB0aGF0IGJvdGggdGhlIFBFSSBGb3VuZGF0aW9uIGFu ZCBhbnkgbW9kdWxlcw0KPiBjYW4gbGV2ZXJhZ2UgdGhlIGFzc29jaWF0ZWQgc2VydmljZQ0KPiAr IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoGNhbGxzIGFu ZC9vciBjb2RlIGluIHRoZXNlIGVhcmx5IFBQSXMNCj4gKyDCoEBwYXJhbSBEYXRhIMKgwqDCoMKg wqDCoMKgwqDCoMKgwqBQb2ludGVyIHRvIG9sZCBjb3JlIGRhdGEgdGhhdCBpcyB1c2VkIHRvDQo+ IGluaXRpYWxpemUgdGhlDQo+ICsgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgY29yZSdzIGRhdGEgYXJlYXMuDQo+ICsgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgSWYgTlVMTCwgaXQgaXMgZmlyc3QgUGVpQ29yZSBl bnRlcmluZy4NCj4gKw0KPiArKiovDQo+ICtWT0lEDQo+ICtFRklBUEkNCj4gK1N3aXRjaFBlaUNv cmUgKA0KPiArIMKgSU4gQ09OU1QgRUZJX1NFQ19QRUlfSEFORF9PRkYgwqDCoMKgKlNlY0NvcmVE YXRhUHRyLA0KPiArIMKgSU4gQ09OU1QgRUZJX1BFSV9QUElfREVTQ1JJUFRPUiDCoCpQcGlMaXN0 LA0KPiArIMKgSU4gVk9JRCDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCpEYXRhDQo+ICsgwqApOw0KPiAjZW5kaWYNCj4gZGlmZiAtLWdpdCBhL01kZU1v ZHVsZVBrZy9Db3JlL1BlaS9QZWlNYWluLmluZg0KPiBiL01kZU1vZHVsZVBrZy9Db3JlL1BlaS9Q ZWlNYWluLmluZg0KPiBpbmRleCAwY2YzNTczNzFhLi5iNTk3YWVkOGY2IDEwMDY0NA0KPiAtLS0g YS9NZGVNb2R1bGVQa2cvQ29yZS9QZWkvUGVpTWFpbi5pbmYNCj4gKysrIGIvTWRlTW9kdWxlUGtn L0NvcmUvUGVpL1BlaU1haW4uaW5mDQo+IEBAIC00Nyw2ICs0NywxMiBAQA0KPiDCoMKgUGNpQ2Zn Mi9QY2lDZmcyLmMNCj4gwqDCoFBlaU1haW4uaA0KPg0KPiArW1NvdXJjZXMuSUEzMl0NCj4gKyDC oElhMzIvU3dpdGNoUGVpQ29yZS5uYXNtDQo+ICsNCj4gK1tTb3VyY2VzLlg2NF0NCj4gKyDCoFg2 NC9Td2l0Y2hQZWlDb3JlLm5hc20NCj4gKw0KPiBbUGFja2FnZXNdDQo+IMKgwqBNZGVQa2cvTWRl UGtnLmRlYw0KPiDCoMKgTWRlTW9kdWxlUGtnL01kZU1vZHVsZVBrZy5kZWMNCj4gZGlmZiAtLWdp dCBhL01kZU1vZHVsZVBrZy9Db3JlL1BlaS9YNjQvU3dpdGNoUGVpQ29yZS5uYXNtDQo+IGIvTWRl TW9kdWxlUGtnL0NvcmUvUGVpL1g2NC9Td2l0Y2hQZWlDb3JlLm5hc20NCj4gbmV3IGZpbGUgbW9k ZSAxMDA2NDQNCj4gaW5kZXggMDAwMDAwMDAwMC4uOTRlMDliZTc1Nw0KPiAtLS0gL2Rldi9udWxs DQo+ICsrKyBiL01kZU1vZHVsZVBrZy9Db3JlL1BlaS9YNjQvU3dpdGNoUGVpQ29yZS5uYXNtDQo+ IEBAIC0wLDAgKzEsMzggQEANCj4gKzstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiArLS0NCj4gKy0tLS0tLS0tDQo+ ICs7DQo+ICs7IENvcHlyaWdodCAoYykgMjAyMiwgSW50ZWwgQ29ycG9yYXRpb24uIEFsbCByaWdo dHMgcmVzZXJ2ZWQuPEJSPiA7DQo+ICtTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xh dXNlLVBhdGVudCA7IDsgQWJzdHJhY3Q6DQo+ICs7DQo+ICs7IMKgwqBTd2l0Y2ggUGVpQ29yZSBm cm9tIHRlbXBvcmFyeSBtZW1vcnkgdG8gcGVybWFuZW50IG1lbW9yeS4NCj4gKzsNCj4gKzstLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLQ0KPiArLS0NCj4gKy0tLS0tLS0tDQo+ICsNCj4gKyDCoMKgwqBTRUNUSU9OIC50ZXh0 DQo+ICsNCj4gK2V4dGVybiBBU01fUEZYKFBlaUNvcmUpDQo+ICsNCj4gKzstLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0K PiArLS0NCj4gKy0tLS0tLS0tDQo+ICs7IFZPSUQNCj4gKzsgRUZJQVBJDQo+ICs7IFN3aXRjaFBl aUNvcmUgKA0KPiArOyDCoMKgRUZJX1NFQ19QRUlfSEFORF9PRkYgwqDCoMKgKlNlY0NvcmVEYXRh UHRyLCA7IMKgwqANCj4gK0VGSV9QRUlfUFBJX0RFU0NSSVBUT1IgwqAqUHBpTGlzdCwgOyDCoMKg Vk9JRCDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCpEYXRhIDsgwqDCoA0K PiArKTsNCj4gKzstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiArLS0NCj4gKy0tLS0tLS0tDQo+ICtnbG9iYWwgQVNN X1BGWChTd2l0Y2hQZWlDb3JlKQ0KPiArQVNNX1BGWChTd2l0Y2hQZWlDb3JlKToNCj4gKyDCoDsN Cj4gKyDCoDsgUGVyIFg2NCBjYWxsaW5nIGNvbnZlbnRpb24sIG1ha2Ugc3VyZSBSU1AgaXMgMTYt Ynl0ZSBhbGlnbmVkLg0KPiArIMKgOw0KPiArIMKgbW92IMKgwqDCoHJheCwgcnNwDQo+ICsgwqBh bmQgwqDCoMKgcmF4LCAwZmgNCj4gKyDCoHN1YiDCoMKgwqByc3AsIHJheA0KPiArDQo+ICsgwqBz dWIgwqDCoMKgcnNwLCAyMGggwqDCoMKgwqDCoMKgwqDCoDsgQWxsb2NhdGUgMzIgYnl0ZXMgYXMg YSBzaGFkb3cgc3RvcmUgb24NCj4gY2FsbCBzdGFjaw0KPiArIMKgY2FsbCDCoMKgQVNNX1BGWChQ ZWlDb3JlKQ0KPiArIMKgam1wIMKgwqDCoCQgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg OyBTaG91bGQgbmV2ZXIgcmVhY2ggaGVyZQ0KPiArIMKgcmV0DQoNClRoaXMgbWlnaHQgYmUgbXkg b3duIGlnbm9yYW5jZSwgYnV0IHRoaXMgYXBwcm9hY2ggcmVhbGx5IHdvcnJpZXMgbWUuIFRoZSBz dGFjayBpcyBjb3JyZWN0bHkgYWxpZ25lZCBieSB0aGlzIGZ1bmN0aW9uLCBvay4gQnV0IHRoaXMg Y29kZSBpcyBjYWxsZWQgZnJvbSBDLCBhbmQgdGhlIHN0YWNrIGlzIG5vdCBmdWxseSBzd2l0Y2hl ZCAob25seSBhbGlnbmVkIHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50IGxvY2F0aW9uKSwgYW5kIG5v IGFyY2hpdGVjdHVyYWwgbW9kZSBzd2l0Y2ggc2VlbXMgdG8gb2NjdXIsIHdoaWNoIG1lYW5zIDY0 LWJpdCBjb2RlIGFscmVhZHkgcmFuIHdpdGggYW4gdW5hbGlnbmVkIHN0YWNrIChvdGhlcndpc2Ug aXQgd291bGQgbm90IG5lZWQgdG8gYmUgYWxpZ25lZCBoZXJlKSwgYWdyZWVkPw0KDQpUaGUgc3Rh Y2sgaXMgbGFzdCBzd2l0Y2hlZCBieSBTZWNDb3JlJ3MgVGVtcG9yYXJ5UmFtTWlncmF0aW9uKCkg dG8gVG9wT2ZOZXdTdGFjayAtIFRlbXBvcmFyeVN0YWNrU2l6ZS4gQnkgQUJJIGNvbnN0cmFpbnRz LCBUZW1wb3JhcnlTdGFja1NpemUgbXVzdCBiZSAxNi1CeXRlLWFsaWduZWQgKGlzIGl0PykuIEZ1 cnRoZXJtb3JlLCB3ZSBoYXZlIFRvcE9mTmV3U3RhY2sgPSBQcml2YXRlLT5QaHlzaWNhbE1lbW9y eUJlZ2luICsgTmV3U3RhY2tTaXplLiANCk5ld1N0YWNrU2l6ZSBpcyBtYW51YWxseSBhbGlnbmVk IHRvIDRLIChvayksIGJ1dCBtYXkgYmUgc2hvcnRlbmVkIHRvDQpQY2RHZXQzMiAoUGNkUGVpQ29y ZU1heFBlaVN0YWNrU2l6ZSksIHdoaWNoIGFsc28gbXVzdCBiZSAxNi1CeXRlLWFsaWduZWQgZm9y IEFCSSBjb25zdHJhaW50cyAoaXMgaXQ/KS4gUHJpdmF0ZS0+UGh5c2ljYWxNZW1vcnlCZWdpbiBp cyB3aGVyZSBteSBrbm93bGVkZ2UgZmFsbHMgZmxhdCwgd2hpY2ggZ3VhcmFudGVlcyBob2xkIGZv ciBpdD8gSWYgaXQncyBub3QgZ3VhcmFudGVlZCB0byBiZSAxNi1CeXRlLWFsaWduZWQsIHRoaXMg bG9va3MgbGlrZSBhIGN1bHByaXQgYW5kIHRoZSBzdGFjayBzaG91bGQgYmUgYWxpZ25lZCBpbiBU ZW1wb3JhcnlSYW1NaWdyYXRpb24oKS4gT3RoZXJ3aXNlLCBtYXkgb25lIG9mIHRoZSBjb25zdHJh aW50cyBJIG1lbnRpb25lZCBub3QgaG9sZD8gT3RoZXJ3aXNlLCBkb2VzIHNvbWUgQVNNIGluLWJl dHdlZW4gYm9yayB0aGUgc3RhY2sgYWxpZ25tZW50PyBPciBhbSBJIGNvbXBsZXRlbHkgbG9zdCBh cyB0byB3aGF0IGlzIGdvaW5nIG9uPyA6KQ0KDQpUaGFua3MhDQoNCkJlc3QgcmVnYXJkcywNCk1h cnZpbg0KDQo+ICsNCj4gLS0NCj4gMi4xNi4yLndpbmRvd3MuMQ0KPg0KPg0KPg0KPg0KPg0KPg0K Pg0KPg0KPg0KPiANCj4NCj4NCg==