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.web11.997.1617155751646921585 for ; Tue, 30 Mar 2021 18:55:52 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=jg+rVuQn; spf=pass (domain: intel.com, ip: 192.55.52.151, mailfrom: jiaxin.wu@intel.com) IronPort-SDR: 3UsBb8t7kQJoV9btT3zMlaiOXu8iL7dhvu8Nh1aimQ47yzhZ91bI6ifd5z+IrLngn/jaHw6MNf 2erW/3UKwVzw== X-IronPort-AV: E=McAfee;i="6000,8403,9939"; a="171920836" X-IronPort-AV: E=Sophos;i="5.81,291,1610438400"; d="scan'208";a="171920836" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 30 Mar 2021 18:55:48 -0700 IronPort-SDR: F29/vN3PccqtWl8mJKBfT3pbuBbpBwS/UUnVIHQV5HLj6UBnPKBhQcr4wQpidgulg0xk7OG8LP Xv4GB0s96Rsg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.81,291,1610438400"; d="scan'208";a="516677923" Received: from orsmsx605.amr.corp.intel.com ([10.22.229.18]) by fmsmga001.fm.intel.com with ESMTP; 30 Mar 2021 18:55:48 -0700 Received: from orsmsx605.amr.corp.intel.com (10.22.229.18) 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.2106.2; Tue, 30 Mar 2021 18:55:48 -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.2106.2 via Frontend Transport; Tue, 30 Mar 2021 18:55:48 -0700 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (104.47.55.100) 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.2106.2; Tue, 30 Mar 2021 18:55:47 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=GAKaFajLNeUqVM/WX7p/LNFOklpMaJfL5hVOEYP+o58h1EUAEAs+XGS9mz3dxxNoy/9d4g5n9UlUGUPfE+ie8zvnyMsP2ozNVpPJIW3eHwjHiRAUzEx0fr5tJgMrIEGl+VRDkbrNxIIVRCr6Myy84dvCF0HcrPh6WLAwnHby8V7payzmqH43R7oWgjMIYAwlNvsOuPNpHu7tveenVz9to87jEWt6wyTPVqdu0QBnHVGqdnyCCuFZ0mbBmT2foukpg0cpHcr8J/rMH9jzqQ1awf4/0kJtaovUdMF+PMIrhAZ94717WjHv+FwMCb6NcWC0XHVXltA3HXs1mpaW3uztBw== 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=7HJ01e7PJZqTEDRML0YT3Eg6UpPTehjuH8hF4P2Owv4=; b=KAGpGcTev1xjaRzKjal4chv5gU0ilxcIkAP/klxv9NEERCqzRDR+Xart242ZP0THj9XI4fPYmYEwHjKcKQHe9q9THIyUCkLLuswmhfY4b7Z08ABUJgrPDBT06XbWcli9DFmB3cMJVewV+cpqxaZi1ase+g5Kgm4B1sJPR6BhL6Z+RN3X32JjAuHtIkVz7Hvc+/mSwMx1L10qXSokTHLcFgzko8dty8zz9/9AuFkZ5sN/NWfPE0iaJqXbEEndc3RLALOyOssTBti038QPuDsPdEUPhCbasRSnIP3mAHmeuNWJpjmjkHr+HzK8HE6DjNp3ubmWOT5ZayL+Hp0ZTv4Qow== 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=7HJ01e7PJZqTEDRML0YT3Eg6UpPTehjuH8hF4P2Owv4=; b=jg+rVuQnK5p9LM7/RdEDsvOH7EYGJA1fzjqNVgBGj+mUrM6C9KRpXvD6HsA9+KHHBJeYbxmrX78q4Z8sfIt7lDY6oxrksel0LF5XH7ZZFevF78KmMsWD42CEjRo9JQ/MrXEGCwQ0GSmUacgzFUAvR02zoBuKi8bARU0GxzEmSN4= Received: from DM5PR11MB1372.namprd11.prod.outlook.com (2603:10b6:3:11::14) by DM5PR11MB1705.namprd11.prod.outlook.com (2603:10b6:3:e::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3977.29; Wed, 31 Mar 2021 01:55:47 +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 01:55:46 +0000 From: "Wu, Jiaxin" To: "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: AQHiBvA0gelqVkTWiCdPC1VnuTWhcKqHkqkAgAAARbA= Date: Wed, 31 Mar 2021 01:55:46 +0000 Message-ID: References: <20210331012007.12824-1-Jiaxin.wu@intel.com> <006901d725d0$4b525070$e1f6f150$@byosoft.com.cn> In-Reply-To: <006901d725d0$4b525070$e1f6f150$@byosoft.com.cn> 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: edk2.groups.io; dkim=none (message not signed) header.d=none;edk2.groups.io; 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: 338baa4f-6531-4ea7-5f71-08d8f3e81a27 x-ms-traffictypediagnostic: DM5PR11MB1705: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:6430; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: UmVX39h8HG1CZSWFQD/F3ZsB98zVTgwXk1Jo5ll2xrWhOTfew6Xa1kKsRLoEtU93Ji2oav/H0oh2iMp9op92m3tzmnQSSsrqoj2Jrc5sbr0KIrqNGioTioFKN9VMuEVGKf7rCWt5Fxhgisf0+X7t7sGiOy1DdEZTmPvioJuq7m/3iYXIqi+ALKjP75QO1oBbMpVUGtE+o84Lnv8CEpogXYlgytY9n3c0Ev0ldQai2Hj9gQfU5wS5rsGlj5qIO2IPgSgzJDNMwQnxRH4Ocmkj189jmX9Oo9CNPRIhUtAOl4NQfPZ+n/hynVM6sDXGRLzlugX5WhebNN69UeV0BEMYDbwnR/R/Gu7l7ZDGcWIB618Rz3qfvKr+M8TSehqRxc8U5hQlqzja4MYm+3BkDAXVMhFPROQ9/Cc1VaUjKJwA9hYvgtcj42OrixgeUOpeZCdT0d1nrXA9KGgWwm9RThGuhQxK5JgufgX9kGjf98WSqqI4NpOqrxflQDdE0M6T+fn4ta53GfXbRckyeWN4F49LGW8a9ZOvfx+Kdk+Wx45m7P7YmkBvfwEfJySyfxxXFHKpl09pWzwEB/94abVx1LBSO3ANDKHIdTmiU1GnWWjyZ34bZ8K2bkGAlHqbbl/vyzP7UdaAXwTycK2rcDyLZRVxKU7/0l3gnv1KYd09lu7Hn7NIviy71d8Cej6zGQXfnCWxkhCig2wSBrHPcrsIXs76wZjg/2b4c/TDbjVjadzJCsHBZw7bkt4axBaspCTc/Y0N 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:(376002)(396003)(366004)(346002)(39860400002)(136003)(83380400001)(52536014)(107886003)(64756008)(4326008)(54906003)(19627235002)(110136005)(53546011)(2906002)(55016002)(316002)(66476007)(66446008)(66556008)(76116006)(66946007)(6506007)(38100700001)(26005)(8676002)(478600001)(966005)(186003)(33656002)(5660300002)(86362001)(71200400001)(7696005)(45080400002)(8936002)(9686003);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: =?gb2312?B?Z1NLOWlLbmZoYlE5eFZqYjg0VXVhUTA1Tk1DdWttME10SHBEc056Y21heVpm?= =?gb2312?B?aGUvbDJpdEFMOVF2V0xqTzNkRkNkTEJzTWJmc2hjY0h3SWx0aGVuRUoxbUlL?= =?gb2312?B?NmZhVnRhM1dmMDFFaFlUcjIxWUxGcEx0Rkl6cmo0OGdXZGVuMTA3dmlTSXcz?= =?gb2312?B?bDd6MVpIdGQ5WGdnVTkxdEJTODRyRVRyL2cvNmRyeERmZzFPV2FmTnZUS3Er?= =?gb2312?B?Uk54MFV2R05RalB5em5PTy9tWm93UmU5czhrSjhXU2haZnM1NE9JTGx2NGRx?= =?gb2312?B?Z1lGWTV4QTM3WUszY2tpbUpkK2FiY0tTODNTVWcxWE5CeXpRZEFteDRPakds?= =?gb2312?B?ODNjTnF1RVp0eGpnOUVvMDBoZmJsWTd1QUl3MGxjS0ZBTm4ySzE3eC9kcW56?= =?gb2312?B?Q3hZcngyZHdLdlVKbFZ6dFZVUkt2RHJ0SStnVTF1WnVSWFZlNnJtWklLaUdk?= =?gb2312?B?Y3ZQSnJKbC9ZREN1RkFmaUNXTGV0YjdBSXJUL3Nnd01TbjZzUFA4d1VWUE51?= =?gb2312?B?ZkpDUTRNUkFXZVRZSVUwSDkyWCtQMUs0NFZnY3pvcUhaQXN6N1FDNDVYUGRz?= =?gb2312?B?ZW5oNnlCdmJFRzRIUU00QkFKNml3SnhYZE1rVHFHdmV5aklHSXY5dzhYWG5r?= =?gb2312?B?d0ZnckpXQnArb2gwT1k5aHRGSGgzWXBsNWdjYXdKN2wrR0l6TEF1cFRtaTd2?= =?gb2312?B?MDgzR0l0SERUUnFvZGpjS054VjlKTnRxNTVqR3R6dTBZem5GZ1FMNURjUWRI?= =?gb2312?B?YlpyM1FBcEdXMnl6UzMvVlRCcTJsdnY4djFwMlhIdDNLalBRUm9LekUrVHht?= =?gb2312?B?cHJIS0h1TFA0TVJQRXg2VWZHOVZ0KzZiTzNnTXRMK1pja2paYThzUmRVbDU5?= =?gb2312?B?OThNT1V6NWp6L0ZLYlZOb1o1bml0dVJGdGxmMFh1cXppUkxsR3IwTjd1aFhC?= =?gb2312?B?ZTVid0d1S0tqVHB4UXdBSXZMaHVBa012ZFZqaDNta3ZYTjlVcjd1bDBaR3ow?= =?gb2312?B?UWVZblVINkV5N0kveUY3em5kSG1MbzN1RWFZaTZTVnhiMVdXcXNUOVdmck1X?= =?gb2312?B?Mzc5cVJIOG9WWU1EOG5MVkEweXFDY3lLb1lKZTlXYjJEN0ZlL2FZU05yRUtw?= =?gb2312?B?eU8xeDdVOSs3OUJGMWs0TFo2UlQyNmxjMHZKYUtTekx6SC82VEFzMWtEL0xT?= =?gb2312?B?UWV5OGYwVkRGSWFWQ1VkOTRVQTYycitEMjVXbVNMRTZrbHdJK085RTNGNGts?= =?gb2312?B?dnNwNUU0N3VwUG5razZPRUtsN0d5S1IyM2RjL2lxTWNWNFJuTTVYazY3OUtO?= =?gb2312?B?WUErYmRPV25Tam8ybUZocVE2bENtdnF5eWxqZkV2MExJTGVzSzBjZUtHOWR5?= =?gb2312?B?T3RCb0ExZmZ2TFhNNjdpVHZsU0RrZHlFY0w4VzZQV0tpeDhsaXZDY29rNXo3?= =?gb2312?B?OWRMMWtZNmRCSmFpbGlRNVVHMGE5czJ6Ukkxc2p1aTBIL245eUo4K1Vlempv?= =?gb2312?B?dUNRaWc1dk5pMTB6V0gxVmljM2hObmlSLzNBK1p1TWt5WFZYU20vUkJicWZ3?= =?gb2312?B?bEg5LzN4QSt4Q2dNVWNOU2lpOU5oU0xCQVBDMVF1YXByTFJBQ3FKRDFwOG1m?= =?gb2312?B?aVdCSU9hYXd6d3RQMy84Uis0THk0YzFURENrR2w0akdWZHhIZGtMNng1RU1V?= =?gb2312?B?QnVFZHhoUnMzOVp1YnlzWXg5cFh3aWpGTVduZFlqWFFjR05veDV0N1lzT0ZD?= =?gb2312?Q?W0Rl1nnjuUP2jxo4pXw+BvtJSYcdTmxwzbjzXdg?= 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: 338baa4f-6531-4ea7-5f71-08d8f3e81a27 X-MS-Exchange-CrossTenant-originalarrivaltime: 31 Mar 2021 01:55:46.8156 (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: dzlIEphGKo5TkhWP0/UTfmSV+U113gNWyCDzr3w7/vBBy4MS51DXAKs47kZPEmYvxvh5xy7iNaI8+C9M6f9k4Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR11MB1705 Return-Path: jiaxin.wu@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="gb2312" Content-Transfer-Encoding: base64 QWN0dWFsbHksIHRoZSBpbXBsZW1lbnRhdGlvbiB1bmRlciBpYTMyIHNob3VsZCBiZSBhbHNvIHdv cmthYmxlIGZvciBYNjQsIEkganVzdCBwdXQgaXQgdW5kZXIgaWEzMi4NCg0KTGltaW5nLCBkbyB5 b3UgaGF2ZSBzdWdnZXN0aW9uIHdoZXJlIGNhbiB3ZSBwbGFjZSB0aGUgY29kZT8NCg0KVGhhbmtz LA0KSmlheGluDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogZGV2ZWxA ZWRrMi5ncm91cHMuaW8gPGRldmVsQGVkazIuZ3JvdXBzLmlvPiBPbiBCZWhhbGYgT2YgZ2FvbGlt aW5nDQo+IFNlbnQ6IFdlZG5lc2RheSwgTWFyY2ggMzEsIDIwMjEgOTo1MSBBTQ0KPiBUbzogZGV2 ZWxAZWRrMi5ncm91cHMuaW87IFd1LCBKaWF4aW4gPGppYXhpbi53dUBpbnRlbC5jb20+DQo+IENj OiBLaW5uZXksIE1pY2hhZWwgRCA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+OyBMaXUsIFpo aWd1YW5nDQo+IDx6aGlndWFuZy5saXVAaW50ZWwuY29tPjsgWmhhbmcsIEhvbmdiaW4xIDxob25n YmluMS56aGFuZ0BpbnRlbC5jb20+DQo+IFN1YmplY3Q6ILvYuLQ6IFtlZGsyLWRldmVsXSBbUEFU Q0ggdjFdIE1kZVBrZzogU3VwcG9ydCBFeHRlbmRlZCBDb250cm9sDQo+IFJlZ2lzdGVyKFhDUikg UmVhZCBhbmQgV3JpdGUuDQo+IA0KPiBXaGVyZSBpcyBYNjQgaW1wbGVtZW50YXRpb24gZm9yIHRo aXMgbmV3IEFQST8NCj4gDQo+ID4gLS0tLS3Tyrz+1K28/i0tLS0tDQo+ID4gt6K8/sjLOiBkZXZl bEBlZGsyLmdyb3Vwcy5pbyA8ZGV2ZWxAZWRrMi5ncm91cHMuaW8+ILT6se0gV3UsIEppYXhpbg0K PiA+ILeiy83KsbzkOiAyMDIxxOoz1MIzMcjVIDk6MjANCj4gPiDK1bz+yMs6IGRldmVsQGVkazIu Z3JvdXBzLmlvDQo+ID4gs63LzTogTWljaGFlbCBEIEtpbm5leSA8bWljaGFlbC5kLmtpbm5leUBp bnRlbC5jb20+OyBMaW1pbmcgR2FvDQo+ID4gPGdhb2xpbWluZ0BieW9zb2Z0LmNvbS5jbj47IFpo aWd1YW5nIExpdSA8emhpZ3VhbmcubGl1QGludGVsLmNvbT47IFpoYW5nDQo+ID4gSG9uZ2JpbjEg PGhvbmdiaW4xLnpoYW5nQGludGVsLmNvbT4NCj4gPiDW98ziOiBbZWRrMi1kZXZlbF0gW1BBVENI IHYxXSBNZGVQa2c6IFN1cHBvcnQgRXh0ZW5kZWQgQ29udHJvbA0KPiA+IFJlZ2lzdGVyKFhDUikg UmVhZCBhbmQgV3JpdGUuDQo+ID4NCj4gPiBodHRwczovL2J1Z3ppbGxhLnRpYW5vY29yZS5vcmcv c2hvd19idWcuY2dpP2lkPTMyODQNCj4gPg0KPiA+IFRoaXMgcGF0Y2ggaXMgdG8gc3VwcG9ydCBF eHRlbmRlZCBDb250cm9sIFJlZ2lzdGVyKFhDUikgUmVhZA0KPiA+IGFuZCBXcml0ZS4NCj4gPg0K PiA+IENjOiBNaWNoYWVsIEQgS2lubmV5IDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT4NCj4g PiBDYzogTGltaW5nIEdhbyA8Z2FvbGltaW5nQGJ5b3NvZnQuY29tLmNuPg0KPiA+IENjOiBaaGln dWFuZyBMaXUgPHpoaWd1YW5nLmxpdUBpbnRlbC5jb20+DQo+ID4gU2lnbmVkLW9mZi1ieTogWmhh bmcgSG9uZ2JpbjEgPGhvbmdiaW4xLnpoYW5nQGludGVsLmNvbT4NCj4gPiBTaWduZWQtb2ZmLWJ5 OiBKaWF4aW4gV3UgPEppYXhpbi53dUBpbnRlbC5jb20+DQo+ID4gLS0tDQo+ID4gIE1kZVBrZy9J bmNsdWRlL0xpYnJhcnkvQmFzZUxpYi5oICAgICAgICAgIHwgNDYNCj4gPiArKysrKysrKysrKysr KysrKysrKysrKysrKysrKystDQo+ID4gIE1kZVBrZy9MaWJyYXJ5L0Jhc2VMaWIvQmFzZUxpYi5p bmYgICAgICAgIHwgIDQgKystDQo+ID4gIE1kZVBrZy9MaWJyYXJ5L0Jhc2VMaWIvSWEzMi9SZWFk WGNyLm5hc20gIHwgMzENCj4gPiArKysrKysrKysrKysrKysrKysrKysNCj4gPiAgTWRlUGtnL0xp YnJhcnkvQmFzZUxpYi9JYTMyL1dyaXRlWGNyLm5hc20gfCAzNA0KPiA+ICsrKysrKysrKysrKysr KysrKysrKysrDQo+ID4gIDQgZmlsZXMgY2hhbmdlZCwgMTEzIGluc2VydGlvbnMoKyksIDIgZGVs ZXRpb25zKC0pDQo+ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBNZGVQa2cvTGlicmFyeS9CYXNlTGli L0lhMzIvUmVhZFhjci5uYXNtDQo+ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBNZGVQa2cvTGlicmFy eS9CYXNlTGliL0lhMzIvV3JpdGVYY3IubmFzbQ0KPiA+DQo+ID4gZGlmZiAtLWdpdCBhL01kZVBr Zy9JbmNsdWRlL0xpYnJhcnkvQmFzZUxpYi5oDQo+ID4gYi9NZGVQa2cvSW5jbHVkZS9MaWJyYXJ5 L0Jhc2VMaWIuaA0KPiA+IGluZGV4IDExNzFhMGZmYjUuLmM1MTYzM2FkNzMgMTAwNjQ0DQo+ID4g LS0tIGEvTWRlUGtnL0luY2x1ZGUvTGlicmFyeS9CYXNlTGliLmgNCj4gPiArKysgYi9NZGVQa2cv SW5jbHVkZS9MaWJyYXJ5L0Jhc2VMaWIuaA0KPiA+IEBAIC0xLDEwICsxLDEwIEBADQo+ID4gIC8q KiBAZmlsZQ0KPiA+ICAgIFByb3ZpZGVzIHN0cmluZyBmdW5jdGlvbnMsIGxpbmtlZCBsaXN0IGZ1 bmN0aW9ucywgbWF0aCBmdW5jdGlvbnMsDQo+ID4gc3luY2hyb25pemF0aW9uDQo+ID4gICAgZnVu Y3Rpb25zLCBmaWxlIHBhdGggZnVuY3Rpb25zLCBhbmQgQ1BVIGFyY2hpdGVjdHVyZS1zcGVjaWZp Yw0KPiBmdW5jdGlvbnMuDQo+ID4NCj4gPiAtQ29weXJpZ2h0IChjKSAyMDA2IC0gMjAxOSwgSW50 ZWwgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuPEJSPg0KPiA+ICtDb3B5cmlnaHQg KGMpIDIwMDYgLSAyMDIxLCBJbnRlbCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC48 QlI+DQo+ID4gIFBvcnRpb25zIGNvcHlyaWdodCAoYykgMjAwOCAtIDIwMDksIEFwcGxlIEluYy4g QWxsIHJpZ2h0cyByZXNlcnZlZC48QlI+DQo+ID4gIENvcHlyaWdodCAoYykgTWljcm9zb2Z0IENv cnBvcmF0aW9uLjxCUj4NCj4gPiAgUG9ydGlvbnMgQ29weXJpZ2h0IChjKSAyMDIwLCBIZXdsZXR0 IFBhY2thcmQgRW50ZXJwcmlzZSBEZXZlbG9wbWVudCBMUC4NCj4gQWxsDQo+ID4gcmlnaHRzIHJl c2VydmVkLjxCUj4NCj4gPg0KPiA+ICBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xh dXNlLVBhdGVudA0KPiA+IEBAIC03NDkzLDcgKzc0OTMsNTEgQEAgUGF0Y2hJbnN0cnVjdGlvblg4 NiAoDQo+ID4gICAgT1VUIFg4Nl9BU1NFTUJMWV9QQVRDSF9MQUJFTCAqSW5zdHJ1Y3Rpb25FbmQs DQo+ID4gICAgSU4gIFVJTlQ2NCAgICAgICAgICAgICAgICAgICBQYXRjaFZhbHVlLA0KPiA+ICAg IElOICBVSU5UTiAgICAgICAgICAgICAgICAgICAgVmFsdWVTaXplDQo+ID4gICAgKTsNCj4gPg0K PiA+ICsvKioNCj4gPiArICBSZXR1cm5zIGEgNjQtYml0IEV4dGVuZGVkIENvbnRyb2wgUmVnaXN0 ZXIoWENSKS4NCj4gPiArDQo+ID4gKyAgUmVhZHMgYW5kIHJldHVybnMgdGhlIDY0LWJpdCBYQ1Ig c3BlY2lmaWVkIGJ5IEluZGV4LiBObyBwYXJhbWV0ZXINCj4gPiBjaGVja2luZyBpcw0KPiA+ICsg IHBlcmZvcm1lZCBvbiBJbmRleCwgYW5kIHNvbWUgSW5kZXggdmFsdWVzIG1heSBjYXVzZSBDUFUg ZXhjZXB0aW9ucy4NCj4gPiBUaGUNCj4gPiArICBjYWxsZXIgbXVzdCBlaXRoZXIgZ3VhcmFudGVl IHRoYXQgSW5kZXggaXMgdmFsaWQsIG9yIHRoZSBjYWxsZXIgbXVzdA0KPiBzZXQgdXANCj4gPiAr ICBleGNlcHRpb24gaGFuZGxlcnMgdG8gY2F0Y2ggdGhlIGV4Y2VwdGlvbnMuIFRoaXMgZnVuY3Rp b24gaXMgb25seQ0KPiBhdmFpbGFibGUNCj4gPiArICBvbiBJQS0zMiBhbmQgeDY0Lg0KPiA+ICsN Cj4gPiArICBAcGFyYW0gIEluZGV4IFRoZSAzMi1iaXQgWENSIGluZGV4IHRvIHJlYWQuDQo+ID4g Kw0KPiA+ICsgIEByZXR1cm4gVGhlIHZhbHVlIG9mIHRoZSBYQ1IgaWRlbnRpZmllZCBieSBJbmRl eC4NCj4gPiArDQo+ID4gKyoqLw0KPiA+ICtVSU5UNjQNCj4gPiArRUZJQVBJDQo+ID4gK0FzbVJl YWRYY3IgKA0KPiA+ICsgIElOIFVJTlQzMiAgSW5kZXgNCj4gPiArICApOw0KPiA+ICsNCj4gPiAr LyoqDQo+ID4gKyAgV3JpdGVzIGEgNjQtYml0IHZhbHVlIHRvIGEgRXh0ZW5kZWQgQ29udHJvbCBS ZWdpc3RlcihYQ1IpLCBhbmQgcmV0dXJucw0KPiB0aGUNCj4gPiArICB2YWx1ZS4NCj4gPiArDQo+ ID4gKyAgV3JpdGVzIHRoZSA2NC1iaXQgdmFsdWUgc3BlY2lmaWVkIGJ5IFZhbHVlIHRvIHRoZSBY Q1Igc3BlY2lmaWVkIGJ5DQo+IEluZGV4Lg0KPiA+IFRoZQ0KPiA+ICsgIDY0LWJpdCB2YWx1ZSB3 cml0dGVuIHRvIHRoZSBYQ1IgaXMgcmV0dXJuZWQuIE5vIHBhcmFtZXRlciBjaGVja2luZyBpcw0K PiA+ICsgIHBlcmZvcm1lZCBvbiBJbmRleCBvciBWYWx1ZSwgYW5kIHNvbWUgb2YgdGhlc2UgbWF5 IGNhdXNlIENQVQ0KPiA+IGV4Y2VwdGlvbnMuIFRoZQ0KPiA+ICsgIGNhbGxlciBtdXN0IGVpdGhl ciBndWFyYW50ZWUgdGhhdCBJbmRleCBhbmQgVmFsdWUgYXJlIHZhbGlkLCBvciB0aGUNCj4gY2Fs bGVyDQo+ID4gKyAgbXVzdCBlc3RhYmxpc2ggcHJvcGVyIGV4Y2VwdGlvbiBoYW5kbGVycy4gVGhp cyBmdW5jdGlvbiBpcyBvbmx5DQo+IGF2YWlsYWJsZQ0KPiA+IG9uDQo+ID4gKyAgSUEtMzIgYW5k IHg2NC4NCj4gPiArDQo+ID4gKyAgQHBhcmFtICBJbmRleCBUaGUgMzItYml0IFhDUiBpbmRleCB0 byB3cml0ZS4NCj4gPiArICBAcGFyYW0gIFZhbHVlIFRoZSA2NC1iaXQgdmFsdWUgdG8gd3JpdGUg dG8gdGhlIFhDUi4NCj4gPiArDQo+ID4gKyAgQHJldHVybiBWYWx1ZQ0KPiA+ICsNCj4gPiArKiov DQo+ID4gK1VJTlQ2NA0KPiA+ICtFRklBUEkNCj4gPiArQXNtV3JpdGVYY3IgKA0KPiA+ICsgIElO IFVJTlQzMiAgSW5kZXgsDQo+ID4gKyAgSU4gVUlOVDY0ICBWYWx1ZQ0KPiA+ICsgICk7DQo+ID4g Kw0KPiA+ICAjZW5kaWYgLy8gZGVmaW5lZCAoTURFX0NQVV9JQTMyKSB8fCBkZWZpbmVkIChNREVf Q1BVX1g2NCkNCj4gPiAgI2VuZGlmIC8vICFkZWZpbmVkIChfX0JBU0VfTElCX18pDQo+ID4gZGlm ZiAtLWdpdCBhL01kZVBrZy9MaWJyYXJ5L0Jhc2VMaWIvQmFzZUxpYi5pbmYNCj4gPiBiL01kZVBr Zy9MaWJyYXJ5L0Jhc2VMaWIvQmFzZUxpYi5pbmYNCj4gPiBpbmRleCAzYjg1YzU2YzNjLi5lNjIw MzFlYTExIDEwMDY0NA0KPiA+IC0tLSBhL01kZVBrZy9MaWJyYXJ5L0Jhc2VMaWIvQmFzZUxpYi5p bmYNCj4gPiArKysgYi9NZGVQa2cvTGlicmFyeS9CYXNlTGliL0Jhc2VMaWIuaW5mDQo+ID4gQEAg LTEsOSArMSw5IEBADQo+ID4gICMjIEBmaWxlDQo+ID4gICMgIEJhc2UgTGlicmFyeSBpbXBsZW1l bnRhdGlvbi4NCj4gPiAgIw0KPiA+IC0jICBDb3B5cmlnaHQgKGMpIDIwMDcgLSAyMDIwLCBJbnRl bCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC48QlI+DQo+ID4gKyMgIENvcHlyaWdo dCAoYykgMjAwNyAtIDIwMjEsIEludGVsIENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVk LjxCUj4NCj4gPiAgIyAgUG9ydGlvbnMgY29weXJpZ2h0IChjKSAyMDA4IC0gMjAwOSwgQXBwbGUg SW5jLiBBbGwgcmlnaHRzDQo+IHJlc2VydmVkLjxCUj4NCj4gPiAgIyAgUG9ydGlvbnMgY29weXJp Z2h0IChjKSAyMDExIC0gMjAxMywgQVJNIEx0ZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC48QlI+DQo+ ID4gICMgIENvcHlyaWdodCAoYykgMjAyMCwgSGV3bGV0dCBQYWNrYXJkIEVudGVycHJpc2UgRGV2 ZWxvcG1lbnQgTFAuIEFsbA0KPiA+IHJpZ2h0cyByZXNlcnZlZC48QlI+DQo+ID4gICMNCj4gPiAg IyAgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZS1QYXRlbnQNCj4gPiBAQCAt NjMsMTAgKzYzLDEyIEBADQo+ID4gICAgQmFzZUxpYkludGVybmFscy5oDQo+ID4NCj4gPiAgW1Nv dXJjZXMuSWEzMl0NCj4gPiAgICBJYTMyL1dyaXRlVHIubmFzbQ0KPiA+ICAgIElhMzIvTGZlbmNl Lm5hc20NCj4gPiArICBJYTMyL1JlYWRYY3IubmFzbQ0KPiA+ICsgIElhMzIvV3JpdGVYY3IubmFz bQ0KPiA+DQo+ID4gICAgSWEzMi9XYmludmQuYyB8IE1TRlQNCj4gPiAgICBJYTMyL1dyaXRlTW03 LmMgfCBNU0ZUDQo+ID4gICAgSWEzMi9Xcml0ZU1tNi5jIHwgTVNGVA0KPiA+ICAgIElhMzIvV3Jp dGVNbTUuYyB8IE1TRlQNCj4gPiBkaWZmIC0tZ2l0IGEvTWRlUGtnL0xpYnJhcnkvQmFzZUxpYi9J YTMyL1JlYWRYY3IubmFzbQ0KPiA+IGIvTWRlUGtnL0xpYnJhcnkvQmFzZUxpYi9JYTMyL1JlYWRY Y3IubmFzbQ0KPiA+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4gaW5kZXggMDAwMDAwMDAwMC4u NWQ1MGQ4YmEwMQ0KPiA+IC0tLSAvZGV2L251bGwNCj4gPiArKysgYi9NZGVQa2cvTGlicmFyeS9C YXNlTGliL0lhMzIvUmVhZFhjci5uYXNtDQo+ID4gQEAgLTAsMCArMSwzMSBAQA0KPiA+DQo+ICs7 LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0NCj4gLS0tLQ0KPiA+ICs7DQo+ID4gKzsgQ29weXJpZ2h0IChjKSAy MDIxLCBJbnRlbCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC48QlI+DQo+ID4gKzsg U1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZS1QYXRlbnQNCj4gPiArOw0KPiA+ ICs7IE1vZHVsZSBOYW1lOg0KPiA+ICs7DQo+ID4gKzsgICBSZWFkWGNyLkFzbQ0KPiA+ICs7DQo+ ID4gKzsgQWJzdHJhY3Q6DQo+ID4gKzsNCj4gPiArOyAgIEFzbVJlYWRYY3IgZnVuY3Rpb24NCj4g PiArOw0KPiA+ICs7IE5vdGVzOg0KPiA+ICs7DQo+ID4NCj4gKzstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0K PiAtLS0tDQo+ID4gKw0KPiA+ICsgICAgU0VDVElPTiAudGV4dA0KPiA+ICsNCj4gPg0KPiArOy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tDQo+IC0tLS0NCj4gPiArOyBVSU5UNjQNCj4gPiArOyBFRklBUEkNCj4g PiArOyBBc21SZWFkWGNyICgNCj4gPiArOyAgIElOIFVJTlQzMiAgSW5kZXgNCj4gPiArOyAgICk7 DQo+ID4NCj4gKzstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiAtLS0tDQo+ID4gK2dsb2JhbCBBU01fUEZY KEFzbVJlYWRYY3IpDQo+ID4gK0FTTV9QRlgoQXNtUmVhZFhjcik6DQo+ID4gKyAgICBtb3YgICAg IGVjeCwgW2VzcCArIDRdDQo+ID4gKyAgICB4Z2V0YnYNCj4gPiArICAgIHJldA0KPiA+IFwgTm8g bmV3bGluZSBhdCBlbmQgb2YgZmlsZQ0KPiA+IGRpZmYgLS1naXQgYS9NZGVQa2cvTGlicmFyeS9C YXNlTGliL0lhMzIvV3JpdGVYY3IubmFzbQ0KPiA+IGIvTWRlUGtnL0xpYnJhcnkvQmFzZUxpYi9J YTMyL1dyaXRlWGNyLm5hc20NCj4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+IGluZGV4IDAw MDAwMDAwMDAuLjAwOWQ0MTg2NGINCj4gPiAtLS0gL2Rldi9udWxsDQo+ID4gKysrIGIvTWRlUGtn L0xpYnJhcnkvQmFzZUxpYi9JYTMyL1dyaXRlWGNyLm5hc20NCj4gPiBAQCAtMCwwICsxLDM0IEBA DQo+ID4NCj4gKzstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiAtLS0tDQo+ID4gKzsNCj4gPiArOyBDb3B5 cmlnaHQgKGMpIDIwMjEsIEludGVsIENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLjxC Uj4NCj4gPiArOyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNlLVBhdGVudA0K PiA+ICs7DQo+ID4gKzsgTW9kdWxlIE5hbWU6DQo+ID4gKzsNCj4gPiArOyAgIFdyaXRlWGNyLm5h c20NCj4gPiArOw0KPiA+ICs7IEFic3RyYWN0Og0KPiA+ICs7DQo+ID4gKzsgICBBc21Xcml0ZVhj ciBmdW5jdGlvbg0KPiA+ICs7DQo+ID4gKzsgTm90ZXM6DQo+ID4gKzsNCj4gPg0KPiArOy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tDQo+IC0tLS0NCj4gPiArDQo+ID4gKyAgICBTRUNUSU9OIC50ZXh0DQo+ID4g Kw0KPiA+DQo+ICs7LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gLS0tLQ0KPiA+ICs7IFVJTlQ2NA0KPiA+ ICs7IEVGSUFQSQ0KPiA+ICs7IEFzbVdyaXRlWGNyICgNCj4gPiArOyAgIElOIFVJTlQzMiAgSW5k ZXgsDQo+ID4gKzsgICBJTiBVSU5UNjQgIFZhbHVlDQo+ID4gKzsgICApOw0KPiA+DQo+ICs7LS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0NCj4gLS0tLQ0KPiA+ICtnbG9iYWwgQVNNX1BGWChBc21Xcml0ZVhjcikN Cj4gPiArQVNNX1BGWChBc21Xcml0ZVhjcik6DQo+ID4gKyAgICBtb3YgICAgIGVkeCwgW2VzcCAr IDEyXQ0KPiA+ICsgICAgbW92ICAgICBlYXgsIFtlc3AgKyA4XQ0KPiA+ICsgICAgbW92ICAgICBl Y3gsIFtlc3AgKyA0XQ0KPiA+ICsgICAgeHNldGJ2DQo+ID4gKyAgICByZXQNCj4gPiBcIE5vIG5l d2xpbmUgYXQgZW5kIG9mIGZpbGUNCj4gPiAtLQ0KPiA+IDIuMTYuMi53aW5kb3dzLjENCj4gPg0K PiA+DQo+ID4NCj4gPg0KPiA+DQo+IA0KPiANCj4gDQo+IA0KPiANCj4gDQo+IA0KDQo=