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 B8388A00BE; Sun, 3 Apr 2022 19:37:24 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 5811B4114B; Sun, 3 Apr 2022 19:37:24 +0200 (CEST) Received: from EUR02-HE1-obe.outbound.protection.outlook.com (mail-eopbgr10043.outbound.protection.outlook.com [40.107.1.43]) by mails.dpdk.org (Postfix) with ESMTP id DE9094068A for ; Sun, 3 Apr 2022 19:37:22 +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=UIndHp5VjTIEj0Oe7nZtTUynSYMDzJl9ULm0qBHVelg=; b=jSjjFalLOUW0NC7i9wsmDMFib3+8IlUGn3x1sLzwOR2uP4F2QO48dSvzY+w0Q8dZaCLfI64Ep9BqxctQjOefKrKaAUZZuzUohAIWUCV9yGrITn6VQv5CzRAIeUIILdGHqyZbgL+8NC5Y4YoH5Wl/sMcsLcSVPMO8+xMNNcZxRJc= Received: from AM6PR04CA0031.eurprd04.prod.outlook.com (2603:10a6:20b:92::44) by DB6PR08MB2919.eurprd08.prod.outlook.com (2603:10a6:6:1e::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5123.31; Sun, 3 Apr 2022 17:37:19 +0000 Received: from VE1EUR03FT054.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:92:cafe::30) by AM6PR04CA0031.outlook.office365.com (2603:10a6:20b:92::44) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5123.31 via Frontend Transport; Sun, 3 Apr 2022 17:37:18 +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 VE1EUR03FT054.mail.protection.outlook.com (10.152.19.64) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5123.19 via Frontend Transport; Sun, 3 Apr 2022 17:37:18 +0000 Received: ("Tessian outbound facaf1373bbd:v118"); Sun, 03 Apr 2022 17:37:18 +0000 X-CR-MTA-TID: 64aa7808 Received: from 544a7d9a816a.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 156C83CF-8200-4791-92CC-FEE5F928E28D.1; Sun, 03 Apr 2022 17:37:17 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 544a7d9a816a.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Sun, 03 Apr 2022 17:37:17 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=d4NcCWD5EGIGW4ZIGKHOxhoFq1IS2swjF6ZNIqbZB3KyYE2Ad25JEH1KG68fhlFCeJBUgj1WY6rjkwHRkLxomWQ4oGB5oUCOlG27R/rFtIcFS7Njt/fG6d+CTDqTsV6COQ8zTowAr3Rxl6YQbtg6Y0wFCClySrltOYa4byRTTjrIoeZlb2fMoA6xfuFKAMuTHcCRcWukWdCUEkYcaxU/jlad04eAsG4pswTL8udCtB6UM0Dv3NkGJJ/LgVyXMwTLzxOOsudlgmvkHDirX86PWdeNO6wIh4c907gefnZrJXHqgwyOntGjWkeMBXdyVPv70cDkpUBq3Ed9581woGllbg== 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=UIndHp5VjTIEj0Oe7nZtTUynSYMDzJl9ULm0qBHVelg=; b=eaIV3bAbG1YeB32X3uKPj9oUEfen5s8zv9P6gN8O29aOLlO8Ei53ggsbYejVk/Bt8HV4re3bVz2CEwhcn66vKAe3ZDuLZMkexWAaLxMwEHaKYvcoE92MmJYZ+OVMTZdDT/Z6nDQPor7NjOJKVGvj+EaEsDIlyHZvnsZK8OigLYH9Djw2F3SPYsEfZ9qJWPdMzJFBUN7uLGF8qpVg9wDSNKAGmLku4fB+tS1EzSiX/KABmw/eLxjdol1jzDmSTI+3yxITklExUu+OX4V30DHv5+QvEqUrohsAzOOPXa5tNnp+qjO7B1doDQC9i5TI2YrYeEQt0UO2tDrmTAjx2+3jkQ== 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=UIndHp5VjTIEj0Oe7nZtTUynSYMDzJl9ULm0qBHVelg=; b=jSjjFalLOUW0NC7i9wsmDMFib3+8IlUGn3x1sLzwOR2uP4F2QO48dSvzY+w0Q8dZaCLfI64Ep9BqxctQjOefKrKaAUZZuzUohAIWUCV9yGrITn6VQv5CzRAIeUIILdGHqyZbgL+8NC5Y4YoH5Wl/sMcsLcSVPMO8+xMNNcZxRJc= Received: from DBAPR08MB5814.eurprd08.prod.outlook.com (2603:10a6:10:1b1::6) by PAXPR08MB6928.eurprd08.prod.outlook.com (2603:10a6:102:13e::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5123.21; Sun, 3 Apr 2022 17:37:01 +0000 Received: from DBAPR08MB5814.eurprd08.prod.outlook.com ([fe80::bdab:41f9:79b1:be0d]) by DBAPR08MB5814.eurprd08.prod.outlook.com ([fe80::bdab:41f9:79b1:be0d%4]) with mapi id 15.20.5123.031; Sun, 3 Apr 2022 17:37:01 +0000 From: Honnappa Nagarahalli To: =?utf-8?B?TWF0dGlhcyBSw7ZubmJsb20=?= , "dev@dpdk.org" CC: "thomas@monjalon.net" , David Marchand , "onar.olsen@ericsson.com" , nd , "konstantin.ananyev@intel.com" , "mb@smartsharesystems.com" , "stephen@networkplumber.org" , Ola Liljedahl , nd Subject: RE: [PATCH v3] eal: add seqlock Thread-Topic: [PATCH v3] eal: add seqlock Thread-Index: AQHYRdpxyd0NqRrCTky+5vY5RMVxBKzbWEaAgAJlnQCAALfboA== Date: Sun, 3 Apr 2022 17:37:01 +0000 Message-ID: References: <20220401150749.136921-1-mattias.ronnblom@ericsson.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: 21588A5E576405488CF6223F9B59FE30.0 x-checkrecipientchecked: true Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-MS-Office365-Filtering-Correlation-Id: fa1c795f-ffaf-4fd0-c632-08da159899dd x-ms-traffictypediagnostic: PAXPR08MB6928:EE_|VE1EUR03FT054:EE_|DB6PR08MB2919:EE_ x-ld-processed: f34e5979-57d9-4aaa-ad4d-b122a662184d,ExtAddr X-Microsoft-Antispam-PRVS: x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: xQ9qnbg42jzunWBh679KkSsbWkEIxh/lFtzQyxN/udLbDJzTVwa0f8/UsKWqf48SPcqvq4NGWeeGZYlIV1owcWcEW0ZZO+xEY9W9yeC/Qob2f9Y2oxWVJXrQiOJq0WjvSy/ehYwBFXtq+gWcSNHRxs5T1tVEjFGfkmvlHay8GEY8ObxRuoW1pVusip67X4eq7X1fNeyE7+8Uw1S6DjepEablAAt58ijdKdYs+Q/YteoHD+JsIDu05uy4qaOTaMWF3QYKjGpnAcoyCIKEn62tTkWo5y6QcrhC+K7JLDt77vQt9GqVvxfvQgpr37mF+c7HWyaw48QWFIa74tKyfamvNgnX6Lls2orgcWMwl8iR74RUkH1MG3IZXf1x+457zoGvTUUVf0kqsm0jxUHCJJo/zrbHMHeb+8H6Sw7pa35Gxcs13dyAW5fWCL4GFEKD4xsjrLsaz6+izBUP/Gl1Tu1wGgWwpg8gQJbqFLlFPSmLEpVLYd/waW1zHNo35/Gjf7JYDgWUCTOpQDqPMCKbJGGyfat9SnD60+XNLhEaovvjtVzw9S3kteKt64pCbvYrtpfqLKZvF1S4HWWnvIpMVv8qzwZIP7kE2xbzbI7NWAH6sXzPNb5/xig8/zETtnh/cP1FKcgybL9m1wfNwk+AgIBkwFT3oiECN8fMCpAmm9SeVgLBQym1X5TP0CTpQyfk7z7cADuUMKXmry5NObnGjUEB13wTFXP4KrtsacMX8pfoHwMMsAyUgJal6V3f+p1RtwcxMdxSqWRk6jsuJLk0KjOelb6UptfIS9d6nFQbRX4zf7M= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DBAPR08MB5814.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230001)(4636009)(366004)(110136005)(8676002)(38070700005)(122000001)(76116006)(38100700002)(2906002)(4326008)(71200400001)(54906003)(296002)(316002)(64756008)(66446008)(66556008)(66476007)(66946007)(83380400001)(55016003)(26005)(966005)(8936002)(6506007)(508600001)(33656002)(9686003)(86362001)(186003)(52536014)(5660300002)(7696005); DIR:OUT; SFP:1101; Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB6928 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: VE1EUR03FT054.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 3d55cbe2-cf33-4254-a133-08da15988f83 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: SlE167p84YAkI4A/tdd8/q7gyoX640TLI/tzySQdKUGH175m90ytSh41fp2r+pe83yRK93/kx+MJpkL8iMtV7gC8fhgjHfegKVsR1CtWp+AT8ZtONRV4s8Usug9mRfrNnGWxhqTFGNBI4LDIuyQjLHPYx/MN88QDf4KLhGpngGLQJyHC8lFPY/EMK9KhpXYfvtN3cKxF/4CLQL8jjsRGBPaa+ZyXzn3cQZ4uc5J2buNtV3liloffoHdD/AhtUxc+aQId+ibcXlrvY/NqVX+farJKK+9BeTRwl9eeDnRFiMuuLZBmO6fCzppIBpE9y2M2x2H7objjzP+nbnr/nLn0LPLAzMfqceT2Wh+/xCSlck6He6HcIHEl6sJ9UG+lULgoHeEgVNndXgMfa9BpIeDi3pL3iMVLLXw6NxjLNLB3TjQ7DwLBAu/8cODLQIf2wIbKzSwps7Vl+YRFC1c9ahY/3SILiX1K84i2sYb3dB337I8d7NSDVT6/LChhuFvvUjiSLn8QH8f9ju1lbbTxorZOef6Gc1R49XNBfd6zOR+I6WE7uYQKbS5stuuChgb+xypSKZCOwnFJbjAk1oOYFUsW4szxgIofN9UXMKFwrjyxIAt8pdBvOdePjRrgZ6eEXNOus3e8+McTTOt8dU3/MaaUwnnFeDrOOo9pkVl6K/8TE1eV0Lq6KgQ38AVQIh9T7lVunveAM05A6/GMqZROinGU7+sk5qAj3FE2oWlapKg8jow= 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:(13230001)(4636009)(46966006)(36840700001)(508600001)(81166007)(6506007)(8936002)(336012)(9686003)(86362001)(7696005)(5660300002)(966005)(82310400004)(55016003)(316002)(52536014)(186003)(47076005)(26005)(110136005)(54906003)(33656002)(70206006)(36860700001)(70586007)(83380400001)(4326008)(2906002)(356005)(8676002); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Apr 2022 17:37:18.5913 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: fa1c795f-ffaf-4fd0-c632-08da159899dd 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: VE1EUR03FT054.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR08MB2919 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 PHNuaXA+DQoNCj4gDQo+ID4+ICsgKiBFeGFtcGxlIHVzYWdlOg0KPiA+PiArICogQGNvZGV7LmN9 DQo+ID4+ICsgKiAjZGVmaW5lIE1BWF9ZX0xFTiAoMTYpDQo+ID4+ICsgKiAvLyBBcHBsaWNhdGlv bi1kZWZpbmVkIGV4YW1wbGUgZGF0YSBzdHJ1Y3R1cmUsIHByb3RlY3RlZCBieSBhIHNlcWxvY2su DQo+ID4+ICsgKiBzdHJ1Y3QgY29uZmlnIHsNCj4gPj4gKyAqICAgICAgICAgcnRlX3NlcWxvY2tf dCBsb2NrOw0KPiA+PiArICogICAgICAgICBpbnQgcGFyYW1feDsNCj4gPj4gKyAqICAgICAgICAg Y2hhciBwYXJhbV95W01BWF9ZX0xFTl07DQo+ID4+ICsgKiB9Ow0KPiA+PiArICoNCj4gPj4gKyAq IC8vIEFjY2Vzc29yIGZ1bmN0aW9uIGZvciByZWFkaW5nIGNvbmZpZyBmaWVsZHMuDQo+ID4+ICsg KiB2b2lkDQo+ID4+ICsgKiBjb25maWdfcmVhZChjb25zdCBzdHJ1Y3QgY29uZmlnICpjb25maWcs IGludCAqcGFyYW1feCwgY2hhcg0KPiA+PiArKnBhcmFtX3kpDQo+ID4+ICsgKiB7DQo+ID4+ICsg KiAgICAgICAgIC8vIFRlbXBvcmFyeSB2YXJpYWJsZXMsIGp1c3QgdG8gaW1wcm92ZSByZWFkYWJp bGl0eS4NCj4gPiBJIHRoaW5rIHRoZSBhYm92ZSBjb21tZW50IGlzIG5vdCBuZWNlc3NhcnkuIEl0 IGlzIGJlbmVmaWNpYWwgdG8gY29weSB0aGUNCj4gcHJvdGVjdGVkIGRhdGEgdG8ga2VlcCB0aGUg cmVhZCBzaWRlIGNyaXRpY2FsIHNlY3Rpb24gc21hbGwuDQo+ID4NCj4gDQo+IFRoZSBkYXRhIGhl cmUgd291bGQgYmUgY29waWVkIGludG8gdGhlIGJ1ZmZlcnMgc3VwcGxpZWQgYnkgY29uZmlnX3Jl YWQoKQ0KPiBhbnl3YXlzLCBzbyBpdCdzIGEgY29weSByZWdhcmRsZXNzLg0KSSBzZWUgd2hhdCB5 b3UgbWVhbiBoZXJlLiBJIHdvdWxkIHRoaW5rIHRoZSBsb2NhbCB2YXJpYWJsZXMgYWRkIGNvbmZ1 c2lvbiwgdGhlIGNvcHkgY2FuIGhhcHBlbiB0byB0aGUgcGFzc2VkIHBhcmFtZXRlcnMgZGlyZWN0 bHkuIEkgd2lsbCBsZWF2ZSBpdCB0byB5b3UgdG8gZGVjaWRlLg0KDQo+IA0KPiA+PiArICogICAg ICAgICBpbnQgdGVudGF0aXZlX3g7DQo+ID4+ICsgKiAgICAgICAgIGNoYXIgdGVudGF0aXZlX3lb TUFYX1lfTEVOXTsNCj4gPj4gKyAqICAgICAgICAgdWludDMyX3Qgc247DQo+ID4+ICsgKg0KPiA+ PiArICogICAgICAgICBzbiA9IHJ0ZV9zZXFsb2NrX3JlYWRfbG9jaygmY29uZmlnLT5sb2NrKTsN Cj4gPj4gKyAqICAgICAgICAgZG8gew0KPiA+PiArICogICAgICAgICAgICAgICAgIC8vIExvYWRz IG1heSBiZSBhdG9taWMgb3Igbm9uLWF0b21pYywgYXMgaW4gdGhpcyBleGFtcGxlLg0KPiA+PiAr ICogICAgICAgICAgICAgICAgIHRlbnRhdGl2ZV94ID0gY29uZmlnLT5wYXJhbV94Ow0KPiA+PiAr ICogICAgICAgICAgICAgICAgIHN0cmNweSh0ZW50YXRpdmVfeSwgY29uZmlnLT5wYXJhbV95KTsN Cj4gPj4gKyAqICAgICAgICAgfSB3aGlsZSAoIXJ0ZV9zZXFsb2NrX3JlYWRfdHJ5dW5sb2NrKCZj b25maWctPmxvY2ssICZzbikpOw0KPiA+PiArICogICAgICAgICAvLyBBbiBhcHBsaWNhdGlvbiBj b3VsZCBza2lwIHJldHJ5aW5nLCBhbmQgdHJ5IGFnYWluIGxhdGVyLCBpZg0KPiA+PiArICogICAg ICAgICAvLyBwcm9ncmVzcyBpcyBwb3NzaWJsZSB3aXRob3V0IHRoZSBkYXRhLg0KPiA+PiArICoN Cj4gPj4gKyAqICAgICAgICAgKnBhcmFtX3ggPSB0ZW50YXRpdmVfeDsNCj4gPj4gKyAqICAgICAg ICAgc3RyY3B5KHBhcmFtX3ksIHRlbnRhdGl2ZV95KTsNCj4gPj4gKyAqIH0NCj4gPj4gKyAqDQo+ ID4+ICsgKiAvLyBBY2Nlc3NvciBmdW5jdGlvbiBmb3Igd3JpdGluZyBjb25maWcgZmllbGRzLg0K PiA+PiArICogdm9pZA0KPiA+PiArICogY29uZmlnX3VwZGF0ZShzdHJ1Y3QgY29uZmlnICpjb25m aWcsIGludCBwYXJhbV94LCBjb25zdCBjaGFyDQo+ID4+ICsqcGFyYW1feSkNCj4gPj4gKyAqIHsN Cj4gPj4gKyAqICAgICAgICAgcnRlX3NlcWxvY2tfd3JpdGVfbG9jaygmY29uZmlnLT5sb2NrKTsN Cj4gPj4gKyAqICAgICAgICAgLy8gU3RvcmVzIG1heSBiZSBhdG9taWMgb3Igbm9uLWF0b21pYywg YXMgaW4gdGhpcyBleGFtcGxlLg0KPiA+PiArICogICAgICAgICBjb25maWctPnBhcmFtX3ggPSBw YXJhbV94Ow0KPiA+PiArICogICAgICAgICBzdHJjcHkoY29uZmlnLT5wYXJhbV95LCBwYXJhbV95 KTsNCj4gPj4gKyAqICAgICAgICAgcnRlX3NlcWxvY2tfd3JpdGVfdW5sb2NrKCZjb25maWctPmxv Y2spOw0KPiA+PiArICogfQ0KPiA+PiArICogQGVuZGNvZGUNCj4gPj4gKyAqDQo+ID4+ICsgKiBA c2VlDQo+ID4+ICsgKiBodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9TZXFsb2NrLg0KPiA+ PiArICovDQo+ID4+ICsNCj4gPj4gKyNpbmNsdWRlIDxzdGRib29sLmg+DQo+ID4+ICsjaW5jbHVk ZSA8c3RkaW50Lmg+DQo+ID4+ICsNCj4gPj4gKyNpbmNsdWRlIDxydGVfYXRvbWljLmg+DQo+ID4+ ICsjaW5jbHVkZSA8cnRlX2JyYW5jaF9wcmVkaWN0aW9uLmg+DQo+ID4+ICsjaW5jbHVkZSA8cnRl X3NwaW5sb2NrLmg+DQo+ID4+ICsNCj4gPj4gKy8qKg0KPiA+PiArICogVGhlIFJURSBzZXFsb2Nr IHR5cGUuDQo+ID4+ICsgKi8NCj4gPj4gK3R5cGVkZWYgc3RydWN0IHsNCj4gPj4gKwl1aW50MzJf dCBzbjsgLyoqPCBBIHNlcXVlbmNlIG51bWJlciBmb3IgdGhlIHByb3RlY3RlZCBkYXRhLiAqLw0K PiA+PiArCXJ0ZV9zcGlubG9ja190IGxvY2s7IC8qKjwgU3BpbmxvY2sgdXNlZCB0byBzZXJpYWxp emUgd3JpdGVycy4gICovIH0NCj4gPiBTdWdnZXN0IHVzaW5nIHRpY2tldCBsb2NrIGZvciB0aGUg d3JpdGVyIHNpZGUuIEl0IHNob3VsZCBoYXZlIGxvdyBvdmVyaGVhZA0KPiB3aGVuIHRoZXJlIGlz IGEgc2luZ2xlIHdyaXRlciwgYnV0IHByb3ZpZGVzIGJldHRlciBmdW5jdGlvbmFsaXR5IHdoZW4g dGhlcmUgYXJlDQo+IG11bHRpcGxlIHdyaXRlcnMuDQo+ID4NCj4gDQo+IElzIGEgc2VxbG9jayB0 aGUgc3luY2hyb25pemF0aW9uIHByaW1pdGl2ZSBvZiBjaG9pY2UgZm9yIGhpZ2gtY29udGVudGlv biBjYXNlcz8NCj4gSSB3b3VsZCBzYXkgbm8sIGJ1dCBJJ20gbm90IHN1cmUgd2hhdCB5b3Ugd291 bGQgdXNlIGluc3RlYWQuDQpJIHRoaW5rIFN0ZXBoZW4gaGFzIGNvbWUgYWNyb3NzIHNvbWUgdXNl IGNhc2VzIG9mIGhpZ2ggY29udGVudGlvbiB3cml0ZXJzIHdpdGggcmVhZGVycywgbWF5YmUgU3Rl cGhlbiBjYW4gcHJvdmlkZSBzb21lIGlucHV0Lg0KDQpJTU8sIHRoZXJlIGlzIG5vIGhhcm0vcGVy ZiBpc3N1ZXMgaW4gdXNpbmcgdGlja2V0IGxvY2suDQoNCj4gDQo+IDxzbmlwPg0K