From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=40.107.13.52; helo=eur01-he1-obe.outbound.protection.outlook.com; envelope-from=sami.mujawar@arm.com; receiver=edk2-devel@lists.01.org Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-eopbgr130052.outbound.protection.outlook.com [40.107.13.52]) (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 7A8F5211B8191 for ; Tue, 22 Jan 2019 01:56:33 -0800 (PST) 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:X-MS-Exchange-SenderADCheck; bh=+2VIuKMoNPfNkxJuT11zfCOka8EEKi55Vhr4Wt+J90Q=; b=IcRIS0HYVBBoOBL8PhoW5cCcxmGvXiOuGqKz3tgUtuJeH16/1pDYhbPEjBup80nonJwtKhuXjCMK7Qf7Sspz/KKaSbhYJPCBTQ93KyRpkEKPnbuHTazEZv88NHWr6YMpZ2UyZQUegbMgqHJekbGjabFNBmj33g8Rr4rBLt+/3nU= Received: from DB6PR0802MB2375.eurprd08.prod.outlook.com (10.172.228.142) by DB6PR0802MB2264.eurprd08.prod.outlook.com (10.172.227.149) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1537.26; Tue, 22 Jan 2019 09:56:31 +0000 Received: from DB6PR0802MB2375.eurprd08.prod.outlook.com ([fe80::d17f:cf4e:9bed:12e5]) by DB6PR0802MB2375.eurprd08.prod.outlook.com ([fe80::d17f:cf4e:9bed:12e5%5]) with mapi id 15.20.1537.031; Tue, 22 Jan 2019 09:56:30 +0000 From: Sami Mujawar To: Ard Biesheuvel CC: "edk2-devel@lists.01.org" , Leif Lindholm , "Kinney, Michael D" , Alexei Fedorov , Matteo Carlini , Stephanie Hughes-Fitt , nd Thread-Topic: [PATCH edk2-platforms v1 5/6] Platform/ARM: Add OEM CPU generator for FVP Thread-Index: AQHUmU/FXXxAeRSg1UKs/uOrOTRNfKWJfCjwgDG5DYCAAAejwA== Date: Tue, 22 Jan 2019 09:56:30 +0000 Message-ID: References: <20181221170021.145024-1-sami.mujawar@arm.com> <20181221170021.145024-6-sami.mujawar@arm.com> In-Reply-To: Accept-Language: en-GB, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=Sami.Mujawar@arm.com; x-originating-ip: [217.140.106.54] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1; DB6PR0802MB2264; 6:Kz1/ZHNibNGR2GxaIV44GKqEvJFeCnjMx2dis+uY3b3nnsM69MCnur6+MH7BFkfvghrg8CFS4ac1aWh/xkXICHZGuqO0e7o+8rwJ1BpLu9lUQBA4rWW1rFXjfDx1+sbX/OtyEJH4GKvKrW6Vt52Yam/3uhHoiK8SlxDaSSVzXMA4882aWYVTd9eNsizTufSatwRmu7lmtLrJRN/126r3ezX5VRacOv/Y9tf0Dx9ngHWflvEqJAjgkyNq12769/S37qYOM6u+NajhvAxzo4ZuVt8F3UoktnHD0hPSvieBj2FAjRMvPXfXR9egJNgYgJrBE1WimZJHD0GcsjCY++5XOtLHuU1ev6VjrWNRIrTnALQy1Bs1XC65wKgRHYYt65RN4+H+WSYp+4H81K4/TTYGVhwwC5M2KBqyt4C3c2TfMz4Rb3fysbdtzSytIvn1nZsErpD8TUqYTDs2ErRmawwXmA==; 5:O2/5XiWnkBFHG8kqGwCPpfK91jtNUNcvYp52pBHpk6PGGh0jDXZpmH8mIdVplAK/eOe8KtJHbKyNbvpgtS6leKjankQExBs2IHstVhGSM4G2NYPahwIs6iLeepF2iYvC+YBahJqsRxxlGM3cF/LUMxtEdmyBR4tUM2x/gahO9f4ILX3YUhUf2ig9QA4jMQPnmRyO8HgTCP3YJ2ye8L1I8g==; 7:jrtE11xtVP+xPFxvhQkA/C9idN+TxQvSVEM/wFhXNgsJ76BORnIn44PQkIRtiCAkHespzeLshMIZMT+Tnnn8zqibWkZrlSsJ7KK8u8OtzmO3S74PDmZJU3YyPu6GC4e+jbztc7OAr35tmR3y7IRpDA== x-ms-exchange-antispam-srfa-diagnostics: SOS;SOR; x-ms-office365-filtering-correlation-id: f52bbc2b-cba8-48c5-77fb-08d6804fe275 x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600109)(711020)(4618075)(2017052603328)(7153060)(7193020); SRVR:DB6PR0802MB2264; x-ms-traffictypediagnostic: DB6PR0802MB2264: nodisclaimer: True x-microsoft-antispam-prvs: x-forefront-prvs: 0925081676 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(366004)(39860400002)(376002)(136003)(346002)(396003)(13464003)(189003)(199004)(446003)(76176011)(74316002)(105586002)(11346002)(106356001)(26005)(14454004)(7696005)(97736004)(7736002)(305945005)(486006)(2906002)(6436002)(8676002)(81166006)(81156014)(186003)(53546011)(6506007)(6916009)(72206003)(102836004)(93886005)(66066001)(966005)(476003)(3846002)(256004)(217873002)(16799955002)(316002)(15188155005)(86362001)(229853002)(25786009)(6246003)(6116002)(71200400001)(54906003)(71190400001)(68736007)(33656002)(345774005)(478600001)(8936002)(53376002)(99286004)(9686003)(6306002)(55016002)(53936002)(4326008); DIR:OUT; SFP:1101; SCL:1; SRVR:DB6PR0802MB2264; H:DB6PR0802MB2375.eurprd08.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; received-spf: None (protection.outlook.com: arm.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: LWTU6fREHZwlsW1xCwX8c51qO6ZODYyXx0tjdyiKpiGP7XPhDZTCGgzF0QyJ2bGRZBDkLVZafDLD2XUlx7B8zjWV3PPJUvnj2FUAz/DHLDxRGi5LDfYEamNjeD77142tyq3woE5h8GK4laO6j1RWSt/RWUL6ynl1AK7/lmdG63rt7JXkDubIElabEnLfkZ0xLmNL3WZW9sKbZAFtTty802AVDRG7IqmWcXSJMi2BuLo35Q3z3TITlE4KGfM6ujD+2/aciFVqnS53n++ShBUacEcKWA1BIE892KFVqXetWQUG16dx4ljRjpRJsa28sdT6ofjQricPXd1cYOginMBmycxnIa4Jmyn6Z0SQ4RGJ3bw43mElM/gPY8YYgs8dUQ5GHUEUoru4WloFCSGrxDClX+4s1yjtiFBCxDF7DO+KLho= spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM MIME-Version: 1.0 X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-Network-Message-Id: f52bbc2b-cba8-48c5-77fb-08d6804fe275 X-MS-Exchange-CrossTenant-originalarrivaltime: 22 Jan 2019 09:56:30.8343 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0802MB2264 Subject: Re: [PATCH edk2-platforms v1 5/6] Platform/ARM: Add OEM CPU generator for FVP X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Jan 2019 09:56:36 -0000 Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 SGkgQXJkLA0KDQpQbGVhc2Ugc2VlIG15IHJlc3BvbnNlIGlubGluZS4NCg0KUmVnYXJkcywNCg0K U2FtaSBNdWphd2FyDQotLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KRnJvbTogQXJkIEJpZXNo ZXV2ZWwgPGFyZC5iaWVzaGV1dmVsQGxpbmFyby5vcmc+IA0KU2VudDogMjIgSmFudWFyeSAyMDE5 IDA5OjIyIEFNDQpUbzogU2FtaSBNdWphd2FyIDxTYW1pLk11amF3YXJAYXJtLmNvbT4NCkNjOiBl ZGsyLWRldmVsQGxpc3RzLjAxLm9yZzsgQXJ2aW5kIENoYXVoYW4gPEFydmluZC5DaGF1aGFuQGFy bS5jb20+OyBEYW5paWwgRWdyYW5vdiA8RGFuaWlsLkVncmFub3ZAYXJtLmNvbT47IFRob21hcyBB YnJhaGFtIDx0aG9tYXMuYWJyYWhhbUBhcm0uY29tPjsgTGVpZiBMaW5kaG9sbSA8bGVpZi5saW5k aG9sbUBsaW5hcm8ub3JnPjsgS2lubmV5LCBNaWNoYWVsIEQgPG1pY2hhZWwuZC5raW5uZXlAaW50 ZWwuY29tPjsgQWxleGVpIEZlZG9yb3YgPEFsZXhlaS5GZWRvcm92QGFybS5jb20+OyBNYXR0ZW8g Q2FybGluaSA8TWF0dGVvLkNhcmxpbmlAYXJtLmNvbT47IFN0ZXBoYW5pZSBIdWdoZXMtRml0dCA8 U3RlcGhhbmllLkh1Z2hlcy1GaXR0QGFybS5jb20+OyBuZCA8bmRAYXJtLmNvbT4NClN1YmplY3Q6 IFJlOiBbUEFUQ0ggZWRrMi1wbGF0Zm9ybXMgdjEgNS82XSBQbGF0Zm9ybS9BUk06IEFkZCBPRU0g Q1BVIGdlbmVyYXRvciBmb3IgRlZQDQoNCk9uIEZyaSwgMjEgRGVjIDIwMTggYXQgMTk6MTQsIFNh bWkgTXVqYXdhciA8U2FtaS5NdWphd2FyQGFybS5jb20+IHdyb3RlOg0KPg0KPiBIaSBBcmQsDQo+ DQo+IFBsZWFzZSBzZWUgbXkgcmVzcG9uc2UgaW5saW5lLg0KPg0KPiBSZWdhcmRzLA0KPg0KPiBT YW1pIE11amF3YXINCj4NCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogQXJk IEJpZXNoZXV2ZWwgPGFyZC5iaWVzaGV1dmVsQGxpbmFyby5vcmc+DQo+IFNlbnQ6IDIxIERlY2Vt YmVyIDIwMTggMDU6MDggUE0NCj4gVG86IFNhbWkgTXVqYXdhciA8U2FtaS5NdWphd2FyQGFybS5j b20+DQo+IENjOiBlZGsyLWRldmVsQGxpc3RzLjAxLm9yZzsgQXJ2aW5kIENoYXVoYW4gPEFydmlu ZC5DaGF1aGFuQGFybS5jb20+OyANCj4gRGFuaWlsIEVncmFub3YgPERhbmlpbC5FZ3Jhbm92QGFy bS5jb20+OyBUaG9tYXMgQWJyYWhhbSANCj4gPHRob21hcy5hYnJhaGFtQGFybS5jb20+OyBMZWlm IExpbmRob2xtIDxsZWlmLmxpbmRob2xtQGxpbmFyby5vcmc+OyANCj4gS2lubmV5LCBNaWNoYWVs IEQgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPjsgQWxleGVpIEZlZG9yb3YgDQo+IDxBbGV4 ZWkuRmVkb3JvdkBhcm0uY29tPjsgTWF0dGVvIENhcmxpbmkgPE1hdHRlby5DYXJsaW5pQGFybS5j b20+OyANCj4gU3RlcGhhbmllIEh1Z2hlcy1GaXR0IDxTdGVwaGFuaWUuSHVnaGVzLUZpdHRAYXJt LmNvbT47IG5kIDxuZEBhcm0uY29tPg0KPiBTdWJqZWN0OiBSZTogW1BBVENIIGVkazItcGxhdGZv cm1zIHYxIDUvNl0gUGxhdGZvcm0vQVJNOiBBZGQgT0VNIENQVSANCj4gZ2VuZXJhdG9yIGZvciBG VlANCj4NCj4gSGkgU2FtaSwNCj4NCj4gT24gRnJpLCAyMSBEZWMgMjAxOCBhdCAxODowMSwgU2Ft aSBNdWphd2FyIDxzYW1pLm11amF3YXJAYXJtLmNvbT4gd3JvdGU6DQo+ID4NCj4gPiBBZGQgc3Vw cG9ydCBmb3IgZHluYW1pYyBnZW5lcmF0aW9uIG9mIEFDUEkgQ1BVIGRldmljZSBpbmZvcm1hdGlv bi4NCj4gPiBUaGlzIGdlbmVyYXRvciB1c2VzIHRoZSBjb21waWxlZCBkYXRhIGZyb20gYSB0ZW1w bGF0ZSBhc2wgZmlsZSBhbmQgDQo+ID4gcGF0Y2hlcyBpdCBhdCBydW50aW1lIHRvIGdlbmVyYXRl IHRoZSBDUFUgaW5mb3JtYXRpb24gYmFzZWQgb24gdGhlIA0KPiA+IG51bWJlciBvZiBDUFVzIGFu ZCB0aGVpciBBQ1BJIFVJRC4gVGhpcyBwYXRjaGVkIGRhdGEgaXMgdGhlbiANCj4gPiBpbnN0YWxs ZWQgYXMgYSBTU0RUIHRhYmxlLg0KPiA+DQo+ID4gQ29udHJpYnV0ZWQtdW5kZXI6IFRpYW5vQ29y ZSBDb250cmlidXRpb24gQWdyZWVtZW50IDEuMQ0KPiA+IFNpZ25lZC1vZmYtYnk6IFNhbWkgTXVq YXdhciA8c2FtaS5tdWphd2FyQGFybS5jb20+DQo+ID4gLS0tDQo+ID4gIFBsYXRmb3JtL0FSTS9W RXhwcmVzc1BrZy9Db25maWd1cmF0aW9uTWFuYWdlci9BY3BpT2VtQ3B1R2VuZXJhdG9yTGliL0Fj cGlPZW1DcHVBU0xMaWIuaW5mICAgICAgIHwgIDI3ICsrDQo+ID4gIFBsYXRmb3JtL0FSTS9WRXhw cmVzc1BrZy9Db25maWd1cmF0aW9uTWFuYWdlci9BY3BpT2VtQ3B1R2VuZXJhdG9yTGliL0FjcGlP ZW1DcHVHZW5lcmF0b3JMaWIuaW5mIHwgIDQyICsrDQo+ID4gIFBsYXRmb3JtL0FSTS9WRXhwcmVz c1BrZy9Db25maWd1cmF0aW9uTWFuYWdlci9BY3BpT2VtQ3B1R2VuZXJhdG9yTGliL09lbUNwdUdl bmVyYXRvci5jICAgICAgICAgIHwgNDAzICsrKysrKysrKysrKysrKysrKysrDQo+ID4gIFBsYXRm b3JtL0FSTS9WRXhwcmVzc1BrZy9Db25maWd1cmF0aW9uTWFuYWdlci9BY3BpT2VtQ3B1R2VuZXJh dG9yTGliL09lbUNwdUdlbmVyYXRvci5oICAgICAgICAgIHwgIDIzICsrDQo+ID4gIFBsYXRmb3Jt L0FSTS9WRXhwcmVzc1BrZy9Db25maWd1cmF0aW9uTWFuYWdlci9BY3BpT2VtQ3B1R2VuZXJhdG9y TGliL1NzZHRDcHVUZW1wbGF0ZS5hc2wgICAgICAgIHwgIDI1ICsrDQo+ID4gIDUgZmlsZXMgY2hh bmdlZCwgNTIwIGluc2VydGlvbnMoKykNCj4gPg0KPiAuLi4NCj4gPiBkaWZmIC0tZ2l0DQo+ID4g YS9QbGF0Zm9ybS9BUk0vVkV4cHJlc3NQa2cvQ29uZmlndXJhdGlvbk1hbmFnZXIvQWNwaU9lbUNw dUdlbmVyYXRvckwNCj4gPiBpYg0KPiA+IC9PZW1DcHVHZW5lcmF0b3IuYw0KPiA+IGIvUGxhdGZv cm0vQVJNL1ZFeHByZXNzUGtnL0NvbmZpZ3VyYXRpb25NYW5hZ2VyL0FjcGlPZW1DcHVHZW5lcmF0 b3JMDQo+ID4gaWINCj4gPiAvT2VtQ3B1R2VuZXJhdG9yLmMNCj4gPiBuZXcgZmlsZSBtb2RlIDEw MDY0NA0KPiA+IGluZGV4DQo+ID4gMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMC4uZDU0NDI0NGJmYmQ1NjZjMTI4YjU3ZDgwYjANCj4gPiBjOA0KPiA+IGMyYmRjMGNjYTM3 NA0KPiA+IC0tLSAvZGV2L251bGwNCj4gPiArKysgYi9QbGF0Zm9ybS9BUk0vVkV4cHJlc3NQa2cv Q29uZmlndXJhdGlvbk1hbmFnZXIvQWNwaU9lbUNwdUdlbmVyYQ0KPiA+ICsrKyB0bw0KPiA+ICsr KyByTGliL09lbUNwdUdlbmVyYXRvci5jDQo+ID4gQEAgLTAsMCArMSw0MDMgQEANCj4gPiArLyoq IEBmaWxlDQo+ID4gKyAgT0VNIENQVSBUYWJsZSBHZW5lcmF0b3INCj4gPiArDQo+ID4gKyAgQ29w eXJpZ2h0IChjKSAyMDE4LCBBUk0gTGltaXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCj4gPiAr ICBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzICBhcmUgbGljZW5z ZWQgYW5kIA0KPiA+ICsgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIGFuZCBjb25kaXRp b25zIG9mIHRoZSBCU0QgTGljZW5zZSAgDQo+ID4gKyB3aGljaCBhY2NvbXBhbmllcyB0aGlzIGRp c3RyaWJ1dGlvbi4gIFRoZSBmdWxsIHRleHQgb2YgdGhlIGxpY2Vuc2UgDQo+ID4gKyBtYXkgYmUg Zm91bmQgYXQgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9ic2QtbGljZW5zZS5waHAN Cj4gPiArDQo+ID4gKyAgVEhFIFBST0dSQU0gSVMgRElTVFJJQlVURUQgVU5ERVIgVEhFIEJTRCBM SUNFTlNFIE9OIEFOICJBUyBJUyINCj4gPiArQkFTSVMsDQo+ID4gKyAgV0lUSE9VVCBXQVJSQU5U SUVTIE9SIFJFUFJFU0VOVEFUSU9OUyBPRiBBTlkgS0lORCwgRUlUSEVSIEVYUFJFU1MgT1IgSU1Q TElFRC4NCj4gPiArKiovDQo+ID4gKw0KPiA+ICsjaW5jbHVkZSA8TGlicmFyeS9BY3BpTGliLmg+ DQo+ID4gKyNpbmNsdWRlIDxMaWJyYXJ5L0Jhc2VMaWIuaD4NCj4gPiArI2luY2x1ZGUgPExpYnJh cnkvQmFzZU1lbW9yeUxpYi5oPg0KPiA+ICsjaW5jbHVkZSA8TGlicmFyeS9EZWJ1Z0xpYi5oPg0K PiA+ICsjaW5jbHVkZSA8TGlicmFyeS9NZW1vcnlBbGxvY2F0aW9uTGliLmg+ICNpbmNsdWRlIA0K PiA+ICs8TGlicmFyeS9VZWZpQm9vdFNlcnZpY2VzVGFibGVMaWIuaD4NCj4gPiArI2luY2x1ZGUg PFByb3RvY29sL0FjcGlUYWJsZS5oPg0KPiA+ICsNCj4gPiArLy8gTW9kdWxlIHNwZWNpZmljIGlu Y2x1ZGUgZmlsZXMuDQo+ID4gKyNpbmNsdWRlIDxBY3BpVGFibGVHZW5lcmF0b3IuaD4NCj4gPiAr I2luY2x1ZGUgPENvbmZpZ3VyYXRpb25NYW5hZ2VyT2JqZWN0Lmg+ICNpbmNsdWRlIA0KPiA+ICs8 Q29uZmlndXJhdGlvbk1hbmFnZXJIZWxwZXIuaD4gI2luY2x1ZGUgPExpYnJhcnkvVGFibGVIZWxw ZXJMaWIuaD4gDQo+ID4gKyNpbmNsdWRlIDxQcm90b2NvbC9Db25maWd1cmF0aW9uTWFuYWdlclBy b3RvY29sLmg+DQo+ID4gKyNpbmNsdWRlIDxQcm90b2NvbC9EeW5hbWljVGFibGVGYWN0b3J5UHJv dG9jb2wuaD4NCj4gPiArDQo+ID4gKyNpbmNsdWRlIDxPZW1DcHVHZW5lcmF0b3IuaD4NCj4gPiAr DQo+ID4gKy8vIEFNTCBDb2RlIEluY2x1ZGUgZmlsZXMgZ2VuZXJhdGVkIGJ5IGlBU0wgQ29tcGls ZXIgI2luY2x1ZGUgDQo+ID4gKzxTc2R0Q3B1VGVtcGxhdGUuaGV4Pg0KPiA+ICsNCj4gPiArLy8g QU1MIENvZGUgb2Zmc2V0cyBmaWxlIGdlbmVyYXRlZCBieSBpQVNMIENvbXBpbGVyICNpbmNsdWRl IA0KPiA+ICs8U3NkdENwdVRlbXBsYXRlLm9mZnNldC5oPg0KPiA+ICsNCj4NCj4gQXBvbG9naWVz IGlmIEkgc2hvdWxkIGhhdmUgc3BvdHRlZCB0aGlzIGJlZm9yZSwgYnV0IHRoaXMgaXMgYSBuby1n by4NCj4gV2UgYXJlIHJlbHlpbmcgb24gaW50ZXJtZWRpYXRlIG91dHB1dCBvZiBzb21lIHZlcnNp b24gb2YgdGhlIElBU0wgY29tcGlsZXIgaGVyZSwgd2hpY2ggW0FGQUlLXSBpcyBub3QgZm9ybWFs bHkgc3BlY2lmaWVkIG9yIGRvY3VtZW50ZWQuDQo+IFdlIGNhbm5vdCBiYXNlIGFuIGVsYWJvcmF0 ZSBmcmFtZXdvcmsgbGlrZSBEeW5hbWljVGFibGVzIG9uIHRoaXMuDQo+DQo+IEkgZ3Vlc3MgdGhp cyBvbmx5IGFmZmVjdHMgRFNEVC9TU0RUIGdlbmVyYXRpb24sIHJpZ2h0Pw0KPiBbU0FNSV0gWWVz LiBUaGUgbGFzdCAyIHBhdGNoZXMgaW4gdGhpcyBzZXJpZXMgYWRkIHRoaXMgZmVhdHVyZS4gV2Ug cHJvYmFibHkgbmVlZCBtb3JlIGRpc2N1c3Npb24gb24gdGhpcyB0b3BpYy4NCj4gVW50aWwgdGhl biBjYW4gd2UgcHJvY2VlZCB3aXRoIHJldmlldyBvZiB0aGUgcmVtYWluaW5nIHBhdGNoZXMsIG9y IHNob3VsZCBJIHN1Ym1pdCBhIG5ldyBwYXRjaCBzZXJpZXMgdGhhdCBkcm9wcyB0aGUgbGFzdCAy IHBhdGNoZXM/DQo+DQoNCkNvdWxkIHlvdSBsb29rIGludG8gd2hldGhlciBFRkkncyBBQ1BJIFNE VCBwcm90b2NvbCBoYXMgd2hhdCB5b3UgbmVlZCB0byBtYW5pcHVsYXRlIEFNTCBhdCBydW50aW1l Pw0KW1NBTUldIFRoYW5rIHlvdSBmb3IgcG9pbnRpbmcgbWUgdG8gdGhlIEVGSV9BQ1BJX1NEVF9Q Uk9UT0NPTC4gSSB3aWxsIGV4cGVyaW1lbnQgd2l0aCB0aGlzIGFuZCBsZXQgeW91IGtub3cuDQpJ IGFtIGdvaW5nIHRvIHJlc3VibWl0IHRoZSBwYXRjaCBzZXJpZXMgYXMgSSBoYXZlIGRvbmUgc29t ZSBjaGFuZ2VzIGJhc2VkIG9uIGludGVybmFsIGZlZWRiYWNrLiBJIHdpbGwgZHJvcCB0aGlzIHBh dGNoIFs1LzZdIGFuZCB0aGUgbmV4dCB3aGVuIEkgcmVzdWJtaXQuDQoNCg==