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 881CE45BAC;
	Wed, 23 Oct 2024 09:56:02 +0200 (CEST)
Received: from mails.dpdk.org (localhost [127.0.0.1])
	by mails.dpdk.org (Postfix) with ESMTP id 7CAB94065D;
	Wed, 23 Oct 2024 09:56:02 +0200 (CEST)
Received: from mx0b-0016f401.pphosted.com (mx0b-0016f401.pphosted.com
 [67.231.156.173])
 by mails.dpdk.org (Postfix) with ESMTP id 9344B402E4
 for <dev@dpdk.org>; Wed, 23 Oct 2024 09:56:01 +0200 (CEST)
Received: from pps.filterd (m0045851.ppops.net [127.0.0.1])
 by mx0b-0016f401.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 49N2D9rw023020;
 Wed, 23 Oct 2024 00:56:00 -0700
Received: from nam11-co1-obe.outbound.protection.outlook.com
 (mail-co1nam11lp2170.outbound.protection.outlook.com [104.47.56.170])
 by mx0b-0016f401.pphosted.com (PPS) with ESMTPS id 42em2c174p-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Wed, 23 Oct 2024 00:55:59 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;
 b=cfRYUmV9OwqB+aLuPTmK9QlKrKaxmYoXh7MG9381uo51BHoI0CL5ZjW6wmOXtvjMQ6lWI44mXp6ErO8mKHSgIn6YxZAQsiU8myJbXg9i84FesUpioMGkdSJmrC511PleIfMfgaCMlGwxiczWBQnIErk6AA+KSvIqAzboZ48CWtK3FijxKgD0TqZ0MJiLBHdWiHBb9AstJGdTenz33uU4DFVWE7cCT58NN1K0OTRLzJ9MfhFJARmiYssiQJTypxrbj+Vu3P25RK7PYPq7yTVsG7zuXoZ2At5BO75BDo5G0yY/BSxw/y6QQ4Z8TILZev1ZQGIshqbyyHDntpmxOHo+ZA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; 
 s=arcselector10001;
 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=iA8PaQJJ78niumY6RglIrem4lzng1WclF9f4LRE464s=;
 b=fDaB9V6WM9hZWWrkRscU6UTj5kePiABsSRMc7MiJlsjuMuX3t/3FNGp3yZ0nC/xaYIOzhx74LaozAKjQ/XQVJhUxOfXm+gkR1DWvqxVbgHWdzlnnWzANhb1+xire3sO79DQHi+a4c1wFiQR1wzU2dIS+WD42tafzhEqg/jK1dWxyT8VxgFy17DqBre3GGZK1okgGEPjyOyQeAaYVckzdD35qPWDEVmBqI0G5oWbfuSuUSmNo9gSXleB2YBsIWt/2YG5c4sMnHiu+kMkDV1dwHOnD6RpUoaqZTSvxGZmB5JDEwWIc3aGZCMzDLi9l8va33/0zCIllENuOp1biXE6aSw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=marvell.com; dmarc=pass action=none header.from=marvell.com;
 dkim=pass header.d=marvell.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com;
 s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=iA8PaQJJ78niumY6RglIrem4lzng1WclF9f4LRE464s=;
 b=re88ojq8Zbwfhc8QPHBNz1wfzFVBjGXn73tRghe65XhECcR/TDz3nBCEjxslJGBh1O8wRGe5V8jT7n6501csjx/JhC2aGSqcMIae+UFm5UxgTzomLQ4lGSaulCk4+84mszn5pl0YBG7oGDFZpydKpN5Qlwdn+D5v3//zPh8qZvk=
Received: from CO6PR18MB4484.namprd18.prod.outlook.com (2603:10b6:5:359::9) by
 BL1PR18MB4296.namprd18.prod.outlook.com (2603:10b6:208:30b::24) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8093.16; Wed, 23 Oct
 2024 07:55:56 +0000
Received: from CO6PR18MB4484.namprd18.prod.outlook.com
 ([fe80::3c98:dd36:4897:a51d]) by CO6PR18MB4484.namprd18.prod.outlook.com
 ([fe80::3c98:dd36:4897:a51d%5]) with mapi id 15.20.8093.014; Wed, 23 Oct 2024
 07:55:56 +0000
From: Akhil Goyal <gakhil@marvell.com>
To: Arkadiusz Kusztal <arkadiuszx.kusztal@intel.com>, "dev@dpdk.org"
 <dev@dpdk.org>
CC: "brian.dooley@intel.com" <brian.dooley@intel.com>
Subject: RE: [EXTERNAL] [PATCH v6 2/3] crypto/qat: add sm2
 encryption/decryption function
Thread-Topic: [EXTERNAL] [PATCH v6 2/3] crypto/qat: add sm2
 encryption/decryption function
Thread-Index: AQHbJL/p9xwJlm2NrUCXjqdUDdvjCLKT+EWQ
Date: Wed, 23 Oct 2024 07:55:56 +0000
Message-ID: <CO6PR18MB4484D04B1AA9F0E998A449EAD84D2@CO6PR18MB4484.namprd18.prod.outlook.com>
References: <20241022190600.81169-1-arkadiuszx.kusztal@intel.com>
 <20241022190600.81169-3-arkadiuszx.kusztal@intel.com>
