From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-0.6 required=3.0 tests=DKIM_INVALID,DKIM_SIGNED, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id CC6C2C43331 for ; Mon, 11 Nov 2019 05:51:50 +0000 (UTC) Received: from dpdk.org (dpdk.org [92.243.14.124]) by mail.kernel.org (Postfix) with ESMTP id 3F607206C3 for ; Mon, 11 Nov 2019 05:51:49 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=armh.onmicrosoft.com header.i=@armh.onmicrosoft.com header.b="JjjlL/OG"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=armh.onmicrosoft.com header.i=@armh.onmicrosoft.com header.b="JjjlL/OG" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 3F607206C3 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=arm.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=dev-bounces@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 6C6B22142; Mon, 11 Nov 2019 06:51:48 +0100 (CET) Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-eopbgr70043.outbound.protection.outlook.com [40.107.7.43]) by dpdk.org (Postfix) with ESMTP id 1A962CF3 for ; Mon, 11 Nov 2019 06:51:47 +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=qBkCQVZBSXIFmnRlX27/af4B0bEUtLccxv5RQ/e7/QM=; b=JjjlL/OGJTRYHmSfBdqKpyLGEQpirPZhcmrh01ybeaLmX3tkTz8J19IT/K3dMjbQFeNJIEBASdxuAcQUOW6+tp3uxT97kCYzNU8RC3xn6+n0ObxwCtVgAeLoXqT/gAQgcPu0QnR+EYLlVmFkgQmml8finIHrgzwKOdBMBcvgNdA= Received: from VI1PR08CA0095.eurprd08.prod.outlook.com (2603:10a6:800:d3::21) by AM0PR08MB4340.eurprd08.prod.outlook.com (2603:10a6:208:139::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2430.24; Mon, 11 Nov 2019 05:51:46 +0000 Received: from AM5EUR03FT044.eop-EUR03.prod.protection.outlook.com (2a01:111:f400:7e08::201) by VI1PR08CA0095.outlook.office365.com (2603:10a6:800:d3::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.2430.20 via Frontend Transport; Mon, 11 Nov 2019 05:51:46 +0000 Authentication-Results: spf=fail (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dpdk.org; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dpdk.org; dmarc=none action=none header.from=arm.com; Received-SPF: Fail (protection.outlook.com: domain of arm.com does not designate 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 AM5EUR03FT044.mail.protection.outlook.com (10.152.17.56) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.2430.21 via Frontend Transport; Mon, 11 Nov 2019 05:51:45 +0000 Received: ("Tessian outbound 6481c7fa5a3c:v33"); Mon, 11 Nov 2019 05:51:44 +0000 X-CR-MTA-TID: 64aa7808 Received: from dbde11036f8c.1 (cr-mta-lb-1.cr-mta-net [104.47.1.53]) by 64aa7808-outbound-1.mta.getcheckrecipient.com id 13D33130-54ED-4FDE-B1D7-0E2FCD185212.1; Mon, 11 Nov 2019 05:51:39 +0000 Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01lp2053.outbound.protection.outlook.com [104.47.1.53]) by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id dbde11036f8c.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Mon, 11 Nov 2019 05:51:39 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=nB93RSWbfI3uHNZSfRGGteJXh7JtXB46C7McD2AE8xYR4GI0JNxOyjylC5ybP/Hv662QlGFWOWBu87o/ZrKm+pd4+fDZ3+iWMeTi7+XLlFDYlA3FR1bH0tnnzMTA/DChMztcqnC+QZVmuEniBRjQYs24NtYwxmHCMG7vo/wR0G7jqExZNnVNB1/O5U8wZHID1Pf4s33Bu0aILqun381yX5cASnCyQ7YwO/d2Y7xMXGMYoK5C+rFcR/dy9gfSSFsqfkdxmfTYDOp8T6jhhjokm3xilDEUAWkOeOmjXzCrYpn/l8BGbGdh4x5SHmPtmGz1MxICYyofapteym5ouThZYQ== 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=qBkCQVZBSXIFmnRlX27/af4B0bEUtLccxv5RQ/e7/QM=; b=fLvpWfaQqB4oonUbjcTU3DRLXtM6McuaoaPEFigGYVowW3QUvXT/eKPNLvNnqVhnAx3TOhKpBEImR14N9t9qPzT/ItXddi1MHfWtUj/e++H7/kFh9pDLlcGfU3uGEgctVWQvtHo8r4HIRnvXj+Y8rER5IqnhOSrMfazG0kkaWD6B3oWUETY1+XMe6IwaZJQKxGAoCKUJlTFFZauZ8SQWOzDopbl8d/Q1vHtoVmqX8UW4mhM7u+xUmxj7Rm1YDurjb9sduSxe42ivzj5vMoOHS8c5yLF3tNVYHK/+RMxt9/v+fOcxYVHs96USQMJ/WV8fvJFkOV1t5ny+KpgFwzbY9Q== 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=qBkCQVZBSXIFmnRlX27/af4B0bEUtLccxv5RQ/e7/QM=; b=JjjlL/OGJTRYHmSfBdqKpyLGEQpirPZhcmrh01ybeaLmX3tkTz8J19IT/K3dMjbQFeNJIEBASdxuAcQUOW6+tp3uxT97kCYzNU8RC3xn6+n0ObxwCtVgAeLoXqT/gAQgcPu0QnR+EYLlVmFkgQmml8finIHrgzwKOdBMBcvgNdA= Received: from VI1PR08MB5376.eurprd08.prod.outlook.com (10.255.196.79) by VI1PR08MB2800.eurprd08.prod.outlook.com (10.170.237.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2430.22; Mon, 11 Nov 2019 05:51:36 +0000 Received: from VI1PR08MB5376.eurprd08.prod.outlook.com ([fe80::709e:c2c9:139d:9df3]) by VI1PR08MB5376.eurprd08.prod.outlook.com ([fe80::709e:c2c9:139d:9df3%4]) with mapi id 15.20.2430.027; Mon, 11 Nov 2019 05:51:36 +0000 From: "Gavin Hu (Arm Technology China)" To: Jerin Jacob , "Ananyev, Konstantin" CC: "thomas@monjalon.net" , David Marchand , "dev@dpdk.org" , nd , "Mcnamara, John" , "Kovacevic, Marko" , "jerinj@marvell.com" , Jan Viktorin , nd Thread-Topic: [dpdk-dev] [PATCH v13 2/5] eal: add the APIs to wait until equal Thread-Index: AQHVlbNTFlgfpnSoJk66Rpb1QEIBaqeBeqAAgAAF74CAABsEAIAD1gYAgAAIq5A= Date: Mon, 11 Nov 2019 05:51:36 +0000 Message-ID: References: <1561911676-37718-1-git-send-email-gavin.hu@arm.com> <1573162528-16230-3-git-send-email-david.marchand@redhat.com> <2601191342CEEE43887BDE71AB97725801A8C833FA@IRSMSX104.ger.corp.intel.com> <1931245.p08n36Xx7L@xps> <2601191342CEEE43887BDE71AB97725801A8C83A2B@IRSMSX104.ger.corp.intel.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: edd4a5d8-716a-4ecf-b3c0-597fd0d29f56.0 x-checkrecipientchecked: true Authentication-Results-Original: spf=none (sender IP is ) smtp.mailfrom=Gavin.Hu@arm.com; x-originating-ip: [113.29.88.7] x-ms-publictraffictype: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: 420b18ce-ab27-4953-f82c-08d7666b3c7e X-MS-TrafficTypeDiagnostic: VI1PR08MB2800:|AM0PR08MB4340: X-MS-Exchange-PUrlCount: 1 x-ld-processed: f34e5979-57d9-4aaa-ad4d-b122a662184d,ExtAddr X-Microsoft-Antispam-PRVS: x-checkrecipientrouted: true x-ms-oob-tlc-oobclassifiers: OLM:8882;OLM:8882; x-forefront-prvs: 0218A015FA X-Forefront-Antispam-Report-Untrusted: SFV:NSPM; SFS:(10009020)(4636009)(396003)(136003)(346002)(39860400002)(376002)(366004)(189003)(199004)(13464003)(3846002)(6116002)(4326008)(66066001)(5660300002)(64756008)(66446008)(66556008)(66476007)(66946007)(6246003)(55016002)(76116006)(478600001)(7736002)(86362001)(74316002)(316002)(52536014)(305945005)(25786009)(229853002)(99286004)(110136005)(26005)(55236004)(102836004)(7696005)(6306002)(9686003)(2906002)(486006)(53546011)(6506007)(76176011)(71200400001)(14454004)(6436002)(33656002)(256004)(186003)(8676002)(81156014)(81166006)(446003)(8936002)(54906003)(71190400001)(966005)(11346002)(476003); DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR08MB2800; H:VI1PR08MB5376.eurprd08.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; received-spf: None (protection.outlook.com: arm.com does not designate permitted sender hosts) X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: 1q4bmbUFpV8qpEHxDZjG2XZAaAb1jLQvAaHqvISZcz+Lnf/kLHVzjZOzQhZXFrmDga8f/DZHM7z4I6Y3soqHY2co8CyWKQu7T1ZTID8lennT/wcSMO/AUXrS9NCokxOYNP1nUnCEHrOb32FubGOyTho43vgXaENhvKVAIsmG6lJPDu3c5eXx2rPpnsqTBpwuXtKsQ37m4UUuZDd1o7ZP/6YwVGFOxPUC6xCJOtcQagbahwp2by5DIpn0g4aw5im+ECTufBYsSN4sscnnECyHKiXDiXXLO3d3GYGphDVMzo8oSonPD1tAJHj/F0NYgrTpyONOtnAOjkB2MNcYNMfDt1CY6axbeWefH1FhWcurVvwrjX9fXKIMHY//eyOLOsEcqXmdaiATvVYSDS4jnk8cz7XAAXhiuYF+GJefXDNOBRmqUAs4D6ljizscUJQM51OI83cpnww51Ams1ewoqVoPoduD+uV3Mm0KPvEGEuQh6pc= x-ms-exchange-transport-forked: True Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB2800 Original-Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Gavin.Hu@arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM5EUR03FT044.eop-EUR03.prod.protection.outlook.com X-Forefront-Antispam-Report: CIP:63.35.35.123; IPV:CAL; SCL:-1; CTRY:IE; EFV:NLI; SFV:NSPM; SFS:(10009020)(4636009)(396003)(136003)(376002)(39860400002)(346002)(1110001)(339900001)(13464003)(199004)(189003)(70206006)(2906002)(8936002)(81156014)(3846002)(81166006)(229853002)(8676002)(99286004)(6116002)(70586007)(316002)(110136005)(54906003)(6246003)(50466002)(52536014)(76130400001)(5660300002)(36906005)(22756006)(33656002)(356004)(966005)(14454004)(478600001)(26826003)(7696005)(2486003)(23676004)(66066001)(47776003)(76176011)(4326008)(336012)(25786009)(105606002)(9686003)(11346002)(446003)(436003)(86362001)(6306002)(74316002)(305945005)(486006)(55016002)(476003)(7736002)(126002)(186003)(102836004)(26005)(53546011)(6506007); DIR:OUT; SFP:1101; SCL:1; SRVR:AM0PR08MB4340; H:64aa7808-outbound-1.mta.getcheckrecipient.com; FPR:; SPF:Fail; LANG:en; PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com; A:1; MX:1; X-MS-Office365-Filtering-Correlation-Id-Prvs: f01c650f-289b-4d3b-34f4-08d7666b36ca NoDisclaimer: True X-Forefront-PRVS: 0218A015FA X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: R1DpJaVikrzyanmydG1AYFw7O3EHTKYbpKm9helUBaotajIhkCaIPadUGpJKx25sESX58ZlIJw/YZ/62Wme/ijBUxlXmf4W8MZe979PCwN7YKct9rPcgimeRD2jBcSirmGiYxnTY3plCRqaAPOUfGQ6tWkdkTXS4WKJaKjT8TW8kqOzHeLaWeo0F5K0vAcH9Zhi4c+/+mNbqHTuHJ9Zvsw4VT3YrxeETdltDmcQmuhu0ifrymNSYPRkjxpE3j8PIKE7IYMJH19hXYoynHnoHcDBq2xCtQVqJx8SVsK+kEydecCk6nCAuQk4yNOuAcL7YO00qQY0J9t5NLQdI5e11z3XHQw43bfovas4C9yOi/00k6qaKAzBridQovFLpaDDnsdSMrD8MIiy/4JhTrg+qfyOsrzZaoGRiKCcmL8876966Pf9u1sbXlRYh1xl5hq7S3k2UePDu65IrxwyNt1AdSFGeL6B8ERIg8EzpzGVpSBY= X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Nov 2019 05:51:45.8071 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 420b18ce-ab27-4953-f82c-08d7666b3c7e 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-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR08MB4340 Subject: Re: [dpdk-dev] [PATCH v13 2/5] eal: add the APIs to wait until equal X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 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" PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBKZXJpbiBKYWNvYiA8amVyaW5q YWNvYmtAZ21haWwuY29tPg0KPiBTZW50OiBNb25kYXksIE5vdmVtYmVyIDExLCAyMDE5IDE6MTIg UE0NCj4gVG86IEFuYW55ZXYsIEtvbnN0YW50aW4gPGtvbnN0YW50aW4uYW5hbnlldkBpbnRlbC5j b20+DQo+IENjOiB0aG9tYXNAbW9uamFsb24ubmV0OyBEYXZpZCBNYXJjaGFuZA0KPiA8ZGF2aWQu bWFyY2hhbmRAcmVkaGF0LmNvbT47IGRldkBkcGRrLm9yZzsgbmQgPG5kQGFybS5jb20+OyBHYXZp bg0KPiBIdSAoQXJtIFRlY2hub2xvZ3kgQ2hpbmEpIDxHYXZpbi5IdUBhcm0uY29tPjsgTWNuYW1h cmEsIEpvaG4NCj4gPGpvaG4ubWNuYW1hcmFAaW50ZWwuY29tPjsgS292YWNldmljLCBNYXJrbw0K PiA8bWFya28ua292YWNldmljQGludGVsLmNvbT47IGplcmluakBtYXJ2ZWxsLmNvbTsgSmFuIFZp a3RvcmluDQo+IDx2aWt0b3JpbkByZWhpdmV0ZWNoLmNvbT4NCj4gU3ViamVjdDogUmU6IFtkcGRr LWRldl0gW1BBVENIIHYxMyAyLzVdIGVhbDogYWRkIHRoZSBBUElzIHRvIHdhaXQgdW50aWwNCj4g ZXF1YWwNCj4gDQo+IE9uIFNhdCwgTm92IDksIDIwMTkgYXQgMTI6MDcgQU0gQW5hbnlldiwgS29u c3RhbnRpbg0KPiA8a29uc3RhbnRpbi5hbmFueWV2QGludGVsLmNvbT4gd3JvdGU6DQo+ID4NCj4g Pg0KPiA+DQo+ID4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+ID4gRnJvbTogVGhv bWFzIE1vbmphbG9uIDx0aG9tYXNAbW9uamFsb24ubmV0Pg0KPiA+ID4gU2VudDogRnJpZGF5LCBO b3ZlbWJlciA4LCAyMDE5IDU6MDAgUE0NCj4gPiA+IFRvOiBBbmFueWV2LCBLb25zdGFudGluIDxr b25zdGFudGluLmFuYW55ZXZAaW50ZWwuY29tPg0KPiA+ID4gQ2M6IERhdmlkIE1hcmNoYW5kIDxk YXZpZC5tYXJjaGFuZEByZWRoYXQuY29tPjsgZGV2QGRwZGsub3JnOw0KPiBuZEBhcm0uY29tOyBH YXZpbiBIdSA8Z2F2aW4uaHVAYXJtLmNvbT47IE1jbmFtYXJhLCBKb2huDQo+ID4gPiA8am9obi5t Y25hbWFyYUBpbnRlbC5jb20+OyBLb3ZhY2V2aWMsIE1hcmtvDQo+IDxtYXJrby5rb3ZhY2V2aWNA aW50ZWwuY29tPjsgSmVyaW4gSmFjb2IgPGplcmluakBtYXJ2ZWxsLmNvbT47IEphbg0KPiBWaWt0 b3Jpbg0KPiA+ID4gPHZpa3RvcmluQHJlaGl2ZXRlY2guY29tPg0KPiA+ID4gU3ViamVjdDogUmU6 IFtQQVRDSCB2MTMgMi81XSBlYWw6IGFkZCB0aGUgQVBJcyB0byB3YWl0IHVudGlsIGVxdWFsDQo+ ID4gPg0KPiA+ID4gMDgvMTEvMjAxOSAxNzozOCwgQW5hbnlldiwgS29uc3RhbnRpbjoNCj4gPiA+ ID4gPiBGcm9tOiBHYXZpbiBIdSA8Z2F2aW4uaHVAYXJtLmNvbT4NCj4gPiA+ID4gPiArc3RhdGlj IF9fcnRlX2Fsd2F5c19pbmxpbmUgdm9pZA0KPiA+ID4gPiA+ICtydGVfd2FpdF91bnRpbF9lcXVh bF82NCh2b2xhdGlsZSB1aW50NjRfdCAqYWRkciwgdWludDY0X3QgZXhwZWN0ZWQsDQo+ID4gPiA+ ID4gKyAgICAgICAgIGludCBtZW1vcmRlcikNCj4gPiA+ID4gPiArew0KPiA+ID4gPiA+ICsgdWlu dDY0X3QgdmFsdWU7DQo+ID4gPiA+ID4gKw0KPiA+ID4gPiA+ICsgYXNzZXJ0KG1lbW9yZGVyID09 IF9fQVRPTUlDX0FDUVVJUkUgfHwgbWVtb3JkZXIgPT0NCj4gX19BVE9NSUNfUkVMQVhFRCk7DQo+ ID4gPiA+ID4gKw0KPiA+ID4gPiA+ICsgLyoNCj4gPiA+ID4gPiArICAqIEF0b21pYyBleGNsdXNp dmUgbG9hZCBmcm9tIGFkZHIsIGl0IHJldHVybnMgdGhlIDY0LWJpdCBjb250ZW50IG9mDQo+ID4g PiA+ID4gKyAgKiAqYWRkciB3aGlsZSBtYWtpbmcgaXQgJ21vbml0b3JlZCcsd2hlbiBpdCBpcyB3 cml0dGVuIGJ5IHNvbWVvbmUNCj4gPiA+ID4gPiArICAqIGVsc2UsIHRoZSAnbW9uaXRvcmVkJyBz dGF0ZSBpcyBjbGVhcmVkIGFuZCBhIGV2ZW50IGlzIGdlbmVyYXRlZA0KPiA+ID4gPiA+ICsgICog aW1wbGljaXRseSB0byBleGl0IFdGRS4NCj4gPiA+ID4gPiArICAqLw0KPiA+ID4gPiA+ICsjZGVm aW5lIF9fTE9BRF9FWENfNjQoc3JjLCBkc3QsIG1lbW9yZGVyKSB7ICAgICAgICAgICAgICBcDQo+ ID4gPiA+ID4gKyBpZiAobWVtb3JkZXIgPT0gX19BVE9NSUNfUkVMQVhFRCkgeyAgICAgICAgICAg ICAgXA0KPiA+ID4gPiA+ICsgICAgICAgICBhc20gdm9sYXRpbGUoImxkeHIgJXhbdG1wXSwgWyV4 W2FkZHJdXSIgIFwNCj4gPiA+ID4gPiArICAgICAgICAgICAgICAgICA6IFt0bXBdICI9JnIiIChk c3QpICAgICAgICAgICAgICBcDQo+ID4gPiA+ID4gKyAgICAgICAgICAgICAgICAgOiBbYWRkcl0g InIiKHNyYykgICAgICAgICAgICAgICAgXA0KPiA+ID4gPiA+ICsgICAgICAgICAgICAgICAgIDog Im1lbW9yeSIpOyAgICAgICAgICAgICAgICAgICAgIFwNCj4gPiA+ID4gPiArIH0gZWxzZSB7ICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gPiA+ID4gKyAgICAg ICAgIGFzbSB2b2xhdGlsZSgibGRheHIgJXhbdG1wXSwgWyV4W2FkZHJdXSIgXA0KPiA+ID4gPiA+ ICsgICAgICAgICAgICAgICAgIDogW3RtcF0gIj0mciIgKGRzdCkgICAgICAgICAgICAgIFwNCj4g PiA+ID4gPiArICAgICAgICAgICAgICAgICA6IFthZGRyXSAiciIoc3JjKSAgICAgICAgICAgICAg ICBcDQo+ID4gPiA+ID4gKyAgICAgICAgICAgICAgICAgOiAibWVtb3J5Iik7ICAgICAgICAgICAg ICAgICAgICAgXA0KPiA+ID4gPiA+ICsgfSB9DQo+ID4gPiA+ID4gKw0KPiA+ID4gPiA+ICsgX19M T0FEX0VYQ182NChhZGRyLCB2YWx1ZSwgbWVtb3JkZXIpDQo+ID4gPiA+ID4gKyBpZiAodmFsdWUg IT0gZXhwZWN0ZWQpIHsNCj4gPiA+ID4gPiArICAgICAgICAgX19TRVZMKCkNCj4gPiA+ID4gPiAr ICAgICAgICAgZG8gew0KPiA+ID4gPiA+ICsgICAgICAgICAgICAgICAgIF9fV0ZFKCkNCj4gPiA+ ID4gPiArICAgICAgICAgICAgICAgICBfX0xPQURfRVhDXzY0KGFkZHIsIHZhbHVlLCBtZW1vcmRl cikNCj4gPiA+ID4gPiArICAgICAgICAgfSB3aGlsZSAodmFsdWUgIT0gZXhwZWN0ZWQpOw0KPiA+ ID4gPiA+ICsgfQ0KPiA+ID4gPiA+ICt9DQo+ID4gPiA+ID4gKyN1bmRlZiBfX0xPQURfRVhDXzY0 DQo+ID4gPiA+ID4gKw0KPiA+ID4gPiA+ICsjdW5kZWYgX19TRVZMDQo+ID4gPiA+ID4gKyN1bmRl ZiBfX1dGRQ0KPiA+ID4gPg0KPiA+ID4gPiBQZXJzb25hbGx5IEkgZG9uJ3Qgc2VlIGhvdyB0aGVz ZSBkZWZpbmUvdW5kZWYgYXJlIGJldHRlciB0aGVuIGlubGluZQ0KPiBmdW5jdGlvbnMuLi4NCj4g PiA+DQo+ID4gPiBUaGUgYmVuZWZpdCBpdCB0byBub3QgcG9sbHV0ZSB0aGUgQVBJIG5hbWVzcGFj ZQ0KPiA+ID4gd2l0aCBzb21lIGZ1bmN0aW9ucyB3aGljaCBhcmUgdXNlZCBvbmx5IGxvY2FsbHku DQo+ID4gPiBBZnRlciB1c2luZyBhIG1hY3JvLCBpdCBkaXNhcHBlYXJzIHdpdGggI3VuZGVmLg0K PiA+ID4NCj4gPiA+ID4gQWdhaW4gSSBzdXBwb3NlIHRoZXkgbWlnaHQgYmUgcmUtdXNlZCBpbiBm dXR1cmUgc29tZSBvdGhlciBBUk0NCj4gc3BlY2lmaWMgbG93LWxldmVsIHByaW1pdHZpZXMuDQo+ ID4gPg0KPiA+ID4gRG8gdGhpcyBsb3ctbGV2ZWwgcm91dGluZXMgX0xPQURfRVhDXyBuZWVkIHRv IGJlIGV4cG9zZWQgaW4gRUFMIGZvciByZS0NCj4gdXNlPw0KPiA+DQo+ID4gQWJvdXQgbG9hZF9l eGMgZG9uJ3Qga25vdyBmb3Igc3VyZS4uLg0KPiA+IFRob3VnaCBhcyBJIGNhbiBzZWUgd2ZlL3Nl dmwgYXJlIHVzZWQgaGVyZToNCj4gPiBodHRwOi8vcGF0Y2h3b3JrLmRwZGsub3JnL3BhdGNoLzYx Nzc5Lw0KPiA+IE1pZ2h0IGJlIGl0IGlzIHBvc3NpYmxlIHRvIHJldXNlIHRoZXNlIGZ1bmN0aW9u cy9tYWNyb3MuLi4NCj4gPiBCdXQgYWdhaW4sIEkgYW0gbm90IGFybSBleHBlcnQsIHdvdWxkIGJl IGludGVyZXN0ZWQgdG8ga25vdyB3aGF0IGFybQ0KPiBndXlzIHRoaW5rLg0KPiANCj4gDQo+IENv bnNpZGVyaW5nIFdGRSBoYXMgYSByZXF1aXJlbWVudCBvbiB1c2luZyBsb2FkX2V4ZWMgb24gQVJN IHNvIElNTywgaXQNCj4gbWFrZXMgc2Vuc2UgdG8gZXhwb3NlDQo+IGxvYWRfZXhlYyBpbiBjb25q dW5jdGlvbiB3aXRoIHdmZS9zZXZsIHRvIHVzZSBpdCBwcm9wZXJseS4NCkFncmVlLCBXRkUgc2hv dWxkIGhhdmUgbW9yZSB1c2UgY2FzZXMgY2FuIGJlIGRldmVsb3BlZCwgbm90IGxpbWl0ZWQgdG8g dGhlIFdBSVRfVU5USUxfRVFVQUxfWFggQVBJcy4gTWFydmVsJ3MgcGF0Y2ggaXMgYW4gZXhhbXBs ZS4NClNvcnJ5IEkgZG9uJ3QgaGF2ZSBtb3JlIHVzZSBjYXNlIHNvIGZhciwgYnV0IEFybSBpcyBl dm9sdmluZyBXRkUsIHNvIEkgdGhpbmsgbW9yZSB1c2UgY2FzZXMgYXJlIGVtZXJnaW5nLiANCi9H YXZpbg0KPiANCj4gDQo+ID4NCj4gPiA+DQo+ID4gPiA+IE15IHByZWZlcmVuY2Ugd291bGQgYmUg dG8ga2VlcCB0aGVtIGFzIGlubGluZSBmdW5jdGlvbiAtIG11Y2gNCj4gY2xlYW5lciBjb2RlLg0K PiA+ID4gPiBCdXQgYXMgSSBkb24ndCBkZXZlbG9wIGZvci91c2UsIEkgd291bGRuJ3QgaW5zaXN0 IGFuZCBsZXQgeW91IGFuZCBhcm0NCj4gZ3V5cyB0byBkZWNpZGUuDQo+ID4gPg0KPiA+ID4NCj4g Pg0K