From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from dpdk.org (dpdk.org [92.243.14.124])
	by inbox.dpdk.org (Postfix) with ESMTP id DF352A058A;
	Fri, 17 Apr 2020 10:18:39 +0200 (CEST)
Received: from [92.243.14.124] (localhost [127.0.0.1])
	by dpdk.org (Postfix) with ESMTP id 67DCE1DE8E;
	Fri, 17 Apr 2020 10:18:39 +0200 (CEST)
Received: from EUR03-AM5-obe.outbound.protection.outlook.com
 (mail-eopbgr30057.outbound.protection.outlook.com [40.107.3.57])
 by dpdk.org (Postfix) with ESMTP id 7510E1D163
 for <dev@dpdk.org>; Fri, 17 Apr 2020 10:18:37 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=y9OWmGUchjcr39uFBmPnoimpyLXH50m5Ur7bKHnFl/8=;
 b=S4/GyLg2dk8ho07F4vHhPEfBu9rKuNW6MGiDU5uKWo3CynIfgMeWCzwxxe83vJ/fhScC6kYeYU6nGNO3QUJM8Dyda9NqeCUyVqOjTKOLS/K1hoxzCDi3v3o3Vd6AboJ+mG0y1J/mUTCHVsouwebI7cACuBP7u0CIjfcCmaWjJc4=
Received: from DB6PR0802CA0046.eurprd08.prod.outlook.com (2603:10a6:4:a3::32)
 by DB7PR08MB3913.eurprd08.prod.outlook.com (2603:10a6:10:7c::20) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2921.27; Fri, 17 Apr
 2020 08:18:35 +0000
Received: from DB5EUR03FT061.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:4:a3:cafe::fd) by DB6PR0802CA0046.outlook.office365.com
 (2603:10a6:4:a3::32) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2921.25 via Frontend
 Transport; Fri, 17 Apr 2020 08:18:35 +0000
Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dpdk.org; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dpdk.org; dmarc=bestguesspass action=none
 header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5EUR03FT061.mail.protection.outlook.com (10.152.21.234) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.2900.18 via Frontend Transport; Fri, 17 Apr 2020 08:18:35 +0000
Received: ("Tessian outbound a45624f5910b:v50");
 Fri, 17 Apr 2020 08:18:35 +0000
X-CR-MTA-TID: 64aa7808
Received: from d5d68cdcd669.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 41FBDC99-9A5F-4738-B387-715C8E175C1B.1; 
 Fri, 17 Apr 2020 08:18:30 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id d5d68cdcd669.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 17 Apr 2020 08:18:30 +0000
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=GqAJZPibFVoCDGgGDlfpGksnz5NLKnwHXppmAjPDuYqtmXqS8cC+lAR0L+0bo+PLShywwTuGOlbS21YLXUK58y/+EdBlwlhsFp+2CrK6X0Elqc3OWuqt98JR5UJtmRpQh/tDwhSl2gKuhNtcp/cqX1CGn0YDxI1lJxA3XFMiHgLTlF4j4zpEYcmy3URHah4Og8H8PiigsPtPpx7s5365vBjlXTv7aMS0R3PylbageECd4wUK+3Tw4Nn4RjmOBA8XTIjhFXSy5whzKFaEZFcoDfIoBlf5DZYFxVPNFGZDfqcFM7M4NLRVHDV4m+kMDXtdoVUACRkr5BI4C6/fzJ8aPw==
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=y9OWmGUchjcr39uFBmPnoimpyLXH50m5Ur7bKHnFl/8=;
 b=BjmTLER4u7uBH0nyveOmC/fQIb/I/CO/EchNLHQyZpnIpAnnS9WctA8PrmH6m+Fi/LPQQMlD4uUkAbYLRPwdkcNmZ7e3SulEJBCnJbJXA5iP9sN9VmwJsTaxDWp5NSX4Uy3zG5uFXDhMMkXCgGsXmPOY+adDC/mUHyelJ29ktXml2V1Qkc1UI0LGTORKVWo5kbc8OeJl7Zv1NWWfAXUfsRZQqqyFTfAwC38H9KsthbWL9BD2RH9c3Hemx0Fc3SVTtFm7ea+dWCH+popI2vw/vMLisfXUeCKyWC1RYlO5ol2yRnaH+Us9RHCjEC2mr30zaNYKT5zfrbRTCvTjJyk5og==
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=y9OWmGUchjcr39uFBmPnoimpyLXH50m5Ur7bKHnFl/8=;
 b=S4/GyLg2dk8ho07F4vHhPEfBu9rKuNW6MGiDU5uKWo3CynIfgMeWCzwxxe83vJ/fhScC6kYeYU6nGNO3QUJM8Dyda9NqeCUyVqOjTKOLS/K1hoxzCDi3v3o3Vd6AboJ+mG0y1J/mUTCHVsouwebI7cACuBP7u0CIjfcCmaWjJc4=
