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 6B889A04FF; Wed, 23 Mar 2022 22:32:15 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 0CCE940DF7; Wed, 23 Mar 2022 22:32:15 +0100 (CET) Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on2115.outbound.protection.outlook.com [40.107.93.115]) by mails.dpdk.org (Postfix) with ESMTP id 2AEC84068A for ; Wed, 23 Mar 2022 22:32:14 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Y4FtP8+qxno/KvfOEmnW1usU41xbY+r2F/+qaHNK6mj48bZN2K0sSu0WIw/1NlNlKzvVqJle51JUArAWqoLZOIMnYWXFvqsRdPAEJDXvpDkneTZfZXbpJyzYLV9vPBV2qBtXmKUPITnndArE29LMk6FQsADIcd+3bLWj+Eo5sx0MEKVCSi1T7CJhq2UtiGH/WDzVJgsTTDjzI3FDQS7lkuxp1Nr7RcCra/3xfVta/6gbvRtQ9qSOMbOl19CGJz/iw2Oc96TZEUyG5GjZW0vWPU01S2HOxKu9vaBeedGdkSl/Uo7myGoK7qYki5hlL5fjtL3EkKTOoZ1LqgIq5UAoNQ== 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=jMy/S/2eC80gLMzigflrhnfu/NhRjoi3UntiIObDPCk=; b=VBJAEiQjuGr5fTKv+t+YGf5muSoAYtGy96JwGKTq0gyJmRs0LW4JcsC+HfQJzp+DQozvLJzCnNKvQ5nm0OqoTn8j7YI5enawtiXhNnPmJHshAezqTBtoOxR94mVKW/p4UkEIDL041HyBMAlmlnBpLmWPdiyZbg15qUpA2bB4TiPaQBocrx/kINIxC6PVQHwQb24yl2jaxnROP0+w8NSZj1e6udqdumutui/t6h7QiTpcucdiCDVwkrJCgtyPAJNxAP/hbjkhZueXhlMCBEoYc0cLm24EvQ8dl+8taRoeBo/uafu9bu7tjKxPFNC2swWcXFvtphtnmZ2YDRaTnwS9TQ== 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=jMy/S/2eC80gLMzigflrhnfu/NhRjoi3UntiIObDPCk=; b=Nj6nXfDTZb5EP3f4gSgIunxj8qChN5X1XcpyVzLL2rAFDX9hlsv7XfHmegK0hWlLHu5aG+ygX28xQ1TRIMl+fVtFhvYz1IWBPtdROL0mM3AdDUSnoQAcMDz25bVvSObd3EJ/tkQLHA6zrmYKk11qavFB2mJUxMUUATm6OwBJ0Wg= Received: from BY5PR21MB1506.namprd21.prod.outlook.com (2603:10b6:a03:23d::12) by SJ0PR21MB1936.namprd21.prod.outlook.com (2603:10b6:a03:297::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5081.13; Wed, 23 Mar 2022 21:31:59 +0000 Received: from BY5PR21MB1506.namprd21.prod.outlook.com ([fe80::856e:4aee:3fc4:c8cb]) by BY5PR21MB1506.namprd21.prod.outlook.com ([fe80::856e:4aee:3fc4:c8cb%3]) with mapi id 15.20.5123.008; Wed, 23 Mar 2022 21:31:59 +0000 From: Long Li To: David Marchand , "longli@linuxonhyperv.com" CC: dev , Stephen Hemminger Subject: RE: [PATCH] net/netvsc: fix the calculation of checksums based on mbuf flag Thread-Topic: [PATCH] net/netvsc: fix the calculation of checksums based on mbuf flag Thread-Index: AQHYPm5qTAtS6O3od0yyH0PMIBk+rKzMpi4AgADXhRA= Date: Wed, 23 Mar 2022 21:31:59 +0000 Message-ID: References: <1648009687-19957-1-git-send-email-longli@linuxonhyperv.com> In-Reply-To: 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=5fd76a09-0940-43f0-a556-66fed685ce2b; 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-03-23T21:30:56Z; 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-office365-filtering-correlation-id: a2f00877-4def-4c64-5679-08da0d14901b x-ms-traffictypediagnostic: SJ0PR21MB1936:EE_ x-ms-exchange-atpmessageproperties: SA|SL x-microsoft-antispam-prvs: x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: ntUQHi4sYD/Lcw8H9u9kUvWS5BedpxACqic/oioFKHu0wuCPmEcPlEWjsvvqHYA/T8tqB/Ln6oo7i2SPGcNB1dOwh0bUeIrDv9xMnITUDYm3Zbyjlh+liqTZUSxIT7zdi+EdkOnuXYB3IMw+TFjKA7MJJzKSRzBIYlEP8+CHC4RPLrPUC40cpPILqWAV0HC43pP/qaPC/n4yfgtKlkDNlA3nloUH7FWXO3mjiMxoX9J1AfqT5L1mm3/XSDmPLdx80pjfetr1Yrizl6tWwrxz78jbXY8PIksj/8l3UH93YjFDU3cU4/fLz8jxY+InWBwvtx6IP00KnPVGzbcFNjadaRARkZOjh00Yh38m0kL2HYJUQWZpOhpVmiCwaQnEvshmZA2ho3I2H8UBVQv+HZpafUYSvlonqBwprsCc0nPJnAcx4ItYnqPDtIDSBNfFoB0gqWH1v/g6/sLp1ESIuN1DBP1dcExm12hH0jn1tKBLHoPhQkx0Z6Z7sDFXFF/sNti/LTuVM9dl7gpsFRdGxe3Uaw2+I/8O0CqDJu4h3lKEsmrXudEs60ULIPTfGOWmNTA9T/wqps9I8hsbIT4ILsnylyjWaCYQUcQgEO3zWnNiMaJ/hKX8dIyHlBPxx9sfGf4bXAx2rCiAQfC0Z+SpY44VJSaAVkAUuGZbMEYt5d2WC763HTKz2gQ0rbURNFT+40xyRXkCZ3CwFy2y/HX3Qiy8CxA6dxWJ6zOu+ZCrHxvpZlgr8D6X2XyVcJow674KQ7Kb x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BY5PR21MB1506.namprd21.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230001)(4636009)(366004)(451199009)(66556008)(66476007)(66946007)(64756008)(8676002)(8990500004)(33656002)(186003)(110136005)(82950400001)(82960400001)(54906003)(66446008)(122000001)(86362001)(52536014)(38070700005)(38100700002)(316002)(4326008)(8936002)(76116006)(107886003)(53546011)(508600001)(10290500003)(6506007)(7696005)(71200400001)(55016003)(5660300002)(83380400001)(9686003)(2906002)(26005); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?cTJqUVZYWlQ3eFNWMFhIUnBTZ2hjTTA3b01CeTZXVittbEgrdXFoODZVN1dZ?= =?utf-8?B?MnVobXFLS2kzVm1waHJNM0tBY05DRnZDME5qd1N5ekhLNVBuc0tpcDFEL1M4?= =?utf-8?B?M0QydUw4aVRwY1gwOENlbEt2clBzS0kvRXA2cmtYdm1KZzdQTDVRTi9QbDVT?= =?utf-8?B?SUo2eC9qODJUQUtlTG4yOWlxcEoxQ21mNTRTVEN3RVZDd0QxNDJJZk5reVNi?= =?utf-8?B?aG84c1RRbGhCa1NSZ3NCQTA2cTViaEI2TzN4OUFhSU9seUZJVGp5RGNicWUx?= =?utf-8?B?TUVtWnZkUFk5M2lxMVZ6ZTFxa2FZdXNabURzZFNWYVVkbWtZZVhaemUrZzd6?= =?utf-8?B?Z1dxTHZJM29Gc1dhSER6MDZzemVsTDhjd3Vsek5VRWFHQmJoUzd4N0dEU1Z6?= =?utf-8?B?QzlhR3BscUN6SWE2bm9sbjc3WUZaQWtiTjd3VzV3emN2aEdERXRUTHhiVTVv?= =?utf-8?B?RXdWeDJzSzdKTmZ2MFUrVW1XYnhyT1pHc2plMVF3Rmlsc1VXbGJWYS8ydXRI?= =?utf-8?B?SVFGZWUwZjJwanlvMXdmRUhOTnJrUWg0cmltZ3Nyck5oTmV2Wk1EbmVqS0hj?= =?utf-8?B?ZTBhRUwwSVVvNE5zazFDT2VLSkwvVlZpMjhhZDcvZzdGb1Q0STlrRHE3K2NQ?= =?utf-8?B?U2RwSGN3czZ4SzhjRllqdGRpVFdWOSttL3lZdTA5VndTRDQ4YnhPc2tobGhl?= =?utf-8?B?U3N5YjUrNHZtbjQrbm56eTVEcXhtL0U0OVZRMk4zcWFLVUJnWHBUWVVjN1Fn?= =?utf-8?B?Nm9mRDlvQUlEMWZRazRtQyt0QjVkV28xdG55TzM5cEIzb1ZnVndHcnhiNFFM?= =?utf-8?B?RThWcWlNS2wyVTg1WTRPbVhBZk1ET3JKaFBIY1J3anB6NWNtUHE3TXZ1NGZn?= =?utf-8?B?bUVYYU5lOWpjZC9lc202QnNGMkUwNkJIY3pUL3ZZaDJhdFB5SVhSVTZUOHNY?= =?utf-8?B?YVpuZVJrRHNPZUwrZDZzL2xHMkhuc2YyYm9GVEpwdmFhOVVZQ3VUVUNmdzZy?= =?utf-8?B?R2pYL2YxOXNENC9kY3N2a3B3SjBleVIrK1R6ODF4Qm1tR2xTcmJMS1ZJQkg5?= =?utf-8?B?VHBxNDU0c1YrTTJRMFhPMjN2bVV0QUdCWUJhN3N6cTB4dVNVNUswQ2l0Mmdp?= =?utf-8?B?OXdTVXRFSDBSYkdFSFRMN2JGNXBPRTBHK3MyY1lCT0taM0gxa2NnTlZBdVNs?= =?utf-8?B?aEFiRFFzOERTSjFTeUdQRzRHU25oQjhTd0owS2dyZWFzVGdsSi9CUDhPbFlI?= =?utf-8?B?SU5uTnREblJlSzcxeWxMSFJBRUJka0U5bzlHZnhmeVZkSk52SEorblF5eE4r?= =?utf-8?B?K29vcTBHbUlXV3c5Si9HNnRtMnNYVGhSMUNkY21rNDZvSFRaMXdGVmxyRjhv?= =?utf-8?B?QzFLbGpIR2RsMldqVjlwbzBWT21lK3Z2emUrRmt0VktJakxHU0VVTXNVaWNV?= =?utf-8?B?cVJtZ2krLzB0Zlp3TGNacGtYYjVZbkZuRnVjOWw4WWlFR3VTZkpzSk4yTUp5?= =?utf-8?B?ZFhucVIxQmJld21EUkNpYnF5em1pTk1wRHZ3TFRVSXFvMGlBTlRDTG14TWk3?= =?utf-8?B?cW5kWFlzWm1ERUJ2Z0tLb0RuR2dtRW1QSEp6ZVpYd0RVOHNJUDh5WlN1ZXpY?= =?utf-8?B?TVc2cy9vbHpJbnlwOUJTdnMrNER4eG4yL2hQS2pBSE8vN21kcU43ZEdETXZ6?= =?utf-8?B?VW5LV1UyV2RKRGt3WjE0V2ZlcVN1YkkxV0NvaGp1ZGdZMGxialRjMVQrRlM0?= =?utf-8?B?d2RtOTZEOTV4dUFzVnZQSUp1Z2czeURtSlc2MW9XNEtIZHpPV2Q5OGU4YmRF?= =?utf-8?B?eUtrclFsVWpZRnpVRWtGSHN1bFlVSi9LS29YVll3MTk4eEtFdVFYL2pjblRs?= =?utf-8?B?eDRlN052NURmWU5mWHlERUlHQWhscUZvL0l5ZFZsNWZwbENtN2dNMnE4Ymtn?= =?utf-8?Q?rm9rE9XEpRZ3pjQLaVCeIhm7VTjQr3FD?= 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: BY5PR21MB1506.namprd21.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: a2f00877-4def-4c64-5679-08da0d14901b X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Mar 2022 21:31:59.3414 (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: H3hc4zC5d9anMCXcql0lYn/eaJ2f4mPH7q4qI8BgAlifZGduId1Q8oixjVOLsh3mv9bFnDwhEXApu7BnKbZ1zQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR21MB1936 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 PiBTdWJqZWN0OiBSZTogW1BBVENIXSBuZXQvbmV0dnNjOiBmaXggdGhlIGNhbGN1bGF0aW9uIG9m IGNoZWNrc3VtcyBiYXNlZCBvbg0KPiBtYnVmIGZsYWcNCj4gDQo+IE9uIFdlZCwgTWFyIDIzLCAy MDIyIGF0IDU6MjggQU0gPGxvbmdsaUBsaW51eG9uaHlwZXJ2LmNvbT4gd3JvdGU6DQo+ID4NCj4g PiBGcm9tOiBMb25nIExpIDxsb25nbGlAbWljcm9zb2Z0LmNvbT4NCj4gPg0KPiA+IFRoZSBuZXR2 c2Mgc2hvdWxkIHVzZSBSVEVfTUJVRl9GX1RYX0w0X01BU0sgYW5kIGNoZWNrIHRoZSB2YWx1ZSB0 bw0KPiA+IGRlY2lkZSB0aGUgY29ycmVjdCB3YXkgdG8gY2FsY3VsYXRlIGNoZWNrc3Vtcy4NCj4g DQo+IEl0J3MgYmV0dGVyIHRvIGRlc2NyaWJlIHdoYXQgdGhlIGltcGFjdCBmb3IgYW4gYXBwbGlj YXRpb24gaXMuDQo+IERvIEkgdW5kZXJzdGFuZCBjb3JyZWN0bHkgdGhhdCBVRFAgY2hlY2tzdW0g b2ZmbG9hZGluZyB3YXMgYnJva2VuPw0KPiANCj4gDQo+IEkgZ3Vlc3MgeW91IHdhbnQgdGhpcyBi YWNrcG9ydGVkLg0KPiBGaXhlczogNGU5YzczZTk2ZTgzICgibmV0L25ldHZzYzogYWRkIEh5cGVy LVYgbmV0d29yayBkZXZpY2UiKQ0KPiBDYzogc3RhYmxlQGRwZGsub3JnDQoNCkknbSBzZW5kaW5n IFYyIHdpdGggdGhlIEZpeGVzIHRhZy4gDQoNClRoYW5rcywNCkxvbmcNCg0KPiANCj4gDQo+ID4N Cj4gPiBTaWduZWQtb2ZmLWJ5OiBMb25nIExpIDxsb25nbGlAbWljcm9zb2Z0LmNvbT4NCj4gPiAt LS0NCj4gPiAgZHJpdmVycy9uZXQvbmV0dnNjL2huX3J4dHguYyB8IDEzICsrKysrKysrKy0tLS0N Cj4gPiAgMSBmaWxlIGNoYW5nZWQsIDkgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkNCj4g Pg0KPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9uZXR2c2MvaG5fcnh0eC5jDQo+ID4gYi9k cml2ZXJzL25ldC9uZXR2c2MvaG5fcnh0eC5jIGluZGV4IDAyOGYxNzZjN2UuLjM0ZjQwYmU1Yjgg MTAwNjQ0DQo+ID4gLS0tIGEvZHJpdmVycy9uZXQvbmV0dnNjL2huX3J4dHguYw0KPiA+ICsrKyBi L2RyaXZlcnMvbmV0L25ldHZzYy9obl9yeHR4LmMNCj4gPiBAQCAtMTM0OCw4ICsxMzQ4LDExIEBA IHN0YXRpYyB2b2lkIGhuX2VuY2FwKHN0cnVjdCBybmRpc19wYWNrZXRfbXNnDQo+ICpwa3QsDQo+ ID4gICAgICAgICAgICAgICAgICAgICAgICAgKnBpX2RhdGEgPSBORElTX0xTTzJfSU5GT19NQUtF SVBWNChobGVuLA0KPiA+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgbS0+dHNvX3NlZ3N6KTsNCj4gPiAgICAgICAgICAgICAgICAgfQ0K PiA+IC0gICAgICAgfSBlbHNlIGlmIChtLT5vbF9mbGFncyAmDQo+ID4gLSAgICAgICAgICAgICAg ICAgIChSVEVfTUJVRl9GX1RYX1RDUF9DS1NVTSB8DQo+IFJURV9NQlVGX0ZfVFhfVURQX0NLU1VN IHwgUlRFX01CVUZfRl9UWF9JUF9DS1NVTSkpIHsNCj4gPiArICAgICAgIH0gZWxzZSBpZiAoKG0t Pm9sX2ZsYWdzICYgUlRFX01CVUZfRl9UWF9MNF9NQVNLKSA9PQ0KPiA+ICsgICAgICAgICAgICAg ICAgICAgICAgIFJURV9NQlVGX0ZfVFhfVENQX0NLU1VNIHx8DQo+ID4gKyAgICAgICAgICAgICAg ICAgIChtLT5vbF9mbGFncyAmIFJURV9NQlVGX0ZfVFhfTDRfTUFTSykgPT0NCj4gPiArICAgICAg ICAgICAgICAgICAgICAgICBSVEVfTUJVRl9GX1RYX1VEUF9DS1NVTSB8fA0KPiA+ICsgICAgICAg ICAgICAgICAgICAobS0+b2xfZmxhZ3MgJiBSVEVfTUJVRl9GX1RYX0lQX0NLU1VNKSkgew0KPiA+ ICAgICAgICAgICAgICAgICBwaV9kYXRhID0gaG5fcm5kaXNfcGt0aW5mb19hcHBlbmQocGt0LA0K PiBORElTX1RYQ1NVTV9JTkZPX1NJWkUsDQo+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBORElTX1BLVElORk9fVFlQRV9DU1VNKTsNCj4gPiAgICAg ICAgICAgICAgICAgKnBpX2RhdGEgPSAwOw0KPiA+IEBAIC0xMzYzLDkgKzEzNjYsMTEgQEAgc3Rh dGljIHZvaWQgaG5fZW5jYXAoc3RydWN0IHJuZGlzX3BhY2tldF9tc2cNCj4gKnBrdCwNCj4gPiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpwaV9kYXRhIHw9IE5ESVNfVFhDU1VNX0lO Rk9fSVBDUzsNCj4gPiAgICAgICAgICAgICAgICAgfQ0KPiA+DQo+ID4gLSAgICAgICAgICAgICAg IGlmIChtLT5vbF9mbGFncyAmIFJURV9NQlVGX0ZfVFhfVENQX0NLU1VNKQ0KPiA+ICsgICAgICAg ICAgICAgICBpZiAoKG0tPm9sX2ZsYWdzICYgUlRFX01CVUZfRl9UWF9MNF9NQVNLKSA9PQ0KPiA+ ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRFX01CVUZfRl9UWF9UQ1BfQ0tTVU0p DQo+ID4gICAgICAgICAgICAgICAgICAgICAgICAgKnBpX2RhdGEgfD0gTkRJU19UWENTVU1fSU5G T19NS1RDUENTKGhsZW4pOw0KPiA+IC0gICAgICAgICAgICAgICBlbHNlIGlmIChtLT5vbF9mbGFn cyAmIFJURV9NQlVGX0ZfVFhfVURQX0NLU1VNKQ0KPiA+ICsgICAgICAgICAgICAgICBlbHNlIGlm ICgobS0+b2xfZmxhZ3MgJiBSVEVfTUJVRl9GX1RYX0w0X01BU0spID09DQo+ID4gKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBSVEVfTUJVRl9GX1RYX1VEUF9DS1NVTSkNCj4gPiAgICAg ICAgICAgICAgICAgICAgICAgICAqcGlfZGF0YSB8PSBORElTX1RYQ1NVTV9JTkZPX01LVURQQ1Mo aGxlbik7DQo+ID4gICAgICAgICB9DQo+ID4NCj4gPiAtLQ0KPiA+IDIuMzIuMA0KPiA+DQo+IA0K PiANCj4gLS0NCj4gRGF2aWQgTWFyY2hhbmQNCg0K