From debbugs-submit-bounces@debbugs.gnu.org Fri Mar 20 06:55:39 2020 Received: (at submit) by debbugs.gnu.org; 20 Mar 2020 10:55:39 +0000 Received: from localhost ([127.0.0.1]:44016 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jFFJT-0008Rj-9y for submit@debbugs.gnu.org; Fri, 20 Mar 2020 06:55:39 -0400 Received: from lists.gnu.org ([209.51.188.17]:57629) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jFFJS-0008Rb-Ah for submit@debbugs.gnu.org; Fri, 20 Mar 2020 06:55:38 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:41027) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jFFJQ-0000lI-LP for guix-patches@gnu.org; Fri, 20 Mar 2020 06:55:38 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50,FREEMAIL_FROM, URIBL_BLOCKED autolearn=disabled version=3.3.2 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1jFFJP-0005ty-8T for guix-patches@gnu.org; Fri, 20 Mar 2020 06:55:36 -0400 Received: from mail-io1-xd41.google.com ([2607:f8b0:4864:20::d41]:39385) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1jFFJO-0005tY-Vn for guix-patches@gnu.org; Fri, 20 Mar 2020 06:55:35 -0400 Received: by mail-io1-xd41.google.com with SMTP id c19so5468411ioo.6 for ; Fri, 20 Mar 2020 03:55:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=PUlgllXK5jTNqTeHutn89kz74ftM+5n6tB+0183/Yiw=; b=os0JDOxhd/MDsyxy3QnkMvt6gQY+5t2iDW4NCejGBnDl9dmh4XjNIlojbO+/Vvs9ia M7UXvgQF1M8zfS+qH8ul4f+nsws0waULgOFIwD4kuFktq4rsjEWKjcd9oYwsIwGCHO7F vxV6vNR4y4/r3HLs873l+DMw+/Tr5+4rn2MGXedu2gqChzeue7p0NyHQUktDA7IsyJtB +Q1DOZYu5xNj2ZP5Fr8HkFVMcdGhDhtp9Ec9ZxZ98RftvSAHG0eUux2Bv/1baF4ahswK Jkcndd3vN2U6BIw91WjivuUdFr0hUvpfVz4DcWAsjneHCnaih23s1DW7NJQOOFbnk+el Di6w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=PUlgllXK5jTNqTeHutn89kz74ftM+5n6tB+0183/Yiw=; b=Cf4YWmRL7/2+997SMeS1kM0oLGiGVcHl1oWOmqofTyiqG0x+kX5AgxwJQsb5F+Fke1 6rL4BX7SWHzDyRq7BoxDX9wIAuw81aGSSQl8HDkuUWEXjfA8duoYKqWs7KCl9vJjIJkQ XM29rscxJhpsdIRItAwTOPSnyoS3+UoZawrghSWgUna1SZURTzKbZajEX8TV8KsF1q7T geI2KxpcIhBV5UqfYJeekBOJBxZBOlQXVjjDImKCuRO8jwNkquStU6cmzUBr6QCw1LRj TwtlZZqowVNBJp3n0ZetkUAH7wA5V4BJQv7IGzJARQz6JOFiK6QelW7jBdf/pXV+v/x+ VtFg== X-Gm-Message-State: ANhLgQ3pZtgFJW3b0MgcwV1qoVMUQBTp/o97IOmkyoqKiORkvKhWK+cH AIORCSMFUC0I5JgROslr6bS7REf1wTWfbjR9oGEEPg== X-Google-Smtp-Source: ADFU+vugdFxXWXn9sOs5tveDMvkvJI+C/Jqo+A10NFG0r2MNOBDz8JlxnGDjwJESZ279MfOFQwPXScsKyuEF01el0eI= X-Received: by 2002:a5d:8d90:: with SMTP id b16mr6870190ioj.9.1584701733547; Fri, 20 Mar 2020 03:55:33 -0700 (PDT) MIME-Version: 1.0 From: Vincent Legoll Date: Fri, 20 Mar 2020 11:55:22 +0100 Message-ID: Subject: [PATCH] gnu: Add squid. To: guix-patches@gnu.org Content-Type: multipart/mixed; boundary="000000000000e7fcbf05a1471f85" X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::d41 X-Spam-Score: 0.3 (/) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) --000000000000e7fcbf05a1471f85 Content-Type: text/plain; charset="UTF-8" The attached patch adds squid caching proxy so that we can all start saving precious network bandwidth. I lightly tested it with the attached squid config file, in foreground mode, like the following: # Create temporary test space for squid mkdir /tmp/squid # Create the hashed store directories /gnu/store/szbiglrkvll6qdxcrg3ir0hz8zdc9h5f-squid-4.10/sbin/squid -N -f ./squid.conf -z # Run squid /gnu/store/szbiglrkvll6qdxcrg3ir0hz8zdc9h5f-squid-4.10/sbin/squid -N -f ./squid.conf # In another shell export http_proxy=localhost:3128 export https_proxy=localhost:3128 time wget google.fr time wget google.fr less /tmp/squid/access.log less /tmp/squid/cache.log ls -lah /tmp/squid/00/00 There's no shepherd ready to run service & config definitions, as I still don't know how to do that. I'll try to create one, if no one beats me to it, but it may already be useful as-is... -- Vincent Legoll --000000000000e7fcbf05a1471f85 Content-Type: application/octet-stream; name="squid.conf" Content-Disposition: attachment; filename="squid.conf" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_k802fjai1 IwojIFJlY29tbWVuZGVkIG1pbmltdW0gY29uZmlndXJhdGlvbjoKIwoKIyBFeGFtcGxlIHJ1bGUg YWxsb3dpbmcgYWNjZXNzIGZyb20geW91ciBsb2NhbCBuZXR3b3Jrcy4KIyBBZGFwdCB0byBsaXN0 IHlvdXIgKGludGVybmFsKSBJUCBuZXR3b3JrcyBmcm9tIHdoZXJlIGJyb3dzaW5nCiMgc2hvdWxk IGJlIGFsbG93ZWQKYWNsIGxvY2FsbmV0IHNyYyAwLjAuMC4xLTAuMjU1LjI1NS4yNTUJIyBSRkMg MTEyMiAidGhpcyIgbmV0d29yayAoTEFOKQphY2wgbG9jYWxuZXQgc3JjIDEwLjAuMC4wLzgJCSMg UkZDIDE5MTggbG9jYWwgcHJpdmF0ZSBuZXR3b3JrIChMQU4pCmFjbCBsb2NhbG5ldCBzcmMgMTAw LjY0LjAuMC8xMAkJIyBSRkMgNjU5OCBzaGFyZWQgYWRkcmVzcyBzcGFjZSAoQ0dOKQphY2wgbG9j YWxuZXQgc3JjIDE2OS4yNTQuMC4wLzE2IAkjIFJGQyAzOTI3IGxpbmstbG9jYWwgKGRpcmVjdGx5 IHBsdWdnZWQpIG1hY2hpbmVzCmFjbCBsb2NhbG5ldCBzcmMgMTcyLjE2LjAuMC8xMgkJIyBSRkMg MTkxOCBsb2NhbCBwcml2YXRlIG5ldHdvcmsgKExBTikKYWNsIGxvY2FsbmV0IHNyYyAxOTIuMTY4 LjAuMC8xNgkJIyBSRkMgMTkxOCBsb2NhbCBwcml2YXRlIG5ldHdvcmsgKExBTikKYWNsIGxvY2Fs bmV0IHNyYyBmYzAwOjovNyAgICAgICAJIyBSRkMgNDE5MyBsb2NhbCBwcml2YXRlIG5ldHdvcmsg cmFuZ2UKYWNsIGxvY2FsbmV0IHNyYyBmZTgwOjovMTAgICAgICAJIyBSRkMgNDI5MSBsaW5rLWxv Y2FsIChkaXJlY3RseSBwbHVnZ2VkKSBtYWNoaW5lcwoKYWNsIFNTTF9wb3J0cyBwb3J0IDQ0Mwph Y2wgU2FmZV9wb3J0cyBwb3J0IDgwCQkjIGh0dHAKYWNsIFNhZmVfcG9ydHMgcG9ydCAyMQkJIyBm dHAKYWNsIFNhZmVfcG9ydHMgcG9ydCA0NDMJCSMgaHR0cHMKYWNsIFNhZmVfcG9ydHMgcG9ydCA3 MAkJIyBnb3BoZXIKYWNsIFNhZmVfcG9ydHMgcG9ydCAyMTAJCSMgd2FpcwphY2wgU2FmZV9wb3J0 cyBwb3J0IDEwMjUtNjU1MzUJIyB1bnJlZ2lzdGVyZWQgcG9ydHMKYWNsIFNhZmVfcG9ydHMgcG9y dCAyODAJCSMgaHR0cC1tZ210CmFjbCBTYWZlX3BvcnRzIHBvcnQgNDg4CQkjIGdzcy1odHRwCmFj bCBTYWZlX3BvcnRzIHBvcnQgNTkxCQkjIGZpbGVtYWtlcgphY2wgU2FmZV9wb3J0cyBwb3J0IDc3 NwkJIyBtdWx0aWxpbmcgaHR0cAphY2wgQ09OTkVDVCBtZXRob2QgQ09OTkVDVAoKIwojIFJlY29t bWVuZGVkIG1pbmltdW0gQWNjZXNzIFBlcm1pc3Npb24gY29uZmlndXJhdGlvbjoKIwojIERlbnkg cmVxdWVzdHMgdG8gY2VydGFpbiB1bnNhZmUgcG9ydHMKaHR0cF9hY2Nlc3MgZGVueSAhU2FmZV9w b3J0cwoKIyBEZW55IENPTk5FQ1QgdG8gb3RoZXIgdGhhbiBzZWN1cmUgU1NMIHBvcnRzCmh0dHBf YWNjZXNzIGRlbnkgQ09OTkVDVCAhU1NMX3BvcnRzCgojIE9ubHkgYWxsb3cgY2FjaGVtZ3IgYWNj ZXNzIGZyb20gbG9jYWxob3N0Cmh0dHBfYWNjZXNzIGFsbG93IGxvY2FsaG9zdCBtYW5hZ2VyCmh0 dHBfYWNjZXNzIGRlbnkgbWFuYWdlcgoKIyBXZSBzdHJvbmdseSByZWNvbW1lbmQgdGhlIGZvbGxv d2luZyBiZSB1bmNvbW1lbnRlZCB0byBwcm90ZWN0IGlubm9jZW50CiMgd2ViIGFwcGxpY2F0aW9u cyBydW5uaW5nIG9uIHRoZSBwcm94eSBzZXJ2ZXIgd2hvIHRoaW5rIHRoZSBvbmx5CiMgb25lIHdo byBjYW4gYWNjZXNzIHNlcnZpY2VzIG9uICJsb2NhbGhvc3QiIGlzIGEgbG9jYWwgdXNlcgojaHR0 cF9hY2Nlc3MgZGVueSB0b19sb2NhbGhvc3QKCiMKIyBJTlNFUlQgWU9VUiBPV04gUlVMRShTKSBI RVJFIFRPIEFMTE9XIEFDQ0VTUyBGUk9NIFlPVVIgQ0xJRU5UUwojCgojIEV4YW1wbGUgcnVsZSBh bGxvd2luZyBhY2Nlc3MgZnJvbSB5b3VyIGxvY2FsIG5ldHdvcmtzLgojIEFkYXB0IGxvY2FsbmV0 IGluIHRoZSBBQ0wgc2VjdGlvbiB0byBsaXN0IHlvdXIgKGludGVybmFsKSBJUCBuZXR3b3Jrcwoj IGZyb20gd2hlcmUgYnJvd3Npbmcgc2hvdWxkIGJlIGFsbG93ZWQKaHR0cF9hY2Nlc3MgYWxsb3cg bG9jYWxuZXQKaHR0cF9hY2Nlc3MgYWxsb3cgbG9jYWxob3N0CgojIEFuZCBmaW5hbGx5IGRlbnkg YWxsIG90aGVyIGFjY2VzcyB0byB0aGlzIHByb3h5Cmh0dHBfYWNjZXNzIGRlbnkgYWxsCgojIFNx dWlkIG5vcm1hbGx5IGxpc3RlbnMgdG8gcG9ydCAzMTI4Cmh0dHBfcG9ydCAzMTI4CgojIFVuY29t bWVudCBhbmQgYWRqdXN0IHRoZSBmb2xsb3dpbmcgdG8gYWRkIGEgZGlzayBjYWNoZSBkaXJlY3Rv cnkuCmNhY2hlX2RpciB1ZnMgL3RtcC9zcXVpZCAxMDAgMTYgMjU2CgojIExlYXZlIGNvcmVkdW1w cyBpbiB0aGUgZmlyc3QgY2FjaGUgZGlyCmNvcmVkdW1wX2RpciAvdG1wL3NxdWlkCgpwaWRfZmls ZW5hbWUgL3RtcC9zcXVpZC8ke3NlcnZpY2VfbmFtZX0ucGlkCmFjY2Vzc19sb2cgZGFlbW9uOi90 bXAvc3F1aWQvYWNjZXNzLmxvZyBzcXVpZApjYWNoZV9sb2cgL3RtcC9zcXVpZC9jYWNoZS5sb2cK CiMKIyBBZGQgYW55IG9mIHlvdXIgb3duIHJlZnJlc2hfcGF0dGVybiBlbnRyaWVzIGFib3ZlIHRo ZXNlLgojCnJlZnJlc2hfcGF0dGVybiBeZnRwOgkJMTQ0MAkyMCUJMTAwODAKcmVmcmVzaF9wYXR0 ZXJuIF5nb3BoZXI6CTE0NDAJMCUJMTQ0MApyZWZyZXNoX3BhdHRlcm4gLWkgKC9jZ2ktYmluL3xc PykgMAkwJQkwCnJlZnJlc2hfcGF0dGVybiAuCQkwCTIwJQk0MzIwCg== --000000000000e7fcbf05a1471f85 Content-Type: text/x-patch; charset="US-ASCII"; name="0001-gnu-Add-squid.patch" Content-Disposition: attachment; filename="0001-gnu-Add-squid.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_k802fja50 RnJvbSAyNGE4MTAzOGQzMTVhNGJmNzU3ZWNhNTkwYzUzYTE2ZWFjMDA1ODc5IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBWaW5jZW50IExlZ29sbCA8dmluY2VudC5sZWdvbGxAZ21haWwu Y29tPgpEYXRlOiBGcmksIDIwIE1hciAyMDIwIDExOjQ1OjExICswMTAwClN1YmplY3Q6IFtQQVRD SF0gZ251OiBBZGQgc3F1aWQuCgoqIGdudS9wYWNrYWdlcy9uZXR3b3JraW5nLnNjbSAoc3F1aWQp OiBOZXcgdmFyaWFibGUuCi0tLQogZ251L3BhY2thZ2VzL25ldHdvcmtpbmcuc2NtIHwgNDUgKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogMSBmaWxlIGNoYW5nZWQsIDQ1IGlu c2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9nbnUvcGFja2FnZXMvbmV0d29ya2luZy5zY20gYi9n bnUvcGFja2FnZXMvbmV0d29ya2luZy5zY20KaW5kZXggZTlhYmFjMjk5MS4uNmE2ZTgzNjI2MSAx MDA2NDQKLS0tIGEvZ251L3BhY2thZ2VzL25ldHdvcmtpbmcuc2NtCisrKyBiL2dudS9wYWNrYWdl cy9uZXR3b3JraW5nLnNjbQpAQCAtODAsOCArODAsMTAgQEAKICAgIzp1c2UtbW9kdWxlIChnbnUg cGFja2FnZXMgY29kZSkKICAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgY29tcHJlc3Npb24p CiAgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGNwcCkKKzsgICM6dXNlLW1vZHVsZSAoZ251 IHBhY2thZ2VzIGNwcHVuaXQpCiAgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGNyeXB0bykK ICAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgY3VybCkKKyAgIzp1c2UtbW9kdWxlIChnbnUg cGFja2FnZXMgY3lydXMtc2FzbCkKICAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgZGVqYWdu dSkKICAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgZG9jdW1lbnRhdGlvbikKICAgIzp1c2Ut bW9kdWxlIChnbnUgcGFja2FnZXMgZmxleCkKQEAgLTk4LDYgKzEwMCw3IEBACiAgICM6dXNlLW1v ZHVsZSAoZ251IHBhY2thZ2VzIGtlcmJlcm9zKQogICAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdl cyBuY3Vyc2VzKQogICAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBuZXR0bGUpCisgICM6dXNl LW1vZHVsZSAoZ251IHBhY2thZ2VzIG9wZW5sZGFwKQogICAjOnVzZS1tb2R1bGUgKGdudSBwYWNr YWdlcyBwYXNzd29yZC11dGlscykKICAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgcGNyZSkK ICAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgcGVybCkKQEAgLTg2Miw2ICs4NjUsNDggQEAg cHJpbnRzIHRpbWluZyBpbmZvcm1hdGlvbiBmb3IgZWFjaCBzdGVwIG9mIHRoZSBIVFRQIHJlcXVl c3QgKEROUyBsb29rdXAsCiBUQ1AgY29ubmVjdGlvbiwgVExTIGhhbmRzaGFrZSBhbmQgc28gb24p IGluIHRoZSB0ZXJtaW5hbC4iKQogICAgIChsaWNlbnNlIGxpY2Vuc2U6ZXhwYXQpKSkKIAorKGRl ZmluZS1wdWJsaWMgc3F1aWQKKyAgKHBhY2thZ2UKKyAgICAobmFtZSAic3F1aWQiKQorICAgICh2 ZXJzaW9uICI0LjEwIikKKyAgICAoc291cmNlCisgICAgIChvcmlnaW4KKyAgICAgICAobWV0aG9k IHVybC1mZXRjaCkKKyAgICAgICAodXJpIChzdHJpbmctYXBwZW5kICJodHRwOi8vd3d3LnNxdWlk LWNhY2hlLm9yZy9WZXJzaW9ucy92NC9zcXVpZC0iCisgICAgICAgICAgICAgICAgICAgICAgICAg ICB2ZXJzaW9uICIudGFyLnh6IikpCisgICAgICAgKHNoYTI1NgorICAgICAgICAoYmFzZTMyICIw N3N6MGFkdjhua2h5Nzk3Njc1YnByYTdsdmRrd2pxOWlzdzFkZGd5bGhsYXpsNTExdzRxIikpKSkK KyAgICAoYnVpbGQtc3lzdGVtIGdudS1idWlsZC1zeXN0ZW0pCisgICAgKGFyZ3VtZW50cworICAg ICAnKCM6cGhhc2VzCisgICAgICAgKG1vZGlmeS1waGFzZXMgJXN0YW5kYXJkLXBoYXNlcworICAg ICAgICAgKGFkZC1iZWZvcmUgJ2J1aWxkICdmaXgtdHJ1ZS1wYXRoCisgICAgICAgICAgIChsYW1i ZGEqICgjOmtleSBpbnB1dHMgIzphbGxvdy1vdGhlci1rZXlzKQorICAgICAgICAgICAgIChzdWJz dGl0dXRlKiAidGVzdC1zdWl0ZS90ZXN0aGVhZGVycy5zaCIKKyAgICAgICAgICAgICAgICgoIi9i aW4vdHJ1ZSIpCisgICAgICAgICAgICAgICAgKHN0cmluZy1hcHBlbmQgKGFzc29jLXJlZiBpbnB1 dHMgImNvcmV1dGlscyIpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIi9iaW4vdHJ1 ZSIpKSkKKyAgICAgICAgICAgICAjdCkpKSkpCisgICAgKGlucHV0cworICAgICBgKCgicGVybCIg LHBlcmwpCisgICAgICAgKCJvcGVubGRhcCIgLG9wZW5sZGFwKQorICAgICAgICgibGludXgtcGFt IiAsbGludXgtcGFtKQorICAgICAgICgibGliY2FwIiAsbGliY2FwKQorICAgICAgICgiY3lydXMt c2FzbCIgLGN5cnVzLXNhc2wpCisgICAgICAgKCJleHBhdCIgLGV4cGF0KQorICAgICAgICgibGli eG1sMiIgLGxpYnhtbDIpCisgICAgICAgKCJvcGVuc3NsIiAsb3BlbnNzbCkpKQorICAgIChuYXRp dmUtaW5wdXRzCisgICAgIGAoKCJjcHB1bml0IiAsY3BwdW5pdCkKKyAgICAgICAoImNvcmV1dGls cyIgLGNvcmV1dGlscykgOyB0ZXN0IHN1aXRlIG5lZWRzIC9iaW4vdHJ1ZQorICAgICAgICgicGtn LWNvbmZpZyIgLHBrZy1jb25maWcpKSkKKyAgICAoc3lub3BzaXMgIkEgd2ViIGNhY2hpbmcgcHJv eHkgc3VwcG9ydGluZyBIVFRQLCBIVFRQUywgRlRQLCBldGMuIikKKyAgICAoZGVzY3JpcHRpb24g IlNxdWlkIGlzIGEgY2FjaGluZyBwcm94eSBmb3IgdGhlIFdlYiBzdXBwb3J0aW5nIEhUVFAsIEhU VFBTLAorRlRQLCBhbmQgbW9yZS4gIEl0IHJlZHVjZXMgYmFuZHdpZHRoIGFuZCBpbXByb3ZlcyBy ZXNwb25zZSB0aW1lcyBieSBjYWNoaW5nIGFuZAorcmV1c2luZyBmcmVxdWVudGx5LXJlcXVlc3Rl ZCB3ZWIgcGFnZXMuIikKKyAgICAoaG9tZS1wYWdlICJodHRwOi8vd3d3LnNxdWlkLWNhY2hlLm9y Zy8iKQorICAgIChsaWNlbnNlIGxpY2Vuc2U6Z3BsMikpKQorCiAoZGVmaW5lLXB1YmxpYyBid20t bmcKICAgKHBhY2thZ2UKICAgICAobmFtZSAiYndtLW5nIikKLS0gCjIuMjUuMQoK --000000000000e7fcbf05a1471f85--