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 182FBA04DD; Fri, 20 Nov 2020 16:56:57 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 662B6F90; Fri, 20 Nov 2020 16:56:54 +0100 (CET) Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on2043.outbound.protection.outlook.com [40.107.22.43]) by dpdk.org (Postfix) with ESMTP id 69246DED for ; Fri, 20 Nov 2020 16:56:51 +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=peu6TKH+h/AqjTFKbC8DEOaYI0WZafPx4TREnhJ6PVg=; b=6YJ5N3QB1OGWqMjblLUYvho8D/ZtXZC+b073DO5lPEwB6h++MRxiVb/J3Lbt+P/3gj5hxYsEQgEDNvJzBtP9VO1wjjpJ6cmiCk+5or/NzAQfHesuvq2xKhtsuS+xJcts1iBaGI/tDpJoiv0bAvVqdE+vG5rbSoaVdyreX4uAjfg= Received: from AM6PR10CA0055.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:209:80::32) by AM4PR08MB2900.eurprd08.prod.outlook.com (2603:10a6:205:e::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3564.25; Fri, 20 Nov 2020 15:56:48 +0000 Received: from AM5EUR03FT039.eop-EUR03.prod.protection.outlook.com (2603:10a6:209:80:cafe::5b) by AM6PR10CA0055.outlook.office365.com (2603:10a6:209:80::32) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3589.20 via Frontend Transport; Fri, 20 Nov 2020 15:56:48 +0000 X-MS-Exchange-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=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 AM5EUR03FT039.mail.protection.outlook.com (10.152.17.185) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3589.20 via Frontend Transport; Fri, 20 Nov 2020 15:56:48 +0000 Received: ("Tessian outbound 797fb8e1da56:v71"); Fri, 20 Nov 2020 15:56:48 +0000 X-CR-MTA-TID: 64aa7808 Received: from af9e8c68cea5.4 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 3CD206AF-EB6F-4B61-82B8-6F54956496C8.1; Fri, 20 Nov 2020 15:56:43 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id af9e8c68cea5.4 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Fri, 20 Nov 2020 15:56:43 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=nG+CImlfLqzGZO05jhYRYNv3g/XV45+f9pCaEwNHkq0cWROmXeO07LuiHvQMbuQIhbBgHcGUEu1hKg1bhKdelGV+/rlaDaF8i10hLi1JnyqQgAN8SX57PxQjMPi3a5I9ZbCvkmH4i0r4AIH9ZL4PQFPQMdjXxi1OsPYk4XsbejN/u0+Fn3RX2WBof9sefHiEUvq8rtbenZ4JYLM6MjFx5lWYjn535WA7C9BZWZsicC1U5uY00YML/z/waQ1e4/vesseR0EUu2enMtcrq8bj6L52vDVO6LqSZLDgpgw6ZQbR7hBGbNGZc/DC1Giax1cW6Ua/STwvr2P11UWX4nE0NYg== 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=peu6TKH+h/AqjTFKbC8DEOaYI0WZafPx4TREnhJ6PVg=; b=bSf4/7DiH4ee0LZ+Mg0GYO9XOeBipvQZCPo0mXTfpY8QV0dwScpmiTgmJdXUAgwnDniK4xHHCEyf7qHCNmZoaMtuYiYYPnS3Dw/gI/tNHx/6FZZdEr01wbJ0JuDjTyHUOIAhpfcftGKN/XdsjwNwXlfnrVFz1U3J2Zty/+YPrW9+oBZ4WAaMdKEBnAlJJyKCryHcHJ1xle4Y+6cMyl7B43b5XfXus4/YNc3A1VZ56BJsUX3hphykJHTEK3DDgiyv84Cvm0gTt/uvZeI0NkpNX8cjm6HAGRqlCUrsk5WJA5lxlpuM0wyCGYx2nL0phJE1vB5w7TtkEHs0JA4Fccid0Q== 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=peu6TKH+h/AqjTFKbC8DEOaYI0WZafPx4TREnhJ6PVg=; b=6YJ5N3QB1OGWqMjblLUYvho8D/ZtXZC+b073DO5lPEwB6h++MRxiVb/J3Lbt+P/3gj5hxYsEQgEDNvJzBtP9VO1wjjpJ6cmiCk+5or/NzAQfHesuvq2xKhtsuS+xJcts1iBaGI/tDpJoiv0bAvVqdE+vG5rbSoaVdyreX4uAjfg= Received: from DBAPR08MB5814.eurprd08.prod.outlook.com (2603:10a6:10:1b1::6) by DB7PR08MB3338.eurprd08.prod.outlook.com (2603:10a6:5:1b::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3541.25; Fri, 20 Nov 2020 15:56:39 +0000 Received: from DBAPR08MB5814.eurprd08.prod.outlook.com ([fe80::7814:9c1:781f:475d]) by DBAPR08MB5814.eurprd08.prod.outlook.com ([fe80::7814:9c1:781f:475d%4]) with mapi id 15.20.3589.025; Fri, 20 Nov 2020 15:56:39 +0000 From: Honnappa Nagarahalli To: Bruce Richardson CC: =?utf-8?B?SnVyYWogTGlua2XFoQ==?= , "thomas@monjalon.net" , Ruifeng Wang , Phil Yang , "vcchunga@amazon.com" , Dharmik Thakkar , "jerinjacobk@gmail.com" , "hemant.agrawal@nxp.com" , "Ajit Khaparde (ajit.khaparde@broadcom.com)" , "ferruh.yigit@intel.com" , "dev@dpdk.org" , nd , Honnappa Nagarahalli , nd Thread-Topic: [dpdk-dev] [PATCH v12 09/14] build: optional NUMA and cpu counts detection Thread-Index: AQHWvm5FYCfUzOaFZk2S5w4c9p5b1qnPex2AgAAO0YCAAOKEUIAAYuUAgABYHLA= Date: Fri, 20 Nov 2020 15:56:39 +0000 Message-ID: References: <1605267483-13167-1-git-send-email-juraj.linkes@pantheon.tech> <11763925.GOiJPSdkav@thomas> <2337679.hKZaPKL2be@thomas> <20201119121947.GC1829@bricha3-MOBL.ger.corp.intel.com> <20201119145101.GA1835@bricha3-MOBL.ger.corp.intel.com> <20201120101542.GA1376@bricha3-MOBL.ger.corp.intel.com> In-Reply-To: <20201120101542.GA1376@bricha3-MOBL.ger.corp.intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: ACAD34D81A0536498BA71A3BA5EE51CB.0 x-checkrecipientchecked: true Authentication-Results-Original: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=arm.com; x-originating-ip: [70.113.13.105] x-ms-publictraffictype: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: f96c2540-d5da-49e1-7299-08d88d6ce38d x-ms-traffictypediagnostic: DB7PR08MB3338:|AM4PR08MB2900: 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:10000;OLM:10000; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: eQ8N8Gij/y8dx2iAeew/a+9lwlEsqehgrz2pc/3DBAkDD3su6FM8MTcoSe6Js2CHuQkGOoY/GAqhD3acjt6L1FfD8P37gHslVoS22knKUtotTWznbCuDL0gg1NDUObuN84yIsUUvoMYvCGXL/58A0MSkLT/q0if26cH15KkbT6ZkLEkKCtjZPAHIRIGV1n+OJ7wFtbHQGk4795Sota368mwK4DPtjMjvFezKpPlKgOpPo3kyvGkaOMClQjQ0qyIrFYmBRNdGENd2z003QbyXQwJhfiRH8cuIgZeT1cBqM/ypHz02BTLg2XOsNlw4dFXODcYyl4AQMlqRBdRJpUW4Bg== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DBAPR08MB5814.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(346002)(136003)(366004)(396003)(39860400002)(376002)(76116006)(66446008)(186003)(64756008)(66556008)(8676002)(86362001)(83380400001)(478600001)(71200400001)(33656002)(66476007)(6916009)(8936002)(4326008)(5660300002)(6506007)(66946007)(26005)(52536014)(54906003)(316002)(9686003)(55016002)(2906002)(7696005); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: GhWyOZKmXHKQLEvnYu2BYEIkvC2Sg/mfNfHvSx6zIjwakgXwmWMPCamfS9uf436FwSKd+Ai/J0cdBc6BGFqrdozur05G8NstFf1F/cMgrTpPe3kwf6Ebb6MzFkmv/s03kbRWFuQNUlu5AUZU1Upwu3kM/+YzfWs8KpchHYTG8+XzZH2jnymxdZ6t+l16b7cnASe+C4iKQFMRugcUEGK+I5BWXofn2i7lToVX+jWjcVfIXE//mvvAh5CGTf7PyzjFYA6d7uXf1qhlAaI4NbGE/k/rvTazKajiw8zILCXOK/BheGe2c7Vdo9hCj07IyUbwnxSYe13ztu4hNs9lqXHEL9R7iOsuctDaV/4imxGvnw5okY9gBJ/OMf/b/o8etRw58n1Mj7yUypZHflJ55LUBtwMLnY1L3pEfJxI5mVlUP0EmgT6AEh65LZeMEVNq1Fdu0DRqxt6svTdiS88m5UTnw8Eefb6fSwraaoRsZBm0khEEInWeReFGY46xBhknajkTuG+BmQMmzLuy27dDt7eunFPuJYhKl6GSNiZGV42nMnbA9p5RzwxDovb96UDtsEct9KYSOEAm9P7ZMLS9sxioAaCrSMDxEVqauhBKwObv64OFhRLEvYxZEnm7NKUEijNEXkIfGMsuVgcVg4EFmkHKZVRRtOjpF6S8ybMa9yRh5wXgCXuyMIdqgAWpnaYlL4TiOhBH6y5ByNPHCJi7c4DRD/FWoJikpnsrWnvYSnFF5l/LDWj1aBut+SR4gCvRy50U9EHWeCSvkuyfglXnbPMkQqFcoBkktFbZ+zqERbcAceZOQfXl7JsnlARyDGKvO043j7zQKtoEgpwy1C00XN0J6DvjRzAHqaqhGCcxQ23tUTopFfyQJh+4+nYd5h8kbOXzY0A7ltByFVNqFdjnvIsE1w== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB7PR08MB3338 Original-Authentication-Results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM5EUR03FT039.eop-EUR03.prod.protection.outlook.com X-MS-Office365-Filtering-Correlation-Id-Prvs: 94a52d31-cf4e-47e0-c18a-08d88d6cde56 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: IdWxo10IzUymXFLnlFVCClAWSuitDS6e+4eG6yzKQP2VtMMpvE+nXAlRDXi/sd82cvk55DOyp44lxi7UPunTbX1+he6Df/28jTpv3opYfgVnlThQueB+5+DkAUXT3hc4VRRXCnU88I+Zx18qCe1+OJZXbuIm4s4k4myeiqJjq6c2XxponA2D2kBN5W2geKB03nO2WKqgfRmcfNswfLSBveNiozrR+6TPDrvW4oI+ud6FDlkXC6QHHbjolzc3mbYYTEzVAEFdwsGJY8QlPEsCCWbBomIaytIrbCYI8RfK/tGbDfPmv8rN/aocgw3Ryk6f9TFdr7VREVjZpwE/s2hZ6NAZlaqaGNqQ3JpBaThMxygheeGsuDoD1gZxsE1sz+cGDCUdZCUtX7KxLaqllEingQ== 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)(396003)(376002)(39860400002)(346002)(136003)(46966005)(336012)(86362001)(2906002)(356005)(6506007)(7696005)(82310400003)(70206006)(82740400003)(478600001)(47076004)(70586007)(81166007)(83380400001)(5660300002)(54906003)(55016002)(33656002)(6862004)(52536014)(186003)(8676002)(4326008)(8936002)(9686003)(26005)(316002); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Nov 2020 15:56:48.5797 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: f96c2540-d5da-49e1-7299-08d88d6ce38d 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: AM5EUR03FT039.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM4PR08MB2900 Subject: Re: [dpdk-dev] [PATCH v12 09/14] build: optional NUMA and cpu counts detection 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+DQo+ID4NCj4gPiA+ID4gPiA+ID4gMTgvMTEvMjAyMCAxNToxOSwgSnVyYWogTGlua2XF oToNCj4gPiA+ID4gPiA+ID4gPiBGcm9tOiBUaG9tYXMgTW9uamFsb24gPHRob21hc0Btb25qYWxv bi5uZXQ+DQo+ID4gPiA+ID4gPiA+ID4gPiAxNi8xMS8yMDIwIDEwOjEzLCBCcnVjZSBSaWNoYXJk c29uOg0KPiA+ID4gPiA+ID4gPiA+ID4gPiBPbiBNb24sIE5vdiAxNiwgMjAyMCBhdCAwODoyNDo0 OEFNICswMTAwLCBUaG9tYXMNCj4gPiA+ID4gPiA+ID4gPiA+ID4gTW9uamFsb24NCj4gPiA+IHdy b3RlOg0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+IDEzLzExLzIwMjAgMTU6MzEsIEp1cmFqIExpbmtl xaE6DQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiArb3B0aW9uKCdtYXhfbGNvcmVzJywgdHlwZTog J2ludGVnZXInLCB2YWx1ZTogMCwNCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICsJZGVzY3JpcHRp b246ICdtYXhpbXVtIG51bWJlciBvZiBjb3Jlcy90aHJlYWRzDQo+ID4gPiA+ID4gPiA+ID4gPiA+ ID4gPiArc3VwcG9ydGVkIGJ5DQo+ID4gPiA+ID4gPiA+IEVBTC4NCj4gPiA+ID4gPiA+ID4gPiA+ ID4gPiA+ICtTZXQgdG8gcG9zaXRpdmUgaW50ZWdlciB0byBvdmVyd3JpdGUgcGVyLWFyY2ggb3IN Cj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICtjcm9zcy1jb21waWxhdGlvbg0KPiA+ID4gPiA+ID4g PiA+ID4gZGVmYXVsdHMuIFNldCB0byAtMSB0byBkZXRlY3QgdGhlIG51bWJlciBvZiBjb3JlcyBv biB0aGUNCj4gPiA+ID4gPiA+ID4gPiA+IGJ1aWxkDQo+ID4gPiA+ID4gPiA+ID4gPiBtYWNoaW5l LicpIG9wdGlvbignbWF4X251bWFfbm9kZXMnLCB0eXBlOiAnaW50ZWdlcicsIHZhbHVlOg0KPiA+ ID4gPiA+ID4gPiA+ID4gMCwNCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICsJZGVzY3JpcHRpb246 ICdtYXhpbXVtIG51bWJlciBvZiBOVU1BIG5vZGVzDQo+ID4gPiBzdXBwb3J0ZWQNCj4gPiA+ID4g PiA+ID4gPiA+ID4gPiA+ICtieQ0KPiA+ID4gPiA+ID4gPiBFQUwuDQo+ID4gPiA+ID4gPiA+ID4g PiA+ID4gPiArU2V0IHRvIHBvc2l0aXZlIGludGVnZXIgdG8gb3ZlcndyaXRlIHBlci1hcmNoIG9y DQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiArY3Jvc3MtY29tcGlsYXRpb24gZGVmYXVsdHMuIFNl dCB0byAtMSB0byBkZXRlY3QNCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICt0aGUgbnVtYmVyIG9m IG51bWEgbm9kZXMgb24gdGhlIGJ1aWxkIG1hY2hpbmUuJykNCj4gPiA+ID4gPiA+ID4gPiA+ID4g Pg0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+IEZpcnN0IGNvbW1lbnQ6IEkgZG9uJ3QgbGlrZSBoYXZp bmcgc28gbG9uZyBkZXNjcmlwdGlvbi4NCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiBTZWNvbmQ6IEkg ZG9uJ3QgdW5kZXJzdGFuZC4NCj4gPiA+ID4gPiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPiA+ ID4gPiA+IEl0IGlzIHNhaWQgdGhlIGRlZmF1bHQgdmFsdWUgaXMgMCBzbyBJIGV4cGVjdCBpdA0K PiA+ID4gPiA+ID4gPiA+ID4gPiA+IG1lYW5zIGF1dG9tYXRpYw0KPiA+ID4gPiA+IGRldGVjdGlv bi4NCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiBCdXQgbGF0ZXIgaXQgaXMgc2FpZCAtMSBpcyBmb3Ig ZGV0ZWN0aW9uLiBTbyA/DQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ID4gPiA+ ID4gWmVybyBpcyBmb3IgdGhlICJwZXItYXJjaCBvciBjcm9zcy1jb21waWxhdGlvbiBkZWZhdWx0 Ii4NCj4gPiA+ID4gPiA+ID4gPiA+ID4gVGhpcyB3YXMgZGlzY3Vzc2VkIHF1aXRlIGEgYml0IGlu IHByZXZpb3VzIHZlcnNpb25zDQo+ID4gPiA+ID4gPiA+ID4gPiA+IGFuZCB0aGlzIHdhcyB0ZSBi ZXN0IGNvbXByb21pc2Ugd2UgY291bGQgY29tZSB1cCB3aXRoLg0KPiA+ID4gPiA+ID4gPiA+ID4g PiBIYXZpbmcgYSBkZWZhdWx0IG9mIGF1dG8tZGV0ZWN0IGlzIGRlZmluaXRlbHkgbm90DQo+ID4g PiA+ID4gPiA+ID4gPiA+IHNvbWV0aGluZyBJIHRoaW5rIHdlIHNob3VsZCBnbyB3aXRoIC0ganVz dCB0aGlua2luZyBvZg0KPiA+ID4gPiA+ID4gPiA+ID4gPiBhbGwgdGhlIGJ1aWxkIENJIGpvYnMg cnVubmluZyBvbg0KPiA+ID4gPiA+ID4gPiA+ID4gPiAyIG9yIDQgY29yZSBWTXMhIEhvd2V2ZXIs IEp1cmFqIHJlYWxseSBmZWx0IHRoZXJlIHdhcw0KPiA+ID4gPiA+ID4gPiA+ID4gPiB2YWx1ZSBp biBoYXZpbmcgYXV0by1kZXRlY3Rpb24sIHNvIGl0J3Mgc2V0IGFzIGEgLTENCj4gPiA+ID4gPiA+ ID4gPiA+ID4gdmFsdWUsIHdoaWNoIEknbQ0KPiA+ID4gb2sgd2l0aC4NCj4gPiA+ID4gPiA+ID4g PiA+DQo+ID4gPiA+ID4gPiA+ID4gPiBUaGUgcHJvYmxlbSBpcyB0aGF0IEkgZG9uJ3QgdW5kZXJz dGFuZCB3aGF0IDAgbWVhbnMuDQo+ID4gPiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPiA+DQo+ ID4gPiA+ID4gPiA+ID4gVGhlcmUgYXJlIHRocmVlIHBpZWNlcyBvZiBpbmZvcm1hdGlvbiB3aGlj aCB3ZSBuZWVkIHRvIGNvbnZleToNCj4gPiA+ID4gPiA+ID4gPiAxLiBUaGUgZGVmYXVsdCB2YWx1 ZSAoMCkgaW5kaWNhdGVzIHRoYXQgcGVyLWFyY2ggb3INCj4gPiA+ID4gPiA+ID4gPiBjcm9zcy1j b21waWxhdGlvbiBkZWZhdWx0cw0KPiA+ID4gPiA+ID4gPiB3aWxsIGJlIHVzZWQuDQo+ID4gPiA+ ID4gPiA+ID4gMi4gUG9zaXRpdmUgaW50ZWdlciB2YWx1ZXMgd2lsbCBiZSB1c2VkIGluc3RlYWQg b2YgdGhlc2UgZGVmYXVsdHMuDQo+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+IFdoZXJlIHRo ZXNlIHBvc2l0aXZlIHZhbHVlcyBjb21lIGZyb20/DQo+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4g Pg0KPiA+ID4gPiA+ID4gRnJvbSB0aGUgdXNlciAtIHRoZXkgd2lsbCBoYXZlIHRoZSBvcHRpb24g dG8gc2V0IGl0IHRvDQo+ID4gPiA+ID4gPiB3aGF0ZXZlciB0aGUgbGlrZSBpZiB0aGV5DQo+ID4g PiA+ID4gZG9uJ3Qgd2FudCB0byB1c2UgZGVmYXVsdHMuDQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ ID4gPiA+IDMuIERldGVjdGVkIHZhbHVlcyB3aWxsIGJlIHVzZWQgZm9yIG5hdGl2ZSBidWlsZCB3 aGVuIHRoZSB2YWx1ZSBpcw0KPiAtMS4NCj4gPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ID4gV2h5 IG5vdCBkZXRlY3QgZm9yIGFueSBuYXRpdmUgYnVpbGQgc2V0IHVwIHdpdGggMCAoZGVmYXVsdCk/ DQo+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gSSdsbCBsZXQgQnJ1Y2Ug ZXhwbGFpbiB0aGlzLCBidXQgSSdsbCBqdXN0IHNheSB0aGF0IHdlIHdhbnRlZA0KPiA+ID4gPiA+ ID4gdG8gbWFrZSB0aGUgZGV0ZWN0aW9uDQo+ID4gPiA+ID4gdGhlIGRlZmF1bHQgZm9yIG5hdGl2 ZSBidWlsZHMsIHNvIHdlJ3JlIGluIGFncmVlbWVudC4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+IEkg dGhpbmsgbW9zdCBvZiB1cyBhZ3JlZSB0aGF0IHRoZSBkaWZmZXJlbnQgdW5kZXJzdGFuZGluZyBv ZiB0aGUNCj4gPiA+ID4gPiB0ZXJtICJuYXRpdmUgYnVpbGQiLCBpcyB0aGUgY2F1c2Ugb2YgbXVj aCBvZiB0aGUgZGlzYWdyZWVtZW50cw0KPiA+ID4gPiA+IGFuZA0KPiA+IEFncmVlLCB0aGF0J3Mg dGhlIG1haW4gcmVhc29uLg0KPiA+DQo+ID4gPiA+ID4gcG9pbnRzIG9mIGRpc3B1dGUgb24gdGhp cyB0aHJlYWQuIEZyb20gbXkgdmlldyBwb2ludCwgdGhlIHRlcm0NCj4gIm5hdGl2ZSINCj4gPiA+ IGNhbiByZWZlciB0bzoNCj4gPiA+ID4gPg0KPiA+ID4gPiA+IDEuIHdoYXQgbWVzb24gY29uc2lk ZXJzIGEgbmF0aXZlIGJ1aWxkLCBpLmUuIG9uZSBub3QgdXNpbmcgYQ0KPiA+ID4gPiA+IGNyb3Nz LWZpbGUgMi4gYSBidWlsZCBmb3IgYSBkaWZmZXJlbnQgbWFjaGluZSBhcmNoaXRlY3R1cmUgdG8N Cj4gPiA+ID4gPiB0aGUgb25lIG9uIHRoZQ0KPiA+ID4gYnVpbGQNCj4gPiA+ID4gPiAgICBtYWNo aW5lICh0aGlzIGxhcmdlbHkgb3ZlcmxhcHMgd2l0aCAjMSwgZXhjZXB0IHRoYXQgZS5nLiAzMi1i aXQgYnVpbGQNCj4gb24NCj4gPiA+ID4gPiAgICA2NC1iaXQgbWF5IGJlIGNvbnNpZGVyZWQgYSBj cm9zcy1idWlsZCBpbiB0aGlzIGNhc2UpLg0KPiA+IFNvcnJ5LCBJIGRpZCBub3QgdW5kZXJzdGFu ZCAjMiBoZXJlLiBBcmUgeW91IHNheWluZywgbmF0aXZlICJtZWFucyIgLSAiYQ0KPiBidWlsZCBm b3IgYSBkaWZmZXJlbnQgbWFjaGluZSBhcmNoaXRlY3R1cmUgdG8gdGhlIG9uZSBvbiB0aGUgYnVp bGQgbWFjaGluZSINCj4gPg0KPiA+ID4gPiA+IDMuIGEgYnVpbGQgdGFpbG9yZWQgZXhhY3RseSBm b3IgdGhlIGJ1aWxkIG1hY2hpbmUgaXRzZWxmIGkuZS4gYm90aCBJU0EsIGFuZA0KPiA+ID4gPiA+ ICAgIHRoaW5ncyBsaWtlIGNvcmUgY291bnRzLg0KPiA+ID4gPiA+IDQuIGEgZmxhZyBwYXNzZWQg dG8gdGhlIGNvbXBpbGVyIHRvIGluZGljYXRlIHRoZSB1YXJjaCBsZXZlbCBvZiB0aGUNCj4gPiA+ ID4gPiAgICBpbnN0cnVjdGlvbiBzZXQgdG8gYmUgdXNlZCwgZS5nLiBvbiB4ODYsIEFWWDIsIEFW WC01MTIgZXRjLiwgYmFzZWQgb24NCj4gPiA+ID4gPiAgICB0aGF0IG9mIHRoZSBidWlsZCBtYWNo aW5lLg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gSGlzdG9yaWNhbGx5LCBJSVJDLCBpbiBEUERLIHRo ZSAiUlRFX01BQ0hJTkUiIHZhbHVlIHdhcw0KPiA+ID4gPiA+IG9yaWdpbmFsbHkNCj4gPiA+ID4g PiAjNCBzaW5jZSB0aGF0IHdhcyBpdCdzIHVzZSBvbiB4ODYgaW4gdGhlIGZpcnN0IHZlcnNpb25z IG9mIERQREsuDQo+ID4gPiA+ID4gV2l0aCB0aGUgbW92ZSBmcm9tIG1ha2UgdG8gbWVzb24sIHRo YXQgYXNwZWN0IHdhcyBrZXB0LCBidXQgdGhlDQo+ID4gPiA+ID4gbWVhbmluZyBvZiAjMSAoSSB0 aGluayB3ZSBjYW4gaWdub3JlICMyKSBhbHNvIGNhbWUgaW50byBwbGF5Lg0KPiA+ID4gPiA+IEZp bmFsbHksIHdoaWxlIGZvciB4ODYgYXJjaGl0ZWN0dXJlLCB0aGUgaWRlYSBvZiAjNCBzdGlsbCBo ZWxkLA0KPiA+ID4gPiA+IGZvciBBUk0gdXNlICMzDQo+ID4gPiBpcyBvZiBtYWpvciBjb25jZXJu Lg0KPiA+IFllcywgIzMgaXMgdGhlIGNvbmNlcm4uDQo+ID4NCj4gPiBBdCB0aGUgc2FtZSB0aW1l LCBJIGFtIGFsc28gaW50ZXJlc3RlZCBpbiBhdm9pZGluZyAnbmF0aXZlJyAob3IgYW55IG90aGVy DQo+IG9wdGlvbikgaGF2aW5nIGRpZmZlcmVudCBtZWFuaW5nIGZvciBkaWZmZXJlbnQgYXJjaGl0 ZWN0dXJlcy4NCj4gPiBOb3cgdGhhdCB3ZSBoYXZlIGludHJvZHVjZWQgJ3NvYycgb3B0aW9uIGZv ciBBcm0gcGxhdGZvcm1zLCB3ZSBhcmUgYWJsZQ0KPiB0byBhY2hpZXZlIHRoZSBidWlsZHMgdGhh dCB3b3VsZCBiZSBwcm9kdWNlZCBieSAjMy4NCj4gPiAnc29jJyBjb21iaW5lcyBib3RoIHRoZSAn cGxhdGZvcm0nIGFuZCAnaW5zdHJ1Y3Rpb24gc2V0JyAoYXMgeW91IGhhdmUgZGVmaW5lZA0KPiB0 aGVtIGJlbG93KS4NCj4gPg0KPiANCj4gTXkgdGhpbmtpbmcgd2FzIHRoYXQgcGxhdGZvcm0gd291 bGQgYmUgYSBzeW5vbnltIGZvciAic29jIiBmb3IgU09DcyAtIGl0DQo+IHdvdWxkIGp1c3Qgc2Vl bSB3ZWlyZCB0byByZWZlciB0byB4ODYgb3IgUFBDIHNlcnZlciBzeXN0ZW1zIGFzIHNvYydzLCBz byBJDQo+IHRob3VnaHQgInBsYXRmb3JtIiBhIG1vcmUgbmV1dHJhbCB0ZXJtLg0KSSBhbSBmaW5l IHdpdGggdXNpbmcgJ3BsYXRmb3JtJyBmb3IgJ3NvYycuDQoNCj4gQWxzbywgYXMgSSBkZWZpbmVk IGl0IGFib3ZlLCB0aGUgaWRlYSBvZiAicGxhdGZvcm0iIHdvdWxkIGFsd2F5cyBlbmNvbXBhc3MN Cj4gdGhlICJpbnN0cnVjdGlvbiBzZXQiIG9wdGlvbiB0b28sIHVubGVzcyB0aGUgdXNlciBleHBs aWNpdGx5IG92ZXJyb2RlIGl0IC0gaGVuY2UNCj4gdGhlICJhdXRvIiBkZWZhdWx0IHZhbHVlLg0K T2suDQoNCj4gDQo+IC9CcnVjZQ0K