From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: intel.com, ip: 192.55.52.88, mailfrom: nathaniel.l.desimone@intel.com) Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by groups.io with SMTP; Fri, 13 Sep 2019 16:24:35 -0700 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga002.jf.intel.com ([10.7.209.21]) by fmsmga101.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 13 Sep 2019 16:24:34 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.64,492,1559545200"; d="scan'208";a="197717681" Received: from orsmsx101.amr.corp.intel.com ([10.22.225.128]) by orsmga002.jf.intel.com with ESMTP; 13 Sep 2019 16:24:34 -0700 Received: from orsmsx160.amr.corp.intel.com (10.22.226.43) by ORSMSX101.amr.corp.intel.com (10.22.225.128) with Microsoft SMTP Server (TLS) id 14.3.439.0; Fri, 13 Sep 2019 16:24:34 -0700 Received: from orsmsx114.amr.corp.intel.com ([169.254.8.225]) by ORSMSX160.amr.corp.intel.com ([169.254.13.218]) with mapi id 14.03.0439.000; Fri, 13 Sep 2019 16:24:33 -0700 From: "Nate DeSimone" To: "devel@edk2.groups.io" , "Kubacki, Michael A" CC: "Agyeman, Prince" , "Bi, Dandan" , "Chaganty, Rangasai V" , "Chiu, Chasel" , "Gao, Liming" , "Kinney, Michael D" , "Sinha, Ankit" , "Wei, David Y" Subject: Re: [edk2-devel] [edk2-platforms][PATCH V1 1/1] Platform/Intel/Readme.md: Content update Thread-Topic: [edk2-devel] [edk2-platforms][PATCH V1 1/1] Platform/Intel/Readme.md: Content update Thread-Index: AQHVanwUkHnyUgCYzU+s1ekwGGIfp6cqtScA Date: Fri, 13 Sep 2019 23:24:32 +0000 Message-ID: <2b7dd3c6-a07d-60c0-64a6-b906e995ca57@intel.com> References: <20190913214144.47760-1-michael.a.kubacki@intel.com> In-Reply-To: <20190913214144.47760-1-michael.a.kubacki@intel.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:68.0) Gecko/20100101 Thunderbird/68.0 x-originating-ip: [10.7.159.63] MIME-Version: 1.0 Return-Path: nathaniel.l.desimone@intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 SGkgTWljaGFlbCwgQ29tbWVudHMgYmVsb3cuDQoNCk9uIDkvMTMvMjAxOSAyOjQxIFBNLCBLdWJh Y2tpLCBNaWNoYWVsIEEgd3JvdGU6DQo+IFRoaXMgY2hhbmdlIG1ha2VzIHRoZSBmb2xsb3dpbmcg dXBkYXRlczoNCj4gICAgMS4gQWRkIFNpbWljc09wZW5Cb2FyZFBrZyBkZXRhaWxzLg0KPiAgICAy LiBVcGRhdGUgUHl0aG9uIGluc3RydWN0aW9ucyB0byBQeXRob24gMy54IGFuZCBtZW50aW9uDQo+ ICAgICAgIFB5dGhvbiAyLnggZGVwcmVjYXRpb24uDQo+ICAgIDMuIEFkZCBMaW51eCBidWlsZCBl bnZpcm9ubWVudCBzZXQgdXAgaW5zdHJ1Y3Rpb25zLg0KPiAgICA0LiBVcGRhdGUgc3VwcG9ydGVk IGNvbXBpbGVyIGFuZCB0b29sIHZlcnNpb25zIHRvIG5ld2VyIHZlcnNpb25zIHRlc3RlZC4NCj4g ICAgICAgKiBVYnVudHUgYnVpbGQ6IDE2LjA0LjUgTFRTIHRvIDE4LjA0LjEgTFRTDQo+ICAgICAg ICogaUFTTDogMjAxNjA1MjcgdG8gMjAxOTA4MTYNCj4gICAgICAgKiBOQVNNOiAyLjExLjA4IHRv IDIuMTIuMDINCj4gICAgNS4gVXBkYXRlIENsZXZvT3BlbkJvYXJkUGtnIGRldGFpbHMuDQo+ICAg IDYuIEFkZCBpbnN0cnVjdGlvbnMgdG8gYnVpbGQgcGFja2FnZXMgKGUuZy4gQWR2YW5jZWRGZWF0 dXJlUGtnKS4NCj4gICAgNi4gVXBkYXRlIFBsYW5uZWQgQWN0aXZpdGllcyBhbmQgSWRlYXMgc2Vj dGlvbnMuDQo+DQo+IENjOiBBZ3llbWFuIFByaW5jZSA8cHJpbmNlLmFneWVtYW5AaW50ZWwuY29t Pg0KPiBDYzogRGFuZGFuIEJpIDxkYW5kYW4uYmlAaW50ZWwuY29tPg0KPiBDYzogU2FpIENoYWdh bnR5IDxyYW5nYXNhaS52LmNoYWdhbnR5QGludGVsLmNvbT4NCj4gQ2M6IENoYXNlbCBDaGl1IDxj aGFzZWwuY2hpdUBpbnRlbC5jb20+DQo+IENjOiBMaW1pbmcgR2FvIDxsaW1pbmcuZ2FvQGludGVs LmNvbT4NCj4gQ2M6IE5hdGUgRGVTaW1vbmUgPG5hdGhhbmllbC5sLmRlc2ltb25lQGludGVsLmNv bT4NCj4gQ2M6IE1pY2hhZWwgRCBLaW5uZXkgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPg0K PiBDYzogQW5raXQgU2luaGEgPGFua2l0LnNpbmhhQGludGVsLmNvbT4NCj4gQ2M6IFdlaSBEYXZp ZCBZIDxkYXZpZC55LndlaUBpbnRlbC5jb20+DQo+IFNpZ25lZC1vZmYtYnk6IE1pY2hhZWwgS3Vi YWNraSA8bWljaGFlbC5hLmt1YmFja2lAaW50ZWwuY29tPg0KPiAtLS0NCj4gICBQbGF0Zm9ybS9J bnRlbC9SZWFkbWUubWQgfCAxMDUgKysrKysrKysrKysrKy0tLS0tLS0NCj4gICAxIGZpbGUgY2hh bmdlZCwgNzEgaW5zZXJ0aW9ucygrKSwgMzQgZGVsZXRpb25zKC0pDQo+DQo+IGRpZmYgLS1naXQg YS9QbGF0Zm9ybS9JbnRlbC9SZWFkbWUubWQgYi9QbGF0Zm9ybS9JbnRlbC9SZWFkbWUubWQNCj4g aW5kZXggM2NhZjM2Mjk4My4uMzM0YzYxZTAzNyAxMDA2NDQNCj4gLS0tIGEvUGxhdGZvcm0vSW50 ZWwvUmVhZG1lLm1kDQo+ICsrKyBiL1BsYXRmb3JtL0ludGVsL1JlYWRtZS5tZA0KPiBAQCAtNTYs NiArNTYsNyBAQCBBIFVFRkkgZmlybXdhcmUgaW1wbGVtZW50YXRpb24gdXNpbmcgTWluUGxhdGZv cm1Qa2cgaXMgY29uc3RydWN0ZWQgdXNpbmcgdGhlIGZvbA0KPiAgICogVGhlIGBDbGV2b09wZW5C b2FyZFBrZ2AgY29udGFpbnMgYm9hcmQgaW1wbGVtZW50YXRpb25zIGZvciBDbGV2byBzeXN0ZW1z Lg0KPiAgICogVGhlIGBLYWJ5bGFrZU9wZW5Cb2FyZFBrZ2AgY29udGFpbnMgYm9hcmQgaW1wbGVt ZW50YXRpb25zIGZvciBLYWJ5IExha2Ugc3lzdGVtcy4NCj4gICAqIFRoZSBgUHVybGV5T3BlbkJv YXJkUGtnYCBjb250YWlucyBib2FyZCBpbXBsZW1lbnRhdGlvbnMgZm9yIFB1cmxleSBzeXN0ZW1z Lg0KPiArKiBUaGUgYFNpbWljc09wZW5Cb2FyZFBrZ2AgY29udGFpbnMgYm9hcmQgaW1wbGVtZW50 YXRpb25zIGZvciB0aGUgU2ltaWNzIGhhcmR3YXJlIHNpbXVsYXRvci4NCj4gICAqIFRoZSBgV2hp c2tleWxha2VPcGVuQm9hcmRQa2dgIGNvbnRhaW5zIGJvYXJkIGltcGxlbWVudGF0aW9ucyBmb3Ig V2hpc2tleSBMYWtlIHN5c3RlbXMuDQo+ICAgDQo+ICAgIyMgQm9hcmQgUGFja2FnZSBPcmdhbml6 YXRpb24NCj4gQEAgLTgzLDEwICs4NCwxOSBAQCByZXR1cm4gYmFjayB0byB0aGUgbWluaW11bSBw bGF0Zm9ybSBjYWxsZXIuDQo+ICAgICAtIEluc3RhbGwgaW50byBgYGBDOlxBU0xgYGAgdG8gbWF0 Y2ggZGVmYXVsdCB0b29sc19kZWYudHh0IGNvbmZpZ3VyYXRpb24uDQo+ICAgKiBOQVNNIGFzc2Vt YmxlcjogIEF2YWlsYWJsZSBmcm9tOiBodHRwOi8vd3d3Lm5hc20udXMvDQo+ICAgICAtIEluc3Rh bGwgaW50byBgYGBDOlxOQVNNYGBgIHRvIG1hdGNoIGRlZmF1bHQgdG9vbHNfZGVmLnR4dCBjb25m aWd1cmF0aW9uLg0KPiAtKiBQeXRob24gMi43LjY6ICBBdmFpbGFibGUgZnJvbTogaHR0cHM6Ly93 d3cucHl0aG9uLm9yZy9kb3dubG9hZC9yZWxlYXNlcy8yLjcuNi8NCj4gLSAgLSBJbnN0YWxsIGlu dG8gYGBgQzpcUHl0aG9uMjdgYGAgdG8gbWF0Y2ggZGVmYXVsdCB0b29sc19kZWYudHh0IGNvbmZp Z3VyYXRpb24uDQo+IC0gIC0gQWRkIEM6XFB5dGhvbjI3IHRvIHlvdXIgcGF0aA0KPiAtICAtIE90 aGVyIHZlcnNpb25zIG9mIDIuNyBtYXkgYWxzbyB3b3JrIGZpbmUuDQo+ICsqIFB5dGhvbiAzLjcu MzogIEF2YWlsYWJsZSBmcm9tOiBodHRwczovL3d3dy5weXRob24ub3JnL2Rvd25sb2Fkcy9yZWxl YXNlL3B5dGhvbi0zNzMvDQo+ICsgIC0gT3RoZXIgdmVyc2lvbnMgb2YgUHl0aG9uIDMueCBzaG91 bGQgYmUgY29tcGF0aWJsZS4NCj4gKyAgLSBJdCBpcyByZWNvbW1lbmRlZCB0byB1c2UgdGhlIFB5 dGhvbiBsYXVuY2hlciB0byBlbnN1cmUgdGhlIFB5dGhvbiBidWlsZCBzY3JpcHQgaXMgbGF1bmNo ZWQgdXNpbmcgUHl0aG9uIDMuDQo+ICsgICAgLSBFLmcuICJweSAtMy43IGJ1aWxkX2Jpb3MucHkg LWwiDQo+ICsNCj4gKyMjICoqTGludXggQnVpbGQgSW5zdHJ1Y3Rpb25zKioNCj4gKw0KPiArIyMj IFByZS1yZXF1aXNpdGVzDQo+ICsNCj4gKyAqIFNldCB1cCBhIEVESyBJSSBidWlsZCBlbnZpcm9u bWVudCBmb3IgTGludXggZm9sbG93aW5nIHRoZSBpbnN0cnVjdGlvbnMgaW4NCj4gKyAgIFtVc2lu ZyBFREsgSUkgd2l0aCBOYXRpdmUgR0NDXShodHRwczovL2dpdGh1Yi5jb20vdGlhbm9jb3JlL3Rp YW5vY29yZS5naXRodWIuaW8vd2lraS9Vc2luZy1FREstSUktd2l0aC1OYXRpdmUtR0NDKS4NCj4g KyAqIFByb2NlZWQgdG8gdGhlIFtDb21tb24gRURLIElJIGJ1aWxkIGluc3RydWN0aW9ucyBmb3Ig TGludXhdKGh0dHBzOi8vZ2l0aHViLmNvbS90aWFub2NvcmUvdGlhbm9jb3JlLmdpdGh1Yi5pby93 aWtpL0NvbW1vbi1pbnN0cnVjdGlvbnMpDQo+ICsgICB0byB2ZXJpZnkgeW91ciBiYXNpYyBFREsg SUkgYnVpbGQgZW52aXJvbm1lbnQgaXMgc2V0IHVwIHByb3Blcmx5Lg0KPiAgIA0KPiAgICMjIyBE b3dubG9hZCB0aGUgcmVxdWlyZWQgY29tcG9uZW50cw0KPiAgIA0KPiBAQCAtMTA2LDExICsxMTYs MTEgQEAgcmV0dXJuIGJhY2sgdG8gdGhlIG1pbmltdW0gcGxhdGZvcm0gY2FsbGVyLg0KPiAgICog RlNQIHJlcG9zaXRvcnkNCj4gICAgICogYGBnaXQgY2xvbmUgaHR0cHM6Ly9naXRodWIuY29tL0lu dGVsRnNwL0ZTUC5naXRgYA0KPiAgIA0KPiAtIyMjIEJ1aWxkDQo+ICsjIyMgQm9hcmQgQnVpbGRz DQo+ICAgDQo+ICAgKipCdWlsZGluZyB3aXRoIHRoZSBweXRob24gc2NyaXB0KioNCj4gICANCj4g LTEuIE9wZW4gY29tbWFuZCB3aW5kb3csIGdvIHRvIHRoZSB3b3Jrc3BhY2UgZGlyZWN0b3J5LCBl LmcuIGM6XEthYnlsYWtlIG9yIH4vS2FieWxha2UgaW4gdGhlIGNhc2Ugb2YgYSBsaW51eCBPUw0K PiArMS4gT3BlbiBjb21tYW5kIHdpbmRvdywgZ28gdG8gdGhlIHdvcmtzcGFjZSBkaXJlY3Rvcnks IGUuZy4gYzpcRWRrMldvcmtzcGFjZSBvciB+L0VkazJXb3Jrc3BhY2UgaW4gdGhlIGNhc2Ugb2Yg YSBsaW51eCBPUw0KPiAgIDIuIElmIHVzaW5nIGEgbGludXggT1MNCj4gICAgICAqIFR5cGUgImNk IGVkazIiDQo+ICAgICAgKiBUeXBlICJzb3VyY2UgZWRrc2V0dXAuc2giDQo+IEBAIC0xNDYsMTEg KzE1NiwxOSBAQCByZXR1cm4gYmFjayB0byB0aGUgbWluaW11bSBwbGF0Zm9ybSBjYWxsZXIuDQo+ ICAgICAqIFR5cGUgInB5dGhvbiBidWlsZF9iaW9zLnB5IC1oIg0KPiAgIA0KPiAgICogTm90ZQ0K PiAtICAqIFB5dGhvbiAyLjcuMTYgYW5kIFB5dGhvbiAzLjcuMyBjb21wYXRpYmxlDQo+IC0gICog U29tZSBkZXBlbmRlbmN5IFB5dGhvbiBzY3JpcHRzIG1pZ2h0IG9ubHkgc3VwcG9ydCAyLnggb3Ig My54LCBpZiB0aGF0IGhhcHBlbmVkIHVzZQ0KPiAtICAgICJweSAtMiIgb3IgInB5IC0zIiB0byBs YXVuY2ggYnVpbGRfYmlvcy5weQ0KPiAtICAqIFRoaXMgcHl0aG9uIGJ1aWxkIHNjcmlwdCBoYXMg YmVlbiB0ZXN0ZWQgb24gV2luZG93cyAxMCBhbmQgVWJ1bnR1IDE2LjA0LjUgTFRTDQo+IC0gICog U2VlIFtjcm9zcy1wbGF0Zm9ybSBsaW1pdGF0aW9uc10oI0tub3duLWxpbWl0YXRpb25zKQ0KPiAr ICAqIFRoZSBQeXRob24gYnVpbGQgc2NyaXB0cyB3ZXJlIGNvbXBhdGlibGUgd2l0aCBQeXRob24g Mi43LjE2LiBCdXQgUHl0aG9uIDIueCBzdXBwb3J0IGlzIG5vIGxvbmdlciBtYWludGFpbmVkIG9y IHJlY29tbWVuZGVkLg0KPiArDQo+ICsgICogVGhpcyBweXRob24gYnVpbGQgc2NyaXB0IGhhcyBi ZWVuIHRlc3RlZCBvbiBXaW5kb3dzIDEwIGFuZCBVYnVudHUgMTguMDQuMSBMVFMuDQo+ICsNCj4g KyAgKiBVbmxlc3Mgb3RoZXJ3aXNlIG5vdGVkLCBhbGwgYm9hcmRzIGJ1aWxkIHdpdGggdGhlIGZv bGxvd2luZyBjb21wb25lbnRzIGFuZCB2ZXJzaW9uczoNCj4gKyAgICAqIExpbnV4IGJ1aWxkOiBV YnVudHUgMTguMDQuMSBMVFMgd2l0aCBHQ0MgdmVyc2lvbiA1LjQuMA0KPiArICAgICogV2luZG93 cyBidWlsZDogV2luZG93cyAxMCB3aXRoIHRoZSBNaWNyb3NvZnQgVmlzdWFsIFN0dWRpbyAyMDE1 IGNvbXBpbGVyDQo+ICsgICAgKiBpQVNMIHZlcnNpb246IDIwMTkwODE2DQo+ICsgICAgKiBOQVNN IHZlcnNpb246IDIuMTIuMDINCj4gKw0KPiArICAqIFVubGVzcyBvdGhlcndpc2Ugbm90ZWQgYWxs IGJvYXJkcyBoYXZlIGJlZW4gdGVzdGVkIGZvciBib290IHRvIFdpbmRvd3MgMTAgeDY0IFJTMy4N Cj4gKw0KPiArICAqIFNlZSBba25vd24gbGltaXRhdGlvbnNdKCNLbm93bi1saW1pdGF0aW9ucykN Cj4gICANCj4gICAqIENvbmZpZ3VyYXRpb24gRmlsZXMNCj4gICAgICogVGhlIGVkazItcGxhdGZv cm1zXFBsYXRmb3JtXEludGVsXGJ1aWxkLmNmZyBmaWxlIGNvbnRhaW5zIHRoZSBkZWZhdWx0IHNl dHRpbmdzIHVzZWQgYnkgYnVpbGRfYmlvcy5weQ0KPiBAQCAtMTg1LDYgKzIwMyw3IEBAIHJldHVy biBiYWNrIHRvIHRoZSBtaW5pbXVtIHBsYXRmb3JtIGNhbGxlci4NCj4gICAgICAgICAgICAgfCAg ICAgICB8ICAgICAgICB8ICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgIGJ1 aWxkIHNldHRpbmdzLCBlbnZpcm9ubWVudCB2YXJpYWJsZXMuDQo+ICAgICAgICAgICAgIHwgICAg ICAgfCAgICAgICAgfCAgICAgICAgICAgICAgICAgIHwtLS1idWlsZF9ib2FyZC5weTogT3B0aW9u YWwgYm9hcmQtc3BlY2lmaWMgcHJlLWJ1aWxkLCBidWlsZA0KPiAgICAgICAgICAgICB8ICAgICAg IHwgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuZCBjbGVh biBwb3N0LWJ1aWxkIGZ1bmN0aW9ucy4NCj4gKyAgICAgICAgICB8ICAgICAgIHwgICAgICAgIHwN Cj4gICAgICAgICAgICAgfCAgICAgICB8ICAgICAgICB8LS0tLS0tUHVybGV5T3BlbkJvYXJkUGtn DQo+ICAgICAgICAgICAgIHwgICAgICAgfCAgICAgICAgfCAgICAgICB8LS0tLS0tQm9hcmRNdE9s eW1wdXMNCj4gICAgICAgICAgICAgfCAgICAgICB8ICAgICAgICB8ICAgICAgICAgICAgICAgIHwt LS1idWlsZF9jb25maWcuY2ZnOiBCb2FyZE10T2x5bXB1cyBzcGVjaWZpYw0KPiBAQCAtMTkyLDE5 ICsyMTEsMjYgQEAgcmV0dXJuIGJhY2sgdG8gdGhlIG1pbmltdW0gcGxhdGZvcm0gY2FsbGVyLg0K PiAgICAgICAgICAgICB8ICAgICAgIHwgICAgICAgIHwgICAgICAgICAgICAgICAgfC0tLWJ1aWxk X2JvYXJkLnB5OiBPcHRpb25hbCBib2FyZC1zcGVjaWZpYyBwcmUtYnVpbGQsDQo+ICAgICAgICAg ICAgIHwgICAgICAgfCAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IGJ1aWxkLCBwb3N0LWJ1aWxkIGFuZCBjbGVhbiBmdW5jdGlvbnMuDQo+ICAgICAgICAgICAgIHwg ICAgICAgfCAgICAgICAgfA0KPiArICAgICAgICAgIHwgICAgICAgfCAgICAgICAgfC0tLS0tLVNp bWljc09wZW5Cb2FyZFBrZw0KPiArICAgICAgICAgIHwgICAgICAgfCAgICAgICAgfCAgICAgICB8 LS0tLS0tQm9hcmRYNThJY2gxMA0KPiArICAgICAgICAgIHwgICAgICAgfCAgICAgICAgfCAgICAg ICAgICAgICAgICB8LS0tYnVpbGRfY29uZmlnLmNmZzogQm9hcmRYNThJY2gxMCBzcGVjaWZpYw0K PiArICAgICAgICAgIHwgICAgICAgfCAgICAgICAgfCAgICAgICAgICAgICAgICB8ICAgICAgICAg ICAgICAgICAgICAgYnVpbGQgc2V0dGluZ3MsIGVudmlyb25tZW50IHZhcmlhYmxlcy4NCj4gKyAg ICAgICAgICB8ICAgICAgIHwgICAgICAgIHwNCj4gICAgICAgICAgICAgfCAgICAgICB8ICAgICAg ICB8LS0tLS0tV2hpc2tleWxha2VPcGVuQm9hcmRQa2cNCj4gICAgICAgICAgICAgfCAgICAgICB8 ICAgICAgICB8ICAgICAgICB8LS0tLS0tV2hpc2tleWxha2VVUnZwDQo+ICAgICAgICAgICAgIHwg ICAgICAgfCAgICAgICAgfCAgICAgICAgICAgICAgICB8LS0tYnVpbGRfY29uZmlnLmNmZzogV2hp c2tleWxha2VVUnZwIHNwZWNpZmljIGJ1aWxkDQo+ICAgICAgICAgICAgIHwgICAgICAgfCAgICAg ICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0dGluZ3MgZW52aXJv bm1lbnQgdmFyaWFibGVzLg0KPiArICAgICAgICAgIHwgICAgICAgfCAgICAgICAgfA0KPiAgICAg ICAgICAgICB8LS0tLS0tRlNQDQo+ICAgICA8L3ByZT4NCj4gICANCj4gICAqKkJ1aWxkaW5nIHdp dGggdGhlIGJhdGNoIHNjcmlwdHMqKg0KPiArDQo+ICAgT25seSBQdXJsZXlPcGVuQm9hcmRQa2cg c3RpbGwgc3VwcG9ydHMgYmF0Y2ggc2NyaXB0IGJ1aWxkLiBGdXR1cmUgYm9hcmQgcGFja2FnZXMg bXVzdCBvbmx5IHVzZSB0aGUgUHl0aG9uIGJ1aWxkDQo+ICAgaW5mcmFzdHJ1Y3R1cmUuDQo+ICAg DQo+ICAgRm9yIFB1cmxleU9wZW5Cb2FyZFBrZw0KPiAtMS4gT3BlbiBjb21tYW5kIHdpbmRvdywg Z28gdG8gdGhlIHdvcmtzcGFjZSBkaXJlY3RvcnksIGUuZy4gYzpcUHVybGV5Lg0KPiArMS4gT3Bl biBjb21tYW5kIHdpbmRvdywgZ28gdG8gdGhlIHdvcmtzcGFjZSBkaXJlY3RvcnksIGUuZy4gYzpc RWRrMldvcmtzcGFjZS4NCj4gICAyLiBUeXBlICJjZCBlZGsyLXBsYXRmb3Jtc1xQbGF0Zm9ybVxJ bnRlbFxQdXJsZXlPcGVuQm9hcmRQa2dcQm9hcmRNdE9seW1wdXMiLg0KPiAgIDMuIFR5cGUgIkdp dEVkazJNaW5NdE9seW1wdXMuYmF0IiB0byBzZXR1cCBHSVQgZW52aXJvbm1lbnQuDQo+ICAgNC4g VHlwZSAiYmxkIiB0byBidWlsZCBQdXJsZXkgTXQgT2x5bXB1cyBib2FyZCBVRUZJIGZpcm13YXJl IGltYWdlLCAiYmxkIHJlbGVhc2UiIGZvciByZWxlYXNlIGJ1aWxkLCAiYmxkIGNsZWFuIiB0bw0K PiBAQCAtMjEyLDQwICsyMzgsNTEgQEAgRm9yIFB1cmxleU9wZW5Cb2FyZFBrZw0KPiAgICAgICJi bGQgY2FjaGUtY29uc3VtZSIgQ29uc3VtZSBhIGNhY2hlIG9mIGJpbmFyeSBmaWxlcyBmcm9tIHRo ZSBzcGVjaWZpZWQgZGlyZWN0b3J5LCBCSU5BUllfQ0FDSEVfUEFUSCBpcyBlbXB0eSwNCj4gICAg ICB1c2VkICJCaW5DYWNoZSIgYXMgZGVmYXVsdCBwYXRoLg0KPiAgIA0KPiAtVGhlIHZhbGlkYXRl ZCB2ZXJzaW9uIG9mIGlhc2wgY29tcGlsZXIgdGhhdCBjYW4gYnVpbGQgTWluUHVybGV5IGlzIDIw MTgwNjI5LiBPbGRlciB2ZXJzaW9uIG1heSBnZW5lcmF0ZSBBQ1BJIGJ1aWxkDQo+ICtUaGUgdmFs aWRhdGVkIHZlcnNpb24gb2YgaUFTTCBjb21waWxlciB0aGF0IGNhbiBidWlsZCBNaW5QdXJsZXkg aXMgMjAxODA2MjkuIE9sZGVyIHZlcnNpb24gbWF5IGdlbmVyYXRlIEFDUEkgYnVpbGQNCj4gICBl cnJvcnMuDQo+ICAgDQoNClBsZWFzZSBkbyBub3QgYnVyeSB0aGUgbGlzdCBvZiBzdXBwb3J0ZWQg aGFyZHdhcmUgaW50byB0aGUgS25vd24gDQpMaW1pdGF0aW9ucyBzZWN0aW9ucy4gSSB3b3VsZCBy ZWNvbW1lbmQgdGhhdCB3ZSBhZGQgYSAic3VwcG9ydGVkIGJvYXJkcyIgDQpzZWN0aW9uLi4uIHNv bWV0aGluZyBzaW1pbGFyIHRvIHRoaXM6DQoNCiMjIyAqKlN1cHBvcnRlZCBIYXJkd2FyZSoqDQoN CipJbnRlbA0KDQogwqAgfCBNYWNoaW5lIE5hbWXCoMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg wqAgwqDCoMKgwqDCoCB8IFN1cHBvcnRlZCANCkNoaXBzZXRzwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgwqAgwqAgfEJvYXJkUGtnIHRvIFVzZSB8DQogwqAgfCANCi0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS18LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS18DQogwqAgfCBSVlAgMyDCoCDC oMKgIMKgwqDCoMKgwqDCoMKgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgfCBTa3kgTGFr ZSwgS2FieSBMYWtlLCBLYWJ5IA0KTGFrZSBSZWZyZXNoIHwgS2FieUxha2VPcGVuQm9hcmRQa2fC oMKgIMKgIHwNCiDCoCB8IFdITC1VIFJWUCDCoCDCoCB8IFdoaXNrZXkgTGFrZSB8V2hpc2tleUxh a2VPcGVuQm9hcmRQa2fCoCB8DQp8IMKgIMKgIMKgIMKgIMKgwqAgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCDCoMKgIHwNCg0KTm90ZTog UlZQID0gUmVmZXJlbmNlIGFuZCBWYWxpZGF0aW9uIFBsYXRmb3JtDQoNCiogU3lzdGVtIDc2DQoN CiDCoCAqIEdhbGFnbyBQcm8gTGFwdG9wDQoNCiDCoCB8IE1hY2hpbmUgTmFtZcKgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqDCoCDCoMKgwqDCoMKgIHwgU3VwcG9ydGVkIA0KQ2hpcHNldHPCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCDCoCDCoCB8Qm9hcmRQa2cgdG8gVXNlIHwNCiDC oCB8IA0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS18LS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLXwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLXwN CiDCoCB8IGdhbHAyIChDbGV2byBOMTMwQlUpIMKgIMKgIMKgIMKgIMKgIMKgwqAgfCBLYWJ5IExh a2UgfCANCkNsZXZvT3BlbkJvYXJkUGtnL04xeHhXVSB8DQogwqAgfCBnYWxwMyAmIGdhbHAzLWIg KENsZXZvIE4xeHhXVSBzZXJpZXMpIHwgS2FieSBMYWtlIFJlZnJlc2ggDQogwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgfENsZXZvT3BlbkJvYXJkUGtnL04xeHhXVSB8DQp8IMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfA0KDQoq IE1pY3Jvc29mdA0KDQogwqAgfCBNYWNoaW5lIE5hbWXCoMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgwqAgwqDCoMKgwqDCoCB8IFN1cHBvcnRlZCANCkNoaXBzZXRzwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgwqAgwqAgfEJvYXJkUGtnIHRvIFVzZSB8DQogwqAgfCANCi0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS18LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS18DQogwqAgfCBNdC4gT2x5 bXB1cyDCoCDCoMKgIMKgwqDCoMKgwqDCoMKgwqAgwqAgwqAgwqAgwqDCoMKgIMKgIHwgUHVybGV5 IHwgDQpQdXJsZXlPcGVuQm9hcmRQa2fCoCDCoMKgIMKgIHwNCnwgwqAgwqAgwqAgwqAgwqDCoCDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg IMKgwqAgfA0KDQo+ICAgIyMjICoqS25vd24gbGltaXRhdGlvbnMqKg0KPiAgIA0KPiAgICoqQ2xl dm9PcGVuQm9hcmRQa2cqKg0KPiAgIDEuIEN1cnJlbnRseSwgc3VwcG9ydCBpcyBvbmx5IGJlaW5n IGFkZGVkIGZvciB0aGUgTjF4eFdVIHNlcmllcyBvZiBib2FyZHMuDQo+IC0yLiBUaGUgV2luZG93 cyBidWlsZCB3YXMgdGVzdGVkIG9uIFdpbmRvd3MgMTAgd2l0aCBNaWNyb3NvZnQgVmlzdWFsIFN0 dWRpbyAyMDE1IGNvbXBpbGVyLg0KPiAtMy4gVGhlIExpbnV4IGJ1aWxkIHdhcyB0ZXN0ZWQgb24g VWJ1bnR1IDE2LjA0LjUgTFRTIHdpdGggR0NDIHZlcnNpb24gNS40LjAuDQo+IC00LiBUaGUgYnVp bGQgd2FzIHRlc3RlZCB3aXRoIE5BU00gdmVyc2lvbiAyLjExLjA4Lg0KPiAtNS4gVGhlIGZpcm13 YXJlIHByb2plY3QgaGFzIG5vdCBiZWVuIHRlc3RlZCBvbiBhbiBhY3R1YWwgYm9hcmQsIGl0ICpz aG91bGQgbm90KiBiZSBleHBlY3RlZCB0byBib290Lg0KPiAtNi4gVGhlIGZpcm13YXJlIHByb2pl Y3QgYXBwbGllcyB0byBhbGwgQ2xldm8gc3VwcG9ydGVkIGJvYXJkIGNvbmZpZ3VyYXRpb25zIGJ1 dCBpcyBvbmx5IGJlaW5nIHRlc3RlZCBvbiBTeXN0ZW0gNzYgR2FsYWdvDQo+IC0gIFBybyBkZXZp Y2VzLg0KPiArMi4gVGhlIGZpcm13YXJlIHByb2plY3QgaGFzIG5vdCBiZWVuIHRlc3RlZCBvbiB0 aGUgU3lzdGVtIDc2IEdhbGFnbyBQcm8gMiBhbmQgU3lzdGVtIDc2IEdhbGFnbyBQcm8gMy1CLg0K PiArMy4gVGhlIGZpcm13YXJlIHByb2plY3QgYXBwbGllcyB0byBhbGwgQ2xldm8gc3VwcG9ydGVk IGJvYXJkIGNvbmZpZ3VyYXRpb25zIGJ1dCBpcyBvbmx5IGJlaW5nIHRlc3RlZCBvbiBTeXN0ZW0g NzYgR2FsYWdvDQo+ICsgICBQcm8gZGV2aWNlcy4NCj4gICANCj4gICAqKkthYnlsYWtlT3BlbkJv YXJkUGtnKioNCj4gLTEuIFRoaXMgZmlybXdhcmUgcHJvamVjdCBoYXMgb25seSBiZWVuIHRlc3Rl ZCBvbiB0aGUgSW50ZWwgS2FieWxha2VSdnAzIGJvYXJkLg0KPiAtMi4gVGhpcyBmaXJtd2FyZSBw cm9qZWN0IGhhcyBvbmx5IGJlZW4gdGVzdGVkIGJvb3RpbmcgdG8gTWljcm9zb2Z0IFdpbmRvd3Mg MTAgeDY0IHdpdGggQUhDSSBtb2RlIGFuZCBJbnRlZ3JhdGVkIEdyYXBoaWMNCj4gLSAgRGV2aWNl Lg0KPiAtMy4gVGhlIFdpbmRvd3MgYnVpbGQgd2FzIHRlc3RlZCBvbiBXaW5kb3dzIDEwIHdpdGgg TWljcm9zb2Z0IFZpc3VhbCBTdHVkaW8gMjAxNS4NCj4gLTQuIFRoZSBMaW51eCBidWlsZCB3YXMg dGVzdGVkIG9uIFVidW50dSAxNi4wNC41IExUUyB3aXRoIEdDQyB2ZXJzaW9uIDUuNC4wLg0KPiAt NS4gVGhlIGJ1aWxkIHdhcyB0ZXN0ZWQgd2l0aCBOQVNNIHZlcnNpb24gMi4xMS4wOC4NCj4gKzEu IFRoaXMgZmlybXdhcmUgcHJvamVjdCBoYXMgb25seSBiZWVuIHRlc3RlZCBvbiB0aGUgSW50ZWwg S2FieSBMYWtlIDMgUlZQIGJvYXJkLg0KPiArMi4gVGhpcyBmaXJtd2FyZSBwcm9qZWN0IGhhcyBv bmx5IGJlZW4gdGVzdGVkIGZvciBNaWNyb3NvZnQgV2luZG93cyAxMCB4NjQgYm9vdCB3aXRoIEFI Q0kgbW9kZSBhbmQgSW50ZWdyYXRlZCBHcmFwaGljDQo+ICsgICBEZXZpY2UuDQo+ICAgDQo+ICAg KipQdXJsZXlPcGVuQm9hcmRQa2cqKg0KPiAtMS4gVGhpcyBmaXJtd2FyZSBwcm9qZWN0IGhhcyBv bmx5IGJlZW4gdGVzdGVkIG9uIHRoZSBNaWNyb3NvZnQgTXRPbHltcHVzIGJvYXJkLg0KPiArMS4g VGhpcyBmaXJtd2FyZSBwcm9qZWN0IGhhcyBvbmx5IGJlZW4gdGVzdGVkIG9uIHRoZSBNaWNyb3Nv ZnQgTXQuIE9seW1wdXMgYm9hcmQuDQo+ICAgMi4gVGhpcyBmaXJtd2FyZSBwcm9qZWN0IGhhcyBv bmx5IGJlZW4gdGVzdGVkIGJvb3RpbmcgdG8gTWljcm9zb2Z0IFdpbmRvd3MgU2VydmVyIDIwMTYg d2l0aCBOVk1FIG9uIE0uMiBzbG90Lg0KPiAtMy4gVGhpcyBmaXJtd2FyZSBwcm9qZWN0IGJ1aWxk IGhhcyBvbmx5IGJlZW4gdGVzdGVkIHVzaW5nIHRoZSBNaWNyb3NvZnQgVmlzdWFsIFN0dWRpbyAy MDE1IGNvbXBpbGVyLg0KPiArMy4gVGhpcyBmaXJtd2FyZSBwcm9qZWN0IGRvZXMgbm90IGJ1aWxk IHdpdGggdGhlIEdDQyBjb21waWxlci4NCj4gKzQuIFRoaXMgZmlybXdhcmUgcHJvamVjdCBkb2Vz IG5vdCBidWlsZCB3aXRoIHRoZSBQeXRob24gYnVpbGQgc2NyaXB0IGluZnJhc3RydWN0dXJlLg0K PiArDQo+ICsqKlNpbWljc09wZW5Cb2FyZFBrZyoqDQo+ICsxLiBUaGlzIGZpcm13YXJlIHByb2pl Y3QgaGFzIG9ubHkgYmVlbiB0ZXN0ZWQgd2l0aCB0aGUgU2ltaWNzIFF1aWNrIFN0YXJ0IFBhY2th Z2UuDQo+ICsyLiBUaGlzIGZpcm13YXJlIHByb2plY3QgaGFzIG9ubHkgYmVlbiB0ZXN0ZWQgYm9v dGluZyB0byBNaWNyb3NvZnQgV2luZG93cyAxMCB4NjQgYW5kIFVidW50dSAxNy4xMCB3aXRoIEFI Q0kgbW9kZSBhbmQNCj4gKyAgIEludGVncmF0ZWQgR3JhcGhpYyBEZXZpY2UuDQo+ICAgDQo+ICAg KipXaGlza2V5bGFrZU9wZW5Cb2FyZFBrZyoqDQo+IC0xLiBUaGlzIGZpcm13YXJlIHByb2plY3Qg aGFzIG9ubHkgYmVlbiB0ZXN0ZWQgb24gdGhlIEludGVsIFdoaXNrZXlsYWtlVVJ2cCBib2FyZC4N Cj4gKzEuIFRoaXMgZmlybXdhcmUgcHJvamVjdCBoYXMgb25seSBiZWVuIHRlc3RlZCBvbiB0aGUg SW50ZWwgV2hpc2tleSBMYWtlIFUgRERSNCBSVlAgYm9hcmQuDQo+ICAgMi4gVGhpcyBmaXJtd2Fy ZSBwcm9qZWN0IGhhcyBvbmx5IGJlZW4gdGVzdGVkIGJvb3RpbmcgdG8gTWljcm9zb2Z0IFdpbmRv d3MgMTAgeDY0IHdpdGggQUhDSSBtb2RlIGFuZCBJbnRlZ3JhdGVkIEdyYXBoaWMNCj4gICAgIERl dmljZS4NCj4gLTMuIFRoZSBXaW5kb3dzIGJ1aWxkIHdhcyB0ZXN0ZWQgb24gV2luZG93cyAxMCB3 aXRoIE1pY3Jvc29mdCBWaXN1YWwgU3R1ZGlvIDIwMTUuDQo+IC00LiBUaGUgTGludXggYnVpbGQg d2FzIHRlc3RlZCBvbiBVYnVudHUgMTYuMDQuNSBMVFMgd2l0aCBHQ0MgdmVyc2lvbiA1LjQuMC4N Cj4gLTUuIFRoZSBidWlsZCB3YXMgdGVzdGVkIHdpdGggTkFTTSB2ZXJzaW9uIDIuMTEuMDguDQo+ ICsNCj4gKyMjIyAqKlBhY2thZ2UgQnVpbGRzKioNCj4gKw0KPiArSW4gc29tZSBjYXNlcywgc3Vj aCBhcyBBZHZhbmNlZEZlYXR1cmVQa2csIGEgcGFja2FnZSBtYXkgcHJvdmlkZSBhIHNldCBvZiBm dW5jdGlvbmFsaXR5IHRoYXQgaXMgaW5jbHVkZWQgaW4gb3RoZXINCj4gK3BhY2thZ2VzLiBUbyB0 ZXN0IHRoZSBidWlsZCBvZiB0aGUgd2hvbGUgcGFja2FnZSwgdGhlICJidWlsZCIgY29tbWFuZCBz aG91bGQgYmUgdXNlZCBmb2xsb3dpbmcgdGhlIGluc3RydWN0aW9ucyBiZWxvdy4NCj4gKw0KPiAr MS4gRXhlY3V0ZSBlZGtzZXR1cC5iYXQgKFdpbmRvd3MpIG9yIGVka3NldHVwLnNoIChMaW51eCku DQo+ICsyLiBWZXJpZnkgdGhlICJXT1JLU1BBQ0UiIGVudmlyb25tZW50IHZhcmlhYmxlIGlzIHNl dCB0byB0aGUgZWRrMiBkaXJlY3RvcnkgaW4geW91ciB3b3Jrc3BhY2UuDQo+ICszLiBTZXQgdGhl ICJQQUNLQUdFU19QQVRIIiBlbnZpb3JubWVudCB2YXJpYWJsZSB0byBpbmNsdWRlIHRoZSBlZGsy LXBsYXRmb3Jtcy9QbGF0Zm9ybS9JbnRlbCBhbmQgZWRrMi1wbGF0Zm9ybXMvU2lsaWNvbi9JbnRl bA0KPiArICAgZGlyZWN0b3JpZXMuDQo+ICsgICAqIFdpbmRvd3MgZXhhbXBsZTogc2V0IFBBQ0tB R0VTX1BBVEg9YzpcRWRrMldvcmtzcGFjZVxlZGsyLXBsYXRmb3Jtc1xQbGF0Zm9ybVxJbnRlbDtj OlxFZGsyV29ya3NwYWNlXGVkazItcGxhdGZvcm1zXFNpbGljb25cSW50ZWwNCj4gKzQuIEJ1aWxk IHRoZSBwYWNrYWdlIGJ5IHNwZWNpZnlpbmcgdGhlIHBhY2thZ2UgRFNDIGFzIHRoZSBwbGF0Zm9y bSBidWlsZCB0YXJnZXQgZnJvbSB0aGUgUGxhdGZvcm0vSW50ZWwgb3IgU2lsaWNvbi9JbnRlbCBk aXJlY3Rvcnk6DQo+ICsgICAiYnVpbGQgLXAgQWR2YW5jZWRGZWF0dXJlUGtnL0FkdmFuY2VkRmVh dHVyZVBrZy5kc2MiDQo+ICsNCj4gICANCj4gICAjIyMgKipGaXJtd2FyZSBJbWFnZSBGbGFzaGlu ZyoqDQo+ICAgDQo+IEBAIC0yNTksMTQgKzI5NiwxNCBAQCB0aGF0IGF1dGhlbnRpY2F0ZXMgdGhl IGluaXRpYWwgZmlybXdhcmUgYm9vdCBpbWFnZSBzdWNoIGFzIEJvb3QgR3VhcmQsIGl0IHdpbGwg Zg0KPiAgIHRoYXQgaXMgbm90IHNpZ25lZCBwcm9wZXJseS4NCj4gICANCj4gICAjIyMgKipQbGFu bmVkIEFjdGl2aXRpZXMqKg0KPiAtKiBSZXBsYWNlIHRoZSBiYXRjaCBidWlsZCBzY3JpcHRzIHdp dGggY3Jvc3MtcGxhdGZvcm0gUHl0aG9uIGJ1aWxkIHNjcmlwdHMuDQo+IC0qIFB1Ymxpc2ggYSBN aW5pbXVtIFBsYXRmb3JtIHNwZWNpZmljYXRpb24gdG8gZGVzY3JpYmUgdGhlIGFyY2hpdGVjdHVy ZSBhbmQgaW50ZXJmYWNlcyBpbiBtb3JlIGRldGFpbC4NCj4gKyogRXhwYW5kIEludGVsJ3Mgb3Bl biBzb3VyY2UgcGxhdGZvcm0gY29kZSBwcmVzZW5jZSB0aHJvdWdoIG5ldyBwbGF0Zm9ybSBhbmQg Ym9hcmQgc3VwcG9ydC4NCj4gKyogRXhwYW5kIGFkdmFuY2VkIGZlYXR1cmUgY29kZSBhbmQgcXVh bGl0eS4NCj4gKyogU3VwcG9ydCBvcGVuIHNvdXJjZSBjb21tdW5pdHkgY29udGludW91cyBpbnRl Z3JhdGlvbiBmb3IgTWluaW11bSBQbGF0Zm9ybSBjb21wbGlhbnQgYm9hcmRzLg0KPiAgIA0KPiAg ICMjIyAqKklkZWFzKioNCj4gICBJZiB5b3Ugd291bGQgbGlrZSB0byBoZWxwIGJ1dCBhcmUgbm90 IHN1cmUgd2hlcmUgdG8gc3RhcnQgc29tZSBhcmVhcyBjdXJyZW50bHkgaWRlbnRpZmllZCBmb3Ig aW1wcm92ZW1lbnQgaW5jbHVkZToNCj4gICAgKiBBZGRpbmcgYm9hcmQgcG9ydHMgZm9yIG1vcmUg bW90aGVyYm9hcmRzIGFuZCBzeXN0ZW1zDQo+ICAgICogQWRkaW5nIENsYW5nIHN1cHBvcnQNCj4g LSAqIEFkZGluZyBHQ0Mgc3VwcG9ydA0KPiAgIA0KPiAgIFBsZWFzZSBmZWVsIGZyZWUgdG8gY29u dGFjdCBNaWNoYWVsIEt1YmFja2kgKG1pY2hhZWwuYS5rdWJhY2tpIGF0IGludGVsLmNvbSkgYW5k IElzYWFjIE9yYW0gKGlzYWFjLncub3JhbSBhdCBpbnRlbC5jb20pDQo+ICAgaWYgeW91IHdvdWxk IGxpa2UgdG8gZGlzY3VzcyBjb250cmlidXRpb24gaWRlYXMu