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 50DF9A0552;
	Wed,  1 Jun 2022 03:01:09 +0200 (CEST)
Received: from [217.70.189.124] (localhost [127.0.0.1])
	by mails.dpdk.org (Postfix) with ESMTP id 0A85E40A84;
	Wed,  1 Jun 2022 03:01:09 +0200 (CEST)
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on2077.outbound.protection.outlook.com [40.107.21.77])
 by mails.dpdk.org (Postfix) with ESMTP id AFD2740150
 for <dev@dpdk.org>; Wed,  1 Jun 2022 03:01:07 +0200 (CEST)
ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass;
 b=L2BT+EgqCpevYJ3a4A8hjoC/2lSMe5YO8xJetJjUDKw8/NJIQ2yHeggHFVJPAubsX2Q3QIBioMG8/hLJvqNnydLGvYhKu2m+LYOUToYxKUl+J+KI+aoFt6Cv4Vkx+UaM6lXvlxXFtHkrW7xWlrdnypM/MvXTe8JGjzRw4VeLCzhSachw9voLuUrZy76g486zjfzkzjrACLPSkuXcFMP3tAEARVf/L/4/9WaKN6j2ORVUzxJm8NGRShhM+jj8P3RmWKK9nUQoLq0OGyLaCXAo3x+Qciew5m2NWeaT9Wlm4vS8FTsCHrfWTZRg2fBadXRMAyW8rt2Zfi45H619rLQ5sA==
ARC-Message-Signature: i=2; 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=8+TI3fsZc8ci4Z35tCI/obUVC/c5EHAibzlIRDOnIrQ=;
 b=lY0K+XMqEwTly85RhmCOP7kn5Ld4YZ0pw+Z+h6AWQKyR1JYxESQXjPcLqx4xEnT3FovHInaq4HM4zxU1ZlVpYqtlb22SqrT13qklxaEvFSo4A2S4ofuMnLFBcgZuQk6MNu+JDSIS4ND7BTJ6KrscG6cowQS/wSAqVlDSizaG9y3O062d4PW81pl9BuWaARNlVNziJzJ+eVTPL4SVjEtwtq4YHUYm0lG5C/CiUsiW+2CcIREPy6wi4HTKdnWeQcyNS+77sf8cqVaMrQqC6edJq7ZylDJdvmW25hwoxPlknlBcXFEiAfZRhYoz+YPOykjbhqlIfIUaWcsKMsybUnP5jA==
ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is
 63.35.35.123) smtp.rcpttodomain=dpdk.org smtp.mailfrom=arm.com; dmarc=pass
 (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass
 (signature was verified) header.d=armh.onmicrosoft.com; arc=pass (0 oda=1
 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com]
 dmarc=[1,1,header.from=arm.com])
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=8+TI3fsZc8ci4Z35tCI/obUVC/c5EHAibzlIRDOnIrQ=;
 b=jt0tlGG8ZBP9RF02qec1WB4MaB+pbAb+XKUDMkkSvGXwBuLw3h+B/SOLMMz23Gtphe04+cdjMZKFxHuUzUg7pQ2jhHiSq7WADFeC7+CHYZItEJAqbEVECcSL0nNvvdS/2Yrul3VnzGHvIX/gIY9Vn2gg5jmg6EdCR1qNWXWo5pA=
Received: from DBBPR09CA0026.eurprd09.prod.outlook.com (2603:10a6:10:d4::14)
 by AM0PR08MB3732.eurprd08.prod.outlook.com (2603:10a6:208:109::27) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5293.13; Wed, 1 Jun
 2022 01:01:05 +0000
Received: from DBAEUR03FT023.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:d4:cafe::96) by DBBPR09CA0026.outlook.office365.com
 (2603:10a6:10:d4::14) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5293.13 via Frontend
 Transport; Wed, 1 Jun 2022 01:01:05 +0000
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass 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;
 pr=C
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT023.mail.protection.outlook.com (100.127.142.253) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.5314.12 via Frontend Transport; Wed, 1 Jun 2022 01:01:04 +0000
Received: ("Tessian outbound 4ab5a053767b:v120");
 Wed, 01 Jun 2022 01:01:04 +0000
X-CR-MTA-TID: 64aa7808
Received: from d81e164dcbfc.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 E92B8DF9-8B3A-4871-B456-C874D2BFE985.1; 
 Wed, 01 Jun 2022 01:00:53 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id d81e164dcbfc.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 01 Jun 2022 01:00:53 +0000
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=W1kIhGkAH8XqPvsDuehbvN2qb3WKODcSW7tHPfoHwMP7d/nBG4E2V8PMv9Sg4dTyv7ZKs/+hNFH3HPlKBfGHgZz9AaC09xAyGxP9o/4HcbffVA61Nz5578rOfL8fs11UqZdcUbYq7omBOeybqVCEiiR77dYgHzQL4syw5fgGZVLr+4jiHQizOiQ1KwXxKFMxFPCKU9KGzbUieNdamDqTaJgQb6RB7kdtb4Aj8yQQd23Bu0jx5hTR8vgsGRt5OPsMVYCXV3WXjnJDbqXFNMG7nAtnq96yWTaIEk7JKGp/iWLhkVF8XmNE1Euwl7GdFO0CwTBFRLF/57NeEuj/29I9+Q==
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=8+TI3fsZc8ci4Z35tCI/obUVC/c5EHAibzlIRDOnIrQ=;
 b=UVk2A7KvPqgZK9D3P0ZDUt26jdi2lWqji3FrLUu/bQVwCmXYT3xDqhRsTNzxDnh1jWqlTLlA3T9hSAkK4c9I/7g7msmU/MvONR+0mwhPbMzIJTdlIJYo3iB+kwP0FXHp9xLbIY2H/inJFnfwMNZSmhDrlDCk0JlNtOfoeNNo0KBLThkkcONHBri4250ox44eu9xX48XS1AXKuweG02rNnw09Va99YqymKQAMzuv/HTqVI++AtKOo44wXdjiDjLEEoInzvrz8sR3BYO6BOJelUg132WM94ZvEfPBwUSzjuBzziDaJ2cRj4vzgX0n6qpkjnYMpAh9RvRw5dsT9dIBmiA==
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=8+TI3fsZc8ci4Z35tCI/obUVC/c5EHAibzlIRDOnIrQ=;
 b=jt0tlGG8ZBP9RF02qec1WB4MaB+pbAb+XKUDMkkSvGXwBuLw3h+B/SOLMMz23Gtphe04+cdjMZKFxHuUzUg7pQ2jhHiSq7WADFeC7+CHYZItEJAqbEVECcSL0nNvvdS/2Yrul3VnzGHvIX/gIY9Vn2gg5jmg6EdCR1qNWXWo5pA=
