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 E960CA04A5;
	Thu, 18 Jun 2020 09:56:47 +0200 (CEST)
Received: from [92.243.14.124] (localhost [127.0.0.1])
	by dpdk.org (Postfix) with ESMTP id B42C01BE85;
	Thu, 18 Jun 2020 09:56:46 +0200 (CEST)
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on2089.outbound.protection.outlook.com [40.107.21.89])
 by dpdk.org (Postfix) with ESMTP id 28E3C5F2F
 for <dev@dpdk.org>; Thu, 18 Jun 2020 09:56:45 +0200 (CEST)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=BcdZz8R8ATWcwTPTmJqEmSAF2WGSfNzOnsidjDtiTr81f+cNS/LGC6nrG5mHdGem2f1u3udBCNnAjZduLHvmB2My4KvWnMTaQ4JIP+QZtXSqkGJuP9MBx6NHMRXIzMGaoIcgH3y4wbusmNZR43j51W03SCGpc0rV+wexbxl+gpyYymh7sf5ClEFUokw27W1W0G/I0IBqHEo4o3zLBMX+MwIxkAJspaVq5XLhIqZw6XoosPRXdBR53CJEgOaYjYQpXGP9T7FQslhqKA8PlWWxZNCJ5eLnTdtzM8MQ7AmROt+Zm3ZKoHpAT5NAmQztME89IBjfjjAXEDDYQVSpf5Mmug==
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=OOcoez5YURAb8OwiXe+T5+2TU2fteMHrYuUpG/Q0Cwc=;
 b=WmIf3TFmPgjGPTPX4caEBrzDMNR4lz1qTRmG+vPEvoyYm0ogmNee6Tww0rbZdXLX9HuR8jdpJBZuoUg3opWcCaJQElWy+B479jJMprUiNNgWLpb3ZOq7qvpsGwET41wnWkMPrkS94g6xM9SxWymwJmDIj5jNYX8CFyhbC8SzuuxNZ6ibhrr9lzidLNteYxPjAs//tn8r3OyNKZ5L90twbOVlaMCVsTH1NoI5K6b3Aek534EIbBXMk2oVhicDNrTfmRF2NwHp4Pf6PcJALHO0frib3Q6ivAPrYhH1Ek5mvnU/6z1u9PQG1zWStzpqEpCJkvuzzdSAMn1dHY1+5DlZhg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=mellanox.com; dmarc=pass action=none header.from=mellanox.com;
 dkim=pass header.d=mellanox.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Mellanox.com;
 s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=OOcoez5YURAb8OwiXe+T5+2TU2fteMHrYuUpG/Q0Cwc=;
 b=PC9jBYIGL+ggPUnuoOgQp20UUi6h9v5ouRcw8QnU0UseNijNpBtSnH+cYutL0rIZpaYp3UiyBq+4CiTlagkCbZg7Mcf/uXDizUCUW06pJZix0hDvPxxSpEpguxOW1dPxcwLnur+Z7H5bsXV5uruOcOrmuMoA9D6zbQB9dwdrIqc=
