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 8FAB3A2F63
	for <public@inbox.dpdk.org>; Fri,  4 Oct 2019 00:49:25 +0200 (CEST)
Received: from [92.243.14.124] (localhost [127.0.0.1])
	by dpdk.org (Postfix) with ESMTP id 5F6611C1A1;
	Fri,  4 Oct 2019 00:49:24 +0200 (CEST)
Received: from EUR03-VE1-obe.outbound.protection.outlook.com
 (mail-eopbgr50075.outbound.protection.outlook.com [40.107.5.75])
 by dpdk.org (Postfix) with ESMTP id 561614CA6
 for <dev@dpdk.org>; Fri,  4 Oct 2019 00:49:23 +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=pF9C/0ilzoNiH2MwytiFX4YI7MymTcL1Wf58UC84cBE=;
 b=8DGCFijkISx/yS7zLvNxiWkyxVEF5GsIHSmEGgjkHIKxmfqgj/4K41NoXqS9ev2BcZNdYjfwJY0sOx+V7oUUiyOtuZHAi22tupUz6YkqY8RNXPvgjC5hXSsx/AQL/dD26dnvBdzh0jVZAzlSgXaDUmGW9Psf142LNbFNo0nN5Dk=
Received: from DB6PR0801CA0050.eurprd08.prod.outlook.com (2603:10a6:4:2b::18)
 by AM6PR08MB3032.eurprd08.prod.outlook.com (2603:10a6:209:43::31)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2305.20; Thu, 3 Oct
 2019 22:49:21 +0000
Received: from AM5EUR03FT058.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e08::201) by DB6PR0801CA0050.outlook.office365.com
 (2603:10a6:4:2b::18) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2305.17 via Frontend
 Transport; Thu, 3 Oct 2019 22:49:21 +0000
Authentication-Results: spf=temperror (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=none action=none
 header.from=arm.com;
Received-SPF: TempError (protection.outlook.com: error in processing during
 lookup of arm.com: DNS Timeout)
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM5EUR03FT058.mail.protection.outlook.com (10.152.17.48) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.2305.15 via Frontend Transport; Thu, 3 Oct 2019 22:49:20 +0000
Received: ("Tessian outbound 927f2cdd66cc:v33");
 Thu, 03 Oct 2019 22:49:17 +0000
X-CR-MTA-TID: 64aa7808
Received: from e5392ec8f627.2 (ip-172-16-0-2.eu-west-1.compute.internal
 [104.47.0.58]) by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 C2A1A42E-297A-460F-85FE-8254FDD26129.1; 
 Thu, 03 Oct 2019 22:49:12 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur01lp2058.outbound.protection.outlook.com [104.47.0.58])
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id e5392ec8f627.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 03 Oct 2019 22:49:12 +0000
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FH/P5p/v5eIIF2G/sIRLI0impn8NtuILXKpm1/alAAcfsrS7wLbIUFuJOpyXNJmglbOuTx7+Ukv77TW2Hfb5tFu08BES9cWiht3RBJCd+h9B93BcLJErGq4+W5C7j9na2neUOMb36JV0rTUkMK1bH+8n0cYyT4i87y9Fdj+tP7k+f+Ffhb9jTHwNWJhQMPDwOv78vP4o3CD7bFJYHdya0zP6GD5SQ/wJNk/uoDl9XVCrLqO0nfR6TS1oUp0H/b5SjiT+lhXtNCHX3pu3vwFgitLpB/h2YLJRCvPpxMBTBdaJRv28iWNeEYtmYCFkKqFrWHmhf8+dP9UNfmWl6ZNzIw==
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=pF9C/0ilzoNiH2MwytiFX4YI7MymTcL1Wf58UC84cBE=;
 b=HyoE7JRb0BZOoPKeT7laB/2NX9WwMV8YI1w0L3uzkjJK+sIRHhffN/f8Ydv3V3Rpe7vHNwbkTJRLyp9wldcVBxd9yIEhoSJMOQpIg6Pr3LHysQm/CRBedvhUzJoYfaQjzgzTe+HS4CkKxHkLWRJF+O8HkX2S+9fzh4nsPCcfUEui/1N3VHV5+l+4Knem210nSVaEAW5yeNEQeJnvoT7z5zt2MefQsM8tofwiTK3K1/7N5HUWA4L92OkRk9N8e2bi3AHF4eZfTtsyLDF6GnKES+CbMzAxJS7tNXoEuuIwEmnk+ugzsFMvokQxDD+EzZrpIh3azyMSwonLlyminsUzKw==
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=pF9C/0ilzoNiH2MwytiFX4YI7MymTcL1Wf58UC84cBE=;
 b=8DGCFijkISx/yS7zLvNxiWkyxVEF5GsIHSmEGgjkHIKxmfqgj/4K41NoXqS9ev2BcZNdYjfwJY0sOx+V7oUUiyOtuZHAi22tupUz6YkqY8RNXPvgjC5hXSsx/AQL/dD26dnvBdzh0jVZAzlSgXaDUmGW9Psf142LNbFNo0nN5Dk=