In-Reply-To: <20241022190600.81169-3-arkadiuszx.kusztal@intel.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: CO6PR18MB4484:EE_|BL1PR18MB4296:EE_
x-ms-office365-filtering-correlation-id: b22d8e33-0c35-4070-d641-08dcf338203e
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0; ARA:13230040|376014|1800799024|366016|38070700018;
x-microsoft-antispam-message-info: =?utf-8?B?UUtBVFJCT3N6TkNnMkdQOUFVaXJzMnV5MGJ3czlvQ2dkY1hoMGY5M3BBU1NV?=
 =?utf-8?B?L0UxcitmTWZ4cWJyLzlMajJPRERyRm1nb2dlRzcxQ1F0clZXazlIRmFGcHlH?=
 =?utf-8?B?U01nWmIyWWhkZDhUbmU2RURlZkl5TWcvc2pQNVlmQzBkL0pTUzdTcUZZVFh0?=
 =?utf-8?B?cjdyQkFvN29FQjF3TDhNSUJaQkJMaGoxU3JnejQ0YjduYmtFRCsyUzZwL0lo?=
 =?utf-8?B?MmgraW5wZ0xGU1FmR2ZNVU9OcDZkelN1K3ZwZWZMaW90UExVL2s5eThNay9V?=
 =?utf-8?B?b2lZSGgwT2NKaGVuY1hZNFQyUE9SQ0FNNHFKZ2gwYzdBdnlNbjZ0dnJvTGhO?=
 =?utf-8?B?ak9oVjQ0K0lzZzYxUmFGUnJya0k5VG4xZ3hZOUdGdlkxdTFmMkNES2dzK3NP?=
 =?utf-8?B?RVE1eWFWUlB2bVRQdWhHcWQ2b09NbXZENHVVVVNrSmZlNzNrKzdYQnFPS2FX?=
 =?utf-8?B?WmlyaGxoeEZERDd3U0QyRTgrSjJ2RnVBSTVrcWY3L3QwbUpYM3pKUWYzSnBW?=
 =?utf-8?B?cWRxKzFETDVpNVVaZlYyYUNpYUtzc0J2NkJLbzZWQjE1OHEra1BsSFYwM2pM?=
 =?utf-8?B?UndRK21BdDkwWlVRSTJUNERQbDBGRUcybmNEcHpDRTBNaFlnbWFRUlZqN1R1?=
 =?utf-8?B?SllGK3VrY1A4UmtUMjM2ZWF2eDNlTE9KTldNelUvZW9acm5CSExZTm5JNnNr?=
 =?utf-8?B?bEkyR0dBRGQzNUhtbEs3RHZZRDFxYU5yMFdSMXBBKzNqSzN3MUJWVEdxRlFO?=
 =?utf-8?B?U2p5QnIyWVdkemN2Y1JSYWxGdXROdVRzTTlnNXU1UmFCaGExZlJVb2NTUlR4?=
 =?utf-8?B?NmtjaTdMQTlxRk9UMnlYc21nM1J1Syt3aUhHTTN6WTM2Znd2cmtNWGJOZnF0?=
 =?utf-8?B?M0gxeldRM2pOZGFJTysvK0J1NkZiWnVGUU5YN3RpSTVuV2JFYTBLYUlNM1Br?=
 =?utf-8?B?cnVIOHJoNThzSWF6OVFYKytpTXdiL013czdoVUw5VitvQjU3QTJJSU4rK0cy?=
 =?utf-8?B?R0t1OS9qM3pYNkk2dFRFWUI1Q2Mvcm5USHVua1N5RVZxdGF3MHJuYzdNT1pv?=
 =?utf-8?B?Um5TRllZZEt0aXFvMnRYa3A1NldKVVkvL3AvSlFYaTM0czAvMzdxMUlDQTRC?=
 =?utf-8?B?N3dyeHF2c2c3RGw3VUpIaTRrbGZFYkVzbzZMcHFIcDNUM1Y4QndBSWo2L3ZC?=
 =?utf-8?B?ZVl6WGpvZXJBTEFVOHAyU2JVdzRlcjkvTjEvWVRCMWllcHdCNkZzeVZwcmE4?=
 =?utf-8?B?ZmdidkZEc1dGeDhVYUZiOGd5SVBzclBWZG1uN2dVSzFUYkRMUHA3aXpuc3Zw?=
 =?utf-8?B?UlNBc3BkRE1iSGJvcHAydlU1SzdZbXNvd3NUcVl2N0NGcW9OSEg3UVZ0aWcx?=
 =?utf-8?B?QWhoTlN2V1VjS0NyYTJ0ZHNIcnFsenN5ak03YUU3K2NZeVQ4YmJLQWMwZmxo?=
 =?utf-8?B?RU12d3pSQ2ozc1Q0eENrU2RQMm5CYTBBY2wzQUdnM2gyVVRRVFlrTjY4ZW1I?=
 =?utf-8?B?elFDMkJGbnk3aFFkK1FkT2hhOFYvVDdtRkVQNDE0RG50a3JuRjE2OEh6VGx5?=
 =?utf-8?B?TGkwNW9OZ0FMVnFxeThScjJoc1UvVjk0dE4rY2w4SnpzRmhjRWR0dUU5OG9D?=
 =?utf-8?B?dnBmTU02UTYxUzRBN1plR1lGRlFyZE1JR05uYVhRSU1ucDlqbnE2cFdBRXBD?=
 =?utf-8?B?WnBrWUxoNWNacElRYjJGZ25uK3RGVWdIYjBnTEVQZE5KWGVtMlVTeENwUE1N?=
 =?utf-8?B?dUJZbnpqelZvQ0hucGRiTC9BUEdTZTJ4U0IyQ09nQmRRdjh5VHFQY25IWjEw?=
 =?utf-8?Q?c9SfPAWXXjELX/nhoaj6djbh1wB/10yg+cdPA=3D?=
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:CO6PR18MB4484.namprd18.prod.outlook.com; PTR:; CAT:NONE;
 SFS:(13230040)(376014)(1800799024)(366016)(38070700018); DIR:OUT; SFP:1102; 
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: =?utf-8?B?WHRRU1ZZeXpYSWZjNWZzTHlLVjV2RjRLWThzbndqVzlQMWtwazlscG00M25M?=
 =?utf-8?B?emNGcGJDMThzY0tkNnV6RGNWbTNRNkZweFJ3aU1RaXFKelFJNTlJVXhrcjBD?=
 =?utf-8?B?dGtoTnRxRkdROEgwM09XTUNvY3RZbWhhN1R4ZnJ1bXNBRXB4WUZISDRvbHdY?=
 =?utf-8?B?NjA1M0VBWGdYVm9YVU9LWDdkcmhqNXpSQk1ZRld2b0pFY29wZHpzeTlMNE5W?=
 =?utf-8?B?akhIa3JjSWpMRFhMZmx5QmtyYVA0WUZCVnZWNTVROFVoODcyVXZuaEJNdXpS?=
 =?utf-8?B?KzNiQVFZN0xxQkZ2QnRVM0FESzRQMENRRzBVajdiSDlNOENFVU9RQXRhcTAr?=
 =?utf-8?B?ZU9HQUhrdXdyNTdsU1cwUk5XOTNvL3dVR3BNNE52cStBenYvMlVmMXF6Z01S?=
 =?utf-8?B?NnBYeU1Ob01Lb28ySUU5ZFgvRVVMdHlta01jUmFZVXB6ZVBUSjZ6OFp2eGRr?=
 =?utf-8?B?WFJ1blMvcmlMZnV2N2ZvZWJXUUwxdG5TekJodkJPUnJZQTdNNkdZOUs0QVF0?=
 =?utf-8?B?UTROeTZIakdiekhCaEE1MEowaW55dkdDYWxHWS95RDhtSzFvN0tvU1lRTlhj?=
 =?utf-8?B?WjRKeVBUSVZQMnpnRDd6cGRkdFB5ZzlBZXZXMVlIaVdMYjVFYXJ0bk9OaEVJ?=
 =?utf-8?B?K3dHaDMzMlJyOXIrckg4cXp5aWJYYTR0L0pncmQxbmNERUdZeVZURG1oaEFt?=
 =?utf-8?B?TXFBSmpld3dDY3psZi93VEpPeXQvY2JIcGVnczJteWNNRHJFYTlSVXorMmMz?=
 =?utf-8?B?YjZSL0ZlbDQvYzNLLzA4bWxSRGh6RU9COXo1YU90K3o5WTRvcWFTL2JtMDVx?=
 =?utf-8?B?dGhrVXZCRHE3RmZkSzhhL0RET3JKb1RmcnNVQzJKbXAyTFlqQlRQKzZhMVFV?=
 =?utf-8?B?Z21ra2RWY2F1Um13dk1GSlI5NjViV1FZQysrKzZWeThrOFdDM081UnNoNFl4?=
 =?utf-8?B?d0p1OVBTc3paT2ZaNlRjQnNDYlVNRllsTGJ4YUtNZzFZNVd5UlE3dW5aY2pl?=
 =?utf-8?B?b1I5UW1qTHE2WGNSNExWL1BSc0xUQlRHd3hRc1R4ZVpaZ0ZJUW1HTXZDQU5X?=
 =?utf-8?B?SzJCVURGdEJITXlwNE1VYW9YSWoyc1hjTVFRQUFKSFZnYlpUWUNpRHM0bm1o?=
 =?utf-8?B?QjEzdmFYTUE0ZWlDWDJib0lTOVBJNHBQNGduYVQwWTRJdEp1MEgwVmFOTjJX?=
 =?utf-8?B?Lzh4L2lkbjBuMDB4Ym8za3JEMlMyOUJ3NlhpK1JCL09uazM1alVKTEV1NjZ5?=
 =?utf-8?B?OUdHdFBCeHlpNDdhbE5ORW9QVVpLWm5sTlFMMWZvd0tTS0ZpaFpnaEFBbUZv?=
 =?utf-8?B?MXJZcjUwblFRSm81d3RhR1BHZWR4WlZwN3pRYnVmdmNIN0JVNWhLWU80UUNk?=
 =?utf-8?B?MGJKL1pDeUFLNjllemh5QnRPcGkzWmRXc283SGJvc0FiSkZ0U3MwWFpoMGs1?=
 =?utf-8?B?QzBaTnVVbXRzaHRYblNNVExkbFhvY3AzVTQ2NXBOYVRRblo2Znl6S1lORHAx?=
 =?utf-8?B?OTc2S1ZBY25oWXNaT0xkelFoT3dGL25SVFN2K0JMbUJuSGllL0c5a0NITHhL?=
 =?utf-8?B?c01NV1BWTnVCL2VZTWMwR2pWL1JjRW5IeTVnWElQU0NOTnJJMVlFQmJJelRL?=
 =?utf-8?B?SkYzMnhzWjBnSkxNM0lIVkZqY2Y0MlA4KzVkZk5wWDFlcm5CTnk3SXNIeGxq?=
 =?utf-8?B?YkE2REZuTGlIR0VCb0g5Rno0NEoxam9Sbit5amhidDM1R1V2ZVRQVmd2dVht?=
 =?utf-8?B?bWh5WkpkeTVSR3lLSTBIdzF4cXJyRVA4anpBVGRPZ2tpUzlPN1BLbEJOb0dC?=
 =?utf-8?B?Z29DSWVlT0QydjQxa3dYSit4TnlTendvd2Y5WkFnSWJRcFpOdndSTG01TkFV?=
 =?utf-8?B?MVpWdmRoam9KZmV0OGJvbjZTS0NwbUFYM0RjaVNRTmU5eS9LUEZFajZCVHZ3?=
 =?utf-8?B?eUVSV055SUhaSXRhWFk0aHV1MENEUjZ5eVdUTjZQa1pUcmM3MGk1K0JRR3VR?=
 =?utf-8?B?czA1aUkwT2ludjBTQkVIYWdnYnZPOUI5MG5zWnFiakw1MTQ2VkhzSWFZd29S?=
 =?utf-8?B?ZzR3eSsrTVVLYWpoSnYxOFUvRml4bDRqZDJEeDBpc3BDMGFTR3MwZWkrSGg3?=
 =?utf-8?Q?0UaQ=3D?=
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-OriginatorOrg: marvell.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: CO6PR18MB4484.namprd18.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b22d8e33-0c35-4070-d641-08dcf338203e
X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Oct 2024 07:55:56.4437 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 70e1fb47-1155-421d-87fc-2e58f638b6e0
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: 9RcdQj6V8VUscoiQgHLzUHou+L+cnMQPgZO74/s+1fsOq+fYqO0JAU0orx7fNERpMfKrgw4QT9v1rnQV1KZ2Pw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL1PR18MB4296
X-Proofpoint-GUID: zPfNcPCM18ma5DGu3aIuXe5nSmiuyj7g
X-Proofpoint-ORIG-GUID: zPfNcPCM18ma5DGu3aIuXe5nSmiuyj7g
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.680,FMLib:17.12.60.29
 definitions=2024-09-06_09,2024-09-06_01,2024-09-02_01
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

