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 1A0BD42E52; Wed, 12 Jul 2023 10:58:37 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id BB20140A7D; Wed, 12 Jul 2023 10:58:36 +0200 (CEST) Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-he1eur01on2049.outbound.protection.outlook.com [40.107.13.49]) by mails.dpdk.org (Postfix) with ESMTP id 12565406BA for ; Wed, 12 Jul 2023 10:58:36 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=TkD/XXNH6gVgNE96hfGm+HxSSHpPZuSRZ6sWYsKrIbUVxxd6QEReBZuG39RTHoQAPcW65U6FdJ16xVJYANkMgpI7HTNwynRHZBm+RYh/RW+NN4qdiwlMd17WJqAoWPpnFpW4m0iJGdzTOYgYb2hIBJ2qNxPK+I4zf9mDc6H9NRSPREsajihq4waZvt0abjBYobEzSwbH+vS/QiWrSqxmrLRG1MSjcB3ffonc7kFwD1un9O48y8y9mVt7JSBt9R8cffwIuGCEf0yBYzTXkFADtJlNe7vskQcCsH4UOYUDL1JAlCZsjFTyhFfHJkbliMnRqD414abEWjRSOV1VHmx/BA== 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=z4FkOUZyPl6MMg6QjQHm3gjjsprArjRRzFZ77vI/VIQ=; b=ZftPj/2Blc/7s1jl1e89Zdk2Tx5m4CS5RaVxxf0CVhAc8koThCiyL9thF8ec34ZkqCX6B+BA0n/mcmvUKoFV3WhTY4H4yYPBWH8vRpdBg0rkU/BSxPfWn8wW9UYiN+aFweaN8SYbwsRO9gwx62YyNC/5S5dGE1cpjYlf1dwtF1/CXBnmQjIvHTgDrssSQASSS+6AfthiwdvTEnx+T3xRdFPAsYOK44wSEeluKQuIMmlARPySKXM71FBQaFvBxsMK7FRs38lNZbSw49QD97xx9o1vf82KGjQd+hCT1WaMozqg8M4eQIQhi1UnxyCLjj4kKR9DnXIAJEXuwH+OgctGAw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=ericsson.com; dmarc=pass action=none header.from=ericsson.com; dkim=pass header.d=ericsson.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ericsson.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=z4FkOUZyPl6MMg6QjQHm3gjjsprArjRRzFZ77vI/VIQ=; b=SQjPJkbqpNxjgo/tLJEGsTUXgSKoyIdlzMVcq1w4HB2H7Zx7lYIiKL9HLAeTYUfjnRRxdqXoN3NzQjB6IX+u27EPc4TNpnZDAODw5Cv0ckUXrW1PolnPufyElB2pLXS06IUBjejhu/k5UzHVr5EP4pZBdyh4ey0ExH0THqAcpIo= Received: from AS4PR07MB8529.eurprd07.prod.outlook.com (2603:10a6:20b:4e8::7) by DBAPR07MB6741.eurprd07.prod.outlook.com (2603:10a6:10:196::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6565.26; Wed, 12 Jul 2023 08:58:34 +0000 Received: from AS4PR07MB8529.eurprd07.prod.outlook.com ([fe80::90a1:859a:bb20:40aa]) by AS4PR07MB8529.eurprd07.prod.outlook.com ([fe80::90a1:859a:bb20:40aa%7]) with mapi id 15.20.6565.028; Wed, 12 Jul 2023 08:58:34 +0000 From: =?utf-8?B?TWF0dGlhcyBSw7ZubmJsb20=?= To: Stephen Hemminger CC: "dev@dpdk.org" , Erik Gabriel Carrillo , David Marchand , Maria Lingemark , Stefan Sundkvist , =?utf-8?B?TW9ydGVuIEJyw7hydXA=?= , Tyler Retzlaff , =?utf-8?B?TWF0dGlhcyBSw7ZubmJsb20=?= Subject: Re: [RFC v2 2/2] eal: add high-performance timer facility Thread-Topic: [RFC v2 2/2] eal: add high-performance timer facility Thread-Index: AQHZV2Dxrx+nyF+7xkWB9CrMDNiRoK+uByOAgAiILYA= Date: Wed, 12 Jul 2023 08:58:34 +0000 Message-ID: References: <20230228093916.87206-1-mattias.ronnblom@ericsson.com> <20230315170342.214127-1-mattias.ronnblom@ericsson.com> <20230315170342.214127-3-mattias.ronnblom@ericsson.com> <20230706154105.430209bf@hermes.local> In-Reply-To: <20230706154105.430209bf@hermes.local> Accept-Language: en-US, sv-SE Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.13.0 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=ericsson.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: AS4PR07MB8529:EE_|DBAPR07MB6741:EE_ x-ms-office365-filtering-correlation-id: 99cd890d-1e21-44a9-2b39-08db82b62c58 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: MrSaC38bFvZMbZdZt5z8BBgmdK9Jz2a7T7xjaPPZrDlR/t+Le/S0vqznIu3SieHXNbYNJ7qG2DlOB3cTtVt5C2qgxBWB1kwzkPNh9ABNuNWtcMIyXXOP7GykSsfJsA23CZWDxgT6AFagYgm7aHnxhRMkW2C42/9JVE+rUeOa6ii+Qtc7Acfo8bMU0ffAzVHdzXp2ELjr6dv4KrzdyoBBN2opD0WqaG4YOEnGhEZJ4YqPVxiTgLnGGlgXGAE6GCsbxisoFEIqPgyOiu+dLmsGMt9cVTxcEh1EZyRXO0nYJdMDu/VarrJFfnG9LOTR1ngKGVfbSo9WI4v+6Ev97k/F774zjYN2CM6vKasIVjukEV0dmOToMbkB5otUyJqm7RyDkIAopmZqRANV6u85DC8zYQQMdGjHBIYgHgZJhhsEzTxIk5AOerLKs5MbSunlXek8gy6vDkGiBqNLqp83g/p3Jx23HlUO/KKXQ5aXQUXzgYExuiAN5/G3mVa/LiDLWEEzONdmuwEjbi8SnvcSk6IGL69qJuK06yegjT0eSdflt4lWFM/tco9ymVmqhAJUAyOJm3Axc9HVZXaxny65UCSEnlrD172QnGgUR2q29BeADc/YmbX9t8UrraHeXP4R5UjL1ZzTVhatcrXX9S6LGjUAtwEO7ZqHJzl8LbjAievrEwzeT765zVJaLjyODhN19q14b20Qwy8hPtzSot3mRfJyKV9j4TDmGpn6v2wkEsKn+u8= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AS4PR07MB8529.eurprd07.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230028)(4636009)(366004)(376002)(39860400002)(396003)(346002)(136003)(451199021)(31686004)(478600001)(6486002)(71200400001)(54906003)(91956017)(2616005)(66574015)(86362001)(38070700005)(85202003)(85182001)(36756003)(31696002)(2906002)(186003)(316002)(6506007)(6512007)(53546011)(76116006)(82960400001)(122000001)(8936002)(8676002)(38100700002)(64756008)(66556008)(66946007)(66476007)(66446008)(26005)(41300700001)(5660300002)(6916009)(4326008)(43740500002)(45980500001); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?c0NVYVU5bDduTnNEbExUeWtXTy9tQUQxZ3B0dEcrN0pTYXQ1MGFsM09HUkg5?= =?utf-8?B?dVlvZ25vZDJNU1hzblZ1TWV3NFRkdHg2eTNTckNZMWZrS2ZOajJuYWhzb3hS?= =?utf-8?B?YkovZXhuczRDajhCSGVPQ05vaTk0YVZ1bmR4UkNyRndQT05NZ1QrK0owci9C?= =?utf-8?B?bFRPYkFaUTZjTWtQVXZ3UW94N2FtaTJSL0ZUdklCNWJWQmVocC90NDF3ckl2?= =?utf-8?B?d3ArbmhGS1V4ekFMYW8wam9EMUZXbWVCbURBZUl6K1p2UCtKL1B3QWROcDdh?= =?utf-8?B?RElGclZuMVJSai8vU3IyQXB3NkU2Y3R2ak9aYjJCZTI3cGlBaHl3ZU9YYTIx?= =?utf-8?B?eko3T1BldGVMNXFBV1dvbXl6Q2ZVc2F4KzdFZU5sdnlDbHQ2QnFsS2JPQ3Fn?= =?utf-8?B?MG9tUXJNdExrZGFNRUJyMDFUWmM0NzBxWGZpT0xvSXpTaCt2YUV5Wm9TTEpx?= =?utf-8?B?TTRjRk5BMTdMeGZMd3RNNUxRamtwUzZ3TVRUVHVyQk8vdGMrTm9sUVhVdlVE?= =?utf-8?B?VTRvbUdYVDRFbXN0d0pCS3AraEJGMytLQU1PNCsrUUZmdVFXOWtGcUY4eE0w?= =?utf-8?B?R3FjazROZ2Y0aFlUMVVxeVRBZWVTeFBSc2xCa1hqYWl3Z2JrWmdLcGcxZmRh?= =?utf-8?B?MmtadDFmWW1HQSs0bGlwUDVuM1pYWk9uM0JQdHM4RjBXOFVHbi8rRE52Uzhs?= =?utf-8?B?bkgzWVY4c2xDdnp0ZHNiYXdzZzhMUEwzbjZLMlJlZTM4cTgrWnhYQ25ldXlH?= =?utf-8?B?UzZiWEx2TW1UaVQyTlQvVjAraDI2YlZZVThEWCtiV01rM3Y0QnIrbmIvaXJF?= =?utf-8?B?clJKd0UzVTJaT1g2bFF6eTkzRlBxMHNHK2c4WEhwdXE1OS9zOHFiQk90eG5Z?= =?utf-8?B?VTBlNi9qTkM2b3A4bHdreWx2a2s1YWM5TWVzNWdHaThlZDZMSXJ4VENDbmYv?= =?utf-8?B?NHpJSktkTG02U295S0t6MENMVFJnUDBQUWp0NGRVcndEM25sSldqVmJ5ZSt3?= =?utf-8?B?Szk0UXZyUnVhSFdGSHNMM3JrTkRNOUNTeUQzYWhiUnh0UzNHaWR0VDNyM29z?= =?utf-8?B?R3UycVBsWFVxd2h1bzlzc010THAxYmpFZ1picUhQeEZpQTdZWXNWWlBhaDZi?= =?utf-8?B?WEtkMC9DNEc0WlJLTWlHV2NoaWtEWWdROFR3M2ZFeGJVSW13TTBzcHZrQW1h?= =?utf-8?B?UDhVRzA0cWhpejBFUmI3UU5ENWJIQnp3blN3ZVhvaEVzUUVabEJGM0R0MmRZ?= =?utf-8?B?NnRudW1rakI1aEZPaGRTbGRNc25GdXpnZlZxYWJENUZ4K2gzZEFMMGkxcjhw?= =?utf-8?B?cUsvSU9nMS9lMmZ5WHNUblo4ZkpJdlZQSnJYSDNzVWVTSzY2WXdoOXIyMkVn?= =?utf-8?B?QzhRNE02RzdsQWU1eVdMSkkzb09VTGlLM0sxNzRRR3BJc3J1d3lUN0RGREVB?= =?utf-8?B?YThvcmhVQVl3YVNXdDdNR2VOWGJnTlFDd3pPdnNFM3k1SnFOUUhyQU1ZaEpi?= =?utf-8?B?aWpCMEM5SGtmTkpZRFlTaHd5ZTdscitYNCtGQ3ZJV1RUYUxvTmNvS2RFcTFq?= =?utf-8?B?bkxIMDFxbytaOHpCVkMrZzc5NUxNM2tmVHNNL2dXbU5hUXgzQkorTHE3RUUx?= =?utf-8?B?VkhzYk5laXh6SW1vOG1TUzJCVzNMbFJEaU5xSUpOUHBZaEZTbi9JNjA5V3hP?= =?utf-8?B?R3JVc2g5RHo0S2dSVzU4bks4SXd0NXhzbm5vbmxRbWZCek52RzRTTEFoMTlI?= =?utf-8?B?akh2UERsc0daZTdhSE5vS3d3OTRLVHJyNFh4WnBvcExnNitaWFFtM1ZQTjR5?= =?utf-8?B?d3VvV2tNSkF5UU50dHU4a2FOZnFOc3FPRlI5LzhLUmwrTnNTYXlJWE1Lb3ZP?= =?utf-8?B?WG1IcWdzSHF0cWlaZUNkOHhQNVhOMlROUlUvVm9aNlhNMThRTXMxWG5pZ1R0?= =?utf-8?B?Qkc0Mlc2Nm90VzVObVpmRVc0clVCSGE5ZmptWVFndGhLdkNUTmR3M1pQajNs?= =?utf-8?B?SzlaelNzbU5oRTlPNTVoYlFOTmZYWE10aldTTkZzUHVtZnhPNFp1dWlCb3VD?= =?utf-8?B?bnYzSW1FUDA3RWNKZVRpNklNUlcrQ0QwV0Rsbjg1ejZaeW9PNmFwajV4T0Rh?= =?utf-8?B?Q2dTcGJiRUxORUk2cEdQRGV0bXdWdHg3eFBEUGo3NVhCSXZ1VTNtK0JJVDB6?= =?utf-8?B?NXc9PQ==?= Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: ericsson.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: AS4PR07MB8529.eurprd07.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 99cd890d-1e21-44a9-2b39-08db82b62c58 X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Jul 2023 08:58:34.2254 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 92e84ceb-fbfd-47ab-be52-080c6b87953f X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: et9UqBUMalNYwl45ZgsBLR5QZzGBHZAMclnnJqY66JJ8xG/mrVdZT7uQvyiRDszSptD5CHKjdKT0HUN7hWmS4kUkbnBL6vPVj9yZtbNET8k= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR07MB6741 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 T24gMjAyMy0wNy0wNyAwMDo0MSwgU3RlcGhlbiBIZW1taW5nZXIgd3JvdGU6DQo+IE9uIFdlZCwg MTUgTWFyIDIwMjMgMTg6MDM6NDIgKzAxMDANCj4gTWF0dGlhcyBSw7ZubmJsb20gPG1hdHRpYXMu cm9ubmJsb21AZXJpY3Nzb24uY29tPiB3cm90ZToNCj4gDQo+PiBUaGUgaHRpbWVyIGxpYnJhcnkg YXR0ZW1wdHMgYXQgcHJvdmlkaW5nIGEgdGltZXIgZmFjaWxpdHkgd2l0aCByb3VnaGx5DQo+PiB0 aGUgc2FtZSBmdW5jdGlvbmFsaXR5LCBidXQgbGVzcyBvdmVyaGVhZCBhbmQgYmV0dGVyIHNjYWxh YmlsaXR5IHRoYW4NCj4+IERQREsgdGltZXIgbGlicmFyeS4NCj4gDQo+IEkgZG9uJ3QgdW5kZXJz dGFuZC4gV2h5IG5vdCBqdXN0IGZpeCBhbmQgZXh0ZW5kIGV4aXN0aW5nIHRpbWVycy4NCj4gU3Vy ZSB5b3Ugd2lsbCBuZWVkIHRvIGFkZCBzb21lIEFQSSdzIGFuZCBtYXliZSBkcm9wIHNvbWUgb2Yg dGhlIGV4aXN0aW5nDQo+IGV4cGVyaW1lbnRhbCBvbmVzIChpZSBhbHRfdGltZXIpLiBFdmVuIGNo YW5nZSB0aGUgQUJJLg0KPiANCj4gSXQgd291bGQgYmUgYmV0dGVyIHRvIGhhdmUgb25lIGhpZ2gg cGVyZm9ybWFuY2UsIHNjYWxlYWJsZSB0aW1lciB0aGFuDQo+IHNwZW5kIHRoZSBuZXh0IDMgeWVh cnMgdGVsbGluZyB1c2VycyB3aGljaCBvbmUgdG8gdXNlIGFuZCB3aHkhDQo+IA0KPiBTbyBwbGVh c2UgbWFrZSBydGVfdGltZXIgd29yayBiZXR0ZXIgaW4gMjMuMTEgcmVsZWFzZSByYXRoZXINCj4g dGhhbiByZWludmVudGluZyBhIG5ldyB2YXJpYW50Lg0KDQpJIHdhbnRlZCB0byBleHBsb3JlIGhv dyBhIGRhdGEgcGxhbmUgdGltZXIgQVBJIHNob3VsZCBsb29rIGxpa2UuIA0KU29tZXRoaW5nIGxp a2UgYSAiZmlyc3QgcHJpbmNpcGxlcyIgdHlwZSBhcHByb2FjaC4gQXMgaXQgaGFwcGVucywgaXQg DQpzZWVtcyBsaWtlIEkgd2lsbCBjb252ZXJnZSBvbiBzb21ldGhpbmcgdGhhdCdzIHByZXR0eSBz aW1pbGFyIHRvIGhvdyANCnJ0ZV90aW1lciAoYW5kIG1vc3Qga2VybmVsIHRpbWVycykgQVBJIHdv cmtzLCBmb3IgZXhhbXBsZSBpbiByZWdhcmRzIHRvIA0KdGltZXIgbWVtb3J5IGFsbG9jYXRpb24u DQoNCkNsZWFybHksIHRoZXJlIHNob3VsZCBub3QgYmUgdHdvIERQREsgdGltZXIgQVBJcyB0aGF0 IHByb3ZpZGUgdGhlIHNhbWUgDQpmdW5jdGlvbmFsaXR5LiBUaGF0IHdhcyBuZXZlciB0aGUgaW50 ZW50aW9uLiBTaW5jZSBzbyBtdWNoIERQREsgY29kZSBhbmQgDQptb3JlIGltcG9ydGFudGx5IGFw cGxpY2F0aW9uIGNvZGUgZGVwZW5kcyBvbiA8cnRlX3RpbWVyLmg+IGl0IHdhc24ndCANCm9idmlv dXMgdGhhdCB0aGUgYmVzdCBvcHRpb24gd2FzIG1ha2UgZXh0ZW5zaXZlIGNoYW5nZXMgdG8gcnRl X3RpbWVyIEFQSSANCmFuZCBpbXBsZW1lbnRhdGlvbi4gT25lIHdheSB0aGF0IHNlZW1lZCBsaWtl IGEgcGxhdXNpYmxlIG9wdGlvbiAoaG93IA0KbXVjaCBzbyBkZXBlbmRpbmcgb24gdGhlIGV4dGVu ZCBvZiB0aGUgcnRlX3RpbWVyIHZzIHJ0ZV9odGltZXIgQVBJIA0KZGlmZmVyZW5jZXMpIHdhcyB0 byBoYXZlIGEgbmV3IEFQSSwgYW5kIGRlcHJlY2lhdGUgPHJ0ZV90aW1lci5oPiBpbiB0aGUgDQpy ZWxlYXNlIGh0aW1lciB3YXMgaW50cm9kdWNlZC4NCg0KVGhhdCBzYWlkLCBhdCB0aGlzIHBvaW50 LCBpdCdzIG5vdCBjbGVhciB0byBtZSB3aGljaCBvcHRpb24gaXMgdGhlIGJlc3QgDQpvbmUgb2Yg Im1ha2luZyBleHRlbnNpdmUgY2hhbmdlcyB0byBydGVfdGltZXIiIG9yICJoYXZpbmcgcnRlX2h0 aW1lciBvbiANCnRoZSBzaWRlIGZvciBhIGNvdXBsZSBvZiByZWxlYXNlcyIuDQoNCkFuIGltYWdp bmFyeSBhbHRlcm5hdGl2ZSB3aGVyZSB0aGUgPHJ0ZV90aW1lci5oPiBBUEkvQUJJIGNhbiBiZSAN Cm1haW50YWluZWQsIGFuZCB5b3UgZ2V0IGFsbCB0aGUgcGVyZm9ybWFuY2UgYW5kIHNjYWxhYmls aXR5IGFuZCBpbXByb3ZlZCANCkFQSSBzZW1hbnRpY3Mgb2YgaHRpbWVyLCB3b3VsZCBvYnZpb3Vz bHkgYmUgdGhlIGJlc3Qgb3B0aW9uLiBCdXQgSSBkb24ndCANCnRoaW5rIHRoYXQgaXMgcG9zc2li bGUuIEVzcGVjaWFsbHkgbm90IGlmIHlvdSB3YW50IHRvIGVuZCB1cCB3aXRoIGEgDQpuaWNlLCBv cnRob2dvbmFsIEFQSSBhbmQgYSBjbGVhbiBpbXBsZW1lbnRhdGlvbi4NCg0KSSB0aGluayBjaGFu Z2VzIGluIGJvdGggQUJJIGFuZCBBUEkgYXJlIGluZXZpdGFibGUsIGFuZCBhIGdvb2QgdGhpbmcs IA0KY29uc2lkZXJpbmcgc29tZSBvZiB0aGUgcXVpcmtzIGZvciB0aGUgY3VycmVudCBBUEkuDQoN CkEgc2lkZSBub3RlOiBJdCBzZWVtcyB0byBtZSBhdCB0aGlzIHBvaW50IHRoZXJlIHNob3VsZCBi ZSB0d28gcHVibGljIA0KdGltZXIgQVBJcywgYnV0IHByb3ZpZGluZyBkaWZmZXJlbnQgZnVuY3Rp b25hbGl0eSwgYXQgc2xpZ2h0bHkgZGlmZmVyZW50IA0KbGV2ZWxzIG9mIGFic3RyYWN0aW9uLiBP bmUgaXMgdGhlIDxydGVfdGltZXIuaD4gbG9va2FsaWtlLCBhbmQgdGhlIG90aGVyIA0Kd2hhdCBp biB0aGUgY3VycmVudCBwYXRjaHNldCBpcyByZXByZXNlbnRlZCBieSA8cnRlX2h0dy5oPiwgYnV0 IG1pbnVzIA0KdGhlIGNhbGxiYWNrcywgYXMgcGVyIE1vcnRlbiBCcsO4cnVwJ3Mgc3VnZ2VzdGlv bi4gVGhlIGxhdHRlciB3b3VsZCBiZSBhIA0KbG93LWxldmVsIEhUVyBvbmx5LCB3aXRoIG5vIE1U IHNhZmV0eSwgbm8gbGNvcmUga25vd2xlZGdlLCBubyBvcGluaW9ucyANCm9uIHRpbWUgc291cmNl LCBldGMuDQoNCg==