Received: from VE1PR08MB5149.eurprd08.prod.outlook.com (20.179.30.27) by
 VE1PR08MB5216.eurprd08.prod.outlook.com (10.255.159.24) with Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.2305.17; Thu, 3 Oct 2019 22:49:09 +0000
Received: from VE1PR08MB5149.eurprd08.prod.outlook.com
 ([fe80::8c82:8d9c:c78d:22a6]) by VE1PR08MB5149.eurprd08.prod.outlook.com
 ([fe80::8c82:8d9c:c78d:22a6%7]) with mapi id 15.20.2305.023; Thu, 3 Oct 2019
 22:49:09 +0000
From: Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com>
To: "Ananyev, Konstantin" <konstantin.ananyev@intel.com>,
 "olivier.matz@6wind.com" <olivier.matz@6wind.com>, "Wang, Yipeng1"
 <yipeng1.wang@intel.com>, "Gobriel, Sameh" <sameh.gobriel@intel.com>,
 "Richardson, Bruce" <bruce.richardson@intel.com>, "De Lara Guarch, Pablo"
 <pablo.de.lara.guarch@intel.com>
CC: "dev@dpdk.org" <dev@dpdk.org>, Dharmik Thakkar <Dharmik.Thakkar@arm.com>, 
 "Gavin Hu (Arm Technology China)" <Gavin.Hu@arm.com>, "Ruifeng Wang (Arm
 Technology China)" <Ruifeng.Wang@arm.com>, Honnappa Nagarahalli
 <Honnappa.Nagarahalli@arm.com>, nd <nd@arm.com>, nd <nd@arm.com>
Thread-Topic: [dpdk-dev] [PATCH 2/5] lib/ring: add template to support
 different	element sizes
Thread-Index: AQHVeNjpHH4E8KSmr0+S7oLedx6nO6dF3rfwgAEG+ICAAFeBkIABLVyAgACbGgCAAArJkIAAdgWA
Date: Thu, 3 Oct 2019 22:49:09 +0000
Message-ID: <VE1PR08MB51491F9DADA500158D6BA5B9989F0@VE1PR08MB5149.eurprd08.prod.outlook.com>
References: <20190828144614.25284-1-honnappa.nagarahalli@arm.com>
 <20190828144614.25284-3-honnappa.nagarahalli@arm.com>
 <2601191342CEEE43887BDE71AB977258019196E21E@irsmsx105.ger.corp.intel.com>
 <VE1PR08MB5149FADA3495DBAB0BA9ABB9989C0@VE1PR08MB5149.eurprd08.prod.outlook.com>
 <2601191342CEEE43887BDE71AB977258019196FAC9@irsmsx105.ger.corp.intel.com>
 <VE1PR08MB5149C3E21AB0185284E11520989F0@VE1PR08MB5149.eurprd08.prod.outlook.com>
 <2601191342CEEE43887BDE71AB9772580191970803@irsmsx105.ger.corp.intel.com>
 <2601191342CEEE43887BDE71AB9772580191970852@irsmsx105.ger.corp.intel.com>
In-Reply-To: <2601191342CEEE43887BDE71AB9772580191970852@irsmsx105.ger.corp.intel.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ts-tracking-id: 8b395562-fe8a-4a06-abf7-4f9e576346c4.0
x-checkrecipientchecked: true
Authentication-Results-Original: spf=none (sender IP is )
 smtp.mailfrom=Honnappa.Nagarahalli@arm.com; 
