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 C4AD8A0547;
	Fri, 29 Oct 2021 14:48:33 +0200 (CEST)
Received: from [217.70.189.124] (localhost [127.0.0.1])
	by mails.dpdk.org (Postfix) with ESMTP id 5D96E4111F;
	Fri, 29 Oct 2021 14:48:33 +0200 (CEST)
Received: from mga03.intel.com (mga03.intel.com [134.134.136.65])
 by mails.dpdk.org (Postfix) with ESMTP id 01B14410E1
 for <dev@dpdk.org>; Fri, 29 Oct 2021 14:48:30 +0200 (CEST)
X-IronPort-AV: E=McAfee;i="6200,9189,10151"; a="230608804"
X-IronPort-AV: E=Sophos;i="5.87,193,1631602800"; d="scan'208";a="230608804"
Received: from fmsmga002.fm.intel.com ([10.253.24.26])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 29 Oct 2021 05:48:30 -0700
X-ExtLoop1: 1
X-IronPort-AV: E=Sophos;i="5.87,193,1631602800"; d="scan'208";a="581007931"
Received: from orsmsx605.amr.corp.intel.com ([10.22.229.18])
 by fmsmga002.fm.intel.com with ESMTP; 29 Oct 2021 05:48:29 -0700
Received: from orsmsx607.amr.corp.intel.com (10.22.229.20) by
 ORSMSX605.amr.corp.intel.com (10.22.229.18) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2242.12; Fri, 29 Oct 2021 05:48:29 -0700
Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) by
 orsmsx607.amr.corp.intel.com (10.22.229.20) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2242.12 via Frontend Transport; Fri, 29 Oct 2021 05:48:29 -0700
Received: from NAM10-BN7-obe.outbound.protection.outlook.com (104.47.70.101)
 by edgegateway.intel.com (134.134.137.103) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.1.2242.12; Fri, 29 Oct 2021 05:48:28 -0700
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=i4tQHKIsp2nrzCcPA9dxyYHyiU1Ru7b3Em3LbK/yFCCgP0CXA7lUL1t+xIMDmBMim7pX/h6TDkN09mPiSyZLh86voLiffCwxqUSoGWsPv+Yocnh0nF9qB0Y/UlLw5UlHPci0wVOltHmlw93eOgz5uWTKOAZkhF4dJuzu7tBZMZ89LnpXsZzPFnIs+Qvb9WSFfilnlYXvPREUs8enHHmmO5e6nO8KWxyKBSsxNsFkRnXwl6vgWfnty+5qhvHJwxzUiigmm89pjvfz0IrtvZciOADsXNmsE6DSaz5JvHI/ZVk7sFXJhv0i8tfCoSGWVn0qLPPwjK8Yzen3AoDLiPnvlA==
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=pPSRYmPq3jNaci6EH/9fzcxJ6Na/cXpporJv70GOuXI=;
 b=LqIA3dm4ouVMQHa2+bxv1nP1tJxRuJvLU0OZ4Je4VyPHGk1MDZNXKTLSfLPm/5tYf2sx1rlXZFF6B5QclxN25vapktMsvcqozsSo5rpMnCgJZ2hyFKcZsOdFiZQwbYwLwsRPCCsoqZqbq0uRUVPVQ2o3ufOSF5CQB4Y9E+32HmgAPwEAsI1XtJhIKr4iQ+r6vBKETjGsffUEP8xzwHkwm5XA/F+KnRp5Bd+WqVZ/dDkifp6W97Kcw67aFoTx3LaV+UHgemF5VNqLVCMtiYeDoNlMQpXwxkn4HN5Y7FNlkwXU1YktA6b5zdstBCg1AeZlnt/+aRR2E+SRvaRfUzu3ig==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com;
 dkim=pass header.d=intel.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; 
 s=selector2-intel-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=pPSRYmPq3jNaci6EH/9fzcxJ6Na/cXpporJv70GOuXI=;
 b=YuELTfYt5DC+hR4yg/SLV8ZibUbwa3D40+BEmjKVmiag8TAWudGUFV/6SXB1N3umIZXUU3GsGR9QF6qCkmMXe4Z/ExgSX4SC1W+YMKXW5Um+/mHdEwQPgJyYwEAy7AWc5pH7gs07/EmWJhFhgyMfxxDX+UTfL8ZJ2ADFChiH7wA=
Received: from DM8PR11MB5591.namprd11.prod.outlook.com (2603:10b6:8:38::23) by
 DM8PR11MB5592.namprd11.prod.outlook.com (2603:10b6:8:35::6) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4649.13; Fri, 29 Oct 2021 12:48:26 +0000
Received: from DM8PR11MB5591.namprd11.prod.outlook.com
 ([fe80::3d47:b590:aa2a:d5cc]) by DM8PR11MB5591.namprd11.prod.outlook.com
 ([fe80::3d47:b590:aa2a:d5cc%9]) with mapi id 15.20.4649.015; Fri, 29 Oct 2021
 12:48:26 +0000
From: "Peng, ZhihongX" <zhihongx.peng@intel.com>
To: David Marchand <david.marchand@redhat.com>
CC: Thomas Monjalon <thomas@monjalon.net>, "Burakov, Anatoly"
 <anatoly.burakov@intel.com>, "Ananyev, Konstantin"
 <konstantin.ananyev@intel.com>, Stephen Hemminger
 <stephen@networkplumber.org>, "Dumitrescu, Cristian"
 <cristian.dumitrescu@intel.com>, "Mcnamara, John" <john.mcnamara@intel.com>,
 "Richardson, Bruce" <bruce.richardson@intel.com>, dev <dev@dpdk.org>, "Lin,
 Xueqin" <xueqin.lin@intel.com>
