From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from dpdk.org (dpdk.org [92.243.14.124])
	by inbox.dpdk.org (Postfix) with ESMTP id 6D721A00C5;
	Wed, 13 May 2020 21:27:15 +0200 (CEST)
Received: from [92.243.14.124] (localhost [127.0.0.1])
	by dpdk.org (Postfix) with ESMTP id 26CD31D551;
	Wed, 13 May 2020 21:27:15 +0200 (CEST)
Received: from EUR03-VE1-obe.outbound.protection.outlook.com
 (mail-eopbgr50040.outbound.protection.outlook.com [40.107.5.40])
 by dpdk.org (Postfix) with ESMTP id EACAF1D534;
 Wed, 13 May 2020 21:27:13 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=RirbDsJwp7ziAw/RV1Ajk2djdCEjzKCfPHcuhdubyJg=;
 b=a7lXGTWPL0x89asl1151a4xAsyZQFGKDIRl753eok/7r9CiLDJdEh7Z421GYXZyNVfjfkizT+cXnYwUJSumD3byA6dVmkVawhWWQvC7lxkBks+dh1O3CP6/1YdGzN8meAQVY7FGRpGd0Crqrv/3u3NuBmerOG9zTbdIoo7+z5As=
Received: from AM6P193CA0043.EURP193.PROD.OUTLOOK.COM (2603:10a6:209:8e::20)
 by AM0PR08MB3778.eurprd08.prod.outlook.com (2603:10a6:208:104::24) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2979.27; Wed, 13 May
 2020 19:27:12 +0000
Received: from VE1EUR03FT062.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:209:8e:cafe::3d) by AM6P193CA0043.outlook.office365.com
 (2603:10a6:209:8e::20) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3000.20 via Frontend
 Transport; Wed, 13 May 2020 19:27:12 +0000
Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dpdk.org; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dpdk.org; dmarc=bestguesspass action=none
 header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 VE1EUR03FT062.mail.protection.outlook.com (10.152.18.252) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.3000.19 via Frontend Transport; Wed, 13 May 2020 19:27:11 +0000
Received: ("Tessian outbound b3a67fbfbb1f:v54");
 Wed, 13 May 2020 19:27:11 +0000
X-CR-MTA-TID: 64aa7808
Received: from 7dfd13861185.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 FA5D69DF-DDCD-4E94-AF8C-C4ECADBDD73E.1; 
 Wed, 13 May 2020 19:27:06 +0000
Received: from EUR02-AM5-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 7dfd13861185.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 13 May 2020 19:27:06 +0000
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dGFbCU5F9yuInmFN/GOCsZPNWJ5n8hGnx1NaRG5FQ8cUPvUoasUFLbLHfvoq2bifE9BhcsN0dntFvk69EZA7FxxPZEgEK+eapDdhuQ+L4uXDYEtc1QB53/fK31+IP8lxAQXKZuOZzr/s4JHs2EnWLc0R1/x+beqkg39t0D6RUHJcBWMg1nSvnNeSshGS1AZtfU3/t9hNpX/r3heIa7u1WIKHweDvWbFPHVhWFgpi9E8b+0Ya3sowoREHD2o0FMhQffezt/cUlIrBfSJpYGhCP5xWCWRw3STsrogXrlHwsiCGHwSqmyy7YLbMzOaBfjPCc5Ogp5VOS7H4mukSs2RITA==
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=RirbDsJwp7ziAw/RV1Ajk2djdCEjzKCfPHcuhdubyJg=;
 b=MLL0jv+MQN0rSNJiJYsX3P9QOxA7hNkKRb1hPLD0lfJoujzk+zlk39UIguLSsOrheaw5RvWzyburt3r5wLiaMlLo+QhU6QBohS2A2Xgdmh292Rz2laQBMBaeDKA7sEfcPpXf9TYANGCwmpQzH54CfHQml129Q7Ojmmn1Jl8yWkIMJpsQkvamPAgILEgpVE3IHR+Oic3pwLJELxcQyGW695yxvYLBlgkxcr03o5YMSBMw5tq4PJrbpuStAudJoIOtXkZ3UPugu+WhK9iUM96Uso4HGPJcYG8VHNOmQ96jQbA1mrAMsBEUPr96nbBnA046PY/kt7upXFROv7pGxGgKug==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=RirbDsJwp7ziAw/RV1Ajk2djdCEjzKCfPHcuhdubyJg=;
 b=a7lXGTWPL0x89asl1151a4xAsyZQFGKDIRl753eok/7r9CiLDJdEh7Z421GYXZyNVfjfkizT+cXnYwUJSumD3byA6dVmkVawhWWQvC7lxkBks+dh1O3CP6/1YdGzN8meAQVY7FGRpGd0Crqrv/3u3NuBmerOG9zTbdIoo7+z5As=
Received: from DBBPR08MB4646.eurprd08.prod.outlook.com (2603:10a6:10:f5::16)
 by DBBPR08MB4711.eurprd08.prod.outlook.com (2603:10a6:10:d6::11) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2979.28; Wed, 13 May
 2020 19:27:04 +0000
Received: from DBBPR08MB4646.eurprd08.prod.outlook.com
 ([fe80::1870:afc4:b90f:609d]) by DBBPR08MB4646.eurprd08.prod.outlook.com
 ([fe80::1870:afc4:b90f:609d%5]) with mapi id 15.20.3000.016; Wed, 13 May 2020
 19:27:04 +0000
From: Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com>
To: "Lilijun (Jerry)" <jerry.lilijun@huawei.com>, "'dev@dpdk.org'"
 <dev@dpdk.org>
