Re: A possible docutils' issue with certain IETF mailarchive URIs ?

Viktor Ransmayr <[email protected]> Mon, 30 Jun 2025 14:12:01 +0200
Newsgroups gmane.text.docutils.user
Message-ID <CAAeSrGKbMnfCEu2s2HLMNN3LkXHd83c-v3VmY1xGXH7n-EY3WQ@mail.gmail.com>
--00000000000020384e0638c8f028
Content-Type: multipart/alternative; boundary="00000000000020384b0638c8f026"

--00000000000020384b0638c8f026
Content-Type: text/plain; charset="UTF-8"

Hello Docutils Community,

Am Mo., 30. Juni 2025 um 13:44 Uhr schrieb Viktor Ransmayr <
[email protected]>:

> Hello Docutils Community,
>
> I use 'docutils' to organize my notes as HTML files - and - store links
> for later review.
>
> I noted issues with certain IETF mailarchive URIs already a while ago -
> but - only now took the time to follow up & create a simple test file (see
> attachment) demonstrating the issue.
>
> This file contains two IETF mailarchive URI instances. - The first one is
> processed without an issue - and - the second one is processed with an
> error. - That is, when I create the HTML file I receive the following
> 'Docutils System Message':
>
> ###
>
> [user@fedora-python-study-vm vransmayr]$
> [user@fedora-python-study-vm vransmayr]$ docutils test-IETF-URI-issue.rst
> test-IETF-URI-issue.html
> test-IETF-URI-issue.rst:18: (ERROR/3) Unknown target name: "k4-l4mk7qa".
> [user@fedora-python-study-vm vransmayr]$
>
> ###
>
> For me it is not clear, if the second mailarchive URI really does
> 'violate' the reStructuredText Markup Specification - or - if it is a
> 'docutils' issue.
>
> Looking forward to your feedback !
>
> With kind regards,
>
> Viktor
>
> PS: This issue occurs in docutils version 0.21.2 as well as 0.22rc5 ...
>

For easier access: Here's the created HTML file as well.

With kind regards,

Viktor

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

<div dir=3D"ltr"><div dir=3D"ltr"></div><div>Hello Docutils Community,</div=
><div><br></div><div class=3D"gmail_quote gmail_quote_container"><div dir=
=3D"ltr" class=3D"gmail_attr">Am Mo., 30. Juni 2025 um 13:44=C2=A0Uhr schri=
eb Viktor Ransmayr &lt;<a href=3D"mailto:[email protected]">viktor.=
[email protected]</a>&gt;:<br></div><blockquote class=3D"gmail_quote" styl=
e=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);paddin=
g-left:1ex"><div dir=3D"ltr"><div>Hello Docutils Community,</div><div><br><=
/div><div>I use &#39;docutils&#39; to organize my notes as HTML files - and=
 - store links for later review.</div><div><br></div><div>I noted issues wi=
th certain IETF mailarchive URIs already a while ago - but - only now took =
the time to follow up &amp; create a simple test file (see attachment) demo=
nstrating the issue.</div><div><br></div><div>This file contains two IETF m=
ailarchive URI instances. - The first one is processed without an issue - a=
nd - the second one is processed with an error. - That is, when I create th=
e HTML file I receive the following &#39;Docutils System Message&#39;:=C2=
=A0</div><div><br></div><div>###</div><div><br></div><div><span style=3D"fo=
nt-family:monospace">[user@fedora-python-study-vm vransmayr]$ <br>[user@fed=
ora-python-study-vm vransmayr]$ docutils test-IETF-URI-issue.rst test-IETF-=
URI-issue.html<br>test-IETF-URI-issue.rst:18: (ERROR/3) Unknown target name=
: &quot;k4-l4mk7qa&quot;.<br>[user@fedora-python-study-vm vransmayr]$=C2=A0=
<br></span></div><div><br></div><div>###</div><div><br></div><div>For me it=
 is not clear, if the second mailarchive URI really does &#39;violate&#39; =
the=C2=A0reStructuredText Markup Specification - or - if it is a &#39;docut=
ils&#39; issue.</div><div><br></div><div>Looking forward to your feedback !=
</div><div><br></div><div>With kind regards,</div><div><br></div><div>Vikto=
r</div><div><br></div><div>PS: This issue occurs in docutils version 0.21.2=
 as well as 0.22rc5 ...</div></div></blockquote><div><br></div><div>For eas=
ier access: Here&#39;s the created HTML file as well.</div><div><br></div><=
div>With kind regards,</div><div><br></div><div>Viktor</div></div></div>

--00000000000020384b0638c8f026--
--00000000000020384e0638c8f028
Content-Type: text/html; charset="UTF-8"; name="test-IETF-URI-issue.html"
Content-Disposition: attachment; filename="test-IETF-URI-issue.html"
Content-Transfer-Encoding: base64
Content-ID: <f_mcj21w7f0>
X-Attachment-Id: f_mcj21w7f0