Received: from DBAPR08MB5814.eurprd08.prod.outlook.com (2603:10a6:10:1b1::6)
 by AM8PR08MB5796.eurprd08.prod.outlook.com (2603:10a6:20b:1d1::22) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5293.13; Wed, 1 Jun
 2022 01:00:51 +0000
Received: from DBAPR08MB5814.eurprd08.prod.outlook.com
 ([fe80::f99f:a9c3:fe71:368a]) by DBAPR08MB5814.eurprd08.prod.outlook.com
 ([fe80::f99f:a9c3:fe71:368a%7]) with mapi id 15.20.5314.012; Wed, 1 Jun 2022
 01:00:51 +0000
From: Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com>
To: Konstantin Ananyev <konstantin.v.ananyev@yandex.ru>, Feifei Wang
 <Feifei.Wang2@arm.com>
CC: nd <nd@arm.com>, "dev@dpdk.org" <dev@dpdk.org>, Ruifeng Wang
 <Ruifeng.Wang@arm.com>, "honnappanagarahalli@gmail.com"
 <honnappanagarahalli@gmail.com>, nd <nd@arm.com>
Subject: RE: [PATCH v1 0/5] Direct re-arming of buffers on receive side
Thread-Topic: [PATCH v1 0/5] Direct re-arming of buffers on receive side
Thread-Index: AQHYaOu4EddlA+nThkio6GVpTNxEK60tSI6AgAEaNPCABeakgIAFaLvA
Date: Wed, 1 Jun 2022 01:00:51 +0000
Message-ID: <DBAPR08MB58140BB59B5E7D35C5D27D3298DF9@DBAPR08MB5814.eurprd08.prod.outlook.com>
References: <20220420081650.2043183-1-feifei.wang2@arm.com>
 <20220516061012.618787-1-feifei.wang2@arm.com>
 <5320c9dd-8f53-155e-7900-ff02bfa11b4d@yandex.ru>
 <DBAPR08MB5814F42CC1B941B41C002EC498D79@DBAPR08MB5814.eurprd08.prod.outlook.com>
 <48994ee9-74b4-7fcc-f61b-c8f45686a031@yandex.ru>
In-Reply-To: <48994ee9-74b4-7fcc-f61b-c8f45686a031@yandex.ru>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ts-tracking-id: 52CE85F9D16A1D4CA75F663EEC233DF3.0
x-checkrecipientchecked: true
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-MS-Office365-Filtering-Correlation-Id: 919e04fb-f19c-4f07-961e-08da436a3443
x-ms-traffictypediagnostic: AM8PR08MB5796:EE_|DBAEUR03FT023:EE_|AM0PR08MB3732:EE_
X-Microsoft-Antispam-PRVS: <AM0PR08MB3732B90CF574331186B4FB4198DF9@AM0PR08MB3732.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original: bcOfYXJe58yzH34vL7og2U5qFV9pl7r/c7UlhT9SAx1r7PGoRjgJ0vh6QGDgelW1fq6TKGwfYbUpV3MDHboj2nUx2aZ5tIGGKKd2tufXNb28CiGWSFe6Gs9EXC+nD2gQvU6nH6yslCJDjaj4dVSpclgOzFBxf7zN2X03xqj4QXcDRcaaGbWyHIrUZwWYo8eLarUGYwy2QJ/yitWJbgrDyTRsBudwYypNUyuJ7T5cvoXaS+4FgRmnTl3ql/YojHfSDQhHckolVk6cwclo9EwXUWtbXKZXaRzIXxpCNKM4kJTg41oG61Krgp3NoknAmu5jppQURs6kptkdmsoVxMwZwvebQ3hOfd29AwJTT1UQh2WZev4GRGfXe5qKNcQh2KJBOTqy1hRtFF5QaMxDCVbjhWOrVm+GEcBFyQ3Fwc3nMWbXbK2LTLv0sy+R12ZXku2hsBPZVhea3XKQ39xvn4B2Jso3R0vDsN4yOeE8/m1Voxdl/OmMGNL/dRJWZCDXqMyprgoIW0rpf/UbUMfjSDh/z5rlpfjDK4MXVOS3EX3rYM8dnUcZSBToeuG8YTJ8KFPgqnLYlpUF/fQCEHWp5oUe7aDYjKd8qE7gnJNUbUGr0x9MK0/IwuLUwyNDxVcVttg+JQH2ZRfxy7S3t/Mn/vYx9ZMYwdDg0dqw82ndna1sxuxmFOeLHmrlPnFbLjGieeeURecvKwRja8JYlyQ0SGuYUFEZ0T2KQGRTT5YgwnIYs8ZIS+NRCmQRDoLKbWNDNzCZ
X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en;
 SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DBAPR08MB5814.eurprd08.prod.outlook.com;
 PTR:; CAT:NONE;
 SFS:(13230001)(4636009)(366004)(9686003)(38100700002)(66446008)(6636002)(8936002)(54906003)(316002)(64756008)(7696005)(66476007)(6506007)(110136005)(76116006)(4326008)(66946007)(8676002)(33656002)(122000001)(26005)(66556008)(38070700005)(2906002)(30864003)(71200400001)(52536014)(508600001)(186003)(5660300002)(966005)(86362001)(55016003)(83380400001)(23180200003);
 DIR:OUT; SFP:1101; 
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR08MB5796
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT023.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs: fbb94f37-7bc7-425b-e7eb-08da436a2c75
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: X59HK4WmnW628h4X/CGKL7NLzrsdJ6eBRULQlwf59dnW98WFBDvL3YYK0itfPEv2EWX7OnV1K/Fyodzbbv1rTywJj5NtLddUym5NhJB0rEz+O93f3WiXaqHFeAAqya5YmN+hZYF02VhXNpkulaDUd4IDqKN1Dd9E3g3BrTQpUEe0VJVhY63iq4MfSdmW3YbUGE/YBlO8IdGyG5Cd2aq0fZHtOk8F/fuSXCRBCR9E4HEe/U71iLi6TYpK/P66kjUKz8L61H7nGOQT5UnqxbS7KOb1buSqcBVuDwz4/SAW0jAWG+w+5RzzD/bF9ELjXBejF4YffiotwgyHMMhiqhc8daIHHMbmMKYaQ4PUxDC4G09BMiUuZQrUfQr6iuC5pm2Cm5DZDj+zT0D0nYkpN+sgNH91xARwcedy9LNlIXjq/rbT1jeYpprmUecSoPua6ro13v5OhHvLNCQCI+d7CcWE81e29aIaqTOetDcL4rdOcqv6Wo8odgqEa6ZTu4z5+rvzd2U0YVYOmxYgq/mEz+EsrqlOfBIaR9bnhDD+ThuNC5WMa18U1ZdwaM/OoIaBJhjznxC5EK/DT+e904rSAiNhLWY6jkW2MZNJMQI7cXIFGbz4blfx1M18hFsS8WBBPepCfB9FW1P0qzn7bqdqbKWL91l3W1eGMdt2TArxLVtH1/Qwu4dqCqX0T/5p+49N5UDWW/W/suWMZF6JSQSKjAb/vg==
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;
 SFS:(13230001)(4636009)(36840700001)(40470700004)(46966006)(40460700003)(6636002)(47076005)(30864003)(5660300002)(33656002)(36860700001)(83380400001)(110136005)(54906003)(336012)(316002)(966005)(2906002)(70586007)(4326008)(70206006)(55016003)(82310400005)(8936002)(86362001)(356005)(9686003)(26005)(81166007)(52536014)(8676002)(508600001)(7696005)(186003)(6506007)(23180200003);
 DIR:OUT; SFP:1101; 
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jun 2022 01:01:04.8629 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 919e04fb-f19c-4f07-961e-08da436a3443
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-AuthSource: DBAEUR03FT023.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR08MB3732
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