x-originating-ip: [217.140.111.135]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: 83f23e30-2d47-4854-7911-08d74853ed90
X-MS-Office365-Filtering-HT: Tenant
X-MS-TrafficTypeDiagnostic: VE1PR08MB5216:|VE1PR08MB5216:|AM6PR08MB3032:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS: <AM6PR08MB30320A9CBAA57AAF2D8B27AC989F0@AM6PR08MB3032.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
x-ms-oob-tlc-oobclassifiers: OLM:1728;OLM:1728;
x-forefront-prvs: 01792087B6
X-Forefront-Antispam-Report-Untrusted: SFV:NSPM;
 SFS:(10009020)(4636009)(396003)(346002)(366004)(136003)(39860400002)(376002)(199004)(189003)(51914003)(6116002)(9686003)(66446008)(7696005)(64756008)(66556008)(66476007)(6436002)(81166006)(478600001)(2501003)(229853002)(6246003)(52536014)(256004)(3846002)(54906003)(110136005)(316002)(55016002)(25786009)(99286004)(4326008)(14454004)(66946007)(102836004)(33656002)(74316002)(14444005)(26005)(476003)(486006)(11346002)(186003)(446003)(305945005)(6506007)(71200400001)(71190400001)(81156014)(76176011)(66066001)(76116006)(2906002)(5660300002)(86362001)(8936002)(7736002)(921003)(1121003);
 DIR:OUT; SFP:1101; SCL:1; SRVR:VE1PR08MB5216;
 H:VE1PR08MB5149.eurprd08.prod.outlook.com; FPR:; SPF:None; LANG:en;
 PTR:InfoNoRecords; A:1; MX:1; 
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: oA94qgLeAOkaJI6rwk4rd5db6eS7gIJbAeLSEba9zRgwEcuKExr/m+pDq8wDU8c3bf4cqMPMIzJpLKcKrsYNf3KaKVQavYz7ikNCYGYJEN85+ISU41DGgyTJVWHmuAqktryOS6zMgNFx2lS27AkOkU9DCeeU40z8NysvWR0ZtfhLKMseWNl4cPIbtetiEZwaQcf0m1tlQaxSNV8xXozy0ShVsdzTjbITNl8K5VMMCv6iwvM3W8ItQELl/ti9D6ZzLX0EWztinlTjPwAUmnLT2LiV2Ac8TKUUjhNAHwogir7weB1hO+w/8+axS6EDuhHXxpcOtb8N/0jeQUB+WWVX2ZpVl570Pqc/ggkaXj9VADGvMfLIlD/UwVSbkpUd8FIkAFmAlUZogP/paVon24t/DLxpVBBAt4OdTkwa0uKP0SM=
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR08MB5216
Original-Authentication-Results: spf=none (sender IP is )
 smtp.mailfrom=Honnappa.Nagarahalli@arm.com; 
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM5EUR03FT058.eop-EUR03.prod.protection.outlook.com
X-Forefront-Antispam-Report: CIP:63.35.35.123; IPV:CAL; SCL:-1; CTRY:IE;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(4636009)(396003)(136003)(39860400002)(346002)(376002)(51914003)(199004)(189003)(25786009)(70586007)(70206006)(9686003)(14454004)(74316002)(7736002)(2501003)(6246003)(4326008)(47776003)(55016002)(26826003)(478600001)(14444005)(66066001)(50466002)(76130400001)(229853002)(305945005)(316002)(54906003)(336012)(102836004)(110136005)(26005)(186003)(126002)(486006)(6506007)(11346002)(36906005)(436003)(2486003)(76176011)(446003)(23676004)(7696005)(63350400001)(52536014)(8936002)(356004)(22756006)(99286004)(33656002)(3846002)(2906002)(5660300002)(81166006)(81156014)(6116002)(86362001)(476003)(921003)(1121003);
 DIR:OUT; SFP:1101; SCL:1; SRVR:AM6PR08MB3032;
 H:64aa7808-outbound-1.mta.getcheckrecipient.com; FPR:; SPF:TempError; LANG:en;
 PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com; A:1; MX:1; 
