<?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>168178</bug_id>
          
          <creation_ts>2017-02-11 14:32:31 -0800</creation_ts>
          <short_desc>[INTL] Change Intl prototypes to plain objects</short_desc>
          <delta_ts>2017-04-13 16:51:46 -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>JavaScriptCore</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>All</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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Andy VanWagoner">andy</reporter>
          <assigned_to name="Andy VanWagoner">andy</assigned_to>
          <cc>benjamin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ggaren</cc>
    
    <cc>jfbastien</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>sukolsak</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1275857</commentid>
    <comment_count>0</comment_count>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2017-02-11 14:32:31 -0800</bug_when>
    <thetext>Change Intl prototypes to plain objects</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1275859</commentid>
    <comment_count>1</comment_count>
      <attachid>301274</attachid>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2017-02-11 14:39:32 -0800</bug_when>
    <thetext>Created attachment 301274
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1275861</commentid>
    <comment_count>2</comment_count>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2017-02-11 14:40:41 -0800</bug_when>
    <thetext>https://github.com/tc39/ecma402/issues/122</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1278628</commentid>
    <comment_count>3</comment_count>
      <attachid>301274</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2017-02-18 04:25:59 -0800</bug_when>
    <thetext>Comment on attachment 301274
Patch

Attachment 301274 did not pass jsc-ews (mac):
Output: http://webkit-queues.webkit.org/results/3148910

New failing tests:
cdjs-tests.yaml/main.js.ftl-no-cjit
cdjs-tests.yaml/main.js.ftl-eager-no-cjit</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1278629</commentid>
    <comment_count>4</comment_count>
      <attachid>301274</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2017-02-18 07:56:43 -0800</bug_when>
    <thetext>Comment on attachment 301274
Patch

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

r=me

&gt; Source/JavaScriptCore/ChangeLog:6
&gt; +        Reviewed by NOBODY (OOPS!).

Could you add tests to ensure that the prototypes become plain objects correctly?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1278654</commentid>
    <comment_count>5</comment_count>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2017-02-18 13:32:08 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; Comment on attachment 301274 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=301274&amp;action=review
&gt; 
&gt; r=me
&gt; 
&gt; &gt; Source/JavaScriptCore/ChangeLog:6
&gt; &gt; +        Reviewed by NOBODY (OOPS!).
&gt; 
&gt; Could you add tests to ensure that the prototypes become plain objects
&gt; correctly?

Do you have any suggestions on how to do this? The following are true before this change.

shouldBe(&quot;Object.getPrototypeOf(Intl.Collator.prototype)&quot;, &quot;Object.prototype&quot;);
shouldBe(&quot;Object.prototype.toString.call(Intl.Collator.prototype)&quot;, &quot;&apos;[object Object]&apos;&quot;);

There are already tests in this patch that throw when trying to use the prototype object with compare, format, and resolvedOptions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1278655</commentid>
    <comment_count>6</comment_count>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2017-02-18 13:37:28 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; Comment on attachment 301274 [details]
&gt; Patch
&gt; 
&gt; Attachment 301274 [details] did not pass jsc-ews (mac):
&gt; Output: http://webkit-queues.webkit.org/results/3148910
&gt; 
&gt; New failing tests:
&gt; cdjs-tests.yaml/main.js.ftl-no-cjit
&gt; cdjs-tests.yaml/main.js.ftl-eager-no-cjit

How do I go about finding the specific cause of the performance regression? My gut feeling is the removal of the invalidated optimization in String#localeCompare.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1281086</commentid>
    <comment_count>7</comment_count>
      <attachid>302762</attachid>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2017-02-25 13:00:05 -0800</bug_when>
    <thetext>Created attachment 302762
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1281093</commentid>
    <comment_count>8</comment_count>
      <attachid>302762</attachid>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2017-02-25 15:01:56 -0800</bug_when>
    <thetext>Comment on attachment 302762
Patch

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

&gt; Source/JavaScriptCore/builtins/StringPrototype.js:240
&gt; +    

Normally I&apos;d just have a simple variable, but I&apos;m not confident I can construct a Collator yet, and I&apos;ve only ever seen functions at the top level of a builtins file.

  var defaultCollator = new @Collator();

&gt; LayoutTests/js/script-tests/intl-collator.js:213
&gt; +shouldBe(&quot;Object.prototype.toString.call(Intl.Collator.prototype)&quot;, &quot;&apos;[object Object]&apos;&quot;);

Here&apos;s the check to observe the new behavior. Only the constructor property would have failed before this patch, though.

&gt; LayoutTests/js/script-tests/intl-collator.js:235
&gt; +shouldThrow(&quot;Intl.Collator.prototype.compare&quot;, &quot;&apos;TypeError: Intl.Collator.prototype.compare called on value that\\&apos;s not an object initialized as a Collator&apos;&quot;);

Here is the real change in behavior. Trying to get the bound compare function, or resolvedOptions on the prototype directly will throw now.

&gt; LayoutTests/js/script-tests/intl-numberformat.js:283
&gt; +shouldBe(&quot;Intl.NumberFormat(&apos;fr&apos;).format(1234.567)&quot;, &quot;&apos;1\\xA0234,567&apos;&quot;);

I changed this to an escaped code because I couldn&apos;t manage to get my text editor to insert the right space character.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1297025</commentid>
    <comment_count>9</comment_count>
      <attachid>302762</attachid>
    <who name="JF Bastien">jfbastien</who>
    <bug_when>2017-04-13 10:31:10 -0700</bug_when>
    <thetext>Comment on attachment 302762
Patch

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

r=me

&gt;&gt; LayoutTests/js/script-tests/intl-numberformat.js:283
&gt;&gt; +shouldBe(&quot;Intl.NumberFormat(&apos;fr&apos;).format(1234.567)&quot;, &quot;&apos;1\\xA0234,567&apos;&quot;);
&gt; 
&gt; I changed this to an escaped code because I couldn&apos;t manage to get my text editor to insert the right space character.

One might say your editor broke the non-breaking spaces.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1297198</commentid>
    <comment_count>10</comment_count>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2017-04-13 16:24:53 -0700</bug_when>
    <thetext>(In reply to JF Bastien from comment #9)
&gt; Comment on attachment 302762 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=302762&amp;action=review
&gt; 
&gt; r=me
&gt; 
&gt; &gt;&gt; LayoutTests/js/script-tests/intl-numberformat.js:283
&gt; &gt;&gt; +shouldBe(&quot;Intl.NumberFormat(&apos;fr&apos;).format(1234.567)&quot;, &quot;&apos;1\\xA0234,567&apos;&quot;);
&gt; &gt; 
&gt; &gt; I changed this to an escaped code because I couldn&apos;t manage to get my text editor to insert the right space character.
&gt; 
&gt; One might say your editor broke the non-breaking spaces.

:)

I&apos;m not a committer, so if this is good to go, can you add the commit-queue+ flag?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1297202</commentid>
    <comment_count>11</comment_count>
      <attachid>302762</attachid>
    <who name="JF Bastien">jfbastien</who>
    <bug_when>2017-04-13 16:27:58 -0700</bug_when>
    <thetext>Comment on attachment 302762
Patch

cq+</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1297210</commentid>
    <comment_count>12</comment_count>
      <attachid>302762</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-04-13 16:51:44 -0700</bug_when>
    <thetext>Comment on attachment 302762
Patch

Clearing flags on attachment: 302762

Committed r215349: &lt;http://trac.webkit.org/changeset/215349&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1297211</commentid>
    <comment_count>13</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-04-13 16:51:46 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>301274</attachid>
            <date>2017-02-11 14:39:32 -0800</date>
            <delta_ts>2017-02-25 13:00:01 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-168178-20170211153702.patch</filename>
            <type>text/plain</type>
            <size>45274</size>
            <attacher name="Andy VanWagoner">andy</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjEyMTk0CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA3
