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.web09.4701.1646379604197392066 for ; Thu, 03 Mar 2022 23:40:04 -0800 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=ioav7vyR; spf=pass (domain: intel.com, ip: 134.134.136.65, mailfrom: ray.ni@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1646379604; x=1677915604; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=Ee5lersG/TPILI8QLxmJNfVAuGiCji+opfqRxcZj5/Q=; b=ioav7vyRviXymO7tK6B6wQHKAETHRMyjMtMhTsfJOTO0vUCihizfgwWk 4XEPTgs6PR/ooQWm+uAi7dd60xm7SBF3xHNyW7Thu/KUTI3BoL1Yly/8G oIe6yFv9JCvhOSFhpRvpEqosmam1xsKgQe+mv6T2er6JE2k+v3rO07AcM VmQMjJbzwqeor29QnDTk+1dDnTBvHWKpNO3FlM61e5sL9RD8x69RgpOyi /2RzHw7u4iXrRe7SGOEBqNQy/z+CPL0LFgvq22eS/PpUneWy06Z4iM1Pm OhoaL74CgjGT7egoBaNYf1zmmH5Wtx5LkCu07A73qAhfFWMzQ2vaK0qM6 w==; X-IronPort-AV: E=McAfee;i="6200,9189,10275"; a="253850009" X-IronPort-AV: E=Sophos;i="5.90,154,1643702400"; d="scan'208";a="253850009" Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 03 Mar 2022 23:39:57 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.90,154,1643702400"; d="scan'208";a="594699808" Received: from orsmsx604.amr.corp.intel.com ([10.22.229.17]) by fmsmga008.fm.intel.com with ESMTP; 03 Mar 2022 23:39:57 -0800 Received: from orsmsx611.amr.corp.intel.com (10.22.229.24) by ORSMSX604.amr.corp.intel.com (10.22.229.17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.21; Thu, 3 Mar 2022 23:39:56 -0800 Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) 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.2308.21 via Frontend Transport; Thu, 3 Mar 2022 23:39:56 -0800 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (104.47.58.173) by edgegateway.intel.com (134.134.137.103) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2308.21; Thu, 3 Mar 2022 23:39:56 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=flcTPmYp7eYHt9ZS+x9k2ehKVHaOp57VoYGJZor3sxhUWiaPp9ff1Ttot2QjiMnIcAO75n+ex6egtLr1HjrG0rP4+R5XojKSs4XcKeT3D2ZuDNMJ1gd9D62vGfmM9qNWxUjtEzLOI6cRSuO5TnfYDEYtOesp+y8r8ot9HzgcHnKWZr/ykUTjUtHOMQwH45LgwvN1xUvvAt5ovuVqQ0H3omjAOTcmwXdkkLQuTpS6ix6b1zMtREbsiGUTlGTGYX8cDCnTAY+BtRdJnCECxyXWc2lje79SZTXravg+q/g1vVEdwV8RhFd0tZc5zaQwAyy8rwySq4PkGgteLCSnZkoOzg== 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=Ee5lersG/TPILI8QLxmJNfVAuGiCji+opfqRxcZj5/Q=; b=BepStXqGDCWfBFCgM2eIH5Ynvu+ybUVRh36Gdd69xxgsJd/zLvHYS4P0LBao0GdDgnAGgDsPwbBKV4dC3Fj2sPDWjflSZK/KK1DmKI2cP7QBZlxd6619KZ/559t0NqQi3NZMhTMTTzkRXx7xBu65ORlhRaHJkgVMN9eWv+PlfnwnxpTtNbLCtKesiallT2aj9nF1EtMqHmekD3/PAKHULpKgbr+WNr4loLRoFzkoWelsja9JFNn4St45hi+yFrOz5x7c881heJap6z4QrIXggRnlXsrEA7ru05mEvaGojsubsAWMtrVH8a7gMl6lkY8SI71GYlwvtf+T3ORqihKOzQ== 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 MWHPR11MB1631.namprd11.prod.outlook.com (2603:10b6:301:10::10) by BYAPR11MB2568.namprd11.prod.outlook.com (2603:10b6:a02:c6::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5038.17; Fri, 4 Mar 2022 07:39:48 +0000 Received: from MWHPR11MB1631.namprd11.prod.outlook.com ([fe80::99b6:d326:2925:4d2f]) by MWHPR11MB1631.namprd11.prod.outlook.com ([fe80::99b6:d326:2925:4d2f%3]) with mapi id 15.20.5038.015; Fri, 4 Mar 2022 07:39:48 +0000 From: "Ni, Ray" To: "devel@edk2.groups.io" , "ardb@kernel.org" , "Pu, Yu" CC: Ard Biesheuvel , Sami Mujawar , "Yao, Jiewen" Subject: Re: [edk2-devel] [PATCH v1 4/7] StandaloneMmPkg: Invoke GetPhysicalAddressBits() and remove the duplicated code Thread-Topic: [edk2-devel] [PATCH v1 4/7] StandaloneMmPkg: Invoke GetPhysicalAddressBits() and remove the duplicated code Thread-Index: AQHYLkl/BO7A7vs0d0ebHEpFy95xWKytbdkAgAFrfRA= Date: Fri, 4 Mar 2022 07:39:48 +0000 Message-ID: References: <20220302091859.2783-1-yu.pu@intel.com> <20220302091859.2783-5-yu.pu@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-office365-filtering-correlation-id: a5fcd5fe-c142-47e1-de4e-08d9fdb22926 x-ms-traffictypediagnostic: BYAPR11MB2568:EE_ 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: 6zGq5exssAwlcCIBYgy/O7OOevnT5ue6tN8/yKBxbyS7Wm4hqVN79ifRjNOICCHDj78K7X/vibB/RUjP+dQExVkgW4u7X0XSiuVXlfoURQT5ab+gR1GAB7/wGIZ3fjfofS4IIeBED12m1m+XO2dejKkSn87OAO2ktdUsC+5Cf8/5g5VWc0zujps5qLjPaWMYeIx5DWXPc3RXINBlJ27KShid4O/JbWue1+OTGVli+ZksxowfBRmoyWwit3+tsVMJCfuGyf7CKf0e99q451dNDfZRukd+0ikUkgHqfGJubnH/H+pdfaW6ZVbXiqK0X9FYqkM+WmNjaMTVw+e5U4Q8Fc5KWuNSYOQGJI6dJ0LTxozgvUXDhXZXlCTOS0TjAVhaE4gv30V23sD7xg+lwL0idfO/hRzpet/oacbgp+fVvrstBw/RlPnS9LkAicbUeJlyIvOuyNr4IUYOQZfrlh1wkbsOfyqOY4Bzp4KXgIFntcO8BtGS8jtHcgXci6+9lTAYFJ3ZhCIi/XIAQmdLrWSO6K5sHwRiOUNpWcB7KYADkhuxrsGxJ7jfxheE9FoSplyFOXCVDJxcctJuAgqhmFPeJE/Yu8902J1JMjFkDz15x8MDUkkFWpcDwkjTPkqjjmdjdCk3XoC+swZIC9gjWRAFN9+DtaSiDmU6ev7WnX6kTVeJdlo18s7lgAHpuOdMTVeZNmBlQIyK8ITWHUrJYugn3fz5ewFSi1uzqidYkp3KK5Ej9qf/QSlzndvgnIpV6yf5aUq5BYlvXz4LjhT/SamYsMkaqURKI0gxBHb0+C4r5u07OtRPvDqAzJVGJc0ue+oAUaSLd1RU2jklwGYB8CO//w== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MWHPR11MB1631.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230001)(6029001)(366004)(82960400001)(508600001)(38100700002)(8936002)(26005)(122000001)(186003)(107886003)(6506007)(7696005)(9686003)(53546011)(38070700005)(71200400001)(55016003)(8676002)(2906002)(86362001)(64756008)(66946007)(6636002)(76116006)(33656002)(54906003)(110136005)(52536014)(316002)(66446008)(4326008)(66556008)(66476007)(966005)(83380400001)(5660300002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?MFpaOG9nSWs1YXB6bXJOMkNNWmVzSFE3Y25IZWp3anR3dCtMWTNhWVNrYlNB?= =?utf-8?B?Yjg5TTVMZm1wZi95MlkzbVBwWWNsd1JrdjdSc0hpdHRYU3N5ZHBtbTJoWGtu?= =?utf-8?B?dC9NdU1qVnZiWWZ3NVRxOVdXRlNNdkNRTzlQb3prZnNBUkZqWGpBT0JwVmxy?= =?utf-8?B?Y3BQQi94aTNTUzErOFdoQm9xcVlsM0RRQjJlUktRQXg5Q1VtS2o0S2hNWUpi?= =?utf-8?B?V1NnMFNDbUNJc0tYcStMOWxvVWErUkZJUEI1MU1jTlBiWmIwb2VHZWp0eEdR?= =?utf-8?B?MkRtcVhRS05GRnkvS2dwY0lYTXJFUEsvaVVEMUVzVmJTTjB1dm1pR0ozRk9P?= =?utf-8?B?eTB3K2hQcWVTY0orRmZzSFFiUmQ4TEpzNlh0VVJFdTNwb2ZJZ3JxK2FRUERT?= =?utf-8?B?dUxTL3BpeWF0MFJGaTJDQk9rMjRzTW1PbUdzY3JFcS9xMkY2cUtaMjB4N2pD?= =?utf-8?B?SXdZK3VUVzZLQ3BqWjczRHZEYisxZ0FYTUo3NFdXTDBrSW1zclVoN2V6R2Jn?= =?utf-8?B?QnFPU3ZWNHZJajZIb242eGNFT1dCTXMvZFdsMnQxMmoyaDlqR0lTcWxTV0Iv?= =?utf-8?B?Z3drOUJZSVhpQTdrT1RpeHl6dHovQ2l4dG12ZDN2NFlRdHVZaXFxWUJ5UUNl?= =?utf-8?B?Ry94VE1MY3VPVWUrWmJCWWpHaVhvUS9pSWhaNVF1TjErNFFhVHJPamx1ZnBa?= =?utf-8?B?NThjWkpyeWdLZTV1TmNnUkZHWjVueEpNeHhNc1JFV3JDRWxYTFZIcHRpTmh0?= =?utf-8?B?dnJvdUk5TlVFaUFHZmtXKzBBMFhncW03MlhLaVJqWnpMUlpoWStacDZiclhO?= =?utf-8?B?WUxEdUFUNWZ1ZGJyaHUzR1FURW0rNG90NGp0UjU4UUo3bnIwSFNNRk9XNitL?= =?utf-8?B?aWhrazNDcVdoZTAyNVUvYmJQbXRYbzBmcE51alpSVWc3VGl5cEI3WUFGM1lw?= =?utf-8?B?LzMwMzEvZFhna3hRS0FiOGRmWjh6MkV0WDIxaHUyYnlhTmR1MWVHeVR4b3dt?= =?utf-8?B?aUlPU2o1ZzJLYlhkQ1YxanhBUU40bnJXZGcwNmpkWkN1L2NyY0JmS1FCcDdL?= =?utf-8?B?cUVRRjBhQytSWTlwL2hTQ3k5dW1wbEp0UG9ZVFlJYk5oV1ZVOVl6dXFoT0dN?= =?utf-8?B?dWY0NklzVVRzOU5QcVl6bVV1bDd1Z1dlV0xyYnJBV3VRQStCbzFDdkczRzBU?= =?utf-8?B?ZmFRSXdwdGd0cTVjeDR0VzR6ZjJOaDRqVS91R0RiNkFXT2RscmxxTXA1Vm41?= =?utf-8?B?SjBISUZRSkNKeTlHOFVwUG1WRlZFcEg5QTBSbFBEZEZMczVJblR4dEVhZHox?= =?utf-8?B?YTF1KzE3N0NMaUNSemFWTEhBZjNCbVBka0FQZFNlRHJ6UHhlWFNMVmdnQWgz?= =?utf-8?B?ejh6QklDY2Z0dGdtMk5vZExxUXR1ZVRmRDJGMEk0UjhBcmJvMFNGUHNRT0U2?= =?utf-8?B?U0VsWFVTdGVPeEhJSnY2ejNjUyt3azBnNXJjcG1lSmtSNTB0ZW4rK3ZFcmoy?= =?utf-8?B?NlMxa2dTYW1QenhKOFU5bjF0dkRtNmwzWE9Vc2I5WGNEWklTb2kxYStQNStv?= =?utf-8?B?Z0RNLzFKdVk0YjBKZEYvUXZaL2NYWjBCek5EdElYdW45TnNuaXpGdTRMWHpl?= =?utf-8?B?RkVjZ3QwSTZONmNGRGFXTk9ncmVHQ3lMZG4yUFJDSjJZM3E0aTR4Y1JrMEJ6?= =?utf-8?B?T3RJQ296MndSemJJczlRc2JWOVpQTmM1TDVzV0VCb3h6YTFMeTUwdE1lY3VT?= =?utf-8?B?SURkNUhmUWFtSTczVmdnYXNERGtKc0M1VnJVb1krdUNYN3dVbXh6R3Q3aHlB?= =?utf-8?B?Wmg2U2dhYWNYNFc4akJnaWpZSjdBbDEvRHYxQ1ZXMEdPa0ZVMkd4UnJVZGVl?= =?utf-8?B?a0ZvcWFtMkdRdlBBZm9ZT0pLMm9DYThxRENRRnlrWm5Ub3BjbEROQkpiS2ZY?= =?utf-8?B?Wkw4Yk8vdDZjSWF3MUo5MjJRMzNweUdNUTZxR2hEcFVxVGI5dTlWSUJaM0pC?= =?utf-8?B?NDAyWThGYnUwWnVJTkZmSHY0Rzk3L2NtVmMrdFFmcGJxME9QdWNQMW5POCsw?= =?utf-8?B?RSt5clovTmFQWDRIdGJvUjdaRXNyTDJuZm5lY3MvNlY3UjkxQ1Y1Sndtb05v?= =?utf-8?B?eUpsU3EzV2Y5UXNYeis5WmNKNk80UGF5WjR1QWNMaWttTWpTeUJSNG5qNkhi?= =?utf-8?Q?1MsE2NJ8HN0K9BETb4wO3LQ=3D?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MWHPR11MB1631.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: a5fcd5fe-c142-47e1-de4e-08d9fdb22926 X-MS-Exchange-CrossTenant-originalarrivaltime: 04 Mar 2022 07:39:48.4961 (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: KnDb6/g02rnLK2KWPCs6f4tDbndXyq7tvgRO8dYEqq3OhCA3uiM0GJABgo3BR8zR7R0cbcqb3pUbD+mEkf0zKA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR11MB2568 Return-Path: ray.ni@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 QWdyZWUuDQpZdSwNCmNhbiB5b3UgcGxlYXNlIGFkZCB0aGUgVWVmaUNwdUxpYiBpbiBbTGlicmFy eUNsYXNzZXMuSUEzMiwgTGlicmFyeUNsYXNzZXMuWDY0XSBpbnN0ZWFkIG9mIFtMaWJyYXJ5Q2xh c3Nlc10/DQoNCi0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQpGcm9tOiBkZXZlbEBlZGsyLmdy b3Vwcy5pbyA8ZGV2ZWxAZWRrMi5ncm91cHMuaW8+IE9uIEJlaGFsZiBPZiBBcmQgQmllc2hldXZl bA0KU2VudDogVGh1cnNkYXksIE1hcmNoIDMsIDIwMjIgNTo1OCBQTQ0KVG86IFB1LCBZdSA8eXUu cHVAaW50ZWwuY29tPg0KQ2M6IGVkazItZGV2ZWwtZ3JvdXBzLWlvIDxkZXZlbEBlZGsyLmdyb3Vw cy5pbz47IEFyZCBCaWVzaGV1dmVsIDxhcmRiK3RpYW5vY29yZUBrZXJuZWwub3JnPjsgU2FtaSBN dWphd2FyIDxzYW1pLm11amF3YXJAYXJtLmNvbT47IFlhbywgSmlld2VuIDxqaWV3ZW4ueWFvQGlu dGVsLmNvbT4NClN1YmplY3Q6IFJlOiBbZWRrMi1kZXZlbF0gW1BBVENIIHYxIDQvN10gU3RhbmRh bG9uZU1tUGtnOiBJbnZva2UgR2V0UGh5c2ljYWxBZGRyZXNzQml0cygpIGFuZCByZW1vdmUgdGhl IGR1cGxpY2F0ZWQgY29kZQ0KDQpPbiBXZWQsIDIgTWFyIDIwMjIgYXQgMDk6MjAsIFl1IFB1IDx5 dS5wdUBpbnRlbC5jb20+IHdyb3RlOg0KPg0KPiBSRUY6IGh0dHBzOi8vYnVnemlsbGEudGlhbm9j b3JlLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzM5NA0KPg0KPiBJbnZva2UgR2V0UGh5c2ljYWxBZGRy ZXNzQml0cygpIGRlZmluZWQgaW4gVWVmaUNwdVBrZyBmb3IgQ1BVIHBoeXNpY2FsIA0KPiBhZGRy ZXNzIG1hc2sgY2FsY3VsYXRpb24gYW5kIHJlbW92ZSB0aGUgZHVwbGljYXRlZCBjb2RlIGluIA0K PiBTdGFuZGFsb25lTW1Qa2dcTGlicmFyeVxTdGFuZGFsb25lTW1NZW1MaWJcWDg2U3RhbmRhbG9u ZU1tTWVtTGliSW50ZXJuDQo+IGFsLmMNCj4NCj4gQ2M6IEFyZCBCaWVzaGV1dmVsIDxhcmRiK3Rp YW5vY29yZUBrZXJuZWwub3JnPg0KPiBDYzogU2FtaSBNdWphd2FyIDxzYW1pLm11amF3YXJAYXJt LmNvbT4NCj4gQ2M6IEppZXdlbiBZYW8gPGppZXdlbi55YW9AaW50ZWwuY29tPg0KPg0KPiBTaWdu ZWQtb2ZmLWJ5OiBZdSBQdSA8eXUucHVAaW50ZWwuY29tPg0KPiAtLS0NCj4gIFN0YW5kYWxvbmVN bVBrZy9MaWJyYXJ5L1N0YW5kYWxvbmVNbU1lbUxpYi9YODZTdGFuZGFsb25lTW1NZW1MaWJJbnRl cm5hbC5jIHwgMTAgKystLS0tLS0tLQ0KPiAgU3RhbmRhbG9uZU1tUGtnL0xpYnJhcnkvU3RhbmRh bG9uZU1tTWVtTGliL1N0YW5kYWxvbmVNbU1lbUxpYi5pbmYgICAgICAgICAgfCAgMiArKw0KPiAg U3RhbmRhbG9uZU1tUGtnL1N0YW5kYWxvbmVNbVBrZy5kc2MgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgfCAgMSArDQo+ICAzIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9u cygrKSwgOCBkZWxldGlvbnMoLSkNCj4NCi4uLg0KPiBkaWZmIC0tZ2l0IA0KPiBhL1N0YW5kYWxv bmVNbVBrZy9MaWJyYXJ5L1N0YW5kYWxvbmVNbU1lbUxpYi9TdGFuZGFsb25lTW1NZW1MaWIuaW5m IA0KPiBiL1N0YW5kYWxvbmVNbVBrZy9MaWJyYXJ5L1N0YW5kYWxvbmVNbU1lbUxpYi9TdGFuZGFs b25lTW1NZW1MaWIuaW5mDQo+IGluZGV4IGIyOWQ5N2E3NDYwNy4uOTRmN2ZiYjFjNGY3IDEwMDY0 NA0KPiAtLS0gDQo+IGEvU3RhbmRhbG9uZU1tUGtnL0xpYnJhcnkvU3RhbmRhbG9uZU1tTWVtTGli L1N0YW5kYWxvbmVNbU1lbUxpYi5pbmYNCj4gKysrIGIvU3RhbmRhbG9uZU1tUGtnL0xpYnJhcnkv U3RhbmRhbG9uZU1tTWVtTGliL1N0YW5kYWxvbmVNbU1lbUxpYi5pbg0KPiArKysgZg0KPiBAQCAt NDMsMTIgKzQzLDE0IEBADQo+ICBbUGFja2FnZXNdDQo+ICAgIE1kZVBrZy9NZGVQa2cuZGVjDQo+ ICAgIFN0YW5kYWxvbmVNbVBrZy9TdGFuZGFsb25lTW1Qa2cuZGVjDQo+ICsgIFVlZmlDcHVQa2cv VWVmaUNwdVBrZy5kZWMNCj4NCj4gIFtMaWJyYXJ5Q2xhc3Nlc10NCj4gICAgQmFzZU1lbW9yeUxp Yg0KPiAgICBEZWJ1Z0xpYg0KPiAgICBIb2JMaWINCj4gICAgTWVtb3J5QWxsb2NhdGlvbkxpYg0K PiArICBVZWZpQ3B1TGliDQo+DQoNCklzbid0IHRoaXMgZGVwZW5kZW5jeSBYODYgb25seT8NCg0K DQoNCg0KDQo=