X-MS-Office365-Filtering-Correlation-Id-Prvs: cb5a245c-a804-4e44-926b-08d74853e763
NoDisclaimer: True
X-Forefront-PRVS: 01792087B6
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: zbQtUFyjvcKHBFQMLCXGyMo7u8MakSEERqK07OW3a2ASnNH9uTEzgQlRMW91z/qepqu6WM5KEaQfTwS/Kpoxws9UFURMfOKlnbhL945beNX7WvdoK8JbFPvZrM5U5is18rWCBuPoME8RSVx5KXpHxRwmC+9rviE1baNwUIaSVBti84gorFtG/v02Ytsi/2HIi7gV7SLQtLchCFo7tFl4K3VuHYOjzVjTciW5Ap95DboFUwcpL0AnRTjgazuAu0v5LAzufNyqsnVA5Qe6kCTgbbUNAW5aiqz7J/G/u9gyDLbDFB2R4dPU3klWgf/UVkypOegtvs7BAgGsh8j69xALoX2DKSYxWz+ZOjwneipVlVkEsXChzikpKwv+hizmWoQm4/C/PhzUyR7Kc/FoLnV5uKcmgG4xiQj/23bb3VUpcHs=
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Oct 2019 22:49:20.0517 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 83f23e30-2d47-4854-7911-08d74853ed90
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: AM6PR08MB3032
Subject: Re: [dpdk-dev] [PATCH 2/5] lib/ring: add template to support
 different	element sizes
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>

