From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR02-AM5-obe.outbound.protection.outlook.com (mail-am5eur02hn0203.outbound.protection.outlook.com [104.47.4.203]) by dpdk.org (Postfix) with ESMTP id 69A831C0E7 for ; Wed, 4 Apr 2018 13:31:30 +0200 (CEST) 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=M8wa4DbfNPWgFwVS23i2TtjwY/+BUR1wMoIjfrVHj5o=; b=F3wgN8ziHWPIn0m7DAwlRaUkNOUodRHmrDwb+1U5GFDGe7djXRNofVpfyTqb4UkHpg1WAm48NDV3uD1SQmVxHIXIB1Kh/x5VYiiy3F+cVO93tv1LiEw1lFfHNDV+iA8koOfSCkf/+bXt01y7YKjqv0ryeRKiybx4MhjLx9uzZfA= Received: from HE1PR0402MB2780.eurprd04.prod.outlook.com (10.175.29.14) by HE1PR0402MB2730.eurprd04.prod.outlook.com (10.175.35.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.631.10; Wed, 4 Apr 2018 11:31:27 +0000 Received: from HE1PR0402MB2780.eurprd04.prod.outlook.com ([fe80::cd9:8128:3f1d:710e]) by HE1PR0402MB2780.eurprd04.prod.outlook.com ([fe80::cd9:8128:3f1d:710e%14]) with mapi id 15.20.0631.013; Wed, 4 Apr 2018 11:31:27 +0000 From: Shreyansh Jain To: "Xu, Rosen" CC: "dev@dpdk.org" , "Doherty, Declan" , "Richardson, Bruce" , "Yigit, Ferruh" , "Ananyev, Konstantin" , "Zhang, Tianfei" , "Wu, Hao" , "gaetan.rivet@6wind.com" , "Wu, Yanglong" Thread-Topic: [dpdk-dev] [PATCH v4 2/3] Add Intel FPGA BUS Rawdev Driver Thread-Index: AQHTyQllIUpGNBqloEibvp/ddv2/mqPuy/eAgAEQX4CAAKFpwA== Date: Wed, 4 Apr 2018 11:31:20 +0000 Deferred-Delivery: Wed, 4 Apr 2018 11:30:37 +0000 Message-ID: References: <1521553556-62982-1-git-send-email-rosen.xu@intel.com> <1522512182-182441-1-git-send-email-rosen.xu@intel.com> <1522512182-182441-3-git-send-email-rosen.xu@intel.com> <25304883-90fc-a579-c234-2058aa7a10b8@nxp.com> <0E78D399C70DA940A335608C6ED296D739F33D81@SHSMSX104.ccr.corp.intel.com> In-Reply-To: <0E78D399C70DA940A335608C6ED296D739F33D81@SHSMSX104.ccr.corp.intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=shreyansh.jain@nxp.com; x-originating-ip: [92.121.36.197] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1; HE1PR0402MB2730; 7:qxz0DCo9joUbBm3trAZ1ee098mcSkmWhCS8H4ddEhXZG471MHpnT1WzCrhgVca+HuyxbUteFpFcrhwQc4DEVVoSJeWCCWezCQVERvCSH62j5tAx4wf87xyy+H+jmp3yHPQdaixR0aXAF98iE9bF1HPWy5Ml9AW6jXaXkcrsQtBDQ+RGhnlvbZT0ks+p5R1g8b97dCnMKvNM5ZfTSnS/nDZDENIBu1Ux0eZEAcoAwGzlFMx0q9TYU4gkg9LFHwHJk x-ms-exchange-antispam-srfa-diagnostics: SOS; x-ms-office365-filtering-correlation-id: dac44593-d502-4fd0-dbe3-08d59a1f9b16 x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(5600026)(4604075)(3008032)(48565401081)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020); SRVR:HE1PR0402MB2730; x-ms-traffictypediagnostic: HE1PR0402MB2730: x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:(185117386973197)(66839620246622)(228905959029699); x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3002001)(93006095)(93001095)(10201501046)(3231221)(2232076)(944501327)(52105095)(6055026)(6041310)(20161123564045)(20161123558120)(20161123562045)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011); SRVR:HE1PR0402MB2730; BCL:0; PCL:0; RULEID:; SRVR:HE1PR0402MB2730; x-forefront-prvs: 0632519F33 x-forefront-antispam-report: SFV:SPM; SFS:(10009020)(376002)(396003)(366004)(39380400002)(39860400002)(346002)(189003)(199004)(13464003)(5250100002)(53936002)(8936002)(486006)(86362001)(25786009)(9686003)(97736004)(99286004)(55016002)(2900100001)(6246003)(3846002)(26005)(6116002)(478600001)(186003)(106356001)(33656002)(105586002)(3660700001)(14454004)(3280700002)(53546011)(6506007)(6666003)(54906003)(76176011)(7416002)(476003)(66066001)(7736002)(8676002)(81156014)(6436002)(4326008)(81166006)(305945005)(446003)(2906002)(11346002)(7696005)(74316002)(6916009)(93886005)(316002)(5660300001)(102836004)(229853002)(68736007)(59010400001)(217873001); DIR:OUT; SFP:1501; SCL:5; SRVR:HE1PR0402MB2730; H:HE1PR0402MB2780.eurprd04.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; received-spf: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) x-microsoft-antispam-message-info: GXxfG8GOQ6urjk0J2xk/aPpwwiNNJlmIa/Gk59oqcfrm5QWJLSt2M9NlANQPTj6SPEv0EtfeowfgDgJk1iXWEgJFzbYMm4r6b4DdR263MXnfU5kzp74Zkn6jcwEEE2sfe57VEKURIzpnnbT++hoF+8UY95gHJ5lZwIABafgQbBVbxIDjGsoBBVi70qSy5O2jOpGwe6pCHP3zxphlE8ALg2iBMvfFi3rc8LuPAKFpRqfXrHuzVGxJ/Ihh2RjM2NPf9PTQ8buFr0E/pSJT8h26m9Agg6b9yc653snL05sUHRC1R9PdVBVpI+WjmCVVTZnyFFn3EdJyqBJrusO7ztC66C4jXJQmrubXlbXDX4ODeSDHdrrCzKiLTkkItKmE2jj5LWVpfKABZPQ3ObnJk/v6q9vYwtz9wcVfGZMNQHwxjG3rpxEd95k1Q/O5APYKWlj68RSDBWx/Yty3W7fxk7203LTByZVwULyfSiBqiAInZplDyVP4gJn4XxaHNltJfTQUJqIKskiVcEzbUJQfDmcdEbpBihqP5wr5o1dxs23rw4tloBIzpdQpX7ExzhWcE/ZZb4KpSjo1XPj8ka8dVRByBdh7fqRyzD9k+hYiMQoncTYvPWLNu7t1PmKcZA7BSU24 spamdiagnosticoutput: 1:22 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: dac44593-d502-4fd0-dbe3-08d59a1f9b16 X-MS-Exchange-CrossTenant-originalarrivaltime: 04 Apr 2018 11:31:27.8329 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0402MB2730 Subject: Re: [dpdk-dev] [PATCH v4 2/3] Add Intel FPGA BUS Rawdev Driver X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 04 Apr 2018 11:31:30 -0000 SGVsbG8gUm9zZW4sDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogWHUs IFJvc2VuIFttYWlsdG86cm9zZW4ueHVAaW50ZWwuY29tXQ0KPiBTZW50OiBXZWRuZXNkYXksIEFw cmlsIDQsIDIwMTggNzoyMCBBTQ0KPiBUbzogU2hyZXlhbnNoIEphaW4gPHNocmV5YW5zaC5qYWlu QG54cC5jb20+DQo+IENjOiBkZXZAZHBkay5vcmc7IERvaGVydHksIERlY2xhbiA8ZGVjbGFuLmRv aGVydHlAaW50ZWwuY29tPjsNCj4gUmljaGFyZHNvbiwgQnJ1Y2UgPGJydWNlLnJpY2hhcmRzb25A aW50ZWwuY29tPjsgWWlnaXQsIEZlcnJ1aA0KPiA8ZmVycnVoLnlpZ2l0QGludGVsLmNvbT47IEFu YW55ZXYsIEtvbnN0YW50aW4NCj4gPGtvbnN0YW50aW4uYW5hbnlldkBpbnRlbC5jb20+OyBaaGFu ZywgVGlhbmZlaQ0KPiA8dGlhbmZlaS56aGFuZ0BpbnRlbC5jb20+OyBXdSwgSGFvIDxoYW8ud3VA aW50ZWwuY29tPjsNCj4gZ2FldGFuLnJpdmV0QDZ3aW5kLmNvbTsgV3UsIFlhbmdsb25nIDx5YW5n bG9uZy53dUBpbnRlbC5jb20+DQo+IFN1YmplY3Q6IFJFOiBbZHBkay1kZXZdIFtQQVRDSCB2NCAy LzNdIEFkZCBJbnRlbCBGUEdBIEJVUyBSYXdkZXYgRHJpdmVyDQo+IA0KPiANCj4gDQo+ID4gLS0t LS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPiBGcm9tOiBTaHJleWFuc2ggSmFpbiBbbWFpbHRv OnNocmV5YW5zaC5qYWluQG54cC5jb21dDQo+ID4gU2VudDogVHVlc2RheSwgQXByaWwgMDMsIDIw MTggMTc6MzUNCj4gPiBUbzogWHUsIFJvc2VuIDxyb3Nlbi54dUBpbnRlbC5jb20+DQo+ID4gQ2M6 IGRldkBkcGRrLm9yZzsgRG9oZXJ0eSwgRGVjbGFuIDxkZWNsYW4uZG9oZXJ0eUBpbnRlbC5jb20+ Ow0KPiA+IFJpY2hhcmRzb24sIEJydWNlIDxicnVjZS5yaWNoYXJkc29uQGludGVsLmNvbT47DQo+ IHNocmV5YW5zaC5qYWluQG54cC5jb207DQo+ID4gWWlnaXQsIEZlcnJ1aCA8ZmVycnVoLnlpZ2l0 QGludGVsLmNvbT47IEFuYW55ZXYsIEtvbnN0YW50aW4NCj4gPiA8a29uc3RhbnRpbi5hbmFueWV2 QGludGVsLmNvbT47IFpoYW5nLCBUaWFuZmVpDQo+IDx0aWFuZmVpLnpoYW5nQGludGVsLmNvbT47 DQo+ID4gV3UsIEhhbyA8aGFvLnd1QGludGVsLmNvbT47IGdhZXRhbi5yaXZldEA2d2luZC5jb207 IFd1LCBZYW5nbG9uZw0KPiA+IDx5YW5nbG9uZy53dUBpbnRlbC5jb20+DQo+ID4gU3ViamVjdDog UmU6IFtkcGRrLWRldl0gW1BBVENIIHY0IDIvM10gQWRkIEludGVsIEZQR0EgQlVTIFJhd2Rldg0K PiBEcml2ZXINCj4gPg0KPiA+IE9uIFNhdHVyZGF5IDMxIE1hcmNoIDIwMTggMDk6MzMgUE0sIFJv c2VuIFh1IHdyb3RlOg0KPiA+ID4gU2lnbmVkLW9mZi1ieTogUm9zZW4gWHUgPHJvc2VuLnh1QGlu dGVsLmNvbT4NCj4gPiA+IFNpZ25lZC1vZmYtYnk6IFlhbmdsb25nIFd1ICA8eWFuZ2xvbmcud3VA aW50ZWwuY29tPg0KPiA+ID4gLS0tDQo+ID4gPiAgIGNvbmZpZy9jb21tb25fYmFzZSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxICsNCj4gPiA+ICAgZHJpdmVycy9yYXcvTWFr ZWZpbGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDEgKw0KPiA+ID4gICBkcml2 ZXJzL3Jhdy9pZnBnYV9yYXdkZXYvTWFrZWZpbGUgICAgICAgICAgICAgICAgICB8ICAzNCArKw0K PiA+ID4gICBkcml2ZXJzL3Jhdy9pZnBnYV9yYXdkZXYvaWZwZ2FfcmF3ZGV2LmMgICAgICAgICAg ICB8IDU5NA0KPiA+ICsrKysrKysrKysrKysrKysrKysrKw0KPiA+ID4gICBkcml2ZXJzL3Jhdy9p ZnBnYV9yYXdkZXYvaWZwZ2FfcmF3ZGV2LmggICAgICAgICAgICB8ICAzNyArKw0KPiA+ID4gICAu Li4vcmF3L2lmcGdhX3Jhd2Rldi9ydGVfaWZwZ2FfcmF3ZGV2X3ZlcnNpb24ubWFwICB8ICAgNCAr DQo+ID4gPiAgIG1rL3J0ZS5hcHAubWsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHwgICAxICsNCj4gPiA+ICAgNyBmaWxlcyBjaGFuZ2VkLCA2NzIgaW5zZXJ0aW9ucygrKQ0K PiA+ID4gICBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9yYXcvaWZwZ2FfcmF3ZGV2L01ha2Vm aWxlDQo+ID4gPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL3Jhdy9pZnBnYV9yYXdkZXYv aWZwZ2FfcmF3ZGV2LmMNCj4gPiA+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvcmF3L2lm cGdhX3Jhd2Rldi9pZnBnYV9yYXdkZXYuaA0KPiA+ID4gICBjcmVhdGUgbW9kZSAxMDA2NDQNCj4g PiA+IGRyaXZlcnMvcmF3L2lmcGdhX3Jhd2Rldi9ydGVfaWZwZ2FfcmF3ZGV2X3ZlcnNpb24ubWFw DQo+ID4gPg0KPiA+ID4gZGlmZiAtLWdpdCBhL2NvbmZpZy9jb21tb25fYmFzZSBiL2NvbmZpZy9j b21tb25fYmFzZSBpbmRleA0KPiA+ID4gNDlmNmIwOS4uMDhiN2NjZSAxMDA2NDQNCj4gPiA+IC0t LSBhL2NvbmZpZy9jb21tb25fYmFzZQ0KPiA+ID4gKysrIGIvY29uZmlnL2NvbW1vbl9iYXNlDQo+ ID4gPiBAQCAtMTM3LDYgKzEzNyw3IEBAIENPTkZJR19SVEVfTElCUlRFX1ZERVZfQlVTPXkNCj4g PiA+ICAgIyBDb21waWxlIHRoZSBJbnRlbCBGUEdBIGJ1cw0KPiA+ID4gICAjDQo+ID4gPiAgIENP TkZJR19SVEVfTElCUlRFX0lGUEdBX0JVUz15DQo+ID4gPiArQ09ORklHX1JURV9MSUJSVEVfSUZQ R0FfUkFXREVWPXkNCj4gPiA+DQo+ID4gPiAgICMNCj4gPiA+ICAgIyBDb21waWxlIEFSSyBQTUQN Cj4gPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL3Jhdy9NYWtlZmlsZSBiL2RyaXZlcnMvcmF3L01h a2VmaWxlIGluZGV4DQo+ID4gPiBkYTdjOGI0Li42ZmM4ZjJmIDEwMDY0NA0KPiA+ID4gLS0tIGEv ZHJpdmVycy9yYXcvTWFrZWZpbGUNCj4gPiA+ICsrKyBiL2RyaXZlcnMvcmF3L01ha2VmaWxlDQo+ ID4gPiBAQCAtNSw1ICs1LDYgQEAgaW5jbHVkZSAkKFJURV9TREspL21rL3J0ZS52YXJzLm1rDQo+ ID4gPg0KPiA+ID4gICAjIERJUlMtJCg8Y29uZmlndXJhdGlvbj4pICs9IDxkaXJlY3Rvcnk+DQo+ ID4gPiAgIERJUlMtJChDT05GSUdfUlRFX0xJQlJURV9QTURfU0tFTEVUT05fUkFXREVWKSArPQ0K PiA+IHNrZWxldG9uX3Jhd2Rldg0KPiA+ID4gK0RJUlMtJChDT05GSUdfUlRFX0xJQlJURV9JRlBH QV9SQVdERVYpICs9IGlmcGdhX3Jhd2Rldg0KPiA+ID4NCj4gPiA+ICAgaW5jbHVkZSAkKFJURV9T REspL21rL3J0ZS5zdWJkaXIubWsNCj4gPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL3Jhdy9pZnBn YV9yYXdkZXYvTWFrZWZpbGUNCj4gPiA+IGIvZHJpdmVycy9yYXcvaWZwZ2FfcmF3ZGV2L01ha2Vm aWxlDQo+ID4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+ID4gaW5kZXggMDAwMDAwMC4uMTE4 YzcyOQ0KPiA+ID4gLS0tIC9kZXYvbnVsbA0KPiA+ID4gKysrIGIvZHJpdmVycy9yYXcvaWZwZ2Ff cmF3ZGV2L01ha2VmaWxlDQo+ID4gPiBAQCAtMCwwICsxLDM0IEBADQo+ID4gPiArIyBTUERYLUxp Y2Vuc2UtSWRlbnRpZmllcjogQlNELTMtQ2xhdXNlICMgQ29weXJpZ2h0KGMpIDIwMTggSW50ZWwN Cj4gPiA+ICtDb3Jwb3JhdGlvbg0KPiA+ID4gKw0KPiA+ID4gK2luY2x1ZGUgJChSVEVfU0RLKS9t ay9ydGUudmFycy5taw0KPiA+ID4gKw0KPiA+ID4gKyMNCj4gPiA+ICsjIGxpYnJhcnkgbmFtZQ0K PiA+ID4gKyMNCj4gPiA+ICtMSUIgPSBsaWJydGVfaWZwZ2FfcmF3ZGV2LmENCj4gPiA+ICsNCj4g PiA+ICtDRkxBR1MgKz0gLURBTExPV19FWFBFUklNRU5UQUxfQVBJDQo+ID4gPiArQ0ZMQUdTICs9 IC1PMw0KPiA+ID4gK0NGTEFHUyArPSAkKFdFUlJPUl9GTEFHUykNCj4gPiA+ICtDRkxBR1MgKz0g LUkkKFJURV9TREspL2RyaXZlcnMvYnVzL2lmcGdhIENGTEFHUyArPQ0KPiA+ID4gKy1JJChSVEVf U0RLKS9kcml2ZXJzL3Jhdy9pZnBnYV9yYXdkZXYNCj4gPiA+ICtMRExJQlMgKz0gLWxydGVfZWFs DQo+ID4gPiArTERMSUJTICs9IC1scnRlX3Jhd2Rldg0KPiA+ID4gK0xETElCUyArPSAtbHJ0ZV9i dXNfdmRldg0KPiA+ID4gK0xETElCUyArPSAtbHJ0ZV9rdmFyZ3MNCj4gPiA+ICsNCj4gPiA+ICtF WFBPUlRfTUFQIDo9IHJ0ZV9pZnBnYV9yYXdkZXZfdmVyc2lvbi5tYXANCj4gPiA+ICsNCj4gPiA+ ICtMSUJBQklWRVIgOj0gMQ0KPiA+ID4gKw0KPiA+ID4gK1ZQQVRIICs9ICQoU1JDRElSKS9iYXNl DQo+ID4gPiArDQo+ID4gPiAraW5jbHVkZSAkKFJURV9TREspL2RyaXZlcnMvcmF3L2lmcGdhX3Jh d2Rldi9iYXNlL01ha2VmaWxlDQo+ID4gPiArDQo+ID4gPiArIw0KPiA+ID4gKyMgYWxsIHNvdXJj ZSBhcmUgc3RvcmVkIGluIFNSQ1MteQ0KPiA+ID4gKyMNCj4gPiA+ICtTUkNTLSQoQ09ORklHX1JU RV9MSUJSVEVfSUZQR0FfUkFXREVWKSArPSBpZnBnYV9yYXdkZXYuYw0KPiA+ID4gKw0KPiA+ID4g K2luY2x1ZGUgJChSVEVfU0RLKS9tay9ydGUubGliLm1rDQo+ID4NCj4gPiBbLi4uXQ0KPiA+IFlv dXIgcGF0Y2ggZG9lc24ndCBjb21waWxlIGF0IHRoaXMgcG9pbnQ6IChTdGF0aWMgYnVpbGQ7IFNo YXJlZCBpcw0KPiBzdGlsbCBzdHVjayBvbg0KPiA+IHBhdGNoIFsxLzNdKS4NCj4gPg0KPiA+IC0t LT44LS0tDQo+ID4gPT0gQnVpbGQgZHJpdmVycy9yYXcvaWZwZ2FfcmF3ZGV2DQo+ID4gL2hvbWUv c2hyZXlhbnNoL2J1aWxkL0RQREsvMDBfZHBkay9kcml2ZXJzL3Jhdy9pZnBnYV9yYXdkZXYvTWFr ZWZpbA0KPiA+IGU6Mjc6DQo+ID4gL2hvbWUvc2hyZXlhbnNoL2J1aWxkL0RQREsvMDBfZHBkay9k cml2ZXJzL3Jhdy9pZnBnYV9yYXdkZXYvYmFzZS9NDQo+ID4gYWtlZmlsZToNCj4gPiBObyBzdWNo IGZpbGUgb3IgZGlyZWN0b3J5DQo+ID4gbWFrZVs2XTogKioqIE5vIHJ1bGUgdG8gbWFrZSB0YXJn ZXQNCj4gPiAnL2hvbWUvc2hyZXlhbnNoL2J1aWxkL0RQREsvMDBfZHBkay9kcml2ZXJzL3Jhdy9p ZnBnYV9yYXdkZXYvYmFzZS9NDQo+ID4gYWtlZmlsZScuDQo+ID4gICBTdG9wLg0KPiA+IC9ob21l L3NocmV5YW5zaC9idWlsZC9EUERLLzAwX2RwZGsvbWsvcnRlLnN1YmRpci5tazozNTogcmVjaXBl IGZvcg0KPiA+IHRhcmdldCAnaWZwZ2FfcmF3ZGV2JyBmYWlsZWQNCj4gPiBtYWtlWzVdOiAqKiog W2lmcGdhX3Jhd2Rldl0gRXJyb3IgMg0KPiA+IG1ha2VbNV06ICoqKiBXYWl0aW5nIGZvciB1bmZp bmlzaGVkIGpvYnMuLi4uDQo+ID4gLS0tPjgtLS0NCj4gPg0KPiA+IFdoaWNoIGlzIGJlY2F1c2Ug eW91ciBwYXRjaCBbMy8zXSBjb250YWlucyB2YXJpb3VzIGRlZmluaXRpb25zIHdoaWNoDQo+IGFy ZQ0KPiA+IGJlaW5nIHVzZWQgaW4gdGhpcyBwYXRjaC4NCj4gPg0KPiA+IEFtIEkgbWlzc2luZyBz b21ldGhpbmc/DQo+IA0KPiBJIGhhdmUgZml4ZWQgaXQgYW5kIHRyeSB0byBidWlsZCBpdCBhZnRl ciBDT05GSUdfUlRFX0JVSUxEX1NIQVJFRF9MSUIgPQ0KPiB5LA0KPiBBbmQgaXQgYnVpbGQgYW5k IGxpbmsgd2VsbC4NCj4gSXMgdGhpcyBhbnN3ZXIgdG8geW91ciBjb21tZW50cz8NCg0KWWVzLCBh bmQgbm8uDQpJIGdldCB0aGF0IHRoZXJlIHdhcyBhbiBpc3N1ZSB3aXRoIHNoYXJlZCBjb21waWxh dGlvbiBzbywgeWVzLCB5b3VyIHJlc3BvbnNlIGhhcyBmaXhlZCB0aGF0Lg0KQnV0LCBJIHN0aWxs IHNlZSB0aGUgaXNzdWUgb2YgcGF0Y2ggYmVpbmcgZGVwZW5kZW50LiBJIHRoaW5rIHlvdSBjb21w aWxlZCBldmVyeXRoaW5nIHRvZ2V0aGVyIChhbGwgcGF0Y2hlcyBjb21iaW5lZCkgLSBzbywgbm8s IHRoYXQgaXMgbm90IHRoZSBleHBlY3RhdGlvbi4NCg0KQWxsIHBhdGNoZXMgc2hvdWxkIGJlIGNv bXBsaWFibGUgc2VwYXJhdGVseSwgc2hhcmVkIG9yIHN0YXRpYy4NCg0KPiANCj4gPiAtDQo+ID4g U2hyZXlhbnNoDQo=