CC: wangyunjian <wangyunjian@huawei.com>, xudingke <xudingke@huawei.com>,
 "'stable@dpdk.org'" <stable@dpdk.org>, nd <nd@arm.com>,
 "yipeng1.wang@intel.com" <yipeng1.wang@intel.com>, nd <nd@arm.com>, Honnappa
 Nagarahalli <Honnappa.Nagarahalli@arm.com>, nd <nd@arm.com>
Thread-Topic: [dpdk-dev] [PATCH] lib/librte_hash: add rte_hash_del_key_fixed
 without compact
Thread-Index: AdYcO135HJmvjYM1Q2CGkNRR8o1T1wBYjpkQAAj59vABXEemcAADnGyAAYa4j2A=
Date: Wed, 13 May 2020 19:27:04 +0000
Message-ID: <DBBPR08MB46467FA836BDDE383A084C2C98BF0@DBBPR08MB4646.eurprd08.prod.outlook.com>
References: <40280F65B1B0B44E8089ED31C01616EBA49921F2@dggeml529-mbx.china.huawei.com>
 <DBBPR08MB464619A89094FEA419669D4598AC0@DBBPR08MB4646.eurprd08.prod.outlook.com>
 <40280F65B1B0B44E8089ED31C01616EBA4997CD9@dggeml529-mbx.china.huawei.com>
 <DBBPR08MB4646FA4227427A8B731A766C98A70@DBBPR08MB4646.eurprd08.prod.outlook.com>
 <40280F65B1B0B44E8089ED31C01616EBA49A19CE@dggeml529-mbx.china.huawei.com>
In-Reply-To: <40280F65B1B0B44E8089ED31C01616EBA49A19CE@dggeml529-mbx.china.huawei.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ts-tracking-id: 7432e6c8-c4a8-44c1-8a4a-8336389127a5.0
x-checkrecipientchecked: true
Authentication-Results-Original: huawei.com; dkim=none (message not signed)
 header.d=none;huawei.com; dmarc=none action=none header.from=arm.com;
x-originating-ip: [70.113.25.165]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-HT: Tenant
X-MS-Office365-Filtering-Correlation-Id: fac50486-1164-46b4-73d4-08d7f773a2a0
x-ms-traffictypediagnostic: DBBPR08MB4711:|DBBPR08MB4711:|AM0PR08MB3778:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS: <AM0PR08MB37786A92432B7C9C29D33E9098BF0@AM0PR08MB3778.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:10000;OLM:10000;
x-forefront-prvs: 0402872DA1
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original: sel9vU68d3nItnNrAC9xYejMVYwS4rlPSjI6Ssudiq7gnpLJDiBQ8aTuoamkHPp3NLOntf+uAdEntJWjugj8H2Rui+Jg3Y7NlQ6h//+vubVm+P2+T7OJ90hAQ7n8CRVtDJI6tsQYakHONDS+0qCdRtYFnG0LCnU2hlqntwe8tnKuaGJJ/qbyih5/n4OpO/nrOZDYFe1UPmPoIAD7acyoY4Koz8+Pirv4w+D99TlsgYCa9qsXEj08LWSb9M0L2ULgpgUS3NJKICq9so2WR2swpsmEFZHvY77Km+hPi1jQHoF4Kwm0bLx5NhcCds09e4bhGoQnYStj0Qsi21PG8uAAoUjChPdapzhCKYFNFCtMNlUQk7PWDBXo4mAGSBrktbdsczYuweuYtGrdICjLXHq7Ea4emUSJU2S76mzLEsfK8lCtXBBy4NaCqgYLwQWQLIaszPRarfyGYhHeYqV21hjyO6cxKjrilfA/+6PCQZ1Q8PuwBjznz8Bg7V4y4VaN+N8cA0OMpctWNJC5v92rHeqqWZy7AmExU8r/VpCd16LQMYI=
X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en;
 SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DBBPR08MB4646.eurprd08.prod.outlook.com;
 PTR:; CAT:NONE; SFTY:;
 SFS:(4636009)(346002)(376002)(39860400002)(366004)(136003)(396003)(33430700001)(7696005)(26005)(71200400001)(6506007)(316002)(5660300002)(110136005)(54906003)(186003)(33440700001)(4326008)(33656002)(9686003)(55016002)(478600001)(8936002)(8676002)(64756008)(76116006)(86362001)(66556008)(66946007)(52536014)(2906002)(66476007)(66446008)(491001);
 DIR:OUT; SFP:1101; 
x-ms-exchange-antispam-messagedata: InrqSCWwzl2l8sny1OL8kZAeY0Ch0cPd6JvxKtLBioEC23PV6Vgg+LyKmkaYGLbNjuubE5lOKfWZR06FQSa22Omo/bN7G3+cEoD90POhtp0uqUncKAMoLjVG5NN9O0jcxROauipMowcRreETVbVFUHUeMINyU9YKM099a64xEvAsGFDZXJykqagktREeOaVdh2XFqBPXhvHhzNkqnbY+pr/UnOxWbxeXpPI9voLLCZNc50y29b6VWa+JIwIF3hUEq2FV83pCfCyGqBZz7DRjF2gL93qcvrTCk/tCsv4/y3S8RTSyFFUknE3HTLePPE1kiXvYZGLZVdP5AQNj5MtC9m+GjB9UCugT2AecRZ1BkFyaJpcYqS33xOTdCX5gdIMD7mFwBoYHvnOViHoch3HdwCcYiA8ZXuQX1tM8MAuQu8E/91uvKknE8RpMmqrTWKnBYY381nZftiwApiumtzD2atdXvGDqBREUWpj5LtLz5gC0c17XUMyL6jS9cM+xI3Lc
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB4711
Original-Authentication-Results: huawei.com; dkim=none (message not signed)
 header.d=none;huawei.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped: VE1EUR03FT062.eop-EUR03.prod.protection.outlook.com
