Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1jPjV1-0005BS-EE for pgsql-hackers@arkaria.postgresql.org; Sat, 18 Apr 2020 09:10:55 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1jPjV0-0008Ia-5V for pgsql-hackers@arkaria.postgresql.org; Sat, 18 Apr 2020 09:10:54 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1jPjUz-0008IT-Ti for pgsql-hackers@lists.postgresql.org; Sat, 18 Apr 2020 09:10:53 +0000 Received: from lb1-smtp-cloud8.xs4all.net ([194.109.24.21]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1jPjUw-0002rw-UB for pgsql-hackers@postgresql.org; Sat, 18 Apr 2020 09:10:53 +0000 Received: from webmailclassic.xs4all.nl ([IPv6:2001:888:0:22:194:109:20:195]) by smtp-cloud8.xs4all.net with ESMTPA id PjUwjHSwRlKa1PjUwjfn9E; Sat, 18 Apr 2020 11:10:50 +0200 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=xs4all.nl; s=s1; t=1587201050; bh=ExQQxGtReIvFW7Gbt2Xnsnf2Pe9aFuLetYo/L4rkeF8=; h=MIME-Version:Content-Type:Date:From:To:Subject:Message-ID:From: Subject; b=Ag486LonIbgnJySgD8Rug/0+g5OvLQnAVwksa9MXNu80C/aUCUgid8YnT00riB6J5 ezQZEJZlKHDFnNruegvDFz0XZwtc32Fb6p5Tzt+ZSxFlFLOWDZfZKkHd0/lIXZszii 3AbniOS05o3KeH98E0enoe/RNsEZHB8MFW3KfOHwR+YHFNFmm2//oKLF/0eH2Iyf6Z gR/yIgofZ6s1VJCHrnIdBl9DlMdBIZM9sFepW1Q4CQu4XMVe8f8XTdM3GTAJBMkHgE fvGfIn2/nz2cOXO7FnykEtRMR2gDGrvsn9Z+VMQdQRoUx9/lXGmMkN2JGsgBLFJuHL VH4IXeqfchM0w== Received: from fc0c:c185:a5f8:6dfd:a400:6e47:313b:867f by webmailclassic.xs4all.nl with HTTP (HTTP/1.1 POST); Sat, 18 Apr 2020 11:10:50 +0200 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=_d737b1e153314db0d55b9d72a7a55cb7" Date: Sat, 18 Apr 2020 11:10:50 +0200 From: Erik Rijkers To: Dilip Kumar Cc: Kuntal Ghosh , Tomas Vondra , Amit Kapila , Michael Paquier , Peter Eisentraut , PostgreSQL Hackers Subject: Re: PATCH: logical_work_mem and logical streaming of large in-progress transactions In-Reply-To: References: <20200329005905.ooxq25qyjwn2mvxz@development> <20200329153105.mdryxzz562tg65pk@development> <20200330152758.fgp62lwb2ug7cl2a@development> <20200408005905.misvqmjk5c7wd5vr@development> <36881eec90df541999a4e0a4b2eec60d@xs4all.nl> Message-ID: <09e0bcc4add23f539098eabc49fdee99@xs4all.nl> X-Sender: er@xs4all.nl User-Agent: XS4ALL Webmail X-CMAE-Envelope: MS4wfNjVzv0/dZ830Xg20cAIOQg5q/lA4KdtcXlpdcMg9rmhlvdlyvKU1bRavBQSuSFR0bxYDxyz32EOS5vUycCBPSmq84hgrSmRipDAfM0Dd+tsbJ0XqBip bLa1V7iYjoaHcnnKp5aS0G/jeI5VdR5/SGDEqC/fz8yjR9cuI8M1CylY5zbo0CDsG/jHx991ahzvZGMQKReFvULP/0F8+HnU7YEUQaUFbyck8/DfcioQ6OSd GPLvxeasI1Jmk076fL9VcoJEhCOb5tA+huFaUyOcPOsrEWDwnb4fT0F6qWYX+Q0PPkR7yiQ2SHjb/coPH/+ny8lfJ8i8hr+Tsg2493eIUBoZC/VpbB9IEgr1 /qQqsif36BT5TqGeX4JouV08mO5wbZiD1vKPsEMmUcch4ga5ef+1trPAT5Gbbh5WqHjENAEYlyPuXlAA43Zj60qkrJR2qjWI39/AoC57mIDv82c5d6k= List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk --=_d737b1e153314db0d55b9d72a7a55cb7 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII; format=flowed On 2020-04-18 11:07, Erik Rijkers wrote: >>> Hi Erik, >>> >>> While setting up the cascading replication I have hit one issue on >>> base code[1]. After fixing that I have got one crash with streaming >>> on patch. I am not sure whether you are facing any of these 2 issues >>> or any other issue. If your issue is not any of these then plese >>> share the callstack and steps to reproduce. > > I figured out a few things about this. Attached is a bash script > test.sh, to reproduce: And the attached file, test.sh. (sorry) > There is a variable CRASH_IT that determines whether the whole thing > will fail (with a segmentation fault) or not. As attached it has > CRASH_IT=0 and does not crash. When you change that to CRASH_IT=1, > then it will crash. It turns out that this just depends on a short > wait state (3 seconds, on my machine) between setting up de > replication, and the running of pgbench. It's possible that on very > fast machines maybe it does not occur; we've had such difference > between hardware before. This is a i5-3330S. > > It deletes files so look it over before you run it. It may also > depend on some of my local set-up but I guess that should be easily > fixed. > > Can you let me know if you can reproduce the problem with this? > > thanks, > > Erik Rijkers > > > >>> >>> [1] >>> https://www.postgresql.org/message-id/CAFiTN-u64S5bUiPL1q5kwpHNd0hRnf1OE-bzxNiOs5zo84i51w%40mail.gmail.com >>> >>> >>> -- >>> Regards, >>> Dilip Kumar >>> EnterpriseDB: http://www.enterprisedb.com --=_d737b1e153314db0d55b9d72a7a55cb7 Content-Transfer-Encoding: base64 Content-Type: text/x-shellscript; name=test.sh Content-Disposition: attachment; filename=test.sh; size=8459 IyEvYmluL2Jhc2gKdW5zZXQgUEdTRVJWSUNFIFBHU0VSVklDRUZJTEUgUEdEQVRBIFBHUE9SVCBQ R0RBVEFCQVNFCiMgUEdQQVNTRklMRSBtdXN0IGJlIHNldCBhbmQgaGF2ZSB0aGUgYXBwcm9wcmlh dGUgZW50cmllcwoKZW52IHwgZ3JlcCAtRSAnXlBHJwoKICAgICAgUFJPSkVDVD1sYXJnZV9sb2dp Y2FsCiAgICAjIFBST0pFQ1Q9SEVBRApOVU1fSU5TVEFOQ0VTPTMKCiAgICAgIEJJTl9ESVI9JEhP TUUvcGdfc3R1ZmYvcGdfaW5zdGFsbGF0aW9ucy9wZ3NxbC4kUFJPSkVDVC9iaW4KICAgICBQT1NU R1JFUz0kQklOX0RJUi9wb3N0Z3JlcwogICAgICAgSU5JVERCPSRCSU5fRElSL2luaXRkYgogICAg ICBUTVBfRElSPSRIT01FJy90bXAvJyRQUk9KRUNUCiAgIGRldmVsX2ZpbGU9JHtUTVBfRElSfScv LmRldmVsJwoKICBCQVNFX1BPUlQ9NjAxNSAgIyAgIHBvcnRzIDYwMTUsIDYwMTYsIDYwMTcgCiMg QkFTRV9QT1JUPTY1MTUKcG9ydDE9JCgoICRCQVNFX1BPUlQgKyAwICkpCnBvcnQyPSQoKCAkcG9y dDEgKyAxICkpCnBvcnQzPSQoKCAkcG9ydDEgKyAyICkpCnNjYWxlPTEgIGRibmFtZT1wb3N0Z3Jl cyAgcHVibmFtZT1wdWIxICBzdWJuYW1lPXN1YjEKaWYgW1sgISAtZCAkVE1QX0RJUiBdXTsgdGhl biBta2RpciAkVE1QX0RJUjsgZmkKZWNobyAnczNrcjF0JyA+ICRkZXZlbF9maWxlCiAgICAgICAg ICAgICAgICAgIG1heF93YWxfc2VuZGVycz0xMCAgIyBwdWJsaWNhdGlvbiBzaWRlCiAgICAgICAg ICAgIG1heF9yZXBsaWNhdGlvbl9zbG90cz0xMCAgIyBwdWJsaWNhdGlvbiBzaWRlIGFuZCBzdWJz Y3JpcHRpb24gc2lkZQogICAgICAgICAgICAgbWF4X3dvcmtlcl9wcm9jZXNzZXM9MTIgICMgc3Vi c2NyaXB0aW9uIHNpZGUKICBtYXhfbG9naWNhbF9yZXBsaWNhdGlvbl93b3JrZXJzPTEwICAjIHN1 YnNjcmlwdGlvbiBzaWRlCm1heF9zeW5jX3dvcmtlcnNfcGVyX3N1YnNjcmlwdGlvbj00ICAgIyBz dWJzY3JpcHRpb24gc2lkZQpmb3IgbiBpbiBgc2VxIDEgJE5VTV9JTlNUQU5DRVNgOyBkbwogIHBv cnQ9JCgoICRCQVNFX1BPUlQgKyAkbiAtMSApKQogICAgZGF0YV9kaXI9JFRNUF9ESVIvcGdzcWwu aW5zdGFuY2Uke259L2RhdGEKICBzZXJ2ZXJfZGlyPSRUTVBfRElSL3Bnc3FsLmluc3RhbmNlJHtu fQogICRJTklUREIgLS1wZ2RhdGE9JGRhdGFfZGlyIC0tZW5jb2Rpbmc9VVRGOCAtLWF1dGg9c2Ny YW0tc2hhLTI1NiAtLXB3ZmlsZT0kZGV2ZWxfZmlsZSAmPiBpbml0ZGIuJHBvcnQubG9nIAogIHJj PSQ/CiAgaWYgW1sgJHJjIC1uZSAwIF1dOyB0aGVuCiAgICBlY2hvICItLSBpbml0ZGIgJD8iCiAg ZmkKICggJFBPU1RHUkVTIC1EICRkYXRhX2RpciAtcCAkcG9ydCBcCiAgICAtLXdhbF9sZXZlbD1s b2dpY2FsIFwKICAgIC0tbWF4X3JlcGxpY2F0aW9uX3Nsb3RzPSRtYXhfcmVwbGljYXRpb25fc2xv dHMgXAogICAgLS1tYXhfd29ya2VyX3Byb2Nlc3Nlcz0kbWF4X3dvcmtlcl9wcm9jZXNzZXMgXAog ICAgLS1tYXhfbG9naWNhbF9yZXBsaWNhdGlvbl93b3JrZXJzPSRtYXhfbG9naWNhbF9yZXBsaWNh dGlvbl93b3JrZXJzIFwKICAgIC0tbWF4X3dhbF9zZW5kZXJzPSRtYXhfd2FsX3NlbmRlcnMgXAog ICAgLS1tYXhfc3luY193b3JrZXJzX3Blcl9zdWJzY3JpcHRpb249JG1heF9zeW5jX3dvcmtlcnNf cGVyX3N1YnNjcmlwdGlvbiBcCiAgICAtLWxvZ2dpbmdfY29sbGVjdG9yPW9uIFwKICAgIC0tbG9n X2RpcmVjdG9yeT0ke3NlcnZlcl9kaXJ9IFwKICAgIC0tbG9nX2ZpbGVuYW1lPWxvZ2ZpbGUuJHtw b3J0fSBcCiAgICAtLWxvZ19yZXBsaWNhdGlvbl9jb21tYW5kcz1vbiBcCiAgICAtLWF1dG92YWN1 dW09b2ZmICAmICkKIyAgIC0tbG9naWNhbF93b3JrX21lbT0xMjhNQiAmICkKIyAgIHBnX2lzcmVh ZHkgLWQgJGRibmFtZSAtLXRpbWVvdXQ9NjAgLXAgJHBvcnQKZG9uZQoKI3NsZWVwICROVU1fSU5T VEFOQ0VTCiNzbGVlcCAkTlVNX0lOU1RBTkNFUwoKI3BnX2lzcmVhZHkgLWQgJGRibmFtZSAtcXAg NjAxNSAtLXRpbWVvdXQ9NjAKI3BnX2lzcmVhZHkgLWQgJGRibmFtZSAtcXAgNjAxNiAtLXRpbWVv dXQ9NjAKbnVtX2xvb3A9JCgoICROVU1fSU5TVEFOQ0VTIC0gMSApKQoKJEJJTl9ESVIvcGdiZW5j aCAtLXBvcnQ9JEJBU0VfUE9SVCAtLXF1aWV0IC0taW5pdGlhbGl6ZSAtLXNjYWxlPSRzY2FsZSAk ZGJuYW1lCgplY2hvICJhbHRlciB0YWJsZSBwZ2JlbmNoX2hpc3RvcnkgYWRkIGNvbHVtbiBoaWQg c2VyaWFsIHByaW1hcnkga2V5IiB8ICRCSU5fRElSL3BzcWwgLWQgJGRibmFtZSAtcCAkQkFTRV9Q T1JUIC1YCiNwZ19pc3JlYWR5IC1kICRkYm5hbWUgLXFwIDYwMTUgLS10aW1lb3V0PTYwCiNwZ19p c3JlYWR5IC1kICRkYm5hbWUgLXFwIDYwMTYgLS10aW1lb3V0PTYwCmZvciBuIGluIGBzZXEgMSAk bnVtX2xvb3BgOyBkbwogIHRhcmdldF9wb3J0PSQoKCAkQkFTRV9QT1JUICsgJG4gKSkKICBwZ19k dW1wIC1GYyAtcCAkQkFTRV9QT1JUIFwKICAgIC0tZXhjbHVkZS10YWJsZS1kYXRhPXBnYmVuY2hf aGlzdG9yeSAgLS1leGNsdWRlLXRhYmxlLWRhdGE9cGdiZW5jaF9hY2NvdW50cyBcCiAgICAtLWV4 Y2x1ZGUtdGFibGUtZGF0YT1wZ2JlbmNoX2JyYW5jaGVzIC0tZXhjbHVkZS10YWJsZS1kYXRhPXBn YmVuY2hfdGVsbGVycyBcCiAgICAtdHBnYmVuY2hfaGlzdG9yeSAtdHBnYmVuY2hfYWNjb3VudHMg XAogICAgLXRwZ2JlbmNoX2JyYW5jaGVzIC10cGdiZW5jaF90ZWxsZXJzIFwKICAgICAgICAkZGJu YW1lIHwgcGdfcmVzdG9yZSAtMSAtcCAkdGFyZ2V0X3BvcnQgLWQgJGRibmFtZQpkb25lCgpmb3Ig biBpbiBgc2VxIDEgJG51bV9sb29wYDsgZG8KICBwdWJwb3J0PSQoKCAkQkFTRV9QT1JUICsgJG4g LSAxICkpCiAgc3VicG9ydD0kKCggJEJBU0VfUE9SVCArICRuICAgICApKQogIGFwcG5hbWU9J2Nh c2M6JyR7c3VicG9ydH0nPCcke3B1YnBvcnR9CiAgZWNobyAiY3JlYXRlIHB1YmxpY2F0aW9uICAk cHVibmFtZSBmb3IgYWxsIHRhYmxlcyIgfCBwc3FsIC1kICRkYm5hbWUgLXAgJHB1YnBvcnQgLVgK ICBlY2hvICJjcmVhdGUgc3Vic2NyaXB0aW9uICRzdWJuYW1lCiAgICAgICAgY29ubmVjdGlvbiAn cG9ydD0ke3B1YnBvcnR9IGRibmFtZT0ke2RibmFtZX0gYXBwbGljYXRpb25fbmFtZT0ke2FwcG5h bWV9JwogICAgICAgIHB1YmxpY2F0aW9uICRwdWJuYW1lIHdpdGggKGVuYWJsZWQ9ZmFsc2UsIHNs b3RfbmFtZT0ke3N1Ym5hbWV9XyR7c3VicG9ydH0pOyIgfCBwc3FsIC1kICRkYm5hbWUgLXAgJHN1 YnBvcnQgLVgKICBlY2hvICJhbHRlciBzdWJzY3JpcHRpb24gJHN1Ym5hbWUgZW5hYmxlOyAiIHwg cHNxbCAtZCAkZGJuYW1lIC1wICRzdWJwb3J0IC1YCmRvbmUKCkNSQVNIX0lUPTAgICMgMDogbm8g Y3Jhc2g7ICAxOiBjcmFzaAoKaWYgW1sgJENSQVNIX0lUIC1uZSAxIF1dCnRoZW4KICBlY2hvICIt LSBzbGVlcCAzIiAKICAgICAgICAgICBzbGVlcCAzICAjICB0aGlzIHdhaXQgd2lsbCBhdm9pZCB0 aGUgY3Jhc2gKZmkKCmVjaG8gIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAoZG9pbmcgYSBwZ2Jl bmNoIHJ1biBmb3IgMyBzZWNvbmRzKSIKZWNobyAiLS0gJEJJTl9ESVIvcGdiZW5jaCAtYyAzMiAt VCAzIC1wICRCQVNFX1BPUlQgJGRibmFtZSAtLSBzY2FsZSAkc2NhbGUiCiAgICAgICAgICRCSU5f RElSL3BnYmVuY2ggLWMgMzIgLVQgMyAtcCAkQkFTRV9QT1JUICRkYm5hbWUKZWNobyAiLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tIChhbmQgYmFjayBmcm9tIHBnYmVuY2ggcnVuKSIKCmNfYTE9JCgg ZWNobyAic2VsZWN0IGNvdW50KCopIGZyb20gcGdiZW5jaF9hY2NvdW50cyJ8cHNxbCAtZCRkYm5h bWUgLXF0QVggLXAkcG9ydDEpIApjX2IxPSQoIGVjaG8gInNlbGVjdCBjb3VudCgqKSBmcm9tIHBn YmVuY2hfYnJhbmNoZXMifHBzcWwgLWQkZGJuYW1lIC1xdEFYIC1wJHBvcnQxKSAKY190MT0kKCBl Y2hvICJzZWxlY3QgY291bnQoKikgZnJvbSBwZ2JlbmNoX3RlbGxlcnMgInxwc3FsIC1kJGRibmFt ZSAtcXRBWCAtcCRwb3J0MSkgCmNfaDE9JCggZWNobyAic2VsZWN0IGNvdW50KCopIGZyb20gcGdi ZW5jaF9oaXN0b3J5ICJ8cHNxbCAtZCRkYm5hbWUgLXF0QVggLXAkcG9ydDEpIAptZGExPSQoIGVj aG8gInNlbGVjdCBhaWQsYmlkLGFiYWxhbmNlLGZpbGxlciAgICAgICAgICAgIGZyb20gcGdiZW5j aF9hY2NvdW50cyBvcmRlciBieSBhaWQifHBzcWwgLWQgJGRibmFtZSAtcXRBWCAtcCRwb3J0MXxt ZDVzdW18Y3V0IC1iIDEtNyApIAptZGIxPSQoIGVjaG8gInNlbGVjdCBiaWQsYmJhbGFuY2UsZmls bGVyICAgICAgICAgICAgICAgIGZyb20gcGdiZW5jaF9icmFuY2hlcyBvcmRlciBieSBiaWQifHBz cWwgLWQgJGRibmFtZSAtcXRBWCAtcCRwb3J0MXxtZDVzdW18Y3V0IC1iIDEtNyApCm1kdDE9JCgg ZWNobyAic2VsZWN0IHRpZCxiaWQsdGJhbGFuY2UsZmlsbGVyICAgICAgICAgICAgZnJvbSBwZ2Jl bmNoX3RlbGxlcnMgIG9yZGVyIGJ5IHRpZCJ8cHNxbCAtZCAkZGJuYW1lIC1xdEFYIC1wJHBvcnQx fG1kNXN1bXxjdXQgLWIgMS03ICkKbWRoMT0kKCBlY2hvICJzZWxlY3QgaGlkLGJpZCxhaWQsZGVs dGEsbXRpbWUsZmlsbGVyLGhpZCBmcm9tIHBnYmVuY2hfaGlzdG9yeSAgb3JkZXIgYnkgaGlkInxw c3FsIC1kICRkYm5hbWUgLXF0QVggLXAkcG9ydDF8bWQ1c3VtfGN1dCAtYiAxLTcgKQptZDVfMT0k KGVjaG8gIiRtZGExICAkbWRiMSAgJG1kdDEgICRtZGgxIiB8IG1kNXN1bSB8IGN1dCAtYiAxLTcg KQpwcmludGYgImEsYix0LGggICRwb3J0MSAgICAlNmQgICU2ZCAgJTZkICAlNmQgICAkbWRhMSAg JG1kYjEgICRtZHQxICAkbWRoMSAgICAgJG1kNV8xXG4iICRjX2ExICAkY19iMSAgJGNfdDEgICRj X2gxCnZlcjE9JCggZWNobyAic2VsZWN0IHN1YnN0cmluZyh2ZXJzaW9uKCksMSw3MCkiIHwgcHNx bCAtZCAkZGJuYW1lIC1xdEFYcCAkcG9ydDEgKQp2ZXIyPSQoIGVjaG8gInNlbGVjdCBzdWJzdHJp bmcodmVyc2lvbigpLDEsNzApIiB8IHBzcWwgLWQgJGRibmFtZSAtcXRBWHAgJHBvcnQyICkKaWYg W1sgJE5VTV9JTlNUQU5DRVMgLWd0IDIgXV07IHRoZW4KdmVyMz0kKCBlY2hvICJzZWxlY3Qgc3Vi c3RyaW5nKHZlcnNpb24oKSwxLDcwKSIgfCBwc3FsIC1kICRkYm5hbWUgLXF0QVhwICRwb3J0MyAp CmZpCmVjaG8gCnJjPTAKd2hpbGUgW1sgJHJjIC1lcSAwIF1dCmRvCiMgZWNobyAic2VsZWN0IGNv bHVtbl9uYW1lIGZyb20gaW5mb3JtYXRpb25fc2NoZW1hLmNvbHVtbnMgd2hlcmUgdGFibGVfc2No ZW1hID0gJ3B1YmxpYycgYW5kIHRhYmxlX25hbWUgPSAncGdiZW5jaF9hY2NvdW50cycgb3JkZXIg Ynkgb3JkaW5hbF9wb3NpdGlvbiJ8cHNxbCAtZCRkYm5hbWUgLXF0QVhwJHBvcnQyCiAgbWRhMj0k KGVjaG8gInNlbGVjdCBhaWQsYmlkLGFiYWxhbmNlLGZpbGxlciAgICAgICAgICAgIGZyb20gcGdi ZW5jaF9hY2NvdW50cyBvcmRlciBieSBhaWQifHBzcWwgLWQkZGJuYW1lIC1xdEFYcCRwb3J0Mnxt ZDVzdW18Y3V0IC1iIDEtNykgCiAgbWRiMj0kKGVjaG8gInNlbGVjdCBiaWQsYmJhbGFuY2UsZmls bGVyICAgICAgICAgICAgICAgIGZyb20gcGdiZW5jaF9icmFuY2hlcyBvcmRlciBieSBiaWQifHBz cWwgLWQkZGJuYW1lIC1xdEFYcCRwb3J0MnxtZDVzdW18Y3V0IC1iIDEtNykKICBtZHQyPSQoZWNo byAic2VsZWN0IHRpZCxiaWQsdGJhbGFuY2UsZmlsbGVyICAgICAgICAgICAgZnJvbSBwZ2JlbmNo X3RlbGxlcnMgIG9yZGVyIGJ5IHRpZCJ8cHNxbCAtZCRkYm5hbWUgLXF0QVhwJHBvcnQyfG1kNXN1 bXxjdXQgLWIgMS03KQogIG1kaDI9JChlY2hvICJzZWxlY3QgaGlkLGJpZCxhaWQsZGVsdGEsbXRp bWUsZmlsbGVyLGhpZCBmcm9tIHBnYmVuY2hfaGlzdG9yeSAgb3JkZXIgYnkgaGlkInxwc3FsIC1k JGRibmFtZSAtcXRBWHAkcG9ydDJ8bWQ1c3VtfGN1dCAtYiAxLTcpCiAgY19hMj0kKGVjaG8gInNl bGVjdCBjb3VudCgqKSBmcm9tIHBnYmVuY2hfYWNjb3VudHMifHBzcWwgLWQkZGJuYW1lIC1xdEFY IC1wJHBvcnQyKSAKICBjX2IyPSQoZWNobyAic2VsZWN0IGNvdW50KCopIGZyb20gcGdiZW5jaF9i cmFuY2hlcyJ8cHNxbCAtZCRkYm5hbWUgLXF0QVggLXAkcG9ydDIpIAogIGNfdDI9JChlY2hvICJz ZWxlY3QgY291bnQoKikgZnJvbSBwZ2JlbmNoX3RlbGxlcnMgInxwc3FsIC1kJGRibmFtZSAtcXRB WCAtcCRwb3J0MikgCiAgY19oMj0kKGVjaG8gInNlbGVjdCBjb3VudCgqKSBmcm9tIHBnYmVuY2hf aGlzdG9yeSAifHBzcWwgLWQkZGJuYW1lIC1xdEFYIC1wJHBvcnQyKSAKICBtZDVfMj0kKGVjaG8g IiRtZGEyICAkbWRiMiAgJG1kdDIgICRtZGgyIiB8IG1kNXN1bSB8IGN1dCAtYiAxLTcgKQogIGlm IFtbICROVU1fSU5TVEFOQ0VTIC1ndCAyIF1dOyB0aGVuCiAgbWRhMz0kKGVjaG8gInNlbGVjdCBh aWQsYmlkLGFiYWxhbmNlLGZpbGxlciAgICAgICAgICAgIGZyb20gcGdiZW5jaF9hY2NvdW50cyBv cmRlciBieSBhaWQifHBzcWwgLWQkZGJuYW1lIC1xdEFYcCRwb3J0M3xtZDVzdW18Y3V0IC1iIDEt NykgCiAgbWRiMz0kKGVjaG8gInNlbGVjdCBiaWQsYmJhbGFuY2UsZmlsbGVyICAgICAgICAgICAg ICAgIGZyb20gcGdiZW5jaF9icmFuY2hlcyBvcmRlciBieSBiaWQifHBzcWwgLWQkZGJuYW1lIC1x dEFYcCRwb3J0M3xtZDVzdW18Y3V0IC1iIDEtNykKICBtZHQzPSQoZWNobyAic2VsZWN0IHRpZCxi aWQsdGJhbGFuY2UsZmlsbGVyICAgICAgICAgICAgZnJvbSBwZ2JlbmNoX3RlbGxlcnMgIG9yZGVy IGJ5IHRpZCJ8cHNxbCAtZCRkYm5hbWUgLXF0QVhwJHBvcnQzfG1kNXN1bXxjdXQgLWIgMS03KQog IG1kaDM9JChlY2hvICJzZWxlY3QgaGlkLGJpZCxhaWQsZGVsdGEsbXRpbWUsZmlsbGVyLGhpZCBm cm9tIHBnYmVuY2hfaGlzdG9yeSAgb3JkZXIgYnkgaGlkInxwc3FsIC1kJGRibmFtZSAtcXRBWHAk cG9ydDN8bWQ1c3VtfGN1dCAtYiAxLTcpCiAgY19hMz0kKGVjaG8gInNlbGVjdCBjb3VudCgqKSBm cm9tIHBnYmVuY2hfYWNjb3VudHMifHBzcWwgLWQkZGJuYW1lIC1xdEFYIC1wJHBvcnQzKSAKICBj X2IzPSQoZWNobyAic2VsZWN0IGNvdW50KCopIGZyb20gcGdiZW5jaF9icmFuY2hlcyJ8cHNxbCAt ZCRkYm5hbWUgLXF0QVggLXAkcG9ydDMpIAogIGNfdDM9JChlY2hvICJzZWxlY3QgY291bnQoKikg ZnJvbSBwZ2JlbmNoX3RlbGxlcnMgInxwc3FsIC1kJGRibmFtZSAtcXRBWCAtcCRwb3J0MykgCiAg Y19oMz0kKGVjaG8gInNlbGVjdCBjb3VudCgqKSBmcm9tIHBnYmVuY2hfaGlzdG9yeSAifHBzcWwg LWQkZGJuYW1lIC1xdEFYIC1wJHBvcnQzKSAKICBtZDVfMz0kKGVjaG8gIiRtZGEzICAkbWRiMyAg JG1kdDMgICRtZGgzIiB8IG1kNXN1bSB8IGN1dCAtYiAxLTcgKQogIGZpCiAgZWNobyAiLS0gJFBP U1RHUkVTIgogIHByaW50ZiAiYSxiLHQsaCAgJHBvcnQxICAgICU3ZCAlNmQgJTZkICU2ZCAgICAk bWRhMSAkbWRiMSAkbWR0MSAkbWRoMSAgICRtZDVfMSAgICIgJGNfYTEgJGNfYjEgJGNfdDEgJGNf aDE7IGVjaG8gIiR2ZXIxIgogIHByaW50ZiAiYSxiLHQsaCAgJHBvcnQyICAgICU3ZCAlNmQgJTZk ICU2ZCAgICAkbWRhMiAkbWRiMiAkbWR0MiAkbWRoMiAgICRtZDVfMiAgICIgJGNfYTIgJGNfYjIg JGNfdDIgJGNfaDI7IGVjaG8gIiR2ZXIyIgogIGlmIFtbICROVU1fSU5TVEFOQ0VTIC1ndCAyIF1d OyB0aGVuCiAgcHJpbnRmICJhLGIsdCxoICAkcG9ydDMgICAgJTdkICU2ZCAlNmQgJTZkICAgICRt ZGEzICRtZGIzICRtZHQzICRtZGgzICAgJG1kNV8zICAgIiAkY19hMyAkY19iMyAkY190MyAkY19o MzsgZWNobyAiJHZlcjMiCiAgZmkKICBpZiAgIFtbICROVU1fSU5TVEFOQ0VTIC1lcSAyIF1dOyB0 aGVuCiAgICAgICBpZiBbWyAiJG1kNV8xIiA9PSAiJG1kNV8yIiBdXSA7IHRoZW4gZWNobyAiT0sg LSBkb25lLiI7IGJyZWFrOyBmaQogIGVsaWYgW1sgJE5VTV9JTlNUQU5DRVMgLWVxIDMgXV07IHRo ZW4KICAgICAgIGlmIFtbICIkbWQ1XzEiID09ICIkbWQ1XzMiIF1dIDsgdGhlbiBlY2hvICJPSyAt IGRvbmUuIjsgYnJlYWs7IGZpCiAgZmkKICBzbGVlcCAxCiAgcmM9JD8KZG9uZQoKZm9yIG4gaW4g YHNlcSAxICROVU1fSU5TVEFOQ0VTYDsgZG8gCiAgcG9ydD0kKCggJEJBU0VfUE9SVCArICRuIC0x ICkpCiAgaW5zdF9kaXI9JFRNUF9ESVIvcGdzcWwuaW5zdGFuY2Uke259CiAgZGF0YV9kaXI9JFRN UF9ESVIvcGdzcWwuaW5zdGFuY2Uke259L2RhdGEKICBlY2hvICItLSBncmVwIC1FaSBmYXVsdCAk VE1QX0RJUi9wZ3NxbC5pbnN0YW5jZSR7bn0vbG9nZioiCiAgICAgICAgICAgZ3JlcCAtRWkgZmF1 bHQgJFRNUF9ESVIvcGdzcWwuaW5zdGFuY2Uke259L2xvZ2YqCiAgc2xlZXAgMgogICRCSU5fRElS L3BnX2N0bCBzdG9wIC13IC1EICRkYXRhX2RpcgogIGlmIFtbIDEgLWVxIDEgXV07IHRoZW4KICAg IGVjaG8gIi0tIHJlbW92aW5nIHRoZSBsb3Q6ICBybSAtcmYgJGluc3RfZGlyIgogICAgcm0gLXJm ICRpbnN0X2RpcgogIGZpCmRvbmUKCgo= --=_d737b1e153314db0d55b9d72a7a55cb7--