Re: Contribute a RISC-V 64 JIT backend

Logan Chien <[email protected]> Sun, 11 Aug 2024 21:22:18 -0700
Newsgroups gmane.comp.python.pypy
Message-ID <CALQyFuCqoZtKCdV=yZX1pOnewhXwSNhFMO3pY43N5iF2Y2FKSg@mail.gmail.com>
--000000000000530ff8061f74d7fc
Content-Type: multipart/alternative; boundary="000000000000530ff6061f74d7fa"

--000000000000530ff6061f74d7fa
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Hi all,

It has been a while since my last email.  I was busy until recently but
would like to restart the work now.

First of all, good news!  All tests were passing or with reasonable
workarounds (see below).  I also ran the benchmarks on SiFive Unmatched
board (with Ubuntu 24.04) and got the result w.r.t. CPython 2.7 (see the
attached JSON file).

*Thus, I would like to send out the Pull Request to merge the work soon.
What do you think?*

Back the the test result:

These were the failures I mentioned earlier:

* Test Suite: app-level (-A) test
  * test_getsetsockopt_zero -- It seems to be QEMU-specific. It isn't
reproducible on SiFive Unmatched + Ubuntu 24.04.
  * test_half_conversions -- sNAN being canonicalized when RISCV converts
F64->F32. I separate it into two cases: (1) F16->F64 (passing) and (2)
F16->F64->F32 (skipped).
  * test_floorceiltrunc -- RISC-V floor/ceil/trunc don't preserve signbit
for nan inputs.
  * test__mercurial -- This was fixed after installing the git command.
* Test Suite: -D tests
  * All passes.
* Test Suite: extra tests
  * test_connection_del -- Fixed
* Test Suite: lib-python test
  * test_ssl -- libssl internal error when TLSv1 was requested. I will send
out another Pull Request for this.
  * test_tokenize -- This was caused by a bug in RISCV backend card marking
code generator. This is fixed now.
  * test_zipfile64 -- This was caused by a bug in RISCV backend card
marking code generator. This is fixed now.
* Test Suite: pypyjit tests
  * test_jitlogparser -- This was caused by a bug in RISCV backend card
marking code generator. This is fixed now.
  * test_micronumpy -- This looked like a benign error (the order is
slightly different). Since the performance was fine, I wrote a special case
for RISCV.

The following were caused by slow CPU speed vs. wall clock time:

* Test Suite: lib-python test
  * test_json.py: test_roundtrip
  * test_textio.py: test_readline
  * test_unicode.py: test_index, test_rfind, test_rindex

These can be fixed by adding:

```
from hypothesis import settings, HealthCheck
@settings(suppress_health_check=3D[HealthCheck.too_slow])
```

I feel we can just ignore these for now.

This concludes the work to debug all failing tests.

The full list of Git commits can be found here:
https://github.com/pypy/pypy/compare/main...loganchien:pypy:rv64

Please let me know what you think.  Thank you.

Regards,
Logan

On Fri, Mar 1, 2024 at 11:52=E2=80=AFAM Logan Chien <tzuhsiang.chien@gmail.=
com>
wrote:

> Hi Armin,
>
> Thank you for the reply.  I'll check (1) the config, (2) the frontend cod=
e
> that emits guard_not_invalidated, and (3) the actual performance on HW th=
is
> weekend.
>
> Regards,
> Logan
>
> On Thu, Feb 29, 2024 at 4:45=E2=80=AFAM Armin Rigo <[email protected]>=
 wrote:
>
>> Hi Logan,
>>
>> On Thu, 29 Feb 2024 at 08:37, Logan Chien <[email protected]>
>> wrote:
>> > IIUC, the difference is that guard_not_invalidated is at a different
>> location.
>> >
>> > But I don't understand why the backend can affect the logs in the
>> 'jit-log-opt-' tag.
>>
>> There are a few ways to influence the front-end: for example, the
>> "support_*" class-level flags.  Maybe the front-end did either do or
>> skip a specific optimization when compared with x86, and it results
>> only in a 'guard_not_invalidated' being present or not (and then once
>> it is emitted, it's not emitted again a few instructions below).  Or
>> there are some other reasons.  But as a general rule, we can mostly
>> ignore the position of 'guard_not_invalidated'.  It should have no
>> effect except in corner cases.
>>
>> > Also, I found that reduce_logical_and (failed) and reduce_logical_xor
>> (passed) are very different.
>> >
>> > Is there more information on the details of this test?  Any ideas to
>> debug this test case are very welcomed!  Thanks.
>>
>> A possibility is that some of these tests are flaky in the sense of
>> passing half by chance on x86---I vaguely remember having some
>> troubles sometimes.  It's sometimes hard to write tests without
>> testing too many details.  Others may have better comments about them.
>> Generally, it's OK to look at what you got and compare it with what
>> the test expects.  If you can come up with a reason for why what you
>> got is correct too, and free of real performance issues, then that's
>> good enough.
>>
>> A bient=C3=B4t,
>> Armin
>>
>

--000000000000530ff6061f74d7fa
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div>Hi all,</div><div><br></div><div>It has been a while =
since my last email.=C2=A0 I was busy until recently but would like to rest=
art the work now.<br></div><div><br></div><div>First of all, good news!=C2=
=A0 All tests were passing or with reasonable workarounds (see below).=C2=
=A0 I also ran the benchmarks on SiFive Unmatched board (with Ubuntu 24.04)=
 and got the result w.r.t. CPython 2.7 (see the attached JSON file).</div><=
div><br></div><div><b>Thus, I would like to send out the Pull Request to me=
rge the work soon.=C2=A0 What do you think?</b></div><div><br></div><div>Ba=
ck the the test result:</div><div><br></div><div>These were the failures I =
mentioned earlier:<br><br>* Test Suite: app-level (-A) test<br>=C2=A0 * tes=
t_getsetsockopt_zero -- It seems to be QEMU-specific. It isn&#39;t reproduc=
ible on SiFive Unmatched + Ubuntu 24.04.<br>=C2=A0 * test_half_conversions =
-- sNAN being canonicalized when RISCV converts F64-&gt;F32. I separate it =
into two cases: (1) F16-&gt;F64 (passing) and (2) F16-&gt;F64-&gt;F32 (skip=
ped).<br>=C2=A0 * test_floorceiltrunc -- RISC-V floor/ceil/trunc don&#39;t =
preserve signbit for nan inputs.<br>=C2=A0 * test__mercurial -- This was fi=
xed after installing the git command.<br>* Test Suite: -D tests<br>=C2=A0 *=
 All passes.<br>* Test Suite: extra tests<br>=C2=A0 * test_connection_del -=
- Fixed<br>* Test Suite: lib-python test<br>=C2=A0 * test_ssl -- libssl int=
ernal error when TLSv1 was requested. I will send out another Pull Request =
for this.<br>=C2=A0 * test_tokenize -- This was caused by a bug in RISCV ba=
ckend card marking code generator. This is fixed now.<br>=C2=A0 * test_zipf=
ile64 -- This was caused by a bug in RISCV backend card marking code genera=
tor. This is fixed now.<br>* Test Suite: pypyjit tests<br>=C2=A0 * test_jit=
logparser -- This was caused by a bug in RISCV backend card marking code ge=
nerator. This is fixed now.<br>=C2=A0 * test_micronumpy -- This looked like=
 a benign error (the order is slightly different). Since the performance wa=
s fine, I wrote a special case for RISCV.<br><br>The following were caused =
by slow CPU speed vs. wall clock time:<br><br>* Test Suite: lib-python test=
<br>=C2=A0 * test_json.py: test_roundtrip<br>=C2=A0 * test_textio.py: test_=
readline<br>=C2=A0 * test_unicode.py: test_index, test_rfind, test_rindex<b=
r><br>These can be fixed by adding:<br><br>```<br>from hypothesis import se=
ttings, HealthCheck<br>@settings(suppress_health_check=3D[HealthCheck.too_s=
low])<br>```<br><br>I feel we can just ignore these for now.</div><div><br>=
</div><div>This concludes the work to debug all failing tests.<br></div><di=
v><br></div><div>The full list of Git commits can be found here:</div><div>=
<a href=3D"https://github.com/pypy/pypy/compare/main...loganchien:pypy:rv64=
">https://github.com/pypy/pypy/compare/main...loganchien:pypy:rv64</a></div=
><div><br></div><div>Please let me know what you think.=C2=A0 Thank you.<br=
></div><div><br></div><div>Regards,</div><div>Logan<br></div></div><br><div=
 class=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Fri, Mar 1,=
 2024 at 11:52=E2=80=AFAM Logan Chien &lt;<a href=3D"mailto:tzuhsiang.chien=
@gmail.com" target=3D"_blank">[email protected]</a>&gt; wrote:<br><=
/div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;bo=
rder-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir=3D"ltr"><di=
v>Hi Armin,</div><div><br></div><div>Thank you for the reply.=C2=A0 I&#39;l=
l check (1) the config, (2) the frontend code that emits guard_not_invalida=
ted, and (3) the actual performance on HW this weekend.</div><div><br></div=
><div>Regards,</div><div>Logan<br></div></div><br><div class=3D"gmail_quote=
"><div dir=3D"ltr" class=3D"gmail_attr">On Thu, Feb 29, 2024 at 4:45=E2=80=
=AFAM Armin Rigo &lt;<a href=3D"mailto:[email protected]" target=3D"_bla=
nk">[email protected]</a>&gt; wrote:<br></div><blockquote class=3D"gmail=
_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204=
,204);padding-left:1ex">Hi Logan,<br>
<br>
On Thu, 29 Feb 2024 at 08:37, Logan Chien &lt;<a href=3D"mailto:tzuhsiang.c=
[email protected]" target=3D"_blank">[email protected]</a>&gt; wrote:<=
br>
&gt; IIUC, the difference is that guard_not_invalidated is at a different l=
ocation.<br>
&gt;<br>
&gt; But I don&#39;t understand why the backend can affect the logs in the =
&#39;jit-log-opt-&#39; tag.<br>
<br>
There are a few ways to influence the front-end: for example, the<br>
&quot;support_*&quot; class-level flags.=C2=A0 Maybe the front-end did eith=
er do or<br>
skip a specific optimization when compared with x86, and it results<br>
only in a &#39;guard_not_invalidated&#39; being present or not (and then on=
ce<br>
it is emitted, it&#39;s not emitted again a few instructions below).=C2=A0 =
Or<br>
there are some other reasons.=C2=A0 But as a general rule, we can mostly<br=
>
ignore the position of &#39;guard_not_invalidated&#39;.=C2=A0 It should hav=
e no<br>
effect except in corner cases.<br>
<br>
&gt; Also, I found that reduce_logical_and (failed) and reduce_logical_xor =
(passed) are very different.<br>
&gt;<br>
&gt; Is there more information on the details of this test?=C2=A0 Any ideas=
 to debug this test case are very welcomed!=C2=A0 Thanks.<br>
<br>
A possibility is that some of these tests are flaky in the sense of<br>
passing half by chance on x86---I vaguely remember having some<br>
troubles sometimes.=C2=A0 It&#39;s sometimes hard to write tests without<br=
>
testing too many details.=C2=A0 Others may have better comments about them.=
<br>
Generally, it&#39;s OK to look at what you got and compare it with what<br>
the test expects.=C2=A0 If you can come up with a reason for why what you<b=
r>
got is correct too, and free of real performance issues, then that&#39;s<br=
>
good enough.<br>
<br>
A bient=C3=B4t,<br>
Armin<br>
</blockquote></div>
</blockquote></div>

--000000000000530ff6061f74d7fa--

--000000000000530ff8061f74d7fc
Content-Type: application/json;
	name="bench-result-pypy-jit-vs-cpython-2.7-base.json"
Content-Disposition: attachment;
	filename="bench-result-pypy-jit-vs-cpython-2.7-base.json"
