<?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>225038</bug_id>
          
          <creation_ts>2021-04-25 16:38:10 -0700</creation_ts>
          <short_desc>Subdivide image overlay text into one or more elements per line</short_desc>
          <delta_ts>2021-04-26 19:59:27 -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>Platform</component>
          <version>WebKit 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="Wenson Hsieh">wenson_hsieh</reporter>
          <assigned_to name="Wenson Hsieh">wenson_hsieh</assigned_to>
          <cc>bdakin</cc>
    
    <cc>cdumez</cc>
    
    <cc>changseok</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>hi</cc>
    
    <cc>megan_gardner</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1754087</commentid>
    <comment_count>0</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-04-25 16:38:10 -0700</bug_when>
    <thetext>rdar://75505043</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1754092</commentid>
    <comment_count>1</comment_count>
      <attachid>427015</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-04-25 17:50:06 -0700</bug_when>
    <thetext>Created attachment 427015
For EWS</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1754096</commentid>
    <comment_count>2</comment_count>
      <attachid>427017</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-04-25 18:09:15 -0700</bug_when>
    <thetext>Created attachment 427017
Fix non-internal builds</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1754371</commentid>
    <comment_count>3</comment_count>
      <attachid>427017</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2021-04-26 14:19:07 -0700</bug_when>
    <thetext>Comment on attachment 427017
Fix non-internal builds

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

r=me as well :)

&gt; Source/WebCore/html/HTMLElement.cpp:1348
&gt; +        if (lineQuad.isEmpty())
&gt;              continue;

Should/Can we check this before `scale`?

&gt; Source/WebCore/html/HTMLElement.cpp:1354
&gt; +        auto lineBounds = rotatedBoundingRect(lineQuad, 0.01);

NIT: Can we pull this into a `constexpr auto minRotationInRadians = 0.01;` or something?

&gt; Source/WebCore/html/HTMLElement.cpp:1360
&gt; +            std::round(lineBounds.center.x() - lineBounds.size.width() / 2), &quot;px, &quot;_s,
&gt; +            std::round(lineBounds.center.y() - lineBounds.size.height() / 2), &quot;px) &quot;_s,

NIT: I personally like to add parenthesis to avoid any chance of order-of-operations confusion (both from the compiler and from the reader):
```
    std::round(lineBounds.center.x() - (lineBounds.size.width() / 2)), &quot;px, &quot;_s,
    std::round(lineBounds.center.y() - (lineBounds.size.height() / 2)), &quot;px) &quot;_s,
```

&gt; Source/WebCore/html/HTMLElement.cpp:1361
&gt; +            lineBounds.angleInRadians ? makeString(&quot;rotate(&quot;, lineBounds.angleInRadians, &quot;rad) &quot;_s) : emptyString()

`&quot;rotate(&quot;_s`

&gt; Source/WebCore/html/HTMLElement.cpp:1419
&gt; +                    adjustLayoutUnitForAbsoluteZoom(renderer-&gt;offsetHeight(), *renderer).toFloat()

you could add a trailing comma here

&gt; Source/WebCore/html/shadow/imageOverlay.css:33
&gt; +    font-size: 1024px;

o_0 this probably deserves a comment

&gt; Source/WebCore/platform/ImageExtractionResult.h:37
&gt; +    ImageExtractionTextData(const String&amp; theText, const FloatQuad&amp; quad)

I wonder if we could make this `FloatQuad&amp;&amp;` instead.

&gt; Source/WebCore/platform/ImageExtractionResult.h:72
&gt; +    ImageExtractionLineData(const FloatQuad&amp; quad, const Vector&lt;ImageExtractionTextData&gt;&amp; theChildren)

I wonder if we could make these `FloatQuad&amp;&amp;` and `Vector&lt;ImageExtractionTextData&gt;&amp;&amp;` instead.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1754412</commentid>
    <comment_count>4</comment_count>
      <attachid>427017</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-04-26 15:42:09 -0700</bug_when>
    <thetext>Comment on attachment 427017
Fix non-internal builds

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

Tim and I chatted

&gt;&gt; Source/WebCore/html/HTMLElement.cpp:1348
&gt;&gt;              continue;
&gt; 
&gt; Should/Can we check this before `scale`?

👍🏻

&gt;&gt; Source/WebCore/html/HTMLElement.cpp:1354
&gt;&gt; +        auto lineBounds = rotatedBoundingRect(lineQuad, 0.01);
&gt; 
&gt; NIT: Can we pull this into a `constexpr auto minRotationInRadians = 0.01;` or something?

Per Slack discussion with Tim, I&apos;m renaming `rotatedBoundingRect` to `rotatedBoundingRectWithMinimumAngleOfRotation`, which should help clear the confusion.

&gt;&gt; Source/WebCore/html/HTMLElement.cpp:1360
&gt;&gt; +            std::round(lineBounds.center.y() - lineBounds.size.height() / 2), &quot;px) &quot;_s,
&gt; 
&gt; NIT: I personally like to add parenthesis to avoid any chance of order-of-operations confusion (both from the compiler and from the reader):
&gt; ```
&gt;     std::round(lineBounds.center.x() - (lineBounds.size.width() / 2)), &quot;px, &quot;_s,
&gt;     std::round(lineBounds.center.y() - (lineBounds.size.height() / 2)), &quot;px) &quot;_s,
&gt; ```

👍🏻

&gt;&gt; Source/WebCore/html/HTMLElement.cpp:1361
&gt;&gt; +            lineBounds.angleInRadians ? makeString(&quot;rotate(&quot;, lineBounds.angleInRadians, &quot;rad) &quot;_s) : emptyString()
&gt; 
&gt; `&quot;rotate(&quot;_s`

Good catch. Fixed!

&gt;&gt; Source/WebCore/html/HTMLElement.cpp:1419
&gt;&gt; +                    adjustLayoutUnitForAbsoluteZoom(renderer-&gt;offsetHeight(), *renderer).toFloat()
&gt; 
&gt; you could add a trailing comma here

👍🏻

&gt;&gt; Source/WebCore/html/shadow/imageOverlay.css:33
&gt;&gt; +    font-size: 1024px;
&gt; 
&gt; o_0 this probably deserves a comment

Yep, adding one.

&gt;&gt; Source/WebCore/platform/ImageExtractionResult.h:37
&gt;&gt; +    ImageExtractionTextData(const String&amp; theText, const FloatQuad&amp; quad)
&gt; 
&gt; I wonder if we could make this `FloatQuad&amp;&amp;` instead.

We could, though I don&apos;t think it&apos;ll make much of a difference. I&apos;ll change It to use &amp;&amp; anyways.

&gt;&gt; Source/WebCore/platform/ImageExtractionResult.h:72
&gt;&gt; +    ImageExtractionLineData(const FloatQuad&amp; quad, const Vector&lt;ImageExtractionTextData&gt;&amp; theChildren)
&gt; 
&gt; I wonder if we could make these `FloatQuad&amp;&amp;` and `Vector&lt;ImageExtractionTextData&gt;&amp;&amp;` instead.

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1754413</commentid>
    <comment_count>5</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-04-26 15:44:00 -0700</bug_when>
    <thetext>(In reply to Wenson Hsieh from comment #4)
&gt; Comment on attachment 427017 [details]
&gt; Fix non-internal builds
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=427017&amp;action=review
&gt; 
&gt; Tim and I chatted

(This unfinished sentence was supposed to be about the name of `WebCore::rotatedBoundingRect`, but I wrote what I was going to write here in an inline comment anyways)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1754450</commentid>
    <comment_count>6</comment_count>
      <attachid>427107</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-04-26 17:01:55 -0700</bug_when>
    <thetext>Created attachment 427107
For EWS</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1754452</commentid>
    <comment_count>7</comment_count>
      <attachid>427109</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-04-26 17:02:24 -0700</bug_when>
    <thetext>Created attachment 427109
For EWS</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1754476</commentid>
    <comment_count>8</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-04-26 19:59:25 -0700</bug_when>
    <thetext>Committed r276626 (237054@main): &lt;https://commits.webkit.org/237054@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 427109.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>427015</attachid>
            <date>2021-04-25 17:50:06 -0700</date>
            <delta_ts>2021-04-25 18:11:45 -0700</delta_ts>
            <desc>For EWS</desc>
            <filename>bug-225038-20210425175006.patch</filename>
            <type>text/plain</type>
            <size>50088</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc2NDgwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTM5ZTg2MTQwNjAwYTE4
NzJhNTQ3MzZkZDRlNWZiYTMyMjFiOWQwYi4uNzcyYWJlNGE1ZDg1NDE3MjIwZjA3ZmJlOWNlZDQy
YmYwOGI4NTdlNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDYxIEBACisyMDIxLTA0LTI1ICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIFN1YmRpdmlkZSBp
bWFnZSBvdmVybGF5IHRleHQgaW50byBvbmUgb3IgbW9yZSBlbGVtZW50cyBwZXIgbGluZQorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1MDM4CisgICAg
ICAgIHJkYXI6Ly83NTUwNTA0MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFJlZmFjdG9yIHNvbWUgaW1hZ2UgZXh0cmFjdGlvbiBhbmQgaW1hZ2Ugb3Zl
cmxheSBjb2RlIHRvIGFsbG93IGZvciBtdWx0aXBsZSBlbGVtZW50cyBjb250YWluaW5nIHRleHQg
cGVyIGxpbmUuCisgICAgICAgIFNlZSBjb21tZW50cyBiZWxvdyBmb3IgbW9yZSBkZXRhaWxzLgor
CisgICAgICAgIENoYW5nZXMgY292ZXJlZCBieSBhdWdtZW50aW5nIGV4aXN0aW5nIGxheW91dCB0
ZXN0cy4KKworICAgICAgICAqIGh0bWwvSFRNTEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6SFRNTEVsZW1lbnQ6OnVwZGF0ZVdpdGhJbWFnZUV4dHJhY3Rpb25SZXN1bHQpOgorCisgICAg
ICAgIFRoZSBjcnV4IG9mIHRoaXMgY2hhbmdlIGlzIGluIHRoaXMgbWV0aG9kLiBDdXJyZW50bHks
IGFuIGltYWdlIG92ZXJsYXkgaGFzIG9uZSBvciBtb3JlIGBkaXZgIGVsZW1lbnRzIHVuZGVybmVh
dGgKKyAgICAgICAgdGhlIHJvb3QgY29udGFpbmVyIGVsZW1lbnQsIGVhY2ggb2Ygd2hpY2ggcmVw
cmVzZW50cyBhIHNpbmdsZSBsaW5lIChpLmUuIGNvbnRhaW5zIGEgdGV4dCBub2RlIGFuZCBhIGxp
bmUgYnJlYWspLgorICAgICAgICBJbnN0ZWFkLCB3ZSBtYWtlIGVhY2ggb2YgdGhlc2UgbGluZSBj
b250YWluZXIgYGRpdmBzIGNvbnRhaW4gb25lIG9yIG1vcmUgYGRpdmAgZWxlbWVudHMgdGhhdCBy
ZXByZXNlbnQgZnVydGhlcgorICAgICAgICBzdWJkaXZpZGVkIHRleHQgd2l0aGluIGVhY2ggbGlu
ZS4KKworICAgICAgICBTZWUgdGhlIGNvcnJlc3BvbmRpbmcgYWRkaXRpb25zIHBhdGNoIGZvciBt
b3JlIGRldGFpbHMuCisKKyAgICAgICAgKiBodG1sL3NoYWRvdy9pbWFnZU92ZXJsYXkuY3NzOgor
ICAgICAgICAoZGl2I2ltYWdlLW92ZXJsYXkpOgorICAgICAgICAoZGl2LmltYWdlLW92ZXJsYXkt
bGluZSwgLmltYWdlLW92ZXJsYXktdGV4dCk6CisgICAgICAgICguaW1hZ2Utb3ZlcmxheS10ZXh0
OjpzZWxlY3Rpb24pOgorICAgICAgICAoZGl2LmltYWdlLW92ZXJsYXktdGV4dCk6IERlbGV0ZWQu
CisgICAgICAgIChkaXYuaW1hZ2Utb3ZlcmxheS10ZXh0OjpzZWxlY3Rpb24pOiBEZWxldGVkLgor
CisgICAgICAgIEFkanVzdCBVQSBzdHlsZXNoZWV0IHRvIGFjY291bnQgZm9yIHRoZSBjaGFuZ2Vz
IGluIGB1cGRhdGVXaXRoSW1hZ2VFeHRyYWN0aW9uUmVzdWx0YC4KKworICAgICAgICAqIHBsYXRm
b3JtL0ltYWdlRXh0cmFjdGlvblJlc3VsdC5oOgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2VFeHRy
YWN0aW9uVGV4dERhdGE6OkltYWdlRXh0cmFjdGlvblRleHREYXRhKToKKyAgICAgICAgKFdlYkNv
cmU6OkltYWdlRXh0cmFjdGlvbkxpbmVEYXRhOjpJbWFnZUV4dHJhY3Rpb25MaW5lRGF0YSk6Cisg
ICAgICAgIChXZWJDb3JlOjpJbWFnZUV4dHJhY3Rpb25MaW5lRGF0YTo6ZW5jb2RlIGNvbnN0KToK
KyAgICAgICAgKFdlYkNvcmU6OkltYWdlRXh0cmFjdGlvbkxpbmVEYXRhOjpkZWNvZGUpOgorICAg
ICAgICAoV2ViQ29yZTo6SW1hZ2VFeHRyYWN0aW9uUmVzdWx0Ojppc0VtcHR5IGNvbnN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OkltYWdlRXh0cmFjdGlvblJlc3VsdDo6ZW5jb2RlIGNvbnN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OkltYWdlRXh0cmFjdGlvblJlc3VsdDo6ZGVjb2RlKToKKworICAgICAg
ICBSZWZhY3RvciB0aGlzIGRhdGEgc3RydWN0dXJlLCBieSBzcGxpdHRpbmcgaXQgaW50byBgSW1h
Z2VFeHRyYWN0aW9uTGluZURhdGFgIGFuZCBgSW1hZ2VFeHRyYWN0aW9uVGV4dERhdGFgLgorCisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvRmxvYXRQb2ludC5oOgorICAgICAgICAoV2ViQ29y
ZTo6RmxvYXRQb2ludDo6cm90YXRlKToKKworICAgICAgICBBZGQgYSBoZWxwZXIgbWV0aG9kIHRv
IHJvdGF0ZSBhIDJEIGBGbG9hdFBvaW50YCBieSBhIGdpdmVuIGFuZ2xlLCBhYm91dCBhIGdpdmVu
IHBvaW50LgorCisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6Z2V0UXVhZCk6CisgICAgICAgIChXZWJDb3JlOjptYWtlRGF0YUZvckxpbmUpOgorICAg
ICAgICAoV2ViQ29yZTo6SW50ZXJuYWxzOjppbnN0YWxsSW1hZ2VPdmVybGF5KToKKyAgICAgICAg
KiB0ZXN0aW5nL0ludGVybmFscy5oOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmlkbDoK
KworICAgICAgICBBZGp1c3QgdGhpcyBpbnRlcm5hbCB0ZXN0aW5nIGhvb2sgdG8gYWNjZXB0IGEg
bGlzdCBvZiBgSW1hZ2VPdmVybGF5TGluZWAgZGljdGlvbmFyaWVzLCBlYWNoIG9mIHdoaWNoIGNv
bnRhaW5zIGEKKyAgICAgICAgbGlzdCBvZiBgSW1hZ2VPdmVybGF5VGV4dGAgZGljdGlvbmFyaWVz
LgorCiAyMDIxLTA0LTIyICBKZWFuLVl2ZXMgQXZlbmFyZCAgPGp5YUBhcHBsZS5jb20+CiAKICAg
ICAgICAgRml4IGNvbG9yIGdhbXV0IGluIFdlYlJUQyB3aGVuIHVzaW5nIFZQeCBzb2Z0d2FyZSBk
ZWNvZGVyLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmNwcAppbmRleCA1MjRjODZjMTQ5ZmU5
MGE1ZjhhZjc4YzQ5OGEyYzAyZDAxYTU4ZjJlLi4zMmM4MDhmMThlZmU3YjY2YzUxNzZjMWRiYWRk
MzQxZTE4ZDdiODdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmNwcApAQCAtNzQsNiAr
NzQsNyBAQAogI2luY2x1ZGUgIm1hcmt1cC5oIgogI2luY2x1ZGUgPHd0Zi9Jc29NYWxsb2NJbmxp
bmVzLmg+CiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CisjaW5jbHVkZSA8d3RmL1Jh
bmdlLmg+CiAjaW5jbHVkZSA8d3RmL1N0ZExpYkV4dHJhcy5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0
L0NTdHJpbmcuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+CkBAIC0xMzM1
LDM5ICsxMzM2LDEwNyBAQCB2b2lkIEhUTUxFbGVtZW50Ojp1cGRhdGVXaXRoSW1hZ2VFeHRyYWN0
aW9uUmVzdWx0KEltYWdlRXh0cmFjdGlvblJlc3VsdCYmIHJlc3VsdAogICAgIGlmIChkb2N1bWVu
dCgpLnF1aXJrcygpLm5lZWRzVG9Gb3JjZVVzZXJTZWxlY3RXaGVuSW5zdGFsbGluZ0ltYWdlT3Zl
cmxheSgpKQogICAgICAgICBzZXRJbmxpbmVTdHlsZVByb3BlcnR5KENTU1Byb3BlcnR5V2Via2l0
VXNlclNlbGVjdCwgQ1NTVmFsdWVUZXh0KTsKIAorICAgIHN0YXRpYyBNYWluVGhyZWFkTmV2ZXJE
ZXN0cm95ZWQ8Y29uc3QgQXRvbVN0cmluZz4gaW1hZ2VPdmVybGF5TGluZUNsYXNzKCJpbWFnZS1v
dmVybGF5LWxpbmUiLCBBdG9tU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCk7CiAgICAgc3Rh
dGljIE1haW5UaHJlYWROZXZlckRlc3Ryb3llZDxjb25zdCBBdG9tU3RyaW5nPiBpbWFnZU92ZXJs
YXlUZXh0Q2xhc3MoImltYWdlLW92ZXJsYXktdGV4dCIsIEF0b21TdHJpbmc6OkNvbnN0cnVjdEZy
b21MaXRlcmFsKTsKIAogICAgIEludFNpemUgY29udGFpbmVyU2l6ZSB7IG9mZnNldFdpZHRoKCks
IG9mZnNldEhlaWdodCgpIH07Ci0gICAgZm9yIChhdXRvJiBkYXRhIDogcmVzdWx0LnRleHREYXRh
KSB7Ci0gICAgICAgIGF1dG8gY2hpbGQgPSBIVE1MRGl2RWxlbWVudDo6Y3JlYXRlKGRvY3VtZW50
KCkpOwotICAgICAgICBjaGlsZC0+Y2xhc3NMaXN0KCkuYWRkKGltYWdlT3ZlcmxheVRleHRDbGFz
cyk7CisgICAgZm9yIChhdXRvJiBsaW5lIDogcmVzdWx0LmxpbmVzKSB7CisgICAgICAgIGF1dG8g
bGluZVF1YWQgPSBsaW5lLm5vcm1hbGl6ZWRRdWFkOworICAgICAgICBsaW5lUXVhZC5zY2FsZShj
b250YWluZXJTaXplLndpZHRoKCksIGNvbnRhaW5lclNpemUuaGVpZ2h0KCkpOwogCi0gICAgICAg
IGNvbnRhaW5lci0+YXBwZW5kQ2hpbGQoY2hpbGQpOwotICAgICAgICBjaGlsZC0+YXBwZW5kQ2hp
bGQoVGV4dDo6Y3JlYXRlKGRvY3VtZW50KCksIG1ha2VTdHJpbmcoJ1xuJywgZGF0YS50ZXh0KSkp
OwotICAgICAgICBjaGlsZC0+YXBwZW5kQ2hpbGQoSFRNTEJSRWxlbWVudDo6Y3JlYXRlKGRvY3Vt
ZW50KCkpKTsKLQotICAgICAgICBJbnRTaXplIG9yaWdpbmFsU2l6ZSB7IGNoaWxkLT5vZmZzZXRX
aWR0aCgpLCBjaGlsZC0+b2Zmc2V0SGVpZ2h0KCkgfTsKLSAgICAgICAgaWYgKG9yaWdpbmFsU2l6
ZS5pc0VtcHR5KCkpCisgICAgICAgIGlmIChsaW5lUXVhZC5pc0VtcHR5KCkpCiAgICAgICAgICAg
ICBjb250aW51ZTsKIAotICAgICAgICBhdXRvIHRhcmdldFF1YWQgPSBkYXRhLm5vcm1hbGl6ZWRR
dWFkOwotICAgICAgICB0YXJnZXRRdWFkLnNjYWxlKGNvbnRhaW5lclNpemUud2lkdGgoKSwgY29u
dGFpbmVyU2l6ZS5oZWlnaHQoKSk7CisgICAgICAgIGF1dG8gbGluZUNvbnRhaW5lciA9IEhUTUxE
aXZFbGVtZW50OjpjcmVhdGUoZG9jdW1lbnQoKSk7CisgICAgICAgIGxpbmVDb250YWluZXItPmNs
YXNzTGlzdCgpLmFkZChpbWFnZU92ZXJsYXlMaW5lQ2xhc3MpOworICAgICAgICBjb250YWluZXIt
PmFwcGVuZENoaWxkKGxpbmVDb250YWluZXIpOworCisgICAgICAgIGF1dG8gbGluZUJvdW5kcyA9
IHJvdGF0ZWRCb3VuZGluZ1JlY3QobGluZVF1YWQsIDAuMDEpOworICAgICAgICBsaW5lQ29udGFp
bmVyLT5zZXRJbmxpbmVTdHlsZVByb3BlcnR5KENTU1Byb3BlcnR5V2lkdGgsIGxpbmVCb3VuZHMu
c2l6ZS53aWR0aCgpLCBDU1NVbml0VHlwZTo6Q1NTX1BYKTsKKyAgICAgICAgbGluZUNvbnRhaW5l
ci0+c2V0SW5saW5lU3R5bGVQcm9wZXJ0eShDU1NQcm9wZXJ0eUhlaWdodCwgbGluZUJvdW5kcy5z
aXplLmhlaWdodCgpLCBDU1NVbml0VHlwZTo6Q1NTX1BYKTsKKyAgICAgICAgbGluZUNvbnRhaW5l
ci0+c2V0SW5saW5lU3R5bGVQcm9wZXJ0eShDU1NQcm9wZXJ0eVRyYW5zZm9ybSwgbWFrZVN0cmlu
ZygKKyAgICAgICAgICAgICJ0cmFuc2xhdGUoIl9zLAorICAgICAgICAgICAgc3RkOjpyb3VuZChs
aW5lQm91bmRzLmNlbnRlci54KCkgLSBsaW5lQm91bmRzLnNpemUud2lkdGgoKSAvIDIpLCAicHgs
ICJfcywKKyAgICAgICAgICAgIHN0ZDo6cm91bmQobGluZUJvdW5kcy5jZW50ZXIueSgpIC0gbGlu
ZUJvdW5kcy5zaXplLmhlaWdodCgpIC8gMiksICJweCkgIl9zLAorICAgICAgICAgICAgbGluZUJv
dW5kcy5hbmdsZUluUmFkaWFucyA/IG1ha2VTdHJpbmcoInJvdGF0ZSgiLCBsaW5lQm91bmRzLmFu
Z2xlSW5SYWRpYW5zLCAicmFkKSAiX3MpIDogZW1wdHlTdHJpbmcoKQorICAgICAgICApKTsKIAot
ICAgICAgICBhdXRvIHJvdGF0ZWRSZWN0ID0gcm90YXRlZEJvdW5kaW5nUmVjdCh0YXJnZXRRdWFk
LCAwLjAxKTsKLSAgICAgICAgYXV0byBzY2FsZSA9IHJvdGF0ZWRSZWN0LnNpemUgLyBvcmlnaW5h
bFNpemU7Ci0gICAgICAgIFN0cmluZyByb3RhdGlvblRyYW5zZm9ybWF0aW9uQXNUZXh0OwotICAg
ICAgICBpZiAocm90YXRlZFJlY3QuYW5nbGVJblJhZGlhbnMpCi0gICAgICAgICAgICByb3RhdGlv
blRyYW5zZm9ybWF0aW9uQXNUZXh0ID0gbWFrZVN0cmluZygicm90YXRlKCIsIHJvdGF0ZWRSZWN0
LmFuZ2xlSW5SYWRpYW5zLCAicmFkKSAiX3MpOworICAgICAgICBhdXRvIG9mZnNldEFsb25nSG9y
aXpvbnRhbEF4aXMgPSBbJl0oY29uc3QgRmxvYXRQb2ludCYgcXVhZFBvaW50MSwgY29uc3QgRmxv
YXRQb2ludCYgcXVhZFBvaW50MikgeworICAgICAgICAgICAgYXV0byBpbnRlcnZhbExlbmd0aCA9
IGxpbmVCb3VuZHMuc2l6ZS53aWR0aCgpOworICAgICAgICAgICAgYXV0byBtaWQgPSBtaWRQb2lu
dChxdWFkUG9pbnQxLCBxdWFkUG9pbnQyKTsKKyAgICAgICAgICAgIG1pZC5tb3ZlQnkoLWxpbmVC
b3VuZHMuY2VudGVyKTsKKyAgICAgICAgICAgIG1pZC5yb3RhdGUoLWxpbmVCb3VuZHMuYW5nbGVJ
blJhZGlhbnMpOworICAgICAgICAgICAgcmV0dXJuIGludGVydmFsTGVuZ3RoICogY2xhbXBUbzxm
bG9hdD4oMC41ICsgbWlkLngoKSAvIGludGVydmFsTGVuZ3RoLCAwLCAxKTsKKyAgICAgICAgfTsK
KworICAgICAgICBhdXRvIG9mZnNldHNBbG9uZ0hvcml6b250YWxBeGlzID0gbGluZS5jaGlsZHJl
bi5tYXAoWyZdKGF1dG8mIGNoaWxkKSAtPiBXVEY6OlJhbmdlPGZsb2F0PiB7CisgICAgICAgICAg
ICBhdXRvIHRleHRRdWFkID0gY2hpbGQubm9ybWFsaXplZFF1YWQ7CisgICAgICAgICAgICB0ZXh0
UXVhZC5zY2FsZShjb250YWluZXJTaXplLndpZHRoKCksIGNvbnRhaW5lclNpemUuaGVpZ2h0KCkp
OworICAgICAgICAgICAgcmV0dXJuIHsKKyAgICAgICAgICAgICAgICBvZmZzZXRBbG9uZ0hvcml6
b250YWxBeGlzKHRleHRRdWFkLnAxKCksIHRleHRRdWFkLnA0KCkpLAorICAgICAgICAgICAgICAg
IG9mZnNldEFsb25nSG9yaXpvbnRhbEF4aXModGV4dFF1YWQucDIoKSwgdGV4dFF1YWQucDMoKSkK
KyAgICAgICAgICAgIH07CisgICAgICAgIH0pOworCisgICAgICAgIGZvciAoc2l6ZV90IGNoaWxk
SW5kZXggPSAwOyBjaGlsZEluZGV4IDwgbGluZS5jaGlsZHJlbi5zaXplKCk7ICsrY2hpbGRJbmRl
eCkgeworICAgICAgICAgICAgYXV0byYgY2hpbGQgPSBsaW5lLmNoaWxkcmVuW2NoaWxkSW5kZXhd
OworICAgICAgICAgICAgaWYgKGNoaWxkLm5vcm1hbGl6ZWRRdWFkLmlzRW1wdHkoKSkKKyAgICAg
ICAgICAgICAgICBjb250aW51ZTsKIAotICAgICAgICBhdXRvIG9mZnNldCA9IHJvdW5kZWRJbnRQ
b2ludChyb3RhdGVkUmVjdC5jZW50ZXIgLSAob3JpZ2luYWxTaXplIC8gMikpOwotICAgICAgICBj
aGlsZC0+c2V0SW5saW5lU3R5bGVQcm9wZXJ0eShDU1NQcm9wZXJ0eVRyYW5zZm9ybSwgbWFrZVN0
cmluZygKLSAgICAgICAgICAgICJ0cmFuc2xhdGUoIl9zLCBvZmZzZXQueCgpLCAicHgsICJfcywg
b2Zmc2V0LnkoKSwgInB4KSAiX3MsCi0gICAgICAgICAgICByb3RhdGlvblRyYW5zZm9ybWF0aW9u
QXNUZXh0LAotICAgICAgICAgICAgInNjYWxlKCJfcywgc2NhbGUud2lkdGgoKSwgIiwgIl9zLCBz
Y2FsZS5oZWlnaHQoKSwgIikgIl9zCi0gICAgICAgICkpOworICAgICAgICAgICAgY29uc3RleHBy
IGZsb2F0IGhvcml6b250YWxNYXJnaW5Ub01pbmltaXplU2VsZWN0aW9uR2FwcyA9IDAuMTI1Owor
ICAgICAgICAgICAgZmxvYXQgaG9yaXpvbnRhbE9mZnNldCA9IC1ob3Jpem9udGFsTWFyZ2luVG9N
aW5pbWl6ZVNlbGVjdGlvbkdhcHM7CisgICAgICAgICAgICBmbG9hdCBob3Jpem9udGFsRXh0ZW50
ID0gaG9yaXpvbnRhbE1hcmdpblRvTWluaW1pemVTZWxlY3Rpb25HYXBzOworCisgICAgICAgICAg
ICBpZiAobGluZS5jaGlsZHJlbi5zaXplKCkgPT0gMSkgeworICAgICAgICAgICAgICAgIGhvcml6
b250YWxPZmZzZXQgKz0gb2Zmc2V0c0Fsb25nSG9yaXpvbnRhbEF4aXNbY2hpbGRJbmRleF0uYmVn
aW4oKTsKKyAgICAgICAgICAgICAgICBob3Jpem9udGFsRXh0ZW50ICs9IG9mZnNldHNBbG9uZ0hv
cml6b250YWxBeGlzW2NoaWxkSW5kZXhdLmVuZCgpOworICAgICAgICAgICAgfSBlbHNlIGlmICgh
Y2hpbGRJbmRleCkgeworICAgICAgICAgICAgICAgIGhvcml6b250YWxPZmZzZXQgKz0gb2Zmc2V0
c0Fsb25nSG9yaXpvbnRhbEF4aXNbY2hpbGRJbmRleF0uYmVnaW4oKTsKKyAgICAgICAgICAgICAg
ICBob3Jpem9udGFsRXh0ZW50ICs9IChvZmZzZXRzQWxvbmdIb3Jpem9udGFsQXhpc1tjaGlsZElu
ZGV4XS5lbmQoKSArIG9mZnNldHNBbG9uZ0hvcml6b250YWxBeGlzW2NoaWxkSW5kZXggKyAxXS5i
ZWdpbigpKSAvIDI7CisgICAgICAgICAgICB9IGVsc2UgaWYgKGNoaWxkSW5kZXggPT0gbGluZS5j
aGlsZHJlbi5zaXplKCkgLSAxKSB7CisgICAgICAgICAgICAgICAgaG9yaXpvbnRhbE9mZnNldCAr
PSAob2Zmc2V0c0Fsb25nSG9yaXpvbnRhbEF4aXNbY2hpbGRJbmRleCAtIDFdLmVuZCgpICsgb2Zm
c2V0c0Fsb25nSG9yaXpvbnRhbEF4aXNbY2hpbGRJbmRleF0uYmVnaW4oKSkgLyAyOworICAgICAg
ICAgICAgICAgIGhvcml6b250YWxFeHRlbnQgKz0gb2Zmc2V0c0Fsb25nSG9yaXpvbnRhbEF4aXNb
Y2hpbGRJbmRleF0uZW5kKCk7CisgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAg
IGhvcml6b250YWxPZmZzZXQgKz0gKG9mZnNldHNBbG9uZ0hvcml6b250YWxBeGlzW2NoaWxkSW5k
ZXggLSAxXS5lbmQoKSArIG9mZnNldHNBbG9uZ0hvcml6b250YWxBeGlzW2NoaWxkSW5kZXhdLmJl
Z2luKCkpIC8gMjsKKyAgICAgICAgICAgICAgICBob3Jpem9udGFsRXh0ZW50ICs9IChvZmZzZXRz
QWxvbmdIb3Jpem9udGFsQXhpc1tjaGlsZEluZGV4XS5lbmQoKSArIG9mZnNldHNBbG9uZ0hvcml6
b250YWxBeGlzW2NoaWxkSW5kZXggKyAxXS5iZWdpbigpKSAvIDI7CisgICAgICAgICAgICB9CisK
KyAgICAgICAgICAgIEZsb2F0U2l6ZSB0YXJnZXRTaXplIHsgaG9yaXpvbnRhbEV4dGVudCAtIGhv
cml6b250YWxPZmZzZXQsIGxpbmVCb3VuZHMuc2l6ZS5oZWlnaHQoKSB9OworICAgICAgICAgICAg
aWYgKHRhcmdldFNpemUuaXNFbXB0eSgpKQorICAgICAgICAgICAgICAgIGNvbnRpbnVlOworCisg
ICAgICAgICAgICBhdXRvIHRleHRDb250YWluZXIgPSBIVE1MRGl2RWxlbWVudDo6Y3JlYXRlKGRv
Y3VtZW50KCkpOworICAgICAgICAgICAgdGV4dENvbnRhaW5lci0+Y2xhc3NMaXN0KCkuYWRkKGlt
YWdlT3ZlcmxheVRleHRDbGFzcyk7CisgICAgICAgICAgICBsaW5lQ29udGFpbmVyLT5hcHBlbmRD
aGlsZCh0ZXh0Q29udGFpbmVyKTsKKyAgICAgICAgICAgIHRleHRDb250YWluZXItPmFwcGVuZENo
aWxkKFRleHQ6OmNyZWF0ZShkb2N1bWVudCgpLCBtYWtlU3RyaW5nKCdcbicsIGNoaWxkLnRleHQp
KSk7CisKKyAgICAgICAgICAgIGRvY3VtZW50KCkudXBkYXRlTGF5b3V0SWZEaW1lbnNpb25zT3V0
T2ZEYXRlKHRleHRDb250YWluZXIpOworCisgICAgICAgICAgICBGbG9hdFNpemUgc2l6ZUJlZm9y
ZVRyYW5zZm9ybTsKKyAgICAgICAgICAgIGlmIChhdXRvKiByZW5kZXJlciA9IHRleHRDb250YWlu
ZXItPnJlbmRlckJveE1vZGVsT2JqZWN0KCkpIHsKKyAgICAgICAgICAgICAgICBzaXplQmVmb3Jl
VHJhbnNmb3JtID0geworICAgICAgICAgICAgICAgICAgICBhZGp1c3RMYXlvdXRVbml0Rm9yQWJz
b2x1dGVab29tKHJlbmRlcmVyLT5vZmZzZXRXaWR0aCgpLCAqcmVuZGVyZXIpLnRvRmxvYXQoKSwK
KyAgICAgICAgICAgICAgICAgICAgYWRqdXN0TGF5b3V0VW5pdEZvckFic29sdXRlWm9vbShyZW5k
ZXJlci0+b2Zmc2V0SGVpZ2h0KCksICpyZW5kZXJlcikudG9GbG9hdCgpCisgICAgICAgICAgICAg
ICAgfTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgaWYgKHNpemVCZWZvcmVUcmFuc2Zv
cm0uaXNFbXB0eSgpKSB7CisgICAgICAgICAgICAgICAgdGV4dENvbnRhaW5lci0+cmVtb3ZlKCk7
CisgICAgICAgICAgICAgICAgY29udGludWU7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAg
IHRleHRDb250YWluZXItPnNldElubGluZVN0eWxlUHJvcGVydHkoQ1NTUHJvcGVydHlUcmFuc2Zv
cm0sIG1ha2VTdHJpbmcoCisgICAgICAgICAgICAgICAgInRyYW5zbGF0ZSgiX3MsCisgICAgICAg
ICAgICAgICAgaG9yaXpvbnRhbE9mZnNldCArICh0YXJnZXRTaXplLndpZHRoKCkgLSBzaXplQmVm
b3JlVHJhbnNmb3JtLndpZHRoKCkpIC8gMiwgInB4LCAiX3MsCisgICAgICAgICAgICAgICAgKHRh
cmdldFNpemUuaGVpZ2h0KCkgLSBzaXplQmVmb3JlVHJhbnNmb3JtLmhlaWdodCgpKSAvIDIsICJw
eCkgIl9zLAorICAgICAgICAgICAgICAgICJzY2FsZSgiX3MsIHRhcmdldFNpemUud2lkdGgoKSAv
IHNpemVCZWZvcmVUcmFuc2Zvcm0ud2lkdGgoKSwgIiwgIl9zLCB0YXJnZXRTaXplLmhlaWdodCgp
IC8gc2l6ZUJlZm9yZVRyYW5zZm9ybS5oZWlnaHQoKSwgIikgIl9zCisgICAgICAgICAgICApKTsK
KyAgICAgICAgfQorCisgICAgICAgIGxpbmVDb250YWluZXItPmFwcGVuZENoaWxkKEhUTUxCUkVs
ZW1lbnQ6OmNyZWF0ZShkb2N1bWVudCgpKSk7CiAKICAgICAgICAgaWYgKGRvY3VtZW50KCkuaXNJ
bWFnZURvY3VtZW50KCkpCi0gICAgICAgICAgICBjaGlsZC0+c2V0SW5saW5lU3R5bGVQcm9wZXJ0
eShDU1NQcm9wZXJ0eUN1cnNvciwgQ1NTVmFsdWVUZXh0KTsKKyAgICAgICAgICAgIGxpbmVDb250
YWluZXItPnNldElubGluZVN0eWxlUHJvcGVydHkoQ1NTUHJvcGVydHlDdXJzb3IsIENTU1ZhbHVl
VGV4dCk7CiAgICAgfQogCiAgICAgaWYgKGF1dG8gZnJhbWUgPSBtYWtlUmVmUHRyKGRvY3VtZW50
KCkuZnJhbWUoKSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9pbWFn
ZU92ZXJsYXkuY3NzIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvaW1hZ2VPdmVybGF5LmNz
cwppbmRleCAxMGJhNDk5MjlkYjA5Zjc2NGNlODZmZWU2MmYwNDAyMmQwYTdmMjIxLi4xNTQzZTYy
NmRjYTVkMGZkNWUxM2M4MTAxNDJmNmYzMzdhZGJlMGIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL3NoYWRvdy9pbWFnZU92ZXJsYXkuY3NzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvc2hhZG93L2ltYWdlT3ZlcmxheS5jc3MKQEAgLTMwLDE2ICszMCwxNiBAQCBkaXYjaW1hZ2Ut
b3ZlcmxheSB7CiAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgIHdoaXRlLXNwYWNlOiBub3dy
YXA7CiAgICAgbGluZS1oZWlnaHQ6IDEwMCU7CisgICAgZm9udC1zaXplOiAxMDI0cHg7CiAgICAg
Zm9udC1mYW1pbHk6IHN5c3RlbS11aTsKLSAgICBmb250LXNpemU6IDE2cHg7CiB9CiAKLWRpdi5p
bWFnZS1vdmVybGF5LXRleHQgeworZGl2LmltYWdlLW92ZXJsYXktbGluZSwgLmltYWdlLW92ZXJs
YXktdGV4dCB7CiAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgIG92ZXJmbG93OiBoaWRkZW47
CiB9CiAKLWRpdi5pbWFnZS1vdmVybGF5LXRleHQ6OnNlbGVjdGlvbiB7CisuaW1hZ2Utb3Zlcmxh
eS10ZXh0OjpzZWxlY3Rpb24gewogICAgIGNvbG9yOiB0cmFuc3BhcmVudDsKICAgICBiYWNrZ3Jv
dW5kLWNvbG9yOiBoaWdobGlnaHQ7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9JbWFnZUV4dHJhY3Rpb25SZXN1bHQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0lt
YWdlRXh0cmFjdGlvblJlc3VsdC5oCmluZGV4IGRhZjNmZjk4MDc2MzU3YmRmNzYzMjEwN2ZiNWY5
MDIwNmY3OGVkYTkuLjBiNWQxMGE0NzVlYzBkMzAxNjlkYjI3ZTY0ZjAwZDNjZTM5MjY2OWMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0ltYWdlRXh0cmFjdGlvblJlc3VsdC5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0ltYWdlRXh0cmFjdGlvblJlc3VsdC5oCkBA
IC0zNCw2ICszNCwxMiBAQAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBzdHJ1Y3QgSW1hZ2VFeHRy
YWN0aW9uVGV4dERhdGEgeworICAgIEltYWdlRXh0cmFjdGlvblRleHREYXRhKGNvbnN0IFN0cmlu
ZyYgdGhlVGV4dCwgY29uc3QgRmxvYXRRdWFkJiBxdWFkKQorICAgICAgICA6IHRleHQodGhlVGV4
dCkKKyAgICAgICAgLCBub3JtYWxpemVkUXVhZChxdWFkKQorICAgIHsKKyAgICB9CisKICAgICBT
dHJpbmcgdGV4dDsKICAgICBGbG9hdFF1YWQgbm9ybWFsaXplZFF1YWQ7CiAKQEAgLTYyLDEwICs2
OCw0NSBAQCB0ZW1wbGF0ZTxjbGFzcyBEZWNvZGVyPiBPcHRpb25hbDxJbWFnZUV4dHJhY3Rpb25U
ZXh0RGF0YT4gSW1hZ2VFeHRyYWN0aW9uVGV4dERhdAogICAgIHJldHVybiB7eyBXVEZNb3ZlKCp0
ZXh0KSwgV1RGTW92ZSgqbm9ybWFsaXplZFF1YWQpIH19OwogfQogCitzdHJ1Y3QgSW1hZ2VFeHRy
YWN0aW9uTGluZURhdGEgeworICAgIEltYWdlRXh0cmFjdGlvbkxpbmVEYXRhKGNvbnN0IEZsb2F0
UXVhZCYgcXVhZCwgY29uc3QgVmVjdG9yPEltYWdlRXh0cmFjdGlvblRleHREYXRhPiYgdGhlQ2hp
bGRyZW4pCisgICAgICAgIDogbm9ybWFsaXplZFF1YWQocXVhZCkKKyAgICAgICAgLCBjaGlsZHJl
bih0aGVDaGlsZHJlbikKKyAgICB7CisgICAgfQorCisgICAgRmxvYXRRdWFkIG5vcm1hbGl6ZWRR
dWFkOworICAgIFZlY3RvcjxJbWFnZUV4dHJhY3Rpb25UZXh0RGF0YT4gY2hpbGRyZW47CisKKyAg
ICB0ZW1wbGF0ZTxjbGFzcyBFbmNvZGVyPiB2b2lkIGVuY29kZShFbmNvZGVyJikgY29uc3Q7Cisg
ICAgdGVtcGxhdGU8Y2xhc3MgRGVjb2Rlcj4gc3RhdGljIE9wdGlvbmFsPEltYWdlRXh0cmFjdGlv
bkxpbmVEYXRhPiBkZWNvZGUoRGVjb2RlciYpOworfTsKKwordGVtcGxhdGU8Y2xhc3MgRW5jb2Rl
cj4gdm9pZCBJbWFnZUV4dHJhY3Rpb25MaW5lRGF0YTo6ZW5jb2RlKEVuY29kZXImIGVuY29kZXIp
IGNvbnN0Cit7CisgICAgZW5jb2RlciA8PCBub3JtYWxpemVkUXVhZDsKKyAgICBlbmNvZGVyIDw8
IGNoaWxkcmVuOworfQorCit0ZW1wbGF0ZTxjbGFzcyBEZWNvZGVyPiBPcHRpb25hbDxJbWFnZUV4
dHJhY3Rpb25MaW5lRGF0YT4gSW1hZ2VFeHRyYWN0aW9uTGluZURhdGE6OmRlY29kZShEZWNvZGVy
JiBkZWNvZGVyKQoreworICAgIE9wdGlvbmFsPEZsb2F0UXVhZD4gbm9ybWFsaXplZFF1YWQ7Cisg
ICAgZGVjb2RlciA+PiBub3JtYWxpemVkUXVhZDsKKyAgICBpZiAoIW5vcm1hbGl6ZWRRdWFkKQor
ICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OworCisgICAgT3B0aW9uYWw8VmVjdG9yPEltYWdl
RXh0cmFjdGlvblRleHREYXRhPj4gY2hpbGRyZW47CisgICAgZGVjb2RlciA+PiBjaGlsZHJlbjsK
KyAgICBpZiAoIWNoaWxkcmVuKQorICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OworCisgICAg
cmV0dXJuIHt7IFdURk1vdmUoKm5vcm1hbGl6ZWRRdWFkKSwgV1RGTW92ZSgqY2hpbGRyZW4pIH19
OworfQorCiBzdHJ1Y3QgSW1hZ2VFeHRyYWN0aW9uUmVzdWx0IHsKLSAgICBWZWN0b3I8SW1hZ2VF
eHRyYWN0aW9uVGV4dERhdGE+IHRleHREYXRhOworICAgIFZlY3RvcjxJbWFnZUV4dHJhY3Rpb25M
aW5lRGF0YT4gbGluZXM7CiAKLSAgICBib29sIGlzRW1wdHkoKSBjb25zdCB7IHJldHVybiB0ZXh0
RGF0YS5pc0VtcHR5KCk7IH0KKyAgICBib29sIGlzRW1wdHkoKSBjb25zdCB7IHJldHVybiBsaW5l
cy5pc0VtcHR5KCk7IH0KIAogICAgIHRlbXBsYXRlPGNsYXNzIEVuY29kZXI+IHZvaWQgZW5jb2Rl
KEVuY29kZXImKSBjb25zdDsKICAgICB0ZW1wbGF0ZTxjbGFzcyBEZWNvZGVyPiBzdGF0aWMgT3B0
aW9uYWw8SW1hZ2VFeHRyYWN0aW9uUmVzdWx0PiBkZWNvZGUoRGVjb2RlciYpOwpAQCAtNzMsMTcg
KzExNCwxNyBAQCBzdHJ1Y3QgSW1hZ2VFeHRyYWN0aW9uUmVzdWx0IHsKIAogdGVtcGxhdGU8Y2xh
c3MgRW5jb2Rlcj4gdm9pZCBJbWFnZUV4dHJhY3Rpb25SZXN1bHQ6OmVuY29kZShFbmNvZGVyJiBl
bmNvZGVyKSBjb25zdAogewotICAgIGVuY29kZXIgPDwgdGV4dERhdGE7CisgICAgZW5jb2RlciA8
PCBsaW5lczsKIH0KIAogdGVtcGxhdGU8Y2xhc3MgRGVjb2Rlcj4gT3B0aW9uYWw8SW1hZ2VFeHRy
YWN0aW9uUmVzdWx0PiBJbWFnZUV4dHJhY3Rpb25SZXN1bHQ6OmRlY29kZShEZWNvZGVyJiBkZWNv
ZGVyKQogewotICAgIE9wdGlvbmFsPFZlY3RvcjxJbWFnZUV4dHJhY3Rpb25UZXh0RGF0YT4+IHRl
eHREYXRhOwotICAgIGRlY29kZXIgPj4gdGV4dERhdGE7Ci0gICAgaWYgKCF0ZXh0RGF0YSkKKyAg
ICBPcHRpb25hbDxWZWN0b3I8SW1hZ2VFeHRyYWN0aW9uTGluZURhdGE+PiBsaW5lczsKKyAgICBk
ZWNvZGVyID4+IGxpbmVzOworICAgIGlmICghbGluZXMpCiAgICAgICAgIHJldHVybiBXVEY6Om51
bGxvcHQ7CiAKLSAgICByZXR1cm4ge3sgV1RGTW92ZSgqdGV4dERhdGEpIH19OworICAgIHJldHVy
biB7eyBXVEZNb3ZlKCpsaW5lcykgfX07CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0Zsb2F0UG9pbnQuaCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0Zsb2F0UG9pbnQuaAppbmRleCA3NWM5
MjhkYTdhYTM3NDY2YjE0NmMxYzc4ZWMxMDBiNjUwY2YzMTk4Li45MDRjMTQ4MzMwYmM5NTQxOWQ4
NThmMjRiMGQ1ZjlmYWEyODJhNThjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9GbG9hdFBvaW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvRmxvYXRQb2ludC5oCkBAIC0xMzUsNiArMTM1LDE3IEBAIHB1YmxpYzoKICAgICAgICAg
cmV0dXJuIHsgbV94ICogc2NhbGVYLCBtX3kgKiBzY2FsZVkgfTsKICAgICB9CiAKKyAgICB2b2lk
IHJvdGF0ZShkb3VibGUgYW5nbGVJblJhZGlhbnMsIGNvbnN0IEZsb2F0UG9pbnQmIGFib3V0UG9p
bnQgPSB7IH0pCisgICAgeworICAgICAgICBhdXRvIHNpbkFuZ2xlID0gc2luKGFuZ2xlSW5SYWRp
YW5zKTsKKyAgICAgICAgYXV0byBjb3NBbmdsZSA9IGNvcyhhbmdsZUluUmFkaWFucyk7CisgICAg
ICAgIG1feCAtPSBhYm91dFBvaW50LngoKTsKKyAgICAgICAgbV95IC09IGFib3V0UG9pbnQueSgp
OworICAgICAgICBhdXRvIG5ld1ggPSBtX3ggKiBjb3NBbmdsZSAtIG1feSAqIHNpbkFuZ2xlICsg
YWJvdXRQb2ludC54KCk7CisgICAgICAgIG1feSA9IG1feCAqIHNpbkFuZ2xlICsgbV95ICogY29z
QW5nbGUgKyBhYm91dFBvaW50LnkoKTsKKyAgICAgICAgbV94ID0gbmV3WDsKKyAgICB9CisKICAg
ICBXRUJDT1JFX0VYUE9SVCB2b2lkIG5vcm1hbGl6ZSgpOwogCiAgICAgZmxvYXQgZG90KGNvbnN0
IEZsb2F0UG9pbnQmIGEpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5n
L0ludGVybmFscy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKaW5k
ZXggOTQzYTdiYjNlYThhYWQ3OTIwMmRmN2Q5MmY0MGMwZTcxZDRlYzg3My4uMTJmZWMzMjA3M2Q5
Y2RjNjQ1MWRmZGQ4YjdmYmIzZTYwMzFjYTU3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
dGVzdGluZy9JbnRlcm5hbHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJu
YWxzLmNwcApAQCAtNTU5NCwyNiArNTU5NCw0MyBAQCBNb2NrUGF5bWVudENvb3JkaW5hdG9yJiBJ
bnRlcm5hbHM6Om1vY2tQYXltZW50Q29vcmRpbmF0b3IoRG9jdW1lbnQmIGRvY3VtZW50KQogfQog
I2VuZGlmCiAKK0ludGVybmFsczo6SW1hZ2VPdmVybGF5TGluZTo6fkltYWdlT3ZlcmxheUxpbmUo
KSA9IGRlZmF1bHQ7CiBJbnRlcm5hbHM6OkltYWdlT3ZlcmxheVRleHQ6On5JbWFnZU92ZXJsYXlU
ZXh0KCkgPSBkZWZhdWx0OwogCi12b2lkIEludGVybmFsczo6aW5zdGFsbEltYWdlT3ZlcmxheShF
bGVtZW50JiBlbGVtZW50LCBWZWN0b3I8SW1hZ2VPdmVybGF5VGV4dD4mJiBhbGxUZXh0SW5mbykK
K3RlbXBsYXRlPHR5cGVuYW1lIFQ+CitzdGF0aWMgRmxvYXRRdWFkIGdldFF1YWQoY29uc3QgVCYg
b3ZlcmxheVRleHRPckxpbmUpCit7CisgICAgcmV0dXJuIHsKKyAgICAgICAgRmxvYXRQb2ludChv
dmVybGF5VGV4dE9yTGluZS50b3BMZWZ0LT54KCksIG92ZXJsYXlUZXh0T3JMaW5lLnRvcExlZnQt
PnkoKSksCisgICAgICAgIEZsb2F0UG9pbnQob3ZlcmxheVRleHRPckxpbmUudG9wUmlnaHQtPngo
KSwgb3ZlcmxheVRleHRPckxpbmUudG9wUmlnaHQtPnkoKSksCisgICAgICAgIEZsb2F0UG9pbnQo
b3ZlcmxheVRleHRPckxpbmUuYm90dG9tUmlnaHQtPngoKSwgb3ZlcmxheVRleHRPckxpbmUuYm90
dG9tUmlnaHQtPnkoKSksCisgICAgICAgIEZsb2F0UG9pbnQob3ZlcmxheVRleHRPckxpbmUuYm90
dG9tTGVmdC0+eCgpLCBvdmVybGF5VGV4dE9yTGluZS5ib3R0b21MZWZ0LT55KCkpLAorICAgIH07
Cit9CisKK3N0YXRpYyBJbWFnZUV4dHJhY3Rpb25MaW5lRGF0YSBtYWtlRGF0YUZvckxpbmUoY29u
c3QgSW50ZXJuYWxzOjpJbWFnZU92ZXJsYXlMaW5lJiBsaW5lKQoreworICAgIHJldHVybiB7Cisg
ICAgICAgIGdldFF1YWQ8SW50ZXJuYWxzOjpJbWFnZU92ZXJsYXlMaW5lPihsaW5lKSwKKyAgICAg
ICAgbGluZS5jaGlsZHJlbi5tYXAoW10oYXV0byYgdGV4dENoaWxkKSAtPiBJbWFnZUV4dHJhY3Rp
b25UZXh0RGF0YSB7CisgICAgICAgICAgICByZXR1cm4geyB0ZXh0Q2hpbGQudGV4dCwgZ2V0UXVh
ZDxJbnRlcm5hbHM6OkltYWdlT3ZlcmxheVRleHQ+KHRleHRDaGlsZCkgfTsKKyAgICAgICAgfSkK
KyAgICB9OworfQorCit2b2lkIEludGVybmFsczo6aW5zdGFsbEltYWdlT3ZlcmxheShFbGVtZW50
JiBlbGVtZW50LCBWZWN0b3I8SW1hZ2VPdmVybGF5TGluZT4mJiBsaW5lcykKIHsKICAgICBpZiAo
IWlzPEhUTUxFbGVtZW50PihlbGVtZW50KSkKICAgICAgICAgcmV0dXJuOwogCiAjaWYgRU5BQkxF
KElNQUdFX0VYVFJBQ1RJT04pCiAgICAgZG93bmNhc3Q8SFRNTEVsZW1lbnQ+KGVsZW1lbnQpLnVw
ZGF0ZVdpdGhJbWFnZUV4dHJhY3Rpb25SZXN1bHQoSW1hZ2VFeHRyYWN0aW9uUmVzdWx0IHsKLSAg
ICAgICAgYWxsVGV4dEluZm8ubWFwKFtdIChhdXRvJiB0ZXh0SW5mbykgLT4gSW1hZ2VFeHRyYWN0
aW9uVGV4dERhdGEgewotICAgICAgICAgICAgcmV0dXJuIHsgdGV4dEluZm8udGV4dCwgewotICAg
ICAgICAgICAgICAgIEZsb2F0UG9pbnQodGV4dEluZm8udG9wTGVmdC0+eCgpLCB0ZXh0SW5mby50
b3BMZWZ0LT55KCkpLAotICAgICAgICAgICAgICAgIEZsb2F0UG9pbnQodGV4dEluZm8udG9wUmln
aHQtPngoKSwgdGV4dEluZm8udG9wUmlnaHQtPnkoKSksCi0gICAgICAgICAgICAgICAgRmxvYXRQ
b2ludCh0ZXh0SW5mby5ib3R0b21SaWdodC0+eCgpLCB0ZXh0SW5mby5ib3R0b21SaWdodC0+eSgp
KSwKLSAgICAgICAgICAgICAgICBGbG9hdFBvaW50KHRleHRJbmZvLmJvdHRvbUxlZnQtPngoKSwg
dGV4dEluZm8uYm90dG9tTGVmdC0+eSgpKSwKLSAgICAgICAgICAgIH19OworICAgICAgICBsaW5l
cy5tYXAoW10gKGF1dG8mIGxpbmUpIC0+IEltYWdlRXh0cmFjdGlvbkxpbmVEYXRhIHsKKyAgICAg
ICAgICAgIHJldHVybiBtYWtlRGF0YUZvckxpbmUobGluZSk7CiAgICAgICAgIH0pCiAgICAgfSk7
CiAjZWxzZQotICAgIFVOVVNFRF9QQVJBTShhbGxUZXh0SW5mbyk7CisgICAgVU5VU0VEX1BBUkFN
KGxpbmVzKTsKICNlbmRpZgogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5n
L0ludGVybmFscy5oIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaAppbmRleCBj
MWQwMDNhN2UzMzI2MzVkMjE0OGZjMGVkZjM0NjQ5ZDYzN2VlMWQ5Li44OGYwOGM1Zjk0ZTViZjY5
MWFiZDVkZGU1MTNhY2IwYWZjOWVlZjhkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0
aW5nL0ludGVybmFscy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgK
QEAgLTg3NSw3ICs4NzUsMTcgQEAgcHVibGljOgogCiAgICAgICAgIH5JbWFnZU92ZXJsYXlUZXh0
KCk7CiAgICAgfTsKLSAgICB2b2lkIGluc3RhbGxJbWFnZU92ZXJsYXkoRWxlbWVudCYsIFZlY3Rv
cjxJbWFnZU92ZXJsYXlUZXh0PiYmKTsKKworICAgIHN0cnVjdCBJbWFnZU92ZXJsYXlMaW5lIHsK
KyAgICAgICAgUmVmUHRyPERPTVBvaW50UmVhZE9ubHk+IHRvcExlZnQ7CisgICAgICAgIFJlZlB0
cjxET01Qb2ludFJlYWRPbmx5PiB0b3BSaWdodDsKKyAgICAgICAgUmVmUHRyPERPTVBvaW50UmVh
ZE9ubHk+IGJvdHRvbVJpZ2h0OworICAgICAgICBSZWZQdHI8RE9NUG9pbnRSZWFkT25seT4gYm90
dG9tTGVmdDsKKyAgICAgICAgVmVjdG9yPEltYWdlT3ZlcmxheVRleHQ+IGNoaWxkcmVuOworCisg
ICAgICAgIH5JbWFnZU92ZXJsYXlMaW5lKCk7CisgICAgfTsKKyAgICB2b2lkIGluc3RhbGxJbWFn
ZU92ZXJsYXkoRWxlbWVudCYsIFZlY3RvcjxJbWFnZU92ZXJsYXlMaW5lPiYmKTsKIAogICAgIGJv
b2wgaXNTeXN0ZW1QcmV2aWV3TGluayhFbGVtZW50JikgY29uc3Q7CiAgICAgYm9vbCBpc1N5c3Rl
bVByZXZpZXdJbWFnZShFbGVtZW50JikgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS90ZXN0aW5nL0ludGVybmFscy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFs
cy5pZGwKaW5kZXggYmZhNWU3NDAwZjZmNTE0NzZlNzUyMWVlZjBiNDU2ZWY5NjRkMDJkMy4uOTVm
YjU2MjJjYTFhM2YzNjYyZDM3MDFkNWE2MmQ0Nzg0NjhjNjQwZiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxzLmlkbApAQCAtMjY0LDYgKzI2NCwxNyBAQCBlbnVtIFRyZWVUeXBlIHsKICAg
ICByZXF1aXJlZCBET01Qb2ludFJlYWRPbmx5IGJvdHRvbUxlZnQ7CiB9OwogCitbCisgICAgRXhw
b3J0TWFjcm89V0VCQ09SRV9URVNUU1VQUE9SVF9FWFBPUlQsCisgICAgSlNHZW5lcmF0ZVRvSlNP
YmplY3QsCitdIGRpY3Rpb25hcnkgSW1hZ2VPdmVybGF5TGluZSB7CisgICAgcmVxdWlyZWQgRE9N
UG9pbnRSZWFkT25seSB0b3BMZWZ0OworICAgIHJlcXVpcmVkIERPTVBvaW50UmVhZE9ubHkgdG9w
UmlnaHQ7CisgICAgcmVxdWlyZWQgRE9NUG9pbnRSZWFkT25seSBib3R0b21SaWdodDsKKyAgICBy
ZXF1aXJlZCBET01Qb2ludFJlYWRPbmx5IGJvdHRvbUxlZnQ7CisgICAgc2VxdWVuY2U8SW1hZ2VP
dmVybGF5VGV4dD4gY2hpbGRyZW47Cit9OworCiBbCiAgICAgRXhwb3J0TWFjcm89V0VCQ09SRV9U
RVNUU1VQUE9SVF9FWFBPUlQsCiAgICAgTGVnYWN5Tm9JbnRlcmZhY2VPYmplY3QsCkBAIC04OTYs
NyArOTA3LDcgQEAgZW51bSBUcmVlVHlwZSB7CiAgICAgYm9vbGVhbiBpc1N5c3RlbVByZXZpZXdM
aW5rKEVsZW1lbnQgZWxlbWVudCk7CiAgICAgYm9vbGVhbiBpc1N5c3RlbVByZXZpZXdJbWFnZShF
bGVtZW50IGVsZW1lbnQpOwogCi0gICAgdW5kZWZpbmVkIGluc3RhbGxJbWFnZU92ZXJsYXkoRWxl
bWVudCBlbGVtZW50LCBzZXF1ZW5jZTxJbWFnZU92ZXJsYXlUZXh0PiBhbGxUZXh0SW5mbyk7Cisg
ICAgdW5kZWZpbmVkIGluc3RhbGxJbWFnZU92ZXJsYXkoRWxlbWVudCBlbGVtZW50LCBzZXF1ZW5j
ZTxJbWFnZU92ZXJsYXlMaW5lPiBsaW5lcyk7CiAKICAgICBib29sZWFuIHVzaW5nQXBwbGVJbnRl
cm5hbFNESygpOwogICAgIGJvb2xlYW4gdXNpbmdHU3RyZWFtZXIoKTsKZGlmZiAtLWdpdCBhL1Rv
b2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCBhNjY3ZWY2MjExOTNjMWNiZjA2
ZjU5NDc3NGI1MTVmMWQyM2I4ZmEzLi5hMWI5NWJlNzI3ZDU0ZWUwMDU1ZDIxZWMwNWI5MGM2ODQ4
NWZkMjM0IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMTYgQEAKKzIwMjEtMDQtMjUgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2ll
aEBhcHBsZS5jb20+CisKKyAgICAgICAgU3ViZGl2aWRlIGltYWdlIG92ZXJsYXkgdGV4dCBpbnRv
IG9uZSBvciBtb3JlIGVsZW1lbnRzIHBlciBsaW5lCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjUwMzgKKyAgICAgICAgcmRhcjovLzc1NTA1MDQzCisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRqdXN0IHNl
dmVyYWwgZXhpc3RpbmcgbGF5b3V0IHRlc3RzIGFmdGVyIGNoYW5naW5nIGBpbnRlcm5hbHMuaW5z
dGFsbEltYWdlT3ZlcmxheWAuIFNlZSBXZWJDb3JlIENoYW5nZUxvZyBmb3IKKyAgICAgICAgbW9y
ZSBkZXRhaWxzLgorCisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvc2ltcGxl
LWltYWdlLW92ZXJsYXkuaHRtbDoKKwogMjAyMS0wNC0yMiAgQkogQnVyZyAgPGJidXJnQGFwcGxl
LmNvbT4KIAogICAgICAgICBbQ29jb2FdIHJlLWVuYWJsZSB0ZXN0IGNhc2UgV0tJbnNwZWN0b3JE
ZWxlZ2F0ZS5JbnNwZWN0b3JDb25maWd1cmF0aW9uCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYktpdC9zaW1wbGUtaW1hZ2Utb3ZlcmxheS5odG1sIGIvVG9vbHMvVGVz
dFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvc2ltcGxlLWltYWdlLW92ZXJsYXkuaHRtbAppbmRleCA5
OGMwYjdhM2FiMmRiNzNmN2Y1YmNlY2JhMjMxZGYzYmUzOGNiNDhhLi4yYjlkY2UzYTI1ZmIwYjI0
YjczNDcyYTczZGIxMjQ1NmFmOTM1OTVjIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJ
L1Rlc3RzL1dlYktpdC9zaW1wbGUtaW1hZ2Utb3ZlcmxheS5odG1sCisrKyBiL1Rvb2xzL1Rlc3RX
ZWJLaXRBUEkvVGVzdHMvV2ViS2l0L3NpbXBsZS1pbWFnZS1vdmVybGF5Lmh0bWwKQEAgLTE4LDEx
ICsxOCwxOSBAQCBhZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgKCkgPT4gewogICAgICAgICByZXR1
cm47CiAKICAgICBpbnRlcm5hbHMuaW5zdGFsbEltYWdlT3ZlcmxheShkb2N1bWVudC5xdWVyeVNl
bGVjdG9yKCJpbWciKSwgW3sKLSAgICAgICAgdGV4dCA6ICJmb29iYXIiLAogICAgICAgICB0b3BM
ZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMCksCiAgICAgICAgIHRvcFJpZ2h0IDogbmV3
IERPTVBvaW50UmVhZE9ubHkoMSwgMCksCiAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBv
aW50UmVhZE9ubHkoMSwgMC41KSwKICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJl
YWRPbmx5KDAsIDAuNSksCisgICAgICAgIGNoaWxkcmVuOiBbCisgICAgICAgICAgICB7CisgICAg
ICAgICAgICAgICAgdGV4dCA6ICJmb29iYXIiLAorICAgICAgICAgICAgICAgIHRvcExlZnQgOiBu
ZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwKSwKKyAgICAgICAgICAgICAgICB0b3BSaWdodCA6IG5l
dyBET01Qb2ludFJlYWRPbmx5KDEsIDApLAorICAgICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDog
bmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwKKyAgICAgICAgICAgICAgICBib3R0b21MZWZ0
IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMC41KSwKKyAgICAgICAgICAgIH0KKyAgICAgICAg
XQogICAgIH1dKTsKIH0pOwogPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggYmFkMjlkMTQ0NWEzY2VmNzMzMDcy
ZGE2ZjYwYzg4NjAwOWZmNmJjYi4uMjliZWVkOTdjZTE4OWUwOTE5ZmY4NTcyMTJmZTNhNWU2ODM3
MGQwMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDIxLTA0LTI1ICBXZW5zb24gSHNpZWggIDx3
ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIFN1YmRpdmlkZSBpbWFnZSBvdmVybGF5
IHRleHQgaW50byBvbmUgb3IgbW9yZSBlbGVtZW50cyBwZXIgbGluZQorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1MDM4CisgICAgICAgIHJkYXI6Ly83
NTUwNTA0MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEFkanVzdCBzZXZlcmFsIGV4aXN0aW5nIGxheW91dCB0ZXN0cyBhZnRlciBjaGFuZ2luZyBgaW50
ZXJuYWxzLmluc3RhbGxJbWFnZU92ZXJsYXlgLiBTZWUgV2ViQ29yZSBDaGFuZ2VMb2cgZm9yCisg
ICAgICAgIG1vcmUgZGV0YWlscy4KKworICAgICAgICAqIGZhc3QvaW1hZ2VzL2ltYWdlLWV4dHJh
Y3Rpb24vYmFzaWMtaW1hZ2Utb3ZlcmxheS5odG1sOgorICAgICAgICAqIGZhc3QvaW1hZ2VzL2lt
YWdlLWV4dHJhY3Rpb24vY2xpY2stbGluay13aXRoLWltYWdlLW92ZXJsYXkuaHRtbDoKKyAgICAg
ICAgKiBmYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2ltYWdlLW92ZXJsYXktY3JlYXRpb24t
aXMtaWRlbXBvdGVudC5odG1sOgorICAgICAgICAqIGZhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rp
b24vaW1hZ2Utb3ZlcmxheS1pbi1pbWFnZS13aXRoLXplcm8tZm9udC1zaXplLmh0bWw6CisgICAg
ICAgICogZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9pbWFnZS1vdmVybGF5LXdpdGgtc2Vs
ZWN0aW9uLXN0eWxlcy1leHBlY3RlZC5odG1sOgorICAgICAgICAqIGZhc3QvaW1hZ2VzL2ltYWdl
LWV4dHJhY3Rpb24vaW1hZ2Utb3ZlcmxheS13aXRoLXNlbGVjdGlvbi1zdHlsZXMuaHRtbDoKKyAg
ICAgICAgKiBmYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2lvcy9yZXNlbGVjdC13b3JkLWlu
LWltYWdlLW92ZXJsYXkuaHRtbDoKKyAgICAgICAgKiBmYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0
aW9uL2lvcy9zZWxlY3Qtd29yZC1pbi1pbWFnZS1vdmVybGF5LWluc2lkZS1saW5rLmh0bWw6Cisg
ICAgICAgICogZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9pb3Mvc2VsZWN0LXdvcmQtaW4t
aW1hZ2Utb3ZlcmxheS5odG1sOgorICAgICAgICAqIGZhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rp
b24vaW9zL3NlbGVjdGlvbi1yZWN0cy1pbi1pbWFnZS1vdmVybGF5Lmh0bWw6CisgICAgICAgICog
ZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9tYWMvY29weS1pbWFnZS1vdmVybGF5LXRleHQt
d2l0aC1jb250ZXh0LW1lbnUuaHRtbDoKKyAgICAgICAgKiBmYXN0L2ltYWdlcy9pbWFnZS1leHRy
YWN0aW9uL21hYy9zZWxlY3QtaW1hZ2Utb3ZlcmxheS1pbi1saW5rLXdpdGgtbW91c2UtZHJhZy5o
dG1sOgorICAgICAgICAqIGZhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vbWFjL3NlbGVjdC1p
bWFnZS1vdmVybGF5LXdpdGgtbW91c2UtZHJhZy1kb2VzLW5vdC1maXJlLWNsaWNrLmh0bWw6Cisg
ICAgICAgICogZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9tYWMvc2VsZWN0LWltYWdlLW92
ZXJsYXktd2l0aC1tb3VzZS1kcmFnLmh0bWw6CisgICAgICAgICogZmFzdC9pbWFnZXMvaW1hZ2Ut
ZXh0cmFjdGlvbi9tYWMvc2VsZWN0LXdvcmQtaW4tZHJhZ2dhYmxlLWltYWdlLW92ZXJsYXkuaHRt
bDoKKyAgICAgICAgKiBmYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL21hYy9zZWxlY3Qtd29y
ZC1pbi10cmFuc3BhcmVudC1pbWFnZS1vdmVybGF5Lmh0bWw6CisKIDIwMjEtMDQtMjIgIFJvYmVy
dCBKZW5uZXIgIDxqZW5uZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFsgQmlnU3VyIHdrMiBhcm02
NCBdIHdlYnJ0Yy9jYXB0dXJlQ2FudmFzLXdlYnJ0Yy5odG1sCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2Jhc2ljLWltYWdlLW92ZXJsYXkuaHRt
bCBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vYmFzaWMtaW1hZ2Ut
b3ZlcmxheS5odG1sCmluZGV4IGE4MWMzNmUwNzc2NWQ2OTBhNjg0ZTZiZDA1YTZjNGE0MWQ0NTBl
NzcuLjk5YTBjZTYxODA2ZThlYTNhM2IzODRlZWM1Zjg2OTA2ODM4YzZjNDcgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vYmFzaWMtaW1hZ2Utb3Zl
cmxheS5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24v
YmFzaWMtaW1hZ2Utb3ZlcmxheS5odG1sCkBAIC01LDEzICs1LDIxIEBACiA8c2NyaXB0PgogYWRk
RXZlbnRMaXN0ZW5lcigibG9hZCIsICgpID0+IHsKICAgICBsZXQgaW1hZ2UgPSBkb2N1bWVudC5x
dWVyeVNlbGVjdG9yKCJpbWciKTsKLSAgICBpbnRlcm5hbHMuaW5zdGFsbEltYWdlT3ZlcmxheShp
bWFnZSwgW3sKLSAgICAgICAgdGV4dCA6ICJIZWxsbyIsCi0gICAgICAgIHRvcExlZnQgOiBuZXcg
RE9NUG9pbnRSZWFkT25seSgwLjUsIDAuNSksCi0gICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBv
aW50UmVhZE9ubHkoMSwgMC41KSwKLSAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRS
ZWFkT25seSgxLCAxKSwKLSAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5
KDAuNSwgMSksCi0gICAgfV0pOworICAgIGludGVybmFscy5pbnN0YWxsSW1hZ2VPdmVybGF5KGlt
YWdlLCBbCisgICAgICAgIHsKKyAgICAgICAgICAgIHRvcExlZnQgOiBuZXcgRE9NUG9pbnRSZWFk
T25seSgwLjUsIDAuNSksCisgICAgICAgICAgICB0b3BSaWdodCA6IG5ldyBET01Qb2ludFJlYWRP
bmx5KDEsIDAuNSksCisgICAgICAgICAgICBib3R0b21SaWdodCA6IG5ldyBET01Qb2ludFJlYWRP
bmx5KDEsIDEpLAorICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5
KDAuNSwgMSksCisgICAgICAgICAgICBjaGlsZHJlbjogW3sKKyAgICAgICAgICAgICAgICB0ZXh0
IDogIkhlbGxvIiwKKyAgICAgICAgICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9u
bHkoMC41LCAwLjUpLAorICAgICAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBvaW50UmVh
ZE9ubHkoMSwgMC41KSwKKyAgICAgICAgICAgICAgICBib3R0b21SaWdodCA6IG5ldyBET01Qb2lu
dFJlYWRPbmx5KDEsIDEpLAorICAgICAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9p
bnRSZWFkT25seSgwLjUsIDEpLAorICAgICAgICAgICAgfV0sCisgICAgICAgIH0KKyAgICBdKTsK
ICAgICBpbnRlcm5hbHMuc2hhZG93Um9vdChpbWFnZSkuZ2V0RWxlbWVudEJ5SWQoImltYWdlLW92
ZXJsYXkiKS5zdHlsZS5jb2xvciA9ICJibGFjayI7CiB9KTsKIDwvc2NyaXB0PgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9jbGljay1saW5rLXdp
dGgtaW1hZ2Utb3ZlcmxheS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0
cmFjdGlvbi9jbGljay1saW5rLXdpdGgtaW1hZ2Utb3ZlcmxheS5odG1sCmluZGV4IGFlOGRhYTQ3
ODY0ZTM0OTkyNjRkY2FiNWY3MTBiYzkwZjhhYjRjOGYuLjYxMGU4NmVmODdjZDE2NzMzMmMwZWE2
MzZkNWYxN2E4YjkzMDk2MzUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2lt
YWdlLWV4dHJhY3Rpb24vY2xpY2stbGluay13aXRoLWltYWdlLW92ZXJsYXkuaHRtbAorKysgYi9M
YXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2NsaWNrLWxpbmstd2l0aC1p
bWFnZS1vdmVybGF5Lmh0bWwKQEAgLTMwLDYgKzMwLDI0IEBAIGFkZEV2ZW50TGlzdGVuZXIoImxv
YWQiLCBhc3luYyAoKSA9PiB7CiAgICAgICAgIGNsaWNrQ291bnQrKzsKICAgICB9KTsKIAorICAg
IGludGVybmFscy5pbnN0YWxsSW1hZ2VPdmVybGF5KGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImlt
ZyIpLCBbCisgICAgICAgIHsKKyAgICAgICAgICAgIHRvcExlZnQgOiBuZXcgRE9NUG9pbnRSZWFk
T25seSgwLCAwKSwKKyAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHko
MSwgMCksCisgICAgICAgICAgICBib3R0b21SaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEs
IDAuMjUpLAorICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAs
IDAuMjUpLAorICAgICAgICAgICAgY2hpbGRyZW46IFsKKyAgICAgICAgICAgICAgICB7CisgICAg
ICAgICAgICAgICAgICAgIHRleHQgOiAiaGVsbG8iLAorICAgICAgICAgICAgICAgICAgICB0b3BM
ZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMCksCisgICAgICAgICAgICAgICAgICAgIHRv
cFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMCksCisgICAgICAgICAgICAgICAgICAg
IGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC4yNSksCisgICAgICAgICAg
ICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwLjI1KSwKKyAg
ICAgICAgICAgICAgICB9CisgICAgICAgICAgICBdLAorICAgICAgICB9CisgICAgXSk7CisKICAg
ICBpbnRlcm5hbHMuaW5zdGFsbEltYWdlT3ZlcmxheShkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJp
bWciKSwgWwogICAgICAgICB7CiAgICAgICAgICAgICB0ZXh0IDogImhlbGxvIiwKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vaW1hZ2Utb3Zlcmxh
eS1jcmVhdGlvbi1pcy1pZGVtcG90ZW50Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9p
bWFnZS1leHRyYWN0aW9uL2ltYWdlLW92ZXJsYXktY3JlYXRpb24taXMtaWRlbXBvdGVudC5odG1s
CmluZGV4IDVkYzkwODRiMjNjZWMyZWI3ZTZmOGQ4Y2EwZWJlMDk2YTU2ZjYxOTIuLmI2Y2NkZmI2
MzNlOWIyNGU0M2YwNGMzZjk4ZmYzMDJmNTNmZGI5MjggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vaW1hZ2Utb3ZlcmxheS1jcmVhdGlvbi1pcy1p
ZGVtcG90ZW50Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFj
dGlvbi9pbWFnZS1vdmVybGF5LWNyZWF0aW9uLWlzLWlkZW1wb3RlbnQuaHRtbApAQCAtNywxMyAr
NywyMyBAQAogYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsICgpID0+IHsKICAgICBpbWFnZSA9IGRv
Y3VtZW50LnF1ZXJ5U2VsZWN0b3IoImltZyIpOwogICAgIGZvciAobGV0IGkgPSAwOyBpIDwgMTA7
ICsraSkgewotICAgICAgICBpbnRlcm5hbHMuaW5zdGFsbEltYWdlT3ZlcmxheShpbWFnZSwgW3sK
LSAgICAgICAgICAgIHRleHQgOiAiSGVsbG8iLAotICAgICAgICAgICAgdG9wTGVmdCA6IG5ldyBE
T01Qb2ludFJlYWRPbmx5KDAuNSwgMC41KSwKLSAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERP
TVBvaW50UmVhZE9ubHkoMSwgMC41KSwKLSAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERP
TVBvaW50UmVhZE9ubHkoMSwgMSksCi0gICAgICAgICAgICBib3R0b21MZWZ0IDogbmV3IERPTVBv
aW50UmVhZE9ubHkoMC41LCAxKSwKLSAgICAgICAgfV0pOworICAgICAgICBpbnRlcm5hbHMuaW5z
dGFsbEltYWdlT3ZlcmxheShpbWFnZSwgWworICAgICAgICAgICAgeworICAgICAgICAgICAgICAg
IHRvcExlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjUsIDAuNSksCisgICAgICAgICAgICAg
ICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwLjUpLAorICAgICAgICAgICAg
ICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMSksCisgICAgICAgICAg
ICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuNSwgMSksCisgICAgICAg
ICAgICAgICAgY2hpbGRyZW46IFsKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgICAgICAgICAgdGV4dCA6ICJIZWxsbyIsCisgICAgICAgICAgICAgICAgICAgICAgICB0b3BM
ZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC41LCAwLjUpLAorICAgICAgICAgICAgICAgICAg
ICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwLjUpLAorICAgICAgICAg
ICAgICAgICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAxKSwK
KyAgICAgICAgICAgICAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25s
eSgwLjUsIDEpLAorICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgXSwKKyAg
ICAgICAgICAgIH0KKyAgICAgICAgXSk7CiAgICAgfQogICAgIHNob3VsZEJlKCJpbnRlcm5hbHMu
c2hhZG93Um9vdChpbWFnZSkuY2hpbGRFbGVtZW50Q291bnQiLCAiMiIpOwogfSk7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2ltYWdlLW92ZXJs
YXktaW4taW1hZ2Utd2l0aC16ZXJvLWZvbnQtc2l6ZS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9p
bWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9pbWFnZS1vdmVybGF5LWluLWltYWdlLXdpdGgtemVyby1m
b250LXNpemUuaHRtbAppbmRleCBjMzgwM2M0MTg0MDU4MzA2NDE1ZWFjNWU1ZDhiOWI0MGEwY2Iy
MDBlLi4wMTRiMDU2NDk5NjgxNGRmMzg1ZDBiOGVlMjIyYTk5ODlkYjU1MDE3IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2ltYWdlLW92ZXJsYXkt
aW4taW1hZ2Utd2l0aC16ZXJvLWZvbnQtc2l6ZS5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qv
aW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vaW1hZ2Utb3ZlcmxheS1pbi1pbWFnZS13aXRoLXplcm8t
Zm9udC1zaXplLmh0bWwKQEAgLTEyLDEzICsxMiwyMyBAQCBpbWcgewogPHNjcmlwdD4KIGFkZEV2
ZW50TGlzdGVuZXIoImxvYWQiLCAoKSA9PiB7CiAgICAgbGV0IGltYWdlID0gZG9jdW1lbnQucXVl
cnlTZWxlY3RvcigiaW1nIik7Ci0gICAgaW50ZXJuYWxzLmluc3RhbGxJbWFnZU92ZXJsYXkoaW1h
Z2UsIFt7Ci0gICAgICAgIHRleHQgOiAiSGVsbG8iLAotICAgICAgICB0b3BMZWZ0IDogbmV3IERP
TVBvaW50UmVhZE9ubHkoMC41LCAwLjUpLAotICAgICAgICB0b3BSaWdodCA6IG5ldyBET01Qb2lu
dFJlYWRPbmx5KDEsIDAuNSksCi0gICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVh
ZE9ubHkoMSwgMSksCi0gICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgw
LjUsIDEpLAotICAgIH1dKTsKKyAgICBpbnRlcm5hbHMuaW5zdGFsbEltYWdlT3ZlcmxheShpbWFn
ZSwgWworICAgICAgICB7CisgICAgICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9u
bHkoMC41LCAwLjUpLAorICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25s
eSgxLCAwLjUpLAorICAgICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25s
eSgxLCAxKSwKKyAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgw
LjUsIDEpLAorICAgICAgICAgICAgY2hpbGRyZW46IFsKKyAgICAgICAgICAgICAgICB7CisgICAg
ICAgICAgICAgICAgICAgIHRleHQgOiAiSGVsbG8iLAorICAgICAgICAgICAgICAgICAgICB0b3BM
ZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC41LCAwLjUpLAorICAgICAgICAgICAgICAgICAg
ICB0b3BSaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDAuNSksCisgICAgICAgICAgICAg
ICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMSksCisgICAgICAg
ICAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjUsIDEpLAor
ICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIF0sCisgICAgICAgIH0KKyAgICBdKTsKICAg
ICBpbnRlcm5hbHMuc2hhZG93Um9vdChpbWFnZSkuZ2V0RWxlbWVudEJ5SWQoImltYWdlLW92ZXJs
YXkiKS5zdHlsZS5jb2xvciA9ICJibGFjayI7CiB9KTsKIDwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9pbWFnZS1vdmVybGF5LXdp
dGgtc2VsZWN0aW9uLXN0eWxlcy1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFn
ZXMvaW1hZ2UtZXh0cmFjdGlvbi9pbWFnZS1vdmVybGF5LXdpdGgtc2VsZWN0aW9uLXN0eWxlcy1l
eHBlY3RlZC5odG1sCmluZGV4IDY3NjhiZTIzZTdiMTVmYTYxZTk5ZTM1YjljOTEwZjMwYjJlZTMz
NGIuLmVhNTI0NTYwOTk2NGFiYzk0ZDc4NmU4MDhhNTU4OGFlZTRiZjc4NWMgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vaW1hZ2Utb3ZlcmxheS13
aXRoLXNlbGVjdGlvbi1zdHlsZXMtZXhwZWN0ZWQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0
L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2ltYWdlLW92ZXJsYXktd2l0aC1zZWxlY3Rpb24tc3R5
bGVzLWV4cGVjdGVkLmh0bWwKQEAgLTIwLDExICsyMCwxOSBAQCBhZGRFdmVudExpc3RlbmVyKCJs
b2FkIiwgKCkgPT4gewogICAgIGNvbnN0IGltYWdlID0gZG9jdW1lbnQucXVlcnlTZWxlY3Rvcigi
aW1nIik7CiAgICAgaW50ZXJuYWxzLmluc3RhbGxJbWFnZU92ZXJsYXkoaW1hZ2UsIFsKICAgICAg
ICAgewotICAgICAgICAgICAgdGV4dCA6ICJoZWxsbyIsCiAgICAgICAgICAgICB0b3BMZWZ0IDog
bmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMCksCiAgICAgICAgICAgICB0b3BSaWdodCA6IG5ldyBE
T01Qb2ludFJlYWRPbmx5KDEsIDApLAogICAgICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9N
UG9pbnRSZWFkT25seSgxLCAwLjUpLAogICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Q
b2ludFJlYWRPbmx5KDAsIDAuNSksCisgICAgICAgICAgICBjaGlsZHJlbjogWworICAgICAgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdGV4dCA6ICJoZWxsbyIsCisgICAgICAgICAg
ICAgICAgICAgIHRvcExlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwKSwKKyAgICAgICAg
ICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwKSwKKyAgICAg
ICAgICAgICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwLjUp
LAorICAgICAgICAgICAgICAgICAgICBib3R0b21MZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHko
MCwgMC41KSwKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICBdLAogICAgICAgICB9CiAg
ICAgXSk7CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJh
Y3Rpb24vaW1hZ2Utb3ZlcmxheS13aXRoLXNlbGVjdGlvbi1zdHlsZXMuaHRtbCBiL0xheW91dFRl
c3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vaW1hZ2Utb3ZlcmxheS13aXRoLXNlbGVj
dGlvbi1zdHlsZXMuaHRtbAppbmRleCA5MzQ0YmU0YjkxMzAzMzgyMmY4YzU0ZTdiYTYzMjRiODNl
MTQxYzllLi45NTk1MmI1Y2IzNmYyMGFhMzVlYmUwYTRjY2ZhNTE3YTc0NjVhMTIwIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2ltYWdlLW92ZXJs
YXktd2l0aC1zZWxlY3Rpb24tc3R5bGVzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFn
ZXMvaW1hZ2UtZXh0cmFjdGlvbi9pbWFnZS1vdmVybGF5LXdpdGgtc2VsZWN0aW9uLXN0eWxlcy5o
dG1sCkBAIC0xNiwxMSArMTYsMTkgQEAgYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsICgpID0+IHsK
ICAgICBjb25zdCBpbWFnZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImltZyIpOwogICAgIGlu
dGVybmFscy5pbnN0YWxsSW1hZ2VPdmVybGF5KGltYWdlLCBbCiAgICAgICAgIHsKLSAgICAgICAg
ICAgIHRleHQgOiAiaGVsbG8iLAogICAgICAgICAgICAgdG9wTGVmdCA6IG5ldyBET01Qb2ludFJl
YWRPbmx5KDAsIDApLAogICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25s
eSgxLCAwKSwKICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHko
MSwgMC41KSwKICAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgw
LCAwLjUpLAorICAgICAgICAgICAgY2hpbGRyZW46IFsKKyAgICAgICAgICAgICAgICB7CisgICAg
ICAgICAgICAgICAgICAgIHRleHQgOiAiaGVsbG8iLAorICAgICAgICAgICAgICAgICAgICB0b3BM
ZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMCksCisgICAgICAgICAgICAgICAgICAgIHRv
cFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMCksCisgICAgICAgICAgICAgICAgICAg
IGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwKKyAgICAgICAgICAg
ICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDAuNSksCisgICAg
ICAgICAgICAgICAgfQorICAgICAgICAgICAgXSwKICAgICAgICAgfQogICAgIF0pOwogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2lvcy9yZXNl
bGVjdC13b3JkLWluLWltYWdlLW92ZXJsYXkuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2Vz
L2ltYWdlLWV4dHJhY3Rpb24vaW9zL3Jlc2VsZWN0LXdvcmQtaW4taW1hZ2Utb3ZlcmxheS5odG1s
CmluZGV4IDU0NWNlNTU3ZDhkMGFkZGNmZDFmOTdhMDk0ZDcxMzkzMGFmZDM0ZjkuLjQ4NTAyY2Y0
NTU2Zjg2MjY1M2ZmZWFmNmE3N2JmYTJlMDAxNzQwNDAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vaW9zL3Jlc2VsZWN0LXdvcmQtaW4taW1hZ2Ut
b3ZlcmxheS5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rp
b24vaW9zL3Jlc2VsZWN0LXdvcmQtaW4taW1hZ2Utb3ZlcmxheS5odG1sCkBAIC0xOSwxMSArMTks
MTkgQEAgYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIGFzeW5jICgpID0+IHsKICAgICBsZXQgaW1h
Z2UgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJpbWciKTsKICAgICBpbnRlcm5hbHMuaW5zdGFs
bEltYWdlT3ZlcmxheShpbWFnZSwgWwogICAgICAgICB7Ci0gICAgICAgICAgICB0ZXh0IDogImZv
byIsCiAgICAgICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMCksCiAg
ICAgICAgICAgICB0b3BSaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDApLAogICAgICAg
ICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwLjUpLAogICAgICAg
ICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDAuNSksCisgICAgICAg
ICAgICBjaGlsZHJlbjogWworICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAg
dGV4dCA6ICJmb28iLAorICAgICAgICAgICAgICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50
UmVhZE9ubHkoMCwgMCksCisgICAgICAgICAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBv
aW50UmVhZE9ubHkoMSwgMCksCisgICAgICAgICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3
IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwKKyAgICAgICAgICAgICAgICAgICAgYm90dG9tTGVm
dCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDAuNSksCisgICAgICAgICAgICAgICAgfQorICAg
ICAgICAgICAgXSwKICAgICAgICAgfQogICAgIF0pOwogICAgIGF3YWl0IFVJSGVscGVyLmxvbmdQ
cmVzc0F0UG9pbnQoMjAwLCAxMDApOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9pbWFn
ZXMvaW1hZ2UtZXh0cmFjdGlvbi9pb3Mvc2VsZWN0LXdvcmQtaW4taW1hZ2Utb3ZlcmxheS1pbnNp
ZGUtbGluay5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9p
b3Mvc2VsZWN0LXdvcmQtaW4taW1hZ2Utb3ZlcmxheS1pbnNpZGUtbGluay5odG1sCmluZGV4IDRj
NWFmOTQ4MjQwODAzZDk2ZWU0YTFmYjI3NzE5MTU4NzFkYjE0MjEuLmY4ZjQ2YzlkNTk0Mjg2NWZl
NjA4OGM1ZDU3NzllZjQyM2IxNmRmMDAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvaW1h
Z2VzL2ltYWdlLWV4dHJhY3Rpb24vaW9zL3NlbGVjdC13b3JkLWluLWltYWdlLW92ZXJsYXktaW5z
aWRlLWxpbmsuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0
aW9uL2lvcy9zZWxlY3Qtd29yZC1pbi1pbWFnZS1vdmVybGF5LWluc2lkZS1saW5rLmh0bWwKQEAg
LTI1LDExICsyNSwxOSBAQCBhZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgYXN5bmMgKCkgPT4gewog
ICAgIGxldCBpbWFnZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImltZyIpOwogICAgIGludGVy
bmFscy5pbnN0YWxsSW1hZ2VPdmVybGF5KGltYWdlLCBbCiAgICAgICAgIHsKLSAgICAgICAgICAg
IHRleHQgOiAiaGVsbG8iLAogICAgICAgICAgICAgdG9wTGVmdCA6IG5ldyBET01Qb2ludFJlYWRP
bmx5KDAsIDApLAogICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgx
LCAwKSwKICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwg
MC4yNSksCiAgICAgICAgICAgICBib3R0b21MZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwg
MC4yNSksCisgICAgICAgICAgICBjaGlsZHJlbjogWworICAgICAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICAgICAgdGV4dCA6ICJoZWxsbyIsCisgICAgICAgICAgICAgICAgICAgIHRvcExl
ZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwKSwKKyAgICAgICAgICAgICAgICAgICAgdG9w
UmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwKSwKKyAgICAgICAgICAgICAgICAgICAg
Ym90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwLjI1KSwKKyAgICAgICAgICAg
ICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDAuMjUpLAorICAg
ICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIF0sCiAgICAgICAgIH0KICAgICBdKTsKICAgICBh
d2FpdCBVSUhlbHBlci5sb25nUHJlc3NBdFBvaW50KDIwMCwgNTApOwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9pb3Mvc2VsZWN0LXdvcmQtaW4t
aW1hZ2Utb3ZlcmxheS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFj
dGlvbi9pb3Mvc2VsZWN0LXdvcmQtaW4taW1hZ2Utb3ZlcmxheS5odG1sCmluZGV4IDcwODk0ZjU3
ZTY5OTBiZDQ0MmMwMWJhZjEyOWZjMTI4ZTE4N2NhNDQuLmMxNjIzN2NjODVkMTI0ZWQ2MTE2MmNh
NzkzODQ5OWI1MzU0YzljZjYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2lt
YWdlLWV4dHJhY3Rpb24vaW9zL3NlbGVjdC13b3JkLWluLWltYWdlLW92ZXJsYXkuaHRtbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2lvcy9zZWxlY3Qtd29y
ZC1pbi1pbWFnZS1vdmVybGF5Lmh0bWwKQEAgLTE5LDIwICsxOSwzNyBAQCBhZGRFdmVudExpc3Rl
bmVyKCJsb2FkIiwgYXN5bmMgKCkgPT4gewogICAgIGxldCBpbWFnZSA9IGRvY3VtZW50LnF1ZXJ5
U2VsZWN0b3IoImltZyIpOwogICAgIGludGVybmFscy5pbnN0YWxsSW1hZ2VPdmVybGF5KGltYWdl
LCBbCiAgICAgICAgIHsKLSAgICAgICAgICAgIHRleHQgOiAiaGVsbG8iLAogICAgICAgICAgICAg
dG9wTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDApLAogICAgICAgICAgICAgdG9wUmln
aHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwKSwKICAgICAgICAgICAgIGJvdHRvbVJpZ2h0
IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwKICAgICAgICAgICAgIGJvdHRvbUxlZnQg
OiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwLjUpLAorICAgICAgICAgICAgY2hpbGRyZW46IFsK
KyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHRleHQgOiAiaGVsbG8iLAor
ICAgICAgICAgICAgICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMCks
CisgICAgICAgICAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwg
MCksCisgICAgICAgICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9u
bHkoMSwgMC41KSwKKyAgICAgICAgICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2lu
dFJlYWRPbmx5KDAsIDAuNSksCisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgXSwKICAg
ICAgICAgfSwKICAgICAgICAgewotICAgICAgICAgICAgdGV4dCA6ICJ3b3JsZCIsCiAgICAgICAg
ICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMC41KSwKICAgICAgICAgICAg
IHRvcFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwKICAgICAgICAgICAgIGJv
dHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMSksCiAgICAgICAgICAgICBib3R0
b21MZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMSksCi0gICAgICAgIH0sCisgICAgICAg
ICAgICBjaGlsZHJlbjogWworICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAg
dGV4dCA6ICJ3b3JsZCIsCisgICAgICAgICAgICAgICAgICAgIHRvcExlZnQgOiBuZXcgRE9NUG9p
bnRSZWFkT25seSgwLCAwLjUpLAorICAgICAgICAgICAgICAgICAgICB0b3BSaWdodCA6IG5ldyBE
T01Qb2ludFJlYWRPbmx5KDEsIDAuNSksCisgICAgICAgICAgICAgICAgICAgIGJvdHRvbVJpZ2h0
IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMSksCisgICAgICAgICAgICAgICAgICAgIGJvdHRv
bUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAxKSwKKyAgICAgICAgICAgICAgICB9Cisg
ICAgICAgICAgICBdLAorICAgICAgICB9CiAgICAgXSk7CisKICAgICBhd2FpdCBVSUhlbHBlci5s
b25nUHJlc3NBdFBvaW50KDIwMCwgMzAwKTsKICAgICBzZWxlY3Rpb25SZWN0cyA9IGF3YWl0IFVJ
SGVscGVyLndhaXRGb3JTZWxlY3Rpb25Ub0FwcGVhcigpOwogICAgIHNob3VsZEJlKCJzZWxlY3Rp
b25SZWN0cy5sZW5ndGgiLCAiMSIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9pbWFn
ZXMvaW1hZ2UtZXh0cmFjdGlvbi9pb3Mvc2VsZWN0aW9uLXJlY3RzLWluLWltYWdlLW92ZXJsYXku
aHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vaW9zL3NlbGVj
dGlvbi1yZWN0cy1pbi1pbWFnZS1vdmVybGF5Lmh0bWwKaW5kZXggZmE5MDc5ZjRkZWFkNmM4OGIz
N2ZkNTIzODE3ZDAxZjM3ZDk3MGJjYi4uYzQ3YjUzNGZmMGQzZGZiNTkzZmIwZTA5ZDcyNTI4NGUw
MmUyZDQyZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFj
dGlvbi9pb3Mvc2VsZWN0aW9uLXJlY3RzLWluLWltYWdlLW92ZXJsYXkuaHRtbAorKysgYi9MYXlv
dXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2lvcy9zZWxlY3Rpb24tcmVjdHMt
aW4taW1hZ2Utb3ZlcmxheS5odG1sCkBAIC0yMCwzMiArMjAsNjQgQEAgYWRkRXZlbnRMaXN0ZW5l
cigibG9hZCIsIGFzeW5jICgpID0+IHsKICAgICBsZXQgaW1hZ2UgPSBkb2N1bWVudC5xdWVyeVNl
bGVjdG9yKCJpbWciKTsKICAgICBpbnRlcm5hbHMuaW5zdGFsbEltYWdlT3ZlcmxheShpbWFnZSwg
WwogICAgICAgICB7Ci0gICAgICAgICAgICB0ZXh0OiAib25lIiwKLSAgICAgICAgICAgIHRvcExl
ZnQ6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuMSwgMC4yNSksCi0gICAgICAgICAgICB0b3BSaWdo
dDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC4yNSwgMC4xKSwKLSAgICAgICAgICAgIGJvdHRvbVJp
Z2h0OiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjM1LCAwLjIpLAotICAgICAgICAgICAgYm90dG9t
TGVmdDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC4yLCAwLjM1KQorICAgICAgICAgICAgdG9wTGVm
dCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuMSwgMC4yNSksCisgICAgICAgICAgICB0b3BSaWdo
dCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuMjUsIDAuMSksCisgICAgICAgICAgICBib3R0b21S
aWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuMzUsIDAuMiksCisgICAgICAgICAgICBib3R0
b21MZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC4yLCAwLjM1KSwKKyAgICAgICAgICAgIGNo
aWxkcmVuOiBbCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICB0ZXh0IDog
Im9uZSIsCisgICAgICAgICAgICAgICAgICAgIHRvcExlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25s
eSgwLjEsIDAuMjUpLAorICAgICAgICAgICAgICAgICAgICB0b3BSaWdodCA6IG5ldyBET01Qb2lu
dFJlYWRPbmx5KDAuMjUsIDAuMSksCisgICAgICAgICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDog
bmV3IERPTVBvaW50UmVhZE9ubHkoMC4zNSwgMC4yKSwKKyAgICAgICAgICAgICAgICAgICAgYm90
dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuMiwgMC4zNSksCisgICAgICAgICAgICAg
ICAgfQorICAgICAgICAgICAgXSwKICAgICAgICAgfSwKICAgICAgICAgewotICAgICAgICAgICAg
dGV4dDogInR3byIsCi0gICAgICAgICAgICB0b3BMZWZ0OiBuZXcgRE9NUG9pbnRSZWFkT25seSgw
LjMsIDAuNDUpLAotICAgICAgICAgICAgdG9wUmlnaHQ6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAu
NDUsIDAuMyksCi0gICAgICAgICAgICBib3R0b21SaWdodDogbmV3IERPTVBvaW50UmVhZE9ubHko
MC41NSwgMC40KSwKLSAgICAgICAgICAgIGJvdHRvbUxlZnQ6IG5ldyBET01Qb2ludFJlYWRPbmx5
KDAuNCwgMC41NSkKKyAgICAgICAgICAgIHRvcExlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgw
LjMsIDAuNDUpLAorICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgw
LjQ1LCAwLjMpLAorICAgICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25s
eSgwLjU1LCAwLjQpLAorICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRP
bmx5KDAuNCwgMC41NSksCisgICAgICAgICAgICBjaGlsZHJlbjogWworICAgICAgICAgICAgICAg
IHsKKyAgICAgICAgICAgICAgICAgICAgdGV4dCA6ICJ0d28iLAorICAgICAgICAgICAgICAgICAg
ICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC4zLCAwLjQ1KSwKKyAgICAgICAgICAg
ICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjQ1LCAwLjMpLAorICAg
ICAgICAgICAgICAgICAgICBib3R0b21SaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuNTUs
IDAuNCksCisgICAgICAgICAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFk
T25seSgwLjQsIDAuNTUpLAorICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIF0sCiAgICAg
ICAgIH0sCiAgICAgICAgIHsKLSAgICAgICAgICAgIHRleHQ6ICJ0aHJlZSIsCi0gICAgICAgICAg
ICB0b3BMZWZ0OiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjUsIDAuNjUpLAotICAgICAgICAgICAg
dG9wUmlnaHQ6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuNjUsIDAuNSksCi0gICAgICAgICAgICBi
b3R0b21SaWdodDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC43NSwgMC42KSwKLSAgICAgICAgICAg
IGJvdHRvbUxlZnQ6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuNiwgMC43NSkKKyAgICAgICAgICAg
IHRvcExlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjUsIDAuNjUpLAorICAgICAgICAgICAg
dG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjY1LCAwLjUpLAorICAgICAgICAgICAg
Ym90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjc1LCAwLjYpLAorICAgICAgICAg
ICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuNiwgMC43NSksCisgICAgICAg
ICAgICBjaGlsZHJlbjogWworICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAg
dGV4dCA6ICJ0aHJlZSIsCisgICAgICAgICAgICAgICAgICAgIHRvcExlZnQgOiBuZXcgRE9NUG9p
bnRSZWFkT25seSgwLjUsIDAuNjUpLAorICAgICAgICAgICAgICAgICAgICB0b3BSaWdodCA6IG5l
dyBET01Qb2ludFJlYWRPbmx5KDAuNjUsIDAuNSksCisgICAgICAgICAgICAgICAgICAgIGJvdHRv
bVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC43NSwgMC42KSwKKyAgICAgICAgICAgICAg
ICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuNiwgMC43NSksCisgICAg
ICAgICAgICAgICAgfQorICAgICAgICAgICAgXSwKICAgICAgICAgfSwKICAgICAgICAgewotICAg
ICAgICAgICAgdGV4dDogImZvdXIiLAotICAgICAgICAgICAgdG9wTGVmdDogbmV3IERPTVBvaW50
UmVhZE9ubHkoMC43LCAwLjg1KSwKLSAgICAgICAgICAgIHRvcFJpZ2h0OiBuZXcgRE9NUG9pbnRS
ZWFkT25seSgwLjg1LCAwLjcpLAotICAgICAgICAgICAgYm90dG9tUmlnaHQ6IG5ldyBET01Qb2lu
dFJlYWRPbmx5KDAuOTUsIDAuOCksCi0gICAgICAgICAgICBib3R0b21MZWZ0OiBuZXcgRE9NUG9p
bnRSZWFkT25seSgwLjgsIDAuOTUpCisgICAgICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50
UmVhZE9ubHkoMC43LCAwLjg1KSwKKyAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBvaW50
UmVhZE9ubHkoMC44NSwgMC43KSwKKyAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBv
aW50UmVhZE9ubHkoMC45NSwgMC44KSwKKyAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9N
UG9pbnRSZWFkT25seSgwLjgsIDAuOTUpLAorICAgICAgICAgICAgY2hpbGRyZW46IFsKKyAgICAg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHRleHQgOiAiZm91ciIsCisgICAgICAg
ICAgICAgICAgICAgIHRvcExlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjcsIDAuODUpLAor
ICAgICAgICAgICAgICAgICAgICB0b3BSaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuODUs
IDAuNyksCisgICAgICAgICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVh
ZE9ubHkoMC45NSwgMC44KSwKKyAgICAgICAgICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBE
T01Qb2ludFJlYWRPbmx5KDAuOCwgMC45NSksCisgICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICAgXSwKICAgICAgICAgfQogICAgIF0pOwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL21hYy9jb3B5LWltYWdlLW92ZXJsYXktdGV4dC13aXRo
LWNvbnRleHQtbWVudS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFj
dGlvbi9tYWMvY29weS1pbWFnZS1vdmVybGF5LXRleHQtd2l0aC1jb250ZXh0LW1lbnUuaHRtbApp
bmRleCA0MDUyOWVjNDU4ZjE1NDA4MjBjZjM2YzVlY2QwOTRiZTU2NjI2MzNiLi40YjFmZDgxZTIz
YTFlMjNjZGYzMTAyZWUzODc5OGMxMzIzZjM0OGQyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9m
YXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL21hYy9jb3B5LWltYWdlLW92ZXJsYXktdGV4dC13
aXRoLWNvbnRleHQtbWVudS5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdl
LWV4dHJhY3Rpb24vbWFjL2NvcHktaW1hZ2Utb3ZlcmxheS10ZXh0LXdpdGgtY29udGV4dC1tZW51
Lmh0bWwKQEAgLTIwLDEzICsyMCwyMyBAQCBkaXZbY29udGVudGVkaXRhYmxlXSB7CiA8c2NyaXB0
PgogYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsICgpID0+IHsKICAgICBsZXQgaW1hZ2UgPSBkb2N1
bWVudC5xdWVyeVNlbGVjdG9yKCJpbWciKTsKLSAgICBpbnRlcm5hbHMuaW5zdGFsbEltYWdlT3Zl
cmxheShpbWFnZSwgW3sKLSAgICAgICAgdGV4dCA6ICJmb29iYXIiLAotICAgICAgICB0b3BMZWZ0
IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMCksCi0gICAgICAgIHRvcFJpZ2h0IDogbmV3IERP
TVBvaW50UmVhZE9ubHkoMSwgMCksCi0gICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50
UmVhZE9ubHkoMSwgMC41KSwKLSAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRP
bmx5KDAsIDAuNSksCi0gICAgfV0pOworICAgIGludGVybmFscy5pbnN0YWxsSW1hZ2VPdmVybGF5
KGltYWdlLCBbCisgICAgICAgIHsKKyAgICAgICAgICAgIHRvcExlZnQgOiBuZXcgRE9NUG9pbnRS
ZWFkT25seSgwLCAwKSwKKyAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9u
bHkoMSwgMCksCisgICAgICAgICAgICBib3R0b21SaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5
KDEsIDAuNSksCisgICAgICAgICAgICBib3R0b21MZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHko
MCwgMC41KSwKKyAgICAgICAgICAgIGNoaWxkcmVuOiBbCisgICAgICAgICAgICAgICAgeworICAg
ICAgICAgICAgICAgICAgICB0ZXh0IDogImZvb2JhciIsCisgICAgICAgICAgICAgICAgICAgIHRv
cExlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwKSwKKyAgICAgICAgICAgICAgICAgICAg
dG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwKSwKKyAgICAgICAgICAgICAgICAg
ICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwLjUpLAorICAgICAgICAg
ICAgICAgICAgICBib3R0b21MZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMC41KSwKKyAg
ICAgICAgICAgICAgICB9CisgICAgICAgICAgICBdCisgICAgICAgIH0KKyAgICBdKTsKIAogICAg
IGV2ZW50U2VuZGVyLm1vdXNlTW92ZVRvKDUwLCAxNTApOwogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL21hYy9zZWxlY3QtaW1hZ2Utb3Zlcmxh
eS1pbi1saW5rLXdpdGgtbW91c2UtZHJhZy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMv
aW1hZ2UtZXh0cmFjdGlvbi9tYWMvc2VsZWN0LWltYWdlLW92ZXJsYXktaW4tbGluay13aXRoLW1v
dXNlLWRyYWcuaHRtbAppbmRleCBkODc3MjRhYTg2Y2FlMDA5NWZkN2ViMjU1MzUzNTA5NGFmNDk1
YjU0Li45YTRlZGM4OTA0YWExN2I4ODc4NWIyNzg3YzQ0YTczOTE3MTczNjc2IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL21hYy9zZWxlY3QtaW1h
Z2Utb3ZlcmxheS1pbi1saW5rLXdpdGgtbW91c2UtZHJhZy5odG1sCisrKyBiL0xheW91dFRlc3Rz
L2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vbWFjL3NlbGVjdC1pbWFnZS1vdmVybGF5LWlu
LWxpbmstd2l0aC1tb3VzZS1kcmFnLmh0bWwKQEAgLTE3LDEzICsxNywyMyBAQCBpbWcgewogPHNj
cmlwdD4KIGFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCAoKSA9PiB7CiAgICAgbGV0IGltYWdlID0g
ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaW1nIik7Ci0gICAgaW50ZXJuYWxzLmluc3RhbGxJbWFn
ZU92ZXJsYXkoaW1hZ2UsIFt7Ci0gICAgICAgIHRleHQgOiAiaGVsbG8iLAotICAgICAgICB0b3BM
ZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMC41KSwKLSAgICAgICAgdG9wUmlnaHQgOiBu
ZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwLjUpLAotICAgICAgICBib3R0b21SaWdodCA6IG5ldyBE
T01Qb2ludFJlYWRPbmx5KDEsIDEpLAotICAgICAgICBib3R0b21MZWZ0IDogbmV3IERPTVBvaW50
UmVhZE9ubHkoMCwgMSksCi0gICAgfV0pOworICAgIGludGVybmFscy5pbnN0YWxsSW1hZ2VPdmVy
bGF5KGltYWdlLCBbCisgICAgICAgIHsKKyAgICAgICAgICAgIHRvcExlZnQgOiBuZXcgRE9NUG9p
bnRSZWFkT25seSgwLCAwLjUpLAorICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRS
ZWFkT25seSgxLCAwLjUpLAorICAgICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRS
ZWFkT25seSgxLCAxKSwKKyAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFk
T25seSgwLCAxKSwKKyAgICAgICAgICAgIGNoaWxkcmVuOiBbCisgICAgICAgICAgICAgICAgewor
ICAgICAgICAgICAgICAgICAgICB0ZXh0IDogImhlbGxvIiwKKyAgICAgICAgICAgICAgICAgICAg
dG9wTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDAuNSksCisgICAgICAgICAgICAgICAg
ICAgIHRvcFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwKKyAgICAgICAgICAg
ICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAxKSwKKyAgICAg
ICAgICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDEpLAor
ICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIF0KKyAgICAgICAgfQorICAgIF0pOwogCiAg
ICAgaW1hZ2UuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCBldmVudCA9PiB7CiAgICAgICAgIHRl
c3RGYWlsZWQoIk9ic2VydmVkIGNsaWNrLiIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9tYWMvc2VsZWN0LWltYWdlLW92ZXJsYXktd2l0aC1t
b3VzZS1kcmFnLWRvZXMtbm90LWZpcmUtY2xpY2suaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvaW1h
Z2VzL2ltYWdlLWV4dHJhY3Rpb24vbWFjL3NlbGVjdC1pbWFnZS1vdmVybGF5LXdpdGgtbW91c2Ut
ZHJhZy1kb2VzLW5vdC1maXJlLWNsaWNrLmh0bWwKaW5kZXggY2MyYTgyOWU0ZDU5MzQ4ZGZjOTU1
YjY1ZDE0MTc3MGRkZTcxODgxMi4uYTE4NzNjOTgxOTIzMjNjMzExMDMyMGNiZDNlZWJlOGYwZjMy
YmEyMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlv
bi9tYWMvc2VsZWN0LWltYWdlLW92ZXJsYXktd2l0aC1tb3VzZS1kcmFnLWRvZXMtbm90LWZpcmUt
Y2xpY2suaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9u
L21hYy9zZWxlY3QtaW1hZ2Utb3ZlcmxheS13aXRoLW1vdXNlLWRyYWctZG9lcy1ub3QtZmlyZS1j
bGljay5odG1sCkBAIC0xNSwxMyArMTUsMjMgQEAgaW1nIHsKIDxzY3JpcHQ+CiBhZGRFdmVudExp
c3RlbmVyKCJsb2FkIiwgKCkgPT4gewogICAgIGxldCBpbWFnZSA9IGRvY3VtZW50LnF1ZXJ5U2Vs
ZWN0b3IoImltZyIpOwotICAgIGludGVybmFscy5pbnN0YWxsSW1hZ2VPdmVybGF5KGltYWdlLCBb
ewotICAgICAgICB0ZXh0IDogImhlbGxvIiwKLSAgICAgICAgdG9wTGVmdCA6IG5ldyBET01Qb2lu
dFJlYWRPbmx5KDAsIDAuNSksCi0gICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9u
bHkoMSwgMC41KSwKLSAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgx
LCAxKSwKLSAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDEpLAot
ICAgIH1dKTsKKyAgICBpbnRlcm5hbHMuaW5zdGFsbEltYWdlT3ZlcmxheShpbWFnZSwgWworICAg
ICAgICB7CisgICAgICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMC41
KSwKKyAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwK
KyAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMSksCisg
ICAgICAgICAgICBib3R0b21MZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMSksCisgICAg
ICAgICAgICBjaGlsZHJlbjogWworICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAg
ICAgdGV4dCA6ICJoZWxsbyIsCisgICAgICAgICAgICAgICAgICAgIHRvcExlZnQgOiBuZXcgRE9N
UG9pbnRSZWFkT25seSgwLCAwLjUpLAorICAgICAgICAgICAgICAgICAgICB0b3BSaWdodCA6IG5l
dyBET01Qb2ludFJlYWRPbmx5KDEsIDAuNSksCisgICAgICAgICAgICAgICAgICAgIGJvdHRvbVJp
Z2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMSksCisgICAgICAgICAgICAgICAgICAgIGJv
dHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAxKSwKKyAgICAgICAgICAgICAgICB9
CisgICAgICAgICAgICBdCisgICAgICAgIH0KKyAgICBdKTsKIAogICAgIGltYWdlLmFkZEV2ZW50
TGlzdGVuZXIoImNsaWNrIiwgZXZlbnQgPT4gewogICAgICAgICB0ZXN0RmFpbGVkKCJPYnNlcnZl
ZCBjbGljay4iKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4
dHJhY3Rpb24vbWFjL3NlbGVjdC1pbWFnZS1vdmVybGF5LXdpdGgtbW91c2UtZHJhZy5odG1sIGIv
TGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9tYWMvc2VsZWN0LWltYWdl
LW92ZXJsYXktd2l0aC1tb3VzZS1kcmFnLmh0bWwKaW5kZXggMTJiMzYwYTk4YjlkYTVkNzViZWRl
ZmY1ZDIzMjVhYzM2OTBkYTYxMy4uMjU0YzM2MDZhZDQ5Y2FiNDY1NGY4OGFlOWVmMTRhODNhMmE5
ZWZiNyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlv
bi9tYWMvc2VsZWN0LWltYWdlLW92ZXJsYXktd2l0aC1tb3VzZS1kcmFnLmh0bWwKKysrIGIvTGF5
b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9tYWMvc2VsZWN0LWltYWdlLW92
ZXJsYXktd2l0aC1tb3VzZS1kcmFnLmh0bWwKQEAgLTE0LDEzICsxNCwyMyBAQCBpbWcgewogPHNj
cmlwdD4KIGFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCAoKSA9PiB7CiAgICAgbGV0IGltYWdlID0g
ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaW1nIik7Ci0gICAgaW50ZXJuYWxzLmluc3RhbGxJbWFn
ZU92ZXJsYXkoaW1hZ2UsIFt7Ci0gICAgICAgIHRleHQgOiAiaGVsbG8iLAotICAgICAgICB0b3BM
ZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMC41KSwKLSAgICAgICAgdG9wUmlnaHQgOiBu
ZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwLjUpLAotICAgICAgICBib3R0b21SaWdodCA6IG5ldyBE
T01Qb2ludFJlYWRPbmx5KDEsIDEpLAotICAgICAgICBib3R0b21MZWZ0IDogbmV3IERPTVBvaW50
UmVhZE9ubHkoMCwgMSksCi0gICAgfV0pOworICAgIGludGVybmFscy5pbnN0YWxsSW1hZ2VPdmVy
bGF5KGltYWdlLCBbCisgICAgICAgIHsKKyAgICAgICAgICAgIHRvcExlZnQgOiBuZXcgRE9NUG9p
bnRSZWFkT25seSgwLCAwLjUpLAorICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRS
ZWFkT25seSgxLCAwLjUpLAorICAgICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRS
ZWFkT25seSgxLCAxKSwKKyAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFk
T25seSgwLCAxKSwKKyAgICAgICAgICAgIGNoaWxkcmVuOiBbCisgICAgICAgICAgICAgICAgewor
ICAgICAgICAgICAgICAgICAgICB0ZXh0IDogImhlbGxvIiwKKyAgICAgICAgICAgICAgICAgICAg
dG9wTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDAuNSksCisgICAgICAgICAgICAgICAg
ICAgIHRvcFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwKKyAgICAgICAgICAg
ICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAxKSwKKyAgICAg
ICAgICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDEpLAor
ICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIF0KKyAgICAgICAgfQorICAgIF0pOwogCiAg
ICAgZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8oNTAsIDMwMCk7CiAgICAgZXZlbnRTZW5kZXIubW91
c2VEb3duKCk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRy
YWN0aW9uL21hYy9zZWxlY3Qtd29yZC1pbi1kcmFnZ2FibGUtaW1hZ2Utb3ZlcmxheS5odG1sIGIv
TGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9tYWMvc2VsZWN0LXdvcmQt
aW4tZHJhZ2dhYmxlLWltYWdlLW92ZXJsYXkuaHRtbAppbmRleCA4MzAzMjM4NzNkZTcwZjQ3MmRk
NThjMmY1MmEyOWVjYTg1YzNhMWMzLi43ZTNhMDExZDM4YzQxNWYxYzI3YzU3ZmIzNzQ0MTFkNTc4
MWI2ZDRlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0
aW9uL21hYy9zZWxlY3Qtd29yZC1pbi1kcmFnZ2FibGUtaW1hZ2Utb3ZlcmxheS5odG1sCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vbWFjL3NlbGVjdC13b3Jk
LWluLWRyYWdnYWJsZS1pbWFnZS1vdmVybGF5Lmh0bWwKQEAgLTE2LDExICsxNiwxOSBAQCBhZGRF
dmVudExpc3RlbmVyKCJsb2FkIiwgKCkgPT4gewogICAgIGNvbnN0IGltYWdlID0gZG9jdW1lbnQu
cXVlcnlTZWxlY3RvcigiaW1nIik7CiAgICAgaW50ZXJuYWxzLmluc3RhbGxJbWFnZU92ZXJsYXko
aW1hZ2UsIFsKICAgICAgICAgewotICAgICAgICAgICAgdGV4dCA6ICJoZWxsbyIsCiAgICAgICAg
ICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMCksCiAgICAgICAgICAgICB0
b3BSaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDApLAogICAgICAgICAgICAgYm90dG9t
UmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwLjUpLAogICAgICAgICAgICAgYm90dG9t
TGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDAuNSksCisgICAgICAgICAgICBjaGlsZHJl
bjogWworICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdGV4dCA6ICJoZWxs
byIsCisgICAgICAgICAgICAgICAgICAgIHRvcExlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgw
LCAwKSwKKyAgICAgICAgICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25s
eSgxLCAwKSwKKyAgICAgICAgICAgICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRS
ZWFkT25seSgxLCAwLjUpLAorICAgICAgICAgICAgICAgICAgICBib3R0b21MZWZ0IDogbmV3IERP
TVBvaW50UmVhZE9ubHkoMCwgMC41KSwKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICBd
CiAgICAgICAgIH0KICAgICBdKTsKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9pbWFn
ZXMvaW1hZ2UtZXh0cmFjdGlvbi9tYWMvc2VsZWN0LXdvcmQtaW4tdHJhbnNwYXJlbnQtaW1hZ2Ut
b3ZlcmxheS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9t
YWMvc2VsZWN0LXdvcmQtaW4tdHJhbnNwYXJlbnQtaW1hZ2Utb3ZlcmxheS5odG1sCmluZGV4IDhm
MmQ5MmYyMTFmZTkwNzhmODFhMTgzYTFiMDU3OGFlMTRkMjAyOTkuLjEyMTBkMmQ5N2NmMGI3ODlh
YTQ3NmFlNDQzMmYwMzg0OWFhMzE3Y2QgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvaW1h
Z2VzL2ltYWdlLWV4dHJhY3Rpb24vbWFjL3NlbGVjdC13b3JkLWluLXRyYW5zcGFyZW50LWltYWdl
LW92ZXJsYXkuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0
aW9uL21hYy9zZWxlY3Qtd29yZC1pbi10cmFuc3BhcmVudC1pbWFnZS1vdmVybGF5Lmh0bWwKQEAg
LTMyLDExICszMiwxOSBAQCBhZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgKCkgPT4gewogICAgIGxl
dCBpbWFnZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImltZyIpOwogICAgIGludGVybmFscy5p
bnN0YWxsSW1hZ2VPdmVybGF5KGltYWdlLCBbCiAgICAgICAgIHsKLSAgICAgICAgICAgIHRleHQg
OiAiaGVsbG8iLAogICAgICAgICAgICAgdG9wTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAs
IDApLAogICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwKSwK
ICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwK
ICAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwLjUpLAor
ICAgICAgICAgICAgY2hpbGRyZW46IFsKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAg
ICAgICAgIHRleHQgOiAiaGVsbG8iLAorICAgICAgICAgICAgICAgICAgICB0b3BMZWZ0IDogbmV3
IERPTVBvaW50UmVhZE9ubHkoMCwgMCksCisgICAgICAgICAgICAgICAgICAgIHRvcFJpZ2h0IDog
bmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMCksCisgICAgICAgICAgICAgICAgICAgIGJvdHRvbVJp
Z2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwKKyAgICAgICAgICAgICAgICAgICAg
Ym90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDAuNSksCisgICAgICAgICAgICAg
ICAgfQorICAgICAgICAgICAgXQogICAgICAgICB9CiAgICAgXSk7CiAK
</data>
<flag name="commit-queue"
          id="447493"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>427017</attachid>
            <date>2021-04-25 18:09:15 -0700</date>
            <delta_ts>2021-04-26 17:01:53 -0700</delta_ts>
            <desc>Fix non-internal builds</desc>
            <filename>bug-225038-20210425180914.patch</filename>
            <type>text/plain</type>
            <size>50158</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc2NDgwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTM5ZTg2MTQwNjAwYTE4
NzJhNTQ3MzZkZDRlNWZiYTMyMjFiOWQwYi4uNzcyYWJlNGE1ZDg1NDE3MjIwZjA3ZmJlOWNlZDQy
YmYwOGI4NTdlNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDYxIEBACisyMDIxLTA0LTI1ICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIFN1YmRpdmlkZSBp
bWFnZSBvdmVybGF5IHRleHQgaW50byBvbmUgb3IgbW9yZSBlbGVtZW50cyBwZXIgbGluZQorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1MDM4CisgICAg
ICAgIHJkYXI6Ly83NTUwNTA0MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFJlZmFjdG9yIHNvbWUgaW1hZ2UgZXh0cmFjdGlvbiBhbmQgaW1hZ2Ugb3Zl
cmxheSBjb2RlIHRvIGFsbG93IGZvciBtdWx0aXBsZSBlbGVtZW50cyBjb250YWluaW5nIHRleHQg
cGVyIGxpbmUuCisgICAgICAgIFNlZSBjb21tZW50cyBiZWxvdyBmb3IgbW9yZSBkZXRhaWxzLgor
CisgICAgICAgIENoYW5nZXMgY292ZXJlZCBieSBhdWdtZW50aW5nIGV4aXN0aW5nIGxheW91dCB0
ZXN0cy4KKworICAgICAgICAqIGh0bWwvSFRNTEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6SFRNTEVsZW1lbnQ6OnVwZGF0ZVdpdGhJbWFnZUV4dHJhY3Rpb25SZXN1bHQpOgorCisgICAg
ICAgIFRoZSBjcnV4IG9mIHRoaXMgY2hhbmdlIGlzIGluIHRoaXMgbWV0aG9kLiBDdXJyZW50bHks
IGFuIGltYWdlIG92ZXJsYXkgaGFzIG9uZSBvciBtb3JlIGBkaXZgIGVsZW1lbnRzIHVuZGVybmVh
dGgKKyAgICAgICAgdGhlIHJvb3QgY29udGFpbmVyIGVsZW1lbnQsIGVhY2ggb2Ygd2hpY2ggcmVw
cmVzZW50cyBhIHNpbmdsZSBsaW5lIChpLmUuIGNvbnRhaW5zIGEgdGV4dCBub2RlIGFuZCBhIGxp
bmUgYnJlYWspLgorICAgICAgICBJbnN0ZWFkLCB3ZSBtYWtlIGVhY2ggb2YgdGhlc2UgbGluZSBj
b250YWluZXIgYGRpdmBzIGNvbnRhaW4gb25lIG9yIG1vcmUgYGRpdmAgZWxlbWVudHMgdGhhdCBy
ZXByZXNlbnQgZnVydGhlcgorICAgICAgICBzdWJkaXZpZGVkIHRleHQgd2l0aGluIGVhY2ggbGlu
ZS4KKworICAgICAgICBTZWUgdGhlIGNvcnJlc3BvbmRpbmcgYWRkaXRpb25zIHBhdGNoIGZvciBt
b3JlIGRldGFpbHMuCisKKyAgICAgICAgKiBodG1sL3NoYWRvdy9pbWFnZU92ZXJsYXkuY3NzOgor
ICAgICAgICAoZGl2I2ltYWdlLW92ZXJsYXkpOgorICAgICAgICAoZGl2LmltYWdlLW92ZXJsYXkt
bGluZSwgLmltYWdlLW92ZXJsYXktdGV4dCk6CisgICAgICAgICguaW1hZ2Utb3ZlcmxheS10ZXh0
OjpzZWxlY3Rpb24pOgorICAgICAgICAoZGl2LmltYWdlLW92ZXJsYXktdGV4dCk6IERlbGV0ZWQu
CisgICAgICAgIChkaXYuaW1hZ2Utb3ZlcmxheS10ZXh0OjpzZWxlY3Rpb24pOiBEZWxldGVkLgor
CisgICAgICAgIEFkanVzdCBVQSBzdHlsZXNoZWV0IHRvIGFjY291bnQgZm9yIHRoZSBjaGFuZ2Vz
IGluIGB1cGRhdGVXaXRoSW1hZ2VFeHRyYWN0aW9uUmVzdWx0YC4KKworICAgICAgICAqIHBsYXRm
b3JtL0ltYWdlRXh0cmFjdGlvblJlc3VsdC5oOgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2VFeHRy
YWN0aW9uVGV4dERhdGE6OkltYWdlRXh0cmFjdGlvblRleHREYXRhKToKKyAgICAgICAgKFdlYkNv
cmU6OkltYWdlRXh0cmFjdGlvbkxpbmVEYXRhOjpJbWFnZUV4dHJhY3Rpb25MaW5lRGF0YSk6Cisg
ICAgICAgIChXZWJDb3JlOjpJbWFnZUV4dHJhY3Rpb25MaW5lRGF0YTo6ZW5jb2RlIGNvbnN0KToK
KyAgICAgICAgKFdlYkNvcmU6OkltYWdlRXh0cmFjdGlvbkxpbmVEYXRhOjpkZWNvZGUpOgorICAg
ICAgICAoV2ViQ29yZTo6SW1hZ2VFeHRyYWN0aW9uUmVzdWx0Ojppc0VtcHR5IGNvbnN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OkltYWdlRXh0cmFjdGlvblJlc3VsdDo6ZW5jb2RlIGNvbnN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OkltYWdlRXh0cmFjdGlvblJlc3VsdDo6ZGVjb2RlKToKKworICAgICAg
ICBSZWZhY3RvciB0aGlzIGRhdGEgc3RydWN0dXJlLCBieSBzcGxpdHRpbmcgaXQgaW50byBgSW1h
Z2VFeHRyYWN0aW9uTGluZURhdGFgIGFuZCBgSW1hZ2VFeHRyYWN0aW9uVGV4dERhdGFgLgorCisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvRmxvYXRQb2ludC5oOgorICAgICAgICAoV2ViQ29y
ZTo6RmxvYXRQb2ludDo6cm90YXRlKToKKworICAgICAgICBBZGQgYSBoZWxwZXIgbWV0aG9kIHRv
IHJvdGF0ZSBhIDJEIGBGbG9hdFBvaW50YCBieSBhIGdpdmVuIGFuZ2xlLCBhYm91dCBhIGdpdmVu
IHBvaW50LgorCisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6Z2V0UXVhZCk6CisgICAgICAgIChXZWJDb3JlOjptYWtlRGF0YUZvckxpbmUpOgorICAg
ICAgICAoV2ViQ29yZTo6SW50ZXJuYWxzOjppbnN0YWxsSW1hZ2VPdmVybGF5KToKKyAgICAgICAg
KiB0ZXN0aW5nL0ludGVybmFscy5oOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmlkbDoK
KworICAgICAgICBBZGp1c3QgdGhpcyBpbnRlcm5hbCB0ZXN0aW5nIGhvb2sgdG8gYWNjZXB0IGEg
bGlzdCBvZiBgSW1hZ2VPdmVybGF5TGluZWAgZGljdGlvbmFyaWVzLCBlYWNoIG9mIHdoaWNoIGNv
bnRhaW5zIGEKKyAgICAgICAgbGlzdCBvZiBgSW1hZ2VPdmVybGF5VGV4dGAgZGljdGlvbmFyaWVz
LgorCiAyMDIxLTA0LTIyICBKZWFuLVl2ZXMgQXZlbmFyZCAgPGp5YUBhcHBsZS5jb20+CiAKICAg
ICAgICAgRml4IGNvbG9yIGdhbXV0IGluIFdlYlJUQyB3aGVuIHVzaW5nIFZQeCBzb2Z0d2FyZSBk
ZWNvZGVyLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmNwcAppbmRleCA1MjRjODZjMTQ5ZmU5
MGE1ZjhhZjc4YzQ5OGEyYzAyZDAxYTU4ZjJlLi4zMmM4MDhmMThlZmU3YjY2YzUxNzZjMWRiYWRk
MzQxZTE4ZDdiODdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmNwcApAQCAtNzQsNiAr
NzQsNyBAQAogI2luY2x1ZGUgIm1hcmt1cC5oIgogI2luY2x1ZGUgPHd0Zi9Jc29NYWxsb2NJbmxp
bmVzLmg+CiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CisjaW5jbHVkZSA8d3RmL1Jh
bmdlLmg+CiAjaW5jbHVkZSA8d3RmL1N0ZExpYkV4dHJhcy5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0
L0NTdHJpbmcuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+CkBAIC0xMzM1
LDM5ICsxMzM2LDEwNyBAQCB2b2lkIEhUTUxFbGVtZW50Ojp1cGRhdGVXaXRoSW1hZ2VFeHRyYWN0
aW9uUmVzdWx0KEltYWdlRXh0cmFjdGlvblJlc3VsdCYmIHJlc3VsdAogICAgIGlmIChkb2N1bWVu
dCgpLnF1aXJrcygpLm5lZWRzVG9Gb3JjZVVzZXJTZWxlY3RXaGVuSW5zdGFsbGluZ0ltYWdlT3Zl
cmxheSgpKQogICAgICAgICBzZXRJbmxpbmVTdHlsZVByb3BlcnR5KENTU1Byb3BlcnR5V2Via2l0
VXNlclNlbGVjdCwgQ1NTVmFsdWVUZXh0KTsKIAorICAgIHN0YXRpYyBNYWluVGhyZWFkTmV2ZXJE
ZXN0cm95ZWQ8Y29uc3QgQXRvbVN0cmluZz4gaW1hZ2VPdmVybGF5TGluZUNsYXNzKCJpbWFnZS1v
dmVybGF5LWxpbmUiLCBBdG9tU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCk7CiAgICAgc3Rh
dGljIE1haW5UaHJlYWROZXZlckRlc3Ryb3llZDxjb25zdCBBdG9tU3RyaW5nPiBpbWFnZU92ZXJs
YXlUZXh0Q2xhc3MoImltYWdlLW92ZXJsYXktdGV4dCIsIEF0b21TdHJpbmc6OkNvbnN0cnVjdEZy
b21MaXRlcmFsKTsKIAogICAgIEludFNpemUgY29udGFpbmVyU2l6ZSB7IG9mZnNldFdpZHRoKCks
IG9mZnNldEhlaWdodCgpIH07Ci0gICAgZm9yIChhdXRvJiBkYXRhIDogcmVzdWx0LnRleHREYXRh
KSB7Ci0gICAgICAgIGF1dG8gY2hpbGQgPSBIVE1MRGl2RWxlbWVudDo6Y3JlYXRlKGRvY3VtZW50
KCkpOwotICAgICAgICBjaGlsZC0+Y2xhc3NMaXN0KCkuYWRkKGltYWdlT3ZlcmxheVRleHRDbGFz
cyk7CisgICAgZm9yIChhdXRvJiBsaW5lIDogcmVzdWx0LmxpbmVzKSB7CisgICAgICAgIGF1dG8g
bGluZVF1YWQgPSBsaW5lLm5vcm1hbGl6ZWRRdWFkOworICAgICAgICBsaW5lUXVhZC5zY2FsZShj
b250YWluZXJTaXplLndpZHRoKCksIGNvbnRhaW5lclNpemUuaGVpZ2h0KCkpOwogCi0gICAgICAg
IGNvbnRhaW5lci0+YXBwZW5kQ2hpbGQoY2hpbGQpOwotICAgICAgICBjaGlsZC0+YXBwZW5kQ2hp
bGQoVGV4dDo6Y3JlYXRlKGRvY3VtZW50KCksIG1ha2VTdHJpbmcoJ1xuJywgZGF0YS50ZXh0KSkp
OwotICAgICAgICBjaGlsZC0+YXBwZW5kQ2hpbGQoSFRNTEJSRWxlbWVudDo6Y3JlYXRlKGRvY3Vt
ZW50KCkpKTsKLQotICAgICAgICBJbnRTaXplIG9yaWdpbmFsU2l6ZSB7IGNoaWxkLT5vZmZzZXRX
aWR0aCgpLCBjaGlsZC0+b2Zmc2V0SGVpZ2h0KCkgfTsKLSAgICAgICAgaWYgKG9yaWdpbmFsU2l6
ZS5pc0VtcHR5KCkpCisgICAgICAgIGlmIChsaW5lUXVhZC5pc0VtcHR5KCkpCiAgICAgICAgICAg
ICBjb250aW51ZTsKIAotICAgICAgICBhdXRvIHRhcmdldFF1YWQgPSBkYXRhLm5vcm1hbGl6ZWRR
dWFkOwotICAgICAgICB0YXJnZXRRdWFkLnNjYWxlKGNvbnRhaW5lclNpemUud2lkdGgoKSwgY29u
dGFpbmVyU2l6ZS5oZWlnaHQoKSk7CisgICAgICAgIGF1dG8gbGluZUNvbnRhaW5lciA9IEhUTUxE
aXZFbGVtZW50OjpjcmVhdGUoZG9jdW1lbnQoKSk7CisgICAgICAgIGxpbmVDb250YWluZXItPmNs
YXNzTGlzdCgpLmFkZChpbWFnZU92ZXJsYXlMaW5lQ2xhc3MpOworICAgICAgICBjb250YWluZXIt
PmFwcGVuZENoaWxkKGxpbmVDb250YWluZXIpOworCisgICAgICAgIGF1dG8gbGluZUJvdW5kcyA9
IHJvdGF0ZWRCb3VuZGluZ1JlY3QobGluZVF1YWQsIDAuMDEpOworICAgICAgICBsaW5lQ29udGFp
bmVyLT5zZXRJbmxpbmVTdHlsZVByb3BlcnR5KENTU1Byb3BlcnR5V2lkdGgsIGxpbmVCb3VuZHMu
c2l6ZS53aWR0aCgpLCBDU1NVbml0VHlwZTo6Q1NTX1BYKTsKKyAgICAgICAgbGluZUNvbnRhaW5l
ci0+c2V0SW5saW5lU3R5bGVQcm9wZXJ0eShDU1NQcm9wZXJ0eUhlaWdodCwgbGluZUJvdW5kcy5z
aXplLmhlaWdodCgpLCBDU1NVbml0VHlwZTo6Q1NTX1BYKTsKKyAgICAgICAgbGluZUNvbnRhaW5l
ci0+c2V0SW5saW5lU3R5bGVQcm9wZXJ0eShDU1NQcm9wZXJ0eVRyYW5zZm9ybSwgbWFrZVN0cmlu
ZygKKyAgICAgICAgICAgICJ0cmFuc2xhdGUoIl9zLAorICAgICAgICAgICAgc3RkOjpyb3VuZChs
aW5lQm91bmRzLmNlbnRlci54KCkgLSBsaW5lQm91bmRzLnNpemUud2lkdGgoKSAvIDIpLCAicHgs
ICJfcywKKyAgICAgICAgICAgIHN0ZDo6cm91bmQobGluZUJvdW5kcy5jZW50ZXIueSgpIC0gbGlu
ZUJvdW5kcy5zaXplLmhlaWdodCgpIC8gMiksICJweCkgIl9zLAorICAgICAgICAgICAgbGluZUJv
dW5kcy5hbmdsZUluUmFkaWFucyA/IG1ha2VTdHJpbmcoInJvdGF0ZSgiLCBsaW5lQm91bmRzLmFu
Z2xlSW5SYWRpYW5zLCAicmFkKSAiX3MpIDogZW1wdHlTdHJpbmcoKQorICAgICAgICApKTsKIAot
ICAgICAgICBhdXRvIHJvdGF0ZWRSZWN0ID0gcm90YXRlZEJvdW5kaW5nUmVjdCh0YXJnZXRRdWFk
LCAwLjAxKTsKLSAgICAgICAgYXV0byBzY2FsZSA9IHJvdGF0ZWRSZWN0LnNpemUgLyBvcmlnaW5h
bFNpemU7Ci0gICAgICAgIFN0cmluZyByb3RhdGlvblRyYW5zZm9ybWF0aW9uQXNUZXh0OwotICAg
ICAgICBpZiAocm90YXRlZFJlY3QuYW5nbGVJblJhZGlhbnMpCi0gICAgICAgICAgICByb3RhdGlv
blRyYW5zZm9ybWF0aW9uQXNUZXh0ID0gbWFrZVN0cmluZygicm90YXRlKCIsIHJvdGF0ZWRSZWN0
LmFuZ2xlSW5SYWRpYW5zLCAicmFkKSAiX3MpOworICAgICAgICBhdXRvIG9mZnNldEFsb25nSG9y
aXpvbnRhbEF4aXMgPSBbJl0oY29uc3QgRmxvYXRQb2ludCYgcXVhZFBvaW50MSwgY29uc3QgRmxv
YXRQb2ludCYgcXVhZFBvaW50MikgeworICAgICAgICAgICAgYXV0byBpbnRlcnZhbExlbmd0aCA9
IGxpbmVCb3VuZHMuc2l6ZS53aWR0aCgpOworICAgICAgICAgICAgYXV0byBtaWQgPSBtaWRQb2lu
dChxdWFkUG9pbnQxLCBxdWFkUG9pbnQyKTsKKyAgICAgICAgICAgIG1pZC5tb3ZlQnkoLWxpbmVC
b3VuZHMuY2VudGVyKTsKKyAgICAgICAgICAgIG1pZC5yb3RhdGUoLWxpbmVCb3VuZHMuYW5nbGVJ
blJhZGlhbnMpOworICAgICAgICAgICAgcmV0dXJuIGludGVydmFsTGVuZ3RoICogY2xhbXBUbzxm
bG9hdD4oMC41ICsgbWlkLngoKSAvIGludGVydmFsTGVuZ3RoLCAwLCAxKTsKKyAgICAgICAgfTsK
KworICAgICAgICBhdXRvIG9mZnNldHNBbG9uZ0hvcml6b250YWxBeGlzID0gbGluZS5jaGlsZHJl
bi5tYXAoWyZdKGF1dG8mIGNoaWxkKSAtPiBXVEY6OlJhbmdlPGZsb2F0PiB7CisgICAgICAgICAg
ICBhdXRvIHRleHRRdWFkID0gY2hpbGQubm9ybWFsaXplZFF1YWQ7CisgICAgICAgICAgICB0ZXh0
UXVhZC5zY2FsZShjb250YWluZXJTaXplLndpZHRoKCksIGNvbnRhaW5lclNpemUuaGVpZ2h0KCkp
OworICAgICAgICAgICAgcmV0dXJuIHsKKyAgICAgICAgICAgICAgICBvZmZzZXRBbG9uZ0hvcml6
b250YWxBeGlzKHRleHRRdWFkLnAxKCksIHRleHRRdWFkLnA0KCkpLAorICAgICAgICAgICAgICAg
IG9mZnNldEFsb25nSG9yaXpvbnRhbEF4aXModGV4dFF1YWQucDIoKSwgdGV4dFF1YWQucDMoKSkK
KyAgICAgICAgICAgIH07CisgICAgICAgIH0pOworCisgICAgICAgIGZvciAoc2l6ZV90IGNoaWxk
SW5kZXggPSAwOyBjaGlsZEluZGV4IDwgbGluZS5jaGlsZHJlbi5zaXplKCk7ICsrY2hpbGRJbmRl
eCkgeworICAgICAgICAgICAgYXV0byYgY2hpbGQgPSBsaW5lLmNoaWxkcmVuW2NoaWxkSW5kZXhd
OworICAgICAgICAgICAgaWYgKGNoaWxkLm5vcm1hbGl6ZWRRdWFkLmlzRW1wdHkoKSkKKyAgICAg
ICAgICAgICAgICBjb250aW51ZTsKIAotICAgICAgICBhdXRvIG9mZnNldCA9IHJvdW5kZWRJbnRQ
b2ludChyb3RhdGVkUmVjdC5jZW50ZXIgLSAob3JpZ2luYWxTaXplIC8gMikpOwotICAgICAgICBj
aGlsZC0+c2V0SW5saW5lU3R5bGVQcm9wZXJ0eShDU1NQcm9wZXJ0eVRyYW5zZm9ybSwgbWFrZVN0
cmluZygKLSAgICAgICAgICAgICJ0cmFuc2xhdGUoIl9zLCBvZmZzZXQueCgpLCAicHgsICJfcywg
b2Zmc2V0LnkoKSwgInB4KSAiX3MsCi0gICAgICAgICAgICByb3RhdGlvblRyYW5zZm9ybWF0aW9u
QXNUZXh0LAotICAgICAgICAgICAgInNjYWxlKCJfcywgc2NhbGUud2lkdGgoKSwgIiwgIl9zLCBz
Y2FsZS5oZWlnaHQoKSwgIikgIl9zCi0gICAgICAgICkpOworICAgICAgICAgICAgY29uc3RleHBy
IGZsb2F0IGhvcml6b250YWxNYXJnaW5Ub01pbmltaXplU2VsZWN0aW9uR2FwcyA9IDAuMTI1Owor
ICAgICAgICAgICAgZmxvYXQgaG9yaXpvbnRhbE9mZnNldCA9IC1ob3Jpem9udGFsTWFyZ2luVG9N
aW5pbWl6ZVNlbGVjdGlvbkdhcHM7CisgICAgICAgICAgICBmbG9hdCBob3Jpem9udGFsRXh0ZW50
ID0gaG9yaXpvbnRhbE1hcmdpblRvTWluaW1pemVTZWxlY3Rpb25HYXBzOworCisgICAgICAgICAg
ICBpZiAobGluZS5jaGlsZHJlbi5zaXplKCkgPT0gMSkgeworICAgICAgICAgICAgICAgIGhvcml6
b250YWxPZmZzZXQgKz0gb2Zmc2V0c0Fsb25nSG9yaXpvbnRhbEF4aXNbY2hpbGRJbmRleF0uYmVn
aW4oKTsKKyAgICAgICAgICAgICAgICBob3Jpem9udGFsRXh0ZW50ICs9IG9mZnNldHNBbG9uZ0hv
cml6b250YWxBeGlzW2NoaWxkSW5kZXhdLmVuZCgpOworICAgICAgICAgICAgfSBlbHNlIGlmICgh
Y2hpbGRJbmRleCkgeworICAgICAgICAgICAgICAgIGhvcml6b250YWxPZmZzZXQgKz0gb2Zmc2V0
c0Fsb25nSG9yaXpvbnRhbEF4aXNbY2hpbGRJbmRleF0uYmVnaW4oKTsKKyAgICAgICAgICAgICAg
ICBob3Jpem9udGFsRXh0ZW50ICs9IChvZmZzZXRzQWxvbmdIb3Jpem9udGFsQXhpc1tjaGlsZElu
ZGV4XS5lbmQoKSArIG9mZnNldHNBbG9uZ0hvcml6b250YWxBeGlzW2NoaWxkSW5kZXggKyAxXS5i
ZWdpbigpKSAvIDI7CisgICAgICAgICAgICB9IGVsc2UgaWYgKGNoaWxkSW5kZXggPT0gbGluZS5j
aGlsZHJlbi5zaXplKCkgLSAxKSB7CisgICAgICAgICAgICAgICAgaG9yaXpvbnRhbE9mZnNldCAr
PSAob2Zmc2V0c0Fsb25nSG9yaXpvbnRhbEF4aXNbY2hpbGRJbmRleCAtIDFdLmVuZCgpICsgb2Zm
c2V0c0Fsb25nSG9yaXpvbnRhbEF4aXNbY2hpbGRJbmRleF0uYmVnaW4oKSkgLyAyOworICAgICAg
ICAgICAgICAgIGhvcml6b250YWxFeHRlbnQgKz0gb2Zmc2V0c0Fsb25nSG9yaXpvbnRhbEF4aXNb
Y2hpbGRJbmRleF0uZW5kKCk7CisgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAg
IGhvcml6b250YWxPZmZzZXQgKz0gKG9mZnNldHNBbG9uZ0hvcml6b250YWxBeGlzW2NoaWxkSW5k
ZXggLSAxXS5lbmQoKSArIG9mZnNldHNBbG9uZ0hvcml6b250YWxBeGlzW2NoaWxkSW5kZXhdLmJl
Z2luKCkpIC8gMjsKKyAgICAgICAgICAgICAgICBob3Jpem9udGFsRXh0ZW50ICs9IChvZmZzZXRz
QWxvbmdIb3Jpem9udGFsQXhpc1tjaGlsZEluZGV4XS5lbmQoKSArIG9mZnNldHNBbG9uZ0hvcml6
b250YWxBeGlzW2NoaWxkSW5kZXggKyAxXS5iZWdpbigpKSAvIDI7CisgICAgICAgICAgICB9CisK
KyAgICAgICAgICAgIEZsb2F0U2l6ZSB0YXJnZXRTaXplIHsgaG9yaXpvbnRhbEV4dGVudCAtIGhv
cml6b250YWxPZmZzZXQsIGxpbmVCb3VuZHMuc2l6ZS5oZWlnaHQoKSB9OworICAgICAgICAgICAg
aWYgKHRhcmdldFNpemUuaXNFbXB0eSgpKQorICAgICAgICAgICAgICAgIGNvbnRpbnVlOworCisg
ICAgICAgICAgICBhdXRvIHRleHRDb250YWluZXIgPSBIVE1MRGl2RWxlbWVudDo6Y3JlYXRlKGRv
Y3VtZW50KCkpOworICAgICAgICAgICAgdGV4dENvbnRhaW5lci0+Y2xhc3NMaXN0KCkuYWRkKGlt
YWdlT3ZlcmxheVRleHRDbGFzcyk7CisgICAgICAgICAgICBsaW5lQ29udGFpbmVyLT5hcHBlbmRD
aGlsZCh0ZXh0Q29udGFpbmVyKTsKKyAgICAgICAgICAgIHRleHRDb250YWluZXItPmFwcGVuZENo
aWxkKFRleHQ6OmNyZWF0ZShkb2N1bWVudCgpLCBtYWtlU3RyaW5nKCdcbicsIGNoaWxkLnRleHQp
KSk7CisKKyAgICAgICAgICAgIGRvY3VtZW50KCkudXBkYXRlTGF5b3V0SWZEaW1lbnNpb25zT3V0
T2ZEYXRlKHRleHRDb250YWluZXIpOworCisgICAgICAgICAgICBGbG9hdFNpemUgc2l6ZUJlZm9y
ZVRyYW5zZm9ybTsKKyAgICAgICAgICAgIGlmIChhdXRvKiByZW5kZXJlciA9IHRleHRDb250YWlu
ZXItPnJlbmRlckJveE1vZGVsT2JqZWN0KCkpIHsKKyAgICAgICAgICAgICAgICBzaXplQmVmb3Jl
VHJhbnNmb3JtID0geworICAgICAgICAgICAgICAgICAgICBhZGp1c3RMYXlvdXRVbml0Rm9yQWJz
b2x1dGVab29tKHJlbmRlcmVyLT5vZmZzZXRXaWR0aCgpLCAqcmVuZGVyZXIpLnRvRmxvYXQoKSwK
KyAgICAgICAgICAgICAgICAgICAgYWRqdXN0TGF5b3V0VW5pdEZvckFic29sdXRlWm9vbShyZW5k
ZXJlci0+b2Zmc2V0SGVpZ2h0KCksICpyZW5kZXJlcikudG9GbG9hdCgpCisgICAgICAgICAgICAg
ICAgfTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgaWYgKHNpemVCZWZvcmVUcmFuc2Zv
cm0uaXNFbXB0eSgpKSB7CisgICAgICAgICAgICAgICAgdGV4dENvbnRhaW5lci0+cmVtb3ZlKCk7
CisgICAgICAgICAgICAgICAgY29udGludWU7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAg
IHRleHRDb250YWluZXItPnNldElubGluZVN0eWxlUHJvcGVydHkoQ1NTUHJvcGVydHlUcmFuc2Zv
cm0sIG1ha2VTdHJpbmcoCisgICAgICAgICAgICAgICAgInRyYW5zbGF0ZSgiX3MsCisgICAgICAg
ICAgICAgICAgaG9yaXpvbnRhbE9mZnNldCArICh0YXJnZXRTaXplLndpZHRoKCkgLSBzaXplQmVm
b3JlVHJhbnNmb3JtLndpZHRoKCkpIC8gMiwgInB4LCAiX3MsCisgICAgICAgICAgICAgICAgKHRh
cmdldFNpemUuaGVpZ2h0KCkgLSBzaXplQmVmb3JlVHJhbnNmb3JtLmhlaWdodCgpKSAvIDIsICJw
eCkgIl9zLAorICAgICAgICAgICAgICAgICJzY2FsZSgiX3MsIHRhcmdldFNpemUud2lkdGgoKSAv
IHNpemVCZWZvcmVUcmFuc2Zvcm0ud2lkdGgoKSwgIiwgIl9zLCB0YXJnZXRTaXplLmhlaWdodCgp
IC8gc2l6ZUJlZm9yZVRyYW5zZm9ybS5oZWlnaHQoKSwgIikgIl9zCisgICAgICAgICAgICApKTsK
KyAgICAgICAgfQorCisgICAgICAgIGxpbmVDb250YWluZXItPmFwcGVuZENoaWxkKEhUTUxCUkVs
ZW1lbnQ6OmNyZWF0ZShkb2N1bWVudCgpKSk7CiAKICAgICAgICAgaWYgKGRvY3VtZW50KCkuaXNJ
bWFnZURvY3VtZW50KCkpCi0gICAgICAgICAgICBjaGlsZC0+c2V0SW5saW5lU3R5bGVQcm9wZXJ0
eShDU1NQcm9wZXJ0eUN1cnNvciwgQ1NTVmFsdWVUZXh0KTsKKyAgICAgICAgICAgIGxpbmVDb250
YWluZXItPnNldElubGluZVN0eWxlUHJvcGVydHkoQ1NTUHJvcGVydHlDdXJzb3IsIENTU1ZhbHVl
VGV4dCk7CiAgICAgfQogCiAgICAgaWYgKGF1dG8gZnJhbWUgPSBtYWtlUmVmUHRyKGRvY3VtZW50
KCkuZnJhbWUoKSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9pbWFn
ZU92ZXJsYXkuY3NzIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvaW1hZ2VPdmVybGF5LmNz
cwppbmRleCAxMGJhNDk5MjlkYjA5Zjc2NGNlODZmZWU2MmYwNDAyMmQwYTdmMjIxLi4xNTQzZTYy
NmRjYTVkMGZkNWUxM2M4MTAxNDJmNmYzMzdhZGJlMGIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL3NoYWRvdy9pbWFnZU92ZXJsYXkuY3NzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvc2hhZG93L2ltYWdlT3ZlcmxheS5jc3MKQEAgLTMwLDE2ICszMCwxNiBAQCBkaXYjaW1hZ2Ut
b3ZlcmxheSB7CiAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgIHdoaXRlLXNwYWNlOiBub3dy
YXA7CiAgICAgbGluZS1oZWlnaHQ6IDEwMCU7CisgICAgZm9udC1zaXplOiAxMDI0cHg7CiAgICAg
Zm9udC1mYW1pbHk6IHN5c3RlbS11aTsKLSAgICBmb250LXNpemU6IDE2cHg7CiB9CiAKLWRpdi5p
bWFnZS1vdmVybGF5LXRleHQgeworZGl2LmltYWdlLW92ZXJsYXktbGluZSwgLmltYWdlLW92ZXJs
YXktdGV4dCB7CiAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgIG92ZXJmbG93OiBoaWRkZW47
CiB9CiAKLWRpdi5pbWFnZS1vdmVybGF5LXRleHQ6OnNlbGVjdGlvbiB7CisuaW1hZ2Utb3Zlcmxh
eS10ZXh0OjpzZWxlY3Rpb24gewogICAgIGNvbG9yOiB0cmFuc3BhcmVudDsKICAgICBiYWNrZ3Jv
dW5kLWNvbG9yOiBoaWdobGlnaHQ7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9JbWFnZUV4dHJhY3Rpb25SZXN1bHQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0lt
YWdlRXh0cmFjdGlvblJlc3VsdC5oCmluZGV4IGRhZjNmZjk4MDc2MzU3YmRmNzYzMjEwN2ZiNWY5
MDIwNmY3OGVkYTkuLjBiNWQxMGE0NzVlYzBkMzAxNjlkYjI3ZTY0ZjAwZDNjZTM5MjY2OWMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0ltYWdlRXh0cmFjdGlvblJlc3VsdC5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0ltYWdlRXh0cmFjdGlvblJlc3VsdC5oCkBA
IC0zNCw2ICszNCwxMiBAQAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBzdHJ1Y3QgSW1hZ2VFeHRy
YWN0aW9uVGV4dERhdGEgeworICAgIEltYWdlRXh0cmFjdGlvblRleHREYXRhKGNvbnN0IFN0cmlu
ZyYgdGhlVGV4dCwgY29uc3QgRmxvYXRRdWFkJiBxdWFkKQorICAgICAgICA6IHRleHQodGhlVGV4
dCkKKyAgICAgICAgLCBub3JtYWxpemVkUXVhZChxdWFkKQorICAgIHsKKyAgICB9CisKICAgICBT
dHJpbmcgdGV4dDsKICAgICBGbG9hdFF1YWQgbm9ybWFsaXplZFF1YWQ7CiAKQEAgLTYyLDEwICs2
OCw0NSBAQCB0ZW1wbGF0ZTxjbGFzcyBEZWNvZGVyPiBPcHRpb25hbDxJbWFnZUV4dHJhY3Rpb25U
ZXh0RGF0YT4gSW1hZ2VFeHRyYWN0aW9uVGV4dERhdAogICAgIHJldHVybiB7eyBXVEZNb3ZlKCp0
ZXh0KSwgV1RGTW92ZSgqbm9ybWFsaXplZFF1YWQpIH19OwogfQogCitzdHJ1Y3QgSW1hZ2VFeHRy
YWN0aW9uTGluZURhdGEgeworICAgIEltYWdlRXh0cmFjdGlvbkxpbmVEYXRhKGNvbnN0IEZsb2F0
UXVhZCYgcXVhZCwgY29uc3QgVmVjdG9yPEltYWdlRXh0cmFjdGlvblRleHREYXRhPiYgdGhlQ2hp
bGRyZW4pCisgICAgICAgIDogbm9ybWFsaXplZFF1YWQocXVhZCkKKyAgICAgICAgLCBjaGlsZHJl
bih0aGVDaGlsZHJlbikKKyAgICB7CisgICAgfQorCisgICAgRmxvYXRRdWFkIG5vcm1hbGl6ZWRR
dWFkOworICAgIFZlY3RvcjxJbWFnZUV4dHJhY3Rpb25UZXh0RGF0YT4gY2hpbGRyZW47CisKKyAg
ICB0ZW1wbGF0ZTxjbGFzcyBFbmNvZGVyPiB2b2lkIGVuY29kZShFbmNvZGVyJikgY29uc3Q7Cisg
ICAgdGVtcGxhdGU8Y2xhc3MgRGVjb2Rlcj4gc3RhdGljIE9wdGlvbmFsPEltYWdlRXh0cmFjdGlv
bkxpbmVEYXRhPiBkZWNvZGUoRGVjb2RlciYpOworfTsKKwordGVtcGxhdGU8Y2xhc3MgRW5jb2Rl
cj4gdm9pZCBJbWFnZUV4dHJhY3Rpb25MaW5lRGF0YTo6ZW5jb2RlKEVuY29kZXImIGVuY29kZXIp
IGNvbnN0Cit7CisgICAgZW5jb2RlciA8PCBub3JtYWxpemVkUXVhZDsKKyAgICBlbmNvZGVyIDw8
IGNoaWxkcmVuOworfQorCit0ZW1wbGF0ZTxjbGFzcyBEZWNvZGVyPiBPcHRpb25hbDxJbWFnZUV4
dHJhY3Rpb25MaW5lRGF0YT4gSW1hZ2VFeHRyYWN0aW9uTGluZURhdGE6OmRlY29kZShEZWNvZGVy
JiBkZWNvZGVyKQoreworICAgIE9wdGlvbmFsPEZsb2F0UXVhZD4gbm9ybWFsaXplZFF1YWQ7Cisg
ICAgZGVjb2RlciA+PiBub3JtYWxpemVkUXVhZDsKKyAgICBpZiAoIW5vcm1hbGl6ZWRRdWFkKQor
ICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OworCisgICAgT3B0aW9uYWw8VmVjdG9yPEltYWdl
RXh0cmFjdGlvblRleHREYXRhPj4gY2hpbGRyZW47CisgICAgZGVjb2RlciA+PiBjaGlsZHJlbjsK
KyAgICBpZiAoIWNoaWxkcmVuKQorICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OworCisgICAg
cmV0dXJuIHt7IFdURk1vdmUoKm5vcm1hbGl6ZWRRdWFkKSwgV1RGTW92ZSgqY2hpbGRyZW4pIH19
OworfQorCiBzdHJ1Y3QgSW1hZ2VFeHRyYWN0aW9uUmVzdWx0IHsKLSAgICBWZWN0b3I8SW1hZ2VF
eHRyYWN0aW9uVGV4dERhdGE+IHRleHREYXRhOworICAgIFZlY3RvcjxJbWFnZUV4dHJhY3Rpb25M
aW5lRGF0YT4gbGluZXM7CiAKLSAgICBib29sIGlzRW1wdHkoKSBjb25zdCB7IHJldHVybiB0ZXh0
RGF0YS5pc0VtcHR5KCk7IH0KKyAgICBib29sIGlzRW1wdHkoKSBjb25zdCB7IHJldHVybiBsaW5l
cy5pc0VtcHR5KCk7IH0KIAogICAgIHRlbXBsYXRlPGNsYXNzIEVuY29kZXI+IHZvaWQgZW5jb2Rl
KEVuY29kZXImKSBjb25zdDsKICAgICB0ZW1wbGF0ZTxjbGFzcyBEZWNvZGVyPiBzdGF0aWMgT3B0
aW9uYWw8SW1hZ2VFeHRyYWN0aW9uUmVzdWx0PiBkZWNvZGUoRGVjb2RlciYpOwpAQCAtNzMsMTcg
KzExNCwxNyBAQCBzdHJ1Y3QgSW1hZ2VFeHRyYWN0aW9uUmVzdWx0IHsKIAogdGVtcGxhdGU8Y2xh
c3MgRW5jb2Rlcj4gdm9pZCBJbWFnZUV4dHJhY3Rpb25SZXN1bHQ6OmVuY29kZShFbmNvZGVyJiBl
bmNvZGVyKSBjb25zdAogewotICAgIGVuY29kZXIgPDwgdGV4dERhdGE7CisgICAgZW5jb2RlciA8
PCBsaW5lczsKIH0KIAogdGVtcGxhdGU8Y2xhc3MgRGVjb2Rlcj4gT3B0aW9uYWw8SW1hZ2VFeHRy
YWN0aW9uUmVzdWx0PiBJbWFnZUV4dHJhY3Rpb25SZXN1bHQ6OmRlY29kZShEZWNvZGVyJiBkZWNv
ZGVyKQogewotICAgIE9wdGlvbmFsPFZlY3RvcjxJbWFnZUV4dHJhY3Rpb25UZXh0RGF0YT4+IHRl
eHREYXRhOwotICAgIGRlY29kZXIgPj4gdGV4dERhdGE7Ci0gICAgaWYgKCF0ZXh0RGF0YSkKKyAg
ICBPcHRpb25hbDxWZWN0b3I8SW1hZ2VFeHRyYWN0aW9uTGluZURhdGE+PiBsaW5lczsKKyAgICBk
ZWNvZGVyID4+IGxpbmVzOworICAgIGlmICghbGluZXMpCiAgICAgICAgIHJldHVybiBXVEY6Om51
bGxvcHQ7CiAKLSAgICByZXR1cm4ge3sgV1RGTW92ZSgqdGV4dERhdGEpIH19OworICAgIHJldHVy
biB7eyBXVEZNb3ZlKCpsaW5lcykgfX07CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0Zsb2F0UG9pbnQuaCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0Zsb2F0UG9pbnQuaAppbmRleCA3NWM5
MjhkYTdhYTM3NDY2YjE0NmMxYzc4ZWMxMDBiNjUwY2YzMTk4Li45MDRjMTQ4MzMwYmM5NTQxOWQ4
NThmMjRiMGQ1ZjlmYWEyODJhNThjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9GbG9hdFBvaW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvRmxvYXRQb2ludC5oCkBAIC0xMzUsNiArMTM1LDE3IEBAIHB1YmxpYzoKICAgICAgICAg
cmV0dXJuIHsgbV94ICogc2NhbGVYLCBtX3kgKiBzY2FsZVkgfTsKICAgICB9CiAKKyAgICB2b2lk
IHJvdGF0ZShkb3VibGUgYW5nbGVJblJhZGlhbnMsIGNvbnN0IEZsb2F0UG9pbnQmIGFib3V0UG9p
bnQgPSB7IH0pCisgICAgeworICAgICAgICBhdXRvIHNpbkFuZ2xlID0gc2luKGFuZ2xlSW5SYWRp
YW5zKTsKKyAgICAgICAgYXV0byBjb3NBbmdsZSA9IGNvcyhhbmdsZUluUmFkaWFucyk7CisgICAg
ICAgIG1feCAtPSBhYm91dFBvaW50LngoKTsKKyAgICAgICAgbV95IC09IGFib3V0UG9pbnQueSgp
OworICAgICAgICBhdXRvIG5ld1ggPSBtX3ggKiBjb3NBbmdsZSAtIG1feSAqIHNpbkFuZ2xlICsg
YWJvdXRQb2ludC54KCk7CisgICAgICAgIG1feSA9IG1feCAqIHNpbkFuZ2xlICsgbV95ICogY29z
QW5nbGUgKyBhYm91dFBvaW50LnkoKTsKKyAgICAgICAgbV94ID0gbmV3WDsKKyAgICB9CisKICAg
ICBXRUJDT1JFX0VYUE9SVCB2b2lkIG5vcm1hbGl6ZSgpOwogCiAgICAgZmxvYXQgZG90KGNvbnN0
IEZsb2F0UG9pbnQmIGEpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5n
L0ludGVybmFscy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKaW5k
ZXggOTQzYTdiYjNlYThhYWQ3OTIwMmRmN2Q5MmY0MGMwZTcxZDRlYzg3My4uYWEyNzlkZjNjM2Nk
NmQyYzJlMjNjYjA4ZjkxNDI0M2FkZTVlMDVhMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
dGVzdGluZy9JbnRlcm5hbHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJu
YWxzLmNwcApAQCAtNTU5NCwyNiArNTU5NCw0NyBAQCBNb2NrUGF5bWVudENvb3JkaW5hdG9yJiBJ
bnRlcm5hbHM6Om1vY2tQYXltZW50Q29vcmRpbmF0b3IoRG9jdW1lbnQmIGRvY3VtZW50KQogfQog
I2VuZGlmCiAKK0ludGVybmFsczo6SW1hZ2VPdmVybGF5TGluZTo6fkltYWdlT3ZlcmxheUxpbmUo
KSA9IGRlZmF1bHQ7CiBJbnRlcm5hbHM6OkltYWdlT3ZlcmxheVRleHQ6On5JbWFnZU92ZXJsYXlU
ZXh0KCkgPSBkZWZhdWx0OwogCi12b2lkIEludGVybmFsczo6aW5zdGFsbEltYWdlT3ZlcmxheShF
bGVtZW50JiBlbGVtZW50LCBWZWN0b3I8SW1hZ2VPdmVybGF5VGV4dD4mJiBhbGxUZXh0SW5mbykK
KyNpZiBFTkFCTEUoSU1BR0VfRVhUUkFDVElPTikKKwordGVtcGxhdGU8dHlwZW5hbWUgVD4KK3N0
YXRpYyBGbG9hdFF1YWQgZ2V0UXVhZChjb25zdCBUJiBvdmVybGF5VGV4dE9yTGluZSkKK3sKKyAg
ICByZXR1cm4geworICAgICAgICBGbG9hdFBvaW50KG92ZXJsYXlUZXh0T3JMaW5lLnRvcExlZnQt
PngoKSwgb3ZlcmxheVRleHRPckxpbmUudG9wTGVmdC0+eSgpKSwKKyAgICAgICAgRmxvYXRQb2lu
dChvdmVybGF5VGV4dE9yTGluZS50b3BSaWdodC0+eCgpLCBvdmVybGF5VGV4dE9yTGluZS50b3BS
aWdodC0+eSgpKSwKKyAgICAgICAgRmxvYXRQb2ludChvdmVybGF5VGV4dE9yTGluZS5ib3R0b21S
aWdodC0+eCgpLCBvdmVybGF5VGV4dE9yTGluZS5ib3R0b21SaWdodC0+eSgpKSwKKyAgICAgICAg
RmxvYXRQb2ludChvdmVybGF5VGV4dE9yTGluZS5ib3R0b21MZWZ0LT54KCksIG92ZXJsYXlUZXh0
T3JMaW5lLmJvdHRvbUxlZnQtPnkoKSksCisgICAgfTsKK30KKworc3RhdGljIEltYWdlRXh0cmFj
dGlvbkxpbmVEYXRhIG1ha2VEYXRhRm9yTGluZShjb25zdCBJbnRlcm5hbHM6OkltYWdlT3Zlcmxh
eUxpbmUmIGxpbmUpCit7CisgICAgcmV0dXJuIHsKKyAgICAgICAgZ2V0UXVhZDxJbnRlcm5hbHM6
OkltYWdlT3ZlcmxheUxpbmU+KGxpbmUpLAorICAgICAgICBsaW5lLmNoaWxkcmVuLm1hcChbXShh
dXRvJiB0ZXh0Q2hpbGQpIC0+IEltYWdlRXh0cmFjdGlvblRleHREYXRhIHsKKyAgICAgICAgICAg
IHJldHVybiB7IHRleHRDaGlsZC50ZXh0LCBnZXRRdWFkPEludGVybmFsczo6SW1hZ2VPdmVybGF5
VGV4dD4odGV4dENoaWxkKSB9OworICAgICAgICB9KQorICAgIH07Cit9CisKKyNlbmRpZiAvLyBF
TkFCTEUoSU1BR0VfRVhUUkFDVElPTikKKwordm9pZCBJbnRlcm5hbHM6Omluc3RhbGxJbWFnZU92
ZXJsYXkoRWxlbWVudCYgZWxlbWVudCwgVmVjdG9yPEltYWdlT3ZlcmxheUxpbmU+JiYgbGluZXMp
CiB7CiAgICAgaWYgKCFpczxIVE1MRWxlbWVudD4oZWxlbWVudCkpCiAgICAgICAgIHJldHVybjsK
IAogI2lmIEVOQUJMRShJTUFHRV9FWFRSQUNUSU9OKQogICAgIGRvd25jYXN0PEhUTUxFbGVtZW50
PihlbGVtZW50KS51cGRhdGVXaXRoSW1hZ2VFeHRyYWN0aW9uUmVzdWx0KEltYWdlRXh0cmFjdGlv
blJlc3VsdCB7Ci0gICAgICAgIGFsbFRleHRJbmZvLm1hcChbXSAoYXV0byYgdGV4dEluZm8pIC0+
IEltYWdlRXh0cmFjdGlvblRleHREYXRhIHsKLSAgICAgICAgICAgIHJldHVybiB7IHRleHRJbmZv
LnRleHQsIHsKLSAgICAgICAgICAgICAgICBGbG9hdFBvaW50KHRleHRJbmZvLnRvcExlZnQtPngo
KSwgdGV4dEluZm8udG9wTGVmdC0+eSgpKSwKLSAgICAgICAgICAgICAgICBGbG9hdFBvaW50KHRl
eHRJbmZvLnRvcFJpZ2h0LT54KCksIHRleHRJbmZvLnRvcFJpZ2h0LT55KCkpLAotICAgICAgICAg
ICAgICAgIEZsb2F0UG9pbnQodGV4dEluZm8uYm90dG9tUmlnaHQtPngoKSwgdGV4dEluZm8uYm90
dG9tUmlnaHQtPnkoKSksCi0gICAgICAgICAgICAgICAgRmxvYXRQb2ludCh0ZXh0SW5mby5ib3R0
b21MZWZ0LT54KCksIHRleHRJbmZvLmJvdHRvbUxlZnQtPnkoKSksCi0gICAgICAgICAgICB9fTsK
KyAgICAgICAgbGluZXMubWFwKFtdIChhdXRvJiBsaW5lKSAtPiBJbWFnZUV4dHJhY3Rpb25MaW5l
RGF0YSB7CisgICAgICAgICAgICByZXR1cm4gbWFrZURhdGFGb3JMaW5lKGxpbmUpOwogICAgICAg
ICB9KQogICAgIH0pOwogI2Vsc2UKLSAgICBVTlVTRURfUEFSQU0oYWxsVGV4dEluZm8pOworICAg
IFVOVVNFRF9QQVJBTShsaW5lcyk7CiAjZW5kaWYKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJu
YWxzLmgKaW5kZXggYzFkMDAzYTdlMzMyNjM1ZDIxNDhmYzBlZGYzNDY0OWQ2MzdlZTFkOS4uODhm
MDhjNWY5NGU1YmY2OTFhYmQ1ZGRlNTEzYWNiMGFmYzllZWY4ZCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5n
L0ludGVybmFscy5oCkBAIC04NzUsNyArODc1LDE3IEBAIHB1YmxpYzoKIAogICAgICAgICB+SW1h
Z2VPdmVybGF5VGV4dCgpOwogICAgIH07Ci0gICAgdm9pZCBpbnN0YWxsSW1hZ2VPdmVybGF5KEVs
ZW1lbnQmLCBWZWN0b3I8SW1hZ2VPdmVybGF5VGV4dD4mJik7CisKKyAgICBzdHJ1Y3QgSW1hZ2VP
dmVybGF5TGluZSB7CisgICAgICAgIFJlZlB0cjxET01Qb2ludFJlYWRPbmx5PiB0b3BMZWZ0Owor
ICAgICAgICBSZWZQdHI8RE9NUG9pbnRSZWFkT25seT4gdG9wUmlnaHQ7CisgICAgICAgIFJlZlB0
cjxET01Qb2ludFJlYWRPbmx5PiBib3R0b21SaWdodDsKKyAgICAgICAgUmVmUHRyPERPTVBvaW50
UmVhZE9ubHk+IGJvdHRvbUxlZnQ7CisgICAgICAgIFZlY3RvcjxJbWFnZU92ZXJsYXlUZXh0PiBj
aGlsZHJlbjsKKworICAgICAgICB+SW1hZ2VPdmVybGF5TGluZSgpOworICAgIH07CisgICAgdm9p
ZCBpbnN0YWxsSW1hZ2VPdmVybGF5KEVsZW1lbnQmLCBWZWN0b3I8SW1hZ2VPdmVybGF5TGluZT4m
Jik7CiAKICAgICBib29sIGlzU3lzdGVtUHJldmlld0xpbmsoRWxlbWVudCYpIGNvbnN0OwogICAg
IGJvb2wgaXNTeXN0ZW1QcmV2aWV3SW1hZ2UoRWxlbWVudCYpIGNvbnN0OwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsIGIvU291cmNlL1dlYkNvcmUvdGVz
dGluZy9JbnRlcm5hbHMuaWRsCmluZGV4IGJmYTVlNzQwMGY2ZjUxNDc2ZTc1MjFlZWYwYjQ1NmVm
OTY0ZDAyZDMuLjk1ZmI1NjIyY2ExYTNmMzY2MmQzNzAxZDVhNjJkNDc4NDY4YzY0MGYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKQEAgLTI2NCw2ICsyNjQsMTcgQEAgZW51bSBU
cmVlVHlwZSB7CiAgICAgcmVxdWlyZWQgRE9NUG9pbnRSZWFkT25seSBib3R0b21MZWZ0OwogfTsK
IAorWworICAgIEV4cG9ydE1hY3JvPVdFQkNPUkVfVEVTVFNVUFBPUlRfRVhQT1JULAorICAgIEpT
R2VuZXJhdGVUb0pTT2JqZWN0LAorXSBkaWN0aW9uYXJ5IEltYWdlT3ZlcmxheUxpbmUgeworICAg
IHJlcXVpcmVkIERPTVBvaW50UmVhZE9ubHkgdG9wTGVmdDsKKyAgICByZXF1aXJlZCBET01Qb2lu
dFJlYWRPbmx5IHRvcFJpZ2h0OworICAgIHJlcXVpcmVkIERPTVBvaW50UmVhZE9ubHkgYm90dG9t
UmlnaHQ7CisgICAgcmVxdWlyZWQgRE9NUG9pbnRSZWFkT25seSBib3R0b21MZWZ0OworICAgIHNl
cXVlbmNlPEltYWdlT3ZlcmxheVRleHQ+IGNoaWxkcmVuOworfTsKKwogWwogICAgIEV4cG9ydE1h
Y3JvPVdFQkNPUkVfVEVTVFNVUFBPUlRfRVhQT1JULAogICAgIExlZ2FjeU5vSW50ZXJmYWNlT2Jq
ZWN0LApAQCAtODk2LDcgKzkwNyw3IEBAIGVudW0gVHJlZVR5cGUgewogICAgIGJvb2xlYW4gaXNT
eXN0ZW1QcmV2aWV3TGluayhFbGVtZW50IGVsZW1lbnQpOwogICAgIGJvb2xlYW4gaXNTeXN0ZW1Q
cmV2aWV3SW1hZ2UoRWxlbWVudCBlbGVtZW50KTsKIAotICAgIHVuZGVmaW5lZCBpbnN0YWxsSW1h
Z2VPdmVybGF5KEVsZW1lbnQgZWxlbWVudCwgc2VxdWVuY2U8SW1hZ2VPdmVybGF5VGV4dD4gYWxs
VGV4dEluZm8pOworICAgIHVuZGVmaW5lZCBpbnN0YWxsSW1hZ2VPdmVybGF5KEVsZW1lbnQgZWxl
bWVudCwgc2VxdWVuY2U8SW1hZ2VPdmVybGF5TGluZT4gbGluZXMpOwogCiAgICAgYm9vbGVhbiB1
c2luZ0FwcGxlSW50ZXJuYWxTREsoKTsKICAgICBib29sZWFuIHVzaW5nR1N0cmVhbWVyKCk7CmRp
ZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggYTY2N2Vm
NjIxMTkzYzFjYmYwNmY1OTQ3NzRiNTE1ZjFkMjNiOGZhMy4uYTFiOTViZTcyN2Q1NGVlMDA1NWQy
MWVjMDViOTBjNjg0ODVmZDIzNCAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rv
b2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIxLTA0LTI1ICBXZW5zb24gSHNpZWgg
IDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIFN1YmRpdmlkZSBpbWFnZSBvdmVy
bGF5IHRleHQgaW50byBvbmUgb3IgbW9yZSBlbGVtZW50cyBwZXIgbGluZQorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1MDM4CisgICAgICAgIHJkYXI6
Ly83NTUwNTA0MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIEFkanVzdCBzZXZlcmFsIGV4aXN0aW5nIGxheW91dCB0ZXN0cyBhZnRlciBjaGFuZ2luZyBg
aW50ZXJuYWxzLmluc3RhbGxJbWFnZU92ZXJsYXlgLiBTZWUgV2ViQ29yZSBDaGFuZ2VMb2cgZm9y
CisgICAgICAgIG1vcmUgZGV0YWlscy4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMv
V2ViS2l0L3NpbXBsZS1pbWFnZS1vdmVybGF5Lmh0bWw6CisKIDIwMjEtMDQtMjIgIEJKIEJ1cmcg
IDxiYnVyZ0BhcHBsZS5jb20+CiAKICAgICAgICAgW0NvY29hXSByZS1lbmFibGUgdGVzdCBjYXNl
IFdLSW5zcGVjdG9yRGVsZWdhdGUuSW5zcGVjdG9yQ29uZmlndXJhdGlvbgpkaWZmIC0tZ2l0IGEv
VG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvc2ltcGxlLWltYWdlLW92ZXJsYXkuaHRt
bCBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L3NpbXBsZS1pbWFnZS1vdmVybGF5
Lmh0bWwKaW5kZXggOThjMGI3YTNhYjJkYjczZjdmNWJjZWNiYTIzMWRmM2JlMzhjYjQ4YS4uMmI5
ZGNlM2EyNWZiMGIyNGI3MzQ3MmE3M2RiMTI0NTZhZjkzNTk1YyAxMDA2NDQKLS0tIGEvVG9vbHMv
VGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvc2ltcGxlLWltYWdlLW92ZXJsYXkuaHRtbAorKysg
Yi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9zaW1wbGUtaW1hZ2Utb3ZlcmxheS5o
dG1sCkBAIC0xOCwxMSArMTgsMTkgQEAgYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsICgpID0+IHsK
ICAgICAgICAgcmV0dXJuOwogCiAgICAgaW50ZXJuYWxzLmluc3RhbGxJbWFnZU92ZXJsYXkoZG9j
dW1lbnQucXVlcnlTZWxlY3RvcigiaW1nIiksIFt7Ci0gICAgICAgIHRleHQgOiAiZm9vYmFyIiwK
ICAgICAgICAgdG9wTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDApLAogICAgICAgICB0
b3BSaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDApLAogICAgICAgICBib3R0b21SaWdo
dCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDAuNSksCiAgICAgICAgIGJvdHRvbUxlZnQgOiBu
ZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwLjUpLAorICAgICAgICBjaGlsZHJlbjogWworICAgICAg
ICAgICAgeworICAgICAgICAgICAgICAgIHRleHQgOiAiZm9vYmFyIiwKKyAgICAgICAgICAgICAg
ICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMCksCisgICAgICAgICAgICAgICAg
dG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwKSwKKyAgICAgICAgICAgICAgICBi
b3R0b21SaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDAuNSksCisgICAgICAgICAgICAg
ICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDAuNSksCisgICAgICAgICAg
ICB9CisgICAgICAgIF0KICAgICB9XSk7CiB9KTsKIDwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGJhZDI5ZDE0
NDVhM2NlZjczMzA3MmRhNmY2MGM4ODYwMDlmZjZiY2IuLjI5YmVlZDk3Y2UxODllMDkxOWZmODU3
MjEyZmUzYTVlNjgzNzBkMDEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysg
Yi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzMSBAQAorMjAyMS0wNC0yNSAgV2Vu
c29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KKworICAgICAgICBTdWJkaXZpZGUg
aW1hZ2Ugb3ZlcmxheSB0ZXh0IGludG8gb25lIG9yIG1vcmUgZWxlbWVudHMgcGVyIGxpbmUKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNTAzOAorICAg
ICAgICByZGFyOi8vNzU1MDUwNDMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBBZGp1c3Qgc2V2ZXJhbCBleGlzdGluZyBsYXlvdXQgdGVzdHMgYWZ0ZXIg
Y2hhbmdpbmcgYGludGVybmFscy5pbnN0YWxsSW1hZ2VPdmVybGF5YC4gU2VlIFdlYkNvcmUgQ2hh
bmdlTG9nIGZvcgorICAgICAgICBtb3JlIGRldGFpbHMuCisKKyAgICAgICAgKiBmYXN0L2ltYWdl
cy9pbWFnZS1leHRyYWN0aW9uL2Jhc2ljLWltYWdlLW92ZXJsYXkuaHRtbDoKKyAgICAgICAgKiBm
YXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2NsaWNrLWxpbmstd2l0aC1pbWFnZS1vdmVybGF5
Lmh0bWw6CisgICAgICAgICogZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9pbWFnZS1vdmVy
bGF5LWNyZWF0aW9uLWlzLWlkZW1wb3RlbnQuaHRtbDoKKyAgICAgICAgKiBmYXN0L2ltYWdlcy9p
bWFnZS1leHRyYWN0aW9uL2ltYWdlLW92ZXJsYXktaW4taW1hZ2Utd2l0aC16ZXJvLWZvbnQtc2l6
ZS5odG1sOgorICAgICAgICAqIGZhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vaW1hZ2Utb3Zl
cmxheS13aXRoLXNlbGVjdGlvbi1zdHlsZXMtZXhwZWN0ZWQuaHRtbDoKKyAgICAgICAgKiBmYXN0
L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2ltYWdlLW92ZXJsYXktd2l0aC1zZWxlY3Rpb24tc3R5
bGVzLmh0bWw6CisgICAgICAgICogZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9pb3MvcmVz
ZWxlY3Qtd29yZC1pbi1pbWFnZS1vdmVybGF5Lmh0bWw6CisgICAgICAgICogZmFzdC9pbWFnZXMv
aW1hZ2UtZXh0cmFjdGlvbi9pb3Mvc2VsZWN0LXdvcmQtaW4taW1hZ2Utb3ZlcmxheS1pbnNpZGUt
bGluay5odG1sOgorICAgICAgICAqIGZhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vaW9zL3Nl
bGVjdC13b3JkLWluLWltYWdlLW92ZXJsYXkuaHRtbDoKKyAgICAgICAgKiBmYXN0L2ltYWdlcy9p
bWFnZS1leHRyYWN0aW9uL2lvcy9zZWxlY3Rpb24tcmVjdHMtaW4taW1hZ2Utb3ZlcmxheS5odG1s
OgorICAgICAgICAqIGZhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vbWFjL2NvcHktaW1hZ2Ut
b3ZlcmxheS10ZXh0LXdpdGgtY29udGV4dC1tZW51Lmh0bWw6CisgICAgICAgICogZmFzdC9pbWFn
ZXMvaW1hZ2UtZXh0cmFjdGlvbi9tYWMvc2VsZWN0LWltYWdlLW92ZXJsYXktaW4tbGluay13aXRo
LW1vdXNlLWRyYWcuaHRtbDoKKyAgICAgICAgKiBmYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9u
L21hYy9zZWxlY3QtaW1hZ2Utb3ZlcmxheS13aXRoLW1vdXNlLWRyYWctZG9lcy1ub3QtZmlyZS1j
bGljay5odG1sOgorICAgICAgICAqIGZhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vbWFjL3Nl
bGVjdC1pbWFnZS1vdmVybGF5LXdpdGgtbW91c2UtZHJhZy5odG1sOgorICAgICAgICAqIGZhc3Qv
aW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vbWFjL3NlbGVjdC13b3JkLWluLWRyYWdnYWJsZS1pbWFn
ZS1vdmVybGF5Lmh0bWw6CisgICAgICAgICogZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9t
YWMvc2VsZWN0LXdvcmQtaW4tdHJhbnNwYXJlbnQtaW1hZ2Utb3ZlcmxheS5odG1sOgorCiAyMDIx
LTA0LTIyICBSb2JlcnQgSmVubmVyICA8amVubmVyQGFwcGxlLmNvbT4KIAogICAgICAgICBbIEJp
Z1N1ciB3azIgYXJtNjQgXSB3ZWJydGMvY2FwdHVyZUNhbnZhcy13ZWJydGMuaHRtbApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9iYXNpYy1pbWFn
ZS1vdmVybGF5Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9u
L2Jhc2ljLWltYWdlLW92ZXJsYXkuaHRtbAppbmRleCBhODFjMzZlMDc3NjVkNjkwYTY4NGU2YmQw
NWE2YzRhNDFkNDUwZTc3Li45OWEwY2U2MTgwNmU4ZWEzYTNiMzg0ZWVjNWY4NjkwNjgzOGM2YzQ3
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2Jh
c2ljLWltYWdlLW92ZXJsYXkuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFn
ZS1leHRyYWN0aW9uL2Jhc2ljLWltYWdlLW92ZXJsYXkuaHRtbApAQCAtNSwxMyArNSwyMSBAQAog
PHNjcmlwdD4KIGFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCAoKSA9PiB7CiAgICAgbGV0IGltYWdl
ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaW1nIik7Ci0gICAgaW50ZXJuYWxzLmluc3RhbGxJ
bWFnZU92ZXJsYXkoaW1hZ2UsIFt7Ci0gICAgICAgIHRleHQgOiAiSGVsbG8iLAotICAgICAgICB0
b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC41LCAwLjUpLAotICAgICAgICB0b3BSaWdo
dCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDAuNSksCi0gICAgICAgIGJvdHRvbVJpZ2h0IDog
bmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMSksCi0gICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9N
UG9pbnRSZWFkT25seSgwLjUsIDEpLAotICAgIH1dKTsKKyAgICBpbnRlcm5hbHMuaW5zdGFsbElt
YWdlT3ZlcmxheShpbWFnZSwgWworICAgICAgICB7CisgICAgICAgICAgICB0b3BMZWZ0IDogbmV3
IERPTVBvaW50UmVhZE9ubHkoMC41LCAwLjUpLAorICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcg
RE9NUG9pbnRSZWFkT25seSgxLCAwLjUpLAorICAgICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcg
RE9NUG9pbnRSZWFkT25seSgxLCAxKSwKKyAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9N
UG9pbnRSZWFkT25seSgwLjUsIDEpLAorICAgICAgICAgICAgY2hpbGRyZW46IFt7CisgICAgICAg
ICAgICAgICAgdGV4dCA6ICJIZWxsbyIsCisgICAgICAgICAgICAgICAgdG9wTGVmdCA6IG5ldyBE
T01Qb2ludFJlYWRPbmx5KDAuNSwgMC41KSwKKyAgICAgICAgICAgICAgICB0b3BSaWdodCA6IG5l
dyBET01Qb2ludFJlYWRPbmx5KDEsIDAuNSksCisgICAgICAgICAgICAgICAgYm90dG9tUmlnaHQg
OiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAxKSwKKyAgICAgICAgICAgICAgICBib3R0b21MZWZ0
IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC41LCAxKSwKKyAgICAgICAgICAgIH1dLAorICAgICAg
ICB9CisgICAgXSk7CiAgICAgaW50ZXJuYWxzLnNoYWRvd1Jvb3QoaW1hZ2UpLmdldEVsZW1lbnRC
eUlkKCJpbWFnZS1vdmVybGF5Iikuc3R5bGUuY29sb3IgPSAiYmxhY2siOwogfSk7CiA8L3Njcmlw
dD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24v
Y2xpY2stbGluay13aXRoLWltYWdlLW92ZXJsYXkuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvaW1h
Z2VzL2ltYWdlLWV4dHJhY3Rpb24vY2xpY2stbGluay13aXRoLWltYWdlLW92ZXJsYXkuaHRtbApp
bmRleCBhZThkYWE0Nzg2NGUzNDk5MjY0ZGNhYjVmNzEwYmM5MGY4YWI0YzhmLi42MTBlODZlZjg3
Y2QxNjczMzJjMGVhNjM2ZDVmMTdhOGI5MzA5NjM1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9m
YXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2NsaWNrLWxpbmstd2l0aC1pbWFnZS1vdmVybGF5
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9jbGlj
ay1saW5rLXdpdGgtaW1hZ2Utb3ZlcmxheS5odG1sCkBAIC0zMCw2ICszMCwyNCBAQCBhZGRFdmVu
dExpc3RlbmVyKCJsb2FkIiwgYXN5bmMgKCkgPT4gewogICAgICAgICBjbGlja0NvdW50Kys7CiAg
ICAgfSk7CiAKKyAgICBpbnRlcm5hbHMuaW5zdGFsbEltYWdlT3ZlcmxheShkb2N1bWVudC5xdWVy
eVNlbGVjdG9yKCJpbWciKSwgWworICAgICAgICB7CisgICAgICAgICAgICB0b3BMZWZ0IDogbmV3
IERPTVBvaW50UmVhZE9ubHkoMCwgMCksCisgICAgICAgICAgICB0b3BSaWdodCA6IG5ldyBET01Q
b2ludFJlYWRPbmx5KDEsIDApLAorICAgICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9p
bnRSZWFkT25seSgxLCAwLjI1KSwKKyAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9p
bnRSZWFkT25seSgwLCAwLjI1KSwKKyAgICAgICAgICAgIGNoaWxkcmVuOiBbCisgICAgICAgICAg
ICAgICAgeworICAgICAgICAgICAgICAgICAgICB0ZXh0IDogImhlbGxvIiwKKyAgICAgICAgICAg
ICAgICAgICAgdG9wTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDApLAorICAgICAgICAg
ICAgICAgICAgICB0b3BSaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDApLAorICAgICAg
ICAgICAgICAgICAgICBib3R0b21SaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDAuMjUp
LAorICAgICAgICAgICAgICAgICAgICBib3R0b21MZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHko
MCwgMC4yNSksCisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgXSwKKyAgICAgICAgfQor
ICAgIF0pOworCiAgICAgaW50ZXJuYWxzLmluc3RhbGxJbWFnZU92ZXJsYXkoZG9jdW1lbnQucXVl
cnlTZWxlY3RvcigiaW1nIiksIFsKICAgICAgICAgewogICAgICAgICAgICAgdGV4dCA6ICJoZWxs
byIsCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9u
L2ltYWdlLW92ZXJsYXktY3JlYXRpb24taXMtaWRlbXBvdGVudC5odG1sIGIvTGF5b3V0VGVzdHMv
ZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9pbWFnZS1vdmVybGF5LWNyZWF0aW9uLWlzLWlk
ZW1wb3RlbnQuaHRtbAppbmRleCA1ZGM5MDg0YjIzY2VjMmViN2U2ZjhkOGNhMGViZTA5NmE1NmY2
MTkyLi5iNmNjZGZiNjMzZTliMjRlNDNmMDRjM2Y5OGZmMzAyZjUzZmRiOTI4IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2ltYWdlLW92ZXJsYXkt
Y3JlYXRpb24taXMtaWRlbXBvdGVudC5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2Vz
L2ltYWdlLWV4dHJhY3Rpb24vaW1hZ2Utb3ZlcmxheS1jcmVhdGlvbi1pcy1pZGVtcG90ZW50Lmh0
bWwKQEAgLTcsMTMgKzcsMjMgQEAKIGFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCAoKSA9PiB7CiAg
ICAgaW1hZ2UgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJpbWciKTsKICAgICBmb3IgKGxldCBp
ID0gMDsgaSA8IDEwOyArK2kpIHsKLSAgICAgICAgaW50ZXJuYWxzLmluc3RhbGxJbWFnZU92ZXJs
YXkoaW1hZ2UsIFt7Ci0gICAgICAgICAgICB0ZXh0IDogIkhlbGxvIiwKLSAgICAgICAgICAgIHRv
cExlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjUsIDAuNSksCi0gICAgICAgICAgICB0b3BS
aWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDAuNSksCi0gICAgICAgICAgICBib3R0b21S
aWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDEpLAotICAgICAgICAgICAgYm90dG9tTGVm
dCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuNSwgMSksCi0gICAgICAgIH1dKTsKKyAgICAgICAg
aW50ZXJuYWxzLmluc3RhbGxJbWFnZU92ZXJsYXkoaW1hZ2UsIFsKKyAgICAgICAgICAgIHsKKyAg
ICAgICAgICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC41LCAwLjUpLAor
ICAgICAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwK
KyAgICAgICAgICAgICAgICBib3R0b21SaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDEp
LAorICAgICAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjUs
IDEpLAorICAgICAgICAgICAgICAgIGNoaWxkcmVuOiBbCisgICAgICAgICAgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgICAgICAgICAgIHRleHQgOiAiSGVsbG8iLAorICAgICAgICAgICAgICAg
ICAgICAgICAgdG9wTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuNSwgMC41KSwKKyAgICAg
ICAgICAgICAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41
KSwKKyAgICAgICAgICAgICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVh
ZE9ubHkoMSwgMSksCisgICAgICAgICAgICAgICAgICAgICAgICBib3R0b21MZWZ0IDogbmV3IERP
TVBvaW50UmVhZE9ubHkoMC41LCAxKSwKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICAgICAgIF0sCisgICAgICAgICAgICB9CisgICAgICAgIF0pOwogICAgIH0KICAgICBzaG91bGRC
ZSgiaW50ZXJuYWxzLnNoYWRvd1Jvb3QoaW1hZ2UpLmNoaWxkRWxlbWVudENvdW50IiwgIjIiKTsK
IH0pOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlv
bi9pbWFnZS1vdmVybGF5LWluLWltYWdlLXdpdGgtemVyby1mb250LXNpemUuaHRtbCBiL0xheW91
dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vaW1hZ2Utb3ZlcmxheS1pbi1pbWFn
ZS13aXRoLXplcm8tZm9udC1zaXplLmh0bWwKaW5kZXggYzM4MDNjNDE4NDA1ODMwNjQxNWVhYzVl
NWQ4YjliNDBhMGNiMjAwZS4uMDE0YjA1NjQ5OTY4MTRkZjM4NWQwYjhlZTIyMmE5OTg5ZGI1NTAx
NyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9p
bWFnZS1vdmVybGF5LWluLWltYWdlLXdpdGgtemVyby1mb250LXNpemUuaHRtbAorKysgYi9MYXlv
dXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2ltYWdlLW92ZXJsYXktaW4taW1h
Z2Utd2l0aC16ZXJvLWZvbnQtc2l6ZS5odG1sCkBAIC0xMiwxMyArMTIsMjMgQEAgaW1nIHsKIDxz
Y3JpcHQ+CiBhZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgKCkgPT4gewogICAgIGxldCBpbWFnZSA9
IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImltZyIpOwotICAgIGludGVybmFscy5pbnN0YWxsSW1h
Z2VPdmVybGF5KGltYWdlLCBbewotICAgICAgICB0ZXh0IDogIkhlbGxvIiwKLSAgICAgICAgdG9w
TGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuNSwgMC41KSwKLSAgICAgICAgdG9wUmlnaHQg
OiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwLjUpLAotICAgICAgICBib3R0b21SaWdodCA6IG5l
dyBET01Qb2ludFJlYWRPbmx5KDEsIDEpLAotICAgICAgICBib3R0b21MZWZ0IDogbmV3IERPTVBv
aW50UmVhZE9ubHkoMC41LCAxKSwKLSAgICB9XSk7CisgICAgaW50ZXJuYWxzLmluc3RhbGxJbWFn
ZU92ZXJsYXkoaW1hZ2UsIFsKKyAgICAgICAgeworICAgICAgICAgICAgdG9wTGVmdCA6IG5ldyBE
T01Qb2ludFJlYWRPbmx5KDAuNSwgMC41KSwKKyAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERP
TVBvaW50UmVhZE9ubHkoMSwgMC41KSwKKyAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERP
TVBvaW50UmVhZE9ubHkoMSwgMSksCisgICAgICAgICAgICBib3R0b21MZWZ0IDogbmV3IERPTVBv
aW50UmVhZE9ubHkoMC41LCAxKSwKKyAgICAgICAgICAgIGNoaWxkcmVuOiBbCisgICAgICAgICAg
ICAgICAgeworICAgICAgICAgICAgICAgICAgICB0ZXh0IDogIkhlbGxvIiwKKyAgICAgICAgICAg
ICAgICAgICAgdG9wTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuNSwgMC41KSwKKyAgICAg
ICAgICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwLjUpLAor
ICAgICAgICAgICAgICAgICAgICBib3R0b21SaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEs
IDEpLAorICAgICAgICAgICAgICAgICAgICBib3R0b21MZWZ0IDogbmV3IERPTVBvaW50UmVhZE9u
bHkoMC41LCAxKSwKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICBdLAorICAgICAgICB9
CisgICAgXSk7CiAgICAgaW50ZXJuYWxzLnNoYWRvd1Jvb3QoaW1hZ2UpLmdldEVsZW1lbnRCeUlk
KCJpbWFnZS1vdmVybGF5Iikuc3R5bGUuY29sb3IgPSAiYmxhY2siOwogfSk7CiA8L3NjcmlwdD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vaW1h
Z2Utb3ZlcmxheS13aXRoLXNlbGVjdGlvbi1zdHlsZXMtZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRl
c3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vaW1hZ2Utb3ZlcmxheS13aXRoLXNlbGVj
dGlvbi1zdHlsZXMtZXhwZWN0ZWQuaHRtbAppbmRleCA2NzY4YmUyM2U3YjE1ZmE2MWU5OWUzNWI5
YzkxMGYzMGIyZWUzMzRiLi5lYTUyNDU2MDk5NjRhYmM5NGQ3ODZlODA4YTU1ODhhZWU0YmY3ODVj
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2lt
YWdlLW92ZXJsYXktd2l0aC1zZWxlY3Rpb24tc3R5bGVzLWV4cGVjdGVkLmh0bWwKKysrIGIvTGF5
b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9pbWFnZS1vdmVybGF5LXdpdGgt
c2VsZWN0aW9uLXN0eWxlcy1leHBlY3RlZC5odG1sCkBAIC0yMCwxMSArMjAsMTkgQEAgYWRkRXZl
bnRMaXN0ZW5lcigibG9hZCIsICgpID0+IHsKICAgICBjb25zdCBpbWFnZSA9IGRvY3VtZW50LnF1
ZXJ5U2VsZWN0b3IoImltZyIpOwogICAgIGludGVybmFscy5pbnN0YWxsSW1hZ2VPdmVybGF5KGlt
YWdlLCBbCiAgICAgICAgIHsKLSAgICAgICAgICAgIHRleHQgOiAiaGVsbG8iLAogICAgICAgICAg
ICAgdG9wTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDApLAogICAgICAgICAgICAgdG9w
UmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwKSwKICAgICAgICAgICAgIGJvdHRvbVJp
Z2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwKICAgICAgICAgICAgIGJvdHRvbUxl
ZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwLjUpLAorICAgICAgICAgICAgY2hpbGRyZW46
IFsKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHRleHQgOiAiaGVsbG8i
LAorICAgICAgICAgICAgICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwg
MCksCisgICAgICAgICAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHko
MSwgMCksCisgICAgICAgICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVh
ZE9ubHkoMSwgMC41KSwKKyAgICAgICAgICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Q
b2ludFJlYWRPbmx5KDAsIDAuNSksCisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgXSwK
ICAgICAgICAgfQogICAgIF0pOwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdl
cy9pbWFnZS1leHRyYWN0aW9uL2ltYWdlLW92ZXJsYXktd2l0aC1zZWxlY3Rpb24tc3R5bGVzLmh0
bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2ltYWdlLW92ZXJs
YXktd2l0aC1zZWxlY3Rpb24tc3R5bGVzLmh0bWwKaW5kZXggOTM0NGJlNGI5MTMwMzM4MjJmOGM1
NGU3YmE2MzI0YjgzZTE0MWM5ZS4uOTU5NTJiNWNiMzZmMjBhYTM1ZWJlMGE0Y2NmYTUxN2E3NDY1
YTEyMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlv
bi9pbWFnZS1vdmVybGF5LXdpdGgtc2VsZWN0aW9uLXN0eWxlcy5odG1sCisrKyBiL0xheW91dFRl
c3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vaW1hZ2Utb3ZlcmxheS13aXRoLXNlbGVj
dGlvbi1zdHlsZXMuaHRtbApAQCAtMTYsMTEgKzE2LDE5IEBAIGFkZEV2ZW50TGlzdGVuZXIoImxv
YWQiLCAoKSA9PiB7CiAgICAgY29uc3QgaW1hZ2UgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJp
bWciKTsKICAgICBpbnRlcm5hbHMuaW5zdGFsbEltYWdlT3ZlcmxheShpbWFnZSwgWwogICAgICAg
ICB7Ci0gICAgICAgICAgICB0ZXh0IDogImhlbGxvIiwKICAgICAgICAgICAgIHRvcExlZnQgOiBu
ZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwKSwKICAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERP
TVBvaW50UmVhZE9ubHkoMSwgMCksCiAgICAgICAgICAgICBib3R0b21SaWdodCA6IG5ldyBET01Q
b2ludFJlYWRPbmx5KDEsIDAuNSksCiAgICAgICAgICAgICBib3R0b21MZWZ0IDogbmV3IERPTVBv
aW50UmVhZE9ubHkoMCwgMC41KSwKKyAgICAgICAgICAgIGNoaWxkcmVuOiBbCisgICAgICAgICAg
ICAgICAgeworICAgICAgICAgICAgICAgICAgICB0ZXh0IDogImhlbGxvIiwKKyAgICAgICAgICAg
ICAgICAgICAgdG9wTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDApLAorICAgICAgICAg
ICAgICAgICAgICB0b3BSaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDApLAorICAgICAg
ICAgICAgICAgICAgICBib3R0b21SaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDAuNSks
CisgICAgICAgICAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgw
LCAwLjUpLAorICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIF0sCiAgICAgICAgIH0KICAg
ICBdKTsKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFj
dGlvbi9pb3MvcmVzZWxlY3Qtd29yZC1pbi1pbWFnZS1vdmVybGF5Lmh0bWwgYi9MYXlvdXRUZXN0
cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2lvcy9yZXNlbGVjdC13b3JkLWluLWltYWdl
LW92ZXJsYXkuaHRtbAppbmRleCA1NDVjZTU1N2Q4ZDBhZGRjZmQxZjk3YTA5NGQ3MTM5MzBhZmQz
NGY5Li40ODUwMmNmNDU1NmY4NjI2NTNmZmVhZjZhNzdiZmEyZTAwMTc0MDQwIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2lvcy9yZXNlbGVjdC13
b3JkLWluLWltYWdlLW92ZXJsYXkuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9p
bWFnZS1leHRyYWN0aW9uL2lvcy9yZXNlbGVjdC13b3JkLWluLWltYWdlLW92ZXJsYXkuaHRtbApA
QCAtMTksMTEgKzE5LDE5IEBAIGFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBhc3luYyAoKSA9PiB7
CiAgICAgbGV0IGltYWdlID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaW1nIik7CiAgICAgaW50
ZXJuYWxzLmluc3RhbGxJbWFnZU92ZXJsYXkoaW1hZ2UsIFsKICAgICAgICAgewotICAgICAgICAg
ICAgdGV4dCA6ICJmb28iLAogICAgICAgICAgICAgdG9wTGVmdCA6IG5ldyBET01Qb2ludFJlYWRP
bmx5KDAsIDApLAogICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgx
LCAwKSwKICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwg
MC41KSwKICAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAw
LjUpLAorICAgICAgICAgICAgY2hpbGRyZW46IFsKKyAgICAgICAgICAgICAgICB7CisgICAgICAg
ICAgICAgICAgICAgIHRleHQgOiAiZm9vIiwKKyAgICAgICAgICAgICAgICAgICAgdG9wTGVmdCA6
IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDApLAorICAgICAgICAgICAgICAgICAgICB0b3BSaWdo
dCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDApLAorICAgICAgICAgICAgICAgICAgICBib3R0
b21SaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDAuNSksCisgICAgICAgICAgICAgICAg
ICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwLjUpLAorICAgICAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgIF0sCiAgICAgICAgIH0KICAgICBdKTsKICAgICBhd2FpdCBV
SUhlbHBlci5sb25nUHJlc3NBdFBvaW50KDIwMCwgMTAwKTsKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vaW9zL3NlbGVjdC13b3JkLWluLWltYWdl
LW92ZXJsYXktaW5zaWRlLWxpbmsuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdl
LWV4dHJhY3Rpb24vaW9zL3NlbGVjdC13b3JkLWluLWltYWdlLW92ZXJsYXktaW5zaWRlLWxpbmsu
aHRtbAppbmRleCA0YzVhZjk0ODI0MDgwM2Q5NmVlNGExZmIyNzcxOTE1ODcxZGIxNDIxLi5mOGY0
NmM5ZDU5NDI4NjVmZTYwODhjNWQ1Nzc5ZWY0MjNiMTZkZjAwIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2lvcy9zZWxlY3Qtd29yZC1pbi1pbWFn
ZS1vdmVybGF5LWluc2lkZS1saW5rLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMv
aW1hZ2UtZXh0cmFjdGlvbi9pb3Mvc2VsZWN0LXdvcmQtaW4taW1hZ2Utb3ZlcmxheS1pbnNpZGUt
bGluay5odG1sCkBAIC0yNSwxMSArMjUsMTkgQEAgYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIGFz
eW5jICgpID0+IHsKICAgICBsZXQgaW1hZ2UgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJpbWci
KTsKICAgICBpbnRlcm5hbHMuaW5zdGFsbEltYWdlT3ZlcmxheShpbWFnZSwgWwogICAgICAgICB7
Ci0gICAgICAgICAgICB0ZXh0IDogImhlbGxvIiwKICAgICAgICAgICAgIHRvcExlZnQgOiBuZXcg
RE9NUG9pbnRSZWFkT25seSgwLCAwKSwKICAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBv
aW50UmVhZE9ubHkoMSwgMCksCiAgICAgICAgICAgICBib3R0b21SaWdodCA6IG5ldyBET01Qb2lu
dFJlYWRPbmx5KDEsIDAuMjUpLAogICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2lu
dFJlYWRPbmx5KDAsIDAuMjUpLAorICAgICAgICAgICAgY2hpbGRyZW46IFsKKyAgICAgICAgICAg
ICAgICB7CisgICAgICAgICAgICAgICAgICAgIHRleHQgOiAiaGVsbG8iLAorICAgICAgICAgICAg
ICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMCksCisgICAgICAgICAg
ICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMCksCisgICAgICAg
ICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC4yNSks
CisgICAgICAgICAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgw
LCAwLjI1KSwKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICBdLAogICAgICAgICB9CiAg
ICAgXSk7CiAgICAgYXdhaXQgVUlIZWxwZXIubG9uZ1ByZXNzQXRQb2ludCgyMDAsIDUwKTsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vaW9zL3Nl
bGVjdC13b3JkLWluLWltYWdlLW92ZXJsYXkuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2Vz
L2ltYWdlLWV4dHJhY3Rpb24vaW9zL3NlbGVjdC13b3JkLWluLWltYWdlLW92ZXJsYXkuaHRtbApp
bmRleCA3MDg5NGY1N2U2OTkwYmQ0NDJjMDFiYWYxMjlmYzEyOGUxODdjYTQ0Li5jMTYyMzdjYzg1
ZDEyNGVkNjExNjJjYTc5Mzg0OTliNTM1NGM5Y2Y2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9m
YXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2lvcy9zZWxlY3Qtd29yZC1pbi1pbWFnZS1vdmVy
bGF5Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9p
b3Mvc2VsZWN0LXdvcmQtaW4taW1hZ2Utb3ZlcmxheS5odG1sCkBAIC0xOSwyMCArMTksMzcgQEAg
YWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIGFzeW5jICgpID0+IHsKICAgICBsZXQgaW1hZ2UgPSBk
b2N1bWVudC5xdWVyeVNlbGVjdG9yKCJpbWciKTsKICAgICBpbnRlcm5hbHMuaW5zdGFsbEltYWdl
T3ZlcmxheShpbWFnZSwgWwogICAgICAgICB7Ci0gICAgICAgICAgICB0ZXh0IDogImhlbGxvIiwK
ICAgICAgICAgICAgIHRvcExlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwKSwKICAgICAg
ICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMCksCiAgICAgICAgICAg
ICBib3R0b21SaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDAuNSksCiAgICAgICAgICAg
ICBib3R0b21MZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMC41KSwKKyAgICAgICAgICAg
IGNoaWxkcmVuOiBbCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICB0ZXh0
IDogImhlbGxvIiwKKyAgICAgICAgICAgICAgICAgICAgdG9wTGVmdCA6IG5ldyBET01Qb2ludFJl
YWRPbmx5KDAsIDApLAorICAgICAgICAgICAgICAgICAgICB0b3BSaWdodCA6IG5ldyBET01Qb2lu
dFJlYWRPbmx5KDEsIDApLAorICAgICAgICAgICAgICAgICAgICBib3R0b21SaWdodCA6IG5ldyBE
T01Qb2ludFJlYWRPbmx5KDEsIDAuNSksCisgICAgICAgICAgICAgICAgICAgIGJvdHRvbUxlZnQg
OiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwLjUpLAorICAgICAgICAgICAgICAgIH0KKyAgICAg
ICAgICAgIF0sCiAgICAgICAgIH0sCiAgICAgICAgIHsKLSAgICAgICAgICAgIHRleHQgOiAid29y
bGQiLAogICAgICAgICAgICAgdG9wTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDAuNSks
CiAgICAgICAgICAgICB0b3BSaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDAuNSksCiAg
ICAgICAgICAgICBib3R0b21SaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDEpLAogICAg
ICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDEpLAotICAgICAg
ICB9LAorICAgICAgICAgICAgY2hpbGRyZW46IFsKKyAgICAgICAgICAgICAgICB7CisgICAgICAg
ICAgICAgICAgICAgIHRleHQgOiAid29ybGQiLAorICAgICAgICAgICAgICAgICAgICB0b3BMZWZ0
IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMC41KSwKKyAgICAgICAgICAgICAgICAgICAgdG9w
UmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwLjUpLAorICAgICAgICAgICAgICAgICAg
ICBib3R0b21SaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDEpLAorICAgICAgICAgICAg
ICAgICAgICBib3R0b21MZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMSksCisgICAgICAg
ICAgICAgICAgfQorICAgICAgICAgICAgXSwKKyAgICAgICAgfQogICAgIF0pOworCiAgICAgYXdh
aXQgVUlIZWxwZXIubG9uZ1ByZXNzQXRQb2ludCgyMDAsIDMwMCk7CiAgICAgc2VsZWN0aW9uUmVj
dHMgPSBhd2FpdCBVSUhlbHBlci53YWl0Rm9yU2VsZWN0aW9uVG9BcHBlYXIoKTsKICAgICBzaG91
bGRCZSgic2VsZWN0aW9uUmVjdHMubGVuZ3RoIiwgIjEiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vaW9zL3NlbGVjdGlvbi1yZWN0cy1pbi1p
bWFnZS1vdmVybGF5Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0
aW9uL2lvcy9zZWxlY3Rpb24tcmVjdHMtaW4taW1hZ2Utb3ZlcmxheS5odG1sCmluZGV4IGZhOTA3
OWY0ZGVhZDZjODhiMzdmZDUyMzgxN2QwMWYzN2Q5NzBiY2IuLmM0N2I1MzRmZjBkM2RmYjU5M2Zi
MGUwOWQ3MjUyODRlMDJlMmQ0MmYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2Vz
L2ltYWdlLWV4dHJhY3Rpb24vaW9zL3NlbGVjdGlvbi1yZWN0cy1pbi1pbWFnZS1vdmVybGF5Lmh0
bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9pb3Mvc2Vs
ZWN0aW9uLXJlY3RzLWluLWltYWdlLW92ZXJsYXkuaHRtbApAQCAtMjAsMzIgKzIwLDY0IEBAIGFk
ZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBhc3luYyAoKSA9PiB7CiAgICAgbGV0IGltYWdlID0gZG9j
dW1lbnQucXVlcnlTZWxlY3RvcigiaW1nIik7CiAgICAgaW50ZXJuYWxzLmluc3RhbGxJbWFnZU92
ZXJsYXkoaW1hZ2UsIFsKICAgICAgICAgewotICAgICAgICAgICAgdGV4dDogIm9uZSIsCi0gICAg
ICAgICAgICB0b3BMZWZ0OiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjEsIDAuMjUpLAotICAgICAg
ICAgICAgdG9wUmlnaHQ6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuMjUsIDAuMSksCi0gICAgICAg
ICAgICBib3R0b21SaWdodDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC4zNSwgMC4yKSwKLSAgICAg
ICAgICAgIGJvdHRvbUxlZnQ6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuMiwgMC4zNSkKKyAgICAg
ICAgICAgIHRvcExlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjEsIDAuMjUpLAorICAgICAg
ICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjI1LCAwLjEpLAorICAgICAg
ICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjM1LCAwLjIpLAorICAg
ICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuMiwgMC4zNSksCisg
ICAgICAgICAgICBjaGlsZHJlbjogWworICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ICAgICAgdGV4dCA6ICJvbmUiLAorICAgICAgICAgICAgICAgICAgICB0b3BMZWZ0IDogbmV3IERP
TVBvaW50UmVhZE9ubHkoMC4xLCAwLjI1KSwKKyAgICAgICAgICAgICAgICAgICAgdG9wUmlnaHQg
OiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjI1LCAwLjEpLAorICAgICAgICAgICAgICAgICAgICBi
b3R0b21SaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuMzUsIDAuMiksCisgICAgICAgICAg
ICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjIsIDAuMzUpLAor
ICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIF0sCiAgICAgICAgIH0sCiAgICAgICAgIHsK
LSAgICAgICAgICAgIHRleHQ6ICJ0d28iLAotICAgICAgICAgICAgdG9wTGVmdDogbmV3IERPTVBv
aW50UmVhZE9ubHkoMC4zLCAwLjQ1KSwKLSAgICAgICAgICAgIHRvcFJpZ2h0OiBuZXcgRE9NUG9p
bnRSZWFkT25seSgwLjQ1LCAwLjMpLAotICAgICAgICAgICAgYm90dG9tUmlnaHQ6IG5ldyBET01Q
b2ludFJlYWRPbmx5KDAuNTUsIDAuNCksCi0gICAgICAgICAgICBib3R0b21MZWZ0OiBuZXcgRE9N
UG9pbnRSZWFkT25seSgwLjQsIDAuNTUpCisgICAgICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBv
aW50UmVhZE9ubHkoMC4zLCAwLjQ1KSwKKyAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBv
aW50UmVhZE9ubHkoMC40NSwgMC4zKSwKKyAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERP
TVBvaW50UmVhZE9ubHkoMC41NSwgMC40KSwKKyAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcg
RE9NUG9pbnRSZWFkT25seSgwLjQsIDAuNTUpLAorICAgICAgICAgICAgY2hpbGRyZW46IFsKKyAg
ICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHRleHQgOiAidHdvIiwKKyAgICAg
ICAgICAgICAgICAgICAgdG9wTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuMywgMC40NSks
CisgICAgICAgICAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC40
NSwgMC4zKSwKKyAgICAgICAgICAgICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRS
ZWFkT25seSgwLjU1LCAwLjQpLAorICAgICAgICAgICAgICAgICAgICBib3R0b21MZWZ0IDogbmV3
IERPTVBvaW50UmVhZE9ubHkoMC40LCAwLjU1KSwKKyAgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgICBdLAogICAgICAgICB9LAogICAgICAgICB7Ci0gICAgICAgICAgICB0ZXh0OiAidGhyZWUi
LAotICAgICAgICAgICAgdG9wTGVmdDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC41LCAwLjY1KSwK
LSAgICAgICAgICAgIHRvcFJpZ2h0OiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjY1LCAwLjUpLAot
ICAgICAgICAgICAgYm90dG9tUmlnaHQ6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuNzUsIDAuNiks
Ci0gICAgICAgICAgICBib3R0b21MZWZ0OiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjYsIDAuNzUp
CisgICAgICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC41LCAwLjY1KSwK
KyAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC42NSwgMC41KSwK
KyAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC43NSwgMC42
KSwKKyAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjYsIDAu
NzUpLAorICAgICAgICAgICAgY2hpbGRyZW46IFsKKyAgICAgICAgICAgICAgICB7CisgICAgICAg
ICAgICAgICAgICAgIHRleHQgOiAidGhyZWUiLAorICAgICAgICAgICAgICAgICAgICB0b3BMZWZ0
IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC41LCAwLjY1KSwKKyAgICAgICAgICAgICAgICAgICAg
dG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjY1LCAwLjUpLAorICAgICAgICAgICAg
ICAgICAgICBib3R0b21SaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuNzUsIDAuNiksCisg
ICAgICAgICAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjYs
IDAuNzUpLAorICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIF0sCiAgICAgICAgIH0sCiAg
ICAgICAgIHsKLSAgICAgICAgICAgIHRleHQ6ICJmb3VyIiwKLSAgICAgICAgICAgIHRvcExlZnQ6
IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuNywgMC44NSksCi0gICAgICAgICAgICB0b3BSaWdodDog
bmV3IERPTVBvaW50UmVhZE9ubHkoMC44NSwgMC43KSwKLSAgICAgICAgICAgIGJvdHRvbVJpZ2h0
OiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjk1LCAwLjgpLAotICAgICAgICAgICAgYm90dG9tTGVm
dDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC44LCAwLjk1KQorICAgICAgICAgICAgdG9wTGVmdCA6
IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuNywgMC44NSksCisgICAgICAgICAgICB0b3BSaWdodCA6
IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuODUsIDAuNyksCisgICAgICAgICAgICBib3R0b21SaWdo
dCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuOTUsIDAuOCksCisgICAgICAgICAgICBib3R0b21M
ZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC44LCAwLjk1KSwKKyAgICAgICAgICAgIGNoaWxk
cmVuOiBbCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICB0ZXh0IDogImZv
dXIiLAorICAgICAgICAgICAgICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHko
MC43LCAwLjg1KSwKKyAgICAgICAgICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRS
ZWFkT25seSgwLjg1LCAwLjcpLAorICAgICAgICAgICAgICAgICAgICBib3R0b21SaWdodCA6IG5l
dyBET01Qb2ludFJlYWRPbmx5KDAuOTUsIDAuOCksCisgICAgICAgICAgICAgICAgICAgIGJvdHRv
bUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjgsIDAuOTUpLAorICAgICAgICAgICAgICAg
IH0KKyAgICAgICAgICAgIF0sCiAgICAgICAgIH0KICAgICBdKTsKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9tYWMvY29weS1pbWFnZS1vdmVy
bGF5LXRleHQtd2l0aC1jb250ZXh0LW1lbnUuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2Vz
L2ltYWdlLWV4dHJhY3Rpb24vbWFjL2NvcHktaW1hZ2Utb3ZlcmxheS10ZXh0LXdpdGgtY29udGV4
dC1tZW51Lmh0bWwKaW5kZXggNDA1MjllYzQ1OGYxNTQwODIwY2YzNmM1ZWNkMDk0YmU1NjYyNjMz
Yi4uNGIxZmQ4MWUyM2ExZTIzY2RmMzEwMmVlMzg3OThjMTMyM2YzNDhkMiAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9tYWMvY29weS1pbWFnZS1v
dmVybGF5LXRleHQtd2l0aC1jb250ZXh0LW1lbnUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0
L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL21hYy9jb3B5LWltYWdlLW92ZXJsYXktdGV4dC13aXRo
LWNvbnRleHQtbWVudS5odG1sCkBAIC0yMCwxMyArMjAsMjMgQEAgZGl2W2NvbnRlbnRlZGl0YWJs
ZV0gewogPHNjcmlwdD4KIGFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCAoKSA9PiB7CiAgICAgbGV0
IGltYWdlID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaW1nIik7Ci0gICAgaW50ZXJuYWxzLmlu
c3RhbGxJbWFnZU92ZXJsYXkoaW1hZ2UsIFt7Ci0gICAgICAgIHRleHQgOiAiZm9vYmFyIiwKLSAg
ICAgICAgdG9wTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDApLAotICAgICAgICB0b3BS
aWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDApLAotICAgICAgICBib3R0b21SaWdodCA6
IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDAuNSksCi0gICAgICAgIGJvdHRvbUxlZnQgOiBuZXcg
RE9NUG9pbnRSZWFkT25seSgwLCAwLjUpLAotICAgIH1dKTsKKyAgICBpbnRlcm5hbHMuaW5zdGFs
bEltYWdlT3ZlcmxheShpbWFnZSwgWworICAgICAgICB7CisgICAgICAgICAgICB0b3BMZWZ0IDog
bmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMCksCisgICAgICAgICAgICB0b3BSaWdodCA6IG5ldyBE
T01Qb2ludFJlYWRPbmx5KDEsIDApLAorICAgICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9N
UG9pbnRSZWFkT25seSgxLCAwLjUpLAorICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Q
b2ludFJlYWRPbmx5KDAsIDAuNSksCisgICAgICAgICAgICBjaGlsZHJlbjogWworICAgICAgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdGV4dCA6ICJmb29iYXIiLAorICAgICAgICAg
ICAgICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMCksCisgICAgICAg
ICAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMCksCisgICAg
ICAgICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41
KSwKKyAgICAgICAgICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5
KDAsIDAuNSksCisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgXQorICAgICAgICB9Cisg
ICAgXSk7CiAKICAgICBldmVudFNlbmRlci5tb3VzZU1vdmVUbyg1MCwgMTUwKTsKIApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9tYWMvc2VsZWN0
LWltYWdlLW92ZXJsYXktaW4tbGluay13aXRoLW1vdXNlLWRyYWcuaHRtbCBiL0xheW91dFRlc3Rz
L2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vbWFjL3NlbGVjdC1pbWFnZS1vdmVybGF5LWlu
LWxpbmstd2l0aC1tb3VzZS1kcmFnLmh0bWwKaW5kZXggZDg3NzI0YWE4NmNhZTAwOTVmZDdlYjI1
NTM1MzUwOTRhZjQ5NWI1NC4uOWE0ZWRjODkwNGFhMTdiODg3ODViMjc4N2M0NGE3MzkxNzE3MzY3
NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9t
YWMvc2VsZWN0LWltYWdlLW92ZXJsYXktaW4tbGluay13aXRoLW1vdXNlLWRyYWcuaHRtbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL21hYy9zZWxlY3QtaW1h
Z2Utb3ZlcmxheS1pbi1saW5rLXdpdGgtbW91c2UtZHJhZy5odG1sCkBAIC0xNywxMyArMTcsMjMg
QEAgaW1nIHsKIDxzY3JpcHQ+CiBhZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgKCkgPT4gewogICAg
IGxldCBpbWFnZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImltZyIpOwotICAgIGludGVybmFs
cy5pbnN0YWxsSW1hZ2VPdmVybGF5KGltYWdlLCBbewotICAgICAgICB0ZXh0IDogImhlbGxvIiwK
LSAgICAgICAgdG9wTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDAuNSksCi0gICAgICAg
IHRvcFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwKLSAgICAgICAgYm90dG9t
UmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAxKSwKLSAgICAgICAgYm90dG9tTGVmdCA6
IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDEpLAotICAgIH1dKTsKKyAgICBpbnRlcm5hbHMuaW5z
dGFsbEltYWdlT3ZlcmxheShpbWFnZSwgWworICAgICAgICB7CisgICAgICAgICAgICB0b3BMZWZ0
IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMC41KSwKKyAgICAgICAgICAgIHRvcFJpZ2h0IDog
bmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwKKyAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDog
bmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMSksCisgICAgICAgICAgICBib3R0b21MZWZ0IDogbmV3
IERPTVBvaW50UmVhZE9ubHkoMCwgMSksCisgICAgICAgICAgICBjaGlsZHJlbjogWworICAgICAg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdGV4dCA6ICJoZWxsbyIsCisgICAgICAg
ICAgICAgICAgICAgIHRvcExlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwLjUpLAorICAg
ICAgICAgICAgICAgICAgICB0b3BSaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDAuNSks
CisgICAgICAgICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHko
MSwgMSksCisgICAgICAgICAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFk
T25seSgwLCAxKSwKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICBdCisgICAgICAgIH0K
KyAgICBdKTsKIAogICAgIGltYWdlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgZXZlbnQgPT4g
ewogICAgICAgICB0ZXN0RmFpbGVkKCJPYnNlcnZlZCBjbGljay4iKTsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vbWFjL3NlbGVjdC1pbWFnZS1v
dmVybGF5LXdpdGgtbW91c2UtZHJhZy1kb2VzLW5vdC1maXJlLWNsaWNrLmh0bWwgYi9MYXlvdXRU
ZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL21hYy9zZWxlY3QtaW1hZ2Utb3Zlcmxh
eS13aXRoLW1vdXNlLWRyYWctZG9lcy1ub3QtZmlyZS1jbGljay5odG1sCmluZGV4IGNjMmE4Mjll
NGQ1OTM0OGRmYzk1NWI2NWQxNDE3NzBkZGU3MTg4MTIuLmExODczYzk4MTkyMzIzYzMxMTAzMjBj
YmQzZWViZThmMGYzMmJhMjEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2lt
YWdlLWV4dHJhY3Rpb24vbWFjL3NlbGVjdC1pbWFnZS1vdmVybGF5LXdpdGgtbW91c2UtZHJhZy1k
b2VzLW5vdC1maXJlLWNsaWNrLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1h
Z2UtZXh0cmFjdGlvbi9tYWMvc2VsZWN0LWltYWdlLW92ZXJsYXktd2l0aC1tb3VzZS1kcmFnLWRv
ZXMtbm90LWZpcmUtY2xpY2suaHRtbApAQCAtMTUsMTMgKzE1LDIzIEBAIGltZyB7CiA8c2NyaXB0
PgogYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsICgpID0+IHsKICAgICBsZXQgaW1hZ2UgPSBkb2N1
bWVudC5xdWVyeVNlbGVjdG9yKCJpbWciKTsKLSAgICBpbnRlcm5hbHMuaW5zdGFsbEltYWdlT3Zl
cmxheShpbWFnZSwgW3sKLSAgICAgICAgdGV4dCA6ICJoZWxsbyIsCi0gICAgICAgIHRvcExlZnQg
OiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwLjUpLAotICAgICAgICB0b3BSaWdodCA6IG5ldyBE
T01Qb2ludFJlYWRPbmx5KDEsIDAuNSksCi0gICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBv
aW50UmVhZE9ubHkoMSwgMSksCi0gICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFk
T25seSgwLCAxKSwKLSAgICB9XSk7CisgICAgaW50ZXJuYWxzLmluc3RhbGxJbWFnZU92ZXJsYXko
aW1hZ2UsIFsKKyAgICAgICAgeworICAgICAgICAgICAgdG9wTGVmdCA6IG5ldyBET01Qb2ludFJl
YWRPbmx5KDAsIDAuNSksCisgICAgICAgICAgICB0b3BSaWdodCA6IG5ldyBET01Qb2ludFJlYWRP
bmx5KDEsIDAuNSksCisgICAgICAgICAgICBib3R0b21SaWdodCA6IG5ldyBET01Qb2ludFJlYWRP
bmx5KDEsIDEpLAorICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5
KDAsIDEpLAorICAgICAgICAgICAgY2hpbGRyZW46IFsKKyAgICAgICAgICAgICAgICB7CisgICAg
ICAgICAgICAgICAgICAgIHRleHQgOiAiaGVsbG8iLAorICAgICAgICAgICAgICAgICAgICB0b3BM
ZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMC41KSwKKyAgICAgICAgICAgICAgICAgICAg
dG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwLjUpLAorICAgICAgICAgICAgICAg
ICAgICBib3R0b21SaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDEpLAorICAgICAgICAg
ICAgICAgICAgICBib3R0b21MZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMSksCisgICAg
ICAgICAgICAgICAgfQorICAgICAgICAgICAgXQorICAgICAgICB9CisgICAgXSk7CiAKICAgICBp
bWFnZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsIGV2ZW50ID0+IHsKICAgICAgICAgdGVzdEZh
aWxlZCgiT2JzZXJ2ZWQgY2xpY2suIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2lt
YWdlcy9pbWFnZS1leHRyYWN0aW9uL21hYy9zZWxlY3QtaW1hZ2Utb3ZlcmxheS13aXRoLW1vdXNl
LWRyYWcuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vbWFj
L3NlbGVjdC1pbWFnZS1vdmVybGF5LXdpdGgtbW91c2UtZHJhZy5odG1sCmluZGV4IDEyYjM2MGE5
OGI5ZGE1ZDc1YmVkZWZmNWQyMzI1YWMzNjkwZGE2MTMuLjI1NGMzNjA2YWQ0OWNhYjQ2NTRmODhh
ZTllZjE0YTgzYTJhOWVmYjcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2lt
YWdlLWV4dHJhY3Rpb24vbWFjL3NlbGVjdC1pbWFnZS1vdmVybGF5LXdpdGgtbW91c2UtZHJhZy5o
dG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vbWFjL3Nl
bGVjdC1pbWFnZS1vdmVybGF5LXdpdGgtbW91c2UtZHJhZy5odG1sCkBAIC0xNCwxMyArMTQsMjMg
QEAgaW1nIHsKIDxzY3JpcHQ+CiBhZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgKCkgPT4gewogICAg
IGxldCBpbWFnZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImltZyIpOwotICAgIGludGVybmFs
cy5pbnN0YWxsSW1hZ2VPdmVybGF5KGltYWdlLCBbewotICAgICAgICB0ZXh0IDogImhlbGxvIiwK
LSAgICAgICAgdG9wTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDAuNSksCi0gICAgICAg
IHRvcFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwKLSAgICAgICAgYm90dG9t
UmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAxKSwKLSAgICAgICAgYm90dG9tTGVmdCA6
IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDEpLAotICAgIH1dKTsKKyAgICBpbnRlcm5hbHMuaW5z
dGFsbEltYWdlT3ZlcmxheShpbWFnZSwgWworICAgICAgICB7CisgICAgICAgICAgICB0b3BMZWZ0
IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMC41KSwKKyAgICAgICAgICAgIHRvcFJpZ2h0IDog
bmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwKKyAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDog
bmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMSksCisgICAgICAgICAgICBib3R0b21MZWZ0IDogbmV3
IERPTVBvaW50UmVhZE9ubHkoMCwgMSksCisgICAgICAgICAgICBjaGlsZHJlbjogWworICAgICAg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdGV4dCA6ICJoZWxsbyIsCisgICAgICAg
ICAgICAgICAgICAgIHRvcExlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwLjUpLAorICAg
ICAgICAgICAgICAgICAgICB0b3BSaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDAuNSks
CisgICAgICAgICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHko
MSwgMSksCisgICAgICAgICAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFk
T25seSgwLCAxKSwKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICBdCisgICAgICAgIH0K
KyAgICBdKTsKIAogICAgIGV2ZW50U2VuZGVyLm1vdXNlTW92ZVRvKDUwLCAzMDApOwogICAgIGV2
ZW50U2VuZGVyLm1vdXNlRG93bigpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9pbWFn
ZXMvaW1hZ2UtZXh0cmFjdGlvbi9tYWMvc2VsZWN0LXdvcmQtaW4tZHJhZ2dhYmxlLWltYWdlLW92
ZXJsYXkuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vbWFj
L3NlbGVjdC13b3JkLWluLWRyYWdnYWJsZS1pbWFnZS1vdmVybGF5Lmh0bWwKaW5kZXggODMwMzIz
ODczZGU3MGY0NzJkZDU4YzJmNTJhMjllY2E4NWMzYTFjMy4uN2UzYTAxMWQzOGM0MTVmMWMyN2M1
N2ZiMzc0NDExZDU3ODFiNmQ0ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMv
aW1hZ2UtZXh0cmFjdGlvbi9tYWMvc2VsZWN0LXdvcmQtaW4tZHJhZ2dhYmxlLWltYWdlLW92ZXJs
YXkuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL21h
Yy9zZWxlY3Qtd29yZC1pbi1kcmFnZ2FibGUtaW1hZ2Utb3ZlcmxheS5odG1sCkBAIC0xNiwxMSAr
MTYsMTkgQEAgYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsICgpID0+IHsKICAgICBjb25zdCBpbWFn
ZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImltZyIpOwogICAgIGludGVybmFscy5pbnN0YWxs
SW1hZ2VPdmVybGF5KGltYWdlLCBbCiAgICAgICAgIHsKLSAgICAgICAgICAgIHRleHQgOiAiaGVs
bG8iLAogICAgICAgICAgICAgdG9wTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDApLAog
ICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwKSwKICAgICAg
ICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwKICAgICAg
ICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwLjUpLAorICAgICAg
ICAgICAgY2hpbGRyZW46IFsKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAg
IHRleHQgOiAiaGVsbG8iLAorICAgICAgICAgICAgICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBv
aW50UmVhZE9ubHkoMCwgMCksCisgICAgICAgICAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERP
TVBvaW50UmVhZE9ubHkoMSwgMCksCisgICAgICAgICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDog
bmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwKKyAgICAgICAgICAgICAgICAgICAgYm90dG9t
TGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDAuNSksCisgICAgICAgICAgICAgICAgfQor
ICAgICAgICAgICAgXQogICAgICAgICB9CiAgICAgXSk7CiAKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vbWFjL3NlbGVjdC13b3JkLWluLXRyYW5z
cGFyZW50LWltYWdlLW92ZXJsYXkuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdl
LWV4dHJhY3Rpb24vbWFjL3NlbGVjdC13b3JkLWluLXRyYW5zcGFyZW50LWltYWdlLW92ZXJsYXku
aHRtbAppbmRleCA4ZjJkOTJmMjExZmU5MDc4ZjgxYTE4M2ExYjA1NzhhZTE0ZDIwMjk5Li4xMjEw
ZDJkOTdjZjBiNzg5YWE0NzZhZTQ0MzJmMDM4NDlhYTMxN2NkIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL21hYy9zZWxlY3Qtd29yZC1pbi10cmFu
c3BhcmVudC1pbWFnZS1vdmVybGF5Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMv
aW1hZ2UtZXh0cmFjdGlvbi9tYWMvc2VsZWN0LXdvcmQtaW4tdHJhbnNwYXJlbnQtaW1hZ2Utb3Zl
cmxheS5odG1sCkBAIC0zMiwxMSArMzIsMTkgQEAgYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsICgp
ID0+IHsKICAgICBsZXQgaW1hZ2UgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJpbWciKTsKICAg
ICBpbnRlcm5hbHMuaW5zdGFsbEltYWdlT3ZlcmxheShpbWFnZSwgWwogICAgICAgICB7Ci0gICAg
ICAgICAgICB0ZXh0IDogImhlbGxvIiwKICAgICAgICAgICAgIHRvcExlZnQgOiBuZXcgRE9NUG9p
bnRSZWFkT25seSgwLCAwKSwKICAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBvaW50UmVh
ZE9ubHkoMSwgMCksCiAgICAgICAgICAgICBib3R0b21SaWdodCA6IG5ldyBET01Qb2ludFJlYWRP
bmx5KDEsIDAuNSksCiAgICAgICAgICAgICBib3R0b21MZWZ0IDogbmV3IERPTVBvaW50UmVhZE9u
bHkoMCwgMC41KSwKKyAgICAgICAgICAgIGNoaWxkcmVuOiBbCisgICAgICAgICAgICAgICAgewor
ICAgICAgICAgICAgICAgICAgICB0ZXh0IDogImhlbGxvIiwKKyAgICAgICAgICAgICAgICAgICAg
dG9wTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDApLAorICAgICAgICAgICAgICAgICAg
ICB0b3BSaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDApLAorICAgICAgICAgICAgICAg
ICAgICBib3R0b21SaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDAuNSksCisgICAgICAg
ICAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwLjUpLAor
ICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIF0KICAgICAgICAgfQogICAgIF0pOwogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>427107</attachid>
            <date>2021-04-26 17:01:55 -0700</date>
            <delta_ts>2021-04-26 17:02:22 -0700</delta_ts>
            <desc>For EWS</desc>
            <filename>bug-225038-20210426170154.patch</filename>
            <type>text/plain</type>
            <size>62700</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc2NjAyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjVmOGIwOWZhMTdjM2Fl
YzhhYTE2NWRkZDNkZWJlMGQ5NTI0MTQ2Yy4uNmExYThjMzAxNDk5ODI3ZThmZmY5OGI5YmFlOTky
YzBmMTU3ZTk0MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDgxIEBACisyMDIxLTA0LTI2ICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIFN1YmRpdmlkZSBp
bWFnZSBvdmVybGF5IHRleHQgaW50byBvbmUgb3IgbW9yZSBlbGVtZW50cyBwZXIgbGluZQorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1MDM4CisgICAg
ICAgIHJkYXI6Ly83NTUwNTA0MworCisgICAgICAgIFJldmlld2VkIGJ5IFRpbSBIb3J0b24gYW5k
IERldmluIFJvdXNzby4KKworICAgICAgICBSZWZhY3RvciBzb21lIGltYWdlIGV4dHJhY3Rpb24g
YW5kIGltYWdlIG92ZXJsYXkgY29kZSB0byBhbGxvdyBmb3IgbXVsdGlwbGUgZWxlbWVudHMgY29u
dGFpbmluZyB0ZXh0IHBlciBsaW5lLgorICAgICAgICBTZWUgY29tbWVudHMgYmVsb3cgZm9yIG1v
cmUgZGV0YWlscy4KKworICAgICAgICBDaGFuZ2VzIGNvdmVyZWQgYnkgYXVnbWVudGluZyBleGlz
dGluZyBsYXlvdXQgdGVzdHMuCisKKyAgICAgICAgKiBodG1sL0hUTUxFbGVtZW50LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkhUTUxFbGVtZW50Ojp1cGRhdGVXaXRoSW1hZ2VFeHRyYWN0aW9uUmVz
dWx0KToKKworICAgICAgICBUaGUgY3J1eCBvZiB0aGlzIGNoYW5nZSBpcyBpbiB0aGlzIG1ldGhv
ZC4gQ3VycmVudGx5LCBhbiBpbWFnZSBvdmVybGF5IGhhcyBvbmUgb3IgbW9yZSBgZGl2YCBlbGVt
ZW50cyB1bmRlcm5lYXRoCisgICAgICAgIHRoZSByb290IGNvbnRhaW5lciBlbGVtZW50LCBlYWNo
IG9mIHdoaWNoIHJlcHJlc2VudHMgYSBzaW5nbGUgbGluZSAoaS5lLiBjb250YWlucyBhIHRleHQg
bm9kZSBhbmQgYSBsaW5lIGJyZWFrKS4KKyAgICAgICAgSW5zdGVhZCwgd2UgbWFrZSBlYWNoIG9m
IHRoZXNlIGxpbmUgY29udGFpbmVyIGBkaXZgcyBjb250YWluIG9uZSBvciBtb3JlIGBkaXZgIGVs
ZW1lbnRzIHRoYXQgcmVwcmVzZW50IGZ1cnRoZXIKKyAgICAgICAgc3ViZGl2aWRlZCB0ZXh0IHdp
dGhpbiBlYWNoIGxpbmUuCisKKyAgICAgICAgU2VlIHRoZSBjb3JyZXNwb25kaW5nIGFkZGl0aW9u
cyBwYXRjaCBmb3IgbW9yZSBkZXRhaWxzLgorCisgICAgICAgICogaHRtbC9zaGFkb3cvaW1hZ2VP
dmVybGF5LmNzczoKKyAgICAgICAgKGRpdiNpbWFnZS1vdmVybGF5KToKKyAgICAgICAgKGRpdi5p
bWFnZS1vdmVybGF5LWxpbmUsIC5pbWFnZS1vdmVybGF5LXRleHQpOgorICAgICAgICAoLmltYWdl
LW92ZXJsYXktdGV4dDo6c2VsZWN0aW9uKToKKworICAgICAgICBBZGp1c3QgVUEgc3R5bGVzaGVl
dCB0byBhY2NvdW50IGZvciB0aGUgY2hhbmdlcyBpbiBgdXBkYXRlV2l0aEltYWdlRXh0cmFjdGlv
blJlc3VsdGAuCisKKyAgICAgICAgKGRpdi5pbWFnZS1vdmVybGF5LXRleHQpOiBEZWxldGVkLgor
ICAgICAgICAoZGl2LmltYWdlLW92ZXJsYXktdGV4dDo6c2VsZWN0aW9uKTogRGVsZXRlZC4KKyAg
ICAgICAgKiBwbGF0Zm9ybS9JbWFnZUV4dHJhY3Rpb25SZXN1bHQuaDoKKyAgICAgICAgKFdlYkNv
cmU6OkltYWdlRXh0cmFjdGlvblRleHREYXRhOjpJbWFnZUV4dHJhY3Rpb25UZXh0RGF0YSk6Cisg
ICAgICAgIChXZWJDb3JlOjpJbWFnZUV4dHJhY3Rpb25MaW5lRGF0YTo6SW1hZ2VFeHRyYWN0aW9u
TGluZURhdGEpOgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2VFeHRyYWN0aW9uTGluZURhdGE6OmVu
Y29kZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpJbWFnZUV4dHJhY3Rpb25MaW5lRGF0YTo6
ZGVjb2RlKToKKworICAgICAgICBSZWZhY3RvciB0aGlzIGRhdGEgc3RydWN0dXJlLCBieSBzcGxp
dHRpbmcgaXQgaW50byBgSW1hZ2VFeHRyYWN0aW9uTGluZURhdGFgIGFuZCBgSW1hZ2VFeHRyYWN0
aW9uVGV4dERhdGFgLgorCisgICAgICAgIChXZWJDb3JlOjpJbWFnZUV4dHJhY3Rpb25SZXN1bHQ6
OmlzRW1wdHkgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2VFeHRyYWN0aW9uUmVzdWx0
OjplbmNvZGUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2VFeHRyYWN0aW9uUmVzdWx0
OjpkZWNvZGUpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0Zsb2F0UG9pbnQuaDoKKyAg
ICAgICAgKFdlYkNvcmU6OkZsb2F0UG9pbnQ6OnJvdGF0ZSk6CisKKyAgICAgICAgQWRkIGEgaGVs
cGVyIG1ldGhvZCB0byByb3RhdGUgYSAyRCBgRmxvYXRQb2ludGAgYnkgYSBnaXZlbiBhbmdsZSwg
YWJvdXQgYSBnaXZlbiBwb2ludC4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0dlb21l
dHJ5VXRpbGl0aWVzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnJvdGF0ZWRCb3VuZGluZ1JlY3RX
aXRoTWluaW11bUFuZ2xlT2ZSb3RhdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpyb3RhdGVkQm91
bmRpbmdSZWN0KTogRGVsZXRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9HZW9tZXRy
eVV0aWxpdGllcy5oOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OmdldFF1YWQpOgorICAgICAgICAoV2ViQ29yZTo6bWFrZURhdGFGb3JMaW5lKToK
KyAgICAgICAgKFdlYkNvcmU6OkludGVybmFsczo6aW5zdGFsbEltYWdlT3ZlcmxheSk6CisgICAg
ICAgICogdGVzdGluZy9JbnRlcm5hbHMuaDoKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5p
ZGw6CisKKyAgICAgICAgQWRqdXN0IHRoaXMgaW50ZXJuYWwgdGVzdGluZyBob29rIHRvIGFjY2Vw
dCBhIGxpc3Qgb2YgYEltYWdlT3ZlcmxheUxpbmVgIGRpY3Rpb25hcmllcywgZWFjaCBvZiB3aGlj
aCBjb250YWlucyBhCisgICAgICAgIGxpc3Qgb2YgYEltYWdlT3ZlcmxheVRleHRgIGRpY3Rpb25h
cmllcy4KKworMjAyMS0wNC0yNiAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNv
bT4KKworICAgICAgICBbaU9TXSBXZWIgY29udGVudCBwcm9jZXNzIG9jY2FzaW9uYWxseSBjcmFz
aGVzIHVuZGVyIFZpc2libGVTZWxlY3Rpb246OmFkanVzdFBvc2l0aW9uRm9yRW5kCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjUwNzIKKyAgICAgICAg
cmRhcjovLzc3MTU5NDg5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgTWFrZSBpdCBzYWZlIHRvIGNhbGwgYFBvc2l0aW9uOjp0cmVlU2NvcGUoKWAgd2l0
aCBhbiBvcnBoYW5lZCBwb3NpdGlvbiAoaS5lLiwgd2hvc2UgYW5jaG9yIG5vZGUgaXMgbm90IGlu
c2lkZSBhCisgICAgICAgIHRyZWUgc2NvcGUpLiBTZWUgV2ViS2l0L0NoYW5nZUxvZyBmb3IgbW9y
ZSBkZXRhaWxzLgorCisgICAgICAgIFRlc3Q6IGVkaXRpbmcvc2VsZWN0aW9uL2lvcy9jbGVhci1z
ZWxlY3Rpb24td2hpbGUtbW92aW5nLXNlbGVjdGlvbi1oYW5kbGVzLmh0bWwKKworICAgICAgICAq
IGRvbS9Qb3NpdGlvbi5oOgorICAgICAgICAoV2ViQ29yZTo6UG9zaXRpb246OnRyZWVTY29wZSBj
b25zdCk6CisKIDIwMjEtMDQtMjYgIEFsZXhleSBTaHZheWthICA8c2h2YWlrYWxlc2hAZ21haWwu
Y29tPgogCiAgICAgICAgIFtXZWJJRExdIFJlbW92ZSBbQ2FsbE5hbWVkU2V0dGVyT25seUZvclN1
cHBvcnRlZFByb3BlcnRpZXNdIGV4dGVuZGVkIGF0dHJpYnV0ZQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCA5MWVkOWNm
NTRjM2VjMmNhMTE1YTdhZTgxMWFiZjdmMThmOGJmMjU0Li5jZWVmOGJiODlkYWFmOTFkZDYwMGI0
YzhlMmIzZjEyNDM4YzI1NjFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwor
KysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDIxLTA0LTI2
ICBXZW5zb24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIFtpT1Nd
IFdlYiBjb250ZW50IHByb2Nlc3Mgb2NjYXNpb25hbGx5IGNyYXNoZXMgdW5kZXIgVmlzaWJsZVNl
bGVjdGlvbjo6YWRqdXN0UG9zaXRpb25Gb3JFbmQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNTA3MgorICAgICAgICByZGFyOi8vNzcxNTk0ODkKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBNYWtlIGByYW5n
ZUZvclBvaW50SW5Sb290Vmlld0Nvb3JkaW5hdGVzYCByb2J1c3QgaW4gdGhlIGNhc2Ugd2hlcmUg
dGhlIG9yaWdpbmFsIHNlbGVjdGlvbiBtYXkgaGF2ZSBiZWNvbWUKKyAgICAgICAgb3JwaGFuZWQg
b3IgbnVsbCwgYnkgY2hlY2tpbmcgdGhhdCB0aGUgYHRhcmdldE5vZGVgIGFuZCBleGlzdGluZyBg
c2VsZWN0aW9uU3RhcnRgIG9yIGBzZWxlY3Rpb25FbmRgIGFyZSBpbiBhCisgICAgICAgIHRyZWUg
c2NvcGUgYmVmb3JlIGFjY2Vzc2luZyBgdHJlZVNjb3BlKClgLgorCisgICAgICAgICogV2ViUHJv
Y2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tOgorICAgICAgICAoV2ViS2l0OjpyYW5nZUZv
clBvaW50SW5Sb290Vmlld0Nvb3JkaW5hdGVzKToKKwogMjAyMS0wNC0yNiAgQWRpdHlhIEtlZXJ0
aGkgIDxha2VlcnRoaUBhcHBsZS5jb20+CiAKICAgICAgICAgUkVHUkVTU0lPTiAocjI3MTg2MSk6
IFtpT1NdIEFjY2Vzc29yeSBiYXIgbmF2aWdhdGlvbiB0byBlbGVtZW50cyBvdXRzaWRlIHRoZSB2
aWV3cG9ydCBmYWlscwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1Bvc2l0aW9uLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9kb20vUG9zaXRpb24uaAppbmRleCBjNzQ5MDlkZjhlY2RkYWMyNzhi
NjdmYTc1NzFlZWMxOTVmMWJiODU4Li45OGFkNzBjMmU1MTg5OWI2MmVlODJiNjc1NDIzN2NiM2Mx
MmU2NzU4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vUG9zaXRpb24uaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9kb20vUG9zaXRpb24uaApAQCAtMTE3LDcgKzExNywxNCBAQCBwdWJsaWM6
CiAgICAgTm9kZSogZGVwcmVjYXRlZE5vZGUoKSBjb25zdCB7IHJldHVybiBtX2FuY2hvck5vZGUu
Z2V0KCk7IH0KIAogICAgIERvY3VtZW50KiBkb2N1bWVudCgpIGNvbnN0IHsgcmV0dXJuIG1fYW5j
aG9yTm9kZSA/ICZtX2FuY2hvck5vZGUtPmRvY3VtZW50KCkgOiBudWxscHRyOyB9Ci0gICAgVHJl
ZVNjb3BlKiB0cmVlU2NvcGUoKSBjb25zdCB7IHJldHVybiBtX2FuY2hvck5vZGUgPyAmbV9hbmNo
b3JOb2RlLT50cmVlU2NvcGUoKSA6IG51bGxwdHI7IH0KKyAgICBUcmVlU2NvcGUqIHRyZWVTY29w
ZSgpIGNvbnN0CisgICAgeworICAgICAgICBpZiAoIW1fYW5jaG9yTm9kZSB8fCAhbV9hbmNob3JO
b2RlLT5pc0luVHJlZVNjb3BlKCkpCisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAg
ICAgICByZXR1cm4gJm1fYW5jaG9yTm9kZS0+dHJlZVNjb3BlKCk7CisgICAgfQorCiAgICAgRWxl
bWVudCogcm9vdEVkaXRhYmxlRWxlbWVudCgpIGNvbnN0CiAgICAgewogICAgICAgICBOb2RlKiBj
b250YWluZXIgPSBjb250YWluZXJOb2RlKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuY3Bw
CmluZGV4IDUyNGM4NmMxNDlmZTkwYTVmOGFmNzhjNDk4YTJjMDJkMDFhNThmMmUuLjA0NzJlZjFl
MDQ3MDc2Y2Q5MDZkNDExNjgwOGI4YmRiNjUzN2Q0ZmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEVs
ZW1lbnQuY3BwCkBAIC03NCw2ICs3NCw3IEBACiAjaW5jbHVkZSAibWFya3VwLmgiCiAjaW5jbHVk
ZSA8d3RmL0lzb01hbGxvY0lubGluZXMuaD4KICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQu
aD4KKyNpbmNsdWRlIDx3dGYvUmFuZ2UuaD4KICNpbmNsdWRlIDx3dGYvU3RkTGliRXh0cmFzLmg+
CiAjaW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmlu
Z0J1aWxkZXIuaD4KQEAgLTEzMzUsMzkgKzEzMzYsMTA3IEBAIHZvaWQgSFRNTEVsZW1lbnQ6OnVw
ZGF0ZVdpdGhJbWFnZUV4dHJhY3Rpb25SZXN1bHQoSW1hZ2VFeHRyYWN0aW9uUmVzdWx0JiYgcmVz
dWx0CiAgICAgaWYgKGRvY3VtZW50KCkucXVpcmtzKCkubmVlZHNUb0ZvcmNlVXNlclNlbGVjdFdo
ZW5JbnN0YWxsaW5nSW1hZ2VPdmVybGF5KCkpCiAgICAgICAgIHNldElubGluZVN0eWxlUHJvcGVy
dHkoQ1NTUHJvcGVydHlXZWJraXRVc2VyU2VsZWN0LCBDU1NWYWx1ZVRleHQpOwogCisgICAgc3Rh
dGljIE1haW5UaHJlYWROZXZlckRlc3Ryb3llZDxjb25zdCBBdG9tU3RyaW5nPiBpbWFnZU92ZXJs
YXlMaW5lQ2xhc3MoImltYWdlLW92ZXJsYXktbGluZSIsIEF0b21TdHJpbmc6OkNvbnN0cnVjdEZy
b21MaXRlcmFsKTsKICAgICBzdGF0aWMgTWFpblRocmVhZE5ldmVyRGVzdHJveWVkPGNvbnN0IEF0
b21TdHJpbmc+IGltYWdlT3ZlcmxheVRleHRDbGFzcygiaW1hZ2Utb3ZlcmxheS10ZXh0IiwgQXRv
bVN0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpOwogCiAgICAgSW50U2l6ZSBjb250YWluZXJT
aXplIHsgb2Zmc2V0V2lkdGgoKSwgb2Zmc2V0SGVpZ2h0KCkgfTsKLSAgICBmb3IgKGF1dG8mIGRh
dGEgOiByZXN1bHQudGV4dERhdGEpIHsKLSAgICAgICAgYXV0byBjaGlsZCA9IEhUTUxEaXZFbGVt
ZW50OjpjcmVhdGUoZG9jdW1lbnQoKSk7Ci0gICAgICAgIGNoaWxkLT5jbGFzc0xpc3QoKS5hZGQo
aW1hZ2VPdmVybGF5VGV4dENsYXNzKTsKLQotICAgICAgICBjb250YWluZXItPmFwcGVuZENoaWxk
KGNoaWxkKTsKLSAgICAgICAgY2hpbGQtPmFwcGVuZENoaWxkKFRleHQ6OmNyZWF0ZShkb2N1bWVu
dCgpLCBtYWtlU3RyaW5nKCdcbicsIGRhdGEudGV4dCkpKTsKLSAgICAgICAgY2hpbGQtPmFwcGVu
ZENoaWxkKEhUTUxCUkVsZW1lbnQ6OmNyZWF0ZShkb2N1bWVudCgpKSk7Ci0KLSAgICAgICAgSW50
U2l6ZSBvcmlnaW5hbFNpemUgeyBjaGlsZC0+b2Zmc2V0V2lkdGgoKSwgY2hpbGQtPm9mZnNldEhl
aWdodCgpIH07Ci0gICAgICAgIGlmIChvcmlnaW5hbFNpemUuaXNFbXB0eSgpKQorICAgIGZvciAo
YXV0byYgbGluZSA6IHJlc3VsdC5saW5lcykgeworICAgICAgICBhdXRvIGxpbmVRdWFkID0gbGlu
ZS5ub3JtYWxpemVkUXVhZDsKKyAgICAgICAgaWYgKGxpbmVRdWFkLmlzRW1wdHkoKSkKICAgICAg
ICAgICAgIGNvbnRpbnVlOwogCi0gICAgICAgIGF1dG8gdGFyZ2V0UXVhZCA9IGRhdGEubm9ybWFs
aXplZFF1YWQ7Ci0gICAgICAgIHRhcmdldFF1YWQuc2NhbGUoY29udGFpbmVyU2l6ZS53aWR0aCgp
LCBjb250YWluZXJTaXplLmhlaWdodCgpKTsKKyAgICAgICAgbGluZVF1YWQuc2NhbGUoY29udGFp
bmVyU2l6ZS53aWR0aCgpLCBjb250YWluZXJTaXplLmhlaWdodCgpKTsKIAotICAgICAgICBhdXRv
IHJvdGF0ZWRSZWN0ID0gcm90YXRlZEJvdW5kaW5nUmVjdCh0YXJnZXRRdWFkLCAwLjAxKTsKLSAg
ICAgICAgYXV0byBzY2FsZSA9IHJvdGF0ZWRSZWN0LnNpemUgLyBvcmlnaW5hbFNpemU7Ci0gICAg
ICAgIFN0cmluZyByb3RhdGlvblRyYW5zZm9ybWF0aW9uQXNUZXh0OwotICAgICAgICBpZiAocm90
YXRlZFJlY3QuYW5nbGVJblJhZGlhbnMpCi0gICAgICAgICAgICByb3RhdGlvblRyYW5zZm9ybWF0
aW9uQXNUZXh0ID0gbWFrZVN0cmluZygicm90YXRlKCIsIHJvdGF0ZWRSZWN0LmFuZ2xlSW5SYWRp
YW5zLCAicmFkKSAiX3MpOworICAgICAgICBhdXRvIGxpbmVDb250YWluZXIgPSBIVE1MRGl2RWxl
bWVudDo6Y3JlYXRlKGRvY3VtZW50KCkpOworICAgICAgICBsaW5lQ29udGFpbmVyLT5jbGFzc0xp
c3QoKS5hZGQoaW1hZ2VPdmVybGF5TGluZUNsYXNzKTsKKyAgICAgICAgY29udGFpbmVyLT5hcHBl
bmRDaGlsZChsaW5lQ29udGFpbmVyKTsKIAotICAgICAgICBhdXRvIG9mZnNldCA9IHJvdW5kZWRJ
bnRQb2ludChyb3RhdGVkUmVjdC5jZW50ZXIgLSAob3JpZ2luYWxTaXplIC8gMikpOwotICAgICAg
ICBjaGlsZC0+c2V0SW5saW5lU3R5bGVQcm9wZXJ0eShDU1NQcm9wZXJ0eVRyYW5zZm9ybSwgbWFr
ZVN0cmluZygKLSAgICAgICAgICAgICJ0cmFuc2xhdGUoIl9zLCBvZmZzZXQueCgpLCAicHgsICJf
cywgb2Zmc2V0LnkoKSwgInB4KSAiX3MsCi0gICAgICAgICAgICByb3RhdGlvblRyYW5zZm9ybWF0
aW9uQXNUZXh0LAotICAgICAgICAgICAgInNjYWxlKCJfcywgc2NhbGUud2lkdGgoKSwgIiwgIl9z
LCBzY2FsZS5oZWlnaHQoKSwgIikgIl9zCisgICAgICAgIGF1dG8gbGluZUJvdW5kcyA9IHJvdGF0
ZWRCb3VuZGluZ1JlY3RXaXRoTWluaW11bUFuZ2xlT2ZSb3RhdGlvbihsaW5lUXVhZCwgMC4wMSk7
CisgICAgICAgIGxpbmVDb250YWluZXItPnNldElubGluZVN0eWxlUHJvcGVydHkoQ1NTUHJvcGVy
dHlXaWR0aCwgbGluZUJvdW5kcy5zaXplLndpZHRoKCksIENTU1VuaXRUeXBlOjpDU1NfUFgpOwor
ICAgICAgICBsaW5lQ29udGFpbmVyLT5zZXRJbmxpbmVTdHlsZVByb3BlcnR5KENTU1Byb3BlcnR5
SGVpZ2h0LCBsaW5lQm91bmRzLnNpemUuaGVpZ2h0KCksIENTU1VuaXRUeXBlOjpDU1NfUFgpOwor
ICAgICAgICBsaW5lQ29udGFpbmVyLT5zZXRJbmxpbmVTdHlsZVByb3BlcnR5KENTU1Byb3BlcnR5
VHJhbnNmb3JtLCBtYWtlU3RyaW5nKAorICAgICAgICAgICAgInRyYW5zbGF0ZSgiX3MsCisgICAg
ICAgICAgICBzdGQ6OnJvdW5kKGxpbmVCb3VuZHMuY2VudGVyLngoKSAtIChsaW5lQm91bmRzLnNp
emUud2lkdGgoKSAvIDIpKSwgInB4LCAiX3MsCisgICAgICAgICAgICBzdGQ6OnJvdW5kKGxpbmVC
b3VuZHMuY2VudGVyLnkoKSAtIChsaW5lQm91bmRzLnNpemUuaGVpZ2h0KCkgLyAyKSksICJweCkg
Il9zLAorICAgICAgICAgICAgbGluZUJvdW5kcy5hbmdsZUluUmFkaWFucyA/IG1ha2VTdHJpbmco
InJvdGF0ZSgiX3MsIGxpbmVCb3VuZHMuYW5nbGVJblJhZGlhbnMsICJyYWQpICJfcykgOiBlbXB0
eVN0cmluZygpCiAgICAgICAgICkpOwogCisgICAgICAgIGF1dG8gb2Zmc2V0QWxvbmdIb3Jpem9u
dGFsQXhpcyA9IFsmXShjb25zdCBGbG9hdFBvaW50JiBxdWFkUG9pbnQxLCBjb25zdCBGbG9hdFBv
aW50JiBxdWFkUG9pbnQyKSB7CisgICAgICAgICAgICBhdXRvIGludGVydmFsTGVuZ3RoID0gbGlu
ZUJvdW5kcy5zaXplLndpZHRoKCk7CisgICAgICAgICAgICBhdXRvIG1pZCA9IG1pZFBvaW50KHF1
YWRQb2ludDEsIHF1YWRQb2ludDIpOworICAgICAgICAgICAgbWlkLm1vdmVCeSgtbGluZUJvdW5k
cy5jZW50ZXIpOworICAgICAgICAgICAgbWlkLnJvdGF0ZSgtbGluZUJvdW5kcy5hbmdsZUluUmFk
aWFucyk7CisgICAgICAgICAgICByZXR1cm4gaW50ZXJ2YWxMZW5ndGggKiBjbGFtcFRvPGZsb2F0
PigwLjUgKyBtaWQueCgpIC8gaW50ZXJ2YWxMZW5ndGgsIDAsIDEpOworICAgICAgICB9OworCisg
ICAgICAgIGF1dG8gb2Zmc2V0c0Fsb25nSG9yaXpvbnRhbEF4aXMgPSBsaW5lLmNoaWxkcmVuLm1h
cChbJl0oYXV0byYgY2hpbGQpIC0+IFdURjo6UmFuZ2U8ZmxvYXQ+IHsKKyAgICAgICAgICAgIGF1
dG8gdGV4dFF1YWQgPSBjaGlsZC5ub3JtYWxpemVkUXVhZDsKKyAgICAgICAgICAgIHRleHRRdWFk
LnNjYWxlKGNvbnRhaW5lclNpemUud2lkdGgoKSwgY29udGFpbmVyU2l6ZS5oZWlnaHQoKSk7Cisg
ICAgICAgICAgICByZXR1cm4geworICAgICAgICAgICAgICAgIG9mZnNldEFsb25nSG9yaXpvbnRh
bEF4aXModGV4dFF1YWQucDEoKSwgdGV4dFF1YWQucDQoKSksCisgICAgICAgICAgICAgICAgb2Zm
c2V0QWxvbmdIb3Jpem9udGFsQXhpcyh0ZXh0UXVhZC5wMigpLCB0ZXh0UXVhZC5wMygpKQorICAg
ICAgICAgICAgfTsKKyAgICAgICAgfSk7CisKKyAgICAgICAgZm9yIChzaXplX3QgY2hpbGRJbmRl
eCA9IDA7IGNoaWxkSW5kZXggPCBsaW5lLmNoaWxkcmVuLnNpemUoKTsgKytjaGlsZEluZGV4KSB7
CisgICAgICAgICAgICBhdXRvJiBjaGlsZCA9IGxpbmUuY2hpbGRyZW5bY2hpbGRJbmRleF07Cisg
ICAgICAgICAgICBpZiAoY2hpbGQubm9ybWFsaXplZFF1YWQuaXNFbXB0eSgpKQorICAgICAgICAg
ICAgICAgIGNvbnRpbnVlOworCisgICAgICAgICAgICBjb25zdGV4cHIgZmxvYXQgaG9yaXpvbnRh
bE1hcmdpblRvTWluaW1pemVTZWxlY3Rpb25HYXBzID0gMC4xMjU7CisgICAgICAgICAgICBmbG9h
dCBob3Jpem9udGFsT2Zmc2V0ID0gLWhvcml6b250YWxNYXJnaW5Ub01pbmltaXplU2VsZWN0aW9u
R2FwczsKKyAgICAgICAgICAgIGZsb2F0IGhvcml6b250YWxFeHRlbnQgPSBob3Jpem9udGFsTWFy
Z2luVG9NaW5pbWl6ZVNlbGVjdGlvbkdhcHM7CisKKyAgICAgICAgICAgIGlmIChsaW5lLmNoaWxk
cmVuLnNpemUoKSA9PSAxKSB7CisgICAgICAgICAgICAgICAgaG9yaXpvbnRhbE9mZnNldCArPSBv
ZmZzZXRzQWxvbmdIb3Jpem9udGFsQXhpc1tjaGlsZEluZGV4XS5iZWdpbigpOworICAgICAgICAg
ICAgICAgIGhvcml6b250YWxFeHRlbnQgKz0gb2Zmc2V0c0Fsb25nSG9yaXpvbnRhbEF4aXNbY2hp
bGRJbmRleF0uZW5kKCk7CisgICAgICAgICAgICB9IGVsc2UgaWYgKCFjaGlsZEluZGV4KSB7Cisg
ICAgICAgICAgICAgICAgaG9yaXpvbnRhbE9mZnNldCArPSBvZmZzZXRzQWxvbmdIb3Jpem9udGFs
QXhpc1tjaGlsZEluZGV4XS5iZWdpbigpOworICAgICAgICAgICAgICAgIGhvcml6b250YWxFeHRl
bnQgKz0gKG9mZnNldHNBbG9uZ0hvcml6b250YWxBeGlzW2NoaWxkSW5kZXhdLmVuZCgpICsgb2Zm
c2V0c0Fsb25nSG9yaXpvbnRhbEF4aXNbY2hpbGRJbmRleCArIDFdLmJlZ2luKCkpIC8gMjsKKyAg
ICAgICAgICAgIH0gZWxzZSBpZiAoY2hpbGRJbmRleCA9PSBsaW5lLmNoaWxkcmVuLnNpemUoKSAt
IDEpIHsKKyAgICAgICAgICAgICAgICBob3Jpem9udGFsT2Zmc2V0ICs9IChvZmZzZXRzQWxvbmdI
b3Jpem9udGFsQXhpc1tjaGlsZEluZGV4IC0gMV0uZW5kKCkgKyBvZmZzZXRzQWxvbmdIb3Jpem9u
dGFsQXhpc1tjaGlsZEluZGV4XS5iZWdpbigpKSAvIDI7CisgICAgICAgICAgICAgICAgaG9yaXpv
bnRhbEV4dGVudCArPSBvZmZzZXRzQWxvbmdIb3Jpem9udGFsQXhpc1tjaGlsZEluZGV4XS5lbmQo
KTsKKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgaG9yaXpvbnRhbE9mZnNl
dCArPSAob2Zmc2V0c0Fsb25nSG9yaXpvbnRhbEF4aXNbY2hpbGRJbmRleCAtIDFdLmVuZCgpICsg
b2Zmc2V0c0Fsb25nSG9yaXpvbnRhbEF4aXNbY2hpbGRJbmRleF0uYmVnaW4oKSkgLyAyOworICAg
ICAgICAgICAgICAgIGhvcml6b250YWxFeHRlbnQgKz0gKG9mZnNldHNBbG9uZ0hvcml6b250YWxB
eGlzW2NoaWxkSW5kZXhdLmVuZCgpICsgb2Zmc2V0c0Fsb25nSG9yaXpvbnRhbEF4aXNbY2hpbGRJ
bmRleCArIDFdLmJlZ2luKCkpIC8gMjsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgRmxv
YXRTaXplIHRhcmdldFNpemUgeyBob3Jpem9udGFsRXh0ZW50IC0gaG9yaXpvbnRhbE9mZnNldCwg
bGluZUJvdW5kcy5zaXplLmhlaWdodCgpIH07CisgICAgICAgICAgICBpZiAodGFyZ2V0U2l6ZS5p
c0VtcHR5KCkpCisgICAgICAgICAgICAgICAgY29udGludWU7CisKKyAgICAgICAgICAgIGF1dG8g
dGV4dENvbnRhaW5lciA9IEhUTUxEaXZFbGVtZW50OjpjcmVhdGUoZG9jdW1lbnQoKSk7CisgICAg
ICAgICAgICB0ZXh0Q29udGFpbmVyLT5jbGFzc0xpc3QoKS5hZGQoaW1hZ2VPdmVybGF5VGV4dENs
YXNzKTsKKyAgICAgICAgICAgIGxpbmVDb250YWluZXItPmFwcGVuZENoaWxkKHRleHRDb250YWlu
ZXIpOworICAgICAgICAgICAgdGV4dENvbnRhaW5lci0+YXBwZW5kQ2hpbGQoVGV4dDo6Y3JlYXRl
KGRvY3VtZW50KCksIG1ha2VTdHJpbmcoJ1xuJywgY2hpbGQudGV4dCkpKTsKKworICAgICAgICAg
ICAgZG9jdW1lbnQoKS51cGRhdGVMYXlvdXRJZkRpbWVuc2lvbnNPdXRPZkRhdGUodGV4dENvbnRh
aW5lcik7CisKKyAgICAgICAgICAgIEZsb2F0U2l6ZSBzaXplQmVmb3JlVHJhbnNmb3JtOworICAg
ICAgICAgICAgaWYgKGF1dG8qIHJlbmRlcmVyID0gdGV4dENvbnRhaW5lci0+cmVuZGVyQm94TW9k
ZWxPYmplY3QoKSkgeworICAgICAgICAgICAgICAgIHNpemVCZWZvcmVUcmFuc2Zvcm0gPSB7Cisg
ICAgICAgICAgICAgICAgICAgIGFkanVzdExheW91dFVuaXRGb3JBYnNvbHV0ZVpvb20ocmVuZGVy
ZXItPm9mZnNldFdpZHRoKCksICpyZW5kZXJlcikudG9GbG9hdCgpLAorICAgICAgICAgICAgICAg
ICAgICBhZGp1c3RMYXlvdXRVbml0Rm9yQWJzb2x1dGVab29tKHJlbmRlcmVyLT5vZmZzZXRIZWln
aHQoKSwgKnJlbmRlcmVyKS50b0Zsb2F0KCksCisgICAgICAgICAgICAgICAgfTsKKyAgICAgICAg
ICAgIH0KKworICAgICAgICAgICAgaWYgKHNpemVCZWZvcmVUcmFuc2Zvcm0uaXNFbXB0eSgpKSB7
CisgICAgICAgICAgICAgICAgdGV4dENvbnRhaW5lci0+cmVtb3ZlKCk7CisgICAgICAgICAgICAg
ICAgY29udGludWU7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIHRleHRDb250YWluZXIt
PnNldElubGluZVN0eWxlUHJvcGVydHkoQ1NTUHJvcGVydHlUcmFuc2Zvcm0sIG1ha2VTdHJpbmco
CisgICAgICAgICAgICAgICAgInRyYW5zbGF0ZSgiX3MsCisgICAgICAgICAgICAgICAgaG9yaXpv
bnRhbE9mZnNldCArICh0YXJnZXRTaXplLndpZHRoKCkgLSBzaXplQmVmb3JlVHJhbnNmb3JtLndp
ZHRoKCkpIC8gMiwgInB4LCAiX3MsCisgICAgICAgICAgICAgICAgKHRhcmdldFNpemUuaGVpZ2h0
KCkgLSBzaXplQmVmb3JlVHJhbnNmb3JtLmhlaWdodCgpKSAvIDIsICJweCkgIl9zLAorICAgICAg
ICAgICAgICAgICJzY2FsZSgiX3MsIHRhcmdldFNpemUud2lkdGgoKSAvIHNpemVCZWZvcmVUcmFu
c2Zvcm0ud2lkdGgoKSwgIiwgIl9zLCB0YXJnZXRTaXplLmhlaWdodCgpIC8gc2l6ZUJlZm9yZVRy
YW5zZm9ybS5oZWlnaHQoKSwgIikgIl9zCisgICAgICAgICAgICApKTsKKyAgICAgICAgfQorCisg
ICAgICAgIGxpbmVDb250YWluZXItPmFwcGVuZENoaWxkKEhUTUxCUkVsZW1lbnQ6OmNyZWF0ZShk
b2N1bWVudCgpKSk7CisKICAgICAgICAgaWYgKGRvY3VtZW50KCkuaXNJbWFnZURvY3VtZW50KCkp
Ci0gICAgICAgICAgICBjaGlsZC0+c2V0SW5saW5lU3R5bGVQcm9wZXJ0eShDU1NQcm9wZXJ0eUN1
cnNvciwgQ1NTVmFsdWVUZXh0KTsKKyAgICAgICAgICAgIGxpbmVDb250YWluZXItPnNldElubGlu
ZVN0eWxlUHJvcGVydHkoQ1NTUHJvcGVydHlDdXJzb3IsIENTU1ZhbHVlVGV4dCk7CiAgICAgfQog
CiAgICAgaWYgKGF1dG8gZnJhbWUgPSBtYWtlUmVmUHRyKGRvY3VtZW50KCkuZnJhbWUoKSkpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9pbWFnZU92ZXJsYXkuY3NzIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvaW1hZ2VPdmVybGF5LmNzcwppbmRleCAxMGJhNDk5
MjlkYjA5Zjc2NGNlODZmZWU2MmYwNDAyMmQwYTdmMjIxLi4wZTFhOTJmYzVkMDFmNDdlZDgwOWY0
ZDhhNjQyZDkzZjhlYTc2Y2YxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRv
dy9pbWFnZU92ZXJsYXkuY3NzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L2ltYWdl
T3ZlcmxheS5jc3MKQEAgLTMxLDE1ICszMSwxNSBAQCBkaXYjaW1hZ2Utb3ZlcmxheSB7CiAgICAg
d2hpdGUtc3BhY2U6IG5vd3JhcDsKICAgICBsaW5lLWhlaWdodDogMTAwJTsKICAgICBmb250LWZh
bWlseTogc3lzdGVtLXVpOwotICAgIGZvbnQtc2l6ZTogMTZweDsKKyAgICBmb250LXNpemU6IDEw
MjRweDsgLyogVGhpcyBsYXJnZSBmb250IHNpemUgaXMgY2hvc2VuIHRvIG1pbmltaXplIGdhcHMg
d2hlbiBwYWludGluZyBzZWxlY3Rpb24gcXVhZHMuICovCiB9CiAKLWRpdi5pbWFnZS1vdmVybGF5
LXRleHQgeworZGl2LmltYWdlLW92ZXJsYXktbGluZSwgLmltYWdlLW92ZXJsYXktdGV4dCB7CiAg
ICAgcG9zaXRpb246IGFic29sdXRlOwogICAgIG92ZXJmbG93OiBoaWRkZW47CiB9CiAKLWRpdi5p
bWFnZS1vdmVybGF5LXRleHQ6OnNlbGVjdGlvbiB7CisuaW1hZ2Utb3ZlcmxheS10ZXh0OjpzZWxl
Y3Rpb24gewogICAgIGNvbG9yOiB0cmFuc3BhcmVudDsKICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBo
aWdobGlnaHQ7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9JbWFnZUV4
dHJhY3Rpb25SZXN1bHQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0ltYWdlRXh0cmFjdGlv
blJlc3VsdC5oCmluZGV4IGRhZjNmZjk4MDc2MzU3YmRmNzYzMjEwN2ZiNWY5MDIwNmY3OGVkYTku
LmViOGNjZDU0MTI3NWMzNWFkOTgyYjBjZWExZWZlYjBkNGY3NjY2M2IgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL0ltYWdlRXh0cmFjdGlvblJlc3VsdC5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL0ltYWdlRXh0cmFjdGlvblJlc3VsdC5oCkBAIC0zNCw2ICszNCwx
MiBAQAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBzdHJ1Y3QgSW1hZ2VFeHRyYWN0aW9uVGV4dERh
dGEgeworICAgIEltYWdlRXh0cmFjdGlvblRleHREYXRhKGNvbnN0IFN0cmluZyYgdGhlVGV4dCwg
RmxvYXRRdWFkJiYgcXVhZCkKKyAgICAgICAgOiB0ZXh0KHRoZVRleHQpCisgICAgICAgICwgbm9y
bWFsaXplZFF1YWQoV1RGTW92ZShxdWFkKSkKKyAgICB7CisgICAgfQorCiAgICAgU3RyaW5nIHRl
eHQ7CiAgICAgRmxvYXRRdWFkIG5vcm1hbGl6ZWRRdWFkOwogCkBAIC02MiwxMCArNjgsNDUgQEAg
dGVtcGxhdGU8Y2xhc3MgRGVjb2Rlcj4gT3B0aW9uYWw8SW1hZ2VFeHRyYWN0aW9uVGV4dERhdGE+
IEltYWdlRXh0cmFjdGlvblRleHREYXQKICAgICByZXR1cm4ge3sgV1RGTW92ZSgqdGV4dCksIFdU
Rk1vdmUoKm5vcm1hbGl6ZWRRdWFkKSB9fTsKIH0KIAorc3RydWN0IEltYWdlRXh0cmFjdGlvbkxp
bmVEYXRhIHsKKyAgICBJbWFnZUV4dHJhY3Rpb25MaW5lRGF0YShGbG9hdFF1YWQmJiBxdWFkLCBW
ZWN0b3I8SW1hZ2VFeHRyYWN0aW9uVGV4dERhdGE+JiYgdGhlQ2hpbGRyZW4pCisgICAgICAgIDog
bm9ybWFsaXplZFF1YWQoV1RGTW92ZShxdWFkKSkKKyAgICAgICAgLCBjaGlsZHJlbihXVEZNb3Zl
KHRoZUNoaWxkcmVuKSkKKyAgICB7CisgICAgfQorCisgICAgRmxvYXRRdWFkIG5vcm1hbGl6ZWRR
dWFkOworICAgIFZlY3RvcjxJbWFnZUV4dHJhY3Rpb25UZXh0RGF0YT4gY2hpbGRyZW47CisKKyAg
ICB0ZW1wbGF0ZTxjbGFzcyBFbmNvZGVyPiB2b2lkIGVuY29kZShFbmNvZGVyJikgY29uc3Q7Cisg
ICAgdGVtcGxhdGU8Y2xhc3MgRGVjb2Rlcj4gc3RhdGljIE9wdGlvbmFsPEltYWdlRXh0cmFjdGlv
bkxpbmVEYXRhPiBkZWNvZGUoRGVjb2RlciYpOworfTsKKwordGVtcGxhdGU8Y2xhc3MgRW5jb2Rl
cj4gdm9pZCBJbWFnZUV4dHJhY3Rpb25MaW5lRGF0YTo6ZW5jb2RlKEVuY29kZXImIGVuY29kZXIp
IGNvbnN0Cit7CisgICAgZW5jb2RlciA8PCBub3JtYWxpemVkUXVhZDsKKyAgICBlbmNvZGVyIDw8
IGNoaWxkcmVuOworfQorCit0ZW1wbGF0ZTxjbGFzcyBEZWNvZGVyPiBPcHRpb25hbDxJbWFnZUV4
dHJhY3Rpb25MaW5lRGF0YT4gSW1hZ2VFeHRyYWN0aW9uTGluZURhdGE6OmRlY29kZShEZWNvZGVy
JiBkZWNvZGVyKQoreworICAgIE9wdGlvbmFsPEZsb2F0UXVhZD4gbm9ybWFsaXplZFF1YWQ7Cisg
ICAgZGVjb2RlciA+PiBub3JtYWxpemVkUXVhZDsKKyAgICBpZiAoIW5vcm1hbGl6ZWRRdWFkKQor
ICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OworCisgICAgT3B0aW9uYWw8VmVjdG9yPEltYWdl
RXh0cmFjdGlvblRleHREYXRhPj4gY2hpbGRyZW47CisgICAgZGVjb2RlciA+PiBjaGlsZHJlbjsK
KyAgICBpZiAoIWNoaWxkcmVuKQorICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OworCisgICAg
cmV0dXJuIHt7IFdURk1vdmUoKm5vcm1hbGl6ZWRRdWFkKSwgV1RGTW92ZSgqY2hpbGRyZW4pIH19
OworfQorCiBzdHJ1Y3QgSW1hZ2VFeHRyYWN0aW9uUmVzdWx0IHsKLSAgICBWZWN0b3I8SW1hZ2VF
eHRyYWN0aW9uVGV4dERhdGE+IHRleHREYXRhOworICAgIFZlY3RvcjxJbWFnZUV4dHJhY3Rpb25M
aW5lRGF0YT4gbGluZXM7CiAKLSAgICBib29sIGlzRW1wdHkoKSBjb25zdCB7IHJldHVybiB0ZXh0
RGF0YS5pc0VtcHR5KCk7IH0KKyAgICBib29sIGlzRW1wdHkoKSBjb25zdCB7IHJldHVybiBsaW5l
cy5pc0VtcHR5KCk7IH0KIAogICAgIHRlbXBsYXRlPGNsYXNzIEVuY29kZXI+IHZvaWQgZW5jb2Rl
KEVuY29kZXImKSBjb25zdDsKICAgICB0ZW1wbGF0ZTxjbGFzcyBEZWNvZGVyPiBzdGF0aWMgT3B0
aW9uYWw8SW1hZ2VFeHRyYWN0aW9uUmVzdWx0PiBkZWNvZGUoRGVjb2RlciYpOwpAQCAtNzMsMTcg
KzExNCwxNyBAQCBzdHJ1Y3QgSW1hZ2VFeHRyYWN0aW9uUmVzdWx0IHsKIAogdGVtcGxhdGU8Y2xh
c3MgRW5jb2Rlcj4gdm9pZCBJbWFnZUV4dHJhY3Rpb25SZXN1bHQ6OmVuY29kZShFbmNvZGVyJiBl
bmNvZGVyKSBjb25zdAogewotICAgIGVuY29kZXIgPDwgdGV4dERhdGE7CisgICAgZW5jb2RlciA8
PCBsaW5lczsKIH0KIAogdGVtcGxhdGU8Y2xhc3MgRGVjb2Rlcj4gT3B0aW9uYWw8SW1hZ2VFeHRy
YWN0aW9uUmVzdWx0PiBJbWFnZUV4dHJhY3Rpb25SZXN1bHQ6OmRlY29kZShEZWNvZGVyJiBkZWNv
ZGVyKQogewotICAgIE9wdGlvbmFsPFZlY3RvcjxJbWFnZUV4dHJhY3Rpb25UZXh0RGF0YT4+IHRl
eHREYXRhOwotICAgIGRlY29kZXIgPj4gdGV4dERhdGE7Ci0gICAgaWYgKCF0ZXh0RGF0YSkKKyAg
ICBPcHRpb25hbDxWZWN0b3I8SW1hZ2VFeHRyYWN0aW9uTGluZURhdGE+PiBsaW5lczsKKyAgICBk
ZWNvZGVyID4+IGxpbmVzOworICAgIGlmICghbGluZXMpCiAgICAgICAgIHJldHVybiBXVEY6Om51
bGxvcHQ7CiAKLSAgICByZXR1cm4ge3sgV1RGTW92ZSgqdGV4dERhdGEpIH19OworICAgIHJldHVy
biB7eyBXVEZNb3ZlKCpsaW5lcykgfX07CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0Zsb2F0UG9pbnQuaCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0Zsb2F0UG9pbnQuaAppbmRleCA3NWM5
MjhkYTdhYTM3NDY2YjE0NmMxYzc4ZWMxMDBiNjUwY2YzMTk4Li45MDRjMTQ4MzMwYmM5NTQxOWQ4
NThmMjRiMGQ1ZjlmYWEyODJhNThjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9GbG9hdFBvaW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvRmxvYXRQb2ludC5oCkBAIC0xMzUsNiArMTM1LDE3IEBAIHB1YmxpYzoKICAgICAgICAg
cmV0dXJuIHsgbV94ICogc2NhbGVYLCBtX3kgKiBzY2FsZVkgfTsKICAgICB9CiAKKyAgICB2b2lk
IHJvdGF0ZShkb3VibGUgYW5nbGVJblJhZGlhbnMsIGNvbnN0IEZsb2F0UG9pbnQmIGFib3V0UG9p
bnQgPSB7IH0pCisgICAgeworICAgICAgICBhdXRvIHNpbkFuZ2xlID0gc2luKGFuZ2xlSW5SYWRp
YW5zKTsKKyAgICAgICAgYXV0byBjb3NBbmdsZSA9IGNvcyhhbmdsZUluUmFkaWFucyk7CisgICAg
ICAgIG1feCAtPSBhYm91dFBvaW50LngoKTsKKyAgICAgICAgbV95IC09IGFib3V0UG9pbnQueSgp
OworICAgICAgICBhdXRvIG5ld1ggPSBtX3ggKiBjb3NBbmdsZSAtIG1feSAqIHNpbkFuZ2xlICsg
YWJvdXRQb2ludC54KCk7CisgICAgICAgIG1feSA9IG1feCAqIHNpbkFuZ2xlICsgbV95ICogY29z
QW5nbGUgKyBhYm91dFBvaW50LnkoKTsKKyAgICAgICAgbV94ID0gbmV3WDsKKyAgICB9CisKICAg
ICBXRUJDT1JFX0VYUE9SVCB2b2lkIG5vcm1hbGl6ZSgpOwogCiAgICAgZmxvYXQgZG90KGNvbnN0
IEZsb2F0UG9pbnQmIGEpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9HZW9tZXRyeVV0aWxpdGllcy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9HZW9tZXRyeVV0aWxpdGllcy5jcHAKaW5kZXggZDU3YmE2NmQ1N2E0MTRjZjQz
ZWVmYTdkNWU3MjMwMTFmYjhiNDQ0My4uMzA4ZGU1NTNlYzFkZmM3YjE2N2Q0MGNkNjcxZGM1ZDlm
YjZmN2ViZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR2Vv
bWV0cnlVdGlsaXRpZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L0dlb21ldHJ5VXRpbGl0aWVzLmNwcApAQCAtMjE4LDcgKzIxOCw3IEBAIHN0YXRpYyBmbG9hdCBh
bmdsZUJldHdlZW5WZWN0b3JzKGNvbnN0IEZsb2F0U2l6ZSYgdSwgY29uc3QgRmxvYXRTaXplJiB2
KQogICAgIHJldHVybiBtYWduaXR1ZGVzID8gYWNvcyhjbGFtcFRvPGZsb2F0Pihkb3RQcm9kdWN0
KHUsIHYpIC8gbWFnbml0dWRlcywgLTEsIDEpKSA6IDA7CiB9CiAKLVJvdGF0ZWRSZWN0IHJvdGF0
ZWRCb3VuZGluZ1JlY3QoY29uc3QgRmxvYXRRdWFkJiBxdWFkLCBPcHRpb25hbDxmbG9hdD4gbWlu
Um90YXRpb25JblJhZGlhbnMpCitSb3RhdGVkUmVjdCByb3RhdGVkQm91bmRpbmdSZWN0V2l0aE1p
bmltdW1BbmdsZU9mUm90YXRpb24oY29uc3QgRmxvYXRRdWFkJiBxdWFkLCBPcHRpb25hbDxmbG9h
dD4gbWluUm90YXRpb25JblJhZGlhbnMpCiB7CiAgICAgY29uc3RleHByIGF1dG8gdHdvUGlGbG9h
dCA9IDIgKiBwaUZsb2F0OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9HZW9tZXRyeVV0aWxpdGllcy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvR2VvbWV0cnlVdGlsaXRpZXMuaAppbmRleCA0ZWIxMTcxNDY5YTQ1M2IxZjUxNmU0MmM3
NDgxMzg5NDMzZGE3OTM2Li5kOGNlYzY5MzRjMDNiMWUxNWM2ZWY1NjRjMTliMzQ0MDRjMTNmNGQ1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HZW9tZXRyeVV0
aWxpdGllcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dlb21ldHJ5
VXRpbGl0aWVzLmgKQEAgLTY4LDYgKzY4LDYgQEAgc3RydWN0IFJvdGF0ZWRSZWN0IHsKICAgICBm
bG9hdCBhbmdsZUluUmFkaWFuczsKIH07CiAKLVdFQkNPUkVfRVhQT1JUIFJvdGF0ZWRSZWN0IHJv
dGF0ZWRCb3VuZGluZ1JlY3QoY29uc3QgRmxvYXRRdWFkJiwgT3B0aW9uYWw8ZmxvYXQ+IG1pblJv
dGF0aW9uSW5SYWRpYW5zID0gV1RGOjpudWxsb3B0KTsKK1dFQkNPUkVfRVhQT1JUIFJvdGF0ZWRS
ZWN0IHJvdGF0ZWRCb3VuZGluZ1JlY3RXaXRoTWluaW11bUFuZ2xlT2ZSb3RhdGlvbihjb25zdCBG
bG9hdFF1YWQmLCBPcHRpb25hbDxmbG9hdD4gbWluUm90YXRpb25JblJhZGlhbnMgPSBXVEY6Om51
bGxvcHQpOwogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFs
cy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKaW5kZXggYjIzOWJl
MWMzNzIwZjhjMTNjM2NhYWU4Y2U2NzU3MjlmOTRkODJmMC4uZTlhYjM2Mjc1NmEwNzI1ZTk3NTAz
MDRjNTA5YTY3NWE0Y2YwNTE4MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9J
bnRlcm5hbHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcApA
QCAtNTU5NCwyNiArNTU5NCw0NyBAQCBNb2NrUGF5bWVudENvb3JkaW5hdG9yJiBJbnRlcm5hbHM6
Om1vY2tQYXltZW50Q29vcmRpbmF0b3IoRG9jdW1lbnQmIGRvY3VtZW50KQogfQogI2VuZGlmCiAK
K0ludGVybmFsczo6SW1hZ2VPdmVybGF5TGluZTo6fkltYWdlT3ZlcmxheUxpbmUoKSA9IGRlZmF1
bHQ7CiBJbnRlcm5hbHM6OkltYWdlT3ZlcmxheVRleHQ6On5JbWFnZU92ZXJsYXlUZXh0KCkgPSBk
ZWZhdWx0OwogCi12b2lkIEludGVybmFsczo6aW5zdGFsbEltYWdlT3ZlcmxheShFbGVtZW50JiBl
bGVtZW50LCBWZWN0b3I8SW1hZ2VPdmVybGF5VGV4dD4mJiBhbGxUZXh0SW5mbykKKyNpZiBFTkFC
TEUoSU1BR0VfRVhUUkFDVElPTikKKwordGVtcGxhdGU8dHlwZW5hbWUgVD4KK3N0YXRpYyBGbG9h
dFF1YWQgZ2V0UXVhZChjb25zdCBUJiBvdmVybGF5VGV4dE9yTGluZSkKK3sKKyAgICByZXR1cm4g
eworICAgICAgICBGbG9hdFBvaW50KG92ZXJsYXlUZXh0T3JMaW5lLnRvcExlZnQtPngoKSwgb3Zl
cmxheVRleHRPckxpbmUudG9wTGVmdC0+eSgpKSwKKyAgICAgICAgRmxvYXRQb2ludChvdmVybGF5
VGV4dE9yTGluZS50b3BSaWdodC0+eCgpLCBvdmVybGF5VGV4dE9yTGluZS50b3BSaWdodC0+eSgp
KSwKKyAgICAgICAgRmxvYXRQb2ludChvdmVybGF5VGV4dE9yTGluZS5ib3R0b21SaWdodC0+eCgp
LCBvdmVybGF5VGV4dE9yTGluZS5ib3R0b21SaWdodC0+eSgpKSwKKyAgICAgICAgRmxvYXRQb2lu
dChvdmVybGF5VGV4dE9yTGluZS5ib3R0b21MZWZ0LT54KCksIG92ZXJsYXlUZXh0T3JMaW5lLmJv
dHRvbUxlZnQtPnkoKSksCisgICAgfTsKK30KKworc3RhdGljIEltYWdlRXh0cmFjdGlvbkxpbmVE
YXRhIG1ha2VEYXRhRm9yTGluZShjb25zdCBJbnRlcm5hbHM6OkltYWdlT3ZlcmxheUxpbmUmIGxp
bmUpCit7CisgICAgcmV0dXJuIHsKKyAgICAgICAgZ2V0UXVhZDxJbnRlcm5hbHM6OkltYWdlT3Zl
cmxheUxpbmU+KGxpbmUpLAorICAgICAgICBsaW5lLmNoaWxkcmVuLm1hcChbXShhdXRvJiB0ZXh0
Q2hpbGQpIC0+IEltYWdlRXh0cmFjdGlvblRleHREYXRhIHsKKyAgICAgICAgICAgIHJldHVybiB7
IHRleHRDaGlsZC50ZXh0LCBnZXRRdWFkPEludGVybmFsczo6SW1hZ2VPdmVybGF5VGV4dD4odGV4
dENoaWxkKSB9OworICAgICAgICB9KQorICAgIH07Cit9CisKKyNlbmRpZiAvLyBFTkFCTEUoSU1B
R0VfRVhUUkFDVElPTikKKwordm9pZCBJbnRlcm5hbHM6Omluc3RhbGxJbWFnZU92ZXJsYXkoRWxl
bWVudCYgZWxlbWVudCwgVmVjdG9yPEltYWdlT3ZlcmxheUxpbmU+JiYgbGluZXMpCiB7CiAgICAg
aWYgKCFpczxIVE1MRWxlbWVudD4oZWxlbWVudCkpCiAgICAgICAgIHJldHVybjsKIAogI2lmIEVO
QUJMRShJTUFHRV9FWFRSQUNUSU9OKQogICAgIGRvd25jYXN0PEhUTUxFbGVtZW50PihlbGVtZW50
KS51cGRhdGVXaXRoSW1hZ2VFeHRyYWN0aW9uUmVzdWx0KEltYWdlRXh0cmFjdGlvblJlc3VsdCB7
Ci0gICAgICAgIGFsbFRleHRJbmZvLm1hcChbXSAoYXV0byYgdGV4dEluZm8pIC0+IEltYWdlRXh0
cmFjdGlvblRleHREYXRhIHsKLSAgICAgICAgICAgIHJldHVybiB7IHRleHRJbmZvLnRleHQsIHsK
LSAgICAgICAgICAgICAgICBGbG9hdFBvaW50KHRleHRJbmZvLnRvcExlZnQtPngoKSwgdGV4dElu
Zm8udG9wTGVmdC0+eSgpKSwKLSAgICAgICAgICAgICAgICBGbG9hdFBvaW50KHRleHRJbmZvLnRv
cFJpZ2h0LT54KCksIHRleHRJbmZvLnRvcFJpZ2h0LT55KCkpLAotICAgICAgICAgICAgICAgIEZs
b2F0UG9pbnQodGV4dEluZm8uYm90dG9tUmlnaHQtPngoKSwgdGV4dEluZm8uYm90dG9tUmlnaHQt
PnkoKSksCi0gICAgICAgICAgICAgICAgRmxvYXRQb2ludCh0ZXh0SW5mby5ib3R0b21MZWZ0LT54
KCksIHRleHRJbmZvLmJvdHRvbUxlZnQtPnkoKSksCi0gICAgICAgICAgICB9fTsKKyAgICAgICAg
bGluZXMubWFwKFtdIChhdXRvJiBsaW5lKSAtPiBJbWFnZUV4dHJhY3Rpb25MaW5lRGF0YSB7Cisg
ICAgICAgICAgICByZXR1cm4gbWFrZURhdGFGb3JMaW5lKGxpbmUpOwogICAgICAgICB9KQogICAg
IH0pOwogI2Vsc2UKLSAgICBVTlVTRURfUEFSQU0oYWxsVGV4dEluZm8pOworICAgIFVOVVNFRF9Q
QVJBTShsaW5lcyk7CiAjZW5kaWYKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVz
dGluZy9JbnRlcm5hbHMuaCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgKaW5k
ZXggMjJjZDk1ZTMwOWU4MjAzODNmN2E1MjZjM2EwNDYwMjc1ODJiNjNlYy4uYmVhYzU3OGEwYjZh
ZTk0NzNlZDEwZjVkYzkzNWE1ZTA5ZGY2YzlhOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
dGVzdGluZy9JbnRlcm5hbHMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFs
cy5oCkBAIC04NzUsNyArODc1LDE3IEBAIHB1YmxpYzoKIAogICAgICAgICB+SW1hZ2VPdmVybGF5
VGV4dCgpOwogICAgIH07Ci0gICAgdm9pZCBpbnN0YWxsSW1hZ2VPdmVybGF5KEVsZW1lbnQmLCBW
ZWN0b3I8SW1hZ2VPdmVybGF5VGV4dD4mJik7CisKKyAgICBzdHJ1Y3QgSW1hZ2VPdmVybGF5TGlu
ZSB7CisgICAgICAgIFJlZlB0cjxET01Qb2ludFJlYWRPbmx5PiB0b3BMZWZ0OworICAgICAgICBS
ZWZQdHI8RE9NUG9pbnRSZWFkT25seT4gdG9wUmlnaHQ7CisgICAgICAgIFJlZlB0cjxET01Qb2lu
dFJlYWRPbmx5PiBib3R0b21SaWdodDsKKyAgICAgICAgUmVmUHRyPERPTVBvaW50UmVhZE9ubHk+
IGJvdHRvbUxlZnQ7CisgICAgICAgIFZlY3RvcjxJbWFnZU92ZXJsYXlUZXh0PiBjaGlsZHJlbjsK
KworICAgICAgICB+SW1hZ2VPdmVybGF5TGluZSgpOworICAgIH07CisgICAgdm9pZCBpbnN0YWxs
SW1hZ2VPdmVybGF5KEVsZW1lbnQmLCBWZWN0b3I8SW1hZ2VPdmVybGF5TGluZT4mJik7CiAKICAg
ICBib29sIGlzU3lzdGVtUHJldmlld0xpbmsoRWxlbWVudCYpIGNvbnN0OwogICAgIGJvb2wgaXNT
eXN0ZW1QcmV2aWV3SW1hZ2UoRWxlbWVudCYpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRl
cm5hbHMuaWRsCmluZGV4IGExYjM4NTFkMTRiOTJkZTdlMzFkYmVmNTczMjYyOWNmMTZjNWVjNTYu
LmNiY2M5NzgwNDJiMDgwYmE0ZDZjYWNjNzg0ZTMwY2FiMzUwM2Q5MTQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS90
ZXN0aW5nL0ludGVybmFscy5pZGwKQEAgLTI2NCw2ICsyNjQsMTcgQEAgZW51bSBUcmVlVHlwZSB7
CiAgICAgcmVxdWlyZWQgRE9NUG9pbnRSZWFkT25seSBib3R0b21MZWZ0OwogfTsKIAorWworICAg
IEV4cG9ydE1hY3JvPVdFQkNPUkVfVEVTVFNVUFBPUlRfRVhQT1JULAorICAgIEpTR2VuZXJhdGVU
b0pTT2JqZWN0LAorXSBkaWN0aW9uYXJ5IEltYWdlT3ZlcmxheUxpbmUgeworICAgIHJlcXVpcmVk
IERPTVBvaW50UmVhZE9ubHkgdG9wTGVmdDsKKyAgICByZXF1aXJlZCBET01Qb2ludFJlYWRPbmx5
IHRvcFJpZ2h0OworICAgIHJlcXVpcmVkIERPTVBvaW50UmVhZE9ubHkgYm90dG9tUmlnaHQ7Cisg
ICAgcmVxdWlyZWQgRE9NUG9pbnRSZWFkT25seSBib3R0b21MZWZ0OworICAgIHNlcXVlbmNlPElt
YWdlT3ZlcmxheVRleHQ+IGNoaWxkcmVuOworfTsKKwogWwogICAgIEV4cG9ydE1hY3JvPVdFQkNP
UkVfVEVTVFNVUFBPUlRfRVhQT1JULAogICAgIExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0LApAQCAt
ODk2LDcgKzkwNyw3IEBAIGVudW0gVHJlZVR5cGUgewogICAgIGJvb2xlYW4gaXNTeXN0ZW1QcmV2
aWV3TGluayhFbGVtZW50IGVsZW1lbnQpOwogICAgIGJvb2xlYW4gaXNTeXN0ZW1QcmV2aWV3SW1h
Z2UoRWxlbWVudCBlbGVtZW50KTsKIAotICAgIHVuZGVmaW5lZCBpbnN0YWxsSW1hZ2VPdmVybGF5
KEVsZW1lbnQgZWxlbWVudCwgc2VxdWVuY2U8SW1hZ2VPdmVybGF5VGV4dD4gYWxsVGV4dEluZm8p
OworICAgIHVuZGVmaW5lZCBpbnN0YWxsSW1hZ2VPdmVybGF5KEVsZW1lbnQgZWxlbWVudCwgc2Vx
dWVuY2U8SW1hZ2VPdmVybGF5TGluZT4gbGluZXMpOwogCiAgICAgYm9vbGVhbiB1c2luZ0FwcGxl
SW50ZXJuYWxTREsoKTsKICAgICBib29sZWFuIHVzaW5nR1N0cmVhbWVyKCk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9pb3MvV2ViUGFnZUlPUy5tbSBiL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tCmluZGV4IGUx
MWZlZTc2MzUzYjQzMmVhOGY0ZGUwNDUxNGIzYmE0M2ExN2ZhNDcuLmNhZjc0ZmViMWM1ODViMTQ2
NjU2OTM2OTdjZDE3ZWFlMmY1Y2IwMDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tCkBAIC0xNTI0LDE0ICsxNTI0LDE0IEBAIHN0
YXRpYyBPcHRpb25hbDxTaW1wbGVSYW5nZT4gcmFuZ2VGb3JQb2ludEluUm9vdFZpZXdDb29yZGlu
YXRlcyhGcmFtZSYgZnJhbWUsIGNvCiAgICAgaWYgKGJhc2VJc1N0YXJ0KSB7CiAgICAgICAgIGlm
IChyZXN1bHQgPD0gc2VsZWN0aW9uU3RhcnQpCiAgICAgICAgICAgICByZXN1bHQgPSBzZWxlY3Rp
b25TdGFydC5uZXh0KCk7Ci0gICAgICAgIGVsc2UgaWYgKHRhcmdldE5vZGUgJiYgc2VsZWN0aW9u
U3RhcnQuZGVlcEVxdWl2YWxlbnQoKS50cmVlU2NvcGUoKSAhPSAmdGFyZ2V0Tm9kZS0+dHJlZVNj
b3BlKCkpCisgICAgICAgIGVsc2UgaWYgKGF1dG8gdHJlZVNjb3BlID0gc2VsZWN0aW9uU3RhcnQu
ZGVlcEVxdWl2YWxlbnQoKS50cmVlU2NvcGUoKTsgdHJlZVNjb3BlICYmIHRhcmdldE5vZGUgJiYg
dGFyZ2V0Tm9kZS0+aXNJblRyZWVTY29wZSgpICYmIHRyZWVTY29wZSAhPSAmdGFyZ2V0Tm9kZS0+
dHJlZVNjb3BlKCkpCiAgICAgICAgICAgICByZXN1bHQgPSBWaXNpYmxlU2VsZWN0aW9uOjphZGp1
c3RQb3NpdGlvbkZvckVuZChyZXN1bHQuZGVlcEVxdWl2YWxlbnQoKSwgc2VsZWN0aW9uU3RhcnQu
ZGVlcEVxdWl2YWxlbnQoKS5jb250YWluZXJOb2RlKCkpOwogCiAgICAgICAgIHJhbmdlID0gbWFr
ZVNpbXBsZVJhbmdlKHNlbGVjdGlvblN0YXJ0LCByZXN1bHQpOwogICAgIH0gZWxzZSB7CiAgICAg
ICAgIGlmIChzZWxlY3Rpb25FbmQgPD0gcmVzdWx0KQogICAgICAgICAgICAgcmVzdWx0ID0gc2Vs
ZWN0aW9uRW5kLnByZXZpb3VzKCk7Ci0gICAgICAgIGVsc2UgaWYgKHRhcmdldE5vZGUgJiYgc2Vs
ZWN0aW9uRW5kLmRlZXBFcXVpdmFsZW50KCkudHJlZVNjb3BlKCkgIT0gJnRhcmdldE5vZGUtPnRy
ZWVTY29wZSgpKQorICAgICAgICBlbHNlIGlmIChhdXRvIHRyZWVTY29wZSA9IHNlbGVjdGlvbkVu
ZC5kZWVwRXF1aXZhbGVudCgpLnRyZWVTY29wZSgpOyB0cmVlU2NvcGUgJiYgdGFyZ2V0Tm9kZSAm
JiB0YXJnZXROb2RlLT5pc0luVHJlZVNjb3BlKCkgJiYgdHJlZVNjb3BlICE9ICZ0YXJnZXROb2Rl
LT50cmVlU2NvcGUoKSkKICAgICAgICAgICAgIHJlc3VsdCA9IFZpc2libGVTZWxlY3Rpb246OmFk
anVzdFBvc2l0aW9uRm9yU3RhcnQocmVzdWx0LmRlZXBFcXVpdmFsZW50KCksIHNlbGVjdGlvbkVu
ZC5kZWVwRXF1aXZhbGVudCgpLmNvbnRhaW5lck5vZGUoKSk7CiAKICAgICAgICAgcmFuZ2UgPSBt
YWtlU2ltcGxlUmFuZ2UocmVzdWx0LCBzZWxlY3Rpb25FbmQpOwpkaWZmIC0tZ2l0IGEvVG9vbHMv
Q2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IGM5M2U0MGNhMWY1YmY0YzM2NDRlYmZm
MGZhZGI4NDRmNDMyNmYwNWIuLjY0ZTcyNTQwZTQ2ZmZhZTllMGE1MzhjOTM3YjEyMzVjMjRmYjVh
NDcgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwxOCBAQAorMjAyMS0wNC0yNiAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFw
cGxlLmNvbT4KKworICAgICAgICBTdWJkaXZpZGUgaW1hZ2Ugb3ZlcmxheSB0ZXh0IGludG8gb25l
IG9yIG1vcmUgZWxlbWVudHMgcGVyIGxpbmUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIyNTAzOAorICAgICAgICByZGFyOi8vNzU1MDUwNDMKKworICAg
ICAgICBSZXZpZXdlZCBieSBUaW0gSG9ydG9uIGFuZCBEZXZpbiBSb3Vzc28uCisKKyAgICAgICAg
QWRqdXN0IHNldmVyYWwgZXhpc3RpbmcgbGF5b3V0IHRlc3RzIGFmdGVyIGNoYW5naW5nIGBpbnRl
cm5hbHMuaW5zdGFsbEltYWdlT3ZlcmxheWAuIFNlZSBXZWJDb3JlIENoYW5nZUxvZyBmb3IKKyAg
ICAgICAgbW9yZSBkZXRhaWxzLiBBZGRpdGlvbmFsbHksIHJlbmFtZSBhIFdlYkNvcmUgZ2VvbWV0
cnkgaGVscGVyIG1ldGhvZC4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViQ29y
ZS9GbG9hdFF1YWRUZXN0cy5jcHA6CisgICAgICAgIChUZXN0V2ViS2l0QVBJOjpURVNUKToKKyAg
ICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9zaW1wbGUtaW1hZ2Utb3ZlcmxheS5o
dG1sOgorCiAyMDIxLTA0LTI2ICBEb24gT2xtc3RlYWQgIDxkb24ub2xtc3RlYWRAc29ueS5jb20+
CiAKICAgICAgICAgW0NNYWtlXSBNb2Rlcm5pemUgV2ViS2l0IEdMaWIgdGVzdGluZwpkaWZmIC0t
Z2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJDb3JlL0Zsb2F0UXVhZFRlc3RzLmNw
cCBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViQ29yZS9GbG9hdFF1YWRUZXN0cy5jcHAK
aW5kZXggOGY1ZTJiNzNmZGUxYTQwZGRlOGU5MmE4YzJjYTdjMjgzYzExYzllYy4uODNjMWY1YmYy
MTA4MmY0NzFkNTQzNjgyOTA3ZDZmNzA4ZDY3YzE2MiAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdl
YktpdEFQSS9UZXN0cy9XZWJDb3JlL0Zsb2F0UXVhZFRlc3RzLmNwcAorKysgYi9Ub29scy9UZXN0
V2ViS2l0QVBJL1Rlc3RzL1dlYkNvcmUvRmxvYXRRdWFkVGVzdHMuY3BwCkBAIC00OCw3ICs0OCw3
IEBAIHN0YXRpYyB2b2lkIGV4cGVjdFJvdGF0ZWRSZWN0KGNvbnN0IEZsb2F0UG9pbnQmIGNlbnRl
ciwgY29uc3QgRmxvYXRTaXplJiBzaXplLCBmCiAKIFRFU1QoRmxvYXRRdWFkLCBSb3RhdGVkQm91
bmRpbmdSZWN0Rm9yUG9pbnQpCiB7Ci0gICAgZXhwZWN0Um90YXRlZFJlY3QoeyAxLCAtNSB9LCB7
IDAsIDAgfSwgMCwgcm90YXRlZEJvdW5kaW5nUmVjdCh7CisgICAgZXhwZWN0Um90YXRlZFJlY3Qo
eyAxLCAtNSB9LCB7IDAsIDAgfSwgMCwgcm90YXRlZEJvdW5kaW5nUmVjdFdpdGhNaW5pbXVtQW5n
bGVPZlJvdGF0aW9uKHsKICAgICAgICAgRmxvYXRQb2ludCgxLCAtNSksCiAgICAgICAgIEZsb2F0
UG9pbnQoMSwgLTUpLAogICAgICAgICBGbG9hdFBvaW50KDEsIC01KSwKQEAgLTU4LDcgKzU4LDcg
QEAgVEVTVChGbG9hdFF1YWQsIFJvdGF0ZWRCb3VuZGluZ1JlY3RGb3JQb2ludCkKIAogVEVTVChG
bG9hdFF1YWQsIFJvdGF0ZWRCb3VuZGluZ1JlY3RGb3JMaW5lU2VnbWVudCkKIHsKLSAgICBleHBl
Y3RSb3RhdGVkUmVjdCh7IDAsIC01IH0sIHsgMjAsIDAgfSwgMCwgcm90YXRlZEJvdW5kaW5nUmVj
dCh7CisgICAgZXhwZWN0Um90YXRlZFJlY3QoeyAwLCAtNSB9LCB7IDIwLCAwIH0sIDAsIHJvdGF0
ZWRCb3VuZGluZ1JlY3RXaXRoTWluaW11bUFuZ2xlT2ZSb3RhdGlvbih7CiAgICAgICAgIEZsb2F0
UG9pbnQoLTEwLCAtNSksCiAgICAgICAgIEZsb2F0UG9pbnQoMTAsIC01KSwKICAgICAgICAgRmxv
YXRQb2ludCgxMCwgLTUpLApAQCAtNjgsNyArNjgsNyBAQCBURVNUKEZsb2F0UXVhZCwgUm90YXRl
ZEJvdW5kaW5nUmVjdEZvckxpbmVTZWdtZW50KQogCiBURVNUKEZsb2F0UXVhZCwgUm90YXRlZEJv
dW5kaW5nUmVjdEZvclRyaWFuZ2xlKQogewotICAgIGV4cGVjdFJvdGF0ZWRSZWN0KHsgMTAsIDAg
fSwgeyA0MCwgMjAgfSwgMCwgcm90YXRlZEJvdW5kaW5nUmVjdCh7CisgICAgZXhwZWN0Um90YXRl
ZFJlY3QoeyAxMCwgMCB9LCB7IDQwLCAyMCB9LCAwLCByb3RhdGVkQm91bmRpbmdSZWN0V2l0aE1p
bmltdW1BbmdsZU9mUm90YXRpb24oewogICAgICAgICBGbG9hdFBvaW50KC0xMCwgLTEwKSwKICAg
ICAgICAgRmxvYXRQb2ludCgzMCwgMCksCiAgICAgICAgIEZsb2F0UG9pbnQoMzAsIDApLApAQCAt
NzgsMTQgKzc4LDE0IEBAIFRFU1QoRmxvYXRRdWFkLCBSb3RhdGVkQm91bmRpbmdSZWN0Rm9yVHJp
YW5nbGUpCiAKIFRFU1QoRmxvYXRRdWFkLCBSb3RhdGVkQm91bmRpbmdSZWN0Rm9yVHJhcGV6b2lk
KQogewotICAgIGV4cGVjdFJvdGF0ZWRSZWN0KHsgMjUsIDE1IH0sIHsgMjguMjg0LCAxNC4xNDIg
fSwgNS40OTgsIHJvdGF0ZWRCb3VuZGluZ1JlY3QoeworICAgIGV4cGVjdFJvdGF0ZWRSZWN0KHsg
MjUsIDE1IH0sIHsgMjguMjg0LCAxNC4xNDIgfSwgNS40OTgsIHJvdGF0ZWRCb3VuZGluZ1JlY3RX
aXRoTWluaW11bUFuZ2xlT2ZSb3RhdGlvbih7CiAgICAgICAgIEZsb2F0UG9pbnQoMTAsIDIwKSwK
ICAgICAgICAgRmxvYXRQb2ludCgyMCwgMTApLAogICAgICAgICBGbG9hdFBvaW50KDQwLCAxMCks
CiAgICAgICAgIEZsb2F0UG9pbnQoMjAsIDMwKQogICAgIH0pKTsKIAotICAgIGV4cGVjdFJvdGF0
ZWRSZWN0KHsgMjAsIDI1IH0sIHsgMjYuODMsIDEzLjQyIH0sIDEuMTA3LCByb3RhdGVkQm91bmRp
bmdSZWN0KHsKKyAgICBleHBlY3RSb3RhdGVkUmVjdCh7IDIwLCAyNSB9LCB7IDI2LjgzLCAxMy40
MiB9LCAxLjEwNywgcm90YXRlZEJvdW5kaW5nUmVjdFdpdGhNaW5pbXVtQW5nbGVPZlJvdGF0aW9u
KHsKICAgICAgICAgRmxvYXRQb2ludCgyMCwgMTApLAogICAgICAgICBGbG9hdFBvaW50KDMwLCAz
MCksCiAgICAgICAgIEZsb2F0UG9pbnQoMjAsIDQwKSwKQEAgLTk1LDE0ICs5NSwxNCBAQCBURVNU
KEZsb2F0UXVhZCwgUm90YXRlZEJvdW5kaW5nUmVjdEZvclRyYXBlem9pZCkKIAogVEVTVChGbG9h
dFF1YWQsIFJvdGF0ZWRCb3VuZGluZ1JlY3RXaXRoTWluaW11bUFuZ2xlKQogewotICAgIGV4cGVj
dFJvdGF0ZWRSZWN0KHsgMjAsIC0xNC45NSB9LCB7IDIwLCAxMC4xIH0sIDAsIHJvdGF0ZWRCb3Vu
ZGluZ1JlY3QoeworICAgIGV4cGVjdFJvdGF0ZWRSZWN0KHsgMjAsIC0xNC45NSB9LCB7IDIwLCAx
MC4xIH0sIDAsIHJvdGF0ZWRCb3VuZGluZ1JlY3RXaXRoTWluaW11bUFuZ2xlT2ZSb3RhdGlvbih7
CiAgICAgICAgIEZsb2F0UG9pbnQoMTAsIC0yMCksCiAgICAgICAgIEZsb2F0UG9pbnQoMzAsIC0x
OS45KSwKICAgICAgICAgRmxvYXRQb2ludCgzMCwgLTkuOSksCiAgICAgICAgIEZsb2F0UG9pbnQo
MTAsIC0xMCkKICAgICB9LCAwLjAxKSk7CiAKLSAgICBleHBlY3RSb3RhdGVkUmVjdCh7IDIwLCAt
MTUuMDUgfSwgeyAyMCwgMTAuMSB9LCAwLCByb3RhdGVkQm91bmRpbmdSZWN0KHsKKyAgICBleHBl
Y3RSb3RhdGVkUmVjdCh7IDIwLCAtMTUuMDUgfSwgeyAyMCwgMTAuMSB9LCAwLCByb3RhdGVkQm91
bmRpbmdSZWN0V2l0aE1pbmltdW1BbmdsZU9mUm90YXRpb24oewogICAgICAgICBGbG9hdFBvaW50
KDEwLCAtMjApLAogICAgICAgICBGbG9hdFBvaW50KDMwLCAtMjAuMSksCiAgICAgICAgIEZsb2F0
UG9pbnQoMzAsIC0xMC4xKSwKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMv
V2ViS2l0L3NpbXBsZS1pbWFnZS1vdmVybGF5Lmh0bWwgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rl
c3RzL1dlYktpdC9zaW1wbGUtaW1hZ2Utb3ZlcmxheS5odG1sCmluZGV4IDk4YzBiN2EzYWIyZGI3
M2Y3ZjViY2VjYmEyMzFkZjNiZTM4Y2I0OGEuLjJiOWRjZTNhMjVmYjBiMjRiNzM0NzJhNzNkYjEy
NDU2YWY5MzU5NWMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0
L3NpbXBsZS1pbWFnZS1vdmVybGF5Lmh0bWwKKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0
cy9XZWJLaXQvc2ltcGxlLWltYWdlLW92ZXJsYXkuaHRtbApAQCAtMTgsMTEgKzE4LDE5IEBAIGFk
ZEV2ZW50TGlzdGVuZXIoImxvYWQiLCAoKSA9PiB7CiAgICAgICAgIHJldHVybjsKIAogICAgIGlu
dGVybmFscy5pbnN0YWxsSW1hZ2VPdmVybGF5KGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImltZyIp
LCBbewotICAgICAgICB0ZXh0IDogImZvb2JhciIsCiAgICAgICAgIHRvcExlZnQgOiBuZXcgRE9N
UG9pbnRSZWFkT25seSgwLCAwKSwKICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFk
T25seSgxLCAwKSwKICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgx
LCAwLjUpLAogICAgICAgICBib3R0b21MZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMC41
KSwKKyAgICAgICAgY2hpbGRyZW46IFsKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICB0
ZXh0IDogImZvb2JhciIsCisgICAgICAgICAgICAgICAgdG9wTGVmdCA6IG5ldyBET01Qb2ludFJl
YWRPbmx5KDAsIDApLAorICAgICAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBvaW50UmVh
ZE9ubHkoMSwgMCksCisgICAgICAgICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRS
ZWFkT25seSgxLCAwLjUpLAorICAgICAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9p
bnRSZWFkT25seSgwLCAwLjUpLAorICAgICAgICAgICAgfQorICAgICAgICBdCiAgICAgfV0pOwog
fSk7CiA8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91
dFRlc3RzL0NoYW5nZUxvZwppbmRleCBhM2YxODg0ZjQ4NzU1YzBiZmYxYjcwY2ZlZmI4Yzg5ZTM3
MmU3YjAzLi4zOWNjOTIwNzE5ZjM2Njk2MGI0MWEzMjcyNTM1ZDljZjg4NDkwOWJmIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsNDUgQEAKKzIwMjEtMDQtMjYgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBh
cHBsZS5jb20+CisKKyAgICAgICAgU3ViZGl2aWRlIGltYWdlIG92ZXJsYXkgdGV4dCBpbnRvIG9u
ZSBvciBtb3JlIGVsZW1lbnRzIHBlciBsaW5lCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMjUwMzgKKyAgICAgICAgcmRhcjovLzc1NTA1MDQzCisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgVGltIEhvcnRvbiBhbmQgRGV2aW4gUm91c3NvLgorCisgICAgICAg
IEFkanVzdCBzZXZlcmFsIGV4aXN0aW5nIGxheW91dCB0ZXN0cyBhZnRlciBjaGFuZ2luZyBgaW50
ZXJuYWxzLmluc3RhbGxJbWFnZU92ZXJsYXlgLiBTZWUgV2ViQ29yZSBDaGFuZ2VMb2cgZm9yCisg
ICAgICAgIG1vcmUgZGV0YWlscy4KKworICAgICAgICAqIGZhc3QvaW1hZ2VzL2ltYWdlLWV4dHJh
Y3Rpb24vYmFzaWMtaW1hZ2Utb3ZlcmxheS5odG1sOgorICAgICAgICAqIGZhc3QvaW1hZ2VzL2lt
YWdlLWV4dHJhY3Rpb24vY2xpY2stbGluay13aXRoLWltYWdlLW92ZXJsYXkuaHRtbDoKKyAgICAg
ICAgKiBmYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2ltYWdlLW92ZXJsYXktY3JlYXRpb24t
aXMtaWRlbXBvdGVudC5odG1sOgorICAgICAgICAqIGZhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rp
b24vaW1hZ2Utb3ZlcmxheS1pbi1pbWFnZS13aXRoLXplcm8tZm9udC1zaXplLmh0bWw6CisgICAg
ICAgICogZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9pbWFnZS1vdmVybGF5LXdpdGgtc2Vs
ZWN0aW9uLXN0eWxlcy1leHBlY3RlZC5odG1sOgorICAgICAgICAqIGZhc3QvaW1hZ2VzL2ltYWdl
LWV4dHJhY3Rpb24vaW1hZ2Utb3ZlcmxheS13aXRoLXNlbGVjdGlvbi1zdHlsZXMuaHRtbDoKKyAg
ICAgICAgKiBmYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2lvcy9yZXNlbGVjdC13b3JkLWlu
LWltYWdlLW92ZXJsYXkuaHRtbDoKKyAgICAgICAgKiBmYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0
aW9uL2lvcy9zZWxlY3Qtd29yZC1pbi1pbWFnZS1vdmVybGF5LWluc2lkZS1saW5rLmh0bWw6Cisg
ICAgICAgICogZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9pb3Mvc2VsZWN0LXdvcmQtaW4t
aW1hZ2Utb3ZlcmxheS5odG1sOgorICAgICAgICAqIGZhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rp
b24vaW9zL3NlbGVjdGlvbi1yZWN0cy1pbi1pbWFnZS1vdmVybGF5Lmh0bWw6CisgICAgICAgICog
ZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9tYWMvY29weS1pbWFnZS1vdmVybGF5LXRleHQt
d2l0aC1jb250ZXh0LW1lbnUuaHRtbDoKKyAgICAgICAgKiBmYXN0L2ltYWdlcy9pbWFnZS1leHRy
YWN0aW9uL21hYy9zZWxlY3QtaW1hZ2Utb3ZlcmxheS1pbi1saW5rLXdpdGgtbW91c2UtZHJhZy5o
dG1sOgorICAgICAgICAqIGZhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vbWFjL3NlbGVjdC1p
bWFnZS1vdmVybGF5LXdpdGgtbW91c2UtZHJhZy1kb2VzLW5vdC1maXJlLWNsaWNrLmh0bWw6Cisg
ICAgICAgICogZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9tYWMvc2VsZWN0LWltYWdlLW92
ZXJsYXktd2l0aC1tb3VzZS1kcmFnLmh0bWw6CisgICAgICAgICogZmFzdC9pbWFnZXMvaW1hZ2Ut
ZXh0cmFjdGlvbi9tYWMvc2VsZWN0LXdvcmQtaW4tZHJhZ2dhYmxlLWltYWdlLW92ZXJsYXkuaHRt
bDoKKyAgICAgICAgKiBmYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL21hYy9zZWxlY3Qtd29y
ZC1pbi10cmFuc3BhcmVudC1pbWFnZS1vdmVybGF5Lmh0bWw6CisKKzIwMjEtMDQtMjYgIFdlbnNv
biBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAgICAgW2lPU10gV2ViIGNv
bnRlbnQgcHJvY2VzcyBvY2Nhc2lvbmFsbHkgY3Jhc2hlcyB1bmRlciBWaXNpYmxlU2VsZWN0aW9u
OjphZGp1c3RQb3NpdGlvbkZvckVuZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjI1MDcyCisgICAgICAgIHJkYXI6Ly83NzE1OTQ4OQorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBhIGxheW91dCB0ZXN0
IHRoYXQgcHJvZ3JhbW1hdGljYWxseSBjbGVhcnMgdGhlIHNlbGVjdGlvbiBpbiB0aGUgbWlkZGxl
IG9mIGNoYW5naW5nIGl0IGJ5IG1vdmluZyBzZWxlY3Rpb24KKyAgICAgICAgaGFuZGxlcy4KKwor
ICAgICAgICAqIGVkaXRpbmcvc2VsZWN0aW9uL2lvcy9jbGVhci1zZWxlY3Rpb24td2hpbGUtbW92
aW5nLXNlbGVjdGlvbi1oYW5kbGVzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZWRp
dGluZy9zZWxlY3Rpb24vaW9zL2NsZWFyLXNlbGVjdGlvbi13aGlsZS1tb3Zpbmctc2VsZWN0aW9u
LWhhbmRsZXMuaHRtbDogQWRkZWQuCisKIDIwMjEtMDQtMjYgIENocmlzIEdhbWJyZWxsICA8Y2dh
bWJyZWxsQGFwcGxlLmNvbT4KIAogICAgICAgICBbTGF5b3V0VGVzdHNdIENvbnZlcnQgaHR0cC90
ZXN0cy9yZXNvdXJjZXMgY29udmVydCBQSFAgdG8gUHl0aG9uCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3MvY2xlYXItc2VsZWN0aW9uLXdoaWxlLW1vdmluZy1z
ZWxlY3Rpb24taGFuZGxlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVj
dGlvbi9pb3MvY2xlYXItc2VsZWN0aW9uLXdoaWxlLW1vdmluZy1zZWxlY3Rpb24taGFuZGxlcy1l
eHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjNlYzQzMTIxNTRkMzYwMzA3ZDMzYjA4ZTVlY2VmMWZm
ZTQ0YjdkYwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9u
L2lvcy9jbGVhci1zZWxlY3Rpb24td2hpbGUtbW92aW5nLXNlbGVjdGlvbi1oYW5kbGVzLWV4cGVj
dGVkLnR4dApAQCAtMCwwICsxLDYgQEAKK1BBU1MgRGlkIG5vdCBjcmFzaAorUEFTUyBzdWNjZXNz
ZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCitMb3JlbSBpcHN1bSBkb2xvciBz
aXQgYW1ldCwgY29uc2V0ZXR1ciBzYWRpcHNjaW5nIGVsaXRyLCBzZWQgZGlhbSBub251bXllaXJt
b2R0ZW1wb3IgaW52aWR1bnQgdXQgbGFib3JlIGV0IGRvbG9yZSBtYWduYSBhbGlxdXlhbSBlcmF0
LCBzZWQgZGlhbSB2b2x1cHR1YS4KK1RoaXMgdGVzdCB2ZXJpZmllcyB0aGF0IHByb2dyYW1tYXRp
Y2FsbHkgY2xlYXJpbmcgdGhlIHRleHQgc2VsZWN0aW9uIHdoaWxlIGludGVyYWN0aW5nIHdpdGgg
c2VsZWN0aW9uIGhhbmRsZXMgZG9lcyBub3QgY2F1c2UgYSBjcmFzaC4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2lvcy9jbGVhci1zZWxlY3Rpb24td2hpbGUtbW92
aW5nLXNlbGVjdGlvbi1oYW5kbGVzLmh0bWwgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlv
bi9pb3MvY2xlYXItc2VsZWN0aW9uLXdoaWxlLW1vdmluZy1zZWxlY3Rpb24taGFuZGxlcy5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjc4MTI5MDE5Nzk2NGRlNTljMDY2NTgyODgxZmJiZDUyZWE2MTI2ZDMKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3MvY2xlYXIt
c2VsZWN0aW9uLXdoaWxlLW1vdmluZy1zZWxlY3Rpb24taGFuZGxlcy5odG1sCkBAIC0wLDAgKzEs
NDggQEAKKzwhRE9DVFlQRSBodG1sPiA8IS0tIHdlYmtpdC10ZXN0LXJ1bm5lciBbIHVzZUZsZXhp
YmxlVmlld3BvcnQ9dHJ1ZSBdIC0tPgorPGh0bWw+Cis8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29u
dGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEiPgorPGhlYWQ+Cis8c2Ny
aXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0PgorPHNjcmlw
dCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy91aS1oZWxwZXIuanMiPjwvc2NyaXB0PgorPHN0eWxl
PgorYm9keSB7CisgICAgbWFyZ2luOiAwOworICAgIGZvbnQtc2l6ZTogMThweDsKK30KKzwvc3R5
bGU+Cis8c2NyaXB0PgoranNUZXN0SXNBc3luYyA9IHRydWU7CisKK2FkZEV2ZW50TGlzdGVuZXIo
ImxvYWQiLCBhc3luYyAoKSA9PiB7CisgICAgbGV0IHRhcmdldCA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJ0YXJnZXQiKTsKKyAgICBhd2FpdCBVSUhlbHBlci5sb25nUHJlc3NFbGVtZW50KHRh
cmdldCk7CisgICAgYXdhaXQgVUlIZWxwZXIud2FpdEZvclNlbGVjdGlvblRvQXBwZWFyKCk7Cisg
ICAgbGV0IGdyYWJiZXJSZWN0ID0gYXdhaXQgVUlIZWxwZXIuZ2V0U2VsZWN0aW9uRW5kR3JhYmJl
clZpZXdSZWN0KCk7CisgICAgbGV0IGdyYWJiZXJMb2NhdGlvblggPSBncmFiYmVyUmVjdC5sZWZ0
ICsgKGdyYWJiZXJSZWN0LndpZHRoIC8gMik7CisgICAgbGV0IGdyYWJiZXJMb2NhdGlvblkgPSBn
cmFiYmVyUmVjdC50b3AgKyAoZ3JhYmJlclJlY3QuaGVpZ2h0IC8gMik7CisKKyAgICBzZWxlY3Rp
b25DaGFuZ2VDb3VudCA9IDA7CisgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigic2VsZWN0
aW9uY2hhbmdlIiwgKCkgPT4geworICAgICAgICArK3NlbGVjdGlvbkNoYW5nZUNvdW50OworICAg
ICAgICBpZiAoc2VsZWN0aW9uQ2hhbmdlQ291bnQgPiA1ICYmIGdldFNlbGVjdGlvbigpLnJhbmdl
Q291bnQpCisgICAgICAgICAgICBnZXRTZWxlY3Rpb24oKS5yZW1vdmVBbGxSYW5nZXMoKTsKKyAg
ICB9KTsKKworICAgIGF3YWl0IFVJSGVscGVyLnNlbmRFdmVudFN0cmVhbShuZXcgVUlIZWxwZXIu
RXZlbnRTdHJlYW1CdWlsZGVyKCkKKyAgICAgICAgLmJlZ2luKGdyYWJiZXJMb2NhdGlvblgsIGdy
YWJiZXJMb2NhdGlvblkpCisgICAgICAgIC5tb3ZlKDEwLCBncmFiYmVyTG9jYXRpb25ZLCAxKQor
ICAgICAgICAuZW5kKDEwLCBncmFiYmVyTG9jYXRpb25ZKQorICAgICAgICAudGFrZVJlc3VsdCgp
KTsKKworICAgIHRlc3RQYXNzZWQoIkRpZCBub3QgY3Jhc2giKTsKKyAgICBmaW5pc2hKU1Rlc3Qo
KTsKK30pOworPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKyAgICBMb3JlbSBpcHN1bSBkb2xv
ciBzaXQgYW1ldCwgY29uc2V0ZXR1ciBzYWRpcHNjaW5nIGVsaXRyLCBzZWQgZGlhbQorICAgIDxz
cGFuIGlkPSJ0YXJnZXQiPm5vbnVteWVpcm1vZHRlbXBvcjwvc3Bhbj4gaW52aWR1bnQgdXQgbGFi
b3JlIGV0IGRvbG9yZSBtYWduYSBhbGlxdXlhbSBlcmF0LAorICAgIHNlZCBkaWFtIHZvbHVwdHVh
LgorICAgIDxwPlRoaXMgdGVzdCB2ZXJpZmllcyB0aGF0IHByb2dyYW1tYXRpY2FsbHkgY2xlYXJp
bmcgdGhlIHRleHQgc2VsZWN0aW9uIHdoaWxlIGludGVyYWN0aW5nIHdpdGggc2VsZWN0aW9uIGhh
bmRsZXMgZG9lcyBub3QgY2F1c2UgYSBjcmFzaC48L3A+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2Jhc2ljLWlt
YWdlLW92ZXJsYXkuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rp
b24vYmFzaWMtaW1hZ2Utb3ZlcmxheS5odG1sCmluZGV4IGE4MWMzNmUwNzc2NWQ2OTBhNjg0ZTZi
ZDA1YTZjNGE0MWQ0NTBlNzcuLjk5YTBjZTYxODA2ZThlYTNhM2IzODRlZWM1Zjg2OTA2ODM4YzZj
NDcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24v
YmFzaWMtaW1hZ2Utb3ZlcmxheS5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2lt
YWdlLWV4dHJhY3Rpb24vYmFzaWMtaW1hZ2Utb3ZlcmxheS5odG1sCkBAIC01LDEzICs1LDIxIEBA
CiA8c2NyaXB0PgogYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsICgpID0+IHsKICAgICBsZXQgaW1h
Z2UgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJpbWciKTsKLSAgICBpbnRlcm5hbHMuaW5zdGFs
bEltYWdlT3ZlcmxheShpbWFnZSwgW3sKLSAgICAgICAgdGV4dCA6ICJIZWxsbyIsCi0gICAgICAg
IHRvcExlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjUsIDAuNSksCi0gICAgICAgIHRvcFJp
Z2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwKLSAgICAgICAgYm90dG9tUmlnaHQg
OiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAxKSwKLSAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBE
T01Qb2ludFJlYWRPbmx5KDAuNSwgMSksCi0gICAgfV0pOworICAgIGludGVybmFscy5pbnN0YWxs
SW1hZ2VPdmVybGF5KGltYWdlLCBbCisgICAgICAgIHsKKyAgICAgICAgICAgIHRvcExlZnQgOiBu
ZXcgRE9NUG9pbnRSZWFkT25seSgwLjUsIDAuNSksCisgICAgICAgICAgICB0b3BSaWdodCA6IG5l
dyBET01Qb2ludFJlYWRPbmx5KDEsIDAuNSksCisgICAgICAgICAgICBib3R0b21SaWdodCA6IG5l
dyBET01Qb2ludFJlYWRPbmx5KDEsIDEpLAorICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBE
T01Qb2ludFJlYWRPbmx5KDAuNSwgMSksCisgICAgICAgICAgICBjaGlsZHJlbjogW3sKKyAgICAg
ICAgICAgICAgICB0ZXh0IDogIkhlbGxvIiwKKyAgICAgICAgICAgICAgICB0b3BMZWZ0IDogbmV3
IERPTVBvaW50UmVhZE9ubHkoMC41LCAwLjUpLAorICAgICAgICAgICAgICAgIHRvcFJpZ2h0IDog
bmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwKKyAgICAgICAgICAgICAgICBib3R0b21SaWdo
dCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDEpLAorICAgICAgICAgICAgICAgIGJvdHRvbUxl
ZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjUsIDEpLAorICAgICAgICAgICAgfV0sCisgICAg
ICAgIH0KKyAgICBdKTsKICAgICBpbnRlcm5hbHMuc2hhZG93Um9vdChpbWFnZSkuZ2V0RWxlbWVu
dEJ5SWQoImltYWdlLW92ZXJsYXkiKS5zdHlsZS5jb2xvciA9ICJibGFjayI7CiB9KTsKIDwvc2Ny
aXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlv
bi9jbGljay1saW5rLXdpdGgtaW1hZ2Utb3ZlcmxheS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9p
bWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9jbGljay1saW5rLXdpdGgtaW1hZ2Utb3ZlcmxheS5odG1s
CmluZGV4IGFlOGRhYTQ3ODY0ZTM0OTkyNjRkY2FiNWY3MTBiYzkwZjhhYjRjOGYuLjYxMGU4NmVm
ODdjZDE2NzMzMmMwZWE2MzZkNWYxN2E4YjkzMDk2MzUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vY2xpY2stbGluay13aXRoLWltYWdlLW92ZXJs
YXkuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2Ns
aWNrLWxpbmstd2l0aC1pbWFnZS1vdmVybGF5Lmh0bWwKQEAgLTMwLDYgKzMwLDI0IEBAIGFkZEV2
ZW50TGlzdGVuZXIoImxvYWQiLCBhc3luYyAoKSA9PiB7CiAgICAgICAgIGNsaWNrQ291bnQrKzsK
ICAgICB9KTsKIAorICAgIGludGVybmFscy5pbnN0YWxsSW1hZ2VPdmVybGF5KGRvY3VtZW50LnF1
ZXJ5U2VsZWN0b3IoImltZyIpLCBbCisgICAgICAgIHsKKyAgICAgICAgICAgIHRvcExlZnQgOiBu
ZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwKSwKKyAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERP
TVBvaW50UmVhZE9ubHkoMSwgMCksCisgICAgICAgICAgICBib3R0b21SaWdodCA6IG5ldyBET01Q
b2ludFJlYWRPbmx5KDEsIDAuMjUpLAorICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Q
b2ludFJlYWRPbmx5KDAsIDAuMjUpLAorICAgICAgICAgICAgY2hpbGRyZW46IFsKKyAgICAgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHRleHQgOiAiaGVsbG8iLAorICAgICAgICAg
ICAgICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMCksCisgICAgICAg
ICAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMCksCisgICAg
ICAgICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC4y
NSksCisgICAgICAgICAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25s
eSgwLCAwLjI1KSwKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICBdLAorICAgICAgICB9
CisgICAgXSk7CisKICAgICBpbnRlcm5hbHMuaW5zdGFsbEltYWdlT3ZlcmxheShkb2N1bWVudC5x
dWVyeVNlbGVjdG9yKCJpbWciKSwgWwogICAgICAgICB7CiAgICAgICAgICAgICB0ZXh0IDogImhl
bGxvIiwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rp
b24vaW1hZ2Utb3ZlcmxheS1jcmVhdGlvbi1pcy1pZGVtcG90ZW50Lmh0bWwgYi9MYXlvdXRUZXN0
cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2ltYWdlLW92ZXJsYXktY3JlYXRpb24taXMt
aWRlbXBvdGVudC5odG1sCmluZGV4IDVkYzkwODRiMjNjZWMyZWI3ZTZmOGQ4Y2EwZWJlMDk2YTU2
ZjYxOTIuLmI2Y2NkZmI2MzNlOWIyNGU0M2YwNGMzZjk4ZmYzMDJmNTNmZGI5MjggMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vaW1hZ2Utb3Zlcmxh
eS1jcmVhdGlvbi1pcy1pZGVtcG90ZW50Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFn
ZXMvaW1hZ2UtZXh0cmFjdGlvbi9pbWFnZS1vdmVybGF5LWNyZWF0aW9uLWlzLWlkZW1wb3RlbnQu
aHRtbApAQCAtNywxMyArNywyMyBAQAogYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsICgpID0+IHsK
ICAgICBpbWFnZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImltZyIpOwogICAgIGZvciAobGV0
IGkgPSAwOyBpIDwgMTA7ICsraSkgewotICAgICAgICBpbnRlcm5hbHMuaW5zdGFsbEltYWdlT3Zl
cmxheShpbWFnZSwgW3sKLSAgICAgICAgICAgIHRleHQgOiAiSGVsbG8iLAotICAgICAgICAgICAg
dG9wTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuNSwgMC41KSwKLSAgICAgICAgICAgIHRv
cFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwKLSAgICAgICAgICAgIGJvdHRv
bVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMSksCi0gICAgICAgICAgICBib3R0b21M
ZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC41LCAxKSwKLSAgICAgICAgfV0pOworICAgICAg
ICBpbnRlcm5hbHMuaW5zdGFsbEltYWdlT3ZlcmxheShpbWFnZSwgWworICAgICAgICAgICAgewor
ICAgICAgICAgICAgICAgIHRvcExlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjUsIDAuNSks
CisgICAgICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwLjUp
LAorICAgICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwg
MSksCisgICAgICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAu
NSwgMSksCisgICAgICAgICAgICAgICAgY2hpbGRyZW46IFsKKyAgICAgICAgICAgICAgICAgICAg
eworICAgICAgICAgICAgICAgICAgICAgICAgdGV4dCA6ICJIZWxsbyIsCisgICAgICAgICAgICAg
ICAgICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC41LCAwLjUpLAorICAg
ICAgICAgICAgICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAw
LjUpLAorICAgICAgICAgICAgICAgICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRS
ZWFkT25seSgxLCAxKSwKKyAgICAgICAgICAgICAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcg
RE9NUG9pbnRSZWFkT25seSgwLjUsIDEpLAorICAgICAgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgICAgICAgXSwKKyAgICAgICAgICAgIH0KKyAgICAgICAgXSk7CiAgICAgfQogICAgIHNob3Vs
ZEJlKCJpbnRlcm5hbHMuc2hhZG93Um9vdChpbWFnZSkuY2hpbGRFbGVtZW50Q291bnQiLCAiMiIp
OwogfSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0
aW9uL2ltYWdlLW92ZXJsYXktaW4taW1hZ2Utd2l0aC16ZXJvLWZvbnQtc2l6ZS5odG1sIGIvTGF5
b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9pbWFnZS1vdmVybGF5LWluLWlt
YWdlLXdpdGgtemVyby1mb250LXNpemUuaHRtbAppbmRleCBjMzgwM2M0MTg0MDU4MzA2NDE1ZWFj
NWU1ZDhiOWI0MGEwY2IyMDBlLi4wMTRiMDU2NDk5NjgxNGRmMzg1ZDBiOGVlMjIyYTk5ODlkYjU1
MDE3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9u
L2ltYWdlLW92ZXJsYXktaW4taW1hZ2Utd2l0aC16ZXJvLWZvbnQtc2l6ZS5odG1sCisrKyBiL0xh
eW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vaW1hZ2Utb3ZlcmxheS1pbi1p
bWFnZS13aXRoLXplcm8tZm9udC1zaXplLmh0bWwKQEAgLTEyLDEzICsxMiwyMyBAQCBpbWcgewog
PHNjcmlwdD4KIGFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCAoKSA9PiB7CiAgICAgbGV0IGltYWdl
ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaW1nIik7Ci0gICAgaW50ZXJuYWxzLmluc3RhbGxJ
bWFnZU92ZXJsYXkoaW1hZ2UsIFt7Ci0gICAgICAgIHRleHQgOiAiSGVsbG8iLAotICAgICAgICB0
b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC41LCAwLjUpLAotICAgICAgICB0b3BSaWdo
dCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDAuNSksCi0gICAgICAgIGJvdHRvbVJpZ2h0IDog
bmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMSksCi0gICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9N
UG9pbnRSZWFkT25seSgwLjUsIDEpLAotICAgIH1dKTsKKyAgICBpbnRlcm5hbHMuaW5zdGFsbElt
YWdlT3ZlcmxheShpbWFnZSwgWworICAgICAgICB7CisgICAgICAgICAgICB0b3BMZWZ0IDogbmV3
IERPTVBvaW50UmVhZE9ubHkoMC41LCAwLjUpLAorICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcg
RE9NUG9pbnRSZWFkT25seSgxLCAwLjUpLAorICAgICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcg
RE9NUG9pbnRSZWFkT25seSgxLCAxKSwKKyAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9N
UG9pbnRSZWFkT25seSgwLjUsIDEpLAorICAgICAgICAgICAgY2hpbGRyZW46IFsKKyAgICAgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHRleHQgOiAiSGVsbG8iLAorICAgICAgICAg
ICAgICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC41LCAwLjUpLAorICAg
ICAgICAgICAgICAgICAgICB0b3BSaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDAuNSks
CisgICAgICAgICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHko
MSwgMSksCisgICAgICAgICAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFk
T25seSgwLjUsIDEpLAorICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIF0sCisgICAgICAg
IH0KKyAgICBdKTsKICAgICBpbnRlcm5hbHMuc2hhZG93Um9vdChpbWFnZSkuZ2V0RWxlbWVudEJ5
SWQoImltYWdlLW92ZXJsYXkiKS5zdHlsZS5jb2xvciA9ICJibGFjayI7CiB9KTsKIDwvc2NyaXB0
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9p
bWFnZS1vdmVybGF5LXdpdGgtc2VsZWN0aW9uLXN0eWxlcy1leHBlY3RlZC5odG1sIGIvTGF5b3V0
VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9pbWFnZS1vdmVybGF5LXdpdGgtc2Vs
ZWN0aW9uLXN0eWxlcy1leHBlY3RlZC5odG1sCmluZGV4IDY3NjhiZTIzZTdiMTVmYTYxZTk5ZTM1
YjljOTEwZjMwYjJlZTMzNGIuLmVhNTI0NTYwOTk2NGFiYzk0ZDc4NmU4MDhhNTU4OGFlZTRiZjc4
NWMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24v
aW1hZ2Utb3ZlcmxheS13aXRoLXNlbGVjdGlvbi1zdHlsZXMtZXhwZWN0ZWQuaHRtbAorKysgYi9M
YXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2ltYWdlLW92ZXJsYXktd2l0
aC1zZWxlY3Rpb24tc3R5bGVzLWV4cGVjdGVkLmh0bWwKQEAgLTIwLDExICsyMCwxOSBAQCBhZGRF
dmVudExpc3RlbmVyKCJsb2FkIiwgKCkgPT4gewogICAgIGNvbnN0IGltYWdlID0gZG9jdW1lbnQu
cXVlcnlTZWxlY3RvcigiaW1nIik7CiAgICAgaW50ZXJuYWxzLmluc3RhbGxJbWFnZU92ZXJsYXko
aW1hZ2UsIFsKICAgICAgICAgewotICAgICAgICAgICAgdGV4dCA6ICJoZWxsbyIsCiAgICAgICAg
ICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMCksCiAgICAgICAgICAgICB0
b3BSaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDApLAogICAgICAgICAgICAgYm90dG9t
UmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwLjUpLAogICAgICAgICAgICAgYm90dG9t
TGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDAuNSksCisgICAgICAgICAgICBjaGlsZHJl
bjogWworICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdGV4dCA6ICJoZWxs
byIsCisgICAgICAgICAgICAgICAgICAgIHRvcExlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgw
LCAwKSwKKyAgICAgICAgICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25s
eSgxLCAwKSwKKyAgICAgICAgICAgICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRS
ZWFkT25seSgxLCAwLjUpLAorICAgICAgICAgICAgICAgICAgICBib3R0b21MZWZ0IDogbmV3IERP
TVBvaW50UmVhZE9ubHkoMCwgMC41KSwKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICBd
LAogICAgICAgICB9CiAgICAgXSk7CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvaW1h
Z2VzL2ltYWdlLWV4dHJhY3Rpb24vaW1hZ2Utb3ZlcmxheS13aXRoLXNlbGVjdGlvbi1zdHlsZXMu
aHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vaW1hZ2Utb3Zl
cmxheS13aXRoLXNlbGVjdGlvbi1zdHlsZXMuaHRtbAppbmRleCA5MzQ0YmU0YjkxMzAzMzgyMmY4
YzU0ZTdiYTYzMjRiODNlMTQxYzllLi45NTk1MmI1Y2IzNmYyMGFhMzVlYmUwYTRjY2ZhNTE3YTc0
NjVhMTIwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0
aW9uL2ltYWdlLW92ZXJsYXktd2l0aC1zZWxlY3Rpb24tc3R5bGVzLmh0bWwKKysrIGIvTGF5b3V0
VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9pbWFnZS1vdmVybGF5LXdpdGgtc2Vs
ZWN0aW9uLXN0eWxlcy5odG1sCkBAIC0xNiwxMSArMTYsMTkgQEAgYWRkRXZlbnRMaXN0ZW5lcigi
bG9hZCIsICgpID0+IHsKICAgICBjb25zdCBpbWFnZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3Io
ImltZyIpOwogICAgIGludGVybmFscy5pbnN0YWxsSW1hZ2VPdmVybGF5KGltYWdlLCBbCiAgICAg
ICAgIHsKLSAgICAgICAgICAgIHRleHQgOiAiaGVsbG8iLAogICAgICAgICAgICAgdG9wTGVmdCA6
IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDApLAogICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcg
RE9NUG9pbnRSZWFkT25seSgxLCAwKSwKICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERP
TVBvaW50UmVhZE9ubHkoMSwgMC41KSwKICAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9N
UG9pbnRSZWFkT25seSgwLCAwLjUpLAorICAgICAgICAgICAgY2hpbGRyZW46IFsKKyAgICAgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHRleHQgOiAiaGVsbG8iLAorICAgICAgICAg
ICAgICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMCksCisgICAgICAg
ICAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMCksCisgICAg
ICAgICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41
KSwKKyAgICAgICAgICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5
KDAsIDAuNSksCisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgXSwKICAgICAgICAgfQog
ICAgIF0pOwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRy
YWN0aW9uL2lvcy9yZXNlbGVjdC13b3JkLWluLWltYWdlLW92ZXJsYXkuaHRtbCBiL0xheW91dFRl
c3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vaW9zL3Jlc2VsZWN0LXdvcmQtaW4taW1h
Z2Utb3ZlcmxheS5odG1sCmluZGV4IDU0NWNlNTU3ZDhkMGFkZGNmZDFmOTdhMDk0ZDcxMzkzMGFm
ZDM0ZjkuLjQ4NTAyY2Y0NTU2Zjg2MjY1M2ZmZWFmNmE3N2JmYTJlMDAxNzQwNDAgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vaW9zL3Jlc2VsZWN0
LXdvcmQtaW4taW1hZ2Utb3ZlcmxheS5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2Vz
L2ltYWdlLWV4dHJhY3Rpb24vaW9zL3Jlc2VsZWN0LXdvcmQtaW4taW1hZ2Utb3ZlcmxheS5odG1s
CkBAIC0xOSwxMSArMTksMTkgQEAgYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIGFzeW5jICgpID0+
IHsKICAgICBsZXQgaW1hZ2UgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJpbWciKTsKICAgICBp
bnRlcm5hbHMuaW5zdGFsbEltYWdlT3ZlcmxheShpbWFnZSwgWwogICAgICAgICB7Ci0gICAgICAg
ICAgICB0ZXh0IDogImZvbyIsCiAgICAgICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVh
ZE9ubHkoMCwgMCksCiAgICAgICAgICAgICB0b3BSaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5
KDEsIDApLAogICAgICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgx
LCAwLjUpLAogICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAs
IDAuNSksCisgICAgICAgICAgICBjaGlsZHJlbjogWworICAgICAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICAgICAgdGV4dCA6ICJmb28iLAorICAgICAgICAgICAgICAgICAgICB0b3BMZWZ0
IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMCksCisgICAgICAgICAgICAgICAgICAgIHRvcFJp
Z2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMCksCisgICAgICAgICAgICAgICAgICAgIGJv
dHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwKKyAgICAgICAgICAgICAg
ICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDAuNSksCisgICAgICAg
ICAgICAgICAgfQorICAgICAgICAgICAgXSwKICAgICAgICAgfQogICAgIF0pOwogICAgIGF3YWl0
IFVJSGVscGVyLmxvbmdQcmVzc0F0UG9pbnQoMjAwLCAxMDApOwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9pb3Mvc2VsZWN0LXdvcmQtaW4taW1h
Z2Utb3ZlcmxheS1pbnNpZGUtbGluay5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1h
Z2UtZXh0cmFjdGlvbi9pb3Mvc2VsZWN0LXdvcmQtaW4taW1hZ2Utb3ZlcmxheS1pbnNpZGUtbGlu
ay5odG1sCmluZGV4IDRjNWFmOTQ4MjQwODAzZDk2ZWU0YTFmYjI3NzE5MTU4NzFkYjE0MjEuLmY4
ZjQ2YzlkNTk0Mjg2NWZlNjA4OGM1ZDU3NzllZjQyM2IxNmRmMDAgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vaW9zL3NlbGVjdC13b3JkLWluLWlt
YWdlLW92ZXJsYXktaW5zaWRlLWxpbmsuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2ltYWdl
cy9pbWFnZS1leHRyYWN0aW9uL2lvcy9zZWxlY3Qtd29yZC1pbi1pbWFnZS1vdmVybGF5LWluc2lk
ZS1saW5rLmh0bWwKQEAgLTI1LDExICsyNSwxOSBAQCBhZGRFdmVudExpc3RlbmVyKCJsb2FkIiwg
YXN5bmMgKCkgPT4gewogICAgIGxldCBpbWFnZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImlt
ZyIpOwogICAgIGludGVybmFscy5pbnN0YWxsSW1hZ2VPdmVybGF5KGltYWdlLCBbCiAgICAgICAg
IHsKLSAgICAgICAgICAgIHRleHQgOiAiaGVsbG8iLAogICAgICAgICAgICAgdG9wTGVmdCA6IG5l
dyBET01Qb2ludFJlYWRPbmx5KDAsIDApLAogICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9N
UG9pbnRSZWFkT25seSgxLCAwKSwKICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBv
aW50UmVhZE9ubHkoMSwgMC4yNSksCiAgICAgICAgICAgICBib3R0b21MZWZ0IDogbmV3IERPTVBv
aW50UmVhZE9ubHkoMCwgMC4yNSksCisgICAgICAgICAgICBjaGlsZHJlbjogWworICAgICAgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdGV4dCA6ICJoZWxsbyIsCisgICAgICAgICAg
ICAgICAgICAgIHRvcExlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwKSwKKyAgICAgICAg
ICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwKSwKKyAgICAg
ICAgICAgICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwLjI1
KSwKKyAgICAgICAgICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5
KDAsIDAuMjUpLAorICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIF0sCiAgICAgICAgIH0K
ICAgICBdKTsKICAgICBhd2FpdCBVSUhlbHBlci5sb25nUHJlc3NBdFBvaW50KDIwMCwgNTApOwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9pb3Mv
c2VsZWN0LXdvcmQtaW4taW1hZ2Utb3ZlcmxheS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFn
ZXMvaW1hZ2UtZXh0cmFjdGlvbi9pb3Mvc2VsZWN0LXdvcmQtaW4taW1hZ2Utb3ZlcmxheS5odG1s
CmluZGV4IDcwODk0ZjU3ZTY5OTBiZDQ0MmMwMWJhZjEyOWZjMTI4ZTE4N2NhNDQuLmMxNjIzN2Nj
ODVkMTI0ZWQ2MTE2MmNhNzkzODQ5OWI1MzU0YzljZjYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vaW9zL3NlbGVjdC13b3JkLWluLWltYWdlLW92
ZXJsYXkuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9u
L2lvcy9zZWxlY3Qtd29yZC1pbi1pbWFnZS1vdmVybGF5Lmh0bWwKQEAgLTE5LDIwICsxOSwzNyBA
QCBhZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgYXN5bmMgKCkgPT4gewogICAgIGxldCBpbWFnZSA9
IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImltZyIpOwogICAgIGludGVybmFscy5pbnN0YWxsSW1h
Z2VPdmVybGF5KGltYWdlLCBbCiAgICAgICAgIHsKLSAgICAgICAgICAgIHRleHQgOiAiaGVsbG8i
LAogICAgICAgICAgICAgdG9wTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDApLAogICAg
ICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwKSwKICAgICAgICAg
ICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwKICAgICAgICAg
ICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwLjUpLAorICAgICAgICAg
ICAgY2hpbGRyZW46IFsKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHRl
eHQgOiAiaGVsbG8iLAorICAgICAgICAgICAgICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50
UmVhZE9ubHkoMCwgMCksCisgICAgICAgICAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBv
aW50UmVhZE9ubHkoMSwgMCksCisgICAgICAgICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3
IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwKKyAgICAgICAgICAgICAgICAgICAgYm90dG9tTGVm
dCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDAuNSksCisgICAgICAgICAgICAgICAgfQorICAg
ICAgICAgICAgXSwKICAgICAgICAgfSwKICAgICAgICAgewotICAgICAgICAgICAgdGV4dCA6ICJ3
b3JsZCIsCiAgICAgICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMC41
KSwKICAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwK
ICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMSksCiAg
ICAgICAgICAgICBib3R0b21MZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMSksCi0gICAg
ICAgIH0sCisgICAgICAgICAgICBjaGlsZHJlbjogWworICAgICAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICAgICAgdGV4dCA6ICJ3b3JsZCIsCisgICAgICAgICAgICAgICAgICAgIHRvcExl
ZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwLjUpLAorICAgICAgICAgICAgICAgICAgICB0
b3BSaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDAuNSksCisgICAgICAgICAgICAgICAg
ICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMSksCisgICAgICAgICAg
ICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAxKSwKKyAgICAg
ICAgICAgICAgICB9CisgICAgICAgICAgICBdLAorICAgICAgICB9CiAgICAgXSk7CisKICAgICBh
d2FpdCBVSUhlbHBlci5sb25nUHJlc3NBdFBvaW50KDIwMCwgMzAwKTsKICAgICBzZWxlY3Rpb25S
ZWN0cyA9IGF3YWl0IFVJSGVscGVyLndhaXRGb3JTZWxlY3Rpb25Ub0FwcGVhcigpOwogICAgIHNo
b3VsZEJlKCJzZWxlY3Rpb25SZWN0cy5sZW5ndGgiLCAiMSIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9pb3Mvc2VsZWN0aW9uLXJlY3RzLWlu
LWltYWdlLW92ZXJsYXkuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJh
Y3Rpb24vaW9zL3NlbGVjdGlvbi1yZWN0cy1pbi1pbWFnZS1vdmVybGF5Lmh0bWwKaW5kZXggZmE5
MDc5ZjRkZWFkNmM4OGIzN2ZkNTIzODE3ZDAxZjM3ZDk3MGJjYi4uYzQ3YjUzNGZmMGQzZGZiNTkz
ZmIwZTA5ZDcyNTI4NGUwMmUyZDQyZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9pbWFn
ZXMvaW1hZ2UtZXh0cmFjdGlvbi9pb3Mvc2VsZWN0aW9uLXJlY3RzLWluLWltYWdlLW92ZXJsYXku
aHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2lvcy9z
ZWxlY3Rpb24tcmVjdHMtaW4taW1hZ2Utb3ZlcmxheS5odG1sCkBAIC0yMCwzMiArMjAsNjQgQEAg
YWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIGFzeW5jICgpID0+IHsKICAgICBsZXQgaW1hZ2UgPSBk
b2N1bWVudC5xdWVyeVNlbGVjdG9yKCJpbWciKTsKICAgICBpbnRlcm5hbHMuaW5zdGFsbEltYWdl
T3ZlcmxheShpbWFnZSwgWwogICAgICAgICB7Ci0gICAgICAgICAgICB0ZXh0OiAib25lIiwKLSAg
ICAgICAgICAgIHRvcExlZnQ6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuMSwgMC4yNSksCi0gICAg
ICAgICAgICB0b3BSaWdodDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC4yNSwgMC4xKSwKLSAgICAg
ICAgICAgIGJvdHRvbVJpZ2h0OiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjM1LCAwLjIpLAotICAg
ICAgICAgICAgYm90dG9tTGVmdDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC4yLCAwLjM1KQorICAg
ICAgICAgICAgdG9wTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuMSwgMC4yNSksCisgICAg
ICAgICAgICB0b3BSaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuMjUsIDAuMSksCisgICAg
ICAgICAgICBib3R0b21SaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuMzUsIDAuMiksCisg
ICAgICAgICAgICBib3R0b21MZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC4yLCAwLjM1KSwK
KyAgICAgICAgICAgIGNoaWxkcmVuOiBbCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgICAgICB0ZXh0IDogIm9uZSIsCisgICAgICAgICAgICAgICAgICAgIHRvcExlZnQgOiBuZXcg
RE9NUG9pbnRSZWFkT25seSgwLjEsIDAuMjUpLAorICAgICAgICAgICAgICAgICAgICB0b3BSaWdo
dCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuMjUsIDAuMSksCisgICAgICAgICAgICAgICAgICAg
IGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC4zNSwgMC4yKSwKKyAgICAgICAg
ICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuMiwgMC4zNSks
CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgXSwKICAgICAgICAgfSwKICAgICAgICAg
ewotICAgICAgICAgICAgdGV4dDogInR3byIsCi0gICAgICAgICAgICB0b3BMZWZ0OiBuZXcgRE9N
UG9pbnRSZWFkT25seSgwLjMsIDAuNDUpLAotICAgICAgICAgICAgdG9wUmlnaHQ6IG5ldyBET01Q
b2ludFJlYWRPbmx5KDAuNDUsIDAuMyksCi0gICAgICAgICAgICBib3R0b21SaWdodDogbmV3IERP
TVBvaW50UmVhZE9ubHkoMC41NSwgMC40KSwKLSAgICAgICAgICAgIGJvdHRvbUxlZnQ6IG5ldyBE
T01Qb2ludFJlYWRPbmx5KDAuNCwgMC41NSkKKyAgICAgICAgICAgIHRvcExlZnQgOiBuZXcgRE9N
UG9pbnRSZWFkT25seSgwLjMsIDAuNDUpLAorICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9N
UG9pbnRSZWFkT25seSgwLjQ1LCAwLjMpLAorICAgICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcg
RE9NUG9pbnRSZWFkT25seSgwLjU1LCAwLjQpLAorICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5l
dyBET01Qb2ludFJlYWRPbmx5KDAuNCwgMC41NSksCisgICAgICAgICAgICBjaGlsZHJlbjogWwor
ICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdGV4dCA6ICJ0d28iLAorICAg
ICAgICAgICAgICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC4zLCAwLjQ1
KSwKKyAgICAgICAgICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgw
LjQ1LCAwLjMpLAorICAgICAgICAgICAgICAgICAgICBib3R0b21SaWdodCA6IG5ldyBET01Qb2lu
dFJlYWRPbmx5KDAuNTUsIDAuNCksCisgICAgICAgICAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBu
ZXcgRE9NUG9pbnRSZWFkT25seSgwLjQsIDAuNTUpLAorICAgICAgICAgICAgICAgIH0KKyAgICAg
ICAgICAgIF0sCiAgICAgICAgIH0sCiAgICAgICAgIHsKLSAgICAgICAgICAgIHRleHQ6ICJ0aHJl
ZSIsCi0gICAgICAgICAgICB0b3BMZWZ0OiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjUsIDAuNjUp
LAotICAgICAgICAgICAgdG9wUmlnaHQ6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuNjUsIDAuNSks
Ci0gICAgICAgICAgICBib3R0b21SaWdodDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC43NSwgMC42
KSwKLSAgICAgICAgICAgIGJvdHRvbUxlZnQ6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuNiwgMC43
NSkKKyAgICAgICAgICAgIHRvcExlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjUsIDAuNjUp
LAorICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjY1LCAwLjUp
LAorICAgICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjc1LCAw
LjYpLAorICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuNiwg
MC43NSksCisgICAgICAgICAgICBjaGlsZHJlbjogWworICAgICAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICAgICAgdGV4dCA6ICJ0aHJlZSIsCisgICAgICAgICAgICAgICAgICAgIHRvcExl
ZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjUsIDAuNjUpLAorICAgICAgICAgICAgICAgICAg
ICB0b3BSaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuNjUsIDAuNSksCisgICAgICAgICAg
ICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC43NSwgMC42KSwK
KyAgICAgICAgICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAu
NiwgMC43NSksCisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgXSwKICAgICAgICAgfSwK
ICAgICAgICAgewotICAgICAgICAgICAgdGV4dDogImZvdXIiLAotICAgICAgICAgICAgdG9wTGVm
dDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC43LCAwLjg1KSwKLSAgICAgICAgICAgIHRvcFJpZ2h0
OiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjg1LCAwLjcpLAotICAgICAgICAgICAgYm90dG9tUmln
aHQ6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuOTUsIDAuOCksCi0gICAgICAgICAgICBib3R0b21M
ZWZ0OiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjgsIDAuOTUpCisgICAgICAgICAgICB0b3BMZWZ0
IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC43LCAwLjg1KSwKKyAgICAgICAgICAgIHRvcFJpZ2h0
IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC44NSwgMC43KSwKKyAgICAgICAgICAgIGJvdHRvbVJp
Z2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC45NSwgMC44KSwKKyAgICAgICAgICAgIGJvdHRv
bUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjgsIDAuOTUpLAorICAgICAgICAgICAgY2hp
bGRyZW46IFsKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHRleHQgOiAi
Zm91ciIsCisgICAgICAgICAgICAgICAgICAgIHRvcExlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25s
eSgwLjcsIDAuODUpLAorICAgICAgICAgICAgICAgICAgICB0b3BSaWdodCA6IG5ldyBET01Qb2lu
dFJlYWRPbmx5KDAuODUsIDAuNyksCisgICAgICAgICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDog
bmV3IERPTVBvaW50UmVhZE9ubHkoMC45NSwgMC44KSwKKyAgICAgICAgICAgICAgICAgICAgYm90
dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuOCwgMC45NSksCisgICAgICAgICAgICAg
ICAgfQorICAgICAgICAgICAgXSwKICAgICAgICAgfQogICAgIF0pOwogCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL21hYy9jb3B5LWltYWdlLW92
ZXJsYXktdGV4dC13aXRoLWNvbnRleHQtbWVudS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFn
ZXMvaW1hZ2UtZXh0cmFjdGlvbi9tYWMvY29weS1pbWFnZS1vdmVybGF5LXRleHQtd2l0aC1jb250
ZXh0LW1lbnUuaHRtbAppbmRleCA0MDUyOWVjNDU4ZjE1NDA4MjBjZjM2YzVlY2QwOTRiZTU2NjI2
MzNiLi40YjFmZDgxZTIzYTFlMjNjZGYzMTAyZWUzODc5OGMxMzIzZjM0OGQyIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL21hYy9jb3B5LWltYWdl
LW92ZXJsYXktdGV4dC13aXRoLWNvbnRleHQtbWVudS5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vbWFjL2NvcHktaW1hZ2Utb3ZlcmxheS10ZXh0LXdp
dGgtY29udGV4dC1tZW51Lmh0bWwKQEAgLTIwLDEzICsyMCwyMyBAQCBkaXZbY29udGVudGVkaXRh
YmxlXSB7CiA8c2NyaXB0PgogYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsICgpID0+IHsKICAgICBs
ZXQgaW1hZ2UgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJpbWciKTsKLSAgICBpbnRlcm5hbHMu
aW5zdGFsbEltYWdlT3ZlcmxheShpbWFnZSwgW3sKLSAgICAgICAgdGV4dCA6ICJmb29iYXIiLAot
ICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMCksCi0gICAgICAgIHRv
cFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMCksCi0gICAgICAgIGJvdHRvbVJpZ2h0
IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwKLSAgICAgICAgYm90dG9tTGVmdCA6IG5l
dyBET01Qb2ludFJlYWRPbmx5KDAsIDAuNSksCi0gICAgfV0pOworICAgIGludGVybmFscy5pbnN0
YWxsSW1hZ2VPdmVybGF5KGltYWdlLCBbCisgICAgICAgIHsKKyAgICAgICAgICAgIHRvcExlZnQg
OiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwKSwKKyAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3
IERPTVBvaW50UmVhZE9ubHkoMSwgMCksCisgICAgICAgICAgICBib3R0b21SaWdodCA6IG5ldyBE
T01Qb2ludFJlYWRPbmx5KDEsIDAuNSksCisgICAgICAgICAgICBib3R0b21MZWZ0IDogbmV3IERP
TVBvaW50UmVhZE9ubHkoMCwgMC41KSwKKyAgICAgICAgICAgIGNoaWxkcmVuOiBbCisgICAgICAg
ICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICB0ZXh0IDogImZvb2JhciIsCisgICAgICAg
ICAgICAgICAgICAgIHRvcExlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwKSwKKyAgICAg
ICAgICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwKSwKKyAg
ICAgICAgICAgICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAw
LjUpLAorICAgICAgICAgICAgICAgICAgICBib3R0b21MZWZ0IDogbmV3IERPTVBvaW50UmVhZE9u
bHkoMCwgMC41KSwKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICBdCisgICAgICAgIH0K
KyAgICBdKTsKIAogICAgIGV2ZW50U2VuZGVyLm1vdXNlTW92ZVRvKDUwLCAxNTApOwogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL21hYy9zZWxl
Y3QtaW1hZ2Utb3ZlcmxheS1pbi1saW5rLXdpdGgtbW91c2UtZHJhZy5odG1sIGIvTGF5b3V0VGVz
dHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9tYWMvc2VsZWN0LWltYWdlLW92ZXJsYXkt
aW4tbGluay13aXRoLW1vdXNlLWRyYWcuaHRtbAppbmRleCBkODc3MjRhYTg2Y2FlMDA5NWZkN2Vi
MjU1MzUzNTA5NGFmNDk1YjU0Li45YTRlZGM4OTA0YWExN2I4ODc4NWIyNzg3YzQ0YTczOTE3MTcz
Njc2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9u
L21hYy9zZWxlY3QtaW1hZ2Utb3ZlcmxheS1pbi1saW5rLXdpdGgtbW91c2UtZHJhZy5odG1sCisr
KyBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vbWFjL3NlbGVjdC1p
bWFnZS1vdmVybGF5LWluLWxpbmstd2l0aC1tb3VzZS1kcmFnLmh0bWwKQEAgLTE3LDEzICsxNywy
MyBAQCBpbWcgewogPHNjcmlwdD4KIGFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCAoKSA9PiB7CiAg
ICAgbGV0IGltYWdlID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaW1nIik7Ci0gICAgaW50ZXJu
YWxzLmluc3RhbGxJbWFnZU92ZXJsYXkoaW1hZ2UsIFt7Ci0gICAgICAgIHRleHQgOiAiaGVsbG8i
LAotICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMC41KSwKLSAgICAg
ICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwLjUpLAotICAgICAgICBib3R0
b21SaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDEpLAotICAgICAgICBib3R0b21MZWZ0
IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMSksCi0gICAgfV0pOworICAgIGludGVybmFscy5p
bnN0YWxsSW1hZ2VPdmVybGF5KGltYWdlLCBbCisgICAgICAgIHsKKyAgICAgICAgICAgIHRvcExl
ZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwLjUpLAorICAgICAgICAgICAgdG9wUmlnaHQg
OiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwLjUpLAorICAgICAgICAgICAgYm90dG9tUmlnaHQg
OiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAxKSwKKyAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBu
ZXcgRE9NUG9pbnRSZWFkT25seSgwLCAxKSwKKyAgICAgICAgICAgIGNoaWxkcmVuOiBbCisgICAg
ICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICB0ZXh0IDogImhlbGxvIiwKKyAgICAg
ICAgICAgICAgICAgICAgdG9wTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDAuNSksCisg
ICAgICAgICAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41
KSwKKyAgICAgICAgICAgICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25s
eSgxLCAxKSwKKyAgICAgICAgICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJl
YWRPbmx5KDAsIDEpLAorICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIF0KKyAgICAgICAg
fQorICAgIF0pOwogCiAgICAgaW1hZ2UuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCBldmVudCA9
PiB7CiAgICAgICAgIHRlc3RGYWlsZWQoIk9ic2VydmVkIGNsaWNrLiIpOwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9tYWMvc2VsZWN0LWltYWdl
LW92ZXJsYXktd2l0aC1tb3VzZS1kcmFnLWRvZXMtbm90LWZpcmUtY2xpY2suaHRtbCBiL0xheW91
dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vbWFjL3NlbGVjdC1pbWFnZS1vdmVy
bGF5LXdpdGgtbW91c2UtZHJhZy1kb2VzLW5vdC1maXJlLWNsaWNrLmh0bWwKaW5kZXggY2MyYTgy
OWU0ZDU5MzQ4ZGZjOTU1YjY1ZDE0MTc3MGRkZTcxODgxMi4uYTE4NzNjOTgxOTIzMjNjMzExMDMy
MGNiZDNlZWJlOGYwZjMyYmEyMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMv
aW1hZ2UtZXh0cmFjdGlvbi9tYWMvc2VsZWN0LWltYWdlLW92ZXJsYXktd2l0aC1tb3VzZS1kcmFn
LWRvZXMtbm90LWZpcmUtY2xpY2suaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9p
bWFnZS1leHRyYWN0aW9uL21hYy9zZWxlY3QtaW1hZ2Utb3ZlcmxheS13aXRoLW1vdXNlLWRyYWct
ZG9lcy1ub3QtZmlyZS1jbGljay5odG1sCkBAIC0xNSwxMyArMTUsMjMgQEAgaW1nIHsKIDxzY3Jp
cHQ+CiBhZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgKCkgPT4gewogICAgIGxldCBpbWFnZSA9IGRv
Y3VtZW50LnF1ZXJ5U2VsZWN0b3IoImltZyIpOwotICAgIGludGVybmFscy5pbnN0YWxsSW1hZ2VP
dmVybGF5KGltYWdlLCBbewotICAgICAgICB0ZXh0IDogImhlbGxvIiwKLSAgICAgICAgdG9wTGVm
dCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDAuNSksCi0gICAgICAgIHRvcFJpZ2h0IDogbmV3
IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwKLSAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9N
UG9pbnRSZWFkT25seSgxLCAxKSwKLSAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJl
YWRPbmx5KDAsIDEpLAotICAgIH1dKTsKKyAgICBpbnRlcm5hbHMuaW5zdGFsbEltYWdlT3Zlcmxh
eShpbWFnZSwgWworICAgICAgICB7CisgICAgICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50
UmVhZE9ubHkoMCwgMC41KSwKKyAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBvaW50UmVh
ZE9ubHkoMSwgMC41KSwKKyAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVh
ZE9ubHkoMSwgMSksCisgICAgICAgICAgICBib3R0b21MZWZ0IDogbmV3IERPTVBvaW50UmVhZE9u
bHkoMCwgMSksCisgICAgICAgICAgICBjaGlsZHJlbjogWworICAgICAgICAgICAgICAgIHsKKyAg
ICAgICAgICAgICAgICAgICAgdGV4dCA6ICJoZWxsbyIsCisgICAgICAgICAgICAgICAgICAgIHRv
cExlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwLjUpLAorICAgICAgICAgICAgICAgICAg
ICB0b3BSaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDAuNSksCisgICAgICAgICAgICAg
ICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMSksCisgICAgICAg
ICAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAxKSwKKyAg
ICAgICAgICAgICAgICB9CisgICAgICAgICAgICBdCisgICAgICAgIH0KKyAgICBdKTsKIAogICAg
IGltYWdlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgZXZlbnQgPT4gewogICAgICAgICB0ZXN0
RmFpbGVkKCJPYnNlcnZlZCBjbGljay4iKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
aW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vbWFjL3NlbGVjdC1pbWFnZS1vdmVybGF5LXdpdGgtbW91
c2UtZHJhZy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9t
YWMvc2VsZWN0LWltYWdlLW92ZXJsYXktd2l0aC1tb3VzZS1kcmFnLmh0bWwKaW5kZXggMTJiMzYw
YTk4YjlkYTVkNzViZWRlZmY1ZDIzMjVhYzM2OTBkYTYxMy4uMjU0YzM2MDZhZDQ5Y2FiNDY1NGY4
OGFlOWVmMTRhODNhMmE5ZWZiNyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMv
aW1hZ2UtZXh0cmFjdGlvbi9tYWMvc2VsZWN0LWltYWdlLW92ZXJsYXktd2l0aC1tb3VzZS1kcmFn
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9tYWMv
c2VsZWN0LWltYWdlLW92ZXJsYXktd2l0aC1tb3VzZS1kcmFnLmh0bWwKQEAgLTE0LDEzICsxNCwy
MyBAQCBpbWcgewogPHNjcmlwdD4KIGFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCAoKSA9PiB7CiAg
ICAgbGV0IGltYWdlID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaW1nIik7Ci0gICAgaW50ZXJu
YWxzLmluc3RhbGxJbWFnZU92ZXJsYXkoaW1hZ2UsIFt7Ci0gICAgICAgIHRleHQgOiAiaGVsbG8i
LAotICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMC41KSwKLSAgICAg
ICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwLjUpLAotICAgICAgICBib3R0
b21SaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDEpLAotICAgICAgICBib3R0b21MZWZ0
IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMSksCi0gICAgfV0pOworICAgIGludGVybmFscy5p
bnN0YWxsSW1hZ2VPdmVybGF5KGltYWdlLCBbCisgICAgICAgIHsKKyAgICAgICAgICAgIHRvcExl
ZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwLjUpLAorICAgICAgICAgICAgdG9wUmlnaHQg
OiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwLjUpLAorICAgICAgICAgICAgYm90dG9tUmlnaHQg
OiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAxKSwKKyAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBu
ZXcgRE9NUG9pbnRSZWFkT25seSgwLCAxKSwKKyAgICAgICAgICAgIGNoaWxkcmVuOiBbCisgICAg
ICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICB0ZXh0IDogImhlbGxvIiwKKyAgICAg
ICAgICAgICAgICAgICAgdG9wTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDAuNSksCisg
ICAgICAgICAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41
KSwKKyAgICAgICAgICAgICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25s
eSgxLCAxKSwKKyAgICAgICAgICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJl
YWRPbmx5KDAsIDEpLAorICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIF0KKyAgICAgICAg
fQorICAgIF0pOwogCiAgICAgZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8oNTAsIDMwMCk7CiAgICAg
ZXZlbnRTZW5kZXIubW91c2VEb3duKCk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2lt
YWdlcy9pbWFnZS1leHRyYWN0aW9uL21hYy9zZWxlY3Qtd29yZC1pbi1kcmFnZ2FibGUtaW1hZ2Ut
b3ZlcmxheS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9t
YWMvc2VsZWN0LXdvcmQtaW4tZHJhZ2dhYmxlLWltYWdlLW92ZXJsYXkuaHRtbAppbmRleCA4MzAz
MjM4NzNkZTcwZjQ3MmRkNThjMmY1MmEyOWVjYTg1YzNhMWMzLi43ZTNhMDExZDM4YzQxNWYxYzI3
YzU3ZmIzNzQ0MTFkNTc4MWI2ZDRlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdl
cy9pbWFnZS1leHRyYWN0aW9uL21hYy9zZWxlY3Qtd29yZC1pbi1kcmFnZ2FibGUtaW1hZ2Utb3Zl
cmxheS5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24v
bWFjL3NlbGVjdC13b3JkLWluLWRyYWdnYWJsZS1pbWFnZS1vdmVybGF5Lmh0bWwKQEAgLTE2LDEx
ICsxNiwxOSBAQCBhZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgKCkgPT4gewogICAgIGNvbnN0IGlt
YWdlID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaW1nIik7CiAgICAgaW50ZXJuYWxzLmluc3Rh
bGxJbWFnZU92ZXJsYXkoaW1hZ2UsIFsKICAgICAgICAgewotICAgICAgICAgICAgdGV4dCA6ICJo
ZWxsbyIsCiAgICAgICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMCks
CiAgICAgICAgICAgICB0b3BSaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDApLAogICAg
ICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwLjUpLAogICAg
ICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDAuNSksCisgICAg
ICAgICAgICBjaGlsZHJlbjogWworICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAg
ICAgdGV4dCA6ICJoZWxsbyIsCisgICAgICAgICAgICAgICAgICAgIHRvcExlZnQgOiBuZXcgRE9N
UG9pbnRSZWFkT25seSgwLCAwKSwKKyAgICAgICAgICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcg
RE9NUG9pbnRSZWFkT25seSgxLCAwKSwKKyAgICAgICAgICAgICAgICAgICAgYm90dG9tUmlnaHQg
OiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwLjUpLAorICAgICAgICAgICAgICAgICAgICBib3R0
b21MZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMC41KSwKKyAgICAgICAgICAgICAgICB9
CisgICAgICAgICAgICBdCiAgICAgICAgIH0KICAgICBdKTsKIApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9tYWMvc2VsZWN0LXdvcmQtaW4tdHJh
bnNwYXJlbnQtaW1hZ2Utb3ZlcmxheS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1h
Z2UtZXh0cmFjdGlvbi9tYWMvc2VsZWN0LXdvcmQtaW4tdHJhbnNwYXJlbnQtaW1hZ2Utb3Zlcmxh
eS5odG1sCmluZGV4IDhmMmQ5MmYyMTFmZTkwNzhmODFhMTgzYTFiMDU3OGFlMTRkMjAyOTkuLjEy
MTBkMmQ5N2NmMGI3ODlhYTQ3NmFlNDQzMmYwMzg0OWFhMzE3Y2QgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vbWFjL3NlbGVjdC13b3JkLWluLXRy
YW5zcGFyZW50LWltYWdlLW92ZXJsYXkuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2ltYWdl
cy9pbWFnZS1leHRyYWN0aW9uL21hYy9zZWxlY3Qtd29yZC1pbi10cmFuc3BhcmVudC1pbWFnZS1v
dmVybGF5Lmh0bWwKQEAgLTMyLDExICszMiwxOSBAQCBhZGRFdmVudExpc3RlbmVyKCJsb2FkIiwg
KCkgPT4gewogICAgIGxldCBpbWFnZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImltZyIpOwog
ICAgIGludGVybmFscy5pbnN0YWxsSW1hZ2VPdmVybGF5KGltYWdlLCBbCiAgICAgICAgIHsKLSAg
ICAgICAgICAgIHRleHQgOiAiaGVsbG8iLAogICAgICAgICAgICAgdG9wTGVmdCA6IG5ldyBET01Q
b2ludFJlYWRPbmx5KDAsIDApLAogICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRS
ZWFkT25seSgxLCAwKSwKICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVh
ZE9ubHkoMSwgMC41KSwKICAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFk
T25seSgwLCAwLjUpLAorICAgICAgICAgICAgY2hpbGRyZW46IFsKKyAgICAgICAgICAgICAgICB7
CisgICAgICAgICAgICAgICAgICAgIHRleHQgOiAiaGVsbG8iLAorICAgICAgICAgICAgICAgICAg
ICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMCksCisgICAgICAgICAgICAgICAg
ICAgIHRvcFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMCksCisgICAgICAgICAgICAg
ICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwKKyAgICAg
ICAgICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDAuNSks
CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgXQogICAgICAgICB9CiAgICAgXSk7CiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>427109</attachid>
            <date>2021-04-26 17:02:24 -0700</date>
            <delta_ts>2021-04-26 19:59:26 -0700</delta_ts>
            <desc>For EWS</desc>
            <filename>bug-225038-20210426170224.patch</filename>
            <type>text/plain</type>
            <size>55119</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc2NjAyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzc4YWZlMTBlNjJiMjlk
NTZjODlkNTU0MTY0OTU1ZWNlMTA2YjY1Ny4uNmExYThjMzAxNDk5ODI3ZThmZmY5OGI5YmFlOTky
YzBmMTU3ZTk0MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY1IEBACisyMDIxLTA0LTI2ICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIFN1YmRpdmlkZSBp
bWFnZSBvdmVybGF5IHRleHQgaW50byBvbmUgb3IgbW9yZSBlbGVtZW50cyBwZXIgbGluZQorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1MDM4CisgICAg
ICAgIHJkYXI6Ly83NTUwNTA0MworCisgICAgICAgIFJldmlld2VkIGJ5IFRpbSBIb3J0b24gYW5k
IERldmluIFJvdXNzby4KKworICAgICAgICBSZWZhY3RvciBzb21lIGltYWdlIGV4dHJhY3Rpb24g
YW5kIGltYWdlIG92ZXJsYXkgY29kZSB0byBhbGxvdyBmb3IgbXVsdGlwbGUgZWxlbWVudHMgY29u
dGFpbmluZyB0ZXh0IHBlciBsaW5lLgorICAgICAgICBTZWUgY29tbWVudHMgYmVsb3cgZm9yIG1v
cmUgZGV0YWlscy4KKworICAgICAgICBDaGFuZ2VzIGNvdmVyZWQgYnkgYXVnbWVudGluZyBleGlz
dGluZyBsYXlvdXQgdGVzdHMuCisKKyAgICAgICAgKiBodG1sL0hUTUxFbGVtZW50LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkhUTUxFbGVtZW50Ojp1cGRhdGVXaXRoSW1hZ2VFeHRyYWN0aW9uUmVz
dWx0KToKKworICAgICAgICBUaGUgY3J1eCBvZiB0aGlzIGNoYW5nZSBpcyBpbiB0aGlzIG1ldGhv
ZC4gQ3VycmVudGx5LCBhbiBpbWFnZSBvdmVybGF5IGhhcyBvbmUgb3IgbW9yZSBgZGl2YCBlbGVt
ZW50cyB1bmRlcm5lYXRoCisgICAgICAgIHRoZSByb290IGNvbnRhaW5lciBlbGVtZW50LCBlYWNo
IG9mIHdoaWNoIHJlcHJlc2VudHMgYSBzaW5nbGUgbGluZSAoaS5lLiBjb250YWlucyBhIHRleHQg
bm9kZSBhbmQgYSBsaW5lIGJyZWFrKS4KKyAgICAgICAgSW5zdGVhZCwgd2UgbWFrZSBlYWNoIG9m
IHRoZXNlIGxpbmUgY29udGFpbmVyIGBkaXZgcyBjb250YWluIG9uZSBvciBtb3JlIGBkaXZgIGVs
ZW1lbnRzIHRoYXQgcmVwcmVzZW50IGZ1cnRoZXIKKyAgICAgICAgc3ViZGl2aWRlZCB0ZXh0IHdp
dGhpbiBlYWNoIGxpbmUuCisKKyAgICAgICAgU2VlIHRoZSBjb3JyZXNwb25kaW5nIGFkZGl0aW9u
cyBwYXRjaCBmb3IgbW9yZSBkZXRhaWxzLgorCisgICAgICAgICogaHRtbC9zaGFkb3cvaW1hZ2VP
dmVybGF5LmNzczoKKyAgICAgICAgKGRpdiNpbWFnZS1vdmVybGF5KToKKyAgICAgICAgKGRpdi5p
bWFnZS1vdmVybGF5LWxpbmUsIC5pbWFnZS1vdmVybGF5LXRleHQpOgorICAgICAgICAoLmltYWdl
LW92ZXJsYXktdGV4dDo6c2VsZWN0aW9uKToKKworICAgICAgICBBZGp1c3QgVUEgc3R5bGVzaGVl
dCB0byBhY2NvdW50IGZvciB0aGUgY2hhbmdlcyBpbiBgdXBkYXRlV2l0aEltYWdlRXh0cmFjdGlv
blJlc3VsdGAuCisKKyAgICAgICAgKGRpdi5pbWFnZS1vdmVybGF5LXRleHQpOiBEZWxldGVkLgor
ICAgICAgICAoZGl2LmltYWdlLW92ZXJsYXktdGV4dDo6c2VsZWN0aW9uKTogRGVsZXRlZC4KKyAg
ICAgICAgKiBwbGF0Zm9ybS9JbWFnZUV4dHJhY3Rpb25SZXN1bHQuaDoKKyAgICAgICAgKFdlYkNv
cmU6OkltYWdlRXh0cmFjdGlvblRleHREYXRhOjpJbWFnZUV4dHJhY3Rpb25UZXh0RGF0YSk6Cisg
ICAgICAgIChXZWJDb3JlOjpJbWFnZUV4dHJhY3Rpb25MaW5lRGF0YTo6SW1hZ2VFeHRyYWN0aW9u
TGluZURhdGEpOgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2VFeHRyYWN0aW9uTGluZURhdGE6OmVu
Y29kZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpJbWFnZUV4dHJhY3Rpb25MaW5lRGF0YTo6
ZGVjb2RlKToKKworICAgICAgICBSZWZhY3RvciB0aGlzIGRhdGEgc3RydWN0dXJlLCBieSBzcGxp
dHRpbmcgaXQgaW50byBgSW1hZ2VFeHRyYWN0aW9uTGluZURhdGFgIGFuZCBgSW1hZ2VFeHRyYWN0
aW9uVGV4dERhdGFgLgorCisgICAgICAgIChXZWJDb3JlOjpJbWFnZUV4dHJhY3Rpb25SZXN1bHQ6
OmlzRW1wdHkgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2VFeHRyYWN0aW9uUmVzdWx0
OjplbmNvZGUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2VFeHRyYWN0aW9uUmVzdWx0
OjpkZWNvZGUpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0Zsb2F0UG9pbnQuaDoKKyAg
ICAgICAgKFdlYkNvcmU6OkZsb2F0UG9pbnQ6OnJvdGF0ZSk6CisKKyAgICAgICAgQWRkIGEgaGVs
cGVyIG1ldGhvZCB0byByb3RhdGUgYSAyRCBgRmxvYXRQb2ludGAgYnkgYSBnaXZlbiBhbmdsZSwg
YWJvdXQgYSBnaXZlbiBwb2ludC4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0dlb21l
dHJ5VXRpbGl0aWVzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnJvdGF0ZWRCb3VuZGluZ1JlY3RX
aXRoTWluaW11bUFuZ2xlT2ZSb3RhdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpyb3RhdGVkQm91
bmRpbmdSZWN0KTogRGVsZXRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9HZW9tZXRy
eVV0aWxpdGllcy5oOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OmdldFF1YWQpOgorICAgICAgICAoV2ViQ29yZTo6bWFrZURhdGFGb3JMaW5lKToK
KyAgICAgICAgKFdlYkNvcmU6OkludGVybmFsczo6aW5zdGFsbEltYWdlT3ZlcmxheSk6CisgICAg
ICAgICogdGVzdGluZy9JbnRlcm5hbHMuaDoKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5p
ZGw6CisKKyAgICAgICAgQWRqdXN0IHRoaXMgaW50ZXJuYWwgdGVzdGluZyBob29rIHRvIGFjY2Vw
dCBhIGxpc3Qgb2YgYEltYWdlT3ZlcmxheUxpbmVgIGRpY3Rpb25hcmllcywgZWFjaCBvZiB3aGlj
aCBjb250YWlucyBhCisgICAgICAgIGxpc3Qgb2YgYEltYWdlT3ZlcmxheVRleHRgIGRpY3Rpb25h
cmllcy4KKwogMjAyMS0wNC0yNiAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNv
bT4KIAogICAgICAgICBbaU9TXSBXZWIgY29udGVudCBwcm9jZXNzIG9jY2FzaW9uYWxseSBjcmFz
aGVzIHVuZGVyIFZpc2libGVTZWxlY3Rpb246OmFkanVzdFBvc2l0aW9uRm9yRW5kCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTEVsZW1lbnQuY3BwCmluZGV4IDUyNGM4NmMxNDlmZTkwYTVmOGFmNzhjNDk4YTJj
MDJkMDFhNThmMmUuLjA0NzJlZjFlMDQ3MDc2Y2Q5MDZkNDExNjgwOGI4YmRiNjUzN2Q0ZmQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuY3BwCkBAIC03NCw2ICs3NCw3IEBACiAjaW5jbHVk
ZSAibWFya3VwLmgiCiAjaW5jbHVkZSA8d3RmL0lzb01hbGxvY0lubGluZXMuaD4KICNpbmNsdWRl
IDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KKyNpbmNsdWRlIDx3dGYvUmFuZ2UuaD4KICNpbmNsdWRl
IDx3dGYvU3RkTGliRXh0cmFzLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgogI2lu
Y2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0J1aWxkZXIuaD4KQEAgLTEzMzUsMzkgKzEzMzYsMTA3IEBA
IHZvaWQgSFRNTEVsZW1lbnQ6OnVwZGF0ZVdpdGhJbWFnZUV4dHJhY3Rpb25SZXN1bHQoSW1hZ2VF
eHRyYWN0aW9uUmVzdWx0JiYgcmVzdWx0CiAgICAgaWYgKGRvY3VtZW50KCkucXVpcmtzKCkubmVl
ZHNUb0ZvcmNlVXNlclNlbGVjdFdoZW5JbnN0YWxsaW5nSW1hZ2VPdmVybGF5KCkpCiAgICAgICAg
IHNldElubGluZVN0eWxlUHJvcGVydHkoQ1NTUHJvcGVydHlXZWJraXRVc2VyU2VsZWN0LCBDU1NW
YWx1ZVRleHQpOwogCisgICAgc3RhdGljIE1haW5UaHJlYWROZXZlckRlc3Ryb3llZDxjb25zdCBB
dG9tU3RyaW5nPiBpbWFnZU92ZXJsYXlMaW5lQ2xhc3MoImltYWdlLW92ZXJsYXktbGluZSIsIEF0
b21TdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKTsKICAgICBzdGF0aWMgTWFpblRocmVhZE5l
dmVyRGVzdHJveWVkPGNvbnN0IEF0b21TdHJpbmc+IGltYWdlT3ZlcmxheVRleHRDbGFzcygiaW1h
Z2Utb3ZlcmxheS10ZXh0IiwgQXRvbVN0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpOwogCiAg
ICAgSW50U2l6ZSBjb250YWluZXJTaXplIHsgb2Zmc2V0V2lkdGgoKSwgb2Zmc2V0SGVpZ2h0KCkg
fTsKLSAgICBmb3IgKGF1dG8mIGRhdGEgOiByZXN1bHQudGV4dERhdGEpIHsKLSAgICAgICAgYXV0
byBjaGlsZCA9IEhUTUxEaXZFbGVtZW50OjpjcmVhdGUoZG9jdW1lbnQoKSk7Ci0gICAgICAgIGNo
aWxkLT5jbGFzc0xpc3QoKS5hZGQoaW1hZ2VPdmVybGF5VGV4dENsYXNzKTsKLQotICAgICAgICBj
b250YWluZXItPmFwcGVuZENoaWxkKGNoaWxkKTsKLSAgICAgICAgY2hpbGQtPmFwcGVuZENoaWxk
KFRleHQ6OmNyZWF0ZShkb2N1bWVudCgpLCBtYWtlU3RyaW5nKCdcbicsIGRhdGEudGV4dCkpKTsK
LSAgICAgICAgY2hpbGQtPmFwcGVuZENoaWxkKEhUTUxCUkVsZW1lbnQ6OmNyZWF0ZShkb2N1bWVu
dCgpKSk7Ci0KLSAgICAgICAgSW50U2l6ZSBvcmlnaW5hbFNpemUgeyBjaGlsZC0+b2Zmc2V0V2lk
dGgoKSwgY2hpbGQtPm9mZnNldEhlaWdodCgpIH07Ci0gICAgICAgIGlmIChvcmlnaW5hbFNpemUu
aXNFbXB0eSgpKQorICAgIGZvciAoYXV0byYgbGluZSA6IHJlc3VsdC5saW5lcykgeworICAgICAg
ICBhdXRvIGxpbmVRdWFkID0gbGluZS5ub3JtYWxpemVkUXVhZDsKKyAgICAgICAgaWYgKGxpbmVR
dWFkLmlzRW1wdHkoKSkKICAgICAgICAgICAgIGNvbnRpbnVlOwogCi0gICAgICAgIGF1dG8gdGFy
Z2V0UXVhZCA9IGRhdGEubm9ybWFsaXplZFF1YWQ7Ci0gICAgICAgIHRhcmdldFF1YWQuc2NhbGUo
Y29udGFpbmVyU2l6ZS53aWR0aCgpLCBjb250YWluZXJTaXplLmhlaWdodCgpKTsKKyAgICAgICAg
bGluZVF1YWQuc2NhbGUoY29udGFpbmVyU2l6ZS53aWR0aCgpLCBjb250YWluZXJTaXplLmhlaWdo
dCgpKTsKIAotICAgICAgICBhdXRvIHJvdGF0ZWRSZWN0ID0gcm90YXRlZEJvdW5kaW5nUmVjdCh0
YXJnZXRRdWFkLCAwLjAxKTsKLSAgICAgICAgYXV0byBzY2FsZSA9IHJvdGF0ZWRSZWN0LnNpemUg
LyBvcmlnaW5hbFNpemU7Ci0gICAgICAgIFN0cmluZyByb3RhdGlvblRyYW5zZm9ybWF0aW9uQXNU
ZXh0OwotICAgICAgICBpZiAocm90YXRlZFJlY3QuYW5nbGVJblJhZGlhbnMpCi0gICAgICAgICAg
ICByb3RhdGlvblRyYW5zZm9ybWF0aW9uQXNUZXh0ID0gbWFrZVN0cmluZygicm90YXRlKCIsIHJv
dGF0ZWRSZWN0LmFuZ2xlSW5SYWRpYW5zLCAicmFkKSAiX3MpOworICAgICAgICBhdXRvIGxpbmVD
b250YWluZXIgPSBIVE1MRGl2RWxlbWVudDo6Y3JlYXRlKGRvY3VtZW50KCkpOworICAgICAgICBs
aW5lQ29udGFpbmVyLT5jbGFzc0xpc3QoKS5hZGQoaW1hZ2VPdmVybGF5TGluZUNsYXNzKTsKKyAg
ICAgICAgY29udGFpbmVyLT5hcHBlbmRDaGlsZChsaW5lQ29udGFpbmVyKTsKIAotICAgICAgICBh
dXRvIG9mZnNldCA9IHJvdW5kZWRJbnRQb2ludChyb3RhdGVkUmVjdC5jZW50ZXIgLSAob3JpZ2lu
YWxTaXplIC8gMikpOwotICAgICAgICBjaGlsZC0+c2V0SW5saW5lU3R5bGVQcm9wZXJ0eShDU1NQ
cm9wZXJ0eVRyYW5zZm9ybSwgbWFrZVN0cmluZygKLSAgICAgICAgICAgICJ0cmFuc2xhdGUoIl9z
LCBvZmZzZXQueCgpLCAicHgsICJfcywgb2Zmc2V0LnkoKSwgInB4KSAiX3MsCi0gICAgICAgICAg
ICByb3RhdGlvblRyYW5zZm9ybWF0aW9uQXNUZXh0LAotICAgICAgICAgICAgInNjYWxlKCJfcywg
c2NhbGUud2lkdGgoKSwgIiwgIl9zLCBzY2FsZS5oZWlnaHQoKSwgIikgIl9zCisgICAgICAgIGF1
dG8gbGluZUJvdW5kcyA9IHJvdGF0ZWRCb3VuZGluZ1JlY3RXaXRoTWluaW11bUFuZ2xlT2ZSb3Rh
dGlvbihsaW5lUXVhZCwgMC4wMSk7CisgICAgICAgIGxpbmVDb250YWluZXItPnNldElubGluZVN0
eWxlUHJvcGVydHkoQ1NTUHJvcGVydHlXaWR0aCwgbGluZUJvdW5kcy5zaXplLndpZHRoKCksIENT
U1VuaXRUeXBlOjpDU1NfUFgpOworICAgICAgICBsaW5lQ29udGFpbmVyLT5zZXRJbmxpbmVTdHls
ZVByb3BlcnR5KENTU1Byb3BlcnR5SGVpZ2h0LCBsaW5lQm91bmRzLnNpemUuaGVpZ2h0KCksIENT
U1VuaXRUeXBlOjpDU1NfUFgpOworICAgICAgICBsaW5lQ29udGFpbmVyLT5zZXRJbmxpbmVTdHls
ZVByb3BlcnR5KENTU1Byb3BlcnR5VHJhbnNmb3JtLCBtYWtlU3RyaW5nKAorICAgICAgICAgICAg
InRyYW5zbGF0ZSgiX3MsCisgICAgICAgICAgICBzdGQ6OnJvdW5kKGxpbmVCb3VuZHMuY2VudGVy
LngoKSAtIChsaW5lQm91bmRzLnNpemUud2lkdGgoKSAvIDIpKSwgInB4LCAiX3MsCisgICAgICAg
ICAgICBzdGQ6OnJvdW5kKGxpbmVCb3VuZHMuY2VudGVyLnkoKSAtIChsaW5lQm91bmRzLnNpemUu
aGVpZ2h0KCkgLyAyKSksICJweCkgIl9zLAorICAgICAgICAgICAgbGluZUJvdW5kcy5hbmdsZUlu
UmFkaWFucyA/IG1ha2VTdHJpbmcoInJvdGF0ZSgiX3MsIGxpbmVCb3VuZHMuYW5nbGVJblJhZGlh
bnMsICJyYWQpICJfcykgOiBlbXB0eVN0cmluZygpCiAgICAgICAgICkpOwogCisgICAgICAgIGF1
dG8gb2Zmc2V0QWxvbmdIb3Jpem9udGFsQXhpcyA9IFsmXShjb25zdCBGbG9hdFBvaW50JiBxdWFk
UG9pbnQxLCBjb25zdCBGbG9hdFBvaW50JiBxdWFkUG9pbnQyKSB7CisgICAgICAgICAgICBhdXRv
IGludGVydmFsTGVuZ3RoID0gbGluZUJvdW5kcy5zaXplLndpZHRoKCk7CisgICAgICAgICAgICBh
dXRvIG1pZCA9IG1pZFBvaW50KHF1YWRQb2ludDEsIHF1YWRQb2ludDIpOworICAgICAgICAgICAg
bWlkLm1vdmVCeSgtbGluZUJvdW5kcy5jZW50ZXIpOworICAgICAgICAgICAgbWlkLnJvdGF0ZSgt
bGluZUJvdW5kcy5hbmdsZUluUmFkaWFucyk7CisgICAgICAgICAgICByZXR1cm4gaW50ZXJ2YWxM
ZW5ndGggKiBjbGFtcFRvPGZsb2F0PigwLjUgKyBtaWQueCgpIC8gaW50ZXJ2YWxMZW5ndGgsIDAs
IDEpOworICAgICAgICB9OworCisgICAgICAgIGF1dG8gb2Zmc2V0c0Fsb25nSG9yaXpvbnRhbEF4
aXMgPSBsaW5lLmNoaWxkcmVuLm1hcChbJl0oYXV0byYgY2hpbGQpIC0+IFdURjo6UmFuZ2U8Zmxv
YXQ+IHsKKyAgICAgICAgICAgIGF1dG8gdGV4dFF1YWQgPSBjaGlsZC5ub3JtYWxpemVkUXVhZDsK
KyAgICAgICAgICAgIHRleHRRdWFkLnNjYWxlKGNvbnRhaW5lclNpemUud2lkdGgoKSwgY29udGFp
bmVyU2l6ZS5oZWlnaHQoKSk7CisgICAgICAgICAgICByZXR1cm4geworICAgICAgICAgICAgICAg
IG9mZnNldEFsb25nSG9yaXpvbnRhbEF4aXModGV4dFF1YWQucDEoKSwgdGV4dFF1YWQucDQoKSks
CisgICAgICAgICAgICAgICAgb2Zmc2V0QWxvbmdIb3Jpem9udGFsQXhpcyh0ZXh0UXVhZC5wMigp
LCB0ZXh0UXVhZC5wMygpKQorICAgICAgICAgICAgfTsKKyAgICAgICAgfSk7CisKKyAgICAgICAg
Zm9yIChzaXplX3QgY2hpbGRJbmRleCA9IDA7IGNoaWxkSW5kZXggPCBsaW5lLmNoaWxkcmVuLnNp
emUoKTsgKytjaGlsZEluZGV4KSB7CisgICAgICAgICAgICBhdXRvJiBjaGlsZCA9IGxpbmUuY2hp
bGRyZW5bY2hpbGRJbmRleF07CisgICAgICAgICAgICBpZiAoY2hpbGQubm9ybWFsaXplZFF1YWQu
aXNFbXB0eSgpKQorICAgICAgICAgICAgICAgIGNvbnRpbnVlOworCisgICAgICAgICAgICBjb25z
dGV4cHIgZmxvYXQgaG9yaXpvbnRhbE1hcmdpblRvTWluaW1pemVTZWxlY3Rpb25HYXBzID0gMC4x
MjU7CisgICAgICAgICAgICBmbG9hdCBob3Jpem9udGFsT2Zmc2V0ID0gLWhvcml6b250YWxNYXJn
aW5Ub01pbmltaXplU2VsZWN0aW9uR2FwczsKKyAgICAgICAgICAgIGZsb2F0IGhvcml6b250YWxF
eHRlbnQgPSBob3Jpem9udGFsTWFyZ2luVG9NaW5pbWl6ZVNlbGVjdGlvbkdhcHM7CisKKyAgICAg
ICAgICAgIGlmIChsaW5lLmNoaWxkcmVuLnNpemUoKSA9PSAxKSB7CisgICAgICAgICAgICAgICAg
aG9yaXpvbnRhbE9mZnNldCArPSBvZmZzZXRzQWxvbmdIb3Jpem9udGFsQXhpc1tjaGlsZEluZGV4
XS5iZWdpbigpOworICAgICAgICAgICAgICAgIGhvcml6b250YWxFeHRlbnQgKz0gb2Zmc2V0c0Fs
b25nSG9yaXpvbnRhbEF4aXNbY2hpbGRJbmRleF0uZW5kKCk7CisgICAgICAgICAgICB9IGVsc2Ug
aWYgKCFjaGlsZEluZGV4KSB7CisgICAgICAgICAgICAgICAgaG9yaXpvbnRhbE9mZnNldCArPSBv
ZmZzZXRzQWxvbmdIb3Jpem9udGFsQXhpc1tjaGlsZEluZGV4XS5iZWdpbigpOworICAgICAgICAg
ICAgICAgIGhvcml6b250YWxFeHRlbnQgKz0gKG9mZnNldHNBbG9uZ0hvcml6b250YWxBeGlzW2No
aWxkSW5kZXhdLmVuZCgpICsgb2Zmc2V0c0Fsb25nSG9yaXpvbnRhbEF4aXNbY2hpbGRJbmRleCAr
IDFdLmJlZ2luKCkpIC8gMjsKKyAgICAgICAgICAgIH0gZWxzZSBpZiAoY2hpbGRJbmRleCA9PSBs
aW5lLmNoaWxkcmVuLnNpemUoKSAtIDEpIHsKKyAgICAgICAgICAgICAgICBob3Jpem9udGFsT2Zm
c2V0ICs9IChvZmZzZXRzQWxvbmdIb3Jpem9udGFsQXhpc1tjaGlsZEluZGV4IC0gMV0uZW5kKCkg
KyBvZmZzZXRzQWxvbmdIb3Jpem9udGFsQXhpc1tjaGlsZEluZGV4XS5iZWdpbigpKSAvIDI7Cisg
ICAgICAgICAgICAgICAgaG9yaXpvbnRhbEV4dGVudCArPSBvZmZzZXRzQWxvbmdIb3Jpem9udGFs
QXhpc1tjaGlsZEluZGV4XS5lbmQoKTsKKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAg
ICAgICAgaG9yaXpvbnRhbE9mZnNldCArPSAob2Zmc2V0c0Fsb25nSG9yaXpvbnRhbEF4aXNbY2hp
bGRJbmRleCAtIDFdLmVuZCgpICsgb2Zmc2V0c0Fsb25nSG9yaXpvbnRhbEF4aXNbY2hpbGRJbmRl
eF0uYmVnaW4oKSkgLyAyOworICAgICAgICAgICAgICAgIGhvcml6b250YWxFeHRlbnQgKz0gKG9m
ZnNldHNBbG9uZ0hvcml6b250YWxBeGlzW2NoaWxkSW5kZXhdLmVuZCgpICsgb2Zmc2V0c0Fsb25n
SG9yaXpvbnRhbEF4aXNbY2hpbGRJbmRleCArIDFdLmJlZ2luKCkpIC8gMjsKKyAgICAgICAgICAg
IH0KKworICAgICAgICAgICAgRmxvYXRTaXplIHRhcmdldFNpemUgeyBob3Jpem9udGFsRXh0ZW50
IC0gaG9yaXpvbnRhbE9mZnNldCwgbGluZUJvdW5kcy5zaXplLmhlaWdodCgpIH07CisgICAgICAg
ICAgICBpZiAodGFyZ2V0U2l6ZS5pc0VtcHR5KCkpCisgICAgICAgICAgICAgICAgY29udGludWU7
CisKKyAgICAgICAgICAgIGF1dG8gdGV4dENvbnRhaW5lciA9IEhUTUxEaXZFbGVtZW50OjpjcmVh
dGUoZG9jdW1lbnQoKSk7CisgICAgICAgICAgICB0ZXh0Q29udGFpbmVyLT5jbGFzc0xpc3QoKS5h
ZGQoaW1hZ2VPdmVybGF5VGV4dENsYXNzKTsKKyAgICAgICAgICAgIGxpbmVDb250YWluZXItPmFw
cGVuZENoaWxkKHRleHRDb250YWluZXIpOworICAgICAgICAgICAgdGV4dENvbnRhaW5lci0+YXBw
ZW5kQ2hpbGQoVGV4dDo6Y3JlYXRlKGRvY3VtZW50KCksIG1ha2VTdHJpbmcoJ1xuJywgY2hpbGQu
dGV4dCkpKTsKKworICAgICAgICAgICAgZG9jdW1lbnQoKS51cGRhdGVMYXlvdXRJZkRpbWVuc2lv
bnNPdXRPZkRhdGUodGV4dENvbnRhaW5lcik7CisKKyAgICAgICAgICAgIEZsb2F0U2l6ZSBzaXpl
QmVmb3JlVHJhbnNmb3JtOworICAgICAgICAgICAgaWYgKGF1dG8qIHJlbmRlcmVyID0gdGV4dENv
bnRhaW5lci0+cmVuZGVyQm94TW9kZWxPYmplY3QoKSkgeworICAgICAgICAgICAgICAgIHNpemVC
ZWZvcmVUcmFuc2Zvcm0gPSB7CisgICAgICAgICAgICAgICAgICAgIGFkanVzdExheW91dFVuaXRG
b3JBYnNvbHV0ZVpvb20ocmVuZGVyZXItPm9mZnNldFdpZHRoKCksICpyZW5kZXJlcikudG9GbG9h
dCgpLAorICAgICAgICAgICAgICAgICAgICBhZGp1c3RMYXlvdXRVbml0Rm9yQWJzb2x1dGVab29t
KHJlbmRlcmVyLT5vZmZzZXRIZWlnaHQoKSwgKnJlbmRlcmVyKS50b0Zsb2F0KCksCisgICAgICAg
ICAgICAgICAgfTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgaWYgKHNpemVCZWZvcmVU
cmFuc2Zvcm0uaXNFbXB0eSgpKSB7CisgICAgICAgICAgICAgICAgdGV4dENvbnRhaW5lci0+cmVt
b3ZlKCk7CisgICAgICAgICAgICAgICAgY29udGludWU7CisgICAgICAgICAgICB9CisKKyAgICAg
ICAgICAgIHRleHRDb250YWluZXItPnNldElubGluZVN0eWxlUHJvcGVydHkoQ1NTUHJvcGVydHlU
cmFuc2Zvcm0sIG1ha2VTdHJpbmcoCisgICAgICAgICAgICAgICAgInRyYW5zbGF0ZSgiX3MsCisg
ICAgICAgICAgICAgICAgaG9yaXpvbnRhbE9mZnNldCArICh0YXJnZXRTaXplLndpZHRoKCkgLSBz
aXplQmVmb3JlVHJhbnNmb3JtLndpZHRoKCkpIC8gMiwgInB4LCAiX3MsCisgICAgICAgICAgICAg
ICAgKHRhcmdldFNpemUuaGVpZ2h0KCkgLSBzaXplQmVmb3JlVHJhbnNmb3JtLmhlaWdodCgpKSAv
IDIsICJweCkgIl9zLAorICAgICAgICAgICAgICAgICJzY2FsZSgiX3MsIHRhcmdldFNpemUud2lk
dGgoKSAvIHNpemVCZWZvcmVUcmFuc2Zvcm0ud2lkdGgoKSwgIiwgIl9zLCB0YXJnZXRTaXplLmhl
aWdodCgpIC8gc2l6ZUJlZm9yZVRyYW5zZm9ybS5oZWlnaHQoKSwgIikgIl9zCisgICAgICAgICAg
ICApKTsKKyAgICAgICAgfQorCisgICAgICAgIGxpbmVDb250YWluZXItPmFwcGVuZENoaWxkKEhU
TUxCUkVsZW1lbnQ6OmNyZWF0ZShkb2N1bWVudCgpKSk7CisKICAgICAgICAgaWYgKGRvY3VtZW50
KCkuaXNJbWFnZURvY3VtZW50KCkpCi0gICAgICAgICAgICBjaGlsZC0+c2V0SW5saW5lU3R5bGVQ
cm9wZXJ0eShDU1NQcm9wZXJ0eUN1cnNvciwgQ1NTVmFsdWVUZXh0KTsKKyAgICAgICAgICAgIGxp
bmVDb250YWluZXItPnNldElubGluZVN0eWxlUHJvcGVydHkoQ1NTUHJvcGVydHlDdXJzb3IsIENT
U1ZhbHVlVGV4dCk7CiAgICAgfQogCiAgICAgaWYgKGF1dG8gZnJhbWUgPSBtYWtlUmVmUHRyKGRv
Y3VtZW50KCkuZnJhbWUoKSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRv
dy9pbWFnZU92ZXJsYXkuY3NzIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvaW1hZ2VPdmVy
bGF5LmNzcwppbmRleCAxMGJhNDk5MjlkYjA5Zjc2NGNlODZmZWU2MmYwNDAyMmQwYTdmMjIxLi4w
ZTFhOTJmYzVkMDFmNDdlZDgwOWY0ZDhhNjQyZDkzZjhlYTc2Y2YxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL3NoYWRvdy9pbWFnZU92ZXJsYXkuY3NzCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvc2hhZG93L2ltYWdlT3ZlcmxheS5jc3MKQEAgLTMxLDE1ICszMSwxNSBAQCBkaXYj
aW1hZ2Utb3ZlcmxheSB7CiAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsKICAgICBsaW5lLWhlaWdo
dDogMTAwJTsKICAgICBmb250LWZhbWlseTogc3lzdGVtLXVpOwotICAgIGZvbnQtc2l6ZTogMTZw
eDsKKyAgICBmb250LXNpemU6IDEwMjRweDsgLyogVGhpcyBsYXJnZSBmb250IHNpemUgaXMgY2hv
c2VuIHRvIG1pbmltaXplIGdhcHMgd2hlbiBwYWludGluZyBzZWxlY3Rpb24gcXVhZHMuICovCiB9
CiAKLWRpdi5pbWFnZS1vdmVybGF5LXRleHQgeworZGl2LmltYWdlLW92ZXJsYXktbGluZSwgLmlt
YWdlLW92ZXJsYXktdGV4dCB7CiAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgIG92ZXJmbG93
OiBoaWRkZW47CiB9CiAKLWRpdi5pbWFnZS1vdmVybGF5LXRleHQ6OnNlbGVjdGlvbiB7CisuaW1h
Z2Utb3ZlcmxheS10ZXh0OjpzZWxlY3Rpb24gewogICAgIGNvbG9yOiB0cmFuc3BhcmVudDsKICAg
ICBiYWNrZ3JvdW5kLWNvbG9yOiBoaWdobGlnaHQ7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9JbWFnZUV4dHJhY3Rpb25SZXN1bHQuaCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL0ltYWdlRXh0cmFjdGlvblJlc3VsdC5oCmluZGV4IGRhZjNmZjk4MDc2MzU3YmRmNzYz
MjEwN2ZiNWY5MDIwNmY3OGVkYTkuLmViOGNjZDU0MTI3NWMzNWFkOTgyYjBjZWExZWZlYjBkNGY3
NjY2M2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0ltYWdlRXh0cmFjdGlv
blJlc3VsdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0ltYWdlRXh0cmFjdGlvblJl
c3VsdC5oCkBAIC0zNCw2ICszNCwxMiBAQAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBzdHJ1Y3Qg
SW1hZ2VFeHRyYWN0aW9uVGV4dERhdGEgeworICAgIEltYWdlRXh0cmFjdGlvblRleHREYXRhKGNv
bnN0IFN0cmluZyYgdGhlVGV4dCwgRmxvYXRRdWFkJiYgcXVhZCkKKyAgICAgICAgOiB0ZXh0KHRo
ZVRleHQpCisgICAgICAgICwgbm9ybWFsaXplZFF1YWQoV1RGTW92ZShxdWFkKSkKKyAgICB7Cisg
ICAgfQorCiAgICAgU3RyaW5nIHRleHQ7CiAgICAgRmxvYXRRdWFkIG5vcm1hbGl6ZWRRdWFkOwog
CkBAIC02MiwxMCArNjgsNDUgQEAgdGVtcGxhdGU8Y2xhc3MgRGVjb2Rlcj4gT3B0aW9uYWw8SW1h
Z2VFeHRyYWN0aW9uVGV4dERhdGE+IEltYWdlRXh0cmFjdGlvblRleHREYXQKICAgICByZXR1cm4g
e3sgV1RGTW92ZSgqdGV4dCksIFdURk1vdmUoKm5vcm1hbGl6ZWRRdWFkKSB9fTsKIH0KIAorc3Ry
dWN0IEltYWdlRXh0cmFjdGlvbkxpbmVEYXRhIHsKKyAgICBJbWFnZUV4dHJhY3Rpb25MaW5lRGF0
YShGbG9hdFF1YWQmJiBxdWFkLCBWZWN0b3I8SW1hZ2VFeHRyYWN0aW9uVGV4dERhdGE+JiYgdGhl
Q2hpbGRyZW4pCisgICAgICAgIDogbm9ybWFsaXplZFF1YWQoV1RGTW92ZShxdWFkKSkKKyAgICAg
ICAgLCBjaGlsZHJlbihXVEZNb3ZlKHRoZUNoaWxkcmVuKSkKKyAgICB7CisgICAgfQorCisgICAg
RmxvYXRRdWFkIG5vcm1hbGl6ZWRRdWFkOworICAgIFZlY3RvcjxJbWFnZUV4dHJhY3Rpb25UZXh0
RGF0YT4gY2hpbGRyZW47CisKKyAgICB0ZW1wbGF0ZTxjbGFzcyBFbmNvZGVyPiB2b2lkIGVuY29k
ZShFbmNvZGVyJikgY29uc3Q7CisgICAgdGVtcGxhdGU8Y2xhc3MgRGVjb2Rlcj4gc3RhdGljIE9w
dGlvbmFsPEltYWdlRXh0cmFjdGlvbkxpbmVEYXRhPiBkZWNvZGUoRGVjb2RlciYpOworfTsKKwor
dGVtcGxhdGU8Y2xhc3MgRW5jb2Rlcj4gdm9pZCBJbWFnZUV4dHJhY3Rpb25MaW5lRGF0YTo6ZW5j
b2RlKEVuY29kZXImIGVuY29kZXIpIGNvbnN0Cit7CisgICAgZW5jb2RlciA8PCBub3JtYWxpemVk
UXVhZDsKKyAgICBlbmNvZGVyIDw8IGNoaWxkcmVuOworfQorCit0ZW1wbGF0ZTxjbGFzcyBEZWNv
ZGVyPiBPcHRpb25hbDxJbWFnZUV4dHJhY3Rpb25MaW5lRGF0YT4gSW1hZ2VFeHRyYWN0aW9uTGlu
ZURhdGE6OmRlY29kZShEZWNvZGVyJiBkZWNvZGVyKQoreworICAgIE9wdGlvbmFsPEZsb2F0UXVh
ZD4gbm9ybWFsaXplZFF1YWQ7CisgICAgZGVjb2RlciA+PiBub3JtYWxpemVkUXVhZDsKKyAgICBp
ZiAoIW5vcm1hbGl6ZWRRdWFkKQorICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OworCisgICAg
T3B0aW9uYWw8VmVjdG9yPEltYWdlRXh0cmFjdGlvblRleHREYXRhPj4gY2hpbGRyZW47CisgICAg
ZGVjb2RlciA+PiBjaGlsZHJlbjsKKyAgICBpZiAoIWNoaWxkcmVuKQorICAgICAgICByZXR1cm4g
V1RGOjpudWxsb3B0OworCisgICAgcmV0dXJuIHt7IFdURk1vdmUoKm5vcm1hbGl6ZWRRdWFkKSwg
V1RGTW92ZSgqY2hpbGRyZW4pIH19OworfQorCiBzdHJ1Y3QgSW1hZ2VFeHRyYWN0aW9uUmVzdWx0
IHsKLSAgICBWZWN0b3I8SW1hZ2VFeHRyYWN0aW9uVGV4dERhdGE+IHRleHREYXRhOworICAgIFZl
Y3RvcjxJbWFnZUV4dHJhY3Rpb25MaW5lRGF0YT4gbGluZXM7CiAKLSAgICBib29sIGlzRW1wdHko
KSBjb25zdCB7IHJldHVybiB0ZXh0RGF0YS5pc0VtcHR5KCk7IH0KKyAgICBib29sIGlzRW1wdHko
KSBjb25zdCB7IHJldHVybiBsaW5lcy5pc0VtcHR5KCk7IH0KIAogICAgIHRlbXBsYXRlPGNsYXNz
IEVuY29kZXI+IHZvaWQgZW5jb2RlKEVuY29kZXImKSBjb25zdDsKICAgICB0ZW1wbGF0ZTxjbGFz
cyBEZWNvZGVyPiBzdGF0aWMgT3B0aW9uYWw8SW1hZ2VFeHRyYWN0aW9uUmVzdWx0PiBkZWNvZGUo
RGVjb2RlciYpOwpAQCAtNzMsMTcgKzExNCwxNyBAQCBzdHJ1Y3QgSW1hZ2VFeHRyYWN0aW9uUmVz
dWx0IHsKIAogdGVtcGxhdGU8Y2xhc3MgRW5jb2Rlcj4gdm9pZCBJbWFnZUV4dHJhY3Rpb25SZXN1
bHQ6OmVuY29kZShFbmNvZGVyJiBlbmNvZGVyKSBjb25zdAogewotICAgIGVuY29kZXIgPDwgdGV4
dERhdGE7CisgICAgZW5jb2RlciA8PCBsaW5lczsKIH0KIAogdGVtcGxhdGU8Y2xhc3MgRGVjb2Rl
cj4gT3B0aW9uYWw8SW1hZ2VFeHRyYWN0aW9uUmVzdWx0PiBJbWFnZUV4dHJhY3Rpb25SZXN1bHQ6
OmRlY29kZShEZWNvZGVyJiBkZWNvZGVyKQogewotICAgIE9wdGlvbmFsPFZlY3RvcjxJbWFnZUV4
dHJhY3Rpb25UZXh0RGF0YT4+IHRleHREYXRhOwotICAgIGRlY29kZXIgPj4gdGV4dERhdGE7Ci0g
ICAgaWYgKCF0ZXh0RGF0YSkKKyAgICBPcHRpb25hbDxWZWN0b3I8SW1hZ2VFeHRyYWN0aW9uTGlu
ZURhdGE+PiBsaW5lczsKKyAgICBkZWNvZGVyID4+IGxpbmVzOworICAgIGlmICghbGluZXMpCiAg
ICAgICAgIHJldHVybiBXVEY6Om51bGxvcHQ7CiAKLSAgICByZXR1cm4ge3sgV1RGTW92ZSgqdGV4
dERhdGEpIH19OworICAgIHJldHVybiB7eyBXVEZNb3ZlKCpsaW5lcykgfX07CiB9CiAKIH0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL0Zsb2F0UG9pbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0Zs
b2F0UG9pbnQuaAppbmRleCA3NWM5MjhkYTdhYTM3NDY2YjE0NmMxYzc4ZWMxMDBiNjUwY2YzMTk4
Li45MDRjMTQ4MzMwYmM5NTQxOWQ4NThmMjRiMGQ1ZjlmYWEyODJhNThjIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9GbG9hdFBvaW50LmgKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRmxvYXRQb2ludC5oCkBAIC0xMzUsNiArMTM1LDE3
IEBAIHB1YmxpYzoKICAgICAgICAgcmV0dXJuIHsgbV94ICogc2NhbGVYLCBtX3kgKiBzY2FsZVkg
fTsKICAgICB9CiAKKyAgICB2b2lkIHJvdGF0ZShkb3VibGUgYW5nbGVJblJhZGlhbnMsIGNvbnN0
IEZsb2F0UG9pbnQmIGFib3V0UG9pbnQgPSB7IH0pCisgICAgeworICAgICAgICBhdXRvIHNpbkFu
Z2xlID0gc2luKGFuZ2xlSW5SYWRpYW5zKTsKKyAgICAgICAgYXV0byBjb3NBbmdsZSA9IGNvcyhh
bmdsZUluUmFkaWFucyk7CisgICAgICAgIG1feCAtPSBhYm91dFBvaW50LngoKTsKKyAgICAgICAg
bV95IC09IGFib3V0UG9pbnQueSgpOworICAgICAgICBhdXRvIG5ld1ggPSBtX3ggKiBjb3NBbmds
ZSAtIG1feSAqIHNpbkFuZ2xlICsgYWJvdXRQb2ludC54KCk7CisgICAgICAgIG1feSA9IG1feCAq
IHNpbkFuZ2xlICsgbV95ICogY29zQW5nbGUgKyBhYm91dFBvaW50LnkoKTsKKyAgICAgICAgbV94
ID0gbmV3WDsKKyAgICB9CisKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIG5vcm1hbGl6ZSgpOwog
CiAgICAgZmxvYXQgZG90KGNvbnN0IEZsb2F0UG9pbnQmIGEpIGNvbnN0CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HZW9tZXRyeVV0aWxpdGllcy5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HZW9tZXRyeVV0aWxpdGllcy5jcHAKaW5k
ZXggZDU3YmE2NmQ1N2E0MTRjZjQzZWVmYTdkNWU3MjMwMTFmYjhiNDQ0My4uMzA4ZGU1NTNlYzFk
ZmM3YjE2N2Q0MGNkNjcxZGM1ZDlmYjZmN2ViZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvR2VvbWV0cnlVdGlsaXRpZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dlb21ldHJ5VXRpbGl0aWVzLmNwcApAQCAtMjE4LDcgKzIx
OCw3IEBAIHN0YXRpYyBmbG9hdCBhbmdsZUJldHdlZW5WZWN0b3JzKGNvbnN0IEZsb2F0U2l6ZSYg
dSwgY29uc3QgRmxvYXRTaXplJiB2KQogICAgIHJldHVybiBtYWduaXR1ZGVzID8gYWNvcyhjbGFt
cFRvPGZsb2F0Pihkb3RQcm9kdWN0KHUsIHYpIC8gbWFnbml0dWRlcywgLTEsIDEpKSA6IDA7CiB9
CiAKLVJvdGF0ZWRSZWN0IHJvdGF0ZWRCb3VuZGluZ1JlY3QoY29uc3QgRmxvYXRRdWFkJiBxdWFk
LCBPcHRpb25hbDxmbG9hdD4gbWluUm90YXRpb25JblJhZGlhbnMpCitSb3RhdGVkUmVjdCByb3Rh
dGVkQm91bmRpbmdSZWN0V2l0aE1pbmltdW1BbmdsZU9mUm90YXRpb24oY29uc3QgRmxvYXRRdWFk
JiBxdWFkLCBPcHRpb25hbDxmbG9hdD4gbWluUm90YXRpb25JblJhZGlhbnMpCiB7CiAgICAgY29u
c3RleHByIGF1dG8gdHdvUGlGbG9hdCA9IDIgKiBwaUZsb2F0OwogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HZW9tZXRyeVV0aWxpdGllcy5oIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR2VvbWV0cnlVdGlsaXRpZXMuaAppbmRleCA0ZWIx
MTcxNDY5YTQ1M2IxZjUxNmU0MmM3NDgxMzg5NDMzZGE3OTM2Li5kOGNlYzY5MzRjMDNiMWUxNWM2
ZWY1NjRjMTliMzQ0MDRjMTNmNGQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9HZW9tZXRyeVV0aWxpdGllcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL0dlb21ldHJ5VXRpbGl0aWVzLmgKQEAgLTY4LDYgKzY4LDYgQEAgc3RydWN0
IFJvdGF0ZWRSZWN0IHsKICAgICBmbG9hdCBhbmdsZUluUmFkaWFuczsKIH07CiAKLVdFQkNPUkVf
RVhQT1JUIFJvdGF0ZWRSZWN0IHJvdGF0ZWRCb3VuZGluZ1JlY3QoY29uc3QgRmxvYXRRdWFkJiwg
T3B0aW9uYWw8ZmxvYXQ+IG1pblJvdGF0aW9uSW5SYWRpYW5zID0gV1RGOjpudWxsb3B0KTsKK1dF
QkNPUkVfRVhQT1JUIFJvdGF0ZWRSZWN0IHJvdGF0ZWRCb3VuZGluZ1JlY3RXaXRoTWluaW11bUFu
Z2xlT2ZSb3RhdGlvbihjb25zdCBGbG9hdFF1YWQmLCBPcHRpb25hbDxmbG9hdD4gbWluUm90YXRp
b25JblJhZGlhbnMgPSBXVEY6Om51bGxvcHQpOwogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVy
bmFscy5jcHAKaW5kZXggYjIzOWJlMWMzNzIwZjhjMTNjM2NhYWU4Y2U2NzU3MjlmOTRkODJmMC4u
ZTlhYjM2Mjc1NmEwNzI1ZTk3NTAzMDRjNTA5YTY3NWE0Y2YwNTE4MCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rl
c3RpbmcvSW50ZXJuYWxzLmNwcApAQCAtNTU5NCwyNiArNTU5NCw0NyBAQCBNb2NrUGF5bWVudENv
b3JkaW5hdG9yJiBJbnRlcm5hbHM6Om1vY2tQYXltZW50Q29vcmRpbmF0b3IoRG9jdW1lbnQmIGRv
Y3VtZW50KQogfQogI2VuZGlmCiAKK0ludGVybmFsczo6SW1hZ2VPdmVybGF5TGluZTo6fkltYWdl
T3ZlcmxheUxpbmUoKSA9IGRlZmF1bHQ7CiBJbnRlcm5hbHM6OkltYWdlT3ZlcmxheVRleHQ6On5J
bWFnZU92ZXJsYXlUZXh0KCkgPSBkZWZhdWx0OwogCi12b2lkIEludGVybmFsczo6aW5zdGFsbElt
YWdlT3ZlcmxheShFbGVtZW50JiBlbGVtZW50LCBWZWN0b3I8SW1hZ2VPdmVybGF5VGV4dD4mJiBh
bGxUZXh0SW5mbykKKyNpZiBFTkFCTEUoSU1BR0VfRVhUUkFDVElPTikKKwordGVtcGxhdGU8dHlw
ZW5hbWUgVD4KK3N0YXRpYyBGbG9hdFF1YWQgZ2V0UXVhZChjb25zdCBUJiBvdmVybGF5VGV4dE9y
TGluZSkKK3sKKyAgICByZXR1cm4geworICAgICAgICBGbG9hdFBvaW50KG92ZXJsYXlUZXh0T3JM
aW5lLnRvcExlZnQtPngoKSwgb3ZlcmxheVRleHRPckxpbmUudG9wTGVmdC0+eSgpKSwKKyAgICAg
ICAgRmxvYXRQb2ludChvdmVybGF5VGV4dE9yTGluZS50b3BSaWdodC0+eCgpLCBvdmVybGF5VGV4
dE9yTGluZS50b3BSaWdodC0+eSgpKSwKKyAgICAgICAgRmxvYXRQb2ludChvdmVybGF5VGV4dE9y
TGluZS5ib3R0b21SaWdodC0+eCgpLCBvdmVybGF5VGV4dE9yTGluZS5ib3R0b21SaWdodC0+eSgp
KSwKKyAgICAgICAgRmxvYXRQb2ludChvdmVybGF5VGV4dE9yTGluZS5ib3R0b21MZWZ0LT54KCks
IG92ZXJsYXlUZXh0T3JMaW5lLmJvdHRvbUxlZnQtPnkoKSksCisgICAgfTsKK30KKworc3RhdGlj
IEltYWdlRXh0cmFjdGlvbkxpbmVEYXRhIG1ha2VEYXRhRm9yTGluZShjb25zdCBJbnRlcm5hbHM6
OkltYWdlT3ZlcmxheUxpbmUmIGxpbmUpCit7CisgICAgcmV0dXJuIHsKKyAgICAgICAgZ2V0UXVh
ZDxJbnRlcm5hbHM6OkltYWdlT3ZlcmxheUxpbmU+KGxpbmUpLAorICAgICAgICBsaW5lLmNoaWxk
cmVuLm1hcChbXShhdXRvJiB0ZXh0Q2hpbGQpIC0+IEltYWdlRXh0cmFjdGlvblRleHREYXRhIHsK
KyAgICAgICAgICAgIHJldHVybiB7IHRleHRDaGlsZC50ZXh0LCBnZXRRdWFkPEludGVybmFsczo6
SW1hZ2VPdmVybGF5VGV4dD4odGV4dENoaWxkKSB9OworICAgICAgICB9KQorICAgIH07Cit9CisK
KyNlbmRpZiAvLyBFTkFCTEUoSU1BR0VfRVhUUkFDVElPTikKKwordm9pZCBJbnRlcm5hbHM6Omlu
c3RhbGxJbWFnZU92ZXJsYXkoRWxlbWVudCYgZWxlbWVudCwgVmVjdG9yPEltYWdlT3ZlcmxheUxp
bmU+JiYgbGluZXMpCiB7CiAgICAgaWYgKCFpczxIVE1MRWxlbWVudD4oZWxlbWVudCkpCiAgICAg
ICAgIHJldHVybjsKIAogI2lmIEVOQUJMRShJTUFHRV9FWFRSQUNUSU9OKQogICAgIGRvd25jYXN0
PEhUTUxFbGVtZW50PihlbGVtZW50KS51cGRhdGVXaXRoSW1hZ2VFeHRyYWN0aW9uUmVzdWx0KElt
YWdlRXh0cmFjdGlvblJlc3VsdCB7Ci0gICAgICAgIGFsbFRleHRJbmZvLm1hcChbXSAoYXV0byYg
dGV4dEluZm8pIC0+IEltYWdlRXh0cmFjdGlvblRleHREYXRhIHsKLSAgICAgICAgICAgIHJldHVy
biB7IHRleHRJbmZvLnRleHQsIHsKLSAgICAgICAgICAgICAgICBGbG9hdFBvaW50KHRleHRJbmZv
LnRvcExlZnQtPngoKSwgdGV4dEluZm8udG9wTGVmdC0+eSgpKSwKLSAgICAgICAgICAgICAgICBG
bG9hdFBvaW50KHRleHRJbmZvLnRvcFJpZ2h0LT54KCksIHRleHRJbmZvLnRvcFJpZ2h0LT55KCkp
LAotICAgICAgICAgICAgICAgIEZsb2F0UG9pbnQodGV4dEluZm8uYm90dG9tUmlnaHQtPngoKSwg
dGV4dEluZm8uYm90dG9tUmlnaHQtPnkoKSksCi0gICAgICAgICAgICAgICAgRmxvYXRQb2ludCh0
ZXh0SW5mby5ib3R0b21MZWZ0LT54KCksIHRleHRJbmZvLmJvdHRvbUxlZnQtPnkoKSksCi0gICAg
ICAgICAgICB9fTsKKyAgICAgICAgbGluZXMubWFwKFtdIChhdXRvJiBsaW5lKSAtPiBJbWFnZUV4
dHJhY3Rpb25MaW5lRGF0YSB7CisgICAgICAgICAgICByZXR1cm4gbWFrZURhdGFGb3JMaW5lKGxp
bmUpOwogICAgICAgICB9KQogICAgIH0pOwogI2Vsc2UKLSAgICBVTlVTRURfUEFSQU0oYWxsVGV4
dEluZm8pOworICAgIFVOVVNFRF9QQVJBTShsaW5lcyk7CiAjZW5kaWYKIH0KIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaCBiL1NvdXJjZS9XZWJDb3JlL3Rl
c3RpbmcvSW50ZXJuYWxzLmgKaW5kZXggMjJjZDk1ZTMwOWU4MjAzODNmN2E1MjZjM2EwNDYwMjc1
ODJiNjNlYy4uYmVhYzU3OGEwYjZhZTk0NzNlZDEwZjVkYzkzNWE1ZTA5ZGY2YzlhOSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS90ZXN0aW5nL0ludGVybmFscy5oCkBAIC04NzUsNyArODc1LDE3IEBAIHB1YmxpYzoKIAog
ICAgICAgICB+SW1hZ2VPdmVybGF5VGV4dCgpOwogICAgIH07Ci0gICAgdm9pZCBpbnN0YWxsSW1h
Z2VPdmVybGF5KEVsZW1lbnQmLCBWZWN0b3I8SW1hZ2VPdmVybGF5VGV4dD4mJik7CisKKyAgICBz
dHJ1Y3QgSW1hZ2VPdmVybGF5TGluZSB7CisgICAgICAgIFJlZlB0cjxET01Qb2ludFJlYWRPbmx5
PiB0b3BMZWZ0OworICAgICAgICBSZWZQdHI8RE9NUG9pbnRSZWFkT25seT4gdG9wUmlnaHQ7Cisg
ICAgICAgIFJlZlB0cjxET01Qb2ludFJlYWRPbmx5PiBib3R0b21SaWdodDsKKyAgICAgICAgUmVm
UHRyPERPTVBvaW50UmVhZE9ubHk+IGJvdHRvbUxlZnQ7CisgICAgICAgIFZlY3RvcjxJbWFnZU92
ZXJsYXlUZXh0PiBjaGlsZHJlbjsKKworICAgICAgICB+SW1hZ2VPdmVybGF5TGluZSgpOworICAg
IH07CisgICAgdm9pZCBpbnN0YWxsSW1hZ2VPdmVybGF5KEVsZW1lbnQmLCBWZWN0b3I8SW1hZ2VP
dmVybGF5TGluZT4mJik7CiAKICAgICBib29sIGlzU3lzdGVtUHJldmlld0xpbmsoRWxlbWVudCYp
IGNvbnN0OwogICAgIGJvb2wgaXNTeXN0ZW1QcmV2aWV3SW1hZ2UoRWxlbWVudCYpIGNvbnN0Owpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsIGIvU291cmNl
L1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCmluZGV4IGExYjM4NTFkMTRiOTJkZTdlMzFk
YmVmNTczMjYyOWNmMTZjNWVjNTYuLmNiY2M5NzgwNDJiMDgwYmE0ZDZjYWNjNzg0ZTMwY2FiMzUw
M2Q5MTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKQEAgLTI2NCw2ICsyNjQs
MTcgQEAgZW51bSBUcmVlVHlwZSB7CiAgICAgcmVxdWlyZWQgRE9NUG9pbnRSZWFkT25seSBib3R0
b21MZWZ0OwogfTsKIAorWworICAgIEV4cG9ydE1hY3JvPVdFQkNPUkVfVEVTVFNVUFBPUlRfRVhQ
T1JULAorICAgIEpTR2VuZXJhdGVUb0pTT2JqZWN0LAorXSBkaWN0aW9uYXJ5IEltYWdlT3Zlcmxh
eUxpbmUgeworICAgIHJlcXVpcmVkIERPTVBvaW50UmVhZE9ubHkgdG9wTGVmdDsKKyAgICByZXF1
aXJlZCBET01Qb2ludFJlYWRPbmx5IHRvcFJpZ2h0OworICAgIHJlcXVpcmVkIERPTVBvaW50UmVh
ZE9ubHkgYm90dG9tUmlnaHQ7CisgICAgcmVxdWlyZWQgRE9NUG9pbnRSZWFkT25seSBib3R0b21M
ZWZ0OworICAgIHNlcXVlbmNlPEltYWdlT3ZlcmxheVRleHQ+IGNoaWxkcmVuOworfTsKKwogWwog
ICAgIEV4cG9ydE1hY3JvPVdFQkNPUkVfVEVTVFNVUFBPUlRfRVhQT1JULAogICAgIExlZ2FjeU5v
SW50ZXJmYWNlT2JqZWN0LApAQCAtODk2LDcgKzkwNyw3IEBAIGVudW0gVHJlZVR5cGUgewogICAg
IGJvb2xlYW4gaXNTeXN0ZW1QcmV2aWV3TGluayhFbGVtZW50IGVsZW1lbnQpOwogICAgIGJvb2xl
YW4gaXNTeXN0ZW1QcmV2aWV3SW1hZ2UoRWxlbWVudCBlbGVtZW50KTsKIAotICAgIHVuZGVmaW5l
ZCBpbnN0YWxsSW1hZ2VPdmVybGF5KEVsZW1lbnQgZWxlbWVudCwgc2VxdWVuY2U8SW1hZ2VPdmVy
bGF5VGV4dD4gYWxsVGV4dEluZm8pOworICAgIHVuZGVmaW5lZCBpbnN0YWxsSW1hZ2VPdmVybGF5
KEVsZW1lbnQgZWxlbWVudCwgc2VxdWVuY2U8SW1hZ2VPdmVybGF5TGluZT4gbGluZXMpOwogCiAg
ICAgYm9vbGVhbiB1c2luZ0FwcGxlSW50ZXJuYWxTREsoKTsKICAgICBib29sZWFuIHVzaW5nR1N0
cmVhbWVyKCk7CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cK
aW5kZXggYzkzZTQwY2ExZjViZjRjMzY0NGViZmYwZmFkYjg0NGY0MzI2ZjA1Yi4uNjRlNzI1NDBl
NDZmZmFlOWUwYTUzOGM5MzdiMTIzNWMyNGZiNWE0NyAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdl
TG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDIxLTA0LTI2ICBX
ZW5zb24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIFN1YmRpdmlk
ZSBpbWFnZSBvdmVybGF5IHRleHQgaW50byBvbmUgb3IgbW9yZSBlbGVtZW50cyBwZXIgbGluZQor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1MDM4Cisg
ICAgICAgIHJkYXI6Ly83NTUwNTA0MworCisgICAgICAgIFJldmlld2VkIGJ5IFRpbSBIb3J0b24g
YW5kIERldmluIFJvdXNzby4KKworICAgICAgICBBZGp1c3Qgc2V2ZXJhbCBleGlzdGluZyBsYXlv
dXQgdGVzdHMgYWZ0ZXIgY2hhbmdpbmcgYGludGVybmFscy5pbnN0YWxsSW1hZ2VPdmVybGF5YC4g
U2VlIFdlYkNvcmUgQ2hhbmdlTG9nIGZvcgorICAgICAgICBtb3JlIGRldGFpbHMuIEFkZGl0aW9u
YWxseSwgcmVuYW1lIGEgV2ViQ29yZSBnZW9tZXRyeSBoZWxwZXIgbWV0aG9kLgorCisgICAgICAg
ICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJDb3JlL0Zsb2F0UXVhZFRlc3RzLmNwcDoKKyAgICAg
ICAgKFRlc3RXZWJLaXRBUEk6OlRFU1QpOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMv
V2ViS2l0L3NpbXBsZS1pbWFnZS1vdmVybGF5Lmh0bWw6CisKIDIwMjEtMDQtMjYgIERvbiBPbG1z
dGVhZCAgPGRvbi5vbG1zdGVhZEBzb255LmNvbT4KIAogICAgICAgICBbQ01ha2VdIE1vZGVybml6
ZSBXZWJLaXQgR0xpYiB0ZXN0aW5nCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rl
c3RzL1dlYkNvcmUvRmxvYXRRdWFkVGVzdHMuY3BwIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0
cy9XZWJDb3JlL0Zsb2F0UXVhZFRlc3RzLmNwcAppbmRleCA4ZjVlMmI3M2ZkZTFhNDBkZGU4ZTky
YThjMmNhN2MyODNjMTFjOWVjLi44M2MxZjViZjIxMDgyZjQ3MWQ1NDM2ODI5MDdkNmY3MDhkNjdj
MTYyIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYkNvcmUvRmxvYXRR
dWFkVGVzdHMuY3BwCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViQ29yZS9GbG9h
dFF1YWRUZXN0cy5jcHAKQEAgLTQ4LDcgKzQ4LDcgQEAgc3RhdGljIHZvaWQgZXhwZWN0Um90YXRl
ZFJlY3QoY29uc3QgRmxvYXRQb2ludCYgY2VudGVyLCBjb25zdCBGbG9hdFNpemUmIHNpemUsIGYK
IAogVEVTVChGbG9hdFF1YWQsIFJvdGF0ZWRCb3VuZGluZ1JlY3RGb3JQb2ludCkKIHsKLSAgICBl
eHBlY3RSb3RhdGVkUmVjdCh7IDEsIC01IH0sIHsgMCwgMCB9LCAwLCByb3RhdGVkQm91bmRpbmdS
ZWN0KHsKKyAgICBleHBlY3RSb3RhdGVkUmVjdCh7IDEsIC01IH0sIHsgMCwgMCB9LCAwLCByb3Rh
dGVkQm91bmRpbmdSZWN0V2l0aE1pbmltdW1BbmdsZU9mUm90YXRpb24oewogICAgICAgICBGbG9h
dFBvaW50KDEsIC01KSwKICAgICAgICAgRmxvYXRQb2ludCgxLCAtNSksCiAgICAgICAgIEZsb2F0
UG9pbnQoMSwgLTUpLApAQCAtNTgsNyArNTgsNyBAQCBURVNUKEZsb2F0UXVhZCwgUm90YXRlZEJv
dW5kaW5nUmVjdEZvclBvaW50KQogCiBURVNUKEZsb2F0UXVhZCwgUm90YXRlZEJvdW5kaW5nUmVj
dEZvckxpbmVTZWdtZW50KQogewotICAgIGV4cGVjdFJvdGF0ZWRSZWN0KHsgMCwgLTUgfSwgeyAy
MCwgMCB9LCAwLCByb3RhdGVkQm91bmRpbmdSZWN0KHsKKyAgICBleHBlY3RSb3RhdGVkUmVjdCh7
IDAsIC01IH0sIHsgMjAsIDAgfSwgMCwgcm90YXRlZEJvdW5kaW5nUmVjdFdpdGhNaW5pbXVtQW5n
bGVPZlJvdGF0aW9uKHsKICAgICAgICAgRmxvYXRQb2ludCgtMTAsIC01KSwKICAgICAgICAgRmxv
YXRQb2ludCgxMCwgLTUpLAogICAgICAgICBGbG9hdFBvaW50KDEwLCAtNSksCkBAIC02OCw3ICs2
OCw3IEBAIFRFU1QoRmxvYXRRdWFkLCBSb3RhdGVkQm91bmRpbmdSZWN0Rm9yTGluZVNlZ21lbnQp
CiAKIFRFU1QoRmxvYXRRdWFkLCBSb3RhdGVkQm91bmRpbmdSZWN0Rm9yVHJpYW5nbGUpCiB7Ci0g
ICAgZXhwZWN0Um90YXRlZFJlY3QoeyAxMCwgMCB9LCB7IDQwLCAyMCB9LCAwLCByb3RhdGVkQm91
bmRpbmdSZWN0KHsKKyAgICBleHBlY3RSb3RhdGVkUmVjdCh7IDEwLCAwIH0sIHsgNDAsIDIwIH0s
IDAsIHJvdGF0ZWRCb3VuZGluZ1JlY3RXaXRoTWluaW11bUFuZ2xlT2ZSb3RhdGlvbih7CiAgICAg
ICAgIEZsb2F0UG9pbnQoLTEwLCAtMTApLAogICAgICAgICBGbG9hdFBvaW50KDMwLCAwKSwKICAg
ICAgICAgRmxvYXRQb2ludCgzMCwgMCksCkBAIC03OCwxNCArNzgsMTQgQEAgVEVTVChGbG9hdFF1
YWQsIFJvdGF0ZWRCb3VuZGluZ1JlY3RGb3JUcmlhbmdsZSkKIAogVEVTVChGbG9hdFF1YWQsIFJv
dGF0ZWRCb3VuZGluZ1JlY3RGb3JUcmFwZXpvaWQpCiB7Ci0gICAgZXhwZWN0Um90YXRlZFJlY3Qo
eyAyNSwgMTUgfSwgeyAyOC4yODQsIDE0LjE0MiB9LCA1LjQ5OCwgcm90YXRlZEJvdW5kaW5nUmVj
dCh7CisgICAgZXhwZWN0Um90YXRlZFJlY3QoeyAyNSwgMTUgfSwgeyAyOC4yODQsIDE0LjE0MiB9
LCA1LjQ5OCwgcm90YXRlZEJvdW5kaW5nUmVjdFdpdGhNaW5pbXVtQW5nbGVPZlJvdGF0aW9uKHsK
ICAgICAgICAgRmxvYXRQb2ludCgxMCwgMjApLAogICAgICAgICBGbG9hdFBvaW50KDIwLCAxMCks
CiAgICAgICAgIEZsb2F0UG9pbnQoNDAsIDEwKSwKICAgICAgICAgRmxvYXRQb2ludCgyMCwgMzAp
CiAgICAgfSkpOwogCi0gICAgZXhwZWN0Um90YXRlZFJlY3QoeyAyMCwgMjUgfSwgeyAyNi44Mywg
MTMuNDIgfSwgMS4xMDcsIHJvdGF0ZWRCb3VuZGluZ1JlY3QoeworICAgIGV4cGVjdFJvdGF0ZWRS
ZWN0KHsgMjAsIDI1IH0sIHsgMjYuODMsIDEzLjQyIH0sIDEuMTA3LCByb3RhdGVkQm91bmRpbmdS
ZWN0V2l0aE1pbmltdW1BbmdsZU9mUm90YXRpb24oewogICAgICAgICBGbG9hdFBvaW50KDIwLCAx
MCksCiAgICAgICAgIEZsb2F0UG9pbnQoMzAsIDMwKSwKICAgICAgICAgRmxvYXRQb2ludCgyMCwg
NDApLApAQCAtOTUsMTQgKzk1LDE0IEBAIFRFU1QoRmxvYXRRdWFkLCBSb3RhdGVkQm91bmRpbmdS
ZWN0Rm9yVHJhcGV6b2lkKQogCiBURVNUKEZsb2F0UXVhZCwgUm90YXRlZEJvdW5kaW5nUmVjdFdp
dGhNaW5pbXVtQW5nbGUpCiB7Ci0gICAgZXhwZWN0Um90YXRlZFJlY3QoeyAyMCwgLTE0Ljk1IH0s
IHsgMjAsIDEwLjEgfSwgMCwgcm90YXRlZEJvdW5kaW5nUmVjdCh7CisgICAgZXhwZWN0Um90YXRl
ZFJlY3QoeyAyMCwgLTE0Ljk1IH0sIHsgMjAsIDEwLjEgfSwgMCwgcm90YXRlZEJvdW5kaW5nUmVj
dFdpdGhNaW5pbXVtQW5nbGVPZlJvdGF0aW9uKHsKICAgICAgICAgRmxvYXRQb2ludCgxMCwgLTIw
KSwKICAgICAgICAgRmxvYXRQb2ludCgzMCwgLTE5LjkpLAogICAgICAgICBGbG9hdFBvaW50KDMw
LCAtOS45KSwKICAgICAgICAgRmxvYXRQb2ludCgxMCwgLTEwKQogICAgIH0sIDAuMDEpKTsKIAot
ICAgIGV4cGVjdFJvdGF0ZWRSZWN0KHsgMjAsIC0xNS4wNSB9LCB7IDIwLCAxMC4xIH0sIDAsIHJv
dGF0ZWRCb3VuZGluZ1JlY3QoeworICAgIGV4cGVjdFJvdGF0ZWRSZWN0KHsgMjAsIC0xNS4wNSB9
LCB7IDIwLCAxMC4xIH0sIDAsIHJvdGF0ZWRCb3VuZGluZ1JlY3RXaXRoTWluaW11bUFuZ2xlT2ZS
b3RhdGlvbih7CiAgICAgICAgIEZsb2F0UG9pbnQoMTAsIC0yMCksCiAgICAgICAgIEZsb2F0UG9p
bnQoMzAsIC0yMC4xKSwKICAgICAgICAgRmxvYXRQb2ludCgzMCwgLTEwLjEpLApkaWZmIC0tZ2l0
IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvc2ltcGxlLWltYWdlLW92ZXJsYXku
aHRtbCBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L3NpbXBsZS1pbWFnZS1vdmVy
bGF5Lmh0bWwKaW5kZXggOThjMGI3YTNhYjJkYjczZjdmNWJjZWNiYTIzMWRmM2JlMzhjYjQ4YS4u
MmI5ZGNlM2EyNWZiMGIyNGI3MzQ3MmE3M2RiMTI0NTZhZjkzNTk1YyAxMDA2NDQKLS0tIGEvVG9v
bHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvc2ltcGxlLWltYWdlLW92ZXJsYXkuaHRtbAor
KysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9zaW1wbGUtaW1hZ2Utb3Zlcmxh
eS5odG1sCkBAIC0xOCwxMSArMTgsMTkgQEAgYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsICgpID0+
IHsKICAgICAgICAgcmV0dXJuOwogCiAgICAgaW50ZXJuYWxzLmluc3RhbGxJbWFnZU92ZXJsYXko
ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaW1nIiksIFt7Ci0gICAgICAgIHRleHQgOiAiZm9vYmFy
IiwKICAgICAgICAgdG9wTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDApLAogICAgICAg
ICB0b3BSaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDApLAogICAgICAgICBib3R0b21S
aWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDAuNSksCiAgICAgICAgIGJvdHRvbUxlZnQg
OiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwLjUpLAorICAgICAgICBjaGlsZHJlbjogWworICAg
ICAgICAgICAgeworICAgICAgICAgICAgICAgIHRleHQgOiAiZm9vYmFyIiwKKyAgICAgICAgICAg
ICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMCksCisgICAgICAgICAgICAg
ICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwKSwKKyAgICAgICAgICAgICAg
ICBib3R0b21SaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDAuNSksCisgICAgICAgICAg
ICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDAuNSksCisgICAgICAg
ICAgICB9CisgICAgICAgIF0KICAgICB9XSk7CiB9KTsKIDwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGJhMWFi
NjkzNGYzNzkxOGE4M2FjMmM3YjhmYTljNTNiNjA5MzgwZWMuLjM5Y2M5MjA3MTlmMzY2OTYwYjQx
YTMyNzI1MzVkOWNmODg0OTA5YmYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZwor
KysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzMSBAQAorMjAyMS0wNC0yNiAg
V2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KKworICAgICAgICBTdWJkaXZp
ZGUgaW1hZ2Ugb3ZlcmxheSB0ZXh0IGludG8gb25lIG9yIG1vcmUgZWxlbWVudHMgcGVyIGxpbmUK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNTAzOAor
ICAgICAgICByZGFyOi8vNzU1MDUwNDMKKworICAgICAgICBSZXZpZXdlZCBieSBUaW0gSG9ydG9u
IGFuZCBEZXZpbiBSb3Vzc28uCisKKyAgICAgICAgQWRqdXN0IHNldmVyYWwgZXhpc3RpbmcgbGF5
b3V0IHRlc3RzIGFmdGVyIGNoYW5naW5nIGBpbnRlcm5hbHMuaW5zdGFsbEltYWdlT3ZlcmxheWAu
IFNlZSBXZWJDb3JlIENoYW5nZUxvZyBmb3IKKyAgICAgICAgbW9yZSBkZXRhaWxzLgorCisgICAg
ICAgICogZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9iYXNpYy1pbWFnZS1vdmVybGF5Lmh0
bWw6CisgICAgICAgICogZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9jbGljay1saW5rLXdp
dGgtaW1hZ2Utb3ZlcmxheS5odG1sOgorICAgICAgICAqIGZhc3QvaW1hZ2VzL2ltYWdlLWV4dHJh
Y3Rpb24vaW1hZ2Utb3ZlcmxheS1jcmVhdGlvbi1pcy1pZGVtcG90ZW50Lmh0bWw6CisgICAgICAg
ICogZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9pbWFnZS1vdmVybGF5LWluLWltYWdlLXdp
dGgtemVyby1mb250LXNpemUuaHRtbDoKKyAgICAgICAgKiBmYXN0L2ltYWdlcy9pbWFnZS1leHRy
YWN0aW9uL2ltYWdlLW92ZXJsYXktd2l0aC1zZWxlY3Rpb24tc3R5bGVzLWV4cGVjdGVkLmh0bWw6
CisgICAgICAgICogZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9pbWFnZS1vdmVybGF5LXdp
dGgtc2VsZWN0aW9uLXN0eWxlcy5odG1sOgorICAgICAgICAqIGZhc3QvaW1hZ2VzL2ltYWdlLWV4
dHJhY3Rpb24vaW9zL3Jlc2VsZWN0LXdvcmQtaW4taW1hZ2Utb3ZlcmxheS5odG1sOgorICAgICAg
ICAqIGZhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vaW9zL3NlbGVjdC13b3JkLWluLWltYWdl
LW92ZXJsYXktaW5zaWRlLWxpbmsuaHRtbDoKKyAgICAgICAgKiBmYXN0L2ltYWdlcy9pbWFnZS1l
eHRyYWN0aW9uL2lvcy9zZWxlY3Qtd29yZC1pbi1pbWFnZS1vdmVybGF5Lmh0bWw6CisgICAgICAg
ICogZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9pb3Mvc2VsZWN0aW9uLXJlY3RzLWluLWlt
YWdlLW92ZXJsYXkuaHRtbDoKKyAgICAgICAgKiBmYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9u
L21hYy9jb3B5LWltYWdlLW92ZXJsYXktdGV4dC13aXRoLWNvbnRleHQtbWVudS5odG1sOgorICAg
ICAgICAqIGZhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vbWFjL3NlbGVjdC1pbWFnZS1vdmVy
bGF5LWluLWxpbmstd2l0aC1tb3VzZS1kcmFnLmh0bWw6CisgICAgICAgICogZmFzdC9pbWFnZXMv
aW1hZ2UtZXh0cmFjdGlvbi9tYWMvc2VsZWN0LWltYWdlLW92ZXJsYXktd2l0aC1tb3VzZS1kcmFn
LWRvZXMtbm90LWZpcmUtY2xpY2suaHRtbDoKKyAgICAgICAgKiBmYXN0L2ltYWdlcy9pbWFnZS1l
eHRyYWN0aW9uL21hYy9zZWxlY3QtaW1hZ2Utb3ZlcmxheS13aXRoLW1vdXNlLWRyYWcuaHRtbDoK
KyAgICAgICAgKiBmYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL21hYy9zZWxlY3Qtd29yZC1p
bi1kcmFnZ2FibGUtaW1hZ2Utb3ZlcmxheS5odG1sOgorICAgICAgICAqIGZhc3QvaW1hZ2VzL2lt
YWdlLWV4dHJhY3Rpb24vbWFjL3NlbGVjdC13b3JkLWluLXRyYW5zcGFyZW50LWltYWdlLW92ZXJs
YXkuaHRtbDoKKwogMjAyMS0wNC0yNiAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxl
LmNvbT4KIAogICAgICAgICBbaU9TXSBXZWIgY29udGVudCBwcm9jZXNzIG9jY2FzaW9uYWxseSBj
cmFzaGVzIHVuZGVyIFZpc2libGVTZWxlY3Rpb246OmFkanVzdFBvc2l0aW9uRm9yRW5kCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2Jhc2ljLWlt
YWdlLW92ZXJsYXkuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rp
b24vYmFzaWMtaW1hZ2Utb3ZlcmxheS5odG1sCmluZGV4IGE4MWMzNmUwNzc2NWQ2OTBhNjg0ZTZi
ZDA1YTZjNGE0MWQ0NTBlNzcuLjk5YTBjZTYxODA2ZThlYTNhM2IzODRlZWM1Zjg2OTA2ODM4YzZj
NDcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24v
YmFzaWMtaW1hZ2Utb3ZlcmxheS5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2lt
YWdlLWV4dHJhY3Rpb24vYmFzaWMtaW1hZ2Utb3ZlcmxheS5odG1sCkBAIC01LDEzICs1LDIxIEBA
CiA8c2NyaXB0PgogYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsICgpID0+IHsKICAgICBsZXQgaW1h
Z2UgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJpbWciKTsKLSAgICBpbnRlcm5hbHMuaW5zdGFs
bEltYWdlT3ZlcmxheShpbWFnZSwgW3sKLSAgICAgICAgdGV4dCA6ICJIZWxsbyIsCi0gICAgICAg
IHRvcExlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjUsIDAuNSksCi0gICAgICAgIHRvcFJp
Z2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwKLSAgICAgICAgYm90dG9tUmlnaHQg
OiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAxKSwKLSAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBE
T01Qb2ludFJlYWRPbmx5KDAuNSwgMSksCi0gICAgfV0pOworICAgIGludGVybmFscy5pbnN0YWxs
SW1hZ2VPdmVybGF5KGltYWdlLCBbCisgICAgICAgIHsKKyAgICAgICAgICAgIHRvcExlZnQgOiBu
ZXcgRE9NUG9pbnRSZWFkT25seSgwLjUsIDAuNSksCisgICAgICAgICAgICB0b3BSaWdodCA6IG5l
dyBET01Qb2ludFJlYWRPbmx5KDEsIDAuNSksCisgICAgICAgICAgICBib3R0b21SaWdodCA6IG5l
dyBET01Qb2ludFJlYWRPbmx5KDEsIDEpLAorICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBE
T01Qb2ludFJlYWRPbmx5KDAuNSwgMSksCisgICAgICAgICAgICBjaGlsZHJlbjogW3sKKyAgICAg
ICAgICAgICAgICB0ZXh0IDogIkhlbGxvIiwKKyAgICAgICAgICAgICAgICB0b3BMZWZ0IDogbmV3
IERPTVBvaW50UmVhZE9ubHkoMC41LCAwLjUpLAorICAgICAgICAgICAgICAgIHRvcFJpZ2h0IDog
bmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwKKyAgICAgICAgICAgICAgICBib3R0b21SaWdo
dCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDEpLAorICAgICAgICAgICAgICAgIGJvdHRvbUxl
ZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjUsIDEpLAorICAgICAgICAgICAgfV0sCisgICAg
ICAgIH0KKyAgICBdKTsKICAgICBpbnRlcm5hbHMuc2hhZG93Um9vdChpbWFnZSkuZ2V0RWxlbWVu
dEJ5SWQoImltYWdlLW92ZXJsYXkiKS5zdHlsZS5jb2xvciA9ICJibGFjayI7CiB9KTsKIDwvc2Ny
aXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlv
bi9jbGljay1saW5rLXdpdGgtaW1hZ2Utb3ZlcmxheS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9p
bWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9jbGljay1saW5rLXdpdGgtaW1hZ2Utb3ZlcmxheS5odG1s
CmluZGV4IGFlOGRhYTQ3ODY0ZTM0OTkyNjRkY2FiNWY3MTBiYzkwZjhhYjRjOGYuLjYxMGU4NmVm
ODdjZDE2NzMzMmMwZWE2MzZkNWYxN2E4YjkzMDk2MzUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vY2xpY2stbGluay13aXRoLWltYWdlLW92ZXJs
YXkuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2Ns
aWNrLWxpbmstd2l0aC1pbWFnZS1vdmVybGF5Lmh0bWwKQEAgLTMwLDYgKzMwLDI0IEBAIGFkZEV2
ZW50TGlzdGVuZXIoImxvYWQiLCBhc3luYyAoKSA9PiB7CiAgICAgICAgIGNsaWNrQ291bnQrKzsK
ICAgICB9KTsKIAorICAgIGludGVybmFscy5pbnN0YWxsSW1hZ2VPdmVybGF5KGRvY3VtZW50LnF1
ZXJ5U2VsZWN0b3IoImltZyIpLCBbCisgICAgICAgIHsKKyAgICAgICAgICAgIHRvcExlZnQgOiBu
ZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwKSwKKyAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERP
TVBvaW50UmVhZE9ubHkoMSwgMCksCisgICAgICAgICAgICBib3R0b21SaWdodCA6IG5ldyBET01Q
b2ludFJlYWRPbmx5KDEsIDAuMjUpLAorICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Q
b2ludFJlYWRPbmx5KDAsIDAuMjUpLAorICAgICAgICAgICAgY2hpbGRyZW46IFsKKyAgICAgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHRleHQgOiAiaGVsbG8iLAorICAgICAgICAg
ICAgICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMCksCisgICAgICAg
ICAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMCksCisgICAg
ICAgICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC4y
NSksCisgICAgICAgICAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25s
eSgwLCAwLjI1KSwKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICBdLAorICAgICAgICB9
CisgICAgXSk7CisKICAgICBpbnRlcm5hbHMuaW5zdGFsbEltYWdlT3ZlcmxheShkb2N1bWVudC5x
dWVyeVNlbGVjdG9yKCJpbWciKSwgWwogICAgICAgICB7CiAgICAgICAgICAgICB0ZXh0IDogImhl
bGxvIiwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rp
b24vaW1hZ2Utb3ZlcmxheS1jcmVhdGlvbi1pcy1pZGVtcG90ZW50Lmh0bWwgYi9MYXlvdXRUZXN0
cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2ltYWdlLW92ZXJsYXktY3JlYXRpb24taXMt
aWRlbXBvdGVudC5odG1sCmluZGV4IDVkYzkwODRiMjNjZWMyZWI3ZTZmOGQ4Y2EwZWJlMDk2YTU2
ZjYxOTIuLmI2Y2NkZmI2MzNlOWIyNGU0M2YwNGMzZjk4ZmYzMDJmNTNmZGI5MjggMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vaW1hZ2Utb3Zlcmxh
eS1jcmVhdGlvbi1pcy1pZGVtcG90ZW50Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFn
ZXMvaW1hZ2UtZXh0cmFjdGlvbi9pbWFnZS1vdmVybGF5LWNyZWF0aW9uLWlzLWlkZW1wb3RlbnQu
aHRtbApAQCAtNywxMyArNywyMyBAQAogYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsICgpID0+IHsK
ICAgICBpbWFnZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImltZyIpOwogICAgIGZvciAobGV0
IGkgPSAwOyBpIDwgMTA7ICsraSkgewotICAgICAgICBpbnRlcm5hbHMuaW5zdGFsbEltYWdlT3Zl
cmxheShpbWFnZSwgW3sKLSAgICAgICAgICAgIHRleHQgOiAiSGVsbG8iLAotICAgICAgICAgICAg
dG9wTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuNSwgMC41KSwKLSAgICAgICAgICAgIHRv
cFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwKLSAgICAgICAgICAgIGJvdHRv
bVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMSksCi0gICAgICAgICAgICBib3R0b21M
ZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC41LCAxKSwKLSAgICAgICAgfV0pOworICAgICAg
ICBpbnRlcm5hbHMuaW5zdGFsbEltYWdlT3ZlcmxheShpbWFnZSwgWworICAgICAgICAgICAgewor
ICAgICAgICAgICAgICAgIHRvcExlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjUsIDAuNSks
CisgICAgICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwLjUp
LAorICAgICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwg
MSksCisgICAgICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAu
NSwgMSksCisgICAgICAgICAgICAgICAgY2hpbGRyZW46IFsKKyAgICAgICAgICAgICAgICAgICAg
eworICAgICAgICAgICAgICAgICAgICAgICAgdGV4dCA6ICJIZWxsbyIsCisgICAgICAgICAgICAg
ICAgICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC41LCAwLjUpLAorICAg
ICAgICAgICAgICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAw
LjUpLAorICAgICAgICAgICAgICAgICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRS
ZWFkT25seSgxLCAxKSwKKyAgICAgICAgICAgICAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcg
RE9NUG9pbnRSZWFkT25seSgwLjUsIDEpLAorICAgICAgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgICAgICAgXSwKKyAgICAgICAgICAgIH0KKyAgICAgICAgXSk7CiAgICAgfQogICAgIHNob3Vs
ZEJlKCJpbnRlcm5hbHMuc2hhZG93Um9vdChpbWFnZSkuY2hpbGRFbGVtZW50Q291bnQiLCAiMiIp
OwogfSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0
aW9uL2ltYWdlLW92ZXJsYXktaW4taW1hZ2Utd2l0aC16ZXJvLWZvbnQtc2l6ZS5odG1sIGIvTGF5
b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9pbWFnZS1vdmVybGF5LWluLWlt
YWdlLXdpdGgtemVyby1mb250LXNpemUuaHRtbAppbmRleCBjMzgwM2M0MTg0MDU4MzA2NDE1ZWFj
NWU1ZDhiOWI0MGEwY2IyMDBlLi4wMTRiMDU2NDk5NjgxNGRmMzg1ZDBiOGVlMjIyYTk5ODlkYjU1
MDE3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9u
L2ltYWdlLW92ZXJsYXktaW4taW1hZ2Utd2l0aC16ZXJvLWZvbnQtc2l6ZS5odG1sCisrKyBiL0xh
eW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vaW1hZ2Utb3ZlcmxheS1pbi1p
bWFnZS13aXRoLXplcm8tZm9udC1zaXplLmh0bWwKQEAgLTEyLDEzICsxMiwyMyBAQCBpbWcgewog
PHNjcmlwdD4KIGFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCAoKSA9PiB7CiAgICAgbGV0IGltYWdl
ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaW1nIik7Ci0gICAgaW50ZXJuYWxzLmluc3RhbGxJ
bWFnZU92ZXJsYXkoaW1hZ2UsIFt7Ci0gICAgICAgIHRleHQgOiAiSGVsbG8iLAotICAgICAgICB0
b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC41LCAwLjUpLAotICAgICAgICB0b3BSaWdo
dCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDAuNSksCi0gICAgICAgIGJvdHRvbVJpZ2h0IDog
bmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMSksCi0gICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9N
UG9pbnRSZWFkT25seSgwLjUsIDEpLAotICAgIH1dKTsKKyAgICBpbnRlcm5hbHMuaW5zdGFsbElt
YWdlT3ZlcmxheShpbWFnZSwgWworICAgICAgICB7CisgICAgICAgICAgICB0b3BMZWZ0IDogbmV3
IERPTVBvaW50UmVhZE9ubHkoMC41LCAwLjUpLAorICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcg
RE9NUG9pbnRSZWFkT25seSgxLCAwLjUpLAorICAgICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcg
RE9NUG9pbnRSZWFkT25seSgxLCAxKSwKKyAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9N
UG9pbnRSZWFkT25seSgwLjUsIDEpLAorICAgICAgICAgICAgY2hpbGRyZW46IFsKKyAgICAgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHRleHQgOiAiSGVsbG8iLAorICAgICAgICAg
ICAgICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC41LCAwLjUpLAorICAg
ICAgICAgICAgICAgICAgICB0b3BSaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDAuNSks
CisgICAgICAgICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHko
MSwgMSksCisgICAgICAgICAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFk
T25seSgwLjUsIDEpLAorICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIF0sCisgICAgICAg
IH0KKyAgICBdKTsKICAgICBpbnRlcm5hbHMuc2hhZG93Um9vdChpbWFnZSkuZ2V0RWxlbWVudEJ5
SWQoImltYWdlLW92ZXJsYXkiKS5zdHlsZS5jb2xvciA9ICJibGFjayI7CiB9KTsKIDwvc2NyaXB0
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9p
bWFnZS1vdmVybGF5LXdpdGgtc2VsZWN0aW9uLXN0eWxlcy1leHBlY3RlZC5odG1sIGIvTGF5b3V0
VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9pbWFnZS1vdmVybGF5LXdpdGgtc2Vs
ZWN0aW9uLXN0eWxlcy1leHBlY3RlZC5odG1sCmluZGV4IDY3NjhiZTIzZTdiMTVmYTYxZTk5ZTM1
YjljOTEwZjMwYjJlZTMzNGIuLmVhNTI0NTYwOTk2NGFiYzk0ZDc4NmU4MDhhNTU4OGFlZTRiZjc4
NWMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24v
aW1hZ2Utb3ZlcmxheS13aXRoLXNlbGVjdGlvbi1zdHlsZXMtZXhwZWN0ZWQuaHRtbAorKysgYi9M
YXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2ltYWdlLW92ZXJsYXktd2l0
aC1zZWxlY3Rpb24tc3R5bGVzLWV4cGVjdGVkLmh0bWwKQEAgLTIwLDExICsyMCwxOSBAQCBhZGRF
dmVudExpc3RlbmVyKCJsb2FkIiwgKCkgPT4gewogICAgIGNvbnN0IGltYWdlID0gZG9jdW1lbnQu
cXVlcnlTZWxlY3RvcigiaW1nIik7CiAgICAgaW50ZXJuYWxzLmluc3RhbGxJbWFnZU92ZXJsYXko
aW1hZ2UsIFsKICAgICAgICAgewotICAgICAgICAgICAgdGV4dCA6ICJoZWxsbyIsCiAgICAgICAg
ICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMCksCiAgICAgICAgICAgICB0
b3BSaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDApLAogICAgICAgICAgICAgYm90dG9t
UmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwLjUpLAogICAgICAgICAgICAgYm90dG9t
TGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDAuNSksCisgICAgICAgICAgICBjaGlsZHJl
bjogWworICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdGV4dCA6ICJoZWxs
byIsCisgICAgICAgICAgICAgICAgICAgIHRvcExlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgw
LCAwKSwKKyAgICAgICAgICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25s
eSgxLCAwKSwKKyAgICAgICAgICAgICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRS
ZWFkT25seSgxLCAwLjUpLAorICAgICAgICAgICAgICAgICAgICBib3R0b21MZWZ0IDogbmV3IERP
TVBvaW50UmVhZE9ubHkoMCwgMC41KSwKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICBd
LAogICAgICAgICB9CiAgICAgXSk7CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvaW1h
Z2VzL2ltYWdlLWV4dHJhY3Rpb24vaW1hZ2Utb3ZlcmxheS13aXRoLXNlbGVjdGlvbi1zdHlsZXMu
aHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vaW1hZ2Utb3Zl
cmxheS13aXRoLXNlbGVjdGlvbi1zdHlsZXMuaHRtbAppbmRleCA5MzQ0YmU0YjkxMzAzMzgyMmY4
YzU0ZTdiYTYzMjRiODNlMTQxYzllLi45NTk1MmI1Y2IzNmYyMGFhMzVlYmUwYTRjY2ZhNTE3YTc0
NjVhMTIwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0
aW9uL2ltYWdlLW92ZXJsYXktd2l0aC1zZWxlY3Rpb24tc3R5bGVzLmh0bWwKKysrIGIvTGF5b3V0
VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9pbWFnZS1vdmVybGF5LXdpdGgtc2Vs
ZWN0aW9uLXN0eWxlcy5odG1sCkBAIC0xNiwxMSArMTYsMTkgQEAgYWRkRXZlbnRMaXN0ZW5lcigi
bG9hZCIsICgpID0+IHsKICAgICBjb25zdCBpbWFnZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3Io
ImltZyIpOwogICAgIGludGVybmFscy5pbnN0YWxsSW1hZ2VPdmVybGF5KGltYWdlLCBbCiAgICAg
ICAgIHsKLSAgICAgICAgICAgIHRleHQgOiAiaGVsbG8iLAogICAgICAgICAgICAgdG9wTGVmdCA6
IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDApLAogICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcg
RE9NUG9pbnRSZWFkT25seSgxLCAwKSwKICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERP
TVBvaW50UmVhZE9ubHkoMSwgMC41KSwKICAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9N
UG9pbnRSZWFkT25seSgwLCAwLjUpLAorICAgICAgICAgICAgY2hpbGRyZW46IFsKKyAgICAgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHRleHQgOiAiaGVsbG8iLAorICAgICAgICAg
ICAgICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMCksCisgICAgICAg
ICAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMCksCisgICAg
ICAgICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41
KSwKKyAgICAgICAgICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5
KDAsIDAuNSksCisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgXSwKICAgICAgICAgfQog
ICAgIF0pOwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRy
YWN0aW9uL2lvcy9yZXNlbGVjdC13b3JkLWluLWltYWdlLW92ZXJsYXkuaHRtbCBiL0xheW91dFRl
c3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vaW9zL3Jlc2VsZWN0LXdvcmQtaW4taW1h
Z2Utb3ZlcmxheS5odG1sCmluZGV4IDU0NWNlNTU3ZDhkMGFkZGNmZDFmOTdhMDk0ZDcxMzkzMGFm
ZDM0ZjkuLjQ4NTAyY2Y0NTU2Zjg2MjY1M2ZmZWFmNmE3N2JmYTJlMDAxNzQwNDAgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vaW9zL3Jlc2VsZWN0
LXdvcmQtaW4taW1hZ2Utb3ZlcmxheS5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2Vz
L2ltYWdlLWV4dHJhY3Rpb24vaW9zL3Jlc2VsZWN0LXdvcmQtaW4taW1hZ2Utb3ZlcmxheS5odG1s
CkBAIC0xOSwxMSArMTksMTkgQEAgYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIGFzeW5jICgpID0+
IHsKICAgICBsZXQgaW1hZ2UgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJpbWciKTsKICAgICBp
bnRlcm5hbHMuaW5zdGFsbEltYWdlT3ZlcmxheShpbWFnZSwgWwogICAgICAgICB7Ci0gICAgICAg
ICAgICB0ZXh0IDogImZvbyIsCiAgICAgICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVh
ZE9ubHkoMCwgMCksCiAgICAgICAgICAgICB0b3BSaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5
KDEsIDApLAogICAgICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgx
LCAwLjUpLAogICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAs
IDAuNSksCisgICAgICAgICAgICBjaGlsZHJlbjogWworICAgICAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICAgICAgdGV4dCA6ICJmb28iLAorICAgICAgICAgICAgICAgICAgICB0b3BMZWZ0
IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMCksCisgICAgICAgICAgICAgICAgICAgIHRvcFJp
Z2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMCksCisgICAgICAgICAgICAgICAgICAgIGJv
dHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwKKyAgICAgICAgICAgICAg
ICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDAuNSksCisgICAgICAg
ICAgICAgICAgfQorICAgICAgICAgICAgXSwKICAgICAgICAgfQogICAgIF0pOwogICAgIGF3YWl0
IFVJSGVscGVyLmxvbmdQcmVzc0F0UG9pbnQoMjAwLCAxMDApOwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9pb3Mvc2VsZWN0LXdvcmQtaW4taW1h
Z2Utb3ZlcmxheS1pbnNpZGUtbGluay5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1h
Z2UtZXh0cmFjdGlvbi9pb3Mvc2VsZWN0LXdvcmQtaW4taW1hZ2Utb3ZlcmxheS1pbnNpZGUtbGlu
ay5odG1sCmluZGV4IDRjNWFmOTQ4MjQwODAzZDk2ZWU0YTFmYjI3NzE5MTU4NzFkYjE0MjEuLmY4
ZjQ2YzlkNTk0Mjg2NWZlNjA4OGM1ZDU3NzllZjQyM2IxNmRmMDAgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vaW9zL3NlbGVjdC13b3JkLWluLWlt
YWdlLW92ZXJsYXktaW5zaWRlLWxpbmsuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2ltYWdl
cy9pbWFnZS1leHRyYWN0aW9uL2lvcy9zZWxlY3Qtd29yZC1pbi1pbWFnZS1vdmVybGF5LWluc2lk
ZS1saW5rLmh0bWwKQEAgLTI1LDExICsyNSwxOSBAQCBhZGRFdmVudExpc3RlbmVyKCJsb2FkIiwg
YXN5bmMgKCkgPT4gewogICAgIGxldCBpbWFnZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImlt
ZyIpOwogICAgIGludGVybmFscy5pbnN0YWxsSW1hZ2VPdmVybGF5KGltYWdlLCBbCiAgICAgICAg
IHsKLSAgICAgICAgICAgIHRleHQgOiAiaGVsbG8iLAogICAgICAgICAgICAgdG9wTGVmdCA6IG5l
dyBET01Qb2ludFJlYWRPbmx5KDAsIDApLAogICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9N
UG9pbnRSZWFkT25seSgxLCAwKSwKICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBv
aW50UmVhZE9ubHkoMSwgMC4yNSksCiAgICAgICAgICAgICBib3R0b21MZWZ0IDogbmV3IERPTVBv
aW50UmVhZE9ubHkoMCwgMC4yNSksCisgICAgICAgICAgICBjaGlsZHJlbjogWworICAgICAgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdGV4dCA6ICJoZWxsbyIsCisgICAgICAgICAg
ICAgICAgICAgIHRvcExlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwKSwKKyAgICAgICAg
ICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwKSwKKyAgICAg
ICAgICAgICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwLjI1
KSwKKyAgICAgICAgICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5
KDAsIDAuMjUpLAorICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIF0sCiAgICAgICAgIH0K
ICAgICBdKTsKICAgICBhd2FpdCBVSUhlbHBlci5sb25nUHJlc3NBdFBvaW50KDIwMCwgNTApOwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9pb3Mv
c2VsZWN0LXdvcmQtaW4taW1hZ2Utb3ZlcmxheS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFn
ZXMvaW1hZ2UtZXh0cmFjdGlvbi9pb3Mvc2VsZWN0LXdvcmQtaW4taW1hZ2Utb3ZlcmxheS5odG1s
CmluZGV4IDcwODk0ZjU3ZTY5OTBiZDQ0MmMwMWJhZjEyOWZjMTI4ZTE4N2NhNDQuLmMxNjIzN2Nj
ODVkMTI0ZWQ2MTE2MmNhNzkzODQ5OWI1MzU0YzljZjYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vaW9zL3NlbGVjdC13b3JkLWluLWltYWdlLW92
ZXJsYXkuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9u
L2lvcy9zZWxlY3Qtd29yZC1pbi1pbWFnZS1vdmVybGF5Lmh0bWwKQEAgLTE5LDIwICsxOSwzNyBA
QCBhZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgYXN5bmMgKCkgPT4gewogICAgIGxldCBpbWFnZSA9
IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImltZyIpOwogICAgIGludGVybmFscy5pbnN0YWxsSW1h
Z2VPdmVybGF5KGltYWdlLCBbCiAgICAgICAgIHsKLSAgICAgICAgICAgIHRleHQgOiAiaGVsbG8i
LAogICAgICAgICAgICAgdG9wTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDApLAogICAg
ICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwKSwKICAgICAgICAg
ICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwKICAgICAgICAg
ICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwLjUpLAorICAgICAgICAg
ICAgY2hpbGRyZW46IFsKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHRl
eHQgOiAiaGVsbG8iLAorICAgICAgICAgICAgICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50
UmVhZE9ubHkoMCwgMCksCisgICAgICAgICAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBv
aW50UmVhZE9ubHkoMSwgMCksCisgICAgICAgICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3
IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwKKyAgICAgICAgICAgICAgICAgICAgYm90dG9tTGVm
dCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDAuNSksCisgICAgICAgICAgICAgICAgfQorICAg
ICAgICAgICAgXSwKICAgICAgICAgfSwKICAgICAgICAgewotICAgICAgICAgICAgdGV4dCA6ICJ3
b3JsZCIsCiAgICAgICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMC41
KSwKICAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwK
ICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMSksCiAg
ICAgICAgICAgICBib3R0b21MZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMSksCi0gICAg
ICAgIH0sCisgICAgICAgICAgICBjaGlsZHJlbjogWworICAgICAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICAgICAgdGV4dCA6ICJ3b3JsZCIsCisgICAgICAgICAgICAgICAgICAgIHRvcExl
ZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwLjUpLAorICAgICAgICAgICAgICAgICAgICB0
b3BSaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDAuNSksCisgICAgICAgICAgICAgICAg
ICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMSksCisgICAgICAgICAg
ICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAxKSwKKyAgICAg
ICAgICAgICAgICB9CisgICAgICAgICAgICBdLAorICAgICAgICB9CiAgICAgXSk7CisKICAgICBh
d2FpdCBVSUhlbHBlci5sb25nUHJlc3NBdFBvaW50KDIwMCwgMzAwKTsKICAgICBzZWxlY3Rpb25S
ZWN0cyA9IGF3YWl0IFVJSGVscGVyLndhaXRGb3JTZWxlY3Rpb25Ub0FwcGVhcigpOwogICAgIHNo
b3VsZEJlKCJzZWxlY3Rpb25SZWN0cy5sZW5ndGgiLCAiMSIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9pb3Mvc2VsZWN0aW9uLXJlY3RzLWlu
LWltYWdlLW92ZXJsYXkuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJh
Y3Rpb24vaW9zL3NlbGVjdGlvbi1yZWN0cy1pbi1pbWFnZS1vdmVybGF5Lmh0bWwKaW5kZXggZmE5
MDc5ZjRkZWFkNmM4OGIzN2ZkNTIzODE3ZDAxZjM3ZDk3MGJjYi4uYzQ3YjUzNGZmMGQzZGZiNTkz
ZmIwZTA5ZDcyNTI4NGUwMmUyZDQyZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9pbWFn
ZXMvaW1hZ2UtZXh0cmFjdGlvbi9pb3Mvc2VsZWN0aW9uLXJlY3RzLWluLWltYWdlLW92ZXJsYXku
aHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2lvcy9z
ZWxlY3Rpb24tcmVjdHMtaW4taW1hZ2Utb3ZlcmxheS5odG1sCkBAIC0yMCwzMiArMjAsNjQgQEAg
YWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIGFzeW5jICgpID0+IHsKICAgICBsZXQgaW1hZ2UgPSBk
b2N1bWVudC5xdWVyeVNlbGVjdG9yKCJpbWciKTsKICAgICBpbnRlcm5hbHMuaW5zdGFsbEltYWdl
T3ZlcmxheShpbWFnZSwgWwogICAgICAgICB7Ci0gICAgICAgICAgICB0ZXh0OiAib25lIiwKLSAg
ICAgICAgICAgIHRvcExlZnQ6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuMSwgMC4yNSksCi0gICAg
ICAgICAgICB0b3BSaWdodDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC4yNSwgMC4xKSwKLSAgICAg
ICAgICAgIGJvdHRvbVJpZ2h0OiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjM1LCAwLjIpLAotICAg
ICAgICAgICAgYm90dG9tTGVmdDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC4yLCAwLjM1KQorICAg
ICAgICAgICAgdG9wTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuMSwgMC4yNSksCisgICAg
ICAgICAgICB0b3BSaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuMjUsIDAuMSksCisgICAg
ICAgICAgICBib3R0b21SaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuMzUsIDAuMiksCisg
ICAgICAgICAgICBib3R0b21MZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC4yLCAwLjM1KSwK
KyAgICAgICAgICAgIGNoaWxkcmVuOiBbCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgICAgICB0ZXh0IDogIm9uZSIsCisgICAgICAgICAgICAgICAgICAgIHRvcExlZnQgOiBuZXcg
RE9NUG9pbnRSZWFkT25seSgwLjEsIDAuMjUpLAorICAgICAgICAgICAgICAgICAgICB0b3BSaWdo
dCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuMjUsIDAuMSksCisgICAgICAgICAgICAgICAgICAg
IGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC4zNSwgMC4yKSwKKyAgICAgICAg
ICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuMiwgMC4zNSks
CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgXSwKICAgICAgICAgfSwKICAgICAgICAg
ewotICAgICAgICAgICAgdGV4dDogInR3byIsCi0gICAgICAgICAgICB0b3BMZWZ0OiBuZXcgRE9N
UG9pbnRSZWFkT25seSgwLjMsIDAuNDUpLAotICAgICAgICAgICAgdG9wUmlnaHQ6IG5ldyBET01Q
b2ludFJlYWRPbmx5KDAuNDUsIDAuMyksCi0gICAgICAgICAgICBib3R0b21SaWdodDogbmV3IERP
TVBvaW50UmVhZE9ubHkoMC41NSwgMC40KSwKLSAgICAgICAgICAgIGJvdHRvbUxlZnQ6IG5ldyBE
T01Qb2ludFJlYWRPbmx5KDAuNCwgMC41NSkKKyAgICAgICAgICAgIHRvcExlZnQgOiBuZXcgRE9N
UG9pbnRSZWFkT25seSgwLjMsIDAuNDUpLAorICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9N
UG9pbnRSZWFkT25seSgwLjQ1LCAwLjMpLAorICAgICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcg
RE9NUG9pbnRSZWFkT25seSgwLjU1LCAwLjQpLAorICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5l
dyBET01Qb2ludFJlYWRPbmx5KDAuNCwgMC41NSksCisgICAgICAgICAgICBjaGlsZHJlbjogWwor
ICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdGV4dCA6ICJ0d28iLAorICAg
ICAgICAgICAgICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC4zLCAwLjQ1
KSwKKyAgICAgICAgICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgw
LjQ1LCAwLjMpLAorICAgICAgICAgICAgICAgICAgICBib3R0b21SaWdodCA6IG5ldyBET01Qb2lu
dFJlYWRPbmx5KDAuNTUsIDAuNCksCisgICAgICAgICAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBu
ZXcgRE9NUG9pbnRSZWFkT25seSgwLjQsIDAuNTUpLAorICAgICAgICAgICAgICAgIH0KKyAgICAg
ICAgICAgIF0sCiAgICAgICAgIH0sCiAgICAgICAgIHsKLSAgICAgICAgICAgIHRleHQ6ICJ0aHJl
ZSIsCi0gICAgICAgICAgICB0b3BMZWZ0OiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjUsIDAuNjUp
LAotICAgICAgICAgICAgdG9wUmlnaHQ6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuNjUsIDAuNSks
Ci0gICAgICAgICAgICBib3R0b21SaWdodDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC43NSwgMC42
KSwKLSAgICAgICAgICAgIGJvdHRvbUxlZnQ6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuNiwgMC43
NSkKKyAgICAgICAgICAgIHRvcExlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjUsIDAuNjUp
LAorICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjY1LCAwLjUp
LAorICAgICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjc1LCAw
LjYpLAorICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuNiwg
MC43NSksCisgICAgICAgICAgICBjaGlsZHJlbjogWworICAgICAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICAgICAgdGV4dCA6ICJ0aHJlZSIsCisgICAgICAgICAgICAgICAgICAgIHRvcExl
ZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjUsIDAuNjUpLAorICAgICAgICAgICAgICAgICAg
ICB0b3BSaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuNjUsIDAuNSksCisgICAgICAgICAg
ICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC43NSwgMC42KSwK
KyAgICAgICAgICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAu
NiwgMC43NSksCisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgXSwKICAgICAgICAgfSwK
ICAgICAgICAgewotICAgICAgICAgICAgdGV4dDogImZvdXIiLAotICAgICAgICAgICAgdG9wTGVm
dDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC43LCAwLjg1KSwKLSAgICAgICAgICAgIHRvcFJpZ2h0
OiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjg1LCAwLjcpLAotICAgICAgICAgICAgYm90dG9tUmln
aHQ6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuOTUsIDAuOCksCi0gICAgICAgICAgICBib3R0b21M
ZWZ0OiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjgsIDAuOTUpCisgICAgICAgICAgICB0b3BMZWZ0
IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC43LCAwLjg1KSwKKyAgICAgICAgICAgIHRvcFJpZ2h0
IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC44NSwgMC43KSwKKyAgICAgICAgICAgIGJvdHRvbVJp
Z2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMC45NSwgMC44KSwKKyAgICAgICAgICAgIGJvdHRv
bUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLjgsIDAuOTUpLAorICAgICAgICAgICAgY2hp
bGRyZW46IFsKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHRleHQgOiAi
Zm91ciIsCisgICAgICAgICAgICAgICAgICAgIHRvcExlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25s
eSgwLjcsIDAuODUpLAorICAgICAgICAgICAgICAgICAgICB0b3BSaWdodCA6IG5ldyBET01Qb2lu
dFJlYWRPbmx5KDAuODUsIDAuNyksCisgICAgICAgICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDog
bmV3IERPTVBvaW50UmVhZE9ubHkoMC45NSwgMC44KSwKKyAgICAgICAgICAgICAgICAgICAgYm90
dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAuOCwgMC45NSksCisgICAgICAgICAgICAg
ICAgfQorICAgICAgICAgICAgXSwKICAgICAgICAgfQogICAgIF0pOwogCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL21hYy9jb3B5LWltYWdlLW92
ZXJsYXktdGV4dC13aXRoLWNvbnRleHQtbWVudS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFn
ZXMvaW1hZ2UtZXh0cmFjdGlvbi9tYWMvY29weS1pbWFnZS1vdmVybGF5LXRleHQtd2l0aC1jb250
ZXh0LW1lbnUuaHRtbAppbmRleCA0MDUyOWVjNDU4ZjE1NDA4MjBjZjM2YzVlY2QwOTRiZTU2NjI2
MzNiLi40YjFmZDgxZTIzYTFlMjNjZGYzMTAyZWUzODc5OGMxMzIzZjM0OGQyIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL21hYy9jb3B5LWltYWdl
LW92ZXJsYXktdGV4dC13aXRoLWNvbnRleHQtbWVudS5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vbWFjL2NvcHktaW1hZ2Utb3ZlcmxheS10ZXh0LXdp
dGgtY29udGV4dC1tZW51Lmh0bWwKQEAgLTIwLDEzICsyMCwyMyBAQCBkaXZbY29udGVudGVkaXRh
YmxlXSB7CiA8c2NyaXB0PgogYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsICgpID0+IHsKICAgICBs
ZXQgaW1hZ2UgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJpbWciKTsKLSAgICBpbnRlcm5hbHMu
aW5zdGFsbEltYWdlT3ZlcmxheShpbWFnZSwgW3sKLSAgICAgICAgdGV4dCA6ICJmb29iYXIiLAot
ICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMCksCi0gICAgICAgIHRv
cFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMCksCi0gICAgICAgIGJvdHRvbVJpZ2h0
IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwKLSAgICAgICAgYm90dG9tTGVmdCA6IG5l
dyBET01Qb2ludFJlYWRPbmx5KDAsIDAuNSksCi0gICAgfV0pOworICAgIGludGVybmFscy5pbnN0
YWxsSW1hZ2VPdmVybGF5KGltYWdlLCBbCisgICAgICAgIHsKKyAgICAgICAgICAgIHRvcExlZnQg
OiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwKSwKKyAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3
IERPTVBvaW50UmVhZE9ubHkoMSwgMCksCisgICAgICAgICAgICBib3R0b21SaWdodCA6IG5ldyBE
T01Qb2ludFJlYWRPbmx5KDEsIDAuNSksCisgICAgICAgICAgICBib3R0b21MZWZ0IDogbmV3IERP
TVBvaW50UmVhZE9ubHkoMCwgMC41KSwKKyAgICAgICAgICAgIGNoaWxkcmVuOiBbCisgICAgICAg
ICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICB0ZXh0IDogImZvb2JhciIsCisgICAgICAg
ICAgICAgICAgICAgIHRvcExlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwKSwKKyAgICAg
ICAgICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwKSwKKyAg
ICAgICAgICAgICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAw
LjUpLAorICAgICAgICAgICAgICAgICAgICBib3R0b21MZWZ0IDogbmV3IERPTVBvaW50UmVhZE9u
bHkoMCwgMC41KSwKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICBdCisgICAgICAgIH0K
KyAgICBdKTsKIAogICAgIGV2ZW50U2VuZGVyLm1vdXNlTW92ZVRvKDUwLCAxNTApOwogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL21hYy9zZWxl
Y3QtaW1hZ2Utb3ZlcmxheS1pbi1saW5rLXdpdGgtbW91c2UtZHJhZy5odG1sIGIvTGF5b3V0VGVz
dHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9tYWMvc2VsZWN0LWltYWdlLW92ZXJsYXkt
aW4tbGluay13aXRoLW1vdXNlLWRyYWcuaHRtbAppbmRleCBkODc3MjRhYTg2Y2FlMDA5NWZkN2Vi
MjU1MzUzNTA5NGFmNDk1YjU0Li45YTRlZGM4OTA0YWExN2I4ODc4NWIyNzg3YzQ0YTczOTE3MTcz
Njc2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9u
L21hYy9zZWxlY3QtaW1hZ2Utb3ZlcmxheS1pbi1saW5rLXdpdGgtbW91c2UtZHJhZy5odG1sCisr
KyBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vbWFjL3NlbGVjdC1p
bWFnZS1vdmVybGF5LWluLWxpbmstd2l0aC1tb3VzZS1kcmFnLmh0bWwKQEAgLTE3LDEzICsxNywy
MyBAQCBpbWcgewogPHNjcmlwdD4KIGFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCAoKSA9PiB7CiAg
ICAgbGV0IGltYWdlID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaW1nIik7Ci0gICAgaW50ZXJu
YWxzLmluc3RhbGxJbWFnZU92ZXJsYXkoaW1hZ2UsIFt7Ci0gICAgICAgIHRleHQgOiAiaGVsbG8i
LAotICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMC41KSwKLSAgICAg
ICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwLjUpLAotICAgICAgICBib3R0
b21SaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDEpLAotICAgICAgICBib3R0b21MZWZ0
IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMSksCi0gICAgfV0pOworICAgIGludGVybmFscy5p
bnN0YWxsSW1hZ2VPdmVybGF5KGltYWdlLCBbCisgICAgICAgIHsKKyAgICAgICAgICAgIHRvcExl
ZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwLjUpLAorICAgICAgICAgICAgdG9wUmlnaHQg
OiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwLjUpLAorICAgICAgICAgICAgYm90dG9tUmlnaHQg
OiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAxKSwKKyAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBu
ZXcgRE9NUG9pbnRSZWFkT25seSgwLCAxKSwKKyAgICAgICAgICAgIGNoaWxkcmVuOiBbCisgICAg
ICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICB0ZXh0IDogImhlbGxvIiwKKyAgICAg
ICAgICAgICAgICAgICAgdG9wTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDAuNSksCisg
ICAgICAgICAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41
KSwKKyAgICAgICAgICAgICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25s
eSgxLCAxKSwKKyAgICAgICAgICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJl
YWRPbmx5KDAsIDEpLAorICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIF0KKyAgICAgICAg
fQorICAgIF0pOwogCiAgICAgaW1hZ2UuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCBldmVudCA9
PiB7CiAgICAgICAgIHRlc3RGYWlsZWQoIk9ic2VydmVkIGNsaWNrLiIpOwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9tYWMvc2VsZWN0LWltYWdl
LW92ZXJsYXktd2l0aC1tb3VzZS1kcmFnLWRvZXMtbm90LWZpcmUtY2xpY2suaHRtbCBiL0xheW91
dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vbWFjL3NlbGVjdC1pbWFnZS1vdmVy
bGF5LXdpdGgtbW91c2UtZHJhZy1kb2VzLW5vdC1maXJlLWNsaWNrLmh0bWwKaW5kZXggY2MyYTgy
OWU0ZDU5MzQ4ZGZjOTU1YjY1ZDE0MTc3MGRkZTcxODgxMi4uYTE4NzNjOTgxOTIzMjNjMzExMDMy
MGNiZDNlZWJlOGYwZjMyYmEyMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMv
aW1hZ2UtZXh0cmFjdGlvbi9tYWMvc2VsZWN0LWltYWdlLW92ZXJsYXktd2l0aC1tb3VzZS1kcmFn
LWRvZXMtbm90LWZpcmUtY2xpY2suaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9p
bWFnZS1leHRyYWN0aW9uL21hYy9zZWxlY3QtaW1hZ2Utb3ZlcmxheS13aXRoLW1vdXNlLWRyYWct
ZG9lcy1ub3QtZmlyZS1jbGljay5odG1sCkBAIC0xNSwxMyArMTUsMjMgQEAgaW1nIHsKIDxzY3Jp
cHQ+CiBhZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgKCkgPT4gewogICAgIGxldCBpbWFnZSA9IGRv
Y3VtZW50LnF1ZXJ5U2VsZWN0b3IoImltZyIpOwotICAgIGludGVybmFscy5pbnN0YWxsSW1hZ2VP
dmVybGF5KGltYWdlLCBbewotICAgICAgICB0ZXh0IDogImhlbGxvIiwKLSAgICAgICAgdG9wTGVm
dCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDAuNSksCi0gICAgICAgIHRvcFJpZ2h0IDogbmV3
IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwKLSAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9N
UG9pbnRSZWFkT25seSgxLCAxKSwKLSAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJl
YWRPbmx5KDAsIDEpLAotICAgIH1dKTsKKyAgICBpbnRlcm5hbHMuaW5zdGFsbEltYWdlT3Zlcmxh
eShpbWFnZSwgWworICAgICAgICB7CisgICAgICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50
UmVhZE9ubHkoMCwgMC41KSwKKyAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBvaW50UmVh
ZE9ubHkoMSwgMC41KSwKKyAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVh
ZE9ubHkoMSwgMSksCisgICAgICAgICAgICBib3R0b21MZWZ0IDogbmV3IERPTVBvaW50UmVhZE9u
bHkoMCwgMSksCisgICAgICAgICAgICBjaGlsZHJlbjogWworICAgICAgICAgICAgICAgIHsKKyAg
ICAgICAgICAgICAgICAgICAgdGV4dCA6ICJoZWxsbyIsCisgICAgICAgICAgICAgICAgICAgIHRv
cExlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwLjUpLAorICAgICAgICAgICAgICAgICAg
ICB0b3BSaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDAuNSksCisgICAgICAgICAgICAg
ICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMSksCisgICAgICAg
ICAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAxKSwKKyAg
ICAgICAgICAgICAgICB9CisgICAgICAgICAgICBdCisgICAgICAgIH0KKyAgICBdKTsKIAogICAg
IGltYWdlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgZXZlbnQgPT4gewogICAgICAgICB0ZXN0
RmFpbGVkKCJPYnNlcnZlZCBjbGljay4iKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
aW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vbWFjL3NlbGVjdC1pbWFnZS1vdmVybGF5LXdpdGgtbW91
c2UtZHJhZy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9t
YWMvc2VsZWN0LWltYWdlLW92ZXJsYXktd2l0aC1tb3VzZS1kcmFnLmh0bWwKaW5kZXggMTJiMzYw
YTk4YjlkYTVkNzViZWRlZmY1ZDIzMjVhYzM2OTBkYTYxMy4uMjU0YzM2MDZhZDQ5Y2FiNDY1NGY4
OGFlOWVmMTRhODNhMmE5ZWZiNyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMv
aW1hZ2UtZXh0cmFjdGlvbi9tYWMvc2VsZWN0LWltYWdlLW92ZXJsYXktd2l0aC1tb3VzZS1kcmFn
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9tYWMv
c2VsZWN0LWltYWdlLW92ZXJsYXktd2l0aC1tb3VzZS1kcmFnLmh0bWwKQEAgLTE0LDEzICsxNCwy
MyBAQCBpbWcgewogPHNjcmlwdD4KIGFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCAoKSA9PiB7CiAg
ICAgbGV0IGltYWdlID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaW1nIik7Ci0gICAgaW50ZXJu
YWxzLmluc3RhbGxJbWFnZU92ZXJsYXkoaW1hZ2UsIFt7Ci0gICAgICAgIHRleHQgOiAiaGVsbG8i
LAotICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMC41KSwKLSAgICAg
ICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwLjUpLAotICAgICAgICBib3R0
b21SaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDEpLAotICAgICAgICBib3R0b21MZWZ0
IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMSksCi0gICAgfV0pOworICAgIGludGVybmFscy5p
bnN0YWxsSW1hZ2VPdmVybGF5KGltYWdlLCBbCisgICAgICAgIHsKKyAgICAgICAgICAgIHRvcExl
ZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwLjUpLAorICAgICAgICAgICAgdG9wUmlnaHQg
OiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwLjUpLAorICAgICAgICAgICAgYm90dG9tUmlnaHQg
OiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAxKSwKKyAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBu
ZXcgRE9NUG9pbnRSZWFkT25seSgwLCAxKSwKKyAgICAgICAgICAgIGNoaWxkcmVuOiBbCisgICAg
ICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICB0ZXh0IDogImhlbGxvIiwKKyAgICAg
ICAgICAgICAgICAgICAgdG9wTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDAuNSksCisg
ICAgICAgICAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41
KSwKKyAgICAgICAgICAgICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25s
eSgxLCAxKSwKKyAgICAgICAgICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJl
YWRPbmx5KDAsIDEpLAorICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIF0KKyAgICAgICAg
fQorICAgIF0pOwogCiAgICAgZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8oNTAsIDMwMCk7CiAgICAg
ZXZlbnRTZW5kZXIubW91c2VEb3duKCk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2lt
YWdlcy9pbWFnZS1leHRyYWN0aW9uL21hYy9zZWxlY3Qtd29yZC1pbi1kcmFnZ2FibGUtaW1hZ2Ut
b3ZlcmxheS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9t
YWMvc2VsZWN0LXdvcmQtaW4tZHJhZ2dhYmxlLWltYWdlLW92ZXJsYXkuaHRtbAppbmRleCA4MzAz
MjM4NzNkZTcwZjQ3MmRkNThjMmY1MmEyOWVjYTg1YzNhMWMzLi43ZTNhMDExZDM4YzQxNWYxYzI3
YzU3ZmIzNzQ0MTFkNTc4MWI2ZDRlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdl
cy9pbWFnZS1leHRyYWN0aW9uL21hYy9zZWxlY3Qtd29yZC1pbi1kcmFnZ2FibGUtaW1hZ2Utb3Zl
cmxheS5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24v
bWFjL3NlbGVjdC13b3JkLWluLWRyYWdnYWJsZS1pbWFnZS1vdmVybGF5Lmh0bWwKQEAgLTE2LDEx
ICsxNiwxOSBAQCBhZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgKCkgPT4gewogICAgIGNvbnN0IGlt
YWdlID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaW1nIik7CiAgICAgaW50ZXJuYWxzLmluc3Rh
bGxJbWFnZU92ZXJsYXkoaW1hZ2UsIFsKICAgICAgICAgewotICAgICAgICAgICAgdGV4dCA6ICJo
ZWxsbyIsCiAgICAgICAgICAgICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMCks
CiAgICAgICAgICAgICB0b3BSaWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDApLAogICAg
ICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwLjUpLAogICAg
ICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDAuNSksCisgICAg
ICAgICAgICBjaGlsZHJlbjogWworICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAg
ICAgdGV4dCA6ICJoZWxsbyIsCisgICAgICAgICAgICAgICAgICAgIHRvcExlZnQgOiBuZXcgRE9N
UG9pbnRSZWFkT25seSgwLCAwKSwKKyAgICAgICAgICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcg
RE9NUG9pbnRSZWFkT25seSgxLCAwKSwKKyAgICAgICAgICAgICAgICAgICAgYm90dG9tUmlnaHQg
OiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwLjUpLAorICAgICAgICAgICAgICAgICAgICBib3R0
b21MZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMC41KSwKKyAgICAgICAgICAgICAgICB9
CisgICAgICAgICAgICBdCiAgICAgICAgIH0KICAgICBdKTsKIApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9tYWMvc2VsZWN0LXdvcmQtaW4tdHJh
bnNwYXJlbnQtaW1hZ2Utb3ZlcmxheS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1h
Z2UtZXh0cmFjdGlvbi9tYWMvc2VsZWN0LXdvcmQtaW4tdHJhbnNwYXJlbnQtaW1hZ2Utb3Zlcmxh
eS5odG1sCmluZGV4IDhmMmQ5MmYyMTFmZTkwNzhmODFhMTgzYTFiMDU3OGFlMTRkMjAyOTkuLjEy
MTBkMmQ5N2NmMGI3ODlhYTQ3NmFlNDQzMmYwMzg0OWFhMzE3Y2QgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vbWFjL3NlbGVjdC13b3JkLWluLXRy
YW5zcGFyZW50LWltYWdlLW92ZXJsYXkuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2ltYWdl
cy9pbWFnZS1leHRyYWN0aW9uL21hYy9zZWxlY3Qtd29yZC1pbi10cmFuc3BhcmVudC1pbWFnZS1v
dmVybGF5Lmh0bWwKQEAgLTMyLDExICszMiwxOSBAQCBhZGRFdmVudExpc3RlbmVyKCJsb2FkIiwg
KCkgPT4gewogICAgIGxldCBpbWFnZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImltZyIpOwog
ICAgIGludGVybmFscy5pbnN0YWxsSW1hZ2VPdmVybGF5KGltYWdlLCBbCiAgICAgICAgIHsKLSAg
ICAgICAgICAgIHRleHQgOiAiaGVsbG8iLAogICAgICAgICAgICAgdG9wTGVmdCA6IG5ldyBET01Q
b2ludFJlYWRPbmx5KDAsIDApLAogICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRS
ZWFkT25seSgxLCAwKSwKICAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVh
ZE9ubHkoMSwgMC41KSwKICAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9pbnRSZWFk
T25seSgwLCAwLjUpLAorICAgICAgICAgICAgY2hpbGRyZW46IFsKKyAgICAgICAgICAgICAgICB7
CisgICAgICAgICAgICAgICAgICAgIHRleHQgOiAiaGVsbG8iLAorICAgICAgICAgICAgICAgICAg
ICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMCksCisgICAgICAgICAgICAgICAg
ICAgIHRvcFJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMCksCisgICAgICAgICAgICAg
ICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC41KSwKKyAgICAg
ICAgICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDAuNSks
CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgXQogICAgICAgICB9CiAgICAgXSk7CiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>