From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on0083.outbound.protection.outlook.com [104.47.1.83]) by dpdk.org (Postfix) with ESMTP id 0AA6E2C38; Wed, 22 Aug 2018 13:42:38 +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:X-MS-Exchange-SenderADCheck; bh=SBTLmLn4i1VMq3258g9BEWnM1GcbNV0rQ3ouDtYkyWI=; b=V57dj8zMDh2Kgp3OJK9CadrEZxbIF85Xj3BE9OgufTqc2VafSbFt39NL8Jea4XypIgI5mNs05IVCpa2IXL5MfPenFS0HG0vBV7sSbc9JH02MzqVnenud3ndCjjN+inEnUB5zLM9BSWZoDeM/4dJVpQShJI7U1UmW7YaOcZHGrEU= Received: from AM0PR0502MB4019.eurprd05.prod.outlook.com (52.133.41.11) by AM0PR0502MB4081.eurprd05.prod.outlook.com (52.133.41.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1059.22; Wed, 22 Aug 2018 11:42:37 +0000 Received: from AM0PR0502MB4019.eurprd05.prod.outlook.com ([fe80::88fa:4498:85a5:9e5a]) by AM0PR0502MB4019.eurprd05.prod.outlook.com ([fe80::88fa:4498:85a5:9e5a%3]) with mapi id 15.20.1080.010; Wed, 22 Aug 2018 11:42:37 +0000 From: Matan Azrad To: Luca Boccassi , Chas Williams <3chas3@gmail.com> CC: "dev@dpdk.org" , Declan Doherty , Chas Williams , "stable@dpdk.org" Thread-Topic: [dpdk-stable] [dpdk-dev] [PATCH v4] net/bonding: per-slave intermediate rx ring Thread-Index: AQHUOV9qWoZpYjo+SEmRSjJwQ4D/9KTKVsoQgAAtXICAANOOgIAAOLmAgAAF1yA= Date: Wed, 22 Aug 2018 11:42:37 +0000 Message-ID: References: <20180816125202.15980-1-bluca@debian.org> <20180816133208.26566-1-bluca@debian.org> <1534933159.5764.107.camel@debian.org> In-Reply-To: <1534933159.5764.107.camel@debian.org> Accept-Language: en-US, he-IL Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=matan@mellanox.com; x-originating-ip: [193.47.165.251] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1; AM0PR0502MB4081; 6:K9ZuUmONEQIzdy9yVTEivBybc7lisWc9GRmxz17aE3cPPmLsDY3xJQkEEKUPyYjoZo0DhpKPdMawAvlbu3FtCn6BjZ434TcfLYWutPRFeY4B8pbUUqArd2bhaM10pgdQ4kgmvwVa3kSMoDg+X1wGpgR86krF+2KmdnXa5W/NxW831AGgSl3X/BTZlZsfyHj3ipjbpPFlXcZaowSIijtFUxzopa/vksSKa51FShnBRXv0RvXxrCll3/AHAQPPRhEjG6syesYQ2IZyR2uzwrghpCaGFcHrLTLqZBFOpRZk9Nwi7gqVm1OneIt3VG1sDr1+T+/pYuaWsvoAbLIglB/JJQLANz+s7pVMBcBTABAbj08zE3jx7kUPojTokAshrHfabTQUtAjeqIFR+Jzio34LUXwPr/iFC8zUNNkT21ZThZqc04CQ6dLql9EkrNZAu81ybAryl4WKfP78CynHtJZ5Iw==; 5:sUXgmCL13+kEYr/gMgKGZGetNSB/gdp53alhgzOH2Jvmg0Iz3Lcc2R2ZiGMW7rOhq55j/0b3rkI5cWOlPQpnjjhNXqcFpiUKs54ixUCJSPR32Gm/OLFuUh7/CiwnirHlgFMHqvl0yKJUEn5Qgl5MVYcV7ECVGpgvkUleXOV2KFo=; 7:9+KUkAEqKgGi/LqgJnJZwusYgDo2rwiKAq9nUBhXAlYofZ7wQ5EqtXYxLvsaNmXP64P8sL9XuqvaquJHaiQTqig33sGCt6eFLE5FC4/8yuOu8fNzZx3QUxNwU/Q/DdTw9DECoZBO60xeVQg3e8HYwwfn+qOUrcUI2kxmv932GJxmacQbOf2hzVvYRI+IHURVQfI4T1awydFkM5+PRUBIwKH2w2pQ0a6THwx2JFdkxNL/DWVN0xUKd2xqWNOAAspE x-ms-exchange-antispam-srfa-diagnostics: SOS; x-ms-office365-filtering-correlation-id: 7e851a36-14bc-4ecf-a762-08d608245bf7 x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989137)(4534165)(4627221)(201703031133081)(201702281549075)(8990107)(5600074)(711020)(4618075)(2017052603328)(7153060)(7193020); SRVR:AM0PR0502MB4081; x-ms-traffictypediagnostic: AM0PR0502MB4081: x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:(20558992708506)(278428928389397); x-ms-exchange-senderadcheck: 1 x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3002001)(3231311)(944501410)(52105095)(93006095)(93001095)(10201501046)(6055026)(149027)(150027)(6041310)(20161123564045)(20161123560045)(20161123562045)(20161123558120)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(201708071742011)(7699016); SRVR:AM0PR0502MB4081; BCL:0; PCL:0; RULEID:; SRVR:AM0PR0502MB4081; x-forefront-prvs: 0772E5DAD5 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(366004)(346002)(136003)(396003)(39860400002)(376002)(199004)(189003)(9686003)(81166006)(53546011)(6506007)(93886005)(478600001)(81156014)(26005)(2900100001)(6436002)(102836004)(33656002)(5250100002)(8676002)(2906002)(14454004)(55016002)(97736004)(3846002)(105586002)(256004)(7696005)(54906003)(8936002)(68736007)(6116002)(106356001)(186003)(74316002)(486006)(476003)(110136005)(305945005)(25786009)(446003)(66066001)(86362001)(316002)(11346002)(39060400002)(6246003)(4326008)(5660300001)(7736002)(76176011)(53936002)(99286004)(229853002); DIR:OUT; SFP:1101; SCL:1; SRVR:AM0PR0502MB4081; H:AM0PR0502MB4019.eurprd05.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; received-spf: None (protection.outlook.com: mellanox.com does not designate permitted sender hosts) x-microsoft-antispam-message-info: ZBA5XEvH/YfCqrd1w0aEcuZEf4p71fNMwMFNzwGR86gFz/T6kKyYpt03wA9tPjFrx5kEGMzkYjM5EfTqmxwQry/seBICU5/6hjCDewM6z+4vlgWMVNTJjF79tGiX5ZGpEOQb8+BZJkGkSnXQpjkWOnNLHpPNx0d6h/H1QLWB1Z5MK7A/pKng9Ti4YlhhyVns/Ty54QcPWDbXM3+d/AJChF4nC8pQ7SUZykv11WnHzIQSC0/qcMHuL3XsdDH5lcg3aENyJBYTkAfI0yvZrBjXMjRZs3H7Fb1uINl/pntrYjzMlxSke70no6eoHX3tYLIRNe/KFqG9H035/7ZlVFlO7hBmlLphqgCwge7U+jVfrBE= spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7e851a36-14bc-4ecf-a762-08d608245bf7 X-MS-Exchange-CrossTenant-originalarrivaltime: 22 Aug 2018 11:42:37.3524 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR0502MB4081 Subject: Re: [dpdk-dev] [dpdk-stable] [PATCH v4] net/bonding: per-slave intermediate rx ring 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, 22 Aug 2018 11:42:39 -0000 SGkgTHVjYQ0KDQpGcm9tOiBMdWNhIEJvY2Nhc3NpDQo+IE9uIFdlZCwgMjAxOC0wOC0yMiBhdCAw NzowOSArMDAwMCwgTWF0YW4gQXpyYWQgd3JvdGU6DQo+ID4gSGkgQ2hhcw0KPiA+DQo+ID4gRnJv bTogQ2hhcyBXaWxsaWFtcw0KPiA+ID4gT24gVHVlLCBBdWcgMjEsIDIwMTggYXQgMTE6NDMgQU0g TWF0YW4gQXpyYWQgPG1haWx0bzptYXRhbkBtZWxsYW5veA0KPiA+ID4gLmNvbT4gd3JvdGU6DQo+ ID4gPiBIaSBDaGFzDQo+ID4gPg0KPiA+ID4gRnJvbTogQ2hhcyBXaWxsaWFtcw0KPiA+ID4gPiBP biBUdWUsIEF1ZyAyMSwgMjAxOCBhdCA2OjU2IEFNIE1hdGFuIEF6cmFkIDxtYWlsdG86bWF0YW5A bWVsbGFubw0KPiA+ID4gPiB4LmNvbT4NCj4gPiA+ID4gd3JvdGU6DQo+ID4gPiA+IEhpDQo+ID4g PiA+DQo+ID4gPiA+IEZyb206IENoYXMgV2lsbGlhbXMNCj4gPiA+ID4gPiBUaGlzIHdpbGwgbmVl ZCB0byBiZSBpbXBsZW1lbnRlZCBmb3Igc29tZSBvZiB0aGUgb3RoZXIgUlggYnVyc3QNCj4gPiA+ ID4gPiBtZXRob2RzIGF0IHNvbWUgcG9pbnQgZm9yIG90aGVyIG1vZGVzIHRvIHNlZSB0aGlzIHBl cmZvcm1hbmNlDQo+ID4gPiA+ID4gaW1wcm92ZW1lbnQgKHdpdGggdGhlIGV4Y2VwdGlvbiBvZiBh Y3RpdmUtYmFja3VwKS4NCj4gPiA+ID4NCj4gPiA+ID4gWWVzLCBJIHRoaW5rIGl0IHNob3VsZCBi ZSBkb25lIGF0IGxlYXN0IHRvDQo+ID4gPiA+IGJvbmRfZXRoZGV2X3J4X2J1cnN0XzgwMjNhZF9m YXN0X3F1ZXVlIChzaG91bGQgYmUgZWFzeSkgZm9yIG5vdy4NCj4gPiA+ID4NCj4gPiA+ID4gVGhl cmUgaXMgc29tZSBkdXBsaWNhdGVkIGNvZGUgYmV0d2VlbiB0aGUgdmFyaW91cyBSWCBwYXRocy4N Cj4gPiA+ID4gSSB3b3VsZCBsaWtlIHRvIGVsaW1pbmF0ZSB0aGF0IGFzIG11Y2ggYXMgcG9zc2li bGUsIHNvIEkgd2FzIGdvaW5nDQo+ID4gPiA+IHRvIGdpdmUgdGhhdCBzb21lIHRob3VnaHQgZmly c3QuDQo+ID4gPg0KPiA+ID4gVGhlcmUgaXMgbm8gcmVhc29uIHRvIHN0YXkgdGhpcyBmdW5jdGlv biBhcyBpcyB3aGlsZSBpdHMgdHdpbiBpcw0KPiA+ID4gY2hhbmdlZC4NCj4gPiA+DQo+ID4gPiBV bmZvcnR1bmF0ZWx5LCB0aGlzIGlzIGFsbCB0aGUgcGF0Y2ggSSBoYXZlIGF0IHRoaXMgdGltZS4N Cj4gPiA+DQo+ID4gPg0KPiA+ID4gPg0KPiA+ID4gPg0KPiA+ID4gPiA+IE9uIFRodSwgQXVnIDE2 LCAyMDE4IGF0IDk6MzIgQU0gTHVjYSBCb2NjYXNzaSA8bWFpbHRvOmJsdWNhQGRlYg0KPiA+ID4g PiA+IGlhbi5vcmc+IHdyb3RlOg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiBEdXJpbmcgYm9uZCA4 MDIuM2FkIHJlY2VpdmUsIGEgYnVyc3Qgb2YgcGFja2V0cyBpcyBmZXRjaGVkDQo+ID4gPiA+ID4g PiBmcm9tIGVhY2ggc2xhdmUgaW50byBhIGxvY2FsIGFycmF5IGFuZCBhcHBlbmRlZCB0byBwZXIt c2xhdmUNCj4gPiA+ID4gPiA+IHJpbmcgYnVmZmVyLg0KPiA+ID4gPiA+ID4gUGFja2V0cyBhcmUg dGFrZW4gZnJvbSB0aGUgaGVhZCBvZiB0aGUgcmluZyBidWZmZXIgYW5kDQo+ID4gPiA+ID4gPiBy ZXR1cm5lZCB0byB0aGUgY2FsbGVyLsKgIFRoZSBudW1iZXIgb2YgbWJ1ZnMgcHJvdmlkZWQgdG8g ZWFjaA0KPiA+ID4gPiA+ID4gc2xhdmUgaXMgc3VmZmljaWVudCB0byBtZWV0IHRoZSByZXF1aXJl bWVudHMgb2YgdGhlIGl4Z2JlDQo+ID4gPiA+ID4gPiB2ZWN0b3IgcmVjZWl2ZS4NCj4gPiA+ID4N Cj4gPiA+ID4gTHVjYSwNCj4gPiA+ID4NCj4gPiA+ID4gQ2FuIHlvdSBleHBsYWluIHRoZXNlIHJl cXVpcmVtZW50cyBvZiBpeGdiZT8NCj4gPiA+ID4NCj4gPiA+ID4gVGhlIGl4Z2JlIChhbmQgc29t ZSBvdGhlciBJbnRlbCBQTURzKSBoYXZlIHZlY3Rvcml6ZWQgUlggcm91dGluZXMNCj4gPiA+ID4g dGhhdCBhcmUgbW9yZSBlZmZpY2llbnQgKGlmIG5vdCBmYXN0ZXIpIHRha2luZyBhZHZhbnRhZ2Ug b2Ygc29tZQ0KPiA+ID4gPiBhZHZhbmNlZCBDUFUgaW5zdHJ1Y3Rpb25zLsKgIEkgdGhpbmsgeW91 IG5lZWQgdG8gYmUgcmVjZWl2aW5nIGF0DQo+ID4gPiA+IGxlYXN0IDMyIHBhY2tldHMgb3IgbW9y ZS4NCj4gPiA+DQo+ID4gPiBTbywgd2h5IHRvIGRvIGl0IGluIGJvbmQgd2hpY2ggaXMgYSBnZW5l cmljIGRyaXZlciBmb3IgYWxsIHRoZQ0KPiA+ID4gdmVuZG9ycyBQTURzLCBJZiBmb3IgaXhnYmUg YW5kIG90aGVyIEludGVsIG5pY3MgaXQgaXMgYmV0dGVyIHlvdSBjYW4NCj4gPiA+IGZvcmNlIHRo b3NlIFBNRHMgdG8gcmVjZWl2ZSBhbHdheXMgMzIgcGFja2V0cyBhbmQgdG8gbWFuYWdlIGEgcmlu Zw0KPiA+ID4gYnkgdGhlbXNlbHZlcy4NCj4gPiA+DQo+ID4gPiBUaGUgZHJhd2JhY2sgb2YgdGhl IHJpbmcgaXMgc29tZSBhZGRpdGlvbmFsIGxhdGVuY3kgb24gdGhlIHJlY2VpdmUNCj4gPiA+IHBh dGguDQo+ID4gPiBJbiB0ZXN0aW5nLCB0aGUgYWRkaXRpb25hbCBsYXRlbmN5IGhhc24ndCBiZWVu IGFuIGlzc3VlIGZvciBib25kaW5nLg0KPiA+DQo+ID4gV2hlbiBib25kaW5nIGRvZXMgcHJvY2Vz c2luZyBzbG93ZXIgaXQgbWF5IGJlIGEgYm90dGxlbmVjayBmb3IgdGhlDQo+ID4gcGFja2V0IHBy b2Nlc3NpbmcgZm9yIHNvbWUgYXBwbGljYXRpb24uDQo+ID4NCj4gPiA+IFRoZSBib25kaW5nIFBN RCBoYXMgYSBmYWlyIGJpdCBvZiBvdmVyaGVhZCBhc3NvY2lhdGVkIHdpdGggdGhlIFJYDQo+ID4g PiBhbmQgVFggcGF0aCBjYWxjdWxhdGlvbnMuwqAgTW9zdCBhcHBsaWNhdGlvbnMgY2FuIGp1c3Qg YXJyYW5nZSB0bw0KPiA+ID4gY2FsbCB0aGUgUlggcGF0aCB3aXRoIGEgc3VmZmljaWVudGx5IGxh cmdlIHJlY2VpdmUuwqAgQm9uZGluZyBjYW4ndA0KPiA+ID4gZG8gdGhpcy4NCj4gPg0KPiA+IEkg ZGlkbid0IHRhbGsgb24gYXBwbGljYXRpb24gSSB0YWxrZWQgb24gdGhlIHNsYXZlIFBNRHMsIFRo ZSBzbGF2ZSBQTUQNCj4gPiBjYW4gbWFuYWdlIGEgcmluZyBieSBpdHNlbGYgaWYgaXQgaGVscHMg Zm9yIGl0cyBvd24gcGVyZm9ybWFuY2UuDQo+ID4gVGhlIGJvbmRpbmcgc2hvdWxkIG5vdCBiZSBv cmllbnRlZCB0byBzcGVjaWZpYyBQTURzLg0KPiANCj4gVGhlIGlzc3VlIHRob3VnaCBpcyB0aGF0 IHRoZSBwZXJmb3JtYW5jZSBwcm9ibGVtIGlzIG5vdCB3aXRoIHRoZSBpbmRpdmlkdWFsDQo+IFBN RHMgLSBpdCdzIHdpdGggYm9uZGluZy4gVGhlcmUgd2VyZSBubyByZXBvcnRzIHJlZ2FyZGluZyB0 aGUgaW5kaXZpZHVhbA0KPiBQTURzLg0KPiBUaGlzIGNvbWVzIGZyb20gcmVwb3J0cyBmcm9tIGN1 c3RvbWVycyBmcm9tIHJlYWwgd29ybGQgcHJvZHVjdGlvbg0KPiBkZXBsb3ltZW50cyAtIHRoZSBp c3N1ZSBvZiBib25kaW5nIGJlaW5nIHRvbyBzbG93IHdhcyByYWlzZWQgbXVsdGlwbGUgdGltZXMu DQo+IFRoaXMgcGF0Y2ggYWRkcmVzc2VzIHRob3NlIGlzc3VlcywgYWdhaW4gaW4gcHJvZHVjdGlv biBkZXBsb3ltZW50cywgd2hlcmUNCj4gaXQncyBiZWVuIHVzZWQgZm9yIHllYXJzLCB0byB1c2Vy cyBhbmQgY3VzdG9tZXJzIHNhdGlzZmFjdGlvbi4NCg0KRnJvbSBDaGFzIEkgdW5kZXJzdG9vZCB0 aGF0IHVzaW5nIGJ1cnN0IG9mIDMyIGhlbHBzIGZvciBzb21lIHNsYXZlIFBNRHMgcGVyZm9ybWFu Y2Ugd2hpY2ggbWFrZXMgc2Vuc2UuDQpJIGNhbid0IHVuZGVyc3RhbmQgaG93IHRoZSBleHRyYSBj b3B5IHBoYXNlcyBpbXByb3ZlcyB0aGUgYm9uZGluZyBpdHNlbGYgcGVyZm9ybWFuY2U6DQoNCllv dSBhZGRlZCAyIGNvcHkgcGhhc2VzIGluIHRoZSBib25kaW5nIFJYIGZ1bmN0aW9uOg0KMS4gR2V0 IHBhY2tldHMgZnJvbSB0aGUgc2xhdmUgdG8gYSBsb2NhbCBhcnJheS4NCjIuIENvcHkgcGFja2V0 IHBvaW50ZXJzIGZyb20gYSBsb2NhbCBhcnJheSB0byB0aGUgcmluZyBhcnJheS4NCjMuIENvcHkg cGFja2V0IHBvaW50ZXJzIGZyb20gdGhlIHJpbmcgYXJyYXkgdG8gdGhlIGFwcGxpY2F0aW9uIGFy cmF5Lg0KDQpFYWNoIHBhY2tldCBhcnJpdmluZyB0byB0aGUgYXBwbGljYXRpb24gbXVzdCBwYXNz IHRoZSBhYm92ZSAzIHBoYXNlcyhpbiBhIHNwZWNpZmljIGNhbGwgb3IgaW4gcHJldmlvdXMgY2Fs bHMpLg0KDQpXaXRob3V0IHRoaXMgcGF0Y2ggd2UgaGF2ZSBvbmx5IC0NCkdldCBwYWNrZXRzIGZy b20gdGhlIHNsYXZlIHRvIHRoZSBhcHBsaWNhdGlvbiBhcnJheS4NCg0KQ2FuIHlvdSBleHBsYWlu IGhvdyB0aGUgZXh0cmEgY29waWVzIGltcHJvdmVzIHRoZSBib25kaW5nIHBlcmZvcm1hbmNlPw0K DQpMb29rcyBsaWtlIGl0IGltcHJvdmVzIHRoZSBzbGF2ZXMgUE1EcyBhbmQgYmVjYXVzZSBvZiB0 aGF0IHRoZSBib25kaW5nIFBNRCBwZXJmb3JtYW5jZSBiZWNvbWVzIGJldHRlci4NCg0KPiBTbyBJ J2QgbGlrZSB0byBzaGFyZSB0aGlzIGltcHJvdmVtZW50IHJhdGhlciB0aGFuIGtlZXBpbmcgaXQg cHJpdmF0ZSAtIGJlY2F1c2UNCj4gSSdtIG5pY2UgdGhhdCB3YXkgOi1QDQo+IA0KPiA+ID4gPiBE aWQgeW91IGNoZWNrIGZvciBvdGhlciB2ZW5kb3IgUE1Ecz8gSXQgbWF5IGh1cnQgcGVyZm9ybWFu Y2UNCj4gPiA+ID4gdGhlcmUuLg0KPiA+ID4gPg0KPiA+ID4gPiBJIGRvbid0IGtub3csIGJ1dCBJ IHN1c3BlY3QgcHJvYmFibHkgbm90LsKgIEZvciB0aGUgbW9zdCBwYXJ0IHlvdQ0KPiA+ID4gPiBh cmUgdHlwaWNhbGx5IHJlYWRpbmcgYWxtb3N0IHVwIHRvIHRoZSB2ZWN0b3IgcmVxdWlyZW1lbnQu wqAgQnV0IGlmDQo+ID4gPiA+IG9uZSBzbGF2ZSBoYXMganVzdCBhIHNpbmdsZSBwYWNrZXQsIHRo ZW4geW91IGNhbid0IHZlY3Rvcml6ZSBvbg0KPiA+ID4gPiB0aGUgbmV4dCBzbGF2ZS4NCj4gPiA+ ID4NCj4gPiA+DQo+ID4gPiBJIGRvbid0IHRoaW5rIHRoYXQgdGhlIHJpbmcgb3ZlcmhlYWQgaXMg YmV0dGVyIGZvciBQTURzIHdoaWNoIGFyZQ0KPiA+ID4gbm90IHVzaW5nIHRoZSB2ZWN0b3JpemVk IGluc3RydWN0aW9ucy4NCj4gPiA+DQo+ID4gPiBUaGUgbm9uLXZlY3Rvcml6ZWQgUE1EcyBhcmUg dXN1YWxseSBxdWl0ZSBzbG93LsKgIFRoZSBhZGRpdGlvbmFsDQo+ID4gPiBvdmVyaGVhZCBkb2Vz bid0IG1ha2UgYSBkaWZmZXJlbmNlIGluIHRoZWlyIHBlcmZvcm1hbmNlLg0KPiA+DQo+ID4gV2Ug c2hvdWxkIG5vdCBkbyB0aGluZ3Mgd29yc2UgdGhhbiB0aGV5IGFyZS4NCj4gDQo+IFRoZXJlIHdl cmUgbm8gcmVwb3J0cyB0aGF0IHRoaXMgbWFkZSB0aGluZ3Mgd29yc2UuIFRoZSBmZWVkYmFjayBm cm9tDQo+IHByb2R1Y3Rpb24gd2FzIHRoYXQgaXQgbWFkZSB0aGluZ3MgYmV0dGVyLg0KDQpZZXMs IEl0IG1heSBiZSBnb29kIGZvciBzcGVjaWZpYyBzbGF2ZXMgZHJpdmVycyBidXQgaHVydCBhbm90 aGVyIHNsYXZlcyBkcml2ZXJzLA0KU28gbWF5YmUgaXQgc2hvdWxkIHN0YXkgcHJpdmF0ZSB0byBz cGVjaWZpYyBjb3N0dW1lcnMgdXNpbmcgc3BlY2lmaWMgbmljcy4NCg0KQWdhaW4sIEkgY2FuIHVu ZGVyc3RhbmQgaG93IHRoaXMgcGF0Y2ggaW1wcm92ZXMgcGVyZm9ybWFuY2Ugb2Ygc29tZSBQTURz DQp0aGVyZWZvcmUgSSB0aGluayB0aGUgYm9uZGluZyBpcyBub3QgdGhlIHBsYWNlIHRvIGFkZCBp dCBidXQgbWF5YmUgc29tZSBQTURzLg0K