From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124])
	by inbox.dpdk.org (Postfix) with ESMTP id 2B852A0C45;
	Thu, 28 Oct 2021 09:41:17 +0200 (CEST)
Received: from [217.70.189.124] (localhost [127.0.0.1])
	by mails.dpdk.org (Postfix) with ESMTP id E1A484067B;
	Thu, 28 Oct 2021 09:41:16 +0200 (CEST)
Received: from EUR02-HE1-obe.outbound.protection.outlook.com
 (mail-eopbgr10047.outbound.protection.outlook.com [40.107.1.47])
 by mails.dpdk.org (Postfix) with ESMTP id 84EBC4003F
 for <dev@dpdk.org>; Thu, 28 Oct 2021 09:41:15 +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=+UiNqYbvkd3MZcHHcpeuWn4RWxecf2LAxOVI7Y+qSnM=;
 b=fNA3nn8eK7SDnFaJvq15IPqv2F44D3MpX1jcNrypYaiIq5SILQzWewAdhZiqH5WNb2vugq1AZS+w/lhVzL1i3jXHsIO/QEn/j8tAUalYr0CMmcwclj18WwZDiCpzVw6EPloJflyVRbvFcoa2OY9ve8z/aYtDwiCfXitIgBrxlsM=
Received: from AM7PR03CA0023.eurprd03.prod.outlook.com (2603:10a6:20b:130::33)
 by PR3PR08MB5625.eurprd08.prod.outlook.com (2603:10a6:102:89::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4628.18; Thu, 28 Oct
 2021 07:41:01 +0000
Received: from AM5EUR03FT063.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:130:cafe::cd) by AM7PR03CA0023.outlook.office365.com
 (2603:10a6:20b:130::33) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4649.13 via Frontend
 Transport; Thu, 28 Oct 2021 07:41:01 +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
 AM5EUR03FT063.mail.protection.outlook.com (10.152.16.226) 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, 28 Oct 2021 07:41:00 +0000
Received: ("Tessian outbound e27daf245730:v103");
 Thu, 28 Oct 2021 07:40:59 +0000
X-CR-MTA-TID: 64aa7808
Received: from 9c0ea121114e.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 C0322F1F-1BBF-4240-B7E5-A0E612D4DC3A.1; 
 Thu, 28 Oct 2021 07:40:50 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 9c0ea121114e.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 28 Oct 2021 07:40:49 +0000
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=E/TRYMZ6qOa4xb+QQD8G8F6rQNe4q+2fqlq+X6P6GiWOj60ys/hRKrvxjvpAeRZXfpf03ZgdZovQ3HRMRLCMNLJszjPvbMS28pUKWf/3pAFbVlhRUWsVqYNQHJagNOD/48y/I9g2xVMEzcOoF35BZCXuMS8KCIwIT59zWOeGU8dQiR/lNsfVAKkdRP/rsbKn25vzjTcJw7tZVKLbWCznG0wsr39Z1HJydsdrP+ylofEWY/sXlzK0HxIFWyO7wd4WtjI7jkfH30KU2OSRDYKi751aMEA3sY36MlKbUJQhhVWhk5vmROG5i/lGvzQrLS7hYTPuSs5ymik5C6fju00C2A==
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=+UiNqYbvkd3MZcHHcpeuWn4RWxecf2LAxOVI7Y+qSnM=;
 b=SJLtkfDAnBcfyddMS4YNbScR0CiI0ZG8WpC1/7F+EKk+8JARUBo52/juy5c/Rbsj+q0KwbsdxPXS8cC51toe1sow5ThuKyW9uOFsWSP1jgXRmZNJppxpIQP3kJxUgDfRx644hknDThEYYsT6i4AhtxsPHHmCnbOp60fcOM1yM8URAbVY2lKvrXfixtmNVKiFdGAVNJm6aVY6TxxIX/2FHSMbw9emf5HpdbrDDprbljLACo38h6tRSIAN5ITuePrhxWlSBjqNS+Trf2pfvgXBxMNaXndQ3iMOFNXkqEaa/6Y4wYo1sK6qhM2TtUTuv0Umr8THK0QN6exOh6Vj9m5Nrw==
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=+UiNqYbvkd3MZcHHcpeuWn4RWxecf2LAxOVI7Y+qSnM=;
 b=fNA3nn8eK7SDnFaJvq15IPqv2F44D3MpX1jcNrypYaiIq5SILQzWewAdhZiqH5WNb2vugq1AZS+w/lhVzL1i3jXHsIO/QEn/j8tAUalYr0CMmcwclj18WwZDiCpzVw6EPloJflyVRbvFcoa2OY9ve8z/aYtDwiCfXitIgBrxlsM=
Received: from DB9PR08MB6923.eurprd08.prod.outlook.com (2603:10a6:10:2ac::6)
 by DB9PR08MB6586.eurprd08.prod.outlook.com (2603:10a6:10:23f::19) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4628.15; Thu, 28 Oct
 2021 07:40:47 +0000
Received: from DB9PR08MB6923.eurprd08.prod.outlook.com
 ([fe80::705e:f09f:7dd:500a]) by DB9PR08MB6923.eurprd08.prod.outlook.com
 ([fe80::705e:f09f:7dd:500a%6]) with mapi id 15.20.4628.020; Thu, 28 Oct 2021
 07:40:47 +0000