X-Forefront-Antispam-Report: CIP:63.35.35.123; CTRY:IE; LANG:en; SCL:1; SRV:;
 IPV:CAL; SFV:NSPM; H:64aa7808-outbound-1.mta.getcheckrecipient.com;
 PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com; CAT:NONE; SFTY:;
 SFS:(4636009)(346002)(39860400002)(396003)(376002)(136003)(46966005)(33430700001)(33656002)(81166007)(356005)(26005)(33440700001)(186003)(36906005)(82740400003)(110136005)(478600001)(86362001)(6506007)(316002)(2906002)(54906003)(82310400002)(336012)(55016002)(52536014)(47076004)(5660300002)(8936002)(70586007)(70206006)(7696005)(8676002)(450100002)(4326008)(9686003)(491001);
 DIR:OUT; SFP:1101; 
X-MS-Office365-Filtering-Correlation-Id-Prvs: 6fac3731-67f7-4a24-c053-08d7f7739e46
X-Forefront-PRVS: 0402872DA1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: n+WDnEjQSfkhGPlpuP1gwouvkfDTzCN2/lMNfC0+8RhMvqVyxu5ZsvuHaJZeGetdDHwCxMfcuUrGMXNCYnQlHRdJKIpuF35dx243jAYLr2cKZl75A14LASwFuxFJKIn+gpT5bkuwGVr8fENxWq5UrV5yNMwAJ/QnlKvoBYwtSAiyQYXB2hahVscES6LebvowqLo0kem1hE3YH8QDnLnSwGJfi6GREmZFeBRCU1nRccOc7VkY7gtYnYqp6ONjHsdZE0vWneJK3J2ft+C2lwGn63/V7KIdk8tp2Qpmxzatqc5oEQ8gxhEiqnocV18UhIS+zH08ca8WprkHX+Hgb5hcynSFj4Vxj8PkoBjO3xc9WrrAxPN2+XpAdMPC4FmPppSc+m36KIYnmLIUdgwpj5GqwgUz6ys9SB1uT07l9IrW8AfAqv5imOlhB2b+uAeDAzarliJwhRuS0RcFjn/NKsh58jYe3/tiqEJxYLeXJ4Tq7qg11Wnw/FWmoXDW5VvC+K8VuNXB5Pj1emOP5gfO5MbnvRA3FVme/Dy0BRankT5jnMO+BjbdzJ3uRwBMwoTLHhue1DxzB5fC8xwfu8hrR+3MnNPxvIlEoOQZyD5zYfYPUqA=
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 May 2020 19:27:11.6436 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: fac50486-1164-46b4-73d4-08d7f773a2a0
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[63.35.35.123];
 Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR08MB3778
Subject: Re: [dpdk-dev] [PATCH] lib/librte_hash: add rte_hash_del_key_fixed
 without compact
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
Errors-To: dev-bounces@dpdk.org
Sender: "dev" <dev-bounces@dpdk.org>

