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 F097FA054D; Fri, 23 Sep 2022 20:31:44 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 94966406A2; Fri, 23 Sep 2022 20:31:44 +0200 (CEST) Received: from na01-obe.outbound.protection.outlook.com (mail-cusazon11020017.outbound.protection.outlook.com [52.101.61.17]) by mails.dpdk.org (Postfix) with ESMTP id 87C0340156 for ; Fri, 23 Sep 2022 20:31:42 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=A08BAel1bJsIRRcrLmIEXwqJyig0yqYmP81GeWpgjlZ0CIFHq0xIwuqoaVTc9TKyvfSQ6BsXrOyYTNqInVJwCydVd6cUVNzKn5AE/4FWbhBu/voW1+gP4ESn7WDylGqPKFDTVT0pJJFDpQpQ3g0Wwal7xGO+gpDnoU7zO4O7jg94yS3Q/E3Kc2DQCeUWMvVOxhwVQ5COFz7qkAxtbpLIhF3ttvTPQLpatXD6TDPKUOx/QEfDb8W9a1os4PQyZCCZ8M/9UwP4i642jcFLG8aL58eNP7iN+H8wdSwGBFmUs+gk+p9Z/4woKnP3P+/6m2YdidCG+TuxQrqVMGqOUEKJjA== 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=n6V7730eivbncNHJMse1lEx8XQbBNplbuwHxQvbcWZY=; b=Ou0vFVo4vDP5XQotZLLIRitFi9z76yc9MmbQ6PTonUomPCGw3UX7wvYkK6gkwtWyVUAvbEhnHFSa4AfzY8OYEQZOFqugGetanchIPLENKlvtSgAwFF96EnyuOVPwFkQpKl01w28zpNJW85Kqytwtsp2Jg6nITYI2Qaz7RSUe1Ka7wjumJyWuwTopV/M0zFkhadP+1Aj8i9QI6JEhYSQzYBhWntvA0KWds1QXl390+CKa6eSoiklODvQXQ3l8wV9AiZvYpNI3Kz3nb+r2WSiejn6mDhel85xTdqQqLE+hqSKl0yMWkLPRpiYS4BT7N/ZiaBukis68Z5jpagvNPjlabA== 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=n6V7730eivbncNHJMse1lEx8XQbBNplbuwHxQvbcWZY=; b=FCyBpE3bPwmHuphJtTOYo2lkndVJdoozVc1AoNbJxsFf65A742oRcXttd4IEpLdMJImqMu/XxQ+VWc6FEQXHsx9WoNtRTx37AK+LN3UqiKlit7RnYnpVO1zgH5oEoO8vW1J/1DWgeCsjqlcM2Vyj51rlgeZnzgnk13aWsJmPRcw= Received: from PH7PR21MB3263.namprd21.prod.outlook.com (2603:10b6:510:1db::16) by IA1PR21MB3571.namprd21.prod.outlook.com (2603:10b6:208:3e0::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5676.11; Fri, 23 Sep 2022 18:31:38 +0000 Received: from PH7PR21MB3263.namprd21.prod.outlook.com ([fe80::ce6d:5482:f64f:2ce6]) by PH7PR21MB3263.namprd21.prod.outlook.com ([fe80::ce6d:5482:f64f:2ce6%7]) with mapi id 15.20.5676.004; Fri, 23 Sep 2022 18:31:38 +0000 From: Long Li To: Ferruh Yigit , Ferruh Yigit CC: "dev@dpdk.org" , Ajay Sharma , Stephen Hemminger Subject: RE: [Patch v8 01/18] net/mana: add basic driver with build environment and doc Thread-Topic: [Patch v8 01/18] net/mana: add basic driver with build environment and doc Thread-Index: AQHYw83k220cmI2hk0uJJRCzZYlTRK3qPx8AgAMudjA= Date: Fri, 23 Sep 2022 18:31:38 +0000 Message-ID: References: <1662169260-4953-2-git-send-email-longli@linuxonhyperv.com> <1662674189-29524-1-git-send-email-longli@linuxonhyperv.com> <4413343c-8b1e-e447-b504-c0d44dd6b467@amd.com> In-Reply-To: <4413343c-8b1e-e447-b504-c0d44dd6b467@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=03064703-64d6-4859-96b8-5cc5cada7329; 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=2022-09-23T18:30:46Z; 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_|IA1PR21MB3571:EE_ x-ms-office365-filtering-correlation-id: cbc46ce8-fdad-418a-5a25-08da9d91da23 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: pubFlKWMpZGpS6FQSHU7Rmm2qLYfWoZsShyMH6DRmffiR58ld+HqzvzwWUt8jow0/2rrA1vJBnMBTGMwxlFBw0dC1pc7ns7gnWUUWNcZSpObvH223aaZND6JIY7OeEwCEt8hipzP/RvEtH442Ah2YshJYmlJbK2mGYNjnZpyXXYBgHQSVyHXwcG+IHyyRv0X0nkYaraaVGY7p0rSysYkL65zf0mLHK8ek3TYWvyz+Zpv3tF1qM5pkgSdiaqxalcd+YO6POwUrec6s8xuy8hBW2N5Bv5ieKW1pa82Jdi8p6OD5AVEXb2XecPOIHbSIF/e3ByVobdQ4FsNqep0QQncXBCx+y/gKgh+56kNSdQIxZ86o9LSO2rvJ1zwJ9ZCZcwCKcjsdvY3ecxdUurCq6Gu3j/b5lLIOp6KVx3A/9Ll10iEY403vg0mwaxPZMdw7Jmou4E5f5EUpsqmG8WkjqrPUav2Uf7zoyZy8dbgnG/nKgznPfMFlSntD24x/BMiAa1DEXvfkQRk+eQ32P/7OxUOOmvuCacztlbiBn8DmeN5xg/cpUK+QSm+U24oSPaFS2gIUousD8zqS0lM+KHEI5WRTHr80qLkqHE0wvo1GgFl5KqnP48Kyuqh0FSeFcsutvxivL6CqjK/fM32xaBhYA+OGIdmNpbHlpdEX+CtVkvVE8AUBuLyOkG2cfvqXJ4Y3JB6SZch6Pb/vaMHDgk+z0HwMajtU5YhRWRjs7oX9R8izsnUbESlhVcbOiTr18gI8yx4hOwG0uWc5u/gj/4WJ3YzC+JkL3KG1rX8p7g2g1vHF5DS+mxMDg2a2SnmgiqaeGrh 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:(13230022)(4636009)(346002)(396003)(39860400002)(366004)(376002)(136003)(451199015)(71200400001)(38070700005)(186003)(2906002)(316002)(66446008)(33656002)(41300700001)(107886003)(8990500004)(38100700002)(82950400001)(82960400001)(66476007)(86362001)(54906003)(7696005)(6506007)(110136005)(478600001)(8676002)(66556008)(64756008)(4326008)(76116006)(66946007)(10290500003)(53546011)(5660300002)(26005)(52536014)(9686003)(8936002)(122000001)(55016003)(83380400001); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?K2ZWVHZuU3FBUy9PUlhGZHBwRzIvelpySlFtb2UyMTBQZkdwNURibTN4YnhU?= =?utf-8?B?MTRWbW02NlpCcWZTZEtycnR3T0tHSWltMlkwK0R0Y1ZVSDYxOXFIT282NStM?= =?utf-8?B?Y09Ja3E5WmNpdUZCWmdIaHphU3hJaVo2VWNrNUV3cmMvd2xnTTdHK09BeitU?= =?utf-8?B?dXFRdnc4WUZnUkhOVmlOODNtWUxTdklSS0YwaEgwTHczQlRSRVY5dXhCRlZP?= =?utf-8?B?cUhOcy95bnF6NnZ2OVZSdnVwYUVleGVBMyt5RVJmS3drcDR6STZBaUJpckxC?= =?utf-8?B?Zng0eEdiMW5OWS9aMG1rdC9LSDF1azM4ajEyaXZuSGxDSkRNb1pZd3pVWVpN?= =?utf-8?B?ZlYxY1AxT3BDRm5IcDN6dmVtT2RIa3N3bHBYRDFzSWVHaUtFd0xyNDQwVitO?= =?utf-8?B?a2xXWUt2U3RKRUkvTEdTRnRpLzU5aERQck5qQUxTVzYxTXhsQSsyK0d0T1Uv?= =?utf-8?B?emhJblJSRWhTQ1VsWko5bTdVaGRmVVhsWUswVHErSHpQLzcrd0I1L0J5SVB3?= =?utf-8?B?SDRiQkFsUHpqaVZYZzRtN3ZhcDZYcG1IcU1WQXVqT1ZzbTRPYXR6OGlIWEZj?= =?utf-8?B?K2dZSmN1bjA5blU0RDJNZHJVZXhidlhXbzFSK2trT2pwVmQwS2E5TzlMWklu?= =?utf-8?B?ZjRoNGNEc3V2TUwyOG1YYXVEOUVHVmw3NlZSRmcvV1ZidjdUZ1puczdMd05R?= =?utf-8?B?ZVY4S0NQMXNwam5EaE9hV3NsUkF1bEVKR2RvWHNoNThnL3R2MVNkZk93Undk?= =?utf-8?B?NFJPbXY0MmptR3JvNjh1UWNqakluMDk3UVFpUzYyOTNLN292YWhtbWZuVFg0?= =?utf-8?B?eHYrYTNGSGV3bHlHcmt0WUpoM2FHcFp5SU43bDdzeHBvdGNYYmlzdU9idWxp?= =?utf-8?B?ZHV6UHJXTEVqdk1TRnJYTld1VktQUkF4WmVIR2pDTlhVWE9TZ1B4QmhNNEhE?= =?utf-8?B?b1gyS2lmZzVUdEthaUI3blhHM1BqVE4zRmdwOWx1cExsNCtHVHMvdXhqcDNJ?= =?utf-8?B?RzVWOUpsSUg5Y0txa2dYZEVjREI5MVd3eXdPMzZVdGQzTzJNT2JQcW8wZkZD?= =?utf-8?B?c0lKSk1qRXAwdVZzaU9yaEVEMENud0xhVVh6cDcyKzQySnhUU25DM2dWUjQy?= =?utf-8?B?UGNTcml1bTJpbzVNcXhLRDExRGRTbklpT3hwc0ZydnpSRlBHMlcvcGdaTHM5?= =?utf-8?B?ZFZ4U09vNFEwNnlwY2JIemhPQTdUZGZQQ3ljMVc1b05semUyM3R6QU41dzFN?= =?utf-8?B?d3JQZWRlOXN1QzRrdDEzQ2NDWnB1NXpsbmZqOThhMVF4Nkk1SW9aVWtpcHNO?= =?utf-8?B?K0JjcW1KWWJ5N0ZMUTdtMUh2VUVyRFljdlNrM3lCQWorSmdVSlFtdkwzNlNm?= =?utf-8?B?cEZRWE9DeTFNcHNhbzlWMXlhVDlJT1R4SHlwRmpadGFpMXJzaHVKdDlUaWFl?= =?utf-8?B?cTlKSzdqb0NOOHBPRlhMWVN4TXZKbVp0dEI1MkpJNUNDejdVdE1zVG1KbUlF?= =?utf-8?B?dEZTZXBRdkE5SUR6NU5Ra0FlM2hEQ2Y0cll4cWVSRVBEeGYyQ1NNUE50c0Mr?= =?utf-8?B?aDFpRHdMdmUxWTFCemhpek4rdERNUnZVSUMvVm8zKzQxVC9EaDlSM2IwZTd3?= =?utf-8?B?MHlTcGY5NXhUdWJyUXVKMDZ2cGc0Mlh3ZWtHaXFRaVdCcFlGdmhNbWFpV01V?= =?utf-8?B?LzNCVmF3ekVCWUY0NnFCOGJnTlYwM2w3c05GM2xBTW9TS1NuQ2hLZkhEYzlO?= =?utf-8?B?WC9wNFF6UlV0U1czUmVXcWxNZXZUUkptR1BsT1lrM2loWWZ3dW4vMzZLVU5w?= =?utf-8?B?bEJ1OHZJSHRZVm5Cd21aeXRnNm52TlhqRW5HRGlRUG5SOG5OMWp1N3dWaVFK?= =?utf-8?B?Nm5DUHZRUTJwd1k2Ykxlc1U0bnoxZVAxenN6Y2JwYkkwb1ZSVXd5cEhTK2Uv?= =?utf-8?B?TFlvTVM3cWFYem9MOHFidnQxQldESTBwT1pxTzdFQ3ROaXcyenJQUnU2S1Ay?= =?utf-8?B?SUpUWXN1WnUxaDcyTFRCcGhhUGpiLzdiMlM5S3YrbUprVnFQWGhyK2FaeUYr?= =?utf-8?B?djN5dDAyS3E3SnVaVlF2UHo4YndiUTJJOWlYemRXNVRScm5mL25pZWpNVW84?= =?utf-8?Q?YXRamN13WCiX6ZXlg8EDAQzDv?= 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: cbc46ce8-fdad-418a-5a25-08da9d91da23 X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Sep 2022 18:31:38.1289 (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: Z5PBvWcnwW8X6uuPRZIVn9ECArVOK/Cf8V4/55ntTTTPthkULFooHkE/MUI+wYjOXqRbLlddwZ4Fez4AAxy84Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR21MB3571 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 PiBTdWJqZWN0OiBSZTogW1BhdGNoIHY4IDAxLzE4XSBuZXQvbWFuYTogYWRkIGJhc2ljIGRyaXZl ciB3aXRoIGJ1aWxkDQo+IGVudmlyb25tZW50IGFuZCBkb2MNCj4gDQo+IE9uIDkvOC8yMDIyIDEw OjU2IFBNLCBsb25nbGlAbGludXhvbmh5cGVydi5jb20gd3JvdGU6DQo+ID4gRnJvbTogTG9uZyBM aTxsb25nbGlAbWljcm9zb2Z0LmNvbT4NCj4gPg0KPiA+IE1BTkEgaXMgYSBQQ0kgZGV2aWNlLiBJ dCB1c2VzIElCIHZlcmJzIHRvIGFjY2VzcyBoYXJkd2FyZSB0aHJvdWdoIHRoZQ0KPiA+IGtlcm5l bCBSRE1BIGxheWVyLiBUaGlzIHBhdGNoIGludHJvZHVjZXMgYnVpbGQgZW52aXJvbm1lbnQgYW5k IGJhc2ljDQo+ID4gZGV2aWNlIHByb2JlIGZ1bmN0aW9ucy4NCj4gPg0KPiA+IFNpZ25lZC1vZmYt Ynk6IExvbmcgTGk8bG9uZ2xpQG1pY3Jvc29mdC5jb20+DQo+ID4gLS0tDQo+ID4gQ2hhbmdlIGxv ZzoNCj4gPiB2MjoNCj4gPiBGaXggdHlwb3MuDQo+ID4gTWFrZSB0aGUgZHJpdmVyIGJ1aWxkIG9u bHkgb24geDg2LTY0IGFuZCBMaW51eC4NCj4gPiBSZW1vdmUgdW51c2VkIGhlYWRlciBmaWxlcy4N Cj4gPiBDaGFuZ2UgcG9ydCBkZWZpbml0aW9uIHRvIHVpbnQxNl90IG9yIHVpbnQ4X3QgKGZvciBJ QikuDQo+ID4gVXNlIGdldGxpbmUoKSBpbiBwbGFjZSBvZiBmZ2V0cygpIHRvIHJlYWQgYW5kIHRy dW5jYXRlIGEgbGluZS4NCj4gPiB2MzoNCj4gPiBBZGQgbWVzb24gYnVpbGQgY2hlY2sgZm9yIHJl cXVpcmVkIGZ1bmN0aW9ucyBmcm9tIFJETUEgZGlyZWN0IHZlcmINCj4gPiBoZWFkZXIgZmlsZQ0K PiA+IHY0Og0KPiA+IFJlbW92ZSBleHRyYSAiXG4iIGluIGxvZ2dpbmcgY29kZS4NCj4gPiBVc2Ug InIiIGluIHBsYWNlIG9mICJyYiIgaW4gZm9wZW4oKSB0byByZWFkIHRleHQgZmlsZXMuDQo+ID4g djc6DQo+ID4gUmVtb3ZlIFJURV9FVEhfVFhfT0ZGTE9BRF9UQ1BfVFNPIGZyb20gb2ZmbG9hZCBj YXAuDQo+ID4gdjg6DQo+ID4gQWRkIGNsYXJpZmljYXRpb24gb24gZHJpdmVyIGFyZ3MgdXNhZ2Ug dG8gbmljcyBndWlkZS4NCj4gPiBGaXggY29kaW5nIHN5dGxlIG9uIGZ1bmN0aW9uIGRlZmluaXRp b25zLg0KPiA+IFVzZSBkaWZmZXJlbnQgdmFyaWFibGUgbmFtZXMgaW4gTUFOQV9NS1NUUi4NCj4g PiBVc2UgTUFOQV8gcHJlZml4IGZvciBhbGwgbWFjcm9zLg0KPiA+IFVzZSBSVEVfUE1EX1JFR0lT VEVSX1BDSSBpbiBwbGFjZSBvZiBydGVfcGNpX3JlZ2lzdGVyLg0KPiA+IEFkZCAudmVuZG9yX2lk ID0gMCB0byB0aGUgZW5kIG9mIFBDSSB0YWJsZS4NCj4gPiBSZW1vdmUgUlRFX0VUSF9ERVZfQVVU T0ZJTExfUVVFVUVfWFNUQVRTIGZyb20gZGV2X2ZsYWdzLg0KPiA+DQo+ID4gICBNQUlOVEFJTkVS UyAgICAgICAgICAgICAgICAgICAgICAgfCAgIDYgKw0KPiA+ICAgZG9jL2d1aWRlcy9uaWNzL2Zl YXR1cmVzL21hbmEuaW5pIHwgIDEwICsNCj4gPiAgIGRvYy9ndWlkZXMvbmljcy9pbmRleC5yc3Qg ICAgICAgICB8ICAgMSArDQo+ID4gICBkb2MvZ3VpZGVzL25pY3MvbWFuYS5yc3QgICAgICAgICAg fCAgNjkgKysrDQo+ID4gICBkcml2ZXJzL25ldC9tYW5hL21hbmEuYyAgICAgICAgICAgfCA3MjgN Cj4gKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrDQo+ID4gICBkcml2ZXJzL25ldC9tYW5h L21hbmEuaCAgICAgICAgICAgfCAyMDcgKysrKysrKysrDQo+ID4gICBkcml2ZXJzL25ldC9tYW5h L21lc29uLmJ1aWxkICAgICAgfCAgNDQgKysNCj4gPiAgIGRyaXZlcnMvbmV0L21hbmEvbXAuYyAg ICAgICAgICAgICB8IDI0MSArKysrKysrKysrDQo+ID4gICBkcml2ZXJzL25ldC9tYW5hL3ZlcnNp b24ubWFwICAgICAgfCAgIDMgKw0KPiA+ICAgZHJpdmVycy9uZXQvbWVzb24uYnVpbGQgICAgICAg ICAgIHwgICAxICsNCj4gPiAgIDEwIGZpbGVzIGNoYW5nZWQsIDEzMTAgaW5zZXJ0aW9ucygrKQ0K PiA+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IGRvYy9ndWlkZXMvbmljcy9mZWF0dXJlcy9tYW5hLmlu aQ0KPiA+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IGRvYy9ndWlkZXMvbmljcy9tYW5hLnJzdA0KPiA+ ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvbmV0L21hbmEvbWFuYS5jDQo+ID4gICBjcmVh dGUgbW9kZSAxMDA2NDQgZHJpdmVycy9uZXQvbWFuYS9tYW5hLmgNCj4gPiAgIGNyZWF0ZSBtb2Rl IDEwMDY0NCBkcml2ZXJzL25ldC9tYW5hL21lc29uLmJ1aWxkDQo+ID4gICBjcmVhdGUgbW9kZSAx MDA2NDQgZHJpdmVycy9uZXQvbWFuYS9tcC5jDQo+ID4gICBjcmVhdGUgbW9kZSAxMDA2NDQgZHJp dmVycy9uZXQvbWFuYS92ZXJzaW9uLm1hcA0KPiANCj4gQ2FuIHlvdSBwbGVhc2UgcnVuICcuL2Rl dnRvb2xzL2NoZWNrLW1lc29uLnB5JywgaXQgY29tcGxhaW5zIGFib3V0DQo+ICdkcml2ZXJzL25l dC9tYW5hL21lc29uLmJ1aWxkJz8NCg0KV2lsbCBmaXggdGhpcy4NCg0KVGhhbmtzLA0KTG9uZw0K