From: Feifei Wang <Feifei.Wang2@arm.com>
To: Jerin Jacob <jerinjacobk@gmail.com>
CC: Ruifeng Wang <Ruifeng.Wang@arm.com>, dpdk-dev <dev@dpdk.org>, nd
 <nd@arm.com>, "Ananyev, Konstantin" <konstantin.ananyev@intel.com>, Stephen
 Hemminger <stephen@networkplumber.org>, David Marchand
 <david.marchand@redhat.com>, "thomas@monjalon.net" <thomas@monjalon.net>,
 =?utf-8?B?TWF0dGlhcyBSw7ZubmJsb20=?= <mattias.ronnblom@ericsson.com>, nd
 <nd@arm.com>
Thread-Topic: [PATCH v7 1/5] eal: add new definitions for wait scheme
Thread-Index: AQHXy8vDJ72qPp+5Pk29/mWGQeBpp6voAxwQ
Date: Thu, 28 Oct 2021 07:40:46 +0000
Message-ID: <DB9PR08MB6923FB43F610761CAE5EAB19C8869@DB9PR08MB6923.eurprd08.prod.outlook.com>
References: <20210902053253.3017858-1-feifei.wang2@arm.com>
 <20211028065640.139655-1-feifei.wang2@arm.com>
 <20211028065640.139655-2-feifei.wang2@arm.com>
 <CALBAE1N_XGvTDuCGOLOesM9s018CvAJ2igRM0P4AhKiZH3iBRg@mail.gmail.com>
In-Reply-To: <CALBAE1N_XGvTDuCGOLOesM9s018CvAJ2igRM0P4AhKiZH3iBRg@mail.gmail.com>
Accept-Language: zh-CN, en-US
Content-Language: zh-CN
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ts-tracking-id: A127667A649CA74FB2D1A81856E46507.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-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: f4b215b9-f1f6-481f-9cca-08d999e6499c
x-ms-traffictypediagnostic: DB9PR08MB6586:|PR3PR08MB5625:
x-ld-processed: f34e5979-57d9-4aaa-ad4d-b122a662184d,ExtAddr
X-Microsoft-Antispam-PRVS: <PR3PR08MB5625900EEAD5F08698313306C8869@PR3PR08MB5625.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:9508;OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original: 1cH1DLIJjYIURkMx5fLnZp3dG1MFkTVeZ46d6UVgwfav5r0Xrzg/3g61Ovle8LKxrK9fbaQLQQnA5MG5lef7W/h8Jxiq/UygRQq2LeryuwqECkgKDwwD/3PwNsvdyFqYBs59k3IaapBhWnH9p/Rvw6hIxTlYWodeQW0zFHXZc4Eh035/iikjraYVRO8+7eVoPMity1VR1x1F9MEJtwKIf8kMx1YswAvXjJ6p2ALrDujd5PaXbHDfxZx1ba9QolL+v1WjWeO+UU0mtELO8GDAMMNcU4kbzaFoQZaTfRBv4qf17wgF0SzoH09S16bEkIkGvEdFoetBO7NeVRR5UnZG8hL2v4LvQp8StZVHDyePedVC28L7mVJXUj60RakK8WTQyVF9x5P6hGvn/LkJSVuSjkEIIsz/8Oc6egm4gEq00Rb1c3nIEDahgfTTLtDtrc4UzikVyLHRl9x4g6uJXnOGicy1mIxeA57x3F8APYCUczr/sPI6WNjd+P0DVntBvpNcJjbUXCv02NCCVT+ROUvruQMOXwskQUR0zsB3cHJWd8IbcggQzoVNnPPL+z5cX6WejV3a0f7V7eV8BnW85tywc4W4+Izb0FUIDwKbD8LUnNP6/SbTGSIPEGlv2IOwFiHyjal2rHR3GlKqSuBmXx+Pn838BwX+8dMQhP849u+Iar/Oz2imuIV30n4w52k0D4szRcMd6Nfx0HJChkdq3YfLHA==
X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en;
 SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DB9PR08MB6923.eurprd08.prod.outlook.com;
 PTR:; CAT:NONE;
 SFS:(4636009)(366004)(38070700005)(122000001)(52536014)(316002)(38100700002)(55016002)(8936002)(53546011)(5660300002)(9686003)(54906003)(66446008)(71200400001)(508600001)(2906002)(6916009)(66946007)(33656002)(86362001)(6506007)(83380400001)(224303003)(76116006)(4326008)(66476007)(26005)(64756008)(186003)(66556008)(7696005)(66574015);
 DIR:OUT; SFP:1101; 
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB6586
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: AM5EUR03FT063.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs: 38806f61-2666-4cfa-2ec1-08d999e641a0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 3PejbKSccLh2fexC5oqwfx8YZvFHWvJeB5+RgD5PE06B/F5rEWPe/XDEC5rvuKXaXLVubzGx0cI03imN6L5UNXEjbgcyYoJ2v+U2m7fWX+qnX7l4gnUfvOmr61eQAil9kBUZh3pwGVC+X8ed72LskT/y08W74vQxOtQ+hwtPEbxtP+SeBR9l84iQ1HGlELVWPP6xjFAVda8t0AiTqQ2yoAnnBKq0VM9lUAVLF9VFjwZcB7sge2/UpiWmqX+AN1wZ/2OaD6aQSOnHStqPgsHYXXi6jzK49uxObYRLHPyzka2GZ2sdfWOMAGNGNkB8k5tKzb0pwAFMaj/Qyhsr7y5yeHaMoBZe3NHKaMIjmTeD0HqWDzCguqFHOZHO1H7QgQs+niSVtXxuty6BZpvpNAzH2Sk9pQdR/bcK5StR9wyqyFdXbwk/tIhXyhUHX1z6iJp5F/VJvpwuZliNSJ2zbepuVnbyZYvtvkRoQyDBGxQ325pzLVPztfgzfAJPtv+ui5rdm86V47tcJ9RumRbM7oeQGxfW3lAFeuGx07cjCEk9dDx37t4TTg/PSXj3NYG4hY3/LXyIksnMDbIY120IXT2Sod/j+oJaawqmHBgiDJLNlWdwEB8T3j3dQWHBQTxzsddRwgXW8cDK9G3c3DiemTQpcb3zcuo5HZAOmBQdHPy80DlZvZxBaqAD/z1RAS2D6EgEDZEB4isiQpmicXb7LobRBA==
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)(55016002)(336012)(86362001)(9686003)(186003)(224303003)(52536014)(2906002)(6506007)(7696005)(66574015)(70586007)(54906003)(82310400003)(356005)(81166007)(508600001)(33656002)(53546011)(70206006)(36860700001)(4326008)(316002)(6862004)(8936002)(47076005)(26005)(5660300002);
 DIR:OUT; SFP:1101; 
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Oct 2021 07:41:00.5415 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: f4b215b9-f1f6-481f-9cca-08d999e6499c
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: AM5EUR03FT063.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR08MB5625
Subject: [dpdk-dev] =?utf-8?b?5Zue5aSNOiBbUEFUQ0ggdjcgMS81XSBlYWw6IGFk?=
 =?utf-8?q?d_new_definitions_for_wait_scheme?=
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.29
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>