Thread-Topic: [PATCH v13 1/4] enable ASan AddressSanitizer
Thread-Index: AQHXxYa7Q/uxs4T2NESnZ9EHVYJ4dqvpwcKAgAA2CgA=
Date: Fri, 29 Oct 2021 12:48:25 +0000
Message-ID: <DM8PR11MB559154E3DB9C3B091855A160F0879@DM8PR11MB5591.namprd11.prod.outlook.com>
References: <20211019151524.2005442-4-zhihongx.peng@intel.com>
 <20211020074643.3004385-1-zhihongx.peng@intel.com>
 <CAJFAV8z7kE3354k-jZRj6tbkQoyALsjHrMSQEx-zhOPEqadhBA@mail.gmail.com>
In-Reply-To: <CAJFAV8z7kE3354k-jZRj6tbkQoyALsjHrMSQEx-zhOPEqadhBA@mail.gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
dlp-reaction: no-action
dlp-version: 11.6.200.16
dlp-product: dlpe-windows
authentication-results: redhat.com; dkim=none (message not signed)
 header.d=none;redhat.com; dmarc=none action=none header.from=intel.com;
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 4b50a83f-2ac5-4f9d-a64e-08d99ada6697
x-ms-traffictypediagnostic: DM8PR11MB5592:
x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr
x-microsoft-antispam-prvs: <DM8PR11MB5592FA62A968F3065277B297F0879@DM8PR11MB5592.namprd11.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:9508;
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: vycgk0ITHpcn/01BYfJ1zaGtFX1JoJLnzzlUQNiGxqzOmSAfH8Kaus+TYPyLE+fSTeazp6KDe0kAN0ikYqyZyrt6KC0bPAActm81d8VMowyNLxsRKcJGkPfK7MW9cIpYU5OlBR1S6ueNWV2yMnesyXp7KuelFWd1nNX+mKohCYrtPYm71FbzGdoDgMlIG7XWnzAPaeQYapUd55L9nMngPaXESu6Ikt7oIO6RKQE9eq37JAViU2z1Pv54TsD6MvqUIyVP/B4cKTLDbUlUW8DyKupE0oXvpmNXjEUVKzM5VDmrWy5lkfyiypybE++mYQxRtisIox3JM43oiJpQXbQX1BKG838hrQVmPPFKlb6Odxx5EjXz7g+qOaxYZQP6WmePEQX8xzwJd8sjxp0DffgUeoNvC9s+Pd8DmU6xneuBv5jOo9oX1/Hui/OH8fRIoFauulnojRjowDXFGplBg2x/QWTCWE0/2fJI3r7lfvMvecEAjBtfBDVEAJtu/V167ade0+HpljGN+mJ/0mH9wHIyJSZGkeU6xAlHlbVBlYPltx+2wVklv5ZqbhCR+qHU+uA8ENysDDTDxyIxDythukQmYrDfphzzRfxqaw6kQN4wdM81NQmmpuDxQvRBQSOpEt4eP+2JYjuXXtvzvNYBMWeYXIqJqwUW3iOXrvCrDNsZ3AgV0B6eGZvQ4PikdR35lERLYFoLbbJjWiVJ1ZN5BClGCddfQ+5V5PiAbqbU9oWwDDs2bxrA+JzWGKxAHwZlNbSvmGCA6u+9GKppMGgwD4fbvkcFIu4RNU73wNuAeiQb45M=
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:DM8PR11MB5591.namprd11.prod.outlook.com; PTR:; CAT:NONE;
 SFS:(366004)(107886003)(54906003)(53546011)(66446008)(76116006)(38100700002)(9686003)(33656002)(6506007)(316002)(7696005)(83380400001)(6916009)(5660300002)(38070700005)(71200400001)(2906002)(66476007)(52536014)(55016002)(508600001)(64756008)(186003)(122000001)(8676002)(66946007)(4326008)(86362001)(8936002)(82960400001)(966005)(66556008);
 DIR:OUT; SFP:1102; 
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: =?utf-8?B?QUt4ZzB4V0hWa1I3UkVBODJzUWZyRFpTRTY2bUdySkxwTDc5d2tDcEw4bVZD?=
 =?utf-8?B?WGh6RTc1QXpmUTEzUlhqYWcrTmhjN28xTGRhK1l6Z2xEQnBBTDIxbU5YLzVn?=
 =?utf-8?B?ZmQ5OXUvS0xhTUtiQTJIT1FaUEhsci9FclFyT1BOcC9mTEhkL1RMbVdDOWhh?=
 =?utf-8?B?L2Uwa0VtdFlkZjJHZlI4OTZteUh1RjRLWGFCeFFDS1JtT0V6OERrK1cyN0pC?=
 =?utf-8?B?RGEreVk1bVV5QUxTdjdQV2ZyWkZWUnhkdXJ4UUlQaUk4Yk8weHRieG0vU0I4?=
 =?utf-8?B?VVE2SHNkbjJlRTJYMDVWK29LRW5GbTNyRTB3aU9WcU96V1pBeW9YV0FwUFNP?=
 =?utf-8?B?R1JvVEJtS29vZWNLemM1eHNuanhSZHc3Zld4N3dYbC9pajlYRVJlbkVVVFVH?=
 =?utf-8?B?RlRmcXpkQ1BBeUlrQytiN2I1NnBscldNL1c0bHpLK3J5aThCQ29sb2ZkMXh1?=
 =?utf-8?B?cmlUUHFkUXRsLzdTWHhRVGNPN3ZmRGR0YTFMdlpYYUJ2dnVCSFVXNUtuRFRy?=
 =?utf-8?B?dWVKeGdDRmFISzB3TGpHTC8yYU1kSSs2aXFpKy9xUzlGd2VxSFlsbTliTi9R?=
 =?utf-8?B?OXE0OUw0c3RRNTVLU1lOR2N5WnM2VUpLMmt1bU95T2VIVVBaMkc3TWxlOWFw?=
 =?utf-8?B?Q0V0dnU2dmh3OEYzSjVpYVduc1VtcU55YnJSVnVXazdKelJkU0VyczVOV0s3?=
 =?utf-8?B?WVl2MS8zUWJ6UmNQcmpTYTRKMStXbGxRTW9lTURmRDAvR25QYjRWaTdZdmdp?=
 =?utf-8?B?dThzT2hTK2VadmtHTW9TSjF0SjFLOFloOCtGbHc0YWZCc2VYbmthWGlpM0Zh?=
 =?utf-8?B?blgvb29QbURUN3EzaXhMby9xYmVUSE9ZVGRDWjdrV1F6cHQvcGRQUEc4MFQ5?=
 =?utf-8?B?ZGxFcDN3clF4SnZneDRwMW0vcE5NczNSUmc0VFdnYXZENFlZQS9aQ09iSjJY?=
 =?utf-8?B?aVZyemQvZ1lCZ0VIRlVEc0tscGpoaDRMdjlPemZpcGFxZERqdmQybFkwRmR2?=
 =?utf-8?B?cXJqV1N4cmcwZ2pxSzZGdmdPeGhTY0J0VFBPOWE1a1REZDVoem1heXRITkNm?=
 =?utf-8?B?TkpHU2F5M0NuV3YrTFhvelZ0aGhOdEVLWk5PRjB3NlNKMjUzOUY5dlhVVGNp?=
 =?utf-8?B?WGk4ZGhjREIzRW9PSEh4SnN0QUo4dS9mcHBIRlRWZTg4Zy9jRmZXemw0aUQ4?=
 =?utf-8?B?VjlQWlFuNEYzeU8vdEFJQWZVaG5DYkNMMHVXODI0QUtpZEIyRGFnbXg1UnpU?=
 =?utf-8?B?TnVxQ0ZMY2VzSmlBUW9rdzZmMjhBWW10UXZKaXRWaFRwRVBWRGFGR3dqRlVo?=
 =?utf-8?B?TWJSV1hTcEJ0OWlPUDc0RUNYUXRPWFlhT2p5UFVGRXIvRUl4V0oyVnhtU3I3?=
 =?utf-8?B?bnBLTnFIek4vRnRtNk4wQWMzN1J3ei9QdkNVUFgvSW16WXFHZG1KcGx5WFIr?=
 =?utf-8?B?Y3hIdEUvTEVGa3Z4TjRDaGl5TDBUMDB5dFV0WlVnVjJ5bzBsZnJYaHBDWWtD?=
 =?utf-8?B?S3JLaW1qeXlXZHMrY21RdU9KLzFma0kybnRBOVEvTnJ6MDRaRTd0ZFN1d0hm?=
 =?utf-8?B?U0hydlRNelNhUWlodk1uZzB3d1hhU1kyV0RzZ0dVaGlUaXVQSmdxU1ZSRkhU?=
 =?utf-8?B?dUJFaG9oSkdQVnYwdUlnKzhZS2dOTlpPNzlDcGlhMjhHck5zdGZYK0IwSTVG?=
 =?utf-8?B?L3l6NWJjcE1tOG9yY0FQVXdWSmlwQW9HbnJoMGRub28wbTVoQTR5eE9hUlVU?=
 =?utf-8?B?alFCbWtPaEtsWERiems1cFVzZGZiYUdiSlE2cWpKQnVzYytFT1pHOWZXWVM4?=
 =?utf-8?B?Z1MrMVN1cUZQKzNXa3dDanArN1FvWGhQc2RSaDVtdHhmNmJxZG9jaW8zN2FW?=
 =?utf-8?B?eEpocEErS2ZWZnhwOGFKR3E3cC9UYXJUdTEzZXgveTZNZzVxUG50ak1VbW1z?=
 =?utf-8?B?SjgxTjhCM25MU0N1ZDZkbDQ3TndmTVpNbWRaY3JqTnR4UXkwSnpoaGNpektB?=
 =?utf-8?B?VGRHRC9xQ3VTTGJkSkhwRzlEbzZIcTk1eTdQYW9qdkpwSS9JQ2MrOXdOSXVz?=
 =?utf-8?B?VDdYeG45c0JNaFhDRzFUREtuNi9KRWdLZCtvR1huZ0F0ZDQ4eFF1cE9CeitJ?=
 =?utf-8?B?QkNwZnE5MjZoU3pDa0VNSVM5cmZ1Wjc0dENLTklvcWtJQUVML1lUY1ZtZzN3?=
 =?utf-8?B?YTBsbTNvTG80dHRnN0t1MmJxcC9ZVnJtdm1VYVRYQ3FMVmt4VDdMa2kzVXdP?=
 =?utf-8?Q?HxR43BTx4T4SIeoJddtWnsnjtMJQRduVLKNKWbibi8=3D?=
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: DM8PR11MB5591.namprd11.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4b50a83f-2ac5-4f9d-a64e-08d99ada6697
X-MS-Exchange-CrossTenant-originalarrivaltime: 29 Oct 2021 12:48:26.2387 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: nGUctCaihma589yl/ySitGq8RXenOSid9KkWMkmn/RxtIe51iptaC19Ahcer+X6//amGOpYrl7OEcekz3/n7ZQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM8PR11MB5592
X-OriginatorOrg: intel.com
Subject: Re: [dpdk-dev] [PATCH v13 1/4] enable ASan AddressSanitizer
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>

PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBEYXZpZCBNYXJjaGFuZCA8ZGF2
aWQubWFyY2hhbmRAcmVkaGF0LmNvbT4NCj4gU2VudDogRnJpZGF5LCBPY3RvYmVyIDI5LCAyMDIx
IDU6MjIgUE0NCj4gVG86IFBlbmcsIFpoaWhvbmdYIDx6aGlob25neC5wZW5nQGludGVsLmNvbT4N
Cj4gQ2M6IFRob21hcyBNb25qYWxvbiA8dGhvbWFzQG1vbmphbG9uLm5ldD47IEJ1cmFrb3YsIEFu
YXRvbHkNCj4gPGFuYXRvbHkuYnVyYWtvdkBpbnRlbC5jb20+OyBBbmFueWV2LCBLb25zdGFudGlu
DQo+IDxrb25zdGFudGluLmFuYW55ZXZAaW50ZWwuY29tPjsgU3RlcGhlbiBIZW1taW5nZXINCj4g
PHN0ZXBoZW5AbmV0d29ya3BsdW1iZXIub3JnPjsgRHVtaXRyZXNjdSwgQ3Jpc3RpYW4NCj4gPGNy
aXN0aWFuLmR1bWl0cmVzY3VAaW50ZWwuY29tPjsgTWNuYW1hcmEsIEpvaG4NCj4gPGpvaG4ubWNu
YW1hcmFAaW50ZWwuY29tPjsgUmljaGFyZHNvbiwgQnJ1Y2UNCj4gPGJydWNlLnJpY2hhcmRzb25A
aW50ZWwuY29tPjsgZGV2IDxkZXZAZHBkay5vcmc+OyBMaW4sIFh1ZXFpbg0KPiA8eHVlcWluLmxp
bkBpbnRlbC5jb20+DQo+IFN1YmplY3Q6IFJlOiBbUEFUQ0ggdjEzIDEvNF0gZW5hYmxlIEFTYW4g
QWRkcmVzc1Nhbml0aXplcg0KPiANCj4gUmVwbHlpbmcgb24gdGhpcyBwYXRjaCBzaW5jZSB0aGVy
ZSBpcyBubyBjb3ZlciBsZXR0ZXIuDQo+IA0KPiBUaGlzIHNlcmllcyBsb29rcyBhY2NlcHRhYmxl
IHRvIG1lIGZvciByYzIuDQo+IA0KPiBQYXRjaCAzIGFuZCA0IHdpbGwgYmUgbWVyZ2VkIGZpcnN0
LCBzaW5jZSB0aGV5IGZpeCBpc3N1ZXMgdGhhdCB3b3VsZCBiZSBoaXQgd2l0aA0KPiBBU2FuIGVu
YWJsZWQuDQo+IA0KPiBJIGhhdmUgY29tbWVudHMgbWFpbmx5IG9uIHJld29yZGluZyBpbiBjb21t
aXRsb2dzIGFuZCBkb2N1bWVudGF0aW9uLg0KPiANCj4gSWYgeW91IGFyZSBmaW5lIHdpdGggdGhv
c2UgY29tbWVudHMsIEknbGwgZml4IHRoZW0gYmVmb3JlIHB1c2hpbmcgdGhpcyBzZXJpZXMuDQoN
ClRoYW5rIHlvdSB2ZXJ5IG11Y2ggZm9yIHlvdXIgaGVscCwgSSBhZ3JlZSB3aXRoIHRoaXMgbW9k
aWZpY2F0aW9uLCBpdCdzIGdvb2QuDQpZb3UgaGF2ZSBkb25lIGEgbG90IG9mIHdvcmsgZm9yIGFz
YW4gcGF0Y2gsIHRoYW5rIHlvdSBhZ2Fpbi4NCg0KUmVnYXJkcywNClBlbmcsWmhpaG9uZw0KPiAN
Cj4gDQo+IE9uIFdlZCwgT2N0IDIwLCAyMDIxIGF0IDk6NDcgQU0gPHpoaWhvbmd4LnBlbmdAaW50
ZWwuY29tPiB3cm90ZToNCj4gPg0KPiA+IEZyb206IFpoaWhvbmcgUGVuZyA8emhpaG9uZ3gucGVu
Z0BpbnRlbC5jb20+DQo+ID4NCj4gPiBgQWRkcmVzc1Nhbml0aXplcg0KPiA+IDxodHRwczovL2dp
dGh1Yi5jb20vZ29vZ2xlL3Nhbml0aXplcnMvd2lraS9BZGRyZXNzU2FuaXRpemVyPmBfIChBU2Fu
KQ0KPiA+IGlzIGEgd2lkZWx5LXVzZWQgZGVidWdnaW5nIHRvb2wgdG8gZGV0ZWN0IG1lbW9yeSBh
Y2Nlc3MgZXJyb3JzLg0KPiA+IEl0IGhlbHBzIHRvIGRldGVjdCBpc3N1ZXMgbGlrZSB1c2UtYWZ0
ZXItZnJlZSwgdmFyaW91cyBraW5kcyBvZiBidWZmZXINCj4gPiBvdmVycnVucyBpbiBDL0MrKyBw
cm9ncmFtcywgYW5kIG90aGVyIHNpbWlsYXIgZXJyb3JzLCBhcyB3ZWxsIGFzDQo+ID4gcHJpbnRp
bmcgb3V0IGRldGFpbGVkIGRlYnVnIGluZm9ybWF0aW9uIHdoZW5ldmVyIGFuIGVycm9yIGlzIGRl
dGVjdGVkLg0KPiA+DQo+ID4gV2UgY2FuIGVuYWJsZSBBU2FuIGJ5IGFkZGluZyBiZWxvdyBjb21w
aWxhdGlvbiBvcHRpb25zOg0KPiA+IC1EYnVpbGR0eXBlPWRlYnVnIC1EYl9sdW5kZWY9ZmFsc2Ug
LURiX3Nhbml0aXplPWFkZHJlc3MNCj4gPiAiLURidWlsZHR5cGU9ZGVidWciOiBUaGlzIGlzIGEg
bm9uLWVzc2VudGlhbCBvcHRpb24uIFdoZW4gdGhpcyBvcHRpb24NCj4gPiBpcyBhZGRlZCwgaWYg
YSBtZW1vcnkgZXJyb3Igb2NjdXJzLCBBU2FuIGNhbiBjbGVhcmx5IHNob3cgd2hlcmUgdGhlDQo+
ID4gY29kZSBpcyB3cm9uZy4NCj4gPiAiLURiX2x1bmRlZj1mYWxzZSI6IFdoZW4gdXNlIGNsYW5n
IHRvIGNvbXBpbGUgRFBESywgdGhpcyBvcHRpb24gbXVzdA0KPiA+IGJlIGFkZGVkLg0KPiA+DQo+
ID4gU2lnbmVkLW9mZi1ieTogWHVlcWluIExpbiA8eHVlcWluLmxpbkBpbnRlbC5jb20+DQo+ID4g
U2lnbmVkLW9mZi1ieTogWmhpaG9uZyBQZW5nIDx6aGlob25neC5wZW5nQGludGVsLmNvbT4NCj4g
PiBBY2tlZC1ieTogSm9obiBNY05hbWFyYSA8am9obi5tY25hbWFyYUBpbnRlbC5jb20+DQo+IA0K
PiBUaGlzIHBhdGNoIGFmZmVjdHMgdGhlIGJ1aWxkIHByb2Nlc3Mgc28gaXQgc2hvdWxkIGJlIHJl
ZmxlY3RlZCBpbiB0aGUgcGF0Y2ggdGl0bGUuDQo+IEkgZmluZCB0aGUgY29tbWl0bG9nIGhhcmQg
dG8gcmVhZC4NCj4gDQo+IA0KPiBTdWdnZXN0aW5nIGZvbGxvd2luZyByZXdvcmRpbmc6DQo+ICIi
Ig0KPiBidWlsZDogZW5hYmxlIEFkZHJlc3NTYW5pdGl6ZXINCj4gDQo+IEFkZHJlc3NTYW5pdGl6
ZXIgWzFdIGEuay5hLiBBU2FuIGlzIGEgd2lkZWx5LXVzZWQgZGVidWdnaW5nIHRvb2wgdG8gZGV0
ZWN0DQo+IG1lbW9yeSBhY2Nlc3MgZXJyb3JzLg0KPiBJdCBoZWxwcyB0byBkZXRlY3QgaXNzdWVz
IGxpa2UgdXNlLWFmdGVyLWZyZWUsIHZhcmlvdXMga2luZHMgb2YgYnVmZmVyIG92ZXJydW5zDQo+
IGluIEMvQysrIHByb2dyYW1zLCBhbmQgb3RoZXIgc2ltaWxhciBlcnJvcnMsIGFzIHdlbGwgYXMg
cHJpbnRpbmcgb3V0IGRldGFpbGVkDQo+IGRlYnVnIGluZm9ybWF0aW9uIHdoZW5ldmVyIGFuIGVy
cm9yIGlzIGRldGVjdGVkLg0KPiANCj4gQVNhbiBpcyBpbnRlZ3JhdGVkIHdpdGggZ2NjIGFuZCBj
bGFuZyBhbmQgY2FuIGJlIGVuYWJsZWQgdmlhIGEgbWVzb24NCj4gb3B0aW9uOiAtRGJfc2FuaXRp
emU9YWRkcmVzcw0KPiBTZWUgdGhlIGRvY3VtZW50YXRpb24gZm9yIGRldGFpbHMgKGVzcGVjaWFs
bHkgcmVnYXJkaW5nIGNsYW5nKS4NCj4gDQo+IEVuYWJsaW5nIEFTYW4gaGFzIGFuIGltcGFjdCBv
biBwZXJmb3JtYW5jZSBzaW5jZSBhZGRpdGlvbmFsIGNoZWNrcyBhcmUNCj4gYWRkZWQgdG8gZ2Vu
ZXJhdGVkIGJpbmFyaWVzLg0KPiANCj4gRW5hYmxpbmcgQVNhbiB3aXRoIFdpbmRvd3MgaXMgY3Vy
cmVudGx5IG5vdCBzdXBwb3J0ZWQgaW4gRFBESy4NCj4gDQo+IA0KPiAxOiBodHRwczovL2dpdGh1
Yi5jb20vZ29vZ2xlL3Nhbml0aXplcnMvd2lraS9BZGRyZXNzU2FuaXRpemVyDQo+ICIiIg0KPiAN
Cj4gPiAtLS0NCj4gPiB2NzogMSkgU3BsaXQgZG9jIGFuZCBjb2RlIGludG8gdHdvLg0KPiA+ICAg
ICAyKSBNb2RpZnkgYXNhbi5yc3QgZG9jDQo+ID4gdjg6IE5vIGNoYW5nZS4NCj4gPiB2OTogMSkg
QWRkIHRoZSBjaGVjayBvZiBsaWJhc2FuIGxpYnJhcnkuDQo+ID4gICAgIDIpIEFkZCByZWxlYXNl
IG5vdGVzLg0KPiA+IHYxMDoxKSBTcGxpdCBkb2MgYW5kIGNvZGUgaW50byB0d28uDQo+ID4gICAg
IDIpIE1lc29uIHN1cHBvcnRzIGFzYW4uDQo+ID4gdjExOk1vZGlmeSB0aGUgZG9jdW1lbnQuDQo+
ID4gdjEyOk5vIGNoYW5nZS4NCj4gPiB2MTM6TW9kaWZ5IHRoZSBkb2N1bWVudC4NCj4gPiAtLS0N
Cj4gPiAgY29uZmlnL21lc29uLmJ1aWxkICAgICAgICAgICAgICAgICAgICAgfCAxNiArKysrKysr
KysrKysrKw0KPiA+ICBkZXZ0b29scy93b3Jkcy1jYXNlLnR4dCAgICAgICAgICAgICAgICB8ICAx
ICsNCj4gPiAgZG9jL2d1aWRlcy9wcm9nX2d1aWRlL2FzYW4ucnN0ICAgICAgICAgfCAzMCArKysr
KysrKysrKysrKysrKysrKysrKysrKw0KPiA+ICBkb2MvZ3VpZGVzL3Byb2dfZ3VpZGUvaW5kZXgu
cnN0ICAgICAgICB8ICAxICsNCj4gPiAgZG9jL2d1aWRlcy9yZWxfbm90ZXMvcmVsZWFzZV8yMV8x
MS5yc3QgfCAgOSArKysrKysrKw0KPiA+ICA1IGZpbGVzIGNoYW5nZWQsIDU3IGluc2VydGlvbnMo
KykNCj4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGRvYy9ndWlkZXMvcHJvZ19ndWlkZS9hc2FuLnJz
dA0KPiA+DQo+ID4gZGlmZiAtLWdpdCBhL2NvbmZpZy9tZXNvbi5idWlsZCBiL2NvbmZpZy9tZXNv
bi5idWlsZCBpbmRleA0KPiA+IDRjZGY1ODllMjAuLmYwMmIwZTljNmQgMTAwNjQ0DQo+ID4gLS0t
IGEvY29uZmlnL21lc29uLmJ1aWxkDQo+ID4gKysrIGIvY29uZmlnL21lc29uLmJ1aWxkDQo+ID4g
QEAgLTQxMSw2ICs0MTEsMjIgQEAgaWYgZ2V0X29wdGlvbignYl9sdG8nKQ0KPiA+ICAgICAgZW5k
aWYNCj4gPiAgZW5kaWYNCj4gPg0KPiA+ICtpZiBnZXRfb3B0aW9uKCdiX3Nhbml0aXplJykgPT0g
J2FkZHJlc3MnIG9yIGdldF9vcHRpb24oJ2Jfc2FuaXRpemUnKSA9PQ0KPiAnYWRkcmVzcyx1bmRl
ZmluZWQnDQo+ID4gKyAgICBpZiBpc193aW5kb3dzDQo+ID4gKyAgICAgICAgZXJyb3IoJ0FTYW4g
aXMgbm90IHN1cHBvcnRlZCBvbiB3aW5kb3dzJykNCj4gPiArICAgIGVuZGlmDQo+IA0KPiBJIHNl
ZSBjbGFuZyBzdGFydGVkIHN1cHBvcnRpbmcgQVNhbiBmb3IgV2luZG93cyBpbiB2ZXJzaW9uIDgu
DQo+IGh0dHBzOi8vcmVsZWFzZXMubGx2bS5vcmcvOC4wLjAvdG9vbHMvY2xhbmcvZG9jcy9BZGRy
ZXNzU2FuaXRpemVyLmh0bWwNCj4gDQo+IEkgYWxzbyBmb3VuZCBzb21lIGJsb2cgYWJvdXQgYWRk
aW5nIEFTYW4gc3VwcG9ydCBpbiBNU1ZDLg0KPiBodHRwczovL2RldmJsb2dzLm1pY3Jvc29mdC5j
b20vY3BwYmxvZy9hZGRyZXNzc2FuaXRpemVyLWFzYW4tZm9yLQ0KPiB3aW5kb3dzLXdpdGgtbXN2
Yy8NCj4gDQo+IEtlZXBpbmcgdGhpcyBsaW1pdGF0aW9uIGlzIGFjY2VwdGFibGUgZm9yIG5vdywg
YnV0IEkgYWRkZWQgYSBtZW50aW9uIGluDQo+IGNvbW1pdGxvZy4NCj4gDQo+IA0KPiA+ICsNCj4g
PiArICAgIGlmIGNjLmdldF9pZCgpID09ICdnY2MnDQo+ID4gKyAgICAgICAgYXNhbl9kZXAgPSBj
Yy5maW5kX2xpYnJhcnkoJ2FzYW4nLCByZXF1aXJlZDogdHJ1ZSkNCj4gPiArICAgICAgICBpZiAo
bm90IGNjLmxpbmtzKCdpbnQgbWFpbihpbnQgYXJnYywgY2hhciAqYXJndltdKSB7IHJldHVybiAw
OyB9JywNCj4gPiArICAgICAgICAgICAgICAgIGRlcGVuZGVuY2llczogYXNhbl9kZXApKQ0KPiA+
ICsgICAgICAgICAgICBlcnJvcignYnJva2VuIGRlcGVuZGVuY3ksICJsaWJhc2FuIicpDQo+ID4g
KyAgICAgICAgZW5kaWYNCj4gPiArICAgICAgICBhZGRfcHJvamVjdF9saW5rX2FyZ3VtZW50cygn
LWxhc2FuJywgbGFuZ3VhZ2U6ICdjJykNCj4gPiArICAgICAgICBkcGRrX2V4dHJhX2xkZmxhZ3Mg
Kz0gJy1sYXNhbicNCj4gPiArICAgIGVuZGlmDQo+ID4gK2VuZGlmDQo+ID4gKw0KPiA+ICBpZiBn
ZXRfb3B0aW9uKCdkZWZhdWx0X2xpYnJhcnknKSA9PSAnYm90aCcNCj4gPiAgICAgIGVycm9yKCAn
JycNCj4gPiAgIFVuc3VwcG9ydGVkIHZhbHVlICJib3RoIiBmb3IgImRlZmF1bHRfbGlicmFyeSIg
b3B0aW9uLg0KPiA+IGRpZmYgLS1naXQgYS9kZXZ0b29scy93b3Jkcy1jYXNlLnR4dCBiL2RldnRv
b2xzL3dvcmRzLWNhc2UudHh0IGluZGV4DQo+ID4gMGJiYWQ0ODYyNi4uYWRhNjkxMGZhMCAxMDA2
NDQNCj4gPiAtLS0gYS9kZXZ0b29scy93b3Jkcy1jYXNlLnR4dA0KPiA+ICsrKyBiL2RldnRvb2xz
L3dvcmRzLWNhc2UudHh0DQo+ID4gQEAgLTUsNiArNSw3IEBAIEFQSQ0KPiA+ICBBcm0NCj4gPiAg
YXJtdjcNCj4gPiAgYXJtdjgNCj4gPiArQVNhbg0KPiA+ICBCQVINCj4gPiAgQ1JDDQo+ID4gIERD
Qg0KPiA+IGRpZmYgLS1naXQgYS9kb2MvZ3VpZGVzL3Byb2dfZ3VpZGUvYXNhbi5yc3QNCj4gPiBi
L2RvYy9ndWlkZXMvcHJvZ19ndWlkZS9hc2FuLnJzdCBuZXcgZmlsZSBtb2RlIDEwMDY0NCBpbmRl
eA0KPiA+IDAwMDAwMDAwMDAuLjY4ODhmYzlhODcNCj4gPiAtLS0gL2Rldi9udWxsDQo+ID4gKysr
IGIvZG9jL2d1aWRlcy9wcm9nX2d1aWRlL2FzYW4ucnN0DQo+ID4gQEAgLTAsMCArMSwzMCBAQA0K
PiA+ICsuLiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTMtQ2xhdXNlDQo+ID4gKyAgIENv
cHlyaWdodChjKSAyMDIxIEludGVsIENvcnBvcmF0aW9uDQo+ID4gKw0KPiA+ICtSdW5uaW5nIEFk
ZHJlc3NTYW5pdGl6ZXINCj4gPiArPT09PT09PT09PT09PT09PT09PT09PT09DQo+ID4gKw0KPiA+
ICtgQWRkcmVzc1Nhbml0aXplcg0KPiA+ICs8aHR0cHM6Ly9naXRodWIuY29tL2dvb2dsZS9zYW5p
dGl6ZXJzL3dpa2kvQWRkcmVzc1Nhbml0aXplcj5gXyAoQVNhbikNCj4gPiAraXMgYSB3aWRlbHkt
dXNlZCBkZWJ1Z2dpbmcgdG9vbCB0byBkZXRlY3QgbWVtb3J5IGFjY2VzcyBlcnJvcnMuDQo+ID4g
K0l0IGhlbHBzIHRvIGRldGVjdCBpc3N1ZXMgbGlrZSB1c2UtYWZ0ZXItZnJlZSwgdmFyaW91cyBr
aW5kcyBvZg0KPiA+ICtidWZmZXIgb3ZlcnJ1bnMgaW4gQy9DKysgcHJvZ3JhbXMsIGFuZCBvdGhl
ciBzaW1pbGFyIGVycm9ycywgYXMgd2VsbA0KPiA+ICthcyBwcmludGluZyBvdXQgZGV0YWlsZWQg
ZGVidWcgaW5mb3JtYXRpb24gd2hlbmV2ZXIgYW4gZXJyb3IgaXMgZGV0ZWN0ZWQuDQo+ID4gKw0K
PiA+ICtBZGRyZXNzU2FuaXRpemVyIGlzIGEgcGFydCBvZiBMTFZNICgzLjErKSBhbmQgR0NDICg0
LjgrKS4NCj4gPiArDQo+ID4gK0FkZCBmb2xsb3dpbmcgbWVzb24gYnVpbGQgY29tbWFuZHMgdG8g
ZW5hYmxlIEFTYW4gaW4gdGhlIG1lc29uIGJ1aWxkDQo+IHN5c3RlbToNCj4gPiArDQo+ID4gKyog
Z2NjOjoNCj4gPiArDQo+ID4gKyAgICAtRGJ1aWxkdHlwZT1kZWJ1ZyAtRGJfc2FuaXRpemU9YWRk
cmVzcw0KPiA+ICsNCj4gPiArKiBjbGFuZzo6DQo+ID4gKw0KPiA+ICsgICAgLURidWlsZHR5cGU9
ZGVidWcgLURiX2x1bmRlZj1mYWxzZSAtRGJfc2FuaXRpemU9YWRkcmVzcw0KPiANCj4gU3VnZ2Vz
dHMgYWRkaW5nIHNvbWUgZXhwbGFuYXRpb25zIGhlcmUgYW5kIHJlcGxhY2luZyBsaWtlOg0KPiAN
Cj4gIiIiDQo+IC4uLg0KPiANCj4gQWRkcmVzc1Nhbml0aXplciBpcyBhIHBhcnQgb2YgTExWTSAo
My4xKykgYW5kIEdDQyAoNC44KykuDQo+IA0KPiBFbmFibGluZyBBU2FuIGlzIGRvbmUgYnkgcGFz
c2luZyB0aGUgLURiX3Nhbml0aXplPWFkZHJlc3Mgb3B0aW9uIHRvIHRoZQ0KPiBtZXNvbiBidWls
ZCBzeXN0ZW0sIHNlZSA6cmVmOmBsaW51eF9nc2dfY29tcGlsaW5nX2RwZGtgIGZvciBkZXRhaWxz
Lg0KPiANCj4gVGhlIHdheSBBU2FuIGlzIGludGVncmF0ZWQgd2l0aCBjbGFuZyByZXF1aXJlcyB0
byBhbGxvdyB1bmRlZmluZWQgc3ltYm9scw0KPiB3aGVuIGxpbmtpbmcgY29kZS4NCj4gVG8gZG8g
dGhpcywgdGhlIC1EYl9sdW5kZWY9ZmFsc2Ugb3B0aW9uIG11c3QgYmUgYWRkZWQuDQo+IA0KPiBB
ZGRpdGlvbmFsbHksIHBhc3NpbmcgLURidWlsZHR5cGU9ZGVidWcgb3B0aW9uIG1pZ2h0IGhlbHAg
Z2V0dGluZyBtb3JlDQo+IHJlYWRhYmxlIEFTYW4gcmVwb3J0cy4NCj4gDQo+IEV4YW1wbGU6Og0K
PiANCj4gICAtIGdjYzogbWVzb24gc2V0dXAgLURiX3Nhbml0aXplPWFkZHJlc3MgPGJ1aWxkX2Rp
cj4NCj4gICAtIGNsYW5nOiBtZXNvbiBzZXR1cCAtRGJfc2FuaXRpemU9YWRkcmVzcyAtRGJfbHVu
ZGVmPWZhbHNlIDxidWlsZF9kaXI+ICIiIg0KPiANCj4gPiArDQo+ID4gKy4uIE5vdGU6Og0KPiA+
ICsNCj4gPiArICAgIGEpIElmIGNvbXBpbGUgd2l0aCBnY2MgaW4gY2VudG9zLCBsaWJhc2FuIG5l
ZWRzIHRvIGJlIGluc3RhbGxlZCBzZXBhcmF0ZWx5Lg0KPiA+ICsgICAgYikgSWYgdGhlIHByb2dy
YW0gaXMgdGVzdGVkIHVzaW5nIGNtZGxpbmUsIHlvdSBtYXkgbmVlZCB0byBleGVjdXRlIHRoZQ0K
PiA+ICsgICAgICAgInN0dHkgZWNobyIgY29tbWFuZCB3aGVuIGFuIGVycm9yIG9jY3Vycy4NCj4g
DQo+ICIiIg0KPiAgIC0gVGhlIGxpYmFzYW4gcGFja2FnZSBtdXN0IGJlIGluc3RhbGxlZCB3aGVu
IGNvbXBpbGluZyB3aXRoIGdjYyBpbg0KPiBDZW50b3MvUkhFTC4NCj4gICAtIElmIHRoZSBwcm9n
cmFtIGlzIHRlc3RlZCB1c2luZyBjbWRsaW5lLCB5b3UgbWF5IG5lZWQgdG8gZXhlY3V0ZSB0aGUN
Cj4gICAgICJzdHR5IGVjaG8iIGNvbW1hbmQgd2hlbiBhbiBlcnJvciBvY2N1cnMuDQo+ICIiIg0K
PiANCj4gPiBkaWZmIC0tZ2l0IGEvZG9jL2d1aWRlcy9wcm9nX2d1aWRlL2luZGV4LnJzdA0KPiA+
IGIvZG9jL2d1aWRlcy9wcm9nX2d1aWRlL2luZGV4LnJzdCBpbmRleCA4OWFmMjhkYWNiLi5iOTVj
NDYwYjE5IDEwMDY0NA0KPiA+IC0tLSBhL2RvYy9ndWlkZXMvcHJvZ19ndWlkZS9pbmRleC5yc3QN
Cj4gPiArKysgYi9kb2MvZ3VpZGVzL3Byb2dfZ3VpZGUvaW5kZXgucnN0DQo+ID4gQEAgLTcxLDQg
KzcxLDUgQEAgUHJvZ3JhbW1lcidzIEd1aWRlDQo+ID4gICAgICB3cml0aW5nX2VmZmljaWVudF9j
b2RlDQo+ID4gICAgICBsdG8NCj4gPiAgICAgIHByb2ZpbGVfYXBwDQo+ID4gKyAgICBhc2FuDQo+
ID4gICAgICBnbG9zc2FyeQ0KPiA+IGRpZmYgLS1naXQgYS9kb2MvZ3VpZGVzL3JlbF9ub3Rlcy9y
ZWxlYXNlXzIxXzExLnJzdA0KPiA+IGIvZG9jL2d1aWRlcy9yZWxfbm90ZXMvcmVsZWFzZV8yMV8x
MS5yc3QNCj4gPiBpbmRleCAzMzYyYzUyYTczLi4xMGY0Mjc1YjFiIDEwMDY0NA0KPiA+IC0tLSBh
L2RvYy9ndWlkZXMvcmVsX25vdGVzL3JlbGVhc2VfMjFfMTEucnN0DQo+ID4gKysrIGIvZG9jL2d1
aWRlcy9yZWxfbm90ZXMvcmVsZWFzZV8yMV8xMS5yc3QNCj4gPiBAQCAtMTczLDYgKzE3MywxNSBA
QCBOZXcgRmVhdHVyZXMNCj4gPiAgICAqIEFkZGVkIHRlc3RzIHRvIHZlcmlmeSB0dW5uZWwgaGVh
ZGVyIHZlcmlmaWNhdGlvbiBpbiBJUHNlYyBpbmJvdW5kLg0KPiA+ICAgICogQWRkZWQgdGVzdHMg
dG8gdmVyaWZ5IGlubmVyIGNoZWNrc3VtLg0KPiA+DQo+ID4gKyogKipFbmFibGUgQVNhbiBBZGRy
ZXNzU2FuaXRpemVyLioqDQo+IA0KPiBTaG91bGQgYmUgaW4gcGFzdCBmb3JtOg0KPiANCj4gKiAq
KkFkZGVkIEFTYW4gc3VwcG9ydC4qKg0KPiANCj4gDQo+IA0KPiANCj4gDQo+ID4gKw0KPiA+ICsg
IGBBZGRyZXNzU2FuaXRpemVyDQo+ID4gKyAgPGh0dHBzOi8vZ2l0aHViLmNvbS9nb29nbGUvc2Fu
aXRpemVycy93aWtpL0FkZHJlc3NTYW5pdGl6ZXI+YF8NCj4gPiArIChBU2FuKSAgaXMgYSB3aWRl
bHktdXNlZCBkZWJ1Z2dpbmcgdG9vbCB0byBkZXRlY3QgbWVtb3J5IGFjY2VzcyBlcnJvcnMuDQo+
ID4gKyAgSXQgaGVscHMgdG8gZGV0ZWN0IGlzc3VlcyBsaWtlIHVzZS1hZnRlci1mcmVlLCB2YXJp
b3VzIGtpbmRzIG9mDQo+ID4gKyBidWZmZXIgIG92ZXJydW5zIGluIEMvQysrIHByb2dyYW1zLCBh
bmQgb3RoZXIgc2ltaWxhciBlcnJvcnMsIGFzDQo+ID4gKyB3ZWxsIGFzICBwcmludGluZyBvdXQg
ZGV0YWlsZWQgZGVidWcgaW5mb3JtYXRpb24gd2hlbmV2ZXIgYW4gZXJyb3IgaXMNCj4gZGV0ZWN0
ZWQuDQo+IA0KPiANCj4gLS0NCj4gRGF2aWQgTWFyY2hhbmQNCg0K