PCFET0NUWVBFIGh0bWw+CjxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1s
IiB4bWw6bGFuZz0iZW4iIGxhbmc9ImVuIj4KPGhlYWQ+CjxtZXRhIGNoYXJzZXQ9InV0Zi04IiAv
Pgo8bWV0YSBuYW1lPSJnZW5lcmF0b3IiIGNvbnRlbnQ9IkRvY3V0aWxzIDAuMjJyYzU6IGh0dHBz
Oi8vZG9jdXRpbHMuc291cmNlZm9yZ2UuaW8vIiAvPgo8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29u
dGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEiIC8+Cjx0aXRsZT5UZXN0
IGluc3RhbmNlIGZvciBhbiBJRVRGIG1haWxhcmNoaXZlIFVSSSBpc3N1ZSBpbiAnZG9jdXRpbHMn
PzwvdGl0bGU+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+CgovKiBNaW5pbWFsIHN0eWxlIHNoZWV0
IGZvciB0aGUgSFRNTCBvdXRwdXQgb2YgRG9jdXRpbHMuICAgICAgICAgICAgICAgICAgICAqLwov
KiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqLwovKiA6QXV0aG9yOiBHw7xudGVyIE1pbGRlLCBiYXNlZCBvbiBo
dG1sNGNzczEuY3NzIGJ5IERhdmlkIEdvb2RnZXIgICAgICAgICAgKi8KLyogOklkOiAkSWQ6IG1p
bmltYWwuY3NzIDEwMDE4IDIwMjUtMDMtMDYgMTY6MTk6MTVaIG1pbGRlICQgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwovKiA6
Q29weXJpZ2h0OiDCqSAyMDE1LCAyMDIxIEfDvG50ZXIgTWlsZGUuICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCi8qIDpMaWNlbnNlOiBSZWxlYXNlZCB1bmRlciB0aGUgdGVybXMg
b2YgdGhlIGAyLUNsYXVzZSBCU0QgbGljZW5zZWBfLCAgICAgICovCi8qICAgIGluIHNob3J0OiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICovCi8qICAgIENvcHlpbmcgYW5kIGRpc3RyaWJ1dGlvbiBv
ZiB0aGlzIGZpbGUsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sICovCi8qICAgIGFyZSBw
ZXJtaXR0ZWQgaW4gYW55IG1lZGl1bSB3aXRob3V0IHJveWFsdHkgcHJvdmlkZWQgdGhlIGNvcHly
aWdodCAgICovCi8qICAgIG5vdGljZSBhbmQgdGhpcyBub3RpY2UgYXJlIHByZXNlcnZlZC4gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi8qICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi8qICAg
IFRoaXMgZmlsZSBpcyBvZmZlcmVkIGFzLWlzLCB3aXRob3V0IGFueSB3YXJyYW50eS4gICAgICAg
ICAgICAgICAgICAgICovCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi8qIC4uIF8yLUNsYXVzZSBCU0Qg
bGljZW5zZTogaHR0cDovL3d3dy5zcGR4Lm9yZy9saWNlbnNlcy9CU0QtMi1DbGF1c2UgICAgICov
CgovKiBUaGlzIENTUzMgc3R5bGVzaGVldCBkZWZpbmVzIHJ1bGVzIGZvciBEb2N1dGlscyBlbGVt
ZW50cyB3aXRob3V0ICAgICAgICAqLwovKiBIVE1MIGVxdWl2YWxlbnQuIEl0IGlzIHJlcXVpcmVk
IHRvIG1ha2UgdGhlIGRvY3VtZW50IHNlbWFudGljcyB2aXNpYmxlLiAqLwovKiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLwovKiAuLiBfdmFsaWRhdGVzOiBodHRwOi8vamlnc2F3LnczLm9yZy9jc3MtdmFsaWRh
dG9yL3ZhbGlkYXRvciRsaW5rICAgICAgICAqLwoKLyogdGl0bGVzICovCnAudG9waWMtdGl0bGUs
CnAuYWRtb25pdGlvbi10aXRsZSwKcC5zeXN0ZW0tbWVzc2FnZS10aXRsZSB7CiAgZm9udC13ZWln
aHQ6IGJvbGQ7Cn0KcC5zaWRlYmFyLXRpdGxlLApwLnJ1YnJpYyB7CiAgZm9udC13ZWlnaHQ6IGJv
bGQ7CiAgZm9udC1zaXplOiBsYXJnZXI7Cn0KcC5ydWJyaWMgewogIGNvbG9yOiBtYXJvb247Cn0K
cC5zdWJ0aXRsZSwKcC5zZWN0aW9uLXN1YnRpdGxlLApwLnNpZGViYXItc3VidGl0bGUgewogIGZv
bnQtd2VpZ2h0OiBib2xkOwogIG1hcmdpbi10b3A6IC0wLjVlbTsKfQpoMSArIHAuc3VidGl0bGUg
ewogIGZvbnQtc2l6ZTogMS42ZW07Cn0KYS50b2MtYmFja3JlZiB7CiAgY29sb3I6IGluaGVyaXQ7
CiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwp9CgovKiBXYXJuaW5ncywgRXJyb3JzICovCi5zeXN0
ZW0tbWVzc2FnZXMgaDIsCi5zeXN0ZW0tbWVzc2FnZS10aXRsZSwKcHJlLnByb2JsZW1hdGljLApz
cGFuLnByb2JsZW1hdGljIHsKICBjb2xvcjogcmVkOwp9CgovKiBJbmxpbmUgTGl0ZXJhbHMgKi8K
LmRvY3V0aWxzLmxpdGVyYWwgewogIGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7CiAgd2hpdGUtc3Bh
Y2U6IHByZS13cmFwOwp9Ci8qIGRvIG5vdCB3cmFwIGF0IGh5cGhlbnMgYW5kIHNpbWlsYXI6ICov
Ci5saXRlcmFsID4gc3Bhbi5wcmUgeyB3aGl0ZS1zcGFjZTogbm93cmFwOyB9CgovKiBrZWVwIGxp
bmUtYnJlYWtzIChcbikgdmlzaWJsZSAqLwoucHJlLXdyYXAgeyB3aGl0ZS1zcGFjZTogcHJlLXdy
YXA7IH0KCi8qIExpc3RzICovCgovKiBjb21wYWN0IGFuZCBzaW1wbGUgbGlzdHM6IG5vIG1hcmdp
biBiZXR3ZWVuIGl0ZW1zICovCi5zaW1wbGUgIGxpLCAuc2ltcGxlICB1bCwgLnNpbXBsZSAgb2ws
IC5zaW1wbGUgID4gbGkgcCwKLmNvbXBhY3QgbGksIC5jb21wYWN0IHVsLCAuY29tcGFjdCBvbCwg
LmNvbXBhY3QgPiBsaSBwLApkbC5zaW1wbGUgID4gZGQsIGRsLmNvbXBhY3QgPiBkZCwgZGwuZG9j
aW5mbyA+IGRkIHsKICBtYXJnaW4tdG9wOiAwOwogIG1hcmdpbi1ib3R0b206IDA7Cn0KLyogTmVz
dGVkIFBhcmFncmFwaHMgKi8KcDpmaXJzdC1jaGlsZCB7IG1hcmdpbi10b3A6IDA7IH0KcDpsYXN0
LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfQpkZXRhaWxzID4gcDpsYXN0LWNoaWxkIHsgbWFy
Z2luLWJvdHRvbTogMWVtOyB9CgovKiBUYWJsZSBvZiBDb250ZW50cyAqLwouY29udGVudHMgdWwu
YXV0by10b2MgeyAvKiBzZWN0aW9uIG51bWJlcnMgcHJlc2VudCAqLwogIGxpc3Qtc3R5bGUtdHlw
ZTogbm9uZTsKfQoKLyogRW51bWVyYXRlZCBMaXN0cyAqLwpvbC5hcmFiaWMgICAgIHsgbGlzdC1z
dHlsZTogZGVjaW1hbCB9Cm9sLmxvd2VyYWxwaGEgeyBsaXN0LXN0eWxlOiBsb3dlci1hbHBoYSB9
Cm9sLnVwcGVyYWxwaGEgeyBsaXN0LXN0eWxlOiB1cHBlci1hbHBoYSB9Cm9sLmxvd2Vycm9tYW4g
eyBsaXN0LXN0eWxlOiBsb3dlci1yb21hbiB9Cm9sLnVwcGVycm9tYW4geyBsaXN0LXN0eWxlOiB1
cHBlci1yb21hbiB9CgovKiBEZWZpbml0aW9uIExpc3RzIGFuZCBEZXJpdmF0aXZlcyAqLwpkdCAu
Y2xhc3NpZmllciB7IGZvbnQtc3R5bGU6IGl0YWxpYyB9CmR0IC5jbGFzc2lmaWVyOmJlZm9yZSB7
CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIG1hcmdpbjogMC41ZW07CiAgY29udGVudDogIjoiOwp9
Ci8qIEZpZWxkIExpc3RzIGFuZCBzaW1pbGFyICovCi8qIGJvbGQgZmllbGQgbmFtZSwgY29udGVu
dCBzdGFydHMgb24gdGhlIHNhbWUgbGluZSAqLwpkbC5maWVsZC1saXN0LApkbC5vcHRpb24tbGlz
dCwKZGwuZG9jaW5mbyB7CiAgZGlzcGxheTogZmxvdy1yb290Owp9CmRsLmZpZWxkLWxpc3QgPiBk
dCwKZGwub3B0aW9uLWxpc3QgPiBkdCwKZGwuZG9jaW5mbyA+IGR0IHsKICBmb250LXdlaWdodDog
Ym9sZDsKICBjbGVhcjogbGVmdDsKICBmbG9hdDogbGVmdDsKICBtYXJnaW46IDA7CiAgcGFkZGlu
ZzogMDsKICBwYWRkaW5nLXJpZ2h0OiAwLjI1ZW07Cn0KLyogT2Zmc2V0IGZvciBmaWVsZCBjb250
ZW50IChjb3JyZXNwb25kcyB0byB0aGUgLS1maWVsZC1uYW1lLWxpbWl0IG9wdGlvbikgKi8KZGwu
ZmllbGQtbGlzdCA+IGRkLApkbC5vcHRpb24tbGlzdCA+IGRkLApkbC5kb2NpbmZvID4gZGQgewog
IG1hcmdpbi1sZWZ0OiAgOWVtOyAvKiBjYS4gMTQgY2hhcnMgaW4gdGhlIHRlc3QgZXhhbXBsZXMs
IGZpdCBhbGwgRG9jaW5mbyBmaWVsZHMgKi8KfQovKiBzdGFydCBuZXN0ZWQgbGlzdHMgb24gbmV3
IGxpbmUgKi8KZGQgPiBkbDpmaXJzdC1jaGlsZCwKZGQgPiB1bDpmaXJzdC1jaGlsZCwKZGQgPiBv
bDpmaXJzdC1jaGlsZCB7CiAgY2xlYXI6IGxlZnQ7Cn0KLyogc3RhcnQgZmllbGQtYm9keSBvbiBh
IG5ldyBsaW5lIGFmdGVyIGxvbmcgZmllbGQgbmFtZXMgKi8KZGwuZmllbGQtbGlzdCA+IGRkID4g
KjpmaXJzdC1jaGlsZCwKZGwub3B0aW9uLWxpc3QgPiBkZCA+ICo6Zmlyc3QtY2hpbGQKewogIGRp
c3BsYXk6IGlubGluZS1ibG9jazsKICB3aWR0aDogMTAwJTsKICBtYXJnaW46IDA7Cn0KCi8qIEJp
Ymxpb2dyYXBoaWMgRmllbGRzIChkb2NpbmZvKSAqLwpkbC5kb2NpbmZvIHByZS5hZGRyZXNzIHsK
ICBmb250OiBpbmhlcml0OwogIG1hcmdpbjogMDsKfQpkbC5kb2NpbmZvID4gZGQuYXV0aG9ycyA+
IHAgeyBtYXJnaW46IDA7IH0KCi8qIE9wdGlvbiBMaXN0cyAqLwpkbC5vcHRpb24tbGlzdCA+IGR0
IHsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfQpzcGFuLm9wdGlvbiB7IHdoaXRlLXNwYWNlOiBub3dy
YXA7IH0KCi8qIEZvb3Rub3RlcyBhbmQgQ2l0YXRpb25zICAqLwoKLmZvb3Rub3RlLCAuY2l0YXRp
b24geyBtYXJnaW46IDFlbSAwOyB9IC8qIGRlZmF1bHQgcGFyYWdyYXBoIHNraXAgKEZpcmVmb3gp
ICovCi8qIGhhbmdpbmcgaW5kZW50ICovCi5jaXRhdGlvbiB7IHBhZGRpbmctbGVmdDogMmVtOyB9
Ci5mb290bm90ZSB7IHBhZGRpbmctbGVmdDogMS43ZW07IH0KLmZvb3Rub3RlLnN1cGVyc2NyaXB0
IHsgcGFkZGluZy1sZWZ0OiAxLjBlbTsgfQouY2l0YXRpb24gPiAubGFiZWwgeyBtYXJnaW4tbGVm
dDogLTJlbTsgfQouZm9vdG5vdGUgPiAubGFiZWwgeyBtYXJnaW4tbGVmdDogLTEuN2VtOyB9Ci5m
b290bm90ZS5zdXBlcnNjcmlwdCA+IC5sYWJlbCB7IG1hcmdpbi1sZWZ0OiAtMS4wZW07IH0KCi5m
b290bm90ZSA+IC5sYWJlbCArICosCi5jaXRhdGlvbiA+IC5sYWJlbCArICogewogIGRpc3BsYXk6
IGlubGluZS1ibG9jazsKICBtYXJnaW4tdG9wOiAwOwogIHZlcnRpY2FsLWFsaWduOiB0b3A7Cn0K
LmZvb3Rub3RlID4gLmJhY2tyZWZzICsgKiwKLmNpdGF0aW9uID4gLmJhY2tyZWZzICsgKiB7CiAg
bWFyZ2luLXRvcDogMDsKfQouZm9vdG5vdGUgPiAubGFiZWwgKyBwLCAuZm9vdG5vdGUgPiAuYmFj
a3JlZnMgKyBwLAouY2l0YXRpb24gPiAubGFiZWwgKyBwLCAuY2l0YXRpb24gPiAuYmFja3JlZnMg
KyBwIHsKICBkaXNwbGF5OiBpbmxpbmU7CiAgdmVydGljYWwtYWxpZ246IGluaGVyaXQ7Cn0KCi5i
YWNrcmVmcyB7IHVzZXItc2VsZWN0OiBub25lOyB9Ci5iYWNrcmVmcyA+IGEgeyBmb250LXN0eWxl
OiBpdGFsaWM7IH0KCi8qIHN1cGVyc2NyaXB0IGZvb3Rub3RlcyAqLwphW3JvbGU9ImRvYy1ub3Rl
cmVmIl0uc3VwZXJzY3JpcHQsCi5mb290bm90ZS5zdXBlcnNjcmlwdCA+IC5sYWJlbCwKLmZvb3Ru
b3RlLnN1cGVyc2NyaXB0ID4gLmJhY2tyZWZzIHsKICB2ZXJ0aWNhbC1hbGlnbjogc3VwZXI7CiAg
Zm9udC1zaXplOiBzbWFsbGVyOwogIGxpbmUtaGVpZ2h0OiAxOwp9CmFbcm9sZT0iZG9jLW5vdGVy
ZWYiXS5zdXBlcnNjcmlwdCA+IC5mbi1icmFja2V0LAouZm9vdG5vdGUuc3VwZXJzY3JpcHQgPiAu
bGFiZWwgPiAuZm4tYnJhY2tldCB7CiAgLyogaGlkZSBicmFja2V0cyBpbiBkaXNwbGF5IGJ1dCBs
ZWF2ZSBmb3IgY29weS9wYXN0ZSAqLwogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB3aWR0aDog
MDsKICBvdmVyZmxvdzogaGlkZGVuOwp9Cltyb2xlPSJkb2Mtbm90ZXJlZiJdLnN1cGVyc2NyaXB0
ICsgW3JvbGU9ImRvYy1ub3RlcmVmIl0uc3VwZXJzY3JpcHQgewogIHBhZGRpbmctbGVmdDogMC4x
NWVtOyAvKiBzZXBhcmF0ZSBjb25zZWN1dGl2ZSBmb290bm90ZSByZWZlcmVuY2VzICovCiAgLyog
VE9ETzogdW5mb3J0dW5hdGVseSwgIisiIGFsc28gc2VsZWN0cyB3aXRoIHRleHQgYmV0d2VlbiB0
aGUgcmVmZXJlbmNlcy4gKi8KfQoKLyogQWxpZ25tZW50ICovCi5hbGlnbi1sZWZ0ICAgewogIHRl
eHQtYWxpZ246IGxlZnQ7CiAgbWFyZ2luLXJpZ2h0OiBhdXRvOwp9Ci5hbGlnbi1jZW50ZXIgewog
IHRleHQtYWxpZ246IGNlbnRlcjsKICBtYXJnaW4tbGVmdDogYXV0bzsKICBtYXJnaW4tcmlnaHQ6
IGF1dG87Cn0KLmFsaWduLXJpZ2h0ICB7CiAgdGV4dC1hbGlnbjogcmlnaHQ7CiAgbWFyZ2luLWxl
ZnQ6IGF1dG87Cn0KLmFsaWduLXRvcCAgICB7IHZlcnRpY2FsLWFsaWduOiB0b3A7IH0KLmFsaWdu
LW1pZGRsZSB7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH0KLmFsaWduLWJvdHRvbSB7IHZlcnRp
Y2FsLWFsaWduOiBib3R0b207IH0KCi8qIHJlc2V0IGlubmVyIGFsaWdubWVudCBpbiBmaWd1cmVz
IGFuZCB0YWJsZXMgKi8KZmlndXJlLmFsaWduLWxlZnQsIGZpZ3VyZS5hbGlnbi1yaWdodCwKdGFi
bGUuYWxpZ24tbGVmdCwgdGFibGUuYWxpZ24tY2VudGVyLCB0YWJsZS5hbGlnbi1yaWdodCB7CiAg
dGV4dC1hbGlnbjogaW5oZXJpdDsKfQoKLyogVGV4dCBCbG9ja3MgKi8KLnRvcGljIHsgbWFyZ2lu
OiAxZW0gMmVtOyB9Ci5zaWRlYmFyLAouYWRtb25pdGlvbiwKLnN5c3RlbS1tZXNzYWdlIHsKICBt
YXJnaW46IDFlbSAyZW07CiAgYm9yZGVyOiB0aGluIHNvbGlkOwogIHBhZGRpbmc6IDAuNWVtIDFl
bTsKfQpkaXYubGluZS1ibG9jayB7IGRpc3BsYXk6IGJsb2NrOyB9CmRpdi5saW5lLWJsb2NrIGRp
di5saW5lLWJsb2NrLCBwcmUgeyBtYXJnaW4tbGVmdDogMmVtOyB9CgovKiBDb2RlIGxpbmUgbnVt
YmVyczogZG9uJ3QgY29weSB3aXRoIGRyYWctYW5kLWRyb3AgKi8KcHJlLmNvZGUgLmxuIHsgZGlz
cGxheTogbm9uZTsgfQpwcmUuY29kZSBjb2RlOmJlZm9yZSB7CiAgY29udGVudDogYXR0cihkYXRh
LWxpbmVubyk7CiAgZm9udC1zaXplOiBzbWFsbDsKICBjb2xvcjogZ3JheTsKfQoKLyogVGFibGVz
ICovCnRhYmxlIHsKICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOwp9CnRkLCB0aCB7CiAgYm9y
ZGVyOiB0aGluIHNvbGlkIHNpbHZlcjsKICBwYWRkaW5nOiAwIDFleDsKfQouYm9yZGVybGVzcyB0
ZCwgLmJvcmRlcmxlc3MgdGggewogIGJvcmRlcjogMDsKICBwYWRkaW5nOiAwOwogIHBhZGRpbmct
cmlnaHQ6IDAuNWVtIC8qIHNlcGFyYXRlIHRhYmxlIGNlbGxzICovCn0KCnRhYmxlID4gY2FwdGlv
biwgZmlnY2FwdGlvbiB7CiAgdGV4dC1hbGlnbjogbGVmdDsKICBtYXJnaW4tdG9wOiAwLjJlbTsK
ICBtYXJnaW4tYm90dG9tOiAwLjJlbTsKfQp0YWJsZS5jYXB0aW9uYmVsb3cgewogIGNhcHRpb24t
c2lkZTogYm90dG9tOwp9CgovKiBNYXRoTUwgKHNlZSAibWF0aC5jc3MiIGZvciAtLW1hdGgtb3V0
cHV0PUhUTUwpICovCm1hdGggLmJvbGRzeW1ib2wgeyBmb250LXdlaWdodDogYm9sZDsgfQptYXRo
LmJveGVkLCBtYXRoIC5ib3hlZCB7cGFkZGluZzogMC4yNWVtOyBib3JkZXI6IHRoaW4gc29saWQ7
IH0KLyogc3R5bGUgdGFibGUgc2ltaWxhciB0byBBTVMgImFsaWduIiBvciAiYWxpZ25lZCIgZW52
aXJvbm1lbnQ6ICovCm10YWJsZS5jYXNlcyA+IG10ciA+IG10ZCB7IHRleHQtYWxpZ246IGxlZnQ7
IH0KbXRhYmxlLmFtcy1hbGlnbiA+IG10ciA+IG10ZCB7IHBhZGRpbmctbGVmdDogMDsgcGFkZGlu
Zy1yaWdodDogMDsgfQptdGFibGUuYW1zLWFsaWduID4gbXRyID4gbXRkOm50aC1jaGlsZCgybikg
eyB0ZXh0LWFsaWduOiBsZWZ0OyB9Cm10YWJsZS5hbXMtYWxpZ24gPiBtdHIgPiBtdGQ6bnRoLWNo
aWxkKDJuKzEpIHsgdGV4dC1hbGlnbjogcmlnaHQ7IH0KbXRhYmxlLmFtcy1hbGlnbiA+IG10ciA+
IG10ZDpudGgtY2hpbGQoMm4rMykgeyBwYWRkaW5nLWxlZnQ6IDJlbTsgfQoubWF0aHNjciBtaSwg
bWkubWF0aHNjciB7CiAgZm9udC1mYW1pbHk6IFNUSVgsIFhJVFNNYXRoSmF4X1NjcmlwdCwgcnNm
czEwLAogICAgICAgICAgICAgICAiQXNhbmEgTWF0aCIsIEdhcmFtb25kLCBjdXJzaXZlOwp9Cgov
KiBEb2N1bWVudCBIZWFkZXIgYW5kIEZvb3RlciAqLwpoZWFkZXIgeyBib3JkZXItYm90dG9tOiAx
cHggc29saWQgYmxhY2s7IH0KZm9vdGVyIHsgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGJsYWNrOyB9
CgovKiBJbWFnZXMgYXJlIGJsb2NrLWxldmVsIGJ5IGRlZmF1bHQgaW4gRG9jdXRpbHMgKi8KLyog
TmV3IEhUTUw1IGJsb2NrIGVsZW1lbnRzOiBzZXQgZGlzcGxheSBmb3Igb2xkZXIgYnJvd3NlcnMg
Ki8KaW1nLCBzdmcsIGhlYWRlciwgZm9vdGVyLCBtYWluLCBhc2lkZSwgbmF2LCBzZWN0aW9uLCBm
aWd1cmUsIHZpZGVvLCBkZXRhaWxzIHsKICBkaXNwbGF5OiBibG9jazsKfQpzdmcgeyB3aWR0aDog
YXV0bzsgaGVpZ2h0OiBhdXRvOyB9ICAvKiBlbmFibGUgc2NhbGluZyBvZiBTVkcgaW1hZ2VzICov
Ci8qIGlubGluZSBpbWFnZXMgKi8KCnAgaW1nLCBwIHN2ZywgcCB2aWRlbywKaDEgaW1nLCBoMiBp
bWcsIGgzIGltZywgaDQgaW1nLCBoNSBpbWcsIGg2IGltZywKaDEgc3ZnLCBoMiBzdmcsIGgzIHN2
ZywgaDQgc3ZnLCBoNSBzdmcsIGg2IHN2ZyB7CiAgZGlzcGxheTogaW5saW5lOwp9Cgo8L3N0eWxl
Pgo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoKLyogQ1NTMzFfIHN0eWxlIHNoZWV0IGZvciB0aGUg
b3V0cHV0IG9mIERvY3V0aWxzIEhUTUwgd3JpdGVycy4gICAgICAgICAgICAgKi8KLyogUnVsZXMg
Zm9yIGVhc3kgcmVhZGluZyBhbmQgcHJlLWRlZmluZWQgc3R5bGUgdmFyaWFudHMuICAgICAgICAg
ICAgICAgICAgKi8KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLyogOkF1dGhvcjogR8O8bnRlciBNaWxk
ZSwgYmFzZWQgb24gaHRtbDRjc3MxLmNzcyBieSBEYXZpZCBHb29kZ2VyICAgICAgICAgICovCi8q
IDpJZDogJElkOiBwbGFpbi5jc3MgMTAwNzkgMjAyNS0wNC0xMCAxMjowMTo0OFogbWlsZGUgJCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCi8qIDpDb3B5cmlnaHQ6IMKpIDIwMTUgR8O8bnRlciBNaWxkZS4gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLyogOkxpY2Vuc2U6IFJlbGVhc2VkIHVuZGVy
IHRoZSB0ZXJtcyBvZiB0aGUgYDItQ2xhdXNlIEJTRCBsaWNlbnNlYF8sICAgICAgKi8KLyogICAg
aW4gc2hvcnQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLyogICAgQ29weWluZyBhbmQgZGlz
dHJpYnV0aW9uIG9mIHRoaXMgZmlsZSwgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwgKi8K
LyogICAgYXJlIHBlcm1pdHRlZCBpbiBhbnkgbWVkaXVtIHdpdGhvdXQgcm95YWx0eSBwcm92aWRl
ZCB0aGUgY29weXJpZ2h0ICAgKi8KLyogICAgbm90aWNlIGFuZCB0aGlzIG5vdGljZSBhcmUgcHJl
c2VydmVkLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLyogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KLyogICAgVGhpcyBmaWxlIGlzIG9mZmVyZWQgYXMtaXMsIHdpdGhvdXQgYW55IHdhcnJh
bnR5LiAgICAgICAgICAgICAgICAgICAgKi8KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLyogLi4gXzIt
Q2xhdXNlIEJTRCBsaWNlbnNlOiBodHRwOi8vd3d3LnNwZHgub3JnL2xpY2Vuc2VzL0JTRC0yLUNs
YXVzZSAgICAgKi8KLyogLi4gX0NTUzM6IGh0dHBzOi8vd3d3LnczLm9yZy9TdHlsZS9DU1MvICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KCgovKiBEb2N1bWVudCBTdHJ1Y3R1cmUg
Ki8KLyogKioqKioqKioqKioqKioqKioqICovCgovKiAicGFnZSBsYXlvdXQiICovCmJvZHkgewog
IG1hcmdpbjogMDsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGJkYmRiOwogIC0tZmllbGQtaW5kZW50
OiA5ZW07IC8qIGRlZmF1bHQgaW5kZW50IG9mIGZpZWxkcyBpbiBmaWVsZCBsaXN0cyAqLwp9Cm1h
aW4sIGZvb3RlciwgaGVhZGVyIHsKICBsaW5lLWhlaWdodDoxLjY7CiAgLyogYXZvaWQgbG9uZyBs
aW5lcyAtLT4gYmV0dGVyIHJlYWRpbmcgKi8KICAvKiBvcHRpbXVtIGlzIDQ14oCmNzUgY2hhcmFj
dGVycy9saW5lIDxodHRwOi8vd2VidHlwb2dyYXBoeS5uZXQvMi4xLjI+ICovCiAgLyogT1RPSDog
bGluZXMgc2hvdWxkIG5vdCBiZSB0b28gc2hvcnQgYmVjYXVzZSBvZiBtaXNzaW5nIGh5cGhlbmF0
aW9uLCAqLwogIG1heC13aWR0aDogNTByZW07CiAgcGFkZGluZzogMXB4IDIlOyAvKiAxcHggb24g
dG9wIGF2b2lkcyBncmV5IGJhciBhYm92ZSB0aXRsZSAobW96aWxsYSkgKi8KICBtYXJnaW46IGF1
dG87Cn0KbWFpbiB7CiAgY291bnRlci1yZXNldDogdGFibGUgZmlndXJlOwogIGJhY2tncm91bmQt
Y29sb3I6IHdoaXRlOwp9CmZvb3RlciwgaGVhZGVyIHsKICBmb250LXNpemU6IHNtYWxsZXI7CiAg
cGFkZGluZzogMC41ZW0gMiU7CiAgYm9yZGVyOiBub25lOwp9CgovKiBUYWJsZSBvZiBDb250ZW50
cyAqLwp1bC5hdXRvLXRvYyA+IGxpID4gcCB7CiAgcGFkZGluZy1sZWZ0OiAxZW07CiAgdGV4dC1p
bmRlbnQ6IC0xZW07Cn0KbmF2LmNvbnRlbnRzIHVsIHsKICBwYWRkaW5nLWxlZnQ6IDFlbTsKfQpt
YWluID4gbmF2LmNvbnRlbnRzIHVsIHVsIHVsIHVsOm5vdCguYXV0by10b2MpIHsKICBsaXN0LXN0
eWxlLXR5cGU6ICdcMkIyOVwgJzsKfQptYWluID4gbmF2LmNvbnRlbnRzIHVsIHVsIHVsIHVsIHVs
Om5vdCguYXV0by10b2MpIHsKICBsaXN0LXN0eWxlLXR5cGU6ICdcMkIxRFwgJzsKfQoKLyogVHJh
bnNpdGlvbnMgKi8KaHIuZG9jdXRpbHMgewogIHdpZHRoOiA4MCU7CiAgbWFyZ2luLXRvcDogMWVt
OwogIG1hcmdpbi1ib3R0b206IDFlbTsKICBjbGVhcjogYm90aDsKfQoKLyogUGFyYWdyYXBocyAq
LwoKLyogdmVydGljYWwgc3BhY2UgKHBhcnNraXApICovCnAsIG9sLCB1bCwgZGwsIGxpLAouZm9v
dG5vdGUsIC5jaXRhdGlvbiwKZGl2ID4gbWF0aCwKdGFibGUgewogIG1hcmdpbi10b3A6IDAuNWVt
OwogIG1hcmdpbi1ib3R0b206IDAuNWVtOwp9CgpoMSwgaDIsIGgzLCBoNCwgaDUsIGg2LApkZCwg
ZGV0YWlscyA+IHA6bGFzdC1jaGlsZCB7CiAgbWFyZ2luLWJvdHRvbTogMC41ZW07Cn0KCi8qIExp
c3RzICovCi8qID09PT09ICovCgovKiBEZWZpbml0aW9uIExpc3RzICovCi8qIEluZGVudCBsaXN0
cyBuZXN0ZWQgaW4gZGVmaW5pdGlvbiBsaXN0cyAqLwpkZCA+IHVsOm9ubHktY2hpbGQsIGRkID4g
b2w6b25seS1jaGlsZCB7IHBhZGRpbmctbGVmdDogMWVtOyB9CgovKiBEZXNjcmlwdGlvbiBMaXN0
cyAqLwovKiBzdHlsZWQgbGlrZSBpbiBtb3N0IGRpY3Rpb25hcmllcywgZW5jeWNsb3BlZGlhcyBl
dGMuICovCmRsLmRlc2NyaXB0aW9uIHsKICBkaXNwbGF5OiBmbG93LXJvb3Q7Cn0KZGwuZGVzY3Jp
cHRpb24gPiBkdCB7CiAgZm9udC13ZWlnaHQ6IGJvbGQ7CiAgY2xlYXI6IGxlZnQ7CiAgZmxvYXQ6
IGxlZnQ7CiAgbWFyZ2luOiAwOwogIHBhZGRpbmc6IDA7CiAgcGFkZGluZy1yaWdodDogMC4zZW07
Cn0KZGwuZGVzY3JpcHRpb24gPiBkZDphZnRlciB7CiAgZGlzcGxheTogdGFibGU7CiAgY29udGVu
dDogIiI7CiAgY2xlYXI6IGxlZnQ7IC8qIGNsZWFyZml4IGZvciBlbXB0eSBkZXNjcmlwdGlvbnMg
Ki8KfQoKLyogRmllbGQgTGlzdHMgKi8KCmRsLmZpZWxkLWxpc3QgPiBkZCwKZGwuZG9jaW5mbyA+
IGRkIHsKICBtYXJnaW4tbGVmdDogdmFyKC0tZmllbGQtaW5kZW50KTsgLyogYWRhcHRlZCBpbiBt
ZWRpYSBxdWVyaWVzIG9yIEhUTUwgKi8KfQoKLyogZXhhbXBsZSBmb3IgY3VzdG9tIGZpZWxkLW5h
bWUgd2lkdGggKi8KZGwuZmllbGQtbGlzdC5uYXJyb3cgPiBkZCB7CiAgLS1maWVsZC1pbmRlbnQ6
IDVlbTsKfQovKiBydW4taW46IHN0YXJ0IGZpZWxkLWJvZHkgb24gc2FtZSBsaW5lIGFmdGVyIGxv
bmcgZmllbGQgbmFtZXMgKi8KZGwuZmllbGQtbGlzdC5ydW4taW4gPiBkZCBwIHsKICBkaXNwbGF5
OiBibG9jazsKfQoKLyogQmlibGlvZ3JhcGhpYyBGaWVsZHMgKi8KCi8qIGdlbmVyYWxseSwgYmli
bGlvZ3JhcGhpYyBmaWVsZHMgdXNlIGRsLmRvY2luZm8gKi8KLyogYnV0IGRlZGljYXRpb24gYW5k
IGFic3RyYWN0IGFyZSBwbGFjZWQgaW50byBkaXZzICovCmRpdi5hYnN0cmFjdCBwLnRvcGljLXRp
dGxlIHsKICB0ZXh0LWFsaWduOiBjZW50ZXI7Cn0KZGl2LmRlZGljYXRpb24gewogIG1hcmdpbjog
MmVtIDVlbTsKICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgZm9udC1zdHlsZTogaXRhbGljOwp9CmRp
di5kZWRpY2F0aW9uIHAudG9waWMtdGl0bGUgewogIGZvbnQtc3R5bGU6IG5vcm1hbDsKfQoKLyog
ZGlzY2xvc3VyZXMgKi8KZGV0YWlscyB7IHBhZGRpbmctbGVmdDogMWVtOyB9CnN1bW1hcnkgeyBt
YXJnaW4tbGVmdDogLTFlbTsgfQoKLyogVGV4dCBCbG9ja3MgKi8KLyogPT09PT09PT09PT0gKi8K
Ci8qIExpdGVyYWwgQmxvY2tzICovCnByZS5saXRlcmFsLWJsb2NrLCBwcmUuZG9jdGVzdC1ibG9j
aywKcHJlLm1hdGgsIHByZS5jb2RlIHsKICBmb250LWZhbWlseTogbW9ub3NwYWNlOwp9CgovKiBC
bG9jayBRdW90ZXMgYW5kIFRvcGljcyAqLwpib2NrcXVvdGUgeyBtYXJnaW46IDFlbSAyZW07IH0K
YmxvY2txdW90ZSBwLmF0dHJpYnV0aW9uIHsKICB0ZXh0LWFsaWduOiByaWdodDsKICBtYXJnaW4t
bGVmdDogMjAlOwp9CgovKiBUYWJsZXMgKi8KLyogPT09PT09ICovCgovKiB0aCB7IHZlcnRpY2Fs
LWFsaWduOiBib3R0b207IH0gKi8KCnRhYmxlIHRyIHsgdGV4dC1hbGlnbjogbGVmdDsgfQoKLyog
ImJvb2t0YWJzIiBzdHlsZSAobm8gdmVydGljYWwgbGluZXMpICovCnRhYmxlLmJvb2t0YWJzIHsK
ICBib3JkZXI6IDA7CiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkOwogIGJvcmRlci1ib3R0b206IDJw
eCBzb2xpZDsKICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOwp9CnRhYmxlLmJvb2t0YWJzICog
ewogIGJvcmRlcjogMDsKfQp0YWJsZS5ib29rdGFicyB0aCB7CiAgYm9yZGVyLWJvdHRvbTogdGhp
biBzb2xpZDsKfQoKLyogbnVtYmVyZWQgdGFibGVzIChjb3VudGVyIGRlZmluZWQgaW4gZGl2LmRv
Y3VtZW50KSAqLwp0YWJsZS5udW1iZXJlZCA+IGNhcHRpb246YmVmb3JlIHsKICBjb3VudGVyLWlu
Y3JlbWVudDogdGFibGU7CiAgY29udGVudDogIlRhYmxlICIgY291bnRlcih0YWJsZSkgIjogIjsK
ICBmb250LXdlaWdodDogYm9sZDsKfQoKLyogRXhwbGljaXQgTWFya3VwIEJsb2NrcyAqLwovKiA9
PT09PT09PT09PT09PT09PT09PT09ICovCgovKiBGb290bm90ZXMgYW5kIENpdGF0aW9ucyAqLwov
KiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwoKLyogbGluZSBvbiB0aGUgbGVmdCAqLwouZm9v
dG5vdGUtbGlzdCB7CiAgYm9yZGVyLWxlZnQ6IHNvbGlkIHRoaW47CiAgcGFkZGluZy1sZWZ0OiAw
LjI1ZW07Cn0KCi8qIERpcmVjdGl2ZXMgKi8KLyogLS0tLS0tLS0tLSAqLwoKLyogQm9keSBFbGVt
ZW50cyAqLwovKiB+fn5+fn5+fn5+fn5+ICovCgovKiBJbWFnZXMgYW5kIEZpZ3VyZXMgKi8KCi8q
IGxldCBjb250ZW50IGZsb3cgdG8gdGhlIHNpZGUgb2YgYWxpZ25lZCBpbWFnZXMgYW5kIGZpZ3Vy
ZXMgKi8KZmlndXJlLmFsaWduLWxlZnQsCmltZy5hbGlnbi1sZWZ0LApzdmcuYWxpZ24tbGVmdCwK
dmlkZW8uYWxpZ24tbGVmdCwKZGl2LmFsaWduLWxlZnQsCm9iamVjdC5hbGlnbi1sZWZ0IHsKICBj
bGVhcjogbGVmdDsKICBmbG9hdDogbGVmdDsKICBtYXJnaW4tcmlnaHQ6IDFlbTsKfQpmaWd1cmUu
YWxpZ24tcmlnaHQsCmltZy5hbGlnbi1yaWdodCwKc3ZnLmFsaWduLXJpZ2h0LAp2aWRlby5hbGln
bi1yaWdodCwKZGl2LmFsaWduLXJpZ2h0LApvYmplY3QuYWxpZ24tcmlnaHQgewogIGNsZWFyOiBy
aWdodDsKICBmbG9hdDogcmlnaHQ7CiAgbWFyZ2luLWxlZnQ6IDFlbTsKfQovKiBTdG9wIGZsb2F0
aW5nIHNpZGViYXJzLCBpbWFnZXMgYW5kIGZpZ3VyZXMgKi8KaDEsIGgyLCBoMywgaDQsIGZvb3Rl
ciwgaGVhZGVyIHsgY2xlYXI6IGJvdGg7IH0KCi8qIE51bWJlcmVkIGZpZ3VyZXMgKi8KZmlndXJl
Lm51bWJlcmVkID4gZmlnY2FwdGlvbiA+IHA6YmVmb3JlIHsKICBjb3VudGVyLWluY3JlbWVudDog
ZmlndXJlOwogIGNvbnRlbnQ6ICJGaWd1cmUgIiBjb3VudGVyKGZpZ3VyZSkgIjogIjsKICBmb250
LXdlaWdodDogYm9sZDsKfQoKLyogQWRtb25pdGlvbnMgYW5kIFN5c3RlbSBNZXNzYWdlcyAqLwou
Y2F1dGlvbiBwLmFkbW9uaXRpb24tdGl0bGUsCi5hdHRlbnRpb24gcC5hZG1vbml0aW9uLXRpdGxl
LAouZGFuZ2VyIHAuYWRtb25pdGlvbi10aXRsZSwKLmVycm9yIHAuYWRtb25pdGlvbi10aXRsZSwK
Lndhcm5pbmcgcC5hZG1vbml0aW9uLXRpdGxlLApkaXYuZXJyb3IgewogIGNvbG9yOiByZWQ7Cn0K
Ci8qIFNpZGViYXIgKi8KLyogTW92ZSByaWdodC4gSW4gYSBsYXlvdXQgd2l0aCBmaXhlZCBtYXJn
aW5zLCAqLwovKiBpdCBjYW4gYmUgbW92ZWQgaW50byB0aGUgbWFyZ2luLiAgICAgICAgICAgICov
CmFzaWRlLnNpZGViYXIgewogIHdpZHRoOiAzMCU7CiAgbWF4LXdpZHRoOiAyNmVtOwogIGZsb2F0
OiByaWdodDsKICBjbGVhcjogcmlnaHQ7CiAgbWFyZ2luLWxlZnQ6IDFlbTsKICBtYXJnaW4tcmln
aHQ6IC0xJTsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZhOwp9CgoKLyogQ29kZSAqLwpwcmUu
Y29kZSB7IHBhZGRpbmc6IDAuN2V4IH0KcHJlLmNvZGUsIGNvZGUgeyBiYWNrZ3JvdW5kLWNvbG9y
OiAjZWVlZWVlIH0KLyogYmFzaWMgaGlnaGxpZ2h0aW5nOiBmb3IgYSBjb21wbGV0ZSBzY2hlbWUs
IHNlZSAqLwovKiBodHRwczovL2RvY3V0aWxzLnNvdXJjZWZvcmdlLmlvL3NhbmRib3gvc3R5bGVz
aGVldHMvICovCnByZS5jb2RlIC5jb21tZW50LCBjb2RlIC5jb21tZW50IHsgY29sb3I6ICM1QzY1
NzYgfQpwcmUuY29kZSAua2V5d29yZCwgY29kZSAua2V5d29yZCB7IGNvbG9yOiAjM0IwRDA2OyBm
b250LXdlaWdodDogYm9sZCB9CnByZS5jb2RlIC5saXRlcmFsLnN0cmluZywgY29kZSAubGl0ZXJh
bC5zdHJpbmcgeyBjb2xvcjogIzBDNTQwNCB9CnByZS5jb2RlIC5uYW1lLmJ1aWx0aW4sIGNvZGUg
Lm5hbWUuYnVpbHRpbiB7IGNvbG9yOiAjMzUyQjg0IH0KcHJlLmNvZGUgLmRlbGV0ZWQsIGNvZGUg
LmRlbGV0ZWQgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjREVCMEExfQpwcmUuY29kZSAuaW5zZXJ0ZWQs
IGNvZGUgLmluc2VydGVkIHsgYmFja2dyb3VuZC1jb2xvcjogI0EzRDI4OX0KCgovKiBFcGlncmFw
aCAgICAgICAgICAgKi8KLyogSGlnaGxpZ2h0cyAgICAgICAgICovCi8qIFB1bGwtUXVvdGUgICAg
ICAgICAqLwovKiBDb21wb3VuZCBQYXJhZ3JhcGggKi8KLyogQ29udGFpbmVyICAgICAgICAgICov
CgovKiBJbmxpbmUgTWFya3VwICovCi8qID09PT09PT09PT09PT0gKi8KCnN1cCwgc3ViIHsgbGlu
ZS1oZWlnaHQ6IDAuODsgfSAvKiBkbyBub3QgYWRkIGxlYWRpbmcgZm9yIGxpbmVzIHdpdGggc3Vw
L3N1YiAqLwoKLyogSW5saW5lIExpdGVyYWxzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KLyogcG9zc2libGUgdmFsdWVzOiBub3JtYWwsIG5vd3JhcCwgcHJlLCBw
cmUtd3JhcCwgcHJlLWxpbmUgKi8KLyogICBzcGFuLmRvY3V0aWxzLmxpdGVyYWwge8Kgd2hpdGUt
c3BhY2U6IHByZS13cmFwOyB9ICAgICAgICovCgovKiBIeXBlcmxpbmsgUmVmZXJlbmNlcyAqLwph
IHsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9CgovKiBFeHRlcm5hbCBUYXJnZXRzICAgICAgICov
Ci8qICAgc3Bhbi50YXJnZXQuZXh0ZXJuYWwgKi8KLyogSW50ZXJuYWwgVGFyZ2V0cyAgICAgICAq
LwovKiAgIHNwYW4udGFyZ2V0LmludGVybmFsICovCi8qIEZvb3Rub3RlIFJlZmVyZW5jZXMgICAg
Ki8KLyogICBhW3JvbGU9ImRvYy1ub3RlcmVmIl0gKi8KLyogQ2l0YXRpb24gUmVmZXJlbmNlcyAg
ICAqLwovKiAgIGEuY2l0YXRpb24tcmVmZXJlbmNlICovCgo8L3N0eWxlPgo8L2hlYWQ+Cjxib2R5
Pgo8bWFpbiBpZD0idGVzdC1pbnN0YW5jZS1mb3ItYW4taWV0Zi1tYWlsYXJjaGl2ZS11cmktaXNz
dWUtaW4tZG9jdXRpbHMiPgo8aDEgY2xhc3M9InRpdGxlIj5UZXN0IGluc3RhbmNlIGZvciBhbiBJ
RVRGIG1haWxhcmNoaXZlIFVSSSBpc3N1ZSBpbiAnZG9jdXRpbHMnPzwvaDE+Cgo8cD4jIyMgRXhh
bXBsZSBvZiBhbiBVUkkgd2l0aG91dCB0aGUgaXNzdWUgLi4uPC9wPgo8dWwgY2xhc3M9InNpbXBs
ZSI+CjxsaT48cD5JLUQgQWN0aW9uOiBkcmFmdC1pZXRmLWlwcG0tYXN5bW1ldHJpY2FsLXBrdHMt
MDgudHh0PC9wPjwvbGk+CjxsaT48cD48c3Ryb25nPlBlcmZvcm1hbmNlIE1lYXN1cmVtZW50IHdp
dGggQXN5bW1ldHJpY2FsIFRyYWZmaWMgVXNpbmcgU1RBTVA8L3N0cm9uZz48L3A+PC9saT4KPGxp
PjxwPlNUQU1QIC0gU2ltcGxlIFR3by13YXkgQWN0aXZlIE1lYXN1cmVtZW50IFByb3RvY29sPC9w
PjwvbGk+CjxsaT48cD48YSBjbGFzcz0icmVmZXJlbmNlIGV4dGVybmFsIiBocmVmPSJodHRwczov
L21haWxhcmNoaXZlLmlldGYub3JnL2FyY2gvbXNnL2ktZC1hbm5vdW5jZS9UbGpXOVZfc0l6UUox
UHBPNGF4a0ttaVdDWkkvIj5odHRwczovL21haWxhcmNoaXZlLmlldGYub3JnL2FyY2gvbXNnL2kt
ZC1hbm5vdW5jZS9UbGpXOVZfc0l6UUoxUHBPNGF4a0ttaVdDWkkvPC9hPjwvcD48L2xpPgo8bGk+
PHA+LSZndDsgPGEgY2xhc3M9InJlZmVyZW5jZSBleHRlcm5hbCIgaHJlZj0iaHR0cHM6Ly9kYXRh
dHJhY2tlci5pZXRmLm9yZy9kb2MvZHJhZnQtaWV0Zi1pcHBtLWFzeW1tZXRyaWNhbC1wa3RzLyI+
aHR0cHM6Ly9kYXRhdHJhY2tlci5pZXRmLm9yZy9kb2MvZHJhZnQtaWV0Zi1pcHBtLWFzeW1tZXRy
aWNhbC1wa3RzLzwvYT48L3A+PC9saT4KPGxpPjxwPi0tJmd0OyA8YSBjbGFzcz0icmVmZXJlbmNl
IGV4dGVybmFsIiBocmVmPSJodHRwczovL2RhdGF0cmFja2VyLmlldGYub3JnL2RvYy9odG1sL2Ry
YWZ0LWlldGYtaXBwbS1hc3ltbWV0cmljYWwtcGt0cy0wOCI+aHR0cHM6Ly9kYXRhdHJhY2tlci5p
ZXRmLm9yZy9kb2MvaHRtbC9kcmFmdC1pZXRmLWlwcG0tYXN5bW1ldHJpY2FsLXBrdHMtMDg8L2E+
PC9wPjwvbGk+CjwvdWw+CjxwPiMjIyBFeGFtcGxlIG9mIGFuIFVSSSB3aXRoIHRoZSBpc3N1ZSAu
Li48L3A+Cjx1bCBjbGFzcz0ic2ltcGxlIj4KPGxpPjxwPkktRCBBY3Rpb246IGRyYWZ0LWhvZmZt
YW4tbm9uLXJmYy1yZWZzLTAwLnR4dDwvcD48L2xpPgo8bGk+PHA+PHN0cm9uZz5SZWZlcmVuY2Vz
IGluIFJGQ3MgYW5kIElBTkEgUmVnaXN0cmllczwvc3Ryb25nPjwvcD48L2xpPgo8bGk+PHA+PGEg
Y2xhc3M9InJlZmVyZW5jZSBleHRlcm5hbCIgaHJlZj0iaHR0cHM6Ly9tYWlsYXJjaGl2ZS5pZXRm
Lm9yZy9hcmNoL21zZy9pLWQtYW5ub3VuY2UvIj5odHRwczovL21haWxhcmNoaXZlLmlldGYub3Jn
L2FyY2gvbXNnL2ktZC1hbm5vdW5jZS88L2E+PGEgaHJlZj0iI3N5c3RlbS1tZXNzYWdlLTEiPjxz
cGFuIGNsYXNzPSJwcm9ibGVtYXRpYyIgaWQ9InByb2JsZW1hdGljLTEiPms0LUw0bUs3UWFfPC9z
cGFuPjwvYT4tRjNzdm1GNnVGS0tQWjZJLzwvcD48L2xpPgo8bGk+PHA+LSZndDsgPGEgY2xhc3M9
InJlZmVyZW5jZSBleHRlcm5hbCIgaHJlZj0iaHR0cHM6Ly9kYXRhdHJhY2tlci5pZXRmLm9yZy9k
b2MvZHJhZnQtaG9mZm1hbi1ub24tcmZjLXJlZnMvIj5odHRwczovL2RhdGF0cmFja2VyLmlldGYu
b3JnL2RvYy9kcmFmdC1ob2ZmbWFuLW5vbi1yZmMtcmVmcy88L2E+PC9wPjwvbGk+CjxsaT48cD4t
LSZndDsgPGEgY2xhc3M9InJlZmVyZW5jZSBleHRlcm5hbCIgaHJlZj0iaHR0cHM6Ly9kYXRhdHJh
Y2tlci5pZXRmLm9yZy9kb2MvaHRtbC9kcmFmdC1ob2ZmbWFuLW5vbi1yZmMtcmVmcy0wMCI+aHR0
cHM6Ly9kYXRhdHJhY2tlci5pZXRmLm9yZy9kb2MvaHRtbC9kcmFmdC1ob2ZmbWFuLW5vbi1yZmMt
cmVmcy0wMDwvYT48L3A+PC9saT4KPC91bD4KPHNlY3Rpb24gY2xhc3M9InN5c3RlbS1tZXNzYWdl
cyI+CjxoMj5Eb2N1dGlscyBTeXN0ZW0gTWVzc2FnZXM8L2gyPgo8YXNpZGUgY2xhc3M9InN5c3Rl
bS1tZXNzYWdlIiBpZD0ic3lzdGVtLW1lc3NhZ2UtMSI+CjxwIGNsYXNzPSJzeXN0ZW0tbWVzc2Fn
ZS10aXRsZSI+U3lzdGVtIE1lc3NhZ2U6IEVSUk9SLzMgKDxzcGFuIGNsYXNzPSJkb2N1dGlscyBs
aXRlcmFsIj50ZXN0LUlFVEYtVVJJLWlzc3VlLnJzdDwvc3Bhbj4sIGxpbmUgMTgpOyA8ZW0+PGEg
aHJlZj0iI3Byb2JsZW1hdGljLTEiPmJhY2tsaW5rPC9hPjwvZW0+PC9wPgo8cD5Vbmtub3duIHRh
cmdldCBuYW1lOiAmcXVvdDtrNC1sNG1rN3FhJnF1b3Q7LjwvcD4KPC9hc2lkZT4KPC9zZWN0aW9u
Pgo8L21haW4+CjwvYm9keT4KPC9odG1sPgo=
--00000000000020384e0638c8f028
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline


--00000000000020384e0638c8f028
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline