From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124])
	by inbox.dpdk.org (Postfix) with ESMTP id 2BE2543A21;
	Wed, 31 Jan 2024 16:56:24 +0100 (CET)
Received: from mails.dpdk.org (localhost [127.0.0.1])
	by mails.dpdk.org (Postfix) with ESMTP id C30AA4026B;
	Wed, 31 Jan 2024 16:56:23 +0100 (CET)
Received: from NAM10-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam10on2068.outbound.protection.outlook.com [40.107.93.68])
 by mails.dpdk.org (Postfix) with ESMTP id 1EF7040269
 for <dev@dpdk.org>; Wed, 31 Jan 2024 16:56:22 +0100 (CET)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=VJT0ridIrxOU2PRdjpOM8OGl9a+uWHSyPYsfTcE+uMWt6uzLXFqbyLdLIARDrxtCudkbbLqePsXSz/mSGoaAQoKyv/PgTTdWhKKuKhFtwoU/HaGXOiUzuEKik6c347+iS9CueXqaEb3BAkh4Uv5qVAHRjWcgF9MM7Ia62DTkqR8EyQBu+z8hmdLYzoegbMuSwf/nfgcV1s7XwUdeBNFwZDuEhPM1Jij+7c0dnl+/j5Rdf+3hrhmw7SEbeVg2u8DEqMaEX1pc4GMo8DVx7JIUpuSwBIeqFxzg3EjLjuRlIghy+1eeXr6ZDg5dDjWtZJTUD+wlaWHJBfpVOoa2qPrwjA==
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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=zHQCCaeJ0o19+jCm7TMA1Kpp8r4QWH+R+kw2CIT8RqM=;
 b=ZwO2E4Ecf9VPQv0DpqaMRSjL6gouQAyn/n8pqv6zSncrvKq2kLOtw7BdWGF4AMbVaemlmEcgskren+yy0QmVyyfhk8jJFIWfy50G0IQx+9nCVeV06JEudfNsZ6Cxc6dpaExvJFn8mn1v6FrHT4bEe4ufPB+94VsGWTFJ4ygD0mNo5ROeC6hjVxgVXKbgUP61RNGNXpxrKnAf/pCii6MHfV7cC1IVxyvojNzEWF4Ri07JxvW1gMfk1jgk1D4IuNUxFqjLzwP7SYfI3Yu8dmuLkx87HrolD8Qik2eU51UDov5yZlZXOA9g3NHl3xFi9N6iCNeAuh3vyGXGGH5u6wCC9w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com;
 dkim=pass header.d=nvidia.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com;
 s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=zHQCCaeJ0o19+jCm7TMA1Kpp8r4QWH+R+kw2CIT8RqM=;
 b=kTS+rIeDIHTPkyhA5zVXf27G3PvVWvNv2dqgo+eYz6wvKs3fK07m+hQjhpIK57sdYHnYcf8BWzvApAPJNj1Y9BCTNcVnwAS/aNhu5ttoXdvXYQeIig+XP5fga8pf1541fCYS4KzjMk0d16OW0XRWArOlr5tT993D0nev3mgn0v3nmoKtWo0K5kjed+0ZsLtPPUbTzULC6RhrWLAm0dGDdb5Sur2dMXhbPGwtMc7Ced2K+nPPAn1Y3oG3EDvRLjq0DxmIGfr7KyBiqGwA04xbdGe4RLrE3pBViZ0xF91WlO6MPAX06/TIq2WxZNtC064q4qYLL5SzjcAzzS56NjyD6g==
