From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=40.107.3.54; helo=eur03-am5-obe.outbound.protection.outlook.com; envelope-from=evan.lloyd@arm.com; receiver=edk2-devel@lists.01.org Received: from EUR03-AM5-obe.outbound.protection.outlook.com (mail-eopbgr30054.outbound.protection.outlook.com [40.107.3.54]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id EC0D420945BA7 for ; Tue, 10 Oct 2017 11:48:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector1-arm-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=ZgWtUAw0+j6rdl1Nxd9UkwQfuOP4ihn6obSOuHvzds8=; b=OgYOeKV9sNMr5LQmOcDOPGm4wJQbIdCHZ+/f7U1VI8zjaiCjxVsEua64WaEuFd5Krus6jCI+ysGT0dBNbnPO2R5W07M4Emq6hTh1BOEM1suMdwvv/b93vl9LKe0xbHq1otN00F5QtNEGoAYVxg/IG7gkWlHW/PQSSx19ExJKxsU= Received: from AM4PR0801MB1444.eurprd08.prod.outlook.com (10.168.5.24) by AM4PR0801MB1441.eurprd08.prod.outlook.com (10.168.5.21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.77.7; Tue, 10 Oct 2017 18:52:02 +0000 Received: from AM4PR0801MB1444.eurprd08.prod.outlook.com ([fe80::952e:5c32:61ec:aa1b]) by AM4PR0801MB1444.eurprd08.prod.outlook.com ([fe80::952e:5c32:61ec:aa1b%14]) with mapi id 15.20.0077.020; Tue, 10 Oct 2017 18:52:02 +0000 From: Evan Lloyd To: "Yao, Jiewen" , "edk2-devel@lists.01.org" CC: "\"Matteo.Carlini@arm.com\"@arm.com" <"Matteo.Carlini@arm.com"@arm.com>, "\"nd@arm.com\"@arm.com" <"nd@arm.com"@arm.com>, "\"ard.biesheuvel@linaro.org\"@arm.com" <"ard.biesheuvel@linaro.org"@arm.com>, "\"Stephanie.Hughes-Fitt@arm.com\"@arm.com" <"Stephanie.Hughes-Fitt@arm.com"@arm.com>, "\"thomas.abraham@arm.com\"@arm.com" <"thomas.abraham@arm.com"@arm.com>, "\"Arvind.Chauhan@arm.com\"@arm.com" <"Arvind.Chauhan@arm.com"@arm.com>, "\"leif.lindholm@linaro.org\"@arm.com" <"leif.lindholm@linaro.org"@arm.com>, "\"Daniil.Egranov@arm.com\"@arm.com" <"Daniil.Egranov@arm.com"@arm.com> Thread-Topic: [edk2] [PATCH 0/2] Dynamic Tables Thread-Index: AQHTO7dfEApOIZdey0qe5C/0nCJPSaLcZ6MAgADsu2A= Date: Tue, 10 Oct 2017 18:52:02 +0000 Message-ID: References: <20171002194753.4316-1-evan.lloyd@arm.com> <74D8A39837DF1E4DA445A8C0B3885C503A9D7016@shsmsx102.ccr.corp.intel.com> In-Reply-To: <74D8A39837DF1E4DA445A8C0B3885C503A9D7016@shsmsx102.ccr.corp.intel.com> Accept-Language: en-GB, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=Evan.Lloyd@arm.com; x-originating-ip: [217.140.96.140] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1; AM4PR0801MB1441; 6:Byn0zVpvLeboIvuyHKp7O1l9WMEAcfsctZnb0zaDAjGU9FP5syDvupnBxMYOJK/QtUbfPiuvGFqT/mX5KSXMmeFa2EkuxEXUDTuFXQlYivfyt1VdRMJA3jyqi6WPlZ9ZlcmG1ELcQWHgLyaCR7kKVU2YyUOqavAXIcxpLauuoyITATzGLP9enrVdEnqF/7lCZhfNwJ4lRb6f4q3SqwP1MIT3ySdDSOD6H/YndZrXO7laS/X9BsvgX1OESA/HCTIH3iQQJxBT7kub0FJsz0A9yC9KvgsmOqE9vuApTXgLO/xFQYn8zEKyIV6HYBebl7HOZH3BJKL0wJvN4tBgI9IvUQ==; 5:tTNxhBD4Dd7+GU6WOD7clGqRdop7B9PWJQUCbuOus4PtBwnbIcnBfpwuPFgA4UwM+xJemg/dNAywv+JZy+568M+fpk/r5Zp58TqaugYw9DkTODX4zBIGkd8s2cDzQrIUyfQ57GVQxbwD0hcJ2K77Hw==; 24:WKMEe7ZiIVRvIC/8B7ZwyVDHYA14PVbSmnRv88gVJ0VizkN4/HTg0Gw5OzbvM7/BAAUh3eFfcxWZVa2glVqvq2wquPC4NR3iYY9UUzFZvvM=; 7:Gvi957WW6LslC2hljhlXvDgyTOI9aFAnMAOElI8xJQW0Puj2likdLkB+ZuYHa4998+z8iBMERMuzsQr/lDCqMvJuHTSLpK9zEISpnpXEwgoyFMJajYf2ZEx74BQXgV2PsSjaVhpl5U+/SleeZKcpA6KEm7XCbhZTEFIsPgADMhebc3lqV/xDjwnNuTLpAsipSCmhB/yurQGCvvP8mnR9iEGcUd1i7X7CYnRRpU3bvLo= x-ms-exchange-antispam-srfa-diagnostics: SSOS; x-ms-office365-filtering-correlation-id: 70471211-d6bf-4cc3-bab3-08d5100ffe8c x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(2017030254152)(48565401081)(2017052603199)(201703131423075)(201703031133081)(201702281549075); SRVR:AM4PR0801MB1441; x-ms-traffictypediagnostic: AM4PR0801MB1441: x-exchange-antispam-report-test: UriScan:(180628864354917)(166708455590820)(162533806227266)(228905959029699); x-microsoft-antispam-prvs: x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(2401047)(5005006)(8121501046)(10201501046)(3002001)(100000703101)(100105400095)(93006095)(93001095)(6055026)(6041248)(20161123564025)(20161123558100)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123555025)(20161123562025)(20161123560025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:AM4PR0801MB1441; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:AM4PR0801MB1441; x-forefront-prvs: 04569283F9 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(6009001)(376002)(39860400002)(346002)(199003)(40434004)(189002)(13464003)(51914003)(377454003)(5660300001)(72206003)(106356001)(68736007)(105586002)(229853002)(8676002)(81156014)(81166006)(7696004)(2950100002)(7736002)(305945005)(25786009)(66066001)(74316002)(97736004)(2501003)(3660700001)(316002)(54356999)(5250100002)(5890100001)(345774005)(6436002)(3280700002)(86362001)(50986999)(3846002)(102836003)(6306002)(6116002)(6246003)(53546010)(9686003)(99286003)(55016002)(14454004)(76176999)(6506006)(110136005)(2900100001)(2906002)(8936002)(4326008)(966005)(478600001)(101416001)(33656002)(53936002)(189998001); DIR:OUT; SFP:1101; SCL:1; SRVR:AM4PR0801MB1441; H:AM4PR0801MB1444.eurprd08.prod.outlook.com; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; received-spf: None (protection.outlook.com: arm.com does not designate permitted sender hosts) spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM MIME-Version: 1.0 X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-originalarrivaltime: 10 Oct 2017 18:52:02.3045 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM4PR0801MB1441 Subject: Re: [PATCH 0/2] Dynamic Tables X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 10 Oct 2017 18:48:41 -0000 Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 SGkgSmlld2VuDQooSSBob3BlIHRoYXQgaXMgeW91ciBwZXJzb25hbCBuYW1lLCBub3QgeW91ciBz dXJuYW1lIC0gYnV0IGl0IGlzIGEgYml0IGhhcmQgZm9yIHVzIGJhcmJhcmlhbnMgdG8gdGVsbCwg c29ycnkuKQ0KVGhhbmsgeW91IGZvciB0aGUgdmVyeSBoZWxwZnVsIGZlZWRiYWNrLg0KUmVzcG9u c2VzIGFyZSBpbmxpbmUgYmVsb3cuDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4g RnJvbTogWWFvLCBKaWV3ZW4gW21haWx0bzpqaWV3ZW4ueWFvQGludGVsLmNvbV0NCj4gU2VudDog MTAgT2N0b2JlciAyMDE3IDAzOjI5DQo+IFRvOiBFdmFuIExsb3lkIDxFdmFuLkxsb3lkQGFybS5j b20+OyBlZGsyLWRldmVsQGxpc3RzLjAxLm9yZw0KPiBDYzogIk1hdHRlby5DYXJsaW5pQGFybS5j b20iQGFybS5jb207ICJuZEBhcm0uY29tIkBhcm0uY29tOw0KPiAiYXJkLmJpZXNoZXV2ZWxAbGlu YXJvLm9yZyJAYXJtLmNvbTsgIlN0ZXBoYW5pZS5IdWdoZXMtDQo+IEZpdHRAYXJtLmNvbSJAYXJt LmNvbTsgInRob21hcy5hYnJhaGFtQGFybS5jb20iQGFybS5jb207DQo+ICJBcnZpbmQuQ2hhdWhh bkBhcm0uY29tIkBhcm0uY29tOw0KPiAibGVpZi5saW5kaG9sbUBsaW5hcm8ub3JnIkBhcm0uY29t Ow0KPiAiRGFuaWlsLkVncmFub3ZAYXJtLmNvbSJAYXJtLmNvbTsgWWFvLCBKaWV3ZW4gPGppZXdl bi55YW9AaW50ZWwuY29tPg0KPiBTdWJqZWN0OiBSRTogW2VkazJdIFtQQVRDSCAwLzJdIER5bmFt aWMgVGFibGVzDQo+DQo+IEhJIEV2YW4NCj4gVGhhbmtzIGZvciB0aGUgY29udHJpYnV0aW9uLg0K Pg0KPiBUaGlzIGlzIGEgdmVyeSBiaWcgZmVhdHVyZS4gSXQgbWF5IHRhbGsgdXMgbW9yZSB0aW1l IHRvIHJldmlldyBhbmQgZXZhbHVhdGUuDQo+IEF0IHNhbWUgdGltZSwgb25lIG9mIG91ciBrZXkg TWRlTW9kdWxlIHBhY2thZ2UgbWFpbnRhaW5lciBpcyBpbiBwYXRlcm5pdHkNCj4gbGVhdmUuIEl0 IG1heSBiZSBsb25nZXIgdGhhbiB1c3VhbC4NCj4NCj4gSSBub3RpY2UgeW91IG9ubHkgZGVmaW5l ZCBBUk0gbmFtZXNwYWNlIGluIHRoaXMgcGF0Y2gsIGFuZCBpbXBsZW1lbnRlZA0KPiBBUk0gbGli cmFyeSBpbnN0YW5jZS4NCj4gQWxzbyBtb3N0IGNvbnN1bWVycyBvZiBDb25maWd1cmF0aW9uTWFu YWdlciBhcmUgZnJvbSBBUk0gcGxhdGZvcm0NCj4gcGFja2FnZS4gU28gaWYgaXQgdXJnZW50IGZy b20gQVJNIHBsYXRmb3JtLCB5b3UgbWF5IGNvbnNpZGVyIHRvIGNoZWNrIGludG8NCj4gQXJtUGtn IGF0IGZpcnN0Lg0KDQpbW0V2YW4gTGxveWRdXSBUaGlzIHNvdW5kcyBzZW5zaWJsZSwgYW5kIEkg d2lsbCBkaXNjdXNzIGl0IHdpdGggTGVpZi4gIEFub3RoZXIgb3B0aW9uIG1pZ2h0IGJlIHRvIHN0 YXJ0IHVwIGEgbmV3IG1vZHVsZS4NCg0KPg0KPg0KPg0KPiBJIG9ubHkgaGF2ZSBhIHF1aWNrIGxv b2sgYXQgdGhlIHBhdGNoLiBXb3VsZCB5b3UgcGxlYXNlIHNoYXJlIG1vcmUgb24gdGhlDQo+IGRl c2lnbiBwaGlsb3NvcGh5Pw0KDQpbW0V2YW4gTGxveWRdXSBZb3UgYXJlIHF1aXRlIHJpZ2h0IC0g d2Ugd2lsbCBwdXQgYSBkb2N1bWVudCB0b2dldGhlciBvbiB0aGlzLg0KDQo+DQo+IDEpIEl0IHNl ZW1zIHRoZSBmaW5hbCBnb2FsIGlzIHN0aWxsIHRvIGdlbmVyYXRlIEFDUEkgdGFibGUvU01CSU9T IHRhYmxlL0RldlRyZWUuDQo+IFlvdSBqdXN0IGludHJvZHVjZSBhIHdheSB0byBtYW5hZ2UgaG93 IHRoZXNlIHRhYmxlcyBhcmUgZ2VuZXJhdGVkLCByaWdodD8NCg0KW1tFdmFuIExsb3lkXV0gWWVz Lg0KDQo+DQo+IDIpIEJlbG93IGRlZmluaXRpb24gaXMgZGVmaW5lZCBieSB0aGUNCj4gTWRlTW9k dWxlUGtnL0luY2x1ZGUvRHluYW1pY1RhYmxlcy9Db25maWd1cmF0aW9uTWFuYWdlck9iamVjdC5o Lg0KPiBJcyB0aGVyZSBhbnkgaW5kdXN0cnkgc3RhbmRhcmQgdG8gZGVmaW5lIGJlbG93IGluZGV4 PyBPciBpdCBpcyBqdXN0IGRlZmluZWQgYnkNCj4gRURLSUksIGFuZCBhbnlvbmUgY2FuIGFkZCBl eHRlbnNpb24gaGVyZT8NCg0KW1tFdmFuIExsb3lkXV0gVGhpcyBpcyBhbiBpbml0aWFsIHN1Ym1p c3Npb24gZm9yIGRpc2N1c3Npb24sIGJ1dCB0aGVyZSBpcyBub3QgY3VycmVudGx5IGEgcmVsZXZh bnQgc3RhbmRhcmQuICBXZSBhcmUgcHJvdmlkaW5nIGEgInByb29mIG9mIGNvbmNlcHQiIGZvciBk aXNjdXNzaW9uIGFuZCByZXZpZXcuICBUaGUgaWRzIGFyZSBjdXJyZW50bHkgaW50ZXJuYWwgdG8g ZWRrMi4gIFdlIGRvIGFudGljaXBhdGUgc29tZSBzb3J0IG9mIHN0YW5kYXJkIGRlZmluaXRpb24g KGZvciB0aGUgaW5mb3JtYXRpb24gc3VwcGxpZXIpIGJ1dCB0aGF0IG1pZ2h0IGJlIG5vIG1vcmUg dGhhbiBhIHZlcnNpb24gb2YgQ29uZmlndXJhdGlvbk1hbmFnZXJPYmplY3QuaA0KDQo+DQo+ICtP YmplY3QgSUQncyBpbiB0aGUgQVJNIE5hbWVzcGFjZToNCj4gKyAgIDAgLSBSZXNlcnZlZA0KPiAr ICAgMSAtIEJvb3QgQXJjaGl0ZWN0dXJlIEluZm8NCj4gKyAgIDIgLSBDUFUgSW5mbw0KPiArICAg MyAtIFBvd2VyIE1hbmFnZW1lbnQgUHJvZmlsZSBJbmZvDQo+ICsgICA0IC0gR0lDQyBJbmZvDQo+ ICsgICA1IC0gR0lDRCBJbmZvDQo+ICsgICA2IC0gR0lDIE1TSSBGcmFtZSBJbmZvDQo+ICsgICA3 IC0gR0lDIFJlZGlzdHJpYnV0b3IgSW5mbw0KPiArICAgOCAtIEdJQyBJVFMgSW5mbw0KPiArICAg OSAtIFNlcmlhbCBDb25zb2xlIFBvcnQgSW5mbw0KPiArICAxMCAtIFNlcmlhbCBEZWJ1ZyBQb3J0 IEluZm8NCj4gKyAgMTIgLSBHZW5lcmljIFRpbWVyIEluZm8NCj4gKyAgMTMgLSBQbGF0Zm9ybSBH VCBCbG9jayBJbmZvDQo+ICsgIDE0IC0gUGxhdGZvcm0gR2VuZXJpYyBXYXRjaGRvZw0KPiArICAx NSAtIFBDSSBDb25maWd1cmF0aW9uIFNwYWNlIEluZm8NCj4gKyAgMTYgLSBIeXBlcnZpc29yIFZl bmRvciBJZA0KPg0KPiAzKSBJIGFtIG5vdCBzdXJlIGlmIHlvdSBoYXZlIGtub3duIGFib3V0IGRh dGFodWIgcHJvdG9jb2wuDQo+IChJbnRlbEZyYW1ld29ya1BrZ1xJbmNsdWRlXFByb3RvY29sXERh dGFIdWIuaCkNCg0KW1tFdmFuIExsb3lkXV0gV2UgZGlkIG5vdC4gIFdlIGhhdmUgbm90IHByZXZp b3VzbHkgcGFpZCBtdWNoIGF0dGVudGlvbiB0byBJbnRlbEZyYW1ld29ya1BrZyAg8J+Yig0KV2Ug d2lsbCBoYXZlIGEgbG9vayBhdCB0aGUgRGF0YUh1YiBzdHVmZiB0aG91Z2gsIHRvIHNlZSBob3cg aXQgZml0cy4NCg0KPiBMb25nIHRpbWUgYWdvLCB3ZSBoYXZlIHBsYXRmb3JtIG1vZHVsZSBmaWxs aW5nIHRoZSBTTUJJT1MgbmVlZGVkDQo+IGluZm9ybWF0aW9uIHRvIGRhdGFodWIgKHN1Y2ggYXMg Q1BVIElORk8sIE1lbW9yeSBJbmZvKS4NCj4gVGhlIFNNQklPUyB0YWJsZSBpcyBkZXJpdmVkIGZy b20gZGF0YWh1YiBwcm90b2NvbC4gVGhlIHNldHVwIGRyaXZlciBjYW4NCj4gYWxzbyBmcm9tIGRh dGFodWIuDQo+IEJ1dCBsYXRlciwgd2UgdGhpbmsgaXQgaXMgYW4gb3ZlcmRlc2lnbiBhbmQgZGF0 YWh1YiBpcyBubyBsb25nZXIgdXNlZCBpbiB0aGUNCj4gbmV3IElBIHBsYXRmb3JtLg0KPiBQZW9w bGUgZmVlbCBpdCBpcyBlYXNpZXIgdG8gZmlsbCBpbmR1c3RyeSBkZWZpbmVkIFNNQklPUyByZWNv cmQgZGlyZWN0bHksIHRoYW4gdG8NCj4gZmlsbCB0aGUgRURLIGRlZmluZWQgZGF0YWh1YiByZWNv cmQuDQo+IFRoZXkgZG8gbm90IG5lZWQgdG8gbGVhcm4gMiBkaWZmZXJlbnQgc3R5bGVzIG9mIGRh dGEgcmVjb3JkIGZvcm1hdC4NCj4NCj4gVG8gbWUsIHRoaXMgc2VlbXMgc2ltaWxhciB0byBkYXRh aHViLiBQbGVhc2UgaGVscCB1cyB1bmRlcnN0YW5kIHRoZSBrZXkNCj4gZGlmZmVyZW5jZS4NCg0K W1tFdmFuIExsb3lkXV0gIEZyb20geW91ciBkZXNjcmlwdGlvbiwgdGhlcmUgZG9lcyBzZWVtIHRv IGJlIGFuIGVsZW1lbnQgb2Ygc2ltaWxhcml0eSB3aXRoIG91ciBzdWJtaXR0ZWQgaW1wbGVtZW50 YXRpb24uDQpIb3dldmVyLCBvdXIgY3VycmVudCBjb2RlIGRvZXMgbm90IHlldCBjb3ZlciBsYXRl ciBvcHRpb25zIG9mIG9idGFpbmluZyB0aGUgY29uZmlndXJhdGlvbiBkYXRhIGZyb20gYSByZW1v dGUgbm9kZSwgZXRjLg0KT3VyIHVsdGltYXRlIGFpbSBpcyB0byBoYXZlIGEgc2luZ2xlIFVFRkkg aW1hZ2UgcnVuIG9uIGEgcmFuZ2Ugb2YgcGxhdGZvcm1zLCB0YWtpbmcgZ3VpZGFuY2UgZnJvbSB0 aGUgcmVtb3RlIG9uIHdoYXQgdGFibGVzIHRvIHB1Ymxpc2ggd2l0aCB3aGF0IGNvbnRlbnQuICBZ b3Ugc2F5ICJQZW9wbGUgZmVlbCBpdCBpcyBlYXNpZXIgdG8gZmlsbCBpbmR1c3RyeSBkZWZpbmVk IFNNQklPUyByZWNvcmQgZGlyZWN0bHksIHRoYW4gdG8gZmlsbCB0aGUgRURLIGRlZmluZWQgZGF0 YWh1YiByZWNvcmQuIiAgSSBkbyBub3QgcXVlc3Rpb24geW91ciBzdGF0ZW1lbnQsIGluIGZhY3Qg SSBhbSBzdXJlIHlvdSBhcmUgcmlnaHQuICBIb3dldmVyLCBtaWdodCB0aG9zZSBwZW9wbGUgYmUg dGhlIG9uZXMgd2hvIG1ha2UgYSBsaXZpbmcgZmlsbGluZyAiaW5kdXN0cnkgZGVmaW5lZCBTTUJJ T1MgcmVjb3JkIGRpcmVjdGx5Ij8gIE91ciBleHBlcmllbmNlIGlzIHRoYXQgdGhlcmUgaXMgc2ln bmlmaWNhbnQgb3ZlcmhlYWQgaW4gYnVpbGRpbmcgY29tcGxldGUgc2V0cyBvZiBwbGF0Zm9ybSBk ZXBlbmRlbnQgdGFibGVzIGZvciBlYWNoIHZhcmlhbnQgb2YgYSBtYWNoaW5lLCBhbmQgd2Ugd291 bGQgbGlrZSB0byByZWR1Y2UgdGhhdC4NCg0KPg0KPiA0KSBJbiBhZGRpdGlvbiwgRURLSUkvUEkg ZGVmaW5lZCBQQ0QgKHBsYXRmb3JtIGNvbmZpZ3VyYXRpb24gZGF0YWJhc2UpLiBJdCBpcw0KPiBh biBhcmNoaXRlY3R1cmUgd2F5IHRvIG1hbmFnZSB0aGUgY29uZmlndXJhdGlvbiBkYXRhLg0KPiBX ZSBhcmUgYWxzbyBpbXBsZW1lbnRpbmcgc3RydWN0dXJlIFBDRCB0byBsZXQgcGxhdGZvcm0gZmls bCBkYXRhIGVhc2lseS4NCj4gKGh0dHBzOi8vZ2l0aHViLmNvbS90aWFub2NvcmUvZWRrMi1zdGFn aW5nL3RyZWUvU3RydWN0dXJlUGNkKQ0KPg0KPiBJIGZvdW5kIHNvbWUgY29uZmlndXJhdGlvbiBj YW4gYmUgYXMgc2ltcGxlIGFzIGEgUENELCBzdWNoIGFzDQo+ICsgIC8vIEJvb3QgYXJjaGl0ZWN0 dXJlIGluZm9ybWF0aW9uDQo+ICsgIHsgRUZJX0FDUElfNl8xX0FSTV9QU0NJX0NPTVBMSUFOVCB9 LCAgICAgICAgICAgICAgLy8gQm9vdEFyY2hGbGFncw0KPiArDQo+ICsgIC8vIFBvd2VyIG1hbmFn ZW1lbnQgcHJvZmlsZSBpbmZvcm1hdGlvbg0KPiArICB7IEVGSV9BQ1BJXzZfMV9QTV9QUk9GSUxF X0VOVEVSUFJJU0VfU0VSVkVSIH0sICAgIC8vDQo+IFBvd2VyTWFuYWdlbWVudCBQcm9maWxlDQo+ DQo+IFdpdGggdGhlIG5ldyBzdHJ1Y3R1cmUgUENEIGRlc2lnbiwgYmVsb3cgZGVmaW5pdGlvbiBj YW4gYWxzbyBiZSBhIHN0cnVjdHVyZQ0KPiBQQ0QuDQo+ICsgIC8vIFNQQ1IgU2VyaWFsIFBvcnQN Cj4gKyAgew0KPiArICAgIEZpeGVkUGNkR2V0NjQgKFBjZFNlcmlhbFJlZ2lzdGVyQmFzZSksICAv LyBVSU5UNjQgIEJhc2VBZGRyZXNzDQo+ICsgICAgRml4ZWRQY2RHZXQzMiAoUEwwMTFVYXJ0SW50 ZXJydXB0KSwgICAgIC8vIFVJTlQzMiAgSW50ZXJydXB0DQo+ICsgICAgRml4ZWRQY2RHZXQ2NCAo UGNkVWFydERlZmF1bHRCYXVkUmF0ZSksIC8vIFVJTlQ2NCAgQmF1ZFJhdGUNCj4gKyAgICBGaXhl ZFBjZEdldDMyIChQTDAxMVVhcnRDbGtJbkh6KSAgICAgICAgLy8gVUlOVDMyICBDbG9jaw0KPiAr ICB9LA0KPg0KPiArICAvLyBEZWJ1ZyBTZXJpYWwgUG9ydA0KPiArICB7DQo+ICsgICAgRml4ZWRQ Y2RHZXQ2NCAoUGNkU2VyaWFsRGJnUmVnaXN0ZXJCYXNlKSwgLy8gVUlOVDY0ICBCYXNlQWRkcmVz cw0KPiArICAgIDM4LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFVJ TlQzMiAgSW50ZXJydXB0DQo+ICsgICAgRml4ZWRQY2RHZXQ2NCAoUGNkU2VyaWFsRGJnVWFydEJh dWRSYXRlKSwgLy8gVUlOVDY0ICBCYXVkUmF0ZQ0KPiArICAgIEZpeGVkUGNkR2V0MzIgKFBjZFNl cmlhbERiZ1VhcnRDbGtJbkh6KSAgIC8vIFVJTlQzMiAgQ2xvY2sNCj4gKyAgfSwNCj4NCj4gV2hh dCBpZiB3ZSBqdXN0IHVzZSBQQ0QgdG8gZGVmaW5lIHRoZXNlIENQVSBpbmZvLCBHSUNDIGluZm8/ IERvIHdlIHJlYWxseQ0KPiBhbm90aGVyIENvbmZpZ3VyYXRpb25NYW5hZ2VyPw0KDQpbW0V2YW4g TGxveWRdXSBQQ0RzIGFyZSB2ZXJ5IHVzZWZ1bC4gIEhvd2V2ZXIgdGhleSAoZXNwZWNpYWxseSBG aXhlZFBjZHMpIGFyZSBidWlsZCB0aW1lIG9wdGlvbnMuICBHaXZlbiB0aGUgYWltIG9mIGEgc2lu Z2xlIFVFRkkgaW1hZ2UsIHRoZXkgZG8gbm90IHF1aXRlIHdvcmsuICBXZSB3YW50IHRoZSBVRUZJ IHRvIGJlIGFibGUgdG8gZ2V0IHRoZSB2YXJpYW50IGNvbmZpZyBmcm9tIGFuIGV4dGVybmFsIGVu dGl0eS4gIEluIHRoZW9yeSwgYSBjb21wbGV4IGVub3VnaCBQQ0QgZGF0YWJhc2UgY291bGQgYmUg dXNlZCB0byBwcm92aWRlIHRoZSBjb25maWcgaW5mb3JtYXRpb24sIGFuZCBjb3VsZCBiZSBsb2Fk ZWQgZnJvbSBhIHJlbW90ZSwgYnV0IGl0IHdvdWxkIGJlIGEgdmVyeSBlbGFib3JhdGUgc29sdXRp b24uDQoNCj4NCj4NCj4gQWxsIGluIGFsbCwgaWYgd2UgY2FuIGNvbXBhcmUgdGhlIGRpZmZlcmVu Y2Ugb2YgYmVsb3cgZGVzaWduIHdpdGggcHJvcy9jb25zLA0KPiB0aGF0IHdpbGwgYmUgZ3JlYXQu DQo+IFRoYXQgd2lsbCBoZWxwIHVzIHVuZGVyc3RhbmQgbW9yZSBhYm91dCB0aGUgbmV3IGRlc2ln bi4NCj4gQSkgRGF0YUh1YiAoSW50ZWxGcmFtZXdvcmtQa2csIGRvIG5vdCByZWNvbW1lbmQgdG8g dXNlLikNCj4gQikgUENEIChNZGVQa2csIGluIFBJIHNwZWNpZmljYXRpb24pIGFuZCBzdHJ1Y3R1 cmUgUENEIChFREtJSSBzdGFnaW5nKQ0KPiBDKSBDb25maWd1cmF0aW9uTWFuYWdlciAodGhpcyBw YXRjaCkNCg0KW1tFdmFuIExsb3lkXV0gV2Ugd2lsbCBuZWVkIHRvIHN0dWR5IERhdGFIdWIgdG8g c2VlIHdoYXQgaXMgdGhlcmUsIGJ1dCB3ZSB3aWxsIG1ha2UgYSByZXNwb25zZSB3aGVuIHdlIGhh dmUuDQoNCj4NCj4NCj4gVGhhbmsgeW91DQo+IFlhbyBKaWV3ZW4NCj4NCj4gPiAtLS0tLU9yaWdp bmFsIE1lc3NhZ2UtLS0tLQ0KPiA+IEZyb206IGVkazItZGV2ZWwgW21haWx0bzplZGsyLWRldmVs LWJvdW5jZXNAbGlzdHMuMDEub3JnXSBPbiBCZWhhbGYgT2YNCj4gPiBldmFuLmxsb3lkQGFybS5j b20NCj4gPiBTZW50OiBUdWVzZGF5LCBPY3RvYmVyIDMsIDIwMTcgMzo0OCBBTQ0KPiA+IFRvOiBl ZGsyLWRldmVsQGxpc3RzLjAxLm9yZw0KPiA+IENjOiAiTWF0dGVvLkNhcmxpbmlAYXJtLmNvbSJA YXJtLmNvbTsgIm5kQGFybS5jb20iQGFybS5jb207DQo+ID4gImFyZC5iaWVzaGV1dmVsQGxpbmFy by5vcmciQGFybS5jb207DQo+ID4gIlN0ZXBoYW5pZS5IdWdoZXMtRml0dEBhcm0uY29tIkBhcm0u Y29tOw0KPiA+ICJ0aG9tYXMuYWJyYWhhbUBhcm0uY29tIkBhcm0uY29tOw0KPiA+ICJBcnZpbmQu Q2hhdWhhbkBhcm0uY29tIkBhcm0uY29tOw0KPiAibGVpZi5saW5kaG9sbUBsaW5hcm8ub3JnIkBh cm0uY29tOw0KPiA+ICJEYW5paWwuRWdyYW5vdkBhcm0uY29tIkBhcm0uY29tDQo+ID4gU3ViamVj dDogW2VkazJdIFtQQVRDSCAwLzJdIER5bmFtaWMgVGFibGVzDQo+ID4NCj4gPiBGcm9tOiBFdmFu TGxveWQgPGV2YW4ubGxveWRAYXJtLmNvbT4NCj4gPg0KPiA+IEhpc3RvcmljYWxseSwgQUNQSSBj b2RlLCBTTUJJT1MgdGFibGVzLCBhbmQgVUVGSSBmaXJtd2FyZSB3ZXJlIG9mdGVuDQo+ID4gZGV2 ZWxvcGVkIGluIGlzb2xhdGlvbiBmcm9tIGVhY2ggb3RoZXIuICBUaGlzIGludHJvZHVjZWQgc2V2 ZXJhbA0KPiA+IHByb2JsZW1zLCBub3QgbGVhc3Qgb2Ygd2hpY2ggd2FzIGR1cGxpY2F0aW9uIG9m IHBsYXRmb3JtIGluZm9ybWF0aW9uDQo+ID4gYmV0d2VlbiB0aGUgdmFyaW91cyBzb3VyY2UgdHJl ZXMuDQo+ID4gSW4gYWRkaXRpb24sIHZhcmlhbnRzIG9mIHBsYXRmb3JtcyBpbnRyb2R1Y2VkIGEg cGxldGhvcmEgb2YNCj4gPiBhbHRlcm5hdGl2ZSBidWlsZHMgb2YgQUNQSSwgU01CSU9TIGFuZCBF REsyLCB3aXRoIHRoZSBjb25jb21pdGFudCByaXNrDQo+ID4gb2YgZ2V0dGluZyB0aGUgbWl4dHVy ZSB3cm9uZyBpbiBhIGJ1aWxkLg0KPiA+DQo+ID4gSW4gdGhlIGVmZm9ydCB0byByZXNvbHZlIHRo ZXNlIHByb2JsZW1zLCB0aGUgc29sdXRpb24gcHJvdG90eXBlZCBoZXJlDQo+ID4gd2FzIGRldmlz ZWQuICBUaGUgYmFzaWMgaWRlYSBpcyB0byBvYnRhaW4gdGhlICJ2YXJpYW50Ig0KPiA+IGluZm9y bWF0aW9uIGZyb20gYSBtYW5hZ2VtZW50IG5vZGUuICBUaGF0IG1lYW5zIHRoZSBmaXJtd2FyZSBp bWFnZQ0KPiBjYW4NCj4gPiBiZSBwbGF0Zm9ybSBpbmRlcGVuZGVudCwgd2l0aCBBQ1BJLCBTTUJJ T1MgKGFuZCBwb3RlbnRpYWxseQ0KPiA+IG90aGVyKSB0YWJsZXMgZ2VuZXJhdGVkIHdpdGggaW5m b3JtYXRpb24gZnJvbSB0aGUgbWFuYWdlbWVudCBub2RlLg0KPiA+IFRoaXMgZXhhbXBsZSBoYXMg dGhlIGZyYW1ld29yayBmb3IgdGhhdCwgYnV0IHRoZSBjb25maWd1cmF0aW9uDQo+ID4gaW5mb3Jt YXRpb24gaXMgc3VwcGxpZWQgZGlyZWN0bHksIGFzIGFuIGludGVyaW0gc29sdXRpb24gdW50aWwg YQ0KPiA+IHN1aXRhYmxlIG1hbmFnZW1lbnQgbm9kZSBpbXBsZW1lbnRhdGlvbiBleGlzdHMgeWV0 Lg0KPiA+DQo+ID4NCi4uLg0KPiA+IC0tDQo+ID4gR3VpZCgiQ0UxNjU2NjktM0VGMy00OTNGLUI4 NUQtNjE5MEVFNUI5NzU5IikNCj4gPg0KPiA+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fDQo+ID4gZWRrMi1kZXZlbCBtYWlsaW5nIGxpc3QNCj4gPiBlZGsy LWRldmVsQGxpc3RzLjAxLm9yZw0KPiA+IGh0dHBzOi8vbGlzdHMuMDEub3JnL21haWxtYW4vbGlz dGluZm8vZWRrMi1kZXZlbA0KSU1QT1JUQU5UIE5PVElDRTogVGhlIGNvbnRlbnRzIG9mIHRoaXMg ZW1haWwgYW5kIGFueSBhdHRhY2htZW50cyBhcmUgY29uZmlkZW50aWFsIGFuZCBtYXkgYWxzbyBi ZSBwcml2aWxlZ2VkLiBJZiB5b3UgYXJlIG5vdCB0aGUgaW50ZW5kZWQgcmVjaXBpZW50LCBwbGVh c2Ugbm90aWZ5IHRoZSBzZW5kZXIgaW1tZWRpYXRlbHkgYW5kIGRvIG5vdCBkaXNjbG9zZSB0aGUg Y29udGVudHMgdG8gYW55IG90aGVyIHBlcnNvbiwgdXNlIGl0IGZvciBhbnkgcHVycG9zZSwgb3Ig c3RvcmUgb3IgY29weSB0aGUgaW5mb3JtYXRpb24gaW4gYW55IG1lZGl1bS4gVGhhbmsgeW91Lg0K