Received: from DB7PR08MB3307.eurprd08.prod.outlook.com (2603:10a6:5:1b::32) by
 DB7PR08MB3802.eurprd08.prod.outlook.com (2603:10a6:10:77::21) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.2900.20; Fri, 17 Apr 2020 08:18:25 +0000
Received: from DB7PR08MB3307.eurprd08.prod.outlook.com
 ([fe80::dc88:50dc:97a2:69bd]) by DB7PR08MB3307.eurprd08.prod.outlook.com
 ([fe80::dc88:50dc:97a2:69bd%7]) with mapi id 15.20.2900.030; Fri, 17 Apr 2020
 08:18:25 +0000
From: Joyce Kong <Joyce.Kong@arm.com>
To: =?utf-8?B?TW9ydGVuIEJyw7hydXA=?= <mb@smartsharesystems.com>
CC: nd <nd@arm.com>, "dev@dpdk.org" <dev@dpdk.org>, "thomas@monjalon.net"
 <thomas@monjalon.net>, "stephen@networkplumber.org"
 <stephen@networkplumber.org>, "david.marchand@redhat.com"
 <david.marchand@redhat.com>, "jerinj@marvell.com" <jerinj@marvell.com>,
 "bruce.richardson@intel.com" <bruce.richardson@intel.com>,
 "ravi1.kumar@amd.com" <ravi1.kumar@amd.com>, "rmody@marvell.com"
 <rmody@marvell.com>, "shshaikh@marvell.com" <shshaikh@marvell.com>,
 "xuanziyang2@huawei.com" <xuanziyang2@huawei.com>,
 "cloud.wangxiaoyun@huawei.com" <cloud.wangxiaoyun@huawei.com>,
 "zhouguoyang@huawei.com" <zhouguoyang@huawei.com>, Honnappa Nagarahalli
 <Honnappa.Nagarahalli@arm.com>, Gavin Hu <Gavin.Hu@arm.com>, Phil Yang
 <Phil.Yang@arm.com>
Thread-Topic: [dpdk-dev] [PATCH v8 1/6] lib/eal: implement the family of
 commonbit operation APIs
Thread-Index: AQHWFCCQ5RnoOtCgCkio4zRlF2vrXKh8+HHw
Date: Fri, 17 Apr 2020 08:18:25 +0000
Message-ID: <DB7PR08MB330776F673655FEE86BD894F92D90@DB7PR08MB3307.eurprd08.prod.outlook.com>
References: <1571125801-45773-1-git-send-email-joyce.kong@arm.com>
 <20200416053853.440-2-joyce.kong@arm.com>
 <98CBD80474FA8B44BF855DF32C47DC35C60F63@smartserver.smartshare.dk>
In-Reply-To: <98CBD80474FA8B44BF855DF32C47DC35C60F63@smartserver.smartshare.dk>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ts-tracking-id: 726f027b-8a04-4b29-8d93-0fabbfb41622.0
x-checkrecipientchecked: true
Authentication-Results-Original: spf=none (sender IP is )
 smtp.mailfrom=Joyce.Kong@arm.com; 
