From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id E50BD45A91; Thu, 3 Oct 2024 09:01:03 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 78A624025E; Thu, 3 Oct 2024 09:01:03 +0200 (CEST) Received: from mx0b-0016f401.pphosted.com (mx0b-0016f401.pphosted.com [67.231.156.173]) by mails.dpdk.org (Postfix) with ESMTP id 5626D400D7 for ; Thu, 3 Oct 2024 09:01: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 49351Sxj023029; Thu, 3 Oct 2024 00:00:48 -0700 Received: from nam11-dm6-obe.outbound.protection.outlook.com (mail-dm6nam11lp2168.outbound.protection.outlook.com [104.47.57.168]) by mx0b-0016f401.pphosted.com (PPS) with ESMTPS id 421amr9a1g-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 03 Oct 2024 00:00:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=G6WkawJhmzGTkAPRQJJ2LfJQUPhNeQ4bbP5fbAWtguIcNwOkXPAFibB58AFxUzTPT2plFd9pbUSWNyS/bT73UM10wvmXXuI3LsYhhsmpRT4+dIR9FevtL3kIWr/4zQzcI8D3ogIPlKQDoofX3+zka4Q3YYXirayMnSpfXrWfl8b6ksIef0fU0QnRBWR0aL0giK1OxKeXBSmsvn8e2FVfNE9A8u1iHUzlZz97S+qNyqG/vwfYSg3ey5ZR0W1Z9krLfDqOc6VExXEb9eNM6qxaYV45EOpENX7vI2uQb1cjWj2sCBjsPNg/o+WKx8qKce3yp8D+uvV+VhXaPKBZWMDnYg== 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=BzddDguVhsr1yaqoMXN9gaYKlXOndRxalGJNoENULNs=; b=M3iUviWYM2yxBBiE0sZ29cu7TlzxPIH4eQIGNbp2bl3eiCJFzst+9z+Psnstr3X98v1ozskX27d0GWY9DBC1gWN7kV7ZzN4+H0L/N2ixgSk3OhOdyIfZ7l3pUNvX+vSX4NekqYqg0lZ3RzCSVv5ISKjZlksrJv2BtQfQy0FnpBz+2+GX/gXVfgP5TM4hMoh+HRzYLt+G7p2LXOg18G5A1yXyx98UnBTH6GhFTBdx7ToixEhiU+YfriULEjzW5UFd6sNXx8n/YjV7D0Yv7oJAYAv8lVugjSqCKKwBgYHZIRw2KDFc1SR9ORPba3w+M1ealv7tPnb+C5SQylmFtqBCiA== 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=BzddDguVhsr1yaqoMXN9gaYKlXOndRxalGJNoENULNs=; b=jMqJawHgyqmXrj50O0E0N1dluoC14lcV+UtDjj/sz7wie2AcWEMTzuHqEp6D9fys+smAFuayu9n4mDvg6eF2fPGZgEOpgTxquct+RsI3C6x4cH1GF/D8BQBWoKlBIN/hMapzOCGZw/29PUKKSuxQOsrYYKCcP2N/I54bRP6rG2s= Received: from CO6PR18MB4484.namprd18.prod.outlook.com (2603:10b6:5:359::9) by BL4PR18MB6429.namprd18.prod.outlook.com (2603:10b6:208:5aa::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8026.16; Thu, 3 Oct 2024 07:00:32 +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.8026.016; Thu, 3 Oct 2024 07:00:32 +0000 From: Akhil Goyal To: Akhil Goyal , =?utf-8?B?TW9ydGVuIEJyw7hydXA=?= , fengchengwen , "dev@dpdk.org" CC: "thomas@monjalon.net" , "david.marchand@redhat.com" , "hemant.agrawal@nxp.com" , Anoob Joseph , "pablo.de.lara.guarch@intel.com" , "fiona.trahe@intel.com" , "declan.doherty@intel.com" , "matan@nvidia.com" , "g.singh@nxp.com" , "fanzhang.oss@gmail.com" , "jianjay.zhou@huawei.com" , "asomalap@amd.com" , "ruifeng.wang@arm.com" , "konstantin.v.ananyev@yandex.ru" , "radu.nicolau@intel.com" , "ajit.khaparde@broadcom.com" , Nagadheeraj Rottela , "mdr@ashroe.eu" Subject: RE: [PATCH] [RFC] cryptodev: replace LIST_END enumerators with APIs Thread-Topic: [PATCH] [RFC] cryptodev: replace LIST_END enumerators with APIs Thread-Index: AQHbADIFGxkE+6/rWUeeaxd5J63rhrJl6xjAgA7YAiA= Date: Thu, 3 Oct 2024 07:00:32 +0000 Message-ID: References: <20240905101438.3888274-1-gakhil@marvell.com> <98CBD80474FA8B44BF855DF32C47DC35E9F6A8@smartserver.smartshare.dk> <1d17f91a-fbfe-229b-9772-c149ed9d335a@huawei.com> <98CBD80474FA8B44BF855DF32C47DC35E9F6AD@smartserver.smartshare.dk> In-Reply-To: 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_|BL4PR18MB6429:EE_ x-ms-office365-filtering-correlation-id: 34a527b4-6ba7-4194-50db-08dce37912a5 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230040|366016|7416014|376014|1800799024|38070700018; x-microsoft-antispam-message-info: =?utf-8?B?RGNPb1g0VDdHaXRDVGF0S1h4MkVHQnJKdkk2cFE2ckxWdnFmeExocGJjLzZI?= =?utf-8?B?UDQ5cTYyTnJtRElMVVFQbTNJbmpHTWY0TkRTWHJoZVpheE80TTBkVXpXTCtr?= =?utf-8?B?T3A1elBEU3o5UFU2TUV0OS84Sm1kUTBRV0J3c3ExdG0waXFKNEZZWmRhQ0tj?= =?utf-8?B?cVc5L0cxMFNDdEw3L1FRNXMzNlltaUIvM3g2aGNvS1kwbHlzOFV0dVgwSUQx?= =?utf-8?B?Rk1OVmp3WHRWU21MUFRJNWY2VG9HZzhYUk5DdVBqaWJ3UVJlMmt3eWNNTUpT?= =?utf-8?B?TTJsYWxwSTcvRGZwcVU1TTZ3dWRQTStwbGR0ODc4dE16ZnBsOTJpODdXdmpq?= =?utf-8?B?UVZFYlViMkZkMWJzVnpCMjF1RGI5T0w2aDNEN2o3bkt2akRyZWxoeVBybE5x?= =?utf-8?B?NktWUVBWSWNmQlBlcWJSa3A4bEFRaDNVbmVXTmN5bjNpUWc0VjZBbWV1Nk5S?= =?utf-8?B?bURIMnltcklUQk9reHdmZXVrSzdHMFVKVld2eUI3NFhhemgvUy9KWDJ6cXJW?= =?utf-8?B?bXg3ZzZjMHNCLzFwZW5ZRjNkRng4cFowekdodVlZSGZSV0lRanpEcDRPUm50?= =?utf-8?B?dnBqSkpxWkZlMW5hbnNhd1UxdVUzVjFtUlBlSUZkNVpxSmxxeElGamRjL2ZU?= =?utf-8?B?OHB3ZVVXMEVVaEkvR21ydHI0aDBmWmllakJlV2dKYXVuYjdkUmdkbUtXQmsy?= =?utf-8?B?RUEzYm1QblRHVnRzdjJWTW1UME54d3doYzdWRTZDZEJVRGRGTGc4dDlud1pR?= =?utf-8?B?clBjMmJjZG9yMDNHWm0yZnI5SDVta1NZNk1zL0ZsZnZJODJhaFpoUW8wR3BC?= =?utf-8?B?TVFGdFJSVGZLK1FtRlFxdFV0NitUelpkUGxGbkRBNGN6RGZ5aWI5M2lEdUVB?= =?utf-8?B?N3RTZG5jeTRGbVEwZU1qMlZXdWU5TXB2MVJ1MTdlQ3NnS3U5dnN3OGF5Q25L?= =?utf-8?B?ZHJzUXF4N2hNVjRKb3RibVRZNlUwZFhuVnJ4K0luNHdYNjNxb2crT1Z6QTVI?= =?utf-8?B?b1E5MU43QmhSVlZwOURMRHpITkZRd1ZQVnltZTJMMFN5azVoMW5wKzdSUC9u?= =?utf-8?B?U1drOWFVMVdQa2NPUVl3cmtiWUo0SDBrbWxmb29LZ2VKR09wSzlLOTNTSlRo?= =?utf-8?B?OW1YcHdvNlJNVE9oVENTWTcyM3B0TG9ub24rbTJUeTNYSjl5ckRFdmZEUzZ0?= =?utf-8?B?ZVF3SEYvZUEvdzEyRXVjcDZYQ1NSc2hvUE1ybEpjUDNkQ1ZabDdVbDBiQjFi?= =?utf-8?B?K0xsbThYOE04R2pqVFNucHpZMDhYc0t1THU5dCtDdEVOK2ZBMUVLRXdYbU0w?= =?utf-8?B?NjRuMDBrM1dRRkZTYUZlb0xQTEtpTXNMRy9JazhPeTI4dEZJdlllNERYTGkx?= =?utf-8?B?OEt5aEN6VWxyV0hTT3libHk4ajFIb2xDd1NxbFc1bEFWbkRUUTNHemRwNkN6?= =?utf-8?B?Z0FnUEZTeTh6cUo4QktEUW84dTRSbW9YanR6OFJYNEhtVFBIYUQ4OUhFMVAx?= =?utf-8?B?NVMyVERubUxjdDBQTkNZamRQN0FGT3ZmOVV2VEF0MW9MazUxMDY5dnY2Nk5X?= =?utf-8?B?d2RHMWNkbGJ3ZzBLdlc5dWt2WFBuSEV4bmlkaUx2clM5ekRTQStmdisyemYy?= =?utf-8?B?bXovb0VQcFlpYllHNk9MaVRSbm83U28yYTYzd0VjRHM5WWlTNW5LVG5BSHZz?= =?utf-8?B?WnNobk5uYzQ2N3FCa3ZTNXJQU3B0VUNiR0piQWFLT1hDb0xaLytacUZBTGxs?= =?utf-8?B?bXpiWjlmMkgxUGt2V2RuL3ozdENJVTZJVklLaTJuWVorbUhmUURrcHpWWDFH?= =?utf-8?B?YnJtc2twdTB3M0dCR1JJQT09?= 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)(366016)(7416014)(376014)(1800799024)(38070700018); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?NDZYTWxHelphVEY0TU9PY1duc1RDaGdnS1o1WmsvUzJOSnhqTUpVNlFOckZX?= =?utf-8?B?eVBoc0g0VFhubmxNZVNBc09XZ0dTZFpUQ1ZsRFlJa2pKYzJacVNHUzl4K0sz?= =?utf-8?B?ZEk4cXpoMEFEQlBvaWJZcFdQbUxiR0w1Z2o2ZzZmY0lVUjRmazgxS215Y1R0?= =?utf-8?B?Y0tBREZZNVAvZ0xReUhOdTBJNTg4Ynh4bjMxem1JMzlmQWJ3WDJIMzRmdUxy?= =?utf-8?B?MGg3YkI0c3U2QS9qQlR2dG1uOW9NeGpobXdKUmcva3VzdlBoSFMzZDdZamxU?= =?utf-8?B?Qi9SYzFKWTJPb3FvSWt0aUdqR1ZxZWFFYXRkLzNkazNCZnJPM0NsbjhkTzYw?= =?utf-8?B?YVEySU9qSnFFWXd2cGlKaDFHQ1VxYk1wbUlpOHRaTFl4QWlCY2hPUUcySXIz?= =?utf-8?B?NUsrNW1hNzJRQW9lVmNqWWFhRDlBazZ2dncvOHo5VFlBVHVqNkFqdEl5RHBJ?= =?utf-8?B?dWZkRTBVeWpvc1FCc1I5S0RTZzNCQWovSHExVytxUHFPRUNsZndwN2dFd1g1?= =?utf-8?B?c0FlRGpEV3pRV2VpQ3o5SnVDL3V1ei9lNGhGdU5LNUtnVG1WTXBlT1M0aXB1?= =?utf-8?B?dkljWkptMG5yeko4ZEc5TkZ2eVVkcE1Xbjg0Tm9QUE9teENncXJkTmx6MWxl?= =?utf-8?B?azRrcWhrM3UzekRTaEIzTGJ6d0lZaGxTU1FzaWV4a2lQa1dtRFRWaDNIWjFn?= =?utf-8?B?MjV4TC9XOU13OXJJQmJ5cGJEWmZENGYzSmlqTllIRmNZVklUT1ZaR1FobEpR?= =?utf-8?B?U1hBamtEN1NyRDMraDFKZEhyY3pRZHNLZ2hjdW5KM0JhN0x1cU9HK0czS0JB?= =?utf-8?B?Z2hkdjZhWndRU3JCTXplbStUemxlRFVKS213OWc5VnA4WWVQd1pVbFJ4V3VS?= =?utf-8?B?RHlCTS9LZlMrTDVlbkdkWDI1NlJ6bVNxU0QybG5kQy96SXowSm1xVXpaU2cr?= =?utf-8?B?YXhPQ2drVW5ocElCaUNhMHp3Q2ZHaWh5SzBrOGQwMmdKTVNHVDNnMDRVWVZo?= =?utf-8?B?amdFSml3THB6Wk9WZC8yRnRUSXRmYURRY3JTZ3JqV2YxYUc1OTAzWHJBV0E3?= =?utf-8?B?ZDZwTCtTQWVobGJpR2tkUXBBUnJsNFlIWXRPZStWamp1YnBvUC80TUNJRFcv?= =?utf-8?B?YkVwMWNZc0VxaDdKZ2JxZCttSEs2ZzI0aXpqYUd5YVhLUnhLOURmWDdJTk56?= =?utf-8?B?OExrTGsycU1RQnRJUlFTTUczanNxNTBzL0M1VjRPS25vdVBoY2R2NXRsOVZh?= =?utf-8?B?aktYUHV5S0hEblFPTmNGRkd6YlRvRTg4RndFYk4za3pJdjRTdGIxU3V1S1Uw?= =?utf-8?B?Z0N5dGVQbjJpZisvR09zTno4R2VVTHlDK1dINGJPN3h0ZVBvc1lLbjFScUxE?= =?utf-8?B?Tnc3akx6ZEgvNVJDT1d4MmhCOHFoNDlFUlFhNUhPd0YxZWNNa0VFMFE1aUhS?= =?utf-8?B?WVY1YWc1eHJWQzhsOFRaUmJnTVY0RC9kZGluT2VOQ2ZZVStDUnRzRElzSmtG?= =?utf-8?B?RDZxanAyS2NSZzRVaWx3NW5VMkg0c2s3bmEzYTNYcEN6VGx4UDBCc0JiZklU?= =?utf-8?B?WDQvWGVVeUpzRTJ6VGlnN0FPaHYyVlN5RjN6NkZRVnNzNW0vazJaN09aK21J?= =?utf-8?B?RGQyNnhQdnJBMkUzNm1aRFhTZmp2aW42RlR4RTMraDlMR20xa3huRHVnejNX?= =?utf-8?B?ZG9oN1FJdkpJRlNibXZEMGw0aXA3Y2M5bjNHQlNySXdLM202QkQ4UkVrVDls?= =?utf-8?B?NC8yU09oVzYyOVZTQktBeDM4L1pSMUR4OG94SENiRlVNOGs2WVBSUzZsa2xx?= =?utf-8?B?eTNCbTlHdjloRmZKa3M5TmxMWHh6L1UzZkQwbGZmdndqeEp4ZlBybTN1cGl2?= =?utf-8?B?MlFKcUFGd1JhaTNBWEFQbm5aTmdHa2VvWTdwS3dZVy9CVU85Y0hKL1BwVzBk?= =?utf-8?B?enBMWG5LQ1NiMUhKd3kxcFkycUUzbU5rTzVyRFpUY21OM3ZCNTZ1eDFRYXNp?= =?utf-8?B?QTZJb0hLdUdrblkyWTllY0dxOGtUc2NyUi9qOTJ0VjYrZldtT29TSm9SNTBs?= =?utf-8?B?TEEvQXZTRjVuLytTN0FPaVVEaUZIMFQ1MUtxWjlzWHZzbzhaMVBEY0ViNlpW?= =?utf-8?Q?uvYc=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: 34a527b4-6ba7-4194-50db-08dce37912a5 X-MS-Exchange-CrossTenant-originalarrivaltime: 03 Oct 2024 07:00:32.2769 (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: AgK1cmWDKg5DkHj1q9KYpA3TCl9N3ecGvEwVfaGD+tCmiu7l5gWYqXyjQF1MH6/0AhI2R66oyzsCw8mPUvfkMA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL4PR18MB6429 X-Proofpoint-ORIG-GUID: 3U0fBaJ3lDOQ7mPT7U4o-CTjZML2auaC X-Proofpoint-GUID: 3U0fBaJ3lDOQ7mPT7U4o-CTjZML2auaC 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 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org IEhpIE1vcnRlbiwNCj4gDQo+IEFwb2xvZ2llcyBmb3IgZGVsYXllZCByZXNwb25zZS4NCj4gPiBN YXliZSBhIGNvbWJpbmF0aW9uLCByZXR1cm5pbmcgdGhlIGxvd2VzdCBlbmQgb2YgdGhlIHR3byB2 ZXJzaW9ucyBvZiB0aGUgbGlzdCwNCj4gPiB3b3VsZCB3b3JrLi4uDQo+ID4NCj4gPiAtLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+ID4gQ29tbW9uIGhlYWRlciBmaWxlIChydGVf Y29tbW9uLmgpOg0KPiA+IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gPg0K PiA+IC8qIEFkZCBhdCBlbmQgb2YgZW51bSBsaXN0IGluIHRoZSBoZWFkZXIgZmlsZS4gKi8NCj4g PiAjZGVmaW5lIFJURV9FTlVNX0xJU1RfRU5EKG5hbWUpIFwNCj4gPiBfICMgbmFtZSAjIF9FTlVN X0xJU1RfRU5EIC8qKjwgQGludGVybmFsICovDQo+ID4NCj4gPiAvKiBBZGQgc29tZXdoZXJlIGlu IGhlYWRlciBmaWxlLCBwcmVmZXJhYmx5IGFmdGVyIHRoZSBlbnVtIGxpc3QuICovDQo+ID4gI2Rl ZmluZSBydGVfZGVjbGFyZV9lbnVtX2xpc3RfZW5kKG5hbWUpIFwNCj4gPiAvKiogQGludGVybmFs ICovIFwNCj4gPiBpbnQgXyMgbmFtZSAjIF9lbnVtX2xpc3RfZW5kKHZvaWQpOyBcDQo+ID4gXA0K PiA+IHN0YXRpYyBpbnQgbmFtZSAjIF9lbnVtX2xpc3RfZW5kKHZvaWQpIFwNCj4gPiB7IFwNCj4g PiAJc3RhdGljIGludCBjYWNoZWQgPSAwOyBcDQo+ID4gXA0KPiA+IAlpZiAobGlrZWx5KGNhY2hl ZCAhPSAwKSkgXA0KPiA+IAkJcmV0dXJuIGNhY2hlZDsgXA0KPiA+IFwNCj4gPiAJcmV0dXJuIGNh Y2hlZCA9IFJURV9NSU4oIFwNCj4gPiAJCQlSVEVfRU5VTV9MSVNUX0VORChuYW1lKSwgXA0KPiA+ IAkJCV8gIyBuYW1lICMgX2VudW1fbGlzdF9lbmQoKSk7IFwNCj4gPiB9IFwNCj4gPiBcDQo+ID4g aW50IF8jIG5hbWUgIyBfZW51bV9saXN0X2VuZCh2b2lkKQ0KPiA+DQo+ID4gLyogQWRkIGluIHRo ZSBsaWJyYXJ5L2RyaXZlciBpbXBsZW1lbnRhdGlvbi4gKi8NCj4gPiAjZGVmaW5lIHJ0ZV9kZWZp bmVfZW51bV9saXN0X2VuZChuYW1lKSBcDQo+ID4gaW50IF8jIG5hbWUgIyBfZW51bV9saXN0X2Vu ZCh2b2lkKSBcDQo+ID4geyBcDQo+ID4gCXJldHVybiBSVEVfRU5VTV9MSVNUX0VORChuYW1lKTsg XA0KPiA+IH0gXA0KPiA+IFwNCj4gPiBpbnQgXyMgbmFtZSAjIF9lbnVtX2xpc3RfZW5kKHZvaWQp DQo+ID4NCj4gPiAtLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiA+IExpYnJhcnkgaGVhZGVyIGZpbGU6 DQo+ID4gLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gPg0KPiA+IGVudW0gcnRlX2NyeXB0b19hc3lt X29wX3R5cGUgew0KPiA+IAlSVEVfQ1JZUFRPX0FTWU1fT1BfVkVSSUZZLA0KPiA+IAkvKio8IFNp Z25hdHVyZSBWZXJpZmljYXRpb24gb3BlcmF0aW9uICovDQo+ID4gCVJURV9FTlVNX0xJU1RfRU5E KHJ0ZV9jcnlwdG9fYXN5bV9vcCkNCj4gDQo+IFdpbGwgdGhlIEFCSSBjaGVjayBiZSBvayBmb3Ig YWRkaW5nIGFueXRoaW5nIGluIGJldHdlZW4NCj4gUlRFX0NSWVBUT19BU1lNX09QX1ZFUklGWSBh bmQNCj4gUlRFX0VOVU1fTElTVF9FTkQocnRlX2NyeXB0b19hc3ltX29wKT8NCj4gRG9u4oCZdCB3 ZSBuZWVkIHRvIGFkZCBleGNlcHRpb24gZm9yIHRoYXQgaWYgd2Ugc29tZWhvdyBtYWtlIGl0IGlu dGVybmFsIGJ5DQo+IGFkZGluZyBhIGNvbW1lbnQgb25seT8NCj4gTGlicmFyeSBpcyBhY3R1YWxs eSBub3QgcmVzdHJpY3RpbmcgdGhlIGFwcGxpY2F0aW9uIHRvIG5vdCB1c2UNCj4gUlRFX0VOVU1f TElTVF9FTkQocnRlX2NyeXB0b19hc3ltX29wKSBkaXJlY3RseS4NCj4gDQo+IEFsc28gd2UgbWF5 IG5lZWQgdG8gZXhwb3NlIHRoZSAuYyBmaWxlIGludGVybmFsIGZ1bmN0aW9uIGFzIGV4cGVyaW1l bnRhbCBpbg0KPiB2ZXJzaW9uLm1hcA0KPiANCj4gPiB9DQo+ID4NCj4gPiBydGVfZGVjbGFyZV9l bnVtX2xpc3RfZW5kKHJ0ZV9jcnlwdG9fYXN5bV9vcCk7DQo+ID4NCj4gPiAtLS0tLS0tLS0tLS0t LS0NCj4gPiBMaWJyYXJ5IEMgZmlsZToNCj4gPiAtLS0tLS0tLS0tLS0tLS0NCj4gPg0KPiA+IHJ0 ZV9kZWZpbmVfZW51bV9saXN0X2VuZChydGVfY3J5cHRvX2FzeW1fb3ApOw0KPiANCj4gSWYgd2Ug d2FudCB0byBtYWtlIGl0IGEgZ2VuZXJpYyB0aGluZyBpbiBydGVfY29tbW9uLmgNCj4gV2lsbCB0 aGUgYmVsb3cgY2hhbmdlIGJlIG9rPw0KPiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tDQo+IENvbW1vbiBoZWFkZXIgZmlsZSAocnRlX2NvbW1vbi5oKToNCj4gLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiAjZGVmaW5lIHJ0ZV9kZWZpbmVfZW51bV9saXN0X2Vu ZChuYW1lLCBsYXN0X3ZhbHVlKSBcDQo+IHN0YXRpYyBpbmxpbmUgaW50IG5hbWUgIyMgX2VudW1f bGlzdF9lbmQodm9pZCkgXA0KPiB7IFwNCj4gICAgICAgIHJldHVybiBsYXN0X3ZhbHVlICsgMTsg XA0KPiB9DQo+IA0KPiAtLS0tLS0tLS0tLS0tLS0tDQo+IExpYiBoZWFkZXIgZmlsZQ0KPiAtLS0t LS0tLS0tLS0tLS0tDQo+IC8vQWZ0ZXIgdGhlIGVudW0gZGVmaW5pdGlvbiBkZWZpbmUgdGhlIGxp c3QgZW5kIGFzIGJlbG93DQo+IHJ0ZV9kZWZpbmVfZW51bV9saXN0X2VuZChydGVfY3J5cHRvX2Fz eW1fb3AsDQo+IFJURV9DUllQVE9fQVNZTV9PUF9WRVJJRlkpOw0KPiANCj4gDQo+IEFuZCB3aGVy ZXZlciBsaXN0IGVuZCBpcyBuZWVkZWQgdXNlIHJ0ZV9jcnlwdG9fYXN5bV9vcF9lbnVtX2xpc3Rf ZW5kKCk/DQo+IA0KPiBXaXRoIHRoaXMgY2hhbmdlLCBhYmkgY2hlY2sgd2lsbCBub3QgY29tcGxh aW4gZm9yIGFueSBuZXcgYWRkaXRpb24gYXQgdGhlIGVuZCBvZg0KPiBlbnVtLg0KPiBBbmQgd2Ug ZG8gbm90IG5lZWQgdG8gZXhwb3NlIGFueSBpbnRlcm5hbCBBUEkgaW4gdmVyc2lvbi5tYXAuDQo+ IA0KQ2FuIHdlIG1vdmUgZm9yd2FyZCB3aXRoIGFib3ZlIHN1Z2dlc3Rpb24/DQo=