From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by mx.groups.io with SMTP id smtpd.web11.23152.1688374926677753671 for ; Mon, 03 Jul 2023 02:02:06 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=NWfyezkT; spf=pass (domain: intel.com, ip: 134.134.136.65, mailfrom: gavin.xue@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1688374926; x=1719910926; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=8r1EdGFhEmueC32atNrVImrYpG4M5c8TKA52m6Ck0so=; b=NWfyezkTxJk9BQ1DYkUA3RDYW2arVj5YyKGud3payhtVfbLUjX6tJVub 9XSs90B0cjtl2gHwxjEEIAn7rKlGif85LYlg3cq/JbdHZ7ov9eLtSTYVS 3wpV9Ymxdn216VlhQwtUzFnz119IdXWj1TOXc2Vba0BEAZax9YGlmIoUB SV5sIlYZu/fnSlWhM2QEw0B5YlUfXXEF+hdC3vVA1ow/slkduXoIhBGOg BFE88w0K6XP6JpFaIsIC74EiEEzlDtD40HaTNKURzaAYAF7C756SvKlej K9QCahAuEdaNui5nXhgbW8cS4BL29gjOyZrXCobFymKx+64wjFAqxgC0G w==; X-IronPort-AV: E=McAfee;i="6600,9927,10759"; a="366314607" X-IronPort-AV: E=Sophos;i="6.01,177,1684825200"; d="scan'208";a="366314607" Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 03 Jul 2023 02:02:05 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10759"; a="965114389" X-IronPort-AV: E=Sophos;i="6.01,177,1684825200"; d="scan'208";a="965114389" Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by fmsmga006.fm.intel.com with ESMTP; 03 Jul 2023 02:02:05 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 3 Jul 2023 02:02:04 -0700 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27 via Frontend Transport; Mon, 3 Jul 2023 02:02:03 -0700 Received: from NAM02-SN1-obe.outbound.protection.outlook.com (104.47.57.40) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.27; Mon, 3 Jul 2023 02:02:03 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=S0VkwXuRKs2t98hgl09Pz64SsasrHojeAWGfDgE4kA8PwBfR2lLPjqReArD9EWTHV1jiFfcau3Su5cXMw+ssxBt6+dDeRhhoV6JTb0oeEKOHgbbYoRcVxoP/a+Avngx9FE+0TrOiCni4el0IJpYiaeOWmyaGfLcp25v8Yv6IpKpI02vs2BFFE8nbMJ4HaZF11onIRxrLimLE+Ic2s5HT4fA1nSKMVoYZxifvnvwRGL5Af1fBa8PhGAJWQ/EVZ5w3/v6u6HArrY2Z4EQ93uNM57y/5BpZCk485dx5bSz29eJIg6NEb1astglrzwGKIzLv9tTLzuU4v7SVZFUYav+UEQ== 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=8r1EdGFhEmueC32atNrVImrYpG4M5c8TKA52m6Ck0so=; b=f8iBlQtWlrD/u8oaBYrxvrS0QCvGMfdZ85M+6Vu6y0EeJs0yIeTv4+yb63N3bAgCgkW0XO2AJqWXab/xSZEmRV2Bnwsdi0BXP651TiYaRnuHtyv/kdlvQxF7mybIdbXScR77qtxNi+gffHpduxLg43FuRIf/Bjzk+xHSVJdWidRqTy1TzlE+XK+tdqoN3GvZ5hhxG0jRSbZ/YAH/gEonroFoYDuyieplJmAySTCs+gUWSiaBsdeXF3MOPBPxRaGvbVv16TTuZtca+UYlwNrHrpXot4SbCZUuRMbMr19P5EKLd1vSZ1P91RMys6dttzuFT9mOPN6fWENqkP7cc8e8Sw== 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 DM6PR11MB4740.namprd11.prod.outlook.com (2603:10b6:5:2ad::15) by SA1PR11MB6869.namprd11.prod.outlook.com (2603:10b6:806:29c::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.24; Mon, 3 Jul 2023 09:01:59 +0000 Received: from DM6PR11MB4740.namprd11.prod.outlook.com ([fe80::2a54:17c3:6bd3:4661]) by DM6PR11MB4740.namprd11.prod.outlook.com ([fe80::2a54:17c3:6bd3:4661%3]) with mapi id 15.20.6544.024; Mon, 3 Jul 2023 09:01:59 +0000 From: "Xue, Gavin" To: "Kinney, Michael D" , "devel@edk2.groups.io" , Pedro Falcato CC: "sunilvl@ventanamicro.com" , "Warkentin, Andrei" , "Wang, Yimin" , "Sheng, Alan" Subject: Re: [edk2-devel] [edk2 PATCH] MdePkg: Use same ProcessorBind symbol define for RISCV64 Thread-Topic: [edk2-devel] [edk2 PATCH] MdePkg: Use same ProcessorBind symbol define for RISCV64 Thread-Index: AQHZoD5etv2MVtbbXECuERRduvg5Tq+NeG2AgAAOnLCAB85SAIABRo4ggAiPuwCAA/mX4IAAgqyAgAQxYbA= Date: Mon, 3 Jul 2023 09:01:59 +0000 Message-ID: References: <20230616072257.1989-1-gavin.xue@intel.com> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: DM6PR11MB4740:EE_|SA1PR11MB6869:EE_ x-ms-office365-filtering-correlation-id: c8d9fe20-a98e-41e1-33b0-08db7ba428df x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: GSOtS9psLAY+ItfG66XkQr/bF2+jddeORn+A2I2SPuZ5R0Ak+UKBqr5iceV5nM2IJxHE0CrwlNZzlrdiDlOqpuyNYqzCHLMkvydy4QwzV5EdlkWrytWWN3aDtaKct873Im18cNDqUW78b8EPlUUulk8vyAqCcNiSTTOsT3xlMlcoJWeJmnaYov7wGJgsgY6z/arMA+sSRJszB2wtJWNbdOsPxIUeooGpDGos5MC4jVPzk6Ybt1L1djdSRhit7TT+uKh4oRfBZpUF0KMmmXqP0ynSDhjT1olD5SlTZgdo9yyJX5UCspnqDeghxbj3Odlpn3fzZZa+MSku+6cR/wZYBMiWjCRHozLdVhl2JMOeEiGRICIkNBZQrDf0Oe9/gvpDLgr2yAEibkWMmoMICXupcQC00pa9pHQqwciR9/7TrkmHwPb22/OaiOl2W9XEa3kaX6VAwjwkUpz8K+CYLIDs30nciY5iPchRx4QHWnnmyc3ivvp1bMgIzF86lEdK/VWCCHUFYEU+5c+KEv3aO2vlcuKKEBwfDG4RbfTfy5MLT2Yb4TFaY8gjq3HL1O9JjilEhfx2g6zM7/ZLbYOYnL5wNI3qp58wa1LIpEYehgtmNT6KcjBphEkPUSr75rqvjqcqAWNo0ou8GOojo3unfmrwiBp6gjb1uf41aS4Cl5wGV7g= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM6PR11MB4740.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(39860400002)(396003)(366004)(346002)(136003)(451199021)(66899021)(38100700002)(71200400001)(33656002)(2906002)(7696005)(19627235002)(8936002)(38070700005)(110136005)(54906003)(8676002)(55016003)(41300700001)(52536014)(5660300002)(478600001)(76116006)(9686003)(66946007)(186003)(64756008)(66556008)(86362001)(107886003)(53546011)(26005)(6506007)(66476007)(66446008)(4326008)(316002)(122000001)(966005)(83380400001)(82960400001)(21314003);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?MlpERmJCZ3VHUTRSekN1TktIZlR1VGdtZ1NPd1Vnakx3SnBtQlVaV2RIaEZs?= =?utf-8?B?YUNGVVZYZ0FwNUJmV240ZE1BUnlxd1g5Nnp6YmV3YzQ5SmkwZXluYlJxck81?= =?utf-8?B?TkkxT3p3MDVZYkJicWdwUWFCWHRnaUdQbjh0RE9kc0pyY0FGcE1EMGp2aGg2?= =?utf-8?B?d2hvaXFoWXYzZ3JwalpLUUdNNEFPOWhDb3B0QVRDOHVnRnVEOUZVVUxKYWlE?= =?utf-8?B?TDQ2U2dheHg3MlFrUE1jd2pNZGhIWGVYNEJLODgya0JJa2xGN0pwY0pEeHZS?= =?utf-8?B?bnl1MExra2ZRQjBpR1JaZ2FSTU5iZjZHVm5SWlIrTU1lRzRtTGNkaTRSc3Bs?= =?utf-8?B?eFlOS2EyWlc0eGNLRXhyVXpTV1B5U0ZsWCtUanZ5dmtQUjliZ0JBdGpaSjdF?= =?utf-8?B?WlVHUUo4VTZsbjdrS3FrTTltUlppWGRTU0ErN05vVEt6NEhBVkxiRlJad2Y0?= =?utf-8?B?SkFiNmZaUlROdy93am1HZURlMVY4M3l0N216R2pEVWs0cWsvbmZsazBzaHF1?= =?utf-8?B?WnNzVnNFT1oxMGdhRU84Z0xPUktsWWhuM3EzdWN2dXljZ29RSWpRMG5Vc2NR?= =?utf-8?B?WTl5eWZxSVBMbGlsV0tDVUZqT1dDYzltekRMZkZjK3Zud3VNaHhKcWJ3aDc4?= =?utf-8?B?SXJ5OEV4cnlESkZqaGZyajYzWS9QSVpoRXZhWU1GNzM3b2l3UktjbFdsblgy?= =?utf-8?B?bVU3a3ZhKytGc21oenNTb1ZMUWhBdmh3N1dYOTExQ0I2UzFIU1BrcmI5NG5U?= =?utf-8?B?cWFaWitBazJYV0h0ZWpRRzR4VXhFV3l2YSthMTk5TlNhRzFGbzRyRllYTk9m?= =?utf-8?B?ZjJUUXF2ZmMwSlFQcVRnQzcwT3ZHYTM1SS9jV3pJd21EVlRFRGtra3BYSzFN?= =?utf-8?B?cGVsOWVCK05HMUhzekI2elZtQ0dMV24vWlIwYVR6L0c4YVZqZDh3UkswVjJo?= =?utf-8?B?N1VNUE05UmN4a3M0Q3BaN1p6eng3amJhWWo2SnI0Q0YwWkZHQVc1ZGFlamhC?= =?utf-8?B?STRDSG5DbWNXeElHbW4wT2tEQjczRkNTM2pOZUhZTTJveXpDWXh3eVVBZWhy?= =?utf-8?B?UFJiVlZrQWo4dDB4R2J0aUVNeHR6bjJNdmgwT0hGRW1qQmRja2xaMHlpT1R6?= =?utf-8?B?WEpYTm1jeERubmJJSmZjL3Z1RW1uT01FTVhvZ28yUTkwbEtJaWdxS3h3Skph?= =?utf-8?B?MUtaWGk2dVhqektjYzNsWUdFTHJ0Yk9ici9JYldsanhRUys2VTQ4bVR0YXJI?= =?utf-8?B?QjI4SGN0SHl0aDZBcitKTVVOYlFwQWJSUllKSndjb0NESkVYcENoelJWWTJL?= =?utf-8?B?MGd2c01iUEM2SThCVjZVaDdUeDRvQm9zR1pTV0gyY2ZpVUNyL1hySnNLTEg3?= =?utf-8?B?SUNzY0R2aW5ZT2FwSUpQQlFBNGFYS21YMG5VNWJoS1NsS1RzRmhnUzgvZGNU?= =?utf-8?B?ZU81eEdjQnE1Szh0T0YrNDVuczFSV1ZzanY4OUNzbVdSeURqVXNLRi9TK3py?= =?utf-8?B?RURsRExLZW12T0E2ZjRZa09WeVphUVFtZVY0bnMwTW1yYkFOeW5XMU94b1A0?= =?utf-8?B?RHRRa1VUUUpPZTE1RndmdHh0ZUhtbFBLQm9vcUpmRGVyOHdHTnJLUEpSa25u?= =?utf-8?B?MmttR3pGbzZZV2xCME1YNk9lbDNtUXgxSFRaQWQyMTJEcXI4SHBIVHBTQUJ4?= =?utf-8?B?aFdnOXc5aC9QK3hqN2hMbnJkbk9RSEtBazZqc1Q0c0ZuTjU3QWxJNno4Q2FJ?= =?utf-8?B?aDNUNy9CTmRjQ01MUFozK0NBTXNvWExqTEc0WmN2b2N0QjFPWVVCeUxHdUg3?= =?utf-8?B?a0pxclBTUFc3amU1ODcydFVNeUduaWk2NkthRTdCWlpEczJaeGNCNWl4YWx6?= =?utf-8?B?VnI1a2czMlFUSGJNKzVxdG9lUkd5alFWSmplcEYxMTZhT2ZXR25uNFpTeExQ?= =?utf-8?B?bGpFNEVvckpBTVZGVlU4N0lvT1BYc29uRG5QdjFFSWUySUFXK2lZREI3UWsw?= =?utf-8?B?bVp5dUtuTGkxME8zOW1pSGxqK2tnMzVzSjdTNE9QMXltUlN0eHREbXh2bEdG?= =?utf-8?B?L0N5ZTdVZzgyZHlFejhIK3N2T0xEd2l0N0JDZUxPVkdWM2MyeEJCeHRBNmIv?= =?utf-8?Q?Pfk0=3D?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM6PR11MB4740.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: c8d9fe20-a98e-41e1-33b0-08db7ba428df X-MS-Exchange-CrossTenant-originalarrivaltime: 03 Jul 2023 09:01:59.3062 (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: YY9AK+lMLoHo9jIrOIBP12SR4/C/f4wC8B8NM2xfVvlXR1F284n1BbzHch3+lR07umVBFAuxM7ztx4IUGK0YQQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR11MB6869 Return-Path: gavin.xue@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 SWYgd2UgYWdyZWUgdG8gdXNlIHRoZSBzYW1lIGluY2x1ZGUgZ3VhcmQgZGVmaW5lIG5hbWUgZm9y IGFsbCBDUFUgYXJjaGl0ZWN0dXJlLA0KSSByZS1zZW50IG91dCB0aGUgdjIgbmV3IHBhdGNoLiBQ bGVhc2UgaGVscCB0byByZXZpZXcgaXQuIFRoYW5rcy4NCg0KQmVzdCByZWdhcmRzLA0KR2F2aW4N Cg0KLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCkZyb206IEtpbm5leSwgTWljaGFlbCBEIDxt aWNoYWVsLmQua2lubmV5QGludGVsLmNvbT4gDQpTZW50OiBTYXR1cmRheSwgSnVseSAxLCAyMDIz IDEyOjU5IEFNDQpUbzogWHVlLCBHYXZpbiA8Z2F2aW4ueHVlQGludGVsLmNvbT47IGRldmVsQGVk azIuZ3JvdXBzLmlvOyBQZWRybyBGYWxjYXRvIDxwZWRyby5mYWxjYXRvQGdtYWlsLmNvbT4NCkNj OiBzdW5pbHZsQHZlbnRhbmFtaWNyby5jb207IFdhcmtlbnRpbiwgQW5kcmVpIDxhbmRyZWkud2Fy a2VudGluQGludGVsLmNvbT47IFdhbmcsIFlpbWluIDx5aW1pbi53YW5nQGludGVsLmNvbT47IFNo ZW5nLCBBbGFuIDxhbGFuLnNoZW5nQGludGVsLmNvbT47IEtpbm5leSwgTWljaGFlbCBEIDxtaWNo YWVsLmQua2lubmV5QGludGVsLmNvbT4NClN1YmplY3Q6IFJFOiBbZWRrMi1kZXZlbF0gW2VkazIg UEFUQ0hdIE1kZVBrZzogVXNlIHNhbWUgUHJvY2Vzc29yQmluZCBzeW1ib2wgZGVmaW5lIGZvciBS SVNDVjY0DQoNClVzaW5nIHRoZSBzYW1lIGluY2x1ZGUgZ3VhcmQgZGVmaW5lIG5hbWUgaXMgcHJl ZmVycmVkLg0KDQpXaHkgd2FzIGFueXRoaW5nIG90aGVyIHRoYW4gdGhhdCBjb25zaWRlcmVkPw0K DQpNaWtlDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogWHVlLCBHYXZp biA8Z2F2aW4ueHVlQGludGVsLmNvbT4NCj4gU2VudDogRnJpZGF5LCBKdW5lIDMwLCAyMDIzIDI6 MjkgQU0NCj4gVG86IEtpbm5leSwgTWljaGFlbCBEIDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNv bT47DQo+IGRldmVsQGVkazIuZ3JvdXBzLmlvOyBQZWRybyBGYWxjYXRvIDxwZWRyby5mYWxjYXRv QGdtYWlsLmNvbT4NCj4gQ2M6IHN1bmlsdmxAdmVudGFuYW1pY3JvLmNvbTsgV2Fya2VudGluLCBB bmRyZWkNCj4gPGFuZHJlaS53YXJrZW50aW5AaW50ZWwuY29tPjsgV2FuZywgWWltaW4gPHlpbWlu LndhbmdAaW50ZWwuY29tPjsNCj4gU2hlbmcsIEFsYW4gPGFsYW4uc2hlbmdAaW50ZWwuY29tPg0K PiBTdWJqZWN0OiBSRTogW2VkazItZGV2ZWxdIFtlZGsyIFBBVENIXSBNZGVQa2c6IFVzZSBzYW1l IFByb2Nlc3NvckJpbmQNCj4gc3ltYm9sIGRlZmluZSBmb3IgUklTQ1Y2NA0KPiANCj4gSGkgTWlr ZSwNCj4gDQo+IFRoYW5rcyBmb3IgeW91ciBjb21tZW50cy4NCj4gSSBoYXZlbid0IHNlZW4gc3Bl Y2lmaWMgZXJyb3IgbWVzc2FnZSB3aGVuIHVzaW5nIHRoZSBzYW1lIGluY2x1ZGUgZ3VhcmQNCj4g bmFtZToNCj4gX19QUk9DRVNTT1JfQklORF9IX18gLg0KPiANCj4gRm9yIHNob3J0LXRlcm0sIEkg dGhpbmsgUklTQy1WIGFsc28gY291bGQgdXNlIHNhbWUgZ3VhcmQgbmFtZSB3aXRoDQo+IEFBcmNo NjQvQXJtL0ViYy9JYTMyL1g2NA0KPiBDUFUgYXJjaGl0ZWN0dXJlLCB3aGljaCBhbHNvIGtlZXAg Y29kZSBhbGlnbm1lbnQuDQo+IEhvdyBhYm91dCB5b3VyIGNvbW1lbnQ/IFRoYW5rcy4NCj4gDQo+ IEJlc3QgcmVnYXJkcywNCj4gR2F2aW4NCj4gDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0t DQo+IEZyb206IEtpbm5leSwgTWljaGFlbCBEIDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT4N Cj4gU2VudDogV2VkbmVzZGF5LCBKdW5lIDI4LCAyMDIzIDQ6MjkgQU0NCj4gVG86IGRldmVsQGVk azIuZ3JvdXBzLmlvOyBYdWUsIEdhdmluIDxnYXZpbi54dWVAaW50ZWwuY29tPjsgUGVkcm8NCj4g RmFsY2F0byA8cGVkcm8uZmFsY2F0b0BnbWFpbC5jb20+DQo+IENjOiBzdW5pbHZsQHZlbnRhbmFt aWNyby5jb207IFdhcmtlbnRpbiwgQW5kcmVpDQo+IDxhbmRyZWkud2Fya2VudGluQGludGVsLmNv bT47IFdhbmcsIFlpbWluIDx5aW1pbi53YW5nQGludGVsLmNvbT47DQo+IFNoZW5nLCBBbGFuIDxh bGFuLnNoZW5nQGludGVsLmNvbT47IEtpbm5leSwgTWljaGFlbCBEDQo+IDxtaWNoYWVsLmQua2lu bmV5QGludGVsLmNvbT4NCj4gU3ViamVjdDogUkU6IFtlZGsyLWRldmVsXSBbZWRrMiBQQVRDSF0g TWRlUGtnOiBVc2Ugc2FtZSBQcm9jZXNzb3JCaW5kDQo+IHN5bWJvbCBkZWZpbmUgZm9yIFJJU0NW NjQNCj4gDQo+IEl0IGlzIGJldHRlciBpZiB3ZSBjYW4gdXNlIHRoZSBzYW1lIGluY2x1ZGUgZ3Vh cmQgbmFtZXMsIGJ1dCBpcyBub3QNCj4gc3RyaWN0bHkgcmVxdWlyZWQgZm9yIGJ1aWxkcyB0byB3 b3JrLg0KPiANCj4gV2hhdCBpcyB0aGUgc3BlY2lmaWMgZXJyb3IgbWVzc2FnZSBzZWVuIHdoZW4g dXNpbmcgdGhlIHNhbWUgaW5jbHVkZQ0KPiBndWFyZA0KPiBuYW1lcyBhcyBvdGhlciBDUFUgdHlw ZXM/DQo+IA0KPiBJbmNsdWRlIGd1YXJkcyBoYXZlIDIgZWxlbWVudHMgd29yayBkaXNjdXNzaW5n Og0KPiAqIFVzZSBvZiBkZWZpbmUgbmFtZXMgdGhhdCBzdGFydCB3aXRoICdfJyBvciAnX18nIGFy ZSByZXNlcnZlZCBlaXRoZXINCj4gYnkgdGhlDQo+ICAgQU5TSSBDIHNwZWMgb3IgZm9yIGNvbXBp bGVycy4gIFRoZSBoaXN0b3JpY2FsIHVzZSBieSBFREsgSUkgY29kZSB0bw0KPiBzdGFydA0KPiAg IGluY2x1ZGUgZ3VhcmRzIHdpdGggJ18nIGNvdWxkIGNhdXNlIHBvdGVudGlhbCBjb25mbGljdHMg d2l0aCBzb21lDQo+IGNvbXBpbGVycw0KPiAgIGFuZCBtYXkgbmVlZCB0byBiZSBhZGRyZXNzZWQg ZXZlcnl3aGVyZS4NCj4gDQo+ICogTW9kZXJuIGNvbXBpbGVycyBzdXBwb3J0ICNwcmFnbWEgb25j ZSB0aGF0IHByb3ZpZGVzIHRoZSBzYW1lIGZlYXR1cmUNCj4gYW5kDQo+ICAgbWF5IGFjdHVhbGx5 IGhhdmUgc29tZSBidWlsZCBwZXJmb3JtYW5jZSBiZW5lZml0cy4gIFRoaXMgaXMgYSBiZXR0ZXIN Cj4gbG9uZyB0ZXJtDQo+ICAgZGlyZWN0aW9uIHRvIHJlbW92ZSB0aGUgbWlzdXNlIG9mICdfJyBh bmQgJ19fJyBhbmQgYXZvaWQgcG90ZW50aWFsDQo+IGNvbGxpc2lvbnMNCj4gICB3aXRoIEFOU0kg QyBvciBjb21waWxlcnMuICBJdCBhbHNvIHJlZHVjZXMgdGhlIG51bWJlciBvZiBkZWZpbmVzIGlu DQo+IGFuIEVESyBJSQ0KPiAgIGJ1aWxkLg0KPiANCj4gCWh0dHBzOi8vZW4ud2lraXBlZGlhLm9y Zy93aWtpL1ByYWdtYV9vbmNlDQo+IA0KPiBNaWtlDQo+IA0KPiANCj4gPiAtLS0tLU9yaWdpbmFs IE1lc3NhZ2UtLS0tLQ0KPiA+IEZyb206IGRldmVsQGVkazIuZ3JvdXBzLmlvIDxkZXZlbEBlZGsy Lmdyb3Vwcy5pbz4gT24gQmVoYWxmIE9mIFh1ZSwNCj4gR2F2aW4NCj4gPiBTZW50OiBUaHVyc2Rh eSwgSnVuZSAyMiwgMjAyMyAyOjU5IEFNDQo+ID4gVG86IFBlZHJvIEZhbGNhdG8gPHBlZHJvLmZh bGNhdG9AZ21haWwuY29tPg0KPiA+IENjOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbzsgc3VuaWx2bEB2 ZW50YW5hbWljcm8uY29tOyBXYXJrZW50aW4sIEFuZHJlaQ0KPiA+IDxhbmRyZWkud2Fya2VudGlu QGludGVsLmNvbT47IFdhbmcsIFlpbWluIDx5aW1pbi53YW5nQGludGVsLmNvbT47DQo+IFNoZW5n LA0KPiA+IEFsYW4gPGFsYW4uc2hlbmdAaW50ZWwuY29tPg0KPiA+IFN1YmplY3Q6IFJlOiBbZWRr Mi1kZXZlbF0gW2VkazIgUEFUQ0hdIE1kZVBrZzogVXNlIHNhbWUgUHJvY2Vzc29yQmluZA0KPiA+ IHN5bWJvbCBkZWZpbmUgZm9yIFJJU0NWNjQNCj4gPg0KPiA+IEhpIFBlZHJvLA0KPiA+DQo+ID4g VGhhbmtzIGZvciB5b3VyIGZlZWRiYWNrLg0KPiA+DQo+ID4gVGhlIHNhbXBsZSBjb2RlIHdoYXQg SSBsaXN0ZWQgaW4gbGFzdCBtYWlsIGlzIGZyb20vb3duZWQgYnkgYW5vdGhlcg0KPiB0ZWFtLA0K PiA+IGFuZCBJIGRpZG4ndCBmaW5kIG90aGVyIHNwZWNpYWwgI2lmbmRlZiBjYXNlIGZvciBSU0lD LVYgYnVpbGRpbmcgc28NCj4gZmFyLg0KPiA+IFJJU0MtViBpcyBhbiBuZXcgcHJvY2Vzc29yIGFy Y2hpdGVjdHVyZSBpbiBlZGsyIGltcGxlbWVudGF0aW9uLCBpbg0KPiBvdXINCj4gPiBpbnRlcm5h bCBCSU9TIGNvZGUsIHRoZXJlIGFyZSBtYW55IHNpbWlsYXIgY29tbW9uIGNvZGUgZm9yIGVkazIg YW5kDQo+IFdpbmRvd3MNCj4gPiBhcHAgKGZvciBzaW11bGF0aW9uKS4NCj4gPiBJdCdzIGJldHRl ciBpZiB3ZSBjYW4gcmV1c2UgZXhpc3RpbmcgY29kZSAobW9zdGx5IGFyZSBmcm9tIHg4NikgYW5k DQo+ID4gbWluaW1pemUgbW9kaWZpY2F0aW9ucyBhcyBtdWNoIGFzIHBvc3NpYmxlLiBTbyBJIHRo aW5rIHVzZSBzYW1lIGd1YXJkDQo+IG5hbWUNCj4gPiBpcyBtYWtlIHNlbnNlLg0KPiA+IEhvdyBh Ym91dCB5b3VyIGNvbW1lbnRzPyBUaGFua3MuDQo+ID4NCj4gPiBCZXN0IHJlZ2FyZHMsDQo+ID4g R2F2aW4NCj4gPg0KPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gRnJvbTogUGVk cm8gRmFsY2F0byA8cGVkcm8uZmFsY2F0b0BnbWFpbC5jb20+DQo+ID4gU2VudDogV2VkbmVzZGF5 LCBKdW5lIDIxLCAyMDIzIDEwOjE2IFBNDQo+ID4gVG86IFh1ZSwgR2F2aW4gPGdhdmluLnh1ZUBp bnRlbC5jb20+DQo+ID4gQ2M6IGRldmVsQGVkazIuZ3JvdXBzLmlvOyBzdW5pbHZsQHZlbnRhbmFt aWNyby5jb207IFdhcmtlbnRpbiwgQW5kcmVpDQo+ID4gPGFuZHJlaS53YXJrZW50aW5AaW50ZWwu Y29tPjsgV2FuZywgWWltaW4gPHlpbWluLndhbmdAaW50ZWwuY29tPjsNCj4gU2hlbmcsDQo+ID4g QWxhbiA8YWxhbi5zaGVuZ0BpbnRlbC5jb20+DQo+ID4gU3ViamVjdDogUmU6IFtlZGsyLWRldmVs XSBbZWRrMiBQQVRDSF0gTWRlUGtnOiBVc2Ugc2FtZSBQcm9jZXNzb3JCaW5kDQo+ID4gc3ltYm9s IGRlZmluZSBmb3IgUklTQ1Y2NA0KPiA+DQo+ID4gT24gRnJpLCBKdW4gMTYsIDIwMjMgYXQgNDo1 MuKAr1BNIFh1ZSwgR2F2aW4gPGdhdmluLnh1ZUBpbnRlbC5jb20+DQo+IHdyb3RlOg0KPiA+ID4N Cj4gPiA+IEhpIFN1bmlsL1BlZHJvLA0KPiA+ID4NCj4gPiA+IDEuIEFzIHlvdSBrbm93LCBQcm9j ZXNzb3JCaW5kLmggZmlsZSBvZiBDUFUgQXJjaGl0ZWN0dXJlIGZpbGUNCj4gZGVjbGFyZXMNCj4g PiBzZXRzIG9mIGJhc2UgdHlwZXMgZm9yIGVkazIgY29kZSBjb21waWxpbmcuDQo+ID4gPiBTbyBk YXRhIHR5cGUgaW4gZWRrMiBjb2RlIGRvZXNuJ3QgcmVseSBvbiBzcGVjaWZpYyBjb21waWxlciAo bXN2YywNCj4gZ2NjDQo+ID4gZXRjLiksIHdoaWNoIGlzIGEgZ29vZCBkZXNpZ24uDQo+ID4gPg0K PiA+ID4gQnV0IGluIHByYWN0aWNlLCBmb3IgdGhlIHB1cnBvc2Ugb2YgcmV1c2UsIHNvbWUgY29k ZSBjYW4gYmUgYnVpbHQNCj4gd2l0aA0KPiA+IGVkazIsIGFuZCBhbHNvIGNhbiBiZSBidWlsdCB0 byBhIHN0YW5kYWxvbmUgYXBwbGljYXRpb24gKGUuZy4gV2luDQo+IEFwcCkuDQo+ID4gPiBKdXN0 IGxpa2UgYmVsb3cgY29kZSBwaWVjZToNCj4gPiA+ID09PT09PT09PT09DQo+ID4gPiAjaWZuZGVm IF9fV1JBUFBFUl9CQVNFX1RZUEVTX0hfXw0KPiA+ID4gI2RlZmluZSBfX1dSQVBQRVJfQkFTRV9U WVBFU19IX18NCj4gPiA+DQo+ID4gPiAvLw0KPiA+ID4gLy8gVG8gYXZvaWQgZGVmaW5pdGlvbiBj b25mbGljdCBkdXJpbmcgRURLMiBidWlsZCwgaXQgbXVzdCBpbmNsdWRlDQo+ID4gPiAvLyBQcm9j ZXNzb3JCaW5kLmggYmVmb3JlIHh4eC5oDQo+ID4gPiAvLw0KPiA+ID4gI2lmbmRlZiBfX1BST0NF U1NPUl9CSU5EX0hfXw0KPiA+ID4NCj4gPiA+ICNpbmNsdWRlIDxzdGRpbnQuaD4NCj4gPiA+IHR5 cGVkZWYgdWludDhfdCAgVUlOVDg7DQo+ID4gPiA9PT09PT09PT09DQo+ID4gPg0KPiA+ID4gSW4g dGhpcyBjYXNlLCBpZiB0aGlzIGlzIGEgZWRrMiBidWlsZCwgdGhlIGNvZGUgd2lsbCByZWZlciB0 byBkYXRhDQo+IHR5cGVzDQo+ID4gZnJvbSBQcm9jZXNzb3JCaW5kLmgsIG90aGVyd2lzZSwgaXQg d2lsbCByZWZlciB0byBzdGRpbnQuaCBmcm9tDQo+IGNvbXBpbGVyLg0KPiA+ID4NCj4gPiA+IDIu IFJlZ2FyZGluZyB0aGUgZ3VhcmQgbmFtZSwgaXQncyBzYW1lIF9fUFJPQ0VTU09SX0JJTkRfSF9f IG1hY3JvDQo+IGluDQo+ID4gQUFyY2g2NC9Bcm0vRWJjL0lhMzIvWDY0LCBidXQgaXQgaXMgUFJP Q0VTU09SX0JJTkRfSF8NCj4gPiA+IGluIFJpc2NWNjQgYW5kIExvb25nQXJoNjQuIEZvciBhYm92 ZSBjb2RlLCBpZiB3ZSBidWlsZCBCSU9TIGZvcg0KPiBSSVNDVjY0LA0KPiA+IGl0IHdpbGwgdHJ5 IHRvIGluY2x1ZGUgc3RkaW50LmggZHVlIHRvIGRpZmZlcmVudCBndWFyZCBuYW1lLg0KPiA+ID4N Cj4gPiA+IEkgYW0gbm90IHN1cmUgaWYgd2UgY2FuIHVzZSBzYW1lIGd1YXJkIG5hbWUgdG8ga2Vl cCBjb2RlIGFsaWdubWVudCwNCj4gb3INCj4gPiBnaXZlIHNvbWUgY29tbWVudHMuIFRoYW5rcy4N Cj4gPg0KPiA+IEhpLA0KPiA+IEhtbSwgaW50ZXJlc3RpbmcgcHJvYmxlbS4gSGF2ZSB5b3UgdHJp ZWQgdG8gI2lmbmRlZiB3aXRoIHNvbWUgb3RoZXINCj4gPiBkZWZpbmU/IExpa2UsIEkgZG9uJ3Qg a25vdywgTUFYX1VJTlROIG9yIEVGSUFQST8NCj4gPg0KPiA+IC0tDQo+ID4gUGVkcm8NCj4gPg0K PiA+DQo+ID4gDQo+ID4NCg0K