x-originating-ip: [113.29.88.7]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-HT: Tenant
X-MS-Office365-Filtering-Correlation-Id: 0348fba6-91f7-4aab-216c-08d7e2a7ecd4
x-ms-traffictypediagnostic: DB7PR08MB3802:|DB7PR08MB3802:|DB7PR08MB3913:
x-ld-processed: f34e5979-57d9-4aaa-ad4d-b122a662184d,ExtAddr
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS: <DB7PR08MB39131FD58DDEB8577C56900B92D90@DB7PR08MB3913.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:7691;OLM:7691;
x-forefront-prvs: 0376ECF4DD
X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en;
 SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DB7PR08MB3307.eurprd08.prod.outlook.com;
 PTR:; CAT:NONE; SFTY:;
 SFS:(10009020)(4636009)(39860400002)(346002)(376002)(366004)(396003)(136003)(33656002)(5660300002)(7696005)(66574012)(64756008)(66556008)(66476007)(66446008)(66946007)(76116006)(2906002)(26005)(4326008)(52536014)(478600001)(55016002)(71200400001)(55236004)(9686003)(6506007)(53546011)(54906003)(7416002)(86362001)(6916009)(81156014)(8676002)(8936002)(316002)(186003);
 DIR:OUT; SFP:1101; 
received-spf: None (protection.outlook.com: arm.com does not designate
 permitted sender hosts)
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original: jdSSRQXYrIycAGKD+cnM2e8JPOWJaw1qCDHbJofu9GcUaso8Edc8UyeInfDLsDpTsa5ge6Gv58sh9aUVBYKCZZSu2ybq4fNv6xBm9ALsBV/ax5smmNihVTogxcUuLuCtYbEJHc4gEQwv56Rj/N0CcXXpRl6zWWwUgtVCPagoweuvXAODgtA7Hr3PG5yICDV8So8+pD1cZ6Uo+tEp6AWhL+nrEiiQ/GF4hM4wJnHlTEhhdT99VN/ecv06Z5yx3E1rxmCZdAkMzZEMKnMhoWhZLI6rtbUdD0+YOxkmZhvOIVhMpXII+5jnpqUc3f7d01AAE3YjxJpixYjAnAHFFsGgZm/XiXaRKnem2qDAdnlNSjzEC5/BBOf1OYuXW7SwgQEUgk6ZV8YpN30mNY3U2MPJC45kMlL+z3h7PV3rURxfY3xYdqRC4eNBcr87OuNTjGZq
x-ms-exchange-antispam-messagedata: ZZenbHF4TJfNbObL4sRGKejl602WH76XRwiGl7oPTq2P0GrwYi0N+3ezgN3gUUBPPWGYPba70K57k3cI7PTz6g9QKhsN1Gtn2n+K/JYFDadGousPj+klE+QASyuRzF0Tt6tsysXgx8O1hwGx0Y9LWQ==
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB7PR08MB3802
Original-Authentication-Results: spf=none (sender IP is )
 smtp.mailfrom=Joyce.Kong@arm.com; 
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped: DB5EUR03FT061.eop-EUR03.prod.protection.outlook.com
X-Forefront-Antispam-Report: CIP:63.35.35.123; CTRY:IE; LANG:en; SCL:1; SRV:;
 IPV:CAL; SFV:NSPM; H:64aa7808-outbound-1.mta.getcheckrecipient.com;
 PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com; CAT:NONE; SFTY:;
 SFS:(10009020)(4636009)(346002)(376002)(136003)(39860400002)(396003)(46966005)(316002)(54906003)(7696005)(336012)(186003)(2906002)(26005)(82740400003)(8936002)(53546011)(33656002)(8676002)(81156014)(6506007)(66574012)(55016002)(4326008)(81166007)(5660300002)(478600001)(47076004)(356005)(6862004)(70586007)(70206006)(9686003)(52536014)(86362001);
 DIR:OUT; SFP:1101; 