PHNuaXA+DQo+ID4NCj4gPj4NCj4gPj4gW2tvbnN0YW50aW4udi5hbmFueWV2QHlhbmRleC5ydSBh
cHBlYXJzIHNpbWlsYXIgdG8gc29tZW9uZSB3aG8NCj4gPj4gcHJldmlvdXNseSBzZW50IHlvdSBl
bWFpbCwgYnV0IG1heSBub3QgYmUgdGhhdCBwZXJzb24uIExlYXJuIHdoeSB0aGlzDQo+ID4+IGNv
dWxkIGJlIGEgcmlzayBhdCBodHRwczovL2FrYS5tcy9MZWFybkFib3V0U2VuZGVySWRlbnRpZmlj
YXRpb24uXQ0KPiA+Pg0KPiA+PiAxNi8wNS8yMDIyIDA3OjEwLCBGZWlmZWkgV2FuZyDQv9C40YjQ
tdGCOg0KPiA+Pj4NCj4gPj4+Pj4gQ3VycmVudGx5LCB0aGUgdHJhbnNtaXQgc2lkZSBmcmVlcyB0
aGUgYnVmZmVycyBpbnRvIHRoZSBsY29yZQ0KPiA+Pj4+PiBjYWNoZSBhbmQgdGhlIHJlY2VpdmUg
c2lkZSBhbGxvY2F0ZXMgYnVmZmVycyBmcm9tIHRoZSBsY29yZSBjYWNoZS4NCj4gPj4+Pj4gVGhl
IHRyYW5zbWl0IHNpZGUgdHlwaWNhbGx5IGZyZWVzIDMyIGJ1ZmZlcnMgcmVzdWx0aW5nIGluDQo+
ID4+Pj4+IDMyKjg9MjU2QiBvZiBzdG9yZXMgdG8gbGNvcmUgY2FjaGUuIFRoZSByZWNlaXZlIHNp
ZGUgYWxsb2NhdGVzIDMyDQo+ID4+Pj4+IGJ1ZmZlcnMgYW5kIHN0b3JlcyB0aGVtIGluIHRoZSBy
ZWNlaXZlIHNpZGUgc29mdHdhcmUgcmluZywNCj4gPj4+Pj4gcmVzdWx0aW5nIGluIDMyKjg9MjU2
QiBvZiBzdG9yZXMgYW5kIDI1NkIgb2YgbG9hZCBmcm9tIHRoZSBsY29yZSBjYWNoZS4NCj4gPj4+
Pj4NCj4gPj4+Pj4gVGhpcyBwYXRjaCBwcm9wb3NlcyBhIG1lY2hhbmlzbSB0byBhdm9pZCBmcmVl
aW5nIHRvL2FsbG9jYXRpbmcNCj4gPj4+Pj4gZnJvbSB0aGUgbGNvcmUgY2FjaGUuIGkuZS4gdGhl
IHJlY2VpdmUgc2lkZSB3aWxsIGZyZWUgdGhlIGJ1ZmZlcnMNCj4gPj4+Pj4gZnJvbSB0cmFuc21p
dCBzaWRlIGRpcmVjdGx5IGludG8gaXQncyBzb2Z0d2FyZSByaW5nLiBUaGlzIHdpbGwNCj4gPj4+
Pj4gYXZvaWQgdGhlIDI1NkIgb2YgbG9hZHMgYW5kIHN0b3JlcyBpbnRyb2R1Y2VkIGJ5IHRoZSBs
Y29yZSBjYWNoZS4NCj4gPj4+Pj4gSXQgYWxzbyBmcmVlcyB1cCB0aGUgY2FjaGUgbGluZXMgdXNl
ZCBieSB0aGUgbGNvcmUgY2FjaGUuDQo+ID4+Pj4+DQo+ID4+Pj4+IEhvd2V2ZXIsIHRoaXMgc29s
dXRpb24gcG9zZXMgc2V2ZXJhbCBjb25zdHJhaW50czoNCj4gPj4+Pj4NCj4gPj4+Pj4gMSlUaGUg
cmVjZWl2ZSBxdWV1ZSBuZWVkcyB0byBrbm93IHdoaWNoIHRyYW5zbWl0IHF1ZXVlIGl0IHNob3Vs
ZA0KPiA+Pj4+PiB0YWtlIHRoZSBidWZmZXJzIGZyb20uIFRoZSBhcHBsaWNhdGlvbiBsb2dpYyBk
ZWNpZGVzIHdoaWNoDQo+ID4+Pj4+IHRyYW5zbWl0IHBvcnQgdG8gdXNlIHRvIHNlbmQgb3V0IHRo
ZSBwYWNrZXRzLiBJbiBtYW55IHVzZSBjYXNlcw0KPiA+Pj4+PiB0aGUgTklDIG1pZ2h0IGhhdmUg
YSBzaW5nbGUgcG9ydCAoWzFdLCBbMl0sIFszXSksIGluIHdoaWNoIGNhc2UgYQ0KPiA+Pj4+PiBn
aXZlbiB0cmFuc21pdCBxdWV1ZSBpcyBhbHdheXMgbWFwcGVkIHRvIGEgc2luZ2xlIHJlY2VpdmUg
cXVldWUNCj4gPj4+Pj4gKDE6MSBSeCBxdWV1ZTogVHggcXVldWUpLiBUaGlzIGlzIGVhc3kgdG8g
Y29uZmlndXJlLg0KPiA+Pj4+Pg0KPiA+Pj4+PiBJZiB0aGUgTklDIGhhcyAyIHBvcnRzICh0aGVy
ZSBhcmUgc2V2ZXJhbCByZWZlcmVuY2VzKSwgdGhlbiB3ZQ0KPiA+Pj4+PiB3aWxsIGhhdmUNCj4g
Pj4+Pj4gMToyIChSWCBxdWV1ZTogVFggcXVldWUpIG1hcHBpbmcgd2hpY2ggaXMgc3RpbGwgZWFz
eSB0byBjb25maWd1cmUuDQo+ID4+Pj4+IEhvd2V2ZXIsIGlmIHRoaXMgaXMgZ2VuZXJhbGl6ZWQg
dG8gJ04nIHBvcnRzLCB0aGUgY29uZmlndXJhdGlvbg0KPiA+Pj4+PiBjYW4gYmUgbG9uZy4gTW9y
ZSBvdmVyIHRoZSBQTUQgd291bGQgaGF2ZSB0byBzY2FuIGEgbGlzdCBvZg0KPiA+Pj4+PiB0cmFu
c21pdCBxdWV1ZXMgdG8gcHVsbCB0aGUgYnVmZmVycyBmcm9tLg0KPiA+Pj4NCj4gPj4+PiBKdXN0
IHRvIHJlLWl0ZXJhdGUgc29tZSBnZW5lcmljIGNvbmNlcm5zIGFib3V0IHRoaXMgcHJvcG9zYWw6
DQo+ID4+Pj4gICAgLSBXZSBlZmZlY3RpdmVseSBsaW5rIFJYIGFuZCBUWCBxdWV1ZXMgLSB3aGVu
IHRoaXMgZmVhdHVyZSBpcyBlbmFibGVkLA0KPiA+Pj4+ICAgICAgdXNlciBjYW4ndCBzdG9wIFRY
IHF1ZXVlIHdpdGhvdXQgc3RvcHBpbmcgbGlua2VkIFJYIHF1ZXVlIGZpcnN0Lg0KPiA+Pj4+ICAg
ICAgUmlnaHQgbm93IHVzZXIgaXMgZnJlZSB0byBzdGFydC9zdG9wIGFueSBxdWV1ZXMgYXQgaGlz
IHdpbGwuDQo+ID4+Pj4gICAgICBJZiB0aGF0IGZlYXR1cmUgd2lsbCBhbGxvdyB0byBsaW5rIHF1
ZXVlcyBmcm9tIGRpZmZlcmVudCBwb3J0cywNCj4gPj4+PiAgICAgIHRoZW4gZXZlbiBwb3J0cyB3
aWxsIGJlY29tZSBkZXBlbmRlbnQgYW5kIHVzZXIgd2lsbCBoYXZlIHRvIHBheSBleHRyYQ0KPiA+
Pj4+ICAgICAgY2FyZSB3aGVuIG1hbmFnaW5nIHN1Y2ggcG9ydHMuDQo+ID4+Pg0KPiA+Pj4gW0Zl
aWZlaV0gV2hlbiBkaXJlY3QgcmVhcm0gZW5hYmxlZCwgdGhlcmUgYXJlIHR3byBwYXRoIGZvciB0
aHJlYWQgdG8NCj4gPj4+IGNob29zZS4gSWYgdGhlcmUgYXJlIGVub3VnaCBUeCBmcmVlZCBidWZm
ZXJzLCBSeCBjYW4gcHV0IGJ1ZmZlcnMNCj4gPj4+IGZyb20gVHguDQo+ID4+PiBPdGhlcndpc2Us
IFJ4IHdpbGwgcHV0IGJ1ZmZlcnMgZnJvbSBtZW1wb29sIGFzIHVzdWFsLiBUaHVzLCB1c2VycyBk
bw0KPiA+Pj4gbm90IG5lZWQgdG8gcGF5IG11Y2ggYXR0ZW50aW9uIG1hbmFnaW5nIHBvcnRzLg0K
PiA+Pg0KPiA+PiBXaGF0IEkgYW0gdGFsa2luZyBhYm91dDogcmlnaHQgbm93IGRpZmZlcmVudCBw
b3J0IG9yIGRpZmZlcmVudCBxdWV1ZXMNCj4gPj4gb2YgdGhlIHNhbWUgcG9ydCBjYW4gYmUgdHJl
YXRlZCBhcyBpbmRlcGVuZGVudCBlbnRpdGllczoNCj4gPj4gaW4gZ2VuZXJhbCB1c2VyIGlzIGZy
ZWUgdG8gc3RhcnQvc3RvcCAoYW5kIGV2ZW4gcmVjb25maWd1cmUgaW4gc29tZQ0KPiA+PiBjYXNl
cykgb25lIGVudGl0eSB3aXRob3V0IG5lZWQgdG8gc3RvcCBvdGhlciBlbnRpdHkuDQo+ID4+IEku
RSB1c2VyIGNhbiBzdG9wIGFuZCByZS1jb25maWd1cmUgVFggcXVldWUgd2hpbGUga2VlcCByZWNl
aXZpbmcNCj4gPj4gcGFja2V0cyBmcm9tIFJYIHF1ZXVlLg0KPiA+PiBXaXRoIGRpcmVjdCByZS1h
cm0gZW5hYmxlZCwgSSB0aGluayBpdCB3b3VsZG4ndCBiZSBwb3NzaWJsZSBhbnkgbW9yZToNCj4g
Pj4gYmVmb3JlIHN0b3BwaW5nL3JlY29uZmlndXJpbmcgVFggcXVldWUgdXNlciB3b3VsZCBoYXZl
IG1ha2Ugc3VyZSB0aGF0DQo+ID4+IGNvcnJlc3BvbmRpbmcgUlggcXVldWUgd291bGRuJ3QgYmUg
dXNlZCBieSBkYXRhcGF0aC4NCj4gPiBJIGFtIHRyeWluZyB0byB1bmRlcnN0YW5kIHRoZSBwcm9i
bGVtIGJldHRlci4gRm9yIHRoZSBUWCBxdWV1ZSB0byBiZSBzdG9wcGVkLA0KPiB0aGUgdXNlciBt
dXN0IGhhdmUgYmxvY2tlZCB0aGUgZGF0YSBwbGFuZSBmcm9tIGFjY2Vzc2luZyB0aGUgVFggcXVl
dWUuDQo+IA0KPiBTdXJlbHkgaXQgaXMgdXNlciByZXNwb25zaWJpbGl0eSB0bm90IHRvIGNhbGwg
dHhfYnVyc3QoKSBmb3Igc3RvcHBlZC9yZWxlYXNlZCBxdWV1ZS4NCj4gVGhlIHByb2JsZW0gaXMg
dGhhdCB3aGlsZSBUWCBmb3IgdGhhdCBxdWV1ZSBpcyBzdG9wcGVkLCBSWCBmb3IgcmVsYXRlZCBx
dWV1ZSBzdGlsbA0KPiBjYW4gY29udGludWUuDQo+IFNvIHJ4X2J1cnN0KCkgd2lsbCB0cnkgdG8g
cmVhZC9tb2RpZnkgVFggcXVldWUgZGF0YSwgdGhhdCBtaWdodCBiZSBhbHJlYWR5IGZyZWVkLA0K
PiBvciBzaW11bHRhbmVvdXNseSBtb2RpZmllZCBieSBjb250cm9sIHBhdGguDQpVbmRlcnN0b29k
LCBhZ3JlZSBvbiB0aGUgaXNzdWUNCg0KPiANCj4gQWdhaW4sIGl0IGFsbCBjYW4gYmUgbWl0aWdh
dGVkIGJ5IGNhcmVmdWxseSByZS1kZXNpZ25pbmcgYW5kIG1vZGlmeWluZyBjb250cm9sIGFuZA0K
PiBkYXRhLXBhdGggaW5zaWRlIHVzZXIgYXBwIC0gYnkgZG9pbmcgZXh0cmEgY2hlY2tzIGFuZCBz
eW5jaHJvbml6YXRpb25zLCBldGMuDQo+IEJ1dCBmcm9tIHByYWN0aWNhbCBwb2ludCAtIEkgcHJl
c3VtZSBtb3N0IG9mIHVzZXJzIHNpbXBseSB3b3VsZCBhdm9pZCB1c2luZyB0aGlzDQo+IGZlYXR1
cmUgZHVlIGFsbCBwb3RlbnRpYWwgcHJvYmxlbXMgaXQgbWlnaHQgY2F1c2UuDQpUaGF0IGlzIHN1
YmplY3RpdmUsIGl0IGFsbCBkZXBlbmRzIG9uIHRoZSBwZXJmb3JtYW5jZSBpbXByb3ZlbWVudHMg
dXNlcnMgc2VlIGluIHRoZWlyIGFwcGxpY2F0aW9uLg0KSU1PLCB0aGUgcGVyZm9ybWFuY2UgaW1w
cm92ZW1lbnQgc2VlbiB3aXRoIHRoaXMgcGF0Y2ggaXMgd29ydGggZmV3IGNoYW5nZXMuDQoNCj4g
DQo+ID4gTGlrZSBGZWlmZWkgc2F5cywgdGhlIFJYIHNpZGUgaGFzIHRoZSBub3JtYWwgcGFja2V0
IGFsbG9jYXRpb24gcGF0aCBzdGlsbCBhdmFpbGFibGUuDQo+ID4gQWxzbyB0aGlzIHNvdW5kcyBs
aWtlIGEgY29ybmVyIGNhc2UgdG8gbWUsIHdlIGNhbiBoYW5kbGUgdGhpcyB0aHJvdWdoIGNoZWNr
cyBpbg0KPiB0aGUgcXVldWVfc3RvcCBBUEkuDQo+IA0KPiBEZXBlbmRzLg0KPiBpZiBpdCB3b3Vs
ZCBiZSBhbGxvd2VkIHRvIGxpbmsgcXVldWVzIG9ubHkgZnJvbSB0aGUgc2FtZSBwb3J0LCB0aGVu
IHllcywgZXh0cmENCj4gY2hlY2tzIGZvciBxdWV1ZS1zdG9wIG1pZ2h0IGJlIGVub3VnaC4NCj4g
QXMgcmlnaHQgbm93IERQREsgZG9lc24ndCBhbGxvdyB1c2VyIHRvIGNoYW5nZSBudW1iZXIgb2Yg
cXVldWVzIHdpdGhvdXQNCj4gZGV2X3N0b3AoKSBmaXJzdC4NCj4gVGhvdWdoIGlmIGl0IHdvdWxk
IGJlIGFsbG93ZWQgdG8gbGluayBxdWV1ZXMgZnJvbSBkaWZmZXJlbnQgcG9ydHMsIHRoZW4gc2l0
dWF0aW9uDQo+IHdpbGwgYmUgbXVjaCB3b3JzZS4NCj4gUmlnaHQgbm93IHBvcnRzIGFyZSB0b3Rh
bGx5IGluZGVwZW5kZW50IGVudGl0aWVzIChleGNlcHQgc29tZSBzcGVjaWFsIGNhc2VzIGxpa2UN
Cj4gbGluay1ib25kaW5nLCBldGMuKS4NCj4gQXMgb25lIHBvcnQgY2FuIGtlZXAgZG9pbmcgUlgv
VFgsIHNlY29uZCBvbmUgY2FuIGJlIHN0b3BwZWQsIHJlLWNvbmZndXJlZCwNCj4gZXZlbiBkZXRh
Y2hlZCwgYW5kIG5ld2x5IGF0dGFjaGVkIGRldmljZSBtaWdodCByZS11c2Ugc2FtZSBwb3J0IG51
bWJlci4NCkkgc2VlIHRoaXMgYXMgYSBzaW1pbGFyIHJlc3RyaWN0aW9uIHRvIHRoZSBvbmUgZGlz
Y3Vzc2VkIGFib3ZlLiBEbyB5b3Ugc2VlIGFueSBpc3N1ZXMgaWYgd2UgZW5mb3JjZSB0aGlzIHdp
dGggY2hlY2tzPw0KDQo+IA0KPiANCj4gPj4NCj4gPj4+DQo+ID4+Pj4gLSB2ZXJ5IGxpbWl0ZWQg
dXNhZ2Ugc2NlbmFyaW8gLSBpdCB3aWxsIGhhdmUgYSBwb3NpdGl2ZSBlZmZlY3Qgb25seQ0KPiA+
Pj4+ICAgICB3aGVuIHdlIGhhdmUgYSBmaXhlZCBmb3J3YXJkaW5nIG1hcHBpbmc6IGFsbCAob3Ig
bmVhcmx5IGFsbCkgcGFja2V0cw0KPiA+Pj4+ICAgICBmcm9tIHRoZSBSWCBxdWV1ZSBhcmUgZm9y
d2FyZGVkIGludG8gdGhlIHNhbWUgVFggcXVldWUuDQo+ID4+Pg0KPiA+Pj4gW0ZlaWZlaV0gQWx0
aG91Z2ggdGhlIHVzYWdlIHNjZW5hcmlvIGlzIGxpbWl0ZWQsIHRoaXMgdXNhZ2Ugc2NlbmFyaW8N
Cj4gPj4+IGhhcyBhIHdpZGUgcmFuZ2Ugb2YgYXBwbGljYXRpb25zLCBzdWNoIGFzIE5JQyB3aXRo
IG9uZSBwb3J0Lg0KPiA+Pg0KPiA+PiB5ZXMsIHRoZXJlIGFyZSBOSUNzIHdpdGggb25lIHBvcnQs
IGJ1dCBubyBndWFyYW50ZWUgdGhlcmUgd291bGRuJ3QgYmUNCj4gPj4gc2V2ZXJhbCBzdWNoIE5J
Q3Mgd2l0aGluIHRoZSBzeXN0ZW0uDQo+ID4gV2hhdCBJIHNlZSBpbiBteSBpbnRlcmFjdGlvbnMg
aXMsIGEgc2luZ2xlIE5JQy9EUFUgaXMgdW5kZXIgdXRpbGl6ZWQgZm9yIGEgMg0KPiBzb2NrZXQg
c3lzdGVtLiBTb21lIGFyZSBhZGRpbmcgbW9yZSBzb2NrZXRzIHRvIHRoZSBzeXN0ZW0gdG8gYmV0
dGVyIHV0aWxpemUgdGhlDQo+IERQVS4gVGhlIE5JQyBiYW5kd2lkdGggY29udGludWVzIHRvIGdy
b3cgc2lnbmlmaWNhbnRseS4gSSBkbyBub3QgdGhpbmsgdGhlcmUgd2lsbA0KPiBiZSBhIG11bHRp
LURQVSBwZXIgc2VydmVyIHNjZW5hcmlvLg0KPiANCj4gDQo+IEludGVyZXN0aW5nLi4uIGZyb20g
bXkgZXhwZXJpZW5jZSBpdCBpcyB2aXNhLXZlcnNhOg0KPiBpbiBtYW55IGNhc2VzIDIwMEdiL3Mg
aXMgbm90IHRoYXQgbXVjaCB0aGVzZSBkYXlzIHRvIHNhdHVyYXRlIG1vZGVybiAyIHNvY2tldA0K
PiB4ODYgc2VydmVyLg0KPiBUaG91Z2ggSSBzdXBwb3NlIGEgbG90IGRlcGVuZHMgb24gcGFydGlj
dWxhciBIVyBhbmQgYWN0dWFsIHdvcmtsb2FkLg0KPiANCj4gPg0KPiA+Pg0KPiA+Pj4gRnVydHJo
ZXJtb3JlLCBJIHRoaW5rIHRoaXMgaXMgYSB0cmFkZW9mZiBiZXR3ZWVuIHBlcmZvcm1hbmNlIGFu
ZA0KPiA+Pj4gZmxleGliaWxpdHkuDQo+ID4+PiBPdXIgZ29hbCBpcyB0byBhY2hpZXZlIGJlc3Qg
cGVyZm9ybWFuY2UsIHRoaXMgbWVhbnMgd2UgbmVlZCB0byBnaXZlDQo+ID4+PiB1cCBzb21lIGZs
ZXhpYmlsaXR5IGRlY2lzaXZlbHkuIEZvciBleGFtcGxlIG9mICdGQVNUX0ZSRUUgTW9kZScsIGl0
DQo+ID4+PiBkZWxldGVzIG1vc3Qgb2YgdGhlIGJ1ZmZlciBjaGVjayAocmVmY250ID4gMSwgZXh0
ZXJuYWwgYnVmZmVyLCBjaGFpbg0KPiA+Pj4gYnVmZmVyKSwgY2hvb3NlcyBhIHNob3Jlc3QgcGF0
aCwgYW5kIHRoZW4gYWNoaWV2ZSBzaWduaWZpY2FudA0KPiA+Pj4gcGVyZm9ybWFuY2UNCj4gPj4g
aW1wcm92ZW1lbnQuDQo+ID4+Pj4gV29uZGVyIGRpZCB5b3UgaGFkIGEgY2hhbmNlIHRvIGNvbnNp
ZGVyIG1lbXBvb2wtY2FjaGUgWkMgQVBJLA0KPiA+Pj4+IHNpbWlsYXIgdG8gb25lIHdlIGhhdmUg
Zm9yIHRoZSByaW5nPw0KPiA+Pj4+IEl0IHdvdWxkIGFsbG93IHVzIG9uIFRYIGZyZWUgcGF0aCB0
byBhdm9pZCBjb3B5aW5nIG1idWZzIHRvDQo+ID4+Pj4gdGVtcG9yYXJ5IGFycmF5IG9uIHRoZSBz
dGFjay4NCj4gPj4+PiBJbnN0ZWFkIHdlIGNhbiBwdXQgdGhlbSBzdHJhaWdodCBmcm9tIFRYIFNX
IHJpbmcgdG8gdGhlIG1lbXBvb2wgY2FjaGUuDQo+ID4+Pj4gVGhhdCBzaG91bGQgc2F2ZSBleHRy
YSBzdG9yZS9sb2FkIGZvciBtYnVmIGFuZCBtaWdodCBoZWxwIHRvDQo+ID4+Pj4gYWNoaWV2ZSBz
b21lIHBlcmZvcm1hbmNlIGdhaW4gd2l0aG91dCBieS1wYXNzaW5nIG1lbXBvb2wuDQo+ID4+Pj4g
SXQgcHJvYmFibHkgd291bGRuJ3QgYmUgYXMgZmFzdCBhcyB3aGF0IHlvdSBwcm9wb3NpbmcsIGJ1
dCBtaWdodCBiZQ0KPiA+Pj4+IGZhc3QgZW5vdWdoIHRvIGNvbnNpZGVyIGFzIGFsdGVybmF0aXZl
Lg0KPiA+Pj4+IEFnYWluLCBpdCB3b3VsZCBiZSBhIGdlbmVyaWMgb25lLCBzbyB3ZSBjYW4gYXZv
aWQgYWxsIHRoZXNlDQo+ID4+Pj4gaW1wbGljYXRpb25zIGFuZCBsaW1pdGF0aW9ucy4NCj4gPj4+
DQo+ID4+PiBbRmVpZmVpXSBJIHRoaW5rIHRoaXMgaXMgYSBnb29kIHRyeS4gSG93ZXZlciwgdGhl
IG1vc3QgaW1wb3J0YW50DQo+ID4+PiB0aGluZyBpcyB0aGF0IGlmIHdlIGNhbiBieXBhc3MgdGhl
IG1lbXBvb2wgZGVjaXNpdmVseSB0byBwdXJzdWUgdGhlDQo+ID4+PiBzaWduaWZpY2FudCBwZXJm
b3JtYW5jZSBnYWlucy4NCj4gPj4NCj4gPj4gSSB1bmRlcnN0YW5kIHRoZSBpbnRlbnRpb24sIGFu
ZCBJIHBlcnNvbmFsbHkgdGhpbmsgdGhpcyBpcyB3cm9uZyBhbmQNCj4gPj4gZGFuZ2Vyb3VzIGF0
dGl0dWRlLg0KPiA+PiBXZSBoYXZlIG1lbXBvb2wgYWJzdHJhY3Rpb24gaW4gcGxhY2UgZm9yIHZl
cnkgZ29vZCByZWFzb24uDQo+ID4+IFNvIHdlIG5lZWQgdG8gdHJ5IHRvIGltcHJvdmUgbWVtcG9v
bCBwZXJmb3JtYW5jZSAoYW5kIEFQSSBpZg0KPiA+PiBuZWNlc3NhcnkpIGF0IGZpcnN0IHBsYWNl
LCBub3QgdG8gYXZvaWQgaXQgYW5kIGJyZWFrIG91ciBvd24gcnVsZXMgYW5kDQo+IHJlY29tbWVu
ZGF0aW9ucy4NCj4gPiBUaGUgYWJzdHJhY3Rpb24gY2FuIGJlIHRob3VnaHQgb2YgYXQgYSBoaWdo
ZXIgbGV2ZWwuIGkuZS4gdGhlIGRyaXZlciBtYW5hZ2VzIHRoZQ0KPiBidWZmZXIgYWxsb2NhdGlv
bi9mcmVlIGFuZCBpcyBoaWRkZW4gZnJvbSB0aGUgYXBwbGljYXRpb24uIFRoZSBhcHBsaWNhdGlv
biBkb2VzDQo+IG5vdCBuZWVkIHRvIGJlIGF3YXJlIG9mIGhvdyB0aGVzZSBjaGFuZ2VzIGFyZSBp
bXBsZW1lbnRlZC4NCj4gPg0KPiA+Pg0KPiA+Pg0KPiA+Pj4gRm9yIFpDLCB0aGVyZSBtYXliZSBh
IHByb2JsZW0gZm9yIGl0IGluIGk0MGUuIFRoZSByZWFzb24gZm9yIHRoYXQNCj4gPj4+IHB1dCBU
eCBidWZmZXJzIGludG8gdGVtcG9yYXJ5IGlzIHRoYXQgaTQwZV90eF9lbnRyeSBpbmNsdWRlcyBi
dWZmZXINCj4gPj4+IHBvaW50ZXIgYW5kIGluZGV4Lg0KPiA+Pj4gVGh1cyB3ZSBjYW5ub3QgcHV0
IFR4IFNXX3JpbmcgZW50cnkgaW50byBtZW1wb29sIGRpcmVjdGx5LCB3ZSBuZWVkDQo+ID4+PiB0
byBmaXJzdGx0IGV4dHJhY3QgbWJ1ZiBwb2ludGVyLiBGaW5hbGx5LCB0aG91Z2ggd2UgdXNlIFpD
LCB3ZSBzdGlsbA0KPiA+Pj4gY2FuJ3QgYXZvaWQgdXNpbmcgYSB0ZW1wb3Jhcnkgc3RhY2sgdG8g
ZXh0cmFjdCBUeCBidWZmZXIgcG9pbnRlcnMuDQo+ID4+DQo+ID4+IFdoZW4gdGFsa2luZyBhYm91
dCBaQyBBUEkgZm9yIG1lbXBvb2wgY2FjaGUgSSBtZWFudCBzb21ldGhpbmcgbGlrZToNCj4gPj4g
dm9pZCAqKiBtZW1wb29sX2NhY2hlX3B1dF96Y19zdGFydChzdHJ1Y3QgcnRlX21lbXBvb2xfY2Fj
aGUgKm1jLA0KPiA+PiB1aW50MzJfdCAqbmJfZWxlbSwgdWludDMyX3QgZmxhZ3MpOyB2b2lkDQo+
ID4+IG1lbXBvb2xfY2FjaGVfcHV0X3pjX2ZpbmlzaChzdHJ1Y3QNCj4gPj4gcnRlX21lbXBvb2xf
Y2FjaGUgKm1jLCB1aW50MzJfdCBuYl9lbGVtKTsgaS5lLiBfc3RhcnRfIHdpbGwgcmV0dXJuDQo+
ID4+IHVzZXIgYSBwb2ludGVyIGluc2lkZSBtcC1jYWNoZSB3aGVyZSB0byBwdXQgZnJlZSBlbGVt
cyBhbmQgbWF4IG51bWJlcg0KPiA+PiBvZiBzbG90cyB0aGF0IGNhbiBiZSBzYWZlbHkgZmlsbGVk
Lg0KPiA+PiBfZmluaXNoXyB3aWxsIHVwZGF0ZSBtYy0+bGVuLg0KPiA+PiBBcyBhbiBleGFtcGxl
Og0KPiA+Pg0KPiA+PiAvKiBleHBlY3QgdG8gZnJlZSBOIG1idWZzICovDQo+ID4+IHVpbnQzMl90
IG4gPSBOOw0KPiA+PiB2b2lkICoqcCA9IG1lbXBvb2xfY2FjaGVfcHV0X3pjX3N0YXJ0KG1jLCAm
biwgLi4uKTsNCj4gPj4NCj4gPj4gLyogZnJlZSB1cCB0byBuIGVsZW1zICovDQo+ID4+IGZvciAo
aSA9IDA7IGkgIT0gbjsgaSsrKSB7DQo+ID4+DQo+ID4+ICAgICAvKiBnZXQgbmV4dCBmcmVlIG1i
dWYgZnJvbSBzb21ld2hlcmUgKi8NCj4gPj4gICAgIG1iID0gZXh0cmFjdF9hbmRfcHJlZnJlZV9t
YnVmKC4uLik7DQo+ID4+DQo+ID4+ICAgICAvKiBubyBtb3JlIGZyZWUgbWJ1ZnMgZm9yIG5vdyAq
Lw0KPiA+PiAgICAgaWYgKG1iID09IE5VTEwpDQo+ID4+ICAgICAgICBicmVhazsNCj4gPj4NCj4g
Pj4gICAgIHBbaV0gPSBtYjsNCj4gPj4gfQ0KPiA+Pg0KPiA+PiAvKiBmaW5hbGl6ZSBaQyBwdXQs
IHdpdGggX2lfIGZyZWVkIGVsZW1zICovDQo+ID4+IG1lbXBvb2xfY2FjaGVfcHV0X3pjX2Zpbmlz
aChtYywgaSk7DQo+ID4+DQo+ID4+IFRoYXQgd2F5LCBJIHRoaW5rIHdlIGNhbiBvdmVyY29tZSB0
aGUgaXNzdWUgd2l0aCBpNDBlX3R4X2VudHJ5IHlvdQ0KPiA+PiBtZW50aW9uZWQgYWJvdmUuIFBs
dXMgaXQgbWlnaHQgYmUgdXNlZnVsIGluIG90aGVyIHNpbWlsYXIgcGxhY2VzLg0KPiA+Pg0KPiA+
PiBBbm90aGVyIGFsdGVybmF0aXZlIGlzIG9idmlvdXNseSB0byBzcGxpdCBpNDBlX3R4X2VudHJ5
IGludG8gdHdvDQo+ID4+IHN0cnVjdHMgKG9uZSBmb3IgbWJ1Ziwgc2Vjb25kIGZvciBpdHMgbWV0
YWRhdGEpIGFuZCBoYXZlIGEgc2VwYXJhdGUNCj4gPj4gYXJyYXkgZm9yIGVhY2ggb2YgdGhlbS4N
Cj4gPj4gVGhvdWdoIHdpdGggdGhhdCBhcHByb2FjaCB3ZSBuZWVkIHRvIG1ha2Ugc3VyZSBubyBw
ZXJmIGRyb3BzIHdpbGwgYmUNCj4gPj4gaW50cm9kdWNlZCwgcGx1cyBwcm9iYWJseSBtb3JlIGNv
ZGUgY2hhbmdlcyB3aWxsIGJlIHJlcXVpcmVkLg0KPiA+IENvbW1pdCAnNTE3MWI0ZWU2YjYiIGFs
cmVhZHkgZG9lcyB0aGlzIChpbiBhIGRpZmZlcmVudCB3YXkpLCBidXQganVzdCBmb3INCj4gQVZY
NTEyLiBVbmZvcnR1bmF0ZWx5LCBpdCBkb2VzIG5vdCByZWNvcmQgYW55IHBlcmZvcm1hbmNlIGlt
cHJvdmVtZW50cy4gV2UNCj4gY291bGQgcG9ydCB0aGlzIHRvIEFybSBORU9OIGFuZCBsb29rIGF0
IHRoZSBwZXJmb3JtYW5jZS4NCg0K