From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=192.55.52.136; helo=mga12.intel.com; envelope-from=jiewen.yao@intel.com; receiver=edk2-devel@lists.01.org Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 9A79D210DF518 for ; Tue, 7 Aug 2018 15:43:53 -0700 (PDT) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by fmsmga106.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 07 Aug 2018 15:43:52 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.51,456,1526367600"; d="scan'208,217";a="252824361" Received: from fmsmsx103.amr.corp.intel.com ([10.18.124.201]) by fmsmga006.fm.intel.com with ESMTP; 07 Aug 2018 15:42:33 -0700 Received: from fmsmsx101.amr.corp.intel.com (10.18.124.199) by FMSMSX103.amr.corp.intel.com (10.18.124.201) with Microsoft SMTP Server (TLS) id 14.3.319.2; Tue, 7 Aug 2018 15:42:33 -0700 Received: from shsmsx103.ccr.corp.intel.com (10.239.4.69) by fmsmsx101.amr.corp.intel.com (10.18.124.199) with Microsoft SMTP Server (TLS) id 14.3.319.2; Tue, 7 Aug 2018 15:42:32 -0700 Received: from shsmsx102.ccr.corp.intel.com ([169.254.2.226]) by SHSMSX103.ccr.corp.intel.com ([169.254.4.240]) with mapi id 14.03.0319.002; Wed, 8 Aug 2018 06:42:29 +0800 From: "Yao, Jiewen" To: Rafael Machado , Laszlo Ersek CC: Andrew Fish , "Ni, Ruiyu" , "edk2-devel@lists.01.org" Thread-Topic: [edk2] Question about memory map entries Thread-Index: AQHUD9w7IudPpcJcvUmy4biMcIrOvKR3m3eg///ivgCAALBvgIAAeyUAgDNsHQCAACLXAIAAIQcAgAASegCAABSRgIAABHoAgAAWjgCAB8NvAIAAwFbA Date: Tue, 7 Aug 2018 22:42:29 +0000 Message-ID: <74D8A39837DF1E4DA445A8C0B3885C503ACFC002@shsmsx102.ccr.corp.intel.com> References: <74D8A39837DF1E4DA445A8C0B3885C503AC75235@shsmsx102.ccr.corp.intel.com> <734D49CCEBEEF84792F5B80ED585239D5BD4FFA1@SHSMSX104.ccr.corp.intel.com> <17C6FC15-6D2E-41A6-8996-15E665C4D28F@apple.com> <40832a91-0eca-3b9f-f533-f98666295a25@redhat.com> <5aaec7be-37e0-39cf-8961-af7b20d14c51@redhat.com> In-Reply-To: Accept-Language: zh-CN, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiMzQ3ZmY5MTAtMjMwZS00NGMxLWIxZTMtNzI3NzAyYTk2OTczIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoiM1Z2dXd6cGJUWlh1T2VzdGNiekI1UlwvSVY1bFZrOEZ4RTkzbFg2ZGxGd0RkZWNsRm5DNzNoNk93Wkw2aXRYeTMifQ== x-ctpclassification: CTP_NT dlp-product: dlpe-windows dlp-version: 11.0.400.15 dlp-reaction: no-action x-originating-ip: [10.239.127.40] MIME-Version: 1.0 X-Content-Filtered-By: Mailman/MimeDel 2.1.27 Subject: Re: Question about memory map entries X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.27 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Aug 2018 22:43:53 -0000 Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 SGkNCkl0IGlzIHVuY2xlYXIgdG8gbWUgdGhhdCB3aGljaCB0eXBlIHlvdSBoYXZlIHB1dCB0byBN ZW1vcnlUeXBlSW5mbyB0YWJsZS4NCg0KQnkgZGVzaWduLCB3ZSBvbmx5IG5lZWQgcHV0IFJlc2Vy dmVkL0FjcGkvUnVudGltZSwgd2hpY2ggc2hvdWxkIGJlIHF1aXRlIHNtYWxsLg0KDQpEbyB5b3Ug cHV0IGFueSBvdGhlciB0eXBlIGludG8gTWVtb3J5VHlwZUluZm8gdGFibGU/DQoNClRoYW5rIHlv dQ0KWWFvIEppZXdlbg0KDQpGcm9tOiBSYWZhZWwgTWFjaGFkbyBbbWFpbHRvOnJhZmFlbHJvZHJp Z3Vlcy5tYWNoYWRvQGdtYWlsLmNvbV0NClNlbnQ6IFdlZG5lc2RheSwgQXVndXN0IDgsIDIwMTgg MzoxMiBBTQ0KVG86IExhc3psbyBFcnNlayA8bGVyc2VrQHJlZGhhdC5jb20+DQpDYzogQW5kcmV3 IEZpc2ggPGFmaXNoQGFwcGxlLmNvbT47IE5pLCBSdWl5dSA8cnVpeXUubmlAaW50ZWwuY29tPjsg ZWRrMi1kZXZlbEBsaXN0cy4wMS5vcmc7IFlhbywgSmlld2VuIDxqaWV3ZW4ueWFvQGludGVsLmNv bT4NClN1YmplY3Q6IFJlOiBbZWRrMl0gUXVlc3Rpb24gYWJvdXQgbWVtb3J5IG1hcCBlbnRyaWVz DQoNCkhpIGV2ZXJ5b25lDQoNCkJhc2VkIG9uIHRoZSBpbmZvcm1hdGlvbiBzaGFyZWQgYnkgdGhl IG1lbWJlcnMsIHRoZSB1bmRlcnN0YW5kaW5nIGlzIHRoYXQgdGhlIGN1cnJlbnQgc3RhdGUgb2Yg dGhlIHN5c3RlbSBtYXkgaW1wYWN0IGZ1dXRyZSBib290cy4NClRoZSBwcm9ibGVtIGlzIHRoYXQg aW4gbXkgY2FzZSwgZHVlIHRvIHNwZWNpZmljIHJlcXVpcmVtZW50cywgYmVmb3JlIGJvb3Rpbmcg d2UgbmVlZCB0byBzdHJlc3MgdGhlIHN5c3RlbSdzIG1lbW9yeSwgYWxsb2NhdGluZyBhIGJpZyBh bW91bnQgb2YgbWVtb3J5IGFuZCBkb2luZyBzb21lIG1lbW9yeSB2YWxpZGF0aW9uIGFsZ29yaXRo bXMuDQpTbyB0aGUgaGlnaCBudW1iZXIgb2YgYWxsb2NhdGlvbnMgYW5kIGZyZWVzIGlzIGJ5IGNo b2ljZSBhbmQgbm90IGJ5IG1pc3Rha2VzLg0KDQpDb25zaWRlcmluZyB0aGlzLiBJcyB0aGVyZSBh bnkgd2F5IHRvIGJ5cGFzcyB0aGUgTWVtb3J5VHlwZUluZm9ybWF0aW9uIHZhciBzdG9yZSBhY3Rp b25zPw0KDQpUaGFua3MgYW5kIFJlZ2FyZHMNClJhZmFlbA0KDQpFbSBxdWksIDIgZGUgYWdvIGRl IDIwMTggw6BzIDE3OjM5LCBMYXN6bG8gRXJzZWsgPGxlcnNla0ByZWRoYXQuY29tPG1haWx0bzps ZXJzZWtAcmVkaGF0LmNvbT4+IGVzY3JldmV1Og0KT24gMDgvMDIvMTggMjE6MTgsIFJhZmFlbCBN YWNoYWRvIHdyb3RlOg0KPiBKdXN0IGZvdW5kIHNvbWV0aGluZyBpbnRlcmVzdGluZy4NCj4gQmFz ZWQgb24gdGhlIGxvZ3MgZnJvbSB0aGUgc2VyaWFsIHBvcnQuDQo+DQo+IFRoaXMgc3lzdGVtIHdv cmtzIGZpbmU6DQo+DQo+ICJQZWlJbnN0YWxsUGVpTWVtb3J5IE1lbW9yeUJlZ2luIDB4OTNENTAw MDAsIE1lbW9yeUxlbmd0aCAweEEyQjAwMDANCj4gVGVtcCBTdGFjayA6IEJhc2VBZGRyZXNzPTB4 NDAwMDAwIExlbmd0aD0weDgwMDAwDQo+IFRlbXAgSGVhcCAgOiBCYXNlQWRkcmVzcz0weDQ4MDAw MCBMZW5ndGg9MHg4MDAwMA0KPiBUb3RhbCB0ZW1wb3JhcnkgbWVtb3J5OiAgICAxMDQ4NTc2IGJ5 dGVzLg0KPiAgIHRlbXBvcmFyeSBtZW1vcnkgc3RhY2sgZXZlciB1c2VkOiA1MjQyODggYnl0ZXMu DQo+ICAgdGVtcG9yYXJ5IG1lbW9yeSBoZWFwIHVzZWQ6ICAgICAgIDYzMzA0IGJ5dGVzLg0KPiBP bGQgU3RhY2sgc2l6ZSA1MjQyODgsIE5ldyBzdGFjayBzaXplIDUyNDI4OA0KPiBTdGFjayBIb2I6 IEJhc2VBZGRyZXNzPTB4OTNENTAwMDAgTGVuZ3RoPTB4ODAwMDANCj4gSGVhcCBPZmZzZXQgPSAw eDkzOTUwMDAwIFN0YWNrIE9mZnNldCA9IDB4OTM5NTAwMDANCj4gTG9hZGluZyBQRUlNIGF0IDB4 MDAwOURGRjQwMDAgRW50cnlQb2ludD0weDAwMDlERkY0MjYwIFBlaUNvcmUuZWZpIg0KPiAuLi4N Cj4gIkNvcmVJbml0aWFsaXplTWVtb3J5U2VydmljZXM6DQo+ICAgQmFzZUFkZHJlc3MgLSAweDkz REUxMDAwIExlbmd0aCAtIDB4ODEzNTAwMCBNaW5pbWFsTWVtb3J5U2l6ZU5lZWRlZCAtDQo+IDB4 NUFDMDAwMCINCj4NCj4gVGhpcyBvbmUgaXMgYnJpY2tlZDoNCj4NCj4gIlBlaUluc3RhbGxQZWlN ZW1vcnkgTWVtb3J5QmVnaW4gMHg5QzkwMDAsIE1lbW9yeUxlbmd0aCAweDlENjM3MDAwDQo+IFRl bXAgU3RhY2sgOiBCYXNlQWRkcmVzcz0weDQwMDAwMCBMZW5ndGg9MHg4MDAwMA0KPiBUZW1wIEhl YXAgIDogQmFzZUFkZHJlc3M9MHg0ODAwMDAgTGVuZ3RoPTB4ODAwMDANCj4gVG90YWwgdGVtcG9y YXJ5IG1lbW9yeTogICAgMTA0ODU3NiBieXRlcy4NCj4gICB0ZW1wb3JhcnkgbWVtb3J5IHN0YWNr IGV2ZXIgdXNlZDogNTI0Mjg4IGJ5dGVzLg0KPiAgIHRlbXBvcmFyeSBtZW1vcnkgaGVhcCB1c2Vk OiAgICAgICA2MzMwNCBieXRlcy4NCj4gT2xkIFN0YWNrIHNpemUgNTI0Mjg4LCBOZXcgc3RhY2sg c2l6ZSA1MjQyODgNCj4gU3RhY2sgSG9iOiBCYXNlQWRkcmVzcz0weDlDOTAwMCBMZW5ndGg9MHg4 MDAwMA0KPiBIZWFwIE9mZnNldCA9IDB4NUM5MDAwIFN0YWNrIE9mZnNldCA9IDB4NUM5MDAwDQo+ IExvYWRpbmcgUEVJTSBhdCAweDAwMDlERkY0MDAwIEVudHJ5UG9pbnQ9MHgwMDA5REZGNDI2MCBQ ZWlDb3JlLmVmaSINCj4gLi4uDQo+ICJDb3JlSW5pdGlhbGl6ZU1lbW9yeVNlcnZpY2VzOg0KPiAg IEJhc2VBZGRyZXNzIC0gMHgwIExlbmd0aCAtIDB4MCBNaW5pbWFsTWVtb3J5U2l6ZU5lZWRlZCAt IDB4OThFNDcwMDANCj4gIg0KPiAuLi4NCj4gIkFTU0VSVF9FRklfRVJST1IgKFN0YXR1cyA9IE91 dCBvZiBSZXNvdXJjZXMpDQo+IEFTU0VSVCBbRHhlQ29yZV0gLi4uXE1kZU1vZHVsZVBrZ1xDb3Jl XER4ZVxEeGVNYWluXER4ZU1haW4uYygyOTkpOg0KPiAhRUZJX0VSUk9SIChTdGF0dXMpDQo+IEFs bG9jYXRlUG9vbFBhZ2VzOiBmYWlsZWQgdG8gYWxsb2NhdGUgMSBwYWdlcw0KPiBBbGxvY2F0ZVBv b2w6IGZhaWxlZCB0byBhbGxvY2F0ZSAxMjAgYnl0ZXMiDQoNClRoZSBsb2NhdGlvbiBhbmQgdGhl IHNpemUgb2YgdGhlIHBlcm1hbmVudCBQRUkgUkFNIGFyZSBleHRyZW1lbHkNCmRpZmZlcmVudCBi ZXR3ZWVuIHRoZSB0d28gY2FzZXMuDQoNCi0gRnVuY3Rpb25hbCBzeXN0ZW06DQoNCiAgUGVpSW5z dGFsbFBlaU1lbW9yeSBNZW1vcnlCZWdpbiAweDkzRDUwMDAwLCBNZW1vcnlMZW5ndGggMHhBMkIw MDAwDQoNCiAgQmFzZSBhZGRyZXNzIGlzIH4yMzY1IE1CLCBzaXplIGlzIH4xNjIgTUINCg0KLSBV bmJvb3RhYmxlIHN5c3RlbToNCg0KICBQZWlJbnN0YWxsUGVpTWVtb3J5IE1lbW9yeUJlZ2luIDB4 OUM5MDAwLCBNZW1vcnlMZW5ndGggMHg5RDYzNzAwMA0KDQogIEJhc2UgYWRkcmVzcyBpcyB+OSBN Qiwgc2l6ZSBpcyB+MjUxOCBNQg0KDQpUaGUgbnVtYmVycyBpbiB0aGUgc2Vjb25kICh1bmJvb3Rh YmxlKSBjYXNlIGxvb2sgdmVyeSB1bnVzdWFsIHRvIG1lLiBUaGUNCnBlcm1hbmVudCBQRUkgUkFN IGlzIHVzdWFsbHkgdGVucyBvciAobWF5YmUpIGh1bmRyZWRzIG9mIG1lZ2FieXRlcyBpbg0Kc2l6 ZSwgYW5kIHRlbmRzIHRvIHN0YXJ0IG11Y2ggaGlnaGVyICh1c3VhbGx5IGFzIGhpZ2ggYXMgcG9z c2libGUgdW5kZXINCjRHQiwgb24geDg2IGFueXdheSkuDQoNCg0KQ29uc3VsdCB0aGUgZm9sbG93 aW5nIHNlY3Rpb25zIGluIHRoZSBQSSBzcGVjICh2MS42KSwgdm9sdW1lIDM6DQoNCi0gNC4zIEV4 YW1wbGUgSE9CIFByb2R1Y2VyIFBoYXNlIE1lbW9yeSBNYXAgYW5kIFVzYWdlDQotIDUuMyBQSElU IEhPQg0KDQpUaGUgQ29yZUluaXRpYWxpemVNZW1vcnlTZXJ2aWNlcygpIGZ1bmN0aW9uIHNlYXJj aGVzIHRoZSBIT0IgbGlzdCBmb3IgYQ0KdGVzdGVkIHN5c3RlbSBtZW1vcnkgIlJlc291cmNlIERl c2NyaXB0b3IgSE9CIHRoYXQgY29udGFpbnMgUEhJVCByYW5nZQ0KRWZpRnJlZU1lbW9yeUJvdHRv bS4uRWZpRnJlZU1lbW9yeVRvcCIuIChRdW90ZWQgYSBjb21tZW50IGZyb20gdGhlIGNvZGUuKQ0K DQpCYXNpY2FsbHksIHRoZSBmdW5jdGlvbiBsb2NhdGVzIHRoZSBzeXN0ZW0gUkFNIEhPQiB0aGF0 IGNvbnRhaW5zIHRoZQ0KZnJlZSBwZXJtYW5lbnQgUEVJIFJBTS4NCg0KSWYgdGhlIHNlYXJjaCBm YWlscywgdGhlbiB3ZSB0cmlwIGFuIEFTU0VSVCgpLiBUaGlzIGRvZXMgbm90IGhhcHBlbiBpbg0K eW91ciBjYXNlLCB0aGUgc2VhcmNoIHN1Y2NlZWRzLg0KDQpJZiB0aGUgc2VhcmNoIHN1Y2NlZWRz LCB0aGVuIHRoZSBEWEUgY29yZSB3aWxsIHRyeSB0byBpbml0aWFsaXplIGl0c2VsZg0KaW4gb25l IG9mIHRocmVlIGxvY2F0aW9ucyBpbiB0aGUgUkFNIGFyZWEgZGVmaW5lZCBieSB0aGF0IEhPQi4g SW4NCmRlc2NlbmRpbmcgcHJlZmVyZW5jZSBvcmRlcjogYWJvdmUgdGhlIHBlcm1hbmVudCBQRUkg UkFNLCB3aXRoaW4gdGhlDQpmcmVlIHBlcm1hbmVudCBQRUkgUkFNLCBhbmQgYmVsb3cgdGhlIHBl cm1hbmVudCBQRUkgUkFNLg0KDQpUaGVyZSBpcyBhbHNvIGEgZmFsbGJhY2sgKGEgZm91cnRoIG9w dGlvbikgd2hlbiBldmVuIHRoZSB0aGlyZCBvbmUgZnJvbQ0KYmVmb3JlIHByb3ZlcyB0b28gc21h bGwgLS0gdGhlIGZ1bmN0aW9uIHdpbGwgdGhlbiBzZWFyY2ggYWdhaW4gZm9yIGENCm1lbW9yeSBk ZXNjcmlwdG9yIEhPQiwgdG9wLWRvd24sIGF2b2lkaW5nIHRoZSBvbmUgSE9CIHRoYXQgaXQgZm91 bmQNCmVhcmxpZXIgdG8gY29udGFpbiB0aGUgcGVybWFuZW50IFBFSSBSQU0gKGJlY2F1c2UsIGFs bCB0aHJlZSBvcHRpb25zIGZvcg0KdGhhdCBoYXZlIGFscmVhZHkgZmFpbGVkLCBzZWUgYWJvdmUp Lg0KDQpBcyB0aGUgcmVzdWx0IG9mIHRoaXMgc2VhcmNoLCB5b3VyIGJyb2tlbiBzeXN0ZW0gZmlu aXNoZXMgd2l0aDoNCg0KQmFzZUFkZHJlc3MgLSAweDAgTGVuZ3RoIC0gMHgwIE1pbmltYWxNZW1v cnlTaXplTmVlZGVkIC0gMHg5OEU0NzAwMA0KDQoiTWluaW1hbE1lbW9yeVNpemVOZWVkZWQiIGlu Y2x1ZGVzIHRoZSBwcmV2aW91cyBtZWFzdXJlbWVudHMgZnJvbQ0KTWVtb3J5VHlwZUluZm9ybWF0 aW9uLCBhbmQgdGhlIGNvbmNyZXRlIHZhbHVlIGlzIHZlcnkgc3RyYW5nZSAtLSBpdA0Kc2VlbXMg dG8gaW1wbHkgdGhhdCB5b3UgbmVlZCB+MjQ0NiBNQiBmb3IgaW5pdGlhbGl6aW5nIHRoZSBEWEUg Y29yZS4NCkl0J3Mgbm90IHN1cnByaXNpbmcgdGhhdCB0aGUgZnVuY3Rpb24gY2Fubm90IGZpdCB0 aGF0IGFueXdoZXJlLCBpbg0KZWl0aGVyIG9mIHRoZSBmb3VyIG9wdGlvbnMgZGVzY3JpYmVkIGFi b3ZlLg0KDQpJZiB5b3VyIHN5c3RlbSBoYXMgbW9yZSAoaGlnaCkgUkFNIHRvIHNwYXJlLCB0cnkg dG8gaW5zdGFsbCBhIHJlc291cmNlDQpkZXNjcmlwdG9yIEhPQiBmb3IgaXQuIFRoZW4gdGhlIGZv dXJ0aCBvcHRpb24gbWlnaHQgc3VjY2VlZC4NCg0KSG9uZXN0bHkgdGhvdWdoLCB0aG9zZSBwZXJt YW5lbnQgUEVJIFJBTSB2YWx1ZXMgKGJhc2UgYWRkcmVzcyBhdCB+OSBNQiwNCnNpemUgfjI1MTgg TUIpIGxvb2sgc3VwZXIgZmlzaHkgdG8gbWUgaW4gdGhlIGZpcnN0IHBsYWNlLiBTb21ldGhpbmcg bXVzdA0KYmUgd3JvbmcgaW4gdGhlIFBFSSBwaGFzZSB3aXRoIHRoZSBjYWxjdWxhdGlvbiBvZiB0 aG9zZSBwYXJhbWV0ZXJzLg0KUG9zc2libHksIHRoZSBtZW1vcnkgcmVzb3VyY2UgZGVzY3JpcHRv ciBIT0JzIGNvdWxkIGJlIHdyb25nIHRvby4NCg0KDQouLi4gQ29uc2lkZXJpbmcgY29tbWl0IDNh MDViMTMxMDZkMSAoIk1kZU1vZHVsZVBrZyBEeGVDb3JlOiBUYWtlIHRoZQ0KcmFuZ2UgaW4gcmVz b3VyY2UgSE9CIGZvciBQSElUIGFzIGhpZ2hlciBwcmlvcml0eSIsIDIwMTUtMDktMTgpLCBpdCB3 cml0ZXMsDQoNCiJBbHNvIGxldCB0aGUgbWluaW1hbCBtZW1vcnkgc2l6ZSBuZWVkZWQgaW5jbHVk ZSB0aGUgdG90YWwgbWVtb3J5IGJpbg0Kc2l6ZSBuZWVkZWQgdG8gbWFrZSBzdXJlIG1lbW9yeSBi aW4gY291bGQgYmUgYWxsb2NhdGVkIHN1Y2Nlc3NmdWxseS4iDQoNClRoaXMgaXMgdGhlIHJlYXNv biAiTWluaW1hbE1lbW9yeVNpemVOZWVkZWQiIGluY2x1ZGVzDQpNZW1vcnlUeXBlSW5mb3JtYXRp b24uIE5vcm1hbGx5LCBNZW1vcnlUeXBlSW5mb3JtYXRpb24gdHJhY2tzIGxvbmctdGVybQ0KbWF4 aW11bXMgdGhhdCBhcmUgbmVjZXNzYXJ5IGZvciBib290aW5nIGFuIE9TIHdpdGhvdXQgbWVtb3J5 IG1hcA0KZnJhZ21lbnRhdGlvbiAoaW5jbHVkaW5nIFM0IHJlc3VtZSkuIEhvd2V2ZXIsIGlmIHlv dSBoYXZlIGEgVUVGSQ0KYXBwbGljYXRpb24gdGhhdCBhbGxvY2F0ZXMgaHVnZSBhbW91bnRzIG9m IG1lbW9yeSwgYW5kIHRoZW4gKmRvZXNuJ3QqDQpib290IGFuIE9TLCB0aGVuIGl0IGNvdWxkIGlu dmFsaWRhdGUgTWVtb3J5VHlwZUluZm9ybWF0aW9uLiBCZWNhdXNlLCB0aGUNCm1heGltdW1zIHRo YXQgTWVtb3J5VHlwZUluZm9ybWF0aW9uIHJlcHJlc2VudHMsIG5vIGxvbmdlciByZWZsZWN0DQpy ZXF1aXJlbWVudHMgZm9yIGJvb3RpbmcgYW4gT1MuIEluIHRoYXQgY2FzZSwgdGhlDQoiTWluaW1h bE1lbW9yeVNpemVOZWVkZWQiIGFzc3VtcHRpb24gKGZyb20gY29tbWl0IDNhMDViMTMxMDZkMSks IGZvcg0KaW5pdGlhbGl6aW5nIHRoZSBEWEUgY29yZSwgY291bGQgYmUgaW52YWxpZCB0b28uDQoN ClRoYW5rcw0KTGFzemxvDQo=