From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 6984542A14; Fri, 28 Apr 2023 19:52:25 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 0151E40A87; Fri, 28 Apr 2023 19:52:25 +0200 (CEST) Received: from DM6FTOPR00CU001.outbound.protection.outlook.com (mail-cusazon11020022.outbound.protection.outlook.com [52.101.61.22]) by mails.dpdk.org (Postfix) with ESMTP id 965CD40698; Fri, 28 Apr 2023 19:52:22 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=gVuOQfNJ4gf4fBW/zWZDTFewB1A3IOUlZXwKga4JA1YFgf/BTcHXPYf1cdXqP6xi/brcmcuU2H4LgcvuoAEkPHWTr7FQfer90c6jYB/dK1BgY4DKmgb99VVUI95TIfOyLebYNy9uejP9vWjFHJdyOet3yupi42UJgGMI8c+LF+knrBQPfiTfPZMMhUHHQw866O3uk+2mbLNXQILxenrerymSPHW4DkNPH1prWE9S5KPRQx6xRmN7+UFAFSCF/Gf6Bq+NVAmtj0xwutpt5HF6TIAWgxcpHYwh/a96WSXPKdAZLu9ZPN9eibtBZm3wzT+KVfglLfMxeLRrkdZepruNtA== 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=IHpzxOETSlS1VcwT/ZhwV06nO9zWxdYWIY6GyPfEs/A=; b=OlqNflcDKXzEqpXKITK6FEk3G1e52gNg+jm5Zej2xTROKM2ebguPLlqkrC/FJ02bundc8xH00B1X9824Z/jr11G30vkhBpt2bcuXs0YZU/nBb/WULJvL3Q2P7mAhS1OurKUxW3xxOnlXPqWgjJUg6oaOBRo5tY6su/1wO+FuTtktkMBRJrXTS5XgPtGd/BJBh0+3Pe3cUAXtRF+B57wuK6sfxq/Fl6En5lbyo0ZXg0wK8NldAmL4p76PClz9tcq/u0K7Vt9ghheh7nG4eabPWJRa0DgxQ4EifWIBg+zpXMH4pOu3VVZg9OBWXnAQpgDI71MvSQO7NwaZvfJ7wSgG0g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=microsoft.com; dmarc=pass action=none header.from=microsoft.com; dkim=pass header.d=microsoft.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=IHpzxOETSlS1VcwT/ZhwV06nO9zWxdYWIY6GyPfEs/A=; b=KSTeTaV6QhBqStkQ1FLxxzuF/cku/ZfcD7gVFtPO4XDLQjUbEQyWcNiQweAgxAv3NfXdnrx2klxNQr9U3oFW2ZHmkCiaLi55GSZg6tOKo5ktmtg2z+QPiI+gxJGv77iK6gXkF3mYhcwKXhAL4YYVsdLyLytE7LYMZ2jZu1omBl0= Received: from PH7PR21MB3263.namprd21.prod.outlook.com (2603:10b6:510:1db::16) by PH7PR21MB3167.namprd21.prod.outlook.com (2603:10b6:510:1d7::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6340.19; Fri, 28 Apr 2023 17:52:19 +0000 Received: from PH7PR21MB3263.namprd21.prod.outlook.com ([fe80::b20d:165f:26f1:96ae]) by PH7PR21MB3263.namprd21.prod.outlook.com ([fe80::b20d:165f:26f1:96ae%6]) with mapi id 15.20.6340.018; Fri, 28 Apr 2023 17:52:19 +0000 From: Long Li To: Ferruh Yigit , Stephen Hemminger CC: "longli@linuxonhyperv.com" , Thomas Monjalon , Andrew Rybchenko , Jerin Jacob Kollanukkaran , David Marchand , "dev@dpdk.org" , Ajay Sharma , "stable@dpdk.org" , Luca Boccassi , Qi Z Zhang , Ajit Khaparde , Bruce Richardson , Konstantin Ananyev , Olivier Matz , Honnappa Nagarahalli , "techboard@dpdk.org" Subject: RE: [PATCH] net/mana: use RTE_LOG_DP for logs on datapath Thread-Topic: [PATCH] net/mana: use RTE_LOG_DP for logs on datapath Thread-Index: AQHZRjUFXhaisXbQZkOQdNjmWQDEma7ck+WAgABDk4CAAY1RAIAJ+raQgADDaICAAFXzsIAAaFCAgFZzbDCAAJXqAIAAfKsA Date: Fri, 28 Apr 2023 17:52:19 +0000 Message-ID: References: <1677012145-3559-1-git-send-email-longli@linuxonhyperv.com> <20230223100917.282f191c@hermes.local> <20230224095120.32c25481@hermes.local> <144653ea-f3ca-d3d7-60f7-49331dfc5b6d@amd.com> In-Reply-To: <144653ea-f3ca-d3d7-60f7-49331dfc5b6d@amd.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_ActionId=1ef05df0-6926-4135-9687-fa14f3dd1c1b; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_ContentBits=0; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Enabled=true; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Method=Standard; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Name=Internal; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_SetDate=2023-04-28T17:49:34Z; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_SiteId=72f988bf-86f1-41af-91ab-2d7cd011db47; authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=microsoft.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: PH7PR21MB3263:EE_|PH7PR21MB3167:EE_ x-ms-office365-filtering-correlation-id: 6b7ae551-9003-45ae-6396-08db48114fd0 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: +PGMl1mUb/Y7rsJrDCdGsBdYhcZAOrAEY3wR2zaJtJ7kpCFjlzsZnw9Vwy+iywImj8+jdaeqL+YriMgz9iHzSzDCPdE1whT/GnIkRuYR5xlw8/LokBW0Zbden6uoarE+nJmaGyVSStsR0duWElxTNT7QpSvphbf2HIuce9SsfLz8HSEOykXt+TiJqjcVUxLybb3bLqhpYoCryHC6003gcYtA0Fa1eWCePNRLXqUJJLqtYWXoFmNfvRVuN4iNZjlFsfPBpOE5lpLH39rhubrWIPNR+pqj4LXASLt1gqDZCL7Ofn8BkYINEA21qSdRWnCo/CV1PR89XzbgQIHNBtKD+c4DkLABuINkEmtJAJm/FbYLo5EjrE4IRvl8FlAF59qXPNm7XSJtFBPNKoGMGyeYdGjAGwFyqlLu2FR8RaRetGxE2zna1+J+2WKZyTnecw/NOJcDSs1OdkwbMO68mHy2tYu0bAZcFMjEztFc4EpRXxbI4zECNAm2cJjtJGT5Xwas+9Dw2M+M/fPukmzOfdDwllQUrV06k0edl8NYO/L8/sncuYQHbl5qhSs0bi7YMXRxtMFPAPCfG2Vd+wKp9245x2Q1uIXoELYb3m3lwery3284xI6YCtVimmVCBigUTseCXt04qTya5pjr2jadg7fTAa+UxPLm/t/xrbzbYxolx+s= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:PH7PR21MB3263.namprd21.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230028)(4636009)(346002)(396003)(39860400002)(376002)(366004)(136003)(451199021)(53546011)(26005)(6506007)(186003)(9686003)(55016003)(33656002)(86362001)(54906003)(8936002)(10290500003)(478600001)(8676002)(786003)(316002)(38070700005)(52536014)(83380400001)(82960400001)(7416002)(5660300002)(76116006)(66556008)(122000001)(4326008)(66476007)(8990500004)(71200400001)(38100700002)(2906002)(41300700001)(66446008)(82950400001)(66946007)(64756008)(110136005)(7696005); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?WmY3TEw3OHRaL2kzY0JRdVhRV2RHMzdaOHBoejFadTZjajNSSDZ4TkVKaUJD?= =?utf-8?B?cS9sUFZ5YVJYY3NROEpaZllhNVRWRGpmU0IwOXFoek1ETE85RllUdFh1dExW?= =?utf-8?B?VENHY3A5YThwelZaMkE3aGFHTmtaUkhCT2FaSUl0OVFzNlF5NUlZVnZvZGJ3?= =?utf-8?B?WDlqaGJHYktpenNUQys2QnloYVlkMGVpblB4V1hyYjJTaWpjRFlMZkJCVTVy?= =?utf-8?B?eEhXRkFtZnFhek10Wk4rRkNoNDJyQlV2TjNjc0lXRFZyZlZPbHBscVFtSC9K?= =?utf-8?B?a3psOTI4WkpNdEVPN0w4S2Z3YS9SL25kZXhlQ3dLM2xCM2V5ZFZNUVowMllD?= =?utf-8?B?NEVIUlI0QWwreGZueno1NDRISC94WEh4UC90UStSbkxnaXVFcExveWJYeVdG?= =?utf-8?B?bHVCei9ZY2l2a05JQkpDS3E3MmNTUE50RlptVXpmYmlGK3ZmZ1liZmRnN0lP?= =?utf-8?B?RUliQ1lWbnBSUlJ0UWEyWEhkY3ZXWjRTTVVpTFh1Q2ZXZVBrNW5YSnhRcVJC?= =?utf-8?B?eFFSUnBoMjVNVnhTT05KUy9Ra25ra21IQ3dvREhHZ2hpNklDeTVVZXRncGU0?= =?utf-8?B?K1gvdGZZbEFJRXg2NC9vRUxpcSt5SjBtUFVPd3B3THNkK3FDc0w5ZGZKVnlw?= =?utf-8?B?TUg2MlZpMTZmRElualpXaGgrQ2pURXU1WEM0VytxV2F5VURPVTgrN0VNeDdG?= =?utf-8?B?WUo2Q1hwNk9jTCs0clIxUndFVXNmUTAyZkZlT0tqbFU4T2dqc3g3cXk2VXpq?= =?utf-8?B?VGpYdjJqZzF5SjVQcE1rK09pNm9welBkWjB6MjhKb1FjZHJ4bGMrYmYxVjlq?= =?utf-8?B?MFVRMDJubVBnYThuVGE3M3JxcUl3MGM2Ti9PQlJDc3VCNHJuQUYySHdnY3Z2?= =?utf-8?B?UzlwMFJjTDYxVnBzMU9RWGtzQ3JORlVkSitPbno4bmtiaFlMM0N0dGhLYzVv?= =?utf-8?B?Wk4rMVA2Z0xaSjJzQzRINzhoWCtMRXc1MG1JL1pWd0lQTHkrRFpBakVJY1VG?= =?utf-8?B?aDJHT2JpdTdad0x3TlpETGdvTVRFck9nRE5YYmp1TU5PbEFQc25wTUFUR2lU?= =?utf-8?B?V3FlaStLOGVWZFBiYVUxUldRSlhZVTI1NjVsRzJVcGNSeDhJSmdkRUQ5bVJp?= =?utf-8?B?STMrQXIrTEdFNDlkQTVRUTZtTWlpcFlxWFZQdzkrK1kzeEJNckVxV3lYQXoy?= =?utf-8?B?d1ZoNUs0WXd4bS9RK0JPV2NDcGtPY3FVMndhNm5pc2NScEE2K0FhSWgrb1Fo?= =?utf-8?B?RzZ6WFVtckllRVB0L0dERUxsUGtLYkR3TUdYUklZVmViQlM0RzRpVkd6OVJL?= =?utf-8?B?Z1R3eEtEU2V5Y3BaQW5xdjE4QU9sREtzby9JMU95cnN2aUc4cDZlS3IrSWli?= =?utf-8?B?eGd5NkJjTVFHTVpLeUZsVGlhWUE0eThuY2orS0t1OTdYSkxabWFMV3dNYnZZ?= =?utf-8?B?TXhCM3gvaUpqZEFhNTlOdks4TFhaY1lSNDdWSVhVcnozbStpOHM1VzRvNXNr?= =?utf-8?B?RnY0TVN1Z2pSd1dZQ0UwSFNyaWhsZnJXVGV2V3g4MGdITGVCVUxKaG5aRDNv?= =?utf-8?B?YWgxSFlaWCswRjJjUW94K0ZvOUhzZjJldUFVQ3U0UW05OCt6a3JPODdDSmVC?= =?utf-8?B?QWg5UjhvcldxanRaM3lJVktnKzVBcGJ1TURXWVBQQWhFYTY3emZFUDlmblJ3?= =?utf-8?B?YnhDZDhKamNNQmxNbVlrQ0doanBXVXJhR1R6V25hRHZKbUhiR3dIbmp1ZE9R?= =?utf-8?B?dmZ2MFV0RklabmdkNGQxNEJtYm1EZ0JuYUxWcDVSbWhmYXRpV3luSDY2citL?= =?utf-8?B?R3pWWERVWlM4b2JVU3B3eUs3UmRYcXBHWkJyV1lYUUhOS2RGanU4cVByVWta?= =?utf-8?B?VC9Mb1dvZGo2dFREQUVWZXd3aUd6VjhIZ2dScGxvU1BCaG80VkU5NHBKZk1w?= =?utf-8?B?c3dnYUtvV1l4ekIxSnlxV1B0ekxpVG15RGFldlVjMWIzN1ZmMC9DN0JlWEdT?= =?utf-8?B?a0VYYVZvTjBDbDJJSUpWWDZNZGQrNjU0ZFZOZVliY1V6TDlzcGtrK3V5STdl?= =?utf-8?B?TkduY29xaCs4ZWJXKzIzK0h0cW5QTTFFa2RDZHdCbkt4aVk5c3RSbDcrWk9B?= =?utf-8?Q?I2CRFXeok6meuMnEULYTa7nVC?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: microsoft.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PH7PR21MB3263.namprd21.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6b7ae551-9003-45ae-6396-08db48114fd0 X-MS-Exchange-CrossTenant-originalarrivaltime: 28 Apr 2023 17:52:19.3223 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 72f988bf-86f1-41af-91ab-2d7cd011db47 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: dadLw+Ki+90se/0pdYQiGv+tZkNaBixq7c3miHj44E4QvzSh0WU5IS4aUPBYxWAZfUFJe2nxZ8IBi84ERTAUWg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR21MB3167 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org PlN1YmplY3Q6IFJlOiBbUEFUQ0hdIG5ldC9tYW5hOiB1c2UgUlRFX0xPR19EUCBmb3IgbG9ncyBv biBkYXRhcGF0aA0KPg0KPk9uIDQvMjgvMjAyMyAyOjI5IEFNLCBMb25nIExpIHdyb3RlOg0KPj4N Cj4+DQo+Pj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4+PiBGcm9tOiBGZXJydWggWWln aXQgPGZlcnJ1aC55aWdpdEBhbWQuY29tPg0KPj4+IFNlbnQ6IEZyaWRheSwgTWFyY2ggMywgMjAy MyA1OjE1IFBNDQo+Pj4gVG86IExvbmcgTGkgPGxvbmdsaUBtaWNyb3NvZnQuY29tPjsgU3RlcGhl biBIZW1taW5nZXINCj4+PiA8c3RlcGhlbkBuZXR3b3JrcGx1bWJlci5vcmc+DQo+Pj4gQ2M6IGxv bmdsaUBsaW51eG9uaHlwZXJ2LmNvbTsgVGhvbWFzIE1vbmphbG9uDQo+PHRob21hc0Btb25qYWxv bi5uZXQ+Ow0KPj4+IEFuZHJldyBSeWJjaGVua28gPGFuZHJldy5yeWJjaGVua29Ab2t0ZXRsYWJz LnJ1PjsgSmVyaW4gSmFjb2INCj4+PiBLb2xsYW51a2thcmFuIDxqZXJpbmpAbWFydmVsbC5jb20+ OyBEYXZpZCBNYXJjaGFuZA0KPj4+IDxkYXZpZC5tYXJjaGFuZEByZWRoYXQuY29tPjsgZGV2QGRw ZGsub3JnOyBBamF5IFNoYXJtYQ0KPj4+IDxzaGFybWFhamF5QG1pY3Jvc29mdC5jb20+OyBzdGFi bGVAZHBkay5vcmc7IEx1Y2EgQm9jY2Fzc2kNCj4+PiA8Ymx1Y2FAZGViaWFuLm9yZz47IFFpIFog WmhhbmcgPHFpLnouemhhbmdAaW50ZWwuY29tPjsgQWppdCBLaGFwYXJkZQ0KPj4+IDxhaml0Lmto YXBhcmRlQGJyb2FkY29tLmNvbT47IEJydWNlIFJpY2hhcmRzb24NCj4+PiA8YnJ1Y2UucmljaGFy ZHNvbkBpbnRlbC5jb20+OyBLb25zdGFudGluIEFuYW55ZXYNCj4+PiA8a29uc3RhbnRpbi52LmFu YW55ZXZAeWFuZGV4LnJ1PjsgT2xpdmllciBNYXR6DQo+Pj4gPG9saXZpZXIubWF0ekA2d2luZC5j b20+OyBIb25uYXBwYSBOYWdhcmFoYWxsaQ0KPj4+IDxIb25uYXBwYS5OYWdhcmFoYWxsaUBhcm0u Y29tPjsgdGVjaGJvYXJkQGRwZGsub3JnDQo+Pj4gU3ViamVjdDogUmU6IFtQQVRDSF0gbmV0L21h bmE6IHVzZSBSVEVfTE9HX0RQIGZvciBsb2dzIG9uIGRhdGFwYXRoDQo+Pj4NCj4+PiBPbiAzLzMv MjAyMyA3OjA0IFBNLCBMb25nIExpIHdyb3RlOg0KPj4+Pj4gU3ViamVjdDogUmU6IFtQQVRDSF0g bmV0L21hbmE6IHVzZSBSVEVfTE9HX0RQIGZvciBsb2dzIG9uIGRhdGFwYXRoDQo+Pj4+Pg0KPj4+ Pj4gT24gMy8zLzIwMjMgMjoxNiBBTSwgTG9uZyBMaSB3cm90ZToNCj4+Pj4+Pj4gU3ViamVjdDog UmU6IFtQQVRDSF0gbmV0L21hbmE6IHVzZSBSVEVfTE9HX0RQIGZvciBsb2dzIG9uDQo+Pj4+Pj4+ IGRhdGFwYXRoDQo+Pj4+Pj4+DQo+Pj4+Pj4+IE9uIFRodSwgMjMgRmViIDIwMjMgMTA6MDk6MTcg LTA4MDAgU3RlcGhlbiBIZW1taW5nZXINCj4+Pj4+Pj4gPHN0ZXBoZW5AbmV0d29ya3BsdW1iZXIu b3JnPiB3cm90ZToNCj4+Pj4+Pj4NCj4+Pj4+Pj4+IE9uIFRodSwgMjMgRmViIDIwMjMgMTQ6MDc6 MjUgKzAwMDAgRmVycnVoIFlpZ2l0DQo+Pj4+Pj4+PiA8ZmVycnVoLnlpZ2l0QGFtZC5jb20+IHdy b3RlOg0KPj4+Pj4+Pj4NCj4+Pj4+Pj4+PiBPdmVyYWxsIEkgYW0gbm90IHN1cmUgaWYgYW55b25l IGlzIGludGVyZXN0ZWQgaW4gZHJpdmVyDQo+Pj4+Pj4+Pj4gZGF0YXBhdGggbG9ncyBvdGhlciB0 aGFuIGRyaXZlciBkZXZlbG9wZXJzIHRoZW1zZWx2ZXMuDQo+Pj4+Pj4+Pj4NCj4+Pj4+Pj4+PiBG b3IgZGF0YXBhdGggbG9nZ2luZyBJIHRoaW5rIHRoZXJlIGFyZSB0d28gY29uY2VybnMsDQo+Pj4+ Pj4+Pj4gMSkgSXQgc2hvdWxkIG5vdCBlYXQgKmFueSogY3ljbGVzIHVubGVzcyBleHBsaWNpdGx5 IGVuYWJsZWQNCj4+Pj4+Pj4+PiAyKSBDYXBhYmlsaXR5IG9mIGVuYWJsZS9kaXNhYmxlIHRoZW0g YmVjYXVzZSBvZiBtYXNzaXZlIGFtb3VudA0KPj4+Pj4+Pj4+IG9mIGxvZyBpdCBjYW4gZ2VuZXJh dGUNCj4+Pj4+Pj4+Pg0KPj4+Pj4+Pj4+DQo+Pj4+Pj4+Pj4gQ3VycmVudGx5IHRoZXJlIGFyZSB0 d28gZXhpc3RpbmcgYXBwcm9hY2hlcyBmb3IgZHJpdmVyIGRhdGFwYXRoDQo+bG9nZ2luZzoNCj4+ Pj4+Pj4+PiBpKSAgQ29udHJvbGxlZCBieSAnUlRFX0VUSERFVl9ERUJVR19SWC9UWCcgY29tcGls ZSB0aW1lIGZsYWcsDQo+Pj4+Pj4+Pj4gICAgIHdoZW4gZW5hYmxlZCAncnRlX2xvZygpJyBpcyB1 c2VkIHdpdGggUngvVHggc3BlY2lmaWMgbG9nIHR5cGUuDQo+Pj4+Pj4+Pj4gaWkpICdSVEVfTE9H X0RQJyAnLCBjb21waWxlIHRpbWUgY29udHJvbCBwZXIgbG9ndHlwZSB2aWENCj4+Pj4+Pj4+PiAg ICAgJ1JURV9MT0dfRFBfTEVWRUwnLA0KPj4+Pj4+Pj4+ICAgICAgd2hlbiBlbmFibGVkICdydGVf bG9nKCknIGlzIHVzZWQgd2l0aCBQTUQgbG9ndHlwZS4NCj4+Pj4+Pj4+Pg0KPj4+Pj4+Pj4+DQo+ Pj4+Pj4+Pj4gSW4gKGlpKSwgbmVlZCB0byByZS1jb21waWxlIGNvZGUgd2hlbiB5b3UgbmVlZCB0 byBpbmNyZWFzZSB0aGUNCj4+Pj4+Pj4+PiBsb2cgdmVyYm9zaXR5LCBhbmQgaXQgbGVha3MgdG8g cHJvZHVjdGlvbiBjb2RlIGFzIG1lbnRpb25lZCBhYm92ZS4NCj4+Pj4+Pj4+Pg0KPj4+Pj4+Pj4+ IEZvciAoaSksIGRldmVsb3BlciBjb21waWxlcyBvbmNlIGVuYWJsaW5nIGRlYnVnLCBsYXRlciBj YW4gZmluZQ0KPj4+Pj4+Pj4+IGdyYWluIGxvZyBsZXZlbCBkeW5hbWljYWxseS4gVGhpcyBpcyBt b3JlIERQREsgZGV2ZWxvcGVyDQo+Pj4+Pj4+Pj4gZm9jdXNlZA0KPj4+Pj4gYXBwcm9hY2guDQo+ Pj4+Pj4+Pj4NCj4+Pj4+Pj4+Pg0KPj4+Pj4+Pj4+IFsxXQ0KPj4+Pj4+Pj4+IEFjY29yZGluZyBh Ym92ZSwgd2hhdCBkbyB5b3UgdGhpbmsgdG8gcmV0aXJlICdSVEVfTE9HX0RQJywgKGF0DQo+Pj4+ Pj4+Pj4gbGVhc3Qgd2l0aGluIGV0aGRldiBkYXRhcGF0aCksIGFuZCBjaG9zZSAoaSkgYXMgcHJl ZmVycmVkDQo+Pj4+Pj4+Pj4gZGF0YXBhdGgNCj4+Pj4+IGxvZ2dpbmc/DQo+Pj4+Pj4+Pg0KPj4+ Pj4+Pj4gSSBhZ3JlZSwgdGhlIGN1cnJlbnQgdHgvcnggbG9nZ2luZyBpcyBhIG1lc3MuDQo+Pj4+ Pj4+PiBFYWNoIGRyaXZlciBpcyBkaWZmZXJlbnQsIGVhY2ggZHJpdmVyIGhhcyB0byBoYXZlIHNv bWV0aGluZyB0bw0KPj4+Pj4+Pj4gZW5hYmxlIGl0OyBhbmQgaXQgcmVhbGx5IGlzbid0IHVzZWZ1 bCBiZXlvbmQgdGhlIGRyaXZlciBkZXZlbG9wZXIuDQo+Pj4+Pj4+Pg0KPj4+Pj4+Pj4gVXNpbmcg dHJhY2luZyBzZWVtcyBsaWtlIGEgbXVjaCBiZXR0ZXIgb3B0aW9uLiBDb3VsZCB3ZSBhZ3JlZSBv bg0KPj4+Pj4+Pj4gYSBjb21tb24gc2V0IG9mIHRyYWNlIHBvaW50cyBmb3IgZHJpdmVycyBhbmQg Zml4IGFsbCBkcml2ZXJzIHRvDQo+Pj4+Pj4+PiB1c2UgdGhlIHNhbWUNCj4+Pj4+Pj4gdGhpbmcu DQo+Pj4+Pj4+PiBQcm9iYWJseSB3aWxsIGNhdXNlIHNvbWUgdXBzZXQgYW1vbmcgZHJpdmVyIGRl dmVsb3BlcnM6DQo+Pj4+Pj4+PiAid2hlcmUgZGlkIG15IG5pY2UgcHJpbnRmJ3MgZ28sIG5vdyBJ IGhhdmUgdG8gbGVhcm4gdHJhY2luZyINCj4+Pj4+Pj4+IGJ1dCBEUERLIGhhcyBhIGdvb2QgZmFj aWxpdHkgaGVyZSwgbGV0cyB1c2UgaXQuDQo+Pj4+Pj4+Pg0KPj4+Pj4+Pj4gTXkgcHJvcG9zYWwg d291bGQgYmU6DQo+Pj4+Pj4+PiAJLSBhZ3JlZSBvbiBjb21tb24gc2V0IG9mIHRyYWNlIHBvaW50 cw0KPj4+Pj4+Pj4gCS0gYXBwbHkgdG8gYWxsIGRyaXZlcnMNCj4+Pj4+Pj4+IAktIHJlbW92ZSBS VEVfTE9HX0RQKCkNCj4+Pj4+Pj4+IAktIHJlbW92ZSBwZXIgZHJpdmVyIFJYL1RYIG9wdGlvbnMN Cj4+Pj4+Pj4+IAktIHNpZGUgZWZmZWN0LCBtb3JlIHVzZXMgb2YgUlRFX0xPR1RZUEVfUE1EIGdv IGF3YXkuDQo+Pj4+Pj4+DQo+Pj4+Pj4+IEhlcmUgaXMgYW4gZXhhbXBsZSBvZiB1c2luZyB0cmFj ZXBvaW50cyBpbnN0ZWFkLg0KPj4+Pj4+PiBDb21waWxlIHRlc3RlZCBmb3IgZXhhbXBsZSBvbmx5 Lg0KPj4+Pj4+Pg0KPj4+Pj4+PiBOb3RlOiB1c2luZyB0cmFjZXBvaW50cyBpdCBpcyBwb3NzaWJs ZSB0byBrZWVwIHNvbWUgb2YgdGhlDQo+Pj4+Pj4+IHRyYWNlcG9pbnRzIGV2ZW4gaWYgZmFzdHBh dGggaXMgbm90IGVuYWJsZWQuICBUaGluZ3MgbGlrZSBydW5uaW5nDQo+Pj4+Pj4+IG91dCBvZiBU eCBvciBNYnVmIGlzIG5vdCBzb21ldGhpbmcgdGhhdCBpcyBwZXJmIGNyaXRpY2FsOyBidXQNCj4+ Pj4+Pj4gd291bGQgYmUgZ29vZCBmb3INCj4+Pj4+IGFwcGxpY2F0aW9uIHRvIHNlZS4NCj4+Pj4+ Pg0KPj4+Pj4+IFRoYW5rIHlvdSBmb3IgdGhlIGV4YW1wbGUuDQo+Pj4+Pj4NCj4+Pj4+PiBJIHNl bnQgYW5vdGhlciBwYXRjaCBjb252ZXJ0aW5nIGRhdGEgcGF0aCBsb2dzIChtYW5hKSB0byB0cmFj ZSBwb2ludHMuDQo+Pj4+Pj4NCj4+Pj4+DQo+Pj4+PiBIaSBMb25nLA0KPj4+Pj4NCj4+Pj4+IFRo YW5rcyBmb3IgdGhlIGVmZm9ydCwgeW91IHdlcmUgcXVpY2sgb24gdGhpcyB3aGlsZSBkaXNjdXNz aW9uIGlzIGdvaW5nIG9uLg0KPj4+Pj4NCj4+Pj4+IEFsdGhvdWdoIHRyYWNlcG9pbnQgaXMgYSBn b29kIGZlYXR1cmUsIEkgYW0gbm90IHN1cmUgaWYgaXQgY2FuDQo+Pj4+PiBmdWxseSByZXBsYWNl IHRoZSBsb2dnaW5nLg0KPj4+Pj4gSSB0aGluayB1c2FnZSBpcyBzbGlnaHRseSBkaWZmZXJlbnQs IHRyYWNlIGlzIG1pc3NpbmcgY3VzdG9tIGh1bWFuDQo+Pj4+PiByZWFkYWJsZSBtZXNzYWdlLCB3 aGljaCBjYW4gYmUgdmVyeSBoZWxwZnVsIGZvciBlbmQgdXNlci4NCj4+Pj4+DQo+Pj4+PiBBbmQg b3ZlcmFsbCwgaXQgaXMgYSBoaWdoIGxldmVsIGRlY2lzaW9uIHRvIHN3aXRjaCBsb2dnaW5nIHRv DQo+Pj4+PiB0cmFjZSwgaXQgaXMgaW5jb25zaXN0ZW50IHRvIHN3aXRjaCBvbmx5IHNpbmdsZSBk cml2ZXIsIHBlcmhhcHMNCj4+Pj4+IHRlY2hib2FyZA0KPj4+Pj4gKGNjJ2VkKSBjYW4gZGlzY3Vz cyB0aGlzLg0KPj4+Pj4NCj4+Pj4+IFVudGlsIHN1Y2ggY29uc2Vuc3VzIHJlYWNoZWQsIEkgdGhp bmsgZHJpdmVyIHNob3VsZCBjb250aW51ZSB3aXRoIGxvZ2dpbmcuDQo+Pj4+Pg0KPj4+Pj4NCj4+ Pj4+DQo+Pj4+PiBBbmQgZm9yIHRoZSBsb2dnaW5nLCBJIHN1Z2dlc3Qgb3B0aW9uIChpKSBhYm92 ZSwgSSB3YXMgaG9waW5nIG1vcmUNCj4+Pj4+IGNvbW1lbnRzIGJ1dCBzaW5jZSBpdCBpcyBtaXNz aW5nIEkgaG9wZSB0aGlzIGNhbiBiZSBkaXNjdXNzZWQgaW4NCj4+Pj4+IHRlY2hib2FyZCBmb3Ig YSBjb25jbHVzaW9uLg0KPj4+Pg0KPj4+PiBIaSBGZXJydWgsDQo+Pj4+DQo+Pj4+IEFyZSB5b3Ug c3VnZ2VzdGluZyB0aGF0IE1BTkEgc2hvdWxkIHVzZSAnUlRFX0VUSERFVl9ERUJVR19SWC9UWCc/ DQo+Pj4+DQo+Pj4+IEknbSBoYXBweSB0byBpbXBsZW1lbnQgdGhlIGxvZ2dpbmcgaW4gdGhpcyB3 YXkuDQo+Pj4+DQo+Pj4NCj4+PiBZZXMsIHRoYXQgbG9va3MgdG8gbWUgYmV0dGVyIGJhbGFuY2Ug Zm9yIGNvbXBpbGUgdGltZSAvIHJ1bnRpbWUNCj4+PiBjb25maWcgZm9yIGRyaXZlIGRldmVsb3Bl cnMuDQo+Pj4NCj4+PiBCdXQgaXQgcHJldmVudHMgcHJvZHVjdCBjb2RlIC8gZW5kIHVzZXIgdG8g Z2V0IGRhdGEgcGF0aCBsb2dzLA0KPj4+IGFsdGhvdWdoIEkgYmVsaWV2ZSB0aGlzIGlzIE9LIEkg YW0gbm90IHN1cmUgaG93IHVzZWZ1bCBkYXRhcGF0aCBsb2dzDQo+Pj4gaW4gcHJvZHVjdGlvbiBj b2RlLCB0aGF0IGlzIHdoeSBJIGFtIGxvb2tpbmcgZm9yIG1vcmUgY29tbWVudCBmb3IgYQ0KPmRl Y2lzaW9uLg0KPj4+DQo+Pj4gTGV0J3Mgd2FpdCBmb3IgbmV4dCB0ZWNoYm9hcmQgbWVldGluZywg aW4gY2FzZSB0aGlzIGlzIGRpc2N1c3NlZA0KPj4+IHRoZXJlLCBiZWZvcmUgbWFraW5nIG5ldyBp bXBsZW1lbnRhdGlvbi4NCj4+DQo+PiBISSBGZXJydWgsDQo+Pg0KPj4gSGF2ZSB3ZSByZWFjaGVk IGEgZGVjaXNpb24gb24gaG93IHRvIGltcGxlbWVudCBkYXRhIHBhdGggbG9ncz8NCj4+DQo+DQo+ SGkgTG9uZywNCj4NCj5JIGFtIG5vdCBhd2FyZSBvZiBhIHJlc3VsdCBvbiB0aGUgbWF0dGVyLCBs ZXQgbWUgY29udGludWUgd2l0aCB0aGlzIHBhdGNoIHRvIG5vdA0KPmJsb2NrIGl0IG1vcmUuDQoN ClRoYW5rIHlvdS4NCg0KSSBoYXZlIHN1Ym1pdHRlZCBzZXZlcmFsIG90aGVyIHBhdGNoZXMgc2lu Y2UgdGhpcyBwYXRjaCB3YXMgc3VibWl0dGVkLiBUaGVyZSBtYXkgYmUgc29tZSBjb25mbGljdHMu DQoNClBsZWFzZSBsZXQgbWUga25vdyBpZiBJIHNob3VsZCByZWJhc2UgdGhpcyBwYXRjaCB0byBs YXRlc3QgY29kZSBzbyBpdCB3aWxsIGJlIHN0cmFpZ2h0Zm9yd2FyZCB0byBhcHBseS4NCg0KTG9u Zw0K