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 67CCFA0543; Tue, 25 Oct 2022 03:44:15 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 0F414410D3; Tue, 25 Oct 2022 03:44:15 +0200 (CEST) Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on2104.outbound.protection.outlook.com [40.107.223.104]) by mails.dpdk.org (Postfix) with ESMTP id A396740DF7 for ; Tue, 25 Oct 2022 03:44:13 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Ue0BiQdawiiwEbEn8wGqNIKUc1ruhuTNF72UxzES3vYKCbi8CPoFVHauPcuBCyeHiyH5K5qzMTh9le/ZNsVOHhxvVTAZxzt59L7sjtKYqkWrkb4giRcaCebHHaRgsJvuqqvNFTxrz5OA9zrQNgIEZo+7fpnV16d4TertLrhU0NEKyhGU1S6z1RvGbW0pfoX3zEn6/uzZUB8xl0K25Cxv8/6ByKCi7xVAFSvao/IRlnk1C86Q86R8AtRmv169ezVKP41SuPC8jdL1uc/N7q9jL72cu7BsatLTWu5pdf5wO/GuZfUlo0XJl0zL6aeirs+mdHBR1jstsfThxZy1mHSPEQ== 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=LfX5DM4w23FRKs9kpKpE3TQYiEIpFkMw6r9LAEAp8n8=; b=Z49s2OYx1zzw4PFudXJsQ4U3GDzzXJ8fjExbFCcQfgneIvVgiR9g3ItZDw8iwe3VCkHDwYZhewlX8qdqDlVW9mDPXHa3/ZsWRK3rrYjIpRStAWX0OvzoeL5mDlKOlcv1cyvsyoc6Wj2fK2vrNKJTjNTxJ6boWodERQkQMIskjUraG3CVg8jCvcVNoVawYEk3N+0oYl2KnJ1F7F3Nl8+ejq0DMIIFCpqOteKNatb1axMDfK2V8a1w40OsOc30G6zZBjbXwagp/7fkgqX9z/0ZU7YwtRCZzxAlmquMy1RxDkKSTh386npv6atWEQEob4NB9chlLhZ+Uaw2wDUggYl/Cg== 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=LfX5DM4w23FRKs9kpKpE3TQYiEIpFkMw6r9LAEAp8n8=; b=PC8OwyzpRIMwJX5lBG0Jcy1jBrf6/myCLXbWqRu+ij1OVfRRPHoMMKoWRS9Do4SHTfLJdAWQDinFCRVT8QbLqDDj6dhJ4jvWj15dYp2I/SXKoXZ5D82fSFot2O3NRI7MT86ameTR1b5dOYUdXHvSKWQoviMFutwgaYJmjbMpRNA= Received: from SJ0PR13MB5545.namprd13.prod.outlook.com (2603:10b6:a03:424::5) by CH0PR13MB4716.namprd13.prod.outlook.com (2603:10b6:610:c8::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5723.20; Tue, 25 Oct 2022 01:44:11 +0000 Received: from SJ0PR13MB5545.namprd13.prod.outlook.com ([fe80::7c26:1a0b:2825:6f4b]) by SJ0PR13MB5545.namprd13.prod.outlook.com ([fe80::7c26:1a0b:2825:6f4b%4]) with mapi id 15.20.5723.014; Tue, 25 Oct 2022 01:44:11 +0000 From: Chaoyong He To: Ferruh Yigit , "dev@dpdk.org" CC: oss-drivers , Niklas Soderlund Subject: RE: [PATCH v2 25/25] net/nfp: support new tunnel solution Thread-Topic: [PATCH v2 25/25] net/nfp: support new tunnel solution Thread-Index: AQHY5e/frDIQtS9u7kGwyjS25HqZSK4dqWiAgACujTA= Date: Tue, 25 Oct 2022 01:44:11 +0000 Message-ID: References: <1666063359-34283-1-git-send-email-chaoyong.he@corigine.com> <1666427069-10553-1-git-send-email-chaoyong.he@corigine.com> <1666427069-10553-26-git-send-email-chaoyong.he@corigine.com> In-Reply-To: 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: SJ0PR13MB5545:EE_|CH0PR13MB4716:EE_ x-ms-office365-filtering-correlation-id: 122cab81-ae18-425c-ab1d-08dab62a6a63 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 64W6JEXhDtoEOdB++8iyBUaXolttw/kFTPm5b64vu3QBtEHJ+T/78HoiIDVxESR8PP93BP92gBjNU1K8m4IRnOFqM6CGnn4dRD60WKmFo4nOEns/xZtla1YlLYTXEP62c2sCMvh0l5C/2pZ/3Wga0T0LEI07od85cuK2cgTMzxqUoHWRx3A5eu9wMwRALlOtTbmmzielp9cUyBZL2CnSxwExipJt6zK/W2BiF5ZW43vVbZf838GsS9NYh1B7CQxLGp1aPygtgYZe3CEmmSpKpC9JwbxrqIEI/LtHIXsbM2xlshGpoVL4c7zhmEF98DXqzZnkCu+241O/llxnJbKknSf8bNPaY8l8i+lfG0p5Za+PJIMXIDc2hHt+XWvsC0NqOGRyh+qJ7iKWG8BCLBF9EtssjjvWJkWXXFgLzS8VH+4T7t+xqDgXUb9Efsp11QZmgyTyN/ougWHDLTAJzNhkaGsTnJ2i/snEmUVkQYCiKLiNrPEmOzBoH9XDulBIA+N15B71CeOG97QJc13K7zBX0yrwVuZgmT2EqC8M0TzHZUT7TqmO7HayGNm8N44vuxo6OX8Ww1X11gVJovjSdN4i3OO/ciIzu669YA2gYKmOfAP7YSCRxIUuyKfnCYsRe6uP9QO+kaWryXjBtz/CHEuwaWSnW1RalX30cS6LvuRJExAP84PCv4HXcitKZQaJYrFkRuz7ibXHJ+Kl0PIMkETaTMIFdW7uxDy/blWCfXS4QNs9heZCGvzZ9U+85daxP5OVHMvsaApDRQD1mr20bthIDA== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SJ0PR13MB5545.namprd13.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230022)(4636009)(376002)(346002)(396003)(366004)(136003)(39850400004)(451199015)(54906003)(8936002)(38070700005)(478600001)(76116006)(186003)(86362001)(2906002)(110136005)(26005)(41300700001)(5660300002)(33656002)(83380400001)(316002)(66556008)(66946007)(8676002)(44832011)(66446008)(66476007)(4326008)(38100700002)(107886003)(9686003)(64756008)(53546011)(55016003)(52536014)(7696005)(71200400001)(6506007)(122000001); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?MTdhbFlNYWl6L1dQNmpkUlN5c1Fpc3ZqK0Q0T3lCMVpCS2R1MWw3NVM5ZFo2?= =?utf-8?B?Y2g4N1czbG9idGM3d3dualJRY2dHRGM0c0V3Mk04ZzhGK3pPem1SMHpRRFdQ?= =?utf-8?B?Wk54dktOU2xWLzlIWnlHdDNqY3JzZnBkUnlVU3BnYzlmMGxCcGVvNDkxR0Jo?= =?utf-8?B?dzE2emNLWW9BeUZ2MlFqUlVDbTRqbUI1ZGh1V1dxOHByK2UxZnVsV3NJbXFO?= =?utf-8?B?aHNlU1NGSWxzOCt4dFZIeXExVkdjNGlzNWdJaTBXcmRrNUNCQXh2cTRLakpD?= =?utf-8?B?OUV4RzJRZEZBQWhaWGlnNGpVZU85b1pyVllQejV5VW9iVjZYMmFDSHRnTnB4?= =?utf-8?B?MjV2L0V5NU16dDA2Tk8rZUlZNUQxOWU1YTdUWjQxRlVYamNhK1FhZk5sNjgy?= =?utf-8?B?TDUyT0dvNU1kVGNJRllaSzA2QkVwZno2UnltbmJ2ZktCSHVicCs3Wk05S1Iz?= =?utf-8?B?TUtVc0FQMEVsUGVmcHBsb1lkdzYyK2J0Uy9NbStoRkc0d29taGJSdzJlTWNM?= =?utf-8?B?UXA3QW5hVWh3NzlwTkl0OHUyaGhUeldYem1UaHRuUDhodHFWZmx6VExkZkM0?= =?utf-8?B?Z2dXMWJwVVh4SFVSQTJxMUkrMWV5cStPMlpUWEdhNjdSZ3hFY0pTcXp0RGhQ?= =?utf-8?B?dXBIRzA0UW1yYUdqWGhsem9ld0VCRE9DR2VGOUVQWW9wdHl1cnNYS1E3S0ZZ?= =?utf-8?B?bStIVzNYY2JDUGpYQlIwSHczTm44RzlXcTNjOVFhY0xEUUlwSDNTdU44SHQ1?= =?utf-8?B?OVUyQkpIUE50cklEMnRtbGdLQks0K2pZOE9wUlowM3I2bzFWRVk3dFJPaGhG?= =?utf-8?B?WFR2OXhwZ245dWxjYm8rdlhaTFd2ektnMGRyazhsTmJVSVNFb0dENzlEZ3Mx?= =?utf-8?B?UmROMTVRQkdQSlgyaTc2YWdJcUNVb2FKbEVQNWlZSmhjZVQ2dzB3RENqNEd1?= =?utf-8?B?WUVMWWUvVGRuOFN6anFxS3BiRzJyQkhTbGpIZzZwcFdRaEw3cERMeFNEeS9G?= =?utf-8?B?OC83enAvalNGUzdCVkUvdDJZYlBwTWd6TzFjb2NoWmszN1dhVDlvYXNjbEVW?= =?utf-8?B?T2tIbVAzSnAxK2hxNmF6L2I3Y2ZzSWZ2SXdqeHFjVHRhc2hoTDJaNTBUV29k?= =?utf-8?B?Tnhmdy9McCt3V2d0V0dod3RHMmp6SnVhczAxZDBPcWFEY2ZsR0ZVaVRlR1lT?= =?utf-8?B?NGZKdmsxNEpuNDRmemZnYkRKV2dML3MrUGM5OGQ2VHNKNEE3eEx1bkRRN2FL?= =?utf-8?B?WjNyclZIZEtvWDhhVUh3RDRHSFR1clRjN2s5WUhiOGQremhWWGY0dVpNNG8y?= =?utf-8?B?cnQycnBxZzBoaGlkRDVhbHhZSUFET1A3RDJhLytqRXJ5MlJHVDRmRElDcEVh?= =?utf-8?B?bnBqUi93WWVwdzRNN1FtZm9FMkhWSEtnaDhaZGZTTVoyV3pLMGJJaHgyV2dp?= =?utf-8?B?SnpEbGhXK0FwTlFidkk3NHZOZTBlOXBmaDVRZkltWUdPN2R1Z2N5MmRBSHc1?= =?utf-8?B?V0ZuTEYyVk5CYmtaZ0Q3SHArR3ZKUmZwcDROaTdEK2NEdUxPNGQ3eUpwdlE3?= =?utf-8?B?N0NaeW1iUzNBT2NubmRpaktzcC9jT1ZTOHVtWHlZSng2OFBRK050KzE1a0pG?= =?utf-8?B?elZpaFQ0MFVMRXlldThUMitoYk9DR3ZicDVDMVBZWUozZnFYbkNhUTVKTFcz?= =?utf-8?B?bnZPbEJodVBISm5oNzJrdGlaZjFzZjF6MEcrTmg5akw3NkFqci9wbG9sQ2x4?= =?utf-8?B?UUFrbjNXd2ZVYjFndVNHL0ZSVWJOcE9HeWhRQ0NsSGFYN1dUa3BLWmFNS2to?= =?utf-8?B?dXZreUs4eHpYMEZkQTNUSGRBUHR6WHZOeW4zOEpreHA4Y1YyaTNUQjRFeUhK?= =?utf-8?B?SUlZWnhCdzQ0N3lsRHc2YTYxNmxDbk8ya2QwclIvdzdiYTJMQ3MrVms4WGV3?= =?utf-8?B?OW5OeWFuTTk1NWZzZkw5WVpnbmIxd05mSk5YMXlBZm0yTmExZ3Q3KzlBcEIv?= =?utf-8?B?eFc5YXU1bW5TZjNwaHZrc1ZCL0NaN1JJYkpkeTZhbDlQT1pPMVpzYk9XdlNF?= =?utf-8?B?VjluMlBNbEpXTVhKck55dHRjTlg5L0MrOHNScFp3TW90Z3paRThBMmx0VWQ5?= =?utf-8?Q?cQU1C7LK3ni0HG1YKD+T//UQk?= 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: SJ0PR13MB5545.namprd13.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 122cab81-ae18-425c-ab1d-08dab62a6a63 X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Oct 2022 01:44:11.5988 (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: 2zmlHEOkowhkDge92zRAonIgDupKbRt3gwtPMNW7GmyMQ3iyLOoA5bPbsxGesTceO1zLatgfGCKH88ltrpfoDol09Ve47qmPuuU35+6VBsI= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR13MB4716 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 PiBPbiAxMC8yMi8yMDIyIDk6MjQgQU0sIENoYW95b25nIEhlIHdyb3RlOg0KPiA+IFRoZSBuZXcg dmVyc2lvbiBvZiBmbG93ZXIgZmlybXdhcmUgYXBwbGljYXRpb24gYWRkIHRoZSBzdXBwb3J0IG9m IGENCj4gPiBuZXcgdHVubmVsIHNvbHV0aW9uLg0KPiA+DQo+ID4gSXQgY2hhbmdlcyB0aGUgc3Ry dWN0dXJlIG9mIHR1bm5lbCBuZWlnaGJvciwgYW5kIHVzZSBhIGZlYXR1cmUgZmxhZyB0bw0KPiA+ IGluZGljYXRlIHdoaWNoIHR1bm5lbCBzb2x1dGlvbiBpcyB1c2VkLg0KPiA+DQo+ID4gQWRkIHRo ZSBsb2dpYyBvZiByZWFkIGV4dHJhIGZlYXR1cmVzIGZyb20gZmlybXdhcmUsIGFuZCBzdG9yZSBp dCBpbg0KPiA+IHRoZSBhcHAgcHJpdmF0ZSBzdHJ1Y3R1cmUuDQo+ID4NCj4gPiBBZGp1c3QgdGhl IGRhdGEgc3RydWN0dXJlIGFuZCByZWxhdGVkIGxvZ2ljIHRvIG1ha2UgdGhlIFBNRCBzdXBwb3J0 DQo+ID4gYm90aCB2ZXJzaW9uIG9mIHR1bm5lbCBzb2x1dGlvbnMuDQo+ID4NCj4gPiBTaWduZWQt b2ZmLWJ5OiBDaGFveW9uZyBIZTxjaGFveW9uZy5oZUBjb3JpZ2luZS5jb20+DQo+ID4gUmV2aWV3 ZWQtYnk6IE5pa2xhcyBTw7ZkZXJsdW5kPG5pa2xhcy5zb2Rlcmx1bmRAY29yaWdpbmUuY29tPg0K PiA+IC0tLQ0KPiA+ICAgZHJpdmVycy9uZXQvbmZwL2Zsb3dlci9uZnBfZmxvd2VyLmMgICAgICB8 ICAxNCArKysrDQo+ID4gICBkcml2ZXJzL25ldC9uZnAvZmxvd2VyL25mcF9mbG93ZXIuaCAgICAg IHwgIDI0ICsrKysrKysNCj4gPiAgIGRyaXZlcnMvbmV0L25mcC9mbG93ZXIvbmZwX2Zsb3dlcl9j bXNnLmMgfCAgIDQgKysNCj4gPiAgIGRyaXZlcnMvbmV0L25mcC9mbG93ZXIvbmZwX2Zsb3dlcl9j bXNnLmggfCAgMTcgKysrKysNCj4gPiAgIGRyaXZlcnMvbmV0L25mcC9uZnBfZmxvdy5jICAgICAg ICAgICAgICAgfCAxMTggKysrKysrKysrKysrKysrKysrKysrKysrKy0NCj4gLS0tLS0NCj4gPiAg IDUgZmlsZXMgY2hhbmdlZCwgMTU3IGluc2VydGlvbnMoKyksIDIwIGRlbGV0aW9ucygtKQ0KPiA+ DQo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L25mcC9mbG93ZXIvbmZwX2Zsb3dlci5jDQo+ ID4gYi9kcml2ZXJzL25ldC9uZnAvZmxvd2VyL25mcF9mbG93ZXIuYw0KPiA+IGluZGV4IDQxYjBm ZTIuLmFhODE5OWQgMTAwNjQ0DQo+ID4gLS0tIGEvZHJpdmVycy9uZXQvbmZwL2Zsb3dlci9uZnBf Zmxvd2VyLmMNCj4gPiArKysgYi9kcml2ZXJzL25ldC9uZnAvZmxvd2VyL25mcF9mbG93ZXIuYw0K PiA+IEBAIC0xMDc0LDYgKzEwNzQsOCBAQA0KPiA+ICAgbmZwX2luaXRfYXBwX2Z3X2Zsb3dlcihz dHJ1Y3QgbmZwX3BmX2RldiAqcGZfZGV2KQ0KPiA+ICAgew0KPiA+ICAgCWludCByZXQ7DQo+ID4g KwlpbnQgZXJyOw0KPiA+ICsJdWludDY0X3QgZXh0X2ZlYXR1cmVzOw0KPiA+ICAgCXVuc2lnbmVk IGludCBudW1hX25vZGU7DQo+ID4gICAJc3RydWN0IG5mcF9uZXRfaHcgKnBmX2h3Ow0KPiA+ICAg CXN0cnVjdCBuZnBfbmV0X2h3ICpjdHJsX2h3Ow0KPiA+IEBAIC0xMTE1LDYgKzExMTcsMTggQEAN Cj4gPiAgIAkJZ290byB2bmljX2NsZWFudXA7DQo+ID4gICAJfQ0KPiA+DQo+ID4gKwkvKiBSZWFk IHRoZSBleHRyYSBmZWF0dXJlcyAqLw0KPiA+ICsJZXh0X2ZlYXR1cmVzID0gbmZwX3J0c3ltX3Jl YWRfbGUocGZfZGV2LT5zeW1fdGJsLA0KPiAiX2FiaV9mbG93ZXJfZXh0cmFfZmVhdHVyZXMiLA0K PiA+ICsJCQkmZXJyKTsNCj4gPiArCWlmIChlcnIgIT0gMCkgew0KPiA+ICsJCVBNRF9JTklUX0xP RyhFUlIsICJDb3VsZG4ndCByZWFkIGV4dHJhIGZlYXR1cmVzIGZyb20gZnciKTsNCj4gPiArCQly ZXQgPSAtRUlPOw0KPiA+ICsJCWdvdG8gcGZfY3BwX2FyZWFfY2xlYW51cDsNCj4gPiArCX0NCj4g DQo+IEhpIENoYW95b25nLA0KPiANCj4gSXQgbG9va3MgbGlrZSB0aGVyZSBhcmUgdHdvIGZsYXZv ciBvZiB0aGUgZmxvd2VyIGZpcm13YXJlIGFwcGxpY2F0aW9uLCBvbmUgd2l0aA0KPiAnZXh0cmFf ZmVhdHVyZXMnIG90aGVyIHdpdGhvdXQgaXQuDQo+IERvZXMgdGhpcyB3b3J0aCBkb2N1bWVudGlu ZyBpbiB0aGUgZHJpdmVyIGRvY3VtZW50YXRpb24gYW5kIHRoZSByZWxlYXNlDQo+IG5vdGVzPw0K DQpBY3R1YWxseSwgaXQncyBqdXN0IHR3byBkaWZmZXJlbnQgbWV0aG9kcyB0byBwcm9jZXNzIHRo ZSB0dW5uZWwgZGVjYXAgYWN0aW9uIGluIHRoZSBmbG93ZXINCmZpcm13YXJlIGFwcGxpY2F0aW9u Lg0KDQpUaGUgb2xkIHZlcnNpb24gZmxvd2VyIGZpcm13YXJlIGFwcGxpY2F0aW9uIG5lZWRzICd0 dW5uZWwgbmVpZ2hib3InIGFuZCAncHJlLXR1bm5lbCcgdGFibGUNCnRvIGdldCBuZWVkZWQgaW5m b3JtYXRpb24gdG8gZGVjYXAgdGhlIHR1bm5lbCBwYWNrZXQuDQpXaGlsZSB0aGUgbmV3IHZlcnNp b24gZmxvd2VyIGZpcm13YXJlIGFwcGxpY2F0aW9uIGV4dGVuZHMgdGhlICd0dW5uZWwgbmVpZ2hi b3InIHRhYmxlIGFuZA0KZG9lcyBub3QgbmVlZCAncHJlLXR1bm5lbCcgdGFibGUgYW55bW9yZSB3 aGVuIGRlY2FwIHRoZSB0dW5uZWwgcGFja2V0Lg0KDQpUaGUgYXBwIHdoaWNoIHVzZSB0aGUgcnRl X2Zsb3cga25vdyBub3RoaW5nIGFib3V0IHRoaXMgZGlmZmVyZW5jZS4NClNvLCBzaG91bGQgd2Ug c3RpbGwgZXhwbGFpbiB0aGlzIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZCB0aGUgcmVsZWFzZSBu b3Rlcz8gSSdtIG5vdCBxdWl0ZSBzdXJlDQphYm91dCBob3cgZGV0YWlscyBzaG91bGQgd2UgZXhw b3NlIGluIHRoZXNlIGRvY3VtZW50cy4NCg==