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 3637543200; Thu, 26 Oct 2023 03:33:15 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 220C3402C5; Thu, 26 Oct 2023 03:33:14 +0200 (CEST) Received: from NAM10-MW2-obe.outbound.protection.outlook.com (mail-mw2nam10on2123.outbound.protection.outlook.com [40.107.94.123]) by mails.dpdk.org (Postfix) with ESMTP id 2AD214027F for ; Thu, 26 Oct 2023 03:33:12 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=elmRAC9y78rou9mFEQmdhEvfy2dSL5Wb8DxvSslvMvbCveSox2NN2CUYTtEsAURueqz/btJUYmy6jxyHRxgZnvBQcGRyy+1efVGIZtFDXbDLkuI+vVFpSmkObFYAG1WQksDQ0MNMkvgutuFqh60lHL+wIlfSuzxVL936NRkHqv184LYCevh30G9HwqTWsmfpijxNyrulV9NNxMJQM6V/RD+CQ0zO4RHrSmA7k3mh7NiM6czTMKbHKLp8RKR+PCiCUWLxPvxw8w9bQi+QFiqUOCc2ezyQ0gEcEf9VSq2hDHTQEvIccOtNHYa2qLsXsX8THr3dcFm29OUA8bBSMFMgNA== 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=GrOlTE2SRtzoH5fIHSrm2keJzLQSkEdG44I5LqPxHmM=; b=CZunbjLaA3Nc1t3pwvTTFTc6Z0p8YCRWrp6WjM0RGf3mnEEr7tG0cIgUK9xWlUZxFg/6z7bq6sTH4HqW+J8gfgnwkT/KEs8W7aZLSqeOlCrquff8DZvar/kxie9bovuxd8gvx7nCx2B0B5/gxgqpqtpMGZwjoQbtudQTChTpUXHj0tZh4nICA0spMuWtNsyRtdyIrJlsQ2U21/ZmTAnduH9hx8C2sKXbx1jrx5efMoC8XG5LyuUXd57f8jICh06G/idWHeKlZAC3vOBvGmyrSKv6SdOafY3/ofuGOQeJRDW9LHHO6QuuOL0dhHucmzxvBGjA/LwFvKsxFtIHkXTO2w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=corigine.com; dmarc=pass action=none header.from=corigine.com; dkim=pass header.d=corigine.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=corigine.onmicrosoft.com; s=selector2-corigine-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=GrOlTE2SRtzoH5fIHSrm2keJzLQSkEdG44I5LqPxHmM=; b=qSbJZewRzcO8Qhd/B0VO78JNIEkQtp1Ol9dp4IzKhn1mhpGEGitP6oqxmqgx6nqBmsnR3hn1m7QESI9+26mKmZl44Gq3Y0FN+DgCAotmWKkkUZeqTdXiWYFfDYam1QOH9h+iT1Z334znEh5BQX0HTr1G7ea8mhYqiv1+9lix73E= Received: from PH0PR13MB5568.namprd13.prod.outlook.com (2603:10b6:510:12b::16) by CH0PR13MB5169.namprd13.prod.outlook.com (2603:10b6:610:ea::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.33; Thu, 26 Oct 2023 01:33:08 +0000 Received: from PH0PR13MB5568.namprd13.prod.outlook.com ([fe80::b070:92e1:931e:fee7]) by PH0PR13MB5568.namprd13.prod.outlook.com ([fe80::b070:92e1:931e:fee7%4]) with mapi id 15.20.6907.022; Thu, 26 Oct 2023 01:33:07 +0000 From: Chaoyong He To: Ferruh Yigit , "dev@dpdk.org" CC: oss-drivers Subject: RE: [PATCH v2 00/25] add the NFP vDPA PMD Thread-Topic: [PATCH v2 00/25] add the NFP vDPA PMD Thread-Index: AQHaBiHudAgxsYlnpEu9RB15oJzFMbBaruYAgACcjAA= Date: Thu, 26 Oct 2023 01:33:07 +0000 Message-ID: References: <20231017054545.1692509-1-chaoyong.he@corigine.com> <20231024022849.3092506-1-chaoyong.he@corigine.com> <14f709f5-6290-4ee1-8c8f-dddcd938240c@amd.com> In-Reply-To: <14f709f5-6290-4ee1-8c8f-dddcd938240c@amd.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=corigine.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: PH0PR13MB5568:EE_|CH0PR13MB5169:EE_ x-ms-office365-filtering-correlation-id: 74579ff8-bf4a-4ef5-b3cd-08dbd5c38197 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: M4QmlgkFKtvBWJTsjxxFSW9YI1BYUsyxZbqo7w/UQIgtRPy/00LUonPqkyrn2h9fI8s98dYDdTsxQE9IY51ND616C7JOQToD6LIvFFd8IhHx6lvurWfAXv+zksAGAOpsaoYHpyc8OJLYKzuFFL8JLKSzRhIkmCZKQ4ZS1/iMJjgQecHxpdq90jlCHRDzonbqsM3TgDtr5NRpZ9cfMeZX8HbxaQX1bSnofjPMV2uYfDQw1slFah33Y+n97LWjD0rNjY2Uo3qCZWnafzZ8PlzgQgAyHIvJvUoHCwfXfKUy1oJwn/Edms0NokoEf1mlSRcLJJMaY+PCZvbgKx8xzo1gYw5Y/OP6cPD1gncfiJ6Uif8vKzMYBjnkaHLz+QqkFpPozK8goBb9UVH6IjRwzFpztGQb+H50mDMYAWOEOrerOG2aR30OG0i4KMmYsT9pPcR/gM3Y3SYEutoVs+1DIZF4NIy2F/TNaj0QbvwKEZ9coNdTLUjH5H3F8O2KGZY/9t3NsLJ4A+Q+hSW53aWkYyjL6/ePcXRf4QZjuQQ5HBDqT8vnxfxDONwk7nPz6dUf4VRc1wJTTbaROWUCfA4dOnPLfQHtg965p4+OjnvvcLJ53oyEs7O2fmHU5ExW89QAxmN6Ro9ubXeqYM9RfzYQ+3mqiLDHSic/pM6fhUjPT37mWeIFOGsP7eK1Cke8cPKODkn1 x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:PH0PR13MB5568.namprd13.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230031)(39840400004)(376002)(346002)(366004)(396003)(136003)(230922051799003)(1800799009)(186009)(451199024)(64100799003)(38070700009)(83380400001)(55016003)(4326008)(2906002)(8676002)(8936002)(33656002)(44832011)(122000001)(71200400001)(52536014)(107886003)(53546011)(38100700002)(76116006)(7696005)(5660300002)(6506007)(9686003)(966005)(316002)(41300700001)(66556008)(110136005)(66946007)(86362001)(66476007)(66446008)(478600001)(64756008)(21314003); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?Y3BFTzZ2eHBrTkFxdUpQMHRtbWdkRUNyelAxZzJTTVVxc0hrRWhyaTE2NjZW?= =?utf-8?B?L2kzekhGalhDb0ZIWjhNS1Q2REFZc3JNNGhySENiSDltWlk0TXU1VURsWVVH?= =?utf-8?B?Tk9GKzN3OWp1WTc4YTVvYTd5TEREbUYyK1Q2Uy9YVDB6LzhDYS9RMEErZ2Fi?= =?utf-8?B?cWRBM3J5c0xDWjVqZmc0Um1GU3VKaDFReTcvbFozVTBuRjErYWN6ZnkxTFJV?= =?utf-8?B?V1VEdmVYaVpPUlhKSG9TeFAyOWxvR1ByS0xzMG5vVzZqQlcrTWhPS1JCYm13?= =?utf-8?B?VitMU1dJbkxRck12Y3R6ZlBMRzlVUjZGNjc3V2pyRWZkR1k0RFowRmt4c2ln?= =?utf-8?B?cDJCUk5oQUtJdEpVMlFrK0VwV0VxNUVxUWdORlVrK3h1enYrT29wbFI2TTdG?= =?utf-8?B?SjZVSXgvOTFnbkY5OElqcHJhbk5TYzR5ajJwZVU5eG54bWxGZERQZEZFczdj?= =?utf-8?B?M1R1b3p2TU0ybGpueVV3T0hNQlpoaXNNQXhXTmhvT29McTI3Tkd5REJ2V1pS?= =?utf-8?B?RHFNaUNoZnZWVFQvcWM1ZndRbGJaOVJiZHJSbVAxSEJiRTJUSVU3RnNFQUt1?= =?utf-8?B?cGQxTVQ3N1RHOFZBS1lrOHVZeFFIVUNGS2R1YU1GMFpxVnlUZU1PNm4xWGda?= =?utf-8?B?dUI1OWxRREl0VlFNVHVGOHNhaUpmZ0ZFSmYvQUtGMEF5ak5Zc0g1cHdvNjZu?= =?utf-8?B?M3lQcG5lME84dFAwV0laOUU2REN5TURJV2ZPdVZNdTI5WWgrMllZbWpaVXBw?= =?utf-8?B?YWQ4ckVQY0VOMjJSb3RkVUw0OGpndmNFWkZsY0FpcEhjeFVlNVdWL0ZtczRq?= =?utf-8?B?U1pZMGg0Yjk5WVRqSFc0aVBJbmV5VEZvR2FFR3NIODdzUVVtQ0pGSytsZnFT?= =?utf-8?B?L1pFTHgxQ3ZrdUU4dTBMNWs4WEVPM3Z4UUt6NWRUM0kxVFpobW8wN2YreEF2?= =?utf-8?B?TVVCQnlVOTZDYVdXa1VOdkdhS3pIK25UWEdRV256MU9rN3hxaFM2bFRrOWJx?= =?utf-8?B?emFKV1ZIVk5jMzB4d3RYdnVrdmczNDhnOVRxbXNqUTV6WkYvR1lDbThLQXZG?= =?utf-8?B?RWpaSWoyb0x1RTQwQmNZL05vbVNjSVRJUlhtMU9vV0pvK3pGS1dTa3dkUWox?= =?utf-8?B?Tm12LzFCZUZlVll5c1JNSFN1VVQzU3BiVzg1cEF0L2d1ZFJLZ3RlWHpQRHlT?= =?utf-8?B?WDVaM1p6TjRaRitrZTR2RGJ6UkN6RzZBTUJ4ODNqcjExK05teUpCY054bFBx?= =?utf-8?B?Q0wyNUxDeExWZDFtbmE2Z01jd1locnc3Vk5IK0JudnRCS0EzNldwNEtHY0Nr?= =?utf-8?B?ZTNlSy9ieVZUWEdxTUg3T1BiM3NaQkk0NGdZUTdNRmNOK2Z1SmZ3bUdHMTFu?= =?utf-8?B?aUx5OTlqZklZcnlKSzVLbytwb2R2Z1djSnlCV2pZN01QdVpiWG9BZlVFR3dw?= =?utf-8?B?d0x6TzNDVWhJOVphelMvMHk1TnJXdVdLdTNQZ1lobGxWR0lacEhhZVh4VHhy?= =?utf-8?B?TGxuRzYrYy90bUZ4SFpCQWNnaDFZSWpUOEtzZXlibkJOT0dQZEExdXAwM3Yz?= =?utf-8?B?UHQvdUY2NHZlU01BbVlpY2ZrQ3ZPd2RnYjlXL2hqazhRaHAvTnhnWWtoR1Rv?= =?utf-8?B?ZWpkM2g5K3BkREtIdnJyZ3NZNEdlOFkyNlpyWkJPcm9MVmd1Q1JTSVpHekZB?= =?utf-8?B?Mmhic1JTbVFsUWR2MlB4NGd1M0lMM3NNQmxmY3JYMCtpTklWbG4xYWlaQlJO?= =?utf-8?B?a0JIWnN2Q09XbjNObW8rREwzSHU3dGpNeHZuaHRzdGRaQ1FzL0VkcEt1NS9B?= =?utf-8?B?MC9IMG5xemFGWklFUUx3N1E4R1FUdzZLSEt6dDJtL1RscVMxR0w5TjF3UC8w?= =?utf-8?B?dHhqYkVBcUtveGdNQWR4MkN5Qkphb2ovVm9HM0Z2U2h2TnVCQTNUTkxtYWlX?= =?utf-8?B?L2JPTy9mTkhsTWJ3alJaUjZrbE9uYlFkS1YySGJZYnFrSlV6QVJZSjRGY2RJ?= =?utf-8?B?Y1l3VjhzTTZCc01jekREQTlPbnJ5YUtxbDYzcFRZdFZlYWpjNFZIZ3ZMS3FQ?= =?utf-8?B?UkhNeUJOQTgrNkJpVk9CS1FtSEg0cGQ5TW5qUnBMT3Y1Tm16SnpsVGJQZnoz?= =?utf-8?Q?2QmM=3D?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: corigine.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PH0PR13MB5568.namprd13.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 74579ff8-bf4a-4ef5-b3cd-08dbd5c38197 X-MS-Exchange-CrossTenant-originalarrivaltime: 26 Oct 2023 01:33:07.2142 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: fe128f2c-073b-4c20-818e-7246a585940c X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 7u5MBtOOWBuwX/XCDRF6bKlkI72ndCGGSfzQKJezBk6Ula2Zvprk89BdZGTnOD5w2f088T9/aPq/9W05qYSFkc7qAyz/GO+EpVRAN7xPZqg= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR13MB5169 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 PiBPbiAxMC8yNC8yMDIzIDM6MjggQU0sIENoYW95b25nIEhlIHdyb3RlOg0KPiA+IFRoaXMgcGF0 Y2ggc2VyaWVzIGFpbXMgdG8gYWRkIHRoZSBORlAgdkRQQSBQTUQsIHdlIGFsc28gZ3JhYiB0aGUN Cj4gPiBjb21tb24gbG9naWMgaW50byB0aGUgYGRyaXZlcnMvY29tbW9uL25mcGAgZGlyZWN0b3J5 Lg0KPiA+DQo+ID4gLS0tDQo+ID4gdjI6DQo+ID4gKiBHcmFiIG1vcmUgbG9naWMgaW50byB0aGUg YGRyaXZlcnMvY29tbW9uL25mcGAgZGlyZWN0b3J5Lg0KPiA+ICogRGVsZXRlIHNvbWUgbG9naWMg d2hpY2ggc2hvdWxkIGJlIHdoZW4gbW92aW5nIGxvZ2ljLg0KPiA+IC0tLQ0KPiA+DQo+ID4gQ2hh b3lvbmcgSGUgKDI1KToNCj4gPiAgIGRyaXZlcnM6IGludHJvZHVjZSB0aGUgTkZQIGNvbW1vbiBs aWJyYXJ5DQo+ID4gICBuZXQvbmZwOiBtYWtlIFZGIFBNRCB1c2luZyBvZiBORlAgY29tbW9uIG1v ZHVsZQ0KPiA+ICAgbmV0L25mcDogcmVuYW1lIGNvbW1vbiBtb2R1bGUgbmFtZQ0KPiA+ICAgbmV0 L25mcDogcmVuYW1lIGN0cmwgbW9kdWxlIG5hbWUNCj4gPiAgIG5ldC9uZnA6IGV4dHJhY3QgdGhl IGNhcCBkYXRhIGZpZWxkDQo+ID4gICBuZXQvbmZwOiBleHRyYWN0IHRoZSBxY3AgZGF0YSBmaWVs ZA0KPiA+ICAgbmV0L25mcDogZXh0cmFjdCB0aGUgY3RybCBCQVIgZGF0YSBmaWVsZA0KPiA+ICAg bmV0L25mcDogZXh0cmFjdCB0aGUgY3RybCBkYXRhIGZpZWxkDQo+ID4gICBuZXQvbmZwOiBjaGFu Z2UgdGhlIHBhcmFtZXRlciBvZiBBUElzDQo+ID4gICBuZXQvbmZwOiBjaGFuZ2UgdGhlIHBhcmFt ZXRlciBvZiByZWNvbmZpZw0KPiA+ICAgbmV0L25mcDogZXh0cmFjdCB0aGUgTUFDIGFkZHJlc3Mg ZGF0YSBmaWVsZA0KPiA+ICAgbmV0L25mcDogcmVuYW1lIHBhcmFtZXRlciBpbiByZWxhdGVkIGxv Z2ljDQo+ID4gICBkcml2ZXJzOiBhZGQgdGhlIGNvbW1vbiBjdHJsIG1vZHVsZQ0KPiA+ICAgZHJp dmVyczogYWRkIHRoZSBuZnAgY29tbW9uIG1vZHVsZQ0KPiA+ICAgZHJpdmVyczogbW92ZSBxdWV1 ZSBsb2dpYyB0byBjb21tb24gbW9kdWxlDQo+ID4gICBkcml2ZXJzOiBtb3ZlIHBsYXRmb3JtIG1v ZHVsZSB0byBjb21tb24gbGlicmFyeQ0KPiA+ICAgZHJpdmVyczogbW92ZSBkZXZpY2UgbW9kdWxl IHRvIGNvbW1vbiBsaWJyYXJ5DQo+ID4gICBkcml2ZXJzL3ZkcGE6IGludHJvZHVjZSB0aGUgTkZQ IHZEUEEgbGlicmFyeQ0KPiA+ICAgZHJpdmVyczogYWRkIHRoZSBiYXNpYyBmcmFtZXdvcmsgb2Yg dkRQQSBQTUQNCj4gPiAgIHZkcGEvbmZwOiBhZGQgdGhlIGxvZ2ljIG9mIHJlbWFwIFBDSSBtZW1v cnkNCj4gPiAgIHZkcGEvbmZwOiBhZGQgdGhlIGhhcmR3YXJlIGluaXQgbG9naWMNCj4gPiAgIGRy aXZlcnM6IGFkZCB0aGUgZGF0YXBhdGggdXBkYXRlIGxvZ2ljDQo+ID4gICB2ZHBhL25mcDogYWRk IHRoZSBub3RpZnkgcmVsYXRlZCBsb2dpYw0KPiA+ICAgdmRwYS9uZnA6IGFkZCBuZnAgdkRQQSBk ZXZpY2Ugb3BlcmF0aW9ucw0KPiA+ICAgZG9jOiBhZGQgdGhlIGNvbW1vbiBhbmQgdkRQQSBkb2N1 bWVudA0KPiA+DQo+IA0KPiBPdmVyYWxsIHByZXR0eSBjbGVhbiBzZXQsIGJ1dCB0aGVyZSBhcmUg YSBmZXcgbWlub3IgaXNzdWVzLCBjb21tZW50ZWQgb24NCj4gcGF0Y2hlcy4NCj4gDQo+IA0KPiBB bHNvIGNhbiB5b3UgcGxlYXNlIGFkZHJlc3MgY2hlY2twYXRjaCB3YXJuaW5nczoNCj4gDQo+ICAg IyMjIFtQQVRDSF0gZHJpdmVyczogYWRkIHRoZSBkYXRhcGF0aCB1cGRhdGUgbG9naWMNCj4gDQo+ ICAgICBXYXJuaW5nIGluIGRyaXZlcnMvdmRwYS9uZnAvbmZwX3ZkcGEuYzoNCj4gICAgIFVzaW5n IF9fYXRvbWljX3h4eCBidWlsdC1pbnMsIHByZWZlciBydGVfYXRvbWljX3h4eA0KPiANCg0KT2gs IFNvcnJ5LCB3ZSBjaG9vc2UgJ19fYXRvbWljX3h4eCcgYmVjYXVzZSB3ZSBzZWUgdGhlIGRvY3Vt ZW50IGluIGh0dHBzOi8vZG9jLmRwZGsub3JnL2d1aWRlcy9wcm9nX2d1aWRlL3dyaXRpbmdfZWZm aWNpZW50X2NvZGUuaHRtbD9oaWdobGlnaHQ9YXRvbWljJTIwb3BlcmF0aW9ucyUyMHVzZSUyMGMx MSUyMGF0b21pYyUyMGJ1aWx0aW5zI2F0b21pYy1vcGVyYXRpb25zLXVzZS1jMTEtYXRvbWljLWJ1 aWx0aW5zLg0KTWF5YmUgd2UgbWlzdW5kZXJzdG9vZCBpdCwgd2Ugd2lsbCBjaGFuZ2UgdG8gdGhl IGBydGVfYXRvbWljX3h4eGAgaW4gbmV4dCB2ZXJzaW9uLCB0aGFua3MuDQoNCj4gICAjIyMgW1BB VENIXSB2ZHBhL25mcDogYWRkIHRoZSBub3RpZnkgcmVsYXRlZCBsb2dpYw0KPiANCj4gICAgIFdh cm5pbmcgaW4gZHJpdmVycy92ZHBhL25mcC9uZnBfdmRwYS5jOg0KPiAgICAgVXNpbmcgcHRocmVh ZCBmdW5jdGlvbnMsIHByZWZlciBydGVfdGhyZWFkDQo+IA0KDQpPa2F5LCB3aWxsIHJldmlzZSBp biB0aGUgbmV4dCB2ZXJzaW9uLg0KDQo+ICAgIyMjIFtQQVRDSF0gdmRwYS9uZnA6IGFkZCBuZnAg dkRQQSBkZXZpY2Ugb3BlcmF0aW9ucw0KPiANCj4gICAgIFdhcm5pbmcgaW4gZHJpdmVycy92ZHBh L25mcC9uZnBfdmRwYS5jOg0KPiAgICAgVXNpbmcgX19hdG9taWNfeHh4IGJ1aWx0LWlucywgcHJl ZmVyIHJ0ZV9hdG9taWNfeHh4DQo+IA0KPiANCj4gQW5kIHNvbWUgdHlwb3M6DQo+ICAgdmRwYS9u ZnA6IGFkZCBuZnAgdkRQQSBkZXZpY2Ugb3BlcmF0aW9ucw0KPiAgIG9wZXRhdGlvbg0KDQpXaWxs IGNoYW5nZSBpbiBuZXh0IHZlcnNpb24sIHRoYW5rcy4NCg0K