From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01on0073.outbound.protection.outlook.com [104.47.2.73]) by dpdk.org (Postfix) with ESMTP id 793161DB9 for ; Mon, 23 Apr 2018 13:33:00 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Mellanox.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=kHQ/l+bBH5scnvkR4Z0iBN2BBV9is2x1PRiD286mBic=; b=g7chLyHiz4st0ryMDmZE+wkHNokyaW8nW2C1erUEwjNoQ4JfSFSbCxjk1fNMjjvircSWU81rUAr0d9ZJMYNP7Tk43m1DUweTSpPvbOAntgiAxSnAAdIlXPlIubvwJ4pWRc4iEFau9tiDx0BL5yDsv3ei/zOkwCO2G5CLhNa2lm4= Received: from HE1PR0501MB2314.eurprd05.prod.outlook.com (10.168.34.19) by HE1PR0501MB2794.eurprd05.prod.outlook.com (10.172.125.135) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.696.15; Mon, 23 Apr 2018 11:32:56 +0000 Received: from HE1PR0501MB2314.eurprd05.prod.outlook.com ([fe80::d405:aec8:cd2f:85cc]) by HE1PR0501MB2314.eurprd05.prod.outlook.com ([fe80::d405:aec8:cd2f:85cc%18]) with mapi id 15.20.0675.018; Mon, 23 Apr 2018 11:32:56 +0000 From: Ophir Munk To: Ferruh Yigit , Thomas Monjalon , 'Pascal Mazon' , "Mordechay Haimovsky" CC: "'dev@dpdk.org'" , Shahaf Shuler , Olga Shern , Raslan Darawsheh Thread-Topic: [dpdk-dev] [PATCH] net/tap: remove queue specific offload support Thread-Index: AQHTwgulVh6Szfl2KkaDY6VqSunfTqPyiLmAgArocYCACPHZAIAACtOwgAAVgoCABp108IABFj6AgAAC5vCAABlwgIAAEyzg Date: Mon, 23 Apr 2018 11:32:56 +0000 Message-ID: References: <20180322182843.105732-1-ferruh.yigit@intel.com> <2913888.DGWfva7bOG@xps> <33d0cd29-855e-58dd-683d-e540a7978515@intel.com> <67998c63-84fe-4c21-3ca5-df25d47929e6@intel.com> In-Reply-To: <67998c63-84fe-4c21-3ca5-df25d47929e6@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=mellanox.com; x-originating-ip: [193.47.165.251] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1; HE1PR0501MB2794; 7:/EvNbQ5EuOdHa4S86uQ2LIDiFBKJhI2hOb/td4AnKRvsRH1BCoKQoPsgWEZDoRSADf1GXAhGf5DGmerJ9W8mktC8Wqb7D8xsabbymuzUZFavQJDa3MmAJUAxwdFwiLYFvLrIj2NLCCO6Z6AGQj1n2LYe3dOCfGLCjRxdLlf18++cqthHhPpOcaUk7JdiwfL89yZZ8GOha6PpnZdtU6O7HAnjf9xjGEHLRT2BQRp65e7HxbsWfzGmIniNWGNVppMZ x-ms-exchange-antispam-srfa-diagnostics: SOS; x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(48565401081)(5600026)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020); SRVR:HE1PR0501MB2794; x-ms-traffictypediagnostic: HE1PR0501MB2794: x-ld-processed: a652971c-7d2e-4d9b-a6a4-d149256f461b,ExtAddr x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:(72170088055959)(228905959029699); x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3002001)(3231232)(944501410)(52105095)(93006095)(93001095)(10201501046)(6055026)(6041310)(20161123564045)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123558120)(6072148)(201708071742011); SRVR:HE1PR0501MB2794; BCL:0; PCL:0; RULEID:; SRVR:HE1PR0501MB2794; x-forefront-prvs: 06515DA04B x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(376002)(39860400002)(39380400002)(346002)(396003)(366004)(13464003)(69234005)(6506007)(5660300001)(53546011)(74316002)(3846002)(6116002)(229853002)(59450400001)(305945005)(8936002)(8676002)(76176011)(81166006)(110136005)(26005)(5250100002)(316002)(54906003)(478600001)(6436002)(66066001)(25786009)(7736002)(6636002)(6246003)(186003)(4326008)(33656002)(55016002)(2900100001)(53936002)(107886003)(9686003)(7696005)(102836004)(86362001)(3660700001)(446003)(476003)(11346002)(3280700002)(2906002)(93886005)(575784001); DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR0501MB2794; H:HE1PR0501MB2314.eurprd05.prod.outlook.com; FPR:; SPF:None; LANG:en; MLV:sfv; x-microsoft-antispam-message-info: XbtTpbvNi5qektS+z3KcmEkuIDC+KeFyW2NfbWyhaGSMwoVHwGmCI+k0CKw2SJY8j9Y0MzJqIpfZLfviCaOg8qrZ0WYnQLbQoTDJyMh9TrgIq6LPRtDTVwppmHWmpT/MJ7fpb+5u6hlY0gNmu84V/PndYgsoB9nSP1s6nuRXA/GAVr8cYlLxQ8ntol84DWIR spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Office365-Filtering-Correlation-Id: 3f9f16ef-844e-4cbf-99ae-08d5a90df5e6 X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3f9f16ef-844e-4cbf-99ae-08d5a90df5e6 X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Apr 2018 11:32:56.6273 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0501MB2794 Subject: Re: [dpdk-dev] [PATCH] net/tap: remove queue specific offload support 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: Mon, 23 Apr 2018 11:33:00 -0000 SGkgRmVycnVoLA0KVGhlIGV4YWN0IHNhbWUgc2V0dXAgd29ya3Mgd2l0aG91dCB5b3VyIHBhdGNo IChkb25lIGJlZm9yZSBzZW5kaW5nIG15IGZpcnN0IGVtYWlsKS4NCkkgc3RhcnRlZCBkZWJ1Z2dp bmcgeW91ciBwYXRjaCBhbmQgbm90aWNlZCB5b3UgaGF2ZSBkcm9wcGVkIHRoZSBzZXR0aW5nIG9m IHR4cS0+Y3N1bSB3aGljaCBhbHdheXMgcmVtYWlucyAwIHRoZXJlZm9yZSBbMV0gaXMgbmV2ZXIg ZXhlY3V0ZWQuDQoNCkkgYW0gYWRkaW5nIGEgcGF0Y2ggb24gdG9wIG9mIHlvdXJzIHdoaWNoIGZp eGVzIHRoaXMgaXNzdWUuIA0KRllJIC0gSSBwbGFuIGRvaW5nIG1vcmUgdGVzdHMgdG8gY29uZmly bSB0aGF0IGV2ZXJ5dGhpbmcgd29ya3MgYXMgZXhwZWN0ZWQsIHRoZW4gd2lsbCB1cGRhdGUuDQoN CmRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC90YXAvcnRlX2V0aF90YXAuYyBiL2RyaXZlcnMvbmV0 L3RhcC9ydGVfZXRoX3RhcC5jDQppbmRleCBhMGI4OTIyLi4xOWM3YmEwIDEwMDY0NA0KLS0tIGEv ZHJpdmVycy9uZXQvdGFwL3J0ZV9ldGhfdGFwLmMNCisrKyBiL2RyaXZlcnMvbmV0L3RhcC9ydGVf ZXRoX3RhcC5jDQpAQCAtMTEwOCw3ICsxMTA4LDEzIEBAIGVudW0gaW9jdGxfbW9kZSB7DQogICAg ICAgICAgICAgICAgcmV0dXJuIC0xOw0KICAgICAgICBkZXYtPmRhdGEtPnR4X3F1ZXVlc1t0eF9x dWV1ZV9pZF0gPSAmaW50ZXJuYWxzLT50eHFbdHhfcXVldWVfaWRdOw0KICAgICAgICB0eHEgPSBk ZXYtPmRhdGEtPnR4X3F1ZXVlc1t0eF9xdWV1ZV9pZF07DQotDQorICAgICAgIGlmICh0eF9jb25m ICE9IE5VTEwgJiYNCisgICAgICAgICAgICEhKHR4X2NvbmYtPnR4cV9mbGFncyAmIEVUSF9UWFFf RkxBR1NfSUdOT1JFKSkgew0KKyAgICAgICAgICAgICAgIHR4cS0+Y3N1bSA9ICEhKHR4X2NvbmYt Pm9mZmxvYWRzICYNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKERFVl9UWF9PRkZM T0FEX0lQVjRfQ0tTVU0gfA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgREVWX1RY X09GRkxPQURfVURQX0NLU1VNIHwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERF Vl9UWF9PRkZMT0FEX1RDUF9DS1NVTSkpOw0KKyAgICAgICB9DQogICAgICAgIHJldCA9IHRhcF9z ZXR1cF9xdWV1ZShkZXYsIGludGVybmFscywgdHhfcXVldWVfaWQsIDApOw0KICAgICAgICBpZiAo cmV0ID09IC0xKQ0KICAgICAgICAgICAgICAgIHJldHVybiAtMTsNCg0KUmVnYXJkcywNCk9waGly DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogRmVycnVoIFlpZ2l0IFtt YWlsdG86ZmVycnVoLnlpZ2l0QGludGVsLmNvbV0NCj4gU2VudDogTW9uZGF5LCBBcHJpbCAyMywg MjAxOCAxOjE0IFBNDQo+IFRvOiBPcGhpciBNdW5rIDxvcGhpcm11QG1lbGxhbm94LmNvbT47IFRo b21hcyBNb25qYWxvbg0KPiA8dGhvbWFzQG1vbmphbG9uLm5ldD47ICdQYXNjYWwgTWF6b24nIDxw YXNjYWwubWF6b25ANndpbmQuY29tPjsNCj4gTW9yZGVjaGF5IEhhaW1vdnNreSA8bW90aWhAbWVs bGFub3guY29tPg0KPiBDYzogJ2RldkBkcGRrLm9yZycgPGRldkBkcGRrLm9yZz47IFNoYWhhZiBT aHVsZXINCj4gPHNoYWhhZnNAbWVsbGFub3guY29tPjsgT2xnYSBTaGVybiA8b2xnYXNAbWVsbGFu b3guY29tPjsgUmFzbGFuDQo+IERhcmF3c2hlaCA8cmFzbGFuZEBtZWxsYW5veC5jb20+DQo+IFN1 YmplY3Q6IFJlOiBbZHBkay1kZXZdIFtQQVRDSF0gbmV0L3RhcDogcmVtb3ZlIHF1ZXVlIHNwZWNp ZmljIG9mZmxvYWQNCj4gc3VwcG9ydA0KPiANCj4gT24gNC8yMy8yMDE4IDEwOjE3IEFNLCBPcGhp ciBNdW5rIHdyb3RlOg0KPiA+IEhpIEZlcnJ1aCwNCj4gPiBBIHF1aWNrIGZlZWRiYWNrIHRvIHlv dXIgcGF0Y2ggb24gdG9wIG9mIG5leHQtbmV0L21hc3RlcjogdGhlIElQIGFuZCBUQ1ANCj4gb2Zm bG9hZGVkIGNoZWNrc3VtcyBhcmUgdHVybmVkIGluY29ycmVjdC4NCj4gDQo+IEhpIE9waGlyLA0K PiANCj4gVGhhbmtzIGZvciB0ZXN0aW5nLg0KPiBUaGlzIHBhdGNoIHJlbW92ZXMgcXVldWUgc3Bl Y2lmaWMgb2ZmbG9hZHMgZm9yIHRhcCBidXQgbm90aGluZyB0b3VjaGVkIG9uDQo+IHBvcnQgb2Zm bG9hZHMsIGFuZCBpbiBiZWxvdyB0ZXN0IHlvdSBhcmUgYWxyZWFkeSB1c2luZyBzaW5nbGUgcXVl dWUuDQo+IA0KPiBUaGlzIG1heSBtZWFuIHNvbWV0aGluZyBpcyB3cm9uZyBpbiB0YXAgZm9yIHBv cnQgb2ZmbG9hZGluZyBjb25maWd1cmF0aW9uLg0KPiANCj4gVGFwIGRvZXMgY3N1bSBjYWxjdWxh dGlvbiBpbiBUeCBwYXRoIFsxXSwgd2hpY2ggZG9lcyBub3QgZXZlbiBjaGVja3MgdGhlDQo+IG9m ZmxvYWRpbmcgZmxhZ3MsIGJ1dCBtYnVmLT5vbF9mbGFncy4gQW55IGNoYW5jZSB0aGF0IG1idWYt Pm9sX2ZsYWdzIGlzIG5vdA0KPiBzZXQgY29ycmVjdD8gQ2FuIHlvdSBhYmxlIHRvIG1ha2UgZXhh Y3Qgc2FtZSBzZXR1cCB3b3JrIHdpdGhvdXQgdGhpcw0KPiBwYXRjaD8NCj4gDQo+IA0KPiBbMV0N Cj4gICAgIGlmICh0eHEtPmNzdW0gJiYNCj4gICAgICAgICAoKG1idWYtPm9sX2ZsYWdzICYgKFBL VF9UWF9JUF9DS1NVTSB8IFBLVF9UWF9JUFY0KSB8fA0KPiAgICAgICAgICAobWJ1Zi0+b2xfZmxh Z3MgJiBQS1RfVFhfTDRfTUFTSykgPT0gUEtUX1RYX1VEUF9DS1NVTSB8fA0KPiAgICAgICAgICAo bWJ1Zi0+b2xfZmxhZ3MgJiBQS1RfVFhfTDRfTUFTSykgPT0gUEtUX1RYX1RDUF9DS1NVTSkpKSB7 DQo+ICAgICAgICAgICAgIC8qIFN1cHBvcnQgb25seSBwYWNrZXRzIHdpdGggYWxsIGRhdGEgaW4g dGhlIHNhbWUgc2VnICovDQo+ICAgICAgICAgICAgIGlmIChtYnVmLT5uYl9zZWdzID4gMSkNCj4g ICAgICAgICAgICAgICAgICAgICBicmVhazsNCj4gICAgICAgICAgICAgLyogVG8gY2hhbmdlIGNo ZWNrc3Vtcywgd29yayBvbiBhIGNvcHkgb2YgZGF0YS4gKi8NCj4gICAgICAgICAgICAgcnRlX21l bWNweShtX2NvcHksIHJ0ZV9wa3RtYnVmX210b2QobWJ1Ziwgdm9pZCAqKSwNCj4gICAgICAgICAg ICAgICAgICAgICAgICBydGVfcGt0bWJ1Zl9kYXRhX2xlbihtYnVmKSk7DQo+ICAgICAgICAgICAg IHRhcF90eF9vZmZsb2FkKG1fY29weSwgbWJ1Zi0+b2xfZmxhZ3MsDQo+ICAgICAgICAgICAgICAg ICAgICAgICAgICAgIG1idWYtPmwyX2xlbiwgbWJ1Zi0+bDNfbGVuKTsNCj4gICAgICAgICAgICAg aW92ZWNzWzFdLmlvdl9iYXNlID0gbV9jb3B5Ow0KPiAgICAgfQ0KPiANCj4gDQo+ID4NCj4gPiBE ZXRhaWxlZCBkZXNjcmlwdGlvbg0KPiA+ID09PT09PT09PT09PT09PT0NCj4gPiBBIHRyYWZmaWMg Z2VuZXJhdG9yIGlzIHNlbmRpbmcgdG8gYSBkcGRrIGRldmljZSBvbmUgVENQIHBhY2tldCBhbmQg ZXhwZWN0cw0KPiB0byByZWNlaXZlIGl0IGJhY2sgYWZ0ZXIgdGhlIElQIGFuZCBUQ1AgY2hlY2tz dW1zIGhhdmUgYmVlbiBjYWxjdWxhdGVkIGJ5DQo+IFRBUC4NCj4gPg0KPiA+IFRlc3RwbWQgcGFy YW1ldGVycw0KPiA+ID09PT09PT09PT09PT09PT09DQo+ID4gdGVzdHBtZCAtYyAweDBmIC1uIDQg LS12ZGV2PSJuZXRfdGFwMCxpZmFjZT1uZXRfdnNjMCxyZW1vdGU9ZW5zMiIgLXcNCj4gPiAwMDAw OjAwOjAwLjAgLS0gLS1idXJzdD02NCAtLW1iY2FjaGU9NTEyIC0tcG9ydG1hc2sgMHgxIC1pIC0t dHhkPTI1Ng0KPiA+IC0tcnhkPTI1NiAtLXJ4cT0xIC0tdHhxPTEgLS1jb3JlbWFzayAweDAwOCAg LS1mb3J3YXJkLW1vZGU9Y3N1bQ0KPiA+IC0tZXRoLXBlZXI9MCwwMDoxNTo1ZDoxMDo2NjowMg0K PiA+DQo+ID4gVGVzdHBtZCBDTEkgY29tbWFuZHMNCj4gPiA9PT09PT09PT09PT09PT09PT09DQo+ ID4gdGVzdHBtZD4gcG9ydCBzdG9wIGFsbA0KPiA+IHRlc3RwbWQ+IGNzdW0gc2V0IGlwIGh3IDAN Cj4gPiB0ZXN0cG1kPiBjc3VtIHNldCB0Y3AgaHcgMA0KPiA+IHRlc3RwbWQ+IHBvcnQgc3RhcnQg YWxsDQo+ID4gdGVzdHBtZD4gc3RhcnQNCj4gPg0KPiA+IE9uIFRyYWZmaWMgZ2VuZXJhdG9yIHNp ZGUNCj4gPiA9PT09PT09PT09PT09PT09PT09PT0NCj4gPiBBIHRyYWZmaWMgZ2VuZXJhdG9yIChz Y2FweSkgaXMgc2VuZGluZyAxMjYxIGJ5dGVzIG9mIGEgVENQIHBhY2tldA0KPiA+DQo+ID4gTW9u aXRvcmluZyB0aGUgdHJhZmZpYzoNCj4gPg0KPiA+IHRjcGR1bXAgLWkgPGludGVyZmFjZSBuYW1l PiAtZW52dnYgJg0KPiA+DQo+ID4gVGhlIHRjcGR1bXAgb3V0cHV0IHNob3dzIHRoZSBzZW50IHBh Y2tldCBmb2xsb3dlZCBieSB0aGUgcmVjZWl2ZWQNCj4gcGFja2V0Lg0KPiA+IFBsZWFzZSBub3Rl IHRoZSByZWNlaXZlZCBwYWNrZXQgaGFzIGluY29ycmVjdCBJUCAmIFRDUCBjaGVja3N1bXMgKGJv dGgNCj4gPiBhcmUgMCkNCj4gPg0KPiA+IDExOjUxOjAzLjA1ODYyMyAwMDoxNTo1ZDoxMDo2Njow MiA+IGY0OjUyOjE0OjdhOjU5OjgxLCBldGhlcnR5cGUgSVB2NA0KPiAoMHgwODAwKSwgbGVuZ3Ro IDEyNjE6ICh0b3MgMHgwLCB0dGwgNjQsIGlkIDEsIG9mZnNldCAwLCBmbGFncyBbbm9uZV0sIHBy b3RvIFRDUA0KPiAoNiksIGxlbmd0aCAxMjQ3KQ0KPiA+ICAgICAxMjcuMC4wLjEuMSA+IDEyNy4w LjAuMS4xOiBGbGFncyBbU10sIGNrc3VtIDB4ZGJhNSAoY29ycmVjdCksIHNlcQ0KPiA+IDA6MTIw Nywgd2luIDgxOTIsIGxlbmd0aCAxMjA3DQo+ID4NCj4gPiAxMTo1MTowMy4wNTg4MzYgZjQ6NTI6 MTQ6N2E6NTk6ODEgPiAwMDoxNTo1ZDoxMDo2NjowMiwgZXRoZXJ0eXBlIElQdjQNCj4gKDB4MDgw MCksIGxlbmd0aCAxMjYxOiAodG9zIDB4MCwgdHRsIDY0LCBpZCAxLCBvZmZzZXQgMCwgZmxhZ3Mg W25vbmVdLCBwcm90byBUQ1ANCj4gKDYpLCBsZW5ndGggMTI0NywgYmFkIGNrc3VtIDAgKC0+Nzgx NikhKQ0KPiA+ICAgICAxMjcuMC4wLjEuMSA+IDEyNy4wLjAuMS4xOiBGbGFncyBbU10sIGNrc3Vt IDB4MDAwMCAoaW5jb3JyZWN0IC0+DQo+ID4gMHhkYmE1KSwgc2VxIDA6MTIwNywgd2luIDgxOTIs IGxlbmd0aCAxMjA3DQo+ID4NCj4gPiBSZWdhcmRzLA0KPiA+IE9waGlyDQo+ID4NCj4gPj4gLS0t LS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPj4gRnJvbTogT3BoaXIgTXVuaw0KPiA+PiBTZW50 OiBNb25kYXksIEFwcmlsIDIzLCAyMDE4IDExOjM5IEFNDQo+ID4+IFRvOiAnRmVycnVoIFlpZ2l0 JyA8ZmVycnVoLnlpZ2l0QGludGVsLmNvbT47IFRob21hcyBNb25qYWxvbg0KPiA+PiA8dGhvbWFz QG1vbmphbG9uLm5ldD47IFBhc2NhbCBNYXpvbiA8cGFzY2FsLm1hem9uQDZ3aW5kLmNvbT47DQo+ ID4+IE1vcmRlY2hheSBIYWltb3Zza3kgPG1vdGloQG1lbGxhbm94LmNvbT4NCj4gPj4gQ2M6ICdk ZXZAZHBkay5vcmcnIDxkZXZAZHBkay5vcmc+OyBTaGFoYWYgU2h1bGVyDQo+ID4+IDxzaGFoYWZz QG1lbGxhbm94LmNvbT47IE9sZ2EgU2hlcm4gPG9sZ2FzQG1lbGxhbm94LmNvbT47IFJhc2xhbg0K PiA+PiBEYXJhd3NoZWggPHJhc2xhbmRAbWVsbGFub3guY29tPg0KPiA+PiBTdWJqZWN0OiBSRTog W2RwZGstZGV2XSBbUEFUQ0hdIG5ldC90YXA6IHJlbW92ZSBxdWV1ZSBzcGVjaWZpYw0KPiA+PiBv ZmZsb2FkIHN1cHBvcnQNCj4gPj4NCj4gPj4gSGkgRmVycnVoLA0KPiA+PiBJIHdhcyBhYmxlIHRv IGFwcGx5IHlvdXIgcGF0Y2ggd2l0aCBUaG9tYXMgaGVscDoNCj4gPj4gMS4gZ2l0IGFtIC0tcmVq ZWN0DQo+ID4+IDIuIDxGaXggY29kZSBtYW51YWxseSB1c2luZyAqLnJlaiBmaWxlPiAzLiBnaXQg YW0gLS1jb250aW51ZQ0KPiA+Pg0KPiA+PiBSZWdhcmRzLA0KPiA+PiBPcGhpcg0KPiA+Pg0KPiA+ Pj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPj4+IEZyb206IE9waGlyIE11bmsNCj4g Pj4+IFNlbnQ6IFN1bmRheSwgQXByaWwgMjIsIDIwMTggNzowNSBQTQ0KPiA+Pj4gVG86IEZlcnJ1 aCBZaWdpdCA8ZmVycnVoLnlpZ2l0QGludGVsLmNvbT47IFRob21hcyBNb25qYWxvbg0KPiA+Pj4g PHRob21hc0Btb25qYWxvbi5uZXQ+OyBQYXNjYWwgTWF6b24gPHBhc2NhbC5tYXpvbkA2d2luZC5j b20+Ow0KPiA+Pj4gTW9yZGVjaGF5IEhhaW1vdnNreSA8bW90aWhAbWVsbGFub3guY29tPg0KPiA+ Pj4gQ2M6IGRldkBkcGRrLm9yZzsgU2hhaGFmIFNodWxlciA8c2hhaGFmc0BtZWxsYW5veC5jb20+ OyBPbGdhIFNoZXJuDQo+ID4+PiA8b2xnYXNAbWVsbGFub3guY29tPjsgUmFzbGFuIERhcmF3c2hl aCA8cmFzbGFuZEBtZWxsYW5veC5jb20+DQo+ID4+PiBTdWJqZWN0OiBSRTogW2RwZGstZGV2XSBb UEFUQ0hdIG5ldC90YXA6IHJlbW92ZSBxdWV1ZSBzcGVjaWZpYw0KPiA+Pj4gb2ZmbG9hZCBzdXBw b3J0DQo+ID4+Pg0KPiA+Pj4gSGkgRmVycnVoLA0KPiA+Pj4gSSBhbSBub3QgYWJsZSB0byBhcHBs eSB5b3VyIHBhdGNoIG9uIG5leHQtbmV0L21hc3RlciBicmFuY2guDQo+ID4+PiBJIGFtIGZhaWxp bmcgdG8gYXBwbHkgaXQgYm90aCBvbiBsYXRlc3QgY29tbWl0IG9yIGp1c3QgYmVmb3JlDQo+ID4+ PiAyMi1NYXItMTggKGNvbW1pdCdzIGRhdGUpLg0KPiA+Pj4NCj4gPj4+ICQgZ2l0IGFtDQo+ID4+ PiBkcGRrLWRldi1uZXQtdGFwLXJlbW92ZS1xdWV1ZS1zcGVjaWZpYy1vZmZsb2FkLXN1cHBvcnQu cGF0Y2gNCj4gPj4+IEFwcGx5aW5nOiBuZXQvdGFwOiByZW1vdmUgcXVldWUgc3BlY2lmaWMgb2Zm bG9hZCBzdXBwb3J0DQo+ID4+PiBlcnJvcjogcGF0Y2ggZmFpbGVkOiBkcml2ZXJzL25ldC90YXAv cnRlX2V0aF90YXAuYzoyNjkNCj4gPj4+IGVycm9yOiBkcml2ZXJzL25ldC90YXAvcnRlX2V0aF90 YXAuYzogcGF0Y2ggZG9lcyBub3QgYXBwbHkgUGF0Y2gNCj4gPj4+IGZhaWxlZCBhdA0KPiA+Pj4g MDAwMSBuZXQvdGFwOiByZW1vdmUgcXVldWUgc3BlY2lmaWMgb2ZmbG9hZCBzdXBwb3J0DQo+ID4+ Pg0KPiA+Pj4gUGxlYXNlIGFkdmlzZS4NCj4gPj4+DQo+ID4+PiBPbmNlIHRoaXMgZXJyb3IgaXMg Zml4ZWQgSSBjYW4gdmVyaWZ5IHlvdXIgcGF0Y2ggd2l0aCBoaWdoIHByaW9yaXR5DQo+ID4+PiBh bmQgc2VuZCB5b3UgbXkgZmVlZGJhY2suDQo+ID4+Pg0KPiA+Pj4gUmVnYXJkcywNCj4gPj4+IE9w aGlyDQo+ID4+Pg0KPiA+Pj4+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4+Pj4gRnJv bTogRmVycnVoIFlpZ2l0IFttYWlsdG86ZmVycnVoLnlpZ2l0QGludGVsLmNvbV0NCj4gPj4+PiBT ZW50OiBXZWRuZXNkYXksIEFwcmlsIDE4LCAyMDE4IDE6NTUgUE0NCj4gPj4+PiBUbzogT3BoaXIg TXVuayA8b3BoaXJtdUBtZWxsYW5veC5jb20+OyBUaG9tYXMgTW9uamFsb24NCj4gPj4+PiA8dGhv bWFzQG1vbmphbG9uLm5ldD47IFBhc2NhbCBNYXpvbiA8cGFzY2FsLm1hem9uQDZ3aW5kLmNvbT47 DQo+ID4+Pj4gTW9yZGVjaGF5IEhhaW1vdnNreSA8bW90aWhAbWVsbGFub3guY29tPg0KPiA+Pj4+ IENjOiBkZXZAZHBkay5vcmc7IFNoYWhhZiBTaHVsZXIgPHNoYWhhZnNAbWVsbGFub3guY29tPjsg T2xnYQ0KPiBTaGVybg0KPiA+Pj4+IDxvbGdhc0BtZWxsYW5veC5jb20+DQo+ID4+Pj4gU3ViamVj dDogUmU6IFtkcGRrLWRldl0gW1BBVENIXSBuZXQvdGFwOiByZW1vdmUgcXVldWUgc3BlY2lmaWMN Cj4gPj4+PiBvZmZsb2FkIHN1cHBvcnQNCj4gPj4+Pg0KPiA+Pj4+IE9uIDQvMTgvMjAxOCAxMDo0 MCBBTSwgT3BoaXIgTXVuayB3cm90ZToNCj4gPj4+Pj4gSGkgRmVycnVoLA0KPiA+Pj4+PiBTb3Jy eSBmb3IgdGhlIGRlbGF5ZWQgcmVzcG9uc2UuDQo+ID4+Pj4+DQo+ID4+Pj4+IEkgd291bGQgbGlr ZSB0byB2ZXJpZnkgdGhlIGNvcnJlY3RuZXNzIG9mIHRoaXMgcGF0Y2ggYnkgcnVubmluZw0KPiA+ Pj4+PiBzZXZlcmFsDQo+ID4+Pj4gaW50ZXJuYWwgdGVzdHMuDQo+ID4+Pj4+IElzIGEgcmVwbHkg YnkgTW9uZGF5IE9LIHdpdGggeW91Pw0KPiA+Pj4+DQo+ID4+Pj4gTW9uZGF5IGNhbiBiZSBsYXRl IHRvIGluY2x1ZGUgcGF0Y2ggaW50byByYzEsIGFueSBjaGFuY2UgdG8gZG8gZWFybGllcj8NCj4g Pj4+Pg0KPiA+Pj4+Pg0KPiA+Pj4+PiBSZWdhcmRzLA0KPiA+Pj4+PiBPcGhpcg0KPiA+Pj4+Pg0K PiA+Pj4+Pj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPj4+Pj4+IEZyb206IEZlcnJ1 aCBZaWdpdCBbbWFpbHRvOmZlcnJ1aC55aWdpdEBpbnRlbC5jb21dDQo+ID4+Pj4+PiBTZW50OiBX ZWRuZXNkYXksIEFwcmlsIDE4LCAyMDE4IDExOjU5IEFNDQo+ID4+Pj4+PiBUbzogVGhvbWFzIE1v bmphbG9uIDx0aG9tYXNAbW9uamFsb24ubmV0PjsgUGFzY2FsIE1hem9uDQo+ID4+Pj4+PiA8cGFz Y2FsLm1hem9uQDZ3aW5kLmNvbT47IE1vcmRlY2hheSBIYWltb3Zza3kNCj4gPj4+PiA8bW90aWhA bWVsbGFub3guY29tPjsNCj4gPj4+Pj4+IE9waGlyIE11bmsgPG9waGlybXVAbWVsbGFub3guY29t Pg0KPiA+Pj4+Pj4gQ2M6IGRldkBkcGRrLm9yZzsgU2hhaGFmIFNodWxlciA8c2hhaGFmc0BtZWxs YW5veC5jb20+OyBPbGdhDQo+ID4+Pj4+PiBTaGVybiA8b2xnYXNAbWVsbGFub3guY29tPg0KPiA+ Pj4+Pj4gU3ViamVjdDogUmU6IFtkcGRrLWRldl0gW1BBVENIXSBuZXQvdGFwOiByZW1vdmUgcXVl dWUgc3BlY2lmaWMNCj4gPj4+Pj4+IG9mZmxvYWQgc3VwcG9ydA0KPiA+Pj4+Pj4NCj4gPj4+Pj4+ IE9uIDQvMTIvMjAxOCA1OjIzIFBNLCBGZXJydWggWWlnaXQgd3JvdGU6DQo+ID4+Pj4+Pj4gT24g NC81LzIwMTggNjo0OSBQTSwgVGhvbWFzIE1vbmphbG9uIHdyb3RlOg0KPiA+Pj4+Pj4+PiBQYXNj YWwsIE1vdGksIE9waGlyLA0KPiA+Pj4+Pj4+PiBwbGVhc2UgY29tbWVudC4NCj4gPj4+Pj4+Pg0K PiA+Pj4+Pj4+IEhpIE1vdGksDQo+ID4+Pj4+Pj4NCj4gPj4+Pj4+PiBBbnkgY29tbWVudD8gVGhp cyBoYXMgYmVlbiBhc2tlZCBtYW55IHRpbWVzIG5vdy4NCj4gPj4+Pj4+DQo+ID4+Pj4+PiBIaSBN b3RpLCBPcGhpciwNCj4gPj4+Pj4+DQo+ID4+Pj4+PiBZb3UgaGF2ZSBub3QgcmVzcG9uZGVkIHdo eSBxdWV1ZSBzcGVjaWZpYyBvZmZsb2FkIGFkZGVkIGluIG90aGVyDQo+ID4+Pj4gdGhyZWFkLg0K PiA+Pj4+Pj4gQW5kIHlvdSBhcmUgbm90IHJlc3BvbmRpbmcgdG8gdGhpcyBwYXRjaC4uLg0KPiA+ Pj4+Pj4NCj4gPj4+Pj4+IEhpIFBhc2NhbCwNCj4gPj4+Pj4+DQo+ID4+Pj4+PiBJZiB5b3UgYWxz byBoYXZlIG5vIG9iamVjdGlvbiwgdGhpcyBwYXRjaCBpcyBnb2luZyBpbi4NCj4gPj4+Pj4+DQo+ ID4+Pj4+PiBUaGFua3MsDQo+ID4+Pj4+PiBmZXJydWgNCj4gPj4+Pj4+DQo+ID4+Pj4+Pg0KPiA+ Pj4+Pj4+DQo+ID4+Pj4+Pj4+DQo+ID4+Pj4+Pj4+IDIyLzAzLzIwMTggMTk6MjgsIEZlcnJ1aCBZ aWdpdDoNCj4gPj4+Pj4+Pj4+IEl0IGlzIG5vdCBjbGVhciBpZiB0YXAgUE1EIHN1cHBvcnRzIHF1 ZXVlIHNwZWNpZmljIG9mZmxvYWRzLA0KPiA+Pj4+Pj4+Pj4gcmVtb3ZpbmcgdGhlIHJlbGF0ZWQg Y29kZS4NCj4gPj4+Pj4+Pj4+DQo+ID4+Pj4+Pj4+PiBGaXhlczogOTVhZTE5NmFlMTBiICgibmV0 L3RhcDogdXNlIG5ldyBSeCBvZmZsb2FkcyBBUEkiKQ0KPiA+Pj4+Pj4+Pj4gRml4ZXM6IDgxOGZl MTRhOTg5MSAoIm5ldC90YXA6IHVzZSBuZXcgVHggb2ZmbG9hZHMgQVBJIikNCj4gPj4+Pj4+Pj4+ IENjOiBtb3RpaEBtZWxsYW5veC5jb20NCj4gPj4+Pj4+Pj4+DQo+ID4+Pj4+Pj4+PiBTaWduZWQt b2ZmLWJ5OiBGZXJydWggWWlnaXQgPGZlcnJ1aC55aWdpdEBpbnRlbC5jb20+DQo+ID4+Pj4+Pj4+ DQo+ID4+Pj4+Pj4+DQo+ID4+Pj4+Pj4+DQo+ID4+Pj4+Pj4NCj4gPj4+Pj4NCj4gPg0KDQo=