YzRkM2E3MjJjNWZhY2Y0MjNmYTZiMDFhYmMzMzRiODYyMDVhNjU3Li41ZWFmOTFkNDEwMjQ0NTI4
ODQyYTUzM2ZiZjY0M2FkNjQ3Yjk3NWVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyMiBAQAorMjAxNy0wMi0xMSAgQW5keSBWYW5XYWdvbmVyICA8dGhldGFsZWNyYWZ0ZXJA
Z21haWwuY29tPgorCisgICAgICAgIENoYW5nZSBJbnRsIHByb3RvdHlwZXMgdG8gcGxhaW4gb2Jq
ZWN0cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY4
MTc4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBi
dWlsdGlucy9TdHJpbmdQcm90b3R5cGUuanM6CisgICAgICAgIChsb2NhbGVDb21wYXJlKTogUmVt
b3ZlIG9wdGltaXphdGlvbiB0aGF0IGlzIG5vIGxvbmdlciB2YWxpZC4KKyAgICAgICAgKiBydW50
aW1lL0ludGxDb2xsYXRvclByb3RvdHlwZS5jcHA6CisgICAgICAgIChKU0M6OkludGxDb2xsYXRv
clByb3RvdHlwZTo6SW50bENvbGxhdG9yUHJvdG90eXBlKToKKyAgICAgICAgKiBydW50aW1lL0lu
dGxDb2xsYXRvclByb3RvdHlwZS5oOgorICAgICAgICAqIHJ1bnRpbWUvSW50bERhdGVUaW1lRm9y
bWF0UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0UHJvdG90
eXBlOjpJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUpOgorICAgICAgICAqIHJ1bnRpbWUvSW50
bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmg6CisgICAgICAgICogcnVudGltZS9JbnRsTnVtYmVy
Rm9ybWF0UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKEpTQzo6SW50bE51bWJlckZvcm1hdFByb3Rv
dHlwZTo6SW50bE51bWJlckZvcm1hdFByb3RvdHlwZSk6CisgICAgICAgICogcnVudGltZS9JbnRs
TnVtYmVyRm9ybWF0UHJvdG90eXBlLmg6CisKIDIwMTctMDItMTAgIFNhYW0gQmFyYXRpICA8c2Jh
cmF0aUBhcHBsZS5jb20+CiAKICAgICAgICAgT2JqZWN0IGFsbG9jYXRpb24gc2lua2luZyBwaGFz
ZSBkb2Vzbid0IHByb3Blcmx5IGhhbmRsZSBjb250cm9sIGZsb3cgd2hlbiBlbWl0dGluZyBhIFB1
dEhpbnQgb2YgYSBtYXRlcmlhbGl6ZWQgb2JqZWN0IGludG8gYSBQcm9tb3RlZEhlYXBMb2NhdGlv
biBvZiBhIHN0aWxsIHN1bmtlbiBvYmplY3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9idWlsdGlucy9TdHJpbmdQcm90b3R5cGUuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
YnVpbHRpbnMvU3RyaW5nUHJvdG90eXBlLmpzCmluZGV4IGM5Y2RmY2YwMmE3NWFhZTA1YTZjOTBl
ZjIzNTkxZWJlMzk4N2ZmODQuLjJhYzNmYzkxNzMxYjAzNGNiMzkxMzEyMmQ0NDcxOWI4ZGU0MDNj
NjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9idWlsdGlucy9TdHJpbmdQcm90
b3R5cGUuanMKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J1aWx0aW5zL1N0cmluZ1Byb3Rv
dHlwZS5qcwpAQCAtMjUxLDE0ICsyNTEsMTAgQEAgZnVuY3Rpb24gbG9jYWxlQ29tcGFyZSh0aGF0
LyosIGxvY2FsZXMsIG9wdGlvbnMgKi8pCiAgICAgLy8gNS4gUmV0dXJuSWZBYnJ1cHQoVGhhdCku
CiAgICAgdmFyIHRoYXRTdHJpbmcgPSBAdG9TdHJpbmcodGhhdCk7CiAKLSAgICAvLyBBdm9pZCBj
cmVhdGluZyBhIGNvbGxhdG9yIGZvciBkZWZhdWx0cy4KLSAgICB2YXIgbG9jYWxlcyA9IEBhcmd1
bWVudCgxKTsKLSAgICB2YXIgb3B0aW9ucyA9IEBhcmd1bWVudCgyKTsKLSAgICBpZiAobG9jYWxl
cyA9PT0gQHVuZGVmaW5lZCAmJiBvcHRpb25zID09PSBAdW5kZWZpbmVkKQotICAgICAgICByZXR1
cm4gQENvbGxhdG9yLnByb3RvdHlwZS5jb21wYXJlKHRoaXNTdHJpbmcsIHRoYXRTdHJpbmcpOwot
CiAgICAgLy8gNi4gTGV0IGNvbGxhdG9yIGJlIENvbnN0cnVjdCglQ29sbGF0b3IlLCDCq2xvY2Fs
ZXMsIG9wdGlvbnPCuykuCiAgICAgLy8gNy4gUmV0dXJuSWZBYnJ1cHQoY29sbGF0b3IpLgorICAg
IHZhciBsb2NhbGVzID0gQGFyZ3VtZW50KDEpOworICAgIHZhciBvcHRpb25zID0gQGFyZ3VtZW50
KDIpOwogICAgIHZhciBjb2xsYXRvciA9IG5ldyBAQ29sbGF0b3IobG9jYWxlcywgb3B0aW9ucyk7
CiAKICAgICAvLyA4LiBSZXR1cm4gQ29tcGFyZVN0cmluZ3MoY29sbGF0b3IsIFMsIFRoYXQpLgpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bENvbGxhdG9yUHJv
dG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxDb2xsYXRvclBy
b3RvdHlwZS5jcHAKaW5kZXggOTkyNDcyMTEyYTQ3YTI5YThjYmQwOTE3ZWMzZjUzZmRhZGFlZjVj
My4uOThlYTZjNGRmYTIwYzM5ZjQ0ODRhMzcxYmVhNDY4OTQ4ZWRiZTEzYiAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bENvbGxhdG9yUHJvdG90eXBlLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsQ29sbGF0b3JQcm90b3R5cGUu
Y3BwCkBAIC00NSw3ICs0NSw3IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxM
IEludGxDb2xsYXRvclByb3RvdHlwZUZ1bmNSZXNvbHZlZE9wdGlvbnMoRXhlCiAKIG5hbWVzcGFj
ZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSW50bENvbGxhdG9yUHJvdG90eXBlOjpzX2luZm8g
PSB7ICJPYmplY3QiLCAmSW50bENvbGxhdG9yOjpzX2luZm8sICZjb2xsYXRvclByb3RvdHlwZVRh
YmxlLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxDb2xsYXRvclByb3RvdHlwZSkgfTsKK2NvbnN0
IENsYXNzSW5mbyBJbnRsQ29sbGF0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIk9iamVjdCIsICZC
YXNlOjpzX2luZm8sICZjb2xsYXRvclByb3RvdHlwZVRhYmxlLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEludGxDb2xsYXRvclByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBJbnRsQ29sbGF0b3JQ
cm90b3R5cGUubHV0LmgKIEBiZWdpbiBjb2xsYXRvclByb3RvdHlwZVRhYmxlCkBAIC02Nyw3ICs2
Nyw3IEBAIFN0cnVjdHVyZSogSW50bENvbGxhdG9yUHJvdG90eXBlOjpjcmVhdGVTdHJ1Y3R1cmUo
Vk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsCiB9CiAKIEludGxDb2xsYXRvclByb3RvdHlw
ZTo6SW50bENvbGxhdG9yUHJvdG90eXBlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCi0g
ICAgOiBJbnRsQ29sbGF0b3Iodm0sIHN0cnVjdHVyZSkKKyAgICA6IEJhc2Uodm0sIHN0cnVjdHVy
ZSkKIHsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50
bENvbGxhdG9yUHJvdG90eXBlLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
Q29sbGF0b3JQcm90b3R5cGUuaAppbmRleCA4MzMyZTEzZTI5ZDVmZmQzMmYyODczODFiNmUwZDQy
MzUxMmJhNDFmLi4xYmQyMWFhYjNlY2IwNjNjNzFjOGEwNWYyYTBlODU0MjZhODc5ODA2IDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsQ29sbGF0b3JQcm90b3R5
cGUuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsQ29sbGF0b3JQcm90
b3R5cGUuaApAQCAtMzIsOSArMzIsOSBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY2xhc3MgSW50
bENvbGxhdG9yUHJvdG90eXBlIDogcHVibGljIEludGxDb2xsYXRvciB7CitjbGFzcyBJbnRsQ29s
bGF0b3JQcm90b3R5cGUgOiBwdWJsaWMgSlNOb25GaW5hbE9iamVjdCB7CiBwdWJsaWM6Ci0gICAg
dHlwZWRlZiBJbnRsQ29sbGF0b3IgQmFzZTsKKyAgICB0eXBlZGVmIEpTTm9uRmluYWxPYmplY3Qg
QmFzZTsKICAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgU3RydWN0dXJlRmxhZ3MgPSBCYXNlOjpT
dHJ1Y3R1cmVGbGFncyB8IEhhc1N0YXRpY1Byb3BlcnR5VGFibGU7CiAKICAgICBzdGF0aWMgSW50
bENvbGxhdG9yUHJvdG90eXBlKiBjcmVhdGUoVk0mLCBKU0dsb2JhbE9iamVjdCosIFN0cnVjdHVy
ZSopOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVU
aW1lRm9ybWF0UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0lu
dGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZS5jcHAKaW5kZXggYzkwMWY5NzY3ZmM1ZTJlOGU2YWE1
YzUxMjU3ZTg1NTUzYzU5MWE0ZS4uNTRhNzNiNjQ2YjcyMTdlNjBjNjM1ZmQ1ZjczYWNhYjU5OGQx
ZTdjMiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVU
aW1lRm9ybWF0UHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9JbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUuY3BwCkBAIC00OSw3ICs0OSw3IEBAIHN0YXRp
YyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlw
ZUZ1bmNSZXNvbHZlZE9wdGlvCiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8g
SW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJPYmplY3QiLCAmSW50bERh
dGVUaW1lRm9ybWF0OjpzX2luZm8sICZkYXRlVGltZUZvcm1hdFByb3RvdHlwZVRhYmxlLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZSkgfTsKK2NvbnN0IENs
YXNzSW5mbyBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGU6OnNfaW5mbyA9IHsgIk9iamVjdCIs
ICZCYXNlOjpzX2luZm8sICZkYXRlVGltZUZvcm1hdFByb3RvdHlwZVRhYmxlLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZv
ciBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBkYXRlVGltZUZvcm1h
dFByb3RvdHlwZVRhYmxlCkBAIC03MSw3ICs3MSw3IEBAIFN0cnVjdHVyZSogSW50bERhdGVUaW1l
Rm9ybWF0UHJvdG90eXBlOjpjcmVhdGVTdHJ1Y3R1cmUoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCoK
IH0KIAogSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlOjpJbnRsRGF0ZVRpbWVGb3JtYXRQcm90
b3R5cGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKLSAgICA6IEludGxEYXRlVGltZUZv
cm1hdCh2bSwgc3RydWN0dXJlKQorICAgIDogQmFzZSh2bSwgc3RydWN0dXJlKQogewogfQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3Jt
YXRQcm90b3R5cGUuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGlt
ZUZvcm1hdFByb3RvdHlwZS5oCmluZGV4IGQwNWQwZjJlM2JkMjI0ODNhYzY3Y2IyYjYyNzdkNWJk
ZjJhNTFlOTAuLjk5NjhhMjZhMjIxZGQ4YmI0MjI0MGQ4YTY2OGYxNTgzMjViNzJlZjEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdFBy
b3RvdHlwZS5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGlt
ZUZvcm1hdFByb3RvdHlwZS5oCkBAIC0zMiw5ICszMiw5IEBACiAKIG5hbWVzcGFjZSBKU0Mgewog
Ci1jbGFzcyBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUgOiBwdWJsaWMgSW50bERhdGVUaW1l
Rm9ybWF0IHsKK2NsYXNzIEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZSA6IHB1YmxpYyBKU05v
bkZpbmFsT2JqZWN0IHsKIHB1YmxpYzoKLSAgICB0eXBlZGVmIEludGxEYXRlVGltZUZvcm1hdCBC
YXNlOworICAgIHR5cGVkZWYgSlNOb25GaW5hbE9iamVjdCBCYXNlOwogICAgIHN0YXRpYyBjb25z
dCB1bnNpZ25lZCBTdHJ1Y3R1cmVGbGFncyA9IEJhc2U6OlN0cnVjdHVyZUZsYWdzIHwgSGFzU3Rh
dGljUHJvcGVydHlUYWJsZTsKIAogICAgIHN0YXRpYyBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5
cGUqIGNyZWF0ZShWTSYsIEpTR2xvYmFsT2JqZWN0KiwgU3RydWN0dXJlKik7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0UHJvdG90eXBl
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxOdW1iZXJGb3JtYXRQcm90
b3R5cGUuY3BwCmluZGV4IGQ2YjAyNzM1OGFmYTZiN2RiN2MxZmQ5NjY2ZTMwZWJkYTBmNTk2ZDgu
Ljc5NWJhYTYwNDI3ZTRhZDY0OTFmNmE0MmY3ZTA3YWE4YmYzMTJmODEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxOdW1iZXJGb3JtYXRQcm90b3R5cGUuY3Bw
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxOdW1iZXJGb3JtYXRQcm90
b3R5cGUuY3BwCkBAIC00Nyw3ICs0Nyw3IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9T
VF9DQUxMIEludGxOdW1iZXJGb3JtYXRQcm90b3R5cGVGdW5jUmVzb2x2ZWRPcHRpb25zCiAKIG5h
bWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSW50bE51bWJlckZvcm1hdFByb3RvdHlw
ZTo6c19pbmZvID0geyAiT2JqZWN0IiwgJkludGxOdW1iZXJGb3JtYXQ6OnNfaW5mbywgJm51bWJl
ckZvcm1hdFByb3RvdHlwZVRhYmxlLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxOdW1iZXJGb3Jt
YXRQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSW50bE51bWJlckZvcm1hdFByb3RvdHlw
ZTo6c19pbmZvID0geyAiT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgJm51bWJlckZvcm1hdFByb3Rv
dHlwZVRhYmxlLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxOdW1iZXJGb3JtYXRQcm90b3R5cGUp
IH07CiAKIC8qIFNvdXJjZSBmb3IgSW50bE51bWJlckZvcm1hdFByb3RvdHlwZS5sdXQuaAogQGJl
Z2luIG51bWJlckZvcm1hdFByb3RvdHlwZVRhYmxlCkBAIC02OSw3ICs2OSw3IEBAIFN0cnVjdHVy
ZSogSW50bE51bWJlckZvcm1hdFByb3RvdHlwZTo6Y3JlYXRlU3RydWN0dXJlKFZNJiB2bSwgSlNH
bG9iYWxPYmplY3QqIGdsCiB9CiAKIEludGxOdW1iZXJGb3JtYXRQcm90b3R5cGU6OkludGxOdW1i
ZXJGb3JtYXRQcm90b3R5cGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKLSAgICA6IElu
dGxOdW1iZXJGb3JtYXQodm0sIHN0cnVjdHVyZSkKKyAgICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkK
IHsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE51
bWJlckZvcm1hdFByb3RvdHlwZS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50
bE51bWJlckZvcm1hdFByb3RvdHlwZS5oCmluZGV4IDNhNjE4MjVmOWQ5MDNlNmYwZmMyNDZjODNm
NDczOWJlNmRiYjc1NmEuLjQwMmI0ZWZiZGQ1OGU1M2Q1NjU2YTAzOTg5ZTYzYjY2NzRjM2E5YWMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxOdW1iZXJGb3Jt
YXRQcm90b3R5cGUuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTnVt
YmVyRm9ybWF0UHJvdG90eXBlLmgKQEAgLTMyLDkgKzMyLDkgQEAKIAogbmFtZXNwYWNlIEpTQyB7
CiAKLWNsYXNzIEludGxOdW1iZXJGb3JtYXRQcm90b3R5cGUgOiBwdWJsaWMgSW50bE51bWJlckZv
cm1hdCB7CitjbGFzcyBJbnRsTnVtYmVyRm9ybWF0UHJvdG90eXBlIDogcHVibGljIEpTTm9uRmlu
YWxPYmplY3QgewogcHVibGljOgotICAgIHR5cGVkZWYgSW50bE51bWJlckZvcm1hdCBCYXNlOwor
ICAgIHR5cGVkZWYgSlNOb25GaW5hbE9iamVjdCBCYXNlOwogICAgIHN0YXRpYyBjb25zdCB1bnNp
Z25lZCBTdHJ1Y3R1cmVGbGFncyA9IEJhc2U6OlN0cnVjdHVyZUZsYWdzIHwgSGFzU3RhdGljUHJv
cGVydHlUYWJsZTsKIAogICAgIHN0YXRpYyBJbnRsTnVtYmVyRm9ybWF0UHJvdG90eXBlKiBjcmVh
dGUoVk0mLCBKU0dsb2JhbE9iamVjdCosIFN0cnVjdHVyZSopOwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDgzMGI3YmU2Mjc1
ZWI2ZWI4YzUyYmE2NzRhY2FmZjMyYzQ5OWMxYTUuLjY0MzUwYTAxYTYzOGNiYzk0MjgyZGEyNDFj
ODhiNmE1MmZlZmMyOWQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAxNy0wMi0xMSAgQW5keSBW
YW5XYWdvbmVyICA8dGhldGFsZWNyYWZ0ZXJAZ21haWwuY29tPgorCisgICAgICAgIENoYW5nZSBJ
bnRsIHByb3RvdHlwZXMgdG8gcGxhaW4gb2JqZWN0cworICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY4MTc4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgKiBqcy9pbnRsLWNvbGxhdG9yLWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiBqcy9pbnRsLWRhdGV0aW1lZm9ybWF0LWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiBqcy9pbnRsLW51bWJlcmZvcm1hdC1leHBlY3RlZC50eHQ6CisgICAgICAgICoganMvc2NyaXB0
LXRlc3RzL2ludGwtY29sbGF0b3IuanM6CisgICAgICAgICoganMvc2NyaXB0LXRlc3RzL2ludGwt
ZGF0ZXRpbWVmb3JtYXQuanM6CisgICAgICAgICoganMvc2NyaXB0LXRlc3RzL2ludGwtbnVtYmVy
Zm9ybWF0LmpzOgorCiAyMDE3LTAyLTExICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFA
aWdhbGlhLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkIEdUSysgZ2FyZGVuaW5nLiBNYXJrIHJl
c291cmNlIGxvYWQgc3RhdHMgdGVzdHMgYXMgY3Jhc2hpbmcuCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9qcy9pbnRsLWNvbGxhdG9yLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2pzL2ludGwt
Y29sbGF0b3ItZXhwZWN0ZWQudHh0CmluZGV4IDVjNThhNzQyZDhjYzg4ZWY3ZTE0YTY5MmJhNjI2
MDM5OTE0MmVlMWUuLjdkMGI2OTBhNjIwMDk4ZDJiZTAyMWU5ZGRmMTlmZjMyYjNkZDIyNGYgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2pzL2ludGwtY29sbGF0b3ItZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2pzL2ludGwtY29sbGF0b3ItZXhwZWN0ZWQudHh0CkBAIC0xMjYsMjcgKzEy
NiwyNCBAQCBQQVNTIEludGwuQ29sbGF0b3Iuc3VwcG9ydGVkTG9jYWxlc09mKCd4LWVuLVVTLTEy
MzQ1LTEyMzQ1JykgZGlkIG5vdCB0aHJvdyBleGNlcAogUEFTUyBJbnRsLkNvbGxhdG9yLnN1cHBv
cnRlZExvY2FsZXNPZigneC1lbi11LWZvbycpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgogUEFT
UyBJbnRsLkNvbGxhdG9yLnN1cHBvcnRlZExvY2FsZXNPZigneC1lbi11LWZvby11LWJhcicpIGRp
ZCBub3QgdGhyb3cgZXhjZXB0aW9uLgogUEFTUyBJbnRsLkNvbGxhdG9yLnByb3RvdHlwZS5jb25z
dHJ1Y3RvciBpcyBJbnRsLkNvbGxhdG9yCi1QQVNTIEludGwuQ29sbGF0b3IucHJvdG90eXBlLmNv
bXBhcmUgaXMgYW4gaW5zdGFuY2Ugb2YgRnVuY3Rpb24KK1BBU1MgZGVmYXVsdENvbGxhdG9yLmNv
bXBhcmUgaXMgYW4gaW5zdGFuY2Ugb2YgRnVuY3Rpb24KIFBBU1MgT2JqZWN0LmdldE93blByb3Bl
cnR5RGVzY3JpcHRvcihJbnRsLkNvbGxhdG9yLnByb3RvdHlwZSwgJ2NvbXBhcmUnKS5nZXQgaXMg
YW4gaW5zdGFuY2Ugb2YgRnVuY3Rpb24KIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3Jp
cHRvcihJbnRsLkNvbGxhdG9yLnByb3RvdHlwZSwgJ2NvbXBhcmUnKS5zZXQgaXMgdW5kZWZpbmVk
CiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoSW50bC5Db2xsYXRvci5wcm90
b3R5cGUsICdjb21wYXJlJykuZW51bWVyYWJsZSBpcyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3du
UHJvcGVydHlEZXNjcmlwdG9yKEludGwuQ29sbGF0b3IucHJvdG90eXBlLCAnY29tcGFyZScpLmNv
bmZpZ3VyYWJsZSBpcyB0cnVlCi1QQVNTIEludGwuQ29sbGF0b3IucHJvdG90eXBlLmNvbXBhcmUu
bGVuZ3RoIGlzIDIKK1BBU1MgSW50bC5Db2xsYXRvcigpLmNvbXBhcmUubGVuZ3RoIGlzIDIKK1BB
U1MgSW50bC5Db2xsYXRvci5wcm90b3R5cGUuY29tcGFyZSB0aHJldyBleGNlcHRpb24gVHlwZUVy
cm9yOiBJbnRsLkNvbGxhdG9yLnByb3RvdHlwZS5jb21wYXJlIGNhbGxlZCBvbiB2YWx1ZSB0aGF0
J3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXplZCBhcyBhIENvbGxhdG9yLgogUEFTUyBPYmplY3Qu
ZGVmaW5lUHJvcGVydHkoe30sICdjb21wYXJlJywgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3Jp
cHRvcihJbnRsLkNvbGxhdG9yLnByb3RvdHlwZSwgJ2NvbXBhcmUnKSkuY29tcGFyZSB0aHJldyBl
eGNlcHRpb24gVHlwZUVycm9yOiBJbnRsLkNvbGxhdG9yLnByb3RvdHlwZS5jb21wYXJlIGNhbGxl
ZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXplZCBhcyBhIENvbGxhdG9y
LgotUEFTUyBJbnRsLkNvbGxhdG9yLnByb3RvdHlwZS5jb21wYXJlICE9PSBJbnRsLkNvbGxhdG9y
KCkuY29tcGFyZSBpcyB0cnVlCiBQQVNTIG5ldyBJbnRsLkNvbGxhdG9yKCkuY29tcGFyZSAhPT0g
bmV3IEludGwuQ29sbGF0b3IoKS5jb21wYXJlIGlzIHRydWUKLVBBU1MgSW50bC5Db2xsYXRvci5w
cm90b3R5cGUuY29tcGFyZSh7IHRvU3RyaW5nKCkgeyB0aHJvdyBFcnJvcignNicpIH0gfSwgeyB0
b1N0cmluZygpIHsgKytiYWRDYWxsczsgcmV0dXJuICcnOyB9IH0pIHRocmV3IGV4Y2VwdGlvbiBF
cnJvcjogNi4KK1BBU1MgZGVmYXVsdENvbGxhdG9yLmNvbXBhcmUoeyB0b1N0cmluZygpIHsgdGhy
b3cgRXJyb3IoJzYnKSB9IH0sIHsgdG9TdHJpbmcoKSB7ICsrYmFkQ2FsbHM7IHJldHVybiAnJzsg
fSB9KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IDYuCiBQQVNTIGJhZENhbGxzIGlzIDAKLVBBU1Mg
SW50bC5Db2xsYXRvci5wcm90b3R5cGUuY29tcGFyZSgnYScsIHsgdG9TdHJpbmcoKSB7IHRocm93
IEVycm9yKCc4JykgfSB9KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IDguCi1QQVNTIEludGwuQ29s
bGF0b3IucHJvdG90eXBlLmNvbXBhcmUuY2FsbChudWxsLCAnYScsICdiJykgaXMgLTEKLVBBU1Mg
SW50bC5Db2xsYXRvci5wcm90b3R5cGUuY29tcGFyZS5jYWxsKEludGwuQ29sbGF0b3IoJ2VuJywg
eyBzZW5zaXRpdml0eTonYmFzZScgfSksICdBJywgJ2EnKSBpcyAxCi1QQVNTIEludGwuQ29sbGF0
b3IucHJvdG90eXBlLmNvbXBhcmUuY2FsbCg1LCAnYScsICdiJykgaXMgLTEKLVBBU1MgbmV3IElu
dGwuQ29sbGF0b3IoKS5jb21wYXJlLmNhbGwobnVsbCwgJ2EnLCAnYicpIGlzIC0xCi1QQVNTIG5l
dyBJbnRsLkNvbGxhdG9yKCkuY29tcGFyZS5jYWxsKEludGwuQ29sbGF0b3IoJ2VuJywgeyBzZW5z
aXRpdml0eTonYmFzZScgfSksICdBJywgJ2EnKSBpcyAxCi1QQVNTIG5ldyBJbnRsLkNvbGxhdG9y
KCkuY29tcGFyZS5jYWxsKDUsICdhJywgJ2InKSBpcyAtMQotUEFTUyBJbnRsLkNvbGxhdG9yLnBy
b3RvdHlwZS5jb21wYXJlKCkgaXMgMAotUEFTUyBJbnRsLkNvbGxhdG9yLnByb3RvdHlwZS5jb21w
YXJlKCd1bmRlZmluZWMnKSBpcyAtMQotUEFTUyBJbnRsLkNvbGxhdG9yLnByb3RvdHlwZS5jb21w
YXJlKCd1bmRlZmluZWUnKSBpcyAxCitQQVNTIGRlZmF1bHRDb2xsYXRvci5jb21wYXJlKCdhJywg
eyB0b1N0cmluZygpIHsgdGhyb3cgRXJyb3IoJzgnKSB9IH0pIHRocmV3IGV4Y2VwdGlvbiBFcnJv
cjogOC4KK1BBU1MgZGVmYXVsdENvbGxhdG9yLmNvbXBhcmUuY2FsbChudWxsLCAnYScsICdiJykg
aXMgLTEKK1BBU1MgZGVmYXVsdENvbGxhdG9yLmNvbXBhcmUuY2FsbChJbnRsLkNvbGxhdG9yKCdl
bicsIHsgc2Vuc2l0aXZpdHk6J2Jhc2UnIH0pLCAnQScsICdhJykgaXMgMQorUEFTUyBkZWZhdWx0
Q29sbGF0b3IuY29tcGFyZS5jYWxsKDUsICdhJywgJ2InKSBpcyAtMQorUEFTUyBkZWZhdWx0Q29s
bGF0b3IuY29tcGFyZSgpIGlzIDAKK1BBU1MgZGVmYXVsdENvbGxhdG9yLmNvbXBhcmUoJ3VuZGVm
aW5lYycpIGlzIC0xCitQQVNTIGRlZmF1bHRDb2xsYXRvci5jb21wYXJlKCd1bmRlZmluZWUnKSBp
cyAxCiBQQVNTIEludGwuQ29sbGF0b3IoJ2VuJykuY29tcGFyZSgnw6QnLCAneicpIGlzIC0xCiBQ
QVNTIEludGwuQ29sbGF0b3IoJ3N2JykuY29tcGFyZSgnw6QnLCAneicpIGlzIDEKIFBBU1MgSW50
bC5Db2xsYXRvcignZGUnKS5jb21wYXJlKCfDticsICdvZCcpIGlzIC0xCkBAIC0yNDIsMTAgKzIz
OSwxMCBAQCBQQVNTIGlnbm9yZVB1bmN0dWF0aW9uQ29tcGFyZSgnYWInLCAnYSBiJykgaXMgMAog
UEFTUyBJbnRsLkNvbGxhdG9yKCdlbicpLmNvbXBhcmUoJ0HMiCcsICfDhCcpIGlzIDAKIFBBU1Mg
SW50bC5Db2xsYXRvcignZW4nKS5jb21wYXJlKCdBzKfMiicsICfihKvMpycpIGlzIDAKIFBBU1Mg
SW50bC5Db2xsYXRvci5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zLmxlbmd0aCBpcyAwCi1QQVNT
IEludGwuQ29sbGF0b3IucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpIGlzIGFuIGluc3RhbmNl
IG9mIE9iamVjdAotUEFTUyBJbnRsLkNvbGxhdG9yLnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMo
KSA9PT0gSW50bC5Db2xsYXRvci5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkgaXMgZmFsc2UK
K1BBU1MgZGVmYXVsdENvbGxhdG9yLnJlc29sdmVkT3B0aW9ucygpIGlzIGFuIGluc3RhbmNlIG9m
IE9iamVjdAorUEFTUyBkZWZhdWx0Q29sbGF0b3IucmVzb2x2ZWRPcHRpb25zKCkgPT09IGRlZmF1
bHRDb2xsYXRvci5yZXNvbHZlZE9wdGlvbnMoKSBpcyBmYWxzZQogUEFTUyBJbnRsLkNvbGxhdG9y
LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMuY2FsbCg1KSB0aHJldyBleGNlcHRpb24gVHlwZUVy
cm9yOiBJbnRsLkNvbGxhdG9yLnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMgY2FsbGVkIG9uIHZh
bHVlIHRoYXQncyBub3QgYW4gb2JqZWN0IGluaXRpYWxpemVkIGFzIGEgQ29sbGF0b3IuCi1QQVNT
IHZhciBvcHRpb25zID0gSW50bC5Db2xsYXRvci5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCk7
IGRlbGV0ZSBvcHRpb25zWydsb2NhbGUnXTsgSlNPTi5zdHJpbmdpZnkob3B0aW9ucykgaXMgJ3si
dXNhZ2UiOiJzb3J0Iiwic2Vuc2l0aXZpdHkiOiJ2YXJpYW50IiwiaWdub3JlUHVuY3R1YXRpb24i
OmZhbHNlLCJjb2xsYXRpb24iOiJkZWZhdWx0IiwibnVtZXJpYyI6ZmFsc2V9JworUEFTUyB2YXIg
b3B0aW9ucyA9IGRlZmF1bHRDb2xsYXRvci5yZXNvbHZlZE9wdGlvbnMoKTsgZGVsZXRlIG9wdGlv
bnNbJ2xvY2FsZSddOyBKU09OLnN0cmluZ2lmeShvcHRpb25zKSBpcyAneyJ1c2FnZSI6InNvcnQi
LCJzZW5zaXRpdml0eSI6InZhcmlhbnQiLCJpZ25vcmVQdW5jdHVhdGlvbiI6ZmFsc2UsImNvbGxh
dGlvbiI6ImRlZmF1bHQiLCJudW1lcmljIjpmYWxzZX0nCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNl
ZCBpcyB0cnVlCiAKIFRFU1QgQ09NUExFVEUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2pzL2lu
dGwtZGF0ZXRpbWVmb3JtYXQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvanMvaW50bC1kYXRl
dGltZWZvcm1hdC1leHBlY3RlZC50eHQKaW5kZXggMjc2YmU5ZjkxYTcwZTYzMGY5NjVjYzJhNjA4
MjZkNGI1MmFjZWFkNi4uY2ZkNDE3ZTk4ODM3NDBkMTUzNDdiMGU5NzQ2N2ZmMDdiZDgwYzdhNCAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvanMvaW50bC1kYXRldGltZWZvcm1hdC1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvanMvaW50bC1kYXRldGltZWZvcm1hdC1leHBlY3RlZC50eHQK
QEAgLTYzLDQyICs2MywyNiBAQCBQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQuc3VwcG9ydGVkTG9j
YWxlc09mKCd4LWVuLVVTLTEyMzQ1LTEyMzQ1JykgZGlkIG5vdCB0aHJvdwogUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0LnN1cHBvcnRlZExvY2FsZXNPZigneC1lbi11LWZvbycpIGRpZCBub3QgdGhy
b3cgZXhjZXB0aW9uLgogUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnN1cHBvcnRlZExvY2FsZXNP
ZigneC1lbi11LWZvby11LWJhcicpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgogUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5jb25zdHJ1Y3RvciBpcyBJbnRsLkRhdGVUaW1lRm9y
bWF0Ci1QQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdCBpcyBhbiBpbnN0
YW5jZSBvZiBGdW5jdGlvbgorUEFTUyBkZWZhdWx0RFRGb3JtYXQuZm9ybWF0IGlzIGFuIGluc3Rh
bmNlIG9mIEZ1bmN0aW9uCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoSW50
bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUsICdmb3JtYXQnKS5nZXQgaXMgYW4gaW5zdGFuY2Ug
b2YgRnVuY3Rpb24KIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihJbnRsLkRh
dGVUaW1lRm9ybWF0LnByb3RvdHlwZSwgJ2Zvcm1hdCcpLnNldCBpcyB1bmRlZmluZWQKIFBBU1Mg
T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3Rv
dHlwZSwgJ2Zvcm1hdCcpLmVudW1lcmFibGUgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blBy
b3BlcnR5RGVzY3JpcHRvcihJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZSwgJ2Zvcm1hdCcp
LmNvbmZpZ3VyYWJsZSBpcyB0cnVlCi1QQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBl
LmZvcm1hdC5sZW5ndGggaXMgMQorUEFTUyBkZWZhdWx0RFRGb3JtYXQuZm9ybWF0Lmxlbmd0aCBp
cyAxCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdCB0aHJldyBleGNl
cHRpb24gVHlwZUVycm9yOiBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQgY2Fs
bGVkIG9uIHZhbHVlIHRoYXQncyBub3QgYW4gb2JqZWN0IGluaXRpYWxpemVkIGFzIGEgRGF0ZVRp
bWVGb3JtYXQuCiBQQVNTIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh7fSwgJ2Zvcm1hdCcsIE9iamVj
dC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUs
ICdmb3JtYXQnKSkuZm9ybWF0IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IEludGwuRGF0ZVRp
bWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdCBjYWxsZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBhbiBv
YmplY3QgaW5pdGlhbGl6ZWQgYXMgYSBEYXRlVGltZUZvcm1hdC4KLVBBU1MgSW50bC5EYXRlVGlt
ZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0ICE9PSBJbnRsLkRhdGVUaW1lRm9ybWF0KCkuZm9ybWF0
IGlzIHRydWUKIFBBU1MgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQgIT09IG5ldyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCkuZm9ybWF0IGlzIHRydWUKLVBBU1MgSW50bC5EYXRlVGltZUZv
cm1hdC5wcm90b3R5cGUuZm9ybWF0KHsgdmFsdWVPZigpIHsgdGhyb3cgRXJyb3IoJzRiJykgfSB9
KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IDRiLgotUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnBy
b3RvdHlwZS5mb3JtYXQoSW5maW5pdHkpIHRocmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiBkYXRl
IHZhbHVlIGlzIG5vdCBmaW5pdGUgaW4gRGF0ZVRpbWVGb3JtYXQgZm9ybWF0KCkuCi1QQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdC5jYWxsKG51bGwsIDApIGlzIEludGwu
RGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQoMCkKLVBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90
b3R5cGUuZm9ybWF0LmNhbGwoSW50bC5EYXRlVGltZUZvcm1hdCgnYXInKSwgMCkgaXMgSW50bC5E
YXRlVGltZUZvcm1hdCgpLmZvcm1hdCgwKQotUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3Rv
dHlwZS5mb3JtYXQuY2FsbCg1LCAwKSBpcyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkuZm9ybWF0KDAp
Ci1QQVNTIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkuZm9ybWF0LmNhbGwobnVsbCwgMCkgaXMg
SW50bC5EYXRlVGltZUZvcm1hdCgpLmZvcm1hdCgwKQotUEFTUyBuZXcgSW50bC5EYXRlVGltZUZv
cm1hdCgpLmZvcm1hdC5jYWxsKEludGwuRGF0ZVRpbWVGb3JtYXQoJ2FyJyksIDApIGlzIEludGwu
RGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQoMCkKLVBBU1MgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQo
KS5mb3JtYXQuY2FsbCg1LCAwKSBpcyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkuZm9ybWF0KDApCi1Q
QVNTIHR5cGVvZiBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQoKSA9PT0gJ3N0
cmluZycgaXMgdHJ1ZQorUEFTUyBkZWZhdWx0RFRGb3JtYXQuZm9ybWF0KHsgdmFsdWVPZigpIHsg
dGhyb3cgRXJyb3IoJzRiJykgfSB9KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IDRiLgorUEFTUyBk
ZWZhdWx0RFRGb3JtYXQuZm9ybWF0KEluZmluaXR5KSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJv
cjogZGF0ZSB2YWx1ZSBpcyBub3QgZmluaXRlIGluIERhdGVUaW1lRm9ybWF0IGZvcm1hdCgpLgor
UEFTUyBkZWZhdWx0RFRGb3JtYXQuZm9ybWF0LmNhbGwobnVsbCwgMCkgaXMgSW50bC5EYXRlVGlt
ZUZvcm1hdCgpLmZvcm1hdCgwKQorUEFTUyBkZWZhdWx0RFRGb3JtYXQuZm9ybWF0LmNhbGwoSW50
bC5EYXRlVGltZUZvcm1hdCgnYXInKSwgMCkgaXMgSW50bC5EYXRlVGltZUZvcm1hdCgpLmZvcm1h
dCgwKQorUEFTUyBkZWZhdWx0RFRGb3JtYXQuZm9ybWF0LmNhbGwoNSwgMCkgaXMgSW50bC5EYXRl
VGltZUZvcm1hdCgpLmZvcm1hdCgwKQorUEFTUyB0eXBlb2YgZGVmYXVsdERURm9ybWF0LmZvcm1h
dCgpID09PSAnc3RyaW5nJyBpcyB0cnVlCiBQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyB0aW1lWm9uZTogJ0FtZXJpY2EvRGVudmVyJyB9KS5mb3JtYXQobmV3IERhdGUoMTQ1MTA5OTg3
MjY0MSkpIGlzICcxMi8yNS8yMDE1JwogUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlw
ZS5yZXNvbHZlZE9wdGlvbnMubGVuZ3RoIGlzIDAKLVBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5w
cm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkgaXMgYW4gaW5zdGFuY2Ugb2YgT2JqZWN0Ci1QQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZSBp
cyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZQotUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9u
ZSBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25l
Ci1QQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLmNh
bGVuZGFyIGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkuY2Fs
ZW5kYXIKLVBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25z
KCkubnVtYmVyaW5nU3lzdGVtIGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRP
cHRpb25zKCkubnVtYmVyaW5nU3lzdGVtCi1QQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90
eXBlLnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXkgaXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQo
KS5yZXNvbHZlZE9wdGlvbnMoKS53ZWVrZGF5Ci1QQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJv
dG90eXBlLnJlc29sdmVkT3B0aW9ucygpLmVyYSBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgp
LnJlc29sdmVkT3B0aW9ucygpLmVyYQotUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlw
ZS5yZXNvbHZlZE9wdGlvbnMoKS55ZWFyIGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVz
b2x2ZWRPcHRpb25zKCkueWVhcgotUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5y
ZXNvbHZlZE9wdGlvbnMoKS5tb250aCBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29s
dmVkT3B0aW9ucygpLm1vbnRoCi1QQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJl
c29sdmVkT3B0aW9ucygpLmRheSBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVk
T3B0aW9ucygpLmRheQotUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZl
ZE9wdGlvbnMoKS5ob3VyIGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRp
b25zKCkuaG91cgotUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9w
dGlvbnMoKS5ob3VyMTIgaXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlv
bnMoKS5ob3VyMTIKLVBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRP
cHRpb25zKCkubWludXRlIGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRp
b25zKCkubWludXRlCi1QQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVk
T3B0aW9ucygpLnNlY29uZCBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0
aW9ucygpLnNlY29uZAotUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZl
ZE9wdGlvbnMoKS50aW1lWm9uZU5hbWUgaXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZU5hbWUKLVBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90
b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkgPT09IEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBl
LnJlc29sdmVkT3B0aW9ucygpIGlzIGZhbHNlCitQQVNTIGRlZmF1bHREVEZvcm1hdC5yZXNvbHZl
ZE9wdGlvbnMoKSBpcyBhbiBpbnN0YW5jZSBvZiBPYmplY3QKK1BBU1MgZGVmYXVsdERURm9ybWF0
LnJlc29sdmVkT3B0aW9ucygpID09PSBkZWZhdWx0RFRGb3JtYXQucmVzb2x2ZWRPcHRpb25zKCkg
aXMgZmFsc2UKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRp
b25zKCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogSW50bC5EYXRlVGltZUZvcm1hdC5wcm90
b3R5cGUucmVzb2x2ZWRPcHRpb25zIGNhbGxlZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGFuIG9iamVj
dCBpbml0aWFsaXplZCBhcyBhIERhdGVUaW1lRm9ybWF0LgogUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMuY2FsbCg1KSB0aHJldyBleGNlcHRpb24gVHlw
ZUVycm9yOiBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMgY2Fs
bGVkIG9uIHZhbHVlIHRoYXQncyBub3QgYW4gb2JqZWN0IGluaXRpYWxpemVkIGFzIGEgRGF0ZVRp
bWVGb3JtYXQuCiBQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJyQnKSB0aHJldyBleGNlcHRpb24g
UmFuZ2VFcnJvcjogaW52YWxpZCBsYW5ndWFnZSB0YWc6ICQuCiBQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgbnVsbCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogbnVsbCBpcyBub3Qg
YW4gb2JqZWN0IChldmFsdWF0aW5nICdJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIG51bGwpJyku
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9qcy9pbnRsLW51bWJlcmZvcm1hdC1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9qcy9pbnRsLW51bWJlcmZvcm1hdC1leHBlY3RlZC50eHQKaW5kZXgg
MzRjNTExNTYyODhjMWY4NGIwNGUwMmQ1NTAyZTg4YTI4NzFmZGUyNi4uZWIyMDBiNmUxNzkxNjk3
ODkxMjlkNjg5MDExZjBjZTk2MTFiOWI5YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvanMvaW50
bC1udW1iZXJmb3JtYXQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2pzL2ludGwtbnVt
YmVyZm9ybWF0LWV4cGVjdGVkLnR4dApAQCAtMTMxLDIyICsxMzEsMTkgQEAgUEFTUyBJbnRsLk51
bWJlckZvcm1hdC5zdXBwb3J0ZWRMb2NhbGVzT2YoJ3gtZW4tVVMtMTIzNDUtMTIzNDUnKSBkaWQg
bm90IHRocm93IGUKIFBBU1MgSW50bC5OdW1iZXJGb3JtYXQuc3VwcG9ydGVkTG9jYWxlc09mKCd4
LWVuLXUtZm9vJykgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCiBQQVNTIEludGwuTnVtYmVyRm9y
bWF0LnN1cHBvcnRlZExvY2FsZXNPZigneC1lbi11LWZvby11LWJhcicpIGRpZCBub3QgdGhyb3cg
ZXhjZXB0aW9uLgogUEFTUyBJbnRsLk51bWJlckZvcm1hdC5wcm90b3R5cGUuY29uc3RydWN0b3Ig
aXMgSW50bC5OdW1iZXJGb3JtYXQKLVBBU1MgSW50bC5OdW1iZXJGb3JtYXQucHJvdG90eXBlLmZv
cm1hdCBpcyBhbiBpbnN0YW5jZSBvZiBGdW5jdGlvbgorUEFTUyBkZWZhdWx0TkZvcm1hdC5mb3Jt
YXQgaXMgYW4gaW5zdGFuY2Ugb2YgRnVuY3Rpb24KIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5
RGVzY3JpcHRvcihJbnRsLk51bWJlckZvcm1hdC5wcm90b3R5cGUsICdmb3JtYXQnKS5nZXQgaXMg
YW4gaW5zdGFuY2Ugb2YgRnVuY3Rpb24KIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3Jp
cHRvcihJbnRsLk51bWJlckZvcm1hdC5wcm90b3R5cGUsICdmb3JtYXQnKS5zZXQgaXMgdW5kZWZp
bmVkCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoSW50bC5OdW1iZXJGb3Jt
YXQucHJvdG90eXBlLCAnZm9ybWF0JykuZW51bWVyYWJsZSBpcyBmYWxzZQogUEFTUyBPYmplY3Qu
Z2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEludGwuTnVtYmVyRm9ybWF0LnByb3RvdHlwZSwgJ2Zv
cm1hdCcpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCi1QQVNTIEludGwuTnVtYmVyRm9ybWF0LnByb3Rv
dHlwZS5mb3JtYXQubGVuZ3RoIGlzIDEKK1BBU1MgZGVmYXVsdE5Gb3JtYXQuZm9ybWF0Lmxlbmd0
aCBpcyAxCitQQVNTIEludGwuTnVtYmVyRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQgdGhyZXcgZXhj
ZXB0aW9uIFR5cGVFcnJvcjogSW50bC5OdW1iZXJGb3JtYXQucHJvdG90eXBlLmZvcm1hdCBjYWxs
ZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBhbiBvYmplY3QgaW5pdGlhbGl6ZWQgYXMgYSBOdW1iZXJG
b3JtYXQuCiBQQVNTIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh7fSwgJ2Zvcm1hdCcsIE9iamVjdC5n
ZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoSW50bC5OdW1iZXJGb3JtYXQucHJvdG90eXBlLCAnZm9y
bWF0JykpLmZvcm1hdCB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBJbnRsLk51bWJlckZvcm1h
dC5wcm90b3R5cGUuZm9ybWF0IGNhbGxlZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGFuIG9iamVjdCBp
bml0aWFsaXplZCBhcyBhIE51bWJlckZvcm1hdC4KLVBBU1MgSW50bC5OdW1iZXJGb3JtYXQucHJv
dG90eXBlLmZvcm1hdCAhPT0gSW50bC5OdW1iZXJGb3JtYXQoKS5mb3JtYXQgaXMgdHJ1ZQogUEFT
UyBuZXcgSW50bC5OdW1iZXJGb3JtYXQoKS5mb3JtYXQgIT09IG5ldyBJbnRsLk51bWJlckZvcm1h
dCgpLmZvcm1hdCBpcyB0cnVlCi1QQVNTIEludGwuTnVtYmVyRm9ybWF0LnByb3RvdHlwZS5mb3Jt
YXQoeyB2YWx1ZU9mKCkgeyB0aHJvdyBFcnJvcignNScpIH0gfSkgdGhyZXcgZXhjZXB0aW9uIEVy
cm9yOiA1LgotUEFTUyBJbnRsLk51bWJlckZvcm1hdC5wcm90b3R5cGUuZm9ybWF0LmNhbGwobnVs
bCwgMS4yKSBpcyBJbnRsLk51bWJlckZvcm1hdCgpLmZvcm1hdCgxLjIpCi1QQVNTIEludGwuTnVt
YmVyRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQuY2FsbChJbnRsLkRhdGVUaW1lRm9ybWF0KCdhcicp
LCAxLjIpIGlzIEludGwuTnVtYmVyRm9ybWF0KCkuZm9ybWF0KDEuMikKLVBBU1MgSW50bC5OdW1i
ZXJGb3JtYXQucHJvdG90eXBlLmZvcm1hdC5jYWxsKDUsIDEuMikgaXMgSW50bC5OdW1iZXJGb3Jt
YXQoKS5mb3JtYXQoMS4yKQotUEFTUyBuZXcgSW50bC5OdW1iZXJGb3JtYXQoKS5mb3JtYXQuY2Fs
bChudWxsLCAxLjIpIGlzIEludGwuTnVtYmVyRm9ybWF0KCkuZm9ybWF0KDEuMikKLVBBU1MgbmV3
IEludGwuTnVtYmVyRm9ybWF0KCkuZm9ybWF0LmNhbGwoSW50bC5EYXRlVGltZUZvcm1hdCgnYXIn
KSwgMS4yKSBpcyBJbnRsLk51bWJlckZvcm1hdCgpLmZvcm1hdCgxLjIpCi1QQVNTIG5ldyBJbnRs
Lk51bWJlckZvcm1hdCgpLmZvcm1hdC5jYWxsKDUsIDEuMikgaXMgSW50bC5OdW1iZXJGb3JtYXQo
KS5mb3JtYXQoMS4yKQorUEFTUyBkZWZhdWx0TkZvcm1hdC5mb3JtYXQoeyB2YWx1ZU9mKCkgeyB0
aHJvdyBFcnJvcignNScpIH0gfSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiA1LgorUEFTUyBkZWZh
dWx0TkZvcm1hdC5mb3JtYXQuY2FsbChudWxsLCAxLjIpIGlzIEludGwuTnVtYmVyRm9ybWF0KCku
Zm9ybWF0KDEuMikKK1BBU1MgZGVmYXVsdE5Gb3JtYXQuZm9ybWF0LmNhbGwoSW50bC5EYXRlVGlt
ZUZvcm1hdCgnYXInKSwgMS4yKSBpcyBJbnRsLk51bWJlckZvcm1hdCgpLmZvcm1hdCgxLjIpCitQ
QVNTIGRlZmF1bHRORm9ybWF0LmZvcm1hdC5jYWxsKDUsIDEuMikgaXMgSW50bC5OdW1iZXJGb3Jt
YXQoKS5mb3JtYXQoMS4yKQogUEFTUyBJbnRsLk51bWJlckZvcm1hdCgnZW4nKS5mb3JtYXQoNDIp
IGlzICc0MicKIFBBU1MgSW50bC5OdW1iZXJGb3JtYXQoJ2VuJykuZm9ybWF0KCc0MicpIGlzICc0
MicKIFBBU1MgSW50bC5OdW1iZXJGb3JtYXQoJ2VuJykuZm9ybWF0KHsgdmFsdWVPZigpIHsgcmV0
dXJuIDQyOyB9IH0pIGlzICc0MicKQEAgLTE2MCw3ICsxNTcsNyBAQCBQQVNTIEludGwuTnVtYmVy
Rm9ybWF0KCdlbicpLmZvcm1hdChOdW1iZXIuTUlOX1ZBTFVFKSBpcyAnMCcKIFBBU1MgSW50bC5O
dW1iZXJGb3JtYXQoJ2VuJykuZm9ybWF0KE51bWJlci5NQVhfVkFMVUUpIGlzICcxNzksNzY5LDMx
Myw0ODYsMjMyLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAw
LDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAs
MDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCww
MDAsMDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAw
MCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAw
LDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAs
MDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCww
MDAnCiBQQVNTIEludGwuTnVtYmVyRm9ybWF0KCdlbicpLmZvcm1hdCgxMjM0LjU2NykgaXMgJzEs
MjM0LjU2NycKIFBBU1MgSW50bC5OdW1iZXJGb3JtYXQoJ2VzJykuZm9ybWF0KDEyMzQuNTY3KSBp
cyAnMS4yMzQsNTY3JwotUEFTUyBJbnRsLk51bWJlckZvcm1hdCgnZnInKS5mb3JtYXQoMTIzNC41
NjcpIGlzICcxwqAyMzQsNTY3JworUEFTUyBJbnRsLk51bWJlckZvcm1hdCgnZnInKS5mb3JtYXQo
MTIzNC41NjcpIGlzICcxXHhBMDIzNCw1NjcnCiBQQVNTIEludGwuTnVtYmVyRm9ybWF0KCdlbi11
LW51LWxhdG4nKS5mb3JtYXQoMTIzNC41NjcpIGlzICcxLDIzNC41NjcnCiBQQVNTIEludGwuTnVt
YmVyRm9ybWF0KCdlbi11LW51LWZ1bGx3aWRlJykuZm9ybWF0KDEyMzQuNTY3KSBpcyAn77yRLO+8
ku+8k++8lC7vvJXvvJbvvJcnCiBQQVNTIEludGwuTnVtYmVyRm9ybWF0KCd0aC11LW51LXRoYWkn
KS5mb3JtYXQoMTIzNC41NjcpIGlzICfguZEs4LmS4LmT4LmULuC5leC5luC5lycKQEAgLTIwNCwx
NSArMjAxLDE2IEBAIFBBU1MgSW50bC5OdW1iZXJGb3JtYXQoJ2VuJywge21heGltdW1TaWduaWZp
Y2FudERpZ2l0czogNH0pLmZvcm1hdCgwLjEyMzQ1NjcpIGlzCiBQQVNTIEludGwuTnVtYmVyRm9y
bWF0KCdlbicsIHttYXhpbXVtU2lnbmlmaWNhbnREaWdpdHM6IDR9KS5mb3JtYXQoMTIzNDU2Nykg
aXMgJzEsMjM1LDAwMCcKIFBBU1MgSW50bC5OdW1iZXJGb3JtYXQoJ2VuJywge3VzZUdyb3VwaW5n
OiB0cnVlfSkuZm9ybWF0KDEyMzQ1NjcuMTIzKSBpcyAnMSwyMzQsNTY3LjEyMycKIFBBU1MgSW50
bC5OdW1iZXJGb3JtYXQoJ2VzJywge3VzZUdyb3VwaW5nOiB0cnVlfSkuZm9ybWF0KDEyMzQ1Njcu
MTIzKSBpcyAnMS4yMzQuNTY3LDEyMycKLVBBU1MgSW50bC5OdW1iZXJGb3JtYXQoJ2ZyJywge3Vz
ZUdyb3VwaW5nOiB0cnVlfSkuZm9ybWF0KDEyMzQ1NjcuMTIzKSBpcyAnMcKgMjM0wqA1NjcsMTIz
JworUEFTUyBJbnRsLk51bWJlckZvcm1hdCgnZnInLCB7dXNlR3JvdXBpbmc6IHRydWV9KS5mb3Jt
YXQoMTIzNDU2Ny4xMjMpIGlzICcxXHhBMDIzNFx4QTA1NjcsMTIzJwogUEFTUyBJbnRsLk51bWJl
ckZvcm1hdCgnZW4nLCB7dXNlR3JvdXBpbmc6IGZhbHNlfSkuZm9ybWF0KDEyMzQ1NjcuMTIzKSBp
cyAnMTIzNDU2Ny4xMjMnCiBQQVNTIEludGwuTnVtYmVyRm9ybWF0KCdlcycsIHt1c2VHcm91cGlu
ZzogZmFsc2V9KS5mb3JtYXQoMTIzNDU2Ny4xMjMpIGlzICcxMjM0NTY3LDEyMycKIFBBU1MgSW50
bC5OdW1iZXJGb3JtYXQoJ2ZyJywge3VzZUdyb3VwaW5nOiBmYWxzZX0pLmZvcm1hdCgxMjM0NTY3
LjEyMykgaXMgJzEyMzQ1NjcsMTIzJwogUEFTUyBJbnRsLk51bWJlckZvcm1hdC5wcm90b3R5cGUu
cmVzb2x2ZWRPcHRpb25zLmxlbmd0aCBpcyAwCi1QQVNTIEludGwuTnVtYmVyRm9ybWF0LnByb3Rv
dHlwZS5yZXNvbHZlZE9wdGlvbnMoKSBpcyBhbiBpbnN0YW5jZSBvZiBPYmplY3QKLVBBU1MgSW50
bC5OdW1iZXJGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpID09PSBJbnRsLk51bWJl
ckZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkgaXMgZmFsc2UKK1BBU1MgZGVmYXVs
dE5Gb3JtYXQucmVzb2x2ZWRPcHRpb25zKCkgaXMgYW4gaW5zdGFuY2Ugb2YgT2JqZWN0CitQQVNT
IGRlZmF1bHRORm9ybWF0LnJlc29sdmVkT3B0aW9ucygpID09PSBkZWZhdWx0TkZvcm1hdC5yZXNv
bHZlZE9wdGlvbnMoKSBpcyBmYWxzZQorUEFTUyBJbnRsLk51bWJlckZvcm1hdC5wcm90b3R5cGUu
cmVzb2x2ZWRPcHRpb25zKCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogSW50bC5OdW1iZXJG
b3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucyBjYWxsZWQgb24gdmFsdWUgdGhhdCdzIG5v
dCBhbiBvYmplY3QgaW5pdGlhbGl6ZWQgYXMgYSBOdW1iZXJGb3JtYXQuCiBQQVNTIEludGwuTnVt
YmVyRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMuY2FsbCg1KSB0aHJldyBleGNlcHRp
b24gVHlwZUVycm9yOiBJbnRsLk51bWJlckZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25z
IGNhbGxlZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXplZCBhcyBhIE51
bWJlckZvcm1hdC4KLVBBU1MgdmFyIG9wdGlvbnMgPSBJbnRsLk51bWJlckZvcm1hdC5wcm90b3R5
cGUucmVzb2x2ZWRPcHRpb25zKCk7IGRlbGV0ZSBvcHRpb25zWydsb2NhbGUnXTsgSlNPTi5zdHJp
bmdpZnkob3B0aW9ucykgaXMgJ3sibnVtYmVyaW5nU3lzdGVtIjoibGF0biIsInN0eWxlIjoiZGVj
aW1hbCIsIm1pbmltdW1JbnRlZ2VyRGlnaXRzIjoxLCJtaW5pbXVtRnJhY3Rpb25EaWdpdHMiOjAs
Im1heGltdW1GcmFjdGlvbkRpZ2l0cyI6MywidXNlR3JvdXBpbmciOnRydWV9JworUEFTUyB2YXIg
b3B0aW9ucyA9IGRlZmF1bHRORm9ybWF0LnJlc29sdmVkT3B0aW9ucygpOyBkZWxldGUgb3B0aW9u
c1snbG9jYWxlJ107IEpTT04uc3RyaW5naWZ5KG9wdGlvbnMpIGlzICd7Im51bWJlcmluZ1N5c3Rl
bSI6ImxhdG4iLCJzdHlsZSI6ImRlY2ltYWwiLCJtaW5pbXVtSW50ZWdlckRpZ2l0cyI6MSwibWlu
aW11bUZyYWN0aW9uRGlnaXRzIjowLCJtYXhpbXVtRnJhY3Rpb25EaWdpdHMiOjMsInVzZUdyb3Vw
aW5nIjp0cnVlfScKIFBBU1MgdmFyIGxlZ2FjeSA9IE9iamVjdC5jcmVhdGUoSW50bC5OdW1iZXJG
b3JtYXQucHJvdG90eXBlKTtJbnRsLk51bWJlckZvcm1hdC5hcHBseShsZWdhY3kpIGlzIGxlZ2Fj
eQogUEFTUyB2YXIgbGVnYWN5ID0gT2JqZWN0LmNyZWF0ZShJbnRsLk51bWJlckZvcm1hdC5wcm90
b3R5cGUpO0ludGwuTnVtYmVyRm9ybWF0LmNhbGwobGVnYWN5LCAnZW4tdS1udS1hcmFiJykuZm9y
bWF0KDEuMjM0NSkgaXMgJ9mh2avZotmj2aUnCiBQQVNTIHZhciBpbmNvbXBhdCA9IHt9O0ludGwu
TnVtYmVyRm9ybWF0LmFwcGx5KGluY29tcGF0KSBpcyBub3QgaW5jb21wYXQKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2pzL3NjcmlwdC10ZXN0cy9pbnRsLWNvbGxhdG9yLmpzIGIvTGF5b3V0VGVz
dHMvanMvc2NyaXB0LXRlc3RzL2ludGwtY29sbGF0b3IuanMKaW5kZXggNGYxMTcwNjNhZDFiZGY1
YzFlNjQ4NDY4ZWY4N2MyZmQ5YWM1OTlkYi4uOTMyYmUzZjA5ODUzNDU5ODc0MzZkMjEwOWY0ODc2
ZGNjOTM4ZGIyZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvanMvc2NyaXB0LXRlc3RzL2ludGwt
Y29sbGF0b3IuanMKKysrIGIvTGF5b3V0VGVzdHMvanMvc2NyaXB0LXRlc3RzL2ludGwtY29sbGF0
b3IuanMKQEAgLTIxMyw3ICsyMTMsOCBAQCBzaG91bGRCZSgiSW50bC5Db2xsYXRvci5wcm90b3R5
cGUuY29uc3RydWN0b3IiLCAiSW50bC5Db2xsYXRvciIpOwogLy8gMTAuMy4zIEludGwuQ29sbGF0
b3IucHJvdG90eXBlLmNvbXBhcmUKIAogLy8gVGhpcyBuYW1lZCBhY2Nlc3NvciBwcm9wZXJ0eSBy
ZXR1cm5zIGEgZnVuY3Rpb24gdGhhdCBjb21wYXJlcyB0d28gc3RyaW5ncyBhY2NvcmRpbmcgdG8g
dGhlIHNvcnQgb3JkZXIgb2YgdGhpcyBDb2xsYXRvciBvYmplY3QuCi1zaG91bGRCZVR5cGUoIklu
dGwuQ29sbGF0b3IucHJvdG90eXBlLmNvbXBhcmUiLCAiRnVuY3Rpb24iKTsKK3ZhciBkZWZhdWx0
Q29sbGF0b3IgPSBJbnRsLkNvbGxhdG9yKCk7CitzaG91bGRCZVR5cGUoImRlZmF1bHRDb2xsYXRv
ci5jb21wYXJlIiwgIkZ1bmN0aW9uIik7CiAKIC8vIFRoZSB2YWx1ZSBvZiB0aGUgW1tHZXRdXSBh
dHRyaWJ1dGUgaXMgYSBmdW5jdGlvbgogc2hvdWxkQmVUeXBlKCJPYmplY3QuZ2V0T3duUHJvcGVy
dHlEZXNjcmlwdG9yKEludGwuQ29sbGF0b3IucHJvdG90eXBlLCAnY29tcGFyZScpLmdldCIsICJG
dW5jdGlvbiIpOwpAQCAtMjI2LDEzICsyMjcsMTMgQEAgc2hvdWxkQmVGYWxzZSgiT2JqZWN0Lmdl
dE93blByb3BlcnR5RGVzY3JpcHRvcihJbnRsLkNvbGxhdG9yLnByb3RvdHlwZSwgJ2NvbXBhcmUK
IHNob3VsZEJlVHJ1ZSgiT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihJbnRsLkNvbGxh
dG9yLnByb3RvdHlwZSwgJ2NvbXBhcmUnKS5jb25maWd1cmFibGUiKTsKIAogLy8gVGhlIHZhbHVl
IG9mIEbigJlzIGxlbmd0aCBwcm9wZXJ0eSBpcyAyLgotc2hvdWxkQmUoIkludGwuQ29sbGF0b3Iu
cHJvdG90eXBlLmNvbXBhcmUubGVuZ3RoIiwgIjIiKTsKK3Nob3VsZEJlKCJJbnRsLkNvbGxhdG9y
KCkuY29tcGFyZS5sZW5ndGgiLCAiMiIpOwogCiAvLyBUaHJvd3Mgb24gbm9uLUNvbGxhdG9yIHRo
aXMuCitzaG91bGRUaHJvdygiSW50bC5Db2xsYXRvci5wcm90b3R5cGUuY29tcGFyZSIsICInVHlw
ZUVycm9yOiBJbnRsLkNvbGxhdG9yLnByb3RvdHlwZS5jb21wYXJlIGNhbGxlZCBvbiB2YWx1ZSB0
aGF0XFwncyBub3QgYW4gb2JqZWN0IGluaXRpYWxpemVkIGFzIGEgQ29sbGF0b3InIik7CiBzaG91
bGRUaHJvdygiT2JqZWN0LmRlZmluZVByb3BlcnR5KHt9LCAnY29tcGFyZScsIE9iamVjdC5nZXRP
d25Qcm9wZXJ0eURlc2NyaXB0b3IoSW50bC5Db2xsYXRvci5wcm90b3R5cGUsICdjb21wYXJlJykp
LmNvbXBhcmUiLCAiJ1R5cGVFcnJvcjogSW50bC5Db2xsYXRvci5wcm90b3R5cGUuY29tcGFyZSBj
YWxsZWQgb24gdmFsdWUgdGhhdFxcJ3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXplZCBhcyBhIENv
bGxhdG9yJyIpOwogCiAvLyBUaGUgY29tcGFyZSBmdW5jdGlvbiBpcyB1bmlxdWUgcGVyIGluc3Rh
bmNlLgotc2hvdWxkQmVUcnVlKCJJbnRsLkNvbGxhdG9yLnByb3RvdHlwZS5jb21wYXJlICE9PSBJ
bnRsLkNvbGxhdG9yKCkuY29tcGFyZSIpOwogc2hvdWxkQmVUcnVlKCJuZXcgSW50bC5Db2xsYXRv
cigpLmNvbXBhcmUgIT09IG5ldyBJbnRsLkNvbGxhdG9yKCkuY29tcGFyZSIpOwogCiAvLyAxMC4z
LjQgQ29sbGF0b3IgQ29tcGFyZSBGdW5jdGlvbnMKQEAgLTI0NiwyNSArMjQ3LDIyIEBAIHNob3Vs
ZEJlVHJ1ZSgibmV3IEludGwuQ29sbGF0b3IoKS5jb21wYXJlICE9PSBuZXcgSW50bC5Db2xsYXRv
cigpLmNvbXBhcmUiKTsKIC8vIDUuIExldCBYIGJlIFRvU3RyaW5nKHgpLgogLy8gNi4gUmV0dXJu
SWZBYnJ1cHQoWCkuCiB2YXIgYmFkQ2FsbHMgPSAwOwotc2hvdWxkVGhyb3coIkludGwuQ29sbGF0
b3IucHJvdG90eXBlLmNvbXBhcmUoeyB0b1N0cmluZygpIHsgdGhyb3cgRXJyb3IoJzYnKSB9IH0s
IHsgdG9TdHJpbmcoKSB7ICsrYmFkQ2FsbHM7IHJldHVybiAnJzsgfSB9KSIsICInRXJyb3I6IDYn
Iik7CitzaG91bGRUaHJvdygiZGVmYXVsdENvbGxhdG9yLmNvbXBhcmUoeyB0b1N0cmluZygpIHsg
dGhyb3cgRXJyb3IoJzYnKSB9IH0sIHsgdG9TdHJpbmcoKSB7ICsrYmFkQ2FsbHM7IHJldHVybiAn
JzsgfSB9KSIsICInRXJyb3I6IDYnIik7CiBzaG91bGRCZSgiYmFkQ2FsbHMiLCAiMCIpOwogCiAv
LyA3LiBMZXQgWSBiZSBUb1N0cmluZyh5KS4KIC8vIDguIFJldHVybklmQWJydXB0KFkpLgotc2hv
dWxkVGhyb3coIkludGwuQ29sbGF0b3IucHJvdG90eXBlLmNvbXBhcmUoJ2EnLCB7IHRvU3RyaW5n
KCkgeyB0aHJvdyBFcnJvcignOCcpIH0gfSkiLCAiJ0Vycm9yOiA4JyIpOworc2hvdWxkVGhyb3co
ImRlZmF1bHRDb2xsYXRvci5jb21wYXJlKCdhJywgeyB0b1N0cmluZygpIHsgdGhyb3cgRXJyb3Io
JzgnKSB9IH0pIiwgIidFcnJvcjogOCciKTsKIAogLy8gQ29tcGFyZSBpcyBib3VuZCwgc28gY2Fs
bGluZyB3aXRoIGFsdGVybmF0ZSAidGhpcyIgaGFzIG5vIGVmZmVjdC4KLXNob3VsZEJlKCJJbnRs
LkNvbGxhdG9yLnByb3RvdHlwZS5jb21wYXJlLmNhbGwobnVsbCwgJ2EnLCAnYicpIiwgIi0xIik7
Ci1zaG91bGRCZSgiSW50bC5Db2xsYXRvci5wcm90b3R5cGUuY29tcGFyZS5jYWxsKEludGwuQ29s
bGF0b3IoJ2VuJywgeyBzZW5zaXRpdml0eTonYmFzZScgfSksICdBJywgJ2EnKSIsICIxIik7Ci1z
aG91bGRCZSgiSW50bC5Db2xsYXRvci5wcm90b3R5cGUuY29tcGFyZS5jYWxsKDUsICdhJywgJ2In
KSIsICItMSIpOwotc2hvdWxkQmUoIm5ldyBJbnRsLkNvbGxhdG9yKCkuY29tcGFyZS5jYWxsKG51
bGwsICdhJywgJ2InKSIsICItMSIpOwotc2hvdWxkQmUoIm5ldyBJbnRsLkNvbGxhdG9yKCkuY29t
cGFyZS5jYWxsKEludGwuQ29sbGF0b3IoJ2VuJywgeyBzZW5zaXRpdml0eTonYmFzZScgfSksICdB
JywgJ2EnKSIsICIxIik7Ci1zaG91bGRCZSgibmV3IEludGwuQ29sbGF0b3IoKS5jb21wYXJlLmNh
bGwoNSwgJ2EnLCAnYicpIiwgIi0xIik7CitzaG91bGRCZSgiZGVmYXVsdENvbGxhdG9yLmNvbXBh
cmUuY2FsbChudWxsLCAnYScsICdiJykiLCAiLTEiKTsKK3Nob3VsZEJlKCJkZWZhdWx0Q29sbGF0
b3IuY29tcGFyZS5jYWxsKEludGwuQ29sbGF0b3IoJ2VuJywgeyBzZW5zaXRpdml0eTonYmFzZScg
fSksICdBJywgJ2EnKSIsICIxIik7CitzaG91bGRCZSgiZGVmYXVsdENvbGxhdG9yLmNvbXBhcmUu
Y2FsbCg1LCAnYScsICdiJykiLCAiLTEiKTsKIAogLy8gVGVzdCBjb21wYXJpbmcgdW5kZWZpbmVk
cy4KLXNob3VsZEJlKCJJbnRsLkNvbGxhdG9yLnByb3RvdHlwZS5jb21wYXJlKCkiLCAiMCIpOwot
c2hvdWxkQmUoIkludGwuQ29sbGF0b3IucHJvdG90eXBlLmNvbXBhcmUoJ3VuZGVmaW5lYycpIiwg
Ii0xIik7Ci1zaG91bGRCZSgiSW50bC5Db2xsYXRvci5wcm90b3R5cGUuY29tcGFyZSgndW5kZWZp
bmVlJykiLCAiMSIpOworc2hvdWxkQmUoImRlZmF1bHRDb2xsYXRvci5jb21wYXJlKCkiLCAiMCIp
Oworc2hvdWxkQmUoImRlZmF1bHRDb2xsYXRvci5jb21wYXJlKCd1bmRlZmluZWMnKSIsICItMSIp
Oworc2hvdWxkQmUoImRlZmF1bHRDb2xsYXRvci5jb21wYXJlKCd1bmRlZmluZWUnKSIsICIxIik7
CiAKIC8vIFRlc3QgbG9jYWxlcy4KIHNob3VsZEJlKCJJbnRsLkNvbGxhdG9yKCdlbicpLmNvbXBh
cmUoJ8OkJywgJ3onKSIsICItMSIpOwpAQCAtMzU1LDEzICszNTMsMTMgQEAgc2hvdWxkQmUoIklu
dGwuQ29sbGF0b3IoJ2VuJykuY29tcGFyZSgnQVx1MDMyN1x1MDMwYScsICdcdTIxMmJcdTAzMjcn
KSIsICIwIik7IC8KIHNob3VsZEJlKCJJbnRsLkNvbGxhdG9yLnByb3RvdHlwZS5yZXNvbHZlZE9w
dGlvbnMubGVuZ3RoIiwgIjAiKTsKIAogLy8gUmV0dXJucyBhIG5ldyBvYmplY3Qgd2hvc2UgcHJv
cGVydGllcyBhbmQgYXR0cmlidXRlcyBhcmUgc2V0IGFzIGlmIGNvbnN0cnVjdGVkIGJ5IGFuIG9i
amVjdCBsaXRlcmFsLgotc2hvdWxkQmVUeXBlKCJJbnRsLkNvbGxhdG9yLnByb3RvdHlwZS5yZXNv
bHZlZE9wdGlvbnMoKSIsICJPYmplY3QiKTsKK3Nob3VsZEJlVHlwZSgiZGVmYXVsdENvbGxhdG9y
LnJlc29sdmVkT3B0aW9ucygpIiwgIk9iamVjdCIpOwogCiAvLyBSZXR1cm5zIGEgbmV3IG9iamVj
dCBlYWNoIHRpbWUuCi1zaG91bGRCZUZhbHNlKCJJbnRsLkNvbGxhdG9yLnByb3RvdHlwZS5yZXNv
bHZlZE9wdGlvbnMoKSA9PT0gSW50bC5Db2xsYXRvci5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25z
KCkiKTsKK3Nob3VsZEJlRmFsc2UoImRlZmF1bHRDb2xsYXRvci5yZXNvbHZlZE9wdGlvbnMoKSA9
PT0gZGVmYXVsdENvbGxhdG9yLnJlc29sdmVkT3B0aW9ucygpIik7CiAKIC8vIFRocm93cyBvbiBu
b24tQ29sbGF0b3IgdGhpcy4KIHNob3VsZFRocm93KCJJbnRsLkNvbGxhdG9yLnByb3RvdHlwZS5y
ZXNvbHZlZE9wdGlvbnMuY2FsbCg1KSIsICInVHlwZUVycm9yOiBJbnRsLkNvbGxhdG9yLnByb3Rv
dHlwZS5yZXNvbHZlZE9wdGlvbnMgY2FsbGVkIG9uIHZhbHVlIHRoYXRcXCdzIG5vdCBhbiBvYmpl
Y3QgaW5pdGlhbGl6ZWQgYXMgYSBDb2xsYXRvciciKTsKIAogLy8gUmV0dXJucyB0aGUgZGVmYXVs
dCBvcHRpb25zLgotc2hvdWxkQmUoInZhciBvcHRpb25zID0gSW50bC5Db2xsYXRvci5wcm90b3R5
cGUucmVzb2x2ZWRPcHRpb25zKCk7IGRlbGV0ZSBvcHRpb25zWydsb2NhbGUnXTsgSlNPTi5zdHJp
bmdpZnkob3B0aW9ucykiLCAnXCd7InVzYWdlIjoic29ydCIsInNlbnNpdGl2aXR5IjoidmFyaWFu
dCIsImlnbm9yZVB1bmN0dWF0aW9uIjpmYWxzZSwiY29sbGF0aW9uIjoiZGVmYXVsdCIsIm51bWVy
aWMiOmZhbHNlfVwnJyk7CitzaG91bGRCZSgidmFyIG9wdGlvbnMgPSBkZWZhdWx0Q29sbGF0b3Iu
cmVzb2x2ZWRPcHRpb25zKCk7IGRlbGV0ZSBvcHRpb25zWydsb2NhbGUnXTsgSlNPTi5zdHJpbmdp
Znkob3B0aW9ucykiLCAnXCd7InVzYWdlIjoic29ydCIsInNlbnNpdGl2aXR5IjoidmFyaWFudCIs
Imlnbm9yZVB1bmN0dWF0aW9uIjpmYWxzZSwiY29sbGF0aW9uIjoiZGVmYXVsdCIsIm51bWVyaWMi
OmZhbHNlfVwnJyk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvaW50
bC1kYXRldGltZWZvcm1hdC5qcyBiL0xheW91dFRlc3RzL2pzL3NjcmlwdC10ZXN0cy9pbnRsLWRh
dGV0aW1lZm9ybWF0LmpzCmluZGV4IDM1NzNhMmY3YzUwZjZjMmUxNzdiY2I3OTQzYjBmN2UyNDdh
YWNiNWEuLjVlZTg3MjVlMTYxYTU5YjVmZDYwZTdhODFiZGI1ZjhmMGY0ODg3OWMgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2pzL3NjcmlwdC10ZXN0cy9pbnRsLWRhdGV0aW1lZm9ybWF0LmpzCisr
KyBiL0xheW91dFRlc3RzL2pzL3NjcmlwdC10ZXN0cy9pbnRsLWRhdGV0aW1lZm9ybWF0LmpzCkBA
IC0xMDcsNyArMTA3LDggQEAgc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBl
LmNvbnN0cnVjdG9yIiwgIkludGwuRGF0ZVRpbWVGb3JtYXQiKTsKIC8vIDEyLjMuMyBJbnRsLkRh
dGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQKIAogLy8gVGhpcyBuYW1lZCBhY2Nlc3NvciBw
cm9wZXJ0eSByZXR1cm5zIGEgZnVuY3Rpb24gdGhhdCBmb3JtYXRzIGEgZGF0ZSBhY2NvcmRpbmcg
dG8gdGhlIGVmZmVjdGl2ZSBsb2NhbGUgYW5kIHRoZSBmb3JtYXR0aW5nIG9wdGlvbnMgb2YgdGhp
cyBEYXRlVGltZUZvcm1hdCBvYmplY3QuCi1zaG91bGRCZVR5cGUoIkludGwuRGF0ZVRpbWVGb3Jt
YXQucHJvdG90eXBlLmZvcm1hdCIsICJGdW5jdGlvbiIpOwordmFyIGRlZmF1bHREVEZvcm1hdCA9
IEludGwuRGF0ZVRpbWVGb3JtYXQoKTsKK3Nob3VsZEJlVHlwZSgiZGVmYXVsdERURm9ybWF0LmZv
cm1hdCIsICJGdW5jdGlvbiIpOwogCiAvLyBUaGUgdmFsdWUgb2YgdGhlIFtbR2V0XV0gYXR0cmli
dXRlIGlzIGEgZnVuY3Rpb24KIHNob3VsZEJlVHlwZSgiT2JqZWN0LmdldE93blByb3BlcnR5RGVz
Y3JpcHRvcihJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZSwgJ2Zvcm1hdCcpLmdldCIsICJG
dW5jdGlvbiIpOwpAQCAtMTIwLDEzICsxMjEsMTMgQEAgc2hvdWxkQmVGYWxzZSgiT2JqZWN0Lmdl
dE93blByb3BlcnR5RGVzY3JpcHRvcihJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZSwgJ2YK
IHNob3VsZEJlVHJ1ZSgiT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihJbnRsLkRhdGVU
aW1lRm9ybWF0LnByb3RvdHlwZSwgJ2Zvcm1hdCcpLmNvbmZpZ3VyYWJsZSIpOwogCiAvLyBUaGUg
dmFsdWUgb2YgRuKAmXMgbGVuZ3RoIHByb3BlcnR5IGlzIDEuCi1zaG91bGRCZSgiSW50bC5EYXRl
VGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0Lmxlbmd0aCIsICIxIik7CitzaG91bGRCZSgiZGVm
YXVsdERURm9ybWF0LmZvcm1hdC5sZW5ndGgiLCAiMSIpOwogCiAvLyBUaHJvd3Mgb24gbm9uLURh
dGVUaW1lRm9ybWF0IHRoaXMuCitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90
b3R5cGUuZm9ybWF0IiwgIidUeXBlRXJyb3I6IEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBl
LmZvcm1hdCBjYWxsZWQgb24gdmFsdWUgdGhhdFxcJ3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXpl
ZCBhcyBhIERhdGVUaW1lRm9ybWF0JyIpOwogc2hvdWxkVGhyb3coIk9iamVjdC5kZWZpbmVQcm9w
ZXJ0eSh7fSwgJ2Zvcm1hdCcsIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoSW50bC5E
YXRlVGltZUZvcm1hdC5wcm90b3R5cGUsICdmb3JtYXQnKSkuZm9ybWF0IiwgIidUeXBlRXJyb3I6
IEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdCBjYWxsZWQgb24gdmFsdWUgdGhh
dFxcJ3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXplZCBhcyBhIERhdGVUaW1lRm9ybWF0JyIpOwog
CiAvLyBUaGUgZm9ybWF0IGZ1bmN0aW9uIGlzIHVuaXF1ZSBwZXIgaW5zdGFuY2UuCi1zaG91bGRC
ZVRydWUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdCAhPT0gSW50bC5EYXRl
VGltZUZvcm1hdCgpLmZvcm1hdCIpOwogc2hvdWxkQmVUcnVlKCJuZXcgSW50bC5EYXRlVGltZUZv
cm1hdCgpLmZvcm1hdCAhPT0gbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQiKTsKIAog
Ly8gMTIuMy40IERhdGVUaW1lIEZvcm1hdCBGdW5jdGlvbnMKQEAgLTE0MCwyMiArMTQxLDE5IEBA
IHNob3VsZEJlVHJ1ZSgibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQgIT09IG5ldyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCkuZm9yCiAvLyA0LiBFbHNlCiAvLyBhLiBMZXQgeCBiZSBUb051
bWJlcihkYXRlKS4KIC8vIGIuIFJldHVybklmQWJydXB0KHgpLgotc2hvdWxkVGhyb3coIkludGwu
RGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdCh7IHZhbHVlT2YoKSB7IHRocm93IEVycm9y
KCc0YicpIH0gfSkiLCAiJ0Vycm9yOiA0YiciKTsKK3Nob3VsZFRocm93KCJkZWZhdWx0RFRGb3Jt
YXQuZm9ybWF0KHsgdmFsdWVPZigpIHsgdGhyb3cgRXJyb3IoJzRiJykgfSB9KSIsICInRXJyb3I6
IDRiJyIpOwogCiAvLyAxMi4zLjQgRm9ybWF0RGF0ZVRpbWUgYWJzdHJhY3Qgb3BlcmF0aW9uCiAK
IC8vIDEuIElmIHggaXMgbm90IGEgZmluaXRlIE51bWJlciwgdGhlbiB0aHJvdyBhIFJhbmdlRXJy
b3IgZXhjZXB0aW9uLgotc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBl
LmZvcm1hdChJbmZpbml0eSkiLCAiJ1JhbmdlRXJyb3I6IGRhdGUgdmFsdWUgaXMgbm90IGZpbml0
ZSBpbiBEYXRlVGltZUZvcm1hdCBmb3JtYXQoKSciKTsKK3Nob3VsZFRocm93KCJkZWZhdWx0RFRG
b3JtYXQuZm9ybWF0KEluZmluaXR5KSIsICInUmFuZ2VFcnJvcjogZGF0ZSB2YWx1ZSBpcyBub3Qg
ZmluaXRlIGluIERhdGVUaW1lRm9ybWF0IGZvcm1hdCgpJyIpOwogCiAvLyBGb3JtYXQgaXMgYm91
bmQsIHNvIGNhbGxpbmcgd2l0aCBhbHRlcm5hdGUgInRoaXMiIGhhcyBubyBlZmZlY3QuCi1zaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0LmNhbGwobnVsbCwgMCki
LCAiSW50bC5EYXRlVGltZUZvcm1hdCgpLmZvcm1hdCgwKSIpOwotc2hvdWxkQmUoIkludGwuRGF0
ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdC5jYWxsKEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Fy
JyksIDApIiwgIkludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQoMCkiKTsKLXNob3VsZEJlKCJJ
bnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQuY2FsbCg1LCAwKSIsICJJbnRsLkRh
dGVUaW1lRm9ybWF0KCkuZm9ybWF0KDApIik7Ci1zaG91bGRCZSgibmV3IEludGwuRGF0ZVRpbWVG
b3JtYXQoKS5mb3JtYXQuY2FsbChudWxsLCAwKSIsICJJbnRsLkRhdGVUaW1lRm9ybWF0KCkuZm9y
bWF0KDApIik7Ci1zaG91bGRCZSgibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQuY2Fs
bChJbnRsLkRhdGVUaW1lRm9ybWF0KCdhcicpLCAwKSIsICJJbnRsLkRhdGVUaW1lRm9ybWF0KCku
Zm9ybWF0KDApIik7Ci1zaG91bGRCZSgibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQu
Y2FsbCg1LCAwKSIsICJJbnRsLkRhdGVUaW1lRm9ybWF0KCkuZm9ybWF0KDApIik7Ci0KLXNob3Vs
ZEJlVHJ1ZSgidHlwZW9mIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdCgpID09
PSAnc3RyaW5nJyIpOworc2hvdWxkQmUoImRlZmF1bHREVEZvcm1hdC5mb3JtYXQuY2FsbChudWxs
LCAwKSIsICJJbnRsLkRhdGVUaW1lRm9ybWF0KCkuZm9ybWF0KDApIik7CitzaG91bGRCZSgiZGVm
YXVsdERURm9ybWF0LmZvcm1hdC5jYWxsKEludGwuRGF0ZVRpbWVGb3JtYXQoJ2FyJyksIDApIiwg
IkludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQoMCkiKTsKK3Nob3VsZEJlKCJkZWZhdWx0RFRG
b3JtYXQuZm9ybWF0LmNhbGwoNSwgMCkiLCAiSW50bC5EYXRlVGltZUZvcm1hdCgpLmZvcm1hdCgw
KSIpOworCitzaG91bGRCZVRydWUoInR5cGVvZiBkZWZhdWx0RFRGb3JtYXQuZm9ybWF0KCkgPT09
ICdzdHJpbmcnIik7CiBzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVa
b25lOiAnQW1lcmljYS9EZW52ZXInIH0pLmZvcm1hdChuZXcgRGF0ZSgxNDUxMDk5ODcyNjQxKSki
LCAiJzEyLzI1LzIwMTUnIik7CiAKIC8vIDEyLjMuNSBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3Rv
dHlwZS5yZXNvbHZlZE9wdGlvbnMgKCkKQEAgLTE2MywyOCArMTYxLDEzIEBAIHNob3VsZEJlKCJJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBbWVyaWNhL0RlbnZlcicgfSku
Zm9ybWF0KG5ldyBECiBzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVz
b2x2ZWRPcHRpb25zLmxlbmd0aCIsICIwIik7CiAKIC8vIFJldHVybnMgYSBuZXcgb2JqZWN0IHdo
b3NlIHByb3BlcnRpZXMgYW5kIGF0dHJpYnV0ZXMgYXJlIHNldCBhcyBpZiBjb25zdHJ1Y3RlZCBi
eSBhbiBvYmplY3QgbGl0ZXJhbC4KLXNob3VsZEJlVHlwZSgiSW50bC5EYXRlVGltZUZvcm1hdC5w
cm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkiLCAiT2JqZWN0Iik7Ci0KLS8vIFRoZSBJbnRsLkRh
dGVUaW1lRm9ybWF0IHByb3RvdHlwZSBvYmplY3QgaXMgaXRzZWxmIGFuICVEYXRlVGltZUZvcm1h
dCUgaW5zdGFuY2UsIHdob3NlIGludGVybmFsIHNsb3RzIGFyZSBzZXQgYXMgaWYgaXQgaGFkIGJl
ZW4gY29uc3RydWN0ZWQgYnkgdGhlIGV4cHJlc3Npb24gQ29uc3RydWN0KCVEYXRlVGltZUZvcm1h
dCUpLgotc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0
aW9ucygpLmxvY2FsZSIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9u
cygpLmxvY2FsZSIpOwotc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJl
c29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVz
b2x2ZWRPcHRpb25zKCkudGltZVpvbmUiKTsKLXNob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICJuZXcgSW50bC5EYXRlVGlt
ZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIik7Ci1zaG91bGRCZSgiSW50bC5E
YXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVt
IiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5n
U3lzdGVtIik7Ci1zaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2
ZWRPcHRpb25zKCkud2Vla2RheSIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVk
T3B0aW9ucygpLndlZWtkYXkiKTsKLXNob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3Rv
dHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5lcmEiLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5y
ZXNvbHZlZE9wdGlvbnMoKS5lcmEiKTsKLXNob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnBy
b3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS55ZWFyIiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCkucmVzb2x2ZWRPcHRpb25zKCkueWVhciIpOwotc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3Jt
YXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLm1vbnRoIiwgIm5ldyBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkubW9udGgiKTsKLXNob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5kYXkiLCAibmV3IEludGwuRGF0
ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5kYXkiKTsKLXNob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyIiwgIm5ldyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkuaG91ciIpOwotc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLmhvdXIxMiIsICJu
ZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLmhvdXIxMiIpOwotc2hv
dWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLm1p
bnV0ZSIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLm1pbnV0
ZSIpOwotc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0
aW9ucygpLnNlY29uZCIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9u
cygpLnNlY29uZCIpOwotc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJl
c29sdmVkT3B0aW9ucygpLnRpbWVab25lTmFtZSIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgp
LnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lTmFtZSIpOworc2hvdWxkQmVUeXBlKCJkZWZhdWx0
RFRGb3JtYXQucmVzb2x2ZWRPcHRpb25zKCkiLCAiT2JqZWN0Iik7CiAKIC8vIFJldHVybnMgYSBu
ZXcgb2JqZWN0IGVhY2ggdGltZS4KLXNob3VsZEJlRmFsc2UoIkludGwuRGF0ZVRpbWVGb3JtYXQu
cHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpID09PSBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3Rv
dHlwZS5yZXNvbHZlZE9wdGlvbnMoKSIpOworc2hvdWxkQmVGYWxzZSgiZGVmYXVsdERURm9ybWF0
LnJlc29sdmVkT3B0aW9ucygpID09PSBkZWZhdWx0RFRGb3JtYXQucmVzb2x2ZWRPcHRpb25zKCki
KTsKIAogLy8gVGhyb3dzIG9uIG5vbi1EYXRlVGltZUZvcm1hdCB0aGlzLgorc2hvdWxkVGhyb3co
IkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpIiwgIidUeXBl
RXJyb3I6IEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucyBjYWxs
ZWQgb24gdmFsdWUgdGhhdFxcJ3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXplZCBhcyBhIERhdGVU
aW1lRm9ybWF0JyIpOwogc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBl
LnJlc29sdmVkT3B0aW9ucy5jYWxsKDUpIiwgIidUeXBlRXJyb3I6IEludGwuRGF0ZVRpbWVGb3Jt
YXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucyBjYWxsZWQgb24gdmFsdWUgdGhhdFxcJ3Mgbm90
IGFuIG9iamVjdCBpbml0aWFsaXplZCBhcyBhIERhdGVUaW1lRm9ybWF0JyIpOwogCiBzaG91bGRU
aHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnJCcpIiwgIidSYW5nZUVycm9yOiBpbnZhbGlkIGxh
bmd1YWdlIHRhZzogJCciKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2pzL3NjcmlwdC10ZXN0
cy9pbnRsLW51bWJlcmZvcm1hdC5qcyBiL0xheW91dFRlc3RzL2pzL3NjcmlwdC10ZXN0cy9pbnRs
LW51bWJlcmZvcm1hdC5qcwppbmRleCBkMGE2MTRlZWFlOWIyM2VmYjFmNjBmMDM5MzFiNGIyNTg5
OGUzNGJiLi41Yjc4ZGNlYTQyZmQ5MzM0ZTY0MmI5ZTIyNDA0MjE2Njk4MDUyMzMwIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvaW50bC1udW1iZXJmb3JtYXQuanMKKysr
IGIvTGF5b3V0VGVzdHMvanMvc2NyaXB0LXRlc3RzL2ludGwtbnVtYmVyZm9ybWF0LmpzCkBAIC0y
MjMsNyArMjIzLDggQEAgc2hvdWxkQmUoIkludGwuTnVtYmVyRm9ybWF0LnByb3RvdHlwZS5jb25z
dHJ1Y3RvciIsICJJbnRsLk51bWJlckZvcm1hdCIpOwogLy8gMTEuMy4zIEludGwuTnVtYmVyRm9y
bWF0LnByb3RvdHlwZS5mb3JtYXQKIAogLy8gVGhpcyBuYW1lZCBhY2Nlc3NvciBwcm9wZXJ0eSBy
ZXR1cm5zIGEgZnVuY3Rpb24gdGhhdCBmb3JtYXRzIGEgbnVtYmVyIGFjY29yZGluZyB0byB0aGUg
ZWZmZWN0aXZlIGxvY2FsZSBhbmQgdGhlIGZvcm1hdHRpbmcgb3B0aW9ucyBvZiB0aGlzIE51bWJl
ckZvcm1hdCBvYmplY3QuCi1zaG91bGRCZVR5cGUoIkludGwuTnVtYmVyRm9ybWF0LnByb3RvdHlw
ZS5mb3JtYXQiLCAiRnVuY3Rpb24iKTsKK3ZhciBkZWZhdWx0TkZvcm1hdCA9IEludGwuTnVtYmVy
Rm9ybWF0KCk7CitzaG91bGRCZVR5cGUoImRlZmF1bHRORm9ybWF0LmZvcm1hdCIsICJGdW5jdGlv
biIpOwogCiAvLyBUaGUgdmFsdWUgb2YgdGhlIFtbR2V0XV0gYXR0cmlidXRlIGlzIGEgZnVuY3Rp
b24KIHNob3VsZEJlVHlwZSgiT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihJbnRsLk51
bWJlckZvcm1hdC5wcm90b3R5cGUsICdmb3JtYXQnKS5nZXQiLCAiRnVuY3Rpb24iKTsKQEAgLTIz
NiwxMyArMjM3LDEzIEBAIHNob3VsZEJlRmFsc2UoIk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2Ny
aXB0b3IoSW50bC5OdW1iZXJGb3JtYXQucHJvdG90eXBlLCAnZm9yCiBzaG91bGRCZVRydWUoIk9i
amVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoSW50bC5OdW1iZXJGb3JtYXQucHJvdG90eXBl
LCAnZm9ybWF0JykuY29uZmlndXJhYmxlIik7CiAKIC8vIFRoZSB2YWx1ZSBvZiBG4oCZcyBsZW5n
dGggcHJvcGVydHkgaXMgMS4KLXNob3VsZEJlKCJJbnRsLk51bWJlckZvcm1hdC5wcm90b3R5cGUu
Zm9ybWF0Lmxlbmd0aCIsICIxIik7CitzaG91bGRCZSgiZGVmYXVsdE5Gb3JtYXQuZm9ybWF0Lmxl
bmd0aCIsICIxIik7CiAKIC8vIFRocm93cyBvbiBub24tTnVtYmVyRm9ybWF0IHRoaXMuCitzaG91
bGRUaHJvdygiSW50bC5OdW1iZXJGb3JtYXQucHJvdG90eXBlLmZvcm1hdCIsICInVHlwZUVycm9y
OiBJbnRsLk51bWJlckZvcm1hdC5wcm90b3R5cGUuZm9ybWF0IGNhbGxlZCBvbiB2YWx1ZSB0aGF0
XFwncyBub3QgYW4gb2JqZWN0IGluaXRpYWxpemVkIGFzIGEgTnVtYmVyRm9ybWF0JyIpOwogc2hv
dWxkVGhyb3coIk9iamVjdC5kZWZpbmVQcm9wZXJ0eSh7fSwgJ2Zvcm1hdCcsIE9iamVjdC5nZXRP
d25Qcm9wZXJ0eURlc2NyaXB0b3IoSW50bC5OdW1iZXJGb3JtYXQucHJvdG90eXBlLCAnZm9ybWF0
JykpLmZvcm1hdCIsICInVHlwZUVycm9yOiBJbnRsLk51bWJlckZvcm1hdC5wcm90b3R5cGUuZm9y
bWF0IGNhbGxlZCBvbiB2YWx1ZSB0aGF0XFwncyBub3QgYW4gb2JqZWN0IGluaXRpYWxpemVkIGFz
IGEgTnVtYmVyRm9ybWF0JyIpOwogCiAvLyBUaGUgZm9ybWF0IGZ1bmN0aW9uIGlzIHVuaXF1ZSBw
ZXIgaW5zdGFuY2UuCi1zaG91bGRCZVRydWUoIkludGwuTnVtYmVyRm9ybWF0LnByb3RvdHlwZS5m
b3JtYXQgIT09IEludGwuTnVtYmVyRm9ybWF0KCkuZm9ybWF0Iik7CiBzaG91bGRCZVRydWUoIm5l
dyBJbnRsLk51bWJlckZvcm1hdCgpLmZvcm1hdCAhPT0gbmV3IEludGwuTnVtYmVyRm9ybWF0KCku
Zm9ybWF0Iik7CiAKIC8vIDExLjMuNCBGb3JtYXQgTnVtYmVyIEZ1bmN0aW9ucwpAQCAtMjU0LDE1
ICsyNTUsMTIgQEAgc2hvdWxkQmVUcnVlKCJuZXcgSW50bC5OdW1iZXJGb3JtYXQoKS5mb3JtYXQg
IT09IG5ldyBJbnRsLk51bWJlckZvcm1hdCgpLmZvcm1hdCIKIC8vIDMuIElmIHZhbHVlIGlzIG5v
dCBwcm92aWRlZCwgbGV0IHZhbHVlIGJlIHVuZGVmaW5lZC4KIC8vIDQuIExldCB4IGJlIFRvTnVt
YmVyKHZhbHVlKS4KIC8vIDUuIFJldHVybklmQWJydXB0KHgpLgotc2hvdWxkVGhyb3coIkludGwu
TnVtYmVyRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQoeyB2YWx1ZU9mKCkgeyB0aHJvdyBFcnJvcign
NScpIH0gfSkiLCAiJ0Vycm9yOiA1JyIpOworc2hvdWxkVGhyb3coImRlZmF1bHRORm9ybWF0LmZv
cm1hdCh7IHZhbHVlT2YoKSB7IHRocm93IEVycm9yKCc1JykgfSB9KSIsICInRXJyb3I6IDUnIik7
CiAKIC8vIEZvcm1hdCBpcyBib3VuZCwgc28gY2FsbGluZyB3aXRoIGFsdGVybmF0ZSAidGhpcyIg
aGFzIG5vIGVmZmVjdC4KLXNob3VsZEJlKCJJbnRsLk51bWJlckZvcm1hdC5wcm90b3R5cGUuZm9y
bWF0LmNhbGwobnVsbCwgMS4yKSIsICJJbnRsLk51bWJlckZvcm1hdCgpLmZvcm1hdCgxLjIpIik7
Ci1zaG91bGRCZSgiSW50bC5OdW1iZXJGb3JtYXQucHJvdG90eXBlLmZvcm1hdC5jYWxsKEludGwu
RGF0ZVRpbWVGb3JtYXQoJ2FyJyksIDEuMikiLCAiSW50bC5OdW1iZXJGb3JtYXQoKS5mb3JtYXQo
MS4yKSIpOwotc2hvdWxkQmUoIkludGwuTnVtYmVyRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQuY2Fs
bCg1LCAxLjIpIiwgIkludGwuTnVtYmVyRm9ybWF0KCkuZm9ybWF0KDEuMikiKTsKLXNob3VsZEJl
KCJuZXcgSW50bC5OdW1iZXJGb3JtYXQoKS5mb3JtYXQuY2FsbChudWxsLCAxLjIpIiwgIkludGwu
TnVtYmVyRm9ybWF0KCkuZm9ybWF0KDEuMikiKTsKLXNob3VsZEJlKCJuZXcgSW50bC5OdW1iZXJG
b3JtYXQoKS5mb3JtYXQuY2FsbChJbnRsLkRhdGVUaW1lRm9ybWF0KCdhcicpLCAxLjIpIiwgIklu
dGwuTnVtYmVyRm9ybWF0KCkuZm9ybWF0KDEuMikiKTsKLXNob3VsZEJlKCJuZXcgSW50bC5OdW1i
ZXJGb3JtYXQoKS5mb3JtYXQuY2FsbCg1LCAxLjIpIiwgIkludGwuTnVtYmVyRm9ybWF0KCkuZm9y
bWF0KDEuMikiKTsKK3Nob3VsZEJlKCJkZWZhdWx0TkZvcm1hdC5mb3JtYXQuY2FsbChudWxsLCAx
LjIpIiwgIkludGwuTnVtYmVyRm9ybWF0KCkuZm9ybWF0KDEuMikiKTsKK3Nob3VsZEJlKCJkZWZh
dWx0TkZvcm1hdC5mb3JtYXQuY2FsbChJbnRsLkRhdGVUaW1lRm9ybWF0KCdhcicpLCAxLjIpIiwg
IkludGwuTnVtYmVyRm9ybWF0KCkuZm9ybWF0KDEuMikiKTsKK3Nob3VsZEJlKCJkZWZhdWx0TkZv
cm1hdC5mb3JtYXQuY2FsbCg1LCAxLjIpIiwgIkludGwuTnVtYmVyRm9ybWF0KCkuZm9ybWF0KDEu
MikiKTsKIAogLy8gVGVzdCB2YXJpb3VzIHZhbHVlcy4KIHNob3VsZEJlKCJJbnRsLk51bWJlckZv
cm1hdCgnZW4nKS5mb3JtYXQoNDIpIiwgIic0MiciKTsKQEAgLTI4MCw3ICsyNzgsNyBAQCBzaG91
bGRCZSgiSW50bC5OdW1iZXJGb3JtYXQoJ2VuJykuZm9ybWF0KE51bWJlci5NQVhfVkFMVUUpIiwg
IicxNzksNzY5LDMxMyw0ODYsMgogLy8gVGVzdCBsb2NhbGVzLgogc2hvdWxkQmUoIkludGwuTnVt
YmVyRm9ybWF0KCdlbicpLmZvcm1hdCgxMjM0LjU2NykiLCAiJzEsMjM0LjU2NyciKTsKIHNob3Vs
ZEJlKCJJbnRsLk51bWJlckZvcm1hdCgnZXMnKS5mb3JtYXQoMTIzNC41NjcpIiwgIicxLjIzNCw1
NjcnIik7Ci1zaG91bGRCZSgiSW50bC5OdW1iZXJGb3JtYXQoJ2ZyJykuZm9ybWF0KDEyMzQuNTY3
KSIsICInMcKgMjM0LDU2NyciKTsKK3Nob3VsZEJlKCJJbnRsLk51bWJlckZvcm1hdCgnZnInKS5m
b3JtYXQoMTIzNC41NjcpIiwgIicxXFx4QTAyMzQsNTY3JyIpOwogCiAvLyBUZXN0IG51bWJlcmlu
ZyBzeXN0ZW1zLgogc2hvdWxkQmUoIkludGwuTnVtYmVyRm9ybWF0KCdlbi11LW51LWxhdG4nKS5m
b3JtYXQoMTIzNC41NjcpIiwgIicxLDIzNC41NjcnIik7CkBAIC0zNDQsNyArMzQyLDcgQEAgc2hv
dWxkQmUoIkludGwuTnVtYmVyRm9ybWF0KCdlbicsIHttYXhpbXVtU2lnbmlmaWNhbnREaWdpdHM6
IDR9KS5mb3JtYXQoMTIzNDU2NykKIC8vIFRlc3QgdGhlIHVzZUdyb3VwaW5nIG9wdGlvbi4KIHNo
b3VsZEJlKCJJbnRsLk51bWJlckZvcm1hdCgnZW4nLCB7dXNlR3JvdXBpbmc6IHRydWV9KS5mb3Jt
YXQoMTIzNDU2Ny4xMjMpIiwgIicxLDIzNCw1NjcuMTIzJyIpOwogc2hvdWxkQmUoIkludGwuTnVt
YmVyRm9ybWF0KCdlcycsIHt1c2VHcm91cGluZzogdHJ1ZX0pLmZvcm1hdCgxMjM0NTY3LjEyMyki
LCAiJzEuMjM0LjU2NywxMjMnIik7Ci1zaG91bGRCZSgiSW50bC5OdW1iZXJGb3JtYXQoJ2ZyJywg
e3VzZUdyb3VwaW5nOiB0cnVlfSkuZm9ybWF0KDEyMzQ1NjcuMTIzKSIsICInMcKgMjM0wqA1Njcs
MTIzJyIpOworc2hvdWxkQmUoIkludGwuTnVtYmVyRm9ybWF0KCdmcicsIHt1c2VHcm91cGluZzog
dHJ1ZX0pLmZvcm1hdCgxMjM0NTY3LjEyMykiLCAiJzFcXHhBMDIzNFxceEEwNTY3LDEyMyciKTsK
IHNob3VsZEJlKCJJbnRsLk51bWJlckZvcm1hdCgnZW4nLCB7dXNlR3JvdXBpbmc6IGZhbHNlfSku
Zm9ybWF0KDEyMzQ1NjcuMTIzKSIsICInMTIzNDU2Ny4xMjMnIik7CiBzaG91bGRCZSgiSW50bC5O
dW1iZXJGb3JtYXQoJ2VzJywge3VzZUdyb3VwaW5nOiBmYWxzZX0pLmZvcm1hdCgxMjM0NTY3LjEy
MykiLCAiJzEyMzQ1NjcsMTIzJyIpOwogc2hvdWxkQmUoIkludGwuTnVtYmVyRm9ybWF0KCdmcics
IHt1c2VHcm91cGluZzogZmFsc2V9KS5mb3JtYXQoMTIzNDU2Ny4xMjMpIiwgIicxMjM0NTY3LDEy
MyciKTsKQEAgLTM1NCwxNiArMzUyLDE3IEBAIHNob3VsZEJlKCJJbnRsLk51bWJlckZvcm1hdCgn
ZnInLCB7dXNlR3JvdXBpbmc6IGZhbHNlfSkuZm9ybWF0KDEyMzQ1NjcuMTIzKSIsICInCiBzaG91
bGRCZSgiSW50bC5OdW1iZXJGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucy5sZW5ndGgi
LCAiMCIpOwogCiAvLyBSZXR1cm5zIGEgbmV3IG9iamVjdCB3aG9zZSBwcm9wZXJ0aWVzIGFuZCBh
dHRyaWJ1dGVzIGFyZSBzZXQgYXMgaWYgY29uc3RydWN0ZWQgYnkgYW4gb2JqZWN0IGxpdGVyYWwu
Ci1zaG91bGRCZVR5cGUoIkludGwuTnVtYmVyRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlv
bnMoKSIsICJPYmplY3QiKTsKK3Nob3VsZEJlVHlwZSgiZGVmYXVsdE5Gb3JtYXQucmVzb2x2ZWRP
cHRpb25zKCkiLCAiT2JqZWN0Iik7CiAKIC8vIFJldHVybnMgYSBuZXcgb2JqZWN0IGVhY2ggdGlt
ZS4KLXNob3VsZEJlRmFsc2UoIkludGwuTnVtYmVyRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9w
dGlvbnMoKSA9PT0gSW50bC5OdW1iZXJGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygp
Iik7CitzaG91bGRCZUZhbHNlKCJkZWZhdWx0TkZvcm1hdC5yZXNvbHZlZE9wdGlvbnMoKSA9PT0g
ZGVmYXVsdE5Gb3JtYXQucmVzb2x2ZWRPcHRpb25zKCkiKTsKIAogLy8gVGhyb3dzIG9uIG5vbi1O
dW1iZXJGb3JtYXQgdGhpcy4KK3Nob3VsZFRocm93KCJJbnRsLk51bWJlckZvcm1hdC5wcm90b3R5
cGUucmVzb2x2ZWRPcHRpb25zKCkiLCAiJ1R5cGVFcnJvcjogSW50bC5OdW1iZXJGb3JtYXQucHJv
dG90eXBlLnJlc29sdmVkT3B0aW9ucyBjYWxsZWQgb24gdmFsdWUgdGhhdFxcJ3Mgbm90IGFuIG9i
amVjdCBpbml0aWFsaXplZCBhcyBhIE51bWJlckZvcm1hdCciKTsKIHNob3VsZFRocm93KCJJbnRs
Lk51bWJlckZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zLmNhbGwoNSkiLCAiJ1R5cGVF
cnJvcjogSW50bC5OdW1iZXJGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucyBjYWxsZWQg
b24gdmFsdWUgdGhhdFxcJ3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXplZCBhcyBhIE51bWJlckZv
cm1hdCciKTsKIAogLy8gUmV0dXJucyB0aGUgZGVmYXVsdCBvcHRpb25zLgotc2hvdWxkQmUoInZh
ciBvcHRpb25zID0gSW50bC5OdW1iZXJGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygp
OyBkZWxldGUgb3B0aW9uc1snbG9jYWxlJ107IEpTT04uc3RyaW5naWZ5KG9wdGlvbnMpIiwgJ1wn
eyJudW1iZXJpbmdTeXN0ZW0iOiJsYXRuIiwic3R5bGUiOiJkZWNpbWFsIiwibWluaW11bUludGVn
ZXJEaWdpdHMiOjEsIm1pbmltdW1GcmFjdGlvbkRpZ2l0cyI6MCwibWF4aW11bUZyYWN0aW9uRGln
aXRzIjozLCJ1c2VHcm91cGluZyI6dHJ1ZX1cJycpOworc2hvdWxkQmUoInZhciBvcHRpb25zID0g
ZGVmYXVsdE5Gb3JtYXQucmVzb2x2ZWRPcHRpb25zKCk7IGRlbGV0ZSBvcHRpb25zWydsb2NhbGUn
XTsgSlNPTi5zdHJpbmdpZnkob3B0aW9ucykiLCAnXCd7Im51bWJlcmluZ1N5c3RlbSI6ImxhdG4i
LCJzdHlsZSI6ImRlY2ltYWwiLCJtaW5pbXVtSW50ZWdlckRpZ2l0cyI6MSwibWluaW11bUZyYWN0
aW9uRGlnaXRzIjowLCJtYXhpbXVtRnJhY3Rpb25EaWdpdHMiOjMsInVzZUdyb3VwaW5nIjp0cnVl
fVwnJyk7CiAKIC8vIExlZ2FjeSBjb21wYXRpYmlsaXR5IHdpdGggRUNNQS00MDIgMS4wCiBsZXQg
bGVnYWN5SW5pdCA9ICJ2YXIgbGVnYWN5ID0gT2JqZWN0LmNyZWF0ZShJbnRsLk51bWJlckZvcm1h
dC5wcm90b3R5cGUpOyI7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>302762</attachid>
            <date>2017-02-25 13:00:05 -0800</date>
            <delta_ts>2017-04-13 16:51:44 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-168178-20170225135713.patch</filename>
            <type>text/plain</type>
            <size>50440</size>
            <attacher name="Andy VanWagoner">andy</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjEzMDA2CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA3
