From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from emea01-am1-obe.outbound.protection.outlook.com (mail-am1on0089.outbound.protection.outlook.com [157.56.112.89]) by dpdk.org (Postfix) with ESMTP id 1654C8E5C for ; Sun, 16 Aug 2015 08:38:23 +0200 (CEST) Received: from AM2PR05MB0673.eurprd05.prod.outlook.com (10.161.20.152) by AM2PR05MB0850.eurprd05.prod.outlook.com (10.161.131.13) with Microsoft SMTP Server (TLS) id 15.1.231.21; Sun, 16 Aug 2015 06:38:17 +0000 Received: from AM2PR05MB0675.eurprd05.prod.outlook.com (10.161.20.154) by AM2PR05MB0673.eurprd05.prod.outlook.com (10.161.20.152) with Microsoft SMTP Server (TLS) id 15.1.231.21; Sun, 16 Aug 2015 06:38:10 +0000 Received: from AM2PR05MB0675.eurprd05.prod.outlook.com ([10.161.20.154]) by AM2PR05MB0675.eurprd05.prod.outlook.com ([10.161.20.154]) with mapi id 15.01.0231.024; Sun, 16 Aug 2015 06:38:09 +0000 From: Gilad Berman To: Xiaozhou Li Thread-Topic: [dpdk-dev] Performance issues with Mellanox Connectx-3 EN Thread-Index: AQHQ1VWGvu5F+CH1XU6ipdsQAMGRS54JRJGAgACB2RCAAR1JAIADTUig Date: Sun, 16 Aug 2015 06:38:09 +0000 Message-ID: References: <82F45D86ADE5454A95A89742C8D1410E01DBCD14@shsmsx102.ccr.corp.intel.com> In-Reply-To: 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=giladb@mellanox.com; x-originating-ip: [31.154.92.163] x-microsoft-exchange-diagnostics: 1; AM2PR05MB0673; 5:PG7pFtOemhJSiJWngsv+GpM8fQNDh6NasX2jHaXtEPY+RYMmvX6CZIcaM8FFo49mYM7lZBeV3cO8Ov4kggEGDj/Qs7adUOabFZ2Lqtu9p7f6hSNUJpkYSJzA+l8eP2q/KDRF/pePIOOO3KVpq9tY1Q==; 24:isaTD6uHTdUsv4dczJuLjUylofylruCEU7p54E8f8jJ5LtRQboEhJTkT46XGZc8gsNb9TNjgDp0uqBTkItNOyvvxPr2aX37wUtvtNjua9sU=; 20:+obgInRB2sr4A+fSA+R+M8CTMGD7B2031/xK2jlN13oHrbsLyM6eNpdt726QdXW3bo6jiu81pC7AzwFu5GpoBQ== x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(42142001); SRVR:AM2PR05MB0673; UriScan:; BCL:0; PCL:0; RULEID:(42142001); SRVR:AM2PR05MB0850; x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:(108003899814671); x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(601004)(5005006)(8121501046)(3002001); SRVR:AM2PR05MB0673; BCL:0; PCL:0; RULEID:; SRVR:AM2PR05MB0673; x-forefront-prvs: 067071EFC8 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(189002)(52544003)(13464003)(199003)(377454003)(24454002)(10400500002)(189998001)(97736004)(19609705001)(5001830100001)(5001860100001)(81156007)(19300405004)(110136002)(5001960100002)(74316001)(50986999)(19580395003)(19580405001)(76176999)(54356999)(101416001)(4001540100001)(33656002)(46102003)(122556002)(40100003)(93886004)(19625215002)(2171001)(106356001)(106116001)(87936001)(16236675004)(92566002)(77156002)(62966003)(76576001)(5003600100002)(5002640100001)(2656002)(77096005)(2900100001)(15975445007)(102836002)(66066001)(68736005)(2950100001)(64706001)(105586002)(86362001); DIR:OUT; SFP:1101; SCL:1; SRVR:AM2PR05MB0673; H:AM2PR05MB0675.eurprd05.prod.outlook.com; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en; received-spf: None (protection.outlook.com: mellanox.com does not designate permitted sender hosts) spamdiagnosticoutput: 1:23 spamdiagnosticmetadata: NSPM MIME-Version: 1.0 X-MS-Exchange-CrossTenant-originalarrivaltime: 16 Aug 2015 06:38:09.7987 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM2PR05MB0673 X-Microsoft-Exchange-Diagnostics: 1; AM2PR05MB0850; 2:U1yuQ9PIe5fHd8IzLtB/w7wHonLz2kAe1XZgZK47rwlC9PobXH5XkVcJMJVxKLONYF/mVsd6uN7tu6LBVm/tldpb2431TqgXw9i3wJR1qCIto2CQXjBnS4iKmdkSH9Bnt8k0x/wi6p6TkyZP3Qwx+utUH3TU0KMDJMzdJ7+LTfE=; 3:/rKtY0EkNUL6BE0VCYDeoos6ugguofYKSorAliFClrLf2NMEi5riKEbXOvPArnSq6iubTxDMPkVSx45N9OJYLVPbE6MNXztFsyTLXqgVteb+ILj9QfzVbT2O/7ZGt2RSzsA9Uj6ZX6MBcS8ivGs02ttj4DcgQhpFgcdDjBGIBYs=; 25:vYo1YvzYOJeObuJA4Lx8VeJBMEEHlSITUG3YhnwfnW8TG5E9Me4BB3ygk1VDPkpyPtjKxCv8A6V0/6jc/CTJO3KY3DNtt4e7m2DrSNqRDFguN2jfsXnEFwjJHzf0pDGYk8H+7rZN/LZKq8U3QiY1BbAY+ifbii7n3g/F1pNs9vGuUBu6+yMKqqGpV8wF+fps6trHmuobgeCEtdCx9aVZzB5SRlM34I7R4UohM1v9iEg4lvrn+la5cMk0gy/9q+/buhR1tlp2QXuXpamoHffidw==; 23:vgxjxfLvDG+mFOLjs5lbhCcVxBKcT5IOnUroIZxofj4qgmhO+sSDV+NcjD8lnZu9eDLHqb4XfNgVk/dhZ4oNroyb/aV1j/8IOUVZVvWCc+n/sDtmlTWpxBVU/NVvOa+oD8mpQ919KqubeUHcV3uYtb1kS5NEIcTc2l8tNTG5p29SdleiZWX0rVT9dmkpp+PI X-OriginatorOrg: Mellanox.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 X-Content-Filtered-By: Mailman/MimeDel 2.1.15 Cc: "dev@dpdk.org" Subject: Re: [dpdk-dev] Performance issues with Mellanox Connectx-3 EN X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Aug 2015 06:38:23 -0000 WGlhb3pob3UsDQoNCkkgd2lsbCB0YWtlIHRoaXMgdGhyZWFkIG9mZmxpbmUgYW5kIG1haWwgeW91 LiBJIHByb21pc2UgdG8gcG9zdCB0aGUgc29sdXRpb24gYmFjayBpbiB0aGUgbGlzdCBmb3IgZnV0 dXJlIHJlZmVyZW5jZS4NCkkgZG8gbm90IHdhbnQgdG8gc3BhbSBldmVyeW9uZS4uDQoNClRoeCEN Cg0KRnJvbTogWGlhb3pob3UgTGkgW21haWx0bzp4bEBDUy5QcmluY2V0b24uRURVXQ0KU2VudDog RnJpZGF5LCBBdWd1c3QgMTQsIDIwMTUgNzoxMSBBTQ0KVG86IEdpbGFkIEJlcm1hbiA8Z2lsYWRi QG1lbGxhbm94LmNvbT4NCkNjOiBYdSwgUWlhbiBRIDxxaWFuLnEueHVAaW50ZWwuY29tPjsgZGV2 QGRwZGsub3JnDQpTdWJqZWN0OiBSZTogW2RwZGstZGV2XSBQZXJmb3JtYW5jZSBpc3N1ZXMgd2l0 aCBNZWxsYW5veCBDb25uZWN0eC0zIEVODQoNCkhpIFFpYW4gYW5kIEdpbGFkLA0KDQpUaGFua3Mg Zm9yIHlvdXIgcmVwbHkuIFdlIGFyZSB1c2luZyBkcGRrLTIuMC4wIGFuZCBtbG54LWVuLTIuNC0x LjAuMC4xIG9uIGEgTWVsbGFub3ggQ29ubmVjdHgtMyBFTiB3aXRoIGEgc2luZ2xlIDQwRyBwb3J0 Lg0KDQpJIHJhbiB0ZXN0cG1kIG9uIHRoZSBzZXJ2ZXIgd2l0aCBmb2xsb3dpbmcgY29tbWFuZHM6 IHN1ZG8gLi90ZXN0cG1kIC1jIDB4ZmYgLW4gNCAtLSAtaSAtLXBvcnRtYXNrPTB4MSAtLXBvcnQt dG9wb2xvZ3k9Y2hhaW5lZCAtLXJ4cT00IC0tdHhxPTQgLS1uYi1jb3Jlcz00OyBzZXQgZndkIG1h Y3N3YXANCg0KSSBoYXZlIG11bHRpcGxlIGNsaWVudHMgc2VuZCBwYWNrZXRzIGFuZCByZWNlaXZl IHJlcGxpZXMuIFRoZSBzZXJ2ZXIgdGhyb3VnaHB1dCBpcyBzdGlsbCBvbmx5IGFib3V0IDJNcHBz LiBUZXN0cG1kIHNob3dzIG5vIFJYLWRyb3BwZWQgcGFja2V0LCBidXQgImlmY29uZmlnIHBvcnQi IHNob3dzIG1hbnkgZHJvcHBlZCBwYWNrZXRzLg0KDQpQbGVhc2UgbGV0IG1lIGtub3cgaWYgSSBh bSBkb2luZyBhbnl0aGluZyB3cm9uZyBhbmQgd2hhdCBlbHNlIHNob3VsZCBJIGNoZWNrLiBJIGFt IGFsc28gY29weWluZyB0aGUgb3V0cHV0IHdoZW4gc3RhcnRpbmcgdGVzdHBtZCBhdCB0aGUgZW5k IG9mIHRoaXMgZW1haWwuIE5vdCBzdXJlIGlmIHRoZXJlIGlzIGFueSB1c2VmdWwgaW5mb3JtYXRp b24uDQoNClRoYW5rcyENClhpYW96aG91DQoNCg0KRUFMOiBEZXRlY3RlZCBsY29yZSAwIGFzIGNv cmUgMCBvbiBzb2NrZXQgMA0KICAgICAgICAgLi4uIChvbWl0KSAuLi4NCkVBTDogRGV0ZWN0ZWQg MzIgbGNvcmUocykNCkVBTDogVkZJTyBtb2R1bGVzIG5vdCBhbGwgbG9hZGVkLCBza2lwIFZGSU8g c3VwcG9ydC4uLg0KRUFMOiBTZXR0aW5nIHVwIG1lbW9yeS4uLg0KICAgICAgICAgLi4uIChvbWl0 KSAuLi4NCkVBTDogQXNrIGEgdmlydHVhbCBhcmVhIG9mIDB4YTAwMDAwIGJ5dGVzDQpFQUw6IFZp cnR1YWwgYXJlYSBmb3VuZCBhdCAweDdmMmQyZmUwMDAwMCAoc2l6ZSA9IDB4YTAwMDAwKQ0KRUFM OiBSZXF1ZXN0aW5nIDgxOTIgcGFnZXMgb2Ygc2l6ZSAyTUIgZnJvbSBzb2NrZXQgMA0KRUFMOiBS ZXF1ZXN0aW5nIDgxOTIgcGFnZXMgb2Ygc2l6ZSAyTUIgZnJvbSBzb2NrZXQgMQ0KRUFMOiBUU0Mg ZnJlcXVlbmN5IGlzIH4yMTk5OTk0IEtIeg0KRUFMOiBNYXN0ZXIgbGNvcmUgMCBpcyByZWFkeSAo dGlkPTM5YWRkOTAwO2NwdXNldD1bMF0pDQpQTUQ6IEVOSUNQTUQgdHJhY2U6IHJ0ZV9lbmljX3Bt ZF9pbml0DQpFQUw6IGxjb3JlIDQgaXMgcmVhZHkgKHRpZD0zNjc2YjcwMDtjcHVzZXQ9WzRdKQ0K RUFMOiBsY29yZSA2IGlzIHJlYWR5ICh0aWQ9MzU3Njk3MDA7Y3B1c2V0PVs2XSkNCkVBTDogbGNv cmUgNSBpcyByZWFkeSAodGlkPTM1ZjZhNzAwO2NwdXNldD1bNV0pDQpFQUw6IGxjb3JlIDIgaXMg cmVhZHkgKHRpZD0zNzc2ZDcwMDtjcHVzZXQ9WzJdKQ0KRUFMOiBsY29yZSAxIGlzIHJlYWR5ICh0 aWQ9MzdmNmU3MDA7Y3B1c2V0PVsxXSkNCkVBTDogbGNvcmUgMyBpcyByZWFkeSAodGlkPTM2ZjZj NzAwO2NwdXNldD1bM10pDQpFQUw6IGxjb3JlIDcgaXMgcmVhZHkgKHRpZD0zNGY2ODcwMDtjcHVz ZXQ9WzddKQ0KRUFMOiBQQ0kgZGV2aWNlIDAwMDA6MDQ6MDAuMCBvbiBOVU1BIHNvY2tldCAwDQpF QUw6ICAgcHJvYmUgZHJpdmVyOiA4MDg2OjE1MjEgcnRlX2lnYl9wbWQNCkVBTDogICBOb3QgbWFu YWdlZCBieSBhIHN1cHBvcnRlZCBrZXJuZWwgZHJpdmVyLCBza2lwcGVkDQpFQUw6IFBDSSBkZXZp Y2UgMDAwMDowNDowMC4xIG9uIE5VTUEgc29ja2V0IDANCkVBTDogICBwcm9iZSBkcml2ZXI6IDgw ODY6MTUyMSBydGVfaWdiX3BtZA0KRUFMOiAgIE5vdCBtYW5hZ2VkIGJ5IGEgc3VwcG9ydGVkIGtl cm5lbCBkcml2ZXIsIHNraXBwZWQNCkVBTDogUENJIGRldmljZSAwMDAwOjA2OjAwLjAgb24gTlVN QSBzb2NrZXQgMA0KRUFMOiAgIHByb2JlIGRyaXZlcjogMTViMzoxMDAzIGxpYnJ0ZV9wbWRfbWx4 NA0KUE1EOiBsaWJydGVfcG1kX21seDQ6IFBDSSBpbmZvcm1hdGlvbiBtYXRjaGVzLCB1c2luZyBk ZXZpY2UgIm1seDRfMCIgKFZGOiBmYWxzZSkNClBNRDogbGlicnRlX3BtZF9tbHg0OiAxIHBvcnQo cykgZGV0ZWN0ZWQNClBNRDogbGlicnRlX3BtZF9tbHg0OiBwb3J0IDEgTUFDIGFkZHJlc3MgaXMg ZjQ6NTI6MTQ6NWE6OGY6NzANCkVBTDogUENJIGRldmljZSAwMDAwOjgxOjAwLjAgb24gTlVNQSBz b2NrZXQgMQ0KRUFMOiAgIHByb2JlIGRyaXZlcjogODA4NjoxNTI4IHJ0ZV9peGdiZV9wbWQNCkVB TDogICBOb3QgbWFuYWdlZCBieSBhIHN1cHBvcnRlZCBrZXJuZWwgZHJpdmVyLCBza2lwcGVkDQpF QUw6IFBDSSBkZXZpY2UgMDAwMDo4MTowMC4xIG9uIE5VTUEgc29ja2V0IDENCkVBTDogICBwcm9i ZSBkcml2ZXI6IDgwODY6MTUyOCBydGVfaXhnYmVfcG1kDQpFQUw6ICAgTm90IG1hbmFnZWQgYnkg YSBzdXBwb3J0ZWQga2VybmVsIGRyaXZlciwgc2tpcHBlZA0KSW50ZXJhY3RpdmUtbW9kZSBzZWxl Y3RlZA0KQ29uZmlndXJpbmcgUG9ydCAwIChzb2NrZXQgMCkNClBNRDogbGlicnRlX3BtZF9tbHg0 OiAweDg4NDM2MDogVFggcXVldWVzIG51bWJlciB1cGRhdGU6IDAgLT4gNA0KUE1EOiBsaWJydGVf cG1kX21seDQ6IDB4ODg0MzYwOiBSWCBxdWV1ZXMgbnVtYmVyIHVwZGF0ZTogMCAtPiA0DQpQb3J0 IDA6IEY0OjUyOjE0OjVBOjhGOjcwDQpDaGVja2luZyBsaW5rIHN0YXR1c2VzLi4uDQpQb3J0IDAg TGluayBVcCAtIHNwZWVkIDQwMDAwIE1icHMgLSBmdWxsLWR1cGxleA0KRG9uZQ0KDQp0ZXN0cG1k PiBzaG93IGNvbmZpZyByeHR4DQogIG1hY3N3YXAgcGFja2V0IGZvcndhcmRpbmcgLSBDUkMgc3Ry aXBwaW5nIGRpc2FibGVkIC0gcGFja2V0cy9idXJzdD0zMg0KICBuYiBmb3J3YXJkaW5nIGNvcmVz PTQgLSBuYiBmb3J3YXJkaW5nIHBvcnRzPTENCiAgUlggcXVldWVzPTQgLSBSWCBkZXNjPTEyOCAt IFJYIGZyZWUgdGhyZXNob2xkPTANCiAgUlggdGhyZXNob2xkIHJlZ2lzdGVyczogcHRocmVzaD0w IGh0aHJlc2g9MCB3dGhyZXNoPTANCiAgVFggcXVldWVzPTQgLSBUWCBkZXNjPTUxMiAtIFRYIGZy ZWUgdGhyZXNob2xkPTANCiAgVFggdGhyZXNob2xkIHJlZ2lzdGVyczogcHRocmVzaD0wIGh0aHJl c2g9MCB3dGhyZXNoPTANCiAgVFggUlMgYml0IHRocmVzaG9sZD0wIC0gVFhRIGZsYWdzPTB4MA0K dGVzdHBtZD4gc2hvdyBjb25maWcgZndkDQptYWNzd2FwIHBhY2tldCBmb3J3YXJkaW5nIC0gcG9y dHM9MSAtIGNvcmVzPTQgLSBzdHJlYW1zPTQgLSBOVU1BIHN1cHBvcnQgZGlzYWJsZWQsIE1QIG92 ZXIgYW5vbnltb3VzIHBhZ2VzIGRpc2FibGVkDQpMb2dpY2FsIENvcmUgMSAoc29ja2V0IDApIGZv cndhcmRzIHBhY2tldHMgb24gMSBzdHJlYW1zOg0KICBSWCBQPTAvUT0wIChzb2NrZXQgMCkgLT4g VFggUD0wL1E9MCAoc29ja2V0IDApIHBlZXI9MDI6MDA6MDA6MDA6MDA6MDANCkxvZ2ljYWwgQ29y ZSAyIChzb2NrZXQgMCkgZm9yd2FyZHMgcGFja2V0cyBvbiAxIHN0cmVhbXM6DQogIFJYIFA9MC9R PTEgKHNvY2tldCAwKSAtPiBUWCBQPTAvUT0xIChzb2NrZXQgMCkgcGVlcj0wMjowMDowMDowMDow MDowMA0KTG9naWNhbCBDb3JlIDMgKHNvY2tldCAwKSBmb3J3YXJkcyBwYWNrZXRzIG9uIDEgc3Ry ZWFtczoNCiAgUlggUD0wL1E9MiAoc29ja2V0IDApIC0+IFRYIFA9MC9RPTIgKHNvY2tldCAwKSBw ZWVyPTAyOjAwOjAwOjAwOjAwOjAwDQpMb2dpY2FsIENvcmUgNCAoc29ja2V0IDApIGZvcndhcmRz IHBhY2tldHMgb24gMSBzdHJlYW1zOg0KICBSWCBQPTAvUT0zIChzb2NrZXQgMCkgLT4gVFggUD0w L1E9MyAoc29ja2V0IDApIHBlZXI9MDI6MDA6MDA6MDA6MDA6MDANCg0KDQoNCk9uIFRodSwgQXVn IDEzLCAyMDE1IGF0IDY6MTMgQU0sIEdpbGFkIEJlcm1hbiA8Z2lsYWRiQG1lbGxhbm94LmNvbTxt YWlsdG86Z2lsYWRiQG1lbGxhbm94LmNvbT4+IHdyb3RlOg0KWGlhb3pob3UsDQpGb2xsb3dpbmcg UWlhbiBhbnN3ZXIgLSAyTXBwcyBpcyBWRVJZIChWRVJZKSBsb3cgYW5kIGZhciBiZWxvdyB3aGF0 IHdlIHNlZSBldmVuIHdpdGggc2luZ2xlIGNvcmUuDQpXaGljaCB2ZXJzaW9uIG9mIERQREsgYW5k IFBNRCBhcmUgeW91IHVzaW5nPyBBcmUgeW91IHVzaW5nIE1MTlggb3B0aW1pemVkIGxpYnMgZm9y IFBNRD8gQ2FuIHlvdSBwcm92aWRlIG1vcmUgZGV0YWlscyBvbiB0aGUgZXhhY3Qgc2V0dXA/DQpD YW4geW91IHJ1biBhIHNpbXBsZSB0ZXN0IHdpdGggdGVzdHBtZCBhbmQgc2VlIGlmIHlvdSBhcmUg Z2V0dGluZyB0aGUgc2FtZSByZXN1bHRzPw0KDQpKdXN0IHRvIGJlIGNsZWFyIC0gaXQgZG9lcyBu b3QgbWF0dGVyIHdoaWNoIHZlcnNpb24geW91IGFyZSB1c2luZywgMk1wcHMgaXMgdmVyeSBmYXIg ZnJvbSB3aGF0IHlvdSBzaG91bGQgZ2V0IDopDQoNCi0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0t DQpGcm9tOiBkZXYgW21haWx0bzpkZXYtYm91bmNlc0BkcGRrLm9yZzxtYWlsdG86ZGV2LWJvdW5j ZXNAZHBkay5vcmc+XSBPbiBCZWhhbGYgT2YgWHUsIFFpYW4gUQ0KU2VudDogVGh1cnNkYXksIEF1 Z3VzdCAxMywgMjAxNSA2OjI1IEFNDQpUbzogWGlhb3pob3UgTGkgPHhsQENTLlByaW5jZXRvbi5F RFU8bWFpbHRvOnhsQENTLlByaW5jZXRvbi5FRFU+PjsgZGV2QGRwZGsub3JnPG1haWx0bzpkZXZA ZHBkay5vcmc+DQpTdWJqZWN0OiBSZTogW2RwZGstZGV2XSBQZXJmb3JtYW5jZSBpc3N1ZXMgd2l0 aCBNZWxsYW5veCBDb25uZWN0eC0zIEVODQoNClhpYW96aG91DQpTbyBzZWVtcyB0aGUgcGVyZm9y bWFuY2UgYm90dGxlbmVjayBpcyBub3QgYXQgdGhlIGNvcmUsIGhhdmUgeW91IGNoZWNrZWQgdGhh dCB0aGUgTWVsbGFub3ggTklDJ3MgY29uZmlndXJhdGlvbj8gSG93IG1hbnkgcXVldWVzIHBlciBw b3J0IGFyZSB5b3UgdXNpbmc/IENvdWxkIHlvdSB0cnkgbDNmd2QgZXhhbXBsZSB3aXRoIE1lbGxh bm94IHRvIGNoZWNrIGlmIHRoZSBwZXJmb3JtYW5jZSBpcyBnb29kIGVub3VnaD8gSSdtIG5vdCBm YW1pbGlhciB3aXRoIE1lbGxhbm94IE5JQywgYnV0IGlmIHlvdSBoYXZlIHRyaWVkIEludGVsIEZv cnR2aWxsZSA0MEcgTklDLCBJIGNhbiBnaXZlIG1vcmUgc3VnZ2VzdGlvbnMgYWJvdXQgdGhlIE5J QydzIGNvbmZpZ3VyYXRpb25zLg0KDQpUaGFua3MNClFpYW4NCg0KDQotLS0tLU9yaWdpbmFsIE1l c3NhZ2UtLS0tLQ0KRnJvbTogZGV2IFttYWlsdG86ZGV2LWJvdW5jZXNAZHBkay5vcmc8bWFpbHRv OmRldi1ib3VuY2VzQGRwZGsub3JnPl0gT24gQmVoYWxmIE9mIFhpYW96aG91IExpDQpTZW50OiBU aHVyc2RheSwgQXVndXN0IDEzLCAyMDE1IDc6MjAgQU0NClRvOiBkZXZAZHBkay5vcmc8bWFpbHRv OmRldkBkcGRrLm9yZz4NClN1YmplY3Q6IFtkcGRrLWRldl0gUGVyZm9ybWFuY2UgaXNzdWVzIHdp dGggTWVsbGFub3ggQ29ubmVjdHgtMyBFTg0KDQpIaSBmb2xrcywNCg0KSSBhbSBnZXR0aW5nIHBl cmZvcm1hbmNlIHNjYWxhYmlsaXR5IGlzc3VlcyB3aXRoIERQREsgb24gTWVsbGFub3ggQ29ubmVj dHgtMyAuDQoNCkVhY2ggb2Ygb3VyIG1hY2hpbmUgaGFzIDE2IGNvcmVzIGFuZCBhIHNpbmdsZS1w b3J0IDQwRyBNZWxsYW5veCBDb25uZWN0eC0zIEVOLiBXZSBmaW5kIG91dCB0aGUgc2VydmVyIHRo cm91Z2hwdXQgKmRvZXMgbm90IHNjYWxlKiB3aXRoIG51bWJlciBvZiBjb3Jlcy4gV2l0aCBhIHNp bmdsZSB0aHJlYWQgb24gb25lIGNvcmUsIHdlIGNhbiBnZXQgYWJvdXQgMiBNcHBzIHdpdGggYSBz aW1wbGUgZWNobyBzZXJ2ZXIgaW1wbGVtZW50YXRpb24uIEhvd2V2ZXIsIHRoZSBwZXJmb3JtYW5j ZSBudW1iZXIgZG9lcyBub3QgaW5jcmVhc2UgYXMgd2UgdXNlIG1vcmUgY29yZXMuIE91ciBpbXBs ZW1lbnRhdGlvbiBpcyBiYXNlZCBvbiB0aGUgbDJmd2QgZXhhbXBsZS4NCg0KSSdkIGdyZWF0bHkg YXBwcmVjaWF0ZSBpdCBpZiBhbnlvbmUgY291bGQgcHJvdmlkZSBzb21lIGluc2lnaHRzIG9uIHdo YXQgbWlnaHQgYmUgdGhlIHByb2JsZW0gYW5kIGhvdyBjYW4gd2UgaW1wcm92ZSB0aGUgcGVyZm9y bWFuY2Ugd2l0aCBNZWxsYW5veCBDb25uZWN0eC0zIEVOLiBUaGFua3MhDQoNCkJlc3QsDQpYaWFv emhvdQ0KDQo=