From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id E7D50A00C5; Wed, 13 May 2020 21:40:54 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 2CAD81D5C8; Wed, 13 May 2020 21:40:54 +0200 (CEST) Received: from FRA01-MR2-obe.outbound.protection.outlook.com (mail-eopbgr90078.outbound.protection.outlook.com [40.107.9.78]) by dpdk.org (Postfix) with ESMTP id 2B60A1D5C6 for ; Wed, 13 May 2020 21:40:53 +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=ImWowgYIF/G4LZTWI51oCgbtP1jHNK1u9LLaCH395Kw=; b=6cu70HvTK0RXzLaX4K0TAd9RecGqmpxskOh0WeRc6Ay0Guh1+V478QsQ9VXEjl8kFskjUX1v//bAnu798EJE93PlnvTYg8sg0jXKeuNbUjS8Z4Xe1p0XKAxPcR8EUBPB77shI/S9T2li5uiSn14/Oa6OH5jKCsQ2UCCt9RPj83Y= Received: from DB6P191CA0010.EURP191.PROD.OUTLOOK.COM (2603:10a6:6:28::20) by PR2PR08MB4764.eurprd08.prod.outlook.com (2603:10a6:101:19::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2979.33; Wed, 13 May 2020 19:40:50 +0000 Received: from DB5EUR03FT025.eop-EUR03.prod.protection.outlook.com (2603:10a6:6:28:cafe::69) by DB6P191CA0010.outlook.office365.com (2603:10a6:6:28::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3000.20 via Frontend Transport; Wed, 13 May 2020 19:40:50 +0000 Authentication-Results: spf=pass (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=bestguesspass 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 DB5EUR03FT025.mail.protection.outlook.com (10.152.20.104) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3000.19 via Frontend Transport; Wed, 13 May 2020 19:40:50 +0000 Received: ("Tessian outbound 4cdf5642225a:v54"); Wed, 13 May 2020 19:40:50 +0000 X-CR-MTA-TID: 64aa7808 Received: from c856e8d87a52.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id A6038248-B8A7-413E-B571-6F3F78CDA4E3.1; Wed, 13 May 2020 19:40:45 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id c856e8d87a52.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Wed, 13 May 2020 19:40:45 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=egWiUthqk1I92VMbkxAvr9Mie/Cvuzv0yArlCajf0g7waAloVT460OVwvMyCYeErvJldM9ewKJyEDc+zVBJ6TULIB4LfsCYZ4dgl7u/cFJNvpyRQA4EgUudXRBVjvzI0g/DY+Wf6ic5MScmmR/5OKzxwDXHIT7rWUvyagA4Pr8juZBhAKtsQjP2EnbTt3zfsZxxJHNQ2A7SRi360ndluNxXdRVOdSYvhlplYHECtUIzMYMgpHXswdoYeQ/WA29EWrx74l4aUimUbVg3rVyeora6VNvkU/pnVpAs/umg9tKNETG61ahv52LsNMET7dftzmfyPfVP6Lv1IhR2XlSGTKg== 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=ImWowgYIF/G4LZTWI51oCgbtP1jHNK1u9LLaCH395Kw=; b=fTRgFjNlZ9qxCMRJxQCQG58IqsoR4JPHI7nimYwlAGZS4cqd+BVA9g6zk0ufFfxmNtc0au//ajwvJ8RTauI/flKA3iWDPJoE5b9I8Xjp4fbFW3icuDOl9xIxUxyXldvuyqNaxgN+eY8Xs00OPT2L/MUHqPUxN2kMP1VV2UbSyLqqB5ELhuLAvLV9o5jgqO+vvX9U3aFUF/28pF3DGn/jjbvic3ImifghUvSee4OmuQBdg6Z6qDd3Qh2v8lbFL8eUR+SuN/KtsDZqtCnbyzMbNPuurR8gz3/w3eaq9ysKmUUw67zAc1xZYX2zGqfdAsmKqi7tsH//JXTvjFbaVpb8Hw== 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=ImWowgYIF/G4LZTWI51oCgbtP1jHNK1u9LLaCH395Kw=; b=6cu70HvTK0RXzLaX4K0TAd9RecGqmpxskOh0WeRc6Ay0Guh1+V478QsQ9VXEjl8kFskjUX1v//bAnu798EJE93PlnvTYg8sg0jXKeuNbUjS8Z4Xe1p0XKAxPcR8EUBPB77shI/S9T2li5uiSn14/Oa6OH5jKCsQ2UCCt9RPj83Y= Received: from DBBPR08MB4646.eurprd08.prod.outlook.com (2603:10a6:10:f5::16) by DBBPR08MB4283.eurprd08.prod.outlook.com (2603:10a6:10:c3::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2979.33; Wed, 13 May 2020 19:40:42 +0000 Received: from DBBPR08MB4646.eurprd08.prod.outlook.com ([fe80::1870:afc4:b90f:609d]) by DBBPR08MB4646.eurprd08.prod.outlook.com ([fe80::1870:afc4:b90f:609d%5]) with mapi id 15.20.3000.016; Wed, 13 May 2020 19:40:42 +0000 From: Honnappa Nagarahalli To: =?utf-8?B?TWF0dGlhcyBSw7ZubmJsb20=?= , =?utf-8?B?TW9ydGVuIEJyw7hydXA=?= , Stephen Hemminger , Phil Yang CC: "thomas@monjalon.net" , "dev@dpdk.org" , "bruce.richardson@intel.com" , "ferruh.yigit@intel.com" , "hemant.agrawal@nxp.com" , "jerinj@marvell.com" , "ktraynor@redhat.com" , "konstantin.ananyev@intel.com" , "maxime.coquelin@redhat.com" , "olivier.matz@6wind.com" , "harry.van.haaren@intel.com" , "erik.g.carrillo@intel.com" , nd , David Christensen , Honnappa Nagarahalli , nd Thread-Topic: [PATCH v4 4/4] eal/atomic: add wrapper for c11 atomics Thread-Index: AQHWKDQVYr2/oTFRrka2a/dKKmKOWKikw4QAgAAR2ACAAOM5AIAAqZ0AgAAI1IA= Date: Wed, 13 May 2020 19:40:42 +0000 Message-ID: References: <1584407863-774-1-git-send-email-phil.yang@arm.com> <1589270586-4480-1-git-send-email-phil.yang@arm.com> <1589270586-4480-5-git-send-email-phil.yang@arm.com> <1589307606.25513.1@networkplumber.org> <98CBD80474FA8B44BF855DF32C47DC35C60FC1@smartserver.smartshare.dk> <8f58b8a5-b5a9-d6fa-0c95-69a056cefe88@ericsson.com> In-Reply-To: <8f58b8a5-b5a9-d6fa-0c95-69a056cefe88@ericsson.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: 170119de-ec7c-41d4-8343-07c9bff8e8b1.0 x-checkrecipientchecked: true Authentication-Results-Original: ericsson.com; dkim=none (message not signed) header.d=none; ericsson.com; dmarc=none action=none header.from=arm.com; x-originating-ip: [70.113.25.165] x-ms-publictraffictype: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: e2e129d7-8346-4f36-f1d7-08d7f7758a95 x-ms-traffictypediagnostic: DBBPR08MB4283:|DBBPR08MB4283:|PR2PR08MB4764: x-ld-processed: f34e5979-57d9-4aaa-ad4d-b122a662184d,ExtAddr x-ms-exchange-transport-forked: True X-Microsoft-Antispam-PRVS: x-checkrecipientrouted: true nodisclaimer: true x-ms-oob-tlc-oobclassifiers: OLM:7219;OLM:7219; x-forefront-prvs: 0402872DA1 X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: XxdH7zsSqw9IagBGbyfS9sxsg9btN2EK0U6ueRdV2QVyXdE1tW731h+LiLX1E7bfzPUTxO1/ayD+MOT0prhNEhbS1dKfzaacIVInLnAq/9nTz6Ep+PZ5XX28eUS3FiCv2u+Cs9QS7Z99wFiU5yxfHuSV+LvdBgyrIYW3tbbXWHAcUDbQP+saVZ6IXgvXiCVkbtnOJkTRImnf8yHR2b6u1fwagaJQOn1NIfKFuihJ7QAu052nyu1Q8bCTk1oRXgG4uLr5WQiWcZ32tShzVLtsAEc9STjpTXh24Maf+Wlr7q5x8nKNE5tM1wLZU5ZV7OPUQZH9BYd0dqAE+TPvVCYbd/kmz7krO7ZlIxuJonftgHpgnYRmDgDXYQRyYfhHPOHvL2fY8UnwB+2AvTd2s8WtcnqmGrstXkCVb9OY4SCJW9GAJ74VOavGMfN7H3u4rR6PYZxpGoaLv1Z9fIPzbhLVoRxCyalx6j/29iusMTR1pa/X/oHpTRLsnuR0BMaFNXY3wb+hkCikyBElPhKaBeQjFgIbeAJiEtgzhcDLgKJ/pbF0cfgm3lda9Dwz3FxQaLns X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DBBPR08MB4646.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFTY:; SFS:(4636009)(39860400002)(366004)(376002)(396003)(346002)(136003)(33430700001)(52536014)(6636002)(316002)(110136005)(54906003)(478600001)(66946007)(7416002)(86362001)(66476007)(76116006)(71200400001)(4326008)(66574014)(66446008)(33440700001)(33656002)(5660300002)(6506007)(8936002)(186003)(8676002)(9686003)(7696005)(2906002)(53546011)(55016002)(26005)(64756008)(66556008)(21314003); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: Aawvkt/HYtAG5YEjweC/bU2cDd5kdN+UbJynxeNthffUMKc4zmAE0VSeiDtgN298SAHxFAn92CheKMBfDZKYHAwy/mkQtQheq5uITSbi4y9WXnSh12jsu4E/zrV81pfkE/7XLm1VEKvOqA0sUgem35E886zIhc3OBlJcq2RKJ1zC1IjbFvivCUVOS3dzvvU8Xh1v9RGlbMqrWftPR6efdVutF7A0sW2TnJqPM6lvcfaWVpv8jqeA9n4r/TlT9tlPyqBsVKwStz2OQBnVbjfXs4HQDpvBdjGum4iulsqo6IJUNoa9KIJA20vaFj36sq7M9EQhX8Xcr61NbXNPJEb8An7iHDqs+hy3OWD3gKwCkCHirz+q+g5jCqWkXNvXSCAaYomDMs+zDlnfgJMscwVJlCwix1jzsexNCGEiewUVH53+TvJk1kLnL0LBqmBBTIIeVkt1pCaWm8Gf5GjtS5IhErDDwpulpBtSgbayUNitx4cqRcqO8Zf7tAOmh7LkeUdC Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB4283 Original-Authentication-Results: ericsson.com; dkim=none (message not signed) header.d=none; ericsson.com; dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DB5EUR03FT025.eop-EUR03.prod.protection.outlook.com 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; SFTY:; SFS:(4636009)(376002)(136003)(346002)(39860400002)(396003)(46966005)(33430700001)(316002)(336012)(82740400003)(70206006)(478600001)(7696005)(6506007)(26005)(66574014)(9686003)(47076004)(86362001)(110136005)(33440700001)(5660300002)(55016002)(52536014)(8936002)(356005)(8676002)(70586007)(6636002)(186003)(54906003)(33656002)(81166007)(2906002)(82310400002)(4326008)(21314003); DIR:OUT; SFP:1101; X-MS-Office365-Filtering-Correlation-Id-Prvs: bbabddd9-fe3a-4540-2b55-08d7f77585ec X-Forefront-PRVS: 0402872DA1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: n0PQP4kTH5HtX1uxMVgkY5aP415rYGCu1dTeVgUfbAGEMnfn9Tp4W5Nu8ozJmy4SI0m6s8PChmMKi1TU+V0AVNqqMsoICjDg2tvQWTpjcMngqSqJThTSQaE8tFGmdWRLWAqku5ZoD5YVuV71vNVuyUa5A34Guwoyfu6XLDTA8qkbzycxG5qumXbPAb43nk2brpha4YM+qQo0/rgYo3QFxjhfw3d25VF9NnU0Lb0DnPJ3vlotDmS7TaUNklGxsubn48dJIR2zjHvZNaARa6uUuS+YjTw34CJcVU7o4ngzMdj+i+vyHVFoFeElNPzdyMXQIYHiKRiDcen/Kkio8pKHjpHmVAbnvRSr9VgFWYak6lEniMM5TeyI76HfFDGTMcky+84d+glLt/zVIuq48VM5ByYeybDsS61pvZiRgcFV/apqUMprZyG4QIwS/JoOsAQk93q60KnQETNVJ0YCneTRyqOZlrZUbPCyQSlZj8oVjocFYsRk5xBq3q5/O8Tresiwi05uy285YwmhqF8zmclJl6bi5RcK1IxrOgRT4qvvFhMO1OO5M1MHAkGtLgh4vmk6YJ85ELaRr6GBQbEmpPFf6JgT3L/iiJKtGnr6ritcjIQ= X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 May 2020 19:40:50.4311 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: e2e129d7-8346-4f36-f1d7-08d7f7758a95 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: PR2PR08MB4764 Subject: Re: [dpdk-dev] [PATCH v4 4/4] eal/atomic: add wrapper for c11 atomics 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" PHNuaXA+DQoNCj4gPj4NCj4gPj4gU3ViamVjdDogUmU6IFtQQVRDSCB2NCA0LzRdIGVhbC9hdG9t aWM6IGFkZCB3cmFwcGVyIGZvciBjMTEgYXRvbWljcw0KPiA+Pg0KPiA+PiBPbiBUdWUsIE1heSAx MiwgMjAyMCBhdCA0OjAzIHBtLCBQaGlsIFlhbmcgPG1haWx0bzpwaGlsLnlhbmdAYXJtLmNvbT4N Cj4gPj4gd3JvdGU6DQo+ID4+DQo+ID4+IHBhcmFtZXRlci4gU2lnbmVkLW9mZi1ieTogUGhpbCBZ YW5nIDxtYWlsdG86cGhpbC55YW5nQGFybS5jb20+DQo+ID4+DQo+ID4+DQo+ID4+IFdoYXQgaXMg dGhlIHB1cnBvc2Ugb2YgaGF2aW5nIHJ0ZV9hdG9taWMgYXQgYWxsPw0KPiA+PiBJcyB0aGlzIGxl dmVsIG9mIGluZGlyZWN0aW9uIHJlYWxseSBoZWxwaW5nPw0KPiA+PiBbSE9OTkFQUEFdIChub3Qg c3VyZSB3aHkgdGhpcyBlbWFpbCBoYXMgaHRtbCBmb3JtYXQsIGNvbnZlcnRlZCB0bw0KPiA+PiB0 ZXh0DQo+ID4+IGZvcm1hdCkNCj4gPj4gSSBiZWxpZXZlIHlvdSBtZWFudCwgd2h5IG5vdCB1c2Ug dGhlIF9fYXRvbWljX3h4eCBidWlsdC1pbnMgZGlyZWN0bHk/DQo+ID4+IFRoZSBvbmx5IHJlYXNv biBmb3Igbm93IGlzIGhhbmRsaW5nIG9mDQo+ID4+IF9fYXRvbWljX3RocmVhZF9mZW5jZShfX0FU T01JQ19TRVFfQ1NUKSBmb3IgeDg2LiBUaGlzIGlzIGVxdWl2YWxlbnQNCj4gPj4gdG8gcnRlX3Nt cF9tYiB3aGljaCBoYXMgYW4gb3B0aW1pemVkIGltcGxlbWVudGF0aW9uIGZvciB4ODYuDQo+ID4+ IEFjY29yZGluZyB0byBLb25zdGFudGluLCB0aGUgY29tcGlsZXIgZG9lcyBub3QgZ2VuZXJhdGUg b3B0aW1hbCBjb2RlLg0KPiA+PiBXcmFwcGluZyB0aGF0IGJ1aWx0LWluIGFsb25lIGlzIGdvaW5n IHRvIGJlIGNvbmZ1c2luZy4NCj4gPj4NCj4gPj4gVGhlIHdyYXBwZXJzIGFsc28gYWxsb3cgdXMg dG8gaGF2ZSBvdXIgb3duIGltcGxlbWVudGF0aW9uIHVzaW5nDQo+ID4+IGlubGluZSBhc3NlbWJs eSBmb3IgY29tcGlsZXJzIHZlcnNpb25zIHRoYXQgZG8gbm90IHN1cHBvcnQgQzExIGF0b21pYw0K PiA+PiBidWlsdC0gaW5zLiBCdXQsIEkgZG8gbm90IGtub3cgaWYgdGhlcmUgaXMgYSBuZWVkIHRv IHN1cHBvcnQgdGhvc2UgdmVyc2lvbnMuDQo+ID4gSWYgSSByZWNhbGwgY29ycmVjdGx5LCBzb21l b25lIG1lbnRpb25lZCB0aGF0IG9uZSAob3IgbW9yZSkgb2YgdGhlIGFnaW5nDQo+IGVudGVycHJp c2UgTGludXggZGlzdHJpYnV0aW9ucyBkb24ndCBpbmNsdWRlIGEgY29tcGlsZXIgd2l0aCBDMTEg YXRvbWljcy4NCj4gPg0KPiA+IEkgdGhpbmsgU3RlcGhlbiBpcyBvbnRvIHNvbWV0aGluZyBoZXJl Li4uDQo+ID4NCj4gPiBJdCBpcyBzaWxseSB0byBhZGQgd3JhcHBlcnMgbGlrZSB0aGlzLCBpZiB0 aGUgb25seSBwdXJwb3NlIGlzIHRvIHN1cHBvcnQNCj4gY29tcGlsZXJzIGFuZCBkaXN0cmlidXRp b25zIHRoYXQgZG9uJ3QgcHJvcGVybHkgc3VwcG9ydCBhbiBvZmZpY2lhbCBDIHN0YW5kYXJkDQo+ IHdoaWNoIGlzIG5lYXJseSBhIGRlY2FkZSBvbGQuIFRoZSBxdWFsaXR5IGFuZCBxdWFudGl0eSBv ZiB0aGUgRFBESw0KPiBkb2N1bWVudGF0aW9uIGZvciB0aGVzZSBmdW5jdGlvbnMgKGluY2x1ZGlu ZyBleGFtcGxlcywgZGlzY3Vzc2lvbnMgb24gU3RhY2sNCj4gT3ZlcmZsb3csIGV0Yy4pIHdpbGwg YmUgaW5mZXJpb3IgdG8gdGhlIGRvY3VtZW50YXRpb24gb2YgdGhlIHN0YW5kYXJkIEMxMQ0KPiBh dG9taWNzLCB3aGljaCBpbmNyZWFzZXMgdGhlIHByb2JhYmlsaXR5IG9mIGluY29ycmVjdCB1c2Uu DQo+IA0KPiANCj4gV2hhdCdzIGJlaW5nIHVzZWQgaW4gRFBESyB0b2RheSwgYW5kIHdoYXQncyBi ZWluZyB3cmFwcGVkIGhlcmUsIGlzIG5vdA0KPiBzdGFuZGFyZCBDMTEgYXRvbWljcyAtIGl0J3Mg YSBidW5jaCBvZiBHQ0MgYnVpbHQtaW5zLiBOb3RoaW5nIGluIHRoZSBfXw0KPiBuYW1lc3BhY2Ug aXMgaW4gdGhlIHN0YW5kYXJkLiBJdCdzIHJlc2VydmVkIGZvciB0aGUgaW1wbGVtZW50YXRpb24g KGUuZy4NCj4gY29tcGlsZXIpLg0KSSBoYXZlIHRyaWVkIHRvIHVuZGVyc3RhbmQgd2hhdCBpdCBt ZWFuIGJ5ICdidWlsdC1pbnMnLCBidXQgSSBoYXZlIG5vdCBnb3QgYSBnb29kIGFuc3dlci4gU28s IGRvZXMgaXQgbWVhbiB0aGF0IHRoZSBidWlsdC1pbiBmdW5jdGlvbiAoc2FtZSBzeW1ib2wgYW5k IEFQSSBpbnRlcmZhY2UpIG1heSBub3QgYmUgYXZhaWxhYmxlIGluIGFub3RoZXIgQyBjb21waWxl cj8gSU1PLCB0aGlzIGlzIHdoYXQgbWF0dGVycyBmb3IgRFBESy4NCkN1cnJlbnRseSwgdGhlIHNh bWUgYnVpbHQtaW4gZnVuY3Rpb25zIGFyZSBhdmFpbGFibGUgaW4gR0NDIGFuZCBDbGFuZy4NCg0K PiANCj4gDQo+ID4gQW5kIGlmIHNvbWUgY29tcGlsZXIgZ2VuZXJhdGVzIGNvZGUgdGhhdCBpcyBz dWJvcHRpbWFsIGZvciBhIHVzZXIsIHRoZW4gaXQNCj4gc2hvdWxkIGJlIHRoZSBjaG9pY2Ugb2Yg dGhlIHVzZXIgdG8gZWl0aGVyIGFjY2VwdCBpdCBvciB1c2UgYSBiZXR0ZXIgY29tcGlsZXIuDQo+ IFVzaW5nIGEgc3Vib3B0aW1hbCBjb21waWxlciB3aWxsIG5vdCBvbmx5IGFmZmVjdCB0aGUgdXNl cidzIERQREsgYXBwbGljYXRpb25zLA0KPiBidXQgYWxsIGFwcGxpY2F0aW9ucyBkZXZlbG9wZWQg YnkgdGhlIHVzZXIuIEFuZCBpZiBoZSBhY2NlcHRzIGl0IGZvciBoaXMgb3RoZXINCj4gYXBwbGlj YXRpb25zLCBoZSB3aWxsIGFsc28gYWNjZXB0IGl0IGZvciBoaXMgRFBESyBhcHBsaWNhdGlvbnMu DQo+ID4NCj4gPiBXZSBjb3VsZCBpbnRyb2R1Y2Ugc29tZSBzb3J0IG9mIG1hcmtlciBvciBzdGFu ZGFyZGl6ZWQgY29tbWVudCB0bw0KPiBpbmRpY2F0ZSB3aGVuIGZ1bmN0aW9ucyBvbmx5IGV4aXN0 IGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSB3aXRoIGFuY2llbnQNCj4gY29tcGlsZXJzIGFu ZCBzaW1pbGFyLCB3aXRoIGEgcmVmZXJlbmNlIHRvIGRvY3VtZW50YXRpb24gZGVzY3JpYmluZyB3 aHkuIEFuZA0KPiB3aGVuIHRoZSBkb2N1bWVudGVkIHByZWNvbmRpdGlvbnMgYXJlIG5vIGxvbmdl ciByZWxldmFudCwgZS5nLiB3aGVuIHRob3NlDQo+IHBhcnRpY3VsYXIgZW50ZXJwcmlzZSBMaW51 eCBkaXN0cmlidXRpb25zIGJlY29tZSBvYnNvbGV0ZSwgdGhlc2UgZnVuY3Rpb25zDQo+IGJlY29t ZSBvYnNvbGV0ZSB0b28sIGFuZCBzaG91bGQgYmUgcmVtb3ZlZC4gSG93ZXZlciwgZ2V0dGluZyBy aWQgb2YNCj4gb2Jzb2xldGUgY3J1ZnQgd2lsbCBicmVhayB0aGUgQUJJLiBJbiBvdGhlciB3b3Jk czogQWRkZWQgY3J1ZnQgd2lsbCBuZXZlciBiZQ0KPiByZW1vdmVkIGFnYWluLCBzbyB0aGluayB0 d2ljZSBiZWZvcmUgYWRkaW5nLg0KPiA+DQo+ID4NCj4gPiBNZWQgdmVubGlnIGhpbHNlbiAvIGtp bmQgcmVnYXJkcw0KPiA+IC0gTW9ydGVuIEJyw7hydXANCj4gPg0KPiA+DQo+ID4NCg0K