PiBUaGlzIGNvbW1pdCBhZGRzIFNNMiBlbGxpcHRpYyBjdXJ2ZSBiYXNlZCBhc3ltbWV0cmljDQo+
IGVuY3J5cHRpb24gYW5kIGRlY3J5cHRpb24gdG8gdGhlIEludGVsIFF1aWNrQXNzaXN0DQo+IFRl
Y2hub2xvZ3kgUE1ELg0KPiANCj4gU2lnbmVkLW9mZi1ieTogQXJrYWRpdXN6IEt1c3p0YWwgPGFy
a2FkaXVzengua3VzenRhbEBpbnRlbC5jb20+DQo+IC0tLQ0KPiAgZG9jL2d1aWRlcy9jcnlwdG9k
ZXZzL2ZlYXR1cmVzL3FhdC5pbmkgICAgICAgIHwgICAxICsNCj4gIGRvYy9ndWlkZXMvcmVsX25v
dGVzL3JlbGVhc2VfMjRfMTEucnN0ICAgICAgICB8ICAgNCArDQo+ICAuLi4vY29tbW9uL3FhdC9x
YXRfYWRmL2ljcF9xYXRfZndfbW1wX2lkcy5oICAgfCAgIDMgKw0KPiAgZHJpdmVycy9jb21tb24v
cWF0L3FhdF9hZGYvcWF0X3BrZS5oICAgICAgICAgIHwgIDIwICsrKw0KPiAgZHJpdmVycy9jcnlw
dG8vcWF0L3FhdF9hc3ltLmMgICAgICAgICAgICAgICAgIHwgMTQwICsrKysrKysrKysrKysrKysr
LQ0KPiAgNSBmaWxlcyBjaGFuZ2VkLCAxNjIgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkN
Cj4gDQo+IGRpZmYgLS1naXQgYS9kb2MvZ3VpZGVzL2NyeXB0b2RldnMvZmVhdHVyZXMvcWF0Lmlu
aQ0KPiBiL2RvYy9ndWlkZXMvY3J5cHRvZGV2cy9mZWF0dXJlcy9xYXQuaW5pDQo+IGluZGV4IGY0
MWQyOTE1OGYuLjIxOWRkMWUwMTEgMTAwNjQ0DQo+IC0tLSBhL2RvYy9ndWlkZXMvY3J5cHRvZGV2
cy9mZWF0dXJlcy9xYXQuaW5pDQo+ICsrKyBiL2RvYy9ndWlkZXMvY3J5cHRvZGV2cy9mZWF0dXJl
cy9xYXQuaW5pDQo+IEBAIC03MSw2ICs3MSw3IEBAIFpVQyBFSUEzICAgICA9IFkNCj4gIEFFUyBD
TUFDICgxMjgpID0gWQ0KPiAgU00zICAgICAgICAgID0gWQ0KPiAgU00zIEhNQUMgICAgID0gWQ0K
PiArU00yICAgICAgICAgID0gWQ0KDQpTTTIgaXMgYXN5bW1ldHJpYyBhbGdvLiBQbGVhc2UgbW92
ZSBpdCBpbiBhc3ltbWV0cmljIG9uZXMuDQoNCj4gDQo+ICA7DQo+ICA7IFN1cHBvcnRlZCBBRUFE
IGFsZ29yaXRobXMgb2YgdGhlICdxYXQnIGNyeXB0byBkcml2ZXIuDQo+IGRpZmYgLS1naXQgYS9k
b2MvZ3VpZGVzL3JlbF9ub3Rlcy9yZWxlYXNlXzI0XzExLnJzdA0KPiBiL2RvYy9ndWlkZXMvcmVs
X25vdGVzL3JlbGVhc2VfMjRfMTEucnN0DQo+IGluZGV4IDBmOTFkYWU5ODcuLjI0MDQ3NTNlNTQg
MTAwNjQ0DQo+IC0tLSBhL2RvYy9ndWlkZXMvcmVsX25vdGVzL3JlbGVhc2VfMjRfMTEucnN0DQo+
ICsrKyBiL2RvYy9ndWlkZXMvcmVsX25vdGVzL3JlbGVhc2VfMjRfMTEucnN0DQo+IEBAIC0yNDcs
NiArMjQ3LDEwIEBAIE5ldyBGZWF0dXJlcw0KPiAgICBBZGRlZCBhYmlsaXR5IGZvciBub2RlIHRv
IGFkdmVydGlzZSBhbmQgdXBkYXRlIG11bHRpcGxlIHhzdGF0IGNvdW50ZXJzLA0KPiAgICB0aGF0
IGNhbiBiZSByZXRyaWV2ZWQgdXNpbmcgYGBydGVfZ3JhcGhfY2x1c3Rlcl9zdGF0c19nZXRgYC4N
Cj4gDQo+ICsqICoqVXBkYXRlZCB0aGUgUXVpY2tBc3Npc3QgVGVjaG5vbG9neSAoUUFUKSBDcnlw
dG8gUE1ELioqDQo+ICsNCj4gKyAgKiBBZGRlZCBTTTIgZW5jcnlwdGlvbiBhbmQgZGVjcnlwdGlv
biBhbGdvcml0aG1zLg0KPiArDQo+IA0KPiAgUmVtb3ZlZCBJdGVtcw0KPiAgLS0tLS0tLS0tLS0t
LQ0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9jb21tb24vcWF0L3FhdF9hZGYvaWNwX3FhdF9md19t
bXBfaWRzLmgNCj4gYi9kcml2ZXJzL2NvbW1vbi9xYXQvcWF0X2FkZi9pY3BfcWF0X2Z3X21tcF9p
ZHMuaA0KPiBpbmRleCA2MzBjNmUxYTliLi5hYTQ5NjEyY2ExIDEwMDY0NA0KPiAtLS0gYS9kcml2
ZXJzL2NvbW1vbi9xYXQvcWF0X2FkZi9pY3BfcWF0X2Z3X21tcF9pZHMuaA0KPiArKysgYi9kcml2
ZXJzL2NvbW1vbi9xYXQvcWF0X2FkZi9pY3BfcWF0X2Z3X21tcF9pZHMuaA0KPiBAQCAtMTU0Miw2
ICsxNTQyLDkgQEAgaWNwX3FhdF9md19tbXBfZWNkc2FfdmVyaWZ5X2dmcF81MjFfaW5wdXQ6Omlu
IGluDQo+IEBlbmRsaW5rDQo+ICAgKiBAbGkgbm8gb3V0cHV0IHBhcmFtZXRlcnMNCj4gICAqLw0K
PiANCj4gKyNkZWZpbmUgUEtFX0VDU00yX0VOQ1JZUFRJT04gMHgyNTIyMTcyMA0KPiArI2RlZmlu
ZSBQS0VfRUNTTTJfREVDUllQVElPTiAweDIwMTcxNmU2DQo+ICsNCj4gICNkZWZpbmUgUEtFX0xJ
VkVORVNTIDB4MDAwMDAwMDENCj4gIC8qKjwgRnVuY3Rpb25hbGl0eSBJRCBmb3IgUEtFX0xJVkVO
RVNTDQo+ICAgKiBAbGkgMCBpbnB1dCBwYXJhbWV0ZXIocykNCj4gZGlmZiAtLWdpdCBhL2RyaXZl
cnMvY29tbW9uL3FhdC9xYXRfYWRmL3FhdF9wa2UuaA0KPiBiL2RyaXZlcnMvY29tbW9uL3FhdC9x
YXRfYWRmL3FhdF9wa2UuaA0KPiBpbmRleCBmODg5MzJhMjc1Li5hYzA1MWU5NjVkIDEwMDY0NA0K
PiAtLS0gYS9kcml2ZXJzL2NvbW1vbi9xYXQvcWF0X2FkZi9xYXRfcGtlLmgNCj4gKysrIGIvZHJp
dmVycy9jb21tb24vcWF0L3FhdF9hZGYvcWF0X3BrZS5oDQo+IEBAIC0zMzQsNCArMzM0LDI0IEBA
IGdldF9zbTJfZWNkc2FfdmVyaWZ5X2Z1bmN0aW9uKHZvaWQpDQo+ICAJcmV0dXJuIHFhdF9mdW5j
dGlvbjsNCj4gIH0NCj4gDQo+ICtzdGF0aWMgc3RydWN0IHFhdF9hc3ltX2Z1bmN0aW9uDQo+ICtn
ZXRfc20yX2VuY3J5cHRpb25fZnVuY3Rpb24odm9pZCkNCj4gK3sNCj4gKwlzdHJ1Y3QgcWF0X2Fz
eW1fZnVuY3Rpb24gcWF0X2Z1bmN0aW9uID0gew0KPiArCQlQS0VfRUNTTTJfRU5DUllQVElPTiwg
MzINCj4gKwl9Ow0KPiArDQo+ICsJcmV0dXJuIHFhdF9mdW5jdGlvbjsNCj4gK30NCj4gKw0KPiAr
c3RhdGljIHN0cnVjdCBxYXRfYXN5bV9mdW5jdGlvbg0KPiArZ2V0X3NtMl9kZWNyeXB0aW9uX2Z1
bmN0aW9uKHZvaWQpDQo+ICt7DQo+ICsJc3RydWN0IHFhdF9hc3ltX2Z1bmN0aW9uIHFhdF9mdW5j
dGlvbiA9IHsNCj4gKwkJUEtFX0VDU00yX0RFQ1JZUFRJT04sIDMyDQo+ICsJfTsNCj4gKw0KPiAr
CXJldHVybiBxYXRfZnVuY3Rpb247DQo+ICt9DQo+ICsNCj4gICNlbmRpZg0KPiBkaWZmIC0tZ2l0
IGEvZHJpdmVycy9jcnlwdG8vcWF0L3FhdF9hc3ltLmMgYi9kcml2ZXJzL2NyeXB0by9xYXQvcWF0
X2FzeW0uYw0KPiBpbmRleCA5ZTk3NTgyZTIyLi45OTE2ODQxMzVjIDEwMDY0NA0KPiAtLS0gYS9k
cml2ZXJzL2NyeXB0by9xYXQvcWF0X2FzeW0uYw0KPiArKysgYi9kcml2ZXJzL2NyeXB0by9xYXQv
cWF0X2FzeW0uYw0KPiBAQCAtOTMzLDYgKzkzMywxNSBAQCBzbTJfZWNkc2Ffc2lnbl9zZXRfaW5w
dXQoc3RydWN0DQo+IGljcF9xYXRfZndfcGtlX3JlcXVlc3QgKnFhdF9yZXEsDQo+ICAJcWF0X3Jl
cS0+aW5wdXRfcGFyYW1fY291bnQgPSAzOw0KPiAgCXFhdF9yZXEtPm91dHB1dF9wYXJhbV9jb3Vu
dCA9IDI7DQo+IA0KPiArCUhFWERVTVAoIlNNMiBLIHRlc3QiLCBhc3ltX29wLT5zbTIuay5kYXRh
LA0KPiArCQljb29raWUtPmFsZ19ieXRlc2l6ZSk7DQo+ICsJSEVYRFVNUCgiU00yIEsiLCBjb29r
aWUtPmlucHV0X2FycmF5WzBdLA0KPiArCQljb29raWUtPmFsZ19ieXRlc2l6ZSk7DQo+ICsJSEVY
RFVNUCgiU00yIG1zZyIsIGNvb2tpZS0+aW5wdXRfYXJyYXlbMV0sDQo+ICsJCWNvb2tpZS0+YWxn
X2J5dGVzaXplKTsNCj4gKwlIRVhEVU1QKCJTTTIgcGtleSIsIGNvb2tpZS0+aW5wdXRfYXJyYXlb
Ml0sDQo+ICsJCWNvb2tpZS0+YWxnX2J5dGVzaXplKTsNCj4gKw0KPiAgCXJldHVybiBSVEVfQ1JZ
UFRPX09QX1NUQVRVU19TVUNDRVNTOw0KPiAgfQ0KPiANCj4gQEAgLTk4Myw2ICs5OTIsMTE0IEBA
IHNtMl9lY2RzYV9zaWduX2NvbGxlY3Qoc3RydWN0IHJ0ZV9jcnlwdG9fYXN5bV9vcA0KPiAqYXN5
bV9vcCwNCj4gIAlyZXR1cm4gUlRFX0NSWVBUT19PUF9TVEFUVVNfU1VDQ0VTUzsNCj4gIH0NCj4g
DQo+ICtzdGF0aWMgaW50DQo+ICtzbTJfZW5jcnlwdGlvbl9zZXRfaW5wdXQoc3RydWN0IGljcF9x
YXRfZndfcGtlX3JlcXVlc3QgKnFhdF9yZXEsDQo+ICsJc3RydWN0IHFhdF9hc3ltX29wX2Nvb2tp
ZSAqY29va2llLA0KPiArCWNvbnN0IHN0cnVjdCBydGVfY3J5cHRvX2FzeW1fb3AgKmFzeW1fb3As
DQo+ICsJY29uc3Qgc3RydWN0IHJ0ZV9jcnlwdG9fYXN5bV94Zm9ybSAqeGZvcm0pDQo+ICt7DQo+
ICsJY29uc3Qgc3RydWN0IHFhdF9hc3ltX2Z1bmN0aW9uIHFhdF9mdW5jdGlvbiA9DQo+ICsJCWdl
dF9zbTJfZW5jcnlwdGlvbl9mdW5jdGlvbigpOw0KPiArCWNvbnN0IHVpbnQzMl90IHFhdF9mdW5j
X2FsaWduc2l6ZSA9DQo+ICsJCXFhdF9mdW5jdGlvbi5ieXRlc2l6ZTsNCj4gKw0KPiArCVNFVF9Q
S0VfTE4oYXN5bV9vcC0+c20yLmssIHFhdF9mdW5jX2FsaWduc2l6ZSwgMCk7DQo+ICsJU0VUX1BL
RV9MTih4Zm9ybS0+ZWMucS54LCBxYXRfZnVuY19hbGlnbnNpemUsIDEpOw0KPiArCVNFVF9QS0Vf
TE4oeGZvcm0tPmVjLnEueSwgcWF0X2Z1bmNfYWxpZ25zaXplLCAyKTsNCj4gKw0KPiArCWNvb2tp
ZS0+YWxnX2J5dGVzaXplID0gcWF0X2Z1bmN0aW9uLmJ5dGVzaXplOw0KPiArCWNvb2tpZS0+cWF0
X2Z1bmNfYWxpZ25zaXplID0gcWF0X2Z1bmN0aW9uLmJ5dGVzaXplOw0KPiArCXFhdF9yZXEtPnBr
ZV9oZHIuY2RfcGFycy5mdW5jX2lkID0gcWF0X2Z1bmN0aW9uLmZ1bmNfaWQ7DQo+ICsJcWF0X3Jl
cS0+aW5wdXRfcGFyYW1fY291bnQgPSAzOw0KPiArCXFhdF9yZXEtPm91dHB1dF9wYXJhbV9jb3Vu
dCA9IDQ7DQo+ICsNCj4gKwlIRVhEVU1QKCJTTTIgSyIsIGNvb2tpZS0+aW5wdXRfYXJyYXlbMF0s
DQo+ICsJCXFhdF9mdW5jX2FsaWduc2l6ZSk7DQo+ICsJSEVYRFVNUCgiU00yIFEueCIsIGNvb2tp
ZS0+aW5wdXRfYXJyYXlbMV0sDQo+ICsJCXFhdF9mdW5jX2FsaWduc2l6ZSk7DQo+ICsJSEVYRFVN
UCgiU00yIFEueSIsIGNvb2tpZS0+aW5wdXRfYXJyYXlbMl0sDQo+ICsJCXFhdF9mdW5jX2FsaWdu
c2l6ZSk7DQo+ICsNCj4gKwlyZXR1cm4gUlRFX0NSWVBUT19PUF9TVEFUVVNfU1VDQ0VTUzsNCj4g
K30NCj4gKw0KPiArc3RhdGljIHVpbnQ4X3QNCj4gK3NtMl9lbmNyeXB0aW9uX2NvbGxlY3Qoc3Ry
dWN0IHJ0ZV9jcnlwdG9fYXN5bV9vcCAqYXN5bV9vcCwNCj4gKwkJY29uc3Qgc3RydWN0IHFhdF9h
c3ltX29wX2Nvb2tpZSAqY29va2llKQ0KPiArew0KPiArCXVpbnQzMl90IGFsZ19ieXRlc2l6ZSA9
IGNvb2tpZS0+YWxnX2J5dGVzaXplOw0KPiArDQo+ICsJcnRlX21lbWNweShhc3ltX29wLT5zbTIu
YzEueC5kYXRhLCBjb29raWUtPm91dHB1dF9hcnJheVswXSwNCj4gYWxnX2J5dGVzaXplKTsNCj4g
KwlydGVfbWVtY3B5KGFzeW1fb3AtPnNtMi5jMS55LmRhdGEsIGNvb2tpZS0+b3V0cHV0X2FycmF5
WzFdLA0KPiBhbGdfYnl0ZXNpemUpOw0KPiArCXJ0ZV9tZW1jcHkoYXN5bV9vcC0+c20yLmtwLngu
ZGF0YSwgY29va2llLT5vdXRwdXRfYXJyYXlbMl0sDQo+IGFsZ19ieXRlc2l6ZSk7DQo+ICsJcnRl
X21lbWNweShhc3ltX29wLT5zbTIua3AueS5kYXRhLCBjb29raWUtPm91dHB1dF9hcnJheVszXSwN
Cj4gYWxnX2J5dGVzaXplKTsNCj4gKwlhc3ltX29wLT5zbTIuYzEueC5sZW5ndGggPSBhbGdfYnl0
ZXNpemU7DQo+ICsJYXN5bV9vcC0+c20yLmMxLnkubGVuZ3RoID0gYWxnX2J5dGVzaXplOw0KPiAr
CWFzeW1fb3AtPnNtMi5rcC54Lmxlbmd0aCA9IGFsZ19ieXRlc2l6ZTsNCj4gKwlhc3ltX29wLT5z
bTIua3AueS5sZW5ndGggPSBhbGdfYnl0ZXNpemU7DQo+ICsNCj4gKwlIRVhEVU1QKCJjMVt4MV0i
LCBjb29raWUtPm91dHB1dF9hcnJheVswXSwNCj4gKwkJYWxnX2J5dGVzaXplKTsNCj4gKwlIRVhE
VU1QKCJjMVt5XSIsIGNvb2tpZS0+b3V0cHV0X2FycmF5WzFdLA0KPiArCQlhbGdfYnl0ZXNpemUp
Ow0KPiArCUhFWERVTVAoImtwW3hdIiwgY29va2llLT5vdXRwdXRfYXJyYXlbMl0sDQo+ICsJCWFs
Z19ieXRlc2l6ZSk7DQo+ICsJSEVYRFVNUCgia3BbeV0iLCBjb29raWUtPm91dHB1dF9hcnJheVsz
XSwNCj4gKwkJYWxnX2J5dGVzaXplKTsNCj4gKwlyZXR1cm4gUlRFX0NSWVBUT19PUF9TVEFUVVNf
U1VDQ0VTUzsNCj4gK30NCj4gKw0KPiArDQo+ICtzdGF0aWMgaW50DQo+ICtzbTJfZGVjcnlwdGlv
bl9zZXRfaW5wdXQoc3RydWN0IGljcF9xYXRfZndfcGtlX3JlcXVlc3QgKnFhdF9yZXEsDQo+ICsJ
c3RydWN0IHFhdF9hc3ltX29wX2Nvb2tpZSAqY29va2llLA0KPiArCWNvbnN0IHN0cnVjdCBydGVf
Y3J5cHRvX2FzeW1fb3AgKmFzeW1fb3AsDQo+ICsJY29uc3Qgc3RydWN0IHJ0ZV9jcnlwdG9fYXN5
bV94Zm9ybSAqeGZvcm0pDQo+ICt7DQo+ICsJY29uc3Qgc3RydWN0IHFhdF9hc3ltX2Z1bmN0aW9u
IHFhdF9mdW5jdGlvbiA9DQo+ICsJCWdldF9zbTJfZGVjcnlwdGlvbl9mdW5jdGlvbigpOw0KPiAr
CWNvbnN0IHVpbnQzMl90IHFhdF9mdW5jX2FsaWduc2l6ZSA9DQo+ICsJCXFhdF9mdW5jdGlvbi5i
eXRlc2l6ZTsNCj4gKw0KPiArCVNFVF9QS0VfTE4oeGZvcm0tPmVjLnBrZXksIHFhdF9mdW5jX2Fs
aWduc2l6ZSwgMCk7DQo+ICsJU0VUX1BLRV9MTihhc3ltX29wLT5zbTIuYzEueCwgcWF0X2Z1bmNf
YWxpZ25zaXplLCAxKTsNCj4gKwlTRVRfUEtFX0xOKGFzeW1fb3AtPnNtMi5jMS55LCBxYXRfZnVu
Y19hbGlnbnNpemUsIDIpOw0KPiArDQo+ICsJY29va2llLT5hbGdfYnl0ZXNpemUgPSBxYXRfZnVu
Y3Rpb24uYnl0ZXNpemU7DQo+ICsJY29va2llLT5xYXRfZnVuY19hbGlnbnNpemUgPSBxYXRfZnVu
Y3Rpb24uYnl0ZXNpemU7DQo+ICsJcWF0X3JlcS0+cGtlX2hkci5jZF9wYXJzLmZ1bmNfaWQgPSBx
YXRfZnVuY3Rpb24uZnVuY19pZDsNCj4gKwlxYXRfcmVxLT5pbnB1dF9wYXJhbV9jb3VudCA9IDM7
DQo+ICsJcWF0X3JlcS0+b3V0cHV0X3BhcmFtX2NvdW50ID0gMjsNCj4gKw0KPiArCUhFWERVTVAo
ImQiLCBjb29raWUtPmlucHV0X2FycmF5WzBdLA0KPiArCQlxYXRfZnVuY19hbGlnbnNpemUpOw0K
PiArCUhFWERVTVAoImMxW3hdIiwgY29va2llLT5pbnB1dF9hcnJheVsxXSwNCj4gKwkJcWF0X2Z1
bmNfYWxpZ25zaXplKTsNCj4gKwlIRVhEVU1QKCJjMVt5XSIsIGNvb2tpZS0+aW5wdXRfYXJyYXlb
Ml0sDQo+ICsJCXFhdF9mdW5jX2FsaWduc2l6ZSk7DQo+ICsNCj4gKwlyZXR1cm4gUlRFX0NSWVBU
T19PUF9TVEFUVVNfU1VDQ0VTUzsNCj4gK30NCj4gKw0KPiArDQo+ICtzdGF0aWMgdWludDhfdA0K
PiArc20yX2RlY3J5cHRpb25fY29sbGVjdChzdHJ1Y3QgcnRlX2NyeXB0b19hc3ltX29wICphc3lt
X29wLA0KPiArCQljb25zdCBzdHJ1Y3QgcWF0X2FzeW1fb3BfY29va2llICpjb29raWUpDQo+ICt7
DQo+ICsJdWludDMyX3QgYWxnX2J5dGVzaXplID0gY29va2llLT5hbGdfYnl0ZXNpemU7DQo+ICsN
Cj4gKwlydGVfbWVtY3B5KGFzeW1fb3AtPnNtMi5rcC54LmRhdGEsIGNvb2tpZS0+b3V0cHV0X2Fy
cmF5WzBdLA0KPiBhbGdfYnl0ZXNpemUpOw0KPiArCXJ0ZV9tZW1jcHkoYXN5bV9vcC0+c20yLmtw
LnkuZGF0YSwgY29va2llLT5vdXRwdXRfYXJyYXlbMV0sDQo+IGFsZ19ieXRlc2l6ZSk7DQo+ICsJ
YXN5bV9vcC0+c20yLmtwLngubGVuZ3RoID0gYWxnX2J5dGVzaXplOw0KPiArCWFzeW1fb3AtPnNt
Mi5rcC55Lmxlbmd0aCA9IGFsZ19ieXRlc2l6ZTsNCj4gKw0KPiArCUhFWERVTVAoImtwW3hdIiwg
Y29va2llLT5vdXRwdXRfYXJyYXlbMF0sDQo+ICsJCWFsZ19ieXRlc2l6ZSk7DQo+ICsJSEVYRFVN
UCgia3BbeV0iLCBjb29raWUtPm91dHB1dF9hcnJheVsxXSwNCj4gKwkJYWxnX2J5dGVzaXplKTsN
Cj4gKwlyZXR1cm4gUlRFX0NSWVBUT19PUF9TVEFUVVNfU1VDQ0VTUzsNCj4gK30NCj4gKw0KPiAg
c3RhdGljIGludA0KPiAgYXN5bV9zZXRfaW5wdXQoc3RydWN0IGljcF9xYXRfZndfcGtlX3JlcXVl
c3QgKnFhdF9yZXEsDQo+ICAJCXN0cnVjdCBxYXRfYXN5bV9vcF9jb29raWUgKmNvb2tpZSwNCj4g
QEAgLTEwMTUsMTQgKzExMzIsMjAgQEAgYXN5bV9zZXRfaW5wdXQoc3RydWN0IGljcF9xYXRfZndf
cGtlX3JlcXVlc3QNCj4gKnFhdF9yZXEsDQo+ICAJCQkJYXN5bV9vcCwgeGZvcm0pOw0KPiAgCQl9
DQo+ICAJY2FzZSBSVEVfQ1JZUFRPX0FTWU1fWEZPUk1fU00yOg0KPiAtCQlpZiAoYXN5bV9vcC0+
c20yLm9wX3R5cGUgPT0NCj4gLQkJCVJURV9DUllQVE9fQVNZTV9PUF9WRVJJRlkpIHsNCj4gKwkJ
aWYgKGFzeW1fb3AtPnNtMi5vcF90eXBlID09DQo+IFJURV9DUllQVE9fQVNZTV9PUF9FTkNSWVBU
KSB7DQo+ICsJCQlyZXR1cm4gc20yX2VuY3J5cHRpb25fc2V0X2lucHV0KHFhdF9yZXEsIGNvb2tp
ZSwNCj4gKwkJCQlhc3ltX29wLCB4Zm9ybSk7DQo+ICsJCX0gZWxzZSBpZiAoYXN5bV9vcC0+c20y
Lm9wX3R5cGUgPT0NCj4gUlRFX0NSWVBUT19BU1lNX09QX0RFQ1JZUFQpIHsNCj4gKwkJCXJldHVy
biBzbTJfZGVjcnlwdGlvbl9zZXRfaW5wdXQocWF0X3JlcSwgY29va2llLA0KPiArCQkJCWFzeW1f
b3AsIHhmb3JtKTsNCj4gKwkJfSBlbHNlIGlmIChhc3ltX29wLT5zbTIub3BfdHlwZSA9PQ0KPiBS
VEVfQ1JZUFRPX0FTWU1fT1BfVkVSSUZZKSB7DQo+ICAJCQlyZXR1cm4gc20yX2VjZHNhX3Zlcmlm
eV9zZXRfaW5wdXQocWF0X3JlcSwgY29va2llLA0KPiAgCQkJCQkJYXN5bV9vcCwgeGZvcm0pOw0K
PiAtCQl9IGVsc2Ugew0KPiArCQl9IGVsc2UgaWYgKGFzeW1fb3AtPnNtMi5vcF90eXBlID09DQo+
IFJURV9DUllQVE9fQVNZTV9PUF9TSUdOKSB7DQo+ICAJCQlyZXR1cm4gc20yX2VjZHNhX3NpZ25f
c2V0X2lucHV0KHFhdF9yZXEsIGNvb2tpZSwNCj4gIAkJCQkJYXN5bV9vcCwgeGZvcm0pOw0KPiAg
CQl9DQo+ICsJCWJyZWFrOw0KPiAgCWRlZmF1bHQ6DQo+ICAJCVFBVF9MT0coRVJSLCAiSW52YWxp
ZC91bnN1cHBvcnRlZCBhc3ltbWV0cmljIGNyeXB0byB4Zm9ybSIpOw0KPiAgCQlyZXR1cm4gLUVJ
TlZBTDsNCj4gQEAgLTExMTQsNyArMTIzNywxMyBAQCBxYXRfYXN5bV9jb2xsZWN0X3Jlc3BvbnNl
KHN0cnVjdCBydGVfY3J5cHRvX29wDQo+ICpvcCwNCj4gIAljYXNlIFJURV9DUllQVE9fQVNZTV9Y
Rk9STV9FQ0RIOg0KPiAgCQlyZXR1cm4gZWNkaF9jb2xsZWN0KGFzeW1fb3AsIGNvb2tpZSk7DQo+
ICAJY2FzZSBSVEVfQ1JZUFRPX0FTWU1fWEZPUk1fU00yOg0KPiAtCQlyZXR1cm4gc20yX2VjZHNh
X3NpZ25fY29sbGVjdChhc3ltX29wLCBjb29raWUpOw0KPiArCQlpZiAoYXN5bV9vcC0+c20yLm9w
X3R5cGUgPT0NCj4gUlRFX0NSWVBUT19BU1lNX09QX0VOQ1JZUFQpDQo+ICsJCQlyZXR1cm4gc20y
X2VuY3J5cHRpb25fY29sbGVjdChhc3ltX29wLCBjb29raWUpOw0KPiArCQllbHNlIGlmIChhc3lt
X29wLT5zbTIub3BfdHlwZSA9PQ0KPiBSVEVfQ1JZUFRPX0FTWU1fT1BfREVDUllQVCkNCj4gKwkJ
CXJldHVybiBzbTJfZGVjcnlwdGlvbl9jb2xsZWN0KGFzeW1fb3AsIGNvb2tpZSk7DQo+ICsJCWVs
c2UNCj4gKwkJCXJldHVybiBzbTJfZWNkc2Ffc2lnbl9jb2xsZWN0KGFzeW1fb3AsIGNvb2tpZSk7
DQo+ICsNCj4gIAlkZWZhdWx0Og0KPiAgCQlRQVRfTE9HKEVSUiwgIk5vdCBzdXBwb3J0ZWQgeGZv
cm0gdHlwZSIpOw0KPiAgCQlyZXR1cm4gIFJURV9DUllQVE9fT1BfU1RBVFVTX0VSUk9SOw0KPiBA
QCAtMTM4Niw5ICsxNTE1LDggQEAgcWF0X2FzeW1fc2Vzc2lvbl9jb25maWd1cmUoc3RydWN0IHJ0
ZV9jcnlwdG9kZXYNCj4gKmRldiBfX3J0ZV91bnVzZWQsDQo+ICAJY2FzZSBSVEVfQ1JZUFRPX0FT
WU1fWEZPUk1fRUNEU0E6DQo+ICAJY2FzZSBSVEVfQ1JZUFRPX0FTWU1fWEZPUk1fRUNQTToNCj4g
IAljYXNlIFJURV9DUllQVE9fQVNZTV9YRk9STV9FQ0RIOg0KPiAtCQlzZXNzaW9uX3NldF9lYyhx
YXRfc2Vzc2lvbiwgeGZvcm0pOw0KPiAtCQlicmVhazsNCj4gIAljYXNlIFJURV9DUllQVE9fQVNZ
TV9YRk9STV9TTTI6DQo+ICsJCXNlc3Npb25fc2V0X2VjKHFhdF9zZXNzaW9uLCB4Zm9ybSk7DQo+
ICAJCWJyZWFrOw0KPiAgCWRlZmF1bHQ6DQo+ICAJCXJldCA9IC1FTk9UU1VQOw0KPiAtLQ0KPiAy
LjE3LjENCg0K