PHNuaXA+DQoNCj4gPiA+ID4gPiA+ID4gKysrIGIvbGliL2xpYnJ0ZV9yaW5nL3J0ZV9yaW5nX3Rl
bXBsYXRlLmgNCj4gPiA+ID4gPiA+ID4gQEAgLTAsMCArMSwzMzAgQEANCj4gPiA+ID4gPiA+ID4g
Ky8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UNCj4gPiA+ID4gPiA+ID4g
KyAqIENvcHlyaWdodCAoYykgMjAxOSBBcm0gTGltaXRlZCAgKi8NCj4gPiA+ID4gPiA+ID4gKw0K
PiA+ID4gPiA+ID4gPiArI2lmbmRlZiBfUlRFX1JJTkdfVEVNUExBVEVfSF8gI2RlZmluZQ0KPiBf
UlRFX1JJTkdfVEVNUExBVEVfSF8NCj4gPiA+ID4gPiA+ID4gKw0KPiA+ID4gPiA+ID4gPiArI2lm
ZGVmIF9fY3BsdXNwbHVzDQo+ID4gPiA+ID4gPiA+ICtleHRlcm4gIkMiIHsNCj4gPiA+ID4gPiA+
ID4gKyNlbmRpZg0KPiA+ID4gPiA+ID4gPiArDQo+ID4gPiA+ID4gPiA+ICsjaW5jbHVkZSA8c3Rk
aW8uaD4NCj4gPiA+ID4gPiA+ID4gKyNpbmNsdWRlIDxzdGRpbnQuaD4NCj4gPiA+ID4gPiA+ID4g
KyNpbmNsdWRlIDxzeXMvcXVldWUuaD4NCj4gPiA+ID4gPiA+ID4gKyNpbmNsdWRlIDxlcnJuby5o
Pg0KPiA+ID4gPiA+ID4gPiArI2luY2x1ZGUgPHJ0ZV9jb21tb24uaD4NCj4gPiA+ID4gPiA+ID4g
KyNpbmNsdWRlIDxydGVfY29uZmlnLmg+DQo+ID4gPiA+ID4gPiA+ICsjaW5jbHVkZSA8cnRlX21l
bW9yeS5oPg0KPiA+ID4gPiA+ID4gPiArI2luY2x1ZGUgPHJ0ZV9sY29yZS5oPg0KPiA+ID4gPiA+
ID4gPiArI2luY2x1ZGUgPHJ0ZV9hdG9taWMuaD4NCj4gPiA+ID4gPiA+ID4gKyNpbmNsdWRlIDxy
dGVfYnJhbmNoX3ByZWRpY3Rpb24uaD4gI2luY2x1ZGUgPHJ0ZV9tZW16b25lLmg+DQo+ID4gPiA+
ID4gPiA+ICsjaW5jbHVkZSA8cnRlX3BhdXNlLmg+ICNpbmNsdWRlIDxydGVfcmluZy5oPg0KPiA+
ID4gPiA+ID4gPiArDQo+ID4gPiA+ID4gPiA+ICsvKiBSaW5nIEFQSSBzdWZmaXggbmFtZSAtIHVz
ZWQgdG8gYXBwZW5kIHRvIEFQSSBuYW1lcyAqLw0KPiA+ID4gPiA+ID4gPiArI2lmbmRlZiBSVEVf
UklOR19UTVBMVF9BUElfU1VGRklYICNlcnJvcg0KPiA+ID4gPiA+ID4gPiArUlRFX1JJTkdfVE1Q
TFRfQVBJX1NVRkZJWA0KPiA+ID4gPiBub3QNCj4gPiA+ID4gPiA+ID4gK2RlZmluZWQgI2VuZGlm
DQo+ID4gPiA+ID4gPiA+ICsNCj4gPiA+ID4gPiA+ID4gKy8qIFJpbmcncyBlbGVtZW50IHNpemUg
aW4gYml0cywgc2hvdWxkIGJlIGEgcG93ZXIgb2YgMiAqLw0KPiA+ID4gPiA+ID4gPiArI2lmbmRl
ZiBSVEVfUklOR19UTVBMVF9FTEVNX1NJWkUgI2Vycm9yDQo+ID4gPiA+ID4gPiA+ICtSVEVfUklO
R19UTVBMVF9FTEVNX1NJWkUNCj4gPiA+ID4gbm90DQo+ID4gPiA+ID4gPiBkZWZpbmVkDQo+ID4g
PiA+ID4gPiA+ICsjZW5kaWYNCj4gPiA+ID4gPiA+ID4gKw0KPiA+ID4gPiA+ID4gPiArLyogVHlw
ZSBvZiByaW5nIGVsZW1lbnRzICovICNpZm5kZWYNCj4gPiA+ID4gPiA+ID4gK1JURV9SSU5HX1RN
UExUX0VMRU1fVFlQRSAjZXJyb3INCj4gUlRFX1JJTkdfVE1QTFRfRUxFTV9UWVBFDQo+ID4gPiA+
ID4gPiA+ICtub3QgZGVmaW5lZCAjZW5kaWYNCj4gPiA+ID4gPiA+ID4gKw0KPiA+ID4gPiA+ID4g
PiArI2RlZmluZSBfcnRlX2Z1c2UoYSwgYikgYSMjXyMjYiAjZGVmaW5lIF9fcnRlX2Z1c2UoYSwg
YikNCj4gPiA+ID4gPiA+ID4gK19ydGVfZnVzZShhLCBiKSAjZGVmaW5lDQo+ID4gPiA+ID4gPiA+
ICtfX1JURV9SSU5HX0NPTkNBVChhKSBfX3J0ZV9mdXNlKGEsDQo+ID4gPiA+ID4gPiA+ICtSVEVf
UklOR19UTVBMVF9BUElfU1VGRklYKQ0KPiA+ID4gPiA+ID4gPiArDQo+ID4gPiA+ID4gPiA+ICsv
KiBDYWxjdWxhdGUgdGhlIG1lbW9yeSBzaXplIG5lZWRlZCBmb3IgYSByaW5nICovDQo+ID4gPiA+
ID4gPiA+ICtSVEVfUklOR19UTVBMVF9FWFBFUklNRU5UQUwgc3NpemVfdA0KPiA+ID4gPiA+ID4g
PiArX19SVEVfUklOR19DT05DQVQocnRlX3JpbmdfZ2V0X21lbXNpemUpKHVuc2lnbmVkIGNvdW50
KTsNCj4gPiA+ID4gPiA+ID4gKw0KPiA+ID4gPiA+ID4gPiArLyogQ3JlYXRlIGEgbmV3IHJpbmcg
bmFtZWQgKm5hbWUqIGluIG1lbW9yeS4gKi8NCj4gPiA+ID4gPiA+ID4gK1JURV9SSU5HX1RNUExU
X0VYUEVSSU1FTlRBTCBzdHJ1Y3QgcnRlX3JpbmcgKg0KPiA+ID4gPiA+ID4gPiArX19SVEVfUklO
R19DT05DQVQocnRlX3JpbmdfY3JlYXRlKShjb25zdCBjaGFyICpuYW1lLA0KPiA+ID4gPiA+ID4g
PiArdW5zaWduZWQNCj4gPiA+ID4gY291bnQsDQo+ID4gPiA+ID4gPiA+ICsJCQkJCWludCBzb2Nr
ZXRfaWQsIHVuc2lnbmVkIGZsYWdzKTsNCj4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPg0KPiA+ID4g
PiA+ID4gSnVzdCBhbiBpZGVhIC0gcHJvYmFibHkgc2FtZSB0aGluZyBjYW4gYmUgYWNoaWV2ZWQg
aW4gYSBkaWZmZXJlbnQNCj4gd2F5Lg0KPiA+ID4gPiA+ID4gSW5zdGVhZCBvZiBhbGwgdGhlc2Ug
ZGVmaW5lcyAtIHJlcGxhY2UNCj4gPiA+ID4gPiA+IEVOUVVFVUVfUFRSUy9ERVFVRVVFX1BUUlMg
bWFjcm9zIHdpdGggc3RhdGljIGlubGluZSBmdW5jdGlvbnMNCj4gPiA+ID4gPiA+IGFuZCB0aGVu
IG1ha2UgYWxsIGludGVybmFsIGZ1bmN0aW9ucywNCj4gPiA+ID4gaS5lLg0KPiA+ID4gPiA+ID4g
X19ydGVfcmluZ19kb19kZXF1ZXVlKCkNCj4gPiA+ID4gPiA+IHRvIGFjY2VwdCBlbnF1ZXVlL2Rl
cXVldWUgZnVuY3Rpb24gcG9pbnRlciBhcyBhIHBhcmFtZXRlci4NCj4gPiA+ID4gPiA+IFRoZW4g
bGV0IHNheSBkZWZhdWx0IHJ0ZV9yaW5nX21jX2RlcXVldWVfYnVsayB3aWxsIGRvOg0KPiA+ID4g
PiA+ID4NCj4gPiA+ID4gPiA+IHJ0ZV9yaW5nX21jX2RlcXVldWVfYnVsayhzdHJ1Y3QgcnRlX3Jp
bmcgKnIsIHZvaWQgKipvYmpfdGFibGUsDQo+ID4gPiA+ID4gPiAgICAgICAgICAgICAgICAgdW5z
aWduZWQgaW50IG4sIHVuc2lnbmVkIGludCAqYXZhaWxhYmxlKSB7DQo+ID4gPiA+ID4gPiAgICAg
ICAgIHJldHVybiBfX3J0ZV9yaW5nX2RvX2RlcXVldWUociwgb2JqX3RhYmxlLCBuLA0KPiA+ID4g
PiBSVEVfUklOR19RVUVVRV9GSVhFRCwNCj4gPiA+ID4gPiA+ICAgICAgICAgICAgICAgICAgICAg
ICAgIF9fSVNfTUMsIGF2YWlsYWJsZSwNCj4gPiA+ID4gPiA+IGRlcXVldWVfcHRyX2RlZmF1bHQp
OyB9DQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gVGhlbiBpZiBzb21lb25lIHdpbGwgbGlrZSB0
byBkZWZpbmUgcmluZyBmdW5jdGlvbnMNCj4gPiA+ID4gPiA+IGZvcmVsdF9zaXplPT1YLCBhbGwg
aGUgd291bGQgbmVlZCB0byBkbzoNCj4gPiA+ID4gPiA+IDEuIGRlZmluZSBoaXMgb3duIGVucXVl
dWUvZGVxdWV1ZXIgZnVuY3Rpb25zLg0KPiA+ID4gPiA+ID4gMi4gZG8gc29tZXRoaW5nIGxpa2U6
DQo+ID4gPiA+ID4gPiBydGVfcmluZ19tY19kZXF1ZXVlX2J1bGsoc3RydWN0IHJ0ZV9yaW5nICpy
LCB2b2lkICoqb2JqX3RhYmxlLA0KPiA+ID4gPiA+ID4gICAgICAgICAgICAgICAgIHVuc2lnbmVk
IGludCBuLCB1bnNpZ25lZCBpbnQgKmF2YWlsYWJsZSkgew0KPiA+ID4gPiA+ID4gICAgICAgICBy
ZXR1cm4gX19ydGVfcmluZ19kb19kZXF1ZXVlKHIsIG9ial90YWJsZSwgbiwNCj4gPiA+ID4gUlRF
X1JJTkdfUVVFVUVfRklYRUQsDQo+ID4gPiA+ID4gPiAgICAgICAgICAgICAgICAgICAgICAgICBf
X0lTX01DLCBhdmFpbGFibGUsIGRlcXVldWVfWCk7IH0NCj4gPiA+ID4gPiA+DQo+ID4gPiA+ID4g
PiBLb25zdGFudGluDQo+ID4gPiA+ID4gVGhhbmtzIGZvciB0aGUgZmVlZGJhY2svaWRlYS4gVGhl
IGdvYWwgb2YgdGhpcyBwYXRjaCB3YXMgdG8gbWFrZQ0KPiA+ID4gPiA+IGl0IHNpbXBsZSBlbm91
Z2ggdG8gZGVmaW5lIEFQSXMgdG8gc3RvcmUgYW55IGVsZW1lbnQgc2l6ZQ0KPiA+ID4gPiA+IHdp
dGhvdXQgY29kZQ0KPiA+ID4gPiBkdXBsaWNhdGlvbi4NCj4gPiA+ID4NCj4gPiA+ID4gV2VsbCwg
dGhlbiBpZiB3ZSBzdG9yZSBlbHRfc2l6ZSBpbnNpZGUgdGhlIHJpbmcsIGl0IHNob3VsZCBiZSBl
YXN5DQo+ID4gPiA+IGVub3VnaCB0byBhZGQgdG8gdGhlIEFQSSBnZW5lcmljIGZ1bmN0aW9ucyB0
aGF0IHdvdWxkIHVzZQ0KPiA+ID4gPiBtZW1jcHkob3IgcnRlX21lbWNweSkgZm9yIGVucXVldWUv
ZGVxdWV1ZS4NCj4gPiA+ID4gWWVzLCBpdCBtaWdodCBiZSBzbG93ZXIgdGhhbiBleGlzdGluZyAo
OEIgcGVyIGVsZW0pLCBidXQgbWlnaHQgYmUNCj4gPiA+ID4gc3RpbGwgYWNjZXB0YWJsZS4NCj4g
PiA+IFRoZSBlbGVtZW50IHNpemUgd2lsbCBiZSBhIGNvbnN0YW50IGluIG1vc3QgdXNlIGNhc2Vz
LiBJZiB3ZSBrZWVwDQo+ID4gPiB0aGUgZWxlbWVudCBzaXplIGFzIGEgcGFyYW1ldGVyLCBpdCBh
bGxvd3MgdGhlIGNvbXBpbGVyIHRvIGRvIGFueSBsb29wDQo+IHVucm9sbGluZyBhbmQgYXV0by12
ZWN0b3JpemF0aW9uIG9wdGltaXphdGlvbnMgb24gY29weWluZy4NCj4gPiA+IFN0b3JpbmcgdGhl
IGVsZW1lbnQgc2l6ZSB3aWxsIHJlc3VsdCBpbiBhZGRpdGlvbmFsIG1lbW9yeSBhY2Nlc3MuDQo+
ID4NCj4gPiBJIHVuZGVyc3RhbmQgdGhhdCwgYnV0IGZvciB5b3UgY2FzZSAocmN1IGRlZmVyIHF1
ZXVlKSB5b3UgcHJvYmFibHkgbmVlZA0KPiBoaWdoZXN0IHBvc3NpYmxlIHBlcmZvcm1hbmNlLCBy
aWdodD8NCj4gDQo+IE1lYW50ICdkb24ndCBuZWVkJyBvZiBjb3Vyc2UgOikNCvCfmIogdW5kZXJz
dG9vZC4gdGhhdCBpcyBqdXN0IG9uZSB1c2UgY2FzZS4gSXQgYWN0dWFsbHkgc3RhcnRlZCBhcyBh
biBvcHRpb24gdG8gcmVkdWNlIG1lbW9yeSB1c2FnZSBpbiBkaWZmZXJlbnQgcGxhY2VzLiBZb3Ug
Y2FuIGxvb2sgYXQgdGhlIHJ0ZV9oYXNoIGNoYW5nZXMgaW4gdGhpcyBwYXRjaC4gSSBhbHNvIGhh
dmUgcGxhbnMgZm9yIGZ1cnRoZXIgY2hhbmdlcy4NCg0KPiANCj4gPiBJIGFtIHN1cmUgdGhlcmUg
d2lsbCBiZSBvdGhlciBjYXNlcyB3aGVyZSBzdWNoIHNsaWdodCBwZXJmIGRlZ3JhZGF0aW9uIGlz
DQo+IGFjY2VwdGF0YmxlLg0KPiA+DQo+ID4gPg0KPiA+ID4gPg0KPiA+ID4gPiA+V2l0aCB0aGlz
IHBhdGNoLCB0aGUgdXNlciBoYXMgdG8gd3JpdGUgfjQgbGluZXMgb2YgY29kZSB0byBnZXQNCj4g
PiA+ID4gPkFQSXMgZm9yIGFueSBlbGVtZW50IHNpemUuIEkgd291bGQgbGlrZSB0byBrZWVwIHRo
ZSBnb2FsIHN0aWxsIHRoZSAgc2FtZS4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+IElmIHdlIGhhdmUg
dG8gYXZvaWQgdGhlIG1hY3JvLWZlc3QsIHRoZSBtYWluIHByb2JsZW0gdGhhdCBuZWVkcw0KPiA+
ID4gPiA+IHRvIGJlIGFkZHJlc3NlZCBpcyAtIGhvdyB0byByZXByZXNlbnQgZGlmZmVyZW50IHNp
emVzIG9mIGVsZW1lbnQNCj4gPiA+ID4gPiB0eXBlcyBpbiBhIGdlbmVyaWMNCj4gPiA+ID4gd2F5
PyBJTU8sIHdlIGNhbiBkbyB0aGlzIGJ5IGRlZmluaW5nIHRoZSBlbGVtZW50IHR5cGUgdG8gYmUg
YQ0KPiA+ID4gPiBtdWx0aXBsZSBvZiB1aW50MzJfdCAoSSBkbyBub3QgdGhpbmsgd2UgbmVlZCB0
byBnbyB0byB1aW50MTZfdCkuDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiBGb3IgZXg6DQo+ID4gPiA+
ID4gcnRlX3JpbmdfbXBfZW5xdWV1ZV9idWxrX29ianMoc3RydWN0IHJ0ZV9yaW5nICpyLA0KPiA+
ID4gPiA+ICAgICAgICAgICAgICAgICB1aW50MzJfdCAqb2JqX3RhYmxlLCB1bnNpZ25lZCBpbnQg
bnVtX29ianMsDQo+ID4gPiA+ID4gICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBuLA0KPiA+
ID4gPiA+ICAgICAgICAgICAgICAgICBlbnVtIHJ0ZV9yaW5nX3F1ZXVlX2JlaGF2aW9yIGJlaGF2
aW9yLCB1bnNpZ25lZCBpbnQgaXNfc3AsDQo+ID4gPiA+ID4gICAgICAgICAgICAgICAgIHVuc2ln
bmVkIGludCAqZnJlZV9zcGFjZSkgeyB9DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiBUaGlzIGFwcHJv
YWNoIHdvdWxkIGVuc3VyZSB0aGF0IHdlIGhhdmUgZ2VuZXJpYyBlbm91Z2ggQVBJcyBhbmQNCj4g
PiA+ID4gPiB0aGV5IGNhbiBiZSB1c2VkIGZvciBlbGVtZW50cyBvZiBhbnkgc2l6ZS4gQnV0IHRo
ZSBlbGVtZW50DQo+ID4gPiA+ID4gaXRzZWxmIG5lZWRzIHRvIGJlIGENCj4gPiA+ID4gbXVsdGlw
bGUgb2YgMzJiIC0gSSB0aGluayB0aGlzIHNob3VsZCBub3QgYmUgYSBjb25jZXJuLg0KPiA+ID4g
PiA+DQo+ID4gPiA+ID4gVGhlIEFQSSBzdWZmaXggZGVmaW5pdGVseSBuZWVkcyB0byBiZSBiZXR0
ZXIsIGFueSBzdWdnZXN0aW9ucz8NCj4gPiA+ID4NCg==