DQoNCj4gLS0tLS3pgq7ku7bljp/ku7YtLS0tLQ0KPiDlj5Hku7bkuro6IEplcmluIEphY29iIDxq
ZXJpbmphY29ia0BnbWFpbC5jb20+DQo+IOWPkemAgeaXtumXtDogVGh1cnNkYXksIE9jdG9iZXIg
MjgsIDIwMjEgMzoxNiBQTQ0KPiDmlLbku7bkuro6IEZlaWZlaSBXYW5nIDxGZWlmZWkuV2FuZzJA
YXJtLmNvbT4NCj4g5oqE6YCBOiBSdWlmZW5nIFdhbmcgPFJ1aWZlbmcuV2FuZ0Bhcm0uY29tPjsg
ZHBkay1kZXYgPGRldkBkcGRrLm9yZz47DQo+IG5kIDxuZEBhcm0uY29tPjsgQW5hbnlldiwgS29u
c3RhbnRpbiA8a29uc3RhbnRpbi5hbmFueWV2QGludGVsLmNvbT47DQo+IFN0ZXBoZW4gSGVtbWlu
Z2VyIDxzdGVwaGVuQG5ldHdvcmtwbHVtYmVyLm9yZz47IERhdmlkIE1hcmNoYW5kDQo+IDxkYXZp
ZC5tYXJjaGFuZEByZWRoYXQuY29tPjsgdGhvbWFzQG1vbmphbG9uLm5ldDsgTWF0dGlhcyBSw7Zu
bmJsb20NCj4gPG1hdHRpYXMucm9ubmJsb21AZXJpY3Nzb24uY29tPg0KPiDkuLvpopg6IFJlOiBb
UEFUQ0ggdjcgMS81XSBlYWw6IGFkZCBuZXcgZGVmaW5pdGlvbnMgZm9yIHdhaXQgc2NoZW1lDQo+
IA0KPiBPbiBUaHUsIE9jdCAyOCwgMjAyMSBhdCAxMjoyNiBQTSBGZWlmZWkgV2FuZyA8ZmVpZmVp
LndhbmcyQGFybS5jb20+DQo+IHdyb3RlOg0KPiA+DQo+ID4gSW50cm9kdWNlIG1hY3JvcyBhcyBn
ZW5lcmljIGludGVyZmFjZSBmb3IgYWRkcmVzcyBtb25pdG9yaW5nLg0KPiA+IEZvciBkaWZmZXJl
bnQgc2l6ZSwgZW5jYXBzdWxhdGUgJ19fTE9BRF9FWENfMTYnLCAnX19MT0FEX0VYQ18zMicNCj4g
PiBhbmQgJ19fTE9BRF9FWENfNjQnIGludG8gYSBuZXcgbWFjcm8gJ19fTE9BRF9FWEMnLg0KPiA+
DQo+ID4gRnVydGhlcm1vcmUsIHRvIHByZXZlbnQgY29tcGlsYXRpb24gd2FybmluZyBpbiBhcm06
DQo+ID4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiA+
ICd3YXJuaW5nOiBpbXBsaWNpdCBkZWNsYXJhdGlvbiBvZiBmdW5jdGlvbiAuLi4nDQo+ID4gLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiA+IERlbGV0ZSAn
dW5kZWYnIGNvbnN0cnVjdGlvbnMgZm9yICdfX0xPQURfRVhDX3h4JywgJ19fU0VWTCcgYW5kICdf
X1dGRScuDQo+ID4gQW5kIGFkZCDigJhfX1JURV9BUk3igJkgZm9yIHRoZXNlIG1hY3JvcyB0byBm
aXggdGhlIG5hbWVzcGFjZS4NCj4gPg0KPiA+IFRoaXMgaXMgYmVjYXVzZSBvcmlnaW5hbCBtYWNy
b3MgYXJlIHVuZGVmaW5lIGF0IHRoZSBlbmQgb2YgdGhlIGZpbGUuDQo+ID4gSWYgbmV3IG1hY3Jv
ICdydGVfd2FpdF9ldmVudCcgY2FsbHMgdGhlbSBpbiBvdGhlciBmaWxlcywgdGhleSB3aWxsIGJl
DQo+ID4gc2VlbiBhcyAnbm90IGRlZmluZWQnLg0KPiA+DQo+ID4gU2lnbmVkLW9mZi1ieTogRmVp
ZmVpIFdhbmcgPGZlaWZlaS53YW5nMkBhcm0uY29tPg0KPiA+IFJldmlld2VkLWJ5OiBSdWlmZW5n
IFdhbmcgPHJ1aWZlbmcud2FuZ0Bhcm0uY29tPg0KPiA+IC0tLQ0KPiANCj4gPiArc3RhdGljIF9f
cnRlX2Fsd2F5c19pbmxpbmUgdm9pZA0KPiA+ICtydGVfd2FpdF91bnRpbF9lcXVhbF8xNih2b2xh
dGlsZSB1aW50MTZfdCAqYWRkciwgdWludDE2X3QgZXhwZWN0ZWQsDQo+ID4gKyAgICAgICAgICAg
ICAgIGludCBtZW1vcmRlcikNCj4gPiArew0KPiA+ICsgICAgICAgdWludDE2X3QgdmFsdWU7DQo+
ID4gKw0KPiA+ICsgICAgICAgYXNzZXJ0KG1lbW9yZGVyID09IF9fQVRPTUlDX0FDUVVJUkUgfHwg
bWVtb3JkZXIgPT0NCj4gPiArIF9fQVRPTUlDX1JFTEFYRUQpOw0KPiANCj4gQXNzZXJ0IGlzIG5v
dCBnb29kIGluIHRoZSBsaWJyYXJ5LCBXaHkgbm90IFJURV9CVUlMRF9CVUdfT04gaGVyZQ0KW0Zl
aWZlaV0gVGhpcyBsaW5lIGlzIHRoZSBvcmlnaW5hbCBjb2RlIHdoaWNoIGhhcyBub3RoaW5nIHRv
IGRvIHdpdGggdGhpcyBwYXRjaCwgDQpJIGNhbiBjaGFuZ2UgaXQgaW4gdGhlIG5leHQgdmVyc2lv
bi4NCj4gDQo+IA0KPiA+ICsNCj4gPiArICAgICAgIF9fUlRFX0FSTV9MT0FEX0VYQ18xNihhZGRy
LCB2YWx1ZSwgbWVtb3JkZXIpDQo+ID4gICAgICAgICBpZiAodmFsdWUgIT0gZXhwZWN0ZWQpIHsN
Cj4gPiAtICAgICAgICAgICAgICAgX19TRVZMKCkNCj4gPiArICAgICAgICAgICAgICAgIF9fUlRF
X0FSTV9TRVZMKCkNCj4gPiAgICAgICAgICAgICAgICAgZG8gew0KPiA+IC0gICAgICAgICAgICAg
ICAgICAgICAgIF9fV0ZFKCkNCj4gPiAtICAgICAgICAgICAgICAgICAgICAgICBfX0xPQURfRVhD
XzE2KGFkZHIsIHZhbHVlLCBtZW1vcmRlcikNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICBf
X1JURV9BUk1fV0ZFKCkNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICBfX1JURV9BUk1fTE9B
RF9FWENfMTYoYWRkciwgdmFsdWUsIG1lbW9yZGVyKQ0KPiA+ICAgICAgICAgICAgICAgICB9IHdo
aWxlICh2YWx1ZSAhPSBleHBlY3RlZCk7DQo+ID4gICAgICAgICB9DQo+ID4gLSN1bmRlZiBfX0xP
QURfRVhDXzE2DQo+ID4gIH0NCj4gPg0KPiA+ICBzdGF0aWMgX19ydGVfYWx3YXlzX2lubGluZSB2
b2lkDQo+ID4gQEAgLTc3LDM0ICsxMjQsMTQgQEAgcnRlX3dhaXRfdW50aWxfZXF1YWxfMzIodm9s
YXRpbGUgdWludDMyX3QgKmFkZHIsDQo+ID4gdWludDMyX3QgZXhwZWN0ZWQsDQo+ID4NCj4gPiAg
ICAgICAgIGFzc2VydChtZW1vcmRlciA9PSBfX0FUT01JQ19BQ1FVSVJFIHx8IG1lbW9yZGVyID09
DQo+ID4gX19BVE9NSUNfUkVMQVhFRCk7DQo+ID4NCj4gPiAtICAgICAgIC8qDQo+ID4gLSAgICAg
ICAgKiBBdG9taWMgZXhjbHVzaXZlIGxvYWQgZnJvbSBhZGRyLCBpdCByZXR1cm5zIHRoZSAzMi1i
aXQgY29udGVudCBvZg0KPiA+IC0gICAgICAgICogKmFkZHIgd2hpbGUgbWFraW5nIGl0ICdtb25p
dG9yZWQnLHdoZW4gaXQgaXMgd3JpdHRlbiBieSBzb21lb25lDQo+ID4gLSAgICAgICAgKiBlbHNl
LCB0aGUgJ21vbml0b3JlZCcgc3RhdGUgaXMgY2xlYXJlZCBhbmQgYSBldmVudCBpcyBnZW5lcmF0
ZWQNCj4gPiAtICAgICAgICAqIGltcGxpY2l0bHkgdG8gZXhpdCBXRkUuDQo+ID4gLSAgICAgICAg
Ki8NCj4gPiAtI2RlZmluZSBfX0xPQURfRVhDXzMyKHNyYywgZHN0LCBtZW1vcmRlcikgeyAgICAg
ICAgICAgICAgXA0KPiA+IC0gICAgICAgaWYgKG1lbW9yZGVyID09IF9fQVRPTUlDX1JFTEFYRUQp
IHsgICAgICAgICAgICAgIFwNCj4gPiAtICAgICAgICAgICAgICAgYXNtIHZvbGF0aWxlKCJsZHhy
ICV3W3RtcF0sIFsleFthZGRyXV0iICBcDQo+ID4gLSAgICAgICAgICAgICAgICAgICAgICAgOiBb
dG1wXSAiPSZyIiAoZHN0KSAgICAgICAgICAgICAgXA0KPiA+IC0gICAgICAgICAgICAgICAgICAg
ICAgIDogW2FkZHJdICJyIihzcmMpICAgICAgICAgICAgICAgIFwNCj4gPiAtICAgICAgICAgICAg
ICAgICAgICAgICA6ICJtZW1vcnkiKTsgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gLSAgICAg
ICB9IGVsc2UgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXA0KPiA+
IC0gICAgICAgICAgICAgICBhc20gdm9sYXRpbGUoImxkYXhyICV3W3RtcF0sIFsleFthZGRyXV0i
IFwNCj4gPiAtICAgICAgICAgICAgICAgICAgICAgICA6IFt0bXBdICI9JnIiIChkc3QpICAgICAg
ICAgICAgICBcDQo+ID4gLSAgICAgICAgICAgICAgICAgICAgICAgOiBbYWRkcl0gInIiKHNyYykg
ICAgICAgICAgICAgICAgXA0KPiA+IC0gICAgICAgICAgICAgICAgICAgICAgIDogIm1lbW9yeSIp
OyAgICAgICAgICAgICAgICAgICAgIFwNCj4gPiAtICAgICAgIH0gfQ0KPiA+IC0NCj4gPiAtICAg
ICAgIF9fTE9BRF9FWENfMzIoYWRkciwgdmFsdWUsIG1lbW9yZGVyKQ0KPiA+ICsgICAgICAgX19S
VEVfQVJNX0xPQURfRVhDXzMyKGFkZHIsIHZhbHVlLCBtZW1vcmRlcikNCj4gPiAgICAgICAgIGlm
ICh2YWx1ZSAhPSBleHBlY3RlZCkgew0KPiA+IC0gICAgICAgICAgICAgICBfX1NFVkwoKQ0KPiA+
ICsgICAgICAgICAgICAgICBfX1JURV9BUk1fU0VWTCgpDQo+ID4gICAgICAgICAgICAgICAgIGRv
IHsNCj4gPiAtICAgICAgICAgICAgICAgICAgICAgICBfX1dGRSgpDQo+ID4gLSAgICAgICAgICAg
ICAgICAgICAgICAgX19MT0FEX0VYQ18zMihhZGRyLCB2YWx1ZSwgbWVtb3JkZXIpDQo+ID4gKyAg
ICAgICAgICAgICAgICAgICAgICAgX19SVEVfQVJNX1dGRSgpDQo+ID4gKyAgICAgICAgICAgICAg
ICAgICAgICAgX19SVEVfQVJNX0xPQURfRVhDXzMyKGFkZHIsIHZhbHVlLCBtZW1vcmRlcikNCj4g
PiAgICAgICAgICAgICAgICAgfSB3aGlsZSAodmFsdWUgIT0gZXhwZWN0ZWQpOw0KPiA+ICAgICAg
ICAgfQ0KPiA+IC0jdW5kZWYgX19MT0FEX0VYQ18zMg0KPiA+ICB9DQo+ID4NCj4gPiAgc3RhdGlj
IF9fcnRlX2Fsd2F5c19pbmxpbmUgdm9pZA0KPiA+IEBAIC0xMTUsMzggKzE0MiwzMyBAQCBydGVf
d2FpdF91bnRpbF9lcXVhbF82NCh2b2xhdGlsZSB1aW50NjRfdCAqYWRkciwNCj4gPiB1aW50NjRf
dCBleHBlY3RlZCwNCj4gPg0KPiA+ICAgICAgICAgYXNzZXJ0KG1lbW9yZGVyID09IF9fQVRPTUlD
X0FDUVVJUkUgfHwgbWVtb3JkZXIgPT0NCj4gPiBfX0FUT01JQ19SRUxBWEVEKTsNCj4gDQo+IHJl
bW92ZSBhc3NlcnQgYW5kIGNoYW5nZSB0byBCVUlMRF9CVUdfT04NCltGZWlmZWldIE9LDQo+IA0K
PiA+DQo+ID4gLSAgICAgICAvKg0KPiA+IC0gICAgICAgICogQXRvbWljIGV4Y2x1c2l2ZSBsb2Fk
IGZyb20gYWRkciwgaXQgcmV0dXJucyB0aGUgNjQtYml0IGNvbnRlbnQgb2YNCj4gPiAtICAgICAg
ICAqICphZGRyIHdoaWxlIG1ha2luZyBpdCAnbW9uaXRvcmVkJyx3aGVuIGl0IGlzIHdyaXR0ZW4g
Ynkgc29tZW9uZQ0KPiA+IC0gICAgICAgICogZWxzZSwgdGhlICdtb25pdG9yZWQnIHN0YXRlIGlz
IGNsZWFyZWQgYW5kIGEgZXZlbnQgaXMgZ2VuZXJhdGVkDQo+ID4gLSAgICAgICAgKiBpbXBsaWNp
dGx5IHRvIGV4aXQgV0ZFLg0KPiA+IC0gICAgICAgICovDQo+ID4gLSNkZWZpbmUgX19MT0FEX0VY
Q182NChzcmMsIGRzdCwgbWVtb3JkZXIpIHsgICAgICAgICAgICAgIFwNCj4gPiAtICAgICAgIGlm
IChtZW1vcmRlciA9PSBfX0FUT01JQ19SRUxBWEVEKSB7ICAgICAgICAgICAgICBcDQo+ID4gLSAg
ICAgICAgICAgICAgIGFzbSB2b2xhdGlsZSgibGR4ciAleFt0bXBdLCBbJXhbYWRkcl1dIiAgXA0K
PiA+IC0gICAgICAgICAgICAgICAgICAgICAgIDogW3RtcF0gIj0mciIgKGRzdCkgICAgICAgICAg
ICAgIFwNCj4gPiAtICAgICAgICAgICAgICAgICAgICAgICA6IFthZGRyXSAiciIoc3JjKSAgICAg
ICAgICAgICAgICBcDQo+ID4gLSAgICAgICAgICAgICAgICAgICAgICAgOiAibWVtb3J5Iik7ICAg
ICAgICAgICAgICAgICAgICAgXA0KPiA+IC0gICAgICAgfSBlbHNlIHsgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gPiAtICAgICAgICAgICAgICAgYXNtIHZvbGF0
aWxlKCJsZGF4ciAleFt0bXBdLCBbJXhbYWRkcl1dIiBcDQo+ID4gLSAgICAgICAgICAgICAgICAg
ICAgICAgOiBbdG1wXSAiPSZyIiAoZHN0KSAgICAgICAgICAgICAgXA0KPiA+IC0gICAgICAgICAg
ICAgICAgICAgICAgIDogW2FkZHJdICJyIihzcmMpICAgICAgICAgICAgICAgIFwNCj4gPiAtICAg
ICAgICAgICAgICAgICAgICAgICA6ICJtZW1vcnkiKTsgICAgICAgICAgICAgICAgICAgICBcDQo+
ID4gLSAgICAgICB9IH0NCj4gPiAtDQo+ID4gLSAgICAgICBfX0xPQURfRVhDXzY0KGFkZHIsIHZh
bHVlLCBtZW1vcmRlcikNCj4gPiArICAgICAgIF9fUlRFX0FSTV9MT0FEX0VYQ182NChhZGRyLCB2
YWx1ZSwgbWVtb3JkZXIpDQo+ID4gICAgICAgICBpZiAodmFsdWUgIT0gZXhwZWN0ZWQpIHsNCj4g
PiAtICAgICAgICAgICAgICAgX19TRVZMKCkNCj4gPiArICAgICAgICAgICAgICAgX19SVEVfQVJN
X1NFVkwoKQ0KPiA+ICAgICAgICAgICAgICAgICBkbyB7DQo+ID4gLSAgICAgICAgICAgICAgICAg
ICAgICAgX19XRkUoKQ0KPiA+IC0gICAgICAgICAgICAgICAgICAgICAgIF9fTE9BRF9FWENfNjQo
YWRkciwgdmFsdWUsIG1lbW9yZGVyKQ0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgIF9fUlRF
X0FSTV9XRkUoKQ0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgIF9fUlRFX0FSTV9MT0FEX0VY
Q182NChhZGRyLCB2YWx1ZSwgbWVtb3JkZXIpDQo+ID4gICAgICAgICAgICAgICAgIH0gd2hpbGUg
KHZhbHVlICE9IGV4cGVjdGVkKTsNCj4gPiAgICAgICAgIH0NCj4gPiAgfQ0KPiA+IC0jdW5kZWYg
X19MT0FEX0VYQ182NA0KPiA+DQo+ID4gLSN1bmRlZiBfX1NFVkwNCj4gPiAtI3VuZGVmIF9fV0ZF
DQo+ID4gKyNkZWZpbmUgcnRlX3dhaXRfZXZlbnQoYWRkciwgbWFzaywgY29uZCwgZXhwZWN0ZWQs
IG1lbW9yZGVyKSAgICAgICAgICAgICAgXA0KPiA+ICtkbyB7ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gPiAr
ICAgICAgIFJURV9CVUlMRF9CVUdfT04oIV9fYnVpbHRpbl9jb25zdGFudF9wKG1lbW9yZGVyKSk7
ICAgICAgICAgICAgICAgIFwNCj4gPiArICAgICAgIFJURV9CVUlMRF9CVUdfT04obWVtb3JkZXIg
IT0gX19BVE9NSUNfQUNRVUlSRSAmJg0KPiBcDQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBtZW1vcmRlciAhPSBfX0FUT01JQ19SRUxBWEVEKTsgICAgICAgICAgICBcDQo+ID4g
KyAgICAgICB1aW50MzJfdCBzaXplID0gc2l6ZW9mKCooYWRkcikpIDw8IDM7DQo+IA0KPiBBZGQg
Y29uc3QNCltGZWlmZWldIE9LLiANCj4gPiArICAgICAgIHR5cGVvZigqKGFkZHIpKSBleHBlY3Rl
ZF92YWx1ZSA9IChleHBlY3RlZCk7ICAgICAgICAgICAgICAgICAgICAgIFwNCj4gPiArICAgICAg
IHR5cGVvZigqKGFkZHIpKSB2YWx1ZSA9IDA7DQo+IA0KPiBXaHkgemVybyBhc3NpZ25tZW50DQpJ
IHdpbGwgZGVsZXRlIHRoaXMgaW5pdGlhbGl6YXRpb24uDQo+ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgICAgICBfX1JURV9BUk1fTE9BRF9FWEMoKGFk
ZHIpLCB2YWx1ZSwgbWVtb3JkZXIsIHNpemUpICAgICAgICAgICAgICAgICBcDQo+IA0KPiBBc3Nl
cnQgaXMgbm90IGdvb2QgaW4gdGhlIGxpYnJhcnksIFdoeSBub3QgUlRFX0JVSUxEX0JVR19PTiBo
ZXJlDQpbRmVpZmVpXSBGb3IgX19SVEVfQVJNX0xPQURfRVhDLCAnc2l6ZScgaXMga25vd24gdW50
aWwgY29kZSBpcyBydW5uaW5nLg0KU28gaXQgY2Fubm90IGNoZWNrICdzaXplJyBpbiB0aGUgY29t
cGlsZSB0aW1lIGFuZCBCVUlMRF9CVUdfT04gZG9lc24ndCB3b3JrIGhlcmUuDQo+IA0KPiANCj4g
PiArICAgICAgIGlmICgodmFsdWUgJiAobWFzaykpIGNvbmQgZXhwZWN0ZWRfdmFsdWUpIHsgICAg
ICAgICAgICAgICAgICAgICAgIFwNCj4gPiArICAgICAgICAgICAgICAgX19SVEVfQVJNX1NFVkwo
KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gPiArICAgICAg
ICAgICAgICAgZG8geyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFwNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICBfX1JURV9BUk1fV0ZFKCkg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gPiArICAgICAgICAgICAgICAg
ICAgICAgICBfX1JURV9BUk1fTE9BRF9FWEMoKGFkZHIpLCB2YWx1ZSwgbWVtb3JkZXIsDQo+ID4g
KyBzaXplKSBcDQo+IA0KPiBpZiB0aGUgYWRkcmVzcyBpcyB0aGUgdHlwZSBvZiBfX2ludDEyOF90
LiBUaGlzIGxvZ2ljIHdpbGwgZmFpbD8gQ291bGQgeW91IGFkZA0KPiAxMjhiaXQgc3VwcG9ydCB0
b28gYW5kIHJlbW92ZSB0aGUgYXNzZXJ0IGZyb20gX19SVEVfQVJNX0xPQURfRVhDDQpbRmVpZmVp
XSBUaGVyZSBpcyBubyAxMjhiaXQgY2FzZSBpbiBsaWJyYXJ5LiBBbmQgbWF5YmUgdGhlcmUgd2ls
bCBiZSAxMjhiaXRzIGNhc2UsIHdlIGNhbg0KYWRkIDEyOCBwYXRoIGhlcmUuIE5vdyB0aGVyZSBp
cyBhc3NlcnQgY2hlY2sgaW4gIF9fUlRFX0FSTV9MT0FEX0VYQyB0byBjaGVjaw0Kd2hldGhlciBz
aXplIGlzICcxNi8zMi82NCcuDQo+IA0KPiANCj4gPiArICAgICAgICAgICAgICAgfSB3aGlsZSAo
KHZhbHVlICYgKG1hc2spKSBjb25kIGV4cGVjdGVkX3ZhbHVlKTsgICAgICAgICAgIFwNCj4gPiAr
ICAgICAgIH0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFwNCj4gPiArfSB3aGlsZSAoMCkNCj4gPg0KPiA+ICAjZW5kaWYNCj4g
Pg0KPiA+IGRpZmYgLS1naXQgYS9saWIvZWFsL2luY2x1ZGUvZ2VuZXJpYy9ydGVfcGF1c2UuaA0K
PiA+IGIvbGliL2VhbC9pbmNsdWRlL2dlbmVyaWMvcnRlX3BhdXNlLmgNCj4gPiBpbmRleCA2Njhl
ZTRhMTg0Li5kMGM1YjVhNDE1IDEwMDY0NA0KPiA+IC0tLSBhL2xpYi9lYWwvaW5jbHVkZS9nZW5l
cmljL3J0ZV9wYXVzZS5oDQo+ID4gKysrIGIvbGliL2VhbC9pbmNsdWRlL2dlbmVyaWMvcnRlX3Bh
dXNlLmgNCj4gPiBAQCAtMTExLDYgKzExMSwzNCBAQCBydGVfd2FpdF91bnRpbF9lcXVhbF82NCh2
b2xhdGlsZSB1aW50NjRfdCAqYWRkciwNCj4gdWludDY0X3QgZXhwZWN0ZWQsDQo+ID4gICAgICAg
ICB3aGlsZSAoX19hdG9taWNfbG9hZF9uKGFkZHIsIG1lbW9yZGVyKSAhPSBleHBlY3RlZCkNCj4g
PiAgICAgICAgICAgICAgICAgcnRlX3BhdXNlKCk7DQo+ID4gIH0NCj4gPiArDQo+ID4gKy8qDQo+
ID4gKyAqIFdhaXQgdW50aWwgKmFkZHIgYnJlYWtzIHRoZSBjb25kaXRpb24sIHdpdGggYSByZWxh
eGVkIG1lbW9yeQ0KPiA+ICsgKiBvcmRlcmluZyBtb2RlbCBtZWFuaW5nIHRoZSBsb2FkcyBhcm91
bmQgdGhpcyBBUEkgY2FuIGJlIHJlb3JkZXJlZC4NCj4gPiArICoNCj4gPiArICogQHBhcmFtIGFk
ZHINCj4gPiArICogIEEgcG9pbnRlciB0byB0aGUgbWVtb3J5IGxvY2F0aW9uLg0KPiA+ICsgKiBA
cGFyYW0gbWFzaw0KPiA+ICsgKiAgQSBtYXNrIG9mIHZhbHVlIGJpdHMgaW4gaW50ZXJlc3QuDQo+
ID4gKyAqIEBwYXJhbSBjb25kDQo+ID4gKyAqICBBIHN5bWJvbCByZXByZXNlbnRpbmcgdGhlIGNv
bmRpdGlvbi4NCj4gPiArICogQHBhcmFtIGV4cGVjdGVkDQo+ID4gKyAqICBBbiBleHBlY3RlZCB2
YWx1ZSB0byBiZSBpbiB0aGUgbWVtb3J5IGxvY2F0aW9uLg0KPiA+ICsgKiBAcGFyYW0gbWVtb3Jk
ZXINCj4gPiArICogIFR3byBkaWZmZXJlbnQgbWVtb3J5IG9yZGVycyB0aGF0IGNhbiBiZSBzcGVj
aWZpZWQ6DQo+ID4gKyAqICBfX0FUT01JQ19BQ1FVSVJFIGFuZCBfX0FUT01JQ19SRUxBWEVELiBU
aGVzZSBtYXAgdG8NCj4gPiArICogIEMrKzExIG1lbW9yeSBvcmRlcnMgd2l0aCB0aGUgc2FtZSBu
YW1lcywgc2VlIHRoZSBDKysxMSBzdGFuZGFyZA0KPiA+ICtvcg0KPiA+ICsgKiAgdGhlIEdDQyB3
aWtpIG9uIGF0b21pYyBzeW5jaHJvbml6YXRpb24gZm9yIGRldGFpbGVkIGRlZmluaXRpb24uDQo+
ID4gKyAqLw0KPiA+ICsjZGVmaW5lIHJ0ZV93YWl0X2V2ZW50KGFkZHIsIG1hc2ssIGNvbmQsIGV4
cGVjdGVkLCBtZW1vcmRlcikNCj4gXA0KPiA+ICtkbyB7ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwN
Cj4gPiArICAgICAgIFJURV9CVUlMRF9CVUdfT04oIV9fYnVpbHRpbl9jb25zdGFudF9wKG1lbW9y
ZGVyKSk7DQo+IFwNCj4gPiArICAgICAgIFJURV9CVUlMRF9CVUdfT04obWVtb3JkZXIgIT0gX19B
VE9NSUNfQUNRVUlSRSAmJg0KPiBcDQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBtZW1vcmRlciAhPSBfX0FUT01JQ19SRUxBWEVEKTsgICAgICAgICAgICAgICAgICAgICBcDQo+
ID4gKyAgICAgICB0eXBlb2YoKihhZGRyKSkgZXhwZWN0ZWRfdmFsdWUgPSAoZXhwZWN0ZWQpOyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgICAgICB3aGlsZSAoKF9fYXRv
bWljX2xvYWRfbigoYWRkciksIChtZW1vcmRlcikpICYgKG1hc2spKSBjb25kDQo+IGV4cGVjdGVk
X3ZhbHVlKSBcDQo+ID4gKyAgICAgICAgICAgICAgIHJ0ZV9wYXVzZSgpOyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gK30gd2hpbGUg
KDApDQo+ID4gICNlbmRpZg0KPiA+DQo+ID4gICNlbmRpZiAvKiBfUlRFX1BBVVNFX0hfICovDQo+
ID4gLS0NCj4gPiAyLjI1LjENCj4gPg0K