From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-10.8 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id BB1C4C4361B for ; Tue, 8 Dec 2020 16:29:03 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 86C1523AC8 for ; Tue, 8 Dec 2020 16:29:03 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728752AbgLHQ3D (ORCPT ); Tue, 8 Dec 2020 11:29:03 -0500 Received: from smtp-fw-2101.amazon.com ([72.21.196.25]:36166 "EHLO smtp-fw-2101.amazon.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729703AbgLHQ3C (ORCPT ); Tue, 8 Dec 2020 11:29:02 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amazon.com; i=@amazon.com; q=dns/txt; s=amazon201209; t=1607444941; x=1638980941; h=from:to:cc:date:message-id:references:in-reply-to: content-id:mime-version:content-transfer-encoding:subject; bh=u3jMMR8dE0dEnrhcxOaGndV5ImynMyUkxLgrZfa1FY4=; b=YePygNFm/0EX4ledpUUcz953rt2uF5twcl7VclO7K8BOQ5Lv0ZxR8Ll1 bT+zo10HHkaDz9zWbG5CILWojBl0hv7I0+YabtUbXpZyp7JM6PvYCnZMo V60kMrl3Rzxxq+yGJc4TO7AyOUSrdkC9X48m7udDYegjt1kmMij9V2LYQ c=; X-IronPort-AV: E=Sophos;i="5.78,402,1599523200"; d="scan'208";a="67940397" Subject: Re: [PATCH net-next] tcp: optimise receiver buffer autotuning initialisation for high latency connections Thread-Topic: [PATCH net-next] tcp: optimise receiver buffer autotuning initialisation for high latency connections Received: from iad12-co-svc-p1-lb1-vlan3.amazon.com (HELO email-inbound-relay-1d-474bcd9f.us-east-1.amazon.com) ([10.43.8.6]) by smtp-border-fw-out-2101.iad2.amazon.com with ESMTP; 08 Dec 2020 16:28:12 +0000 Received: from EX13MTAUWB001.ant.amazon.com (iad12-ws-svc-p26-lb9-vlan2.iad.amazon.com [10.40.163.34]) by email-inbound-relay-1d-474bcd9f.us-east-1.amazon.com (Postfix) with ESMTPS id BD64CA1CDC; Tue, 8 Dec 2020 16:28:10 +0000 (UTC) Received: from EX13D35UWB002.ant.amazon.com (10.43.161.154) by EX13MTAUWB001.ant.amazon.com (10.43.161.207) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Tue, 8 Dec 2020 16:28:10 +0000 Received: from EX13D18EUA004.ant.amazon.com (10.43.165.164) by EX13D35UWB002.ant.amazon.com (10.43.161.154) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Tue, 8 Dec 2020 16:28:09 +0000 Received: from EX13D18EUA004.ant.amazon.com ([10.43.165.164]) by EX13D18EUA004.ant.amazon.com ([10.43.165.164]) with mapi id 15.00.1497.006; Tue, 8 Dec 2020 16:28:08 +0000 From: "Mohamed Abuelfotoh, Hazem" To: Eric Dumazet CC: Neal Cardwell , "netdev@vger.kernel.org" , "stable@vger.kernel.org" , "ycheng@google.com" , "weiwan@google.com" , "Strohman, Andy" , "Herrenschmidt, Benjamin" Thread-Index: AQHWym1GjWRxI1tB2UKaX8lFVs4qcanoaEaAgANdNICAAAxqgIAAA6oAgAADDACAAAwCgIAAAweAgAGBuoA= Date: Tue, 8 Dec 2020 16:28:08 +0000 Message-ID: <40735F4F-7BEC-4342-A9B1-A8780727C94A@amazon.com> References: <20201204180622.14285-1-abuehaze@amazon.com> <44E3AA29-F033-4B8E-A1BC-E38824B5B1E3@amazon.com> <3F02FF08-EDA6-4DFD-8D93-479A5B05E25A@amazon.com> <781BA871-5D3D-4C89-9629-81345CC41C5C@amazon.com> <170D5DF4-443F-47F6-B645-A8762E17A475@amazon.com> In-Reply-To: Accept-Language: en-GB, en-US Content-Language: en-GB X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-exchange-messagesentrepresentingtype: 1 x-ms-exchange-transport-fromentityheader: Hosted x-originating-ip: [10.43.165.102] Content-Type: text/plain; charset="utf-8" Content-ID: <0FFE6C992B241149BB995A26CD7FDCAB@amazon.com> MIME-Version: 1.0 Content-Transfer-Encoding: base64 Precedence: bulk List-ID: X-Mailing-List: stable@vger.kernel.org ICAgID5QbGVhc2UgdHJ5IGFnYWluLCB3aXRoIGEgZml4ZWQgdGNwX3JtZW1bMV0gb24gcmVjZWl2 ZXIsIHRha2luZyBpbnRvDQogICAgPmFjY291bnQgYmlnZ2VyIG1lbW9yeSByZXF1aXJlbWVudCBm b3IgTVRVIDkwMDANCg0KICAgID5SYXRpb25hbGUgOiBUQ1Agc2hvdWxkIGJlIHJlYWR5IHRvIHJl Y2VpdmUgMTAgZnVsbCBmcmFtZXMgYmVmb3JlDQogICAgPmF1dG90dW5pbmcgdGFrZXMgcGxhY2Ug KHRoZXNlIDEwIE1TUyBhcmUgdHlwaWNhbGx5IGluIGEgc2luZ2xlIEdSTw0KICAgPiBwYWNrZXQp DQoNCiAgICA+QXQgOTAwMCBNVFUsIG9uZSBmcmFtZSB0eXBpY2FsbHkgY29uc3VtZXMgMTJLQiAo b3IgMTZLQiBvbiBzb21lIGFyY2hlcy9kcml2ZXJzKQ0KDQogICA+VENQIHVzZXMgYSA1MCUgZmFj dG9yIHJ1bGUsIGFjY291bnRpbmcgMTgwMDAgYnl0ZXMgb2Yga2VybmVsIG1lbW9yeSBwZXIgTVNT Lg0KDQogICAgLT4NCg0KICAgID5lY2hvICI0MDk2IDE4MDAwMCAxNTcyODY0MCIgPi9wcm9jL3N5 cy9uZXQvaXB2NC90Y3Bfcm1lbQ0KDQoNCg0KPmRpZmYgLS1naXQgYS9uZXQvaXB2NC90Y3BfaW5w dXQuYyBiL25ldC9pcHY0L3RjcF9pbnB1dC5jDQo+aW5kZXggOWU4YTZjMWFhMDE5MGNjMjQ4YjNi OTliMDczYTRjNmU0NTg4NGNmNS4uODFiNWQ5Mzc1ODYwYWU1ODNlMDgwNDVmYjI1YjA4OWM0NTZj NjBhYg0KPjEwMDY0NA0KPi0tLSBhL25ldC9pcHY0L3RjcF9pbnB1dC5jDQo+KysrIGIvbmV0L2lw djQvdGNwX2lucHV0LmMNCj5AQCAtNTM0LDYgKzUzNCw3IEBAIHN0YXRpYyB2b2lkIHRjcF9pbml0 X2J1ZmZlcl9zcGFjZShzdHJ1Y3Qgc29jayAqc2spDQo+DQo+ICAgICAgICB0cC0+cmN2X3NzdGhy ZXNoID0gbWluKHRwLT5yY3Zfc3N0aHJlc2gsIHRwLT53aW5kb3dfY2xhbXApOw0KPiAgICAgICB0 cC0+c25kX2N3bmRfc3RhbXAgPSB0Y3BfamlmZmllczMyOw0KPisgICAgICAgdHAtPnJjdnFfc3Bh Y2Uuc3BhY2UgPSBtaW4odHAtPnJjdl9zc3RocmVzaCwgdHAtPnJjdnFfc3BhY2Uuc3BhY2UpOw0K Pn0NCg0KWWVzIHRoaXMgd29ya2VkIGFuZCBpdCBsb29rcyBsaWtlIGVjaG8gIjQwOTYgMTQwMDAw IDE1NzI4NjQwIiA+L3Byb2Mvc3lzL25ldC9pcHY0L3RjcF9ybWVtIGlzIGFjdHVhbGx5IGVub3Vn aCB0byB0cmlnZ2VyIFRDUCBhdXRvdHVuaW5nLCBpZiB0aGUgY3VycmVudCBkZWZhdWx0IHRjcF9y bWVtWzFdIGRvZXNuJ3Qgd29yayB3ZWxsIHdpdGggOTAwMCBNVFUgSSBhbSBjdXJpb3VzIHRvIGtu b3cgIGlmIHRoZXJlIGlzIHNwZWNpZmljIHJlYXNvbiBiZWhpbmQgaGF2aW5nIDEzMTA3MiBzcGVj aWZpY2FsbHkgICBhcyAgdGNwX3JtZW1bMV0/SSB0aGluayB0aGUgbnVtYmVyIGl0c2VsZiBoYXMg dG8gYmUgZGl2aXNpYmxlIGJ5IHBhZ2Ugc2l6ZSAoNEspIGFuZCAxNktCIGdpdmVuIHdoYXQgeW91 IHNhaWQgdGhhdCBlYWNoIEp1bWJvIGZyYW1lIHBhY2tldCBtYXkgY29uc3VtZSB1cCB0byAxNktC Lg0KDQppZiB0aGUgcGF0Y2ggSSBwcm9wb3NlZCB3b3VsZCBiZSByaXNreSBmb3IgdXNlcnMgd2hv IGhhdmUgTVRVIG9mIDE1MDAgYmVjYXVzZSBvZiBpdHMgaGlnaGVyIG1lbW9yeSBmb290cHJpbnQg aW4gbXkgb3BpbmlvbiB3ZSBzaG91bGQgIGdldCB0aGUgcGF0Y2ggeW91IHByb3Bvc2VkIG1lcmdl ZCBpbnN0ZWFkIG9mIGFza2luZyB0aGUgQWRtaW5zIGRvaW5nIHRoZSBtYW51YWwgd29yay4NCg0K VGhhbmsgeW91Lg0KDQpIYXplbQ0KDQrvu79PbiAwNy8xMi8yMDIwLCAxNzoyOCwgIkVyaWMgRHVt YXpldCIgPGVkdW1hemV0QGdvb2dsZS5jb20+IHdyb3RlOg0KDQogICAgQ0FVVElPTjogVGhpcyBl bWFpbCBvcmlnaW5hdGVkIGZyb20gb3V0c2lkZSBvZiB0aGUgb3JnYW5pemF0aW9uLiBEbyBub3Qg Y2xpY2sgbGlua3Mgb3Igb3BlbiBhdHRhY2htZW50cyB1bmxlc3MgeW91IGNhbiBjb25maXJtIHRo ZSBzZW5kZXIgYW5kIGtub3cgdGhlIGNvbnRlbnQgaXMgc2FmZS4NCg0KDQoNCiAgICBPbiBNb24s IERlYyA3LCAyMDIwIGF0IDY6MTcgUE0gTW9oYW1lZCBBYnVlbGZvdG9oLCBIYXplbQ0KICAgIDxh YnVlaGF6ZUBhbWF6b24uY29tPiB3cm90ZToNCiAgICA+DQogICAgPiAgICAgPlRoYW5rcyBmb3Ig dGVzdGluZyB0aGlzLCBFcmljLiBXb3VsZCB5b3UgYmUgYWJsZSB0byBzaGFyZSB0aGUgTVRVDQog ICAgPiAgICAgPmNvbmZpZyBjb21tYW5kcyB5b3UgdXNlZCwgYW5kIHRoZSB0Y3BkdW1wIHRyYWNl cyB5b3UgZ2V0PyBJJ20NCiAgICA+ICAgICA+c3VycHJpc2VkIHRoYXQgcmVjZWl2ZSBidWZmZXIg YXV0b3R1bmluZyB3b3VsZCB3b3JrIGZvciBhZHZtc3Mgb2YNCiAgICA+ICAgICA+YXJvdW5kIDY1 MDAgb3IgaGlnaGVyLg0KICAgID4NCiAgICA+IFBhY2tldCBjYXB0dXJlIGJlZm9yZSBhcHBseWlu ZyB0aGUgcHJvcG9zZWQgcGF0Y2gNCiAgICA+DQogICAgPiBodHRwczovL3RjcGF1dG90dW5pbmdw Y2Fwcy5zMy5ldS13ZXN0LTEuYW1hem9uYXdzLmNvbS9zZW5kZXItYmJyLWJhZC11bnBhdGNoZWQu cGNhcD9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFL SUFKTk1QNVpaM0k0RkFRR0FRJTJGMjAyMDEyMDclMkZldS13ZXN0LTElMkZzMyUyRmF3czRfcmVx dWVzdCZYLUFtei1EYXRlPTIwMjAxMjA3VDE3MDEyM1omWC1BbXotRXhwaXJlcz02MDQ4MDAmWC1B bXotU2lnbmVkSGVhZGVycz1ob3N0JlgtQW16LVNpZ25hdHVyZT1hNTk5YTBlMGU2NjMyYTk1N2U1 NjE5MDA3YmE1Y2U0ZjYzYzhlODUzNWVhMjQ0NzBiNzA5M2ZlZjQ0MGE4MzAwDQogICAgPg0KICAg ID4gUGFja2V0IGNhcHR1cmUgYWZ0ZXIgYXBwbHlpbmcgdGhlIHByb3Bvc2VkIHBhdGNoDQogICAg Pg0KICAgID4gaHR0cHM6Ly90Y3BhdXRvdHVuaW5ncGNhcHMuczMuZXUtd2VzdC0xLmFtYXpvbmF3 cy5jb20vc2VuZGVyLWJici1nb29kLXBhdGNoZWQucGNhcD9YLUFtei1BbGdvcml0aG09QVdTNC1I TUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFKTk1QNVpaM0k0RkFRR0FRJTJGMjAyMDEy MDclMkZldS13ZXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjAxMjA3VDE2 NTgzMVomWC1BbXotRXhwaXJlcz02MDQ4MDAmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JlgtQW16 LVNpZ25hdHVyZT1mMThlYzcyNDYxMDc1OTBlOGFjMzVjMjQzMjJhZjY5OWU0YzJhNzNkMTc0MDY3 YzUxY2Y2YjBhMDZiYmJjYTc3DQogICAgPg0KICAgID4ga2VybmVsIHZlcnNpb24gJiBNVFUgYW5k IGNvbmZpZ3VyYXRpb24gIGZyb20gbXkgcmVjZWl2ZXIgJiBzZW5kZXIgaXMgYXR0YWNoZWQgdG8g dGhpcyBlLW1haWwsIHBsZWFzZSBiZSBhd2FyZSB0aGF0IEVDMiBpcyBkb2luZyBNU1MgY2xhbXBp bmcgc28geW91IG5lZWQgdG8gY29uZmlndXJlIE1UVSBhcyAxNTAwIG9uIHRoZSBzZW5kZXIgc2lk ZSBpZiB5b3UgZG9u4oCZdCBoYXZlIGFueSBNU1MgY2xhbXBpbmcgYmV0d2VlbiBzZW5kZXIgJiBy ZWNlaXZlci4NCiAgICA+DQogICAgPiBUaGFuayB5b3UuDQogICAgPg0KICAgID4gSGF6ZW0NCg0K ICAgIFBsZWFzZSB0cnkgYWdhaW4sIHdpdGggYSBmaXhlZCB0Y3Bfcm1lbVsxXSBvbiByZWNlaXZl ciwgdGFraW5nIGludG8NCiAgICBhY2NvdW50IGJpZ2dlciBtZW1vcnkgcmVxdWlyZW1lbnQgZm9y IE1UVSA5MDAwDQoNCiAgICBSYXRpb25hbGUgOiBUQ1Agc2hvdWxkIGJlIHJlYWR5IHRvIHJlY2Vp dmUgMTAgZnVsbCBmcmFtZXMgYmVmb3JlDQogICAgYXV0b3R1bmluZyB0YWtlcyBwbGFjZSAodGhl c2UgMTAgTVNTIGFyZSB0eXBpY2FsbHkgaW4gYSBzaW5nbGUgR1JPDQogICAgcGFja2V0KQ0KDQog ICAgQXQgOTAwMCBNVFUsIG9uZSBmcmFtZSB0eXBpY2FsbHkgY29uc3VtZXMgMTJLQiAob3IgMTZL QiBvbiBzb21lIGFyY2hlcy9kcml2ZXJzKQ0KDQogICAgVENQIHVzZXMgYSA1MCUgZmFjdG9yIHJ1 bGUsIGFjY291bnRpbmcgMTgwMDAgYnl0ZXMgb2Yga2VybmVsIG1lbW9yeSBwZXIgTVNTLg0KDQog ICAgLT4NCg0KICAgIGVjaG8gIjQwOTYgMTgwMDAwIDE1NzI4NjQwIiA+L3Byb2Mvc3lzL25ldC9p cHY0L3RjcF9ybWVtDQoNCg0KDQogICAgPg0KICAgID4NCiAgICA+IE9uIDA3LzEyLzIwMjAsIDE2 OjM0LCAiTmVhbCBDYXJkd2VsbCIgPG5jYXJkd2VsbEBnb29nbGUuY29tPiB3cm90ZToNCiAgICA+ DQogICAgPiAgICAgQ0FVVElPTjogVGhpcyBlbWFpbCBvcmlnaW5hdGVkIGZyb20gb3V0c2lkZSBv ZiB0aGUgb3JnYW5pemF0aW9uLiBEbyBub3QgY2xpY2sgbGlua3Mgb3Igb3BlbiBhdHRhY2htZW50 cyB1bmxlc3MgeW91IGNhbiBjb25maXJtIHRoZSBzZW5kZXIgYW5kIGtub3cgdGhlIGNvbnRlbnQg aXMgc2FmZS4NCiAgICA+DQogICAgPg0KICAgID4NCiAgICA+ICAgICBPbiBNb24sIERlYyA3LCAy MDIwIGF0IDExOjIzIEFNIEVyaWMgRHVtYXpldCA8ZWR1bWF6ZXRAZ29vZ2xlLmNvbT4gd3JvdGU6 DQogICAgPiAgICAgPg0KICAgID4gICAgID4gT24gTW9uLCBEZWMgNywgMjAyMCBhdCA1OjA5IFBN IE1vaGFtZWQgQWJ1ZWxmb3RvaCwgSGF6ZW0NCiAgICA+ICAgICA+IDxhYnVlaGF6ZUBhbWF6b24u Y29tPiB3cm90ZToNCiAgICA+ICAgICA+ID4NCiAgICA+ICAgICA+ID4gICAgID5TaW5jZSBJIGNh biBub3QgcmVwcm9kdWNlIHRoaXMgcHJvYmxlbSB3aXRoIGFub3RoZXIgTklDIG9uIHg4NiwgSQ0K ICAgID4gICAgID4gPiAgICAgPnJlYWxseSB3b25kZXIgaWYgdGhpcyBpcyBub3QgYW4gaXNzdWUg d2l0aCBFTkEgZHJpdmVyIG9uIFBvd2VyUEMNCiAgICA+ICAgICA+ID4gICAgID5wZXJoYXBzID8N CiAgICA+ICAgICA+ID4NCiAgICA+ICAgICA+ID4NCiAgICA+ICAgICA+ID4gSSBhbSBhYmxlIHRv IHJlcHJvZHVjZSBpdCBvbiB4ODYgYmFzZWQgRUMyIGluc3RhbmNlcyB1c2luZyBFTkEgIG9yICBY ZW4gbmV0ZnJvbnQgb3IgSW50ZWwgaXhnYmV2ZiBkcml2ZXIgb24gdGhlIHJlY2VpdmVyIHNvIGl0 J3Mgbm90IHNwZWNpZmljIHRvIEVOQSwgd2Ugd2VyZSBhYmxlIHRvIGVhc2lseSByZXByb2R1Y2Ug aXQgYmV0d2VlbiAyIFZNcyBydW5uaW5nIGluIHZpcnR1YWwgYm94IG9uIHRoZSBzYW1lIHBoeXNp Y2FsIGhvc3QgY29uc2lkZXJpbmcgdGhlIGVudmlyb25tZW50IHJlcXVpcmVtZW50cyBJIG1lbnRp b25lZCBpbiBteSBmaXJzdCBlLW1haWwuDQogICAgPiAgICAgPiA+DQogICAgPiAgICAgPiA+IFdo YXQncyB0aGUgUlRUIGJldHdlZW4gdGhlIHNlbmRlciAmIHJlY2VpdmVyIGluIHlvdXIgcmVwcm9k dWN0aW9uPyBBcmUgeW91IHVzaW5nIGJiciBvbiB0aGUgc2VuZGVyIHNpZGU/DQogICAgPiAgICAg Pg0KICAgID4gICAgID4NCiAgICA+ICAgICA+IDEwMG1zIFJUVA0KICAgID4gICAgID4NCiAgICA+ ICAgICA+IFdoaWNoIGV4YWN0IHZlcnNpb24gb2YgbGludXgga2VybmVsIGFyZSB5b3UgdXNpbmcg Pw0KICAgID4NCiAgICA+ICAgICBUaGFua3MgZm9yIHRlc3RpbmcgdGhpcywgRXJpYy4gV291bGQg eW91IGJlIGFibGUgdG8gc2hhcmUgdGhlIE1UVQ0KICAgID4gICAgIGNvbmZpZyBjb21tYW5kcyB5 b3UgdXNlZCwgYW5kIHRoZSB0Y3BkdW1wIHRyYWNlcyB5b3UgZ2V0PyBJJ20NCiAgICA+ICAgICBz dXJwcmlzZWQgdGhhdCByZWNlaXZlIGJ1ZmZlciBhdXRvdHVuaW5nIHdvdWxkIHdvcmsgZm9yIGFk dm1zcyBvZg0KICAgID4gICAgIGFyb3VuZCA2NTAwIG9yIGhpZ2hlci4NCiAgICA+DQogICAgPiAg ICAgdGhhbmtzLA0KICAgID4gICAgIG5lYWwNCiAgICA+DQogICAgPg0KICAgID4NCiAgICA+DQog ICAgPiBBbWF6b24gV2ViIFNlcnZpY2VzIEVNRUEgU0FSTCwgMzggYXZlbnVlIEpvaG4gRi4gS2Vu bmVkeSwgTC0xODU1IEx1eGVtYm91cmcsIFIuQy5TLiBMdXhlbWJvdXJnIEIxODYyODQNCiAgICA+ DQogICAgPiBBbWF6b24gV2ViIFNlcnZpY2VzIEVNRUEgU0FSTCwgSXJpc2ggQnJhbmNoLCBPbmUg QnVybGluZ3RvbiBQbGF6YSwgQnVybGluZ3RvbiBSb2FkLCBEdWJsaW4gNCwgSXJlbGFuZCwgYnJh bmNoIHJlZ2lzdHJhdGlvbiBudW1iZXIgOTA4NzA1DQogICAgPg0KICAgID4NCg0KCgoKQW1hem9u IFdlYiBTZXJ2aWNlcyBFTUVBIFNBUkwsIDM4IGF2ZW51ZSBKb2huIEYuIEtlbm5lZHksIEwtMTg1 NSBMdXhlbWJvdXJnLCBSLkMuUy4gTHV4ZW1ib3VyZyBCMTg2Mjg0CgpBbWF6b24gV2ViIFNlcnZp Y2VzIEVNRUEgU0FSTCwgSXJpc2ggQnJhbmNoLCBPbmUgQnVybGluZ3RvbiBQbGF6YSwgQnVybGlu Z3RvbiBSb2FkLCBEdWJsaW4gNCwgSXJlbGFuZCwgYnJhbmNoIHJlZ2lzdHJhdGlvbiBudW1iZXIg OTA4NzA1CgoK