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 60B51A0548; Thu, 4 Nov 2021 05:42:35 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 2C16840E5A; Thu, 4 Nov 2021 05:42:35 +0100 (CET) Received: from EUR02-VE1-obe.outbound.protection.outlook.com (mail-eopbgr20066.outbound.protection.outlook.com [40.107.2.66]) by mails.dpdk.org (Postfix) with ESMTP id 850ED40DFD for ; Thu, 4 Nov 2021 05:42:33 +0100 (CET) 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=kHtYrN3jVPNUjAh5QCK4RSxiZgL2UtiYVSiD+WKU1ps=; b=lwNWZA0aAwqOXC6JWU0u8eDZVfdUE0g/Xn0s9NQyHN2M94CMdj5xJdJlDwFW3/Y97QS2l6QcureeY9OWBC4APzckeNkrvGRjMrMmdYxoe3WNVgpPi7xEuzkiuS3QK7/woaAUnyLrjORd9k8zHN+nG95+yK+I4JOSgqNaFoWrgOk= Received: from AM5PR0701CA0020.eurprd07.prod.outlook.com (2603:10a6:203:51::30) by DBBPR08MB4299.eurprd08.prod.outlook.com (2603:10a6:10:ce::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4669.10; Thu, 4 Nov 2021 04:42:29 +0000 Received: from VE1EUR03FT050.eop-EUR03.prod.protection.outlook.com (2603:10a6:203:51:cafe::1a) by AM5PR0701CA0020.outlook.office365.com (2603:10a6:203:51::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4669.5 via Frontend Transport; Thu, 4 Nov 2021 04:42:29 +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; Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by VE1EUR03FT050.mail.protection.outlook.com (10.152.19.209) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4649.14 via Frontend Transport; Thu, 4 Nov 2021 04:42:29 +0000 Received: ("Tessian outbound e7ce0d853b63:v108"); Thu, 04 Nov 2021 04:42:28 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: e5b23e3596cebcef X-CR-MTA-TID: 64aa7808 Received: from 53712ed6d9c7.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 13EF3288-8EAF-4586-A955-6DD8076A91D4.1; Thu, 04 Nov 2021 04:42:18 +0000 Received: from EUR01-HE1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 53712ed6d9c7.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 04 Nov 2021 04:42:18 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=oVGf45eg6KviGhrxKUtBm6UjgqquwGuttvlvhjHelPHMhfj+wfLtt8m+Fh89sN1MhTxAHHN0aPyW36nMu8NMhg2X0lxtfAlqzqPJlPe6DtEX8Ieyhl2ffNLAsolGVUm6GLX7We2XvOR3ewZEfB3KwjJt3dCsxC6HJnC98a8HPxw29GdIXhMaxWMJGakdzGECbQ+h5ziZVne6QI86C6JKY+bRPO487YhaErMw92zjc4NlFngjdgkle5LclYz7XDpE2iIJHaj8g2sKI0ZtU3RU93hqzAlnCtaHxmS8CI4/IN+HIICAc+95qPdoHqciq5F08Ibq1XrvsXJ7uUdhJO1jyw== 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=kHtYrN3jVPNUjAh5QCK4RSxiZgL2UtiYVSiD+WKU1ps=; b=HFfdXbewZyArxi+CTfnhY/OdT6P0Hf6ShMzPLW9UMXX8xfKX9qwXWR1qZcxdSaCR//CQzyi+d7NR7GoiqJ7ZioelmYRqI3sx4lNJp9yi5Cx2wDTH9/HOBK7ZWFz3yNRRwiVIeapEjgoMO70oGQz0yYY5aoID0+NV0gbAiV8SwUCU+mgmljjVB2Fq5g1MghUrwu5pk609pYn4OegKxzMQC6B5OHJHScMpoRWGNcmVUBIPUAt0Fhd++yMf5/1/SN5NzjS5FSPULgbSXO8Qhcf3BXgQ78zzyHemQdaZxPbFGHcnhstJL6efCKaTHV4RmmhSwjFmuh8l65mgVLB6Cye3jA== 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=kHtYrN3jVPNUjAh5QCK4RSxiZgL2UtiYVSiD+WKU1ps=; b=lwNWZA0aAwqOXC6JWU0u8eDZVfdUE0g/Xn0s9NQyHN2M94CMdj5xJdJlDwFW3/Y97QS2l6QcureeY9OWBC4APzckeNkrvGRjMrMmdYxoe3WNVgpPi7xEuzkiuS3QK7/woaAUnyLrjORd9k8zHN+nG95+yK+I4JOSgqNaFoWrgOk= Received: from VI1PR08MB4622.eurprd08.prod.outlook.com (2603:10a6:803:bc::17) by VE1PR08MB5613.eurprd08.prod.outlook.com (2603:10a6:800:1a7::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4669.10; Thu, 4 Nov 2021 04:42:15 +0000 Received: from VI1PR08MB4622.eurprd08.prod.outlook.com ([fe80::4565:2a3:1255:8880]) by VI1PR08MB4622.eurprd08.prod.outlook.com ([fe80::4565:2a3:1255:8880%3]) with mapi id 15.20.4649.020; Thu, 4 Nov 2021 04:42:15 +0000 From: Dharmik Thakkar To: =?utf-8?B?TW9ydGVuIEJyw7hydXA=?= CC: Honnappa Nagarahalli , "Ananyev, Konstantin" , Olivier Matz , Andrew Rybchenko , "dev@dpdk.org" , nd , Ruifeng Wang Thread-Topic: [dpdk-dev] [RFC] mempool: implement index-based per core cache Thread-Index: AQHXtiCGgQDw45TafkWNVzJMucbA66u+1ETwgAE6tgCAAv3qYIAocoNQgAFvUzCABS+EgIAABHVAgADdt4A= Date: Thu, 4 Nov 2021 04:42:15 +0000 Message-ID: <00330F38-A5D0-4B56-872E-0EA0E24808F7@arm.com> References: <20210930172735.2675627-1-dharmik.thakkar@arm.com> <98CBD80474FA8B44BF855DF32C47DC35D86C83@smartserver.smartshare.dk> <98CBD80474FA8B44BF855DF32C47DC35D86C9E@smartserver.smartshare.dk> In-Reply-To: <98CBD80474FA8B44BF855DF32C47DC35D86C9E@smartserver.smartshare.dk> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-publictraffictype: Email X-MS-Office365-Filtering-Correlation-Id: 2710f370-67bd-416f-3bc1-08d99f4d8228 x-ms-traffictypediagnostic: VE1PR08MB5613:|DBBPR08MB4299: X-Microsoft-Antispam-PRVS: x-checkrecipientrouted: true nodisclaimer: true x-ms-oob-tlc-oobclassifiers: OLM:8882;OLM:8882; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: p2ew5e7NkE1NzO93GdiXdOLolCe8gMy6O5FaaRexJSvnI/++1pMbVj1aSMmPkb7OFvV3bJZmxhO5Hg8A/Z+JKBmbHsNfAeYXAqdMGKIwOQ/3r5fPCFQXi/Xt/pIzr83wVug0QNOG1kuUA/HDLE6N94K05YEfTjXQruEnpoLDaIw9jCTQS68q0zQprnpg0xmZ2bOBT/k24sykQihAPG1OhxnKbdaf5mBp7j8bOpoeUvgfxm8b/q6K+ZVAY9gmK89cH74h52klO8aLfHE7ID2i23dbuV8ABDuqzD4SfKxVu9UvHSIwS2sSrAEpciy8Uhfszu3IAOdwIFwazXhUjgmZnXuYmMuLOVqEwEzlQEmhltueeOrwWQC+VbaWjEtQJufg6WertlJMO5TUNVdkDvaKsqssD1JKxcIiIoOSGY/+npgExZ4ME6Nf+TXqiWO3tPOc8S+aUsx7E8wT5XEnJljKAiF49B9syN5srHUJgrYPGAWAyAv7HDO6+UwtRZFC6B6SL2usXXPw6pJnt53TiPQG8JcHphK7O+PYb5EVGDPUkWuqUn9dM7JQnSn3z/KMBpb30qd2fJW0Tj50FRpAZz+suN+qc2PJcKXZLIGnHymC+HfWBdBYVYdgQ/0gK9E6gH4SaQ5pbmlUt+UUumsNIFbDoVY4sKi31gH7ZoH5LwsErwwYu9Wmn/Ue/uEf6Mvd5/rI8LZEvdtb51Taky+BEBDgKhAuR9iDySXsvA7kQk4EoJFb0Qv6JGexTQbEkceIG3nW X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:VI1PR08MB4622.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(8676002)(508600001)(122000001)(5660300002)(4326008)(36756003)(66574015)(38100700002)(33656002)(6506007)(53546011)(2616005)(8936002)(38070700005)(316002)(71200400001)(64756008)(66556008)(91956017)(26005)(6486002)(76116006)(66476007)(66946007)(6512007)(6916009)(2906002)(54906003)(83380400001)(66446008)(186003)(86362001)(45980500001); DIR:OUT; SFP:1101; Content-Type: text/plain; charset="utf-8" Content-ID: <460E86DC5F5D8D4594A01ABB87F9D138@eurprd08.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR08MB5613 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: VE1EUR03FT050.eop-EUR03.prod.protection.outlook.com X-MS-Office365-Filtering-Correlation-Id-Prvs: d0a4b826-6421-4398-2e63-08d99f4d7a06 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: RSKqwT44TBdDRhDDPuRFOvNRZ0FY5tsUv92xxCubVbz45ynhs6RXpfWAGHmgM3jVsDpUI0zCbwT27NmvzKY1rtLgsXra/J0Or1PTY4ycjDhHwbvPqtyp9i8tFBRDko+m5kGwUc5B/NV5ztlpxcEGUXugtJJEUH+onW02XDVMYHmpyfLB4OdF4DFB5JfNKhLqTqkxDd4MDH9U7kSgLaTgrmBEu8bUt9n1El4fRuPbH4g1RGvbXc0wzKMILqgL07zVxeaKwFExJGZTY8exahDzbvEngR2pOlOmSdgWZ3gMD5xTRvAYWxExLtL6iRcR0c7UkusYsxaTdeQbe7SLntykxTTg5PaMdscLKjbdYf4AHtouNdfgGTxDbX6DV5WmQ0yiZGzzKtyu9naWfMP+awvYK7bqNZTJ16VBGy4Z6TwUEo63yUloZM98E8bXFD58KmDBxFsBG2dGzJovNbIxKsafiO9Mn2wdUZH5VY9ub/qgkRLJG1x8YvZthgYI39WtrAOJjKOCHHOlLyvxT7/4Kdye6X9jDylIHyzcVcXqZXaUwy8FCWUyyqaDv44n+jOqNgmXIrdDBBdrMFVi+6i5sgoSDBOr6afsaRujOLOdggroF/8mwVuPMBs/wlUHPAcmR1+KX3OtkmvdPhV10sgbPO7d08QQiav1nLIoFiKmEX7jSvETDXYFDj+zau4iVGH1L5qNb1N0YhbXmKzb5HMnqkw5Yg== 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:(4636009)(36840700001)(46966006)(83380400001)(36860700001)(2906002)(81166007)(186003)(336012)(6862004)(356005)(53546011)(5660300002)(6506007)(8936002)(26005)(4326008)(47076005)(2616005)(66574015)(70586007)(316002)(82310400003)(54906003)(33656002)(70206006)(86362001)(36756003)(508600001)(6486002)(6512007)(8676002); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Nov 2021 04:42:29.3209 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 2710f370-67bd-416f-3bc1-08d99f4d8228 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: VE1EUR03FT050.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB4299 Subject: Re: [dpdk-dev] [RFC] mempool: implement index-based per core cache 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 Sender: "dev" DQoNCj4gT24gTm92IDMsIDIwMjEsIGF0IDEwOjUyIEFNLCBNb3J0ZW4gQnLDuHJ1cCA8bWJAc21h cnRzaGFyZXN5c3RlbXMuY29tPiB3cm90ZToNCj4gDQo+PiBGcm9tOiBkZXYgW21haWx0bzpkZXYt Ym91bmNlc0BkcGRrLm9yZ10gT24gQmVoYWxmIE9mIERoYXJtaWsgVGhha2thcg0KPj4gU2VudDog V2VkbmVzZGF5LCAzIE5vdmVtYmVyIDIwMjEgMTYuMTMNCj4+IA0KPj4gSGksDQo+PiANCj4+IFRo YW5rIHlvdSBldmVyeW9uZSBmb3IgdGhlIGNvbW1lbnRzISBJIGFtIGN1cnJlbnRseSB3b3JraW5n IG9uIG1ha2luZw0KPj4gdGhlIGdsb2JhbCBwb29sIHJpbmfigJlzIGltcGxlbWVudGF0aW9uIGFz IGluZGV4IGJhc2VkLg0KPj4gT25jZSBkb25lLCBJIHdpbGwgc2VuZCBhIHBhdGNoIGZvciBjb21t dW5pdHkgcmV2aWV3LiBJIHdpbGwgYWxzbyBtYWtlDQo+PiBpdCBhcyBhIGNvbXBpbGUgdGltZSBv cHRpb24uDQo+IA0KPiBTb3VuZHMgZ29vZCB0byBtZS4NCj4gDQo+IFRoaXMgY291bGQgcHJvYmFi bHkgYmUgYWJzdHJhY3RlZCB0byBvdGhlciBsaWJyYXJpZXMgdG9vLiBFLmcuIHRoZSByaW5nIGxp YnJhcnkgaG9sZHMgcG9pbnRlcnMgdG8gb2JqZWN0cyAodm9pZCAqKTsgYW4gYWx0ZXJuYXRpdmUg cmluZyBsaWJyYXJ5IGNvdWxkIGhvbGQgaW5kZXhlcyB0byBvYmplY3RzICh1aW50MzJfdCkuIEEg cmluZyBvZnRlbiBob2xkcyBvYmplY3RzIGZyb20gdGhlIHNhbWUgbWVtcG9vbCwgYW5kIHRoZSBh cHBsaWNhdGlvbiBrbm93cyB3aGljaCBtZW1wb29sLCBzbyBpbmRleGluZyB3b3VsZCBiZSB1c2Vm dWwgaGVyZSB0b28uDQo+IA0KDQpZZXMsIHJpbmcgbGlicmFyeSB3aXRoaW4gRFBESyBoYXMgdGhl IEFQSXMgdG8gc3VwcG9ydCBjb25maWd1cmFibGUgZWxlbWVudCBzaXplDQoNCj4+IA0KPj4+IE9u IE9jdCAzMSwgMjAyMSwgYXQgMzoxNCBBTSwgTW9ydGVuIEJyw7hydXAgPG1iQHNtYXJ0c2hhcmVz eXN0ZW1zLmNvbT4NCj4+IHdyb3RlOg0KPj4+IA0KPj4+PiBGcm9tOiBNb3J0ZW4gQnLDuHJ1cA0K Pj4+PiBTZW50OiBTYXR1cmRheSwgMzAgT2N0b2JlciAyMDIxIDEyLjI0DQo+Pj4+IA0KPj4+Pj4g RnJvbTogZGV2IFttYWlsdG86ZGV2LWJvdW5jZXNAZHBkay5vcmddIE9uIEJlaGFsZiBPZiBIb25u YXBwYQ0KPj4+Pj4gTmFnYXJhaGFsbGkNCj4+Pj4+IFNlbnQ6IE1vbmRheSwgNCBPY3RvYmVyIDIw MjEgMTguMzYNCj4+Pj4+IA0KPj4+Pj4gPHNuaXA+DQo+Pj4+Pj4gDQo+Pj4+Pj4gDQo+Pj4+Pj4+ Pj4gQ3VycmVudCBtZW1wb29sIHBlciBjb3JlIGNhY2hlIGltcGxlbWVudGF0aW9uIGlzIGJhc2Vk IG9uDQo+Pj4+PiBwb2ludGVyDQo+Pj4+Pj4+Pj4gRm9yIG1vc3QgYXJjaGl0ZWN0dXJlcywgZWFj aCBwb2ludGVyIGNvbnN1bWVzIDY0YiBSZXBsYWNlIGl0DQo+Pj4+PiB3aXRoDQo+Pj4+Pj4+Pj4g aW5kZXgtYmFzZWQgaW1wbGVtZW50YXRpb24sIHdoZXJlIGluIGVhY2ggYnVmZmVyIGlzIGFkZHJl c3NlZA0KPj4+Pj4gYnkNCj4+Pj4+Pj4+PiAocG9vbCBhZGRyZXNzICsgaW5kZXgpDQo+Pj4+IA0K Pj4+PiBJIGxpa2UgRGhhcm1paydzIHN1Z2dlc3Rpb24gdmVyeSBtdWNoLiBDUFUgY2FjaGUgaXMg YSBjcml0aWNhbCBhbmQNCj4+Pj4gbGltaXRlZCByZXNvdXJjZS4NCj4+Pj4gDQo+Pj4+IERQREsg aGFzIGEgdGVuZGVuY3kgb2YgdXNpbmcgcG9pbnRlcnMgd2hlcmUgaW5kZXhlcyBjb3VsZCBiZSB1 c2VkDQo+Pj4+IGluc3RlYWQuIEkgc3VwcG9zZSBwb2ludGVycyBwcm92aWRlIHRoZSBhZGRpdGlv bmFsIGZsZXhpYmlsaXR5IG9mDQo+Pj4+IG1peGluZyBlbnRyaWVzIGZyb20gZGlmZmVyZW50IG1l bW9yeSBwb29scywgZS5nLiBtdWx0aXBsZSBtYnVmDQo+PiBwb29scy4NCj4+Pj4gDQo+PiANCj4+ IEFncmVlZCwgdGhhbmsgeW91IQ0KPj4gDQo+Pj4+Pj4+PiANCj4+Pj4+Pj4+IEkgZG9uJ3QgdGhp bmsgaXQgaXMgZ29pbmcgdG8gd29yazoNCj4+Pj4+Pj4+IE9uIDY0LWJpdCBzeXN0ZW1zIGRpZmZl cmVuY2UgYmV0d2VlbiBwb29sIGFkZHJlc3MgYW5kIGl0J3MgZWxlbQ0KPj4+Pj4+Pj4gYWRkcmVz cyBjb3VsZCBiZSBiaWdnZXIgdGhhbiA0R0IuDQo+Pj4+Pj4+IEFyZSB5b3UgdGFsa2luZyBhYm91 dCBhIGNhc2Ugd2hlcmUgdGhlIG1lbW9yeSBwb29sIHNpemUgaXMgbW9yZQ0KPj4+Pj4gdGhhbiA0 R0I/DQo+Pj4+Pj4gDQo+Pj4+Pj4gVGhhdCBpcyBvbmUgcG9zc2libGUgc2NlbmFyaW8uDQo+Pj4+ IA0KPj4+PiBUaGF0IGNvdWxkIGJlIHNvbHZlZCBieSBtYWtpbmcgdGhlIGluZGV4IGFuIGVsZW1l bnQgaW5kZXggaW5zdGVhZCBvZg0KPj4gYQ0KPj4+PiBwb2ludGVyIG9mZnNldDogYWRkcmVzcyA9 IChwb29sIGFkZHJlc3MgKyBpbmRleCAqIGVsZW1lbnQgc2l6ZSkuDQo+Pj4gDQo+Pj4gT3IgaW5z dGVhZCBvZiBzY2FsaW5nIHRoZSBpbmRleCB3aXRoIHRoZSBlbGVtZW50IHNpemUsIHdoaWNoIGlz IG9ubHkNCj4+IGtub3duIGF0IHJ1bnRpbWUsIHRoZSBpbmRleCBjb3VsZCBiZSBtb3JlIGVmZmlj aWVudGx5IHNjYWxlZCBieSBhDQo+PiBjb21waWxlIHRpbWUgY29uc3RhbnQgc3VjaCBhcyBSVEVf TUVNUE9PTF9BTElHTiAoPQ0KPj4gUlRFX0NBQ0hFX0xJTkVfU0laRSkuIFdpdGggYSBjYWNoZSBs aW5lIHNpemUgb2YgNjQgYnl0ZSwgdGhhdCB3b3VsZA0KPj4gYWxsb3cgaW5kZXhpbmcgaW50byBt ZW1wb29scyB1cCB0byAyNTYgR0IgaW4gc2l6ZS4NCj4+PiANCj4+IA0KPj4gTG9va2luZyBhdCB0 aGlzIHNuaXBwZXQgWzFdIGZyb20gcnRlX21lbXBvb2xfb3BfcG9wdWxhdGVfaGVscGVyKCksDQo+ PiB0aGVyZSBpcyBhbiDigJhvZmZzZXTigJkgYWRkZWQgdG8gYXZvaWQgb2JqZWN0cyB0byBjcm9z cyBwYWdlIGJvdW5kYXJpZXMuDQo+PiBJZiBteSB1bmRlcnN0YW5kaW5nIGlzIGNvcnJlY3QsIHVz aW5nIHRoZSBpbmRleCBvZiBlbGVtZW50IGluc3RlYWQgb2YgYQ0KPj4gcG9pbnRlciBvZmZzZXQg d2lsbCBwb3NlIGEgY2hhbGxlbmdlIGZvciBzb21lIG9mIHRoZSBjb3JuZXIgY2FzZXMuDQo+PiAN Cj4+IFsxXQ0KPj4gICAgICAgIGZvciAoaSA9IDA7IGkgPCBtYXhfb2JqczsgaSsrKSB7DQo+PiAg ICAgICAgICAgICAgICAvKiBhdm9pZCBvYmplY3RzIHRvIGNyb3NzIHBhZ2UgYm91bmRhcmllcyAq Lw0KPj4gICAgICAgICAgICAgICAgaWYgKGNoZWNrX29ial9ib3VuZHModmEgKyBvZmYsIHBnX3N6 LCB0b3RhbF9lbHRfc3opIDwNCj4+IDApIHsNCj4+ICAgICAgICAgICAgICAgICAgICAgICAgb2Zm ICs9IFJURV9QVFJfQUxJR05fQ0VJTCh2YSArIG9mZiwgcGdfc3opIC0NCj4+ICh2YSArIG9mZik7 DQo+PiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChmbGFncyAmIFJURV9NRU1QT09MX1BPUFVM QVRFX0ZfQUxJR05fT0JKKQ0KPj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9mZiAr PSB0b3RhbF9lbHRfc3ogLQ0KPj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgKCgodWludHB0cl90KSh2YSArIG9mZiAtIDEpICUNCj4+ICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgdG90YWxfZWx0X3N6KSArIDEpOw0KPj4gICAgICAg ICAgICAgICAgfQ0KPj4gDQo+IA0KPiBPSy4gQWx0ZXJuYXRpdmVseSB0byBzY2FsaW5nIHRoZSBp bmRleCB3aXRoIGEgY2FjaGUgbGluZSBzaXplLCB5b3UgY2FuIHNjYWxlIGl0IHdpdGggc2l6ZW9m KHVpbnRwdHJfdCkgdG8gYmUgYWJsZSB0byBhZGRyZXNzIDMyIG9yIDE2IEdCIG1lbXBvb2xzIG9u IHJlc3BlY3RpdmVseSA2NCBiaXQgYW5kIDMyIGJpdCBhcmNoaXRlY3R1cmVzLiBCb3RoIHg4NiBh bmQgQVJNIENQVXMgaGF2ZSBpbnN0cnVjdGlvbnMgdG8gYWNjZXNzIG1lbW9yeSB3aXRoIGFuIGFk ZGVkIG9mZnNldCBtdWx0aXBsaWVkIGJ5IDQgb3IgOC4gU28gdGhhdCBzaG91bGQgYmUgaGlnaCBw ZXJmb3JtYW5jZS4NCg0KWWVzLCBhZ3JlZWQgdGhpcyBjYW4gYmUgZG9uZS4NCkNhY2hlIGxpbmUg c2l6ZSBjYW4gYWxzbyBiZSB1c2VkIHdoZW4g4oCYTUVNUE9PTF9GX05PX0NBQ0hFX0FMSUdO4oCZ IGlzIG5vdCBlbmFibGVkLg0KT24gYSBzaWRlIG5vdGUsIEkgd2FudGVkIHRvIGJldHRlciB1bmRl cnN0YW5kIHRoZSBuZWVkIGZvciBoYXZpbmcgdGhlICdNRU1QT09MX0ZfTk9fQ0FDSEVfQUxJR04n IG9wdGlvbi4NCg0KPiANCj4+Pj4gDQo+Pj4+Pj4gQW5vdGhlciBwb3NzaWJpbGl0eSAtIHVzZXIg cG9wdWxhdGVzIG1lbXBvb2wgaGltc2VsZiB3aXRoIHNvbWUNCj4+Pj4+IGV4dGVybmFsDQo+Pj4+ Pj4gbWVtb3J5IGJ5IGNhbGxpbmcgcnRlX21lbXBvb2xfcG9wdWxhdGVfaW92YSgpIGRpcmVjdGx5 Lg0KPj4+Pj4gSXMgdGhlIGNvbmNlcm4gdGhhdCBJT1ZBIG1pZ2h0IG5vdCBiZSBjb250aWd1b3Vz IGZvciBhbGwgdGhlIG1lbW9yeQ0KPj4+Pj4gdXNlZCBieSB0aGUgbWVtcG9vbD8NCj4+Pj4+IA0K Pj4+Pj4+IEkgc3VwcG9zZSBzdWNoIHNpdHVhdGlvbiBjYW4gZXZlbiBvY2N1ciBldmVuIHdpdGgg bm9ybWFsDQo+Pj4+Pj4gcnRlX21lbXBvb2xfY3JlYXRlKCksIHRob3VnaCBpdCBzaG91bGQgYmUg YSByZWFsbHkgcmFyZSBvbmUuDQo+Pj4+PiBBbGwgaW4gYWxsLCB0aGlzIGZlYXR1cmUgbmVlZHMg dG8gYmUgY29uZmlndXJhYmxlIGR1cmluZyBjb21waWxlDQo+Pj4+IHRpbWUuDQo+Pj4gDQo+IA0K DQo=