Received: from MW2PR12MB4666.namprd12.prod.outlook.com (2603:10b6:302:13::22)
 by MW4PR12MB6803.namprd12.prod.outlook.com (2603:10b6:303:20e::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7228.34; Wed, 31 Jan
 2024 15:56:19 +0000
Received: from MW2PR12MB4666.namprd12.prod.outlook.com
 ([fe80::4b7d:c23d:42aa:3f9e]) by MW2PR12MB4666.namprd12.prod.outlook.com
 ([fe80::4b7d:c23d:42aa:3f9e%7]) with mapi id 15.20.7228.029; Wed, 31 Jan 2024
 15:56:19 +0000
From: Ori Kam <orika@nvidia.com>
To: Suanming Mou <suanmingm@nvidia.com>, Ferruh Yigit <ferruh.yigit@amd.com>, 
 Aman Singh <aman.deep.singh@intel.com>, Yuying Zhang
 <yuying.zhang@intel.com>, "NBU-Contact-Thomas Monjalon (EXTERNAL)"
 <thomas@monjalon.net>, Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
CC: "dev@dpdk.org" <dev@dpdk.org>
Subject: RE: [PATCH v3 2/3] ethdev: add compare item
Thread-Topic: [PATCH v3 2/3] ethdev: add compare item
Thread-Index: AQHaR5MtMzvaTjP4o02/zMw+SYvjsrDytboAgACa2YCAANoq4A==
Date: Wed, 31 Jan 2024 15:56:19 +0000
Message-ID: <MW2PR12MB4666946F55EB2C3A35DF23EAD67C2@MW2PR12MB4666.namprd12.prod.outlook.com>
References: <20231219013337.531548-1-suanmingm@nvidia.com>
 <20240115091318.1053433-1-suanmingm@nvidia.com>
 <20240115091318.1053433-3-suanmingm@nvidia.com>
 <2594409d-5c8d-4347-b724-eece2b775376@amd.com>
 <CO6PR12MB5396652563572C147D0BAF4AC17C2@CO6PR12MB5396.namprd12.prod.outlook.com>
In-Reply-To: <CO6PR12MB5396652563572C147D0BAF4AC17C2@CO6PR12MB5396.namprd12.prod.outlook.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
authentication-results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=nvidia.com;
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: MW2PR12MB4666:EE_|MW4PR12MB6803:EE_
x-ms-office365-filtering-correlation-id: 3209e850-fa91-43c9-0aa5-08dc22752a06
x-ld-processed: 43083d15-7273-40c1-b7db-39efd9ccc17a,ExtAddr
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 1tcdMU7FEKsddLewBIpkVL9kelYs9bk8sjGvh+CQJj+59KaEoAE4OIK9Zksm8b0wXuxukuTlpzvciG6hVHdLapqEZFdrdHqUZTRgDl4U+Mw3k/v+RKJEiLK1BusdwvZklXP/pQZxCpKnELJ2t+EIfOyyscmO8FovtTvlSaaI4g1WrGG2W7cBc5ZW4u65ODoCrHpF9UXd9RoOZQTCjCNWBuWAn0ok5wHJwHu5OfnkT0i+WuHLtS/f9nTGQCuWx68fLFCM4V0AUQ/5psEaBmPUsxa8K7S8HHhzb6tnqqmN8oganAdzvVrwdUA1HBo0JojJ1GM7QROe7nL5gxYV3qJNE61rwzzp6CQ83SmS4Go2p1kb/bbeWwukQp0c1lp8AMQNNyOsFp2zkWaJyDbu7g7LzkKiQEkPMLbjmPrBTJdMntqW0Lb0Y9kGzZqtGT8exxHaUh8oD01/D+BHZjnZLDTx4kT0P7YwQ+UdVch/pGiMcwihyu2AfExzfSwO7Sc9HNvOH9Yvl9LDXwy/ja8Xlr2BClZNMAJXaRzbxt8J6ouOaHGP9kyQJq0THAijosXlmdEsoamI0iQYKqSRKQG6icgp1jQtCMA7ALEdtsAEDV9bv+1+CL0qcBL3A+Jb6qpH7u1ZuXsYYcpDvYOWapXTBgm1i1+JpU/zwp00Bq29D8AbIi1CiPKrFwFhGh6cUfrtMKsw
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:MW2PR12MB4666.namprd12.prod.outlook.com; PTR:; CAT:NONE;
 SFS:(13230031)(366004)(346002)(376002)(39860400002)(396003)(136003)(230922051799003)(230273577357003)(230173577357003)(1800799012)(451199024)(186009)(64100799003)(2906002)(66556008)(5660300002)(86362001)(33656002)(38100700002)(478600001)(38070700009)(41300700001)(53546011)(6506007)(83380400001)(7696005)(9686003)(26005)(122000001)(71200400001)(8936002)(316002)(52536014)(4326008)(8676002)(66946007)(66446008)(64756008)(76116006)(110136005)(55016003)(66476007)(21314003);
 DIR:OUT; SFP:1101; 
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: =?utf-8?B?WXdHQkpERmU4aUt0YXQ0eDNTS3JWaU1EUUlNNUNsc1U5NzBrVEtuSlJSdHVv?=
 =?utf-8?B?MWo1Z1h6em9RZ1RQY3ZPRWRxQ0VFRis0Sm00eWlUK1R1ZFlGYnFmQjM0ZWRB?=
 =?utf-8?B?Z0JXdnR3TUlqV2VOQzQ5NnBUbkVGbHc2ZWxDNGdwaWhyVGxPeUIyRTB2UElY?=
 =?utf-8?B?cnluNE5tZ0RyNmI4dzZpa0JaU1BzSGtwVk1qZnphQmNueXBIQVFCTGVSb0li?=
 =?utf-8?B?d1YxaVlBOFBhdlNVY1B0NE9mazhpL1ZjYVRaWXA0Y2o2RzRFVUlHc3hOYVRx?=
 =?utf-8?B?Z0YrZ1k1akJCZCthWjZtSGxoU3UyNGlPRmtqUUpXc3V5dnpGd3BlL1NUVkhZ?=
 =?utf-8?B?MTR2TEg1MWxDelM4Mk95Y2t2KzNac2FCN3hzQ0Y2bEt1cXJrMkxYbk15QmZH?=
 =?utf-8?B?NkpBa21MVm91TkhYeGM0QVcyR3hiRlVZWnBFVVJnK0xDcVVXWG0xN1U4S0pQ?=
 =?utf-8?B?UXdYVWZDeDdWaUN0anFTTWhJcUcvUjNVcHZvQzI1WHVNbWZIdzYyanJ2OG9V?=
 =?utf-8?B?dDhGRzBmREs5Q3FWMDFudll4WXdFTW9pR2pxbG41bjRFV1F5aXNUajI1K1Ev?=
 =?utf-8?B?Zk9scUh6cExINlpja1B2WklsRmQ5STh0U21sblRmZjZhUVVEU2dYaEdFZVVq?=
 =?utf-8?B?WGEwUS9oZ0piK2ZBRHo0aTNoYlFnaWNjWldtbUhob0QvTzh3YnhRcTJrWFIz?=
 =?utf-8?B?Rm93R2wvcFVzdVJEZVpFL20xcWZLd295bGNiTmFab0JqOVZRTDA0ck9Eb2FB?=
 =?utf-8?B?cDdJSUY0a2lpd1VqUksvUGN3WUYwWmMxcUZmVERXUEp2dlJxVjhteFFkbzJm?=
 =?utf-8?B?RXo4azhBWjVnWXptOXV0QitubVZqVnlEMmJKWFY0N3ZZeU5Qb3d3VkpycjQz?=
 =?utf-8?B?aFA5Q2pSSWR3WGViODAzbEc0d1pkb3MrYUNPT2lpc0dYUzVudW0zeFlPOGp5?=
 =?utf-8?B?dmF1aERMcE42VElxUk8vK0pBY09MSXBibGFqaEFYQjc5c292aHg3TEkzOHlS?=
 =?utf-8?B?bWxGYXNOczRQZ0JOOUdTQzVTTWc3MlhocW1UcWUrMllvWHIvRGtDQ0lEZ0RE?=
 =?utf-8?B?VkxBSm5HU2phM0ZGUDJxWFc5aTJ6TU1RdlN2MHM3aXkwS2EwYmNXaDBaMkow?=
 =?utf-8?B?dkswMUovMDRqRlhzTERyK2p4c1NZMHo1ZTk5ODZPVFVRd3ROWHZ5a05yT2F4?=
 =?utf-8?B?U29iZVJxV1k5U01rYzIvRXMrd212QzYyL3NWQ1pNak1DUVEwaDhwaVJ1NmF3?=
 =?utf-8?B?cmZKQ1BPUUlmV1EreURaZDAxOFpDZjV2L1M5Q1gzRVdMQTFKZG9EbEplVW1S?=
 =?utf-8?B?dS9nOGNVUXd0MlBycktDTDROS21xa0I5V0EzK0R4akJKOGRlOHgzWEd5U0lt?=
 =?utf-8?B?UE45SjBqUlUwY0ZvTFdBVlRDT1F0ZCtUcll3VGxaWmF1RC9xMEJCd3l4cFpj?=
 =?utf-8?B?ZHBla1ArdjhsUUFPSFoyZkVSSmdjdW95bmxYVGtZVWtzS0ZleDVwNXBUcmVl?=
 =?utf-8?B?QUI4eDBWUE0wUUY1Y0xVNi8xY1YwRDVSUXRVS1F6NktTVk1zRGVHYS9STkUv?=
 =?utf-8?B?NGx3L0UxZnM3MUVzeTd2cGJVQ0tNRFNJaTE3ZEdhekU4V0ZiRWNoWFJZNVRJ?=
 =?utf-8?B?SXlDWWJJb0FvL1lhaWYrYndoakMra1RPRkpyeFRpTi9sNEp3LzZBbGlESTc2?=
 =?utf-8?B?cUdRTTZGUktvNHZPLzB4TXlUREZadmVnNktjT202cS9qdVhoZDNjQmtHbWwx?=
 =?utf-8?B?Z05kRXEzYVBzOVJsWEJiSDcxWS95TTZTUzNIZFZEZVBranNjR3hCTE5acFlI?=
 =?utf-8?B?dm53ZFpYejVQSXNNN2NxT0dPU0tud3ZnTGF6bm5wS05Kbi9OSGtJNm9Mc25S?=
 =?utf-8?B?NEpZek93TEV2WGtSdWtkQ0Z5NTVJWHdKeDhzUmxpT0Q5VTF0eDZjYUxMWmU1?=
 =?utf-8?B?WmVUbzg4T1ZXMUdSVWJVOVZoSlJXU3RTZUtoZllMVnpzTDN1aERPL0pYTFE1?=
 =?utf-8?B?VGI0c0NENm5sUTVuazFzVTA5SEpuK21PTjhRMTR6YmdzNDVTaDhLOXJBbEhT?=
 =?utf-8?B?NnBnVXBMMDRTTmRLZFRuSkM0cm56cUNKbTMzUE1OY2l6RmI4ZG1qU2k3cjhw?=
 =?utf-8?Q?8uOM=3D?=
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-OriginatorOrg: Nvidia.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: MW2PR12MB4666.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 3209e850-fa91-43c9-0aa5-08dc22752a06
X-MS-Exchange-CrossTenant-originalarrivaltime: 31 Jan 2024 15:56:19.0769 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 43083d15-7273-40c1-b7db-39efd9ccc17a
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: y2ORXeB7dQkIgFJI6+Q4VKAxs51ZnGLr8xvvX3E9L//U3QHD3Y4VG6va4UEW5m1rDAY+lNBsdXkL+OI0fnzwRA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR12MB6803
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.29
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

SGkNCg0KPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBTdWFubWluZyBNb3Ug
PHN1YW5taW5nbUBudmlkaWEuY29tPg0KPiBTZW50OiBXZWRuZXNkYXksIEphbnVhcnkgMzEsIDIw
MjQgNDo0OCBBTQ0KPiANCj4gSGksDQo+IA0KPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0t
DQo+ID4gRnJvbTogRmVycnVoIFlpZ2l0IDxmZXJydWgueWlnaXRAYW1kLmNvbT4NCj4gPiBTZW50
OiBXZWRuZXNkYXksIEphbnVhcnkgMzEsIDIwMjQgMTozNCBBTQ0KPiA+IFRvOiBTdWFubWluZyBN
b3UgPHN1YW5taW5nbUBudmlkaWEuY29tPjsgT3JpIEthbQ0KPiA8b3Jpa2FAbnZpZGlhLmNvbT47
DQo+ID4gQW1hbiBTaW5naCA8YW1hbi5kZWVwLnNpbmdoQGludGVsLmNvbT47IFl1eWluZyBaaGFu
Zw0KPiA+IDx5dXlpbmcuemhhbmdAaW50ZWwuY29tPjsgTkJVLUNvbnRhY3QtVGhvbWFzIE1vbmph
bG9uIChFWFRFUk5BTCkNCj4gPiA8dGhvbWFzQG1vbmphbG9uLm5ldD47IEFuZHJldyBSeWJjaGVu
a28NCj4gPiA8YW5kcmV3LnJ5YmNoZW5rb0Bva3RldGxhYnMucnU+DQo+ID4gQ2M6IGRldkBkcGRr
Lm9yZw0KPiA+IFN1YmplY3Q6IFJlOiBbUEFUQ0ggdjMgMi8zXSBldGhkZXY6IGFkZCBjb21wYXJl
IGl0ZW0NCj4gPg0KPiA+IE9uIDEvMTUvMjAyNCA5OjEzIEFNLCBTdWFubWluZyBNb3Ugd3JvdGU6
DQo+ID4gPiBUaGUgbmV3IGl0ZW0gdHlwZSBpcyBhZGRlZCBmb3IgdGhlIGNhc2UgdXNlciB3YW50
cyB0byBtYXRjaCB0cmFmZmljDQo+ID4gPiBiYXNlZCBvbiBwYWNrZXQgZmllbGQgY29tcGFyZSBy
ZXN1bHQgd2l0aCBvdGhlciBmaWVsZHMgb3IgaW1tZWRpYXRlDQo+ID4gPiB2YWx1ZS4NCj4gPiA+
DQo+ID4gPiBlLmcuIHRha2UgYWR2YW50YWdlIHRoZSBjb21wYXJlIGl0ZW0gdXNlciB3aWxsIGJl
IGFibGUgdG8gYWNjdW11bGF0ZSBhDQo+ID4gPiBJUHY0L1RDUCBwYWNrZXQncyBUQ1AgZGF0YV9v
ZmZzZXQgYW5kIElQdjQgSUhMIGZpZWxkIHRvIGEgdGFnDQo+ID4gPiByZWdpc3RlciwgdGhlbiBj
b21wYXJlIHRoZSB0YWcgcmVnaXN0ZXIgd2l0aCBJUHY0IGhlYWRlciB0b3RhbCBsZW5ndGgNCj4g
PiA+IHRvIHVuZGVyc3RhbmQgdGhlIHBhY2tldCBoYXMgcGF5bG9hZCBvciBub3QuDQo+ID4gPg0K
PiA+DQo+ID4gYWNrLCBhYm92ZSBzYW1wbGUgbWFrZXMgaXQgZWFzaWVyIHRvIHVuZGVyc3RhbmQu
DQo+ID4NCj4gPiBUaGlzIHBhdGNoIGlzIGFkZGluZyB0ZXN0cG1kIGNvbW1hbmRzLCBjYW4geW91
IHBsZWFzZSBwcm92aWRlIHNvbWUNCj4gc2FtcGxlDQo+ID4gY29tbWFuZHMgaW4gY29tbWl0IGxv
Zz8NCj4gPiBUaGUgbW9yZSBzYW1wbGVzIGFyZSBiZXR0ZXIsIGFzIGZhciBhcyBJIHJlbWVtYmVy
IHRoZXJlIHdhcyBhIHRlc3RwbWQNCj4gPiBkb2N1bWVudGF0aW9uIHRoYXQgZG9jdW1lbnRzIHRo
ZSBzYW1wbGUgdXNhZ2VzLCBjYW4geW91IHBsZWFzZSBjaGVjaw0KPiBmb3IgaXQ/DQoNCltTbmlw
IC4uXQ0KDQo+ID4NCj4gPiA+ICsvKioNCj4gPiA+ICsgKiBAd2FybmluZw0KPiA+ID4gKyAqIEBi
IEVYUEVSSU1FTlRBTDogdGhpcyBzdHJ1Y3R1cmUgbWF5IGNoYW5nZSB3aXRob3V0IHByaW9yIG5v
dGljZQ0KPiA+ID4gKyAqDQo+ID4gPiArICogRmllbGQgZGVzY3JpcHRpb24gZm9yIHBhY2tldCBm
aWVsZC4NCj4gPiA+ICsgKi8NCj4gPiA+ICtzdHJ1Y3QgcnRlX2Zsb3dfZmllbGRfZGF0YSB7DQo+
ID4gPiArCWVudW0gcnRlX2Zsb3dfZmllbGRfaWQgZmllbGQ7IC8qKjwgRmllbGQgb3IgbWVtb3J5
IHR5cGUgSUQuICovDQo+ID4gPiArCXVuaW9uIHsNCj4gPiA+ICsJCXN0cnVjdCB7DQo+ID4gPiAr
CQkJLyoqIEVuY2Fwc3VsYXRpb24gbGV2ZWwgYW5kIHRhZyBpbmRleCBvciBmbGV4IGl0ZW0NCj4g
PiBoYW5kbGUuICovDQo+ID4gPiArCQkJdW5pb24gew0KPiA+ID4gKwkJCQlzdHJ1Y3Qgew0KPiA+
ID4gKwkJCQkJLyoqDQo+ID4gPiArCQkJCQkgKiBQYWNrZXQgZW5jYXBzdWxhdGlvbiBsZXZlbA0K
PiBjb250YWluaW5nDQo+ID4gPiArCQkJCQkgKiB0aGUgZmllbGQgdG8gbW9kaWZ5Lg0KPiA+ID4g
KwkJCQkJICoNCj4gPiA+ICsJCQkJCSAqIC0gQHAgMCByZXF1ZXN0cyB0aGUgZGVmYXVsdA0KPiBi
ZWhhdmlvci4NCj4gPiA+ICsJCQkJCSAqICAgRGVwZW5kaW5nIG9uIHRoZSBwYWNrZXQgdHlwZSwg
aXQNCj4gPiA+ICsJCQkJCSAqICAgY2FuIG1lYW4gb3V0ZXJtb3N0LCBpbm5lcm1vc3QNCj4gb3IN
Cj4gPiA+ICsJCQkJCSAqICAgYW55dGhpbmcgaW4gYmV0d2Vlbi4NCj4gPiA+ICsJCQkJCSAqDQo+
ID4gPiArCQkJCQkgKiAgIEl0IGJhc2ljYWxseSBzdGFuZHMgZm9yIHRoZQ0KPiA+ID4gKwkJCQkJ
ICogICBpbm5lcm1vc3QgZW5jYXBzdWxhdGlvbiBsZXZlbC4NCj4gPiA+ICsJCQkJCSAqICAgTW9k
aWZpY2F0aW9uIGNhbiBiZSBwZXJmb3JtZWQNCj4gPiA+ICsJCQkJCSAqICAgYWNjb3JkaW5nIHRv
IFBNRCBhbmQgZGV2aWNlDQo+ID4gPiArCQkJCQkgKiAgIGNhcGFiaWxpdGllcy4NCj4gPiA+ICsJ
CQkJCSAqDQo+ID4gPiArCQkJCQkgKiAtIEBwIDEgcmVxdWVzdHMgbW9kaWZpY2F0aW9uIHRvIGJl
DQo+ID4gPiArCQkJCQkgKiAgIHBlcmZvcm1lZCBvbiB0aGUgb3V0ZXJtb3N0DQo+IHBhY2tldA0K
PiA+ID4gKwkJCQkJICogICBlbmNhcHN1bGF0aW9uIGxldmVsLg0KPiA+ID4gKwkJCQkJICoNCj4g
PiA+ICsJCQkJCSAqIC0gQHAgMiBhbmQgc3Vic2VxdWVudCB2YWx1ZXMNCj4gPiByZXF1ZXN0DQo+
ID4gPiArCQkJCQkgKiAgIG1vZGlmaWNhdGlvbiB0byBiZSBwZXJmb3JtZWQgb24NCj4gPiA+ICsJ
CQkJCSAqICAgdGhlIHNwZWNpZmllZCBpbm5lciBwYWNrZXQNCj4gPiA+ICsJCQkJCSAqICAgZW5j
YXBzdWxhdGlvbiBsZXZlbCwgZnJvbQ0KPiA+ID4gKwkJCQkJICogICBvdXRlcm1vc3QgdG8gaW5u
ZXJtb3N0IChsb3dlciB0bw0KPiA+ID4gKwkJCQkJICogICBoaWdoZXIgdmFsdWVzKS4NCj4gPiA+
ICsJCQkJCSAqDQo+ID4gPiArCQkJCQkgKiBWYWx1ZXMgb3RoZXIgdGhhbiBAcCAwIGFyZSBub3QN
Cj4gPiA+ICsJCQkJCSAqIG5lY2Vzc2FyaWx5IHN1cHBvcnRlZC4NCj4gPiA+ICsJCQkJCSAqDQo+
ID4gPiArCQkJCQkgKiBAbm90ZSB0aGF0IGZvciBNUExTIGZpZWxkLA0KPiA+ID4gKwkJCQkJICog
ZW5jYXBzdWxhdGlvbiBsZXZlbCBhbHNvIGluY2x1ZGUNCj4gPiA+ICsJCQkJCSAqIHR1bm5lbCBz
aW5jZSBNUExTIG1heSBhcHBlYXIgaW4NCj4gPiA+ICsJCQkJCSAqIG91dGVyLCBpbm5lciBvciB0
dW5uZWwuDQo+ID4gPiArCQkJCQkgKi8NCj4gPiA+ICsJCQkJCXVpbnQ4X3QgbGV2ZWw7DQo+ID4g
PiArCQkJCQl1bmlvbiB7DQo+ID4gPiArCQkJCQkJLyoqDQo+ID4gPiArCQkJCQkJICogVGFnIGlu
ZGV4IGFycmF5IGluc2lkZQ0KPiA+ID4gKwkJCQkJCSAqIGVuY2Fwc3VsYXRpb24gbGV2ZWwuDQo+
ID4gPiArCQkJCQkJICogVXNlZCBmb3IgVkxBTiwgTVBMUyBvcg0KPiBUQUcNCj4gPiB0eXBlcy4N
Cj4gPiA+ICsJCQkJCQkgKi8NCj4gPiA+ICsJCQkJCQl1aW50OF90IHRhZ19pbmRleDsNCj4gPiA+
ICsJCQkJCQkvKioNCj4gPiA+ICsJCQkJCQkgKiBHZW5ldmUgb3B0aW9uIGlkZW50aWZpZXIuDQo+
ID4gPiArCQkJCQkJICogUmVsZXZhbnQgb25seSBmb3INCj4gPiA+ICsJCQkJCQkgKg0KPiA+IFJU
RV9GTE9XX0ZJRUxEX0dFTkVWRV9PUFRfWFhYWA0KPiA+ID4gKwkJCQkJCSAqIG1vZGlmaWNhdGlv
biB0eXBlLg0KPiA+ID4gKwkJCQkJCSAqLw0KPiA+ID4gKwkJCQkJCXN0cnVjdCB7DQo+ID4gPiAr
CQkJCQkJCS8qKg0KPiA+ID4gKwkJCQkJCQkgKiBHZW5ldmUgb3B0aW9uDQo+IHR5cGUuDQo+ID4g
PiArCQkJCQkJCSAqLw0KPiA+ID4gKwkJCQkJCQl1aW50OF90IHR5cGU7DQo+ID4gPiArCQkJCQkJ
CS8qKg0KPiA+ID4gKwkJCQkJCQkgKiBHZW5ldmUgb3B0aW9uDQo+IGNsYXNzLg0KPiA+ID4gKwkJ
CQkJCQkgKi8NCj4gPiA+ICsJCQkJCQkJcnRlX2JlMTZfdCBjbGFzc19pZDsNCj4gPiA+ICsJCQkJ
CQl9Ow0KPiA+ID4gKwkJCQkJfTsNCj4gPiA+ICsJCQkJfTsNCj4gPiA+ICsJCQkJc3RydWN0IHJ0
ZV9mbG93X2l0ZW1fZmxleF9oYW5kbGUNCj4gKmZsZXhfaGFuZGxlOw0KPiA+ID4gKwkJCX07DQo+
ID4gPiArCQkJLyoqIE51bWJlciBvZiBiaXRzIHRvIHNraXAgZnJvbSBhIGZpZWxkLiAqLw0KPiA+
ID4gKwkJCXVpbnQzMl90IG9mZnNldDsNCj4gPiA+ICsJCX07DQo+ID4gPiArCQkvKioNCj4gPiA+
ICsJCSAqIEltbWVkaWF0ZSB2YWx1ZSBmb3IgUlRFX0ZMT1dfRklFTERfVkFMVUUsIHByZXNlbnRl
ZA0KPiBpbg0KPiA+IHRoZQ0KPiA+ID4gKwkJICogc2FtZSBieXRlIG9yZGVyIGFuZCBsZW5ndGgg
YXMgaW4gcmVsZXZhbnQNCj4gcnRlX2Zsb3dfaXRlbV94eHguDQo+ID4gPiArCQkgKiBUaGUgaW1t
ZWRpYXRlIHNvdXJjZSBiaXRmaWVsZCBvZmZzZXQgaXMgaW5oZXJpdGVkIGZyb20NCj4gPiA+ICsJ
CSAqIHRoZSBkZXN0aW5hdGlvbidzIG9uZS4NCj4gPiA+ICsJCSAqLw0KPiA+ID4gKwkJdWludDhf
dCB2YWx1ZVsxNl07DQo+ID4gPiArCQkvKioNCj4gPiA+ICsJCSAqIE1lbW9yeSBhZGRyZXNzIGZv
ciBSVEVfRkxPV19GSUVMRF9QT0lOVEVSLCBtZW1vcnkNCj4gPiBsYXlvdXQNCj4gPiA+ICsJCSAq
IHNob3VsZCBiZSB0aGUgc2FtZSBhcyBmb3IgcmVsZXZhbnQgZmllbGQgaW4gdGhlDQo+ID4gPiAr
CQkgKiBydGVfZmxvd19pdGVtX3h4eCBzdHJ1Y3R1cmUuDQo+ID4gPiArCQkgKi8NCj4gPiA+ICsJ
CXZvaWQgKnB2YWx1ZTsNCj4gPiA+ICsJfTsNCj4gPiA+ICt9Ow0KPiA+ID4gKw0KPiA+ID4NCj4g
Pg0KPiA+IEkgYW0gYXdhcmUgdGhhdCB5b3UgYXJlIGp1c3QgbW92aW5nIHRoZSBhYm92ZSBzdHJ1
Y3QsIGJ1dCBpdCBpcyBuZXN0ZWQgdG9vDQo+IG11Y2gNCj4gPiB3aGljaCBpcyBtYWtpbmcgaXQg
aGFyZCB0byByZWFkLg0KPiA+DQo+ID4gQXMgeW91IGFyZSB0b3VjaGluZyBpdCwgY2FuIHdlIGV4
dHJhY3Qgc29tZSBzdHJ1Y3RzIGFuZCBtYWtlIHRoaXMgc3RydWN0IGxlc3MNCj4gPiBuZXN0ZWQs
IHdoYXQgZG8geW91IHRoaW5rPw0KPiA+IE9mIGNvdXJzZSBpdCBuZWVkcyB0byBiZSBkb25lIGlu
IHNlcGFyYXRlIHBhdGNoLCBhcyBhIHByZXBlcmF0aW9uL2NsZWFuLXVwDQo+IHBhdGNoDQo+ID4g
YmVmb3JlIG1vdmluZyBpdCBhcm91bmQuDQo+IA0KPiBBZ3JlZSB0aGUgc3RydWN0IG1heWJlIGEg
Yml0IG5lc3RlZC4gQnV0IG5vdCBzdXJlIGhvdyBpdCB3YXMgZGlzY3Vzc2VkDQo+IGJlZm9yZSBk
dXJpbmcgdGhlIGxhc3QgbmV3IG1lbWJlciB3YXMgYWRkZWQuLi4gQE9yaSwgRG8geW91IGhhdmUg
YW55IGlkZWENCj4gYWJvdXQgdGhpcz8NCj4gDQoNCkFzIGZhciBhcyBJIHJlbWVtYmVyLCBpdCB3
YXMgbmV2ZXIgZGlzY3Vzc2VkLCANCg0KSSB0aGluayBmb3IgdGhpcyBzZXJpZXMgd2Ugc2hvdWxk
IGtlZXAgaXQgYXMgaXMsIGFuZCByZXZpc2UgaXQgbGF0ZXIuDQoNCkJlc3QsDQpPcmkNCj4gQW5k
IGlmIGl0IGlzIHJlYWxseSBleHBlY3RlZCwgSSBiZWxpZXZlIGFub3RoZXIgbmV3IHRocmVhZCBp
cyB3b3J0aCBmb3IgdGhhdA0KPiBjaGFuZ2UsICBiZXR0ZXIgbm90IGJlIGluIHRoYXQgc2VyaWVz
Lg0KPiBOZWVkIHRvIGRpc2N1c3MgdGhlIG5ldyBzdHJ1Y3QgbmFtZSBhbmQgb3RoZXIgc3R1ZmYu
IFdoYXQgZG8geW91IHRoaW5rPw0KPiANCj4gPg0KPiA+IDwuLi4+DQo+ID4NCj4gPiA+ICsvKioN
Cj4gPiA+ICsgKg0KPiA+ID4gKyAqIFJURV9GTE9XX0lURU1fVFlQRV9DT01QQVJFDQo+ID4gPiAr
ICoNCj4gPiA+ICsgKiBNYXRjaGVzIHRoZSBwYWNrZXQgd2l0aCBjb21wYXJlIHJlc3VsdC4NCj4g
PiA+ICsgKg0KPiA+ID4gKyAqIFRoZSBvcGVyYXRpb24gbWVhbnMgYSBjb21wYXJlIHdpdGggYiBy
ZXN1bHQuDQo+ID4gPiArICovDQo+ID4gPiArc3RydWN0IHJ0ZV9mbG93X2l0ZW1fY29tcGFyZSB7
DQo+ID4gPiArCWVudW0gcnRlX2Zsb3dfaXRlbV9jb21wYXJlX29wIG9wZXJhdGlvbjsgLyogVGhl
IGNvbXBhcmUNCj4gb3BlcmF0aW9uLg0KPiA+ICovDQo+ID4gPiArCXN0cnVjdCBydGVfZmxvd19m
aWVsZF9kYXRhIGE7CQkgLyogRmllbGQgYmUgY29tcGFyZWQuICAqLw0KPiA+ID4gKwlzdHJ1Y3Qg
cnRlX2Zsb3dfZmllbGRfZGF0YSBiOwkJIC8qIEZpZWxkIGFzIGNvbXBhcmF0b3IuICovDQo+ID4g
Pg0KPiA+DQo+ID4gVmFyaWFibGUgbmFtZXMgJ2EnIGFuZCAnYicgYXJlIG5vdCBkZXNjcmlwdGl2
ZSBhbHRob3VnaCBpdCBtYXkgYmUgT0sgc2luY2UNCj4gdGhlcmUgaXMNCj4gPiBubyBzaWduaWZp
Y2FuY2UgdG8gdGhlIHZhbHVlcywgYnV0IG90aGVyIG9wdGlvbiBjYW4gYmUgJ2ZpcnN0JyBhbmQg
J3NlY29uZCcsDQo+IGJ1dA0KPiA+IG92ZXJhbGwgbm90IHN0cm9uZyBvcGluaW9uLg0KPiANCj4g
WWVzLCB0aGFua3MgZm9yIHRoZSBzdWdnZXN0aW9uLCBpbiBmYWN0IHdlIGFsc28gZGlzY3Vzc2Vk
IGFib3V0IHRoZSBuYW1lIGEgbG90LA0KPiBmaW5hbGx5IHdlIGNob29zZSB0aGUgd2lkZWx5IHVz
ZWQgJ2EnIGFuZCAnYicNCj4gDQo+IFRoYW5rcw0KDQo=