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.web10.256.1624548342909098570 for ; Thu, 24 Jun 2021 08:25:43 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=EvwPvHfi; spf=pass (domain: intel.com, ip: 134.134.136.31, mailfrom: michael.d.kinney@intel.com) IronPort-SDR: iQqlNW8XGQ7LfuYODeT8R4Njr/Azzpiwh/RCClzab+cetapS3lxiNkUDApeT9FAozeqNAlyvYS Cqd9shTj/TAw== X-IronPort-AV: E=McAfee;i="6200,9189,10025"; a="268624614" X-IronPort-AV: E=Sophos;i="5.83,296,1616482800"; d="scan'208";a="268624614" Received: from orsmga004.jf.intel.com ([10.7.209.38]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 24 Jun 2021 08:25:41 -0700 IronPort-SDR: KfO5qjEkdM1vxbBF1RI95mZETyVsutxG41rS07SXl31WKKuRFaFxy+ZSZfjbf9OEQzcKRznznG HdUiBF2omuGA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.83,296,1616482800"; d="scan'208";a="556528148" Received: from orsmsx601.amr.corp.intel.com ([10.22.229.14]) by orsmga004.jf.intel.com with ESMTP; 24 Jun 2021 08:25:41 -0700 Received: from orsmsx609.amr.corp.intel.com (10.22.229.22) by ORSMSX601.amr.corp.intel.com (10.22.229.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.4; Thu, 24 Jun 2021 08:25:41 -0700 Received: from orsmsx611.amr.corp.intel.com (10.22.229.24) by ORSMSX609.amr.corp.intel.com (10.22.229.22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.4; Thu, 24 Jun 2021 08:25:41 -0700 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) 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 via Frontend Transport; Thu, 24 Jun 2021 08:25:41 -0700 Received: from NAM02-SN1-obe.outbound.protection.outlook.com (104.47.57.47) 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; Thu, 24 Jun 2021 08:25:34 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dQiPACW3qYI267BdR3EcO2fTfI767bQvmsR7Q8fPUq6XXOWXR1PG1+Xytdz5gbbOSbWYaWfLRyY9K8sk2uTU3C9zoHFbbDAUmnFUo5sX5hnaZy6vHa32FVdED0oaiWp36j8wVUap2aUV7mRjgS3kEfprmJT1F/ygqKrPsNXAyq5JvVVBUp3yCh8ToyHEvNh9D3zxvRHl8pQJmhG0MFDr4V4aUTBgyiOf9IJ099UiodUGMt1WYK3x33KsmQcEPnCcV7cOHyc2amxzqD68O6UBj1cJPcqEFTmmoQBZQy7F9SxIXyd4E8F9OsSzSrwdoGJxPBOpsf/ZAzUZA/1zO/kQLg== 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=Sq6gsh1ACrY/ceKvJbFaH7oSBOQAmmy1hDOB3CLsxVQ=; b=llEnyg0LhMHF3omlJXfgZmS/vD64Uc3s91YLolkCgQQkC/rGw4mNj4dSudkBUzFVFjkliwKNhkj488Dqn1vGTrcf1Wc9huhmjd3F03mwLMHejGHnzbma06pcFRpfE/kFAG/1W5x1huFhh5lzhAq1qTbTMD2dH0dJqUZlLWNDp2aR0Duj5o6qNvUVcnLdaXEHe4IPNc/ZXdUSeSFVxwvvntMLjYm/w9bggO+vdxXDcD0oD7OIAGLtdgESzwRI1YNUZOGIvC3jU6R1Cub5+F1GgcExlarJ6PYoT9aKa+uFp8dN1JECPVN7s9AvbwBvjHnJv0er1m3SOGNYAcoQq+1r6g== 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=Sq6gsh1ACrY/ceKvJbFaH7oSBOQAmmy1hDOB3CLsxVQ=; b=EvwPvHfi72SDqKUO+EDk6gAY9cmqYgt/UjOieGu8NmfElu2/5ju3H2zUYgvb0jcJxaZr8DdHcoQ6ARxf844dk7Y5CymfHOgEtxptKcwA426RPnLYZacuO1G8Rqm6bTtHXCXg7LmE1ISHy17TByF11IGccFOemdDYHwXokwywjss= Received: from CO1PR11MB4929.namprd11.prod.outlook.com (2603:10b6:303:6d::19) by MWHPR11MB1597.namprd11.prod.outlook.com (2603:10b6:301:d::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4264.18; Thu, 24 Jun 2021 15:25:33 +0000 Received: from CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::612a:1a6b:db8a:5ff4]) by CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::612a:1a6b:db8a:5ff4%5]) with mapi id 15.20.4264.020; Thu, 24 Jun 2021 15:25:33 +0000 From: "Michael D Kinney" To: =?utf-8?B?TWFydmluIEjDpHVzZXI=?= , Kun Qin , Laszlo Ersek , "devel@edk2.groups.io" , "Kinney, Michael D" CC: "Wang, Jian J" , "Wu, Hao A" , "Dong, Eric" , "Ni, Ray" , Liming Gao , "Liu, Zhiguang" , "Andrew Fish" , Leif Lindholm , Bret Barkelew , "michael.kubacki@microsoft.com" Subject: Re: [edk2-devel] [PATCH v1 0/5] EDK2 Code First: PI Specification: Update EFI_MM_COMMUNICATE_HEADER Thread-Topic: [edk2-devel] [PATCH v1 0/5] EDK2 Code First: PI Specification: Update EFI_MM_COMMUNICATE_HEADER Thread-Index: AQHXXZn+CLdMfOUuFEGylDfa9cdgM6sWP/MAgADpogCAAmY+AIAGrRkAgAEBKQCAAI7uAIAAln+AgAB/MgCAAHjKkA== Date: Thu, 24 Jun 2021 15:25:32 +0000 Message-ID: References: <20210610014259.1151-1-kuqin12@gmail.com> <93fd191e-e62f-f02e-11d0-403173fcdf42@posteo.de> <817ab349-b7a2-528b-9b78-aa72cefcd25a@posteo.de> <40bffd17-28a6-d280-02b1-628f1b2daa09@posteo.de> <1525bdb4-abfa-d89a-d7d9-7f8745640bff@gmail.com> <3f3ce50a-4ff0-d80f-c635-528751a0ab78@posteo.de> In-Reply-To: <3f3ce50a-4ff0-d80f-c635-528751a0ab78@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.5.1.3 authentication-results: posteo.de; dkim=none (message not signed) header.d=none;posteo.de; 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: 470d45ea-952f-4d3e-3807-08d937244edf x-ms-traffictypediagnostic: MWHPR11MB1597: 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: qMB8GPhBUEOtdLUWiEsS4sbZGxfJeKyl38aBk5nfEXttWFCVom6EL9Kq8/JT5sgbuCxFNOH/QDIsD4rf5ZbnPND1hJfxw5GOXCt8g1YAhjIJ8hmCHMgm0rl96Minb/1CWMNuNyePfbbsNqlHa6EOqpOJHi0v20YveMKSLoq/YtYtHSgLVRC590Pwpk61fMVyiYltDUXkDl0OXlFrUUcQ2CDVwLXKm19Ij2vP+xnB7J3DKAGQGaIVPpD8mWReMdCXmZX800oyy4PP/Ag47CsmLRuYBuWTbGyCPIqB0EZNZUX9bVui7bDpWYeNREO36W04+JEMT6WAkTePaeyx84IlKKH5+WcqBFuM90O7CqnoXpwQ1s1rtOA59fp306crCrGW8aVcn3AVGhh8IkAGKp2zLLr7bOgOFL7V6H50sil3ym7SQ5Y6a5GlsNz+r1fyT94aCK9Z16cW4M96LGAFkrf+cE5iXCepxRPaqH+fzCVfibYIG717zGlZuKrFHXdQDrZg1SCpfn7TT2n91au6CFsiFdZKUCOdgF4DQbqIpY7pQI8OGkuw5xK9/t9y267utcPlfsVQwZQLhIf2A+eBz6QYTz2mC3xWCJWuXHWo+5DcylS5dIPzGOEBgHGnclIvfwziAI+BDSRV7UIs4EMnRabWlw== 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:(346002)(366004)(376002)(136003)(396003)(39860400002)(55016002)(26005)(2906002)(33656002)(478600001)(66556008)(71200400001)(122000001)(76116006)(54906003)(66946007)(64756008)(66446008)(66476007)(38100700002)(9686003)(186003)(4326008)(6506007)(66574015)(7696005)(110136005)(5660300002)(86362001)(52536014)(15650500001)(8936002)(316002)(45080400002)(83380400001)(8676002)(53546011);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?WkNvNHRPYkdMUktUazlLcVl1MXNabjZWM04wRnpJNUFpWllPMkE2YTlObzdr?= =?utf-8?B?SGxvNDRkZzU5WkRhbklCaFJmRVA4K2JWU1pJcFpjQUdDRFU0eTQyVE1JdUxD?= =?utf-8?B?Z2FNeDJydmlTUEVPK0g1SGdUdERVM3FNS1ZZVnJoT3BGUnk3ZWs3RTUxaUdY?= =?utf-8?B?WTl4ZGNISFRrTUxVeUg2NWpKYmd2dlpIVnpmSElKY3pSZzZqNmovYWFVVnJh?= =?utf-8?B?cE9rZk1YcHNrUUI2S0NJVjdkSnhBTTc0cVhUcjF4WlBMSVpqQkdtekYrT1hF?= =?utf-8?B?OUpPa21oQm1iYUhFbHZidlF1VE9idjQ2M2ZDeDVsN3lGb3h6T3hhMEgrM0dZ?= =?utf-8?B?blBObDN0VnhhdEdzU0tXbUgxWXdINCtVRlBKYTlGdjBRREkxWnhrangzMmlE?= =?utf-8?B?NytUZnFQYWVHZ1hxR0hGbFg1RlZhNGlxTmVhaEZYOTRNS3RGVUw0d1lOREtr?= =?utf-8?B?TUR0OUhBR1VFZ2VxcXJjU0xia1V3ODJYN3Bpa3EyQ0hQU3BnS1RVTk1BU1lX?= =?utf-8?B?RVFNSWZJMi9ldS9oUysydUpQcEVIYWFzdjZPSVJCc0dIYUR6NG5WTnlnSGsy?= =?utf-8?B?SHgvNnZLZmNsMEZGbDNJajFDQlR5SmM3VysxcVd5aXdVdlpIaWt0bytqKzUz?= =?utf-8?B?anh6UWx0UUFsUGVUelhMb0dHTmJBcFl0ME91NjdQOTUyTGNWR2UzWlYxUkw5?= =?utf-8?B?WHZoSU9MVHdkeDR6d3FKYkFOZVR1TXBLQkkxb2RjR0hIc1dMZFN5eG1BYjBL?= =?utf-8?B?c0liaTM5MDAyZTlBRzFVbnFoUVlCMWdkaXJsMU4xdDZOSmFyU2VCQlN5VXBy?= =?utf-8?B?aEF2c1VIeFRyZzZDRGlDR2lHWUh5RTR5L2wxWi9JQnhHRC9yK0tQbVRwSVg2?= =?utf-8?B?ZndlZnpNMGVoZlhpaFQ3K1RlMU9FL0tCdlJRNGpVSTQybmlnSW5pWWJPZDRG?= =?utf-8?B?TytjUjNqWDBSUDVnNExnelI5bWJUSTlsOTRacmF1QVl3Rk1KWkxnUzdWSEFk?= =?utf-8?B?bTZoSXNSQlMzVkFyNUY2KzdGeW9JRUgyOXJEUXFrSjR1MkV3dFIvRitMSlhN?= =?utf-8?B?TjVQcUp5cE1aK2hXeGg0L1F4a3M0bG5WbjgxYXJHUXNYN0dXQTFzYTNpeS9Q?= =?utf-8?B?N29tOGdhNTBoakJYWGQrNlh5d2NZc2RtSEJyM0M1Wm1PNTEwempyajl0SG9B?= =?utf-8?B?ckZMZXI1R1Eya1h4MUNscGdSRURsMk1xQ0V5dUF1VExPVkhUSnVNY0pyMlBE?= =?utf-8?B?ZGVWVG15OFBKVVhkck0xUDFUTGgvaEcwRjJYV0NIUmZZV2lCK2c5cHY5eXRr?= =?utf-8?B?TXlyQzBJc2doOVNEWFhXaTVudzZTamU2WWQxamhyYkQzMzFyaEs1ZnZwYlVP?= =?utf-8?B?YldqYW9DbmpVNmZxOTdUU2dNVi9ZcWZocnZhaTU4NjdFeURUM3VKK0RuTDFq?= =?utf-8?B?WEdJWFgrQVVSNEZLdkxVakI0VzFUUkIzL2ZtWU1XZVNNbEpNSzFKUzI4T0Q5?= =?utf-8?B?SjBKUDlCcnZNSDNWZmZvclNkbjlXVW9tRGI4U1pGenpyNFJmS3hHVENqM1l5?= =?utf-8?B?YjhsN2w3dmRDYWlYUDRVTFFZV0pOcWV6UUgyMjV0c0QrbTNGbnVrUnQzUVJF?= =?utf-8?B?ZmFkdnJnNmcwd2o3TmV4cGF6RXRjQ0lWMGlzZ1dTYUphazB3VU42WW1PbUNO?= =?utf-8?B?QlR4bFFyL3JWUWtTOXMzaHMvdElTT2dRR1kybFhTVlhaU0h5a05KcEJTYnNN?= =?utf-8?Q?xS7g89sqcaaOU40g1NGqR76CGQPXwD5pS9Hkkxd?= 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: 470d45ea-952f-4d3e-3807-08d937244edf X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Jun 2021 15:25:32.9963 (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: 0zYFBUzNAcxvdxsn9ERWOhG9vT5IdE16WFDvW7N/d8KJjTf9qosMksbygEaiDAWLp7qJ5aydXYI2TDe3i6CknzXoGekPYYvaW672ZKpabkQ= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR11MB1597 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 SGVsbG8sDQoNCkZsZXhpYmxlIGFycmF5IG1lbWJlcnMgYXJlIHN1cHBvcnRlZCBhbmQgc2hvdWxk IGJlIHVzZWQuICBUaGUgb2xkIHN0eWxlDQpvZiBhZGRpbmcgYW4gYXJyYXkgb2Ygc2l6ZSBbMV0g YXQgdGhlIGVuZCBvZiBhIHN0cnVjdHVyZSB3YXMgdXNlZCBhdCBhIHRpbWUNCmZsZXhpYmxlIGFy cmF5IG1lbWJlcnMgd2VyZSBub3Qgc3VwcG9ydGVkIGJ5IGFsbCBjb21waWxlcnMgKGxhdGUgMTk5 MCdzKS4NClRoZSB3b3JrYXJvdW5kcyB1c2VkIHRvIGhhbmRsZSB0aGUgYXJyYXkgb2Ygc2l6ZSBb MV0gYXJlIHZlcnkgY29uZnVzaW5nIHdoZW4NCnJlYWRpbmcgdGhlIEMgIGNvZGUgYW5kIHRoZSBm YWN0IHRoYXQgc2l6ZW9mKCkgZG9lcyBub3QgcHJvZHVjZSB0aGUgZXhwZWN0ZWQNCnJlc3VsdCBt YWtlIGl0IGV2ZW4gd29yc2UuDQoNCklmIHdlIHVzZSBmbGV4aWJsZSBhcnJheSBtZW1iZXJzIGlu IHRoaXMgcHJvcG9zZWQgY2hhbmdlIHRoZW4gdGhlcmUgaXMNCm5vIG5lZWQgdG8gdXNlIE9GRlNF VF9PRigpLiAgQ29ycmVjdD8NCg0KTWlrZQ0KDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0t LS0NCj4gRnJvbTogTWFydmluIEjDpHVzZXIgPG1oYWV1c2VyQHBvc3Rlby5kZT4NCj4gU2VudDog VGh1cnNkYXksIEp1bmUgMjQsIDIwMjEgMTowMCBBTQ0KPiBUbzogS3VuIFFpbiA8a3VxaW4xMkBn bWFpbC5jb20+OyBMYXN6bG8gRXJzZWsgPGxlcnNla0ByZWRoYXQuY29tPjsgZGV2ZWxAZWRrMi5n cm91cHMuaW8NCj4gQ2M6IFdhbmcsIEppYW4gSiA8amlhbi5qLndhbmdAaW50ZWwuY29tPjsgV3Us IEhhbyBBIDxoYW8uYS53dUBpbnRlbC5jb20+OyBEb25nLCBFcmljIDxlcmljLmRvbmdAaW50ZWwu Y29tPjsgTmksIFJheQ0KPiA8cmF5Lm5pQGludGVsLmNvbT47IEtpbm5leSwgTWljaGFlbCBEIDxt aWNoYWVsLmQua2lubmV5QGludGVsLmNvbT47IExpbWluZyBHYW8gPGdhb2xpbWluZ0BieW9zb2Z0 LmNvbS5jbj47IExpdSwgWmhpZ3VhbmcNCj4gPHpoaWd1YW5nLmxpdUBpbnRlbC5jb20+OyBBbmRy ZXcgRmlzaCA8YWZpc2hAYXBwbGUuY29tPjsgTGVpZiBMaW5kaG9sbSA8bGVpZkBudXZpYWluYy5j b20+OyBCcmV0IEJhcmtlbGV3DQo+IDxCcmV0LkJhcmtlbGV3QG1pY3Jvc29mdC5jb20+OyBtaWNo YWVsLmt1YmFja2lAbWljcm9zb2Z0LmNvbQ0KPiBTdWJqZWN0OiBSZTogW2VkazItZGV2ZWxdIFtQ QVRDSCB2MSAwLzVdIEVESzIgQ29kZSBGaXJzdDogUEkgU3BlY2lmaWNhdGlvbjogVXBkYXRlIEVG SV9NTV9DT01NVU5JQ0FURV9IRUFERVINCj4gDQo+IEhleSBLdW4sDQo+IA0KPiBXaHkgd291bGQg eW91IHJlbHkgb24gdW5kZWZpbmVkIGJlaGF2aW91cnM/IFRoZSBPRkZTRVRfT0YgbWFjcm8gaXMN Cj4gd2VsbC1kZWZpbmVkIGZvciBHQ0MgYW5kIENsYW5nIGFzIGl0J3MgaW1wbGVtZW50ZWQgYnkg YW4gaW50cmluc2ljLCBhbmQNCj4gd2hpbGUgdGhlIGV4cHJlc3Npb24gZm9yIHRoZSBNU1ZDIGNv bXBpbGVyIGlzIHVuZGVmaW5lZCBiZWhhdmlvdXIgYXMgcGVyDQo+IHRoZSBDIHN0YW5kYXJkLCBp dCBpcyB3ZWxsLWRlZmluZWQgZm9yIE1TVkMgZHVlIHRvIHRoZWlyIG93bg0KPiBpbXBsZW1lbnRh dGlvbiBiZWluZyBpZGVudGljYWwuIEZyb20gbXkgc3RhbmRwb2ludCwgYWxsIHN1cHBvcnRlZA0K PiBjb21waWxlcnMgd2lsbCB5aWVsZCB3ZWxsLWRlZmluZWQgYmVoYXZpb3VyIGV2ZW4gdGhpcyB3 YXkuIE9GRlNFVF9PRiBvbg0KPiBmbGV4aWJsZSBhcnJheXMgaXMgbm90IFVCIGluIGFueSBjYXNl IHRvIG15IGtub3dsZWRnZS4NCj4gDQo+IEhvd2V2ZXIsIHRoZSBzYW1lIHdheSBhcyB5b3VyIG5l dyBzdWdnZXN0aW9uLCB5b3UgY2FuIHJlcGxhY2UgT0ZGU0VUX09GDQo+IHdpdGggc2l6ZW9mLiBX aGlsZSB0aGlzICpjYW4qIGxlYWQgdG8gd2FzdGVkIHNwYWNlIHdpdGggY2VydGFpbg0KPiBzdHJ1 Y3R1cmUgbGF5b3V0cyAoZS5nLiB3aGVuIHRoZSBmbGV4aWJsZSBhcnJheSBvdmVybGF5cyBwYWRk aW5nIGJ5dGVzKSwNCj4gdGhpcyBpcyBub3QgdGhlIGNhc2UgaGVyZSwgYW5kIG90aGVyd2lzZSBq dXN0IGxvc2VzIHlvdSBhIGZldyBieXRlcy4gSQ0KPiB0aGluayB0aGlzIGNvbWVzIGRvd24gdG8g cHJlZmVyZW5jZS4NCj4gDQo+IFRoZSBwYXR0ZXJuIHlvdSBtZW50aW9uZWQgYXJndWFibHkgaXMg bGVzcyBuaWNlIHN5bnRheCB3aGVuIHVzZWQNCj4gKGludm9sdmVzIGFkZHJlc3MgY2FsY3VsYXRp b24gYW5kIGNhc3RpbmcpLCBidXQgdGhlIGJpZ2dlc3QgcHJvYmxlbSBoZXJlDQo+IGlzIGFsaWdu bWVudCBjb25zdHJhaW50cy4gRm9yIHBhY2tlZCBzdHJ1Y3R1cmVzLCB5b3UgbG9zZSB0aGUgYWJp bGl0eSBvZg0KPiBhdXRvbWF0aWMgdW5hbGlnbmVkIGFjY2Vzc2VzIChpcnJlbGV2YW50IGhlcmUg YmVjYXVzZSB0aGUgc3RydWN0dXJlIGlzDQo+IG1hbnVhbGx5IHBhZGRlZCBhbnl3YXkpLiBGb3Ig bm9uLXBhY2tlZCBzdHJ1Y3R1cmVzLCB5b3Ugc3RpbGwgbmVlZCB0bw0KPiBlbnN1cmUgdGhlIGFs aWdubWVudCByZXF1aXJlbWVudCBvZiB0aGUgdHJhaWxpbmcgYXJyYXkgZGF0YSBpcyBtZXQNCj4g bWFudWFsbHkuIFdpdGggZmxleGlibGUgYXJyYXkgbWVtYmVycywgdGhlIGNvbXBpbGVyIHRha2Vz IGNhcmUgb2YgYm90aA0KPiBjYXNlcyBhdXRvbWF0aWNhbGx5Lg0KPiANCj4gQmVzdCByZWdhcmRz LA0KPiBNYXJ2aW4NCj4gDQo+IE9uIDI0LjA2LjIxIDAyOjI0LCBLdW4gUWluIHdyb3RlOg0KPiA+ IEhpIE1hcnZpbiwNCj4gPg0KPiA+IEkgd291bGQgcHJlZmVyIG5vdCB0byByZWx5IG9uIHVuZGVm aW5lZCBiZWhhdmlvcnMgZnJvbSBkaWZmZXJlbnQNCj4gPiBjb21waWxlcnMuIEluc3RlYWQgb2Yg dXNpbmcgZmxleGlibGUgYXJyYXlzLCBpcyBpdCBiZXR0ZXIgdG8gcmVtb3ZlDQo+ID4gdGhlIGBE YXRhYCBmaWVsZCwgcGFjayB0aGUgc3RydWN0dXJlIGFuZCBmb2xsb3cNCj4gPiAiVkFSSUFCTEVf TE9DS19PTl9WQVJfU1RBVEVfUE9MSUNZIiBwYXR0ZXJuPw0KPiA+DQo+ID4gSW4gdGhhdCBjYXNl LCBPRkZTRVRfT0Ygd2lsbCBiZSBmb3JjZWQgdG8gY2hhbmdlIHRvIHNpemVvZiwgYW5kDQo+ID4g cmVhZC93cml0ZSB0byBgRGF0YWAgd2lsbCBmb2xsb3cgdGhlIHJhbmdlIGluZGljYXRlZCBieSBN ZXNzYWdlTGVuZ3RoLg0KPiA+IEJ1dCB5ZXMsIHRoYXQgd2lsbCBlbmZvcmNlIGRldmVsb3BlcnMg dG8gdXBkYXRlIHRoZWlyIHBsYXRmb3JtIGxldmVsDQo+ID4gaW1wbGVtZW50YXRpb25zIGFjY29y ZGluZ2x5Lg0KPiA+DQo+ID4gUmVnYXJkcywNCj4gPiBLdW4NCj4gPg0KPiA+IE9uIDA2LzIzLzIw MjEgMDg6MjYsIExhc3psbyBFcnNlayB3cm90ZToNCj4gPj4gT24gMDYvMjMvMjEgMDg6NTQsIE1h cnZpbiBIw6R1c2VyIHdyb3RlOg0KPiA+Pj4gT24gMjIuMDYuMjEgMTc6MzQsIExhc3psbyBFcnNl ayB3cm90ZToNCj4gPj4+PiBPbiAwNi8xOC8yMSAxMTozNywgTWFydmluIEjDpHVzZXIgd3JvdGU6 DQo+ID4+Pj4+IE9uIDE2LjA2LjIxIDIyOjU4LCBLdW4gUWluIHdyb3RlOg0KPiA+Pj4+Pj4gT24g MDYvMTYvMjAyMSAwMDowMiwgTWFydmluIEjDpHVzZXIgd3JvdGU6DQo+ID4+Pj4+Pj4gMikgSXMg aXQgZmVhc2libGUgeWV0IHdpdGggdGhlIGN1cnJlbnQgc2V0IG9mIHN1cHBvcnRlZA0KPiA+Pj4+ Pj4+IGNvbXBpbGVycyB0bw0KPiA+Pj4+Pj4+IHN1cHBvcnQgZmxleGlibGUgYXJyYXlzPw0KPiA+ Pj4+Pj4gTXkgaW1wcmVzc2lvbiBpcyB0aGF0IGZsZXhpYmxlIGFycmF5cyBhcmUgYWxyZWFkeSBz dXBwb3J0ZWQgKGFzIHNlZW4NCj4gPj4+Pj4+IGluIFVuaXRUZXN0RnJhbWV3b3JrUGtnL1ByaXZh dGVJbmNsdWRlL1VuaXRUZXN0RnJhbWV3b3JrVHlwZXMuaCkuDQo+ID4+Pj4+PiBQbGVhc2UgY29y cmVjdCBtZSBpZiBJIGFtIHdyb25nLg0KPiA+Pj4+Pj4NCj4gPj4+Pj4+IFdvdWxkIHlvdSBtaW5k IGxldHRpbmcgbWUga25vdyB3aHkgdGhpcyBpcyBhcHBsaWNhYmxlIGhlcmU/IFdlIGFyZQ0KPiA+ Pj4+Pj4gdHJ5aW5nIHRvIHNlZWsgaWRlYXMgb24gaG93IHRvIGNhdGNoIGRldmVsb3BlciBtaXN0 YWtlcyBjYXVzZWQgYnkNCj4gPj4+Pj4+IHRoaXMNCj4gPj4+Pj4+IGNoYW5nZS4gU28gYW55IGlu cHV0IGlzIGFwcHJlY2lhdGVkLg0KPiA+Pj4+PiBIdWgsIGludGVyZXN0aW5nLiBMYXN0IHRpbWUg SSB0cmllZCBJIHdhcyB0b2xkIGFib3V0DQo+ID4+Pj4+IGluY29tcGF0aWJpbGl0aWVzDQo+ID4+ Pj4+IHdpdGggTVNWQywgYnV0IEkga25vdyBzb21lIGhhdmUgYmVlbiBkcm9wcGVkIHNpbmNlIHRo ZW4gKDIwMDUgYW5kDQo+ID4+Pj4+IDIwMDgNCj4gPj4+Pj4gaWYgSSByZWNhbGwgY29ycmVjdGx5 PyksIHNvIHRoYXQnZCBiZSBncmVhdCB0byBhbGxvdyBnbG9iYWxseS4NCj4gPj4+PiBJIHRvbyBh bSBzdXJwcmlzZWQgdG8gc2VlDQo+ID4+Pj4gIlVuaXRUZXN0RnJhbWV3b3JrUGtnL1ByaXZhdGVJ bmNsdWRlL1VuaXRUZXN0RnJhbWV3b3JrVHlwZXMuaCIuIFRoZQ0KPiA+Pj4+IGZsZXhpYmxlIGFy cmF5IG1lbWJlciBpcyBhIEM5OSBmZWF0dXJlLCBhbmQgSSBkaWRuJ3QgZXZlbiBrbm93IHRoYXQg d2UNCj4gPj4+PiBkaXNhbGxvd2VkIGl0IGZvciB0aGUgc2FrZSBvZiBwYXJ0aWN1bGFyIFZTIHRv b2xjaGFpbnMgLS0gSSB0aG91Z2h0IHdlDQo+ID4+Pj4gaGFkIGEgbW9yZSBnZW5lcmFsIHJlYXNv biB0aGFuIGp1c3QgIm5vdCBzdXBwb3J0ZWQgYnkgVlMgdmVyc2lvbnMgWA0KPiA+Pj4+IGFuZCBZ Ii4NCj4gPj4+Pg0KPiA+Pj4+IFRoZSBiZWhhdmlvciBvZiBPRkZTRVRfT0YoKSB3b3VsZCBiZSBp bnRlcmVzdGluZyAtLSB0aGUgT0ZGU0VUX09GKCkNCj4gPj4+PiBtYWNybyBkZWZpbml0aW9uIGZv ciBub24tZ2NjIC8gbm9uLWNsYW5nOg0KPiA+Pj4+DQo+ID4+Pj4gI2RlZmluZSBPRkZTRVRfT0Yo VFlQRSwgRmllbGQpICgoVUlOVE4pICYoKChUWVBFICopMCktPkZpZWxkKSkNCj4gPj4+Pg0KPiA+ Pj4+IGJvcmRlcnMgb24gdW5kZWZpbmVkIGJlaGF2aW9yIGFzIGZhciBhcyBJIGNhbiB0ZWxsLCBz byBpdHMgYmVoYXZpb3IgaXMNCj4gPj4+PiB0b3RhbGx5IHVwIHRvIHRoZSBjb21waWxlci4gSXQg d29ya3MgdGh1cyBmYXIgb2theSBvbiBWaXN1YWwNCj4gPj4+PiBTdHVkaW8sIGJ1dA0KPiA+Pj4+ IEkgY291bGRuJ3Qgc2F5IGlmIGl0IGV4dGVuZGVkIGNvcnJlY3RseSB0byBmbGV4aWJsZSBhcnJh eSBtZW1iZXJzLg0KPiA+Pj4NCj4gPj4+IFllcywgaXQncyBVQiBieSB0aGUgc3RhbmRhcmQsIGJ1 dCB0aGlzIGlzIGFjdHVhbGx5IGhvdyBNUyBpbXBsZW1lbnRzDQo+ID4+PiB0aGVtIChvciB1c2Vk IHRvIGFueXdheT8pLiBJIGRvbid0IHNlZSB3aHkgaXQnZCBjYXVzZSBpc3N1ZXMgd2l0aA0KPiA+ Pj4gZmxleGlibGUgYXJyYXlzLCBhcyBvbmx5IHRoZSBzdGFydCBvZiB0aGUgYXJyYXkgaXMgcmVs ZXZhbnQgKHdoaWNoIGlzDQo+ID4+PiBjb25zdGFudCBmb3IgYWxsIGluc3RhbmNlcyBvZiB0aGUg c3RydWN0dXJlIG5vIG1hdHRlciB0aGUgYW1vdW50IG9mDQo+ID4+PiBlbGVtZW50cyBhY3R1YWxs eSBzdG9yZWQpLiBBbnkgc3BlY2lmaWMgY29uY2Vybj8gSWYgc28sIHRoZXkgY291bGQgYmUNCj4g Pj4+IGFkZHJlc3NlZCBieSBhcHByb3ByaWF0ZSBTVEFUSUNfQVNTRVJUcy4NCj4gPj4NCj4gPj4g Tm8gc3BlY2lmaWMgY29uY2VybjsgbXkgcG9pbnQgd2FzIHRoYXQgdHdvIGFzcGVjdHMgb2YgdGhl IHNhbWUgImNsYXNzIg0KPiA+PiBvZiB1bmRlZmluZWQgYmVoYXZpb3IgZGlkbid0IG5lZWQgdG8g YmUgY29uc2lzdGVudCB3aXRoIGVhY2ggb3RoZXIuDQo+ID4+DQo+ID4+IFRoYW5rcw0KPiA+PiBM YXN6bG8NCj4gPj4NCg0K