<?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>100120</bug_id>
          
          <creation_ts>2012-10-23 07:06:19 -0700</creation_ts>
          <short_desc>-webkit-image-set should support resolution units other than &apos;x&apos;</short_desc>
          <delta_ts>2021-09-07 03:02:21 -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>CSS</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <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="Rick Byers">rbyers</reporter>
          <assigned_to name="Noam Rosenthal">noam</assigned_to>
          <cc>bdakin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-feeder</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>noam</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>748600</commentid>
    <comment_count>0</comment_count>
    <who name="Rick Byers">rbyers</who>
    <bug_when>2012-10-23 07:06:19 -0700</bug_when>
    <thetext>-webkit-image-set takes a scale factor with the unit &apos;x&apos; which is equivalent to the standard &apos;dppx&apos; unit.  This parsing of &apos;x&apos; is hard-coded into CSSParser::parseImageSet.  Currently the draft spec (http://dev.w3.org/csswg/css4-images/#image-set-notation) says that this can be any valid resolution.  We should support parsing any resolution here, and perhaps just make &apos;x&apos; a synonym for &apos;dppx&apos; units.

This is probably pretty low priority in my opinion.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1610035</commentid>
    <comment_count>1</comment_count>
      <attachid>388531</attachid>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2020-01-23 03:10:12 -0800</bug_when>
    <thetext>Created attachment 388531
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1610036</commentid>
    <comment_count>2</comment_count>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2020-01-23 03:24:17 -0800</bug_when>
    <thetext>Regarding computed style - the decision to use dppx instead of x as a computed value is a matter of choosing between backwards compatibility and spec correctness. I chose to go with correctness here because computed values for image-set are probably not a big thing backwards-compatibility-wise. But it&apos;s a possible alternative to keep &quot;x&quot; values for backwards compatibility. Thoughts about that welcome.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1611293</commentid>
    <comment_count>3</comment_count>
      <attachid>388531</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-01-26 21:49:26 -0800</bug_when>
    <thetext>Comment on attachment 388531
Patch

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

&gt; Source/WebCore/css/CSSImageSetValue.cpp:53
&gt; +    for (size_t i = 0; i &lt; length - 1; i += 2) {

This does the wrong thing for length of 0. I suggest i + 1 &lt; length instead, which handles the case correctly.

&gt; Source/WebCore/css/CSSImageSetValue.cpp:133
&gt; +    for (size_t i = 0; i &lt; length - 1; i += 2) {

This does the wrong thing for length of 0. I suggest i + 1 &lt; length instead, which handles the case correctly.

&gt; Source/WebCore/css/CSSImageSetValue.cpp:139
&gt; +        result.append(item(i + 1)-&gt;cssText());

Write this as a single line for better efficiency:

    result.append(item(i)-&gt;cssText(), &apos; &apos;, item(i + 1)-&gt;cssText());

&gt; Source/WebCore/css/parser/CSSPropertyParserHelpers.h:63
&gt; +enum class AllowXResolutionUnit {
&gt; +    Allow,
&gt; +    Forbid
&gt; +};

My style opinion: This enum and the one above it should just be defined on a single line.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1611309</commentid>
    <comment_count>4</comment_count>
      <attachid>388828</attachid>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2020-01-26 22:54:39 -0800</bug_when>
    <thetext>Created attachment 388828
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1611310</commentid>
    <comment_count>5</comment_count>
      <attachid>388829</attachid>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2020-01-26 22:57:25 -0800</bug_when>
    <thetext>Created attachment 388829
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1611318</commentid>
    <comment_count>6</comment_count>
      <attachid>388834</attachid>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2020-01-26 23:51:55 -0800</bug_when>
    <thetext>Created attachment 388834
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1611631</commentid>
    <comment_count>7</comment_count>
      <attachid>388834</attachid>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-01-27 14:55:46 -0800</bug_when>
    <thetext>Comment on attachment 388834
Patch

Rejecting attachment 388834 from commit-queue.

noam@webkit.org does not have committer permissions according to https://trac.webkit.org/browser/trunk/Tools/Scripts/webkitpy/common/config/contributors.json.

- If you do not have committer rights please read http://webkit.org/coding/contributing.html for instructions on how to use bugzilla flags.

- If you have committer rights please correct the error in Tools/Scripts/webkitpy/common/config/contributors.json by adding yourself to the file (no review needed).  The commit-queue restarts itself every 2 hours.  After restart the commit-queue will correctly respect your committer rights.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1611707</commentid>
    <comment_count>8</comment_count>
      <attachid>388834</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-01-27 16:54:36 -0800</bug_when>
    <thetext>Comment on attachment 388834
Patch

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

&gt; LayoutTests/fast/css/image-set-parsing-expected.txt:59
&gt; -PASS subRule.cssText is &apos;3&apos;
&gt; +FAIL subRule.cssText should be 3. Was 3dppx.

Let&apos;s not introduce this failure.

&gt; LayoutTests/fast/css/image-set-parsing.html:102
&gt; +                [&quot;c&quot;, &quot;3&quot;, &quot;b&quot;, &quot;2dppx&quot;, &quot;a&quot;, &quot;1dppx&quot;]);

This should be &quot;3dppx&quot; not &quot;3&quot;.

&gt; Source/WebCore/css/CSSImageSetValue.cpp:61
&gt; +        m_imagesInSet.append({imageValue, scaleFactor});

WebKit coding style puts spaces inside the braces. (Not sure why, but I’ve tried to stay consistent.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1611834</commentid>
    <comment_count>9</comment_count>
      <attachid>388972</attachid>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2020-01-27 23:12:01 -0800</bug_when>
    <thetext>Created attachment 388972
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1611847</commentid>
    <comment_count>10</comment_count>
      <attachid>388972</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-01-27 23:54:53 -0800</bug_when>
    <thetext>Comment on attachment 388972
Patch for landing

Clearing flags on attachment: 388972

Committed r255228: &lt;https://trac.webkit.org/changeset/255228&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1611848</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-01-27 23:54:55 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1611849</commentid>
    <comment_count>12</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-01-27 23:55:27 -0800</bug_when>
    <thetext>&lt;rdar://problem/58947714&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1790924</commentid>
    <comment_count>13</comment_count>
    <who name="Sam Sneddon [:gsnedders]">gsnedders</who>
    <bug_when>2021-09-07 03:02:21 -0700</bug_when>
    <thetext>*** Bug 206142 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>388531</attachid>
            <date>2020-01-23 03:10:12 -0800</date>
            <delta_ts>2020-01-26 22:54:39 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>patch.diff</filename>
            <type>text/plain</type>
            <size>34836</size>
            <attacher name="Noam Rosenthal">noam</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDI1NDk3MCkKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29y
a2luZyBjb3B5KQpAQCAtMSwzICsxLDI3IEBACisyMDIwLTAxLTIzICBOb2FtIFJvc2VudGhhbCAg
PG5vYW1Ad2Via2l0Lm9yZz4KKworICAgICAgICAtd2Via2l0LWltYWdlLXNldCBzaG91bGQgc3Vw
cG9ydCByZXNvbHV0aW9uIHVuaXRzIG90aGVyIHRoYW4gJ3gnCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDAxMjAKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBIYWQgdG8gbW9kaWZ5IHNldmVyYWwgaW1hZ2Ut
c2V0IHBhcnNpbmcgdGVzdHMgYmVjYXVzZSBvZiB0aGUgYmVoYXZpb3IgY2hhbmdlIGluCisgICAg
ICAgIGNvbXB1dGVkIHN0eWxlICh4ID0+IGRwcHgpLgorCisgICAgICAgIEFsc28gYWRkZWQgYSBj
b3VwbGUgb2YgcGFyc2luZy9yZW5kZXJpbmcgdGVzdHMgc3BlY2lmaWNhbGx5IHRvIHRlc3QgdGhl
IG5ldyBiZWhhdmlvcgorICAgICAgICBvZiBkcGkvZHBjbS9kcHB4LgorCisgICAgICAgICogZmFz
dC9jc3MvY3Vyc29yLXBhcnNpbmctaW1hZ2Utc2V0LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBm
YXN0L2Nzcy9jdXJzb3ItcGFyc2luZy1pbWFnZS1zZXQuaHRtbDoKKyAgICAgICAgKiBmYXN0L2Nz
cy9pbWFnZS1zZXQtcGFyc2luZy1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9jc3MvaW1h
Z2Utc2V0LXBhcnNpbmctaW52YWxpZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9jc3Mv
aW1hZ2Utc2V0LXBhcnNpbmcuaHRtbDoKKyAgICAgICAgKiBmYXN0L2Nzcy9pbWFnZS1zZXQtc2V0
dGluZy1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9jc3MvaW1hZ2Utc2V0LXNldHRpbmcu
aHRtbDoKKyAgICAgICAgKiBmYXN0L2Nzcy9pbWFnZS1zZXQtdW5wcmVmaXhlZC5odG1sOgorICAg
ICAgICAqIGZhc3QvaGlkcGkvaW1hZ2Utc2V0LXVuaXRzLWV4cGVjdGVkLmh0bWw6IEFkZGVkLgor
ICAgICAgICAqIGZhc3QvaGlkcGkvaW1hZ2Utc2V0LXVuaXRzLmh0bWw6IEFkZGVkLgorCiAyMDIw
LTAxLTIzICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+CiAKICAgICAgICAgbm9t
b2R1bGUgc2NyaXB0cyBhcmUgZmV0Y2hlZCBpbiBzb21lIGNhc2VzICh3aXRoIGVtcHR5IGNhY2hl
IG9yIGluIG5ldyB0YWIpCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9jdXJzb3ItcGFyc2lu
Zy1pbWFnZS1zZXQtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3Qv
Y3NzL2N1cnNvci1wYXJzaW5nLWltYWdlLXNldC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDI1NDk3
MCkKKysrIExheW91dFRlc3RzL2Zhc3QvY3NzL2N1cnNvci1wYXJzaW5nLWltYWdlLXNldC1leHBl
Y3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTYsMTAgKzYsMTAgQEAKIEJ1ZyA5OTQ5MwogCiBU
ZXN0IGEgYnVuY2ggb2YgY3Vyc29yIHJ1bGVzIHdoaWNoIHNob3VsZCByb3VuZC10cmlwIGV4YWN0
bHkuCi1QQVNTIHN0eWxlLmNzc1RleHQgaXMgImN1cnNvcjogaW1hZ2Utc2V0KHVybChcImZpbGU6
Ly8vZm9vLnBuZ1wiKSAxeCksIGF1dG87IgotUEFTUyBzdHlsZS5jc3NUZXh0IGlzICJjdXJzb3I6
IGltYWdlLXNldCh1cmwoXCJmaWxlOi8vL2Zvby5wbmdcIikgMXgsIHVybChcImZpbGU6Ly8vZm9v
MngucG5nXCIpIDJ4KSwgYXV0bzsiCi1QQVNTIHN0eWxlLmNzc1RleHQgaXMgImN1cnNvcjogaW1h
Z2Utc2V0KHVybChcImZpbGU6Ly8vZm9vLnBuZ1wiKSAxeCwgdXJsKFwiZmlsZTovLy9mb28yeC5w
bmdcIikgMngpIDIgMywgYXV0bzsiCi1QQVNTIHN0eWxlLmNzc1RleHQgaXMgImN1cnNvcjogaW1h
Z2Utc2V0KHVybChcImZpbGU6Ly8vZm9vMDMucG5nXCIpIDAuM3gsIHVybChcImZpbGU6Ly8vZm9v
NXgucG5nXCIpIDV4KSA2IDUsIHVybChcImZpbGU6Ly8vZm9vLnBuZ1wiKSAxMiAzLCBwb2ludGVy
OyIKK1BBU1Mgc3R5bGUuY3NzVGV4dCBpcyAiY3Vyc29yOiBpbWFnZS1zZXQodXJsKFwiZmlsZTov
Ly9mb28ucG5nXCIpIDFkcHB4KSwgYXV0bzsiCitQQVNTIHN0eWxlLmNzc1RleHQgaXMgImN1cnNv
cjogaW1hZ2Utc2V0KHVybChcImZpbGU6Ly8vZm9vLnBuZ1wiKSAxZHBweCwgdXJsKFwiZmlsZTov
Ly9mb28yeC5wbmdcIikgMmRwcHgpLCBhdXRvOyIKK1BBU1Mgc3R5bGUuY3NzVGV4dCBpcyAiY3Vy
c29yOiBpbWFnZS1zZXQodXJsKFwiZmlsZTovLy9mb28ucG5nXCIpIDFkcHB4LCB1cmwoXCJmaWxl
Oi8vL2ZvbzJ4LnBuZ1wiKSAyZHBweCkgMiAzLCBhdXRvOyIKK1BBU1Mgc3R5bGUuY3NzVGV4dCBp
cyAiY3Vyc29yOiBpbWFnZS1zZXQodXJsKFwiZmlsZTovLy9mb28wMy5wbmdcIikgMC4zZHBweCwg
dXJsKFwiZmlsZTovLy9mb281eC5wbmdcIikgNWRwcHgpIDYgNSwgdXJsKFwiZmlsZTovLy9mb28u
cG5nXCIpIDEyIDMsIHBvaW50ZXI7IgogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQog
CiBURVNUIENPTVBMRVRFCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9jdXJzb3ItcGFyc2lu
Zy1pbWFnZS1zZXQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9jdXJz
b3ItcGFyc2luZy1pbWFnZS1zZXQuaHRtbAkocmV2aXNpb24gMjU0OTcwKQorKysgTGF5b3V0VGVz
dHMvZmFzdC9jc3MvY3Vyc29yLXBhcnNpbmctaW1hZ2Utc2V0Lmh0bWwJKHdvcmtpbmcgY29weSkK
QEAgLTIxLDcgKzIxLDcgQEAKIHsKICAgICB2YXIgY3NzVGV4dCA9IG1ha2VDdXJzb3JSdWxlKHJ1
bGUpOwogICAgIHN0eWxlID0gcm91bmR0cmlwQ3NzUnVsZShjc3NUZXh0KTsKLSAgICBzaG91bGRC
ZUVxdWFsVG9TdHJpbmcoJ3N0eWxlLmNzc1RleHQnLCBjc3NUZXh0KTsKKyAgICBzaG91bGRCZUVx
dWFsVG9TdHJpbmcoJ3N0eWxlLmNzc1RleHQnLCBjc3NUZXh0LnJlcGxhY2UoL3goPz1bLCldKS9n
LCAnZHBweCcpKTsKIH0KIAogZnVuY3Rpb24gcm91bmR0cmlwQ3NzUnVsZShjc3NUZXh0KQpJbmRl
eDogTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNpbmctZXhwZWN0ZWQudHh0Cj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLWV4cGVj
dGVkLnR4dAkocmV2aXNpb24gMjU0OTcwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Ut
c2V0LXBhcnNpbmctZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xMCw3ICsxMCw3IEBA
CiBQQVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0Z1bmN0
aW9uJwogUEFTUyBpbWFnZVNldFJ1bGUubGVuZ3RoIGlzIDIKIFBBU1Mgc3ViUnVsZSBpcyAnYScK
LVBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxJworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzFk
cHB4JwogCiBNdWx0aXBsZSB2YWx1ZXMgZm9yIGJhY2tncm91bmQtaW1hZ2UgOiB1cmwoJyNhJykg
MXgsIHVybCgnI2InKSAyeAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUpIGlzICdD
U1NWYWx1ZUxpc3QnCkBAIC0xOCw5ICsxOCw5IEBACiBQQVNTIGpzV3JhcHBlckNsYXNzKGltYWdl
U2V0UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0Z1bmN0aW9uJwogUEFTUyBpbWFnZVNldFJ1bGUubGVu
Z3RoIGlzIDQKIFBBU1Mgc3ViUnVsZSBpcyAnYScKLVBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcx
JworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzFkcHB4JwogUEFTUyBzdWJSdWxlIGlzICdiJwot
UEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzInCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMmRw
cHgnCiAKIFNpbmdsZSB2YWx1ZSBmb3IgYmFja2dyb3VuZC1pbWFnZSB3aXRob3V0IHVybCgpIGZ1
bmN0aW9uIDogJyNhJyAxeAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUpIGlzICdD
U1NWYWx1ZUxpc3QnCkBAIC0yOCw3ICsyOCw3IEBACiBQQVNTIGpzV3JhcHBlckNsYXNzKGltYWdl
U2V0UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0Z1bmN0aW9uJwogUEFTUyBpbWFnZVNldFJ1bGUubGVu
Z3RoIGlzIDIKIFBBU1Mgc3ViUnVsZSBpcyAnYScKLVBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcx
JworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzFkcHB4JwogCiBNdWx0aXBsZSB2YWx1ZXMgZm9y
IGJhY2tncm91bmQtaW1hZ2Ugd2l0aG91dCB1cmwoKSBmdW5jdGlvbiA6ICcjYScgMXgsICcjYicg
MngKIFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwpA
QCAtMzYsOSArMzYsOSBAQAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3Ry
dWN0b3IpIGlzICdGdW5jdGlvbicKIFBBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyA0CiBQQVNT
IHN1YlJ1bGUgaXMgJ2EnCi1QQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMScKK1BBU1Mgc3ViUnVs
ZS5jc3NUZXh0IGlzICcxZHBweCcKIFBBU1Mgc3ViUnVsZSBpcyAnYicKLVBBU1Mgc3ViUnVsZS5j
c3NUZXh0IGlzICcyJworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzJkcHB4JwogCiBNaXggdmFs
dWVzIHdpdGggYW5kIHdpdGhvdXQgdXJsKCkgZnVuY3Rpb24gOiAnI2EnIDF4LCB1cmwoJyNiJykg
MngKIFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwpA
QCAtNDYsOSArNDYsOSBAQAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3Ry
dWN0b3IpIGlzICdGdW5jdGlvbicKIFBBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyA0CiBQQVNT
IHN1YlJ1bGUgaXMgJ2EnCi1QQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMScKK1BBU1Mgc3ViUnVs
ZS5jc3NUZXh0IGlzICcxZHBweCcKIFBBU1Mgc3ViUnVsZSBpcyAnYicKLVBBU1Mgc3ViUnVsZS5j
c3NUZXh0IGlzICcyJworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzJkcHB4JwogCiBNdWx0aXBs
ZSB2YWx1ZXMgZm9yIGJhY2tncm91bmQtaW1hZ2UsIG91dCBvZiBvcmRlciA6IHVybCgnI2MnKSAz
eCwgdXJsKCcjYicpIDJ4LCB1cmwoJyNhJykgMXgKIFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VT
ZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwpAQCAtNTYsMTEgKzU2LDExIEBACiBQQVNTIGpzV3Jh
cHBlckNsYXNzKGltYWdlU2V0UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0Z1bmN0aW9uJwogUEFTUyBp
bWFnZVNldFJ1bGUubGVuZ3RoIGlzIDYKIFBBU1Mgc3ViUnVsZSBpcyAnYycKLVBBU1Mgc3ViUnVs
ZS5jc3NUZXh0IGlzICczJworRkFJTCBzdWJSdWxlLmNzc1RleHQgc2hvdWxkIGJlIDMuIFdhcyAz
ZHBweC4KIFBBU1Mgc3ViUnVsZSBpcyAnYicKLVBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcyJwor
UEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzJkcHB4JwogUEFTUyBzdWJSdWxlIGlzICdhJwotUEFT
UyBzdWJSdWxlLmNzc1RleHQgaXMgJzEnCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMWRwcHgn
CiAKIFNpbmdsZSB2YWx1ZSBmb3IgY29udGVudCA6IHVybCgnI2EnKSAxeAogUEFTUyBqc1dyYXBw
ZXJDbGFzcyhpbWFnZVNldFJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCkBAIC02OCw3ICs2OCw3IEBA
CiBQQVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0Z1bmN0
aW9uJwogUEFTUyBpbWFnZVNldFJ1bGUubGVuZ3RoIGlzIDIKIFBBU1Mgc3ViUnVsZSBpcyAnYScK
LVBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxJworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzFk
cHB4JwogCiBNdWx0aXBsZSB2YWx1ZXMgZm9yIGNvbnRlbnQgOiB1cmwoJyNhJykgMXgsIHVybCgn
I2InKSAyeAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUpIGlzICdDU1NWYWx1ZUxp
c3QnCkBAIC03Niw5ICs3Niw5IEBACiBQQVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZS5j
b25zdHJ1Y3RvcikgaXMgJ0Z1bmN0aW9uJwogUEFTUyBpbWFnZVNldFJ1bGUubGVuZ3RoIGlzIDQK
IFBBU1Mgc3ViUnVsZSBpcyAnYScKLVBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxJworUEFTUyBz
dWJSdWxlLmNzc1RleHQgaXMgJzFkcHB4JwogUEFTUyBzdWJSdWxlIGlzICdiJwotUEFTUyBzdWJS
dWxlLmNzc1RleHQgaXMgJzInCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMmRwcHgnCiAKIFNp
bmdsZSB2YWx1ZSBmb3IgYm9yZGVyLWltYWdlIDogdXJsKCcjYScpIDF4CiBQQVNTIGpzV3JhcHBl
ckNsYXNzKGltYWdlU2V0UnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKQEAgLTg2LDcgKzg2LDcgQEAK
IFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlLmNvbnN0cnVjdG9yKSBpcyAnRnVuY3Rp
b24nCiBQQVNTIGltYWdlU2V0UnVsZS5sZW5ndGggaXMgMgogUEFTUyBzdWJSdWxlIGlzICdhJwot
UEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzEnCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMWRw
cHgnCiAKIE11bHRpcGxlIHZhbHVlcyBmb3IgYm9yZGVyLWltYWdlIDogdXJsKCcjYScpIDF4LCB1
cmwoJyNiJykgMngKIFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFs
dWVMaXN0JwpAQCAtOTQsOSArOTQsOSBAQAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1
bGUuY29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicKIFBBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBp
cyA0CiBQQVNTIHN1YlJ1bGUgaXMgJ2EnCi1QQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMScKK1BB
U1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxZHBweCcKIFBBU1Mgc3ViUnVsZSBpcyAnYicKLVBBU1Mg
c3ViUnVsZS5jc3NUZXh0IGlzICcyJworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzJkcHB4Jwog
CiBTaW5nbGUgdmFsdWUgZm9yIC13ZWJraXQtbWFzay1ib3gtaW1hZ2UgOiB1cmwoJyNhJykgMXgK
IFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwpAQCAt
MTA0LDcgKzEwNCw3IEBACiBQQVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZS5jb25zdHJ1
Y3RvcikgaXMgJ0Z1bmN0aW9uJwogUEFTUyBpbWFnZVNldFJ1bGUubGVuZ3RoIGlzIDIKIFBBU1Mg
c3ViUnVsZSBpcyAnYScKLVBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxJworUEFTUyBzdWJSdWxl
LmNzc1RleHQgaXMgJzFkcHB4JwogCiBNdWx0aXBsZSB2YWx1ZXMgZm9yIC13ZWJraXQtbWFzay1i
b3gtaW1hZ2UgOiB1cmwoJyNhJykgMXgsIHVybCgnI2InKSAyeAogUEFTUyBqc1dyYXBwZXJDbGFz
cyhpbWFnZVNldFJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCkBAIC0xMTIsOSArMTEyLDQ1IEBACiBQ
QVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0Z1bmN0aW9u
JwogUEFTUyBpbWFnZVNldFJ1bGUubGVuZ3RoIGlzIDQKIFBBU1Mgc3ViUnVsZSBpcyAnYScKLVBB
U1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxJworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzFkcHB4
JwogUEFTUyBzdWJSdWxlIGlzICdiJwotUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzInCitQQVNT
IHN1YlJ1bGUuY3NzVGV4dCBpcyAnMmRwcHgnCisKK1NpbmdsZSB2YWx1ZSB3aXRoIGRwcHggOiB1
cmwoJyNhJykgMWRwcHgKK1BBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NT
VmFsdWVMaXN0JworUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuX19wcm90b19fKSBp
cyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJworUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1
bGUuY29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicKK1BBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBp
cyAyCitQQVNTIHN1YlJ1bGUgaXMgJ2EnCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMWRwcHgn
CisKK1NpbmdsZSB2YWx1ZSB3aXRoIGRwaSA6IHVybCgnI2EnKSAxOTJkcGkKK1BBU1MganNXcmFw
cGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JworUEFTUyBqc1dyYXBwZXJD
bGFzcyhpbWFnZVNldFJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwor
UEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3IpIGlzICdGdW5jdGlv
bicKK1BBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyAyCitQQVNTIHN1YlJ1bGUgaXMgJ2EnCitQ
QVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMTkyZHBpJworCitTaW5nbGUgdmFsdWUgd2l0aCBkcGNt
IDogdXJsKCcjYScpIDEwMmRwY20KK1BBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBp
cyAnQ1NTVmFsdWVMaXN0JworUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuX19wcm90
b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJworUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFn
ZVNldFJ1bGUuY29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicKK1BBU1MgaW1hZ2VTZXRSdWxlLmxl
bmd0aCBpcyAyCitQQVNTIHN1YlJ1bGUgaXMgJ2EnCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAn
MTAyZHBjbScKKworTXVsdGlwbGUgdmFsdWVzIHdpdGggZHBpLCBkcHB4IGFuZCB4IDogdXJsKCcj
YScpIDF4LCB1cmwoJyNiJykgMmRwcHgsIHVybCgnI2MnKSAyNTBkcGkKK1BBU1MganNXcmFwcGVy
Q2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JworUEFTUyBqc1dyYXBwZXJDbGFz
cyhpbWFnZVNldFJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJworUEFT
UyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicK
K1BBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyA2CitQQVNTIHN1YlJ1bGUgaXMgJ2EnCitQQVNT
IHN1YlJ1bGUuY3NzVGV4dCBpcyAnMWRwcHgnCitQQVNTIHN1YlJ1bGUgaXMgJ2InCitQQVNTIHN1
YlJ1bGUuY3NzVGV4dCBpcyAnMmRwcHgnCitQQVNTIHN1YlJ1bGUgaXMgJ2MnCitQQVNTIHN1YlJ1
bGUuY3NzVGV4dCBpcyAnMjUwZHBpJwogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQog
CiBURVNUIENPTVBMRVRFCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFnZS1zZXQtcGFy
c2luZy1nZW5lcmF0ZWQtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zh
c3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLWdlbmVyYXRlZC1leHBlY3RlZC50eHQJKHJldmlzaW9u
IDI1NDk3MCkKKysrIExheW91dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLWdlbmVy
YXRlZC1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEwLDcgKzEwLDcgQEAKIFBBU1Mg
anNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlLmNvbnN0cnVjdG9yKSBpcyAnRnVuY3Rpb24nCiBQ
QVNTIGltYWdlU2V0UnVsZS5sZW5ndGggaXMgMgogUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJ2xp
bmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpJwotUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzEn
CitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMWRwcHgnCiAKIFNpbmdsZSB2YWx1ZSBmb3IgY29u
dGVudCB3aXRoIGdyYWRpZW50IDogbGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSkgMXgKIFBB
U1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwpAQCAtMTgs
NyArMTgsNyBAQAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3Ip
IGlzICdGdW5jdGlvbicKIFBBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyAyCiBQQVNTIHN1YlJ1
bGUuY3NzVGV4dCBpcyAnbGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSknCi1QQVNTIHN1YlJ1
bGUuY3NzVGV4dCBpcyAnMScKK1BBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxZHBweCcKIAogU2lu
Z2xlIHZhbHVlIGZvciBiYWNrZ3JvdW5kLWltYWdlIHdpdGggZ3JhZGllbnRzIDogbGluZWFyLWdy
YWRpZW50KGdyZWVuLCB3aGl0ZSkgMXgsIHJhZGlhbC1ncmFkaWVudChibHVlLCB3aGl0ZSkgMngK
IFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwpAQCAt
MjYsOSArMjYsOSBAQAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0
b3IpIGlzICdGdW5jdGlvbicKIFBBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyA0CiBQQVNTIHN1
YlJ1bGUuY3NzVGV4dCBpcyAnbGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSknCi1QQVNTIHN1
YlJ1bGUuY3NzVGV4dCBpcyAnMScKK1BBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxZHBweCcKIFBB
U1Mgc3ViUnVsZS5jc3NUZXh0IGlzICdyYWRpYWwtZ3JhZGllbnQoYmx1ZSwgd2hpdGUpJwotUEFT
UyBzdWJSdWxlLmNzc1RleHQgaXMgJzInCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMmRwcHgn
CiAKIENvbWJpbmVkIGdyYWRpZW50IGFuZCBVUkwgOiB1cmwoJyNhJykgMXgsIGxpbmVhci1ncmFk
aWVudChncmVlbiwgd2hpdGUpIDJ4CiBQQVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZSkg
aXMgJ0NTU1ZhbHVlTGlzdCcKQEAgLTM2LDkgKzM2LDkgQEAKIFBBU1MganNXcmFwcGVyQ2xhc3Mo
aW1hZ2VTZXRSdWxlLmNvbnN0cnVjdG9yKSBpcyAnRnVuY3Rpb24nCiBQQVNTIGltYWdlU2V0UnVs
ZS5sZW5ndGggaXMgNAogUEFTUyBzdWJSdWxlIGlzICdhJwotUEFTUyBzdWJSdWxlLmNzc1RleHQg
aXMgJzEnCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMWRwcHgnCiBQQVNTIHN1YlJ1bGUuY3Nz
VGV4dCBpcyAnbGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSknCi1QQVNTIHN1YlJ1bGUuY3Nz
VGV4dCBpcyAnMicKK1BBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcyZHBweCcKIAogQ29tYmluZWQg
Z3JhZGllbnQgYW5kIFVSTCBpbiBjb250ZW50IDogdXJsKCcjYScpIDF4LCBsaW5lYXItZ3JhZGll
bnQoZ3JlZW4sIHdoaXRlKSAyeAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUpIGlz
ICdDU1NWYWx1ZUxpc3QnCkBAIC00Niw5ICs0Niw5IEBACiBQQVNTIGpzV3JhcHBlckNsYXNzKGlt
YWdlU2V0UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0Z1bmN0aW9uJwogUEFTUyBpbWFnZVNldFJ1bGUu
bGVuZ3RoIGlzIDQKIFBBU1Mgc3ViUnVsZSBpcyAnYScKLVBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlz
ICcxJworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzFkcHB4JwogUEFTUyBzdWJSdWxlLmNzc1Rl
eHQgaXMgJ2xpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpJwotUEFTUyBzdWJSdWxlLmNzc1Rl
eHQgaXMgJzInCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMmRwcHgnCiAKIENvbWJpbmVkIGdy
YWRpZW50IGFuZCBjcm9zcy1mYWRlIDogLXdlYmtpdC1jcm9zcy1mYWRlKHVybCgnI2EnKSwgdXJs
KCcjYicpLCA3MCUpIDF4LCBsaW5lYXItZ3JhZGllbnQoZ3JlZW4sIHdoaXRlKSAyeAogUEFTUyBq
c1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCkBAIC01Niw5ICs1
NiwxNyBAQAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3IpIGlz
ICdGdW5jdGlvbicKIFBBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyA0CiBQQVNTIHN1YlJ1bGUg
aXMgJ2EnCi1QQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMScKK1BBU1Mgc3ViUnVsZS5jc3NUZXh0
IGlzICcxZHBweCcKIFBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICdsaW5lYXItZ3JhZGllbnQoZ3Jl
ZW4sIHdoaXRlKScKLVBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcyJworUEFTUyBzdWJSdWxlLmNz
c1RleHQgaXMgJzJkcHB4JworCitTaW5nbGUgdmFsdWUgZm9yIGJhY2tncm91bmQtaW1hZ2Ugd2l0
aCBncmFkaWVudCBhbmQgZHBpIDogbGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSkgMTkyZHBp
CitQQVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKK1BB
U1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlz
dFByb3RvdHlwZScKK1BBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlLmNvbnN0cnVjdG9y
KSBpcyAnRnVuY3Rpb24nCitQQVNTIGltYWdlU2V0UnVsZS5sZW5ndGggaXMgMgorUEFTUyBzdWJS
dWxlLmNzc1RleHQgaXMgJ2xpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpJworUEFTUyBzdWJS
dWxlLmNzc1RleHQgaXMgJzE5MmRwaScKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUK
IAogVEVTVCBDT01QTEVURQpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXBh
cnNpbmctZ2VuZXJhdGVkLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9jc3Mv
aW1hZ2Utc2V0LXBhcnNpbmctZ2VuZXJhdGVkLmh0bWwJKHJldmlzaW9uIDI1NDk3MCkKKysrIExh
eW91dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLWdlbmVyYXRlZC5odG1sCSh3b3Jr
aW5nIGNvcHkpCkBAIC03NCwzMiArNzQsMzggQEAKIHRlc3RJbWFnZVNldFJ1bGUoIlNpbmdsZSB2
YWx1ZSBmb3IgYmFja2dyb3VuZC1pbWFnZSB3aXRoIGdyYWRpZW50IiwKICAgICAgICAgICAgICAg
ICAiYmFja2dyb3VuZC1pbWFnZSIsCiAgICAgICAgICAgICAgICAgImxpbmVhci1ncmFkaWVudChn
cmVlbiwgd2hpdGUpIDF4IiwgMiwKLSAgICAgICAgICAgICAgICBbImxpbmVhci1ncmFkaWVudChn
cmVlbiwgd2hpdGUpIiwgIjEiXSk7CisgICAgICAgICAgICAgICAgWyJsaW5lYXItZ3JhZGllbnQo
Z3JlZW4sIHdoaXRlKSIsICIxZHBweCJdKTsKIHRlc3RJbWFnZVNldFJ1bGUoIlNpbmdsZSB2YWx1
ZSBmb3IgY29udGVudCB3aXRoIGdyYWRpZW50IiwKICAgICAgICAgICAgICAgICAiYmFja2dyb3Vu
ZC1pbWFnZSIsCiAgICAgICAgICAgICAgICAgImxpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUp
IDF4IiwgMiwKLSAgICAgICAgICAgICAgICBbImxpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUp
IiwgIjEiXSk7CisgICAgICAgICAgICAgICAgWyJsaW5lYXItZ3JhZGllbnQoZ3JlZW4sIHdoaXRl
KSIsICIxZHBweCJdKTsKIAogdGVzdEltYWdlU2V0UnVsZSgiU2luZ2xlIHZhbHVlIGZvciBiYWNr
Z3JvdW5kLWltYWdlIHdpdGggZ3JhZGllbnRzIiwKICAgICAgICAgICAgICAgICAiYmFja2dyb3Vu
ZC1pbWFnZSIsCiAgICAgICAgICAgICAgICAgImxpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUp
IDF4LCByYWRpYWwtZ3JhZGllbnQoYmx1ZSwgd2hpdGUpIDJ4IiwgNCwKLSAgICAgICAgICAgICAg
ICBbImxpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpIiwgIjEiLCAicmFkaWFsLWdyYWRpZW50
KGJsdWUsIHdoaXRlKSIsICIyIl0pOworICAgICAgICAgICAgICAgIFsibGluZWFyLWdyYWRpZW50
KGdyZWVuLCB3aGl0ZSkiLCAiMWRwcHgiLCAicmFkaWFsLWdyYWRpZW50KGJsdWUsIHdoaXRlKSIs
ICIyZHBweCJdKTsKIAogdGVzdEltYWdlU2V0UnVsZSgiQ29tYmluZWQgZ3JhZGllbnQgYW5kIFVS
TCIsCiAgICAgICAgICAgICAgICAgImJhY2tncm91bmQtaW1hZ2UiLAogICAgICAgICAgICAgICAg
ICJ1cmwoJyNhJykgMXgsIGxpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpIDJ4IiwgNCwKLSAg
ICAgICAgICAgICAgICBbImEiLCAiMSIsICJsaW5lYXItZ3JhZGllbnQoZ3JlZW4sIHdoaXRlKSIs
ICIyIl0pOworICAgICAgICAgICAgICAgIFsiYSIsICIxZHBweCIsICJsaW5lYXItZ3JhZGllbnQo
Z3JlZW4sIHdoaXRlKSIsICIyZHBweCJdKTsKIAogdGVzdEltYWdlU2V0UnVsZSgiQ29tYmluZWQg
Z3JhZGllbnQgYW5kIFVSTCBpbiBjb250ZW50IiwKICAgICAgICAgICAgICAgICAiY29udGVudCIs
CiAgICAgICAgICAgICAgICAgInVybCgnI2EnKSAxeCwgbGluZWFyLWdyYWRpZW50KGdyZWVuLCB3
aGl0ZSkgMngiLCA0LAotICAgICAgICAgICAgICAgIFsiYSIsICIxIiwgImxpbmVhci1ncmFkaWVu
dChncmVlbiwgd2hpdGUpIiwgIjIiXSk7CisgICAgICAgICAgICAgICAgWyJhIiwgIjFkcHB4Iiwg
ImxpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpIiwgIjJkcHB4Il0pOwogCiB0ZXN0SW1hZ2VT
ZXRSdWxlKCJDb21iaW5lZCBncmFkaWVudCBhbmQgY3Jvc3MtZmFkZSIsCiAgICAgICAgICAgICAg
ICAgImJhY2tncm91bmQtaW1hZ2UiLAogICAgICAgICAgICAgICAgICItd2Via2l0LWNyb3NzLWZh
ZGUodXJsKCcjYScpLCB1cmwoJyNiJyksIDcwJSkgMXgsIGxpbmVhci1ncmFkaWVudChncmVlbiwg
d2hpdGUpIDJ4IiwgNCwKLSAgICAgICAgICAgICAgICBbImEiLCAiMSIsICJsaW5lYXItZ3JhZGll
bnQoZ3JlZW4sIHdoaXRlKSIsICIyIl0pOworICAgICAgICAgICAgICAgIFsiYSIsICIxZHBweCIs
ICJsaW5lYXItZ3JhZGllbnQoZ3JlZW4sIHdoaXRlKSIsICIyZHBweCJdKTsKIAordGVzdEltYWdl
U2V0UnVsZSgiU2luZ2xlIHZhbHVlIGZvciBiYWNrZ3JvdW5kLWltYWdlIHdpdGggZ3JhZGllbnQg
YW5kIGRwaSIsCisgICAgICAgICAgICAgICAgImJhY2tncm91bmQtaW1hZ2UiLAorICAgICAgICAg
ICAgICAgICJsaW5lYXItZ3JhZGllbnQoZ3JlZW4sIHdoaXRlKSAxOTJkcGkiLCAyLAorICAgICAg
ICAgICAgICAgIFsibGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSkiLCAiMTkyZHBpIl0pOwor
CisKIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CiA8L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSIu
Li8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KSW5kZXg6IExheW91dFRl
c3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLmh0bWwKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNpbmcuaHRtbAkocmV2aXNpb24gMjU0OTcwKQor
KysgTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNpbmcuaHRtbAkod29ya2luZyBj
b3B5KQpAQCAtNzQsNjMgKzc0LDgzIEBACiB0ZXN0SW1hZ2VTZXRSdWxlKCJTaW5nbGUgdmFsdWUg
Zm9yIGJhY2tncm91bmQtaW1hZ2UiLAogICAgICAgICAgICAgICAgICJiYWNrZ3JvdW5kLWltYWdl
IiwKICAgICAgICAgICAgICAgICAidXJsKCcjYScpIDF4IiwgMiwKLSAgICAgICAgICAgICAgICBb
ImEiLCAiMSJdKTsKKyAgICAgICAgICAgICAgICBbImEiLCAiMWRwcHgiXSk7CiAKIHRlc3RJbWFn
ZVNldFJ1bGUoIk11bHRpcGxlIHZhbHVlcyBmb3IgYmFja2dyb3VuZC1pbWFnZSIsCiAgICAgICAg
ICAgICAgICAgImJhY2tncm91bmQtaW1hZ2UiLAogICAgICAgICAgICAgICAgICJ1cmwoJyNhJykg
MXgsIHVybCgnI2InKSAyeCIsIDQsCi0gICAgICAgICAgICAgICAgWyJhIiwgIjEiLCAiYiIsICIy
Il0pOworICAgICAgICAgICAgICAgIFsiYSIsICIxZHBweCIsICJiIiwgIjJkcHB4Il0pOwogCiB0
ZXN0SW1hZ2VTZXRSdWxlKCJTaW5nbGUgdmFsdWUgZm9yIGJhY2tncm91bmQtaW1hZ2Ugd2l0aG91
dCB1cmwoKSBmdW5jdGlvbiIsCiAgICAgICAgICAgICAgICAgImJhY2tncm91bmQtaW1hZ2UiLAog
ICAgICAgICAgICAgICAgICInI2EnIDF4IiwgMiwKLSAgICAgICAgICAgICAgICBbImEiLCAiMSJd
KTsKKyAgICAgICAgICAgICAgICBbImEiLCAiMWRwcHgiXSk7CiAKIHRlc3RJbWFnZVNldFJ1bGUo
Ik11bHRpcGxlIHZhbHVlcyBmb3IgYmFja2dyb3VuZC1pbWFnZSB3aXRob3V0IHVybCgpIGZ1bmN0
aW9uIiwKICAgICAgICAgICAgICAgICAiYmFja2dyb3VuZC1pbWFnZSIsCiAgICAgICAgICAgICAg
ICAgIicjYScgMXgsICcjYicgMngiLCA0LAotICAgICAgICAgICAgICAgIFsiYSIsICIxIiwgImIi
LCAiMiJdKTsKKyAgICAgICAgICAgICAgICBbImEiLCAiMWRwcHgiLCAiYiIsICIyZHBweCJdKTsK
IAogdGVzdEltYWdlU2V0UnVsZSgiTWl4IHZhbHVlcyB3aXRoIGFuZCB3aXRob3V0IHVybCgpIGZ1
bmN0aW9uIiwKICAgICAgICAgICAgICAgICAiYmFja2dyb3VuZC1pbWFnZSIsCiAgICAgICAgICAg
ICAgICAgIicjYScgMXgsIHVybCgnI2InKSAyeCIsIDQsCi0gICAgICAgICAgICAgICAgWyJhIiwg
IjEiLCAiYiIsICIyIl0pOworICAgICAgICAgICAgICAgIFsiYSIsICIxZHBweCIsICJiIiwgIjJk
cHB4Il0pOwogCiB0ZXN0SW1hZ2VTZXRSdWxlKCJNdWx0aXBsZSB2YWx1ZXMgZm9yIGJhY2tncm91
bmQtaW1hZ2UsIG91dCBvZiBvcmRlciIsCiAgICAgICAgICAgICAgICAgImJhY2tncm91bmQtaW1h
Z2UiLAogICAgICAgICAgICAgICAgICJ1cmwoJyNjJykgM3gsIHVybCgnI2InKSAyeCwgdXJsKCcj
YScpIDF4IiwgNiwKLSAgICAgICAgICAgICAgICBbImMiLCAiMyIsICJiIiwgIjIiLCAiYSIsICIx
Il0pOworICAgICAgICAgICAgICAgIFsiYyIsICIzIiwgImIiLCAiMmRwcHgiLCAiYSIsICIxZHBw
eCJdKTsKIAogdGVzdEltYWdlU2V0UnVsZSgiU2luZ2xlIHZhbHVlIGZvciBjb250ZW50IiwKICAg
ICAgICAgICAgICAgICAiY29udGVudCIsCiAgICAgICAgICAgICAgICAgInVybCgnI2EnKSAxeCIs
IDIsCi0gICAgICAgICAgICAgICAgWyJhIiwgIjEiXSk7CisgICAgICAgICAgICAgICAgWyJhIiwg
IjFkcHB4Il0pOwogCiB0ZXN0SW1hZ2VTZXRSdWxlKCJNdWx0aXBsZSB2YWx1ZXMgZm9yIGNvbnRl
bnQiLAogICAgICAgICAgICAgICAgICJjb250ZW50IiwKICAgICAgICAgICAgICAgICAidXJsKCcj
YScpIDF4LCB1cmwoJyNiJykgMngiLCA0LAotICAgICAgICAgICAgICAgIFsiYSIsICIxIiwgImIi
LCAiMiJdKTsKKyAgICAgICAgICAgICAgICBbImEiLCAiMWRwcHgiLCAiYiIsICIyZHBweCJdKTsK
IAogdGVzdEltYWdlU2V0UnVsZSgiU2luZ2xlIHZhbHVlIGZvciBib3JkZXItaW1hZ2UiLAogICAg
ICAgICAgICAgICAgICItd2Via2l0LWJvcmRlci1pbWFnZSIsCiAgICAgICAgICAgICAgICAgInVy
bCgnI2EnKSAxeCIsIDIsCi0gICAgICAgICAgICAgICAgWyJhIiwgIjEiXSk7CisgICAgICAgICAg
ICAgICAgWyJhIiwgIjFkcHB4Il0pOwogCiB0ZXN0SW1hZ2VTZXRSdWxlKCJNdWx0aXBsZSB2YWx1
ZXMgZm9yIGJvcmRlci1pbWFnZSIsCiAgICAgICAgICAgICAgICAgIi13ZWJraXQtYm9yZGVyLWlt
YWdlIiwKICAgICAgICAgICAgICAgICAidXJsKCcjYScpIDF4LCB1cmwoJyNiJykgMngiLCA0LAot
ICAgICAgICAgICAgICAgIFsiYSIsICIxIiwgImIiLCAiMiJdKTsKKyAgICAgICAgICAgICAgICBb
ImEiLCAiMWRwcHgiLCAiYiIsICIyZHBweCJdKTsKIAogdGVzdEltYWdlU2V0UnVsZSgiU2luZ2xl
IHZhbHVlIGZvciAtd2Via2l0LW1hc2stYm94LWltYWdlIiwKICAgICAgICAgICAgICAgICAiLXdl
YmtpdC1tYXNrLWJveC1pbWFnZSIsCiAgICAgICAgICAgICAgICAgInVybCgnI2EnKSAxeCIsIDIs
Ci0gICAgICAgICAgICAgICAgWyJhIiwgIjEiXSk7CisgICAgICAgICAgICAgICAgWyJhIiwgIjFk
cHB4Il0pOwogCiB0ZXN0SW1hZ2VTZXRSdWxlKCJNdWx0aXBsZSB2YWx1ZXMgZm9yIC13ZWJraXQt
bWFzay1ib3gtaW1hZ2UiLAogICAgICAgICAgICAgICAgICItd2Via2l0LW1hc2stYm94LWltYWdl
IiwKICAgICAgICAgICAgICAgICAidXJsKCcjYScpIDF4LCB1cmwoJyNiJykgMngiLCA0LAotICAg
ICAgICAgICAgICAgIFsiYSIsICIxIiwgImIiLCAiMiJdKTsKKyAgICAgICAgICAgICAgICBbImEi
LCAiMWRwcHgiLCAiYiIsICIyZHBweCJdKTsKIAordGVzdEltYWdlU2V0UnVsZSgiU2luZ2xlIHZh
bHVlIHdpdGggZHBweCIsCisgICAgICAgICAgICAgICAgImJhY2tncm91bmQtaW1hZ2UiLAorICAg
ICAgICAgICAgICAgICJ1cmwoJyNhJykgMWRwcHgiLCAyLAorICAgICAgICAgICAgICAgIFsiYSIs
ICIxZHBweCJdKTsKKwordGVzdEltYWdlU2V0UnVsZSgiU2luZ2xlIHZhbHVlIHdpdGggZHBpIiwK
KyAgICAgICAgICAgICAgICAiYmFja2dyb3VuZC1pbWFnZSIsCisgICAgICAgICAgICAgICAgInVy
bCgnI2EnKSAxOTJkcGkiLCAyLAorICAgICAgICAgICAgICAgIFsiYSIsICIxOTJkcGkiXSk7CisK
K3Rlc3RJbWFnZVNldFJ1bGUoIlNpbmdsZSB2YWx1ZSB3aXRoIGRwY20iLAorICAgICAgICAgICAg
ICAgICJiYWNrZ3JvdW5kLWltYWdlIiwKKyAgICAgICAgICAgICAgICAidXJsKCcjYScpIDEwMmRw
Y20iLCAyLAorICAgICAgICAgICAgICAgIFsiYSIsICIxMDJkcGNtIl0pOworCit0ZXN0SW1hZ2VT
ZXRSdWxlKCJNdWx0aXBsZSB2YWx1ZXMgd2l0aCBkcGksIGRwcHggYW5kIHgiLAorICAgICAgICAg
ICAgICAgICJiYWNrZ3JvdW5kLWltYWdlIiwKKyAgICAgICAgICAgICAgICAidXJsKCcjYScpIDF4
LCB1cmwoJyNiJykgMmRwcHgsIHVybCgnI2MnKSAyNTBkcGkiLCA2LAorICAgICAgICAgICAgICAg
IFsiYSIsICIxZHBweCIsICJiIiwgIjJkcHB4IiwgImMiLCAiMjUwZHBpIl0pOworCiBzdWNjZXNz
ZnVsbHlQYXJzZWQgPSB0cnVlOwogPC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3Vy
Y2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2Nz
cy9pbWFnZS1zZXQtc2V0dGluZy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXNldHRpbmctZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAyNTQ5
NzApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFnZS1zZXQtc2V0dGluZy1leHBlY3RlZC50
eHQJKHdvcmtpbmcgY29weSkKQEAgLTUsMTkgKzUsMTkgQEAKIAogCiBTaW5nbGUgdmFsdWUgZm9y
IGJhY2tncm91bmQtaW1hZ2UgOiB1cmwoImh0dHA6Ly93d3cud2Via2l0Lm9yZy9hIikgMXgKLVBB
U1Mgc3R5bGUuYmFja2dyb3VuZEltYWdlIGlzICJpbWFnZS1zZXQodXJsKFwiaHR0cDovL3d3dy53
ZWJraXQub3JnL2FcIikgMXgpIgorUEFTUyBzdHlsZS5iYWNrZ3JvdW5kSW1hZ2UgaXMgImltYWdl
LXNldCh1cmwoXCJodHRwOi8vd3d3LndlYmtpdC5vcmcvYVwiKSAxZHBweCkiCiAKIE11bHRpcGxl
IHZhbHVlcyBmb3IgYmFja2dyb3VuZC1pbWFnZSA6IHVybCgiaHR0cDovL3d3dy53ZWJraXQub3Jn
L2EiKSAxeCwgdXJsKCJodHRwOi8vd3d3LndlYmtpdC5vcmcvYiIpIDJ4Ci1QQVNTIHN0eWxlLmJh
Y2tncm91bmRJbWFnZSBpcyAiaW1hZ2Utc2V0KHVybChcImh0dHA6Ly93d3cud2Via2l0Lm9yZy9h
XCIpIDF4LCB1cmwoXCJodHRwOi8vd3d3LndlYmtpdC5vcmcvYlwiKSAyeCkiCitQQVNTIHN0eWxl
LmJhY2tncm91bmRJbWFnZSBpcyAiaW1hZ2Utc2V0KHVybChcImh0dHA6Ly93d3cud2Via2l0Lm9y
Zy9hXCIpIDFkcHB4LCB1cmwoXCJodHRwOi8vd3d3LndlYmtpdC5vcmcvYlwiKSAyZHBweCkiCiAK
IE11bHRpcGxlIHZhbHVlcyBmb3IgYmFja2dyb3VuZC1pbWFnZSwgb3V0IG9mIG9yZGVyIDogdXJs
KCJodHRwOi8vd3d3LndlYmtpdC5vcmcvYyIpIDN4LCB1cmwoImh0dHA6Ly93d3cud2Via2l0Lm9y
Zy9iIikgMngsIHVybCgiaHR0cDovL3d3dy53ZWJraXQub3JnL2EiKSAxeAotUEFTUyBzdHlsZS5i
YWNrZ3JvdW5kSW1hZ2UgaXMgImltYWdlLXNldCh1cmwoXCJodHRwOi8vd3d3LndlYmtpdC5vcmcv
Y1wiKSAzeCwgdXJsKFwiaHR0cDovL3d3dy53ZWJraXQub3JnL2JcIikgMngsIHVybChcImh0dHA6
Ly93d3cud2Via2l0Lm9yZy9hXCIpIDF4KSIKK1BBU1Mgc3R5bGUuYmFja2dyb3VuZEltYWdlIGlz
ICJpbWFnZS1zZXQodXJsKFwiaHR0cDovL3d3dy53ZWJraXQub3JnL2NcIikgM2RwcHgsIHVybChc
Imh0dHA6Ly93d3cud2Via2l0Lm9yZy9iXCIpIDJkcHB4LCB1cmwoXCJodHRwOi8vd3d3LndlYmtp
dC5vcmcvYVwiKSAxZHBweCkiCiAKIER1cGxpY2F0ZSB2YWx1ZXMgZm9yIGJhY2tncm91bmQtaW1h
Z2UgOiB1cmwoImh0dHA6Ly93d3cud2Via2l0Lm9yZy9jIikgMXgsIHVybCgiaHR0cDovL3d3dy53
ZWJraXQub3JnL2IiKSAyeCwgdXJsKCJodHRwOi8vd3d3LndlYmtpdC5vcmcvYSIpIDF4Ci1QQVNT
IHN0eWxlLmJhY2tncm91bmRJbWFnZSBpcyAiaW1hZ2Utc2V0KHVybChcImh0dHA6Ly93d3cud2Vi
a2l0Lm9yZy9jXCIpIDF4LCB1cmwoXCJodHRwOi8vd3d3LndlYmtpdC5vcmcvYlwiKSAyeCwgdXJs
KFwiaHR0cDovL3d3dy53ZWJraXQub3JnL2FcIikgMXgpIgorUEFTUyBzdHlsZS5iYWNrZ3JvdW5k
SW1hZ2UgaXMgImltYWdlLXNldCh1cmwoXCJodHRwOi8vd3d3LndlYmtpdC5vcmcvY1wiKSAxZHBw
eCwgdXJsKFwiaHR0cDovL3d3dy53ZWJraXQub3JnL2JcIikgMmRwcHgsIHVybChcImh0dHA6Ly93
d3cud2Via2l0Lm9yZy9hXCIpIDFkcHB4KSIKIAogRnJhY3Rpb25hbCB2YWx1ZXMgZm9yIGJhY2tn
cm91bmQtaW1hZ2UgOiB1cmwoImh0dHA6Ly93d3cud2Via2l0Lm9yZy9jIikgMC4yeCwgdXJsKCJo
dHRwOi8vd3d3LndlYmtpdC5vcmcvYiIpIDIuM3gsIHVybCgiaHR0cDovL3d3dy53ZWJraXQub3Jn
L2EiKSAxMi4zNDU2eAotUEFTUyBzdHlsZS5iYWNrZ3JvdW5kSW1hZ2UgaXMgImltYWdlLXNldCh1
cmwoXCJodHRwOi8vd3d3LndlYmtpdC5vcmcvY1wiKSAwLjJ4LCB1cmwoXCJodHRwOi8vd3d3Lndl
YmtpdC5vcmcvYlwiKSAyLjN4LCB1cmwoXCJodHRwOi8vd3d3LndlYmtpdC5vcmcvYVwiKSAxMi4z
NDU2eCkiCitQQVNTIHN0eWxlLmJhY2tncm91bmRJbWFnZSBpcyAiaW1hZ2Utc2V0KHVybChcImh0
dHA6Ly93d3cud2Via2l0Lm9yZy9jXCIpIDAuMmRwcHgsIHVybChcImh0dHA6Ly93d3cud2Via2l0
Lm9yZy9iXCIpIDIuM2RwcHgsIHVybChcImh0dHA6Ly93d3cud2Via2l0Lm9yZy9hXCIpIDEyLjM0
NTZkcHB4KSIKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIAogVEVTVCBDT01QTEVU
RQpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXNldHRpbmcuaHRtbAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFnZS1zZXQtc2V0dGluZy5odG1sCShy
ZXZpc2lvbiAyNTQ5NzApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFnZS1zZXQtc2V0dGlu
Zy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0yMSw3ICsyMSw3IEBACiAgICAgcmV0dXJuIGNvbXB1
dGVkVmFsdWU7CiB9CiAKLWZ1bmN0aW9uIHRlc3RJbWFnZVNldFJ1bGUoZGVzY3JpcHRpb24sIHBy
b3BlcnR5LCBydWxlLCBleHBlY3RlZCkKK2Z1bmN0aW9uIHRlc3RJbWFnZVNldFJ1bGUoZGVzY3Jp
cHRpb24sIHByb3BlcnR5LCBydWxlKQogewogICAgIGRlYnVnKCIiKTsKICAgICBkZWJ1ZyhkZXNj
cmlwdGlvbiArICIgOiAiICsgcnVsZSk7CkBAIC0yOCw3ICsyOCw3IEBACiAKICAgICB2YXIgZnVs
bFJ1bGUgPSAiaW1hZ2Utc2V0KCIgKyBydWxlICsgIikiOwogICAgIHN0eWxlID0gdGVzdENvbXB1
dGVkU3R5bGUocHJvcGVydHksIGZ1bGxSdWxlKTsKLSAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmco
J3N0eWxlLmJhY2tncm91bmRJbWFnZScsIGZ1bGxSdWxlKTsKKyAgICBzaG91bGRCZUVxdWFsVG9T
dHJpbmcoJ3N0eWxlLmJhY2tncm91bmRJbWFnZScsIGZ1bGxSdWxlLnJlcGxhY2UoL3goPz1bLCld
KS9nLCAnZHBweCcpKTsKIH0KIAogdGVzdEltYWdlU2V0UnVsZSgiU2luZ2xlIHZhbHVlIGZvciBi
YWNrZ3JvdW5kLWltYWdlIiwKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC11
bnByZWZpeGVkLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Ut
c2V0LXVucHJlZml4ZWQuaHRtbAkocmV2aXNpb24gMjU0OTcwKQorKysgTGF5b3V0VGVzdHMvZmFz
dC9jc3MvaW1hZ2Utc2V0LXVucHJlZml4ZWQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTYsNyAr
MTYsNyBAQAogICAgIHJldHVybiBjb21wdXRlZFZhbHVlOwogfQogCi1mdW5jdGlvbiB0ZXN0SW1h
Z2VTZXRSdWxlKGRlc2NyaXB0aW9uLCBwcm9wZXJ0eSwgcnVsZSwgZXhwZWN0ZWQpCitmdW5jdGlv
biB0ZXN0SW1hZ2VTZXRSdWxlKGRlc2NyaXB0aW9uLCBwcm9wZXJ0eSwgcnVsZSkKIHsKICAgICBk
ZWJ1ZygiIik7CiAgICAgZGVidWcoYCR7ZGVzY3JpcHRpb259IDogJHtydWxlfWApOwpAQCAtMjUs
MTIgKzI1LDEyIEBACiAgICAgaWYgKHByb3BlcnR5ID09ICdjdXJzb3InKQogICAgICAgICBydWxl
ICs9ICcsIGRlZmF1bHQnOwogCi0gICAgaWYgKHRlc3RDb21wdXRlZFN0eWxlKHByb3BlcnR5LCBy
dWxlKSA9PSBydWxlKQorICAgIGlmICh0ZXN0Q29tcHV0ZWRTdHlsZShwcm9wZXJ0eSwgcnVsZSkg
PT0gcnVsZS5yZXBsYWNlKC94KD89WywpXSkvZywgJ2RwcHgnKSkKICAgICAgICAgZGVidWcoIlVu
cHJlZml4ZWQ6IFBBU1MiKTsKICAgICBlbHNlCiAgICAgICAgIGRlYnVnKCJVbnByZWZpeGVkOiBG
QUlMIik7CiAKLSAgICBpZiAodGVzdENvbXB1dGVkU3R5bGUocHJvcGVydHksICItd2Via2l0LSIg
KyBydWxlKSA9PSBydWxlKQorICAgIGlmICh0ZXN0Q29tcHV0ZWRTdHlsZShwcm9wZXJ0eSwgIi13
ZWJraXQtIiArIHJ1bGUpID09IHJ1bGUucmVwbGFjZSgveCg/PVssKV0pL2csICdkcHB4JykpCiAg
ICAgICAgIGRlYnVnKCJQcmVmaXhlZDogUEFTUyIpOwogICAgIGVsc2UKICAgICAgICAgZGVidWco
IlByZWZpeGVkOiBGQUlMIik7CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2hpZHBpL2ltYWdlLXNl
dC11bml0cy1leHBlY3RlZC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvaGlk
cGkvaW1hZ2Utc2V0LXVuaXRzLWV4cGVjdGVkLmh0bWwJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0
VGVzdHMvZmFzdC9oaWRwaS9pbWFnZS1zZXQtdW5pdHMtZXhwZWN0ZWQuaHRtbAkod29ya2luZyBj
b3B5KQpAQCAtMCwwICsxLDI1IEBACis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdD4KKyAgICB3aW5k
b3cub25sb2FkID0gKCkgPT4geworICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAg
ICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworICAgICAgICB0ZXN0UnVubmVyLnNldEJh
Y2tpbmdTY2FsZUZhY3RvcigyLCAoKSA9PiBzZXRUaW1lb3V0KCgpID0+IHRlc3RSdW5uZXIubm90
aWZ5RG9uZSgpLCAwKSk7CisgICAgICB9CisgICAgfQorPC9zY3JpcHQ+CisKKzxzdHlsZT4KKyAg
ICAjZm9vIHsKKyAgICAgICAgd2lkdGg6MTAwcHg7CisgICAgICAgIGhlaWdodDoxMDBweDsKKyAg
ICAgICAgYmFja2dyb3VuZC1pbWFnZTogaW1hZ2Utc2V0KHVybCgncmVzb3VyY2VzL2JsdWUtMTAw
LXB4LXNxdWFyZS5wbmcnKSAxeCwgbGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSkgMngpOwor
ICAgIH0KKzwvc3R5bGU+Cis8L2hlYWQ+CisKKzxib2R5PgorICAgIDxkaXY+VGhpcyB0ZXN0IHBh
c3NlcyBpZiB0aGUgZGl2IGJlbG93IGlzIGEgYmx1ZSAxMDBweCBzcXVhcmUgd2hlbiB0aGUgZGV2
aWNlU2NhbGVGYWN0b3IgaXMgMSwgYW5kIGlmIGl0IGlzIGEgMTAwcHggZ3JlZW4td2hpdGUgZ3Jh
ZGllbnQgc3F1YXJlIHdoZW4gdGhlIGRldmljZVNjYWxlRmFjdG9yIGlzIDIuPC9kaXY+CisgICAg
PGRpdiBpZD1mb28+PC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+CgpQcm9wZXJ0eSBjaGFuZ2VzIG9u
OiBMYXlvdXRUZXN0cy9mYXN0L2hpZHBpL2ltYWdlLXNldC11bml0cy1leHBlY3RlZC5odG1sCl9f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX18KQWRkZWQ6IHN2bjpleGVjdXRhYmxlCiMjIC0wLDAgKzEgIyMKKyoKXCBObyBuZXds
aW5lIGF0IGVuZCBvZiBwcm9wZXJ0eQpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9oaWRwaS9pbWFn
ZS1zZXQtdW5pdHMuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2hpZHBpL2lt
YWdlLXNldC11bml0cy5odG1sCShub25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2Zhc3QvaGlk
cGkvaW1hZ2Utc2V0LXVuaXRzLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwyNSBAQAor
PGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CisgICAgd2luZG93Lm9ubG9hZCA9ICgpID0+IHsKKyAg
ICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgeworICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRp
bERvbmUoKTsKKyAgICAgICAgdGVzdFJ1bm5lci5zZXRCYWNraW5nU2NhbGVGYWN0b3IoMiwgKCkg
PT4gc2V0VGltZW91dCgoKSA9PiB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKSwgMCkpOworICAgICAg
fQorICAgIH0KKzwvc2NyaXB0PgorCis8c3R5bGU+CisgICAgI2ZvbyB7CisgICAgICAgIHdpZHRo
OjEwMHB4OworICAgICAgICBoZWlnaHQ6MTAwcHg7CisgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6
IGltYWdlLXNldCh1cmwoJ3Jlc291cmNlcy9ibHVlLTEwMC1weC1zcXVhcmUucG5nJykgMWRwcHgs
IGxpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpIDE5MmRwaSk7CisgICAgfQorPC9zdHlsZT4K
KzwvaGVhZD4KKworPGJvZHk+CisgICAgPGRpdj5UaGlzIHRlc3QgcGFzc2VzIGlmIHRoZSBkaXYg
YmVsb3cgaXMgYSBibHVlIDEwMHB4IHNxdWFyZSB3aGVuIHRoZSBkZXZpY2VTY2FsZUZhY3RvciBp
cyAxLCBhbmQgaWYgaXQgaXMgYSAxMDBweCBncmVlbi13aGl0ZSBncmFkaWVudCBzcXVhcmUgd2hl
biB0aGUgZGV2aWNlU2NhbGVGYWN0b3IgaXMgMi48L2Rpdj4KKyAgICA8ZGl2IGlkPWZvbz48L2Rp
dj4KKzwvYm9keT4KKzwvaHRtbD4KClByb3BlcnR5IGNoYW5nZXMgb246IExheW91dFRlc3RzL2Zh
c3QvaGlkcGkvaW1hZ2Utc2V0LXVuaXRzLmh0bWwKX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOmV4ZWN1
dGFibGUKIyMgLTAsMCArMSAjIworKgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIHByb3BlcnR5Cklu
ZGV4OiBTb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNTQ5NzApCisrKyBTb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwzNyBAQAorMjAyMC0wMS0yMyAgTm9hbSBSb3Nl
bnRoYWwgIDxub2FtQHdlYmtpdC5vcmc+CisKKyAgICAgICAgLXdlYmtpdC1pbWFnZS1zZXQgc2hv
dWxkIHN1cHBvcnQgcmVzb2x1dGlvbiB1bml0cyBvdGhlciB0aGFuICd4JworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAwMTIwCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTGV2ZXJhZ2VkIHByZXZpb3VzIHdv
cmsgb24gaW1hZ2UtcmVzb2x1dGlvbiB0byBlbmFibGUgZHBpL2RwcHgvZHBjbSBpbiBDU1MgaW1h
Z2Utc2V0LgorICAgICAgICBOb3cgdGhlIHNlY29uZCB2YWx1ZSBvZiBldmVyeSBlbnRyeSBpbiB0
aGUgaW1hZ2Utc2V0IGlzIHBhcnNlZCBsaWtlIGFueSByZXNvbHV0aW9uLAorICAgICAgICBhbGxv
d2luZyAieCIgYXMgYSBzeW5vbmltIGZvciAiZHBweC4KKworICAgICAgICBUaGlzIGNoYW5nZXMg
Y29tcHV0ZWQgc3R5bGUgYmVoYXZpb3IgZm9yIGltYWdlLXNldCAtICJ4IiByZXNvbHV0aW9uIHZh
bHVlcyB3aWxsIGJlIGNvbnZlcnRlZAorICAgICAgICB0byAiZHBweCIuIFRoaXMgaXMgaW4gbGlu
ZSB3aXRoIHRoZSBzcGlyaXQgb2YgY29tcHV0ZWQgdmFsdWVzLCB0aG91Z2ggaXQncyBub3Qgc3Bl
YydlZCBwYXJ0aWN1bGFybHkuCisKKyAgICAgICAgVGVzdHM6IGZhc3QvaGlkcGkvaW1hZ2Utc2V0
LXVuaXRzLmh0bWwKKworICAgICAgICAqIGNzcy9DU1NJbWFnZVNldFZhbHVlLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkNTU0ltYWdlU2V0VmFsdWU6OmZpbGxJbWFnZVNldCk6CisgICAgICAgIChX
ZWJDb3JlOjpDU1NJbWFnZVNldFZhbHVlOjp1cGRhdGVEZXZpY2VTY2FsZUZhY3Rvcik6CisgICAg
ICAgIChXZWJDb3JlOjpDU1NJbWFnZVNldFZhbHVlOjpjdXN0b21DU1NUZXh0IGNvbnN0KToKKyAg
ICAgICAgICAgICAgICBDb252ZXJ0IHZhbHVlcyB0byBkcHB4IGJlZm9yZSBzb3J0aW5nIHRoZW0g
dGhlIGltYWdlIHNldC4KKyAgICAgICAgICAgICAgICBVc2UgZ2l2ZW4gQ1NTIHVuaXRzIGluIGNv
bXB1dGVkIHN0eWxlcyBpbnN0ZWFkIG9mIGhhcmRjb2RpbmcgIngiIAorCisgICAgICAgICogY3Nz
L0NTU1ByaW1pdGl2ZVZhbHVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmlzVmFsaWRDU1NVbml0
VHlwZUZvckRvdWJsZUNvbnZlcnNpb24pOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJpbWl0aXZl
VmFsdWU6OmNvbnZlcnNpb25Ub0Nhbm9uaWNhbFVuaXRzU2NhbGVGYWN0b3IpOgorICAgICAgICAg
ICAgICAgIEFsbG93IGNvbnZlcnNpb24gb2YgZHBpL2RwcHgvZHBjbSB0byBjYW5vbmljYWwgKGRw
cHgpLgorCisgICAgICAgICogY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzOjpjb25zdW1lUmVz
b2x1dGlvbik6CisgICAgICAgIChXZWJDb3JlOjpDU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnM6OmNv
bnN1bWVJbWFnZVNldCk6CisgICAgICAgICogY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlckhl
bHBlcnMuaDoKKyAgICAgICAgICAgICAgICBDb25zdW1lIGFueSByZXNvbHV0aW9uIHdoZW4gcGFy
c2luZyBpbWFnZS1zZXQuCisKIDIwMjAtMDEtMjMgIFl1c3VrZSBTdXp1a2kgIDx5c3V6dWtpQGFw
cGxlLmNvbT4KIAogICAgICAgICBub21vZHVsZSBzY3JpcHRzIGFyZSBmZXRjaGVkIGluIHNvbWUg
Y2FzZXMgKHdpdGggZW1wdHkgY2FjaGUgb3IgaW4gbmV3IHRhYikKSW5kZXg6IFNvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NJbWFnZVNldFZhbHVlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTSW1hZ2VTZXRWYWx1ZS5jcHAJKHJldmlzaW9uIDI1NDk3MCkKKysrIFNvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NJbWFnZVNldFZhbHVlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTAsMjAg
KzUwLDE1IEBACiB2b2lkIENTU0ltYWdlU2V0VmFsdWU6OmZpbGxJbWFnZVNldCgpCiB7CiAgICAg
c2l6ZV90IGxlbmd0aCA9IHRoaXMtPmxlbmd0aCgpOwotICAgIHNpemVfdCBpID0gMDsKLSAgICB3
aGlsZSAoaSA8IGxlbmd0aCkgeworICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbGVuZ3RoIC0g
MTsgaSArPSAyKSB7CiAgICAgICAgIENTU1ZhbHVlKiBpbWFnZVZhbHVlID0gaXRlbShpKTsKKyAg
ICAgICAgQ1NTVmFsdWUqIHNjYWxlRmFjdG9yVmFsdWUgPSBpdGVtKGkgKyAxKTsKKwogICAgICAg
ICBBU1NFUlQoaXM8Q1NTSW1hZ2VWYWx1ZT4oaW1hZ2VWYWx1ZSkgfHwgaXM8Q1NTSW1hZ2VHZW5l
cmF0b3JWYWx1ZT4oaW1hZ2VWYWx1ZSkpOwotICAgICAgICArK2k7Ci0gICAgICAgIEFTU0VSVF9X
SVRIX1NFQ1VSSVRZX0lNUExJQ0FUSU9OKGkgPCBsZW5ndGgpOwotICAgICAgICBDU1NWYWx1ZSog
c2NhbGVGYWN0b3JWYWx1ZSA9IGl0ZW0oaSk7Ci0gICAgICAgIGZsb2F0IHNjYWxlRmFjdG9yID0g
ZG93bmNhc3Q8Q1NTUHJpbWl0aXZlVmFsdWU+KCpzY2FsZUZhY3RvclZhbHVlKS5mbG9hdFZhbHVl
KCk7CisgICAgICAgIEFTU0VSVChpczxDU1NQcmltaXRpdmVWYWx1ZT4oc2NhbGVGYWN0b3JWYWx1
ZSkpOwogCi0gICAgICAgIEltYWdlV2l0aFNjYWxlIGltYWdlOwotICAgICAgICBpbWFnZS52YWx1
ZSA9IGltYWdlVmFsdWU7Ci0gICAgICAgIGltYWdlLnNjYWxlRmFjdG9yID0gc2NhbGVGYWN0b3I7
Ci0gICAgICAgIG1faW1hZ2VzSW5TZXQuYXBwZW5kKGltYWdlKTsKLSAgICAgICAgKytpOworICAg
ICAgICBmbG9hdCBzY2FsZUZhY3RvciA9IGRvd25jYXN0PENTU1ByaW1pdGl2ZVZhbHVlPihzY2Fs
ZUZhY3RvclZhbHVlKS0+ZmxvYXRWYWx1ZShDU1NVbml0VHlwZTo6Q1NTX0RQUFgpOworICAgICAg
ICBtX2ltYWdlc0luU2V0LmFwcGVuZCh7aW1hZ2VWYWx1ZSwgc2NhbGVGYWN0b3J9KTsKICAgICB9
CiAKICAgICAvLyBTb3J0IHRoZSBpbWFnZXMgc28gdGhhdCB0aGV5IGFyZSBzdG9yZWQgaW4gb3Jk
ZXIgZnJvbSBsb3dlc3QgcmVzb2x1dGlvbiB0byBoaWdoZXN0LgpAQCAtMTA2LDcgKzEwMSw2IEBA
CiAKIHZvaWQgQ1NTSW1hZ2VTZXRWYWx1ZTo6dXBkYXRlRGV2aWNlU2NhbGVGYWN0b3IoY29uc3Qg
RG9jdW1lbnQmIGRvY3VtZW50KQogewotCiAgICAgLy8gRklYTUU6IEluIHRoZSBmdXR1cmUsIHdl
IHdhbnQgdG8gdGFrZSBtdWNoIG1vcmUgdGhhbiBkZXZpY2VTY2FsZUZhY3RvciBpbnRvIGFjb3Vu
dCBoZXJlLgogICAgIC8vIEFsbCBmb3JtcyBvZiBzY2FsZSBzaG91bGQgYmUgaW5jbHVkZWQ6IFBh
Z2U6OnBhZ2VTY2FsZUZhY3RvcigpLCBGcmFtZTo6cGFnZVpvb21GYWN0b3IoKSwKICAgICAvLyBh
bmQgYW55IENTUyB0cmFuc2Zvcm1zLiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9ODE2OTgKQEAgLTEzNiwyNCArMTMwLDEzIEBACiAgICAgcmVzdWx0LmFwcGVuZExpdGVy
YWwoImltYWdlLXNldCgiKTsKIAogICAgIHNpemVfdCBsZW5ndGggPSB0aGlzLT5sZW5ndGgoKTsK
LSAgICBzaXplX3QgaSA9IDA7Ci0gICAgd2hpbGUgKGkgPCBsZW5ndGgpIHsKKyAgICBmb3IgKHNp
emVfdCBpID0gMDsgaSA8IGxlbmd0aCAtIDE7IGkgKz0gMikgewogICAgICAgICBpZiAoaSA+IDAp
CiAgICAgICAgICAgICByZXN1bHQuYXBwZW5kTGl0ZXJhbCgiLCAiKTsKIAotICAgICAgICBjb25z
dCBDU1NWYWx1ZSogaW1hZ2VWYWx1ZSA9IGl0ZW0oaSk7Ci0gICAgICAgIHJlc3VsdC5hcHBlbmQo
aW1hZ2VWYWx1ZS0+Y3NzVGV4dCgpKTsKKyAgICAgICAgcmVzdWx0LmFwcGVuZChpdGVtKGkpLT5j
c3NUZXh0KCkpOwogICAgICAgICByZXN1bHQuYXBwZW5kKCcgJyk7Ci0KLSAgICAgICAgKytpOwot
ICAgICAgICBBU1NFUlRfV0lUSF9TRUNVUklUWV9JTVBMSUNBVElPTihpIDwgbGVuZ3RoKTsKLSAg
ICAgICAgY29uc3QgQ1NTVmFsdWUqIHNjYWxlRmFjdG9yVmFsdWUgPSBpdGVtKGkpOwotICAgICAg
ICByZXN1bHQuYXBwZW5kKHNjYWxlRmFjdG9yVmFsdWUtPmNzc1RleHQoKSk7Ci0gICAgICAgIC8v
IEZJWE1FOiBFdmVudHVhbGx5IHRoZSBzY2FsZSBmYWN0b3Igc2hvdWxkIGNvbnRhaW4gaXQncyBv
d24gdW5pdCBodHRwOi8vd2tiLnVnLzEwMDEyMC4KLSAgICAgICAgLy8gRm9yIG5vdyAneCcgaXMg
aGFyZC1jb2RlZCBpbiB0aGUgcGFyc2VyLCBzbyB3ZSBoYXJkLWNvZGUgaXQgaGVyZSB0b28uCi0g
ICAgICAgIHJlc3VsdC5hcHBlbmQoJ3gnKTsKLQotICAgICAgICArK2k7CisgICAgICAgIHJlc3Vs
dC5hcHBlbmQoaXRlbShpICsgMSktPmNzc1RleHQoKSk7CiAgICAgfQogCiAgICAgcmVzdWx0LmFw
cGVuZCgnKScpOwpJbmRleDogU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWUuY3Bw
CShyZXZpc2lvbiAyNTQ5NzApCisrKyBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFs
dWUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC04MSwxNSArODEsMTAgQEAKICAgICBjYXNlIENTU1Vu
aXRUeXBlOjpDU1NfVk1BWDoKICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfVk1JTjoKICAgICBj
YXNlIENTU1VuaXRUeXBlOjpDU1NfVlc6Ci0gICAgICAgIHJldHVybiB0cnVlOwogICAgIGNhc2Ug
Q1NTVW5pdFR5cGU6OkNTU19EUENNOgogICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19EUEk6CiAg
ICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0RQUFg6Ci0jaWYgRU5BQkxFKENTU19JTUFHRV9SRVNP
TFVUSU9OKSB8fCBFTkFCTEUoUkVTT0xVVElPTl9NRURJQV9RVUVSWSkKICAgICAgICAgcmV0dXJu
IHRydWU7Ci0jZWxzZQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0jZW5kaWYKICAgICBjYXNlIENT
U1VuaXRUeXBlOjpDU1NfQVRUUjoKICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfQ09VTlRFUjoK
ICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfQ09VTlRFUl9OQU1FOgpAQCAtNzAzLDYgKzY5OCw3
IEBACiAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0RFRzoKICAgICBjYXNlIENTU1VuaXRUeXBl
OjpDU1NfTVM6CiAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0haOgorICAgIGNhc2UgQ1NTVW5p
dFR5cGU6OkNTU19EUFBYOgogICAgICAgICBicmVhazsKICAgICBjYXNlIENTU1VuaXRUeXBlOjpD
U1NfQ006CiAgICAgICAgIGZhY3RvciA9IGNzc1BpeGVsc1BlckluY2ggLyBjbVBlckluY2g7Cklu
ZGV4OiBTb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VySGVscGVycy5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBh
cnNlckhlbHBlcnMuY3BwCShyZXZpc2lvbiAyNTQ5NzApCisrKyBTb3VyY2UvV2ViQ29yZS9jc3Mv
cGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VySGVscGVycy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQz
OSw3ICs0MzksNyBAQAogICAgIHJldHVybiBudWxscHRyOwogfQogCi1SZWZQdHI8Q1NTUHJpbWl0
aXZlVmFsdWU+IGNvbnN1bWVSZXNvbHV0aW9uKENTU1BhcnNlclRva2VuUmFuZ2UmIHJhbmdlKQor
UmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiBjb25zdW1lUmVzb2x1dGlvbihDU1NQYXJzZXJUb2tl
blJhbmdlJiByYW5nZSwgQWxsb3dYUmVzb2x1dGlvblVuaXQgYWxsb3dYKQogewogICAgIGNvbnN0
IENTU1BhcnNlclRva2VuJiB0b2tlbiA9IHJhbmdlLnBlZWsoKTsKICAgICAvLyBVbmxpa2UgdGhl
IG90aGVyIHR5cGVzLCBjYWxjKCkgZG9lcyBub3Qgd29yayB3aXRoIDxyZXNvbHV0aW9uPi4KQEAg
LTQ0OCw2ICs0NDgsOSBAQAogICAgIENTU1VuaXRUeXBlIHVuaXQgPSB0b2tlbi51bml0VHlwZSgp
OwogICAgIGlmICh1bml0ID09IENTU1VuaXRUeXBlOjpDU1NfRFBQWCB8fCB1bml0ID09IENTU1Vu
aXRUeXBlOjpDU1NfRFBJIHx8IHVuaXQgPT0gQ1NTVW5pdFR5cGU6OkNTU19EUENNKQogICAgICAg
ICByZXR1cm4gQ1NTVmFsdWVQb29sOjpzaW5nbGV0b24oKS5jcmVhdGVWYWx1ZShyYW5nZS5jb25z
dW1lSW5jbHVkaW5nV2hpdGVzcGFjZSgpLm51bWVyaWNWYWx1ZSgpLCB1bml0KTsKKyAgICBpZiAo
YWxsb3dYID09IEFsbG93WFJlc29sdXRpb25Vbml0OjpBbGxvdyAmJiB0b2tlbi52YWx1ZSgpID09
ICJ4IikKKyAgICAgICAgcmV0dXJuIENTU1ZhbHVlUG9vbDo6c2luZ2xldG9uKCkuY3JlYXRlVmFs
dWUocmFuZ2UuY29uc3VtZUluY2x1ZGluZ1doaXRlc3BhY2UoKS5udW1lcmljVmFsdWUoKSwgQ1NT
VW5pdFR5cGU6OkNTU19EUFBYKTsKKwogICAgIHJldHVybiBudWxscHRyOwogfQogCkBAIC0xNDg1
LDIyICsxNDg4LDE3IEBACiAgICAgQ1NTUGFyc2VyVG9rZW5SYW5nZSBhcmdzID0gY29uc3VtZUZ1
bmN0aW9uKHJhbmdlQ29weSk7CiAgICAgUmVmUHRyPENTU0ltYWdlU2V0VmFsdWU+IGltYWdlU2V0
ID0gQ1NTSW1hZ2VTZXRWYWx1ZTo6Y3JlYXRlKCk7CiAgICAgZG8gewotICAgICAgICBSZWZQdHI8
Q1NTVmFsdWU+IGltYWdlID0gY29uc3VtZUltYWdlKGFyZ3MsIGNvbnRleHQsIChhbGxvd2VkSW1h
Z2VUeXBlIHwgQWxsb3dlZEltYWdlVHlwZTo6UmF3U3RyaW5nQXNVUkwpIC0gQWxsb3dlZEltYWdl
VHlwZTo6SW1hZ2VTZXQpOworICAgICAgICBhdXRvIGltYWdlID0gY29uc3VtZUltYWdlKGFyZ3Ms
IGNvbnRleHQsIChhbGxvd2VkSW1hZ2VUeXBlIHwgQWxsb3dlZEltYWdlVHlwZTo6UmF3U3RyaW5n
QXNVUkwpIC0gQWxsb3dlZEltYWdlVHlwZTo6SW1hZ2VTZXQpOwogICAgICAgICBpZiAoIWltYWdl
KQogICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAKICAgICAgICAgaW1hZ2VTZXQtPmFwcGVu
ZChpbWFnZS5yZWxlYXNlTm9uTnVsbCgpKTsKIAotICAgICAgICBjb25zdCBDU1NQYXJzZXJUb2tl
biYgdG9rZW4gPSBhcmdzLmNvbnN1bWVJbmNsdWRpbmdXaGl0ZXNwYWNlKCk7Ci0gICAgICAgIGlm
ICh0b2tlbi50eXBlKCkgIT0gRGltZW5zaW9uVG9rZW4pCisgICAgICAgIGF1dG8gcmVzb2x1dGlv
biA9IGNvbnN1bWVSZXNvbHV0aW9uKGFyZ3MsIEFsbG93WFJlc29sdXRpb25Vbml0OjpBbGxvdyk7
CisgICAgICAgIGlmICghcmVzb2x1dGlvbiB8fCByZXNvbHV0aW9uLT5mbG9hdFZhbHVlKCkgPD0g
MCkKICAgICAgICAgICAgIHJldHVybiBudWxscHRyOwotICAgICAgICBpZiAodG9rZW4udmFsdWUo
KSAhPSAieCIpCi0gICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICAgICAgQVNTRVJUKHRv
a2VuLnVuaXRUeXBlKCkgPT0gQ1NTVW5pdFR5cGU6OkNTU19VTktOT1dOKTsKLSAgICAgICAgZG91
YmxlIGltYWdlU2NhbGVGYWN0b3IgPSB0b2tlbi5udW1lcmljVmFsdWUoKTsKLSAgICAgICAgaWYg
KGltYWdlU2NhbGVGYWN0b3IgPD0gMCkKLSAgICAgICAgICAgIHJldHVybiBudWxscHRyOwotICAg
ICAgICBpbWFnZVNldC0+YXBwZW5kKENTU1ZhbHVlUG9vbDo6c2luZ2xldG9uKCkuY3JlYXRlVmFs
dWUoaW1hZ2VTY2FsZUZhY3RvciwgQ1NTVW5pdFR5cGU6OkNTU19OVU1CRVIpKTsKKworICAgICAg
ICBpbWFnZVNldC0+YXBwZW5kKHJlc29sdXRpb24ucmVsZWFzZU5vbk51bGwoKSk7CiAgICAgfSB3
aGlsZSAoY29uc3VtZUNvbW1hSW5jbHVkaW5nV2hpdGVzcGFjZShhcmdzKSk7CiAgICAgaWYgKCFh
cmdzLmF0RW5kKCkpCiAgICAgICAgIHJldHVybiBudWxscHRyOwpJbmRleDogU291cmNlL1dlYkNv
cmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VySGVscGVycy5oCShyZXZp
c2lvbiAyNTQ5NzApCisrKyBTb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFy
c2VySGVscGVycy5oCSh3b3JraW5nIGNvcHkpCkBAIC01Nyw2ICs1NywxMSBAQAogICAgIEZvcmJp
ZAogfTsKIAorZW51bSBjbGFzcyBBbGxvd1hSZXNvbHV0aW9uVW5pdCB7CisgICAgQWxsb3csCisg
ICAgRm9yYmlkCit9OworCiBSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IGNvbnN1bWVJbnRlZ2Vy
KENTU1BhcnNlclRva2VuUmFuZ2UmLCBkb3VibGUgbWluaW11bVZhbHVlID0gLXN0ZDo6bnVtZXJp
Y19saW1pdHM8ZG91YmxlPjo6bWF4KCkpOwogUmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiBjb25z
dW1lUG9zaXRpdmVJbnRlZ2VyKENTU1BhcnNlclRva2VuUmFuZ2UmKTsKIGJvb2wgY29uc3VtZU51
bWJlclJhdyhDU1NQYXJzZXJUb2tlblJhbmdlJiwgZG91YmxlJiByZXN1bHQpOwpAQCAtNjcsNyAr
NzIsNyBAQAogUmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiBjb25zdW1lTGVuZ3RoT3JQZXJjZW50
KENTU1BhcnNlclRva2VuUmFuZ2UmLCBDU1NQYXJzZXJNb2RlLCBWYWx1ZVJhbmdlLCBVbml0bGVz
c1F1aXJrID0gVW5pdGxlc3NRdWlyazo6Rm9yYmlkKTsKIFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1
ZT4gY29uc3VtZUFuZ2xlKENTU1BhcnNlclRva2VuUmFuZ2UmLCBDU1NQYXJzZXJNb2RlLCBVbml0
bGVzc1F1aXJrID0gVW5pdGxlc3NRdWlyazo6Rm9yYmlkKTsKIFJlZlB0cjxDU1NQcmltaXRpdmVW
YWx1ZT4gY29uc3VtZVRpbWUoQ1NTUGFyc2VyVG9rZW5SYW5nZSYsIENTU1BhcnNlck1vZGUsIFZh
bHVlUmFuZ2UsIFVuaXRsZXNzUXVpcmsgPSBVbml0bGVzc1F1aXJrOjpGb3JiaWQpOwotUmVmUHRy
PENTU1ByaW1pdGl2ZVZhbHVlPiBjb25zdW1lUmVzb2x1dGlvbihDU1NQYXJzZXJUb2tlblJhbmdl
Jik7CitSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IGNvbnN1bWVSZXNvbHV0aW9uKENTU1BhcnNl
clRva2VuUmFuZ2UmLCBBbGxvd1hSZXNvbHV0aW9uVW5pdCA9IEFsbG93WFJlc29sdXRpb25Vbml0
OjpGb3JiaWQpOwogCiBSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IGNvbnN1bWVJZGVudChDU1NQ
YXJzZXJUb2tlblJhbmdlJik7CiBSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IGNvbnN1bWVJZGVu
dFJhbmdlKENTU1BhcnNlclRva2VuUmFuZ2UmLCBDU1NWYWx1ZUlEIGxvd2VyLCBDU1NWYWx1ZUlE
IHVwcGVyKTsK
</data>
<flag name="review"
          id="404255"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>388828</attachid>
            <date>2020-01-26 22:54:39 -0800</date>
            <delta_ts>2020-01-26 22:57:25 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>patch.diff</filename>
            <type>text/plain</type>
            <size>34947</size>
            <attacher name="Noam Rosenthal">noam</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDI1NDk3MCkKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29y
a2luZyBjb3B5KQpAQCAtMSwzICsxLDI3IEBACisyMDIwLTAxLTIzICBOb2FtIFJvc2VudGhhbCAg
PG5vYW1Ad2Via2l0Lm9yZz4KKworICAgICAgICAtd2Via2l0LWltYWdlLXNldCBzaG91bGQgc3Vw
cG9ydCByZXNvbHV0aW9uIHVuaXRzIG90aGVyIHRoYW4gJ3gnCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDAxMjAKKworICAgICAgICBSZXZpZXdlZCBi
eSBEYXJpbiBBZGxlci4KKworICAgICAgICBIYWQgdG8gbW9kaWZ5IHNldmVyYWwgaW1hZ2Utc2V0
IHBhcnNpbmcgdGVzdHMgYmVjYXVzZSBvZiB0aGUgYmVoYXZpb3IgY2hhbmdlIGluCisgICAgICAg
IGNvbXB1dGVkIHN0eWxlICh4ID0+IGRwcHgpLgorCisgICAgICAgIEFsc28gYWRkZWQgYSBjb3Vw
bGUgb2YgcGFyc2luZy9yZW5kZXJpbmcgdGVzdHMgc3BlY2lmaWNhbGx5IHRvIHRlc3QgdGhlIG5l
dyBiZWhhdmlvcgorICAgICAgICBvZiBkcGkvZHBjbS9kcHB4LgorCisgICAgICAgICogZmFzdC9j
c3MvY3Vyc29yLXBhcnNpbmctaW1hZ2Utc2V0LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0
L2Nzcy9jdXJzb3ItcGFyc2luZy1pbWFnZS1zZXQuaHRtbDoKKyAgICAgICAgKiBmYXN0L2Nzcy9p
bWFnZS1zZXQtcGFyc2luZy1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9jc3MvaW1hZ2Ut
c2V0LXBhcnNpbmctaW52YWxpZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9jc3MvaW1h
Z2Utc2V0LXBhcnNpbmcuaHRtbDoKKyAgICAgICAgKiBmYXN0L2Nzcy9pbWFnZS1zZXQtc2V0dGlu
Zy1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9jc3MvaW1hZ2Utc2V0LXNldHRpbmcuaHRt
bDoKKyAgICAgICAgKiBmYXN0L2Nzcy9pbWFnZS1zZXQtdW5wcmVmaXhlZC5odG1sOgorICAgICAg
ICAqIGZhc3QvaGlkcGkvaW1hZ2Utc2V0LXVuaXRzLWV4cGVjdGVkLmh0bWw6IEFkZGVkLgorICAg
ICAgICAqIGZhc3QvaGlkcGkvaW1hZ2Utc2V0LXVuaXRzLmh0bWw6IEFkZGVkLgorCiAyMDIwLTAx
LTIzICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+CiAKICAgICAgICAgbm9tb2R1
bGUgc2NyaXB0cyBhcmUgZmV0Y2hlZCBpbiBzb21lIGNhc2VzICh3aXRoIGVtcHR5IGNhY2hlIG9y
IGluIG5ldyB0YWIpCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9jdXJzb3ItcGFyc2luZy1p
bWFnZS1zZXQtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvY3Nz
L2N1cnNvci1wYXJzaW5nLWltYWdlLXNldC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDI1NDk3MCkK
KysrIExheW91dFRlc3RzL2Zhc3QvY3NzL2N1cnNvci1wYXJzaW5nLWltYWdlLXNldC1leHBlY3Rl
ZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTYsMTAgKzYsMTAgQEAKIEJ1ZyA5OTQ5MwogCiBUZXN0
IGEgYnVuY2ggb2YgY3Vyc29yIHJ1bGVzIHdoaWNoIHNob3VsZCByb3VuZC10cmlwIGV4YWN0bHku
Ci1QQVNTIHN0eWxlLmNzc1RleHQgaXMgImN1cnNvcjogaW1hZ2Utc2V0KHVybChcImZpbGU6Ly8v
Zm9vLnBuZ1wiKSAxeCksIGF1dG87IgotUEFTUyBzdHlsZS5jc3NUZXh0IGlzICJjdXJzb3I6IGlt
YWdlLXNldCh1cmwoXCJmaWxlOi8vL2Zvby5wbmdcIikgMXgsIHVybChcImZpbGU6Ly8vZm9vMngu
cG5nXCIpIDJ4KSwgYXV0bzsiCi1QQVNTIHN0eWxlLmNzc1RleHQgaXMgImN1cnNvcjogaW1hZ2Ut
c2V0KHVybChcImZpbGU6Ly8vZm9vLnBuZ1wiKSAxeCwgdXJsKFwiZmlsZTovLy9mb28yeC5wbmdc
IikgMngpIDIgMywgYXV0bzsiCi1QQVNTIHN0eWxlLmNzc1RleHQgaXMgImN1cnNvcjogaW1hZ2Ut
c2V0KHVybChcImZpbGU6Ly8vZm9vMDMucG5nXCIpIDAuM3gsIHVybChcImZpbGU6Ly8vZm9vNXgu
cG5nXCIpIDV4KSA2IDUsIHVybChcImZpbGU6Ly8vZm9vLnBuZ1wiKSAxMiAzLCBwb2ludGVyOyIK
K1BBU1Mgc3R5bGUuY3NzVGV4dCBpcyAiY3Vyc29yOiBpbWFnZS1zZXQodXJsKFwiZmlsZTovLy9m
b28ucG5nXCIpIDFkcHB4KSwgYXV0bzsiCitQQVNTIHN0eWxlLmNzc1RleHQgaXMgImN1cnNvcjog
aW1hZ2Utc2V0KHVybChcImZpbGU6Ly8vZm9vLnBuZ1wiKSAxZHBweCwgdXJsKFwiZmlsZTovLy9m
b28yeC5wbmdcIikgMmRwcHgpLCBhdXRvOyIKK1BBU1Mgc3R5bGUuY3NzVGV4dCBpcyAiY3Vyc29y
OiBpbWFnZS1zZXQodXJsKFwiZmlsZTovLy9mb28ucG5nXCIpIDFkcHB4LCB1cmwoXCJmaWxlOi8v
L2ZvbzJ4LnBuZ1wiKSAyZHBweCkgMiAzLCBhdXRvOyIKK1BBU1Mgc3R5bGUuY3NzVGV4dCBpcyAi
Y3Vyc29yOiBpbWFnZS1zZXQodXJsKFwiZmlsZTovLy9mb28wMy5wbmdcIikgMC4zZHBweCwgdXJs
KFwiZmlsZTovLy9mb281eC5wbmdcIikgNWRwcHgpIDYgNSwgdXJsKFwiZmlsZTovLy9mb28ucG5n
XCIpIDEyIDMsIHBvaW50ZXI7IgogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCiBU
RVNUIENPTVBMRVRFCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9jdXJzb3ItcGFyc2luZy1p
bWFnZS1zZXQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9jdXJzb3It
cGFyc2luZy1pbWFnZS1zZXQuaHRtbAkocmV2aXNpb24gMjU0OTcwKQorKysgTGF5b3V0VGVzdHMv
ZmFzdC9jc3MvY3Vyc29yLXBhcnNpbmctaW1hZ2Utc2V0Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAg
LTIxLDcgKzIxLDcgQEAKIHsKICAgICB2YXIgY3NzVGV4dCA9IG1ha2VDdXJzb3JSdWxlKHJ1bGUp
OwogICAgIHN0eWxlID0gcm91bmR0cmlwQ3NzUnVsZShjc3NUZXh0KTsKLSAgICBzaG91bGRCZUVx
dWFsVG9TdHJpbmcoJ3N0eWxlLmNzc1RleHQnLCBjc3NUZXh0KTsKKyAgICBzaG91bGRCZUVxdWFs
VG9TdHJpbmcoJ3N0eWxlLmNzc1RleHQnLCBjc3NUZXh0LnJlcGxhY2UoL3goPz1bLCldKS9nLCAn
ZHBweCcpKTsKIH0KIAogZnVuY3Rpb24gcm91bmR0cmlwQ3NzUnVsZShjc3NUZXh0KQpJbmRleDog
TGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNpbmctZXhwZWN0ZWQudHh0Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLWV4cGVjdGVk
LnR4dAkocmV2aXNpb24gMjU0OTcwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0
LXBhcnNpbmctZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xMCw3ICsxMCw3IEBACiBQ
QVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0Z1bmN0aW9u
JwogUEFTUyBpbWFnZVNldFJ1bGUubGVuZ3RoIGlzIDIKIFBBU1Mgc3ViUnVsZSBpcyAnYScKLVBB
U1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxJworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzFkcHB4
JwogCiBNdWx0aXBsZSB2YWx1ZXMgZm9yIGJhY2tncm91bmQtaW1hZ2UgOiB1cmwoJyNhJykgMXgs
IHVybCgnI2InKSAyeAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUpIGlzICdDU1NW
YWx1ZUxpc3QnCkBAIC0xOCw5ICsxOCw5IEBACiBQQVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0
UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0Z1bmN0aW9uJwogUEFTUyBpbWFnZVNldFJ1bGUubGVuZ3Ro
IGlzIDQKIFBBU1Mgc3ViUnVsZSBpcyAnYScKLVBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxJwor
UEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzFkcHB4JwogUEFTUyBzdWJSdWxlIGlzICdiJwotUEFT
UyBzdWJSdWxlLmNzc1RleHQgaXMgJzInCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMmRwcHgn
CiAKIFNpbmdsZSB2YWx1ZSBmb3IgYmFja2dyb3VuZC1pbWFnZSB3aXRob3V0IHVybCgpIGZ1bmN0
aW9uIDogJyNhJyAxeAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUpIGlzICdDU1NW
YWx1ZUxpc3QnCkBAIC0yOCw3ICsyOCw3IEBACiBQQVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0
UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0Z1bmN0aW9uJwogUEFTUyBpbWFnZVNldFJ1bGUubGVuZ3Ro
IGlzIDIKIFBBU1Mgc3ViUnVsZSBpcyAnYScKLVBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxJwor
UEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzFkcHB4JwogCiBNdWx0aXBsZSB2YWx1ZXMgZm9yIGJh
Y2tncm91bmQtaW1hZ2Ugd2l0aG91dCB1cmwoKSBmdW5jdGlvbiA6ICcjYScgMXgsICcjYicgMngK
IFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwpAQCAt
MzYsOSArMzYsOSBAQAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0
b3IpIGlzICdGdW5jdGlvbicKIFBBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyA0CiBQQVNTIHN1
YlJ1bGUgaXMgJ2EnCi1QQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMScKK1BBU1Mgc3ViUnVsZS5j
c3NUZXh0IGlzICcxZHBweCcKIFBBU1Mgc3ViUnVsZSBpcyAnYicKLVBBU1Mgc3ViUnVsZS5jc3NU
ZXh0IGlzICcyJworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzJkcHB4JwogCiBNaXggdmFsdWVz
IHdpdGggYW5kIHdpdGhvdXQgdXJsKCkgZnVuY3Rpb24gOiAnI2EnIDF4LCB1cmwoJyNiJykgMngK
IFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwpAQCAt
NDYsOSArNDYsOSBAQAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0
b3IpIGlzICdGdW5jdGlvbicKIFBBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyA0CiBQQVNTIHN1
YlJ1bGUgaXMgJ2EnCi1QQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMScKK1BBU1Mgc3ViUnVsZS5j
c3NUZXh0IGlzICcxZHBweCcKIFBBU1Mgc3ViUnVsZSBpcyAnYicKLVBBU1Mgc3ViUnVsZS5jc3NU
ZXh0IGlzICcyJworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzJkcHB4JwogCiBNdWx0aXBsZSB2
YWx1ZXMgZm9yIGJhY2tncm91bmQtaW1hZ2UsIG91dCBvZiBvcmRlciA6IHVybCgnI2MnKSAzeCwg
dXJsKCcjYicpIDJ4LCB1cmwoJyNhJykgMXgKIFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRS
dWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwpAQCAtNTYsMTEgKzU2LDExIEBACiBQQVNTIGpzV3JhcHBl
ckNsYXNzKGltYWdlU2V0UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0Z1bmN0aW9uJwogUEFTUyBpbWFn
ZVNldFJ1bGUubGVuZ3RoIGlzIDYKIFBBU1Mgc3ViUnVsZSBpcyAnYycKLVBBU1Mgc3ViUnVsZS5j
c3NUZXh0IGlzICczJworRkFJTCBzdWJSdWxlLmNzc1RleHQgc2hvdWxkIGJlIDMuIFdhcyAzZHBw
eC4KIFBBU1Mgc3ViUnVsZSBpcyAnYicKLVBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcyJworUEFT
UyBzdWJSdWxlLmNzc1RleHQgaXMgJzJkcHB4JwogUEFTUyBzdWJSdWxlIGlzICdhJwotUEFTUyBz
dWJSdWxlLmNzc1RleHQgaXMgJzEnCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMWRwcHgnCiAK
IFNpbmdsZSB2YWx1ZSBmb3IgY29udGVudCA6IHVybCgnI2EnKSAxeAogUEFTUyBqc1dyYXBwZXJD
bGFzcyhpbWFnZVNldFJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCkBAIC02OCw3ICs2OCw3IEBACiBQ
QVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0Z1bmN0aW9u
JwogUEFTUyBpbWFnZVNldFJ1bGUubGVuZ3RoIGlzIDIKIFBBU1Mgc3ViUnVsZSBpcyAnYScKLVBB
U1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxJworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzFkcHB4
JwogCiBNdWx0aXBsZSB2YWx1ZXMgZm9yIGNvbnRlbnQgOiB1cmwoJyNhJykgMXgsIHVybCgnI2In
KSAyeAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUpIGlzICdDU1NWYWx1ZUxpc3Qn
CkBAIC03Niw5ICs3Niw5IEBACiBQQVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZS5jb25z
dHJ1Y3RvcikgaXMgJ0Z1bmN0aW9uJwogUEFTUyBpbWFnZVNldFJ1bGUubGVuZ3RoIGlzIDQKIFBB
U1Mgc3ViUnVsZSBpcyAnYScKLVBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxJworUEFTUyBzdWJS
dWxlLmNzc1RleHQgaXMgJzFkcHB4JwogUEFTUyBzdWJSdWxlIGlzICdiJwotUEFTUyBzdWJSdWxl
LmNzc1RleHQgaXMgJzInCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMmRwcHgnCiAKIFNpbmds
ZSB2YWx1ZSBmb3IgYm9yZGVyLWltYWdlIDogdXJsKCcjYScpIDF4CiBQQVNTIGpzV3JhcHBlckNs
YXNzKGltYWdlU2V0UnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKQEAgLTg2LDcgKzg2LDcgQEAKIFBB
U1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlLmNvbnN0cnVjdG9yKSBpcyAnRnVuY3Rpb24n
CiBQQVNTIGltYWdlU2V0UnVsZS5sZW5ndGggaXMgMgogUEFTUyBzdWJSdWxlIGlzICdhJwotUEFT
UyBzdWJSdWxlLmNzc1RleHQgaXMgJzEnCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMWRwcHgn
CiAKIE11bHRpcGxlIHZhbHVlcyBmb3IgYm9yZGVyLWltYWdlIDogdXJsKCcjYScpIDF4LCB1cmwo
JyNiJykgMngKIFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVM
aXN0JwpAQCAtOTQsOSArOTQsOSBAQAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUu
Y29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicKIFBBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyA0
CiBQQVNTIHN1YlJ1bGUgaXMgJ2EnCi1QQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMScKK1BBU1Mg
c3ViUnVsZS5jc3NUZXh0IGlzICcxZHBweCcKIFBBU1Mgc3ViUnVsZSBpcyAnYicKLVBBU1Mgc3Vi
UnVsZS5jc3NUZXh0IGlzICcyJworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzJkcHB4JwogCiBT
aW5nbGUgdmFsdWUgZm9yIC13ZWJraXQtbWFzay1ib3gtaW1hZ2UgOiB1cmwoJyNhJykgMXgKIFBB
U1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwpAQCAtMTA0
LDcgKzEwNCw3IEBACiBQQVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZS5jb25zdHJ1Y3Rv
cikgaXMgJ0Z1bmN0aW9uJwogUEFTUyBpbWFnZVNldFJ1bGUubGVuZ3RoIGlzIDIKIFBBU1Mgc3Vi
UnVsZSBpcyAnYScKLVBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxJworUEFTUyBzdWJSdWxlLmNz
c1RleHQgaXMgJzFkcHB4JwogCiBNdWx0aXBsZSB2YWx1ZXMgZm9yIC13ZWJraXQtbWFzay1ib3gt
aW1hZ2UgOiB1cmwoJyNhJykgMXgsIHVybCgnI2InKSAyeAogUEFTUyBqc1dyYXBwZXJDbGFzcyhp
bWFnZVNldFJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCkBAIC0xMTIsOSArMTEyLDQ1IEBACiBQQVNT
IGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0Z1bmN0aW9uJwog
UEFTUyBpbWFnZVNldFJ1bGUubGVuZ3RoIGlzIDQKIFBBU1Mgc3ViUnVsZSBpcyAnYScKLVBBU1Mg
c3ViUnVsZS5jc3NUZXh0IGlzICcxJworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzFkcHB4Jwog
UEFTUyBzdWJSdWxlIGlzICdiJwotUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzInCitQQVNTIHN1
YlJ1bGUuY3NzVGV4dCBpcyAnMmRwcHgnCisKK1NpbmdsZSB2YWx1ZSB3aXRoIGRwcHggOiB1cmwo
JyNhJykgMWRwcHgKK1BBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFs
dWVMaXN0JworUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuX19wcm90b19fKSBpcyAn
Q1NTVmFsdWVMaXN0UHJvdG90eXBlJworUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUu
Y29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicKK1BBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyAy
CitQQVNTIHN1YlJ1bGUgaXMgJ2EnCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMWRwcHgnCisK
K1NpbmdsZSB2YWx1ZSB3aXRoIGRwaSA6IHVybCgnI2EnKSAxOTJkcGkKK1BBU1MganNXcmFwcGVy
Q2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JworUEFTUyBqc1dyYXBwZXJDbGFz
cyhpbWFnZVNldFJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJworUEFT
UyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicK
K1BBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyAyCitQQVNTIHN1YlJ1bGUgaXMgJ2EnCitQQVNT
IHN1YlJ1bGUuY3NzVGV4dCBpcyAnMTkyZHBpJworCitTaW5nbGUgdmFsdWUgd2l0aCBkcGNtIDog
dXJsKCcjYScpIDEwMmRwY20KK1BBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAn
Q1NTVmFsdWVMaXN0JworUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuX19wcm90b19f
KSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJworUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNl
dFJ1bGUuY29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicKK1BBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0
aCBpcyAyCitQQVNTIHN1YlJ1bGUgaXMgJ2EnCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMTAy
ZHBjbScKKworTXVsdGlwbGUgdmFsdWVzIHdpdGggZHBpLCBkcHB4IGFuZCB4IDogdXJsKCcjYScp
IDF4LCB1cmwoJyNiJykgMmRwcHgsIHVybCgnI2MnKSAyNTBkcGkKK1BBU1MganNXcmFwcGVyQ2xh
c3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JworUEFTUyBqc1dyYXBwZXJDbGFzcyhp
bWFnZVNldFJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJworUEFTUyBq
c1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicKK1BB
U1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyA2CitQQVNTIHN1YlJ1bGUgaXMgJ2EnCitQQVNTIHN1
YlJ1bGUuY3NzVGV4dCBpcyAnMWRwcHgnCitQQVNTIHN1YlJ1bGUgaXMgJ2InCitQQVNTIHN1YlJ1
bGUuY3NzVGV4dCBpcyAnMmRwcHgnCitQQVNTIHN1YlJ1bGUgaXMgJ2MnCitQQVNTIHN1YlJ1bGUu
Y3NzVGV4dCBpcyAnMjUwZHBpJwogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCiBU
RVNUIENPTVBMRVRFCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFnZS1zZXQtcGFyc2lu
Zy1nZW5lcmF0ZWQtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3Qv
Y3NzL2ltYWdlLXNldC1wYXJzaW5nLWdlbmVyYXRlZC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDI1
NDk3MCkKKysrIExheW91dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLWdlbmVyYXRl
ZC1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEwLDcgKzEwLDcgQEAKIFBBU1MganNX
cmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlLmNvbnN0cnVjdG9yKSBpcyAnRnVuY3Rpb24nCiBQQVNT
IGltYWdlU2V0UnVsZS5sZW5ndGggaXMgMgogUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJ2xpbmVh
ci1ncmFkaWVudChncmVlbiwgd2hpdGUpJwotUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzEnCitQ
QVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMWRwcHgnCiAKIFNpbmdsZSB2YWx1ZSBmb3IgY29udGVu
dCB3aXRoIGdyYWRpZW50IDogbGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSkgMXgKIFBBU1Mg
anNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwpAQCAtMTgsNyAr
MTgsNyBAQAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3IpIGlz
ICdGdW5jdGlvbicKIFBBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyAyCiBQQVNTIHN1YlJ1bGUu
Y3NzVGV4dCBpcyAnbGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSknCi1QQVNTIHN1YlJ1bGUu
Y3NzVGV4dCBpcyAnMScKK1BBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxZHBweCcKIAogU2luZ2xl
IHZhbHVlIGZvciBiYWNrZ3JvdW5kLWltYWdlIHdpdGggZ3JhZGllbnRzIDogbGluZWFyLWdyYWRp
ZW50KGdyZWVuLCB3aGl0ZSkgMXgsIHJhZGlhbC1ncmFkaWVudChibHVlLCB3aGl0ZSkgMngKIFBB
U1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwpAQCAtMjYs
OSArMjYsOSBAQAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3Ip
IGlzICdGdW5jdGlvbicKIFBBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyA0CiBQQVNTIHN1YlJ1
bGUuY3NzVGV4dCBpcyAnbGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSknCi1QQVNTIHN1YlJ1
bGUuY3NzVGV4dCBpcyAnMScKK1BBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxZHBweCcKIFBBU1Mg
c3ViUnVsZS5jc3NUZXh0IGlzICdyYWRpYWwtZ3JhZGllbnQoYmx1ZSwgd2hpdGUpJwotUEFTUyBz
dWJSdWxlLmNzc1RleHQgaXMgJzInCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMmRwcHgnCiAK
IENvbWJpbmVkIGdyYWRpZW50IGFuZCBVUkwgOiB1cmwoJyNhJykgMXgsIGxpbmVhci1ncmFkaWVu
dChncmVlbiwgd2hpdGUpIDJ4CiBQQVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZSkgaXMg
J0NTU1ZhbHVlTGlzdCcKQEAgLTM2LDkgKzM2LDkgQEAKIFBBU1MganNXcmFwcGVyQ2xhc3MoaW1h
Z2VTZXRSdWxlLmNvbnN0cnVjdG9yKSBpcyAnRnVuY3Rpb24nCiBQQVNTIGltYWdlU2V0UnVsZS5s
ZW5ndGggaXMgNAogUEFTUyBzdWJSdWxlIGlzICdhJwotUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMg
JzEnCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMWRwcHgnCiBQQVNTIHN1YlJ1bGUuY3NzVGV4
dCBpcyAnbGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSknCi1QQVNTIHN1YlJ1bGUuY3NzVGV4
dCBpcyAnMicKK1BBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcyZHBweCcKIAogQ29tYmluZWQgZ3Jh
ZGllbnQgYW5kIFVSTCBpbiBjb250ZW50IDogdXJsKCcjYScpIDF4LCBsaW5lYXItZ3JhZGllbnQo
Z3JlZW4sIHdoaXRlKSAyeAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUpIGlzICdD
U1NWYWx1ZUxpc3QnCkBAIC00Niw5ICs0Niw5IEBACiBQQVNTIGpzV3JhcHBlckNsYXNzKGltYWdl
U2V0UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0Z1bmN0aW9uJwogUEFTUyBpbWFnZVNldFJ1bGUubGVu
Z3RoIGlzIDQKIFBBU1Mgc3ViUnVsZSBpcyAnYScKLVBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcx
JworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzFkcHB4JwogUEFTUyBzdWJSdWxlLmNzc1RleHQg
aXMgJ2xpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpJwotUEFTUyBzdWJSdWxlLmNzc1RleHQg
aXMgJzInCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMmRwcHgnCiAKIENvbWJpbmVkIGdyYWRp
ZW50IGFuZCBjcm9zcy1mYWRlIDogLXdlYmtpdC1jcm9zcy1mYWRlKHVybCgnI2EnKSwgdXJsKCcj
YicpLCA3MCUpIDF4LCBsaW5lYXItZ3JhZGllbnQoZ3JlZW4sIHdoaXRlKSAyeAogUEFTUyBqc1dy
YXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCkBAIC01Niw5ICs1Niwx
NyBAQAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3IpIGlzICdG
dW5jdGlvbicKIFBBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyA0CiBQQVNTIHN1YlJ1bGUgaXMg
J2EnCi1QQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMScKK1BBU1Mgc3ViUnVsZS5jc3NUZXh0IGlz
ICcxZHBweCcKIFBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICdsaW5lYXItZ3JhZGllbnQoZ3JlZW4s
IHdoaXRlKScKLVBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcyJworUEFTUyBzdWJSdWxlLmNzc1Rl
eHQgaXMgJzJkcHB4JworCitTaW5nbGUgdmFsdWUgZm9yIGJhY2tncm91bmQtaW1hZ2Ugd2l0aCBn
cmFkaWVudCBhbmQgZHBpIDogbGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSkgMTkyZHBpCitQ
QVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKK1BBU1Mg
anNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFBy
b3RvdHlwZScKK1BBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlLmNvbnN0cnVjdG9yKSBp
cyAnRnVuY3Rpb24nCitQQVNTIGltYWdlU2V0UnVsZS5sZW5ndGggaXMgMgorUEFTUyBzdWJSdWxl
LmNzc1RleHQgaXMgJ2xpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpJworUEFTUyBzdWJSdWxl
LmNzc1RleHQgaXMgJzE5MmRwaScKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIAog
VEVTVCBDT01QTEVURQpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNp
bmctZ2VuZXJhdGVkLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1h
Z2Utc2V0LXBhcnNpbmctZ2VuZXJhdGVkLmh0bWwJKHJldmlzaW9uIDI1NDk3MCkKKysrIExheW91
dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLWdlbmVyYXRlZC5odG1sCSh3b3JraW5n
IGNvcHkpCkBAIC03NCwzMiArNzQsMzggQEAKIHRlc3RJbWFnZVNldFJ1bGUoIlNpbmdsZSB2YWx1
ZSBmb3IgYmFja2dyb3VuZC1pbWFnZSB3aXRoIGdyYWRpZW50IiwKICAgICAgICAgICAgICAgICAi
YmFja2dyb3VuZC1pbWFnZSIsCiAgICAgICAgICAgICAgICAgImxpbmVhci1ncmFkaWVudChncmVl
biwgd2hpdGUpIDF4IiwgMiwKLSAgICAgICAgICAgICAgICBbImxpbmVhci1ncmFkaWVudChncmVl
biwgd2hpdGUpIiwgIjEiXSk7CisgICAgICAgICAgICAgICAgWyJsaW5lYXItZ3JhZGllbnQoZ3Jl
ZW4sIHdoaXRlKSIsICIxZHBweCJdKTsKIHRlc3RJbWFnZVNldFJ1bGUoIlNpbmdsZSB2YWx1ZSBm
b3IgY29udGVudCB3aXRoIGdyYWRpZW50IiwKICAgICAgICAgICAgICAgICAiYmFja2dyb3VuZC1p
bWFnZSIsCiAgICAgICAgICAgICAgICAgImxpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpIDF4
IiwgMiwKLSAgICAgICAgICAgICAgICBbImxpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpIiwg
IjEiXSk7CisgICAgICAgICAgICAgICAgWyJsaW5lYXItZ3JhZGllbnQoZ3JlZW4sIHdoaXRlKSIs
ICIxZHBweCJdKTsKIAogdGVzdEltYWdlU2V0UnVsZSgiU2luZ2xlIHZhbHVlIGZvciBiYWNrZ3Jv
dW5kLWltYWdlIHdpdGggZ3JhZGllbnRzIiwKICAgICAgICAgICAgICAgICAiYmFja2dyb3VuZC1p
bWFnZSIsCiAgICAgICAgICAgICAgICAgImxpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpIDF4
LCByYWRpYWwtZ3JhZGllbnQoYmx1ZSwgd2hpdGUpIDJ4IiwgNCwKLSAgICAgICAgICAgICAgICBb
ImxpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpIiwgIjEiLCAicmFkaWFsLWdyYWRpZW50KGJs
dWUsIHdoaXRlKSIsICIyIl0pOworICAgICAgICAgICAgICAgIFsibGluZWFyLWdyYWRpZW50KGdy
ZWVuLCB3aGl0ZSkiLCAiMWRwcHgiLCAicmFkaWFsLWdyYWRpZW50KGJsdWUsIHdoaXRlKSIsICIy
ZHBweCJdKTsKIAogdGVzdEltYWdlU2V0UnVsZSgiQ29tYmluZWQgZ3JhZGllbnQgYW5kIFVSTCIs
CiAgICAgICAgICAgICAgICAgImJhY2tncm91bmQtaW1hZ2UiLAogICAgICAgICAgICAgICAgICJ1
cmwoJyNhJykgMXgsIGxpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpIDJ4IiwgNCwKLSAgICAg
ICAgICAgICAgICBbImEiLCAiMSIsICJsaW5lYXItZ3JhZGllbnQoZ3JlZW4sIHdoaXRlKSIsICIy
Il0pOworICAgICAgICAgICAgICAgIFsiYSIsICIxZHBweCIsICJsaW5lYXItZ3JhZGllbnQoZ3Jl
ZW4sIHdoaXRlKSIsICIyZHBweCJdKTsKIAogdGVzdEltYWdlU2V0UnVsZSgiQ29tYmluZWQgZ3Jh
ZGllbnQgYW5kIFVSTCBpbiBjb250ZW50IiwKICAgICAgICAgICAgICAgICAiY29udGVudCIsCiAg
ICAgICAgICAgICAgICAgInVybCgnI2EnKSAxeCwgbGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0
ZSkgMngiLCA0LAotICAgICAgICAgICAgICAgIFsiYSIsICIxIiwgImxpbmVhci1ncmFkaWVudChn
cmVlbiwgd2hpdGUpIiwgIjIiXSk7CisgICAgICAgICAgICAgICAgWyJhIiwgIjFkcHB4IiwgImxp
bmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpIiwgIjJkcHB4Il0pOwogCiB0ZXN0SW1hZ2VTZXRS
dWxlKCJDb21iaW5lZCBncmFkaWVudCBhbmQgY3Jvc3MtZmFkZSIsCiAgICAgICAgICAgICAgICAg
ImJhY2tncm91bmQtaW1hZ2UiLAogICAgICAgICAgICAgICAgICItd2Via2l0LWNyb3NzLWZhZGUo
dXJsKCcjYScpLCB1cmwoJyNiJyksIDcwJSkgMXgsIGxpbmVhci1ncmFkaWVudChncmVlbiwgd2hp
dGUpIDJ4IiwgNCwKLSAgICAgICAgICAgICAgICBbImEiLCAiMSIsICJsaW5lYXItZ3JhZGllbnQo
Z3JlZW4sIHdoaXRlKSIsICIyIl0pOworICAgICAgICAgICAgICAgIFsiYSIsICIxZHBweCIsICJs
aW5lYXItZ3JhZGllbnQoZ3JlZW4sIHdoaXRlKSIsICIyZHBweCJdKTsKIAordGVzdEltYWdlU2V0
UnVsZSgiU2luZ2xlIHZhbHVlIGZvciBiYWNrZ3JvdW5kLWltYWdlIHdpdGggZ3JhZGllbnQgYW5k
IGRwaSIsCisgICAgICAgICAgICAgICAgImJhY2tncm91bmQtaW1hZ2UiLAorICAgICAgICAgICAg
ICAgICJsaW5lYXItZ3JhZGllbnQoZ3JlZW4sIHdoaXRlKSAxOTJkcGkiLCAyLAorICAgICAgICAg
ICAgICAgIFsibGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSkiLCAiMTkyZHBpIl0pOworCisK
IHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CiA8L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSIuLi8u
Li9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KSW5kZXg6IExheW91dFRlc3Rz
L2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNpbmcuaHRtbAkocmV2aXNpb24gMjU0OTcwKQorKysg
TGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNpbmcuaHRtbAkod29ya2luZyBjb3B5
KQpAQCAtNzQsNjMgKzc0LDgzIEBACiB0ZXN0SW1hZ2VTZXRSdWxlKCJTaW5nbGUgdmFsdWUgZm9y
IGJhY2tncm91bmQtaW1hZ2UiLAogICAgICAgICAgICAgICAgICJiYWNrZ3JvdW5kLWltYWdlIiwK
ICAgICAgICAgICAgICAgICAidXJsKCcjYScpIDF4IiwgMiwKLSAgICAgICAgICAgICAgICBbImEi
LCAiMSJdKTsKKyAgICAgICAgICAgICAgICBbImEiLCAiMWRwcHgiXSk7CiAKIHRlc3RJbWFnZVNl
dFJ1bGUoIk11bHRpcGxlIHZhbHVlcyBmb3IgYmFja2dyb3VuZC1pbWFnZSIsCiAgICAgICAgICAg
ICAgICAgImJhY2tncm91bmQtaW1hZ2UiLAogICAgICAgICAgICAgICAgICJ1cmwoJyNhJykgMXgs
IHVybCgnI2InKSAyeCIsIDQsCi0gICAgICAgICAgICAgICAgWyJhIiwgIjEiLCAiYiIsICIyIl0p
OworICAgICAgICAgICAgICAgIFsiYSIsICIxZHBweCIsICJiIiwgIjJkcHB4Il0pOwogCiB0ZXN0
SW1hZ2VTZXRSdWxlKCJTaW5nbGUgdmFsdWUgZm9yIGJhY2tncm91bmQtaW1hZ2Ugd2l0aG91dCB1
cmwoKSBmdW5jdGlvbiIsCiAgICAgICAgICAgICAgICAgImJhY2tncm91bmQtaW1hZ2UiLAogICAg
ICAgICAgICAgICAgICInI2EnIDF4IiwgMiwKLSAgICAgICAgICAgICAgICBbImEiLCAiMSJdKTsK
KyAgICAgICAgICAgICAgICBbImEiLCAiMWRwcHgiXSk7CiAKIHRlc3RJbWFnZVNldFJ1bGUoIk11
bHRpcGxlIHZhbHVlcyBmb3IgYmFja2dyb3VuZC1pbWFnZSB3aXRob3V0IHVybCgpIGZ1bmN0aW9u
IiwKICAgICAgICAgICAgICAgICAiYmFja2dyb3VuZC1pbWFnZSIsCiAgICAgICAgICAgICAgICAg
IicjYScgMXgsICcjYicgMngiLCA0LAotICAgICAgICAgICAgICAgIFsiYSIsICIxIiwgImIiLCAi
MiJdKTsKKyAgICAgICAgICAgICAgICBbImEiLCAiMWRwcHgiLCAiYiIsICIyZHBweCJdKTsKIAog
dGVzdEltYWdlU2V0UnVsZSgiTWl4IHZhbHVlcyB3aXRoIGFuZCB3aXRob3V0IHVybCgpIGZ1bmN0
aW9uIiwKICAgICAgICAgICAgICAgICAiYmFja2dyb3VuZC1pbWFnZSIsCiAgICAgICAgICAgICAg
ICAgIicjYScgMXgsIHVybCgnI2InKSAyeCIsIDQsCi0gICAgICAgICAgICAgICAgWyJhIiwgIjEi
LCAiYiIsICIyIl0pOworICAgICAgICAgICAgICAgIFsiYSIsICIxZHBweCIsICJiIiwgIjJkcHB4
Il0pOwogCiB0ZXN0SW1hZ2VTZXRSdWxlKCJNdWx0aXBsZSB2YWx1ZXMgZm9yIGJhY2tncm91bmQt
aW1hZ2UsIG91dCBvZiBvcmRlciIsCiAgICAgICAgICAgICAgICAgImJhY2tncm91bmQtaW1hZ2Ui
LAogICAgICAgICAgICAgICAgICJ1cmwoJyNjJykgM3gsIHVybCgnI2InKSAyeCwgdXJsKCcjYScp
IDF4IiwgNiwKLSAgICAgICAgICAgICAgICBbImMiLCAiMyIsICJiIiwgIjIiLCAiYSIsICIxIl0p
OworICAgICAgICAgICAgICAgIFsiYyIsICIzIiwgImIiLCAiMmRwcHgiLCAiYSIsICIxZHBweCJd
KTsKIAogdGVzdEltYWdlU2V0UnVsZSgiU2luZ2xlIHZhbHVlIGZvciBjb250ZW50IiwKICAgICAg
ICAgICAgICAgICAiY29udGVudCIsCiAgICAgICAgICAgICAgICAgInVybCgnI2EnKSAxeCIsIDIs
Ci0gICAgICAgICAgICAgICAgWyJhIiwgIjEiXSk7CisgICAgICAgICAgICAgICAgWyJhIiwgIjFk
cHB4Il0pOwogCiB0ZXN0SW1hZ2VTZXRSdWxlKCJNdWx0aXBsZSB2YWx1ZXMgZm9yIGNvbnRlbnQi
LAogICAgICAgICAgICAgICAgICJjb250ZW50IiwKICAgICAgICAgICAgICAgICAidXJsKCcjYScp
IDF4LCB1cmwoJyNiJykgMngiLCA0LAotICAgICAgICAgICAgICAgIFsiYSIsICIxIiwgImIiLCAi
MiJdKTsKKyAgICAgICAgICAgICAgICBbImEiLCAiMWRwcHgiLCAiYiIsICIyZHBweCJdKTsKIAog
dGVzdEltYWdlU2V0UnVsZSgiU2luZ2xlIHZhbHVlIGZvciBib3JkZXItaW1hZ2UiLAogICAgICAg
ICAgICAgICAgICItd2Via2l0LWJvcmRlci1pbWFnZSIsCiAgICAgICAgICAgICAgICAgInVybCgn
I2EnKSAxeCIsIDIsCi0gICAgICAgICAgICAgICAgWyJhIiwgIjEiXSk7CisgICAgICAgICAgICAg
ICAgWyJhIiwgIjFkcHB4Il0pOwogCiB0ZXN0SW1hZ2VTZXRSdWxlKCJNdWx0aXBsZSB2YWx1ZXMg
Zm9yIGJvcmRlci1pbWFnZSIsCiAgICAgICAgICAgICAgICAgIi13ZWJraXQtYm9yZGVyLWltYWdl
IiwKICAgICAgICAgICAgICAgICAidXJsKCcjYScpIDF4LCB1cmwoJyNiJykgMngiLCA0LAotICAg
ICAgICAgICAgICAgIFsiYSIsICIxIiwgImIiLCAiMiJdKTsKKyAgICAgICAgICAgICAgICBbImEi
LCAiMWRwcHgiLCAiYiIsICIyZHBweCJdKTsKIAogdGVzdEltYWdlU2V0UnVsZSgiU2luZ2xlIHZh
bHVlIGZvciAtd2Via2l0LW1hc2stYm94LWltYWdlIiwKICAgICAgICAgICAgICAgICAiLXdlYmtp
dC1tYXNrLWJveC1pbWFnZSIsCiAgICAgICAgICAgICAgICAgInVybCgnI2EnKSAxeCIsIDIsCi0g
ICAgICAgICAgICAgICAgWyJhIiwgIjEiXSk7CisgICAgICAgICAgICAgICAgWyJhIiwgIjFkcHB4
Il0pOwogCiB0ZXN0SW1hZ2VTZXRSdWxlKCJNdWx0aXBsZSB2YWx1ZXMgZm9yIC13ZWJraXQtbWFz
ay1ib3gtaW1hZ2UiLAogICAgICAgICAgICAgICAgICItd2Via2l0LW1hc2stYm94LWltYWdlIiwK
ICAgICAgICAgICAgICAgICAidXJsKCcjYScpIDF4LCB1cmwoJyNiJykgMngiLCA0LAotICAgICAg
ICAgICAgICAgIFsiYSIsICIxIiwgImIiLCAiMiJdKTsKKyAgICAgICAgICAgICAgICBbImEiLCAi
MWRwcHgiLCAiYiIsICIyZHBweCJdKTsKIAordGVzdEltYWdlU2V0UnVsZSgiU2luZ2xlIHZhbHVl
IHdpdGggZHBweCIsCisgICAgICAgICAgICAgICAgImJhY2tncm91bmQtaW1hZ2UiLAorICAgICAg
ICAgICAgICAgICJ1cmwoJyNhJykgMWRwcHgiLCAyLAorICAgICAgICAgICAgICAgIFsiYSIsICIx
ZHBweCJdKTsKKwordGVzdEltYWdlU2V0UnVsZSgiU2luZ2xlIHZhbHVlIHdpdGggZHBpIiwKKyAg
ICAgICAgICAgICAgICAiYmFja2dyb3VuZC1pbWFnZSIsCisgICAgICAgICAgICAgICAgInVybCgn
I2EnKSAxOTJkcGkiLCAyLAorICAgICAgICAgICAgICAgIFsiYSIsICIxOTJkcGkiXSk7CisKK3Rl
c3RJbWFnZVNldFJ1bGUoIlNpbmdsZSB2YWx1ZSB3aXRoIGRwY20iLAorICAgICAgICAgICAgICAg
ICJiYWNrZ3JvdW5kLWltYWdlIiwKKyAgICAgICAgICAgICAgICAidXJsKCcjYScpIDEwMmRwY20i
LCAyLAorICAgICAgICAgICAgICAgIFsiYSIsICIxMDJkcGNtIl0pOworCit0ZXN0SW1hZ2VTZXRS
dWxlKCJNdWx0aXBsZSB2YWx1ZXMgd2l0aCBkcGksIGRwcHggYW5kIHgiLAorICAgICAgICAgICAg
ICAgICJiYWNrZ3JvdW5kLWltYWdlIiwKKyAgICAgICAgICAgICAgICAidXJsKCcjYScpIDF4LCB1
cmwoJyNiJykgMmRwcHgsIHVybCgnI2MnKSAyNTBkcGkiLCA2LAorICAgICAgICAgICAgICAgIFsi
YSIsICIxZHBweCIsICJiIiwgIjJkcHB4IiwgImMiLCAiMjUwZHBpIl0pOworCiBzdWNjZXNzZnVs
bHlQYXJzZWQgPSB0cnVlOwogPC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2Vz
L2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9p
bWFnZS1zZXQtc2V0dGluZy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
ZmFzdC9jc3MvaW1hZ2Utc2V0LXNldHRpbmctZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAyNTQ5NzAp
CisrKyBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFnZS1zZXQtc2V0dGluZy1leHBlY3RlZC50eHQJ
KHdvcmtpbmcgY29weSkKQEAgLTUsMTkgKzUsMTkgQEAKIAogCiBTaW5nbGUgdmFsdWUgZm9yIGJh
Y2tncm91bmQtaW1hZ2UgOiB1cmwoImh0dHA6Ly93d3cud2Via2l0Lm9yZy9hIikgMXgKLVBBU1Mg
c3R5bGUuYmFja2dyb3VuZEltYWdlIGlzICJpbWFnZS1zZXQodXJsKFwiaHR0cDovL3d3dy53ZWJr
aXQub3JnL2FcIikgMXgpIgorUEFTUyBzdHlsZS5iYWNrZ3JvdW5kSW1hZ2UgaXMgImltYWdlLXNl
dCh1cmwoXCJodHRwOi8vd3d3LndlYmtpdC5vcmcvYVwiKSAxZHBweCkiCiAKIE11bHRpcGxlIHZh
bHVlcyBmb3IgYmFja2dyb3VuZC1pbWFnZSA6IHVybCgiaHR0cDovL3d3dy53ZWJraXQub3JnL2Ei
KSAxeCwgdXJsKCJodHRwOi8vd3d3LndlYmtpdC5vcmcvYiIpIDJ4Ci1QQVNTIHN0eWxlLmJhY2tn
cm91bmRJbWFnZSBpcyAiaW1hZ2Utc2V0KHVybChcImh0dHA6Ly93d3cud2Via2l0Lm9yZy9hXCIp
IDF4LCB1cmwoXCJodHRwOi8vd3d3LndlYmtpdC5vcmcvYlwiKSAyeCkiCitQQVNTIHN0eWxlLmJh
Y2tncm91bmRJbWFnZSBpcyAiaW1hZ2Utc2V0KHVybChcImh0dHA6Ly93d3cud2Via2l0Lm9yZy9h
XCIpIDFkcHB4LCB1cmwoXCJodHRwOi8vd3d3LndlYmtpdC5vcmcvYlwiKSAyZHBweCkiCiAKIE11
bHRpcGxlIHZhbHVlcyBmb3IgYmFja2dyb3VuZC1pbWFnZSwgb3V0IG9mIG9yZGVyIDogdXJsKCJo
dHRwOi8vd3d3LndlYmtpdC5vcmcvYyIpIDN4LCB1cmwoImh0dHA6Ly93d3cud2Via2l0Lm9yZy9i
IikgMngsIHVybCgiaHR0cDovL3d3dy53ZWJraXQub3JnL2EiKSAxeAotUEFTUyBzdHlsZS5iYWNr
Z3JvdW5kSW1hZ2UgaXMgImltYWdlLXNldCh1cmwoXCJodHRwOi8vd3d3LndlYmtpdC5vcmcvY1wi
KSAzeCwgdXJsKFwiaHR0cDovL3d3dy53ZWJraXQub3JnL2JcIikgMngsIHVybChcImh0dHA6Ly93
d3cud2Via2l0Lm9yZy9hXCIpIDF4KSIKK1BBU1Mgc3R5bGUuYmFja2dyb3VuZEltYWdlIGlzICJp
bWFnZS1zZXQodXJsKFwiaHR0cDovL3d3dy53ZWJraXQub3JnL2NcIikgM2RwcHgsIHVybChcImh0
dHA6Ly93d3cud2Via2l0Lm9yZy9iXCIpIDJkcHB4LCB1cmwoXCJodHRwOi8vd3d3LndlYmtpdC5v
cmcvYVwiKSAxZHBweCkiCiAKIER1cGxpY2F0ZSB2YWx1ZXMgZm9yIGJhY2tncm91bmQtaW1hZ2Ug
OiB1cmwoImh0dHA6Ly93d3cud2Via2l0Lm9yZy9jIikgMXgsIHVybCgiaHR0cDovL3d3dy53ZWJr
aXQub3JnL2IiKSAyeCwgdXJsKCJodHRwOi8vd3d3LndlYmtpdC5vcmcvYSIpIDF4Ci1QQVNTIHN0
eWxlLmJhY2tncm91bmRJbWFnZSBpcyAiaW1hZ2Utc2V0KHVybChcImh0dHA6Ly93d3cud2Via2l0
Lm9yZy9jXCIpIDF4LCB1cmwoXCJodHRwOi8vd3d3LndlYmtpdC5vcmcvYlwiKSAyeCwgdXJsKFwi
aHR0cDovL3d3dy53ZWJraXQub3JnL2FcIikgMXgpIgorUEFTUyBzdHlsZS5iYWNrZ3JvdW5kSW1h
Z2UgaXMgImltYWdlLXNldCh1cmwoXCJodHRwOi8vd3d3LndlYmtpdC5vcmcvY1wiKSAxZHBweCwg
dXJsKFwiaHR0cDovL3d3dy53ZWJraXQub3JnL2JcIikgMmRwcHgsIHVybChcImh0dHA6Ly93d3cu
d2Via2l0Lm9yZy9hXCIpIDFkcHB4KSIKIAogRnJhY3Rpb25hbCB2YWx1ZXMgZm9yIGJhY2tncm91
bmQtaW1hZ2UgOiB1cmwoImh0dHA6Ly93d3cud2Via2l0Lm9yZy9jIikgMC4yeCwgdXJsKCJodHRw
Oi8vd3d3LndlYmtpdC5vcmcvYiIpIDIuM3gsIHVybCgiaHR0cDovL3d3dy53ZWJraXQub3JnL2Ei
KSAxMi4zNDU2eAotUEFTUyBzdHlsZS5iYWNrZ3JvdW5kSW1hZ2UgaXMgImltYWdlLXNldCh1cmwo
XCJodHRwOi8vd3d3LndlYmtpdC5vcmcvY1wiKSAwLjJ4LCB1cmwoXCJodHRwOi8vd3d3LndlYmtp
dC5vcmcvYlwiKSAyLjN4LCB1cmwoXCJodHRwOi8vd3d3LndlYmtpdC5vcmcvYVwiKSAxMi4zNDU2
eCkiCitQQVNTIHN0eWxlLmJhY2tncm91bmRJbWFnZSBpcyAiaW1hZ2Utc2V0KHVybChcImh0dHA6
Ly93d3cud2Via2l0Lm9yZy9jXCIpIDAuMmRwcHgsIHVybChcImh0dHA6Ly93d3cud2Via2l0Lm9y
Zy9iXCIpIDIuM2RwcHgsIHVybChcImh0dHA6Ly93d3cud2Via2l0Lm9yZy9hXCIpIDEyLjM0NTZk
cHB4KSIKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIAogVEVTVCBDT01QTEVURQpJ
bmRleDogTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXNldHRpbmcuaHRtbAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFnZS1zZXQtc2V0dGluZy5odG1sCShyZXZp
c2lvbiAyNTQ5NzApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFnZS1zZXQtc2V0dGluZy5o
dG1sCSh3b3JraW5nIGNvcHkpCkBAIC0yMSw3ICsyMSw3IEBACiAgICAgcmV0dXJuIGNvbXB1dGVk
VmFsdWU7CiB9CiAKLWZ1bmN0aW9uIHRlc3RJbWFnZVNldFJ1bGUoZGVzY3JpcHRpb24sIHByb3Bl
cnR5LCBydWxlLCBleHBlY3RlZCkKK2Z1bmN0aW9uIHRlc3RJbWFnZVNldFJ1bGUoZGVzY3JpcHRp
b24sIHByb3BlcnR5LCBydWxlKQogewogICAgIGRlYnVnKCIiKTsKICAgICBkZWJ1ZyhkZXNjcmlw
dGlvbiArICIgOiAiICsgcnVsZSk7CkBAIC0yOCw3ICsyOCw3IEBACiAKICAgICB2YXIgZnVsbFJ1
bGUgPSAiaW1hZ2Utc2V0KCIgKyBydWxlICsgIikiOwogICAgIHN0eWxlID0gdGVzdENvbXB1dGVk
U3R5bGUocHJvcGVydHksIGZ1bGxSdWxlKTsKLSAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3N0
eWxlLmJhY2tncm91bmRJbWFnZScsIGZ1bGxSdWxlKTsKKyAgICBzaG91bGRCZUVxdWFsVG9TdHJp
bmcoJ3N0eWxlLmJhY2tncm91bmRJbWFnZScsIGZ1bGxSdWxlLnJlcGxhY2UoL3goPz1bLCldKS9n
LCAnZHBweCcpKTsKIH0KIAogdGVzdEltYWdlU2V0UnVsZSgiU2luZ2xlIHZhbHVlIGZvciBiYWNr
Z3JvdW5kLWltYWdlIiwKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC11bnBy
ZWZpeGVkLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0
LXVucHJlZml4ZWQuaHRtbAkocmV2aXNpb24gMjU0OTcwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9j
c3MvaW1hZ2Utc2V0LXVucHJlZml4ZWQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTYsNyArMTYs
NyBAQAogICAgIHJldHVybiBjb21wdXRlZFZhbHVlOwogfQogCi1mdW5jdGlvbiB0ZXN0SW1hZ2VT
ZXRSdWxlKGRlc2NyaXB0aW9uLCBwcm9wZXJ0eSwgcnVsZSwgZXhwZWN0ZWQpCitmdW5jdGlvbiB0
ZXN0SW1hZ2VTZXRSdWxlKGRlc2NyaXB0aW9uLCBwcm9wZXJ0eSwgcnVsZSkKIHsKICAgICBkZWJ1
ZygiIik7CiAgICAgZGVidWcoYCR7ZGVzY3JpcHRpb259IDogJHtydWxlfWApOwpAQCAtMjUsMTIg
KzI1LDEyIEBACiAgICAgaWYgKHByb3BlcnR5ID09ICdjdXJzb3InKQogICAgICAgICBydWxlICs9
ICcsIGRlZmF1bHQnOwogCi0gICAgaWYgKHRlc3RDb21wdXRlZFN0eWxlKHByb3BlcnR5LCBydWxl
KSA9PSBydWxlKQorICAgIGlmICh0ZXN0Q29tcHV0ZWRTdHlsZShwcm9wZXJ0eSwgcnVsZSkgPT0g
cnVsZS5yZXBsYWNlKC94KD89WywpXSkvZywgJ2RwcHgnKSkKICAgICAgICAgZGVidWcoIlVucHJl
Zml4ZWQ6IFBBU1MiKTsKICAgICBlbHNlCiAgICAgICAgIGRlYnVnKCJVbnByZWZpeGVkOiBGQUlM
Iik7CiAKLSAgICBpZiAodGVzdENvbXB1dGVkU3R5bGUocHJvcGVydHksICItd2Via2l0LSIgKyBy
dWxlKSA9PSBydWxlKQorICAgIGlmICh0ZXN0Q29tcHV0ZWRTdHlsZShwcm9wZXJ0eSwgIi13ZWJr
aXQtIiArIHJ1bGUpID09IHJ1bGUucmVwbGFjZSgveCg/PVssKV0pL2csICdkcHB4JykpCiAgICAg
ICAgIGRlYnVnKCJQcmVmaXhlZDogUEFTUyIpOwogICAgIGVsc2UKICAgICAgICAgZGVidWcoIlBy
ZWZpeGVkOiBGQUlMIik7CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2hpZHBpL2ltYWdlLXNldC11
bml0cy1leHBlY3RlZC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvaGlkcGkv
aW1hZ2Utc2V0LXVuaXRzLWV4cGVjdGVkLmh0bWwJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVz
dHMvZmFzdC9oaWRwaS9pbWFnZS1zZXQtdW5pdHMtZXhwZWN0ZWQuaHRtbAkod29ya2luZyBjb3B5
KQpAQCAtMCwwICsxLDI1IEBACis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdD4KKyAgICB3aW5kb3cu
b25sb2FkID0gKCkgPT4geworICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgICAg
IHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworICAgICAgICB0ZXN0UnVubmVyLnNldEJhY2tp
bmdTY2FsZUZhY3RvcigyLCAoKSA9PiBzZXRUaW1lb3V0KCgpID0+IHRlc3RSdW5uZXIubm90aWZ5
RG9uZSgpLCAwKSk7CisgICAgICB9CisgICAgfQorPC9zY3JpcHQ+CisKKzxzdHlsZT4KKyAgICAj
Zm9vIHsKKyAgICAgICAgd2lkdGg6MTAwcHg7CisgICAgICAgIGhlaWdodDoxMDBweDsKKyAgICAg
ICAgYmFja2dyb3VuZC1pbWFnZTogaW1hZ2Utc2V0KHVybCgncmVzb3VyY2VzL2JsdWUtMTAwLXB4
LXNxdWFyZS5wbmcnKSAxeCwgbGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSkgMngpOworICAg
IH0KKzwvc3R5bGU+Cis8L2hlYWQ+CisKKzxib2R5PgorICAgIDxkaXY+VGhpcyB0ZXN0IHBhc3Nl
cyBpZiB0aGUgZGl2IGJlbG93IGlzIGEgYmx1ZSAxMDBweCBzcXVhcmUgd2hlbiB0aGUgZGV2aWNl
U2NhbGVGYWN0b3IgaXMgMSwgYW5kIGlmIGl0IGlzIGEgMTAwcHggZ3JlZW4td2hpdGUgZ3JhZGll
bnQgc3F1YXJlIHdoZW4gdGhlIGRldmljZVNjYWxlRmFjdG9yIGlzIDIuPC9kaXY+CisgICAgPGRp
diBpZD1mb28+PC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+CgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBM
YXlvdXRUZXN0cy9mYXN0L2hpZHBpL2ltYWdlLXNldC11bml0cy1leHBlY3RlZC5odG1sCl9fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX18KQWRkZWQ6IHN2bjpleGVjdXRhYmxlCiMjIC0wLDAgKzEgIyMKKyoKXCBObyBuZXdsaW5l
IGF0IGVuZCBvZiBwcm9wZXJ0eQpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9oaWRwaS9pbWFnZS1z
ZXQtdW5pdHMuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2hpZHBpL2ltYWdl
LXNldC11bml0cy5odG1sCShub25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2Zhc3QvaGlkcGkv
aW1hZ2Utc2V0LXVuaXRzLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwyNSBAQAorPGh0
bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CisgICAgd2luZG93Lm9ubG9hZCA9ICgpID0+IHsKKyAgICAg
IGlmICh3aW5kb3cudGVzdFJ1bm5lcikgeworICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERv
bmUoKTsKKyAgICAgICAgdGVzdFJ1bm5lci5zZXRCYWNraW5nU2NhbGVGYWN0b3IoMiwgKCkgPT4g
c2V0VGltZW91dCgoKSA9PiB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKSwgMCkpOworICAgICAgfQor
ICAgIH0KKzwvc2NyaXB0PgorCis8c3R5bGU+CisgICAgI2ZvbyB7CisgICAgICAgIHdpZHRoOjEw
MHB4OworICAgICAgICBoZWlnaHQ6MTAwcHg7CisgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGlt
YWdlLXNldCh1cmwoJ3Jlc291cmNlcy9ibHVlLTEwMC1weC1zcXVhcmUucG5nJykgMWRwcHgsIGxp
bmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpIDE5MmRwaSk7CisgICAgfQorPC9zdHlsZT4KKzwv
aGVhZD4KKworPGJvZHk+CisgICAgPGRpdj5UaGlzIHRlc3QgcGFzc2VzIGlmIHRoZSBkaXYgYmVs
b3cgaXMgYSBibHVlIDEwMHB4IHNxdWFyZSB3aGVuIHRoZSBkZXZpY2VTY2FsZUZhY3RvciBpcyAx
LCBhbmQgaWYgaXQgaXMgYSAxMDBweCBncmVlbi13aGl0ZSBncmFkaWVudCBzcXVhcmUgd2hlbiB0
aGUgZGV2aWNlU2NhbGVGYWN0b3IgaXMgMi48L2Rpdj4KKyAgICA8ZGl2IGlkPWZvbz48L2Rpdj4K
KzwvYm9keT4KKzwvaHRtbD4KClByb3BlcnR5IGNoYW5nZXMgb246IExheW91dFRlc3RzL2Zhc3Qv
aGlkcGkvaW1hZ2Utc2V0LXVuaXRzLmh0bWwKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOmV4ZWN1dGFi
bGUKIyMgLTAsMCArMSAjIworKgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIHByb3BlcnR5CkluZGV4
OiBTb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
Q2hhbmdlTG9nCShyZXZpc2lvbiAyNTQ5NzApCisrKyBTb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cJ
KHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwzNyBAQAorMjAyMC0wMS0yMyAgTm9hbSBSb3NlbnRo
YWwgIDxub2FtQHdlYmtpdC5vcmc+CisKKyAgICAgICAgLXdlYmtpdC1pbWFnZS1zZXQgc2hvdWxk
IHN1cHBvcnQgcmVzb2x1dGlvbiB1bml0cyBvdGhlciB0aGFuICd4JworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAwMTIwCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgRGFyaW4gQWRsZXIuCisKKyAgICAgICAgTGV2ZXJhZ2VkIHByZXZpb3VzIHdvcmsgb24g
aW1hZ2UtcmVzb2x1dGlvbiB0byBlbmFibGUgZHBpL2RwcHgvZHBjbSBpbiBDU1MgaW1hZ2Utc2V0
LgorICAgICAgICBOb3cgdGhlIHNlY29uZCB2YWx1ZSBvZiBldmVyeSBlbnRyeSBpbiB0aGUgaW1h
Z2Utc2V0IGlzIHBhcnNlZCBsaWtlIGFueSByZXNvbHV0aW9uLAorICAgICAgICBhbGxvd2luZyAi
eCIgYXMgYSBzeW5vbmltIGZvciAiZHBweC4KKworICAgICAgICBUaGlzIGNoYW5nZXMgY29tcHV0
ZWQgc3R5bGUgYmVoYXZpb3IgZm9yIGltYWdlLXNldCAtICJ4IiByZXNvbHV0aW9uIHZhbHVlcyB3
aWxsIGJlIGNvbnZlcnRlZAorICAgICAgICB0byAiZHBweCIuIFRoaXMgaXMgaW4gbGluZSB3aXRo
IHRoZSBzcGlyaXQgb2YgY29tcHV0ZWQgdmFsdWVzLCB0aG91Z2ggaXQncyBub3Qgc3BlYydlZCBw
YXJ0aWN1bGFybHkuCisKKyAgICAgICAgVGVzdHM6IGZhc3QvaGlkcGkvaW1hZ2Utc2V0LXVuaXRz
Lmh0bWwKKworICAgICAgICAqIGNzcy9DU1NJbWFnZVNldFZhbHVlLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkNTU0ltYWdlU2V0VmFsdWU6OmZpbGxJbWFnZVNldCk6CisgICAgICAgIChXZWJDb3Jl
OjpDU1NJbWFnZVNldFZhbHVlOjp1cGRhdGVEZXZpY2VTY2FsZUZhY3Rvcik6CisgICAgICAgIChX
ZWJDb3JlOjpDU1NJbWFnZVNldFZhbHVlOjpjdXN0b21DU1NUZXh0IGNvbnN0KToKKyAgICAgICAg
ICAgICAgICBDb252ZXJ0IHZhbHVlcyB0byBkcHB4IGJlZm9yZSBzb3J0aW5nIHRoZW0gdGhlIGlt
YWdlIHNldC4KKyAgICAgICAgICAgICAgICBVc2UgZ2l2ZW4gQ1NTIHVuaXRzIGluIGNvbXB1dGVk
IHN0eWxlcyBpbnN0ZWFkIG9mIGhhcmRjb2RpbmcgIngiIAorCisgICAgICAgICogY3NzL0NTU1By
aW1pdGl2ZVZhbHVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmlzVmFsaWRDU1NVbml0VHlwZUZv
ckRvdWJsZUNvbnZlcnNpb24pOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJpbWl0aXZlVmFsdWU6
OmNvbnZlcnNpb25Ub0Nhbm9uaWNhbFVuaXRzU2NhbGVGYWN0b3IpOgorICAgICAgICAgICAgICAg
IEFsbG93IGNvbnZlcnNpb24gb2YgZHBpL2RwcHgvZHBjbSB0byBjYW5vbmljYWwgKGRwcHgpLgor
CisgICAgICAgICogY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6Q1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzOjpjb25zdW1lUmVzb2x1dGlv
bik6CisgICAgICAgIChXZWJDb3JlOjpDU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnM6OmNvbnN1bWVJ
bWFnZVNldCk6CisgICAgICAgICogY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMu
aDoKKyAgICAgICAgICAgICAgICBDb25zdW1lIGFueSByZXNvbHV0aW9uIHdoZW4gcGFyc2luZyBp
bWFnZS1zZXQuCisKIDIwMjAtMDEtMjMgIFl1c3VrZSBTdXp1a2kgIDx5c3V6dWtpQGFwcGxlLmNv
bT4KIAogICAgICAgICBub21vZHVsZSBzY3JpcHRzIGFyZSBmZXRjaGVkIGluIHNvbWUgY2FzZXMg
KHdpdGggZW1wdHkgY2FjaGUgb3IgaW4gbmV3IHRhYikKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NJbWFnZVNldFZhbHVlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTSW1hZ2VTZXRWYWx1ZS5jcHAJKHJldmlzaW9uIDI1NDk3MCkKKysrIFNvdXJjZS9XZWJDb3Jl
L2Nzcy9DU1NJbWFnZVNldFZhbHVlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTAsMjAgKzUwLDE1
IEBACiB2b2lkIENTU0ltYWdlU2V0VmFsdWU6OmZpbGxJbWFnZVNldCgpCiB7CiAgICAgc2l6ZV90
IGxlbmd0aCA9IHRoaXMtPmxlbmd0aCgpOwotICAgIHNpemVfdCBpID0gMDsKLSAgICB3aGlsZSAo
aSA8IGxlbmd0aCkgeworICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpICsgMTwgbGVuZ3RoOyBpICs9
IDIpIHsKICAgICAgICAgQ1NTVmFsdWUqIGltYWdlVmFsdWUgPSBpdGVtKGkpOworICAgICAgICBD
U1NWYWx1ZSogc2NhbGVGYWN0b3JWYWx1ZSA9IGl0ZW0oaSArIDEpOworCiAgICAgICAgIEFTU0VS
VChpczxDU1NJbWFnZVZhbHVlPihpbWFnZVZhbHVlKSB8fCBpczxDU1NJbWFnZUdlbmVyYXRvclZh
bHVlPihpbWFnZVZhbHVlKSk7Ci0gICAgICAgICsraTsKLSAgICAgICAgQVNTRVJUX1dJVEhfU0VD
VVJJVFlfSU1QTElDQVRJT04oaSA8IGxlbmd0aCk7Ci0gICAgICAgIENTU1ZhbHVlKiBzY2FsZUZh
Y3RvclZhbHVlID0gaXRlbShpKTsKLSAgICAgICAgZmxvYXQgc2NhbGVGYWN0b3IgPSBkb3duY2Fz
dDxDU1NQcmltaXRpdmVWYWx1ZT4oKnNjYWxlRmFjdG9yVmFsdWUpLmZsb2F0VmFsdWUoKTsKKyAg
ICAgICAgQVNTRVJUKGlzPENTU1ByaW1pdGl2ZVZhbHVlPihzY2FsZUZhY3RvclZhbHVlKSk7CiAK
LSAgICAgICAgSW1hZ2VXaXRoU2NhbGUgaW1hZ2U7Ci0gICAgICAgIGltYWdlLnZhbHVlID0gaW1h
Z2VWYWx1ZTsKLSAgICAgICAgaW1hZ2Uuc2NhbGVGYWN0b3IgPSBzY2FsZUZhY3RvcjsKLSAgICAg
ICAgbV9pbWFnZXNJblNldC5hcHBlbmQoaW1hZ2UpOwotICAgICAgICArK2k7CisgICAgICAgIGZs
b2F0IHNjYWxlRmFjdG9yID0gZG93bmNhc3Q8Q1NTUHJpbWl0aXZlVmFsdWU+KHNjYWxlRmFjdG9y
VmFsdWUpLT5mbG9hdFZhbHVlKENTU1VuaXRUeXBlOjpDU1NfRFBQWCk7CisgICAgICAgIG1faW1h
Z2VzSW5TZXQuYXBwZW5kKHtpbWFnZVZhbHVlLCBzY2FsZUZhY3Rvcn0pOwogICAgIH0KIAogICAg
IC8vIFNvcnQgdGhlIGltYWdlcyBzbyB0aGF0IHRoZXkgYXJlIHN0b3JlZCBpbiBvcmRlciBmcm9t
IGxvd2VzdCByZXNvbHV0aW9uIHRvIGhpZ2hlc3QuCkBAIC0xMDYsNyArMTAxLDYgQEAKIAogdm9p
ZCBDU1NJbWFnZVNldFZhbHVlOjp1cGRhdGVEZXZpY2VTY2FsZUZhY3Rvcihjb25zdCBEb2N1bWVu
dCYgZG9jdW1lbnQpCiB7Ci0KICAgICAvLyBGSVhNRTogSW4gdGhlIGZ1dHVyZSwgd2Ugd2FudCB0
byB0YWtlIG11Y2ggbW9yZSB0aGFuIGRldmljZVNjYWxlRmFjdG9yIGludG8gYWNvdW50IGhlcmUu
CiAgICAgLy8gQWxsIGZvcm1zIG9mIHNjYWxlIHNob3VsZCBiZSBpbmNsdWRlZDogUGFnZTo6cGFn
ZVNjYWxlRmFjdG9yKCksIEZyYW1lOjpwYWdlWm9vbUZhY3RvcigpLAogICAgIC8vIGFuZCBhbnkg
Q1NTIHRyYW5zZm9ybXMuIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04
MTY5OApAQCAtMTM2LDI0ICsxMzAsMTEgQEAKICAgICByZXN1bHQuYXBwZW5kTGl0ZXJhbCgiaW1h
Z2Utc2V0KCIpOwogCiAgICAgc2l6ZV90IGxlbmd0aCA9IHRoaXMtPmxlbmd0aCgpOwotICAgIHNp
emVfdCBpID0gMDsKLSAgICB3aGlsZSAoaSA8IGxlbmd0aCkgeworICAgIGZvciAoc2l6ZV90IGkg
PSAwOyBpICsgPCBsZW5ndGg7IGkgKz0gMikgewogICAgICAgICBpZiAoaSA+IDApCiAgICAgICAg
ICAgICByZXN1bHQuYXBwZW5kTGl0ZXJhbCgiLCAiKTsKIAotICAgICAgICBjb25zdCBDU1NWYWx1
ZSogaW1hZ2VWYWx1ZSA9IGl0ZW0oaSk7Ci0gICAgICAgIHJlc3VsdC5hcHBlbmQoaW1hZ2VWYWx1
ZS0+Y3NzVGV4dCgpKTsKLSAgICAgICAgcmVzdWx0LmFwcGVuZCgnICcpOwotCi0gICAgICAgICsr
aTsKLSAgICAgICAgQVNTRVJUX1dJVEhfU0VDVVJJVFlfSU1QTElDQVRJT04oaSA8IGxlbmd0aCk7
Ci0gICAgICAgIGNvbnN0IENTU1ZhbHVlKiBzY2FsZUZhY3RvclZhbHVlID0gaXRlbShpKTsKLSAg
ICAgICAgcmVzdWx0LmFwcGVuZChzY2FsZUZhY3RvclZhbHVlLT5jc3NUZXh0KCkpOwotICAgICAg
ICAvLyBGSVhNRTogRXZlbnR1YWxseSB0aGUgc2NhbGUgZmFjdG9yIHNob3VsZCBjb250YWluIGl0
J3Mgb3duIHVuaXQgaHR0cDovL3drYi51Zy8xMDAxMjAuCi0gICAgICAgIC8vIEZvciBub3cgJ3gn
IGlzIGhhcmQtY29kZWQgaW4gdGhlIHBhcnNlciwgc28gd2UgaGFyZC1jb2RlIGl0IGhlcmUgdG9v
LgotICAgICAgICByZXN1bHQuYXBwZW5kKCd4Jyk7Ci0KLSAgICAgICAgKytpOworICAgICAgICBy
ZXN1bHQuYXBwZW5kKGl0ZW0oaSktPmNzc1RleHQoKSwgJyAnLCBpdGVtKGkgKyAxKS0+Y3NzVGV4
dCgpKTsKICAgICB9CiAKICAgICByZXN1bHQuYXBwZW5kKCcpJyk7CkluZGV4OiBTb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZS5jcHAJKHJldmlzaW9uIDI1NDk3MCkKKysrIFNvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTgx
LDE1ICs4MSwxMCBAQAogICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19WTUFYOgogICAgIGNhc2Ug
Q1NTVW5pdFR5cGU6OkNTU19WTUlOOgogICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19WVzoKLSAg
ICAgICAgcmV0dXJuIHRydWU7CiAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0RQQ006CiAgICAg
Y2FzZSBDU1NVbml0VHlwZTo6Q1NTX0RQSToKICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfRFBQ
WDoKLSNpZiBFTkFCTEUoQ1NTX0lNQUdFX1JFU09MVVRJT04pIHx8IEVOQUJMRShSRVNPTFVUSU9O
X01FRElBX1FVRVJZKQogICAgICAgICByZXR1cm4gdHJ1ZTsKLSNlbHNlCi0gICAgICAgIHJldHVy
biBmYWxzZTsKLSNlbmRpZgogICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19BVFRSOgogICAgIGNh
c2UgQ1NTVW5pdFR5cGU6OkNTU19DT1VOVEVSOgogICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19D
T1VOVEVSX05BTUU6CkBAIC03MDMsNiArNjk4LDcgQEAKICAgICBjYXNlIENTU1VuaXRUeXBlOjpD
U1NfREVHOgogICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19NUzoKICAgICBjYXNlIENTU1VuaXRU
eXBlOjpDU1NfSFo6CisgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0RQUFg6CiAgICAgICAgIGJy
ZWFrOwogICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19DTToKICAgICAgICAgZmFjdG9yID0gY3Nz
UGl4ZWxzUGVySW5jaCAvIGNtUGVySW5jaDsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Nzcy9wYXJz
ZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VySGVscGVycy5jcHAJKHJldmlzaW9uIDI1
NDk3MCkKKysrIFNvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxw
ZXJzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDM5LDcgKzQzOSw3IEBACiAgICAgcmV0dXJuIG51
bGxwdHI7CiB9CiAKLVJlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gY29uc3VtZVJlc29sdXRpb24o
Q1NTUGFyc2VyVG9rZW5SYW5nZSYgcmFuZ2UpCitSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IGNv
bnN1bWVSZXNvbHV0aW9uKENTU1BhcnNlclRva2VuUmFuZ2UmIHJhbmdlLCBBbGxvd1hSZXNvbHV0
aW9uVW5pdCBhbGxvd1gpCiB7CiAgICAgY29uc3QgQ1NTUGFyc2VyVG9rZW4mIHRva2VuID0gcmFu
Z2UucGVlaygpOwogICAgIC8vIFVubGlrZSB0aGUgb3RoZXIgdHlwZXMsIGNhbGMoKSBkb2VzIG5v
dCB3b3JrIHdpdGggPHJlc29sdXRpb24+LgpAQCAtNDQ4LDYgKzQ0OCw5IEBACiAgICAgQ1NTVW5p
dFR5cGUgdW5pdCA9IHRva2VuLnVuaXRUeXBlKCk7CiAgICAgaWYgKHVuaXQgPT0gQ1NTVW5pdFR5
cGU6OkNTU19EUFBYIHx8IHVuaXQgPT0gQ1NTVW5pdFR5cGU6OkNTU19EUEkgfHwgdW5pdCA9PSBD
U1NVbml0VHlwZTo6Q1NTX0RQQ00pCiAgICAgICAgIHJldHVybiBDU1NWYWx1ZVBvb2w6OnNpbmds
ZXRvbigpLmNyZWF0ZVZhbHVlKHJhbmdlLmNvbnN1bWVJbmNsdWRpbmdXaGl0ZXNwYWNlKCkubnVt
ZXJpY1ZhbHVlKCksIHVuaXQpOworICAgIGlmIChhbGxvd1ggPT0gQWxsb3dYUmVzb2x1dGlvblVu
aXQ6OkFsbG93ICYmIHRva2VuLnZhbHVlKCkgPT0gIngiKQorICAgICAgICByZXR1cm4gQ1NTVmFs
dWVQb29sOjpzaW5nbGV0b24oKS5jcmVhdGVWYWx1ZShyYW5nZS5jb25zdW1lSW5jbHVkaW5nV2hp
dGVzcGFjZSgpLm51bWVyaWNWYWx1ZSgpLCBDU1NVbml0VHlwZTo6Q1NTX0RQUFgpOworCiAgICAg
cmV0dXJuIG51bGxwdHI7CiB9CiAKQEAgLTE0ODUsMjIgKzE0ODgsMTcgQEAKICAgICBDU1NQYXJz
ZXJUb2tlblJhbmdlIGFyZ3MgPSBjb25zdW1lRnVuY3Rpb24ocmFuZ2VDb3B5KTsKICAgICBSZWZQ
dHI8Q1NTSW1hZ2VTZXRWYWx1ZT4gaW1hZ2VTZXQgPSBDU1NJbWFnZVNldFZhbHVlOjpjcmVhdGUo
KTsKICAgICBkbyB7Ci0gICAgICAgIFJlZlB0cjxDU1NWYWx1ZT4gaW1hZ2UgPSBjb25zdW1lSW1h
Z2UoYXJncywgY29udGV4dCwgKGFsbG93ZWRJbWFnZVR5cGUgfCBBbGxvd2VkSW1hZ2VUeXBlOjpS
YXdTdHJpbmdBc1VSTCkgLSBBbGxvd2VkSW1hZ2VUeXBlOjpJbWFnZVNldCk7CisgICAgICAgIGF1
dG8gaW1hZ2UgPSBjb25zdW1lSW1hZ2UoYXJncywgY29udGV4dCwgKGFsbG93ZWRJbWFnZVR5cGUg
fCBBbGxvd2VkSW1hZ2VUeXBlOjpSYXdTdHJpbmdBc1VSTCkgLSBBbGxvd2VkSW1hZ2VUeXBlOjpJ
bWFnZVNldCk7CiAgICAgICAgIGlmICghaW1hZ2UpCiAgICAgICAgICAgICByZXR1cm4gbnVsbHB0
cjsKIAogICAgICAgICBpbWFnZVNldC0+YXBwZW5kKGltYWdlLnJlbGVhc2VOb25OdWxsKCkpOwog
Ci0gICAgICAgIGNvbnN0IENTU1BhcnNlclRva2VuJiB0b2tlbiA9IGFyZ3MuY29uc3VtZUluY2x1
ZGluZ1doaXRlc3BhY2UoKTsKLSAgICAgICAgaWYgKHRva2VuLnR5cGUoKSAhPSBEaW1lbnNpb25U
b2tlbikKKyAgICAgICAgYXV0byByZXNvbHV0aW9uID0gY29uc3VtZVJlc29sdXRpb24oYXJncywg
QWxsb3dYUmVzb2x1dGlvblVuaXQ6OkFsbG93KTsKKyAgICAgICAgaWYgKCFyZXNvbHV0aW9uIHx8
IHJlc29sdXRpb24tPmZsb2F0VmFsdWUoKSA8PSAwKQogICAgICAgICAgICAgcmV0dXJuIG51bGxw
dHI7Ci0gICAgICAgIGlmICh0b2tlbi52YWx1ZSgpICE9ICJ4IikKLSAgICAgICAgICAgIHJldHVy
biBudWxscHRyOwotICAgICAgICBBU1NFUlQodG9rZW4udW5pdFR5cGUoKSA9PSBDU1NVbml0VHlw
ZTo6Q1NTX1VOS05PV04pOwotICAgICAgICBkb3VibGUgaW1hZ2VTY2FsZUZhY3RvciA9IHRva2Vu
Lm51bWVyaWNWYWx1ZSgpOwotICAgICAgICBpZiAoaW1hZ2VTY2FsZUZhY3RvciA8PSAwKQotICAg
ICAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0gICAgICAgIGltYWdlU2V0LT5hcHBlbmQoQ1NTVmFs
dWVQb29sOjpzaW5nbGV0b24oKS5jcmVhdGVWYWx1ZShpbWFnZVNjYWxlRmFjdG9yLCBDU1NVbml0
VHlwZTo6Q1NTX05VTUJFUikpOworCisgICAgICAgIGltYWdlU2V0LT5hcHBlbmQocmVzb2x1dGlv
bi5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICB9IHdoaWxlIChjb25zdW1lQ29tbWFJbmNsdWRpbmdX
aGl0ZXNwYWNlKGFyZ3MpKTsKICAgICBpZiAoIWFyZ3MuYXRFbmQoKSkKICAgICAgICAgcmV0dXJu
IG51bGxwdHI7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFy
c2VySGVscGVycy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NT
UHJvcGVydHlQYXJzZXJIZWxwZXJzLmgJKHJldmlzaW9uIDI1NDk3MCkKKysrIFNvdXJjZS9XZWJD
b3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmgJKHdvcmtpbmcgY29weSkK
QEAgLTUyLDEwICs1Miw4IEBACiAvLyBjb25zdW1lRnVuY3Rpb24gZXhwZWN0cyB0aGUgcmFuZ2Ug
c3RhcnRzIHdpdGggYSBGdW5jdGlvblRva2VuLgogQ1NTUGFyc2VyVG9rZW5SYW5nZSBjb25zdW1l
RnVuY3Rpb24oQ1NTUGFyc2VyVG9rZW5SYW5nZSYpOwogCi1lbnVtIGNsYXNzIFVuaXRsZXNzUXVp
cmsgewotICAgIEFsbG93LAotICAgIEZvcmJpZAotfTsKK2VudW0gY2xhc3MgVW5pdGxlc3NRdWly
ayB7IEFsbG93LCBGb3JiaWQgfTsKK2VudW0gY2xhc3MgQWxsb3dYUmVzb2x1dGlvblVuaXQgeyBB
bGxvdywgRm9yYmlkIH07CiAKIFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gY29uc3VtZUludGVn
ZXIoQ1NTUGFyc2VyVG9rZW5SYW5nZSYsIGRvdWJsZSBtaW5pbXVtVmFsdWUgPSAtc3RkOjpudW1l
cmljX2xpbWl0czxkb3VibGU+OjptYXgoKSk7CiBSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IGNv
bnN1bWVQb3NpdGl2ZUludGVnZXIoQ1NTUGFyc2VyVG9rZW5SYW5nZSYpOwpAQCAtNjcsNyArNjUs
NyBAQAogUmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiBjb25zdW1lTGVuZ3RoT3JQZXJjZW50KENT
U1BhcnNlclRva2VuUmFuZ2UmLCBDU1NQYXJzZXJNb2RlLCBWYWx1ZVJhbmdlLCBVbml0bGVzc1F1
aXJrID0gVW5pdGxlc3NRdWlyazo6Rm9yYmlkKTsKIFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4g
Y29uc3VtZUFuZ2xlKENTU1BhcnNlclRva2VuUmFuZ2UmLCBDU1NQYXJzZXJNb2RlLCBVbml0bGVz
c1F1aXJrID0gVW5pdGxlc3NRdWlyazo6Rm9yYmlkKTsKIFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1
ZT4gY29uc3VtZVRpbWUoQ1NTUGFyc2VyVG9rZW5SYW5nZSYsIENTU1BhcnNlck1vZGUsIFZhbHVl
UmFuZ2UsIFVuaXRsZXNzUXVpcmsgPSBVbml0bGVzc1F1aXJrOjpGb3JiaWQpOwotUmVmUHRyPENT
U1ByaW1pdGl2ZVZhbHVlPiBjb25zdW1lUmVzb2x1dGlvbihDU1NQYXJzZXJUb2tlblJhbmdlJik7
CitSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IGNvbnN1bWVSZXNvbHV0aW9uKENTU1BhcnNlclRv
a2VuUmFuZ2UmLCBBbGxvd1hSZXNvbHV0aW9uVW5pdCA9IEFsbG93WFJlc29sdXRpb25Vbml0OjpG
b3JiaWQpOwogCiBSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IGNvbnN1bWVJZGVudChDU1NQYXJz
ZXJUb2tlblJhbmdlJik7CiBSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IGNvbnN1bWVJZGVudFJh
bmdlKENTU1BhcnNlclRva2VuUmFuZ2UmLCBDU1NWYWx1ZUlEIGxvd2VyLCBDU1NWYWx1ZUlEIHVw
cGVyKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>388829</attachid>
            <date>2020-01-26 22:57:25 -0800</date>
            <delta_ts>2020-01-26 23:51:55 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>patch.diff</filename>
            <type>text/plain</type>
            <size>34948</size>
            <attacher name="Noam Rosenthal">noam</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDI1NDk3MCkKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29y
a2luZyBjb3B5KQpAQCAtMSwzICsxLDI3IEBACisyMDIwLTAxLTIzICBOb2FtIFJvc2VudGhhbCAg
PG5vYW1Ad2Via2l0Lm9yZz4KKworICAgICAgICAtd2Via2l0LWltYWdlLXNldCBzaG91bGQgc3Vw
cG9ydCByZXNvbHV0aW9uIHVuaXRzIG90aGVyIHRoYW4gJ3gnCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDAxMjAKKworICAgICAgICBSZXZpZXdlZCBi
eSBEYXJpbiBBZGxlci4KKworICAgICAgICBIYWQgdG8gbW9kaWZ5IHNldmVyYWwgaW1hZ2Utc2V0
IHBhcnNpbmcgdGVzdHMgYmVjYXVzZSBvZiB0aGUgYmVoYXZpb3IgY2hhbmdlIGluCisgICAgICAg
IGNvbXB1dGVkIHN0eWxlICh4ID0+IGRwcHgpLgorCisgICAgICAgIEFsc28gYWRkZWQgYSBjb3Vw
bGUgb2YgcGFyc2luZy9yZW5kZXJpbmcgdGVzdHMgc3BlY2lmaWNhbGx5IHRvIHRlc3QgdGhlIG5l
dyBiZWhhdmlvcgorICAgICAgICBvZiBkcGkvZHBjbS9kcHB4LgorCisgICAgICAgICogZmFzdC9j
c3MvY3Vyc29yLXBhcnNpbmctaW1hZ2Utc2V0LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0
L2Nzcy9jdXJzb3ItcGFyc2luZy1pbWFnZS1zZXQuaHRtbDoKKyAgICAgICAgKiBmYXN0L2Nzcy9p
bWFnZS1zZXQtcGFyc2luZy1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9jc3MvaW1hZ2Ut
c2V0LXBhcnNpbmctaW52YWxpZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9jc3MvaW1h
Z2Utc2V0LXBhcnNpbmcuaHRtbDoKKyAgICAgICAgKiBmYXN0L2Nzcy9pbWFnZS1zZXQtc2V0dGlu
Zy1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9jc3MvaW1hZ2Utc2V0LXNldHRpbmcuaHRt
bDoKKyAgICAgICAgKiBmYXN0L2Nzcy9pbWFnZS1zZXQtdW5wcmVmaXhlZC5odG1sOgorICAgICAg
ICAqIGZhc3QvaGlkcGkvaW1hZ2Utc2V0LXVuaXRzLWV4cGVjdGVkLmh0bWw6IEFkZGVkLgorICAg
ICAgICAqIGZhc3QvaGlkcGkvaW1hZ2Utc2V0LXVuaXRzLmh0bWw6IEFkZGVkLgorCiAyMDIwLTAx
LTIzICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+CiAKICAgICAgICAgbm9tb2R1
bGUgc2NyaXB0cyBhcmUgZmV0Y2hlZCBpbiBzb21lIGNhc2VzICh3aXRoIGVtcHR5IGNhY2hlIG9y
IGluIG5ldyB0YWIpCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9jdXJzb3ItcGFyc2luZy1p
bWFnZS1zZXQtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvY3Nz
L2N1cnNvci1wYXJzaW5nLWltYWdlLXNldC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDI1NDk3MCkK
KysrIExheW91dFRlc3RzL2Zhc3QvY3NzL2N1cnNvci1wYXJzaW5nLWltYWdlLXNldC1leHBlY3Rl
ZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTYsMTAgKzYsMTAgQEAKIEJ1ZyA5OTQ5MwogCiBUZXN0
IGEgYnVuY2ggb2YgY3Vyc29yIHJ1bGVzIHdoaWNoIHNob3VsZCByb3VuZC10cmlwIGV4YWN0bHku
Ci1QQVNTIHN0eWxlLmNzc1RleHQgaXMgImN1cnNvcjogaW1hZ2Utc2V0KHVybChcImZpbGU6Ly8v
Zm9vLnBuZ1wiKSAxeCksIGF1dG87IgotUEFTUyBzdHlsZS5jc3NUZXh0IGlzICJjdXJzb3I6IGlt
YWdlLXNldCh1cmwoXCJmaWxlOi8vL2Zvby5wbmdcIikgMXgsIHVybChcImZpbGU6Ly8vZm9vMngu
cG5nXCIpIDJ4KSwgYXV0bzsiCi1QQVNTIHN0eWxlLmNzc1RleHQgaXMgImN1cnNvcjogaW1hZ2Ut
c2V0KHVybChcImZpbGU6Ly8vZm9vLnBuZ1wiKSAxeCwgdXJsKFwiZmlsZTovLy9mb28yeC5wbmdc
IikgMngpIDIgMywgYXV0bzsiCi1QQVNTIHN0eWxlLmNzc1RleHQgaXMgImN1cnNvcjogaW1hZ2Ut
c2V0KHVybChcImZpbGU6Ly8vZm9vMDMucG5nXCIpIDAuM3gsIHVybChcImZpbGU6Ly8vZm9vNXgu
cG5nXCIpIDV4KSA2IDUsIHVybChcImZpbGU6Ly8vZm9vLnBuZ1wiKSAxMiAzLCBwb2ludGVyOyIK
K1BBU1Mgc3R5bGUuY3NzVGV4dCBpcyAiY3Vyc29yOiBpbWFnZS1zZXQodXJsKFwiZmlsZTovLy9m
b28ucG5nXCIpIDFkcHB4KSwgYXV0bzsiCitQQVNTIHN0eWxlLmNzc1RleHQgaXMgImN1cnNvcjog
aW1hZ2Utc2V0KHVybChcImZpbGU6Ly8vZm9vLnBuZ1wiKSAxZHBweCwgdXJsKFwiZmlsZTovLy9m
b28yeC5wbmdcIikgMmRwcHgpLCBhdXRvOyIKK1BBU1Mgc3R5bGUuY3NzVGV4dCBpcyAiY3Vyc29y
OiBpbWFnZS1zZXQodXJsKFwiZmlsZTovLy9mb28ucG5nXCIpIDFkcHB4LCB1cmwoXCJmaWxlOi8v
L2ZvbzJ4LnBuZ1wiKSAyZHBweCkgMiAzLCBhdXRvOyIKK1BBU1Mgc3R5bGUuY3NzVGV4dCBpcyAi
Y3Vyc29yOiBpbWFnZS1zZXQodXJsKFwiZmlsZTovLy9mb28wMy5wbmdcIikgMC4zZHBweCwgdXJs
KFwiZmlsZTovLy9mb281eC5wbmdcIikgNWRwcHgpIDYgNSwgdXJsKFwiZmlsZTovLy9mb28ucG5n
XCIpIDEyIDMsIHBvaW50ZXI7IgogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCiBU
RVNUIENPTVBMRVRFCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9jdXJzb3ItcGFyc2luZy1p
bWFnZS1zZXQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9jdXJzb3It
cGFyc2luZy1pbWFnZS1zZXQuaHRtbAkocmV2aXNpb24gMjU0OTcwKQorKysgTGF5b3V0VGVzdHMv
ZmFzdC9jc3MvY3Vyc29yLXBhcnNpbmctaW1hZ2Utc2V0Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAg
LTIxLDcgKzIxLDcgQEAKIHsKICAgICB2YXIgY3NzVGV4dCA9IG1ha2VDdXJzb3JSdWxlKHJ1bGUp
OwogICAgIHN0eWxlID0gcm91bmR0cmlwQ3NzUnVsZShjc3NUZXh0KTsKLSAgICBzaG91bGRCZUVx
dWFsVG9TdHJpbmcoJ3N0eWxlLmNzc1RleHQnLCBjc3NUZXh0KTsKKyAgICBzaG91bGRCZUVxdWFs
VG9TdHJpbmcoJ3N0eWxlLmNzc1RleHQnLCBjc3NUZXh0LnJlcGxhY2UoL3goPz1bLCldKS9nLCAn
ZHBweCcpKTsKIH0KIAogZnVuY3Rpb24gcm91bmR0cmlwQ3NzUnVsZShjc3NUZXh0KQpJbmRleDog
TGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNpbmctZXhwZWN0ZWQudHh0Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLWV4cGVjdGVk
LnR4dAkocmV2aXNpb24gMjU0OTcwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0
LXBhcnNpbmctZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xMCw3ICsxMCw3IEBACiBQ
QVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0Z1bmN0aW9u
JwogUEFTUyBpbWFnZVNldFJ1bGUubGVuZ3RoIGlzIDIKIFBBU1Mgc3ViUnVsZSBpcyAnYScKLVBB
U1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxJworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzFkcHB4
JwogCiBNdWx0aXBsZSB2YWx1ZXMgZm9yIGJhY2tncm91bmQtaW1hZ2UgOiB1cmwoJyNhJykgMXgs
IHVybCgnI2InKSAyeAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUpIGlzICdDU1NW
YWx1ZUxpc3QnCkBAIC0xOCw5ICsxOCw5IEBACiBQQVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0
UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0Z1bmN0aW9uJwogUEFTUyBpbWFnZVNldFJ1bGUubGVuZ3Ro
IGlzIDQKIFBBU1Mgc3ViUnVsZSBpcyAnYScKLVBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxJwor
UEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzFkcHB4JwogUEFTUyBzdWJSdWxlIGlzICdiJwotUEFT
UyBzdWJSdWxlLmNzc1RleHQgaXMgJzInCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMmRwcHgn
CiAKIFNpbmdsZSB2YWx1ZSBmb3IgYmFja2dyb3VuZC1pbWFnZSB3aXRob3V0IHVybCgpIGZ1bmN0
aW9uIDogJyNhJyAxeAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUpIGlzICdDU1NW
YWx1ZUxpc3QnCkBAIC0yOCw3ICsyOCw3IEBACiBQQVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0
UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0Z1bmN0aW9uJwogUEFTUyBpbWFnZVNldFJ1bGUubGVuZ3Ro
IGlzIDIKIFBBU1Mgc3ViUnVsZSBpcyAnYScKLVBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxJwor
UEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzFkcHB4JwogCiBNdWx0aXBsZSB2YWx1ZXMgZm9yIGJh
Y2tncm91bmQtaW1hZ2Ugd2l0aG91dCB1cmwoKSBmdW5jdGlvbiA6ICcjYScgMXgsICcjYicgMngK
IFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwpAQCAt
MzYsOSArMzYsOSBAQAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0
b3IpIGlzICdGdW5jdGlvbicKIFBBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyA0CiBQQVNTIHN1
YlJ1bGUgaXMgJ2EnCi1QQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMScKK1BBU1Mgc3ViUnVsZS5j
c3NUZXh0IGlzICcxZHBweCcKIFBBU1Mgc3ViUnVsZSBpcyAnYicKLVBBU1Mgc3ViUnVsZS5jc3NU
ZXh0IGlzICcyJworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzJkcHB4JwogCiBNaXggdmFsdWVz
IHdpdGggYW5kIHdpdGhvdXQgdXJsKCkgZnVuY3Rpb24gOiAnI2EnIDF4LCB1cmwoJyNiJykgMngK
IFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwpAQCAt
NDYsOSArNDYsOSBAQAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0
b3IpIGlzICdGdW5jdGlvbicKIFBBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyA0CiBQQVNTIHN1
YlJ1bGUgaXMgJ2EnCi1QQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMScKK1BBU1Mgc3ViUnVsZS5j
c3NUZXh0IGlzICcxZHBweCcKIFBBU1Mgc3ViUnVsZSBpcyAnYicKLVBBU1Mgc3ViUnVsZS5jc3NU
ZXh0IGlzICcyJworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzJkcHB4JwogCiBNdWx0aXBsZSB2
YWx1ZXMgZm9yIGJhY2tncm91bmQtaW1hZ2UsIG91dCBvZiBvcmRlciA6IHVybCgnI2MnKSAzeCwg
dXJsKCcjYicpIDJ4LCB1cmwoJyNhJykgMXgKIFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRS
dWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwpAQCAtNTYsMTEgKzU2LDExIEBACiBQQVNTIGpzV3JhcHBl
ckNsYXNzKGltYWdlU2V0UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0Z1bmN0aW9uJwogUEFTUyBpbWFn
ZVNldFJ1bGUubGVuZ3RoIGlzIDYKIFBBU1Mgc3ViUnVsZSBpcyAnYycKLVBBU1Mgc3ViUnVsZS5j
c3NUZXh0IGlzICczJworRkFJTCBzdWJSdWxlLmNzc1RleHQgc2hvdWxkIGJlIDMuIFdhcyAzZHBw
eC4KIFBBU1Mgc3ViUnVsZSBpcyAnYicKLVBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcyJworUEFT
UyBzdWJSdWxlLmNzc1RleHQgaXMgJzJkcHB4JwogUEFTUyBzdWJSdWxlIGlzICdhJwotUEFTUyBz
dWJSdWxlLmNzc1RleHQgaXMgJzEnCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMWRwcHgnCiAK
IFNpbmdsZSB2YWx1ZSBmb3IgY29udGVudCA6IHVybCgnI2EnKSAxeAogUEFTUyBqc1dyYXBwZXJD
bGFzcyhpbWFnZVNldFJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCkBAIC02OCw3ICs2OCw3IEBACiBQ
QVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0Z1bmN0aW9u
JwogUEFTUyBpbWFnZVNldFJ1bGUubGVuZ3RoIGlzIDIKIFBBU1Mgc3ViUnVsZSBpcyAnYScKLVBB
U1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxJworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzFkcHB4
JwogCiBNdWx0aXBsZSB2YWx1ZXMgZm9yIGNvbnRlbnQgOiB1cmwoJyNhJykgMXgsIHVybCgnI2In
KSAyeAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUpIGlzICdDU1NWYWx1ZUxpc3Qn
CkBAIC03Niw5ICs3Niw5IEBACiBQQVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZS5jb25z
dHJ1Y3RvcikgaXMgJ0Z1bmN0aW9uJwogUEFTUyBpbWFnZVNldFJ1bGUubGVuZ3RoIGlzIDQKIFBB
U1Mgc3ViUnVsZSBpcyAnYScKLVBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxJworUEFTUyBzdWJS
dWxlLmNzc1RleHQgaXMgJzFkcHB4JwogUEFTUyBzdWJSdWxlIGlzICdiJwotUEFTUyBzdWJSdWxl
LmNzc1RleHQgaXMgJzInCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMmRwcHgnCiAKIFNpbmds
ZSB2YWx1ZSBmb3IgYm9yZGVyLWltYWdlIDogdXJsKCcjYScpIDF4CiBQQVNTIGpzV3JhcHBlckNs
YXNzKGltYWdlU2V0UnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKQEAgLTg2LDcgKzg2LDcgQEAKIFBB
U1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlLmNvbnN0cnVjdG9yKSBpcyAnRnVuY3Rpb24n
CiBQQVNTIGltYWdlU2V0UnVsZS5sZW5ndGggaXMgMgogUEFTUyBzdWJSdWxlIGlzICdhJwotUEFT
UyBzdWJSdWxlLmNzc1RleHQgaXMgJzEnCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMWRwcHgn
CiAKIE11bHRpcGxlIHZhbHVlcyBmb3IgYm9yZGVyLWltYWdlIDogdXJsKCcjYScpIDF4LCB1cmwo
JyNiJykgMngKIFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVM
aXN0JwpAQCAtOTQsOSArOTQsOSBAQAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUu
Y29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicKIFBBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyA0
CiBQQVNTIHN1YlJ1bGUgaXMgJ2EnCi1QQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMScKK1BBU1Mg
c3ViUnVsZS5jc3NUZXh0IGlzICcxZHBweCcKIFBBU1Mgc3ViUnVsZSBpcyAnYicKLVBBU1Mgc3Vi
UnVsZS5jc3NUZXh0IGlzICcyJworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzJkcHB4JwogCiBT
aW5nbGUgdmFsdWUgZm9yIC13ZWJraXQtbWFzay1ib3gtaW1hZ2UgOiB1cmwoJyNhJykgMXgKIFBB
U1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwpAQCAtMTA0
LDcgKzEwNCw3IEBACiBQQVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZS5jb25zdHJ1Y3Rv
cikgaXMgJ0Z1bmN0aW9uJwogUEFTUyBpbWFnZVNldFJ1bGUubGVuZ3RoIGlzIDIKIFBBU1Mgc3Vi
UnVsZSBpcyAnYScKLVBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxJworUEFTUyBzdWJSdWxlLmNz
c1RleHQgaXMgJzFkcHB4JwogCiBNdWx0aXBsZSB2YWx1ZXMgZm9yIC13ZWJraXQtbWFzay1ib3gt
aW1hZ2UgOiB1cmwoJyNhJykgMXgsIHVybCgnI2InKSAyeAogUEFTUyBqc1dyYXBwZXJDbGFzcyhp
bWFnZVNldFJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCkBAIC0xMTIsOSArMTEyLDQ1IEBACiBQQVNT
IGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0Z1bmN0aW9uJwog
UEFTUyBpbWFnZVNldFJ1bGUubGVuZ3RoIGlzIDQKIFBBU1Mgc3ViUnVsZSBpcyAnYScKLVBBU1Mg
c3ViUnVsZS5jc3NUZXh0IGlzICcxJworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzFkcHB4Jwog
UEFTUyBzdWJSdWxlIGlzICdiJwotUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzInCitQQVNTIHN1
YlJ1bGUuY3NzVGV4dCBpcyAnMmRwcHgnCisKK1NpbmdsZSB2YWx1ZSB3aXRoIGRwcHggOiB1cmwo
JyNhJykgMWRwcHgKK1BBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFs
dWVMaXN0JworUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuX19wcm90b19fKSBpcyAn
Q1NTVmFsdWVMaXN0UHJvdG90eXBlJworUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUu
Y29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicKK1BBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyAy
CitQQVNTIHN1YlJ1bGUgaXMgJ2EnCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMWRwcHgnCisK
K1NpbmdsZSB2YWx1ZSB3aXRoIGRwaSA6IHVybCgnI2EnKSAxOTJkcGkKK1BBU1MganNXcmFwcGVy
Q2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JworUEFTUyBqc1dyYXBwZXJDbGFz
cyhpbWFnZVNldFJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJworUEFT
UyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicK
K1BBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyAyCitQQVNTIHN1YlJ1bGUgaXMgJ2EnCitQQVNT
IHN1YlJ1bGUuY3NzVGV4dCBpcyAnMTkyZHBpJworCitTaW5nbGUgdmFsdWUgd2l0aCBkcGNtIDog
dXJsKCcjYScpIDEwMmRwY20KK1BBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAn
Q1NTVmFsdWVMaXN0JworUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuX19wcm90b19f
KSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJworUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNl
dFJ1bGUuY29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicKK1BBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0
aCBpcyAyCitQQVNTIHN1YlJ1bGUgaXMgJ2EnCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMTAy
ZHBjbScKKworTXVsdGlwbGUgdmFsdWVzIHdpdGggZHBpLCBkcHB4IGFuZCB4IDogdXJsKCcjYScp
IDF4LCB1cmwoJyNiJykgMmRwcHgsIHVybCgnI2MnKSAyNTBkcGkKK1BBU1MganNXcmFwcGVyQ2xh
c3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JworUEFTUyBqc1dyYXBwZXJDbGFzcyhp
bWFnZVNldFJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJworUEFTUyBq
c1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicKK1BB
U1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyA2CitQQVNTIHN1YlJ1bGUgaXMgJ2EnCitQQVNTIHN1
YlJ1bGUuY3NzVGV4dCBpcyAnMWRwcHgnCitQQVNTIHN1YlJ1bGUgaXMgJ2InCitQQVNTIHN1YlJ1
bGUuY3NzVGV4dCBpcyAnMmRwcHgnCitQQVNTIHN1YlJ1bGUgaXMgJ2MnCitQQVNTIHN1YlJ1bGUu
Y3NzVGV4dCBpcyAnMjUwZHBpJwogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCiBU
RVNUIENPTVBMRVRFCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFnZS1zZXQtcGFyc2lu
Zy1nZW5lcmF0ZWQtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3Qv
Y3NzL2ltYWdlLXNldC1wYXJzaW5nLWdlbmVyYXRlZC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDI1
NDk3MCkKKysrIExheW91dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLWdlbmVyYXRl
ZC1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEwLDcgKzEwLDcgQEAKIFBBU1MganNX
cmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlLmNvbnN0cnVjdG9yKSBpcyAnRnVuY3Rpb24nCiBQQVNT
IGltYWdlU2V0UnVsZS5sZW5ndGggaXMgMgogUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJ2xpbmVh
ci1ncmFkaWVudChncmVlbiwgd2hpdGUpJwotUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzEnCitQ
QVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMWRwcHgnCiAKIFNpbmdsZSB2YWx1ZSBmb3IgY29udGVu
dCB3aXRoIGdyYWRpZW50IDogbGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSkgMXgKIFBBU1Mg
anNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwpAQCAtMTgsNyAr
MTgsNyBAQAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3IpIGlz
ICdGdW5jdGlvbicKIFBBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyAyCiBQQVNTIHN1YlJ1bGUu
Y3NzVGV4dCBpcyAnbGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSknCi1QQVNTIHN1YlJ1bGUu
Y3NzVGV4dCBpcyAnMScKK1BBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxZHBweCcKIAogU2luZ2xl
IHZhbHVlIGZvciBiYWNrZ3JvdW5kLWltYWdlIHdpdGggZ3JhZGllbnRzIDogbGluZWFyLWdyYWRp
ZW50KGdyZWVuLCB3aGl0ZSkgMXgsIHJhZGlhbC1ncmFkaWVudChibHVlLCB3aGl0ZSkgMngKIFBB
U1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwpAQCAtMjYs
OSArMjYsOSBAQAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3Ip
IGlzICdGdW5jdGlvbicKIFBBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyA0CiBQQVNTIHN1YlJ1
bGUuY3NzVGV4dCBpcyAnbGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSknCi1QQVNTIHN1YlJ1
bGUuY3NzVGV4dCBpcyAnMScKK1BBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxZHBweCcKIFBBU1Mg
c3ViUnVsZS5jc3NUZXh0IGlzICdyYWRpYWwtZ3JhZGllbnQoYmx1ZSwgd2hpdGUpJwotUEFTUyBz
dWJSdWxlLmNzc1RleHQgaXMgJzInCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMmRwcHgnCiAK
IENvbWJpbmVkIGdyYWRpZW50IGFuZCBVUkwgOiB1cmwoJyNhJykgMXgsIGxpbmVhci1ncmFkaWVu
dChncmVlbiwgd2hpdGUpIDJ4CiBQQVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZSkgaXMg
J0NTU1ZhbHVlTGlzdCcKQEAgLTM2LDkgKzM2LDkgQEAKIFBBU1MganNXcmFwcGVyQ2xhc3MoaW1h
Z2VTZXRSdWxlLmNvbnN0cnVjdG9yKSBpcyAnRnVuY3Rpb24nCiBQQVNTIGltYWdlU2V0UnVsZS5s
ZW5ndGggaXMgNAogUEFTUyBzdWJSdWxlIGlzICdhJwotUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMg
JzEnCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMWRwcHgnCiBQQVNTIHN1YlJ1bGUuY3NzVGV4
dCBpcyAnbGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSknCi1QQVNTIHN1YlJ1bGUuY3NzVGV4
dCBpcyAnMicKK1BBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcyZHBweCcKIAogQ29tYmluZWQgZ3Jh
ZGllbnQgYW5kIFVSTCBpbiBjb250ZW50IDogdXJsKCcjYScpIDF4LCBsaW5lYXItZ3JhZGllbnQo
Z3JlZW4sIHdoaXRlKSAyeAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUpIGlzICdD
U1NWYWx1ZUxpc3QnCkBAIC00Niw5ICs0Niw5IEBACiBQQVNTIGpzV3JhcHBlckNsYXNzKGltYWdl
U2V0UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0Z1bmN0aW9uJwogUEFTUyBpbWFnZVNldFJ1bGUubGVu
Z3RoIGlzIDQKIFBBU1Mgc3ViUnVsZSBpcyAnYScKLVBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcx
JworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzFkcHB4JwogUEFTUyBzdWJSdWxlLmNzc1RleHQg
aXMgJ2xpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpJwotUEFTUyBzdWJSdWxlLmNzc1RleHQg
aXMgJzInCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMmRwcHgnCiAKIENvbWJpbmVkIGdyYWRp
ZW50IGFuZCBjcm9zcy1mYWRlIDogLXdlYmtpdC1jcm9zcy1mYWRlKHVybCgnI2EnKSwgdXJsKCcj
YicpLCA3MCUpIDF4LCBsaW5lYXItZ3JhZGllbnQoZ3JlZW4sIHdoaXRlKSAyeAogUEFTUyBqc1dy
YXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCkBAIC01Niw5ICs1Niwx
NyBAQAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3IpIGlzICdG
dW5jdGlvbicKIFBBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyA0CiBQQVNTIHN1YlJ1bGUgaXMg
J2EnCi1QQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMScKK1BBU1Mgc3ViUnVsZS5jc3NUZXh0IGlz
ICcxZHBweCcKIFBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICdsaW5lYXItZ3JhZGllbnQoZ3JlZW4s
IHdoaXRlKScKLVBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcyJworUEFTUyBzdWJSdWxlLmNzc1Rl
eHQgaXMgJzJkcHB4JworCitTaW5nbGUgdmFsdWUgZm9yIGJhY2tncm91bmQtaW1hZ2Ugd2l0aCBn
cmFkaWVudCBhbmQgZHBpIDogbGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSkgMTkyZHBpCitQ
QVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKK1BBU1Mg
anNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFBy
b3RvdHlwZScKK1BBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlLmNvbnN0cnVjdG9yKSBp
cyAnRnVuY3Rpb24nCitQQVNTIGltYWdlU2V0UnVsZS5sZW5ndGggaXMgMgorUEFTUyBzdWJSdWxl
LmNzc1RleHQgaXMgJ2xpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpJworUEFTUyBzdWJSdWxl
LmNzc1RleHQgaXMgJzE5MmRwaScKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIAog
VEVTVCBDT01QTEVURQpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNp
bmctZ2VuZXJhdGVkLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1h
Z2Utc2V0LXBhcnNpbmctZ2VuZXJhdGVkLmh0bWwJKHJldmlzaW9uIDI1NDk3MCkKKysrIExheW91
dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLWdlbmVyYXRlZC5odG1sCSh3b3JraW5n
IGNvcHkpCkBAIC03NCwzMiArNzQsMzggQEAKIHRlc3RJbWFnZVNldFJ1bGUoIlNpbmdsZSB2YWx1
ZSBmb3IgYmFja2dyb3VuZC1pbWFnZSB3aXRoIGdyYWRpZW50IiwKICAgICAgICAgICAgICAgICAi
YmFja2dyb3VuZC1pbWFnZSIsCiAgICAgICAgICAgICAgICAgImxpbmVhci1ncmFkaWVudChncmVl
biwgd2hpdGUpIDF4IiwgMiwKLSAgICAgICAgICAgICAgICBbImxpbmVhci1ncmFkaWVudChncmVl
biwgd2hpdGUpIiwgIjEiXSk7CisgICAgICAgICAgICAgICAgWyJsaW5lYXItZ3JhZGllbnQoZ3Jl
ZW4sIHdoaXRlKSIsICIxZHBweCJdKTsKIHRlc3RJbWFnZVNldFJ1bGUoIlNpbmdsZSB2YWx1ZSBm
b3IgY29udGVudCB3aXRoIGdyYWRpZW50IiwKICAgICAgICAgICAgICAgICAiYmFja2dyb3VuZC1p
bWFnZSIsCiAgICAgICAgICAgICAgICAgImxpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpIDF4
IiwgMiwKLSAgICAgICAgICAgICAgICBbImxpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpIiwg
IjEiXSk7CisgICAgICAgICAgICAgICAgWyJsaW5lYXItZ3JhZGllbnQoZ3JlZW4sIHdoaXRlKSIs
ICIxZHBweCJdKTsKIAogdGVzdEltYWdlU2V0UnVsZSgiU2luZ2xlIHZhbHVlIGZvciBiYWNrZ3Jv
dW5kLWltYWdlIHdpdGggZ3JhZGllbnRzIiwKICAgICAgICAgICAgICAgICAiYmFja2dyb3VuZC1p
bWFnZSIsCiAgICAgICAgICAgICAgICAgImxpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpIDF4
LCByYWRpYWwtZ3JhZGllbnQoYmx1ZSwgd2hpdGUpIDJ4IiwgNCwKLSAgICAgICAgICAgICAgICBb
ImxpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpIiwgIjEiLCAicmFkaWFsLWdyYWRpZW50KGJs
dWUsIHdoaXRlKSIsICIyIl0pOworICAgICAgICAgICAgICAgIFsibGluZWFyLWdyYWRpZW50KGdy
ZWVuLCB3aGl0ZSkiLCAiMWRwcHgiLCAicmFkaWFsLWdyYWRpZW50KGJsdWUsIHdoaXRlKSIsICIy
ZHBweCJdKTsKIAogdGVzdEltYWdlU2V0UnVsZSgiQ29tYmluZWQgZ3JhZGllbnQgYW5kIFVSTCIs
CiAgICAgICAgICAgICAgICAgImJhY2tncm91bmQtaW1hZ2UiLAogICAgICAgICAgICAgICAgICJ1
cmwoJyNhJykgMXgsIGxpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpIDJ4IiwgNCwKLSAgICAg
ICAgICAgICAgICBbImEiLCAiMSIsICJsaW5lYXItZ3JhZGllbnQoZ3JlZW4sIHdoaXRlKSIsICIy
Il0pOworICAgICAgICAgICAgICAgIFsiYSIsICIxZHBweCIsICJsaW5lYXItZ3JhZGllbnQoZ3Jl
ZW4sIHdoaXRlKSIsICIyZHBweCJdKTsKIAogdGVzdEltYWdlU2V0UnVsZSgiQ29tYmluZWQgZ3Jh
ZGllbnQgYW5kIFVSTCBpbiBjb250ZW50IiwKICAgICAgICAgICAgICAgICAiY29udGVudCIsCiAg
ICAgICAgICAgICAgICAgInVybCgnI2EnKSAxeCwgbGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0
ZSkgMngiLCA0LAotICAgICAgICAgICAgICAgIFsiYSIsICIxIiwgImxpbmVhci1ncmFkaWVudChn
cmVlbiwgd2hpdGUpIiwgIjIiXSk7CisgICAgICAgICAgICAgICAgWyJhIiwgIjFkcHB4IiwgImxp
bmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpIiwgIjJkcHB4Il0pOwogCiB0ZXN0SW1hZ2VTZXRS
dWxlKCJDb21iaW5lZCBncmFkaWVudCBhbmQgY3Jvc3MtZmFkZSIsCiAgICAgICAgICAgICAgICAg
ImJhY2tncm91bmQtaW1hZ2UiLAogICAgICAgICAgICAgICAgICItd2Via2l0LWNyb3NzLWZhZGUo
dXJsKCcjYScpLCB1cmwoJyNiJyksIDcwJSkgMXgsIGxpbmVhci1ncmFkaWVudChncmVlbiwgd2hp
dGUpIDJ4IiwgNCwKLSAgICAgICAgICAgICAgICBbImEiLCAiMSIsICJsaW5lYXItZ3JhZGllbnQo
Z3JlZW4sIHdoaXRlKSIsICIyIl0pOworICAgICAgICAgICAgICAgIFsiYSIsICIxZHBweCIsICJs
aW5lYXItZ3JhZGllbnQoZ3JlZW4sIHdoaXRlKSIsICIyZHBweCJdKTsKIAordGVzdEltYWdlU2V0
UnVsZSgiU2luZ2xlIHZhbHVlIGZvciBiYWNrZ3JvdW5kLWltYWdlIHdpdGggZ3JhZGllbnQgYW5k
IGRwaSIsCisgICAgICAgICAgICAgICAgImJhY2tncm91bmQtaW1hZ2UiLAorICAgICAgICAgICAg
ICAgICJsaW5lYXItZ3JhZGllbnQoZ3JlZW4sIHdoaXRlKSAxOTJkcGkiLCAyLAorICAgICAgICAg
ICAgICAgIFsibGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSkiLCAiMTkyZHBpIl0pOworCisK
IHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CiA8L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSIuLi8u
Li9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KSW5kZXg6IExheW91dFRlc3Rz
L2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNpbmcuaHRtbAkocmV2aXNpb24gMjU0OTcwKQorKysg
TGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNpbmcuaHRtbAkod29ya2luZyBjb3B5
KQpAQCAtNzQsNjMgKzc0LDgzIEBACiB0ZXN0SW1hZ2VTZXRSdWxlKCJTaW5nbGUgdmFsdWUgZm9y
IGJhY2tncm91bmQtaW1hZ2UiLAogICAgICAgICAgICAgICAgICJiYWNrZ3JvdW5kLWltYWdlIiwK
ICAgICAgICAgICAgICAgICAidXJsKCcjYScpIDF4IiwgMiwKLSAgICAgICAgICAgICAgICBbImEi
LCAiMSJdKTsKKyAgICAgICAgICAgICAgICBbImEiLCAiMWRwcHgiXSk7CiAKIHRlc3RJbWFnZVNl
dFJ1bGUoIk11bHRpcGxlIHZhbHVlcyBmb3IgYmFja2dyb3VuZC1pbWFnZSIsCiAgICAgICAgICAg
ICAgICAgImJhY2tncm91bmQtaW1hZ2UiLAogICAgICAgICAgICAgICAgICJ1cmwoJyNhJykgMXgs
IHVybCgnI2InKSAyeCIsIDQsCi0gICAgICAgICAgICAgICAgWyJhIiwgIjEiLCAiYiIsICIyIl0p
OworICAgICAgICAgICAgICAgIFsiYSIsICIxZHBweCIsICJiIiwgIjJkcHB4Il0pOwogCiB0ZXN0
SW1hZ2VTZXRSdWxlKCJTaW5nbGUgdmFsdWUgZm9yIGJhY2tncm91bmQtaW1hZ2Ugd2l0aG91dCB1
cmwoKSBmdW5jdGlvbiIsCiAgICAgICAgICAgICAgICAgImJhY2tncm91bmQtaW1hZ2UiLAogICAg
ICAgICAgICAgICAgICInI2EnIDF4IiwgMiwKLSAgICAgICAgICAgICAgICBbImEiLCAiMSJdKTsK
KyAgICAgICAgICAgICAgICBbImEiLCAiMWRwcHgiXSk7CiAKIHRlc3RJbWFnZVNldFJ1bGUoIk11
bHRpcGxlIHZhbHVlcyBmb3IgYmFja2dyb3VuZC1pbWFnZSB3aXRob3V0IHVybCgpIGZ1bmN0aW9u
IiwKICAgICAgICAgICAgICAgICAiYmFja2dyb3VuZC1pbWFnZSIsCiAgICAgICAgICAgICAgICAg
IicjYScgMXgsICcjYicgMngiLCA0LAotICAgICAgICAgICAgICAgIFsiYSIsICIxIiwgImIiLCAi
MiJdKTsKKyAgICAgICAgICAgICAgICBbImEiLCAiMWRwcHgiLCAiYiIsICIyZHBweCJdKTsKIAog
dGVzdEltYWdlU2V0UnVsZSgiTWl4IHZhbHVlcyB3aXRoIGFuZCB3aXRob3V0IHVybCgpIGZ1bmN0
aW9uIiwKICAgICAgICAgICAgICAgICAiYmFja2dyb3VuZC1pbWFnZSIsCiAgICAgICAgICAgICAg
ICAgIicjYScgMXgsIHVybCgnI2InKSAyeCIsIDQsCi0gICAgICAgICAgICAgICAgWyJhIiwgIjEi
LCAiYiIsICIyIl0pOworICAgICAgICAgICAgICAgIFsiYSIsICIxZHBweCIsICJiIiwgIjJkcHB4
Il0pOwogCiB0ZXN0SW1hZ2VTZXRSdWxlKCJNdWx0aXBsZSB2YWx1ZXMgZm9yIGJhY2tncm91bmQt
aW1hZ2UsIG91dCBvZiBvcmRlciIsCiAgICAgICAgICAgICAgICAgImJhY2tncm91bmQtaW1hZ2Ui
LAogICAgICAgICAgICAgICAgICJ1cmwoJyNjJykgM3gsIHVybCgnI2InKSAyeCwgdXJsKCcjYScp
IDF4IiwgNiwKLSAgICAgICAgICAgICAgICBbImMiLCAiMyIsICJiIiwgIjIiLCAiYSIsICIxIl0p
OworICAgICAgICAgICAgICAgIFsiYyIsICIzIiwgImIiLCAiMmRwcHgiLCAiYSIsICIxZHBweCJd
KTsKIAogdGVzdEltYWdlU2V0UnVsZSgiU2luZ2xlIHZhbHVlIGZvciBjb250ZW50IiwKICAgICAg
ICAgICAgICAgICAiY29udGVudCIsCiAgICAgICAgICAgICAgICAgInVybCgnI2EnKSAxeCIsIDIs
Ci0gICAgICAgICAgICAgICAgWyJhIiwgIjEiXSk7CisgICAgICAgICAgICAgICAgWyJhIiwgIjFk
cHB4Il0pOwogCiB0ZXN0SW1hZ2VTZXRSdWxlKCJNdWx0aXBsZSB2YWx1ZXMgZm9yIGNvbnRlbnQi
LAogICAgICAgICAgICAgICAgICJjb250ZW50IiwKICAgICAgICAgICAgICAgICAidXJsKCcjYScp
IDF4LCB1cmwoJyNiJykgMngiLCA0LAotICAgICAgICAgICAgICAgIFsiYSIsICIxIiwgImIiLCAi
MiJdKTsKKyAgICAgICAgICAgICAgICBbImEiLCAiMWRwcHgiLCAiYiIsICIyZHBweCJdKTsKIAog
dGVzdEltYWdlU2V0UnVsZSgiU2luZ2xlIHZhbHVlIGZvciBib3JkZXItaW1hZ2UiLAogICAgICAg
ICAgICAgICAgICItd2Via2l0LWJvcmRlci1pbWFnZSIsCiAgICAgICAgICAgICAgICAgInVybCgn
I2EnKSAxeCIsIDIsCi0gICAgICAgICAgICAgICAgWyJhIiwgIjEiXSk7CisgICAgICAgICAgICAg
ICAgWyJhIiwgIjFkcHB4Il0pOwogCiB0ZXN0SW1hZ2VTZXRSdWxlKCJNdWx0aXBsZSB2YWx1ZXMg
Zm9yIGJvcmRlci1pbWFnZSIsCiAgICAgICAgICAgICAgICAgIi13ZWJraXQtYm9yZGVyLWltYWdl
IiwKICAgICAgICAgICAgICAgICAidXJsKCcjYScpIDF4LCB1cmwoJyNiJykgMngiLCA0LAotICAg
ICAgICAgICAgICAgIFsiYSIsICIxIiwgImIiLCAiMiJdKTsKKyAgICAgICAgICAgICAgICBbImEi
LCAiMWRwcHgiLCAiYiIsICIyZHBweCJdKTsKIAogdGVzdEltYWdlU2V0UnVsZSgiU2luZ2xlIHZh
bHVlIGZvciAtd2Via2l0LW1hc2stYm94LWltYWdlIiwKICAgICAgICAgICAgICAgICAiLXdlYmtp
dC1tYXNrLWJveC1pbWFnZSIsCiAgICAgICAgICAgICAgICAgInVybCgnI2EnKSAxeCIsIDIsCi0g
ICAgICAgICAgICAgICAgWyJhIiwgIjEiXSk7CisgICAgICAgICAgICAgICAgWyJhIiwgIjFkcHB4
Il0pOwogCiB0ZXN0SW1hZ2VTZXRSdWxlKCJNdWx0aXBsZSB2YWx1ZXMgZm9yIC13ZWJraXQtbWFz
ay1ib3gtaW1hZ2UiLAogICAgICAgICAgICAgICAgICItd2Via2l0LW1hc2stYm94LWltYWdlIiwK
ICAgICAgICAgICAgICAgICAidXJsKCcjYScpIDF4LCB1cmwoJyNiJykgMngiLCA0LAotICAgICAg
ICAgICAgICAgIFsiYSIsICIxIiwgImIiLCAiMiJdKTsKKyAgICAgICAgICAgICAgICBbImEiLCAi
MWRwcHgiLCAiYiIsICIyZHBweCJdKTsKIAordGVzdEltYWdlU2V0UnVsZSgiU2luZ2xlIHZhbHVl
IHdpdGggZHBweCIsCisgICAgICAgICAgICAgICAgImJhY2tncm91bmQtaW1hZ2UiLAorICAgICAg
ICAgICAgICAgICJ1cmwoJyNhJykgMWRwcHgiLCAyLAorICAgICAgICAgICAgICAgIFsiYSIsICIx
ZHBweCJdKTsKKwordGVzdEltYWdlU2V0UnVsZSgiU2luZ2xlIHZhbHVlIHdpdGggZHBpIiwKKyAg
ICAgICAgICAgICAgICAiYmFja2dyb3VuZC1pbWFnZSIsCisgICAgICAgICAgICAgICAgInVybCgn
I2EnKSAxOTJkcGkiLCAyLAorICAgICAgICAgICAgICAgIFsiYSIsICIxOTJkcGkiXSk7CisKK3Rl
c3RJbWFnZVNldFJ1bGUoIlNpbmdsZSB2YWx1ZSB3aXRoIGRwY20iLAorICAgICAgICAgICAgICAg
ICJiYWNrZ3JvdW5kLWltYWdlIiwKKyAgICAgICAgICAgICAgICAidXJsKCcjYScpIDEwMmRwY20i
LCAyLAorICAgICAgICAgICAgICAgIFsiYSIsICIxMDJkcGNtIl0pOworCit0ZXN0SW1hZ2VTZXRS
dWxlKCJNdWx0aXBsZSB2YWx1ZXMgd2l0aCBkcGksIGRwcHggYW5kIHgiLAorICAgICAgICAgICAg
ICAgICJiYWNrZ3JvdW5kLWltYWdlIiwKKyAgICAgICAgICAgICAgICAidXJsKCcjYScpIDF4LCB1
cmwoJyNiJykgMmRwcHgsIHVybCgnI2MnKSAyNTBkcGkiLCA2LAorICAgICAgICAgICAgICAgIFsi
YSIsICIxZHBweCIsICJiIiwgIjJkcHB4IiwgImMiLCAiMjUwZHBpIl0pOworCiBzdWNjZXNzZnVs
bHlQYXJzZWQgPSB0cnVlOwogPC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2Vz
L2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9p
bWFnZS1zZXQtc2V0dGluZy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
ZmFzdC9jc3MvaW1hZ2Utc2V0LXNldHRpbmctZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAyNTQ5NzAp
CisrKyBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFnZS1zZXQtc2V0dGluZy1leHBlY3RlZC50eHQJ
KHdvcmtpbmcgY29weSkKQEAgLTUsMTkgKzUsMTkgQEAKIAogCiBTaW5nbGUgdmFsdWUgZm9yIGJh
Y2tncm91bmQtaW1hZ2UgOiB1cmwoImh0dHA6Ly93d3cud2Via2l0Lm9yZy9hIikgMXgKLVBBU1Mg
c3R5bGUuYmFja2dyb3VuZEltYWdlIGlzICJpbWFnZS1zZXQodXJsKFwiaHR0cDovL3d3dy53ZWJr
aXQub3JnL2FcIikgMXgpIgorUEFTUyBzdHlsZS5iYWNrZ3JvdW5kSW1hZ2UgaXMgImltYWdlLXNl
dCh1cmwoXCJodHRwOi8vd3d3LndlYmtpdC5vcmcvYVwiKSAxZHBweCkiCiAKIE11bHRpcGxlIHZh
bHVlcyBmb3IgYmFja2dyb3VuZC1pbWFnZSA6IHVybCgiaHR0cDovL3d3dy53ZWJraXQub3JnL2Ei
KSAxeCwgdXJsKCJodHRwOi8vd3d3LndlYmtpdC5vcmcvYiIpIDJ4Ci1QQVNTIHN0eWxlLmJhY2tn
cm91bmRJbWFnZSBpcyAiaW1hZ2Utc2V0KHVybChcImh0dHA6Ly93d3cud2Via2l0Lm9yZy9hXCIp
IDF4LCB1cmwoXCJodHRwOi8vd3d3LndlYmtpdC5vcmcvYlwiKSAyeCkiCitQQVNTIHN0eWxlLmJh
Y2tncm91bmRJbWFnZSBpcyAiaW1hZ2Utc2V0KHVybChcImh0dHA6Ly93d3cud2Via2l0Lm9yZy9h
XCIpIDFkcHB4LCB1cmwoXCJodHRwOi8vd3d3LndlYmtpdC5vcmcvYlwiKSAyZHBweCkiCiAKIE11
bHRpcGxlIHZhbHVlcyBmb3IgYmFja2dyb3VuZC1pbWFnZSwgb3V0IG9mIG9yZGVyIDogdXJsKCJo
dHRwOi8vd3d3LndlYmtpdC5vcmcvYyIpIDN4LCB1cmwoImh0dHA6Ly93d3cud2Via2l0Lm9yZy9i
IikgMngsIHVybCgiaHR0cDovL3d3dy53ZWJraXQub3JnL2EiKSAxeAotUEFTUyBzdHlsZS5iYWNr
Z3JvdW5kSW1hZ2UgaXMgImltYWdlLXNldCh1cmwoXCJodHRwOi8vd3d3LndlYmtpdC5vcmcvY1wi
KSAzeCwgdXJsKFwiaHR0cDovL3d3dy53ZWJraXQub3JnL2JcIikgMngsIHVybChcImh0dHA6Ly93
d3cud2Via2l0Lm9yZy9hXCIpIDF4KSIKK1BBU1Mgc3R5bGUuYmFja2dyb3VuZEltYWdlIGlzICJp
bWFnZS1zZXQodXJsKFwiaHR0cDovL3d3dy53ZWJraXQub3JnL2NcIikgM2RwcHgsIHVybChcImh0
dHA6Ly93d3cud2Via2l0Lm9yZy9iXCIpIDJkcHB4LCB1cmwoXCJodHRwOi8vd3d3LndlYmtpdC5v
cmcvYVwiKSAxZHBweCkiCiAKIER1cGxpY2F0ZSB2YWx1ZXMgZm9yIGJhY2tncm91bmQtaW1hZ2Ug
OiB1cmwoImh0dHA6Ly93d3cud2Via2l0Lm9yZy9jIikgMXgsIHVybCgiaHR0cDovL3d3dy53ZWJr
aXQub3JnL2IiKSAyeCwgdXJsKCJodHRwOi8vd3d3LndlYmtpdC5vcmcvYSIpIDF4Ci1QQVNTIHN0
eWxlLmJhY2tncm91bmRJbWFnZSBpcyAiaW1hZ2Utc2V0KHVybChcImh0dHA6Ly93d3cud2Via2l0
Lm9yZy9jXCIpIDF4LCB1cmwoXCJodHRwOi8vd3d3LndlYmtpdC5vcmcvYlwiKSAyeCwgdXJsKFwi
aHR0cDovL3d3dy53ZWJraXQub3JnL2FcIikgMXgpIgorUEFTUyBzdHlsZS5iYWNrZ3JvdW5kSW1h
Z2UgaXMgImltYWdlLXNldCh1cmwoXCJodHRwOi8vd3d3LndlYmtpdC5vcmcvY1wiKSAxZHBweCwg
dXJsKFwiaHR0cDovL3d3dy53ZWJraXQub3JnL2JcIikgMmRwcHgsIHVybChcImh0dHA6Ly93d3cu
d2Via2l0Lm9yZy9hXCIpIDFkcHB4KSIKIAogRnJhY3Rpb25hbCB2YWx1ZXMgZm9yIGJhY2tncm91
bmQtaW1hZ2UgOiB1cmwoImh0dHA6Ly93d3cud2Via2l0Lm9yZy9jIikgMC4yeCwgdXJsKCJodHRw
Oi8vd3d3LndlYmtpdC5vcmcvYiIpIDIuM3gsIHVybCgiaHR0cDovL3d3dy53ZWJraXQub3JnL2Ei
KSAxMi4zNDU2eAotUEFTUyBzdHlsZS5iYWNrZ3JvdW5kSW1hZ2UgaXMgImltYWdlLXNldCh1cmwo
XCJodHRwOi8vd3d3LndlYmtpdC5vcmcvY1wiKSAwLjJ4LCB1cmwoXCJodHRwOi8vd3d3LndlYmtp
dC5vcmcvYlwiKSAyLjN4LCB1cmwoXCJodHRwOi8vd3d3LndlYmtpdC5vcmcvYVwiKSAxMi4zNDU2
eCkiCitQQVNTIHN0eWxlLmJhY2tncm91bmRJbWFnZSBpcyAiaW1hZ2Utc2V0KHVybChcImh0dHA6
Ly93d3cud2Via2l0Lm9yZy9jXCIpIDAuMmRwcHgsIHVybChcImh0dHA6Ly93d3cud2Via2l0Lm9y
Zy9iXCIpIDIuM2RwcHgsIHVybChcImh0dHA6Ly93d3cud2Via2l0Lm9yZy9hXCIpIDEyLjM0NTZk
cHB4KSIKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIAogVEVTVCBDT01QTEVURQpJ
bmRleDogTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXNldHRpbmcuaHRtbAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFnZS1zZXQtc2V0dGluZy5odG1sCShyZXZp
c2lvbiAyNTQ5NzApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFnZS1zZXQtc2V0dGluZy5o
dG1sCSh3b3JraW5nIGNvcHkpCkBAIC0yMSw3ICsyMSw3IEBACiAgICAgcmV0dXJuIGNvbXB1dGVk
VmFsdWU7CiB9CiAKLWZ1bmN0aW9uIHRlc3RJbWFnZVNldFJ1bGUoZGVzY3JpcHRpb24sIHByb3Bl
cnR5LCBydWxlLCBleHBlY3RlZCkKK2Z1bmN0aW9uIHRlc3RJbWFnZVNldFJ1bGUoZGVzY3JpcHRp
b24sIHByb3BlcnR5LCBydWxlKQogewogICAgIGRlYnVnKCIiKTsKICAgICBkZWJ1ZyhkZXNjcmlw
dGlvbiArICIgOiAiICsgcnVsZSk7CkBAIC0yOCw3ICsyOCw3IEBACiAKICAgICB2YXIgZnVsbFJ1
bGUgPSAiaW1hZ2Utc2V0KCIgKyBydWxlICsgIikiOwogICAgIHN0eWxlID0gdGVzdENvbXB1dGVk
U3R5bGUocHJvcGVydHksIGZ1bGxSdWxlKTsKLSAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3N0
eWxlLmJhY2tncm91bmRJbWFnZScsIGZ1bGxSdWxlKTsKKyAgICBzaG91bGRCZUVxdWFsVG9TdHJp
bmcoJ3N0eWxlLmJhY2tncm91bmRJbWFnZScsIGZ1bGxSdWxlLnJlcGxhY2UoL3goPz1bLCldKS9n
LCAnZHBweCcpKTsKIH0KIAogdGVzdEltYWdlU2V0UnVsZSgiU2luZ2xlIHZhbHVlIGZvciBiYWNr
Z3JvdW5kLWltYWdlIiwKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC11bnBy
ZWZpeGVkLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0
LXVucHJlZml4ZWQuaHRtbAkocmV2aXNpb24gMjU0OTcwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9j
c3MvaW1hZ2Utc2V0LXVucHJlZml4ZWQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTYsNyArMTYs
NyBAQAogICAgIHJldHVybiBjb21wdXRlZFZhbHVlOwogfQogCi1mdW5jdGlvbiB0ZXN0SW1hZ2VT
ZXRSdWxlKGRlc2NyaXB0aW9uLCBwcm9wZXJ0eSwgcnVsZSwgZXhwZWN0ZWQpCitmdW5jdGlvbiB0
ZXN0SW1hZ2VTZXRSdWxlKGRlc2NyaXB0aW9uLCBwcm9wZXJ0eSwgcnVsZSkKIHsKICAgICBkZWJ1
ZygiIik7CiAgICAgZGVidWcoYCR7ZGVzY3JpcHRpb259IDogJHtydWxlfWApOwpAQCAtMjUsMTIg
KzI1LDEyIEBACiAgICAgaWYgKHByb3BlcnR5ID09ICdjdXJzb3InKQogICAgICAgICBydWxlICs9
ICcsIGRlZmF1bHQnOwogCi0gICAgaWYgKHRlc3RDb21wdXRlZFN0eWxlKHByb3BlcnR5LCBydWxl
KSA9PSBydWxlKQorICAgIGlmICh0ZXN0Q29tcHV0ZWRTdHlsZShwcm9wZXJ0eSwgcnVsZSkgPT0g
cnVsZS5yZXBsYWNlKC94KD89WywpXSkvZywgJ2RwcHgnKSkKICAgICAgICAgZGVidWcoIlVucHJl
Zml4ZWQ6IFBBU1MiKTsKICAgICBlbHNlCiAgICAgICAgIGRlYnVnKCJVbnByZWZpeGVkOiBGQUlM
Iik7CiAKLSAgICBpZiAodGVzdENvbXB1dGVkU3R5bGUocHJvcGVydHksICItd2Via2l0LSIgKyBy
dWxlKSA9PSBydWxlKQorICAgIGlmICh0ZXN0Q29tcHV0ZWRTdHlsZShwcm9wZXJ0eSwgIi13ZWJr
aXQtIiArIHJ1bGUpID09IHJ1bGUucmVwbGFjZSgveCg/PVssKV0pL2csICdkcHB4JykpCiAgICAg
ICAgIGRlYnVnKCJQcmVmaXhlZDogUEFTUyIpOwogICAgIGVsc2UKICAgICAgICAgZGVidWcoIlBy
ZWZpeGVkOiBGQUlMIik7CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2hpZHBpL2ltYWdlLXNldC11
bml0cy1leHBlY3RlZC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvaGlkcGkv
aW1hZ2Utc2V0LXVuaXRzLWV4cGVjdGVkLmh0bWwJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVz
dHMvZmFzdC9oaWRwaS9pbWFnZS1zZXQtdW5pdHMtZXhwZWN0ZWQuaHRtbAkod29ya2luZyBjb3B5
KQpAQCAtMCwwICsxLDI1IEBACis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdD4KKyAgICB3aW5kb3cu
b25sb2FkID0gKCkgPT4geworICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgICAg
IHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworICAgICAgICB0ZXN0UnVubmVyLnNldEJhY2tp
bmdTY2FsZUZhY3RvcigyLCAoKSA9PiBzZXRUaW1lb3V0KCgpID0+IHRlc3RSdW5uZXIubm90aWZ5
RG9uZSgpLCAwKSk7CisgICAgICB9CisgICAgfQorPC9zY3JpcHQ+CisKKzxzdHlsZT4KKyAgICAj
Zm9vIHsKKyAgICAgICAgd2lkdGg6MTAwcHg7CisgICAgICAgIGhlaWdodDoxMDBweDsKKyAgICAg
ICAgYmFja2dyb3VuZC1pbWFnZTogaW1hZ2Utc2V0KHVybCgncmVzb3VyY2VzL2JsdWUtMTAwLXB4
LXNxdWFyZS5wbmcnKSAxeCwgbGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSkgMngpOworICAg
IH0KKzwvc3R5bGU+Cis8L2hlYWQ+CisKKzxib2R5PgorICAgIDxkaXY+VGhpcyB0ZXN0IHBhc3Nl
cyBpZiB0aGUgZGl2IGJlbG93IGlzIGEgYmx1ZSAxMDBweCBzcXVhcmUgd2hlbiB0aGUgZGV2aWNl
U2NhbGVGYWN0b3IgaXMgMSwgYW5kIGlmIGl0IGlzIGEgMTAwcHggZ3JlZW4td2hpdGUgZ3JhZGll
bnQgc3F1YXJlIHdoZW4gdGhlIGRldmljZVNjYWxlRmFjdG9yIGlzIDIuPC9kaXY+CisgICAgPGRp
diBpZD1mb28+PC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+CgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBM
YXlvdXRUZXN0cy9mYXN0L2hpZHBpL2ltYWdlLXNldC11bml0cy1leHBlY3RlZC5odG1sCl9fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX18KQWRkZWQ6IHN2bjpleGVjdXRhYmxlCiMjIC0wLDAgKzEgIyMKKyoKXCBObyBuZXdsaW5l
IGF0IGVuZCBvZiBwcm9wZXJ0eQpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9oaWRwaS9pbWFnZS1z
ZXQtdW5pdHMuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2hpZHBpL2ltYWdl
LXNldC11bml0cy5odG1sCShub25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2Zhc3QvaGlkcGkv
aW1hZ2Utc2V0LXVuaXRzLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwyNSBAQAorPGh0
bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CisgICAgd2luZG93Lm9ubG9hZCA9ICgpID0+IHsKKyAgICAg
IGlmICh3aW5kb3cudGVzdFJ1bm5lcikgeworICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERv
bmUoKTsKKyAgICAgICAgdGVzdFJ1bm5lci5zZXRCYWNraW5nU2NhbGVGYWN0b3IoMiwgKCkgPT4g
c2V0VGltZW91dCgoKSA9PiB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKSwgMCkpOworICAgICAgfQor
ICAgIH0KKzwvc2NyaXB0PgorCis8c3R5bGU+CisgICAgI2ZvbyB7CisgICAgICAgIHdpZHRoOjEw
MHB4OworICAgICAgICBoZWlnaHQ6MTAwcHg7CisgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGlt
YWdlLXNldCh1cmwoJ3Jlc291cmNlcy9ibHVlLTEwMC1weC1zcXVhcmUucG5nJykgMWRwcHgsIGxp
bmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpIDE5MmRwaSk7CisgICAgfQorPC9zdHlsZT4KKzwv
aGVhZD4KKworPGJvZHk+CisgICAgPGRpdj5UaGlzIHRlc3QgcGFzc2VzIGlmIHRoZSBkaXYgYmVs
b3cgaXMgYSBibHVlIDEwMHB4IHNxdWFyZSB3aGVuIHRoZSBkZXZpY2VTY2FsZUZhY3RvciBpcyAx
LCBhbmQgaWYgaXQgaXMgYSAxMDBweCBncmVlbi13aGl0ZSBncmFkaWVudCBzcXVhcmUgd2hlbiB0
aGUgZGV2aWNlU2NhbGVGYWN0b3IgaXMgMi48L2Rpdj4KKyAgICA8ZGl2IGlkPWZvbz48L2Rpdj4K
KzwvYm9keT4KKzwvaHRtbD4KClByb3BlcnR5IGNoYW5nZXMgb246IExheW91dFRlc3RzL2Zhc3Qv
aGlkcGkvaW1hZ2Utc2V0LXVuaXRzLmh0bWwKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOmV4ZWN1dGFi
bGUKIyMgLTAsMCArMSAjIworKgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIHByb3BlcnR5CkluZGV4
OiBTb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
Q2hhbmdlTG9nCShyZXZpc2lvbiAyNTQ5NzApCisrKyBTb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cJ
KHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwzNyBAQAorMjAyMC0wMS0yMyAgTm9hbSBSb3NlbnRo
YWwgIDxub2FtQHdlYmtpdC5vcmc+CisKKyAgICAgICAgLXdlYmtpdC1pbWFnZS1zZXQgc2hvdWxk
IHN1cHBvcnQgcmVzb2x1dGlvbiB1bml0cyBvdGhlciB0aGFuICd4JworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAwMTIwCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgRGFyaW4gQWRsZXIuCisKKyAgICAgICAgTGV2ZXJhZ2VkIHByZXZpb3VzIHdvcmsgb24g
aW1hZ2UtcmVzb2x1dGlvbiB0byBlbmFibGUgZHBpL2RwcHgvZHBjbSBpbiBDU1MgaW1hZ2Utc2V0
LgorICAgICAgICBOb3cgdGhlIHNlY29uZCB2YWx1ZSBvZiBldmVyeSBlbnRyeSBpbiB0aGUgaW1h
Z2Utc2V0IGlzIHBhcnNlZCBsaWtlIGFueSByZXNvbHV0aW9uLAorICAgICAgICBhbGxvd2luZyAi
eCIgYXMgYSBzeW5vbmltIGZvciAiZHBweC4KKworICAgICAgICBUaGlzIGNoYW5nZXMgY29tcHV0
ZWQgc3R5bGUgYmVoYXZpb3IgZm9yIGltYWdlLXNldCAtICJ4IiByZXNvbHV0aW9uIHZhbHVlcyB3
aWxsIGJlIGNvbnZlcnRlZAorICAgICAgICB0byAiZHBweCIuIFRoaXMgaXMgaW4gbGluZSB3aXRo
IHRoZSBzcGlyaXQgb2YgY29tcHV0ZWQgdmFsdWVzLCB0aG91Z2ggaXQncyBub3Qgc3BlYydlZCBw
YXJ0aWN1bGFybHkuCisKKyAgICAgICAgVGVzdHM6IGZhc3QvaGlkcGkvaW1hZ2Utc2V0LXVuaXRz
Lmh0bWwKKworICAgICAgICAqIGNzcy9DU1NJbWFnZVNldFZhbHVlLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkNTU0ltYWdlU2V0VmFsdWU6OmZpbGxJbWFnZVNldCk6CisgICAgICAgIChXZWJDb3Jl
OjpDU1NJbWFnZVNldFZhbHVlOjp1cGRhdGVEZXZpY2VTY2FsZUZhY3Rvcik6CisgICAgICAgIChX
ZWJDb3JlOjpDU1NJbWFnZVNldFZhbHVlOjpjdXN0b21DU1NUZXh0IGNvbnN0KToKKyAgICAgICAg
ICAgICAgICBDb252ZXJ0IHZhbHVlcyB0byBkcHB4IGJlZm9yZSBzb3J0aW5nIHRoZW0gdGhlIGlt
YWdlIHNldC4KKyAgICAgICAgICAgICAgICBVc2UgZ2l2ZW4gQ1NTIHVuaXRzIGluIGNvbXB1dGVk
IHN0eWxlcyBpbnN0ZWFkIG9mIGhhcmRjb2RpbmcgIngiIAorCisgICAgICAgICogY3NzL0NTU1By
aW1pdGl2ZVZhbHVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmlzVmFsaWRDU1NVbml0VHlwZUZv
ckRvdWJsZUNvbnZlcnNpb24pOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJpbWl0aXZlVmFsdWU6
OmNvbnZlcnNpb25Ub0Nhbm9uaWNhbFVuaXRzU2NhbGVGYWN0b3IpOgorICAgICAgICAgICAgICAg
IEFsbG93IGNvbnZlcnNpb24gb2YgZHBpL2RwcHgvZHBjbSB0byBjYW5vbmljYWwgKGRwcHgpLgor
CisgICAgICAgICogY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6Q1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzOjpjb25zdW1lUmVzb2x1dGlv
bik6CisgICAgICAgIChXZWJDb3JlOjpDU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnM6OmNvbnN1bWVJ
bWFnZVNldCk6CisgICAgICAgICogY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMu
aDoKKyAgICAgICAgICAgICAgICBDb25zdW1lIGFueSByZXNvbHV0aW9uIHdoZW4gcGFyc2luZyBp
bWFnZS1zZXQuCisKIDIwMjAtMDEtMjMgIFl1c3VrZSBTdXp1a2kgIDx5c3V6dWtpQGFwcGxlLmNv
bT4KIAogICAgICAgICBub21vZHVsZSBzY3JpcHRzIGFyZSBmZXRjaGVkIGluIHNvbWUgY2FzZXMg
KHdpdGggZW1wdHkgY2FjaGUgb3IgaW4gbmV3IHRhYikKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NJbWFnZVNldFZhbHVlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTSW1hZ2VTZXRWYWx1ZS5jcHAJKHJldmlzaW9uIDI1NDk3MCkKKysrIFNvdXJjZS9XZWJDb3Jl
L2Nzcy9DU1NJbWFnZVNldFZhbHVlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTAsMjAgKzUwLDE1
IEBACiB2b2lkIENTU0ltYWdlU2V0VmFsdWU6OmZpbGxJbWFnZVNldCgpCiB7CiAgICAgc2l6ZV90
IGxlbmd0aCA9IHRoaXMtPmxlbmd0aCgpOwotICAgIHNpemVfdCBpID0gMDsKLSAgICB3aGlsZSAo
aSA8IGxlbmd0aCkgeworICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpICsgMSA8IGxlbmd0aDsgaSAr
PSAyKSB7CiAgICAgICAgIENTU1ZhbHVlKiBpbWFnZVZhbHVlID0gaXRlbShpKTsKKyAgICAgICAg
Q1NTVmFsdWUqIHNjYWxlRmFjdG9yVmFsdWUgPSBpdGVtKGkgKyAxKTsKKwogICAgICAgICBBU1NF
UlQoaXM8Q1NTSW1hZ2VWYWx1ZT4oaW1hZ2VWYWx1ZSkgfHwgaXM8Q1NTSW1hZ2VHZW5lcmF0b3JW
YWx1ZT4oaW1hZ2VWYWx1ZSkpOwotICAgICAgICArK2k7Ci0gICAgICAgIEFTU0VSVF9XSVRIX1NF
Q1VSSVRZX0lNUExJQ0FUSU9OKGkgPCBsZW5ndGgpOwotICAgICAgICBDU1NWYWx1ZSogc2NhbGVG
YWN0b3JWYWx1ZSA9IGl0ZW0oaSk7Ci0gICAgICAgIGZsb2F0IHNjYWxlRmFjdG9yID0gZG93bmNh
c3Q8Q1NTUHJpbWl0aXZlVmFsdWU+KCpzY2FsZUZhY3RvclZhbHVlKS5mbG9hdFZhbHVlKCk7Cisg
ICAgICAgIEFTU0VSVChpczxDU1NQcmltaXRpdmVWYWx1ZT4oc2NhbGVGYWN0b3JWYWx1ZSkpOwog
Ci0gICAgICAgIEltYWdlV2l0aFNjYWxlIGltYWdlOwotICAgICAgICBpbWFnZS52YWx1ZSA9IGlt
YWdlVmFsdWU7Ci0gICAgICAgIGltYWdlLnNjYWxlRmFjdG9yID0gc2NhbGVGYWN0b3I7Ci0gICAg
ICAgIG1faW1hZ2VzSW5TZXQuYXBwZW5kKGltYWdlKTsKLSAgICAgICAgKytpOworICAgICAgICBm
bG9hdCBzY2FsZUZhY3RvciA9IGRvd25jYXN0PENTU1ByaW1pdGl2ZVZhbHVlPihzY2FsZUZhY3Rv
clZhbHVlKS0+ZmxvYXRWYWx1ZShDU1NVbml0VHlwZTo6Q1NTX0RQUFgpOworICAgICAgICBtX2lt
YWdlc0luU2V0LmFwcGVuZCh7aW1hZ2VWYWx1ZSwgc2NhbGVGYWN0b3J9KTsKICAgICB9CiAKICAg
ICAvLyBTb3J0IHRoZSBpbWFnZXMgc28gdGhhdCB0aGV5IGFyZSBzdG9yZWQgaW4gb3JkZXIgZnJv
bSBsb3dlc3QgcmVzb2x1dGlvbiB0byBoaWdoZXN0LgpAQCAtMTA2LDcgKzEwMSw2IEBACiAKIHZv
aWQgQ1NTSW1hZ2VTZXRWYWx1ZTo6dXBkYXRlRGV2aWNlU2NhbGVGYWN0b3IoY29uc3QgRG9jdW1l
bnQmIGRvY3VtZW50KQogewotCiAgICAgLy8gRklYTUU6IEluIHRoZSBmdXR1cmUsIHdlIHdhbnQg
dG8gdGFrZSBtdWNoIG1vcmUgdGhhbiBkZXZpY2VTY2FsZUZhY3RvciBpbnRvIGFjb3VudCBoZXJl
LgogICAgIC8vIEFsbCBmb3JtcyBvZiBzY2FsZSBzaG91bGQgYmUgaW5jbHVkZWQ6IFBhZ2U6OnBh
Z2VTY2FsZUZhY3RvcigpLCBGcmFtZTo6cGFnZVpvb21GYWN0b3IoKSwKICAgICAvLyBhbmQgYW55
IENTUyB0cmFuc2Zvcm1zLiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
ODE2OTgKQEAgLTEzNiwyNCArMTMwLDExIEBACiAgICAgcmVzdWx0LmFwcGVuZExpdGVyYWwoImlt
YWdlLXNldCgiKTsKIAogICAgIHNpemVfdCBsZW5ndGggPSB0aGlzLT5sZW5ndGgoKTsKLSAgICBz
aXplX3QgaSA9IDA7Ci0gICAgd2hpbGUgKGkgPCBsZW5ndGgpIHsKKyAgICBmb3IgKHNpemVfdCBp
ID0gMDsgaSArIDwgbGVuZ3RoOyBpICs9IDIpIHsKICAgICAgICAgaWYgKGkgPiAwKQogICAgICAg
ICAgICAgcmVzdWx0LmFwcGVuZExpdGVyYWwoIiwgIik7CiAKLSAgICAgICAgY29uc3QgQ1NTVmFs
dWUqIGltYWdlVmFsdWUgPSBpdGVtKGkpOwotICAgICAgICByZXN1bHQuYXBwZW5kKGltYWdlVmFs
dWUtPmNzc1RleHQoKSk7Ci0gICAgICAgIHJlc3VsdC5hcHBlbmQoJyAnKTsKLQotICAgICAgICAr
K2k7Ci0gICAgICAgIEFTU0VSVF9XSVRIX1NFQ1VSSVRZX0lNUExJQ0FUSU9OKGkgPCBsZW5ndGgp
OwotICAgICAgICBjb25zdCBDU1NWYWx1ZSogc2NhbGVGYWN0b3JWYWx1ZSA9IGl0ZW0oaSk7Ci0g
ICAgICAgIHJlc3VsdC5hcHBlbmQoc2NhbGVGYWN0b3JWYWx1ZS0+Y3NzVGV4dCgpKTsKLSAgICAg
ICAgLy8gRklYTUU6IEV2ZW50dWFsbHkgdGhlIHNjYWxlIGZhY3RvciBzaG91bGQgY29udGFpbiBp
dCdzIG93biB1bml0IGh0dHA6Ly93a2IudWcvMTAwMTIwLgotICAgICAgICAvLyBGb3Igbm93ICd4
JyBpcyBoYXJkLWNvZGVkIGluIHRoZSBwYXJzZXIsIHNvIHdlIGhhcmQtY29kZSBpdCBoZXJlIHRv
by4KLSAgICAgICAgcmVzdWx0LmFwcGVuZCgneCcpOwotCi0gICAgICAgICsraTsKKyAgICAgICAg
cmVzdWx0LmFwcGVuZChpdGVtKGkpLT5jc3NUZXh0KCksICcgJywgaXRlbShpICsgMSktPmNzc1Rl
eHQoKSk7CiAgICAgfQogCiAgICAgcmVzdWx0LmFwcGVuZCgnKScpOwpJbmRleDogU291cmNlL1dl
YkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWUuY3BwCShyZXZpc2lvbiAyNTQ5NzApCisrKyBTb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC04
MSwxNSArODEsMTAgQEAKICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfVk1BWDoKICAgICBjYXNl
IENTU1VuaXRUeXBlOjpDU1NfVk1JTjoKICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfVlc6Ci0g
ICAgICAgIHJldHVybiB0cnVlOwogICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19EUENNOgogICAg
IGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19EUEk6CiAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0RQ
UFg6Ci0jaWYgRU5BQkxFKENTU19JTUFHRV9SRVNPTFVUSU9OKSB8fCBFTkFCTEUoUkVTT0xVVElP
Tl9NRURJQV9RVUVSWSkKICAgICAgICAgcmV0dXJuIHRydWU7Ci0jZWxzZQotICAgICAgICByZXR1
cm4gZmFsc2U7Ci0jZW5kaWYKICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfQVRUUjoKICAgICBj
YXNlIENTU1VuaXRUeXBlOjpDU1NfQ09VTlRFUjoKICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1Nf
Q09VTlRFUl9OQU1FOgpAQCAtNzAzLDYgKzY5OCw3IEBACiAgICAgY2FzZSBDU1NVbml0VHlwZTo6
Q1NTX0RFRzoKICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfTVM6CiAgICAgY2FzZSBDU1NVbml0
VHlwZTo6Q1NTX0haOgorICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19EUFBYOgogICAgICAgICBi
cmVhazsKICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfQ006CiAgICAgICAgIGZhY3RvciA9IGNz
c1BpeGVsc1BlckluY2ggLyBjbVBlckluY2g7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9jc3MvcGFy
c2VyL0NTU1Byb3BlcnR5UGFyc2VySGVscGVycy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMuY3BwCShyZXZpc2lvbiAy
NTQ5NzApCisrKyBTb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VySGVs
cGVycy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQzOSw3ICs0MzksNyBAQAogICAgIHJldHVybiBu
dWxscHRyOwogfQogCi1SZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IGNvbnN1bWVSZXNvbHV0aW9u
KENTU1BhcnNlclRva2VuUmFuZ2UmIHJhbmdlKQorUmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiBj
b25zdW1lUmVzb2x1dGlvbihDU1NQYXJzZXJUb2tlblJhbmdlJiByYW5nZSwgQWxsb3dYUmVzb2x1
dGlvblVuaXQgYWxsb3dYKQogewogICAgIGNvbnN0IENTU1BhcnNlclRva2VuJiB0b2tlbiA9IHJh
bmdlLnBlZWsoKTsKICAgICAvLyBVbmxpa2UgdGhlIG90aGVyIHR5cGVzLCBjYWxjKCkgZG9lcyBu
b3Qgd29yayB3aXRoIDxyZXNvbHV0aW9uPi4KQEAgLTQ0OCw2ICs0NDgsOSBAQAogICAgIENTU1Vu
aXRUeXBlIHVuaXQgPSB0b2tlbi51bml0VHlwZSgpOwogICAgIGlmICh1bml0ID09IENTU1VuaXRU
eXBlOjpDU1NfRFBQWCB8fCB1bml0ID09IENTU1VuaXRUeXBlOjpDU1NfRFBJIHx8IHVuaXQgPT0g
Q1NTVW5pdFR5cGU6OkNTU19EUENNKQogICAgICAgICByZXR1cm4gQ1NTVmFsdWVQb29sOjpzaW5n
bGV0b24oKS5jcmVhdGVWYWx1ZShyYW5nZS5jb25zdW1lSW5jbHVkaW5nV2hpdGVzcGFjZSgpLm51
bWVyaWNWYWx1ZSgpLCB1bml0KTsKKyAgICBpZiAoYWxsb3dYID09IEFsbG93WFJlc29sdXRpb25V
bml0OjpBbGxvdyAmJiB0b2tlbi52YWx1ZSgpID09ICJ4IikKKyAgICAgICAgcmV0dXJuIENTU1Zh
bHVlUG9vbDo6c2luZ2xldG9uKCkuY3JlYXRlVmFsdWUocmFuZ2UuY29uc3VtZUluY2x1ZGluZ1do
aXRlc3BhY2UoKS5udW1lcmljVmFsdWUoKSwgQ1NTVW5pdFR5cGU6OkNTU19EUFBYKTsKKwogICAg
IHJldHVybiBudWxscHRyOwogfQogCkBAIC0xNDg1LDIyICsxNDg4LDE3IEBACiAgICAgQ1NTUGFy
c2VyVG9rZW5SYW5nZSBhcmdzID0gY29uc3VtZUZ1bmN0aW9uKHJhbmdlQ29weSk7CiAgICAgUmVm
UHRyPENTU0ltYWdlU2V0VmFsdWU+IGltYWdlU2V0ID0gQ1NTSW1hZ2VTZXRWYWx1ZTo6Y3JlYXRl
KCk7CiAgICAgZG8gewotICAgICAgICBSZWZQdHI8Q1NTVmFsdWU+IGltYWdlID0gY29uc3VtZUlt
YWdlKGFyZ3MsIGNvbnRleHQsIChhbGxvd2VkSW1hZ2VUeXBlIHwgQWxsb3dlZEltYWdlVHlwZTo6
UmF3U3RyaW5nQXNVUkwpIC0gQWxsb3dlZEltYWdlVHlwZTo6SW1hZ2VTZXQpOworICAgICAgICBh
dXRvIGltYWdlID0gY29uc3VtZUltYWdlKGFyZ3MsIGNvbnRleHQsIChhbGxvd2VkSW1hZ2VUeXBl
IHwgQWxsb3dlZEltYWdlVHlwZTo6UmF3U3RyaW5nQXNVUkwpIC0gQWxsb3dlZEltYWdlVHlwZTo6
SW1hZ2VTZXQpOwogICAgICAgICBpZiAoIWltYWdlKQogICAgICAgICAgICAgcmV0dXJuIG51bGxw
dHI7CiAKICAgICAgICAgaW1hZ2VTZXQtPmFwcGVuZChpbWFnZS5yZWxlYXNlTm9uTnVsbCgpKTsK
IAotICAgICAgICBjb25zdCBDU1NQYXJzZXJUb2tlbiYgdG9rZW4gPSBhcmdzLmNvbnN1bWVJbmNs
dWRpbmdXaGl0ZXNwYWNlKCk7Ci0gICAgICAgIGlmICh0b2tlbi50eXBlKCkgIT0gRGltZW5zaW9u
VG9rZW4pCisgICAgICAgIGF1dG8gcmVzb2x1dGlvbiA9IGNvbnN1bWVSZXNvbHV0aW9uKGFyZ3Ms
IEFsbG93WFJlc29sdXRpb25Vbml0OjpBbGxvdyk7CisgICAgICAgIGlmICghcmVzb2x1dGlvbiB8
fCByZXNvbHV0aW9uLT5mbG9hdFZhbHVlKCkgPD0gMCkKICAgICAgICAgICAgIHJldHVybiBudWxs
cHRyOwotICAgICAgICBpZiAodG9rZW4udmFsdWUoKSAhPSAieCIpCi0gICAgICAgICAgICByZXR1
cm4gbnVsbHB0cjsKLSAgICAgICAgQVNTRVJUKHRva2VuLnVuaXRUeXBlKCkgPT0gQ1NTVW5pdFR5
cGU6OkNTU19VTktOT1dOKTsKLSAgICAgICAgZG91YmxlIGltYWdlU2NhbGVGYWN0b3IgPSB0b2tl
bi5udW1lcmljVmFsdWUoKTsKLSAgICAgICAgaWYgKGltYWdlU2NhbGVGYWN0b3IgPD0gMCkKLSAg
ICAgICAgICAgIHJldHVybiBudWxscHRyOwotICAgICAgICBpbWFnZVNldC0+YXBwZW5kKENTU1Zh
bHVlUG9vbDo6c2luZ2xldG9uKCkuY3JlYXRlVmFsdWUoaW1hZ2VTY2FsZUZhY3RvciwgQ1NTVW5p
dFR5cGU6OkNTU19OVU1CRVIpKTsKKworICAgICAgICBpbWFnZVNldC0+YXBwZW5kKHJlc29sdXRp
b24ucmVsZWFzZU5vbk51bGwoKSk7CiAgICAgfSB3aGlsZSAoY29uc3VtZUNvbW1hSW5jbHVkaW5n
V2hpdGVzcGFjZShhcmdzKSk7CiAgICAgaWYgKCFhcmdzLmF0RW5kKCkpCiAgICAgICAgIHJldHVy
biBudWxscHRyOwpJbmRleDogU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBh
cnNlckhlbHBlcnMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NT
U1Byb3BlcnR5UGFyc2VySGVscGVycy5oCShyZXZpc2lvbiAyNTQ5NzApCisrKyBTb3VyY2UvV2Vi
Q29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VySGVscGVycy5oCSh3b3JraW5nIGNvcHkp
CkBAIC01MiwxMCArNTIsOCBAQAogLy8gY29uc3VtZUZ1bmN0aW9uIGV4cGVjdHMgdGhlIHJhbmdl
IHN0YXJ0cyB3aXRoIGEgRnVuY3Rpb25Ub2tlbi4KIENTU1BhcnNlclRva2VuUmFuZ2UgY29uc3Vt
ZUZ1bmN0aW9uKENTU1BhcnNlclRva2VuUmFuZ2UmKTsKIAotZW51bSBjbGFzcyBVbml0bGVzc1F1
aXJrIHsKLSAgICBBbGxvdywKLSAgICBGb3JiaWQKLX07CitlbnVtIGNsYXNzIFVuaXRsZXNzUXVp
cmsgeyBBbGxvdywgRm9yYmlkIH07CitlbnVtIGNsYXNzIEFsbG93WFJlc29sdXRpb25Vbml0IHsg
QWxsb3csIEZvcmJpZCB9OwogCiBSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IGNvbnN1bWVJbnRl
Z2VyKENTU1BhcnNlclRva2VuUmFuZ2UmLCBkb3VibGUgbWluaW11bVZhbHVlID0gLXN0ZDo6bnVt
ZXJpY19saW1pdHM8ZG91YmxlPjo6bWF4KCkpOwogUmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiBj
b25zdW1lUG9zaXRpdmVJbnRlZ2VyKENTU1BhcnNlclRva2VuUmFuZ2UmKTsKQEAgLTY3LDcgKzY1
LDcgQEAKIFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gY29uc3VtZUxlbmd0aE9yUGVyY2VudChD
U1NQYXJzZXJUb2tlblJhbmdlJiwgQ1NTUGFyc2VyTW9kZSwgVmFsdWVSYW5nZSwgVW5pdGxlc3NR
dWlyayA9IFVuaXRsZXNzUXVpcms6OkZvcmJpZCk7CiBSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+
IGNvbnN1bWVBbmdsZShDU1NQYXJzZXJUb2tlblJhbmdlJiwgQ1NTUGFyc2VyTW9kZSwgVW5pdGxl
c3NRdWlyayA9IFVuaXRsZXNzUXVpcms6OkZvcmJpZCk7CiBSZWZQdHI8Q1NTUHJpbWl0aXZlVmFs
dWU+IGNvbnN1bWVUaW1lKENTU1BhcnNlclRva2VuUmFuZ2UmLCBDU1NQYXJzZXJNb2RlLCBWYWx1
ZVJhbmdlLCBVbml0bGVzc1F1aXJrID0gVW5pdGxlc3NRdWlyazo6Rm9yYmlkKTsKLVJlZlB0cjxD
U1NQcmltaXRpdmVWYWx1ZT4gY29uc3VtZVJlc29sdXRpb24oQ1NTUGFyc2VyVG9rZW5SYW5nZSYp
OworUmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiBjb25zdW1lUmVzb2x1dGlvbihDU1NQYXJzZXJU
b2tlblJhbmdlJiwgQWxsb3dYUmVzb2x1dGlvblVuaXQgPSBBbGxvd1hSZXNvbHV0aW9uVW5pdDo6
Rm9yYmlkKTsKIAogUmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiBjb25zdW1lSWRlbnQoQ1NTUGFy
c2VyVG9rZW5SYW5nZSYpOwogUmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiBjb25zdW1lSWRlbnRS
YW5nZShDU1NQYXJzZXJUb2tlblJhbmdlJiwgQ1NTVmFsdWVJRCBsb3dlciwgQ1NTVmFsdWVJRCB1
cHBlcik7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>388834</attachid>
            <date>2020-01-26 23:51:55 -0800</date>
            <delta_ts>2020-01-27 23:11:54 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>patch.diff</filename>
            <type>text/plain</type>
            <size>34950</size>
            <attacher name="Noam Rosenthal">noam</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDI1NDk3MCkKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29y
a2luZyBjb3B5KQpAQCAtMSwzICsxLDI3IEBACisyMDIwLTAxLTIzICBOb2FtIFJvc2VudGhhbCAg
PG5vYW1Ad2Via2l0Lm9yZz4KKworICAgICAgICAtd2Via2l0LWltYWdlLXNldCBzaG91bGQgc3Vw
cG9ydCByZXNvbHV0aW9uIHVuaXRzIG90aGVyIHRoYW4gJ3gnCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDAxMjAKKworICAgICAgICBSZXZpZXdlZCBi
eSBEYXJpbiBBZGxlci4KKworICAgICAgICBIYWQgdG8gbW9kaWZ5IHNldmVyYWwgaW1hZ2Utc2V0
IHBhcnNpbmcgdGVzdHMgYmVjYXVzZSBvZiB0aGUgYmVoYXZpb3IgY2hhbmdlIGluCisgICAgICAg
IGNvbXB1dGVkIHN0eWxlICh4ID0+IGRwcHgpLgorCisgICAgICAgIEFsc28gYWRkZWQgYSBjb3Vw
bGUgb2YgcGFyc2luZy9yZW5kZXJpbmcgdGVzdHMgc3BlY2lmaWNhbGx5IHRvIHRlc3QgdGhlIG5l
dyBiZWhhdmlvcgorICAgICAgICBvZiBkcGkvZHBjbS9kcHB4LgorCisgICAgICAgICogZmFzdC9j
c3MvY3Vyc29yLXBhcnNpbmctaW1hZ2Utc2V0LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0
L2Nzcy9jdXJzb3ItcGFyc2luZy1pbWFnZS1zZXQuaHRtbDoKKyAgICAgICAgKiBmYXN0L2Nzcy9p
bWFnZS1zZXQtcGFyc2luZy1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9jc3MvaW1hZ2Ut
c2V0LXBhcnNpbmctaW52YWxpZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9jc3MvaW1h
Z2Utc2V0LXBhcnNpbmcuaHRtbDoKKyAgICAgICAgKiBmYXN0L2Nzcy9pbWFnZS1zZXQtc2V0dGlu
Zy1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9jc3MvaW1hZ2Utc2V0LXNldHRpbmcuaHRt
bDoKKyAgICAgICAgKiBmYXN0L2Nzcy9pbWFnZS1zZXQtdW5wcmVmaXhlZC5odG1sOgorICAgICAg
ICAqIGZhc3QvaGlkcGkvaW1hZ2Utc2V0LXVuaXRzLWV4cGVjdGVkLmh0bWw6IEFkZGVkLgorICAg
ICAgICAqIGZhc3QvaGlkcGkvaW1hZ2Utc2V0LXVuaXRzLmh0bWw6IEFkZGVkLgorCiAyMDIwLTAx
LTIzICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+CiAKICAgICAgICAgbm9tb2R1
bGUgc2NyaXB0cyBhcmUgZmV0Y2hlZCBpbiBzb21lIGNhc2VzICh3aXRoIGVtcHR5IGNhY2hlIG9y
IGluIG5ldyB0YWIpCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9jdXJzb3ItcGFyc2luZy1p
bWFnZS1zZXQtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvY3Nz
L2N1cnNvci1wYXJzaW5nLWltYWdlLXNldC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDI1NDk3MCkK
KysrIExheW91dFRlc3RzL2Zhc3QvY3NzL2N1cnNvci1wYXJzaW5nLWltYWdlLXNldC1leHBlY3Rl
ZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTYsMTAgKzYsMTAgQEAKIEJ1ZyA5OTQ5MwogCiBUZXN0
IGEgYnVuY2ggb2YgY3Vyc29yIHJ1bGVzIHdoaWNoIHNob3VsZCByb3VuZC10cmlwIGV4YWN0bHku
Ci1QQVNTIHN0eWxlLmNzc1RleHQgaXMgImN1cnNvcjogaW1hZ2Utc2V0KHVybChcImZpbGU6Ly8v
Zm9vLnBuZ1wiKSAxeCksIGF1dG87IgotUEFTUyBzdHlsZS5jc3NUZXh0IGlzICJjdXJzb3I6IGlt
YWdlLXNldCh1cmwoXCJmaWxlOi8vL2Zvby5wbmdcIikgMXgsIHVybChcImZpbGU6Ly8vZm9vMngu
cG5nXCIpIDJ4KSwgYXV0bzsiCi1QQVNTIHN0eWxlLmNzc1RleHQgaXMgImN1cnNvcjogaW1hZ2Ut
c2V0KHVybChcImZpbGU6Ly8vZm9vLnBuZ1wiKSAxeCwgdXJsKFwiZmlsZTovLy9mb28yeC5wbmdc
IikgMngpIDIgMywgYXV0bzsiCi1QQVNTIHN0eWxlLmNzc1RleHQgaXMgImN1cnNvcjogaW1hZ2Ut
c2V0KHVybChcImZpbGU6Ly8vZm9vMDMucG5nXCIpIDAuM3gsIHVybChcImZpbGU6Ly8vZm9vNXgu
cG5nXCIpIDV4KSA2IDUsIHVybChcImZpbGU6Ly8vZm9vLnBuZ1wiKSAxMiAzLCBwb2ludGVyOyIK
K1BBU1Mgc3R5bGUuY3NzVGV4dCBpcyAiY3Vyc29yOiBpbWFnZS1zZXQodXJsKFwiZmlsZTovLy9m
b28ucG5nXCIpIDFkcHB4KSwgYXV0bzsiCitQQVNTIHN0eWxlLmNzc1RleHQgaXMgImN1cnNvcjog
aW1hZ2Utc2V0KHVybChcImZpbGU6Ly8vZm9vLnBuZ1wiKSAxZHBweCwgdXJsKFwiZmlsZTovLy9m
b28yeC5wbmdcIikgMmRwcHgpLCBhdXRvOyIKK1BBU1Mgc3R5bGUuY3NzVGV4dCBpcyAiY3Vyc29y
OiBpbWFnZS1zZXQodXJsKFwiZmlsZTovLy9mb28ucG5nXCIpIDFkcHB4LCB1cmwoXCJmaWxlOi8v
L2ZvbzJ4LnBuZ1wiKSAyZHBweCkgMiAzLCBhdXRvOyIKK1BBU1Mgc3R5bGUuY3NzVGV4dCBpcyAi
Y3Vyc29yOiBpbWFnZS1zZXQodXJsKFwiZmlsZTovLy9mb28wMy5wbmdcIikgMC4zZHBweCwgdXJs
KFwiZmlsZTovLy9mb281eC5wbmdcIikgNWRwcHgpIDYgNSwgdXJsKFwiZmlsZTovLy9mb28ucG5n
XCIpIDEyIDMsIHBvaW50ZXI7IgogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCiBU
RVNUIENPTVBMRVRFCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9jdXJzb3ItcGFyc2luZy1p
bWFnZS1zZXQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9jdXJzb3It
cGFyc2luZy1pbWFnZS1zZXQuaHRtbAkocmV2aXNpb24gMjU0OTcwKQorKysgTGF5b3V0VGVzdHMv
ZmFzdC9jc3MvY3Vyc29yLXBhcnNpbmctaW1hZ2Utc2V0Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAg
LTIxLDcgKzIxLDcgQEAKIHsKICAgICB2YXIgY3NzVGV4dCA9IG1ha2VDdXJzb3JSdWxlKHJ1bGUp
OwogICAgIHN0eWxlID0gcm91bmR0cmlwQ3NzUnVsZShjc3NUZXh0KTsKLSAgICBzaG91bGRCZUVx
dWFsVG9TdHJpbmcoJ3N0eWxlLmNzc1RleHQnLCBjc3NUZXh0KTsKKyAgICBzaG91bGRCZUVxdWFs
VG9TdHJpbmcoJ3N0eWxlLmNzc1RleHQnLCBjc3NUZXh0LnJlcGxhY2UoL3goPz1bLCldKS9nLCAn
ZHBweCcpKTsKIH0KIAogZnVuY3Rpb24gcm91bmR0cmlwQ3NzUnVsZShjc3NUZXh0KQpJbmRleDog
TGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNpbmctZXhwZWN0ZWQudHh0Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLWV4cGVjdGVk
LnR4dAkocmV2aXNpb24gMjU0OTcwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0
LXBhcnNpbmctZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xMCw3ICsxMCw3IEBACiBQ
QVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0Z1bmN0aW9u
JwogUEFTUyBpbWFnZVNldFJ1bGUubGVuZ3RoIGlzIDIKIFBBU1Mgc3ViUnVsZSBpcyAnYScKLVBB
U1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxJworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzFkcHB4
JwogCiBNdWx0aXBsZSB2YWx1ZXMgZm9yIGJhY2tncm91bmQtaW1hZ2UgOiB1cmwoJyNhJykgMXgs
IHVybCgnI2InKSAyeAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUpIGlzICdDU1NW
YWx1ZUxpc3QnCkBAIC0xOCw5ICsxOCw5IEBACiBQQVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0
UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0Z1bmN0aW9uJwogUEFTUyBpbWFnZVNldFJ1bGUubGVuZ3Ro
IGlzIDQKIFBBU1Mgc3ViUnVsZSBpcyAnYScKLVBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxJwor
UEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzFkcHB4JwogUEFTUyBzdWJSdWxlIGlzICdiJwotUEFT
UyBzdWJSdWxlLmNzc1RleHQgaXMgJzInCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMmRwcHgn
CiAKIFNpbmdsZSB2YWx1ZSBmb3IgYmFja2dyb3VuZC1pbWFnZSB3aXRob3V0IHVybCgpIGZ1bmN0
aW9uIDogJyNhJyAxeAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUpIGlzICdDU1NW
YWx1ZUxpc3QnCkBAIC0yOCw3ICsyOCw3IEBACiBQQVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0
UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0Z1bmN0aW9uJwogUEFTUyBpbWFnZVNldFJ1bGUubGVuZ3Ro
IGlzIDIKIFBBU1Mgc3ViUnVsZSBpcyAnYScKLVBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxJwor
UEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzFkcHB4JwogCiBNdWx0aXBsZSB2YWx1ZXMgZm9yIGJh
Y2tncm91bmQtaW1hZ2Ugd2l0aG91dCB1cmwoKSBmdW5jdGlvbiA6ICcjYScgMXgsICcjYicgMngK
IFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwpAQCAt
MzYsOSArMzYsOSBAQAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0
b3IpIGlzICdGdW5jdGlvbicKIFBBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyA0CiBQQVNTIHN1
YlJ1bGUgaXMgJ2EnCi1QQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMScKK1BBU1Mgc3ViUnVsZS5j
c3NUZXh0IGlzICcxZHBweCcKIFBBU1Mgc3ViUnVsZSBpcyAnYicKLVBBU1Mgc3ViUnVsZS5jc3NU
ZXh0IGlzICcyJworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzJkcHB4JwogCiBNaXggdmFsdWVz
IHdpdGggYW5kIHdpdGhvdXQgdXJsKCkgZnVuY3Rpb24gOiAnI2EnIDF4LCB1cmwoJyNiJykgMngK
IFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwpAQCAt
NDYsOSArNDYsOSBAQAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0
b3IpIGlzICdGdW5jdGlvbicKIFBBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyA0CiBQQVNTIHN1
YlJ1bGUgaXMgJ2EnCi1QQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMScKK1BBU1Mgc3ViUnVsZS5j
c3NUZXh0IGlzICcxZHBweCcKIFBBU1Mgc3ViUnVsZSBpcyAnYicKLVBBU1Mgc3ViUnVsZS5jc3NU
ZXh0IGlzICcyJworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzJkcHB4JwogCiBNdWx0aXBsZSB2
YWx1ZXMgZm9yIGJhY2tncm91bmQtaW1hZ2UsIG91dCBvZiBvcmRlciA6IHVybCgnI2MnKSAzeCwg
dXJsKCcjYicpIDJ4LCB1cmwoJyNhJykgMXgKIFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRS
dWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwpAQCAtNTYsMTEgKzU2LDExIEBACiBQQVNTIGpzV3JhcHBl
ckNsYXNzKGltYWdlU2V0UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0Z1bmN0aW9uJwogUEFTUyBpbWFn
ZVNldFJ1bGUubGVuZ3RoIGlzIDYKIFBBU1Mgc3ViUnVsZSBpcyAnYycKLVBBU1Mgc3ViUnVsZS5j
c3NUZXh0IGlzICczJworRkFJTCBzdWJSdWxlLmNzc1RleHQgc2hvdWxkIGJlIDMuIFdhcyAzZHBw
eC4KIFBBU1Mgc3ViUnVsZSBpcyAnYicKLVBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcyJworUEFT
UyBzdWJSdWxlLmNzc1RleHQgaXMgJzJkcHB4JwogUEFTUyBzdWJSdWxlIGlzICdhJwotUEFTUyBz
dWJSdWxlLmNzc1RleHQgaXMgJzEnCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMWRwcHgnCiAK
IFNpbmdsZSB2YWx1ZSBmb3IgY29udGVudCA6IHVybCgnI2EnKSAxeAogUEFTUyBqc1dyYXBwZXJD
bGFzcyhpbWFnZVNldFJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCkBAIC02OCw3ICs2OCw3IEBACiBQ
QVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0Z1bmN0aW9u
JwogUEFTUyBpbWFnZVNldFJ1bGUubGVuZ3RoIGlzIDIKIFBBU1Mgc3ViUnVsZSBpcyAnYScKLVBB
U1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxJworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzFkcHB4
JwogCiBNdWx0aXBsZSB2YWx1ZXMgZm9yIGNvbnRlbnQgOiB1cmwoJyNhJykgMXgsIHVybCgnI2In
KSAyeAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUpIGlzICdDU1NWYWx1ZUxpc3Qn
CkBAIC03Niw5ICs3Niw5IEBACiBQQVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZS5jb25z
dHJ1Y3RvcikgaXMgJ0Z1bmN0aW9uJwogUEFTUyBpbWFnZVNldFJ1bGUubGVuZ3RoIGlzIDQKIFBB
U1Mgc3ViUnVsZSBpcyAnYScKLVBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxJworUEFTUyBzdWJS
dWxlLmNzc1RleHQgaXMgJzFkcHB4JwogUEFTUyBzdWJSdWxlIGlzICdiJwotUEFTUyBzdWJSdWxl
LmNzc1RleHQgaXMgJzInCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMmRwcHgnCiAKIFNpbmds
ZSB2YWx1ZSBmb3IgYm9yZGVyLWltYWdlIDogdXJsKCcjYScpIDF4CiBQQVNTIGpzV3JhcHBlckNs
YXNzKGltYWdlU2V0UnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKQEAgLTg2LDcgKzg2LDcgQEAKIFBB
U1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlLmNvbnN0cnVjdG9yKSBpcyAnRnVuY3Rpb24n
CiBQQVNTIGltYWdlU2V0UnVsZS5sZW5ndGggaXMgMgogUEFTUyBzdWJSdWxlIGlzICdhJwotUEFT
UyBzdWJSdWxlLmNzc1RleHQgaXMgJzEnCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMWRwcHgn
CiAKIE11bHRpcGxlIHZhbHVlcyBmb3IgYm9yZGVyLWltYWdlIDogdXJsKCcjYScpIDF4LCB1cmwo
JyNiJykgMngKIFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVM
aXN0JwpAQCAtOTQsOSArOTQsOSBAQAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUu
Y29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicKIFBBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyA0
CiBQQVNTIHN1YlJ1bGUgaXMgJ2EnCi1QQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMScKK1BBU1Mg
c3ViUnVsZS5jc3NUZXh0IGlzICcxZHBweCcKIFBBU1Mgc3ViUnVsZSBpcyAnYicKLVBBU1Mgc3Vi
UnVsZS5jc3NUZXh0IGlzICcyJworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzJkcHB4JwogCiBT
aW5nbGUgdmFsdWUgZm9yIC13ZWJraXQtbWFzay1ib3gtaW1hZ2UgOiB1cmwoJyNhJykgMXgKIFBB
U1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwpAQCAtMTA0
LDcgKzEwNCw3IEBACiBQQVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZS5jb25zdHJ1Y3Rv
cikgaXMgJ0Z1bmN0aW9uJwogUEFTUyBpbWFnZVNldFJ1bGUubGVuZ3RoIGlzIDIKIFBBU1Mgc3Vi
UnVsZSBpcyAnYScKLVBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxJworUEFTUyBzdWJSdWxlLmNz
c1RleHQgaXMgJzFkcHB4JwogCiBNdWx0aXBsZSB2YWx1ZXMgZm9yIC13ZWJraXQtbWFzay1ib3gt
aW1hZ2UgOiB1cmwoJyNhJykgMXgsIHVybCgnI2InKSAyeAogUEFTUyBqc1dyYXBwZXJDbGFzcyhp
bWFnZVNldFJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCkBAIC0xMTIsOSArMTEyLDQ1IEBACiBQQVNT
IGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0Z1bmN0aW9uJwog
UEFTUyBpbWFnZVNldFJ1bGUubGVuZ3RoIGlzIDQKIFBBU1Mgc3ViUnVsZSBpcyAnYScKLVBBU1Mg
c3ViUnVsZS5jc3NUZXh0IGlzICcxJworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzFkcHB4Jwog
UEFTUyBzdWJSdWxlIGlzICdiJwotUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzInCitQQVNTIHN1
YlJ1bGUuY3NzVGV4dCBpcyAnMmRwcHgnCisKK1NpbmdsZSB2YWx1ZSB3aXRoIGRwcHggOiB1cmwo
JyNhJykgMWRwcHgKK1BBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFs
dWVMaXN0JworUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuX19wcm90b19fKSBpcyAn
Q1NTVmFsdWVMaXN0UHJvdG90eXBlJworUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUu
Y29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicKK1BBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyAy
CitQQVNTIHN1YlJ1bGUgaXMgJ2EnCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMWRwcHgnCisK
K1NpbmdsZSB2YWx1ZSB3aXRoIGRwaSA6IHVybCgnI2EnKSAxOTJkcGkKK1BBU1MganNXcmFwcGVy
Q2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JworUEFTUyBqc1dyYXBwZXJDbGFz
cyhpbWFnZVNldFJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJworUEFT
UyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicK
K1BBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyAyCitQQVNTIHN1YlJ1bGUgaXMgJ2EnCitQQVNT
IHN1YlJ1bGUuY3NzVGV4dCBpcyAnMTkyZHBpJworCitTaW5nbGUgdmFsdWUgd2l0aCBkcGNtIDog
dXJsKCcjYScpIDEwMmRwY20KK1BBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAn
Q1NTVmFsdWVMaXN0JworUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuX19wcm90b19f
KSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJworUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNl
dFJ1bGUuY29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicKK1BBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0
aCBpcyAyCitQQVNTIHN1YlJ1bGUgaXMgJ2EnCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMTAy
ZHBjbScKKworTXVsdGlwbGUgdmFsdWVzIHdpdGggZHBpLCBkcHB4IGFuZCB4IDogdXJsKCcjYScp
IDF4LCB1cmwoJyNiJykgMmRwcHgsIHVybCgnI2MnKSAyNTBkcGkKK1BBU1MganNXcmFwcGVyQ2xh
c3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JworUEFTUyBqc1dyYXBwZXJDbGFzcyhp
bWFnZVNldFJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJworUEFTUyBq
c1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicKK1BB
U1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyA2CitQQVNTIHN1YlJ1bGUgaXMgJ2EnCitQQVNTIHN1
YlJ1bGUuY3NzVGV4dCBpcyAnMWRwcHgnCitQQVNTIHN1YlJ1bGUgaXMgJ2InCitQQVNTIHN1YlJ1
bGUuY3NzVGV4dCBpcyAnMmRwcHgnCitQQVNTIHN1YlJ1bGUgaXMgJ2MnCitQQVNTIHN1YlJ1bGUu
Y3NzVGV4dCBpcyAnMjUwZHBpJwogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCiBU
RVNUIENPTVBMRVRFCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFnZS1zZXQtcGFyc2lu
Zy1nZW5lcmF0ZWQtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3Qv
Y3NzL2ltYWdlLXNldC1wYXJzaW5nLWdlbmVyYXRlZC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDI1
NDk3MCkKKysrIExheW91dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLWdlbmVyYXRl
ZC1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEwLDcgKzEwLDcgQEAKIFBBU1MganNX
cmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlLmNvbnN0cnVjdG9yKSBpcyAnRnVuY3Rpb24nCiBQQVNT
IGltYWdlU2V0UnVsZS5sZW5ndGggaXMgMgogUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJ2xpbmVh
ci1ncmFkaWVudChncmVlbiwgd2hpdGUpJwotUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzEnCitQ
QVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMWRwcHgnCiAKIFNpbmdsZSB2YWx1ZSBmb3IgY29udGVu
dCB3aXRoIGdyYWRpZW50IDogbGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSkgMXgKIFBBU1Mg
anNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwpAQCAtMTgsNyAr
MTgsNyBAQAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3IpIGlz
ICdGdW5jdGlvbicKIFBBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyAyCiBQQVNTIHN1YlJ1bGUu
Y3NzVGV4dCBpcyAnbGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSknCi1QQVNTIHN1YlJ1bGUu
Y3NzVGV4dCBpcyAnMScKK1BBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxZHBweCcKIAogU2luZ2xl
IHZhbHVlIGZvciBiYWNrZ3JvdW5kLWltYWdlIHdpdGggZ3JhZGllbnRzIDogbGluZWFyLWdyYWRp
ZW50KGdyZWVuLCB3aGl0ZSkgMXgsIHJhZGlhbC1ncmFkaWVudChibHVlLCB3aGl0ZSkgMngKIFBB
U1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwpAQCAtMjYs
OSArMjYsOSBAQAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3Ip
IGlzICdGdW5jdGlvbicKIFBBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyA0CiBQQVNTIHN1YlJ1
bGUuY3NzVGV4dCBpcyAnbGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSknCi1QQVNTIHN1YlJ1
bGUuY3NzVGV4dCBpcyAnMScKK1BBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxZHBweCcKIFBBU1Mg
c3ViUnVsZS5jc3NUZXh0IGlzICdyYWRpYWwtZ3JhZGllbnQoYmx1ZSwgd2hpdGUpJwotUEFTUyBz
dWJSdWxlLmNzc1RleHQgaXMgJzInCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMmRwcHgnCiAK
IENvbWJpbmVkIGdyYWRpZW50IGFuZCBVUkwgOiB1cmwoJyNhJykgMXgsIGxpbmVhci1ncmFkaWVu
dChncmVlbiwgd2hpdGUpIDJ4CiBQQVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZSkgaXMg
J0NTU1ZhbHVlTGlzdCcKQEAgLTM2LDkgKzM2LDkgQEAKIFBBU1MganNXcmFwcGVyQ2xhc3MoaW1h
Z2VTZXRSdWxlLmNvbnN0cnVjdG9yKSBpcyAnRnVuY3Rpb24nCiBQQVNTIGltYWdlU2V0UnVsZS5s
ZW5ndGggaXMgNAogUEFTUyBzdWJSdWxlIGlzICdhJwotUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMg
JzEnCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMWRwcHgnCiBQQVNTIHN1YlJ1bGUuY3NzVGV4
dCBpcyAnbGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSknCi1QQVNTIHN1YlJ1bGUuY3NzVGV4
dCBpcyAnMicKK1BBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcyZHBweCcKIAogQ29tYmluZWQgZ3Jh
ZGllbnQgYW5kIFVSTCBpbiBjb250ZW50IDogdXJsKCcjYScpIDF4LCBsaW5lYXItZ3JhZGllbnQo
Z3JlZW4sIHdoaXRlKSAyeAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUpIGlzICdD
U1NWYWx1ZUxpc3QnCkBAIC00Niw5ICs0Niw5IEBACiBQQVNTIGpzV3JhcHBlckNsYXNzKGltYWdl
U2V0UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0Z1bmN0aW9uJwogUEFTUyBpbWFnZVNldFJ1bGUubGVu
Z3RoIGlzIDQKIFBBU1Mgc3ViUnVsZSBpcyAnYScKLVBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcx
JworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzFkcHB4JwogUEFTUyBzdWJSdWxlLmNzc1RleHQg
aXMgJ2xpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpJwotUEFTUyBzdWJSdWxlLmNzc1RleHQg
aXMgJzInCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMmRwcHgnCiAKIENvbWJpbmVkIGdyYWRp
ZW50IGFuZCBjcm9zcy1mYWRlIDogLXdlYmtpdC1jcm9zcy1mYWRlKHVybCgnI2EnKSwgdXJsKCcj
YicpLCA3MCUpIDF4LCBsaW5lYXItZ3JhZGllbnQoZ3JlZW4sIHdoaXRlKSAyeAogUEFTUyBqc1dy
YXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCkBAIC01Niw5ICs1Niwx
NyBAQAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3IpIGlzICdG
dW5jdGlvbicKIFBBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyA0CiBQQVNTIHN1YlJ1bGUgaXMg
J2EnCi1QQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMScKK1BBU1Mgc3ViUnVsZS5jc3NUZXh0IGlz
ICcxZHBweCcKIFBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICdsaW5lYXItZ3JhZGllbnQoZ3JlZW4s
IHdoaXRlKScKLVBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcyJworUEFTUyBzdWJSdWxlLmNzc1Rl
eHQgaXMgJzJkcHB4JworCitTaW5nbGUgdmFsdWUgZm9yIGJhY2tncm91bmQtaW1hZ2Ugd2l0aCBn
cmFkaWVudCBhbmQgZHBpIDogbGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSkgMTkyZHBpCitQ
QVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKK1BBU1Mg
anNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFBy
b3RvdHlwZScKK1BBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlLmNvbnN0cnVjdG9yKSBp
cyAnRnVuY3Rpb24nCitQQVNTIGltYWdlU2V0UnVsZS5sZW5ndGggaXMgMgorUEFTUyBzdWJSdWxl
LmNzc1RleHQgaXMgJ2xpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpJworUEFTUyBzdWJSdWxl
LmNzc1RleHQgaXMgJzE5MmRwaScKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIAog
VEVTVCBDT01QTEVURQpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNp
bmctZ2VuZXJhdGVkLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1h
Z2Utc2V0LXBhcnNpbmctZ2VuZXJhdGVkLmh0bWwJKHJldmlzaW9uIDI1NDk3MCkKKysrIExheW91
dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLWdlbmVyYXRlZC5odG1sCSh3b3JraW5n
IGNvcHkpCkBAIC03NCwzMiArNzQsMzggQEAKIHRlc3RJbWFnZVNldFJ1bGUoIlNpbmdsZSB2YWx1
ZSBmb3IgYmFja2dyb3VuZC1pbWFnZSB3aXRoIGdyYWRpZW50IiwKICAgICAgICAgICAgICAgICAi
YmFja2dyb3VuZC1pbWFnZSIsCiAgICAgICAgICAgICAgICAgImxpbmVhci1ncmFkaWVudChncmVl
biwgd2hpdGUpIDF4IiwgMiwKLSAgICAgICAgICAgICAgICBbImxpbmVhci1ncmFkaWVudChncmVl
biwgd2hpdGUpIiwgIjEiXSk7CisgICAgICAgICAgICAgICAgWyJsaW5lYXItZ3JhZGllbnQoZ3Jl
ZW4sIHdoaXRlKSIsICIxZHBweCJdKTsKIHRlc3RJbWFnZVNldFJ1bGUoIlNpbmdsZSB2YWx1ZSBm
b3IgY29udGVudCB3aXRoIGdyYWRpZW50IiwKICAgICAgICAgICAgICAgICAiYmFja2dyb3VuZC1p
bWFnZSIsCiAgICAgICAgICAgICAgICAgImxpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpIDF4
IiwgMiwKLSAgICAgICAgICAgICAgICBbImxpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpIiwg
IjEiXSk7CisgICAgICAgICAgICAgICAgWyJsaW5lYXItZ3JhZGllbnQoZ3JlZW4sIHdoaXRlKSIs
ICIxZHBweCJdKTsKIAogdGVzdEltYWdlU2V0UnVsZSgiU2luZ2xlIHZhbHVlIGZvciBiYWNrZ3Jv
dW5kLWltYWdlIHdpdGggZ3JhZGllbnRzIiwKICAgICAgICAgICAgICAgICAiYmFja2dyb3VuZC1p
bWFnZSIsCiAgICAgICAgICAgICAgICAgImxpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpIDF4
LCByYWRpYWwtZ3JhZGllbnQoYmx1ZSwgd2hpdGUpIDJ4IiwgNCwKLSAgICAgICAgICAgICAgICBb
ImxpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpIiwgIjEiLCAicmFkaWFsLWdyYWRpZW50KGJs
dWUsIHdoaXRlKSIsICIyIl0pOworICAgICAgICAgICAgICAgIFsibGluZWFyLWdyYWRpZW50KGdy
ZWVuLCB3aGl0ZSkiLCAiMWRwcHgiLCAicmFkaWFsLWdyYWRpZW50KGJsdWUsIHdoaXRlKSIsICIy
ZHBweCJdKTsKIAogdGVzdEltYWdlU2V0UnVsZSgiQ29tYmluZWQgZ3JhZGllbnQgYW5kIFVSTCIs
CiAgICAgICAgICAgICAgICAgImJhY2tncm91bmQtaW1hZ2UiLAogICAgICAgICAgICAgICAgICJ1
cmwoJyNhJykgMXgsIGxpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpIDJ4IiwgNCwKLSAgICAg
ICAgICAgICAgICBbImEiLCAiMSIsICJsaW5lYXItZ3JhZGllbnQoZ3JlZW4sIHdoaXRlKSIsICIy
Il0pOworICAgICAgICAgICAgICAgIFsiYSIsICIxZHBweCIsICJsaW5lYXItZ3JhZGllbnQoZ3Jl
ZW4sIHdoaXRlKSIsICIyZHBweCJdKTsKIAogdGVzdEltYWdlU2V0UnVsZSgiQ29tYmluZWQgZ3Jh
ZGllbnQgYW5kIFVSTCBpbiBjb250ZW50IiwKICAgICAgICAgICAgICAgICAiY29udGVudCIsCiAg
ICAgICAgICAgICAgICAgInVybCgnI2EnKSAxeCwgbGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0
ZSkgMngiLCA0LAotICAgICAgICAgICAgICAgIFsiYSIsICIxIiwgImxpbmVhci1ncmFkaWVudChn
cmVlbiwgd2hpdGUpIiwgIjIiXSk7CisgICAgICAgICAgICAgICAgWyJhIiwgIjFkcHB4IiwgImxp
bmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpIiwgIjJkcHB4Il0pOwogCiB0ZXN0SW1hZ2VTZXRS
dWxlKCJDb21iaW5lZCBncmFkaWVudCBhbmQgY3Jvc3MtZmFkZSIsCiAgICAgICAgICAgICAgICAg
ImJhY2tncm91bmQtaW1hZ2UiLAogICAgICAgICAgICAgICAgICItd2Via2l0LWNyb3NzLWZhZGUo
dXJsKCcjYScpLCB1cmwoJyNiJyksIDcwJSkgMXgsIGxpbmVhci1ncmFkaWVudChncmVlbiwgd2hp
dGUpIDJ4IiwgNCwKLSAgICAgICAgICAgICAgICBbImEiLCAiMSIsICJsaW5lYXItZ3JhZGllbnQo
Z3JlZW4sIHdoaXRlKSIsICIyIl0pOworICAgICAgICAgICAgICAgIFsiYSIsICIxZHBweCIsICJs
aW5lYXItZ3JhZGllbnQoZ3JlZW4sIHdoaXRlKSIsICIyZHBweCJdKTsKIAordGVzdEltYWdlU2V0
UnVsZSgiU2luZ2xlIHZhbHVlIGZvciBiYWNrZ3JvdW5kLWltYWdlIHdpdGggZ3JhZGllbnQgYW5k
IGRwaSIsCisgICAgICAgICAgICAgICAgImJhY2tncm91bmQtaW1hZ2UiLAorICAgICAgICAgICAg
ICAgICJsaW5lYXItZ3JhZGllbnQoZ3JlZW4sIHdoaXRlKSAxOTJkcGkiLCAyLAorICAgICAgICAg
ICAgICAgIFsibGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSkiLCAiMTkyZHBpIl0pOworCisK
IHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CiA8L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSIuLi8u
Li9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KSW5kZXg6IExheW91dFRlc3Rz
L2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNpbmcuaHRtbAkocmV2aXNpb24gMjU0OTcwKQorKysg
TGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNpbmcuaHRtbAkod29ya2luZyBjb3B5
KQpAQCAtNzQsNjMgKzc0LDgzIEBACiB0ZXN0SW1hZ2VTZXRSdWxlKCJTaW5nbGUgdmFsdWUgZm9y
IGJhY2tncm91bmQtaW1hZ2UiLAogICAgICAgICAgICAgICAgICJiYWNrZ3JvdW5kLWltYWdlIiwK
ICAgICAgICAgICAgICAgICAidXJsKCcjYScpIDF4IiwgMiwKLSAgICAgICAgICAgICAgICBbImEi
LCAiMSJdKTsKKyAgICAgICAgICAgICAgICBbImEiLCAiMWRwcHgiXSk7CiAKIHRlc3RJbWFnZVNl
dFJ1bGUoIk11bHRpcGxlIHZhbHVlcyBmb3IgYmFja2dyb3VuZC1pbWFnZSIsCiAgICAgICAgICAg
ICAgICAgImJhY2tncm91bmQtaW1hZ2UiLAogICAgICAgICAgICAgICAgICJ1cmwoJyNhJykgMXgs
IHVybCgnI2InKSAyeCIsIDQsCi0gICAgICAgICAgICAgICAgWyJhIiwgIjEiLCAiYiIsICIyIl0p
OworICAgICAgICAgICAgICAgIFsiYSIsICIxZHBweCIsICJiIiwgIjJkcHB4Il0pOwogCiB0ZXN0
SW1hZ2VTZXRSdWxlKCJTaW5nbGUgdmFsdWUgZm9yIGJhY2tncm91bmQtaW1hZ2Ugd2l0aG91dCB1
cmwoKSBmdW5jdGlvbiIsCiAgICAgICAgICAgICAgICAgImJhY2tncm91bmQtaW1hZ2UiLAogICAg
ICAgICAgICAgICAgICInI2EnIDF4IiwgMiwKLSAgICAgICAgICAgICAgICBbImEiLCAiMSJdKTsK
KyAgICAgICAgICAgICAgICBbImEiLCAiMWRwcHgiXSk7CiAKIHRlc3RJbWFnZVNldFJ1bGUoIk11
bHRpcGxlIHZhbHVlcyBmb3IgYmFja2dyb3VuZC1pbWFnZSB3aXRob3V0IHVybCgpIGZ1bmN0aW9u
IiwKICAgICAgICAgICAgICAgICAiYmFja2dyb3VuZC1pbWFnZSIsCiAgICAgICAgICAgICAgICAg
IicjYScgMXgsICcjYicgMngiLCA0LAotICAgICAgICAgICAgICAgIFsiYSIsICIxIiwgImIiLCAi
MiJdKTsKKyAgICAgICAgICAgICAgICBbImEiLCAiMWRwcHgiLCAiYiIsICIyZHBweCJdKTsKIAog
dGVzdEltYWdlU2V0UnVsZSgiTWl4IHZhbHVlcyB3aXRoIGFuZCB3aXRob3V0IHVybCgpIGZ1bmN0
aW9uIiwKICAgICAgICAgICAgICAgICAiYmFja2dyb3VuZC1pbWFnZSIsCiAgICAgICAgICAgICAg
ICAgIicjYScgMXgsIHVybCgnI2InKSAyeCIsIDQsCi0gICAgICAgICAgICAgICAgWyJhIiwgIjEi
LCAiYiIsICIyIl0pOworICAgICAgICAgICAgICAgIFsiYSIsICIxZHBweCIsICJiIiwgIjJkcHB4
Il0pOwogCiB0ZXN0SW1hZ2VTZXRSdWxlKCJNdWx0aXBsZSB2YWx1ZXMgZm9yIGJhY2tncm91bmQt
aW1hZ2UsIG91dCBvZiBvcmRlciIsCiAgICAgICAgICAgICAgICAgImJhY2tncm91bmQtaW1hZ2Ui
LAogICAgICAgICAgICAgICAgICJ1cmwoJyNjJykgM3gsIHVybCgnI2InKSAyeCwgdXJsKCcjYScp
IDF4IiwgNiwKLSAgICAgICAgICAgICAgICBbImMiLCAiMyIsICJiIiwgIjIiLCAiYSIsICIxIl0p
OworICAgICAgICAgICAgICAgIFsiYyIsICIzIiwgImIiLCAiMmRwcHgiLCAiYSIsICIxZHBweCJd
KTsKIAogdGVzdEltYWdlU2V0UnVsZSgiU2luZ2xlIHZhbHVlIGZvciBjb250ZW50IiwKICAgICAg
ICAgICAgICAgICAiY29udGVudCIsCiAgICAgICAgICAgICAgICAgInVybCgnI2EnKSAxeCIsIDIs
Ci0gICAgICAgICAgICAgICAgWyJhIiwgIjEiXSk7CisgICAgICAgICAgICAgICAgWyJhIiwgIjFk
cHB4Il0pOwogCiB0ZXN0SW1hZ2VTZXRSdWxlKCJNdWx0aXBsZSB2YWx1ZXMgZm9yIGNvbnRlbnQi
LAogICAgICAgICAgICAgICAgICJjb250ZW50IiwKICAgICAgICAgICAgICAgICAidXJsKCcjYScp
IDF4LCB1cmwoJyNiJykgMngiLCA0LAotICAgICAgICAgICAgICAgIFsiYSIsICIxIiwgImIiLCAi
MiJdKTsKKyAgICAgICAgICAgICAgICBbImEiLCAiMWRwcHgiLCAiYiIsICIyZHBweCJdKTsKIAog
dGVzdEltYWdlU2V0UnVsZSgiU2luZ2xlIHZhbHVlIGZvciBib3JkZXItaW1hZ2UiLAogICAgICAg
ICAgICAgICAgICItd2Via2l0LWJvcmRlci1pbWFnZSIsCiAgICAgICAgICAgICAgICAgInVybCgn
I2EnKSAxeCIsIDIsCi0gICAgICAgICAgICAgICAgWyJhIiwgIjEiXSk7CisgICAgICAgICAgICAg
ICAgWyJhIiwgIjFkcHB4Il0pOwogCiB0ZXN0SW1hZ2VTZXRSdWxlKCJNdWx0aXBsZSB2YWx1ZXMg
Zm9yIGJvcmRlci1pbWFnZSIsCiAgICAgICAgICAgICAgICAgIi13ZWJraXQtYm9yZGVyLWltYWdl
IiwKICAgICAgICAgICAgICAgICAidXJsKCcjYScpIDF4LCB1cmwoJyNiJykgMngiLCA0LAotICAg
ICAgICAgICAgICAgIFsiYSIsICIxIiwgImIiLCAiMiJdKTsKKyAgICAgICAgICAgICAgICBbImEi
LCAiMWRwcHgiLCAiYiIsICIyZHBweCJdKTsKIAogdGVzdEltYWdlU2V0UnVsZSgiU2luZ2xlIHZh
bHVlIGZvciAtd2Via2l0LW1hc2stYm94LWltYWdlIiwKICAgICAgICAgICAgICAgICAiLXdlYmtp
dC1tYXNrLWJveC1pbWFnZSIsCiAgICAgICAgICAgICAgICAgInVybCgnI2EnKSAxeCIsIDIsCi0g
ICAgICAgICAgICAgICAgWyJhIiwgIjEiXSk7CisgICAgICAgICAgICAgICAgWyJhIiwgIjFkcHB4
Il0pOwogCiB0ZXN0SW1hZ2VTZXRSdWxlKCJNdWx0aXBsZSB2YWx1ZXMgZm9yIC13ZWJraXQtbWFz
ay1ib3gtaW1hZ2UiLAogICAgICAgICAgICAgICAgICItd2Via2l0LW1hc2stYm94LWltYWdlIiwK
ICAgICAgICAgICAgICAgICAidXJsKCcjYScpIDF4LCB1cmwoJyNiJykgMngiLCA0LAotICAgICAg
ICAgICAgICAgIFsiYSIsICIxIiwgImIiLCAiMiJdKTsKKyAgICAgICAgICAgICAgICBbImEiLCAi
MWRwcHgiLCAiYiIsICIyZHBweCJdKTsKIAordGVzdEltYWdlU2V0UnVsZSgiU2luZ2xlIHZhbHVl
IHdpdGggZHBweCIsCisgICAgICAgICAgICAgICAgImJhY2tncm91bmQtaW1hZ2UiLAorICAgICAg
ICAgICAgICAgICJ1cmwoJyNhJykgMWRwcHgiLCAyLAorICAgICAgICAgICAgICAgIFsiYSIsICIx
ZHBweCJdKTsKKwordGVzdEltYWdlU2V0UnVsZSgiU2luZ2xlIHZhbHVlIHdpdGggZHBpIiwKKyAg
ICAgICAgICAgICAgICAiYmFja2dyb3VuZC1pbWFnZSIsCisgICAgICAgICAgICAgICAgInVybCgn
I2EnKSAxOTJkcGkiLCAyLAorICAgICAgICAgICAgICAgIFsiYSIsICIxOTJkcGkiXSk7CisKK3Rl
c3RJbWFnZVNldFJ1bGUoIlNpbmdsZSB2YWx1ZSB3aXRoIGRwY20iLAorICAgICAgICAgICAgICAg
ICJiYWNrZ3JvdW5kLWltYWdlIiwKKyAgICAgICAgICAgICAgICAidXJsKCcjYScpIDEwMmRwY20i
LCAyLAorICAgICAgICAgICAgICAgIFsiYSIsICIxMDJkcGNtIl0pOworCit0ZXN0SW1hZ2VTZXRS
dWxlKCJNdWx0aXBsZSB2YWx1ZXMgd2l0aCBkcGksIGRwcHggYW5kIHgiLAorICAgICAgICAgICAg
ICAgICJiYWNrZ3JvdW5kLWltYWdlIiwKKyAgICAgICAgICAgICAgICAidXJsKCcjYScpIDF4LCB1
cmwoJyNiJykgMmRwcHgsIHVybCgnI2MnKSAyNTBkcGkiLCA2LAorICAgICAgICAgICAgICAgIFsi
YSIsICIxZHBweCIsICJiIiwgIjJkcHB4IiwgImMiLCAiMjUwZHBpIl0pOworCiBzdWNjZXNzZnVs
bHlQYXJzZWQgPSB0cnVlOwogPC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2Vz
L2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9p
bWFnZS1zZXQtc2V0dGluZy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
ZmFzdC9jc3MvaW1hZ2Utc2V0LXNldHRpbmctZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAyNTQ5NzAp
CisrKyBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFnZS1zZXQtc2V0dGluZy1leHBlY3RlZC50eHQJ
KHdvcmtpbmcgY29weSkKQEAgLTUsMTkgKzUsMTkgQEAKIAogCiBTaW5nbGUgdmFsdWUgZm9yIGJh
Y2tncm91bmQtaW1hZ2UgOiB1cmwoImh0dHA6Ly93d3cud2Via2l0Lm9yZy9hIikgMXgKLVBBU1Mg
c3R5bGUuYmFja2dyb3VuZEltYWdlIGlzICJpbWFnZS1zZXQodXJsKFwiaHR0cDovL3d3dy53ZWJr
aXQub3JnL2FcIikgMXgpIgorUEFTUyBzdHlsZS5iYWNrZ3JvdW5kSW1hZ2UgaXMgImltYWdlLXNl
dCh1cmwoXCJodHRwOi8vd3d3LndlYmtpdC5vcmcvYVwiKSAxZHBweCkiCiAKIE11bHRpcGxlIHZh
bHVlcyBmb3IgYmFja2dyb3VuZC1pbWFnZSA6IHVybCgiaHR0cDovL3d3dy53ZWJraXQub3JnL2Ei
KSAxeCwgdXJsKCJodHRwOi8vd3d3LndlYmtpdC5vcmcvYiIpIDJ4Ci1QQVNTIHN0eWxlLmJhY2tn
cm91bmRJbWFnZSBpcyAiaW1hZ2Utc2V0KHVybChcImh0dHA6Ly93d3cud2Via2l0Lm9yZy9hXCIp
IDF4LCB1cmwoXCJodHRwOi8vd3d3LndlYmtpdC5vcmcvYlwiKSAyeCkiCitQQVNTIHN0eWxlLmJh
Y2tncm91bmRJbWFnZSBpcyAiaW1hZ2Utc2V0KHVybChcImh0dHA6Ly93d3cud2Via2l0Lm9yZy9h
XCIpIDFkcHB4LCB1cmwoXCJodHRwOi8vd3d3LndlYmtpdC5vcmcvYlwiKSAyZHBweCkiCiAKIE11
bHRpcGxlIHZhbHVlcyBmb3IgYmFja2dyb3VuZC1pbWFnZSwgb3V0IG9mIG9yZGVyIDogdXJsKCJo
dHRwOi8vd3d3LndlYmtpdC5vcmcvYyIpIDN4LCB1cmwoImh0dHA6Ly93d3cud2Via2l0Lm9yZy9i
IikgMngsIHVybCgiaHR0cDovL3d3dy53ZWJraXQub3JnL2EiKSAxeAotUEFTUyBzdHlsZS5iYWNr
Z3JvdW5kSW1hZ2UgaXMgImltYWdlLXNldCh1cmwoXCJodHRwOi8vd3d3LndlYmtpdC5vcmcvY1wi
KSAzeCwgdXJsKFwiaHR0cDovL3d3dy53ZWJraXQub3JnL2JcIikgMngsIHVybChcImh0dHA6Ly93
d3cud2Via2l0Lm9yZy9hXCIpIDF4KSIKK1BBU1Mgc3R5bGUuYmFja2dyb3VuZEltYWdlIGlzICJp
bWFnZS1zZXQodXJsKFwiaHR0cDovL3d3dy53ZWJraXQub3JnL2NcIikgM2RwcHgsIHVybChcImh0
dHA6Ly93d3cud2Via2l0Lm9yZy9iXCIpIDJkcHB4LCB1cmwoXCJodHRwOi8vd3d3LndlYmtpdC5v
cmcvYVwiKSAxZHBweCkiCiAKIER1cGxpY2F0ZSB2YWx1ZXMgZm9yIGJhY2tncm91bmQtaW1hZ2Ug
OiB1cmwoImh0dHA6Ly93d3cud2Via2l0Lm9yZy9jIikgMXgsIHVybCgiaHR0cDovL3d3dy53ZWJr
aXQub3JnL2IiKSAyeCwgdXJsKCJodHRwOi8vd3d3LndlYmtpdC5vcmcvYSIpIDF4Ci1QQVNTIHN0
eWxlLmJhY2tncm91bmRJbWFnZSBpcyAiaW1hZ2Utc2V0KHVybChcImh0dHA6Ly93d3cud2Via2l0
Lm9yZy9jXCIpIDF4LCB1cmwoXCJodHRwOi8vd3d3LndlYmtpdC5vcmcvYlwiKSAyeCwgdXJsKFwi
aHR0cDovL3d3dy53ZWJraXQub3JnL2FcIikgMXgpIgorUEFTUyBzdHlsZS5iYWNrZ3JvdW5kSW1h
Z2UgaXMgImltYWdlLXNldCh1cmwoXCJodHRwOi8vd3d3LndlYmtpdC5vcmcvY1wiKSAxZHBweCwg
dXJsKFwiaHR0cDovL3d3dy53ZWJraXQub3JnL2JcIikgMmRwcHgsIHVybChcImh0dHA6Ly93d3cu
d2Via2l0Lm9yZy9hXCIpIDFkcHB4KSIKIAogRnJhY3Rpb25hbCB2YWx1ZXMgZm9yIGJhY2tncm91
bmQtaW1hZ2UgOiB1cmwoImh0dHA6Ly93d3cud2Via2l0Lm9yZy9jIikgMC4yeCwgdXJsKCJodHRw
Oi8vd3d3LndlYmtpdC5vcmcvYiIpIDIuM3gsIHVybCgiaHR0cDovL3d3dy53ZWJraXQub3JnL2Ei
KSAxMi4zNDU2eAotUEFTUyBzdHlsZS5iYWNrZ3JvdW5kSW1hZ2UgaXMgImltYWdlLXNldCh1cmwo
XCJodHRwOi8vd3d3LndlYmtpdC5vcmcvY1wiKSAwLjJ4LCB1cmwoXCJodHRwOi8vd3d3LndlYmtp
dC5vcmcvYlwiKSAyLjN4LCB1cmwoXCJodHRwOi8vd3d3LndlYmtpdC5vcmcvYVwiKSAxMi4zNDU2
eCkiCitQQVNTIHN0eWxlLmJhY2tncm91bmRJbWFnZSBpcyAiaW1hZ2Utc2V0KHVybChcImh0dHA6
Ly93d3cud2Via2l0Lm9yZy9jXCIpIDAuMmRwcHgsIHVybChcImh0dHA6Ly93d3cud2Via2l0Lm9y
Zy9iXCIpIDIuM2RwcHgsIHVybChcImh0dHA6Ly93d3cud2Via2l0Lm9yZy9hXCIpIDEyLjM0NTZk
cHB4KSIKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIAogVEVTVCBDT01QTEVURQpJ
bmRleDogTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXNldHRpbmcuaHRtbAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFnZS1zZXQtc2V0dGluZy5odG1sCShyZXZp
c2lvbiAyNTQ5NzApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFnZS1zZXQtc2V0dGluZy5o
dG1sCSh3b3JraW5nIGNvcHkpCkBAIC0yMSw3ICsyMSw3IEBACiAgICAgcmV0dXJuIGNvbXB1dGVk
VmFsdWU7CiB9CiAKLWZ1bmN0aW9uIHRlc3RJbWFnZVNldFJ1bGUoZGVzY3JpcHRpb24sIHByb3Bl
cnR5LCBydWxlLCBleHBlY3RlZCkKK2Z1bmN0aW9uIHRlc3RJbWFnZVNldFJ1bGUoZGVzY3JpcHRp
b24sIHByb3BlcnR5LCBydWxlKQogewogICAgIGRlYnVnKCIiKTsKICAgICBkZWJ1ZyhkZXNjcmlw
dGlvbiArICIgOiAiICsgcnVsZSk7CkBAIC0yOCw3ICsyOCw3IEBACiAKICAgICB2YXIgZnVsbFJ1
bGUgPSAiaW1hZ2Utc2V0KCIgKyBydWxlICsgIikiOwogICAgIHN0eWxlID0gdGVzdENvbXB1dGVk
U3R5bGUocHJvcGVydHksIGZ1bGxSdWxlKTsKLSAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3N0
eWxlLmJhY2tncm91bmRJbWFnZScsIGZ1bGxSdWxlKTsKKyAgICBzaG91bGRCZUVxdWFsVG9TdHJp
bmcoJ3N0eWxlLmJhY2tncm91bmRJbWFnZScsIGZ1bGxSdWxlLnJlcGxhY2UoL3goPz1bLCldKS9n
LCAnZHBweCcpKTsKIH0KIAogdGVzdEltYWdlU2V0UnVsZSgiU2luZ2xlIHZhbHVlIGZvciBiYWNr
Z3JvdW5kLWltYWdlIiwKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC11bnBy
ZWZpeGVkLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0
LXVucHJlZml4ZWQuaHRtbAkocmV2aXNpb24gMjU0OTcwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9j
c3MvaW1hZ2Utc2V0LXVucHJlZml4ZWQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTYsNyArMTYs
NyBAQAogICAgIHJldHVybiBjb21wdXRlZFZhbHVlOwogfQogCi1mdW5jdGlvbiB0ZXN0SW1hZ2VT
ZXRSdWxlKGRlc2NyaXB0aW9uLCBwcm9wZXJ0eSwgcnVsZSwgZXhwZWN0ZWQpCitmdW5jdGlvbiB0
ZXN0SW1hZ2VTZXRSdWxlKGRlc2NyaXB0aW9uLCBwcm9wZXJ0eSwgcnVsZSkKIHsKICAgICBkZWJ1
ZygiIik7CiAgICAgZGVidWcoYCR7ZGVzY3JpcHRpb259IDogJHtydWxlfWApOwpAQCAtMjUsMTIg
KzI1LDEyIEBACiAgICAgaWYgKHByb3BlcnR5ID09ICdjdXJzb3InKQogICAgICAgICBydWxlICs9
ICcsIGRlZmF1bHQnOwogCi0gICAgaWYgKHRlc3RDb21wdXRlZFN0eWxlKHByb3BlcnR5LCBydWxl
KSA9PSBydWxlKQorICAgIGlmICh0ZXN0Q29tcHV0ZWRTdHlsZShwcm9wZXJ0eSwgcnVsZSkgPT0g
cnVsZS5yZXBsYWNlKC94KD89WywpXSkvZywgJ2RwcHgnKSkKICAgICAgICAgZGVidWcoIlVucHJl
Zml4ZWQ6IFBBU1MiKTsKICAgICBlbHNlCiAgICAgICAgIGRlYnVnKCJVbnByZWZpeGVkOiBGQUlM
Iik7CiAKLSAgICBpZiAodGVzdENvbXB1dGVkU3R5bGUocHJvcGVydHksICItd2Via2l0LSIgKyBy
dWxlKSA9PSBydWxlKQorICAgIGlmICh0ZXN0Q29tcHV0ZWRTdHlsZShwcm9wZXJ0eSwgIi13ZWJr
aXQtIiArIHJ1bGUpID09IHJ1bGUucmVwbGFjZSgveCg/PVssKV0pL2csICdkcHB4JykpCiAgICAg
ICAgIGRlYnVnKCJQcmVmaXhlZDogUEFTUyIpOwogICAgIGVsc2UKICAgICAgICAgZGVidWcoIlBy
ZWZpeGVkOiBGQUlMIik7CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2hpZHBpL2ltYWdlLXNldC11
bml0cy1leHBlY3RlZC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvaGlkcGkv
aW1hZ2Utc2V0LXVuaXRzLWV4cGVjdGVkLmh0bWwJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVz
dHMvZmFzdC9oaWRwaS9pbWFnZS1zZXQtdW5pdHMtZXhwZWN0ZWQuaHRtbAkod29ya2luZyBjb3B5
KQpAQCAtMCwwICsxLDI1IEBACis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdD4KKyAgICB3aW5kb3cu
b25sb2FkID0gKCkgPT4geworICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgICAg
IHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworICAgICAgICB0ZXN0UnVubmVyLnNldEJhY2tp
bmdTY2FsZUZhY3RvcigyLCAoKSA9PiBzZXRUaW1lb3V0KCgpID0+IHRlc3RSdW5uZXIubm90aWZ5
RG9uZSgpLCAwKSk7CisgICAgICB9CisgICAgfQorPC9zY3JpcHQ+CisKKzxzdHlsZT4KKyAgICAj
Zm9vIHsKKyAgICAgICAgd2lkdGg6MTAwcHg7CisgICAgICAgIGhlaWdodDoxMDBweDsKKyAgICAg
ICAgYmFja2dyb3VuZC1pbWFnZTogaW1hZ2Utc2V0KHVybCgncmVzb3VyY2VzL2JsdWUtMTAwLXB4
LXNxdWFyZS5wbmcnKSAxeCwgbGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSkgMngpOworICAg
IH0KKzwvc3R5bGU+Cis8L2hlYWQ+CisKKzxib2R5PgorICAgIDxkaXY+VGhpcyB0ZXN0IHBhc3Nl
cyBpZiB0aGUgZGl2IGJlbG93IGlzIGEgYmx1ZSAxMDBweCBzcXVhcmUgd2hlbiB0aGUgZGV2aWNl
U2NhbGVGYWN0b3IgaXMgMSwgYW5kIGlmIGl0IGlzIGEgMTAwcHggZ3JlZW4td2hpdGUgZ3JhZGll
bnQgc3F1YXJlIHdoZW4gdGhlIGRldmljZVNjYWxlRmFjdG9yIGlzIDIuPC9kaXY+CisgICAgPGRp
diBpZD1mb28+PC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+CgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBM
YXlvdXRUZXN0cy9mYXN0L2hpZHBpL2ltYWdlLXNldC11bml0cy1leHBlY3RlZC5odG1sCl9fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX18KQWRkZWQ6IHN2bjpleGVjdXRhYmxlCiMjIC0wLDAgKzEgIyMKKyoKXCBObyBuZXdsaW5l
IGF0IGVuZCBvZiBwcm9wZXJ0eQpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9oaWRwaS9pbWFnZS1z
ZXQtdW5pdHMuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2hpZHBpL2ltYWdl
LXNldC11bml0cy5odG1sCShub25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2Zhc3QvaGlkcGkv
aW1hZ2Utc2V0LXVuaXRzLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwyNSBAQAorPGh0
bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CisgICAgd2luZG93Lm9ubG9hZCA9ICgpID0+IHsKKyAgICAg
IGlmICh3aW5kb3cudGVzdFJ1bm5lcikgeworICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERv
bmUoKTsKKyAgICAgICAgdGVzdFJ1bm5lci5zZXRCYWNraW5nU2NhbGVGYWN0b3IoMiwgKCkgPT4g
c2V0VGltZW91dCgoKSA9PiB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKSwgMCkpOworICAgICAgfQor
ICAgIH0KKzwvc2NyaXB0PgorCis8c3R5bGU+CisgICAgI2ZvbyB7CisgICAgICAgIHdpZHRoOjEw
MHB4OworICAgICAgICBoZWlnaHQ6MTAwcHg7CisgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGlt
YWdlLXNldCh1cmwoJ3Jlc291cmNlcy9ibHVlLTEwMC1weC1zcXVhcmUucG5nJykgMWRwcHgsIGxp
bmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpIDE5MmRwaSk7CisgICAgfQorPC9zdHlsZT4KKzwv
aGVhZD4KKworPGJvZHk+CisgICAgPGRpdj5UaGlzIHRlc3QgcGFzc2VzIGlmIHRoZSBkaXYgYmVs
b3cgaXMgYSBibHVlIDEwMHB4IHNxdWFyZSB3aGVuIHRoZSBkZXZpY2VTY2FsZUZhY3RvciBpcyAx
LCBhbmQgaWYgaXQgaXMgYSAxMDBweCBncmVlbi13aGl0ZSBncmFkaWVudCBzcXVhcmUgd2hlbiB0
aGUgZGV2aWNlU2NhbGVGYWN0b3IgaXMgMi48L2Rpdj4KKyAgICA8ZGl2IGlkPWZvbz48L2Rpdj4K
KzwvYm9keT4KKzwvaHRtbD4KClByb3BlcnR5IGNoYW5nZXMgb246IExheW91dFRlc3RzL2Zhc3Qv
aGlkcGkvaW1hZ2Utc2V0LXVuaXRzLmh0bWwKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOmV4ZWN1dGFi
bGUKIyMgLTAsMCArMSAjIworKgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIHByb3BlcnR5CkluZGV4
OiBTb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
Q2hhbmdlTG9nCShyZXZpc2lvbiAyNTQ5NzApCisrKyBTb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cJ
KHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwzNyBAQAorMjAyMC0wMS0yMyAgTm9hbSBSb3NlbnRo
YWwgIDxub2FtQHdlYmtpdC5vcmc+CisKKyAgICAgICAgLXdlYmtpdC1pbWFnZS1zZXQgc2hvdWxk
IHN1cHBvcnQgcmVzb2x1dGlvbiB1bml0cyBvdGhlciB0aGFuICd4JworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAwMTIwCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgRGFyaW4gQWRsZXIuCisKKyAgICAgICAgTGV2ZXJhZ2VkIHByZXZpb3VzIHdvcmsgb24g
aW1hZ2UtcmVzb2x1dGlvbiB0byBlbmFibGUgZHBpL2RwcHgvZHBjbSBpbiBDU1MgaW1hZ2Utc2V0
LgorICAgICAgICBOb3cgdGhlIHNlY29uZCB2YWx1ZSBvZiBldmVyeSBlbnRyeSBpbiB0aGUgaW1h
Z2Utc2V0IGlzIHBhcnNlZCBsaWtlIGFueSByZXNvbHV0aW9uLAorICAgICAgICBhbGxvd2luZyAi
eCIgYXMgYSBzeW5vbmltIGZvciAiZHBweC4KKworICAgICAgICBUaGlzIGNoYW5nZXMgY29tcHV0
ZWQgc3R5bGUgYmVoYXZpb3IgZm9yIGltYWdlLXNldCAtICJ4IiByZXNvbHV0aW9uIHZhbHVlcyB3
aWxsIGJlIGNvbnZlcnRlZAorICAgICAgICB0byAiZHBweCIuIFRoaXMgaXMgaW4gbGluZSB3aXRo
IHRoZSBzcGlyaXQgb2YgY29tcHV0ZWQgdmFsdWVzLCB0aG91Z2ggaXQncyBub3Qgc3BlYydlZCBw
YXJ0aWN1bGFybHkuCisKKyAgICAgICAgVGVzdHM6IGZhc3QvaGlkcGkvaW1hZ2Utc2V0LXVuaXRz
Lmh0bWwKKworICAgICAgICAqIGNzcy9DU1NJbWFnZVNldFZhbHVlLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkNTU0ltYWdlU2V0VmFsdWU6OmZpbGxJbWFnZVNldCk6CisgICAgICAgIChXZWJDb3Jl
OjpDU1NJbWFnZVNldFZhbHVlOjp1cGRhdGVEZXZpY2VTY2FsZUZhY3Rvcik6CisgICAgICAgIChX
ZWJDb3JlOjpDU1NJbWFnZVNldFZhbHVlOjpjdXN0b21DU1NUZXh0IGNvbnN0KToKKyAgICAgICAg
ICAgICAgICBDb252ZXJ0IHZhbHVlcyB0byBkcHB4IGJlZm9yZSBzb3J0aW5nIHRoZW0gdGhlIGlt
YWdlIHNldC4KKyAgICAgICAgICAgICAgICBVc2UgZ2l2ZW4gQ1NTIHVuaXRzIGluIGNvbXB1dGVk
IHN0eWxlcyBpbnN0ZWFkIG9mIGhhcmRjb2RpbmcgIngiIAorCisgICAgICAgICogY3NzL0NTU1By
aW1pdGl2ZVZhbHVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmlzVmFsaWRDU1NVbml0VHlwZUZv
ckRvdWJsZUNvbnZlcnNpb24pOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJpbWl0aXZlVmFsdWU6
OmNvbnZlcnNpb25Ub0Nhbm9uaWNhbFVuaXRzU2NhbGVGYWN0b3IpOgorICAgICAgICAgICAgICAg
IEFsbG93IGNvbnZlcnNpb24gb2YgZHBpL2RwcHgvZHBjbSB0byBjYW5vbmljYWwgKGRwcHgpLgor
CisgICAgICAgICogY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6Q1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzOjpjb25zdW1lUmVzb2x1dGlv
bik6CisgICAgICAgIChXZWJDb3JlOjpDU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnM6OmNvbnN1bWVJ
bWFnZVNldCk6CisgICAgICAgICogY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMu
aDoKKyAgICAgICAgICAgICAgICBDb25zdW1lIGFueSByZXNvbHV0aW9uIHdoZW4gcGFyc2luZyBp
bWFnZS1zZXQuCisKIDIwMjAtMDEtMjMgIFl1c3VrZSBTdXp1a2kgIDx5c3V6dWtpQGFwcGxlLmNv
bT4KIAogICAgICAgICBub21vZHVsZSBzY3JpcHRzIGFyZSBmZXRjaGVkIGluIHNvbWUgY2FzZXMg
KHdpdGggZW1wdHkgY2FjaGUgb3IgaW4gbmV3IHRhYikKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NJbWFnZVNldFZhbHVlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTSW1hZ2VTZXRWYWx1ZS5jcHAJKHJldmlzaW9uIDI1NDk3MCkKKysrIFNvdXJjZS9XZWJDb3Jl
L2Nzcy9DU1NJbWFnZVNldFZhbHVlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTAsMjAgKzUwLDE1
IEBACiB2b2lkIENTU0ltYWdlU2V0VmFsdWU6OmZpbGxJbWFnZVNldCgpCiB7CiAgICAgc2l6ZV90
IGxlbmd0aCA9IHRoaXMtPmxlbmd0aCgpOwotICAgIHNpemVfdCBpID0gMDsKLSAgICB3aGlsZSAo
aSA8IGxlbmd0aCkgeworICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpICsgMSA8IGxlbmd0aDsgaSAr
PSAyKSB7CiAgICAgICAgIENTU1ZhbHVlKiBpbWFnZVZhbHVlID0gaXRlbShpKTsKKyAgICAgICAg
Q1NTVmFsdWUqIHNjYWxlRmFjdG9yVmFsdWUgPSBpdGVtKGkgKyAxKTsKKwogICAgICAgICBBU1NF
UlQoaXM8Q1NTSW1hZ2VWYWx1ZT4oaW1hZ2VWYWx1ZSkgfHwgaXM8Q1NTSW1hZ2VHZW5lcmF0b3JW
YWx1ZT4oaW1hZ2VWYWx1ZSkpOwotICAgICAgICArK2k7Ci0gICAgICAgIEFTU0VSVF9XSVRIX1NF
Q1VSSVRZX0lNUExJQ0FUSU9OKGkgPCBsZW5ndGgpOwotICAgICAgICBDU1NWYWx1ZSogc2NhbGVG
YWN0b3JWYWx1ZSA9IGl0ZW0oaSk7Ci0gICAgICAgIGZsb2F0IHNjYWxlRmFjdG9yID0gZG93bmNh
c3Q8Q1NTUHJpbWl0aXZlVmFsdWU+KCpzY2FsZUZhY3RvclZhbHVlKS5mbG9hdFZhbHVlKCk7Cisg
ICAgICAgIEFTU0VSVChpczxDU1NQcmltaXRpdmVWYWx1ZT4oc2NhbGVGYWN0b3JWYWx1ZSkpOwog
Ci0gICAgICAgIEltYWdlV2l0aFNjYWxlIGltYWdlOwotICAgICAgICBpbWFnZS52YWx1ZSA9IGlt
YWdlVmFsdWU7Ci0gICAgICAgIGltYWdlLnNjYWxlRmFjdG9yID0gc2NhbGVGYWN0b3I7Ci0gICAg
ICAgIG1faW1hZ2VzSW5TZXQuYXBwZW5kKGltYWdlKTsKLSAgICAgICAgKytpOworICAgICAgICBm
bG9hdCBzY2FsZUZhY3RvciA9IGRvd25jYXN0PENTU1ByaW1pdGl2ZVZhbHVlPihzY2FsZUZhY3Rv
clZhbHVlKS0+ZmxvYXRWYWx1ZShDU1NVbml0VHlwZTo6Q1NTX0RQUFgpOworICAgICAgICBtX2lt
YWdlc0luU2V0LmFwcGVuZCh7aW1hZ2VWYWx1ZSwgc2NhbGVGYWN0b3J9KTsKICAgICB9CiAKICAg
ICAvLyBTb3J0IHRoZSBpbWFnZXMgc28gdGhhdCB0aGV5IGFyZSBzdG9yZWQgaW4gb3JkZXIgZnJv
bSBsb3dlc3QgcmVzb2x1dGlvbiB0byBoaWdoZXN0LgpAQCAtMTA2LDcgKzEwMSw2IEBACiAKIHZv
aWQgQ1NTSW1hZ2VTZXRWYWx1ZTo6dXBkYXRlRGV2aWNlU2NhbGVGYWN0b3IoY29uc3QgRG9jdW1l
bnQmIGRvY3VtZW50KQogewotCiAgICAgLy8gRklYTUU6IEluIHRoZSBmdXR1cmUsIHdlIHdhbnQg
dG8gdGFrZSBtdWNoIG1vcmUgdGhhbiBkZXZpY2VTY2FsZUZhY3RvciBpbnRvIGFjb3VudCBoZXJl
LgogICAgIC8vIEFsbCBmb3JtcyBvZiBzY2FsZSBzaG91bGQgYmUgaW5jbHVkZWQ6IFBhZ2U6OnBh
Z2VTY2FsZUZhY3RvcigpLCBGcmFtZTo6cGFnZVpvb21GYWN0b3IoKSwKICAgICAvLyBhbmQgYW55
IENTUyB0cmFuc2Zvcm1zLiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
ODE2OTgKQEAgLTEzNiwyNCArMTMwLDExIEBACiAgICAgcmVzdWx0LmFwcGVuZExpdGVyYWwoImlt
YWdlLXNldCgiKTsKIAogICAgIHNpemVfdCBsZW5ndGggPSB0aGlzLT5sZW5ndGgoKTsKLSAgICBz
aXplX3QgaSA9IDA7Ci0gICAgd2hpbGUgKGkgPCBsZW5ndGgpIHsKKyAgICBmb3IgKHNpemVfdCBp
ID0gMDsgaSArIDEgPCBsZW5ndGg7IGkgKz0gMikgewogICAgICAgICBpZiAoaSA+IDApCiAgICAg
ICAgICAgICByZXN1bHQuYXBwZW5kTGl0ZXJhbCgiLCAiKTsKIAotICAgICAgICBjb25zdCBDU1NW
YWx1ZSogaW1hZ2VWYWx1ZSA9IGl0ZW0oaSk7Ci0gICAgICAgIHJlc3VsdC5hcHBlbmQoaW1hZ2VW
YWx1ZS0+Y3NzVGV4dCgpKTsKLSAgICAgICAgcmVzdWx0LmFwcGVuZCgnICcpOwotCi0gICAgICAg
ICsraTsKLSAgICAgICAgQVNTRVJUX1dJVEhfU0VDVVJJVFlfSU1QTElDQVRJT04oaSA8IGxlbmd0
aCk7Ci0gICAgICAgIGNvbnN0IENTU1ZhbHVlKiBzY2FsZUZhY3RvclZhbHVlID0gaXRlbShpKTsK
LSAgICAgICAgcmVzdWx0LmFwcGVuZChzY2FsZUZhY3RvclZhbHVlLT5jc3NUZXh0KCkpOwotICAg
ICAgICAvLyBGSVhNRTogRXZlbnR1YWxseSB0aGUgc2NhbGUgZmFjdG9yIHNob3VsZCBjb250YWlu
IGl0J3Mgb3duIHVuaXQgaHR0cDovL3drYi51Zy8xMDAxMjAuCi0gICAgICAgIC8vIEZvciBub3cg
J3gnIGlzIGhhcmQtY29kZWQgaW4gdGhlIHBhcnNlciwgc28gd2UgaGFyZC1jb2RlIGl0IGhlcmUg
dG9vLgotICAgICAgICByZXN1bHQuYXBwZW5kKCd4Jyk7Ci0KLSAgICAgICAgKytpOworICAgICAg
ICByZXN1bHQuYXBwZW5kKGl0ZW0oaSktPmNzc1RleHQoKSwgJyAnLCBpdGVtKGkgKyAxKS0+Y3Nz
VGV4dCgpKTsKICAgICB9CiAKICAgICByZXN1bHQuYXBwZW5kKCcpJyk7CkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZS5jcHAJKHJldmlzaW9uIDI1NDk3MCkKKysrIFNv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZS5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTgxLDE1ICs4MSwxMCBAQAogICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19WTUFYOgogICAgIGNh
c2UgQ1NTVW5pdFR5cGU6OkNTU19WTUlOOgogICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19WVzoK
LSAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0RQQ006CiAg
ICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0RQSToKICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1Nf
RFBQWDoKLSNpZiBFTkFCTEUoQ1NTX0lNQUdFX1JFU09MVVRJT04pIHx8IEVOQUJMRShSRVNPTFVU
SU9OX01FRElBX1FVRVJZKQogICAgICAgICByZXR1cm4gdHJ1ZTsKLSNlbHNlCi0gICAgICAgIHJl
dHVybiBmYWxzZTsKLSNlbmRpZgogICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19BVFRSOgogICAg
IGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19DT1VOVEVSOgogICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNT
U19DT1VOVEVSX05BTUU6CkBAIC03MDMsNiArNjk4LDcgQEAKICAgICBjYXNlIENTU1VuaXRUeXBl
OjpDU1NfREVHOgogICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19NUzoKICAgICBjYXNlIENTU1Vu
aXRUeXBlOjpDU1NfSFo6CisgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0RQUFg6CiAgICAgICAg
IGJyZWFrOwogICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19DTToKICAgICAgICAgZmFjdG9yID0g
Y3NzUGl4ZWxzUGVySW5jaCAvIGNtUGVySW5jaDsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Nzcy9w
YXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VySGVscGVycy5jcHAJKHJldmlzaW9u
IDI1NDk3MCkKKysrIFNvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJI
ZWxwZXJzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDM5LDcgKzQzOSw3IEBACiAgICAgcmV0dXJu
IG51bGxwdHI7CiB9CiAKLVJlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gY29uc3VtZVJlc29sdXRp
b24oQ1NTUGFyc2VyVG9rZW5SYW5nZSYgcmFuZ2UpCitSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+
IGNvbnN1bWVSZXNvbHV0aW9uKENTU1BhcnNlclRva2VuUmFuZ2UmIHJhbmdlLCBBbGxvd1hSZXNv
bHV0aW9uVW5pdCBhbGxvd1gpCiB7CiAgICAgY29uc3QgQ1NTUGFyc2VyVG9rZW4mIHRva2VuID0g
cmFuZ2UucGVlaygpOwogICAgIC8vIFVubGlrZSB0aGUgb3RoZXIgdHlwZXMsIGNhbGMoKSBkb2Vz
IG5vdCB3b3JrIHdpdGggPHJlc29sdXRpb24+LgpAQCAtNDQ4LDYgKzQ0OCw5IEBACiAgICAgQ1NT
VW5pdFR5cGUgdW5pdCA9IHRva2VuLnVuaXRUeXBlKCk7CiAgICAgaWYgKHVuaXQgPT0gQ1NTVW5p
dFR5cGU6OkNTU19EUFBYIHx8IHVuaXQgPT0gQ1NTVW5pdFR5cGU6OkNTU19EUEkgfHwgdW5pdCA9
PSBDU1NVbml0VHlwZTo6Q1NTX0RQQ00pCiAgICAgICAgIHJldHVybiBDU1NWYWx1ZVBvb2w6OnNp
bmdsZXRvbigpLmNyZWF0ZVZhbHVlKHJhbmdlLmNvbnN1bWVJbmNsdWRpbmdXaGl0ZXNwYWNlKCku
bnVtZXJpY1ZhbHVlKCksIHVuaXQpOworICAgIGlmIChhbGxvd1ggPT0gQWxsb3dYUmVzb2x1dGlv
blVuaXQ6OkFsbG93ICYmIHRva2VuLnZhbHVlKCkgPT0gIngiKQorICAgICAgICByZXR1cm4gQ1NT
VmFsdWVQb29sOjpzaW5nbGV0b24oKS5jcmVhdGVWYWx1ZShyYW5nZS5jb25zdW1lSW5jbHVkaW5n
V2hpdGVzcGFjZSgpLm51bWVyaWNWYWx1ZSgpLCBDU1NVbml0VHlwZTo6Q1NTX0RQUFgpOworCiAg
ICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKQEAgLTE0ODUsMjIgKzE0ODgsMTcgQEAKICAgICBDU1NQ
YXJzZXJUb2tlblJhbmdlIGFyZ3MgPSBjb25zdW1lRnVuY3Rpb24ocmFuZ2VDb3B5KTsKICAgICBS
ZWZQdHI8Q1NTSW1hZ2VTZXRWYWx1ZT4gaW1hZ2VTZXQgPSBDU1NJbWFnZVNldFZhbHVlOjpjcmVh
dGUoKTsKICAgICBkbyB7Ci0gICAgICAgIFJlZlB0cjxDU1NWYWx1ZT4gaW1hZ2UgPSBjb25zdW1l
SW1hZ2UoYXJncywgY29udGV4dCwgKGFsbG93ZWRJbWFnZVR5cGUgfCBBbGxvd2VkSW1hZ2VUeXBl
OjpSYXdTdHJpbmdBc1VSTCkgLSBBbGxvd2VkSW1hZ2VUeXBlOjpJbWFnZVNldCk7CisgICAgICAg
IGF1dG8gaW1hZ2UgPSBjb25zdW1lSW1hZ2UoYXJncywgY29udGV4dCwgKGFsbG93ZWRJbWFnZVR5
cGUgfCBBbGxvd2VkSW1hZ2VUeXBlOjpSYXdTdHJpbmdBc1VSTCkgLSBBbGxvd2VkSW1hZ2VUeXBl
OjpJbWFnZVNldCk7CiAgICAgICAgIGlmICghaW1hZ2UpCiAgICAgICAgICAgICByZXR1cm4gbnVs
bHB0cjsKIAogICAgICAgICBpbWFnZVNldC0+YXBwZW5kKGltYWdlLnJlbGVhc2VOb25OdWxsKCkp
OwogCi0gICAgICAgIGNvbnN0IENTU1BhcnNlclRva2VuJiB0b2tlbiA9IGFyZ3MuY29uc3VtZUlu
Y2x1ZGluZ1doaXRlc3BhY2UoKTsKLSAgICAgICAgaWYgKHRva2VuLnR5cGUoKSAhPSBEaW1lbnNp
b25Ub2tlbikKKyAgICAgICAgYXV0byByZXNvbHV0aW9uID0gY29uc3VtZVJlc29sdXRpb24oYXJn
cywgQWxsb3dYUmVzb2x1dGlvblVuaXQ6OkFsbG93KTsKKyAgICAgICAgaWYgKCFyZXNvbHV0aW9u
IHx8IHJlc29sdXRpb24tPmZsb2F0VmFsdWUoKSA8PSAwKQogICAgICAgICAgICAgcmV0dXJuIG51
bGxwdHI7Ci0gICAgICAgIGlmICh0b2tlbi52YWx1ZSgpICE9ICJ4IikKLSAgICAgICAgICAgIHJl
dHVybiBudWxscHRyOwotICAgICAgICBBU1NFUlQodG9rZW4udW5pdFR5cGUoKSA9PSBDU1NVbml0
VHlwZTo6Q1NTX1VOS05PV04pOwotICAgICAgICBkb3VibGUgaW1hZ2VTY2FsZUZhY3RvciA9IHRv
a2VuLm51bWVyaWNWYWx1ZSgpOwotICAgICAgICBpZiAoaW1hZ2VTY2FsZUZhY3RvciA8PSAwKQot
ICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0gICAgICAgIGltYWdlU2V0LT5hcHBlbmQoQ1NT
VmFsdWVQb29sOjpzaW5nbGV0b24oKS5jcmVhdGVWYWx1ZShpbWFnZVNjYWxlRmFjdG9yLCBDU1NV
bml0VHlwZTo6Q1NTX05VTUJFUikpOworCisgICAgICAgIGltYWdlU2V0LT5hcHBlbmQocmVzb2x1
dGlvbi5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICB9IHdoaWxlIChjb25zdW1lQ29tbWFJbmNsdWRp
bmdXaGl0ZXNwYWNlKGFyZ3MpKTsKICAgICBpZiAoIWFyZ3MuYXRFbmQoKSkKICAgICAgICAgcmV0
dXJuIG51bGxwdHI7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5
UGFyc2VySGVscGVycy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIv
Q1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmgJKHJldmlzaW9uIDI1NDk3MCkKKysrIFNvdXJjZS9X
ZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTUyLDEwICs1Miw4IEBACiAvLyBjb25zdW1lRnVuY3Rpb24gZXhwZWN0cyB0aGUgcmFu
Z2Ugc3RhcnRzIHdpdGggYSBGdW5jdGlvblRva2VuLgogQ1NTUGFyc2VyVG9rZW5SYW5nZSBjb25z
dW1lRnVuY3Rpb24oQ1NTUGFyc2VyVG9rZW5SYW5nZSYpOwogCi1lbnVtIGNsYXNzIFVuaXRsZXNz
UXVpcmsgewotICAgIEFsbG93LAotICAgIEZvcmJpZAotfTsKK2VudW0gY2xhc3MgVW5pdGxlc3NR
dWlyayB7IEFsbG93LCBGb3JiaWQgfTsKK2VudW0gY2xhc3MgQWxsb3dYUmVzb2x1dGlvblVuaXQg
eyBBbGxvdywgRm9yYmlkIH07CiAKIFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gY29uc3VtZUlu
dGVnZXIoQ1NTUGFyc2VyVG9rZW5SYW5nZSYsIGRvdWJsZSBtaW5pbXVtVmFsdWUgPSAtc3RkOjpu
dW1lcmljX2xpbWl0czxkb3VibGU+OjptYXgoKSk7CiBSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+
IGNvbnN1bWVQb3NpdGl2ZUludGVnZXIoQ1NTUGFyc2VyVG9rZW5SYW5nZSYpOwpAQCAtNjcsNyAr
NjUsNyBAQAogUmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiBjb25zdW1lTGVuZ3RoT3JQZXJjZW50
KENTU1BhcnNlclRva2VuUmFuZ2UmLCBDU1NQYXJzZXJNb2RlLCBWYWx1ZVJhbmdlLCBVbml0bGVz
c1F1aXJrID0gVW5pdGxlc3NRdWlyazo6Rm9yYmlkKTsKIFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1
ZT4gY29uc3VtZUFuZ2xlKENTU1BhcnNlclRva2VuUmFuZ2UmLCBDU1NQYXJzZXJNb2RlLCBVbml0
bGVzc1F1aXJrID0gVW5pdGxlc3NRdWlyazo6Rm9yYmlkKTsKIFJlZlB0cjxDU1NQcmltaXRpdmVW
YWx1ZT4gY29uc3VtZVRpbWUoQ1NTUGFyc2VyVG9rZW5SYW5nZSYsIENTU1BhcnNlck1vZGUsIFZh
bHVlUmFuZ2UsIFVuaXRsZXNzUXVpcmsgPSBVbml0bGVzc1F1aXJrOjpGb3JiaWQpOwotUmVmUHRy
PENTU1ByaW1pdGl2ZVZhbHVlPiBjb25zdW1lUmVzb2x1dGlvbihDU1NQYXJzZXJUb2tlblJhbmdl
Jik7CitSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IGNvbnN1bWVSZXNvbHV0aW9uKENTU1BhcnNl
clRva2VuUmFuZ2UmLCBBbGxvd1hSZXNvbHV0aW9uVW5pdCA9IEFsbG93WFJlc29sdXRpb25Vbml0
OjpGb3JiaWQpOwogCiBSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IGNvbnN1bWVJZGVudChDU1NQ
YXJzZXJUb2tlblJhbmdlJik7CiBSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IGNvbnN1bWVJZGVu
dFJhbmdlKENTU1BhcnNlclRva2VuUmFuZ2UmLCBDU1NWYWx1ZUlEIGxvd2VyLCBDU1NWYWx1ZUlE
IHVwcGVyKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>388972</attachid>
            <date>2020-01-27 23:12:01 -0800</date>
            <delta_ts>2020-01-27 23:54:53 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-100120-20200128091159.patch</filename>
            <type>text/plain</type>
            <size>36298</size>
            <attacher name="Noam Rosenthal">noam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI1NTIyNikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM3IEBACisyMDIwLTAxLTI3ICBOb2FtIFJv
c2VudGhhbCAgPG5vYW1Ad2Via2l0Lm9yZz4KKworICAgICAgICAtd2Via2l0LWltYWdlLXNldCBz
aG91bGQgc3VwcG9ydCByZXNvbHV0aW9uIHVuaXRzIG90aGVyIHRoYW4gJ3gnCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDAxMjAKKworICAgICAgICBS
ZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKworICAgICAgICBMZXZlcmFnZWQgcHJldmlvdXMgd29y
ayBvbiBpbWFnZS1yZXNvbHV0aW9uIHRvIGVuYWJsZSBkcGkvZHBweC9kcGNtIGluIENTUyBpbWFn
ZS1zZXQuCisgICAgICAgIE5vdyB0aGUgc2Vjb25kIHZhbHVlIG9mIGV2ZXJ5IGVudHJ5IGluIHRo
ZSBpbWFnZS1zZXQgaXMgcGFyc2VkIGxpa2UgYW55IHJlc29sdXRpb24sCisgICAgICAgIGFsbG93
aW5nICJ4IiBhcyBhIHN5bm9uaW0gZm9yICJkcHB4LgorCisgICAgICAgIFRoaXMgY2hhbmdlcyBj
b21wdXRlZCBzdHlsZSBiZWhhdmlvciBmb3IgaW1hZ2Utc2V0IC0gIngiIHJlc29sdXRpb24gdmFs
dWVzIHdpbGwgYmUgY29udmVydGVkCisgICAgICAgIHRvICJkcHB4Ii4gVGhpcyBpcyBpbiBsaW5l
IHdpdGggdGhlIHNwaXJpdCBvZiBjb21wdXRlZCB2YWx1ZXMsIHRob3VnaCBpdCdzIG5vdCBzcGVj
J2VkIHBhcnRpY3VsYXJseS4KKworICAgICAgICBUZXN0czogZmFzdC9oaWRwaS9pbWFnZS1zZXQt
dW5pdHMuaHRtbAorCisgICAgICAgICogY3NzL0NTU0ltYWdlU2V0VmFsdWUuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6Q1NTSW1hZ2VTZXRWYWx1ZTo6ZmlsbEltYWdlU2V0KToKKyAgICAgICAgKFdl
YkNvcmU6OkNTU0ltYWdlU2V0VmFsdWU6OnVwZGF0ZURldmljZVNjYWxlRmFjdG9yKToKKyAgICAg
ICAgKFdlYkNvcmU6OkNTU0ltYWdlU2V0VmFsdWU6OmN1c3RvbUNTU1RleHQgY29uc3QpOgorICAg
ICAgICAgICAgICAgIENvbnZlcnQgdmFsdWVzIHRvIGRwcHggYmVmb3JlIHNvcnRpbmcgdGhlbSB0
aGUgaW1hZ2Ugc2V0LgorICAgICAgICAgICAgICAgIFVzZSBnaXZlbiBDU1MgdW5pdHMgaW4gY29t
cHV0ZWQgc3R5bGVzIGluc3RlYWQgb2YgaGFyZGNvZGluZyAieCIgCisKKyAgICAgICAgKiBjc3Mv
Q1NTUHJpbWl0aXZlVmFsdWUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6aXNWYWxpZENTU1VuaXRU
eXBlRm9yRG91YmxlQ29udmVyc2lvbik6CisgICAgICAgIChXZWJDb3JlOjpDU1NQcmltaXRpdmVW
YWx1ZTo6Y29udmVyc2lvblRvQ2Fub25pY2FsVW5pdHNTY2FsZUZhY3Rvcik6CisgICAgICAgICAg
ICAgICAgQWxsb3cgY29udmVyc2lvbiBvZiBkcGkvZHBweC9kcGNtIHRvIGNhbm9uaWNhbCAoZHBw
eCkuCisKKyAgICAgICAgKiBjc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VySGVscGVycy5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpDU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnM6OmNvbnN1bWVSZXNv
bHV0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1Byb3BlcnR5UGFyc2VySGVscGVyczo6Y29u
c3VtZUltYWdlU2V0KToKKyAgICAgICAgKiBjc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VySGVs
cGVycy5oOgorICAgICAgICAgICAgICAgIENvbnN1bWUgYW55IHJlc29sdXRpb24gd2hlbiBwYXJz
aW5nIGltYWdlLXNldC4KKwogMjAyMC0wMS0yNyAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2Vy
QGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OIChyMjUzNjM0KTogY3JpY2J1enouY29t
IG1lZGlhIGNvbnRyb2xzIHZhbmlzaCBkZXBlbmRpbmcgb24gcGFnZSBzY2FsZQpJbmRleDogU291
cmNlL1dlYkNvcmUvY3NzL0NTU0ltYWdlU2V0VmFsdWUuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NJbWFnZVNldFZhbHVlLmNwcAkocmV2aXNpb24gMjU1MjI2KQorKysg
U291cmNlL1dlYkNvcmUvY3NzL0NTU0ltYWdlU2V0VmFsdWUuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC01MCwyMCArNTAsMTUgQEAgQ1NTSW1hZ2VTZXRWYWx1ZTo6fkNTU0ltYWdlU2V0VmFsdWUoKSA9
IAogdm9pZCBDU1NJbWFnZVNldFZhbHVlOjpmaWxsSW1hZ2VTZXQoKQogewogICAgIHNpemVfdCBs
ZW5ndGggPSB0aGlzLT5sZW5ndGgoKTsKLSAgICBzaXplX3QgaSA9IDA7Ci0gICAgd2hpbGUgKGkg
PCBsZW5ndGgpIHsKKyAgICBmb3IgKHNpemVfdCBpID0gMDsgaSArIDEgPCBsZW5ndGg7IGkgKz0g
MikgewogICAgICAgICBDU1NWYWx1ZSogaW1hZ2VWYWx1ZSA9IGl0ZW0oaSk7CisgICAgICAgIENT
U1ZhbHVlKiBzY2FsZUZhY3RvclZhbHVlID0gaXRlbShpICsgMSk7CisKICAgICAgICAgQVNTRVJU
KGlzPENTU0ltYWdlVmFsdWU+KGltYWdlVmFsdWUpIHx8IGlzPENTU0ltYWdlR2VuZXJhdG9yVmFs
dWU+KGltYWdlVmFsdWUpKTsKLSAgICAgICAgKytpOwotICAgICAgICBBU1NFUlRfV0lUSF9TRUNV
UklUWV9JTVBMSUNBVElPTihpIDwgbGVuZ3RoKTsKLSAgICAgICAgQ1NTVmFsdWUqIHNjYWxlRmFj
dG9yVmFsdWUgPSBpdGVtKGkpOwotICAgICAgICBmbG9hdCBzY2FsZUZhY3RvciA9IGRvd25jYXN0
PENTU1ByaW1pdGl2ZVZhbHVlPigqc2NhbGVGYWN0b3JWYWx1ZSkuZmxvYXRWYWx1ZSgpOwotCi0g
ICAgICAgIEltYWdlV2l0aFNjYWxlIGltYWdlOwotICAgICAgICBpbWFnZS52YWx1ZSA9IGltYWdl
VmFsdWU7Ci0gICAgICAgIGltYWdlLnNjYWxlRmFjdG9yID0gc2NhbGVGYWN0b3I7Ci0gICAgICAg
IG1faW1hZ2VzSW5TZXQuYXBwZW5kKGltYWdlKTsKLSAgICAgICAgKytpOworICAgICAgICBBU1NF
UlQoaXM8Q1NTUHJpbWl0aXZlVmFsdWU+KHNjYWxlRmFjdG9yVmFsdWUpKTsKKworICAgICAgICBm
bG9hdCBzY2FsZUZhY3RvciA9IGRvd25jYXN0PENTU1ByaW1pdGl2ZVZhbHVlPihzY2FsZUZhY3Rv
clZhbHVlKS0+ZmxvYXRWYWx1ZShDU1NVbml0VHlwZTo6Q1NTX0RQUFgpOworICAgICAgICBtX2lt
YWdlc0luU2V0LmFwcGVuZCh7IGltYWdlVmFsdWUsIHNjYWxlRmFjdG9yIH0pOwogICAgIH0KIAog
ICAgIC8vIFNvcnQgdGhlIGltYWdlcyBzbyB0aGF0IHRoZXkgYXJlIHN0b3JlZCBpbiBvcmRlciBm
cm9tIGxvd2VzdCByZXNvbHV0aW9uIHRvIGhpZ2hlc3QuCkBAIC0xMDYsNyArMTAxLDYgQEAgSW1h
Z2VXaXRoU2NhbGUgQ1NTSW1hZ2VTZXRWYWx1ZTo6c2VsZWN0QgogCiB2b2lkIENTU0ltYWdlU2V0
VmFsdWU6OnVwZGF0ZURldmljZVNjYWxlRmFjdG9yKGNvbnN0IERvY3VtZW50JiBkb2N1bWVudCkK
IHsKLQogICAgIC8vIEZJWE1FOiBJbiB0aGUgZnV0dXJlLCB3ZSB3YW50IHRvIHRha2UgbXVjaCBt
b3JlIHRoYW4gZGV2aWNlU2NhbGVGYWN0b3IgaW50byBhY291bnQgaGVyZS4KICAgICAvLyBBbGwg
Zm9ybXMgb2Ygc2NhbGUgc2hvdWxkIGJlIGluY2x1ZGVkOiBQYWdlOjpwYWdlU2NhbGVGYWN0b3Io
KSwgRnJhbWU6OnBhZ2Vab29tRmFjdG9yKCksCiAgICAgLy8gYW5kIGFueSBDU1MgdHJhbnNmb3Jt
cy4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgxNjk4CkBAIC0xMzYs
MjQgKzEzMCwxMSBAQCBTdHJpbmcgQ1NTSW1hZ2VTZXRWYWx1ZTo6Y3VzdG9tQ1NTVGV4dCgpCiAg
ICAgcmVzdWx0LmFwcGVuZExpdGVyYWwoImltYWdlLXNldCgiKTsKIAogICAgIHNpemVfdCBsZW5n
dGggPSB0aGlzLT5sZW5ndGgoKTsKLSAgICBzaXplX3QgaSA9IDA7Ci0gICAgd2hpbGUgKGkgPCBs
ZW5ndGgpIHsKKyAgICBmb3IgKHNpemVfdCBpID0gMDsgaSArIDEgPCBsZW5ndGg7IGkgKz0gMikg
ewogICAgICAgICBpZiAoaSA+IDApCiAgICAgICAgICAgICByZXN1bHQuYXBwZW5kTGl0ZXJhbCgi
LCAiKTsKIAotICAgICAgICBjb25zdCBDU1NWYWx1ZSogaW1hZ2VWYWx1ZSA9IGl0ZW0oaSk7Ci0g
ICAgICAgIHJlc3VsdC5hcHBlbmQoaW1hZ2VWYWx1ZS0+Y3NzVGV4dCgpKTsKLSAgICAgICAgcmVz
dWx0LmFwcGVuZCgnICcpOwotCi0gICAgICAgICsraTsKLSAgICAgICAgQVNTRVJUX1dJVEhfU0VD
VVJJVFlfSU1QTElDQVRJT04oaSA8IGxlbmd0aCk7Ci0gICAgICAgIGNvbnN0IENTU1ZhbHVlKiBz
Y2FsZUZhY3RvclZhbHVlID0gaXRlbShpKTsKLSAgICAgICAgcmVzdWx0LmFwcGVuZChzY2FsZUZh
Y3RvclZhbHVlLT5jc3NUZXh0KCkpOwotICAgICAgICAvLyBGSVhNRTogRXZlbnR1YWxseSB0aGUg
c2NhbGUgZmFjdG9yIHNob3VsZCBjb250YWluIGl0J3Mgb3duIHVuaXQgaHR0cDovL3drYi51Zy8x
MDAxMjAuCi0gICAgICAgIC8vIEZvciBub3cgJ3gnIGlzIGhhcmQtY29kZWQgaW4gdGhlIHBhcnNl
ciwgc28gd2UgaGFyZC1jb2RlIGl0IGhlcmUgdG9vLgotICAgICAgICByZXN1bHQuYXBwZW5kKCd4
Jyk7Ci0KLSAgICAgICAgKytpOworICAgICAgICByZXN1bHQuYXBwZW5kKGl0ZW0oaSktPmNzc1Rl
eHQoKSwgJyAnLCBpdGVtKGkgKyAxKS0+Y3NzVGV4dCgpKTsKICAgICB9CiAKICAgICByZXN1bHQu
YXBwZW5kKCcpJyk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWUu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZS5j
cHAJKHJldmlzaW9uIDI1NTIyNikKKysrIFNvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVW
YWx1ZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTgxLDE1ICs4MSwxMCBAQCBzdGF0aWMgaW5saW5l
IGJvb2wgaXNWYWxpZENTU1VuaXRUeXBlRm9yCiAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX1ZN
QVg6CiAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX1ZNSU46CiAgICAgY2FzZSBDU1NVbml0VHlw
ZTo6Q1NTX1ZXOgotICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICBjYXNlIENTU1VuaXRUeXBlOjpD
U1NfRFBDTToKICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfRFBJOgogICAgIGNhc2UgQ1NTVW5p
dFR5cGU6OkNTU19EUFBYOgotI2lmIEVOQUJMRShDU1NfSU1BR0VfUkVTT0xVVElPTikgfHwgRU5B
QkxFKFJFU09MVVRJT05fTUVESUFfUVVFUlkpCiAgICAgICAgIHJldHVybiB0cnVlOwotI2Vsc2UK
LSAgICAgICAgcmV0dXJuIGZhbHNlOwotI2VuZGlmCiAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NT
X0FUVFI6CiAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0NPVU5URVI6CiAgICAgY2FzZSBDU1NV
bml0VHlwZTo6Q1NTX0NPVU5URVJfTkFNRToKQEAgLTcwMyw2ICs2OTgsNyBAQCBkb3VibGUgQ1NT
UHJpbWl0aXZlVmFsdWU6OmNvbnZlcnNpb25Ub0NhCiAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NT
X0RFRzoKICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfTVM6CiAgICAgY2FzZSBDU1NVbml0VHlw
ZTo6Q1NTX0haOgorICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19EUFBYOgogICAgICAgICBicmVh
azsKICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfQ006CiAgICAgICAgIGZhY3RvciA9IGNzc1Bp
eGVsc1BlckluY2ggLyBjbVBlckluY2g7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2Vy
L0NTU1Byb3BlcnR5UGFyc2VySGVscGVycy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMuY3BwCShyZXZpc2lvbiAyNTUy
MjYpCisrKyBTb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VySGVscGVy
cy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQzOSw3ICs0MzksNyBAQCBSZWZQdHI8Q1NTUHJpbWl0
aXZlVmFsdWU+IGNvbnN1bWVUaW1lKENTCiAgICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKLVJlZlB0
cjxDU1NQcmltaXRpdmVWYWx1ZT4gY29uc3VtZVJlc29sdXRpb24oQ1NTUGFyc2VyVG9rZW5SYW5n
ZSYgcmFuZ2UpCitSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IGNvbnN1bWVSZXNvbHV0aW9uKENT
U1BhcnNlclRva2VuUmFuZ2UmIHJhbmdlLCBBbGxvd1hSZXNvbHV0aW9uVW5pdCBhbGxvd1gpCiB7
CiAgICAgY29uc3QgQ1NTUGFyc2VyVG9rZW4mIHRva2VuID0gcmFuZ2UucGVlaygpOwogICAgIC8v
IFVubGlrZSB0aGUgb3RoZXIgdHlwZXMsIGNhbGMoKSBkb2VzIG5vdCB3b3JrIHdpdGggPHJlc29s
dXRpb24+LgpAQCAtNDQ4LDYgKzQ0OCw5IEBAIFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gY29u
c3VtZVJlc29sdXQKICAgICBDU1NVbml0VHlwZSB1bml0ID0gdG9rZW4udW5pdFR5cGUoKTsKICAg
ICBpZiAodW5pdCA9PSBDU1NVbml0VHlwZTo6Q1NTX0RQUFggfHwgdW5pdCA9PSBDU1NVbml0VHlw
ZTo6Q1NTX0RQSSB8fCB1bml0ID09IENTU1VuaXRUeXBlOjpDU1NfRFBDTSkKICAgICAgICAgcmV0
dXJuIENTU1ZhbHVlUG9vbDo6c2luZ2xldG9uKCkuY3JlYXRlVmFsdWUocmFuZ2UuY29uc3VtZUlu
Y2x1ZGluZ1doaXRlc3BhY2UoKS5udW1lcmljVmFsdWUoKSwgdW5pdCk7CisgICAgaWYgKGFsbG93
WCA9PSBBbGxvd1hSZXNvbHV0aW9uVW5pdDo6QWxsb3cgJiYgdG9rZW4udmFsdWUoKSA9PSAieCIp
CisgICAgICAgIHJldHVybiBDU1NWYWx1ZVBvb2w6OnNpbmdsZXRvbigpLmNyZWF0ZVZhbHVlKHJh
bmdlLmNvbnN1bWVJbmNsdWRpbmdXaGl0ZXNwYWNlKCkubnVtZXJpY1ZhbHVlKCksIENTU1VuaXRU
eXBlOjpDU1NfRFBQWCk7CisKICAgICByZXR1cm4gbnVsbHB0cjsKIH0KIApAQCAtMTQ4NSwyMiAr
MTQ4OCwxNyBAQCBzdGF0aWMgUmVmUHRyPENTU1ZhbHVlPiBjb25zdW1lSW1hZ2VTZXQoCiAgICAg
Q1NTUGFyc2VyVG9rZW5SYW5nZSBhcmdzID0gY29uc3VtZUZ1bmN0aW9uKHJhbmdlQ29weSk7CiAg
ICAgUmVmUHRyPENTU0ltYWdlU2V0VmFsdWU+IGltYWdlU2V0ID0gQ1NTSW1hZ2VTZXRWYWx1ZTo6
Y3JlYXRlKCk7CiAgICAgZG8gewotICAgICAgICBSZWZQdHI8Q1NTVmFsdWU+IGltYWdlID0gY29u
c3VtZUltYWdlKGFyZ3MsIGNvbnRleHQsIChhbGxvd2VkSW1hZ2VUeXBlIHwgQWxsb3dlZEltYWdl
VHlwZTo6UmF3U3RyaW5nQXNVUkwpIC0gQWxsb3dlZEltYWdlVHlwZTo6SW1hZ2VTZXQpOworICAg
ICAgICBhdXRvIGltYWdlID0gY29uc3VtZUltYWdlKGFyZ3MsIGNvbnRleHQsIChhbGxvd2VkSW1h
Z2VUeXBlIHwgQWxsb3dlZEltYWdlVHlwZTo6UmF3U3RyaW5nQXNVUkwpIC0gQWxsb3dlZEltYWdl
VHlwZTo6SW1hZ2VTZXQpOwogICAgICAgICBpZiAoIWltYWdlKQogICAgICAgICAgICAgcmV0dXJu
IG51bGxwdHI7CiAKICAgICAgICAgaW1hZ2VTZXQtPmFwcGVuZChpbWFnZS5yZWxlYXNlTm9uTnVs
bCgpKTsKIAotICAgICAgICBjb25zdCBDU1NQYXJzZXJUb2tlbiYgdG9rZW4gPSBhcmdzLmNvbnN1
bWVJbmNsdWRpbmdXaGl0ZXNwYWNlKCk7Ci0gICAgICAgIGlmICh0b2tlbi50eXBlKCkgIT0gRGlt
ZW5zaW9uVG9rZW4pCi0gICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICAgICAgaWYgKHRv
a2VuLnZhbHVlKCkgIT0gIngiKQorICAgICAgICBhdXRvIHJlc29sdXRpb24gPSBjb25zdW1lUmVz
b2x1dGlvbihhcmdzLCBBbGxvd1hSZXNvbHV0aW9uVW5pdDo6QWxsb3cpOworICAgICAgICBpZiAo
IXJlc29sdXRpb24gfHwgcmVzb2x1dGlvbi0+ZmxvYXRWYWx1ZSgpIDw9IDApCiAgICAgICAgICAg
ICByZXR1cm4gbnVsbHB0cjsKLSAgICAgICAgQVNTRVJUKHRva2VuLnVuaXRUeXBlKCkgPT0gQ1NT
VW5pdFR5cGU6OkNTU19VTktOT1dOKTsKLSAgICAgICAgZG91YmxlIGltYWdlU2NhbGVGYWN0b3Ig
PSB0b2tlbi5udW1lcmljVmFsdWUoKTsKLSAgICAgICAgaWYgKGltYWdlU2NhbGVGYWN0b3IgPD0g
MCkKLSAgICAgICAgICAgIHJldHVybiBudWxscHRyOwotICAgICAgICBpbWFnZVNldC0+YXBwZW5k
KENTU1ZhbHVlUG9vbDo6c2luZ2xldG9uKCkuY3JlYXRlVmFsdWUoaW1hZ2VTY2FsZUZhY3Rvciwg
Q1NTVW5pdFR5cGU6OkNTU19OVU1CRVIpKTsKKworICAgICAgICBpbWFnZVNldC0+YXBwZW5kKHJl
c29sdXRpb24ucmVsZWFzZU5vbk51bGwoKSk7CiAgICAgfSB3aGlsZSAoY29uc3VtZUNvbW1hSW5j
bHVkaW5nV2hpdGVzcGFjZShhcmdzKSk7CiAgICAgaWYgKCFhcmdzLmF0RW5kKCkpCiAgICAgICAg
IHJldHVybiBudWxscHRyOwpJbmRleDogU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9w
ZXJ0eVBhcnNlckhlbHBlcnMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9jc3MvcGFy
c2VyL0NTU1Byb3BlcnR5UGFyc2VySGVscGVycy5oCShyZXZpc2lvbiAyNTUyMjYpCisrKyBTb3Vy
Y2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VySGVscGVycy5oCSh3b3JraW5n
IGNvcHkpCkBAIC01MiwxMCArNTIsOCBAQCBib29sIGNvbnN1bWVTbGFzaEluY2x1ZGluZ1doaXRl
c3BhY2UoQ1NTCiAvLyBjb25zdW1lRnVuY3Rpb24gZXhwZWN0cyB0aGUgcmFuZ2Ugc3RhcnRzIHdp
dGggYSBGdW5jdGlvblRva2VuLgogQ1NTUGFyc2VyVG9rZW5SYW5nZSBjb25zdW1lRnVuY3Rpb24o
Q1NTUGFyc2VyVG9rZW5SYW5nZSYpOwogCi1lbnVtIGNsYXNzIFVuaXRsZXNzUXVpcmsgewotICAg
IEFsbG93LAotICAgIEZvcmJpZAotfTsKK2VudW0gY2xhc3MgVW5pdGxlc3NRdWlyayB7IEFsbG93
LCBGb3JiaWQgfTsKK2VudW0gY2xhc3MgQWxsb3dYUmVzb2x1dGlvblVuaXQgeyBBbGxvdywgRm9y
YmlkIH07CiAKIFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gY29uc3VtZUludGVnZXIoQ1NTUGFy
c2VyVG9rZW5SYW5nZSYsIGRvdWJsZSBtaW5pbXVtVmFsdWUgPSAtc3RkOjpudW1lcmljX2xpbWl0
czxkb3VibGU+OjptYXgoKSk7CiBSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IGNvbnN1bWVQb3Np
dGl2ZUludGVnZXIoQ1NTUGFyc2VyVG9rZW5SYW5nZSYpOwpAQCAtNjcsNyArNjUsNyBAQCBSZWZQ
dHI8Q1NTUHJpbWl0aXZlVmFsdWU+IGNvbnN1bWVQZXJjZW50CiBSZWZQdHI8Q1NTUHJpbWl0aXZl
VmFsdWU+IGNvbnN1bWVMZW5ndGhPclBlcmNlbnQoQ1NTUGFyc2VyVG9rZW5SYW5nZSYsIENTU1Bh
cnNlck1vZGUsIFZhbHVlUmFuZ2UsIFVuaXRsZXNzUXVpcmsgPSBVbml0bGVzc1F1aXJrOjpGb3Ji
aWQpOwogUmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiBjb25zdW1lQW5nbGUoQ1NTUGFyc2VyVG9r
ZW5SYW5nZSYsIENTU1BhcnNlck1vZGUsIFVuaXRsZXNzUXVpcmsgPSBVbml0bGVzc1F1aXJrOjpG
b3JiaWQpOwogUmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiBjb25zdW1lVGltZShDU1NQYXJzZXJU
b2tlblJhbmdlJiwgQ1NTUGFyc2VyTW9kZSwgVmFsdWVSYW5nZSwgVW5pdGxlc3NRdWlyayA9IFVu
aXRsZXNzUXVpcms6OkZvcmJpZCk7Ci1SZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IGNvbnN1bWVS
ZXNvbHV0aW9uKENTU1BhcnNlclRva2VuUmFuZ2UmKTsKK1JlZlB0cjxDU1NQcmltaXRpdmVWYWx1
ZT4gY29uc3VtZVJlc29sdXRpb24oQ1NTUGFyc2VyVG9rZW5SYW5nZSYsIEFsbG93WFJlc29sdXRp
b25Vbml0ID0gQWxsb3dYUmVzb2x1dGlvblVuaXQ6OkZvcmJpZCk7CiAKIFJlZlB0cjxDU1NQcmlt
aXRpdmVWYWx1ZT4gY29uc3VtZUlkZW50KENTU1BhcnNlclRva2VuUmFuZ2UmKTsKIFJlZlB0cjxD
U1NQcmltaXRpdmVWYWx1ZT4gY29uc3VtZUlkZW50UmFuZ2UoQ1NTUGFyc2VyVG9rZW5SYW5nZSYs
IENTU1ZhbHVlSUQgbG93ZXIsIENTU1ZhbHVlSUQgdXBwZXIpOwpJbmRleDogTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24g
MjU1MjI2KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMg
KzEsMjcgQEAKKzIwMjAtMDEtMjcgIE5vYW0gUm9zZW50aGFsICA8bm9hbUB3ZWJraXQub3JnPgor
CisgICAgICAgIC13ZWJraXQtaW1hZ2Utc2V0IHNob3VsZCBzdXBwb3J0IHJlc29sdXRpb24gdW5p
dHMgb3RoZXIgdGhhbiAneCcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTEwMDEyMAorCisgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorCisg
ICAgICAgIEhhZCB0byBtb2RpZnkgc2V2ZXJhbCBpbWFnZS1zZXQgcGFyc2luZyB0ZXN0cyBiZWNh
dXNlIG9mIHRoZSBiZWhhdmlvciBjaGFuZ2UgaW4KKyAgICAgICAgY29tcHV0ZWQgc3R5bGUgKHgg
PT4gZHBweCkuCisKKyAgICAgICAgQWxzbyBhZGRlZCBhIGNvdXBsZSBvZiBwYXJzaW5nL3JlbmRl
cmluZyB0ZXN0cyBzcGVjaWZpY2FsbHkgdG8gdGVzdCB0aGUgbmV3IGJlaGF2aW9yCisgICAgICAg
IG9mIGRwaS9kcGNtL2RwcHguCisKKyAgICAgICAgKiBmYXN0L2Nzcy9jdXJzb3ItcGFyc2luZy1p
bWFnZS1zZXQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvY3NzL2N1cnNvci1wYXJzaW5n
LWltYWdlLXNldC5odG1sOgorICAgICAgICAqIGZhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L2Nzcy9pbWFnZS1zZXQtcGFyc2luZy1pbnZhbGlk
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L2Nzcy9pbWFnZS1zZXQtcGFyc2luZy5odG1s
OgorICAgICAgICAqIGZhc3QvY3NzL2ltYWdlLXNldC1zZXR0aW5nLWV4cGVjdGVkLnR4dDoKKyAg
ICAgICAgKiBmYXN0L2Nzcy9pbWFnZS1zZXQtc2V0dGluZy5odG1sOgorICAgICAgICAqIGZhc3Qv
Y3NzL2ltYWdlLXNldC11bnByZWZpeGVkLmh0bWw6CisgICAgICAgICogZmFzdC9oaWRwaS9pbWFn
ZS1zZXQtdW5pdHMtZXhwZWN0ZWQuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9oaWRwaS9p
bWFnZS1zZXQtdW5pdHMuaHRtbDogQWRkZWQuCisKIDIwMjAtMDEtMjcgIFNpbW9uIEZyYXNlciAg
PHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CiAKICAgICAgICAgUkVHUkVTU0lPTiAocjI1MzYzNCk6
IGNyaWNidXp6LmNvbSBtZWRpYSBjb250cm9scyB2YW5pc2ggZGVwZW5kaW5nIG9uIHBhZ2Ugc2Nh
bGUKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvY3NzL2N1cnNvci1wYXJzaW5nLWltYWdlLXNldC1l
eHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9jc3MvY3Vyc29yLXBh
cnNpbmctaW1hZ2Utc2V0LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMjU1MjI2KQorKysgTGF5b3V0
VGVzdHMvZmFzdC9jc3MvY3Vyc29yLXBhcnNpbmctaW1hZ2Utc2V0LWV4cGVjdGVkLnR4dAkod29y
a2luZyBjb3B5KQpAQCAtNiwxMCArNiwxMCBAQCBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBz
ZXJpZXMgb2YgIlBBCiBCdWcgOTk0OTMKIAogVGVzdCBhIGJ1bmNoIG9mIGN1cnNvciBydWxlcyB3
aGljaCBzaG91bGQgcm91bmQtdHJpcCBleGFjdGx5LgotUEFTUyBzdHlsZS5jc3NUZXh0IGlzICJj
dXJzb3I6IGltYWdlLXNldCh1cmwoXCJmaWxlOi8vL2Zvby5wbmdcIikgMXgpLCBhdXRvOyIKLVBB
U1Mgc3R5bGUuY3NzVGV4dCBpcyAiY3Vyc29yOiBpbWFnZS1zZXQodXJsKFwiZmlsZTovLy9mb28u
cG5nXCIpIDF4LCB1cmwoXCJmaWxlOi8vL2ZvbzJ4LnBuZ1wiKSAyeCksIGF1dG87IgotUEFTUyBz
dHlsZS5jc3NUZXh0IGlzICJjdXJzb3I6IGltYWdlLXNldCh1cmwoXCJmaWxlOi8vL2Zvby5wbmdc
IikgMXgsIHVybChcImZpbGU6Ly8vZm9vMngucG5nXCIpIDJ4KSAyIDMsIGF1dG87IgotUEFTUyBz
dHlsZS5jc3NUZXh0IGlzICJjdXJzb3I6IGltYWdlLXNldCh1cmwoXCJmaWxlOi8vL2ZvbzAzLnBu
Z1wiKSAwLjN4LCB1cmwoXCJmaWxlOi8vL2ZvbzV4LnBuZ1wiKSA1eCkgNiA1LCB1cmwoXCJmaWxl
Oi8vL2Zvby5wbmdcIikgMTIgMywgcG9pbnRlcjsiCitQQVNTIHN0eWxlLmNzc1RleHQgaXMgImN1
cnNvcjogaW1hZ2Utc2V0KHVybChcImZpbGU6Ly8vZm9vLnBuZ1wiKSAxZHBweCksIGF1dG87Igor
UEFTUyBzdHlsZS5jc3NUZXh0IGlzICJjdXJzb3I6IGltYWdlLXNldCh1cmwoXCJmaWxlOi8vL2Zv
by5wbmdcIikgMWRwcHgsIHVybChcImZpbGU6Ly8vZm9vMngucG5nXCIpIDJkcHB4KSwgYXV0bzsi
CitQQVNTIHN0eWxlLmNzc1RleHQgaXMgImN1cnNvcjogaW1hZ2Utc2V0KHVybChcImZpbGU6Ly8v
Zm9vLnBuZ1wiKSAxZHBweCwgdXJsKFwiZmlsZTovLy9mb28yeC5wbmdcIikgMmRwcHgpIDIgMywg
YXV0bzsiCitQQVNTIHN0eWxlLmNzc1RleHQgaXMgImN1cnNvcjogaW1hZ2Utc2V0KHVybChcImZp
bGU6Ly8vZm9vMDMucG5nXCIpIDAuM2RwcHgsIHVybChcImZpbGU6Ly8vZm9vNXgucG5nXCIpIDVk
cHB4KSA2IDUsIHVybChcImZpbGU6Ly8vZm9vLnBuZ1wiKSAxMiAzLCBwb2ludGVyOyIKIFBBU1Mg
c3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIAogVEVTVCBDT01QTEVURQpJbmRleDogTGF5b3V0
VGVzdHMvZmFzdC9jc3MvY3Vyc29yLXBhcnNpbmctaW1hZ2Utc2V0Lmh0bWwKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvZmFzdC9jc3MvY3Vyc29yLXBhcnNpbmctaW1hZ2Utc2V0Lmh0bWwJKHJl
dmlzaW9uIDI1NTIyNikKKysrIExheW91dFRlc3RzL2Zhc3QvY3NzL2N1cnNvci1wYXJzaW5nLWlt
YWdlLXNldC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0yMSw3ICsyMSw3IEBAIGZ1bmN0aW9uIHRl
c3RDdXJzb3JSdWxlKHJ1bGUpCiB7CiAgICAgdmFyIGNzc1RleHQgPSBtYWtlQ3Vyc29yUnVsZShy
dWxlKTsKICAgICBzdHlsZSA9IHJvdW5kdHJpcENzc1J1bGUoY3NzVGV4dCk7Ci0gICAgc2hvdWxk
QmVFcXVhbFRvU3RyaW5nKCdzdHlsZS5jc3NUZXh0JywgY3NzVGV4dCk7CisgICAgc2hvdWxkQmVF
cXVhbFRvU3RyaW5nKCdzdHlsZS5jc3NUZXh0JywgY3NzVGV4dC5yZXBsYWNlKC94KD89WywpXSkv
ZywgJ2RwcHgnKSk7CiB9CiAKIGZ1bmN0aW9uIHJvdW5kdHJpcENzc1J1bGUoY3NzVGV4dCkKSW5k
ZXg6IExheW91dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLWV4cGVjdGVkLnR4dAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFnZS1zZXQtcGFyc2luZy1leHBl
Y3RlZC50eHQJKHJldmlzaW9uIDI1NTIyNikKKysrIExheW91dFRlc3RzL2Zhc3QvY3NzL2ltYWdl
LXNldC1wYXJzaW5nLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMTAsNyArMTAsNyBA
QCBQQVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZS5fX3Byb3RvCiBQQVNTIGpzV3JhcHBl
ckNsYXNzKGltYWdlU2V0UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0Z1bmN0aW9uJwogUEFTUyBpbWFn
ZVNldFJ1bGUubGVuZ3RoIGlzIDIKIFBBU1Mgc3ViUnVsZSBpcyAnYScKLVBBU1Mgc3ViUnVsZS5j
c3NUZXh0IGlzICcxJworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzFkcHB4JwogCiBNdWx0aXBs
ZSB2YWx1ZXMgZm9yIGJhY2tncm91bmQtaW1hZ2UgOiB1cmwoJyNhJykgMXgsIHVybCgnI2InKSAy
eAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCkBA
IC0xOCw5ICsxOCw5IEBAIFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlLl9fcHJvdG8K
IFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlLmNvbnN0cnVjdG9yKSBpcyAnRnVuY3Rp
b24nCiBQQVNTIGltYWdlU2V0UnVsZS5sZW5ndGggaXMgNAogUEFTUyBzdWJSdWxlIGlzICdhJwot
UEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzEnCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMWRw
cHgnCiBQQVNTIHN1YlJ1bGUgaXMgJ2InCi1QQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMicKK1BB
U1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcyZHBweCcKIAogU2luZ2xlIHZhbHVlIGZvciBiYWNrZ3Jv
dW5kLWltYWdlIHdpdGhvdXQgdXJsKCkgZnVuY3Rpb24gOiAnI2EnIDF4CiBQQVNTIGpzV3JhcHBl
ckNsYXNzKGltYWdlU2V0UnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKQEAgLTI4LDcgKzI4LDcgQEAg
UEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuX19wcm90bwogUEFTUyBqc1dyYXBwZXJD
bGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicKIFBBU1MgaW1hZ2VT
ZXRSdWxlLmxlbmd0aCBpcyAyCiBQQVNTIHN1YlJ1bGUgaXMgJ2EnCi1QQVNTIHN1YlJ1bGUuY3Nz
VGV4dCBpcyAnMScKK1BBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxZHBweCcKIAogTXVsdGlwbGUg
dmFsdWVzIGZvciBiYWNrZ3JvdW5kLWltYWdlIHdpdGhvdXQgdXJsKCkgZnVuY3Rpb24gOiAnI2En
IDF4LCAnI2InIDJ4CiBQQVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZSkgaXMgJ0NTU1Zh
bHVlTGlzdCcKQEAgLTM2LDkgKzM2LDkgQEAgUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1
bGUuX19wcm90bwogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3Ip
IGlzICdGdW5jdGlvbicKIFBBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyA0CiBQQVNTIHN1YlJ1
bGUgaXMgJ2EnCi1QQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMScKK1BBU1Mgc3ViUnVsZS5jc3NU
ZXh0IGlzICcxZHBweCcKIFBBU1Mgc3ViUnVsZSBpcyAnYicKLVBBU1Mgc3ViUnVsZS5jc3NUZXh0
IGlzICcyJworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzJkcHB4JwogCiBNaXggdmFsdWVzIHdp
dGggYW5kIHdpdGhvdXQgdXJsKCkgZnVuY3Rpb24gOiAnI2EnIDF4LCB1cmwoJyNiJykgMngKIFBB
U1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwpAQCAtNDYs
OSArNDYsOSBAQCBQQVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZS5fX3Byb3RvCiBQQVNT
IGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0Z1bmN0aW9uJwog
UEFTUyBpbWFnZVNldFJ1bGUubGVuZ3RoIGlzIDQKIFBBU1Mgc3ViUnVsZSBpcyAnYScKLVBBU1Mg
c3ViUnVsZS5jc3NUZXh0IGlzICcxJworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzFkcHB4Jwog
UEFTUyBzdWJSdWxlIGlzICdiJwotUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzInCitQQVNTIHN1
YlJ1bGUuY3NzVGV4dCBpcyAnMmRwcHgnCiAKIE11bHRpcGxlIHZhbHVlcyBmb3IgYmFja2dyb3Vu
ZC1pbWFnZSwgb3V0IG9mIG9yZGVyIDogdXJsKCcjYycpIDN4LCB1cmwoJyNiJykgMngsIHVybCgn
I2EnKSAxeAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUpIGlzICdDU1NWYWx1ZUxp
c3QnCkBAIC01NiwxMSArNTYsMTEgQEAgUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUu
X19wcm90bwogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3IpIGlz
ICdGdW5jdGlvbicKIFBBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyA2CiBQQVNTIHN1YlJ1bGUg
aXMgJ2MnCi1QQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMycKK1BBU1Mgc3ViUnVsZS5jc3NUZXh0
IGlzICczZHBweCcKIFBBU1Mgc3ViUnVsZSBpcyAnYicKLVBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlz
ICcyJworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzJkcHB4JwogUEFTUyBzdWJSdWxlIGlzICdh
JwotUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzEnCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAn
MWRwcHgnCiAKIFNpbmdsZSB2YWx1ZSBmb3IgY29udGVudCA6IHVybCgnI2EnKSAxeAogUEFTUyBq
c1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCkBAIC02OCw3ICs2
OCw3IEBAIFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlLl9fcHJvdG8KIFBBU1MganNX
cmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlLmNvbnN0cnVjdG9yKSBpcyAnRnVuY3Rpb24nCiBQQVNT
IGltYWdlU2V0UnVsZS5sZW5ndGggaXMgMgogUEFTUyBzdWJSdWxlIGlzICdhJwotUEFTUyBzdWJS
dWxlLmNzc1RleHQgaXMgJzEnCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMWRwcHgnCiAKIE11
bHRpcGxlIHZhbHVlcyBmb3IgY29udGVudCA6IHVybCgnI2EnKSAxeCwgdXJsKCcjYicpIDJ4CiBQ
QVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKQEAgLTc2
LDkgKzc2LDkgQEAgUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuX19wcm90bwogUEFT
UyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicK
IFBBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyA0CiBQQVNTIHN1YlJ1bGUgaXMgJ2EnCi1QQVNT
IHN1YlJ1bGUuY3NzVGV4dCBpcyAnMScKK1BBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxZHBweCcK
IFBBU1Mgc3ViUnVsZSBpcyAnYicKLVBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcyJworUEFTUyBz
dWJSdWxlLmNzc1RleHQgaXMgJzJkcHB4JwogCiBTaW5nbGUgdmFsdWUgZm9yIGJvcmRlci1pbWFn
ZSA6IHVybCgnI2EnKSAxeAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUpIGlzICdD
U1NWYWx1ZUxpc3QnCkBAIC04Niw3ICs4Niw3IEBAIFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VT
ZXRSdWxlLl9fcHJvdG8KIFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlLmNvbnN0cnVj
dG9yKSBpcyAnRnVuY3Rpb24nCiBQQVNTIGltYWdlU2V0UnVsZS5sZW5ndGggaXMgMgogUEFTUyBz
dWJSdWxlIGlzICdhJwotUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzEnCitQQVNTIHN1YlJ1bGUu
Y3NzVGV4dCBpcyAnMWRwcHgnCiAKIE11bHRpcGxlIHZhbHVlcyBmb3IgYm9yZGVyLWltYWdlIDog
dXJsKCcjYScpIDF4LCB1cmwoJyNiJykgMngKIFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRS
dWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwpAQCAtOTQsOSArOTQsOSBAQCBQQVNTIGpzV3JhcHBlckNs
YXNzKGltYWdlU2V0UnVsZS5fX3Byb3RvCiBQQVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVs
ZS5jb25zdHJ1Y3RvcikgaXMgJ0Z1bmN0aW9uJwogUEFTUyBpbWFnZVNldFJ1bGUubGVuZ3RoIGlz
IDQKIFBBU1Mgc3ViUnVsZSBpcyAnYScKLVBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxJworUEFT
UyBzdWJSdWxlLmNzc1RleHQgaXMgJzFkcHB4JwogUEFTUyBzdWJSdWxlIGlzICdiJwotUEFTUyBz
dWJSdWxlLmNzc1RleHQgaXMgJzInCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMmRwcHgnCiAK
IFNpbmdsZSB2YWx1ZSBmb3IgLXdlYmtpdC1tYXNrLWJveC1pbWFnZSA6IHVybCgnI2EnKSAxeAog
UEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCkBAIC0x
MDQsNyArMTA0LDcgQEAgUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuX19wcm90bwog
UEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3IpIGlzICdGdW5jdGlv
bicKIFBBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyAyCiBQQVNTIHN1YlJ1bGUgaXMgJ2EnCi1Q
QVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMScKK1BBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxZHBw
eCcKIAogTXVsdGlwbGUgdmFsdWVzIGZvciAtd2Via2l0LW1hc2stYm94LWltYWdlIDogdXJsKCcj
YScpIDF4LCB1cmwoJyNiJykgMngKIFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBp
cyAnQ1NTVmFsdWVMaXN0JwpAQCAtMTEyLDkgKzExMiw0NSBAQCBQQVNTIGpzV3JhcHBlckNsYXNz
KGltYWdlU2V0UnVsZS5fX3Byb3RvCiBQQVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZS5j
b25zdHJ1Y3RvcikgaXMgJ0Z1bmN0aW9uJwogUEFTUyBpbWFnZVNldFJ1bGUubGVuZ3RoIGlzIDQK
IFBBU1Mgc3ViUnVsZSBpcyAnYScKLVBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxJworUEFTUyBz
dWJSdWxlLmNzc1RleHQgaXMgJzFkcHB4JwogUEFTUyBzdWJSdWxlIGlzICdiJwotUEFTUyBzdWJS
dWxlLmNzc1RleHQgaXMgJzInCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMmRwcHgnCisKK1Np
bmdsZSB2YWx1ZSB3aXRoIGRwcHggOiB1cmwoJyNhJykgMWRwcHgKK1BBU1MganNXcmFwcGVyQ2xh
c3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JworUEFTUyBqc1dyYXBwZXJDbGFzcyhp
bWFnZVNldFJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJworUEFTUyBq
c1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicKK1BB
U1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyAyCitQQVNTIHN1YlJ1bGUgaXMgJ2EnCitQQVNTIHN1
YlJ1bGUuY3NzVGV4dCBpcyAnMWRwcHgnCisKK1NpbmdsZSB2YWx1ZSB3aXRoIGRwaSA6IHVybCgn
I2EnKSAxOTJkcGkKK1BBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFs
dWVMaXN0JworUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuX19wcm90b19fKSBpcyAn
Q1NTVmFsdWVMaXN0UHJvdG90eXBlJworUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUu
Y29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicKK1BBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyAy
CitQQVNTIHN1YlJ1bGUgaXMgJ2EnCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMTkyZHBpJwor
CitTaW5nbGUgdmFsdWUgd2l0aCBkcGNtIDogdXJsKCcjYScpIDEwMmRwY20KK1BBU1MganNXcmFw
cGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JworUEFTUyBqc1dyYXBwZXJD
bGFzcyhpbWFnZVNldFJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwor
UEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3IpIGlzICdGdW5jdGlv
bicKK1BBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyAyCitQQVNTIHN1YlJ1bGUgaXMgJ2EnCitQ
QVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMTAyZHBjbScKKworTXVsdGlwbGUgdmFsdWVzIHdpdGgg
ZHBpLCBkcHB4IGFuZCB4IDogdXJsKCcjYScpIDF4LCB1cmwoJyNiJykgMmRwcHgsIHVybCgnI2Mn
KSAyNTBkcGkKK1BBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVM
aXN0JworUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuX19wcm90b19fKSBpcyAnQ1NT
VmFsdWVMaXN0UHJvdG90eXBlJworUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29u
c3RydWN0b3IpIGlzICdGdW5jdGlvbicKK1BBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyA2CitQ
QVNTIHN1YlJ1bGUgaXMgJ2EnCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMWRwcHgnCitQQVNT
IHN1YlJ1bGUgaXMgJ2InCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMmRwcHgnCitQQVNTIHN1
YlJ1bGUgaXMgJ2MnCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMjUwZHBpJwogUEFTUyBzdWNj
ZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCiBURVNUIENPTVBMRVRFCkluZGV4OiBMYXlvdXRUZXN0
cy9mYXN0L2Nzcy9pbWFnZS1zZXQtcGFyc2luZy1nZW5lcmF0ZWQtZXhwZWN0ZWQudHh0Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLWdlbmVyYXRl
ZC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDI1NTIyNikKKysrIExheW91dFRlc3RzL2Zhc3QvY3Nz
L2ltYWdlLXNldC1wYXJzaW5nLWdlbmVyYXRlZC1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkK
QEAgLTEwLDcgKzEwLDcgQEAgUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuX19wcm90
bwogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3IpIGlzICdGdW5j
dGlvbicKIFBBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyAyCiBQQVNTIHN1YlJ1bGUuY3NzVGV4
dCBpcyAnbGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSknCi1QQVNTIHN1YlJ1bGUuY3NzVGV4
dCBpcyAnMScKK1BBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxZHBweCcKIAogU2luZ2xlIHZhbHVl
IGZvciBjb250ZW50IHdpdGggZ3JhZGllbnQgOiBsaW5lYXItZ3JhZGllbnQoZ3JlZW4sIHdoaXRl
KSAxeAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUpIGlzICdDU1NWYWx1ZUxpc3Qn
CkBAIC0xOCw3ICsxOCw3IEBAIFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlLl9fcHJv
dG8KIFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlLmNvbnN0cnVjdG9yKSBpcyAnRnVu
Y3Rpb24nCiBQQVNTIGltYWdlU2V0UnVsZS5sZW5ndGggaXMgMgogUEFTUyBzdWJSdWxlLmNzc1Rl
eHQgaXMgJ2xpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpJwotUEFTUyBzdWJSdWxlLmNzc1Rl
eHQgaXMgJzEnCitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMWRwcHgnCiAKIFNpbmdsZSB2YWx1
ZSBmb3IgYmFja2dyb3VuZC1pbWFnZSB3aXRoIGdyYWRpZW50cyA6IGxpbmVhci1ncmFkaWVudChn
cmVlbiwgd2hpdGUpIDF4LCByYWRpYWwtZ3JhZGllbnQoYmx1ZSwgd2hpdGUpIDJ4CiBQQVNTIGpz
V3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKQEAgLTI2LDkgKzI2
LDkgQEAgUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuX19wcm90bwogUEFTUyBqc1dy
YXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicKIFBBU1Mg
aW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyA0CiBQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnbGluZWFy
LWdyYWRpZW50KGdyZWVuLCB3aGl0ZSknCi1QQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMScKK1BB
U1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxZHBweCcKIFBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICdy
YWRpYWwtZ3JhZGllbnQoYmx1ZSwgd2hpdGUpJwotUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzIn
CitQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMmRwcHgnCiAKIENvbWJpbmVkIGdyYWRpZW50IGFu
ZCBVUkwgOiB1cmwoJyNhJykgMXgsIGxpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpIDJ4CiBQ
QVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKQEAgLTM2
LDkgKzM2LDkgQEAgUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuX19wcm90bwogUEFT
UyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicK
IFBBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyA0CiBQQVNTIHN1YlJ1bGUgaXMgJ2EnCi1QQVNT
IHN1YlJ1bGUuY3NzVGV4dCBpcyAnMScKK1BBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxZHBweCcK
IFBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICdsaW5lYXItZ3JhZGllbnQoZ3JlZW4sIHdoaXRlKScK
LVBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcyJworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzJk
cHB4JwogCiBDb21iaW5lZCBncmFkaWVudCBhbmQgVVJMIGluIGNvbnRlbnQgOiB1cmwoJyNhJykg
MXgsIGxpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpIDJ4CiBQQVNTIGpzV3JhcHBlckNsYXNz
KGltYWdlU2V0UnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKQEAgLTQ2LDkgKzQ2LDkgQEAgUEFTUyBq
c1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuX19wcm90bwogUEFTUyBqc1dyYXBwZXJDbGFzcyhp
bWFnZVNldFJ1bGUuY29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicKIFBBU1MgaW1hZ2VTZXRSdWxl
Lmxlbmd0aCBpcyA0CiBQQVNTIHN1YlJ1bGUgaXMgJ2EnCi1QQVNTIHN1YlJ1bGUuY3NzVGV4dCBp
cyAnMScKK1BBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxZHBweCcKIFBBU1Mgc3ViUnVsZS5jc3NU
ZXh0IGlzICdsaW5lYXItZ3JhZGllbnQoZ3JlZW4sIHdoaXRlKScKLVBBU1Mgc3ViUnVsZS5jc3NU
ZXh0IGlzICcyJworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzJkcHB4JwogCiBDb21iaW5lZCBn
cmFkaWVudCBhbmQgY3Jvc3MtZmFkZSA6IC13ZWJraXQtY3Jvc3MtZmFkZSh1cmwoJyNhJyksIHVy
bCgnI2InKSwgNzAlKSAxeCwgbGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSkgMngKIFBBU1Mg
anNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwpAQCAtNTYsOSAr
NTYsMTcgQEAgUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuX19wcm90bwogUEFTUyBq
c1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicKIFBB
U1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyA0CiBQQVNTIHN1YlJ1bGUgaXMgJ2EnCi1QQVNTIHN1
YlJ1bGUuY3NzVGV4dCBpcyAnMScKK1BBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxZHBweCcKIFBB
U1Mgc3ViUnVsZS5jc3NUZXh0IGlzICdsaW5lYXItZ3JhZGllbnQoZ3JlZW4sIHdoaXRlKScKLVBB
U1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcyJworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzJkcHB4
JworCitTaW5nbGUgdmFsdWUgZm9yIGJhY2tncm91bmQtaW1hZ2Ugd2l0aCBncmFkaWVudCBhbmQg
ZHBpIDogbGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSkgMTkyZHBpCitQQVNTIGpzV3JhcHBl
ckNsYXNzKGltYWdlU2V0UnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKK1BBU1MganNXcmFwcGVyQ2xh
c3MoaW1hZ2VTZXRSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKK1BB
U1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlLmNvbnN0cnVjdG9yKSBpcyAnRnVuY3Rpb24n
CitQQVNTIGltYWdlU2V0UnVsZS5sZW5ndGggaXMgMgorUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMg
J2xpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpJworUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMg
JzE5MmRwaScKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIAogVEVTVCBDT01QTEVU
RQpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNpbmctZ2VuZXJhdGVk
Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNp
bmctZ2VuZXJhdGVkLmh0bWwJKHJldmlzaW9uIDI1NTIyNikKKysrIExheW91dFRlc3RzL2Zhc3Qv
Y3NzL2ltYWdlLXNldC1wYXJzaW5nLWdlbmVyYXRlZC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC03
NCwzMSArNzQsMzcgQEAgZnVuY3Rpb24gdGVzdEltYWdlU2V0UnVsZShkZXNjcmlwdGlvbiwgcAog
dGVzdEltYWdlU2V0UnVsZSgiU2luZ2xlIHZhbHVlIGZvciBiYWNrZ3JvdW5kLWltYWdlIHdpdGgg
Z3JhZGllbnQiLAogICAgICAgICAgICAgICAgICJiYWNrZ3JvdW5kLWltYWdlIiwKICAgICAgICAg
ICAgICAgICAibGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSkgMXgiLCAyLAotICAgICAgICAg
ICAgICAgIFsibGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSkiLCAiMSJdKTsKKyAgICAgICAg
ICAgICAgICBbImxpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpIiwgIjFkcHB4Il0pOwogdGVz
dEltYWdlU2V0UnVsZSgiU2luZ2xlIHZhbHVlIGZvciBjb250ZW50IHdpdGggZ3JhZGllbnQiLAog
ICAgICAgICAgICAgICAgICJiYWNrZ3JvdW5kLWltYWdlIiwKICAgICAgICAgICAgICAgICAibGlu
ZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSkgMXgiLCAyLAotICAgICAgICAgICAgICAgIFsibGlu
ZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSkiLCAiMSJdKTsKKyAgICAgICAgICAgICAgICBbImxp
bmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpIiwgIjFkcHB4Il0pOwogCiB0ZXN0SW1hZ2VTZXRS
dWxlKCJTaW5nbGUgdmFsdWUgZm9yIGJhY2tncm91bmQtaW1hZ2Ugd2l0aCBncmFkaWVudHMiLAog
ICAgICAgICAgICAgICAgICJiYWNrZ3JvdW5kLWltYWdlIiwKICAgICAgICAgICAgICAgICAibGlu
ZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSkgMXgsIHJhZGlhbC1ncmFkaWVudChibHVlLCB3aGl0
ZSkgMngiLCA0LAotICAgICAgICAgICAgICAgIFsibGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0
ZSkiLCAiMSIsICJyYWRpYWwtZ3JhZGllbnQoYmx1ZSwgd2hpdGUpIiwgIjIiXSk7CisgICAgICAg
ICAgICAgICAgWyJsaW5lYXItZ3JhZGllbnQoZ3JlZW4sIHdoaXRlKSIsICIxZHBweCIsICJyYWRp
YWwtZ3JhZGllbnQoYmx1ZSwgd2hpdGUpIiwgIjJkcHB4Il0pOwogCiB0ZXN0SW1hZ2VTZXRSdWxl
KCJDb21iaW5lZCBncmFkaWVudCBhbmQgVVJMIiwKICAgICAgICAgICAgICAgICAiYmFja2dyb3Vu
ZC1pbWFnZSIsCiAgICAgICAgICAgICAgICAgInVybCgnI2EnKSAxeCwgbGluZWFyLWdyYWRpZW50
KGdyZWVuLCB3aGl0ZSkgMngiLCA0LAotICAgICAgICAgICAgICAgIFsiYSIsICIxIiwgImxpbmVh
ci1ncmFkaWVudChncmVlbiwgd2hpdGUpIiwgIjIiXSk7CisgICAgICAgICAgICAgICAgWyJhIiwg
IjFkcHB4IiwgImxpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpIiwgIjJkcHB4Il0pOwogCiB0
ZXN0SW1hZ2VTZXRSdWxlKCJDb21iaW5lZCBncmFkaWVudCBhbmQgVVJMIGluIGNvbnRlbnQiLAog
ICAgICAgICAgICAgICAgICJjb250ZW50IiwKICAgICAgICAgICAgICAgICAidXJsKCcjYScpIDF4
LCBsaW5lYXItZ3JhZGllbnQoZ3JlZW4sIHdoaXRlKSAyeCIsIDQsCi0gICAgICAgICAgICAgICAg
WyJhIiwgIjEiLCAibGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSkiLCAiMiJdKTsKKyAgICAg
ICAgICAgICAgICBbImEiLCAiMWRwcHgiLCAibGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSki
LCAiMmRwcHgiXSk7CiAKIHRlc3RJbWFnZVNldFJ1bGUoIkNvbWJpbmVkIGdyYWRpZW50IGFuZCBj
cm9zcy1mYWRlIiwKICAgICAgICAgICAgICAgICAiYmFja2dyb3VuZC1pbWFnZSIsCiAgICAgICAg
ICAgICAgICAgIi13ZWJraXQtY3Jvc3MtZmFkZSh1cmwoJyNhJyksIHVybCgnI2InKSwgNzAlKSAx
eCwgbGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSkgMngiLCA0LAotICAgICAgICAgICAgICAg
IFsiYSIsICIxIiwgImxpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUpIiwgIjIiXSk7CisgICAg
ICAgICAgICAgICAgWyJhIiwgIjFkcHB4IiwgImxpbmVhci1ncmFkaWVudChncmVlbiwgd2hpdGUp
IiwgIjJkcHB4Il0pOworCit0ZXN0SW1hZ2VTZXRSdWxlKCJTaW5nbGUgdmFsdWUgZm9yIGJhY2tn
cm91bmQtaW1hZ2Ugd2l0aCBncmFkaWVudCBhbmQgZHBpIiwKKyAgICAgICAgICAgICAgICAiYmFj
a2dyb3VuZC1pbWFnZSIsCisgICAgICAgICAgICAgICAgImxpbmVhci1ncmFkaWVudChncmVlbiwg
d2hpdGUpIDE5MmRwaSIsIDIsCisgICAgICAgICAgICAgICAgWyJsaW5lYXItZ3JhZGllbnQoZ3Jl
ZW4sIHdoaXRlKSIsICIxOTJkcGkiXSk7CisKIAogc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsK
IDwvc2NyaXB0PgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNpbmcu
aHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFnZS1zZXQtcGFyc2lu
Zy5odG1sCShyZXZpc2lvbiAyNTUyMjYpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFnZS1z
ZXQtcGFyc2luZy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC03NCw2MiArNzQsODIgQEAgZnVuY3Rp
b24gdGVzdEltYWdlU2V0UnVsZShkZXNjcmlwdGlvbiwgcAogdGVzdEltYWdlU2V0UnVsZSgiU2lu
Z2xlIHZhbHVlIGZvciBiYWNrZ3JvdW5kLWltYWdlIiwKICAgICAgICAgICAgICAgICAiYmFja2dy
b3VuZC1pbWFnZSIsCiAgICAgICAgICAgICAgICAgInVybCgnI2EnKSAxeCIsIDIsCi0gICAgICAg
ICAgICAgICAgWyJhIiwgIjEiXSk7CisgICAgICAgICAgICAgICAgWyJhIiwgIjFkcHB4Il0pOwog
CiB0ZXN0SW1hZ2VTZXRSdWxlKCJNdWx0aXBsZSB2YWx1ZXMgZm9yIGJhY2tncm91bmQtaW1hZ2Ui
LAogICAgICAgICAgICAgICAgICJiYWNrZ3JvdW5kLWltYWdlIiwKICAgICAgICAgICAgICAgICAi
dXJsKCcjYScpIDF4LCB1cmwoJyNiJykgMngiLCA0LAotICAgICAgICAgICAgICAgIFsiYSIsICIx
IiwgImIiLCAiMiJdKTsKKyAgICAgICAgICAgICAgICBbImEiLCAiMWRwcHgiLCAiYiIsICIyZHBw
eCJdKTsKIAogdGVzdEltYWdlU2V0UnVsZSgiU2luZ2xlIHZhbHVlIGZvciBiYWNrZ3JvdW5kLWlt
YWdlIHdpdGhvdXQgdXJsKCkgZnVuY3Rpb24iLAogICAgICAgICAgICAgICAgICJiYWNrZ3JvdW5k
LWltYWdlIiwKICAgICAgICAgICAgICAgICAiJyNhJyAxeCIsIDIsCi0gICAgICAgICAgICAgICAg
WyJhIiwgIjEiXSk7CisgICAgICAgICAgICAgICAgWyJhIiwgIjFkcHB4Il0pOwogCiB0ZXN0SW1h
Z2VTZXRSdWxlKCJNdWx0aXBsZSB2YWx1ZXMgZm9yIGJhY2tncm91bmQtaW1hZ2Ugd2l0aG91dCB1
cmwoKSBmdW5jdGlvbiIsCiAgICAgICAgICAgICAgICAgImJhY2tncm91bmQtaW1hZ2UiLAogICAg
ICAgICAgICAgICAgICInI2EnIDF4LCAnI2InIDJ4IiwgNCwKLSAgICAgICAgICAgICAgICBbImEi
LCAiMSIsICJiIiwgIjIiXSk7CisgICAgICAgICAgICAgICAgWyJhIiwgIjFkcHB4IiwgImIiLCAi
MmRwcHgiXSk7CiAKIHRlc3RJbWFnZVNldFJ1bGUoIk1peCB2YWx1ZXMgd2l0aCBhbmQgd2l0aG91
dCB1cmwoKSBmdW5jdGlvbiIsCiAgICAgICAgICAgICAgICAgImJhY2tncm91bmQtaW1hZ2UiLAog
ICAgICAgICAgICAgICAgICInI2EnIDF4LCB1cmwoJyNiJykgMngiLCA0LAotICAgICAgICAgICAg
ICAgIFsiYSIsICIxIiwgImIiLCAiMiJdKTsKKyAgICAgICAgICAgICAgICBbImEiLCAiMWRwcHgi
LCAiYiIsICIyZHBweCJdKTsKIAogdGVzdEltYWdlU2V0UnVsZSgiTXVsdGlwbGUgdmFsdWVzIGZv
ciBiYWNrZ3JvdW5kLWltYWdlLCBvdXQgb2Ygb3JkZXIiLAogICAgICAgICAgICAgICAgICJiYWNr
Z3JvdW5kLWltYWdlIiwKICAgICAgICAgICAgICAgICAidXJsKCcjYycpIDN4LCB1cmwoJyNiJykg
MngsIHVybCgnI2EnKSAxeCIsIDYsCi0gICAgICAgICAgICAgICAgWyJjIiwgIjMiLCAiYiIsICIy
IiwgImEiLCAiMSJdKTsKKyAgICAgICAgICAgICAgICBbImMiLCAiM2RwcHgiLCAiYiIsICIyZHBw
eCIsICJhIiwgIjFkcHB4Il0pOwogCiB0ZXN0SW1hZ2VTZXRSdWxlKCJTaW5nbGUgdmFsdWUgZm9y
IGNvbnRlbnQiLAogICAgICAgICAgICAgICAgICJjb250ZW50IiwKICAgICAgICAgICAgICAgICAi
dXJsKCcjYScpIDF4IiwgMiwKLSAgICAgICAgICAgICAgICBbImEiLCAiMSJdKTsKKyAgICAgICAg
ICAgICAgICBbImEiLCAiMWRwcHgiXSk7CiAKIHRlc3RJbWFnZVNldFJ1bGUoIk11bHRpcGxlIHZh
bHVlcyBmb3IgY29udGVudCIsCiAgICAgICAgICAgICAgICAgImNvbnRlbnQiLAogICAgICAgICAg
ICAgICAgICJ1cmwoJyNhJykgMXgsIHVybCgnI2InKSAyeCIsIDQsCi0gICAgICAgICAgICAgICAg
WyJhIiwgIjEiLCAiYiIsICIyIl0pOworICAgICAgICAgICAgICAgIFsiYSIsICIxZHBweCIsICJi
IiwgIjJkcHB4Il0pOwogCiB0ZXN0SW1hZ2VTZXRSdWxlKCJTaW5nbGUgdmFsdWUgZm9yIGJvcmRl
ci1pbWFnZSIsCiAgICAgICAgICAgICAgICAgIi13ZWJraXQtYm9yZGVyLWltYWdlIiwKICAgICAg
ICAgICAgICAgICAidXJsKCcjYScpIDF4IiwgMiwKLSAgICAgICAgICAgICAgICBbImEiLCAiMSJd
KTsKKyAgICAgICAgICAgICAgICBbImEiLCAiMWRwcHgiXSk7CiAKIHRlc3RJbWFnZVNldFJ1bGUo
Ik11bHRpcGxlIHZhbHVlcyBmb3IgYm9yZGVyLWltYWdlIiwKICAgICAgICAgICAgICAgICAiLXdl
YmtpdC1ib3JkZXItaW1hZ2UiLAogICAgICAgICAgICAgICAgICJ1cmwoJyNhJykgMXgsIHVybCgn
I2InKSAyeCIsIDQsCi0gICAgICAgICAgICAgICAgWyJhIiwgIjEiLCAiYiIsICIyIl0pOworICAg
ICAgICAgICAgICAgIFsiYSIsICIxZHBweCIsICJiIiwgIjJkcHB4Il0pOwogCiB0ZXN0SW1hZ2VT
ZXRSdWxlKCJTaW5nbGUgdmFsdWUgZm9yIC13ZWJraXQtbWFzay1ib3gtaW1hZ2UiLAogICAgICAg
ICAgICAgICAgICItd2Via2l0LW1hc2stYm94LWltYWdlIiwKICAgICAgICAgICAgICAgICAidXJs
KCcjYScpIDF4IiwgMiwKLSAgICAgICAgICAgICAgICBbImEiLCAiMSJdKTsKKyAgICAgICAgICAg
ICAgICBbImEiLCAiMWRwcHgiXSk7CiAKIHRlc3RJbWFnZVNldFJ1bGUoIk11bHRpcGxlIHZhbHVl
cyBmb3IgLXdlYmtpdC1tYXNrLWJveC1pbWFnZSIsCiAgICAgICAgICAgICAgICAgIi13ZWJraXQt
bWFzay1ib3gtaW1hZ2UiLAogICAgICAgICAgICAgICAgICJ1cmwoJyNhJykgMXgsIHVybCgnI2In
KSAyeCIsIDQsCi0gICAgICAgICAgICAgICAgWyJhIiwgIjEiLCAiYiIsICIyIl0pOworICAgICAg
ICAgICAgICAgIFsiYSIsICIxZHBweCIsICJiIiwgIjJkcHB4Il0pOworCit0ZXN0SW1hZ2VTZXRS
dWxlKCJTaW5nbGUgdmFsdWUgd2l0aCBkcHB4IiwKKyAgICAgICAgICAgICAgICAiYmFja2dyb3Vu
ZC1pbWFnZSIsCisgICAgICAgICAgICAgICAgInVybCgnI2EnKSAxZHBweCIsIDIsCisgICAgICAg
ICAgICAgICAgWyJhIiwgIjFkcHB4Il0pOworCit0ZXN0SW1hZ2VTZXRSdWxlKCJTaW5nbGUgdmFs
dWUgd2l0aCBkcGkiLAorICAgICAgICAgICAgICAgICJiYWNrZ3JvdW5kLWltYWdlIiwKKyAgICAg
ICAgICAgICAgICAidXJsKCcjYScpIDE5MmRwaSIsIDIsCisgICAgICAgICAgICAgICAgWyJhIiwg
IjE5MmRwaSJdKTsKKwordGVzdEltYWdlU2V0UnVsZSgiU2luZ2xlIHZhbHVlIHdpdGggZHBjbSIs
CisgICAgICAgICAgICAgICAgImJhY2tncm91bmQtaW1hZ2UiLAorICAgICAgICAgICAgICAgICJ1
cmwoJyNhJykgMTAyZHBjbSIsIDIsCisgICAgICAgICAgICAgICAgWyJhIiwgIjEwMmRwY20iXSk7
CisKK3Rlc3RJbWFnZVNldFJ1bGUoIk11bHRpcGxlIHZhbHVlcyB3aXRoIGRwaSwgZHBweCBhbmQg
eCIsCisgICAgICAgICAgICAgICAgImJhY2tncm91bmQtaW1hZ2UiLAorICAgICAgICAgICAgICAg
ICJ1cmwoJyNhJykgMXgsIHVybCgnI2InKSAyZHBweCwgdXJsKCcjYycpIDI1MGRwaSIsIDYsCisg
ICAgICAgICAgICAgICAgWyJhIiwgIjFkcHB4IiwgImIiLCAiMmRwcHgiLCAiYyIsICIyNTBkcGki
XSk7CiAKIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CiA8L3NjcmlwdD4KSW5kZXg6IExheW91
dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1zZXR0aW5nLWV4cGVjdGVkLnR4dAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFnZS1zZXQtc2V0dGluZy1leHBlY3RlZC50eHQJ
KHJldmlzaW9uIDI1NTIyNikKKysrIExheW91dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1zZXR0
aW5nLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtNSwxOSArNSwxOSBAQCBPbiBzdWNj
ZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBCiAKIAogU2luZ2xlIHZhbHVlIGZvciBi
YWNrZ3JvdW5kLWltYWdlIDogdXJsKCJodHRwOi8vd3d3LndlYmtpdC5vcmcvYSIpIDF4Ci1QQVNT
IHN0eWxlLmJhY2tncm91bmRJbWFnZSBpcyAiaW1hZ2Utc2V0KHVybChcImh0dHA6Ly93d3cud2Vi
a2l0Lm9yZy9hXCIpIDF4KSIKK1BBU1Mgc3R5bGUuYmFja2dyb3VuZEltYWdlIGlzICJpbWFnZS1z
ZXQodXJsKFwiaHR0cDovL3d3dy53ZWJraXQub3JnL2FcIikgMWRwcHgpIgogCiBNdWx0aXBsZSB2
YWx1ZXMgZm9yIGJhY2tncm91bmQtaW1hZ2UgOiB1cmwoImh0dHA6Ly93d3cud2Via2l0Lm9yZy9h
IikgMXgsIHVybCgiaHR0cDovL3d3dy53ZWJraXQub3JnL2IiKSAyeAotUEFTUyBzdHlsZS5iYWNr
Z3JvdW5kSW1hZ2UgaXMgImltYWdlLXNldCh1cmwoXCJodHRwOi8vd3d3LndlYmtpdC5vcmcvYVwi
KSAxeCwgdXJsKFwiaHR0cDovL3d3dy53ZWJraXQub3JnL2JcIikgMngpIgorUEFTUyBzdHlsZS5i
YWNrZ3JvdW5kSW1hZ2UgaXMgImltYWdlLXNldCh1cmwoXCJodHRwOi8vd3d3LndlYmtpdC5vcmcv
YVwiKSAxZHBweCwgdXJsKFwiaHR0cDovL3d3dy53ZWJraXQub3JnL2JcIikgMmRwcHgpIgogCiBN
dWx0aXBsZSB2YWx1ZXMgZm9yIGJhY2tncm91bmQtaW1hZ2UsIG91dCBvZiBvcmRlciA6IHVybCgi
aHR0cDovL3d3dy53ZWJraXQub3JnL2MiKSAzeCwgdXJsKCJodHRwOi8vd3d3LndlYmtpdC5vcmcv
YiIpIDJ4LCB1cmwoImh0dHA6Ly93d3cud2Via2l0Lm9yZy9hIikgMXgKLVBBU1Mgc3R5bGUuYmFj
a2dyb3VuZEltYWdlIGlzICJpbWFnZS1zZXQodXJsKFwiaHR0cDovL3d3dy53ZWJraXQub3JnL2Nc
IikgM3gsIHVybChcImh0dHA6Ly93d3cud2Via2l0Lm9yZy9iXCIpIDJ4LCB1cmwoXCJodHRwOi8v
d3d3LndlYmtpdC5vcmcvYVwiKSAxeCkiCitQQVNTIHN0eWxlLmJhY2tncm91bmRJbWFnZSBpcyAi
aW1hZ2Utc2V0KHVybChcImh0dHA6Ly93d3cud2Via2l0Lm9yZy9jXCIpIDNkcHB4LCB1cmwoXCJo
dHRwOi8vd3d3LndlYmtpdC5vcmcvYlwiKSAyZHBweCwgdXJsKFwiaHR0cDovL3d3dy53ZWJraXQu
b3JnL2FcIikgMWRwcHgpIgogCiBEdXBsaWNhdGUgdmFsdWVzIGZvciBiYWNrZ3JvdW5kLWltYWdl
IDogdXJsKCJodHRwOi8vd3d3LndlYmtpdC5vcmcvYyIpIDF4LCB1cmwoImh0dHA6Ly93d3cud2Vi
a2l0Lm9yZy9iIikgMngsIHVybCgiaHR0cDovL3d3dy53ZWJraXQub3JnL2EiKSAxeAotUEFTUyBz
dHlsZS5iYWNrZ3JvdW5kSW1hZ2UgaXMgImltYWdlLXNldCh1cmwoXCJodHRwOi8vd3d3LndlYmtp
dC5vcmcvY1wiKSAxeCwgdXJsKFwiaHR0cDovL3d3dy53ZWJraXQub3JnL2JcIikgMngsIHVybChc
Imh0dHA6Ly93d3cud2Via2l0Lm9yZy9hXCIpIDF4KSIKK1BBU1Mgc3R5bGUuYmFja2dyb3VuZElt
YWdlIGlzICJpbWFnZS1zZXQodXJsKFwiaHR0cDovL3d3dy53ZWJraXQub3JnL2NcIikgMWRwcHgs
IHVybChcImh0dHA6Ly93d3cud2Via2l0Lm9yZy9iXCIpIDJkcHB4LCB1cmwoXCJodHRwOi8vd3d3
LndlYmtpdC5vcmcvYVwiKSAxZHBweCkiCiAKIEZyYWN0aW9uYWwgdmFsdWVzIGZvciBiYWNrZ3Jv
dW5kLWltYWdlIDogdXJsKCJodHRwOi8vd3d3LndlYmtpdC5vcmcvYyIpIDAuMngsIHVybCgiaHR0
cDovL3d3dy53ZWJraXQub3JnL2IiKSAyLjN4LCB1cmwoImh0dHA6Ly93d3cud2Via2l0Lm9yZy9h
IikgMTIuMzQ1NngKLVBBU1Mgc3R5bGUuYmFja2dyb3VuZEltYWdlIGlzICJpbWFnZS1zZXQodXJs
KFwiaHR0cDovL3d3dy53ZWJraXQub3JnL2NcIikgMC4yeCwgdXJsKFwiaHR0cDovL3d3dy53ZWJr
aXQub3JnL2JcIikgMi4zeCwgdXJsKFwiaHR0cDovL3d3dy53ZWJraXQub3JnL2FcIikgMTIuMzQ1
NngpIgorUEFTUyBzdHlsZS5iYWNrZ3JvdW5kSW1hZ2UgaXMgImltYWdlLXNldCh1cmwoXCJodHRw
Oi8vd3d3LndlYmtpdC5vcmcvY1wiKSAwLjJkcHB4LCB1cmwoXCJodHRwOi8vd3d3LndlYmtpdC5v
cmcvYlwiKSAyLjNkcHB4LCB1cmwoXCJodHRwOi8vd3d3LndlYmtpdC5vcmcvYVwiKSAxMi4zNDU2
ZHBweCkiCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCiAKIFRFU1QgQ09NUExFVEUK
SW5kZXg6IExheW91dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1zZXR0aW5nLmh0bWwKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXNldHRpbmcuaHRtbAkocmV2
aXNpb24gMjU1MjI2KQorKysgTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXNldHRpbmcu
aHRtbAkod29ya2luZyBjb3B5KQpAQCAtMjEsMTQgKzIxLDE0IEBAIGZ1bmN0aW9uIHRlc3RDb21w
dXRlZFN0eWxlKHByb3BlcnR5LCBmdWwKICAgICByZXR1cm4gY29tcHV0ZWRWYWx1ZTsKIH0KIAot
ZnVuY3Rpb24gdGVzdEltYWdlU2V0UnVsZShkZXNjcmlwdGlvbiwgcHJvcGVydHksIHJ1bGUsIGV4
cGVjdGVkKQorZnVuY3Rpb24gdGVzdEltYWdlU2V0UnVsZShkZXNjcmlwdGlvbiwgcHJvcGVydHks
IHJ1bGUpCiB7CiAgICAgZGVidWcoIiIpOwogICAgIGRlYnVnKGRlc2NyaXB0aW9uICsgIiA6ICIg
KyBydWxlKTsKIAogICAgIHZhciBmdWxsUnVsZSA9ICJpbWFnZS1zZXQoIiArIHJ1bGUgKyAiKSI7
CiAgICAgc3R5bGUgPSB0ZXN0Q29tcHV0ZWRTdHlsZShwcm9wZXJ0eSwgZnVsbFJ1bGUpOwotICAg
IHNob3VsZEJlRXF1YWxUb1N0cmluZygnc3R5bGUuYmFja2dyb3VuZEltYWdlJywgZnVsbFJ1bGUp
OworICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygnc3R5bGUuYmFja2dyb3VuZEltYWdlJywgZnVs
bFJ1bGUucmVwbGFjZSgveCg/PVssKV0pL2csICdkcHB4JykpOwogfQogCiB0ZXN0SW1hZ2VTZXRS
dWxlKCJTaW5nbGUgdmFsdWUgZm9yIGJhY2tncm91bmQtaW1hZ2UiLApJbmRleDogTGF5b3V0VGVz
dHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXVucHJlZml4ZWQuaHRtbAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9mYXN0L2Nzcy9pbWFnZS1zZXQtdW5wcmVmaXhlZC5odG1sCShyZXZpc2lvbiAyNTUy
MjYpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFnZS1zZXQtdW5wcmVmaXhlZC5odG1sCSh3
b3JraW5nIGNvcHkpCkBAIC0xNiw3ICsxNiw3IEBAIGZ1bmN0aW9uIHRlc3RDb21wdXRlZFN0eWxl
KHByb3BlcnR5LCBmdWwKICAgICByZXR1cm4gY29tcHV0ZWRWYWx1ZTsKIH0KIAotZnVuY3Rpb24g
dGVzdEltYWdlU2V0UnVsZShkZXNjcmlwdGlvbiwgcHJvcGVydHksIHJ1bGUsIGV4cGVjdGVkKQor
ZnVuY3Rpb24gdGVzdEltYWdlU2V0UnVsZShkZXNjcmlwdGlvbiwgcHJvcGVydHksIHJ1bGUpCiB7
CiAgICAgZGVidWcoIiIpOwogICAgIGRlYnVnKGAke2Rlc2NyaXB0aW9ufSA6ICR7cnVsZX1gKTsK
QEAgLTI1LDEyICsyNSwxMiBAQCBmdW5jdGlvbiB0ZXN0SW1hZ2VTZXRSdWxlKGRlc2NyaXB0aW9u
LCBwCiAgICAgaWYgKHByb3BlcnR5ID09ICdjdXJzb3InKQogICAgICAgICBydWxlICs9ICcsIGRl
ZmF1bHQnOwogCi0gICAgaWYgKHRlc3RDb21wdXRlZFN0eWxlKHByb3BlcnR5LCBydWxlKSA9PSBy
dWxlKQorICAgIGlmICh0ZXN0Q29tcHV0ZWRTdHlsZShwcm9wZXJ0eSwgcnVsZSkgPT0gcnVsZS5y
ZXBsYWNlKC94KD89WywpXSkvZywgJ2RwcHgnKSkKICAgICAgICAgZGVidWcoIlVucHJlZml4ZWQ6
IFBBU1MiKTsKICAgICBlbHNlCiAgICAgICAgIGRlYnVnKCJVbnByZWZpeGVkOiBGQUlMIik7CiAK
LSAgICBpZiAodGVzdENvbXB1dGVkU3R5bGUocHJvcGVydHksICItd2Via2l0LSIgKyBydWxlKSA9
PSBydWxlKQorICAgIGlmICh0ZXN0Q29tcHV0ZWRTdHlsZShwcm9wZXJ0eSwgIi13ZWJraXQtIiAr
IHJ1bGUpID09IHJ1bGUucmVwbGFjZSgveCg/PVssKV0pL2csICdkcHB4JykpCiAgICAgICAgIGRl
YnVnKCJQcmVmaXhlZDogUEFTUyIpOwogICAgIGVsc2UKICAgICAgICAgZGVidWcoIlByZWZpeGVk
OiBGQUlMIik7CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2hpZHBpL2ltYWdlLXNldC11bml0cy1l
eHBlY3RlZC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvaGlkcGkvaW1hZ2Ut
c2V0LXVuaXRzLWV4cGVjdGVkLmh0bWwJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvZmFz
dC9oaWRwaS9pbWFnZS1zZXQtdW5pdHMtZXhwZWN0ZWQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAt
MCwwICsxLDI1IEBACis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdD4KKyAgICB3aW5kb3cub25sb2Fk
ID0gKCkgPT4geworICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgICAgIHRlc3RS
dW5uZXIud2FpdFVudGlsRG9uZSgpOworICAgICAgICB0ZXN0UnVubmVyLnNldEJhY2tpbmdTY2Fs
ZUZhY3RvcigyLCAoKSA9PiBzZXRUaW1lb3V0KCgpID0+IHRlc3RSdW5uZXIubm90aWZ5RG9uZSgp
LCAwKSk7CisgICAgICB9CisgICAgfQorPC9zY3JpcHQ+CisKKzxzdHlsZT4KKyAgICAjZm9vIHsK
KyAgICAgICAgd2lkdGg6MTAwcHg7CisgICAgICAgIGhlaWdodDoxMDBweDsKKyAgICAgICAgYmFj
a2dyb3VuZC1pbWFnZTogaW1hZ2Utc2V0KHVybCgncmVzb3VyY2VzL2JsdWUtMTAwLXB4LXNxdWFy
ZS5wbmcnKSAxeCwgbGluZWFyLWdyYWRpZW50KGdyZWVuLCB3aGl0ZSkgMngpOworICAgIH0KKzwv
c3R5bGU+Cis8L2hlYWQ+CisKKzxib2R5PgorICAgIDxkaXY+VGhpcyB0ZXN0IHBhc3NlcyBpZiB0
aGUgZGl2IGJlbG93IGlzIGEgYmx1ZSAxMDBweCBzcXVhcmUgd2hlbiB0aGUgZGV2aWNlU2NhbGVG
YWN0b3IgaXMgMSwgYW5kIGlmIGl0IGlzIGEgMTAwcHggZ3JlZW4td2hpdGUgZ3JhZGllbnQgc3F1
YXJlIHdoZW4gdGhlIGRldmljZVNjYWxlRmFjdG9yIGlzIDIuPC9kaXY+CisgICAgPGRpdiBpZD1m
b28+PC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+CgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRU
ZXN0cy9mYXN0L2hpZHBpL2ltYWdlLXNldC11bml0cy1leHBlY3RlZC5odG1sCl9fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K
QWRkZWQ6IHN2bjpleGVjdXRhYmxlCiMjIC0wLDAgKzEgIyMKKyoKXCBObyBuZXdsaW5lIGF0IGVu
ZCBvZiBwcm9wZXJ0eQpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9oaWRwaS9pbWFnZS1zZXQtdW5p
dHMuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2hpZHBpL2ltYWdlLXNldC11
bml0cy5odG1sCShub25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2Zhc3QvaGlkcGkvaW1hZ2Ut
c2V0LXVuaXRzLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwyNSBAQAorPGh0bWw+Cis8
aGVhZD4KKzxzY3JpcHQ+CisgICAgd2luZG93Lm9ubG9hZCA9ICgpID0+IHsKKyAgICAgIGlmICh3
aW5kb3cudGVzdFJ1bm5lcikgeworICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsK
KyAgICAgICAgdGVzdFJ1bm5lci5zZXRCYWNraW5nU2NhbGVGYWN0b3IoMiwgKCkgPT4gc2V0VGlt
ZW91dCgoKSA9PiB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKSwgMCkpOworICAgICAgfQorICAgIH0K
Kzwvc2NyaXB0PgorCis8c3R5bGU+CisgICAgI2ZvbyB7CisgICAgICAgIHdpZHRoOjEwMHB4Owor
ICAgICAgICBoZWlnaHQ6MTAwcHg7CisgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGltYWdlLXNl
dCh1cmwoJ3Jlc291cmNlcy9ibHVlLTEwMC1weC1zcXVhcmUucG5nJykgMWRwcHgsIGxpbmVhci1n
cmFkaWVudChncmVlbiwgd2hpdGUpIDE5MmRwaSk7CisgICAgfQorPC9zdHlsZT4KKzwvaGVhZD4K
KworPGJvZHk+CisgICAgPGRpdj5UaGlzIHRlc3QgcGFzc2VzIGlmIHRoZSBkaXYgYmVsb3cgaXMg
YSBibHVlIDEwMHB4IHNxdWFyZSB3aGVuIHRoZSBkZXZpY2VTY2FsZUZhY3RvciBpcyAxLCBhbmQg
aWYgaXQgaXMgYSAxMDBweCBncmVlbi13aGl0ZSBncmFkaWVudCBzcXVhcmUgd2hlbiB0aGUgZGV2
aWNlU2NhbGVGYWN0b3IgaXMgMi48L2Rpdj4KKyAgICA8ZGl2IGlkPWZvbz48L2Rpdj4KKzwvYm9k
eT4KKzwvaHRtbD4KClByb3BlcnR5IGNoYW5nZXMgb246IExheW91dFRlc3RzL2Zhc3QvaGlkcGkv
aW1hZ2Utc2V0LXVuaXRzLmh0bWwKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOmV4ZWN1dGFibGUKIyMg
LTAsMCArMSAjIworKgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIHByb3BlcnR5Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>