X-MS-Office365-Filtering-Correlation-Id-Prvs: 2e4f325c-5eb4-4567-d584-08d7e2a7e6a1
X-Forefront-PRVS: 0376ECF4DD
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: sswHuygh4dPqarbgU1NkNNkNiawaDa5A+ElTYfd0laEb0hp6yANMShmjKWwU7TQ4jTwPMj3AIPUBoBAzwhNRPyE2rBcCdpZOqTq/yFrw237mLomZ5FLHwpvKKVTo0lRD+sBJypK3lW35cZKUVX8vZ43Ln6mGe0hyPVvJChy6Um4ccgXXa2IwqqORxH7IKvNcqpomIBfCXtf2cIALZvrgu73TlU2DYkQx+CGSQlgN/TX4h1/429CCdlxm97M2XVJssWeYkYhBoZJxCUi6kuevpkTfe1dfMBkHVSaPzKjz5MXvdjra1OJvEcoGbXbN7jOGYHYQFlXzvykQESX3+zKHL1vpbj5jLT+aQPWel0NLC3zV9AW9dru8T/JbYy2m9E4GIt+W95WnPCkYg4qz2KkuKZKd7xdcV7LShhW4tOhdSZ2gza9ZjuLX03C1ya+e3AnAyQGApv3hXdQQvJsVwk+BjNfK/kd1/jpF2Prp0Rklf5GIFuob6uQnB8X0mdGJcs9eeFTy03tWtt0yUZ6rdoGspw==
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Apr 2020 08:18:35.6885 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 0348fba6-91f7-4aab-216c-08d7e2a7ecd4
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[63.35.35.123];
 Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB7PR08MB3913
Subject: Re: [dpdk-dev] [PATCH v8 1/6] lib/eal: implement the family of
 commonbit operation APIs
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
Errors-To: dev-bounces@dpdk.org
Sender: "dev" <dev-bounces@dpdk.org>

PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBNb3J0ZW4gQnLDuHJ1cCA8bWJA
c21hcnRzaGFyZXN5c3RlbXMuY29tPg0KPiBTZW50OiBGcmlkYXksIEFwcmlsIDE3LCAyMDIwIDI6
NTUgQU0NCj4gVG86IEpveWNlIEtvbmcgPEpveWNlLktvbmdAYXJtLmNvbT47IHRob21hc0Btb25q
YWxvbi5uZXQ7DQo+IHN0ZXBoZW5AbmV0d29ya3BsdW1iZXIub3JnOyBkYXZpZC5tYXJjaGFuZEBy
ZWRoYXQuY29tOw0KPiBqZXJpbmpAbWFydmVsbC5jb207IGJydWNlLnJpY2hhcmRzb25AaW50ZWwu
Y29tOyByYXZpMS5rdW1hckBhbWQuY29tOw0KPiBybW9keUBtYXJ2ZWxsLmNvbTsgc2hzaGFpa2hA
bWFydmVsbC5jb207IHh1YW56aXlhbmcyQGh1YXdlaS5jb207DQo+IGNsb3VkLndhbmd4aWFveXVu
QGh1YXdlaS5jb207IHpob3VndW95YW5nQGh1YXdlaS5jb207IEhvbm5hcHBhDQo+IE5hZ2FyYWhh
bGxpIDxIb25uYXBwYS5OYWdhcmFoYWxsaUBhcm0uY29tPjsgR2F2aW4gSHUNCj4gPEdhdmluLkh1
QGFybS5jb20+OyBQaGlsIFlhbmcgPFBoaWwuWWFuZ0Bhcm0uY29tPg0KPiBDYzogbmQgPG5kQGFy
bS5jb20+OyBkZXZAZHBkay5vcmcNCj4gU3ViamVjdDogUkU6IFtkcGRrLWRldl0gW1BBVENIIHY4
IDEvNl0gbGliL2VhbDogaW1wbGVtZW50IHRoZSBmYW1pbHkgb2YNCj4gY29tbW9uYml0IG9wZXJh
dGlvbiBBUElzDQo+IA0KPiA+IEZyb206IGRldiBbbWFpbHRvOmRldi1ib3VuY2VzQGRwZGsub3Jn
XSBPbiBCZWhhbGYgT2YgSm95Y2UgS29uZw0KPiA+IFNlbnQ6IFRodXJzZGF5LCBBcHJpbCAxNiwg
MjAyMCA3OjM5IEFNDQo+ID4NCj4gPiBCaXR3aXNlIG9wZXJhdGlvbiBBUElzIGFyZSBkZWZpbmVk
IGFuZCB1c2VkIGluIGEgbG90IG9mIFBNRHMsIHdoaWNoDQo+ID4gY2F1c2VkIGEgaHVnZSBjb2Rl
IGR1cGxpY2F0aW9uLiBUbyByZWR1Y2UgZHVwbGljYXRpb24sIHRoaXMgcGF0Y2gNCj4gPiBjb25z
b2xpZGF0ZXMgdGhlbSBpbnRvIGEgY29tbW9uIEFQSSBmYW1pbHkuDQo+ID4NCj4gDQo+IFsuLi5d
DQo+IA0KPiA+ICsvKioNCj4gPiArICogQHdhcm5pbmcNCj4gPiArICogQGIgRVhQRVJJTUVOVEFM
OiB0aGlzIEFQSSBtYXkgY2hhbmdlLCBvciBiZSByZW1vdmVkLCB3aXRob3V0IHByaW9yDQo+ID4g
bm90aWNlDQo+ID4gKyAqDQo+ID4gKyAqIFJldHVybiB0aGUgb3JpZ2luYWwgYml0IGZyb20gYSAz
Mi1iaXQgdmFsdWUsIHRoZW4gc2V0IGl0IHRvIDENCj4gPiArd2l0aG91dA0KPiA+ICsgKiBtZW1v
cnkgb3JkZXJpbmcuDQo+ID4gKyAqDQo+ID4gKyAqIEBwYXJhbSBucg0KPiA+ICsgKiAgIFRoZSB0
YXJnZXQgYml0IHRvIGdldCBhbmQgc2V0Lg0KPiA+ICsgKiBAcGFyYW0gYWRkcg0KPiA+ICsgKiAg
IFRoZSBhZGRyZXNzIGhvbGRpbmcgdGhlIGJpdC4NCj4gPiArICogQHJldHVybg0KPiA+ICsgKiAg
IFRoZSBvcmlnaW5hbCBiaXQuDQo+ID4gKyAqLw0KPiA+ICtfX3J0ZV9leHBlcmltZW50YWwNCj4g
PiArc3RhdGljIGlubGluZSB1aW50MzJfdA0KPiA+ICtydGVfdGVzdF9hbmRfc2V0X2JpdDMyX3Jl
bGF4ZWQodW5zaWduZWQgaW50IG5yLCB2b2xhdGlsZSB1aW50MzJfdA0KPiA+ICsqYWRkcikgew0K
PiA+ICsJUlRFX0FTU0VSVChuciA8IDMyKTsNCj4gPiArDQo+ID4gKwl1aW50MzJfdCBtYXNrID0g
VUlOVDMyX0MoMSkgPDwgbnI7DQo+ID4gKwl1aW50MzJfdCB2YWwgPSAqYWRkcjsNCj4gPiArCSph
ZGRyID0gKCphZGRyKSB8IG1hc2s7DQo+IA0KPiBTdWdnZXN0aW9uOg0KPiAtCSphZGRyID0gKCph
ZGRyKSB8IG1hc2s7DQo+ICsJKmFkZHIgPSB2YWwgfCBtYXNrOw0KPiANCg0KU2hhbGwgdGFrZSB0
aGUgYWR2aWNlIGluIHY5Lg0KVGhhbmtzLA0KSm95Y2UNCg0KPiA+ICsJcmV0dXJuIHZhbCAmIG1h
c2s7DQo+ID4gK30NCj4gPiArDQo+ID4gKy8qKg0KPiA+ICsgKiBAd2FybmluZw0KPiA+ICsgKiBA
YiBFWFBFUklNRU5UQUw6IHRoaXMgQVBJIG1heSBjaGFuZ2UsIG9yIGJlIHJlbW92ZWQsIHdpdGhv
dXQgcHJpb3INCj4gPiBub3RpY2UNCj4gPiArICoNCj4gPiArICogUmV0dXJuIHRoZSBvcmlnaW5h
bCBiaXQgZnJvbSBhIDMyLWJpdCB2YWx1ZSwgdGhlbiBjbGVhciBpdCB0byAwDQo+ID4gK3dpdGhv
dXQNCj4gPiArICogbWVtb3J5IG9yZGVyaW5nLg0KPiA+ICsgKg0KPiA+ICsgKiBAcGFyYW0gbnIN
Cj4gPiArICogICBUaGUgdGFyZ2V0IGJpdCB0byBnZXQgYW5kIGNsZWFyLg0KPiA+ICsgKiBAcGFy
YW0gYWRkcg0KPiA+ICsgKiAgIFRoZSBhZGRyZXNzIGhvbGRpbmcgdGhlIGJpdC4NCj4gPiArICog
QHJldHVybg0KPiA+ICsgKiAgIFRoZSBvcmlnaW5hbCBiaXQuDQo+ID4gKyAqLw0KPiA+ICtfX3J0
ZV9leHBlcmltZW50YWwNCj4gPiArc3RhdGljIGlubGluZSB1aW50MzJfdA0KPiA+ICtydGVfdGVz
dF9hbmRfY2xlYXJfYml0MzJfcmVsYXhlZCh1bnNpZ25lZCBpbnQgbnIsIHZvbGF0aWxlIHVpbnQz
Ml90DQo+ID4gKyphZGRyKSB7DQo+ID4gKwlSVEVfQVNTRVJUKG5yIDwgMzIpOw0KPiA+ICsNCj4g
PiArCXVpbnQzMl90IG1hc2sgPSBVSU5UMzJfQygxKSA8PCBucjsNCj4gPiArCXVpbnQzMl90IHZh
bCA9ICphZGRyOw0KPiA+ICsJKmFkZHIgPSAoKmFkZHIpICYgKH5tYXNrKTsNCj4gDQo+IFN1Z2dl
c3Rpb246DQo+IC0JKmFkZHIgPSAoKmFkZHIpICYgKH5tYXNrKTsNCj4gKwkqYWRkciA9IHZhbCAm
ICh+bWFzayk7DQo+IA0KDQpTaGFsbCB0YWtlIHRoZSBhZHZpY2UgaW4gdjkuDQoNCj4gPiArCXJl
dHVybiB2YWwgJiBtYXNrOw0KPiA+ICt9DQo+ID4gKw0KPiA+ICsvKi0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0gNjQgYml0IG9wZXJhdGlvbnMNCj4gPiArLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLQ0KPiA+IC0tLSovDQo+ID4gKw0KPiANCj4gWy4uLl0NCj4gDQo+ID4gKy8qKg0KPiA+ICsg
KiBAd2FybmluZw0KPiA+ICsgKiBAYiBFWFBFUklNRU5UQUw6IHRoaXMgQVBJIG1heSBjaGFuZ2Us
IG9yIGJlIHJlbW92ZWQsIHdpdGhvdXQgcHJpb3INCj4gPiBub3RpY2UNCj4gPiArICoNCj4gPiAr
ICogUmV0dXJuIHRoZSBvcmlnaW5hbCBiaXQgZnJvbSBhIDY0LWJpdCB2YWx1ZSwgdGhlbiBzZXQg
aXQgdG8gMQ0KPiA+ICt3aXRob3V0DQo+ID4gKyAqIG1lbW9yeSBvcmRlcmluZy4NCj4gPiArICoN
Cj4gPiArICogQHBhcmFtIG5yDQo+ID4gKyAqICAgVGhlIHRhcmdldCBiaXQgdG8gZ2V0IGFuZCBz
ZXQuDQo+ID4gKyAqIEBwYXJhbSBhZGRyDQo+ID4gKyAqICAgVGhlIGFkZHJlc3MgaG9sZGluZyB0
aGUgYml0Lg0KPiA+ICsgKiBAcmV0dXJuDQo+ID4gKyAqICAgVGhlIG9yaWdpbmFsIGJpdC4NCj4g
PiArICovDQo+ID4gK19fcnRlX2V4cGVyaW1lbnRhbA0KPiA+ICtzdGF0aWMgaW5saW5lIHVpbnQ2
NF90DQo+ID4gK3J0ZV90ZXN0X2FuZF9zZXRfYml0NjRfcmVsYXhlZCh1bnNpZ25lZCBpbnQgbnIs
IHZvbGF0aWxlIHVpbnQ2NF90DQo+ID4gKyphZGRyKSB7DQo+ID4gKwlSVEVfQVNTRVJUKG5yIDwg
NjQpOw0KPiA+ICsNCj4gPiArCXVpbnQ2NF90IG1hc2sgPSBVSU5UNjRfQygxKSA8PCBucjsNCj4g
PiArCXVpbnQ2NF90IHZhbCA9ICphZGRyOw0KPiA+ICsJKmFkZHIgPSAoKmFkZHIpIHwgbWFzazsN
Cj4gDQo+IFN1Z2dlc3Rpb246DQo+IC0JKmFkZHIgPSAoKmFkZHIpIHwgbWFzazsNCj4gKwkqYWRk
ciA9IHZhbCB8IG1hc2s7DQo+IA0KDQpTaGFsbCB0YWtlIHRoZSBhZHZpY2UgaW4gdjkuDQoNCj4g
PiArCXJldHVybiB2YWw7DQo+ID4gK30NCj4gPiArDQo+ID4gKy8qKg0KPiA+ICsgKiBAd2Fybmlu
Zw0KPiA+ICsgKiBAYiBFWFBFUklNRU5UQUw6IHRoaXMgQVBJIG1heSBjaGFuZ2UsIG9yIGJlIHJl
bW92ZWQsIHdpdGhvdXQgcHJpb3INCj4gPiBub3RpY2UNCj4gPiArICoNCj4gPiArICogUmV0dXJu
IHRoZSBvcmlnaW5hbCBiaXQgZnJvbSBhIDY0LWJpdCB2YWx1ZSwgdGhlbiBjbGVhciBpdCB0byAw
DQo+ID4gK3dpdGhvdXQNCj4gPiArICogbWVtb3J5IG9yZGVyaW5nLg0KPiA+ICsgKg0KPiA+ICsg
KiBAcGFyYW0gbnINCj4gPiArICogICBUaGUgdGFyZ2V0IGJpdCB0byBnZXQgYW5kIGNsZWFyLg0K
PiA+ICsgKiBAcGFyYW0gYWRkcg0KPiA+ICsgKiAgIFRoZSBhZGRyZXNzIGhvbGRpbmcgdGhlIGJp
dC4NCj4gPiArICogQHJldHVybg0KPiA+ICsgKiAgIFRoZSBvcmlnaW5hbCBiaXQuDQo+ID4gKyAq
Lw0KPiA+ICtfX3J0ZV9leHBlcmltZW50YWwNCj4gPiArc3RhdGljIGlubGluZSB1aW50NjRfdA0K
PiA+ICtydGVfdGVzdF9hbmRfY2xlYXJfYml0NjRfcmVsYXhlZCh1bnNpZ25lZCBpbnQgbnIsIHZv
bGF0aWxlIHVpbnQ2NF90DQo+ID4gKyphZGRyKSB7DQo+ID4gKwlSVEVfQVNTRVJUKG5yIDwgNjQp
Ow0KPiA+ICsNCj4gPiArCXVpbnQ2NF90IG1hc2sgPSBVSU5UNjRfQygxKSA8PCBucjsNCj4gPiAr
CXVpbnQ2NF90IHZhbCA9ICphZGRyOw0KPiA+ICsJKmFkZHIgPSAoKmFkZHIpICYgKH5tYXNrKTsN
Cj4gDQo+IFN1Z2dlc3Rpb246DQo+IC0JKmFkZHIgPSAoKmFkZHIpICYgKH5tYXNrKTsNCj4gKwkq
YWRkciA9IHZhbCAmICh+bWFzayk7DQo+IA0KDQpTaGFsbCB0YWtlIHRoZSBhZHZpY2UgaW4gdjku
DQoNCj4gPiArCXJldHVybiB2YWwgJiBtYXNrOw0KPiA+ICt9DQo+ID4gKw0KPiA+ICsjZW5kaWYg
LyogX1JURV9CSVRPUFNfSF8gKi8NCj4gPiAtLQ0KPiA+IDIuMTcuMQ0KPiA+DQoNCg==