<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>312944</bug_id>
          
          <creation_ts>2026-04-21 17:59:13 -0700</creation_ts>
          <short_desc>[Flex] Avoid expensive percentage height walk when resolving relative position offsets</short_desc>
          <delta_ts>2026-04-29 10:02:30 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://github.com/web-platform-tests/wpt/pull/59548</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="alan">zalan</reporter>
          <assigned_to name="alan">zalan</assigned_to>
          <cc>sgill26</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>2202970</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2026-04-21 17:59:13 -0700</bug_when>
    <thetext>ssia</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2202979</commentid>
    <comment_count>1</comment_count>
      <attachid>479237</attachid>
    <who name="alan">zalan</who>
    <bug_when>2026-04-21 18:09:04 -0700</bug_when>
    <thetext>Created attachment 479237
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2203211</commentid>
    <comment_count>2</comment_count>
      <attachid>479237</attachid>
    <who name="Sammy Gill">sgill26</who>
    <bug_when>2026-04-22 10:25:45 -0700</bug_when>
    <thetext>Comment on attachment 479237
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=479237&amp;action=review

&gt; Source/WebCore/rendering/RenderBoxModelObject.cpp:342
&gt; +    if (logicalHeight.isPercentOrCalculated()) {

Do we know if we need to handle the stretch keyword here in the same way in cases where the stretch size isn&apos;t resolvable? I think from my reading of the spec it seems like they behave somewhat similar but not 100% sure. Maybe we could add a testcase for that scenario at least!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2203693</commentid>
    <comment_count>3</comment_count>
      <attachid>479269</attachid>
    <who name="alan">zalan</who>
    <bug_when>2026-04-23 08:04:12 -0700</bug_when>
    <thetext>Created attachment 479269
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2203694</commentid>
    <comment_count>4</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2026-04-23 08:06:38 -0700</bug_when>
    <thetext>&gt; Do we know if we need to handle the stretch keyword here in the same way in
&gt; cases where the stretch size isn&apos;t resolvable? I think from my reading of
&gt; the spec it seems like they behave somewhat similar but not 100% sure. Maybe
&gt; we could add a testcase for that scenario at least!
Right, I keep forgetting about &apos;stretch&apos;. There&apos;s a quirks behavior difference here but otherwise should be handled as percent -Note that stretch fails on trunk -so this is a progression.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2203741</commentid>
    <comment_count>5</comment_count>
    <who name="Sammy Gill">sgill26</who>
    <bug_when>2026-04-23 10:08:35 -0700</bug_when>
    <thetext>nice, thanks! I just remembered about aspect-ratio and we might need to add that too I think.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2203835</commentid>
    <comment_count>6</comment_count>
      <attachid>479274</attachid>
    <who name="alan">zalan</who>
    <bug_when>2026-04-23 13:23:01 -0700</bug_when>
    <thetext>Created attachment 479274
[fast-cq]Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2203940</commentid>
    <comment_count>7</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2026-04-23 16:41:23 -0700</bug_when>
    <thetext>Committed 311908@main (c7c99b8fbe3e): &lt;https://commits.webkit.org/311908@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 479274.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2203941</commentid>
    <comment_count>8</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2026-04-23 16:42:13 -0700</bug_when>
    <thetext>&lt;rdar://problem/175466302&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2205819</commentid>
    <comment_count>9</comment_count>
    <who name="Sammy Gill">sgill26</who>
    <bug_when>2026-04-29 10:02:30 -0700</bug_when>
    <thetext>Submitted web-platform-tests pull request: https://github.com/web-platform-tests/wpt/pull/59548</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>479237</attachid>
            <date>2026-04-21 18:09:04 -0700</date>
            <delta_ts>2026-04-23 08:04:10 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-312944-20260421180903.patch</filename>
            <type>text/plain</type>
            <size>28101</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">RnJvbSA2ZGRkNjlkZTgzYjQyNDZlYjY1YTdlMjY2MjE4OWFhY2Q2ZTBmN2I5IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbGFuIEJhcmFkbGF5IDx6YWxhbkBhcHBsZS5jb20+CkRhdGU6
IFR1ZSwgMjEgQXByIDIwMjYgMTg6MDE6MDkgLTA3MDAKU3ViamVjdDogW1BBVENIXSBbRmxleF0g
QXZvaWQgZXhwZW5zaXZlIHBlcmNlbnRhZ2UgaGVpZ2h0IHdhbGsgd2hlbiByZXNvbHZpbmcKIHJl
bGF0aXZlIHBvc2l0aW9uIG9mZnNldHMgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTMxMjk0NAoKUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCgpXaGVuIGEgcmVsYXRp
dmVseSBwb3NpdGlvbmVkIGVsZW1lbnQgaGFzIGEgcGVyY2VudGFnZSB0b3Agb3IgYm90dG9tIChl
LmcuCnRvcDogMTAlKSwgd2UgbmVlZCB0byBrbm93IGlmIGl0cyBjb250YWluaW5nIGJsb2NrIGhh
cyBhIGRlZmluaXRlIGhlaWdodC4KVGhlIGV4aXN0aW5nIGNoZWNrIChoYXNBdXRvSGVpZ2h0T3JD
b250YWluaW5nQmxvY2tXaXRoQXV0b0hlaWdodCkgaW4gZGVlcGx5Cm5lc3RlZCBjb2x1bW4gZmxl
eCBjb250ZW50IGNvdWxkIHRyaWdnZXIgYW4gZXhwZW5zaXZlIE8objIpIHdhbGsuCgpUaGUga2V5
IGluc2lnaHQgaXMgdGhhdCByZWxhdGl2ZVBvc2l0aW9uT2Zmc2V0IHJ1bnMgYWZ0ZXIgbGF5b3V0
IC0tIGl0IG9ubHkKYWZmZWN0cyB2aXN1YWwgcG9zaXRpb25pbmcgKHBhaW50aW5nLCBoaXQgdGVz
dGluZyksIG5vdCBsYXlvdXQgZ2VvbWV0cnkuIER1cmluZwpsYXlvdXQsIHRoZSBleHBlbnNpdmUg
d2FsayBpcyBuZWVkZWQgYmVjYXVzZSBmbGV4IGl0ZW0gc2l6ZXMgYXJlbid0IGNvbXB1dGVkIHll
dAphbmQgbGF5b3V0LXBoYXNlIGNoZWNrcyBnYXRlIHdoZW4gaXQncyBzYWZlIHRvIHJlc29sdmUg
cGVyY2VudGFnZXMuIEJ1dCBhZnRlcgpsYXlvdXQsIGFsbCBzaXplcyBhcmUgZmluYWwuIFdlIGNh
biBhbnN3ZXIgImlzIHRoaXMgaGVpZ2h0IGRlZmluaXRlPyIgd2l0aApzaW1wbGUgc3R5bGUgY2hl
Y2tzIGluc3RlYWQgb2YgcmUtd2Fsa2luZyB0aGUgdHJlZS4KClRoZSBuZXcgaGFzRGVmaW5pdGVI
ZWlnaHRCeVN0eWxlIGZ1bmN0aW9uIGNoZWNrcyA5LjggcnVsZXMgZGlyZWN0bHk6Ci0gUnVsZSAz
OiBzdHJldGNoZWQgY3Jvc3MtYXhpcyBpdGVtcyBoYXZlIGRlZmluaXRlIGhlaWdodAotIFJ1bGUg
MjogZGVmaW5pdGUgZmxleC1iYXNpcyBtYWtlcyBwb3N0LWZsZXhpbmcgc2l6ZSBkZWZpbml0ZQot
IFJ1bGUgMTogZGVmaW5pdGUgY29udGFpbmVyIG1haW4gc2l6ZSBtYWtlcyBhbGwgaXRlbXMgZGVm
aW5pdGUgKHJlY3Vyc2UpCkZvciBub24tZmxleCBjYXNlcyBpdCBjaGVja3Mgc3R5bGUgdmFsdWVz
IChhdXRvLCBwZXJjZW50YWdlLCBpbnRyaW5zaWMga2V5d29yZHMpCmFuZCB3YWxrcyB0aGUgcGVy
Y2VudGFnZSBjaGFpbiB3aGVuIG5lZWRlZCAtLSBhbGwgTygxKSBwZXIgbGV2ZWwuCgoqIExheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1mbGV4Ym94L3Bl
cmNlbnRhZ2Utc2l6ZS1xdWlya3MtMDA0LWV4cGVjdGVkLnR4dDogQWRkZWQuCiogTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZsZXhib3gvcGVyY2Vu
dGFnZS1zaXplLXF1aXJrcy0wMDQuaHRtbDogQWRkZWQuCiogTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZsZXhib3gvcG9zaXRpb24tcmVsYXRpdmUt
cGVyY2VudGFnZS10b3AtMDA0LWV4cGVjdGVkLnR4dDogQWRkZWQuCiogTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZsZXhib3gvcG9zaXRpb24tcmVs
YXRpdmUtcGVyY2VudGFnZS10b3AtMDA0Lmh0bWw6IEFkZGVkLgoqIExheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1wb3NpdGlvbi9wb3NpdGlvbi1yZWxh
dGl2ZS0wMTUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtcG9zaXRpb24vcG9zaXRpb24tcmVsYXRpdmUtMDE1
Lmh0bWw6IEFkZGVkLgoqIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hNb2RlbE9i
amVjdC5jcHA6CihXZWJDb3JlOjpoYXNEZWZpbml0ZUhlaWdodEJ5U3R5bGUpOgooV2ViQ29yZTo6
UmVuZGVyQm94TW9kZWxPYmplY3Q6OnJlbGF0aXZlUG9zaXRpb25PZmZzZXQgY29uc3QpOgoqIFNv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGbGV4aWJsZUJveC5oOgotLS0KIC4uLi9yZW5k
ZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuY3BwICAgICAgICB8ICA0OCArKystCiBTb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRmxleGlibGVCb3guaCAgfCAgIDYgKy0KIC4uLi9wZXJj
ZW50YWdlLXNpemUtcXVpcmtzLTAwNC1leHBlY3RlZC50eHQgICB8ICAgNiArCiAuLi4vcGVyY2Vu
dGFnZS1zaXplLXF1aXJrcy0wMDQuaHRtbCAgICAgICAgICAgfCAgNjkgKysrKysKIC4uLm4tcmVs
YXRpdmUtcGVyY2VudGFnZS10b3AtMDA0LWV4cGVjdGVkLnR4dCB8ICAxMSArCiAuLi4vcG9zaXRp
b24tcmVsYXRpdmUtcGVyY2VudGFnZS10b3AtMDA0Lmh0bWwgfCAxMzYgKysrKysrKysrKwogLi4u
L3Bvc2l0aW9uLXJlbGF0aXZlLTAxNS1leHBlY3RlZC50eHQgICAgICAgIHwgIDIyICsrCiAuLi4v
Y3NzLXBvc2l0aW9uL3Bvc2l0aW9uLXJlbGF0aXZlLTAxNS5odG1sICAgfCAyMzYgKysrKysrKysr
KysrKysrKysrCiA4IGZpbGVzIGNoYW5nZWQsIDUzMCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9u
cygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL2Nzcy1mbGV4Ym94L3BlcmNlbnRhZ2Utc2l6ZS1xdWlya3MtMDA0LWV4
cGVjdGVkLnR4dAogY3JlYXRlIG1vZGUgMTAwNjQ0IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1mbGV4Ym94L3BlcmNlbnRhZ2Utc2l6ZS1xdWlya3Mt
MDA0Lmh0bWwKIGNyZWF0ZSBtb2RlIDEwMDY0NCBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZmxleGJveC9wb3NpdGlvbi1yZWxhdGl2ZS1wZXJjZW50
YWdlLXRvcC0wMDQtZXhwZWN0ZWQudHh0CiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZsZXhib3gvcG9zaXRpb24t
cmVsYXRpdmUtcGVyY2VudGFnZS10b3AtMDA0Lmh0bWwKIGNyZWF0ZSBtb2RlIDEwMDY0NCBMYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtcG9zaXRpb24v
cG9zaXRpb24tcmVsYXRpdmUtMDE1LWV4cGVjdGVkLnR4dAogY3JlYXRlIG1vZGUgMTAwNjQ0IExh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1wb3NpdGlv
bi9wb3NpdGlvbi1yZWxhdGl2ZS0wMTUuaHRtbAoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuY3BwCmluZGV4IDdmNTYzMzZkYjk1MS4uYmNiNDVi
M2Y1ZTU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94TW9k
ZWxPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hNb2Rl
bE9iamVjdC5jcHAKQEAgLTMwOSw2ICszMDksNTIgQEAgRGVjb2RpbmdNb2RlIFJlbmRlckJveE1v
ZGVsT2JqZWN0OjpkZWNvZGluZ01vZGVGb3JJbWFnZURyYXcoY29uc3QgSW1hZ2UmIGltYWdlLAog
ICAgIHJldHVybiBkZWZhdWx0RGVjb2RpbmdNb2RlKCk7CiB9CiAKK3N0YXRpYyBib29sIGhhc0Rl
ZmluaXRlSGVpZ2h0QnlTdHlsZShjb25zdCBSZW5kZXJCbG9jayYgY29udGFpbmluZ0Jsb2NrKQor
eworICAgIC8vIENoZWNrcyB3aGV0aGVyIHRoZSBjb250YWluaW5nIGJsb2NrIGhhcyBhIGRlZmlu
aXRlIGhlaWdodCBmb3IgcmVzb2x2aW5nCisgICAgLy8gcGVyY2VudGFnZSB0b3AvYm90dG9tIG9u
IHJlbGF0aXZlbHkgcG9zaXRpb25lZCBlbGVtZW50cy4gVGhpcyBpcyBhCisgICAgLy8gc3R5bGUt
b25seSBhbHRlcm5hdGl2ZSB0byBoYXNBdXRvSGVpZ2h0T3JDb250YWluaW5nQmxvY2tXaXRoQXV0
b0hlaWdodAorICAgIC8vIHRoYXQgYXZvaWRzIHRoZSBleHBlbnNpdmUgY29tcHV0ZVBlcmNlbnRh
Z2VMb2dpY2FsSGVpZ2h0IHJlY3Vyc2lvbgorICAgIC8vIHRyaWdnZXJlZCBieSBjYW5Vc2VGbGV4
SXRlbUZvclBlcmNlbnRhZ2VSZXNvbHV0aW9uIGluIG5lc3RlZCBmbGV4IGNvbnRlbnQuCisgICAg
aWYgKGlzPFJlbmRlclZpZXc+KGNvbnRhaW5pbmdCbG9jaykgfHwgY29udGFpbmluZ0Jsb2NrLnN0
cmV0Y2hlc1RvVmlld3BvcnQoKSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICBpZiAoaXNP
dXRPZkZsb3dQb3NpdGlvbmVkV2l0aEltcGxpY2l0SGVpZ2h0KGNvbnRhaW5pbmdCbG9jaykpCisg
ICAgICAgIHJldHVybiB0cnVlOworCisgICAgaWYgKGNvbnRhaW5pbmdCbG9jay5pc0dyaWRJdGVt
KCkgJiYgY29udGFpbmluZ0Jsb2NrLmdyaWRBcmVhQ29udGVudExvZ2ljYWxIZWlnaHQoKSkKKyAg
ICAgICAgcmV0dXJuIHRydWU7CisKKyAgICBpZiAoY29udGFpbmluZ0Jsb2NrLmlzRmxleEl0ZW0o
KSkgeworICAgICAgICBhdXRvJiBmbGV4Q29udGFpbmVyID0gZG93bmNhc3Q8UmVuZGVyRmxleGli
bGVCb3g+KCpjb250YWluaW5nQmxvY2sucGFyZW50KCkpOworICAgICAgICAvLyDCpzkuOCBydWxl
IDM6IHN0cmV0Y2hlZCBjcm9zcy1heGlzIGl0ZW1zIGhhdmUgZGVmaW5pdGUgY3Jvc3Mgc2l6ZS4K
KyAgICAgICAgaWYgKGZsZXhDb250YWluZXIubWFpbkF4aXNJc0ZsZXhJdGVtSW5saW5lQXhpcyhj
b250YWluaW5nQmxvY2spKQorICAgICAgICAgICAgcmV0dXJuIGZsZXhDb250YWluZXIuYWxpZ25t
ZW50Rm9yRmxleEl0ZW0oY29udGFpbmluZ0Jsb2NrKSA9PSBJdGVtUG9zaXRpb246OlN0cmV0Y2g7
CisgICAgICAgIC8vIMKnOS44IHJ1bGUgMjogZGVmaW5pdGUgZmxleC1iYXNpcyBtYWtlcyBwb3N0
LWZsZXhpbmcgbWFpbiBzaXplIGRlZmluaXRlLgorICAgICAgICBhdXRvIGZsZXhCYXNpcyA9IGZs
ZXhDb250YWluZXIuZmxleEJhc2lzRm9yRmxleEl0ZW0oY29udGFpbmluZ0Jsb2NrKTsKKyAgICAg
ICAgaWYgKCFmbGV4QmFzaXMuaXNBdXRvKCkgJiYgIWZsZXhCYXNpcy5pc0NvbnRlbnQoKSAmJiAh
ZmxleEJhc2lzLmlzUGVyY2VudE9yQ2FsY3VsYXRlZCgpICYmICFmbGV4QmFzaXMuaXNJbnRyaW5z
aWMoKSkKKyAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgICAgICAvLyDCpzkuOCBydWxlIDE6
IGRlZmluaXRlIGNvbnRhaW5lciBtYWluIHNpemUgbWFrZXMgYWxsIGl0ZW1zIGRlZmluaXRlLgor
ICAgICAgICByZXR1cm4gaGFzRGVmaW5pdGVIZWlnaHRCeVN0eWxlKGZsZXhDb250YWluZXIpOwor
ICAgIH0KKworICAgIGF1dG8mIGxvZ2ljYWxIZWlnaHQgPSBjb250YWluaW5nQmxvY2suc3R5bGUo
KS5sb2dpY2FsSGVpZ2h0KCk7CisgICAgaWYgKGxvZ2ljYWxIZWlnaHQuaXNQZXJjZW50T3JDYWxj
dWxhdGVkKCkpIHsKKyAgICAgICAgLy8gSW4gcXVpcmtzIG1vZGUsIHBlcmNlbnRhZ2UgaGVpZ2h0
cyByZXNvbHZlIGZyZWVseSBhZ2FpbnN0IG5vbi1mbGV4IGFuY2VzdG9ycy4KKyAgICAgICAgaWYg
KGNvbnRhaW5pbmdCbG9jay5kb2N1bWVudCgpLmluUXVpcmtzTW9kZSgpKSB7CisgICAgICAgICAg
ICBhdXRvKiBhbmNlc3RvciA9IGNvbnRhaW5pbmdCbG9jay5jb250YWluaW5nQmxvY2soKTsKKyAg
ICAgICAgICAgIHJldHVybiAhYW5jZXN0b3IgfHwgIWFuY2VzdG9yLT5pc0ZsZXhpYmxlQm94SW5j
bHVkaW5nRGVwcmVjYXRlZCgpOworICAgICAgICB9CisKKyAgICAgICAgYXV0byogYW5jZXN0b3Ig
PSBjb250YWluaW5nQmxvY2suY29udGFpbmluZ0Jsb2NrKCk7CisgICAgICAgIHdoaWxlIChhbmNl
c3RvciAmJiBhbmNlc3Rvci0+aXNBbm9ueW1vdXNGb3JQZXJjZW50YWdlUmVzb2x1dGlvbigpKQor
ICAgICAgICAgICAgYW5jZXN0b3IgPSBhbmNlc3Rvci0+Y29udGFpbmluZ0Jsb2NrKCk7CisgICAg
ICAgIHJldHVybiBhbmNlc3RvciAmJiBoYXNEZWZpbml0ZUhlaWdodEJ5U3R5bGUoKmFuY2VzdG9y
KTsKKyAgICB9CisKKyAgICByZXR1cm4gIWxvZ2ljYWxIZWlnaHQuaXNBdXRvKCkgJiYgIWxvZ2lj
YWxIZWlnaHQuaXNJbnRyaW5zaWMoKTsKK30KKwogTGF5b3V0U2l6ZSBSZW5kZXJCb3hNb2RlbE9i
amVjdDo6cmVsYXRpdmVQb3NpdGlvbk9mZnNldCgpIGNvbnN0CiB7CiAgICAgYXV0byBjb250YWlu
aW5nQmxvY2tTa2lwcGluZ0Fub255bW91cyA9IFsmXSB7CkBAIC0zNzMsNyArNDE5LDcgQEAgTGF5
b3V0U2l6ZSBSZW5kZXJCb3hNb2RlbE9iamVjdDo6cmVsYXRpdmVQb3NpdGlvbk9mZnNldCgpIGNv
bnN0CiAgICAgaWYgKHRvcC5pc0F1dG8oKSAmJiBib3R0b20uaXNBdXRvKCkpCiAgICAgICAgIHJl
dHVybiBvZmZzZXQ7CiAKLSAgICBhdXRvIGNvbnRhaW5pbmdCbG9ja0hhc0RlZmluaXRlSGVpZ2h0
ID0gIWNvbnRhaW5pbmdCbG9jay0+aGFzQXV0b0hlaWdodE9yQ29udGFpbmluZ0Jsb2NrV2l0aEF1
dG9IZWlnaHQoKSB8fCBjb250YWluaW5nQmxvY2stPnN0cmV0Y2hlc1RvVmlld3BvcnQoKTsKKyAg
ICBhdXRvIGNvbnRhaW5pbmdCbG9ja0hhc0RlZmluaXRlSGVpZ2h0ID0gaGFzRGVmaW5pdGVIZWln
aHRCeVN0eWxlKCpjb250YWluaW5nQmxvY2spOwogICAgIGF1dG8gYXZhaWxhYmxlSGVpZ2h0ID0g
WyZdIHsKICAgICAgICAgYXV0byogcmVuZGVyQm94ID0gZHluYW1pY0Rvd25jYXN0PFJlbmRlckJv
eD4oKnRoaXMpOwogICAgICAgICBpZiAoIXJlbmRlckJveCB8fCAhcmVuZGVyQm94LT5pc0dyaWRJ
dGVtKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRmxleGli
bGVCb3guaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGbGV4aWJsZUJveC5oCmlu
ZGV4IDc2MTdhZWQxMDk0My4uNWE0NDQ1NWQ1YmM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyRmxleGlibGVCb3guaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyRmxleGlibGVCb3guaApAQCAtMTA5LDYgKzEwOSw5IEBAIHB1YmxpYzoKIAog
ICAgIGJvb2wgTk9ERUxFVEUgaXNDb2x1bW5PclJvd1JldmVyc2UoKSBjb25zdDsKICAgICBib29s
IE5PREVMRVRFIGlzV3JhcFJldmVyc2UoKSBjb25zdDsKKyAgICBib29sIE5PREVMRVRFIG1haW5B
eGlzSXNGbGV4SXRlbUlubGluZUF4aXMoY29uc3QgUmVuZGVyQm94JikgY29uc3Q7CisgICAgSXRl
bVBvc2l0aW9uIGFsaWdubWVudEZvckZsZXhJdGVtKGNvbnN0IFJlbmRlckJveCYpIGNvbnN0Owor
ICAgIFN0eWxlOjpGbGV4QmFzaXMgZmxleEJhc2lzRm9yRmxleEl0ZW0oY29uc3QgUmVuZGVyQm94
JikgY29uc3Q7CiAKIHByb3RlY3RlZDoKICAgICB2b2lkIGNvbXB1dGVJbnRyaW5zaWNMb2dpY2Fs
V2lkdGhzKExheW91dFVuaXQmIG1pbkxvZ2ljYWxXaWR0aCwgTGF5b3V0VW5pdCYgbWF4TG9naWNh
bFdpZHRoKSBjb25zdCBvdmVycmlkZTsKQEAgLTE1MiwxMSArMTU1LDkgQEAgcHJpdmF0ZToKICAg
ICBzdGF0aWMgY29uc3RleHByIHVuc2lnbmVkIHNfbGluZVN0YXRlc0luaXRpYWxDYXBhY2l0eSA9
IDI7CiAgICAgdXNpbmcgRmxleExpbmVTdGF0ZXMgPSBWZWN0b3I8TGluZVN0YXRlLCBzX2xpbmVT
dGF0ZXNJbml0aWFsQ2FwYWNpdHk+OwogCi0gICAgYm9vbCBOT0RFTEVURSBtYWluQXhpc0lzRmxl
eEl0ZW1JbmxpbmVBeGlzKGNvbnN0IFJlbmRlckJveCYpIGNvbnN0OwogICAgIGJvb2wgTk9ERUxF
VEUgaXNDb2x1bW5GbG93KCkgY29uc3Q7CiAgICAgYm9vbCBOT0RFTEVURSBpc0xlZnRUb1JpZ2h0
RmxvdygpIGNvbnN0OwogICAgIGJvb2wgTk9ERUxFVEUgaXNNdWx0aWxpbmUoKSBjb25zdDsKLSAg
ICBTdHlsZTo6RmxleEJhc2lzIGZsZXhCYXNpc0ZvckZsZXhJdGVtKGNvbnN0IFJlbmRlckJveCYg
ZmxleEl0ZW0pIGNvbnN0OwogICAgIGNvbnN0IFN0eWxlOjpQcmVmZXJyZWRTaXplJiBOT0RFTEVU
RSBwcmVmZXJyZWRNYWluU2l6ZUxlbmd0aEZvckZsZXhJdGVtKGNvbnN0IFJlbmRlckJveCYpIGNv
bnN0IExJRkVUSU1FX0JPVU5EOwogICAgIGNvbnN0IFN0eWxlOjpNaW5pbXVtU2l6ZSYgTk9ERUxF
VEUgbWluTWFpblNpemVMZW5ndGhGb3JGbGV4SXRlbShjb25zdCBSZW5kZXJCb3gmKSBjb25zdCBM
SUZFVElNRV9CT1VORDsKICAgICBjb25zdCBTdHlsZTo6TWF4aW11bVNpemUmIE5PREVMRVRFIG1h
eE1haW5TaXplTGVuZ3RoRm9yRmxleEl0ZW0oY29uc3QgUmVuZGVyQm94JikgY29uc3QgTElGRVRJ
TUVfQk9VTkQ7CkBAIC0yMDksNyArMjEwLDYgQEAgcHJpdmF0ZToKICAgICBMYXlvdXRVbml0IGNv
bXB1dGVGbGV4QmFzZVNpemVGb3JGbGV4SXRlbShSZW5kZXJCb3gmIGZsZXhJdGVtLCBSZWxheW91
dENoaWxkcmVuKTsKICAgICB2b2lkIG1heWJlQ2FjaGVGbGV4SXRlbU1haW5JbnRyaW5zaWNTaXpl
KFJlbmRlckJveCYgZmxleEl0ZW0sIFJlbGF5b3V0Q2hpbGRyZW4pOwogICAgIHZvaWQgTk9ERUxF
VEUgYWRqdXN0QWxpZ25tZW50Rm9yRmxleEl0ZW0oUmVuZGVyQm94JiBmbGV4SXRlbSwgTGF5b3V0
VW5pdCk7Ci0gICAgSXRlbVBvc2l0aW9uIGFsaWdubWVudEZvckZsZXhJdGVtKGNvbnN0IFJlbmRl
ckJveCYgZmxleEl0ZW0pIGNvbnN0OwogICAgIGlubGluZSBPdmVyZmxvd0FsaWdubWVudCBvdmVy
Zmxvd0FsaWdubWVudEZvckZsZXhJdGVtKGNvbnN0IFJlbmRlckJveCYgZmxleEl0ZW0pIGNvbnN0
OwogICAgIHRlbXBsYXRlPHR5cGVuYW1lIFNpemVUeXBlPiBib29sIGNhbkNvbXB1dGVQZXJjZW50
YWdlRmxleEJhc2lzKGNvbnN0IFJlbmRlckJveCYgZmxleEl0ZW0sIGNvbnN0IFNpemVUeXBlJiwg
VXBkYXRlUGVyY2VudGFnZUhlaWdodERlc2NlbmRhbnRzKTsKICAgICB0ZW1wbGF0ZTx0eXBlbmFt
ZSBTaXplVHlwZT4gYm9vbCBmbGV4SXRlbU1haW5TaXplSXNEZWZpbml0ZShjb25zdCBSZW5kZXJC
b3gmLCBjb25zdCBTaXplVHlwZSYpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZsZXhib3gvcGVyY2VudGFnZS1zaXplLXF1
aXJrcy0wMDQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9jc3MvY3NzLWZsZXhib3gvcGVyY2VudGFnZS1zaXplLXF1aXJrcy0wMDQtZXhw
ZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4uNzE0ZDg4
OGVhNTk5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZsZXhib3gvcGVyY2VudGFnZS1zaXplLXF1aXJrcy0wMDQt
ZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNiBAQAorCitQQVNTIFF1aXJrczogY29sdW1uIGZsZXgg
d2l0aCBkZWZpbml0ZSBoZWlnaHQsIGhlaWdodDogMTAwJSBpbiBmbGV4IGl0ZW0KK1BBU1MgUXVp
cmtzOiBjb2x1bW4gZmxleCB3aXRoIGF1dG8gaGVpZ2h0LCBoZWlnaHQ6IDEwMCUgaW4gZmxleCBp
dGVtCitQQVNTIFF1aXJrczogY29sdW1uIGZsZXggd2l0aCBkZWZpbml0ZSBoZWlnaHQsIGRlZXAg
aGVpZ2h0OiAxMDAlIGluIGZsZXggaXRlbQorUEFTUyBRdWlya3M6IHBlcmNlbnRhZ2UgaGVpZ2h0
IGFnYWluc3QgYXV0byBwYXJlbnQgcmVzb2x2ZXMgZm9yIHRvcDogNTAlCisKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1mbGV4
Ym94L3BlcmNlbnRhZ2Utc2l6ZS1xdWlya3MtMDA0Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZmxleGJveC9wZXJjZW50YWdlLXNpemUt
cXVpcmtzLTAwNC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4u
ZDM3M2E5MDFhMzgwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZsZXhib3gvcGVyY2VudGFnZS1zaXplLXF1aXJr
cy0wMDQuaHRtbApAQCAtMCwwICsxLDY5IEBACis8dGl0bGU+Q1NTIEZsZXhib3g6IHBlcmNlbnRh
Z2UgaGVpZ2h0IGFuZCByZWxhdGl2ZSBwb3NpdGlvbiBpbiBjb2x1bW4gZmxleCBpdGVtcyBpbiBx
dWlya3MgbW9kZTwvdGl0bGU+Cis8bGluayByZWw9ImhlbHAiIGhyZWY9Imh0dHBzOi8vZHJhZnRz
LmNzc3dnLm9yZy9jc3MtZmxleGJveC8jZGVmaW5pdGUtc2l6ZXMiPgorPGxpbmsgcmVsPSJoZWxw
IiBocmVmPSJodHRwczovL3F1aXJrcy5zcGVjLndoYXR3Zy5vcmcvI3RoZS1wZXJjZW50YWdlLWhl
aWdodC1jYWxjdWxhdGlvbi1xdWlyayI+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFy
bmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3Jl
cG9ydC5qcyI+PC9zY3JpcHQ+Cis8c3R5bGU+Citib2R5IHsKKyAgICBtYXJnaW46IDA7Cit9Cis8
L3N0eWxlPgorCis8IS0tIDEuIENvbHVtbiBmbGV4ICgxMDBweCksIGZsZXg6MSBpdGVtLCBjaGls
ZCBoZWlnaHQ6IDEwMCUgLS0+Cis8ZGl2IHN0eWxlPSJkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVj
dGlvbjogY29sdW1uOyBoZWlnaHQ6IDEwMHB4OyI+CisgICAgPGRpdiBzdHlsZT0iaGVpZ2h0OiA1
MHB4OyI+PC9kaXY+CisgICAgPGRpdiBpZD0idDEtaXRlbSIgc3R5bGU9ImZsZXg6IDE7Ij4KKyAg
ICAgICAgPGRpdiBpZD0idDEiIHN0eWxlPSJoZWlnaHQ6IDEwMCU7IGJhY2tncm91bmQ6IGdyZWVu
OyI+PC9kaXY+CisgICAgPC9kaXY+Cis8L2Rpdj4KKworPCEtLSAyLiBDb2x1bW4gZmxleCAoYXV0
byBoZWlnaHQpLCBmbGV4OjEgaXRlbSwgY2hpbGQgaGVpZ2h0OiAxMDAlIC0tPgorPGRpdiBzdHls
ZT0iZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsiPgorICAgIDxkaXYgc3R5
bGU9ImhlaWdodDogNTBweDsiPjwvZGl2PgorICAgIDxkaXYgaWQ9InQyLWl0ZW0iIHN0eWxlPSJm
bGV4OiAxOyI+CisgICAgICAgIDxkaXYgaWQ9InQyIiBzdHlsZT0iaGVpZ2h0OiAxMDAlOyBiYWNr
Z3JvdW5kOiBncmVlbjsiPjwvZGl2PgorICAgIDwvZGl2PgorPC9kaXY+CisKKzwhLS0gMy4gQ29s
dW1uIGZsZXggKDEwMHB4KSwgd3JhcHBlciBkaXYsIGRlZXAgaGVpZ2h0OiAxMDAlIC0tPgorPGRp
diBzdHlsZT0iZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgaGVpZ2h0OiAx
MDBweDsiPgorICAgIDxkaXYgc3R5bGU9ImhlaWdodDogNTBweDsiPjwvZGl2PgorICAgIDxkaXYg
aWQ9InQzLWl0ZW0iIHN0eWxlPSJmbGV4OiAxOyI+CisgICAgICAgIDxkaXY+CisgICAgICAgICAg
ICA8ZGl2IGlkPSJ0MyIgc3R5bGU9ImhlaWdodDogMTAwJTsgYmFja2dyb3VuZDogZ3JlZW47Ij48
L2Rpdj4KKyAgICAgICAgPC9kaXY+CisgICAgPC9kaXY+Cis8L2Rpdj4KKworPCEtLSA0LiBQZXJj
ZW50YWdlIGhlaWdodCBhZ2FpbnN0IGF1dG8gcGFyZW50IHJlc29sdmVzIGluIHF1aXJrcyBtb2Rl
LCB0b3A6IDUwJSAtLT4KKzxkaXY+CisgICAgPGRpdiBpZD0idDQtY2IiIHN0eWxlPSJoZWlnaHQ6
IDUwJTsiPgorICAgICAgICA8ZGl2IGlkPSJ0NCIgc3R5bGU9IndpZHRoOiAyMHB4OyBoZWlnaHQ6
IDIwcHg7IGJhY2tncm91bmQ6IGdyZWVuOyBwb3NpdGlvbjogcmVsYXRpdmU7IHRvcDogNTAlOyI+
PC9kaXY+CisgICAgPC9kaXY+Cis8L2Rpdj4KKworPHNjcmlwdD4KK3Rlc3QoZnVuY3Rpb24oKSB7
CisgICAgdmFyIGl0ZW0gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDEtaXRlbScpOworICAg
IHZhciBjaGlsZCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0MScpOworICAgIGFzc2VydF9l
cXVhbHMoY2hpbGQub2Zmc2V0SGVpZ2h0LCBpdGVtLm9mZnNldEhlaWdodCk7Cit9LCAnUXVpcmtz
OiBjb2x1bW4gZmxleCB3aXRoIGRlZmluaXRlIGhlaWdodCwgaGVpZ2h0OiAxMDAlIGluIGZsZXgg
aXRlbScpOworCit0ZXN0KGZ1bmN0aW9uKCkgeworICAgIHZhciBjaGlsZCA9IGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCd0MicpOworICAgIGFzc2VydF9lcXVhbHMoY2hpbGQub2Zmc2V0SGVpZ2h0
LCAwKTsKK30sICdRdWlya3M6IGNvbHVtbiBmbGV4IHdpdGggYXV0byBoZWlnaHQsIGhlaWdodDog
MTAwJSBpbiBmbGV4IGl0ZW0nKTsKKwordGVzdChmdW5jdGlvbigpIHsKKyAgICB2YXIgaXRlbSA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0My1pdGVtJyk7CisgICAgdmFyIGNoaWxkID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QzJyk7CisgICAgYXNzZXJ0X2VxdWFscyhjaGlsZC5vZmZz
ZXRIZWlnaHQsIGl0ZW0ub2Zmc2V0SGVpZ2h0KTsKK30sICdRdWlya3M6IGNvbHVtbiBmbGV4IHdp
dGggZGVmaW5pdGUgaGVpZ2h0LCBkZWVwIGhlaWdodDogMTAwJSBpbiBmbGV4IGl0ZW0nKTsKKwor
dGVzdChmdW5jdGlvbigpIHsKKyAgICB2YXIgY2IgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgn
dDQtY2InKTsKKyAgICB2YXIgY2hpbGQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDQnKTsK
KyAgICB2YXIgb2Zmc2V0ID0gY2hpbGQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkudG9wIC0gY2Iu
Z2V0Qm91bmRpbmdDbGllbnRSZWN0KCkudG9wOworICAgIGFzc2VydF9ub3RfZXF1YWxzKG9mZnNl
dCwgMCk7Cit9LCAnUXVpcmtzOiBwZXJjZW50YWdlIGhlaWdodCBhZ2FpbnN0IGF1dG8gcGFyZW50
IHJlc29sdmVzIGZvciB0b3A6IDUwJScpOworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZmxleGJveC9wb3Np
dGlvbi1yZWxhdGl2ZS1wZXJjZW50YWdlLXRvcC0wMDQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZsZXhib3gvcG9zaXRp
b24tcmVsYXRpdmUtcGVyY2VudGFnZS10b3AtMDA0LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLjdiMGYyZWNiNTgzMgotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1m
bGV4Ym94L3Bvc2l0aW9uLXJlbGF0aXZlLXBlcmNlbnRhZ2UtdG9wLTAwNC1leHBlY3RlZC50eHQK
QEAgLTAsMCArMSwxMSBAQAorCitQQVNTIFJvdyBmbGV4LCBzdHJldGNoZWQgaXRlbSwgdG9wOiA1
MCUKK1BBU1MgUm93IGZsZXgsIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQsIHRvcDogNTAlCitQQVNT
IENvbHVtbiBmbGV4LCBmbGV4LWdyb3cgaXRlbSwgdG9wOiA1MCUKK1BBU1MgQ29sdW1uIGZsZXgs
IGF1dG8gaGVpZ2h0IGNvbnRhaW5lciwgdG9wOiA1MCUKK1BBU1MgQ29sdW1uIGZsZXgsIGRlZmlu
aXRlIGZsZXgtYmFzaXMsIHRvcDogNTAlCitQQVNTIE5lc3RlZCBjb2x1bW4gZmxleCwgdG9wOiA1
MCUKK1BBU1MgUm93IHRoZW4gY29sdW1uIG5lc3RpbmcsIHRvcDogNTAlCitQQVNTIEZsZXggaXRl
bSB3aXRoIHBlcmNlbnRhZ2UgaGVpZ2h0LCB0b3A6IDUwJQorUEFTUyBQZXJjZW50YWdlIGhlaWdo
dCBjaGlsZCBpbnNpZGUgc3RyZXRjaGVkIGZsZXggaXRlbSwgdG9wOiA1MCUKKwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZs
ZXhib3gvcG9zaXRpb24tcmVsYXRpdmUtcGVyY2VudGFnZS10b3AtMDA0Lmh0bWwgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZmxleGJveC9wb3Np
dGlvbi1yZWxhdGl2ZS1wZXJjZW50YWdlLXRvcC0wMDQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAuLmVkNTE0ZDk3OTk1NgotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1mbGV4Ym94
L3Bvc2l0aW9uLXJlbGF0aXZlLXBlcmNlbnRhZ2UtdG9wLTAwNC5odG1sCkBAIC0wLDAgKzEsMTM2
IEBACis8IURPQ1RZUEUgaHRtbD4KKzx0aXRsZT5DU1MgRmxleGJveDogcGVyY2VudGFnZSB0b3Av
Ym90dG9tIG9uIHJlbGF0aXZlbHkgcG9zaXRpb25lZCBlbGVtZW50cyBpbiBmbGV4IGl0ZW1zPC90
aXRsZT4KKzxsaW5rIHJlbD0iaGVscCIgaHJlZj0iaHR0cHM6Ly9kcmFmdHMuY3Nzd2cub3JnL2Nz
cy1mbGV4Ym94LyNkZWZpbml0ZS1zaXplcyI+Cis8bGluayByZWw9ImhlbHAiIGhyZWY9Imh0dHBz
Oi8vZHJhZnRzLmNzc3dnLm9yZy9jc3MtcG9zaXRpb24tMy8jdmFsZGVmLXRvcC1wZXJjZW50YWdl
Ij4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKzxz
Y3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKzxz
dHlsZT4KK2JvZHkgeworICAgIG1hcmdpbjogMDsKK30KKworLmdyZWVuIHsKKyAgICB3aWR0aDog
MjBweDsKKyAgICBoZWlnaHQ6IDIwcHg7CisgICAgYmFja2dyb3VuZDogZ3JlZW47CisgICAgcG9z
aXRpb246IHJlbGF0aXZlOworfQorPC9zdHlsZT4KKworPCEtLSAxLiBSb3cgZmxleCwgc3RyZXRj
aGVkIGl0ZW0sIHRvcDogNTAlIC0tPgorPGRpdiBzdHlsZT0iZGlzcGxheTogZmxleDsgaGVpZ2h0
OiAyMDBweDsiPgorICAgIDxkaXYgaWQ9InQxLWl0ZW0iPgorICAgICAgICA8ZGl2IGNsYXNzPSJn
cmVlbiIgaWQ9InQxIiBzdHlsZT0idG9wOiA1MCU7Ij48L2Rpdj4KKyAgICA8L2Rpdj4KKzwvZGl2
PgorCis8IS0tIDIuIFJvdyBmbGV4LCBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0LCB0b3A6IDUwJSAt
LT4KKzxkaXYgc3R5bGU9ImRpc3BsYXk6IGZsZXg7IGhlaWdodDogMjAwcHg7Ij4KKyAgICA8ZGl2
IGlkPSJ0Mi1pdGVtIiBzdHlsZT0iYWxpZ24tc2VsZjogZmxleC1zdGFydDsiPgorICAgICAgICA8
ZGl2IGNsYXNzPSJncmVlbiIgaWQ9InQyIiBzdHlsZT0idG9wOiA1MCU7Ij48L2Rpdj4KKyAgICA8
L2Rpdj4KKzwvZGl2PgorCis8IS0tIDMuIENvbHVtbiBmbGV4ICgyMDBweCksIGZsZXgtZ3JvdyBp
dGVtLCB0b3A6IDUwJSAtLT4KKzxkaXYgc3R5bGU9ImRpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0
aW9uOiBjb2x1bW47IGhlaWdodDogMjAwcHg7Ij4KKyAgICA8ZGl2IHN0eWxlPSJoZWlnaHQ6IDEw
MHB4OyI+PC9kaXY+CisgICAgPGRpdiBpZD0idDMtaXRlbSIgc3R5bGU9ImZsZXgtZ3JvdzogMTsi
PgorICAgICAgICA8ZGl2IGNsYXNzPSJncmVlbiIgaWQ9InQzIiBzdHlsZT0idG9wOiA1MCU7Ij48
L2Rpdj4KKyAgICA8L2Rpdj4KKzwvZGl2PgorCis8IS0tIDQuIENvbHVtbiBmbGV4IChhdXRvIGhl
aWdodCksIHRvcDogNTAlIC0tPgorPGRpdiBzdHlsZT0iZGlzcGxheTogZmxleDsgZmxleC1kaXJl
Y3Rpb246IGNvbHVtbjsiPgorICAgIDxkaXYgaWQ9InQ0LWl0ZW0iIHN0eWxlPSJmbGV4LWdyb3c6
IDE7Ij4KKyAgICAgICAgPGRpdiBjbGFzcz0iZ3JlZW4iIGlkPSJ0NCIgc3R5bGU9InRvcDogNTAl
OyI+PC9kaXY+CisgICAgPC9kaXY+Cis8L2Rpdj4KKworPCEtLSA1LiBDb2x1bW4gZmxleCwgZmxl
eC1iYXNpczogMTAwcHgsIHRvcDogNTAlIC0tPgorPGRpdiBzdHlsZT0iZGlzcGxheTogZmxleDsg
ZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgaGVpZ2h0OiAyMDBweDsiPgorICAgIDxkaXYgaWQ9InQ1
LWl0ZW0iIHN0eWxlPSJmbGV4OiAwIDAgMTAwcHg7Ij4KKyAgICAgICAgPGRpdiBjbGFzcz0iZ3Jl
ZW4iIGlkPSJ0NSIgc3R5bGU9InRvcDogNTAlOyI+PC9kaXY+CisgICAgPC9kaXY+Cis8L2Rpdj4K
KworPCEtLSA2LiBOZXN0ZWQgY29sdW1uIGZsZXggKDMgbGV2ZWxzKSwgaW5uZXJtb3N0IHRvcDog
NTAlIC0tPgorPGRpdiBzdHlsZT0iZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVt
bjsgaGVpZ2h0OiAyMDBweDsiPgorICAgIDxkaXYgc3R5bGU9ImZsZXgtZ3JvdzogMTsgZGlzcGxh
eTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsiPgorICAgICAgICA8ZGl2IHN0eWxlPSJm
bGV4LWdyb3c6IDE7IGRpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47Ij4KKyAg
ICAgICAgICAgIDxkaXYgc3R5bGU9ImhlaWdodDogMTAwcHg7Ij48L2Rpdj4KKyAgICAgICAgICAg
IDxkaXYgaWQ9InQ2LWl0ZW0iIHN0eWxlPSJmbGV4LWdyb3c6IDE7Ij4KKyAgICAgICAgICAgICAg
ICA8ZGl2IGNsYXNzPSJncmVlbiIgaWQ9InQ2IiBzdHlsZT0idG9wOiA1MCU7Ij48L2Rpdj4KKyAg
ICAgICAgICAgIDwvZGl2PgorICAgICAgICA8L2Rpdj4KKyAgICA8L2Rpdj4KKzwvZGl2PgorCis8
IS0tIDcuIFJvdyBmbGV4IGNvbnRhaW5pbmcgY29sdW1uIGZsZXgsIHRvcDogNTAlIC0tPgorPGRp
diBzdHlsZT0iZGlzcGxheTogZmxleDsgaGVpZ2h0OiAyMDBweDsiPgorICAgIDxkaXYgc3R5bGU9
ImRpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IHdpZHRoOiAxMDBweDsiPgor
ICAgICAgICA8ZGl2IHN0eWxlPSJoZWlnaHQ6IDEwMHB4OyI+PC9kaXY+CisgICAgICAgIDxkaXYg
aWQ9InQ3LWl0ZW0iIHN0eWxlPSJmbGV4LWdyb3c6IDE7Ij4KKyAgICAgICAgICAgIDxkaXYgY2xh
c3M9ImdyZWVuIiBpZD0idDciIHN0eWxlPSJ0b3A6IDUwJTsiPjwvZGl2PgorICAgICAgICA8L2Rp
dj4KKyAgICA8L2Rpdj4KKzwvZGl2PgorCis8IS0tIDguIEZsZXggaXRlbSB3aXRoIGhlaWdodDog
NTAlLCB0b3A6IDUwJSAtLT4KKzxkaXYgc3R5bGU9ImRpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0
aW9uOiBjb2x1bW47IGhlaWdodDogMjAwcHg7Ij4KKyAgICA8ZGl2IGlkPSJ0OC1pdGVtIiBzdHls
ZT0iaGVpZ2h0OiA1MCU7Ij4KKyAgICAgICAgPGRpdiBjbGFzcz0iZ3JlZW4iIGlkPSJ0OCIgc3R5
bGU9InRvcDogNTAlOyI+PC9kaXY+CisgICAgPC9kaXY+Cis8L2Rpdj4KKworPCEtLSA5LiBQZXJj
ZW50YWdlIGhlaWdodCBjaGlsZCBpbnNpZGUgc3RyZXRjaGVkIGZsZXggaXRlbSwgdG9wOiA1MCUg
LS0+Cis8ZGl2IHN0eWxlPSJkaXNwbGF5OiBmbGV4OyBoZWlnaHQ6IDIwMHB4OyI+CisgICAgPGRp
dj4KKyAgICAgICAgPGRpdiBpZD0idDktaXRlbSIgc3R5bGU9ImhlaWdodDogNTAlOyI+CisgICAg
ICAgICAgICA8ZGl2IGNsYXNzPSJncmVlbiIgaWQ9InQ5IiBzdHlsZT0idG9wOiA1MCU7Ij48L2Rp
dj4KKyAgICAgICAgPC9kaXY+CisgICAgPC9kaXY+Cis8L2Rpdj4KKworPHNjcmlwdD4KK2Z1bmN0
aW9uIG9mZnNldEZyb21JdGVtKGdyZWVuSWQsIGl0ZW1JZCkgeworICAgIHZhciBncmVlbiA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKGdyZWVuSWQpOworICAgIHZhciBpdGVtID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoaXRlbUlkKTsKKyAgICByZXR1cm4gZ3JlZW4uZ2V0Qm91bmRpbmdDbGll
bnRSZWN0KCkudG9wIC0gaXRlbS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS50b3A7Cit9CisKK3Rl
c3QoZnVuY3Rpb24oKSB7CisgICAgYXNzZXJ0X2VxdWFscyhvZmZzZXRGcm9tSXRlbSgndDEnLCAn
dDEtaXRlbScpLCAxMDApOworfSwgJ1JvdyBmbGV4LCBzdHJldGNoZWQgaXRlbSwgdG9wOiA1MCUn
KTsKKwordGVzdChmdW5jdGlvbigpIHsKKyAgICBhc3NlcnRfZXF1YWxzKG9mZnNldEZyb21JdGVt
KCd0MicsICd0Mi1pdGVtJyksIDApOworfSwgJ1JvdyBmbGV4LCBhbGlnbi1zZWxmOiBmbGV4LXN0
YXJ0LCB0b3A6IDUwJScpOworCit0ZXN0KGZ1bmN0aW9uKCkgeworICAgIGFzc2VydF9lcXVhbHMo
b2Zmc2V0RnJvbUl0ZW0oJ3QzJywgJ3QzLWl0ZW0nKSwgNTApOworfSwgJ0NvbHVtbiBmbGV4LCBm
bGV4LWdyb3cgaXRlbSwgdG9wOiA1MCUnKTsKKwordGVzdChmdW5jdGlvbigpIHsKKyAgICBhc3Nl
cnRfZXF1YWxzKG9mZnNldEZyb21JdGVtKCd0NCcsICd0NC1pdGVtJyksIDApOworfSwgJ0NvbHVt
biBmbGV4LCBhdXRvIGhlaWdodCBjb250YWluZXIsIHRvcDogNTAlJyk7CisKK3Rlc3QoZnVuY3Rp
b24oKSB7CisgICAgYXNzZXJ0X2VxdWFscyhvZmZzZXRGcm9tSXRlbSgndDUnLCAndDUtaXRlbScp
LCA1MCk7Cit9LCAnQ29sdW1uIGZsZXgsIGRlZmluaXRlIGZsZXgtYmFzaXMsIHRvcDogNTAlJyk7
CisKK3Rlc3QoZnVuY3Rpb24oKSB7CisgICAgYXNzZXJ0X2VxdWFscyhvZmZzZXRGcm9tSXRlbSgn
dDYnLCAndDYtaXRlbScpLCA1MCk7Cit9LCAnTmVzdGVkIGNvbHVtbiBmbGV4LCB0b3A6IDUwJScp
OworCit0ZXN0KGZ1bmN0aW9uKCkgeworICAgIGFzc2VydF9lcXVhbHMob2Zmc2V0RnJvbUl0ZW0o
J3Q3JywgJ3Q3LWl0ZW0nKSwgNTApOworfSwgJ1JvdyB0aGVuIGNvbHVtbiBuZXN0aW5nLCB0b3A6
IDUwJScpOworCit0ZXN0KGZ1bmN0aW9uKCkgeworICAgIGFzc2VydF9lcXVhbHMob2Zmc2V0RnJv
bUl0ZW0oJ3Q4JywgJ3Q4LWl0ZW0nKSwgNTApOworfSwgJ0ZsZXggaXRlbSB3aXRoIHBlcmNlbnRh
Z2UgaGVpZ2h0LCB0b3A6IDUwJScpOworCit0ZXN0KGZ1bmN0aW9uKCkgeworICAgIGFzc2VydF9l
cXVhbHMob2Zmc2V0RnJvbUl0ZW0oJ3Q5JywgJ3Q5LWl0ZW0nKSwgNTApOworfSwgJ1BlcmNlbnRh
Z2UgaGVpZ2h0IGNoaWxkIGluc2lkZSBzdHJldGNoZWQgZmxleCBpdGVtLCB0b3A6IDUwJScpOwor
PC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9jc3MtcG9zaXRpb24vcG9zaXRpb24tcmVsYXRpdmUtMDE1LWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nz
cy1wb3NpdGlvbi9wb3NpdGlvbi1yZWxhdGl2ZS0wMTUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4uM2ViZjA2OTc3ZTE3Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nz
LXBvc2l0aW9uL3Bvc2l0aW9uLXJlbGF0aXZlLTAxNS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwy
MiBAQAorCitQQVNTIEZpeGVkIGhlaWdodCBjb250YWluaW5nIGJsb2NrLCB0b3A6IDUwJQorUEFT
UyBBdXRvIGhlaWdodCBjb250YWluaW5nIGJsb2NrLCB0b3A6IDUwJQorUEFTUyBQZXJjZW50YWdl
IGhlaWdodCBjb250YWluaW5nIGJsb2NrLCB0b3A6IDUwJQorUEFTUyBPT0Ygd2l0aCBpbXBsaWNp
dCBoZWlnaHQsIHRvcDogNTAlCitQQVNTIEdyaWQgaXRlbSBzdHJldGNoZWQsIHRvcDogNTAlCitQ
QVNTIEdyaWQgaXRlbSB3aXRoIDBweCB0cmFjaywgdG9wOiA1MCUKK1BBU1MgR3JpZCBpdGVtIHdp
dGggYXV0byB0cmFjayAoc3RyZXRjaGVkIHRvIDIwMHB4KSwgdG9wOiA1MCUKK1BBU1MgR3JpZCBp
dGVtIHdpdGggZml4ZWQgMTAwcHggdHJhY2ssIHRvcDogNTAlCitQQVNTIEdyaWQgaXRlbSB3aXRo
IDUwJSB0cmFjaywgdG9wOiA1MCUKK1BBU1MgVW5yZXNvbHZhYmxlIHBlcmNlbnRhZ2UgaGVpZ2h0
ICgxMDAlIG9mIGF1dG8gYm9keSksIHRvcDogNTAlCitQQVNTIFVucmVzb2x2YWJsZSBwZXJjZW50
YWdlIGhlaWdodCB3aXRoIG1pbi1oZWlnaHQsIHRvcDogNTAlCitQQVNTIGZpdC1jb250ZW50IGhl
aWdodCwgdG9wOiA1MCUKK1BBU1MgbWF4LWNvbnRlbnQgaGVpZ2h0LCB0b3A6IDUwJQorUEFTUyBt
aW4tY29udGVudCBoZWlnaHQsIHRvcDogNTAlCitQQVNTIE5lc3RlZCB1bnJlc29sdmFibGUgcGVy
Y2VudGFnZSBoZWlnaHRzLCB0b3A6IDUwJQorUEFTUyBjYWxjKCkgZml4ZWQgaGVpZ2h0LCB0b3A6
IDUwJQorUEFTUyBjYWxjKCkgd2l0aCByZXNvbHZhYmxlIHBlcmNlbnRhZ2UsIHRvcDogNTAlCitQ
QVNTIGNhbGMoKSB3aXRoIHVucmVzb2x2YWJsZSBwZXJjZW50YWdlLCB0b3A6IDUwJQorUEFTUyBz
dHJldGNoIGhlaWdodCwgdG9wOiA1MCUKK1BBU1MgQ2hhaW4gb2YgcmVzb2x2YWJsZSBwZXJjZW50
YWdlcywgdG9wOiA1MCUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXBvc2l0aW9uL3Bvc2l0aW9uLXJlbGF0aXZlLTAxNS5o
dG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nz
LXBvc2l0aW9uL3Bvc2l0aW9uLXJlbGF0aXZlLTAxNS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMC4uNGJjMWI0NGEyZjkxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXBvc2l0aW9u
L3Bvc2l0aW9uLXJlbGF0aXZlLTAxNS5odG1sCkBAIC0wLDAgKzEsMjM2IEBACis8IURPQ1RZUEUg
aHRtbD4KKzx0aXRsZT5DU1MgUG9zaXRpb246IHBlcmNlbnRhZ2UgdG9wIG9uIHJlbGF0aXZlbHkg
cG9zaXRpb25lZCBlbGVtZW50cyB3aXRoIHZhcmlvdXMgY29udGFpbmluZyBibG9jayBoZWlnaHRz
PC90aXRsZT4KKzxsaW5rIHJlbD0iaGVscCIgaHJlZj0iaHR0cHM6Ly9kcmFmdHMuY3Nzd2cub3Jn
L2Nzcy1wb3NpdGlvbi0zLyN2YWxkZWYtdG9wLXBlcmNlbnRhZ2UiPgorPGxpbmsgcmVsPSJoZWxw
IiBocmVmPSJodHRwczovL2RyYWZ0cy5jc3N3Zy5vcmcvY3NzLXNpemluZy0zLyNwZXJjZW50YWdl
LXNpemluZyI+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3Jp
cHQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3Jp
cHQ+Cis8c3R5bGU+Citib2R5IHsKKyAgICBtYXJnaW46IDA7Cit9CisKKy5ncmVlbiB7CisgICAg
d2lkdGg6IDIwcHg7CisgICAgaGVpZ2h0OiAyMHB4OworICAgIGJhY2tncm91bmQ6IGdyZWVuOwor
ICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKK30KKzwvc3R5bGU+CisKKzwhLS0gMS4gRml4ZWQgaGVp
Z2h0IGNvbnRhaW5pbmcgYmxvY2ssIHRvcDogNTAlIC0tPgorPGRpdiBpZD0idDEtY2IiIHN0eWxl
PSJoZWlnaHQ6IDIwMHB4OyI+CisgICAgPGRpdiBjbGFzcz0iZ3JlZW4iIGlkPSJ0MSIgc3R5bGU9
InRvcDogNTAlOyI+PC9kaXY+Cis8L2Rpdj4KKworPCEtLSAyLiBBdXRvIGhlaWdodCBjb250YWlu
aW5nIGJsb2NrLCB0b3A6IDUwJSAtLT4KKzxkaXYgaWQ9InQyLWNiIj4KKyAgICA8ZGl2IGNsYXNz
PSJncmVlbiIgaWQ9InQyIiBzdHlsZT0idG9wOiA1MCU7Ij48L2Rpdj4KKzwvZGl2PgorCis8IS0t
IDMuIFBlcmNlbnRhZ2UgaGVpZ2h0IGNvbnRhaW5pbmcgYmxvY2sgKHBhcmVudCBoYXMgZml4ZWQg
aGVpZ2h0KSwgdG9wOiA1MCUgLS0+Cis8ZGl2IHN0eWxlPSJoZWlnaHQ6IDIwMHB4OyI+CisgICAg
PGRpdiBpZD0idDMtY2IiIHN0eWxlPSJoZWlnaHQ6IDUwJTsiPgorICAgICAgICA8ZGl2IGNsYXNz
PSJncmVlbiIgaWQ9InQzIiBzdHlsZT0idG9wOiA1MCU7Ij48L2Rpdj4KKyAgICA8L2Rpdj4KKzwv
ZGl2PgorCis8IS0tIDQuIE9PRiB3aXRoIGJvdGggaW5zZXRzIChpbXBsaWNpdCBoZWlnaHQpLCB0
b3A6IDUwJSAtLT4KKzxkaXYgc3R5bGU9InBvc2l0aW9uOiByZWxhdGl2ZTsgaGVpZ2h0OiAyMDBw
eDsiPgorICAgIDxkaXYgaWQ9InQ0LWNiIiBzdHlsZT0icG9zaXRpb246IGFic29sdXRlOyB0b3A6
IDA7IGJvdHRvbTogMDsgbGVmdDogMDsgcmlnaHQ6IDA7Ij4KKyAgICAgICAgPGRpdiBjbGFzcz0i
Z3JlZW4iIGlkPSJ0NCIgc3R5bGU9InRvcDogNTAlOyI+PC9kaXY+CisgICAgPC9kaXY+Cis8L2Rp
dj4KKworPCEtLSA1LiBHcmlkIGl0ZW0gc3RyZXRjaGVkLCB0b3A6IDUwJSAtLT4KKzxkaXYgc3R5
bGU9ImRpc3BsYXk6IGdyaWQ7IGhlaWdodDogMjAwcHg7Ij4KKyAgICA8ZGl2IGlkPSJ0NS1jYiI+
CisgICAgICAgIDxkaXYgY2xhc3M9ImdyZWVuIiBpZD0idDUiIHN0eWxlPSJ0b3A6IDUwJTsiPjwv
ZGl2PgorICAgIDwvZGl2PgorPC9kaXY+CisKKzwhLS0gNi4gR3JpZCBpdGVtIHdpdGggMHB4IHRy
YWNrLCB0b3A6IDUwJSAtLT4KKzxkaXYgc3R5bGU9ImRpc3BsYXk6IGdyaWQ7IGdyaWQtdGVtcGxh
dGUtcm93czogMHB4OyBoZWlnaHQ6IDIwMHB4OyI+CisgICAgPGRpdiBpZD0idDYtY2IiPgorICAg
ICAgICA8ZGl2IGNsYXNzPSJncmVlbiIgaWQ9InQ2IiBzdHlsZT0idG9wOiA1MCU7Ij48L2Rpdj4K
KyAgICA8L2Rpdj4KKzwvZGl2PgorCis8IS0tIDcuIEdyaWQgaXRlbSB3aXRoIGF1dG8gdHJhY2ss
IHRvcDogNTAlIC0tPgorPGRpdiBzdHlsZT0iZGlzcGxheTogZ3JpZDsgaGVpZ2h0OiAyMDBweDsi
PgorICAgIDxkaXYgaWQ9InQ3LWNiIiBzdHlsZT0iaGVpZ2h0OiBhdXRvOyI+CisgICAgICAgIDxk
aXYgY2xhc3M9ImdyZWVuIiBpZD0idDciIHN0eWxlPSJ0b3A6IDUwJTsiPjwvZGl2PgorICAgIDwv
ZGl2PgorPC9kaXY+CisKKzwhLS0gOC4gR3JpZCBpdGVtIHdpdGggZml4ZWQgdHJhY2ssIHRvcDog
NTAlIC0tPgorPGRpdiBzdHlsZT0iZGlzcGxheTogZ3JpZDsgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAx
MDBweDsgaGVpZ2h0OiAyMDBweDsiPgorICAgIDxkaXYgaWQ9InQ4LWNiIj4KKyAgICAgICAgPGRp
diBjbGFzcz0iZ3JlZW4iIGlkPSJ0OCIgc3R5bGU9InRvcDogNTAlOyI+PC9kaXY+CisgICAgPC9k
aXY+Cis8L2Rpdj4KKworPCEtLSA5LiBHcmlkIGl0ZW0gd2l0aCBwZXJjZW50YWdlIHRyYWNrLCB0
b3A6IDUwJSAtLT4KKzxkaXYgc3R5bGU9ImRpc3BsYXk6IGdyaWQ7IGdyaWQtdGVtcGxhdGUtcm93
czogNTAlOyBoZWlnaHQ6IDIwMHB4OyI+CisgICAgPGRpdiBpZD0idDktY2IiPgorICAgICAgICA8
ZGl2IGNsYXNzPSJncmVlbiIgaWQ9InQ5IiBzdHlsZT0idG9wOiA1MCU7Ij48L2Rpdj4KKyAgICA8
L2Rpdj4KKzwvZGl2PgorCis8IS0tIDEwLiBQZXJjZW50YWdlIGhlaWdodCBhZ2FpbnN0IGF1dG8t
aGVpZ2h0IGJvZHksIHRvcDogNTAlIC0tPgorPGRpdiBpZD0idDEwLWNiIiBzdHlsZT0iaGVpZ2h0
OiAxMDAlOyI+CisgICAgPGRpdiBjbGFzcz0iZ3JlZW4iIGlkPSJ0MTAiIHN0eWxlPSJ0b3A6IDUw
JTsiPjwvZGl2PgorPC9kaXY+CisKKzwhLS0gMTEuIFBlcmNlbnRhZ2UgaGVpZ2h0IGFnYWluc3Qg
YXV0byBwYXJlbnQgKHVucmVzb2x2YWJsZSksIHRvcDogNTAlIC0tPgorPGRpdj4KKyAgICA8ZGl2
IGlkPSJ0MTEtY2IiIHN0eWxlPSJoZWlnaHQ6IDUwJTsgbWluLWhlaWdodDogMjAwcHg7Ij4KKyAg
ICAgICAgPGRpdiBjbGFzcz0iZ3JlZW4iIGlkPSJ0MTEiIHN0eWxlPSJ0b3A6IDUwJTsiPjwvZGl2
PgorICAgIDwvZGl2PgorPC9kaXY+CisKKzwhLS0gMTIuIGZpdC1jb250ZW50IGhlaWdodCwgdG9w
OiA1MCUgLS0+Cis8ZGl2IGlkPSJ0MTItY2IiIHN0eWxlPSJoZWlnaHQ6IGZpdC1jb250ZW50OyBt
aW4taGVpZ2h0OiAyMDBweDsiPgorICAgIDxkaXYgY2xhc3M9ImdyZWVuIiBpZD0idDEyIiBzdHls
ZT0idG9wOiA1MCU7Ij48L2Rpdj4KKzwvZGl2PgorCis8IS0tIDEzLiBtYXgtY29udGVudCBoZWln
aHQsIHRvcDogNTAlIC0tPgorPGRpdiBpZD0idDEzLWNiIiBzdHlsZT0iaGVpZ2h0OiBtYXgtY29u
dGVudDsgbWluLWhlaWdodDogMjAwcHg7Ij4KKyAgICA8ZGl2IGNsYXNzPSJncmVlbiIgaWQ9InQx
MyIgc3R5bGU9InRvcDogNTAlOyI+PC9kaXY+Cis8L2Rpdj4KKworPCEtLSAxNC4gbWluLWNvbnRl
bnQgaGVpZ2h0LCB0b3A6IDUwJSAtLT4KKzxkaXYgaWQ9InQxNC1jYiIgc3R5bGU9ImhlaWdodDog
bWluLWNvbnRlbnQ7IG1pbi1oZWlnaHQ6IDIwMHB4OyI+CisgICAgPGRpdiBjbGFzcz0iZ3JlZW4i
IGlkPSJ0MTQiIHN0eWxlPSJ0b3A6IDUwJTsiPjwvZGl2PgorPC9kaXY+CisKKzwhLS0gMTUuIE5l
c3RlZCB1bnJlc29sdmFibGUgcGVyY2VudGFnZXMsIHRvcDogNTAlIC0tPgorPGRpdj4KKyAgICA8
ZGl2IHN0eWxlPSJoZWlnaHQ6IDUwJTsiPgorICAgICAgICA8ZGl2IGlkPSJ0MTUtY2IiIHN0eWxl
PSJoZWlnaHQ6IDUwJTsgbWluLWhlaWdodDogMjAwcHg7Ij4KKyAgICAgICAgICAgIDxkaXYgY2xh
c3M9ImdyZWVuIiBpZD0idDE1IiBzdHlsZT0idG9wOiA1MCU7Ij48L2Rpdj4KKyAgICAgICAgPC9k
aXY+CisgICAgPC9kaXY+Cis8L2Rpdj4KKworPCEtLSAxNi4gY2FsYygpIGZpeGVkIGhlaWdodCwg
dG9wOiA1MCUgLS0+Cis8ZGl2IGlkPSJ0MTYtY2IiIHN0eWxlPSJoZWlnaHQ6IGNhbGMoMTAwcHgg
KyAxMDBweCk7Ij4KKyAgICA8ZGl2IGNsYXNzPSJncmVlbiIgaWQ9InQxNiIgc3R5bGU9InRvcDog
NTAlOyI+PC9kaXY+Cis8L2Rpdj4KKworPCEtLSAxNy4gY2FsYygpIHdpdGggcmVzb2x2YWJsZSBw
ZXJjZW50YWdlLCB0b3A6IDUwJSAtLT4KKzxkaXYgc3R5bGU9ImhlaWdodDogMjAwcHg7Ij4KKyAg
ICA8ZGl2IGlkPSJ0MTctY2IiIHN0eWxlPSJoZWlnaHQ6IGNhbGMoNTAlICsgMHB4KTsiPgorICAg
ICAgICA8ZGl2IGNsYXNzPSJncmVlbiIgaWQ9InQxNyIgc3R5bGU9InRvcDogNTAlOyI+PC9kaXY+
CisgICAgPC9kaXY+Cis8L2Rpdj4KKworPCEtLSAxOC4gY2FsYygpIHdpdGggdW5yZXNvbHZhYmxl
IHBlcmNlbnRhZ2UsIHRvcDogNTAlIC0tPgorPGRpdj4KKyAgICA8ZGl2IGlkPSJ0MTgtY2IiIHN0
eWxlPSJoZWlnaHQ6IGNhbGMoNTAlICsgMHB4KTsgbWluLWhlaWdodDogMjAwcHg7Ij4KKyAgICAg
ICAgPGRpdiBjbGFzcz0iZ3JlZW4iIGlkPSJ0MTgiIHN0eWxlPSJ0b3A6IDUwJTsiPjwvZGl2Pgor
ICAgIDwvZGl2PgorPC9kaXY+CisKKzwhLS0gMTkuIHN0cmV0Y2ggaGVpZ2h0LCB0b3A6IDUwJSAt
LT4KKzxkaXYgc3R5bGU9ImhlaWdodDogMjAwcHg7Ij4KKyAgICA8ZGl2IGlkPSJ0MTktY2IiIHN0
eWxlPSJoZWlnaHQ6IHN0cmV0Y2g7Ij4KKyAgICAgICAgPGRpdiBjbGFzcz0iZ3JlZW4iIGlkPSJ0
MTkiIHN0eWxlPSJ0b3A6IDUwJTsiPjwvZGl2PgorICAgIDwvZGl2PgorPC9kaXY+CisKKzwhLS0g
MjAuIENoYWluIG9mIHBlcmNlbnRhZ2VzIHJlc29sdmluZyB0byBmaXhlZCBoZWlnaHQsIHRvcDog
NTAlIC0tPgorPGRpdiBzdHlsZT0iaGVpZ2h0OiAyMDBweDsiPgorICAgIDxkaXYgc3R5bGU9Imhl
aWdodDogNTAlOyI+CisgICAgICAgIDxkaXYgaWQ9InQyMC1jYiIgc3R5bGU9ImhlaWdodDogNTAl
OyI+CisgICAgICAgICAgICA8ZGl2IGNsYXNzPSJncmVlbiIgaWQ9InQyMCIgc3R5bGU9InRvcDog
NTAlOyI+PC9kaXY+CisgICAgICAgIDwvZGl2PgorICAgIDwvZGl2PgorPC9kaXY+CisKKzxzY3Jp
cHQ+CitmdW5jdGlvbiBvZmZzZXRGcm9tUGFyZW50KGdyZWVuSWQsIHBhcmVudElkKSB7CisgICAg
dmFyIGdyZWVuID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoZ3JlZW5JZCk7CisgICAgdmFyIHBh
cmVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHBhcmVudElkKTsKKyAgICByZXR1cm4gZ3Jl
ZW4uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkudG9wIC0gcGFyZW50LmdldEJvdW5kaW5nQ2xpZW50
UmVjdCgpLnRvcDsKK30KKwordGVzdChmdW5jdGlvbigpIHsKKyAgICBhc3NlcnRfZXF1YWxzKG9m
ZnNldEZyb21QYXJlbnQoJ3QxJywgJ3QxLWNiJyksIDEwMCk7Cit9LCAnRml4ZWQgaGVpZ2h0IGNv
bnRhaW5pbmcgYmxvY2ssIHRvcDogNTAlJyk7CisKK3Rlc3QoZnVuY3Rpb24oKSB7CisgICAgYXNz
ZXJ0X2VxdWFscyhvZmZzZXRGcm9tUGFyZW50KCd0MicsICd0Mi1jYicpLCAwKTsKK30sICdBdXRv
IGhlaWdodCBjb250YWluaW5nIGJsb2NrLCB0b3A6IDUwJScpOworCit0ZXN0KGZ1bmN0aW9uKCkg
eworICAgIGFzc2VydF9lcXVhbHMob2Zmc2V0RnJvbVBhcmVudCgndDMnLCAndDMtY2InKSwgNTAp
OworfSwgJ1BlcmNlbnRhZ2UgaGVpZ2h0IGNvbnRhaW5pbmcgYmxvY2ssIHRvcDogNTAlJyk7CisK
K3Rlc3QoZnVuY3Rpb24oKSB7CisgICAgYXNzZXJ0X2VxdWFscyhvZmZzZXRGcm9tUGFyZW50KCd0
NCcsICd0NC1jYicpLCAxMDApOworfSwgJ09PRiB3aXRoIGltcGxpY2l0IGhlaWdodCwgdG9wOiA1
MCUnKTsKKwordGVzdChmdW5jdGlvbigpIHsKKyAgICBhc3NlcnRfZXF1YWxzKG9mZnNldEZyb21Q
YXJlbnQoJ3Q1JywgJ3Q1LWNiJyksIDEwMCk7Cit9LCAnR3JpZCBpdGVtIHN0cmV0Y2hlZCwgdG9w
OiA1MCUnKTsKKwordGVzdChmdW5jdGlvbigpIHsKKyAgICBhc3NlcnRfZXF1YWxzKG9mZnNldEZy
b21QYXJlbnQoJ3Q2JywgJ3Q2LWNiJyksIDApOworfSwgJ0dyaWQgaXRlbSB3aXRoIDBweCB0cmFj
aywgdG9wOiA1MCUnKTsKKwordGVzdChmdW5jdGlvbigpIHsKKyAgICBhc3NlcnRfZXF1YWxzKG9m
ZnNldEZyb21QYXJlbnQoJ3Q3JywgJ3Q3LWNiJyksIDEwMCk7Cit9LCAnR3JpZCBpdGVtIHdpdGgg
YXV0byB0cmFjayAoc3RyZXRjaGVkIHRvIDIwMHB4KSwgdG9wOiA1MCUnKTsKKwordGVzdChmdW5j
dGlvbigpIHsKKyAgICBhc3NlcnRfZXF1YWxzKG9mZnNldEZyb21QYXJlbnQoJ3Q4JywgJ3Q4LWNi
JyksIDUwKTsKK30sICdHcmlkIGl0ZW0gd2l0aCBmaXhlZCAxMDBweCB0cmFjaywgdG9wOiA1MCUn
KTsKKwordGVzdChmdW5jdGlvbigpIHsKKyAgICBhc3NlcnRfZXF1YWxzKG9mZnNldEZyb21QYXJl
bnQoJ3Q5JywgJ3Q5LWNiJyksIDUwKTsKK30sICdHcmlkIGl0ZW0gd2l0aCA1MCUgdHJhY2ssIHRv
cDogNTAlJyk7CisKK3Rlc3QoZnVuY3Rpb24oKSB7CisgICAgYXNzZXJ0X2VxdWFscyhvZmZzZXRG
cm9tUGFyZW50KCd0MTAnLCAndDEwLWNiJyksIDApOworfSwgJ1VucmVzb2x2YWJsZSBwZXJjZW50
YWdlIGhlaWdodCAoMTAwJSBvZiBhdXRvIGJvZHkpLCB0b3A6IDUwJScpOworCit0ZXN0KGZ1bmN0
aW9uKCkgeworICAgIGFzc2VydF9lcXVhbHMob2Zmc2V0RnJvbVBhcmVudCgndDExJywgJ3QxMS1j
YicpLCAwKTsKK30sICdVbnJlc29sdmFibGUgcGVyY2VudGFnZSBoZWlnaHQgd2l0aCBtaW4taGVp
Z2h0LCB0b3A6IDUwJScpOworCit0ZXN0KGZ1bmN0aW9uKCkgeworICAgIGFzc2VydF9lcXVhbHMo
b2Zmc2V0RnJvbVBhcmVudCgndDEyJywgJ3QxMi1jYicpLCAwKTsKK30sICdmaXQtY29udGVudCBo
ZWlnaHQsIHRvcDogNTAlJyk7CisKK3Rlc3QoZnVuY3Rpb24oKSB7CisgICAgYXNzZXJ0X2VxdWFs
cyhvZmZzZXRGcm9tUGFyZW50KCd0MTMnLCAndDEzLWNiJyksIDApOworfSwgJ21heC1jb250ZW50
IGhlaWdodCwgdG9wOiA1MCUnKTsKKwordGVzdChmdW5jdGlvbigpIHsKKyAgICBhc3NlcnRfZXF1
YWxzKG9mZnNldEZyb21QYXJlbnQoJ3QxNCcsICd0MTQtY2InKSwgMCk7Cit9LCAnbWluLWNvbnRl
bnQgaGVpZ2h0LCB0b3A6IDUwJScpOworCit0ZXN0KGZ1bmN0aW9uKCkgeworICAgIGFzc2VydF9l
cXVhbHMob2Zmc2V0RnJvbVBhcmVudCgndDE1JywgJ3QxNS1jYicpLCAwKTsKK30sICdOZXN0ZWQg
dW5yZXNvbHZhYmxlIHBlcmNlbnRhZ2UgaGVpZ2h0cywgdG9wOiA1MCUnKTsKKwordGVzdChmdW5j
dGlvbigpIHsKKyAgICBhc3NlcnRfZXF1YWxzKG9mZnNldEZyb21QYXJlbnQoJ3QxNicsICd0MTYt
Y2InKSwgMTAwKTsKK30sICdjYWxjKCkgZml4ZWQgaGVpZ2h0LCB0b3A6IDUwJScpOworCit0ZXN0
KGZ1bmN0aW9uKCkgeworICAgIGFzc2VydF9lcXVhbHMob2Zmc2V0RnJvbVBhcmVudCgndDE3Jywg
J3QxNy1jYicpLCA1MCk7Cit9LCAnY2FsYygpIHdpdGggcmVzb2x2YWJsZSBwZXJjZW50YWdlLCB0
b3A6IDUwJScpOworCit0ZXN0KGZ1bmN0aW9uKCkgeworICAgIGFzc2VydF9lcXVhbHMob2Zmc2V0
RnJvbVBhcmVudCgndDE4JywgJ3QxOC1jYicpLCAwKTsKK30sICdjYWxjKCkgd2l0aCB1bnJlc29s
dmFibGUgcGVyY2VudGFnZSwgdG9wOiA1MCUnKTsKKwordGVzdChmdW5jdGlvbigpIHsKKyAgICBh
c3NlcnRfZXF1YWxzKG9mZnNldEZyb21QYXJlbnQoJ3QxOScsICd0MTktY2InKSwgMTAwKTsKK30s
ICdzdHJldGNoIGhlaWdodCwgdG9wOiA1MCUnKTsKKwordGVzdChmdW5jdGlvbigpIHsKKyAgICBh
c3NlcnRfZXF1YWxzKG9mZnNldEZyb21QYXJlbnQoJ3QyMCcsICd0MjAtY2InKSwgMjUpOworfSwg
J0NoYWluIG9mIHJlc29sdmFibGUgcGVyY2VudGFnZXMsIHRvcDogNTAlJyk7Cis8L3NjcmlwdD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>479269</attachid>
            <date>2026-04-23 08:04:12 -0700</date>
            <delta_ts>2026-04-23 13:22:59 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-312944-20260423080411.patch</filename>
            <type>text/plain</type>
            <size>35080</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">RnJvbSA0MjA3NmRkMTg1MjM5MTY1N2RhMmVmOWQyOGY3NmI1YzIyN2IzZTUzIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbGFuIEJhcmFkbGF5IDx6YWxhbkBhcHBsZS5jb20+CkRhdGU6
IFR1ZSwgMjEgQXByIDIwMjYgMTg6MDE6MDkgLTA3MDAKU3ViamVjdDogW1BBVENIXSBbRmxleF0g
QXZvaWQgZXhwZW5zaXZlIHBlcmNlbnRhZ2UgaGVpZ2h0IHdhbGsgd2hlbiByZXNvbHZpbmcKIHJl
bGF0aXZlIHBvc2l0aW9uIG9mZnNldHMgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTMxMjk0NAoKUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCgpXaGVuIGEgcmVsYXRp
dmVseSBwb3NpdGlvbmVkIGVsZW1lbnQgaGFzIGEgcGVyY2VudGFnZSB0b3Agb3IgYm90dG9tIChl
LmcuCnRvcDogMTAlKSwgd2UgbmVlZCB0byBrbm93IGlmIGl0cyBjb250YWluaW5nIGJsb2NrIGhh
cyBhIGRlZmluaXRlIGhlaWdodC4KVGhlIGV4aXN0aW5nIGNoZWNrIChoYXNBdXRvSGVpZ2h0T3JD
b250YWluaW5nQmxvY2tXaXRoQXV0b0hlaWdodCkgaW4gZGVlcGx5Cm5lc3RlZCBjb2x1bW4gZmxl
eCBjb250ZW50IGNvdWxkIHRyaWdnZXIgYW4gZXhwZW5zaXZlIE8objIpIHdhbGsuCgpUaGUga2V5
IGluc2lnaHQgaXMgdGhhdCByZWxhdGl2ZVBvc2l0aW9uT2Zmc2V0IHJ1bnMgYWZ0ZXIgbGF5b3V0
IC0tIGl0IG9ubHkKYWZmZWN0cyB2aXN1YWwgcG9zaXRpb25pbmcgKHBhaW50aW5nLCBoaXQgdGVz
dGluZyksIG5vdCBsYXlvdXQgZ2VvbWV0cnkuIER1cmluZwpsYXlvdXQsIHRoZSBleHBlbnNpdmUg
d2FsayBpcyBuZWVkZWQgYmVjYXVzZSBmbGV4IGl0ZW0gc2l6ZXMgYXJlbid0IGNvbXB1dGVkIHll
dAphbmQgbGF5b3V0LXBoYXNlIGNoZWNrcyBnYXRlIHdoZW4gaXQncyBzYWZlIHRvIHJlc29sdmUg
cGVyY2VudGFnZXMuIEJ1dCBhZnRlcgpsYXlvdXQsIGFsbCBzaXplcyBhcmUgZmluYWwuIFdlIGNh
biBhbnN3ZXIgImlzIHRoaXMgaGVpZ2h0IGRlZmluaXRlPyIgd2l0aApzaW1wbGUgc3R5bGUgY2hl
Y2tzIGluc3RlYWQgb2YgcmUtd2Fsa2luZyB0aGUgdHJlZS4KClRoZSBuZXcgaGFzRGVmaW5pdGVI
ZWlnaHRCeVN0eWxlIGZ1bmN0aW9uIGNoZWNrcyA5LjggcnVsZXMgZGlyZWN0bHk6Ci0gUnVsZSAz
OiBzdHJldGNoZWQgY3Jvc3MtYXhpcyBpdGVtcyBoYXZlIGRlZmluaXRlIGhlaWdodAotIFJ1bGUg
MjogZGVmaW5pdGUgZmxleC1iYXNpcyBtYWtlcyBwb3N0LWZsZXhpbmcgc2l6ZSBkZWZpbml0ZQot
IFJ1bGUgMTogZGVmaW5pdGUgY29udGFpbmVyIG1haW4gc2l6ZSBtYWtlcyBhbGwgaXRlbXMgZGVm
aW5pdGUgKHJlY3Vyc2UpCkZvciBub24tZmxleCBjYXNlcyBpdCBjaGVja3Mgc3R5bGUgdmFsdWVz
IChhdXRvLCBwZXJjZW50YWdlLCBzdHJldGNoLCBpbnRyaW5zaWMga2V5d29yZHMpCmFuZCB3YWxr
cyB0aGUgcGVyY2VudGFnZSBjaGFpbiB3aGVuIG5lZWRlZCAtLSBhbGwgTygxKSBwZXIgbGV2ZWwu
CgoqIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1m
bGV4Ym94L3BlcmNlbnRhZ2Utc2l6ZS1xdWlya3MtMDA0LWV4cGVjdGVkLnR4dDogQWRkZWQuCiog
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZsZXhi
b3gvcGVyY2VudGFnZS1zaXplLXF1aXJrcy0wMDQuaHRtbDogQWRkZWQuCiogTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZsZXhib3gvcGVyY2VudGFn
ZS1zaXplLXF1aXJrcy0wMDUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKiBMYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZmxleGJveC9wZXJjZW50YWdlLXNp
emUtcXVpcmtzLTAwNS5odG1sOiBBZGRlZC4KKiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZmxleGJveC9wb3NpdGlvbi1yZWxhdGl2ZS1wZXJjZW50
YWdlLXRvcC0wMDQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZmxleGJveC9wb3NpdGlvbi1yZWxhdGl2ZS1w
ZXJjZW50YWdlLXRvcC0wMDQuaHRtbDogQWRkZWQuCiogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZsZXhib3gvcG9zaXRpb24tcmVsYXRpdmUtc3Ry
ZXRjaC1oZWlnaHQtMDAxLWV4cGVjdGVkLnR4dDogQWRkZWQuCiogTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZsZXhib3gvcG9zaXRpb24tcmVsYXRp
dmUtc3RyZXRjaC1oZWlnaHQtMDAxLmh0bWw6IEFkZGVkLgoqIExheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1wb3NpdGlvbi9wb3NpdGlvbi1yZWxhdGl2
ZS0wMTUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtcG9zaXRpb24vcG9zaXRpb24tcmVsYXRpdmUtMDE1Lmh0
bWw6IEFkZGVkLgoqIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hNb2RlbE9iamVj
dC5jcHA6CihXZWJDb3JlOjpoYXNEZWZpbml0ZUhlaWdodEJ5U3R5bGUpOgooV2ViQ29yZTo6UmVu
ZGVyQm94TW9kZWxPYmplY3Q6OnJlbGF0aXZlUG9zaXRpb25PZmZzZXQgY29uc3QpOgoqIFNvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGbGV4aWJsZUJveC5oOgotLS0KIC4uLi9yZW5kZXJp
bmcvUmVuZGVyQm94TW9kZWxPYmplY3QuY3BwICAgICAgICB8ICA1NSArKystCiBTb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyRmxleGlibGVCb3guaCAgfCAgIDYgKy0KIC4uLi9wZXJjZW50
YWdlLXNpemUtcXVpcmtzLTAwNC1leHBlY3RlZC50eHQgICB8ICAgNiArCiAuLi4vcGVyY2VudGFn
ZS1zaXplLXF1aXJrcy0wMDQuaHRtbCAgICAgICAgICAgfCAgNjkgKysrKysKIC4uLi9wZXJjZW50
YWdlLXNpemUtcXVpcmtzLTAwNS1leHBlY3RlZC50eHQgICB8ICAgMyArCiAuLi4vcGVyY2VudGFn
ZS1zaXplLXF1aXJrcy0wMDUuaHRtbCAgICAgICAgICAgfCAgMjcgKysKIC4uLm4tcmVsYXRpdmUt
cGVyY2VudGFnZS10b3AtMDA0LWV4cGVjdGVkLnR4dCB8ICAxMSArCiAuLi4vcG9zaXRpb24tcmVs
YXRpdmUtcGVyY2VudGFnZS10b3AtMDA0Lmh0bWwgfCAxMzYgKysrKysrKysrKwogLi4ubi1yZWxh
dGl2ZS1zdHJldGNoLWhlaWdodC0wMDEtZXhwZWN0ZWQudHh0IHwgICA2ICsKIC4uLi9wb3NpdGlv
bi1yZWxhdGl2ZS1zdHJldGNoLWhlaWdodC0wMDEuaHRtbCB8ICA3NSArKysrKysKIC4uLi9wb3Np
dGlvbi1yZWxhdGl2ZS0wMTUtZXhwZWN0ZWQudHh0ICAgICAgICB8ICAyMiArKwogLi4uL2Nzcy1w
b3NpdGlvbi9wb3NpdGlvbi1yZWxhdGl2ZS0wMTUuaHRtbCAgIHwgMjM2ICsrKysrKysrKysrKysr
KysrKwogMTIgZmlsZXMgY2hhbmdlZCwgNjQ4IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0p
CiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3MvY3NzLWZsZXhib3gvcGVyY2VudGFnZS1zaXplLXF1aXJrcy0wMDQtZXhwZWN0
ZWQudHh0CiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZsZXhib3gvcGVyY2VudGFnZS1zaXplLXF1aXJrcy0wMDQu
aHRtbAogY3JlYXRlIG1vZGUgMTAwNjQ0IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL2Nzcy1mbGV4Ym94L3BlcmNlbnRhZ2Utc2l6ZS1xdWlya3MtMDA1LWV4
cGVjdGVkLnR4dAogY3JlYXRlIG1vZGUgMTAwNjQ0IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1mbGV4Ym94L3BlcmNlbnRhZ2Utc2l6ZS1xdWlya3Mt
MDA1Lmh0bWwKIGNyZWF0ZSBtb2RlIDEwMDY0NCBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZmxleGJveC9wb3NpdGlvbi1yZWxhdGl2ZS1wZXJjZW50
YWdlLXRvcC0wMDQtZXhwZWN0ZWQudHh0CiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZsZXhib3gvcG9zaXRpb24t
cmVsYXRpdmUtcGVyY2VudGFnZS10b3AtMDA0Lmh0bWwKIGNyZWF0ZSBtb2RlIDEwMDY0NCBMYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZmxleGJveC9w
b3NpdGlvbi1yZWxhdGl2ZS1zdHJldGNoLWhlaWdodC0wMDEtZXhwZWN0ZWQudHh0CiBjcmVhdGUg
bW9kZSAxMDA2NDQgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9j
c3MvY3NzLWZsZXhib3gvcG9zaXRpb24tcmVsYXRpdmUtc3RyZXRjaC1oZWlnaHQtMDAxLmh0bWwK
IGNyZWF0ZSBtb2RlIDEwMDY0NCBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2Nzcy9jc3MtcG9zaXRpb24vcG9zaXRpb24tcmVsYXRpdmUtMDE1LWV4cGVjdGVkLnR4
dAogY3JlYXRlIG1vZGUgMTAwNjQ0IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL2Nzcy1wb3NpdGlvbi9wb3NpdGlvbi1yZWxhdGl2ZS0wMTUuaHRtbAoKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuY3BwCmlu
ZGV4IDdmNTYzMzZkYjk1MS4uNTQ0MjA3M2I1NmQyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5jcHAKQEAgLTMwOSw2ICszMDksNTkgQEAg
RGVjb2RpbmdNb2RlIFJlbmRlckJveE1vZGVsT2JqZWN0OjpkZWNvZGluZ01vZGVGb3JJbWFnZURy
YXcoY29uc3QgSW1hZ2UmIGltYWdlLAogICAgIHJldHVybiBkZWZhdWx0RGVjb2RpbmdNb2RlKCk7
CiB9CiAKK3N0YXRpYyBib29sIGhhc0RlZmluaXRlSGVpZ2h0QnlTdHlsZShjb25zdCBSZW5kZXJC
bG9jayYgY29udGFpbmluZ0Jsb2NrKQoreworICAgIC8vIENoZWNrcyB3aGV0aGVyIHRoZSBjb250
YWluaW5nIGJsb2NrIGhhcyBhIGRlZmluaXRlIGhlaWdodCBmb3IgcmVzb2x2aW5nCisgICAgLy8g
cGVyY2VudGFnZSB0b3AvYm90dG9tIG9uIHJlbGF0aXZlbHkgcG9zaXRpb25lZCBlbGVtZW50cy4g
VGhpcyBpcyBhCisgICAgLy8gc3R5bGUtb25seSBhbHRlcm5hdGl2ZSB0byBoYXNBdXRvSGVpZ2h0
T3JDb250YWluaW5nQmxvY2tXaXRoQXV0b0hlaWdodAorICAgIC8vIHRoYXQgYXZvaWRzIHRoZSBl
eHBlbnNpdmUgY29tcHV0ZVBlcmNlbnRhZ2VMb2dpY2FsSGVpZ2h0IHJlY3Vyc2lvbgorICAgIC8v
IHRyaWdnZXJlZCBieSBjYW5Vc2VGbGV4SXRlbUZvclBlcmNlbnRhZ2VSZXNvbHV0aW9uIGluIG5l
c3RlZCBmbGV4IGNvbnRlbnQuCisgICAgaWYgKGlzPFJlbmRlclZpZXc+KGNvbnRhaW5pbmdCbG9j
aykgfHwgY29udGFpbmluZ0Jsb2NrLnN0cmV0Y2hlc1RvVmlld3BvcnQoKSkKKyAgICAgICAgcmV0
dXJuIHRydWU7CisKKyAgICBpZiAoaXNPdXRPZkZsb3dQb3NpdGlvbmVkV2l0aEltcGxpY2l0SGVp
Z2h0KGNvbnRhaW5pbmdCbG9jaykpCisgICAgICAgIHJldHVybiB0cnVlOworCisgICAgaWYgKGNv
bnRhaW5pbmdCbG9jay5pc0dyaWRJdGVtKCkgJiYgY29udGFpbmluZ0Jsb2NrLmdyaWRBcmVhQ29u
dGVudExvZ2ljYWxIZWlnaHQoKSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICBpZiAoY29u
dGFpbmluZ0Jsb2NrLmlzRmxleEl0ZW0oKSkgeworICAgICAgICBhdXRvJiBmbGV4Q29udGFpbmVy
ID0gZG93bmNhc3Q8UmVuZGVyRmxleGlibGVCb3g+KCpjb250YWluaW5nQmxvY2sucGFyZW50KCkp
OworICAgICAgICAvLyDCpzkuOCBydWxlIDM6IHN0cmV0Y2hlZCBjcm9zcy1heGlzIGl0ZW1zIGhh
dmUgZGVmaW5pdGUgY3Jvc3Mgc2l6ZS4KKyAgICAgICAgaWYgKGZsZXhDb250YWluZXIubWFpbkF4
aXNJc0ZsZXhJdGVtSW5saW5lQXhpcyhjb250YWluaW5nQmxvY2spKQorICAgICAgICAgICAgcmV0
dXJuIGZsZXhDb250YWluZXIuYWxpZ25tZW50Rm9yRmxleEl0ZW0oY29udGFpbmluZ0Jsb2NrKSA9
PSBJdGVtUG9zaXRpb246OlN0cmV0Y2g7CisgICAgICAgIC8vIMKnOS44IHJ1bGUgMjogZGVmaW5p
dGUgZmxleC1iYXNpcyBtYWtlcyBwb3N0LWZsZXhpbmcgbWFpbiBzaXplIGRlZmluaXRlLgorICAg
ICAgICBhdXRvIGZsZXhCYXNpcyA9IGZsZXhDb250YWluZXIuZmxleEJhc2lzRm9yRmxleEl0ZW0o
Y29udGFpbmluZ0Jsb2NrKTsKKyAgICAgICAgaWYgKCFmbGV4QmFzaXMuaXNBdXRvKCkgJiYgIWZs
ZXhCYXNpcy5pc0NvbnRlbnQoKSAmJiAhZmxleEJhc2lzLmlzUGVyY2VudE9yQ2FsY3VsYXRlZCgp
ICYmICFmbGV4QmFzaXMuaXNJbnRyaW5zaWMoKSkKKyAgICAgICAgICAgIHJldHVybiB0cnVlOwor
ICAgICAgICAvLyDCpzkuOCBydWxlIDE6IGRlZmluaXRlIGNvbnRhaW5lciBtYWluIHNpemUgbWFr
ZXMgYWxsIGl0ZW1zIGRlZmluaXRlLgorICAgICAgICByZXR1cm4gaGFzRGVmaW5pdGVIZWlnaHRC
eVN0eWxlKGZsZXhDb250YWluZXIpOworICAgIH0KKworICAgIC8vIFBlcmNlbnRhZ2UgYW5kIHN0
cmV0Y2ggaGVpZ2h0cyBhcmUgb25seSBkZWZpbml0ZSBpZiB0aGUgYW5jZXN0b3IgdGhleSByZXNv
bHZlIGFnYWluc3QgaXMgZGVmaW5pdGUuCisgICAgYXV0byBhbmNlc3Rvckhhc0RlZmluaXRlSGVp
Z2h0ID0gWyZdIHsKKyAgICAgICAgQ2hlY2tlZFB0ciBhbmNlc3RvciA9IGNvbnRhaW5pbmdCbG9j
ay5jb250YWluaW5nQmxvY2soKTsKKyAgICAgICAgd2hpbGUgKGFuY2VzdG9yICYmIGFuY2VzdG9y
LT5pc0Fub255bW91c0ZvclBlcmNlbnRhZ2VSZXNvbHV0aW9uKCkpCisgICAgICAgICAgICBhbmNl
c3RvciA9IGFuY2VzdG9yLT5jb250YWluaW5nQmxvY2soKTsKKyAgICAgICAgcmV0dXJuIGFuY2Vz
dG9yICYmIGhhc0RlZmluaXRlSGVpZ2h0QnlTdHlsZSgqYW5jZXN0b3IpOworICAgIH07CisKKyAg
ICBhdXRvJiBsb2dpY2FsSGVpZ2h0ID0gY29udGFpbmluZ0Jsb2NrLnN0eWxlKCkubG9naWNhbEhl
aWdodCgpOworICAgIGlmIChsb2dpY2FsSGVpZ2h0LmlzUGVyY2VudE9yQ2FsY3VsYXRlZCgpKSB7
CisgICAgICAgIGlmIChjb250YWluaW5nQmxvY2suZG9jdW1lbnQoKS5pblF1aXJrc01vZGUoKSkg
eworICAgICAgICAgICAgLy8gSW4gcXVpcmtzIG1vZGUsIHBlcmNlbnRhZ2UgaGVpZ2h0cyByZXNv
bHZlIGZyZWVseSB1bmxlc3MgaW5zaWRlIGEgZmxleCBjb250YWluZXIgKGRvZXMgbm90IGFwcGx5
IHRvIHN0cmV0Y2gpLgorICAgICAgICAgICAgQ2hlY2tlZFB0ciBhbmNlc3RvciA9IGNvbnRhaW5p
bmdCbG9jay5jb250YWluaW5nQmxvY2soKTsKKyAgICAgICAgICAgIHJldHVybiAhYW5jZXN0b3Ig
fHwgIWFuY2VzdG9yLT5pc0ZsZXhpYmxlQm94SW5jbHVkaW5nRGVwcmVjYXRlZCgpOworICAgICAg
ICB9CisgICAgICAgIHJldHVybiBhbmNlc3Rvckhhc0RlZmluaXRlSGVpZ2h0KCk7CisgICAgfQor
CisgICAgaWYgKGxvZ2ljYWxIZWlnaHQuaXNTdHJldGNoKCkpCisgICAgICAgIHJldHVybiBhbmNl
c3Rvckhhc0RlZmluaXRlSGVpZ2h0KCk7CisKKyAgICByZXR1cm4gIWxvZ2ljYWxIZWlnaHQuaXNB
dXRvKCkgJiYgIWxvZ2ljYWxIZWlnaHQuaXNJbnRyaW5zaWMoKTsKK30KKwogTGF5b3V0U2l6ZSBS
ZW5kZXJCb3hNb2RlbE9iamVjdDo6cmVsYXRpdmVQb3NpdGlvbk9mZnNldCgpIGNvbnN0CiB7CiAg
ICAgYXV0byBjb250YWluaW5nQmxvY2tTa2lwcGluZ0Fub255bW91cyA9IFsmXSB7CkBAIC0zNzMs
NyArNDI2LDcgQEAgTGF5b3V0U2l6ZSBSZW5kZXJCb3hNb2RlbE9iamVjdDo6cmVsYXRpdmVQb3Np
dGlvbk9mZnNldCgpIGNvbnN0CiAgICAgaWYgKHRvcC5pc0F1dG8oKSAmJiBib3R0b20uaXNBdXRv
KCkpCiAgICAgICAgIHJldHVybiBvZmZzZXQ7CiAKLSAgICBhdXRvIGNvbnRhaW5pbmdCbG9ja0hh
c0RlZmluaXRlSGVpZ2h0ID0gIWNvbnRhaW5pbmdCbG9jay0+aGFzQXV0b0hlaWdodE9yQ29udGFp
bmluZ0Jsb2NrV2l0aEF1dG9IZWlnaHQoKSB8fCBjb250YWluaW5nQmxvY2stPnN0cmV0Y2hlc1Rv
Vmlld3BvcnQoKTsKKyAgICBhdXRvIGNvbnRhaW5pbmdCbG9ja0hhc0RlZmluaXRlSGVpZ2h0ID0g
aGFzRGVmaW5pdGVIZWlnaHRCeVN0eWxlKCpjb250YWluaW5nQmxvY2spOwogICAgIGF1dG8gYXZh
aWxhYmxlSGVpZ2h0ID0gWyZdIHsKICAgICAgICAgYXV0byogcmVuZGVyQm94ID0gZHluYW1pY0Rv
d25jYXN0PFJlbmRlckJveD4oKnRoaXMpOwogICAgICAgICBpZiAoIXJlbmRlckJveCB8fCAhcmVu
ZGVyQm94LT5pc0dyaWRJdGVtKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyRmxleGlibGVCb3guaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJG
bGV4aWJsZUJveC5oCmluZGV4IDc2MTdhZWQxMDk0My4uNWE0NDQ1NWQ1YmM3IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRmxleGlibGVCb3guaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRmxleGlibGVCb3guaApAQCAtMTA5LDYgKzEwOSw5
IEBAIHB1YmxpYzoKIAogICAgIGJvb2wgTk9ERUxFVEUgaXNDb2x1bW5PclJvd1JldmVyc2UoKSBj
b25zdDsKICAgICBib29sIE5PREVMRVRFIGlzV3JhcFJldmVyc2UoKSBjb25zdDsKKyAgICBib29s
IE5PREVMRVRFIG1haW5BeGlzSXNGbGV4SXRlbUlubGluZUF4aXMoY29uc3QgUmVuZGVyQm94Jikg
Y29uc3Q7CisgICAgSXRlbVBvc2l0aW9uIGFsaWdubWVudEZvckZsZXhJdGVtKGNvbnN0IFJlbmRl
ckJveCYpIGNvbnN0OworICAgIFN0eWxlOjpGbGV4QmFzaXMgZmxleEJhc2lzRm9yRmxleEl0ZW0o
Y29uc3QgUmVuZGVyQm94JikgY29uc3Q7CiAKIHByb3RlY3RlZDoKICAgICB2b2lkIGNvbXB1dGVJ
bnRyaW5zaWNMb2dpY2FsV2lkdGhzKExheW91dFVuaXQmIG1pbkxvZ2ljYWxXaWR0aCwgTGF5b3V0
VW5pdCYgbWF4TG9naWNhbFdpZHRoKSBjb25zdCBvdmVycmlkZTsKQEAgLTE1MiwxMSArMTU1LDkg
QEAgcHJpdmF0ZToKICAgICBzdGF0aWMgY29uc3RleHByIHVuc2lnbmVkIHNfbGluZVN0YXRlc0lu
aXRpYWxDYXBhY2l0eSA9IDI7CiAgICAgdXNpbmcgRmxleExpbmVTdGF0ZXMgPSBWZWN0b3I8TGlu
ZVN0YXRlLCBzX2xpbmVTdGF0ZXNJbml0aWFsQ2FwYWNpdHk+OwogCi0gICAgYm9vbCBOT0RFTEVU
RSBtYWluQXhpc0lzRmxleEl0ZW1JbmxpbmVBeGlzKGNvbnN0IFJlbmRlckJveCYpIGNvbnN0Owog
ICAgIGJvb2wgTk9ERUxFVEUgaXNDb2x1bW5GbG93KCkgY29uc3Q7CiAgICAgYm9vbCBOT0RFTEVU
RSBpc0xlZnRUb1JpZ2h0RmxvdygpIGNvbnN0OwogICAgIGJvb2wgTk9ERUxFVEUgaXNNdWx0aWxp
bmUoKSBjb25zdDsKLSAgICBTdHlsZTo6RmxleEJhc2lzIGZsZXhCYXNpc0ZvckZsZXhJdGVtKGNv
bnN0IFJlbmRlckJveCYgZmxleEl0ZW0pIGNvbnN0OwogICAgIGNvbnN0IFN0eWxlOjpQcmVmZXJy
ZWRTaXplJiBOT0RFTEVURSBwcmVmZXJyZWRNYWluU2l6ZUxlbmd0aEZvckZsZXhJdGVtKGNvbnN0
IFJlbmRlckJveCYpIGNvbnN0IExJRkVUSU1FX0JPVU5EOwogICAgIGNvbnN0IFN0eWxlOjpNaW5p
bXVtU2l6ZSYgTk9ERUxFVEUgbWluTWFpblNpemVMZW5ndGhGb3JGbGV4SXRlbShjb25zdCBSZW5k
ZXJCb3gmKSBjb25zdCBMSUZFVElNRV9CT1VORDsKICAgICBjb25zdCBTdHlsZTo6TWF4aW11bVNp
emUmIE5PREVMRVRFIG1heE1haW5TaXplTGVuZ3RoRm9yRmxleEl0ZW0oY29uc3QgUmVuZGVyQm94
JikgY29uc3QgTElGRVRJTUVfQk9VTkQ7CkBAIC0yMDksNyArMjEwLDYgQEAgcHJpdmF0ZToKICAg
ICBMYXlvdXRVbml0IGNvbXB1dGVGbGV4QmFzZVNpemVGb3JGbGV4SXRlbShSZW5kZXJCb3gmIGZs
ZXhJdGVtLCBSZWxheW91dENoaWxkcmVuKTsKICAgICB2b2lkIG1heWJlQ2FjaGVGbGV4SXRlbU1h
aW5JbnRyaW5zaWNTaXplKFJlbmRlckJveCYgZmxleEl0ZW0sIFJlbGF5b3V0Q2hpbGRyZW4pOwog
ICAgIHZvaWQgTk9ERUxFVEUgYWRqdXN0QWxpZ25tZW50Rm9yRmxleEl0ZW0oUmVuZGVyQm94JiBm
bGV4SXRlbSwgTGF5b3V0VW5pdCk7Ci0gICAgSXRlbVBvc2l0aW9uIGFsaWdubWVudEZvckZsZXhJ
dGVtKGNvbnN0IFJlbmRlckJveCYgZmxleEl0ZW0pIGNvbnN0OwogICAgIGlubGluZSBPdmVyZmxv
d0FsaWdubWVudCBvdmVyZmxvd0FsaWdubWVudEZvckZsZXhJdGVtKGNvbnN0IFJlbmRlckJveCYg
ZmxleEl0ZW0pIGNvbnN0OwogICAgIHRlbXBsYXRlPHR5cGVuYW1lIFNpemVUeXBlPiBib29sIGNh
bkNvbXB1dGVQZXJjZW50YWdlRmxleEJhc2lzKGNvbnN0IFJlbmRlckJveCYgZmxleEl0ZW0sIGNv
bnN0IFNpemVUeXBlJiwgVXBkYXRlUGVyY2VudGFnZUhlaWdodERlc2NlbmRhbnRzKTsKICAgICB0
ZW1wbGF0ZTx0eXBlbmFtZSBTaXplVHlwZT4gYm9vbCBmbGV4SXRlbU1haW5TaXplSXNEZWZpbml0
ZShjb25zdCBSZW5kZXJCb3gmLCBjb25zdCBTaXplVHlwZSYpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZsZXhib3gvcGVy
Y2VudGFnZS1zaXplLXF1aXJrcy0wMDQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZsZXhib3gvcGVyY2VudGFnZS1zaXpl
LXF1aXJrcy0wMDQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMC4uNzE0ZDg4OGVhNTk5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZsZXhib3gvcGVyY2VudGFnZS1z
aXplLXF1aXJrcy0wMDQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNiBAQAorCitQQVNTIFF1aXJr
czogY29sdW1uIGZsZXggd2l0aCBkZWZpbml0ZSBoZWlnaHQsIGhlaWdodDogMTAwJSBpbiBmbGV4
IGl0ZW0KK1BBU1MgUXVpcmtzOiBjb2x1bW4gZmxleCB3aXRoIGF1dG8gaGVpZ2h0LCBoZWlnaHQ6
IDEwMCUgaW4gZmxleCBpdGVtCitQQVNTIFF1aXJrczogY29sdW1uIGZsZXggd2l0aCBkZWZpbml0
ZSBoZWlnaHQsIGRlZXAgaGVpZ2h0OiAxMDAlIGluIGZsZXggaXRlbQorUEFTUyBRdWlya3M6IHBl
cmNlbnRhZ2UgaGVpZ2h0IGFnYWluc3QgYXV0byBwYXJlbnQgcmVzb2x2ZXMgZm9yIHRvcDogNTAl
CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL2Nzcy1mbGV4Ym94L3BlcmNlbnRhZ2Utc2l6ZS1xdWlya3MtMDA0Lmh0bWwgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZmxleGJveC9w
ZXJjZW50YWdlLXNpemUtcXVpcmtzLTAwNC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMC4uZDM3M2E5MDFhMzgwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZsZXhib3gvcGVyY2Vu
dGFnZS1zaXplLXF1aXJrcy0wMDQuaHRtbApAQCAtMCwwICsxLDY5IEBACis8dGl0bGU+Q1NTIEZs
ZXhib3g6IHBlcmNlbnRhZ2UgaGVpZ2h0IGFuZCByZWxhdGl2ZSBwb3NpdGlvbiBpbiBjb2x1bW4g
ZmxleCBpdGVtcyBpbiBxdWlya3MgbW9kZTwvdGl0bGU+Cis8bGluayByZWw9ImhlbHAiIGhyZWY9
Imh0dHBzOi8vZHJhZnRzLmNzc3dnLm9yZy9jc3MtZmxleGJveC8jZGVmaW5pdGUtc2l6ZXMiPgor
PGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRwczovL3F1aXJrcy5zcGVjLndoYXR3Zy5vcmcvI3Ro
ZS1wZXJjZW50YWdlLWhlaWdodC1jYWxjdWxhdGlvbi1xdWlyayI+Cis8c2NyaXB0IHNyYz0iL3Jl
c291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNl
cy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8c3R5bGU+Citib2R5IHsKKyAgICBt
YXJnaW46IDA7Cit9Cis8L3N0eWxlPgorCis8IS0tIDEuIENvbHVtbiBmbGV4ICgxMDBweCksIGZs
ZXg6MSBpdGVtLCBjaGlsZCBoZWlnaHQ6IDEwMCUgLS0+Cis8ZGl2IHN0eWxlPSJkaXNwbGF5OiBm
bGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBoZWlnaHQ6IDEwMHB4OyI+CisgICAgPGRpdiBz
dHlsZT0iaGVpZ2h0OiA1MHB4OyI+PC9kaXY+CisgICAgPGRpdiBpZD0idDEtaXRlbSIgc3R5bGU9
ImZsZXg6IDE7Ij4KKyAgICAgICAgPGRpdiBpZD0idDEiIHN0eWxlPSJoZWlnaHQ6IDEwMCU7IGJh
Y2tncm91bmQ6IGdyZWVuOyI+PC9kaXY+CisgICAgPC9kaXY+Cis8L2Rpdj4KKworPCEtLSAyLiBD
b2x1bW4gZmxleCAoYXV0byBoZWlnaHQpLCBmbGV4OjEgaXRlbSwgY2hpbGQgaGVpZ2h0OiAxMDAl
IC0tPgorPGRpdiBzdHlsZT0iZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsi
PgorICAgIDxkaXYgc3R5bGU9ImhlaWdodDogNTBweDsiPjwvZGl2PgorICAgIDxkaXYgaWQ9InQy
LWl0ZW0iIHN0eWxlPSJmbGV4OiAxOyI+CisgICAgICAgIDxkaXYgaWQ9InQyIiBzdHlsZT0iaGVp
Z2h0OiAxMDAlOyBiYWNrZ3JvdW5kOiBncmVlbjsiPjwvZGl2PgorICAgIDwvZGl2PgorPC9kaXY+
CisKKzwhLS0gMy4gQ29sdW1uIGZsZXggKDEwMHB4KSwgd3JhcHBlciBkaXYsIGRlZXAgaGVpZ2h0
OiAxMDAlIC0tPgorPGRpdiBzdHlsZT0iZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNv
bHVtbjsgaGVpZ2h0OiAxMDBweDsiPgorICAgIDxkaXYgc3R5bGU9ImhlaWdodDogNTBweDsiPjwv
ZGl2PgorICAgIDxkaXYgaWQ9InQzLWl0ZW0iIHN0eWxlPSJmbGV4OiAxOyI+CisgICAgICAgIDxk
aXY+CisgICAgICAgICAgICA8ZGl2IGlkPSJ0MyIgc3R5bGU9ImhlaWdodDogMTAwJTsgYmFja2dy
b3VuZDogZ3JlZW47Ij48L2Rpdj4KKyAgICAgICAgPC9kaXY+CisgICAgPC9kaXY+Cis8L2Rpdj4K
KworPCEtLSA0LiBQZXJjZW50YWdlIGhlaWdodCBhZ2FpbnN0IGF1dG8gcGFyZW50IHJlc29sdmVz
IGluIHF1aXJrcyBtb2RlLCB0b3A6IDUwJSAtLT4KKzxkaXY+CisgICAgPGRpdiBpZD0idDQtY2Ii
IHN0eWxlPSJoZWlnaHQ6IDUwJTsiPgorICAgICAgICA8ZGl2IGlkPSJ0NCIgc3R5bGU9IndpZHRo
OiAyMHB4OyBoZWlnaHQ6IDIwcHg7IGJhY2tncm91bmQ6IGdyZWVuOyBwb3NpdGlvbjogcmVsYXRp
dmU7IHRvcDogNTAlOyI+PC9kaXY+CisgICAgPC9kaXY+Cis8L2Rpdj4KKworPHNjcmlwdD4KK3Rl
c3QoZnVuY3Rpb24oKSB7CisgICAgdmFyIGl0ZW0gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgn
dDEtaXRlbScpOworICAgIHZhciBjaGlsZCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0MScp
OworICAgIGFzc2VydF9lcXVhbHMoY2hpbGQub2Zmc2V0SGVpZ2h0LCBpdGVtLm9mZnNldEhlaWdo
dCk7Cit9LCAnUXVpcmtzOiBjb2x1bW4gZmxleCB3aXRoIGRlZmluaXRlIGhlaWdodCwgaGVpZ2h0
OiAxMDAlIGluIGZsZXggaXRlbScpOworCit0ZXN0KGZ1bmN0aW9uKCkgeworICAgIHZhciBjaGls
ZCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0MicpOworICAgIGFzc2VydF9lcXVhbHMoY2hp
bGQub2Zmc2V0SGVpZ2h0LCAwKTsKK30sICdRdWlya3M6IGNvbHVtbiBmbGV4IHdpdGggYXV0byBo
ZWlnaHQsIGhlaWdodDogMTAwJSBpbiBmbGV4IGl0ZW0nKTsKKwordGVzdChmdW5jdGlvbigpIHsK
KyAgICB2YXIgaXRlbSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0My1pdGVtJyk7CisgICAg
dmFyIGNoaWxkID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QzJyk7CisgICAgYXNzZXJ0X2Vx
dWFscyhjaGlsZC5vZmZzZXRIZWlnaHQsIGl0ZW0ub2Zmc2V0SGVpZ2h0KTsKK30sICdRdWlya3M6
IGNvbHVtbiBmbGV4IHdpdGggZGVmaW5pdGUgaGVpZ2h0LCBkZWVwIGhlaWdodDogMTAwJSBpbiBm
bGV4IGl0ZW0nKTsKKwordGVzdChmdW5jdGlvbigpIHsKKyAgICB2YXIgY2IgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgndDQtY2InKTsKKyAgICB2YXIgY2hpbGQgPSBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgndDQnKTsKKyAgICB2YXIgb2Zmc2V0ID0gY2hpbGQuZ2V0Qm91bmRpbmdDbGllbnRS
ZWN0KCkudG9wIC0gY2IuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkudG9wOworICAgIGFzc2VydF9u
b3RfZXF1YWxzKG9mZnNldCwgMCk7Cit9LCAnUXVpcmtzOiBwZXJjZW50YWdlIGhlaWdodCBhZ2Fp
bnN0IGF1dG8gcGFyZW50IHJlc29sdmVzIGZvciB0b3A6IDUwJScpOworPC9zY3JpcHQ+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9j
c3MtZmxleGJveC9wZXJjZW50YWdlLXNpemUtcXVpcmtzLTAwNS1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZmxleGJveC9w
ZXJjZW50YWdlLXNpemUtcXVpcmtzLTAwNS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwLi43NWYyZjYyNDEyZmEKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZmxleGJv
eC9wZXJjZW50YWdlLXNpemUtcXVpcmtzLTAwNS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwzIEBA
CisKK1BBU1MgUXVpcmtzOiBzdHJldGNoIGhlaWdodCBhZ2FpbnN0IGF1dG8gcGFyZW50IGRvZXMg
bm90IHJlc29sdmUgdG9wOiA1MCUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZsZXhib3gvcGVyY2VudGFnZS1zaXplLXF1
aXJrcy0wMDUuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL2Nzcy1mbGV4Ym94L3BlcmNlbnRhZ2Utc2l6ZS1xdWlya3MtMDA1Lmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi43MmE2YmJmNjNlOWQKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9jc3MtZmxleGJveC9wZXJjZW50YWdlLXNpemUtcXVpcmtzLTAwNS5odG1sCkBAIC0wLDAgKzEs
MjcgQEAKKzx0aXRsZT5DU1MgRmxleGJveDogc3RyZXRjaCBoZWlnaHQgaXMgbm90IGFmZmVjdGVk
IGJ5IHRoZSBwZXJjZW50YWdlIGhlaWdodCBxdWlyazwvdGl0bGU+Cis8bGluayByZWw9ImhlbHAi
IGhyZWY9Imh0dHBzOi8vZHJhZnRzLmNzc3dnLm9yZy9jc3Mtc2l6aW5nLTQvI3N0cmV0Y2gtZml0
LXNpemluZyI+Cis8bGluayByZWw9ImhlbHAiIGhyZWY9Imh0dHBzOi8vcXVpcmtzLnNwZWMud2hh
dHdnLm9yZy8jdGhlLXBlcmNlbnRhZ2UtaGVpZ2h0LWNhbGN1bGF0aW9uLXF1aXJrIj4KKzxzY3Jp
cHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3Jj
PSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKzxzdHlsZT4KK2Jv
ZHkgeworICAgIG1hcmdpbjogMDsKK30KKzwvc3R5bGU+CisKKzwhLS0gSW4gcXVpcmtzIG1vZGUs
IHBlcmNlbnRhZ2UgaGVpZ2h0cyByZXNvbHZlIGZyZWVseSBhZ2FpbnN0IGF1dG8gcGFyZW50cy4K
KyAgICAgc3RyZXRjaCBzaG91bGQgTk9UIGdldCB0aGlzIHRyZWF0bWVudC4gLS0+Cis8ZGl2Pgor
ICAgIDxkaXYgaWQ9InQxLWNiIiBzdHlsZT0iaGVpZ2h0OiBzdHJldGNoOyI+CisgICAgICAgIDxk
aXYgaWQ9InQxIiBzdHlsZT0id2lkdGg6IDIwcHg7IGhlaWdodDogMjBweDsgYmFja2dyb3VuZDog
Z3JlZW47IHBvc2l0aW9uOiByZWxhdGl2ZTsgdG9wOiA1MCU7Ij48L2Rpdj4KKyAgICA8L2Rpdj4K
KzwvZGl2PgorCis8c2NyaXB0PgordGVzdChmdW5jdGlvbigpIHsKKyAgICB2YXIgY2IgPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgndDEtY2InKTsKKyAgICB2YXIgY2hpbGQgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgndDEnKTsKKyAgICB2YXIgb2Zmc2V0ID0gY2hpbGQuZ2V0Qm91bmRpbmdD
bGllbnRSZWN0KCkudG9wIC0gY2IuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkudG9wOworICAgIGFz
c2VydF9lcXVhbHMob2Zmc2V0LCAwKTsKK30sICdRdWlya3M6IHN0cmV0Y2ggaGVpZ2h0IGFnYWlu
c3QgYXV0byBwYXJlbnQgZG9lcyBub3QgcmVzb2x2ZSB0b3A6IDUwJScpOworPC9zY3JpcHQ+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9jc3MtZmxleGJveC9wb3NpdGlvbi1yZWxhdGl2ZS1wZXJjZW50YWdlLXRvcC0wMDQtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mv
Y3NzLWZsZXhib3gvcG9zaXRpb24tcmVsYXRpdmUtcGVyY2VudGFnZS10b3AtMDA0LWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLjdiMGYyZWNiNTgz
MgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL2Nzcy1mbGV4Ym94L3Bvc2l0aW9uLXJlbGF0aXZlLXBlcmNlbnRhZ2UtdG9w
LTAwNC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMSBAQAorCitQQVNTIFJvdyBmbGV4LCBzdHJl
dGNoZWQgaXRlbSwgdG9wOiA1MCUKK1BBU1MgUm93IGZsZXgsIGFsaWduLXNlbGY6IGZsZXgtc3Rh
cnQsIHRvcDogNTAlCitQQVNTIENvbHVtbiBmbGV4LCBmbGV4LWdyb3cgaXRlbSwgdG9wOiA1MCUK
K1BBU1MgQ29sdW1uIGZsZXgsIGF1dG8gaGVpZ2h0IGNvbnRhaW5lciwgdG9wOiA1MCUKK1BBU1Mg
Q29sdW1uIGZsZXgsIGRlZmluaXRlIGZsZXgtYmFzaXMsIHRvcDogNTAlCitQQVNTIE5lc3RlZCBj
b2x1bW4gZmxleCwgdG9wOiA1MCUKK1BBU1MgUm93IHRoZW4gY29sdW1uIG5lc3RpbmcsIHRvcDog
NTAlCitQQVNTIEZsZXggaXRlbSB3aXRoIHBlcmNlbnRhZ2UgaGVpZ2h0LCB0b3A6IDUwJQorUEFT
UyBQZXJjZW50YWdlIGhlaWdodCBjaGlsZCBpbnNpZGUgc3RyZXRjaGVkIGZsZXggaXRlbSwgdG9w
OiA1MCUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3MvY3NzLWZsZXhib3gvcG9zaXRpb24tcmVsYXRpdmUtcGVyY2VudGFnZS10b3At
MDA0Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9jc3MtZmxleGJveC9wb3NpdGlvbi1yZWxhdGl2ZS1wZXJjZW50YWdlLXRvcC0wMDQuaHRtbApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLmVkNTE0ZDk3OTk1NgotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL2Nzcy1mbGV4Ym94L3Bvc2l0aW9uLXJlbGF0aXZlLXBlcmNlbnRhZ2UtdG9wLTAwNC5o
dG1sCkBAIC0wLDAgKzEsMTM2IEBACis8IURPQ1RZUEUgaHRtbD4KKzx0aXRsZT5DU1MgRmxleGJv
eDogcGVyY2VudGFnZSB0b3AvYm90dG9tIG9uIHJlbGF0aXZlbHkgcG9zaXRpb25lZCBlbGVtZW50
cyBpbiBmbGV4IGl0ZW1zPC90aXRsZT4KKzxsaW5rIHJlbD0iaGVscCIgaHJlZj0iaHR0cHM6Ly9k
cmFmdHMuY3Nzd2cub3JnL2Nzcy1mbGV4Ym94LyNkZWZpbml0ZS1zaXplcyI+Cis8bGluayByZWw9
ImhlbHAiIGhyZWY9Imh0dHBzOi8vZHJhZnRzLmNzc3dnLm9yZy9jc3MtcG9zaXRpb24tMy8jdmFs
ZGVmLXRvcC1wZXJjZW50YWdlIj4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNz
LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0
LmpzIj48L3NjcmlwdD4KKzxzdHlsZT4KK2JvZHkgeworICAgIG1hcmdpbjogMDsKK30KKworLmdy
ZWVuIHsKKyAgICB3aWR0aDogMjBweDsKKyAgICBoZWlnaHQ6IDIwcHg7CisgICAgYmFja2dyb3Vu
ZDogZ3JlZW47CisgICAgcG9zaXRpb246IHJlbGF0aXZlOworfQorPC9zdHlsZT4KKworPCEtLSAx
LiBSb3cgZmxleCwgc3RyZXRjaGVkIGl0ZW0sIHRvcDogNTAlIC0tPgorPGRpdiBzdHlsZT0iZGlz
cGxheTogZmxleDsgaGVpZ2h0OiAyMDBweDsiPgorICAgIDxkaXYgaWQ9InQxLWl0ZW0iPgorICAg
ICAgICA8ZGl2IGNsYXNzPSJncmVlbiIgaWQ9InQxIiBzdHlsZT0idG9wOiA1MCU7Ij48L2Rpdj4K
KyAgICA8L2Rpdj4KKzwvZGl2PgorCis8IS0tIDIuIFJvdyBmbGV4LCBhbGlnbi1zZWxmOiBmbGV4
LXN0YXJ0LCB0b3A6IDUwJSAtLT4KKzxkaXYgc3R5bGU9ImRpc3BsYXk6IGZsZXg7IGhlaWdodDog
MjAwcHg7Ij4KKyAgICA8ZGl2IGlkPSJ0Mi1pdGVtIiBzdHlsZT0iYWxpZ24tc2VsZjogZmxleC1z
dGFydDsiPgorICAgICAgICA8ZGl2IGNsYXNzPSJncmVlbiIgaWQ9InQyIiBzdHlsZT0idG9wOiA1
MCU7Ij48L2Rpdj4KKyAgICA8L2Rpdj4KKzwvZGl2PgorCis8IS0tIDMuIENvbHVtbiBmbGV4ICgy
MDBweCksIGZsZXgtZ3JvdyBpdGVtLCB0b3A6IDUwJSAtLT4KKzxkaXYgc3R5bGU9ImRpc3BsYXk6
IGZsZXg7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IGhlaWdodDogMjAwcHg7Ij4KKyAgICA8ZGl2
IHN0eWxlPSJoZWlnaHQ6IDEwMHB4OyI+PC9kaXY+CisgICAgPGRpdiBpZD0idDMtaXRlbSIgc3R5
bGU9ImZsZXgtZ3JvdzogMTsiPgorICAgICAgICA8ZGl2IGNsYXNzPSJncmVlbiIgaWQ9InQzIiBz
dHlsZT0idG9wOiA1MCU7Ij48L2Rpdj4KKyAgICA8L2Rpdj4KKzwvZGl2PgorCis8IS0tIDQuIENv
bHVtbiBmbGV4IChhdXRvIGhlaWdodCksIHRvcDogNTAlIC0tPgorPGRpdiBzdHlsZT0iZGlzcGxh
eTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsiPgorICAgIDxkaXYgaWQ9InQ0LWl0ZW0i
IHN0eWxlPSJmbGV4LWdyb3c6IDE7Ij4KKyAgICAgICAgPGRpdiBjbGFzcz0iZ3JlZW4iIGlkPSJ0
NCIgc3R5bGU9InRvcDogNTAlOyI+PC9kaXY+CisgICAgPC9kaXY+Cis8L2Rpdj4KKworPCEtLSA1
LiBDb2x1bW4gZmxleCwgZmxleC1iYXNpczogMTAwcHgsIHRvcDogNTAlIC0tPgorPGRpdiBzdHls
ZT0iZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgaGVpZ2h0OiAyMDBweDsi
PgorICAgIDxkaXYgaWQ9InQ1LWl0ZW0iIHN0eWxlPSJmbGV4OiAwIDAgMTAwcHg7Ij4KKyAgICAg
ICAgPGRpdiBjbGFzcz0iZ3JlZW4iIGlkPSJ0NSIgc3R5bGU9InRvcDogNTAlOyI+PC9kaXY+Cisg
ICAgPC9kaXY+Cis8L2Rpdj4KKworPCEtLSA2LiBOZXN0ZWQgY29sdW1uIGZsZXggKDMgbGV2ZWxz
KSwgaW5uZXJtb3N0IHRvcDogNTAlIC0tPgorPGRpdiBzdHlsZT0iZGlzcGxheTogZmxleDsgZmxl
eC1kaXJlY3Rpb246IGNvbHVtbjsgaGVpZ2h0OiAyMDBweDsiPgorICAgIDxkaXYgc3R5bGU9ImZs
ZXgtZ3JvdzogMTsgZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsiPgorICAg
ICAgICA8ZGl2IHN0eWxlPSJmbGV4LWdyb3c6IDE7IGRpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0
aW9uOiBjb2x1bW47Ij4KKyAgICAgICAgICAgIDxkaXYgc3R5bGU9ImhlaWdodDogMTAwcHg7Ij48
L2Rpdj4KKyAgICAgICAgICAgIDxkaXYgaWQ9InQ2LWl0ZW0iIHN0eWxlPSJmbGV4LWdyb3c6IDE7
Ij4KKyAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJncmVlbiIgaWQ9InQ2IiBzdHlsZT0idG9w
OiA1MCU7Ij48L2Rpdj4KKyAgICAgICAgICAgIDwvZGl2PgorICAgICAgICA8L2Rpdj4KKyAgICA8
L2Rpdj4KKzwvZGl2PgorCis8IS0tIDcuIFJvdyBmbGV4IGNvbnRhaW5pbmcgY29sdW1uIGZsZXgs
IHRvcDogNTAlIC0tPgorPGRpdiBzdHlsZT0iZGlzcGxheTogZmxleDsgaGVpZ2h0OiAyMDBweDsi
PgorICAgIDxkaXYgc3R5bGU9ImRpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47
IHdpZHRoOiAxMDBweDsiPgorICAgICAgICA8ZGl2IHN0eWxlPSJoZWlnaHQ6IDEwMHB4OyI+PC9k
aXY+CisgICAgICAgIDxkaXYgaWQ9InQ3LWl0ZW0iIHN0eWxlPSJmbGV4LWdyb3c6IDE7Ij4KKyAg
ICAgICAgICAgIDxkaXYgY2xhc3M9ImdyZWVuIiBpZD0idDciIHN0eWxlPSJ0b3A6IDUwJTsiPjwv
ZGl2PgorICAgICAgICA8L2Rpdj4KKyAgICA8L2Rpdj4KKzwvZGl2PgorCis8IS0tIDguIEZsZXgg
aXRlbSB3aXRoIGhlaWdodDogNTAlLCB0b3A6IDUwJSAtLT4KKzxkaXYgc3R5bGU9ImRpc3BsYXk6
IGZsZXg7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IGhlaWdodDogMjAwcHg7Ij4KKyAgICA8ZGl2
IGlkPSJ0OC1pdGVtIiBzdHlsZT0iaGVpZ2h0OiA1MCU7Ij4KKyAgICAgICAgPGRpdiBjbGFzcz0i
Z3JlZW4iIGlkPSJ0OCIgc3R5bGU9InRvcDogNTAlOyI+PC9kaXY+CisgICAgPC9kaXY+Cis8L2Rp
dj4KKworPCEtLSA5LiBQZXJjZW50YWdlIGhlaWdodCBjaGlsZCBpbnNpZGUgc3RyZXRjaGVkIGZs
ZXggaXRlbSwgdG9wOiA1MCUgLS0+Cis8ZGl2IHN0eWxlPSJkaXNwbGF5OiBmbGV4OyBoZWlnaHQ6
IDIwMHB4OyI+CisgICAgPGRpdj4KKyAgICAgICAgPGRpdiBpZD0idDktaXRlbSIgc3R5bGU9Imhl
aWdodDogNTAlOyI+CisgICAgICAgICAgICA8ZGl2IGNsYXNzPSJncmVlbiIgaWQ9InQ5IiBzdHls
ZT0idG9wOiA1MCU7Ij48L2Rpdj4KKyAgICAgICAgPC9kaXY+CisgICAgPC9kaXY+Cis8L2Rpdj4K
KworPHNjcmlwdD4KK2Z1bmN0aW9uIG9mZnNldEZyb21JdGVtKGdyZWVuSWQsIGl0ZW1JZCkgewor
ICAgIHZhciBncmVlbiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGdyZWVuSWQpOworICAgIHZh
ciBpdGVtID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaXRlbUlkKTsKKyAgICByZXR1cm4gZ3Jl
ZW4uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkudG9wIC0gaXRlbS5nZXRCb3VuZGluZ0NsaWVudFJl
Y3QoKS50b3A7Cit9CisKK3Rlc3QoZnVuY3Rpb24oKSB7CisgICAgYXNzZXJ0X2VxdWFscyhvZmZz
ZXRGcm9tSXRlbSgndDEnLCAndDEtaXRlbScpLCAxMDApOworfSwgJ1JvdyBmbGV4LCBzdHJldGNo
ZWQgaXRlbSwgdG9wOiA1MCUnKTsKKwordGVzdChmdW5jdGlvbigpIHsKKyAgICBhc3NlcnRfZXF1
YWxzKG9mZnNldEZyb21JdGVtKCd0MicsICd0Mi1pdGVtJyksIDApOworfSwgJ1JvdyBmbGV4LCBh
bGlnbi1zZWxmOiBmbGV4LXN0YXJ0LCB0b3A6IDUwJScpOworCit0ZXN0KGZ1bmN0aW9uKCkgewor
ICAgIGFzc2VydF9lcXVhbHMob2Zmc2V0RnJvbUl0ZW0oJ3QzJywgJ3QzLWl0ZW0nKSwgNTApOwor
fSwgJ0NvbHVtbiBmbGV4LCBmbGV4LWdyb3cgaXRlbSwgdG9wOiA1MCUnKTsKKwordGVzdChmdW5j
dGlvbigpIHsKKyAgICBhc3NlcnRfZXF1YWxzKG9mZnNldEZyb21JdGVtKCd0NCcsICd0NC1pdGVt
JyksIDApOworfSwgJ0NvbHVtbiBmbGV4LCBhdXRvIGhlaWdodCBjb250YWluZXIsIHRvcDogNTAl
Jyk7CisKK3Rlc3QoZnVuY3Rpb24oKSB7CisgICAgYXNzZXJ0X2VxdWFscyhvZmZzZXRGcm9tSXRl
bSgndDUnLCAndDUtaXRlbScpLCA1MCk7Cit9LCAnQ29sdW1uIGZsZXgsIGRlZmluaXRlIGZsZXgt
YmFzaXMsIHRvcDogNTAlJyk7CisKK3Rlc3QoZnVuY3Rpb24oKSB7CisgICAgYXNzZXJ0X2VxdWFs
cyhvZmZzZXRGcm9tSXRlbSgndDYnLCAndDYtaXRlbScpLCA1MCk7Cit9LCAnTmVzdGVkIGNvbHVt
biBmbGV4LCB0b3A6IDUwJScpOworCit0ZXN0KGZ1bmN0aW9uKCkgeworICAgIGFzc2VydF9lcXVh
bHMob2Zmc2V0RnJvbUl0ZW0oJ3Q3JywgJ3Q3LWl0ZW0nKSwgNTApOworfSwgJ1JvdyB0aGVuIGNv
bHVtbiBuZXN0aW5nLCB0b3A6IDUwJScpOworCit0ZXN0KGZ1bmN0aW9uKCkgeworICAgIGFzc2Vy
dF9lcXVhbHMob2Zmc2V0RnJvbUl0ZW0oJ3Q4JywgJ3Q4LWl0ZW0nKSwgNTApOworfSwgJ0ZsZXgg
aXRlbSB3aXRoIHBlcmNlbnRhZ2UgaGVpZ2h0LCB0b3A6IDUwJScpOworCit0ZXN0KGZ1bmN0aW9u
KCkgeworICAgIGFzc2VydF9lcXVhbHMob2Zmc2V0RnJvbUl0ZW0oJ3Q5JywgJ3Q5LWl0ZW0nKSwg
NTApOworfSwgJ1BlcmNlbnRhZ2UgaGVpZ2h0IGNoaWxkIGluc2lkZSBzdHJldGNoZWQgZmxleCBp
dGVtLCB0b3A6IDUwJScpOworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZmxleGJveC9wb3NpdGlvbi1yZWxh
dGl2ZS1zdHJldGNoLWhlaWdodC0wMDEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZsZXhib3gvcG9zaXRpb24tcmVsYXRp
dmUtc3RyZXRjaC1oZWlnaHQtMDAxLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAuLjFjM2IzNTRiODNmMQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1mbGV4Ym94L3Bv
c2l0aW9uLXJlbGF0aXZlLXN0cmV0Y2gtaGVpZ2h0LTAwMS1leHBlY3RlZC50eHQKQEAgLTAsMCAr
MSw2IEBACisKK1BBU1MgaGVpZ2h0OiBzdHJldGNoIGFnYWluc3QgZGVmaW5pdGUgcGFyZW50LCB0
b3A6IDUwJQorUEFTUyBoZWlnaHQ6IHN0cmV0Y2ggYWdhaW5zdCBhdXRvIHBhcmVudCwgdG9wOiA1
MCUKK1BBU1MgaGVpZ2h0OiBzdHJldGNoIGluc2lkZSBzdHJldGNoZWQgZmxleCBpdGVtLCB0b3A6
IDUwJQorUEFTUyBoZWlnaHQ6IHN0cmV0Y2ggaW5zaWRlIGF1dG8taGVpZ2h0IGNvbHVtbiBmbGV4
IGl0ZW0sIHRvcDogNTAlCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1mbGV4Ym94L3Bvc2l0aW9uLXJlbGF0aXZlLXN0cmV0
Y2gtaGVpZ2h0LTAwMS5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3MvY3NzLWZsZXhib3gvcG9zaXRpb24tcmVsYXRpdmUtc3RyZXRjaC1oZWlnaHQt
MDAxLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi5kYTBiZTBk
MTc1MzMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9jc3MtZmxleGJveC9wb3NpdGlvbi1yZWxhdGl2ZS1zdHJldGNoLWhl
aWdodC0wMDEuaHRtbApAQCAtMCwwICsxLDc1IEBACis8IURPQ1RZUEUgaHRtbD4KKzx0aXRsZT5D
U1MgRmxleGJveDogcmVsYXRpdmUgcG9zaXRpb24gcGVyY2VudGFnZSB0b3Agd2l0aCBoZWlnaHQ6
IHN0cmV0Y2ggY29udGFpbmluZyBibG9jazwvdGl0bGU+Cis8bGluayByZWw9ImhlbHAiIGhyZWY9
Imh0dHBzOi8vZHJhZnRzLmNzc3dnLm9yZy9jc3MtZmxleGJveC8jZGVmaW5pdGUtc2l6ZXMiPgor
PGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRwczovL2RyYWZ0cy5jc3N3Zy5vcmcvY3NzLXBvc2l0
aW9uLTMvI3ZhbGRlZi10b3AtcGVyY2VudGFnZSI+Cis8bGluayByZWw9ImhlbHAiIGhyZWY9Imh0
dHBzOi8vZHJhZnRzLmNzc3dnLm9yZy9jc3Mtc2l6aW5nLTQvI3N0cmV0Y2gtZml0LXNpemluZyI+
Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2Ny
aXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8c3R5
bGU+Citib2R5IHsKKyAgICBtYXJnaW46IDA7Cit9CisKKy5ncmVlbiB7CisgICAgd2lkdGg6IDIw
cHg7CisgICAgaGVpZ2h0OiAyMHB4OworICAgIGJhY2tncm91bmQ6IGdyZWVuOworICAgIHBvc2l0
aW9uOiByZWxhdGl2ZTsKK30KKzwvc3R5bGU+CisKKzwhLS0gMS4gaGVpZ2h0OiBzdHJldGNoIGFn
YWluc3QgZGVmaW5pdGUgcGFyZW50IC0tPgorPGRpdiBzdHlsZT0iaGVpZ2h0OiAyMDBweDsiPgor
ICAgIDxkaXYgaWQ9InQxLWl0ZW0iIHN0eWxlPSJoZWlnaHQ6IHN0cmV0Y2g7Ij4KKyAgICAgICAg
PGRpdiBjbGFzcz0iZ3JlZW4iIGlkPSJ0MSIgc3R5bGU9InRvcDogNTAlOyI+PC9kaXY+CisgICAg
PC9kaXY+Cis8L2Rpdj4KKworPCEtLSAyLiBoZWlnaHQ6IHN0cmV0Y2ggYWdhaW5zdCBhdXRvIHBh
cmVudCAoaW5kZWZpbml0ZSkgLS0+Cis8ZGl2PgorICAgIDxkaXYgaWQ9InQyLWl0ZW0iIHN0eWxl
PSJoZWlnaHQ6IHN0cmV0Y2g7Ij4KKyAgICAgICAgPGRpdiBjbGFzcz0iZ3JlZW4iIGlkPSJ0MiIg
c3R5bGU9InRvcDogNTAlOyI+PC9kaXY+CisgICAgPC9kaXY+Cis8L2Rpdj4KKworPCEtLSAzLiBo
ZWlnaHQ6IHN0cmV0Y2ggaW5zaWRlIHN0cmV0Y2hlZCBmbGV4IGl0ZW0gKGRlZmluaXRlIHBlciA5
LjgpIC0tPgorPGRpdiBzdHlsZT0iZGlzcGxheTogZmxleDsgaGVpZ2h0OiAyMDBweDsiPgorICAg
IDxkaXY+CisgICAgICAgIDxkaXYgaWQ9InQzLWl0ZW0iIHN0eWxlPSJoZWlnaHQ6IHN0cmV0Y2g7
Ij4KKyAgICAgICAgICAgIDxkaXYgY2xhc3M9ImdyZWVuIiBpZD0idDMiIHN0eWxlPSJ0b3A6IDUw
JTsiPjwvZGl2PgorICAgICAgICA8L2Rpdj4KKyAgICA8L2Rpdj4KKzwvZGl2PgorCis8IS0tIDQu
IGhlaWdodDogc3RyZXRjaCBpbnNpZGUgYXV0by1oZWlnaHQgY29sdW1uIGZsZXggaXRlbSAoaW5k
ZWZpbml0ZSkgLS0+Cis8ZGl2IHN0eWxlPSJkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjog
Y29sdW1uOyI+CisgICAgPGRpdiBzdHlsZT0iZmxleC1ncm93OiAxOyI+CisgICAgICAgIDxkaXYg
aWQ9InQ0LWl0ZW0iIHN0eWxlPSJoZWlnaHQ6IHN0cmV0Y2g7Ij4KKyAgICAgICAgICAgIDxkaXYg
Y2xhc3M9ImdyZWVuIiBpZD0idDQiIHN0eWxlPSJ0b3A6IDUwJTsiPjwvZGl2PgorICAgICAgICA8
L2Rpdj4KKyAgICA8L2Rpdj4KKzwvZGl2PgorCis8c2NyaXB0PgorZnVuY3Rpb24gb2Zmc2V0RnJv
bUl0ZW0oZ3JlZW5JZCwgaXRlbUlkKSB7CisgICAgdmFyIGdyZWVuID0gZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoZ3JlZW5JZCk7CisgICAgdmFyIGl0ZW0gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZChpdGVtSWQpOworICAgIHJldHVybiBncmVlbi5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS50b3Ag
LSBpdGVtLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnRvcDsKK30KKwordGVzdChmdW5jdGlvbigp
IHsKKyAgICBhc3NlcnRfZXF1YWxzKG9mZnNldEZyb21JdGVtKCd0MScsICd0MS1pdGVtJyksIDEw
MCk7Cit9LCAnaGVpZ2h0OiBzdHJldGNoIGFnYWluc3QgZGVmaW5pdGUgcGFyZW50LCB0b3A6IDUw
JScpOworCit0ZXN0KGZ1bmN0aW9uKCkgeworICAgIGFzc2VydF9lcXVhbHMob2Zmc2V0RnJvbUl0
ZW0oJ3QyJywgJ3QyLWl0ZW0nKSwgMCk7Cit9LCAnaGVpZ2h0OiBzdHJldGNoIGFnYWluc3QgYXV0
byBwYXJlbnQsIHRvcDogNTAlJyk7CisKK3Rlc3QoZnVuY3Rpb24oKSB7CisgICAgYXNzZXJ0X2Vx
dWFscyhvZmZzZXRGcm9tSXRlbSgndDMnLCAndDMtaXRlbScpLCAxMDApOworfSwgJ2hlaWdodDog
c3RyZXRjaCBpbnNpZGUgc3RyZXRjaGVkIGZsZXggaXRlbSwgdG9wOiA1MCUnKTsKKwordGVzdChm
dW5jdGlvbigpIHsKKyAgICBhc3NlcnRfZXF1YWxzKG9mZnNldEZyb21JdGVtKCd0NCcsICd0NC1p
dGVtJyksIDApOworfSwgJ2hlaWdodDogc3RyZXRjaCBpbnNpZGUgYXV0by1oZWlnaHQgY29sdW1u
IGZsZXggaXRlbSwgdG9wOiA1MCUnKTsKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXBvc2l0aW9uL3Bvc2l0
aW9uLXJlbGF0aXZlLTAxNS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtcG9zaXRpb24vcG9zaXRpb24tcmVsYXRpdmUtMDE1
LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLjNl
YmYwNjk3N2UxNwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1wb3NpdGlvbi9wb3NpdGlvbi1yZWxhdGl2ZS0wMTUt
ZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMjIgQEAKKworUEFTUyBGaXhlZCBoZWlnaHQgY29udGFp
bmluZyBibG9jaywgdG9wOiA1MCUKK1BBU1MgQXV0byBoZWlnaHQgY29udGFpbmluZyBibG9jaywg
dG9wOiA1MCUKK1BBU1MgUGVyY2VudGFnZSBoZWlnaHQgY29udGFpbmluZyBibG9jaywgdG9wOiA1
MCUKK1BBU1MgT09GIHdpdGggaW1wbGljaXQgaGVpZ2h0LCB0b3A6IDUwJQorUEFTUyBHcmlkIGl0
ZW0gc3RyZXRjaGVkLCB0b3A6IDUwJQorUEFTUyBHcmlkIGl0ZW0gd2l0aCAwcHggdHJhY2ssIHRv
cDogNTAlCitQQVNTIEdyaWQgaXRlbSB3aXRoIGF1dG8gdHJhY2sgKHN0cmV0Y2hlZCB0byAyMDBw
eCksIHRvcDogNTAlCitQQVNTIEdyaWQgaXRlbSB3aXRoIGZpeGVkIDEwMHB4IHRyYWNrLCB0b3A6
IDUwJQorUEFTUyBHcmlkIGl0ZW0gd2l0aCA1MCUgdHJhY2ssIHRvcDogNTAlCitQQVNTIFVucmVz
b2x2YWJsZSBwZXJjZW50YWdlIGhlaWdodCAoMTAwJSBvZiBhdXRvIGJvZHkpLCB0b3A6IDUwJQor
UEFTUyBVbnJlc29sdmFibGUgcGVyY2VudGFnZSBoZWlnaHQgd2l0aCBtaW4taGVpZ2h0LCB0b3A6
IDUwJQorUEFTUyBmaXQtY29udGVudCBoZWlnaHQsIHRvcDogNTAlCitQQVNTIG1heC1jb250ZW50
IGhlaWdodCwgdG9wOiA1MCUKK1BBU1MgbWluLWNvbnRlbnQgaGVpZ2h0LCB0b3A6IDUwJQorUEFT
UyBOZXN0ZWQgdW5yZXNvbHZhYmxlIHBlcmNlbnRhZ2UgaGVpZ2h0cywgdG9wOiA1MCUKK1BBU1Mg
Y2FsYygpIGZpeGVkIGhlaWdodCwgdG9wOiA1MCUKK1BBU1MgY2FsYygpIHdpdGggcmVzb2x2YWJs
ZSBwZXJjZW50YWdlLCB0b3A6IDUwJQorUEFTUyBjYWxjKCkgd2l0aCB1bnJlc29sdmFibGUgcGVy
Y2VudGFnZSwgdG9wOiA1MCUKK1BBU1Mgc3RyZXRjaCBoZWlnaHQsIHRvcDogNTAlCitQQVNTIENo
YWluIG9mIHJlc29sdmFibGUgcGVyY2VudGFnZXMsIHRvcDogNTAlCisKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1wb3NpdGlv
bi9wb3NpdGlvbi1yZWxhdGl2ZS0wMTUuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1wb3NpdGlvbi9wb3NpdGlvbi1yZWxhdGl2ZS0wMTUu
aHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLjRiYzFiNDRhMmY5
MQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL2Nzcy1wb3NpdGlvbi9wb3NpdGlvbi1yZWxhdGl2ZS0wMTUuaHRtbApAQCAt
MCwwICsxLDIzNiBAQAorPCFET0NUWVBFIGh0bWw+Cis8dGl0bGU+Q1NTIFBvc2l0aW9uOiBwZXJj
ZW50YWdlIHRvcCBvbiByZWxhdGl2ZWx5IHBvc2l0aW9uZWQgZWxlbWVudHMgd2l0aCB2YXJpb3Vz
IGNvbnRhaW5pbmcgYmxvY2sgaGVpZ2h0czwvdGl0bGU+Cis8bGluayByZWw9ImhlbHAiIGhyZWY9
Imh0dHBzOi8vZHJhZnRzLmNzc3dnLm9yZy9jc3MtcG9zaXRpb24tMy8jdmFsZGVmLXRvcC1wZXJj
ZW50YWdlIj4KKzxsaW5rIHJlbD0iaGVscCIgaHJlZj0iaHR0cHM6Ly9kcmFmdHMuY3Nzd2cub3Jn
L2Nzcy1zaXppbmctMy8jcGVyY2VudGFnZS1zaXppbmciPgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJj
ZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVz
dGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorPHN0eWxlPgorYm9keSB7CisgICAgbWFyZ2lu
OiAwOworfQorCisuZ3JlZW4geworICAgIHdpZHRoOiAyMHB4OworICAgIGhlaWdodDogMjBweDsK
KyAgICBiYWNrZ3JvdW5kOiBncmVlbjsKKyAgICBwb3NpdGlvbjogcmVsYXRpdmU7Cit9Cis8L3N0
eWxlPgorCis8IS0tIDEuIEZpeGVkIGhlaWdodCBjb250YWluaW5nIGJsb2NrLCB0b3A6IDUwJSAt
LT4KKzxkaXYgaWQ9InQxLWNiIiBzdHlsZT0iaGVpZ2h0OiAyMDBweDsiPgorICAgIDxkaXYgY2xh
c3M9ImdyZWVuIiBpZD0idDEiIHN0eWxlPSJ0b3A6IDUwJTsiPjwvZGl2PgorPC9kaXY+CisKKzwh
LS0gMi4gQXV0byBoZWlnaHQgY29udGFpbmluZyBibG9jaywgdG9wOiA1MCUgLS0+Cis8ZGl2IGlk
PSJ0Mi1jYiI+CisgICAgPGRpdiBjbGFzcz0iZ3JlZW4iIGlkPSJ0MiIgc3R5bGU9InRvcDogNTAl
OyI+PC9kaXY+Cis8L2Rpdj4KKworPCEtLSAzLiBQZXJjZW50YWdlIGhlaWdodCBjb250YWluaW5n
IGJsb2NrIChwYXJlbnQgaGFzIGZpeGVkIGhlaWdodCksIHRvcDogNTAlIC0tPgorPGRpdiBzdHls
ZT0iaGVpZ2h0OiAyMDBweDsiPgorICAgIDxkaXYgaWQ9InQzLWNiIiBzdHlsZT0iaGVpZ2h0OiA1
MCU7Ij4KKyAgICAgICAgPGRpdiBjbGFzcz0iZ3JlZW4iIGlkPSJ0MyIgc3R5bGU9InRvcDogNTAl
OyI+PC9kaXY+CisgICAgPC9kaXY+Cis8L2Rpdj4KKworPCEtLSA0LiBPT0Ygd2l0aCBib3RoIGlu
c2V0cyAoaW1wbGljaXQgaGVpZ2h0KSwgdG9wOiA1MCUgLS0+Cis8ZGl2IHN0eWxlPSJwb3NpdGlv
bjogcmVsYXRpdmU7IGhlaWdodDogMjAwcHg7Ij4KKyAgICA8ZGl2IGlkPSJ0NC1jYiIgc3R5bGU9
InBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwOyBib3R0b206IDA7IGxlZnQ6IDA7IHJpZ2h0OiAw
OyI+CisgICAgICAgIDxkaXYgY2xhc3M9ImdyZWVuIiBpZD0idDQiIHN0eWxlPSJ0b3A6IDUwJTsi
PjwvZGl2PgorICAgIDwvZGl2PgorPC9kaXY+CisKKzwhLS0gNS4gR3JpZCBpdGVtIHN0cmV0Y2hl
ZCwgdG9wOiA1MCUgLS0+Cis8ZGl2IHN0eWxlPSJkaXNwbGF5OiBncmlkOyBoZWlnaHQ6IDIwMHB4
OyI+CisgICAgPGRpdiBpZD0idDUtY2IiPgorICAgICAgICA8ZGl2IGNsYXNzPSJncmVlbiIgaWQ9
InQ1IiBzdHlsZT0idG9wOiA1MCU7Ij48L2Rpdj4KKyAgICA8L2Rpdj4KKzwvZGl2PgorCis8IS0t
IDYuIEdyaWQgaXRlbSB3aXRoIDBweCB0cmFjaywgdG9wOiA1MCUgLS0+Cis8ZGl2IHN0eWxlPSJk
aXNwbGF5OiBncmlkOyBncmlkLXRlbXBsYXRlLXJvd3M6IDBweDsgaGVpZ2h0OiAyMDBweDsiPgor
ICAgIDxkaXYgaWQ9InQ2LWNiIj4KKyAgICAgICAgPGRpdiBjbGFzcz0iZ3JlZW4iIGlkPSJ0NiIg
c3R5bGU9InRvcDogNTAlOyI+PC9kaXY+CisgICAgPC9kaXY+Cis8L2Rpdj4KKworPCEtLSA3LiBH
cmlkIGl0ZW0gd2l0aCBhdXRvIHRyYWNrLCB0b3A6IDUwJSAtLT4KKzxkaXYgc3R5bGU9ImRpc3Bs
YXk6IGdyaWQ7IGhlaWdodDogMjAwcHg7Ij4KKyAgICA8ZGl2IGlkPSJ0Ny1jYiIgc3R5bGU9Imhl
aWdodDogYXV0bzsiPgorICAgICAgICA8ZGl2IGNsYXNzPSJncmVlbiIgaWQ9InQ3IiBzdHlsZT0i
dG9wOiA1MCU7Ij48L2Rpdj4KKyAgICA8L2Rpdj4KKzwvZGl2PgorCis8IS0tIDguIEdyaWQgaXRl
bSB3aXRoIGZpeGVkIHRyYWNrLCB0b3A6IDUwJSAtLT4KKzxkaXYgc3R5bGU9ImRpc3BsYXk6IGdy
aWQ7IGdyaWQtdGVtcGxhdGUtcm93czogMTAwcHg7IGhlaWdodDogMjAwcHg7Ij4KKyAgICA8ZGl2
IGlkPSJ0OC1jYiI+CisgICAgICAgIDxkaXYgY2xhc3M9ImdyZWVuIiBpZD0idDgiIHN0eWxlPSJ0
b3A6IDUwJTsiPjwvZGl2PgorICAgIDwvZGl2PgorPC9kaXY+CisKKzwhLS0gOS4gR3JpZCBpdGVt
IHdpdGggcGVyY2VudGFnZSB0cmFjaywgdG9wOiA1MCUgLS0+Cis8ZGl2IHN0eWxlPSJkaXNwbGF5
OiBncmlkOyBncmlkLXRlbXBsYXRlLXJvd3M6IDUwJTsgaGVpZ2h0OiAyMDBweDsiPgorICAgIDxk
aXYgaWQ9InQ5LWNiIj4KKyAgICAgICAgPGRpdiBjbGFzcz0iZ3JlZW4iIGlkPSJ0OSIgc3R5bGU9
InRvcDogNTAlOyI+PC9kaXY+CisgICAgPC9kaXY+Cis8L2Rpdj4KKworPCEtLSAxMC4gUGVyY2Vu
dGFnZSBoZWlnaHQgYWdhaW5zdCBhdXRvLWhlaWdodCBib2R5LCB0b3A6IDUwJSAtLT4KKzxkaXYg
aWQ9InQxMC1jYiIgc3R5bGU9ImhlaWdodDogMTAwJTsiPgorICAgIDxkaXYgY2xhc3M9ImdyZWVu
IiBpZD0idDEwIiBzdHlsZT0idG9wOiA1MCU7Ij48L2Rpdj4KKzwvZGl2PgorCis8IS0tIDExLiBQ
ZXJjZW50YWdlIGhlaWdodCBhZ2FpbnN0IGF1dG8gcGFyZW50ICh1bnJlc29sdmFibGUpLCB0b3A6
IDUwJSAtLT4KKzxkaXY+CisgICAgPGRpdiBpZD0idDExLWNiIiBzdHlsZT0iaGVpZ2h0OiA1MCU7
IG1pbi1oZWlnaHQ6IDIwMHB4OyI+CisgICAgICAgIDxkaXYgY2xhc3M9ImdyZWVuIiBpZD0idDEx
IiBzdHlsZT0idG9wOiA1MCU7Ij48L2Rpdj4KKyAgICA8L2Rpdj4KKzwvZGl2PgorCis8IS0tIDEy
LiBmaXQtY29udGVudCBoZWlnaHQsIHRvcDogNTAlIC0tPgorPGRpdiBpZD0idDEyLWNiIiBzdHls
ZT0iaGVpZ2h0OiBmaXQtY29udGVudDsgbWluLWhlaWdodDogMjAwcHg7Ij4KKyAgICA8ZGl2IGNs
YXNzPSJncmVlbiIgaWQ9InQxMiIgc3R5bGU9InRvcDogNTAlOyI+PC9kaXY+Cis8L2Rpdj4KKwor
PCEtLSAxMy4gbWF4LWNvbnRlbnQgaGVpZ2h0LCB0b3A6IDUwJSAtLT4KKzxkaXYgaWQ9InQxMy1j
YiIgc3R5bGU9ImhlaWdodDogbWF4LWNvbnRlbnQ7IG1pbi1oZWlnaHQ6IDIwMHB4OyI+CisgICAg
PGRpdiBjbGFzcz0iZ3JlZW4iIGlkPSJ0MTMiIHN0eWxlPSJ0b3A6IDUwJTsiPjwvZGl2PgorPC9k
aXY+CisKKzwhLS0gMTQuIG1pbi1jb250ZW50IGhlaWdodCwgdG9wOiA1MCUgLS0+Cis8ZGl2IGlk
PSJ0MTQtY2IiIHN0eWxlPSJoZWlnaHQ6IG1pbi1jb250ZW50OyBtaW4taGVpZ2h0OiAyMDBweDsi
PgorICAgIDxkaXYgY2xhc3M9ImdyZWVuIiBpZD0idDE0IiBzdHlsZT0idG9wOiA1MCU7Ij48L2Rp
dj4KKzwvZGl2PgorCis8IS0tIDE1LiBOZXN0ZWQgdW5yZXNvbHZhYmxlIHBlcmNlbnRhZ2VzLCB0
b3A6IDUwJSAtLT4KKzxkaXY+CisgICAgPGRpdiBzdHlsZT0iaGVpZ2h0OiA1MCU7Ij4KKyAgICAg
ICAgPGRpdiBpZD0idDE1LWNiIiBzdHlsZT0iaGVpZ2h0OiA1MCU7IG1pbi1oZWlnaHQ6IDIwMHB4
OyI+CisgICAgICAgICAgICA8ZGl2IGNsYXNzPSJncmVlbiIgaWQ9InQxNSIgc3R5bGU9InRvcDog
NTAlOyI+PC9kaXY+CisgICAgICAgIDwvZGl2PgorICAgIDwvZGl2PgorPC9kaXY+CisKKzwhLS0g
MTYuIGNhbGMoKSBmaXhlZCBoZWlnaHQsIHRvcDogNTAlIC0tPgorPGRpdiBpZD0idDE2LWNiIiBz
dHlsZT0iaGVpZ2h0OiBjYWxjKDEwMHB4ICsgMTAwcHgpOyI+CisgICAgPGRpdiBjbGFzcz0iZ3Jl
ZW4iIGlkPSJ0MTYiIHN0eWxlPSJ0b3A6IDUwJTsiPjwvZGl2PgorPC9kaXY+CisKKzwhLS0gMTcu
IGNhbGMoKSB3aXRoIHJlc29sdmFibGUgcGVyY2VudGFnZSwgdG9wOiA1MCUgLS0+Cis8ZGl2IHN0
eWxlPSJoZWlnaHQ6IDIwMHB4OyI+CisgICAgPGRpdiBpZD0idDE3LWNiIiBzdHlsZT0iaGVpZ2h0
OiBjYWxjKDUwJSArIDBweCk7Ij4KKyAgICAgICAgPGRpdiBjbGFzcz0iZ3JlZW4iIGlkPSJ0MTci
IHN0eWxlPSJ0b3A6IDUwJTsiPjwvZGl2PgorICAgIDwvZGl2PgorPC9kaXY+CisKKzwhLS0gMTgu
IGNhbGMoKSB3aXRoIHVucmVzb2x2YWJsZSBwZXJjZW50YWdlLCB0b3A6IDUwJSAtLT4KKzxkaXY+
CisgICAgPGRpdiBpZD0idDE4LWNiIiBzdHlsZT0iaGVpZ2h0OiBjYWxjKDUwJSArIDBweCk7IG1p
bi1oZWlnaHQ6IDIwMHB4OyI+CisgICAgICAgIDxkaXYgY2xhc3M9ImdyZWVuIiBpZD0idDE4IiBz
dHlsZT0idG9wOiA1MCU7Ij48L2Rpdj4KKyAgICA8L2Rpdj4KKzwvZGl2PgorCis8IS0tIDE5LiBz
dHJldGNoIGhlaWdodCwgdG9wOiA1MCUgLS0+Cis8ZGl2IHN0eWxlPSJoZWlnaHQ6IDIwMHB4OyI+
CisgICAgPGRpdiBpZD0idDE5LWNiIiBzdHlsZT0iaGVpZ2h0OiBzdHJldGNoOyI+CisgICAgICAg
IDxkaXYgY2xhc3M9ImdyZWVuIiBpZD0idDE5IiBzdHlsZT0idG9wOiA1MCU7Ij48L2Rpdj4KKyAg
ICA8L2Rpdj4KKzwvZGl2PgorCis8IS0tIDIwLiBDaGFpbiBvZiBwZXJjZW50YWdlcyByZXNvbHZp
bmcgdG8gZml4ZWQgaGVpZ2h0LCB0b3A6IDUwJSAtLT4KKzxkaXYgc3R5bGU9ImhlaWdodDogMjAw
cHg7Ij4KKyAgICA8ZGl2IHN0eWxlPSJoZWlnaHQ6IDUwJTsiPgorICAgICAgICA8ZGl2IGlkPSJ0
MjAtY2IiIHN0eWxlPSJoZWlnaHQ6IDUwJTsiPgorICAgICAgICAgICAgPGRpdiBjbGFzcz0iZ3Jl
ZW4iIGlkPSJ0MjAiIHN0eWxlPSJ0b3A6IDUwJTsiPjwvZGl2PgorICAgICAgICA8L2Rpdj4KKyAg
ICA8L2Rpdj4KKzwvZGl2PgorCis8c2NyaXB0PgorZnVuY3Rpb24gb2Zmc2V0RnJvbVBhcmVudChn
cmVlbklkLCBwYXJlbnRJZCkgeworICAgIHZhciBncmVlbiA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKGdyZWVuSWQpOworICAgIHZhciBwYXJlbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChw
YXJlbnRJZCk7CisgICAgcmV0dXJuIGdyZWVuLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnRvcCAt
IHBhcmVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS50b3A7Cit9CisKK3Rlc3QoZnVuY3Rpb24o
KSB7CisgICAgYXNzZXJ0X2VxdWFscyhvZmZzZXRGcm9tUGFyZW50KCd0MScsICd0MS1jYicpLCAx
MDApOworfSwgJ0ZpeGVkIGhlaWdodCBjb250YWluaW5nIGJsb2NrLCB0b3A6IDUwJScpOworCit0
ZXN0KGZ1bmN0aW9uKCkgeworICAgIGFzc2VydF9lcXVhbHMob2Zmc2V0RnJvbVBhcmVudCgndDIn
LCAndDItY2InKSwgMCk7Cit9LCAnQXV0byBoZWlnaHQgY29udGFpbmluZyBibG9jaywgdG9wOiA1
MCUnKTsKKwordGVzdChmdW5jdGlvbigpIHsKKyAgICBhc3NlcnRfZXF1YWxzKG9mZnNldEZyb21Q
YXJlbnQoJ3QzJywgJ3QzLWNiJyksIDUwKTsKK30sICdQZXJjZW50YWdlIGhlaWdodCBjb250YWlu
aW5nIGJsb2NrLCB0b3A6IDUwJScpOworCit0ZXN0KGZ1bmN0aW9uKCkgeworICAgIGFzc2VydF9l
cXVhbHMob2Zmc2V0RnJvbVBhcmVudCgndDQnLCAndDQtY2InKSwgMTAwKTsKK30sICdPT0Ygd2l0
aCBpbXBsaWNpdCBoZWlnaHQsIHRvcDogNTAlJyk7CisKK3Rlc3QoZnVuY3Rpb24oKSB7CisgICAg
YXNzZXJ0X2VxdWFscyhvZmZzZXRGcm9tUGFyZW50KCd0NScsICd0NS1jYicpLCAxMDApOworfSwg
J0dyaWQgaXRlbSBzdHJldGNoZWQsIHRvcDogNTAlJyk7CisKK3Rlc3QoZnVuY3Rpb24oKSB7Cisg
ICAgYXNzZXJ0X2VxdWFscyhvZmZzZXRGcm9tUGFyZW50KCd0NicsICd0Ni1jYicpLCAwKTsKK30s
ICdHcmlkIGl0ZW0gd2l0aCAwcHggdHJhY2ssIHRvcDogNTAlJyk7CisKK3Rlc3QoZnVuY3Rpb24o
KSB7CisgICAgYXNzZXJ0X2VxdWFscyhvZmZzZXRGcm9tUGFyZW50KCd0NycsICd0Ny1jYicpLCAx
MDApOworfSwgJ0dyaWQgaXRlbSB3aXRoIGF1dG8gdHJhY2sgKHN0cmV0Y2hlZCB0byAyMDBweCks
IHRvcDogNTAlJyk7CisKK3Rlc3QoZnVuY3Rpb24oKSB7CisgICAgYXNzZXJ0X2VxdWFscyhvZmZz
ZXRGcm9tUGFyZW50KCd0OCcsICd0OC1jYicpLCA1MCk7Cit9LCAnR3JpZCBpdGVtIHdpdGggZml4
ZWQgMTAwcHggdHJhY2ssIHRvcDogNTAlJyk7CisKK3Rlc3QoZnVuY3Rpb24oKSB7CisgICAgYXNz
ZXJ0X2VxdWFscyhvZmZzZXRGcm9tUGFyZW50KCd0OScsICd0OS1jYicpLCA1MCk7Cit9LCAnR3Jp
ZCBpdGVtIHdpdGggNTAlIHRyYWNrLCB0b3A6IDUwJScpOworCit0ZXN0KGZ1bmN0aW9uKCkgewor
ICAgIGFzc2VydF9lcXVhbHMob2Zmc2V0RnJvbVBhcmVudCgndDEwJywgJ3QxMC1jYicpLCAwKTsK
K30sICdVbnJlc29sdmFibGUgcGVyY2VudGFnZSBoZWlnaHQgKDEwMCUgb2YgYXV0byBib2R5KSwg
dG9wOiA1MCUnKTsKKwordGVzdChmdW5jdGlvbigpIHsKKyAgICBhc3NlcnRfZXF1YWxzKG9mZnNl
dEZyb21QYXJlbnQoJ3QxMScsICd0MTEtY2InKSwgMCk7Cit9LCAnVW5yZXNvbHZhYmxlIHBlcmNl
bnRhZ2UgaGVpZ2h0IHdpdGggbWluLWhlaWdodCwgdG9wOiA1MCUnKTsKKwordGVzdChmdW5jdGlv
bigpIHsKKyAgICBhc3NlcnRfZXF1YWxzKG9mZnNldEZyb21QYXJlbnQoJ3QxMicsICd0MTItY2In
KSwgMCk7Cit9LCAnZml0LWNvbnRlbnQgaGVpZ2h0LCB0b3A6IDUwJScpOworCit0ZXN0KGZ1bmN0
aW9uKCkgeworICAgIGFzc2VydF9lcXVhbHMob2Zmc2V0RnJvbVBhcmVudCgndDEzJywgJ3QxMy1j
YicpLCAwKTsKK30sICdtYXgtY29udGVudCBoZWlnaHQsIHRvcDogNTAlJyk7CisKK3Rlc3QoZnVu
Y3Rpb24oKSB7CisgICAgYXNzZXJ0X2VxdWFscyhvZmZzZXRGcm9tUGFyZW50KCd0MTQnLCAndDE0
LWNiJyksIDApOworfSwgJ21pbi1jb250ZW50IGhlaWdodCwgdG9wOiA1MCUnKTsKKwordGVzdChm
dW5jdGlvbigpIHsKKyAgICBhc3NlcnRfZXF1YWxzKG9mZnNldEZyb21QYXJlbnQoJ3QxNScsICd0
MTUtY2InKSwgMCk7Cit9LCAnTmVzdGVkIHVucmVzb2x2YWJsZSBwZXJjZW50YWdlIGhlaWdodHMs
IHRvcDogNTAlJyk7CisKK3Rlc3QoZnVuY3Rpb24oKSB7CisgICAgYXNzZXJ0X2VxdWFscyhvZmZz
ZXRGcm9tUGFyZW50KCd0MTYnLCAndDE2LWNiJyksIDEwMCk7Cit9LCAnY2FsYygpIGZpeGVkIGhl
aWdodCwgdG9wOiA1MCUnKTsKKwordGVzdChmdW5jdGlvbigpIHsKKyAgICBhc3NlcnRfZXF1YWxz
KG9mZnNldEZyb21QYXJlbnQoJ3QxNycsICd0MTctY2InKSwgNTApOworfSwgJ2NhbGMoKSB3aXRo
IHJlc29sdmFibGUgcGVyY2VudGFnZSwgdG9wOiA1MCUnKTsKKwordGVzdChmdW5jdGlvbigpIHsK
KyAgICBhc3NlcnRfZXF1YWxzKG9mZnNldEZyb21QYXJlbnQoJ3QxOCcsICd0MTgtY2InKSwgMCk7
Cit9LCAnY2FsYygpIHdpdGggdW5yZXNvbHZhYmxlIHBlcmNlbnRhZ2UsIHRvcDogNTAlJyk7CisK
K3Rlc3QoZnVuY3Rpb24oKSB7CisgICAgYXNzZXJ0X2VxdWFscyhvZmZzZXRGcm9tUGFyZW50KCd0
MTknLCAndDE5LWNiJyksIDEwMCk7Cit9LCAnc3RyZXRjaCBoZWlnaHQsIHRvcDogNTAlJyk7CisK
K3Rlc3QoZnVuY3Rpb24oKSB7CisgICAgYXNzZXJ0X2VxdWFscyhvZmZzZXRGcm9tUGFyZW50KCd0
MjAnLCAndDIwLWNiJyksIDI1KTsKK30sICdDaGFpbiBvZiByZXNvbHZhYmxlIHBlcmNlbnRhZ2Vz
LCB0b3A6IDUwJScpOworPC9zY3JpcHQ+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>479274</attachid>
            <date>2026-04-23 13:23:01 -0700</date>
            <delta_ts>2026-04-23 16:41:24 -0700</delta_ts>
            <desc>[fast-cq]Patch</desc>
            <filename>bug-312944-20260423132300.patch</filename>
            <type>text/plain</type>
            <size>36896</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">RnJvbSBiZDE5MDIyYmFjMDRlOGMxMmVkNjg3MTNmM2M4YTNiZTNjYzg5NjljIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbGFuIEJhcmFkbGF5IDx6YWxhbkBhcHBsZS5jb20+CkRhdGU6
IFR1ZSwgMjEgQXByIDIwMjYgMTg6MDE6MDkgLTA3MDAKU3ViamVjdDogW1BBVENIXSBbRmxleF0g
QXZvaWQgZXhwZW5zaXZlIHBlcmNlbnRhZ2UgaGVpZ2h0IHdhbGsgd2hlbiByZXNvbHZpbmcKIHJl
bGF0aXZlIHBvc2l0aW9uIG9mZnNldHMgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTMxMjk0NAoKUmV2aWV3ZWQgYnkgU2FtbXkgR2lsbC4KCldoZW4gYSByZWxhdGl2ZWx5
IHBvc2l0aW9uZWQgZWxlbWVudCBoYXMgYSBwZXJjZW50YWdlIHRvcCBvciBib3R0b20gKGUuZy4K
dG9wOiAxMCUpLCB3ZSBuZWVkIHRvIGtub3cgaWYgaXRzIGNvbnRhaW5pbmcgYmxvY2sgaGFzIGEg
ZGVmaW5pdGUgaGVpZ2h0LgpUaGUgZXhpc3RpbmcgY2hlY2sgKGhhc0F1dG9IZWlnaHRPckNvbnRh
aW5pbmdCbG9ja1dpdGhBdXRvSGVpZ2h0KSBpbiBkZWVwbHkKbmVzdGVkIGNvbHVtbiBmbGV4IGNv
bnRlbnQgY291bGQgdHJpZ2dlciBhbiBleHBlbnNpdmUgTyhuMikgd2Fsay4KClRoZSBrZXkgaW5z
aWdodCBpcyB0aGF0IHJlbGF0aXZlUG9zaXRpb25PZmZzZXQgcnVucyBhZnRlciBsYXlvdXQgLS0g
aXQgb25seQphZmZlY3RzIHZpc3VhbCBwb3NpdGlvbmluZyAocGFpbnRpbmcsIGhpdCB0ZXN0aW5n
KSwgbm90IGxheW91dCBnZW9tZXRyeS4gRHVyaW5nCmxheW91dCwgdGhlIGV4cGVuc2l2ZSB3YWxr
IGlzIG5lZWRlZCBiZWNhdXNlIGZsZXggaXRlbSBzaXplcyBhcmVuJ3QgY29tcHV0ZWQgeWV0CmFu
ZCBsYXlvdXQtcGhhc2UgY2hlY2tzIGdhdGUgd2hlbiBpdCdzIHNhZmUgdG8gcmVzb2x2ZSBwZXJj
ZW50YWdlcy4gQnV0IGFmdGVyCmxheW91dCwgYWxsIHNpemVzIGFyZSBmaW5hbC4gV2UgY2FuIGFu
c3dlciAiaXMgdGhpcyBoZWlnaHQgZGVmaW5pdGU/IiB3aXRoCnNpbXBsZSBzdHlsZSBjaGVja3Mg
aW5zdGVhZCBvZiByZS13YWxraW5nIHRoZSB0cmVlLgoKVGhlIG5ldyBoYXNEZWZpbml0ZUhlaWdo
dEJ5U3R5bGUgZnVuY3Rpb24gY2hlY2tzIDkuOCBydWxlcyBkaXJlY3RseToKLSBSdWxlIDM6IHN0
cmV0Y2hlZCBjcm9zcy1heGlzIGl0ZW1zIGhhdmUgZGVmaW5pdGUgaGVpZ2h0Ci0gUnVsZSAyOiBk
ZWZpbml0ZSBmbGV4LWJhc2lzIG1ha2VzIHBvc3QtZmxleGluZyBzaXplIGRlZmluaXRlCi0gUnVs
ZSAxOiBkZWZpbml0ZSBjb250YWluZXIgbWFpbiBzaXplIG1ha2VzIGFsbCBpdGVtcyBkZWZpbml0
ZSAocmVjdXJzZSkKRm9yIG5vbi1mbGV4IGNhc2VzIGl0IGNoZWNrcyBzdHlsZSB2YWx1ZXMgKGF1
dG8sIHBlcmNlbnRhZ2UsIHN0cmV0Y2gsIGludHJpbnNpYyBrZXl3b3JkcykKYW5kIHdhbGtzIHRo
ZSBwZXJjZW50YWdlIGNoYWluIHdoZW4gbmVlZGVkIC0tIGFsbCBPKDEpIHBlciBsZXZlbC4KCiog
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZsZXhi
b3gvcGVyY2VudGFnZS1zaXplLXF1aXJrcy0wMDQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKiBMYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZmxleGJveC9w
ZXJjZW50YWdlLXNpemUtcXVpcmtzLTAwNC5odG1sOiBBZGRlZC4KKiBMYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZmxleGJveC9wZXJjZW50YWdlLXNp
emUtcXVpcmtzLTAwNS1leHBlY3RlZC50eHQ6IEFkZGVkLgoqIExheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1mbGV4Ym94L3BlcmNlbnRhZ2Utc2l6ZS1x
dWlya3MtMDA1Lmh0bWw6IEFkZGVkLgoqIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL2Nzcy1mbGV4Ym94L3Bvc2l0aW9uLXJlbGF0aXZlLXBlcmNlbnRhZ2Ut
dG9wLTAwNC1leHBlY3RlZC50eHQ6IEFkZGVkLgoqIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1mbGV4Ym94L3Bvc2l0aW9uLXJlbGF0aXZlLXBlcmNl
bnRhZ2UtdG9wLTAwNC5odG1sOiBBZGRlZC4KKiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZmxleGJveC9wb3NpdGlvbi1yZWxhdGl2ZS1zdHJldGNo
LWhlaWdodC0wMDEtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZmxleGJveC9wb3NpdGlvbi1yZWxhdGl2ZS1z
dHJldGNoLWhlaWdodC0wMDEuaHRtbDogQWRkZWQuCiogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXBvc2l0aW9uL3Bvc2l0aW9uLXJlbGF0aXZlLTAx
NS1leHBlY3RlZC50eHQ6IEFkZGVkLgoqIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL2Nzcy1wb3NpdGlvbi9wb3NpdGlvbi1yZWxhdGl2ZS0wMTUuaHRtbDog
QWRkZWQuCiogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveE1vZGVsT2JqZWN0LmNw
cDoKKFdlYkNvcmU6OlJlbmRlckJveE1vZGVsT2JqZWN0Ojpjb250YWluaW5nQmxvY2tGb3JBdXRv
SGVpZ2h0RGV0ZWN0aW9uR2VuZXJpYyBjb25zdCk6CihXZWJDb3JlOjpoYXNEZWZpbml0ZUhlaWdo
dEJ5U3R5bGUpOgooV2ViQ29yZTo6UmVuZGVyQm94TW9kZWxPYmplY3Q6OnJlbGF0aXZlUG9zaXRp
b25PZmZzZXQgY29uc3QpOgoqIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJFbGVtZW50
Lmg6CihXZWJDb3JlOjpSZW5kZXJFbGVtZW50Ojppc0Fub255bW91c0ZvclBlcmNlbnRhZ2VSZXNv
bHV0aW9uIGNvbnN0KToKKiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRmxleGlibGVC
b3guaDoKLS0tCiAuLi4vcmVuZGVyaW5nL1JlbmRlckJveE1vZGVsT2JqZWN0LmNwcCAgICAgICAg
fCAgNjMgKysrKy0KIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJFbGVtZW50LmggICAg
ICB8ICAgMiArLQogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckZsZXhpYmxlQm94Lmgg
IHwgICA2ICstCiAuLi4vcGVyY2VudGFnZS1zaXplLXF1aXJrcy0wMDQtZXhwZWN0ZWQudHh0ICAg
fCAgIDYgKwogLi4uL3BlcmNlbnRhZ2Utc2l6ZS1xdWlya3MtMDA0Lmh0bWwgICAgICAgICAgIHwg
IDY5ICsrKysrCiAuLi4vcGVyY2VudGFnZS1zaXplLXF1aXJrcy0wMDUtZXhwZWN0ZWQudHh0ICAg
fCAgIDMgKwogLi4uL3BlcmNlbnRhZ2Utc2l6ZS1xdWlya3MtMDA1Lmh0bWwgICAgICAgICAgIHwg
IDI3ICsrCiAuLi5uLXJlbGF0aXZlLXBlcmNlbnRhZ2UtdG9wLTAwNC1leHBlY3RlZC50eHQgfCAg
MTEgKwogLi4uL3Bvc2l0aW9uLXJlbGF0aXZlLXBlcmNlbnRhZ2UtdG9wLTAwNC5odG1sIHwgMTM2
ICsrKysrKysrKysKIC4uLm4tcmVsYXRpdmUtc3RyZXRjaC1oZWlnaHQtMDAxLWV4cGVjdGVkLnR4
dCB8ICAgNiArCiAuLi4vcG9zaXRpb24tcmVsYXRpdmUtc3RyZXRjaC1oZWlnaHQtMDAxLmh0bWwg
fCAgNzUgKysrKysrCiAuLi4vcG9zaXRpb24tcmVsYXRpdmUtMDE1LWV4cGVjdGVkLnR4dCAgICAg
ICAgfCAgMjIgKysKIC4uLi9jc3MtcG9zaXRpb24vcG9zaXRpb24tcmVsYXRpdmUtMDE1Lmh0bWwg
ICB8IDIzNiArKysrKysrKysrKysrKysrKysKIDEzIGZpbGVzIGNoYW5nZWQsIDY1NSBpbnNlcnRp
b25zKCspLCA3IGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IExheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1mbGV4Ym94L3BlcmNlbnRhZ2Ut
c2l6ZS1xdWlya3MtMDA0LWV4cGVjdGVkLnR4dAogY3JlYXRlIG1vZGUgMTAwNjQ0IExheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1mbGV4Ym94L3BlcmNl
bnRhZ2Utc2l6ZS1xdWlya3MtMDA0Lmh0bWwKIGNyZWF0ZSBtb2RlIDEwMDY0NCBMYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZmxleGJveC9wZXJjZW50
YWdlLXNpemUtcXVpcmtzLTAwNS1leHBlY3RlZC50eHQKIGNyZWF0ZSBtb2RlIDEwMDY0NCBMYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZmxleGJveC9w
ZXJjZW50YWdlLXNpemUtcXVpcmtzLTAwNS5odG1sCiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZsZXhib3gvcG9z
aXRpb24tcmVsYXRpdmUtcGVyY2VudGFnZS10b3AtMDA0LWV4cGVjdGVkLnR4dAogY3JlYXRlIG1v
ZGUgMTAwNjQ0IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L2Nzcy1mbGV4Ym94L3Bvc2l0aW9uLXJlbGF0aXZlLXBlcmNlbnRhZ2UtdG9wLTAwNC5odG1sCiBj
cmVhdGUgbW9kZSAxMDA2NDQgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3MvY3NzLWZsZXhib3gvcG9zaXRpb24tcmVsYXRpdmUtc3RyZXRjaC1oZWlnaHQtMDAx
LWV4cGVjdGVkLnR4dAogY3JlYXRlIG1vZGUgMTAwNjQ0IExheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1mbGV4Ym94L3Bvc2l0aW9uLXJlbGF0aXZlLXN0
cmV0Y2gtaGVpZ2h0LTAwMS5odG1sCiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXBvc2l0aW9uL3Bvc2l0aW9uLXJl
bGF0aXZlLTAxNS1leHBlY3RlZC50eHQKIGNyZWF0ZSBtb2RlIDEwMDY0NCBMYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtcG9zaXRpb24vcG9zaXRpb24t
cmVsYXRpdmUtMDE1Lmh0bWwKCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyQm94TW9kZWxPYmplY3QuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
ckJveE1vZGVsT2JqZWN0LmNwcAppbmRleCA3ZjU2MzM2ZGI5NTEuLmI0MTBjMjQwNmI2MCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveE1vZGVsT2JqZWN0LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuY3Bw
CkBAIC0yMDQsMTAgKzIwNCwxMiBAQCBSZW5kZXJCbG9jayogUmVuZGVyQm94TW9kZWxPYmplY3Q6
OmNvbnRhaW5pbmdCbG9ja0ZvckF1dG9IZWlnaHREZXRlY3Rpb25HZW5lcmljKAogICAgIC8vIEFu
b255bW91cyBibG9jayBib3hlcyBhcmUgaWdub3JlZCB3aGVuIHJlc29sdmluZyBwZXJjZW50YWdl
IHZhbHVlcyB0aGF0CiAgICAgLy8gd291bGQgcmVmZXIgdG8gaXQ6IHRoZSBjbG9zZXN0IG5vbi1h
bm9ueW1vdXMgYW5jZXN0b3IgYm94IGlzIHVzZWQgaW5zdGVhZC4KICAgICBhdXRvKiBhbmNlc3Rv
ciA9IGNvbnRhaW5pbmdCbG9jaygpOwotICAgIHdoaWxlIChhbmNlc3RvciAmJiBhbmNlc3Rvci0+
aXNBbm9ueW1vdXNGb3JQZXJjZW50YWdlUmVzb2x1dGlvbigpICYmICFpczxSZW5kZXJWaWV3Pihh
bmNlc3RvcikpCisgICAgd2hpbGUgKGFuY2VzdG9yICYmIGFuY2VzdG9yLT5pc0Fub255bW91c0Zv
clBlcmNlbnRhZ2VSZXNvbHV0aW9uKCkpCiAgICAgICAgIGFuY2VzdG9yID0gYW5jZXN0b3ItPmNv
bnRhaW5pbmdCbG9jaygpOwotICAgIGlmICghYW5jZXN0b3IpCisgICAgaWYgKCFhbmNlc3Rvcikg
eworICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKICAgICAgICAgcmV0dXJuIG51bGxwdHI7
CisgICAgfQogCiAgICAgLy8gTWF0Y2hpbmcgUmVuZGVyQm94OjpwZXJjZW50YWdlTG9naWNhbEhl
aWdodElzUmVzb2x2YWJsZSgpIGJ5CiAgICAgLy8gaWdub3JpbmcgdGFibGUgY2VsbCdzIGF0dHJp
YnV0ZSB2YWx1ZSwgd2hlcmUgaXQgc2F5cyB0aGF0IHRhYmxlIGNlbGxzCkBAIC0zMDksNiArMzEx
LDYxIEBAIERlY29kaW5nTW9kZSBSZW5kZXJCb3hNb2RlbE9iamVjdDo6ZGVjb2RpbmdNb2RlRm9y
SW1hZ2VEcmF3KGNvbnN0IEltYWdlJiBpbWFnZSwKICAgICByZXR1cm4gZGVmYXVsdERlY29kaW5n
TW9kZSgpOwogfQogCitzdGF0aWMgYm9vbCBoYXNEZWZpbml0ZUhlaWdodEJ5U3R5bGUoY29uc3Qg
UmVuZGVyQmxvY2smIGNvbnRhaW5pbmdCbG9jaykKK3sKKyAgICAvLyBDaGVja3Mgd2hldGhlciB0
aGUgY29udGFpbmluZyBibG9jayBoYXMgYSBkZWZpbml0ZSBoZWlnaHQgZm9yIHJlc29sdmluZwor
ICAgIC8vIHBlcmNlbnRhZ2UgdG9wL2JvdHRvbSBvbiByZWxhdGl2ZWx5IHBvc2l0aW9uZWQgZWxl
bWVudHMuIFRoaXMgaXMgYQorICAgIC8vIHN0eWxlLW9ubHkgYWx0ZXJuYXRpdmUgdG8gaGFzQXV0
b0hlaWdodE9yQ29udGFpbmluZ0Jsb2NrV2l0aEF1dG9IZWlnaHQKKyAgICAvLyB0aGF0IGF2b2lk
cyB0aGUgZXhwZW5zaXZlIGNvbXB1dGVQZXJjZW50YWdlTG9naWNhbEhlaWdodCByZWN1cnNpb24K
KyAgICAvLyB0cmlnZ2VyZWQgYnkgY2FuVXNlRmxleEl0ZW1Gb3JQZXJjZW50YWdlUmVzb2x1dGlv
biBpbiBuZXN0ZWQgZmxleCBjb250ZW50LgorICAgIGlmIChpczxSZW5kZXJWaWV3Pihjb250YWlu
aW5nQmxvY2spIHx8IGNvbnRhaW5pbmdCbG9jay5zdHJldGNoZXNUb1ZpZXdwb3J0KCkpCisgICAg
ICAgIHJldHVybiB0cnVlOworCisgICAgaWYgKGlzT3V0T2ZGbG93UG9zaXRpb25lZFdpdGhJbXBs
aWNpdEhlaWdodChjb250YWluaW5nQmxvY2spKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAg
IGlmIChjb250YWluaW5nQmxvY2suaXNHcmlkSXRlbSgpICYmIGNvbnRhaW5pbmdCbG9jay5ncmlk
QXJlYUNvbnRlbnRMb2dpY2FsSGVpZ2h0KCkpCisgICAgICAgIHJldHVybiB0cnVlOworCisgICAg
aWYgKGNvbnRhaW5pbmdCbG9jay5pc0ZsZXhJdGVtKCkpIHsKKyAgICAgICAgYXV0byYgZmxleENv
bnRhaW5lciA9IGRvd25jYXN0PFJlbmRlckZsZXhpYmxlQm94PigqY29udGFpbmluZ0Jsb2NrLnBh
cmVudCgpKTsKKyAgICAgICAgLy8gwqc5LjggcnVsZSAzOiBzdHJldGNoZWQgY3Jvc3MtYXhpcyBp
dGVtcyBoYXZlIGRlZmluaXRlIGNyb3NzIHNpemUuCisgICAgICAgIGlmIChmbGV4Q29udGFpbmVy
Lm1haW5BeGlzSXNGbGV4SXRlbUlubGluZUF4aXMoY29udGFpbmluZ0Jsb2NrKSkKKyAgICAgICAg
ICAgIHJldHVybiBmbGV4Q29udGFpbmVyLmFsaWdubWVudEZvckZsZXhJdGVtKGNvbnRhaW5pbmdC
bG9jaykgPT0gSXRlbVBvc2l0aW9uOjpTdHJldGNoOworICAgICAgICAvLyDCpzkuOCBydWxlIDI6
IGRlZmluaXRlIGZsZXgtYmFzaXMgbWFrZXMgcG9zdC1mbGV4aW5nIG1haW4gc2l6ZSBkZWZpbml0
ZS4KKyAgICAgICAgYXV0byBmbGV4QmFzaXMgPSBmbGV4Q29udGFpbmVyLmZsZXhCYXNpc0ZvckZs
ZXhJdGVtKGNvbnRhaW5pbmdCbG9jayk7CisgICAgICAgIGlmICghZmxleEJhc2lzLmlzQXV0bygp
ICYmICFmbGV4QmFzaXMuaXNDb250ZW50KCkgJiYgIWZsZXhCYXNpcy5pc1BlcmNlbnRPckNhbGN1
bGF0ZWQoKSAmJiAhZmxleEJhc2lzLmlzSW50cmluc2ljKCkpCisgICAgICAgICAgICByZXR1cm4g
dHJ1ZTsKKyAgICAgICAgLy8gwqc5LjggcnVsZSAxOiBkZWZpbml0ZSBjb250YWluZXIgbWFpbiBz
aXplIG1ha2VzIGFsbCBpdGVtcyBkZWZpbml0ZS4KKyAgICAgICAgcmV0dXJuIGhhc0RlZmluaXRl
SGVpZ2h0QnlTdHlsZShmbGV4Q29udGFpbmVyKTsKKyAgICB9CisKKyAgICAvLyBQZXJjZW50YWdl
IGFuZCBzdHJldGNoIGhlaWdodHMgYXJlIG9ubHkgZGVmaW5pdGUgaWYgdGhlIGFuY2VzdG9yIHRo
ZXkgcmVzb2x2ZSBhZ2FpbnN0IGlzIGRlZmluaXRlLgorICAgIGF1dG8gYW5jZXN0b3JIYXNEZWZp
bml0ZUhlaWdodCA9IFsmXSB7CisgICAgICAgIGZvciAoQ2hlY2tlZFB0ciBhbmNlc3RvciA9IGNv
bnRhaW5pbmdCbG9jay5jb250YWluaW5nQmxvY2soKTsgYW5jZXN0b3I7IGFuY2VzdG9yID0gYW5j
ZXN0b3ItPmNvbnRhaW5pbmdCbG9jaygpKSB7CisgICAgICAgICAgICBpZiAoIWFuY2VzdG9yLT5p
c0Fub255bW91c0ZvclBlcmNlbnRhZ2VSZXNvbHV0aW9uKCkpCisgICAgICAgICAgICAgICAgcmV0
dXJuIGhhc0RlZmluaXRlSGVpZ2h0QnlTdHlsZSgqYW5jZXN0b3IpOworICAgICAgICB9CisgICAg
ICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfTsK
KworICAgIGF1dG8mIGxvZ2ljYWxIZWlnaHQgPSBjb250YWluaW5nQmxvY2suc3R5bGUoKS5sb2dp
Y2FsSGVpZ2h0KCk7CisgICAgaWYgKGxvZ2ljYWxIZWlnaHQuaXNQZXJjZW50T3JDYWxjdWxhdGVk
KCkpIHsKKyAgICAgICAgaWYgKGNvbnRhaW5pbmdCbG9jay5kb2N1bWVudCgpLmluUXVpcmtzTW9k
ZSgpKSB7CisgICAgICAgICAgICAvLyBJbiBxdWlya3MgbW9kZSwgcGVyY2VudGFnZSBoZWlnaHRz
IHJlc29sdmUgZnJlZWx5IHVubGVzcyBpbnNpZGUgYSBmbGV4IGNvbnRhaW5lciAoZG9lcyBub3Qg
YXBwbHkgdG8gc3RyZXRjaCkuCisgICAgICAgICAgICBDaGVja2VkUHRyIGFuY2VzdG9yID0gY29u
dGFpbmluZ0Jsb2NrLmNvbnRhaW5pbmdCbG9jaygpOworICAgICAgICAgICAgcmV0dXJuICFhbmNl
c3RvciB8fCAhYW5jZXN0b3ItPmlzRmxleGlibGVCb3hJbmNsdWRpbmdEZXByZWNhdGVkKCk7Cisg
ICAgICAgIH0KKyAgICAgICAgcmV0dXJuIGFuY2VzdG9ySGFzRGVmaW5pdGVIZWlnaHQoKTsKKyAg
ICB9CisKKyAgICBpZiAobG9naWNhbEhlaWdodC5pc1N0cmV0Y2goKSkKKyAgICAgICAgcmV0dXJu
IGFuY2VzdG9ySGFzRGVmaW5pdGVIZWlnaHQoKTsKKworICAgIHJldHVybiAhbG9naWNhbEhlaWdo
dC5pc0F1dG8oKSAmJiAhbG9naWNhbEhlaWdodC5pc0ludHJpbnNpYygpOworfQorCiBMYXlvdXRT
aXplIFJlbmRlckJveE1vZGVsT2JqZWN0OjpyZWxhdGl2ZVBvc2l0aW9uT2Zmc2V0KCkgY29uc3QK
IHsKICAgICBhdXRvIGNvbnRhaW5pbmdCbG9ja1NraXBwaW5nQW5vbnltb3VzID0gWyZdIHsKQEAg
LTM3Myw3ICs0MzAsNyBAQCBMYXlvdXRTaXplIFJlbmRlckJveE1vZGVsT2JqZWN0OjpyZWxhdGl2
ZVBvc2l0aW9uT2Zmc2V0KCkgY29uc3QKICAgICBpZiAodG9wLmlzQXV0bygpICYmIGJvdHRvbS5p
c0F1dG8oKSkKICAgICAgICAgcmV0dXJuIG9mZnNldDsKIAotICAgIGF1dG8gY29udGFpbmluZ0Js
b2NrSGFzRGVmaW5pdGVIZWlnaHQgPSAhY29udGFpbmluZ0Jsb2NrLT5oYXNBdXRvSGVpZ2h0T3JD
b250YWluaW5nQmxvY2tXaXRoQXV0b0hlaWdodCgpIHx8IGNvbnRhaW5pbmdCbG9jay0+c3RyZXRj
aGVzVG9WaWV3cG9ydCgpOworICAgIGF1dG8gY29udGFpbmluZ0Jsb2NrSGFzRGVmaW5pdGVIZWln
aHQgPSBoYXNEZWZpbml0ZUhlaWdodEJ5U3R5bGUoKmNvbnRhaW5pbmdCbG9jayk7CiAgICAgYXV0
byBhdmFpbGFibGVIZWlnaHQgPSBbJl0gewogICAgICAgICBhdXRvKiByZW5kZXJCb3ggPSBkeW5h
bWljRG93bmNhc3Q8UmVuZGVyQm94PigqdGhpcyk7CiAgICAgICAgIGlmICghcmVuZGVyQm94IHx8
ICFyZW5kZXJCb3gtPmlzR3JpZEl0ZW0oKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
RWxlbWVudC5oCmluZGV4IDRkNWY3NjZlOTUwYi4uNGJkNTRkOGE2M2QyIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJFbGVtZW50LmgKQEAgLTMyMCw3ICszMjAsNyBAQCBwdWJsaWM6
CiAgICAgYm9vbCBoYXNDYWNoZWRTVkdSZXNvdXJjZSgpIGNvbnN0IHsgcmV0dXJuIG1faGFzQ2Fj
aGVkU1ZHUmVzb3VyY2U7IH0KIAogICAgIGJvb2wgaXNBbm9ueW1vdXNCbG9jaygpIGNvbnN0Owot
ICAgIGJvb2wgaXNBbm9ueW1vdXNGb3JQZXJjZW50YWdlUmVzb2x1dGlvbigpIGNvbnN0IHsgcmV0
dXJuIGlzQW5vbnltb3VzKCkgJiYgIWlzVmlld1RyYW5zaXRpb25Qc2V1ZG8oKTsgfQorICAgIGJv
b2wgaXNBbm9ueW1vdXNGb3JQZXJjZW50YWdlUmVzb2x1dGlvbigpIGNvbnN0IHsgcmV0dXJuIGlz
QW5vbnltb3VzKCkgJiYgIWlzVmlld1RyYW5zaXRpb25Qc2V1ZG8oKSAmJiAhaXNSZW5kZXJWaWV3
KCk7IH0KICAgICBpbmxpbmUgYm9vbCBpc0Jsb2NrQm94KCkgY29uc3Q7CiAgICAgaW5saW5lIGJv
b2wgaXNCbG9ja0xldmVsQm94KCkgY29uc3Q7CiAgICAgaW5saW5lIGJvb2wgaXNCbG9ja0NvbnRh
aW5lcigpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
ckZsZXhpYmxlQm94LmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRmxleGlibGVC
b3guaAppbmRleCA3NjE3YWVkMTA5NDMuLjVhNDQ0NTVkNWJjNyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckZsZXhpYmxlQm94LmgKKysrIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckZsZXhpYmxlQm94LmgKQEAgLTEwOSw2ICsxMDksOSBAQCBwdWJs
aWM6CiAKICAgICBib29sIE5PREVMRVRFIGlzQ29sdW1uT3JSb3dSZXZlcnNlKCkgY29uc3Q7CiAg
ICAgYm9vbCBOT0RFTEVURSBpc1dyYXBSZXZlcnNlKCkgY29uc3Q7CisgICAgYm9vbCBOT0RFTEVU
RSBtYWluQXhpc0lzRmxleEl0ZW1JbmxpbmVBeGlzKGNvbnN0IFJlbmRlckJveCYpIGNvbnN0Owor
ICAgIEl0ZW1Qb3NpdGlvbiBhbGlnbm1lbnRGb3JGbGV4SXRlbShjb25zdCBSZW5kZXJCb3gmKSBj
b25zdDsKKyAgICBTdHlsZTo6RmxleEJhc2lzIGZsZXhCYXNpc0ZvckZsZXhJdGVtKGNvbnN0IFJl
bmRlckJveCYpIGNvbnN0OwogCiBwcm90ZWN0ZWQ6CiAgICAgdm9pZCBjb21wdXRlSW50cmluc2lj
TG9naWNhbFdpZHRocyhMYXlvdXRVbml0JiBtaW5Mb2dpY2FsV2lkdGgsIExheW91dFVuaXQmIG1h
eExvZ2ljYWxXaWR0aCkgY29uc3Qgb3ZlcnJpZGU7CkBAIC0xNTIsMTEgKzE1NSw5IEBAIHByaXZh
dGU6CiAgICAgc3RhdGljIGNvbnN0ZXhwciB1bnNpZ25lZCBzX2xpbmVTdGF0ZXNJbml0aWFsQ2Fw
YWNpdHkgPSAyOwogICAgIHVzaW5nIEZsZXhMaW5lU3RhdGVzID0gVmVjdG9yPExpbmVTdGF0ZSwg
c19saW5lU3RhdGVzSW5pdGlhbENhcGFjaXR5PjsKIAotICAgIGJvb2wgTk9ERUxFVEUgbWFpbkF4
aXNJc0ZsZXhJdGVtSW5saW5lQXhpcyhjb25zdCBSZW5kZXJCb3gmKSBjb25zdDsKICAgICBib29s
IE5PREVMRVRFIGlzQ29sdW1uRmxvdygpIGNvbnN0OwogICAgIGJvb2wgTk9ERUxFVEUgaXNMZWZ0
VG9SaWdodEZsb3coKSBjb25zdDsKICAgICBib29sIE5PREVMRVRFIGlzTXVsdGlsaW5lKCkgY29u
c3Q7Ci0gICAgU3R5bGU6OkZsZXhCYXNpcyBmbGV4QmFzaXNGb3JGbGV4SXRlbShjb25zdCBSZW5k
ZXJCb3gmIGZsZXhJdGVtKSBjb25zdDsKICAgICBjb25zdCBTdHlsZTo6UHJlZmVycmVkU2l6ZSYg
Tk9ERUxFVEUgcHJlZmVycmVkTWFpblNpemVMZW5ndGhGb3JGbGV4SXRlbShjb25zdCBSZW5kZXJC
b3gmKSBjb25zdCBMSUZFVElNRV9CT1VORDsKICAgICBjb25zdCBTdHlsZTo6TWluaW11bVNpemUm
IE5PREVMRVRFIG1pbk1haW5TaXplTGVuZ3RoRm9yRmxleEl0ZW0oY29uc3QgUmVuZGVyQm94Jikg
Y29uc3QgTElGRVRJTUVfQk9VTkQ7CiAgICAgY29uc3QgU3R5bGU6Ok1heGltdW1TaXplJiBOT0RF
TEVURSBtYXhNYWluU2l6ZUxlbmd0aEZvckZsZXhJdGVtKGNvbnN0IFJlbmRlckJveCYpIGNvbnN0
IExJRkVUSU1FX0JPVU5EOwpAQCAtMjA5LDcgKzIxMCw2IEBAIHByaXZhdGU6CiAgICAgTGF5b3V0
VW5pdCBjb21wdXRlRmxleEJhc2VTaXplRm9yRmxleEl0ZW0oUmVuZGVyQm94JiBmbGV4SXRlbSwg
UmVsYXlvdXRDaGlsZHJlbik7CiAgICAgdm9pZCBtYXliZUNhY2hlRmxleEl0ZW1NYWluSW50cmlu
c2ljU2l6ZShSZW5kZXJCb3gmIGZsZXhJdGVtLCBSZWxheW91dENoaWxkcmVuKTsKICAgICB2b2lk
IE5PREVMRVRFIGFkanVzdEFsaWdubWVudEZvckZsZXhJdGVtKFJlbmRlckJveCYgZmxleEl0ZW0s
IExheW91dFVuaXQpOwotICAgIEl0ZW1Qb3NpdGlvbiBhbGlnbm1lbnRGb3JGbGV4SXRlbShjb25z
dCBSZW5kZXJCb3gmIGZsZXhJdGVtKSBjb25zdDsKICAgICBpbmxpbmUgT3ZlcmZsb3dBbGlnbm1l
bnQgb3ZlcmZsb3dBbGlnbm1lbnRGb3JGbGV4SXRlbShjb25zdCBSZW5kZXJCb3gmIGZsZXhJdGVt
KSBjb25zdDsKICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBTaXplVHlwZT4gYm9vbCBjYW5Db21wdXRl
UGVyY2VudGFnZUZsZXhCYXNpcyhjb25zdCBSZW5kZXJCb3gmIGZsZXhJdGVtLCBjb25zdCBTaXpl
VHlwZSYsIFVwZGF0ZVBlcmNlbnRhZ2VIZWlnaHREZXNjZW5kYW50cyk7CiAgICAgdGVtcGxhdGU8
dHlwZW5hbWUgU2l6ZVR5cGU+IGJvb2wgZmxleEl0ZW1NYWluU2l6ZUlzRGVmaW5pdGUoY29uc3Qg
UmVuZGVyQm94JiwgY29uc3QgU2l6ZVR5cGUmKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1mbGV4Ym94L3BlcmNlbnRhZ2Ut
c2l6ZS1xdWlya3MtMDA0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1mbGV4Ym94L3BlcmNlbnRhZ2Utc2l6ZS1xdWlya3Mt
MDA0LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAu
LjcxNGQ4ODhlYTU5OQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1mbGV4Ym94L3BlcmNlbnRhZ2Utc2l6ZS1xdWly
a3MtMDA0LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDYgQEAKKworUEFTUyBRdWlya3M6IGNvbHVt
biBmbGV4IHdpdGggZGVmaW5pdGUgaGVpZ2h0LCBoZWlnaHQ6IDEwMCUgaW4gZmxleCBpdGVtCitQ
QVNTIFF1aXJrczogY29sdW1uIGZsZXggd2l0aCBhdXRvIGhlaWdodCwgaGVpZ2h0OiAxMDAlIGlu
IGZsZXggaXRlbQorUEFTUyBRdWlya3M6IGNvbHVtbiBmbGV4IHdpdGggZGVmaW5pdGUgaGVpZ2h0
LCBkZWVwIGhlaWdodDogMTAwJSBpbiBmbGV4IGl0ZW0KK1BBU1MgUXVpcmtzOiBwZXJjZW50YWdl
IGhlaWdodCBhZ2FpbnN0IGF1dG8gcGFyZW50IHJlc29sdmVzIGZvciB0b3A6IDUwJQorCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9j
c3MtZmxleGJveC9wZXJjZW50YWdlLXNpemUtcXVpcmtzLTAwNC5odG1sIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZsZXhib3gvcGVyY2VudGFn
ZS1zaXplLXF1aXJrcy0wMDQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAuLmQzNzNhOTAxYTM4MAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1mbGV4Ym94L3BlcmNlbnRhZ2Utc2l6
ZS1xdWlya3MtMDA0Lmh0bWwKQEAgLTAsMCArMSw2OSBAQAorPHRpdGxlPkNTUyBGbGV4Ym94OiBw
ZXJjZW50YWdlIGhlaWdodCBhbmQgcmVsYXRpdmUgcG9zaXRpb24gaW4gY29sdW1uIGZsZXggaXRl
bXMgaW4gcXVpcmtzIG1vZGU8L3RpdGxlPgorPGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRwczov
L2RyYWZ0cy5jc3N3Zy5vcmcvY3NzLWZsZXhib3gvI2RlZmluaXRlLXNpemVzIj4KKzxsaW5rIHJl
bD0iaGVscCIgaHJlZj0iaHR0cHM6Ly9xdWlya3Muc3BlYy53aGF0d2cub3JnLyN0aGUtcGVyY2Vu
dGFnZS1oZWlnaHQtY2FsY3VsYXRpb24tcXVpcmsiPgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMv
dGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhh
cm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorPHN0eWxlPgorYm9keSB7CisgICAgbWFyZ2luOiAw
OworfQorPC9zdHlsZT4KKworPCEtLSAxLiBDb2x1bW4gZmxleCAoMTAwcHgpLCBmbGV4OjEgaXRl
bSwgY2hpbGQgaGVpZ2h0OiAxMDAlIC0tPgorPGRpdiBzdHlsZT0iZGlzcGxheTogZmxleDsgZmxl
eC1kaXJlY3Rpb246IGNvbHVtbjsgaGVpZ2h0OiAxMDBweDsiPgorICAgIDxkaXYgc3R5bGU9Imhl
aWdodDogNTBweDsiPjwvZGl2PgorICAgIDxkaXYgaWQ9InQxLWl0ZW0iIHN0eWxlPSJmbGV4OiAx
OyI+CisgICAgICAgIDxkaXYgaWQ9InQxIiBzdHlsZT0iaGVpZ2h0OiAxMDAlOyBiYWNrZ3JvdW5k
OiBncmVlbjsiPjwvZGl2PgorICAgIDwvZGl2PgorPC9kaXY+CisKKzwhLS0gMi4gQ29sdW1uIGZs
ZXggKGF1dG8gaGVpZ2h0KSwgZmxleDoxIGl0ZW0sIGNoaWxkIGhlaWdodDogMTAwJSAtLT4KKzxk
aXYgc3R5bGU9ImRpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47Ij4KKyAgICA8
ZGl2IHN0eWxlPSJoZWlnaHQ6IDUwcHg7Ij48L2Rpdj4KKyAgICA8ZGl2IGlkPSJ0Mi1pdGVtIiBz
dHlsZT0iZmxleDogMTsiPgorICAgICAgICA8ZGl2IGlkPSJ0MiIgc3R5bGU9ImhlaWdodDogMTAw
JTsgYmFja2dyb3VuZDogZ3JlZW47Ij48L2Rpdj4KKyAgICA8L2Rpdj4KKzwvZGl2PgorCis8IS0t
IDMuIENvbHVtbiBmbGV4ICgxMDBweCksIHdyYXBwZXIgZGl2LCBkZWVwIGhlaWdodDogMTAwJSAt
LT4KKzxkaXYgc3R5bGU9ImRpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IGhl
aWdodDogMTAwcHg7Ij4KKyAgICA8ZGl2IHN0eWxlPSJoZWlnaHQ6IDUwcHg7Ij48L2Rpdj4KKyAg
ICA8ZGl2IGlkPSJ0My1pdGVtIiBzdHlsZT0iZmxleDogMTsiPgorICAgICAgICA8ZGl2PgorICAg
ICAgICAgICAgPGRpdiBpZD0idDMiIHN0eWxlPSJoZWlnaHQ6IDEwMCU7IGJhY2tncm91bmQ6IGdy
ZWVuOyI+PC9kaXY+CisgICAgICAgIDwvZGl2PgorICAgIDwvZGl2PgorPC9kaXY+CisKKzwhLS0g
NC4gUGVyY2VudGFnZSBoZWlnaHQgYWdhaW5zdCBhdXRvIHBhcmVudCByZXNvbHZlcyBpbiBxdWly
a3MgbW9kZSwgdG9wOiA1MCUgLS0+Cis8ZGl2PgorICAgIDxkaXYgaWQ9InQ0LWNiIiBzdHlsZT0i
aGVpZ2h0OiA1MCU7Ij4KKyAgICAgICAgPGRpdiBpZD0idDQiIHN0eWxlPSJ3aWR0aDogMjBweDsg
aGVpZ2h0OiAyMHB4OyBiYWNrZ3JvdW5kOiBncmVlbjsgcG9zaXRpb246IHJlbGF0aXZlOyB0b3A6
IDUwJTsiPjwvZGl2PgorICAgIDwvZGl2PgorPC9kaXY+CisKKzxzY3JpcHQ+Cit0ZXN0KGZ1bmN0
aW9uKCkgeworICAgIHZhciBpdGVtID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QxLWl0ZW0n
KTsKKyAgICB2YXIgY2hpbGQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDEnKTsKKyAgICBh
c3NlcnRfZXF1YWxzKGNoaWxkLm9mZnNldEhlaWdodCwgaXRlbS5vZmZzZXRIZWlnaHQpOworfSwg
J1F1aXJrczogY29sdW1uIGZsZXggd2l0aCBkZWZpbml0ZSBoZWlnaHQsIGhlaWdodDogMTAwJSBp
biBmbGV4IGl0ZW0nKTsKKwordGVzdChmdW5jdGlvbigpIHsKKyAgICB2YXIgY2hpbGQgPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgndDInKTsKKyAgICBhc3NlcnRfZXF1YWxzKGNoaWxkLm9mZnNl
dEhlaWdodCwgMCk7Cit9LCAnUXVpcmtzOiBjb2x1bW4gZmxleCB3aXRoIGF1dG8gaGVpZ2h0LCBo
ZWlnaHQ6IDEwMCUgaW4gZmxleCBpdGVtJyk7CisKK3Rlc3QoZnVuY3Rpb24oKSB7CisgICAgdmFy
IGl0ZW0gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDMtaXRlbScpOworICAgIHZhciBjaGls
ZCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0MycpOworICAgIGFzc2VydF9lcXVhbHMoY2hp
bGQub2Zmc2V0SGVpZ2h0LCBpdGVtLm9mZnNldEhlaWdodCk7Cit9LCAnUXVpcmtzOiBjb2x1bW4g
ZmxleCB3aXRoIGRlZmluaXRlIGhlaWdodCwgZGVlcCBoZWlnaHQ6IDEwMCUgaW4gZmxleCBpdGVt
Jyk7CisKK3Rlc3QoZnVuY3Rpb24oKSB7CisgICAgdmFyIGNiID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoJ3Q0LWNiJyk7CisgICAgdmFyIGNoaWxkID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
J3Q0Jyk7CisgICAgdmFyIG9mZnNldCA9IGNoaWxkLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnRv
cCAtIGNiLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnRvcDsKKyAgICBhc3NlcnRfbm90X2VxdWFs
cyhvZmZzZXQsIDApOworfSwgJ1F1aXJrczogcGVyY2VudGFnZSBoZWlnaHQgYWdhaW5zdCBhdXRv
IHBhcmVudCByZXNvbHZlcyBmb3IgdG9wOiA1MCUnKTsKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZsZXhi
b3gvcGVyY2VudGFnZS1zaXplLXF1aXJrcy0wMDUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZsZXhib3gvcGVyY2VudGFn
ZS1zaXplLXF1aXJrcy0wMDUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMC4uNzVmMmY2MjQxMmZhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZsZXhib3gvcGVyY2Vu
dGFnZS1zaXplLXF1aXJrcy0wMDUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMyBAQAorCitQQVNT
IFF1aXJrczogc3RyZXRjaCBoZWlnaHQgYWdhaW5zdCBhdXRvIHBhcmVudCBkb2VzIG5vdCByZXNv
bHZlIHRvcDogNTAlCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1mbGV4Ym94L3BlcmNlbnRhZ2Utc2l6ZS1xdWlya3MtMDA1
Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9j
c3MtZmxleGJveC9wZXJjZW50YWdlLXNpemUtcXVpcmtzLTAwNS5odG1sCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4uNzJhNmJiZjYzZTlkCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZs
ZXhib3gvcGVyY2VudGFnZS1zaXplLXF1aXJrcy0wMDUuaHRtbApAQCAtMCwwICsxLDI3IEBACis8
dGl0bGU+Q1NTIEZsZXhib3g6IHN0cmV0Y2ggaGVpZ2h0IGlzIG5vdCBhZmZlY3RlZCBieSB0aGUg
cGVyY2VudGFnZSBoZWlnaHQgcXVpcms8L3RpdGxlPgorPGxpbmsgcmVsPSJoZWxwIiBocmVmPSJo
dHRwczovL2RyYWZ0cy5jc3N3Zy5vcmcvY3NzLXNpemluZy00LyNzdHJldGNoLWZpdC1zaXppbmci
PgorPGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRwczovL3F1aXJrcy5zcGVjLndoYXR3Zy5vcmcv
I3RoZS1wZXJjZW50YWdlLWhlaWdodC1jYWxjdWxhdGlvbi1xdWlyayI+Cis8c2NyaXB0IHNyYz0i
L3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291
cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8c3R5bGU+Citib2R5IHsKKyAg
ICBtYXJnaW46IDA7Cit9Cis8L3N0eWxlPgorCis8IS0tIEluIHF1aXJrcyBtb2RlLCBwZXJjZW50
YWdlIGhlaWdodHMgcmVzb2x2ZSBmcmVlbHkgYWdhaW5zdCBhdXRvIHBhcmVudHMuCisgICAgIHN0
cmV0Y2ggc2hvdWxkIE5PVCBnZXQgdGhpcyB0cmVhdG1lbnQuIC0tPgorPGRpdj4KKyAgICA8ZGl2
IGlkPSJ0MS1jYiIgc3R5bGU9ImhlaWdodDogc3RyZXRjaDsiPgorICAgICAgICA8ZGl2IGlkPSJ0
MSIgc3R5bGU9IndpZHRoOiAyMHB4OyBoZWlnaHQ6IDIwcHg7IGJhY2tncm91bmQ6IGdyZWVuOyBw
b3NpdGlvbjogcmVsYXRpdmU7IHRvcDogNTAlOyI+PC9kaXY+CisgICAgPC9kaXY+Cis8L2Rpdj4K
KworPHNjcmlwdD4KK3Rlc3QoZnVuY3Rpb24oKSB7CisgICAgdmFyIGNiID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoJ3QxLWNiJyk7CisgICAgdmFyIGNoaWxkID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoJ3QxJyk7CisgICAgdmFyIG9mZnNldCA9IGNoaWxkLmdldEJvdW5kaW5nQ2xpZW50UmVj
dCgpLnRvcCAtIGNiLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnRvcDsKKyAgICBhc3NlcnRfZXF1
YWxzKG9mZnNldCwgMCk7Cit9LCAnUXVpcmtzOiBzdHJldGNoIGhlaWdodCBhZ2FpbnN0IGF1dG8g
cGFyZW50IGRvZXMgbm90IHJlc29sdmUgdG9wOiA1MCUnKTsKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZs
ZXhib3gvcG9zaXRpb24tcmVsYXRpdmUtcGVyY2VudGFnZS10b3AtMDA0LWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1mbGV4
Ym94L3Bvc2l0aW9uLXJlbGF0aXZlLXBlcmNlbnRhZ2UtdG9wLTAwNC1leHBlY3RlZC50eHQKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi43YjBmMmVjYjU4MzIKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9jc3MtZmxleGJveC9wb3NpdGlvbi1yZWxhdGl2ZS1wZXJjZW50YWdlLXRvcC0wMDQtZXhw
ZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTEgQEAKKworUEFTUyBSb3cgZmxleCwgc3RyZXRjaGVkIGl0
ZW0sIHRvcDogNTAlCitQQVNTIFJvdyBmbGV4LCBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0LCB0b3A6
IDUwJQorUEFTUyBDb2x1bW4gZmxleCwgZmxleC1ncm93IGl0ZW0sIHRvcDogNTAlCitQQVNTIENv
bHVtbiBmbGV4LCBhdXRvIGhlaWdodCBjb250YWluZXIsIHRvcDogNTAlCitQQVNTIENvbHVtbiBm
bGV4LCBkZWZpbml0ZSBmbGV4LWJhc2lzLCB0b3A6IDUwJQorUEFTUyBOZXN0ZWQgY29sdW1uIGZs
ZXgsIHRvcDogNTAlCitQQVNTIFJvdyB0aGVuIGNvbHVtbiBuZXN0aW5nLCB0b3A6IDUwJQorUEFT
UyBGbGV4IGl0ZW0gd2l0aCBwZXJjZW50YWdlIGhlaWdodCwgdG9wOiA1MCUKK1BBU1MgUGVyY2Vu
dGFnZSBoZWlnaHQgY2hpbGQgaW5zaWRlIHN0cmV0Y2hlZCBmbGV4IGl0ZW0sIHRvcDogNTAlCisK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL2Nzcy1mbGV4Ym94L3Bvc2l0aW9uLXJlbGF0aXZlLXBlcmNlbnRhZ2UtdG9wLTAwNC5odG1s
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZs
ZXhib3gvcG9zaXRpb24tcmVsYXRpdmUtcGVyY2VudGFnZS10b3AtMDA0Lmh0bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi5lZDUxNGQ5Nzk5NTYKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9j
c3MtZmxleGJveC9wb3NpdGlvbi1yZWxhdGl2ZS1wZXJjZW50YWdlLXRvcC0wMDQuaHRtbApAQCAt
MCwwICsxLDEzNiBAQAorPCFET0NUWVBFIGh0bWw+Cis8dGl0bGU+Q1NTIEZsZXhib3g6IHBlcmNl
bnRhZ2UgdG9wL2JvdHRvbSBvbiByZWxhdGl2ZWx5IHBvc2l0aW9uZWQgZWxlbWVudHMgaW4gZmxl
eCBpdGVtczwvdGl0bGU+Cis8bGluayByZWw9ImhlbHAiIGhyZWY9Imh0dHBzOi8vZHJhZnRzLmNz
c3dnLm9yZy9jc3MtZmxleGJveC8jZGVmaW5pdGUtc2l6ZXMiPgorPGxpbmsgcmVsPSJoZWxwIiBo
cmVmPSJodHRwczovL2RyYWZ0cy5jc3N3Zy5vcmcvY3NzLXBvc2l0aW9uLTMvI3ZhbGRlZi10b3At
cGVyY2VudGFnZSI+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9z
Y3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9z
Y3JpcHQ+Cis8c3R5bGU+Citib2R5IHsKKyAgICBtYXJnaW46IDA7Cit9CisKKy5ncmVlbiB7Cisg
ICAgd2lkdGg6IDIwcHg7CisgICAgaGVpZ2h0OiAyMHB4OworICAgIGJhY2tncm91bmQ6IGdyZWVu
OworICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKK30KKzwvc3R5bGU+CisKKzwhLS0gMS4gUm93IGZs
ZXgsIHN0cmV0Y2hlZCBpdGVtLCB0b3A6IDUwJSAtLT4KKzxkaXYgc3R5bGU9ImRpc3BsYXk6IGZs
ZXg7IGhlaWdodDogMjAwcHg7Ij4KKyAgICA8ZGl2IGlkPSJ0MS1pdGVtIj4KKyAgICAgICAgPGRp
diBjbGFzcz0iZ3JlZW4iIGlkPSJ0MSIgc3R5bGU9InRvcDogNTAlOyI+PC9kaXY+CisgICAgPC9k
aXY+Cis8L2Rpdj4KKworPCEtLSAyLiBSb3cgZmxleCwgYWxpZ24tc2VsZjogZmxleC1zdGFydCwg
dG9wOiA1MCUgLS0+Cis8ZGl2IHN0eWxlPSJkaXNwbGF5OiBmbGV4OyBoZWlnaHQ6IDIwMHB4OyI+
CisgICAgPGRpdiBpZD0idDItaXRlbSIgc3R5bGU9ImFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7Ij4K
KyAgICAgICAgPGRpdiBjbGFzcz0iZ3JlZW4iIGlkPSJ0MiIgc3R5bGU9InRvcDogNTAlOyI+PC9k
aXY+CisgICAgPC9kaXY+Cis8L2Rpdj4KKworPCEtLSAzLiBDb2x1bW4gZmxleCAoMjAwcHgpLCBm
bGV4LWdyb3cgaXRlbSwgdG9wOiA1MCUgLS0+Cis8ZGl2IHN0eWxlPSJkaXNwbGF5OiBmbGV4OyBm
bGV4LWRpcmVjdGlvbjogY29sdW1uOyBoZWlnaHQ6IDIwMHB4OyI+CisgICAgPGRpdiBzdHlsZT0i
aGVpZ2h0OiAxMDBweDsiPjwvZGl2PgorICAgIDxkaXYgaWQ9InQzLWl0ZW0iIHN0eWxlPSJmbGV4
LWdyb3c6IDE7Ij4KKyAgICAgICAgPGRpdiBjbGFzcz0iZ3JlZW4iIGlkPSJ0MyIgc3R5bGU9InRv
cDogNTAlOyI+PC9kaXY+CisgICAgPC9kaXY+Cis8L2Rpdj4KKworPCEtLSA0LiBDb2x1bW4gZmxl
eCAoYXV0byBoZWlnaHQpLCB0b3A6IDUwJSAtLT4KKzxkaXYgc3R5bGU9ImRpc3BsYXk6IGZsZXg7
IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47Ij4KKyAgICA8ZGl2IGlkPSJ0NC1pdGVtIiBzdHlsZT0i
ZmxleC1ncm93OiAxOyI+CisgICAgICAgIDxkaXYgY2xhc3M9ImdyZWVuIiBpZD0idDQiIHN0eWxl
PSJ0b3A6IDUwJTsiPjwvZGl2PgorICAgIDwvZGl2PgorPC9kaXY+CisKKzwhLS0gNS4gQ29sdW1u
IGZsZXgsIGZsZXgtYmFzaXM6IDEwMHB4LCB0b3A6IDUwJSAtLT4KKzxkaXYgc3R5bGU9ImRpc3Bs
YXk6IGZsZXg7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IGhlaWdodDogMjAwcHg7Ij4KKyAgICA8
ZGl2IGlkPSJ0NS1pdGVtIiBzdHlsZT0iZmxleDogMCAwIDEwMHB4OyI+CisgICAgICAgIDxkaXYg
Y2xhc3M9ImdyZWVuIiBpZD0idDUiIHN0eWxlPSJ0b3A6IDUwJTsiPjwvZGl2PgorICAgIDwvZGl2
PgorPC9kaXY+CisKKzwhLS0gNi4gTmVzdGVkIGNvbHVtbiBmbGV4ICgzIGxldmVscyksIGlubmVy
bW9zdCB0b3A6IDUwJSAtLT4KKzxkaXYgc3R5bGU9ImRpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0
aW9uOiBjb2x1bW47IGhlaWdodDogMjAwcHg7Ij4KKyAgICA8ZGl2IHN0eWxlPSJmbGV4LWdyb3c6
IDE7IGRpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47Ij4KKyAgICAgICAgPGRp
diBzdHlsZT0iZmxleC1ncm93OiAxOyBkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29s
dW1uOyI+CisgICAgICAgICAgICA8ZGl2IHN0eWxlPSJoZWlnaHQ6IDEwMHB4OyI+PC9kaXY+Cisg
ICAgICAgICAgICA8ZGl2IGlkPSJ0Ni1pdGVtIiBzdHlsZT0iZmxleC1ncm93OiAxOyI+CisgICAg
ICAgICAgICAgICAgPGRpdiBjbGFzcz0iZ3JlZW4iIGlkPSJ0NiIgc3R5bGU9InRvcDogNTAlOyI+
PC9kaXY+CisgICAgICAgICAgICA8L2Rpdj4KKyAgICAgICAgPC9kaXY+CisgICAgPC9kaXY+Cis8
L2Rpdj4KKworPCEtLSA3LiBSb3cgZmxleCBjb250YWluaW5nIGNvbHVtbiBmbGV4LCB0b3A6IDUw
JSAtLT4KKzxkaXYgc3R5bGU9ImRpc3BsYXk6IGZsZXg7IGhlaWdodDogMjAwcHg7Ij4KKyAgICA8
ZGl2IHN0eWxlPSJkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB3aWR0aDog
MTAwcHg7Ij4KKyAgICAgICAgPGRpdiBzdHlsZT0iaGVpZ2h0OiAxMDBweDsiPjwvZGl2PgorICAg
ICAgICA8ZGl2IGlkPSJ0Ny1pdGVtIiBzdHlsZT0iZmxleC1ncm93OiAxOyI+CisgICAgICAgICAg
ICA8ZGl2IGNsYXNzPSJncmVlbiIgaWQ9InQ3IiBzdHlsZT0idG9wOiA1MCU7Ij48L2Rpdj4KKyAg
ICAgICAgPC9kaXY+CisgICAgPC9kaXY+Cis8L2Rpdj4KKworPCEtLSA4LiBGbGV4IGl0ZW0gd2l0
aCBoZWlnaHQ6IDUwJSwgdG9wOiA1MCUgLS0+Cis8ZGl2IHN0eWxlPSJkaXNwbGF5OiBmbGV4OyBm
bGV4LWRpcmVjdGlvbjogY29sdW1uOyBoZWlnaHQ6IDIwMHB4OyI+CisgICAgPGRpdiBpZD0idDgt
aXRlbSIgc3R5bGU9ImhlaWdodDogNTAlOyI+CisgICAgICAgIDxkaXYgY2xhc3M9ImdyZWVuIiBp
ZD0idDgiIHN0eWxlPSJ0b3A6IDUwJTsiPjwvZGl2PgorICAgIDwvZGl2PgorPC9kaXY+CisKKzwh
LS0gOS4gUGVyY2VudGFnZSBoZWlnaHQgY2hpbGQgaW5zaWRlIHN0cmV0Y2hlZCBmbGV4IGl0ZW0s
IHRvcDogNTAlIC0tPgorPGRpdiBzdHlsZT0iZGlzcGxheTogZmxleDsgaGVpZ2h0OiAyMDBweDsi
PgorICAgIDxkaXY+CisgICAgICAgIDxkaXYgaWQ9InQ5LWl0ZW0iIHN0eWxlPSJoZWlnaHQ6IDUw
JTsiPgorICAgICAgICAgICAgPGRpdiBjbGFzcz0iZ3JlZW4iIGlkPSJ0OSIgc3R5bGU9InRvcDog
NTAlOyI+PC9kaXY+CisgICAgICAgIDwvZGl2PgorICAgIDwvZGl2PgorPC9kaXY+CisKKzxzY3Jp
cHQ+CitmdW5jdGlvbiBvZmZzZXRGcm9tSXRlbShncmVlbklkLCBpdGVtSWQpIHsKKyAgICB2YXIg
Z3JlZW4gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChncmVlbklkKTsKKyAgICB2YXIgaXRlbSA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGl0ZW1JZCk7CisgICAgcmV0dXJuIGdyZWVuLmdldEJv
dW5kaW5nQ2xpZW50UmVjdCgpLnRvcCAtIGl0ZW0uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkudG9w
OworfQorCit0ZXN0KGZ1bmN0aW9uKCkgeworICAgIGFzc2VydF9lcXVhbHMob2Zmc2V0RnJvbUl0
ZW0oJ3QxJywgJ3QxLWl0ZW0nKSwgMTAwKTsKK30sICdSb3cgZmxleCwgc3RyZXRjaGVkIGl0ZW0s
IHRvcDogNTAlJyk7CisKK3Rlc3QoZnVuY3Rpb24oKSB7CisgICAgYXNzZXJ0X2VxdWFscyhvZmZz
ZXRGcm9tSXRlbSgndDInLCAndDItaXRlbScpLCAwKTsKK30sICdSb3cgZmxleCwgYWxpZ24tc2Vs
ZjogZmxleC1zdGFydCwgdG9wOiA1MCUnKTsKKwordGVzdChmdW5jdGlvbigpIHsKKyAgICBhc3Nl
cnRfZXF1YWxzKG9mZnNldEZyb21JdGVtKCd0MycsICd0My1pdGVtJyksIDUwKTsKK30sICdDb2x1
bW4gZmxleCwgZmxleC1ncm93IGl0ZW0sIHRvcDogNTAlJyk7CisKK3Rlc3QoZnVuY3Rpb24oKSB7
CisgICAgYXNzZXJ0X2VxdWFscyhvZmZzZXRGcm9tSXRlbSgndDQnLCAndDQtaXRlbScpLCAwKTsK
K30sICdDb2x1bW4gZmxleCwgYXV0byBoZWlnaHQgY29udGFpbmVyLCB0b3A6IDUwJScpOworCit0
ZXN0KGZ1bmN0aW9uKCkgeworICAgIGFzc2VydF9lcXVhbHMob2Zmc2V0RnJvbUl0ZW0oJ3Q1Jywg
J3Q1LWl0ZW0nKSwgNTApOworfSwgJ0NvbHVtbiBmbGV4LCBkZWZpbml0ZSBmbGV4LWJhc2lzLCB0
b3A6IDUwJScpOworCit0ZXN0KGZ1bmN0aW9uKCkgeworICAgIGFzc2VydF9lcXVhbHMob2Zmc2V0
RnJvbUl0ZW0oJ3Q2JywgJ3Q2LWl0ZW0nKSwgNTApOworfSwgJ05lc3RlZCBjb2x1bW4gZmxleCwg
dG9wOiA1MCUnKTsKKwordGVzdChmdW5jdGlvbigpIHsKKyAgICBhc3NlcnRfZXF1YWxzKG9mZnNl
dEZyb21JdGVtKCd0NycsICd0Ny1pdGVtJyksIDUwKTsKK30sICdSb3cgdGhlbiBjb2x1bW4gbmVz
dGluZywgdG9wOiA1MCUnKTsKKwordGVzdChmdW5jdGlvbigpIHsKKyAgICBhc3NlcnRfZXF1YWxz
KG9mZnNldEZyb21JdGVtKCd0OCcsICd0OC1pdGVtJyksIDUwKTsKK30sICdGbGV4IGl0ZW0gd2l0
aCBwZXJjZW50YWdlIGhlaWdodCwgdG9wOiA1MCUnKTsKKwordGVzdChmdW5jdGlvbigpIHsKKyAg
ICBhc3NlcnRfZXF1YWxzKG9mZnNldEZyb21JdGVtKCd0OScsICd0OS1pdGVtJyksIDUwKTsKK30s
ICdQZXJjZW50YWdlIGhlaWdodCBjaGlsZCBpbnNpZGUgc3RyZXRjaGVkIGZsZXggaXRlbSwgdG9w
OiA1MCUnKTsKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZsZXhib3gvcG9zaXRpb24tcmVsYXRpdmUtc3Ry
ZXRjaC1oZWlnaHQtMDAxLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1mbGV4Ym94L3Bvc2l0aW9uLXJlbGF0aXZlLXN0cmV0
Y2gtaGVpZ2h0LTAwMS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwLi4xYzNiMzU0YjgzZjEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZmxleGJveC9wb3NpdGlvbi1y
ZWxhdGl2ZS1zdHJldGNoLWhlaWdodC0wMDEtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNiBAQAor
CitQQVNTIGhlaWdodDogc3RyZXRjaCBhZ2FpbnN0IGRlZmluaXRlIHBhcmVudCwgdG9wOiA1MCUK
K1BBU1MgaGVpZ2h0OiBzdHJldGNoIGFnYWluc3QgYXV0byBwYXJlbnQsIHRvcDogNTAlCitQQVNT
IGhlaWdodDogc3RyZXRjaCBpbnNpZGUgc3RyZXRjaGVkIGZsZXggaXRlbSwgdG9wOiA1MCUKK1BB
U1MgaGVpZ2h0OiBzdHJldGNoIGluc2lkZSBhdXRvLWhlaWdodCBjb2x1bW4gZmxleCBpdGVtLCB0
b3A6IDUwJQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9jc3MtZmxleGJveC9wb3NpdGlvbi1yZWxhdGl2ZS1zdHJldGNoLWhlaWdo
dC0wMDEuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL2Nzcy1mbGV4Ym94L3Bvc2l0aW9uLXJlbGF0aXZlLXN0cmV0Y2gtaGVpZ2h0LTAwMS5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4uZGEwYmUwZDE3NTMzCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3MvY3NzLWZsZXhib3gvcG9zaXRpb24tcmVsYXRpdmUtc3RyZXRjaC1oZWlnaHQtMDAx
Lmh0bWwKQEAgLTAsMCArMSw3NSBAQAorPCFET0NUWVBFIGh0bWw+Cis8dGl0bGU+Q1NTIEZsZXhi
b3g6IHJlbGF0aXZlIHBvc2l0aW9uIHBlcmNlbnRhZ2UgdG9wIHdpdGggaGVpZ2h0OiBzdHJldGNo
IGNvbnRhaW5pbmcgYmxvY2s8L3RpdGxlPgorPGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRwczov
L2RyYWZ0cy5jc3N3Zy5vcmcvY3NzLWZsZXhib3gvI2RlZmluaXRlLXNpemVzIj4KKzxsaW5rIHJl
bD0iaGVscCIgaHJlZj0iaHR0cHM6Ly9kcmFmdHMuY3Nzd2cub3JnL2Nzcy1wb3NpdGlvbi0zLyN2
YWxkZWYtdG9wLXBlcmNlbnRhZ2UiPgorPGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRwczovL2Ry
YWZ0cy5jc3N3Zy5vcmcvY3NzLXNpemluZy00LyNzdHJldGNoLWZpdC1zaXppbmciPgorPHNjcmlw
dCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9
Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorPHN0eWxlPgorYm9k
eSB7CisgICAgbWFyZ2luOiAwOworfQorCisuZ3JlZW4geworICAgIHdpZHRoOiAyMHB4OworICAg
IGhlaWdodDogMjBweDsKKyAgICBiYWNrZ3JvdW5kOiBncmVlbjsKKyAgICBwb3NpdGlvbjogcmVs
YXRpdmU7Cit9Cis8L3N0eWxlPgorCis8IS0tIDEuIGhlaWdodDogc3RyZXRjaCBhZ2FpbnN0IGRl
ZmluaXRlIHBhcmVudCAtLT4KKzxkaXYgc3R5bGU9ImhlaWdodDogMjAwcHg7Ij4KKyAgICA8ZGl2
IGlkPSJ0MS1pdGVtIiBzdHlsZT0iaGVpZ2h0OiBzdHJldGNoOyI+CisgICAgICAgIDxkaXYgY2xh
c3M9ImdyZWVuIiBpZD0idDEiIHN0eWxlPSJ0b3A6IDUwJTsiPjwvZGl2PgorICAgIDwvZGl2Pgor
PC9kaXY+CisKKzwhLS0gMi4gaGVpZ2h0OiBzdHJldGNoIGFnYWluc3QgYXV0byBwYXJlbnQgKGlu
ZGVmaW5pdGUpIC0tPgorPGRpdj4KKyAgICA8ZGl2IGlkPSJ0Mi1pdGVtIiBzdHlsZT0iaGVpZ2h0
OiBzdHJldGNoOyI+CisgICAgICAgIDxkaXYgY2xhc3M9ImdyZWVuIiBpZD0idDIiIHN0eWxlPSJ0
b3A6IDUwJTsiPjwvZGl2PgorICAgIDwvZGl2PgorPC9kaXY+CisKKzwhLS0gMy4gaGVpZ2h0OiBz
dHJldGNoIGluc2lkZSBzdHJldGNoZWQgZmxleCBpdGVtIChkZWZpbml0ZSBwZXIgOS44KSAtLT4K
KzxkaXYgc3R5bGU9ImRpc3BsYXk6IGZsZXg7IGhlaWdodDogMjAwcHg7Ij4KKyAgICA8ZGl2Pgor
ICAgICAgICA8ZGl2IGlkPSJ0My1pdGVtIiBzdHlsZT0iaGVpZ2h0OiBzdHJldGNoOyI+CisgICAg
ICAgICAgICA8ZGl2IGNsYXNzPSJncmVlbiIgaWQ9InQzIiBzdHlsZT0idG9wOiA1MCU7Ij48L2Rp
dj4KKyAgICAgICAgPC9kaXY+CisgICAgPC9kaXY+Cis8L2Rpdj4KKworPCEtLSA0LiBoZWlnaHQ6
IHN0cmV0Y2ggaW5zaWRlIGF1dG8taGVpZ2h0IGNvbHVtbiBmbGV4IGl0ZW0gKGluZGVmaW5pdGUp
IC0tPgorPGRpdiBzdHlsZT0iZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsi
PgorICAgIDxkaXYgc3R5bGU9ImZsZXgtZ3JvdzogMTsiPgorICAgICAgICA8ZGl2IGlkPSJ0NC1p
dGVtIiBzdHlsZT0iaGVpZ2h0OiBzdHJldGNoOyI+CisgICAgICAgICAgICA8ZGl2IGNsYXNzPSJn
cmVlbiIgaWQ9InQ0IiBzdHlsZT0idG9wOiA1MCU7Ij48L2Rpdj4KKyAgICAgICAgPC9kaXY+Cisg
ICAgPC9kaXY+Cis8L2Rpdj4KKworPHNjcmlwdD4KK2Z1bmN0aW9uIG9mZnNldEZyb21JdGVtKGdy
ZWVuSWQsIGl0ZW1JZCkgeworICAgIHZhciBncmVlbiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KGdyZWVuSWQpOworICAgIHZhciBpdGVtID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaXRlbUlk
KTsKKyAgICByZXR1cm4gZ3JlZW4uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkudG9wIC0gaXRlbS5n
ZXRCb3VuZGluZ0NsaWVudFJlY3QoKS50b3A7Cit9CisKK3Rlc3QoZnVuY3Rpb24oKSB7CisgICAg
YXNzZXJ0X2VxdWFscyhvZmZzZXRGcm9tSXRlbSgndDEnLCAndDEtaXRlbScpLCAxMDApOworfSwg
J2hlaWdodDogc3RyZXRjaCBhZ2FpbnN0IGRlZmluaXRlIHBhcmVudCwgdG9wOiA1MCUnKTsKKwor
dGVzdChmdW5jdGlvbigpIHsKKyAgICBhc3NlcnRfZXF1YWxzKG9mZnNldEZyb21JdGVtKCd0Mics
ICd0Mi1pdGVtJyksIDApOworfSwgJ2hlaWdodDogc3RyZXRjaCBhZ2FpbnN0IGF1dG8gcGFyZW50
LCB0b3A6IDUwJScpOworCit0ZXN0KGZ1bmN0aW9uKCkgeworICAgIGFzc2VydF9lcXVhbHMob2Zm
c2V0RnJvbUl0ZW0oJ3QzJywgJ3QzLWl0ZW0nKSwgMTAwKTsKK30sICdoZWlnaHQ6IHN0cmV0Y2gg
aW5zaWRlIHN0cmV0Y2hlZCBmbGV4IGl0ZW0sIHRvcDogNTAlJyk7CisKK3Rlc3QoZnVuY3Rpb24o
KSB7CisgICAgYXNzZXJ0X2VxdWFscyhvZmZzZXRGcm9tSXRlbSgndDQnLCAndDQtaXRlbScpLCAw
KTsKK30sICdoZWlnaHQ6IHN0cmV0Y2ggaW5zaWRlIGF1dG8taGVpZ2h0IGNvbHVtbiBmbGV4IGl0
ZW0sIHRvcDogNTAlJyk7Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1wb3NpdGlvbi9wb3NpdGlvbi1yZWxh
dGl2ZS0wMTUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9jc3MvY3NzLXBvc2l0aW9uL3Bvc2l0aW9uLXJlbGF0aXZlLTAxNS1leHBlY3Rl
ZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi4zZWJmMDY5Nzdl
MTcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9jc3MtcG9zaXRpb24vcG9zaXRpb24tcmVsYXRpdmUtMDE1LWV4cGVjdGVk
LnR4dApAQCAtMCwwICsxLDIyIEBACisKK1BBU1MgRml4ZWQgaGVpZ2h0IGNvbnRhaW5pbmcgYmxv
Y2ssIHRvcDogNTAlCitQQVNTIEF1dG8gaGVpZ2h0IGNvbnRhaW5pbmcgYmxvY2ssIHRvcDogNTAl
CitQQVNTIFBlcmNlbnRhZ2UgaGVpZ2h0IGNvbnRhaW5pbmcgYmxvY2ssIHRvcDogNTAlCitQQVNT
IE9PRiB3aXRoIGltcGxpY2l0IGhlaWdodCwgdG9wOiA1MCUKK1BBU1MgR3JpZCBpdGVtIHN0cmV0
Y2hlZCwgdG9wOiA1MCUKK1BBU1MgR3JpZCBpdGVtIHdpdGggMHB4IHRyYWNrLCB0b3A6IDUwJQor
UEFTUyBHcmlkIGl0ZW0gd2l0aCBhdXRvIHRyYWNrIChzdHJldGNoZWQgdG8gMjAwcHgpLCB0b3A6
IDUwJQorUEFTUyBHcmlkIGl0ZW0gd2l0aCBmaXhlZCAxMDBweCB0cmFjaywgdG9wOiA1MCUKK1BB
U1MgR3JpZCBpdGVtIHdpdGggNTAlIHRyYWNrLCB0b3A6IDUwJQorUEFTUyBVbnJlc29sdmFibGUg
cGVyY2VudGFnZSBoZWlnaHQgKDEwMCUgb2YgYXV0byBib2R5KSwgdG9wOiA1MCUKK1BBU1MgVW5y
ZXNvbHZhYmxlIHBlcmNlbnRhZ2UgaGVpZ2h0IHdpdGggbWluLWhlaWdodCwgdG9wOiA1MCUKK1BB
U1MgZml0LWNvbnRlbnQgaGVpZ2h0LCB0b3A6IDUwJQorUEFTUyBtYXgtY29udGVudCBoZWlnaHQs
IHRvcDogNTAlCitQQVNTIG1pbi1jb250ZW50IGhlaWdodCwgdG9wOiA1MCUKK1BBU1MgTmVzdGVk
IHVucmVzb2x2YWJsZSBwZXJjZW50YWdlIGhlaWdodHMsIHRvcDogNTAlCitQQVNTIGNhbGMoKSBm
aXhlZCBoZWlnaHQsIHRvcDogNTAlCitQQVNTIGNhbGMoKSB3aXRoIHJlc29sdmFibGUgcGVyY2Vu
dGFnZSwgdG9wOiA1MCUKK1BBU1MgY2FsYygpIHdpdGggdW5yZXNvbHZhYmxlIHBlcmNlbnRhZ2Us
IHRvcDogNTAlCitQQVNTIHN0cmV0Y2ggaGVpZ2h0LCB0b3A6IDUwJQorUEFTUyBDaGFpbiBvZiBy
ZXNvbHZhYmxlIHBlcmNlbnRhZ2VzLCB0b3A6IDUwJQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtcG9zaXRpb24vcG9zaXRp
b24tcmVsYXRpdmUtMDE1Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9jc3MtcG9zaXRpb24vcG9zaXRpb24tcmVsYXRpdmUtMDE1Lmh0bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi40YmMxYjQ0YTJmOTEKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9jc3MtcG9zaXRpb24vcG9zaXRpb24tcmVsYXRpdmUtMDE1Lmh0bWwKQEAgLTAsMCArMSwy
MzYgQEAKKzwhRE9DVFlQRSBodG1sPgorPHRpdGxlPkNTUyBQb3NpdGlvbjogcGVyY2VudGFnZSB0
b3Agb24gcmVsYXRpdmVseSBwb3NpdGlvbmVkIGVsZW1lbnRzIHdpdGggdmFyaW91cyBjb250YWlu
aW5nIGJsb2NrIGhlaWdodHM8L3RpdGxlPgorPGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRwczov
L2RyYWZ0cy5jc3N3Zy5vcmcvY3NzLXBvc2l0aW9uLTMvI3ZhbGRlZi10b3AtcGVyY2VudGFnZSI+
Cis8bGluayByZWw9ImhlbHAiIGhyZWY9Imh0dHBzOi8vZHJhZnRzLmNzc3dnLm9yZy9jc3Mtc2l6
aW5nLTMvI3BlcmNlbnRhZ2Utc2l6aW5nIj4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3Ro
YXJuZXNzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNz
cmVwb3J0LmpzIj48L3NjcmlwdD4KKzxzdHlsZT4KK2JvZHkgeworICAgIG1hcmdpbjogMDsKK30K
KworLmdyZWVuIHsKKyAgICB3aWR0aDogMjBweDsKKyAgICBoZWlnaHQ6IDIwcHg7CisgICAgYmFj
a2dyb3VuZDogZ3JlZW47CisgICAgcG9zaXRpb246IHJlbGF0aXZlOworfQorPC9zdHlsZT4KKwor
PCEtLSAxLiBGaXhlZCBoZWlnaHQgY29udGFpbmluZyBibG9jaywgdG9wOiA1MCUgLS0+Cis8ZGl2
IGlkPSJ0MS1jYiIgc3R5bGU9ImhlaWdodDogMjAwcHg7Ij4KKyAgICA8ZGl2IGNsYXNzPSJncmVl
biIgaWQ9InQxIiBzdHlsZT0idG9wOiA1MCU7Ij48L2Rpdj4KKzwvZGl2PgorCis8IS0tIDIuIEF1
dG8gaGVpZ2h0IGNvbnRhaW5pbmcgYmxvY2ssIHRvcDogNTAlIC0tPgorPGRpdiBpZD0idDItY2Ii
PgorICAgIDxkaXYgY2xhc3M9ImdyZWVuIiBpZD0idDIiIHN0eWxlPSJ0b3A6IDUwJTsiPjwvZGl2
PgorPC9kaXY+CisKKzwhLS0gMy4gUGVyY2VudGFnZSBoZWlnaHQgY29udGFpbmluZyBibG9jayAo
cGFyZW50IGhhcyBmaXhlZCBoZWlnaHQpLCB0b3A6IDUwJSAtLT4KKzxkaXYgc3R5bGU9ImhlaWdo
dDogMjAwcHg7Ij4KKyAgICA8ZGl2IGlkPSJ0My1jYiIgc3R5bGU9ImhlaWdodDogNTAlOyI+Cisg
ICAgICAgIDxkaXYgY2xhc3M9ImdyZWVuIiBpZD0idDMiIHN0eWxlPSJ0b3A6IDUwJTsiPjwvZGl2
PgorICAgIDwvZGl2PgorPC9kaXY+CisKKzwhLS0gNC4gT09GIHdpdGggYm90aCBpbnNldHMgKGlt
cGxpY2l0IGhlaWdodCksIHRvcDogNTAlIC0tPgorPGRpdiBzdHlsZT0icG9zaXRpb246IHJlbGF0
aXZlOyBoZWlnaHQ6IDIwMHB4OyI+CisgICAgPGRpdiBpZD0idDQtY2IiIHN0eWxlPSJwb3NpdGlv
bjogYWJzb2x1dGU7IHRvcDogMDsgYm90dG9tOiAwOyBsZWZ0OiAwOyByaWdodDogMDsiPgorICAg
ICAgICA8ZGl2IGNsYXNzPSJncmVlbiIgaWQ9InQ0IiBzdHlsZT0idG9wOiA1MCU7Ij48L2Rpdj4K
KyAgICA8L2Rpdj4KKzwvZGl2PgorCis8IS0tIDUuIEdyaWQgaXRlbSBzdHJldGNoZWQsIHRvcDog
NTAlIC0tPgorPGRpdiBzdHlsZT0iZGlzcGxheTogZ3JpZDsgaGVpZ2h0OiAyMDBweDsiPgorICAg
IDxkaXYgaWQ9InQ1LWNiIj4KKyAgICAgICAgPGRpdiBjbGFzcz0iZ3JlZW4iIGlkPSJ0NSIgc3R5
bGU9InRvcDogNTAlOyI+PC9kaXY+CisgICAgPC9kaXY+Cis8L2Rpdj4KKworPCEtLSA2LiBHcmlk
IGl0ZW0gd2l0aCAwcHggdHJhY2ssIHRvcDogNTAlIC0tPgorPGRpdiBzdHlsZT0iZGlzcGxheTog
Z3JpZDsgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAwcHg7IGhlaWdodDogMjAwcHg7Ij4KKyAgICA8ZGl2
IGlkPSJ0Ni1jYiI+CisgICAgICAgIDxkaXYgY2xhc3M9ImdyZWVuIiBpZD0idDYiIHN0eWxlPSJ0
b3A6IDUwJTsiPjwvZGl2PgorICAgIDwvZGl2PgorPC9kaXY+CisKKzwhLS0gNy4gR3JpZCBpdGVt
IHdpdGggYXV0byB0cmFjaywgdG9wOiA1MCUgLS0+Cis8ZGl2IHN0eWxlPSJkaXNwbGF5OiBncmlk
OyBoZWlnaHQ6IDIwMHB4OyI+CisgICAgPGRpdiBpZD0idDctY2IiIHN0eWxlPSJoZWlnaHQ6IGF1
dG87Ij4KKyAgICAgICAgPGRpdiBjbGFzcz0iZ3JlZW4iIGlkPSJ0NyIgc3R5bGU9InRvcDogNTAl
OyI+PC9kaXY+CisgICAgPC9kaXY+Cis8L2Rpdj4KKworPCEtLSA4LiBHcmlkIGl0ZW0gd2l0aCBm
aXhlZCB0cmFjaywgdG9wOiA1MCUgLS0+Cis8ZGl2IHN0eWxlPSJkaXNwbGF5OiBncmlkOyBncmlk
LXRlbXBsYXRlLXJvd3M6IDEwMHB4OyBoZWlnaHQ6IDIwMHB4OyI+CisgICAgPGRpdiBpZD0idDgt
Y2IiPgorICAgICAgICA8ZGl2IGNsYXNzPSJncmVlbiIgaWQ9InQ4IiBzdHlsZT0idG9wOiA1MCU7
Ij48L2Rpdj4KKyAgICA8L2Rpdj4KKzwvZGl2PgorCis8IS0tIDkuIEdyaWQgaXRlbSB3aXRoIHBl
cmNlbnRhZ2UgdHJhY2ssIHRvcDogNTAlIC0tPgorPGRpdiBzdHlsZT0iZGlzcGxheTogZ3JpZDsg
Z3JpZC10ZW1wbGF0ZS1yb3dzOiA1MCU7IGhlaWdodDogMjAwcHg7Ij4KKyAgICA8ZGl2IGlkPSJ0
OS1jYiI+CisgICAgICAgIDxkaXYgY2xhc3M9ImdyZWVuIiBpZD0idDkiIHN0eWxlPSJ0b3A6IDUw
JTsiPjwvZGl2PgorICAgIDwvZGl2PgorPC9kaXY+CisKKzwhLS0gMTAuIFBlcmNlbnRhZ2UgaGVp
Z2h0IGFnYWluc3QgYXV0by1oZWlnaHQgYm9keSwgdG9wOiA1MCUgLS0+Cis8ZGl2IGlkPSJ0MTAt
Y2IiIHN0eWxlPSJoZWlnaHQ6IDEwMCU7Ij4KKyAgICA8ZGl2IGNsYXNzPSJncmVlbiIgaWQ9InQx
MCIgc3R5bGU9InRvcDogNTAlOyI+PC9kaXY+Cis8L2Rpdj4KKworPCEtLSAxMS4gUGVyY2VudGFn
ZSBoZWlnaHQgYWdhaW5zdCBhdXRvIHBhcmVudCAodW5yZXNvbHZhYmxlKSwgdG9wOiA1MCUgLS0+
Cis8ZGl2PgorICAgIDxkaXYgaWQ9InQxMS1jYiIgc3R5bGU9ImhlaWdodDogNTAlOyBtaW4taGVp
Z2h0OiAyMDBweDsiPgorICAgICAgICA8ZGl2IGNsYXNzPSJncmVlbiIgaWQ9InQxMSIgc3R5bGU9
InRvcDogNTAlOyI+PC9kaXY+CisgICAgPC9kaXY+Cis8L2Rpdj4KKworPCEtLSAxMi4gZml0LWNv
bnRlbnQgaGVpZ2h0LCB0b3A6IDUwJSAtLT4KKzxkaXYgaWQ9InQxMi1jYiIgc3R5bGU9ImhlaWdo
dDogZml0LWNvbnRlbnQ7IG1pbi1oZWlnaHQ6IDIwMHB4OyI+CisgICAgPGRpdiBjbGFzcz0iZ3Jl
ZW4iIGlkPSJ0MTIiIHN0eWxlPSJ0b3A6IDUwJTsiPjwvZGl2PgorPC9kaXY+CisKKzwhLS0gMTMu
IG1heC1jb250ZW50IGhlaWdodCwgdG9wOiA1MCUgLS0+Cis8ZGl2IGlkPSJ0MTMtY2IiIHN0eWxl
PSJoZWlnaHQ6IG1heC1jb250ZW50OyBtaW4taGVpZ2h0OiAyMDBweDsiPgorICAgIDxkaXYgY2xh
c3M9ImdyZWVuIiBpZD0idDEzIiBzdHlsZT0idG9wOiA1MCU7Ij48L2Rpdj4KKzwvZGl2PgorCis8
IS0tIDE0LiBtaW4tY29udGVudCBoZWlnaHQsIHRvcDogNTAlIC0tPgorPGRpdiBpZD0idDE0LWNi
IiBzdHlsZT0iaGVpZ2h0OiBtaW4tY29udGVudDsgbWluLWhlaWdodDogMjAwcHg7Ij4KKyAgICA8
ZGl2IGNsYXNzPSJncmVlbiIgaWQ9InQxNCIgc3R5bGU9InRvcDogNTAlOyI+PC9kaXY+Cis8L2Rp
dj4KKworPCEtLSAxNS4gTmVzdGVkIHVucmVzb2x2YWJsZSBwZXJjZW50YWdlcywgdG9wOiA1MCUg
LS0+Cis8ZGl2PgorICAgIDxkaXYgc3R5bGU9ImhlaWdodDogNTAlOyI+CisgICAgICAgIDxkaXYg
aWQ9InQxNS1jYiIgc3R5bGU9ImhlaWdodDogNTAlOyBtaW4taGVpZ2h0OiAyMDBweDsiPgorICAg
ICAgICAgICAgPGRpdiBjbGFzcz0iZ3JlZW4iIGlkPSJ0MTUiIHN0eWxlPSJ0b3A6IDUwJTsiPjwv
ZGl2PgorICAgICAgICA8L2Rpdj4KKyAgICA8L2Rpdj4KKzwvZGl2PgorCis8IS0tIDE2LiBjYWxj
KCkgZml4ZWQgaGVpZ2h0LCB0b3A6IDUwJSAtLT4KKzxkaXYgaWQ9InQxNi1jYiIgc3R5bGU9Imhl
aWdodDogY2FsYygxMDBweCArIDEwMHB4KTsiPgorICAgIDxkaXYgY2xhc3M9ImdyZWVuIiBpZD0i
dDE2IiBzdHlsZT0idG9wOiA1MCU7Ij48L2Rpdj4KKzwvZGl2PgorCis8IS0tIDE3LiBjYWxjKCkg
d2l0aCByZXNvbHZhYmxlIHBlcmNlbnRhZ2UsIHRvcDogNTAlIC0tPgorPGRpdiBzdHlsZT0iaGVp
Z2h0OiAyMDBweDsiPgorICAgIDxkaXYgaWQ9InQxNy1jYiIgc3R5bGU9ImhlaWdodDogY2FsYyg1
MCUgKyAwcHgpOyI+CisgICAgICAgIDxkaXYgY2xhc3M9ImdyZWVuIiBpZD0idDE3IiBzdHlsZT0i
dG9wOiA1MCU7Ij48L2Rpdj4KKyAgICA8L2Rpdj4KKzwvZGl2PgorCis8IS0tIDE4LiBjYWxjKCkg
d2l0aCB1bnJlc29sdmFibGUgcGVyY2VudGFnZSwgdG9wOiA1MCUgLS0+Cis8ZGl2PgorICAgIDxk
aXYgaWQ9InQxOC1jYiIgc3R5bGU9ImhlaWdodDogY2FsYyg1MCUgKyAwcHgpOyBtaW4taGVpZ2h0
OiAyMDBweDsiPgorICAgICAgICA8ZGl2IGNsYXNzPSJncmVlbiIgaWQ9InQxOCIgc3R5bGU9InRv
cDogNTAlOyI+PC9kaXY+CisgICAgPC9kaXY+Cis8L2Rpdj4KKworPCEtLSAxOS4gc3RyZXRjaCBo
ZWlnaHQsIHRvcDogNTAlIC0tPgorPGRpdiBzdHlsZT0iaGVpZ2h0OiAyMDBweDsiPgorICAgIDxk
aXYgaWQ9InQxOS1jYiIgc3R5bGU9ImhlaWdodDogc3RyZXRjaDsiPgorICAgICAgICA8ZGl2IGNs
YXNzPSJncmVlbiIgaWQ9InQxOSIgc3R5bGU9InRvcDogNTAlOyI+PC9kaXY+CisgICAgPC9kaXY+
Cis8L2Rpdj4KKworPCEtLSAyMC4gQ2hhaW4gb2YgcGVyY2VudGFnZXMgcmVzb2x2aW5nIHRvIGZp
eGVkIGhlaWdodCwgdG9wOiA1MCUgLS0+Cis8ZGl2IHN0eWxlPSJoZWlnaHQ6IDIwMHB4OyI+Cisg
ICAgPGRpdiBzdHlsZT0iaGVpZ2h0OiA1MCU7Ij4KKyAgICAgICAgPGRpdiBpZD0idDIwLWNiIiBz
dHlsZT0iaGVpZ2h0OiA1MCU7Ij4KKyAgICAgICAgICAgIDxkaXYgY2xhc3M9ImdyZWVuIiBpZD0i
dDIwIiBzdHlsZT0idG9wOiA1MCU7Ij48L2Rpdj4KKyAgICAgICAgPC9kaXY+CisgICAgPC9kaXY+
Cis8L2Rpdj4KKworPHNjcmlwdD4KK2Z1bmN0aW9uIG9mZnNldEZyb21QYXJlbnQoZ3JlZW5JZCwg
cGFyZW50SWQpIHsKKyAgICB2YXIgZ3JlZW4gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChncmVl
bklkKTsKKyAgICB2YXIgcGFyZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQocGFyZW50SWQp
OworICAgIHJldHVybiBncmVlbi5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS50b3AgLSBwYXJlbnQu
Z2V0Qm91bmRpbmdDbGllbnRSZWN0KCkudG9wOworfQorCit0ZXN0KGZ1bmN0aW9uKCkgeworICAg
IGFzc2VydF9lcXVhbHMob2Zmc2V0RnJvbVBhcmVudCgndDEnLCAndDEtY2InKSwgMTAwKTsKK30s
ICdGaXhlZCBoZWlnaHQgY29udGFpbmluZyBibG9jaywgdG9wOiA1MCUnKTsKKwordGVzdChmdW5j
dGlvbigpIHsKKyAgICBhc3NlcnRfZXF1YWxzKG9mZnNldEZyb21QYXJlbnQoJ3QyJywgJ3QyLWNi
JyksIDApOworfSwgJ0F1dG8gaGVpZ2h0IGNvbnRhaW5pbmcgYmxvY2ssIHRvcDogNTAlJyk7CisK
K3Rlc3QoZnVuY3Rpb24oKSB7CisgICAgYXNzZXJ0X2VxdWFscyhvZmZzZXRGcm9tUGFyZW50KCd0
MycsICd0My1jYicpLCA1MCk7Cit9LCAnUGVyY2VudGFnZSBoZWlnaHQgY29udGFpbmluZyBibG9j
aywgdG9wOiA1MCUnKTsKKwordGVzdChmdW5jdGlvbigpIHsKKyAgICBhc3NlcnRfZXF1YWxzKG9m
ZnNldEZyb21QYXJlbnQoJ3Q0JywgJ3Q0LWNiJyksIDEwMCk7Cit9LCAnT09GIHdpdGggaW1wbGlj
aXQgaGVpZ2h0LCB0b3A6IDUwJScpOworCit0ZXN0KGZ1bmN0aW9uKCkgeworICAgIGFzc2VydF9l
cXVhbHMob2Zmc2V0RnJvbVBhcmVudCgndDUnLCAndDUtY2InKSwgMTAwKTsKK30sICdHcmlkIGl0
ZW0gc3RyZXRjaGVkLCB0b3A6IDUwJScpOworCit0ZXN0KGZ1bmN0aW9uKCkgeworICAgIGFzc2Vy
dF9lcXVhbHMob2Zmc2V0RnJvbVBhcmVudCgndDYnLCAndDYtY2InKSwgMCk7Cit9LCAnR3JpZCBp
dGVtIHdpdGggMHB4IHRyYWNrLCB0b3A6IDUwJScpOworCit0ZXN0KGZ1bmN0aW9uKCkgeworICAg
IGFzc2VydF9lcXVhbHMob2Zmc2V0RnJvbVBhcmVudCgndDcnLCAndDctY2InKSwgMTAwKTsKK30s
ICdHcmlkIGl0ZW0gd2l0aCBhdXRvIHRyYWNrIChzdHJldGNoZWQgdG8gMjAwcHgpLCB0b3A6IDUw
JScpOworCit0ZXN0KGZ1bmN0aW9uKCkgeworICAgIGFzc2VydF9lcXVhbHMob2Zmc2V0RnJvbVBh
cmVudCgndDgnLCAndDgtY2InKSwgNTApOworfSwgJ0dyaWQgaXRlbSB3aXRoIGZpeGVkIDEwMHB4
IHRyYWNrLCB0b3A6IDUwJScpOworCit0ZXN0KGZ1bmN0aW9uKCkgeworICAgIGFzc2VydF9lcXVh
bHMob2Zmc2V0RnJvbVBhcmVudCgndDknLCAndDktY2InKSwgNTApOworfSwgJ0dyaWQgaXRlbSB3
aXRoIDUwJSB0cmFjaywgdG9wOiA1MCUnKTsKKwordGVzdChmdW5jdGlvbigpIHsKKyAgICBhc3Nl
cnRfZXF1YWxzKG9mZnNldEZyb21QYXJlbnQoJ3QxMCcsICd0MTAtY2InKSwgMCk7Cit9LCAnVW5y
ZXNvbHZhYmxlIHBlcmNlbnRhZ2UgaGVpZ2h0ICgxMDAlIG9mIGF1dG8gYm9keSksIHRvcDogNTAl
Jyk7CisKK3Rlc3QoZnVuY3Rpb24oKSB7CisgICAgYXNzZXJ0X2VxdWFscyhvZmZzZXRGcm9tUGFy
ZW50KCd0MTEnLCAndDExLWNiJyksIDApOworfSwgJ1VucmVzb2x2YWJsZSBwZXJjZW50YWdlIGhl
aWdodCB3aXRoIG1pbi1oZWlnaHQsIHRvcDogNTAlJyk7CisKK3Rlc3QoZnVuY3Rpb24oKSB7Cisg
ICAgYXNzZXJ0X2VxdWFscyhvZmZzZXRGcm9tUGFyZW50KCd0MTInLCAndDEyLWNiJyksIDApOwor
fSwgJ2ZpdC1jb250ZW50IGhlaWdodCwgdG9wOiA1MCUnKTsKKwordGVzdChmdW5jdGlvbigpIHsK
KyAgICBhc3NlcnRfZXF1YWxzKG9mZnNldEZyb21QYXJlbnQoJ3QxMycsICd0MTMtY2InKSwgMCk7
Cit9LCAnbWF4LWNvbnRlbnQgaGVpZ2h0LCB0b3A6IDUwJScpOworCit0ZXN0KGZ1bmN0aW9uKCkg
eworICAgIGFzc2VydF9lcXVhbHMob2Zmc2V0RnJvbVBhcmVudCgndDE0JywgJ3QxNC1jYicpLCAw
KTsKK30sICdtaW4tY29udGVudCBoZWlnaHQsIHRvcDogNTAlJyk7CisKK3Rlc3QoZnVuY3Rpb24o
KSB7CisgICAgYXNzZXJ0X2VxdWFscyhvZmZzZXRGcm9tUGFyZW50KCd0MTUnLCAndDE1LWNiJyks
IDApOworfSwgJ05lc3RlZCB1bnJlc29sdmFibGUgcGVyY2VudGFnZSBoZWlnaHRzLCB0b3A6IDUw
JScpOworCit0ZXN0KGZ1bmN0aW9uKCkgeworICAgIGFzc2VydF9lcXVhbHMob2Zmc2V0RnJvbVBh
cmVudCgndDE2JywgJ3QxNi1jYicpLCAxMDApOworfSwgJ2NhbGMoKSBmaXhlZCBoZWlnaHQsIHRv
cDogNTAlJyk7CisKK3Rlc3QoZnVuY3Rpb24oKSB7CisgICAgYXNzZXJ0X2VxdWFscyhvZmZzZXRG
cm9tUGFyZW50KCd0MTcnLCAndDE3LWNiJyksIDUwKTsKK30sICdjYWxjKCkgd2l0aCByZXNvbHZh
YmxlIHBlcmNlbnRhZ2UsIHRvcDogNTAlJyk7CisKK3Rlc3QoZnVuY3Rpb24oKSB7CisgICAgYXNz
ZXJ0X2VxdWFscyhvZmZzZXRGcm9tUGFyZW50KCd0MTgnLCAndDE4LWNiJyksIDApOworfSwgJ2Nh
bGMoKSB3aXRoIHVucmVzb2x2YWJsZSBwZXJjZW50YWdlLCB0b3A6IDUwJScpOworCit0ZXN0KGZ1
bmN0aW9uKCkgeworICAgIGFzc2VydF9lcXVhbHMob2Zmc2V0RnJvbVBhcmVudCgndDE5JywgJ3Qx
OS1jYicpLCAxMDApOworfSwgJ3N0cmV0Y2ggaGVpZ2h0LCB0b3A6IDUwJScpOworCit0ZXN0KGZ1
bmN0aW9uKCkgeworICAgIGFzc2VydF9lcXVhbHMob2Zmc2V0RnJvbVBhcmVudCgndDIwJywgJ3Qy
MC1jYicpLCAyNSk7Cit9LCAnQ2hhaW4gb2YgcmVzb2x2YWJsZSBwZXJjZW50YWdlcywgdG9wOiA1
MCUnKTsKKzwvc2NyaXB0Pgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>