From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-he1eur01on0049.outbound.protection.outlook.com [104.47.0.49]) by dpdk.org (Postfix) with ESMTP id 81D0A1B69B for ; Sat, 16 Jun 2018 10:24:40 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Mellanox.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=p/4u30QXBK4xQRGTqO6/VuuiKqIHuxwOMDp+Mo2+NZI=; b=Br7vR4UG8oRvulMk39Ec8mV0sC2xkVfg/r8gKU4B82lcuzlIvfc3QDWSggEWo2y4NQ8eI8TnAbbTrA5jRZrJNuX9AP3qU90XBu9rBCSihBNHe3ehOIiOW02MQPLNbqQ0gAB0/0ViJ2m3M6rpiHwA6GzqWEcwXAO+MLAprExVNLQ= Received: from AM5PR0501MB2420.eurprd05.prod.outlook.com (10.169.149.146) by AM5PR0501MB2146.eurprd05.prod.outlook.com (10.167.215.27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.863.14; Sat, 16 Jun 2018 08:24:37 +0000 Received: from AM5PR0501MB2420.eurprd05.prod.outlook.com ([fe80::e852:af25:231c:79c1]) by AM5PR0501MB2420.eurprd05.prod.outlook.com ([fe80::e852:af25:231c:79c1%10]) with mapi id 15.20.0863.016; Sat, 16 Jun 2018 08:24:37 +0000 From: "Xueming(Steven) Li" To: Adrien Mazarguil , Shahaf Shuler CC: "dev@dpdk.org" Thread-Topic: [dpdk-dev] [PATCH v2 1/7] net/mlx5: rename confusing object in probe code Thread-Index: AQHUA7qmYyoY5FUG2kewhUuF5vgYcKRijybg Date: Sat, 16 Jun 2018 08:24:37 +0000 Message-ID: References: <20180525161814.13873-1-adrien.mazarguil@6wind.com> <20180614083047.10812-1-adrien.mazarguil@6wind.com> <20180614083047.10812-2-adrien.mazarguil@6wind.com> In-Reply-To: <20180614083047.10812-2-adrien.mazarguil@6wind.com> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [180.174.142.249] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1; AM5PR0501MB2146; 7:Nn6y0V53XqfgaavO5G6qYAqv/WySc28tV/t4Wb+eAS4wCbQuEV410qV9JqwzB81/jeV3V0pIN0UVHr0fmU0/exiDn+JJ66Zo9UN5z9LQGMfb+7ii6GMsPEkLHpTRaTDLY+wCR59Jdb08lPUOG8WRyTdiTyQyGgBLJE6rD6PA5tAJUpziABmTQFuhLu0omkM8h94aTmWA1EV/ziovM6rH5dfMw7UlzYViSd+UGMeJo9BH766CbJew3lfyu9j7Q4Qq x-ms-exchange-antispam-srfa-diagnostics: SOS; x-ms-office365-filtering-ht: Tenant x-ms-office365-filtering-correlation-id: b41ac6d8-3632-44a1-f0c1-08d5d3629942 x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(4534165)(4627221)(201703031133081)(201702281549075)(48565401081)(5600026)(711020)(2017052603328)(7153060)(7193020); SRVR:AM5PR0501MB2146; x-ms-traffictypediagnostic: AM5PR0501MB2146: authentication-results: spf=none (sender IP is ) smtp.mailfrom=xuemingl@mellanox.com; x-ld-processed: a652971c-7d2e-4d9b-a6a4-d149256f461b,ExtAddr x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:; x-ms-exchange-senderadcheck: 1 x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(10201501046)(3002001)(93006095)(93001095)(3231254)(944501410)(52105095)(6055026)(149027)(150027)(6041310)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123562045)(20161123558120)(6072148)(201708071742011)(7699016); SRVR:AM5PR0501MB2146; BCL:0; PCL:0; RULEID:; SRVR:AM5PR0501MB2146; x-forefront-prvs: 0705EB1700 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(346002)(376002)(366004)(39860400002)(396003)(39380400002)(199004)(189003)(13464003)(6436002)(9686003)(33656002)(5660300001)(478600001)(7696005)(3660700001)(5250100002)(2906002)(6116002)(97736004)(3846002)(14454004)(6636002)(102836004)(59450400001)(53546011)(55016002)(6506007)(186003)(3280700002)(68736007)(305945005)(7736002)(105586002)(74316002)(106356001)(26005)(76176011)(25786009)(476003)(316002)(66066001)(486006)(86362001)(575784001)(8936002)(110136005)(81156014)(81166006)(229853002)(6246003)(53936002)(4326008)(99286004)(2900100001)(11346002)(446003); DIR:OUT; SFP:1101; SCL:1; SRVR:AM5PR0501MB2146; H:AM5PR0501MB2420.eurprd05.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; received-spf: None (protection.outlook.com: mellanox.com does not designate permitted sender hosts) x-microsoft-antispam-message-info: I/kz+xMlQrlxzVb68Z8yffdE3Vgeddmp953Gh6QHN+Zxm8QVkpVuOR84VRHkIiWM0y+fmXasXu2GtuF6Z8LwNCc35unOy4QGIQJKGseaNt/tYakr//5/P8l9V6b66bRXjZHXXVSgSAb0xbBUVXrWrbvcHv6H8R+HqN59EvcwGFEI4cUWxej1xDGNLe7/BuFa spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-Network-Message-Id: b41ac6d8-3632-44a1-f0c1-08d5d3629942 X-MS-Exchange-CrossTenant-originalarrivaltime: 16 Jun 2018 08:24:37.3309 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0501MB2146 Subject: Re: [dpdk-dev] [PATCH v2 1/7] net/mlx5: rename confusing object in probe code X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Jun 2018 08:24:40 -0000 DQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IGRldiA8ZGV2LWJvdW5jZXNA ZHBkay5vcmc+IE9uIEJlaGFsZiBPZiBBZHJpZW4gTWF6YXJndWlsDQo+IFNlbnQ6IFRodXJzZGF5 LCBKdW5lIDE0LCAyMDE4IDQ6MzUgUE0NCj4gVG86IFNoYWhhZiBTaHVsZXIgPHNoYWhhZnNAbWVs bGFub3guY29tPg0KPiBDYzogZGV2QGRwZGsub3JnDQo+IFN1YmplY3Q6IFtkcGRrLWRldl0gW1BB VENIIHYyIDEvN10gbmV0L21seDU6IHJlbmFtZSBjb25mdXNpbmcgb2JqZWN0IGluIHByb2JlIGNv ZGUNCj4gDQo+IFRoZXJlIGFyZSBzZXZlcmFsIGF0dHJpYnV0ZSBvYmplY3RzIGluIHRoaXMgZnVu Y3Rpb246DQo+IA0KPiAtIElCIGRldmljZSBhdHRyaWJ1dGVzIChzdHJ1Y3QgaWJ2X2RldmljZV9h dHRyX2V4IGRldmljZV9hdHRyKS4NCj4gLSBEaXJlY3QgVmVyYnMgYXR0cmlidXRlcyAoc3RydWN0 IG1seDVkdl9jb250ZXh0IGF0dHJzX291dCkuDQo+IC0gUG9ydCBhdHRyaWJ1dGVzIChzdHJ1Y3Qg aWJ2X3BvcnRfYXR0cikuDQo+IC0gSUIgZGV2aWNlIGF0dHJpYnV0ZXMgYWdhaW4gKHN0cnVjdCBp YnZfZGV2aWNlX2F0dHJfZXggZGV2aWNlX2F0dHJfZXgpLg0KPiANCj4gImF0dHJzX291dCIgaXMg Ym90aCBvZGQgYW5kIGluaXRpYWxpemVkIHVzaW5nIGEgbm9uc3RhbmRhcmQgc3ludGF4LiBSZW5h bWUgaXQgImR2X2F0dHIiIGZvcg0KPiBjb25zaXN0ZW5jeS4NCj4gDQo+IFNpZ25lZC1vZmYtYnk6 IEFkcmllbiBNYXphcmd1aWwgPGFkcmllbi5tYXphcmd1aWxANndpbmQuY29tPg0KPiAtLQ0KPiB2 MiBjaGFuZ2VzOg0KPiANCj4gLSBGaXhlZCBjdHggLT4gYXR0cl9jdHggaW4gbWx4NV9wY2lfcHJv YmUoKS4NCj4gLS0tDQo+ICBkcml2ZXJzL25ldC9tbHg1L21seDUuYyB8IDM0ICsrKysrKysrKysr KysrKysrLS0tLS0tLS0tLS0tLS0tLS0NCj4gIDEgZmlsZSBjaGFuZ2VkLCAxNyBpbnNlcnRpb25z KCspLCAxNyBkZWxldGlvbnMoLSkNCj4gDQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9tbHg1 L21seDUuYyBiL2RyaXZlcnMvbmV0L21seDUvbWx4NS5jIGluZGV4IDNlMGExYjE4Ni4uM2JkY2Iz OTcwIDEwMDY0NA0KPiAtLS0gYS9kcml2ZXJzL25ldC9tbHg1L21seDUuYw0KPiArKysgYi9kcml2 ZXJzL25ldC9tbHg1L21seDUuYw0KPiBAQCAtNjU0LDYgKzY1NCw3IEBAIG1seDVfcGNpX3Byb2Jl KHN0cnVjdCBydGVfcGNpX2RyaXZlciAqcGNpX2RydiBfX3J0ZV91bnVzZWQsICB7DQo+ICAJc3Ry dWN0IGlidl9kZXZpY2UgKipsaXN0ID0gTlVMTDsNCj4gIAlzdHJ1Y3QgaWJ2X2RldmljZSAqaWJ2 X2RldjsNCj4gKwlzdHJ1Y3QgbWx4NWR2X2NvbnRleHQgZHZfYXR0ciA9IHsgLmNvbXBfbWFzayA9 IDAgfTsNCj4gIAlpbnQgZXJyID0gMDsNCj4gIAlzdHJ1Y3QgaWJ2X2NvbnRleHQgKmF0dHJfY3R4 ID0gTlVMTDsNCj4gIAlzdHJ1Y3QgaWJ2X2RldmljZV9hdHRyX2V4IGRldmljZV9hdHRyOyBAQCAt NjcwLDcgKzY3MSw2IEBAIG1seDVfcGNpX3Byb2JlKHN0cnVjdCBydGVfcGNpX2RyaXZlcg0KPiAq cGNpX2RydiBfX3J0ZV91bnVzZWQsDQo+ICAJdW5zaWduZWQgaW50IG1wcnFfbWluX3N0cmlkZV9u dW1fbiA9IDA7DQo+ICAJdW5zaWduZWQgaW50IG1wcnFfbWF4X3N0cmlkZV9udW1fbiA9IDA7DQo+ ICAJaW50IGk7DQo+IC0Jc3RydWN0IG1seDVkdl9jb250ZXh0IGF0dHJzX291dCA9IHswfTsNCj4g ICNpZmRlZiBIQVZFX0lCVl9ERVZJQ0VfQ09VTlRFUlNfU0VUX1NVUFBPUlQNCj4gIAlzdHJ1Y3Qg aWJ2X2NvdW50ZXJfc2V0X2Rlc2NyaXB0aW9uIGNzX2Rlc2MgPSB7IC5jb3VudGVyX3R5cGUgPSAw IH07ICAjZW5kaWYgQEAgLTczNiwyMSArNzM2LDIxDQo+IEBAIG1seDVfcGNpX3Byb2JlKHN0cnVj dCBydGVfcGNpX2RyaXZlciAqcGNpX2RydiBfX3J0ZV91bnVzZWQsDQo+ICAJaWJ2X2RldiA9IGxp c3RbaV07DQo+ICAJRFJWX0xPRyhERUJVRywgImRldmljZSBvcGVuZWQiKTsNCj4gICNpZmRlZiBI QVZFX0lCVl9NTFg1X01PRF9TV1ANCj4gLQlhdHRyc19vdXQuY29tcF9tYXNrIHw9IE1MWDVEVl9D T05URVhUX01BU0tfU1dQOw0KPiArCWR2X2F0dHIuY29tcF9tYXNrIHw9IE1MWDVEVl9DT05URVhU X01BU0tfU1dQOw0KPiAgI2VuZGlmDQo+ICAJLyoNCj4gIAkgKiBNdWx0aS1wYWNrZXQgc2VuZCBp cyBzdXBwb3J0ZWQgYnkgQ29ubmVjdFgtNCBMeCBQRiBhcyB3ZWxsDQo+ICAJICogYXMgYWxsIENv bm5lY3RYLTUgZGV2aWNlcy4NCj4gIAkgKi8NCj4gICNpZmRlZiBIQVZFX0lCVl9ERVZJQ0VfVFVO TkVMX1NVUFBPUlQNCj4gLQlhdHRyc19vdXQuY29tcF9tYXNrIHw9IE1MWDVEVl9DT05URVhUX01B U0tfVFVOTkVMX09GRkxPQURTOw0KPiArCWR2X2F0dHIuY29tcF9tYXNrIHw9IE1MWDVEVl9DT05U RVhUX01BU0tfVFVOTkVMX09GRkxPQURTOw0KPiAgI2VuZGlmDQo+ICAjaWZkZWYgSEFWRV9JQlZf REVWSUNFX1NUUklESU5HX1JRX1NVUFBPUlQNCj4gLQlhdHRyc19vdXQuY29tcF9tYXNrIHw9IE1M WDVEVl9DT05URVhUX01BU0tfU1RSSURJTkdfUlE7DQo+ICsJZHZfYXR0ci5jb21wX21hc2sgfD0g TUxYNURWX0NPTlRFWFRfTUFTS19TVFJJRElOR19SUTsNCj4gICNlbmRpZg0KPiAtCW1seDVfZ2x1 ZS0+ZHZfcXVlcnlfZGV2aWNlKGF0dHJfY3R4LCAmYXR0cnNfb3V0KTsNCj4gLQlpZiAoYXR0cnNf b3V0LmZsYWdzICYgTUxYNURWX0NPTlRFWFRfRkxBR1NfTVBXX0FMTE9XRUQpIHsNCj4gLQkJaWYg KGF0dHJzX291dC5mbGFncyAmIE1MWDVEVl9DT05URVhUX0ZMQUdTX0VOSEFOQ0VEX01QVykgew0K PiArCW1seDVfZ2x1ZS0+ZHZfcXVlcnlfZGV2aWNlKGF0dHJfY3R4LCAmZHZfYXR0cik7DQo+ICsJ aWYgKGR2X2F0dHIuZmxhZ3MgJiBNTFg1RFZfQ09OVEVYVF9GTEFHU19NUFdfQUxMT1dFRCkgew0K PiArCQlpZiAoZHZfYXR0ci5mbGFncyAmIE1MWDVEVl9DT05URVhUX0ZMQUdTX0VOSEFOQ0VEX01Q Vykgew0KPiAgCQkJRFJWX0xPRyhERUJVRywgImVuaGFuY2VkIE1QVyBpcyBzdXBwb3J0ZWQiKTsN Cj4gIAkJCW1wcyA9IE1MWDVfTVBXX0VOSEFOQ0VEOw0KPiAgCQl9IGVsc2Ugew0KPiBAQCAtNzYy LDE0ICs3NjIsMTQgQEAgbWx4NV9wY2lfcHJvYmUoc3RydWN0IHJ0ZV9wY2lfZHJpdmVyICpwY2lf ZHJ2IF9fcnRlX3VudXNlZCwNCj4gIAkJbXBzID0gTUxYNV9NUFdfRElTQUJMRUQ7DQo+ICAJfQ0K PiAgI2lmZGVmIEhBVkVfSUJWX01MWDVfTU9EX1NXUA0KPiAtCWlmIChhdHRyc19vdXQuY29tcF9t YXNrICYgTUxYNURWX0NPTlRFWFRfTUFTS19TV1ApDQo+IC0JCXN3cCA9IGF0dHJzX291dC5zd19w YXJzaW5nX2NhcHMuc3dfcGFyc2luZ19vZmZsb2FkczsNCj4gKwlpZiAoZHZfYXR0ci5jb21wX21h c2sgJiBNTFg1RFZfQ09OVEVYVF9NQVNLX1NXUCkNCj4gKwkJc3dwID0gZHZfYXR0ci5zd19wYXJz aW5nX2NhcHMuc3dfcGFyc2luZ19vZmZsb2FkczsNCj4gIAlEUlZfTE9HKERFQlVHLCAiU1dQIHN1 cHBvcnQ6ICV1Iiwgc3dwKTsgICNlbmRpZiAgI2lmZGVmIEhBVkVfSUJWX0RFVklDRV9TVFJJRElO R19SUV9TVVBQT1JUDQo+IC0JaWYgKGF0dHJzX291dC5jb21wX21hc2sgJiBNTFg1RFZfQ09OVEVY VF9NQVNLX1NUUklESU5HX1JRKSB7DQo+ICsJaWYgKGR2X2F0dHIuY29tcF9tYXNrICYgTUxYNURW X0NPTlRFWFRfTUFTS19TVFJJRElOR19SUSkgew0KPiAgCQlzdHJ1Y3QgbWx4NWR2X3N0cmlkaW5n X3JxX2NhcHMgbXBycV9jYXBzID0NCj4gLQkJCWF0dHJzX291dC5zdHJpZGluZ19ycV9jYXBzOw0K PiArCQkJZHZfYXR0ci5zdHJpZGluZ19ycV9jYXBzOw0KPiANCj4gIAkJRFJWX0xPRyhERUJVRywg Ilx0bWluX3NpbmdsZV9zdHJpZGVfbG9nX251bV9vZl9ieXRlczogJWQiLA0KPiAgCQkJbXBycV9j YXBzLm1pbl9zaW5nbGVfc3RyaWRlX2xvZ19udW1fb2ZfYnl0ZXMpOw0KPiBAQCAtNzk0LDE1ICs3 OTQsMTUgQEAgbWx4NV9wY2lfcHJvYmUoc3RydWN0IHJ0ZV9wY2lfZHJpdmVyICpwY2lfZHJ2IF9f cnRlX3VudXNlZCwNCj4gIAl9DQo+ICAjZW5kaWYNCj4gIAlpZiAoUlRFX0NBQ0hFX0xJTkVfU0la RSA9PSAxMjggJiYNCj4gLQkgICAgIShhdHRyc19vdXQuZmxhZ3MgJiBNTFg1RFZfQ09OVEVYVF9G TEFHU19DUUVfMTI4Ql9DT01QKSkNCj4gKwkgICAgIShkdl9hdHRyLmZsYWdzICYgTUxYNURWX0NP TlRFWFRfRkxBR1NfQ1FFXzEyOEJfQ09NUCkpDQo+ICAJCWNxZV9jb21wID0gMDsNCj4gIAllbHNl DQo+ICAJCWNxZV9jb21wID0gMTsNCj4gICNpZmRlZiBIQVZFX0lCVl9ERVZJQ0VfVFVOTkVMX1NV UFBPUlQNCj4gLQlpZiAoYXR0cnNfb3V0LmNvbXBfbWFzayAmIE1MWDVEVl9DT05URVhUX01BU0tf VFVOTkVMX09GRkxPQURTKSB7DQo+IC0JCXR1bm5lbF9lbiA9ICgoYXR0cnNfb3V0LnR1bm5lbF9v ZmZsb2Fkc19jYXBzICYNCj4gKwlpZiAoZHZfYXR0ci5jb21wX21hc2sgJiBNTFg1RFZfQ09OVEVY VF9NQVNLX1RVTk5FTF9PRkZMT0FEUykgew0KPiArCQl0dW5uZWxfZW4gPSAoKGR2X2F0dHIudHVu bmVsX29mZmxvYWRzX2NhcHMgJg0KPiAgCQkJICAgICAgTUxYNURWX1JBV19QQUNLRVRfQ0FQX1RV Tk5FTEVEX09GRkxPQURfVlhMQU4pICYmDQo+IC0JCQkgICAgIChhdHRyc19vdXQudHVubmVsX29m ZmxvYWRzX2NhcHMgJg0KPiArCQkJICAgICAoZHZfYXR0ci50dW5uZWxfb2ZmbG9hZHNfY2FwcyAm DQo+ICAJCQkgICAgICBNTFg1RFZfUkFXX1BBQ0tFVF9DQVBfVFVOTkVMRURfT0ZGTE9BRF9HUkUp KTsNCj4gIAl9DQo+ICAJRFJWX0xPRyhERUJVRywgInR1bm5lbCBvZmZsb2FkaW5nIGlzICVzc3Vw cG9ydGVkIiwgQEAgLTgxMiw5ICs4MTIsOSBAQCBtbHg1X3BjaV9wcm9iZShzdHJ1Y3QNCj4gcnRl X3BjaV9kcml2ZXIgKnBjaV9kcnYgX19ydGVfdW51c2VkLA0KPiAgCQkidHVubmVsIG9mZmxvYWRp bmcgZGlzYWJsZWQgZHVlIHRvIG9sZCBPRkVEL3JkbWEtY29yZSB2ZXJzaW9uIik7ICAjZW5kaWYg ICNpZmRlZg0KPiBIQVZFX0lCVl9ERVZJQ0VfTVBMU19TVVBQT1JUDQo+IC0JbXBsc19lbiA9ICgo YXR0cnNfb3V0LnR1bm5lbF9vZmZsb2Fkc19jYXBzICYNCj4gKwltcGxzX2VuID0gKChkdl9hdHRy LnR1bm5lbF9vZmZsb2Fkc19jYXBzICYNCj4gIAkJICAgIE1MWDVEVl9SQVdfUEFDS0VUX0NBUF9U VU5ORUxFRF9PRkZMT0FEX0NXX01QTFNfT1ZFUl9HUkUpICYmDQo+IC0JCSAgIChhdHRyc19vdXQu dHVubmVsX29mZmxvYWRzX2NhcHMgJg0KPiArCQkgICAoZHZfYXR0ci50dW5uZWxfb2ZmbG9hZHNf Y2FwcyAmDQo+ICAJCSAgICBNTFg1RFZfUkFXX1BBQ0tFVF9DQVBfVFVOTkVMRURfT0ZGTE9BRF9D V19NUExTX09WRVJfVURQKSk7DQo+ICAJRFJWX0xPRyhERUJVRywgIk1QTFMgb3ZlciBHUkUvVURQ IHR1bm5lbCBvZmZsb2FkaW5nIGlzICVzc3VwcG9ydGVkIiwNCj4gIAkJbXBsc19lbiA/ICIiIDog Im5vdCAiKTsNCj4gLS0NCj4gMi4xMS4wDQoNClJldmlld2VkLWJ5OiBYdWVtaW5nIExpIDx4dWVt aW5nbEBtZWxsYW5veC5jb20+DQoNCg==