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 CE453A0C46;
	Fri, 18 Jun 2021 12:44:35 +0200 (CEST)
Received: from [217.70.189.124] (localhost [127.0.0.1])
	by mails.dpdk.org (Postfix) with ESMTP id 8C38441149;
	Fri, 18 Jun 2021 12:41:11 +0200 (CEST)
Received: from mga11.intel.com (mga11.intel.com [192.55.52.93])
 by mails.dpdk.org (Postfix) with ESMTP id 7C298411F4
 for <dev@dpdk.org>; Fri, 18 Jun 2021 12:41:09 +0200 (CEST)
IronPort-SDR: gjUSn8Xd6t++ve56qDhx4KuEDGc1MqD0E17OCj9C+LUHGhGryQtBOrJx8cCxcxDA3apogsnFbq
 GFuv1YaNeWSg==
X-IronPort-AV: E=McAfee;i="6200,9189,10018"; a="203509805"
X-IronPort-AV: E=Sophos;i="5.83,283,1616482800"; d="scan'208";a="203509805"
Received: from fmsmga006.fm.intel.com ([10.253.24.20])
 by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 18 Jun 2021 03:41:05 -0700
IronPort-SDR: hinZBW4+46NacqmVbZTHVldQiK90kOc8GIGQ50ilzqgIIa3biPeepqDbGvz7f2lGeoXcyNGLdf
 wCM+1wd8SFwg==
X-ExtLoop1: 1
X-IronPort-AV: E=Sophos;i="5.83,283,1616482800"; d="scan'208";a="638119380"
Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81])
 by fmsmga006.fm.intel.com with ESMTP; 18 Jun 2021 03:41:05 -0700
Received: from fmsmsx607.amr.corp.intel.com (10.18.126.87) by
 fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2242.4; Fri, 18 Jun 2021 03:41:04 -0700
Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by
 fmsmsx607.amr.corp.intel.com (10.18.126.87) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.4
 via Frontend Transport; Fri, 18 Jun 2021 03:41:04 -0700
Received: from NAM12-DM6-obe.outbound.protection.outlook.com (104.47.59.176)
 by edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.1.2242.4; Fri, 18 Jun 2021 03:41:04 -0700
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=F2aTMAZ+cjr8U4/4MFRLV/xEFvx8EwScdhcloRgdyKg0VV4Wp4Kff388PI0WSGrZ9ilEsuIyVvdwPfky8h5CmxVvCiuwsZmp5vwmZyEyivm2g/pRDzVdr2Rtn9AYHZPE7XIC+HjoI7jiirHkF67nXndki646b0GJflmGlbsqJy1/2YC3RTrJZPDQg0ydcMBUemSbTFQTIa59n70ibSHz6Qf4kqBTsH9KYyM7dkeHgVCqO3iAc3A4RxBvwjwTNc/ui9HojiqFKenYYEjXaD58EosDVcF107/Ao8QuXKE/F6NQAbLI1/qk1KrTYMliL9F5m9U1xqPbJ9bVl+pxhwILfg==
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=FFX+4WqneX/K3RGHWTzuqWZ6NZmOYjqPx4T74WsHfJs=;
 b=LC5LQrGnq9Sw9VOXmTsmPYWIx2nP5f72hdGg1r3bq1NRWkU0fh1nSN9IAPavCX/4D3EPRHly++ZrFIMjvstNAk/dyWBcUViSAa87mhi9hggM4ahWA5tU8n3/B1l+yuzE8hPLSpC2Lzjb6uucjLee306uJId6vsrK0/tM5BPvdPe0FtLp7FvZ96cXCJaI7Ez1zCKuP51wSHplhurftlpqrVnBuxrkbf4EN8VtdImnSR2UsSWhFK4yboq7rHrO4fxdJHYBj0E/p+QZr86LrMeUJtr8L6xDy1OyND04e2fSwRd1Ubpugl8yfes5T3rUfiDWdh6+l+JFyvmohMgx7AbOYA==
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=FFX+4WqneX/K3RGHWTzuqWZ6NZmOYjqPx4T74WsHfJs=;
 b=Yjx1O10nQgNqB9UjL9mw6m5h5swkbjpZHe0A99auS3YbwmOO+0kMBphPXVc/3fRynxoCX2MBLHDwBP1IxGIeMRzchTaQmiVPuN2C0ufvjVHZ/NAv+nluYQcrxt5U4O5YsCQOH32MvBcAlVbPebLekn2unucsXOO2JxBBYTEBpTM=
Received: from DM6PR11MB4491.namprd11.prod.outlook.com (2603:10b6:5:204::19)
 by DM6PR11MB4009.namprd11.prod.outlook.com (2603:10b6:5:193::14) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4219.22; Fri, 18 Jun
 2021 10:41:02 +0000
Received: from DM6PR11MB4491.namprd11.prod.outlook.com
 ([fe80::7dc4:66b0:f76b:6d48]) by DM6PR11MB4491.namprd11.prod.outlook.com
 ([fe80::7dc4:66b0:f76b:6d48%7]) with mapi id 15.20.4219.026; Fri, 18 Jun 2021
 10:41:02 +0000
From: "Ananyev, Konstantin" <konstantin.ananyev@intel.com>
To: "Yigit, Ferruh" <ferruh.yigit@intel.com>, Thomas Monjalon
 <thomas@monjalon.net>, "Richardson, Bruce" <bruce.richardson@intel.com>
