From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by mx.groups.io with SMTP id smtpd.web11.2188.1617164516948614581 for ; Tue, 30 Mar 2021 21:21:57 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=PqxSFCA2; spf=pass (domain: intel.com, ip: 134.134.136.31, mailfrom: jiaxin.wu@intel.com) IronPort-SDR: i9O4+/eucXOOjvfo63aNggpuEqdG/D7qSxYJn7gTOd0pnLcVFKQdD3sf1ZMXPh641BwXC+K3vc SgpzIRa5IxUA== X-IronPort-AV: E=McAfee;i="6000,8403,9939"; a="253250659" X-IronPort-AV: E=Sophos;i="5.81,291,1610438400"; d="scan'208";a="253250659" Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 30 Mar 2021 21:21:54 -0700 IronPort-SDR: t6c29Yt/KjiazVgMWLcP51O0ZuiGkttoQBD8H3msuMMZBjUtY2kjCwSAcG63JUGbd7lPwkCK3e fTRjg2+idLQw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.81,291,1610438400"; d="scan'208";a="411954326" Received: from fmsmsx603.amr.corp.intel.com ([10.18.126.83]) by fmsmga008.fm.intel.com with ESMTP; 30 Mar 2021 21:21:54 -0700 Received: from fmsmsx612.amr.corp.intel.com (10.18.126.92) by fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2; Tue, 30 Mar 2021 21:21:53 -0700 Received: from fmsmsx612.amr.corp.intel.com (10.18.126.92) by fmsmsx612.amr.corp.intel.com (10.18.126.92) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2; Tue, 30 Mar 2021 21:21:53 -0700 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx612.amr.corp.intel.com (10.18.126.92) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2 via Frontend Transport; Tue, 30 Mar 2021 21:21:53 -0700 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (104.47.59.172) 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.2106.2; Tue, 30 Mar 2021 21:21:31 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HL8n+r9Q279Z43YDJDrK7YT5p8FWDhYUgSut+0M70NpHOocEgv7TevRhSJezSS9QH2TUimZh4ug2mjHBFhIOEmP5+EFXw20OGXYqn4xQvqclRFZF6IG88ElksMrRG7YHYxg9Q+OTZ26oKUQnr4WVEcXvnDL/IF72vifsp+siwbO1k26/s0xYRGphoGAwxdchIZmlIf8rYkxI/zErTebauu77u6lVheqYjTnpXnofiP/SnjdOusZ8C33CmrRJLTxGMzLdAG9TQv6IbZxvDPr2AJ7g6oxJhHN2aTYNar6RM98JdjVdv+FDnQdZjjIozNXNvLOxtkME2wGf/OSP7GetNA== 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=z4JrKSp7ONNeq7EYOFBU7/4aM9ZKzgtx4baEgSDOHNE=; b=Aw9qCpK1ANAfI9RFG+0seZ/BYDAe1s1ZA6DXN3+8UxNavIYP5fvgAMLPLkbCiah7yuvaeMfIatfRau+vu5B7CpWHQa2uJOJrGwJOwNedo6BfS5ECiKNGj380imMQVUUU6Oj+CMvUDi2ZUCu6wQglXK4XF1y3PMNyvtPaJUystdNMhJi4DYQawfBgl1cB/Z4DKD4iKQUfB9vnuXaWqHO0ognvezacKpA5wfbOn02z4JCrBSiTwwik6iaVIRRapTFxIc94/BRKjEWuGCm0Ir+vyahmCbv/l0HBphNI7Fj0TvuYWxJNIyNsK7YhJgDzhL7kJZDVKqsCF+lkrLd8RbjDNQ== 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=z4JrKSp7ONNeq7EYOFBU7/4aM9ZKzgtx4baEgSDOHNE=; b=PqxSFCA2dnkvUbrg8ad84saplVlDjwLDMBDEPDV+dy9dsU4XEkxI+rM4i9QZM5xMDAS8mNuYfKqwkomLwjy64jWzTzF0QZHwlD5xlvIBvhawkZgLjHrkQXpbHMq42D1Ex79mpkvSdwMbWwNZoGb9mY5n0kH8L0xt43zPjoy3RJ0= Received: from DM5PR11MB1372.namprd11.prod.outlook.com (2603:10b6:3:11::14) by DM6PR11MB4506.namprd11.prod.outlook.com (2603:10b6:5:205::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3977.33; Wed, 31 Mar 2021 04:21:30 +0000 Received: from DM5PR11MB1372.namprd11.prod.outlook.com ([fe80::7810:33d:859a:f05a]) by DM5PR11MB1372.namprd11.prod.outlook.com ([fe80::7810:33d:859a:f05a%4]) with mapi id 15.20.3977.033; Wed, 31 Mar 2021 04:21:30 +0000 From: "Wu, Jiaxin" To: "Yao, Jiewen" , "devel@edk2.groups.io" , "gaoliming@byosoft.com.cn" CC: "Kinney, Michael D" , "Liu, Zhiguang" , "Zhang, Hongbin1" Subject: Re: [edk2-devel] [PATCH v1] MdePkg: Support Extended Control Register(XCR) Read and Write. Thread-Topic: [edk2-devel] [PATCH v1] MdePkg: Support Extended Control Register(XCR) Read and Write. Thread-Index: AQHiBvA0gelqVkTWiCdPC1VnuTWhcKqHkqkAgAAARbCAAAPDgIAAAoowgAACNGA= Date: Wed, 31 Mar 2021 04:21:30 +0000 Message-ID: References: <20210331012007.12824-1-Jiaxin.wu@intel.com> <006901d725d0$4b525070$e1f6f150$@byosoft.com.cn> <007401d725d2$49640310$dc2c0930$@byosoft.com.cn> In-Reply-To: Accept-Language: zh-CN, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-version: 11.5.1.3 dlp-product: dlpe-windows dlp-reaction: no-action 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: [192.198.147.213] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 309732b0-f2f6-41f0-4fdb-08d8f3fc75af x-ms-traffictypediagnostic: DM6PR11MB4506: 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: J5dVWCo0knxis/TAxgsUAjnHJbeCrg0vCRI8isVU0F4FrbdQxMlFk++HHYgzrC6G/w4253KuZ8IkjWjg/9iC176Rb7YIXGWvpnsOLTFBpsYpQiMeI3oEN+1HR1glG7xHfMk8S8Iam3tmyoff84taoIqXhnb303f8EdJVigp2kVWwC7HdJQSFac7BJW2gLhTuS4SaF3vA/WntA0k2o8O5IdHvBxRkJwBmZD4XhQS1PFmT0yxme1hdYwUGi8p2sh7q8dHG5C/5ulA8jy5JAGc+rw9p+RXAJViJEapr3C66IfZ2ZEme/1bbdVtc3Mm9OjEICeY0SPdbpfQFlpAzoQz3Zk9+1c7vJUd41SZJ/Fb46qxMsEbXCWeYX+GZmRfSHqekvApRWslJCFD2i3I4dLBretjEE9esTWHa9eOl7PU3ua05RXeOUu1Og645m9Hpyh/gGTOQETxKC7gnhU2g3hxrBFImWCA/oJtXBxL39Ae8S5lIxgoTNTsLyzsLpKcby4ArFI3sIfhZu5aZPLLn7W6HAPHIZsSgbRCZDB8zLdv7vkrLjLrHfFJ1lJe5ZE9Yfsr+OZR8Ye7H9TBTvyOOFA59FytPPm/5XPEPGyf35kYysz42vjplvPC55CyKK9ZNOKh9x6zPIYrJihjEk7MPgjO/w8nl/E9rpzT+R9mc+lCCJaxAamaBKp6xxwaTLUM7Hh8J5bgRCmmlqUaAjkQQU3/Oqkn4PWFSH5RR1CW0JtwJUW89Q/A8+aNfpIRTJxE8+8J8 x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM5PR11MB1372.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(346002)(136003)(376002)(39860400002)(396003)(366004)(186003)(19627235002)(8676002)(53546011)(33656002)(2906002)(7696005)(55016002)(83380400001)(9686003)(6506007)(107886003)(8936002)(66556008)(66476007)(478600001)(66446008)(38100700001)(76116006)(52536014)(45080400002)(30864003)(26005)(4326008)(64756008)(966005)(71200400001)(5660300002)(86362001)(54906003)(110136005)(66946007)(316002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: =?utf-8?B?aWgwM1M0b1Uzd1dEellnS0o5TjVpeDZISVh4ODlYdTRIYklHYkl1dGlNcU4x?= =?utf-8?B?SFdMOHFES0J0clVQWVNBT1B0cU1yaGJjdk4xSSs0aVRvQlVwcWRHcDF2R2Iv?= =?utf-8?B?em5vNGNBZnJibjIxMjc4aDlPMll0YVpyYW94NVRVUmF1ZU5kemZaalQ3U1Yw?= =?utf-8?B?eExMZnhOWDlTZGpXbXNjVkx3aVhHYTR5QTUyZXlEUjB3WGo5S2R6cHlVVCtr?= =?utf-8?B?ZXI0SkpjUElma3FSOFlOSGZoUUlhVHFESy9QY0x5dTgxQ1lGMkJ0cXRoZndU?= =?utf-8?B?NG5WK0xOL1ZDRWhVdXVpSEoxc2tQVSs0OUFjUGFwYURYc3BrRWRCSHhyRDhx?= =?utf-8?B?SE1aNlc0USswOEUzeUpzM09RM3RsajM2elR3Z2dQZUJRNmZMazkzWlkyVXpS?= =?utf-8?B?dGVkOExqK2RZTy9aL3lCcDc5aXBGWXZZNGNEbzlLaWdiRVpjREVkZFR4QnpT?= =?utf-8?B?Y0RhZnljVGxUdmFOK3pUNmx6QStWTWlCcms3dklwSHN3eC9CZ2ZxTDhLN3By?= =?utf-8?B?bm1NRDk5WGsxTDhqQjY4YlFYS2VlOW9aclFHb0xmZkJZN1ovdGwvY0lyOGhy?= =?utf-8?B?N1IxeWdWdEJGSDdqNjMwem1lcXZvUm1tNTNra1FmYmFPREZQakpkMEtQZ2Rw?= =?utf-8?B?RjNtN3J3NW9LOW9sZHIxbVVZcm9VMmJJOFlnNzBmVVR5aXNMTllURFJIZmN4?= =?utf-8?B?MDFoWVFSUmxHQ09Td05NK1ZHNGZjeXdRd0F2ME5lUmtsUWJCMUFkbGZKQU0w?= =?utf-8?B?YTdQZlZzY3NRWHB5d0Qrd2xyQkJnaWc5VmU4bDZXRU42QXc4dmNlWU5sSzR5?= =?utf-8?B?TVMxWGVXaG5hWHFYRm11RVpyZFo1NWtJUXZDa3NkUXdmdERTUFU4cjlLa01Q?= =?utf-8?B?ck4wWnNJN2tFWWl2L1Z5amxFM1RNdmR5cEJWYUNXM3dzaUpMVEhOcTg2cDRK?= =?utf-8?B?dFZxSThNdlFLQ0dlU2ZtV0gyL2UvNlBrN3ZMam9ZRWVxSndHUGxJM0JqcXZ4?= =?utf-8?B?YkN4RTNzNDlZS2FjOFNxREtZY3BSMklWMHBGUUNqZDNpaU1OcndGL2I4SHNT?= =?utf-8?B?LzQ3bEh3R3FMdjQ4WmJaOEs2RUk4bUdqWlFhWVFhR2pYSy9qRWhTSXh4OHZD?= =?utf-8?B?dVBCTlVBdTJDR045RW8vRndqazYrTERQQ2pMN1o0MXdOcGhvQUxmRm1kbE1i?= =?utf-8?B?WjNXcDVmVForNmFmZmo3ampiRUxna21UbjhMVHArb2lCVTlWTG1WNktsWTds?= =?utf-8?B?Q2RPSGR1MDA5VFdqeWpNaExyeUFGU2d4ZW9lemt3TmRuLzBLMlJGTGNzdVZL?= =?utf-8?B?TW9pR3NCNVM3MWlVQnM0R0hLZElJTFFNbERxWGZhMktmd3dTejV0TXJVT1VO?= =?utf-8?B?T1Jyd1JhTUZWQ1lIY3EwS2JFN2E0U1llV0lNSUJ6Vmc5dzZDZWhvTkFRbnJy?= =?utf-8?B?djZFeU9kb0NBRGk2QnVDbDJqOTJ5SmRHOUFsNGhmQytaa2hISFJqUGljamJv?= =?utf-8?B?bE5pdDQ4Mm5VbS82ZHFsZDA1d2pmVlZ2NVJmK2NMZ1N5YzhRb1JNM0dPVE9p?= =?utf-8?B?OVBnUHhhdXFBN0phQWJ4MTE1TmFCaVJYS0NDYnVFK1hkbDhiaHVRRVNGSS9j?= =?utf-8?B?ZXhqSmFHNmdaR3lFeENGRk9rVDV6YnFVa0ZyZ2QwSGJQWmF1MXJtcTY2ZVEy?= =?utf-8?B?NkhIU1pDeWhUcWJYdHAwQTZJYnl1N3Q1dnA2czE0K0ZFYkNPY0xVcGZaWVdC?= =?utf-8?Q?F/dcbBAFSIPzjMX5JaTxQGYPvPVRN4EKtO4WTka?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM5PR11MB1372.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 309732b0-f2f6-41f0-4fdb-08d8f3fc75af X-MS-Exchange-CrossTenant-originalarrivaltime: 31 Mar 2021 04:21:30.2707 (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: oFPA+KB6aRWcQyCFj3xCEiPCp34jLP7rUjtB7RzHJCkso/pswcoJ5i/FnuOKfdSJX8EWsNRtfVogXVwxG7izmw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR11MB4506 Return-Path: jiaxin.wu@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 VGhhbmtzIHRoZSBjb21tZW50cywgSSB3aWxsIHJlZmluZSB0aGUgcGF0Y2ggYWNjb3JkaW5nIHRo ZSBmZWVkYmFjay4NCg0KDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTog WWFvLCBKaWV3ZW4gPGppZXdlbi55YW9AaW50ZWwuY29tPg0KPiBTZW50OiBXZWRuZXNkYXksIE1h cmNoIDMxLCAyMDIxIDEwOjIwIEFNDQo+IFRvOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbzsgZ2FvbGlt aW5nQGJ5b3NvZnQuY29tLmNuOyBXdSwgSmlheGluDQo+IDxqaWF4aW4ud3VAaW50ZWwuY29tPg0K PiBDYzogS2lubmV5LCBNaWNoYWVsIEQgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPjsgTGl1 LCBaaGlndWFuZw0KPiA8emhpZ3VhbmcubGl1QGludGVsLmNvbT47IFpoYW5nLCBIb25nYmluMSA8 aG9uZ2JpbjEuemhhbmdAaW50ZWwuY29tPg0KPiBTdWJqZWN0OiBSRTogW2VkazItZGV2ZWxdIFtQ QVRDSCB2MV0gTWRlUGtnOiBTdXBwb3J0IEV4dGVuZGVkIENvbnRyb2wNCj4gUmVnaXN0ZXIoWENS KSBSZWFkIGFuZCBXcml0ZS4NCj4gDQo+IEFncmVlIHdpdGggTGltaW5nLg0KPiANCj4gRm9yIElB MzIsIHlvdSBnZXQgcGFyYW1ldGVyIGZyb20gc3RhY2sgLQ0KPiAgICAgbW92ICAgICBlZHgsIFtl c3AgKyAxMl0NCj4gICAgIG1vdiAgICAgZWF4LCBbZXNwICsgOF0NCj4gICAgIG1vdiAgICAgZWN4 LCBbZXNwICsgNF0NCj4gDQo+IEZvciBYNjQsIHlvdSBnZXQgcGFyYW1ldGVyIGZyb20gR1AgcmVn aXN0ZXIgLSBSQ1gsIFJEWCwgUjgsIFI5IGZvciB0aGUgZmlyc3QgNA0KPiBwYXJhbWV0ZXIuIFRo ZXkgYXJlIG9uIHRoZSBzdGFjayBzaW5jZSB0aGUgNXRoIHBhcmFtZXRlci4NCj4gDQo+IFRoZSBj b2RlIG1heSBiZSBzaGFyYWJsZSBvbmx5IGlmIHRoZXkgZG8gbm90IGhhdmUgYW55IGlucHV0IHBh cmFtZXRlci4gQnV0DQo+IG5vdCBpbiB0aGlzIGNhc2UuDQo+IA0KPiBFdmVuIHRob3VnaCwgSSBz dGlsbCByZWNvbW1lbmQgd2UgaGF2ZSB0d28gY29weSAtIGxpa2UgQXNtUmVhZENzKCkgaW4gMg0K PiBSZWFkQ3MubmFzbSwgYmVjYXVzZSB3ZSBuZWVkIGRpZmZlcmVudCBjb250ZXh0IGRlZmluaXRp b24sIHN1Y2ggYXMgIkRFRkFVTFQNCj4gUkVMIg0KPiANCj4gVGhhbmsgeW91DQo+IFlhbyBKaWV3 ZW4NCj4gDQo+IA0KPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gRnJvbTogZGV2 ZWxAZWRrMi5ncm91cHMuaW8gPGRldmVsQGVkazIuZ3JvdXBzLmlvPiBPbiBCZWhhbGYgT2YNCj4g Z2FvbGltaW5nDQo+ID4gU2VudDogV2VkbmVzZGF5LCBNYXJjaCAzMSwgMjAyMSAxMDowNSBBTQ0K PiA+IFRvOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbzsgV3UsIEppYXhpbiA8amlheGluLnd1QGludGVs LmNvbT4NCj4gPiBDYzogS2lubmV5LCBNaWNoYWVsIEQgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwu Y29tPjsgTGl1LCBaaGlndWFuZw0KPiA+IDx6aGlndWFuZy5saXVAaW50ZWwuY29tPjsgWmhhbmcs IEhvbmdiaW4xIDxob25nYmluMS56aGFuZ0BpbnRlbC5jb20+DQo+ID4gU3ViamVjdDog5Zue5aSN OiBbZWRrMi1kZXZlbF0gW1BBVENIIHYxXSBNZGVQa2c6IFN1cHBvcnQgRXh0ZW5kZWQgQ29udHJv bA0KPiA+IFJlZ2lzdGVyKFhDUikgUmVhZCBhbmQgV3JpdGUuDQo+ID4NCj4gPiBKaWF4aW46DQo+ ID4gICAzMmJpdCBmdW5jdGlvbiBhbmQgNjRiaXQgZnVuY3Rpb24gaGF2ZSB0aGUgZGlmZmVyZW50 IGNhbGxpbmcgY29udmVudGlvbi4NCj4gPiBUaGVpciBhc3NlbWJseSBmdW5jdGlvbiBjYW4ndCBi ZSBzaGFyZWQuDQo+ID4NCj4gPiAgIFRoaXMgbmV3IEFQSSBpbnRlcmZhY2UgaXMgc2FtZSB0byBB c21Xcml0ZU1zcjY0KCkuIFlvdSBjYW4gcmVmZXINCj4gPiBBc21Xcml0ZU1zcjY0KCkgaW1wbGVt ZW50YXRpb24gaW4gQmFzZUxpYi4NCj4gPg0KPiA+IFRoYW5rcw0KPiA+IExpbWluZw0KPiA+ID4g LS0tLS3pgq7ku7bljp/ku7YtLS0tLQ0KPiA+ID4g5Y+R5Lu25Lq6OiBkZXZlbEBlZGsyLmdyb3Vw cy5pbyA8ZGV2ZWxAZWRrMi5ncm91cHMuaW8+IOS7o+ihqCBXdSwgSmlheGluDQo+ID4gPiDlj5Hp gIHml7bpl7Q6IDIwMjHlubQz5pyIMzHml6UgOTo1Ng0KPiA+ID4g5pS25Lu25Lq6OiBkZXZlbEBl ZGsyLmdyb3Vwcy5pbzsgZ2FvbGltaW5nQGJ5b3NvZnQuY29tLmNuDQo+ID4gPiDmioTpgIE6IEtp bm5leSwgTWljaGFlbCBEIDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT47IExpdSwgWmhpZ3Vh bmcNCj4gPiA+IDx6aGlndWFuZy5saXVAaW50ZWwuY29tPjsgWmhhbmcsIEhvbmdiaW4xIDxob25n YmluMS56aGFuZ0BpbnRlbC5jb20+DQo+ID4gPiDkuLvpopg6IFJlOiBbZWRrMi1kZXZlbF0gW1BB VENIIHYxXSBNZGVQa2c6IFN1cHBvcnQgRXh0ZW5kZWQgQ29udHJvbA0KPiA+ID4gUmVnaXN0ZXIo WENSKSBSZWFkIGFuZCBXcml0ZS4NCj4gPiA+DQo+ID4gPiBBY3R1YWxseSwgdGhlIGltcGxlbWVu dGF0aW9uIHVuZGVyIGlhMzIgc2hvdWxkIGJlIGFsc28gd29ya2FibGUgZm9yIFg2NCwgSQ0KPiA+ ID4ganVzdCBwdXQgaXQgdW5kZXIgaWEzMi4NCj4gPiA+DQo+ID4gPiBMaW1pbmcsIGRvIHlvdSBo YXZlIHN1Z2dlc3Rpb24gd2hlcmUgY2FuIHdlIHBsYWNlIHRoZSBjb2RlPw0KPiA+ID4NCj4gPiA+ IFRoYW5rcywNCj4gPiA+IEppYXhpbg0KPiA+ID4NCj4gPiA+ID4gLS0tLS1PcmlnaW5hbCBNZXNz YWdlLS0tLS0NCj4gPiA+ID4gRnJvbTogZGV2ZWxAZWRrMi5ncm91cHMuaW8gPGRldmVsQGVkazIu Z3JvdXBzLmlvPiBPbiBCZWhhbGYgT2YNCj4gPiA+IGdhb2xpbWluZw0KPiA+ID4gPiBTZW50OiBX ZWRuZXNkYXksIE1hcmNoIDMxLCAyMDIxIDk6NTEgQU0NCj4gPiA+ID4gVG86IGRldmVsQGVkazIu Z3JvdXBzLmlvOyBXdSwgSmlheGluIDxqaWF4aW4ud3VAaW50ZWwuY29tPg0KPiA+ID4gPiBDYzog S2lubmV5LCBNaWNoYWVsIEQgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPjsgTGl1LCBaaGln dWFuZw0KPiA+ID4gPiA8emhpZ3VhbmcubGl1QGludGVsLmNvbT47IFpoYW5nLCBIb25nYmluMSA8 aG9uZ2JpbjEuemhhbmdAaW50ZWwuY29tPg0KPiA+ID4gPiBTdWJqZWN0OiDlm57lpI06IFtlZGsy LWRldmVsXSBbUEFUQ0ggdjFdIE1kZVBrZzogU3VwcG9ydCBFeHRlbmRlZA0KPiBDb250cm9sDQo+ ID4gPiA+IFJlZ2lzdGVyKFhDUikgUmVhZCBhbmQgV3JpdGUuDQo+ID4gPiA+DQo+ID4gPiA+IFdo ZXJlIGlzIFg2NCBpbXBsZW1lbnRhdGlvbiBmb3IgdGhpcyBuZXcgQVBJPw0KPiA+ID4gPg0KPiA+ ID4gPiA+IC0tLS0t6YKu5Lu25Y6f5Lu2LS0tLS0NCj4gPiA+ID4gPiDlj5Hku7bkuro6IGRldmVs QGVkazIuZ3JvdXBzLmlvIDxkZXZlbEBlZGsyLmdyb3Vwcy5pbz4g5Luj6KGoIFd1LA0KPiA+ID4g SmlheGluDQo+ID4gPiA+ID4g5Y+R6YCB5pe26Ze0OiAyMDIx5bm0M+aciDMx5pelIDk6MjANCj4g PiA+ID4gPiDmlLbku7bkuro6IGRldmVsQGVkazIuZ3JvdXBzLmlvDQo+ID4gPiA+ID4g5oqE6YCB OiBNaWNoYWVsIEQgS2lubmV5IDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT47IExpbWluZyBH YW8NCj4gPiA+ID4gPiA8Z2FvbGltaW5nQGJ5b3NvZnQuY29tLmNuPjsgWmhpZ3VhbmcgTGl1IDx6 aGlndWFuZy5saXVAaW50ZWwuY29tPjsNCj4gPiA+IFpoYW5nDQo+ID4gPiA+ID4gSG9uZ2JpbjEg PGhvbmdiaW4xLnpoYW5nQGludGVsLmNvbT4NCj4gPiA+ID4gPiDkuLvpopg6IFtlZGsyLWRldmVs XSBbUEFUQ0ggdjFdIE1kZVBrZzogU3VwcG9ydCBFeHRlbmRlZCBDb250cm9sDQo+ID4gPiA+ID4g UmVnaXN0ZXIoWENSKSBSZWFkIGFuZCBXcml0ZS4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+IGh0dHBz Oi8vYnVnemlsbGEudGlhbm9jb3JlLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzI4NA0KPiA+ID4gPiA+ DQo+ID4gPiA+ID4gVGhpcyBwYXRjaCBpcyB0byBzdXBwb3J0IEV4dGVuZGVkIENvbnRyb2wgUmVn aXN0ZXIoWENSKSBSZWFkDQo+ID4gPiA+ID4gYW5kIFdyaXRlLg0KPiA+ID4gPiA+DQo+ID4gPiA+ ID4gQ2M6IE1pY2hhZWwgRCBLaW5uZXkgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPg0KPiA+ ID4gPiA+IENjOiBMaW1pbmcgR2FvIDxnYW9saW1pbmdAYnlvc29mdC5jb20uY24+DQo+ID4gPiA+ ID4gQ2M6IFpoaWd1YW5nIExpdSA8emhpZ3VhbmcubGl1QGludGVsLmNvbT4NCj4gPiA+ID4gPiBT aWduZWQtb2ZmLWJ5OiBaaGFuZyBIb25nYmluMSA8aG9uZ2JpbjEuemhhbmdAaW50ZWwuY29tPg0K PiA+ID4gPiA+IFNpZ25lZC1vZmYtYnk6IEppYXhpbiBXdSA8SmlheGluLnd1QGludGVsLmNvbT4N Cj4gPiA+ID4gPiAtLS0NCj4gPiA+ID4gPiAgTWRlUGtnL0luY2x1ZGUvTGlicmFyeS9CYXNlTGli LmggICAgICAgICAgfCA0Ng0KPiA+ID4gPiA+ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysr Ky0NCj4gPiA+ID4gPiAgTWRlUGtnL0xpYnJhcnkvQmFzZUxpYi9CYXNlTGliLmluZiAgICAgICAg fCAgNCArKy0NCj4gPiA+ID4gPiAgTWRlUGtnL0xpYnJhcnkvQmFzZUxpYi9JYTMyL1JlYWRYY3Iu bmFzbSAgfCAzMQ0KPiA+ID4gPiA+ICsrKysrKysrKysrKysrKysrKysrKw0KPiA+ID4gPiA+ICBN ZGVQa2cvTGlicmFyeS9CYXNlTGliL0lhMzIvV3JpdGVYY3IubmFzbSB8IDM0DQo+ID4gPiA+ID4g KysrKysrKysrKysrKysrKysrKysrKysNCj4gPiA+ID4gPiAgNCBmaWxlcyBjaGFuZ2VkLCAxMTMg aW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkNCj4gPiA+ID4gPiAgY3JlYXRlIG1vZGUgMTAw NjQ0IE1kZVBrZy9MaWJyYXJ5L0Jhc2VMaWIvSWEzMi9SZWFkWGNyLm5hc20NCj4gPiA+ID4gPiAg Y3JlYXRlIG1vZGUgMTAwNjQ0IE1kZVBrZy9MaWJyYXJ5L0Jhc2VMaWIvSWEzMi9Xcml0ZVhjci5u YXNtDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiBkaWZmIC0tZ2l0IGEvTWRlUGtnL0luY2x1ZGUvTGli cmFyeS9CYXNlTGliLmgNCj4gPiA+ID4gPiBiL01kZVBrZy9JbmNsdWRlL0xpYnJhcnkvQmFzZUxp Yi5oDQo+ID4gPiA+ID4gaW5kZXggMTE3MWEwZmZiNS4uYzUxNjMzYWQ3MyAxMDA2NDQNCj4gPiA+ ID4gPiAtLS0gYS9NZGVQa2cvSW5jbHVkZS9MaWJyYXJ5L0Jhc2VMaWIuaA0KPiA+ID4gPiA+ICsr KyBiL01kZVBrZy9JbmNsdWRlL0xpYnJhcnkvQmFzZUxpYi5oDQo+ID4gPiA+ID4gQEAgLTEsMTAg KzEsMTAgQEANCj4gPiA+ID4gPiAgLyoqIEBmaWxlDQo+ID4gPiA+ID4gICAgUHJvdmlkZXMgc3Ry aW5nIGZ1bmN0aW9ucywgbGlua2VkIGxpc3QgZnVuY3Rpb25zLCBtYXRoIGZ1bmN0aW9ucywNCj4g PiA+ID4gPiBzeW5jaHJvbml6YXRpb24NCj4gPiA+ID4gPiAgICBmdW5jdGlvbnMsIGZpbGUgcGF0 aCBmdW5jdGlvbnMsIGFuZCBDUFUgYXJjaGl0ZWN0dXJlLXNwZWNpZmljDQo+ID4gPiA+IGZ1bmN0 aW9ucy4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+IC1Db3B5cmlnaHQgKGMpIDIwMDYgLSAyMDE5LCBJ bnRlbCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cw0KPiA+IHJlc2VydmVkLjxCUj4NCj4gPiA+ID4g PiArQ29weXJpZ2h0IChjKSAyMDA2IC0gMjAyMSwgSW50ZWwgQ29ycG9yYXRpb24uIEFsbCByaWdo dHMNCj4gPiByZXNlcnZlZC48QlI+DQo+ID4gPiA+ID4gIFBvcnRpb25zIGNvcHlyaWdodCAoYykg MjAwOCAtIDIwMDksIEFwcGxlIEluYy4gQWxsIHJpZ2h0cw0KPiA+IHJlc2VydmVkLjxCUj4NCj4g PiA+ID4gPiAgQ29weXJpZ2h0IChjKSBNaWNyb3NvZnQgQ29ycG9yYXRpb24uPEJSPg0KPiA+ID4g PiA+ICBQb3J0aW9ucyBDb3B5cmlnaHQgKGMpIDIwMjAsIEhld2xldHQgUGFja2FyZCBFbnRlcnBy aXNlIERldmVsb3BtZW50DQo+ID4gPiBMUC4NCj4gPiA+ID4gQWxsDQo+ID4gPiA+ID4gcmlnaHRz IHJlc2VydmVkLjxCUj4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICBTUERYLUxpY2Vuc2UtSWRlbnRp ZmllcjogQlNELTItQ2xhdXNlLVBhdGVudA0KPiA+ID4gPiA+IEBAIC03NDkzLDcgKzc0OTMsNTEg QEAgUGF0Y2hJbnN0cnVjdGlvblg4NiAoDQo+ID4gPiA+ID4gICAgT1VUIFg4Nl9BU1NFTUJMWV9Q QVRDSF9MQUJFTCAqSW5zdHJ1Y3Rpb25FbmQsDQo+ID4gPiA+ID4gICAgSU4gIFVJTlQ2NCAgICAg ICAgICAgICAgICAgICBQYXRjaFZhbHVlLA0KPiA+ID4gPiA+ICAgIElOICBVSU5UTiAgICAgICAg ICAgICAgICAgICAgVmFsdWVTaXplDQo+ID4gPiA+ID4gICAgKTsNCj4gPiA+ID4gPg0KPiA+ID4g PiA+ICsvKioNCj4gPiA+ID4gPiArICBSZXR1cm5zIGEgNjQtYml0IEV4dGVuZGVkIENvbnRyb2wg UmVnaXN0ZXIoWENSKS4NCj4gPiA+ID4gPiArDQo+ID4gPiA+ID4gKyAgUmVhZHMgYW5kIHJldHVy bnMgdGhlIDY0LWJpdCBYQ1Igc3BlY2lmaWVkIGJ5IEluZGV4LiBObyBwYXJhbWV0ZXINCj4gPiA+ ID4gPiBjaGVja2luZyBpcw0KPiA+ID4gPiA+ICsgIHBlcmZvcm1lZCBvbiBJbmRleCwgYW5kIHNv bWUgSW5kZXggdmFsdWVzIG1heSBjYXVzZSBDUFUNCj4gPiA+IGV4Y2VwdGlvbnMuDQo+ID4gPiA+ ID4gVGhlDQo+ID4gPiA+ID4gKyAgY2FsbGVyIG11c3QgZWl0aGVyIGd1YXJhbnRlZSB0aGF0IElu ZGV4IGlzIHZhbGlkLCBvciB0aGUgY2FsbGVyDQo+ID4gbXVzdA0KPiA+ID4gPiBzZXQgdXANCj4g PiA+ID4gPiArICBleGNlcHRpb24gaGFuZGxlcnMgdG8gY2F0Y2ggdGhlIGV4Y2VwdGlvbnMuIFRo aXMgZnVuY3Rpb24gaXMgb25seQ0KPiA+ID4gPiBhdmFpbGFibGUNCj4gPiA+ID4gPiArICBvbiBJ QS0zMiBhbmQgeDY0Lg0KPiA+ID4gPiA+ICsNCj4gPiA+ID4gPiArICBAcGFyYW0gIEluZGV4IFRo ZSAzMi1iaXQgWENSIGluZGV4IHRvIHJlYWQuDQo+ID4gPiA+ID4gKw0KPiA+ID4gPiA+ICsgIEBy ZXR1cm4gVGhlIHZhbHVlIG9mIHRoZSBYQ1IgaWRlbnRpZmllZCBieSBJbmRleC4NCj4gPiA+ID4g PiArDQo+ID4gPiA+ID4gKyoqLw0KPiA+ID4gPiA+ICtVSU5UNjQNCj4gPiA+ID4gPiArRUZJQVBJ DQo+ID4gPiA+ID4gK0FzbVJlYWRYY3IgKA0KPiA+ID4gPiA+ICsgIElOIFVJTlQzMiAgSW5kZXgN Cj4gPiA+ID4gPiArICApOw0KPiA+ID4gPiA+ICsNCj4gPiA+ID4gPiArLyoqDQo+ID4gPiA+ID4g KyAgV3JpdGVzIGEgNjQtYml0IHZhbHVlIHRvIGEgRXh0ZW5kZWQgQ29udHJvbCBSZWdpc3RlcihY Q1IpLCBhbmQNCj4gPiByZXR1cm5zDQo+ID4gPiA+IHRoZQ0KPiA+ID4gPiA+ICsgIHZhbHVlLg0K PiA+ID4gPiA+ICsNCj4gPiA+ID4gPiArICBXcml0ZXMgdGhlIDY0LWJpdCB2YWx1ZSBzcGVjaWZp ZWQgYnkgVmFsdWUgdG8gdGhlIFhDUiBzcGVjaWZpZWQgYnkNCj4gPiA+ID4gSW5kZXguDQo+ID4g PiA+ID4gVGhlDQo+ID4gPiA+ID4gKyAgNjQtYml0IHZhbHVlIHdyaXR0ZW4gdG8gdGhlIFhDUiBp cyByZXR1cm5lZC4gTm8gcGFyYW1ldGVyIGNoZWNraW5nDQo+ID4gaXMNCj4gPiA+ID4gPiArICBw ZXJmb3JtZWQgb24gSW5kZXggb3IgVmFsdWUsIGFuZCBzb21lIG9mIHRoZXNlIG1heSBjYXVzZSBD UFUNCj4gPiA+ID4gPiBleGNlcHRpb25zLiBUaGUNCj4gPiA+ID4gPiArICBjYWxsZXIgbXVzdCBl aXRoZXIgZ3VhcmFudGVlIHRoYXQgSW5kZXggYW5kIFZhbHVlIGFyZSB2YWxpZCwgb3IgdGhlDQo+ ID4gPiA+IGNhbGxlcg0KPiA+ID4gPiA+ICsgIG11c3QgZXN0YWJsaXNoIHByb3BlciBleGNlcHRp b24gaGFuZGxlcnMuIFRoaXMgZnVuY3Rpb24gaXMgb25seQ0KPiA+ID4gPiBhdmFpbGFibGUNCj4g PiA+ID4gPiBvbg0KPiA+ID4gPiA+ICsgIElBLTMyIGFuZCB4NjQuDQo+ID4gPiA+ID4gKw0KPiA+ ID4gPiA+ICsgIEBwYXJhbSAgSW5kZXggVGhlIDMyLWJpdCBYQ1IgaW5kZXggdG8gd3JpdGUuDQo+ ID4gPiA+ID4gKyAgQHBhcmFtICBWYWx1ZSBUaGUgNjQtYml0IHZhbHVlIHRvIHdyaXRlIHRvIHRo ZSBYQ1IuDQo+ID4gPiA+ID4gKw0KPiA+ID4gPiA+ICsgIEByZXR1cm4gVmFsdWUNCj4gPiA+ID4g PiArDQo+ID4gPiA+ID4gKyoqLw0KPiA+ID4gPiA+ICtVSU5UNjQNCj4gPiA+ID4gPiArRUZJQVBJ DQo+ID4gPiA+ID4gK0FzbVdyaXRlWGNyICgNCj4gPiA+ID4gPiArICBJTiBVSU5UMzIgIEluZGV4 LA0KPiA+ID4gPiA+ICsgIElOIFVJTlQ2NCAgVmFsdWUNCj4gPiA+ID4gPiArICApOw0KPiA+ID4g PiA+ICsNCj4gPiA+ID4gPiAgI2VuZGlmIC8vIGRlZmluZWQgKE1ERV9DUFVfSUEzMikgfHwgZGVm aW5lZCAoTURFX0NQVV9YNjQpDQo+ID4gPiA+ID4gICNlbmRpZiAvLyAhZGVmaW5lZCAoX19CQVNF X0xJQl9fKQ0KPiA+ID4gPiA+IGRpZmYgLS1naXQgYS9NZGVQa2cvTGlicmFyeS9CYXNlTGliL0Jh c2VMaWIuaW5mDQo+ID4gPiA+ID4gYi9NZGVQa2cvTGlicmFyeS9CYXNlTGliL0Jhc2VMaWIuaW5m DQo+ID4gPiA+ID4gaW5kZXggM2I4NWM1NmMzYy4uZTYyMDMxZWExMSAxMDA2NDQNCj4gPiA+ID4g PiAtLS0gYS9NZGVQa2cvTGlicmFyeS9CYXNlTGliL0Jhc2VMaWIuaW5mDQo+ID4gPiA+ID4gKysr IGIvTWRlUGtnL0xpYnJhcnkvQmFzZUxpYi9CYXNlTGliLmluZg0KPiA+ID4gPiA+IEBAIC0xLDkg KzEsOSBAQA0KPiA+ID4gPiA+ICAjIyBAZmlsZQ0KPiA+ID4gPiA+ICAjICBCYXNlIExpYnJhcnkg aW1wbGVtZW50YXRpb24uDQo+ID4gPiA+ID4gICMNCj4gPiA+ID4gPiAtIyAgQ29weXJpZ2h0IChj KSAyMDA3IC0gMjAyMCwgSW50ZWwgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuDQo+ ID4gPEJSPg0KPiA+ID4gPiA+ICsjICBDb3B5cmlnaHQgKGMpIDIwMDcgLSAyMDIxLCBJbnRlbCBD b3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCj4gPiA8QlI+DQo+ID4gPiA+ID4gICMg IFBvcnRpb25zIGNvcHlyaWdodCAoYykgMjAwOCAtIDIwMDksIEFwcGxlIEluYy4gQWxsIHJpZ2h0 cw0KPiA+ID4gPiByZXNlcnZlZC48QlI+DQo+ID4gPiA+ID4gICMgIFBvcnRpb25zIGNvcHlyaWdo dCAoYykgMjAxMSAtIDIwMTMsIEFSTSBMdGQuIEFsbCByaWdodHMNCj4gPiByZXNlcnZlZC48QlI+ DQo+ID4gPiA+ID4gICMgIENvcHlyaWdodCAoYykgMjAyMCwgSGV3bGV0dCBQYWNrYXJkIEVudGVy cHJpc2UgRGV2ZWxvcG1lbnQgTFAuIEFsbA0KPiA+ID4gPiA+IHJpZ2h0cyByZXNlcnZlZC48QlI+ DQo+ID4gPiA+ID4gICMNCj4gPiA+ID4gPiAgIyAgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJT RC0yLUNsYXVzZS1QYXRlbnQNCj4gPiA+ID4gPiBAQCAtNjMsMTAgKzYzLDEyIEBADQo+ID4gPiA+ ID4gICAgQmFzZUxpYkludGVybmFscy5oDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiAgW1NvdXJjZXMu SWEzMl0NCj4gPiA+ID4gPiAgICBJYTMyL1dyaXRlVHIubmFzbQ0KPiA+ID4gPiA+ICAgIElhMzIv TGZlbmNlLm5hc20NCj4gPiA+ID4gPiArICBJYTMyL1JlYWRYY3IubmFzbQ0KPiA+ID4gPiA+ICsg IElhMzIvV3JpdGVYY3IubmFzbQ0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gICAgSWEzMi9XYmludmQu YyB8IE1TRlQNCj4gPiA+ID4gPiAgICBJYTMyL1dyaXRlTW03LmMgfCBNU0ZUDQo+ID4gPiA+ID4g ICAgSWEzMi9Xcml0ZU1tNi5jIHwgTVNGVA0KPiA+ID4gPiA+ICAgIElhMzIvV3JpdGVNbTUuYyB8 IE1TRlQNCj4gPiA+ID4gPiBkaWZmIC0tZ2l0IGEvTWRlUGtnL0xpYnJhcnkvQmFzZUxpYi9JYTMy L1JlYWRYY3IubmFzbQ0KPiA+ID4gPiA+IGIvTWRlUGtnL0xpYnJhcnkvQmFzZUxpYi9JYTMyL1Jl YWRYY3IubmFzbQ0KPiA+ID4gPiA+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4gPiA+ID4gaW5k ZXggMDAwMDAwMDAwMC4uNWQ1MGQ4YmEwMQ0KPiA+ID4gPiA+IC0tLSAvZGV2L251bGwNCj4gPiA+ ID4gPiArKysgYi9NZGVQa2cvTGlicmFyeS9CYXNlTGliL0lhMzIvUmVhZFhjci5uYXNtDQo+ID4g PiA+ID4gQEAgLTAsMCArMSwzMSBAQA0KPiA+ID4gPiA+DQo+ID4gPiA+DQo+ID4gKzstLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLQ0KPiA+ID4gPiAtLS0tDQo+ID4gPiA+ID4gKzsNCj4gPiA+ID4gPiArOyBDb3B5 cmlnaHQgKGMpIDIwMjEsIEludGVsIENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLjxC Uj4NCj4gPiA+ID4gPiArOyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNlLVBh dGVudA0KPiA+ID4gPiA+ICs7DQo+ID4gPiA+ID4gKzsgTW9kdWxlIE5hbWU6DQo+ID4gPiA+ID4g KzsNCj4gPiA+ID4gPiArOyAgIFJlYWRYY3IuQXNtDQo+ID4gPiA+ID4gKzsNCj4gPiA+ID4gPiAr OyBBYnN0cmFjdDoNCj4gPiA+ID4gPiArOw0KPiA+ID4gPiA+ICs7ICAgQXNtUmVhZFhjciBmdW5j dGlvbg0KPiA+ID4gPiA+ICs7DQo+ID4gPiA+ID4gKzsgTm90ZXM6DQo+ID4gPiA+ID4gKzsNCj4g PiA+ID4gPg0KPiA+ID4gPg0KPiA+ICs7LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gPiA+ID4gLS0tLQ0K PiA+ID4gPiA+ICsNCj4gPiA+ID4gPiArICAgIFNFQ1RJT04gLnRleHQNCj4gPiA+ID4gPiArDQo+ ID4gPiA+ID4NCj4gPiA+ID4NCj4gPiArOy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+ID4gPiA+IC0tLS0N Cj4gPiA+ID4gPiArOyBVSU5UNjQNCj4gPiA+ID4gPiArOyBFRklBUEkNCj4gPiA+ID4gPiArOyBB c21SZWFkWGNyICgNCj4gPiA+ID4gPiArOyAgIElOIFVJTlQzMiAgSW5kZXgNCj4gPiA+ID4gPiAr OyAgICk7DQo+ID4gPiA+ID4NCj4gPiA+ID4NCj4gPiArOy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+ID4g PiA+IC0tLS0NCj4gPiA+ID4gPiArZ2xvYmFsIEFTTV9QRlgoQXNtUmVhZFhjcikNCj4gPiA+ID4g PiArQVNNX1BGWChBc21SZWFkWGNyKToNCj4gPiA+ID4gPiArICAgIG1vdiAgICAgZWN4LCBbZXNw ICsgNF0NCj4gPiA+ID4gPiArICAgIHhnZXRidg0KPiA+ID4gPiA+ICsgICAgcmV0DQo+ID4gPiA+ ID4gXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlDQo+ID4gPiA+ID4gZGlmZiAtLWdpdCBhL01k ZVBrZy9MaWJyYXJ5L0Jhc2VMaWIvSWEzMi9Xcml0ZVhjci5uYXNtDQo+ID4gPiA+ID4gYi9NZGVQ a2cvTGlicmFyeS9CYXNlTGliL0lhMzIvV3JpdGVYY3IubmFzbQ0KPiA+ID4gPiA+IG5ldyBmaWxl IG1vZGUgMTAwNjQ0DQo+ID4gPiA+ID4gaW5kZXggMDAwMDAwMDAwMC4uMDA5ZDQxODY0Yg0KPiA+ ID4gPiA+IC0tLSAvZGV2L251bGwNCj4gPiA+ID4gPiArKysgYi9NZGVQa2cvTGlicmFyeS9CYXNl TGliL0lhMzIvV3JpdGVYY3IubmFzbQ0KPiA+ID4gPiA+IEBAIC0wLDAgKzEsMzQgQEANCj4gPiA+ ID4gPg0KPiA+ID4gPg0KPiA+ICs7LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gPiA+ID4gLS0tLQ0KPiA+ ID4gPiA+ICs7DQo+ID4gPiA+ID4gKzsgQ29weXJpZ2h0IChjKSAyMDIxLCBJbnRlbCBDb3Jwb3Jh dGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC48QlI+DQo+ID4gPiA+ID4gKzsgU1BEWC1MaWNlbnNl LUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZS1QYXRlbnQNCj4gPiA+ID4gPiArOw0KPiA+ID4gPiA+ ICs7IE1vZHVsZSBOYW1lOg0KPiA+ID4gPiA+ICs7DQo+ID4gPiA+ID4gKzsgICBXcml0ZVhjci5u YXNtDQo+ID4gPiA+ID4gKzsNCj4gPiA+ID4gPiArOyBBYnN0cmFjdDoNCj4gPiA+ID4gPiArOw0K PiA+ID4gPiA+ICs7ICAgQXNtV3JpdGVYY3IgZnVuY3Rpb24NCj4gPiA+ID4gPiArOw0KPiA+ID4g PiA+ICs7IE5vdGVzOg0KPiA+ID4gPiA+ICs7DQo+ID4gPiA+ID4NCj4gPiA+ID4NCj4gPiArOy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tDQo+ID4gPiA+IC0tLS0NCj4gPiA+ID4gPiArDQo+ID4gPiA+ID4gKyAg ICBTRUNUSU9OIC50ZXh0DQo+ID4gPiA+ID4gKw0KPiA+ID4gPiA+DQo+ID4gPiA+DQo+ID4gKzst LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLQ0KPiA+ID4gPiAtLS0tDQo+ID4gPiA+ID4gKzsgVUlOVDY0DQo+ID4g PiA+ID4gKzsgRUZJQVBJDQo+ID4gPiA+ID4gKzsgQXNtV3JpdGVYY3IgKA0KPiA+ID4gPiA+ICs7 ICAgSU4gVUlOVDMyICBJbmRleCwNCj4gPiA+ID4gPiArOyAgIElOIFVJTlQ2NCAgVmFsdWUNCj4g PiA+ID4gPiArOyAgICk7DQo+ID4gPiA+ID4NCj4gPiA+ID4NCj4gPiArOy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tDQo+ID4gPiA+IC0tLS0NCj4gPiA+ID4gPiArZ2xvYmFsIEFTTV9QRlgoQXNtV3JpdGVYY3Ip DQo+ID4gPiA+ID4gK0FTTV9QRlgoQXNtV3JpdGVYY3IpOg0KPiA+ID4gPiA+ICsgICAgbW92ICAg ICBlZHgsIFtlc3AgKyAxMl0NCj4gPiA+ID4gPiArICAgIG1vdiAgICAgZWF4LCBbZXNwICsgOF0N Cj4gPiA+ID4gPiArICAgIG1vdiAgICAgZWN4LCBbZXNwICsgNF0NCj4gPiA+ID4gPiArICAgIHhz ZXRidg0KPiA+ID4gPiA+ICsgICAgcmV0DQo+ID4gPiA+ID4gXCBObyBuZXdsaW5lIGF0IGVuZCBv ZiBmaWxlDQo+ID4gPiA+ID4gLS0NCj4gPiA+ID4gPiAyLjE2LjIud2luZG93cy4xDQo+ID4gPiA+ ID4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4NCj4gPiA+ID4gPg0KPiA+ID4gPg0K PiA+ID4gPg0KPiA+ID4gPg0KPiA+ID4gPg0KPiA+ID4gPg0KPiA+ID4gPg0KPiA+ID4gPg0KPiA+ ID4NCj4gPiA+DQo+ID4gPg0KPiA+ID4NCj4gPiA+DQo+ID4NCj4gPg0KPiA+DQo+ID4NCj4gPg0K PiA+IA0KPiA+DQoNCg==