Content-Transfer-Encoding: base64
Content-ID: <f_lzqgxvz70>
X-Attachment-Id: f_lzqgxvz70

ewogICJvcHRpb25zIjogIiIsIAogICJyZXN1bHRzIjogWwogICAgWwogICAgICAiYWkiLCAKICAg
ICAgIkNvbXBhcmlzb25SZXN1bHQiLCAKICAgICAgewogICAgICAgICJhdmdfYmFzZSI6IDIuNTc2
NzQ5MjcyMzQ2NDAwNSwgCiAgICAgICAgInRpbWVsaW5lX2xpbmsiOiBudWxsLCAKICAgICAgICAi
YXZnX2NoYW5nZWQiOiAwLjc5OTA2OTA2MTI3OTI1OTgsIAogICAgICAgICJtaW5fYmFzZSI6IDIu
NDE1MzczMDg2OTMsIAogICAgICAgICJkZWx0YV9taW4iOiAiMy4wNjA1eCBmYXN0ZXIiLCAKICAg
ICAgICAiZGVsdGFfYXZnIjogIjMuMjI0N3ggZmFzdGVyIiwgCiAgICAgICAgInN0ZF9jaGFuZ2Vk
IjogMC4wMDc0MDUwNjk2ODU3MzI1NjgsIAogICAgICAgICJtaW5fY2hhbmdlZCI6IDAuNzg5MjA0
MTIwNjM2LCAKICAgICAgICAiZGVsdGFfc3RkIjogIjIxLjI3NzV4IHNtYWxsZXIiLCAKICAgICAg
ICAic3RkX2Jhc2UiOiAwLjE1NzU2MTUxNzQwNDI1MDQyLCAKICAgICAgICAidF9tc2ciOiAiU2ln
bmlmaWNhbnQgKHQ9NzkuNjkxMDE5LCBhPTAuOTUpXG4iCiAgICAgIH0KICAgIF0sIAogICAgWwog
ICAgICAiYm1fY2hhbWVsZW9uIiwgCiAgICAgICJDb21wYXJpc29uUmVzdWx0IiwgCiAgICAgIHsK
ICAgICAgICAiYXZnX2Jhc2UiOiAwLjY0NTc0Mjk4NTQwNzUyMDEsIAogICAgICAgICJ0aW1lbGlu
ZV9saW5rIjogbnVsbCwgCiAgICAgICAgImF2Z19jaGFuZ2VkIjogMC4yOTA5NjYwNDM0NzIyODAw
NiwgCiAgICAgICAgIm1pbl9iYXNlIjogMC42Mjc2MDc4MjI0MTgsIAogICAgICAgICJkZWx0YV9t
aW4iOiAiMi42NzgxeCBmYXN0ZXIiLCAKICAgICAgICAiZGVsdGFfYXZnIjogIjIuMjE5M3ggZmFz
dGVyIiwgCiAgICAgICAgInN0ZF9jaGFuZ2VkIjogMC4wNTUxNzAyOTQ4NTQ1NzQxOSwgCiAgICAg
ICAgIm1pbl9jaGFuZ2VkIjogMC4yMzQzNTExNTgxNDIsIAogICAgICAgICJkZWx0YV9zdGQiOiAi
Ny4zMDM3eCBsYXJnZXIiLCAKICAgICAgICAic3RkX2Jhc2UiOiAwLjAwNzU1MzcxMjI3NDA4ODkx
NywgCiAgICAgICAgInRfbXNnIjogIlNpZ25pZmljYW50ICh0PTc4LjAzMDIwMywgYT0wLjk1KVxu
IgogICAgICB9CiAgICBdLCAKICAgIFsKICAgICAgImJtX2R1bHdpY2hfbG9nIiwgCiAgICAgICJD
b21wYXJpc29uUmVzdWx0IiwgCiAgICAgIHsKICAgICAgICAiYXZnX2Jhc2UiOiA2LjM2ODIyMjEy
OTM0NDUwMSwgCiAgICAgICAgInRpbWVsaW5lX2xpbmsiOiBudWxsLCAKICAgICAgICAiYXZnX2No
YW5nZWQiOiAyLjk3NDcwMTAzNTAyMywgCiAgICAgICAgIm1pbl9iYXNlIjogNi4yODA1MzQwMjkw
MSwgCiAgICAgICAgImRlbHRhX21pbiI6ICIyLjQ4MTl4IGZhc3RlciIsIAogICAgICAgICJkZWx0
YV9hdmciOiAiMi4xNDA4eCBmYXN0ZXIiLCAKICAgICAgICAic3RkX2NoYW5nZWQiOiAxLjI0MzQ4
MDYwODAwOTgwNDYsIAogICAgICAgICJtaW5fY2hhbmdlZCI6IDIuNTMwNTQ0MDQyNTksIAogICAg
ICAgICJkZWx0YV9zdGQiOiAiMjAuMTg5NXggbGFyZ2VyIiwgCiAgICAgICAgInN0ZF9iYXNlIjog
MC4wNjE1OTAzMjgxMzY4MTAxNCwgCiAgICAgICAgInRfbXNnIjogIlNpZ25pZmljYW50ICh0PTEy
LjE4OTc0MSwgYT0wLjk1KVxuIgogICAgICB9CiAgICBdLCAKICAgIFsKICAgICAgImJtX2tyYWth
dGF1IiwgCiAgICAgICJDb21wYXJpc29uUmVzdWx0IiwgCiAgICAgIHsKICAgICAgICAiYXZnX2Jh
c2UiOiA5My43MjU0NTc2Nzc4NDc5OCwgCiAgICAgICAgInRpbWVsaW5lX2xpbmsiOiBudWxsLCAK
ICAgICAgICAiYXZnX2NoYW5nZWQiOiA0Mi42NTM4MTk1ODk2MDk5OTUsIAogICAgICAgICJtaW5f
YmFzZSI6IDkyLjU3MDY5NjExNTUsIAogICAgICAgICJkZWx0YV9taW4iOiAiMi4xNzk2eCBmYXN0
ZXIiLCAKICAgICAgICAiZGVsdGFfYXZnIjogIjIuMTk3NHggZmFzdGVyIiwgCiAgICAgICAgInN0
ZF9jaGFuZ2VkIjogMC4wNzM5MTIxMjg4NTY5NzM2MSwgCiAgICAgICAgIm1pbl9jaGFuZ2VkIjog
NDIuNDcxMTg0OTY4OSwgCiAgICAgICAgImRlbHRhX3N0ZCI6ICI3LjQ3NTF4IHNtYWxsZXIiLCAK
ICAgICAgICAic3RkX2Jhc2UiOiAwLjU1MjUwMTU2NDk4NzkzNiwgCiAgICAgICAgInRfbXNnIjog
IlNpZ25pZmljYW50ICh0PTY0Ny44NTc1MTMsIGE9MC45NSlcbiIKICAgICAgfQogICAgXSwgCiAg
ICBbCiAgICAgICJibV9tYWtvIiwgCiAgICAgICJDb21wYXJpc29uUmVzdWx0IiwgCiAgICAgIHsK
ICAgICAgICAiYXZnX2Jhc2UiOiAwLjc2NTQ5Mzc4Mzk1MDg0LCAKICAgICAgICAidGltZWxpbmVf
bGluayI6IG51bGwsIAogICAgICAgICJhdmdfY2hhbmdlZCI6IDAuMzE5NTY2NTQwNzE4MTAwMDMs
IAogICAgICAgICJtaW5fYmFzZSI6IDAuNzQ1Nzg4MDk3MzgyLCAKICAgICAgICAiZGVsdGFfbWlu
IjogIjMuMTg1NHggZmFzdGVyIiwgCiAgICAgICAgImRlbHRhX2F2ZyI6ICIyLjM5NTR4IGZhc3Rl
ciIsIAogICAgICAgICJzdGRfY2hhbmdlZCI6IDAuMDY0NDg3MTk0NDA2NTEyNDcsIAogICAgICAg
ICJtaW5fY2hhbmdlZCI6IDAuMjM0MTI3OTk4MzUyLCAKICAgICAgICAiZGVsdGFfc3RkIjogIjQu
MTc3MHggbGFyZ2VyIiwgCiAgICAgICAgInN0ZF9iYXNlIjogMC4wMTU0Mzg3NTA5ODI4MjYxNSwg
CiAgICAgICAgInRfbXNnIjogIlNpZ25pZmljYW50ICh0PTQ3LjU1MjQ3MCwgYT0wLjk1KVxuIgog
ICAgICB9CiAgICBdLCAKICAgIFsKICAgICAgImJtX21kcCIsIAogICAgICAiQ29tcGFyaXNvblJl
c3VsdCIsIAogICAgICB7CiAgICAgICAgImF2Z19iYXNlIjogOTMuNzA5MDI5MTk3NjgsIAogICAg
ICAgICJ0aW1lbGluZV9saW5rIjogbnVsbCwgCiAgICAgICAgImF2Z19jaGFuZ2VkIjogMTk3LjM2
NzYyOTg2MTYsIAogICAgICAgICJtaW5fYmFzZSI6IDkzLjMwMDQ1Mjk0NzYsIAogICAgICAgICJk
ZWx0YV9taW4iOiAiMi4wNDc3eCBzbG93ZXIiLCAKICAgICAgICAiZGVsdGFfYXZnIjogIjIuMTA2
Mnggc2xvd2VyIiwgCiAgICAgICAgInN0ZF9jaGFuZ2VkIjogNy4wODQ2NjA3ODE5NDkzMjcsIAog
ICAgICAgICJtaW5fY2hhbmdlZCI6IDE5MS4wNDgyNTAxOTgsIAogICAgICAgICJkZWx0YV9zdGQi
OiAiMjEuMjE2N3ggbGFyZ2VyIiwgCiAgICAgICAgInN0ZF9iYXNlIjogMC4zMzM5MTg1MzQ1MTkw
MjMwNCwgCiAgICAgICAgInRfbXNnIjogIlNpZ25pZmljYW50ICh0PS0zMi42ODA1NTUsIGE9MC45
NSlcbiIKICAgICAgfQogICAgXSwgCiAgICBbCiAgICAgICJjaGFvcyIsIAogICAgICAiQ29tcGFy
aXNvblJlc3VsdCIsIAogICAgICB7CiAgICAgICAgImF2Z19iYXNlIjogMi43OTQyNzIwODkwMDQy
LCAKICAgICAgICAidGltZWxpbmVfbGluayI6IG51bGwsIAogICAgICAgICJhdmdfY2hhbmdlZCI6
IDAuMjA0NzY5NDYzNTM4OTU5OTcsIAogICAgICAgICJtaW5fYmFzZSI6IDIuNzAzMDkxODU5ODIs
IAogICAgICAgICJkZWx0YV9taW4iOiAiMTUuNjIxN3ggZmFzdGVyIiwgCiAgICAgICAgImRlbHRh
X2F2ZyI6ICIxMy42NDU5eCBmYXN0ZXIiLCAKICAgICAgICAic3RkX2NoYW5nZWQiOiAwLjE5OTY1
NTg2Njk2NzA1MTMyLCAKICAgICAgICAibWluX2NoYW5nZWQiOiAwLjE3MzAzNDkwNjM4NywgCiAg
ICAgICAgImRlbHRhX3N0ZCI6ICIzLjgyODZ4IGxhcmdlciIsIAogICAgICAgICJzdGRfYmFzZSI6
IDAuMDUyMTQ4NjQ3OTgyNjM2OTMsIAogICAgICAgICJ0X21zZyI6ICJTaWduaWZpY2FudCAodD04
OC43MzM3MDIsIGE9MC45NSlcbiIKICAgICAgfQogICAgXSwgCiAgICBbCiAgICAgICJzcGhpbngi
LCAKICAgICAgIlJhd1Jlc3VsdCIsIAogICAgICB7CiAgICAgICAgImNoYW5nZWRfdGltZXMiOiBb
CiAgICAgICAgICAyMDE0LjEzNDcyNDg2CiAgICAgICAgXSwgCiAgICAgICAgImJhc2VfdGltZXMi
OiBbCiAgICAgICAgICAxMjM5LjU0NDA5MTk0CiAgICAgICAgXQogICAgICB9CiAgICBdLCAKICAg
IFsKICAgICAgImNyeXB0b19weWFlcyIsIAogICAgICAiQ29tcGFyaXNvblJlc3VsdCIsIAogICAg
ICB7CiAgICAgICAgImF2Z19iYXNlIjogMTkuNTA1NDkzNDAyNDcyMDA1LCAKICAgICAgICAidGlt
ZWxpbmVfbGluayI6IG51bGwsIAogICAgICAgICJhdmdfY2hhbmdlZCI6IDEuMjYwMzc5MDQyNjI1
ODAwMSwgCiAgICAgICAgIm1pbl9iYXNlIjogMTguODgwNzczNzgyNywgCiAgICAgICAgImRlbHRh
X21pbiI6ICIxNS45MDQzeCBmYXN0ZXIiLCAKICAgICAgICAiZGVsdGFfYXZnIjogIjE1LjQ3NTl4
IGZhc3RlciIsIAogICAgICAgICJzdGRfY2hhbmdlZCI6IDAuMTQwMzQ2MTE4MzY0Mjk3MDgsIAog
ICAgICAgICJtaW5fY2hhbmdlZCI6IDEuMTg3MTQ5MDQ3ODUsIAogICAgICAgICJkZWx0YV9zdGQi
OiAiMy4wNzI3eCBzbWFsbGVyIiwgCiAgICAgICAgInN0ZF9iYXNlIjogMC40MzEyNDM4NDU5NTI3
Mjg5LCAKICAgICAgICAidF9tc2ciOiAiU2lnbmlmaWNhbnQgKHQ9Mjg0LjQ3NzUwMiwgYT0wLjk1
KVxuIgogICAgICB9CiAgICBdLCAKICAgIFsKICAgICAgImRlbHRhYmx1ZSIsIAogICAgICAiQ29t
cGFyaXNvblJlc3VsdCIsIAogICAgICB7CiAgICAgICAgImF2Z19iYXNlIjogMC4yMzA1MjUwMzU4
NTgxMiwgCiAgICAgICAgInRpbWVsaW5lX2xpbmsiOiBudWxsLCAKICAgICAgICAiYXZnX2NoYW5n
ZWQiOiAwLjEwMDY1NjI1MTkwNzM0NDAxLCAKICAgICAgICAibWluX2Jhc2UiOiAwLjIwMjAwMjA0
ODQ5MiwgCiAgICAgICAgImRlbHRhX21pbiI6ICIxMS45NTE0eCBmYXN0ZXIiLCAKICAgICAgICAi
ZGVsdGFfYXZnIjogIjIuMjkwMnggZmFzdGVyIiwgCiAgICAgICAgInN0ZF9jaGFuZ2VkIjogMC4x
MTc4MzUyMTcxMjIwNDIxNiwgCiAgICAgICAgIm1pbl9jaGFuZ2VkIjogMC4wMTY5MDE5Njk5MDk3
LCAKICAgICAgICAiZGVsdGFfc3RkIjogIjguODUyN3ggbGFyZ2VyIiwgCiAgICAgICAgInN0ZF9i
YXNlIjogMC4wMTMzMTA2NTMyNDc5Mjc1NTIsIAogICAgICAgICJ0X21zZyI6ICJTaWduaWZpY2Fu
dCAodD03Ljc0MzkzMCwgYT0wLjk1KVxuIgogICAgICB9CiAgICBdLCAKICAgIFsKICAgICAgImRq
YW5nbyIsIAogICAgICAiQ29tcGFyaXNvblJlc3VsdCIsIAogICAgICB7CiAgICAgICAgImF2Z19i
YXNlIjogOS41MDE0NTMyMzc1MzM0LCAKICAgICAgICAidGltZWxpbmVfbGluayI6IG51bGwsIAog
ICAgICAgICJhdmdfY2hhbmdlZCI6IDAuOTAyOTQ5MjI4Mjg2ODU5NiwgCiAgICAgICAgIm1pbl9i
YXNlIjogOS4zMDIxNTc4Nzg4OCwgCiAgICAgICAgImRlbHRhX21pbiI6ICIxMC45NDA1eCBmYXN0
ZXIiLCAKICAgICAgICAiZGVsdGFfYXZnIjogIjEwLjUyMjd4IGZhc3RlciIsIAogICAgICAgICJz
dGRfY2hhbmdlZCI6IDAuMDUyMTgzNTEyMDcxNjk0NjEsIAogICAgICAgICJtaW5fY2hhbmdlZCI6
IDAuODUwMjUwOTU5Mzk2LCAKICAgICAgICAiZGVsdGFfc3RkIjogIjIuMDQ2Mnggc21hbGxlciIs
IAogICAgICAgICJzdGRfYmFzZSI6IDAuMTA2Nzc3NTE0ODc3MDkxMzUsIAogICAgICAgICJ0X21z
ZyI6ICJTaWduaWZpY2FudCAodD01MTEuNTg4MTY0LCBhPTAuOTUpXG4iCiAgICAgIH0KICAgIF0s
IAogICAgWwogICAgICAiZXBhcnNlIiwgCiAgICAgICJDb21wYXJpc29uUmVzdWx0IiwgCiAgICAg
IHsKICAgICAgICAiYXZnX2Jhc2UiOiA3Ljg2Njk2NTgxODQwNDc5OSwgCiAgICAgICAgInRpbWVs
aW5lX2xpbmsiOiBudWxsLCAKICAgICAgICAiYXZnX2NoYW5nZWQiOiA1LjQ0MTMyNDc3NzYwNDE5
OSwgCiAgICAgICAgIm1pbl9iYXNlIjogNy4zNzI1NTAwMTA2OCwgCiAgICAgICAgImRlbHRhX21p
biI6ICIxLjczMjl4IGZhc3RlciIsIAogICAgICAgICJkZWx0YV9hdmciOiAiMS40NDU4eCBmYXN0
ZXIiLCAKICAgICAgICAic3RkX2NoYW5nZWQiOiAyLjA5NDc1MTgxMDI0MTc1NjQsIAogICAgICAg
ICJtaW5fY2hhbmdlZCI6IDQuMjU0MzM1ODgwMjgsIAogICAgICAgICJkZWx0YV9zdGQiOiAiMTIu
NTE3NHggbGFyZ2VyIiwgCiAgICAgICAgInN0ZF9iYXNlIjogMC4xNjczNDc0Nzc2Nzk0ODAwOCwg
CiAgICAgICAgInRfbXNnIjogIlNpZ25pZmljYW50ICh0PTguMTYyMDE3LCBhPTAuOTUpXG4iCiAg
ICAgIH0KICAgIF0sIAogICAgWwogICAgICAiZmFubmt1Y2giLCAKICAgICAgIkNvbXBhcmlzb25S
ZXN1bHQiLCAKICAgICAgewogICAgICAgICJhdmdfYmFzZSI6IDEwLjQ5ODA2NDMzNjc3NjAwNCwg
CiAgICAgICAgInRpbWVsaW5lX2xpbmsiOiBudWxsLCAKICAgICAgICAiYXZnX2NoYW5nZWQiOiAy
LjcxNzgxNjAyODU5NDgwMDMsIAogICAgICAgICJtaW5fYmFzZSI6IDEwLjA5MjM0NjkwNjcsIAog
ICAgICAgICJkZWx0YV9taW4iOiAiMy44NDM1eCBmYXN0ZXIiLCAKICAgICAgICAiZGVsdGFfYXZn
IjogIjMuODYyN3ggZmFzdGVyIiwgCiAgICAgICAgInN0ZF9jaGFuZ2VkIjogMC4wNjEwNTg1MzI2
ODE4ODMzOTYsIAogICAgICAgICJtaW5fY2hhbmdlZCI6IDIuNjI1ODMyMDgwODQsIAogICAgICAg
ICJkZWx0YV9zdGQiOiAiMi42NDUweCBzbWFsbGVyIiwgCiAgICAgICAgInN0ZF9iYXNlIjogMC4x
NjE0OTY4OTQ3MjUyMTcsIAogICAgICAgICJ0X21zZyI6ICJTaWduaWZpY2FudCAodD0zMTguNjQx
MTgzLCBhPTAuOTUpXG4iCiAgICAgIH0KICAgIF0sIAogICAgWwogICAgICAiZmxvYXQiLCAKICAg
ICAgIkNvbXBhcmlzb25SZXN1bHQiLCAKICAgICAgewogICAgICAgICJhdmdfYmFzZSI6IDQuMzc0
Mzc3NzA4NDM0OTk5NSwgCiAgICAgICAgInRpbWVsaW5lX2xpbmsiOiBudWxsLCAKICAgICAgICAi
YXZnX2NoYW5nZWQiOiAwLjQ1Njk0Njc0MDE1MDUyMDA2LCAKICAgICAgICAibWluX2Jhc2UiOiA0
LjI1NzY4Mzk5MjM5LCAKICAgICAgICAiZGVsdGFfbWluIjogIjEyLjU4MTh4IGZhc3RlciIsIAog
ICAgICAgICJkZWx0YV9hdmciOiAiOS41NzMxeCBmYXN0ZXIiLCAKICAgICAgICAic3RkX2NoYW5n
ZWQiOiAwLjA4Nzg4Nzg0NTA0ODUwOTg0LCAKICAgICAgICAibWluX2NoYW5nZWQiOiAwLjMzODM5
ODkzMzQxMSwgCiAgICAgICAgImRlbHRhX3N0ZCI6ICIxLjMyMjV4IGxhcmdlciIsIAogICAgICAg
ICJzdGRfYmFzZSI6IDAuMDY2NDUzOTk1Njc2OTgyODksIAogICAgICAgICJ0X21zZyI6ICJTaWdu
aWZpY2FudCAodD0yNTEuNDAyNTgyLCBhPTAuOTUpXG4iCiAgICAgIH0KICAgIF0sIAogICAgWwog
ICAgICAiZ2Vuc2hpX3RleHQiLCAKICAgICAgIkNvbXBhcmlzb25SZXN1bHQiLCAKICAgICAgewog
ICAgICAgICJhdmdfYmFzZSI6IDEuMTAxODIwNDE2NDUwNiwgCiAgICAgICAgInRpbWVsaW5lX2xp
bmsiOiBudWxsLCAKICAgICAgICAiYXZnX2NoYW5nZWQiOiAwLjM3ODMwNjIxNzE5MzQ5OTk0LCAK
ICAgICAgICAibWluX2Jhc2UiOiAxLjA3NTM4MDA4NjksIAogICAgICAgICJkZWx0YV9taW4iOiAi
My4yMTE5eCBmYXN0ZXIiLCAKICAgICAgICAiZGVsdGFfYXZnIjogIjIuOTEyNXggZmFzdGVyIiwg
CiAgICAgICAgInN0ZF9jaGFuZ2VkIjogMC4xMTU0NzQ5MjA4OTg3MzYwNSwgCiAgICAgICAgIm1p
bl9jaGFuZ2VkIjogMC4zMzQ4MTA5NzIyMTQsIAogICAgICAgICJkZWx0YV9zdGQiOiAiNy43MjM5
eCBsYXJnZXIiLCAKICAgICAgICAic3RkX2Jhc2UiOiAwLjAxNDk1MDQxOTUxMTUzNzAxNCwgCiAg
ICAgICAgInRfbXNnIjogIlNpZ25pZmljYW50ICh0PTQzLjkzNzQzNCwgYT0wLjk1KVxuIgogICAg
ICB9CiAgICBdLCAKICAgIFsKICAgICAgImdlbnNoaV94bWwiLCAKICAgICAgIkNvbXBhcmlzb25S
ZXN1bHQiLCAKICAgICAgewogICAgICAgICJhdmdfYmFzZSI6IDIuMjE3MDYxNjI0NTI2NCwgCiAg
ICAgICAgInRpbWVsaW5lX2xpbmsiOiBudWxsLCAKICAgICAgICAiYXZnX2NoYW5nZWQiOiAwLjk3
NjQxMjY2MzQ1OTcwMDEsIAogICAgICAgICJtaW5fYmFzZSI6IDIuMTYxMTYyODUzMjQsIAogICAg
ICAgICJkZWx0YV9taW4iOiAiMi40MTg5eCBmYXN0ZXIiLCAKICAgICAgICAiZGVsdGFfYXZnIjog
IjIuMjcwNnggZmFzdGVyIiwgCiAgICAgICAgInN0ZF9jaGFuZ2VkIjogMC4yNzkwNjk3NTI3OTg2
MjMsIAogICAgICAgICJtaW5fY2hhbmdlZCI6IDAuODkzNDMyMTQwMzUsIAogICAgICAgICJkZWx0
YV9zdGQiOiAiNy42MDIzeCBsYXJnZXIiLCAKICAgICAgICAic3RkX2Jhc2UiOiAwLjAzNjcwODY0
MDYxOTY1NjY0LCAKICAgICAgICAidF9tc2ciOiAiU2lnbmlmaWNhbnQgKHQ9MzEuMTY3MDc3LCBh
PTAuOTUpXG4iCiAgICAgIH0KICAgIF0sIAogICAgWwogICAgICAiZ28iLCAKICAgICAgIkNvbXBh
cmlzb25SZXN1bHQiLCAKICAgICAgewogICAgICAgICJhdmdfYmFzZSI6IDYuMzMyNzk1MzE5NTU3
MjA0LCAKICAgICAgICAidGltZWxpbmVfbGluayI6IG51bGwsIAogICAgICAgICJhdmdfY2hhbmdl
ZCI6IDEuODgxNTk4MDU3NzQ2NjAxLCAKICAgICAgICAibWluX2Jhc2UiOiA2LjAxMTM1Mzk2OTU3
LCAKICAgICAgICAiZGVsdGFfbWluIjogIjMuODU0NHggZmFzdGVyIiwgCiAgICAgICAgImRlbHRh
X2F2ZyI6ICIzLjM2NTZ4IGZhc3RlciIsIAogICAgICAgICJzdGRfY2hhbmdlZCI6IDAuMzM5MDA1
MDY0MDUxNTMxOSwgCiAgICAgICAgIm1pbl9jaGFuZ2VkIjogMS41NTk2MTcwNDI1NCwgCiAgICAg
ICAgImRlbHRhX3N0ZCI6ICIxLjYwMDB4IGxhcmdlciIsIAogICAgICAgICJzdGRfYmFzZSI6IDAu
MjExODgzMjY3MjMwNTg4MjgsIAogICAgICAgICJ0X21zZyI6ICJTaWduaWZpY2FudCAodD03OC43
MzEzNTEsIGE9MC45NSlcbiIKICAgICAgfQogICAgXSwgCiAgICBbCiAgICAgICJoZXhpb20yIiwg
CiAgICAgICJDb21wYXJpc29uUmVzdWx0IiwgCiAgICAgIHsKICAgICAgICAiYXZnX2Jhc2UiOiAx
NjY5LjIyODU5NDA2LCAKICAgICAgICAidGltZWxpbmVfbGluayI6IG51bGwsIAogICAgICAgICJh
dmdfY2hhbmdlZCI6IDIxNS4zODY3MjIwODgsIAogICAgICAgICJtaW5fYmFzZSI6IDE2NjkuMjI4
NTk0MDYsIAogICAgICAgICJkZWx0YV9taW4iOiAiNy43NDk5eCBmYXN0ZXIiLCAKICAgICAgICAi
ZGVsdGFfYXZnIjogIjcuNzQ5OXggZmFzdGVyIiwgCiAgICAgICAgInN0ZF9jaGFuZ2VkIjogMC4w
LCAKICAgICAgICAibWluX2NoYW5nZWQiOiAyMTUuMzg2NzIyMDg4LCAKICAgICAgICAiZGVsdGFf
c3RkIjogInVuY29tcGFyYWJsZSIsIAogICAgICAgICJzdGRfYmFzZSI6IDAuMCwgCiAgICAgICAg
InRfbXNnIjogIk5vdCBzaWduaWZpY2FudFxuIgogICAgICB9CiAgICBdLCAKICAgIFsKICAgICAg
Imh0bWw1bGliIiwgCiAgICAgICJDb21wYXJpc29uUmVzdWx0IiwgCiAgICAgIHsKICAgICAgICAi
YXZnX2Jhc2UiOiAxMDkuMjc0NzQ5NDIyMTk5OTksIAogICAgICAgICJ0aW1lbGluZV9saW5rIjog
bnVsbCwgCiAgICAgICAgImF2Z19jaGFuZ2VkIjogMzguODI4NjcwODM1NSwgCiAgICAgICAgIm1p
bl9iYXNlIjogMTA4LjkyMzc4NzExNywgCiAgICAgICAgImRlbHRhX21pbiI6ICIzLjIwODJ4IGZh
c3RlciIsIAogICAgICAgICJkZWx0YV9hdmciOiAiMi44MTQzeCBmYXN0ZXIiLCAKICAgICAgICAi
c3RkX2NoYW5nZWQiOiA4LjE3OTM2MTcxOTgwOTU2OCwgCiAgICAgICAgIm1pbl9jaGFuZ2VkIjog
MzMuOTUxNTYwOTc0MSwgCiAgICAgICAgImRlbHRhX3N0ZCI6ICIzMy45MTAxeCBsYXJnZXIiLCAK
ICAgICAgICAic3RkX2Jhc2UiOiAwLjI0MTIwNzM0NTAwNTQ3NjAzLCAKICAgICAgICAidF9tc2ci
OiAiU2lnbmlmaWNhbnQgKHQ9MTkuMjUwMTI5LCBhPTAuOTUpXG4iCiAgICAgIH0KICAgIF0sIAog
ICAgWwogICAgICAianNvbl9iZW5jaCIsIAogICAgICAiQ29tcGFyaXNvblJlc3VsdCIsIAogICAg
ICB7CiAgICAgICAgImF2Z19iYXNlIjogMzMuMTQzNjcxMDkyOTkwMDA0LCAKICAgICAgICAidGlt
ZWxpbmVfbGluayI6IG51bGwsIAogICAgICAgICJhdmdfY2hhbmdlZCI6IDE2LjcwMDc2NDExMjQ3
Mzk5OCwgCiAgICAgICAgIm1pbl9iYXNlIjogMzIuMjU1ODAxOTE2MSwgCiAgICAgICAgImRlbHRh
X21pbiI6ICIyLjE4NjJ4IGZhc3RlciIsIAogICAgICAgICJkZWx0YV9hdmciOiAiMS45ODQ2eCBm
YXN0ZXIiLCAKICAgICAgICAic3RkX2NoYW5nZWQiOiAwLjgzNzM2MTQ3NDg3OTE1MzQsIAogICAg
ICAgICJtaW5fY2hhbmdlZCI6IDE0Ljc1NDE0MjA0NiwgCiAgICAgICAgImRlbHRhX3N0ZCI6ICIy
LjQ2MjJ4IGxhcmdlciIsIAogICAgICAgICJzdGRfYmFzZSI6IDAuMzQwMDkxNzUzMDQ3NjA3Niwg
CiAgICAgICAgInRfbXNnIjogIlNpZ25pZmljYW50ICh0PTEyOC42NDU5MTQsIGE9MC45NSlcbiIK
ICAgICAgfQogICAgXSwgCiAgICBbCiAgICAgICJtZXRlb3ItY29udGVzdCIsIAogICAgICAiQ29t
cGFyaXNvblJlc3VsdCIsIAogICAgICB7CiAgICAgICAgImF2Z19iYXNlIjogMS44NDE4ODY1MTU2
MTcsIAogICAgICAgICJ0aW1lbGluZV9saW5rIjogbnVsbCwgCiAgICAgICAgImF2Z19jaGFuZ2Vk
IjogMS4yMTk1NTE1MTU1NzkwMDA0LCAKICAgICAgICAibWluX2Jhc2UiOiAxLjczNzQ0NzAyMzM5
LCAKICAgICAgICAiZGVsdGFfbWluIjogIjEuNDY3MnggZmFzdGVyIiwgCiAgICAgICAgImRlbHRh
X2F2ZyI6ICIxLjUxMDN4IGZhc3RlciIsIAogICAgICAgICJzdGRfY2hhbmdlZCI6IDAuMDQ3NzQz
NTkwODY1NTc4ODk2LCAKICAgICAgICAibWluX2NoYW5nZWQiOiAxLjE4NDE4NjkzNTQyLCAKICAg
ICAgICAiZGVsdGFfc3RkIjogIjEuODE1OHggc21hbGxlciIsIAogICAgICAgICJzdGRfYmFzZSI6
IDAuMDg2NjkyMDM5NzczMDI4MDgsIAogICAgICAgICJ0X21zZyI6ICJTaWduaWZpY2FudCAodD00
NC40NjM5MzUsIGE9MC45NSlcbiIKICAgICAgfQogICAgXSwgCiAgICBbCiAgICAgICJuYm9keV9t
b2RpZmllZCIsIAogICAgICAiQ29tcGFyaXNvblJlc3VsdCIsIAogICAgICB7CiAgICAgICAgImF2
Z19iYXNlIjogMi45MDUxNDYzNDEzMjQwMDA0LCAKICAgICAgICAidGltZWxpbmVfbGluayI6IG51
bGwsIAogICAgICAgICJhdmdfY2hhbmdlZCI6IDAuMjQwMDc1NjMxMTQxNjQsIAogICAgICAgICJt
aW5fYmFzZSI6IDIuODY3MTUxOTc1NjMsIAogICAgICAgICJkZWx0YV9taW4iOiAiMTIuNDMxNHgg
ZmFzdGVyIiwgCiAgICAgICAgImRlbHRhX2F2ZyI6ICIxMi4xMDEweCBmYXN0ZXIiLCAKICAgICAg
ICAic3RkX2NoYW5nZWQiOiAwLjAyMzUwNTk5MTAyOTk2OTUxMywgCiAgICAgICAgIm1pbl9jaGFu
Z2VkIjogMC4yMzA2MzgwMjcxOTEsIAogICAgICAgICJkZWx0YV9zdGQiOiAiMS4xOTY5eCBzbWFs
bGVyIiwgCiAgICAgICAgInN0ZF9iYXNlIjogMC4wMjgxMzQ3MjYzNzAwMzIxNiwgCiAgICAgICAg
InRfbXNnIjogIlNpZ25pZmljYW50ICh0PTUxNC4wMTg2MTMsIGE9MC45NSlcbiIKICAgICAgfQog
ICAgXSwgCiAgICBbCiAgICAgICJucXVlZW5zIiwgCiAgICAgICJDb21wYXJpc29uUmVzdWx0Iiwg
CiAgICAgIHsKICAgICAgICAiYXZnX2Jhc2UiOiAxOTcuNTUwNTM4MjA2LCAKICAgICAgICAidGlt
ZWxpbmVfbGluayI6IG51bGwsIAogICAgICAgICJhdmdfY2hhbmdlZCI6IDIwNi4xMzkwMjU5NzQy
MDAwMiwgCiAgICAgICAgIm1pbl9iYXNlIjogMTk2LjgyODI3MzA1OCwgCiAgICAgICAgImRlbHRh
X21pbiI6ICIxLjAzNDR4IHNsb3dlciIsIAogICAgICAgICJkZWx0YV9hdmciOiAiMS4wNDM1eCBz
bG93ZXIiLCAKICAgICAgICAic3RkX2NoYW5nZWQiOiAzLjIxNDUzNzc2MTYxMzcsIAogICAgICAg
ICJtaW5fY2hhbmdlZCI6IDIwMy41OTYwOTQxMzEsIAogICAgICAgICJkZWx0YV9zdGQiOiAiNi4w
MTgxeCBsYXJnZXIiLCAKICAgICAgICAic3RkX2Jhc2UiOiAwLjUzNDE0MTk2OTYxNTE3NTIsIAog
ICAgICAgICJ0X21zZyI6ICJTaWduaWZpY2FudCAodD0tNS44OTM0NDAsIGE9MC45NSlcbiIKICAg
ICAgfQogICAgXSwgCiAgICBbCiAgICAgICJwaWRpZ2l0cyIsIAogICAgICAiQ29tcGFyaXNvblJl
c3VsdCIsIAogICAgICB7CiAgICAgICAgImF2Z19iYXNlIjogNzEuMTU5NzkwOTkyNzQwMDEsIAog
ICAgICAgICJ0aW1lbGluZV9saW5rIjogbnVsbCwgCiAgICAgICAgImF2Z19jaGFuZ2VkIjogMTI5
LjU2MzA5NjM4MDE5OTk3LCAKICAgICAgICAibWluX2Jhc2UiOiA3MS4wMzIyNDM5NjcxLCAKICAg
ICAgICAiZGVsdGFfbWluIjogIjEuODIyN3ggc2xvd2VyIiwgCiAgICAgICAgImRlbHRhX2F2ZyI6
ICIxLjgyMDd4IHNsb3dlciIsIAogICAgICAgICJzdGRfY2hhbmdlZCI6IDAuMTk1NTg0MzIzMTcx
MzY3MjYsIAogICAgICAgICJtaW5fY2hhbmdlZCI6IDEyOS40NzAzMDcxMTIsIAogICAgICAgICJk
ZWx0YV9zdGQiOiAiMS40MDc3eCBsYXJnZXIiLCAKICAgICAgICAic3RkX2Jhc2UiOiAwLjEzODk0
MjE3MDAzMjgwNDksIAogICAgICAgICJ0X21zZyI6ICJTaWduaWZpY2FudCAodD0tNTQ0LjMzODQz
NSwgYT0wLjk1KVxuIgogICAgICB9CiAgICBdLCAKICAgIFsKICAgICAgInB5ZmxhdGUtZmFzdCIs
IAogICAgICAiQ29tcGFyaXNvblJlc3VsdCIsIAogICAgICB7CiAgICAgICAgImF2Z19iYXNlIjog
MTcuMTcyNzQ0MTUwMTU3OTk2LCAKICAgICAgICAidGltZWxpbmVfbGluayI6IG51bGwsIAogICAg
ICAgICJhdmdfY2hhbmdlZCI6IDUuMDc3MzgzODMyOTMxMDAxLCAKICAgICAgICAibWluX2Jhc2Ui
OiAxNi44MjY4ODg3OTk3LCAKICAgICAgICAiZGVsdGFfbWluIjogIjMuMzgzM3ggZmFzdGVyIiwg
CiAgICAgICAgImRlbHRhX2F2ZyI6ICIzLjM4MjJ4IGZhc3RlciIsIAogICAgICAgICJzdGRfY2hh
bmdlZCI6IDAuMDU2OTUwMjcyMDk0MjUzNSwgCiAgICAgICAgIm1pbl9jaGFuZ2VkIjogNC45NzM0
NTk5NTkwMywgCiAgICAgICAgImRlbHRhX3N0ZCI6ICIyLjI1NDd4IHNtYWxsZXIiLCAKICAgICAg
ICAic3RkX2Jhc2UiOiAwLjEyODQwNjE3MzkwNjU1MTgyLCAKICAgICAgICAidF9tc2ciOiAiU2ln
bmlmaWNhbnQgKHQ9NjA4Ljg2OTE4MiwgYT0wLjk1KVxuIgogICAgICB9CiAgICBdLCAKICAgIFsK
ICAgICAgInB5cHlfaW50ZXJwIiwgCiAgICAgICJDb21wYXJpc29uUmVzdWx0IiwgCiAgICAgIHsK
ICAgICAgICAiYXZnX2Jhc2UiOiAyLjY1NDU0NzE1MjUxOTQsIAogICAgICAgICJ0aW1lbGluZV9s
aW5rIjogbnVsbCwgCiAgICAgICAgImF2Z19jaGFuZ2VkIjogMC44MTgxNDIwNjYwMDE2MTk4LCAK
ICAgICAgICAibWluX2Jhc2UiOiAyLjYxMzk4ODg3NjM0LCAKICAgICAgICAiZGVsdGFfbWluIjog
IjkuNDkxMHggZmFzdGVyIiwgCiAgICAgICAgImRlbHRhX2F2ZyI6ICIzLjI0NDZ4IGZhc3RlciIs
IAogICAgICAgICJzdGRfY2hhbmdlZCI6IDAuOTc2NDQ1MDk3MTY1MTEzNywgCiAgICAgICAgIm1p
bl9jaGFuZ2VkIjogMC4yNzU0MTY4NTEwNDQsIAogICAgICAgICJkZWx0YV9zdGQiOiAiMTEuOTE5
MHggbGFyZ2VyIiwgCiAgICAgICAgInN0ZF9iYXNlIjogMC4wODE5MjMxNzg3NDMyMDU2NiwgCiAg
ICAgICAgInRfbXNnIjogIlNpZ25pZmljYW50ICh0PTEzLjI1MjAzMiwgYT0wLjk1KVxuIgogICAg
ICB9CiAgICBdLCAKICAgIFsKICAgICAgInB5eGxfYmVuY2giLCAKICAgICAgIkNvbXBhcmlzb25S
ZXN1bHQiLCAKICAgICAgewogICAgICAgICJhdmdfYmFzZSI6IDMuMDY3MjE2MjE1MTMzNjAwNCwg
CiAgICAgICAgInRpbWVsaW5lX2xpbmsiOiBudWxsLCAKICAgICAgICAiYXZnX2NoYW5nZWQiOiAx
LjcxNDc0MDU0MzM2NTg3OTYsIAogICAgICAgICJtaW5fYmFzZSI6IDIuOTc3MjY3OTgwNTgsIAog
ICAgICAgICJkZWx0YV9taW4iOiAiMy4xOTQ0eCBmYXN0ZXIiLCAKICAgICAgICAiZGVsdGFfYXZn
IjogIjEuNzg4N3ggZmFzdGVyIiwgCiAgICAgICAgInN0ZF9jaGFuZ2VkIjogMS4xNTEyMDU3ODQy
MTgxOTEsIAogICAgICAgICJtaW5fY2hhbmdlZCI6IDAuOTMyMDQwOTI5Nzk0LCAKICAgICAgICAi
ZGVsdGFfc3RkIjogIjMxLjczNTd4IGxhcmdlciIsIAogICAgICAgICJzdGRfYmFzZSI6IDAuMDM2
Mjc0NzU0NDU2NzI4LCAKICAgICAgICAidF9tc2ciOiAiU2lnbmlmaWNhbnQgKHQ9OC4zMDMyMTAs
IGE9MC45NSlcbiIKICAgICAgfQogICAgXSwgCiAgICBbCiAgICAgICJyYXl0cmFjZS1zaW1wbGUi
LCAKICAgICAgIkNvbXBhcmlzb25SZXN1bHQiLCAKICAgICAgewogICAgICAgICJhdmdfYmFzZSI6
IDE1Ljk0MDcxNDc3ODkwNCwgCiAgICAgICAgInRpbWVsaW5lX2xpbmsiOiBudWxsLCAKICAgICAg
ICAiYXZnX2NoYW5nZWQiOiAwLjQ4MzUxOTkxMTc2NjAyLCAKICAgICAgICAibWluX2Jhc2UiOiAx
NS42NDg0NjA4NjUsIAogICAgICAgICJkZWx0YV9taW4iOiAiMzMuMjExOHggZmFzdGVyIiwgCiAg
ICAgICAgImRlbHRhX2F2ZyI6ICIzMi45NjgxeCBmYXN0ZXIiLCAKICAgICAgICAic3RkX2NoYW5n
ZWQiOiAwLjAxNTU1MjMyOTE3NjI0NDc0MywgCiAgICAgICAgIm1pbl9jaGFuZ2VkIjogMC40NzEx
NzIwOTQzNDUsIAogICAgICAgICJkZWx0YV9zdGQiOiAiOC4zNjE4eCBzbWFsbGVyIiwgCiAgICAg
ICAgInN0ZF9iYXNlIjogMC4xMzAwNDU1NzYxODU3MTA3MiwgCiAgICAgICAgInRfbXNnIjogIlNp
Z25pZmljYW50ICh0PTgzNC41MTk0MDQsIGE9MC45NSlcbiIKICAgICAgfQogICAgXSwgCiAgICBb
CiAgICAgICJyaWNoYXJkcyIsIAogICAgICAiQ29tcGFyaXNvblJlc3VsdCIsIAogICAgICB7CiAg
ICAgICAgImF2Z19iYXNlIjogMi4xOTMwMTQ5OTM2Njc0MDA2LCAKICAgICAgICAidGltZWxpbmVf
bGluayI6IG51bGwsIAogICAgICAgICJhdmdfY2hhbmdlZCI6IDAuMTM3ODU1ODI1NDI0MjE5OTgs
IAogICAgICAgICJtaW5fYmFzZSI6IDIuMDkxNzE4MTk2ODcsIAogICAgICAgICJkZWx0YV9taW4i
OiAiMTUuOTQ2M3ggZmFzdGVyIiwgCiAgICAgICAgImRlbHRhX2F2ZyI6ICIxNS45MDgweCBmYXN0
ZXIiLCAKICAgICAgICAic3RkX2NoYW5nZWQiOiAwLjAxMDY3NDA4MjQzMzQxNDUzNSwgCiAgICAg
ICAgIm1pbl9jaGFuZ2VkIjogMC4xMzExNzI4OTU0MzIsIAogICAgICAgICJkZWx0YV9zdGQiOiAi
NC44MzA0eCBzbWFsbGVyIiwgCiAgICAgICAgInN0ZF9iYXNlIjogMC4wNTE1NjA1Njc2MDcxMzQx
NCwgCiAgICAgICAgInRfbXNnIjogIlNpZ25pZmljYW50ICh0PTI3NS45OTQ0MjgsIGE9MC45NSlc
biIKICAgICAgfQogICAgXSwgCiAgICBbCiAgICAgICJzY2ltYXJrX2ZmdCIsIAogICAgICAiQ29t
cGFyaXNvblJlc3VsdCIsIAogICAgICB7CiAgICAgICAgImF2Z19iYXNlIjogMTQ0Ljg0MzAyMTc3
NDQwMDAzLCAKICAgICAgICAidGltZWxpbmVfbGluayI6IG51bGwsIAogICAgICAgICJhdmdfY2hh
bmdlZCI6IDUuNTYyMjkwNjIwODA0LCAKICAgICAgICAibWluX2Jhc2UiOiAxNDMuNzE1NTUyMDky
LCAKICAgICAgICAiZGVsdGFfbWluIjogIjI3LjAxNDV4IGZhc3RlciIsIAogICAgICAgICJkZWx0
YV9hdmciOiAiMjYuMDQwMnggZmFzdGVyIiwgCiAgICAgICAgInN0ZF9jaGFuZ2VkIjogMC4zODY0
NTA5NzM4NTE2MDc1LCAKICAgICAgICAibWluX2NoYW5nZWQiOiA1LjMxOTkzMjkzNzYyLCAKICAg
ICAgICAiZGVsdGFfc3RkIjogIjIuODc0Nnggc21hbGxlciIsIAogICAgICAgICJzdGRfYmFzZSI6
IDEuMTEwODk3MDk4OTg5MTE5MSwgCiAgICAgICAgInRfbXNnIjogIlNpZ25pZmljYW50ICh0PTI2
NC43ODY4MzYsIGE9MC45NSlcbiIKICAgICAgfQogICAgXSwgCiAgICBbCiAgICAgICJzY2ltYXJr
X2x1IiwgCiAgICAgICJDb21wYXJpc29uUmVzdWx0IiwgCiAgICAgIHsKICAgICAgICAiYXZnX2Jh
c2UiOiAxNjk1LjY5NzgyNjE0NjAwMDEsIAogICAgICAgICJ0aW1lbGluZV9saW5rIjogbnVsbCwg
CiAgICAgICAgImF2Z19jaGFuZ2VkIjogNy43Mzg5MDA5NDc1Njk5OTk1LCAKICAgICAgICAibWlu
X2Jhc2UiOiAxNjYzLjE3NDU5NDg4LCAKICAgICAgICAiZGVsdGFfbWluIjogIjIyMC41Nzg4eCBm
YXN0ZXIiLCAKICAgICAgICAiZGVsdGFfYXZnIjogIjIxOS4xMTM1eCBmYXN0ZXIiLCAKICAgICAg
ICAic3RkX2NoYW5nZWQiOiAwLjMyMDkwNDQxNDQ4Njg2NzksIAogICAgICAgICJtaW5fY2hhbmdl
ZCI6IDcuNTQwMDQ2OTMwMzEsIAogICAgICAgICJkZWx0YV9zdGQiOiAiMTEyLjQ4NTB4IHNtYWxs
ZXIiLCAKICAgICAgICAic3RkX2Jhc2UiOiAzNi4wOTY5MjE0Njg3NTgyNCwgCiAgICAgICAgInRf
bXNnIjogIlNpZ25pZmljYW50ICh0PTEwNC41NTg1NTAsIGE9MC45NSlcbiIKICAgICAgfQogICAg
XSwgCiAgICBbCiAgICAgICJzY2ltYXJrX21vbnRlY2FybG8iLCAKICAgICAgIkNvbXBhcmlzb25S
ZXN1bHQiLCAKICAgICAgewogICAgICAgICJhdmdfYmFzZSI6IDE0My4wMDM5MDUxMDU2LCAKICAg
ICAgICAidGltZWxpbmVfbGluayI6IG51bGwsIAogICAgICAgICJhdmdfY2hhbmdlZCI6IDMuMjQ1
MDY4MDI1NTg5OTk5NywgCiAgICAgICAgIm1pbl9iYXNlIjogMTQyLjE4MDE5MDA4NiwgCiAgICAg
ICAgImRlbHRhX21pbiI6ICI0OC4xNDg4eCBmYXN0ZXIiLCAKICAgICAgICAiZGVsdGFfYXZnIjog
IjQ0LjA2ODF4IGZhc3RlciIsIAogICAgICAgICJzdGRfY2hhbmdlZCI6IDAuNjA5ODk3NzAzODUw
NDQ3NCwgCiAgICAgICAgIm1pbl9jaGFuZ2VkIjogMi45NTI5MzQwMjY3MiwgCiAgICAgICAgImRl
bHRhX3N0ZCI6ICIxLjAwNDZ4IHNtYWxsZXIiLCAKICAgICAgICAic3RkX2Jhc2UiOiAwLjYxMjY4
ODMyODMzMDIwOTcsIAogICAgICAgICJ0X21zZyI6ICJTaWduaWZpY2FudCAodD0zNjEuNDkyMDIy
LCBhPTAuOTUpXG4iCiAgICAgIH0KICAgIF0sIAogICAgWwogICAgICAic2NpbWFya19zb3IiLCAK
ICAgICAgIkNvbXBhcmlzb25SZXN1bHQiLCAKICAgICAgewogICAgICAgICJhdmdfYmFzZSI6IDI4
MTQuMzIwMzQyOTY4LCAKICAgICAgICAidGltZWxpbmVfbGluayI6IG51bGwsIAogICAgICAgICJh
dmdfY2hhbmdlZCI6IDUuNjQxNzcxNDExODk2LCAKICAgICAgICAibWluX2Jhc2UiOiAyNzc3Ljcw
MDg0NjkxLCAKICAgICAgICAiZGVsdGFfbWluIjogIjUwMy4wODY3eCBmYXN0ZXIiLCAKICAgICAg
ICAiZGVsdGFfYXZnIjogIjQ5OC44MzYzeCBmYXN0ZXIiLCAKICAgICAgICAic3RkX2NoYW5nZWQi
OiAwLjEwNzI4NzE0ODY2Mjg2MjE4LCAKICAgICAgICAibWluX2NoYW5nZWQiOiA1LjUyMTMxNjA1
MTQ4LCAKICAgICAgICAiZGVsdGFfc3RkIjogIjI3My41MzQ2eCBzbWFsbGVyIiwgCiAgICAgICAg
InN0ZF9iYXNlIjogMjkuMzQ2NzUxODMyMDUyNDgsIAogICAgICAgICJ0X21zZyI6ICJTaWduaWZp
Y2FudCAodD0yMTQuMDA1MDg5LCBhPTAuOTUpXG4iCiAgICAgIH0KICAgIF0sIAogICAgWwogICAg
ICAic2NpbWFya19zcGFyc2VtYXRtdWx0IiwgCiAgICAgICJDb21wYXJpc29uUmVzdWx0IiwgCiAg
ICAgIHsKICAgICAgICAiYXZnX2Jhc2UiOiAyMTEuMTM5NDQzODc0NCwgCiAgICAgICAgInRpbWVs
aW5lX2xpbmsiOiBudWxsLCAKICAgICAgICAiYXZnX2NoYW5nZWQiOiA4LjA2MTI0MDQzNDY0OCwg
CiAgICAgICAgIm1pbl9iYXNlIjogMjA2LjI3MDE2OTAyLCAKICAgICAgICAiZGVsdGFfbWluIjog
IjI3LjA0MzJ4IGZhc3RlciIsIAogICAgICAgICJkZWx0YV9hdmciOiAiMjYuMTkxOXggZmFzdGVy
IiwgCiAgICAgICAgInN0ZF9jaGFuZ2VkIjogMC40OTY3NzkzMjE4ODgzOTcyNCwgCiAgICAgICAg
Im1pbl9jaGFuZ2VkIjogNy42Mjc0NDMwNzUxOCwgCiAgICAgICAgImRlbHRhX3N0ZCI6ICI5LjA3
NTJ4IHNtYWxsZXIiLCAKICAgICAgICAic3RkX2Jhc2UiOiA0LjUwODM4MjQzNTk4Mjc2MSwgCiAg
ICAgICAgInRfbXNnIjogIlNpZ25pZmljYW50ICh0PTEwMC4xMTY3NzksIGE9MC45NSlcbiIKICAg
ICAgfQogICAgXSwgCiAgICBbCiAgICAgICJzcGFtYmF5ZXMiLCAKICAgICAgIkNvbXBhcmlzb25S
ZXN1bHQiLCAKICAgICAgewogICAgICAgICJhdmdfYmFzZSI6IDEuODk2MDg4ODU3NjUxMzk5Nywg
CiAgICAgICAgInRpbWVsaW5lX2xpbmsiOiBudWxsLCAKICAgICAgICAiYXZnX2NoYW5nZWQiOiAx
LjA2NTU5NzQ1MzExNzUxOTksIAogICAgICAgICJtaW5fYmFzZSI6IDEuODE5NjAyMDEyNjMsIAog
ICAgICAgICJkZWx0YV9taW4iOiAiMi4xODg0eCBmYXN0ZXIiLCAKICAgICAgICAiZGVsdGFfYXZn
IjogIjEuNzc5NHggZmFzdGVyIiwgCiAgICAgICAgInN0ZF9jaGFuZ2VkIjogMC4yMjcxMTM3MTU0
NDU2MjM0OCwgCiAgICAgICAgIm1pbl9jaGFuZ2VkIjogMC44MzE0OTE5NDcxNzQsIAogICAgICAg
ICJkZWx0YV9zdGQiOiAiNi4xNzgyeCBsYXJnZXIiLCAKICAgICAgICAic3RkX2Jhc2UiOiAwLjAz
Njc2MDI3MzYwNTMwODU1LCAKICAgICAgICAidF9tc2ciOiAiU2lnbmlmaWNhbnQgKHQ9MjUuNTI0
NzMxLCBhPTAuOTUpXG4iCiAgICAgIH0KICAgIF0sIAogICAgWwogICAgICAic3BlY3RyYWwtbm9y
bSIsIAogICAgICAiQ29tcGFyaXNvblJlc3VsdCIsIAogICAgICB7CiAgICAgICAgImF2Z19iYXNl
IjogMi45NDg5OTMzODI0NTMzOTk0LCAKICAgICAgICAidGltZWxpbmVfbGluayI6IG51bGwsIAog
ICAgICAgICJhdmdfY2hhbmdlZCI6IDAuMTg1MTkxNTU1MDIzMTYwMDQsIAogICAgICAgICJtaW5f
YmFzZSI6IDIuNjk3MTc5MDc5MDYsIAogICAgICAgICJkZWx0YV9taW4iOiAiMTUuNTY4NHggZmFz
dGVyIiwgCiAgICAgICAgImRlbHRhX2F2ZyI6ICIxNS45MjQweCBmYXN0ZXIiLCAKICAgICAgICAi
c3RkX2NoYW5nZWQiOiAwLjAyNjI3OTAzMjIwNDE5MzUsIAogICAgICAgICJtaW5fY2hhbmdlZCI6
IDAuMTczMjQ2ODYwNTA0LCAKICAgICAgICAiZGVsdGFfc3RkIjogIjIuOTQwMHggc21hbGxlciIs
IAogICAgICAgICJzdGRfYmFzZSI6IDAuMDc3MjYwOTg2NjQyNjE0NTIsIAogICAgICAgICJ0X21z
ZyI6ICJTaWduaWZpY2FudCAodD0yMzkuNDc0NzY1LCBhPTAuOTUpXG4iCiAgICAgIH0KICAgIF0s
IAogICAgWwogICAgICAic3BpdGZpcmUyIiwgCiAgICAgICJDb21wYXJpc29uUmVzdWx0IiwgCiAg
ICAgIHsKICAgICAgICAiYXZnX2Jhc2UiOiA1NS4wMjQ2MDAwMDAwMDAwMiwgCiAgICAgICAgInRp
bWVsaW5lX2xpbmsiOiBudWxsLCAKICAgICAgICAiYXZnX2NoYW5nZWQiOiA0Ni4zMDY0MDAwMDAw
MDAwMDQsIAogICAgICAgICJtaW5fYmFzZSI6IDU0LjU0LCAKICAgICAgICAiZGVsdGFfbWluIjog
IjEuMTk1M3ggZmFzdGVyIiwgCiAgICAgICAgImRlbHRhX2F2ZyI6ICIxLjE4ODN4IGZhc3RlciIs
IAogICAgICAgICJzdGRfY2hhbmdlZCI6IDAuNDg0NDA0Nzg5NDA2NTQ2MSwgCiAgICAgICAgIm1p
bl9jaGFuZ2VkIjogNDUuNjMsIAogICAgICAgICJkZWx0YV9zdGQiOiAiMS40NDI1eCBsYXJnZXIi
LCAKICAgICAgICAic3RkX2Jhc2UiOiAwLjMzNTgxNTg1MDg5NzkwNzgsIAogICAgICAgICJ0X21z
ZyI6ICJTaWduaWZpY2FudCAodD0xMDQuNTg4NTc0LCBhPTAuOTUpXG4iCiAgICAgIH0KICAgIF0s
IAogICAgWwogICAgICAic3BpdGZpcmVfY3N0cmluZ2lvMiIsIAogICAgICAiQ29tcGFyaXNvblJl
c3VsdCIsIAogICAgICB7CiAgICAgICAgImF2Z19iYXNlIjogMTExLjQ4OTQsIAogICAgICAgICJ0
aW1lbGluZV9saW5rIjogbnVsbCwgCiAgICAgICAgImF2Z19jaGFuZ2VkIjogMjMuODE3Mzk5OTk5
OTk5OTksIAogICAgICAgICJtaW5fYmFzZSI6IDEwNS45NSwgCiAgICAgICAgImRlbHRhX21pbiI6
ICI0LjY5MjJ4IGZhc3RlciIsIAogICAgICAgICJkZWx0YV9hdmciOiAiNC42ODEweCBmYXN0ZXIi
LCAKICAgICAgICAic3RkX2NoYW5nZWQiOiAwLjcwMTE0NDI4MzM4NDI3NTMsIAogICAgICAgICJt
aW5fY2hhbmdlZCI6IDIyLjU4LCAKICAgICAgICAiZGVsdGFfc3RkIjogIjIuNzE1NXggc21hbGxl
ciIsIAogICAgICAgICJzdGRfYmFzZSI6IDEuOTAzOTI3NjM3NTM3NjIzLCAKICAgICAgICAidF9t
c2ciOiAiU2lnbmlmaWNhbnQgKHQ9MzA1LjU0ODA3MiwgYT0wLjk1KVxuIgogICAgICB9CiAgICBd
LCAKICAgIFsKICAgICAgInNxbGFsY2hlbXlfZGVjbGFyYXRpdmUiLCAKICAgICAgIkNvbXBhcmlz
b25SZXN1bHQiLCAKICAgICAgewogICAgICAgICJhdmdfYmFzZSI6IDEuNjUwNzEyMzQ4NjE5OTM5
OCwgCiAgICAgICAgInRpbWVsaW5lX2xpbmsiOiBudWxsLCAKICAgICAgICAiYXZnX2NoYW5nZWQi
OiAwLjkzNTg1Mzc0ODMyMTYyNjgsIAogICAgICAgICJtaW5fYmFzZSI6IDAuMzkyMDE5MDMzNDMy
LCAKICAgICAgICAiZGVsdGFfbWluIjogIjEuNjkyNXggc2xvd2VyIiwgCiAgICAgICAgImRlbHRh
X2F2ZyI6ICIxLjc2Mzl4IGZhc3RlciIsIAogICAgICAgICJzdGRfY2hhbmdlZCI6IDAuMjA1MzQ3
ODMyNjE0MzA3MiwgCiAgICAgICAgIm1pbl9jaGFuZ2VkIjogMC42NjM1MDYwMzEwMzYsIAogICAg
ICAgICJkZWx0YV9zdGQiOiAiMy43NjEzeCBzbWFsbGVyIiwgCiAgICAgICAgInN0ZF9iYXNlIjog
MC43NzIzNjYyMTYxNzcxMzgsIAogICAgICAgICJ0X21zZyI6ICJTaWduaWZpY2FudCAodD0xMC45
NTQ5NzYsIGE9MC45NSlcbiIKICAgICAgfQogICAgXSwgCiAgICBbCiAgICAgICJzcWxhbGNoZW15
X2ltcGVyYXRpdmUiLCAKICAgICAgIkNvbXBhcmlzb25SZXN1bHQiLCAKICAgICAgewogICAgICAg
ICJhdmdfYmFzZSI6IDAuMTY0MzYyMTQwNjU1NTI0MSwgCiAgICAgICAgInRpbWVsaW5lX2xpbmsi
OiBudWxsLCAKICAgICAgICAiYXZnX2NoYW5nZWQiOiAwLjE3NzEzMzI5MzE1MTg2MTc3LCAKICAg
ICAgICAibWluX2Jhc2UiOiAwLjE1NTA0Mjg4NjczNCwgCiAgICAgICAgImRlbHRhX21pbiI6ICIy
LjQ1MDl4IGZhc3RlciIsIAogICAgICAgICJkZWx0YV9hdmciOiAiMS4wNzc3eCBzbG93ZXIiLCAK
ICAgICAgICAic3RkX2NoYW5nZWQiOiAwLjIxMjkzODI1OTgxOTk0MTU1LCAKICAgICAgICAibWlu
X2NoYW5nZWQiOiAwLjA2MzI2MDA3ODQzMDIsIAogICAgICAgICJkZWx0YV9zdGQiOiAiMjkuMTk1
NHggbGFyZ2VyIiwgCiAgICAgICAgInN0ZF9iYXNlIjogMC4wMDcyOTM1NjA2NTQ2NjA1OTMsIAog
ICAgICAgICJ0X21zZyI6ICJOb3Qgc2lnbmlmaWNhbnRcbiIKICAgICAgfQogICAgXSwgCiAgICBb
CiAgICAgICJzcWxpdGVzeW50aCIsIAogICAgICAiQ29tcGFyaXNvblJlc3VsdCIsIAogICAgICB7
CiAgICAgICAgImF2Z19iYXNlIjogMjIuNDMwMDUzNzgyNDY5OTk3LCAKICAgICAgICAidGltZWxp
bmVfbGluayI6IG51bGwsIAogICAgICAgICJhdmdfY2hhbmdlZCI6IDI0LjU1NDg1NjA4NTc3LCAK
ICAgICAgICAibWluX2Jhc2UiOiAyMS43NzM0MTcyMzQ0LCAKICAgICAgICAiZGVsdGFfbWluIjog
IjEuMTE4N3ggc2xvd2VyIiwgCiAgICAgICAgImRlbHRhX2F2ZyI6ICIxLjA5NDd4IHNsb3dlciIs
IAogICAgICAgICJzdGRfY2hhbmdlZCI6IDAuMTUxMTkyNjUzMzc3ODYyMTcsIAogICAgICAgICJt
aW5fY2hhbmdlZCI6IDI0LjM1NzM4MDE1MTcsIAogICAgICAgICJkZWx0YV9zdGQiOiAiMS42MTAz
eCBzbWFsbGVyIiwgCiAgICAgICAgInN0ZF9iYXNlIjogMC4yNDM0NTkwODIyOTQ4MTg1MiwgCiAg
ICAgICAgInRfbXNnIjogIlNpZ25pZmljYW50ICh0PS0yMy40NDU3MTgsIGE9MC45NSlcbiIKICAg
ICAgfQogICAgXSwgCiAgICBbCiAgICAgICJzeW1weV9leHBhbmQiLCAKICAgICAgIkNvbXBhcmlz
b25SZXN1bHQiLCAKICAgICAgewogICAgICAgICJhdmdfYmFzZSI6IDI2LjE0MjIxNjIwNTYsIAog
ICAgICAgICJ0aW1lbGluZV9saW5rIjogbnVsbCwgCiAgICAgICAgImF2Z19jaGFuZ2VkIjogOS4y
MTI5Mjk5NjQwNzIsIAogICAgICAgICJtaW5fYmFzZSI6IDI1Ljc0NDk3Mjk0NDMsIAogICAgICAg
ICJkZWx0YV9taW4iOiAiNC4yNTkxeCBmYXN0ZXIiLCAKICAgICAgICAiZGVsdGFfYXZnIjogIjIu
ODM3NnggZmFzdGVyIiwgCiAgICAgICAgInN0ZF9jaGFuZ2VkIjogNS43Nzc0ODQ1NzQ1MzkzODYs
IAogICAgICAgICJtaW5fY2hhbmdlZCI6IDYuMDQ0NjQ5MTI0MTUsIAogICAgICAgICJkZWx0YV9z
dGQiOiAiMTYuODc0OHggbGFyZ2VyIiwgCiAgICAgICAgInN0ZF9iYXNlIjogMC4zNDIzNzM5MTg3
MjQyNzc4NiwgCiAgICAgICAgInRfbXNnIjogIlNpZ25pZmljYW50ICh0PTYuNTQwNjkxLCBhPTAu
OTUpXG4iCiAgICAgIH0KICAgIF0sIAogICAgWwogICAgICAic3ltcHlfaW50ZWdyYXRlIiwgCiAg
ICAgICJDb21wYXJpc29uUmVzdWx0IiwgCiAgICAgIHsKICAgICAgICAiYXZnX2Jhc2UiOiAxLjE0
NTE2MTI0NzI1Mzk5OTgsIAogICAgICAgICJ0aW1lbGluZV9saW5rIjogbnVsbCwgCiAgICAgICAg
ImF2Z19jaGFuZ2VkIjogMi42Njk4NTA4MjYyNjQsIAogICAgICAgICJtaW5fYmFzZSI6IDAuODAx
NDM4MDkzMTg1LCAKICAgICAgICAiZGVsdGFfbWluIjogIjIuMDczMXggc2xvd2VyIiwgCiAgICAg
ICAgImRlbHRhX2F2ZyI6ICIyLjMzMTR4IHNsb3dlciIsIAogICAgICAgICJzdGRfY2hhbmdlZCI6
IDEuNTU0ODI1NDQyNTgyNDk1LCAKICAgICAgICAibWluX2NoYW5nZWQiOiAxLjY2MTQ0MDEzNDA1
LCAKICAgICAgICAiZGVsdGFfc3RkIjogIjIuMTY1MHggbGFyZ2VyIiwgCiAgICAgICAgInN0ZF9i
YXNlIjogMC43MTgxNjIxOTMzNDk1ODUzLCAKICAgICAgICAidF9tc2ciOiAiTm90IHNpZ25pZmlj
YW50XG4iCiAgICAgIH0KICAgIF0sIAogICAgWwogICAgICAic3ltcHlfc3RyIiwgCiAgICAgICJD
b21wYXJpc29uUmVzdWx0IiwgCiAgICAgIHsKICAgICAgICAiYXZnX2Jhc2UiOiAxOC4xMzk3Njk0
NTg3NTk5OTYsIAogICAgICAgICJ0aW1lbGluZV9saW5rIjogbnVsbCwgCiAgICAgICAgImF2Z19j
aGFuZ2VkIjogMTAuNTI5MjEzMTkwMDc2LCAKICAgICAgICAibWluX2Jhc2UiOiAxNy42NjUyMDkw
NTQ5LCAKICAgICAgICAiZGVsdGFfbWluIjogIjMuMDQzNnggZmFzdGVyIiwgCiAgICAgICAgImRl
bHRhX2F2ZyI6ICIxLjcyMjh4IGZhc3RlciIsIAogICAgICAgICJzdGRfY2hhbmdlZCI6IDcuNzIw
OTQ0MzQ4NDIzNzM0LCAKICAgICAgICAibWluX2NoYW5nZWQiOiA1LjgwNDA3MzA5NTMyLCAKICAg
ICAgICAiZGVsdGFfc3RkIjogIjE1LjA3NTl4IGxhcmdlciIsIAogICAgICAgICJzdGRfYmFzZSI6
IDAuNTEyMTM4OTk5NTM1OTY0MSwgCiAgICAgICAgInRfbXNnIjogIk5vdCBzaWduaWZpY2FudFxu
IgogICAgICB9CiAgICBdLCAKICAgIFsKICAgICAgInN5bXB5X3N1bSIsIAogICAgICAiQ29tcGFy
aXNvblJlc3VsdCIsIAogICAgICB7CiAgICAgICAgImF2Z19iYXNlIjogMTAuMDM5OTQ2NDEzMDQ2
LCAKICAgICAgICAidGltZWxpbmVfbGluayI6IG51bGwsIAogICAgICAgICJhdmdfY2hhbmdlZCI6
IDEwLjIzMTIzNDM1OTczNiwgCiAgICAgICAgIm1pbl9iYXNlIjogNy45OTc1OTY5NzkxNCwgCiAg
ICAgICAgImRlbHRhX21pbiI6ICIxLjg4MDF4IGZhc3RlciIsIAogICAgICAgICJkZWx0YV9hdmci
OiAiMS4wMTkxeCBzbG93ZXIiLCAKICAgICAgICAic3RkX2NoYW5nZWQiOiA5LjY3NzgzODAzMDMz
Mzc0MiwgCiAgICAgICAgIm1pbl9jaGFuZ2VkIjogNC4yNTM4MTE4MzYyNCwgCiAgICAgICAgImRl
bHRhX3N0ZCI6ICIyLjQyNDd4IGxhcmdlciIsIAogICAgICAgICJzdGRfYmFzZSI6IDMuOTkxMzE4
NTI1MjIyMjEsIAogICAgICAgICJ0X21zZyI6ICJOb3Qgc2lnbmlmaWNhbnRcbiIKICAgICAgfQog
ICAgXSwgCiAgICBbCiAgICAgICJ0ZWxjbyIsIAogICAgICAiQ29tcGFyaXNvblJlc3VsdCIsIAog
ICAgICB7CiAgICAgICAgImF2Z19iYXNlIjogNy42Mjg5Nzg1ODAwMDAwMDIsIAogICAgICAgICJ0
aW1lbGluZV9saW5rIjogbnVsbCwgCiAgICAgICAgImF2Z19jaGFuZ2VkIjogMC40MzI1NDE3NCwg
CiAgICAgICAgIm1pbl9iYXNlIjogNy41MDgxNTksIAogICAgICAgICJkZWx0YV9taW4iOiAiMTku
NDExOXggZmFzdGVyIiwgCiAgICAgICAgImRlbHRhX2F2ZyI6ICIxNy42Mzc2eCBmYXN0ZXIiLCAK
ICAgICAgICAic3RkX2NoYW5nZWQiOiAwLjA3NTQxNzk2NTc0MTg5MjczLCAKICAgICAgICAibWlu
X2NoYW5nZWQiOiAwLjM4Njc4MiwgCiAgICAgICAgImRlbHRhX3N0ZCI6ICIxLjA5OTN4IHNtYWxs
ZXIiLCAKICAgICAgICAic3RkX2Jhc2UiOiAwLjA4MjkwODAwMTg4NTMxODE3LCAKICAgICAgICAi
dF9tc2ciOiAiU2lnbmlmaWNhbnQgKHQ9NDU0LjAyNTE3MSwgYT0wLjk1KVxuIgogICAgICB9CiAg
ICBdLCAKICAgIFsKICAgICAgInRyYW5zMl9hbm5vdGF0ZSIsIAogICAgICAiUmF3UmVzdWx0Iiwg
CiAgICAgIHsKICAgICAgICAiY2hhbmdlZF90aW1lcyI6IG51bGwsIAogICAgICAgICJiYXNlX3Rp
bWVzIjogWwogICAgICAgICAgODY0NS4zCiAgICAgICAgXQogICAgICB9CiAgICBdLCAKICAgIFsK
ICAgICAgInRyYW5zMl9ydHlwZSIsIAogICAgICAiUmF3UmVzdWx0IiwgCiAgICAgIHsKICAgICAg
ICAiY2hhbmdlZF90aW1lcyI6IG51bGwsIAogICAgICAgICJiYXNlX3RpbWVzIjogWwogICAgICAg
ICAgMjEyNTUuNQogICAgICAgIF0KICAgICAgfQogICAgXSwgCiAgICBbCiAgICAgICJ0cmFuczJf
YmFja2VuZG9wdCIsIAogICAgICAiUmF3UmVzdWx0IiwgCiAgICAgIHsKICAgICAgICAiY2hhbmdl
ZF90aW1lcyI6IG51bGwsIAogICAgICAgICJiYXNlX3RpbWVzIjogWwogICAgICAgICAgMjU0NS40
CiAgICAgICAgXQogICAgICB9CiAgICBdLCAKICAgIFsKICAgICAgInRyYW5zMl9kYXRhYmFzZSIs
IAogICAgICAiUmF3UmVzdWx0IiwgCiAgICAgIHsKICAgICAgICAiY2hhbmdlZF90aW1lcyI6IG51
bGwsIAogICAgICAgICJiYXNlX3RpbWVzIjogWwogICAgICAgICAgMjc5My4xCiAgICAgICAgXQog
ICAgICB9CiAgICBdLCAKICAgIFsKICAgICAgInRyYW5zMl9zb3VyY2UiLCAKICAgICAgIlJhd1Jl
c3VsdCIsIAogICAgICB7CiAgICAgICAgImNoYW5nZWRfdGltZXMiOiBudWxsLCAKICAgICAgICAi
YmFzZV90aW1lcyI6IFsKICAgICAgICAgIDU0MzYuOAogICAgICAgIF0KICAgICAgfQogICAgXSwg
CiAgICBbCiAgICAgICJ0d2lzdGVkX2l0ZXJhdGlvbiIsIAogICAgICAiQ29tcGFyaXNvblJlc3Vs
dCIsIAogICAgICB7CiAgICAgICAgImF2Z19iYXNlIjogMC45NTA5NDA5MjIwODEyMjc3LCAKICAg
ICAgICAidGltZWxpbmVfbGluayI6IG51bGwsIAogICAgICAgICJhdmdfY2hhbmdlZCI6IDAuMTEy
NDg3MzY1NDYyMjA0ODEsIAogICAgICAgICJtaW5fYmFzZSI6IDAuOTAzMDk3NjI0ODUzMjQ2Niwg
CiAgICAgICAgImRlbHRhX21pbiI6ICI4LjIwOTR4IGZhc3RlciIsIAogICAgICAgICJkZWx0YV9h
dmciOiAiOC40NTM4eCBmYXN0ZXIiLCAKICAgICAgICAic3RkX2NoYW5nZWQiOiAwLjAwNDM1OTU3
NTI1MTQwNTY1NywgCiAgICAgICAgIm1pbl9jaGFuZ2VkIjogMC4xMTAwMDczNzA0OTM4MjMwOSwg
CiAgICAgICAgImRlbHRhX3N0ZCI6ICI1LjAxMzd4IHNtYWxsZXIiLCAKICAgICAgICAic3RkX2Jh
c2UiOiAwLjAyMTg1NzQ3MzUwNzAwNjYwMiwgCiAgICAgICAgInRfbXNnIjogIlNpZ25pZmljYW50
ICh0PTI2Ni4wMDY4ODEsIGE9MC45NSlcbiIKICAgICAgfQogICAgXSwgCiAgICBbCiAgICAgICJ0
d2lzdGVkX25hbWVzIiwgCiAgICAgICJDb21wYXJpc29uUmVzdWx0IiwgCiAgICAgIHsKICAgICAg
ICAiYXZnX2Jhc2UiOiAwLjA2NDk0NTE5NDAxMzkwNDc0LCAKICAgICAgICAidGltZWxpbmVfbGlu
ayI6IG51bGwsIAogICAgICAgICJhdmdfY2hhbmdlZCI6IDAuMDI0NTQ3NzY5OTMyNTk4NzQ1LCAK
ICAgICAgICAibWluX2Jhc2UiOiAwLjA2NDEwMjU2NDEwMjU2NDEsIAogICAgICAgICJkZWx0YV9t
aW4iOiAiNC4wNjQxeCBmYXN0ZXIiLCAKICAgICAgICAiZGVsdGFfYXZnIjogIjIuNjQ1N3ggZmFz
dGVyIiwgCiAgICAgICAgInN0ZF9jaGFuZ2VkIjogMC4wMTIzMTY0NTQzMzk5MDE1MjYsIAogICAg
ICAgICJtaW5fY2hhbmdlZCI6IDAuMDE1NzcyODcwNjYyNDYwNTY3LCAKICAgICAgICAiZGVsdGFf
c3RkIjogIjM2Ljc3NDJ4IGxhcmdlciIsIAogICAgICAgICJzdGRfYmFzZSI6IDAuMDAwMzM0OTIx
Mjc1MDk5OTg2NzUsIAogICAgICAgICJ0X21zZyI6ICJTaWduaWZpY2FudCAodD0yMy4xODQyMTks
IGE9MC45NSlcbiIKICAgICAgfQogICAgXSwgCiAgICBbCiAgICAgICJ0d2lzdGVkX3BiIiwgCiAg
ICAgICJDb21wYXJpc29uUmVzdWx0IiwgCiAgICAgIHsKICAgICAgICAiYXZnX2Jhc2UiOiAwLjQ3
NjkyMzA3NjkyMzA3NjM0LCAKICAgICAgICAidGltZWxpbmVfbGluayI6IG51bGwsIAogICAgICAg
ICJhdmdfY2hhbmdlZCI6IDAuMTgwNDIxMDU4NTc1NDYyMjgsIAogICAgICAgICJtaW5fYmFzZSI6
IDAuNDc2MTkwNDc2MTkwNDc2MTYsIAogICAgICAgICJkZWx0YV9taW4iOiAiMy4xNDI5eCBmYXN0
ZXIiLCAKICAgICAgICAiZGVsdGFfYXZnIjogIjIuNjQzNHggZmFzdGVyIiwgCiAgICAgICAgInN0
ZF9jaGFuZ2VkIjogMC4wMzM5NjExNjM4MTUwMjM5MiwgCiAgICAgICAgIm1pbl9jaGFuZ2VkIjog
MC4xNTE1MTUxNTE1MTUxNTE1MiwgCiAgICAgICAgImRlbHRhX3N0ZCI6ICI2LjU1NTl4IGxhcmdl
ciIsIAogICAgICAgICJzdGRfYmFzZSI6IDAuMDA1MTgwMjY5NDU5MjQyMTA0LCAKICAgICAgICAi
dF9tc2ciOiAiU2lnbmlmaWNhbnQgKHQ9NjEuMDI4OTEwLCBhPTAuOTUpXG4iCiAgICAgIH0KICAg
IF0sIAogICAgWwogICAgICAidHdpc3RlZF90Y3AiLCAKICAgICAgIkNvbXBhcmlzb25SZXN1bHQi
LCAKICAgICAgewogICAgICAgICJhdmdfYmFzZSI6IDQuMDkwNzQ5MzgyMDIyMTIzLCAKICAgICAg
ICAidGltZWxpbmVfbGluayI6IG51bGwsIAogICAgICAgICJhdmdfY2hhbmdlZCI6IDIuMDA1NDk0
OTIwNjU1OTM4LCAKICAgICAgICAibWluX2Jhc2UiOiAzLjkwMDA2MDkzODQ1MjE2MzQsIAogICAg
ICAgICJkZWx0YV9taW4iOiAiMi4zMTE0eCBmYXN0ZXIiLCAKICAgICAgICAiZGVsdGFfYXZnIjog
IjIuMDM5OHggZmFzdGVyIiwgCiAgICAgICAgInN0ZF9jaGFuZ2VkIjogMC4xMTk1NDUyNjE1NjEz
MTg1MywgCiAgICAgICAgIm1pbl9jaGFuZ2VkIjogMS42ODczMTg3NDUwNTY2ODMzLCAKICAgICAg
ICAiZGVsdGFfc3RkIjogIjEuNDE4NXggc21hbGxlciIsIAogICAgICAgICJzdGRfYmFzZSI6IDAu
MTY5NTc3ODYwNjk5NTA3NywgCiAgICAgICAgInRfbXNnIjogIlNpZ25pZmljYW50ICh0PTcxLjA2
NzE2NCwgYT0wLjk1KVxuIgogICAgICB9CiAgICBdCiAgXSwgCiAgImJyYW5jaCI6ICJkZWZhdWx0
IiwgCiAgInJldmlzaW9uIjogbnVsbAp9
--000000000000530ff8061f74d7fc
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
pypy-dev mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3/lists/pypy-dev.python.org/
Member address: [email protected]

--000000000000530ff8061f74d7fc--