OTRhZTRiODEyOGExYjYwNzE4ZjQ2MTY4YjhjOTNiODA4YjRkNDE0Li5iODFlMzg3MGUyOWU1ZWUy
NzZiOTYzYWJjZDM4M2E1NTVkOTQ5MDlhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyNCBAQAorMjAxNy0wMi0yNSAgQW5keSBWYW5XYWdvbmVyICA8dGhldGFsZWNyYWZ0ZXJA
Z21haWwuY29tPgorCisgICAgICAgIENoYW5nZSBJbnRsIHByb3RvdHlwZXMgdG8gcGxhaW4gb2Jq
ZWN0cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY4
MTc4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBi
dWlsdGlucy9TdHJpbmdQcm90b3R5cGUuanM6CisgICAgICAgIChsb2NhbGVDb21wYXJlKTogQ3Jl
YXRlIGRlZmF1bHQgQ29sbGF0b3Igb25jZSBpbnN0ZWFkIG9mIHVzaW5nIHByb3RvdHlwZS4KKyAg
ICAgICAgKiBydW50aW1lL0ludGxDb2xsYXRvclByb3RvdHlwZS5jcHA6CisgICAgICAgIChKU0M6
OkludGxDb2xsYXRvclByb3RvdHlwZTo6SW50bENvbGxhdG9yUHJvdG90eXBlKToKKyAgICAgICAg
KiBydW50aW1lL0ludGxDb2xsYXRvclByb3RvdHlwZS5oOgorICAgICAgICAqIHJ1bnRpbWUvSW50
bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1l
Rm9ybWF0UHJvdG90eXBlOjpJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUpOgorICAgICAgICAq
IHJ1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmg6CisgICAgICAgICogcnVudGlt
ZS9JbnRsTnVtYmVyRm9ybWF0UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKEpTQzo6SW50bE51bWJl
ckZvcm1hdFByb3RvdHlwZTo6SW50bE51bWJlckZvcm1hdFByb3RvdHlwZSk6CisgICAgICAgICog
cnVudGltZS9JbnRsTnVtYmVyRm9ybWF0UHJvdG90eXBlLmg6CisgICAgICAgICogcnVudGltZS9J
bnRsT2JqZWN0LmNwcDoKKyAgICAgICAgKEpTQzo6SW50bE9iamVjdDo6ZmluaXNoQ3JlYXRpb24p
OiBEb24ndCBzZXQgY29uc3RydWN0b3Igb24gZWFjaCBwcm90b3R5cGUuCisKIDIwMTctMDItMjQg
IEpGIEJhc3RpZW4gIDxqZmJhc3RpZW5AYXBwbGUuY29tPgogCiAgICAgICAgIFdlYkFzc2VtYmx5
OiBtaXNjZWxsYW5lb3VzIHNwZWMgZml4ZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9idWlsdGlucy9TdHJpbmdQcm90b3R5cGUuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
YnVpbHRpbnMvU3RyaW5nUHJvdG90eXBlLmpzCmluZGV4IGM5Y2RmY2YwMmE3NWFhZTA1YTZjOTBl
ZjIzNTkxZWJlMzk4N2ZmODQuLjdiZGIzMGRjZjcxNjhkOTU3YWNhMzhkN2YxNjY4N2FiNTAwZWI5
NzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9idWlsdGlucy9TdHJpbmdQcm90
b3R5cGUuanMKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J1aWx0aW5zL1N0cmluZ1Byb3Rv
dHlwZS5qcwpAQCAtMjMyLDYgKzIzMiwxMiBAQCBmdW5jdGlvbiByZXBsYWNlKHNlYXJjaCwgcmVw
bGFjZSkKICAgICByZXR1cm4gdGhpc1N0cmluZy5AcmVwbGFjZVVzaW5nU3RyaW5nU2VhcmNoKHNl
YXJjaFN0cmluZywgcmVwbGFjZSk7CiB9CiAgICAgCitAZ2xvYmFsUHJpdmF0ZQorZnVuY3Rpb24g
Z2V0RGVmYXVsdENvbGxhdG9yKCkKK3sKKyAgICByZXR1cm4gQGdldERlZmF1bHRDb2xsYXRvci5j
b2xsYXRvciB8fCAoQGdldERlZmF1bHRDb2xsYXRvci5jb2xsYXRvciA9IG5ldyBAQ29sbGF0b3Io
KSk7Cit9CisgICAgCiBmdW5jdGlvbiBsb2NhbGVDb21wYXJlKHRoYXQvKiwgbG9jYWxlcywgb3B0
aW9ucyAqLykKIHsKICAgICAidXNlIHN0cmljdCI7CkBAIC0yNTEsMTEgKzI1NywxMSBAQCBmdW5j
dGlvbiBsb2NhbGVDb21wYXJlKHRoYXQvKiwgbG9jYWxlcywgb3B0aW9ucyAqLykKICAgICAvLyA1
LiBSZXR1cm5JZkFicnVwdChUaGF0KS4KICAgICB2YXIgdGhhdFN0cmluZyA9IEB0b1N0cmluZyh0
aGF0KTsKIAotICAgIC8vIEF2b2lkIGNyZWF0aW5nIGEgY29sbGF0b3IgZm9yIGRlZmF1bHRzLgor
ICAgIC8vIEF2b2lkIGNyZWF0aW5nIGEgbmV3IGNvbGxhdG9yIGV2ZXJ5IHRpbWUgZm9yIGRlZmF1
bHRzLgogICAgIHZhciBsb2NhbGVzID0gQGFyZ3VtZW50KDEpOwogICAgIHZhciBvcHRpb25zID0g
QGFyZ3VtZW50KDIpOwogICAgIGlmIChsb2NhbGVzID09PSBAdW5kZWZpbmVkICYmIG9wdGlvbnMg
PT09IEB1bmRlZmluZWQpCi0gICAgICAgIHJldHVybiBAQ29sbGF0b3IucHJvdG90eXBlLmNvbXBh
cmUodGhpc1N0cmluZywgdGhhdFN0cmluZyk7CisgICAgICAgIHJldHVybiBAZ2V0RGVmYXVsdENv
bGxhdG9yKCkuY29tcGFyZSh0aGlzU3RyaW5nLCB0aGF0U3RyaW5nKTsKIAogICAgIC8vIDYuIExl
dCBjb2xsYXRvciBiZSBDb25zdHJ1Y3QoJUNvbGxhdG9yJSwgwqtsb2NhbGVzLCBvcHRpb25zwrsp
LgogICAgIC8vIDcuIFJldHVybklmQWJydXB0KGNvbGxhdG9yKS4KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxDb2xsYXRvclByb3RvdHlwZS5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsQ29sbGF0b3JQcm90b3R5cGUuY3BwCmluZGV4
IDk5MjQ3MjExMmE0N2EyOWE4Y2JkMDkxN2VjM2Y1M2ZkYWRhZWY1YzMuLjk4ZWE2YzRkZmEyMGMz
OWY0NDg0YTM3MWJlYTQ2ODk0OGVkYmUxM2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0ludGxDb2xsYXRvclByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSW50bENvbGxhdG9yUHJvdG90eXBlLmNwcApAQCAtNDUsNyArNDUs
NyBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsQ29sbGF0b3JQcm90
b3R5cGVGdW5jUmVzb2x2ZWRPcHRpb25zKEV4ZQogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3Qg
Q2xhc3NJbmZvIEludGxDb2xsYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiT2JqZWN0IiwgJklu
dGxDb2xsYXRvcjo6c19pbmZvLCAmY29sbGF0b3JQcm90b3R5cGVUYWJsZSwgQ1JFQVRFX01FVEhP
RF9UQUJMRShJbnRsQ29sbGF0b3JQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSW50bENv
bGxhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAmY29s
bGF0b3JQcm90b3R5cGVUYWJsZSwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsQ29sbGF0b3JQcm90
b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgSW50bENvbGxhdG9yUHJvdG90eXBlLmx1dC5oCiBA
YmVnaW4gY29sbGF0b3JQcm90b3R5cGVUYWJsZQpAQCAtNjcsNyArNjcsNyBAQCBTdHJ1Y3R1cmUq
IEludGxDb2xsYXRvclByb3RvdHlwZTo6Y3JlYXRlU3RydWN0dXJlKFZNJiB2bSwgSlNHbG9iYWxP
YmplY3QqIGdsb2JhbAogfQogCiBJbnRsQ29sbGF0b3JQcm90b3R5cGU6OkludGxDb2xsYXRvclBy
b3RvdHlwZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQotICAgIDogSW50bENvbGxhdG9y
KHZtLCBzdHJ1Y3R1cmUpCisgICAgOiBCYXNlKHZtLCBzdHJ1Y3R1cmUpCiB7CiB9CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxDb2xsYXRvclByb3RvdHlw
ZS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bENvbGxhdG9yUHJvdG90eXBl
LmgKaW5kZXggODMzMmUxM2UyOWQ1ZmZkMzJmMjg3MzgxYjZlMGQ0MjM1MTJiYTQxZi4uMWJkMjFh
YWIzZWNiMDYzYzcxYzhhMDVmMmEwZTg1NDI2YTg3OTgwNiAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bENvbGxhdG9yUHJvdG90eXBlLmgKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bENvbGxhdG9yUHJvdG90eXBlLmgKQEAgLTMyLDkg
KzMyLDkgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNsYXNzIEludGxDb2xsYXRvclByb3RvdHlw
ZSA6IHB1YmxpYyBJbnRsQ29sbGF0b3IgeworY2xhc3MgSW50bENvbGxhdG9yUHJvdG90eXBlIDog
cHVibGljIEpTTm9uRmluYWxPYmplY3QgewogcHVibGljOgotICAgIHR5cGVkZWYgSW50bENvbGxh
dG9yIEJhc2U7CisgICAgdHlwZWRlZiBKU05vbkZpbmFsT2JqZWN0IEJhc2U7CiAgICAgc3RhdGlj
IGNvbnN0IHVuc2lnbmVkIFN0cnVjdHVyZUZsYWdzID0gQmFzZTo6U3RydWN0dXJlRmxhZ3MgfCBI
YXNTdGF0aWNQcm9wZXJ0eVRhYmxlOwogCiAgICAgc3RhdGljIEludGxDb2xsYXRvclByb3RvdHlw
ZSogY3JlYXRlKFZNJiwgSlNHbG9iYWxPYmplY3QqLCBTdHJ1Y3R1cmUqKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdFByb3RvdHlw
ZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRQ
cm90b3R5cGUuY3BwCmluZGV4IGM5MDFmOTc2N2ZjNWUyZThlNmFhNWM1MTI1N2U4NTU1M2M1OTFh
NGUuLjU0YTczYjY0NmI3MjE3ZTYwYzYzNWZkNWY3M2FjYWI1OThkMWU3YzIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdFByb3RvdHlw
ZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9y
bWF0UHJvdG90eXBlLmNwcApAQCAtNDksNyArNDksNyBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUg
SlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGVGdW5jUmVzb2x2ZWRPcHRp
bwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEludGxEYXRlVGltZUZvcm1h
dFByb3RvdHlwZTo6c19pbmZvID0geyAiT2JqZWN0IiwgJkludGxEYXRlVGltZUZvcm1hdDo6c19p
bmZvLCAmZGF0ZVRpbWVGb3JtYXRQcm90b3R5cGVUYWJsZSwgQ1JFQVRFX01FVEhPRF9UQUJMRShJ
bnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSW50bERhdGVU
aW1lRm9ybWF0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAm
ZGF0ZVRpbWVGb3JtYXRQcm90b3R5cGVUYWJsZSwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsRGF0
ZVRpbWVGb3JtYXRQcm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgSW50bERhdGVUaW1lRm9y
bWF0UHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gZGF0ZVRpbWVGb3JtYXRQcm90b3R5cGVUYWJsZQpA
QCAtNzEsNyArNzEsNyBAQCBTdHJ1Y3R1cmUqIEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZTo6
Y3JlYXRlU3RydWN0dXJlKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqCiB9CiAKIEludGxEYXRlVGlt
ZUZvcm1hdFByb3RvdHlwZTo6SW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlKFZNJiB2bSwgU3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUpCi0gICAgOiBJbnRsRGF0ZVRpbWVGb3JtYXQodm0sIHN0cnVjdHVy
ZSkKKyAgICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkKIHsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmggYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUu
aAppbmRleCBkMDVkMGYyZTNiZDIyNDgzYWM2N2NiMmI2Mjc3ZDViZGYyYTUxZTkwLi45OTY4YTI2
YTIyMWRkOGJiNDIyNDBkOGE2NjhmMTU4MzI1YjcyZWYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUuaAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUu
aApAQCAtMzIsOSArMzIsOSBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY2xhc3MgSW50bERhdGVU
aW1lRm9ybWF0UHJvdG90eXBlIDogcHVibGljIEludGxEYXRlVGltZUZvcm1hdCB7CitjbGFzcyBJ
bnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUgOiBwdWJsaWMgSlNOb25GaW5hbE9iamVjdCB7CiBw
dWJsaWM6Ci0gICAgdHlwZWRlZiBJbnRsRGF0ZVRpbWVGb3JtYXQgQmFzZTsKKyAgICB0eXBlZGVm
IEpTTm9uRmluYWxPYmplY3QgQmFzZTsKICAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgU3RydWN0
dXJlRmxhZ3MgPSBCYXNlOjpTdHJ1Y3R1cmVGbGFncyB8IEhhc1N0YXRpY1Byb3BlcnR5VGFibGU7
CiAKICAgICBzdGF0aWMgSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlKiBjcmVhdGUoVk0mLCBK
U0dsb2JhbE9iamVjdCosIFN0cnVjdHVyZSopOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSW50bE51bWJlckZvcm1hdFByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0UHJvdG90eXBlLmNwcAppbmRleCBk
NmIwMjczNThhZmE2YjdkYjdjMWZkOTY2NmUzMGViZGEwZjU5NmQ4Li43OTViYWE2MDQyN2U0YWQ2
NDkxZjZhNDJmN2UwN2FhOGJmMzEyZjgxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0UHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0UHJvdG90eXBlLmNwcApAQCAtNDcs
NyArNDcsNyBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsTnVtYmVy
Rm9ybWF0UHJvdG90eXBlRnVuY1Jlc29sdmVkT3B0aW9ucwogCiBuYW1lc3BhY2UgSlNDIHsKIAot
Y29uc3QgQ2xhc3NJbmZvIEludGxOdW1iZXJGb3JtYXRQcm90b3R5cGU6OnNfaW5mbyA9IHsgIk9i
amVjdCIsICZJbnRsTnVtYmVyRm9ybWF0OjpzX2luZm8sICZudW1iZXJGb3JtYXRQcm90b3R5cGVU
YWJsZSwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsTnVtYmVyRm9ybWF0UHJvdG90eXBlKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIEludGxOdW1iZXJGb3JtYXRQcm90b3R5cGU6OnNfaW5mbyA9IHsgIk9i
amVjdCIsICZCYXNlOjpzX2luZm8sICZudW1iZXJGb3JtYXRQcm90b3R5cGVUYWJsZSwgQ1JFQVRF
X01FVEhPRF9UQUJMRShJbnRsTnVtYmVyRm9ybWF0UHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2Ug
Zm9yIEludGxOdW1iZXJGb3JtYXRQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBudW1iZXJGb3JtYXRQ
cm90b3R5cGVUYWJsZQpAQCAtNjksNyArNjksNyBAQCBTdHJ1Y3R1cmUqIEludGxOdW1iZXJGb3Jt
YXRQcm90b3R5cGU6OmNyZWF0ZVN0cnVjdHVyZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbAog
fQogCiBJbnRsTnVtYmVyRm9ybWF0UHJvdG90eXBlOjpJbnRsTnVtYmVyRm9ybWF0UHJvdG90eXBl
KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCi0gICAgOiBJbnRsTnVtYmVyRm9ybWF0KHZt
LCBzdHJ1Y3R1cmUpCisgICAgOiBCYXNlKHZtLCBzdHJ1Y3R1cmUpCiB7CiB9CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxOdW1iZXJGb3JtYXRQcm90b3R5
cGUuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxOdW1iZXJGb3JtYXRQcm90
b3R5cGUuaAppbmRleCAzYTYxODI1ZjlkOTAzZTZmMGZjMjQ2YzgzZjQ3MzliZTZkYmI3NTZhLi40
MDJiNGVmYmRkNThlNTNkNTY1NmEwMzk4OWU2M2I2Njc0YzNhOWFjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0UHJvdG90eXBlLmgKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE51bWJlckZvcm1hdFByb3RvdHlw
ZS5oCkBAIC0zMiw5ICszMiw5IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jbGFzcyBJbnRsTnVt
YmVyRm9ybWF0UHJvdG90eXBlIDogcHVibGljIEludGxOdW1iZXJGb3JtYXQgeworY2xhc3MgSW50
bE51bWJlckZvcm1hdFByb3RvdHlwZSA6IHB1YmxpYyBKU05vbkZpbmFsT2JqZWN0IHsKIHB1Ymxp
YzoKLSAgICB0eXBlZGVmIEludGxOdW1iZXJGb3JtYXQgQmFzZTsKKyAgICB0eXBlZGVmIEpTTm9u
RmluYWxPYmplY3QgQmFzZTsKICAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgU3RydWN0dXJlRmxh
Z3MgPSBCYXNlOjpTdHJ1Y3R1cmVGbGFncyB8IEhhc1N0YXRpY1Byb3BlcnR5VGFibGU7CiAKICAg
ICBzdGF0aWMgSW50bE51bWJlckZvcm1hdFByb3RvdHlwZSogY3JlYXRlKFZNJiwgSlNHbG9iYWxP
YmplY3QqLCBTdHJ1Y3R1cmUqKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0ludGxPYmplY3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50
bE9iamVjdC5jcHAKaW5kZXggMDA5N2NhYjc5ZmVhMTkxODJlZjczNjMzYzNlZDkxMzQzNjljYWRh
Yy4uNzFjMTQ4YzhjYmM0ODBiY2FmOTRlZDFjMjc3ODFiODc5MmE3MzZiMSAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE9iamVjdC5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE9iamVjdC5jcHAKQEAgLTkyLDIyICs5MiwxNiBA
QCB2b2lkIEludGxPYmplY3Q6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCkKICAgICBTdHJ1Y3R1cmUqIGNvbGxhdG9yU3RydWN0dXJlID0gSW50bENv
bGxhdG9yOjpjcmVhdGVTdHJ1Y3R1cmUodm0sIGdsb2JhbE9iamVjdCwgY29sbGF0b3JQcm90b3R5
cGUpOwogICAgIEludGxDb2xsYXRvckNvbnN0cnVjdG9yKiBjb2xsYXRvckNvbnN0cnVjdG9yID0g
SW50bENvbGxhdG9yQ29uc3RydWN0b3I6OmNyZWF0ZSh2bSwgSW50bENvbGxhdG9yQ29uc3RydWN0
b3I6OmNyZWF0ZVN0cnVjdHVyZSh2bSwgZ2xvYmFsT2JqZWN0LCBnbG9iYWxPYmplY3QtPmZ1bmN0
aW9uUHJvdG90eXBlKCkpLCBjb2xsYXRvclByb3RvdHlwZSwgY29sbGF0b3JTdHJ1Y3R1cmUpOwog
Ci0gICAgY29sbGF0b3JQcm90b3R5cGUtPnB1dERpcmVjdFdpdGhvdXRUcmFuc2l0aW9uKHZtLCB2
bS5wcm9wZXJ0eU5hbWVzLT5jb25zdHJ1Y3RvciwgY29sbGF0b3JDb25zdHJ1Y3RvciwgRG9udEVu
dW0pOwotCiAgICAgLy8gU2V0IHVwIE51bWJlckZvcm1hdC4KICAgICBJbnRsTnVtYmVyRm9ybWF0
UHJvdG90eXBlKiBudW1iZXJGb3JtYXRQcm90b3R5cGUgPSBJbnRsTnVtYmVyRm9ybWF0UHJvdG90
eXBlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgSW50bE51bWJlckZvcm1hdFByb3RvdHlwZTo6
Y3JlYXRlU3RydWN0dXJlKHZtLCBnbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdC0+b2JqZWN0UHJv
dG90eXBlKCkpKTsKICAgICBTdHJ1Y3R1cmUqIG51bWJlckZvcm1hdFN0cnVjdHVyZSA9IEludGxO
dW1iZXJGb3JtYXQ6OmNyZWF0ZVN0cnVjdHVyZSh2bSwgZ2xvYmFsT2JqZWN0LCBudW1iZXJGb3Jt
YXRQcm90b3R5cGUpOwogICAgIEludGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3RvciogbnVtYmVyRm9y
bWF0Q29uc3RydWN0b3IgPSBJbnRsTnVtYmVyRm9ybWF0Q29uc3RydWN0b3I6OmNyZWF0ZSh2bSwg
SW50bE51bWJlckZvcm1hdENvbnN0cnVjdG9yOjpjcmVhdGVTdHJ1Y3R1cmUodm0sIGdsb2JhbE9i
amVjdCwgZ2xvYmFsT2JqZWN0LT5mdW5jdGlvblByb3RvdHlwZSgpKSwgbnVtYmVyRm9ybWF0UHJv
dG90eXBlLCBudW1iZXJGb3JtYXRTdHJ1Y3R1cmUpOwogCi0gICAgbnVtYmVyRm9ybWF0UHJvdG90
eXBlLT5wdXREaXJlY3RXaXRob3V0VHJhbnNpdGlvbih2bSwgdm0ucHJvcGVydHlOYW1lcy0+Y29u
c3RydWN0b3IsIG51bWJlckZvcm1hdENvbnN0cnVjdG9yLCBEb250RW51bSk7Ci0KICAgICAvLyBT
ZXQgdXAgRGF0ZVRpbWVGb3JtYXQuCiAgICAgSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlKiBk
YXRlVGltZUZvcm1hdFByb3RvdHlwZSA9IEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZTo6Y3Jl
YXRlKHZtLCBnbG9iYWxPYmplY3QsIEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZTo6Y3JlYXRl
U3RydWN0dXJlKHZtLCBnbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdC0+b2JqZWN0UHJvdG90eXBl
KCkpKTsKICAgICBTdHJ1Y3R1cmUqIGRhdGVUaW1lRm9ybWF0U3RydWN0dXJlID0gSW50bERhdGVU
aW1lRm9ybWF0OjpjcmVhdGVTdHJ1Y3R1cmUodm0sIGdsb2JhbE9iamVjdCwgZGF0ZVRpbWVGb3Jt
YXRQcm90b3R5cGUpOwogICAgIEludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yKiBkYXRlVGlt
ZUZvcm1hdENvbnN0cnVjdG9yID0gSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3I6OmNyZWF0
ZSh2bSwgSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3I6OmNyZWF0ZVN0cnVjdHVyZSh2bSwg
Z2xvYmFsT2JqZWN0LCBnbG9iYWxPYmplY3QtPmZ1bmN0aW9uUHJvdG90eXBlKCkpLCBkYXRlVGlt
ZUZvcm1hdFByb3RvdHlwZSwgZGF0ZVRpbWVGb3JtYXRTdHJ1Y3R1cmUpOwogCi0gICAgZGF0ZVRp
bWVGb3JtYXRQcm90b3R5cGUtPnB1dERpcmVjdFdpdGhvdXRUcmFuc2l0aW9uKHZtLCB2bS5wcm9w
ZXJ0eU5hbWVzLT5jb25zdHJ1Y3RvciwgZGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3RvciwgRG9udEVu
dW0pOwotCiAgICAgLy8gOC4xIFByb3BlcnRpZXMgb2YgdGhlIEludGwgT2JqZWN0IChFQ01BLTQw
MiAyLjApCiAgICAgcHV0RGlyZWN0V2l0aG91dFRyYW5zaXRpb24odm0sIHZtLnByb3BlcnR5TmFt
ZXMtPkNvbGxhdG9yLCBjb2xsYXRvckNvbnN0cnVjdG9yLCBEb250RW51bSk7CiAgICAgcHV0RGly
ZWN0V2l0aG91dFRyYW5zaXRpb24odm0sIHZtLnByb3BlcnR5TmFtZXMtPk51bWJlckZvcm1hdCwg
bnVtYmVyRm9ybWF0Q29uc3RydWN0b3IsIERvbnRFbnVtKTsKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBiOTI4ODI2NGQ5Mjcz
NWRmNmNhMDhmY2YwOWYzZDMzMzU3MDIzOTgzLi4wOWE0MTE4NTg2NjAzNzdiZTBhMzk5MWM4NGZl
M2U3NjBjMWUyYTVmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTctMDItMjUgIEFuZHkgVmFu
V2Fnb25lciAgPHRoZXRhbGVjcmFmdGVyQGdtYWlsLmNvbT4KKworICAgICAgICBDaGFuZ2UgSW50
bCBwcm90b3R5cGVzIHRvIHBsYWluIG9iamVjdHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE2ODE3OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgICoganMvaW50bC1jb2xsYXRvci1leHBlY3RlZC50eHQ6Cisg
ICAgICAgICoganMvaW50bC1kYXRldGltZWZvcm1hdC1leHBlY3RlZC50eHQ6CisgICAgICAgICog
anMvaW50bC1udW1iZXJmb3JtYXQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGpzL3NjcmlwdC10
ZXN0cy9pbnRsLWNvbGxhdG9yLmpzOgorICAgICAgICAqIGpzL3NjcmlwdC10ZXN0cy9pbnRsLWRh
dGV0aW1lZm9ybWF0LmpzOgorICAgICAgICAqIGpzL3NjcmlwdC10ZXN0cy9pbnRsLW51bWJlcmZv
cm1hdC5qczoKKwogMjAxNy0wMi0yNSAgTWljaGFlbCBDYXRhbnphcm8gIDxtY2F0YW56YXJvQGln
YWxpYS5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCBHVEsgdGVzdCBnYXJkZW5pbmcKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2pzL2ludGwtY29sbGF0b3ItZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvanMvaW50bC1jb2xsYXRvci1leHBlY3RlZC50eHQKaW5kZXggNWM1OGE3NDJkOGNjODhl
ZjdlMTRhNjkyYmE2MjYwMzk5MTQyZWUxZS4uY2Q4YzE0MTdiYzY1ODQ3MzkwYzZhNjQ2MTAyYTVk
OGVhOGU1ODM4YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvanMvaW50bC1jb2xsYXRvci1leHBl
Y3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvanMvaW50bC1jb2xsYXRvci1leHBlY3RlZC50eHQK
QEAgLTEyNSwyOCArMTI1LDI3IEBAIFBBU1MgSW50bC5Db2xsYXRvci5zdXBwb3J0ZWRMb2NhbGVz
T2YoJ3gtMTIzNDUtMTIzNDUtZW4tVVMnKSBkaWQgbm90IHRocm93IGV4Y2VwCiBQQVNTIEludGwu
Q29sbGF0b3Iuc3VwcG9ydGVkTG9jYWxlc09mKCd4LWVuLVVTLTEyMzQ1LTEyMzQ1JykgZGlkIG5v
dCB0aHJvdyBleGNlcHRpb24uCiBQQVNTIEludGwuQ29sbGF0b3Iuc3VwcG9ydGVkTG9jYWxlc09m
KCd4LWVuLXUtZm9vJykgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCiBQQVNTIEludGwuQ29sbGF0
b3Iuc3VwcG9ydGVkTG9jYWxlc09mKCd4LWVuLXUtZm9vLXUtYmFyJykgZGlkIG5vdCB0aHJvdyBl
eGNlcHRpb24uCi1QQVNTIEludGwuQ29sbGF0b3IucHJvdG90eXBlLmNvbnN0cnVjdG9yIGlzIElu
dGwuQ29sbGF0b3IKLVBBU1MgSW50bC5Db2xsYXRvci5wcm90b3R5cGUuY29tcGFyZSBpcyBhbiBp
bnN0YW5jZSBvZiBGdW5jdGlvbgorUEFTUyBJbnRsLkNvbGxhdG9yLnByb3RvdHlwZS5jb25zdHJ1
Y3RvciBpcyBPYmplY3QKK1BBU1MgT2JqZWN0LmdldFByb3RvdHlwZU9mKEludGwuQ29sbGF0b3Iu
cHJvdG90eXBlKSBpcyBPYmplY3QucHJvdG90eXBlCitQQVNTIE9iamVjdC5wcm90b3R5cGUudG9T
dHJpbmcuY2FsbChJbnRsLkNvbGxhdG9yLnByb3RvdHlwZSkgaXMgJ1tvYmplY3QgT2JqZWN0XScK
K1BBU1MgZGVmYXVsdENvbGxhdG9yLmNvbXBhcmUgaXMgYW4gaW5zdGFuY2Ugb2YgRnVuY3Rpb24K
IFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihJbnRsLkNvbGxhdG9yLnByb3Rv
dHlwZSwgJ2NvbXBhcmUnKS5nZXQgaXMgYW4gaW5zdGFuY2Ugb2YgRnVuY3Rpb24KIFBBU1MgT2Jq
ZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihJbnRsLkNvbGxhdG9yLnByb3RvdHlwZSwgJ2Nv
bXBhcmUnKS5zZXQgaXMgdW5kZWZpbmVkCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2Ny
aXB0b3IoSW50bC5Db2xsYXRvci5wcm90b3R5cGUsICdjb21wYXJlJykuZW51bWVyYWJsZSBpcyBm
YWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEludGwuQ29sbGF0b3Iu
cHJvdG90eXBlLCAnY29tcGFyZScpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCi1QQVNTIEludGwuQ29s
bGF0b3IucHJvdG90eXBlLmNvbXBhcmUubGVuZ3RoIGlzIDIKK1BBU1MgSW50bC5Db2xsYXRvcigp
LmNvbXBhcmUubGVuZ3RoIGlzIDIKK1BBU1MgSW50bC5Db2xsYXRvci5wcm90b3R5cGUuY29tcGFy
ZSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBJbnRsLkNvbGxhdG9yLnByb3RvdHlwZS5jb21w
YXJlIGNhbGxlZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXplZCBhcyBh
IENvbGxhdG9yLgogUEFTUyBPYmplY3QuZGVmaW5lUHJvcGVydHkoe30sICdjb21wYXJlJywgT2Jq
ZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihJbnRsLkNvbGxhdG9yLnByb3RvdHlwZSwgJ2Nv
bXBhcmUnKSkuY29tcGFyZSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBJbnRsLkNvbGxhdG9y
LnByb3RvdHlwZS5jb21wYXJlIGNhbGxlZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGFuIG9iamVjdCBp
bml0aWFsaXplZCBhcyBhIENvbGxhdG9yLgotUEFTUyBJbnRsLkNvbGxhdG9yLnByb3RvdHlwZS5j
b21wYXJlICE9PSBJbnRsLkNvbGxhdG9yKCkuY29tcGFyZSBpcyB0cnVlCiBQQVNTIG5ldyBJbnRs
LkNvbGxhdG9yKCkuY29tcGFyZSAhPT0gbmV3IEludGwuQ29sbGF0b3IoKS5jb21wYXJlIGlzIHRy
dWUKLVBBU1MgSW50bC5Db2xsYXRvci5wcm90b3R5cGUuY29tcGFyZSh7IHRvU3RyaW5nKCkgeyB0
aHJvdyBFcnJvcignNicpIH0gfSwgeyB0b1N0cmluZygpIHsgKytiYWRDYWxsczsgcmV0dXJuICcn
OyB9IH0pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogNi4KK1BBU1MgZGVmYXVsdENvbGxhdG9yLmNv
bXBhcmUoeyB0b1N0cmluZygpIHsgdGhyb3cgRXJyb3IoJzYnKSB9IH0sIHsgdG9TdHJpbmcoKSB7
ICsrYmFkQ2FsbHM7IHJldHVybiAnJzsgfSB9KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IDYuCiBQ
QVNTIGJhZENhbGxzIGlzIDAKLVBBU1MgSW50bC5Db2xsYXRvci5wcm90b3R5cGUuY29tcGFyZSgn
YScsIHsgdG9TdHJpbmcoKSB7IHRocm93IEVycm9yKCc4JykgfSB9KSB0aHJldyBleGNlcHRpb24g
RXJyb3I6IDguCi1QQVNTIEludGwuQ29sbGF0b3IucHJvdG90eXBlLmNvbXBhcmUuY2FsbChudWxs
LCAnYScsICdiJykgaXMgLTEKLVBBU1MgSW50bC5Db2xsYXRvci5wcm90b3R5cGUuY29tcGFyZS5j
YWxsKEludGwuQ29sbGF0b3IoJ2VuJywgeyBzZW5zaXRpdml0eTonYmFzZScgfSksICdBJywgJ2En
KSBpcyAxCi1QQVNTIEludGwuQ29sbGF0b3IucHJvdG90eXBlLmNvbXBhcmUuY2FsbCg1LCAnYScs
ICdiJykgaXMgLTEKLVBBU1MgbmV3IEludGwuQ29sbGF0b3IoKS5jb21wYXJlLmNhbGwobnVsbCwg
J2EnLCAnYicpIGlzIC0xCi1QQVNTIG5ldyBJbnRsLkNvbGxhdG9yKCkuY29tcGFyZS5jYWxsKElu
dGwuQ29sbGF0b3IoJ2VuJywgeyBzZW5zaXRpdml0eTonYmFzZScgfSksICdBJywgJ2EnKSBpcyAx
Ci1QQVNTIG5ldyBJbnRsLkNvbGxhdG9yKCkuY29tcGFyZS5jYWxsKDUsICdhJywgJ2InKSBpcyAt
MQotUEFTUyBJbnRsLkNvbGxhdG9yLnByb3RvdHlwZS5jb21wYXJlKCkgaXMgMAotUEFTUyBJbnRs
LkNvbGxhdG9yLnByb3RvdHlwZS5jb21wYXJlKCd1bmRlZmluZWMnKSBpcyAtMQotUEFTUyBJbnRs
LkNvbGxhdG9yLnByb3RvdHlwZS5jb21wYXJlKCd1bmRlZmluZWUnKSBpcyAxCitQQVNTIGRlZmF1
bHRDb2xsYXRvci5jb21wYXJlKCdhJywgeyB0b1N0cmluZygpIHsgdGhyb3cgRXJyb3IoJzgnKSB9
IH0pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogOC4KK1BBU1MgZGVmYXVsdENvbGxhdG9yLmNvbXBh
cmUuY2FsbChudWxsLCAnYScsICdiJykgaXMgLTEKK1BBU1MgZGVmYXVsdENvbGxhdG9yLmNvbXBh
cmUuY2FsbChJbnRsLkNvbGxhdG9yKCdlbicsIHsgc2Vuc2l0aXZpdHk6J2Jhc2UnIH0pLCAnQScs
ICdhJykgaXMgMQorUEFTUyBkZWZhdWx0Q29sbGF0b3IuY29tcGFyZS5jYWxsKDUsICdhJywgJ2In
KSBpcyAtMQorUEFTUyBkZWZhdWx0Q29sbGF0b3IuY29tcGFyZSgpIGlzIDAKK1BBU1MgZGVmYXVs
dENvbGxhdG9yLmNvbXBhcmUoJ3VuZGVmaW5lYycpIGlzIC0xCitQQVNTIGRlZmF1bHRDb2xsYXRv
ci5jb21wYXJlKCd1bmRlZmluZWUnKSBpcyAxCiBQQVNTIEludGwuQ29sbGF0b3IoJ2VuJykuY29t
cGFyZSgnw6QnLCAneicpIGlzIC0xCiBQQVNTIEludGwuQ29sbGF0b3IoJ3N2JykuY29tcGFyZSgn
w6QnLCAneicpIGlzIDEKIFBBU1MgSW50bC5Db2xsYXRvcignZGUnKS5jb21wYXJlKCfDticsICdv
ZCcpIGlzIC0xCkBAIC0yNDIsMTAgKzI0MSwxMCBAQCBQQVNTIGlnbm9yZVB1bmN0dWF0aW9uQ29t
cGFyZSgnYWInLCAnYSBiJykgaXMgMAogUEFTUyBJbnRsLkNvbGxhdG9yKCdlbicpLmNvbXBhcmUo
J0HMiCcsICfDhCcpIGlzIDAKIFBBU1MgSW50bC5Db2xsYXRvcignZW4nKS5jb21wYXJlKCdBzKfM
iicsICfihKvMpycpIGlzIDAKIFBBU1MgSW50bC5Db2xsYXRvci5wcm90b3R5cGUucmVzb2x2ZWRP
cHRpb25zLmxlbmd0aCBpcyAwCi1QQVNTIEludGwuQ29sbGF0b3IucHJvdG90eXBlLnJlc29sdmVk
T3B0aW9ucygpIGlzIGFuIGluc3RhbmNlIG9mIE9iamVjdAotUEFTUyBJbnRsLkNvbGxhdG9yLnBy
b3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKSA9PT0gSW50bC5Db2xsYXRvci5wcm90b3R5cGUucmVz
b2x2ZWRPcHRpb25zKCkgaXMgZmFsc2UKK1BBU1MgZGVmYXVsdENvbGxhdG9yLnJlc29sdmVkT3B0
aW9ucygpIGlzIGFuIGluc3RhbmNlIG9mIE9iamVjdAorUEFTUyBkZWZhdWx0Q29sbGF0b3IucmVz
b2x2ZWRPcHRpb25zKCkgPT09IGRlZmF1bHRDb2xsYXRvci5yZXNvbHZlZE9wdGlvbnMoKSBpcyBm
YWxzZQogUEFTUyBJbnRsLkNvbGxhdG9yLnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMuY2FsbCg1
KSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBJbnRsLkNvbGxhdG9yLnByb3RvdHlwZS5yZXNv
bHZlZE9wdGlvbnMgY2FsbGVkIG9uIHZhbHVlIHRoYXQncyBub3QgYW4gb2JqZWN0IGluaXRpYWxp
emVkIGFzIGEgQ29sbGF0b3IuCi1QQVNTIHZhciBvcHRpb25zID0gSW50bC5Db2xsYXRvci5wcm90
b3R5cGUucmVzb2x2ZWRPcHRpb25zKCk7IGRlbGV0ZSBvcHRpb25zWydsb2NhbGUnXTsgSlNPTi5z
dHJpbmdpZnkob3B0aW9ucykgaXMgJ3sidXNhZ2UiOiJzb3J0Iiwic2Vuc2l0aXZpdHkiOiJ2YXJp
YW50IiwiaWdub3JlUHVuY3R1YXRpb24iOmZhbHNlLCJjb2xsYXRpb24iOiJkZWZhdWx0IiwibnVt
ZXJpYyI6ZmFsc2V9JworUEFTUyB2YXIgb3B0aW9ucyA9IGRlZmF1bHRDb2xsYXRvci5yZXNvbHZl
ZE9wdGlvbnMoKTsgZGVsZXRlIG9wdGlvbnNbJ2xvY2FsZSddOyBKU09OLnN0cmluZ2lmeShvcHRp
b25zKSBpcyAneyJ1c2FnZSI6InNvcnQiLCJzZW5zaXRpdml0eSI6InZhcmlhbnQiLCJpZ25vcmVQ
dW5jdHVhdGlvbiI6ZmFsc2UsImNvbGxhdGlvbiI6ImRlZmF1bHQiLCJudW1lcmljIjpmYWxzZX0n
CiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCiAKIFRFU1QgQ09NUExFVEUKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2pzL2ludGwtZGF0ZXRpbWVmb3JtYXQtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvanMvaW50bC1kYXRldGltZWZvcm1hdC1leHBlY3RlZC50eHQKaW5kZXggMjc2
YmU5ZjkxYTcwZTYzMGY5NjVjYzJhNjA4MjZkNGI1MmFjZWFkNi4uYmY2NjNhNGFhZmM5Yjk1OWYz
MWIxMjU4N2MzMTk4MjE1ZGQ4NTRlOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvanMvaW50bC1k
YXRldGltZWZvcm1hdC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvanMvaW50bC1kYXRl
dGltZWZvcm1hdC1leHBlY3RlZC50eHQKQEAgLTYyLDQzICs2MiwyOSBAQCBQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQuc3VwcG9ydGVkTG9jYWxlc09mKCd4LTEyMzQ1LTEyMzQ1LWVuLVVTJykgZGlk
IG5vdCB0aHJvdwogUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnN1cHBvcnRlZExvY2FsZXNPZign
eC1lbi1VUy0xMjM0NS0xMjM0NScpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgogUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0LnN1cHBvcnRlZExvY2FsZXNPZigneC1lbi11LWZvbycpIGRpZCBub3Qg
dGhyb3cgZXhjZXB0aW9uLgogUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnN1cHBvcnRlZExvY2Fs
ZXNPZigneC1lbi11LWZvby11LWJhcicpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgotUEFTUyBJ
bnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5jb25zdHJ1Y3RvciBpcyBJbnRsLkRhdGVUaW1l
Rm9ybWF0Ci1QQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdCBpcyBhbiBp
bnN0YW5jZSBvZiBGdW5jdGlvbgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5j
b25zdHJ1Y3RvciBpcyBPYmplY3QKK1BBU1MgT2JqZWN0LmdldFByb3RvdHlwZU9mKEludGwuRGF0
ZVRpbWVGb3JtYXQucHJvdG90eXBlKSBpcyBPYmplY3QucHJvdG90eXBlCitQQVNTIE9iamVjdC5w
cm90b3R5cGUudG9TdHJpbmcuY2FsbChJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZSkgaXMg
J1tvYmplY3QgT2JqZWN0XScKK1BBU1MgZGVmYXVsdERURm9ybWF0LmZvcm1hdCBpcyBhbiBpbnN0
YW5jZSBvZiBGdW5jdGlvbgogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKElu
dGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLCAnZm9ybWF0JykuZ2V0IGlzIGFuIGluc3RhbmNl
IG9mIEZ1bmN0aW9uCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoSW50bC5E
YXRlVGltZUZvcm1hdC5wcm90b3R5cGUsICdmb3JtYXQnKS5zZXQgaXMgdW5kZWZpbmVkCiBQQVNT
IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoSW50bC5EYXRlVGltZUZvcm1hdC5wcm90
b3R5cGUsICdmb3JtYXQnKS5lbnVtZXJhYmxlIGlzIGZhbHNlCiBQQVNTIE9iamVjdC5nZXRPd25Q
cm9wZXJ0eURlc2NyaXB0b3IoSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUsICdmb3JtYXQn
KS5jb25maWd1cmFibGUgaXMgdHJ1ZQotUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlw
ZS5mb3JtYXQubGVuZ3RoIGlzIDEKK1BBU1MgZGVmYXVsdERURm9ybWF0LmZvcm1hdC5sZW5ndGgg
aXMgMQorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQgdGhyZXcgZXhj
ZXB0aW9uIFR5cGVFcnJvcjogSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0IGNh
bGxlZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXplZCBhcyBhIERhdGVU
aW1lRm9ybWF0LgogUEFTUyBPYmplY3QuZGVmaW5lUHJvcGVydHkoe30sICdmb3JtYXQnLCBPYmpl
Y3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBl
LCAnZm9ybWF0JykpLmZvcm1hdCB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBJbnRsLkRhdGVU
aW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQgY2FsbGVkIG9uIHZhbHVlIHRoYXQncyBub3QgYW4g
b2JqZWN0IGluaXRpYWxpemVkIGFzIGEgRGF0ZVRpbWVGb3JtYXQuCi1QQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdCAhPT0gSW50bC5EYXRlVGltZUZvcm1hdCgpLmZvcm1h
dCBpcyB0cnVlCiBQQVNTIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkuZm9ybWF0ICE9PSBuZXcg
SW50bC5EYXRlVGltZUZvcm1hdCgpLmZvcm1hdCBpcyB0cnVlCi1QQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQucHJvdG90eXBlLmZvcm1hdCh7IHZhbHVlT2YoKSB7IHRocm93IEVycm9yKCc0YicpIH0g
fSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiA0Yi4KLVBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5w
cm90b3R5cGUuZm9ybWF0KEluZmluaXR5KSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjogZGF0
ZSB2YWx1ZSBpcyBub3QgZmluaXRlIGluIERhdGVUaW1lRm9ybWF0IGZvcm1hdCgpLgotUEFTUyBJ
bnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQuY2FsbChudWxsLCAwKSBpcyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCkuZm9ybWF0KDApCi1QQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJv
dG90eXBlLmZvcm1hdC5jYWxsKEludGwuRGF0ZVRpbWVGb3JtYXQoJ2FyJyksIDApIGlzIEludGwu
RGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQoMCkKLVBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90
b3R5cGUuZm9ybWF0LmNhbGwoNSwgMCkgaXMgSW50bC5EYXRlVGltZUZvcm1hdCgpLmZvcm1hdCgw
KQotUEFTUyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLmZvcm1hdC5jYWxsKG51bGwsIDApIGlz
IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQoMCkKLVBBU1MgbmV3IEludGwuRGF0ZVRpbWVG
b3JtYXQoKS5mb3JtYXQuY2FsbChJbnRsLkRhdGVUaW1lRm9ybWF0KCdhcicpLCAwKSBpcyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCkuZm9ybWF0KDApCi1QQVNTIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCkuZm9ybWF0LmNhbGwoNSwgMCkgaXMgSW50bC5EYXRlVGltZUZvcm1hdCgpLmZvcm1hdCgwKQot
UEFTUyB0eXBlb2YgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0KCkgPT09ICdz
dHJpbmcnIGlzIHRydWUKK1BBU1MgZGVmYXVsdERURm9ybWF0LmZvcm1hdCh7IHZhbHVlT2YoKSB7
IHRocm93IEVycm9yKCc0YicpIH0gfSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiA0Yi4KK1BBU1Mg
ZGVmYXVsdERURm9ybWF0LmZvcm1hdChJbmZpbml0eSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdlRXJy
b3I6IGRhdGUgdmFsdWUgaXMgbm90IGZpbml0ZSBpbiBEYXRlVGltZUZvcm1hdCBmb3JtYXQoKS4K
K1BBU1MgZGVmYXVsdERURm9ybWF0LmZvcm1hdC5jYWxsKG51bGwsIDApIGlzIEludGwuRGF0ZVRp
bWVGb3JtYXQoKS5mb3JtYXQoMCkKK1BBU1MgZGVmYXVsdERURm9ybWF0LmZvcm1hdC5jYWxsKElu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2FyJyksIDApIGlzIEludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3Jt
YXQoMCkKK1BBU1MgZGVmYXVsdERURm9ybWF0LmZvcm1hdC5jYWxsKDUsIDApIGlzIEludGwuRGF0
ZVRpbWVGb3JtYXQoKS5mb3JtYXQoMCkKK1BBU1MgdHlwZW9mIGRlZmF1bHREVEZvcm1hdC5mb3Jt
YXQoKSA9PT0gJ3N0cmluZycgaXMgdHJ1ZQogUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgdGltZVpvbmU6ICdBbWVyaWNhL0RlbnZlcicgfSkuZm9ybWF0KG5ldyBEYXRlKDE0NTEwOTk4
NzI2NDEpKSBpcyAnMTIvMjUvMjAxNScKIFBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5
cGUucmVzb2x2ZWRPcHRpb25zLmxlbmd0aCBpcyAwCi1QQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQu
cHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpIGlzIGFuIGluc3RhbmNlIG9mIE9iamVjdAotUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5sb2NhbGUg
aXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5sb2NhbGUKLVBB
U1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmUgaXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9u
ZQotUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5j
YWxlbmRhciBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLmNh
bGVuZGFyCi1QQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9u
cygpLm51bWJlcmluZ1N5c3RlbSBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVk
T3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbQotUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3Rv
dHlwZS5yZXNvbHZlZE9wdGlvbnMoKS53ZWVrZGF5IGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCkucmVzb2x2ZWRPcHRpb25zKCkud2Vla2RheQotUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnBy
b3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5lcmEgaXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQo
KS5yZXNvbHZlZE9wdGlvbnMoKS5lcmEKLVBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5
cGUucmVzb2x2ZWRPcHRpb25zKCkueWVhciBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJl
c29sdmVkT3B0aW9ucygpLnllYXIKLVBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUu
cmVzb2x2ZWRPcHRpb25zKCkubW9udGggaXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNv
bHZlZE9wdGlvbnMoKS5tb250aAotUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5y
ZXNvbHZlZE9wdGlvbnMoKS5kYXkgaXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZl
ZE9wdGlvbnMoKS5kYXkKLVBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2
ZWRPcHRpb25zKCkuaG91ciBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0
aW9ucygpLmhvdXIKLVBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRP
cHRpb25zKCkuaG91cjEyIGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRp
b25zKCkuaG91cjEyCi1QQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVk
T3B0aW9ucygpLm1pbnV0ZSBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0
aW9ucygpLm1pbnV0ZQotUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZl
ZE9wdGlvbnMoKS5zZWNvbmQgaXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9w
dGlvbnMoKS5zZWNvbmQKLVBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2
ZWRPcHRpb25zKCkudGltZVpvbmVOYW1lIGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVz
b2x2ZWRPcHRpb25zKCkudGltZVpvbmVOYW1lCi1QQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJv
dG90eXBlLnJlc29sdmVkT3B0aW9ucygpID09PSBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlw
ZS5yZXNvbHZlZE9wdGlvbnMoKSBpcyBmYWxzZQorUEFTUyBkZWZhdWx0RFRGb3JtYXQucmVzb2x2
ZWRPcHRpb25zKCkgaXMgYW4gaW5zdGFuY2Ugb2YgT2JqZWN0CitQQVNTIGRlZmF1bHREVEZvcm1h
dC5yZXNvbHZlZE9wdGlvbnMoKSA9PT0gZGVmYXVsdERURm9ybWF0LnJlc29sdmVkT3B0aW9ucygp
IGlzIGZhbHNlCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0
aW9ucygpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IEludGwuRGF0ZVRpbWVGb3JtYXQucHJv
dG90eXBlLnJlc29sdmVkT3B0aW9ucyBjYWxsZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBhbiBvYmpl
Y3QgaW5pdGlhbGl6ZWQgYXMgYSBEYXRlVGltZUZvcm1hdC4KIFBBU1MgSW50bC5EYXRlVGltZUZv
cm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zLmNhbGwoNSkgdGhyZXcgZXhjZXB0aW9uIFR5
cGVFcnJvcjogSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zIGNh
bGxlZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXplZCBhcyBhIERhdGVU
aW1lRm9ybWF0LgogUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCckJykgdGhyZXcgZXhjZXB0aW9u
IFJhbmdlRXJyb3I6IGludmFsaWQgbGFuZ3VhZ2UgdGFnOiAkLgogUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIG51bGwpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IG51bGwgaXMgbm90
IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCBudWxsKScp
LgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvanMvaW50bC1udW1iZXJmb3JtYXQtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvanMvaW50bC1udW1iZXJmb3JtYXQtZXhwZWN0ZWQudHh0CmluZGV4
IDM0YzUxMTU2Mjg4YzFmODRiMDRlMDJkNTUwMmU4OGEyODcxZmRlMjYuLmNhMzU4N2Q0MWE3Mzg5
YzMzOTc5NTM2MGZhN2MzYTcwNDVjNjczNjQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2pzL2lu
dGwtbnVtYmVyZm9ybWF0LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9qcy9pbnRsLW51
bWJlcmZvcm1hdC1leHBlY3RlZC50eHQKQEAgLTEzMCwyMyArMTMwLDIyIEBAIFBBU1MgSW50bC5O
dW1iZXJGb3JtYXQuc3VwcG9ydGVkTG9jYWxlc09mKCd4LTEyMzQ1LTEyMzQ1LWVuLVVTJykgZGlk
IG5vdCB0aHJvdyBlCiBQQVNTIEludGwuTnVtYmVyRm9ybWF0LnN1cHBvcnRlZExvY2FsZXNPZign
eC1lbi1VUy0xMjM0NS0xMjM0NScpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgogUEFTUyBJbnRs
Lk51bWJlckZvcm1hdC5zdXBwb3J0ZWRMb2NhbGVzT2YoJ3gtZW4tdS1mb28nKSBkaWQgbm90IHRo
cm93IGV4Y2VwdGlvbi4KIFBBU1MgSW50bC5OdW1iZXJGb3JtYXQuc3VwcG9ydGVkTG9jYWxlc09m
KCd4LWVuLXUtZm9vLXUtYmFyJykgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCi1QQVNTIEludGwu
TnVtYmVyRm9ybWF0LnByb3RvdHlwZS5jb25zdHJ1Y3RvciBpcyBJbnRsLk51bWJlckZvcm1hdAot
UEFTUyBJbnRsLk51bWJlckZvcm1hdC5wcm90b3R5cGUuZm9ybWF0IGlzIGFuIGluc3RhbmNlIG9m
IEZ1bmN0aW9uCitQQVNTIEludGwuTnVtYmVyRm9ybWF0LnByb3RvdHlwZS5jb25zdHJ1Y3RvciBp
cyBPYmplY3QKK1BBU1MgT2JqZWN0LmdldFByb3RvdHlwZU9mKEludGwuTnVtYmVyRm9ybWF0LnBy
b3RvdHlwZSkgaXMgT2JqZWN0LnByb3RvdHlwZQorUEFTUyBPYmplY3QucHJvdG90eXBlLnRvU3Ry
aW5nLmNhbGwoSW50bC5OdW1iZXJGb3JtYXQucHJvdG90eXBlKSBpcyAnW29iamVjdCBPYmplY3Rd
JworUEFTUyBkZWZhdWx0TkZvcm1hdC5mb3JtYXQgaXMgYW4gaW5zdGFuY2Ugb2YgRnVuY3Rpb24K
IFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihJbnRsLk51bWJlckZvcm1hdC5w
cm90b3R5cGUsICdmb3JtYXQnKS5nZXQgaXMgYW4gaW5zdGFuY2Ugb2YgRnVuY3Rpb24KIFBBU1Mg
T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihJbnRsLk51bWJlckZvcm1hdC5wcm90b3R5
cGUsICdmb3JtYXQnKS5zZXQgaXMgdW5kZWZpbmVkCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0
eURlc2NyaXB0b3IoSW50bC5OdW1iZXJGb3JtYXQucHJvdG90eXBlLCAnZm9ybWF0JykuZW51bWVy
YWJsZSBpcyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEludGwu
TnVtYmVyRm9ybWF0LnByb3RvdHlwZSwgJ2Zvcm1hdCcpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCi1Q
QVNTIEludGwuTnVtYmVyRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQubGVuZ3RoIGlzIDEKK1BBU1Mg
ZGVmYXVsdE5Gb3JtYXQuZm9ybWF0Lmxlbmd0aCBpcyAxCitQQVNTIEludGwuTnVtYmVyRm9ybWF0
LnByb3RvdHlwZS5mb3JtYXQgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogSW50bC5OdW1iZXJG
b3JtYXQucHJvdG90eXBlLmZvcm1hdCBjYWxsZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBhbiBvYmpl
Y3QgaW5pdGlhbGl6ZWQgYXMgYSBOdW1iZXJGb3JtYXQuCiBQQVNTIE9iamVjdC5kZWZpbmVQcm9w
ZXJ0eSh7fSwgJ2Zvcm1hdCcsIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoSW50bC5O
dW1iZXJGb3JtYXQucHJvdG90eXBlLCAnZm9ybWF0JykpLmZvcm1hdCB0aHJldyBleGNlcHRpb24g
VHlwZUVycm9yOiBJbnRsLk51bWJlckZvcm1hdC5wcm90b3R5cGUuZm9ybWF0IGNhbGxlZCBvbiB2
YWx1ZSB0aGF0J3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXplZCBhcyBhIE51bWJlckZvcm1hdC4K
LVBBU1MgSW50bC5OdW1iZXJGb3JtYXQucHJvdG90eXBlLmZvcm1hdCAhPT0gSW50bC5OdW1iZXJG
b3JtYXQoKS5mb3JtYXQgaXMgdHJ1ZQogUEFTUyBuZXcgSW50bC5OdW1iZXJGb3JtYXQoKS5mb3Jt
YXQgIT09IG5ldyBJbnRsLk51bWJlckZvcm1hdCgpLmZvcm1hdCBpcyB0cnVlCi1QQVNTIEludGwu
TnVtYmVyRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQoeyB2YWx1ZU9mKCkgeyB0aHJvdyBFcnJvcign
NScpIH0gfSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiA1LgotUEFTUyBJbnRsLk51bWJlckZvcm1h
dC5wcm90b3R5cGUuZm9ybWF0LmNhbGwobnVsbCwgMS4yKSBpcyBJbnRsLk51bWJlckZvcm1hdCgp
LmZvcm1hdCgxLjIpCi1QQVNTIEludGwuTnVtYmVyRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQuY2Fs
bChJbnRsLkRhdGVUaW1lRm9ybWF0KCdhcicpLCAxLjIpIGlzIEludGwuTnVtYmVyRm9ybWF0KCku
Zm9ybWF0KDEuMikKLVBBU1MgSW50bC5OdW1iZXJGb3JtYXQucHJvdG90eXBlLmZvcm1hdC5jYWxs
KDUsIDEuMikgaXMgSW50bC5OdW1iZXJGb3JtYXQoKS5mb3JtYXQoMS4yKQotUEFTUyBuZXcgSW50
bC5OdW1iZXJGb3JtYXQoKS5mb3JtYXQuY2FsbChudWxsLCAxLjIpIGlzIEludGwuTnVtYmVyRm9y
bWF0KCkuZm9ybWF0KDEuMikKLVBBU1MgbmV3IEludGwuTnVtYmVyRm9ybWF0KCkuZm9ybWF0LmNh
bGwoSW50bC5EYXRlVGltZUZvcm1hdCgnYXInKSwgMS4yKSBpcyBJbnRsLk51bWJlckZvcm1hdCgp
LmZvcm1hdCgxLjIpCi1QQVNTIG5ldyBJbnRsLk51bWJlckZvcm1hdCgpLmZvcm1hdC5jYWxsKDUs
IDEuMikgaXMgSW50bC5OdW1iZXJGb3JtYXQoKS5mb3JtYXQoMS4yKQorUEFTUyBkZWZhdWx0TkZv
cm1hdC5mb3JtYXQoeyB2YWx1ZU9mKCkgeyB0aHJvdyBFcnJvcignNScpIH0gfSkgdGhyZXcgZXhj
ZXB0aW9uIEVycm9yOiA1LgorUEFTUyBkZWZhdWx0TkZvcm1hdC5mb3JtYXQuY2FsbChudWxsLCAx
LjIpIGlzIEludGwuTnVtYmVyRm9ybWF0KCkuZm9ybWF0KDEuMikKK1BBU1MgZGVmYXVsdE5Gb3Jt
YXQuZm9ybWF0LmNhbGwoSW50bC5EYXRlVGltZUZvcm1hdCgnYXInKSwgMS4yKSBpcyBJbnRsLk51
bWJlckZvcm1hdCgpLmZvcm1hdCgxLjIpCitQQVNTIGRlZmF1bHRORm9ybWF0LmZvcm1hdC5jYWxs
KDUsIDEuMikgaXMgSW50bC5OdW1iZXJGb3JtYXQoKS5mb3JtYXQoMS4yKQogUEFTUyBJbnRsLk51
bWJlckZvcm1hdCgnZW4nKS5mb3JtYXQoNDIpIGlzICc0MicKIFBBU1MgSW50bC5OdW1iZXJGb3Jt
YXQoJ2VuJykuZm9ybWF0KCc0MicpIGlzICc0MicKIFBBU1MgSW50bC5OdW1iZXJGb3JtYXQoJ2Vu
JykuZm9ybWF0KHsgdmFsdWVPZigpIHsgcmV0dXJuIDQyOyB9IH0pIGlzICc0MicKQEAgLTE2MCw3
ICsxNTksNyBAQCBQQVNTIEludGwuTnVtYmVyRm9ybWF0KCdlbicpLmZvcm1hdChOdW1iZXIuTUlO
X1ZBTFVFKSBpcyAnMCcKIFBBU1MgSW50bC5OdW1iZXJGb3JtYXQoJ2VuJykuZm9ybWF0KE51bWJl
ci5NQVhfVkFMVUUpIGlzICcxNzksNzY5LDMxMyw0ODYsMjMyLDAwMCwwMDAsMDAwLDAwMCwwMDAs
MDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCww
MDAsMDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAw
MCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAw
LDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAs
MDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCww
MDAsMDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAw
MCwwMDAsMDAwLDAwMCwwMDAsMDAwLDAwMCwwMDAnCiBQQVNTIEludGwuTnVtYmVyRm9ybWF0KCdl
bicpLmZvcm1hdCgxMjM0LjU2NykgaXMgJzEsMjM0LjU2NycKIFBBU1MgSW50bC5OdW1iZXJGb3Jt
YXQoJ2VzJykuZm9ybWF0KDEyMzQuNTY3KSBpcyAnMS4yMzQsNTY3JwotUEFTUyBJbnRsLk51bWJl
ckZvcm1hdCgnZnInKS5mb3JtYXQoMTIzNC41NjcpIGlzICcxwqAyMzQsNTY3JworUEFTUyBJbnRs
Lk51bWJlckZvcm1hdCgnZnInKS5mb3JtYXQoMTIzNC41NjcpIGlzICcxXHhBMDIzNCw1NjcnCiBQ
QVNTIEludGwuTnVtYmVyRm9ybWF0KCdlbi11LW51LWxhdG4nKS5mb3JtYXQoMTIzNC41NjcpIGlz
ICcxLDIzNC41NjcnCiBQQVNTIEludGwuTnVtYmVyRm9ybWF0KCdlbi11LW51LWZ1bGx3aWRlJyku
Zm9ybWF0KDEyMzQuNTY3KSBpcyAn77yRLO+8ku+8k++8lC7vvJXvvJbvvJcnCiBQQVNTIEludGwu
TnVtYmVyRm9ybWF0KCd0aC11LW51LXRoYWknKS5mb3JtYXQoMTIzNC41NjcpIGlzICfguZEs4LmS
4LmT4LmULuC5leC5luC5lycKQEAgLTIwNCwxNSArMjAzLDE2IEBAIFBBU1MgSW50bC5OdW1iZXJG
b3JtYXQoJ2VuJywge21heGltdW1TaWduaWZpY2FudERpZ2l0czogNH0pLmZvcm1hdCgwLjEyMzQ1
NjcpIGlzCiBQQVNTIEludGwuTnVtYmVyRm9ybWF0KCdlbicsIHttYXhpbXVtU2lnbmlmaWNhbnRE
aWdpdHM6IDR9KS5mb3JtYXQoMTIzNDU2NykgaXMgJzEsMjM1LDAwMCcKIFBBU1MgSW50bC5OdW1i
ZXJGb3JtYXQoJ2VuJywge3VzZUdyb3VwaW5nOiB0cnVlfSkuZm9ybWF0KDEyMzQ1NjcuMTIzKSBp
cyAnMSwyMzQsNTY3LjEyMycKIFBBU1MgSW50bC5OdW1iZXJGb3JtYXQoJ2VzJywge3VzZUdyb3Vw
aW5nOiB0cnVlfSkuZm9ybWF0KDEyMzQ1NjcuMTIzKSBpcyAnMS4yMzQuNTY3LDEyMycKLVBBU1Mg
SW50bC5OdW1iZXJGb3JtYXQoJ2ZyJywge3VzZUdyb3VwaW5nOiB0cnVlfSkuZm9ybWF0KDEyMzQ1
NjcuMTIzKSBpcyAnMcKgMjM0wqA1NjcsMTIzJworUEFTUyBJbnRsLk51bWJlckZvcm1hdCgnZnIn
LCB7dXNlR3JvdXBpbmc6IHRydWV9KS5mb3JtYXQoMTIzNDU2Ny4xMjMpIGlzICcxXHhBMDIzNFx4
QTA1NjcsMTIzJwogUEFTUyBJbnRsLk51bWJlckZvcm1hdCgnZW4nLCB7dXNlR3JvdXBpbmc6IGZh
bHNlfSkuZm9ybWF0KDEyMzQ1NjcuMTIzKSBpcyAnMTIzNDU2Ny4xMjMnCiBQQVNTIEludGwuTnVt
YmVyRm9ybWF0KCdlcycsIHt1c2VHcm91cGluZzogZmFsc2V9KS5mb3JtYXQoMTIzNDU2Ny4xMjMp
IGlzICcxMjM0NTY3LDEyMycKIFBBU1MgSW50bC5OdW1iZXJGb3JtYXQoJ2ZyJywge3VzZUdyb3Vw
aW5nOiBmYWxzZX0pLmZvcm1hdCgxMjM0NTY3LjEyMykgaXMgJzEyMzQ1NjcsMTIzJwogUEFTUyBJ
bnRsLk51bWJlckZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zLmxlbmd0aCBpcyAwCi1Q
QVNTIEludGwuTnVtYmVyRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKSBpcyBhbiBp
bnN0YW5jZSBvZiBPYmplY3QKLVBBU1MgSW50bC5OdW1iZXJGb3JtYXQucHJvdG90eXBlLnJlc29s
dmVkT3B0aW9ucygpID09PSBJbnRsLk51bWJlckZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRp
b25zKCkgaXMgZmFsc2UKK1BBU1MgZGVmYXVsdE5Gb3JtYXQucmVzb2x2ZWRPcHRpb25zKCkgaXMg
YW4gaW5zdGFuY2Ugb2YgT2JqZWN0CitQQVNTIGRlZmF1bHRORm9ybWF0LnJlc29sdmVkT3B0aW9u
cygpID09PSBkZWZhdWx0TkZvcm1hdC5yZXNvbHZlZE9wdGlvbnMoKSBpcyBmYWxzZQorUEFTUyBJ
bnRsLk51bWJlckZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkgdGhyZXcgZXhjZXB0
aW9uIFR5cGVFcnJvcjogSW50bC5OdW1iZXJGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9u
cyBjYWxsZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBhbiBvYmplY3QgaW5pdGlhbGl6ZWQgYXMgYSBO
dW1iZXJGb3JtYXQuCiBQQVNTIEludGwuTnVtYmVyRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9w
dGlvbnMuY2FsbCg1KSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBJbnRsLk51bWJlckZvcm1h
dC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zIGNhbGxlZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGFu
IG9iamVjdCBpbml0aWFsaXplZCBhcyBhIE51bWJlckZvcm1hdC4KLVBBU1MgdmFyIG9wdGlvbnMg
PSBJbnRsLk51bWJlckZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCk7IGRlbGV0ZSBv
cHRpb25zWydsb2NhbGUnXTsgSlNPTi5zdHJpbmdpZnkob3B0aW9ucykgaXMgJ3sibnVtYmVyaW5n
U3lzdGVtIjoibGF0biIsInN0eWxlIjoiZGVjaW1hbCIsIm1pbmltdW1JbnRlZ2VyRGlnaXRzIjox
LCJtaW5pbXVtRnJhY3Rpb25EaWdpdHMiOjAsIm1heGltdW1GcmFjdGlvbkRpZ2l0cyI6MywidXNl
R3JvdXBpbmciOnRydWV9JworUEFTUyB2YXIgb3B0aW9ucyA9IGRlZmF1bHRORm9ybWF0LnJlc29s
dmVkT3B0aW9ucygpOyBkZWxldGUgb3B0aW9uc1snbG9jYWxlJ107IEpTT04uc3RyaW5naWZ5KG9w
dGlvbnMpIGlzICd7Im51bWJlcmluZ1N5c3RlbSI6ImxhdG4iLCJzdHlsZSI6ImRlY2ltYWwiLCJt
aW5pbXVtSW50ZWdlckRpZ2l0cyI6MSwibWluaW11bUZyYWN0aW9uRGlnaXRzIjowLCJtYXhpbXVt
RnJhY3Rpb25EaWdpdHMiOjMsInVzZUdyb3VwaW5nIjp0cnVlfScKIFBBU1MgdmFyIGxlZ2FjeSA9
IE9iamVjdC5jcmVhdGUoSW50bC5OdW1iZXJGb3JtYXQucHJvdG90eXBlKTtJbnRsLk51bWJlckZv
cm1hdC5hcHBseShsZWdhY3kpIGlzIGxlZ2FjeQogUEFTUyB2YXIgbGVnYWN5ID0gT2JqZWN0LmNy
ZWF0ZShJbnRsLk51bWJlckZvcm1hdC5wcm90b3R5cGUpO0ludGwuTnVtYmVyRm9ybWF0LmNhbGwo
bGVnYWN5LCAnZW4tdS1udS1hcmFiJykuZm9ybWF0KDEuMjM0NSkgaXMgJ9mh2avZotmj2aUnCiBQ
QVNTIHZhciBpbmNvbXBhdCA9IHt9O0ludGwuTnVtYmVyRm9ybWF0LmFwcGx5KGluY29tcGF0KSBp
cyBub3QgaW5jb21wYXQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2pzL3NjcmlwdC10ZXN0cy9p
bnRsLWNvbGxhdG9yLmpzIGIvTGF5b3V0VGVzdHMvanMvc2NyaXB0LXRlc3RzL2ludGwtY29sbGF0
b3IuanMKaW5kZXggNGYxMTcwNjNhZDFiZGY1YzFlNjQ4NDY4ZWY4N2MyZmQ5YWM1OTlkYi4uMTVm
ZjliY2RlYjkzZjBhZjMyYWVhM2VjYTBkZmQ5MzdiYjk5ZWM0YSAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvanMvc2NyaXB0LXRlc3RzL2ludGwtY29sbGF0b3IuanMKKysrIGIvTGF5b3V0VGVzdHMv
anMvc2NyaXB0LXRlc3RzL2ludGwtY29sbGF0b3IuanMKQEAgLTIwNywxMyArMjA3LDE2IEBAIGZv
ciAodmFyIHZhbGlkTGFuZ3VhZ2VUYWcgb2YgdmFsaWRMYW5ndWFnZVRhZ3MpIHsKIAogLy8gMTAu
MyBQcm9wZXJ0aWVzIG9mIHRoZSBJbnRsLkNvbGxhdG9yIFByb3RvdHlwZSBPYmplY3QKIAotLy8g
VGhlIHZhbHVlIG9mIEludGwuQ29sbGF0b3IucHJvdG90eXBlLmNvbnN0cnVjdG9yIGlzICVDb2xs
YXRvciUuCi1zaG91bGRCZSgiSW50bC5Db2xsYXRvci5wcm90b3R5cGUuY29uc3RydWN0b3IiLCAi
SW50bC5Db2xsYXRvciIpOworLy8gaXMgYSBwbGFpbiBvYmplY3QKK3Nob3VsZEJlKCJJbnRsLkNv
bGxhdG9yLnByb3RvdHlwZS5jb25zdHJ1Y3RvciIsICJPYmplY3QiKTsKK3Nob3VsZEJlKCJPYmpl
Y3QuZ2V0UHJvdG90eXBlT2YoSW50bC5Db2xsYXRvci5wcm90b3R5cGUpIiwgIk9iamVjdC5wcm90
b3R5cGUiKTsKK3Nob3VsZEJlKCJPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoSW50bC5D
b2xsYXRvci5wcm90b3R5cGUpIiwgIidbb2JqZWN0IE9iamVjdF0nIik7CiAKIC8vIDEwLjMuMyBJ
bnRsLkNvbGxhdG9yLnByb3RvdHlwZS5jb21wYXJlCiAKIC8vIFRoaXMgbmFtZWQgYWNjZXNzb3Ig
cHJvcGVydHkgcmV0dXJucyBhIGZ1bmN0aW9uIHRoYXQgY29tcGFyZXMgdHdvIHN0cmluZ3MgYWNj
b3JkaW5nIHRvIHRoZSBzb3J0IG9yZGVyIG9mIHRoaXMgQ29sbGF0b3Igb2JqZWN0Lgotc2hvdWxk
QmVUeXBlKCJJbnRsLkNvbGxhdG9yLnByb3RvdHlwZS5jb21wYXJlIiwgIkZ1bmN0aW9uIik7Cit2
YXIgZGVmYXVsdENvbGxhdG9yID0gSW50bC5Db2xsYXRvcigpOworc2hvdWxkQmVUeXBlKCJkZWZh
dWx0Q29sbGF0b3IuY29tcGFyZSIsICJGdW5jdGlvbiIpOwogCiAvLyBUaGUgdmFsdWUgb2YgdGhl
IFtbR2V0XV0gYXR0cmlidXRlIGlzIGEgZnVuY3Rpb24KIHNob3VsZEJlVHlwZSgiT2JqZWN0Lmdl
dE93blByb3BlcnR5RGVzY3JpcHRvcihJbnRsLkNvbGxhdG9yLnByb3RvdHlwZSwgJ2NvbXBhcmUn
KS5nZXQiLCAiRnVuY3Rpb24iKTsKQEAgLTIyNiwxMyArMjI5LDEzIEBAIHNob3VsZEJlRmFsc2Uo
Ik9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoSW50bC5Db2xsYXRvci5wcm90b3R5cGUs
ICdjb21wYXJlCiBzaG91bGRCZVRydWUoIk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Io
SW50bC5Db2xsYXRvci5wcm90b3R5cGUsICdjb21wYXJlJykuY29uZmlndXJhYmxlIik7CiAKIC8v
IFRoZSB2YWx1ZSBvZiBG4oCZcyBsZW5ndGggcHJvcGVydHkgaXMgMi4KLXNob3VsZEJlKCJJbnRs
LkNvbGxhdG9yLnByb3RvdHlwZS5jb21wYXJlLmxlbmd0aCIsICIyIik7CitzaG91bGRCZSgiSW50
bC5Db2xsYXRvcigpLmNvbXBhcmUubGVuZ3RoIiwgIjIiKTsKIAogLy8gVGhyb3dzIG9uIG5vbi1D
b2xsYXRvciB0aGlzLgorc2hvdWxkVGhyb3coIkludGwuQ29sbGF0b3IucHJvdG90eXBlLmNvbXBh
cmUiLCAiJ1R5cGVFcnJvcjogSW50bC5Db2xsYXRvci5wcm90b3R5cGUuY29tcGFyZSBjYWxsZWQg
b24gdmFsdWUgdGhhdFxcJ3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXplZCBhcyBhIENvbGxhdG9y
JyIpOwogc2hvdWxkVGhyb3coIk9iamVjdC5kZWZpbmVQcm9wZXJ0eSh7fSwgJ2NvbXBhcmUnLCBP
YmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEludGwuQ29sbGF0b3IucHJvdG90eXBlLCAn
Y29tcGFyZScpKS5jb21wYXJlIiwgIidUeXBlRXJyb3I6IEludGwuQ29sbGF0b3IucHJvdG90eXBl
LmNvbXBhcmUgY2FsbGVkIG9uIHZhbHVlIHRoYXRcXCdzIG5vdCBhbiBvYmplY3QgaW5pdGlhbGl6
ZWQgYXMgYSBDb2xsYXRvciciKTsKIAogLy8gVGhlIGNvbXBhcmUgZnVuY3Rpb24gaXMgdW5pcXVl
IHBlciBpbnN0YW5jZS4KLXNob3VsZEJlVHJ1ZSgiSW50bC5Db2xsYXRvci5wcm90b3R5cGUuY29t
cGFyZSAhPT0gSW50bC5Db2xsYXRvcigpLmNvbXBhcmUiKTsKIHNob3VsZEJlVHJ1ZSgibmV3IElu
dGwuQ29sbGF0b3IoKS5jb21wYXJlICE9PSBuZXcgSW50bC5Db2xsYXRvcigpLmNvbXBhcmUiKTsK
IAogLy8gMTAuMy40IENvbGxhdG9yIENvbXBhcmUgRnVuY3Rpb25zCkBAIC0yNDYsMjUgKzI0OSwy
MiBAQCBzaG91bGRCZVRydWUoIm5ldyBJbnRsLkNvbGxhdG9yKCkuY29tcGFyZSAhPT0gbmV3IElu
dGwuQ29sbGF0b3IoKS5jb21wYXJlIik7CiAvLyA1LiBMZXQgWCBiZSBUb1N0cmluZyh4KS4KIC8v
IDYuIFJldHVybklmQWJydXB0KFgpLgogdmFyIGJhZENhbGxzID0gMDsKLXNob3VsZFRocm93KCJJ
bnRsLkNvbGxhdG9yLnByb3RvdHlwZS5jb21wYXJlKHsgdG9TdHJpbmcoKSB7IHRocm93IEVycm9y
KCc2JykgfSB9LCB7IHRvU3RyaW5nKCkgeyArK2JhZENhbGxzOyByZXR1cm4gJyc7IH0gfSkiLCAi
J0Vycm9yOiA2JyIpOworc2hvdWxkVGhyb3coImRlZmF1bHRDb2xsYXRvci5jb21wYXJlKHsgdG9T
dHJpbmcoKSB7IHRocm93IEVycm9yKCc2JykgfSB9LCB7IHRvU3RyaW5nKCkgeyArK2JhZENhbGxz
OyByZXR1cm4gJyc7IH0gfSkiLCAiJ0Vycm9yOiA2JyIpOwogc2hvdWxkQmUoImJhZENhbGxzIiwg
IjAiKTsKIAogLy8gNy4gTGV0IFkgYmUgVG9TdHJpbmcoeSkuCiAvLyA4LiBSZXR1cm5JZkFicnVw
dChZKS4KLXNob3VsZFRocm93KCJJbnRsLkNvbGxhdG9yLnByb3RvdHlwZS5jb21wYXJlKCdhJywg
eyB0b1N0cmluZygpIHsgdGhyb3cgRXJyb3IoJzgnKSB9IH0pIiwgIidFcnJvcjogOCciKTsKK3No
b3VsZFRocm93KCJkZWZhdWx0Q29sbGF0b3IuY29tcGFyZSgnYScsIHsgdG9TdHJpbmcoKSB7IHRo
cm93IEVycm9yKCc4JykgfSB9KSIsICInRXJyb3I6IDgnIik7CiAKIC8vIENvbXBhcmUgaXMgYm91
bmQsIHNvIGNhbGxpbmcgd2l0aCBhbHRlcm5hdGUgInRoaXMiIGhhcyBubyBlZmZlY3QuCi1zaG91
bGRCZSgiSW50bC5Db2xsYXRvci5wcm90b3R5cGUuY29tcGFyZS5jYWxsKG51bGwsICdhJywgJ2In
KSIsICItMSIpOwotc2hvdWxkQmUoIkludGwuQ29sbGF0b3IucHJvdG90eXBlLmNvbXBhcmUuY2Fs
bChJbnRsLkNvbGxhdG9yKCdlbicsIHsgc2Vuc2l0aXZpdHk6J2Jhc2UnIH0pLCAnQScsICdhJyki
LCAiMSIpOwotc2hvdWxkQmUoIkludGwuQ29sbGF0b3IucHJvdG90eXBlLmNvbXBhcmUuY2FsbCg1
LCAnYScsICdiJykiLCAiLTEiKTsKLXNob3VsZEJlKCJuZXcgSW50bC5Db2xsYXRvcigpLmNvbXBh
cmUuY2FsbChudWxsLCAnYScsICdiJykiLCAiLTEiKTsKLXNob3VsZEJlKCJuZXcgSW50bC5Db2xs
YXRvcigpLmNvbXBhcmUuY2FsbChJbnRsLkNvbGxhdG9yKCdlbicsIHsgc2Vuc2l0aXZpdHk6J2Jh
c2UnIH0pLCAnQScsICdhJykiLCAiMSIpOwotc2hvdWxkQmUoIm5ldyBJbnRsLkNvbGxhdG9yKCku
Y29tcGFyZS5jYWxsKDUsICdhJywgJ2InKSIsICItMSIpOworc2hvdWxkQmUoImRlZmF1bHRDb2xs
YXRvci5jb21wYXJlLmNhbGwobnVsbCwgJ2EnLCAnYicpIiwgIi0xIik7CitzaG91bGRCZSgiZGVm
YXVsdENvbGxhdG9yLmNvbXBhcmUuY2FsbChJbnRsLkNvbGxhdG9yKCdlbicsIHsgc2Vuc2l0aXZp
dHk6J2Jhc2UnIH0pLCAnQScsICdhJykiLCAiMSIpOworc2hvdWxkQmUoImRlZmF1bHRDb2xsYXRv
ci5jb21wYXJlLmNhbGwoNSwgJ2EnLCAnYicpIiwgIi0xIik7CiAKIC8vIFRlc3QgY29tcGFyaW5n
IHVuZGVmaW5lZHMuCi1zaG91bGRCZSgiSW50bC5Db2xsYXRvci5wcm90b3R5cGUuY29tcGFyZSgp
IiwgIjAiKTsKLXNob3VsZEJlKCJJbnRsLkNvbGxhdG9yLnByb3RvdHlwZS5jb21wYXJlKCd1bmRl
ZmluZWMnKSIsICItMSIpOwotc2hvdWxkQmUoIkludGwuQ29sbGF0b3IucHJvdG90eXBlLmNvbXBh
cmUoJ3VuZGVmaW5lZScpIiwgIjEiKTsKK3Nob3VsZEJlKCJkZWZhdWx0Q29sbGF0b3IuY29tcGFy
ZSgpIiwgIjAiKTsKK3Nob3VsZEJlKCJkZWZhdWx0Q29sbGF0b3IuY29tcGFyZSgndW5kZWZpbmVj
JykiLCAiLTEiKTsKK3Nob3VsZEJlKCJkZWZhdWx0Q29sbGF0b3IuY29tcGFyZSgndW5kZWZpbmVl
JykiLCAiMSIpOwogCiAvLyBUZXN0IGxvY2FsZXMuCiBzaG91bGRCZSgiSW50bC5Db2xsYXRvcign
ZW4nKS5jb21wYXJlKCfDpCcsICd6JykiLCAiLTEiKTsKQEAgLTM1NSwxMyArMzU1LDEzIEBAIHNo
b3VsZEJlKCJJbnRsLkNvbGxhdG9yKCdlbicpLmNvbXBhcmUoJ0FcdTAzMjdcdTAzMGEnLCAnXHUy
MTJiXHUwMzI3JykiLCAiMCIpOyAvCiBzaG91bGRCZSgiSW50bC5Db2xsYXRvci5wcm90b3R5cGUu
cmVzb2x2ZWRPcHRpb25zLmxlbmd0aCIsICIwIik7CiAKIC8vIFJldHVybnMgYSBuZXcgb2JqZWN0
IHdob3NlIHByb3BlcnRpZXMgYW5kIGF0dHJpYnV0ZXMgYXJlIHNldCBhcyBpZiBjb25zdHJ1Y3Rl
ZCBieSBhbiBvYmplY3QgbGl0ZXJhbC4KLXNob3VsZEJlVHlwZSgiSW50bC5Db2xsYXRvci5wcm90
b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkiLCAiT2JqZWN0Iik7CitzaG91bGRCZVR5cGUoImRlZmF1
bHRDb2xsYXRvci5yZXNvbHZlZE9wdGlvbnMoKSIsICJPYmplY3QiKTsKIAogLy8gUmV0dXJucyBh
IG5ldyBvYmplY3QgZWFjaCB0aW1lLgotc2hvdWxkQmVGYWxzZSgiSW50bC5Db2xsYXRvci5wcm90
b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkgPT09IEludGwuQ29sbGF0b3IucHJvdG90eXBlLnJlc29s
dmVkT3B0aW9ucygpIik7CitzaG91bGRCZUZhbHNlKCJkZWZhdWx0Q29sbGF0b3IucmVzb2x2ZWRP
cHRpb25zKCkgPT09IGRlZmF1bHRDb2xsYXRvci5yZXNvbHZlZE9wdGlvbnMoKSIpOwogCiAvLyBU
aHJvd3Mgb24gbm9uLUNvbGxhdG9yIHRoaXMuCiBzaG91bGRUaHJvdygiSW50bC5Db2xsYXRvci5w
cm90b3R5cGUucmVzb2x2ZWRPcHRpb25zLmNhbGwoNSkiLCAiJ1R5cGVFcnJvcjogSW50bC5Db2xs
YXRvci5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zIGNhbGxlZCBvbiB2YWx1ZSB0aGF0XFwncyBu
b3QgYW4gb2JqZWN0IGluaXRpYWxpemVkIGFzIGEgQ29sbGF0b3InIik7CiAKIC8vIFJldHVybnMg
dGhlIGRlZmF1bHQgb3B0aW9ucy4KLXNob3VsZEJlKCJ2YXIgb3B0aW9ucyA9IEludGwuQ29sbGF0
b3IucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpOyBkZWxldGUgb3B0aW9uc1snbG9jYWxlJ107
IEpTT04uc3RyaW5naWZ5KG9wdGlvbnMpIiwgJ1wneyJ1c2FnZSI6InNvcnQiLCJzZW5zaXRpdml0
eSI6InZhcmlhbnQiLCJpZ25vcmVQdW5jdHVhdGlvbiI6ZmFsc2UsImNvbGxhdGlvbiI6ImRlZmF1
bHQiLCJudW1lcmljIjpmYWxzZX1cJycpOworc2hvdWxkQmUoInZhciBvcHRpb25zID0gZGVmYXVs
dENvbGxhdG9yLnJlc29sdmVkT3B0aW9ucygpOyBkZWxldGUgb3B0aW9uc1snbG9jYWxlJ107IEpT
T04uc3RyaW5naWZ5KG9wdGlvbnMpIiwgJ1wneyJ1c2FnZSI6InNvcnQiLCJzZW5zaXRpdml0eSI6
InZhcmlhbnQiLCJpZ25vcmVQdW5jdHVhdGlvbiI6ZmFsc2UsImNvbGxhdGlvbiI6ImRlZmF1bHQi
LCJudW1lcmljIjpmYWxzZX1cJycpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvanMvc2NyaXB0
LXRlc3RzL2ludGwtZGF0ZXRpbWVmb3JtYXQuanMgYi9MYXlvdXRUZXN0cy9qcy9zY3JpcHQtdGVz
dHMvaW50bC1kYXRldGltZWZvcm1hdC5qcwppbmRleCAzNTczYTJmN2M1MGY2YzJlMTc3YmNiNzk0
M2IwZjdlMjQ3YWFjYjVhLi4wZGM3NzBhZTczOGU5MDUzYThkMWE1ZDM5ZGE0MjlhZGMyYTgzYmVh
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvaW50bC1kYXRldGltZWZv
cm1hdC5qcworKysgYi9MYXlvdXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvaW50bC1kYXRldGltZWZv
cm1hdC5qcwpAQCAtMTAxLDEzICsxMDEsMTYgQEAgZm9yICh2YXIgdmFsaWRMYW5ndWFnZVRhZyBv
ZiB2YWxpZExhbmd1YWdlVGFncykgewogCiAvLyAxMi4zIFByb3BlcnRpZXMgb2YgdGhlIEludGwu
RGF0ZVRpbWVGb3JtYXQgUHJvdG90eXBlIE9iamVjdAogCi0vLyBUaGUgdmFsdWUgb2YgSW50bC5E
YXRlVGltZUZvcm1hdC5wcm90b3R5cGUuY29uc3RydWN0b3IgaXMgJURhdGVUaW1lRm9ybWF0JS4K
LXNob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5jb25zdHJ1Y3RvciIsICJJ
bnRsLkRhdGVUaW1lRm9ybWF0Iik7CisvLyBpcyBhIHBsYWluIG9iamVjdAorc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmNvbnN0cnVjdG9yIiwgIk9iamVjdCIpOworc2hv
dWxkQmUoIk9iamVjdC5nZXRQcm90b3R5cGVPZihJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlw
ZSkiLCAiT2JqZWN0LnByb3RvdHlwZSIpOworc2hvdWxkQmUoIk9iamVjdC5wcm90b3R5cGUudG9T
dHJpbmcuY2FsbChJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZSkiLCAiJ1tvYmplY3QgT2Jq
ZWN0XSciKTsKIAogLy8gMTIuMy4zIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1h
dAogCiAvLyBUaGlzIG5hbWVkIGFjY2Vzc29yIHByb3BlcnR5IHJldHVybnMgYSBmdW5jdGlvbiB0
aGF0IGZvcm1hdHMgYSBkYXRlIGFjY29yZGluZyB0byB0aGUgZWZmZWN0aXZlIGxvY2FsZSBhbmQg
dGhlIGZvcm1hdHRpbmcgb3B0aW9ucyBvZiB0aGlzIERhdGVUaW1lRm9ybWF0IG9iamVjdC4KLXNo
b3VsZEJlVHlwZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0IiwgIkZ1bmN0
aW9uIik7Cit2YXIgZGVmYXVsdERURm9ybWF0ID0gSW50bC5EYXRlVGltZUZvcm1hdCgpOworc2hv
dWxkQmVUeXBlKCJkZWZhdWx0RFRGb3JtYXQuZm9ybWF0IiwgIkZ1bmN0aW9uIik7CiAKIC8vIFRo
ZSB2YWx1ZSBvZiB0aGUgW1tHZXRdXSBhdHRyaWJ1dGUgaXMgYSBmdW5jdGlvbgogc2hvdWxkQmVU
eXBlKCJPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEludGwuRGF0ZVRpbWVGb3JtYXQu
cHJvdG90eXBlLCAnZm9ybWF0JykuZ2V0IiwgIkZ1bmN0aW9uIik7CkBAIC0xMjAsMTMgKzEyMywx
MyBAQCBzaG91bGRCZUZhbHNlKCJPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEludGwu
RGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLCAnZgogc2hvdWxkQmVUcnVlKCJPYmplY3QuZ2V0T3du
UHJvcGVydHlEZXNjcmlwdG9yKEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLCAnZm9ybWF0
JykuY29uZmlndXJhYmxlIik7CiAKIC8vIFRoZSB2YWx1ZSBvZiBG4oCZcyBsZW5ndGggcHJvcGVy
dHkgaXMgMS4KLXNob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQu
bGVuZ3RoIiwgIjEiKTsKK3Nob3VsZEJlKCJkZWZhdWx0RFRGb3JtYXQuZm9ybWF0Lmxlbmd0aCIs
ICIxIik7CiAKIC8vIFRocm93cyBvbiBub24tRGF0ZVRpbWVGb3JtYXQgdGhpcy4KK3Nob3VsZFRo
cm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQiLCAiJ1R5cGVFcnJvcjog
SW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0IGNhbGxlZCBvbiB2YWx1ZSB0aGF0
XFwncyBub3QgYW4gb2JqZWN0IGluaXRpYWxpemVkIGFzIGEgRGF0ZVRpbWVGb3JtYXQnIik7CiBz
aG91bGRUaHJvdygiT2JqZWN0LmRlZmluZVByb3BlcnR5KHt9LCAnZm9ybWF0JywgT2JqZWN0Lmdl
dE93blByb3BlcnR5RGVzY3JpcHRvcihJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZSwgJ2Zv
cm1hdCcpKS5mb3JtYXQiLCAiJ1R5cGVFcnJvcjogSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5
cGUuZm9ybWF0IGNhbGxlZCBvbiB2YWx1ZSB0aGF0XFwncyBub3QgYW4gb2JqZWN0IGluaXRpYWxp
emVkIGFzIGEgRGF0ZVRpbWVGb3JtYXQnIik7CiAKIC8vIFRoZSBmb3JtYXQgZnVuY3Rpb24gaXMg
dW5pcXVlIHBlciBpbnN0YW5jZS4KLXNob3VsZEJlVHJ1ZSgiSW50bC5EYXRlVGltZUZvcm1hdC5w
cm90b3R5cGUuZm9ybWF0ICE9PSBJbnRsLkRhdGVUaW1lRm9ybWF0KCkuZm9ybWF0Iik7CiBzaG91
bGRCZVRydWUoIm5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkuZm9ybWF0ICE9PSBuZXcgSW50bC5E
YXRlVGltZUZvcm1hdCgpLmZvcm1hdCIpOwogCiAvLyAxMi4zLjQgRGF0ZVRpbWUgRm9ybWF0IEZ1
bmN0aW9ucwpAQCAtMTQwLDIyICsxNDMsMTkgQEAgc2hvdWxkQmVUcnVlKCJuZXcgSW50bC5EYXRl
VGltZUZvcm1hdCgpLmZvcm1hdCAhPT0gbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3IKIC8v
IDQuIEVsc2UKIC8vIGEuIExldCB4IGJlIFRvTnVtYmVyKGRhdGUpLgogLy8gYi4gUmV0dXJuSWZB
YnJ1cHQoeCkuCi1zaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9y
bWF0KHsgdmFsdWVPZigpIHsgdGhyb3cgRXJyb3IoJzRiJykgfSB9KSIsICInRXJyb3I6IDRiJyIp
Oworc2hvdWxkVGhyb3coImRlZmF1bHREVEZvcm1hdC5mb3JtYXQoeyB2YWx1ZU9mKCkgeyB0aHJv
dyBFcnJvcignNGInKSB9IH0pIiwgIidFcnJvcjogNGInIik7CiAKIC8vIDEyLjMuNCBGb3JtYXRE
YXRlVGltZSBhYnN0cmFjdCBvcGVyYXRpb24KIAogLy8gMS4gSWYgeCBpcyBub3QgYSBmaW5pdGUg
TnVtYmVyLCB0aGVuIHRocm93IGEgUmFuZ2VFcnJvciBleGNlcHRpb24uCi1zaG91bGRUaHJvdygi
SW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0KEluZmluaXR5KSIsICInUmFuZ2VF
cnJvcjogZGF0ZSB2YWx1ZSBpcyBub3QgZmluaXRlIGluIERhdGVUaW1lRm9ybWF0IGZvcm1hdCgp
JyIpOworc2hvdWxkVGhyb3coImRlZmF1bHREVEZvcm1hdC5mb3JtYXQoSW5maW5pdHkpIiwgIidS
YW5nZUVycm9yOiBkYXRlIHZhbHVlIGlzIG5vdCBmaW5pdGUgaW4gRGF0ZVRpbWVGb3JtYXQgZm9y
bWF0KCknIik7CiAKIC8vIEZvcm1hdCBpcyBib3VuZCwgc28gY2FsbGluZyB3aXRoIGFsdGVybmF0
ZSAidGhpcyIgaGFzIG5vIGVmZmVjdC4KLXNob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnBy
b3RvdHlwZS5mb3JtYXQuY2FsbChudWxsLCAwKSIsICJJbnRsLkRhdGVUaW1lRm9ybWF0KCkuZm9y
bWF0KDApIik7Ci1zaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0
LmNhbGwoSW50bC5EYXRlVGltZUZvcm1hdCgnYXInKSwgMCkiLCAiSW50bC5EYXRlVGltZUZvcm1h
dCgpLmZvcm1hdCgwKSIpOwotc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBl
LmZvcm1hdC5jYWxsKDUsIDApIiwgIkludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQoMCkiKTsK
LXNob3VsZEJlKCJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLmZvcm1hdC5jYWxsKG51bGwsIDAp
IiwgIkludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQoMCkiKTsKLXNob3VsZEJlKCJuZXcgSW50
bC5EYXRlVGltZUZvcm1hdCgpLmZvcm1hdC5jYWxsKEludGwuRGF0ZVRpbWVGb3JtYXQoJ2FyJyks
IDApIiwgIkludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQoMCkiKTsKLXNob3VsZEJlKCJuZXcg
SW50bC5EYXRlVGltZUZvcm1hdCgpLmZvcm1hdC5jYWxsKDUsIDApIiwgIkludGwuRGF0ZVRpbWVG
b3JtYXQoKS5mb3JtYXQoMCkiKTsKLQotc2hvdWxkQmVUcnVlKCJ0eXBlb2YgSW50bC5EYXRlVGlt
ZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0KCkgPT09ICdzdHJpbmcnIik7CitzaG91bGRCZSgiZGVm
YXVsdERURm9ybWF0LmZvcm1hdC5jYWxsKG51bGwsIDApIiwgIkludGwuRGF0ZVRpbWVGb3JtYXQo
KS5mb3JtYXQoMCkiKTsKK3Nob3VsZEJlKCJkZWZhdWx0RFRGb3JtYXQuZm9ybWF0LmNhbGwoSW50
bC5EYXRlVGltZUZvcm1hdCgnYXInKSwgMCkiLCAiSW50bC5EYXRlVGltZUZvcm1hdCgpLmZvcm1h
dCgwKSIpOworc2hvdWxkQmUoImRlZmF1bHREVEZvcm1hdC5mb3JtYXQuY2FsbCg1LCAwKSIsICJJ
bnRsLkRhdGVUaW1lRm9ybWF0KCkuZm9ybWF0KDApIik7CisKK3Nob3VsZEJlVHJ1ZSgidHlwZW9m
IGRlZmF1bHREVEZvcm1hdC5mb3JtYXQoKSA9PT0gJ3N0cmluZyciKTsKIHNob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBbWVyaWNhL0RlbnZlcicgfSkuZm9y
bWF0KG5ldyBEYXRlKDE0NTEwOTk4NzI2NDEpKSIsICInMTIvMjUvMjAxNSciKTsKIAogLy8gMTIu
My41IEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucyAoKQpAQCAt
MTYzLDI4ICsxNjMsMTMgQEAgc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0
aW1lWm9uZTogJ0FtZXJpY2EvRGVudmVyJyB9KS5mb3JtYXQobmV3IEQKIHNob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMubGVuZ3RoIiwgIjAiKTsK
IAogLy8gUmV0dXJucyBhIG5ldyBvYmplY3Qgd2hvc2UgcHJvcGVydGllcyBhbmQgYXR0cmlidXRl
cyBhcmUgc2V0IGFzIGlmIGNvbnN0cnVjdGVkIGJ5IGFuIG9iamVjdCBsaXRlcmFsLgotc2hvdWxk
QmVUeXBlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKSIs
ICJPYmplY3QiKTsKLQotLy8gVGhlIEludGwuRGF0ZVRpbWVGb3JtYXQgcHJvdG90eXBlIG9iamVj
dCBpcyBpdHNlbGYgYW4gJURhdGVUaW1lRm9ybWF0JSBpbnN0YW5jZSwgd2hvc2UgaW50ZXJuYWwg
c2xvdHMgYXJlIHNldCBhcyBpZiBpdCBoYWQgYmVlbiBjb25zdHJ1Y3RlZCBieSB0aGUgZXhwcmVz
c2lvbiBDb25zdHJ1Y3QoJURhdGVUaW1lRm9ybWF0JSkuCi1zaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkubG9jYWxlIiwgIm5ldyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkubG9jYWxlIik7Ci1zaG91bGRCZSgiSW50
bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAi
bmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIpOwot
c2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygp
LmNhbGVuZGFyIiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCku
Y2FsZW5kYXIiKTsKLXNob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNv
bHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQo
KS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iKTsKLXNob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS53ZWVrZGF5IiwgIm5ldyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkud2Vla2RheSIpOwotc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLmVyYSIs
ICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLmVyYSIpOwotc2hv
dWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLnll
YXIiLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS55ZWFyIik7
Ci1zaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25z
KCkubW9udGgiLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5t
b250aCIpOwotc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVk
T3B0aW9ucygpLmRheSIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9u
cygpLmRheSIpOwotc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29s
dmVkT3B0aW9ucygpLmhvdXIiLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9w
dGlvbnMoKS5ob3VyIik7Ci1zaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUu
cmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyIiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVz
b2x2ZWRPcHRpb25zKCkuaG91cjEyIik7Ci1zaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5w
cm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkubWludXRlIiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCkucmVzb2x2ZWRPcHRpb25zKCkubWludXRlIik7Ci1zaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkuc2Vjb25kIiwgIm5ldyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkuc2Vjb25kIik7Ci1zaG91bGRCZSgiSW50
bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmVOYW1l
IiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmVO
YW1lIik7CitzaG91bGRCZVR5cGUoImRlZmF1bHREVEZvcm1hdC5yZXNvbHZlZE9wdGlvbnMoKSIs
ICJPYmplY3QiKTsKIAogLy8gUmV0dXJucyBhIG5ldyBvYmplY3QgZWFjaCB0aW1lLgotc2hvdWxk
QmVGYWxzZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkg
PT09IEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpIik7Citz
aG91bGRCZUZhbHNlKCJkZWZhdWx0RFRGb3JtYXQucmVzb2x2ZWRPcHRpb25zKCkgPT09IGRlZmF1
bHREVEZvcm1hdC5yZXNvbHZlZE9wdGlvbnMoKSIpOwogCiAvLyBUaHJvd3Mgb24gbm9uLURhdGVU
aW1lRm9ybWF0IHRoaXMuCitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5
cGUucmVzb2x2ZWRPcHRpb25zKCkiLCAiJ1R5cGVFcnJvcjogSW50bC5EYXRlVGltZUZvcm1hdC5w
cm90b3R5cGUucmVzb2x2ZWRPcHRpb25zIGNhbGxlZCBvbiB2YWx1ZSB0aGF0XFwncyBub3QgYW4g
b2JqZWN0IGluaXRpYWxpemVkIGFzIGEgRGF0ZVRpbWVGb3JtYXQnIik7CiBzaG91bGRUaHJvdygi
SW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zLmNhbGwoNSkiLCAi
J1R5cGVFcnJvcjogSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25z
IGNhbGxlZCBvbiB2YWx1ZSB0aGF0XFwncyBub3QgYW4gb2JqZWN0IGluaXRpYWxpemVkIGFzIGEg
RGF0ZVRpbWVGb3JtYXQnIik7CiAKIHNob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCck
JykiLCAiJ1JhbmdlRXJyb3I6IGludmFsaWQgbGFuZ3VhZ2UgdGFnOiAkJyIpOwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvanMvc2NyaXB0LXRlc3RzL2ludGwtbnVtYmVyZm9ybWF0LmpzIGIvTGF5
b3V0VGVzdHMvanMvc2NyaXB0LXRlc3RzL2ludGwtbnVtYmVyZm9ybWF0LmpzCmluZGV4IGQwYTYx
NGVlYWU5YjIzZWZiMWY2MGYwMzkzMWI0YjI1ODk4ZTM0YmIuLmRkMTVlNzMyMjYwZGIwNTg2Mzdk
NjRiZmQ5MDNmNDViMzczMzFhNWQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2pzL3NjcmlwdC10
ZXN0cy9pbnRsLW51bWJlcmZvcm1hdC5qcworKysgYi9MYXlvdXRUZXN0cy9qcy9zY3JpcHQtdGVz
dHMvaW50bC1udW1iZXJmb3JtYXQuanMKQEAgLTIxNywxMyArMjE3LDE2IEBAIGZvciAodmFyIHZh
bGlkTGFuZ3VhZ2VUYWcgb2YgdmFsaWRMYW5ndWFnZVRhZ3MpIHsKIAogLy8gMTEuMyBQcm9wZXJ0
aWVzIG9mIHRoZSBJbnRsLk51bWJlckZvcm1hdCBQcm90b3R5cGUgT2JqZWN0CiAKLS8vIFRoZSB2
YWx1ZSBvZiBJbnRsLk51bWJlckZvcm1hdC5wcm90b3R5cGUuY29uc3RydWN0b3IgaXMgJU51bWJl
ckZvcm1hdCUuCi1zaG91bGRCZSgiSW50bC5OdW1iZXJGb3JtYXQucHJvdG90eXBlLmNvbnN0cnVj
dG9yIiwgIkludGwuTnVtYmVyRm9ybWF0Iik7CisvLyBpcyBhIHBsYWluIG9iamVjdAorc2hvdWxk
QmUoIkludGwuTnVtYmVyRm9ybWF0LnByb3RvdHlwZS5jb25zdHJ1Y3RvciIsICJPYmplY3QiKTsK
K3Nob3VsZEJlKCJPYmplY3QuZ2V0UHJvdG90eXBlT2YoSW50bC5OdW1iZXJGb3JtYXQucHJvdG90
eXBlKSIsICJPYmplY3QucHJvdG90eXBlIik7CitzaG91bGRCZSgiT2JqZWN0LnByb3RvdHlwZS50
b1N0cmluZy5jYWxsKEludGwuTnVtYmVyRm9ybWF0LnByb3RvdHlwZSkiLCAiJ1tvYmplY3QgT2Jq
ZWN0XSciKTsKIAogLy8gMTEuMy4zIEludGwuTnVtYmVyRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQK
IAogLy8gVGhpcyBuYW1lZCBhY2Nlc3NvciBwcm9wZXJ0eSByZXR1cm5zIGEgZnVuY3Rpb24gdGhh
dCBmb3JtYXRzIGEgbnVtYmVyIGFjY29yZGluZyB0byB0aGUgZWZmZWN0aXZlIGxvY2FsZSBhbmQg
dGhlIGZvcm1hdHRpbmcgb3B0aW9ucyBvZiB0aGlzIE51bWJlckZvcm1hdCBvYmplY3QuCi1zaG91
bGRCZVR5cGUoIkludGwuTnVtYmVyRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQiLCAiRnVuY3Rpb24i
KTsKK3ZhciBkZWZhdWx0TkZvcm1hdCA9IEludGwuTnVtYmVyRm9ybWF0KCk7CitzaG91bGRCZVR5
cGUoImRlZmF1bHRORm9ybWF0LmZvcm1hdCIsICJGdW5jdGlvbiIpOwogCiAvLyBUaGUgdmFsdWUg
b2YgdGhlIFtbR2V0XV0gYXR0cmlidXRlIGlzIGEgZnVuY3Rpb24KIHNob3VsZEJlVHlwZSgiT2Jq
ZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihJbnRsLk51bWJlckZvcm1hdC5wcm90b3R5cGUs
ICdmb3JtYXQnKS5nZXQiLCAiRnVuY3Rpb24iKTsKQEAgLTIzNiwxMyArMjM5LDEzIEBAIHNob3Vs
ZEJlRmFsc2UoIk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoSW50bC5OdW1iZXJGb3Jt
YXQucHJvdG90eXBlLCAnZm9yCiBzaG91bGRCZVRydWUoIk9iamVjdC5nZXRPd25Qcm9wZXJ0eURl
c2NyaXB0b3IoSW50bC5OdW1iZXJGb3JtYXQucHJvdG90eXBlLCAnZm9ybWF0JykuY29uZmlndXJh
YmxlIik7CiAKIC8vIFRoZSB2YWx1ZSBvZiBG4oCZcyBsZW5ndGggcHJvcGVydHkgaXMgMS4KLXNo
b3VsZEJlKCJJbnRsLk51bWJlckZvcm1hdC5wcm90b3R5cGUuZm9ybWF0Lmxlbmd0aCIsICIxIik7
CitzaG91bGRCZSgiZGVmYXVsdE5Gb3JtYXQuZm9ybWF0Lmxlbmd0aCIsICIxIik7CiAKIC8vIFRo
cm93cyBvbiBub24tTnVtYmVyRm9ybWF0IHRoaXMuCitzaG91bGRUaHJvdygiSW50bC5OdW1iZXJG
b3JtYXQucHJvdG90eXBlLmZvcm1hdCIsICInVHlwZUVycm9yOiBJbnRsLk51bWJlckZvcm1hdC5w
cm90b3R5cGUuZm9ybWF0IGNhbGxlZCBvbiB2YWx1ZSB0aGF0XFwncyBub3QgYW4gb2JqZWN0IGlu
aXRpYWxpemVkIGFzIGEgTnVtYmVyRm9ybWF0JyIpOwogc2hvdWxkVGhyb3coIk9iamVjdC5kZWZp
bmVQcm9wZXJ0eSh7fSwgJ2Zvcm1hdCcsIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Io
SW50bC5OdW1iZXJGb3JtYXQucHJvdG90eXBlLCAnZm9ybWF0JykpLmZvcm1hdCIsICInVHlwZUVy
cm9yOiBJbnRsLk51bWJlckZvcm1hdC5wcm90b3R5cGUuZm9ybWF0IGNhbGxlZCBvbiB2YWx1ZSB0
aGF0XFwncyBub3QgYW4gb2JqZWN0IGluaXRpYWxpemVkIGFzIGEgTnVtYmVyRm9ybWF0JyIpOwog
CiAvLyBUaGUgZm9ybWF0IGZ1bmN0aW9uIGlzIHVuaXF1ZSBwZXIgaW5zdGFuY2UuCi1zaG91bGRC
ZVRydWUoIkludGwuTnVtYmVyRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQgIT09IEludGwuTnVtYmVy
Rm9ybWF0KCkuZm9ybWF0Iik7CiBzaG91bGRCZVRydWUoIm5ldyBJbnRsLk51bWJlckZvcm1hdCgp
LmZvcm1hdCAhPT0gbmV3IEludGwuTnVtYmVyRm9ybWF0KCkuZm9ybWF0Iik7CiAKIC8vIDExLjMu
NCBGb3JtYXQgTnVtYmVyIEZ1bmN0aW9ucwpAQCAtMjU0LDE1ICsyNTcsMTIgQEAgc2hvdWxkQmVU
cnVlKCJuZXcgSW50bC5OdW1iZXJGb3JtYXQoKS5mb3JtYXQgIT09IG5ldyBJbnRsLk51bWJlckZv
cm1hdCgpLmZvcm1hdCIKIC8vIDMuIElmIHZhbHVlIGlzIG5vdCBwcm92aWRlZCwgbGV0IHZhbHVl
IGJlIHVuZGVmaW5lZC4KIC8vIDQuIExldCB4IGJlIFRvTnVtYmVyKHZhbHVlKS4KIC8vIDUuIFJl
dHVybklmQWJydXB0KHgpLgotc2hvdWxkVGhyb3coIkludGwuTnVtYmVyRm9ybWF0LnByb3RvdHlw
ZS5mb3JtYXQoeyB2YWx1ZU9mKCkgeyB0aHJvdyBFcnJvcignNScpIH0gfSkiLCAiJ0Vycm9yOiA1
JyIpOworc2hvdWxkVGhyb3coImRlZmF1bHRORm9ybWF0LmZvcm1hdCh7IHZhbHVlT2YoKSB7IHRo
cm93IEVycm9yKCc1JykgfSB9KSIsICInRXJyb3I6IDUnIik7CiAKIC8vIEZvcm1hdCBpcyBib3Vu
ZCwgc28gY2FsbGluZyB3aXRoIGFsdGVybmF0ZSAidGhpcyIgaGFzIG5vIGVmZmVjdC4KLXNob3Vs
ZEJlKCJJbnRsLk51bWJlckZvcm1hdC5wcm90b3R5cGUuZm9ybWF0LmNhbGwobnVsbCwgMS4yKSIs
ICJJbnRsLk51bWJlckZvcm1hdCgpLmZvcm1hdCgxLjIpIik7Ci1zaG91bGRCZSgiSW50bC5OdW1i
ZXJGb3JtYXQucHJvdG90eXBlLmZvcm1hdC5jYWxsKEludGwuRGF0ZVRpbWVGb3JtYXQoJ2FyJyks
IDEuMikiLCAiSW50bC5OdW1iZXJGb3JtYXQoKS5mb3JtYXQoMS4yKSIpOwotc2hvdWxkQmUoIklu
dGwuTnVtYmVyRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQuY2FsbCg1LCAxLjIpIiwgIkludGwuTnVt
YmVyRm9ybWF0KCkuZm9ybWF0KDEuMikiKTsKLXNob3VsZEJlKCJuZXcgSW50bC5OdW1iZXJGb3Jt
YXQoKS5mb3JtYXQuY2FsbChudWxsLCAxLjIpIiwgIkludGwuTnVtYmVyRm9ybWF0KCkuZm9ybWF0
KDEuMikiKTsKLXNob3VsZEJlKCJuZXcgSW50bC5OdW1iZXJGb3JtYXQoKS5mb3JtYXQuY2FsbChJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdhcicpLCAxLjIpIiwgIkludGwuTnVtYmVyRm9ybWF0KCkuZm9y
bWF0KDEuMikiKTsKLXNob3VsZEJlKCJuZXcgSW50bC5OdW1iZXJGb3JtYXQoKS5mb3JtYXQuY2Fs
bCg1LCAxLjIpIiwgIkludGwuTnVtYmVyRm9ybWF0KCkuZm9ybWF0KDEuMikiKTsKK3Nob3VsZEJl
KCJkZWZhdWx0TkZvcm1hdC5mb3JtYXQuY2FsbChudWxsLCAxLjIpIiwgIkludGwuTnVtYmVyRm9y
bWF0KCkuZm9ybWF0KDEuMikiKTsKK3Nob3VsZEJlKCJkZWZhdWx0TkZvcm1hdC5mb3JtYXQuY2Fs
bChJbnRsLkRhdGVUaW1lRm9ybWF0KCdhcicpLCAxLjIpIiwgIkludGwuTnVtYmVyRm9ybWF0KCku
Zm9ybWF0KDEuMikiKTsKK3Nob3VsZEJlKCJkZWZhdWx0TkZvcm1hdC5mb3JtYXQuY2FsbCg1LCAx
LjIpIiwgIkludGwuTnVtYmVyRm9ybWF0KCkuZm9ybWF0KDEuMikiKTsKIAogLy8gVGVzdCB2YXJp
b3VzIHZhbHVlcy4KIHNob3VsZEJlKCJJbnRsLk51bWJlckZvcm1hdCgnZW4nKS5mb3JtYXQoNDIp
IiwgIic0MiciKTsKQEAgLTI4MCw3ICsyODAsNyBAQCBzaG91bGRCZSgiSW50bC5OdW1iZXJGb3Jt
YXQoJ2VuJykuZm9ybWF0KE51bWJlci5NQVhfVkFMVUUpIiwgIicxNzksNzY5LDMxMyw0ODYsMgog
Ly8gVGVzdCBsb2NhbGVzLgogc2hvdWxkQmUoIkludGwuTnVtYmVyRm9ybWF0KCdlbicpLmZvcm1h
dCgxMjM0LjU2NykiLCAiJzEsMjM0LjU2NyciKTsKIHNob3VsZEJlKCJJbnRsLk51bWJlckZvcm1h
dCgnZXMnKS5mb3JtYXQoMTIzNC41NjcpIiwgIicxLjIzNCw1NjcnIik7Ci1zaG91bGRCZSgiSW50
bC5OdW1iZXJGb3JtYXQoJ2ZyJykuZm9ybWF0KDEyMzQuNTY3KSIsICInMcKgMjM0LDU2NyciKTsK
K3Nob3VsZEJlKCJJbnRsLk51bWJlckZvcm1hdCgnZnInKS5mb3JtYXQoMTIzNC41NjcpIiwgIicx
XFx4QTAyMzQsNTY3JyIpOwogCiAvLyBUZXN0IG51bWJlcmluZyBzeXN0ZW1zLgogc2hvdWxkQmUo
IkludGwuTnVtYmVyRm9ybWF0KCdlbi11LW51LWxhdG4nKS5mb3JtYXQoMTIzNC41NjcpIiwgIicx
LDIzNC41NjcnIik7CkBAIC0zNDQsNyArMzQ0LDcgQEAgc2hvdWxkQmUoIkludGwuTnVtYmVyRm9y
bWF0KCdlbicsIHttYXhpbXVtU2lnbmlmaWNhbnREaWdpdHM6IDR9KS5mb3JtYXQoMTIzNDU2NykK
IC8vIFRlc3QgdGhlIHVzZUdyb3VwaW5nIG9wdGlvbi4KIHNob3VsZEJlKCJJbnRsLk51bWJlckZv
cm1hdCgnZW4nLCB7dXNlR3JvdXBpbmc6IHRydWV9KS5mb3JtYXQoMTIzNDU2Ny4xMjMpIiwgIicx
LDIzNCw1NjcuMTIzJyIpOwogc2hvdWxkQmUoIkludGwuTnVtYmVyRm9ybWF0KCdlcycsIHt1c2VH
cm91cGluZzogdHJ1ZX0pLmZvcm1hdCgxMjM0NTY3LjEyMykiLCAiJzEuMjM0LjU2NywxMjMnIik7
Ci1zaG91bGRCZSgiSW50bC5OdW1iZXJGb3JtYXQoJ2ZyJywge3VzZUdyb3VwaW5nOiB0cnVlfSku
Zm9ybWF0KDEyMzQ1NjcuMTIzKSIsICInMcKgMjM0wqA1NjcsMTIzJyIpOworc2hvdWxkQmUoIklu
dGwuTnVtYmVyRm9ybWF0KCdmcicsIHt1c2VHcm91cGluZzogdHJ1ZX0pLmZvcm1hdCgxMjM0NTY3
LjEyMykiLCAiJzFcXHhBMDIzNFxceEEwNTY3LDEyMyciKTsKIHNob3VsZEJlKCJJbnRsLk51bWJl
ckZvcm1hdCgnZW4nLCB7dXNlR3JvdXBpbmc6IGZhbHNlfSkuZm9ybWF0KDEyMzQ1NjcuMTIzKSIs
ICInMTIzNDU2Ny4xMjMnIik7CiBzaG91bGRCZSgiSW50bC5OdW1iZXJGb3JtYXQoJ2VzJywge3Vz
ZUdyb3VwaW5nOiBmYWxzZX0pLmZvcm1hdCgxMjM0NTY3LjEyMykiLCAiJzEyMzQ1NjcsMTIzJyIp
Owogc2hvdWxkQmUoIkludGwuTnVtYmVyRm9ybWF0KCdmcicsIHt1c2VHcm91cGluZzogZmFsc2V9
KS5mb3JtYXQoMTIzNDU2Ny4xMjMpIiwgIicxMjM0NTY3LDEyMyciKTsKQEAgLTM1NCwxNiArMzU0
LDE3IEBAIHNob3VsZEJlKCJJbnRsLk51bWJlckZvcm1hdCgnZnInLCB7dXNlR3JvdXBpbmc6IGZh
bHNlfSkuZm9ybWF0KDEyMzQ1NjcuMTIzKSIsICInCiBzaG91bGRCZSgiSW50bC5OdW1iZXJGb3Jt
YXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucy5sZW5ndGgiLCAiMCIpOwogCiAvLyBSZXR1cm5z
IGEgbmV3IG9iamVjdCB3aG9zZSBwcm9wZXJ0aWVzIGFuZCBhdHRyaWJ1dGVzIGFyZSBzZXQgYXMg
aWYgY29uc3RydWN0ZWQgYnkgYW4gb2JqZWN0IGxpdGVyYWwuCi1zaG91bGRCZVR5cGUoIkludGwu
TnVtYmVyRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKSIsICJPYmplY3QiKTsKK3No
b3VsZEJlVHlwZSgiZGVmYXVsdE5Gb3JtYXQucmVzb2x2ZWRPcHRpb25zKCkiLCAiT2JqZWN0Iik7
CiAKIC8vIFJldHVybnMgYSBuZXcgb2JqZWN0IGVhY2ggdGltZS4KLXNob3VsZEJlRmFsc2UoIklu
dGwuTnVtYmVyRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKSA9PT0gSW50bC5OdW1i
ZXJGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpIik7CitzaG91bGRCZUZhbHNlKCJk
ZWZhdWx0TkZvcm1hdC5yZXNvbHZlZE9wdGlvbnMoKSA9PT0gZGVmYXVsdE5Gb3JtYXQucmVzb2x2
ZWRPcHRpb25zKCkiKTsKIAogLy8gVGhyb3dzIG9uIG5vbi1OdW1iZXJGb3JtYXQgdGhpcy4KK3No
b3VsZFRocm93KCJJbnRsLk51bWJlckZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCki
LCAiJ1R5cGVFcnJvcjogSW50bC5OdW1iZXJGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9u
cyBjYWxsZWQgb24gdmFsdWUgdGhhdFxcJ3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXplZCBhcyBh
IE51bWJlckZvcm1hdCciKTsKIHNob3VsZFRocm93KCJJbnRsLk51bWJlckZvcm1hdC5wcm90b3R5
cGUucmVzb2x2ZWRPcHRpb25zLmNhbGwoNSkiLCAiJ1R5cGVFcnJvcjogSW50bC5OdW1iZXJGb3Jt
YXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucyBjYWxsZWQgb24gdmFsdWUgdGhhdFxcJ3Mgbm90
IGFuIG9iamVjdCBpbml0aWFsaXplZCBhcyBhIE51bWJlckZvcm1hdCciKTsKIAogLy8gUmV0dXJu
cyB0aGUgZGVmYXVsdCBvcHRpb25zLgotc2hvdWxkQmUoInZhciBvcHRpb25zID0gSW50bC5OdW1i
ZXJGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpOyBkZWxldGUgb3B0aW9uc1snbG9j
YWxlJ107IEpTT04uc3RyaW5naWZ5KG9wdGlvbnMpIiwgJ1wneyJudW1iZXJpbmdTeXN0ZW0iOiJs
YXRuIiwic3R5bGUiOiJkZWNpbWFsIiwibWluaW11bUludGVnZXJEaWdpdHMiOjEsIm1pbmltdW1G
cmFjdGlvbkRpZ2l0cyI6MCwibWF4aW11bUZyYWN0aW9uRGlnaXRzIjozLCJ1c2VHcm91cGluZyI6
dHJ1ZX1cJycpOworc2hvdWxkQmUoInZhciBvcHRpb25zID0gZGVmYXVsdE5Gb3JtYXQucmVzb2x2
ZWRPcHRpb25zKCk7IGRlbGV0ZSBvcHRpb25zWydsb2NhbGUnXTsgSlNPTi5zdHJpbmdpZnkob3B0
aW9ucykiLCAnXCd7Im51bWJlcmluZ1N5c3RlbSI6ImxhdG4iLCJzdHlsZSI6ImRlY2ltYWwiLCJt
aW5pbXVtSW50ZWdlckRpZ2l0cyI6MSwibWluaW11bUZyYWN0aW9uRGlnaXRzIjowLCJtYXhpbXVt
RnJhY3Rpb25EaWdpdHMiOjMsInVzZUdyb3VwaW5nIjp0cnVlfVwnJyk7CiAKIC8vIExlZ2FjeSBj
b21wYXRpYmlsaXR5IHdpdGggRUNNQS00MDIgMS4wCiBsZXQgbGVnYWN5SW5pdCA9ICJ2YXIgbGVn
YWN5ID0gT2JqZWN0LmNyZWF0ZShJbnRsLk51bWJlckZvcm1hdC5wcm90b3R5cGUpOyI7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>