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 2706DA04DD; Fri, 20 Nov 2020 05:33:31 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id D2564F90; Fri, 20 Nov 2020 05:33:28 +0100 (CET) Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-eopbgr60071.outbound.protection.outlook.com [40.107.6.71]) by dpdk.org (Postfix) with ESMTP id 429612AB for ; Fri, 20 Nov 2020 05:33:27 +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=kwM4867NteANUm6Ov5zswrIDmES/YudkzFUcfPcsLDo=; b=Gp2vm9lh+zx+bXVBGY/fzXJcjFGv3UhOak5hYOR6A/sPh+Z6lPSDl7sI9lhmfCTgMnjg20vo3Ss2gsDyLSfE3xtKIj3uSo0NrbMCLeo/wqwxwo+5AMR2MpgRG//r+c+eOCMLLSvxdo55Ghbr8C4YYvEDGPI7bOkqTib/cNec2cQ= Received: from AM6P194CA0047.EURP194.PROD.OUTLOOK.COM (2603:10a6:209:84::24) by AM6PR08MB3926.eurprd08.prod.outlook.com (2603:10a6:20b:a7::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3589.20; Fri, 20 Nov 2020 04:33:24 +0000 Received: from VE1EUR03FT027.eop-EUR03.prod.protection.outlook.com (2603:10a6:209:84:cafe::6d) by AM6P194CA0047.outlook.office365.com (2603:10a6:209:84::24) 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 04:33:24 +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 VE1EUR03FT027.mail.protection.outlook.com (10.152.18.154) 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 04:33:23 +0000 Received: ("Tessian outbound 13ed5f5344c0:v71"); Fri, 20 Nov 2020 04:33:23 +0000 X-CR-MTA-TID: 64aa7808 Received: from df082244080b.4 by 64aa7808-outbound-1.mta.getcheckrecipient.com id C4244439-C441-4194-A7FF-28916E419652.1; Fri, 20 Nov 2020 04:33:18 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id df082244080b.4 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Fri, 20 Nov 2020 04:33:18 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=EW7tllQXFfMJQK69C+kwacQg+0MSwfbfhe6AI99zV4WV5xtvOkSeOJUYEag9VlPumDWnFjwcoZ/E5kZjvqfcOEXX8mMa5lruPwzedDcSGCWVNu+VRKT2pbM2UqV9DEp1K+RoUIWMuXPDyM+swJAJhKY8l64+3Vh2OVjdBdkVNxJ8Ec0wkM1q5UKjLvxq1O8mrMCl+pbwPNVK4ULXPn4kzLgPT+wZXVlefw2WwjIGtHq5NwHyS9KQMMvOMYuquJAYDlIbgnQtKeG5TgqyexYj7ldqZotK8fwSED9wYJKCWBQArvSuSaILoMdHEvJjQ3BKu+9FUCLaZCFWoTR7/EgqZg== 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=kwM4867NteANUm6Ov5zswrIDmES/YudkzFUcfPcsLDo=; b=nr7q++87xHyOvlanozVC8SeX4q1AwbttDSE+zi4snJukeiBChVHdHuboBCvpsZQOIbw+fU6c7otVFeJIg3OMIfHDyTzQbthZSKxyfurX6LXZ58BqV3TCWTNdhZexCGr/ZZT7s7gth8sSKG5dMisJG/8kY3DiPYHP1xi/z9YPpdwlVv3ZB1TdSYxgJca/wq/Zz3+p0s0Z0QKlgnlV0num4m6wAaCNoeU5OgCVa7JUZvceCtHtohhXXI1Nl/4RjyqrUu6huWBuIx316V/fRlAwSR5IdcE/ctk5kS0XjSEz+fl3knUSUfct1Zkuszny9HTCwgSUltrqfAyKEfXnnsOlKQ== 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=kwM4867NteANUm6Ov5zswrIDmES/YudkzFUcfPcsLDo=; b=Gp2vm9lh+zx+bXVBGY/fzXJcjFGv3UhOak5hYOR6A/sPh+Z6lPSDl7sI9lhmfCTgMnjg20vo3Ss2gsDyLSfE3xtKIj3uSo0NrbMCLeo/wqwxwo+5AMR2MpgRG//r+c+eOCMLLSvxdo55Ghbr8C4YYvEDGPI7bOkqTib/cNec2cQ= Received: from DBAPR08MB5814.eurprd08.prod.outlook.com (2603:10a6:10:1b1::6) by DBBPR08MB4629.eurprd08.prod.outlook.com (2603:10a6:10:f4::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3589.22; Fri, 20 Nov 2020 04:33:13 +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.024; Fri, 20 Nov 2020 04:33:13 +0000 From: Honnappa Nagarahalli To: Bruce Richardson , =?utf-8?B?SnVyYWogTGlua2XFoQ==?= CC: "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: AQHWvm5FYCfUzOaFZk2S5w4c9p5b1qnPex2AgAAO0YCAAOKEUA== Date: Fri, 20 Nov 2020 04:33:12 +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> In-Reply-To: <20201119145101.GA1835@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: 638AFF588C2CE7438A921E001DF3927B.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: [217.140.111.135] x-ms-publictraffictype: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: 07bcc444-56be-40e8-3273-08d88d0d6ad6 x-ms-traffictypediagnostic: DBBPR08MB4629:|AM6PR08MB3926: 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: WLv2fheavPB5+ZzO3DQKAci/FjF+wMS1ntYvr59nin4TAJaM+6GTwz6c3o01n1gayGUjoqrHhXm32y3BgpQjAgP4CE/teQhzhgfFtIxMUjfgQFSLCIf5moa20oPeem1h2zHxpGBPyzsLce9x0EBbvDVN4sC+4UUmIMu8R0Md8UvqLnOQ9/lyEIzNH0E3bbDRRWiXL5sTN94l/OVtqZy842MIbD57LtYR/z8c7/UePHl2ZT7bh/0mrcg+92FMkuLZletCV1SaYU/LjzoV5K9NZ6zobDxLnjD0UG+0vA5BmnYk+y1lGnFIzAy7n6uzZjHOdIC3oRP23Tt0zvrzO0Obhg== 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)(39850400004)(366004)(396003)(136003)(376002)(346002)(66476007)(66946007)(7696005)(66446008)(66556008)(55016002)(6506007)(83380400001)(64756008)(52536014)(76116006)(316002)(8676002)(2906002)(4326008)(86362001)(33656002)(8936002)(26005)(110136005)(186003)(9686003)(478600001)(5660300002)(71200400001)(54906003); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: bQlLPFu0YSia4wkj18wd4w3+dd29/tIReFzr0pqtx8CPgz8sr7GMf8dgGC3mu5d+K8UNoTh0PCUT84jutYHfsKq8TZy39gxd3M+VVLJLRGs6sWSWZaLC0Y0qfe09GOxtGa0rLE37fJQ0ppz2vBjSo/ZT3ZhTy7Y6gccj2utQUx2WedzU87E5X4D5+OlBIbSmtNvn0DFZRS1LEt4xCfBO3FHPi1RDdVG953eUpFvMdV85qVgx32YGKHp9V4pKP3LExwQOyiX4+8S2Bdb8XkzZ/Vg93v8eL8yMTHoHaepZX9xBgeUCAAPJY1fITkkSEwk7GeHst20GYe7viXWjYRz6jq+J+/cv99i6v42ugJwpoyac+8bbsmOSqvQ67C89Gwyt8PdDtrbo7rlVCZOQUL+/waF1jpOP6F/xllcYrh08nR8z7ugpPPYF/W8KJaYnVHEaOvTW66ewDctuPka2ueBJxBNn44tkV8taGJR0FbD2UxjqX7d3LNCf9JEQB/S6JW/y/FvvR5THo+lgmVZRpy+vRE2wNK2NGlQNPaloPKl+2DAziv4D0Pdr3FFT8zNA5GVhUf+9wSwaEwKIplHzV6Gqjcs+3YAH1MFpuXOurStHzbjGmIgYqDzh1NBgTHigECVfiPtjsd2bCBBrZmVMSQGeTB/KAID6l8tqAoSM/+d7SiASCYuOEhSqV7EiKwjXz2VZyEt0rQ5uRaeNPmDT4XcleiXkHzCztB60bKy7c/9KflneAX0ZW4I8z81ao9ko2Q/uwW6EE9L/j3Zo4c1KsaBcQuuLfxSVcfhZO4bLpJEikR9CDX9YauUczflu6nagdaTIgs0tjW+CYkkl4B4Z69azOoIpENJ+tQ5QkJoFb/y9ypYBfkNmMJl200kp3RQBkbMj6IVmgFgzovGjPo/O970m6A== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB4629 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: VE1EUR03FT027.eop-EUR03.prod.protection.outlook.com X-MS-Office365-Filtering-Correlation-Id-Prvs: 83109432-6b05-4724-fc1a-08d88d0d6480 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: HU7Vka6dvOmUbVR+KlzZwhA31rIykNhKgMPLBxOVjLsBhfpFaM9bd3Wv/eqP/qK7q8klpIP2OL4wpY6ck27X15wCav0Pk9wj7EN1kXi/Ui2oN4DsL9NpVhJwPZaBn0fEPq/JMRwikqaDGv/2ZsZyT1lCKG2oTHjqgxFMN04wKNT2fAhmL49F/GR49sJy0SErjCqLcr4HzOyLlDVoFsZlbgDRrO8vHbZ7ygv51JXCHLkVkkEsqkJfXJ7LlgHH8jLfLGaH+ptl5B4jDeCWlwMYe2EmhmpI2wwGuD0m2CsoBfx0p1Ja7Ub2iA+RHqChN3okQiPtMVEIAU2YK9a6knmXJmlM2wNdzLAB8wEE9x84OBCxa67/DtnnXzZIlb2pZ6LK3zTHWHwc5aaQK+9hSuKAlw== 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)(346002)(376002)(396003)(136003)(39850400004)(46966005)(5660300002)(33656002)(2906002)(86362001)(8936002)(8676002)(83380400001)(4326008)(70586007)(81166007)(52536014)(6506007)(356005)(82740400003)(110136005)(7696005)(54906003)(55016002)(316002)(70206006)(186003)(478600001)(336012)(26005)(9686003)(82310400003)(47076004); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Nov 2020 04:33:23.8149 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 07bcc444-56be-40e8-3273-08d88d0d6ad6 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: VE1EUR03FT027.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6PR08MB3926 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+DQoNCj4gPiA+ID4gPiAxOC8xMS8yMDIwIDE1OjE5LCBKdXJhaiBMaW5rZcWhOg0KPiA+ ID4gPiA+ID4gRnJvbTogVGhvbWFzIE1vbmphbG9uIDx0aG9tYXNAbW9uamFsb24ubmV0Pg0KPiA+ ID4gPiA+ID4gPiAxNi8xMS8yMDIwIDEwOjEzLCBCcnVjZSBSaWNoYXJkc29uOg0KPiA+ID4gPiA+ ID4gPiA+IE9uIE1vbiwgTm92IDE2LCAyMDIwIGF0IDA4OjI0OjQ4QU0gKzAxMDAsIFRob21hcyBN b25qYWxvbg0KPiB3cm90ZToNCj4gPiA+ID4gPiA+ID4gPiA+IDEzLzExLzIwMjAgMTU6MzEsIEp1 cmFqIExpbmtlxaE6DQo+ID4gPiA+ID4gPiA+ID4gPiA+ICtvcHRpb24oJ21heF9sY29yZXMnLCB0 eXBlOiAnaW50ZWdlcicsIHZhbHVlOiAwLA0KPiA+ID4gPiA+ID4gPiA+ID4gPiArCWRlc2NyaXB0 aW9uOiAnbWF4aW11bSBudW1iZXIgb2YgY29yZXMvdGhyZWFkcw0KPiA+ID4gPiA+ID4gPiA+ID4g PiArc3VwcG9ydGVkIGJ5DQo+ID4gPiA+ID4gRUFMLg0KPiA+ID4gPiA+ID4gPiA+ID4gPiArU2V0 IHRvIHBvc2l0aXZlIGludGVnZXIgdG8gb3ZlcndyaXRlIHBlci1hcmNoIG9yDQo+ID4gPiA+ID4g PiA+ID4gPiA+ICtjcm9zcy1jb21waWxhdGlvbg0KPiA+ID4gPiA+ID4gPiBkZWZhdWx0cy4gU2V0 IHRvIC0xIHRvIGRldGVjdCB0aGUgbnVtYmVyIG9mIGNvcmVzIG9uIHRoZQ0KPiA+ID4gPiA+ID4g PiBidWlsZA0KPiA+ID4gPiA+ID4gPiBtYWNoaW5lLicpIG9wdGlvbignbWF4X251bWFfbm9kZXMn LCB0eXBlOiAnaW50ZWdlcicsIHZhbHVlOg0KPiA+ID4gPiA+ID4gPiAwLA0KPiA+ID4gPiA+ID4g PiA+ID4gPiArCWRlc2NyaXB0aW9uOiAnbWF4aW11bSBudW1iZXIgb2YgTlVNQSBub2Rlcw0KPiBz dXBwb3J0ZWQNCj4gPiA+ID4gPiA+ID4gPiA+ID4gK2J5DQo+ID4gPiA+ID4gRUFMLg0KPiA+ID4g PiA+ID4gPiA+ID4gPiArU2V0IHRvIHBvc2l0aXZlIGludGVnZXIgdG8gb3ZlcndyaXRlIHBlci1h cmNoIG9yDQo+ID4gPiA+ID4gPiA+ID4gPiA+ICtjcm9zcy1jb21waWxhdGlvbiBkZWZhdWx0cy4g U2V0IHRvIC0xIHRvIGRldGVjdCB0aGUNCj4gPiA+ID4gPiA+ID4gPiA+ID4gK251bWJlciBvZiBu dW1hIG5vZGVzIG9uIHRoZSBidWlsZCBtYWNoaW5lLicpDQo+ID4gPiA+ID4gPiA+ID4gPg0KPiA+ ID4gPiA+ID4gPiA+ID4gRmlyc3QgY29tbWVudDogSSBkb24ndCBsaWtlIGhhdmluZyBzbyBsb25n IGRlc2NyaXB0aW9uLg0KPiA+ID4gPiA+ID4gPiA+ID4gU2Vjb25kOiBJIGRvbid0IHVuZGVyc3Rh bmQuDQo+ID4gPiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPiA+ID4gSXQgaXMgc2FpZCB0aGUg ZGVmYXVsdCB2YWx1ZSBpcyAwIHNvIEkgZXhwZWN0IGl0IG1lYW5zDQo+ID4gPiA+ID4gPiA+ID4g PiBhdXRvbWF0aWMNCj4gPiA+IGRldGVjdGlvbi4NCj4gPiA+ID4gPiA+ID4gPiA+IEJ1dCBsYXRl ciBpdCBpcyBzYWlkIC0xIGlzIGZvciBkZXRlY3Rpb24uIFNvID8NCj4gPiA+ID4gPiA+ID4gPiA+ DQo+ID4gPiA+ID4gPiA+ID4gWmVybyBpcyBmb3IgdGhlICJwZXItYXJjaCBvciBjcm9zcy1jb21w aWxhdGlvbiBkZWZhdWx0Ii4NCj4gPiA+ID4gPiA+ID4gPiBUaGlzIHdhcyBkaXNjdXNzZWQgcXVp dGUgYSBiaXQgaW4gcHJldmlvdXMgdmVyc2lvbnMgYW5kDQo+ID4gPiA+ID4gPiA+ID4gdGhpcyB3 YXMgdGUgYmVzdCBjb21wcm9taXNlIHdlIGNvdWxkIGNvbWUgdXAgd2l0aC4gSGF2aW5nDQo+ID4g PiA+ID4gPiA+ID4gYSBkZWZhdWx0IG9mIGF1dG8tZGV0ZWN0IGlzIGRlZmluaXRlbHkgbm90IHNv bWV0aGluZyBJDQo+ID4gPiA+ID4gPiA+ID4gdGhpbmsgd2Ugc2hvdWxkIGdvIHdpdGggLSBqdXN0 IHRoaW5raW5nIG9mIGFsbCB0aGUgYnVpbGQNCj4gPiA+ID4gPiA+ID4gPiBDSSBqb2JzIHJ1bm5p bmcgb24NCj4gPiA+ID4gPiA+ID4gPiAyIG9yIDQgY29yZSBWTXMhIEhvd2V2ZXIsIEp1cmFqIHJl YWxseSBmZWx0IHRoZXJlIHdhcw0KPiA+ID4gPiA+ID4gPiA+IHZhbHVlIGluIGhhdmluZyBhdXRv LWRldGVjdGlvbiwgc28gaXQncyBzZXQgYXMgYSAtMSB2YWx1ZSwgd2hpY2ggSSdtDQo+IG9rIHdp dGguDQo+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+IFRoZSBwcm9ibGVtIGlzIHRoYXQgSSBk b24ndCB1bmRlcnN0YW5kIHdoYXQgMCBtZWFucy4NCj4gPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ DQo+ID4gPiA+ID4gPiBUaGVyZSBhcmUgdGhyZWUgcGllY2VzIG9mIGluZm9ybWF0aW9uIHdoaWNo IHdlIG5lZWQgdG8gY29udmV5Og0KPiA+ID4gPiA+ID4gMS4gVGhlIGRlZmF1bHQgdmFsdWUgKDAp IGluZGljYXRlcyB0aGF0IHBlci1hcmNoIG9yDQo+ID4gPiA+ID4gPiBjcm9zcy1jb21waWxhdGlv biBkZWZhdWx0cw0KPiA+ID4gPiA+IHdpbGwgYmUgdXNlZC4NCj4gPiA+ID4gPiA+IDIuIFBvc2l0 aXZlIGludGVnZXIgdmFsdWVzIHdpbGwgYmUgdXNlZCBpbnN0ZWFkIG9mIHRoZXNlIGRlZmF1bHRz Lg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gV2hlcmUgdGhlc2UgcG9zaXRpdmUgdmFsdWVzIGNvbWUg ZnJvbT8NCj4gPiA+ID4gPg0KPiA+ID4gPg0KPiA+ID4gPiBGcm9tIHRoZSB1c2VyIC0gdGhleSB3 aWxsIGhhdmUgdGhlIG9wdGlvbiB0byBzZXQgaXQgdG8gd2hhdGV2ZXINCj4gPiA+ID4gdGhlIGxp a2UgaWYgdGhleQ0KPiA+ID4gZG9uJ3Qgd2FudCB0byB1c2UgZGVmYXVsdHMuDQo+ID4gPiA+DQo+ ID4gPiA+ID4gPiAzLiBEZXRlY3RlZCB2YWx1ZXMgd2lsbCBiZSB1c2VkIGZvciBuYXRpdmUgYnVp bGQgd2hlbiB0aGUgdmFsdWUgaXMgLTEuDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiBXaHkgbm90IGRl dGVjdCBmb3IgYW55IG5hdGl2ZSBidWlsZCBzZXQgdXAgd2l0aCAwIChkZWZhdWx0KT8NCj4gPiA+ ID4gPg0KPiA+ID4gPg0KPiA+ID4gPiBJJ2xsIGxldCBCcnVjZSBleHBsYWluIHRoaXMsIGJ1dCBJ J2xsIGp1c3Qgc2F5IHRoYXQgd2Ugd2FudGVkIHRvDQo+ID4gPiA+IG1ha2UgdGhlIGRldGVjdGlv bg0KPiA+ID4gdGhlIGRlZmF1bHQgZm9yIG5hdGl2ZSBidWlsZHMsIHNvIHdlJ3JlIGluIGFncmVl bWVudC4NCj4gPiA+DQo+ID4gPiBJIHRoaW5rIG1vc3Qgb2YgdXMgYWdyZWUgdGhhdCB0aGUgZGlm ZmVyZW50IHVuZGVyc3RhbmRpbmcgb2YgdGhlDQo+ID4gPiB0ZXJtICJuYXRpdmUgYnVpbGQiLCBp cyB0aGUgY2F1c2Ugb2YgbXVjaCBvZiB0aGUgZGlzYWdyZWVtZW50cyBhbmQNCkFncmVlLCB0aGF0 J3MgdGhlIG1haW4gcmVhc29uLg0KDQo+ID4gPiBwb2ludHMgb2YgZGlzcHV0ZSBvbiB0aGlzIHRo cmVhZC4gRnJvbSBteSB2aWV3IHBvaW50LCB0aGUgdGVybSAibmF0aXZlIg0KPiBjYW4gcmVmZXIg dG86DQo+ID4gPg0KPiA+ID4gMS4gd2hhdCBtZXNvbiBjb25zaWRlcnMgYSBuYXRpdmUgYnVpbGQs IGkuZS4gb25lIG5vdCB1c2luZyBhDQo+ID4gPiBjcm9zcy1maWxlIDIuIGEgYnVpbGQgZm9yIGEg ZGlmZmVyZW50IG1hY2hpbmUgYXJjaGl0ZWN0dXJlIHRvIHRoZSBvbmUgb24gdGhlDQo+IGJ1aWxk DQo+ID4gPiAgICBtYWNoaW5lICh0aGlzIGxhcmdlbHkgb3ZlcmxhcHMgd2l0aCAjMSwgZXhjZXB0 IHRoYXQgZS5nLiAzMi1iaXQgYnVpbGQgb24NCj4gPiA+ICAgIDY0LWJpdCBtYXkgYmUgY29uc2lk ZXJlZCBhIGNyb3NzLWJ1aWxkIGluIHRoaXMgY2FzZSkuDQpTb3JyeSwgSSBkaWQgbm90IHVuZGVy c3RhbmQgIzIgaGVyZS4gQXJlIHlvdSBzYXlpbmcsIG5hdGl2ZSAibWVhbnMiIC0gImEgYnVpbGQg Zm9yIGEgZGlmZmVyZW50IG1hY2hpbmUgYXJjaGl0ZWN0dXJlIHRvIHRoZSBvbmUgb24gdGhlIGJ1 aWxkIG1hY2hpbmUiDQoNCj4gPiA+IDMuIGEgYnVpbGQgdGFpbG9yZWQgZXhhY3RseSBmb3IgdGhl IGJ1aWxkIG1hY2hpbmUgaXRzZWxmIGkuZS4gYm90aCBJU0EsIGFuZA0KPiA+ID4gICAgdGhpbmdz IGxpa2UgY29yZSBjb3VudHMuDQo+ID4gPiA0LiBhIGZsYWcgcGFzc2VkIHRvIHRoZSBjb21waWxl ciB0byBpbmRpY2F0ZSB0aGUgdWFyY2ggbGV2ZWwgb2YgdGhlDQo+ID4gPiAgICBpbnN0cnVjdGlv biBzZXQgdG8gYmUgdXNlZCwgZS5nLiBvbiB4ODYsIEFWWDIsIEFWWC01MTIgZXRjLiwgYmFzZWQg b24NCj4gPiA+ICAgIHRoYXQgb2YgdGhlIGJ1aWxkIG1hY2hpbmUuDQo+ID4gPg0KPiA+ID4gSGlz dG9yaWNhbGx5LCBJSVJDLCBpbiBEUERLIHRoZSAiUlRFX01BQ0hJTkUiIHZhbHVlIHdhcyBvcmln aW5hbGx5DQo+ID4gPiAjNCBzaW5jZSB0aGF0IHdhcyBpdCdzIHVzZSBvbiB4ODYgaW4gdGhlIGZp cnN0IHZlcnNpb25zIG9mIERQREsuDQo+ID4gPiBXaXRoIHRoZSBtb3ZlIGZyb20gbWFrZSB0byBt ZXNvbiwgdGhhdCBhc3BlY3Qgd2FzIGtlcHQsIGJ1dCB0aGUNCj4gPiA+IG1lYW5pbmcgb2YgIzEg KEkgdGhpbmsgd2UgY2FuIGlnbm9yZSAjMikgYWxzbyBjYW1lIGludG8gcGxheS4NCj4gPiA+IEZp bmFsbHksIHdoaWxlIGZvciB4ODYgYXJjaGl0ZWN0dXJlLCB0aGUgaWRlYSBvZiAjNCBzdGlsbCBo ZWxkLCBmb3IgQVJNIHVzZSAjMw0KPiBpcyBvZiBtYWpvciBjb25jZXJuLg0KWWVzLCAjMyBpcyB0 aGUgY29uY2Vybi4NCg0KQXQgdGhlIHNhbWUgdGltZSwgSSBhbSBhbHNvIGludGVyZXN0ZWQgaW4g YXZvaWRpbmcgJ25hdGl2ZScgKG9yIGFueSBvdGhlciBvcHRpb24pIGhhdmluZyBkaWZmZXJlbnQg bWVhbmluZyBmb3IgZGlmZmVyZW50IGFyY2hpdGVjdHVyZXMuDQpOb3cgdGhhdCB3ZSBoYXZlIGlu dHJvZHVjZWQgJ3NvYycgb3B0aW9uIGZvciBBcm0gcGxhdGZvcm1zLCB3ZSBhcmUgYWJsZSB0byBh Y2hpZXZlIHRoZSBidWlsZHMgdGhhdCB3b3VsZCBiZSBwcm9kdWNlZCBieSAjMy4NCidzb2MnIGNv bWJpbmVzIGJvdGggdGhlICdwbGF0Zm9ybScgYW5kICdpbnN0cnVjdGlvbiBzZXQnIChhcyB5b3Ug aGF2ZSBkZWZpbmVkIHRoZW0gYmVsb3cpLg0KDQoNCj4gPiA+DQo+ID4gPiBJcyB0aGlzIGEgZmFp ciBzdW1tYXJ5Pw0KPiA+ID4NCj4gPiA+IEJhc2VkIG9uIHRoaXMsIG15IHRoaW5raW5nIGlzIHRo YXQgdGhlIGN1cnJlbnQgIm1hY2hpbmUiIHZhbHVlDQo+ID4gPiByZWFsbHkgbmVlZHMgdG8gYmUg ZWl0aGVyIHJlbmFtZWQgb3Igc3BsaXQgaW50byB0d28uIFdlIG5lZWQgdG8NCj4gPiA+IHNlcGFy YXRlIG91dCB0aGUgaWRlYSBvZiB0aGUgInBsYXRmb3JtIiAoYXBvbG9naWVzIGlmIHRoaXMgaXMg bm90DQo+ID4gPiB0aGUgcmlnaHQgdGVybSksIGZyb20gdGhlICJpbnN0cnVjdGlvbiBzZXQiLyJ1 YXJjaCIgdG8gbWFrZSBpdCBjbGVhciB3aGF0DQo+IHRoZSB2YWx1ZSByZWZlcnMgdG8uIFRoZSBk ZWZhdWx0ICJwbGF0Zm9ybSINCj4gPiA+IHZhbHVlIHNob3VsZCBwcm9iYWJseSBiZSAiZ2VuZXJp YyIsIGFuZCB0aGUgZGVmYXVsdCAiaW5zdHJ1Y3Rpb24NCj4gPiA+IHNldCIgc2hvdWxkIGJlICJk ZWZhdWx0Iiwgd2hpY2ggbWVhbnMgaXQncyBzZXQgYnkgdGhlICJwbGF0Zm9ybSIgdmFsdWUuDQo+ ID4gPg0KPiA+ID4gVGhpcyBJIGJlbGlldmUgc2hvdWxkIGFsbG93IHRoZSBmbGV4aWJpbGl0eSB3 ZSBuZWVkLCBpLmUuIHRvIHR1bmUgdG8NCj4gPiA+IHRoZSBuYXRpdmUgbWFjaGluZSAoY2FzZSAj MykgYWJvdmUsIGFkanVzdCB0aGUgcGxhdGZvcm0gdG8gIm5hdGl2ZSIsDQo+ID4gPiB3aGlsZSB0 byBnZXQgYmVoYXZpb3VyICM0LCBhbmQgb25seSBqdXN0IHRoZSBJU0EgbGV2ZWwsIGJ1dCBrZWVw DQo+ID4gPiBnZW5lcmljIGluIHRlcm1zIG9mIG90aGVyIHZhbHVlcywgYWRqdXN0IHRoZSAiaW5z dHJ1Y3Rpb24gc2V0Ig0KPiA+ID4gdmFsdWUuIEluIG90aGVyIHdvcmRzLCBmb3IgeDg2IHRoZSAi bWFjaGluZSIgdmFsdWUgYXMgdXNlZCBiZWNvbWVzDQo+ID4gPiB0aGUgImluc3RydWN0aW9uIHNl dCIgb25lLCB3aGlsZSBmb3IgQVJNIChpZiBJIHVuZGVyc3RhbmQgdGhlDQo+IHJlcXVpcmVtZW50 cyBjb3JyZWN0bHkpIHRoZSAibWFjaGluZSIgdmFsdWUgYmVjb21lcyB0aGUgInBsYXRmb3JtIiBv bmUuDQo+ID4gPg0KPiA+ID4gVGhvdWdodHMgb24gdGhpcz8NCj4gPiA+DQo+ID4gPiAvQnJ1Y2UN Cj4gPg0KPiA+IEkgbGlrZSB3aGVyZSB0aGlzIGlzIGhlYWRpbmcuDQo+ID4gVXNpbmcgYSBuZXcg b3B0aW9uIHRvIHNldCB0aGUgcGxhdGZvcm0vYnVpbGQgdHlwZSB3aWxsIHJlbW92ZSBhbGwgdGhl DQo+IGNvbmZ1c2lvbiwgSSB0aGluay4NCj4gPiBUaGVuIHRoZSAnbWFjaGluZScgb3B0aW9uIHdp bGwganVzdCBzZXQgdGhlIG1hY2hpbmUgYXJncyAoYW5kDQo+IFJURV9NQUNISU5FLCBidXQgdGhh dCBkb2Vzbid0IGRvIGFueXRoaW5nIGFzIGZhciBhcyBJIGNhbiB0ZWxsKSBhbmQgaXQnbGwgd29y aw0KPiBqdXN0IGxpa2UgJ21heF9sY29yZXMnIGFuZCAnbWF4X251bWFfbm9kZXMnIGRvIC0gc2V0 IGp1c3QgdGhhdCBvbmUgdGhpbmcuIEJ1dA0KPiBJIGRvbid0IGxpa2UgdXNpbmcgdGhlIHZhbHVl ICdkZWZhdWx0JyB0byBtZWFuICdzZXQgYnkgb3RoZXIgb3B0aW9uJyAoaXQncyBtb3JlDQo+ICdp Z25vcmUgdGhpcycgdGhhbiAnZGVmYXVsdCcpLiBJIGxpa2UgJ2F1dG8nIG9yIHNvbWV0aGluZyBz aW1pbGFyIG1vcmUuDQo+IA0KPiBJJ20gb2sgd2l0aCAiYXV0byIgaW5zdGVhZCBvZiAiZGVmYXVs dCIuIElmIG1heF9sY29yZXMgYW5kIG1heF9udW1hX25vZGVzDQo+IHN0aWNrIGFyb3VuZCBhcyBv cHRpb25zLCBJJ2QgZXZlbiBzdWdnZXN0IGNoYW5naW5nIHRoZW0gdG8gc3RyaW5nIHR5cGUgc28g dGhhdA0KPiB3ZSBjYW4gdXNlICJhdXRvIiBhcyBhIGRlZmF1bHQgdmFsdWUgdGhlcmUgdG9vLg0K PiANCj4gSSBhY3R1YWxseSB0aGluayB0b28gdGhhdCB0byBhdm9pZCBhbnkgY29uZnVzaW9uIHdp dGggd2hhdCB3ZW50IGJlZm9yZSwgd2UNCj4gc2hvdWxkIHJlbW92ZSB0aGUgIm1hY2hpbmUiIG9w dGlvbiBlbnRpcmVseSBhbmQgcmVwbGFjZSBpdCB3aXRoIHRoZQ0KPiAicGxhdGZvcm0iIGFuZCAi SVNBIiAob3Igc3VpdGFibGUgbmFtZSwgbWF5YmUgIm1hcmNoX2ZsYWciPz8pIG9wdGlvbnMuIEkn ZA0KPiBsaWtlIHRvIHJlbW92ZSBhbnkgZXhwZWN0YXRpb25zIG9mIGJlaGF2aW91ciBzaW1pbGFy IHRvIHdoYXQgd2VudCBiZWZvcmUsDQo+IG90aGVyd2lzZSB3ZSdsbCBnZXQgc3R1Y2sgaW4gbG90 cyBvZiBjb21wYXRpYmlsaXR5IGlzc3Vlcy4gQmV0dGVyIHRvIGRlZmluZSBuZXcNCj4gb3B0aW9u cyB3aXRoIG5ldyAtIGNsZWFybHkgZGVmaW5lZCAtIGJlaGF2aW91cnMgdGhhbiB0cnkgY2xhcmlm eWluZyBhbiBleGlzdGluZw0KPiBvcHRpb24gYWZ0ZXIgdGhlIGZhY3QuDQo=