From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=104.47.2.74; helo=eur01-db5-obe.outbound.protection.outlook.com; envelope-from=meenakshi.aggarwal@nxp.com; receiver=edk2-devel@lists.01.org Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01on0074.outbound.protection.outlook.com [104.47.2.74]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 8051C21F833AE for ; Fri, 5 Jan 2018 00:48:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=FXGtM4+UvSRclt3C92+rcyVO0D0dl4cxSmZCy3BRKNA=; b=lVraiSsLKU9ByxEiweucqZBr9zCy7umpBF0U5fvVl5tAfPjrO8a25fkaXQEyjbyBVI95K7jxxzAdLGnh6A5y5ykbXW5Av/Qy4/RdT1ICc3RXpmAMRsPubwMTAHg/+JtdqiPtwOGTTDvY5Z3KBxBSSg5NqkoqCGMuTulFkLYPXoY= Received: from DB5PR04MB0998.eurprd04.prod.outlook.com (10.161.199.12) by AM5PR04MB2995.eurprd04.prod.outlook.com (10.173.254.27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.366.8; Fri, 5 Jan 2018 08:53:40 +0000 Received: from DB5PR04MB0998.eurprd04.prod.outlook.com ([fe80::8554:8835:334d:27b7]) by DB5PR04MB0998.eurprd04.prod.outlook.com ([fe80::8554:8835:334d:27b7%13]) with mapi id 15.20.0366.007; Fri, 5 Jan 2018 08:53:40 +0000 From: Meenakshi Aggarwal To: Ard Biesheuvel CC: Leif Lindholm , "Kinney, Michael D" , "edk2-devel@lists.01.org" , Udit Kumar , Varun Sethi Thread-Topic: [PATCH edk2-platforms 0/3] Cover letter:Pci Emulation and SATA support Thread-Index: AQHTeu4hJF4A757qMUe8JWS02vxCSaNPfg4AgBQoGlCAAAOQgIAAFyLQgAEqOyCAABAZAIAAE+7w Date: Fri, 5 Jan 2018 08:53:40 +0000 Message-ID: References: <1513945005-30002-1-git-send-email-meenakshi.aggarwal@nxp.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=meenakshi.aggarwal@nxp.com; x-originating-ip: [192.88.169.1] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1; AM5PR04MB2995; 7:m8dZUsljVZR+DWoMNlkH4iJVdbdMWpFT9vmB8Ep5qWUhnCs/24H0rzyqPuE4mm4QxLgSZMjksuFtblmlH6eI13UUevruxLTu5h+HxdOgS4T50sviaoDIfxW16VwaAzbLhMQzBkbVnKeXT3bZwr4jTf/UFg0ATp07o3/eyx+r9F55FPLqsziZmWA/TdLc06j0XF8vPT+073H1RZehaICycchYmMj9fQ51aybgYWfh/vlD2HqhlZWKeaz9f8IdHQd4 x-ms-exchange-antispam-srfa-diagnostics: SSOS;SSOR; x-forefront-antispam-report: SFV:SKI; SCL:-1; SFV:NSPM; SFS:(10009020)(376002)(346002)(39860400002)(396003)(366004)(39380400002)(13464003)(189003)(199004)(24454002)(54906003)(6246003)(3280700002)(105586002)(14454004)(74316002)(4326008)(7736002)(6916009)(2950100002)(478600001)(33656002)(2906002)(305945005)(53546011)(316002)(86362001)(6506007)(97736004)(76176011)(93886005)(106356001)(7696005)(5250100002)(3660700001)(575784001)(6436002)(53936002)(8676002)(81166006)(81156014)(68736007)(5660300001)(2900100001)(102836004)(99286004)(6116002)(3846002)(66066001)(8936002)(229853002)(55016002)(9686003)(25786009); DIR:OUT; SFP:1101; SCL:1; SRVR:AM5PR04MB2995; H:DB5PR04MB0998.eurprd04.prod.outlook.com; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en; x-ms-office365-filtering-correlation-id: 906c391e-07a0-4742-8048-08d55419d12e x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(4534020)(4602075)(4627115)(201703031133081)(201702281549075)(5600026)(4604075)(3008032)(48565401081)(2017052603307)(7153060); SRVR:AM5PR04MB2995; x-ms-traffictypediagnostic: AM5PR04MB2995: x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:(60795455431006)(185117386973197)(162533806227266)(21532816269658)(228905959029699); x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(6040470)(2401047)(8121501046)(5005006)(3231023)(944501075)(3002001)(10201501046)(93006095)(93001095)(6055026)(6041268)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123564045)(20161123558120)(6072148)(201708071742011); SRVR:AM5PR04MB2995; BCL:0; PCL:0; RULEID:(100000803101)(100110400095); SRVR:AM5PR04MB2995; x-forefront-prvs: 05437568AA received-spf: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) x-microsoft-antispam-message-info: QgsNa6ng/hHbCXhPL5WnRlfuV+hq5n7qz/7pQblPsZ9BmYIAqgeD9ePUkSSXo15lQ8hJdmClzQxebrpRunPq/A== spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM MIME-Version: 1.0 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 906c391e-07a0-4742-8048-08d55419d12e X-MS-Exchange-CrossTenant-originalarrivaltime: 05 Jan 2018 08:53:40.2100 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR04MB2995 Subject: Re: [PATCH edk2-platforms 0/3] Cover letter:Pci Emulation and SATA support X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 05 Jan 2018 08:48:45 -0000 Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogQXJkIEJpZXNoZXV2ZWwg W21haWx0bzphcmQuYmllc2hldXZlbEBsaW5hcm8ub3JnXQ0KPiBTZW50OiBGcmlkYXksIEphbnVh cnkgMDUsIDIwMTggMToxMSBQTQ0KPiBUbzogTWVlbmFrc2hpIEFnZ2Fyd2FsIDxtZWVuYWtzaGku YWdnYXJ3YWxAbnhwLmNvbT4NCj4gQ2M6IHN0YXIuemVuZ0BpbnRlbC5jb207IGVyaWMuZG9uZ0Bp bnRlbC5jb207IExlaWYgTGluZGhvbG0NCj4gPGxlaWYubGluZGhvbG1AbGluYXJvLm9yZz47IEtp bm5leSwgTWljaGFlbCBEDQo+IDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT47IGVkazItZGV2 ZWxAbGlzdHMuMDEub3JnOyBVZGl0IEt1bWFyDQo+IDx1ZGl0Lmt1bWFyQG54cC5jb20+OyBWYXJ1 biBTZXRoaSA8Vi5TZXRoaUBueHAuY29tPg0KPiBTdWJqZWN0OiBSZTogW1BBVENIIGVkazItcGxh dGZvcm1zIDAvM10gQ292ZXIgbGV0dGVyOlBjaSBFbXVsYXRpb24gYW5kIFNBVEENCj4gc3VwcG9y dA0KPiANCj4gT24gNSBKYW51YXJ5IDIwMTggYXQgMDY6NDcsIE1lZW5ha3NoaSBBZ2dhcndhbA0K PiA8bWVlbmFrc2hpLmFnZ2Fyd2FsQG54cC5jb20+IHdyb3RlOg0KPiA+IEhpIEFyZCwNCj4gPg0K PiA+IEkgdHJpZWQgTm9uRGlzY292ZXJhYmxlUGNpRGV2aWNlRHhlIHdpdGggWGhjaSB0b2RheSBh bmQgdW5mb3J0dW5hdGVseSBpdA0KPiBhbHNvIGRpZG50IHdvcmsuDQo+ID4NCj4gPiBJIGRpZG50 IGRlYnVnIGl0IG11Y2ggYnV0IFhoY2lJbml0aWFsaXplRGV2aWNlKCkgYW5kDQo+IFVzYkVudW1l cmF0ZU5ld0RldigpIGlzIGZhaWxpbmcuDQo+ID4NCj4gDQo+IEFyZSB5b3UgdXNpbmcgdGhlIGNv cnJlY3QgRE1BIHR5cGUgZm9yIHlvdXIgZGV2aWNlPyAoY29oZXJlbnQgdnMgbm9uLQ0KPiBjb2hl cmVudCkNCj4gDQpJIGFzc3VtZWQgaSB3YXMgYnV0IGkgd2FzIG5vdCA6KC4NCkNvcnJlY3Rpbmcg RE1BIHR5cGUgcmVzb2x2ZWQgdGhlIHByb2JsZW0uDQpUaGFua3MgYSBsb3QgQXJkLg0KDQo+ID4N Cj4gPiBYaGNTZXRCaW9zT3duZXJzaGlwOiBjYWxsZWQgdG8gc2V0IEJJT1Mgb3duZXJzaGlwDQo+ ID4gWGhjUmVzZXRIQyENCj4gPiBYaGNJbml0U2NoZWQ6RENCQUE9MHhGRTk0OTAwMA0KPiA+IFho Y0luaXRTY2hlZDogQ3JlYXRlZCBDTUQgcmluZyBbRkU5NDk0MDB+RkU5NEE0MDApIEVWRU5UIHJp bmcNCj4gW0ZFOTRBNDAwfkZFOTRDNDAwKQ0KPiA+IEluc3RhbGxQcm90b2NvbEludGVyZmFjZTog M0U3NDUyMjYtOTgxOC00NUI2LUEyQUMtRDdDRDBFOEJBMkJDDQo+IEZFOTU5MDM4DQo+ID4gWGhj RHJpdmVyQmluZGluZ1N0YXJ0OiBYSENJIHN0YXJ0ZWQgZm9yIGNvbnRyb2xsZXIgQCBGRTlFQkQ5 OA0KPiA+IEluc3RhbGxQcm90b2NvbEludGVyZmFjZTogMjQwNjEyQjctQTA2My0xMUQ0LTlBM0Et MDA5MDI3M0ZDMTREDQo+IEZFOUQ1MDIwDQo+ID4gWGhjR2V0Q2FwYWJpbGl0eTogMiBwb3J0cywg NjQgYml0IDENCj4gPiBVc2JSb290SHViSW5pdDogcm9vdCBodWIgRkU5REI5MTggLSBtYXggc3Bl ZWQgMywgMiBwb3J0cw0KPiA+IFhoY0NsZWFyUm9vdEh1YlBvcnRGZWF0dXJlOiBzdGF0dXMgU3Vj Y2Vzcw0KPiA+IFVzYkVudW1lcmF0ZVBvcnQ6IHBvcnQgMCBzdGF0ZSAtIDAxLCBjaGFuZ2UgLSAw MSBvbiBGRTlEQjkxOA0KPiA+IFVzYkVudW1lcmF0ZVBvcnQ6IERldmljZSBDb25uZWN0L0Rpc2Nv bm5lY3QgTm9ybWFsbHkNCj4gPiBVc2JFbnVtZXJhdGVQb3J0OiBuZXcgZGV2aWNlIGNvbm5lY3Rl ZCBhdCBwb3J0IDANCj4gPiBYaGNVc2JQb3J0UmVzZXQhDQo+ID4gWGhjU2V0Um9vdEh1YlBvcnRG ZWF0dXJlOiBzdGF0dXMgU3VjY2Vzcw0KPiA+IFhoY0NsZWFyUm9vdEh1YlBvcnRGZWF0dXJlOiBz dGF0dXMgU3VjY2Vzcw0KPiA+IFhoY0NsZWFyUm9vdEh1YlBvcnRGZWF0dXJlOiBzdGF0dXMgU3Vj Y2Vzcw0KPiA+DQo+ID4gV2FpdCBoZXJlIGZvciBjb25zaWRlcmFibGUgYW1vdW50IG9mIHRpbWUs IHRoZW4gaXQgdGltZW91dC4NCj4gPg0KPiA+IFhoY0luaXRpYWxpemVEZXZpY2VTbG90NjQ6IEVu YWJsZSBTbG90IEZhaWxlZCwgU3RhdHVzID0gVGltZSBvdXQNCj4gPiBVc2JFbnVtZXJhdGVOZXdE ZXY6IGh1YiBwb3J0IDAgaXMgcmVzZXQNCj4gPiBVc2JFbnVtZXJhdGVOZXdEZXY6IGRldmljZSBp cyBvZiAyIHNwZWVkDQo+ID4gVXNiRW51bWVyYXRlTmV3RGV2OiBkZXZpY2UgdXNlcyB0cmFuc2xh dG9yICgwLCAwKQ0KPiA+IFhoY0NvbnRyb2xUcmFuc2ZlcjogZXJyb3IgLSBEZXZpY2UgRXJyb3Is IHRyYW5zZmVyIC0gMTAwDQo+ID4gVXNiRW51bWVyYXRlTmV3RGV2OiBmYWlsZWQgdG8gc2V0IGRl dmljZSBhZGRyZXNzIC0gRGV2aWNlIEVycm9yDQo+ID4NCj4gPg0KPiA+IElzIHRoZXJlIHNvbWUg Zml4ZWQgc2VxdWVuY2Ugd2hpY2ggbmVlZHMgdG8gYmUgZm9sbG93ZWQ/DQo+ID4NCj4gPiBUaGFu a3MsDQo+ID4gTWVlbmFrc2hpDQo+ID4NCj4gPj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0N Cj4gPj4gRnJvbTogTWVlbmFrc2hpIEFnZ2Fyd2FsDQo+ID4+IFNlbnQ6IFRodXJzZGF5LCBKYW51 YXJ5IDA0LCAyMDE4IDY6MjYgUE0NCj4gPj4gVG86ICdBcmQgQmllc2hldXZlbCcgPGFyZC5iaWVz aGV1dmVsQGxpbmFyby5vcmc+DQo+ID4+IENjOiBzdGFyLnplbmdAaW50ZWwuY29tOyBlcmljLmRv bmdAaW50ZWwuY29tOyBMZWlmIExpbmRob2xtDQo+ID4+IDxsZWlmLmxpbmRob2xtQGxpbmFyby5v cmc+OyBLaW5uZXksIE1pY2hhZWwgRA0KPiA+PiA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+ OyBlZGsyLWRldmVsQGxpc3RzLjAxLm9yZzsgVWRpdCBLdW1hcg0KPiA+PiA8dWRpdC5rdW1hckBu eHAuY29tPjsgVmFydW4gU2V0aGkgPFYuU2V0aGlAbnhwLmNvbT4NCj4gPj4gU3ViamVjdDogUkU6 IFtQQVRDSCBlZGsyLXBsYXRmb3JtcyAwLzNdIENvdmVyIGxldHRlcjpQY2kgRW11bGF0aW9uIGFu ZA0KPiBTQVRBDQo+ID4+IHN1cHBvcnQNCj4gPj4NCj4gPj4NCj4gPj4NCj4gPj4gPiAtLS0tLU9y aWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+PiA+IEZyb206IEFyZCBCaWVzaGV1dmVsIFttYWlsdG86 YXJkLmJpZXNoZXV2ZWxAbGluYXJvLm9yZ10NCj4gPj4gPiBTZW50OiBUaHVyc2RheSwgSmFudWFy eSAwNCwgMjAxOCA1OjAzIFBNDQo+ID4+ID4gVG86IE1lZW5ha3NoaSBBZ2dhcndhbCA8bWVlbmFr c2hpLmFnZ2Fyd2FsQG54cC5jb20+DQo+ID4+ID4gQ2M6IHN0YXIuemVuZ0BpbnRlbC5jb207IGVy aWMuZG9uZ0BpbnRlbC5jb207IExlaWYgTGluZGhvbG0NCj4gPj4gPiA8bGVpZi5saW5kaG9sbUBs aW5hcm8ub3JnPjsgS2lubmV5LCBNaWNoYWVsIEQNCj4gPj4gPiA8bWljaGFlbC5kLmtpbm5leUBp bnRlbC5jb20+OyBlZGsyLWRldmVsQGxpc3RzLjAxLm9yZzsgVWRpdCBLdW1hcg0KPiA+PiA+IDx1 ZGl0Lmt1bWFyQG54cC5jb20+OyBWYXJ1biBTZXRoaSA8Vi5TZXRoaUBueHAuY29tPg0KPiA+PiA+ IFN1YmplY3Q6IFJlOiBbUEFUQ0ggZWRrMi1wbGF0Zm9ybXMgMC8zXSBDb3ZlciBsZXR0ZXI6UGNp IEVtdWxhdGlvbiBhbmQNCj4gPj4gU0FUQQ0KPiA+PiA+IHN1cHBvcnQNCj4gPj4gPg0KPiA+PiA+ IE9uIDQgSmFudWFyeSAyMDE4IGF0IDExOjI3LCBNZWVuYWtzaGkgQWdnYXJ3YWwNCj4gPj4gPiA8 bWVlbmFrc2hpLmFnZ2Fyd2FsQG54cC5jb20+IHdyb3RlOg0KPiA+PiA+ID4gSGkgQXJkLA0KPiA+ PiA+ID4NCj4gPj4gPiA+DQo+ID4+ID4gPiBJIHRyaWVkIHVzaW5nIE5vbkRpc2NvdmVyYWJsZVBj aURldmljZUR4ZSBkcml2ZXIgZm9yIFNBVEEgKEFIQ0kpLCBidXQNCj4gb24NCj4gPj4gPiB1c2lu ZyB0aGlzIG15IFNBVEEgZHJpdmUgaXMgbm90IGJlZW4gZGV0ZWN0ZWQgYnkgVUVGSS4NCj4gPj4g PiA+DQo+ID4+ID4gPiBCZWxvdyBpcyB0aGUgcmVhc29uIG9mIGVycm9yOg0KPiA+PiA+ID4NCj4g Pj4gPiA+IEZyb20gRW51bWVyYXRlQXR0YWNoZWREZXZpY2UoKSBmdW5jdGlvbiBBaGNpTW9kZUlu aXRpYWxpemF0aW9uKCkNCj4gPj4gPiBmdW5jdGlvbiBnZXRzIGNhbGxlZC4NCj4gPj4gPiA+DQo+ ID4+ID4gPiBJbiBBaGNpTW9kZUluaXRpYWxpemF0aW9uKCkgdW5kZXIgZWxzZSBsb29wIGkgYW0g cmVjZWl2aW5nDQo+IEVGSV9USU1FT1VUDQo+ID4+ID4gZnJvbSBBaGNpSWRlbnRpZnkoKQ0KPiA+ PiA+ID4NCj4gPj4gPiA+ICAgICAgIH0gZWxzZSBpZiAoKERhdGEgJiBFRklfQUhDSV9BVEFQSV9T SUdfTUFTSykgPT0NCj4gPj4gPiBFRklfQUhDSV9BVEFfREVWSUNFX1NJRykgew0KPiA+PiA+ID4g ICAgICAgICBTdGF0dXMgPSBBaGNpSWRlbnRpZnkgKFBjaUlvLCBBaGNpUmVnaXN0ZXJzLCBQb3J0 LCAwLCAmQnVmZmVyKTsNCj4gPj4gPiA+DQo+ID4+ID4gPiAgICAgICAgIGlmIChFRklfRVJST1Ig KFN0YXR1cykpIHsNCj4gPj4gPiA+ICAgICAgICAgICBSRVBPUlRfU1RBVFVTX0NPREUgKEVGSV9Q Uk9HUkVTU19DT0RFLA0KPiA+PiA+IChFRklfUEVSSVBIRVJBTF9GSVhFRF9NRURJQSB8IEVGSV9Q X0VDX05PVF9ERVRFQ1RFRCkpOw0KPiA+PiA+ID4gICAgICAgICAgIGNvbnRpbnVlOw0KPiA+PiA+ ID4gICAgICAgICB9DQo+ID4+ID4gPg0KPiA+PiA+ID4gICAgICAgICBEZXZpY2VUeXBlID0gRWZp SWRlSGFyZGRpc2s7DQo+ID4+ID4gPg0KPiA+PiA+ID4gVGhlbiBpIGNoZWNrIEluIEFoY2lJZGVu dGlmeSgpIGZ1bmN0aW9uLg0KPiA+PiA+ID4gSGVyZSwgQWhjaVBpb1RyYW5zZmVyKCkgY2FsbHMg QWhjaUNoZWNrTWVtU2V0KCkgdG8gcmVhZA0KPiBQaW9GaXNSZWNlaXZlZA0KPiA+PiA+IGFuZCBE MmhGaXNSZWNlaXZlZC4NCj4gPj4gPiA+IEFuZCBBaGNpQ2hlY2tNZW1TZXQoKSByZXR1cm5zIEVG SV9OT1RfUkVBRFkgZm9yIGJvdGggY2FzZXMuDQo+ID4+ID4gPiBTbyB0aW1lb3V0IG9jY3Vycy4N Cj4gPj4gPiA+DQo+ID4+ID4gPiBJIHRyaWVkIHRvIGNvbXBhcmUgUGNpRW11bGF0aW9uIGxheWVy IGFuZA0KPiBOb25EaXNjb3ZlcmFibGVQY2lEZXZpY2VEeGUNCj4gPj4gPiBidXQgbm90IGFibGUg dG8gZmluZCBtdWNoIGRpZmZlcmVuY2UuDQo+ID4+ID4gPg0KPiA+PiA+ID4gUGxlYXNlIHN1Z2dl c3Qgd2hhdCBjYW4gcG9zc2libHkgaSBhbSBtaXNzaW5nLg0KPiA+PiA+ID4NCj4gPj4gPg0KPiA+ PiA+IERvZXMgaXQgd29yayBmb3IgWEhDST8NCj4gPj4gPg0KPiA+PiBJIGhhdmUgbm90IHRyaWVk IFhIQ0kgeWV0Lg0KPiA+PiA+DQo+ID4+ID4gPj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0N Cj4gPj4gPiA+PiBGcm9tOiBBcmQgQmllc2hldXZlbCBbbWFpbHRvOmFyZC5iaWVzaGV1dmVsQGxp bmFyby5vcmddDQo+ID4+ID4gPj4gU2VudDogRnJpZGF5LCBEZWNlbWJlciAyMiwgMjAxNyA5OjAy IFBNDQo+ID4+ID4gPj4gVG86IE1lZW5ha3NoaSBBZ2dhcndhbCA8bWVlbmFrc2hpLmFnZ2Fyd2Fs QG54cC5jb20+DQo+ID4+ID4gPj4gQ2M6IExlaWYgTGluZGhvbG0gPGxlaWYubGluZGhvbG1AbGlu YXJvLm9yZz47IEtpbm5leSwgTWljaGFlbCBEDQo+ID4+ID4gPj4gPG1pY2hhZWwuZC5raW5uZXlA aW50ZWwuY29tPjsgZWRrMi1kZXZlbEBsaXN0cy4wMS5vcmc7IFVkaXQgS3VtYXINCj4gPj4gPiA+ PiA8dWRpdC5rdW1hckBueHAuY29tPjsgVmFydW4gU2V0aGkgPFYuU2V0aGlAbnhwLmNvbT4NCj4g Pj4gPiA+PiBTdWJqZWN0OiBSZTogW1BBVENIIGVkazItcGxhdGZvcm1zIDAvM10gQ292ZXIgbGV0 dGVyOlBjaSBFbXVsYXRpb24NCj4gYW5kDQo+ID4+ID4gU0FUQQ0KPiA+PiA+ID4+IHN1cHBvcnQN Cj4gPj4gPiA+Pg0KPiA+PiA+ID4+IE9uIDIyIERlY2VtYmVyIDIwMTcgYXQgMTI6MTYsIE1lZW5h a3NoaSBBZ2dhcndhbA0KPiA+PiA+ID4+IDxtZWVuYWtzaGkuYWdnYXJ3YWxAbnhwLmNvbT4gd3Jv dGU6DQo+ID4+ID4gPj4gPiBGb2xsb3dpbmcgcGF0Y2hlcyBhZGQgc3VwcG9ydCBmb3IgcGNpIGVt dWxhdGlvbiBsYXllcg0KPiA+PiA+ID4+ID4gYW5kIFNBVEEgb24gTlhQIGJvYXJkcy4NCj4gPj4g PiA+PiA+DQo+ID4+ID4gPj4gPiBOdWxsIExpYnJhcnkgZm9yIFVTQiBpcyBhbHNvIHByZXNlbnQg dG8gZ2l2ZSBjb21wbGV0ZW5lc3MNCj4gPj4gPiA+PiA+IHRvIFBjaSBFbXVsYXRpb24gbGF5ZXIu DQo+ID4+ID4gPj4gPg0KPiA+PiA+ID4+ID4gTWVlbmFrc2hpIEFnZ2Fyd2FsICgzKToNCj4gPj4g PiA+PiA+ICAgVVNCOiBBZGRlZCBTdXBwb3J0IG9mIERXQzMgVVNCIGNvbnRyb2xsZXIuDQo+ID4+ ID4gPj4gPiAgIFBjaUVtdWxhdGlvbiA6IEFkZCBzdXBwb3J0IGZvciBQY2kgRW11bGF0aW9uIGxh eWVyLg0KPiA+PiA+ID4+ID4gICBTQVRBIDogQWRkZWQgU0FUQSBjb250cm9sbGVyIGluaXRpYWxp emF0aW9uIGRyaXZlci4NCj4gPj4gPiA+PiA+DQo+ID4+ID4gPj4NCj4gPj4gPiA+PiBQbGVhc2Ug ZG9uJ3QgYWRkIFBDSSBlbXVsYXRpb24gZHJpdmVycy4gSW5zdGVhZCwgd2UgaGF2ZQ0KPiA+PiA+ ID4+IE5vbkRpc2NvdmVyYWJsZVBjaURldmljZUR4ZSB0aGF0IHN1cHBvcnRzIEFIQ0ksIFhIQ0ks IEVIQ0ksIE9IQ0ksDQo+ID4+ID4gPj4gVUhDSSwgVUZTLCBOVk1FIGFuZCBTREhDSSBwbGF0Zm9y bSBkZXZpY2VzLg0KPiA+PiA+ID4+DQo+ID4+ID4gPj4gPiAgUGxhdGZvcm0vTlhQL0RyaXZlcnMv UGNpRW11bGF0aW9uL1BjaUVtdWxhdGlvbi5jICAgfCA2MjQNCj4gPj4gPiA+PiArKysrKysrKysr KysrKysrKysrKysNCj4gPj4gPiA+PiA+ICBQbGF0Zm9ybS9OWFAvRHJpdmVycy9QY2lFbXVsYXRp b24vUGNpRW11bGF0aW9uLmggICB8IDMwNg0KPiA+PiArKysrKysrKysrDQo+ID4+ID4gPj4gPiAg UGxhdGZvcm0vTlhQL0RyaXZlcnMvUGNpRW11bGF0aW9uL1BjaUVtdWxhdGlvbi5pbmYgfCAgNTQg KysNCj4gPj4gPiA+PiA+ICAuLi4vTlhQL0RyaXZlcnMvUGNpRW11bGF0aW9uL1BjaVJvb3RCcmlk Z2VJby5jICAgICB8IDI4Ng0KPiArKysrKysrKysrDQo+ID4+ID4gPj4gPiAgUGxhdGZvcm0vTlhQ L0RyaXZlcnMvU2F0YUluaXREeGUvU2F0YUluaXQuYyAgICAgICAgfCAxMjIgKysrKw0KPiA+PiA+ ID4+ID4gIFBsYXRmb3JtL05YUC9Ecml2ZXJzL1NhdGFJbml0RHhlL1NhdGFJbml0LmggICAgICAg IHwgIDMyICsrDQo+ID4+ID4gPj4gPiAgUGxhdGZvcm0vTlhQL0RyaXZlcnMvU2F0YUluaXREeGUv U2F0YUluaXREeGUuaW5mICAgfCAgNDMgKysNCj4gPj4gPiA+PiA+ICAuLi4vTlhQL0xpYnJhcnkv VXNiSGNkTnVsbExpYnJhcnkvVXNiSGNkTGliTnVsbC5jICB8ICAyNSArDQo+ID4+ID4gPj4gPiAg Li4uL05YUC9MaWJyYXJ5L1VzYkhjZE51bGxMaWJyYXJ5L1VzYkhjZE51bGwuaW5mICAgfCAgMjgg Kw0KPiA+PiA+ID4+ID4gIFBsYXRmb3JtL05YUC9OeHBRb3JpcUxzLmRlYyAgICAgICAgICAgICAg ICAgICAgICAgIHwgIDE0ICstDQo+ID4+ID4gPj4gPiAgUGxhdGZvcm0vTlhQL054cFFvcmlxTHMu ZHNjICAgICAgICAgICAgICAgICAgICAgICAgfCAgMTUgKw0KPiA+PiA+ID4+ID4gIDExIGZpbGVz IGNoYW5nZWQsIDE1NDcgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkNCj4gPj4gPiA+PiA+ ICBjcmVhdGUgbW9kZSAxMDA2NDQNCj4gPj4gPiBQbGF0Zm9ybS9OWFAvRHJpdmVycy9QY2lFbXVs YXRpb24vUGNpRW11bGF0aW9uLmMNCj4gPj4gPiA+PiA+ICBjcmVhdGUgbW9kZSAxMDA3NTUNCj4g Pj4gPiBQbGF0Zm9ybS9OWFAvRHJpdmVycy9QY2lFbXVsYXRpb24vUGNpRW11bGF0aW9uLmgNCj4g Pj4gPiA+PiA+ICBjcmVhdGUgbW9kZSAxMDA2NDQNCj4gPj4gPiBQbGF0Zm9ybS9OWFAvRHJpdmVy cy9QY2lFbXVsYXRpb24vUGNpRW11bGF0aW9uLmluZg0KPiA+PiA+ID4+ID4gIGNyZWF0ZSBtb2Rl IDEwMDY0NA0KPiA+PiA+ID4+IFBsYXRmb3JtL05YUC9Ecml2ZXJzL1BjaUVtdWxhdGlvbi9QY2lS b290QnJpZGdlSW8uYw0KPiA+PiA+ID4+ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBQbGF0Zm9ybS9O WFAvRHJpdmVycy9TYXRhSW5pdER4ZS9TYXRhSW5pdC5jDQo+ID4+ID4gPj4gPiAgY3JlYXRlIG1v ZGUgMTAwNjQ0IFBsYXRmb3JtL05YUC9Ecml2ZXJzL1NhdGFJbml0RHhlL1NhdGFJbml0LmgNCj4g Pj4gPiA+PiA+ICBjcmVhdGUgbW9kZSAxMDA2NDQNCj4gPj4gUGxhdGZvcm0vTlhQL0RyaXZlcnMv U2F0YUluaXREeGUvU2F0YUluaXREeGUuaW5mDQo+ID4+ID4gPj4gPiAgY3JlYXRlIG1vZGUgMTAw NjQ0DQo+ID4+ID4gPj4gUGxhdGZvcm0vTlhQL0xpYnJhcnkvVXNiSGNkTnVsbExpYnJhcnkvVXNi SGNkTGliTnVsbC5jDQo+ID4+ID4gPj4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0DQo+ID4+ID4gPj4g UGxhdGZvcm0vTlhQL0xpYnJhcnkvVXNiSGNkTnVsbExpYnJhcnkvVXNiSGNkTnVsbC5pbmYNCj4g Pj4gPiA+PiA+DQo+ID4+ID4gPj4gPiAtLQ0KPiA+PiA+ID4+ID4gMS45LjENCj4gPj4gPiA+PiA+ DQo=