CC: =?utf-8?B?TW9ydGVuIEJyw7hydXA=?= <mb@smartsharesystems.com>,
 "dev@dpdk.org" <dev@dpdk.org>, "olivier.matz@6wind.com"
 <olivier.matz@6wind.com>, "andrew.rybchenko@oktetlabs.ru"
 <andrew.rybchenko@oktetlabs.ru>, "honnappa.nagarahalli@arm.com"
 <honnappa.nagarahalli@arm.com>, "jerinj@marvell.com" <jerinj@marvell.com>,
 "gakhil@marvell.com" <gakhil@marvell.com>
Thread-Topic: [dpdk-dev] [PATCH] parray: introduce internal API for dynamic
 arrays
Thread-Index: AQHXYQxT3nKj3OToOE+g04oypCLg2asTbdkAgAAOoICAAATCgIAAFeZggAAOq/CABIvGAIAAHL6ggAAPB4CAATs50A==
Date: Fri, 18 Jun 2021 10:41:02 +0000
Message-ID: <DM6PR11MB44918FA620120C5D414499489A0D9@DM6PR11MB4491.namprd11.prod.outlook.com>
References: <20210614105839.3379790-1-thomas@monjalon.net>
 <98CBD80474FA8B44BF855DF32C47DC35C6184E@smartserver.smartshare.dk>
 <YMdWVzsk2+FQkLPJ@bricha3-MOBL.ger.corp.intel.com>
 <2004320.XGyPsaEoyj@thomas>
 <DM6PR11MB449118BF66F99FEA086158ED9A319@DM6PR11MB4491.namprd11.prod.outlook.com>
 <DM6PR11MB44914E3D1701EE88373F5CDF9A319@DM6PR11MB4491.namprd11.prod.outlook.com>
 <bdb7428e-fa2a-20b0-25a3-8d0cf02f0fa6@intel.com>
 <DM6PR11MB4491E0B36CC1B7E30095FFE39A0E9@DM6PR11MB4491.namprd11.prod.outlook.com>
 <0bb118ba-2658-a7d7-ad8f-bf27f62849f7@intel.com>
In-Reply-To: <0bb118ba-2658-a7d7-ad8f-bf27f62849f7@intel.com>
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.5.1.3
authentication-results: intel.com; dkim=none (message not signed)
 header.d=none;intel.com; dmarc=none action=none header.from=intel.com;
x-originating-ip: [109.255.184.192]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: b847f97f-5eed-4121-439a-08d9324591a1
x-ms-traffictypediagnostic: DM6PR11MB4009:
x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr
x-ms-exchange-transport-forked: True
x-microsoft-antispam-prvs: <DM6PR11MB4009325F0F8A45B43F2A10199A0D9@DM6PR11MB4009.namprd11.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:10000;
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: leNY+Jj9JbjebU+YZAVi7ohpx9vjtBgUVD9eYDLT5mgjDRkitQgD7OlfsC+zhtOe+samCclcMSgREzu5+XJmK0X9SaCL6kAYGyJwVwpl6fBypTWeNqrCwxTsh74HgvU1mwtL7C9FfBGuy3/GoXZtdTQdYu8nTbXoHCMUxma8Bz/RUPbKxz+H+Bsodte2lCM9N/kVkDkTQWw+0lFO6To0rMgfzRYJXYP+LqIdcG91qf9824H3IwTak0lIBMskyOX0Hj7e3ZYfN7pI5GsmBkCwNbcopQPzB/sLUVp6DHZfBhbda5ewtUSa3VxjQOQa2T008CvHmj9HLLZDGVr5M+26p/kDh/SR9QJSvPstyJB7yGQ0QVdC6bo2qZCA6IF5YdUkL5Juv+dXDqCHRfLGKVAEZSNW8oI4eeLh6kwBE6WoEfA7lrnqMtSW5BmYhxjaJ1lrkXdk0J0cXGObiH+rnqKCtb8EdyR7zuiDDUUJP3r1QKgzShZJ+7evG4zynaaLqBaedt0/Bi3GVtjd9N/eLpuvP/ITLQ5kc+F67X8/mB5wnZlPFZEBS/jt3/Y68I2pFb5Kebmwik9r6dFs5vt1Pc8nrftJj+9T9oalzRdRJybv+SI=
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:DM6PR11MB4491.namprd11.prod.outlook.com; PTR:; CAT:NONE;
 SFS:(376002)(346002)(39860400002)(396003)(366004)(136003)(86362001)(478600001)(9686003)(6636002)(71200400001)(8676002)(76116006)(33656002)(4326008)(8936002)(55016002)(2906002)(83380400001)(38100700002)(66946007)(6506007)(7696005)(66556008)(64756008)(66476007)(52536014)(110136005)(5660300002)(66446008)(26005)(122000001)(54906003)(186003)(66574015)(55236004)(316002);
 DIR:OUT; SFP:1102; 
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: =?utf-8?B?MG5hM1RYYjRxL2JkZVh0MXh5S0d3UEpjLzRUN2F3RFV4SjRVUEFuY3Z4TjV6?=
 =?utf-8?B?MFJLSkwvNkY0NTBtZXFtU01aQXdGdnNReEw0RlJtQU9XdGZvNDdteFRvRkp5?=
 =?utf-8?B?V0RHdGVpazBWWTdpS0NOaUlROE5vMmhBUHZuY0Z2WTZKOW5LRkZPd2NsN2pP?=
 =?utf-8?B?ME81SWt6alEyRXlrdW1qOUVwNGV4dXJacjQ5ZVpydVdHMXJtdWFtdGlMcVNo?=
 =?utf-8?B?ZHlyd0ZiK3lGbGxiTWdpQjhjV3VjOEhNNllBalVGZkNTVnZNeEtZS0dNL1dY?=
 =?utf-8?B?QXV4UFVHTVVMaXBzYlhtT21zSVFMMzhHTEV6QXVyb25ZMHdJR01qajh4cVdY?=
 =?utf-8?B?dWhlSlBySFRBMlJxK3ZXakE0NjJGZS9rS2ZPMVIrZXZVTnR5YmoybkZHQjJU?=
 =?utf-8?B?WlN5S1Y5b2dpVkZkU0hwdFl6dCs1Y21ZL0VYT1VGVlBYdGFUU2V5V2VybUlp?=
 =?utf-8?B?NjJMcklLR2tESWhQNnJkay83ZDhleG1rMUxXVnhEa3hTMXpOZDM2WStVRDVx?=
 =?utf-8?B?WGo4dUZnWlI3NHdVZHV6QzdqQ2xIekJQODZZMHF4VDhRTG5iZmNOWGNSbjRj?=
 =?utf-8?B?TmJXck1BZ09JeWszY3FVQncxWndJQ3pLMlVGUGJ5c3V3Z3FySHJzOCt1NnJP?=
 =?utf-8?B?ZXJpVjMxdG5DOHRtSDBZT3kzd3plaHl3RUZ1K2Y3UFRhMjNXUFo3TS9CSlE4?=
 =?utf-8?B?ei82aDNxT3RuNEN5RWlHdGdCaG4zb1cveWZRK3Vsb3Jld3RMeTdvRlNlaVpO?=
 =?utf-8?B?NUdOZmFWZlVMTHdWY0ZIcUZUcTk1Vk82dGxSMkUxaFFEVEc5OW5sYnNyZjJV?=
 =?utf-8?B?dTBnR3dleUMxQUJ2NSs1Vythenl1bW1xc3o3QXphUXg5NDJDV2VleVBMd0Nm?=
 =?utf-8?B?V3JSMHF6YmY5eEF5L2tGaHNCVE41WG4xekRjTjZkY29DdjBqNzRtMTM3UGdG?=
 =?utf-8?B?VU5zM1FaS1R1Y1dyZXdrVU5tRUdJUDI4UEtTeVhQTnFaaHNBRUp4aEpIV1ZQ?=
 =?utf-8?B?OFRod2tsczl4MlZSYkl2U25ObCtFUXZmQlkwRnFjbE5laGdNV3phV2xJZ0Ja?=
 =?utf-8?B?bU1uZm9hMXFvR0NZdG9RWjZuT1RxVVZDNU5raUpCdUxER2JpSTJFTytVMDhX?=
 =?utf-8?B?LzFrY3UwN2U4bXBmRU1yVTJtVzJCYW1Ob2lrdnpxcmNBU0hadFh0MXErVFNJ?=
 =?utf-8?B?amRVMUNZOThQckJWbFFXUDlSaWJHYjR6SUQ0cFlmVFNHMElqejM1RDVKK3Ra?=
 =?utf-8?B?c1dDRjBycWZxSVN5RjVFOFdJL2lQTjlES01OQVVqZDhGYlFSRlpwU1dBVHBy?=
 =?utf-8?B?cnB1SnhOYzFHU3BGTnJIUk12cnd5L0JFc1ZqYlhzUDNiUmdXSzFnejMwdFRI?=
 =?utf-8?B?Rm9GR3NGS1hiWlM5ck50LzEzNjFGd2RnQkF6T2s5OUpXek5jTkNqeU05VU5k?=
 =?utf-8?B?Y3BjM2gxQzVpTlR3dTE3WjBiQ2llS2pQUkVlRmw0VVlUbDA3V3YrOS9hOUN5?=
 =?utf-8?B?R0ZDbFVGaDhGQTY3OXExSzZ0d3BuVENWWjZtWHhuL3AydnVSOGlNTGVSZjRv?=
 =?utf-8?B?SFdJTm5Fc0dtYXN3NENSVXV3ckFHZnVKT2hVNDdMVmFpQmRUc3RUbVcwcHVN?=
 =?utf-8?B?dGN1WGxsKzREenZlczlxY2tGeUMzYitJOGpGYm1PYjE1ZmFZQUJVRzVxdysy?=
 =?utf-8?B?L0xYKzQ2YzRhUThpZXpVQ1pNaEJ6NTZmTk1LR2psNm9YVTkxTGplWFlpblhQ?=
 =?utf-8?Q?WfoimBYa4fO7FWPYx37+tqrT/zQ8nrqTXDbVD6D?=
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: DM6PR11MB4491.namprd11.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b847f97f-5eed-4121-439a-08d9324591a1
X-MS-Exchange-CrossTenant-originalarrivaltime: 18 Jun 2021 10:41:02.5673 (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: YrLqBIY7WbetktEpFKl00aQS545fX0Dd8qGVBRgc5cUS6v29VpMLENEHOEF/lQ3Wj+YOG+Dr4HZ+W5FHrSmCtjlxMLowcMlZ7bshr5S6qgE=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR11MB4009
X-OriginatorOrg: intel.com
Subject: Re: [dpdk-dev] [PATCH] parray: introduce internal API for dynamic
 arrays
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
Sender: "dev" <dev-bounces@dpdk.org>

DQo+ID4+Pj4+DQo+ID4+Pj4+IDE0LzA2LzIwMjEgMTU6MTUsIEJydWNlIFJpY2hhcmRzb246DQo+
ID4+Pj4+PiBPbiBNb24sIEp1biAxNCwgMjAyMSBhdCAwMjoyMjo0MlBNICswMjAwLCBNb3J0ZW4g
QnLDuHJ1cCB3cm90ZToNCj4gPj4+Pj4+Pj4gRnJvbTogZGV2IFttYWlsdG86ZGV2LWJvdW5jZXNA
ZHBkay5vcmddIE9uIEJlaGFsZiBPZiBUaG9tYXMgTW9uamFsb24NCj4gPj4+Pj4+Pj4gU2VudDog
TW9uZGF5LCAxNCBKdW5lIDIwMjEgMTIuNTkNCj4gPj4+Pj4+Pj4NCj4gPj4+Pj4+Pj4gUGVyZm9y
bWFuY2Ugb2YgYWNjZXNzIGluIGEgZml4ZWQtc2l6ZSBhcnJheSBpcyB2ZXJ5IGdvb2QNCj4gPj4+
Pj4+Pj4gYmVjYXVzZSBvZiBjYWNoZSBsb2NhbGl0eQ0KPiA+Pj4+Pj4+PiBhbmQgYmVjYXVzZSB0
aGVyZSBpcyBhIHNpbmdsZSBwb2ludGVyIHRvIGRlcmVmZXJlbmNlLg0KPiA+Pj4+Pj4+PiBUaGUg
b25seSBkcmF3YmFjayBpcyB0aGUgbGFjayBvZiBmbGV4aWJpbGl0eToNCj4gPj4+Pj4+Pj4gdGhl
IHNpemUgb2Ygc3VjaCBhbiBhcnJheSBjYW5ub3QgYmUgaW5jcmVhc2UgYXQgcnVudGltZS4NCj4g
Pj4+Pj4+Pj4NCj4gPj4+Pj4+Pj4gQW4gYXBwcm9hY2ggdG8gdGhpcyBwcm9ibGVtIGlzIHRvIGFs
bG9jYXRlIHRoZSBhcnJheSBhdCBydW50aW1lLA0KPiA+Pj4+Pj4+PiBiZWluZyBhcyBlZmZpY2ll
bnQgYXMgc3RhdGljIGFycmF5cywgYnV0IHN0aWxsIGxpbWl0ZWQgdG8gYSBtYXhpbXVtLg0KPiA+
Pj4+Pj4+Pg0KPiA+Pj4+Pj4+PiBUaGF0J3Mgd2h5IHRoZSBBUEkgcnRlX3BhcnJheSBpcyBpbnRy
b2R1Y2VkLA0KPiA+Pj4+Pj4+PiBhbGxvd2luZyB0byBkZWNsYXJlIGFuIGFycmF5IG9mIHBvaW50
ZXIgd2hpY2ggY2FuIGJlIHJlc2l6ZWQNCj4gPj4+Pj4+Pj4gZHluYW1pY2FsbHkNCj4gPj4+Pj4+
Pj4gYW5kIGF1dG9tYXRpY2FsbHkgYXQgcnVudGltZSB3aGlsZSBrZWVwaW5nIGEgZ29vZCByZWFk
IHBlcmZvcm1hbmNlLg0KPiA+Pj4+Pj4+Pg0KPiA+Pj4+Pj4+PiBBZnRlciByZXNpemUsIHRoZSBw
cmV2aW91cyBhcnJheSBpcyBrZXB0IHVudGlsIHRoZSBuZXh0IHJlc2l6ZQ0KPiA+Pj4+Pj4+PiB0
byBhdm9pZCBjcmFzaHMgZHVyaW5nIGEgcmVhZCB3aXRob3V0IGFueSBsb2NrLg0KPiA+Pj4+Pj4+
Pg0KPiA+Pj4+Pj4+PiBFYWNoIGVsZW1lbnQgaXMgYSBwb2ludGVyIHRvIGEgbWVtb3J5IGNodW5r
IGR5bmFtaWNhbGx5IGFsbG9jYXRlZC4NCj4gPj4+Pj4+Pj4gVGhpcyBpcyBub3QgZ29vZCBmb3Ig
Y2FjaGUgbG9jYWxpdHkgYnV0IGl0IGFsbG93cyB0byBrZWVwIHRoZSBzYW1lDQo+ID4+Pj4+Pj4+
IG1lbW9yeSBwZXIgZWxlbWVudCwgbm8gbWF0dGVyIGhvdyB0aGUgYXJyYXkgaXMgcmVzaXplZC4N
Cj4gPj4+Pj4+Pj4gQ2FjaGUgbG9jYWxpdHkgY291bGQgYmUgaW1wcm92ZWQgd2l0aCBtZW1wb29s
cy4NCj4gPj4+Pj4+Pj4gVGhlIG90aGVyIGRyYXdiYWNrIGlzIGhhdmluZyB0byBkZXJlZmVyZW5j
ZSBvbmUgbW9yZSBwb2ludGVyDQo+ID4+Pj4+Pj4+IHRvIHJlYWQgYW4gZWxlbWVudC4NCj4gPj4+
Pj4+Pj4NCj4gPj4+Pj4+Pj4gVGhlcmUgaXMgbm90IG11Y2ggbG9ja3MsIHNvIHRoZSBBUEkgaXMg
Zm9yIGludGVybmFsIHVzZSBvbmx5Lg0KPiA+Pj4+Pj4+PiBUaGlzIEFQSSBtYXkgYmUgdXNlZCB0
byBjb21wbGV0ZWx5IHJlbW92ZSBzb21lIGNvbXBpbGF0aW9uLXRpbWUNCj4gPj4+Pj4+Pj4gbWF4
aW11bXMuDQo+ID4+Pj4+Pj4NCj4gPj4+Pj4+PiBJIGdldCB0aGUgcHVycG9zZSBhbmQgb3ZlcmFs
bCBpbnRlbnRpb24gb2YgdGhpcyBsaWJyYXJ5Lg0KPiA+Pj4+Pj4+DQo+ID4+Pj4+Pj4gSSBwcm9i
YWJseSBhbHJlYWR5IG1lbnRpb25lZCB0aGF0IEkgcHJlZmVyICJlbWJlZGRlZCBzdHlsZSBwcm9n
cmFtbWluZyIgd2l0aCBmaXhlZCBzaXplIGFycmF5cywgcmF0aGVyIHRoYW4gcnVudGltZQ0KPiBj
b25maWd1cmFiaWxpdHkuDQo+ID4+Pj4gSXQncw0KPiA+Pj4+PiBteSBwZXJzb25hbCBvcGluaW9u
LCBhbmQgdGhlIERQREsgVGVjaCBCb2FyZCBjbGVhcmx5IHByZWZlcnMgcmVkdWNpbmcgdGhlIGFt
b3VudCBvZiBjb21waWxlIHRpbWUgY29uZmlndXJhYmlsaXR5LCBzbyB0aGVyZSBpcyBubw0KPiB3
YXkNCj4gPj4gZm9yDQo+ID4+Pj4+IG1lIHRvIHN0b3AgdGhpcyBwcm9ncmVzcywgYW5kIEkgZG8g
bm90IGludGVuZCB0byBvcHBvc2UgdG8gdGhpcyBsaWJyYXJ5LiA6LSkNCj4gPj4+Pj4+Pg0KPiA+
Pj4+Pj4+IFRoaXMgbGlicmFyeSBpcyBsaWtlbHkgdG8gYmVjb21lIGEgY29yZSBsaWJyYXJ5IG9m
IERQREssIHNvIEkgdGhpbmsgaXQgaXMgaW1wb3J0YW50IGdldHRpbmcgaXQgcmlnaHQuIENvdWxk
IHlvdSBwbGVhc2UgbWVudGlvbiBhIGZldw0KPiA+Pj4+IGV4YW1wbGVzDQo+ID4+Pj4+IHdoZXJl
IHlvdSB0aGluayB0aGlzIGludGVybmFsIGxpYnJhcnkgc2hvdWxkIGJlIHVzZWQsIGFuZCB3aGVy
ZSBpdCBzaG91bGQgbm90IGJlIHVzZWQuIFRoZW4gaXQgaXMgZWFzaWVyIHRvIGRpc2N1c3MgaWYg
dGhlIGJvcmRlciBsaW5lDQo+ID4+IGJldHdlZW4NCj4gPj4+Pj4gY29udHJvbCBwYXRoIGFuZCBk
YXRhIHBsYW5lIGlzIGNvcnJlY3QuIEUuZy4gdGhpcyBsaWJyYXJ5IGlzIG5vdCBpbnRlbmRlZCB0
byBiZSB1c2VkIGZvciBkeW5hbWljYWxseSBzaXplZCBwYWNrZXQgcXVldWVzIHRoYXQgZ3JvdyBh
bmQNCj4gPj4gc2hyaW5rDQo+ID4+Pj4gaW4NCj4gPj4+Pj4gdGhlIGZhc3QgcGF0aC4NCj4gPj4+
Pj4+Pg0KPiA+Pj4+Pj4+IElmIHRoZSBsaWJyYXJ5IGJlY29tZXMgYSBjb3JlIERQREsgbGlicmFy
eSwgaXQgc2hvdWxkIHByb2JhYmx5IGJlIHB1YmxpYyBpbnN0ZWFkIG9mIGludGVybmFsLiBFLmcu
IGlmIHRoZSBsaWJyYXJ5IGlzIHVzZWQgdG8gbWFrZQ0KPiA+Pj4+PiBSVEVfTUFYX0VUSFBPUlRT
IGR5bmFtaWMgaW5zdGVhZCBvZiBjb21waWxlIHRpbWUgZml4ZWQsIHRoZW4gc29tZSBhcHBsaWNh
dGlvbnMgbWlnaHQgYWxzbyBuZWVkIGR5bmFtaWNhbGx5IHNpemVkIGFycmF5cyBmb3INCj4gdGhl
aXINCj4gPj4+Pj4gYXBwbGljYXRpb24gc3BlY2lmaWMgcGVyLXBvcnQgcnVudGltZSBkYXRhLCBh
bmQgdGhpcyBsaWJyYXJ5IGNvdWxkIHNlcnZlIHRoYXQgcHVycG9zZSB0b28uDQo+ID4+Pj4+Pj4N
Cj4gPj4+Pj4+DQo+ID4+Pj4+PiBUaGFua3MgVGhvbWFzIGZvciBzdGFydGluZyB0aGlzIGRpc2N1
c3Npb24gYW5kIE1vcnRlbiBmb3IgZm9sbG93LXVwLg0KPiA+Pj4+Pj4NCj4gPj4+Pj4+IE15IHRo
aW5raW5nIGlzIGFzIGZvbGxvd3MsIGFuZCBJJ20gcGFydGljdWxhcmx5IGtlZXBpbmcgaW4gbWlu
ZCB0aGUgY2FzZXMNCj4gPj4+Pj4+IG9mIGUuZy4gUlRFX01BWF9FVEhQT1JUUywgYXMgYSBsZWFk
aW5nIGNhbmRpZGF0ZSBoZXJlLg0KPiA+Pj4+Pj4NCj4gPj4+Pj4+IFdoaWxlIEkgZGlzbGlrZSB0
aGUgaGFyZC1jb2RlZCBsaW1pdHMgaW4gRFBESywgSSdtIGFsc28gbm90IGNvbnZpbmNlZCB0aGF0
DQo+ID4+Pj4+PiB3ZSBzaG91bGQgc3dpdGNoIGF3YXkgZnJvbSB0aGUgZmxhdCBhcnJheXMgb3Ig
dGhhdCB3ZSBuZWVkIGZ1bGx5IGR5bmFtaWMNCj4gPj4+Pj4+IGFycmF5cyB0aGF0IGdyb3cvc2hy
aW5rIGF0IHJ1bnRpbWUgZm9yIGV0aGRldnMuIEkgd291bGQgc3VnZ2VzdCBhIGhhbGYtd2F5DQo+
ID4+Pj4+PiBob3VzZSBoZXJlLCB3aGVyZSB3ZSBrZWVwIHRoZSBldGhkZXZzIGFzIGFuIGFycmF5
LCBidXQgb25lIGFsbG9jYXRlZC9zaXplZA0KPiA+Pj4+Pj4gYXQgcnVudGltZSByYXRoZXIgdGhh
biBzdGF0aWNhbGx5LiBUaGlzIHdvdWxkIGFsbG93IHVzIHRvIGhhdmUgYQ0KPiA+Pj4+Pj4gY29t
cGlsZS10aW1lIGRlZmF1bHQgdmFsdWUsIGJ1dCwgZm9yIHVzZSBjYXNlcyB0aGF0IG5lZWQgaXQs
IGFsbG93IHVzZSBvZiBhDQo+ID4+Pj4+PiBmbGFnIGUuZy4gICJtYXgtZXRoZGV2cyIgdG8gY2hh
bmdlIHRoZSBzaXplIG9mIHRoZSBwYXJhbWV0ZXIgZ2l2ZW4gdG8gdGhlDQo+ID4+Pj4+PiBtYWxs
b2MgY2FsbCBmb3IgdGhlIGFycmF5LiAgVGhpcyBtYXggbGltaXQgY291bGQgdGhlbiBiZSBwcm92
aWRlZCB0byBhcHBzDQo+ID4+Pj4+PiB0b28gaWYgdGhleSB3YW50IHRvIG1hdGNoIGFueSBhcnJh
eSBzaXplcy4gW0FsdGVybmF0aXZlbHkgdGhvc2UgYXBwcyBjb3VsZA0KPiA+Pj4+Pj4gY2hlY2sg
dGhlIHByb3ZpZGVkIHNpemUgYW5kIGVycm9yIG91dCBpZiB0aGUgc2l6ZSBoYXMgYmVlbiBpbmNy
ZWFzZWQgYmV5b25kDQo+ID4+Pj4+PiB3aGF0IHRoZSBhcHAgaXMgZGVzaWduZWQgdG8gdXNlP10u
IFRoZXJlIHdvdWxkIGJlIG5vIGV4dHJhIGRlcmVmZXJlbmNlcyBwZXINCj4gPj4+Pj4+IHJ4L3R4
IGJ1cnN0IGNhbGwgaW4gdGhpcyBzY2VuYXJpbyBzbyBwZXJmb3JtYW5jZSBzaG91bGQgYmUgdGhl
IHNhbWUgYXMNCj4gPj4+Pj4+IGJlZm9yZSAocG90ZW50aWFsbHkgYmV0dGVyIGlmIGFycmF5IGlz
IGluIGh1Z2VwYWdlIG1lbW9yeSwgSSBzdXBwb3NlKS4NCj4gPj4+Pj4NCj4gPj4+Pj4gSSB0aGlu
ayB3ZSBuZWVkIHNvbWUgYmVuY2htYXJrcyB0byBkZWNpZGUgd2hhdCBpcyB0aGUgYmVzdCB0cmFk
ZW9mZi4NCj4gPj4+Pj4gSSBzcGVudCB0aW1lIG9uIHRoaXMgaW1wbGVtZW50YXRpb24sIGJ1dCBz
b3JyeSBJIHdvbid0IGhhdmUgdGltZSBmb3IgYmVuY2htYXJrcy4NCj4gPj4+Pj4gVm9sdW50ZWVy
cz8NCj4gPj4+Pg0KPiA+Pj4+IEkgaGFkIG9ubHkgYSBxdWljayBsb29rIGF0IHlvdXIgYXBwcm9h
Y2ggc28gZmFyLg0KPiA+Pj4+IEJ1dCBmcm9tIHdoYXQgSSBjYW4gcmVhZCwgaW4gTVQgZW52aXJv
bm1lbnQgeW91ciBzdWdnZXN0aW9uIHdpbGwgcmVxdWlyZQ0KPiA+Pj4+IGV4dHJhIHN5bmNocm9u
aXphdGlvbiBmb3IgZWFjaCByZWFkLXdyaXRlIGFjY2VzcyB0byBzdWNoIHBhcnJheSBlbGVtZW50
IChsb2NrLCByY3UsIC4uLikuDQo+ID4+Pj4gSSB0aGluayB3aGF0IEJydWNlIHN1Z2dlc3RzIHdp
bGwgYmUgbXVjaCBsaWd0aGVyLCBlYXNpZXIgdG8gaW1wbGVtZW50IGFuZCBsZXNzIGVycm9yIHBy
b25lLg0KPiA+Pj4+IEF0IGxlYXN0IGZvciBydGVfZXRoZGV2c1tdIGFuZCBmcmllbmRzLg0KPiA+
Pj4+IEtvbnN0YW50aW4NCj4gPj4+DQo+ID4+PiBPbmUgbW9yZSB0aG91Z2h0IGhlcmUgLSBpZiB3
ZSBhcmUgdGFsa2luZyBhYm91dCBydGVfZXRoZGV2W10gaW4gcGFydGljdWxhciwgSSB0aGluayAg
d2UgY2FuOg0KPiA+Pj4gMS4gbW92ZSBwdWJsaWMgZnVuY3Rpb24gcG9pbnRlcnMgKHJ4X3BrdF9i
dXJzdCgpLCBldGMuKSBmcm9tIHJ0ZV9ldGhkZXYgaW50byBhIHNlcGFyYXRlIGZsYXQgYXJyYXku
DQo+ID4+PiBXZSBjYW4ga2VlcCBpdCBwdWJsaWMgdG8gc3RpbGwgdXNlIGlubGluZSBmdW5jdGlv
bnMgZm9yICdmYXN0JyBjYWxscyBydGVfZXRoX3J4X2J1cnN0KCksIGV0Yy4gdG8gYXZvaWQNCj4g
Pj4+IGFueSByZWdyZXNzaW9ucy4NCj4gPj4+IFRoYXQgY291bGQgc3RpbGwgYmUgZmxhdCBhcnJh
eSB3aXRoIG1heF9zaXplIHNwZWNpZmllZCBhdCBhcHBsaWNhdGlvbiBzdGFydHVwLg0KPiA+Pj4g
Mi4gSGlkZSByZXN0IG9mIHJ0ZV9ldGhkZXYgc3RydWN0IGluIC5jLg0KPiA+Pj4gVGhhdCB3aWxs
IGFsbG93IHVzIHRvIGNoYW5nZSB0aGUgc3RydWN0IGl0c2VsZiBhbmQgdGhlIHdob2xlIHJ0ZV9l
dGhkZXZbXSB0YWJsZSBpbiBhIHdheSB3ZSBsaWtlDQo+ID4+PiAoZmxhdCBhcnJheSwgdmVjdG9y
LCBoYXNoLCBsaW5rZWQgbGlzdCkgd2l0aG91dCBBQkkvQVBJIGJyZWFrYWdlcy4NCj4gPj4+DQo+
ID4+PiBZZXMsIGl0IHdvdWxkIHJlcXVpcmUgYWxsIFBNRHMgdG8gY2hhbmdlIHByb3RvdHlwZSBm
b3IgcGt0X3J4X2J1cnN0KCkgZnVuY3Rpb24NCj4gPj4+ICh0byBhY2NlcHQgcG9ydF9pZCwgcXVl
dWVfaWQgaW5zdGVhZCBvZiBxdWV1ZSBwb2ludGVyKSwgYnV0IHRoZSBjaGFuZ2UgaXMgbWVjaGFu
aWNhbCBvbmUuDQo+ID4+PiBQcm9iYWJseSBzb21lIG1hY3JvIGNhbiBiZSBwcm92aWRlZCB0byBz
aW1wbGlmeSBpdC4NCj4gPj4+DQo+ID4+DQo+ID4+IFdlIGFyZSBhbHJlYWR5IHBsYW5uaW5nIHNv
bWUgdGFza3MgZm9yIEFCSSBzdGFiaWxpdHkgZm9yIHYyMS4xMSwgSSB0aGluaw0KPiA+PiBzcGxp
dHRpbmcgJ3N0cnVjdCBydGVfZXRoX2RldicgY2FuIGJlIHBhcnQgb2YgdGhhdCB0YXNrLCBpdCBl
bmFibGVzIGhpZGluZyBtb3JlDQo+ID4+IGludGVybmFsIGRhdGEuDQo+ID4NCj4gPiBPaywgc291
bmRzIGdvb2QuDQo+ID4NCj4gPj4NCj4gPj4+IFRoZSBvbmx5IHNpZ25pZmljYW50IGNvbXBsaWNh
dGlvbiBJIGNhbiBmb3Jlc2VlIHdpdGggaW1wbGVtZW50aW5nIHRoYXQgYXBwcm9hY2ggLQ0KPiA+
Pj4gd2UnbGwgbmVlZCBhIGFuIGFycmF5IG9mICdmYXN0JyBmdW5jdGlvbiBwb2ludGVycyBwZXIg
cXVldWUsIG5vdCBwZXIgZGV2aWNlIGFzIHdlIGhhdmUgbm93DQo+ID4+PiAodG8gYXZvaWQgZXh0
cmEgaW5kaXJlY3Rpb24gZm9yIGNhbGxiYWNrIGltcGxlbWVudGF0aW9uKS4NCj4gPj4+IFRob3Vn
aCBhcyBhIGJvbnVzIHdlJ2xsIGhhdmUgYWJpbGl0eSB0byB1c2UgZGlmZmVyZW50IFJYL1RYIGZ1
bmNpb25zIHBlciBxdWV1ZS4NCj4gPj4+DQo+ID4+DQo+ID4+IFdoYXQgZG8geW91IHRoaW5rIHNw
bGl0IFJ4L1R4IGNhbGxiYWNrIGludG8gaXRzIG93biBzdHJ1Y3QgdG9vPw0KPiA+Pg0KPiA+PiBP
dmVyYWxsICdydGVfZXRoX2RldicgY2FuIGJlIHNwbGl0IGludG8gdGhyZWUgYXM6DQo+ID4+IDEu
IHJ0ZV9ldGhfZGV2DQo+ID4+IDIuIHJ0ZV9ldGhfZGV2X2J1cnN0DQo+ID4+IDMuIHJ0ZV9ldGhf
ZGV2X2NiDQo+ID4+DQo+ID4+IEFuZCB3ZSBjYW4gaGlkZSAxIGZyb20gYXBwbGljYXRpb25zIGV2
ZW4gd2l0aCB0aGUgaW5saW5lIGZ1bmN0aW9ucy4NCj4gPg0KPiA+IEFzIGRpc2N1c3NlZCBvZmYt
bGluZSwgSSB0aGluazoNCj4gPiBpdCBpcyBwb3NzaWJsZS4NCj4gPiBNeSBhYnNvbHV0ZSBwcmVm
ZXJlbmNlIHdvdWxkIGJlIHRvIGhhdmUganVzdCAxLzIgKHdpdGggQ0IgaGlkZGVuKS4NCj4gDQo+
IEhvdyBjYW4gd2UgaGlkZSB0aGUgY2FsbGJhY2tzIHNpbmNlIHRoZXkgYXJlIHVzZWQgYnkgaW5s
aW5lIGJ1cnN0IGZ1bmN0aW9ucy4NCg0KSSBwcm9iYWJseSBJIG93ZSBhIGJldHRlciBleHBsYW5h
dGlvbiB0byB3aGF0IEkgbWVhbnQgaW4gZmlyc3QgbWFpbC4NCk90aGVyd2lzZSBpdCBzb3VuZHMg
Y29uZnVzaW5nLg0KSSdsbCB0cnkgdG8gd3JpdGUgYSBtb3JlIGRldGFpbGVkIG9uZSBpbiBuZXh0
IGZldyBkYXlzLg0KDQo+ID4gQnV0IGV2ZW4gd2l0aCAxLzIvMyBpbiBwbGFjZSBJIHRoaW5rIGl0
IHdvdWxkIGJlICBhIGdvb2Qgc3RlcCBmb3J3YXJkLg0KPiA+IFByb2JhYmx5IHdvcnRoIHRvIHN0
YXJ0IHdpdGggMS8yLzMgZmlyc3QgYW5kIHRoZW4gc2VlIGhvdyBkaWZmaWN1bHQgaXQNCj4gPiB3
b3VsZCBiZSB0byBzd2l0Y2ggdG8gMS8yLg0KPiANCj4gV2hhdCBkbyB5b3UgbWVhbiBieSBzd2l0
Y2ggdG8gMS8yPw0KDQpXaGVuIHdlJ2xsIGhhdmUganVzdDoNCjEuIHJ0ZV9ldGhfZGV2IChoaWRk
ZW4gaW4gLmMpDQoyLiBydGVfZXRoX2Rldl9idXJzdCAodmlzaWJsZSkNCg0KQW5kIG5vIHNwZWNp
ZmljIHB1YmxpYyBzdHJ1Y3QvYXJyYXkgZm9yIGNhbGxiYWNrcyAtIHRoZXkgd2lsbCBiZSBoaWRk
ZW4gaW4gcnRlX2V0aF9kZXYuDQoNCj4gDQo+IElmIHdlIGtlZXAgaGF2aW5nIGlubGluZSBmdW5j
dGlvbnMsIGFuZCBzcGxpdCBzdHJ1Y3QgYXMgYWJvdmUgdGhyZWUgc3RydWN0cywgd2UNCj4gY2Fu
IG9ubHkgaGlkZSAxLCBhbmQgMi8zIHdpbGwgYmUgc3RpbGwgdmlzaWJsZSB0byBhcHBzIGJlY2F1
c2Ugb2YgaW5saW5lDQo+IGZ1bmN0aW9ucy4gVGhpcyB3YXkgd2Ugd2lsbCBiZSBhYmxlIHRvIGhp
ZGUgbW9yZSBzdGlsbCBoYXZpbmcgc2FtZSBwZXJmb3JtYW5jZS4NCg0KSSB1bmRlcnN0YW5kIHRo
YXQsIGFuZCBhcyBJIHNhaWQgYWJvdmUgLSBJIHRoaW5rIGl0IGlzIGEgZ29vZCBzdGVwIGZvcndh
cmQuDQpUaG91Z2ggZXZlbiBiZXR0ZXIgd291bGQgYmUgdG8gaGlkZSBydGVfZXRoX2Rldl9jYiB0
b28uIA0KDQo+IA0KPiA+IERvIHlvdSBwbGFuIHRvIHN0YXJ0IHdvcmtpbmcgb24gaXQ/DQo+ID4N
Cj4gDQo+IFdlIGFyZSBnYXRoZXJpbmcgdGhlIGxpc3Qgb2YgdGhlIHRhc2tzIGZvciB0aGUgQUJJ
IHN0YWJpbGl0eSwgbW9zdCBwcm9iYWJseSB0aGV5DQo+IHdpbGwgYmUgd29ya2VkIG9uIGR1cmlu
ZyB2MjEuMTEuIEkgY2FuIHRha2UgdGhpcyBvbmUuDQoNCkNvb2wsIHBsZWFzZSBrZWVwIG1lIGlu
IGEgbG9vcC4NCkknbGwgdHJ5IHRvIGZyZWUgc29tZSBjeWNsZXMgZm9yIDIxLjExIHRvIGdldCBp
bnZvbHZlZCBhbmQgaGVscCAoaWYgbmVlZGVkIG9mZi1jb3Vyc2UpLg0KS29uc3RhbnRpbg0KDQoN
Cg==