From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 19293A034E; Thu, 23 Apr 2020 18:20:31 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 652451C243; Thu, 23 Apr 2020 18:20:30 +0200 (CEST) Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by dpdk.org (Postfix) with ESMTP id AB2711C241 for ; Thu, 23 Apr 2020 18:20:28 +0200 (CEST) IronPort-SDR: X6HXQ5QlhDBDSpKeTYYDT/nASSo95RbLjccrdSVQSDFXEF0dqHcviCC4Leye/lgvpxOzuQLYXg C0zTNBdix0yw== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga006.jf.intel.com ([10.7.209.51]) by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 23 Apr 2020 09:20:27 -0700 IronPort-SDR: h+T15SxEyBbl1lBkW4xDGxrq01TtbFRpts0c2t3jiSiSDLzPNYLd5p95IjxAyGswzs0N/z/kt2 D0NeNG2em0uQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.73,307,1583222400"; d="scan'208";a="259477742" Received: from fmsmsx107.amr.corp.intel.com ([10.18.124.205]) by orsmga006.jf.intel.com with ESMTP; 23 Apr 2020 09:20:27 -0700 Received: from fmsmsx161.amr.corp.intel.com (10.18.125.9) by fmsmsx107.amr.corp.intel.com (10.18.124.205) with Microsoft SMTP Server (TLS) id 14.3.439.0; Thu, 23 Apr 2020 09:20:27 -0700 Received: from FMSEDG002.ED.cps.intel.com (10.1.192.134) by FMSMSX161.amr.corp.intel.com (10.18.125.9) with Microsoft SMTP Server (TLS) id 14.3.439.0; Thu, 23 Apr 2020 09:20:26 -0700 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (104.47.57.176) by edgegateway.intel.com (192.55.55.69) with Microsoft SMTP Server (TLS) id 14.3.439.0; Thu, 23 Apr 2020 09:20:14 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YwYWY4FQzPuBTDY+8UfneX+2+PiojtfzadVQ2rpcNRplE3YL4MEAh8NemmscR3fhNfsLZO5PBy/zFwj6F1f9z7G5phl3S8pNxezbe2vXXHMe385wGTwJaT8zMReMaEhttOU+2eryrDB5v9Gv3mrOeVr7dm3hoN/Oy3wNGKd6SbDJgX6tSmC7RnOMP5H9eOv50cQQR0hB7jZMxEao+U/n8GDaJEU9S4Is1ISiQhjvE3lZ1pWV5CptEG72XkcPC8rYT/6uwD5pDzcosHYaGMrSUpm6/2btSiw/ZGEoWiOEfidQdlrett9cwzlVzrf20xvSY1hPDGi+CR126/X7YKoFVw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Esw1r9r0oSckDBLPQY4cQKQ1Hg7kbATmBYOTHS+KWZ4=; b=cOSIwHL29N3H+vgEWxiXZ52hM65B7Ie2gf80Ugkv/l9a9wTQJ3D+WMtDWyzK6EVxTbhOgEbhBnUgbD8gQXmFSBDY+pcMv/Yn7Ir6BQKmdNdRCSvs9s6j+Y+laQvkf7/IVonSbV2+HJFNWfY+G8qn4Gsh9nhXHfMqKKLydfuBHYLWEdZOqizzo/WVkgHQhOlgZjktkpAWlP2HtGLv9tlQujz4ECCrvepFqY/aM8XB8Avqgy8a6LHV5slTeqlEKVonm18uRZqpUX2k3xGPuIMcQQxRKrXGASu0OLFkWwTLpCFfb7PxVKTCqtWco6MKB37dd9Txe5WFy+sFpCMWACvNlg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Esw1r9r0oSckDBLPQY4cQKQ1Hg7kbATmBYOTHS+KWZ4=; b=Y/9Shj1W3zk57qu0FTbi5z6Hl3RE+sFl0Dce3ELqCQ1KctyUqEKX+TJxV2aUfWgUnOj2uhkZzeDsautpMmIutK/ZrcDjqTBCCPGYbGs5cB2pVFh+I/5ida2s6TTerrtI+oBQ4i52wfPiveSlTZO8tGxMy+YuX9R2LR9TNA9tcZ0= Received: from BYAPR11MB3301.namprd11.prod.outlook.com (2603:10b6:a03:7f::26) by BYAPR11MB2774.namprd11.prod.outlook.com (2603:10b6:a02:c1::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2937.13; Thu, 23 Apr 2020 16:19:53 +0000 Received: from BYAPR11MB3301.namprd11.prod.outlook.com ([fe80::f8cb:58cd:e958:fff4]) by BYAPR11MB3301.namprd11.prod.outlook.com ([fe80::f8cb:58cd:e958:fff4%6]) with mapi id 15.20.2937.020; Thu, 23 Apr 2020 16:19:53 +0000 From: "Ananyev, Konstantin" To: "Wang, Yipeng1" , =?utf-8?B?TWF0dGlhcyBSw7ZubmJsb20=?= , "Medvedkin, Vladimir" , "dev@dpdk.org" , "Dumitrescu, Cristian" CC: "Gobriel, Sameh" , "Richardson, Bruce" Thread-Topic: [dpdk-dev] [PATCH v3 0/4] add new k32v64 hash table Thread-Index: AQHWE1I86tHYNHY9akuA0hVXtO2Tcqh6hyUAgAEDDACAABbXgIAA1L0AgApxIyA= Date: Thu, 23 Apr 2020 16:19:52 +0000 Message-ID: References: In-Reply-To: Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.2.0.6 authentication-results: spf=none (sender IP is ) smtp.mailfrom=konstantin.ananyev@intel.com; x-originating-ip: [192.198.151.169] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 8824590d-c3f0-49f1-d125-08d7e7a22785 x-ms-traffictypediagnostic: BYAPR11MB2774: x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:10000; x-forefront-prvs: 03827AF76E x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BYAPR11MB3301.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFTY:; SFS:(376002)(366004)(346002)(396003)(136003)(39860400002)(66574012)(9686003)(66556008)(55016002)(186003)(5660300002)(64756008)(66476007)(52536014)(66446008)(66946007)(478600001)(76116006)(2906002)(4326008)(6636002)(8676002)(7696005)(81156014)(33656002)(26005)(8936002)(6506007)(53546011)(110136005)(71200400001)(316002)(86362001)(107886003)(54906003); DIR:OUT; SFP:1102; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: MUb6qXnOiy6Ah/NhvCNrY140AjSFbg1kQgsrQBqsnBikStPie1B3wpPTks+VJ0wRjY7fZx1VJCLX3W5knQoj/tQ0fPgYLrZBRrCyVK/Vgo/PIAFhtjH9ItazUWgsnDGjo3Ymz6BpKHd0jXF+unUkCsw/yvTc/AWleDOv2l4dzcz5u5m2Ol3eGwP59XnbC4ptDBhNyrXcsFOKKzOBTgY4qtkn5CCO6CKTqf8vOiOEpbOrKKCWfs8HkmW8MsJH/BVmZvVfki4hWsUZJtXzUuBSHGZ8bIbjz3pVSWvsy8Ng0uM72cRuZFzpd3n1qwva8JwLRLumFgIbsOuvatSgl63XCrdMCuGmgtjEni1BnfTzjanE+/3HU49CnsLKIH1UQyXUw9wpEhaTosM7pyo75h9f1QqW5+cMhtBsD5u2h9//xtymaHartBnu31KHcoJDlPZW x-ms-exchange-antispam-messagedata: UKPnjY33qPz5zAgoxHxV+Ki0yhdfwqo+r2y89d2sUaTQUt1n+2Y3cuvIqfYnLQCk1jdSwoSigmgVfWqTfcx9KUWGZtVCgX9YynI8q7zWQNJu5WKsofSU9IjcXaWC2okL1cvjSVv4U/ux+9OtEwuhGw== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: 8824590d-c3f0-49f1-d125-08d7e7a22785 X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Apr 2020 16:19:52.6905 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: dSvXtCCWLb1eT7QgGqnVk6CjZLHP5cmqhbvI0/tIftSsHoWwidijjA4VVBh1CGDVOB1BTuhIFqTd7fW7geW/gZv5KrwQk+5G9XdDfmeL6Bk= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR11MB2774 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [PATCH v3 0/4] add new k32v64 hash table 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: , Errors-To: dev-bounces@dpdk.org Sender: "dev" SGkgZXZlcnlvbmUsDQogDQo+ID4NCj4gPiBPbiAyMDIwLTA0LTE2IDEyOjE4LCBNZWR2ZWRraW4s IFZsYWRpbWlyIHdyb3RlOg0KPiA+ID4gSGkgTWF0dGlhcywNCj4gPiA+DQo+ID4gPiAtLS0tLU9y aWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+ID4gRnJvbTogTWF0dGlhcyBSw7ZubmJsb20gPG1hdHRp YXMucm9ubmJsb21AZXJpY3Nzb24uY29tPg0KPiA+ID4gU2VudDogV2VkbmVzZGF5LCBBcHJpbCAx NSwgMjAyMCA3OjUyIFBNDQo+ID4gPiBUbzogTWVkdmVka2luLCBWbGFkaW1pciA8dmxhZGltaXIu bWVkdmVka2luQGludGVsLmNvbT47IGRldkBkcGRrLm9yZw0KPiA+ID4gQ2M6IEFuYW55ZXYsIEtv bnN0YW50aW4gPGtvbnN0YW50aW4uYW5hbnlldkBpbnRlbC5jb20+OyBXYW5nLCBZaXBlbmcxDQo+ ID4gPiA8eWlwZW5nMS53YW5nQGludGVsLmNvbT47IEdvYnJpZWwsIFNhbWVoIDxzYW1laC5nb2Jy aWVsQGludGVsLmNvbT47DQo+ID4gPiBSaWNoYXJkc29uLCBCcnVjZSA8YnJ1Y2UucmljaGFyZHNv bkBpbnRlbC5jb20+DQo+ID4gPiBTdWJqZWN0OiBSZTogW2RwZGstZGV2XSBbUEFUQ0ggdjMgMC80 XSBhZGQgbmV3IGszMnY2NCBoYXNoIHRhYmxlDQo+ID4gPg0KPiA+ID4gT24gMjAyMC0wNC0xNSAy MDoxNywgVmxhZGltaXIgTWVkdmVka2luIHdyb3RlOg0KPiA+ID4+IEN1cnJlbnRseSBEUERLIGhh cyBhIHNwZWNpYWwgaW1wbGVtZW50YXRpb24gb2YgYSBoYXNoIHRhYmxlIGZvcg0KPiA+ID4+IDQg Ynl0ZSBrZXlzIHdoaWNoIGlzIGNhbGxlZCBGQksgaGFzaC4gVW5mb3J0dW5hdGVseSBpdHMgbWFp biBkcmF3YmFjaw0KPiA+ID4+IGlzIHRoYXQgaXQgb25seSBzdXBwb3J0cyAyIGJ5dGUgdmFsdWVz Lg0KPiA+ID4+IFRoZSBuZXcgaW1wbGVtZW50YXRpb24gY2FsbGVkIEszMlY2NCBoYXNoIHN1cHBv cnRzIDQgYnl0ZSBrZXlzIGFuZCA4DQo+ID4gPj4gYnl0ZSBhc3NvY2lhdGVkIHZhbHVlcywgd2hp Y2ggaXMgZW5vdWdoIHRvIHN0b3JlIGEgcG9pbnRlci4NCj4gPiA+Pg0KPiA+ID4+IEl0IHdvdWxk IGFsc28gYmUgbmljZSB0byBnZXQgZmVlZGJhY2sgb24gd2hldGhlciB0byBsZWF2ZSB0aGUgb2xk IEZCSw0KPiA+ID4+IGFuZCBuZXcgazMydjY0IGltcGxlbWVudGF0aW9ucyBvciBkZXByZWNhdGUg dGhlIG9sZCBvbmU/DQo+ID4gPg0KPiA+ID4gRG8geW91IHRoaW5rIGl0IHdvdWxkIGJlIGZlYXNp YmxlIHRvIHN1cHBvcnQgY3VzdG9tLXNpemVkIHZhbHVlcyBhbmQgcmVtYWluDQo+ID4gZWZmaWNp ZW50LCBpbiBhIHNpbWlsYXIgbWFubmVyIHRvIGhvdyBydGVfcmluZ19lbGVtLmggZG9lcyB0aGlu Z3M/DQo+ID4gPg0KPiA+ID4gSSdtIGFmcmFpZCBpdCBpcyBub3QgZmVhc2libGUuIEZvciB0aGUg cGVyZm9ybWFuY2UgcmVhc29uIGtleXMgYW5kDQo+ID4gY29ycmVzcG9uZGluZyB2YWx1ZXMgcmVz aWRlcyBpbiBzaW5nbGUgY2FjaGUgbGluZSBzbyB0aGVyZSBhcmUgbm8gZXh0cmEgbWVtb3J5DQo+ ID4gZm9yIGJpZ2dlciB2YWx1ZXMsIHN1Y2ggYXMgMTZCLg0KPiA+DQo+ID4NCj4gPiBXZWxsLCBp ZiB5b3UgaGF2ZSBhIHNtYWxsZXIgdmFsdWUgdHlwZSAob3Iga2V5IHR5cGUpIHlvdSB3b3VsZCBm aXQgaW50bw0KPiA+IHNvbWV0aGluZyBsZXNzLXRoYW4tYS1jYWNoZSBsaW5lLCBhbmQgdGh1cyBy ZWR1Y2UgeW91ciBtZW1vcnkgd29ya2luZyBzZXQNCj4gPiBmdXJ0aGVyLg0KPiA+DQo+ID4NCj4g PiA+PiB2MzoNCj4gPiA+PiAtIGFkZGVkIGJ1bGsgbG9va3VwDQo+ID4gPj4gLSBhdng1MTIga2V5 IGNvbXBhcml6b24gaXMgcmVtb3ZlZCBmcm9tIC5oDQo+ID4gPj4NCj4gPiA+PiB2MjoNCj4gPiA+ PiAtIHJlbmFtZWQgZnJvbSBydGVfZHdrIHRvIHJ0ZV9rMzJ2NjQgYXMgd2FzIHN1Z2dlc3RlZA0K PiA+ID4+IC0gcmV3b3JrZWQgbG9va3VwIGZ1bmN0aW9uLCBhZGRlZCBpbmxpbmVkIHN1YnJvdXRp bmVzDQo+ID4gPj4gLSBhZGRlZCBhdng1MTIga2V5IGNvbXBhcml6b24gcm91dGluZQ0KPiA+ID4+ IC0gYWRkZWQgZG9jdW1lbnRhdGlvbg0KPiA+ID4+IC0gYWRkZWQgc3RhdGlzdGljIGNvdW50ZXJz IGZvciB0b3RhbCBlbnRyaWVzIGFuZCBleHRlbmRlZA0KPiA+ID4+IGVudHJpZXMobGlua2VkIGxp c3QpDQo+ID4gPj4NCj4gPiA+PiBWbGFkaW1pciBNZWR2ZWRraW4gKDQpOg0KPiA+ID4+ICAgICBo YXNoOiBhZGQgazMydjY0IGhhc2ggbGlicmFyeQ0KPiA+ID4+ICAgICBoYXNoOiBhZGQgZG9jdW1l bnRhdGlvbiBmb3IgazMydjY0IGhhc2ggbGlicmFyeQ0KPiA+ID4+ICAgICB0ZXN0OiBhZGQgazMy djY0IGhhc2ggYXV0b3Rlc3RzDQo+ID4gPj4gICAgIHRlc3Q6IGFkZCBrMzJ2NjQgcGVyZiB0ZXN0 cw0KPiA+ID4+DQo+ID4gPj4gICAgYXBwL3Rlc3QvTWFrZWZpbGUgICAgICAgICAgICAgICAgICAg ICAgICAgfCAgIDEgKw0KPiA+ID4+ICAgIGFwcC90ZXN0L2F1dG90ZXN0X2RhdGEucHkgICAgICAg ICAgICAgICAgIHwgIDEyICsrDQo+ID4gPj4gICAgYXBwL3Rlc3QvbWVzb24uYnVpbGQgICAgICAg ICAgICAgICAgICAgICAgfCAgIDMgKw0KPiA+ID4+ICAgIGFwcC90ZXN0L3Rlc3RfaGFzaF9wZXJm LmMgICAgICAgICAgICAgICAgIHwgMTMwICsrKysrKysrKysrKw0KPiA+ID4+ICAgIGFwcC90ZXN0 L3Rlc3RfazMydjY0X2hhc2guYyAgICAgICAgICAgICAgIHwgMjI5ICsrKysrKysrKysrKysrKysr KysrKysNCj4gPiA+PiAgICBkb2MvYXBpL2RveHktYXBpLWluZGV4Lm1kICAgICAgICAgICAgICAg ICB8ICAgMSArDQo+ID4gPj4gICAgZG9jL2d1aWRlcy9wcm9nX2d1aWRlL2luZGV4LnJzdCAgICAg ICAgICAgfCAgIDEgKw0KPiA+ID4+ICAgIGRvYy9ndWlkZXMvcHJvZ19ndWlkZS9rMzJ2NjRfaGFz aF9saWIucnN0IHwgIDY2ICsrKysrKysNCj4gPiA+PiAgICBsaWIvTWFrZWZpbGUgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB8ICAgMiArLQ0KPiA+ID4+ICAgIGxpYi9saWJydGVfaGFzaC9N YWtlZmlsZSAgICAgICAgICAgICAgICAgIHwgIDEzICstDQo+ID4gPj4gICAgbGliL2xpYnJ0ZV9o YXNoL2szMnY2NF9oYXNoX2F2eDUxMnZsLmMgICAgfCAgNTYgKysrKysrDQo+ID4gPj4gICAgbGli L2xpYnJ0ZV9oYXNoL21lc29uLmJ1aWxkICAgICAgICAgICAgICAgfCAgMTcgKy0NCj4gPiA+PiAg ICBsaWIvbGlicnRlX2hhc2gvcnRlX2hhc2hfdmVyc2lvbi5tYXAgICAgICB8ICAgNiArLQ0KPiA+ ID4+ICAgIGxpYi9saWJydGVfaGFzaC9ydGVfazMydjY0X2hhc2guYyAgICAgICAgIHwgMzE1DQo+ ID4gKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrDQo+ID4gPj4gICAgbGliL2xpYnJ0ZV9o YXNoL3J0ZV9rMzJ2NjRfaGFzaC5oICAgICAgICAgfCAyMTEgKysrKysrKysrKysrKysrKysrKysN Cj4gPiA+PiAgICAxNSBmaWxlcyBjaGFuZ2VkLCAxMDU4IGluc2VydGlvbnMoKyksIDUgZGVsZXRp b25zKC0pDQo+ID4gPj4gICAgY3JlYXRlIG1vZGUgMTAwNjQ0IGFwcC90ZXN0L3Rlc3RfazMydjY0 X2hhc2guYw0KPiA+ID4+ICAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBkb2MvZ3VpZGVzL3Byb2dfZ3Vp ZGUvazMydjY0X2hhc2hfbGliLnJzdA0KPiA+ID4+ICAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBsaWIv bGlicnRlX2hhc2gvazMydjY0X2hhc2hfYXZ4NTEydmwuYw0KPiA+ID4+ICAgIGNyZWF0ZSBtb2Rl IDEwMDY0NCBsaWIvbGlicnRlX2hhc2gvcnRlX2szMnY2NF9oYXNoLmMNCj4gPiA+PiAgICBjcmVh dGUgbW9kZSAxMDA2NDQgbGliL2xpYnJ0ZV9oYXNoL3J0ZV9rMzJ2NjRfaGFzaC5oDQo+ID4gPj4N Cj4gW1dhbmcsIFlpcGVuZ10NCj4gSGksIFZsYWRpbWlyLA0KPiBUaGFua3MgZm9yIHJlc3BvbmRp bmcgd2l0aCB0aGUgdXNlIGNhc2VzIGVhcmxpZXIuDQo+IEkgZGlzY3Vzc2VkIHdpdGggU2FtZWgg b2ZmbGluZSwgaGVyZSBhcmUgc29tZSBjb21tZW50cy4NCj4gDQo+IDEuIFNpbmNlIHRoZSBwcm9w b3NlZCBoYXNoIHRhYmxlIGFsc28gaGFzIHNvbWUgc2ltaWxhcml0aWVzIHRvIHJ0ZV90YWJsZSBs aWJyYXJ5IHVzZWQgYnkgcGFja2V0IGZyYW1ld29yaywNCj4gaGF2ZSB5b3UgdHJpZWQgaXQgeWV0 PyBBbHRob3VnaCBpdCBpcyBtYWlubHkgZm9yIHBhY2tldCBmcmFtZXdvcmssIEkgYmVsaWV2ZSB5 b3UgY2FuIHVzZSBpdCBpbmRlcGVuZGVudGx5IGFzIHdlbGwuDQo+IEl0IGhhcyBpbXBsZW1lbnRh dGlvbnMgZm9yIHNwZWNpYWwga2V5IHZhbHVlIHNpemVzLg0KPiBJIGFkZGVkIENyaXN0aWFuIGZv ciBoaXMgY29tbWVudC4NCj4gDQo+IDIuIFdlIHRlbmQgdG8gYWdyZWUgd2l0aCBNYXR0aWFzIHRo YXQgaXQgd291bGQgYmUgYmV0dGVyIGlmIHdlIGhhdmUgYSBtb3JlIGdlbmVyaWMgQVBJIG5hbWUg YW5kIHdpdGggdGhlIHNhbWUNCj4gQVBJIHdlIGNhbiBkbyBtdWx0aXBsZSBrZXkvdmFsdWUgc2l6 ZSBpbXBsZW1lbnRhdGlvbnMuDQo+IFRoaXMgaXMgdG8gYXZvaWQgYWRkaW5nIG5ldyBBUElzIGlu IGZ1dHVyZSB0byBhZ2FpbiBoYW5kbGUgZGlmZmVyZW50IGtleS92YWx1ZQ0KPiB1c2UgY2FzZXMu ICBGb3IgZXhhbXBsZSwgd2UgY2FsbCBpdCBydGVfa3ZfaGFzaCwgYW5kIHRocm91Z2ggdGhlIHBh cmFtZXRlciBzdHJ1Y3Qgd2UgcGFzcyBpbiBhIGtleS12YWx1ZSBzaXplIHBhaXINCj4gd2Ugd2Fu dCB0byB1c2UuDQo+IEltcGxlbWVudGF0aW9uLXdpc2UsIHdlIG1heSBvbmx5IHByb3ZpZGUgaW1w bGVtZW50YXRpb25zIGZvciBjZXJ0YWluIHBvcHVsYXIgdXNlIGNhc2VzIChsaWtlIHRoZSBvbmUg eW91IHByb3ZpZGVkKS4NCj4gRm9yIG90aGVyIGdlbmVyYWwgdXNlIGNhc2VzLCBwZW9wbGUgc2hv dWxkIGdvIHdpdGggdGhlIG1vcmUgZmxleGlibGUgYW5kIGdlbmVyaWMgY3Vja29vIGhhc2guDQo+ IFRoZW4gd2Ugc2hvdWxkIGFsc28gbWVyZ2UgdGhlIEZCSyB1bmRlciB0aGUgbmV3IEFQSS4NCg0K RnJvbSBteSBwZXJzcGVjdGl2ZSBWbGFkaW1pciB3b3JrIGlzIG5vdCBhbiBhdHRlbXB0IHRvIGlu dHJvZHVjZSBuZXcgQVBJIC0NCmJ1dCB0byBmaXggKGV4dGVuZCkgZXhpc3RpbmcgRkJLIG9uZS4N ClJpZ2h0IG5vdyB0aGVyZSBpcyBhIGNvbnRyYWRpY3Rvcnkgc2l0dWF0aW9uOg0KZnJvbSBvbmUg c2lkZSB3aXRoIDRCIGtleXMgaGFzaCB0YWJsZXMgYXJlIHF1aXRlIGNvbW1vbiwgZnJvbSBvdGhl ciBzaWRlDQpiZWNhdXNlIG9mIGl0cyBsaW1pdGF0aW9ucyAoMkIgdmFsdWUsIG5vIG1lY2hhbmlz bSB0byByZXNvbHZlIGNvbGxpc2lvbnMpIGZia19oYXNoDQppcyBoYXJkbHkgdXNhYmxlIGluIG1h am9yaXR5IG9mIHJlYWwtd29ybGQgc2NlbmFyaW9zLg0KDQpBYm91dCBtYWtpbmcgaXQgbW9yZSBn ZW5lcmljIC0gd2UgYWxyZWFkeSBoYXZlIG9uZSBnZW5lcmljIHJ0ZV9oYXNoIEFQSSwNCndoeSBz aG91bGQgd2UgaW50cm9kdWNlIGFuIG5ldyBvbmU/DQpNeSB0YWtlIHdlIHNob3VsZCBmaXggRkJL IGhhc2ggYW5kIG1ha2UgaXQgdXNhYmxlLg0KSWYgaXQgaXMgbm90IGFuIG9wdGlvbiBieSBzb21l IHJlYXNvbiwgdGhlbiBJIHRoaW5rIHdlDQpzaG91bGQgZGVwcmVjYXRlIGFuZCByZW1vdmUgRkJL IGhhc2ggYXQgYWxsLA0KYW5kIGNvbmNlbnRyYXRlIG9uIG1ha2luZyBnZW5lcmljIG9uZSB3b3Jr IGZhc3RlciBmb3IgcGFydGljdWxhciBzY2VuYXJpb3MuDQpMZXQgc2F5IHdlIGNhbiB0cnkgdG8g bW92ZSB3aGF0IFZsYWRpbWlyIGRpZCwgdW5kZXIgcnRlX2hhc2ggQVBJIHVtYnJlbGxhDQpmb3Ig c3BlY2lhbCBjb25maWcgKDRCIGtleSkuDQoNCktvbnN0YW50aW4gICANCiANCg0KDQo=