PiA+IDxzbmlwPg0KPiA+DQo+ID4gQWRkaW5nIFlpcGVuZywgbWFpbnRhaW5lciBmb3IgaGFzaCBs
aWJyYXJ5DQo+ID4NCj4gPiA+DQo+ID4gPiBUaGFua3MgZm9yIHlvdXIgcmVwbHkuDQo+ID4gPg0K
PiA+ID4gVXNpbmcgcnRlX2hhc2ggaXRlcmF0ZSBhbmQgZGVsZXRlIGtleXMgaXMgdG8gZnJlZSB0
aGUgcmVsYXRlZCBkYXRhJ3MNCj4gbWVtb3J5Lg0KPiA+ID4gVGhlcmUgYXJlIHR3byByZWFzb25z
IHdoeSBydGVfaGFzaF9yZXNldCgpIGlzIG5vdCBwcm9wZXJseToNCj4gPiA+IDEpICB0aGUgcmVz
ZXQgZnVuY3Rpb24ganVzdCBjbGVhciBhbGwga2V5cywgdGhlIGtleSdzIHJlbGF0ZWQgZGF0YSBh
cmUgbGVha2VkLg0KPiA+IFRoYXQgaXMgYSBnb29kIHBvaW50LiBJIHRoaW5rIHRoaXMgc2hvdWxk
IGJlIGRvY3VtZW50ZWQgaW4gdGhlIEFQSS4NCj4gPg0KPiA+ID4gMikgIEluIHNvbWUgY2FzZXMs
IEkgZG9uJ3QgbmVlZCBkZWxldGUgYWxsIGtleXMuIEp1c3Qgc29tZSBzZWxlY3RlZA0KPiA+ID4g
a2V5cyBhbmQgZGF0YSBhcmUgZGVsZXRlZCBhbmQgcmVsZWFzZWQuDQo+ID4gSSB1bmRlcnN0YW5k
IHRoZSBwcm9ibGVtIHlvdSBoYXZlIHBvaW50ZWQgb3V0IGFuZCB1bmRlcnN0YW5kIGhvdyB0bw0K
PiA+IHJlcHJvZHVjZSBpdC4gQnV0LCB0aGUgdXNlIGNhc2UgaXMgbm90IGNsZWFyIHRvIG1lLiBD
YW4geW91IHBsZWFzZQ0KPiA+IGV4cGxhaW4gdGhlIHVzZSBjYXNlPw0KPiBbTGlsaWp1biAoSmVy
cnkpXQ0KPiANCj4gQXMgeW91IGtub3csIHRoZSBkcGRrIHJ0ZV9oYXNoIHVzZSBhIGZpeGVkIHNp
emUgdGFibGUgdG8gc3RvcmUgYWxsIGtleXMvZGF0YXMuDQo+IFRoZSBtZW1vcnkgdXNlZCBieSBo
YXNoIHRhYmxlIGlzIHJlbGF0ZWQgd2l0aCB0aGlzIGZpeGVkIHNpemUuDQo+IEluIG15IGNhc2Us
IG5vcm1hbGx5IHRoZSBjb3VudCBvZiBrZXlzIGlzIGFib3V0IDEwMCwwMDAgYnV0IHNvbWV0aW1l
cyB0aGUNCj4gY291bnQgbWF5IGJ1cnN0IHVwIHRvIDMwLDAwMCwwMDAuDQo+IEluIG9yZGVyIHRv
IHNhdmUgbWVtb3J5IHVzYWdlLCBJIGNyZWF0ZSBhIHNtYWxsIGhhc2ggdGFibGUgd2l0aCAxMDAs
MDAwIHNpemUNCj4gYW5kIHJlcGxhY2UgdG8gYSBiaWdnZXIgb25lIHdpdGggMzAsMDAwLDAwMCBz
aXplIHdoZW4gdGhlcmUgYXJlIG1vcmUga2V5cyB0bw0KPiBiZSBzdG9yZWQuIEFsc28gd2hlbiB0
aGUga2V5J3MgY291bnQgcmVkdWNlZCB0byBsZXNzIHRoYW4gMTAwLDAwMCwgSSByZXBsYWNlDQo+
IHRoZSBoYXNoIHRhYmxlIHdpdGggYSBzbWFsbCBvbmUgdG8gc2F2ZSB0aGUgbWVtb3J5Lg0KVGhh
bmsgeW91IGZvciBleHBsYWluaW5nIHRoaXMuIFdoYXQgaGFwcGVucyB0byB0aGUgcmVhZGVyIHdo
ZW4geW91IGFyZSBkZWxldGluZyBmcm9tIG9sZCB0YWJsZSBhbmQgaW5zZXJ0aW5nIGluIHRoZSBu
ZXcgb25lPyBXaGljaCB0YWJsZSBkb2VzIHRoZSByZWFkZXIgbG9va3VwIGZyb20/DQoNCj4gDQo+
ID4NCj4gPiA+DQo+ID4gPiBKZXJyeS4NCj4gPiA+DQo+ID4gPiAtLS0tLemCruS7tuWOn+S7ti0t
LS0tDQo+ID4gPiDlj5Hku7bkuro6IEhvbm5hcHBhIE5hZ2FyYWhhbGxpIFttYWlsdG86SG9ubmFw
cGEuTmFnYXJhaGFsbGlAYXJtLmNvbV0NCj4gPiA+IOWPkemAgeaXtumXtDogMjAyMOW5tDTmnIgy
OeaXpSA0OjQ2DQo+ID4gPiDmlLbku7bkuro6IExpbGlqdW4gKEplcnJ5KSA8amVycnkubGlsaWp1
bkBodWF3ZWkuY29tPjsgJ2RldkBkcGRrLm9yZycNCj4gPiA+IDxkZXZAZHBkay5vcmc+DQo+ID4g
PiDmioTpgIE6IHdhbmd5dW5qaWFuIDx3YW5neXVuamlhbkBodWF3ZWkuY29tPjsgeHVkaW5na2UN
Cj4gPiA+IDx4dWRpbmdrZUBodWF3ZWkuY29tPjsgJ3N0YWJsZUBkcGRrLm9yZycgPHN0YWJsZUBk
cGRrLm9yZz47IG5kDQo+ID4gPiA8bmRAYXJtLmNvbT47IEhvbm5hcHBhIE5hZ2FyYWhhbGxpDQo+
IDxIb25uYXBwYS5OYWdhcmFoYWxsaUBhcm0uY29tPjsNCj4gPiBuZA0KPiA+ID4gPG5kQGFybS5j
b20+DQo+ID4gPiDkuLvpopg6IFJFOiBbZHBkay1kZXZdIFtQQVRDSF0gbGliL2xpYnJ0ZV9oYXNo
OiBhZGQNCj4gPiA+IHJ0ZV9oYXNoX2RlbF9rZXlfZml4ZWQgd2l0aG91dCBjb21wYWN0DQo+ID4g
Pg0KPiA+ID4gPHNuaXA+DQo+ID4gPg0KPiA+ID4gSGkgSmVycnksDQo+ID4gPiAJRmV3IHF1ZXN0
aW9ucyBpbmxpbmUuDQo+ID4gPg0KPiA+ID4gPiBTdWJqZWN0OiBbZHBkay1kZXZdIFtQQVRDSF0g
bGliL2xpYnJ0ZV9oYXNoOiBhZGQNCj4gPiA+ID4gcnRlX2hhc2hfZGVsX2tleV9maXhlZCB3aXRo
b3V0IGNvbXBhY3QNCj4gPiA+ID4NCj4gPiA+ID4gVGhlIGtleXMgaWR4IGFyZSBzdG9yZWQgaW4g
cnRlX2hhc2ggbWFpbiBidWNrZXQga2V5IHNsb3RzIGFuZA0KPiA+ID4gPiBleHRlbmQgYnVja2V0
IGtleSBzdG90cy4NCj4gPiA+ID4gV2UgaXRlcmF0ZSBldmVyeSBubyBlbXB0eSBLZXlzIGluIGgt
PmJ1Y2tldHMgYW5kIGgtPmJ1Y2tldHNfZXh0DQo+ID4gPiA+IGZyb20gc3RhcnQgdG8gbGFzdC4N
Cj4gPiA+ID4gV2hlbiBkZWxldGluZyBrZXlzIHRoZSBmdW5jdGlvbiBfX3J0ZV9oYXNoX2NvbXBh
Y3RfbGwoKSBtYXkgbW92ZQ0KPiA+ID4gPiBsYXN0X2JrdCdzIGtleSB0byBwcmV2aW91cyBidWNr
ZXQgaW4gb3JkZXIgdG8gY29tcGFjdCBleHRlbmQgYnVja2V0IGxpc3QuDQo+ID4gPiA+IElmIHRo
ZSBwcmV2aW91cyBidWNrZXQgaGFzIGJlZW4gaXRlcmF0ZWQsIHRoZSBtb3ZlZCBrZXkgbWF5IGJl
DQo+ID4gPiA+IG1pc3NlZCBmb3IgdXNlcnMuDQo+ID4gPiA+IFRoZW4gdGhvc2UgbWlzc2VkIGtl
eXMgYXJlIGxlYWtlZCBhbmQgcnRlX2hhc2ggdGFibGUgY2FuJ3QgYmUgY2xlYW51cC4NCj4gPiA+
ID4gU28gd2UgYWRkIGEgbmV3IEFQSSBydGVfaGFzaF9kZWxfa2V5X2ZpeGVkKCkgdXNlZCBpbiBp
dGVyYXRlIGxvb3ANCj4gPiA+ID4gdG8gYXZvaWQgdGhpcyBidWdzLg0KPiA+ID4gPg0KPiA+ID4g
PiAtLS0NCj4gPiA+ID4gIGxpYi9saWJydGVfaGFzaC9ydGVfY3Vja29vX2hhc2guYyAgICB8IDE5
ICsrKysrKysrKysrKysrLS0tLS0NCj4gPiA+ID4gIGxpYi9saWJydGVfaGFzaC9ydGVfaGFzaC5o
ICAgICAgICAgICB8ICA1ICsrKysrDQo+ID4gPiA+ICBsaWIvbGlicnRlX2hhc2gvcnRlX2hhc2hf
dmVyc2lvbi5tYXAgfCAgMSArDQo+ID4gPiA+ICAzIGZpbGVzIGNoYW5nZWQsIDIwIGluc2VydGlv
bnMoKyksIDUgZGVsZXRpb25zKC0pDQo+ID4gPiA+DQo+ID4gPiA+IGRpZmYgLS1naXQgYS9saWIv
bGlicnRlX2hhc2gvcnRlX2N1Y2tvb19oYXNoLmMNCj4gPiA+ID4gYi9saWIvbGlicnRlX2hhc2gv
cnRlX2N1Y2tvb19oYXNoLmMNCj4gPiA+ID4gaW5kZXggYjUyNjMwYi4uMmRhM2MxZCAxMDA2NDQN
Cj4gPiA+ID4gLS0tIGEvbGliL2xpYnJ0ZV9oYXNoL3J0ZV9jdWNrb29faGFzaC5jDQo+ID4gPiA+
ICsrKyBiL2xpYi9saWJydGVfaGFzaC9ydGVfY3Vja29vX2hhc2guYw0KPiA+ID4gPiBAQCAtMTUy
Myw3ICsxNTIzLDcgQEAgc2VhcmNoX2FuZF9yZW1vdmUoY29uc3Qgc3RydWN0IHJ0ZV9oYXNoICpo
LA0KPiA+ID4gPiBjb25zdCB2b2lkICprZXksDQo+ID4gPiA+DQo+ID4gPiA+ICBzdGF0aWMgaW5s
aW5lIGludDMyX3QNCj4gPiA+ID4gIF9fcnRlX2hhc2hfZGVsX2tleV93aXRoX2hhc2goY29uc3Qg
c3RydWN0IHJ0ZV9oYXNoICpoLCBjb25zdCB2b2lkDQo+ID4gKmtleSwNCj4gPiA+ID4gLQkJCQkJ
CWhhc2hfc2lnX3Qgc2lnKQ0KPiA+ID4gPiArCQkJCQkJaGFzaF9zaWdfdCBzaWcsIHVpbnQ4X3QN
Cj4gPiA+ID4gY29tcGFjdCkNCj4gPiA+ID4gIHsNCj4gPiA+ID4gIAl1aW50MzJfdCBwcmltX2J1
Y2tldF9pZHgsIHNlY19idWNrZXRfaWR4Ow0KPiA+ID4gPiAgCXN0cnVjdCBydGVfaGFzaF9idWNr
ZXQgKnByaW1fYmt0LCAqc2VjX2JrdCwgKnByZXZfYmt0LA0KPiA+ID4gPiAqbGFzdF9ia3Q7DQo+
ID4gPiBAQA0KPiA+ID4gPiAtMTU0MSw3ICsxNTQxLDggQEAgX19ydGVfaGFzaF9kZWxfa2V5X3dp
dGhfaGFzaChjb25zdCBzdHJ1Y3QNCj4gPiA+ID4gcnRlX2hhc2ggKmgsIGNvbnN0IHZvaWQgKmtl
eSwNCj4gPiA+ID4gIAkvKiBsb29rIGZvciBrZXkgaW4gcHJpbWFyeSBidWNrZXQgKi8NCj4gPiA+
ID4gIAlyZXQgPSBzZWFyY2hfYW5kX3JlbW92ZShoLCBrZXksIHByaW1fYmt0LCBzaG9ydF9zaWcs
ICZwb3MpOw0KPiA+ID4gPiAgCWlmIChyZXQgIT0gLTEpIHsNCj4gPiA+ID4gLQkJX19ydGVfaGFz
aF9jb21wYWN0X2xsKGgsIHByaW1fYmt0LCBwb3MpOw0KPiA+ID4gPiArCQlpZiAoY29tcGFjdCkN
Cj4gPiA+ID4gKwkJCV9fcnRlX2hhc2hfY29tcGFjdF9sbChoLCBwcmltX2JrdCwgcG9zKTsNCj4g
PiA+ID4gIAkJbGFzdF9ia3QgPSBwcmltX2JrdC0+bmV4dDsNCj4gPiA+ID4gIAkJcHJldl9ia3Qg
PSBwcmltX2JrdDsNCj4gPiA+ID4gIAkJZ290byByZXR1cm5fYmt0Ow0KPiA+ID4gPiBAQCAtMTU1
Myw3ICsxNTU0LDggQEAgX19ydGVfaGFzaF9kZWxfa2V5X3dpdGhfaGFzaChjb25zdCBzdHJ1Y3QN
Cj4gPiA+ID4gcnRlX2hhc2ggKmgsIGNvbnN0IHZvaWQgKmtleSwNCj4gPiA+ID4gIAlGT1JfRUFD
SF9CVUNLRVQoY3VyX2JrdCwgc2VjX2JrdCkgew0KPiA+ID4gPiAgCQlyZXQgPSBzZWFyY2hfYW5k
X3JlbW92ZShoLCBrZXksIGN1cl9ia3QsIHNob3J0X3NpZywgJnBvcyk7DQo+ID4gPiA+ICAJCWlm
IChyZXQgIT0gLTEpIHsNCj4gPiA+ID4gLQkJCV9fcnRlX2hhc2hfY29tcGFjdF9sbChoLCBjdXJf
Ymt0LCBwb3MpOw0KPiA+ID4gPiArCQkJaWYgKGNvbXBhY3QpDQo+ID4gPiA+ICsJCQkJX19ydGVf
aGFzaF9jb21wYWN0X2xsKGgsIGN1cl9ia3QsIHBvcyk7DQo+ID4gPiA+ICAJCQlsYXN0X2JrdCA9
IHNlY19ia3QtPm5leHQ7DQo+ID4gPiA+ICAJCQlwcmV2X2JrdCA9IHNlY19ia3Q7DQo+ID4gPiA+
ICAJCQlnb3RvIHJldHVybl9ia3Q7DQo+ID4gPiA+IEBAIC0xNjA3LDE0ICsxNjA5LDIxIEBAIHJ0
ZV9oYXNoX2RlbF9rZXlfd2l0aF9oYXNoKGNvbnN0IHN0cnVjdA0KPiA+ID4gPiBydGVfaGFzaCAq
aCwNCj4gPiA+ID4gIAkJCWNvbnN0IHZvaWQgKmtleSwgaGFzaF9zaWdfdCBzaWcpICB7DQo+ID4g
PiA+ICAJUkVUVVJOX0lGX1RSVUUoKChoID09IE5VTEwpIHx8IChrZXkgPT0gTlVMTCkpLCAtRUlO
VkFMKTsNCj4gPiA+ID4gLQlyZXR1cm4gX19ydGVfaGFzaF9kZWxfa2V5X3dpdGhfaGFzaChoLCBr
ZXksIHNpZyk7DQo+ID4gPiA+ICsJcmV0dXJuIF9fcnRlX2hhc2hfZGVsX2tleV93aXRoX2hhc2go
aCwga2V5LCBzaWcsIDEpOw0KPiA+ID4gPiAgfQ0KPiA+ID4gPg0KPiA+ID4gPiAgaW50MzJfdA0K
PiA+ID4gPiAgcnRlX2hhc2hfZGVsX2tleShjb25zdCBzdHJ1Y3QgcnRlX2hhc2ggKmgsIGNvbnN0
IHZvaWQgKmtleSkgIHsNCj4gPiA+ID4gIAlSRVRVUk5fSUZfVFJVRSgoKGggPT0gTlVMTCkgfHwg
KGtleSA9PSBOVUxMKSksIC1FSU5WQUwpOw0KPiA+ID4gPiAtCXJldHVybiBfX3J0ZV9oYXNoX2Rl
bF9rZXlfd2l0aF9oYXNoKGgsIGtleSwgcnRlX2hhc2hfaGFzaChoLA0KPiA+IGtleSkpOw0KPiA+
ID4gPiArCXJldHVybiBfX3J0ZV9oYXNoX2RlbF9rZXlfd2l0aF9oYXNoKGgsIGtleSwgcnRlX2hh
c2hfaGFzaChoLA0KPiA+IGtleSksDQo+ID4gPiA+IDEpOw0KPiA+ID4gPiArfQ0KPiA+ID4gPiAr
DQo+ID4gPiA+ICtpbnQzMl90DQo+ID4gPiA+ICtydGVfaGFzaF9kZWxfa2V5X2ZpeGVkKGNvbnN0
IHN0cnVjdCBydGVfaGFzaCAqaCwgY29uc3Qgdm9pZCAqa2V5KSB7DQo+ID4gPiA+ICsJUkVUVVJO
X0lGX1RSVUUoKChoID09IE5VTEwpIHx8IChrZXkgPT0gTlVMTCkpLCAtRUlOVkFMKTsNCj4gPiA+
ID4gKwlyZXR1cm4gX19ydGVfaGFzaF9kZWxfa2V5X3dpdGhfaGFzaChoLCBrZXksIHJ0ZV9oYXNo
X2hhc2goaCwNCj4gPiBrZXkpLA0KPiA+ID4gPiAwKTsNCj4gPiA+ID4gIH0NCj4gPiA+ID4NCj4g
PiA+ID4gIGludA0KPiA+ID4gPiBkaWZmIC0tZ2l0IGEvbGliL2xpYnJ0ZV9oYXNoL3J0ZV9oYXNo
LmgNCj4gPiA+ID4gYi9saWIvbGlicnRlX2hhc2gvcnRlX2hhc2guaCBpbmRleCBlY2ViMzY1Li45
YjcxZDhhIDEwMDY0NA0KPiA+ID4gPiAtLS0gYS9saWIvbGlicnRlX2hhc2gvcnRlX2hhc2guaA0K
PiA+ID4gPiArKysgYi9saWIvbGlicnRlX2hhc2gvcnRlX2hhc2guaA0KPiA+ID4gPiBAQCAtMjk3
LDYgKzI5NywxMSBAQCBydGVfaGFzaF9hZGRfa2V5X3dpdGhfaGFzaChjb25zdCBzdHJ1Y3QNCj4g
PiA+IHJ0ZV9oYXNoDQo+ID4gPiA+ICpoLCBjb25zdCB2b2lkICprZXksIGhhc2hfc2lnX3QgIGlu
dDMyX3QgIHJ0ZV9oYXNoX2RlbF9rZXkoY29uc3QNCj4gPiA+ID4gc3RydWN0IHJ0ZV9oYXNoICpo
LCBjb25zdCB2b2lkICprZXkpOw0KPiA+ID4gPg0KPiA+ID4gPiArDQo+ID4gPiA+ICsvKiBmb3Ig
d2l0aG91dCBjb21wYWN0ICovDQo+ID4gPiA+ICtpbnQzMl90DQo+ID4gPiA+ICtydGVfaGFzaF9k
ZWxfa2V5X2ZpeGVkKGNvbnN0IHN0cnVjdCBydGVfaGFzaCAqaCwgY29uc3Qgdm9pZA0KPiA+ID4g
PiArKmtleSk7DQo+ID4gPiA+ICsNCj4gPiA+ID4gIC8qKg0KPiA+ID4gPiAgICogUmVtb3ZlIGEg
a2V5IGZyb20gYW4gZXhpc3RpbmcgaGFzaCB0YWJsZS4NCj4gPiA+ID4gICAqIFRoaXMgb3BlcmF0
aW9uIGlzIG5vdCBtdWx0aS10aHJlYWQgc2FmZSBkaWZmIC0tZ2l0DQo+ID4gPiA+IGEvbGliL2xp
YnJ0ZV9oYXNoL3J0ZV9oYXNoX3ZlcnNpb24ubWFwDQo+ID4gPiA+IGIvbGliL2xpYnJ0ZV9oYXNo
L3J0ZV9oYXNoX3ZlcnNpb24ubWFwDQo+ID4gPiA+IGluZGV4IDMwY2MwODYuLjE5NDFkMTcgMTAw
NjQ0DQo+ID4gPiA+IC0tLSBhL2xpYi9saWJydGVfaGFzaC9ydGVfaGFzaF92ZXJzaW9uLm1hcA0K
PiA+ID4gPiArKysgYi9saWIvbGlicnRlX2hhc2gvcnRlX2hhc2hfdmVyc2lvbi5tYXANCj4gPiA+
ID4gQEAgLTExLDYgKzExLDcgQEAgRFBES18yMC4wIHsNCj4gPiA+ID4gIAlydGVfaGFzaF9jb3Vu
dDsNCj4gPiA+ID4gIAlydGVfaGFzaF9jcmVhdGU7DQo+ID4gPiA+ICAJcnRlX2hhc2hfZGVsX2tl
eTsNCj4gPiA+ID4gKwlydGVfaGFzaF9kZWxfa2V5X2ZpeGVkOw0KPiA+ID4gPiAgCXJ0ZV9oYXNo
X2RlbF9rZXlfd2l0aF9oYXNoOw0KPiA+ID4gPiAgCXJ0ZV9oYXNoX2ZpbmRfZXhpc3Rpbmc7DQo+
ID4gPiA+ICAJcnRlX2hhc2hfZnJlZTsNCj4gPiA+ID4gLS0NCj4gPiA+ID4gMi4xOS4xDQo+ID4g
PiA+DQo+ID4gPiA+IC0tLS0t6YKu5Lu25Y6f5Lu2LS0tLS0NCj4gPiA+ID4g5Y+R5Lu25Lq6OiBM
aWxpanVuIChKZXJyeSkNCj4gPiA+ID4g5Y+R6YCB5pe26Ze0OiAyMDIw5bm0NOaciDE45pelIDE4
OjAwDQo+ID4gPiA+IOaUtuS7tuS6ujogJ2RldkBkcGRrLm9yZycgPGRldkBkcGRrLm9yZz47ICdz
dGFibGVAZHBkay5vcmcnDQo+ID4gPiA+IDxzdGFibGVAZHBkay5vcmc+DQo+ID4gPiA+IOS4u+mi
mDogcnRlX2hhc2ggYnVnOiBjYW4ndCBpdGVyYXRlIGFsbCBlbnRyaWVzIHdoZW4gZGVsZXRpbmcg
a2V5cyBpbg0KPiA+ID4gPiBydGVfaGFzaCBpdGVyYXRlIGxvb3AuDQo+ID4gPiA+DQo+ID4gPiA+
IEhpIGFsbCwNCj4gPiA+ID4NCj4gPiA+ID4gICAgIEluIG15IHRlc3QsIGVudHJpZXMgY2FuJ3Qg
YmUgY2xlYW51cCBpbiBydGVfaGFzaCB0YWJsZSB3aGVuDQo+ID4gPiA+IGRlbGV0aW5nIGtleXMg
aW4gcnRlX2hhc2ggaXRlcmF0ZSBsb29wLiBUaGUgdGVzdCBzdGVwczoNCj4gPiA+ID4gICAgIDEu
ICBjcmVhdGUgYSBoYXNoIHRhYmxlIHRhYmxlMSB3aXRoIGxpbWl0IDMwMDAwLCBleHQgYnVja2V0
DQo+ID4gPiA+IGVuYWJsZWQsICBhbmQgaW5zZXJ0IDMwMDAwIGVudHJpZXMgaW50byB0aGlzIGhh
c2ggdGFibGUuDQo+ID4gPiA+ICAgICAyLiAgY3JlYXRlIGEgbGFyZ2VyIGhhc2ggdGFibGUgdGFi
bGUyIHdpdGggbGltaXQgNjAwMDAsICwgZXh0DQo+ID4gPiA+IGJ1Y2tldA0KPiA+ID4gZW5hYmxl
ZC4NCj4gPiA+ID4gICAgIDMuICBpdGVyYXRlIGFsbCBlbnRyaWVzIG9mIHRhYmxlMSBhbmQgaW5z
ZXJ0IHRoZW0gdG8gdGhlIHRhYmxlMi4NCj4gPiA+ID4gSW5zZXJ0IG5ldw0KPiA+ID4gPiAxMDAw
MCBlbnRyaWVzIHRvIHRoaXMgdGFibGUyLg0KPiA+ID4gPiAgICAgNC4gIFRoZW4gZmx1c2ggYWxs
IGVudHJpZXMgZnJvbSB0YWJsZTIgYnkgZGVsZXRpbmcga2V5cyBpbg0KPiA+ID4gPiBydGVfaGFz
aCBpdGVyYXRlIGxvb3AuIEJ1dCB0aGVyZSBhcmUgc3RpbGwgc29tZSBrZXlzIGxlYWtlZCBpbiB0
YWJsZTIuDQo+ID4gPiBJcyB0aGVyZSBhbnkgcmVhc29uIGZvciBmbHVzaGluZyB0YWJsZTIgaW4g
dGhpcyBtYW5uZXI/DQo+ID4gPiBJcyBpdCBwb3NzaWJsZSB0byB1c2UgJ3J0ZV9oYXNoX3Jlc2V0
JyBpbnN0ZWFkPw0KPiA+ID4NCj4gPiA+ID4NCj4gPiA+ID4gICAgIEZyb20gbXkgYW5hbHlzaXMs
IHRoZSBrZXlzIGlkeCBhcmUgc3RvcmVkIGluIHJ0ZV9oYXNoIG1haW4NCj4gPiA+ID4gYnVja2V0
IGtleSBzbG90cyBhbmQgZXh0ZW5kIGJ1Y2tldCBrZXkgc3RvdHMuDQo+ID4gPiA+ICAgICBXZSBp
dGVyYXRlIGV2ZXJ5IG5vIGVtcHR5IEtleXMgaW4gaC0+YnVja2V0cyBhbmQNCj4gPiA+ID4gaC0+
YnVja2V0c19leHQgZnJvbSBzdGFydCB0byBsYXN0Lg0KPiA+ID4gPiAgICAgV2hlbiBkZWxldGlu
ZyBrZXlzIHRoZSBmdW5jdGlvbiBfX3J0ZV9oYXNoX2NvbXBhY3RfbGwoKSBtYXkNCj4gPiA+ID4g
bW92ZSBsYXN0X2JrdCdzIGtleSB0byBwcmV2aW91cyBidWNrZXQgaW4gb3JkZXIgdG8gY29tcGFj
dCBleHRlbmQNCj4gYnVja2V0IGxpc3QuDQo+ID4gPiA+ICAgICBJZiB0aGUgcHJldmlvdXMgYnVj
a2V0IGhhcyBiZWVuIGl0ZXJhdGVkLCB0aGUgbW92ZWQga2V5IG1heSBiZQ0KPiA+ID4gPiBtaXNz
ZWQgZm9yIHVzZXJzLg0KPiA+ID4gPiAgICAgVGhlbiB0aG9zZSBtaXNzZWQga2V5cyBhcmUgbGVh
a2VkIGFuZCBydGVfaGFzaCB0YWJsZSBjYW4ndCBiZQ0KPiBjbGVhbnVwLg0KPiA+ID4gPg0KPiA+
ID4gPiAgICAgTm93IEkgcmV0cnkgdGhlIGl0ZXJhdGUgYW5kIGRlbGV0ZSBrZXlzLCB0aGF0IGNh
biBhdm9pZCB0aGlzIGJ1Zy4NCj4gPiA+ID4NCj4gPiA+ID4gICAgIElzIHRoZXJlIGFueSBpZGVh
cyBvciBzb2x1dGlvbnMgb24gdGhpcyBidWc/ICAgVGhhbmtzLg0KPiA+ID4gPg0KPiA+ID4gPiBK
ZXJyeS4NCg==