Received: from VI1PR05MB5872.eurprd05.prod.outlook.com (2603:10a6:803:de::17)
 by VI1PR05MB6446.eurprd05.prod.outlook.com (2603:10a6:803:101::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3109.22; Thu, 18 Jun
 2020 07:56:43 +0000
Received: from VI1PR05MB5872.eurprd05.prod.outlook.com
 ([fe80::6165:4348:2b7e:23ba]) by VI1PR05MB5872.eurprd05.prod.outlook.com
 ([fe80::6165:4348:2b7e:23ba%6]) with mapi id 15.20.3088.029; Thu, 18 Jun 2020
 07:56:43 +0000
From: Fady Bader <fady@mellanox.com>
To: Ranjit Menon <ranjit.menon@intel.com>, "dev@dpdk.org" <dev@dpdk.org>
CC: Thomas Monjalon <thomas@monjalon.net>, Tasnim Bashar
 <tbashar@mellanox.com>, Tal Shnaiderman <talshn@mellanox.com>, Yohad Tor
 <yohadt@mellanox.com>, "dmitry.kozliuk@gmail.com" <dmitry.kozliuk@gmail.com>, 
 "harini.ramakrishnan@microsoft.com" <harini.ramakrishnan@microsoft.com>,
 "ocardona@microsoft.com" <ocardona@microsoft.com>, "pallavi.kadam@intel.com"
 <pallavi.kadam@intel.com>
Thread-Topic: [PATCH v9 2/2] timer: support EAL functions on Windows
Thread-Index: AQHWRIv6wr+QJKjiJ0e7/w6jIg4WzKjdYKCAgACh1vA=
Date: Thu, 18 Jun 2020 07:56:42 +0000
Message-ID: <VI1PR05MB5872AD0A25B5FD28DFCDAFC4BF9B0@VI1PR05MB5872.eurprd05.prod.outlook.com>
References: <20200423144350.4016-2-fady@mellanox.com>
 <20200617093915.16428-1-fady@mellanox.com>
 <20200617093915.16428-3-fady@mellanox.com>
 <ded7afaf-dfd3-420b-713e-da16a20418e0@intel.com>
In-Reply-To: <ded7afaf-dfd3-420b-713e-da16a20418e0@intel.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
authentication-results: intel.com; dkim=none (message not signed)
 header.d=none;intel.com; dmarc=none action=none header.from=mellanox.com;
x-originating-ip: [79.182.53.59]
x-ms-publictraffictype: Email
x-ms-office365-filtering-ht: Tenant
x-ms-office365-filtering-correlation-id: 56f71a87-35ce-4c6a-4c26-08d8135d2488
x-ms-traffictypediagnostic: VI1PR05MB6446:
x-ld-processed: a652971c-7d2e-4d9b-a6a4-d149256f461b,ExtAddr
x-ms-exchange-transport-forked: True
x-microsoft-antispam-prvs: <VI1PR05MB6446E41A113789FDBA268738BF9B0@VI1PR05MB6446.eurprd05.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:1091;
x-forefront-prvs: 0438F90F17
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: WcqgMldUWUawKJct7mMAJAwXoiMuz5sHOG/2KfhZJ+GFqDOte4WB9GPer7shnWI4x3h/QQ6kI1C3a0EsReF1m4R6GPsSfXsYgwDGOhPf4/I1qu0yUl6lraCZzAy54Vwj3VLkmnHgcGkEhyU3P0RPrht10KHXfaUVXGbq9Q/ZsBrDAD7gKoOm4RrBDqJQapQ7nEmMsKwvyXjWrmqNYQz+tbhpL3Wo5VaFIy2RFnqI6NyLFgoX+gH8tXUusYo5t4qPAEOxFcHGpUxcX4/XE8yPjWMlU1duaGIC1oKXsw6SKmKqeB4PoaQonPy7c5HZCDAy5RTcufUThlZOdZD3Uu6Y4g==
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:VI1PR05MB5872.eurprd05.prod.outlook.com; PTR:; CAT:NONE;
 SFTY:;
 SFS:(4636009)(396003)(39860400002)(136003)(366004)(376002)(346002)(8676002)(186003)(8936002)(71200400001)(45080400002)(5660300002)(110136005)(33656002)(478600001)(54906003)(76116006)(66946007)(86362001)(66556008)(4326008)(66476007)(316002)(52536014)(26005)(6506007)(66446008)(53546011)(9686003)(7696005)(55016002)(64756008)(2906002)(83380400001);
 DIR:OUT; SFP:1101; 
x-ms-exchange-antispam-messagedata: wjDmpYWpADPQD7aE7QRYdaxCpckmqt4JHufZSv3rIPDD0LLpKvdqn1lhujNZKk3SyxICTk9uJpaRlsirseLPn0yMu1Q46YULe4LKQDINxAMvEKWKOS6Z9nHIO6Oo+pLf4PkDgNZcLFKQBFp1zUTb53y0XqnVVjxfaPYVr20j8Ci6pDxNrZdS7tvLZPLw8tilSWgXJHpEBV5mgGptgZkLYm58dNhUxGup26rOCmOdR6MyxX01b5WxRgA0stHO/JEp2eekuXU+ctCkP94YSZcZwv1UEmvml0WcfW1dedVmoSZ/VudqFPWeB/uo8z1Q0lnvOxipCpO/MT9ZthmmhPtpdZAgZtOhdLE4NF20KvXIlWeZmMjpz/81qbPss5ZkFFpgD91/NATtodZXYbP8JCuUFY4Ys6cN91MqV8JW31CyMTzcUpiZjhmNQ2FH8lQAnA4pk41fzb3VcPy5fy648e87++B7dABzQ0fLEhoEnQ8Wgc8=
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-OriginatorOrg: Mellanox.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 56f71a87-35ce-4c6a-4c26-08d8135d2488
X-MS-Exchange-CrossTenant-originalarrivaltime: 18 Jun 2020 07:56:43.1298 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: a652971c-7d2e-4d9b-a6a4-d149256f461b
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: wpazWU7DSYmG283/4ULeub/qYdlHIXV8TFtp6COQtE1u2UkWxgBZEKBQ8odXq5X5AH0EK/jOGx7OJTUPodARBA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR05MB6446
Subject: Re: [dpdk-dev] [PATCH v9 2/2] timer: support EAL functions on
	Windows
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>

DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogUmFuaml0IE1lbm9uIDxy
YW5qaXQubWVub25AaW50ZWwuY29tPg0KPiBTZW50OiBUaHVyc2RheSwgSnVuZSAxOCwgMjAyMCAx
OjE2IEFNDQo+IFRvOiBGYWR5IEJhZGVyIDxmYWR5QG1lbGxhbm94LmNvbT47IGRldkBkcGRrLm9y
Zw0KPiBDYzogVGhvbWFzIE1vbmphbG9uIDx0aG9tYXNAbW9uamFsb24ubmV0PjsgVGFzbmltIEJh
c2hhcg0KPiA8dGJhc2hhckBtZWxsYW5veC5jb20+OyBUYWwgU2huYWlkZXJtYW4gPHRhbHNobkBt
ZWxsYW5veC5jb20+OyBZb2hhZCBUb3INCj4gPHlvaGFkdEBtZWxsYW5veC5jb20+OyBkbWl0cnku
a296bGl1a0BnbWFpbC5jb207DQo+IGhhcmluaS5yYW1ha3Jpc2huYW5AbWljcm9zb2Z0LmNvbTsg
b2NhcmRvbmFAbWljcm9zb2Z0LmNvbTsNCj4gcGFsbGF2aS5rYWRhbUBpbnRlbC5jb20NCj4gU3Vi
amVjdDogUmU6IFtQQVRDSCB2OSAyLzJdIHRpbWVyOiBzdXBwb3J0IEVBTCBmdW5jdGlvbnMgb24g
V2luZG93cw0KPiANCj4gDQo+IE9uIDYvMTcvMjAyMCAyOjM5IEFNLCBGYWR5IEJhZGVyIHdyb3Rl
Og0KPiA+IEltcGxlbWVudGVkIHRoZSBuZWVkZWQgV2luZG93cyBlYWwgdGltZXIgZnVuY3Rpb25z
Lg0KPiA+DQo+ID4gU2lnbmVkLW9mZi1ieTogRmFkeSBCYWRlciA8ZmFkeUBtZWxsYW5veC5jb20+
DQo+ID4gLS0tDQo+ID4gICBsaWIvbGlicnRlX2VhbC9jb21tb24vbWVzb24uYnVpbGQgICAgICAg
fCAgMSArDQo+ID4gICBsaWIvbGlicnRlX2VhbC93aW5kb3dzL2VhbC5jICAgICAgICAgICAgfCAg
NiArKysNCj4gPiAgIGxpYi9saWJydGVfZWFsL3dpbmRvd3MvZWFsX3RpbWVyLmMgICAgICB8IDkx
DQo+ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKw0KPiA+ICAgbGliL2xpYnJ0ZV9l
YWwvd2luZG93cy9pbmNsdWRlL3J0ZV9vcy5oIHwgIDIgKw0KPiA+ICAgbGliL2xpYnJ0ZV9lYWwv
d2luZG93cy9tZXNvbi5idWlsZCAgICAgIHwgIDEgKw0KPiA+ICAgNSBmaWxlcyBjaGFuZ2VkLCAx
MDEgaW5zZXJ0aW9ucygrKQ0KPiA+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IGxpYi9saWJydGVfZWFs
L3dpbmRvd3MvZWFsX3RpbWVyLmMNCj4gPg0KPiA+IGRpZmYgLS1naXQgYS9saWIvbGlicnRlX2Vh
bC9jb21tb24vbWVzb24uYnVpbGQNCj4gPiBiL2xpYi9saWJydGVfZWFsL2NvbW1vbi9tZXNvbi5i
dWlsZA0KPiA+IGluZGV4IDMxMDg0NDI2OTcuLjRiZGY3NzkyMmYgMTAwNjQ0DQo+ID4gLS0tIGEv
bGliL2xpYnJ0ZV9lYWwvY29tbW9uL21lc29uLmJ1aWxkDQo+ID4gKysrIGIvbGliL2xpYnJ0ZV9l
YWwvY29tbW9uL21lc29uLmJ1aWxkDQo+ID4gQEAgLTI2LDYgKzI2LDcgQEAgaWYgaXNfd2luZG93
cw0KPiA+ICAgCQknbWFsbG9jX2VsZW0uYycsDQo+ID4gICAJCSdtYWxsb2NfaGVhcC5jJywNCj4g
PiAgIAkJJ3J0ZV9tYWxsb2MuYycsDQo+ID4gKwkJJ2VhbF9jb21tb25fdGltZXIuYycsDQo+ID4g
ICAJKQ0KPiA+ICAgCXN1YmRpcl9kb25lKCkNCj4gPiAgIGVuZGlmDQo+ID4gZGlmZiAtLWdpdCBh
L2xpYi9saWJydGVfZWFsL3dpbmRvd3MvZWFsLmMNCj4gPiBiL2xpYi9saWJydGVfZWFsL3dpbmRv
d3MvZWFsLmMgaW5kZXggNDI3YTU1NTdmYS4uYjZiZmZkM2Q5MiAxMDA2NDQNCj4gPiAtLS0gYS9s
aWIvbGlicnRlX2VhbC93aW5kb3dzL2VhbC5jDQo+ID4gKysrIGIvbGliL2xpYnJ0ZV9lYWwvd2lu
ZG93cy9lYWwuYw0KPiA+IEBAIC0zNTQsNiArMzU0LDEyIEBAIHJ0ZV9lYWxfaW5pdChpbnQgYXJn
YywgY2hhciAqKmFyZ3YpDQo+ID4gICAJCXJldHVybiAtMTsNCj4gPiAgIAl9DQo+ID4NCj4gPiAr
CWlmIChydGVfZWFsX3RpbWVyX2luaXQoKSA8IDApIHsNCj4gPiArCQlydGVfZWFsX2luaXRfYWxl
cnQoIkNhbm5vdCBpbml0IFRTQyB0aW1lciIpOw0KPiA+ICsJCXJ0ZV9lcnJubyA9IEVGQVVMVDsN
Cj4gPiArCQlyZXR1cm4gLTE7DQo+ID4gKwl9DQo+ID4gKw0KPiA+ICAgCWVhbF90aHJlYWRfaW5p
dF9tYXN0ZXIocnRlX2NvbmZpZy5tYXN0ZXJfbGNvcmUpOw0KPiA+DQo+ID4gICAJUlRFX0xDT1JF
X0ZPUkVBQ0hfU0xBVkUoaSkgew0KPiA+IGRpZmYgLS1naXQgYS9saWIvbGlicnRlX2VhbC93aW5k
b3dzL2VhbF90aW1lci5jDQo+ID4gYi9saWIvbGlicnRlX2VhbC93aW5kb3dzL2VhbF90aW1lci5j
DQo+ID4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gPiBpbmRleCAwMDAwMDAwMDAwLi41OTA5OWU4
OTQyDQo+ID4gLS0tIC9kZXYvbnVsbA0KPiA+ICsrKyBiL2xpYi9saWJydGVfZWFsL3dpbmRvd3Mv
ZWFsX3RpbWVyLmMNCj4gPiBAQCAtMCwwICsxLDkxIEBADQo+ID4gKy8qIFNQRFgtTGljZW5zZS1J
ZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UNCj4gPiArICogQ29weXJpZ2h0IDIwMjAgTWVsbGFub3gg
VGVjaG5vbG9naWVzLCBMdGQgICovICNpbmNsdWRlDQo+ID4gKzxpbnR0eXBlcy5oPg0KPiA+ICsN
Cj4gPiArI2luY2x1ZGUgPHJ0ZV93aW5kb3dzLmg+DQo+ID4gKyNpbmNsdWRlIDxydGVfY29tbW9u
Lmg+DQo+ID4gKyNpbmNsdWRlIDxydGVfY3ljbGVzLmg+DQo+ID4gKyNpbmNsdWRlIDxydGVfZWFs
Lmg+DQo+ID4gKyNpbmNsdWRlIDxydGVfZXJybm8uaD4NCj4gPiArI2luY2x1ZGUgImVhbF9wcml2
YXRlLmgiDQo+ID4gKw0KPiA+ICsjZGVmaW5lIFVTX1BFUl9TRUMgMUU2DQo+ID4gKyNkZWZpbmUg
Q1lDX1BFUl8xME1IWiAxRTcNCj4gPiArDQo+ID4gK3ZvaWQNCj4gPiArcnRlX2RlbGF5X3VzX3Ns
ZWVwKHVuc2lnbmVkIGludCB1cykNCj4gPiArew0KPiA+ICsJSEFORExFIHRpbWVyOw0KPiA+ICsJ
TEFSR0VfSU5URUdFUiBkdWVfdGltZTsNCj4gPiArDQo+ID4gKwkvKiBjcmVhdGUgd2FpdGFibGUg
dGltZXIgKi8NCj4gPiArCXRpbWVyID0gQ3JlYXRlV2FpdGFibGVUaW1lcihOVUxMLCBUUlVFLCBO
VUxMKTsNCj4gPiArCWlmICghdGltZXIpIHsNCj4gPiArCQlSVEVfTE9HX1dJTjMyX0VSUigiQ3Jl
YXRlV2FpdGFibGVUaW1lcigpIik7DQo+ID4gKwkJcnRlX2Vycm5vID0gRU5PTUVNOw0KPiA+ICsJ
CXJldHVybjsNCj4gPiArCX0NCj4gPiArDQo+ID4gKwkvKg0KPiA+ICsJICogZHVlX3RpbWUncyB1
b20gaXMgMTAwIG5zLCBtdWx0aXBseSBieSAxMCB0byBjb252ZXJ0IHRvIG1pY3Jvc2Vjb25kcw0K
PiA+ICsJICogc2V0IHVzIG1pY3Jvc2Vjb25kcyB0aW1lIGZvciB0aW1lcg0KPiA+ICsJICovDQo+
ID4gKwlkdWVfdGltZS5RdWFkUGFydCA9IC0oKGludDY0X3QpdXMgKiAxMCk7DQo+ID4gKwlpZiAo
IVNldFdhaXRhYmxlVGltZXIodGltZXIsICZkdWVfdGltZSwgMCwgTlVMTCwgTlVMTCwgRkFMU0Up
KSB7DQo+ID4gKwkJUlRFX0xPR19XSU4zMl9FUlIoIlNldFdhaXRhYmxlVGltZXIoKSIpOw0KPiA+
ICsJCXJ0ZV9lcnJubyA9IEVJTlZBTDsNCj4gPiArCQlnb3RvIGVuZDsNCj4gPiArCX0NCj4gPiAr
CS8qIHN0YXJ0IHdhaXQgZm9yIHRpbWVyIGZvciB1cyBtaWNyb3NlY29uZHMgKi8NCj4gPiArCWlm
IChXYWl0Rm9yU2luZ2xlT2JqZWN0KHRpbWVyLCBJTkZJTklURSkgPT0gV0FJVF9GQUlMRUQpIHsN
Cj4gPiArCQlSVEVfTE9HX1dJTjMyX0VSUigiV2FpdEZvclNpbmdsZU9iamVjdCgpIik7DQo+ID4g
KwkJcnRlX2Vycm5vID0gRUlOVkFMOw0KPiA+ICsJfQ0KPiA+ICsNCj4gPiArZW5kOg0KPiA+ICsJ
Q2xvc2VIYW5kbGUodGltZXIpOw0KPiA+ICt9DQo+ID4gKw0KPiA+ICt1aW50NjRfdA0KPiA+ICtn
ZXRfdHNjX2ZyZXEodm9pZCkNCj4gPiArew0KPiA+ICsJTEFSR0VfSU5URUdFUiB0X3N0YXJ0LCB0
X2VuZCwgZWxhcHNlZF91czsNCj4gPiArCUxBUkdFX0lOVEVHRVIgZnJlcXVlbmN5Ow0KPiA+ICsJ
dWludDY0X3QgdHNjX2h6Ow0KPiA+ICsJdWludDY0X3QgZW5kLCBzdGFydCA9IHJ0ZV9nZXRfdHNj
X2N5Y2xlcygpOw0KPiANCj4gSSB0aGluayBhIGJldHRlciBpbXBsZW1lbnRhdGlvbiBtYXkgYmU6
DQo+IA0KPiB1aW50NjRfdCBzdGFydCwgZW5kOw0KPiANCj4gUXVlcnlQZXJmb3JtYW5jZUZyZXF1
ZW5jeSgmZnJlcXVlbmN5KTsNCj4gDQo+IHN0YXJ0ID0gcnRlX2dldF90c2NfY3ljbGVzKCk7DQo+
IFF1ZXJ5UGVyZm9ybWFuY2VDb3VudGVyKCZ0X3N0YXJ0KTsNCj4gDQo+IHJ0ZV9kZWxheV91c19z
bGVlcChVU19QRVJfU0VDIC8gMTApOyAvKiAxLzEwIHNlY29uZCAqLw0KPiANCj4gLi4uLi4NCj4g
DQoNCllvdSBhcmUgY29ycmVjdC4NCkkndmUgc2VudCBhbm90aGVyIHBhdGNoLg0KDQpUaGFua3Ms
DQpGYWR5DQoNCj4gPiArDQo+ID4gKwlRdWVyeVBlcmZvcm1hbmNlQ291bnRlcigmdF9zdGFydCk7
DQo+ID4gKwlRdWVyeVBlcmZvcm1hbmNlRnJlcXVlbmN5KCZmcmVxdWVuY3kpOw0KPiA+ICsNCj4g
PiArCXJ0ZV9kZWxheV91c19zbGVlcChVU19QRVJfU0VDIC8gMTApOyAvKiAxLzEwIHNlY29uZCAq
Lw0KPiA+ICsNCj4gPiArCWlmIChydGVfZXJybm8gIT0gMCkNCj4gPiArCQlyZXR1cm4gMDsNCj4g
PiArDQo+ID4gKwlRdWVyeVBlcmZvcm1hbmNlQ291bnRlcigmdF9lbmQpOw0KPiA+ICsJZW5kID0g
cnRlX2dldF90c2NfY3ljbGVzKCk7DQo+ID4gKw0KPiA+ICsJZWxhcHNlZF91cy5RdWFkUGFydCA9
IHRfZW5kLlF1YWRQYXJ0IC0gdF9zdGFydC5RdWFkUGFydDsNCj4gPiArDQo+ID4gKwkvKg0KPiA+
ICsJICogVG8gZ3VhcmQgYWdhaW5zdCBsb3NzLW9mLXByZWNpc2lvbiwgY29udmVydCB0byBtaWNy
b3NlY29uZHMNCj4gPiArCSAqICpiZWZvcmUqIGRpdmlkaW5nIGJ5IHRpY2tzLXBlci1zZWNvbmQu
DQo+ID4gKwkgKi8NCj4gPiArCWVsYXBzZWRfdXMuUXVhZFBhcnQgKj0gVVNfUEVSX1NFQzsNCj4g
PiArCWVsYXBzZWRfdXMuUXVhZFBhcnQgLz0gZnJlcXVlbmN5LlF1YWRQYXJ0Ow0KPiA+ICsNCj4g
PiArCWRvdWJsZSBzZWNzID0gKChkb3VibGUpZWxhcHNlZF91cy5RdWFkUGFydCkvVVNfUEVSX1NF
QzsNCj4gPiArCXRzY19oeiA9ICh1aW50NjRfdCkoKGVuZCAtIHN0YXJ0KS9zZWNzKTsNCj4gPiAr
DQo+ID4gKwkvKiBSb3VuZCB1cCB0byAxME1oei4gMUU3IH4gMTBNaHogKi8NCj4gPiArCXJldHVy
biBSVEVfQUxJR05fTVVMX05FQVIodHNjX2h6LCBDWUNfUEVSXzEwTUhaKTsgfQ0KPiANCj4gW1Nu
aXBdDQo+IA0KPiByYW5qaXQgbS4NCg0K